@decidables/decidables-elements 0.4.8 → 0.5.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.
@@ -10,20 +10,20 @@
10
10
  * SPDX-License-Identifier: BSD-3-Clause
11
11
  */
12
12
  const t$1 = globalThis,
13
- e$2 = t$1.ShadowRoot && (void 0 === t$1.ShadyCSS || t$1.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype,
14
- s$2 = Symbol(),
13
+ e$2 = t$1.ShadowRoot && (undefined === t$1.ShadyCSS || t$1.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype,
14
+ s$1 = Symbol(),
15
15
  o$3 = new WeakMap();
16
16
  let n$2 = class n {
17
17
  constructor(t, e, o) {
18
- if (this._$cssResult$ = !0, o !== s$2) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
18
+ if (this._$cssResult$ = true, o !== s$1) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
19
19
  this.cssText = t, this.t = e;
20
20
  }
21
21
  get styleSheet() {
22
22
  let t = this.o;
23
23
  const s = this.t;
24
- if (e$2 && void 0 === t) {
25
- const e = void 0 !== s && 1 === s.length;
26
- e && (t = o$3.get(s)), void 0 === t && ((this.o = t = new CSSStyleSheet()).replaceSync(this.cssText), e && o$3.set(s, t));
24
+ if (e$2 && undefined === t) {
25
+ const e = undefined !== s && 1 === s.length;
26
+ e && (t = o$3.get(s)), undefined === t && ((this.o = t = new CSSStyleSheet()).replaceSync(this.cssText), e && o$3.set(s, t));
27
27
  }
28
28
  return t;
29
29
  }
@@ -31,20 +31,20 @@
31
31
  return this.cssText;
32
32
  }
33
33
  };
34
- const r$3 = t => new n$2("string" == typeof t ? t : t + "", void 0, s$2),
35
- i$2 = (t, ...e) => {
34
+ const r$3 = t => new n$2("string" == typeof t ? t : t + "", undefined, s$1),
35
+ i$3 = (t, ...e) => {
36
36
  const o = 1 === t.length ? t[0] : e.reduce((e, s, o) => e + (t => {
37
- if (!0 === t._$cssResult$) return t.cssText;
37
+ if (true === t._$cssResult$) return t.cssText;
38
38
  if ("number" == typeof t) return t;
39
39
  throw Error("Value passed to 'css' function must be a 'css' function result: " + t + ". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.");
40
40
  })(s) + t[o + 1], t[0]);
41
- return new n$2(o, t, s$2);
41
+ return new n$2(o, t, s$1);
42
42
  },
43
43
  S$1 = (s, o) => {
44
44
  if (e$2) s.adoptedStyleSheets = o.map(t => t instanceof CSSStyleSheet ? t : t.styleSheet);else for (const e of o) {
45
45
  const o = document.createElement("style"),
46
46
  n = t$1.litNonce;
47
- void 0 !== n && o.setAttribute("nonce", n), o.textContent = e.cssText, s.appendChild(o);
47
+ undefined !== n && o.setAttribute("nonce", n), o.textContent = e.cssText, s.appendChild(o);
48
48
  }
49
49
  },
50
50
  c$2 = e$2 ? t => t : t => t instanceof CSSStyleSheet ? (t => {
@@ -59,7 +59,7 @@
59
59
  * SPDX-License-Identifier: BSD-3-Clause
60
60
  */
61
61
  const {
62
- is: i$1,
62
+ is: i$2,
63
63
  defineProperty: e$1,
64
64
  getOwnPropertyDescriptor: r$2,
65
65
  getOwnPropertyNames: h$1,
@@ -103,12 +103,12 @@
103
103
  return i;
104
104
  }
105
105
  },
106
- f$1 = (t, s) => !i$1(t, s),
106
+ f$1 = (t, s) => !i$2(t, s),
107
107
  y$1 = {
108
- attribute: !0,
108
+ attribute: true,
109
109
  type: String,
110
110
  converter: u$1,
111
- reflect: !1,
111
+ reflect: false,
112
112
  hasChanged: f$1
113
113
  };
114
114
  Symbol.metadata ??= Symbol("metadata"), a$1.litPropertyMetadata ??= new WeakMap();
@@ -120,10 +120,10 @@
120
120
  return this.finalize(), this._$Eh && [...this._$Eh.keys()];
121
121
  }
122
122
  static createProperty(t, s = y$1) {
123
- if (s.state && (s.attribute = !1), this._$Ei(), this.elementProperties.set(t, s), !s.noAccessor) {
123
+ if (s.state && (s.attribute = false), this._$Ei(), this.elementProperties.set(t, s), !s.noAccessor) {
124
124
  const i = Symbol(),
125
125
  r = this.getPropertyDescriptor(t, i, s);
126
- void 0 !== r && e$1(this.prototype, t, r);
126
+ undefined !== r && e$1(this.prototype, t, r);
127
127
  }
128
128
  }
129
129
  static getPropertyDescriptor(t, s, i) {
@@ -146,8 +146,8 @@
146
146
  const r = e?.call(this);
147
147
  h.call(this, s), this.requestUpdate(t, r, i);
148
148
  },
149
- configurable: !0,
150
- enumerable: !0
149
+ configurable: true,
150
+ enumerable: true
151
151
  };
152
152
  }
153
153
  static getPropertyOptions(t) {
@@ -156,11 +156,11 @@
156
156
  static _$Ei() {
157
157
  if (this.hasOwnProperty(d$1("elementProperties"))) return;
158
158
  const t = n$1(this);
159
- t.finalize(), void 0 !== t.l && (this.l = [...t.l]), this.elementProperties = new Map(t.elementProperties);
159
+ t.finalize(), undefined !== t.l && (this.l = [...t.l]), this.elementProperties = new Map(t.elementProperties);
160
160
  }
161
161
  static finalize() {
162
162
  if (this.hasOwnProperty(d$1("finalized"))) return;
163
- if (this.finalized = !0, this._$Ei(), this.hasOwnProperty(d$1("properties"))) {
163
+ if (this.finalized = true, this._$Ei(), this.hasOwnProperty(d$1("properties"))) {
164
164
  const t = this.properties,
165
165
  s = [...h$1(t), ...o$2(t)];
166
166
  for (const i of s) this.createProperty(i, t[i]);
@@ -168,12 +168,12 @@
168
168
  const t = this[Symbol.metadata];
169
169
  if (null !== t) {
170
170
  const s = litPropertyMetadata.get(t);
171
- if (void 0 !== s) for (const [t, i] of s) this.elementProperties.set(t, i);
171
+ if (undefined !== s) for (const [t, i] of s) this.elementProperties.set(t, i);
172
172
  }
173
173
  this._$Eh = new Map();
174
174
  for (const [t, s] of this.elementProperties) {
175
175
  const i = this._$Eu(t, s);
176
- void 0 !== i && this._$Eh.set(i, t);
176
+ undefined !== i && this._$Eh.set(i, t);
177
177
  }
178
178
  this.elementStyles = this.finalizeStyles(this.styles);
179
179
  }
@@ -182,21 +182,21 @@
182
182
  if (Array.isArray(s)) {
183
183
  const e = new Set(s.flat(1 / 0).reverse());
184
184
  for (const s of e) i.unshift(c$2(s));
185
- } else void 0 !== s && i.push(c$2(s));
185
+ } else undefined !== s && i.push(c$2(s));
186
186
  return i;
187
187
  }
188
188
  static _$Eu(t, s) {
189
189
  const i = s.attribute;
190
- return !1 === i ? void 0 : "string" == typeof i ? i : "string" == typeof t ? t.toLowerCase() : void 0;
190
+ return false === i ? undefined : "string" == typeof i ? i : "string" == typeof t ? t.toLowerCase() : undefined;
191
191
  }
192
192
  constructor() {
193
- super(), this._$Ep = void 0, this.isUpdatePending = !1, this.hasUpdated = !1, this._$Em = null, this._$Ev();
193
+ super(), this._$Ep = undefined, this.isUpdatePending = false, this.hasUpdated = false, this._$Em = null, this._$Ev();
194
194
  }
195
195
  _$Ev() {
196
196
  this._$ES = new Promise(t => this.enableUpdating = t), this._$AL = new Map(), this._$E_(), this.requestUpdate(), this.constructor.l?.forEach(t => t(this));
197
197
  }
198
198
  addController(t) {
199
- (this._$EO ??= new Set()).add(t), void 0 !== this.renderRoot && this.isConnected && t.hostConnected?.();
199
+ (this._$EO ??= new Set()).add(t), undefined !== this.renderRoot && this.isConnected && t.hostConnected?.();
200
200
  }
201
201
  removeController(t) {
202
202
  this._$EO?.delete(t);
@@ -212,7 +212,7 @@
212
212
  return S$1(t, this.constructor.elementStyles), t;
213
213
  }
214
214
  connectedCallback() {
215
- this.renderRoot ??= this.createRenderRoot(), this.enableUpdating(!0), this._$EO?.forEach(t => t.hostConnected?.());
215
+ this.renderRoot ??= this.createRenderRoot(), this.enableUpdating(true), this._$EO?.forEach(t => t.hostConnected?.());
216
216
  }
217
217
  enableUpdating(t) {}
218
218
  disconnectedCallback() {
@@ -224,34 +224,34 @@
224
224
  _$EC(t, s) {
225
225
  const i = this.constructor.elementProperties.get(t),
226
226
  e = this.constructor._$Eu(t, i);
227
- if (void 0 !== e && !0 === i.reflect) {
228
- const r = (void 0 !== i.converter?.toAttribute ? i.converter : u$1).toAttribute(s, i.type);
227
+ if (undefined !== e && true === i.reflect) {
228
+ const r = (undefined !== i.converter?.toAttribute ? i.converter : u$1).toAttribute(s, i.type);
229
229
  this._$Em = t, null == r ? this.removeAttribute(e) : this.setAttribute(e, r), this._$Em = null;
230
230
  }
231
231
  }
232
232
  _$AK(t, s) {
233
233
  const i = this.constructor,
234
234
  e = i._$Eh.get(t);
235
- if (void 0 !== e && this._$Em !== e) {
235
+ if (undefined !== e && this._$Em !== e) {
236
236
  const t = i.getPropertyOptions(e),
237
237
  r = "function" == typeof t.converter ? {
238
238
  fromAttribute: t.converter
239
- } : void 0 !== t.converter?.fromAttribute ? t.converter : u$1;
239
+ } : undefined !== t.converter?.fromAttribute ? t.converter : u$1;
240
240
  this._$Em = e, this[e] = r.fromAttribute(s, t.type), this._$Em = null;
241
241
  }
242
242
  }
243
243
  requestUpdate(t, s, i) {
244
- if (void 0 !== t) {
244
+ if (undefined !== t) {
245
245
  if (i ??= this.constructor.getPropertyOptions(t), !(i.hasChanged ?? f$1)(this[t], s)) return;
246
246
  this.P(t, s, i);
247
247
  }
248
- !1 === this.isUpdatePending && (this._$ES = this._$ET());
248
+ false === this.isUpdatePending && (this._$ES = this._$ET());
249
249
  }
250
250
  P(t, s, i) {
251
- this._$AL.has(t) || this._$AL.set(t, s), !0 === i.reflect && this._$Em !== t && (this._$Ej ??= new Set()).add(t);
251
+ this._$AL.has(t) || this._$AL.set(t, s), true === i.reflect && this._$Em !== t && (this._$Ej ??= new Set()).add(t);
252
252
  }
253
253
  async _$ET() {
254
- this.isUpdatePending = !0;
254
+ this.isUpdatePending = true;
255
255
  try {
256
256
  await this._$ES;
257
257
  } catch (t) {
@@ -268,26 +268,26 @@
268
268
  if (!this.hasUpdated) {
269
269
  if (this.renderRoot ??= this.createRenderRoot(), this._$Ep) {
270
270
  for (const [t, s] of this._$Ep) this[t] = s;
271
- this._$Ep = void 0;
271
+ this._$Ep = undefined;
272
272
  }
273
273
  const t = this.constructor.elementProperties;
274
- if (t.size > 0) for (const [s, i] of t) !0 !== i.wrapped || this._$AL.has(s) || void 0 === this[s] || this.P(s, this[s], i);
274
+ if (t.size > 0) for (const [s, i] of t) true !== i.wrapped || this._$AL.has(s) || undefined === this[s] || this.P(s, this[s], i);
275
275
  }
276
- let t = !1;
276
+ let t = false;
277
277
  const s = this._$AL;
278
278
  try {
279
279
  t = this.shouldUpdate(s), t ? (this.willUpdate(s), this._$EO?.forEach(t => t.hostUpdate?.()), this.update(s)) : this._$EU();
280
280
  } catch (s) {
281
- throw t = !1, this._$EU(), s;
281
+ throw t = false, this._$EU(), s;
282
282
  }
283
283
  t && this._$AE(s);
284
284
  }
285
285
  willUpdate(t) {}
286
286
  _$AE(t) {
287
- this._$EO?.forEach(t => t.hostUpdated?.()), this.hasUpdated || (this.hasUpdated = !0, this.firstUpdated(t)), this.updated(t);
287
+ this._$EO?.forEach(t => t.hostUpdated?.()), this.hasUpdated || (this.hasUpdated = true, this.firstUpdated(t)), this.updated(t);
288
288
  }
289
289
  _$EU() {
290
- this._$AL = new Map(), this.isUpdatePending = !1;
290
+ this._$AL = new Map(), this.isUpdatePending = false;
291
291
  }
292
292
  get updateComplete() {
293
293
  return this.getUpdateComplete();
@@ -296,7 +296,7 @@
296
296
  return this._$ES;
297
297
  }
298
298
  shouldUpdate(t) {
299
- return !0;
299
+ return true;
300
300
  }
301
301
  update(t) {
302
302
  this._$Ej &&= this._$Ej.forEach(t => this._$EC(t, this[t])), this._$EU();
@@ -316,10 +316,10 @@
316
316
  * SPDX-License-Identifier: BSD-3-Clause
317
317
  */
318
318
  const t = globalThis,
319
- i = t.trustedTypes,
320
- s$1 = i ? i.createPolicy("lit-html", {
319
+ i$1 = t.trustedTypes,
320
+ s = i$1 ? i$1.createPolicy("lit-html", {
321
321
  createHTML: t => t
322
- }) : void 0,
322
+ }) : undefined,
323
323
  e = "$lit$",
324
324
  h = `lit$${Math.random().toFixed(9).slice(2)}$`,
325
325
  o$1 = "?" + h,
@@ -344,19 +344,19 @@
344
344
  }),
345
345
  x = y(1),
346
346
  b = y(2),
347
- w = Symbol.for("lit-noChange"),
348
- T = Symbol.for("lit-nothing"),
347
+ T = Symbol.for("lit-noChange"),
348
+ E = Symbol.for("lit-nothing"),
349
349
  A = new WeakMap(),
350
- E = r$1.createTreeWalker(r$1, 129);
351
- function C(t, i) {
352
- if (!Array.isArray(t) || !t.hasOwnProperty("raw")) throw Error("invalid template strings array");
353
- return void 0 !== s$1 ? s$1.createHTML(i) : i;
350
+ C = r$1.createTreeWalker(r$1, 129);
351
+ function P(t, i) {
352
+ if (!a(t) || !t.hasOwnProperty("raw")) throw Error("invalid template strings array");
353
+ return undefined !== s ? s.createHTML(i) : i;
354
354
  }
355
- const P = (t, i) => {
355
+ const V = (t, i) => {
356
356
  const s = t.length - 1,
357
357
  o = [];
358
358
  let r,
359
- l = 2 === i ? "<svg>" : "",
359
+ l = 2 === i ? "<svg>" : 3 === i ? "<math>" : "",
360
360
  c = f;
361
361
  for (let i = 0; i < s; i++) {
362
362
  const s = t[i];
@@ -364,13 +364,13 @@
364
364
  u,
365
365
  d = -1,
366
366
  y = 0;
367
- for (; y < s.length && (c.lastIndex = y, u = c.exec(s), null !== u);) y = c.lastIndex, c === f ? "!--" === u[1] ? c = v : void 0 !== u[1] ? c = _ : void 0 !== u[2] ? ($.test(u[2]) && (r = RegExp("</" + u[2], "g")), c = m) : void 0 !== u[3] && (c = m) : c === m ? ">" === u[0] ? (c = r ?? f, d = -1) : void 0 === u[1] ? d = -2 : (d = c.lastIndex - u[2].length, a = u[1], c = void 0 === u[3] ? m : '"' === u[3] ? g : p) : c === g || c === p ? c = m : c === v || c === _ ? c = f : (c = m, r = void 0);
367
+ for (; y < s.length && (c.lastIndex = y, u = c.exec(s), null !== u);) y = c.lastIndex, c === f ? "!--" === u[1] ? c = v : undefined !== u[1] ? c = _ : undefined !== u[2] ? ($.test(u[2]) && (r = RegExp("</" + u[2], "g")), c = m) : undefined !== u[3] && (c = m) : c === m ? ">" === u[0] ? (c = r ?? f, d = -1) : undefined === u[1] ? d = -2 : (d = c.lastIndex - u[2].length, a = u[1], c = undefined === u[3] ? m : '"' === u[3] ? g : p) : c === g || c === p ? c = m : c === v || c === _ ? c = f : (c = m, r = undefined);
368
368
  const x = c === m && t[i + 1].startsWith("/>") ? " " : "";
369
369
  l += c === f ? s + n : d >= 0 ? (o.push(a), s.slice(0, d) + e + s.slice(d) + h + x) : s + h + (-2 === d ? i : x);
370
370
  }
371
- return [C(t, l + (t[s] || "<?>") + (2 === i ? "</svg>" : "")), o];
371
+ return [P(t, l + (t[s] || "<?>") + (2 === i ? "</svg>" : 3 === i ? "</math>" : "")), o];
372
372
  };
373
- class V {
373
+ class N {
374
374
  constructor({
375
375
  strings: t,
376
376
  _$litType$: s
@@ -381,12 +381,12 @@
381
381
  a = 0;
382
382
  const u = t.length - 1,
383
383
  d = this.parts,
384
- [f, v] = P(t, s);
385
- if (this.el = V.createElement(f, n), E.currentNode = this.el.content, 2 === s) {
384
+ [f, v] = V(t, s);
385
+ if (this.el = N.createElement(f, n), C.currentNode = this.el.content, 2 === s || 3 === s) {
386
386
  const t = this.el.content.firstChild;
387
387
  t.replaceWith(...t.childNodes);
388
388
  }
389
- for (; null !== (r = E.nextNode()) && d.length < u;) {
389
+ for (; null !== (r = C.nextNode()) && d.length < u;) {
390
390
  if (1 === r.nodeType) {
391
391
  if (r.hasAttributes()) for (const t of r.getAttributeNames()) if (t.endsWith(e)) {
392
392
  const i = v[a++],
@@ -397,7 +397,7 @@
397
397
  index: c,
398
398
  name: e[2],
399
399
  strings: s,
400
- ctor: "." === e[1] ? k : "?" === e[1] ? H : "@" === e[1] ? I : R
400
+ ctor: "." === e[1] ? H : "?" === e[1] ? I : "@" === e[1] ? L : k
401
401
  }), r.removeAttribute(t);
402
402
  } else t.startsWith(h) && (d.push({
403
403
  type: 6,
@@ -407,8 +407,8 @@
407
407
  const t = r.textContent.split(h),
408
408
  s = t.length - 1;
409
409
  if (s > 0) {
410
- r.textContent = i ? i.emptyScript : "";
411
- for (let i = 0; i < s; i++) r.append(t[i], l()), E.nextNode(), d.push({
410
+ r.textContent = i$1 ? i$1.emptyScript : "";
411
+ for (let i = 0; i < s; i++) r.append(t[i], l()), C.nextNode(), d.push({
412
412
  type: 2,
413
413
  index: ++c
414
414
  });
@@ -433,15 +433,15 @@
433
433
  return s.innerHTML = t, s;
434
434
  }
435
435
  }
436
- function N(t, i, s = t, e) {
437
- if (i === w) return i;
438
- let h = void 0 !== e ? s._$Co?.[e] : s._$Cl;
439
- const o = c(i) ? void 0 : i._$litDirective$;
440
- return h?.constructor !== o && (h?._$AO?.(!1), void 0 === o ? h = void 0 : (h = new o(t), h._$AT(t, s, e)), void 0 !== e ? (s._$Co ??= [])[e] = h : s._$Cl = h), void 0 !== h && (i = N(t, h._$AS(t, i.values), h, e)), i;
436
+ function S(t, i, s = t, e) {
437
+ if (i === T) return i;
438
+ let h = undefined !== e ? s._$Co?.[e] : s._$Cl;
439
+ const o = c(i) ? undefined : i._$litDirective$;
440
+ return h?.constructor !== o && (h?._$AO?.(false), undefined === o ? h = undefined : (h = new o(t), h._$AT(t, s, e)), undefined !== e ? (s._$Co ??= [])[e] = h : s._$Cl = h), undefined !== h && (i = S(t, h._$AS(t, i.values), h, e)), i;
441
441
  }
442
- class S {
442
+ class M {
443
443
  constructor(t, i) {
444
- this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = i;
444
+ this._$AV = [], this._$AN = undefined, this._$AD = t, this._$AM = i;
445
445
  }
446
446
  get parentNode() {
447
447
  return this._$AM.parentNode;
@@ -456,37 +456,37 @@
456
456
  },
457
457
  parts: s
458
458
  } = this._$AD,
459
- e = (t?.creationScope ?? r$1).importNode(i, !0);
460
- E.currentNode = e;
461
- let h = E.nextNode(),
459
+ e = (t?.creationScope ?? r$1).importNode(i, true);
460
+ C.currentNode = e;
461
+ let h = C.nextNode(),
462
462
  o = 0,
463
463
  n = 0,
464
464
  l = s[0];
465
- for (; void 0 !== l;) {
465
+ for (; undefined !== l;) {
466
466
  if (o === l.index) {
467
467
  let i;
468
- 2 === l.type ? i = new M(h, h.nextSibling, this, t) : 1 === l.type ? i = new l.ctor(h, l.name, l.strings, this, t) : 6 === l.type && (i = new L(h, this, t)), this._$AV.push(i), l = s[++n];
468
+ 2 === l.type ? i = new R(h, h.nextSibling, this, t) : 1 === l.type ? i = new l.ctor(h, l.name, l.strings, this, t) : 6 === l.type && (i = new z(h, this, t)), this._$AV.push(i), l = s[++n];
469
469
  }
470
- o !== l?.index && (h = E.nextNode(), o++);
470
+ o !== l?.index && (h = C.nextNode(), o++);
471
471
  }
472
- return E.currentNode = r$1, e;
472
+ return C.currentNode = r$1, e;
473
473
  }
474
474
  p(t) {
475
475
  let i = 0;
476
- for (const s of this._$AV) void 0 !== s && (void 0 !== s.strings ? (s._$AI(t, s, i), i += s.strings.length - 2) : s._$AI(t[i])), i++;
476
+ for (const s of this._$AV) undefined !== s && (undefined !== s.strings ? (s._$AI(t, s, i), i += s.strings.length - 2) : s._$AI(t[i])), i++;
477
477
  }
478
478
  }
479
- class M {
479
+ class R {
480
480
  get _$AU() {
481
481
  return this._$AM?._$AU ?? this._$Cv;
482
482
  }
483
483
  constructor(t, i, s, e) {
484
- this.type = 2, this._$AH = T, this._$AN = void 0, this._$AA = t, this._$AB = i, this._$AM = s, this.options = e, this._$Cv = e?.isConnected ?? !0;
484
+ this.type = 2, this._$AH = E, this._$AN = undefined, this._$AA = t, this._$AB = i, this._$AM = s, this.options = e, this._$Cv = e?.isConnected ?? true;
485
485
  }
486
486
  get parentNode() {
487
487
  let t = this._$AA.parentNode;
488
488
  const i = this._$AM;
489
- return void 0 !== i && 11 === t?.nodeType && (t = i.parentNode), t;
489
+ return undefined !== i && 11 === t?.nodeType && (t = i.parentNode), t;
490
490
  }
491
491
  get startNode() {
492
492
  return this._$AA;
@@ -495,52 +495,52 @@
495
495
  return this._$AB;
496
496
  }
497
497
  _$AI(t, i = this) {
498
- t = N(this, t, i), c(t) ? t === T || null == t || "" === t ? (this._$AH !== T && this._$AR(), this._$AH = T) : t !== this._$AH && t !== w && this._(t) : void 0 !== t._$litType$ ? this.$(t) : void 0 !== t.nodeType ? this.T(t) : u(t) ? this.k(t) : this._(t);
498
+ t = S(this, t, i), c(t) ? t === E || null == t || "" === t ? (this._$AH !== E && this._$AR(), this._$AH = E) : t !== this._$AH && t !== T && this._(t) : undefined !== t._$litType$ ? this.$(t) : undefined !== t.nodeType ? this.T(t) : u(t) ? this.k(t) : this._(t);
499
499
  }
500
- S(t) {
500
+ O(t) {
501
501
  return this._$AA.parentNode.insertBefore(t, this._$AB);
502
502
  }
503
503
  T(t) {
504
- this._$AH !== t && (this._$AR(), this._$AH = this.S(t));
504
+ this._$AH !== t && (this._$AR(), this._$AH = this.O(t));
505
505
  }
506
506
  _(t) {
507
- this._$AH !== T && c(this._$AH) ? this._$AA.nextSibling.data = t : this.T(r$1.createTextNode(t)), this._$AH = t;
507
+ this._$AH !== E && c(this._$AH) ? this._$AA.nextSibling.data = t : this.T(r$1.createTextNode(t)), this._$AH = t;
508
508
  }
509
509
  $(t) {
510
510
  const {
511
511
  values: i,
512
512
  _$litType$: s
513
513
  } = t,
514
- e = "number" == typeof s ? this._$AC(t) : (void 0 === s.el && (s.el = V.createElement(C(s.h, s.h[0]), this.options)), s);
514
+ e = "number" == typeof s ? this._$AC(t) : (undefined === s.el && (s.el = N.createElement(P(s.h, s.h[0]), this.options)), s);
515
515
  if (this._$AH?._$AD === e) this._$AH.p(i);else {
516
- const t = new S(e, this),
516
+ const t = new M(e, this),
517
517
  s = t.u(this.options);
518
518
  t.p(i), this.T(s), this._$AH = t;
519
519
  }
520
520
  }
521
521
  _$AC(t) {
522
522
  let i = A.get(t.strings);
523
- return void 0 === i && A.set(t.strings, i = new V(t)), i;
523
+ return undefined === i && A.set(t.strings, i = new N(t)), i;
524
524
  }
525
525
  k(t) {
526
526
  a(this._$AH) || (this._$AH = [], this._$AR());
527
527
  const i = this._$AH;
528
528
  let s,
529
529
  e = 0;
530
- for (const h of t) e === i.length ? i.push(s = new M(this.S(l()), this.S(l()), this, this.options)) : s = i[e], s._$AI(h), e++;
530
+ for (const h of t) e === i.length ? i.push(s = new R(this.O(l()), this.O(l()), this, this.options)) : s = i[e], s._$AI(h), e++;
531
531
  e < i.length && (this._$AR(s && s._$AB.nextSibling, e), i.length = e);
532
532
  }
533
533
  _$AR(t = this._$AA.nextSibling, i) {
534
- for (this._$AP?.(!1, !0, i); t && t !== this._$AB;) {
534
+ for (this._$AP?.(false, true, i); t && t !== this._$AB;) {
535
535
  const i = t.nextSibling;
536
536
  t.remove(), t = i;
537
537
  }
538
538
  }
539
539
  setConnected(t) {
540
- void 0 === this._$AM && (this._$Cv = t, this._$AP?.(t));
540
+ undefined === this._$AM && (this._$Cv = t, this._$AP?.(t));
541
541
  }
542
542
  }
543
- class R {
543
+ class k {
544
544
  get tagName() {
545
545
  return this.element.tagName;
546
546
  }
@@ -548,72 +548,72 @@
548
548
  return this._$AM._$AU;
549
549
  }
550
550
  constructor(t, i, s, e, h) {
551
- this.type = 1, this._$AH = T, this._$AN = void 0, this.element = t, this.name = i, this._$AM = e, this.options = h, s.length > 2 || "" !== s[0] || "" !== s[1] ? (this._$AH = Array(s.length - 1).fill(new String()), this.strings = s) : this._$AH = T;
551
+ this.type = 1, this._$AH = E, this._$AN = undefined, this.element = t, this.name = i, this._$AM = e, this.options = h, s.length > 2 || "" !== s[0] || "" !== s[1] ? (this._$AH = Array(s.length - 1).fill(new String()), this.strings = s) : this._$AH = E;
552
552
  }
553
553
  _$AI(t, i = this, s, e) {
554
554
  const h = this.strings;
555
- let o = !1;
556
- if (void 0 === h) t = N(this, t, i, 0), o = !c(t) || t !== this._$AH && t !== w, o && (this._$AH = t);else {
555
+ let o = false;
556
+ if (undefined === h) t = S(this, t, i, 0), o = !c(t) || t !== this._$AH && t !== T, o && (this._$AH = t);else {
557
557
  const e = t;
558
558
  let n, r;
559
- for (t = h[0], n = 0; n < h.length - 1; n++) r = N(this, e[s + n], i, n), r === w && (r = this._$AH[n]), o ||= !c(r) || r !== this._$AH[n], r === T ? t = T : t !== T && (t += (r ?? "") + h[n + 1]), this._$AH[n] = r;
559
+ for (t = h[0], n = 0; n < h.length - 1; n++) r = S(this, e[s + n], i, n), r === T && (r = this._$AH[n]), o ||= !c(r) || r !== this._$AH[n], r === E ? t = E : t !== E && (t += (r ?? "") + h[n + 1]), this._$AH[n] = r;
560
560
  }
561
561
  o && !e && this.j(t);
562
562
  }
563
563
  j(t) {
564
- t === T ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
564
+ t === E ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t ?? "");
565
565
  }
566
566
  }
567
- class k extends R {
567
+ class H extends k {
568
568
  constructor() {
569
569
  super(...arguments), this.type = 3;
570
570
  }
571
571
  j(t) {
572
- this.element[this.name] = t === T ? void 0 : t;
572
+ this.element[this.name] = t === E ? undefined : t;
573
573
  }
574
574
  }
575
- class H extends R {
575
+ class I extends k {
576
576
  constructor() {
577
577
  super(...arguments), this.type = 4;
578
578
  }
579
579
  j(t) {
580
- this.element.toggleAttribute(this.name, !!t && t !== T);
580
+ this.element.toggleAttribute(this.name, !!t && t !== E);
581
581
  }
582
582
  }
583
- class I extends R {
583
+ class L extends k {
584
584
  constructor(t, i, s, e, h) {
585
585
  super(t, i, s, e, h), this.type = 5;
586
586
  }
587
587
  _$AI(t, i = this) {
588
- if ((t = N(this, t, i, 0) ?? T) === w) return;
588
+ if ((t = S(this, t, i, 0) ?? E) === T) return;
589
589
  const s = this._$AH,
590
- e = t === T && s !== T || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive,
591
- h = t !== T && (s === T || e);
590
+ e = t === E && s !== E || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive,
591
+ h = t !== E && (s === E || e);
592
592
  e && this.element.removeEventListener(this.name, this, s), h && this.element.addEventListener(this.name, this, t), this._$AH = t;
593
593
  }
594
594
  handleEvent(t) {
595
595
  "function" == typeof this._$AH ? this._$AH.call(this.options?.host ?? this.element, t) : this._$AH.handleEvent(t);
596
596
  }
597
597
  }
598
- class L {
598
+ class z {
599
599
  constructor(t, i, s) {
600
- this.element = t, this.type = 6, this._$AN = void 0, this._$AM = i, this.options = s;
600
+ this.element = t, this.type = 6, this._$AN = undefined, this._$AM = i, this.options = s;
601
601
  }
602
602
  get _$AU() {
603
603
  return this._$AM._$AU;
604
604
  }
605
605
  _$AI(t) {
606
- N(this, t);
606
+ S(this, t);
607
607
  }
608
608
  }
609
- const Z = t.litHtmlPolyfillSupport;
610
- Z?.(V, M), (t.litHtmlVersions ??= []).push("3.1.3");
611
- const j = (t, i, s) => {
609
+ const j = t.litHtmlPolyfillSupport;
610
+ j?.(N, R), (t.litHtmlVersions ??= []).push("3.2.1");
611
+ const B = (t, i, s) => {
612
612
  const e = s?.renderBefore ?? i;
613
613
  let h = e._$litPart$;
614
- if (void 0 === h) {
614
+ if (undefined === h) {
615
615
  const t = s?.renderBefore ?? null;
616
- e._$litPart$ = h = new M(i.insertBefore(l(), t), t, void 0, s ?? {});
616
+ e._$litPart$ = h = new R(i.insertBefore(l(), t), t, undefined, s ?? {});
617
617
  }
618
618
  return h._$AI(t), h;
619
619
  };
@@ -623,38 +623,38 @@
623
623
  * Copyright 2017 Google LLC
624
624
  * SPDX-License-Identifier: BSD-3-Clause
625
625
  */
626
- class s extends b$1 {
626
+ class r extends b$1 {
627
627
  constructor() {
628
628
  super(...arguments), this.renderOptions = {
629
629
  host: this
630
- }, this._$Do = void 0;
630
+ }, this._$Do = undefined;
631
631
  }
632
632
  createRenderRoot() {
633
633
  const t = super.createRenderRoot();
634
634
  return this.renderOptions.renderBefore ??= t.firstChild, t;
635
635
  }
636
636
  update(t) {
637
- const i = this.render();
638
- this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t), this._$Do = j(i, this.renderRoot, this.renderOptions);
637
+ const s = this.render();
638
+ this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t), this._$Do = B(s, this.renderRoot, this.renderOptions);
639
639
  }
640
640
  connectedCallback() {
641
- super.connectedCallback(), this._$Do?.setConnected(!0);
641
+ super.connectedCallback(), this._$Do?.setConnected(true);
642
642
  }
643
643
  disconnectedCallback() {
644
- super.disconnectedCallback(), this._$Do?.setConnected(!1);
644
+ super.disconnectedCallback(), this._$Do?.setConnected(false);
645
645
  }
646
646
  render() {
647
- return w;
647
+ return T;
648
648
  }
649
649
  }
650
- s._$litElement$ = !0, s[("finalized")] = !0, globalThis.litElementHydrateSupport?.({
651
- LitElement: s
650
+ r._$litElement$ = true, r["finalized"] = true, globalThis.litElementHydrateSupport?.({
651
+ LitElement: r
652
652
  });
653
- const r = globalThis.litElementPolyfillSupport;
654
- r?.({
655
- LitElement: s
653
+ const i = globalThis.litElementPolyfillSupport;
654
+ i?.({
655
+ LitElement: r
656
656
  });
657
- (globalThis.litElementVersions ??= []).push("4.0.5");
657
+ (globalThis.litElementVersions ??= []).push("4.1.1");
658
658
 
659
659
  var noop = {
660
660
  value: () => {}
@@ -1918,7 +1918,7 @@
1918
1918
  return (h < 60 ? m1 + (m2 - m1) * h / 60 : h < 180 ? m2 : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60 : m1) * 255;
1919
1919
  }
1920
1920
 
1921
- var constant = (x => () => x);
1921
+ var constant = x => () => x;
1922
1922
 
1923
1923
  function linear(a, d) {
1924
1924
  return function (t) {
@@ -3074,7 +3074,7 @@
3074
3074
  DecidablesElement Base Class - Not intended for instantiation!
3075
3075
  <decidables-element>
3076
3076
  */
3077
- class DecidablesElement extends s {
3077
+ class DecidablesElement extends r {
3078
3078
  getComputedStyleValue(property) {
3079
3079
  return getComputedStyle(this).getPropertyValue(property).trim();
3080
3080
  }
@@ -3327,7 +3327,7 @@
3327
3327
  `;
3328
3328
  }
3329
3329
  static get styles() {
3330
- return i$2`
3330
+ return i$3`
3331
3331
  :host {
3332
3332
  ---shadow-0: var(--shadow-0, ${r$3(this.cssBoxShadow(0))});
3333
3333
  ---shadow-2: var(--shadow-2, ${r$3(this.cssBoxShadow(2))});
@@ -3405,8 +3405,11 @@
3405
3405
  this.disabled = false;
3406
3406
  }
3407
3407
  static get styles() {
3408
- return [super.styles, i$2`
3408
+ return [super.styles, i$3`
3409
3409
  :host {
3410
+ ---decidables-button-background-color-disabled: var(--decidables-button-background-color, var(---color-element-disabled));
3411
+ ---decidables-button-background-color-enabled: var(--decidables-button-background-color, var(---color-element-enabled));
3412
+
3410
3413
  margin: 0.25rem;
3411
3414
  }
3412
3415
 
@@ -3426,7 +3429,7 @@
3426
3429
  }
3427
3430
 
3428
3431
  button:disabled {
3429
- background-color: var(--decidables-button-background-color, var(---color-element-disabled));
3432
+ background-color: var(---decidables-button-background-color-disabled);
3430
3433
  outline: none;
3431
3434
  box-shadow: none;
3432
3435
  }
@@ -3434,7 +3437,7 @@
3434
3437
  button:enabled {
3435
3438
  cursor: pointer;
3436
3439
 
3437
- background-color: var(--decidables-button-background-color, var(---color-element-enabled));
3440
+ background-color: var(---decidables-button-background-color-enabled);
3438
3441
  outline: none;
3439
3442
  box-shadow: var(---shadow-2);
3440
3443
  }
@@ -3475,7 +3478,7 @@
3475
3478
  * Copyright 2018 Google LLC
3476
3479
  * SPDX-License-Identifier: BSD-3-Clause
3477
3480
  */
3478
- const o = o => o ?? T;
3481
+ const o = o => o ?? E;
3479
3482
 
3480
3483
  class DecidablesSlider extends DecidablesElement {
3481
3484
  static get properties() {
@@ -3485,6 +3488,11 @@
3485
3488
  type: Boolean,
3486
3489
  reflect: true
3487
3490
  },
3491
+ scale: {
3492
+ attribute: 'scale',
3493
+ type: Boolean,
3494
+ reflect: true
3495
+ },
3488
3496
  max: {
3489
3497
  attribute: 'max',
3490
3498
  type: Number,
@@ -3504,6 +3512,11 @@
3504
3512
  attribute: 'value',
3505
3513
  type: Number,
3506
3514
  reflect: true
3515
+ },
3516
+ nonlinear: {
3517
+ attribute: false,
3518
+ type: Boolean,
3519
+ reflect: false
3507
3520
  }
3508
3521
  };
3509
3522
  }
@@ -3512,13 +3525,30 @@
3512
3525
 
3513
3526
  // Attributes
3514
3527
  this.disabled = false;
3528
+ this.scale = false;
3515
3529
  this.max = undefined;
3516
3530
  this.min = undefined;
3517
3531
  this.step = undefined;
3518
3532
  this.value = undefined;
3533
+ this.nonlinear = false;
3534
+
3535
+ // Properties
3536
+ this.rangeMax = undefined;
3537
+ this.rangeMin = undefined;
3538
+ this.rangeStep = undefined;
3539
+ this.rangeValue = undefined;
3540
+
3541
+ // Transform
3542
+ this.toRange = undefined;
3543
+ this.fromRange = undefined;
3519
3544
  }
3520
- changed(event) {
3521
- this.value = event.target.value;
3545
+ nonlinearRange(nonlinear, toRange, fromRange) {
3546
+ this.nonlinear = nonlinear;
3547
+ this.toRange = nonlinear ? toRange : undefined;
3548
+ this.fromRange = nonlinear ? fromRange : undefined;
3549
+ }
3550
+ rangeChanged(event) {
3551
+ this.value = this.nonlinear ? this.fromRange(event.target.value) : event.target.value;
3522
3552
  this.dispatchEvent(new CustomEvent('change', {
3523
3553
  detail: {
3524
3554
  value: this.value
@@ -3526,12 +3556,25 @@
3526
3556
  bubbles: true
3527
3557
  }));
3528
3558
  }
3529
- inputted(event) {
3559
+ rangeInputted(event) {
3560
+ this.value = this.nonlinear ? this.fromRange(event.target.value) : event.target.value;
3561
+ }
3562
+ spinnerInputted(event) {
3530
3563
  this.value = event.target.value;
3531
3564
  }
3565
+ willUpdate() {
3566
+ this.rangeMax = this.max === undefined ? undefined : this.nonlinear ? this.toRange(this.max) : this.max;
3567
+ this.rangeMin = this.min === undefined ? undefined : this.nonlinear ? this.toRange(this.min) : this.min;
3568
+ this.rangeStep = this.step === undefined ? undefined : this.nonlinear ? 'any' : this.step;
3569
+ this.rangeValue = this.value === undefined ? undefined : this.nonlinear ? this.toRange(this.value) : this.value;
3570
+ }
3532
3571
  static get styles() {
3533
- return [super.styles, i$2`
3572
+ return [super.styles, i$3`
3534
3573
  :host {
3574
+ ---decidables-slider-background-color: var(--decidables-slider-background-color, var(---color-element-disabled));
3575
+ ---decidables-slider-color: var(--decidables-slider-color, var(---color-element-enabled));
3576
+ ---decidables-spinner-background-color: var(--decidables-slider-background-color, none);
3577
+
3535
3578
  ---shadow-2-rotate: var(--shadow-2-rotate, ${r$3(this.cssBoxShadow(2, true, false))});
3536
3579
  ---shadow-4-rotate: var(--shadow-4-rotate, ${r$3(this.cssBoxShadow(4, true, false))});
3537
3580
  ---shadow-8-rotate: var(--shadow-8-rotate, ${r$3(this.cssBoxShadow(8, true, false))});
@@ -3549,7 +3592,10 @@
3549
3592
  }
3550
3593
 
3551
3594
  .range {
3552
- display: inline-block;
3595
+ position: relative;
3596
+ display: flex;
3597
+
3598
+ flex-direction: row;
3553
3599
 
3554
3600
  width: 3.5rem;
3555
3601
  height: 4.75rem;
@@ -3560,6 +3606,8 @@
3560
3606
  --decidables-spinner-input-width: 3.5rem;
3561
3607
 
3562
3608
  margin: 0 0.25rem 0.25rem;
3609
+
3610
+ background: var(---decidables-spinner-background-color);
3563
3611
  }
3564
3612
 
3565
3613
  /* Adapted from http://danielstern.ca/range.css/#/ */
@@ -3598,14 +3646,14 @@
3598
3646
  width: 100%;
3599
3647
  height: 4px;
3600
3648
 
3601
- background: var(---color-element-disabled);
3649
+ background: var(---decidables-slider-background-color);
3602
3650
  border: 0;
3603
3651
  border-radius: 2px;
3604
3652
  box-shadow: none;
3605
3653
  }
3606
3654
 
3607
3655
  input[type=range]:focus::-webkit-slider-runnable-track {
3608
- background: var(---color-element-disabled);
3656
+ background: var(---decidables-slider-background-color);
3609
3657
  }
3610
3658
 
3611
3659
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
@@ -3613,7 +3661,7 @@
3613
3661
  width: 100%;
3614
3662
  height: 4px;
3615
3663
 
3616
- background: var(---color-element-disabled);
3664
+ background: var(---decidables-slider-background-color);
3617
3665
  border: 0;
3618
3666
  border-radius: 2px;
3619
3667
  box-shadow: none;
@@ -3633,7 +3681,7 @@
3633
3681
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
3634
3682
  input[type=range]::-ms-fill-lower {
3635
3683
  background: #cccccc;
3636
- /* background: var(---color-element-disabled); */
3684
+ /* background: var(---decidables-slider-background-color); */
3637
3685
  border: 0;
3638
3686
  border-radius: 2px;
3639
3687
  box-shadow: none;
@@ -3642,7 +3690,7 @@
3642
3690
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
3643
3691
  input[type=range]::-ms-fill-upper {
3644
3692
  background: #cccccc;
3645
- /* background: var(---color-element-disabled); */
3693
+ /* background: var(---decidables-slider-background-color); */
3646
3694
  border: 0;
3647
3695
  border-radius: 2px;
3648
3696
  box-shadow: none;
@@ -3650,12 +3698,12 @@
3650
3698
 
3651
3699
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
3652
3700
  input[type=range]:focus::-ms-fill-lower {
3653
- background: var(---color-element-disabled);
3701
+ background: var(---decidables-slider-background-color);
3654
3702
  }
3655
3703
 
3656
3704
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
3657
3705
  input[type=range]:focus::-ms-fill-upper {
3658
- background: var(---color-element-disabled);
3706
+ background: var(---decidables-slider-background-color);
3659
3707
  }
3660
3708
 
3661
3709
  /* Thumb */
@@ -3673,12 +3721,12 @@
3673
3721
  }
3674
3722
 
3675
3723
  input[type=range]:disabled::-webkit-slider-thumb {
3676
- background: var(---color-element-disabled);
3724
+ background: var(---decidables-slider-background-color);
3677
3725
  box-shadow: none;
3678
3726
  }
3679
3727
 
3680
3728
  input[type=range]:enabled::-webkit-slider-thumb {
3681
- background: var(---color-element-enabled);
3729
+ background: var(---decidables-slider-color);
3682
3730
  box-shadow: var(---shadow-2-rotate);
3683
3731
  }
3684
3732
 
@@ -3709,13 +3757,13 @@
3709
3757
 
3710
3758
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
3711
3759
  input[type=range]:disabled::-moz-range-thumb {
3712
- background: var(---color-element-disabled);
3760
+ background: var(---decidables-slider-background-color);
3713
3761
  box-shadow: none;
3714
3762
  }
3715
3763
 
3716
3764
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
3717
3765
  input[type=range]:enabled::-moz-range-thumb {
3718
- background: var(---color-element-enabled);
3766
+ background: var(---decidables-slider-color);
3719
3767
  box-shadow: var(---shadow-2-rotate);
3720
3768
  }
3721
3769
 
@@ -3752,13 +3800,13 @@
3752
3800
 
3753
3801
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
3754
3802
  input[type=range]:disabled::-ms-thumb {
3755
- background: var(---color-element-disabled);
3803
+ background: var(---decidables-slider-background-color);
3756
3804
  box-shadow: none;
3757
3805
  }
3758
3806
 
3759
3807
  /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */
3760
3808
  input[type=range]:enabled::-ms-thumb {
3761
- background: var(---color-element-enabled);
3809
+ background: var(---decidables-slider-color);
3762
3810
  box-shadow: var(---shadow-2-rotate);
3763
3811
  }
3764
3812
 
@@ -3780,6 +3828,33 @@
3780
3828
  :host(.keyboard) input[type=range]:enabled:focus:active::-ms-thumb {
3781
3829
  box-shadow: var(---shadow-8-rotate);
3782
3830
  }
3831
+
3832
+ datalist {
3833
+ position: absolute;
3834
+ left: 2rem;
3835
+ z-index: -1;
3836
+ display: flex;
3837
+
3838
+ flex-direction: column;
3839
+
3840
+ align-items: flex-start;
3841
+ justify-content: space-between;
3842
+
3843
+ height: 4.75rem;
3844
+
3845
+ font-size: 0.75rem;
3846
+ }
3847
+
3848
+ option {
3849
+ padding: 0;
3850
+
3851
+ line-height: 0.8;
3852
+ min-block-size: 0;
3853
+ }
3854
+
3855
+ option::before {
3856
+ content: "– ";
3857
+ }
3783
3858
  `];
3784
3859
  }
3785
3860
  render() {
@@ -3788,9 +3863,15 @@
3788
3863
  <slot></slot>
3789
3864
  </label>
3790
3865
  <div class="range">
3791
- <input ?disabled=${this.disabled} type="range" id="slider" min=${o(this.min)} max=${o(this.max)} step=${o(this.step)} .value=${this.value} @change=${this.changed.bind(this)} @input=${this.inputted.bind(this)}>
3866
+ <input ?disabled=${this.disabled} type="range" id="slider" min=${o(this.rangeMin)} max=${o(this.rangeMax)} step=${o(this.rangeStep)} .value=${this.rangeValue} @change=${this.rangeChanged.bind(this)} @input=${this.rangeInputted.bind(this)}>
3867
+ ${this.scale ? x`
3868
+ <datalist id="ticks">
3869
+ <option value=${o(this.rangeMax)} label=${o(this.max)}></option>
3870
+ <option value=${o(this.rangeMin)} label=${o(this.min)}></option>
3871
+ </datalist>
3872
+ ` : x``}
3792
3873
  </div>
3793
- <decidables-spinner ?disabled=${this.disabled} min=${o(this.min)} max=${o(this.max)} step=${o(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}></decidables-spinner>
3874
+ <decidables-spinner ?disabled=${this.disabled} min=${o(this.min)} max=${o(this.max)} step=${o(this.step)} .value=${this.value} @input=${this.spinnerInputted.bind(this)}></decidables-spinner>
3794
3875
  `;
3795
3876
  }
3796
3877
  }
@@ -3840,7 +3921,7 @@
3840
3921
  this.value = event.target.value;
3841
3922
  }
3842
3923
  static get styles() {
3843
- return [super.styles, i$2`
3924
+ return [super.styles, i$3`
3844
3925
  :host {
3845
3926
  ---decidables-spinner-font-size: var(--decidables-spinner-font-size, 1.125rem);
3846
3927
  ---decidables-spinner-input-width: var(--decidables-spinner-input-width, 4rem);
@@ -3979,7 +4060,7 @@
3979
4060
  }));
3980
4061
  }
3981
4062
  static get styles() {
3982
- return [super.styles, i$2`
4063
+ return [super.styles, i$3`
3983
4064
  :host {
3984
4065
  display: flex;
3985
4066
 
@@ -4132,7 +4213,7 @@
4132
4213
  this.disabled = false;
4133
4214
  }
4134
4215
  static get styles() {
4135
- return [super.styles, i$2`
4216
+ return [super.styles, i$3`
4136
4217
  fieldset {
4137
4218
  display: flex;
4138
4219
 
@@ -4207,7 +4288,7 @@
4207
4288
  }));
4208
4289
  }
4209
4290
  static get styles() {
4210
- return [super.styles, i$2`
4291
+ return [super.styles, i$3`
4211
4292
  :host {
4212
4293
  display: flex;
4213
4294
  }