@schukai/monster 3.74.0 → 3.76.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. package/CHANGELOG.md +35 -6
  2. package/package.json +1 -1
  3. package/source/components/datatable/datasource/rest.mjs +0 -1
  4. package/source/components/form/api-button.mjs +0 -1
  5. package/source/components/form/context-error.mjs +0 -1
  6. package/source/components/form/context-help.mjs +0 -1
  7. package/source/components/form/message-state-button.mjs +0 -1
  8. package/source/components/form/popper-button.mjs +0 -1
  9. package/source/components/form/select.mjs +16 -5
  10. package/source/components/form/toggle-switch.mjs +0 -3
  11. package/source/components/form/tree-select.mjs +0 -1
  12. package/source/components/layout/collapse.mjs +361 -395
  13. package/source/components/layout/details.mjs +10 -40
  14. package/source/components/layout/iframe.mjs +358 -0
  15. package/source/components/layout/panel.mjs +10 -25
  16. package/source/components/layout/slider.mjs +420 -439
  17. package/source/components/layout/split-panel.mjs +7 -39
  18. package/source/components/layout/style/iframe.pcss +39 -0
  19. package/source/components/layout/style/panel.pcss +10 -3
  20. package/source/components/layout/style/split-panel.pcss +2 -0
  21. package/source/components/layout/stylesheet/iframe.mjs +38 -0
  22. package/source/components/layout/stylesheet/panel.mjs +1 -1
  23. package/source/components/layout/stylesheet/slider.mjs +13 -6
  24. package/source/components/layout/tabs.mjs +6 -35
  25. package/source/components/layout/width-toggle.mjs +10 -31
  26. package/source/components/navigation/table-of-content.mjs +0 -1
  27. package/source/components/tree-menu/dragable-tree-menu.mjs +4 -4
  28. package/source/components/tree-menu/tree-menu.mjs +16 -12
  29. package/source/data/datasource/server/restapi.mjs +1 -1
  30. package/source/dom/updater.mjs +767 -771
  31. package/source/math/random.mjs +2 -3
  32. package/source/monster.mjs +12 -3
  33. package/source/types/version.mjs +1 -1
  34. package/test/cases/components/form/button.mjs +2 -1
  35. package/test/cases/components/form/confirm-button.mjs +1 -1
  36. package/test/cases/components/form/form.mjs +1 -1
  37. package/test/cases/components/form/reload.mjs +1 -1
  38. package/test/cases/components/form/select.mjs +1 -1
  39. package/test/cases/components/form/state-button.mjs +1 -1
  40. package/test/cases/components/form/template.mjs +1 -1
  41. package/test/cases/components/form/toggle-switch.mjs +1 -1
  42. package/test/cases/components/form/tree-select.mjs +1 -1
  43. package/test/cases/components/host/details.mjs +1 -1
  44. package/test/cases/components/host/host.mjs +1 -1
  45. package/test/cases/components/host/overlay.mjs +1 -1
  46. package/test/cases/components/layout/panel.mjs +1 -1
  47. package/test/cases/components/layout/slit-panel.mjs +1 -1
  48. package/test/cases/components/layout/tabs.mjs +1 -1
  49. package/test/cases/components/notify/message.mjs +1 -1
  50. package/test/cases/components/notify/notify.mjs +1 -1
  51. package/test/cases/dom/customcontrol.mjs +1 -1
  52. package/test/cases/dom/customelement-initfromscripthost.mjs +1 -1
  53. package/test/cases/dom/customelement.mjs +1 -1
  54. package/test/cases/dom/resource/data.mjs +1 -1
  55. package/test/cases/dom/resource/link/stylesheet.mjs +1 -1
  56. package/test/cases/dom/resource/link.mjs +1 -1
  57. package/test/cases/dom/resource/script.mjs +1 -1
  58. package/test/cases/dom/updater.mjs +1 -1
  59. package/test/cases/monster.mjs +1 -1
  60. package/test/web/test.html +2 -2
  61. package/test/web/tests.js +6 -15
package/CHANGELOG.md CHANGED
@@ -2,17 +2,47 @@
2
2
 
3
3
 
4
4
 
