@schukai/monster 3.51.4 → 3.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (451) hide show
  1. package/CHANGELOG.md +706 -0
  2. package/README.md +16 -13
  3. package/example/components/form/button.mjs +10 -0
  4. package/example/components/form/select.mjs +25 -0
  5. package/example/components/form/tree-select.mjs +27 -0
  6. package/example/components/host/host.mjs +0 -0
  7. package/example/components/notify/message.mjs +4 -0
  8. package/example/components/notify/notify.mjs +4 -0
  9. package/example/components/state/log.mjs +0 -0
  10. package/example/components/state/state.mjs +0 -0
  11. package/package.json +6 -2
  12. package/source/components/constants.mjs +132 -0
  13. package/source/components/datatable/columnbar.mjs +310 -0
  14. package/source/components/datatable/constants.mjs +121 -0
  15. package/source/components/datatable/dataset.mjs +219 -0
  16. package/source/components/datatable/datasource/dom.mjs +186 -0
  17. package/source/components/datatable/datasource/namespace.mjs +13 -0
  18. package/source/components/datatable/datasource/rest.mjs +400 -0
  19. package/source/components/datatable/datasource.mjs +102 -0
  20. package/source/components/datatable/datatable/header.mjs +268 -0
  21. package/source/components/datatable/datatable/namespace.mjs +13 -0
  22. package/source/components/datatable/datatable.mjs +789 -0
  23. package/source/components/datatable/embedded-pagination.mjs +113 -0
  24. package/source/components/datatable/filter/abstract-base.mjs +31 -0
  25. package/source/components/datatable/filter/date-range.mjs +1041 -0
  26. package/source/components/datatable/filter/input.mjs +175 -0
  27. package/source/components/datatable/filter/namespace.mjs +13 -0
  28. package/source/components/datatable/filter/range.mjs +671 -0
  29. package/source/components/datatable/filter/select.mjs +65 -0
  30. package/source/components/datatable/filter/settings.mjs +116 -0
  31. package/source/components/datatable/filter-button.mjs +98 -0
  32. package/source/components/datatable/filter.mjs +929 -0
  33. package/source/components/datatable/namespace.mjs +11 -0
  34. package/source/components/datatable/pagination.mjs +456 -0
  35. package/source/components/datatable/style/column-bar.pcss +123 -0
  36. package/source/components/datatable/style/dataset.pcss +13 -0
  37. package/source/components/datatable/style/datasource.pcss +16 -0
  38. package/source/components/datatable/style/datatable.pcss +239 -0
  39. package/source/components/datatable/style/embedded-pagination.pcss +101 -0
  40. package/source/components/datatable/style/filter-button.pcss +22 -0
  41. package/source/components/datatable/style/filter-controls-defaults.pcss +46 -0
  42. package/source/components/datatable/style/filter-date-range.pcss +9 -0
  43. package/source/components/datatable/style/filter-range.pcss +5 -0
  44. package/source/components/datatable/style/filter.pcss +156 -0
  45. package/source/components/datatable/style/pagination.pcss +59 -0
  46. package/source/components/datatable/style/select-filter.pcss +27 -0
  47. package/source/components/datatable/stylesheet/column-bar.mjs +33 -0
  48. package/source/components/datatable/stylesheet/dataset.mjs +33 -0
  49. package/source/components/datatable/stylesheet/datasource.mjs +33 -0
  50. package/source/components/datatable/stylesheet/datatable.mjs +33 -0
  51. package/source/components/datatable/stylesheet/embedded-pagination.mjs +33 -0
  52. package/source/components/datatable/stylesheet/filter-button.mjs +33 -0
  53. package/source/components/datatable/stylesheet/filter-controls-defaults.mjs +33 -0
  54. package/source/components/datatable/stylesheet/filter-date-range.mjs +33 -0
  55. package/source/components/datatable/stylesheet/filter-range.mjs +33 -0
  56. package/source/components/datatable/stylesheet/filter.mjs +33 -0
  57. package/source/components/datatable/stylesheet/namespace.mjs +13 -0
  58. package/source/components/datatable/stylesheet/pagination.mjs +33 -0
  59. package/source/components/datatable/stylesheet/select-filter.mjs +33 -0
  60. package/source/components/datatable/util.mjs +60 -0
  61. package/source/components/form/action-button.mjs +262 -0
  62. package/source/components/form/api-button.mjs +515 -0
  63. package/source/components/form/button-bar.mjs +739 -0
  64. package/source/components/form/button.mjs +350 -0
  65. package/source/components/form/confirm-button.mjs +330 -0
  66. package/source/components/form/constants.mjs +111 -0
  67. package/source/components/form/context-help.mjs +123 -0
  68. package/source/components/form/events.mjs +84 -0
  69. package/source/components/form/form.mjs +601 -0
  70. package/source/components/form/message-state-button.mjs +396 -0
  71. package/source/components/form/namespace.mjs +13 -0
  72. package/source/components/form/popper-button.mjs +435 -0
  73. package/source/components/form/popper.mjs +487 -0
  74. package/source/components/form/reload.mjs +360 -0
  75. package/source/components/form/select.mjs +2314 -0
  76. package/source/components/form/shadow-reload.mjs +137 -0
  77. package/source/components/form/state-button.mjs +182 -0
  78. package/source/components/form/style/action-button.pcss +41 -0
  79. package/source/components/form/style/api-button.pcss +0 -0
  80. package/source/components/form/style/button-bar.pcss +51 -0
  81. package/source/components/form/style/button.pcss +8 -0
  82. package/source/components/form/style/confirm-button.pcss +17 -0
  83. package/source/components/form/style/context-help.pcss +16 -0
  84. package/source/components/form/style/form.pcss +10 -0
  85. package/source/components/form/style/message-state-button.pcss +10 -0
  86. package/source/components/form/style/popper-button.pcss +16 -0
  87. package/source/components/form/style/popper.pcss +8 -0
  88. package/source/components/form/style/select.pcss +265 -0
  89. package/source/components/form/style/state-button.pcss +116 -0
  90. package/source/components/form/style/tabs.pcss +170 -0
  91. package/source/components/form/style/tree-select.pcss +81 -0
  92. package/source/components/form/stylesheet/action-button.mjs +33 -0
  93. package/source/components/form/stylesheet/api-button.mjs +33 -0
  94. package/source/components/form/stylesheet/button-bar.mjs +33 -0
  95. package/source/components/form/stylesheet/button.mjs +33 -0
  96. package/source/components/form/stylesheet/confirm-button.mjs +33 -0
  97. package/source/components/form/stylesheet/context-help.mjs +33 -0
  98. package/source/components/form/stylesheet/form.mjs +33 -0
  99. package/source/components/form/stylesheet/message-state-button.mjs +33 -0
  100. package/source/components/form/stylesheet/namespace.mjs +13 -0
  101. package/source/components/form/stylesheet/popper-button.mjs +33 -0
  102. package/source/components/form/stylesheet/popper.mjs +33 -0
  103. package/source/components/form/stylesheet/select.mjs +33 -0
  104. package/source/components/form/stylesheet/state-button.mjs +33 -0
  105. package/source/components/form/stylesheet/tabs.mjs +33 -0
  106. package/source/components/form/stylesheet/tree-select.mjs +33 -0
  107. package/source/components/form/tabs.mjs +1011 -0
  108. package/source/components/form/template.mjs +373 -0
  109. package/source/components/form/tree-select.mjs +527 -0
  110. package/source/components/form/types/namespace.mjs +13 -0
  111. package/source/components/form/types/state.mjs +93 -0
  112. package/source/components/form/util/fetch.mjs +133 -0
  113. package/source/components/form/util/floating-ui.mjs +245 -0
  114. package/source/components/form/util/namespace.mjs +13 -0
  115. package/source/components/form/util/popper.mjs +49 -0
  116. package/source/components/host/call-button.mjs +236 -0
  117. package/source/components/host/collapse.mjs +526 -0
  118. package/source/components/host/config-manager.mjs +304 -0
  119. package/source/components/host/constants.mjs +18 -0
  120. package/source/components/host/details.mjs +268 -0
  121. package/source/components/host/events.mjs +131 -0
  122. package/source/components/host/host.mjs +420 -0
  123. package/source/components/host/namespace.mjs +13 -0
  124. package/source/components/host/overlay.mjs +339 -0
  125. package/source/components/host/style/call-button.pcss +36 -0
  126. package/source/components/host/style/collapse.pcss +67 -0
  127. package/source/components/host/style/config-manager.pcss +5 -0
  128. package/source/components/host/style/details.pcss +68 -0
  129. package/source/components/host/style/host.pcss +43 -0
  130. package/source/components/host/style/overlay.pcss +73 -0
  131. package/source/components/host/style/toggle-button.pcss +36 -0
  132. package/source/components/host/style/viewer.pcss +13 -0
  133. package/source/components/host/stylesheet/call-button.mjs +33 -0
  134. package/source/components/host/stylesheet/collapse.mjs +33 -0
  135. package/source/components/host/stylesheet/config-manager.mjs +33 -0
  136. package/source/components/host/stylesheet/details.mjs +33 -0
  137. package/source/components/host/stylesheet/host.mjs +33 -0
  138. package/source/components/host/stylesheet/namespace.mjs +13 -0
  139. package/source/components/host/stylesheet/overlay.mjs +33 -0
  140. package/source/components/host/stylesheet/toggle-button.mjs +33 -0
  141. package/source/components/host/stylesheet/viewer.mjs +33 -0
  142. package/source/components/host/toggle-button.mjs +88 -0
  143. package/source/components/host/util.mjs +23 -0
  144. package/source/components/host/viewer.mjs +309 -0
  145. package/source/components/namespace.mjs +14 -0
  146. package/source/components/notify/constants.mjs +15 -0
  147. package/source/components/notify/events.mjs +15 -0
  148. package/source/components/notify/message.mjs +374 -0
  149. package/source/components/notify/namespace.mjs +15 -0
  150. package/source/components/notify/notify.mjs +236 -0
  151. package/source/components/notify/style/message.pcss +57 -0
  152. package/source/components/notify/style/notify.pcss +118 -0
  153. package/source/components/notify/stylesheet/message.mjs +33 -0
  154. package/source/components/notify/stylesheet/namespace.mjs +15 -0
  155. package/source/components/notify/stylesheet/notify.mjs +33 -0
  156. package/source/components/state/log/entry.mjs +126 -0
  157. package/source/components/state/log/namespace.mjs +13 -0
  158. package/source/components/state/log.mjs +275 -0
  159. package/source/components/state/namespace.mjs +13 -0
  160. package/source/components/state/state.mjs +131 -0
  161. package/source/components/state/style/log.pcss +111 -0
  162. package/source/components/state/style/state.pcss +113 -0
  163. package/source/components/state/stylesheet/log.mjs +33 -0
  164. package/source/components/state/stylesheet/state.mjs +33 -0
  165. package/source/components/style/badge.pcss +92 -0
  166. package/source/components/style/border.pcss +77 -0
  167. package/source/components/style/button.pcss +105 -0
  168. package/source/components/style/card.pcss +108 -0
  169. package/source/components/style/color.pcss +257 -0
  170. package/source/components/style/common.pcss +103 -0
  171. package/source/components/style/control.pcss +11 -0
  172. package/source/components/style/data-grid.pcss +43 -0
  173. package/source/components/style/display.pcss +42 -0
  174. package/source/components/style/floating-ui.pcss +33 -0
  175. package/source/components/style/form.pcss +5 -0
  176. package/source/components/style/host.pcss +15 -0
  177. package/source/components/style/link.pcss +63 -0
  178. package/source/components/style/mixin/badge.pcss +18 -0
  179. package/source/components/style/mixin/button.pcss +54 -0
  180. package/source/components/style/mixin/form.pcss +247 -0
  181. package/source/components/style/mixin/hover.pcss +8 -0
  182. package/source/components/style/mixin/media.pcss +107 -0
  183. package/source/components/style/mixin/property.pcss +288 -0
  184. package/source/components/style/mixin/skeleton.pcss +26 -0
  185. package/source/components/style/mixin/spinner.pcss +24 -0
  186. package/source/components/style/mixin/typography.pcss +52 -0
  187. package/source/components/style/normalize.pcss +14 -0
  188. package/source/components/style/popper.pcss +78 -0
  189. package/source/components/style/property.pcss +17 -0
  190. package/source/components/style/ripple.pcss +14 -0
  191. package/source/components/style/skeleton.pcss +28 -0
  192. package/source/components/style/space.pcss +47 -0
  193. package/source/components/style/spinner.pcss +6 -0
  194. package/source/components/style/table.pcss +46 -0
  195. package/source/components/style/theme.pcss +119 -0
  196. package/source/components/style/typography.pcss +131 -0
  197. package/source/components/stylesheet/badge.mjs +33 -0
  198. package/source/components/stylesheet/border.mjs +33 -0
  199. package/source/components/stylesheet/button.mjs +33 -0
  200. package/source/components/stylesheet/card.mjs +33 -0
  201. package/source/components/stylesheet/color.mjs +33 -0
  202. package/source/components/stylesheet/common.mjs +33 -0
  203. package/source/components/stylesheet/control.mjs +33 -0
  204. package/source/components/stylesheet/data-grid.mjs +33 -0
  205. package/source/components/stylesheet/display.mjs +33 -0
  206. package/source/components/stylesheet/floating-ui.mjs +33 -0
  207. package/source/components/stylesheet/form.mjs +33 -0
  208. package/source/components/stylesheet/host.mjs +33 -0
  209. package/source/components/stylesheet/link.mjs +33 -0
  210. package/source/components/stylesheet/namespace.mjs +13 -0
  211. package/source/components/stylesheet/normalize.mjs +33 -0
  212. package/source/components/stylesheet/popper.mjs +33 -0
  213. package/source/components/stylesheet/property.mjs +33 -0
  214. package/source/components/stylesheet/ripple.mjs +33 -0
  215. package/source/components/stylesheet/skeleton.mjs +33 -0
  216. package/source/components/stylesheet/space.mjs +33 -0
  217. package/source/components/stylesheet/spinner.mjs +33 -0
  218. package/source/components/stylesheet/table.mjs +33 -0
  219. package/source/components/stylesheet/theme.mjs +33 -0
  220. package/source/components/stylesheet/tree-menu.mjs +33 -0
  221. package/source/components/stylesheet/typography.mjs +33 -0
  222. package/source/components/tree-menu/namespace.mjs +13 -0
  223. package/source/components/tree-menu/style/tree-menu.pcss +107 -0
  224. package/source/components/tree-menu/stylesheet/namespace.mjs +13 -0
  225. package/source/components/tree-menu/stylesheet/tree-menu.mjs +33 -0
  226. package/source/components/tree-menu/tree-menu.mjs +660 -0
  227. package/source/constraints/abstract.mjs +17 -24
  228. package/source/constraints/abstractoperator.mjs +27 -22
  229. package/source/constraints/andoperator.mjs +20 -17
  230. package/source/constraints/invalid.mjs +17 -17
  231. package/source/constraints/isarray.mjs +20 -20
  232. package/source/constraints/isobject.mjs +20 -20
  233. package/source/constraints/oroperator.mjs +45 -45
  234. package/source/constraints/valid.mjs +17 -17
  235. package/source/data/buildmap.mjs +108 -103
  236. package/source/data/buildtree.mjs +59 -57
  237. package/source/data/datasource/dom.mjs +80 -84
  238. package/source/data/datasource/namespace.mjs +1 -1
  239. package/source/data/datasource/server/restapi/data-fetch-error.mjs +27 -25
  240. package/source/data/datasource/server/restapi/writeerror.mjs +34 -32
  241. package/source/data/datasource/server/restapi.mjs +176 -177
  242. package/source/data/datasource/server/webconnect.mjs +150 -156
  243. package/source/data/datasource/server.mjs +58 -59
  244. package/source/data/datasource/storage/localstorage.mjs +25 -24
  245. package/source/data/datasource/storage/sessionstorage.mjs +28 -25
  246. package/source/data/datasource/storage.mjs +74 -73
  247. package/source/data/datasource.mjs +176 -167
  248. package/source/data/diff.mjs +98 -97
  249. package/source/data/extend.mjs +42 -42
  250. package/source/data/pathfinder.mjs +301 -288
  251. package/source/data/pipe.mjs +36 -36
  252. package/source/data/transformer.mjs +742 -726
  253. package/source/dom/assembler.mjs +44 -44
  254. package/source/dom/attributes.mjs +142 -122
  255. package/source/dom/constants.mjs +62 -58
  256. package/source/dom/customcontrol.mjs +299 -299
  257. package/source/dom/customelement.mjs +843 -806
  258. package/source/dom/dimension.mjs +56 -46
  259. package/source/dom/events.mjs +74 -69
  260. package/source/dom/focusmanager.mjs +175 -175
  261. package/source/dom/locale.mjs +28 -28
  262. package/source/dom/ready.mjs +13 -13
  263. package/source/dom/resource/data.mjs +117 -111
  264. package/source/dom/resource/link/stylesheet.mjs +16 -16
  265. package/source/dom/resource/link.mjs +94 -96
  266. package/source/dom/resource/script.mjs +72 -74
  267. package/source/dom/resource.mjs +174 -172
  268. package/source/dom/resourcemanager.mjs +152 -156
  269. package/source/dom/slotted.mjs +78 -80
  270. package/source/dom/template.mjs +126 -112
  271. package/source/dom/theme.mjs +35 -35
  272. package/source/dom/updater.mjs +673 -651
  273. package/source/dom/util/extract-keys.mjs +34 -22
  274. package/source/dom/util/init-options-from-attributes.mjs +46 -38
  275. package/source/dom/util/namespace.mjs +13 -0
  276. package/source/dom/util/set-option-from-attribute.mjs +35 -29
  277. package/source/dom/util.mjs +112 -81
  278. package/source/dom/worker/factory.mjs +83 -83
  279. package/source/i18n/formatter.mjs +75 -73
  280. package/source/i18n/locale.mjs +146 -144
  281. package/source/i18n/provider.mjs +70 -64
  282. package/source/i18n/providers/embed.mjs +136 -127
  283. package/source/i18n/providers/fetch.mjs +84 -76
  284. package/source/i18n/translations.mjs +205 -195
  285. package/source/logging/handler/console.mjs +36 -36
  286. package/source/logging/handler.mjs +140 -140
  287. package/source/logging/logentry.mjs +25 -25
  288. package/source/logging/logger.mjs +177 -175
  289. package/source/math/random.mjs +63 -59
  290. package/source/monster.mjs +226 -217
  291. package/source/net/webconnect/message.mjs +31 -31
  292. package/source/net/webconnect.mjs +278 -271
  293. package/source/text/bracketed-key-value-hash.mjs +182 -179
  294. package/source/text/formatter.mjs +235 -210
  295. package/source/text/generate-range-comparison-expression.mjs +56 -34
  296. package/source/text/namespace.mjs +1 -1
  297. package/source/types/base.mjs +69 -61
  298. package/source/types/basewithoptions.mjs +46 -46
  299. package/source/types/binary.mjs +20 -20
  300. package/source/types/dataurl.mjs +96 -90
  301. package/source/types/global.mjs +45 -39
  302. package/source/types/id.mjs +25 -25
  303. package/source/types/internal.mjs +115 -114
  304. package/source/types/is.mjs +56 -40
  305. package/source/types/mediatype.mjs +119 -119
  306. package/source/types/namespace.mjs +1 -1
  307. package/source/types/node.mjs +160 -150
  308. package/source/types/nodelist.mjs +94 -96
  309. package/source/types/noderecursiveiterator.mjs +50 -50
  310. package/source/types/observablequeue.mjs +73 -73
  311. package/source/types/observer.mjs +104 -104
  312. package/source/types/observerlist.mjs +66 -66
  313. package/source/types/proxyobserver.mjs +210 -210
  314. package/source/types/queue.mjs +63 -63
  315. package/source/types/randomid.mjs +13 -13
  316. package/source/types/regex.mjs +3 -1
  317. package/source/types/stack.mjs +64 -64
  318. package/source/types/tokenlist.mjs +206 -205
  319. package/source/types/typeof.mjs +12 -10
  320. package/source/types/uniquequeue.mjs +48 -48
  321. package/source/types/uuid.mjs +32 -32
  322. package/source/types/validate.mjs +67 -67
  323. package/source/types/version.mjs +115 -105
  324. package/source/util/clone.mjs +103 -91
  325. package/source/util/comparator.mjs +97 -97
  326. package/source/util/deadmansswitch.mjs +40 -44
  327. package/source/util/freeze.mjs +10 -9
  328. package/source/util/namespace.mjs +1 -1
  329. package/source/util/processing.mjs +104 -105
  330. package/source/util/runtime.mjs +56 -44
  331. package/source/util/trimspaces.mjs +24 -24
  332. package/test/cases/components/form/button.mjs +122 -0
  333. package/test/cases/components/form/confirm-button.mjs +127 -0
  334. package/test/cases/components/form/form.mjs +317 -0
  335. package/test/cases/components/form/reload.mjs +188 -0
  336. package/test/cases/components/form/select.mjs +229 -0
  337. package/test/cases/components/form/state-button.mjs +130 -0
  338. package/test/cases/components/form/tabs.mjs +98 -0
  339. package/test/cases/components/form/template.mjs +189 -0
  340. package/test/cases/components/form/tree-select.mjs +216 -0
  341. package/test/cases/components/host/details.mjs +68 -0
  342. package/test/cases/components/host/host.mjs +70 -0
  343. package/test/cases/components/host/overlay.mjs +60 -0
  344. package/test/cases/components/host/util.mjs +79 -0
  345. package/test/cases/components/notify/message.mjs +39 -0
  346. package/test/cases/components/notify/notify.mjs +89 -0
  347. package/test/cases/constraint/abstractoperator.mjs +2 -2
  348. package/test/cases/constraint/andoperator.mjs +3 -3
  349. package/test/cases/constraint/invalid.mjs +1 -1
  350. package/test/cases/constraint/isarray.mjs +1 -1
  351. package/test/cases/constraint/isobject.mjs +1 -1
  352. package/test/cases/constraint/oroperator.mjs +3 -3
  353. package/test/cases/constraint/valid.mjs +1 -1
  354. package/test/cases/data/buildmap.mjs +1 -1
  355. package/test/cases/data/buildtree.mjs +2 -2
  356. package/test/cases/data/datasource/dom.mjs +1 -1
  357. package/test/cases/data/datasource/server/restapi.mjs +2 -2
  358. package/test/cases/data/datasource/server/websocket.mjs +1 -1
  359. package/test/cases/data/datasource/server.mjs +1 -1
  360. package/test/cases/data/datasource/storage/localstorage.mjs +1 -1
  361. package/test/cases/data/datasource/storage/sessionstorage.mjs +1 -1
  362. package/test/cases/data/datasource.mjs +1 -1
  363. package/test/cases/data/diff.mjs +2 -2
  364. package/test/cases/data/extend.mjs +1 -1
  365. package/test/cases/data/pathfinder.mjs +1 -1
  366. package/test/cases/data/pipe.mjs +2 -2
  367. package/test/cases/data/transformer.mjs +3 -4
  368. package/test/cases/dom/assembler.mjs +1 -1
  369. package/test/cases/dom/attributes.mjs +1 -1
  370. package/test/cases/dom/customcontrol.mjs +8 -7
  371. package/test/cases/dom/customelement-initfromscripthost.mjs +6 -6
  372. package/test/cases/dom/customelement.mjs +7 -7
  373. package/test/cases/dom/dimension.mjs +4 -4
  374. package/test/cases/dom/events.mjs +1 -1
  375. package/test/cases/dom/find.mjs +1 -1
  376. package/test/cases/dom/focusmanager.mjs +1 -1
  377. package/test/cases/dom/locale.mjs +2 -2
  378. package/test/cases/dom/ready.mjs +1 -1
  379. package/test/cases/dom/resource/data.mjs +3 -3
  380. package/test/cases/dom/resource/link/stylesheet.mjs +3 -3
  381. package/test/cases/dom/resource/link.mjs +3 -3
  382. package/test/cases/dom/resource/script.mjs +3 -3
  383. package/test/cases/dom/resource.mjs +1 -1
  384. package/test/cases/dom/resourcemanager.mjs +1 -1
  385. package/test/cases/dom/slotted-nodes.mjs +1 -1
  386. package/test/cases/dom/template.mjs +2 -2
  387. package/test/cases/dom/theme.mjs +2 -2
  388. package/test/cases/dom/updater.mjs +4 -4
  389. package/test/cases/dom/util/extract-keys.mjs +1 -1
  390. package/test/cases/dom/util/init-options-from-attributes.mjs +1 -1
  391. package/test/cases/dom/util.mjs +2 -2
  392. package/test/cases/dom/worker/factory.mjs +2 -2
  393. package/test/cases/i18n/formatter.mjs +2 -2
  394. package/test/cases/i18n/locale.mjs +1 -1
  395. package/test/cases/i18n/provider.mjs +4 -4
  396. package/test/cases/i18n/providers/embed.mjs +3 -3
  397. package/test/cases/i18n/providers/fetch.mjs +3 -3
  398. package/test/cases/i18n/translations.mjs +3 -3
  399. package/test/cases/logging/handler/console.mjs +3 -3
  400. package/test/cases/logging/handler.mjs +3 -3
  401. package/test/cases/logging/logentry.mjs +1 -1
  402. package/test/cases/logging/logger.mjs +1 -1
  403. package/test/cases/math/random.mjs +1 -2
  404. package/test/cases/monster.mjs +2 -2
  405. package/test/cases/net/webconnect/message.mjs +1 -2
  406. package/test/cases/net/webconnect.mjs +3 -3
  407. package/test/cases/text/bracketed-key-value-hash.mjs +1 -1
  408. package/test/cases/text/formatter.mjs +1 -1
  409. package/test/cases/text/util.mjs +1 -1
  410. package/test/cases/types/base.mjs +2 -2
  411. package/test/cases/types/basewithoptions.mjs +1 -1
  412. package/test/cases/types/binary.mjs +1 -1
  413. package/test/cases/types/dataurl.mjs +1 -1
  414. package/test/cases/types/global.mjs +1 -1
  415. package/test/cases/types/id.mjs +1 -1
  416. package/test/cases/types/internal.mjs +2 -2
  417. package/test/cases/types/is.mjs +2 -2
  418. package/test/cases/types/mediatype.mjs +1 -1
  419. package/test/cases/types/node.mjs +4 -4
  420. package/test/cases/types/nodelist.mjs +2 -2
  421. package/test/cases/types/noderecursiveiterator.mjs +3 -3
  422. package/test/cases/types/observablequeue.mjs +2 -2
  423. package/test/cases/types/observer.mjs +1 -1
  424. package/test/cases/types/observerlist.mjs +2 -2
  425. package/test/cases/types/proxyobserver.mjs +4 -4
  426. package/test/cases/types/queue.mjs +1 -1
  427. package/test/cases/types/randomid.mjs +1 -1
  428. package/test/cases/types/regex.mjs +1 -1
  429. package/test/cases/types/stack.mjs +1 -1
  430. package/test/cases/types/tokenlist.mjs +1 -1
  431. package/test/cases/types/typeof.mjs +2 -2
  432. package/test/cases/types/uniquequeue.mjs +1 -1
  433. package/test/cases/types/uuid.mjs +1 -1
  434. package/test/cases/types/validate.mjs +3 -3
  435. package/test/cases/types/version.mjs +1 -1
  436. package/test/cases/util/clone.mjs +1 -1
  437. package/test/cases/util/comparator.mjs +1 -1
  438. package/test/cases/util/deadmansswitch.mjs +1 -1
  439. package/test/cases/util/freeze.mjs +1 -1
  440. package/test/cases/util/processing.mjs +1 -1
  441. package/test/cases/util/trimspaces.mjs +1 -1
  442. package/test/util/chai-dom.mjs +2 -2
  443. package/test/util/intersection-mock.mjs +69 -0
  444. package/test/util/jsdom.mjs +43 -27
  445. package/test/util/localstorage.mjs +1 -0
  446. package/test/util/resize-observer.mjs +29 -0
  447. package/test/util/websocket.mjs +5 -2
  448. package/test/web/import.js +92 -73
  449. package/test/web/test.html +28 -5
  450. package/test/web/tests.js +29430 -15209
  451. package/CHANGELOG +0 -438
