@thednp/shorty 2.0.7 → 2.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +54 -26
- package/dist/shorty.cjs +1 -1
- package/dist/shorty.cjs.map +1 -1
- package/dist/shorty.d.ts +235 -138
- package/dist/shorty.js +1 -1
- package/dist/shorty.js.map +1 -1
- package/dist/shorty.mjs +536 -600
- package/dist/shorty.mjs.map +1 -1
- package/package.json +9 -8
- package/.eslintrc.cjs +0 -224
- package/.lgtm.yml +0 -8
- package/.prettierrc.json +0 -15
- package/src/attr/getAttribute.ts +0 -11
- package/src/attr/getAttributeNS.ts +0 -12
- package/src/attr/hasAttribute.ts +0 -11
- package/src/attr/hasAttributeNS.ts +0 -15
- package/src/attr/removeAttribute.ts +0 -10
- package/src/attr/removeAttributeNS.ts +0 -14
- package/src/attr/setAttribute.ts +0 -11
- package/src/attr/setAttributeNS.ts +0 -16
- package/src/blocks/documentBody.ts +0 -5
- package/src/blocks/documentElement.ts +0 -5
- package/src/blocks/documentHead.ts +0 -5
- package/src/boolean/isApple.ts +0 -15
- package/src/boolean/isFirefox.ts +0 -9
- package/src/boolean/isMobile.ts +0 -14
- package/src/boolean/support3DTransform.ts +0 -7
- package/src/boolean/supportAnimation.ts +0 -7
- package/src/boolean/supportPassive.ts +0 -29
- package/src/boolean/supportTouch.ts +0 -9
- package/src/boolean/supportTransform.ts +0 -7
- package/src/boolean/supportTransition.ts +0 -7
- package/src/class/addClass.ts +0 -11
- package/src/class/hasClass.ts +0 -11
- package/src/class/removeClass.ts +0 -11
- package/src/event/off.ts +0 -18
- package/src/event/on.ts +0 -18
- package/src/event/one.ts +0 -26
- package/src/get/getBoundingClientRect.ts +0 -44
- package/src/get/getDocument.ts +0 -24
- package/src/get/getDocumentBody.ts +0 -13
- package/src/get/getDocumentElement.ts +0 -13
- package/src/get/getDocumentHead.ts +0 -14
- package/src/get/getElementAnimationDelay.ts +0 -25
- package/src/get/getElementAnimationDuration.ts +0 -25
- package/src/get/getElementStyle.ts +0 -25
- package/src/get/getElementTransitionDelay.ts +0 -25
- package/src/get/getElementTransitionDuration.ts +0 -25
- package/src/get/getNodeScroll.ts +0 -22
- package/src/get/getParentNode.ts +0 -28
- package/src/get/getRectRelativeToOffsetParent.ts +0 -43
- package/src/get/getUID.ts +0 -42
- package/src/get/getWindow.ts +0 -23
- package/src/index.ts +0 -571
- package/src/interface/boundingClientRect.d.ts +0 -10
- package/src/interface/css4Declaration.d.ts +0 -4
- package/src/interface/customElement.d.ts +0 -8
- package/src/interface/event.d.ts +0 -255
- package/src/interface/fn.ts +0 -1
- package/src/interface/navigatorUA.d.ts +0 -15
- package/src/interface/offsetRect.d.ts +0 -6
- package/src/interface/originalEvent.d.ts +0 -4
- package/src/is/isArray.ts +0 -10
- package/src/is/isCanvas.ts +0 -13
- package/src/is/isCustomElement.ts +0 -15
- package/src/is/isDocument.ts +0 -14
- package/src/is/isElement.ts +0 -28
- package/src/is/isElementInScrollRange.ts +0 -20
- package/src/is/isElementInViewport.ts +0 -21
- package/src/is/isElementsArray.ts +0 -13
- package/src/is/isFunction.ts +0 -12
- package/src/is/isHTMLCollection.ts +0 -12
- package/src/is/isHTMLElement.ts +0 -13
- package/src/is/isHTMLImageElement.ts +0 -12
- package/src/is/isJSON.ts +0 -20
- package/src/is/isMap.ts +0 -11
- package/src/is/isMedia.ts +0 -26
- package/src/is/isNode.ts +0 -19
- package/src/is/isNodeList.ts +0 -13
- package/src/is/isNumber.ts +0 -10
- package/src/is/isObject.ts +0 -10
- package/src/is/isRTL.ts +0 -11
- package/src/is/isSVGElement.ts +0 -13
- package/src/is/isScaledElement.ts +0 -20
- package/src/is/isShadowRoot.ts +0 -12
- package/src/is/isString.ts +0 -10
- package/src/is/isTableElement.ts +0 -17
- package/src/is/isWeakMap.ts +0 -11
- package/src/is/isWindow.ts +0 -13
- package/src/misc/ArrayFrom.ts +0 -11
- package/src/misc/Float32ArrayFrom.ts +0 -11
- package/src/misc/Float64ArrayFrom.ts +0 -11
- package/src/misc/ObjectAssign.ts +0 -54
- package/src/misc/ObjectEntries.ts +0 -11
- package/src/misc/ObjectFromEntries.ts +0 -11
- package/src/misc/ObjectHasOwn.ts +0 -18
- package/src/misc/ObjectKeys.ts +0 -11
- package/src/misc/ObjectValues.ts +0 -12
- package/src/misc/createCustomEvent.ts +0 -31
- package/src/misc/createElement.ts +0 -36
- package/src/misc/createElementNS.ts +0 -40
- package/src/misc/data.ts +0 -80
- package/src/misc/dispatchEvent.ts +0 -10
- package/src/misc/distinct.ts +0 -19
- package/src/misc/emulateAnimationEnd.ts +0 -43
- package/src/misc/emulateTransitionEnd.ts +0 -42
- package/src/misc/focus.ts +0 -10
- package/src/misc/focusTrap.ts +0 -67
- package/src/misc/getInstance.ts +0 -9
- package/src/misc/noop.ts +0 -6
- package/src/misc/normalizeOptions.ts +0 -58
- package/src/misc/normalizeValue.ts +0 -32
- package/src/misc/passiveHandler.ts +0 -6
- package/src/misc/reflow.ts +0 -9
- package/src/misc/setElementStyle.ts +0 -26
- package/src/misc/timer.ts +0 -91
- package/src/misc/toLowerCase.ts +0 -9
- package/src/misc/toUpperCase.ts +0 -9
- package/src/selectors/closest.ts +0 -23
- package/src/selectors/getCustomElements.ts +0 -19
- package/src/selectors/getElementById.ts +0 -16
- package/src/selectors/getElementsByClassName.ts +0 -22
- package/src/selectors/getElementsByTagName.ts +0 -22
- package/src/selectors/matches.ts +0 -11
- package/src/selectors/querySelector.ts +0 -25
- package/src/selectors/querySelectorAll.ts +0 -19
- package/src/strings/DOMContentLoadedEvent.ts +0 -5
- package/src/strings/DOMMouseScrollEvent.ts +0 -5
- package/src/strings/abortEvent.ts +0 -5
- package/src/strings/addEventListener.ts +0 -5
- package/src/strings/animationDelay.ts +0 -5
- package/src/strings/animationDuration.ts +0 -5
- package/src/strings/animationEndEvent.ts +0 -5
- package/src/strings/animationName.ts +0 -5
- package/src/strings/ariaChecked.ts +0 -5
- package/src/strings/ariaDescribedBy.ts +0 -5
- package/src/strings/ariaDescription.ts +0 -5
- package/src/strings/ariaExpanded.ts +0 -5
- package/src/strings/ariaHasPopup.ts +0 -5
- package/src/strings/ariaHidden.ts +0 -5
- package/src/strings/ariaLabel.ts +0 -5
- package/src/strings/ariaLabelledBy.ts +0 -5
- package/src/strings/ariaModal.ts +0 -5
- package/src/strings/ariaPressed.ts +0 -5
- package/src/strings/ariaSelected.ts +0 -5
- package/src/strings/ariaValueMax.ts +0 -5
- package/src/strings/ariaValueMin.ts +0 -5
- package/src/strings/ariaValueNow.ts +0 -5
- package/src/strings/ariaValueText.ts +0 -5
- package/src/strings/beforeunloadEvent.ts +0 -5
- package/src/strings/bezierEasings.ts +0 -32
- package/src/strings/blurEvent.ts +0 -5
- package/src/strings/changeEvent.ts +0 -5
- package/src/strings/contextmenuEvent.ts +0 -5
- package/src/strings/dragEvent.ts +0 -5
- package/src/strings/dragendEvent.ts +0 -5
- package/src/strings/dragenterEvent.ts +0 -5
- package/src/strings/dragleaveEvent.ts +0 -5
- package/src/strings/dragoverEvent.ts +0 -5
- package/src/strings/dragstartEvent.ts +0 -5
- package/src/strings/errorEvent.ts +0 -5
- package/src/strings/focusEvent.ts +0 -5
- package/src/strings/focusEvents.ts +0 -5
- package/src/strings/focusableSelector.ts +0 -4
- package/src/strings/focusinEvent.ts +0 -5
- package/src/strings/focusoutEvent.ts +0 -5
- package/src/strings/gesturechangeEvent.ts +0 -5
- package/src/strings/gestureendEvent.ts +0 -5
- package/src/strings/gesturestartEvent.ts +0 -5
- package/src/strings/keyAlt.ts +0 -7
- package/src/strings/keyArrowDown.ts +0 -7
- package/src/strings/keyArrowLeft.ts +0 -7
- package/src/strings/keyArrowRight.ts +0 -7
- package/src/strings/keyArrowUp.ts +0 -7
- package/src/strings/keyBackspace.ts +0 -7
- package/src/strings/keyCapsLock.ts +0 -7
- package/src/strings/keyControl.ts +0 -7
- package/src/strings/keyDelete.ts +0 -7
- package/src/strings/keyEnter.ts +0 -7
- package/src/strings/keyEscape.ts +0 -7
- package/src/strings/keyInsert.ts +0 -7
- package/src/strings/keyMeta.ts +0 -7
- package/src/strings/keyNumpadEnter.ts +0 -7
- package/src/strings/keyPause.ts +0 -7
- package/src/strings/keyScrollLock.ts +0 -7
- package/src/strings/keyShift.ts +0 -7
- package/src/strings/keySpace.ts +0 -7
- package/src/strings/keyTab.ts +0 -7
- package/src/strings/keyboardEventKeys.ts +0 -26
- package/src/strings/keydownEvent.ts +0 -5
- package/src/strings/keypressEvent.ts +0 -5
- package/src/strings/keyupEvent.ts +0 -5
- package/src/strings/loadEvent.ts +0 -5
- package/src/strings/loadstartEvent.ts +0 -5
- package/src/strings/mouseClickEvents.ts +0 -5
- package/src/strings/mouseHoverEvents.ts +0 -7
- package/src/strings/mouseSwipeEvents.ts +0 -10
- package/src/strings/mouseclickEvent.ts +0 -5
- package/src/strings/mousedblclickEvent.ts +0 -5
- package/src/strings/mousedownEvent.ts +0 -5
- package/src/strings/mouseenterEvent.ts +0 -5
- package/src/strings/mousehoverEvent.ts +0 -5
- package/src/strings/mouseinEvent.ts +0 -5
- package/src/strings/mouseleaveEvent.ts +0 -5
- package/src/strings/mousemoveEvent.ts +0 -5
- package/src/strings/mouseoutEvent.ts +0 -5
- package/src/strings/mouseoverEvent.ts +0 -5
- package/src/strings/mouseupEvent.ts +0 -5
- package/src/strings/mousewheelEvent.ts +0 -5
- package/src/strings/moveEvent.ts +0 -5
- package/src/strings/nativeEvents.ts +0 -108
- package/src/strings/offsetHeight.ts +0 -5
- package/src/strings/offsetWidth.ts +0 -5
- package/src/strings/orientationchangeEvent.ts +0 -5
- package/src/strings/pointercancelEvent.ts +0 -5
- package/src/strings/pointerdownEvent.ts +0 -5
- package/src/strings/pointerleaveEvent.ts +0 -5
- package/src/strings/pointermoveEvent.ts +0 -5
- package/src/strings/pointerupEvent.ts +0 -5
- package/src/strings/readystatechangeEvent.ts +0 -5
- package/src/strings/removeEventListener.ts +0 -5
- package/src/strings/resetEvent.ts +0 -5
- package/src/strings/resizeEvent.ts +0 -5
- package/src/strings/scrollEvent.ts +0 -5
- package/src/strings/scrollHeight.ts +0 -5
- package/src/strings/scrollWidth.ts +0 -5
- package/src/strings/selectEvent.ts +0 -5
- package/src/strings/selectendEvent.ts +0 -5
- package/src/strings/selectstartEvent.ts +0 -5
- package/src/strings/submitEvent.ts +0 -5
- package/src/strings/tabindex.ts +0 -5
- package/src/strings/touchEvents.ts +0 -10
- package/src/strings/touchcancelEvent.ts +0 -5
- package/src/strings/touchendEvent.ts +0 -5
- package/src/strings/touchmoveEvent.ts +0 -5
- package/src/strings/touchstartEvent.ts +0 -5
- package/src/strings/transitionDelay.ts +0 -5
- package/src/strings/transitionDuration.ts +0 -5
- package/src/strings/transitionEndEvent.ts +0 -5
- package/src/strings/transitionProperty.ts +0 -5
- package/src/strings/unloadEvent.ts +0 -5
- package/src/strings/userAgent.ts +0 -7
- package/src/strings/userAgentData.ts +0 -8
- package/test/att.test.ts +0 -43
- package/test/boolean.test.ts +0 -30
- package/test/class.test.ts +0 -26
- package/test/event.test.ts +0 -39
- package/test/fixtures/custom-elem.js +0 -18
- package/test/fixtures/getExampleDom.ts +0 -52
- package/test/fixtures/style.css +0 -18
- package/test/get.test.ts +0 -150
- package/test/is.test.ts +0 -240
- package/test/misc.test.ts +0 -400
- package/test/selectors.test.ts +0 -90
- package/tsconfig.json +0 -36
- package/vite.config.mts +0 -45
- package/vitest.config-ui.mts +0 -26
- package/vitest.config.mts +0 -25
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Fn } from "../interface/fn";
|
|
2
|
-
|
|
3
|
-
type NormalValue = boolean | number | string | Fn | null;
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Utility to normalize component options
|
|
7
|
-
*
|
|
8
|
-
* @param value the input value
|
|
9
|
-
* @return the normalized value
|
|
10
|
-
*/
|
|
11
|
-
const normalizeValue = (value?: unknown): NormalValue => {
|
|
12
|
-
if (["true", true].includes(value as boolean)) {
|
|
13
|
-
return true;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
if (["false", false].includes(value as boolean)) {
|
|
17
|
-
return false;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
if (["null", "", null, undefined].includes(value as string | undefined)) {
|
|
21
|
-
return null;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
if (value !== "" && !Number.isNaN(+(value as string))) {
|
|
25
|
-
return +(value as string);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
// string / function / HTMLElement / object / undefined
|
|
29
|
-
return value as NormalValue;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export default normalizeValue;
|
package/src/misc/reflow.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import ObjectAssign from "./ObjectAssign";
|
|
2
|
-
import ObjectEntries from "./ObjectEntries";
|
|
3
|
-
import isString from "../is/isString";
|
|
4
|
-
import type { CSS4Declaration } from "../interface/css4Declaration";
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Shortcut for multiple uses of `HTMLElement.style.propertyName` method.
|
|
8
|
-
*
|
|
9
|
-
* @param element target element
|
|
10
|
-
* @param styles attribute value
|
|
11
|
-
*/
|
|
12
|
-
const setElementStyle = (
|
|
13
|
-
element: HTMLElement,
|
|
14
|
-
styles: Partial<CSS4Declaration>,
|
|
15
|
-
): void => {
|
|
16
|
-
ObjectEntries(styles).forEach(([key, value]) => {
|
|
17
|
-
if (value && isString(key as string) && (key as string).includes("--")) {
|
|
18
|
-
element.style.setProperty(key as string, value);
|
|
19
|
-
} else {
|
|
20
|
-
const propObject: Partial<CSS4Declaration> = {};
|
|
21
|
-
propObject[key] = value;
|
|
22
|
-
ObjectAssign(element.style, propObject);
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
export default setElementStyle;
|
package/src/misc/timer.ts
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import isMap from "../is/isMap";
|
|
2
|
-
import isHTMLElement from "../is/isHTMLElement";
|
|
3
|
-
import isNumber from "../is/isNumber";
|
|
4
|
-
|
|
5
|
-
type KeyMap = Map<string, number>;
|
|
6
|
-
type TimeMap = Map<HTMLElement, number | KeyMap>;
|
|
7
|
-
|
|
8
|
-
const TimeCache: TimeMap = new Map() as TimeMap;
|
|
9
|
-
/**
|
|
10
|
-
* An interface for one or more `TimerHandler`s per `Element`.
|
|
11
|
-
*
|
|
12
|
-
* @see https://github.com/thednp/navbar/
|
|
13
|
-
*/
|
|
14
|
-
const Timer = {
|
|
15
|
-
/**
|
|
16
|
-
* Sets a new timeout timer for an element, or element -> key association.
|
|
17
|
-
*
|
|
18
|
-
* @param element target element
|
|
19
|
-
* @param callback the callback
|
|
20
|
-
* @param delay the execution delay
|
|
21
|
-
* @param key a unique key
|
|
22
|
-
*/
|
|
23
|
-
set: (
|
|
24
|
-
element: HTMLElement,
|
|
25
|
-
callback: TimerHandler,
|
|
26
|
-
delay: number,
|
|
27
|
-
key?: string,
|
|
28
|
-
): void => {
|
|
29
|
-
if (!isHTMLElement(element)) return;
|
|
30
|
-
|
|
31
|
-
// istanbul ignore else @preserve
|
|
32
|
-
if (key && key.length) {
|
|
33
|
-
// istanbul ignore else @preserve
|
|
34
|
-
if (!TimeCache.has(element)) {
|
|
35
|
-
TimeCache.set(element, new Map());
|
|
36
|
-
}
|
|
37
|
-
// eslint-disable-next-line @typescript-eslint/no-implied-eval
|
|
38
|
-
(TimeCache.get(element) as KeyMap).set(key, setTimeout(callback, delay));
|
|
39
|
-
} else {
|
|
40
|
-
// eslint-disable-next-line @typescript-eslint/no-implied-eval
|
|
41
|
-
TimeCache.set(element, setTimeout(callback, delay));
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Returns the timer associated with the target.
|
|
47
|
-
*
|
|
48
|
-
* @param element target element
|
|
49
|
-
* @param key a unique
|
|
50
|
-
* @returns the timer
|
|
51
|
-
*/
|
|
52
|
-
get: (element: HTMLElement, key?: string): number | null => {
|
|
53
|
-
if (!isHTMLElement(element)) return null;
|
|
54
|
-
const keyTimers = TimeCache.get(element);
|
|
55
|
-
|
|
56
|
-
if (key && keyTimers && isMap(keyTimers as KeyMap)) {
|
|
57
|
-
return (keyTimers as KeyMap).get(key) ||
|
|
58
|
-
/* istanbul ignore next @preserve */
|
|
59
|
-
null;
|
|
60
|
-
} else if (isNumber(keyTimers as number)) {
|
|
61
|
-
return keyTimers as number;
|
|
62
|
-
}
|
|
63
|
-
return null;
|
|
64
|
-
},
|
|
65
|
-
|
|
66
|
-
/**
|
|
67
|
-
* Clears the element's timer.
|
|
68
|
-
*
|
|
69
|
-
* @param element target element
|
|
70
|
-
* @param key a unique key
|
|
71
|
-
*/
|
|
72
|
-
clear: (element: HTMLElement, key?: string): void => {
|
|
73
|
-
if (!isHTMLElement(element)) return;
|
|
74
|
-
|
|
75
|
-
const keyTimers = TimeCache.get(element);
|
|
76
|
-
|
|
77
|
-
if (key && key.length && isMap(keyTimers as KeyMap)) {
|
|
78
|
-
clearTimeout((keyTimers as KeyMap).get(key));
|
|
79
|
-
(keyTimers as KeyMap).delete(key);
|
|
80
|
-
// istanbul ignore else @preserve
|
|
81
|
-
if ((keyTimers as KeyMap).size === 0) {
|
|
82
|
-
TimeCache.delete(element);
|
|
83
|
-
}
|
|
84
|
-
} else {
|
|
85
|
-
clearTimeout(keyTimers as number);
|
|
86
|
-
TimeCache.delete(element);
|
|
87
|
-
}
|
|
88
|
-
},
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
export default Timer;
|
package/src/misc/toLowerCase.ts
DELETED
package/src/misc/toUpperCase.ts
DELETED
package/src/selectors/closest.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shortcut for `HTMLElement.closest` method which also works
|
|
3
|
-
* with children of `ShadowRoot`. The order of the parameters
|
|
4
|
-
* is intentional since they're both required.
|
|
5
|
-
*
|
|
6
|
-
* @see https://stackoverflow.com/q/54520554/803358
|
|
7
|
-
*
|
|
8
|
-
* @param element Element to look into
|
|
9
|
-
* @param selector the selector name
|
|
10
|
-
* @return the query result
|
|
11
|
-
*/
|
|
12
|
-
const closest = <T extends Element = HTMLElement>(
|
|
13
|
-
element: T,
|
|
14
|
-
selector: string,
|
|
15
|
-
): HTMLElement | null => {
|
|
16
|
-
return element
|
|
17
|
-
? element.closest(selector) ||
|
|
18
|
-
// break out of `ShadowRoot`
|
|
19
|
-
closest((element.getRootNode() as ShadowRoot).host, selector)
|
|
20
|
-
: null;
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
export default closest;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import isCustomElement from "../is/isCustomElement";
|
|
2
|
-
import getElementsByTagName from "./getElementsByTagName";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Returns an `Array` of `Node` elements that are registered as
|
|
6
|
-
* `CustomElement`.
|
|
7
|
-
*
|
|
8
|
-
* @see https://stackoverflow.com/questions/27334365/how-to-get-list-of-registered-custom-elements
|
|
9
|
-
*
|
|
10
|
-
* @param parent parent to look into
|
|
11
|
-
* @returns the query result
|
|
12
|
-
*/
|
|
13
|
-
const getCustomElements = (parent?: ParentNode) => {
|
|
14
|
-
const collection = getElementsByTagName("*", parent);
|
|
15
|
-
|
|
16
|
-
return [...collection].filter(isCustomElement);
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export default getCustomElements;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import getDocument from "../get/getDocument";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Returns an `HTMLElement` that matches the id in the document.
|
|
5
|
-
* Within multiple <iframe> elements, a `parent` parameter
|
|
6
|
-
* would decisively locate the correct element.
|
|
7
|
-
*
|
|
8
|
-
* @param id the ID selector
|
|
9
|
-
* @param context an element in it's document or document
|
|
10
|
-
* @returns the requested element
|
|
11
|
-
*/
|
|
12
|
-
const getElementById = <T extends HTMLElement>(id: string, context?: Node) => {
|
|
13
|
-
return (getDocument(context).getElementById(id) as T) || null;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
export default getElementById;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import getDocument from "../get/getDocument";
|
|
2
|
-
import isNode from "../is/isNode";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Shortcut for `HTMLElement.getElementsByClassName` method. Some `Node` elements
|
|
6
|
-
* like `ShadowRoot` do not support `getElementsByClassName`.
|
|
7
|
-
*
|
|
8
|
-
* @param selector the class name
|
|
9
|
-
* @param parent optional Element to look into
|
|
10
|
-
* @return the 'HTMLCollection'
|
|
11
|
-
*/
|
|
12
|
-
const getElementsByClassName = <T extends HTMLElement>(
|
|
13
|
-
selector: string,
|
|
14
|
-
parent?: ParentNode,
|
|
15
|
-
) => {
|
|
16
|
-
const lookUp = parent && isNode(parent) ? parent : getDocument();
|
|
17
|
-
return (lookUp as HTMLElement | Document).getElementsByClassName(
|
|
18
|
-
selector,
|
|
19
|
-
) as HTMLCollectionOf<T>;
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
export default getElementsByClassName;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import getDocument from "../get/getDocument";
|
|
2
|
-
import isNode from "../is/isNode";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Shortcut for `HTMLElement.getElementsByTagName` method. Some `Node` elements
|
|
6
|
-
* like `ShadowRoot` do not support `getElementsByTagName`.
|
|
7
|
-
*
|
|
8
|
-
* @param selector the tag name
|
|
9
|
-
* @param parent optional Element to look into
|
|
10
|
-
* @return the 'HTMLCollection'
|
|
11
|
-
*/
|
|
12
|
-
const getElementsByTagName = <T extends HTMLElement>(
|
|
13
|
-
selector: string,
|
|
14
|
-
parent?: ParentNode,
|
|
15
|
-
) => {
|
|
16
|
-
const lookUp = isNode(parent) ? parent : getDocument();
|
|
17
|
-
return (lookUp as Document).getElementsByTagName(
|
|
18
|
-
selector,
|
|
19
|
-
) as HTMLCollectionOf<T>;
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
export default getElementsByTagName;
|
package/src/selectors/matches.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Check if element matches a CSS selector.
|
|
3
|
-
*
|
|
4
|
-
* @param target the target element
|
|
5
|
-
* @param selector the selector to match
|
|
6
|
-
* @returns the query result
|
|
7
|
-
*/
|
|
8
|
-
const matches = (target: Element, selector: string): boolean =>
|
|
9
|
-
target.matches(selector);
|
|
10
|
-
|
|
11
|
-
export default matches;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import getDocument from "../get/getDocument";
|
|
2
|
-
import isNode from "../is/isNode";
|
|
3
|
-
import isHTMLElement from "../is/isHTMLElement";
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Utility to check if target is typeof `HTMLElement`, `Element`, `Node`
|
|
7
|
-
* or find one that matches a selector.
|
|
8
|
-
*
|
|
9
|
-
* @param selector the input selector or target element
|
|
10
|
-
* @param parent optional node to look into
|
|
11
|
-
* @return the `HTMLElement` or `querySelector` result
|
|
12
|
-
*/
|
|
13
|
-
const querySelector = <T extends HTMLElement>(
|
|
14
|
-
selector: HTMLElement | string,
|
|
15
|
-
parent?: ParentNode,
|
|
16
|
-
): T | null => {
|
|
17
|
-
if (isHTMLElement(selector)) {
|
|
18
|
-
return selector as T;
|
|
19
|
-
}
|
|
20
|
-
const lookUp = isNode(parent) ? parent : getDocument();
|
|
21
|
-
|
|
22
|
-
return lookUp.querySelector<T>(selector);
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
export default querySelector;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import getDocument from "../get/getDocument";
|
|
2
|
-
import isNode from "../is/isNode";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* A shortcut for `(document|Element).querySelectorAll`.
|
|
6
|
-
*
|
|
7
|
-
* @param selector the input selector
|
|
8
|
-
* @param parent optional node to look into
|
|
9
|
-
* @return the query result
|
|
10
|
-
*/
|
|
11
|
-
const querySelectorAll = <T extends HTMLElement>(
|
|
12
|
-
selector: string,
|
|
13
|
-
parent?: ParentNode,
|
|
14
|
-
): NodeListOf<T> => {
|
|
15
|
-
const lookUp = isNode(parent) ? parent : getDocument();
|
|
16
|
-
return lookUp.querySelectorAll(selector);
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export default querySelectorAll;
|
package/src/strings/ariaLabel.ts
DELETED
package/src/strings/ariaModal.ts
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A global namespace for predefined
|
|
3
|
-
* CSS3 'cubic-bezier()' easing functions.
|
|
4
|
-
*/
|
|
5
|
-
const bezierEasings = {
|
|
6
|
-
linear: "linear",
|
|
7
|
-
easingSinusoidalIn: "cubic-bezier(0.47,0,0.745,0.715)",
|
|
8
|
-
easingSinusoidalOut: "cubic-bezier(0.39,0.575,0.565,1)",
|
|
9
|
-
easingSinusoidalInOut: "cubic-bezier(0.445,0.05,0.55,0.95)",
|
|
10
|
-
easingQuadraticIn: "cubic-bezier(0.550,0.085,0.680,0.530)",
|
|
11
|
-
easingQuadraticOut: "cubic-bezier(0.250,0.460,0.450,0.940)",
|
|
12
|
-
easingQuadraticInOut: "cubic-bezier(0.455,0.030,0.515,0.955)",
|
|
13
|
-
easingCubicIn: "cubic-bezier(0.55,0.055,0.675,0.19)",
|
|
14
|
-
easingCubicOut: "cubic-bezier(0.215,0.61,0.355,1)",
|
|
15
|
-
easingCubicInOut: "cubic-bezier(0.645,0.045,0.355,1)",
|
|
16
|
-
easingQuarticIn: "cubic-bezier(0.895,0.03,0.685,0.22)",
|
|
17
|
-
easingQuarticOut: "cubic-bezier(0.165,0.84,0.44,1)",
|
|
18
|
-
easingQuarticInOut: "cubic-bezier(0.77,0,0.175,1)",
|
|
19
|
-
easingQuinticIn: "cubic-bezier(0.755,0.05,0.855,0.06)",
|
|
20
|
-
easingQuinticOut: "cubic-bezier(0.23,1,0.32,1)",
|
|
21
|
-
easingQuinticInOut: "cubic-bezier(0.86,0,0.07,1)",
|
|
22
|
-
easingExponentialIn: "cubic-bezier(0.95,0.05,0.795,0.035)",
|
|
23
|
-
easingExponentialOut: "cubic-bezier(0.19,1,0.22,1)",
|
|
24
|
-
easingExponentialInOut: "cubic-bezier(1,0,0,1)",
|
|
25
|
-
easingCircularIn: "cubic-bezier(0.6,0.04,0.98,0.335)",
|
|
26
|
-
easingCircularOut: "cubic-bezier(0.075,0.82,0.165,1)",
|
|
27
|
-
easingCircularInOut: "cubic-bezier(0.785,0.135,0.15,0.86)",
|
|
28
|
-
easingBackIn: "cubic-bezier(0.6,-0.28,0.735,0.045)",
|
|
29
|
-
easingBackOut: "cubic-bezier(0.175,0.885,0.32,1.275)",
|
|
30
|
-
easingBackInOut: "cubic-bezier(0.68,-0.55,0.265,1.55)",
|
|
31
|
-
};
|
|
32
|
-
export default bezierEasings;
|
package/src/strings/blurEvent.ts
DELETED
package/src/strings/dragEvent.ts
DELETED