amateras 0.7.4 → 0.10.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 (257) hide show
  1. package/README.md +76 -85
  2. package/package.json +29 -33
  3. package/tsconfig.json +4 -3
  4. package/packages/core/package.json +0 -32
  5. package/packages/core/src/env.browser.ts +0 -21
  6. package/packages/core/src/env.node.ts +0 -21
  7. package/packages/core/src/global.ts +0 -18
  8. package/packages/core/src/index.ts +0 -96
  9. package/packages/core/src/lib/assignNodeProperties.ts +0 -11
  10. package/packages/core/src/lib/assignProperties.ts +0 -57
  11. package/packages/core/src/lib/chain.ts +0 -17
  12. package/packages/core/src/lib/dom.ts +0 -20
  13. package/packages/core/src/main.ts +0 -4
  14. package/packages/core/src/node/$Element.ts +0 -366
  15. package/packages/core/src/node/$EventTarget.ts +0 -48
  16. package/packages/core/src/node/$HTMLElement.ts +0 -99
  17. package/packages/core/src/node/$Node.ts +0 -201
  18. package/packages/core/src/node/$Virtual.ts +0 -65
  19. package/packages/css/README.md +0 -128
  20. package/packages/css/package.json +0 -17
  21. package/packages/css/src/ext/colors/amber.ts +0 -25
  22. package/packages/css/src/ext/colors/blackwhite.ts +0 -13
  23. package/packages/css/src/ext/colors/blue.ts +0 -25
  24. package/packages/css/src/ext/colors/cyan.ts +0 -25
  25. package/packages/css/src/ext/colors/emerald.ts +0 -25
  26. package/packages/css/src/ext/colors/fuchsia.ts +0 -25
  27. package/packages/css/src/ext/colors/gray.ts +0 -25
  28. package/packages/css/src/ext/colors/green.ts +0 -25
  29. package/packages/css/src/ext/colors/indigo.ts +0 -25
  30. package/packages/css/src/ext/colors/lime.ts +0 -25
  31. package/packages/css/src/ext/colors/neutral.ts +0 -25
  32. package/packages/css/src/ext/colors/orange.ts +0 -25
  33. package/packages/css/src/ext/colors/pink.ts +0 -25
  34. package/packages/css/src/ext/colors/purple.ts +0 -25
  35. package/packages/css/src/ext/colors/red.ts +0 -25
  36. package/packages/css/src/ext/colors/rose.ts +0 -25
  37. package/packages/css/src/ext/colors/sky.ts +0 -25
  38. package/packages/css/src/ext/colors/slate.ts +0 -25
  39. package/packages/css/src/ext/colors/stone.ts +0 -25
  40. package/packages/css/src/ext/colors/teal.ts +0 -25
  41. package/packages/css/src/ext/colors/violet.ts +0 -25
  42. package/packages/css/src/ext/colors/yellow.ts +0 -25
  43. package/packages/css/src/ext/colors/zinc.ts +0 -25
  44. package/packages/css/src/ext/colors.ts +0 -23
  45. package/packages/css/src/ext/container.ts +0 -32
  46. package/packages/css/src/ext/keyframes.ts +0 -54
  47. package/packages/css/src/ext/media.ts +0 -32
  48. package/packages/css/src/ext/property.ts +0 -48
  49. package/packages/css/src/ext/variable.ts +0 -51
  50. package/packages/css/src/index.ts +0 -436
  51. package/packages/css/src/lib/colorAssign.ts +0 -6
  52. package/packages/css/src/lib/utils.ts +0 -11
  53. package/packages/css/src/structure/$CSSContainerRule.ts +0 -13
  54. package/packages/css/src/structure/$CSSDeclaration.ts +0 -16
  55. package/packages/css/src/structure/$CSSKeyframesRule.ts +0 -13
  56. package/packages/css/src/structure/$CSSMediaRule.ts +0 -10
  57. package/packages/css/src/structure/$CSSProperty.ts +0 -19
  58. package/packages/css/src/structure/$CSSRule.ts +0 -13
  59. package/packages/css/src/structure/$CSSStyleRule.ts +0 -14
  60. package/packages/css/src/structure/$CSSVariable.ts +0 -30
  61. package/packages/dom/package.json +0 -20
  62. package/packages/dom/src/lib/HTMLElementMap.ts +0 -213
  63. package/packages/dom/src/lib/assignAttributes.ts +0 -16
  64. package/packages/dom/src/structure/CSS.ts +0 -7
  65. package/packages/dom/src/structure/CSSStyleSheet.ts +0 -10
  66. package/packages/dom/src/structure/DOMTokenList.ts +0 -19
  67. package/packages/dom/src/structure/Document.ts +0 -36
  68. package/packages/dom/src/structure/Element.ts +0 -106
  69. package/packages/dom/src/structure/HTMLElement.ts +0 -34
  70. package/packages/dom/src/structure/History.ts +0 -11
  71. package/packages/dom/src/structure/Location.ts +0 -9
  72. package/packages/dom/src/structure/Node.ts +0 -51
  73. package/packages/dom/src/structure/NodeList.ts +0 -10
  74. package/packages/dom/src/structure/Storage.ts +0 -8
  75. package/packages/dom/src/structure/Text.ts +0 -20
  76. package/packages/dom/src/structure/Window.ts +0 -14
  77. package/packages/dom/src/structure/html/HTMLAbbrElement.ts +0 -16
  78. package/packages/dom/src/structure/html/HTMLAddressElement.ts +0 -16
  79. package/packages/dom/src/structure/html/HTMLAnchorElement.ts +0 -25
  80. package/packages/dom/src/structure/html/HTMLAreaElement.ts +0 -26
  81. package/packages/dom/src/structure/html/HTMLArticleElement.ts +0 -16
  82. package/packages/dom/src/structure/html/HTMLAsideElement.ts +0 -16
  83. package/packages/dom/src/structure/html/HTMLAudioElement.ts +0 -16
  84. package/packages/dom/src/structure/html/HTMLBDIElement.ts +0 -16
  85. package/packages/dom/src/structure/html/HTMLBDOElement.ts +0 -16
  86. package/packages/dom/src/structure/html/HTMLBElement.ts +0 -16
  87. package/packages/dom/src/structure/html/HTMLBRElement.ts +0 -17
  88. package/packages/dom/src/structure/html/HTMLBaseElement.ts +0 -18
  89. package/packages/dom/src/structure/html/HTMLBodyElement.ts +0 -22
  90. package/packages/dom/src/structure/html/HTMLButtonElement.ts +0 -26
  91. package/packages/dom/src/structure/html/HTMLCanvasElement.ts +0 -18
  92. package/packages/dom/src/structure/html/HTMLCiteElement.ts +0 -16
  93. package/packages/dom/src/structure/html/HTMLCodeElement.ts +0 -16
  94. package/packages/dom/src/structure/html/HTMLDDElement.ts +0 -16
  95. package/packages/dom/src/structure/html/HTMLDFNElement.ts +0 -16
  96. package/packages/dom/src/structure/html/HTMLDListElement.ts +0 -17
  97. package/packages/dom/src/structure/html/HTMLDTElement.ts +0 -16
  98. package/packages/dom/src/structure/html/HTMLDataElement.ts +0 -17
  99. package/packages/dom/src/structure/html/HTMLDataListElement.ts +0 -16
  100. package/packages/dom/src/structure/html/HTMLDetailsElement.ts +0 -17
  101. package/packages/dom/src/structure/html/HTMLDialogElement.ts +0 -18
  102. package/packages/dom/src/structure/html/HTMLDivElement.ts +0 -17
  103. package/packages/dom/src/structure/html/HTMLEMElement.ts +0 -16
  104. package/packages/dom/src/structure/html/HTMLEmbedElement.ts +0 -20
  105. package/packages/dom/src/structure/html/HTMLFieldSetElement.ts +0 -19
  106. package/packages/dom/src/structure/html/HTMLFigCaptionElement.ts +0 -16
  107. package/packages/dom/src/structure/html/HTMLFigureElement.ts +0 -16
  108. package/packages/dom/src/structure/html/HTMLFooterElement.ts +0 -16
  109. package/packages/dom/src/structure/html/HTMLFormElement.ts +0 -24
  110. package/packages/dom/src/structure/html/HTMLHGroupElement.ts +0 -16
  111. package/packages/dom/src/structure/html/HTMLHRElement.ts +0 -21
  112. package/packages/dom/src/structure/html/HTMLHeadElement.ts +0 -16
  113. package/packages/dom/src/structure/html/HTMLHeaderElement.ts +0 -16
  114. package/packages/dom/src/structure/html/HTMLHeadingElement.ts +0 -17
  115. package/packages/dom/src/structure/html/HTMLHtmlElement.ts +0 -18
  116. package/packages/dom/src/structure/html/HTMLIElement.ts +0 -16
  117. package/packages/dom/src/structure/html/HTMLIFrameElement.ts +0 -31
  118. package/packages/dom/src/structure/html/HTMLImageElement.ts +0 -38
  119. package/packages/dom/src/structure/html/HTMLInputElement.ts +0 -55
  120. package/packages/dom/src/structure/html/HTMLKBDElement.ts +0 -16
  121. package/packages/dom/src/structure/html/HTMLLIElement.ts +0 -18
  122. package/packages/dom/src/structure/html/HTMLLabelElement.ts +0 -18
  123. package/packages/dom/src/structure/html/HTMLLegendElement.ts +0 -17
  124. package/packages/dom/src/structure/html/HTMLLinkElement.ts +0 -31
  125. package/packages/dom/src/structure/html/HTMLMainElement.ts +0 -16
  126. package/packages/dom/src/structure/html/HTMLMapElement.ts +0 -17
  127. package/packages/dom/src/structure/html/HTMLMarkElement.ts +0 -16
  128. package/packages/dom/src/structure/html/HTMLMediaElement.ts +0 -48
  129. package/packages/dom/src/structure/html/HTMLMenuElement.ts +0 -18
  130. package/packages/dom/src/structure/html/HTMLMetaElement.ts +0 -22
  131. package/packages/dom/src/structure/html/HTMLMeterElement.ts +0 -23
  132. package/packages/dom/src/structure/html/HTMLModElement.ts +0 -18
  133. package/packages/dom/src/structure/html/HTMLNavElement.ts +0 -16
  134. package/packages/dom/src/structure/html/HTMLNoscriptElement.ts +0 -16
  135. package/packages/dom/src/structure/html/HTMLOListElement.ts +0 -20
  136. package/packages/dom/src/structure/html/HTMLObjectElement.ts +0 -34
  137. package/packages/dom/src/structure/html/HTMLOptGroupElement.ts +0 -18
  138. package/packages/dom/src/structure/html/HTMLOptionElement.ts +0 -20
  139. package/packages/dom/src/structure/html/HTMLOutputElement.ts +0 -20
  140. package/packages/dom/src/structure/html/HTMLParagraphElement.ts +0 -17
  141. package/packages/dom/src/structure/html/HTMLPictureElement.ts +0 -16
  142. package/packages/dom/src/structure/html/HTMLPreElement.ts +0 -17
  143. package/packages/dom/src/structure/html/HTMLProgressElement.ts +0 -19
  144. package/packages/dom/src/structure/html/HTMLQuoteElement.ts +0 -17
  145. package/packages/dom/src/structure/html/HTMLRPElement.ts +0 -16
  146. package/packages/dom/src/structure/html/HTMLRTElement.ts +0 -16
  147. package/packages/dom/src/structure/html/HTMLRubyElement.ts +0 -16
  148. package/packages/dom/src/structure/html/HTMLSElement.ts +0 -16
  149. package/packages/dom/src/structure/html/HTMLSampElement.ts +0 -16
  150. package/packages/dom/src/structure/html/HTMLScriptElement.ts +0 -27
  151. package/packages/dom/src/structure/html/HTMLSectionElement.ts +0 -16
  152. package/packages/dom/src/structure/html/HTMLSelectElement.ts +0 -27
  153. package/packages/dom/src/structure/html/HTMLSlotElement.ts +0 -17
  154. package/packages/dom/src/structure/html/HTMLSmallElement.ts +0 -16
  155. package/packages/dom/src/structure/html/HTMLSourceElement.ts +0 -21
  156. package/packages/dom/src/structure/html/HTMLSpanElement.ts +0 -16
  157. package/packages/dom/src/structure/html/HTMLStrongElement.ts +0 -16
  158. package/packages/dom/src/structure/html/HTMLStyleElement.ts +0 -18
  159. package/packages/dom/src/structure/html/HTMLSubElement.ts +0 -16
  160. package/packages/dom/src/structure/html/HTMLSummaryElement.ts +0 -16
  161. package/packages/dom/src/structure/html/HTMLSupElement.ts +0 -16
  162. package/packages/dom/src/structure/html/HTMLTableCaptionElement.ts +0 -17
  163. package/packages/dom/src/structure/html/HTMLTableCellElement.ts +0 -31
  164. package/packages/dom/src/structure/html/HTMLTableColElement.ts +0 -23
  165. package/packages/dom/src/structure/html/HTMLTableElement.ts +0 -26
  166. package/packages/dom/src/structure/html/HTMLTableRowElement.ts +0 -23
  167. package/packages/dom/src/structure/html/HTMLTableSectionElement.ts +0 -20
  168. package/packages/dom/src/structure/html/HTMLTemplateElement.ts +0 -17
  169. package/packages/dom/src/structure/html/HTMLTextAreaElement.ts +0 -33
  170. package/packages/dom/src/structure/html/HTMLTimeElement.ts +0 -17
  171. package/packages/dom/src/structure/html/HTMLTitleElement.ts +0 -17
  172. package/packages/dom/src/structure/html/HTMLTrackElement.ts +0 -21
  173. package/packages/dom/src/structure/html/HTMLUElement.ts +0 -16
  174. package/packages/dom/src/structure/html/HTMLUListElement.ts +0 -18
  175. package/packages/dom/src/structure/html/HTMLVarElement.ts +0 -16
  176. package/packages/dom/src/structure/html/HTMLVideoElement.ts +0 -22
  177. package/packages/dom/src/structure/html/HTMLWBRElement.ts +0 -16
  178. package/packages/html/package.json +0 -18
  179. package/packages/html/src/index.ts +0 -13
  180. package/packages/html/src/node/$Anchor.ts +0 -49
  181. package/packages/html/src/node/$Canvas.ts +0 -38
  182. package/packages/html/src/node/$Dialog.ts +0 -16
  183. package/packages/html/src/node/$Form.ts +0 -16
  184. package/packages/html/src/node/$Image.ts +0 -72
  185. package/packages/html/src/node/$Input.ts +0 -193
  186. package/packages/html/src/node/$Label.ts +0 -25
  187. package/packages/html/src/node/$Media.ts +0 -16
  188. package/packages/html/src/node/$OptGroup.ts +0 -23
  189. package/packages/html/src/node/$Option.ts +0 -40
  190. package/packages/html/src/node/$Select.ts +0 -76
  191. package/packages/html/src/node/$TextArea.ts +0 -16
  192. package/packages/i18n/README.md +0 -73
  193. package/packages/i18n/package.json +0 -19
  194. package/packages/i18n/src/index.ts +0 -140
  195. package/packages/i18n/src/structure/I18n.ts +0 -44
  196. package/packages/i18n/src/structure/I18nDictionary.ts +0 -31
  197. package/packages/i18n/src/structure/I18nTranslation.ts +0 -41
  198. package/packages/idb/README.md +0 -127
  199. package/packages/idb/package.json +0 -19
  200. package/packages/idb/src/core.ts +0 -6
  201. package/packages/idb/src/index.ts +0 -17
  202. package/packages/idb/src/lib/$IDBRequest.ts +0 -8
  203. package/packages/idb/src/structure/$IDB.ts +0 -63
  204. package/packages/idb/src/structure/$IDBCursor.ts +0 -34
  205. package/packages/idb/src/structure/$IDBIndex.ts +0 -48
  206. package/packages/idb/src/structure/$IDBStore.ts +0 -103
  207. package/packages/idb/src/structure/$IDBStoreBase.ts +0 -30
  208. package/packages/idb/src/structure/$IDBTransaction.ts +0 -38
  209. package/packages/idb/src/structure/builder/$IDBBuilder.ts +0 -229
  210. package/packages/idb/src/structure/builder/$IDBStoreBuilder.ts +0 -100
  211. package/packages/markdown/README.md +0 -53
  212. package/packages/markdown/package.json +0 -19
  213. package/packages/markdown/src/index.ts +0 -3
  214. package/packages/markdown/src/lib/type.ts +0 -26
  215. package/packages/markdown/src/lib/util.ts +0 -21
  216. package/packages/markdown/src/structure/Markdown.ts +0 -54
  217. package/packages/markdown/src/structure/MarkdownLexer.ts +0 -111
  218. package/packages/markdown/src/structure/MarkdownParser.ts +0 -34
  219. package/packages/markdown/src/syntax/alert.ts +0 -46
  220. package/packages/markdown/src/syntax/blockquote.ts +0 -35
  221. package/packages/markdown/src/syntax/bold.ts +0 -11
  222. package/packages/markdown/src/syntax/code.ts +0 -11
  223. package/packages/markdown/src/syntax/codeblock.ts +0 -44
  224. package/packages/markdown/src/syntax/heading.ts +0 -14
  225. package/packages/markdown/src/syntax/horizontalRule.ts +0 -11
  226. package/packages/markdown/src/syntax/image.ts +0 -23
  227. package/packages/markdown/src/syntax/italic.ts +0 -11
  228. package/packages/markdown/src/syntax/link.ts +0 -46
  229. package/packages/markdown/src/syntax/list.ts +0 -121
  230. package/packages/markdown/src/syntax/table.ts +0 -67
  231. package/packages/markdown/src/syntax/text.ts +0 -19
  232. package/packages/router/README.md +0 -175
  233. package/packages/router/package.json +0 -19
  234. package/packages/router/src/index.ts +0 -68
  235. package/packages/router/src/node/Page.ts +0 -38
  236. package/packages/router/src/node/Router.ts +0 -212
  237. package/packages/router/src/node/RouterAnchor.ts +0 -24
  238. package/packages/router/src/structure/PageBuilder.ts +0 -24
  239. package/packages/router/src/structure/Route.ts +0 -105
  240. package/packages/signal/README.md +0 -93
  241. package/packages/signal/package.json +0 -18
  242. package/packages/signal/src/index.ts +0 -221
  243. package/packages/signal/src/structure/Signal.ts +0 -38
  244. package/packages/ui/lib/VirtualScroll.ts +0 -25
  245. package/packages/ui/node/Accordian.ts +0 -97
  246. package/packages/ui/node/Carousel.ts +0 -20
  247. package/packages/ui/node/Form.ts +0 -54
  248. package/packages/ui/node/Grid.ts +0 -0
  249. package/packages/ui/node/Modal.ts +0 -45
  250. package/packages/ui/node/Table.ts +0 -43
  251. package/packages/ui/node/Tabs.ts +0 -129
  252. package/packages/ui/node/Toast.ts +0 -16
  253. package/packages/ui/node/Waterfall.ts +0 -94
  254. package/packages/ui/package.json +0 -21
  255. package/packages/utils/package.json +0 -17
  256. package/packages/utils/src/global.ts +0 -25
  257. package/packages/utils/src/index.ts +0 -90