@@ -36,50 +36,54 @@ export { Base };
36
36
  * @memberOf Monster.Types
37
37
  */
38
38
  class Base extends Object {
39
- /**
40
- *
41
- * @returns {string}
42
- */
43
- toString() {
44
- return JSON.stringify(this);
45
- }
39
+ /**
40
+ *
41
+ * @returns {string}
42
+ */
43
+ toString() {
44
+ return JSON.stringify(this);
45
+ }
46
46
 
47
- /**
48
- * This method is called by the `instanceof` operator.
49
- * @returns {symbol}
50
- * @since 2.1.0
51
- */
52
- static get [instanceSymbol]() {
53
- return Symbol.for("@schukai/monster/types/base");
54
- }
47
+ /**
48
+ * This method is called by the `instanceof` operator.
49
+ * @returns {symbol}
50
+ * @since 2.1.0
51
+ */
52
+ static get [instanceSymbol]() {
53
+ return Symbol.for("@schukai/monster/types/base");
54
+ }
55
55
 
56
- /**
57
- * This method is called by the `instanceof` operator.
58
- * @param that
59
- * @returns {boolean}
60
- * @since 2.1.0
61
- */
62
- static [Symbol.hasInstance](that) {
63
- if (that === undefined || that === null || (typeof that !== "object" && typeof that !== "function")) {
64
- return false;
65
- }
56
+ /**
57
+ * This method is called by the `instanceof` operator.
58
+ * @param that
59
+ * @returns {boolean}
60
+ * @since 2.1.0
61
+ */
62
+ static [Symbol.hasInstance](that) {
63
+ if (
64
+ that === undefined ||
65
+ that === null ||
66
+ (typeof that !== "object" && typeof that !== "function")
67
+ ) {
68
+ return false;
69
+ }
66
70
 
67
- const thatClass = Object.getPrototypeOf(that);
68
- if (
69
- thatClass === undefined ||
70
- thatClass === null ||
71
- (typeof thatClass !== "object" && typeof thatClass !== "function")
72
- ) {
73
- return false;
74
- }
71
+ const thatClass = Object.getPrototypeOf(that);
72
+ if (
73
+ thatClass === undefined ||
74
+ thatClass === null ||
75
+ (typeof thatClass !== "object" && typeof thatClass !== "function")
76
+ ) {
77
+ return false;
78
+ }
75
79
 
76
- if (checkInstanceSymbol.apply(this, [thatClass]) === true) {
77
- return true;
78
- }
80
+ if (checkInstanceSymbol.apply(this, [thatClass]) === true) {
81
+ return true;
82
+ }
79
83
 
80
- // this call the static method of the super class, if there is one
81
- return super[Symbol.hasInstance](that);
82
- }
84
+ // this call the static method of the super class, if there is one
85
+ return super[Symbol.hasInstance](that);
86
+ }
83
87
  }
