@es-joy/jsoe 0.3.0 → 0.4.1

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 (189) hide show
  1. package/.eslintignore +3 -0
  2. package/.eslintrc.cjs +1 -0
  3. package/.ncurc.cjs +9 -0
  4. package/CHANGES.md +8 -0
  5. package/demo/index.html +8 -0
  6. package/demo/index.js +1 -1
  7. package/dist/formatAndTypeChoices.d.ts +56 -0
  8. package/dist/formatAndTypeChoices.d.ts.map +1 -0
  9. package/dist/formats/indexedDBKey.d.ts +4 -0
  10. package/dist/formats/indexedDBKey.d.ts.map +1 -0
  11. package/dist/formats/json.d.ts +4 -0
  12. package/dist/formats/json.d.ts.map +1 -0
  13. package/dist/formats/schemaAndArbitrary.d.ts +6 -0
  14. package/dist/formats/schemaAndArbitrary.d.ts.map +1 -0
  15. package/dist/formats/schemaOnly.d.ts +6 -0
  16. package/dist/formats/schemaOnly.d.ts.map +1 -0
  17. package/dist/formats/structuredCloning.d.ts +20 -0
  18. package/dist/formats/structuredCloning.d.ts.map +1 -0
  19. package/dist/formats.d.ts +26 -0
  20. package/dist/formats.d.ts.map +1 -0
  21. package/dist/fundamentalTypes/BooleanObjectType.d.ts +8 -0
  22. package/dist/fundamentalTypes/BooleanObjectType.d.ts.map +1 -0
  23. package/dist/fundamentalTypes/NumberObjectType.d.ts +6 -0
  24. package/dist/fundamentalTypes/NumberObjectType.d.ts.map +1 -0
  25. package/dist/fundamentalTypes/StringObjectType.d.ts +6 -0
  26. package/dist/fundamentalTypes/StringObjectType.d.ts.map +1 -0
  27. package/dist/fundamentalTypes/arrayReferenceType.d.ts +8 -0
  28. package/dist/fundamentalTypes/arrayReferenceType.d.ts.map +1 -0
  29. package/dist/fundamentalTypes/arrayType.d.ts +60 -0
  30. package/dist/fundamentalTypes/arrayType.d.ts.map +1 -0
  31. package/dist/fundamentalTypes/bigintType.d.ts +6 -0
  32. package/dist/fundamentalTypes/bigintType.d.ts.map +1 -0
  33. package/dist/fundamentalTypes/dateType.d.ts +26 -0
  34. package/dist/fundamentalTypes/dateType.d.ts.map +1 -0
  35. package/dist/fundamentalTypes/nullType.d.ts +6 -0
  36. package/dist/fundamentalTypes/nullType.d.ts.map +1 -0
  37. package/dist/fundamentalTypes/numberType.d.ts +6 -0
  38. package/dist/fundamentalTypes/numberType.d.ts.map +1 -0
  39. package/dist/fundamentalTypes/objectReferenceType.d.ts +8 -0
  40. package/dist/fundamentalTypes/objectReferenceType.d.ts.map +1 -0
  41. package/dist/fundamentalTypes/objectType.d.ts +6 -0
  42. package/dist/fundamentalTypes/objectType.d.ts.map +1 -0
  43. package/dist/fundamentalTypes/regexpType.d.ts +8 -0
  44. package/dist/fundamentalTypes/regexpType.d.ts.map +1 -0
  45. package/dist/fundamentalTypes/sparseUndefinedType.d.ts +6 -0
  46. package/dist/fundamentalTypes/sparseUndefinedType.d.ts.map +1 -0
  47. package/dist/fundamentalTypes/stringType.d.ts +6 -0
  48. package/dist/fundamentalTypes/stringType.d.ts.map +1 -0
  49. package/dist/fundamentalTypes/undefinedType.d.ts +6 -0
  50. package/dist/fundamentalTypes/undefinedType.d.ts.map +1 -0
  51. package/dist/index.d.ts +5 -0
  52. package/dist/index.d.ts.map +1 -0
  53. package/dist/src/deepEqual.d.ts +3 -0
  54. package/dist/src/deepEqual.d.ts.map +1 -0
  55. package/dist/src/formatAndTypeChoices.d.ts +47 -0
  56. package/dist/src/formatAndTypeChoices.d.ts.map +1 -0
  57. package/dist/src/formats/indexedDBKey.d.ts +9 -0
  58. package/dist/src/formats/indexedDBKey.d.ts.map +1 -0
  59. package/dist/src/formats/json.d.ts +9 -0
  60. package/dist/src/formats/json.d.ts.map +1 -0
  61. package/dist/src/formats/schemaAndArbitrary.d.ts +6 -0
  62. package/dist/src/formats/schemaAndArbitrary.d.ts.map +1 -0
  63. package/dist/src/formats/schemaOnly.d.ts +6 -0
  64. package/dist/src/formats/schemaOnly.d.ts.map +1 -0
  65. package/dist/src/formats/structuredCloning.d.ts +15 -0
  66. package/dist/src/formats/structuredCloning.d.ts.map +1 -0
  67. package/dist/src/formats.d.ts +18 -0
  68. package/dist/src/formats.d.ts.map +1 -0
  69. package/dist/src/fundamentalTypes/BooleanObjectType.d.ts +6 -0
  70. package/dist/src/fundamentalTypes/BooleanObjectType.d.ts.map +1 -0
  71. package/dist/src/fundamentalTypes/NumberObjectType.d.ts +6 -0
  72. package/dist/src/fundamentalTypes/NumberObjectType.d.ts.map +1 -0
  73. package/dist/src/fundamentalTypes/StringObjectType.d.ts +6 -0
  74. package/dist/src/fundamentalTypes/StringObjectType.d.ts.map +1 -0
  75. package/dist/src/fundamentalTypes/arrayReferenceType.d.ts +6 -0
  76. package/dist/src/fundamentalTypes/arrayReferenceType.d.ts.map +1 -0
  77. package/dist/src/fundamentalTypes/arrayType.d.ts +6 -0
  78. package/dist/src/fundamentalTypes/arrayType.d.ts.map +1 -0
  79. package/dist/src/fundamentalTypes/bigintType.d.ts +6 -0
  80. package/dist/src/fundamentalTypes/bigintType.d.ts.map +1 -0
  81. package/dist/src/fundamentalTypes/dateType.d.ts +6 -0
  82. package/dist/src/fundamentalTypes/dateType.d.ts.map +1 -0
  83. package/dist/src/fundamentalTypes/nullType.d.ts +6 -0
  84. package/dist/src/fundamentalTypes/nullType.d.ts.map +1 -0
  85. package/dist/src/fundamentalTypes/numberType.d.ts +6 -0
  86. package/dist/src/fundamentalTypes/numberType.d.ts.map +1 -0
  87. package/dist/src/fundamentalTypes/objectReferenceType.d.ts +6 -0
  88. package/dist/src/fundamentalTypes/objectReferenceType.d.ts.map +1 -0
  89. package/dist/src/fundamentalTypes/objectType.d.ts +6 -0
  90. package/dist/src/fundamentalTypes/objectType.d.ts.map +1 -0
  91. package/dist/src/fundamentalTypes/regexpType.d.ts +6 -0
  92. package/dist/src/fundamentalTypes/regexpType.d.ts.map +1 -0
  93. package/dist/src/fundamentalTypes/sparseUndefinedType.d.ts +6 -0
  94. package/dist/src/fundamentalTypes/sparseUndefinedType.d.ts.map +1 -0
  95. package/dist/src/fundamentalTypes/stringType.d.ts +6 -0
  96. package/dist/src/fundamentalTypes/stringType.d.ts.map +1 -0
  97. package/dist/src/fundamentalTypes/undefinedType.d.ts +6 -0
  98. package/dist/src/fundamentalTypes/undefinedType.d.ts.map +1 -0
  99. package/dist/src/index.d.ts +5 -0
  100. package/dist/src/index.d.ts.map +1 -0
  101. package/dist/src/subTypes/blobHTMLType.d.ts +26 -0
  102. package/dist/src/subTypes/blobHTMLType.d.ts.map +1 -0
  103. package/dist/src/subTypes/falseType.d.ts +6 -0
  104. package/dist/src/subTypes/falseType.d.ts.map +1 -0
  105. package/dist/src/subTypes/trueType.d.ts +6 -0
  106. package/dist/src/subTypes/trueType.d.ts.map +1 -0
  107. package/dist/src/superTypes/SpecialNumberSuperType.d.ts +11 -0
  108. package/dist/src/superTypes/SpecialNumberSuperType.d.ts.map +1 -0
  109. package/dist/src/superTypes/SpecialRealNumberSuperType.d.ts +6 -0
  110. package/dist/src/superTypes/SpecialRealNumberSuperType.d.ts.map +1 -0
  111. package/dist/src/typeChoices.d.ts +30 -0
  112. package/dist/src/typeChoices.d.ts.map +1 -0
  113. package/dist/src/types.d.ts +333 -0
  114. package/dist/src/types.d.ts.map +1 -0
  115. package/dist/src/utils/dialogs.d.ts +29 -0
  116. package/dist/src/utils/dialogs.d.ts.map +1 -0
  117. package/dist/src/utils/jsonPointer.d.ts +42 -0
  118. package/dist/src/utils/jsonPointer.d.ts.map +1 -0
  119. package/dist/src/utils/templateUtils.d.ts +59 -0
  120. package/dist/src/utils/templateUtils.d.ts.map +1 -0
  121. package/dist/src/utils/types.d.ts +2 -0
  122. package/dist/src/utils/types.d.ts.map +1 -0
  123. package/dist/subTypes/blobHTMLType.d.ts +14 -0
  124. package/dist/subTypes/blobHTMLType.d.ts.map +1 -0
  125. package/dist/subTypes/falseType.d.ts +8 -0
  126. package/dist/subTypes/falseType.d.ts.map +1 -0
  127. package/dist/subTypes/trueType.d.ts +8 -0
  128. package/dist/subTypes/trueType.d.ts.map +1 -0
  129. package/dist/superTypes/SpecialNumberSuperType.d.ts +14 -0
  130. package/dist/superTypes/SpecialNumberSuperType.d.ts.map +1 -0
  131. package/dist/superTypes/SpecialRealNumberSuperType.d.ts +6 -0
  132. package/dist/superTypes/SpecialRealNumberSuperType.d.ts.map +1 -0
  133. package/dist/typeChoices.d.ts +103 -0
  134. package/dist/typeChoices.d.ts.map +1 -0
  135. package/dist/types.d.ts +523 -0
  136. package/dist/types.d.ts.map +1 -0
  137. package/dist/utils/dialogs.d.ts +109 -0
  138. package/dist/utils/dialogs.d.ts.map +1 -0
  139. package/dist/utils/jsonPointer.d.ts +46 -0
  140. package/dist/utils/jsonPointer.d.ts.map +1 -0
  141. package/dist/utils/templateUtils.d.ts +59 -0
  142. package/dist/utils/templateUtils.d.ts.map +1 -0
  143. package/dist/utils/types.d.ts +2 -0
  144. package/dist/utils/types.d.ts.map +1 -0
  145. package/dist/vendor/jamilih/dist/jml-es.d.ts +436 -0
  146. package/dist/vendor/jamilih/dist/jml-es.d.ts.map +1 -0
  147. package/dist/vendor/typeson-registry/dist/index.d.ts +400 -0
  148. package/dist/vendor/typeson-registry/dist/index.d.ts.map +1 -0
  149. package/dist/vendor-imports.d.ts +3 -0
  150. package/dist/vendor-imports.d.ts.map +1 -0
  151. package/package.json +17 -11
  152. package/postorder-traversal.js +58 -0
  153. package/src/formatAndTypeChoices.js +95 -50
  154. package/src/formats/indexedDBKey.js +49 -57
  155. package/src/formats/json.js +47 -56
  156. package/src/formats/schemaOnly.js +12 -2
  157. package/src/formats/structuredCloning.js +162 -105
  158. package/src/formats.js +38 -10
  159. package/src/fundamentalTypes/BooleanObjectType.js +6 -4
  160. package/src/fundamentalTypes/NumberObjectType.js +5 -3
  161. package/src/fundamentalTypes/StringObjectType.js +1 -1
  162. package/src/fundamentalTypes/arrayReferenceType.js +29 -14
  163. package/src/fundamentalTypes/arrayType.js +789 -278
  164. package/src/fundamentalTypes/bigintType.js +2 -2
  165. package/src/fundamentalTypes/dateType.js +42 -14
  166. package/src/fundamentalTypes/nullType.js +1 -1
  167. package/src/fundamentalTypes/numberType.js +2 -2
  168. package/src/fundamentalTypes/objectReferenceType.js +7 -5
  169. package/src/fundamentalTypes/regexpType.js +45 -24
  170. package/src/fundamentalTypes/sparseUndefinedType.js +7 -1
  171. package/src/fundamentalTypes/stringType.js +1 -1
  172. package/src/fundamentalTypes/undefinedType.js +2 -2
  173. package/src/subTypes/blobHTMLType.js +42 -22
  174. package/src/subTypes/falseType.js +2 -2
  175. package/src/subTypes/trueType.js +2 -2
  176. package/src/superTypes/SpecialNumberSuperType.js +13 -6
  177. package/src/superTypes/SpecialRealNumberSuperType.js +11 -5
  178. package/src/typeChoices.js +137 -55
  179. package/src/types.js +309 -146
  180. package/src/utils/dialogs.js +98 -29
  181. package/src/utils/jsonPointer.js +4 -0
  182. package/src/utils/templateUtils.js +27 -12
  183. package/src/vendor-imports.js +8 -0
  184. package/tsconfig.json +18 -0
  185. package/typings/sceditor.d.ts +20 -0
  186. package/vendor/jamilih/dist/jml-es.js +1019 -389
  187. package/vendor/jamilih/dist/jml.d.ts +436 -0
  188. package/vendor/jamilih/package.json +136 -0
  189. package/vendor/typeson-registry/dist/index.js +365 -83
