@schukai/monster 3.51.5 → 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 (360) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +15 -12
  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 +223 -103
  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/dom/customcontrol.mjs +5 -4
  348. package/test/cases/math/random.mjs +0 -1
  349. package/test/cases/monster.mjs +1 -1
  350. package/test/cases/net/webconnect/message.mjs +0 -1
  351. package/test/cases/types/node.mjs +1 -1
  352. package/test/util/chai-dom.mjs +2 -2
  353. package/test/util/intersection-mock.mjs +69 -0
  354. package/test/util/jsdom.mjs +41 -25
  355. package/test/util/localstorage.mjs +1 -0
  356. package/test/util/resize-observer.mjs +29 -0
  357. package/test/util/websocket.mjs +4 -1
  358. package/test/web/import.js +16 -1
  359. package/test/web/test.html +28 -5
  360. package/test/web/tests.js +30398 -17879
@@ -25,223 +25,223 @@ export { TokenList };
25
25
  * @memberOf Monster.Types
26
26
  */
27
27
  class TokenList extends Base {
28
- /**
29
- *
30
- * @param {array|string|iteratable} init
31
- */
32
- constructor(init) {
33
- super();
34
- this.tokens = new Set();
28
+ /**
29
+ *
30
+ * @param {array|string|iteratable} init
31
+ */
32
+ constructor(init) {
33
+ super();
34
+ this.tokens = new Set();
35
35
 
36
- if (typeof init !== "undefined") {
37
- this.add(init);
38
- }
39
- }
36
+ if (typeof init !== "undefined") {
37
+ this.add(init);
38
+ }
39
+ }
40
40
 
41
- /**
42
- * Iterator protocol
43
- *
44
- * @returns {Symbol.iterator}
45
- */
46
- getIterator() {
47
- return this[Symbol.iterator]();
48
- }
41
+ /**
42
+ * Iterator protocol
43
+ *
44
+ * @returns {Symbol.iterator}
45
+ */
46
+ getIterator() {
47
+ return this[Symbol.iterator]();
48
+ }
49
49
 
50
- /**
51
- * Iterator
52
- *
53
- * @returns {{next: ((function(): ({value: *, done: boolean}))|*)}}
54
- */
55
- [Symbol.iterator]() {
56
- // Use a new index for each iterator. This makes multiple
57
- // iterations over the iterable safe for non-trivial cases,
58
- // such as use of break or nested looping over the same iterable.
59
- let index = 0;
60
- let entries = this.entries();
50
+ /**
51
+ * Iterator
52
+ *
53
+ * @returns {{next: ((function(): ({value: *, done: boolean}))|*)}}
54
+ */
55
+ [Symbol.iterator]() {
56
+ // Use a new index for each iterator. This makes multiple
57
+ // iterations over the iterable safe for non-trivial cases,
58
+ // such as use of break or nested looping over the same iterable.
59
+ let index = 0;
60
+ const entries = this.entries();
61
61
 
62
- return {
63
- next: () => {
64
- if (index < entries.length) {
65
- return { value: entries?.[index++], done: false };
66
- } else {
67
- return { done: true };
68
- }
69
- },
70
- };
71
- }
62
+ return {
63
+ next: () => {
64
+ if (index < entries.length) {
65
+ return { value: entries?.[index++], done: false };
66
+ } else {
67
+ return { done: true };
68
+ }
69
+ },
70
+ };
71
+ }
72
72
 
73
- /**
74
- * Returns true if it contains token, otherwise false
75
- *
76
- * @externalExample ../../example/types/tokenlist-2.mjs
77
- * @param {array|string|iteratable} value
78
- * @returns {boolean}
79
- */
80
- contains(value) {
81
- if (isString(value)) {
82
- value = value.trim();
83
- let counter = 0;
84
- value.split(" ").forEach((token) => {
85
- if (this.tokens.has(token.trim()) === false) return false;
86
- counter++;
87
- });
88
- return counter > 0 ? true : false;
89
- }
73
+ /**
74
+ * Returns true if it contains token, otherwise false
75
+ *
76
+ * @externalExample ../../example/types/tokenlist-2.mjs
77
+ * @param {array|string|iteratable} value
78
+ * @returns {boolean}
79
+ */
80
+ contains(value) {
81
+ if (isString(value)) {
82
+ value = value.trim();
83
+ let counter = 0;
84
+ value.split(" ").forEach((token) => {
85
+ if (this.tokens.has(token.trim()) === false) return false;
86
+ counter++;
87
+ });
88
+ return counter > 0 ? true : false;
89
+ }
90
90
 
91
- if (isIterable(value)) {
92
- let counter = 0;
93
- for (let token of value) {
94
- validateString(token);
95
- if (this.tokens.has(token.trim()) === false) return false;
96
- counter++;
97
- }
98
- return counter > 0 ? true : false;
99
- }
91
+ if (isIterable(value)) {
92
+ let counter = 0;
93
+ for (const token of value) {
94
+ validateString(token);
95
+ if (this.tokens.has(token.trim()) === false) return false;
96
+ counter++;
97
+ }
98
+ return counter > 0 ? true : false;
99
+ }
100
100
 
101
- return false;
102
- }
101
+ return false;
102
+ }
103
103
 
104
- /**
105
- * Add tokens
106
- *
107
- * @externalExample ../../example/types/tokenlist-3.mjs
108
- * @param {array|string|iteratable} value
109
- * @returns {TokenList}
110
- * @throws {TypeError} unsupported value
111
- */
112
- add(value) {
113
- if (isString(value)) {
114
- value.split(" ").forEach((token) => {
115
- this.tokens.add(token.trim());
116
- });
117
- } else if (isIterable(value)) {
118
- for (let token of value) {
119
- validateString(token);
120
- this.tokens.add(token.trim());
121
- }
122
- } else if (typeof value !== "undefined") {
123
- throw new TypeError("unsupported value");
124
- }
104
+ /**
105
+ * Add tokens
106
+ *
107
+ * @externalExample ../../example/types/tokenlist-3.mjs
108
+ * @param {array|string|iteratable} value
109
+ * @returns {TokenList}
110
+ * @throws {TypeError} unsupported value
111
+ */
112
+ add(value) {
113
+ if (isString(value)) {
114
+ value.split(" ").forEach((token) => {
115
+ this.tokens.add(token.trim());
116
+ });
117
+ } else if (isIterable(value)) {
118
+ for (const token of value) {
119
+ validateString(token);
120
+ this.tokens.add(token.trim());
121
+ }
122
+ } else if (typeof value !== "undefined") {
123
+ throw new TypeError("unsupported value");
124
+ }
125
125
 
126
- return this;
127
- }
126
+ return this;
127
+ }
128
128
 
129
- /**
130
- * remove all tokens
131
- *
132
- * @returns {TokenList}
133
- */
134
- clear() {
135
- this.tokens.clear();
136
- return this;
137
- }
129
+ /**
130
+ * remove all tokens
131
+ *
132
+ * @returns {TokenList}
133
+ */
134
+ clear() {
135
+ this.tokens.clear();
136
+ return this;
137
+ }
138
138
 
139
- /**
140
- * Removes token
141
- *
142
- * @externalExample ../../example/types/tokenlist-4.mjs
143
- * @param {array|string|iteratable} value
144
- * @returns {TokenList}
145
- * @throws {TypeError} unsupported value
146
- */
147
- remove(value) {
148
- if (isString(value)) {
149
- value.split(" ").forEach((token) => {
150
- this.tokens.delete(token.trim());
151
- });
152
- } else if (isIterable(value)) {
153
- for (let token of value) {
154
- validateString(token);
155
- this.tokens.delete(token.trim());
156
- }
157
- } else if (typeof value !== "undefined") {
158
- throw new TypeError("unsupported value", "types/tokenlist.mjs");
159
- }
139
+ /**
140
+ * Removes token
141
+ *
142
+ * @externalExample ../../example/types/tokenlist-4.mjs
143
+ * @param {array|string|iteratable} value
144
+ * @returns {TokenList}
145
+ * @throws {TypeError} unsupported value
146
+ */
147
+ remove(value) {
148
+ if (isString(value)) {
149
+ value.split(" ").forEach((token) => {
150
+ this.tokens.delete(token.trim());
151
+ });
152
+ } else if (isIterable(value)) {
153
+ for (const token of value) {
154
+ validateString(token);
155
+ this.tokens.delete(token.trim());
156
+ }
157
+ } else if (typeof value !== "undefined") {
158
+ throw new TypeError("unsupported value", "types/tokenlist.mjs");
159
+ }
160
160
 
161
- return this;
162
- }
161
+ return this;
162
+ }
163
163
 
164
- /**
165
- * this method replaces a token with a new token.
166
- *
167
- * if the passed token exists, it is replaced with newToken and TokenList is returned.
168
- * if the token does not exist, newToken is not set and TokenList is returned.
169
- *
170
- * @param {string} token
171
- * @param {string} newToken
172
- * @returns {TokenList}
173
- */
174
- replace(token, newToken) {
175
- validateString(token);
176
- validateString(newToken);
177
- if (!this.contains(token)) {
178
- return this;
179
- }
164
+ /**
165
+ * this method replaces a token with a new token.
166
+ *
167
+ * if the passed token exists, it is replaced with newToken and TokenList is returned.
168
+ * if the token does not exist, newToken is not set and TokenList is returned.
169
+ *
170
+ * @param {string} token
171
+ * @param {string} newToken
172
+ * @returns {TokenList}
173
+ */
174
+ replace(token, newToken) {
175
+ validateString(token);
176
+ validateString(newToken);
177
+ if (!this.contains(token)) {
178
+ return this;
179
+ }
180
180
 
181
- let a = Array.from(this.tokens);
182
- let i = a.indexOf(token);
183
- if (i === -1) return this;
181
+ const a = Array.from(this.tokens);
182
+ const i = a.indexOf(token);
183
+ if (i === -1) return this;
184
184
 
185
- a.splice(i, 1, newToken);
186
- this.tokens = new Set();
187
- this.add(a);
185
+ a.splice(i, 1, newToken);
186
+ this.tokens = new Set();
187
+ this.add(a);
188
188
 
189
- return this;
190
- }
189
+ return this;
190
+ }
191
191
 
192
- /**
193
- * Removes token from string. If token doesn't exist it's added.
194
- *
195
- * @externalExample ../../example/types/tokenlist-5.mjs
196
- * @param {array|string|iteratable} value
197
- * @returns {boolean}
198
- * @throws {TypeError} unsupported value
199
- */
200
- toggle(value) {
201
- if (isString(value)) {
202
- value.split(" ").forEach((token) => {
203
- toggleValue.call(this, token);
204
- });
205
- } else if (isIterable(value)) {
206
- for (let token of value) {
207
- toggleValue.call(this, token);
208
- }
209
- } else if (typeof value !== "undefined") {
210
- throw new TypeError("unsupported value", "types/tokenlist.mjs");
211
- }
192
+ /**
193
+ * Removes token from string. If token doesn't exist it's added.
194
+ *
195
+ * @externalExample ../../example/types/tokenlist-5.mjs
196
+ * @param {array|string|iteratable} value
197
+ * @returns {boolean}
198
+ * @throws {TypeError} unsupported value
199
+ */
200
+ toggle(value) {
201
+ if (isString(value)) {
202
+ value.split(" ").forEach((token) => {
203
+ toggleValue.call(this, token);
204
+ });
205
+ } else if (isIterable(value)) {
206
+ for (const token of value) {
207
+ toggleValue.call(this, token);
208
+ }
209
+ } else if (typeof value !== "undefined") {
210
+ throw new TypeError("unsupported value", "types/tokenlist.mjs");
211
+ }
212
212
 
213
- return this;
214
- }
213
+ return this;
214
+ }
215
215
 
216
- /**
217
- * returns an array with all tokens
218
- *
219
- * @returns {array}
220
- */
221
- entries() {
222
- return Array.from(this.tokens);
223
- }
216
+ /**
217
+ * returns an array with all tokens
218
+ *
219
+ * @returns {array}
220
+ */
221
+ entries() {
222
+ return Array.from(this.tokens);
223
+ }
224
224
 
225
- /**
226
- * executes the provided function with each value of the set
227
- *
228
- * @param {function} callback
229
- * @returns {TokenList}
230
- */
231
- forEach(callback) {
232
- validateFunction(callback);
233
- this.tokens.forEach(callback);
234
- return this;
235
- }
225
+ /**
226
+ * executes the provided function with each value of the set
227
+ *
228
+ * @param {function} callback
229
+ * @returns {TokenList}
230
+ */
231
+ forEach(callback) {
232
+ validateFunction(callback);
233
+ this.tokens.forEach(callback);
234
+ return this;
235
+ }
236
236
 
237
- /**
238
- * returns the individual tokens separated by a blank character
239
- *
240
- * @returns {string}
241
- */
242
- toString() {
243
- return this.entries().join(" ");
244
- }
237
+ /**
238
+ * returns the individual tokens separated by a blank character
239
+ *
240
+ * @returns {string}
241
+ */
242
+ toString() {
243
+ return this.entries().join(" ");
244
+ }
245
245
  }
