1 |
- {"version":3,"file":"shorty.js","sources":["../src/strings/ariaChecked.ts","../src/strings/ariaDescription.ts","../src/strings/ariaDescribedBy.ts","../src/strings/ariaExpanded.ts","../src/strings/ariaHasPopup.ts","../src/strings/ariaHidden.ts","../src/strings/ariaLabel.ts","../src/strings/ariaLabelledBy.ts","../src/strings/ariaModal.ts","../src/strings/ariaPressed.ts","../src/strings/ariaSelected.ts","../src/strings/ariaValueMin.ts","../src/strings/ariaValueMax.ts","../src/strings/ariaValueNow.ts","../src/strings/ariaValueText.ts","../src/strings/abortEvent.ts","../src/strings/beforeunloadEvent.ts","../src/strings/blurEvent.ts","../src/strings/changeEvent.ts","../src/strings/contextmenuEvent.ts","../src/strings/DOMContentLoadedEvent.ts","../src/strings/DOMMouseScrollEvent.ts","../src/strings/errorEvent.ts","../src/strings/focusEvent.ts","../src/strings/focusinEvent.ts","../src/strings/focusoutEvent.ts","../src/strings/gesturechangeEvent.ts","../src/strings/gestureendEvent.ts","../src/strings/gesturestartEvent.ts","../src/strings/keydownEvent.ts","../src/strings/keypressEvent.ts","../src/strings/keyupEvent.ts","../src/strings/loadEvent.ts","../src/strings/mouseclickEvent.ts","../src/strings/mousedblclickEvent.ts","../src/strings/mousedownEvent.ts","../src/strings/mouseupEvent.ts","../src/strings/mousehoverEvent.ts","../src/strings/mouseenterEvent.ts","../src/strings/mouseleaveEvent.ts","../src/strings/mouseinEvent.ts","../src/strings/mouseoutEvent.ts","../src/strings/mouseoverEvent.ts","../src/strings/mousemoveEvent.ts","../src/strings/mousewheelEvent.ts","../src/strings/moveEvent.ts","../src/strings/orientationchangeEvent.ts","../src/strings/pointercancelEvent.ts","../src/strings/pointerdownEvent.ts","../src/strings/pointerleaveEvent.ts","../src/strings/pointermoveEvent.ts","../src/strings/pointerupEvent.ts","../src/strings/readystatechangeEvent.ts","../src/strings/resetEvent.ts","../src/strings/resizeEvent.ts","../src/strings/selectEvent.ts","../src/strings/selectendEvent.ts","../src/strings/selectstartEvent.ts","../src/strings/scrollEvent.ts","../src/strings/submitEvent.ts","../src/strings/touchstartEvent.ts","../src/strings/touchmoveEvent.ts","../src/strings/touchcancelEvent.ts","../src/strings/touchendEvent.ts","../src/strings/unloadEvent.ts","../src/strings/nativeEvents.ts","../src/strings/dragEvent.ts","../src/strings/dragstartEvent.ts","../src/strings/dragenterEvent.ts","../src/strings/dragleaveEvent.ts","../src/strings/dragoverEvent.ts","../src/strings/dragendEvent.ts","../src/strings/loadstartEvent.ts","../src/strings/mouseSwipeEvents.ts","../src/strings/mouseClickEvents.ts","../src/strings/mouseHoverEvents.ts","../src/strings/touchEvents.ts","../src/strings/focusEvents.ts","../src/strings/focusableSelector.ts","../src/strings/keyboardEventKeys.ts","../src/strings/keyAlt.ts","../src/strings/keyArrowDown.ts","../src/strings/keyArrowUp.ts","../src/strings/keyArrowLeft.ts","../src/strings/keyArrowRight.ts","../src/strings/keyBackspace.ts","../src/strings/keyCapsLock.ts","../src/strings/keyControl.ts","../src/strings/keyDelete.ts","../src/strings/keyEnter.ts","../src/strings/keyNumpadEnter.ts","../src/strings/keyEscape.ts","../src/strings/keyInsert.ts","../src/strings/keyMeta.ts","../src/strings/keyPause.ts","../src/strings/keyScrollLock.ts","../src/strings/keyShift.ts","../src/strings/keySpace.ts","../src/strings/keyTab.ts","../src/strings/animationDuration.ts","../src/strings/animationDelay.ts","../src/strings/animationName.ts","../src/strings/animationEndEvent.ts","../src/strings/transitionDuration.ts","../src/strings/transitionDelay.ts","../src/strings/transitionEndEvent.ts","../src/strings/transitionProperty.ts","../src/strings/addEventListener.ts","../src/strings/removeEventListener.ts","../src/strings/bezierEasings.ts","../src/strings/offsetHeight.ts","../src/strings/offsetWidth.ts","../src/strings/scrollHeight.ts","../src/strings/scrollWidth.ts","../src/strings/tabindex.ts","../src/strings/userAgentData.ts","../src/strings/userAgent.ts","../src/boolean/isMobile.ts","../src/boolean/isApple.ts","../src/boolean/isFirefox.ts","../src/boolean/isWebKit.ts","../src/boolean/support3DTransform.ts","../src/misc/noop.ts","../src/event/on.ts","../src/event/off.ts","../src/event/one.ts","../src/boolean/supportPassive.ts","../src/boolean/supportTransform.ts","../src/boolean/supportTouch.ts","../src/boolean/supportAnimation.ts","../src/boolean/supportTransition.ts","../src/attr/getAttribute.ts","../src/attr/getAttributeNS.ts","../src/attr/hasAttribute.ts","../src/attr/hasAttributeNS.ts","../src/attr/setAttribute.ts","../src/attr/setAttributeNS.ts","../src/attr/removeAttribute.ts","../src/attr/removeAttributeNS.ts","../src/class/addClass.ts","../src/class/removeClass.ts","../src/class/hasClass.ts","../src/blocks/documentBody.ts","../src/blocks/documentElement.ts","../src/blocks/documentHead.ts","../src/misc/ArrayFrom.ts","../src/is/isObject.ts","../src/is/isNode.ts","../src/is/isElement.ts","../src/misc/data.ts","../src/misc/getInstance.ts","../src/misc/capitalize.ts","../src/misc/camelCase.ts","../src/is/isString.ts","../src/is/isWindow.ts","../src/is/isDocument.ts","../src/get/getDocument.ts","../src/misc/ObjectAssign.ts","../src/misc/createElement.ts","../src/misc/createElementNS.ts","../src/misc/dispatchEvent.ts","../src/misc/distinct.ts","../src/get/getElementStyle.ts","../src/get/getElementAnimationDelay.ts","../src/get/getElementAnimationDuration.ts","../src/misc/emulateAnimationEnd.ts","../src/get/getElementTransitionDelay.ts","../src/get/getElementTransitionDuration.ts","../src/misc/emulateTransitionEnd.ts","../src/misc/Float32ArrayFrom.ts","../src/misc/Float64ArrayFrom.ts","../src/misc/focus.ts","../src/misc/kebabCase.ts","../src/misc/normalizeValue.ts","../src/misc/ObjectEntries.ts","../src/misc/normalizeOptions.ts","../src/misc/ObjectHasOwn.ts","../src/misc/ObjectKeys.ts","../src/misc/ObjectValues.ts","../src/misc/ObjectFromEntries.ts","../src/misc/createCustomEvent.ts","../src/misc/passiveHandler.ts","../src/misc/reflow.ts","../src/misc/setElementStyle.ts","../src/is/isMap.ts","../src/is/isNumber.ts","../src/misc/timer.ts","../src/misc/toLowerCase.ts","../src/misc/toUpperCase.ts","../src/selectors/querySelectorAll.ts","../src/misc/focusTrap.ts","../src/is/isHTMLElement.ts","../src/get/getBoundingClientRect.ts","../src/get/getDocumentBody.ts","../src/get/getDocumentElement.ts","../src/get/getDocumentHead.ts","../src/get/getNodeName.ts","../src/get/getNodeScroll.ts","../src/is/isShadowRoot.ts","../src/get/getParentNode.ts","../src/get/getWindow.ts","../src/is/isTableElement.ts","../src/selectors/matches.ts","../src/get/getOffsetParent.ts","../src/is/isScaledElement.ts","../src/get/getRectRelativeToOffsetParent.ts","../src/get/getUID.ts","../src/is/isArray.ts","../src/is/isCanvas.ts","../src/is/isCustomElement.ts","../src/is/isElementInScrollRange.ts","../src/is/isElementInViewport.ts","../src/is/isElementsArray.ts","../src/is/isFunction.ts","../src/is/isHTMLCollection.ts","../src/is/isHTMLImageElement.ts","../src/is/isJSON.ts","../src/is/isWeakMap.ts","../src/is/isMedia.ts","../src/is/isNodeList.ts","../src/is/isRTL.ts","../src/is/isSVGElement.ts","../src/selectors/closest.ts","../src/selectors/querySelector.ts","../src/selectors/getElementsByTagName.ts","../src/selectors/getCustomElements.ts","../src/selectors/getElementById.ts","../src/selectors/getElementsByClassName.ts"],"sourcesContent":["/**\n * A global namespace for aria-checked.\n */\nconst ariaChecked = \"aria-checked\";\nexport default ariaChecked;\n","/**\n * A global namespace for aria-description.\n */\nconst ariaDescription = \"aria-description\";\nexport default ariaDescription;\n","/**\n * A global namespace for aria-describedby.\n */\nconst ariaDescribedBy = \"aria-describedby\";\nexport default ariaDescribedBy;\n","/**\n * A global namespace for aria-expanded.\n */\nconst ariaExpanded = \"aria-expanded\";\nexport default ariaExpanded;\n","/**\n * A global namespace for aria-haspopup.\n */\nconst ariaHasPopup = \"aria-haspopup\";\nexport default ariaHasPopup;\n","/**\n * A global namespace for aria-hidden.\n */\nconst ariaHidden = \"aria-hidden\";\nexport default ariaHidden;\n","/**\n * A global namespace for aria-label.\n */\nconst ariaLabel = \"aria-label\";\nexport default ariaLabel;\n","/**\n * A global namespace for aria-labelledby.\n */\nconst ariaLabelledBy = \"aria-labelledby\";\nexport default ariaLabelledBy;\n","/**\n * A global namespace for aria-modal.\n */\nconst ariaModal = \"aria-modal\";\nexport default ariaModal;\n","/**\n * A global namespace for aria-pressed.\n */\nconst ariaPressed = \"aria-pressed\";\nexport default ariaPressed;\n","/**\n * A global namespace for aria-selected.\n */\nconst ariaSelected = \"aria-selected\";\nexport default ariaSelected;\n","/**\n * A global namespace for aria-valuemin.\n */\nconst ariaValueMin = \"aria-valuemin\";\nexport default ariaValueMin;\n","/**\n * A global namespace for aria-valuemax.\n */\nconst ariaValueMax = \"aria-valuemax\";\nexport default ariaValueMax;\n","/**\n * A global namespace for aria-valuenow.\n */\nconst ariaValueNow = \"aria-valuenow\";\nexport default ariaValueNow;\n","/**\n * A global namespace for aria-valuetext.\n */\nconst ariaValueText = \"aria-valuetext\";\nexport default ariaValueText;\n","/**\n * A global namespace for `abort` event.\n */\nconst abortEvent = \"abort\";\nexport default abortEvent;\n","/**\n * A global namespace for `beforeunload` event.\n */\nconst beforeunloadEvent = \"beforeunload\";\nexport default beforeunloadEvent;\n","/**\n * A global namespace for `blur` event.\n */\nconst blurEvent = \"blur\";\nexport default blurEvent;\n","/**\n * A global namespace for `change` event.\n */\nconst changeEvent = \"change\";\nexport default changeEvent;\n","/**\n * A global namespace for `contextmenu` event.\n */\nconst contextmenuEvent = \"contextmenu\";\nexport default contextmenuEvent;\n","/**\n * A global namespace for `DOMContentLoaded` event.\n */\nconst DOMContentLoadedEvent = \"DOMContentLoaded\";\nexport default DOMContentLoadedEvent;\n","/**\n * A global namespace for `DOMMouseScroll` event.\n */\nconst DOMMouseScrollEvent = \"DOMMouseScroll\";\nexport default DOMMouseScrollEvent;\n","/**\n * A global namespace for `error` event.\n */\nconst errorEvent = \"error\";\nexport default errorEvent;\n","/**\n * A global namespace for `focus` event.\n */\nconst focusEvent = \"focus\";\nexport default focusEvent;\n","/**\n * A global namespace for `focusin` event.\n */\nconst focusinEvent = \"focusin\";\nexport default focusinEvent;\n","/**\n * A global namespace for `focusout` event.\n */\nconst focusoutEvent = \"focusout\";\nexport default focusoutEvent;\n","/**\n * A global namespace for `gesturechange` event.\n */\nconst gesturechangeEvent = \"gesturechange\";\nexport default gesturechangeEvent;\n","/**\n * A global namespace for `gestureend` event.\n */\nconst gestureendEvent = \"gestureend\";\nexport default gestureendEvent;\n","/**\n * A global namespace for `gesturestart` event.\n */\nconst gesturestartEvent = \"gesturestart\";\nexport default gesturestartEvent;\n","/**\n * A global namespace for `keydown` event.\n */\nconst keydownEvent = \"keydown\";\nexport default keydownEvent;\n","/**\n * A global namespace for `keypress` event.\n */\nconst keypressEvent = \"keypress\";\nexport default keypressEvent;\n","/**\n * A global namespace for `keyup` event.\n */\nconst keyupEvent = \"keyup\";\nexport default keyupEvent;\n","/**\n * A global namespace for `load` event.\n */\nconst loadEvent = \"load\";\nexport default loadEvent;\n","/**\n * A global namespace for `click` event.\n */\nconst mouseclickEvent = \"click\";\nexport default mouseclickEvent;\n","/**\n * A global namespace for `dblclick` event.\n */\nconst mousedblclickEvent = \"dblclick\";\nexport default mousedblclickEvent;\n","/**\n * A global namespace for `mousedown` event.\n */\nconst mousedownEvent = \"mousedown\";\nexport default mousedownEvent;\n","/**\n * A global namespace for `mouseup` event.\n */\nconst mouseupEvent = \"mouseup\";\nexport default mouseupEvent;\n","/**\n * A global namespace for `hover` event.\n */\nconst mousehoverEvent = \"hover\";\nexport default mousehoverEvent;\n","/**\n * A global namespace for `mouseenter` event.\n */\nconst mouseenterEvent = \"mouseenter\";\nexport default mouseenterEvent;\n","/**\n * A global namespace for `mouseleave` event.\n */\nconst mouseleaveEvent = \"mouseleave\";\nexport default mouseleaveEvent;\n","/**\n * A global namespace for `mousein` event.\n */\nconst mouseinEvent = \"mousein\";\nexport default mouseinEvent;\n","/**\n * A global namespace for `mouseout` event.\n */\nconst mouseoutEvent = \"mouseout\";\nexport default mouseoutEvent;\n","/**\n * A global namespace for `mouseover` event.\n */\nconst mouseoverEvent = \"mouseover\";\nexport default mouseoverEvent;\n","/**\n * A global namespace for `mousemove` event.\n */\nconst mousemoveEvent = \"mousemove\";\nexport default mousemoveEvent;\n","/**\n * A global namespace for `mousewheel` event.\n */\nconst mousewheelEvent = \"mousewheel\";\nexport default mousewheelEvent;\n","/**\n * A global namespace for `move` event.\n */\nconst moveEvent = \"move\";\nexport default moveEvent;\n","/**\n * A global namespace for `orientationchange` event.\n */\nconst orientationchangeEvent = \"orientationchange\";\nexport default orientationchangeEvent;\n","/**\n * A global namespace for `pointercancel` event.\n */\nconst pointercancelEvent = \"pointercancel\";\nexport default pointercancelEvent;\n","/**\n * A global namespace for `pointerdown` event.\n */\nconst pointerdownEvent = \"pointerdown\";\nexport default pointerdownEvent;\n","/**\n * A global namespace for `pointerleave` event.\n */\nconst pointerleaveEvent = \"pointerleave\";\nexport default pointerleaveEvent;\n","/**\n * A global namespace for `pointermove` event.\n */\nconst pointermoveEvent = \"pointermove\";\nexport default pointermoveEvent;\n","/**\n * A global namespace for `pointerup` event.\n */\nconst pointerupEvent = \"pointerup\";\nexport default pointerupEvent;\n","/**\n * A global namespace for `readystatechange` event.\n */\nconst readystatechangeEvent = \"readystatechange\";\nexport default readystatechangeEvent;\n","/**\n * A global namespace for `reset` event.\n */\nconst resetEvent = \"reset\";\nexport default resetEvent;\n","/**\n * A global namespace for `resize` event.\n */\nconst resizeEvent = \"resize\";\nexport default resizeEvent;\n","/**\n * A global namespace for `select` event.\n */\nconst selectEvent = \"select\";\nexport default selectEvent;\n","/**\n * A global namespace for the `selectend` event.\n */\nconst selectendEvent = \"selectend\";\nexport default selectendEvent;\n","/**\n * A global namespace for the `selectstart` event.\n */\nconst selectstartEvent = \"selectstart\";\nexport default selectstartEvent;\n","/**\n * A global namespace for `scroll` event.\n */\nconst scrollEvent = \"scroll\";\nexport default scrollEvent;\n","/**\n * A global namespace for `submit` event.\n */\nconst submitEvent = \"submit\";\nexport default submitEvent;\n","/**\n * A global namespace for `touchstart` event.\n */\nconst touchstartEvent = \"touchstart\";\nexport default touchstartEvent;\n","/**\n * A global namespace for `touchmove` event.\n */\nconst touchmoveEvent = \"touchmove\";\nexport default touchmoveEvent;\n","/**\n * A global namespace for `touchcancel` event.\n */\nconst touchcancelEvent = \"touchcancel\";\nexport default touchcancelEvent;\n","/**\n * A global namespace for `touchend` event.\n */\nconst touchendEvent = \"touchend\";\nexport default touchendEvent;\n","/**\n * A global namespace for `unload` event.\n */\nconst unloadEvent = \"unload\";\nexport default unloadEvent;\n","import abort from \"./abortEvent\";\nimport beforeunload from \"./beforeunloadEvent\";\nimport blur from \"./blurEvent\";\nimport change from \"./changeEvent\";\nimport contextmenu from \"./contextmenuEvent\";\nimport DOMContentLoaded from \"./DOMContentLoadedEvent\";\nimport DOMMouseScroll from \"./DOMMouseScrollEvent\";\nimport error from \"./errorEvent\";\nimport focus from \"./focusEvent\";\nimport focusin from \"./focusinEvent\";\nimport focusout from \"./focusoutEvent\";\nimport gesturechange from \"./gesturechangeEvent\";\nimport gestureend from \"./gestureendEvent\";\nimport gesturestart from \"./gesturestartEvent\";\nimport keydown from \"./keydownEvent\";\nimport keypress from \"./keypressEvent\";\nimport keyup from \"./keyupEvent\";\nimport load from \"./loadEvent\";\nimport click from \"./mouseclickEvent\";\nimport dblclick from \"./mousedblclickEvent\";\nimport mousedown from \"./mousedownEvent\";\nimport mouseup from \"./mouseupEvent\";\nimport hover from \"./mousehoverEvent\";\nimport mouseenter from \"./mouseenterEvent\";\nimport mouseleave from \"./mouseleaveEvent\";\nimport mousein from \"./mouseinEvent\";\nimport mouseout from \"./mouseoutEvent\";\nimport mouseover from \"./mouseoverEvent\";\nimport mousemove from \"./mousemoveEvent\";\nimport mousewheel from \"./mousewheelEvent\";\nimport move from \"./moveEvent\";\nimport orientationchange from \"./orientationchangeEvent\";\nimport pointercancel from \"./pointercancelEvent\";\nimport pointerdown from \"./pointerdownEvent\";\nimport pointerleave from \"./pointerleaveEvent\";\nimport pointermove from \"./pointermoveEvent\";\nimport pointerup from \"./pointerupEvent\";\nimport readystatechange from \"./readystatechangeEvent\";\nimport reset from \"./resetEvent\";\nimport resize from \"./resizeEvent\";\nimport select from \"./selectEvent\";\nimport selectend from \"./selectendEvent\";\nimport selectstart from \"./selectstartEvent\";\nimport scroll from \"./scrollEvent\";\nimport submit from \"./submitEvent\";\nimport touchstart from \"./touchstartEvent\";\nimport touchmove from \"./touchmoveEvent\";\nimport touchcancel from \"./touchcancelEvent\";\nimport touchend from \"./touchendEvent\";\nimport unload from \"./unloadEvent\";\n\n/**\n * A global namespace for all browser native events.\n */\nconst nativeEvents = {\n DOMContentLoaded,\n DOMMouseScroll,\n abort,\n beforeunload,\n blur,\n change,\n click,\n contextmenu,\n dblclick,\n error,\n focus,\n focusin,\n focusout,\n gesturechange,\n gestureend,\n gesturestart,\n hover,\n keydown,\n keypress,\n keyup,\n load,\n mousedown,\n mousemove,\n mousein,\n mouseout,\n mouseenter,\n mouseleave,\n mouseover,\n mouseup,\n mousewheel,\n move,\n orientationchange,\n pointercancel,\n pointerdown,\n pointerleave,\n pointermove,\n pointerup,\n readystatechange,\n reset,\n resize,\n scroll,\n select,\n selectend,\n selectstart,\n submit,\n touchcancel,\n touchend,\n touchmove,\n touchstart,\n unload,\n};\n\nexport default nativeEvents;\n","/**\n * A global namespace for `drag` event.\n */\nconst dragEvent = \"drag\";\nexport default dragEvent;\n","/**\n * A global namespace for `dragstart` event.\n */\nconst dragstartEvent = \"dragstart\";\nexport default dragstartEvent;\n","/**\n * A global namespace for `dragenter` event.\n */\nconst dragenterEvent = \"dragenter\";\nexport default dragenterEvent;\n","/**\n * A global namespace for `dragleave` event.\n */\nconst dragleaveEvent = \"dragleave\";\nexport default dragleaveEvent;\n","/**\n * A global namespace for `dragover` event.\n */\nconst dragoverEvent = \"dragover\";\nexport default dragoverEvent;\n","/**\n * A global namespace for `dragend` event.\n */\nconst dragendEvent = \"dragend\";\nexport default dragendEvent;\n","/**\n * A global namespace for `loadstart` event.\n */\nconst loadstartEvent = \"loadstart\";\nexport default loadstartEvent;\n","/**\n * A global namespace for mouse events equivalent to touch events.\n */\nconst mouseSwipeEvents = {\n start: \"mousedown\",\n end: \"mouseup\",\n move: \"mousemove\",\n cancel: \"mouseleave\",\n};\nexport default mouseSwipeEvents;\n","/**\n * A global namespace for mouse click events.\n */\nconst mouseClickEvents = { down: \"mousedown\", up: \"mouseup\" };\nexport default mouseClickEvents;\n","/**\n * A global namespace for mouse hover events.\n */\nconst mouseHoverEvents = \"onmouseleave\" in document\n ? [\"mouseenter\", \"mouseleave\"]\n : /* istanbul ignore next @preserve */ [\"mouseover\", \"mouseout\"];\nexport default mouseHoverEvents;\n","/**\n * A global namespace for touch events.\n */\nconst touchEvents = {\n start: \"touchstart\",\n end: \"touchend\",\n move: \"touchmove\",\n cancel: \"touchcancel\",\n};\nexport default touchEvents;\n","/**\n * A global namespace for focus event names.\n */\nconst focusEvents = { in: \"focusin\", out: \"focusout\" };\nexport default focusEvents;\n","const focusableSelector =\n 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]';\n\nexport default focusableSelector;\n","/**\n * A global namespace for keyboard event keys.\n */\nconst keyboardEventKeys = {\n Backspace: \"Backspace\", // 8\n Tab: \"Tab\", // 9\n Enter: \"Enter\", // 13\n Shift: \"Shift\", // 16\n Control: \"Control\", // 17\n Alt: \"Alt\", // 18\n Pause: \"Pause\", // 19\n CapsLock: \"CapsLock\", // 20\n Escape: \"Escape\", // 27\n Scape: \"Space\", // 32\n ArrowLeft: \"ArrowLeft\", // 37\n ArrowUp: \"ArrowUp\", // 38\n ArrowRight: \"ArrowRight\", // 39\n ArrowDown: \"ArrowDown\", // 40\n Insert: \"Insert\", // 45\n Delete: \"Delete\", // 46\n Meta: \"Meta\", // 91 windows key\n ContextMenu: \"ContextMenu\", // 93\n ScrollLock: \"ScrollLock\", // 145\n};\n\nexport default keyboardEventKeys;\n","/**\n * A global namespace for `Alt` key.\n * e.which = 18\n */\nconst keyAlt = \"Alt\";\n\nexport default keyAlt;\n","/**\n * A global namespace for `ArrowDown` key.\n * e.which = 40 equivalent\n */\nconst keyArrowDown = \"ArrowDown\";\n\nexport default keyArrowDown;\n","/**\n * A global namespace for `ArrowUp` key.\n * e.which = 38 equivalent\n */\nconst keyArrowUp = \"ArrowUp\";\n\nexport default keyArrowUp;\n","/**\n * A global namespace for `ArrowLeft` key.\n * e.which = 37 equivalent\n */\nconst keyArrowLeft = \"ArrowLeft\";\n\nexport default keyArrowLeft;\n","/**\n * A global namespace for `ArrowRight` key.\n * e.which = 39 equivalent\n */\nconst keyArrowRight = \"ArrowRight\";\n\nexport default keyArrowRight;\n","/**\n * A global namespace for `Backspace` key.\n * e.which === 8 equivalent\n */\nconst keyBackspace = \"Backspace\";\n\nexport default keyBackspace;\n","/**\n * A global namespace for `CapsLock` key.\n * e.which = 20 equivalent\n */\nconst keyCapsLock = \"CapsLock\";\n\nexport default keyCapsLock;\n","/**\n * A global namespace for `Control` key.\n * e.which = 17\n */\nconst keyControl = \"Control\";\n\nexport default keyControl;\n","/**\n * A global namespace for `Delete` key.\n * e.which = 46 equivalent\n */\nconst keyDelete = \"Delete\";\n\nexport default keyDelete;\n","/**\n * A global namespace for `Enter` key.\n * e.which = 13 equivalent\n */\nconst keyEnter = \"Enter\";\n\nexport default keyEnter;\n","/**\n * A global namespace for `Enter` key.\n * e.which = 13 equivalent\n */\nconst keyNumpadEnter = \"NumpadEnter\";\n\nexport default keyNumpadEnter;\n","/**\n * A global namespace for `Escape` key.\n * e.which = 27 equivalent\n */\nconst keyEscape = \"Escape\";\n\nexport default keyEscape;\n","/**\n * A global namespace for `Insert` key.\n * e.which = 45 equivalent\n */\nconst keyInsert = \"Insert\";\n\nexport default keyInsert;\n","/**\n * A global namespace for `Meta` key.\n * e.which = 93 equivalent\n */\nconst keyMeta = \"Meta\";\n\nexport default keyMeta;\n","/**\n * A global namespace for `Pause` key.\n * e.which = 19\n */\nconst keyPause = \"Pause\";\n\nexport default keyPause;\n","/**\n * A global namespace for `ScrollLock` key.\n * e.which = 145 equivalent\n */\nconst keyScrollLock = \"ScrollLock\";\n\nexport default keyScrollLock;\n","/**\n * A global namespace for `Shift` key.\n * e.which = 16\n */\nconst keyShift = \"Shift\";\n\nexport default keyShift;\n","/**\n * A global namespace for `Space` key.\n * e.which = 32 equivalent\n */\nconst keySpace = \"Space\";\n\nexport default keySpace;\n","/**\n * A global namespace for `Tab` key.\n * e.which = 9 equivalent\n */\nconst keyTab = \"Tab\";\n\nexport default keyTab;\n","/**\n * A global namespace for 'animationDuration' string.\n */\nconst animationDuration = \"animationDuration\";\nexport default animationDuration;\n","/**\n * A global namespace for 'animationDelay' string.\n */\nconst animationDelay = \"animationDelay\";\nexport default animationDelay;\n","/**\n * A global namespace for 'animationName' string.\n */\nconst animationName = \"animationName\";\nexport default animationName;\n","/**\n * A global namespace for 'animationend' string.\n */\nconst animationEndEvent = \"animationend\";\nexport default animationEndEvent;\n","/**\n * A global namespace for 'transitionDuration' string.\n */\nconst transitionDuration = \"transitionDuration\";\nexport default transitionDuration;\n","/**\n * A global namespace for 'transitionDelay' string.\n */\nconst transitionDelay = \"transitionDelay\";\nexport default transitionDelay;\n","/**\n * A global namespace for 'transitionend' string.\n */\nconst transitionEndEvent = \"transitionend\";\nexport default transitionEndEvent;\n","/**\n * A global namespace for `transitionProperty` string for modern browsers.\n */\nconst transitionProperty = \"transitionProperty\";\nexport default transitionProperty;\n","/**\n * A global namespace for 'addEventListener' string.\n */\nconst addEventListener = \"addEventListener\";\nexport default addEventListener;\n","/**\n * A global namespace for 'removeEventListener' string.\n */\nconst removeEventListener = \"removeEventListener\";\nexport default removeEventListener;\n","/**\n * A global namespace for predefined\n * CSS3 'cubic-bezier()' easing functions.\n */\nconst bezierEasings = {\n linear: \"linear\",\n easingSinusoidalIn: \"cubic-bezier(0.47,0,0.745,0.715)\",\n easingSinusoidalOut: \"cubic-bezier(0.39,0.575,0.565,1)\",\n easingSinusoidalInOut: \"cubic-bezier(0.445,0.05,0.55,0.95)\",\n easingQuadraticIn: \"cubic-bezier(0.550,0.085,0.680,0.530)\",\n easingQuadraticOut: \"cubic-bezier(0.250,0.460,0.450,0.940)\",\n easingQuadraticInOut: \"cubic-bezier(0.455,0.030,0.515,0.955)\",\n easingCubicIn: \"cubic-bezier(0.55,0.055,0.675,0.19)\",\n easingCubicOut: \"cubic-bezier(0.215,0.61,0.355,1)\",\n easingCubicInOut: \"cubic-bezier(0.645,0.045,0.355,1)\",\n easingQuarticIn: \"cubic-bezier(0.895,0.03,0.685,0.22)\",\n easingQuarticOut: \"cubic-bezier(0.165,0.84,0.44,1)\",\n easingQuarticInOut: \"cubic-bezier(0.77,0,0.175,1)\",\n easingQuinticIn: \"cubic-bezier(0.755,0.05,0.855,0.06)\",\n easingQuinticOut: \"cubic-bezier(0.23,1,0.32,1)\",\n easingQuinticInOut: \"cubic-bezier(0.86,0,0.07,1)\",\n easingExponentialIn: \"cubic-bezier(0.95,0.05,0.795,0.035)\",\n easingExponentialOut: \"cubic-bezier(0.19,1,0.22,1)\",\n easingExponentialInOut: \"cubic-bezier(1,0,0,1)\",\n easingCircularIn: \"cubic-bezier(0.6,0.04,0.98,0.335)\",\n easingCircularOut: \"cubic-bezier(0.075,0.82,0.165,1)\",\n easingCircularInOut: \"cubic-bezier(0.785,0.135,0.15,0.86)\",\n easingBackIn: \"cubic-bezier(0.6,-0.28,0.735,0.045)\",\n easingBackOut: \"cubic-bezier(0.175,0.885,0.32,1.275)\",\n easingBackInOut: \"cubic-bezier(0.68,-0.55,0.265,1.55)\",\n};\nexport default bezierEasings;\n","/**\n * A global namespace for `offsetHeight` property.\n */\nconst offsetHeight = \"offsetHeight\";\nexport default offsetHeight;\n","/**\n * A global namespace for `offsetWidth` property.\n */\nconst offsetWidth = \"offsetWidth\";\nexport default offsetWidth;\n","/**\n * A global namespace for `scrollHeight` property.\n */\nconst scrollHeight = \"scrollHeight\";\nexport default scrollHeight;\n","/**\n * A global namespace for `scrollWidth` property.\n */\nconst scrollWidth = \"scrollWidth\";\nexport default scrollWidth;\n","/**\n * A global namespace for `touchcancel` event.\n */\nconst tabindex = \"tabindex\";\nexport default tabindex;\n","import type { NavigatorUA } from \"../interface/navigatorUA\";\n\n/**\n * A global namespace for `userAgentData` object.\n */\nconst userAgentData: NavigatorUA[\"userAgentData\"] =\n (navigator as NavigatorUA).userAgentData;\nexport default userAgentData;\n","const { userAgent: userAgentString } = navigator;\n\n/**\n * A global namespace for `navigator.userAgent` string.\n */\nconst userAgent = userAgentString;\nexport default userAgent;\n","import type { NavigatorUA } from \"../interface/navigatorUA\";\n\n/**\n * An accessor that checks for mobile detection.\n */\nconst isMobile = () => {\n const mobileBrands = /iPhone|iPad|iPod|Android/i;\n\n return (navigator as NavigatorUA)?.userAgentData?.brands.some((x) =>\n mobileBrands.test(x.brand)\n ) ||\n mobileBrands.test(navigator?.userAgent) || false;\n};\nexport default isMobile;\n","import type { NavigatorUA } from \"../interface/navigatorUA\";\n\n/**\n * An accessor that checks for Apple browsers.\n */\nconst isApple = () => {\n const appleBrands = /(iPhone|iPod|iPad)/;\n return (navigator as NavigatorUA)?.userAgentData?.brands.some((x) =>\n appleBrands.test(x.brand)\n ) || /* istanbul ignore next @preserve */\n appleBrands.test(\n navigator?.userAgent,\n ) || false;\n};\nexport default isApple;\n","/**\n * An accessor that checks for Gecko browsers. When writing this file,\n * Gecko was not supporting `userAgentData`.\n */\nconst isFirefox = () =>\n navigator?.userAgent?.includes(\"Firefox\") ||\n /* istanbul ignore next @preserve */ false;\n\nexport default isFirefox;\n","const isWebKit = () => {\n /* istanbul ignore next @preserve - this case should be tested in Internet Exploder */\n if (typeof CSS === \"undefined\" || !CSS.supports) return false;\n return CSS.supports(\"-webkit-backdrop-filter\", \"none\");\n};\n\nexport default isWebKit;\n","/**\n * An accessor that checks for CSS3 3D transform support.\n */\nconst support3DTransform = () =>\n [\"webkitPerspective\", \"perspective\"].some((p) => p in document.head.style);\n\nexport default support3DTransform;\n","/** A generic function with empty body. */\nconst noop = () => {\n // this is a noop\n};\n\nexport default noop;\n","/**\n * Add eventListener to an `EventTarget` object.\n */\nconst on = <T extends EventTarget, L = EventListener>(\n element: T,\n eventName: string,\n listener: L,\n options?: AddEventListenerOptions,\n) => {\n const ops = options || false;\n element.addEventListener(\n eventName,\n listener as EventListenerOrEventListenerObject,\n ops,\n );\n};\n\nexport default on;\n","/**\n * Remove eventListener from an `EventTarget` object.\n */\nconst off = <T extends EventTarget, L = EventListener>(\n element: T,\n eventName: string,\n listener: L,\n options?: AddEventListenerOptions,\n) => {\n const ops = options || false;\n element.removeEventListener(\n eventName,\n listener as EventListenerOrEventListenerObject,\n ops,\n );\n};\n\nexport default off;\n","import on from \"./on\";\nimport off from \"./off\";\nimport { NativeEventHandler } from \"../interface/event\";\n\n/**\n * Add an `eventListener` to an `EventTarget`\n * element and remove it once callback is called.\n */\nconst one = <T extends EventTarget, L = EventListener>(\n element: T,\n eventName: string,\n listener: L,\n options?: AddEventListenerOptions,\n) => {\n /** Wrap the listener for easy on -> off */\n const handlerWrapper: NativeEventHandler<T> = (e) => {\n /* istanbul ignore else @preserve */\n if (e.target === element || e.currentTarget === element) {\n (listener as NativeEventHandler<T>).apply(element, [e]);\n off(element, eventName, handlerWrapper, options);\n }\n };\n on(element, eventName, handlerWrapper, options);\n};\n\nexport default one;\n","import noop from \"../misc/noop\";\nimport one from \"../event/one\";\nimport DOMContentLoadedEvent from \"../strings/DOMContentLoadedEvent\";\n\n/**\n * An accessor that checks for passive events support,\n * in general event options are not suited for scroll prevention.\n *\n * @see https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md#feature-detection\n */\nconst supportPassive = () => {\n let result = false;\n try {\n const opts = Object.defineProperty({}, \"passive\", {\n get: () => {\n result = true;\n return result;\n },\n });\n /* istanbul ignore next @preserve */\n one(document, DOMContentLoadedEvent, noop, opts);\n } catch (_e) {\n // throw Error('Passive events are not supported');\n }\n\n return result;\n};\n\nexport default supportPassive;\n","/**\n * An accessor that checks for CSS3 transform support.\n */\nconst supportTransform = () =>\n [\"webkitTransform\", \"transform\"].some((p) => p in document.head.style);\n\nexport default supportTransform;\n","/**\n * An accessor that checks for touch events support.\n */\nconst supportTouch = () =>\n \"ontouchstart\" in window ||\n /* istanbul ignore next @preserve */\n \"msMaxTouchPoints\" in navigator;\n\nexport default supportTouch;\n","/**\n * An accessor that checks for CSS3 animation support.\n */\nconst supportAnimation = () =>\n [\"webkitAnimation\", \"animation\"].some((p) => p in document.head.style);\n\nexport default supportAnimation;\n","/**\n * An accessor that checks for CSS3 transition support.\n */\nconst supportTransition = () =>\n [\"webkitTransition\", \"transition\"].some((p) => p in document.head.style);\n\nexport default supportTransition;\n","/**\n * Shortcut for `Element.getAttribute()` method.\n *\n * @param element target element\n * @param att attribute name\n * @returns attribute value\n */\nconst getAttribute = (element: Element, att: string): string | null =>\n element.getAttribute(att);\n\nexport default getAttribute;\n","/**\n * Shortcut for `Element.getAttributeNS()` method.\n *\n * @param ns attribute namespace\n * @param element target element\n * @param att attribute name\n * @returns attribute value\n */\nconst getAttributeNS = (ns: string, element: Element, att: string) =>\n element.getAttributeNS(ns, att);\n\nexport default getAttributeNS;\n","/**\n * Shortcut for `Element.hasAttribute()` method.\n *\n * @param element target element\n * @param att attribute name\n * @returns the query result\n */\nconst hasAttribute = (element: Element, att: string): boolean =>\n element.hasAttribute(att);\n\nexport default hasAttribute;\n","/**\n * Shortcut for `Element.hasAttributeNS()` method.\n *\n * @param ns attribute namespace\n * @param element target element\n * @param att attribute name\n * @returns the query result\n */\nconst hasAttributeNS = (\n ns: string,\n element: Element,\n att: string,\n): boolean => element.hasAttributeNS(ns, att);\n\nexport default hasAttributeNS;\n","/**\n * Shortcut for `Element.setAttribute()` method.\n *\n * @param element target element\n * @param att attribute name\n * @param value attribute value\n */\nconst setAttribute = (element: Element, att: string, value: string) =>\n element.setAttribute(att, value);\n\nexport default setAttribute;\n","/**\n * Shortcut for `Element.setAttributeNS()` method.\n *\n * @param ns attribute namespace\n * @param element target element\n * @param att attribute name\n * @param value attribute value\n */\nconst setAttributeNS = (\n ns: string,\n element: Element,\n att: string,\n value: string,\n): void => element.setAttributeNS(ns, att, value);\n\nexport default setAttributeNS;\n","/**\n * Shortcut for `Element.removeAttribute()` method.\n *\n * @param element target element\n * @param att attribute name\n */\nconst removeAttribute = (element: Element, att: string): void =>\n element.removeAttribute(att);\n\nexport default removeAttribute;\n","/**\n * Shortcut for `Element.removeAttributeNS()` method.\n *\n * @param ns attribute namespace\n * @param element target element\n * @param att attribute name\n */\nconst removeAttributeNS = (\n ns: string,\n element: Element,\n att: string,\n): void => element.removeAttributeNS(ns, att);\n\nexport default removeAttributeNS;\n","/**\n * Add one or more CSS classes to `Element.classList`.\n *\n * @param element target\n * @param classNAME to add\n */\nconst addClass = (element: Element, ...classNAME: string[]): void => {\n element.classList.add(...classNAME);\n};\n\nexport default addClass;\n","/**\n * Remove one or more classes from `Element.classList`.\n *\n * @param element target\n * @param classNAME to remove\n */\nconst removeClass = (element: Element, ...classNAME: string[]): void => {\n element.classList.remove(...classNAME);\n};\n\nexport default removeClass;\n","/**\n * Check class in `Element.classList`.\n *\n * @param element target\n * @param classNAME to check\n */\nconst hasClass = (element: Element, classNAME: string): boolean => {\n return element.classList.contains(classNAME);\n};\n\nexport default hasClass;\n","/**\n * A global namespace for `document.body`.\n */\nconst { body: documentBody } = document;\nexport default documentBody;\n","/**\n * A global namespace for `document.documentElement` or the `<HTML>`.\n */\nconst { documentElement } = document;\nexport default documentElement;\n","/**\n * A global namespace for `document.head`.\n */\nconst { head: documentHead } = document;\nexport default documentHead;\n","/**\n * Shortie for `Array.from()` static method.\n * The utility should also work with any typed arrays\n * like Float64Array or Int32Array.\n *\n * @param arr array-like iterable object\n * @returns a new array from iterable object\n */\nconst ArrayFrom = <T>(arr: ArrayLike<T> | Iterable<T>): T[] => Array.from(arr);\n\nexport default ArrayFrom;\n","/**\n * Checks if a value is an `Object`.\n *\n * @param obj the target object\n * @returns the query result\n */\nconst isObject = (obj?: unknown): obj is object =>\n (obj !== null && obj !== undefined && typeof obj === \"object\") || false;\n\nexport default isObject;\n","import isObject from \"./isObject\";\n\ntype NodeObject = object & { nodeType: number };\n\n/**\n * Checks if an object is a `Node`.\n *\n * @param node the target object\n * @see https://dom.spec.whatwg.org/#node\n *\n * ```\n * ELEMENT_NODE = 1;\n * ATTRIBUTE_NODE = 2;\n * TEXT_NODE = 3;\n * CDATA_SECTION_NODE = 4;\n * ENTITY_REFERENCE_NODE = 5; // legacy\n * ENTITY_NODE = 6; // legacy\n * PROCESSING_INSTRUCTION_NODE = 7;\n * COMMENT_NODE = 8;\n * DOCUMENT_NODE = 9;\n * DOCUMENT_TYPE_NODE = 10;\n * DOCUMENT_FRAGMENT_NODE = 11;\n * @returns the query result\n */\nconst isNode = (node?: unknown): node is Node =>\n (isObject(node) &&\n typeof (node as NodeObject).nodeType === \"number\" &&\n [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].some((x) =>\n (node as NodeObject).nodeType === x\n )) ||\n false;\n\nexport default isNode;\n","import isNode from \"./isNode\";\n\n/**\n * Checks if an object is an `Element`.\n *\n * @param element the target object\n * @returns the query result\n */\nconst isElement = (element?: unknown): element is Element =>\n (isNode(element) && element.nodeType === 1) || false;\n\nexport default isElement;\n","import isElement from \"../is/isElement\";\n\nconst componentData = new Map<string, Map<Element, unknown>>();\n\n/**\n * An interface for web components background data.\n *\n * @see https://github.com/thednp/bootstrap.native/blob/master/src/components/base-component.js\n */\nconst Data = {\n data: componentData,\n /**\n * Sets web components data.\n *\n * @param element target element\n * @param component the component's name or a unique key\n * @param instance the component instance\n */\n set: <T>(element: Element, component: string, instance: T): void => {\n if (!isElement(element)) return;\n\n /* istanbul ignore else @preserve */\n if (!componentData.has(component)) {\n componentData.set(component, new Map<Element, T>());\n }\n\n const instanceMap = componentData.get(component) as Map<Element, T>;\n // not undefined, but defined right above\n instanceMap.set(element, instance);\n },\n\n /**\n * Returns all instances for specified component.\n *\n * @param component the component's name or a unique key\n * @returns all the component instances\n */\n getAllFor: <T>(component: string): Map<Element, T> | null => {\n const instanceMap = componentData.get(component) as Map<Element, T>;\n\n return instanceMap || null;\n },\n\n /**\n * Returns the instance associated with the target.\n *\n * @param element target element\n * @param component the component's name or a unique key\n * @returns the instance\n */\n get: <T>(element: Element, component: string): T | null => {\n if (!isElement(element) || !component) return null;\n const instanceMap = Data.getAllFor<T>(component);\n\n const instance = element && instanceMap && instanceMap.get(element);\n\n return instance || null;\n },\n\n /**\n * Removes web components data.\n *\n * @param element target element\n * @param component the component's name or a unique key\n */\n remove: <T>(element: Element, component: string): void => {\n const instanceMap = Data.getAllFor<T>(component);\n\n if (!instanceMap || !isElement(element)) return;\n\n instanceMap.delete(element);\n\n /* istanbul ignore else @preserve */\n if (instanceMap.size === 0) {\n componentData.delete(component);\n }\n },\n};\n\nexport default Data;\n","import Data from \"./data\";\n\n/**\n * An alias for `Data.get()`.\n */\nconst getInstance = <T>(target: Element, component: string): T | null =>\n Data.get(target, component);\n\nexport default getInstance;\n","/**\n * Capitalize first character in a string.\n * @param input source string\n */\nconst capitalize = (input: string) =>\n input?.charAt(0).toUpperCase() + input?.slice(1);\n\nexport default capitalize;\n","/**\n * Transform a string to camel case.\n * @param input source string\n */\nconst camelCase = (input: string) =>\n input?.trim().replace(\n /(?:^\\w|[A-Z]|\\b\\w)/g,\n (word, index) => index === 0 ? word.toLowerCase() : word.toUpperCase(),\n ).replace(/\\s+/g, \"\");\n\nexport default camelCase;\n","/**\n * Shortie for `typeof SOMETHING === \"string\"`.\n *\n * @param str input value\n * @returns the query result\n */\nconst isString = (str?: unknown): str is string =>\n typeof str === \"string\" || false;\n\nexport default isString;\n","import isObject from \"./isObject\";\n\n/**\n * Check if a target object is `Window`.\n * => equivalent to `object instanceof Window`\n *\n * @param obj the target object\n * @returns the query result\n */\nconst isWindow = (obj?: unknown): obj is Window =>\n (isObject(obj) && obj.constructor.name === \"Window\") || false;\n\nexport default isWindow;\n","import isNode from \"./isNode\";\n\n/**\n * Checks if an object is a `Document`.\n *\n * @see https://dom.spec.whatwg.org/#node\n *\n * @param obj the target object\n * @returns the query result\n */\nconst isDocument = (obj?: unknown): obj is Document =>\n (isNode(obj) && obj.nodeType === 9) || false;\n\nexport default isDocument;\n","import isNode from \"../is/isNode\";\nimport isWindow from \"../is/isWindow\";\nimport isDocument from \"../is/isDocument\";\n\n/**\n * Returns the `document` or the `#document` element.\n *\n * @see https://github.com/floating-ui/floating-ui\n *\n * @param node the reference node\n * @returns the parent document of the given node\n */\nconst getDocument = (node?: Node | Document | Window): Document => {\n // node instanceof Document\n if (isDocument(node)) return node;\n // node instanceof Node\n if (isNode(node)) return node.ownerDocument as Document;\n // node instanceof Window\n if (isWindow(node)) return node.document;\n // node is undefined | NULL\n return globalThis.document;\n};\n\nexport default getDocument;\n","/**\n * Overloads for Object.assign.\n *\n * @see https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/object-assign/index.d.ts\n */\ndeclare function ObjectAssignTyped<T, U>(target: T, source: U): T & U;\ndeclare function ObjectAssignTyped<T, U, V>(\n target: T,\n source1: U,\n source2: V,\n): T & U & V;\ndeclare function ObjectAssignTyped<T, U, V, W>(\n target: T,\n source1: U,\n source2: V,\n source3: W,\n): T & U & V & W;\ndeclare function ObjectAssignTyped<T, U, V, W, Q>(\n target: T,\n source1: U,\n source2: V,\n source3: W,\n source4: Q,\n): T & U & V & W & Q;\ndeclare function ObjectAssignTyped<T, U, V, W, Q, R>(\n target: T,\n source1: U,\n source2: V,\n source3: W,\n source4: Q,\n source5: R,\n): T & U & V & W & Q & R;\ndeclare function ObjectAssignTyped(\n target: unknown,\n ...sources: unknown[]\n): unknown;\n\n/**\n * Shortcut for `Object.assign()` static method.\n *\n * @param obj a target object\n * @param source source object(s)\n * @see https://github.com/devinrhode2/ObjectTyped/blob/master/src/index.ts\n */\nconst ObjectAssign: typeof ObjectAssignTyped = <\n A extends Record<string, unknown>,\n B,\n>(\n obj: A,\n ...source: B[]\n): B extends Record<string, unknown>[] ? unknown : A & B =>\n Object.assign(obj, ...source);\n\nexport default ObjectAssign;\n","import isString from \"../is/isString\";\nimport getDocument from \"../get/getDocument\";\nimport ObjectAssign from \"./ObjectAssign\";\n\n/**\n * Shortie for `document.createElement` method\n * which allows you to create a new `HTMLElement` for a given `tagName`\n * or based on an object with specific non-readonly attributes with string values:\n * `id`, `className`, `textContent`, `style`, etc.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement\n *\n * @param param `tagName` or object\n * @return a new `HTMLElement`\n */\nconst createElement = <T extends HTMLElement>(\n param?: string | Partial<T>,\n): T | undefined => {\n if (!param) return undefined;\n\n if (isString(param)) {\n return getDocument().createElement(param) as T;\n }\n\n const { tagName } = param;\n const newElement = createElement(tagName as string);\n\n if (!newElement) return undefined;\n\n const attr = { ...(param as Record<string, unknown>) };\n delete attr.tagName;\n\n return ObjectAssign(newElement, attr) as unknown as T;\n};\n\nexport default createElement;\n","import getDocument from \"../get/getDocument\";\nimport ObjectAssign from \"./ObjectAssign\";\nimport isString from \"../is/isString\";\n\n/**\n * Shortie for `document.createElementNS` method\n * which allows you to create a new `Element` for a given `tagName`\n * or based on an object with specific non-readonly attributes with string values:\n * `id`, `className`, `textContent`, `style`, etc.\n * Note: some elements resulted from this function call may not be compatible with\n * some attributes.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/createElementNS\n *\n * @param ns `namespaceURI` to associate with the new `Element`\n * @param param `tagName` or object\n * @return a new `Element`\n */\nconst createElementNS = <T extends Element>(\n ns: string,\n param?: string | Partial<T>,\n): T | undefined => {\n if (!ns || !param) return undefined;\n\n if (isString(param)) {\n return getDocument().createElementNS(ns, param) as T;\n }\n\n const { tagName } = param;\n const newElement = createElementNS(ns, tagName);\n\n if (!newElement) return undefined;\n\n const attr = { ...(param as Record<string, unknown>) };\n delete attr.tagName;\n\n return ObjectAssign(newElement, attr) as unknown as T;\n};\n\nexport default createElementNS;\n","/**\n * Shortcut for the `Element.dispatchEvent(Event)` method.\n *\n * @param element is the target\n * @param event is the `Event` object\n */\nconst dispatchEvent = (element: EventTarget, event: Event): boolean =>\n element.dispatchEvent(event);\n\nexport default dispatchEvent;\n","/**\n * JavaScript `Array` distinct.\n *\n * @see https://codeburst.io/javascript-array-distinct-5edc93501dc4\n *\n * @example\n * ```\
|