{"version":3,"file":"dropdown.mjs","names":["pkg.version"],"sources":["../../../src/strings/showClass.ts","../../../src/strings/dataBsToggle.ts","../../../src/strings/dropdownClasses.ts","../../../src/strings/dropdownComponent.ts","../../../src/strings/dropdownMenuClass.ts","../../../src/util/isEmptyAnchor.ts","../../../src/util/isDisabled.ts","../../../package.json","../../../src/version.ts","../../../src/components/base-component.ts","../../../src/components/dropdown.ts"],"sourcesContent":["/**\n * Global namespace for most components `show` class.\n */\nconst showClass = \"show\";\nexport default showClass;\n","/**\n * Global namespace for most components `toggle` option.\n */\nconst dataBsToggle = \"data-bs-toggle\";\nexport default dataBsToggle;\n","/**\n * Global namespace for `Dropdown` types / classes.\n */\nconst dropdownMenuClasses = [\"dropdown\", \"dropup\", \"dropstart\", \"dropend\"];\nexport default dropdownMenuClasses;\n","/** @type {string} */\nconst dropdownComponent = \"Dropdown\";\nexport default dropdownComponent;\n","/**\n * Global namespace for `.dropdown-menu`.\n */\nconst dropdownMenuClass = \"dropdown-menu\";\nexport default dropdownMenuClass;\n","import { closest, getAttribute, hasAttribute } from \"@thednp/shorty\";\n\n/**\n * Checks if an *event.target* or its parent has an `href=\"#\"` value.\n * We need to prevent jumping around onclick, don't we?\n *\n * @param element the target element\n * @returns the query result\n */\nconst isEmptyAnchor = (element: HTMLElement) => {\n // `EventTarget` must be `HTMLElement`\n const parentAnchor = closest(element, \"A\");\n return (\n (element.tagName === \"A\" &&\n // anchor href starts with #\n hasAttribute(element, \"href\") &&\n (getAttribute(element, \"href\"))?.slice(-1) === \"#\") ||\n // OR a child of an anchor with href starts with #\n (parentAnchor &&\n hasAttribute(parentAnchor, \"href\") &&\n (getAttribute(parentAnchor, \"href\"))?.slice(-1) === \"#\")\n );\n};\nexport default isEmptyAnchor;\n","import { getAttribute, hasClass } from \"@thednp/shorty\";\n\n/**\n * Check if interactive element is disabled.\n * @param target either a `