246
246
 
247
247
  /**
@@ -251,13 +251,14 @@ class TokenList extends Base {
251
251
  * @throws {Error} must be called with TokenList.call
252
252
  */
253
253
  function toggleValue(token) {
254
- if (!(this instanceof TokenList)) throw Error("must be called with TokenList.call");
255
- validateString(token);
256
- token = token.trim();
257
- if (this.contains(token)) {
258
- this.remove(token);
259
- return this;
260
- }
261
- this.add(token);
262
- return this;
254
+ if (!(this instanceof TokenList))
255
+ throw Error("must be called with TokenList.call");
256
+ validateString(token);
257
+ token = token.trim();
258
+ if (this.contains(token)) {
259
+ this.remove(token);
260
+ return this;
261
+ }
262
+ this.add(token);
263
+ return this;
263
264
  }
@@ -20,16 +20,18 @@ export { typeOf };
20
20
  * @throws {TypeError} value is not a primitive
21
21
  */
22
22
  function typeOf(value) {
23
- let type = {}.toString.call(value).match(/\s([a-zA-Z]+)/)[1];
24
- if ("Object" === type) {
25
- const name = value.constructor.name;
26
- if (name) {
27
- return name.toLowerCase();
28
- }
23
+ let type = {}.toString.call(value).match(/\s([a-zA-Z]+)/)[1];
24
+ if ("Object" === type) {
25
+ const name = value.constructor.name;
26
+ if (name) {
27
+ return name.toLowerCase();
28
+ }
29
29
 
30
- const results = /^(class|function)\s+(\w+)/.exec(value.constructor.toString());
31
- type = results && results.length > 2 ? results[2] : "";
32
- }
30
+ const results = /^(class|function)\s+(\w+)/.exec(
31
+ value.constructor.toString(),
32
+ );
33
+ type = results && results.length > 2 ? results[2] : "";
34
+ }
33
35
 
34
- return type.toLowerCase();
36
+ return type.toLowerCase();
35
37
  }
