@design-edito/tools 0.1.30 → 0.1.31

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.
Files changed (34) hide show
  1. package/agnostic/css/index.js +10 -10
  2. package/agnostic/errors/index.js +2 -2
  3. package/agnostic/html/get-node-ancestors/index.d.ts +1 -1
  4. package/agnostic/html/get-node-ancestors/index.js +1 -1
  5. package/agnostic/html/index.js +13 -13
  6. package/agnostic/html/sanitize/index.js +6 -6
  7. package/agnostic/html/selector-to-element/index.js +6 -6
  8. package/agnostic/html/string-to-nodes/index.js +7 -7
  9. package/agnostic/misc/cast/index.d.ts +1 -0
  10. package/agnostic/misc/cast/index.js +1 -1
  11. package/agnostic/misc/crossenv/index.js +2 -2
  12. package/agnostic/misc/index.js +11 -11
  13. package/agnostic/misc/logs/index.js +2 -2
  14. package/agnostic/misc/lorem-ipsum/index.js +2 -2
  15. package/agnostic/numbers/index.js +3 -3
  16. package/agnostic/numbers/interpolate/index.d.ts +1 -0
  17. package/agnostic/numbers/interpolate/index.js +3 -1
  18. package/agnostic/objects/flatten-getters/index.js +2 -2
  19. package/agnostic/objects/index.js +7 -7
  20. package/agnostic/strings/index.js +5 -5
  21. package/agnostic/time/index.js +4 -4
  22. package/chunks/chunk-BJAYUP7M.js +13 -0
  23. package/chunks/chunk-BVCWBTHQ.js +35 -0
  24. package/chunks/chunk-C5753KUP.js +127 -0
  25. package/chunks/chunk-CAMYGA44.js +22 -0
  26. package/chunks/chunk-FR5H2OCV.js +21 -0
  27. package/chunks/chunk-GPWFYPER.js +211 -0
  28. package/chunks/chunk-LUPVHC73.js +17 -0
  29. package/chunks/chunk-NFUY7SLX.js +211 -0
  30. package/chunks/chunk-SNJJII7A.js +65 -0
  31. package/chunks/chunk-VFJYLXCI.js +23 -0
  32. package/chunks/chunk-VKURVIRV.js +28 -0
  33. package/node/files/index.js +3 -3
  34. package/package.json +1 -1
@@ -1,19 +1,20 @@
1
1
  import {
2
2
  register
3
- } from "../../chunks/chunk-CB52KVOZ.js";
4
- import "../../chunks/chunk-UFKH5WD2.js";
5
- import "../../chunks/chunk-RLJOYG64.js";
3
+ } from "../../chunks/chunk-CAMYGA44.js";
4
+ import "../../chunks/chunk-FR5H2OCV.js";
6
5
  import "../../chunks/chunk-S2NMAH7K.js";
7
6
  import "../../chunks/chunk-LV2VMOWR.js";
7
+ import "../../chunks/chunk-RLJOYG64.js";
8
8
  import {
9
9
  Random
10
10
  } from "../../chunks/chunk-S32K7POB.js";
11
11
  import "../../chunks/chunk-D3ERTRDW.js";
12
12
  import "../../chunks/chunk-75BICI4L.js";
13
13
  import "../../chunks/chunk-OGBUSUE6.js";
14
- import "../../chunks/chunk-2KT7AKRW.js";
15
- import "../../chunks/chunk-FENXVJYO.js";
16
- import "../../chunks/chunk-QHLQVR3E.js";
14
+ import {
15
+ generateNiceColor,
16
+ niceColors
17
+ } from "../../chunks/chunk-EDVNAV3G.js";
17
18
  import {
18
19
  Bem
19
20
  } from "../../chunks/chunk-KIONYWA7.js";
@@ -21,12 +22,11 @@ import {
21
22
  classNameRegex,
22
23
  isValidClassName
23
24
  } from "../../chunks/chunk-W5A2TON3.js";
25
+ import "../../chunks/chunk-WH6BPDAC.js";
26
+ import "../../chunks/chunk-QHLQVR3E.js";
27
+ import "../../chunks/chunk-FENXVJYO.js";
24
28
  import "../../chunks/chunk-QXAJXTXV.js";
25
29
  import "../../chunks/chunk-HC6ZOHCS.js";
26
- import {
27
- generateNiceColor,
28
- niceColors
29
- } from "../../chunks/chunk-EDVNAV3G.js";
30
30
 
31
31
  // src/agnostic/css/styles-set/index.tsx
32
32
  import { Component } from "react";
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  Errors
3
- } from "../../chunks/chunk-2KT7AKRW.js";
4
- import "../../chunks/chunk-FENXVJYO.js";
3
+ } from "../../chunks/chunk-WH6BPDAC.js";
5
4
  import "../../chunks/chunk-QHLQVR3E.js";
5
+ import "../../chunks/chunk-FENXVJYO.js";
6
6
  export {
7
7
  Errors
8
8
  };
@@ -1 +1 @@
1
- export declare function getNodeAncestors(node: Node): Element[];
1
+ export declare function getNodeAncestors(node: Node, traverseShadowRoots?: boolean): Node[];
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getNodeAncestors
3
- } from "../../../chunks/chunk-SQZGZ3VT.js";
3
+ } from "../../../chunks/chunk-LUPVHC73.js";
4
4
  export {
5
5
  getNodeAncestors
6
6
  };
@@ -4,39 +4,39 @@ import {
4
4
  import "../../chunks/chunk-BQV4DOSE.js";
5
5
  import "../../chunks/chunk-ZCPGE7H7.js";
6
6
  import "../../chunks/chunk-5GI5G45R.js";
7
+ import {
8
+ getPositionInsideParent
9
+ } from "../../chunks/chunk-VTPRO4NJ.js";
7
10
  import {
8
11
  getNodeAncestors
9
- } from "../../chunks/chunk-SQZGZ3VT.js";
12
+ } from "../../chunks/chunk-LUPVHC73.js";
10
13
  import {
11
14
  insertNode
12
15
  } from "../../chunks/chunk-XA4HVHJ4.js";
13
- import {
14
- getPositionInsideParent
15
- } from "../../chunks/chunk-VTPRO4NJ.js";
16
16
  import {
17
17
  Placeholders
18
18
  } from "../../chunks/chunk-VYW4IADX.js";
