@schukai/monster 3.52.1 → 3.53.0

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.
Files changed (56) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +1 -1
  3. package/package.json +1 -1
  4. package/source/components/datatable/columnbar.mjs +2 -3
  5. package/source/components/datatable/dataset.mjs +3 -5
  6. package/source/components/datatable/datasource/dom.mjs +5 -8
  7. package/source/components/datatable/datasource/rest.mjs +12 -18
  8. package/source/components/datatable/datasource.mjs +1 -1
  9. package/source/components/datatable/datatable/header.mjs +3 -5
  10. package/source/components/datatable/datatable.mjs +13 -18
  11. package/source/components/datatable/filter/date-range.mjs +15 -27
  12. package/source/components/datatable/filter/input.mjs +3 -5
  13. package/source/components/datatable/filter/range.mjs +10 -17
  14. package/source/components/datatable/filter/settings.mjs +6 -7
  15. package/source/components/datatable/filter.mjs +14 -21
  16. package/source/components/datatable/pagination.mjs +5 -7
  17. package/source/components/datatable/util.mjs +1 -2
  18. package/source/components/form/action-button.mjs +2 -3
  19. package/source/components/form/api-button.mjs +5 -9
  20. package/source/components/form/button-bar.mjs +15 -27
  21. package/source/components/form/button.mjs +2 -2
  22. package/source/components/form/confirm-button.mjs +9 -12
  23. package/source/components/form/form.mjs +8 -14
  24. package/source/components/form/message-state-button.mjs +4 -5
  25. package/source/components/form/popper-button.mjs +7 -11
  26. package/source/components/form/popper.mjs +7 -11
  27. package/source/components/form/reload.mjs +5 -7
  28. package/source/components/form/select.mjs +42 -74
  29. package/source/components/form/tabs.mjs +41 -45
  30. package/source/components/form/template.mjs +6 -9
  31. package/source/components/form/tree-select.mjs +7 -10
  32. package/source/components/form/util/popper.mjs +1 -2
  33. package/source/components/host/call-button.mjs +4 -6
  34. package/source/components/host/collapse.mjs +14 -22
  35. package/source/components/host/config-manager.mjs +7 -9
  36. package/source/components/host/details.mjs +5 -8
  37. package/source/components/host/host.mjs +7 -12
  38. package/source/components/host/overlay.mjs +4 -6
  39. package/source/components/host/viewer.mjs +2 -3
  40. package/source/components/notify/message.mjs +10 -13
  41. package/source/components/notify/notify.mjs +4 -6
  42. package/source/components/state/log/entry.mjs +1 -1
  43. package/source/components/state/log.mjs +6 -11
  44. package/source/components/style/icons.pcss +110 -0
  45. package/source/components/style/mixin/icon.pcss +43 -0
  46. package/source/components/stylesheet/icons.mjs +27 -0
  47. package/source/components/tree-menu/tree-menu.mjs +9 -14
  48. package/source/data/transformer.mjs +9 -4
  49. package/source/dom/customelement.mjs +1 -1
  50. package/source/dom/util.mjs +4 -5
  51. package/source/monster.mjs +0 -1
  52. package/source/types/observer.mjs +4 -4
  53. package/source/types/version.mjs +1 -1
  54. package/source/util/clone.mjs +1 -1
  55. package/test/cases/monster.mjs +1 -1
  56. package/test/web/test.html +1 -1