@@ -1,213 +0,0 @@
1
- import { HTMLAbbrElement } from "#structure/html/HTMLAbbrElement";
2
- import { HTMLAddressElement } from "#structure/html/HTMLAddressElement";
3
- import { HTMLAnchorElement } from "#structure/html/HTMLAnchorElement";
4
- import { HTMLAreaElement } from "#structure/html/HTMLAreaElement";
5
- import { HTMLArticleElement } from "#structure/html/HTMLArticleElement";
6
- import { HTMLAsideElement } from "#structure/html/HTMLAsideElement";
7
- import { HTMLAudioElement } from "#structure/html/HTMLAudioElement";
8
- import { HTMLBDIElement } from "#structure/html/HTMLBDIElement";
9
- import { HTMLBDOElement } from "#structure/html/HTMLBDOElement";
10
- import { HTMLBElement } from "#structure/html/HTMLBElement";
11
- import { HTMLBRElement } from "#structure/html/HTMLBRElement";
12
- import { HTMLBaseElement } from "#structure/html/HTMLBaseElement";
13
- import { HTMLBodyElement } from "#structure/html/HTMLBodyElement";
14
- import { HTMLButtonElement } from "#structure/html/HTMLButtonElement";
15
- import { HTMLCanvasElement } from "#structure/html/HTMLCanvasElement";
16
- import { HTMLCiteElement } from "#structure/html/HTMLCiteElement";
17
- import { HTMLCodeElement } from "#structure/html/HTMLCodeElement";
18
- import { HTMLDDElement } from "#structure/html/HTMLDDElement";
19
- import { HTMLDFNElement } from "#structure/html/HTMLDFNElement";
20
- import { HTMLDListElement } from "#structure/html/HTMLDListElement";
21
- import { HTMLDTElement } from "#structure/html/HTMLDTElement";
22
- import { HTMLDataElement } from "#structure/html/HTMLDataElement";
23
- import { HTMLDataListElement } from "#structure/html/HTMLDataListElement";
24
- import { HTMLDetailsElement } from "#structure/html/HTMLDetailsElement";
25
- import { HTMLDialogElement } from "#structure/html/HTMLDialogElement";
26
- import { HTMLDivElement } from "#structure/html/HTMLDivElement";
27
- import { HTMLEMElement } from "#structure/html/HTMLEMElement";
28
- import { HTMLEmbedElement } from "#structure/html/HTMLEmbedElement";
29
- import { HTMLFieldSetElement } from "#structure/html/HTMLFieldSetElement";
30
- import { HTMLFigCaptionElement } from "#structure/html/HTMLFigCaptionElement";
31
- import { HTMLFigureElement } from "#structure/html/HTMLFigureElement";
32
- import { HTMLFooterElement } from "#structure/html/HTMLFooterElement";
33
- import { HTMLFormElement } from "#structure/html/HTMLFormElement";
34
- import { HTMLHGroupElement } from "#structure/html/HTMLHGroupElement";
35
- import { HTMLHRElement } from "#structure/html/HTMLHRElement";
36
- import { HTMLHeadElement } from "#structure/html/HTMLHeadElement";
37
- import { HTMLHeaderElement } from "#structure/html/HTMLHeaderElement";
38
- import { HTMLHeadingElement } from "#structure/html/HTMLHeadingElement";
39
- import { HTMLHtmlElement } from "#structure/html/HTMLHtmlElement";
40
- import { HTMLIElement } from "#structure/html/HTMLIElement";
41
- import { HTMLIFrameElement } from "#structure/html/HTMLIFrameElement";
42
- import { HTMLImageElement } from "#structure/html/HTMLImageElement";
43
- import { HTMLInputElement } from "#structure/html/HTMLInputElement";
44
- import { HTMLKBDElement } from "#structure/html/HTMLKBDElement";
45
- import { HTMLLIElement } from "#structure/html/HTMLLIElement";
46
- import { HTMLLabelElement } from "#structure/html/HTMLLabelElement";
47
- import { HTMLLegendElement } from "#structure/html/HTMLLegendElement";
48
- import { HTMLLinkElement } from "#structure/html/HTMLLinkElement";
49
- import { HTMLMainElement } from "#structure/html/HTMLMainElement";
50
- import { HTMLMapElement } from "#structure/html/HTMLMapElement";
51
- import { HTMLMarkElement } from "#structure/html/HTMLMarkElement";
52
- import { HTMLMenuElement } from "#structure/html/HTMLMenuElement";
53
- import { HTMLMetaElement } from "#structure/html/HTMLMetaElement";
54
- import { HTMLMeterElement } from "#structure/html/HTMLMeterElement";
55
- import { HTMLModElement } from "#structure/html/HTMLModElement";
56
- import { HTMLNavElement } from "#structure/html/HTMLNavElement";
57
- import { HTMLNoscriptElement } from "#structure/html/HTMLNoscriptElement";
58
- import { HTMLOListElement } from "#structure/html/HTMLOListElement";
59
- import { HTMLObjectElement } from "#structure/html/HTMLObjectElement";
60
- import { HTMLOptionElement } from "#structure/html/HTMLOptionElement";
61
- import { HTMLOptGroupElement } from "#structure/html/HTMLOptGroupElement";
62
- import { HTMLOutputElement } from "#structure/html/HTMLOutputElement";
63
- import { HTMLParagraphElement } from "#structure/html/HTMLParagraphElement";
64
- import { HTMLPictureElement } from "#structure/html/HTMLPictureElement";
65
- import { HTMLPreElement } from "#structure/html/HTMLPreElement";
66
- import { HTMLProgressElement } from "#structure/html/HTMLProgressElement";
67
- import { HTMLQuoteElement } from "#structure/html/HTMLQuoteElement";
68
- import { HTMLRPElement } from "#structure/html/HTMLRPElement";
69
- import { HTMLRTElement } from "#structure/html/HTMLRTElement";
70
- import { HTMLRubyElement } from "#structure/html/HTMLRubyElement";
71
- import { HTMLSElement } from "#structure/html/HTMLSElement";
72
- import { HTMLSampElement } from "#structure/html/HTMLSampElement";
73
- import { HTMLScriptElement } from "#structure/html/HTMLScriptElement";
74
- import { HTMLSectionElement } from "#structure/html/HTMLSectionElement";
75
- import { HTMLSelectElement } from "#structure/html/HTMLSelectElement";
76
- import { HTMLSmallElement } from "#structure/html/HTMLSmallElement";
77
- import { HTMLSlotElement } from "#structure/html/HTMLSlotElement";
78
- import { HTMLSourceElement } from "#structure/html/HTMLSourceElement";
79
- import { HTMLSpanElement } from "#structure/html/HTMLSpanElement";
80
- import { HTMLStrongElement } from "#structure/html/HTMLStrongElement";
81
- import { HTMLStyleElement } from "#structure/html/HTMLStyleElement";
82
- import { HTMLSubElement } from "#structure/html/HTMLSubElement";
83
- import { HTMLSupElement } from "#structure/html/HTMLSupElement";
84
- import { HTMLSummaryElement } from "#structure/html/HTMLSummaryElement";
85
- import { HTMLTableCaptionElement } from "#structure/html/HTMLTableCaptionElement";
86
- import { HTMLTableCellElement } from "#structure/html/HTMLTableCellElement";
87
- import { HTMLTableColElement } from "#structure/html/HTMLTableColElement";
88
- import { HTMLTableElement } from "#structure/html/HTMLTableElement";
89
- import { HTMLTableRowElement } from "#structure/html/HTMLTableRowElement";
90
- import { HTMLTableSectionElement } from "#structure/html/HTMLTableSectionElement";
91
- import { HTMLTemplateElement } from "#structure/html/HTMLTemplateElement";
92
- import { HTMLTextAreaElement } from "#structure/html/HTMLTextAreaElement";
93
- import { HTMLTimeElement } from "#structure/html/HTMLTimeElement";
94
- import { HTMLTitleElement } from "#structure/html/HTMLTitleElement";
95
- import { HTMLTrackElement } from "#structure/html/HTMLTrackElement";
96
- import { HTMLUElement } from "#structure/html/HTMLUElement";
97
- import { HTMLUListElement } from "#structure/html/HTMLUListElement";
98
- import { HTMLVarElement } from "#structure/html/HTMLVarElement";
99
- import { HTMLVideoElement } from "#structure/html/HTMLVideoElement";
100
- import { HTMLWBRElement } from "#structure/html/HTMLWBRElement";
101
-
102
- export const htmlElementMap = new Map()
103
- .set('a', HTMLAnchorElement)
104
- .set('abbr', HTMLAbbrElement)
105
- .set('address', HTMLAddressElement)
106
- .set('area', HTMLAreaElement)
107
- .set('article', HTMLArticleElement)
108
- .set('aside', HTMLAsideElement)
109
- .set('audio', HTMLAudioElement)
110
- .set('b', HTMLBElement)
111
- .set('bdi', HTMLBDIElement)
112
- .set('bdo', HTMLBDOElement)
113
- .set('blockquote', HTMLQuoteElement)
114
- .set('br', HTMLBRElement)
115
- .set('base', HTMLBaseElement)
116
- .set('body', HTMLBodyElement)
117
- .set('button', HTMLButtonElement)
118
- .set('canvas', HTMLCanvasElement)
119
- .set('caption', HTMLTableCaptionElement)
120
- .set('cite', HTMLCiteElement)
121
- .set('code', HTMLCodeElement)
122
- .set('col', HTMLTableColElement)
123
- .set('colgroup', HTMLTableColElement)
124
- .set('data', HTMLDataElement)
125
- .set('datalist', HTMLDataListElement)
126
- .set('dd', HTMLDDElement)
127
- .set('del', HTMLModElement)
128
- .set('details', HTMLDetailsElement)
129
- .set('dfn', HTMLDFNElement)
130
- .set('dialog', HTMLDialogElement)
131
- .set('div', HTMLDivElement)
132
- .set('dl', HTMLDListElement)
133
- .set('dt', HTMLDTElement)
134
- .set('em', HTMLEMElement)
135
- .set('embed', HTMLEmbedElement)
136
- .set('fieldset', HTMLFieldSetElement)
137
- .set('figcaption', HTMLFigCaptionElement)
138
- .set('figure', HTMLFigureElement)
139
- .set('footer', HTMLFooterElement)
140
- .set('form', HTMLFormElement)
141
- .set('h1', HTMLHeadingElement)
142
- .set('h2', HTMLHeadingElement)
143
- .set('h3', HTMLHeadingElement)
144
- .set('h4', HTMLHeadingElement)
145
- .set('h5', HTMLHeadingElement)
146
- .set('h6', HTMLHeadingElement)
147
- .set('head', HTMLHeadElement)
148
- .set('header', HTMLHeaderElement)
149
- .set('hgroup', HTMLHGroupElement)
150
- .set('hr', HTMLHRElement)
151
- .set('html', HTMLHtmlElement)
152
- .set('i', HTMLIElement)
153
- .set('iframe', HTMLIFrameElement)
154
- .set('img', HTMLImageElement)
155
- .set('input', HTMLInputElement)
156
- .set('ins', HTMLModElement)
157
- .set('kbd', HTMLKBDElement)
158
- .set('label', HTMLLabelElement)
159
- .set('legend', HTMLLegendElement)
160
- .set('li', HTMLLIElement)
161
- .set('link', HTMLLinkElement)
162
- .set('main', HTMLMainElement)
163
- .set('map', HTMLMapElement)
164
- .set('mark', HTMLMarkElement)
165
- .set('menu', HTMLMenuElement)
166
- .set('meta', HTMLMetaElement)
167
- .set('meter', HTMLMeterElement)
168
- .set('nav', HTMLNavElement)
169
- .set('noscript', HTMLNoscriptElement)
170
- .set('object', HTMLObjectElement)
171
- .set('ol', HTMLOListElement)
172
- .set('optgroup', HTMLOptGroupElement)
173
- .set('option', HTMLOptionElement)
174
- .set('output', HTMLOutputElement)
175
- .set('p', HTMLParagraphElement)
176
- .set('picture', HTMLPictureElement)
177
- .set('pre', HTMLPreElement)
178
- .set('progress', HTMLProgressElement)
179
- .set('q', HTMLQuoteElement)
180
- .set('rp', HTMLRPElement)
181
- .set('rt', HTMLRTElement)
182
- .set('ruby', HTMLRubyElement)
183
- .set('s', HTMLSElement)
184
- .set('samp', HTMLSampElement)
185
- .set('script', HTMLScriptElement)
186
- .set('section', HTMLSectionElement)
187
- .set('select', HTMLSelectElement)
188
- .set('small', HTMLSmallElement)
189
- .set('slot', HTMLSlotElement)
190
- .set('source', HTMLSourceElement)
191
- .set('span', HTMLSpanElement)
192
- .set('strong', HTMLStrongElement)
193
- .set('style', HTMLStyleElement)
194
- .set('sub', HTMLSubElement)
195
- .set('summary', HTMLSummaryElement)
196
- .set('sup', HTMLSupElement)
197
- .set('table', HTMLTableElement)
198
- .set('tbody', HTMLTableSectionElement)
199
- .set('td', HTMLTableCellElement)
200
- .set('template', HTMLTemplateElement)
201
- .set('textarea', HTMLTextAreaElement)
202
- .set('tfoot', HTMLTableSectionElement)
203
- .set('th', HTMLTableCellElement)
204
- .set('thead', HTMLTableSectionElement)
205
- .set('time', HTMLTimeElement)
206
- .set('title', HTMLTitleElement)
207
- .set('tr', HTMLTableRowElement)
208
- .set('track', HTMLTrackElement)
209
- .set('u', HTMLUElement)
210
- .set('ul', HTMLUListElement)
211
- .set('var', HTMLVarElement)
212
- .set('video', HTMLVideoElement)
213
- .set('wbr', HTMLWBRElement)
@@ -1,16 +0,0 @@
1
- import type { Element } from "#structure/Element"
2
- import { _Object_assign, _Object_defineProperty, _Object_entries, forEach } from "@amateras/utils"
3
-
4
- export const assignAttributes = (target: any, props: {[key: string]: any}) => {
5
- forEach(_Object_entries(props), ([name]) => {
6
- _Object_defineProperty(target.prototype, name, {
7
- enumerable: true,
8
- get(this: Element) {
9
- return this.getAttribute(name)
10
- },
11
- set(this: Element, value: any) {
12
- this.setAttribute(name, value);
13
- }
14
- })
15
- })
16
- }
@@ -1,7 +0,0 @@
1
- import { _Object_assign } from "@amateras/utils"
2
-
3
- export class CSS {
4
- static supports() { return true }
5
- }
6
-
7
- _Object_assign(globalThis, { CSS })
@@ -1,10 +0,0 @@
1
- import { _Object_assign } from "@amateras/utils";
2
-
3
- export class CSSStyleSheet {
4
- cssRules: string[] = []
5
- insertRule(cssText: string) {
6
- this.cssRules.push(cssText);
7
- }
8
- }
9
-
10
- _Object_assign(globalThis, { CSSStyleSheet })
@@ -1,19 +0,0 @@
1
- import { _Object_assign, forEach } from "@amateras/utils";
2
-
3
- export class DOMTokenList extends Set {
4
- constructor(tokens?: string[]) {
5
- super(tokens);
6
- }
7
-
8
- add(...tokens: string[]) {
9
- forEach(tokens, token => super.add(token));
10
- return this;
11
- }
12
-
13
- remove(...tokens: string[]) {
14
- forEach(tokens, token => super.delete(token));
15
- return this;
16
- }
17
- }
18
-
19
- _Object_assign(globalThis, { DOMTokenList })
@@ -1,36 +0,0 @@
1
- import { _Object_assign } from "@amateras/utils"
2
- import { Node } from "./Node";
3
- import { HTMLElement } from "./HTMLElement";
4
- import { htmlElementMap } from "#lib/HTMLElementMap";
5
- import { Text } from "./Text";
6
-
7
- export class Document extends Node {
8
- adoptedStyleSheets = [];
9
- documentElement = this.createElement('html');
10
- head = this.createElement('head');
11
- body = this.createElement('body');
12
- #ele_title: null | HTMLElement = null;
13
- constructor() {
14
- super('#document');
15
- this.appendChild(this.documentElement);
16
- this.documentElement.appendChild(this.head);
17
- this.documentElement.appendChild(this.body);
18
- }
19
-
20
- createElement(nodeName: string): HTMLElement {
21
- const constructor = htmlElementMap.get(nodeName);
22
- if (constructor) return new constructor();
23
- return new HTMLElement(nodeName)
24
- }
25
-
26
- set title(title: string) {
27
- if (title.length) {
28
- this.#ele_title?.remove();
29
- this.#ele_title = this.createElement('title');
30
- this.#ele_title.appendChild(new Text(title))
31
- this.head.appendChild(this.#ele_title);
32
- } else this.#ele_title?.remove();
33
- }
34
- }
35
-
36
- _Object_assign(globalThis, { Document })
@@ -1,106 +0,0 @@
1
- import { _Array_from, _Object_assign, _Object_entries, forEach, isArray, isString, isUndefined } from "@amateras/utils";
2
- import { Node } from "./Node";
3
- import { DOMTokenList } from "./DOMTokenList";
4
- import { assignAttributes } from "#lib/assignAttributes";
5
- import { Text } from "./Text";
6
- import { HTMLElement as ParserHTMLElement, Node as ParserNode, TextNode, parse as htmlParse } from 'node-html-parser';
7
- import type { Document } from "./Document";
8
-
9
- export class Element extends Node {
10
- #attributes = new Map<string, any>();
11
- #classList = new DOMTokenList();
12
- readonly tagname: string
13
-
14
- static defaultAttributes = {
15
- id: ''
16
- }
17
-
18
- constructor(nodeName: string) {
19
- super(nodeName.toUpperCase())
20
- this.tagname = nodeName.toUpperCase();
21
- }
22
-
23
- get attributes() {
24
- return _Array_from(this.#attributes).map(([name, value]) => ({name, value}))
25
- }
26
-
27
- get innerHTML() {
28
- const children = _Array_from(this.childNodes).map(node => node.toString());
29
- return children.join('');
30
- }
31
-
32
- set innerHTML(html: string) {
33
- const element = htmlParse(html);
34
- const createChildElement = (target: Node, ele: ParserNode) => {
35
- forEach(element.childNodes, node => {
36
- if (node instanceof TextNode) target.appendChild(new Text(node.textContent));
37
- const ele = (document as unknown as Document).createElement(node.rawTagName);
38
- if (node instanceof ParserHTMLElement) {
39
- forEach(Object.entries(node.attributes), ([key, value]) => ele.setAttribute(key, value))
40
- }
41
- target.appendChild(ele);
42
- createChildElement(ele, node);
43
- })
44
- }
45
-
46
- createChildElement(this, element);
47
- }
48
-
49
- get outerHTML() {
50
- const nodeName = this.nodeName.toLowerCase();
51
- const attr = _Array_from(this.attributes).map(({name, value}) => {
52
- //@ts-expect-error
53
- const defaultValue = this.constructor.defaultAttributes[name];
54
- if (isArray(defaultValue)) value = defaultValue[value ? 1 : 2];
55
- return `${name}${isString(value) && value ? `="${value}"` : ``}`;
56
- })
57
- const IS_SELF_CLOSING = ['img', 'meta', 'input'].includes(nodeName);
58
- this.#classList.size && attr.unshift(`class="${_Array_from(this.classList).join(' ')}"`)
59
- return `<${nodeName}${attr.length ? ` ${attr.join(' ')}` : ''}>${this.innerHTML}${IS_SELF_CLOSING ? '' : `</${nodeName}>`}`
60
- }
61
-
62
- set outerHTML(html: string) {
63
-
64
- }
65
-
66
- toString() {
67
- return this.outerHTML;
68
- }
69
-
70
- setAttribute(key: string, value: string) {
71
- this.#attributes.set(key, value);
72
- }
73
-
74
- getAttribute(key: string) {
75
- const value = this.#attributes.get(key)
76
- if (!isUndefined(value)) return value;
77
- //@ts-expect-error
78
- const defaultValue = this.constructor.defaultAttributes[key];
79
- if (isArray(defaultValue)) return defaultValue[0]
80
- return defaultValue;
81
- }
82
-
83
- get classList(): DOMTokenList {
84
- return this.#classList
85
- }
86
-
87
- set classList(tokens: string) {
88
- this.#classList = new DOMTokenList(tokens.split(' '));
89
- }
90
-
91
- set textContent(text: string) {
92
- forEach(this.childNodes, node => node.remove());
93
- this.appendChild(new Text(text));
94
- }
95
-
96
- get textContent() {
97
- const strings = _Array_from(this.childNodes).map(node => {
98
- if (node instanceof Text) return node.textContent;
99
- else if (node instanceof Element) return node.textContent;
100
- })
101
- return strings.join('')
102
- }
103
- }
104
-
105
- assignAttributes(Element, Element.defaultAttributes)
106
- _Object_assign(globalThis, { Element })
@@ -1,34 +0,0 @@
1
- import { _Array_from, _Object_assign, _Object_entries } from "@amateras/utils";
2
- import { Element } from "./Element";
3
- import { assignAttributes } from "#lib/assignAttributes";
4
-
5
- export class HTMLElement extends Element {
6
- #style: Partial<CSSStyleDeclaration> = {}
7
-
8
- static defaultAttributes = {
9
- ...Element.defaultAttributes,
10
- autocapitalize: false,
11
- dir: '',
12
- draggable: false,
13
- hidden: false,
14
- inert: [false, ''],
15
- lang: '',
16
- popover: null,
17
- spellcheck: true,
18
- title: '',
19
- translate: [true, 'yes', 'no'],
20
- writingSuggestions: 'true',
21
- }
22
-
23
- get attributes() {
24
- const style = _Object_entries(this.#style).filter(([_, value]) => value).map(([key, value]) => `${key}:${value}`).join(';')
25
- const attrs = super.attributes;
26
- if (style) attrs.push({name: 'style', value: style})
27
- return attrs
28
- }
29
-
30
- get style() { return this.#style }
31
- }
32
-
33
- assignAttributes(HTMLElement, HTMLElement.defaultAttributes)
34
- _Object_assign(globalThis, { HTMLElement })
@@ -1,11 +0,0 @@
1
- export class History {
2
- scrollRestoration: ScrollRestoration = 'manual';
3
- readonly length = 0;
4
- readonly state: any;
5
-
6
- back() {}
7
- forward() {}
8
- go(delta?: number) {}
9
- pushState() {}
10
- replaceState() {}
11
- }
@@ -1,9 +0,0 @@
1
- export class Location extends URL {
2
- constructor() {
3
- super('http://localhost')
4
- }
5
-
6
- reload() {}
7
- replace(url: string | URL) {}
8
- assign(url: string | URL) {}
9
- }
@@ -1,51 +0,0 @@
1
- import { _Array_from, _null, _Object_assign, isUndefined } from "@amateras/utils";
2
- import { NodeList } from "./NodeList";
3
-
4
- export class Node extends EventTarget {
5
- readonly nodeName: string
6
- constructor(nodeName: string) {
7
- super();
8
- this.nodeName = nodeName;
9
- }
10
- #childNodes = new NodeList();
11
- get childNodes() { return this.#childNodes }
12
-
13
- parentElement: null | Node = _null;
14
-
15
- appendChild(node: Node) {
16
- this.#childNodes.delete(node);
17
- this.#childNodes.add(node);
18
- node.parentElement = this;
19
- }
20
-
21
- insertBefore(node: Node, target: Node) {
22
- this.#childNodes.delete(node);
23
- const nodeList = _Array_from(this.childNodes);
24
- const index = nodeList.indexOf(target);
25
- if (isUndefined(target) || index === -1) this.appendChild(node);
26
- else {
27
- this.#childNodes = new NodeList([...nodeList.slice(0, index - 1), node, ...nodeList.slice(index)]);
28
- node.parentElement = this;
29
- }
30
- }
31
-
32
- remove() {
33
- this.parentElement?.childNodes.delete(this);
34
- this.parentElement = _null;
35
- }
36
-
37
- contains(node: Node) {
38
- for (const childNode of this.#childNodes) {
39
- if (node === childNode) return true;
40
- else if (node.contains(node)) return true;
41
- }
42
- return false
43
- }
44
-
45
- toString() {}
46
-
47
- addEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: AddEventListenerOptions | boolean): void {}
48
- removeEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: EventListenerOptions | boolean): void {}
49
- }
50
-
51
- _Object_assign(globalThis, { Node })
@@ -1,10 +0,0 @@
1
- import { _Object_assign } from "@amateras/utils";
2
- import type { Node } from "./Node";
3
-
4
- export class NodeList extends Set<Node> {
5
- constructor(node: Node[] = []) {
6
- super(node)
7
- }
8
- }
9
-
10
- _Object_assign(globalThis, { NodeList })
@@ -1,8 +0,0 @@
1
- export class Storage {
2
- readonly length: number = 0;
3
- clear() {}
4
- getItem() {}
5
- key() {}
6
- removeItem() {}
7
- setItem() {}
8
- }
@@ -1,20 +0,0 @@
1
- import { _Object_assign } from "@amateras/utils";
2
- import { Node } from "./Node";
3
-
4
- export class Text extends Node {
5
- #textContent: string;
6
- constructor(str: string) {
7
- super('#text');
8
- this.#textContent = str;
9
- }
10
-
11
- get textContent() {
12
- return this.#textContent;
13
- }
14
-
15
- toString() {
16
- return this.#textContent;
17
- }
18
- }
19
-
20
- _Object_assign(globalThis, { Text })
@@ -1,14 +0,0 @@
1
- import { Document } from "./Document";
2
- import { History } from "./History";
3
- import { Location } from "./Location";
4
- import { Storage } from "./Storage";
5
-
6
- export class Window extends EventTarget {
7
- document = new Document();
8
- location = new Location();
9
- history = new History();
10
- sessionStorage = new Storage();
11
- localStorage = new Storage();
12
-
13
- scrollTo = () => {}
14
- }
@@ -1,16 +0,0 @@
1
- import { assignAttributes } from "#lib/assignAttributes";
2
- import { HTMLElement } from "#structure/HTMLElement";
3
- import { _Object_assign } from "@amateras/utils";
4
-
5
- export class HTMLAbbrElement extends HTMLElement {
6
- static defaultAttributes = {
7
- ...HTMLElement.defaultAttributes
8
- }
9
-
10
- constructor() {
11
- super('abbr')
12
- }
13
- }
14
-
15
- assignAttributes(HTMLAbbrElement, HTMLAbbrElement.defaultAttributes)
16
- _Object_assign(globalThis, { HTMLAbbrElement })
@@ -1,16 +0,0 @@
1
- import { assignAttributes } from "#lib/assignAttributes";
2
- import { HTMLElement } from "#structure/HTMLElement";
3
- import { _Object_assign } from "@amateras/utils";
4
-
5
- export class HTMLAddressElement extends HTMLElement {
6
- static defaultAttributes = {
7
- ...HTMLElement.defaultAttributes
8
- }
9
-
10
- constructor() {
11
- super('address')
12
- }
13
- }
14
-
15
- assignAttributes(HTMLAddressElement, HTMLAddressElement.defaultAttributes)
16
- _Object_assign(globalThis, { HTMLAddressElement })
@@ -1,25 +0,0 @@
1
- import { assignAttributes } from "#lib/assignAttributes";
2
- import { HTMLElement } from "#structure/HTMLElement";
3
- import { _Object_assign } from "@amateras/utils";
4
-
5
- export class HTMLAnchorElement extends HTMLElement {
6
- static defaultAttributes = {
7
- ...HTMLElement.defaultAttributes,
8
- href: '',
9
- download: '',
10
- hreflang: '',
11
- ping: '',
12
- referrerPolicy: '',
13
- rel: '',
14
- target: '',
15
- text: '',
16
- type: ''
17
- }
18
-
19
- constructor() {
20
- super('a')
21
- }
22
- }
23
-
24
- assignAttributes(HTMLAnchorElement, HTMLAnchorElement.defaultAttributes)
25
- _Object_assign(globalThis, { HTMLAnchorElement })
@@ -1,26 +0,0 @@
1
- import { assignAttributes } from "#lib/assignAttributes";
2
- import { HTMLElement } from "#structure/HTMLElement";
3
- import { _Object_assign } from "@amateras/utils";
4
-
5
- export class HTMLAreaElement extends HTMLElement {
6
- static defaultAttributes = {
7
- ...HTMLElement.defaultAttributes,
8
- alt: '',
9
- coords: '',
10
- download: '',
11
- href: '',
12
- hreflang: '',
13
- ping: '',
14
- referrerPolicy: '',
15
- rel: '',
16
- shape: '',
17
- target: ''
18
- }
19
-
20
- constructor() {
21
- super('area')
22
- }
23
- }
24
-
25
- assignAttributes(HTMLAreaElement, HTMLAreaElement.defaultAttributes)
26
- _Object_assign(globalThis, { HTMLAreaElement })