@schukai/monster 3.102.6 → 3.103.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,45 @@
2
2
 
3
3
 
4
4
 
5
+ ## [3.103.1] - 2025-02-03
6
+
7
+ ### Bug Fixes
8
+
9
+ - **tabs:** add tabindex
10
+
11
+
12
+
13
+ ## [3.103.0] - 2025-02-02
14
+
15
+ ### Add Features
16
+
17
+ - **datatable:** new tag-list callback
18
+ - **datatable:** new feature flag preventSameQuery
19
+ ### Changes
20
+
21
+ - update node
22
+ - update node
23
+ - update node
24
+ - update node
25
+ - update node
26
+ - update node
27
+ - update node
28
+ - update node
29
+ - update node
30
+ - update node
31
+ - update node
32
+ - update node
33
+ - update node
34
+ - update node
35
+ - update node
36
+ - update node
37
+ - update node
38
+ - update nix
39
+ - update node
40
+ - integrate gitleaks
41
+
42
+
43
+
5
44
  ## [3.102.6] - 2025-02-01
6
45
 
7
46
  ### Bug Fixes
package/package.json CHANGED
@@ -1 +1 @@
1
- {"author":"schukai GmbH","dependencies":{"@floating-ui/dom":"^1.6.13","@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.102.6"}
1
+ {"author":"schukai GmbH","dependencies":{"@floating-ui/dom":"^1.6.13","@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.103.1"}
@@ -45,9 +45,9 @@ class FilterSelect extends Select {
45
45
  get defaults() {
46
46
  return Object.assign({}, super.defaults, {
47
47
  type: "checkbox",
48
- templateMapping: {
49
- selected: getSummaryTemplate(),
50
- },
48
+ // templateMapping: {
49
+ // selected: getSummaryTemplate(),
50
+ // },
51
51
  });
52
52
  }
53
53
 
@@ -32,7 +32,7 @@ import { Settings } from "./filter/settings.mjs";
32
32
  import { FilterStyleSheet } from "./stylesheet/filter.mjs";
33
33
  import { getDocument, getWindow } from "../../dom/util.mjs";
34
34
  import { getGlobal } from "../../types/global.mjs";
35
- import { isInstance, isFunction, isObject, isArray } from "../../types/is.mjs";
35
+ import {isInstance, isFunction, isObject, isArray, isString} from "../../types/is.mjs";
36
36
  import { Host } from "../host/host.mjs";
37
37
  import { addAttributeToken } from "../../dom/attributes.mjs";
38
38
  import { ATTRIBUTE_ERRORMESSAGE } from "../../dom/constants.mjs";
@@ -242,6 +242,7 @@ class Filter extends CustomElement {
242
242
  * @property {Object} features Feature definitions
243
243
  * @property {boolean} features.storedConfig Stored configuration, this replaces the setting `storedConfig.enabled` @since 3.97.0
244
244
  * @property {boolean} features.autoFilter Auto filter @since 3.100.0
245
+ * @property {boolean} features.preventSameQuery Prevent same query @since 3.103.0
245
246
  * @property {Object} storedConfig Stored configuration
246
247
  * @property {boolean} storedConfig.enabled The store has been enabled, this option will no longer have any effect. @deprecated 20250101
247
248
  * @property {string} storedConfig.selector Selector
@@ -277,6 +278,7 @@ class Filter extends CustomElement {
277
278
  features: {
278
279
  storedConfig: false,
279
280
  autoFilter: true,
281
+ preventSameQuery: false,
280
282
  },
281
283
 
282
284
  storedConfig: {
@@ -1061,7 +1063,8 @@ function doSearch({ showEffect } = { showEffect: true }) {
1061
1063
  return Promise.reject(new Error(msg));
1062
1064
  }
1063
1065
 
1064
- if (buildQuery === this.getOption("query")) {
1066
+ if (this.getOption("features.preventSameQuery") &&
1067
+ buildQuery === this.getOption("query")) {
1065
1068
  const msg = this.getOption("labels.query-not-changed");
1066
1069
 
1067
1070
  if (showEffect) {
@@ -1201,6 +1204,22 @@ function collectSearchQueries() {
1201
1204
  ltOp: "<",
1202
1205
  });
1203
1206
  },
1207
+ "tag-list": (value, key) => {
1208
+
1209
+ if(isString(value)) {
1210
+ value = value.split(",");
1211
+ }
1212
+
1213
+ if (!isArray(value)) {
1214
+ return "";
1215
+ }
1216
+
1217
+ return key+" IN "+value
1218
+ .map((v) => {
1219
+ return `"${encodeURIComponent(v)}"`;
1220
+ })
1221
+ .join(",");
1222
+ },
1204
1223
  "date-range": (value, key) => {
1205
1224
  const query = parseDateInput(value, key);
1206
1225
  if (!query || query === "false") {
@@ -149,6 +149,8 @@ const resizeObserverSymbol = Symbol("resizeObserver");
149
149
  * @example /examples/components/layout/tabs-simple Simple Tabs
150
150
  * @example /examples/components/layout/tabs-active Active Tabs
151
151
  * @example /examples/components/layout/tabs-removable Removable Tabs
152
+ * @example /examples/components/layout/tabs-with-icon Tabs with Icon
153
+ * @example /examples/components/layout/tabs-fetch Fetch Tab Content from URL
152
154
  *
153
155
  * @issue https://localhost.alvine.dev:8440/development/issues/closed/268.html
154
156
  * @issue https://localhost.alvine.dev:8440/development/issues/closed/271.html
@@ -1213,6 +1215,7 @@ function getTemplate() {
1213
1215
  return `
1214
1216
  <template id="buttons">
1215
1217
  <button part="button"
1218
+ tabindex="0"
1216
1219
  data-monster-role="button"
1217
1220
  data-monster-attributes="
1218
1221
  class path:classes.button,
@@ -156,7 +156,7 @@ function getMonsterVersion() {
156
156
  }
157
157
 
158
158
  /** don't touch, replaced by make with package.json version */
159
- monsterVersion = new Version("3.102.3");
159
+ monsterVersion = new Version("3.102.6");
160
160
 
161
161
  return monsterVersion;
162
162
  }
@@ -7,7 +7,7 @@ describe('Monster', function () {
7
7
  let monsterVersion
8
8
 
9
9
  /** don´t touch, replaced by make with package.json version */
10
- monsterVersion = new Version("3.102.3")
10
+ monsterVersion = new Version("3.102.6")
11
11
 
12
12
  let m = getMonsterVersion();
13
13
 
@@ -9,8 +9,8 @@
9
9
  </head>
10
10
  <body>
11
11
  <div id="headline" style="display: flex;align-items: center;justify-content: center;flex-direction: column;">
12
- <h1 style='margin-bottom: 0.1em;'>Monster 3.102.3</h1>
13
- <div id="lastupdate" style='font-size:0.7em'>last update Mi 29. Jan 14:48:17 CET 2025</div>
12
+ <h1 style='margin-bottom: 0.1em;'>Monster 3.102.6</h1>
13
+ <div id="lastupdate" style='font-size:0.7em'>last update So 2. Feb 23:18:18 CET 2025</div>
14
14
  </div>
15
15
  <div id="mocha-errors"
16
16
  style="color: red;font-weight: bold;display: flex;align-items: center;justify-content: center;flex-direction: column;margin:20px;"></div>