84
88
 
85
89
  /**
@@ -91,31 +95,35 @@ class Base extends Object {
91
95
  * @since 2.1.0
92
96
  */
93
97
  function checkInstanceSymbol(obj) {
94
- if (this.hasOwnProperty(instanceSymbol) === false) {
95
- return false;
96
- }
98
+ if (this.hasOwnProperty(instanceSymbol) === false) {
99
+ return false;
100
+ }
97
101
 
98
- const proto = obj?.constructor;
99
- if (proto === undefined || proto === null || (typeof proto !== "object" && typeof proto !== "function")) {
100
- return false;
101
- }
102
+ const proto = obj?.constructor;
103
+ if (
104
+ proto === undefined ||
105
+ proto === null ||
106
+ (typeof proto !== "object" && typeof proto !== "function")
107
+ ) {
108
+ return false;
109
+ }
102
110
 
103
- if (proto.hasOwnProperty(instanceSymbol) !== true) {
104
- return checkInstanceSymbol.apply(this, [obj.__proto__]);
105
- }
111
+ if (proto.hasOwnProperty(instanceSymbol) !== true) {
112
+ return checkInstanceSymbol.apply(this, [obj.__proto__]);
113
+ }
106
114
 
107
- const symbol = proto[instanceSymbol];
108
- if (symbol === undefined) {
109
- if (obj.__proto__) {
110
- return checkInstanceSymbol(obj.__proto__);
111
- } else {
112
- return false;
113
- }
114
- }
115
+ const symbol = proto[instanceSymbol];
116
+ if (symbol === undefined) {
117
+ if (obj.__proto__) {
118
+ return checkInstanceSymbol(obj.__proto__);
119
+ } else {
120
+ return false;
121
+ }
122
+ }
115
123
 
116
- if (symbol === this[instanceSymbol]) {
117
- return true;
118
- }
124
+ if (symbol === this[instanceSymbol]) {
125
+ return true;
126
+ }
119
127
 
120
- return checkInstanceSymbol.apply(this, [obj.__proto__]);
128
+ return checkInstanceSymbol.apply(this, [obj.__proto__]);
121
129
  }
