@schukai/monster 3.64.0 → 3.65.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/example/components/form/button.mjs +1 -1
  3. package/example/components/form/field-set.mjs +4 -0
  4. package/example/components/form/select.mjs +1 -1
  5. package/package.json +2 -1
  6. package/source/components/datatable/datatable/header.mjs +228 -221
  7. package/source/components/datatable/style/dataset.pcss +1 -0
  8. package/source/components/datatable/style/datatable.pcss +1 -0
  9. package/source/components/datatable/stylesheet/change-button.mjs +8 -4
  10. package/source/components/datatable/stylesheet/column-bar.mjs +8 -4
  11. package/source/components/datatable/stylesheet/dataset.mjs +9 -5
  12. package/source/components/datatable/stylesheet/datasource.mjs +8 -4
  13. package/source/components/datatable/stylesheet/datatable.mjs +9 -5
  14. package/source/components/datatable/stylesheet/embedded-pagination.mjs +8 -4
  15. package/source/components/datatable/stylesheet/filter-button.mjs +8 -4
  16. package/source/components/datatable/stylesheet/filter-controls-defaults.mjs +8 -4
  17. package/source/components/datatable/stylesheet/filter-date-range.mjs +8 -4
  18. package/source/components/datatable/stylesheet/filter-range.mjs +8 -4
  19. package/source/components/datatable/stylesheet/filter.mjs +8 -4
  20. package/source/components/datatable/stylesheet/pagination.mjs +8 -4
  21. package/source/components/datatable/stylesheet/save-button.mjs +8 -4
  22. package/source/components/datatable/stylesheet/select-filter.mjs +8 -4
  23. package/source/components/datatable/stylesheet/status.mjs +8 -4
  24. package/source/components/form/button.mjs +263 -281
  25. package/source/components/form/field-set.mjs +300 -0
  26. package/source/components/form/popper.mjs +13 -480
  27. package/source/components/form/style/field-set.pcss +13 -0
  28. package/source/components/form/stylesheet/action-button.mjs +8 -4
  29. package/source/components/form/stylesheet/api-button.mjs +8 -4
  30. package/source/components/form/stylesheet/button-bar.mjs +9 -5
  31. package/source/components/form/stylesheet/button.mjs +8 -4
  32. package/source/components/form/stylesheet/confirm-button.mjs +9 -5
  33. package/source/components/form/stylesheet/context-error.mjs +8 -4
  34. package/source/components/form/stylesheet/context-help.mjs +8 -4
  35. package/source/components/form/stylesheet/field-set.mjs +31 -0
  36. package/source/components/form/stylesheet/form.mjs +9 -5
  37. package/source/components/form/stylesheet/message-state-button.mjs +8 -4
  38. package/source/components/form/stylesheet/popper-button.mjs +8 -4
  39. package/source/components/form/stylesheet/select.mjs +8 -4
  40. package/source/components/form/stylesheet/state-button.mjs +8 -4
  41. package/source/components/form/stylesheet/toggle-switch.mjs +8 -4
  42. package/source/components/form/stylesheet/tree-select.mjs +8 -4
  43. package/source/components/host/collapse.mjs +14 -516
  44. package/source/components/host/config-manager.mjs +9 -2
  45. package/source/components/host/constants.mjs +9 -4
  46. package/source/components/host/details.mjs +14 -253
  47. package/source/components/host/stylesheet/call-button.mjs +8 -4
  48. package/source/components/host/stylesheet/config-manager.mjs +8 -4
  49. package/source/components/host/stylesheet/host.mjs +9 -5
  50. package/source/components/host/stylesheet/overlay.mjs +9 -5
  51. package/source/components/host/stylesheet/toggle-button.mjs +8 -4
  52. package/source/components/host/stylesheet/viewer.mjs +8 -4
  53. package/source/components/layout/collapse.mjs +542 -0
  54. package/source/components/layout/details.mjs +271 -0
  55. package/source/components/layout/panel.mjs +6 -0
  56. package/source/components/layout/popper.mjs +476 -0
  57. package/source/components/{host → layout}/stylesheet/collapse.mjs +8 -4
  58. package/source/components/{host → layout}/stylesheet/details.mjs +8 -4
  59. package/source/components/layout/stylesheet/panel.mjs +8 -4
  60. package/source/components/{form → layout}/stylesheet/popper.mjs +8 -4
  61. package/source/components/layout/stylesheet/split-panel.mjs +8 -4
  62. package/source/components/layout/stylesheet/tabs.mjs +8 -4
  63. package/source/components/layout/stylesheet/width-toggle.mjs +8 -4
  64. package/source/components/layout/tabs.mjs +3 -3
  65. package/source/components/layout/width-toggle.mjs +3 -3
  66. package/source/components/navigation/style/table-of-content.pcss +84 -0
  67. package/source/components/navigation/stylesheet/table-of-content.mjs +31 -0
  68. package/source/components/navigation/table-of-content.mjs +418 -0
  69. package/source/components/notify/stylesheet/message.mjs +8 -4
  70. package/source/components/notify/stylesheet/notify.mjs +8 -4
  71. package/source/components/state/stylesheet/log.mjs +8 -4
  72. package/source/components/state/stylesheet/state.mjs +9 -5
  73. package/source/components/style/link.pcss +0 -1
  74. package/source/components/style/mixin/typography.pcss +7 -7
  75. package/source/components/style/typography.pcss +1 -1
  76. package/source/components/stylesheet/badge.mjs +8 -4
  77. package/source/components/stylesheet/border.mjs +8 -4
  78. package/source/components/stylesheet/button.mjs +8 -4
  79. package/source/components/stylesheet/card.mjs +8 -4
  80. package/source/components/stylesheet/color.mjs +8 -4
  81. package/source/components/stylesheet/common.mjs +8 -4
  82. package/source/components/stylesheet/control.mjs +8 -4
  83. package/source/components/stylesheet/data-grid.mjs +8 -4
  84. package/source/components/stylesheet/display.mjs +8 -4
  85. package/source/components/stylesheet/floating-ui.mjs +8 -4
  86. package/source/components/stylesheet/form.mjs +8 -4
  87. package/source/components/stylesheet/host.mjs +8 -4
  88. package/source/components/stylesheet/icons.mjs +8 -4
  89. package/source/components/stylesheet/link.mjs +8 -4
  90. package/source/components/stylesheet/mixin/badge.mjs +31 -0
  91. package/source/components/stylesheet/mixin/button.mjs +31 -0
  92. package/source/components/stylesheet/mixin/form.mjs +31 -0
  93. package/source/components/stylesheet/mixin/hover.mjs +31 -0
  94. package/source/components/stylesheet/mixin/icon.mjs +31 -0
  95. package/source/components/stylesheet/mixin/media.mjs +31 -0
  96. package/source/components/stylesheet/mixin/property.mjs +31 -0
  97. package/source/components/stylesheet/mixin/skeleton.mjs +31 -0
  98. package/source/components/stylesheet/mixin/spinner.mjs +31 -0
  99. package/source/components/stylesheet/mixin/typography.mjs +31 -0
  100. package/source/components/stylesheet/normalize.mjs +8 -4
  101. package/source/components/stylesheet/popper.mjs +8 -4
  102. package/source/components/stylesheet/property.mjs +8 -4
  103. package/source/components/stylesheet/ripple.mjs +8 -4
  104. package/source/components/stylesheet/skeleton.mjs +8 -4
  105. package/source/components/stylesheet/space.mjs +8 -4
  106. package/source/components/stylesheet/spinner.mjs +8 -4
  107. package/source/components/stylesheet/table.mjs +8 -4
  108. package/source/components/stylesheet/theme.mjs +8 -4
  109. package/source/components/stylesheet/typography.mjs +9 -5
  110. package/source/components/tree-menu/stylesheet/tree-menu.mjs +8 -4
  111. package/source/dom/ready.mjs +10 -4
  112. package/source/monster.mjs +17 -80
  113. package/source/types/proxyobserver.mjs +4 -2
  114. package/source/types/version.mjs +1 -1
  115. package/test/cases/monster.mjs +1 -1
  116. package/test/web/tests.js +4 -4
  117. package/source/components/form/form-field.mjs +0 -341
  118. package/source/components/form/style/form-field.pcss +0 -4
  119. package/source/components/form/stylesheet/form-field.mjs +0 -27
  120. /package/source/components/{host → layout}/style/collapse.pcss +0 -0
  121. /package/source/components/{host → layout}/style/details.pcss +0 -0
  122. /package/source/components/{form → layout}/style/popper.pcss +0 -0