19
- import "../../chunks/chunk-GBMHGF7P.js";
20
19
  import {
21
20
  selectorToElement
22
- } from "../../chunks/chunk-EVOTJ7SU.js";
21
+ } from "../../chunks/chunk-BVCWBTHQ.js";
22
+ import "../../chunks/chunk-GBMHGF7P.js";
23
23
  import {
24
24
  stringToNodes
25
- } from "../../chunks/chunk-NWFX6TEY.js";
25
+ } from "../../chunks/chunk-VKURVIRV.js";
26
26
  import {
27
27
  Sanitize
28
- } from "../../chunks/chunk-WABWQCFE.js";
28
+ } from "../../chunks/chunk-C5753KUP.js";
29
29
  import "../../chunks/chunk-YDIBNEGA.js";
30
30
  import "../../chunks/chunk-E6MSDKON.js";
31
31
  import "../../chunks/chunk-MF56TTC5.js";
32
- import "../../chunks/chunk-CB52KVOZ.js";
33
- import "../../chunks/chunk-UFKH5WD2.js";
34
- import "../../chunks/chunk-RLJOYG64.js";
32
+ import "../../chunks/chunk-CAMYGA44.js";
33
+ import "../../chunks/chunk-FR5H2OCV.js";
35
34
  import "../../chunks/chunk-S2NMAH7K.js";
36
35
  import "../../chunks/chunk-LV2VMOWR.js";
37
- import "../../chunks/chunk-2KT7AKRW.js";
38
- import "../../chunks/chunk-FENXVJYO.js";
36
+ import "../../chunks/chunk-RLJOYG64.js";
37
+ import "../../chunks/chunk-WH6BPDAC.js";
39
38
  import "../../chunks/chunk-QHLQVR3E.js";
39
+ import "../../chunks/chunk-FENXVJYO.js";
40
40
  import "../../chunks/chunk-QXAJXTXV.js";
41
41
  import "../../chunks/chunk-HC6ZOHCS.js";
42
42
 
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  Sanitize
3
- } from "../../../chunks/chunk-WABWQCFE.js";
4
- import "../../../chunks/chunk-CB52KVOZ.js";
5
- import "../../../chunks/chunk-UFKH5WD2.js";
6
- import "../../../chunks/chunk-RLJOYG64.js";
3
+ } from "../../../chunks/chunk-C5753KUP.js";
4
+ import "../../../chunks/chunk-CAMYGA44.js";
5
+ import "../../../chunks/chunk-FR5H2OCV.js";
7
6
  import "../../../chunks/chunk-S2NMAH7K.js";
8
7
  import "../../../chunks/chunk-LV2VMOWR.js";
9
- import "../../../chunks/chunk-2KT7AKRW.js";
10
- import "../../../chunks/chunk-FENXVJYO.js";
8
+ import "../../../chunks/chunk-RLJOYG64.js";
9
+ import "../../../chunks/chunk-WH6BPDAC.js";
11
10
  import "../../../chunks/chunk-QHLQVR3E.js";
11
+ import "../../../chunks/chunk-FENXVJYO.js";
12
12
  export {
13
13
  Sanitize
14
14
  };
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  selectorToElement
3
- } from "../../../chunks/chunk-EVOTJ7SU.js";
4
- import "../../../chunks/chunk-CB52KVOZ.js";
5
- import "../../../chunks/chunk-UFKH5WD2.js";
6
- import "../../../chunks/chunk-RLJOYG64.js";
3
+ } from "../../../chunks/chunk-BVCWBTHQ.js";
4
+ import "../../../chunks/chunk-CAMYGA44.js";
5
+ import "../../../chunks/chunk-FR5H2OCV.js";
7
6
  import "../../../chunks/chunk-S2NMAH7K.js";
8
7
  import "../../../chunks/chunk-LV2VMOWR.js";
9
- import "../../../chunks/chunk-2KT7AKRW.js";
10
- import "../../../chunks/chunk-FENXVJYO.js";
8
+ import "../../../chunks/chunk-RLJOYG64.js";
9
+ import "../../../chunks/chunk-WH6BPDAC.js";
11
10
  import "../../../chunks/chunk-QHLQVR3E.js";
11
+ import "../../../chunks/chunk-FENXVJYO.js";
12
12
  export {
13
13
  selectorToElement
14
14
  };
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  stringToNodes
3
- } from "../../../chunks/chunk-NWFX6TEY.js";
4
- import "../../../chunks/chunk-WABWQCFE.js";
5
- import "../../../chunks/chunk-CB52KVOZ.js";
6
- import "../../../chunks/chunk-UFKH5WD2.js";
7
- import "../../../chunks/chunk-RLJOYG64.js";
3
+ } from "../../../chunks/chunk-VKURVIRV.js";
4
+ import "../../../chunks/chunk-C5753KUP.js";
5
+ import "../../../chunks/chunk-CAMYGA44.js";
6
+ import "../../../chunks/chunk-FR5H2OCV.js";
8
7
  import "../../../chunks/chunk-S2NMAH7K.js";
9
8
  import "../../../chunks/chunk-LV2VMOWR.js";
10
- import "../../../chunks/chunk-2KT7AKRW.js";
11
- import "../../../chunks/chunk-FENXVJYO.js";
9
+ import "../../../chunks/chunk-RLJOYG64.js";
10
+ import "../../../chunks/chunk-WH6BPDAC.js";
12
11
  import "../../../chunks/chunk-QHLQVR3E.js";
12
+ import "../../../chunks/chunk-FENXVJYO.js";
13
13
  export {
14
14
  stringToNodes
15
15
  };
@@ -6,4 +6,5 @@ export declare namespace Cast {
6
6
  function toArray(value: unknown): any[];
7
7
  function toNumberArr(value: unknown): number[];
8
8
  function toRecord(value: unknown): Record<string, unknown>;
9
+ function toError(value: unknown): Error;
9
10
  }
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Cast
3
- } from "../../../chunks/chunk-4QQBKBYH.js";
3
+ } from "../../../chunks/chunk-SNJJII7A.js";
4
4
  import "../../../chunks/chunk-QXAJXTXV.js";
5
5
  import "../../../chunks/chunk-HC6ZOHCS.js";
6
6
  export {
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Crossenv
3
- } from "../../../chunks/chunk-UFKH5WD2.js";
4
- import "../../../chunks/chunk-RLJOYG64.js";
3
+ } from "../../../chunks/chunk-FR5H2OCV.js";
5
4
  import "../../../chunks/chunk-S2NMAH7K.js";
6
5
  import "../../../chunks/chunk-LV2VMOWR.js";
