1 |
- {"version":3,"file":"getTargetElement-px782XHx.mjs","sources":["../../src/strings/dataBsTarget.ts","../../src/strings/dataBsParent.ts","../../src/strings/dataBsContainer.ts","../../src/util/getTargetElement.ts"],"sourcesContent":["/**\n * Global namespace for most components `target` option.\n */\nconst dataBsTarget = \"data-bs-target\";\nexport default dataBsTarget;\n","/**\n * Global namespace for most components `parent` option.\n */\nconst dataBsParent = \"data-bs-parent\";\nexport default dataBsParent;\n","/**\n * Global namespace for most components `container` option.\n */\nconst dataBsContainer = \"data-bs-container\";\nexport default dataBsContainer;\n","import {\n closest,\n getAttribute,\n getDocument,\n querySelector,\n} from \"@thednp/shorty\";\n\nimport dataBsTarget from \"../strings/dataBsTarget\";\nimport dataBsParent from \"../strings/dataBsParent\";\nimport dataBsContainer from \"../strings/dataBsContainer\";\n\n/**\n * Returns the `Element` that THIS one targets\n * via `data-bs-target`, `href`, `data-bs-parent` or `data-bs-container`.\n *\n * @param element the target element\n * @returns the query result\n */\nconst getTargetElement = <T extends Element = HTMLElement>(element: T) => {\n const targetAttr = [dataBsTarget, dataBsParent, dataBsContainer, \"href\"];\n const doc = getDocument(element);\n\n return targetAttr\n .map((att) => {\n const attValue = getAttribute(element, att);\n if (attValue) {\n return att === dataBsParent\n ? closest<T>(element, attValue)\n : querySelector<T>(attValue, doc);\n }\n return null;\n })\n .filter((x) => x)[0];\n};\n\nexport default getTargetElement;\n"],"names":["dataBsTarget","dataBsParent","dataBsContainer","getTargetElement","element","targetAttr","doc","getDocument","att","attValue","getAttribute","closest","querySelector","x"],"mappings":";AACA,MAAMA,IAAe,kBCAfC,IAAe,kBCAfC,IAAkB,qBCWlBC,IAAmB,CAAkCC,MAAe;AACxE,QAAMC,IAAa,CAACL,GAAcC,GAAcC,GAAiB,MAAM,GACjEI,IAAMC,EAAYH,CAAO;AAExB,SAAAC,EACJ,IAAI,CAACG,MAAQ;AACN,UAAAC,IAAWC,EAAaN,GAASI,CAAG;AAC1C,WAAIC,IACKD,MAAQP,IACXU,EAAWP,GAASK,CAAQ,IAC5BG,EAAiBH,GAAUH,CAAG,IAE7B;AAAA,EACR,CAAA,EACA,OAAO,CAACO,MAAMA,CAAC,EAAE,CAAC;AACvB;"}
|