@@ -1,528 +1,26 @@
1
1
  /**
2
- * Copyright 2023 schukai GmbH
3
- * SPDX-License-Identifier: AGPL-3.0
4
- */
5
-
6
- import {
7
- assembleMethodSymbol,
8
- CustomElement,
9
- getSlottedElements,
10
- registerCustomElement,
11
- } from "../../dom/customelement.mjs";
12
- import { CollapseStyleSheet } from "./stylesheet/collapse.mjs";
13
- import { fireCustomEvent } from "../../dom/events.mjs";
14
- import { getDocument } from "../../dom/util.mjs";
15
- import { addAttributeToken } from "../../dom/attributes.mjs";
16
- import { ATTRIBUTE_ERRORMESSAGE } from "../../dom/constants.mjs";
17
- import { Host } from "./host.mjs";
18
- import { generateUniqueConfigKey } from "./util.mjs";
19
- import { DeadMansSwitch } from "../../util/deadmansswitch.mjs";
20
- import { instanceSymbol } from "../../constants.mjs";
21
-
22
- export { Collapse, nameSymbol };
23
-
24
- /**
25
- * @private
26
- * @type {symbol}
27
- */
28
- const timerCallbackSymbol = Symbol("timerCallback");
29
-
30
- /**
31
- * @private
32
- * @type {symbol}
33
- */
34
- const detailsElementSymbol = Symbol("detailsElement");
35
-
36
- /**
37
- * @private
38
- * @type {symbol}
39
- */
40
- const controlElementSymbol = Symbol("controlElement");
41
-
42
- /**
43
- * local symbol
44
- * @private
45
- * @type {symbol}
46
- */
47
- const resizeObserverSymbol = Symbol("resizeObserver");
48
-
49
- /**
50
- * @private
51
- * @type {symbol}
52
- */
53
- const detailsSlotElementSymbol = Symbol("detailsSlotElement");
54
-
55
- /**
56
- * @private
57
- * @type {symbol}
58
- */
59
- const detailsContainerElementSymbol = Symbol("detailsContainerElement");
60
- /**
61
-
62
- * @private
63
- * @type {symbol}
64
- */
65
- const detailsDecoElementSymbol = Symbol("detailsDecoElement");
66
-
67
- /**
68
- * @private
69
- * @type {symbol}
70
- */
71
- const nameSymbol = Symbol("name");
72
-
73
- /**
74
- * The Collapse component is used to show a details.
75
- *
76
- * <img src="./images/collapse.png">
77
- *
78
- * Dependencies: the system uses functions of the [monsterjs](https://monsterjs.org/) library
79
- *
80
- * You can create this control either by specifying the HTML tag <monster-collapse />` directly in the HTML or using
81
- * Javascript via the `document.createElement('monster-collapse');` method.
82
- *
83
- * ```html
84
- * <monster-collapse></monster-collapse>
85
- * ```
86
- *
87
- * Or you can create this CustomControl directly in Javascript:
88
- *
89
- * ```js
90
- * import '@schukai/monster/source/components/host/collapse.mjs';
91
- * document.createElement('monster-collapse');
92
- * ```
2
+ * Copyright © schukai GmbH and all contributing authors, {{copyRightYear}}. All rights reserved.
3
+ * Node module: @schukai/monster
93
4
  *
94
- * The Body should have a class "hidden" to ensure that the styles are applied correctly.
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
95
7
  *
96
- * ```css
97
- * body.hidden {
98
- * visibility: hidden;
99
- * }
100
- * ```
101
- *
102
- * @startuml collapse.png
103
- * skinparam monochrome true
104
- * skinparam shadowing false
105
- * HTMLElement <|-- CustomElement
106
- * CustomElement <|-- Collapse
107
- * @enduml
108
- *
109
- * @copyright schukai GmbH
110
- * @memberOf Monster.Components.Host
111
- * @summary A simple collapse component
112
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-before-open
113
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-open
114
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-before-close
115
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-closed
116
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-adjust-height
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.
117
11
  */