@@ -21,57 +21,57 @@ export { UniqueQueue };
21
21
  * @summary A queue for unique values
22
22
  */
23
23
  class UniqueQueue extends Queue {
24
- /**
25
- *
26
- */
27
- constructor() {
28
- super();
29
- this[internalSymbol] = {
30
- unique: new WeakSet(),
31
- };
32
- }
24
+ /**
25
+ *
26
+ */
27
+ constructor() {
28
+ super();
29
+ this[internalSymbol] = {
30
+ unique: new WeakSet(),
31
+ };
32
+ }
33
33
 
34
- /**
35
- * Add a new element to the end of the queue.
36
- *
37
- * @param {object} value
38
- * @returns {Queue}
39
- * @throws {TypeError} value is not a object
40
- */
41
- add(value) {
42
- validateObject(value);
34
+ /**
35
+ * Add a new element to the end of the queue.
36
+ *
37
+ * @param {object} value
38
+ * @returns {Queue}
39
+ * @throws {TypeError} value is not a object
40
+ */
41
+ add(value) {
42
+ validateObject(value);
43
43
 
44
- if (!this[internalSymbol].unique.has(value)) {
45
- this[internalSymbol].unique.add(value);
46
- super.add(value);
47
- }
44
+ if (!this[internalSymbol].unique.has(value)) {
45
+ this[internalSymbol].unique.add(value);
46
+ super.add(value);
47
+ }
48
48
 
49
- return this;
50
- }
49
+ return this;
50
+ }
51
51
 
52
- /**
53
- * remove all entries
54
- *
55
- * @returns {Queue}
56
- */
57
- clear() {
58
- super.clear();
59
- this[internalSymbol].unique = new WeakSet();
60
- return this;
61
- }
52
+ /**
53
+ * remove all entries
54
+ *
55
+ * @returns {Queue}
56
+ */
57
+ clear() {
58
+ super.clear();
59
+ this[internalSymbol].unique = new WeakSet();
60
+ return this;
61
+ }
62
62
 
63
- /**
64
- * Remove the element at the front of the queue
65
- * If the queue is empty, return undefined.
66
- *
67
- * @return {object}
68
- */
69
- poll() {
70
- if (this.isEmpty()) {
71
- return undefined;
72
- }
73
- let value = this.data.shift();
74
- this[internalSymbol].unique.delete(value);
75
- return value;
76
- }
63
+ /**
64
+ * Remove the element at the front of the queue
65
+ * If the queue is empty, return undefined.
66
+ *
67
+ * @return {object}
68
+ */
69
+ poll() {
70
+ if (this.isEmpty()) {
71
+ return undefined;
72
+ }
73
+ const value = this.data.shift();
74
+ this[internalSymbol].unique.delete(value);
75
+ return value;
76
+ }
77
77
  }