6
+ import "../../../chunks/chunk-RLJOYG64.js";
7
7
  export {
8
8
  Crossenv
9
9
  };
@@ -1,38 +1,38 @@
1
1
  import {
2
2
  Logs
3
- } from "../../chunks/chunk-G2NZXHW6.js";
3
+ } from "../../chunks/chunk-TEB7KZWB.js";
4
+ import "../../chunks/chunk-JWKI6G6E.js";
4
5
  import "../../chunks/chunk-L3OCRR3V.js";
5
6
  import "../../chunks/chunk-H4PP6AHP.js";
6
- import "../../chunks/chunk-JWKI6G6E.js";
7
- import {
8
- getCurrentDownlink
9
- } from "../../chunks/chunk-7AWTHZLY.js";
10
7
  import {
11
8
  Cast
12
- } from "../../chunks/chunk-4QQBKBYH.js";
9
+ } from "../../chunks/chunk-SNJJII7A.js";
13
10
  import {
14
11
  Crawler
15
12
  } from "../../chunks/chunk-YUP434IY.js";
13
+ import {
14
+ getCurrentDownlink
15
+ } from "../../chunks/chunk-7AWTHZLY.js";
16
16
  import {
17
17
  LoremIpsum
18
- } from "../../chunks/chunk-MUGIN5OW.js";
19
- import "../../chunks/chunk-4CIS3R7T.js";
18
+ } from "../../chunks/chunk-GPWFYPER.js";
20
19
  import {
21
20
  Assert
22
21
  } from "../../chunks/chunk-W7YBGJ4H.js";
22
+ import "../../chunks/chunk-4CIS3R7T.js";
23
23
  import "../../chunks/chunk-YS6WMSWC.js";
24
+ import "../../chunks/chunk-RLAZR3NL.js";
24
25
  import "../../chunks/chunk-6RGDWX4A.js";
25
26
  import {
26
27
  isConstructorFunction
27
28
  } from "../../chunks/chunk-RCO57B6F.js";
28
29
  import "../../chunks/chunk-FCU6IHKD.js";
29
- import "../../chunks/chunk-RLAZR3NL.js";
30
30
  import {
31
31
  Crossenv
32
- } from "../../chunks/chunk-UFKH5WD2.js";
33
- import "../../chunks/chunk-RLJOYG64.js";
32
+ } from "../../chunks/chunk-FR5H2OCV.js";
34
33
  import "../../chunks/chunk-S2NMAH7K.js";
35
34
  import "../../chunks/chunk-LV2VMOWR.js";
35
+ import "../../chunks/chunk-RLJOYG64.js";
36
36
  import {
37
37
  Random
38
38
  } from "../../chunks/chunk-S32K7POB.js";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Logs
3
- } from "../../../chunks/chunk-G2NZXHW6.js";
3
+ } from "../../../chunks/chunk-TEB7KZWB.js";
4
+ import "../../../chunks/chunk-JWKI6G6E.js";
4
5
  import "../../../chunks/chunk-L3OCRR3V.js";
5
6
  import "../../../chunks/chunk-H4PP6AHP.js";
6
- import "../../../chunks/chunk-JWKI6G6E.js";
7
7
  export {
8
8
  Logs
9
9
  };
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  LoremIpsum
3
- } from "../../../chunks/chunk-MUGIN5OW.js";
3
+ } from "../../../chunks/chunk-GPWFYPER.js";
4
4
  import "../../../chunks/chunk-YS6WMSWC.js";
5
+ import "../../../chunks/chunk-RLAZR3NL.js";
5
6
  import "../../../chunks/chunk-6RGDWX4A.js";
6
7
  import "../../../chunks/chunk-RCO57B6F.js";
7
8
  import "../../../chunks/chunk-FCU6IHKD.js";
8
- import "../../../chunks/chunk-RLAZR3NL.js";
9
9
  import "../../../chunks/chunk-S32K7POB.js";
10
10
  import "../../../chunks/chunk-D3ERTRDW.js";
11
11
  import "../../../chunks/chunk-75BICI4L.js";
@@ -1,9 +1,9 @@
1
- import {
2
- interpolate
3
- } from "../../chunks/chunk-EW46EXFB.js";
4
1
  import {
5
2
  clamp
6
3
  } from "../../chunks/chunk-OSAXBA7G.js";
4
+ import {
5
+ interpolate
6
+ } from "../../chunks/chunk-BJAYUP7M.js";
7
7
  import {
8
8
  createScale,
9
9
  getHarmonic
@@ -1 +1,2 @@
1
1
  export declare function interpolate(ratio: number, bound1: number, bound2: number): number;
2
+ export declare function exterpolate(value: number, bound1: number, bound2?: number): number;
@@ -1,6 +1,8 @@
1
1
  import {
2
+ exterpolate,
2
3
  interpolate
3
- } from "../../../chunks/chunk-EW46EXFB.js";
4
+ } from "../../../chunks/chunk-BJAYUP7M.js";
4
5
  export {
6
+ exterpolate,
5
7
  interpolate
6
8
  };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  flattenGetters
3
- } from "../../../chunks/chunk-PO3V3I57.js";
4
- import "../../../chunks/chunk-4QQBKBYH.js";
3
+ } from "../../../chunks/chunk-VFJYLXCI.js";
4
+ import "../../../chunks/chunk-SNJJII7A.js";
5
5
  import "../../../chunks/chunk-QXAJXTXV.js";
6
6
  import "../../../chunks/chunk-HC6ZOHCS.js";
7
7
  export {
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  flattenGetters
3
- } from "../../chunks/chunk-PO3V3I57.js";
3
+ } from "../../chunks/chunk-VFJYLXCI.js";
4
4
  import {
5
- Validation
6
- } from "../../chunks/chunk-FPEW3A27.js";
5
+ isNonNullObject,
6
+ isObject
7
+ } from "../../chunks/chunk-HQLRJ7XW.js";
7
8
  import {
8
9
  recordFormat
9
10
  } from "../../chunks/chunk-YP64J65L.js";
10
11
  import {
11
- isNonNullObject,
12
- isObject
13
- } from "../../chunks/chunk-HQLRJ7XW.js";
12
+ Validation
13
+ } from "../../chunks/chunk-FPEW3A27.js";
14
14
  import {
15
15
  Enums
16
16
  } from "../../chunks/chunk-WOAYU6LB.js";
@@ -18,7 +18,7 @@ import {
18
18
  isRecord
19
19
  } from "../../chunks/chunk-YDIBNEGA.js";