@@ -29,56 +29,56 @@ export { BaseWithOptions };
29
29
  * @deprecated since 3.15.0 use {@link Monster.Types.Base} with {@link Monster.Types.equipWithInternal} instead.
30
30
  */
31
31
  class BaseWithOptions extends Base {
32
- /**
33
- *
34
- * @param {object} options
35
- */
36
- constructor(options) {
37
- super();
32
+ /**
33
+ *
34
+ * @param {object} options
35
+ */
36
+ constructor(options) {
37
+ super();
38
38
 
39
- if (options === undefined) {
40
- options = {};
41
- }
39
+ if (options === undefined) {
40
+ options = {};
41
+ }
42
42
 
43
- this[internalSymbol] = extend({}, this.defaults, validateObject(options));
44
- }
43
+ this[internalSymbol] = extend({}, this.defaults, validateObject(options));
44
+ }
45
45
 
46
- /**
47
- * This getter provides the options. Derived classes overwrite
48
- * this getter with their own values. It is good karma to always include
49
- * the values from the parent class.
50
- *
51
- * ```javascript
52
- * get defaults() {
53
- * return Object.assign({}, super.defaults, {
54
- * mykey: true
55
- * });
56
- * }
57
- *
58
- * ```
59
- *
60
- * @return {object}
61
- */
62
- get defaults() {
63
- return {};
64
- }
46
+ /**
47
+ * This getter provides the options. Derived classes overwrite
48
+ * this getter with their own values. It is good karma to always include
49
+ * the values from the parent class.
50
+ *
51
+ * ```javascript
52
+ * get defaults() {
53
+ * return Object.assign({}, super.defaults, {
54
+ * mykey: true
55
+ * });
56
+ * }
57
+ *
58
+ * ```
59
+ *
60
+ * @return {object}
61
+ */
62
+ get defaults() {
63
+ return {};
64
+ }
65
65
 
66
- /**
67
- * nested options can be specified by path `a.b.c`
68
- *
69
- * @param {string} path
70
- * @param {*} defaultValue
71
- * @return {*}
72
- * @since 1.10.0
73
- */
74
- getOption(path, defaultValue) {
75
- let value;
66
+ /**
67
+ * nested options can be specified by path `a.b.c`
68
+ *
69
+ * @param {string} path
70
+ * @param {*} defaultValue
71
+ * @return {*}
72
+ * @since 1.10.0
73
+ */
74
+ getOption(path, defaultValue) {
75
+ let value;
76
76
 
77
- try {
78
- value = new Pathfinder(this[internalSymbol]).getVia(path);
79
- } catch (e) {}
77
+ try {
78
+ value = new Pathfinder(this[internalSymbol]).getVia(path);
79
+ } catch (e) {}
80
80
 
81
- if (value === undefined) return defaultValue;
82
- return value;
83
- }
81
+ if (value === undefined) return defaultValue;
82
+ return value;
83
+ }
84
84
  }
