@schukai/monster 3.73.3 → 3.73.5
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 +15 -6
- package/package.json +1 -1
- package/source/components/datatable/dataset.mjs +23 -16
- package/source/components/datatable/filter.mjs +1 -0
- package/source/components/datatable/save-button.mjs +268 -261
- package/source/components/form/context-error.mjs +0 -1
- package/source/components/form/form.mjs +160 -314
- package/source/dom/customelement.mjs +9 -0
- package/source/dom/updater.mjs +10 -5
- package/source/types/version.mjs +1 -1
- package/test/cases/monster.mjs +1 -1
- package/test/web/test.html +2 -2
- package/test/web/tests.js +1989 -1799
package/CHANGELOG.md
CHANGED
|
@@ -2,33 +2,42 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
## [3.73.
|
|
5
|
+
## [3.73.5] - 2024-07-02
|
|
6
6
|
|
|
7
7
|
### Bug Fixes
|
|
8
8
|
|
|
9
|
-
-
|
|
9
|
+
- originValues in the savebutton is now reset.
|
|
10
10
|
|
|
11
|
+
## [3.73.4] - 2024-07-02
|
|
11
12
|
|
|
13
|
+
### Bug Fixes
|
|
12
14
|
|
|
13
|
-
|
|
15
|
+
- event processing is now only active in selected controls: form, filter. [#224](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/224)
|
|
16
|
+
|
|
17
|
+
## [3.73.3] - 2024-07-01
|
|
14
18
|
|
|
15
19
|
### Bug Fixes
|
|
16
20
|
|
|
17
|
-
-
|
|
21
|
+
- debouncing form handling
|
|
22
|
+
|
|
23
|
+
## [3.73.2] - 2024-07-01
|
|
18
24
|
|
|
25
|
+
### Bug Fixes
|
|
19
26
|
|
|
27
|
+
- id not defined
|
|
20
28
|
|
|
21
29
|
## [3.73.1] - 2024-06-30
|
|
22
30
|
|
|
23
31
|
### Bug Fixes
|
|
24
32
|
|
|
25
|
-
- update
|
|
33
|
+
- update dead man switch assignment
|
|
34
|
+
|
|
26
35
|
### Changes
|
|
27
36
|
|
|
28
37
|
- update issues
|
|
29
38
|
- remove node debug flag
|
|
30
39
|
- tidy changelog
|
|
31
|
-
- new task
|
|
40
|
+
- new task creates documentation fragments and optimizes creates a class task
|
|
32
41
|
- cleanup code
|
|
33
42
|
|
|
34
43
|
## [3.73.0] - 2024-06-28
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"author":"schukai GmbH","dependencies":{"@floating-ui/dom":"^1.6.
|
|
1
|
+
{"author":"schukai GmbH","dependencies":{"@floating-ui/dom":"^1.6.7","@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.73.5"}
|
|
@@ -210,7 +210,12 @@ class DataSet extends CustomElement {
|
|
|
210
210
|
pathWithIndex = String(index);
|
|
211
211
|
}
|
|
212
212
|
|
|
213
|
-
const data = this[datasourceLinkedElementSymbol]
|
|
213
|
+
const data = this[datasourceLinkedElementSymbol]?.data;
|
|
214
|
+
if (!data) {
|
|
215
|
+
reject(new Error("No data"));
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
|
|
214
219
|
const unref = JSON.stringify(data);
|
|
215
220
|
const ref = JSON.parse(unref);
|
|
216
221
|
|
|
@@ -244,24 +249,26 @@ class DataSet extends CustomElement {
|
|
|
244
249
|
|
|
245
250
|
initEventHandler.call(this);
|
|
246
251
|
|
|
247
|
-
|
|
252
|
+
if (!this[datasourceLinkedElementSymbol]) {
|
|
253
|
+
const selector = this.getOption("datasource.selector");
|
|
248
254
|
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
255
|
+
if (isString(selector)) {
|
|
256
|
+
const element = findElementWithSelectorUpwards(this, selector);
|
|
257
|
+
if (element === null) {
|
|
258
|
+
throw new Error("the selector must match exactly one element");
|
|
259
|
+
}
|
|
254
260
|
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
261
|
+
if (!(element instanceof Datasource)) {
|
|
262
|
+
throw new TypeError("the element must be a datasource");
|
|
263
|
+
}
|
|
258
264
|
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
+
this[datasourceLinkedElementSymbol] = element;
|
|
266
|
+
element.datasource.attachObserver(
|
|
267
|
+
new Observer(handleDataSourceChanges.bind(this)),
|
|
268
|
+
);
|
|
269
|
+
} else {
|
|
270
|
+
throw new Error("the selector must be a string");
|
|
271
|
+
}
|
|
265
272
|
}
|
|
266
273
|
|
|
267
274
|
if (
|