@untemps/utils 3.0.0 → 3.1.0
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 +23 -0
- package/dist/array/extractByIndices.cjs +1 -1
- package/dist/array/extractByIndices.d.ts +18 -0
- package/dist/array/extractByIndices.d.ts.map +1 -0
- package/dist/array/extractByIndices.js +4 -4
- package/dist/async/standby.cjs +1 -1
- package/dist/async/standby.d.ts +20 -0
- package/dist/async/standby.d.ts.map +1 -0
- package/dist/async/standby.js +4 -4
- package/dist/dom/createElement.cjs +1 -1
- package/dist/dom/createElement.d.ts +52 -0
- package/dist/dom/createElement.d.ts.map +1 -0
- package/dist/dom/createElement.js +9 -18
- package/dist/dom/doElementsOverlap.cjs +1 -1
- package/dist/dom/doElementsOverlap.d.ts +29 -0
- package/dist/dom/doElementsOverlap.d.ts.map +1 -0
- package/dist/dom/doElementsOverlap.js +6 -6
- package/dist/dom/getCSSDeclaration.cjs +1 -1
- package/dist/dom/getCSSDeclaration.d.ts +22 -0
- package/dist/dom/getCSSDeclaration.d.ts.map +1 -0
- package/dist/dom/getCSSDeclaration.js +9 -12
- package/dist/dom/getElement.cjs +1 -1
- package/dist/dom/getElement.d.ts +19 -0
- package/dist/dom/getElement.d.ts.map +1 -0
- package/dist/dom/getElement.js +4 -4
- package/dist/dom/isElement.cjs +1 -1
- package/dist/dom/isElement.d.ts +16 -0
- package/dist/dom/isElement.d.ts.map +1 -0
- package/dist/dom/isElement.js +4 -4
- package/dist/dom/modifyElement.cjs +1 -1
- package/dist/dom/modifyElement.d.ts +20 -0
- package/dist/dom/modifyElement.d.ts.map +1 -0
- package/dist/dom/modifyElement.js +8 -10
- package/dist/dom/removeElement.cjs +1 -1
- package/dist/dom/removeElement.d.ts +19 -0
- package/dist/dom/removeElement.d.ts.map +1 -0
- package/dist/dom/removeElement.js +7 -8
- package/dist/dom/resolveClassName.cjs +1 -1
- package/dist/dom/resolveClassName.d.ts +22 -0
- package/dist/dom/resolveClassName.d.ts.map +1 -0
- package/dist/dom/resolveClassName.js +11 -10
- package/dist/function/isFunction.cjs +1 -1
- package/dist/function/isFunction.d.ts +16 -0
- package/dist/function/isFunction.d.ts.map +1 -0
- package/dist/function/isFunction.js +4 -4
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +22 -0
- package/dist/lang/isNil.cjs +1 -1
- package/dist/lang/isNil.d.ts +16 -0
- package/dist/lang/isNil.d.ts.map +1 -0
- package/dist/lang/isNil.js +4 -4
- package/dist/number/getRandomInteger.cjs +1 -1
- package/dist/number/getRandomInteger.d.ts +18 -0
- package/dist/number/getRandomInteger.d.ts.map +1 -0
- package/dist/number/getRandomInteger.js +7 -7
- package/dist/number/normalizeMinMax.cjs +1 -1
- package/dist/number/normalizeMinMax.d.ts +21 -0
- package/dist/number/normalizeMinMax.d.ts.map +1 -0
- package/dist/number/normalizeMinMax.js +6 -6
- package/dist/object/deepMerge.cjs +1 -1
- package/dist/object/deepMerge.d.ts +18 -0
- package/dist/object/deepMerge.d.ts.map +1 -0
- package/dist/object/deepMerge.js +7 -8
- package/dist/object/isObject.cjs +1 -1
- package/dist/object/isObject.d.ts +16 -0
- package/dist/object/isObject.d.ts.map +1 -0
- package/dist/object/isObject.js +4 -4
- package/dist/string/generateText.cjs +1 -1
- package/dist/string/generateText.d.ts +29 -0
- package/dist/string/generateText.d.ts.map +1 -0
- package/dist/string/generateText.js +18 -70
- package/dist/string/generateTokenizedText.cjs +1 -1
- package/dist/string/generateTokenizedText.d.ts +38 -0
- package/dist/string/generateTokenizedText.d.ts.map +1 -0
- package/dist/string/generateTokenizedText.js +18 -26
- package/dist/string/interpolate.cjs +1 -1
- package/dist/string/interpolate.d.ts +24 -0
- package/dist/string/interpolate.d.ts.map +1 -0
- package/dist/string/interpolate.js +10 -13
- package/dist/string/interpolateLiteral.cjs +1 -1
- package/dist/string/interpolateLiteral.d.ts +22 -0
- package/dist/string/interpolateLiteral.d.ts.map +1 -0
- package/dist/string/interpolateLiteral.js +4 -4
- package/dist/string/isString.cjs +1 -1
- package/dist/string/isString.d.ts +16 -0
- package/dist/string/isString.d.ts.map +1 -0
- package/dist/string/isString.js +4 -4
- package/package.json +32 -35
package/README.md
CHANGED
|
@@ -16,4 +16,27 @@ A complete documentation of utils is available here: [Docs](https://utils.untemp
|
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
18
|
yarn add @untemps/utils
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
This package ships with full TypeScript declarations. No additional `@types/*` package needed.
|
|
22
|
+
|
|
23
|
+
## Usage
|
|
24
|
+
|
|
25
|
+
### ESM / TypeScript
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
import { isNil, interpolate, createElement } from '@untemps/utils'
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Per-module (tree-shakeable)
|
|
32
|
+
|
|
33
|
+
```ts
|
|
34
|
+
import { isNil } from '@untemps/utils/lang/isNil'
|
|
35
|
+
import { interpolate } from '@untemps/utils/string/interpolate'
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### CommonJS
|
|
39
|
+
|
|
40
|
+
```js
|
|
41
|
+
const { isNil } = require('@untemps/utils')
|
|
19
42
|
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=(e,t)=>e?.filter((e,n)=>t?.includes(n))??[];exports.extractByIndices=e;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module array/extractByIndices
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { extractByIndices } from '@untemps/utils/array/extractByIndices'
|
|
8
|
+
*
|
|
9
|
+
* const source = ['foo', 'bar', 'gag', 'pol', 'zux']
|
|
10
|
+
* const indices = [1, 3]
|
|
11
|
+
* extractByIndices(source, indices) // ['bar', 'pol']
|
|
12
|
+
*
|
|
13
|
+
* @param source - The source array from which extract the values.
|
|
14
|
+
* @param indices - An array of indices.
|
|
15
|
+
* @returns A new array containing the values at the specified indices only.
|
|
16
|
+
*/
|
|
17
|
+
export declare const extractByIndices: <T>(source?: T[], indices?: number[]) => T[];
|
|
18
|
+
//# sourceMappingURL=extractByIndices.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extractByIndices.d.ts","sourceRoot":"","sources":["../../src/array/extractByIndices.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,UAAU,MAAM,EAAE,KAAG,CAAC,EACnB,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
1
|
+
//#region src/array/extractByIndices.ts
|
|
2
|
+
var e = (e, t) => e?.filter((e, n) => t?.includes(n)) ?? [];
|
|
3
|
+
//#endregion
|
|
4
|
+
export { e as extractByIndices };
|
package/dist/async/standby.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=(e=128)=>new Promise(t=>setTimeout(t,e));exports.standby=e;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module async/standby
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { standby } from '@untemps/utils/async/standby'
|
|
8
|
+
*
|
|
9
|
+
* const fn = async () => {
|
|
10
|
+
* console.log("Start delay")
|
|
11
|
+
* await standby(3000)
|
|
12
|
+
* console.log("End delay")
|
|
13
|
+
* }
|
|
14
|
+
* fn()
|
|
15
|
+
*
|
|
16
|
+
* @param timeout - The delay before resolving the promise (in milliseconds).
|
|
17
|
+
* @returns The promise to be resolved.
|
|
18
|
+
*/
|
|
19
|
+
export declare const standby: (timeout?: number) => Promise<void>;
|
|
20
|
+
//# sourceMappingURL=standby.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"standby.d.ts","sourceRoot":"","sources":["../../src/async/standby.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,OAAO,GAAI,gBAAa,KAAG,OAAO,CAAC,IAAI,CAA2D,CAAA"}
|
package/dist/async/standby.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
1
|
+
//#region src/async/standby.ts
|
|
2
|
+
var e = (e = 128) => new Promise((t) => setTimeout(t, e));
|
|
3
|
+
//#endregion
|
|
4
|
+
export { e as standby };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=({tag:e=`div`,attributes:t={},content:n=null,textContent:r=null,parent:i=null,parentSelector:a=null,boundingClientRect:o=null}={})=>{let s=document.createElement(e);for(let e in t)s.setAttribute(e,t[e]);n&&s.appendChild(n),r&&!s.hasChildNodes()&&s.appendChild(document.createTextNode(r));let c=i||document.querySelector(a);return c&&c.appendChild(s),o&&(s.getBoundingClientRect=()=>o),s};exports.createElement=e;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module dom/createElement
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Partial bounding rect used to mock getBoundingClientRect in jsdom environments.
|
|
6
|
+
*/
|
|
7
|
+
export interface BoundingClientRectInit {
|
|
8
|
+
x?: number;
|
|
9
|
+
y?: number;
|
|
10
|
+
left?: number;
|
|
11
|
+
right?: number;
|
|
12
|
+
top?: number;
|
|
13
|
+
bottom?: number;
|
|
14
|
+
width?: number;
|
|
15
|
+
height?: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Configuration object for createElement.
|
|
19
|
+
*/
|
|
20
|
+
export interface CreateElementConfig {
|
|
21
|
+
/** The tag name of the new DOM element to create. All valid HTML tags are accepted. */
|
|
22
|
+
tag?: string;
|
|
23
|
+
/** The attributes to pass to the new DOM element. */
|
|
24
|
+
attributes?: Record<string, string> | null;
|
|
25
|
+
/** A DOM element to append as child. Has precedence over textContent. */
|
|
26
|
+
content?: HTMLElement | null;
|
|
27
|
+
/** A text to append as child of the new DOM element. */
|
|
28
|
+
textContent?: string | null;
|
|
29
|
+
/** A DOM element to which append the new DOM element. Has precedence over parentSelector. */
|
|
30
|
+
parent?: HTMLElement | null;
|
|
31
|
+
/** A selector of a DOM element to which append the new DOM element. */
|
|
32
|
+
parentSelector?: string | null;
|
|
33
|
+
/** The values returned by getBoundingClientRect. Useful in jsdom environment. */
|
|
34
|
+
boundingClientRect?: BoundingClientRectInit | null;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* @function
|
|
38
|
+
* @example
|
|
39
|
+
* import { createElement } from '@untemps/utils/dom/createElement'
|
|
40
|
+
*
|
|
41
|
+
* createElement({
|
|
42
|
+
* tag: 'p',
|
|
43
|
+
* attributes: { id: 'foo', style: 'font-weight: bold' },
|
|
44
|
+
* textContent: 'Foo',
|
|
45
|
+
* parentSelector: 'body'
|
|
46
|
+
* }) // <p id="foo" style="font-weight: bold">Foo</p>
|
|
47
|
+
*
|
|
48
|
+
* @param config - The configuration object for the new DOM element.
|
|
49
|
+
* @returns The new DOM element.
|
|
50
|
+
*/
|
|
51
|
+
export declare const createElement: ({ tag, attributes, content, textContent, parent, parentSelector, boundingClientRect, }?: CreateElementConfig) => HTMLElement;
|
|
52
|
+
//# sourceMappingURL=createElement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createElement.d.ts","sourceRoot":"","sources":["../../src/dom/createElement.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,uFAAuF;IACvF,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;IAC1C,yEAAyE;IACzE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,6FAA6F;IAC7F,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC3B,uEAAuE;IACvE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,iFAAiF;IACjF,kBAAkB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAA;CAClD;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,GAAI,yFAQ3B,mBAAwB,KAAG,WAmB7B,CAAA"}
|
|
@@ -1,19 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
boundingClientRect: t = null
|
|
9
|
-
} = {}) => {
|
|
10
|
-
const e = document.createElement(r);
|
|
11
|
-
for (let o in l)
|
|
12
|
-
e.setAttribute(o, l[o]);
|
|
13
|
-
n && e.appendChild(n), d && !e.hasChildNodes() && e.appendChild(document.createTextNode(d));
|
|
14
|
-
const i = u || document.querySelector(c);
|
|
15
|
-
return i && i.appendChild(e), t && (e.getBoundingClientRect = () => t), e;
|
|
16
|
-
};
|
|
17
|
-
export {
|
|
18
|
-
p as createElement
|
|
1
|
+
//#region src/dom/createElement.ts
|
|
2
|
+
var e = ({ tag: e = "div", attributes: t = {}, content: n = null, textContent: r = null, parent: i = null, parentSelector: a = null, boundingClientRect: o = null } = {}) => {
|
|
3
|
+
let s = document.createElement(e);
|
|
4
|
+
for (let e in t) s.setAttribute(e, t[e]);
|
|
5
|
+
n && s.appendChild(n), r && !s.hasChildNodes() && s.appendChild(document.createTextNode(r));
|
|
6
|
+
let c = i || document.querySelector(a);
|
|
7
|
+
return c && c.appendChild(s), o && (s.getBoundingClientRect = () => o), s;
|
|
19
8
|
};
|
|
9
|
+
//#endregion
|
|
10
|
+
export { e as createElement };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=(e,t)=>{let{left:n,right:r,top:i,bottom:a}=e.getBoundingClientRect(),{left:o,right:s,top:c,bottom:l}=t.getBoundingClientRect();return!(i>l||r<o||a<c||n>s)};exports.doElementsOverlap=e;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module dom/doElementsOverlap
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { doElementsOverlap } from '@untemps/utils/dom/doElementsOverlap'
|
|
8
|
+
*
|
|
9
|
+
* const element1 = document.createElement('div')
|
|
10
|
+
* element1.style = 'width: 140px; height: 140px; position: absolute; background-color: red;'
|
|
11
|
+
* document.body.appendChild(element1)
|
|
12
|
+
*
|
|
13
|
+
* const element2 = document.createElement('div')
|
|
14
|
+
* element2.style = 'width: 130px; height: 130px; position: absolute; background-color: green;'
|
|
15
|
+
* document.body.appendChild(element2)
|
|
16
|
+
*
|
|
17
|
+
* const element3 = document.createElement('div')
|
|
18
|
+
* element3.style = 'width: 130px; height: 130px; left: 250px; top: 250px; position: absolute; background-color: blue;'
|
|
19
|
+
* document.body.appendChild(element3)
|
|
20
|
+
*
|
|
21
|
+
* doElementsOverlap(element1, element2) // true
|
|
22
|
+
* doElementsOverlap(element1, element3) // false
|
|
23
|
+
*
|
|
24
|
+
* @param element1 - The first DOM element to compare.
|
|
25
|
+
* @param element2 - The second DOM element to compare.
|
|
26
|
+
* @returns `true` if the two DOM elements overlap.
|
|
27
|
+
*/
|
|
28
|
+
export declare const doElementsOverlap: (element1: Element, element2: Element) => boolean;
|
|
29
|
+
//# sourceMappingURL=doElementsOverlap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doElementsOverlap.d.ts","sourceRoot":"","sources":["../../src/dom/doElementsOverlap.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,iBAAiB,GAAI,UAAU,OAAO,EAAE,UAAU,OAAO,KAAG,OAIxE,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export {
|
|
6
|
-
m as doElementsOverlap
|
|
1
|
+
//#region src/dom/doElementsOverlap.ts
|
|
2
|
+
var e = (e, t) => {
|
|
3
|
+
let { left: n, right: r, top: i, bottom: a } = e.getBoundingClientRect(), { left: o, right: s, top: c, bottom: l } = t.getBoundingClientRect();
|
|
4
|
+
return !(i > l || r < o || a < c || n > s);
|
|
7
5
|
};
|
|
6
|
+
//#endregion
|
|
7
|
+
export { e as doElementsOverlap };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=(e,t=!1)=>{if(e&&(e=e.startsWith(`.`)?e:`.${e}`,document.styleSheets?.length))for(let n of document.styleSheets)for(let r of n.cssRules){let n=r;if(n.selectorText===e&&n.style)return t?n.style.cssText:n.style}return null};exports.getCSSDeclaration=e;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module dom/getCSSDeclaration
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { getCSSDeclaration } from '@untemps/utils/dom/getCSSDeclaration'
|
|
8
|
+
*
|
|
9
|
+
* const styleElement = document.createElement('style')
|
|
10
|
+
* styleElement.textContent = '.drag { background-color: black; }'
|
|
11
|
+
* document.head.appendChild(styleElement)
|
|
12
|
+
*
|
|
13
|
+
* const className = '.drag'
|
|
14
|
+
* const returnText = true
|
|
15
|
+
* getCSSDeclaration(className, returnText) // background-color: black;
|
|
16
|
+
*
|
|
17
|
+
* @param className - The name of the CSS declaration to return. You may ignore the starting dot.
|
|
18
|
+
* @param returnText - `true` to get a string representation of the CSS declaration.
|
|
19
|
+
* @returns The CSS declaration or null if the CSS declaration is not found.
|
|
20
|
+
*/
|
|
21
|
+
export declare const getCSSDeclaration: (className: string, returnText?: boolean) => CSSStyleDeclaration | string | null;
|
|
22
|
+
//# sourceMappingURL=getCSSDeclaration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCSSDeclaration.d.ts","sourceRoot":"","sources":["../../src/dom/getCSSDeclaration.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,iBAAiB,GAAI,WAAW,MAAM,EAAE,oBAAkB,KAAG,mBAAmB,GAAG,MAAM,GAAG,IAexG,CAAA"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
return null;
|
|
10
|
-
};
|
|
11
|
-
export {
|
|
12
|
-
l as getCSSDeclaration
|
|
1
|
+
//#region src/dom/getCSSDeclaration.ts
|
|
2
|
+
var e = (e, t = !1) => {
|
|
3
|
+
if (e && (e = e.startsWith(".") ? e : `.${e}`, document.styleSheets?.length)) for (let n of document.styleSheets) for (let r of n.cssRules) {
|
|
4
|
+
let n = r;
|
|
5
|
+
if (n.selectorText === e && n.style) return t ? n.style.cssText : n.style;
|
|
6
|
+
}
|
|
7
|
+
return null;
|
|
13
8
|
};
|
|
9
|
+
//#endregion
|
|
10
|
+
export { e as getCSSDeclaration };
|
package/dist/dom/getElement.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>document.querySelector(e);exports.getElement=e;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module dom/getElement
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { getElement } from '@untemps/utils/dom/getElement'
|
|
8
|
+
*
|
|
9
|
+
* const element = document.createElement('div')
|
|
10
|
+
* element.id = 'my-element'
|
|
11
|
+
* document.body.appendChild(element)
|
|
12
|
+
*
|
|
13
|
+
* getElement('#my-element') // <div id="my-element"></div>
|
|
14
|
+
*
|
|
15
|
+
* @param selector - The selector of the DOM element to return.
|
|
16
|
+
* @returns The DOM element corresponding to the selector.
|
|
17
|
+
*/
|
|
18
|
+
export declare const getElement: <T extends Element = HTMLElement>(selector: string) => T | null;
|
|
19
|
+
//# sourceMappingURL=getElement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getElement.d.ts","sourceRoot":"","sources":["../../src/dom/getElement.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,OAAO,GAAG,WAAW,EAAE,UAAU,MAAM,KAAG,CAAC,GAAG,IAC/C,CAAA"}
|
package/dist/dom/getElement.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
1
|
+
//#region src/dom/getElement.ts
|
|
2
|
+
var e = (e) => document.querySelector(e);
|
|
3
|
+
//#endregion
|
|
4
|
+
export { e as getElement };
|
package/dist/dom/isElement.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>e?.nodeType===1;exports.isElement=e;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module dom/isElement
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { isElement } from '@untemps/utils/dom/isElement'
|
|
8
|
+
*
|
|
9
|
+
* isElement(document.createElement('div')) // true
|
|
10
|
+
* isElement(42) // false
|
|
11
|
+
*
|
|
12
|
+
* @param value - The value to check.
|
|
13
|
+
* @returns `true` whether the value is a DOM element.
|
|
14
|
+
*/
|
|
15
|
+
export declare const isElement: (value: unknown) => value is Element;
|
|
16
|
+
//# sourceMappingURL=isElement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isElement.d.ts","sourceRoot":"","sources":["../../src/dom/isElement.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,OAA6C,CAAA"}
|
package/dist/dom/isElement.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
1
|
+
//#region src/dom/isElement.ts
|
|
2
|
+
var e = (e) => e?.nodeType === 1;
|
|
3
|
+
//#endregion
|
|
4
|
+
export { e as isElement };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../string/isString.cjs`);var t=(t,n={})=>{let r=e.isString(t)?document.querySelector(t):t;for(let e in n)n[e]===void 0||n[e]===null?r?.removeAttribute(e):r?.setAttribute(e,n[e]);return r};exports.modifyElement=t;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module dom/modifyElement
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { modifyElement } from '@untemps/utils/dom/modifyElement'
|
|
8
|
+
*
|
|
9
|
+
* const element = document.createElement('div')
|
|
10
|
+
* element.className = 'foo'
|
|
11
|
+
* document.body.appendChild(element)
|
|
12
|
+
*
|
|
13
|
+
* modifyElement(element, { className: 'bar' }) // <div class="bar"></div>
|
|
14
|
+
*
|
|
15
|
+
* @param element - The DOM element or selector of the DOM element to modify.
|
|
16
|
+
* @param attributes - The new attributes to set to the DOM element.
|
|
17
|
+
* @returns The modified DOM element.
|
|
18
|
+
*/
|
|
19
|
+
export declare const modifyElement: (element: HTMLElement | string, attributes?: Record<string, string | null | undefined>) => HTMLElement | null;
|
|
20
|
+
//# sourceMappingURL=modifyElement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modifyElement.d.ts","sourceRoot":"","sources":["../../src/dom/modifyElement.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,GACzB,SAAS,WAAW,GAAG,MAAM,EAC7B,aAAY,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAM,KACxD,WAAW,GAAG,IAUhB,CAAA"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { isString as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
return o;
|
|
8
|
-
};
|
|
9
|
-
export {
|
|
10
|
-
t as modifyElement
|
|
1
|
+
import { isString as e } from "../string/isString.js";
|
|
2
|
+
//#region src/dom/modifyElement.ts
|
|
3
|
+
var t = (t, n = {}) => {
|
|
4
|
+
let r = e(t) ? document.querySelector(t) : t;
|
|
5
|
+
for (let e in n) n[e] === void 0 || n[e] === null ? r?.removeAttribute(e) : r?.setAttribute(e, n[e]);
|
|
6
|
+
return r;
|
|
11
7
|
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { t as modifyElement };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../string/isString.cjs`);var t=t=>{let n=e.isString(t)?document.querySelector(t):t;return n?.parentNode?.removeChild(n)};exports.removeElement=t;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module dom/removeElement
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { removeElement } from '@untemps/utils/dom/removeElement'
|
|
8
|
+
*
|
|
9
|
+
* const element = document.createElement('div')
|
|
10
|
+
* element.className = 'foo'
|
|
11
|
+
* document.body.appendChild(element)
|
|
12
|
+
*
|
|
13
|
+
* removeElement(element) // <div class="foo"></div>
|
|
14
|
+
*
|
|
15
|
+
* @param element - The DOM element or the selector of the DOM element to remove.
|
|
16
|
+
* @returns The removed DOM element.
|
|
17
|
+
*/
|
|
18
|
+
export declare const removeElement: (element: HTMLElement | string) => HTMLElement | undefined;
|
|
19
|
+
//# sourceMappingURL=removeElement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removeElement.d.ts","sourceRoot":"","sources":["../../src/dom/removeElement.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,aAAa,GAAI,SAAS,WAAW,GAAG,MAAM,KAAG,WAAW,GAAG,SAG3E,CAAA"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { isString as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
};
|
|
7
|
-
export {
|
|
8
|
-
m as removeElement
|
|
1
|
+
import { isString as e } from "../string/isString.js";
|
|
2
|
+
//#region src/dom/removeElement.ts
|
|
3
|
+
var t = (t) => {
|
|
4
|
+
let n = e(t) ? document.querySelector(t) : t;
|
|
5
|
+
return n?.parentNode?.removeChild(n);
|
|
9
6
|
};
|
|
7
|
+
//#endregion
|
|
8
|
+
export { t as removeElement };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>e?.length?e.reduce((e,n)=>{let r;if(Array.isArray(n)){let[e,t,i]=n;r=e?t:i}else r=n;return t(r)?[...e,r]:e},[]).join(` `):``,t=e=>e&&typeof e==`string`?e:null;exports.resolveClassName=e;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module dom/resolveClassName
|
|
3
|
+
*/
|
|
4
|
+
export type ClassConditionTuple = [condition: unknown, truthyValue: string, falsyValue?: string];
|
|
5
|
+
export type ClassEntry = string | ClassConditionTuple;
|
|
6
|
+
/**
|
|
7
|
+
* @function
|
|
8
|
+
* @example
|
|
9
|
+
* import { resolveClassName } from '@untemps/utils/dom/resolveClassName'
|
|
10
|
+
*
|
|
11
|
+
* const input = [
|
|
12
|
+
* [true, 'foo', 'bar'],
|
|
13
|
+
* [false, 'foo', 'bar'],
|
|
14
|
+
* 'gag',
|
|
15
|
+
* ]
|
|
16
|
+
* resolveClassName(input) // 'foo bar gag'
|
|
17
|
+
*
|
|
18
|
+
* @param input - Array of conditions to evaluate. A condition is an array with 3 items: [condition, class if true, class if false]. You may pass a classname as string instead of a condition.
|
|
19
|
+
* @returns The aggregated class names.
|
|
20
|
+
*/
|
|
21
|
+
export declare const resolveClassName: (input?: ClassEntry[]) => string;
|
|
22
|
+
//# sourceMappingURL=resolveClassName.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveClassName.d.ts","sourceRoot":"","sources":["../../src/dom/resolveClassName.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAA;AAChG,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,mBAAmB,CAAA;AAErD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,UAAU,EAAE,KAAG,MAcvD,CAAA"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
//#region src/dom/resolveClassName.ts
|
|
2
|
+
var e = (e) => e?.length ? e.reduce((e, n) => {
|
|
3
|
+
let r;
|
|
4
|
+
if (Array.isArray(n)) {
|
|
5
|
+
let [e, t, i] = n;
|
|
6
|
+
r = e ? t : i;
|
|
7
|
+
} else r = n;
|
|
8
|
+
return t(r) ? [...e, r] : e;
|
|
9
|
+
}, []).join(" ") : "", t = (e) => e && typeof e == "string" ? e : null;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { e as resolveClassName };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>typeof e==`function`;exports.isFunction=e;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module function/isFunction
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @function
|
|
6
|
+
* @example
|
|
7
|
+
* import { isFunction } from '@untemps/utils/function/isFunction'
|
|
8
|
+
*
|
|
9
|
+
* isFunction(() => {}) // true
|
|
10
|
+
* isFunction(42) // false
|
|
11
|
+
*
|
|
12
|
+
* @param value - The value to check.
|
|
13
|
+
* @returns `true` whether the value is a function.
|
|
14
|
+
*/
|
|
15
|
+
export declare const isFunction: (value: unknown) => value is (...args: unknown[]) => unknown;
|
|
16
|
+
//# sourceMappingURL=isFunction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isFunction.d.ts","sourceRoot":"","sources":["../../src/function/isFunction.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAsC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
1
|
+
//#region src/function/isFunction.ts
|
|
2
|
+
var e = (e) => typeof e == "function";
|
|
3
|
+
//#endregion
|
|
4
|
+
export { e as isFunction };
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./array/extractByIndices.cjs`),t=require(`./async/standby.cjs`),n=require(`./dom/createElement.cjs`),r=require(`./dom/doElementsOverlap.cjs`),i=require(`./dom/getCSSDeclaration.cjs`),a=require(`./dom/getElement.cjs`),o=require(`./dom/isElement.cjs`),s=require(`./string/isString.cjs`),c=require(`./dom/modifyElement.cjs`),l=require(`./dom/removeElement.cjs`),u=require(`./dom/resolveClassName.cjs`),d=require(`./function/isFunction.cjs`),f=require(`./lang/isNil.cjs`),p=require(`./number/normalizeMinMax.cjs`),m=require(`./number/getRandomInteger.cjs`),h=require(`./object/isObject.cjs`),g=require(`./object/deepMerge.cjs`),_=require(`./string/generateText.cjs`),v=require(`./string/generateTokenizedText.cjs`),y=require(`./string/interpolate.cjs`),b=require(`./string/interpolateLiteral.cjs`);exports.createElement=n.createElement,exports.deepMerge=g.deepMerge,exports.doElementsOverlap=r.doElementsOverlap,exports.extractByIndices=e.extractByIndices,exports.generateText=_.generateText,exports.generateTokenizedText=v.generateTokenizedText,exports.getCSSDeclaration=i.getCSSDeclaration,exports.getElement=a.getElement,exports.getRandomInteger=m.getRandomInteger,exports.interpolate=y.interpolate,exports.interpolateLiteral=b.interpolateLiteral,exports.isElement=o.isElement,exports.isFunction=d.isFunction,exports.isNil=f.isNil,exports.isObject=h.isObject,exports.isString=s.isString,exports.modifyElement=c.modifyElement,exports.normalizeMinMax=p.normalizeMinMax,exports.removeElement=l.removeElement,exports.resolveClassName=u.resolveClassName,exports.standby=t.standby;
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export { extractByIndices } from './array/extractByIndices';
|
|
2
|
+
export { standby } from './async/standby';
|
|
3
|
+
export { createElement } from './dom/createElement';
|
|
4
|
+
export type { BoundingClientRectInit, CreateElementConfig } from './dom/createElement';
|
|
5
|
+
export { doElementsOverlap } from './dom/doElementsOverlap';
|
|
6
|
+
export { getCSSDeclaration } from './dom/getCSSDeclaration';
|
|
7
|
+
export { getElement } from './dom/getElement';
|
|
8
|
+
export { isElement } from './dom/isElement';
|
|
9
|
+
export { modifyElement } from './dom/modifyElement';
|
|
10
|
+
export { removeElement } from './dom/removeElement';
|
|
11
|
+
export { resolveClassName } from './dom/resolveClassName';
|
|
12
|
+
export type { ClassConditionTuple, ClassEntry } from './dom/resolveClassName';
|
|
13
|
+
export { isFunction } from './function/isFunction';
|
|
14
|
+
export { isNil } from './lang/isNil';
|
|
15
|
+
export { getRandomInteger } from './number/getRandomInteger';
|
|
16
|
+
export { normalizeMinMax } from './number/normalizeMinMax';
|
|
17
|
+
export { deepMerge } from './object/deepMerge';
|
|
18
|
+
export { isObject } from './object/isObject';
|
|
19
|
+
export { generateText } from './string/generateText';
|
|
20
|
+
export type { GenerateTextConfig } from './string/generateText';
|
|
21
|
+
export { generateTokenizedText } from './string/generateTokenizedText';
|
|
22
|
+
export type { GenerateTokenizedTextConfig } from './string/generateTokenizedText';
|
|
23
|
+
export { interpolate } from './string/interpolate';
|
|
24
|
+
export { interpolateLiteral } from './string/interpolateLiteral';
|
|
25
|
+
export { isString } from './string/isString';
|
|
26
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,YAAY,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AACtE,YAAY,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA"}
|