118
- class Collapse extends CustomElement {
119
- /**
120
- * This method is called by the `instanceof` operator.
121
- * @returns {symbol}
122
- */
123
- static get [instanceSymbol]() {
124
- return Symbol.for("@schukai/component-host/collapse@@instance");
125
- }
126
-
127
- /**
128
- *
129
- */
130
- constructor() {
131
- super();
132
- // the name is only used for the host config and the event name
133
- this[nameSymbol] = "collapse";
134
- }
135
-
136
- /**
137
- * To set the options via the html tag the attribute `data-monster-options` must be used.
138
- * @see {@link https://monsterjs.org/en/doc/#configurate-a-monster-control}
139
- *
140
- * The individual configuration values can be found in the table.
141
- *
142
- * @property {Object} templates Template definitions
143
- * @property {string} templates.main Main template
144
- * @property {Object} classes CSS classes
145
- * @property {string} classes.container CSS class for the container
146
- * @property {Object} features Feature configuration
147
- * @property {boolean} features.accordion Enable accordion mode
148
- * @property {boolean} features.persistState Enable persist state (Host and Config-Manager required)
149
- * @property {boolean} features.useScrollValues Use scroll values (scrollHeight) instead of clientHeight for the height calculation
150
- */
151
- get defaults() {
152
- return Object.assign({}, super.defaults, {
153
- templates: {
154
- main: getTemplate(),
155
- },
156
- classes: {
157
- container: "padding",
158
- },
159
- features: {
160
- accordion: true,
161
- persistState: true,
162
- useScrollValues: false,
163
- },
164
- });
165
- }
166
-
167
- /**
168
- *
169
- * @returns {Monster.Components.Host.Collapse}
170
- */
171
- [assembleMethodSymbol]() {
172
- super[assembleMethodSymbol]();
173
- initControlReferences.call(this);
174
- initStateFromHostConfig.call(this);
175
- initResizeObserver.call(this);
176
- initEventHandler.call(this);
177
- }
178
-
179
- /**
180
- *
181
- */
182
- connectedCallback() {
183
- super.connectedCallback();
184
- updateResizeObserverObservation.call(this);
185
- // this[resizeObserverSymbol].observe(getDocument().body);
186
- }
187
-
188
- /**
189
- *
190
- */
191
- disconnectedCallback() {
192
- super.disconnectedCallback();
193
- //this[resizeObserverSymbol].disconnect();
194
- }
195
-
196
- /**
197
- *
198
- * @returns {Monster.Components.Host.Collapse}
199
- */
200
- toggle() {
201
- if (this[detailsElementSymbol].classList.contains("active")) {
202
- this.close();
203
- } else {
204
- this.open();
205
- }
206
- return this;
207
- }
208
-
209
- /**
210
- *
211
- * @returns {boolean}
212
- */
213
- isClosed() {
214
- return !this[detailsElementSymbol].classList.contains("active");
215
- }
216
-
217
- /**
218
- *
219
- * @returns {boolean}
220
- */
221
- isOpen() {
222
- return !this.isClosed();
223
- }
224
-
225
- /**
226
- *
227
- * @returns {Monster.Components.Host.Collapse}
228
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-before-open
229
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-open
230
- */
231
- open() {
232
- let node;
233
- if (this[detailsElementSymbol].classList.contains("active")) {
234
- return this;
235
- }
236
-
237
- fireCustomEvent(this, "monster-" + this[nameSymbol] + "-before-open", {});
238
-
239
- adjustHeight.call(this);
240
- this[detailsElementSymbol].classList.add("active");
241
-
242
- if (this.getOption("features.accordion") === true) {
243
- node = this;
244
- while (node.nextElementSibling instanceof Collapse) {
245
- node = node.nextElementSibling;
246
- node.close();
247
- }
248
-
249
- node = this;
250
- while (node.previousElementSibling instanceof Collapse) {
251
- node = node.previousElementSibling;
252
- node.close();
253
- }
254
- }
255
-
256
- setTimeout(() => {
257
- setTimeout(() => {
258
- updateStateConfig.call(this);
259
- fireCustomEvent(this, "monster-" + this[nameSymbol] + "-open", {});
260
- setTimeout(() => {
261
- this[controlElementSymbol].classList.remove("overflow-hidden");
262
- }, 500);
263
- }, 0);
264
- }, 0);
265
-
266
- return this;
267
- }
268
-
269
- /**
270
- *
271
- * @returns {Monster.Components.Host.Collapse}
272
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-before-close
273
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-closed
274
- */
275
- close() {
276
- if (!this[detailsElementSymbol].classList.contains("active")) {
277
- return this;
278
- }
279
-
280
- fireCustomEvent(this, "monster-" + this[nameSymbol] + "-before-close", {});
281
- this[controlElementSymbol].classList.add("overflow-hidden");
282
12
 
283
- setTimeout(() => {
284
- this[detailsElementSymbol].classList.remove("active");
285
- setTimeout(() => {
286
- updateStateConfig.call(this);
287
- fireCustomEvent(this, "monster-" + this[nameSymbol] + "-closed", {});
288
- }, 0);
289
- }, 0);
290
-
291
- return this;
292
- }
293
-
294
- /**
295
- *
296
- * @return {string}
297
- */
298
- static getTag() {
299
- return "monster-collapse";
300
- }
301
-
302
- /**
303
- * @return {Array<CSSStyleSheet>}
304
- */
305
- static getCSSStyleSheet() {
306
- return [CollapseStyleSheet];
307
- }
308
-
309
- /**
310
- * This method is called when the element is inserted into a document, including into a shadow tree.
311
- * @return {Monster.Components.Host.Collapse}
312
- * @fires Monster.Components.Host.Collapse.event:monster-collapse-adjust-height
313
- */
314
- adjustHeight() {
315
- adjustHeight.call(this);
316
- return this;
317
- }
318
- }
319
-
320
- function adjustHeight() {
321
- let height = 0;
322
-
323
- if (this[detailsContainerElementSymbol]) {
324
- if (this.getOption("features.useScrollValues")) {
325
- height += this[detailsContainerElementSymbol].scrollHeight;
326
- } else {
327
- height += this[detailsContainerElementSymbol].clientHeight;
328
- }
329
- }
330
-
331
- if (this[detailsDecoElementSymbol]) {
332
- if (this.getOption("features.useScrollValues")) {
333
- height += this[detailsDecoElementSymbol].scrollHeight;
334
- } else {
335
- height += this[detailsDecoElementSymbol].clientHeight + 1;
336
- }
337
- }
338
-
339
- if (height === 0) {
340
- if (this.getOption("features.useScrollValues")) {
341
- height = this[detailsElementSymbol].scrollHeight;
342
- } else {
343
- height = this[detailsElementSymbol].clientHeight;
344
- }
345
-
346
- if (height === 0) {
347
- height = "auto";
348
- }
349
- } else {
350
- height += "px";
351
- }
352
-
353
- this[detailsElementSymbol].style.setProperty(
354
- "--monster-height",
355
- height,
356
- "important",
357
- );
358
- fireCustomEvent(this, "monster-" + this[nameSymbol] + "-adjust-height", {});
359
- }
360
-
361
- function updateResizeObserverObservation() {
362
- this[resizeObserverSymbol].disconnect();
363
-
364
- const slottedNodes = getSlottedElements.call(this);
365
- slottedNodes.forEach((node) => {
366
- this[resizeObserverSymbol].observe(node);
367
- });
368
-
369
- if (this[detailsContainerElementSymbol]) {
370
- this[resizeObserverSymbol].observe(this[detailsContainerElementSymbol]);
371
- }
372
-
373
- this.adjustHeight();
374
- }
375
-
376
- /**
377
- * @private
378
- */
379
- function initEventHandler() {
380
- if (!this.shadowRoot) {
381
- throw new Error("no shadow-root is defined");
382
- }
383
-
384
- initSlotChangedHandler.call(this);
385
- return this;
386
- }
387
-
388
- function initSlotChangedHandler() {
389
- this[detailsSlotElementSymbol].addEventListener("slotchange", () => {
390
- updateResizeObserverObservation.call(this);
391
- });
392
- }
393
-
394
- /**
395
- * @private
396
- * @return {Select}
397
- * @throws {Error} no shadow-root is defined
398
- */
399
- function initControlReferences() {
400
- if (!this.shadowRoot) {
401
- throw new Error("no shadow-root is defined");
402
- }
403
-
404
- this[controlElementSymbol] = this.shadowRoot.querySelector(
405
- "[data-monster-role=control]",
406
- );
407
- this[detailsElementSymbol] = this.shadowRoot.querySelector(
408
- "[data-monster-role=detail]",
409
- );
410
- this[detailsSlotElementSymbol] = this.shadowRoot.querySelector("slot");
411
- this[detailsContainerElementSymbol] = this.shadowRoot.querySelector(
412
- "[data-monster-role=container]",
413
- );
414
- this[detailsDecoElementSymbol] = this.shadowRoot.querySelector(
415
- "[data-monster-role=deco]",
416
- );
417
- }
418
-
419
- /**
420
- * @private
421
- * @returns {string}
422
- */
423
- function getConfigKey() {
424
- return generateUniqueConfigKey(this[nameSymbol], this.id, "state");
425
- }
426
-
427
- /**
428
- * @private
429
- */
430
- function updateStateConfig() {
431
- if (!this.getOption("features.persistState")) {
432
- return;
433
- }
434
-
435
- if (!this[detailsElementSymbol]) {
436
- return;
437
- }
438
-
439
- const document = getDocument();
440
- const host = document.querySelector("monster-host");
441
- if (!(host && this.id)) {
442
- return;
443
- }
444
-
445
- const configKey = getConfigKey.call(this);
446
-
447
- try {
448
- host.setConfig(configKey, this.isOpen());
449
- } catch (error) {
450
- addAttributeToken(this, ATTRIBUTE_ERRORMESSAGE, String(error));
451
- }
452
- }
13
+ import { Collapse as NewCollapse } from "../layout/collapse.mjs";
14
+ export { Collapse };
453
15
 
