@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
@@ -15,7 +15,9 @@ export { Storage, storageObjectSymbol };
15
15
  * @private
16
16
  * @type {symbol}
17
17
  */
18
- const storageObjectSymbol = Symbol.for("@schukai/monster/data/datasource/storage/@@storageObject");
18
+ const storageObjectSymbol = Symbol.for(
19
+ "@schukai/monster/data/datasource/storage/@@storageObject",
20
+ );
19
21
 
20
22
  /**
21
23
  * The class represents a record.
@@ -27,87 +29,86 @@ const storageObjectSymbol = Symbol.for("@schukai/monster/data/datasource/storage
27
29
  * @summary The Storage class encapsulates the access to data objects over WebStorageAPI.
28
30
  */
29
31
  class Storage extends Datasource {
30
- /**
31
- *
32
- * @param {string} key LocalStorage Key
33
- * @throws {TypeError} value is not a string
34
- */
35
- constructor(key) {
36
- super();
37
- this.setOption("key", validateString(key));
38
- }
32
+ /**
33
+ *
34
+ * @param {string} key LocalStorage Key
35
+ * @throws {TypeError} value is not a string
36
+ */
37
+ constructor(key) {
38
+ super();
39
+ this.setOption("key", validateString(key));
40
+ }
39
41
 
40
- /**
41
- * This method is called by the `instanceof` operator.
42
- * @returns {symbol}
43
- * @since 2.1.0
44
- */
45
- static get [instanceSymbol]() {
46
- return Symbol.for("@schukai/monster/data/datasource/storage");
47
- }
42
+ /**
43
+ * This method is called by the `instanceof` operator.
44
+ * @returns {symbol}
45
+ * @since 2.1.0
46
+ */
47
+ static get [instanceSymbol]() {
48
+ return Symbol.for("@schukai/monster/data/datasource/storage");
49
+ }
48
50
 
49
- /**
50
- * @property {string} key=undefined LocalStorage Key
51
- */
52
- get defaults() {
53
- return Object.assign({}, super.defaults, {
54
- key: undefined,
55
- });
56
- }
51
+ /**
52
+ * @property {string} key=undefined LocalStorage Key
53
+ */
54
+ get defaults() {
55
+ return Object.assign({}, super.defaults, {
56
+ key: undefined,
57
+ });
58
+ }
57
59
 
58
- /**
59
- * @throws {Error} this method must be implemented by derived classes.
60
- * @return {external:Storage}
61
- * @private
62
- */
63
- [storageObjectSymbol]() {
64
- throw new Error("this method must be implemented by derived classes");
65
- }
60
+ /**
61
+ * @throws {Error} this method must be implemented by derived classes.
62
+ * @return {external:Storage}
63
+ * @private
64
+ */
65
+ [storageObjectSymbol]() {
66
+ throw new Error("this method must be implemented by derived classes");
67
+ }
66
68
 
67
- /**
68
- * @return {Promise}
69
- * @throws {Error} the options does not contain a valid json definition
70
- * @throws {TypeError} value is not a object
71
- * @throws {Error} the data cannot be read
72
- */
73
- read() {
74
- const self = this;
69
+ /**
70
+ * @return {Promise}
71
+ * @throws {Error} the options does not contain a valid json definition
72
+ * @throws {TypeError} value is not a object
73
+ * @throws {Error} the data cannot be read
74
+ */
75
+ read() {
76
+ const self = this;
75
77
 
76
- const storage = self[storageObjectSymbol]();
78
+ const storage = self[storageObjectSymbol]();
77
79
 
78
- return new Promise(function (resolve) {
79
- const data = JSON.parse(storage.getItem(self.getOption("key")));
80
- self.set(data ?? {});
81
- resolve();
82
- });
83
- }
80
+ return new Promise(function (resolve) {
81
+ const data = JSON.parse(storage.getItem(self.getOption("key")));
82
+ self.set(data ?? {});
83
+ resolve();
84
+ });
85
+ }
84
86
 
85
- /**
86
- * @return {Storage}
87
- * @throws {Error} the data cannot be written
88
- */
89
- write() {
90
- const self = this;
87
+ /**
88
+ * @return {Storage}
89
+ * @throws {Error} the data cannot be written
90
+ */
91
+ write() {
92
+ const self = this;
91
93
 
92
- const storage = self[storageObjectSymbol]();
94
+ const storage = self[storageObjectSymbol]();
93
95
 
94
- return new Promise(function (resolve) {
95
- const data = self.get();
96
- if (data === undefined) {
97
- storage.removeItem(self.getOption("key"));
98
- } else {
99
- storage.setItem(self.getOption("key"), JSON.stringify(data));
100
- }
96
+ return new Promise(function (resolve) {
97
+ const data = self.get();
98
+ if (data === undefined) {
99
+ storage.removeItem(self.getOption("key"));
100
+ } else {
101
+ storage.setItem(self.getOption("key"), JSON.stringify(data));
102
+ }
101
103
 
102
- resolve();
103
- });
104
- }
104
+ resolve();
105
+ });
106
+ }
105
107
 
106
- /**
107
- * @return {Storage}
108
- */
109
- getClone() {
110
- const self = this;
111
- return new Storage(self[internalSymbol].getRealSubject()["options"].key);
112
- }
108
+ /**
109
+ * @return {Storage}
110
+ */
111
+ getClone() {
112
+ return new Storage(this[internalSymbol].getRealSubject()["options"].key);
113
+ }
113
114
  }