20
20
  import "../../chunks/chunk-E6MSDKON.js";
21
- import "../../chunks/chunk-4QQBKBYH.js";
21
+ import "../../chunks/chunk-SNJJII7A.js";
22
22
  import "../../chunks/chunk-QXAJXTXV.js";
23
23
  import "../../chunks/chunk-HC6ZOHCS.js";
24
24
 
@@ -1,6 +1,3 @@
1
- import {
2
- replaceAll
3
- } from "../../chunks/chunk-MF56TTC5.js";
4
1
  import {
5
2
  CharCodes
6
3
  } from "../../chunks/chunk-34U4HX4V.js";
@@ -9,12 +6,15 @@ import {
9
6
  matchesEvery,
10
7
  matchesSome
11
8
  } from "../../chunks/chunk-LQFKUNVQ.js";
9
+ import {
10
+ normalizeIndent
11
+ } from "../../chunks/chunk-JQXNEJAP.js";
12
12
  import {
13
13
  toAlphanum
14
14
  } from "../../chunks/chunk-COVPTTAD.js";
15
15
  import {
16
- normalizeIndent
17
- } from "../../chunks/chunk-JQXNEJAP.js";
16
+ replaceAll
17
+ } from "../../chunks/chunk-MF56TTC5.js";
18
18
 
19
19
  // src/agnostic/strings/index.ts
20
20
  var Strings;
@@ -1,12 +1,12 @@
1
1
  import {
2
- timeout
3
- } from "../../chunks/chunk-Z7ZDDBV5.js";
2
+ Duration
3
+ } from "../../chunks/chunk-6NYUQXJT.js";
4
4
  import {
5
5
  Transitions
6
6
  } from "../../chunks/chunk-ENMBK6H7.js";
7
7
  import {
8
- Duration
9
- } from "../../chunks/chunk-6NYUQXJT.js";
8
+ timeout
9
+ } from "../../chunks/chunk-Z7ZDDBV5.js";
10
10
  import {
11
11
  wait
12
12
  } from "../../chunks/chunk-4CIS3R7T.js";