@@ -20,19 +20,19 @@ export { toBinary, fromBinary };
20
20
  * @since 1.18.0
21
21
  */
22
22
  function toBinary(string) {
23
- const codeUnits = new Uint16Array(validateString(string).length);
24
- for (let i = 0; i < codeUnits.length; i++) {
25
- codeUnits[i] = string.charCodeAt(i);
26
- }
23
+ const codeUnits = new Uint16Array(validateString(string).length);
24
+ for (let i = 0; i < codeUnits.length; i++) {
25
+ codeUnits[i] = string.charCodeAt(i);
26
+ }
27
27
 
28
- const charCodes = new Uint8Array(codeUnits.buffer);
29
- let result = "";
28
+ const charCodes = new Uint8Array(codeUnits.buffer);
29
+ let result = "";
30
30
 
31
- for (let i = 0; i < charCodes.byteLength; i++) {
32
- result += String.fromCharCode(charCodes[i]);
33
- }
31
+ for (let i = 0; i < charCodes.byteLength; i++) {
32
+ result += String.fromCharCode(charCodes[i]);
33
+ }
34
34
 
35
- return result;
35
+ return result;
36
36
  }
37
37
 
38
38
  /**
@@ -46,14 +46,14 @@ function toBinary(string) {
46
46
  * @since 1.18.0
47
47
  */
