cursedbelt 5.85.0 → 5.85.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/react/lib/overlayMotion.d.ts +8 -2
- package/dist/react/lib/overlayMotion.d.ts.map +1 -1
- package/dist/react/lib/overlayMotion.js +18 -4
- package/dist/react/lib/overlayMotion.js.map +1 -1
- package/dist/styles-areas/core.css +8 -8
- package/dist/styles-utilities.css +3 -0
- package/package.json +1 -1
- package/src/react/lib/overlayMotion.ts +19 -4
- package/src/styles-areas/core.css +8 -8
- package/src/styles-utilities.css +3 -0
|
@@ -13,6 +13,12 @@
|
|
|
13
13
|
* simply there. The animation still runs for 0s, so Radix's `Presence` sees its `animationend`
|
|
14
14
|
* and unmounts on close exactly as it does with motion on.
|
|
15
15
|
*
|
|
16
|
+
* 🔴 A closing overlay lets the pointer through (`CLOSED_PASSTHROUGH`, in every constant below). Its
|
|
17
|
+
* exit runs for the whole duration at near-zero opacity, still mounted, and until then it took every
|
|
18
|
+
* click and drag over it: measured in desk (forge task 3488), a drag begun 0.2s after picking a menu
|
|
19
|
+
* item landed on the fading menu's next item instead of the canvas beneath. `e2e/motion.spec.ts`
|
|
20
|
+
* reads `pointer-events` at the instant `data-state` turns `closed`.
|
|
21
|
+
*
|
|
16
22
|
* Each overlay's own direction stays its own: an anchored panel comes from its anchor's side, a
|
|
17
23
|
* drawer slides its whole width in from its edge. What they share is the curve and the speed.
|
|
18
24
|
*
|
|
@@ -32,6 +38,6 @@ export declare const DIALOG_MOTION: string;
|
|
|
32
38
|
export declare const SCRIM_MOTION: string;
|
|
33
39
|
/** A drawer's SPEED and curve. Its slide (`slide-in-from-left` …) is its edge's, so it stays at
|
|
34
40
|
* the call site; this is what makes it ease like every other overlay instead of tw-animate's
|
|
35
|
-
* 150ms `ease
|
|
36
|
-
export declare const DRAWER_MOTION
|
|
41
|
+
* 150ms `ease`, and lets the pointer through while it closes. */
|
|
42
|
+
export declare const DRAWER_MOTION: string;
|
|
37
43
|
//# sourceMappingURL=overlayMotion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlayMotion.d.ts","sourceRoot":"","sources":["../../../src/react/lib/overlayMotion.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"overlayMotion.d.ts","sourceRoot":"","sources":["../../../src/react/lib/overlayMotion.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAOH;;4FAE4F;AAC5F,eAAO,MAAM,cAAc,QAMsD,CAAC;AAElF,iGAAiG;AACjG,eAAO,MAAM,eAAe,QAOqD,CAAC;AAElF;kFACkF;AAClF,eAAO,MAAM,aAAa,QAIN,CAAC;AAErB,2FAA2F;AAC3F,eAAO,MAAM,YAAY,QAIL,CAAC;AAErB;;kEAEkE;AAClE,eAAO,MAAM,aAAa,QAA0G,CAAC"}
|
|
@@ -13,18 +13,29 @@
|
|
|
13
13
|
* simply there. The animation still runs for 0s, so Radix's `Presence` sees its `animationend`
|
|
14
14
|
* and unmounts on close exactly as it does with motion on.
|
|
15
15
|
*
|
|
16
|
+
* 🔴 A closing overlay lets the pointer through (`CLOSED_PASSTHROUGH`, in every constant below). Its
|
|
17
|
+
* exit runs for the whole duration at near-zero opacity, still mounted, and until then it took every
|
|
18
|
+
* click and drag over it: measured in desk (forge task 3488), a drag begun 0.2s after picking a menu
|
|
19
|
+
* item landed on the fading menu's next item instead of the canvas beneath. `e2e/motion.spec.ts`
|
|
20
|
+
* reads `pointer-events` at the instant `data-state` turns `closed`.
|
|
21
|
+
*
|
|
16
22
|
* Each overlay's own direction stays its own: an anchored panel comes from its anchor's side, a
|
|
17
23
|
* drawer slides its whole width in from its edge. What they share is the curve and the speed.
|
|
18
24
|
*
|
|
19
25
|
* 🔴 Literals only — Tailwind's JIT reads source text (see `tapTarget.ts`). `e2e/motion.spec.ts`
|
|
20
26
|
* opens each primitive and reads its running animation from `getAnimations()`.
|
|
21
27
|
*/
|
|
28
|
+
/** What every overlay does once it is closing: nothing under the pointer. Important, because
|
|
29
|
+
* Radix writes `pointer-events: auto` INLINE on a dialog's overlay (the body is `none` under a
|
|
30
|
+
* modal) and an inline style beats any class — the scrim kept the pointer with the plain one. */
|
|
31
|
+
const CLOSED_PASSTHROUGH = 'data-[state=closed]:pointer-events-none!';
|
|
22
32
|
/** A tooltip: the fast speed, a fade and a 4px rise from its trigger's side. Only a DELAYED
|
|
23
33
|
* open animates — moving between triggers inside the skip-delay window (`instant-open`) swaps
|
|
24
34
|
* the bubble in place, the way Linear's do, instead of re-fading it on every neighbour. */
|
|
25
35
|
export const TOOLTIP_MOTION = 'duration-[var(--duration-fast)] ease-[var(--ease-out)] motion-reduce:duration-0 ' +
|
|
26
36
|
'data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-[0.985] ' +
|
|
27
37
|
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 ' +
|
|
38
|
+
CLOSED_PASSTHROUGH + ' ' +
|
|
28
39
|
'data-[side=bottom]:slide-in-from-top-1 data-[side=top]:slide-in-from-bottom-1 ' +
|
|
29
40
|
'data-[side=left]:slide-in-from-right-1 data-[side=right]:slide-in-from-left-1';
|
|
30
41
|
/** An anchored panel (popover, menu, select, hover card): base speed, rising from its anchor. */
|
|
@@ -32,19 +43,22 @@ export const ANCHORED_MOTION = 'duration-[var(--duration-base)] ease-[var(--ease
|
|
|
32
43
|
'data-[state=open]:animate-in data-[state=closed]:animate-out ' +
|
|
33
44
|
'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 ' +
|
|
34
45
|
'data-[state=closed]:zoom-out-[0.985] data-[state=open]:zoom-in-[0.985] ' +
|
|
46
|
+
CLOSED_PASSTHROUGH + ' ' +
|
|
35
47
|
'data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 ' +
|
|
36
48
|
'data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2';
|
|
37
49
|
/** A dialog's panel (Modal, ConfirmDialog, PromptDialog, Lightbox, the palette, a full-screen
|
|
38
50
|
* dialog): slow speed, rising 8px from below and from 0.985 — `animate-rise`. */
|
|
39
51
|
export const DIALOG_MOTION = 'duration-[var(--duration-slow)] ease-[var(--ease-out)] motion-reduce:duration-0 ' +
|
|
40
52
|
'data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-[0.985] data-[state=open]:slide-in-from-bottom-2 ' +
|
|
41
|
-
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-[0.985]'
|
|
53
|
+
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-[0.985] ' +
|
|
54
|
+
CLOSED_PASSTHROUGH;
|
|
42
55
|
/** The scrim behind a dialog or drawer: a fade at the speed of the panel it sits under. */
|
|
43
56
|
export const SCRIM_MOTION = 'duration-[var(--duration-slow)] ease-[var(--ease-out)] motion-reduce:duration-0 ' +
|
|
44
57
|
'data-[state=open]:animate-in data-[state=open]:fade-in-0 ' +
|
|
45
|
-
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0'
|
|
58
|
+
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 ' +
|
|
59
|
+
CLOSED_PASSTHROUGH;
|
|
46
60
|
/** A drawer's SPEED and curve. Its slide (`slide-in-from-left` …) is its edge's, so it stays at
|
|
47
61
|
* the call site; this is what makes it ease like every other overlay instead of tw-animate's
|
|
48
|
-
* 150ms `ease
|
|
49
|
-
export const DRAWER_MOTION = 'duration-[var(--duration-slow)] ease-[var(--ease-out)] motion-reduce:duration-0';
|
|
62
|
+
* 150ms `ease`, and lets the pointer through while it closes. */
|
|
63
|
+
export const DRAWER_MOTION = 'duration-[var(--duration-slow)] ease-[var(--ease-out)] motion-reduce:duration-0 ' + CLOSED_PASSTHROUGH;
|
|
50
64
|
//# sourceMappingURL=overlayMotion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlayMotion.js","sourceRoot":"","sources":["../../../src/react/lib/overlayMotion.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"overlayMotion.js","sourceRoot":"","sources":["../../../src/react/lib/overlayMotion.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH;;kGAEkG;AAClG,MAAM,kBAAkB,GAAG,0CAA0C,CAAC;AAEtE;;4FAE4F;AAC5F,MAAM,CAAC,MAAM,cAAc,GACzB,kFAAkF;IAClF,qHAAqH;IACrH,iEAAiE;IACjE,kBAAkB,GAAG,GAAG;IACxB,gFAAgF;IAChF,+EAA+E,CAAC;AAElF,iGAAiG;AACjG,MAAM,CAAC,MAAM,eAAe,GAC1B,kFAAkF;IAClF,+DAA+D;IAC/D,6DAA6D;IAC7D,yEAAyE;IACzE,kBAAkB,GAAG,GAAG;IACxB,gFAAgF;IAChF,+EAA+E,CAAC;AAElF;kFACkF;AAClF,MAAM,CAAC,MAAM,aAAa,GACxB,kFAAkF;IAClF,sIAAsI;IACtI,sGAAsG;IACtG,kBAAkB,CAAC;AAErB,2FAA2F;AAC3F,MAAM,CAAC,MAAM,YAAY,GACvB,kFAAkF;IAClF,2DAA2D;IAC3D,iEAAiE;IACjE,kBAAkB,CAAC;AAErB;;kEAEkE;AAClE,MAAM,CAAC,MAAM,aAAa,GAAG,kFAAkF,GAAG,kBAAkB,CAAC"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* after an app's responsive variant (task 2124). An app that imports every area gets exactly
|
|
16
16
|
* what `cursedbelt/styles-utilities.css` emits — proved rule by rule in
|
|
17
17
|
* src/stylesAreas.spec.ts, which is also what fails when this file is stale.
|
|
18
|
-
*
|
|
18
|
+
* 928 candidate(s).
|
|
19
19
|
*
|
|
20
20
|
* Written by scripts/generateAreaStyles.ts (`bun run styles:areas`), which
|
|
21
21
|
* `bun run build` runs. The map of what is in which area, and why the areas are
|
|
@@ -88,13 +88,13 @@
|
|
|
88
88
|
@source inline("data-[state=checked]:ring-accent data-[state=checked]:text-white");
|
|
89
89
|
@source inline("data-[state=checked]:translate-x-4 data-[state=closed]:animate-collapsible-up");
|
|
90
90
|
@source inline("data-[state=closed]:animate-out data-[state=closed]:fade-out-0");
|
|
91
|
-
@source inline("data-[state=closed]:
|
|
92
|
-
@source inline("data-[state=closed]:slide-out-to-
|
|
93
|
-
@source inline("data-[state=
|
|
94
|
-
@source inline("data-[state=delayed-open]:
|
|
95
|
-
@source inline("data-[state=indeterminate]:
|
|
96
|
-
@source inline("data-[state=
|
|
97
|
-
@source inline("data-[state=open]:fade-in-0 data-[state=open]:slide-in-from-bottom");
|
|
91
|
+
@source inline("data-[state=closed]:pointer-events-none! data-[state=closed]:slide-out-to-bottom");
|
|
92
|
+
@source inline("data-[state=closed]:slide-out-to-left data-[state=closed]:slide-out-to-right");
|
|
93
|
+
@source inline("data-[state=closed]:zoom-out-[0.985] data-[state=delayed-open]:animate-in");
|
|
94
|
+
@source inline("data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-[0.985]");
|
|
95
|
+
@source inline("data-[state=indeterminate]:bg-accent-solid data-[state=indeterminate]:border-accent-solid");
|
|
96
|
+
@source inline("data-[state=indeterminate]:text-white data-[state=open]:animate-collapsible-down");
|
|
97
|
+
@source inline("data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:slide-in-from-bottom");
|
|
98
98
|
@source inline("data-[state=open]:slide-in-from-bottom-2 data-[state=open]:slide-in-from-left");
|
|
99
99
|
@source inline("data-[state=open]:slide-in-from-right data-[state=open]:zoom-in-[0.985]");
|
|
100
100
|
@source inline("data-[state=unchecked]:bg-muted data-[state=unchecked]:translate-x-0 disable disabled");
|
|
@@ -4444,6 +4444,9 @@
|
|
|
4444
4444
|
--tw-ring-offset-width: 1px;
|
|
4445
4445
|
--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
|
|
4446
4446
|
}
|
|
4447
|
+
.data-\[state\=closed\]\:pointer-events-none\![data-state="closed"] {
|
|
4448
|
+
pointer-events: none !important;
|
|
4449
|
+
}
|
|
4447
4450
|
.data-\[state\=closed\]\:animate-collapsible-up[data-state="closed"] {
|
|
4448
4451
|
animation: collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);
|
|
4449
4452
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cursedbelt",
|
|
3
|
-
"version": "5.85.
|
|
3
|
+
"version": "5.85.1",
|
|
4
4
|
"license": "ISC",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "The React design system of the cursedbelt split — components, styles, theme. cursedbelt-core below it; server tier in cursedbelt-server.",
|
|
@@ -13,6 +13,12 @@
|
|
|
13
13
|
* simply there. The animation still runs for 0s, so Radix's `Presence` sees its `animationend`
|
|
14
14
|
* and unmounts on close exactly as it does with motion on.
|
|
15
15
|
*
|
|
16
|
+
* 🔴 A closing overlay lets the pointer through (`CLOSED_PASSTHROUGH`, in every constant below). Its
|
|
17
|
+
* exit runs for the whole duration at near-zero opacity, still mounted, and until then it took every
|
|
18
|
+
* click and drag over it: measured in desk (forge task 3488), a drag begun 0.2s after picking a menu
|
|
19
|
+
* item landed on the fading menu's next item instead of the canvas beneath. `e2e/motion.spec.ts`
|
|
20
|
+
* reads `pointer-events` at the instant `data-state` turns `closed`.
|
|
21
|
+
*
|
|
16
22
|
* Each overlay's own direction stays its own: an anchored panel comes from its anchor's side, a
|
|
17
23
|
* drawer slides its whole width in from its edge. What they share is the curve and the speed.
|
|
18
24
|
*
|
|
@@ -20,6 +26,11 @@
|
|
|
20
26
|
* opens each primitive and reads its running animation from `getAnimations()`.
|
|
21
27
|
*/
|
|
22
28
|
|
|
29
|
+
/** What every overlay does once it is closing: nothing under the pointer. Important, because
|
|
30
|
+
* Radix writes `pointer-events: auto` INLINE on a dialog's overlay (the body is `none` under a
|
|
31
|
+
* modal) and an inline style beats any class — the scrim kept the pointer with the plain one. */
|
|
32
|
+
const CLOSED_PASSTHROUGH = 'data-[state=closed]:pointer-events-none!';
|
|
33
|
+
|
|
23
34
|
/** A tooltip: the fast speed, a fade and a 4px rise from its trigger's side. Only a DELAYED
|
|
24
35
|
* open animates — moving between triggers inside the skip-delay window (`instant-open`) swaps
|
|
25
36
|
* the bubble in place, the way Linear's do, instead of re-fading it on every neighbour. */
|
|
@@ -27,6 +38,7 @@ export const TOOLTIP_MOTION =
|
|
|
27
38
|
'duration-[var(--duration-fast)] ease-[var(--ease-out)] motion-reduce:duration-0 ' +
|
|
28
39
|
'data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-[0.985] ' +
|
|
29
40
|
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 ' +
|
|
41
|
+
CLOSED_PASSTHROUGH + ' ' +
|
|
30
42
|
'data-[side=bottom]:slide-in-from-top-1 data-[side=top]:slide-in-from-bottom-1 ' +
|
|
31
43
|
'data-[side=left]:slide-in-from-right-1 data-[side=right]:slide-in-from-left-1';
|
|
32
44
|
|
|
@@ -36,6 +48,7 @@ export const ANCHORED_MOTION =
|
|
|
36
48
|
'data-[state=open]:animate-in data-[state=closed]:animate-out ' +
|
|
37
49
|
'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 ' +
|
|
38
50
|
'data-[state=closed]:zoom-out-[0.985] data-[state=open]:zoom-in-[0.985] ' +
|
|
51
|
+
CLOSED_PASSTHROUGH + ' ' +
|
|
39
52
|
'data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 ' +
|
|
40
53
|
'data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2';
|
|
41
54
|
|
|
@@ -44,15 +57,17 @@ export const ANCHORED_MOTION =
|
|
|
44
57
|
export const DIALOG_MOTION =
|
|
45
58
|
'duration-[var(--duration-slow)] ease-[var(--ease-out)] motion-reduce:duration-0 ' +
|
|
46
59
|
'data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-[0.985] data-[state=open]:slide-in-from-bottom-2 ' +
|
|
47
|
-
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-[0.985]'
|
|
60
|
+
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-[0.985] ' +
|
|
61
|
+
CLOSED_PASSTHROUGH;
|
|
48
62
|
|
|
49
63
|
/** The scrim behind a dialog or drawer: a fade at the speed of the panel it sits under. */
|
|
50
64
|
export const SCRIM_MOTION =
|
|
51
65
|
'duration-[var(--duration-slow)] ease-[var(--ease-out)] motion-reduce:duration-0 ' +
|
|
52
66
|
'data-[state=open]:animate-in data-[state=open]:fade-in-0 ' +
|
|
53
|
-
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0'
|
|
67
|
+
'data-[state=closed]:animate-out data-[state=closed]:fade-out-0 ' +
|
|
68
|
+
CLOSED_PASSTHROUGH;
|
|
54
69
|
|
|
55
70
|
/** A drawer's SPEED and curve. Its slide (`slide-in-from-left` …) is its edge's, so it stays at
|
|
56
71
|
* the call site; this is what makes it ease like every other overlay instead of tw-animate's
|
|
57
|
-
* 150ms `ease
|
|
58
|
-
export const DRAWER_MOTION = 'duration-[var(--duration-slow)] ease-[var(--ease-out)] motion-reduce:duration-0';
|
|
72
|
+
* 150ms `ease`, and lets the pointer through while it closes. */
|
|
73
|
+
export const DRAWER_MOTION = 'duration-[var(--duration-slow)] ease-[var(--ease-out)] motion-reduce:duration-0 ' + CLOSED_PASSTHROUGH;
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* after an app's responsive variant (task 2124). An app that imports every area gets exactly
|
|
16
16
|
* what `cursedbelt/styles-utilities.css` emits — proved rule by rule in
|
|
17
17
|
* src/stylesAreas.spec.ts, which is also what fails when this file is stale.
|
|
18
|
-
*
|
|
18
|
+
* 928 candidate(s).
|
|
19
19
|
*
|
|
20
20
|
* Written by scripts/generateAreaStyles.ts (`bun run styles:areas`), which
|
|
21
21
|
* `bun run build` runs. The map of what is in which area, and why the areas are
|
|
@@ -88,13 +88,13 @@
|
|
|
88
88
|
@source inline("data-[state=checked]:ring-accent data-[state=checked]:text-white");
|
|
89
89
|
@source inline("data-[state=checked]:translate-x-4 data-[state=closed]:animate-collapsible-up");
|
|
90
90
|
@source inline("data-[state=closed]:animate-out data-[state=closed]:fade-out-0");
|
|
91
|
-
@source inline("data-[state=closed]:
|
|
92
|
-
@source inline("data-[state=closed]:slide-out-to-
|
|
93
|
-
@source inline("data-[state=
|
|
94
|
-
@source inline("data-[state=delayed-open]:
|
|
95
|
-
@source inline("data-[state=indeterminate]:
|
|
96
|
-
@source inline("data-[state=
|
|
97
|
-
@source inline("data-[state=open]:fade-in-0 data-[state=open]:slide-in-from-bottom");
|
|
91
|
+
@source inline("data-[state=closed]:pointer-events-none! data-[state=closed]:slide-out-to-bottom");
|
|
92
|
+
@source inline("data-[state=closed]:slide-out-to-left data-[state=closed]:slide-out-to-right");
|
|
93
|
+
@source inline("data-[state=closed]:zoom-out-[0.985] data-[state=delayed-open]:animate-in");
|
|
94
|
+
@source inline("data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-[0.985]");
|
|
95
|
+
@source inline("data-[state=indeterminate]:bg-accent-solid data-[state=indeterminate]:border-accent-solid");
|
|
96
|
+
@source inline("data-[state=indeterminate]:text-white data-[state=open]:animate-collapsible-down");
|
|
97
|
+
@source inline("data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:slide-in-from-bottom");
|
|
98
98
|
@source inline("data-[state=open]:slide-in-from-bottom-2 data-[state=open]:slide-in-from-left");
|
|
99
99
|
@source inline("data-[state=open]:slide-in-from-right data-[state=open]:zoom-in-[0.985]");
|
|
100
100
|
@source inline("data-[state=unchecked]:bg-muted data-[state=unchecked]:translate-x-0 disable disabled");
|
package/src/styles-utilities.css
CHANGED
|
@@ -4444,6 +4444,9 @@
|
|
|
4444
4444
|
--tw-ring-offset-width: 1px;
|
|
4445
4445
|
--tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
|
|
4446
4446
|
}
|
|
4447
|
+
.data-\[state\=closed\]\:pointer-events-none\![data-state="closed"] {
|
|
4448
|
+
pointer-events: none !important;
|
|
4449
|
+
}
|
|
4447
4450
|
.data-\[state\=closed\]\:animate-collapsible-up[data-state="closed"] {
|
|
4448
4451
|
animation: collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);
|
|
4449
4452
|
}
|