5
+ ## [3.76.0] - 2024-10-01
6
+
7
+ ### Add Features
8
+
9
+ - new iframe control [#243](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/243)
10
+ ### Bug Fixes
11
+
12
+ - chai import
13
+ - change order and fix detail-label [#245](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/245)
14
+ ### Changes
15
+
16
+ - update nix and node
17
+
18
+
19
+
20
+ ## [3.75.0] - 2024-09-23
21
+
22
+ ### Add Features
23
+
24
+ - marker for select filter [#240](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/240)
25
+
26
+ ### Changes
27
+
28
+ - remove unused files
29
+ - run webtests
30
+ - new development cert
31
+
32
+ ### Documentation
33
+
34
+ - fix some small issues
35
+
5
36
  ## [3.74.0] - 2024-09-18
6
37
 
7
38
  ### Add Features
8
39
 
9
40
  - new slider [#237](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/237)
41
+
10
42
  ### Bug Fixes
11
43
 
12
44
  - performance tweak [#235](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/235)
13
45
 
14
-
15
-
16
46
  ## [3.73.9] - 2024-09-15
17
47
 
18
48
  ### Bug Fixes
@@ -20,32 +50,31 @@
20
50
  - error handling [#234](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/234)
21
51
  - build css
22
52
  - Replace `sleep` with `requestAnimationFrame` for smoother UI [#234](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/234)
53
+
23
54
  ### Changes
24
55
 
25
56
  - some small code tweaks
26
57
  - code format
27
58
  - update versions
28
59
  - add issue example [#233](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/233)
60
+
29
61
  ### Documentation
30
62
 
31
63
  - wip update document for new monsterjs.org site
32
64
 
33
-
34
-
35
65
  ## [3.73.8] - 2024-08-01
36
66
 
37
67
  ### Bug Fixes
38
68
 
39
69
  - test pipeline
40
70
 
41
-
42
-
43
71
  ## [3.73.7] - 2024-08-01
44
72
 
45
73
  ### Bug Fixes
46
74
 
47
75
  - update layout for filter and datatable [#232](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/232)
48
76
  - new algorithm for calculating the position of the toc control. [#231](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/231)
77
+
49
78
  ### Changes
50
79
 
51
80
  - check tests [#232](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/232)
package/package.json CHANGED
@@ -1 +1 @@
1
- {"author":"schukai GmbH","dependencies":{"@floating-ui/dom":"^1.6.11","@popperjs/core":"^2.11.8"},"description":"Monster is a simple library for creating fast, robust and lightweight websites.","homepage":"https://monsterjs.org/","keywords":["framework","web","dom","css","sass","mobile-first","app","front-end","templates","schukai","core","shopcloud","alvine","monster","buildmap","stack","observer","observable","uuid","node","nodelist","css-in-js","logger","log","theme"],"license":"AGPL 3.0","main":"source/monster.mjs","module":"source/monster.mjs","name":"@schukai/monster","repository":{"type":"git","url":"https://gitlab.schukai.com/oss/libraries/javascript/monster.git"},"type":"module","version":"3.74.0"}
1
+ {"author":"schukai GmbH","dependencies":{"@floating-ui/dom":"^1.6.11","@popperjs/core":"^2.11.8"},"description":"Monster is a simple library for creating fast, robust and lightweight websites.","homepage":"https://monsterjs.org/","keywords":["framework","web","dom","css","sass","mobile-first","app","front-end","templates","schukai","core","shopcloud","alvine","monster","buildmap","stack","observer","observable","uuid","node","nodelist","css-in-js","logger","log","theme"],"license":"AGPL 3.0","main":"source/monster.mjs","module":"source/monster.mjs","name":"@schukai/monster","repository":{"type":"git","url":"https://gitlab.schukai.com/oss/libraries/javascript/monster.git"},"type":"module","version":"3.76.0"}
@@ -215,7 +215,6 @@ class Rest extends Datasource {
215
215
  * @returns {Promise<never>|*}
216
216
  */
217
217
  fetch() {
218
-
219
218
  const opt = clone(this.getOption("read"));
220
219
  this[dataSourceSymbol].setOption("read", opt);
221
220
 
@@ -204,7 +204,6 @@ class ApiButton extends ActionButton {
204
204
  /**
205
205
  * Import buttons from a map.
206
206
  *
207
- * @since 0.16.0
208
207
  * @param {array|object|Map|Set} data
209
208
  * @return {Monster.Components.Form.ApiButton}
210
209
  * @throws {Error} map is not iterable
@@ -81,7 +81,6 @@ class ContextError extends Popper {
81
81
  * This method is called by the `instanceof` operator.
82
82
  *
83
83
  * @returns {symbol}
84
- * @since 2.1.0
85
84
  */
86
85
  static get [instanceSymbol]() {
87
86
  return Symbol.for(
@@ -71,7 +71,6 @@ class ContextHelp extends Popper {
71
71
  /**
72
72
  * This method is called by the `instanceof` operator.
73
73
  * @returns {symbol}
74
- * @since 2.1.0
75
74
  */
76
75
  static get [instanceSymbol]() {
77
76
  return Symbol.for(
@@ -88,7 +88,6 @@ class MessageStateButton extends Popper {
88
88
  /**
89
89
  * This method is called by the `instanceof` operator.
90
90
  * @returns {symbol}
91
- * @since 2.1.0
92
91
  */
93
92
  static get [instanceSymbol]() {
94
93
  return Symbol.for(
@@ -331,7 +331,6 @@ class PopperButton extends Popper {
331
331
  * ```
332
332
  *
333
333
  * @property {string|array} value
334
- * @since 1.2.0
335
334
  * @throws {Error} unsupported type
336
335
  */
337
336
  set value(value) {
@@ -277,7 +277,6 @@ const FILTER_POSITION_INLINE = "inline";
277
277
  * @example /examples/components/form/select-simple
278
278
  * @example /examples/components/form/select-with-options
279
279
  *
280
- * @since 1.0.0
281
280
  * @copyright schukai GmbH
282
281
  * @summary A beautiful select control that can make your life easier and also looks good.
283
282
  * @fires monster-options-set
@@ -297,7 +296,6 @@ class Select extends CustomControl {
297
296
  /**
298
297
  * This method is called by the `instanceof` operator.
299
298
  * @returns {Symbol}
300
- * @since 2.1.0
301
299
  */
302
300
  static get [instanceSymbol]() {
303
301
  return Symbol.for("@schukai/monster/components/form/select@@instance");
@@ -336,7 +334,6 @@ class Select extends CustomControl {
336
334
  * ```
337
335
  *
338
336
  * @property {string|array} value
339
- * @since 1.2.0
340
337
  * @throws {Error} unsupported type
341
338
  */
342
339
  set value(value) {
@@ -458,6 +455,10 @@ class Select extends CustomControl {
458
455
  defaultValue: "*",
459
456
  mode: FILTER_MODE_DISABLED,
460
457
  position: FILTER_POSITION_INLINE,
458
+ marker: {
459
+ open: "{",
460
+ close: "}",
461
+ },
461
462
  },
462
463
  classes: {
463
464
  badge: "monster-badge-primary",
@@ -721,7 +722,6 @@ class Select extends CustomControl {
721
722
  * Import Select Options from dataset
722
723
  * Not to be confused with the control defaults/options
723
724
  *
724
- * @since 0.16.0
725
725
  * @param {array|object|Map|Set} data
726
726
  * @return {Select}
727
727
  * @throws {Error} map is not iterable
@@ -1473,7 +1473,18 @@ function filterFromRemote() {
1473
1473
  );
1474
1474
  let url = optionUrl;
1475
1475
  if (filterValue.length > 0) {
1476
- url = new Formatter({ filter: filterValue }).format(optionUrl);
1476
+ const formatter = new Formatter({ filter: filterValue });
1477
+ const openMarker = this.getOption("formatter.marker.open");
1478
+ let closeMarker = this.getOption("formatter.marker.close");
1479
+ if (!closeMarker) {
1480
+ closeMarker = openMarker;
1481
+ }
1482
+
1483
+ if (openMarker && closeMarker) {
1484
+ formatter.setMarker(openMarker, closeMarker);
1485
+ }
1486
+
1487
+ url = formatter.format(optionUrl);
1477
1488
  }
1478
1489
 
1479
1490
  this.fetch(url)
@@ -105,8 +105,6 @@ class ToggleSwitch extends CustomControl {
105
105
  * @property {string} actions.off=specifies the action for the off state.
106
106
  * @property {Object} templates
107
107
  * @property {string} templates.main=specifies the main template used by the control.
108
- *
109
- * @since 3.57.0
110
108
  */
111
109
  get defaults() {
112
110
  return Object.assign({}, super.defaults, {
@@ -317,7 +315,6 @@ class ToggleSwitch extends CustomControl {
317
315
  /**
318
316
  * This method is called by the `instanceof` operator.
319
317
  * @returns {symbol}
320
- * @since 2.1.0
321
318
  */
322
319
  static get [instanceSymbol]() {
323
320
  return Symbol.for(
@@ -133,7 +133,6 @@ class TreeSelect extends Select {
133
133
  * Import Select Options from dataset
134
134
  * Not to be confused with the control defaults/options
135
135
  *
136
- * @since 0.16.0
137
136
  * @param {array|object|Map|Set} data
138
137
  * @return {Select}
139
138
  * @throws {Error} map is not iterable