48
48
  function fromBinary(binary) {
49
- const bytes = new Uint8Array(validateString(binary).length);
50
- for (let i = 0; i < bytes.length; i++) {
51
- bytes[i] = binary.charCodeAt(i);
52
- }
53
- const charCodes = new Uint16Array(bytes.buffer);
54
- let result = "";
55
- for (let i = 0; i < charCodes.length; i++) {
56
- result += String.fromCharCode(charCodes[i]);
57
- }
58
- return result;
49
+ const bytes = new Uint8Array(validateString(binary).length);
50
+ for (let i = 0; i < bytes.length; i++) {
51
+ bytes[i] = binary.charCodeAt(i);
52
+ }
53
+ const charCodes = new Uint16Array(bytes.buffer);
54
+ let result = "";
55
+ for (let i = 0; i < charCodes.length; i++) {
56
+ result += String.fromCharCode(charCodes[i]);
57
+ }
58
+ return result;
59
59
  }
@@ -8,7 +8,11 @@
8
8
  import { Base } from "./base.mjs";
9
9
  import { isString } from "./is.mjs";
10
10
  import { MediaType, parseMediaType } from "./mediatype.mjs";
11
- import { validateBoolean, validateInstance, validateString } from "./validate.mjs";
11
+ import {
12
+ validateBoolean,
13
+ validateInstance,
14
+ validateString,
15
+ } from "./validate.mjs";
12
16
  import { instanceSymbol } from "../constants.mjs";