454
16
  /**
455
- * @private
456
- * @returns {Promise}
457
- */
458
- function initStateFromHostConfig() {
459
- if (!this.getOption("features.persistState")) {
460
- return Promise.resolve({});
461
- }
462
-
463
- const document = getDocument();
464
- const host = document.querySelector("monster-host");
465
-
466
- if (!(host && this.id)) {
467
- return Promise.resolve({});
468
- }
469
-
470
- const configKey = getConfigKey.call(this);
471
- return host
472
- .getConfig(configKey)
473
- .then((state) => {
474
- if (state === true) {
475
- this.open();
476
- } else {
477
- this.close();
478
- }
479
- })
480
- .catch((error) => {
481
- addAttributeToken(this, ATTRIBUTE_ERRORMESSAGE, error.toString());
482
- });
483
- }
484
-
485
- /**
486
- * @private
17
+ * @since 1.10.0
18
+ * @copyright schukai GmbH
19
+ * @memberOf Monster.Components.Form
20
+ * @deprecated since 3.64.0 use {@link Monster.Components.Layout.Collapse}
487
21
  */
488
- function initResizeObserver() {
489
- // against flickering
490
- this[resizeObserverSymbol] = new ResizeObserver((entries) => {
491
- if (this[timerCallbackSymbol] instanceof DeadMansSwitch) {
492
- try {
493
- this[timerCallbackSymbol].touch();
494
- return;
495
- } catch (e) {
496
- delete this[timerCallbackSymbol];
497
- }
498
- }
499
-
500
- this[timerCallbackSymbol] = new DeadMansSwitch(200, () => {
501
- checkAndRearrangeContent.call(this);
502
- });
503
- });
504
- }
22
+ class Collapse extends NewCollapse {
505
23
 
506
- function checkAndRearrangeContent() {
507
- this.adjustHeight();
508
24
  }
509
25
 
510
- /**
511
- * @private
512
- * @return {string}
513
- */
514
- function getTemplate() {
515
- // language=HTML
516
- return `
517
- <div data-monster-role="control" part="control" class="overflow-hidden">
518
- <div data-monster-role="detail">
519
- <div data-monster-attributes="class path:classes.container" part="container"
520
- data-monster-role="container">
521
- <slot></slot>
522
- </div>
523
- <div class="deco-line" data-monster-role="deco"></div>
524
- </div>
525
- </div>`;
526
- }
527
26
 
528
- registerCustomElement(Collapse);
@@ -1,6 +1,13 @@
1
1
  /**
2
- * Copyright 2023 schukai GmbH
3
- * SPDX-License-Identifier: AGPL-3.0
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.
4
11
  */
5
12
 
6
13
  import {
@@ -1,8 +1,13 @@
1
1
  /**
2
- * Copyright schukai GmbH and contributors 2022. All Rights Reserved.
3
- * Node module: @schukai/component-form
4
- * This file is licensed under the AGPLv3 License.
5
- * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
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.
6
11
  */
7
12
 
8
13
  import { ATTRIBUTE_PREFIX } from "../../dom/constants.mjs";