@agencecinq/slider 6.0.0 → 6.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/geometry.d.ts +4 -1
- package/dist/geometry.d.ts.map +1 -1
- package/dist/index.js +46 -28
- package/dist/slider.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/geometry.d.ts
CHANGED
|
@@ -3,7 +3,10 @@ import { ActiveThumb } from './types.js';
|
|
|
3
3
|
export declare const ratioFromValue: (value: number, min: number, max: number) => number;
|
|
4
4
|
/** Value from semantic ratio. */
|
|
5
5
|
export declare const valueFromRatio: (ratio: number, min: number, max: number) => number;
|
|
6
|
-
/**
|
|
6
|
+
/**
|
|
7
|
+
* Snap a value to the nearest step within `[min, max]`.
|
|
8
|
+
* Rounded to the precision of `min` and `step`, so `0.1` steps give `4.2`, not `4.199999999999999`.
|
|
9
|
+
*/
|
|
7
10
|
export declare const snapToStep: (value: number, min: number, max: number, step: number) => number;
|
|
8
11
|
/** Single-thumb track length. */
|
|
9
12
|
export declare const singleTrackLength: (railLength: number, thumbSize: number) => number;
|
package/dist/geometry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../src/geometry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wDAAwD;AACxD,eAAO,MAAM,cAAc,GACzB,OAAO,MAAM,EACb,KAAK,MAAM,EACX,KAAK,MAAM,KACV,MAGF,CAAC;AAEF,iCAAiC;AACjC,eAAO,MAAM,cAAc,GACzB,OAAO,MAAM,EACb,KAAK,MAAM,EACX,KAAK,MAAM,KACV,MAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../src/geometry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wDAAwD;AACxD,eAAO,MAAM,cAAc,GACzB,OAAO,MAAM,EACb,KAAK,MAAM,EACX,KAAK,MAAM,KACV,MAGF,CAAC;AAEF,iCAAiC;AACjC,eAAO,MAAM,cAAc,GACzB,OAAO,MAAM,EACb,KAAK,MAAM,EACX,KAAK,MAAM,KACV,MAAmC,CAAC;AAMvC;;;GAGG;AACH,eAAO,MAAM,UAAU,GACrB,OAAO,MAAM,EACb,KAAK,MAAM,EACX,KAAK,MAAM,EACX,MAAM,MAAM,KACX,MASF,CAAC;AAEF,iCAAiC;AACjC,eAAO,MAAM,iBAAiB,GAC5B,YAAY,MAAM,EAClB,WAAW,MAAM,KAChB,MAA6C,CAAC;AAEjD,6CAA6C;AAC7C,eAAO,MAAM,gBAAgB,GAC3B,YAAY,MAAM,EAClB,WAAW,MAAM,KAChB,MAAiD,CAAC;AAoBrD,6DAA6D;AAC7D,eAAO,MAAM,gBAAgB,GAC3B,aAAa,MAAM,EACnB,MAAM,OAAO,EACb,WAAW,MAAM,EACjB,KAAK,OAAO,EACZ,UAAU,OAAO,KAChB,MAaF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAChC,aAAa,MAAM,EACnB,MAAM,OAAO,EACb,OAAO,WAAW,EAClB,MAAM,MAAM,EACZ,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,WAAW,MAAM,EACjB,KAAK,OAAO,EACZ,UAAU,OAAO,KAChB,MAcF,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,14 +5,25 @@ var e = {
|
|
|
5
5
|
DRAWER_CLOSE: "drawer:close",
|
|
6
6
|
DRAWER_OPEN: "drawer:open",
|
|
7
7
|
DRAWER_TOGGLE: "drawer:toggle",
|
|
8
|
+
SHEET_BEFORE_CLOSE: "sheet:before-close",
|
|
9
|
+
SHEET_BEFORE_OPEN: "sheet:before-open",
|
|
10
|
+
SHEET_CLOSE: "sheet:close",
|
|
11
|
+
SHEET_OPEN: "sheet:open",
|
|
12
|
+
SHEET_TOGGLE: "sheet:toggle",
|
|
8
13
|
MODAL_BEFORE_CLOSE: "modal:before-close",
|
|
9
14
|
MODAL_BEFORE_OPEN: "modal:before-open",
|
|
10
15
|
MODAL_CLOSE: "modal:close",
|
|
11
16
|
MODAL_OPEN: "modal:open",
|
|
12
17
|
MODAL_TOGGLE: "modal:toggle",
|
|
13
18
|
SPINBUTTON_CHANGE: "spinbutton:change",
|
|
19
|
+
TOAST_OPEN: "toast:open",
|
|
20
|
+
TOAST_CLOSE: "toast:close",
|
|
14
21
|
DISCLOSURE_BUTTON_OPEN: "disclosure-button:open",
|
|
15
22
|
DISCLOSURE_BUTTON_CLOSE: "disclosure-button:close",
|
|
23
|
+
DRILLDOWN_OPEN: "drilldown:open",
|
|
24
|
+
DRILLDOWN_CLOSE: "drilldown:close",
|
|
25
|
+
DROPZONE_CHANGE: "dropzone:change",
|
|
26
|
+
DROPZONE_REJECT: "dropzone:reject",
|
|
16
27
|
SWITCH_ACTIVATE: "switch:activate",
|
|
17
28
|
SWITCH_DEACTIVATE: "switch:deactivate",
|
|
18
29
|
ACCORDION_OPEN: "accordion:open",
|
|
@@ -24,6 +35,9 @@ var e = {
|
|
|
24
35
|
COMBOBOX_EMPTY: "combobox:empty",
|
|
25
36
|
WINDOWSPLITTER_CHANGE: "windowsplitter:change",
|
|
26
37
|
SLIDER_CHANGE: "slider:change",
|
|
38
|
+
SNAKE_EAT: "snake:eat",
|
|
39
|
+
SNAKE_OVER: "snake:over",
|
|
40
|
+
SNAKE_REPLAY: "snake:replay",
|
|
27
41
|
CALENDAR_CHANGE: "calendar:change",
|
|
28
42
|
TABS_BEFORE_ACTIVATE: "tabs:before-activate",
|
|
29
43
|
TABS_ACTIVATE: "tabs:activate",
|
|
@@ -55,15 +69,19 @@ i.hasAttribute("data-debug"), window.addEventListener("pointermove", r(({ x: e,
|
|
|
55
69
|
var o = (e, t, n) => Math.min(Math.max(e, t), n), s = (e, t, n) => {
|
|
56
70
|
let r = n - t;
|
|
57
71
|
return r > 0 ? (e - t) / r : 0;
|
|
58
|
-
}, c = (e, t, n) => t + e * (n - t), l = (e
|
|
59
|
-
|
|
72
|
+
}, c = (e, t, n) => t + e * (n - t), l = (e) => e.toString().split(".")[1]?.length ?? 0, u = (e, t, n, r) => {
|
|
73
|
+
if (r <= 0) return o(e, t, n);
|
|
74
|
+
let i = t + Math.round((e - t) / r) * r, a = Math.max(l(t), l(r));
|
|
75
|
+
return o(Number(i.toFixed(a)), t, n);
|
|
76
|
+
}, d = (e, t) => Math.max(0, e - t), f = (e, t) => Math.max(0, e - 2 * t), p = (e, t, n, r) => r || n ? e === "min" ? t : 0 : e === "max" ? t : 0, m = (e, t, n, r, i) => {
|
|
77
|
+
let a = i ? t.height : t.width, s = i ? t.top : t.left, c = d(a, n);
|
|
60
78
|
if (c <= 0) return 0;
|
|
61
79
|
let l = o((e - s - n / 2) / c, 0, 1);
|
|
62
80
|
return i || r ? 1 - l : l;
|
|
63
|
-
},
|
|
64
|
-
let u =
|
|
65
|
-
return
|
|
66
|
-
},
|
|
81
|
+
}, h = (e, t, n, r, i, a, s, c, l) => {
|
|
82
|
+
let u = p(n, s, c, l), d = o(e - (l ? t.top : t.left) - u, 0, a), f = a > 0 ? d / a : 0, m = i - r;
|
|
83
|
+
return l || c ? i - m * f : r + m * f;
|
|
84
|
+
}, g = class {
|
|
67
85
|
#e;
|
|
68
86
|
#t;
|
|
69
87
|
#n;
|
|
@@ -118,7 +136,7 @@ var o = (e, t, n) => Math.min(Math.max(e, t), n), s = (e, t, n) => {
|
|
|
118
136
|
static isEnd(e) {
|
|
119
137
|
return e === "End";
|
|
120
138
|
}
|
|
121
|
-
},
|
|
139
|
+
}, _ = class extends HTMLElement {
|
|
122
140
|
static observedAttributes = ["data-step", "data-page"];
|
|
123
141
|
step = 1;
|
|
124
142
|
page = 10;
|
|
@@ -205,7 +223,7 @@ var o = (e, t, n) => Math.min(Math.max(e, t), n), s = (e, t, n) => {
|
|
|
205
223
|
get offset() {
|
|
206
224
|
return this.#n?.offset ?? 0;
|
|
207
225
|
}
|
|
208
|
-
},
|
|
226
|
+
}, v = class extends _ {
|
|
209
227
|
$thumb = null;
|
|
210
228
|
get orientation() {
|
|
211
229
|
return this.$thumb?.getAttribute("aria-orientation") ?? null;
|
|
@@ -237,12 +255,12 @@ var o = (e, t, n) => Math.min(Math.max(e, t), n), s = (e, t, n) => {
|
|
|
237
255
|
this.#e(this.value, !1);
|
|
238
256
|
}
|
|
239
257
|
setValue(e, t = {}) {
|
|
240
|
-
let { emit: n = !0 } = t, r =
|
|
258
|
+
let { emit: n = !0 } = t, r = u(e, this.min, this.max, this.step);
|
|
241
259
|
this.#e(r, n);
|
|
242
260
|
}
|
|
243
261
|
valueFromPointer(e, t) {
|
|
244
|
-
let { clientY: n, clientX: r } = e, i = this.getBoundingClientRect(), { min: a, max: o } = this, { offsetHeight: s, offsetWidth: l } = t, u = this.isVertical
|
|
245
|
-
return
|
|
262
|
+
let { clientY: n, clientX: r } = e, i = this.getBoundingClientRect(), { min: a, max: o } = this, { offsetHeight: s, offsetWidth: l } = t, u = this.isVertical;
|
|
263
|
+
return c(m((u ? n : r) + this.offset, i, u ? s : l, this.isRtl, u), a, o);
|
|
246
264
|
}
|
|
247
265
|
commitPointerValue(e, t) {
|
|
248
266
|
this.setValue(this.valueFromPointer(e, t));
|
|
@@ -250,15 +268,15 @@ var o = (e, t, n) => Math.min(Math.max(e, t), n), s = (e, t, n) => {
|
|
|
250
268
|
onKeydown(e) {
|
|
251
269
|
if (!this.$thumb) return;
|
|
252
270
|
let { key: t } = e;
|
|
253
|
-
if (
|
|
271
|
+
if (g.isHome(t)) {
|
|
254
272
|
e.preventDefault(), this.setValue(this.min);
|
|
255
273
|
return;
|
|
256
274
|
}
|
|
257
|
-
if (
|
|
275
|
+
if (g.isEnd(t)) {
|
|
258
276
|
e.preventDefault(), this.setValue(this.max);
|
|
259
277
|
return;
|
|
260
278
|
}
|
|
261
|
-
let n = new
|
|
279
|
+
let n = new g(this.step, this.page, this.isRtl, this.isVertical).delta(t);
|
|
262
280
|
if (!n) return;
|
|
263
281
|
let { preventDefault: r, delta: i } = n;
|
|
264
282
|
r && e.preventDefault(), i !== 0 && this.setValue(this.value + i);
|
|
@@ -273,10 +291,10 @@ var o = (e, t, n) => Math.min(Math.max(e, t), n), s = (e, t, n) => {
|
|
|
273
291
|
}, { cancelable: !1 });
|
|
274
292
|
}
|
|
275
293
|
};
|
|
276
|
-
customElements.get("cinq-slider") || customElements.define("cinq-slider",
|
|
294
|
+
customElements.get("cinq-slider") || customElements.define("cinq-slider", v);
|
|
277
295
|
//#endregion
|
|
278
296
|
//#region src/slider-range.ts
|
|
279
|
-
var
|
|
297
|
+
var y = class extends _ {
|
|
280
298
|
$max = null;
|
|
281
299
|
$min = null;
|
|
282
300
|
#e = "min";
|
|
@@ -323,7 +341,7 @@ var v = class extends g {
|
|
|
323
341
|
}
|
|
324
342
|
valueFromPointer(e, t) {
|
|
325
343
|
let { clientY: n, clientX: r } = e, { offsetHeight: i, offsetWidth: a } = t, o = t === this.$min ? "min" : "max", s = this.isVertical ? i : a;
|
|
326
|
-
return
|
|
344
|
+
return h(this.isVertical ? n + this.offset : r + this.offset, this.getBoundingClientRect(), o, this.#t, this.#n, this.#i(s), s, this.isRtl, this.isVertical);
|
|
327
345
|
}
|
|
328
346
|
commitPointerValue(e, t) {
|
|
329
347
|
let n = this.valueFromPointer(e, t);
|
|
@@ -338,19 +356,19 @@ var v = class extends g {
|
|
|
338
356
|
if (!t) return;
|
|
339
357
|
this.#e = t;
|
|
340
358
|
let { key: n } = e, r = t === "min" ? this.min : this.max;
|
|
341
|
-
if (
|
|
359
|
+
if (g.isHome(n)) {
|
|
342
360
|
e.preventDefault();
|
|
343
361
|
let n = t === "min" ? this.#t : this.min;
|
|
344
362
|
t === "min" ? this.setValues(n, this.max, { active: "min" }) : this.setValues(this.min, n, { active: "max" });
|
|
345
363
|
return;
|
|
346
364
|
}
|
|
347
|
-
if (
|
|
365
|
+
if (g.isEnd(n)) {
|
|
348
366
|
e.preventDefault();
|
|
349
367
|
let n = t === "max" ? this.#n : this.max;
|
|
350
368
|
t === "min" ? this.setValues(n, this.max, { active: "min" }) : this.setValues(this.min, n, { active: "max" });
|
|
351
369
|
return;
|
|
352
370
|
}
|
|
353
|
-
let i = new
|
|
371
|
+
let i = new g(this.step, this.page, this.isRtl, this.isVertical).delta(n);
|
|
354
372
|
if (!i) return;
|
|
355
373
|
let { delta: a } = i;
|
|
356
374
|
if (a !== 0) {
|
|
@@ -365,23 +383,23 @@ var v = class extends g {
|
|
|
365
383
|
return e === this.$min ? "min" : e === this.$max ? "max" : null;
|
|
366
384
|
}
|
|
367
385
|
#i(e) {
|
|
368
|
-
return
|
|
386
|
+
return f(this.isVertical ? this.clientHeight : this.clientWidth, e);
|
|
369
387
|
}
|
|
370
388
|
#a(n, r, i, a) {
|
|
371
389
|
if (!this.$min || !this.$max) return;
|
|
372
|
-
let o = this.#t, c = this.#n,
|
|
373
|
-
i === "min" ?
|
|
374
|
-
let f = s(
|
|
375
|
-
if (this.style.setProperty("--min", String(
|
|
390
|
+
let o = this.#t, c = this.#n, l = u(n, o, c, this.step), d = u(r, o, c, this.step);
|
|
391
|
+
i === "min" ? l = Math.min(l, d) : d = Math.max(d, l), this.#e = i, this.setAttribute("data-active", i), this.$min.setAttribute("aria-valuenow", String(l)), this.$max.setAttribute("aria-valuenow", String(d)), this.$min.setAttribute("aria-valuemax", String(d)), this.$max.setAttribute("aria-valuemin", String(l)), this.setValuetext(this.$min, l), this.setValuetext(this.$max, d);
|
|
392
|
+
let f = s(l, o, c), p = s(d, o, c);
|
|
393
|
+
if (this.style.setProperty("--min", String(l)), this.style.setProperty("--max", String(d)), this.style.setProperty("--min-ratio", String(f)), this.style.setProperty("--max-ratio", String(p)), l === d ? this.setAttribute("data-collapsed", "") : this.removeAttribute("data-collapsed"), a) {
|
|
376
394
|
let n = i === "min" ? this.$min : this.$max;
|
|
377
395
|
t(this, e.SLIDER_CHANGE, {
|
|
378
|
-
min:
|
|
396
|
+
min: l,
|
|
379
397
|
max: d,
|
|
380
398
|
$thumb: n
|
|
381
399
|
}, { cancelable: !1 });
|
|
382
400
|
}
|
|
383
401
|
}
|
|
384
402
|
};
|
|
385
|
-
customElements.get("cinq-slider-range") || customElements.define("cinq-slider-range",
|
|
403
|
+
customElements.get("cinq-slider-range") || customElements.define("cinq-slider-range", y);
|
|
386
404
|
//#endregion
|
|
387
|
-
export {
|
|
405
|
+
export { v as Slider, y as SliderRange };
|
package/dist/slider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../src/slider.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;;;GAOG;AACH,qBAAa,MAAO,SAAQ,UAAU;;IACpC,sCAAsC;IACtC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAQ;IAElC,wDAAwD;IACxD,IAAI,WAAW,IAAI,MAAM,GAAG,IAAI,CAE/B;IAED,iDAAiD;IACjD,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,iDAAiD;IACjD,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,mDAAmD;IACnD,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,yDAAyD;IACzD,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,8CAA8C;IAC9C,IAAI,IAAI,IAAI;IAiBZ,4DAA4D;IAC5D,OAAO,IAAI,IAAI;IAUf,SAAS,CAAC,aAAa,IAAI,IAAI;IAM/B,oEAAoE;IACpE,SAAS,CAAC,IAAI,IAAI,IAAI;IAItB,qFAAqF;IACrF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,IAAI;IAM5D,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../src/slider.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;;;GAOG;AACH,qBAAa,MAAO,SAAQ,UAAU;;IACpC,sCAAsC;IACtC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAQ;IAElC,wDAAwD;IACxD,IAAI,WAAW,IAAI,MAAM,GAAG,IAAI,CAE/B;IAED,iDAAiD;IACjD,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,iDAAiD;IACjD,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,mDAAmD;IACnD,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,yDAAyD;IACzD,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,8CAA8C;IAC9C,IAAI,IAAI,IAAI;IAiBZ,4DAA4D;IAC5D,OAAO,IAAI,IAAI;IAUf,SAAS,CAAC,aAAa,IAAI,IAAI;IAM/B,oEAAoE;IACpE,SAAS,CAAC,IAAI,IAAI,IAAI;IAItB,qFAAqF;IACrF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,IAAI;IAM5D,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM;IAoB5E,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI;IAI5E,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;CAgEhD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agencecinq/slider",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.1",
|
|
4
4
|
"description": "Accessible, WAI-ARIA slider as a lightweight Web Component.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"vite": "^8.2.0",
|
|
30
30
|
"vite-plugin-dts": "^5.0.3",
|
|
31
|
-
"vitest": "^
|
|
32
|
-
"@agencecinq/utils": "7.
|
|
31
|
+
"vitest": "^4.1.11",
|
|
32
|
+
"@agencecinq/utils": "7.9.0"
|
|
33
33
|
},
|
|
34
34
|
"publishConfig": {
|
|
35
35
|
"access": "public"
|