13
17
  export { DataUrl, parseDataURL };
14
18
 
@@ -29,59 +33,61 @@ const internal = Symbol("internal");
29
33
  * @see https://datatracker.ietf.org/doc/html/rfc2397
30
34
  */
31
35
  class DataUrl extends Base {
32
- /**
33
- *
34
- * @param {String} content
35
- * @param {String|Monster.Types.MediaType} mediatype
36
- * @param {boolean} base64=true
37
- */
38
- constructor(content, mediatype, base64) {
39
- super();
40
-
41
- if (isString(mediatype)) {
42
- mediatype = parseMediaType(mediatype);
43
- }
44
-
45
- this[internal] = {
46
- content: validateString(content),
47
- mediatype: validateInstance(mediatype, MediaType),
48
- base64: validateBoolean(base64 === undefined ? true : base64),
49
- };
50
- }
51
-
52
- /**
53
- * This method is called by the `instanceof` operator.
54
- * @returns {symbol}
55
- * @since 2.1.0
56
- */
57
- static get [instanceSymbol]() {
58
- return Symbol.for("@schukai/monster/types/data-url");
59
- }
60
-
61
- get content() {
62
- return this[internal].base64 ? atob(this[internal].content) : this[internal].content;
63
- }
64
-
65
- get mediatype() {
66
- return this[internal].mediatype;
67
- }
68
-
69
- /**
70
- *
71
- * @return {string}
72
- * @see https://datatracker.ietf.org/doc/html/rfc2397
73
- */
74
- toString() {
75
- let content = this[internal].content;
76
-
77
- if (this[internal].base64 === true) {
78
- content = `;base64,${content}`;
79
- } else {
80
- content = `,${encodeURIComponent(content)}`;
81
- }
82
-
83
- return `data:${this[internal].mediatype.toString()}${content}`;
84
- }
36
+ /**
37
+ *
38
+ * @param {String} content
39
+ * @param {String|Monster.Types.MediaType} mediatype
40
+ * @param {boolean} base64=true
41
+ */
42
+ constructor(content, mediatype, base64) {
43
+ super();
44
+
45
+ if (isString(mediatype)) {
46
+ mediatype = parseMediaType(mediatype);
47
+ }
48
+
49
+ this[internal] = {
50
+ content: validateString(content),
51
+ mediatype: validateInstance(mediatype, MediaType),
52
+ base64: validateBoolean(base64 === undefined ? true : base64),
53
+ };
54
+ }
55
+
56
+ /**
57
+ * This method is called by the `instanceof` operator.
58
+ * @returns {symbol}
59
+ * @since 2.1.0
60
+ */
61
+ static get [instanceSymbol]() {
62
+ return Symbol.for("@schukai/monster/types/data-url");
63
+ }
64
+
65
+ get content() {
66
+ return this[internal].base64
67
+ ? atob(this[internal].content)
68
+ : this[internal].content;
69
+ }
70
+
71
+ get mediatype() {
72
+ return this[internal].mediatype;
73
+ }
74
+
75
+ /**
76
+ *
77
+ * @return {string}
78
+ * @see https://datatracker.ietf.org/doc/html/rfc2397
79
+ */
80
+ toString() {
81
+ let content = this[internal].content;
82
+
83
+ if (this[internal].base64 === true) {
84
+ content = `;base64,${content}`;
85
+ } else {
86
+ content = `,${encodeURIComponent(content)}`;
87
+ }
88
+
89
+ return `data:${this[internal].mediatype.toString()}${content}`;
90
+ }
85
91
  }
86
92
 
87
93
  /**
@@ -105,40 +111,40 @@ class DataUrl extends Base {
105
111
  * @memberOf Monster.Types
106
112
  */