@@ -23,34 +23,34 @@ export { UUID };
23
23
  * @throws {Error} unsupported
24
24
  */
25
25
  class UUID extends Base {
26
- /**
27
- *
28
- */
29
- constructor() {
30
- super();
26
+ /**
27
+ *
28
+ */
29
+ constructor() {
30
+ super();
31
31
 
32
- let uuid = createWithCrypto();
32
+ let uuid = createWithCrypto();
33
33
 
34
- if (uuid === undefined) {
35
- uuid = createWithRandom();
36
- }
34
+ if (uuid === undefined) {
35
+ uuid = createWithRandom();
36
+ }
37
37
 
38
- if (uuid === undefined) {
39
- throw new Error("unsupported");
40
- }
38
+ if (uuid === undefined) {
39
+ throw new Error("unsupported");
40
+ }
41
41
 
42
- this[internalSymbol] = {
43
- value: uuid,
44
- };
45
- }
42
+ this[internalSymbol] = {
43
+ value: uuid,
44
+ };
45
+ }
46
46
 
47
- /**
48
- *
49
- * @return {string}
50
- */
51
- toString() {
52
- return this[internalSymbol]["value"];
53
- }
47
+ /**
48
+ *
49
+ * @return {string}
50
+ */
51
+ toString() {
52
+ return this[internalSymbol]["value"];
53
+ }
54
54
  }
55
55
 
56
56
  /**
@@ -58,11 +58,11 @@ class UUID extends Base {
58
58
  * @return {string|undefined}
59
59
  */
60
60
  function createWithRandom() {
61
- return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) {
62
- const r = (random(0, 65000) * 16) | 0;
63
- const v = c === "x" ? r : (r & 0x3) | 0x8;
64
- return v.toString(16)[0];
65
- });
61
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) {
62
+ const r = (random(0, 65000) * 16) | 0;
63
+ const v = c === "x" ? r : (r & 0x3) | 0x8;
64
+ return v.toString(16)[0];
65
+ });
66
66
  }
67
67
 
68
68
  /**
@@ -70,8 +70,8 @@ function createWithRandom() {
70
70
  * @return {string|undefined}
71
71
  */
72
72
  function createWithCrypto() {
73
- const crypt = getGlobalObject("crypto");
74
- if (!isObject(crypt)) return;
75
- if (typeof crypt?.["randomUUID"]) return;
76
- return crypt.randomUUID();
73
+ const crypt = getGlobalObject("crypto");
74
+ if (!isObject(crypt)) return;
75
+ if (typeof crypt?.["randomUUID"]) return;
76
+ return crypt.randomUUID();
77
77
  }