@schukai/monster 3.64.1 → 3.65.20

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 (395) hide show
  1. package/CHANGELOG.md +92 -318
  2. package/README.md +44 -40
  3. package/package.json +1 -47
  4. package/source/components/constants.mjs +10 -3
  5. package/source/components/datatable/change-button.mjs +12 -5
  6. package/source/components/datatable/columnbar.mjs +10 -1
  7. package/source/components/datatable/constants.mjs +11 -4
  8. package/source/components/datatable/dataset.mjs +10 -1
  9. package/source/components/datatable/datasource/dom.mjs +14 -1
  10. package/source/components/datatable/datasource/rest.mjs +10 -1
  11. package/source/components/datatable/datasource.mjs +10 -1
  12. package/source/components/datatable/datatable/header.mjs +12 -3
  13. package/source/components/datatable/datatable.mjs +757 -752
  14. package/source/components/datatable/embedded-pagination.mjs +10 -1
  15. package/source/components/datatable/filter/abstract-base.mjs +10 -1
  16. package/source/components/datatable/filter/date-range.mjs +10 -1
  17. package/source/components/datatable/filter/input.mjs +10 -1
  18. package/source/components/datatable/filter/range.mjs +10 -1
  19. package/source/components/datatable/filter/select.mjs +11 -4
  20. package/source/components/datatable/filter/settings.mjs +14 -0
  21. package/source/components/datatable/filter/util.mjs +14 -0
  22. package/source/components/datatable/filter-button.mjs +10 -1
  23. package/source/components/datatable/filter.mjs +11 -3
  24. package/source/components/datatable/pagination.mjs +14 -5
  25. package/source/components/datatable/save-button.mjs +279 -270
  26. package/source/components/datatable/status.mjs +10 -1
  27. package/source/components/datatable/style/dataset.pcss +1 -0
  28. package/source/components/datatable/style/datatable.pcss +1 -0
  29. package/source/components/datatable/stylesheet/change-button.mjs +16 -7
  30. package/source/components/datatable/stylesheet/column-bar.mjs +16 -7
  31. package/source/components/datatable/stylesheet/dataset.mjs +17 -8
  32. package/source/components/datatable/stylesheet/datasource.mjs +16 -7
  33. package/source/components/datatable/stylesheet/datatable.mjs +17 -8
  34. package/source/components/datatable/stylesheet/embedded-pagination.mjs +16 -7
  35. package/source/components/datatable/stylesheet/filter-button.mjs +16 -7
  36. package/source/components/datatable/stylesheet/filter-controls-defaults.mjs +16 -7
  37. package/source/components/datatable/stylesheet/filter-date-range.mjs +16 -7
  38. package/source/components/datatable/stylesheet/filter-range.mjs +16 -7
  39. package/source/components/datatable/stylesheet/filter.mjs +16 -7
  40. package/source/components/datatable/stylesheet/pagination.mjs +16 -7
  41. package/source/components/datatable/stylesheet/save-button.mjs +16 -7
  42. package/source/components/datatable/stylesheet/select-filter.mjs +16 -7
  43. package/source/components/datatable/stylesheet/status.mjs +16 -7
  44. package/source/components/datatable/util.mjs +16 -8
  45. package/source/components/form/action-button.mjs +11 -3
  46. package/source/components/form/api-button.mjs +11 -3
  47. package/source/components/form/button-bar.mjs +11 -3
  48. package/source/components/form/button.mjs +37 -50
  49. package/source/components/form/confirm-button.mjs +11 -3
  50. package/source/components/form/constants.mjs +10 -3
  51. package/source/components/form/context-error.mjs +69 -52
  52. package/source/components/form/context-help.mjs +11 -3
  53. package/source/components/form/field-set.mjs +295 -0
  54. package/source/components/form/form.mjs +12 -4
  55. package/source/components/form/message-state-button.mjs +11 -3
  56. package/source/components/form/popper-button.mjs +11 -3
  57. package/source/components/form/popper.mjs +13 -480
  58. package/source/components/form/reload.mjs +12 -4
  59. package/source/components/form/select.mjs +44 -33
  60. package/source/components/form/shadow-reload.mjs +11 -3
  61. package/source/components/form/state-button.mjs +11 -3
  62. package/source/components/form/style/field-set.pcss +13 -0
  63. package/source/components/form/stylesheet/action-button.mjs +16 -7
  64. package/source/components/form/stylesheet/api-button.mjs +16 -7
  65. package/source/components/form/stylesheet/button-bar.mjs +17 -8
  66. package/source/components/form/stylesheet/button.mjs +16 -7
  67. package/source/components/form/stylesheet/confirm-button.mjs +17 -8
  68. package/source/components/form/stylesheet/context-error.mjs +16 -7
  69. package/source/components/form/stylesheet/context-help.mjs +16 -7
  70. package/source/components/form/stylesheet/field-set.mjs +40 -0
  71. package/source/components/form/stylesheet/form.mjs +17 -8
  72. package/source/components/form/stylesheet/message-state-button.mjs +16 -7
  73. package/source/components/form/stylesheet/popper-button.mjs +16 -7
  74. package/source/components/form/stylesheet/select.mjs +16 -7
  75. package/source/components/form/stylesheet/state-button.mjs +16 -7
  76. package/source/components/form/stylesheet/toggle-switch.mjs +16 -7
  77. package/source/components/form/stylesheet/tree-select.mjs +16 -7
  78. package/source/components/form/tabs.mjs +12 -8
  79. package/source/components/form/template.mjs +11 -3
  80. package/source/components/form/toggle-switch.mjs +12 -8
  81. package/source/components/form/tree-select.mjs +10 -3
  82. package/source/components/form/types/state.mjs +10 -3
  83. package/source/components/form/util/fetch.mjs +10 -3
  84. package/source/components/form/util/floating-ui.mjs +10 -3
  85. package/source/components/form/util/popper.mjs +10 -3
  86. package/source/components/host/call-button.mjs +10 -1
  87. package/source/components/host/collapse.mjs +15 -519
  88. package/source/components/host/config-manager.mjs +10 -1
  89. package/source/components/host/constants.mjs +11 -4
  90. package/source/components/host/details.mjs +14 -256
  91. package/source/components/host/host.mjs +10 -1
  92. package/source/components/host/overlay.mjs +10 -1
  93. package/source/components/host/stylesheet/call-button.mjs +16 -7
  94. package/source/components/host/stylesheet/config-manager.mjs +16 -7
  95. package/source/components/host/stylesheet/host.mjs +17 -8
  96. package/source/components/host/stylesheet/overlay.mjs +17 -8
  97. package/source/components/host/stylesheet/toggle-button.mjs +16 -7
  98. package/source/components/host/stylesheet/viewer.mjs +16 -7
  99. package/source/components/host/toggle-button.mjs +10 -1
  100. package/source/components/host/util.mjs +14 -0
  101. package/source/components/host/viewer.mjs +10 -1
  102. package/source/components/layout/collapse.mjs +543 -0
  103. package/source/components/layout/details.mjs +273 -0
  104. package/source/components/layout/panel.mjs +179 -169
  105. package/source/components/layout/popper.mjs +480 -0
  106. package/source/components/layout/split-panel.mjs +329 -303
  107. package/source/components/{host → layout}/stylesheet/collapse.mjs +16 -7
  108. package/source/components/{host → layout}/stylesheet/details.mjs +16 -7
  109. package/source/components/layout/stylesheet/panel.mjs +16 -7
  110. package/source/components/{form → layout}/stylesheet/popper.mjs +16 -7
  111. package/source/components/layout/stylesheet/split-panel.mjs +16 -7
  112. package/source/components/layout/stylesheet/tabs.mjs +16 -7
  113. package/source/components/layout/stylesheet/width-toggle.mjs +16 -7
  114. package/source/components/layout/tabs.mjs +38 -23
  115. package/source/components/layout/width-toggle.mjs +150 -140
  116. package/source/components/navigation/style/table-of-content.pcss +99 -0
  117. package/source/components/navigation/stylesheet/table-of-content.mjs +40 -0
  118. package/source/components/navigation/table-of-content.mjs +546 -0
  119. package/source/components/notify/constants.mjs +10 -3
  120. package/source/components/notify/message.mjs +16 -9
  121. package/source/components/notify/notify.mjs +11 -4
  122. package/source/components/notify/stylesheet/message.mjs +16 -7
  123. package/source/components/notify/stylesheet/notify.mjs +16 -7
  124. package/source/components/state/log/entry.mjs +10 -1
  125. package/source/components/state/log.mjs +10 -1
  126. package/source/components/state/state.mjs +10 -1
  127. package/source/components/state/stylesheet/log.mjs +16 -7
  128. package/source/components/state/stylesheet/state.mjs +17 -8
  129. package/source/components/style/link.pcss +0 -1
  130. package/source/components/style/mixin/form.pcss +0 -1
  131. package/source/components/style/mixin/typography.pcss +7 -7
  132. package/source/components/style/typography.pcss +1 -1
  133. package/source/components/stylesheet/badge.mjs +16 -7
  134. package/source/components/stylesheet/border.mjs +16 -7
  135. package/source/components/stylesheet/button.mjs +16 -7
  136. package/source/components/stylesheet/card.mjs +16 -7
  137. package/source/components/stylesheet/color.mjs +16 -7
  138. package/source/components/stylesheet/common.mjs +16 -7
  139. package/source/components/stylesheet/control.mjs +16 -7
  140. package/source/components/stylesheet/data-grid.mjs +16 -7
  141. package/source/components/stylesheet/display.mjs +16 -7
  142. package/source/components/stylesheet/floating-ui.mjs +16 -7
  143. package/source/components/stylesheet/form.mjs +16 -7
  144. package/source/components/stylesheet/host.mjs +16 -7
  145. package/source/components/stylesheet/icons.mjs +16 -7
  146. package/source/components/stylesheet/link.mjs +16 -7
  147. package/source/components/stylesheet/mixin/badge.mjs +16 -7
  148. package/source/components/stylesheet/mixin/button.mjs +16 -7
  149. package/source/components/stylesheet/mixin/form.mjs +16 -7
  150. package/source/components/stylesheet/mixin/hover.mjs +16 -7
  151. package/source/components/stylesheet/mixin/icon.mjs +16 -7
  152. package/source/components/stylesheet/mixin/media.mjs +16 -7
  153. package/source/components/stylesheet/mixin/property.mjs +16 -7
  154. package/source/components/stylesheet/mixin/skeleton.mjs +16 -7
  155. package/source/components/stylesheet/mixin/spinner.mjs +16 -7
  156. package/source/components/stylesheet/mixin/typography.mjs +16 -7
  157. package/source/components/stylesheet/normalize.mjs +16 -7
  158. package/source/components/stylesheet/popper.mjs +16 -7
  159. package/source/components/stylesheet/property.mjs +16 -7
  160. package/source/components/stylesheet/ripple.mjs +16 -7
  161. package/source/components/stylesheet/skeleton.mjs +16 -7
  162. package/source/components/stylesheet/space.mjs +16 -7
  163. package/source/components/stylesheet/spinner.mjs +16 -7
  164. package/source/components/stylesheet/table.mjs +16 -7
  165. package/source/components/stylesheet/theme.mjs +16 -7
  166. package/source/components/stylesheet/tree-menu.mjs +10 -3
  167. package/source/components/stylesheet/typography.mjs +17 -8
  168. package/source/components/tree-menu/stylesheet/tree-menu.mjs +16 -7
  169. package/source/components/tree-menu/tree-menu.mjs +19 -8
  170. package/source/constants.mjs +10 -6
  171. package/source/constraints/abstract.mjs +10 -3
  172. package/source/constraints/abstractoperator.mjs +10 -3
  173. package/source/constraints/andoperator.mjs +10 -3
  174. package/source/constraints/invalid.mjs +10 -3
  175. package/source/constraints/isarray.mjs +10 -3
  176. package/source/constraints/isobject.mjs +10 -3
  177. package/source/constraints/oroperator.mjs +10 -3
  178. package/source/constraints/valid.mjs +10 -3
  179. package/source/data/buildmap.mjs +10 -3
  180. package/source/data/buildtree.mjs +10 -3
  181. package/source/data/datasource/dom.mjs +10 -3
  182. package/source/data/datasource/server/restapi/data-fetch-error.mjs +10 -3
  183. package/source/data/datasource/server/restapi/writeerror.mjs +10 -3
  184. package/source/data/datasource/server/restapi.mjs +10 -3
  185. package/source/data/datasource/server/webconnect.mjs +10 -3
  186. package/source/data/datasource/server.mjs +10 -3
  187. package/source/data/datasource/storage/localstorage.mjs +10 -3
  188. package/source/data/datasource/storage/sessionstorage.mjs +10 -3
  189. package/source/data/datasource/storage.mjs +10 -3
  190. package/source/data/datasource.mjs +10 -3
  191. package/source/data/diff.mjs +10 -3
  192. package/source/data/extend.mjs +10 -3
  193. package/source/data/pathfinder.mjs +10 -3
  194. package/source/data/pipe.mjs +10 -3
  195. package/source/data/transformer.mjs +34 -10
  196. package/source/dom/assembler.mjs +10 -3
  197. package/source/dom/attributes.mjs +10 -3
  198. package/source/dom/constants.mjs +10 -3
  199. package/source/dom/customcontrol.mjs +11 -4
  200. package/source/dom/customelement.mjs +31 -17
  201. package/source/dom/dimension.mjs +10 -3
  202. package/source/dom/events.mjs +10 -3
  203. package/source/dom/focusmanager.mjs +10 -3
  204. package/source/dom/locale.mjs +10 -3
  205. package/source/dom/ready.mjs +11 -4
  206. package/source/dom/resource/data.mjs +10 -3
  207. package/source/dom/resource/link/stylesheet.mjs +10 -3
  208. package/source/dom/resource/link.mjs +10 -3
  209. package/source/dom/resource/script.mjs +10 -3
  210. package/source/dom/resource.mjs +10 -3
  211. package/source/dom/resourcemanager.mjs +10 -3
  212. package/source/dom/slotted.mjs +14 -0
  213. package/source/dom/template.mjs +124 -136
  214. package/source/dom/theme.mjs +10 -3
  215. package/source/dom/updater.mjs +10 -3
  216. package/source/dom/util/extract-keys.mjs +10 -3
  217. package/source/dom/util/init-options-from-attributes.mjs +68 -61
  218. package/source/dom/util/set-option-from-attribute.mjs +10 -3
  219. package/source/dom/util.mjs +11 -4
  220. package/source/dom/worker/factory.mjs +10 -3
  221. package/source/i18n/formatter.mjs +10 -3
  222. package/source/i18n/locale.mjs +10 -3
  223. package/source/i18n/provider.mjs +10 -3
  224. package/source/i18n/providers/embed.mjs +10 -3
  225. package/source/i18n/providers/fetch.mjs +10 -3
  226. package/source/i18n/translations.mjs +10 -3
  227. package/source/logging/handler/console.mjs +10 -3
  228. package/source/logging/handler.mjs +10 -3
  229. package/source/logging/logentry.mjs +10 -3
  230. package/source/logging/logger.mjs +10 -3
  231. package/source/math/random.mjs +10 -3
  232. package/source/monster.mjs +8 -93
  233. package/source/net/webconnect/message.mjs +10 -3
  234. package/source/net/webconnect.mjs +20 -5
  235. package/source/text/bracketed-key-value-hash.mjs +10 -3
  236. package/source/text/formatter.mjs +10 -3
  237. package/source/text/generate-range-comparison-expression.mjs +10 -3
  238. package/source/text/util.mjs +14 -0
  239. package/source/types/base.mjs +10 -3
  240. package/source/types/basewithoptions.mjs +10 -3
  241. package/source/types/binary.mjs +10 -3
  242. package/source/types/dataurl.mjs +10 -3
  243. package/source/types/global.mjs +14 -7
  244. package/source/types/id.mjs +10 -3
  245. package/source/types/internal.mjs +11 -3
  246. package/source/types/is.mjs +10 -3
  247. package/source/types/mediatype.mjs +10 -3
  248. package/source/types/node.mjs +10 -3
  249. package/source/types/nodelist.mjs +10 -3
  250. package/source/types/noderecursiveiterator.mjs +10 -3
  251. package/source/types/observablequeue.mjs +10 -3
  252. package/source/types/observer.mjs +10 -3
  253. package/source/types/observerlist.mjs +10 -3
  254. package/source/types/proxyobserver.mjs +14 -5
  255. package/source/types/queue.mjs +10 -3
  256. package/source/types/randomid.mjs +10 -3
  257. package/source/types/regex.mjs +10 -3
  258. package/source/types/stack.mjs +10 -3
  259. package/source/types/tokenlist.mjs +10 -3
  260. package/source/types/typeof.mjs +10 -3
  261. package/source/types/uniquequeue.mjs +10 -3
  262. package/source/types/uuid.mjs +10 -3
  263. package/source/types/validate.mjs +10 -3
  264. package/source/types/version.mjs +11 -4
  265. package/source/util/clone.mjs +10 -3
  266. package/source/util/comparator.mjs +10 -3
  267. package/source/util/deadmansswitch.mjs +10 -3
  268. package/source/util/freeze.mjs +10 -3
  269. package/source/util/processing.mjs +10 -3
  270. package/source/util/runtime.mjs +10 -7
  271. package/source/util/sleep.mjs +10 -10
  272. package/source/util/trimspaces.mjs +10 -3
  273. package/test/cases/data/datasource/server/websocket.mjs +7 -9
  274. package/test/cases/data/transformer.mjs +47 -15
  275. package/test/cases/dom/customcontrol.mjs +0 -1
  276. package/test/cases/dom/customelement.mjs +1 -3
  277. package/test/cases/dom/template.mjs +3 -1
  278. package/test/cases/monster.mjs +1 -1
  279. package/test/util/jsdom.mjs +8 -7
  280. package/test/util/websocket.mjs +5 -1
  281. package/test/web/import.js +2 -1
  282. package/test/web/puppeteer.mjs +111 -0
  283. package/test/web/test.html +2 -2
  284. package/test/web/tests.js +2039 -1192
  285. package/example/components/form/button.mjs +0 -10
  286. package/example/components/form/select.mjs +0 -25
  287. package/example/components/form/toggle-switch.mjs +0 -7
  288. package/example/components/form/tree-select.mjs +0 -27
  289. package/example/components/host/host.mjs +0 -0
  290. package/example/components/notify/message.mjs +0 -4
  291. package/example/components/notify/notify.mjs +0 -4
  292. package/example/components/state/log.mjs +0 -0
  293. package/example/components/state/state.mjs +0 -0
  294. package/example/constraints/andoperator.mjs +0 -17
  295. package/example/constraints/invalid.mjs +0 -6
  296. package/example/constraints/isarray.mjs +0 -11
  297. package/example/constraints/isobject.mjs +0 -12
  298. package/example/constraints/oroperator.mjs +0 -15
  299. package/example/constraints/valid.mjs +0 -6
  300. package/example/data/buildmap.mjs +0 -67
  301. package/example/data/datasource/server/restapi.mjs +0 -20
  302. package/example/data/datasource/server/webconnect.mjs +0 -9
  303. package/example/data/datasource.mjs +0 -7
  304. package/example/data/diff.mjs +0 -39
  305. package/example/data/pathfinder-1.mjs +0 -23
  306. package/example/data/pathfinder-2.mjs +0 -19
  307. package/example/data/pipe.mjs +0 -14
  308. package/example/data/transformer.mjs +0 -9
  309. package/example/dom/customelement.mjs +0 -14
  310. package/example/dom/theme.mjs +0 -5
  311. package/example/dom/updater.mjs +0 -23
  312. package/example/i18n/formatter.mjs +0 -10
  313. package/example/i18n/providers/embed.mjs +0 -5
  314. package/example/i18n/providers/fetch.mjs +0 -5
  315. package/example/i18n/translations.mjs +0 -20
  316. package/example/net/webconnect.mjs +0 -16
  317. package/example/types/basewithoptions.mjs +0 -10
  318. package/example/types/is-1.mjs +0 -5
  319. package/example/types/is-10.mjs +0 -6
  320. package/example/types/is-2.mjs +0 -4
  321. package/example/types/is-3.mjs +0 -4
  322. package/example/types/is-4.mjs +0 -5
  323. package/example/types/is-5.mjs +0 -4
  324. package/example/types/is-6.mjs +0 -4
  325. package/example/types/is-7.mjs +0 -4
  326. package/example/types/is-8.mjs +0 -4
  327. package/example/types/is-9.mjs +0 -6
  328. package/example/types/noderecursiveiterator.mjs +0 -32
  329. package/example/types/observer.mjs +0 -9
  330. package/example/types/proxyobserver.mjs +0 -25
  331. package/example/types/queue.mjs +0 -20
  332. package/example/types/tokenlist-1.mjs +0 -4
  333. package/example/types/tokenlist-2.mjs +0 -7
  334. package/example/types/tokenlist-3.mjs +0 -5
  335. package/example/types/tokenlist-4.mjs +0 -5
  336. package/example/types/tokenlist-5.mjs +0 -5
  337. package/example/types/typeof.mjs +0 -9
  338. package/example/types/version-1.mjs +0 -6
  339. package/example/types/version-2.mjs +0 -3
  340. package/example/util/comparator.mjs +0 -10
  341. package/example/util/deadmansswitch.mjs +0 -9
  342. package/example/util/processing.mjs +0 -17
  343. package/source/components/datatable/datasource/namespace.mjs +0 -13
  344. package/source/components/datatable/datatable/namespace.mjs +0 -13
  345. package/source/components/datatable/events.mjs +0 -24
  346. package/source/components/datatable/filter/namespace.mjs +0 -13
  347. package/source/components/datatable/namespace.mjs +0 -11
  348. package/source/components/datatable/stylesheet/namespace.mjs +0 -13
  349. package/source/components/events.mjs +0 -17
  350. package/source/components/form/events.mjs +0 -108
  351. package/source/components/form/form-field.mjs +0 -341
  352. package/source/components/form/namespace.mjs +0 -13
  353. package/source/components/form/style/form-field.pcss +0 -4
  354. package/source/components/form/stylesheet/form-field.mjs +0 -31
  355. package/source/components/form/stylesheet/namespace.mjs +0 -13
  356. package/source/components/form/types/namespace.mjs +0 -13
  357. package/source/components/form/util/namespace.mjs +0 -13
  358. package/source/components/host/events.mjs +0 -131
  359. package/source/components/host/namespace.mjs +0 -13
  360. package/source/components/host/stylesheet/namespace.mjs +0 -13
  361. package/source/components/layout/events.mjs +0 -30
  362. package/source/components/layout/namespace.mjs +0 -13
  363. package/source/components/namespace.mjs +0 -14
  364. package/source/components/notify/events.mjs +0 -15
  365. package/source/components/notify/namespace.mjs +0 -15
  366. package/source/components/notify/stylesheet/namespace.mjs +0 -15
  367. package/source/components/state/log/namespace.mjs +0 -13
  368. package/source/components/state/namespace.mjs +0 -13
  369. package/source/components/stylesheet/namespace.mjs +0 -13
  370. package/source/components/tree-menu/namespace.mjs +0 -13
  371. package/source/components/tree-menu/stylesheet/namespace.mjs +0 -13
  372. package/source/constraints/namespace.mjs +0 -13
  373. package/source/data/datasource/namespace.mjs +0 -13
  374. package/source/data/datasource/server/namespace.mjs +0 -13
  375. package/source/data/datasource/server/restapi/namespace.mjs +0 -13
  376. package/source/data/datasource/storage/namespace.mjs +0 -13
  377. package/source/data/namespace.mjs +0 -13
  378. package/source/dom/namespace.mjs +0 -13
  379. package/source/dom/resource/link/namespace.mjs +0 -13
  380. package/source/dom/resource/namespace.mjs +0 -13
  381. package/source/dom/util/namespace.mjs +0 -13
  382. package/source/dom/worker/namespace.mjs +0 -13
  383. package/source/i18n/namespace.mjs +0 -13
  384. package/source/i18n/providers/namespace.mjs +0 -13
  385. package/source/logging/handler/namespace.mjs +0 -11
  386. package/source/logging/namespace.mjs +0 -13
  387. package/source/math/namespace.mjs +0 -13
  388. package/source/net/namespace.mjs +0 -13
  389. package/source/net/webconnect/namespace.mjs +0 -13
  390. package/source/text/namespace.mjs +0 -13
  391. package/source/types/namespace.mjs +0 -13
  392. package/source/util/namespace.mjs +0 -13
  393. /package/source/components/{host → layout}/style/collapse.pcss +0 -0
  394. /package/source/components/{host → layout}/style/details.pcss +0 -0
  395. /package/source/components/{form → layout}/style/popper.pcss +0 -0
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { instanceSymbol } from "../constants.mjs";
@@ -10,6 +17,7 @@ import { isInteger, isString, isObject } from "../types/is.mjs";
10
17
  import { BaseWithOptions } from "../types/basewithoptions.mjs";
