@box-kite/react 2.2.6 → 2.2.8
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/.claude/rules/box-kite-rules.md +2 -0
- package/.claude/skills/box-kite/SKILL.md +2 -0
- package/.claude/skills/box-kite/references/extending.md +10 -0
- package/.claude/skills/box-kite/references/styling.md +3 -2
- package/.cursor/rules/box-kite.mdc +2 -0
- package/AGENTS.md +2 -0
- package/BOX_AI_CONTEXT.md +128 -2
- package/BOX_KITE_AI_CONTEXT.md +128 -2
- package/analytics.cjs +1 -0
- package/analytics.d.ts +10 -0
- package/analytics.mjs +121 -0
- package/behavior.cjs +1 -1
- package/behavior.mjs +42 -38
- package/box.cjs +1 -1
- package/box.d.ts +14 -0
- package/box.mjs +17 -16
- package/catalog.cjs +1 -1
- package/catalog.mjs +8 -0
- package/client.cjs +1 -1
- package/client.mjs +144 -113
- package/components/accordion.cjs +1 -1
- package/components/accordion.mjs +19 -10
- package/components/agent.cjs +1 -1
- package/components/agent.mjs +21 -8
- package/components/calendar.cjs +1 -1
- package/components/calendar.d.ts +3 -1
- package/components/calendar.mjs +154 -142
- package/components/combobox.cjs +1 -1
- package/components/combobox.mjs +184 -174
- package/components/dashboard.cjs +1 -1
- package/components/dashboard.mjs +183 -170
- package/components/dataGrid/models/columnModel.d.ts +1 -0
- package/components/dataGrid/models/gridModel.d.ts +18 -0
- package/components/dataGrid/models/headerCellModel.d.ts +1 -0
- package/components/dataGrid/models/rangeModel.d.ts +3 -0
- package/components/dataGrid.cjs +3 -3
- package/components/dataGrid.mjs +1015 -923
- package/components/dateField.cjs +1 -1
- package/components/dateField.mjs +165 -159
- package/components/datePicker.cjs +1 -1
- package/components/datePicker.mjs +198 -183
- package/components/dialog.cjs +1 -1
- package/components/dialog.mjs +38 -33
- package/components/dropdown.cjs +1 -1
- package/components/dropdown.mjs +107 -93
- package/components/form.cjs +1 -1
- package/components/form.mjs +22 -18
- package/components/menu.cjs +1 -1
- package/components/menu.d.ts +2 -0
- package/components/menu.mjs +196 -175
- package/components/overlay.cjs +1 -1
- package/components/overlay.mjs +7 -7
- package/components/popover.cjs +1 -1
- package/components/popover.mjs +4 -0
- package/components/radioGroup.cjs +1 -1
- package/components/radioGroup.mjs +10 -5
- package/components/semantics.d.ts +29 -29
- package/components/slider.cjs +1 -1
- package/components/slider.mjs +84 -83
- package/components/sortableList.cjs +1 -1
- package/components/sortableList.mjs +158 -150
- package/components/swipeItem.cjs +1 -1
- package/components/swipeItem.mjs +92 -84
- package/components/tabs.cjs +1 -1
- package/components/tabs.mjs +10 -5
- package/components/timeZoneSelect.cjs +1 -1
- package/components/timeZoneSelect.mjs +40 -35
- package/components/toaster.cjs +1 -1
- package/components/toaster.mjs +151 -113
- package/create/src/index.d.ts +1 -0
- package/create/src/options.d.ts +27 -0
- package/create/src/options.test.d.ts +1 -0
- package/create/src/packageManager.d.ts +5 -0
- package/create/src/project.d.ts +25 -0
- package/create/src/project.test.d.ts +1 -0
- package/create/templates/ts/designs/azure.d.ts +5 -0
- package/create/templates/ts/designs/ember.d.ts +5 -0
- package/create/templates/ts/designs/mono.d.ts +5 -0
- package/create/templates/ts/src/App.d.ts +2 -0
- package/create/templates/ts/src/design.d.ts +5 -0
- package/create/templates/ts/src/main.d.ts +0 -0
- package/dataGridDateParts.cjs +1 -1
- package/dataGridDateParts.mjs +56 -55
- package/dataGridList.cjs +1 -1
- package/dataGridList.mjs +437 -436
- package/docs/props.md +19 -19
- package/effects.cjs +1 -1
- package/effects.mjs +1 -1
- package/interactionListening.cjs +1 -0
- package/interactionListening.mjs +117 -0
- package/interactions.cjs +1 -0
- package/interactions.mjs +25 -0
- package/layer.cjs +1 -1
- package/layer.mjs +68 -66
- package/package.json +139 -70
- package/placement.cjs +1 -1
- package/placement.mjs +10 -10
- package/platform.cjs +1 -1
- package/platform.mjs +44 -25
- package/react/interactions/interactions.d.ts +30 -0
- package/react/popover/usePopoverLayer.d.ts +3 -0
- package/react/theme/theme.d.ts +9 -0
- package/react/theme/themeContext.d.ts +2 -0
- package/react/useStyles.d.ts +8 -1
- package/react-shared.cjs +1 -1
- package/react-shared.mjs +49 -48
- package/reporting.cjs +1 -0
- package/reporting.mjs +51 -0
- package/rsc.cjs +1 -1
- package/rsc.d.ts +3 -0
- package/rsc.mjs +1 -1
- package/scrolling.cjs +1 -1
- package/scrolling.mjs +1 -1
- package/supabase/functions/collect/index.d.ts +30 -0
- package/supabase/functions/collect/index.test.d.ts +1 -0
- package/utils/analytics/analytics.d.ts +72 -0
- package/utils/analytics/analyticsIdentity.d.ts +13 -0
- package/utils/interactions/componentAttribute.d.ts +6 -0
- package/utils/interactions/interactionChannel.d.ts +35 -0
- package/utils/interactions/interactionJson.d.ts +6 -0
- package/utils/interactions/interactionListening.d.ts +6 -0
- package/utils/interactions/interactionTypes.d.ts +224 -0
package/components/slider.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("../platform.cjs"),t=require("../box.cjs"),n=require("../behavior.cjs");let
|
|
1
|
+
"use client";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("../platform.cjs"),t=require("../box.cjs"),n=require("../behavior.cjs"),r=require("../reporting.cjs");let i=require("react"),a=require("react/jsx-runtime");var o;(function(e){function t(e){let t=String(Math.abs(e));if(t.includes(`e`))return 12;let n=t.indexOf(`.`);return n===-1?0:t.length-n-1}e.decimals=t;function n(e,t){return Number(e.toFixed(Math.min(t,15)))}function r(e,t,n){return Math.min(Math.max(e,t),n)}e.clamp=r;function i(e,i){let{min:a,max:o,step:s}=i,c=r(e,a,o);return s>0?r(n(a+Math.round((c-a)/s)*s,t(s)+t(a)),a,o):c}e.snap=i;function a(e,t,n){return n<=t?0:(r(e,t,n)-t)*(100/(n-t))}e.percent=a;function o(e,t,n){return`${Math.round(a(e,t,n)*100)/100}%`}e.percentage=o;function s(e){return typeof e==`number`?[e]:[...e]}e.thumbs=s;function c(e,t){return typeof e==`number`?t[0]:[...t]}e.shaped=c;function l(e,t,n,a){let o=t>0?e[t-1]:a.min,s=t<e.length-1?e[t+1]:a.max,c=[...e];return c[t]=r(i(n,a),o,s),c}e.move=l;function u(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}e.same=u;function d(e,t){let n=0,r=1/0;return e.forEach((e,i)=>{let a=Math.abs(e-t);a<=r&&(n=i,r=a)}),n}e.nearest=d;function f(e,t,n,r,i){let a=r===`vertical`?e.height===0?0:(e.bottom-n)/e.height:e.width===0?0:i?(e.right-t)/e.width:(t-e.left)/e.width;return Math.min(Math.max(a,0),1)}e.valueAt=f;function p(e,t=!1){if(e===`Home`)return{kind:`edge`,delta:-1};if(e===`End`)return{kind:`edge`,delta:1};if(e===`PageUp`)return{kind:`page`,delta:1};if(e===`PageDown`)return{kind:`page`,delta:-1};if(e===`ArrowUp`)return{kind:`step`,delta:1};if(e===`ArrowDown`)return{kind:`step`,delta:-1};if(e===`ArrowRight`)return{kind:`step`,delta:t?-1:1};if(e===`ArrowLeft`)return{kind:`step`,delta:t?1:-1}}e.moveFor=p;function m(e,t,n,r){if(t.kind===`edge`)return t.delta>0?n.max:n.min;let i=t.kind===`page`?r:n.step;return e+t.delta*i}e.moved=m})(o||={});var s=o,c=`data-index`;function l(e,t,n){return{min:e,max:t,step:n}}function u(e,t){return t?{insetBlockEnd:e}:{insetInlineStart:e}}function d(e,t,n){let r=e.length>1?Math.min(...e):t.min,i=Math.max(...e),a=s.percent(r,t.min,t.max),o=`${Math.round((s.percent(i,t.min,t.max)-a)*100)/100}%`;return n?{insetBlockEnd:`${Math.round(a*100)/100}%`,blockSize:o}:{insetInlineStart:`${Math.round(a*100)/100}%`,inlineSize:o}}function f(o){let{value:f,defaultValue:p,onValueChange:m,onValueCommit:h,min:g=0,max:_=100,step:v=1,largeStep:y=v*10,orientation:b=`horizontal`,disabled:x=!1,label:S,labelledBy:C,thumbLabels:w,format:T,name:E,props:D,...O}=o,k=(0,i.useRef)(null),A=(0,i.useRef)(null),j=(0,i.useRef)(null),M=(0,i.useRef)(!1),[N,P]=(0,i.useState)(!1),[F,I]=n.i({value:f,defaultValue:p??g,onChange:m}),L=l(g,_,v),R=b===`vertical`,z=s.thumbs(F),B=n.o(F),V=r.r(h,`slider`,`valueCommit`),H=n.a((e,t)=>{I(t=>s.same(s.thumbs(t),e)?t:s.shaped(t,e),t)}),U=t=>{let n=A.current;if(!n)return;let r=s.valueAt(n.getBoundingClientRect(),t.clientX,t.clientY,b,e.p(n));return g+r*(_-g)},W=e=>k.current?.querySelectorAll(`[role="slider"]`)[e],G=n.a(e=>{if(x||e.button!==0||e.defaultPrevented)return;let t=U(e);if(t===void 0)return;let n=s.thumbs(B.current),r=s.nearest(n,t);j.current=r,e.preventDefault(),e.currentTarget.setPointerCapture?.(e.pointerId),W(r)?.focus(),H(s.move(n,r,t,L),{reason:`pointer`,event:e})}),K=n.a(e=>{let t=j.current;if(t===null)return;let n=U(e);n!==void 0&&(P(!0),H(s.move(s.thumbs(B.current),t,n,L),{reason:`pointer`,event:e}))}),q=n.a(e=>{j.current!==null&&(j.current=null,P(!1),e.currentTarget.releasePointerCapture?.(e.pointerId),V(B.current,{reason:`pointer`,event:e}))}),J=n.a(t=>{if(x||t.defaultPrevented)return;let n=t.target?.closest(`[role="slider"]`),r=Number(n?.getAttribute(c)??-1);if(!n||r<0)return;let i=s.moveFor(t.key,e.p(n));if(!i)return;t.preventDefault(),M.current=!0,P(!0);let a=s.thumbs(B.current);H(s.move(a,r,s.moved(a[r],i,L,y),L),{reason:`keyboard`,event:t})}),Y=n.a(e=>{M.current&&(M.current=!1,P(!1),V(B.current,{reason:`keyboard`,event:e}))}),X=z.length>1;return(0,a.jsxs)(t.default,{ref:k,component:`slider`,...O,variant:[O.variant,{vertical:R,disabled:x}],props:{role:X?`group`:void 0,"aria-label":X?S:void 0,"aria-labelledby":X?C:void 0,...D,onPointerDown:G,onPointerMove:K,onPointerUp:q,onPointerCancel:q,onKeyDown:J,onKeyUp:Y},children:[(0,a.jsx)(t.default,{ref:A,component:`slider.track`,variant:{vertical:R},children:(0,a.jsx)(t.default,{component:`slider.fill`,variant:{vertical:R,tracking:N},style:d(z,L,R)})}),z.map((e,n)=>(0,a.jsx)(t.default,{component:`slider.thumb`,variant:{vertical:R,disabled:x,tracking:N},style:u(s.percentage(e,g,_),R),props:{role:`slider`,tabIndex:x?-1:0,"aria-valuemin":g,"aria-valuemax":_,"aria-valuenow":e,"aria-valuetext":T?.(e),"aria-orientation":b,"aria-label":w?.[n]??(X?void 0:S),"aria-labelledby":w?.[n]||X?void 0:C,"aria-disabled":x||void 0,[c]:n}},n)),E!==void 0&&z.map((e,t)=>(0,a.jsx)(`input`,{type:`hidden`,name:E,value:e,readOnly:!0},t))]})}var p=f;p.displayName=`Slider`,exports.default=p;
|
package/components/slider.mjs
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
2
|
+
import { p as e } from "../platform.mjs";
|
|
3
3
|
import t from "../box.mjs";
|
|
4
4
|
import { a as n, i as r, o as i } from "../behavior.mjs";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
5
|
+
import { r as a } from "../reporting.mjs";
|
|
6
|
+
import { useRef as o, useState as s } from "react";
|
|
7
|
+
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
7
8
|
//#region src/utils/slider/sliderUtils.ts
|
|
8
|
-
var
|
|
9
|
+
var u;
|
|
9
10
|
(function(e) {
|
|
10
11
|
function t(e) {
|
|
11
12
|
let t = String(Math.abs(e));
|
|
@@ -105,20 +106,20 @@ var l;
|
|
|
105
106
|
return e + t.delta * i;
|
|
106
107
|
}
|
|
107
108
|
e.moved = m;
|
|
108
|
-
})(
|
|
109
|
-
var
|
|
110
|
-
function
|
|
109
|
+
})(u ||= {});
|
|
110
|
+
var d = u, f = "data-index";
|
|
111
|
+
function p(e, t, n) {
|
|
111
112
|
return {
|
|
112
113
|
min: e,
|
|
113
114
|
max: t,
|
|
114
115
|
step: n
|
|
115
116
|
};
|
|
116
117
|
}
|
|
117
|
-
function
|
|
118
|
+
function m(e, t) {
|
|
118
119
|
return t ? { insetBlockEnd: e } : { insetInlineStart: e };
|
|
119
120
|
}
|
|
120
|
-
function
|
|
121
|
-
let r = e.length > 1 ? Math.min(...e) : t.min, i = Math.max(...e), a =
|
|
121
|
+
function h(e, t, n) {
|
|
122
|
+
let r = e.length > 1 ? Math.min(...e) : t.min, i = Math.max(...e), a = d.percent(r, t.min, t.max), o = `${Math.round((d.percent(i, t.min, t.max) - a) * 100) / 100}%`;
|
|
122
123
|
return n ? {
|
|
123
124
|
insetBlockEnd: `${Math.round(a * 100) / 100}%`,
|
|
124
125
|
blockSize: o
|
|
@@ -127,124 +128,124 @@ function m(e, t, n) {
|
|
|
127
128
|
inlineSize: o
|
|
128
129
|
};
|
|
129
130
|
}
|
|
130
|
-
function
|
|
131
|
-
let { value:
|
|
132
|
-
value:
|
|
133
|
-
defaultValue:
|
|
134
|
-
onChange:
|
|
135
|
-
}),
|
|
136
|
-
|
|
137
|
-
}),
|
|
138
|
-
let n =
|
|
131
|
+
function g(u) {
|
|
132
|
+
let { value: g, defaultValue: _, onValueChange: v, onValueCommit: y, min: b = 0, max: x = 100, step: S = 1, largeStep: C = S * 10, orientation: w = "horizontal", disabled: T = !1, label: E, labelledBy: D, thumbLabels: O, format: k, name: A, props: j, ...M } = u, N = o(null), P = o(null), F = o(null), I = o(!1), [L, R] = s(!1), [z, B] = r({
|
|
133
|
+
value: g,
|
|
134
|
+
defaultValue: _ ?? b,
|
|
135
|
+
onChange: v
|
|
136
|
+
}), V = p(b, x, S), H = w === "vertical", U = d.thumbs(z), W = i(z), G = a(y, "slider", "valueCommit"), K = n((e, t) => {
|
|
137
|
+
B((t) => d.same(d.thumbs(t), e) ? t : d.shaped(t, e), t);
|
|
138
|
+
}), q = (t) => {
|
|
139
|
+
let n = P.current;
|
|
139
140
|
if (!n) return;
|
|
140
|
-
let r =
|
|
141
|
-
return
|
|
142
|
-
},
|
|
143
|
-
if (
|
|
144
|
-
let t =
|
|
141
|
+
let r = d.valueAt(n.getBoundingClientRect(), t.clientX, t.clientY, w, e(n));
|
|
142
|
+
return b + r * (x - b);
|
|
143
|
+
}, J = (e) => N.current?.querySelectorAll("[role=\"slider\"]")[e], Y = n((e) => {
|
|
144
|
+
if (T || e.button !== 0 || e.defaultPrevented) return;
|
|
145
|
+
let t = q(e);
|
|
145
146
|
if (t === void 0) return;
|
|
146
|
-
let n =
|
|
147
|
-
|
|
147
|
+
let n = d.thumbs(W.current), r = d.nearest(n, t);
|
|
148
|
+
F.current = r, e.preventDefault(), e.currentTarget.setPointerCapture?.(e.pointerId), J(r)?.focus(), K(d.move(n, r, t, V), {
|
|
148
149
|
reason: "pointer",
|
|
149
150
|
event: e
|
|
150
151
|
});
|
|
151
|
-
}),
|
|
152
|
-
let t =
|
|
152
|
+
}), X = n((e) => {
|
|
153
|
+
let t = F.current;
|
|
153
154
|
if (t === null) return;
|
|
154
|
-
let n =
|
|
155
|
-
n !== void 0 && (
|
|
155
|
+
let n = q(e);
|
|
156
|
+
n !== void 0 && (R(!0), K(d.move(d.thumbs(W.current), t, n, V), {
|
|
156
157
|
reason: "pointer",
|
|
157
158
|
event: e
|
|
158
159
|
}));
|
|
159
|
-
}),
|
|
160
|
-
|
|
160
|
+
}), Z = n((e) => {
|
|
161
|
+
F.current !== null && (F.current = null, R(!1), e.currentTarget.releasePointerCapture?.(e.pointerId), G(W.current, {
|
|
161
162
|
reason: "pointer",
|
|
162
163
|
event: e
|
|
163
164
|
}));
|
|
164
|
-
}),
|
|
165
|
-
if (
|
|
166
|
-
let n = t.target?.closest("[role=\"slider\"]"), r = Number(n?.getAttribute(
|
|
165
|
+
}), Q = n((t) => {
|
|
166
|
+
if (T || t.defaultPrevented) return;
|
|
167
|
+
let n = t.target?.closest("[role=\"slider\"]"), r = Number(n?.getAttribute(f) ?? -1);
|
|
167
168
|
if (!n || r < 0) return;
|
|
168
|
-
let i =
|
|
169
|
+
let i = d.moveFor(t.key, e(n));
|
|
169
170
|
if (!i) return;
|
|
170
|
-
t.preventDefault(),
|
|
171
|
-
let a =
|
|
172
|
-
|
|
171
|
+
t.preventDefault(), I.current = !0, R(!0);
|
|
172
|
+
let a = d.thumbs(W.current);
|
|
173
|
+
K(d.move(a, r, d.moved(a[r], i, V, C), V), {
|
|
173
174
|
reason: "keyboard",
|
|
174
175
|
event: t
|
|
175
176
|
});
|
|
176
|
-
}),
|
|
177
|
-
|
|
177
|
+
}), ee = n((e) => {
|
|
178
|
+
I.current && (I.current = !1, R(!1), G(W.current, {
|
|
178
179
|
reason: "keyboard",
|
|
179
180
|
event: e
|
|
180
181
|
}));
|
|
181
|
-
}), $ =
|
|
182
|
-
return /* @__PURE__ */
|
|
183
|
-
ref:
|
|
182
|
+
}), $ = U.length > 1;
|
|
183
|
+
return /* @__PURE__ */ l(t, {
|
|
184
|
+
ref: N,
|
|
184
185
|
component: "slider",
|
|
185
|
-
...
|
|
186
|
-
variant: [
|
|
187
|
-
vertical:
|
|
188
|
-
disabled:
|
|
186
|
+
...M,
|
|
187
|
+
variant: [M.variant, {
|
|
188
|
+
vertical: H,
|
|
189
|
+
disabled: T
|
|
189
190
|
}],
|
|
190
191
|
props: {
|
|
191
192
|
role: $ ? "group" : void 0,
|
|
192
|
-
"aria-label": $ ?
|
|
193
|
-
"aria-labelledby": $ ?
|
|
194
|
-
...
|
|
195
|
-
onPointerDown:
|
|
196
|
-
onPointerMove:
|
|
197
|
-
onPointerUp:
|
|
198
|
-
onPointerCancel:
|
|
199
|
-
onKeyDown:
|
|
200
|
-
onKeyUp:
|
|
193
|
+
"aria-label": $ ? E : void 0,
|
|
194
|
+
"aria-labelledby": $ ? D : void 0,
|
|
195
|
+
...j,
|
|
196
|
+
onPointerDown: Y,
|
|
197
|
+
onPointerMove: X,
|
|
198
|
+
onPointerUp: Z,
|
|
199
|
+
onPointerCancel: Z,
|
|
200
|
+
onKeyDown: Q,
|
|
201
|
+
onKeyUp: ee
|
|
201
202
|
},
|
|
202
203
|
children: [
|
|
203
|
-
/* @__PURE__ */
|
|
204
|
-
ref:
|
|
204
|
+
/* @__PURE__ */ c(t, {
|
|
205
|
+
ref: P,
|
|
205
206
|
component: "slider.track",
|
|
206
|
-
variant: { vertical:
|
|
207
|
-
children: /* @__PURE__ */
|
|
207
|
+
variant: { vertical: H },
|
|
208
|
+
children: /* @__PURE__ */ c(t, {
|
|
208
209
|
component: "slider.fill",
|
|
209
210
|
variant: {
|
|
210
|
-
vertical:
|
|
211
|
-
tracking:
|
|
211
|
+
vertical: H,
|
|
212
|
+
tracking: L
|
|
212
213
|
},
|
|
213
|
-
style:
|
|
214
|
+
style: h(U, V, H)
|
|
214
215
|
})
|
|
215
216
|
}),
|
|
216
|
-
|
|
217
|
+
U.map((e, n) => /* @__PURE__ */ c(t, {
|
|
217
218
|
component: "slider.thumb",
|
|
218
219
|
variant: {
|
|
219
|
-
vertical:
|
|
220
|
-
disabled:
|
|
221
|
-
tracking:
|
|
220
|
+
vertical: H,
|
|
221
|
+
disabled: T,
|
|
222
|
+
tracking: L
|
|
222
223
|
},
|
|
223
|
-
style:
|
|
224
|
+
style: m(d.percentage(e, b, x), H),
|
|
224
225
|
props: {
|
|
225
226
|
role: "slider",
|
|
226
|
-
tabIndex:
|
|
227
|
-
"aria-valuemin":
|
|
228
|
-
"aria-valuemax":
|
|
227
|
+
tabIndex: T ? -1 : 0,
|
|
228
|
+
"aria-valuemin": b,
|
|
229
|
+
"aria-valuemax": x,
|
|
229
230
|
"aria-valuenow": e,
|
|
230
|
-
"aria-valuetext":
|
|
231
|
-
"aria-orientation":
|
|
232
|
-
"aria-label":
|
|
233
|
-
"aria-labelledby":
|
|
234
|
-
"aria-disabled":
|
|
235
|
-
[
|
|
231
|
+
"aria-valuetext": k?.(e),
|
|
232
|
+
"aria-orientation": w,
|
|
233
|
+
"aria-label": O?.[n] ?? ($ ? void 0 : E),
|
|
234
|
+
"aria-labelledby": O?.[n] || $ ? void 0 : D,
|
|
235
|
+
"aria-disabled": T || void 0,
|
|
236
|
+
[f]: n
|
|
236
237
|
}
|
|
237
238
|
}, n)),
|
|
238
|
-
|
|
239
|
+
A !== void 0 && U.map((e, t) => /* @__PURE__ */ c("input", {
|
|
239
240
|
type: "hidden",
|
|
240
|
-
name:
|
|
241
|
+
name: A,
|
|
241
242
|
value: e,
|
|
242
243
|
readOnly: !0
|
|
243
244
|
}, t))
|
|
244
245
|
]
|
|
245
246
|
});
|
|
246
247
|
}
|
|
247
|
-
var
|
|
248
|
-
|
|
248
|
+
var _ = g;
|
|
249
|
+
_.displayName = "Slider";
|
|
249
250
|
//#endregion
|
|
250
|
-
export {
|
|
251
|
+
export { _ as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("../react-shared.cjs"),t=require("../effects.cjs"),n=require("../box.cjs"),r=require("../behavior.cjs"),i=require("./svg.cjs"),
|
|
1
|
+
"use client";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("../react-shared.cjs"),t=require("../effects.cjs"),n=require("../box.cjs"),r=require("../behavior.cjs"),i=require("../reporting.cjs"),a=require("./svg.cjs"),o=require("./visuallyHidden.cjs"),s=require("../scrolling.cjs"),c=require("./list.cjs");let l=require("react"),u=require("react/jsx-runtime");var d;(function(e){e.SLOP=4;function t(e){return e.top+e.height/2}function n(e,n,r){let i=e[n];if(!i)return n;let a=t(i)+r,o=n;if(r>0)for(let r=n+1;r<e.length&&a>t(e[r]);r++)o=r;else for(let r=n-1;r>=0&&a<t(e[r]);r--)o=r;return o}e.targetIndex=n;function r(e,t){let n=e[t];if(!n)return 0;let r=e.length>1?Math.max(0,e[1].top-e[0].top-e[0].height):0;return n.height+r}e.pitchOf=r;function i(e,t,n,i){return t<n&&i>t&&i<=n?-r(e,t):n<t&&i>=n&&i<t?r(e,t):0}e.shiftOf=i;function a(e,t,n){let r=e.slice();if(t===n||t<0||t>=r.length)return r;let[i]=r.splice(t,1);return r.splice(Math.max(0,Math.min(n,r.length)),0,i),r}e.move=a;function o(e,t,n){switch(e){case`ArrowUp`:return Math.max(0,t-1);case`ArrowDown`:return Math.min(n-1,t+1);case`Home`:return 0;case`End`:return n-1;default:return null}}e.keyTarget=o})(d||={});var f=d,p=(0,l.createContext)(null),m=(0,l.createContext)(null),h=48,g=12,_=`:scope > [data-sortable-value]`;function v(e){return e?Array.from(e.querySelectorAll(_)):[]}function y(e){return v(e).map(e=>e.dataset.sortableValue??``)}function b(e){return new Map(v(e).map(e=>[e.dataset.sortableValue??``,e.getBoundingClientRect().top]))}function x(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function S(e,n){let{onOrderChange:a,onOrderCommit:d,children:m,variant:_,props:S,...C}=e,w=(0,l.useRef)(null),T=(0,l.useRef)(null),E=(0,l.useRef)(null),[D,O]=(0,l.useState)(null),[k,A]=(0,l.useState)(0),[j,M]=(0,l.useState)(!1),[N,P]=(0,l.useState)(``),F=`${(0,l.useId)()}-sortable`,I=r.o(D),L=i.r(a,`sortableList`,`orderChange`),R=i.r(d,`sortableList`,`orderCommit`),z=i.i(`sortableList`),ee=(0,l.useCallback)(e=>{w.current=e,typeof n==`function`?n(e):n&&(n.current=e)},[n]),B=(e,t)=>`position ${e.indexOf(t)+1} of ${e.length}`,V=(e,t)=>{E.current=b(w.current),L(e,t)};t.n(()=>{let e=E.current;if(e){E.current=null;for(let t of v(w.current)){let n=e.get(t.dataset.sortableValue??``),r=n===void 0?0:n-t.getBoundingClientRect().top,i=parseFloat(getComputedStyle(t).transitionDuration)*1e3||0;Math.abs(r)<1||i===0||typeof t.animate!=`function`||t.animate([{translate:`0 ${r}px`},{translate:`0 0`}],{duration:i,easing:`ease-out`})}}}),(0,l.useEffect)(()=>{if(!j)return;let e=requestAnimationFrame(()=>M(!1));return()=>cancelAnimationFrame(e)},[j]),t.n(()=>{if(!D||D.pointer)return;let e=v(w.current).find(e=>e.dataset.sortableValue===D.value)?.querySelector(`[data-sortable-handle]`);e&&e.ownerDocument.activeElement!==e&&e.focus()});let H=r.a((e,t)=>{let n=e.pointer,r=w.current;if(!n||!r)return;n.lastY=t;let i=t-r.getBoundingClientRect().top-(n.startY-n.startTop),a=n.order.indexOf(e.value);n.to=f.targetIndex(n.slots,a,i),A(i)}),te=(e,t)=>{let n=w.current;if(!n)return;let r=n.getBoundingClientRect().top,i=v(n),a=i.map(e=>e.dataset.sortableValue??``),o=i.map(e=>{let t=e.getBoundingClientRect();return{top:t.top-r,height:t.height}}),s={value:t.value,name:t.name,origin:a,pointer:{id:t.id,startY:t.y,startTop:r,lastY:e.clientY,slots:o,order:a,to:a.indexOf(t.value)}};O(s),H(s,e.clientY)},U=D?.pointer!==void 0;(0,l.useEffect)(()=>{if(!U)return;let e=s.t(w.current),t=0,n=()=>{let r=I.current;if(r?.pointer){let t=r.pointer.lastY,n=e?e.getBoundingClientRect().top:0,i=e?e.getBoundingClientRect().bottom:window.innerHeight,a=t<n+h?-12:t>i-h?g:0;a&&((e??window).scrollBy(0,a),H(r,t))}t=requestAnimationFrame(n)};return t=requestAnimationFrame(n),()=>cancelAnimationFrame(t)},[U,H,I]);let W=(e,t,n)=>{let r=y(w.current);O({value:e,name:t,origin:r}),z(`grab`,e,{reason:n.type===`keydown`?`keyboard`:`pointer`,event:n,from:r.indexOf(e)}),P(`${t} picked up at ${B(r,e)}. Use the arrow keys to move it, Enter to drop it.`),n.preventDefault()},G=(e,t,n=y(w.current))=>{let r=n.indexOf(e.value);O(null),R(n,{reason:`keyboard`,event:t,value:e.value,from:e.origin.indexOf(e.value),to:r}),P(`${e.name} dropped at ${B(n,e.value)}.`)},K=r.a((e,t)=>{let n=y(w.current);z(`grabCancel`,e.value,{reason:t.type===`keydown`?`escape`:t.type===`blur`?`blur`:`pointercancel`,event:t}),O(null),A(0),x(n,e.origin)||V(e.origin,{reason:e.pointer?`pointer`:`keyboard`,event:t,value:e.value,from:n.indexOf(e.value),to:e.origin.indexOf(e.value)}),P(`${e.name} put back at ${B(e.origin,e.value)}.`)}),q=(e,t,n)=>{let r=y(w.current),i=r.indexOf(e.value);if(i<0||t===i)return r;let a=f.move(r,i,t);return V(a,{reason:`keyboard`,event:n,value:e.value,from:i,to:t}),P(`${e.name}, ${B(a,e.value)}.`),a},J=r.a((e,t,n)=>{e.button!==0||e.defaultPrevented||(e.preventDefault(),e.currentTarget.focus(),e.currentTarget.setPointerCapture?.(e.pointerId),T.current={id:e.pointerId,x:e.clientX,y:e.clientY,value:t,name:n})}),Y=r.a(e=>{let t=I.current;if(t?.pointer&&t.pointer.id===e.pointerId){H(t,e.clientY);return}let n=T.current;!n||n.id!==e.pointerId||Math.hypot(e.clientX-n.x,e.clientY-n.y)<f.SLOP||(T.current=null,te(e,n))}),X=r.a(e=>{let t=T.current;T.current=null;let n=I.current;if(t&&t.id===e.pointerId&&e.type===`pointerup`){n&&!n.pointer?n.value===t.value&&G(n,e):W(t.value,t.name,e);return}let r=n?.pointer;if(!n||!r||r.id!==e.pointerId)return;if(e.currentTarget.releasePointerCapture?.(e.pointerId),M(!0),e.type===`pointercancel`){E.current=b(w.current),K(n,e);return}let i=r.order.indexOf(n.value),a=f.move(r.order,i,r.to),o={reason:`pointer`,event:e,value:n.value,from:i,to:r.to};E.current=b(w.current),O(null),A(0),r.to!==i&&L(a,o),R(a,o),P(`${n.name} dropped at ${B(a,n.value)}.`)}),Z=r.a((e,t,n)=>{if(e.defaultPrevented)return;let r=I.current,i=r&&r.value===t&&!r.pointer?r:void 0;if(!i){(e.key===`Enter`||e.key===` `)&&W(t,n,e);return}if(e.key===`Escape`){e.preventDefault(),K(i,e);return}if(e.key===`Enter`||e.key===` `){e.preventDefault(),G(i,e);return}let a=y(w.current),o=f.keyTarget(e.key,a.indexOf(t),a.length);o!==null&&(e.preventDefault(),q(i,o,e))}),Q=r.a(e=>{setTimeout(()=>{let t=I.current,n=w.current;!t||t.pointer||t.value!==e||!n||n.ownerDocument.activeElement?.closest(`[data-sortable-value]`)?.getAttribute(`data-sortable-value`)!==e&&K(t,new Event(`blur`))})}),$=e=>{let t=I.current;if(!t||t.pointer||!(e.target instanceof Element))return null;let n=e.target.closest(`[data-sortable-value]`);return n&&n.parentElement===w.current&&n.dataset.sortableValue!==t.value?n:null},ne=e=>{$(e)&&e.preventDefault()},re=e=>{let t=$(e),n=I.current;!t||!n||(e.preventDefault(),e.stopPropagation(),G(n,e,q(n,y(w.current).indexOf(t.dataset.sortableValue??``),e)))},ie=(0,l.useMemo)(()=>{let e=D?.pointer,t=e?e.order.indexOf(D.value):-1;return{heldOf:e=>D&&D.value===e?D.pointer?`pointer`:`keyboard`:void 0,translateOf:n=>{if(!e)return;if(n===D.value)return`0 ${Math.round(k)}px`;let r=f.shiftOf(e.slots,t,e.to,e.order.indexOf(n));return r?`0 ${r}px`:void 0},settling:j,instructionsId:F,handleProps:(e,t)=>({type:`button`,"data-sortable-handle":``,"aria-label":`Move ${t}`,"aria-pressed":D?.value===e,"aria-describedby":F,onPointerDown:n=>J(n,e,t),onPointerMove:Y,onPointerUp:X,onPointerCancel:X,onKeyDown:n=>Z(n,e,t),onBlur:()=>Q(e)})}},[D,k,j,F,J,Y,X,Z,Q]);return(0,u.jsxs)(p.Provider,{value:ie,children:[(0,u.jsx)(c.default,{ref:ee,...C,variant:_,userSelect:U?`none`:void 0,props:{...S,onMouseDownCapture:ne,onClickCapture:re},children:m}),(0,u.jsx)(o.default,{props:{role:`status`},children:N}),(0,u.jsx)(o.default,{id:F,children:`Press Enter or Space to pick the item up, the arrow keys to move it, Enter to drop it and Escape to put it back.`})]})}function C(e,t){let{value:n,label:r,disabled:i=!1,variant:a,props:o,...s}=e,d=(0,l.useContext)(p),f=d?.heldOf(n),h=d?.translateOf(n),g=(0,l.useMemo)(()=>({value:n,name:r??n,disabled:i}),[n,r,i]);return(0,u.jsx)(m.Provider,{value:g,children:(0,u.jsx)(c.default.Item,{ref:t,...s,variant:[a,{lifted:f===`pointer`,grabbed:f===`keyboard`,settling:d?.settling??!1}],style:h?{translate:h}:void 0,props:{...o,"data-sortable-value":n}})})}function w(){return(0,u.jsx)(a.Svg,{viewBox:`0 0 16 16`,width:`1rem`,fill:`currentColor`,children:[5,11].flatMap(e=>[3,8,13].map(t=>(0,u.jsx)(a.Circle,{cx:e,cy:t,r:1.4},`${e}-${t}`)))})}function T(e,t){let{children:r,variant:i,props:a,...o}=e,s=(0,l.useContext)(p),c=(0,l.useContext)(m),d=c&&s?s.handleProps(c.value,c.name):{};return n.useBoxElement({tag:`button`,component:`sortableList.handle`,display:`flex`,ai:`center`,jc:`center`,flexShrink:0,width:10,height:10,position:`relative`,zIndex:1,css:{touchAction:`none`},...o,variant:[i,{grabbed:c?s?.heldOf(c.value)!==void 0:!1}],props:{...d,...c?.disabled?{disabled:!0}:{},...a},children:r??(0,u.jsx)(w,{})},t)}var E=e.f(S,`SortableList`);E.Item=e.f(C,`SortableList.Item`),E.Handle=e.f(T,`SortableList.Handle`),exports.SortableUtils=f,exports.default=E;
|