@@ -179,8 +179,7 @@ class Host extends CustomElement {
179
179
  * @private
180
180
  * @fires Monster.Components.Host.Host#monster-host-disconnected
181
181
  */
182
- disconnectedCallback() {;
183
-
182
+ disconnectedCallback() {
184
183
  super.disconnectedCallback();
185
184
  document.documentElement.style.overflowY = "";
186
185
 
@@ -212,8 +211,7 @@ class Host extends CustomElement {
212
211
  *
213
212
  * @return {Monster.Components.Host.Host}
214
213
  */
215
- [assembleMethodSymbol]() {;
216
-
214
+ [assembleMethodSymbol]() {
217
215
  this[promisesSymbol] = [];
218
216
  this[promisesSymbol].push(windowReady);
219
217
 
@@ -253,8 +251,7 @@ class Host extends CustomElement {
253
251
  *
254
252
  * @return {Promise}
255
253
  */
256
- onReady() {;
257
-
254
+ onReady() {
258
255
  if (isIterable(this[promisesSymbol]) === false) {
259
256
  this[promisesSymbol] = [];
260
257
  }
@@ -356,7 +353,7 @@ class Host extends CustomElement {
356
353
  *
357
354
  * @param {string|Message} message
358
355
  */
359
- pushNotification(message) {;
356
+ pushNotification(message) {
360
357
  if (this[notifyElementSymbol] instanceof HTMLElement === false) {
361
358
  throw new Error("There is no notify element defined.");
362
359
  }
@@ -371,8 +368,7 @@ class Host extends CustomElement {
371
368
  * @return {Select}
372
369
  * @throws {Error} no shadow-root is defined
373
370
  */
374
- function initControlReferences() {;
375
-
371
+ function initControlReferences() {
376
372
  if (!this.shadowRoot) {
377
373
  throw new Error("no shadow-root is defined");
378
374
  }
@@ -384,8 +380,7 @@ function initControlReferences() {;
384
380
  );
385
381
  }
386
382
 
387
- function initTranslations() {;
388
-
383
+ function initTranslations() {
389
384
  if (isIterable(this[promisesSymbol]) === false) {
390
385
  this[promisesSymbol] = [];
391
386
  }
@@ -396,7 +391,7 @@ function initTranslations() {;
396
391
  /**
397
392
  * @private
398
393
  */
399
- function initEventHandler() {;
394
+ function initEventHandler() {
400
395
  return this;
401
396
  }
402
397
 
@@ -200,7 +200,7 @@ class Overlay extends CustomElement {
200
200
  * @fires Monster.Components.Host.Overlay.event:monster-overlay-before-close
201
201
  * @fires Monster.Components.Host.Overlay.event:monster-overlay-closed
202
202
  */
203
- open() {;
203
+ open() {
204
204
  fireCustomEvent(this, "monster-overlay-before-open", {});
205
205
 
206
206
  this[overlayElementSymbol].classList.remove("hide-empty");
@@ -218,7 +218,7 @@ class Overlay extends CustomElement {
218
218
  /**
219
219
  * @returns {Monster.Components.Host.Overlay}
220
220
  */
221
- close() {;
221
+ close() {
222
222
  fireCustomEvent(this, "monster-overlay-before-close", {});
223
223
  setTimeout(() => {
224
224
  this[overlayElementSymbol].classList.remove("open");
@@ -250,8 +250,7 @@ class Overlay extends CustomElement {
250
250
  * @return {Select}
251
251
  * @throws {Error} no shadow-root is defined
252
252
  */
253
- function initControlReferences() {;
254
-
253
+ function initControlReferences() {
255
254
  if (!this.shadowRoot) {
256
255
  throw new Error("no shadow-root is defined");
257
256
  }
@@ -268,8 +267,7 @@ function initControlReferences() {;
268
267
  /**
269
268
  * @private
270
269
  */
271
- function initEventHandler() {;
272
-
270
+ function initEventHandler() {
273
271
  /**
274
272
  * @param {Event} event
275
273
  */
@@ -279,8 +279,7 @@ function blobToText(blob) {
279
279
  * @return {Select}
280
280
  * @throws {Error} no shadow-root is defined
281
281
  */
282
- function initControlReferences() {;
283
-
282
+ function initControlReferences() {
284
283
  if (!this.shadowRoot) {
285
284
  throw new Error("no shadow-root is defined");
286
285
  }
@@ -291,7 +290,7 @@ function initControlReferences() {;
291
290
  /**
292
291
  * @private
293
292
  */
294
- function initEventHandler() {;
293
+ function initEventHandler() {
295
294
  return this;
296
295
  }
297
296
 
@@ -145,7 +145,7 @@ class Message extends CustomElement {
145
145
  * @return {Monster.Components.Notify.Message}
146
146
  */
147
147
  [assembleMethodSymbol]() {
148
- super[assembleMethodSymbol]();;
148
+ super[assembleMethodSymbol]();
149
149
  initControlReferences.call(this);
150
150
  initEventhandler.call(this);
151
151
  return this;
@@ -170,7 +170,7 @@ class Message extends CustomElement {
170
170
  /**
171
171
  *
172
172
  */
173
- [initMethodSymbol]() {;
173
+ [initMethodSymbol]() {
174
174
  super[initMethodSymbol]();
175
175
  }
176
176
 
@@ -178,7 +178,7 @@ class Message extends CustomElement {
178
178
  * @return {void}
179
179
  */
180
180
  connectedCallback() {
181
- super.connectedCallback();;
181
+ super.connectedCallback();
182
182
 
183
183
  if (this.getOption("features.disappear") === true) {
184
184
  startFadeout.call(this);
@@ -191,7 +191,7 @@ class Message extends CustomElement {
191
191
  */
192
192
  disconnectedCallback() {
193
193
  super.disconnectedCallback();
194
- stopFadeout.call(this);;
194
+ stopFadeout.call(this);
195
195
 
196
196
  if (this.getOption("features.disappear") === true) {
197
197
  this.removeEventListener(
@@ -209,7 +209,7 @@ class Message extends CustomElement {
209
209
  /**
210
210
  * @private
211
211
  */
212
- function startFadeout() {;
212
+ function startFadeout() {
213
213
  if (!this?.[timerSymbol]) {
214
214
  this[timerSymbol] = setTimeout(() => {
215
215
  removeSelf.call(this);
@@ -217,8 +217,7 @@ function startFadeout() {;
217
217
  }
218
218
  }
219
219
 
220
- function removeSelf() {;
221
-
220
+ function removeSelf() {
222
221
  stopFadeout();
223
222
  this.classList.add("fadeout");
224
223
 
@@ -230,7 +229,7 @@ function removeSelf() {;
230
229
  /**
231
230
  * @private
232
231
  */
233
- function stopFadeout() {;
232
+ function stopFadeout() {
234
233
  if (this?.[timerSymbol]) {
235
234
  clearTimeout(this[timerSymbol]);
236
235
  this[timerSymbol] = undefined;
@@ -243,7 +242,7 @@ function stopFadeout() {;
243
242
  * @private
244
243
  * @return {object}
245
244
  */
246
- function initOptionsFromArguments() {;
245
+ function initOptionsFromArguments() {
247
246
  const options = {};
248
247
 
249
248
  const timeout = this.getAttribute(ATTRIBUTE_PREFIX + "timeout");
@@ -266,8 +265,7 @@ function initOptionsFromArguments() {;
266
265
  * @return {Message}
267
266
  * @throws {Error} no shadow-root is defined
268
267
  */
269
- function initControlReferences() {;
270
-
268
+ function initControlReferences() {
271
269
  if (!this.shadowRoot) {
272
270
  throw new Error("no shadow-root is defined");
273
271
  }
@@ -283,8 +281,7 @@ function initControlReferences() {;
283
281
  /**
284
282
  * @private
285
283
  */
286
- function initEventhandler() {;
287
-
284
+ function initEventhandler() {
288
285
  /**
289
286
  * @param {Event} event
290
287
  */
@@ -123,7 +123,7 @@ class Notify extends CustomElement {
123
123
  * @return {Notify}
124
124
  */
125
125
  [assembleMethodSymbol]() {
126
- super[assembleMethodSymbol]();;
126
+ super[assembleMethodSymbol]();
127
127
  initControlReferences.call(this);
128
128
 
129
129
  if (this[containerElementSymbol]) {
@@ -156,8 +156,7 @@ class Notify extends CustomElement {
156
156
  * @param {Monster.Components.Notify.Massage|String} message
157
157
  * @return {Monster.Components.Notify.Notify}
158
158
  */
159
- push(message) {;
160
-
159
+ push(message) {
161
160
  let messageElement = message;
162
161
  if (!(message instanceof Message)) {
163
162
  const text = validateString(message);
@@ -193,7 +192,7 @@ class Notify extends CustomElement {
193
192
  * @private
194
193
  * @return {object}
195
194
  */
196
- function initOptionsFromArguments() {;
195
+ function initOptionsFromArguments() {
197
196
  const options = {};
198
197
 
199
198
  return options;
@@ -204,8 +203,7 @@ function initOptionsFromArguments() {;
204
203
  * @return {Select}
205
204
  * @throws {Error} no shadow-root is defined
206
205
  */
207
- function initControlReferences() {;
208
-
206
+ function initControlReferences() {
209
207
  if (!this.shadowRoot) {
210
208
  throw new Error("no shadow-root is defined");
211
209
  }
@@ -20,7 +20,7 @@ export { Entry };
20
20
  */
21
21
  class Entry extends Base {
22
22
  constructor({ title, message, user, date } = {}) {
23
- super();;
23
+ super();
24
24
 
25
25
  /**
26
26
  * - attachInternalObserver
@@ -107,7 +107,7 @@ class Log extends CustomElement {
107
107
  });
108
108
  }
109
109
 
110
- connectedCallback() {;
110
+ connectedCallback() {
111
111
  super.connectedCallback();
112
112
 
113
113
  const slottedElements = getSlottedElements.call(this);
@@ -121,15 +121,13 @@ class Log extends CustomElement {
121
121
  *
122
122
  * @return {Log}
123
123
  */
124
- clear() {;
125
-
124
+ clear() {
126
125
  this[logElementSymbol].innerHTML = "";
127
126
  this[emptyStateElementSymbol].style.display = "block";
128
127
  return this;
129
128
  }
130
129
 
131
- addEntry(entry) {;
132
-
130
+ addEntry(entry) {
133
131
  validateInstance(entry, Entry);
134
132
 
135
133
  const entries = this.getOption("entries");
@@ -147,8 +145,7 @@ class Log extends CustomElement {
147
145
  * @param {string} message
148
146
  * @return {Log}
149
147
  */
150
- addMessage(message, date) {;
151
-
148
+ addMessage(message, date) {
152
149
  if (!date) {
153
150
  date = new Date();
154
151
  }
@@ -184,8 +181,7 @@ class Log extends CustomElement {
184
181
  * @return {Select}
185
182
  * @throws {Error} no shadow-root is defined
186
183
  */
187
- function initControlReferences() {;
188
-
184
+ function initControlReferences() {
189
185
  if (!this.shadowRoot) {
190
186
  throw new Error("no shadow-root is defined");
191
187
  }
@@ -201,8 +197,7 @@ function initControlReferences() {;
201
197
  /**
202
198
  * @private
203
199
  */
204
- function initEventHandler() {;
205
-
200
+ function initEventHandler() {
206
201
  if (!this.shadowRoot) {
207
202
  throw new Error("no shadow-root is defined");
208
203
  }
@@ -0,0 +1,110 @@
1
+
2
+ @import "mixin/icon.pcss";
3
+
4
+ @mixin icon info {
5
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-info-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z'/%3E%3C/svg%3E");
6
+ }
7
+
8
+ @mixin icon positiv {
9
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-check-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M10.97 4.97a.235.235 0 0 0-.02.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-1.071-1.05z'/%3E%3C/svg%3E");
10
+ }
11
+
12
+ @mixin icon negativ {
13
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-x-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
14
+ }
15
+
16
+ @mixin icon warning {
17
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-exclamation-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z'/%3E%3C/svg%3E");
18
+ }
19
+
20
+ @mixin icon neutral {
21
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-exclamation-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z'/%3E%3C/svg%3E");
22
+ }
23
+
24
+ @mixin icon question {
25
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-question-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z'/%3E%3C/svg%3E");
26
+ }
27
+
28
+ @mixin icon plus {
29
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-plus-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z'/%3E%3C/svg%3E");
30
+ }
31
+
32
+ @mixin icon dash {
33
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-dash-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z'/%3E%3C/svg%3E");
34
+ }
35
+
36
+ @mixin icon gear {
37
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-gear' viewBox='0 0 16 16'%3E%3Cpath d='M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492zM5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0z'/%3E%3Cpath d='M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115l.094-.319z'/%3E%3C/svg%3E");
38
+ }
39
+
40
+ @mixin icon home {
41
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-house' viewBox='0 0 16 16'%3E%3Cpath d='M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L2 8.207V13.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5V8.207l.646.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.707 1.5ZM13 7.207V13.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V7.207l5-5 5 5Z'/%3E%3C/svg%3E");
42
+ }
43
+
44
+ @mixin icon counterclockwise {
45
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-arrow-counterclockwise' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8 3a5 5 0 1 1-4.546 2.914.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2v1z'/%3E%3Cpath d='M8 4.466V.534a.25.25 0 0 0-.41-.192L5.23 2.308a.25.25 0 0 0 0 .384l2.36 1.966A.25.25 0 0 0 8 4.466z'/%3E%3C/svg%3E");
46
+ }
47
+
48
+ @for $i from 2 to 3 {
49
+
50
+ .monster-icon-success-$i:before {
51
+ background-color: var(--monster-color-success-$i);
52
+ color: var(--monster-bg-color-success-$i);
53
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-check-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M10.97 4.97a.235.235 0 0 0-.02.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-1.071-1.05z'/%3E%3C/svg%3E");
54
+ }
55
+
56
+ .monster-icon-warning-$i:before {
57
+ background-color: var(--monster-color-warning-$i);
58
+ color: var(--monster-bg-color-warning-$i);
59
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-exclamation-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z'/%3E%3C/svg%3E");
60
+ }
61
+
62
+ .monster-icon-error-$i:before {
63
+ background-color: var(--monster-color-error-$i);
64
+ color: var(--monster-bg-color-error-$i);
65
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-x-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
66
+ }
67
+
68
+ .monster-icon-error-$i:before, .monster-icon-warning-$i:before, .monster-icon-success-$i:before {
69
+ content: "";
70
+ display: inline-block;
71
+ height: 1em;
72
+ width: 1em;
73
+ mask-position: center;
74
+ mask-repeat: no-repeat;
75
+ mask-size: contain;
76
+
77
+ }
78
+ }
79
+
80
+ @for $i from 1 to 4 by 3 {
81
+
82
+ .monster-icon-success-$i:before {
83
+ background-color: var(--monster-bg-color-success-$i);
84
+ color: var(--monster-color-success-$i);
85
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-check-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M10.97 4.97a.235.235 0 0 0-.02.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-1.071-1.05z'/%3E%3C/svg%3E");
86
+ }
87
+
88
+ .monster-icon-warning-$i:before {
89
+ background-color: var(--monster-bg-color-warning-$i);
90
+ color: var(--monster-color-warning-$i);
91
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-exclamation-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z'/%3E%3C/svg%3E");
92
+ }
93
+
94
+ .monster-icon-error-$i:before {
95
+ background-color: var(--monster-bg-color-error-$i);
96
+ color: var(--monster-color-error-$i);
97
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-x-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
98
+ }
99
+
100
+ .monster-icon-error-$i:before, .monster-icon-warning-$i:before, .monster-icon-success-$i:before {
101
+ content: "";
102
+ display: inline-block;
103
+ height: 1em;
104
+ width: 1em;
105
+ mask-position: center;
106
+ mask-repeat: no-repeat;
107
+ mask-size: contain;
108
+
109
+ }
110
+ }
@@ -0,0 +1,43 @@
1
+ @define-mixin icon $name {
2
+
3
+ @for $i from 1 to 4 {
4
+
5
+ .monster-icon-primary-$(i)-$(name)::before {
6
+ background-color: var(--monster-color-primary-$i);
7
+ color: var(--monster-bg-color-primary-$i);
8
+ }
9
+
10
+ .monster-icon-secondary-$(i)-$(name)::before {
11
+ background-color: var(--monster-color-secondary-$i);
12
+ color: var(--monster-bg-color-secondary-$i);
13
+ }
14
+
15
+ .monster-icon-tertiary-$(i)-$(name)::before {
16
+ background-color: var(--monster-color-tertiary-$i);
17
+ color: var(--monster-bg-color-tertiary-$i);
18
+ }
19
+
20
+ .monster-icon-secondary-$(i)-$(name)::before {
21
+ background-color: var(--monster-color-secondary-$i);
22
+ color: var(--monster-bg-color-secondary-$i);
23
+ }
24
+
25
+
26
+ .monster-icon-primary-$(i)-$(name)::before,
27
+ .monster-icon-secondary-$(i)-$(name)::before,
28
+ .monster-icon-tertiary-$(i)-$(name)::before {
29
+ content: "";
30
+ display: inline-block;
31
+ width: 1em;
32
+ height: 1em;
33
+ mask-repeat: no-repeat;
34
+ mask-position: center;
35
+ mask-size: contain;
36
+ @mixin-content;
37
+ }
38
+
39
+
40
+
41
+
42
+ }
43
+ }