11
18
  import { ObservableQueue } from "../types/observablequeue.mjs";
12
19
  import { Message } from "./webconnect/message.mjs";
20
+ import { getGlobalFunction } from "../types/global.mjs";
13
21
 
14
22
  export { WebConnect };
15
23
 
@@ -53,7 +61,7 @@ const connectionStatusCode = {
53
61
  1006: "Connection closed abnormally",
54
62
  1007: "Invalid frame payload data",
55
63
  1008: "Policy violation",
56
- 1009: "Message too big",
64
+ 1009: "The Message is too big",
57
65
  1010: "Mandatory extension",
58
66
  1011: "Internal server error",
59
67
  1015: "TLS handshake",
@@ -69,7 +77,7 @@ function connectServer(resolve, reject) {
69
77
 
70
78
  const url = self.getOption("url");
71
79
  if (!url) {
72
- reject("No url defined for webconnect.");
80
+ reject("No url defined for web connect.");
73
81
  return;
74
82
  }
75
83
 
@@ -106,6 +114,13 @@ function connectServer(resolve, reject) {
106
114
  self[connectionSymbol].socket.close();
107
115
  }
108
116
  self[connectionSymbol].socket = null;
117
+
118
+ const WebSocket = getGlobalFunction("WebSocket");
119
+ if (!WebSocket) {
120
+ reject(new Error("WebSocket is not available"));
121
+ return;
122
+ }
123
+
109
124
  self[connectionSymbol].socket = new WebSocket(url);
110
125
 
111
126
  self[connectionSymbol].socket.onmessage = function (event) {
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  export { parseBracketedKeyValueHash, createBracketedKeyValueHash };
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { internalSymbol } from "../constants.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  export { generateRangeComparisonExpression };
@@ -1 +1,15 @@
1
+ /**
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
+ * Node module: @schukai/monster
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
13
+ */
14
+
1
15
  export { generateRangeComparisonExpression } from "./generate-range-comparison-expression.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { instanceSymbol } from "../constants.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { internalSymbol } from "../constants.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { validateString } from "./validate.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import {
@@ -14,7 +21,7 @@ import {
14
21
  export { getGlobal, getGlobalObject, getGlobalFunction };
15
22
 
16
23
  /**
17
- * @type {objec}
24
+ * @type {object}
18
25
  * @private
19
26
  */
20
27
  let globalReference;
@@ -67,7 +74,7 @@ let globalReference;
67
74
  * @license AGPLv3
68
75
  * @since 1.6.0
69
76
  * @memberOf Monster.Types
70
- * @returns {objec} globalThis
77
+ * @returns {object} globalThis
71
78
  */
72
79
  function getGlobal() {
73
80
  return globalReference;
@@ -100,7 +107,7 @@ function getGlobal() {
100
107
  * @since 1.6.0
101
108
  * @memberOf Monster.Types
102
109
  * @param {string} name
103
- * @returns {objec}
110
+ * @returns {object}
104
111
  * @throws {Error} the object is not defined
105
112
  * @throws {TypeError} value is not a object
106
113
  * @throws {TypeError} value is not a string
@@ -139,7 +146,7 @@ function getGlobalObject(name) {
139
146
  * @since 1.6.0
140
147
  * @memberOf Monster.Types
141
148
  * @param {string} name
142
- * @return {objec}
149
+ * @return {object}
143
150
  * @throws {TypeError} value is not a function
144
151
  * @throws {Error} the function is not defined
145
152
  * @throws {TypeError} value is not a string
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -1,9 +1,17 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
14
+
7
15
  import { internalSymbol } from "../constants.mjs";
8
16
  import { extend } from "../data/extend.mjs";
9
17
  import { Pathfinder } from "../data/pathfinder.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  export {
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { isArray, isInstance } from "./is.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { internalSymbol } from "../constants.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Queue } from "./queue.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -12,13 +19,14 @@ import { ObserverList } from "./observerlist.mjs";
12
19
  import { validateObject } from "./validate.mjs";
13
20
  import { extend } from "../data/extend.mjs";
14
21
  import { instanceSymbol } from "../constants.mjs";
22
+ import { clone } from "../util/clone.mjs";
15
23
  export { ProxyObserver };
16
24
 
17
25
  /**
18
26
  * An observer manages a callback function
19
27
  *
20
28
  * With the ProxyObserver you can attach observer for observation.
21
- * With each change at the object to be observed an update takes place.
29
+ * With each change at the object to be observed, an update takes place.
22
30
  *
23
31
  * This also applies to nested objects.
24
32
  *
@@ -72,12 +80,13 @@ class ProxyObserver extends Base {
72
80
  */
73
81
  setSubject(obj) {
74
82
  let i;
83
+ const clonedObject = clone(obj);
75
84
  const k = Object.keys(this.subject);
76
85
  for (i = 0; i < k.length; i++) {
77
86
  delete this.subject[k[i]];
78
87
  }
79
88
 
80
- this.subject = extend(this.subject, obj);
89
+ this.subject = extend(this.subject, clonedObject);
81
90
  return this;
82
91
  }
83
92
 
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { random } from "../math/random.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { validateString } from "./validate.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { Base } from "./base.mjs";
@@ -1,8 +1,15 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2023. All Rights Reserved.
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
3
  * Node module: @schukai/monster
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
4
+ *
5
+ * This source code is licensed under the GNU Affero General Public License version 3 (AGPLv3).
6
+ * The full text of the license can be found at: https://www.gnu.org/licenses/agpl-3.0.en.html
7
+ *
8
+ * For those who do not wish to adhere to the AGPLv3, a commercial license is available.
9
+ * Acquiring a commercial license allows you to use this software without complying with the AGPLv3 terms.
10
+ * For more information about purchasing a commercial license, please contact schukai GmbH.
11
+ *
12
+ * SPDX-License-Identifier: AGPL-3.0
6
13
  */
7
14
 
8
15
  import { isIterable, isString } from "../types/is.mjs";