@@ -34,7 +34,9 @@ export { Datasource };
34
34
  * @license AGPLv3
35
35
  * @since 1.24.0
36
36
  */
37
- const internalDataSymbol = Symbol.for("@schukai/monster/data/datasource/@@data");
37
+ const internalDataSymbol = Symbol.for(
38
+ "@schukai/monster/data/datasource/@@data",
39
+ );
38
40
 
39
41
  /**
40
42
  * The datasource class is the basis for dealing with different data sources.
@@ -47,155 +49,160 @@ const internalDataSymbol = Symbol.for("@schukai/monster/data/datasource/@@data")
47
49
  * @summary The datasource class encapsulates the access to data objects.
48
50
  */
49
51
  class Datasource extends Base {
50
- /**
51
- * creates a new datasource
52
- *
53
- */
54
- constructor() {
55
- super();
56
-
57
- this[internalSymbol] = new ProxyObserver({
58
- options: extend({}, this.defaults),
59
- });
60
-
61
- this[internalDataSymbol] = new ProxyObserver({});
62
- }
63
-
64
- /**
65
- * attach a new observer
66
- *
67
- * @param {Observer} observer
68
- * @returns {Datasource}
69
- */
70
- attachObserver(observer) {
71
- this[internalDataSymbol].attachObserver(observer);
72
- return this;
73
- }
74
-
75
- /**
76
- * detach a observer
77
- *
78
- * @param {Observer} observer
79
- * @returns {Datasource}
80
- */
81
- detachObserver(observer) {
82
- this[internalDataSymbol].detachObserver(observer);
83
- return this;
84
- }
85
-
86
- /**
87
- * @param {Observer} observer
88
- * @returns {boolean}
89
- */
90
- containsObserver(observer) {
91
- return this[internalDataSymbol].containsObserver(observer);
92
- }
93
-
94
- /**
95
- * Derived classes can override and extend this method as follows.
96
- *
97
- * ```
98
- * get defaults() {
99
- * return Object.assign({}, super.defaults, {
100
- * myValue:true
101
- * });
102
- * }
103
- * ```
104
- */
105
- get defaults() {
106
- return {};
107
- }
108
-
109
- /**
110
- * Set option
111
- *
112
- * @param {string} path
113
- * @param {*} value
114
- * @return {Datasource}
115
- */
116
- setOption(path, value) {
117
- new Pathfinder(this[internalSymbol].getSubject()["options"]).setVia(path, value);
118
- return this;
119
- }
120
-
121
- /**
122
- * @param {string|object} options
123
- * @return {Datasource}
124
- * @throws {Error} the options does not contain a valid json definition
125
- */
126
- setOptions(options) {
127
- if (isString(options)) {
128
- options = parseOptionsJSON(options);
129
- }
130
-
131
- const self = this;
132
- extend(self[internalSymbol].getSubject()["options"], self.defaults, options);
133
-
134
- return self;
135
- }
136
-
137
- /**
138
- * nested options can be specified by path `a.b.c`
139
- *
140
- * @param {string} path
141
- * @param {*} defaultValue
142
- * @return {*}
143
- */
144
- getOption(path, defaultValue) {
145
- let value;
146
-
147
- try {
148
- value = new Pathfinder(this[internalSymbol].getRealSubject()["options"]).getVia(path);
149
- } catch (e) {}
150
-
151
- if (value === undefined) return defaultValue;
152
- return value;
153
- }
154
-
155
- /**
156
- * @throws {Error} this method must be implemented by derived classes.
157
- * @return {Promise}
158
- */
159
- read() {
160
- throw new Error("this method must be implemented by derived classes");
161
- }
162
-
163
- /**
164
- * @throws {Error} this method must be implemented by derived classes.
165
- * @return {Promise}
166
- */
167
- write() {
168
- throw new Error("this method must be implemented by derived classes");
169
- }
170
-
171
- /**
172
- * Returns real object
173
- *
174
- * @return {Object|Array}
175
- */
176
- get() {
177
- const self = this;
178
- return self[internalDataSymbol].getRealSubject();
179
- }
180
-
181
- /**
182
- * @param {Object|Array} data
183
- * @return {Datasource}
184
- */
185
- set(data) {
186
- const self = this;
187
- self[internalDataSymbol].setSubject(data);
188
- return self;
189
- }
190
-
191
- /**
192
- * This method is called by the `instanceof` operator.
193
- * @returns {symbol}
194
- * @since 2.1.0
195
- */
196
- static get [instanceSymbol]() {
197
- return Symbol.for("@schukai/monster/data/datasource");
198
- }
52
+ /**
53
+ * creates a new datasource
54
+ *
55
+ */
56
+ constructor() {
57
+ super();
58
+
59
+ this[internalSymbol] = new ProxyObserver({
60
+ options: extend({}, this.defaults),
61
+ });
62
+
63
+ this[internalDataSymbol] = new ProxyObserver({});
64
+ }
65
+
66
+ /**
67
+ * attach a new observer
68
+ *
69
+ * @param {Observer} observer
70
+ * @returns {Datasource}
71
+ */
72
+ attachObserver(observer) {
73
+ this[internalDataSymbol].attachObserver(observer);
74
+ return this;
75
+ }
76
+
77
+ /**
78
+ * detach a observer
79
+ *
80
+ * @param {Observer} observer
81
+ * @returns {Datasource}
82
+ */
83
+ detachObserver(observer) {
84
+ this[internalDataSymbol].detachObserver(observer);
85
+ return this;
86
+ }
87
+
88
+ /**
89
+ * @param {Observer} observer
90
+ * @returns {boolean}
91
+ */
92
+ containsObserver(observer) {
93
+ return this[internalDataSymbol].containsObserver(observer);
94
+ }
95
+
96
+ /**
97
+ * Derived classes can override and extend this method as follows.
98
+ *
99
+ * ```
100
+ * get defaults() {
101
+ * return Object.assign({}, super.defaults, {
102
+ * myValue:true
103
+ * });
104
+ * }
105
+ * ```
106
+ */
107
+ get defaults() {
108
+ return {};
109
+ }
110
+
111
+ /**
112
+ * Set option
113
+ *
114
+ * @param {string} path
115
+ * @param {*} value
116
+ * @return {Datasource}
117
+ */
118
+ setOption(path, value) {
119
+ new Pathfinder(this[internalSymbol].getSubject()["options"]).setVia(
120
+ path,
121
+ value,
122
+ );
123
+ return this;
124
+ }
125
+
126
+ /**
127
+ * @param {string|object} options
128
+ * @return {Datasource}
129
+ * @throws {Error} the options does not contain a valid json definition
130
+ */
131
+ setOptions(options) {
132
+ if (isString(options)) {
133
+ options = parseOptionsJSON(options);
134
+ }
135
+ extend(
136
+ this[internalSymbol].getSubject()["options"],
137
+ this.defaults,
138
+ options,
139
+ );
140
+
141
+ return this;
142
+ }
143
+
144
+ /**
145
+ * nested options can be specified by path `a.b.c`
146
+ *
147
+ * @param {string} path
148
+ * @param {*} defaultValue
149
+ * @return {*}
150
+ */
151
+ getOption(path, defaultValue) {
152
+ let value;
153
+
154
+ try {
155
+ value = new Pathfinder(
156
+ this[internalSymbol].getRealSubject()["options"],
157
+ ).getVia(path);
158
+ } catch (e) {}
159
+
160
+ if (value === undefined) return defaultValue;
161
+ return value;
162
+ }
163
+
164
+ /**
165
+ * @throws {Error} this method must be implemented by derived classes.
166
+ * @return {Promise}
167
+ */
168
+ read() {
169
+ throw new Error("this method must be implemented by derived classes");
170
+ }
171
+
172
+ /**
173
+ * @throws {Error} this method must be implemented by derived classes.
174
+ * @return {Promise}
175
+ */
176
+ write() {
177
+ throw new Error("this method must be implemented by derived classes");
178
+ }
179
+
180
+ /**
181
+ * Returns real object
182
+ *
183
+ * @return {Object|Array}
184
+ */
185
+ get() {
186
+ return this[internalDataSymbol].getRealSubject();
187
+ }
188
+
189
+ /**
190
+ * @param {Object|Array} data
191
+ * @return {Datasource}
192
+ */
193
+ set(data) {
194
+ this[internalDataSymbol].setSubject(data);
195
+ return this;
196
+ }
197
+
198
+ /**
199
+ * This method is called by the `instanceof` operator.
200
+ * @returns {symbol}
201
+ * @since 2.1.0
202
+ */
203
+ static get [instanceSymbol]() {
204
+ return Symbol.for("@schukai/monster/data/datasource");
205
+ }
199
206
  }