@@ -0,0 +1,59 @@
1
+ export namespace U {
2
+ export { nbsp };
3
+ export { upArrow };
4
+ export { downArrow };
5
+ }
6
+ /**
7
+ * @param {string} sel
8
+ * @returns {Element|null}
9
+ */
10
+ export function $(sel: string): Element | null;
11
+ /**
12
+ * @param {string} sel
13
+ * @returns {Element[]}
14
+ */
15
+ export function $$(sel: string): Element[];
16
+ /**
17
+ * @param {Element|string} el
18
+ * @param {string} descendentsSel
19
+ * @returns {HTMLElement|null}
20
+ */
21
+ export function $e(el: Element | string, descendentsSel: string): HTMLElement | null;
22
+ /**
23
+ * @param {Element|string} el
24
+ * @param {string} descendentsSel
25
+ * @returns {Element[]}
26
+ */
27
+ export function $$e(el: Element | string, descendentsSel: string): Element[];
28
+ export namespace DOM {
29
+ export { removeChildren };
30
+ export { removeIfExists };
31
+ export { filterChildElements };
32
+ export { initialCaps };
33
+ }
34
+ declare const nbsp: " ";
35
+ declare const upArrow: "↑";
36
+ declare const downArrow: "↓";
37
+ /**
38
+ * @param {Node} node
39
+ * @returns {void}
40
+ */
41
+ declare function removeChildren(node: Node): void;
42
+ /**
43
+ * @param {Element|string} sel
44
+ * @returns {void}
45
+ */
46
+ declare function removeIfExists(sel: Element | string): void;
47
+ /**
48
+ * @param {Element} el
49
+ * @param {string|string[]} selectors
50
+ * @returns {Element[]}
51
+ */
52
+ declare function filterChildElements(el: Element, selectors: string | string[]): Element[];
53
+ /**
54
+ * @param {string} s
55
+ * @returns {string}
56
+ */
57
+ declare function initialCaps(s: string): string;
58
+ export {};
59
+ //# sourceMappingURL=templateUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templateUtils.d.ts","sourceRoot":"","sources":["../../src/utils/templateUtils.js"],"names":[],"mappings":";;;;;AAMA;;;GAGG;AACH,uBAHW,MAAM,GACJ,OAAO,GAAC,IAAI,CAEqB;AAE9C;;;GAGG;AACH,wBAHW,MAAM,GACJ,OAAO,EAAE,CAEiC;AAEvD;;;;GAIG;AACH,uBAJW,OAAO,GAAC,MAAM,kBACd,MAAM,GACJ,WAAW,GAAC,IAAI,CAQ5B;AAED;;;;GAIG;AACH,wBAJW,OAAO,GAAC,MAAM,kBACd,MAAM,GACJ,OAAO,EAAE,CAQrB;;;;;;;AAzCD,wBAAsB;AACtB,2BAAyB;AACzB,6BAA2B;AAyC3B;;;GAGG;AACH,sCAHW,IAAI,GACF,IAAI,CAUhB;AAED;;;GAGG;AACH,qCAHW,OAAO,GAAC,MAAM,GACZ,IAAI,CAOhB;AAED;;;;GAIG;AACH,yCAJW,OAAO,aACP,MAAM,GAAC,MAAM,EAAE,GACb,OAAO,EAAE,CA+BrB;AAED;;;GAGG;AACH,gCAHW,MAAM,GACJ,MAAM,CAIlB"}
@@ -0,0 +1,2 @@
1
+ export function isNullish(obj: unknown): boolean;
2
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.js"],"names":[],"mappings":"AAGO,+BAFI,OAAO,WAIjB"}
@@ -0,0 +1,436 @@
1
+ /// <reference types="jsdom" />
2
+ /// <reference types="jsdom" />
3
+ export type AttributeArray = JamilihAttributes;
4
+ export type ChildrenToJMLCallback = (childNodeJML: JamilihArray | JamilihChildType | string, i: Integer) => void;
5
+ /**
6
+ * Keep this in sync with `JamilihArray`'s first argument (minus `Document`).
7
+ */
8
+ export type JamilihFirstArg = JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihOptions | ElementName | Element | JamilihDocumentFragment;
9
+ export type JamilihAppender = (childJML: JamilihArray | JamilihFirstArg | Node) => void;
10
+ export type appender = (childJML: JamilihArray | JamilihFirstArg | Node) => void;
11
+ export type JamilihReturn = Element | DocumentFragment | Comment | Attr | Text | Document | DocumentType | ProcessingInstruction | CDATASection;
12
+ /**
13
+ * Can either be an array of:
14
+ * 1. JamilihAttributes followed by an array of JamilihArrays or Elements.
15
+ * (Cannot be multiple single JamilihArrays despite TS type).
16
+ * 2. Any number of JamilihArrays.
17
+ */
18
+ export type TemplateJamilihArray = [(JamilihAttributes | [string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]] | [string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]][] | Element), ...([string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]] | [string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]][] | Element)[]];
19
+ export type ShadowRootJamilihArrayContainer = ([string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]] | Element)[];
20
+ export type ShadowRoot = {
21
+ open?: boolean | (Element | JamilihArray)[];
22
+ closed?: boolean | (Element | JamilihArray)[];
23
+ template?: string | HTMLTemplateElement | [Element | JamilihArray | JamilihAttributes | JamilihArray[], ...(Element | JamilihArray | JamilihArray[])[]];
24
+ content?: (Element | JamilihArray)[];
25
+ };
26
+ export type XmlnsAttributeObject = {
27
+ [key: string]: string;
28
+ };
29
+ export type XmlnsAttribute = null | XmlnsAttributeObject;
30
+ export type DatasetAttributeObject = {
31
+ [key: string]: string | number | ((this: Element, ...args: any[]) => any);
32
+ };
33
+ export type StyleAttributeObject = string | {
34
+ [key: string]: string | null;
35
+ } | undefined;
36
+ export type OnAttributeObject = {
37
+ [key: string]: (this: Element, event?: Event) => void;
38
+ };
39
+ export type BooleanAttribute = boolean;
40
+ export type HandlerAttribute = ((...arg: any[]) => any) | {
41
+ [key: string]: [(this: Element, ...arg: any[]) => any, (boolean | undefined)?] | ((this: Element, ...arg: any[]) => any);
42
+ };
43
+ export type StringifiableNumber = number;
44
+ export type JamilihDocumentType = {
45
+ name: string;
46
+ systemId?: string;
47
+ publicId?: string;
48
+ };
49
+ export type DefineOptions = {
50
+ extends?: string;
51
+ };
52
+ export type DefineMixin = {
53
+ [key: string]: any;
54
+ };
55
+ export type DefineConstructor = {
56
+ new (): HTMLElement;
57
+ prototype: HTMLElement & {
58
+ [key: string]: any;
59
+ };
60
+ };
61
+ export type DefineObjectArray = [DefineConstructor | DefineMixin, DefineOptions?] | [DefineConstructor, DefineMixin?, DefineOptions?];
62
+ export type DefineObject = DefineObjectArray | DefineConstructor | DefineMixin;
63
+ export type SymbolObject = {
64
+ [key: string]: any;
65
+ elem?: Element | undefined;
66
+ };
67
+ export type SymbolArray = [string | symbol, SymbolObject | ((this: Element, ...args: any[]) => any)];
68
+ export type JamilihAttValue = (string | [string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]] | ShadowRoot | StringifiableNumber | JamilihDocumentType | JamilihDocument | XmlnsAttribute | BooleanAttribute | HandlerAttribute | DefineObject | [string | symbol, SymbolObject | ((this: Element, ...args: any[]) => any)]);
69
+ export type DataAttributeObject = {
70
+ [key: string]: string | number | ((this: Element, ...args: any[]) => any);
71
+ };
72
+ export type DataAttribute = {
73
+ $data?: true | string[] | Map<any, any> | WeakMap<any, any> | DataAttributeObject | [
74
+ Map<any, any> | WeakMap<any, any> | undefined,
75
+ DataAttributeObject
76
+ ];
77
+ };
78
+ export type StyleAttribute = {
79
+ style?: StyleAttributeObject;
80
+ };
81
+ export type JamilihAttributes = {
82
+ [key: string]: JamilihAttValue;
83
+ } & DataAttribute & StyleAttribute;
84
+ export type JamilihDocument = {
85
+ title?: string;
86
+ childNodes?: JamilihChildType[];
87
+ $DOCTYPE?: JamilihDocumentType;
88
+ head?: (string | Element | Text | Comment | DocumentFragment | ProcessingInstruction | JamilihArray | JamilihDocumentFragment | JamilihProcessingInstruction | PluginReference)[];
89
+ body?: (string | Element | Text | Comment | DocumentFragment | ProcessingInstruction | JamilihArray | JamilihDocumentFragment | JamilihProcessingInstruction | PluginReference)[];
90
+ };
91
+ export type JamilihDoc = {
92
+ $document: JamilihDocument;
93
+ };
94
+ export type JamilihDoctype = {
95
+ $DOCTYPE: JamilihDocumentType;
96
+ };
97
+ export type JamilihDocumentFragment = {
98
+ '#': ([string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]] | TextNodeString | Element)[];
99
+ };
100
+ export type ElementName = string;
101
+ export type TextNodeString = string;
102
+ export type PluginReference = {
103
+ [key: string]: string;
104
+ };
105
+ export type JamilihChildren = ([string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]] | TextNodeString | Element | Comment | ProcessingInstruction | Text | DocumentFragment | [code: "?", target: string, value: string] | JamilihDocumentFragment | PluginReference)[];
106
+ /**
107
+ * The optional 0th argument is an Jamilih options object or fragment.
108
+ *
109
+ * The first argument is the element to create (by lower-case name) or DOM element.
110
+ *
111
+ * The second optional argument are attributes to add with the key as the
112
+ * attribute name and value as the attribute value.
113
+ * The third optional argument are an array of children for this element
114
+ * (but raw DOM elements are required to be specified within arrays since
115
+ * could not otherwise be distinguished from siblings being added).
116
+ * The fourth optional argument are a sequence of sibling Elements, represented
117
+ * as DOM elements, or string/attributes/children sequences.
118
+ * The fifth optional argument is the parent to which to attach the element
119
+ * (always the last unless followed by null, in which case it is the
120
+ * second-to-last).
121
+ * The sixth last optional argument is null, used to indicate an array of elements
122
+ * should be returned.
123
+ */
124
+ export type JamilihArray = [
125
+ JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihOptions | ElementName | Element | Document | JamilihDocumentFragment | DocumentFragment,
126
+ (ElementName | Element | DocumentFragment | Document | JamilihAttributes | (string | Element | Text | Comment | DocumentFragment | ProcessingInstruction | JamilihArray | JamilihDocumentFragment | JamilihProcessingInstruction | PluginReference)[] | JamilihAttributes | globalThis.ShadowRoot | null)?,
127
+ ((string | Element | Text | Comment | DocumentFragment | ProcessingInstruction | JamilihArray | JamilihDocumentFragment | JamilihProcessingInstruction | PluginReference)[] | Element | ElementName | JamilihAttributes | globalThis.ShadowRoot | null)?,
128
+ ...(ElementName | Element | JamilihAttributes | (string | Element | Text | Comment | DocumentFragment | ProcessingInstruction | JamilihArray | JamilihDocumentFragment | JamilihProcessingInstruction | PluginReference)[] | globalThis.ShadowRoot | null)[]
129
+ ];
130
+ export type JamilihArrayPostOptions = [
131
+ (string | Element | globalThis.ShadowRoot),
132
+ ([string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]][] | JamilihAttributes | Element | globalThis.ShadowRoot | null)?,
133
+ ...([string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]][] | Element | JamilihAttributes | globalThis.ShadowRoot | null)[]
134
+ ];
135
+ export type MapWithRoot = {
136
+ [key: string]: [Map<Element, any> | WeakMap<Element, any>, any];
137
+ root: [Map<Element, any> | WeakMap<Element, any>, any];
138
+ };
139
+ export type TraversalState = "root" | "attributeValue" | "element" | "fragment" | "children" | "fragmentChildren";
140
+ export type JamilihOptions = {
141
+ $state?: TraversalState | undefined;
142
+ $plugins?: JamilihPlugin[] | undefined;
143
+ $map?: [Map<Element, any> | WeakMap<Element, any>, any] | MapWithRoot | undefined;
144
+ };
145
+ export type HTMLWindow = Window & {
146
+ DocumentFragment: any;
147
+ };
148
+ export type ArbitraryValue = any;
149
+ export type Integer = number;
150
+ export type PluginSettings = {
151
+ element: Document | Element | DocumentFragment;
152
+ attribute: {
153
+ name: string | null;
154
+ value: JamilihAttValue;
155
+ };
156
+ opts: JamilihOptions;
157
+ };
158
+ export type JamilihPlugin = {
159
+ name: string;
160
+ set: (opts: PluginSettings) => string;
161
+ };
162
+ /**
163
+ * Configuration object.
164
+ */
165
+ export type ToJmlConfig = {
166
+ /**
167
+ * Whether to output the Jamilih object as a string.
168
+ */
169
+ stringOutput?: boolean | undefined;
170
+ /**
171
+ * If true (the default), will report invalid state errors
172
+ */
173
+ reportInvalidState?: boolean | undefined;
174
+ /**
175
+ * Strip whitespace for text nodes
176
+ */
177
+ stripWhitespace?: boolean | undefined;
178
+ };
179
+ export type JamilihAttributeNodeValue = [namespace: string | null, name: string, value?: string];
180
+ export type JamilihAttributeNode = {
181
+ $attribute: [namespace: string | null, name: string, value?: string | undefined];
182
+ };
183
+ export type JamilihTextNode = {
184
+ $text: string;
185
+ };
186
+ export type JamilihCDATANode = ['![', string];
187
+ export type JamilihEntityReference = ['&', string];
188
+ export type JamilihProcessingInstruction = [code: '?', target: string, value: string];
189
+ export type JamilihComment = [code: '!', value: string];
190
+ export type Entity = {
191
+ nodeType: number;
192
+ nodeName: string;
193
+ };
194
+ export type JamilihChildType = [string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, (string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined)?, (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined)?, ...(string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]] | JamilihDoctype | ["![", string] | ["&", string] | [code: "?", target: string, value: string] | [code: "!", value: string] | JamilihDocumentFragment;
195
+ export type JamilihType = JamilihDoc | JamilihAttributeNode | JamilihChildType;
196
+ export type MapAndElementArray = [JamilihWeakMap | JamilihMap, Element];
197
+ export type MapCommand = {
198
+ [key: string]: (elem: Element, ...args: any[]) => void;
199
+ } | ((elem: Element, ...args: any[]) => void);
200
+ /**
201
+ * @param {string} sel
202
+ * @returns {Element|null}
203
+ */
204
+ export function $(sel: string): Element | null;
205
+ /**
206
+ * @param {string} sel
207
+ * @returns {Element[]}
208
+ */
209
+ export function $$(sel: string): Element[];
210
+ /**
211
+ * Configuration object.
212
+ * @typedef {object} ToJmlConfig
213
+ * @property {boolean} [stringOutput=false] Whether to output the Jamilih object as a string.
214
+ * @property {boolean} [reportInvalidState=true] If true (the default), will report invalid state errors
215
+ * @property {boolean} [stripWhitespace=false] Strip whitespace for text nodes
216
+ */
217
+ /**
218
+ * @typedef {[namespace: string|null, name: string, value?: string]} JamilihAttributeNodeValue
219
+ */
220
+ /**
221
+ * @typedef {{
222
+ * $attribute: JamilihAttributeNodeValue
223
+ * }} JamilihAttributeNode
224
+ */
225
+ /**
226
+ * @typedef {{
227
+ * $text: string
228
+ * }} JamilihTextNode
229
+ */
230
+ /**
231
+ * @typedef {['![', string]} JamilihCDATANode
232
+ */
233
+ /**
234
+ * @typedef {['&', string]} JamilihEntityReference
235
+ */
236
+ /**
237
+ * @typedef {[code: '?', target: string, value: string]} JamilihProcessingInstruction
238
+ */
239
+ /**
240
+ * @typedef {[code: '!', value: string]} JamilihComment
241
+ */
242
+ /**
243
+ * @typedef {{
244
+ * nodeType: number,
245
+ * nodeName: string
246
+ * }} Entity
247
+ */
248
+ /**
249
+ * Polyfill for `DOMException`.
250
+ */
251
+ export class DOMException extends Error {
252
+ /**
253
+ * @param {string} message
254
+ * @param {string} name
255
+ */
256
+ constructor(message: string, name: string);
257
+ code: number;
258
+ }
259
+ /**
260
+ * @type {HTMLBodyElement}
261
+ */
262
+ export let body: HTMLBodyElement;
263
+ /**
264
+ * Creates an XHTML or HTML element (XHTML is preferred, but only in browsers
265
+ * that support); any element after element can be omitted, and any subsequent
266
+ * type or types added afterwards.
267
+ * @param {JamilihArray} args
268
+ * @returns {JamilihReturn} The newly created (and possibly already appended)
269
+ * element or array of elements
270
+ */
271
+ export function jml(args_0: string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, args_1?: string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined, args_2?: string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined, ...args_3: (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]): JamilihReturn;
272
+ export namespace jml {
273
+ /**
274
+ * @typedef {JamilihArray|JamilihDoctype|
275
+ * JamilihCDATANode|JamilihEntityReference|JamilihProcessingInstruction|
276
+ * JamilihComment|JamilihDocumentFragment} JamilihChildType
277
+ */
278
+ /**
279
+ * @typedef {JamilihDoc|JamilihAttributeNode|JamilihChildType} JamilihType
280
+ */
281
+ /**
282
+ * Converts a DOM object or a string of HTML into a Jamilih object (or string).
283
+ * @param {string|HTMLElement|Node|Entity} nde If a string, will parse as document
284
+ * @param {ToJmlConfig} [config] Configuration object
285
+ * @throws {TypeError}
286
+ * @returns {JamilihType|string} Array containing the elements which represent
287
+ * a Jamilih object, or, if `stringOutput` is true, it will be the stringified
288
+ * version of such an object
289
+ */
290
+ export function toJML(nde: string | Node | HTMLElement | Entity, { stringOutput, reportInvalidState, stripWhitespace }?: ToJmlConfig | undefined): string | JamilihType;
291
+ /**
292
+ * @param {string|HTMLElement} dom
293
+ * @param {ToJmlConfig} [config]
294
+ * @returns {string}
295
+ */
296
+ export function toJMLString(dom: string | HTMLElement, config?: ToJmlConfig | undefined): string;
297
+ /**
298
+ *
299
+ * @param {JamilihArray} args
300
+ * @returns {JamilihReturn}
301
+ */
302
+ export function toDOM(args_0: string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, args_1?: string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined, args_2?: string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined, ...args_3: (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]): JamilihReturn;
303
+ /**
304
+ *
305
+ * @param {JamilihArray} args
306
+ * @returns {string}
307
+ */
308
+ export function toHTML(args_0: string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, args_1?: string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined, args_2?: string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined, ...args_3: (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]): string;
309
+ /**
310
+ *
311
+ * @param {JamilihArray} args
312
+ * @returns {string}
313
+ */
314
+ export function toDOMString(args_0: string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, args_1?: string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined, args_2?: string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined, ...args_3: (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]): string;
315
+ /**
316
+ *
317
+ * @param {JamilihArray} args
318
+ * @returns {string}
319
+ */
320
+ export function toXML(args_0: string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, args_1?: string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined, args_2?: string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined, ...args_3: (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]): string;
321
+ /**
322
+ *
323
+ * @param {JamilihArray} args
324
+ * @returns {string}
325
+ */
326
+ export function toXMLDOMString(args_0: string | Element | Document | DocumentFragment | JamilihOptions | JamilihDoc | JamilihDoctype | JamilihTextNode | JamilihAttributeNode | JamilihDocumentFragment, args_1?: string | Element | Document | globalThis.ShadowRoot | DocumentFragment | JamilihAttributes | JamilihChildren | null | undefined, args_2?: string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null | undefined, ...args_3: (string | Element | globalThis.ShadowRoot | JamilihAttributes | JamilihChildren | null)[]): string;
327
+ export { JamilihMap as Map };
328
+ export { JamilihWeakMap as WeakMap };
329
+ /**
330
+ * @typedef {[JamilihWeakMap|JamilihMap, Element]} MapAndElementArray
331
+ */
332
+ /**
333
+ * @param {{[key: string]: any}} obj
334
+ * @param {JamilihArrayPostOptions} args
335
+ * @returns {MapAndElementArray}
336
+ */
337
+ export function weak(obj: {
338
+ [key: string]: any;
339
+ }, args_0: string | Element | globalThis.ShadowRoot, args_1?: Element | globalThis.ShadowRoot | JamilihAttributes | JamilihArray[] | null | undefined, ...args_2: (Element | globalThis.ShadowRoot | JamilihAttributes | JamilihArray[] | null)[]): MapAndElementArray;
340
+ /**
341
+ * @param {ArbitraryValue} obj
342
+ * @param {JamilihArrayPostOptions} args
343
+ * @returns {MapAndElementArray}
344
+ */
345
+ export function strong(obj: any, args_0: string | Element | globalThis.ShadowRoot, args_1?: Element | globalThis.ShadowRoot | JamilihAttributes | JamilihArray[] | null | undefined, ...args_2: (Element | globalThis.ShadowRoot | JamilihAttributes | JamilihArray[] | null)[]): MapAndElementArray;
346
+ export function symbol(element: string | Element, sym: string | symbol): any;
347
+ export function sym(element: string | Element, sym: string | symbol): any;
348
+ function _for(element: string | Element, sym: string | symbol): any;
349
+ export { _for as for };
350
+ /**
351
+ * @typedef {((elem: Element, ...args: any[]) => void)|{[key: string]: (elem: Element, ...args: any[]) => void}} MapCommand
352
+ */
353
+ /**
354
+ * @param {?(string|Element)} elem If a string, will be interpreted as a selector
355
+ * @param {symbol|string|Map<Element, MapCommand>|WeakMap<Element, MapCommand>} symOrMap If a string, will be used with `Symbol.for`
356
+ * @param {string|any} methodName Can be `any` if the symbol or map directly
357
+ * points to a function (it is then used as the first argument).
358
+ * @param {ArbitraryValue[]} args
359
+ * @returns {ArbitraryValue}
360
+ */
361
+ export function command(elem: string | Element | null, symOrMap: string | symbol | Map<Element, MapCommand> | WeakMap<Element, MapCommand>, methodName: any, ...args: any[]): any;
362
+ /**
363
+ * Expects properties `document`, `XMLSerializer`, and `DOMParser`.
364
+ * Also updates `body` with `document.body`.
365
+ * @param {import('jsdom').DOMWindow|HTMLWindow} wind
366
+ * @returns {void}
367
+ */
368
+ export function setWindow(wind: HTMLWindow | import("jsdom").DOMWindow): void;
369
+ /**
370
+ * @returns {import('jsdom').DOMWindow|HTMLWindow}
371
+ */
372
+ export function getWindow(): HTMLWindow | import("jsdom").DOMWindow;
373
+ }
374
+ /**
375
+ * Does not run Jamilih so can be further processed.
376
+ * @param {ArbitraryValue[]} array
377
+ * @param {ArbitraryValue} glu
378
+ * @returns {ArbitraryValue[]}
379
+ */
380
+ export function glue(array: ArbitraryValue[], glu: ArbitraryValue): ArbitraryValue[];
381
+ export const nbsp: " ";
382
+ /**
383
+ * Element-aware wrapper for `WeakMap`.
384
+ * @extends {WeakMap<any>}
385
+ */
386
+ declare class JamilihWeakMap extends WeakMap<any, any> {
387
+ constructor(entries?: readonly [any, any][] | null | undefined);
388
+ constructor(iterable: Iterable<readonly [any, any]>);
389
+ /**
390
+ * @param {Element} element
391
+ * @returns {ArbitraryValue}
392
+ */
393
+ get(element: Element): ArbitraryValue;
394
+ /**
395
+ * @param {Element} element
396
+ * @param {ArbitraryValue} value
397
+ * @returns {ArbitraryValue}
398
+ */
399
+ set(element: Element, value: ArbitraryValue): ArbitraryValue;
400
+ /**
401
+ * @param {string|Element} element
402
+ * @param {string} methodName
403
+ * @param {...ArbitraryValue} args
404
+ * @returns {ArbitraryValue}
405
+ */
406
+ invoke(element: string | Element, methodName: string, ...args: ArbitraryValue[]): ArbitraryValue;
407
+ }
408
+ /**
409
+ * Element-aware wrapper for `Map`.
410
+ */
411
+ declare class JamilihMap extends Map<any, any> {
412
+ constructor();
413
+ constructor(entries?: readonly (readonly [any, any])[] | null | undefined);
414
+ constructor();
415
+ constructor(iterable?: Iterable<readonly [any, any]> | null | undefined);
416
+ /**
417
+ * @param {?(string|Element)} element
418
+ * @returns {ArbitraryValue}
419
+ */
420
+ get(element: (string | Element) | null): ArbitraryValue;
421
+ /**
422
+ * @param {string|Element} element
423
+ * @param {ArbitraryValue} value
424
+ * @returns {ArbitraryValue}
425
+ */
426
+ set(element: string | Element, value: ArbitraryValue): ArbitraryValue;
427
+ /**
428
+ * @param {string|Element} element
429
+ * @param {string} methodName
430
+ * @param {...ArbitraryValue} args
431
+ * @returns {ArbitraryValue}
432
+ */
433
+ invoke(element: string | Element, methodName: string, ...args: ArbitraryValue[]): ArbitraryValue;
434
+ }
435
+ export { jml as default };
436
+ //# sourceMappingURL=jml-es.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jml-es.d.ts","sourceRoot":"","sources":["../../../../vendor/jamilih/dist/jml-es.js"],"names":[],"mappings":"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"}