@@ -0,0 +1,13 @@
1
+ // src/agnostic/numbers/interpolate/index.ts
2
+ function interpolate(ratio, bound1, bound2) {
3
+ return bound1 + ratio * (bound2 - bound1);
4
+ }
5
+ function exterpolate(value, bound1, bound2) {
6
+ if (bound2 === void 0) return value / bound1;
7
+ return (value - bound1) / (bound2 - bound1);
8
+ }
9
+
10
+ export {
11
+ interpolate,
12
+ exterpolate
13
+ };
@@ -0,0 +1,35 @@
1
+ import {
2
+ register
3
+ } from "./chunk-CAMYGA44.js";
4
+
5
+ // src/agnostic/html/selector-to-element/index.ts
6
+ function selectorToElement(selector, documentObj) {
7
+ const actualDocument = documentObj ?? window.document;
8
+ if (actualDocument === null) throw register.getError("no-window-document-on-runtime-please-provide" /* NO_DOCUMENT_PLEASE_PROVIDE */, "The optional second parameter expects a Document object");
9
+ const tagRegexp = /^[A-Za-z]+/;
10
+ const idRegexp = /#[A-Za-z]+[\w\-\:]*/;
11
+ const classRegexp = /\.[A-Za-z]+[\w\-]*/;
12
+ const attributeRegexp = /\[[A-Za-z]+[\w\-]*(="[\w\-]+")?\]/;
13
+ const matchedTags = selector.match(tagRegexp) ?? [];
14
+ const matchedIds = selector.match(idRegexp) ?? [];
15
+ const matchedClasses = selector.match(classRegexp) ?? [];
16
+ const matchedAttrs = selector.match(attributeRegexp) ?? [];
17
+ const tag = matchedTags[matchedTags.length - 1] ?? "div";
18
+ const id = matchedIds[matchedIds.length - 1] ?? null;
19
+ const classes = matchedClasses.map((matchedClass) => matchedClass.replace(/^\./, ""));
20
+ const attributes = matchedAttrs.map((matchedAttr) => matchedAttr.replace(/^\[/, "").replace(/\]$/, "").split("="));
21
+ const element = actualDocument.createElement(tag);
22
+ if (id !== null) {
23
+ element.id = id;
24
+ }
25
+ element.classList.add(...classes);
26
+ attributes.forEach(([name, value = ""]) => {
27
+ if (name === void 0) return;
28
+ element.setAttribute(name, value);
29
+ });
30
+ return element;
31
+ }
32
+
33
+ export {
34
+ selectorToElement
35
+ };
@@ -0,0 +1,127 @@
1
+ import {
2
+ register
3
+ } from "./chunk-CAMYGA44.js";
4
+
5
+ // src/agnostic/html/sanitize/index.ts
6
+ var Sanitize;
7
+ ((Sanitize2) => {
8
+ Sanitize2.defaultOptions = { depth: 20 };
9
+ function sanitize(inputStr, options = Sanitize2.defaultOptions) {
10
+ const actualDocument = options.documentObj ?? window.document;
11
+ if (actualDocument === null) throw register.getError("no-window-document-on-runtime-please-provide" /* NO_DOCUMENT_PLEASE_PROVIDE */, "See documentObj in the options object");
12
+ const wrapperDiv = actualDocument.createElement("div");
13
+ const { inputFreeTransform } = options;
14
+ wrapperDiv.innerHTML = inputFreeTransform !== void 0 ? inputFreeTransform(inputStr) : inputStr;
15
+ const sanitizedWrapper = sanitizeElement(wrapperDiv, options);
16
+ const returned = sanitizedWrapper?.innerHTML;
17
+ return returned ?? "";
18
+ }
19
+ Sanitize2.sanitize = sanitize;
20
+ function sanitizeElement(element, options = Sanitize2.defaultOptions) {
21
+ const actualDocument = options.documentObj ?? window.document;
22
+ if (actualDocument === null) throw register.getError("no-window-document-on-runtime-please-provide" /* NO_DOCUMENT_PLEASE_PROVIDE */, "See documentObj in the options object");
23
+ const { tagName, attributes, childNodes } = element;
24
+ const {
25
+ allowedTags = [],
26
+ allowedAttributes = {},
27
+ forbiddenTags = [],
28
+ forbiddenAttributes = {},
29
+ depth = 20,
30
+ verbose = false
31
+ } = options;
32
+ if (depth <= 0) {
33
+ console.warn("Max depth reached");
34
+ return null;
35
+ }
36
+ const normalizedTagName = tagName.toLowerCase().trim();
37
+ const tagIsInForbidden = forbiddenTags.includes("*") || forbiddenTags.includes(normalizedTagName);
38
+ if (tagIsInForbidden) {
39
+ if (verbose === true) console.warn(tagName, "tag is forbidden");
40
+ return null;
41
+ }
42
+ const tagIsInAllowed = allowedTags.includes("*") || allowedTags.includes(normalizedTagName);
43
+ if (!tagIsInAllowed) {
44
+ if (verbose === true) console.warn(tagName, "tag is not allowed");
45
+ return null;
46
+ }
47
+ const returnedElement = actualDocument.createElement(tagName);
48
+ const returnedAttributes = Array.from(attributes).filter(({ name: attributeName, value: attributeValue }) => {
49
+ const allTagsForbiddenAttributes = forbiddenAttributes["*"] ?? [];
50
+ const thisTagForbiddenAttributes = forbiddenAttributes[normalizedTagName] ?? [];
51
+ const mergedForbiddenAttributes = [...allTagsForbiddenAttributes, ...thisTagForbiddenAttributes];
52
+ const isInForbidden = mergedForbiddenAttributes.some(({
53
+ attributeName: nameTester,
54
+ attributeValues: valTesters
55
+ }) => {
56
+ if (typeof nameTester === "string" && nameTester !== "*" && attributeName !== nameTester) return false;
57
+ if (typeof nameTester !== "string" && !nameTester.test(attributeName)) return false;
58
+ if (valTesters === void 0) {
59
+ if (verbose === true) console.warn(attributeName, "attribute on", tagName, "tag is forbidden");
60
+ return true;
61
+ }
62
+ if (valTesters.includes("*")) {
63
+ if (verbose === true) console.warn(attributeName, "attribute on", tagName, "tag is forbidden");
64
+ return true;
65
+ }
66
+ return valTesters.some((valTester) => {
67
+ if (typeof valTester === "string" && attributeValue === valTester) {
68
+ if (verbose === true) console.warn(attributeValue, "value for", attributeName, "attribute on", tagName, "tag is forbidden. Rule:", valTester);
69
+ return true;
70
+ }
71
+ if (typeof valTester !== "string" && valTester.test(attributeValue)) {
72
+ if (verbose === true) console.warn(attributeValue, "value for", attributeName, "attribute on", tagName, "tag is forbidden. Rule:", valTester);
73
+ return true;
74
+ }
75
+ return false;
76
+ });
77
+ });
78
+ if (isInForbidden) return false;
79
+ const allTagsAllowedAttributes = allowedAttributes["*"] ?? [];
80
+ const thisTagAllowedAttributes = allowedAttributes[normalizedTagName] ?? [];
81
+ const mergedAllowedAttributes = [...allTagsAllowedAttributes, ...thisTagAllowedAttributes];
82
+ let latestNotAllowedReason = [tagName, "has no allowed attributes"];
83
+ const isInAllowed = mergedAllowedAttributes.some(({
84
+ attributeName: nameTester,
85
+ attributeValues: valTesters
86
+ }) => {
87
+ if (typeof nameTester === "string" && nameTester !== "*" && attributeName !== nameTester) {
88
+ latestNotAllowedReason = [attributeName, "attribute on", tagName, "tag is not allowed"];
89
+ return false;
90
+ }
91
+ if (typeof nameTester !== "string" && !nameTester.test(attributeName)) {
92
+ latestNotAllowedReason = [attributeName, "attribute on", tagName, "tag is not allowed"];
93
+ return false;
94
+ }
95
+ if (valTesters === void 0) return true;
96
+ if (valTesters.includes("*")) return true;
97
+ return valTesters.some((valTester) => {
98
+ if (typeof valTester === "string" && attributeValue === valTester) return true;
99
+ if (typeof valTester !== "string" && valTester.test(attributeValue)) return true;
100
+ latestNotAllowedReason = [attributeValue, "value for", attributeName, "attribute on", tagName, "tag is not allowed"];
101
+ return false;
102
+ });
103
+ });
104
+ if (!isInAllowed) {
105
+ if (verbose === true) console.warn(...latestNotAllowedReason);
106
+ return false;
107
+ }
108
+ return true;
109
+ });
110
+ returnedAttributes.forEach(({ name, value }) => {
111
+ returnedElement.setAttribute(name, value);
112
+ });
113
+ const sanitizedChildNodes = Array.from(childNodes).map((node) => {
114
+ if (node.nodeType === Node.ELEMENT_NODE) return sanitizeElement(node, { ...options, depth: depth - 1 });
115
+ else if (node.nodeType === Node.TEXT_NODE) return node;
116
+ else if (options.keepComments === true && node.nodeType === Node.COMMENT_NODE) return node;
117
+ return null;
118
+ }).filter((elt) => elt !== null);
119
+ returnedElement.replaceChildren(...sanitizedChildNodes);
120
+ return returnedElement;
121
+ }
122
+ Sanitize2.sanitizeElement = sanitizeElement;
123
+ })(Sanitize || (Sanitize = {}));
124
+
125
+ export {
126
+ Sanitize
127
+ };
@@ -0,0 +1,22 @@
1
+ import {
2
+ Crossenv
3
+ } from "./chunk-FR5H2OCV.js";
4
+ import {
5
+ Errors
6
+ } from "./chunk-WH6BPDAC.js";
7
+
8
+ // src/shared/errors/index.ts
9
+ var register = Errors.Register.from({
10
+ ["no-window-document-on-runtime" /* NO_DOCUMENT */]: {
11
+ message: `Runtime '${Crossenv.detectRuntime()}' does not provide a Document object, cannot complete.`,
12
+ detailsMaker: () => void 0
13
+ },
14
+ ["no-window-document-on-runtime-please-provide" /* NO_DOCUMENT_PLEASE_PROVIDE */]: {
15
+ message: `Please provide a Document object since none are found on runtime '${Crossenv.detectRuntime()}'`,
16
+ detailsMaker: (tips) => tips
17
+ }
18
+ });
19
+
20
+ export {
21
+ register
22
+ };
@@ -0,0 +1,21 @@
1
+ import {
2
+ detectRuntime
3
+ } from "./chunk-S2NMAH7K.js";
4
+ import {
5
+ Types
6
+ } from "./chunk-LV2VMOWR.js";
7
+ import {
8
+ Window
9
+ } from "./chunk-RLJOYG64.js";
10
+
11
+ // src/agnostic/misc/crossenv/index.ts
12
+ var Crossenv;
13
+ ((Crossenv2) => {
14
+ Crossenv2.detectRuntime = detectRuntime;
15
+ Crossenv2.Types = Types;
16
+ Crossenv2.Window = Window;
17
+ })(Crossenv || (Crossenv = {}));
18
+
19
+ export {
20
+ Crossenv
21
+ };
@@ -0,0 +1,211 @@
1
+ import {
2
+ findDuplicates
3
+ } from "./chunk-YS6WMSWC.js";
4
+ import {
5
+ make
6
+ } from "./chunk-RLAZR3NL.js";
7
+ import {
8
+ isArrayOf
9
+ } from "./chunk-6RGDWX4A.js";
10
+ import {
11
+ RANDOM_PICK_ERR_SYMBOL,
12
+ randomPick
13
+ } from "./chunk-FCU6IHKD.js";
14
+ import {
15
+ Random
16
+ } from "./chunk-S32K7POB.js";
17
+
18
+ // src/agnostic/arrays/index.tsx
19
+ var Arrays;
20
+ ((Arrays2) => {
21
+ Arrays2.findDuplicates = findDuplicates;
22
+ Arrays2.isArrayOf = isArrayOf;
23
+ Arrays2.make = make;
24
+ Arrays2.RANDOM_PICK_ERR_SYMBOL = RANDOM_PICK_ERR_SYMBOL;
25
+ Arrays2.randomPick = randomPick;
26
+ })(Arrays || (Arrays = {}));
27
+
28
+ // src/agnostic/misc/lorem-ipsum/index.ts
29
+ var LoremIpsum;
30
+ ((LoremIpsum2) => {
31
+ LoremIpsum2.words = [
32
+ "a",
33
+ "ac",
34
+ "accumsan",
35
+ "adipiscing",
36
+ "aenean",
37
+ "aliquam",
38
+ "aliquet",
39
+ "amet",
40
+ "ante",
41
+ "arcu",
42
+ "at",
43
+ "auctor",
44
+ "augue",
45
+ "bibendum",
46
+ "blandit",
47
+ "condimentum",
48
+ "consectetur",
49
+ "consequat",
50
+ "convallis",
51
+ "cras",
52
+ "curabitur",
53
+ "cursus",
54
+ "dapibus",
55
+ "diam",
56
+ "dictum",
57
+ "dictumst",
58
+ "dignissim",
59
+ "dolor",
60
+ "donec",
61
+ "dui",
62
+ "duis",
63
+ "efficitur",
64
+ "egestas",
65
+ "eget",
66
+ "eleifend",
67
+ "elementum",
68
+ "elit",
69
+ "enim",
70
+ "erat",
71
+ "eros",
72
+ "est",
73
+ "et",
74
+ "eu",
75
+ "euismod",
76
+ "ex",
77
+ "facilisis",
78
+ "faucibus",
79
+ "felis",
80
+ "feugiat",
81
+ "finibus",
82
+ "fringilla",
83
+ "fusce",
84
+ "gravida",
85
+ "habitasse",
86
+ "hac",
87
+ "hendrerit",
88
+ "iaculis",
89
+ "id",
90
+ "imperdiet",
91
+ "in",
92
+ "integer",
93
+ "interdum",
94
+ "ipsum",
95
+ "justo",
96
+ "lacinia",
97
+ "lacus",
98
+ "laoreet",
99
+ "lectus",
100
+ "leo",
101
+ "libero",
102
+ "ligula",
103
+ "lobortis",
104
+ "lorem",
105
+ "luctus",
106
+ "maecenas",
107
+ "magna",
108
+ "malesuada",
109
+ "massa",
110
+ "mattis",
111
+ "mauris",
112
+ "maximus",
113
+ "metus",
114
+ "mi",
115
+ "molestie",
116
+ "mollis",
117
+ "morbi",
118
+ "nam",
119
+ "nec",
120
+ "neque",
121
+ "nibh",
122
+ "nisi",
123
+ "nisl",
124
+ "non",
125
+ "nulla",
126
+ "nullam",
127
+ "nunc",
128
+ "odio",
129
+ "orci",
130
+ "ornare",
131
+ "pellentesque",
132
+ "pharetra",
133
+ "phasellus",
134
+ "placerat",
135
+ "platea",
136
+ "porta",
137
+ "porttitor",
138
+ "posuere",
139
+ "praesent",
140
+ "pulvinar",
141
+ "purus",
142
+ "quam",
143
+ "quis",
144
+ "quisque",
145
+ "risus",
146
+ "rutrum",
147
+ "sagittis",
148
+ "sapien",
149
+ "sed",
150
+ "sem",
151
+ "semper",
152
+ "sit",
153
+ "sodales",
154
+ "sollicitudin",
155
+ "suscipit",
156
+ "suspendisse",
157
+ "tellus",
158
+ "tempor",
159
+ "tempus",
160
+ "tincidunt",
161
+ "tortor",
162
+ "tristique",
163
+ "turpis",
164
+ "ultrices",
165
+ "ultricies",
166
+ "urna",
167
+ "ut",
168
+ "vehicula",
169
+ "vel",
170
+ "velit",
171
+ "venenatis",
172
+ "vestibulum",
173
+ "vitae",
174
+ "vivamus",
175
+ "viverra",
176
+ "volutpat",
177
+ "vulputate"
178
+ ];
179
+ LoremIpsum2.generateSentence = (wordCount) => {
180
+ const resultArr = [];
181
+ let currentWordCound = wordCount;
182
+ for (let i = 0; i < currentWordCound; i++) {
183
+ const picked = Arrays.randomPick(LoremIpsum2.words);
184
+ if (typeof picked === "string") resultArr.push(picked);
185
+ else {
186
+ currentWordCound += 1;
187
+ }
188
+ }
189
+ const [firstWord, ...otherWords] = resultArr;
190
+ if (firstWord === void 0) return "";
191
+ const capFirstLetter = firstWord?.charAt(0).toUpperCase();
192
+ const restOfFirstWord = firstWord?.slice(1);
193
+ const sentence = [
194
+ `${capFirstLetter}${restOfFirstWord}`,
195
+ ...otherWords
196
+ ].join(" ");
197
+ return `${sentence}.`;
198
+ };
199
+ LoremIpsum2.generateSentences = (sentencesCount, maxSentenceLength = 12, minSentenceLength = 4) => {
200
+ const sentences = [];
201
+ for (let i = 0; i < sentencesCount; i++) {
202
+ const length = Random.randomInt(maxSentenceLength, minSentenceLength) ?? 8;
203
+ sentences.push((0, LoremIpsum2.generateSentence)(length));
204
+ }
205
+ return sentences;
206
+ };
207
+ })(LoremIpsum || (LoremIpsum = {}));
208
+
209
+ export {
210
+ LoremIpsum
211
+ };
@@ -0,0 +1,17 @@
1
+ // src/agnostic/html/get-node-ancestors/index.ts
2
+ function getNodeAncestors(node, traverseShadowRoots) {
3
+ const returned = [];
4
+ let currentNode = node;
5
+ while (currentNode !== null) {
6
+ returned.push(currentNode);
7
+ const parentNode = currentNode.parentNode;
8
+ const parentElement = currentNode.parentElement;
9
+ const nextNode = parentNode instanceof ShadowRoot ? traverseShadowRoots ? parentNode.host : parentElement : parentElement;
10
+ currentNode = nextNode;
11
+ }
12
+ return returned;
13
+ }
14
+
15
+ export {
16
+ getNodeAncestors
17
+ };
@@ -0,0 +1,211 @@
1
+ import {
2
+ findDuplicates
3
+ } from "./chunk-YS6WMSWC.js";
4
+ import {
5
+ make
6
+ } from "./chunk-RLAZR3NL.js";
7
+ import {
8
+ RANDOM_PICK_ERR_SYMBOL,
9
+ randomPick
10
+ } from "./chunk-FCU6IHKD.js";
11
+ import {
12
+ isArrayOf
13
+ } from "./chunk-6RGDWX4A.js";
14
+ import {
15
+ Random
16
+ } from "./chunk-S32K7POB.js";
17
+
18
+ // src/agnostic/arrays/index.tsx
19
+ var Arrays;
20
+ ((Arrays2) => {
21
+ Arrays2.findDuplicates = findDuplicates;
22
+ Arrays2.isArrayOf = isArrayOf;
23
+ Arrays2.make = make;
24
+ Arrays2.RANDOM_PICK_ERR_SYMBOL = RANDOM_PICK_ERR_SYMBOL;
25
+ Arrays2.randomPick = randomPick;
26
+ })(Arrays || (Arrays = {}));
27
+
28
+ // src/agnostic/misc/lorem-ipsum/index.ts
29
+ var LoremIpsum;
30
+ ((LoremIpsum2) => {
31
+ LoremIpsum2.words = [
32
+ "a",
33
+ "ac",
34
+ "accumsan",
35
+ "adipiscing",
36
+ "aenean",
37
+ "aliquam",
38
+ "aliquet",
39
+ "amet",
40
+ "ante",
41
+ "arcu",
42
+ "at",
43
+ "auctor",
44
+ "augue",
45
+ "bibendum",
46
+ "blandit",
47
+ "condimentum",
48
+ "consectetur",
49
+ "consequat",
50
+ "convallis",
51
+ "cras",
52
+ "curabitur",
53
+ "cursus",
54
+ "dapibus",
55
+ "diam",
56
+ "dictum",
57
+ "dictumst",
58
+ "dignissim",
59
+ "dolor",
60
+ "donec",
61
+ "dui",
62
+ "duis",
63
+ "efficitur",
64
+ "egestas",
65
+ "eget",
66
+ "eleifend",
67
+ "elementum",
68
+ "elit",
69
+ "enim",
70
+ "erat",
71
+ "eros",
72
+ "est",
73
+ "et",
74
+ "eu",
75
+ "euismod",
76
+ "ex",
77
+ "facilisis",
78
+ "faucibus",
79
+ "felis",
80
+ "feugiat",
81
+ "finibus",
82
+ "fringilla",
83
+ "fusce",
84
+ "gravida",
85
+ "habitasse",
86
+ "hac",
87
+ "hendrerit",
88
+ "iaculis",
89
+ "id",
90
+ "imperdiet",
91
+ "in",
92
+ "integer",
93
+ "interdum",
94
+ "ipsum",
95
+ "justo",
96
+ "lacinia",
97
+ "lacus",
98
+ "laoreet",
99
+ "lectus",
100
+ "leo",
101
+ "libero",
102
+ "ligula",
103
+ "lobortis",
104
+ "lorem",
105
+ "luctus",
106
+ "maecenas",
107
+ "magna",
108
+ "malesuada",
109
+ "massa",
110
+ "mattis",
111
+ "mauris",
112
+ "maximus",
113
+ "metus",
114
+ "mi",
115
+ "molestie",
116
+ "mollis",
117
+ "morbi",
118
+ "nam",
119
+ "nec",
120
+ "neque",
121
+ "nibh",
122
+ "nisi",
123
+ "nisl",
124
+ "non",
125
+ "nulla",
126
+ "nullam",
127
+ "nunc",
128
+ "odio",
129
+ "orci",
130
+ "ornare",
131
+ "pellentesque",
132
+ "pharetra",
133
+ "phasellus",
134
+ "placerat",
135
+ "platea",
136
+ "porta",
137
+ "porttitor",
138
+ "posuere",
139
+ "praesent",
140
+ "pulvinar",
141
+ "purus",
142
+ "quam",
143
+ "quis",
144
+ "quisque",
145
+ "risus",
146
+ "rutrum",
147
+ "sagittis",
148
+ "sapien",
149
+ "sed",
150
+ "sem",
151
+ "semper",
152
+ "sit",
153
+ "sodales",
154
+ "sollicitudin",
155
+ "suscipit",
156
+ "suspendisse",
157
+ "tellus",
158
+ "tempor",
159
+ "tempus",
160
+ "tincidunt",
161
+ "tortor",
162
+ "tristique",
163
+ "turpis",
164
+ "ultrices",
165
+ "ultricies",
166
+ "urna",
167
+ "ut",
168
+ "vehicula",
169
+ "vel",
170
+ "velit",
171
+ "venenatis",
172
+ "vestibulum",
173
+ "vitae",
174
+ "vivamus",
175
+ "viverra",
176
+ "volutpat",
177
+ "vulputate"
178
+ ];
179
+ LoremIpsum2.generateSentence = (wordCount) => {
180
+ const resultArr = [];
181
+ let currentWordCound = wordCount;
182
+ for (let i = 0; i < currentWordCound; i++) {
183
+ const picked = Arrays.randomPick(LoremIpsum2.words);
184
+ if (typeof picked === "string") resultArr.push(picked);
185
+ else {
186
+ currentWordCound += 1;
187
+ }
188
+ }
189
+ const [firstWord, ...otherWords] = resultArr;
190
+ if (firstWord === void 0) return "";
191
+ const capFirstLetter = firstWord?.charAt(0).toUpperCase();
192
+ const restOfFirstWord = firstWord?.slice(1);
193
+ const sentence = [
194
+ `${capFirstLetter}${restOfFirstWord}`,
195
+ ...otherWords
196
+ ].join(" ");
197
+ return `${sentence}.`;
198
+ };
199
+ LoremIpsum2.generateSentences = (sentencesCount, maxSentenceLength = 12, minSentenceLength = 4) => {
200
+ const sentences = [];
201
+ for (let i = 0; i < sentencesCount; i++) {
202
+ const length = Random.randomInt(maxSentenceLength, minSentenceLength) ?? 8;
203
+ sentences.push((0, LoremIpsum2.generateSentence)(length));
204
+ }
205
+ return sentences;
206
+ };
207
+ })(LoremIpsum || (LoremIpsum = {}));
208
+
209
+ export {
210
+ LoremIpsum
211
+ };
@@ -0,0 +1,65 @@
1
+ import {
2
+ isFalsy
3
+ } from "./chunk-QXAJXTXV.js";
4
+
5
+ // src/agnostic/misc/cast/index.ts
6
+ var Cast;
7
+ ((Cast2) => {
8
+ function toBoolean(value) {
9
+ if (typeof value === "boolean") return value;
10
+ if (typeof value === "string") {
11
+ if (value.toLowerCase().trim() === "true") return true;
12
+ return false;
13
+ }
14
+ return !isFalsy(value);
15
+ }
16
+ Cast2.toBoolean = toBoolean;
17
+ function toNumber(value) {
18
+ if (typeof value === "number") return value;
19
+ if (typeof value === "string") return parseFloat(value);
20
+ return 0;
21
+ }
22
+ Cast2.toNumber = toNumber;
23
+ function toString(value) {
24
+ if (typeof value === "string") return value;
25
+ return String(value);
26
+ }
27
+ Cast2.toString = toString;
28
+ function toNull(_value) {
29
+ return null;
30
+ }
31
+ Cast2.toNull = toNull;
32
+ function toArray(value) {
33
+ if (Array.isArray(value)) return value;
34
+ if (typeof value === "object" && value !== null) return Object.entries(value).map((key, value2) => ({ key, value: value2 }));
35
+ return [value];
36
+ }
37
+ Cast2.toArray = toArray;
38
+ function toNumberArr(value) {
39
+ const arrValue = toArray(value);
40
+ return arrValue.map((val) => toNumber(val));
41
+ }
42
+ Cast2.toNumberArr = toNumberArr;
43
+ function toRecord(value) {
44
+ const record = {};
45
+ try {
46
+ Object.keys(value).forEach((key) => {
47
+ record[key] = value[key];
48
+ });
49
+ } catch (err) {
50
+ return record;
51
+ }
52
+ return record;
53
+ }
54
+ Cast2.toRecord = toRecord;
55
+ function toError(value) {
56
+ if (value instanceof Error) return value;
57
+ if (typeof value === "string") return new Error(value);
58
+ return new Error(toString(value));
59
+ }
60
+ Cast2.toError = toError;
61
+ })(Cast || (Cast = {}));
62
+
63
+ export {
64
+ Cast
65
+ };
@@ -0,0 +1,23 @@
1
+ import {
2
+ Cast
3
+ } from "./chunk-SNJJII7A.js";
4
+
5
+ // src/agnostic/objects/flatten-getters/index.ts
6
+ function flattenGetters(obj) {
7
+ try {
8
+ const { entries, getOwnPropertyDescriptors } = Object;
9
+ const properties = Cast.toRecord(obj);
10
+ const getters = entries(getOwnPropertyDescriptors(obj)).filter(([_, desc]) => typeof desc.get === "function").map(([key]) => key);
11
+ const returned = { ...properties };
12
+ getters.forEach((getter) => {
13
+ returned[getter] = obj[getter];
14
+ });
15
+ return returned;
16
+ } catch (err) {
17
+ return {};
18
+ }
19
+ }
20
+
21
+ export {
22
+ flattenGetters
23
+ };
@@ -0,0 +1,28 @@
1
+ import {
2
+ Sanitize
3
+ } from "./chunk-C5753KUP.js";
4
+ import {
5
+ register
6
+ } from "./chunk-CAMYGA44.js";
7
+
8
+ // src/agnostic/html/string-to-nodes/index.ts
9
+ function stringToNodes(dirtyStr, options) {
10
+ const actualDocument = options?.documentObj ?? window.document;
11
+ if (actualDocument === null) throw register.getError("no-window-document-on-runtime-please-provide" /* NO_DOCUMENT_PLEASE_PROVIDE */, "See documentObj in the options object");
12
+ const sanitizeOptions = {
13
+ ...options?.sanitize,
14
+ documentObj: options?.sanitize?.documentObj ?? options?.documentObj
15
+ };
16
+ const str = options?.sanitize !== void 0 ? Sanitize.sanitize(dirtyStr, sanitizeOptions) : dirtyStr;
17
+ const wrapperDiv = actualDocument.createElement("div");
18
+ wrapperDiv.innerHTML = str;
19
+ const nodes = Array.from(wrapperDiv.childNodes).filter((node) => {
20
+ const allowedNodeTypes = [Node.ELEMENT_NODE, Node.TEXT_NODE];
21
+ return allowedNodeTypes.includes(node.nodeType);
22
+ });
23
+ return nodes;
24
+ }
25
+
26
+ export {
27
+ stringToNodes
28
+ };
@@ -1,12 +1,12 @@
1
- import {
2
- readWrite
3
- } from "../../chunks/chunk-7DBNMU6N.js";
4
1
  import {
5
2
  isInDirectory
6
3
  } from "../../chunks/chunk-NRITRUZW.js";
7
4
  import {
8
5
  Subpaths
9
6
  } from "../../chunks/chunk-HGCG2J77.js";
7
+ import {
8
+ readWrite
9
+ } from "../../chunks/chunk-7DBNMU6N.js";
10
10
  import "../../chunks/chunk-LQFKUNVQ.js";
11
11
 
12
12
  // src/node/files/index.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@design-edito/tools",
3
- "version": "0.1.30",
3
+ "version": "0.1.31",
4
4
  "description": "",
5
5
  "author": "Maxime Fabas",
6
6
  "license": "ISC",