107
113
  function parseDataURL(dataurl) {
108
- validateString(dataurl);
109
-
110
- dataurl = dataurl.trim();
111
-
112
- if (dataurl.substring(0, 5) !== "data:") {
113
- throw new TypeError("incorrect or missing data protocol");
114
- }
115
-
116
- dataurl = dataurl.substring(5);
117
-
118
- let p = dataurl.indexOf(",");
119
- if (p === -1) {
120
- throw new TypeError("malformed data url");
121
- }
122
-
123
- let content = dataurl.substring(p + 1);
124
- let mediatypeAndBase64 = dataurl.substring(0, p).trim();
125
- let mediatype = "text/plain;charset=US-ASCII";
126
- let base64Flag = false;
127
-
128
- if (mediatypeAndBase64 !== "") {
129
- mediatype = mediatypeAndBase64;
130
- if (mediatypeAndBase64.endsWith("base64")) {
131
- let i = mediatypeAndBase64.lastIndexOf(";");
132
- mediatype = mediatypeAndBase64.substring(0, i);
133
- base64Flag = true;
134
- } else {
135
- content = decodeURIComponent(content);
136
- }
137
-
138
- mediatype = parseMediaType(mediatype);
139
- } else {
140
- content = decodeURIComponent(content);
141
- }
142
-
143
- return new DataUrl(content, mediatype, base64Flag);
114
+ validateString(dataurl);
115
+
116
+ dataurl = dataurl.trim();
117
+
118
+ if (dataurl.substring(0, 5) !== "data:") {
119
+ throw new TypeError("incorrect or missing data protocol");
120
+ }
121
+
122
+ dataurl = dataurl.substring(5);
123
+
124
+ const p = dataurl.indexOf(",");
125
+ if (p === -1) {
126
+ throw new TypeError("malformed data url");
127
+ }
128
+
129
+ let content = dataurl.substring(p + 1);
130
+ const mediatypeAndBase64 = dataurl.substring(0, p).trim();
131
+ let mediatype = "text/plain;charset=US-ASCII";
132
+ let base64Flag = false;
133
+
134
+ if (mediatypeAndBase64 !== "") {
135
+ mediatype = mediatypeAndBase64;
136
+ if (mediatypeAndBase64.endsWith("base64")) {
137
+ const i = mediatypeAndBase64.lastIndexOf(";");
138
+ mediatype = mediatypeAndBase64.substring(0, i);
139
+ base64Flag = true;
140
+ } else {
141
+ content = decodeURIComponent(content);
142
+ }
143
+
144
+ mediatype = parseMediaType(mediatype);
145
+ } else {
146
+ content = decodeURIComponent(content);
147
+ }
148
+
149
+ return new DataUrl(content, mediatype, base64Flag);
144
150
  }
@@ -5,7 +5,11 @@
5
5
  * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
6
6
  */
7
7
 
8
- import { validateFunction, validateObject, validateString } from "./validate.mjs";
8
+ import {
9
+ validateFunction,
10
+ validateObject,
11
+ validateString,
12
+ } from "./validate.mjs";
9
13
 
10
14
  export { getGlobal, getGlobalObject, getGlobalFunction };
11
15
 
@@ -20,39 +24,39 @@ let globalReference;
20
24
  * @throws {Error} unsupported environment.
21
25
  */
22
26
  (function () {
23
- if (typeof globalThis === "object") {
24
- globalReference = globalThis;
25
- return;
26
- }
27
+ if (typeof globalThis === "object") {
28
+ globalReference = globalThis;
29
+ return;
30
+ }
27
31
 
28
- if (typeof self !== "undefined") {
29
- globalReference = self;
30
- return;
31
- } else if (typeof window !== "undefined") {
32
- globalReference = window;
33
- return;
34
- }
32
+ if (typeof self !== "undefined") {
33
+ globalReference = self;
34
+ return;
35
+ } else if (typeof window !== "undefined") {
36
+ globalReference = window;
37
+ return;
38
+ }
35
39
 
36
- Object.defineProperty(Object.prototype, "__monster__", {
37
- get: function () {
38
- return this;
39
- },
40
- configurable: true,
41
- });
40
+ Object.defineProperty(Object.prototype, "__monster__", {
41
+ get: function () {
42
+ return this;
43
+ },
44
+ configurable: true,
45
+ });
42
46
 
43
- if (typeof __monster__ === "object") {
44
- __monster__.globalThis = __monster__;
45
- delete Object.prototype.__monster__;
47
+ if (typeof __monster__ === "object") {
48
+ __monster__.globalThis = __monster__;
49
+ delete Object.prototype.__monster__;
46
50
 
47
- globalReference = globalThis;
48
- return;
49
- }
51
+ globalReference = globalThis;
52
+ return;
53
+ }
50
54
 
51
- try {
52
- globalReference = Function("return this")();
53
- } catch (e) {}
55
+ try {
56
+ globalReference = Function("return this")();
57
+ } catch (e) {}
54
58
 
55
- throw new Error("unsupported environment.");
59
+ throw new Error("unsupported environment.");
56
60
  })();
57
61
 
58
62
  /**
@@ -66,7 +70,7 @@ let globalReference;
66
70
  * @returns {objec} globalThis
67
71
  */
68
72
  function getGlobal() {
69
- return globalReference;
73
+ return globalReference;
70
74
  }
71
75
 
72
76
  /**
@@ -102,11 +106,12 @@ function getGlobal() {
102
106
  * @throws {TypeError} value is not a string
103
107
  */
104
108
  function getGlobalObject(name) {
105
- validateString(name);
106
- let o = globalReference?.[name];
107
- if (typeof o === "undefined") throw new Error(`the object ${name} is not defined`);
108
- validateObject(o);
109
- return o;
109
+ validateString(name);
110
+ const o = globalReference?.[name];
111
+ if (typeof o === "undefined")
112
+ throw new Error(`the object ${name} is not defined`);
113
+ validateObject(o);
114
+ return o;
110
115
  }
111
116
 
112
117
  /**
@@ -140,9 +145,10 @@ function getGlobalObject(name) {
140
145
  * @throws {TypeError} value is not a string
141
146
  */
142
147
  function getGlobalFunction(name) {
143
- validateString(name);
144
- let f = globalReference?.[name];
145
- if (typeof f === "undefined") throw new Error(`the function ${name} is not defined`);
146
- validateFunction(f);
147
- return f;
148
+ validateString(name);
149
+ const f = globalReference?.[name];
150
+ if (typeof f === "undefined")
151
+ throw new Error(`the function ${name} is not defined`);
152
+ validateFunction(f);
153
+ return f;
148
154
  }