200
207
 
201
208
  /**
@@ -205,21 +212,23 @@ class Datasource extends Base {
205
212
  * @throws {Error} the options does not contain a valid json definition
206
213
  */
207
214
  function parseOptionsJSON(data) {
208
- if (isString(data)) {
209
- // the configuration can be specified as a data url.
210
- try {
211
- let dataUrl = parseDataURL(data);
212
- data = dataUrl.content;
213
- } catch (e) {}
214
-
215
- try {
216
- let obj = JSON.parse(data);
217
- validateObject(obj);
218
- return obj;
219
- } catch (e) {
220
- throw new Error(`the options does not contain a valid json definition (actual: ${data}).`);
221
- }
222
- }
223
-
224
- return {};
215
+ if (isString(data)) {
216
+ // the configuration can be specified as a data url.
217
+ try {
218
+ const dataUrl = parseDataURL(data);
219
+ data = dataUrl.content;
220
+ } catch (e) {}
221
+
222
+ try {
223
+ const obj = JSON.parse(data);
224
+ validateObject(obj);
225
+ return obj;
226
+ } catch (e) {
227
+ throw new Error(
228
+ `the options does not contain a valid json definition (actual: ${data}).`,
229
+ );
230
+ }
231
+ }
232
+
233
+ return {};
225
234
  }