uawdijnntqw1x1x1
IP : 216.73.216.110
Hostname : 6.87.74.97.host.secureserver.net
Kernel : Linux 6.87.74.97.host.secureserver.net 4.18.0-553.83.1.el8_10.x86_64 #1 SMP Mon Nov 10 04:22:44 EST 2025 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
emeraadmin
/
www
/
node_modules
/
.bin
/
..
/
xmlbuilder
/
..
/
debug
/
..
/
..
/
src
/
..
/
4d695
/
dom-helpers.tar
/
/
isWindow/package.json000064400000000235151701476720010647 0ustar00{ "name": "dom-helpers/isWindow", "private": true, "main": "../cjs/isWindow.js", "module": "../esm/isWindow.js", "types": "../esm/isWindow.d.ts" } isDocument/package.json000064400000000245151701476720011157 0ustar00{ "name": "dom-helpers/isDocument", "private": true, "main": "../cjs/isDocument.js", "module": "../esm/isDocument.js", "types": "../esm/isDocument.d.ts" } triggerEvent/package.json000064400000000255151701476720011513 0ustar00{ "name": "dom-helpers/triggerEvent", "private": true, "main": "../cjs/triggerEvent.js", "module": "../esm/triggerEvent.js", "types": "../esm/triggerEvent.d.ts" } contains/package.json000064400000000235151701476720010662 0ustar00{ "name": "dom-helpers/contains", "private": true, "main": "../cjs/contains.js", "module": "../esm/contains.js", "types": "../esm/contains.d.ts" } insertAfter/package.json000064400000000251151701476720011330 0ustar00{ "name": "dom-helpers/insertAfter", "private": true, "main": "../cjs/insertAfter.js", "module": "../esm/insertAfter.js", "types": "../esm/insertAfter.d.ts" } package.json000064400000003403151701476720007044 0ustar00{ "_from": "dom-helpers@^5.1.3", "_id": "dom-helpers@5.2.1", "_inBundle": false, "_integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", "_location": "/dom-helpers", "_phantomChildren": {}, "_requested": { "type": "range", "registry": true, "raw": "dom-helpers@^5.1.3", "name": "dom-helpers", "escapedName": "dom-helpers", "rawSpec": "^5.1.3", "saveSpec": null, "fetchSpec": "^5.1.3" }, "_requiredBy": [ "/react-virtualized" ], "_resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", "_shasum": "d9400536b2bf8225ad98fe052e029451ac40e902", "_spec": "dom-helpers@^5.1.3", "_where": "C:\\xampp\\htdocs\\emeraltd\\node_modules\\react-virtualized", "author": { "name": "Jason Quense", "email": "monastic.panic@gmail.com" }, "bugs": { "url": "https://github.com/react-bootstrap/dom-helpers/issues" }, "bundleDependencies": false, "dependencies": { "@babel/runtime": "^7.8.7", "csstype": "^3.0.2" }, "deprecated": false, "description": "tiny modular DOM lib for ie9+", "homepage": "https://github.com/react-bootstrap/dom-helpers#readme", "keywords": [ "dom-helpers", "react-component", "dom", "api", "cross-browser", "style", "event", "height", "width", "dom-helpers", "class", "classlist", "css" ], "license": "MIT", "main": "cjs/index.js", "module": "esm/index.js", "name": "dom-helpers", "publishConfig": { "directory": "lib" }, "release": { "conventionalCommits": true }, "repository": { "type": "git", "url": "git+https://github.com/react-bootstrap/dom-helpers.git" }, "types": "cjs/index.d.ts", "version": "5.2.1" } text/package.json000064400000000215151701476720010026 0ustar00{ "name": "dom-helpers/text", "private": true, "main": "../cjs/text.js", "module": "../esm/text.js", "types": "../esm/text.d.ts" } prepend/package.json000064400000000231151701476720010475 0ustar00{ "name": "dom-helpers/prepend", "private": true, "main": "../cjs/prepend.js", "module": "../esm/prepend.js", "types": "../esm/prepend.d.ts" } position/package.json000064400000000235151701476720010710 0ustar00{ "name": "dom-helpers/position", "private": true, "main": "../cjs/position.js", "module": "../esm/position.js", "types": "../esm/position.d.ts" } scrollTop/package.json000064400000000241151701476720011022 0ustar00{ "name": "dom-helpers/scrollTop", "private": true, "main": "../cjs/scrollTop.js", "module": "../esm/scrollTop.js", "types": "../esm/scrollTop.d.ts" } toggleClass/package.json000064400000000251151701476720011311 0ustar00{ "name": "dom-helpers/toggleClass", "private": true, "main": "../cjs/toggleClass.js", "module": "../esm/toggleClass.js", "types": "../esm/toggleClass.d.ts" } querySelectorAll/package.json000064400000000275151701476720012347 0ustar00{ "name": "dom-helpers/querySelectorAll", "private": true, "main": "../cjs/querySelectorAll.js", "module": "../esm/querySelectorAll.js", "types": "../esm/querySelectorAll.d.ts" } scrollTo/package.json000064400000000235151701476720010645 0ustar00{ "name": "dom-helpers/scrollTo", "private": true, "main": "../cjs/scrollTo.js", "module": "../esm/scrollTo.js", "types": "../esm/scrollTo.d.ts" } hyphenateStyle/package.json000064400000000265151701476720012055 0ustar00{ "name": "dom-helpers/hyphenateStyle", "private": true, "main": "../cjs/hyphenateStyle.js", "module": "../esm/hyphenateStyle.js", "types": "../esm/hyphenateStyle.d.ts" } activeElement/package.json000064400000000261151701476720011630 0ustar00{ "name": "dom-helpers/activeElement", "private": true, "main": "../cjs/activeElement.js", "module": "../esm/activeElement.js", "types": "../esm/activeElement.d.ts" } listen/package.json000064400000000225151701476720010341 0ustar00{ "name": "dom-helpers/listen", "private": true, "main": "../cjs/listen.js", "module": "../esm/listen.js", "types": "../esm/listen.d.ts" } removeEventListener/package.json000064400000000311151701476720013044 0ustar00{ "name": "dom-helpers/removeEventListener", "private": true, "main": "../cjs/removeEventListener.js", "module": "../esm/removeEventListener.js", "types": "../esm/removeEventListener.d.ts" } collectSiblings/package.json000064400000000271151701476720012164 0ustar00{ "name": "dom-helpers/collectSiblings", "private": true, "main": "../cjs/collectSiblings.js", "module": "../esm/collectSiblings.js", "types": "../esm/collectSiblings.d.ts" } isVisible/package.json000064400000000241151701476720010772 0ustar00{ "name": "dom-helpers/isVisible", "private": true, "main": "../cjs/isVisible.js", "module": "../esm/isVisible.js", "types": "../esm/isVisible.d.ts" } attribute/package.json000064400000000241151701476720011044 0ustar00{ "name": "dom-helpers/attribute", "private": true, "main": "../cjs/attribute.js", "module": "../esm/attribute.js", "types": "../esm/attribute.d.ts" } hyphenate/package.json000064400000000241151701476720011026 0ustar00{ "name": "dom-helpers/hyphenate", "private": true, "main": "../cjs/hyphenate.js", "module": "../esm/hyphenate.js", "types": "../esm/hyphenate.d.ts" } matches/package.json000064400000000231151701476720010464 0ustar00{ "name": "dom-helpers/matches", "private": true, "main": "../cjs/matches.js", "module": "../esm/matches.js", "types": "../esm/matches.d.ts" } getScrollAccessor/package.json000064400000000301151701476720012457 0ustar00{ "name": "dom-helpers/getScrollAccessor", "private": true, "main": "../cjs/getScrollAccessor.js", "module": "../esm/getScrollAccessor.js", "types": "../esm/getScrollAccessor.d.ts" } LICENSE000064400000002066151701476720005567 0ustar00The MIT License (MIT) Copyright (c) 2015 Jason Quense Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.height/package.json000064400000000225151701476720010313 0ustar00{ "name": "dom-helpers/height", "private": true, "main": "../cjs/height.js", "module": "../esm/height.js", "types": "../esm/height.d.ts" } addClass/package.json000064400000000235151701476720010562 0ustar00{ "name": "dom-helpers/addClass", "private": true, "main": "../cjs/addClass.js", "module": "../esm/addClass.js", "types": "../esm/addClass.d.ts" } childElements/package.json000064400000000261151701476720011623 0ustar00{ "name": "dom-helpers/childElements", "private": true, "main": "../cjs/childElements.js", "module": "../esm/childElements.js", "types": "../esm/childElements.d.ts" } canUseDOM/package.json000064400000000241151701476720010617 0ustar00{ "name": "dom-helpers/canUseDOM", "private": true, "main": "../cjs/canUseDOM.js", "module": "../esm/canUseDOM.js", "types": "../esm/canUseDOM.d.ts" } ownerDocument/package.json000064400000000261151701476720011674 0ustar00{ "name": "dom-helpers/ownerDocument", "private": true, "main": "../cjs/ownerDocument.js", "module": "../esm/ownerDocument.js", "types": "../esm/ownerDocument.d.ts" } childNodes/package.json000064400000000245151701476720011121 0ustar00{ "name": "dom-helpers/childNodes", "private": true, "main": "../cjs/childNodes.js", "module": "../esm/childNodes.js", "types": "../esm/childNodes.d.ts" } collectElements/package.json000064400000000271151701476720012166 0ustar00{ "name": "dom-helpers/collectElements", "private": true, "main": "../cjs/collectElements.js", "module": "../esm/collectElements.js", "types": "../esm/collectElements.d.ts" } addEventListener/package.json000064400000000275151701476720012310 0ustar00{ "name": "dom-helpers/addEventListener", "private": true, "main": "../cjs/addEventListener.js", "module": "../esm/addEventListener.js", "types": "../esm/addEventListener.d.ts" } getComputedStyle/package.json000064400000000275151701476720012351 0ustar00{ "name": "dom-helpers/getComputedStyle", "private": true, "main": "../cjs/getComputedStyle.js", "module": "../esm/getComputedStyle.js", "types": "../esm/getComputedStyle.d.ts" } scrollParent/package.json000064400000000255151701476720011516 0ustar00{ "name": "dom-helpers/scrollParent", "private": true, "main": "../cjs/scrollParent.js", "module": "../esm/scrollParent.js", "types": "../esm/scrollParent.d.ts" } siblings/package.json000064400000000235151701476720010656 0ustar00{ "name": "dom-helpers/siblings", "private": true, "main": "../cjs/siblings.js", "module": "../esm/siblings.js", "types": "../esm/siblings.d.ts" } scrollbarSize/package.json000064400000000261151701476720011661 0ustar00{ "name": "dom-helpers/scrollbarSize", "private": true, "main": "../cjs/scrollbarSize.js", "module": "../esm/scrollbarSize.js", "types": "../esm/scrollbarSize.d.ts" } nextUntil/package.json000064400000000241151701476720011033 0ustar00{ "name": "dom-helpers/nextUntil", "private": true, "main": "../cjs/nextUntil.js", "module": "../esm/nextUntil.js", "types": "../esm/nextUntil.d.ts" } camelizeStyle/package.json000064400000000261151701476720011655 0ustar00{ "name": "dom-helpers/camelizeStyle", "private": true, "main": "../cjs/camelizeStyle.js", "module": "../esm/camelizeStyle.js", "types": "../esm/camelizeStyle.d.ts" } animate/package.json000064400000000231151701476720010456 0ustar00{ "name": "dom-helpers/animate", "private": true, "main": "../cjs/animate.js", "module": "../esm/animate.js", "types": "../esm/animate.d.ts" } scrollLeft/package.json000064400000000245151701476720011156 0ustar00{ "name": "dom-helpers/scrollLeft", "private": true, "main": "../cjs/scrollLeft.js", "module": "../esm/scrollLeft.js", "types": "../esm/scrollLeft.d.ts" } filterEventHandler/package.json000064400000000305151701476720012627 0ustar00{ "name": "dom-helpers/filterEventHandler", "private": true, "main": "../cjs/filterEventHandler.js", "module": "../esm/filterEventHandler.js", "types": "../esm/filterEventHandler.d.ts" } hasClass/package.json000064400000000235151701476720010605 0ustar00{ "name": "dom-helpers/hasClass", "private": true, "main": "../cjs/hasClass.js", "module": "../esm/hasClass.js", "types": "../esm/hasClass.d.ts" } transitionEnd/package.json000064400000000261151701476720011664 0ustar00{ "name": "dom-helpers/transitionEnd", "private": true, "main": "../cjs/transitionEnd.js", "module": "../esm/transitionEnd.js", "types": "../esm/transitionEnd.d.ts" } css/package.json000064400000000211151701476720007626 0ustar00{ "name": "dom-helpers/css", "private": true, "main": "../cjs/css.js", "module": "../esm/css.js", "types": "../esm/css.d.ts" } cjs/removeEventListener.js000064400000001206151701476720011677 0ustar00"use strict"; exports.__esModule = true; exports.default = void 0; /** * A `removeEventListener` ponyfill * * @param node the element * @param eventName the event name * @param handle the handler * @param options event options */ function removeEventListener(node, eventName, handler, options) { var capture = options && typeof options !== 'boolean' ? options.capture : options; node.removeEventListener(eventName, handler, capture); if (handler.__once) { node.removeEventListener(eventName, handler.__once, capture); } } var _default = removeEventListener; exports.default = _default; module.exports = exports["default"];cjs/querySelectorAll.js000064400000000611151701476720011170 0ustar00"use strict"; exports.__esModule = true; exports.default = qsa; var toArray = Function.prototype.bind.call(Function.prototype.call, [].slice); /** * Runs `querySelectorAll` on a given element. * * @param element the element * @param selector the selector */ function qsa(element, selector) { return toArray(element.querySelectorAll(selector)); } module.exports = exports["default"];cjs/attribute.js000064400000001036151701476720007676 0ustar00"use strict"; exports.__esModule = true; exports.default = attribute; /** * Gets or sets an attribute of a given element. * * @param node the element * @param attr the attribute to get or set * @param val the attribute value */ function attribute(node, attr, val) { if (node) { if (typeof val === 'undefined') { return node.getAttribute(attr); } if (!val && val !== '') { node.removeAttribute(attr); } else { node.setAttribute(attr, String(val)); } } } module.exports = exports["default"];cjs/addEventListener.js000064400000003441151701476720011135 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = exports.onceSupported = exports.optionsSupported = void 0; var _canUseDOM = _interopRequireDefault(require("./canUseDOM")); /* eslint-disable no-return-assign */ var optionsSupported = false; exports.optionsSupported = optionsSupported; var onceSupported = false; exports.onceSupported = onceSupported; try { var options = { get passive() { return exports.optionsSupported = optionsSupported = true; }, get once() { // eslint-disable-next-line no-multi-assign return exports.onceSupported = onceSupported = exports.optionsSupported = optionsSupported = true; } }; if (_canUseDOM.default) { window.addEventListener('test', options, options); window.removeEventListener('test', options, true); } } catch (e) { /* */ } /** * An `addEventListener` ponyfill, supports the `once` option * * @param node the element * @param eventName the event name * @param handle the handler * @param options event options */ function addEventListener(node, eventName, handler, options) { if (options && typeof options !== 'boolean' && !onceSupported) { var once = options.once, capture = options.capture; var wrappedHandler = handler; if (!onceSupported && once) { wrappedHandler = handler.__once || function onceHandler(event) { this.removeEventListener(eventName, onceHandler, capture); handler.call(this, event); }; handler.__once = wrappedHandler; } node.addEventListener(eventName, wrappedHandler, optionsSupported ? options : capture); } node.addEventListener(eventName, handler, options); } var _default = addEventListener; exports.default = _default;cjs/text.js000064400000001637151701476720006666 0ustar00"use strict"; exports.__esModule = true; exports.default = text; var regExpNbspEntity = / /gi; var regExpNbspHex = /\xA0/g; var regExpSpaces = /\s+([^\s])/gm; /** * Collects the text content of a given element. * * @param node the element * @param trim whether to remove trailing whitespace chars * @param singleSpaces whether to convert multiple whitespace chars into a single space character */ function text(node, trim, singleSpaces) { if (trim === void 0) { trim = true; } if (singleSpaces === void 0) { singleSpaces = true; } var elementText = ''; if (node) { elementText = (node.textContent || '').replace(regExpNbspEntity, ' ').replace(regExpNbspHex, ' '); if (trim) { elementText = elementText.trim(); } if (singleSpaces) { elementText = elementText.replace(regExpSpaces, ' $1'); } } return elementText; } module.exports = exports["default"];cjs/isWindow.js000064400000000670151701476720007501 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = isWindow; var _isDocument = _interopRequireDefault(require("./isDocument")); function isWindow(node) { if ('window' in node && node.window === node) return node; if ((0, _isDocument.default)(node)) return node.defaultView || false; return false; } module.exports = exports["default"];cjs/ownerWindow.js000064400000000740151701476720010216 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = ownerWindow; var _ownerDocument = _interopRequireDefault(require("./ownerDocument")); /** * Returns the owner window of a given element. * * @param node the element */ function ownerWindow(node) { var doc = (0, _ownerDocument.default)(node); return doc && doc.defaultView || window; } module.exports = exports["default"];cjs/hyphenate.js000064400000000333151701476720007657 0ustar00"use strict"; exports.__esModule = true; exports.default = hyphenate; var rUpper = /([A-Z])/g; function hyphenate(string) { return string.replace(rUpper, '-$1').toLowerCase(); } module.exports = exports["default"];cjs/scrollTop.js000064400000000763151701476720007662 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _getScrollAccessor = _interopRequireDefault(require("./getScrollAccessor")); /** * Gets or sets the scroll top position of a given element. * * @param node the element * @param val the position to set */ var _default = (0, _getScrollAccessor.default)('pageYOffset'); exports.default = _default; module.exports = exports["default"];cjs/collectElements.d.ts000064400000000327151701476720011253 0ustar00declare type TraverseDirection = 'parentElement' | 'previousElementSibling' | 'nextElementSibling'; export default function collectElements(node: Element | null, direction: TraverseDirection): Element[]; export {}; cjs/offset.js000064400000002312151701476720007157 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = offset; var _contains = _interopRequireDefault(require("./contains")); var _ownerDocument = _interopRequireDefault(require("./ownerDocument")); var _scrollLeft = _interopRequireDefault(require("./scrollLeft")); var _scrollTop = _interopRequireDefault(require("./scrollTop")); /** * Returns the offset of a given element, including top and left positions, width and height. * * @param node the element */ function offset(node) { var doc = (0, _ownerDocument.default)(node); var box = { top: 0, left: 0, height: 0, width: 0 }; var docElem = doc && doc.documentElement; // Make sure it's not a disconnected DOM node if (!docElem || !(0, _contains.default)(docElem, node)) return box; if (node.getBoundingClientRect !== undefined) box = node.getBoundingClientRect(); box = { top: box.top + (0, _scrollTop.default)(docElem) - (docElem.clientTop || 0), left: box.left + (0, _scrollLeft.default)(docElem) - (docElem.clientLeft || 0), width: box.width, height: box.height }; return box; } module.exports = exports["default"];cjs/scrollTo.d.ts000064400000000157151701476720007733 0ustar00export default function scrollTo(selected: HTMLElement, scrollParent?: HTMLElement): (() => void) | undefined; cjs/contains.d.ts000064400000000345151701476720007747 0ustar00/** * Checks if an element contains another given element. * * @param context the context element * @param node the element to check */ export default function contains(context: Element, node: Element): boolean | undefined; cjs/isWindow.d.ts000064400000000125151701476720007730 0ustar00export default function isWindow(node: Element | Document | Window): Window | false; cjs/filterEventHandler.js000064400000001244151701476720011461 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = filterEvents; var _contains = _interopRequireDefault(require("./contains")); var _querySelectorAll = _interopRequireDefault(require("./querySelectorAll")); function filterEvents(selector, handler) { return function filterHandler(e) { var top = e.currentTarget; var target = e.target; var matches = (0, _querySelectorAll.default)(top, selector); if (matches.some(function (match) { return (0, _contains.default)(match, target); })) handler.call(this, e); }; } module.exports = exports["default"];cjs/height.js000064400000001166151701476720007147 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = height; var _isWindow = _interopRequireDefault(require("./isWindow")); var _offset = _interopRequireDefault(require("./offset")); /** * Returns the height of a given element. * * @param node the element * @param client whether to use `clientHeight` if possible */ function height(node, client) { var win = (0, _isWindow.default)(node); return win ? win.innerHeight : client ? node.clientHeight : (0, _offset.default)(node).height; } module.exports = exports["default"];cjs/ownerWindow.d.ts000064400000000223151701476720010446 0ustar00/** * Returns the owner window of a given element. * * @param node the element */ export default function ownerWindow(node?: Element): Window; cjs/transitionEnd.js000064400000002534151701476720010520 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = transitionEnd; var _css = _interopRequireDefault(require("./css")); var _listen = _interopRequireDefault(require("./listen")); var _triggerEvent = _interopRequireDefault(require("./triggerEvent")); function parseDuration(node) { var str = (0, _css.default)(node, 'transitionDuration') || ''; var mult = str.indexOf('ms') === -1 ? 1000 : 1; return parseFloat(str) * mult; } function emulateTransitionEnd(element, duration, padding) { if (padding === void 0) { padding = 5; } var called = false; var handle = setTimeout(function () { if (!called) (0, _triggerEvent.default)(element, 'transitionend', true); }, duration + padding); var remove = (0, _listen.default)(element, 'transitionend', function () { called = true; }, { once: true }); return function () { clearTimeout(handle); remove(); }; } function transitionEnd(element, handler, duration, padding) { if (duration == null) duration = parseDuration(element) || 0; var removeEmulate = emulateTransitionEnd(element, duration, padding); var remove = (0, _listen.default)(element, 'transitionend', handler); return function () { removeEmulate(); remove(); }; } module.exports = exports["default"];cjs/collectElements.js000064400000000602151701476720011013 0ustar00"use strict"; exports.__esModule = true; exports.default = collectElements; function collectElements(node, direction) { var nextNode = null; var nodes = []; nextNode = node ? node[direction] : null; while (nextNode && nextNode.nodeType !== 9) { nodes.push(nextNode); nextNode = nextNode[direction] || null; } return nodes; } module.exports = exports["default"];cjs/parents.d.ts000064400000000234151701476720007602 0ustar00/** * Collects all parent elements of a given element. * * @param node the element */ export default function parents(node: Element | null): Element[]; cjs/addEventListener.d.ts000064400000001400151701476720011362 0ustar00export declare let optionsSupported: boolean; export declare let onceSupported: boolean; export declare type EventHandler<K extends keyof HTMLElementEventMap> = (this: HTMLElement, event: HTMLElementEventMap[K]) => any; export declare type TaggedEventHandler<K extends keyof HTMLElementEventMap> = EventHandler<K> & { __once?: EventHandler<K>; }; /** * An `addEventListener` ponyfill, supports the `once` option * * @param node the element * @param eventName the event name * @param handle the handler * @param options event options */ declare function addEventListener<K extends keyof HTMLElementEventMap>(node: HTMLElement, eventName: K, handler: TaggedEventHandler<K>, options?: boolean | AddEventListenerOptions): void; export default addEventListener; cjs/prepend.js000064400000000766151701476720007341 0ustar00"use strict"; exports.__esModule = true; exports.default = prepend; /** * Insert a given element as the first child of a parent element. * * @param node the element to prepend * @param parent the parent element */ function prepend(node, parent) { if (node && parent) { if (parent.firstElementChild) { parent.insertBefore(node, parent.firstElementChild); } else { parent.appendChild(node); } return node; } return null; } module.exports = exports["default"];cjs/scrollbarSize.d.ts000064400000000101151701476720010735 0ustar00export default function scrollbarSize(recalc?: boolean): number; cjs/hasClass.d.ts000064400000000333151701476720007667 0ustar00/** * Checks if a given element has a CSS class. * * @param element the element * @param className the CSS class name */ export default function hasClass(element: Element | SVGElement, className: string): boolean; cjs/isInput.d.ts000064400000000275151701476720007566 0ustar00/** * Checks if a given element is an input (input, select, textarea or button). * * @param node the element to check */ export default function isInput(node: Element | null): boolean; cjs/attribute.d.ts000064400000000445151701476720010135 0ustar00/** * Gets or sets an attribute of a given element. * * @param node the element * @param attr the attribute to get or set * @param val the attribute value */ export default function attribute(node: Element | null, attr: string, val?: string | boolean | null): string | null | undefined; cjs/nextUntil.js000064400000001044151701476720007664 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = nextUntil; var _collectSiblings = _interopRequireDefault(require("./collectSiblings")); /** * Collects all next sibling elements of an element until a given selector is matched. * * @param node the referene node * @param selector the selector to match */ function nextUntil(node, selector) { return (0, _collectSiblings.default)(node, node, selector); } module.exports = exports["default"];cjs/filterEventHandler.d.ts000064400000000273151701476720011716 0ustar00import { EventHandler } from './addEventListener'; export default function filterEvents<K extends keyof HTMLElementEventMap>(selector: string, handler: EventHandler<K>): EventHandler<K>; cjs/triggerEvent.d.ts000064400000000620151701476720010572 0ustar00/** * Triggers an event on a given element. * * @param node the element * @param eventName the event name to trigger * @param bubbles whether the event should bubble up * @param cancelable whether the event should be cancelable */ export default function triggerEvent<K extends keyof HTMLElementEventMap>(node: HTMLElement | null, eventName: K, bubbles?: boolean, cancelable?: boolean): void; cjs/scrollbarSize.js000064400000001454151701476720010515 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = scrollbarSize; var _canUseDOM = _interopRequireDefault(require("./canUseDOM")); var size; function scrollbarSize(recalc) { if (!size && size !== 0 || recalc) { if (_canUseDOM.default) { var scrollDiv = document.createElement('div'); scrollDiv.style.position = 'absolute'; scrollDiv.style.top = '-9999px'; scrollDiv.style.width = '50px'; scrollDiv.style.height = '50px'; scrollDiv.style.overflow = 'scroll'; document.body.appendChild(scrollDiv); size = scrollDiv.offsetWidth - scrollDiv.clientWidth; document.body.removeChild(scrollDiv); } } return size; } module.exports = exports["default"];cjs/remove.d.ts000064400000000223151701476720007421 0ustar00/** * Removes a given node from the DOM. * * @param node the node to remove */ export default function remove(node: Node | null): Node | null; cjs/parents.js000064400000000705151701476720007351 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = parents; var _collectElements = _interopRequireDefault(require("./collectElements")); /** * Collects all parent elements of a given element. * * @param node the element */ function parents(node) { return (0, _collectElements.default)(node, 'parentElement'); } module.exports = exports["default"];cjs/isInput.js000064400000000570151701476720007330 0ustar00"use strict"; exports.__esModule = true; exports.default = isInput; var regExpInputs = /^(?:input|select|textarea|button)$/i; /** * Checks if a given element is an input (input, select, textarea or button). * * @param node the element to check */ function isInput(node) { return node ? regExpInputs.test(node.nodeName) : false; } module.exports = exports["default"];cjs/insertAfter.js000064400000001017151701476720010160 0ustar00"use strict"; exports.__esModule = true; exports.default = insertAfter; /** * Inserts a node after a given reference node. * * @param node the node to insert * @param refNode the reference node */ function insertAfter(node, refNode) { if (node && refNode && refNode.parentNode) { if (refNode.nextSibling) { refNode.parentNode.insertBefore(node, refNode.nextSibling); } else { refNode.parentNode.appendChild(node); } return node; } return null; } module.exports = exports["default"];cjs/isVisible.d.ts000064400000000250151701476720010055 0ustar00/** * Checks if a given element is currently visible. * * @param node the element to check */ export default function isVisible(node: HTMLElement | null): boolean; cjs/hyphenateStyle.d.ts000064400000000454151701476720011140 0ustar00/** * Copyright 2013-2014, Facebook, Inc. * All rights reserved. * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js */ import { Property } from './types'; export default function hyphenateStyleName(string: Property): Property; cjs/canUseDOM.js000064400000000354151701476720007453 0ustar00"use strict"; exports.__esModule = true; exports.default = void 0; var _default = !!(typeof window !== 'undefined' && window.document && window.document.createElement); exports.default = _default; module.exports = exports["default"];cjs/siblings.d.ts000064400000000260151701476720007737 0ustar00/** * Collects all previous and next sibling elements of a given element. * * @param node the element */ export default function siblings(node: Element | null): Element[]; cjs/offset.d.ts000064400000000406151701476720007415 0ustar00/** * Returns the offset of a given element, including top and left positions, width and height. * * @param node the element */ export default function offset(node: HTMLElement): { top: number; left: number; height: number; width: number; }; cjs/querySelectorAll.d.ts000064400000000327151701476720011430 0ustar00/** * Runs `querySelectorAll` on a given element. * * @param element the element * @param selector the selector */ export default function qsa(element: HTMLElement | Document, selector: string): HTMLElement[]; cjs/position.js000064400000004050151701476720007536 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = position; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _css = _interopRequireDefault(require("./css")); var _offset = _interopRequireDefault(require("./offset")); var _offsetParent = _interopRequireDefault(require("./offsetParent")); var _scrollLeft = _interopRequireDefault(require("./scrollLeft")); var _scrollTop = _interopRequireDefault(require("./scrollTop")); var nodeName = function nodeName(node) { return node.nodeName && node.nodeName.toLowerCase(); }; /** * Returns the relative position of a given element. * * @param node the element * @param offsetParent the offset parent */ function position(node, offsetParent) { var parentOffset = { top: 0, left: 0 }; var offset; // Fixed elements are offset from window (parentOffset = {top:0, left: 0}, // because it is its only offset parent if ((0, _css.default)(node, 'position') === 'fixed') { offset = node.getBoundingClientRect(); } else { var parent = offsetParent || (0, _offsetParent.default)(node); offset = (0, _offset.default)(node); if (nodeName(parent) !== 'html') parentOffset = (0, _offset.default)(parent); var borderTop = String((0, _css.default)(parent, 'borderTopWidth') || 0); parentOffset.top += parseInt(borderTop, 10) - (0, _scrollTop.default)(parent) || 0; var borderLeft = String((0, _css.default)(parent, 'borderLeftWidth') || 0); parentOffset.left += parseInt(borderLeft, 10) - (0, _scrollLeft.default)(parent) || 0; } var marginTop = String((0, _css.default)(node, 'marginTop') || 0); var marginLeft = String((0, _css.default)(node, 'marginLeft') || 0); // Subtract parent offsets and node margins return (0, _extends2.default)({}, offset, { top: offset.top - parentOffset.top - (parseInt(marginTop, 10) || 0), left: offset.left - parentOffset.left - (parseInt(marginLeft, 10) || 0) }); } module.exports = exports["default"];cjs/animationFrame.d.ts000064400000000157151701476720011064 0ustar00export declare const cancel: (id: number) => void; export declare const request: typeof requestAnimationFrame; cjs/childElements.d.ts000064400000000234151701476720010706 0ustar00/** * Collects all child elements of an element. * * @param node the element */ export default function childElements(node: Element | null): Element[]; cjs/removeClass.d.ts000064400000000332151701476730010411 0ustar00/** * Removes a CSS class from a given element. * * @param element the element * @param className the CSS class name */ export default function removeClass(element: Element | SVGElement, className: string): void; cjs/ownerDocument.d.ts000064400000000231151701476730010755 0ustar00/** * Returns the owner document of a given element. * * @param node the element */ export default function ownerDocument(node?: Element): Document; cjs/transitionEnd.d.ts000064400000000330151701476730010745 0ustar00export declare type Listener = (this: HTMLElement, ev: TransitionEvent) => any; export default function transitionEnd(element: HTMLElement, handler: Listener, duration?: number | null, padding?: number): () => void; cjs/clear.d.ts000064400000000231151701476730007212 0ustar00/** * Removes all child nodes from a given node. * * @param node the node to clear */ export default function clear(node: Node | null): Node | null; cjs/text.d.ts000064400000000534151701476730007116 0ustar00/** * Collects the text content of a given element. * * @param node the element * @param trim whether to remove trailing whitespace chars * @param singleSpaces whether to convert multiple whitespace chars into a single space character */ export default function text(node: HTMLElement | null, trim?: boolean, singleSpaces?: boolean): string; cjs/width.js000064400000001165151701476730007016 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = getWidth; var _isWindow = _interopRequireDefault(require("./isWindow")); var _offset = _interopRequireDefault(require("./offset")); /** * Returns the width of a given element. * * @param node the element * @param client whether to use `clientWidth` if possible */ function getWidth(node, client) { var win = (0, _isWindow.default)(node); return win ? win.innerWidth : client ? node.clientWidth : (0, _offset.default)(node).width; } module.exports = exports["default"];cjs/isDocument.js000064400000000336151701476730010010 0ustar00"use strict"; exports.__esModule = true; exports.default = isDocument; function isDocument(element) { return 'nodeType' in element && element.nodeType === document.DOCUMENT_NODE; } module.exports = exports["default"];cjs/remove.js000064400000000505151701476730007171 0ustar00"use strict"; exports.__esModule = true; exports.default = remove; /** * Removes a given node from the DOM. * * @param node the node to remove */ function remove(node) { if (node && node.parentNode) { node.parentNode.removeChild(node); return node; } return null; } module.exports = exports["default"];cjs/closest.js000064400000001465151701476730007356 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = closest; var _matches = _interopRequireDefault(require("./matches")); /** * Returns the closest parent element that matches a given selector. * * @param node the reference element * @param selector the selector to match * @param stopAt stop traversing when this element is found */ function closest(node, selector, stopAt) { if (node.closest && !stopAt) node.closest(selector); var nextNode = node; do { if ((0, _matches.default)(nextNode, selector)) return nextNode; nextNode = nextNode.parentElement; } while (nextNode && nextNode !== stopAt && nextNode.nodeType === document.ELEMENT_NODE); return null; } module.exports = exports["default"];cjs/triggerEvent.js000064400000001252151701476730010341 0ustar00"use strict"; exports.__esModule = true; exports.default = triggerEvent; /** * Triggers an event on a given element. * * @param node the element * @param eventName the event name to trigger * @param bubbles whether the event should bubble up * @param cancelable whether the event should be cancelable */ function triggerEvent(node, eventName, bubbles, cancelable) { if (bubbles === void 0) { bubbles = false; } if (cancelable === void 0) { cancelable = true; } if (node) { var event = document.createEvent('HTMLEvents'); event.initEvent(eventName, bubbles, cancelable); node.dispatchEvent(event); } } module.exports = exports["default"];cjs/addClass.d.ts000064400000000322151701476730007643 0ustar00/** * Adds a CSS class to a given element. * * @param element the element * @param className the CSS class name */ export default function addClass(element: Element | SVGElement, className: string): void; cjs/camelizeStyle.js000064400000001117151701476730010506 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = camelizeStyleName; var _camelize = _interopRequireDefault(require("./camelize")); /** * Copyright 2014-2015, Facebook, Inc. * All rights reserved. * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/camelizeStyleName.js */ var msPattern = /^-ms-/; function camelizeStyleName(string) { return (0, _camelize.default)(string.replace(msPattern, 'ms-')); } module.exports = exports["default"];cjs/offsetParent.js000064400000001337151701476730010340 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = offsetParent; var _css = _interopRequireDefault(require("./css")); var _ownerDocument = _interopRequireDefault(require("./ownerDocument")); var isHTMLElement = function isHTMLElement(e) { return !!e && 'offsetParent' in e; }; function offsetParent(node) { var doc = (0, _ownerDocument.default)(node); var parent = node && node.offsetParent; while (isHTMLElement(parent) && parent.nodeName !== 'HTML' && (0, _css.default)(parent, 'position') === 'static') { parent = parent.offsetParent; } return parent || doc.documentElement; } module.exports = exports["default"];cjs/index.js000064400000014764151701476730007017 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _activeElement = _interopRequireDefault(require("./activeElement")); exports.activeElement = _activeElement.default; var _addClass = _interopRequireDefault(require("./addClass")); exports.addClass = _addClass.default; var _addEventListener = _interopRequireDefault(require("./addEventListener")); exports.addEventListener = _addEventListener.default; var _animate = _interopRequireDefault(require("./animate")); exports.animate = _animate.default; var _animationFrame = require("./animationFrame"); exports.cancelAnimationFrame = _animationFrame.cancel; exports.requestAnimationFrame = _animationFrame.request; var _attribute = _interopRequireDefault(require("./attribute")); exports.attribute = _attribute.default; var _childElements = _interopRequireDefault(require("./childElements")); exports.childElements = _childElements.default; var _clear = _interopRequireDefault(require("./clear")); exports.clear = _clear.default; var _closest = _interopRequireDefault(require("./closest")); exports.closest = _closest.default; var _contains = _interopRequireDefault(require("./contains")); exports.contains = _contains.default; var _childNodes = _interopRequireDefault(require("./childNodes")); exports.childNodes = _childNodes.default; var _css = _interopRequireDefault(require("./css")); exports.style = _css.default; var _filterEventHandler = _interopRequireDefault(require("./filterEventHandler")); exports.filter = _filterEventHandler.default; var _getComputedStyle = _interopRequireDefault(require("./getComputedStyle")); exports.getComputedStyle = _getComputedStyle.default; var _hasClass = _interopRequireDefault(require("./hasClass")); exports.hasClass = _hasClass.default; var _height = _interopRequireDefault(require("./height")); exports.height = _height.default; var _insertAfter = _interopRequireDefault(require("./insertAfter")); exports.insertAfter = _insertAfter.default; var _isInput = _interopRequireDefault(require("./isInput")); exports.isInput = _isInput.default; var _isVisible = _interopRequireDefault(require("./isVisible")); exports.isVisible = _isVisible.default; var _listen = _interopRequireDefault(require("./listen")); exports.listen = _listen.default; var _matches = _interopRequireDefault(require("./matches")); exports.matches = _matches.default; var _nextUntil = _interopRequireDefault(require("./nextUntil")); exports.nextUntil = _nextUntil.default; var _offset = _interopRequireDefault(require("./offset")); exports.offset = _offset.default; var _offsetParent = _interopRequireDefault(require("./offsetParent")); exports.offsetParent = _offsetParent.default; var _ownerDocument = _interopRequireDefault(require("./ownerDocument")); exports.ownerDocument = _ownerDocument.default; var _ownerWindow = _interopRequireDefault(require("./ownerWindow")); exports.ownerWindow = _ownerWindow.default; var _parents = _interopRequireDefault(require("./parents")); exports.parents = _parents.default; var _position = _interopRequireDefault(require("./position")); exports.position = _position.default; var _prepend = _interopRequireDefault(require("./prepend")); exports.prepend = _prepend.default; var _querySelectorAll = _interopRequireDefault(require("./querySelectorAll")); exports.querySelectorAll = _querySelectorAll.default; var _remove = _interopRequireDefault(require("./remove")); exports.remove = _remove.default; var _removeClass = _interopRequireDefault(require("./removeClass")); exports.removeClass = _removeClass.default; var _removeEventListener = _interopRequireDefault(require("./removeEventListener")); exports.removeEventListener = _removeEventListener.default; var _scrollbarSize = _interopRequireDefault(require("./scrollbarSize")); exports.scrollbarSize = _scrollbarSize.default; var _scrollLeft = _interopRequireDefault(require("./scrollLeft")); exports.scrollLeft = _scrollLeft.default; var _scrollParent = _interopRequireDefault(require("./scrollParent")); exports.scrollParent = _scrollParent.default; var _scrollTo = _interopRequireDefault(require("./scrollTo")); exports.scrollTo = _scrollTo.default; var _scrollTop = _interopRequireDefault(require("./scrollTop")); exports.scrollTop = _scrollTop.default; var _siblings = _interopRequireDefault(require("./siblings")); exports.siblings = _siblings.default; var _text = _interopRequireDefault(require("./text")); exports.text = _text.default; var _toggleClass = _interopRequireDefault(require("./toggleClass")); exports.toggleClass = _toggleClass.default; var _transitionEnd = _interopRequireDefault(require("./transitionEnd")); exports.transitionEnd = _transitionEnd.default; var _triggerEvent = _interopRequireDefault(require("./triggerEvent")); exports.triggerEvent = _triggerEvent.default; var _width = _interopRequireDefault(require("./width")); exports.width = _width.default; var _default = { addEventListener: _addEventListener.default, removeEventListener: _removeEventListener.default, triggerEvent: _triggerEvent.default, animate: _animate.default, filter: _filterEventHandler.default, listen: _listen.default, style: _css.default, getComputedStyle: _getComputedStyle.default, attribute: _attribute.default, activeElement: _activeElement.default, ownerDocument: _ownerDocument.default, ownerWindow: _ownerWindow.default, requestAnimationFrame: _animationFrame.request, cancelAnimationFrame: _animationFrame.cancel, matches: _matches.default, height: _height.default, width: _width.default, offset: _offset.default, offsetParent: _offsetParent.default, position: _position.default, contains: _contains.default, scrollbarSize: _scrollbarSize.default, scrollLeft: _scrollLeft.default, scrollParent: _scrollParent.default, scrollTo: _scrollTo.default, scrollTop: _scrollTop.default, querySelectorAll: _querySelectorAll.default, closest: _closest.default, addClass: _addClass.default, removeClass: _removeClass.default, hasClass: _hasClass.default, toggleClass: _toggleClass.default, transitionEnd: _transitionEnd.default, childNodes: _childNodes.default, childElements: _childElements.default, nextUntil: _nextUntil.default, parents: _parents.default, siblings: _siblings.default, clear: _clear.default, insertAfter: _insertAfter.default, isInput: _isInput.default, isVisible: _isVisible.default, prepend: _prepend.default, remove: _remove.default, text: _text.default }; exports.default = _default;cjs/toggleClass.js000064400000001406151701476730010144 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = toggleClass; var _addClass = _interopRequireDefault(require("./addClass")); var _hasClass = _interopRequireDefault(require("./hasClass")); var _removeClass = _interopRequireDefault(require("./removeClass")); /** * Toggles a CSS class on a given element. * * @param element the element * @param className the CSS class name */ function toggleClass(element, className) { if (element.classList) element.classList.toggle(className);else if ((0, _hasClass.default)(element, className)) (0, _removeClass.default)(element, className);else (0, _addClass.default)(element, className); } module.exports = exports["default"];cjs/childNodes.js000064400000000531151701476730007747 0ustar00"use strict"; exports.__esModule = true; exports.default = childNodes; var toArray = Function.prototype.bind.call(Function.prototype.call, [].slice); /** * Collects all child nodes of an element. * * @param node the node */ function childNodes(node) { return node ? toArray(node.childNodes) : []; } module.exports = exports["default"];cjs/siblings.js000064400000001023151701476730007502 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = siblings; var _collectSiblings = _interopRequireDefault(require("./collectSiblings")); /** * Collects all previous and next sibling elements of a given element. * * @param node the element */ function siblings(node) { return (0, _collectSiblings.default)(node && node.parentElement ? node.parentElement.firstElementChild : null, node); } module.exports = exports["default"];cjs/canUseDOM.d.ts000064400000000072151701476730007705 0ustar00declare const _default: boolean; export default _default; cjs/css.js000064400000002331151701476730006463 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _getComputedStyle = _interopRequireDefault(require("./getComputedStyle")); var _hyphenateStyle = _interopRequireDefault(require("./hyphenateStyle")); var _isTransform = _interopRequireDefault(require("./isTransform")); function style(node, property) { var css = ''; var transforms = ''; if (typeof property === 'string') { return node.style.getPropertyValue((0, _hyphenateStyle.default)(property)) || (0, _getComputedStyle.default)(node).getPropertyValue((0, _hyphenateStyle.default)(property)); } Object.keys(property).forEach(function (key) { var value = property[key]; if (!value && value !== 0) { node.style.removeProperty((0, _hyphenateStyle.default)(key)); } else if ((0, _isTransform.default)(key)) { transforms += key + "(" + value + ") "; } else { css += (0, _hyphenateStyle.default)(key) + ": " + value + ";"; } }); if (transforms) { css += "transform: " + transforms + ";"; } node.style.cssText += ";" + css; } var _default = style; exports.default = _default; module.exports = exports["default"];cjs/collectSiblings.d.ts000064400000000176151701476730011254 0ustar00export default function collectSiblings(node: Element | null, refNode?: Element | null, selector?: string | null): Element[]; cjs/hasClass.js000064400000000732151701476730007437 0ustar00"use strict"; exports.__esModule = true; exports.default = hasClass; /** * Checks if a given element has a CSS class. * * @param element the element * @param className the CSS class name */ function hasClass(element, className) { if (element.classList) return !!className && element.classList.contains(className); return (" " + (element.className.baseVal || element.className) + " ").indexOf(" " + className + " ") !== -1; } module.exports = exports["default"];cjs/listen.js000064400000001174151701476730007175 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _addEventListener = _interopRequireDefault(require("./addEventListener")); var _removeEventListener = _interopRequireDefault(require("./removeEventListener")); function listen(node, eventName, handler, options) { (0, _addEventListener.default)(node, eventName, handler, options); return function () { (0, _removeEventListener.default)(node, eventName, handler, options); }; } var _default = listen; exports.default = _default; module.exports = exports["default"];cjs/camelize.d.ts000064400000000072151701476730007720 0ustar00export default function camelize(string: string): string; cjs/getScrollAccessor.d.ts000064400000000241151701476730011546 0ustar00export default function getscrollAccessor(offset: 'pageXOffset' | 'pageYOffset'): { (node: Element): number; (node: Element, val: number): undefined; }; cjs/scrollTop.d.ts000064400000000404151701476730010107 0ustar00declare const _default: { (node: Element): number; (node: Element, val: number): undefined; }; /** * Gets or sets the scroll top position of a given element. * * @param node the element * @param val the position to set */ export default _default; cjs/activeElement.d.ts000064400000000246151701476730010717 0ustar00/** * Returns the actively focused element safely. * * @param doc the document to check */ export default function activeElement(doc?: Document): Element | null; cjs/clear.js000064400000000536151701476730006766 0ustar00"use strict"; exports.__esModule = true; exports.default = clear; /** * Removes all child nodes from a given node. * * @param node the node to clear */ function clear(node) { if (node) { while (node.firstChild) { node.removeChild(node.firstChild); } return node; } return null; } module.exports = exports["default"];cjs/childElements.js000064400000000427151701476730010457 0ustar00"use strict"; exports.__esModule = true; exports.default = childElements; /** * Collects all child elements of an element. * * @param node the element */ function childElements(node) { return node ? Array.from(node.children) : []; } module.exports = exports["default"];cjs/isTransform.d.ts000064400000000564151701476730010444 0ustar00export declare type TransformValue = 'translate' | 'translateY' | 'translateX' | 'translateZ' | 'translate3d' | 'rotate' | 'rotateY' | 'rotateX' | 'rotateZ' | 'rotate3d' | 'scale' | 'scaleY' | 'scaleX' | 'scaleZ' | 'scale3d' | 'matrix' | 'matrix3d' | 'perspective' | 'skew' | 'skewY' | 'skewX'; export default function isTransform(value: string): value is TransformValue; cjs/nextUntil.d.ts000064400000000402151701476730010116 0ustar00/** * Collects all next sibling elements of an element until a given selector is matched. * * @param node the referene node * @param selector the selector to match */ export default function nextUntil(node: Element | null, selector: string): Element[]; cjs/scrollParent.d.ts000064400000000461151701476730010601 0ustar00/** * Find the first scrollable parent of an element. * * @param element Starting element * @param firstPossible Stop at the first scrollable parent, even if it's not currently scrollable */ export default function scrollParent(element: HTMLElement, firstPossible?: boolean): Document | HTMLElement; cjs/childNodes.d.ts000064400000000220151701476730010176 0ustar00/** * Collects all child nodes of an element. * * @param node the node */ export default function childNodes(node: Element | null): Node[]; cjs/getScrollAccessor.js000064400000001233151701476730011314 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = getscrollAccessor; var _isWindow = _interopRequireDefault(require("./isWindow")); function getscrollAccessor(offset) { var prop = offset === 'pageXOffset' ? 'scrollLeft' : 'scrollTop'; function scrollAccessor(node, val) { var win = (0, _isWindow.default)(node); if (val === undefined) { return win ? win[offset] : node[prop]; } if (win) { win.scrollTo(win[offset], val); } else { node[prop] = val; } } return scrollAccessor; } module.exports = exports["default"];cjs/hyphenate.d.ts000064400000000073151701476730010115 0ustar00export default function hyphenate(string: string): string; cjs/animate.d.ts000064400000001606151701476730007551 0ustar00import { EventHandler } from './addEventListener'; import { TransformValue } from './isTransform'; import { Property } from './types'; declare type AnimateProperties = Record<Property | TransformValue, string>; interface Options { node: HTMLElement; properties: AnimateProperties; duration?: number; easing?: string; callback?: EventHandler<'transitionend'>; } interface Cancel { cancel(): void; } declare function animate(options: Options): Cancel; declare function animate(node: HTMLElement, properties: AnimateProperties, duration: number): Cancel; declare function animate(node: HTMLElement, properties: AnimateProperties, duration: number, callback: EventHandler<'transitionend'>): Cancel; declare function animate(node: HTMLElement, properties: AnimateProperties, duration: number, easing: string, callback: EventHandler<'transitionend'>): Cancel; export default animate; cjs/getComputedStyle.d.ts000064400000000372151701476730011433 0ustar00/** * Returns one or all computed style properties of an element. * * @param node the element * @param psuedoElement the style property */ export default function getComputedStyle(node: HTMLElement, psuedoElement?: string): CSSStyleDeclaration; cjs/isVisible.js000064400000000520151701476730007622 0ustar00"use strict"; exports.__esModule = true; exports.default = isVisible; /** * Checks if a given element is currently visible. * * @param node the element to check */ function isVisible(node) { return node ? !!(node.offsetWidth || node.offsetHeight || node.getClientRects().length) : false; } module.exports = exports["default"];cjs/contains.js000064400000001176151701476730007517 0ustar00"use strict"; exports.__esModule = true; exports.default = contains; /* eslint-disable no-bitwise, no-cond-assign */ /** * Checks if an element contains another given element. * * @param context the context element * @param node the element to check */ function contains(context, node) { // HTML DOM and SVG DOM may have different support levels, // so we need to check on context instead of a document root element. if (context.contains) return context.contains(node); if (context.compareDocumentPosition) return context === node || !!(context.compareDocumentPosition(node) & 16); } module.exports = exports["default"];cjs/isTransform.js000064400000000457151701476730010211 0ustar00"use strict"; exports.__esModule = true; exports.default = isTransform; var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i; function isTransform(value) { return !!(value && supportedTransforms.test(value)); } module.exports = exports["default"];cjs/addClass.js000064400000001347151701476730007417 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = addClass; var _hasClass = _interopRequireDefault(require("./hasClass")); /** * Adds a CSS class to a given element. * * @param element the element * @param className the CSS class name */ function addClass(element, className) { if (element.classList) element.classList.add(className);else if (!(0, _hasClass.default)(element, className)) if (typeof element.className === 'string') element.className = element.className + " " + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + " " + className); } module.exports = exports["default"];cjs/index.d.ts000064400000007742151701476730007251 0ustar00import activeElement from './activeElement'; import addClass from './addClass'; import addEventListener from './addEventListener'; import animate from './animate'; import { cancel as cancelAnimationFrame, request as requestAnimationFrame } from './animationFrame'; import attribute from './attribute'; import childElements from './childElements'; import clear from './clear'; import closest from './closest'; import contains from './contains'; import childNodes from './childNodes'; import style from './css'; import filter from './filterEventHandler'; import getComputedStyle from './getComputedStyle'; import hasClass from './hasClass'; import height from './height'; import insertAfter from './insertAfter'; import isInput from './isInput'; import isVisible from './isVisible'; import listen from './listen'; import matches from './matches'; import nextUntil from './nextUntil'; import offset from './offset'; import offsetParent from './offsetParent'; import ownerDocument from './ownerDocument'; import ownerWindow from './ownerWindow'; import parents from './parents'; import position from './position'; import prepend from './prepend'; import querySelectorAll from './querySelectorAll'; import remove from './remove'; import removeClass from './removeClass'; import removeEventListener from './removeEventListener'; import scrollbarSize from './scrollbarSize'; import scrollLeft from './scrollLeft'; import scrollParent from './scrollParent'; import scrollTo from './scrollTo'; import scrollTop from './scrollTop'; import siblings from './siblings'; import text from './text'; import toggleClass from './toggleClass'; import transitionEnd from './transitionEnd'; import triggerEvent from './triggerEvent'; import width from './width'; export { addEventListener, removeEventListener, triggerEvent, animate, filter, listen, style, getComputedStyle, attribute, activeElement, ownerDocument, ownerWindow, requestAnimationFrame, cancelAnimationFrame, matches, height, width, offset, offsetParent, position, contains, scrollbarSize, scrollLeft, scrollParent, scrollTo, scrollTop, querySelectorAll, closest, addClass, removeClass, hasClass, toggleClass, transitionEnd, childNodes, childElements, nextUntil, parents, siblings, clear, insertAfter, isInput, isVisible, prepend, remove, text, }; declare const _default: { addEventListener: typeof addEventListener; removeEventListener: typeof removeEventListener; triggerEvent: typeof triggerEvent; animate: typeof animate; filter: typeof filter; listen: typeof listen; style: typeof style; getComputedStyle: typeof getComputedStyle; attribute: typeof attribute; activeElement: typeof activeElement; ownerDocument: typeof ownerDocument; ownerWindow: typeof ownerWindow; requestAnimationFrame: typeof globalThis.requestAnimationFrame; cancelAnimationFrame: (id: number) => void; matches: typeof matches; height: typeof height; width: typeof width; offset: typeof offset; offsetParent: typeof offsetParent; position: typeof position; contains: typeof contains; scrollbarSize: typeof scrollbarSize; scrollLeft: { (node: Element): number; (node: Element, val: number): undefined; }; scrollParent: typeof scrollParent; scrollTo: typeof scrollTo; scrollTop: { (node: Element): number; (node: Element, val: number): undefined; }; querySelectorAll: typeof querySelectorAll; closest: typeof closest; addClass: typeof addClass; removeClass: typeof removeClass; hasClass: typeof hasClass; toggleClass: typeof toggleClass; transitionEnd: typeof transitionEnd; childNodes: typeof childNodes; childElements: typeof childElements; nextUntil: typeof nextUntil; parents: typeof parents; siblings: typeof siblings; clear: typeof clear; insertAfter: typeof insertAfter; isInput: typeof isInput; isVisible: typeof isVisible; prepend: typeof prepend; remove: typeof remove; text: typeof text; }; export default _default; cjs/width.d.ts000064400000000330151701476730007243 0ustar00/** * Returns the width of a given element. * * @param node the element * @param client whether to use `clientWidth` if possible */ export default function getWidth(node: HTMLElement, client?: boolean): number; cjs/matches.js000064400000001143151701476730007317 0ustar00"use strict"; exports.__esModule = true; exports.default = matches; var matchesImpl; /** * Checks if a given element matches a selector. * * @param node the element * @param selector the selector */ function matches(node, selector) { if (!matchesImpl) { var body = document.body; var nativeMatch = body.matches || body.matchesSelector || body.webkitMatchesSelector || body.mozMatchesSelector || body.msMatchesSelector; matchesImpl = function matchesImpl(n, s) { return nativeMatch.call(n, s); }; } return matchesImpl(node, selector); } module.exports = exports["default"];cjs/height.d.ts000064400000000330151701476730007374 0ustar00/** * Returns the height of a given element. * * @param node the element * @param client whether to use `clientHeight` if possible */ export default function height(node: HTMLElement, client?: boolean): number; cjs/prepend.d.ts000064400000000366151701476730007572 0ustar00/** * Insert a given element as the first child of a parent element. * * @param node the element to prepend * @param parent the parent element */ export default function prepend(node: Element | null, parent: Element | null): Element | null; cjs/scrollTo.js000064400000003165151701476730007502 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = scrollTo; var _animationFrame = require("./animationFrame"); var _height = _interopRequireDefault(require("./height")); var _isWindow = _interopRequireDefault(require("./isWindow")); var _offset = _interopRequireDefault(require("./offset")); var _scrollParent = _interopRequireDefault(require("./scrollParent")); var _scrollTop = _interopRequireDefault(require("./scrollTop")); /* eslint-disable no-nested-ternary */ function scrollTo(selected, scrollParent) { var offset = (0, _offset.default)(selected); var poff = { top: 0, left: 0 }; if (!selected) return undefined; var list = scrollParent || (0, _scrollParent.default)(selected); var isWin = (0, _isWindow.default)(list); var listScrollTop = (0, _scrollTop.default)(list); var listHeight = (0, _height.default)(list, true); if (!isWin) poff = (0, _offset.default)(list); offset = { top: offset.top - poff.top, left: offset.left - poff.left, height: offset.height, width: offset.width }; var selectedHeight = offset.height; var selectedTop = offset.top + (isWin ? 0 : listScrollTop); var bottom = selectedTop + selectedHeight; listScrollTop = listScrollTop > selectedTop ? selectedTop : bottom > listScrollTop + listHeight ? bottom - listHeight : listScrollTop; var id = (0, _animationFrame.request)(function () { return (0, _scrollTop.default)(list, listScrollTop); }); return function () { return (0, _animationFrame.cancel)(id); }; } module.exports = exports["default"];cjs/types.d.ts000064400000000351151701476730007273 0ustar00import * as CSS from 'csstype' type Styles = keyof CSSStyleDeclaration export type HyphenProperty = keyof CSS.PropertiesHyphen export type CamelProperty = keyof CSS.Properties export type Property = HyphenProperty | CamelProperty cjs/animationFrame.js000064400000002437151701476730010634 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.request = exports.cancel = void 0; var _canUseDOM = _interopRequireDefault(require("./canUseDOM")); /* https://github.com/component/raf */ var prev = new Date().getTime(); function fallback(fn) { var curr = new Date().getTime(); var ms = Math.max(0, 16 - (curr - prev)); var handle = setTimeout(fn, ms); prev = curr; return handle; } var vendors = ['', 'webkit', 'moz', 'o', 'ms']; var cancelMethod = 'clearTimeout'; var rafImpl = fallback; // eslint-disable-next-line import/no-mutable-exports var getKey = function getKey(vendor, k) { return vendor + (!vendor ? k : k[0].toUpperCase() + k.substr(1)) + "AnimationFrame"; }; if (_canUseDOM.default) { vendors.some(function (vendor) { var rafMethod = getKey(vendor, 'request'); if (rafMethod in window) { cancelMethod = getKey(vendor, 'cancel'); // @ts-ignore rafImpl = function rafImpl(cb) { return window[rafMethod](cb); }; } return !!rafImpl; }); } var cancel = function cancel(id) { // @ts-ignore if (typeof window[cancelMethod] === 'function') window[cancelMethod](id); }; exports.cancel = cancel; var request = rafImpl; exports.request = request;cjs/removeEventListener.d.ts000064400000000703151701476730012135 0ustar00import { TaggedEventHandler } from './addEventListener'; /** * A `removeEventListener` ponyfill * * @param node the element * @param eventName the event name * @param handle the handler * @param options event options */ declare function removeEventListener<K extends keyof HTMLElementEventMap>(node: HTMLElement, eventName: K, handler: TaggedEventHandler<K>, options?: boolean | EventListenerOptions): void; export default removeEventListener; cjs/activeElement.js000064400000001601151701476730010457 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = activeElement; var _ownerDocument = _interopRequireDefault(require("./ownerDocument")); /** * Returns the actively focused element safely. * * @param doc the document to check */ function activeElement(doc) { if (doc === void 0) { doc = (0, _ownerDocument.default)(); } // Support: IE 9 only // IE9 throws an "Unspecified error" accessing document.activeElement from an <iframe> try { var active = doc.activeElement; // IE11 returns a seemingly empty object in some cases when accessing // document.activeElement from an <iframe> if (!active || !active.nodeName) return null; return active; } catch (e) { /* ie throws if no active element */ return doc.body; } } module.exports = exports["default"];cjs/scrollParent.js000064400000002624151701476730010350 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = scrollParent; var _css = _interopRequireDefault(require("./css")); var _height = _interopRequireDefault(require("./height")); var _isDocument = _interopRequireDefault(require("./isDocument")); /* eslint-disable no-cond-assign, no-continue */ /** * Find the first scrollable parent of an element. * * @param element Starting element * @param firstPossible Stop at the first scrollable parent, even if it's not currently scrollable */ function scrollParent(element, firstPossible) { var position = (0, _css.default)(element, 'position'); var excludeStatic = position === 'absolute'; var ownerDoc = element.ownerDocument; if (position === 'fixed') return ownerDoc || document; // @ts-ignore while ((element = element.parentNode) && !(0, _isDocument.default)(element)) { var isStatic = excludeStatic && (0, _css.default)(element, 'position') === 'static'; var style = ((0, _css.default)(element, 'overflow') || '') + ((0, _css.default)(element, 'overflow-y') || '') + (0, _css.default)(element, 'overflow-x'); if (isStatic) continue; if (/(auto|scroll)/.test(style) && (firstPossible || (0, _height.default)(element) < element.scrollHeight)) { return element; } } return ownerDoc || document; } module.exports = exports["default"];cjs/closest.d.ts000064400000000476151701476730007613 0ustar00/** * Returns the closest parent element that matches a given selector. * * @param node the reference element * @param selector the selector to match * @param stopAt stop traversing when this element is found */ export default function closest(node: Element, selector: string, stopAt?: Element): Element | null; cjs/isDocument.d.ts000064400000000137151701476730010243 0ustar00export default function isDocument(element: Element | Document | Window): element is Document; cjs/animate.js000064400000005236151701476730007320 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _css = _interopRequireDefault(require("./css")); var _hyphenate = _interopRequireDefault(require("./hyphenate")); var _isTransform = _interopRequireDefault(require("./isTransform")); var _transitionEnd = _interopRequireDefault(require("./transitionEnd")); var reset = { transition: '', 'transition-duration': '', 'transition-delay': '', 'transition-timing-function': '' }; // super lean animate function for transitions // doesn't support all translations to keep it matching the jquery API /** * code in part from: Zepto 1.1.4 | zeptojs.com/license */ function _animate(_ref) { var node = _ref.node, properties = _ref.properties, _ref$duration = _ref.duration, duration = _ref$duration === void 0 ? 200 : _ref$duration, easing = _ref.easing, callback = _ref.callback; var cssProperties = []; var cssValues = {}; var transforms = ''; Object.keys(properties).forEach(function (key) { var value = properties[key]; if ((0, _isTransform.default)(key)) transforms += key + "(" + value + ") ";else { cssValues[key] = value; cssProperties.push((0, _hyphenate.default)(key)); } }); if (transforms) { cssValues.transform = transforms; cssProperties.push('transform'); } function done(event) { if (event.target !== event.currentTarget) return; (0, _css.default)(node, reset); if (callback) callback.call(this, event); } if (duration > 0) { cssValues.transition = cssProperties.join(', '); cssValues['transition-duration'] = duration / 1000 + "s"; cssValues['transition-delay'] = '0s'; cssValues['transition-timing-function'] = easing || 'linear'; } var removeListener = (0, _transitionEnd.default)(node, done, duration); // eslint-disable-next-line no-unused-expressions node.clientLeft; // trigger page reflow (0, _css.default)(node, cssValues); return { cancel: function cancel() { removeListener(); (0, _css.default)(node, reset); } }; } function animate(nodeOrOptions, properties, duration, easing, callback) { if (!('nodeType' in nodeOrOptions)) { return _animate(nodeOrOptions); } if (!properties) { throw new Error('must include properties to animate'); } if (typeof easing === 'function') { callback = easing; easing = ''; } return _animate({ node: nodeOrOptions, properties: properties, duration: duration, easing: easing, callback: callback }); } var _default = animate; exports.default = _default; module.exports = exports["default"];cjs/insertAfter.d.ts000064400000000335151701476730010417 0ustar00/** * Inserts a node after a given reference node. * * @param node the node to insert * @param refNode the reference node */ export default function insertAfter(node: Node | null, refNode: Node | null): Node | null; cjs/matches.d.ts000064400000000302151701476730007547 0ustar00/** * Checks if a given element matches a selector. * * @param node the element * @param selector the selector */ export default function matches(node: Element, selector: string): boolean; cjs/removeClass.js000064400000001446151701476730010164 0ustar00"use strict"; exports.__esModule = true; exports.default = removeClass; function replaceClassName(origClass, classToRemove) { return origClass.replace(new RegExp("(^|\\s)" + classToRemove + "(?:\\s|$)", 'g'), '$1').replace(/\s+/g, ' ').replace(/^\s*|\s*$/g, ''); } /** * Removes a CSS class from a given element. * * @param element the element * @param className the CSS class name */ function removeClass(element, className) { if (element.classList) { element.classList.remove(className); } else if (typeof element.className === 'string') { element.className = replaceClassName(element.className, className); } else { element.setAttribute('class', replaceClassName(element.className && element.className.baseVal || '', className)); } } module.exports = exports["default"];cjs/camelizeStyle.d.ts000064400000000225151701476730010741 0ustar00import { CamelProperty, Property } from './types'; export default function camelizeStyleName<T extends string = Property>(string: T): CamelProperty; cjs/scrollLeft.js000064400000000764151701476730010014 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _getScrollAccessor = _interopRequireDefault(require("./getScrollAccessor")); /** * Gets or sets the scroll left position of a given element. * * @param node the element * @param val the position to set */ var _default = (0, _getScrollAccessor.default)('pageXOffset'); exports.default = _default; module.exports = exports["default"];cjs/position.d.ts000064400000000444151701476730007776 0ustar00/** * Returns the relative position of a given element. * * @param node the element * @param offsetParent the offset parent */ export default function position(node: HTMLElement, offsetParent?: HTMLElement): { top: number; left: number; height: number; width: number; }; cjs/scrollLeft.d.ts000064400000000405151701476730010240 0ustar00declare const _default: { (node: Element): number; (node: Element, val: number): undefined; }; /** * Gets or sets the scroll left position of a given element. * * @param node the element * @param val the position to set */ export default _default; cjs/ownerDocument.js000064400000000434151701476730010526 0ustar00"use strict"; exports.__esModule = true; exports.default = ownerDocument; /** * Returns the owner document of a given element. * * @param node the element */ function ownerDocument(node) { return node && node.ownerDocument || document; } module.exports = exports["default"];cjs/toggleClass.d.ts000064400000000330151701476730010373 0ustar00/** * Toggles a CSS class on a given element. * * @param element the element * @param className the CSS class name */ export default function toggleClass(element: Element | SVGElement, className: string): void; cjs/getComputedStyle.js000064400000001045151701476730011175 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = getComputedStyle; var _ownerWindow = _interopRequireDefault(require("./ownerWindow")); /** * Returns one or all computed style properties of an element. * * @param node the element * @param psuedoElement the style property */ function getComputedStyle(node, psuedoElement) { return (0, _ownerWindow.default)(node).getComputedStyle(node, psuedoElement); } module.exports = exports["default"];cjs/hyphenateStyle.js000064400000001125151701476730010701 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = hyphenateStyleName; var _hyphenate = _interopRequireDefault(require("./hyphenate")); /** * Copyright 2013-2014, Facebook, Inc. * All rights reserved. * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js */ var msPattern = /^ms-/; function hyphenateStyleName(string) { return (0, _hyphenate.default)(string).replace(msPattern, '-ms-'); } module.exports = exports["default"];cjs/offsetParent.d.ts000064400000000106151701476730010565 0ustar00export default function offsetParent(node: HTMLElement): HTMLElement; cjs/css.d.ts000064400000000646151701476730006726 0ustar00import * as CSS from 'csstype'; import { CamelProperty, HyphenProperty, Property } from './types'; declare function style(node: HTMLElement, property: Partial<Record<Property, string>>): void; declare function style<T extends HyphenProperty>(node: HTMLElement, property: T): CSS.PropertiesHyphen[T]; declare function style<T extends CamelProperty>(node: HTMLElement, property: T): CSS.Properties[T]; export default style; cjs/camelize.js000064400000000372151701476730007467 0ustar00"use strict"; exports.__esModule = true; exports.default = camelize; var rHyphen = /-(.)/g; function camelize(string) { return string.replace(rHyphen, function (_, chr) { return chr.toUpperCase(); }); } module.exports = exports["default"];cjs/collectSiblings.js000064400000001235151701476730011015 0ustar00"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = collectSiblings; var _matches = _interopRequireDefault(require("./matches")); function collectSiblings(node, refNode, selector) { if (refNode === void 0) { refNode = null; } if (selector === void 0) { selector = null; } var siblings = []; for (; node; node = node.nextElementSibling) { if (node !== refNode) { if (selector && (0, _matches.default)(node, selector)) { break; } siblings.push(node); } } return siblings; } module.exports = exports["default"];cjs/listen.d.ts000064400000000374151701476730007432 0ustar00import { EventHandler } from './addEventListener'; declare function listen<K extends keyof HTMLElementEventMap>(node: HTMLElement, eventName: K, handler: EventHandler<K>, options?: boolean | AddEventListenerOptions): () => void; export default listen; closest/package.json000064400000000231151701476730010515 0ustar00{ "name": "dom-helpers/closest", "private": true, "main": "../cjs/closest.js", "module": "../esm/closest.js", "types": "../esm/closest.d.ts" } camelize/package.json000064400000000235151701476730010636 0ustar00{ "name": "dom-helpers/camelize", "private": true, "main": "../cjs/camelize.js", "module": "../esm/camelize.js", "types": "../esm/camelize.d.ts" } animationFrame/package.json000064400000000265151701476730012002 0ustar00{ "name": "dom-helpers/animationFrame", "private": true, "main": "../cjs/animationFrame.js", "module": "../esm/animationFrame.js", "types": "../esm/animationFrame.d.ts" } README.md000064400000007404151701476730006043 0ustar00# dom-helpers tiny modular DOM lib for ie9+ ## Install ```sh npm i -S dom-helpers ``` Mostly just naive wrappers around common DOM API inconsistencies, Cross browser work is minimal and mostly taken from jQuery. This library doesn't do a lot to normalize behavior across browsers, it mostly seeks to provide a common interface, and eliminate the need to write the same damn `if (ie9)` statements in every project. For example `on()` works in all browsers ie9+ but it uses the native event system so actual event oddities will continue to exist. If you need **robust** cross-browser support, use jQuery. If you are just tired of rewriting: ```js if (document.addEventListener) return (node, eventName, handler, capture) => node.addEventListener(eventName, handler, capture || false) else if (document.attachEvent) return (node, eventName, handler) => node.attachEvent('on' + eventName, handler) ``` over and over again, or you need a ok `getComputedStyle` polyfill but don't want to include all of jQuery, use this. dom-helpers does expect certain, polyfillable, es5 features to be present for which you can use `es5-shim` where needed The real advantage to this collection is that any method can be required individually, meaning bundlers like webpack will only include the exact methods you use. This is great for environments where jQuery doesn't make sense, such as `React` where you only occasionally need to do direct DOM manipulation. All methods are exported as a flat namesapce ```js var helpers = require('dom-helpers') var offset = require('dom-helpers/offset') // style is a function require('dom-helpers/css')(node, { width: '40px' }) ``` - dom-helpers - `ownerDocument(element)`: returns the element's document owner - `ownerWindow(element)`: returns the element's document window - `activeElement`: return focused element safely - `querySelectorAll(element, selector)`: optimized qsa, uses `getElementBy{Id|TagName|ClassName}` if it can. - `contains(container, element)` - `height(element, useClientHeight)` - `width(element, useClientWidth)` - `matches(element, selector)` - `offset(element)` -> `{ top: Number, left: Number, height: Number, width: Number}` - `offsetParent(element)`: return the parent node that the element is offset from - `position(element, [offsetParent]`: return "offset" of the node to its offsetParent, optionally you can specify the offset parent if different than the "real" one - `scrollTop(element, [value])` - `scrollLeft(element, [value])` - `scrollParent(element)` - `addClass(element, className)` - `removeClass(element, className)` - `hasClass(element, className)` - `toggleClass(element, className)` - `style(element, propName)` or `style(element, objectOfPropValues)` - `getComputedStyle(element)` -> `getPropertyValue(name)` - `animate(node, properties, duration, easing, callback)` programmatically start css transitions - `transitionEnd(node, handler, [duration], [padding])` listens for transition end, and ensures that the handler if called even if the transition fails to fire its end event. Will attempt to read duration from the element, otherwise one can be provided - `addEventListener(node, eventName, handler, [options])`: - `removeEventListener(node, eventName, handler, [options])`: - `listen(node, eventName, handler, [options])`: wraps `addEventlistener` and returns a function that calls `removeEventListener` for you - `filter(selector, fn)`: returns a function handler that only fires when the target matches or is contained in the selector ex: `on(list, 'click', filter('li > a', handler))` - `requestAnimationFrame(cb)` returns an ID for canceling - `cancelAnimationFrame(id)` - `scrollbarSize([recalc])` returns the scrollbar's width size in pixels - `scrollTo(element, [scrollParent])` isInput/package.json000064400000000231151701476730010474 0ustar00{ "name": "dom-helpers/isInput", "private": true, "main": "../cjs/isInput.js", "module": "../esm/isInput.js", "types": "../esm/isInput.d.ts" } clear/package.json000064400000000221151701476730010126 0ustar00{ "name": "dom-helpers/clear", "private": true, "main": "../cjs/clear.js", "module": "../esm/clear.js", "types": "../esm/clear.d.ts" } offset/package.json000064400000000225151701476730010332 0ustar00{ "name": "dom-helpers/offset", "private": true, "main": "../cjs/offset.js", "module": "../esm/offset.js", "types": "../esm/offset.d.ts" } esm/removeEventListener.js000064400000001000151701476730011675 0ustar00/** * A `removeEventListener` ponyfill * * @param node the element * @param eventName the event name * @param handle the handler * @param options event options */ function removeEventListener(node, eventName, handler, options) { var capture = options && typeof options !== 'boolean' ? options.capture : options; node.removeEventListener(eventName, handler, capture); if (handler.__once) { node.removeEventListener(eventName, handler.__once, capture); } } export default removeEventListener;esm/querySelectorAll.js000064400000000461151701476730011201 0ustar00var toArray = Function.prototype.bind.call(Function.prototype.call, [].slice); /** * Runs `querySelectorAll` on a given element. * * @param element the element * @param selector the selector */ export default function qsa(element, selector) { return toArray(element.querySelectorAll(selector)); }esm/attribute.js000064400000000677151701476730007716 0ustar00/** * Gets or sets an attribute of a given element. * * @param node the element * @param attr the attribute to get or set * @param val the attribute value */ export default function attribute(node, attr, val) { if (node) { if (typeof val === 'undefined') { return node.getAttribute(attr); } if (!val && val !== '') { node.removeAttribute(attr); } else { node.setAttribute(attr, String(val)); } } }esm/addEventListener.js000064400000002574151701476730011151 0ustar00/* eslint-disable no-return-assign */ import canUseDOM from './canUseDOM'; export var optionsSupported = false; export var onceSupported = false; try { var options = { get passive() { return optionsSupported = true; }, get once() { // eslint-disable-next-line no-multi-assign return onceSupported = optionsSupported = true; } }; if (canUseDOM) { window.addEventListener('test', options, options); window.removeEventListener('test', options, true); } } catch (e) { /* */ } /** * An `addEventListener` ponyfill, supports the `once` option * * @param node the element * @param eventName the event name * @param handle the handler * @param options event options */ function addEventListener(node, eventName, handler, options) { if (options && typeof options !== 'boolean' && !onceSupported) { var once = options.once, capture = options.capture; var wrappedHandler = handler; if (!onceSupported && once) { wrappedHandler = handler.__once || function onceHandler(event) { this.removeEventListener(eventName, onceHandler, capture); handler.call(this, event); }; handler.__once = wrappedHandler; } node.addEventListener(eventName, wrappedHandler, optionsSupported ? options : capture); } node.addEventListener(eventName, handler, options); } export default addEventListener;esm/text.js000064400000001506151701476730006667 0ustar00var regExpNbspEntity = / /gi; var regExpNbspHex = /\xA0/g; var regExpSpaces = /\s+([^\s])/gm; /** * Collects the text content of a given element. * * @param node the element * @param trim whether to remove trailing whitespace chars * @param singleSpaces whether to convert multiple whitespace chars into a single space character */ export default function text(node, trim, singleSpaces) { if (trim === void 0) { trim = true; } if (singleSpaces === void 0) { singleSpaces = true; } var elementText = ''; if (node) { elementText = (node.textContent || '').replace(regExpNbspEntity, ' ').replace(regExpNbspHex, ' '); if (trim) { elementText = elementText.trim(); } if (singleSpaces) { elementText = elementText.replace(regExpSpaces, ' $1'); } } return elementText; }esm/isWindow.js000064400000000330151701476730007500 0ustar00import isDocument from './isDocument'; export default function isWindow(node) { if ('window' in node && node.window === node) return node; if (isDocument(node)) return node.defaultView || false; return false; }esm/ownerWindow.js000064400000000376151701476730010231 0ustar00import ownerDocument from './ownerDocument'; /** * Returns the owner window of a given element. * * @param node the element */ export default function ownerWindow(node) { var doc = ownerDocument(node); return doc && doc.defaultView || window; }esm/hyphenate.js000064400000000174151701476730007670 0ustar00var rUpper = /([A-Z])/g; export default function hyphenate(string) { return string.replace(rUpper, '-$1').toLowerCase(); }esm/scrollTop.js000064400000000353151701476730007663 0ustar00import getScrollAccessor from './getScrollAccessor'; /** * Gets or sets the scroll top position of a given element. * * @param node the element * @param val the position to set */ export default getScrollAccessor('pageYOffset');esm/collectElements.d.ts000064400000000327151701476730011261 0ustar00declare type TraverseDirection = 'parentElement' | 'previousElementSibling' | 'nextElementSibling'; export default function collectElements(node: Element | null, direction: TraverseDirection): Element[]; export {}; esm/offset.js000064400000001554151701476730007174 0ustar00import contains from './contains'; import ownerDocument from './ownerDocument'; import scrollLeft from './scrollLeft'; import scrollTop from './scrollTop'; /** * Returns the offset of a given element, including top and left positions, width and height. * * @param node the element */ export default function offset(node) { var doc = ownerDocument(node); var box = { top: 0, left: 0, height: 0, width: 0 }; var docElem = doc && doc.documentElement; // Make sure it's not a disconnected DOM node if (!docElem || !contains(docElem, node)) return box; if (node.getBoundingClientRect !== undefined) box = node.getBoundingClientRect(); box = { top: box.top + scrollTop(docElem) - (docElem.clientTop || 0), left: box.left + scrollLeft(docElem) - (docElem.clientLeft || 0), width: box.width, height: box.height }; return box; }esm/scrollTo.d.ts000064400000000157151701476730007741 0ustar00export default function scrollTo(selected: HTMLElement, scrollParent?: HTMLElement): (() => void) | undefined; esm/contains.d.ts000064400000000345151701476730007755 0ustar00/** * Checks if an element contains another given element. * * @param context the context element * @param node the element to check */ export default function contains(context: Element, node: Element): boolean | undefined; esm/isWindow.d.ts000064400000000125151701476730007736 0ustar00export default function isWindow(node: Element | Document | Window): Window | false; esm/filterEventHandler.js000064400000000573151701476730011473 0ustar00import contains from './contains'; import qsa from './querySelectorAll'; export default function filterEvents(selector, handler) { return function filterHandler(e) { var top = e.currentTarget; var target = e.target; var matches = qsa(top, selector); if (matches.some(function (match) { return contains(match, target); })) handler.call(this, e); }; }esm/height.js000064400000000560151701476730007152 0ustar00import getWindow from './isWindow'; import offset from './offset'; /** * Returns the height of a given element. * * @param node the element * @param client whether to use `clientHeight` if possible */ export default function height(node, client) { var win = getWindow(node); return win ? win.innerHeight : client ? node.clientHeight : offset(node).height; }esm/ownerWindow.d.ts000064400000000223151701476730010454 0ustar00/** * Returns the owner window of a given element. * * @param node the element */ export default function ownerWindow(node?: Element): Window; esm/transitionEnd.js000064400000002024151701476730010520 0ustar00import css from './css'; import listen from './listen'; import triggerEvent from './triggerEvent'; function parseDuration(node) { var str = css(node, 'transitionDuration') || ''; var mult = str.indexOf('ms') === -1 ? 1000 : 1; return parseFloat(str) * mult; } function emulateTransitionEnd(element, duration, padding) { if (padding === void 0) { padding = 5; } var called = false; var handle = setTimeout(function () { if (!called) triggerEvent(element, 'transitionend', true); }, duration + padding); var remove = listen(element, 'transitionend', function () { called = true; }, { once: true }); return function () { clearTimeout(handle); remove(); }; } export default function transitionEnd(element, handler, duration, padding) { if (duration == null) duration = parseDuration(element) || 0; var removeEmulate = emulateTransitionEnd(element, duration, padding); var remove = listen(element, 'transitionend', handler); return function () { removeEmulate(); remove(); }; }esm/collectElements.js000064400000000435151701476730011025 0ustar00export default function collectElements(node, direction) { var nextNode = null; var nodes = []; nextNode = node ? node[direction] : null; while (nextNode && nextNode.nodeType !== 9) { nodes.push(nextNode); nextNode = nextNode[direction] || null; } return nodes; }esm/parents.d.ts000064400000000234151701476730007610 0ustar00/** * Collects all parent elements of a given element. * * @param node the element */ export default function parents(node: Element | null): Element[]; esm/addEventListener.d.ts000064400000001400151701476730011370 0ustar00export declare let optionsSupported: boolean; export declare let onceSupported: boolean; export declare type EventHandler<K extends keyof HTMLElementEventMap> = (this: HTMLElement, event: HTMLElementEventMap[K]) => any; export declare type TaggedEventHandler<K extends keyof HTMLElementEventMap> = EventHandler<K> & { __once?: EventHandler<K>; }; /** * An `addEventListener` ponyfill, supports the `once` option * * @param node the element * @param eventName the event name * @param handle the handler * @param options event options */ declare function addEventListener<K extends keyof HTMLElementEventMap>(node: HTMLElement, eventName: K, handler: TaggedEventHandler<K>, options?: boolean | AddEventListenerOptions): void; export default addEventListener; esm/prepend.js000064400000000631151701476730007336 0ustar00/** * Insert a given element as the first child of a parent element. * * @param node the element to prepend * @param parent the parent element */ export default function prepend(node, parent) { if (node && parent) { if (parent.firstElementChild) { parent.insertBefore(node, parent.firstElementChild); } else { parent.appendChild(node); } return node; } return null; }esm/scrollbarSize.d.ts000064400000000101151701476730010743 0ustar00export default function scrollbarSize(recalc?: boolean): number; esm/hasClass.d.ts000064400000000333151701476730007675 0ustar00/** * Checks if a given element has a CSS class. * * @param element the element * @param className the CSS class name */ export default function hasClass(element: Element | SVGElement, className: string): boolean; esm/isInput.d.ts000064400000000275151701476730007574 0ustar00/** * Checks if a given element is an input (input, select, textarea or button). * * @param node the element to check */ export default function isInput(node: Element | null): boolean; esm/attribute.d.ts000064400000000445151701476730010143 0ustar00/** * Gets or sets an attribute of a given element. * * @param node the element * @param attr the attribute to get or set * @param val the attribute value */ export default function attribute(node: Element | null, attr: string, val?: string | boolean | null): string | null | undefined; esm/nextUntil.js000064400000000504151701476730007672 0ustar00import collectSiblings from './collectSiblings'; /** * Collects all next sibling elements of an element until a given selector is matched. * * @param node the referene node * @param selector the selector to match */ export default function nextUntil(node, selector) { return collectSiblings(node, node, selector); }esm/filterEventHandler.d.ts000064400000000273151701476730011724 0ustar00import { EventHandler } from './addEventListener'; export default function filterEvents<K extends keyof HTMLElementEventMap>(selector: string, handler: EventHandler<K>): EventHandler<K>; esm/triggerEvent.d.ts000064400000000620151701476730010600 0ustar00/** * Triggers an event on a given element. * * @param node the element * @param eventName the event name to trigger * @param bubbles whether the event should bubble up * @param cancelable whether the event should be cancelable */ export default function triggerEvent<K extends keyof HTMLElementEventMap>(node: HTMLElement | null, eventName: K, bubbles?: boolean, cancelable?: boolean): void; esm/scrollbarSize.js000064400000001113151701476730010513 0ustar00import canUseDOM from './canUseDOM'; var size; export default function scrollbarSize(recalc) { if (!size && size !== 0 || recalc) { if (canUseDOM) { var scrollDiv = document.createElement('div'); scrollDiv.style.position = 'absolute'; scrollDiv.style.top = '-9999px'; scrollDiv.style.width = '50px'; scrollDiv.style.height = '50px'; scrollDiv.style.overflow = 'scroll'; document.body.appendChild(scrollDiv); size = scrollDiv.offsetWidth - scrollDiv.clientWidth; document.body.removeChild(scrollDiv); } } return size; }esm/remove.d.ts000064400000000223151701476730007427 0ustar00/** * Removes a given node from the DOM. * * @param node the node to remove */ export default function remove(node: Node | null): Node | null; esm/parents.js000064400000000347151701476730007361 0ustar00import collectElements from './collectElements'; /** * Collects all parent elements of a given element. * * @param node the element */ export default function parents(node) { return collectElements(node, 'parentElement'); }esm/isInput.js000064400000000434151701476730007335 0ustar00var regExpInputs = /^(?:input|select|textarea|button)$/i; /** * Checks if a given element is an input (input, select, textarea or button). * * @param node the element to check */ export default function isInput(node) { return node ? regExpInputs.test(node.nodeName) : false; }esm/insertAfter.js000064400000000656151701476730010176 0ustar00/** * Inserts a node after a given reference node. * * @param node the node to insert * @param refNode the reference node */ export default function insertAfter(node, refNode) { if (node && refNode && refNode.parentNode) { if (refNode.nextSibling) { refNode.parentNode.insertBefore(node, refNode.nextSibling); } else { refNode.parentNode.appendChild(node); } return node; } return null; }esm/isVisible.d.ts000064400000000250151701476730010063 0ustar00/** * Checks if a given element is currently visible. * * @param node the element to check */ export default function isVisible(node: HTMLElement | null): boolean; esm/hyphenateStyle.d.ts000064400000000454151701476730011146 0ustar00/** * Copyright 2013-2014, Facebook, Inc. * All rights reserved. * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js */ import { Property } from './types'; export default function hyphenateStyleName(string: Property): Property; esm/canUseDOM.js000064400000000145151701476730007457 0ustar00export default !!(typeof window !== 'undefined' && window.document && window.document.createElement);esm/siblings.d.ts000064400000000260151701476730007745 0ustar00/** * Collects all previous and next sibling elements of a given element. * * @param node the element */ export default function siblings(node: Element | null): Element[]; esm/offset.d.ts000064400000000406151701476730007423 0ustar00/** * Returns the offset of a given element, including top and left positions, width and height. * * @param node the element */ export default function offset(node: HTMLElement): { top: number; left: number; height: number; width: number; }; esm/querySelectorAll.d.ts000064400000000327151701476730011436 0ustar00/** * Runs `querySelectorAll` on a given element. * * @param element the element * @param selector the selector */ export default function qsa(element: HTMLElement | Document, selector: string): HTMLElement[]; esm/position.js000064400000003077151701476730007554 0ustar00import _extends from "@babel/runtime/helpers/esm/extends"; import css from './css'; import getOffset from './offset'; import getOffsetParent from './offsetParent'; import scrollLeft from './scrollLeft'; import scrollTop from './scrollTop'; var nodeName = function nodeName(node) { return node.nodeName && node.nodeName.toLowerCase(); }; /** * Returns the relative position of a given element. * * @param node the element * @param offsetParent the offset parent */ export default function position(node, offsetParent) { var parentOffset = { top: 0, left: 0 }; var offset; // Fixed elements are offset from window (parentOffset = {top:0, left: 0}, // because it is its only offset parent if (css(node, 'position') === 'fixed') { offset = node.getBoundingClientRect(); } else { var parent = offsetParent || getOffsetParent(node); offset = getOffset(node); if (nodeName(parent) !== 'html') parentOffset = getOffset(parent); var borderTop = String(css(parent, 'borderTopWidth') || 0); parentOffset.top += parseInt(borderTop, 10) - scrollTop(parent) || 0; var borderLeft = String(css(parent, 'borderLeftWidth') || 0); parentOffset.left += parseInt(borderLeft, 10) - scrollLeft(parent) || 0; } var marginTop = String(css(node, 'marginTop') || 0); var marginLeft = String(css(node, 'marginLeft') || 0); // Subtract parent offsets and node margins return _extends({}, offset, { top: offset.top - parentOffset.top - (parseInt(marginTop, 10) || 0), left: offset.left - parentOffset.left - (parseInt(marginLeft, 10) || 0) }); }esm/animationFrame.d.ts000064400000000157151701476730011072 0ustar00export declare const cancel: (id: number) => void; export declare const request: typeof requestAnimationFrame; esm/childElements.d.ts000064400000000234151701476730010714 0ustar00/** * Collects all child elements of an element. * * @param node the element */ export default function childElements(node: Element | null): Element[]; esm/removeClass.d.ts000064400000000332151701476730010416 0ustar00/** * Removes a CSS class from a given element. * * @param element the element * @param className the CSS class name */ export default function removeClass(element: Element | SVGElement, className: string): void; esm/ownerDocument.d.ts000064400000000231151701476730010762 0ustar00/** * Returns the owner document of a given element. * * @param node the element */ export default function ownerDocument(node?: Element): Document; esm/transitionEnd.d.ts000064400000000330151701476730010752 0ustar00export declare type Listener = (this: HTMLElement, ev: TransitionEvent) => any; export default function transitionEnd(element: HTMLElement, handler: Listener, duration?: number | null, padding?: number): () => void; esm/clear.d.ts000064400000000231151701476730007217 0ustar00/** * Removes all child nodes from a given node. * * @param node the node to clear */ export default function clear(node: Node | null): Node | null; esm/text.d.ts000064400000000534151701476730007123 0ustar00/** * Collects the text content of a given element. * * @param node the element * @param trim whether to remove trailing whitespace chars * @param singleSpaces whether to convert multiple whitespace chars into a single space character */ export default function text(node: HTMLElement | null, trim?: boolean, singleSpaces?: boolean): string; esm/width.js000064400000000555151701476730007025 0ustar00import getWindow from './isWindow'; import offset from './offset'; /** * Returns the width of a given element. * * @param node the element * @param client whether to use `clientWidth` if possible */ export default function getWidth(node, client) { var win = getWindow(node); return win ? win.innerWidth : client ? node.clientWidth : offset(node).width; }esm/isDocument.js000064400000000176151701476730010017 0ustar00export default function isDocument(element) { return 'nodeType' in element && element.nodeType === document.DOCUMENT_NODE; }esm/remove.js000064400000000351151701476730007175 0ustar00/** * Removes a given node from the DOM. * * @param node the node to remove */ export default function remove(node) { if (node && node.parentNode) { node.parentNode.removeChild(node); return node; } return null; }esm/closest.js000064400000001127151701476730007356 0ustar00import matches from './matches'; /** * Returns the closest parent element that matches a given selector. * * @param node the reference element * @param selector the selector to match * @param stopAt stop traversing when this element is found */ export default function closest(node, selector, stopAt) { if (node.closest && !stopAt) node.closest(selector); var nextNode = node; do { if (matches(nextNode, selector)) return nextNode; nextNode = nextNode.parentElement; } while (nextNode && nextNode !== stopAt && nextNode.nodeType === document.ELEMENT_NODE); return null; }esm/triggerEvent.js000064400000001110151701476730010337 0ustar00/** * Triggers an event on a given element. * * @param node the element * @param eventName the event name to trigger * @param bubbles whether the event should bubble up * @param cancelable whether the event should be cancelable */ export default function triggerEvent(node, eventName, bubbles, cancelable) { if (bubbles === void 0) { bubbles = false; } if (cancelable === void 0) { cancelable = true; } if (node) { var event = document.createEvent('HTMLEvents'); event.initEvent(eventName, bubbles, cancelable); node.dispatchEvent(event); } }esm/addClass.d.ts000064400000000322151701476730007650 0ustar00/** * Adds a CSS class to a given element. * * @param element the element * @param className the CSS class name */ export default function addClass(element: Element | SVGElement, className: string): void; esm/camelizeStyle.js000064400000000545151701476730010517 0ustar00/** * Copyright 2014-2015, Facebook, Inc. * All rights reserved. * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/camelizeStyleName.js */ import camelize from './camelize'; var msPattern = /^-ms-/; export default function camelizeStyleName(string) { return camelize(string.replace(msPattern, 'ms-')); }esm/offsetParent.js000064400000000721151701476730010341 0ustar00import css from './css'; import ownerDocument from './ownerDocument'; var isHTMLElement = function isHTMLElement(e) { return !!e && 'offsetParent' in e; }; export default function offsetParent(node) { var doc = ownerDocument(node); var parent = node && node.offsetParent; while (isHTMLElement(parent) && parent.nodeName !== 'HTML' && css(parent, 'position') === 'static') { parent = parent.offsetParent; } return parent || doc.documentElement; }esm/index.js000064400000006623151701476730007017 0ustar00import activeElement from './activeElement'; import addClass from './addClass'; import addEventListener from './addEventListener'; import animate from './animate'; import { cancel as cancelAnimationFrame, request as requestAnimationFrame } from './animationFrame'; import attribute from './attribute'; import childElements from './childElements'; import clear from './clear'; import closest from './closest'; import contains from './contains'; import childNodes from './childNodes'; import style from './css'; import filter from './filterEventHandler'; import getComputedStyle from './getComputedStyle'; import hasClass from './hasClass'; import height from './height'; import insertAfter from './insertAfter'; import isInput from './isInput'; import isVisible from './isVisible'; import listen from './listen'; import matches from './matches'; import nextUntil from './nextUntil'; import offset from './offset'; import offsetParent from './offsetParent'; import ownerDocument from './ownerDocument'; import ownerWindow from './ownerWindow'; import parents from './parents'; import position from './position'; import prepend from './prepend'; import querySelectorAll from './querySelectorAll'; import remove from './remove'; import removeClass from './removeClass'; import removeEventListener from './removeEventListener'; import scrollbarSize from './scrollbarSize'; import scrollLeft from './scrollLeft'; import scrollParent from './scrollParent'; import scrollTo from './scrollTo'; import scrollTop from './scrollTop'; import siblings from './siblings'; import text from './text'; import toggleClass from './toggleClass'; import transitionEnd from './transitionEnd'; import triggerEvent from './triggerEvent'; import width from './width'; export { addEventListener, removeEventListener, triggerEvent, animate, filter, listen, style, getComputedStyle, attribute, activeElement, ownerDocument, ownerWindow, requestAnimationFrame, cancelAnimationFrame, matches, height, width, offset, offsetParent, position, contains, scrollbarSize, scrollLeft, scrollParent, scrollTo, scrollTop, querySelectorAll, closest, addClass, removeClass, hasClass, toggleClass, transitionEnd, childNodes, childElements, nextUntil, parents, siblings, clear, insertAfter, isInput, isVisible, prepend, remove, text }; export default { addEventListener: addEventListener, removeEventListener: removeEventListener, triggerEvent: triggerEvent, animate: animate, filter: filter, listen: listen, style: style, getComputedStyle: getComputedStyle, attribute: attribute, activeElement: activeElement, ownerDocument: ownerDocument, ownerWindow: ownerWindow, requestAnimationFrame: requestAnimationFrame, cancelAnimationFrame: cancelAnimationFrame, matches: matches, height: height, width: width, offset: offset, offsetParent: offsetParent, position: position, contains: contains, scrollbarSize: scrollbarSize, scrollLeft: scrollLeft, scrollParent: scrollParent, scrollTo: scrollTo, scrollTop: scrollTop, querySelectorAll: querySelectorAll, closest: closest, addClass: addClass, removeClass: removeClass, hasClass: hasClass, toggleClass: toggleClass, transitionEnd: transitionEnd, childNodes: childNodes, childElements: childElements, nextUntil: nextUntil, parents: parents, siblings: siblings, clear: clear, insertAfter: insertAfter, isInput: isInput, isVisible: isVisible, prepend: prepend, remove: remove, text: text };esm/toggleClass.js000064400000000716151701476730010154 0ustar00import addClass from './addClass'; import hasClass from './hasClass'; import removeClass from './removeClass'; /** * Toggles a CSS class on a given element. * * @param element the element * @param className the CSS class name */ export default function toggleClass(element, className) { if (element.classList) element.classList.toggle(className);else if (hasClass(element, className)) removeClass(element, className);else addClass(element, className); }esm/childNodes.js000064400000000372151701476730007757 0ustar00var toArray = Function.prototype.bind.call(Function.prototype.call, [].slice); /** * Collects all child nodes of an element. * * @param node the node */ export default function childNodes(node) { return node ? toArray(node.childNodes) : []; }esm/siblings.js000064400000000464151701476730007517 0ustar00import collectSiblings from './collectSiblings'; /** * Collects all previous and next sibling elements of a given element. * * @param node the element */ export default function siblings(node) { return collectSiblings(node && node.parentElement ? node.parentElement.firstElementChild : null, node); }esm/canUseDOM.d.ts000064400000000072151701476730007712 0ustar00declare const _default: boolean; export default _default; esm/css.js000064400000001471151701476730006474 0ustar00import getComputedStyle from './getComputedStyle'; import hyphenate from './hyphenateStyle'; import isTransform from './isTransform'; function style(node, property) { var css = ''; var transforms = ''; if (typeof property === 'string') { return node.style.getPropertyValue(hyphenate(property)) || getComputedStyle(node).getPropertyValue(hyphenate(property)); } Object.keys(property).forEach(function (key) { var value = property[key]; if (!value && value !== 0) { node.style.removeProperty(hyphenate(key)); } else if (isTransform(key)) { transforms += key + "(" + value + ") "; } else { css += hyphenate(key) + ": " + value + ";"; } }); if (transforms) { css += "transform: " + transforms + ";"; } node.style.cssText += ";" + css; } export default style;esm/collectSiblings.d.ts000064400000000176151701476730011261 0ustar00export default function collectSiblings(node: Element | null, refNode?: Element | null, selector?: string | null): Element[]; esm/hasClass.js000064400000000574151701476730007450 0ustar00/** * Checks if a given element has a CSS class. * * @param element the element * @param className the CSS class name */ export default function hasClass(element, className) { if (element.classList) return !!className && element.classList.contains(className); return (" " + (element.className.baseVal || element.className) + " ").indexOf(" " + className + " ") !== -1; }esm/listen.js000064400000000512151701476730007175 0ustar00import addEventListener from './addEventListener'; import removeEventListener from './removeEventListener'; function listen(node, eventName, handler, options) { addEventListener(node, eventName, handler, options); return function () { removeEventListener(node, eventName, handler, options); }; } export default listen;esm/camelize.d.ts000064400000000072151701476730007725 0ustar00export default function camelize(string: string): string; esm/getScrollAccessor.d.ts000064400000000241151701476730011553 0ustar00export default function getscrollAccessor(offset: 'pageXOffset' | 'pageYOffset'): { (node: Element): number; (node: Element, val: number): undefined; }; esm/scrollTop.d.ts000064400000000404151701476730010114 0ustar00declare const _default: { (node: Element): number; (node: Element, val: number): undefined; }; /** * Gets or sets the scroll top position of a given element. * * @param node the element * @param val the position to set */ export default _default; esm/activeElement.d.ts000064400000000246151701476730010724 0ustar00/** * Returns the actively focused element safely. * * @param doc the document to check */ export default function activeElement(doc?: Document): Element | null; esm/clear.js000064400000000403151701476730006764 0ustar00/** * Removes all child nodes from a given node. * * @param node the node to clear */ export default function clear(node) { if (node) { while (node.firstChild) { node.removeChild(node.firstChild); } return node; } return null; }esm/childElements.js000064400000000264151701476730010463 0ustar00/** * Collects all child elements of an element. * * @param node the element */ export default function childElements(node) { return node ? Array.from(node.children) : []; }esm/isTransform.d.ts000064400000000564151701476730010451 0ustar00export declare type TransformValue = 'translate' | 'translateY' | 'translateX' | 'translateZ' | 'translate3d' | 'rotate' | 'rotateY' | 'rotateX' | 'rotateZ' | 'rotate3d' | 'scale' | 'scaleY' | 'scaleX' | 'scaleZ' | 'scale3d' | 'matrix' | 'matrix3d' | 'perspective' | 'skew' | 'skewY' | 'skewX'; export default function isTransform(value: string): value is TransformValue; esm/nextUntil.d.ts000064400000000402151701476730010123 0ustar00/** * Collects all next sibling elements of an element until a given selector is matched. * * @param node the referene node * @param selector the selector to match */ export default function nextUntil(node: Element | null, selector: string): Element[]; esm/scrollParent.d.ts000064400000000461151701476730010606 0ustar00/** * Find the first scrollable parent of an element. * * @param element Starting element * @param firstPossible Stop at the first scrollable parent, even if it's not currently scrollable */ export default function scrollParent(element: HTMLElement, firstPossible?: boolean): Document | HTMLElement; esm/childNodes.d.ts000064400000000220151701476730010203 0ustar00/** * Collects all child nodes of an element. * * @param node the node */ export default function childNodes(node: Element | null): Node[]; esm/getScrollAccessor.js000064400000000662151701476730011326 0ustar00import isWindow from './isWindow'; export default function getscrollAccessor(offset) { var prop = offset === 'pageXOffset' ? 'scrollLeft' : 'scrollTop'; function scrollAccessor(node, val) { var win = isWindow(node); if (val === undefined) { return win ? win[offset] : node[prop]; } if (win) { win.scrollTo(win[offset], val); } else { node[prop] = val; } } return scrollAccessor; }esm/hyphenate.d.ts000064400000000073151701476730010122 0ustar00export default function hyphenate(string: string): string; esm/animate.d.ts000064400000001606151701476730007556 0ustar00import { EventHandler } from './addEventListener'; import { TransformValue } from './isTransform'; import { Property } from './types'; declare type AnimateProperties = Record<Property | TransformValue, string>; interface Options { node: HTMLElement; properties: AnimateProperties; duration?: number; easing?: string; callback?: EventHandler<'transitionend'>; } interface Cancel { cancel(): void; } declare function animate(options: Options): Cancel; declare function animate(node: HTMLElement, properties: AnimateProperties, duration: number): Cancel; declare function animate(node: HTMLElement, properties: AnimateProperties, duration: number, callback: EventHandler<'transitionend'>): Cancel; declare function animate(node: HTMLElement, properties: AnimateProperties, duration: number, easing: string, callback: EventHandler<'transitionend'>): Cancel; export default animate; esm/getComputedStyle.d.ts000064400000000372151701476730011440 0ustar00/** * Returns one or all computed style properties of an element. * * @param node the element * @param psuedoElement the style property */ export default function getComputedStyle(node: HTMLElement, psuedoElement?: string): CSSStyleDeclaration; esm/isVisible.js000064400000000361151701476730007632 0ustar00/** * Checks if a given element is currently visible. * * @param node the element to check */ export default function isVisible(node) { return node ? !!(node.offsetWidth || node.offsetHeight || node.getClientRects().length) : false; }esm/contains.js000064400000001040151701476730007512 0ustar00/* eslint-disable no-bitwise, no-cond-assign */ /** * Checks if an element contains another given element. * * @param context the context element * @param node the element to check */ export default function contains(context, node) { // HTML DOM and SVG DOM may have different support levels, // so we need to check on context instead of a document root element. if (context.contains) return context.contains(node); if (context.compareDocumentPosition) return context === node || !!(context.compareDocumentPosition(node) & 16); }esm/isTransform.js000064400000000316151701476730010210 0ustar00var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i; export default function isTransform(value) { return !!(value && supportedTransforms.test(value)); }esm/addClass.js000064400000001010151701476730007407 0ustar00import hasClass from './hasClass'; /** * Adds a CSS class to a given element. * * @param element the element * @param className the CSS class name */ export default function addClass(element, className) { if (element.classList) element.classList.add(className);else if (!hasClass(element, className)) if (typeof element.className === 'string') element.className = element.className + " " + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + " " + className); }esm/index.d.ts000064400000007742151701476730007256 0ustar00import activeElement from './activeElement'; import addClass from './addClass'; import addEventListener from './addEventListener'; import animate from './animate'; import { cancel as cancelAnimationFrame, request as requestAnimationFrame } from './animationFrame'; import attribute from './attribute'; import childElements from './childElements'; import clear from './clear'; import closest from './closest'; import contains from './contains'; import childNodes from './childNodes'; import style from './css'; import filter from './filterEventHandler'; import getComputedStyle from './getComputedStyle'; import hasClass from './hasClass'; import height from './height'; import insertAfter from './insertAfter'; import isInput from './isInput'; import isVisible from './isVisible'; import listen from './listen'; import matches from './matches'; import nextUntil from './nextUntil'; import offset from './offset'; import offsetParent from './offsetParent'; import ownerDocument from './ownerDocument'; import ownerWindow from './ownerWindow'; import parents from './parents'; import position from './position'; import prepend from './prepend'; import querySelectorAll from './querySelectorAll'; import remove from './remove'; import removeClass from './removeClass'; import removeEventListener from './removeEventListener'; import scrollbarSize from './scrollbarSize'; import scrollLeft from './scrollLeft'; import scrollParent from './scrollParent'; import scrollTo from './scrollTo'; import scrollTop from './scrollTop'; import siblings from './siblings'; import text from './text'; import toggleClass from './toggleClass'; import transitionEnd from './transitionEnd'; import triggerEvent from './triggerEvent'; import width from './width'; export { addEventListener, removeEventListener, triggerEvent, animate, filter, listen, style, getComputedStyle, attribute, activeElement, ownerDocument, ownerWindow, requestAnimationFrame, cancelAnimationFrame, matches, height, width, offset, offsetParent, position, contains, scrollbarSize, scrollLeft, scrollParent, scrollTo, scrollTop, querySelectorAll, closest, addClass, removeClass, hasClass, toggleClass, transitionEnd, childNodes, childElements, nextUntil, parents, siblings, clear, insertAfter, isInput, isVisible, prepend, remove, text, }; declare const _default: { addEventListener: typeof addEventListener; removeEventListener: typeof removeEventListener; triggerEvent: typeof triggerEvent; animate: typeof animate; filter: typeof filter; listen: typeof listen; style: typeof style; getComputedStyle: typeof getComputedStyle; attribute: typeof attribute; activeElement: typeof activeElement; ownerDocument: typeof ownerDocument; ownerWindow: typeof ownerWindow; requestAnimationFrame: typeof globalThis.requestAnimationFrame; cancelAnimationFrame: (id: number) => void; matches: typeof matches; height: typeof height; width: typeof width; offset: typeof offset; offsetParent: typeof offsetParent; position: typeof position; contains: typeof contains; scrollbarSize: typeof scrollbarSize; scrollLeft: { (node: Element): number; (node: Element, val: number): undefined; }; scrollParent: typeof scrollParent; scrollTo: typeof scrollTo; scrollTop: { (node: Element): number; (node: Element, val: number): undefined; }; querySelectorAll: typeof querySelectorAll; closest: typeof closest; addClass: typeof addClass; removeClass: typeof removeClass; hasClass: typeof hasClass; toggleClass: typeof toggleClass; transitionEnd: typeof transitionEnd; childNodes: typeof childNodes; childElements: typeof childElements; nextUntil: typeof nextUntil; parents: typeof parents; siblings: typeof siblings; clear: typeof clear; insertAfter: typeof insertAfter; isInput: typeof isInput; isVisible: typeof isVisible; prepend: typeof prepend; remove: typeof remove; text: typeof text; }; export default _default; esm/width.d.ts000064400000000330151701476730007250 0ustar00/** * Returns the width of a given element. * * @param node the element * @param client whether to use `clientWidth` if possible */ export default function getWidth(node: HTMLElement, client?: boolean): number; esm/matches.js000064400000001007151701476730007323 0ustar00var matchesImpl; /** * Checks if a given element matches a selector. * * @param node the element * @param selector the selector */ export default function matches(node, selector) { if (!matchesImpl) { var body = document.body; var nativeMatch = body.matches || body.matchesSelector || body.webkitMatchesSelector || body.mozMatchesSelector || body.msMatchesSelector; matchesImpl = function matchesImpl(n, s) { return nativeMatch.call(n, s); }; } return matchesImpl(node, selector); }esm/height.d.ts000064400000000330151701476730007401 0ustar00/** * Returns the height of a given element. * * @param node the element * @param client whether to use `clientHeight` if possible */ export default function height(node: HTMLElement, client?: boolean): number; esm/prepend.d.ts000064400000000366151701476730007577 0ustar00/** * Insert a given element as the first child of a parent element. * * @param node the element to prepend * @param parent the parent element */ export default function prepend(node: Element | null, parent: Element | null): Element | null; esm/scrollTo.js000064400000002264151701476730007506 0ustar00/* eslint-disable no-nested-ternary */ import { cancel, request } from './animationFrame'; import height from './height'; import getWindow from './isWindow'; import getOffset from './offset'; import getScrollParent from './scrollParent'; import scrollTop from './scrollTop'; export default function scrollTo(selected, scrollParent) { var offset = getOffset(selected); var poff = { top: 0, left: 0 }; if (!selected) return undefined; var list = scrollParent || getScrollParent(selected); var isWin = getWindow(list); var listScrollTop = scrollTop(list); var listHeight = height(list, true); if (!isWin) poff = getOffset(list); offset = { top: offset.top - poff.top, left: offset.left - poff.left, height: offset.height, width: offset.width }; var selectedHeight = offset.height; var selectedTop = offset.top + (isWin ? 0 : listScrollTop); var bottom = selectedTop + selectedHeight; listScrollTop = listScrollTop > selectedTop ? selectedTop : bottom > listScrollTop + listHeight ? bottom - listHeight : listScrollTop; var id = request(function () { return scrollTop(list, listScrollTop); }); return function () { return cancel(id); }; }esm/types.d.ts000064400000000351151701476730007300 0ustar00import * as CSS from 'csstype' type Styles = keyof CSSStyleDeclaration export type HyphenProperty = keyof CSS.PropertiesHyphen export type CamelProperty = keyof CSS.Properties export type Property = HyphenProperty | CamelProperty esm/animationFrame.js000064400000002046151701476730010635 0ustar00import canUseDOM from './canUseDOM'; /* https://github.com/component/raf */ var prev = new Date().getTime(); function fallback(fn) { var curr = new Date().getTime(); var ms = Math.max(0, 16 - (curr - prev)); var handle = setTimeout(fn, ms); prev = curr; return handle; } var vendors = ['', 'webkit', 'moz', 'o', 'ms']; var cancelMethod = 'clearTimeout'; var rafImpl = fallback; // eslint-disable-next-line import/no-mutable-exports var getKey = function getKey(vendor, k) { return vendor + (!vendor ? k : k[0].toUpperCase() + k.substr(1)) + "AnimationFrame"; }; if (canUseDOM) { vendors.some(function (vendor) { var rafMethod = getKey(vendor, 'request'); if (rafMethod in window) { cancelMethod = getKey(vendor, 'cancel'); // @ts-ignore rafImpl = function rafImpl(cb) { return window[rafMethod](cb); }; } return !!rafImpl; }); } export var cancel = function cancel(id) { // @ts-ignore if (typeof window[cancelMethod] === 'function') window[cancelMethod](id); }; export var request = rafImpl;esm/removeEventListener.d.ts000064400000000703151701476730012142 0ustar00import { TaggedEventHandler } from './addEventListener'; /** * A `removeEventListener` ponyfill * * @param node the element * @param eventName the event name * @param handle the handler * @param options event options */ declare function removeEventListener<K extends keyof HTMLElementEventMap>(node: HTMLElement, eventName: K, handler: TaggedEventHandler<K>, options?: boolean | EventListenerOptions): void; export default removeEventListener; esm/activeElement.js000064400000001235151701476730010467 0ustar00import ownerDocument from './ownerDocument'; /** * Returns the actively focused element safely. * * @param doc the document to check */ export default function activeElement(doc) { if (doc === void 0) { doc = ownerDocument(); } // Support: IE 9 only // IE9 throws an "Unspecified error" accessing document.activeElement from an <iframe> try { var active = doc.activeElement; // IE11 returns a seemingly empty object in some cases when accessing // document.activeElement from an <iframe> if (!active || !active.nodeName) return null; return active; } catch (e) { /* ie throws if no active element */ return doc.body; } }esm/scrollParent.js000064400000002042151701476730010347 0ustar00/* eslint-disable no-cond-assign, no-continue */ import css from './css'; import height from './height'; import isDocument from './isDocument'; /** * Find the first scrollable parent of an element. * * @param element Starting element * @param firstPossible Stop at the first scrollable parent, even if it's not currently scrollable */ export default function scrollParent(element, firstPossible) { var position = css(element, 'position'); var excludeStatic = position === 'absolute'; var ownerDoc = element.ownerDocument; if (position === 'fixed') return ownerDoc || document; // @ts-ignore while ((element = element.parentNode) && !isDocument(element)) { var isStatic = excludeStatic && css(element, 'position') === 'static'; var style = (css(element, 'overflow') || '') + (css(element, 'overflow-y') || '') + css(element, 'overflow-x'); if (isStatic) continue; if (/(auto|scroll)/.test(style) && (firstPossible || height(element) < element.scrollHeight)) { return element; } } return ownerDoc || document; }esm/closest.d.ts000064400000000476151701476730007620 0ustar00/** * Returns the closest parent element that matches a given selector. * * @param node the reference element * @param selector the selector to match * @param stopAt stop traversing when this element is found */ export default function closest(node: Element, selector: string, stopAt?: Element): Element | null; esm/isDocument.d.ts000064400000000137151701476730010250 0ustar00export default function isDocument(element: Element | Document | Window): element is Document; esm/animate.js000064400000004371151701476730007324 0ustar00import css from './css'; import hyphenate from './hyphenate'; import isTransform from './isTransform'; import transitionEnd from './transitionEnd'; var reset = { transition: '', 'transition-duration': '', 'transition-delay': '', 'transition-timing-function': '' }; // super lean animate function for transitions // doesn't support all translations to keep it matching the jquery API /** * code in part from: Zepto 1.1.4 | zeptojs.com/license */ function _animate(_ref) { var node = _ref.node, properties = _ref.properties, _ref$duration = _ref.duration, duration = _ref$duration === void 0 ? 200 : _ref$duration, easing = _ref.easing, callback = _ref.callback; var cssProperties = []; var cssValues = {}; var transforms = ''; Object.keys(properties).forEach(function (key) { var value = properties[key]; if (isTransform(key)) transforms += key + "(" + value + ") ";else { cssValues[key] = value; cssProperties.push(hyphenate(key)); } }); if (transforms) { cssValues.transform = transforms; cssProperties.push('transform'); } function done(event) { if (event.target !== event.currentTarget) return; css(node, reset); if (callback) callback.call(this, event); } if (duration > 0) { cssValues.transition = cssProperties.join(', '); cssValues['transition-duration'] = duration / 1000 + "s"; cssValues['transition-delay'] = '0s'; cssValues['transition-timing-function'] = easing || 'linear'; } var removeListener = transitionEnd(node, done, duration); // eslint-disable-next-line no-unused-expressions node.clientLeft; // trigger page reflow css(node, cssValues); return { cancel: function cancel() { removeListener(); css(node, reset); } }; } function animate(nodeOrOptions, properties, duration, easing, callback) { if (!('nodeType' in nodeOrOptions)) { return _animate(nodeOrOptions); } if (!properties) { throw new Error('must include properties to animate'); } if (typeof easing === 'function') { callback = easing; easing = ''; } return _animate({ node: nodeOrOptions, properties: properties, duration: duration, easing: easing, callback: callback }); } export default animate;esm/insertAfter.d.ts000064400000000335151701476730010424 0ustar00/** * Inserts a node after a given reference node. * * @param node the node to insert * @param refNode the reference node */ export default function insertAfter(node: Node | null, refNode: Node | null): Node | null; esm/matches.d.ts000064400000000302151701476730007554 0ustar00/** * Checks if a given element matches a selector. * * @param node the element * @param selector the selector */ export default function matches(node: Element, selector: string): boolean; esm/removeClass.js000064400000001305151701476730010163 0ustar00function replaceClassName(origClass, classToRemove) { return origClass.replace(new RegExp("(^|\\s)" + classToRemove + "(?:\\s|$)", 'g'), '$1').replace(/\s+/g, ' ').replace(/^\s*|\s*$/g, ''); } /** * Removes a CSS class from a given element. * * @param element the element * @param className the CSS class name */ export default function removeClass(element, className) { if (element.classList) { element.classList.remove(className); } else if (typeof element.className === 'string') { element.className = replaceClassName(element.className, className); } else { element.setAttribute('class', replaceClassName(element.className && element.className.baseVal || '', className)); } }esm/camelizeStyle.d.ts000064400000000225151701476730010746 0ustar00import { CamelProperty, Property } from './types'; export default function camelizeStyleName<T extends string = Property>(string: T): CamelProperty; esm/scrollLeft.js000064400000000354151701476730010014 0ustar00import getScrollAccessor from './getScrollAccessor'; /** * Gets or sets the scroll left position of a given element. * * @param node the element * @param val the position to set */ export default getScrollAccessor('pageXOffset');esm/position.d.ts000064400000000444151701476730010003 0ustar00/** * Returns the relative position of a given element. * * @param node the element * @param offsetParent the offset parent */ export default function position(node: HTMLElement, offsetParent?: HTMLElement): { top: number; left: number; height: number; width: number; }; esm/scrollLeft.d.ts000064400000000405151701476730010245 0ustar00declare const _default: { (node: Element): number; (node: Element, val: number): undefined; }; /** * Gets or sets the scroll left position of a given element. * * @param node the element * @param val the position to set */ export default _default; esm/ownerDocument.js000064400000000271151701476730010532 0ustar00/** * Returns the owner document of a given element. * * @param node the element */ export default function ownerDocument(node) { return node && node.ownerDocument || document; }esm/toggleClass.d.ts000064400000000330151701476730010400 0ustar00/** * Toggles a CSS class on a given element. * * @param element the element * @param className the CSS class name */ export default function toggleClass(element: Element | SVGElement, className: string): void; esm/getComputedStyle.js000064400000000476151701476730011211 0ustar00import ownerWindow from './ownerWindow'; /** * Returns one or all computed style properties of an element. * * @param node the element * @param psuedoElement the style property */ export default function getComputedStyle(node, psuedoElement) { return ownerWindow(node).getComputedStyle(node, psuedoElement); }esm/hyphenateStyle.js000064400000000552151701476730010711 0ustar00/** * Copyright 2013-2014, Facebook, Inc. * All rights reserved. * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js */ import hyphenate from './hyphenate'; var msPattern = /^ms-/; export default function hyphenateStyleName(string) { return hyphenate(string).replace(msPattern, '-ms-'); }esm/offsetParent.d.ts000064400000000106151701476730010572 0ustar00export default function offsetParent(node: HTMLElement): HTMLElement; esm/css.d.ts000064400000000646151701476730006733 0ustar00import * as CSS from 'csstype'; import { CamelProperty, HyphenProperty, Property } from './types'; declare function style(node: HTMLElement, property: Partial<Record<Property, string>>): void; declare function style<T extends HyphenProperty>(node: HTMLElement, property: T): CSS.PropertiesHyphen[T]; declare function style<T extends CamelProperty>(node: HTMLElement, property: T): CSS.Properties[T]; export default style; esm/camelize.js000064400000000234151701476730007471 0ustar00var rHyphen = /-(.)/g; export default function camelize(string) { return string.replace(rHyphen, function (_, chr) { return chr.toUpperCase(); }); }esm/collectSiblings.js000064400000000666151701476730011031 0ustar00import matches from './matches'; export default function collectSiblings(node, refNode, selector) { if (refNode === void 0) { refNode = null; } if (selector === void 0) { selector = null; } var siblings = []; for (; node; node = node.nextElementSibling) { if (node !== refNode) { if (selector && matches(node, selector)) { break; } siblings.push(node); } } return siblings; }esm/listen.d.ts000064400000000374151701476730007437 0ustar00import { EventHandler } from './addEventListener'; declare function listen<K extends keyof HTMLElementEventMap>(node: HTMLElement, eventName: K, handler: EventHandler<K>, options?: boolean | AddEventListenerOptions): () => void; export default listen; offsetParent/package.json000064400000000255151701476730011507 0ustar00{ "name": "dom-helpers/offsetParent", "private": true, "main": "../cjs/offsetParent.js", "module": "../esm/offsetParent.js", "types": "../esm/offsetParent.d.ts" } remove/package.json000064400000000225151701476730010341 0ustar00{ "name": "dom-helpers/remove", "private": true, "main": "../cjs/remove.js", "module": "../esm/remove.js", "types": "../esm/remove.d.ts" } removeClass/package.json000064400000000251151701476730011326 0ustar00{ "name": "dom-helpers/removeClass", "private": true, "main": "../cjs/removeClass.js", "module": "../esm/removeClass.js", "types": "../esm/removeClass.d.ts" } parents/package.json000064400000000231151701476730010515 0ustar00{ "name": "dom-helpers/parents", "private": true, "main": "../cjs/parents.js", "module": "../esm/parents.js", "types": "../esm/parents.d.ts" } ownerWindow/package.json000064400000000251151701476730011365 0ustar00{ "name": "dom-helpers/ownerWindow", "private": true, "main": "../cjs/ownerWindow.js", "module": "../esm/ownerWindow.js", "types": "../esm/ownerWindow.d.ts" } width/package.json000064400000000221151701476730010157 0ustar00{ "name": "dom-helpers/width", "private": true, "main": "../cjs/width.js", "module": "../esm/width.js", "types": "../esm/width.d.ts" } isTransform/package.json000064400000000251151701476730011352 0ustar00{ "name": "dom-helpers/isTransform", "private": true, "main": "../cjs/isTransform.js", "module": "../esm/isTransform.js", "types": "../esm/isTransform.d.ts" }
/home/emeraadmin/www/node_modules/.bin/../xmlbuilder/../debug/../../src/../4d695/dom-helpers.tar