@schukai/monster 4.124.0 → 4.124.1

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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
 
4
4
 
5
+ ## [4.124.1] - 2026-02-23
6
+
7
+ ### Bug Fixes
8
+
9
+ - **datatable:** constrain horizontal scrolling to table body wrapper
10
+
11
+
12
+
5
13
  ## [4.124.0] - 2026-02-20
6
14
 
7
15
  ### Add Features
package/package.json CHANGED
@@ -1 +1 @@
1
- {"author":"Volker Schukai","dependencies":{"@floating-ui/dom":"^1.7.4","@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":"4.124.0"}
1
+ {"author":"Volker Schukai","dependencies":{"@floating-ui/dom":"^1.7.4","@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":"4.124.1"}
@@ -1613,10 +1613,12 @@ function getTemplate() {
1613
1613
  <slot name="bar"></slot>
1614
1614
 
1615
1615
  </div>
1616
- <div data-monster-role="datatable-headers" data-monster-insert="headers-row path:headers"></div>
1617
- <div data-monster-replace="path:templates.emptyState"
1618
- data-monster-attributes="class path:data | has-entries | ?:hidden:empty-state-container"></div>
1619
- <div data-monster-role="datatable" data-monster-insert="\${row-key} path:data">
1616
+ <div data-monster-role="table-scroll">
1617
+ <div data-monster-role="datatable-headers" data-monster-insert="headers-row path:headers"></div>
1618
+ <div data-monster-replace="path:templates.emptyState"
1619
+ data-monster-attributes="class path:data | has-entries | ?:hidden:empty-state-container"></div>
1620
+ <div data-monster-role="datatable" data-monster-insert="\${row-key} path:data">
1621
+ </div>
1620
1622
  </div>
1621
1623
  </div>
1622
1624
  <div data-monster-role="footer" data-monster-select-this="true"
@@ -114,14 +114,14 @@ class SaveButton extends CustomElement {
114
114
  * @property {string} labels.button The button label
115
115
  * @property {Object} classes The classes
116
116
  * @property {string} classes.bar The bar class
117
- * @property {string} classes.badge The badge class
118
- * @property {Array} ignoreChanges The ignore changes (regex)
119
- * @property {Array} data The data
120
- * @property {boolean} disabled The disabled state
121
- * @property {boolean} disableWhenNoChanges Disable button when there are no changes
122
- * @property {string} logLevel The log level (off, debug)
123
- * @return {Object}
124
- */
117
+ * @property {string} classes.badge The badge class
118
+ * @property {Array} ignoreChanges The ignore changes (regex)
119
+ * @property {Array} data The data
120
+ * @property {boolean} disabled The disabled state
121
+ * @property {boolean} disableWhenNoChanges Disable button when there are no changes
122
+ * @property {string} logLevel The log level (off, debug)
123
+ * @return {Object}
124
+ */
125
125
  get defaults() {
126
126
  const obj = Object.assign({}, super.defaults, {
127
127
  templates: {
@@ -542,10 +542,7 @@ function updateChangesState() {
542
542
  "classes.badge",
543
543
  new TokenList(this.getOption("classes.badge")).add("hidden").toString(),
544
544
  );
545
- this[stateButtonElementSymbol].setOption(
546
- "disabled",
547
- disableWhenNoChanges,
548
- );
545
+ this[stateButtonElementSymbol].setOption("disabled", disableWhenNoChanges);
549
546
  clearInternalDisableTimeout.call(this);
550
547
  return;
551
548
  }
@@ -619,10 +616,7 @@ function updateChangesState() {
619
616
  );
620
617
  } else {
621
618
  this[stateButtonElementSymbol].removeState();
622
- this[stateButtonElementSymbol].setOption(
623
- "disabled",
624
- disableWhenNoChanges,
625
- );
619
+ this[stateButtonElementSymbol].setOption("disabled", disableWhenNoChanges);
626
620
  clearInternalDisableTimeout.call(this);
627
621
  this.setOption("changes", "");
628
622
  this.setOption(
@@ -36,7 +36,6 @@
36
36
  display: flex;
37
37
  flex-direction: column;
38
38
  width: 100%;
39
- overflow-x: auto;
40
39
  overflow-y: visible;
41
40
  padding: 20px;
42
41
  box-sizing: border-box;
@@ -52,6 +51,12 @@
52
51
  }
53
52
  }
54
53
 
54
+ [data-monster-role="table-scroll"] {
55
+ overflow-x: auto;
56
+ overflow-y: visible;
57
+ width: 100%;
58
+ }
59
+
55
60
  :host {
56
61
  padding: 0;
57
62
  margin: 0;