@ansh-ui/react 0.2.0 → 0.3.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.
Files changed (92) hide show
  1. package/dist/{chunk-C5JG6TMM.cjs → chunk-2U7BHYIQ.cjs} +143 -143
  2. package/dist/chunk-2U7BHYIQ.cjs.map +1 -0
  3. package/dist/{chunk-HO2YSF5O.js → chunk-742E5FQS.js} +3 -3
  4. package/dist/chunk-742E5FQS.js.map +1 -0
  5. package/dist/{chunk-QO3E7TJS.js → chunk-7QGB2X7R.js} +36 -28
  6. package/dist/chunk-7QGB2X7R.js.map +1 -0
  7. package/dist/{chunk-EGG4CP7C.js → chunk-BQJ6H3HC.js} +3 -2
  8. package/dist/chunk-BQJ6H3HC.js.map +1 -0
  9. package/dist/{chunk-OLTS6G5M.js → chunk-GNA33V2J.js} +11 -6
  10. package/dist/chunk-GNA33V2J.js.map +1 -0
  11. package/dist/{chunk-C32LKF23.cjs → chunk-KTLTYHAT.cjs} +3 -3
  12. package/dist/chunk-KTLTYHAT.cjs.map +1 -0
  13. package/dist/{chunk-AVPEA5PB.cjs → chunk-MPX7QT4R.cjs} +4 -4
  14. package/dist/chunk-MPX7QT4R.cjs.map +1 -0
  15. package/dist/{chunk-T4AK2KLM.js → chunk-NJUVVMJV.js} +3 -3
  16. package/dist/chunk-NJUVVMJV.js.map +1 -0
  17. package/dist/{chunk-IBXLC5IE.js → chunk-P5MRISBP.js} +19 -3
  18. package/dist/chunk-P5MRISBP.js.map +1 -0
  19. package/dist/{chunk-WGYNCSTP.cjs → chunk-PUW6BTPQ.cjs} +3 -2
  20. package/dist/chunk-PUW6BTPQ.cjs.map +1 -0
  21. package/dist/{chunk-LDCZQP3R.js → chunk-RGGNLAAA.js} +122 -122
  22. package/dist/chunk-RGGNLAAA.js.map +1 -0
  23. package/dist/{chunk-6VRF7X5C.cjs → chunk-TEPQGFR4.cjs} +19 -2
  24. package/dist/chunk-TEPQGFR4.cjs.map +1 -0
  25. package/dist/{chunk-OJN5JBNP.cjs → chunk-VJI6V27F.cjs} +99 -99
  26. package/dist/chunk-VJI6V27F.cjs.map +1 -0
  27. package/dist/{chunk-HPGCILO4.js → chunk-XRKZPLUT.js} +99 -99
  28. package/dist/chunk-XRKZPLUT.js.map +1 -0
  29. package/dist/{chunk-DATBU46V.cjs → chunk-XYT6OXKP.cjs} +10 -4
  30. package/dist/chunk-XYT6OXKP.cjs.map +1 -0
  31. package/dist/{chunk-RHTLNSVW.cjs → chunk-YVJB7AAZ.cjs} +39 -31
  32. package/dist/chunk-YVJB7AAZ.cjs.map +1 -0
  33. package/dist/data.cjs +16 -16
  34. package/dist/data.d.cts +25 -23
  35. package/dist/data.d.ts +25 -23
  36. package/dist/data.js +1 -1
  37. package/dist/form.cjs +37 -37
  38. package/dist/form.d.cts +4 -1
  39. package/dist/form.d.ts +4 -1
  40. package/dist/form.js +2 -2
  41. package/dist/index.cjs +666 -135
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/index.d.cts +220 -7
  44. package/dist/index.d.ts +220 -7
  45. package/dist/index.js +530 -14
  46. package/dist/index.js.map +1 -1
  47. package/dist/layout.cjs +13 -13
  48. package/dist/layout.d.cts +11 -2
  49. package/dist/layout.d.ts +11 -2
  50. package/dist/layout.js +1 -1
  51. package/dist/{motion-CQmCq6_k.d.ts → motion-C6WfBFES.d.cts} +23 -19
  52. package/dist/{motion-CSX4g2N8.d.cts → motion-ugXmf505.d.ts} +23 -19
  53. package/dist/motion.cjs +19 -19
  54. package/dist/motion.d.cts +2 -2
  55. package/dist/motion.d.ts +2 -2
  56. package/dist/motion.js +2 -2
  57. package/dist/navigation.cjs +8 -8
  58. package/dist/navigation.d.cts +3 -2
  59. package/dist/navigation.d.ts +3 -2
  60. package/dist/navigation.js +1 -1
  61. package/dist/overlay.cjs +16 -16
  62. package/dist/overlay.d.cts +17 -14
  63. package/dist/overlay.d.ts +17 -14
  64. package/dist/overlay.js +2 -2
  65. package/dist/{position-DVScKcaa.d.cts → position-CW6cGpSF.d.cts} +2 -1
  66. package/dist/{position-DVScKcaa.d.ts → position-CW6cGpSF.d.ts} +2 -1
  67. package/dist/primitives.cjs +25 -21
  68. package/dist/primitives.d.cts +5 -4
  69. package/dist/primitives.d.ts +5 -4
  70. package/dist/primitives.js +2 -2
  71. package/dist/{sidebar-D-PafAXw.d.cts → sidebar-Dyt67t2z.d.cts} +2 -1
  72. package/dist/{sidebar-D-PafAXw.d.ts → sidebar-Dyt67t2z.d.ts} +2 -1
  73. package/dist/styles.css +464 -0
  74. package/dist/{use-observers-B9qtimrk.d.cts → use-observers-DvA7hSz4.d.cts} +10 -1
  75. package/dist/{use-observers-B9qtimrk.d.ts → use-observers-DvA7hSz4.d.ts} +10 -1
  76. package/package.json +3 -3
  77. package/dist/chunk-6VRF7X5C.cjs.map +0 -1
  78. package/dist/chunk-AVPEA5PB.cjs.map +0 -1
  79. package/dist/chunk-C32LKF23.cjs.map +0 -1
  80. package/dist/chunk-C5JG6TMM.cjs.map +0 -1
  81. package/dist/chunk-DATBU46V.cjs.map +0 -1
  82. package/dist/chunk-EGG4CP7C.js.map +0 -1
  83. package/dist/chunk-HO2YSF5O.js.map +0 -1
  84. package/dist/chunk-HPGCILO4.js.map +0 -1
  85. package/dist/chunk-IBXLC5IE.js.map +0 -1
  86. package/dist/chunk-LDCZQP3R.js.map +0 -1
  87. package/dist/chunk-OJN5JBNP.cjs.map +0 -1
  88. package/dist/chunk-OLTS6G5M.js.map +0 -1
  89. package/dist/chunk-QO3E7TJS.js.map +0 -1
  90. package/dist/chunk-RHTLNSVW.cjs.map +0 -1
  91. package/dist/chunk-T4AK2KLM.js.map +0 -1
  92. package/dist/chunk-WGYNCSTP.cjs.map +0 -1
package/dist/layout.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkWGYNCSTP_cjs = require('./chunk-WGYNCSTP.cjs');
4
+ var chunkPUW6BTPQ_cjs = require('./chunk-PUW6BTPQ.cjs');
5
5
  var chunkZWAFLHC2_cjs = require('./chunk-ZWAFLHC2.cjs');
6
6
  require('./chunk-PO5DU3FU.cjs');
7
7
  require('./chunk-SFU5EPSN.cjs');
@@ -10,51 +10,51 @@ require('./chunk-SFU5EPSN.cjs');
10
10
 
11
11
  Object.defineProperty(exports, "AspectRatio", {
12
12
  enumerable: true,
13
- get: function () { return chunkWGYNCSTP_cjs.AspectRatio; }
13
+ get: function () { return chunkPUW6BTPQ_cjs.AspectRatio; }
14
14
  });
15
15
  Object.defineProperty(exports, "Center", {
16
16
  enumerable: true,
17
- get: function () { return chunkWGYNCSTP_cjs.Center; }
17
+ get: function () { return chunkPUW6BTPQ_cjs.Center; }
18
18
  });
19
19
  Object.defineProperty(exports, "Container", {
20
20
  enumerable: true,
21
- get: function () { return chunkWGYNCSTP_cjs.Container; }
21
+ get: function () { return chunkPUW6BTPQ_cjs.Container; }
22
22
  });
23
23
  Object.defineProperty(exports, "Divider", {
24
24
  enumerable: true,
25
- get: function () { return chunkWGYNCSTP_cjs.Divider; }
25
+ get: function () { return chunkPUW6BTPQ_cjs.Divider; }
26
26
  });
27
27
  Object.defineProperty(exports, "Grid", {
28
28
  enumerable: true,
29
- get: function () { return chunkWGYNCSTP_cjs.Grid; }
29
+ get: function () { return chunkPUW6BTPQ_cjs.Grid; }
30
30
  });
31
31
  Object.defineProperty(exports, "GridItem", {
32
32
  enumerable: true,
33
- get: function () { return chunkWGYNCSTP_cjs.GridItem; }
33
+ get: function () { return chunkPUW6BTPQ_cjs.GridItem; }
34
34
  });
35
35
  Object.defineProperty(exports, "HStack", {
36
36
  enumerable: true,
37
- get: function () { return chunkWGYNCSTP_cjs.HStack; }
37
+ get: function () { return chunkPUW6BTPQ_cjs.HStack; }
38
38
  });
39
39
  Object.defineProperty(exports, "Resizable", {
40
40
  enumerable: true,
41
- get: function () { return chunkWGYNCSTP_cjs.Resizable; }
41
+ get: function () { return chunkPUW6BTPQ_cjs.Resizable; }
42
42
  });
43
43
  Object.defineProperty(exports, "ScrollArea", {
44
44
  enumerable: true,
45
- get: function () { return chunkWGYNCSTP_cjs.ScrollArea; }
45
+ get: function () { return chunkPUW6BTPQ_cjs.ScrollArea; }
46
46
  });
47
47
  Object.defineProperty(exports, "Spacer", {
48
48
  enumerable: true,
49
- get: function () { return chunkWGYNCSTP_cjs.Spacer; }
49
+ get: function () { return chunkPUW6BTPQ_cjs.Spacer; }
50
50
  });
51
51
  Object.defineProperty(exports, "Stack", {
52
52
  enumerable: true,
53
- get: function () { return chunkWGYNCSTP_cjs.Stack; }
53
+ get: function () { return chunkPUW6BTPQ_cjs.Stack; }
54
54
  });
55
55
  Object.defineProperty(exports, "VStack", {
56
56
  enumerable: true,
57
- get: function () { return chunkWGYNCSTP_cjs.VStack; }
57
+ get: function () { return chunkPUW6BTPQ_cjs.VStack; }
58
58
  });
59
59
  Object.defineProperty(exports, "AppShell", {
60
60
  enumerable: true,
package/dist/layout.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as react from 'react';
2
2
  import { HTMLAttributes, ElementType, ReactNode, CSSProperties } from 'react';
3
- export { A as AppShell, a as AppShellProps, N as NavItem, b as NavSection, S as Sidebar, c as SidebarProps } from './sidebar-D-PafAXw.cjs';
3
+ export { A as AppShell, a as AppShellProps, N as NavItem, b as NavSection, S as Sidebar, c as SidebarProps } from './sidebar-Dyt67t2z.cjs';
4
4
 
5
5
  /**
6
6
  * Layout primitives.
@@ -19,6 +19,7 @@ interface BaseProps extends HTMLAttributes<HTMLElement> {
19
19
  as?: ElementType;
20
20
  children?: ReactNode;
21
21
  }
22
+
22
23
  interface StackProps extends BaseProps {
23
24
  /** Default `'vertical'` — the direction that needs a helper more often. */
24
25
  direction?: 'horizontal' | 'vertical';
@@ -49,6 +50,7 @@ declare const Stack: react.ForwardRefExoticComponent<StackProps & react.RefAttri
49
50
  declare const HStack: react.ForwardRefExoticComponent<StackProps & react.RefAttributes<HTMLElement>>;
50
51
  /** Vertical `Stack`, for symmetry with `HStack`. */
51
52
  declare const VStack: react.ForwardRefExoticComponent<StackProps & react.RefAttributes<HTMLElement>>;
53
+
52
54
  interface GridProps extends BaseProps {
53
55
  /** Fixed column count, or `'auto'` for a responsive `auto-fill` track. */
54
56
  columns?: number | 'auto';
@@ -73,6 +75,7 @@ interface GridItemProps extends BaseProps {
73
75
  rowSpan?: number;
74
76
  }
75
77
  declare const GridItem: react.ForwardRefExoticComponent<GridItemProps & react.RefAttributes<HTMLElement>>;
78
+
76
79
  interface ContainerProps extends BaseProps {
77
80
  /** Max content width. Default `'lg'` (72rem). */
78
81
  size?: 'sm' | 'md' | 'lg' | 'xl' | 'full';
@@ -81,6 +84,7 @@ interface ContainerProps extends BaseProps {
81
84
  }
82
85
  /** Centred, width-constrained page content. */
83
86
  declare const Container: react.ForwardRefExoticComponent<ContainerProps & react.RefAttributes<HTMLElement>>;
87
+
84
88
  interface DividerProps extends Omit<BaseProps, 'children'> {
85
89
  orientation?: 'horizontal' | 'vertical';
86
90
  /** Optional label rendered in the middle of the rule. */
@@ -94,6 +98,7 @@ interface DividerProps extends Omit<BaseProps, 'children'> {
94
98
  * announcing it as a separator loses the text.
95
99
  */
96
100
  declare const Divider: react.ForwardRefExoticComponent<DividerProps & react.RefAttributes<HTMLDivElement>>;
101
+
97
102
  interface SpacerProps {
98
103
  size?: SpaceToken;
99
104
  /** Grow to absorb free space in a flex container. */
@@ -101,8 +106,10 @@ interface SpacerProps {
101
106
  }
102
107
  /** Explicit empty space. `grow` pushes siblings apart in a flex row. */
103
108
  declare function Spacer({ size, grow }: SpacerProps): react.JSX.Element;
109
+
104
110
  /** Centre a child on both axes. */
105
111
  declare const Center: react.ForwardRefExoticComponent<BaseProps & react.RefAttributes<HTMLElement>>;
112
+
106
113
  interface AspectRatioProps extends BaseProps {
107
114
  /** Width ÷ height. `16 / 9` reads better than `1.777`. Default `16 / 9`. */
108
115
  ratio?: number;
@@ -115,6 +122,7 @@ interface AspectRatioProps extends BaseProps {
115
122
  * Shift penalty and the most common cause of a failing Core Web Vitals score.
116
123
  */
117
124
  declare const AspectRatio: react.ForwardRefExoticComponent<AspectRatioProps & react.RefAttributes<HTMLElement>>;
125
+
118
126
  interface ScrollAreaProps extends BaseProps {
119
127
  /** Max height before scrolling starts. */
120
128
  maxHeight?: string;
@@ -166,4 +174,5 @@ interface ResizableProps {
166
174
  */
167
175
  declare function Resizable({ children, direction, defaultSize, size, onSizeChange, minSize, maxSize, snapPoints, className, label, }: ResizableProps): react.JSX.Element;
168
176
 
169
- export { AspectRatio, type AspectRatioProps, Center, Container, type ContainerProps, Divider, type DividerProps, Grid, GridItem, type GridItemProps, type GridProps, HStack, Resizable, type ResizableProps, ScrollArea, type ScrollAreaProps, type SpaceToken, Spacer, type SpacerProps, Stack, type StackProps, VStack };
177
+ export { AspectRatio, Center, Container, Divider, Grid, GridItem, HStack, Resizable, ScrollArea, Spacer, Stack, VStack };
178
+ export type { AspectRatioProps, ContainerProps, DividerProps, GridItemProps, GridProps, ResizableProps, ScrollAreaProps, SpaceToken, SpacerProps, StackProps };
package/dist/layout.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as react from 'react';
2
2
  import { HTMLAttributes, ElementType, ReactNode, CSSProperties } from 'react';
3
- export { A as AppShell, a as AppShellProps, N as NavItem, b as NavSection, S as Sidebar, c as SidebarProps } from './sidebar-D-PafAXw.js';
3
+ export { A as AppShell, a as AppShellProps, N as NavItem, b as NavSection, S as Sidebar, c as SidebarProps } from './sidebar-Dyt67t2z.js';
4
4
 
5
5
  /**
6
6
  * Layout primitives.
@@ -19,6 +19,7 @@ interface BaseProps extends HTMLAttributes<HTMLElement> {
19
19
  as?: ElementType;
20
20
  children?: ReactNode;
21
21
  }
22
+
22
23
  interface StackProps extends BaseProps {
23
24
  /** Default `'vertical'` — the direction that needs a helper more often. */
24
25
  direction?: 'horizontal' | 'vertical';
@@ -49,6 +50,7 @@ declare const Stack: react.ForwardRefExoticComponent<StackProps & react.RefAttri
49
50
  declare const HStack: react.ForwardRefExoticComponent<StackProps & react.RefAttributes<HTMLElement>>;
50
51
  /** Vertical `Stack`, for symmetry with `HStack`. */
51
52
  declare const VStack: react.ForwardRefExoticComponent<StackProps & react.RefAttributes<HTMLElement>>;
53
+
52
54
  interface GridProps extends BaseProps {
53
55
  /** Fixed column count, or `'auto'` for a responsive `auto-fill` track. */
54
56
  columns?: number | 'auto';
@@ -73,6 +75,7 @@ interface GridItemProps extends BaseProps {
73
75
  rowSpan?: number;
74
76
  }
75
77
  declare const GridItem: react.ForwardRefExoticComponent<GridItemProps & react.RefAttributes<HTMLElement>>;
78
+
76
79
  interface ContainerProps extends BaseProps {
77
80
  /** Max content width. Default `'lg'` (72rem). */
78
81
  size?: 'sm' | 'md' | 'lg' | 'xl' | 'full';
@@ -81,6 +84,7 @@ interface ContainerProps extends BaseProps {
81
84
  }
82
85
  /** Centred, width-constrained page content. */
83
86
  declare const Container: react.ForwardRefExoticComponent<ContainerProps & react.RefAttributes<HTMLElement>>;
87
+
84
88
  interface DividerProps extends Omit<BaseProps, 'children'> {
85
89
  orientation?: 'horizontal' | 'vertical';
86
90
  /** Optional label rendered in the middle of the rule. */
@@ -94,6 +98,7 @@ interface DividerProps extends Omit<BaseProps, 'children'> {
94
98
  * announcing it as a separator loses the text.
95
99
  */
96
100
  declare const Divider: react.ForwardRefExoticComponent<DividerProps & react.RefAttributes<HTMLDivElement>>;
101
+
97
102
  interface SpacerProps {
98
103
  size?: SpaceToken;
99
104
  /** Grow to absorb free space in a flex container. */
@@ -101,8 +106,10 @@ interface SpacerProps {
101
106
  }
102
107
  /** Explicit empty space. `grow` pushes siblings apart in a flex row. */
103
108
  declare function Spacer({ size, grow }: SpacerProps): react.JSX.Element;
109
+
104
110
  /** Centre a child on both axes. */
105
111
  declare const Center: react.ForwardRefExoticComponent<BaseProps & react.RefAttributes<HTMLElement>>;
112
+
106
113
  interface AspectRatioProps extends BaseProps {
107
114
  /** Width ÷ height. `16 / 9` reads better than `1.777`. Default `16 / 9`. */
108
115
  ratio?: number;
@@ -115,6 +122,7 @@ interface AspectRatioProps extends BaseProps {
115
122
  * Shift penalty and the most common cause of a failing Core Web Vitals score.
116
123
  */
117
124
  declare const AspectRatio: react.ForwardRefExoticComponent<AspectRatioProps & react.RefAttributes<HTMLElement>>;
125
+
118
126
  interface ScrollAreaProps extends BaseProps {
119
127
  /** Max height before scrolling starts. */
120
128
  maxHeight?: string;
@@ -166,4 +174,5 @@ interface ResizableProps {
166
174
  */
167
175
  declare function Resizable({ children, direction, defaultSize, size, onSizeChange, minSize, maxSize, snapPoints, className, label, }: ResizableProps): react.JSX.Element;
168
176
 
169
- export { AspectRatio, type AspectRatioProps, Center, Container, type ContainerProps, Divider, type DividerProps, Grid, GridItem, type GridItemProps, type GridProps, HStack, Resizable, type ResizableProps, ScrollArea, type ScrollAreaProps, type SpaceToken, Spacer, type SpacerProps, Stack, type StackProps, VStack };
177
+ export { AspectRatio, Center, Container, Divider, Grid, GridItem, HStack, Resizable, ScrollArea, Spacer, Stack, VStack };
178
+ export type { AspectRatioProps, ContainerProps, DividerProps, GridItemProps, GridProps, ResizableProps, ScrollAreaProps, SpaceToken, SpacerProps, StackProps };
package/dist/layout.js CHANGED
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- export { AspectRatio, Center, Container, Divider, Grid, GridItem, HStack, Resizable, ScrollArea, Spacer, Stack, VStack } from './chunk-EGG4CP7C.js';
2
+ export { AspectRatio, Center, Container, Divider, Grid, GridItem, HStack, Resizable, ScrollArea, Spacer, Stack, VStack } from './chunk-BQJ6H3HC.js';
3
3
  export { AppShell, Sidebar } from './chunk-5CFQFMP5.js';
4
4
  import './chunk-LXCIXR5T.js';
5
5
  import './chunk-H34OXXJU.js';
@@ -1,25 +1,9 @@
1
1
  import * as react from 'react';
2
- import { ReactNode, CSSProperties, ElementType, ForwardRefExoticComponent, ComponentPropsWithoutRef, RefAttributes } from 'react';
2
+ import { ElementType, CSSProperties, ReactNode, ForwardRefExoticComponent, ComponentPropsWithoutRef, RefAttributes } from 'react';
3
3
  import * as _ansh_ui_core from '@ansh-ui/core';
4
4
  import { EasingInput, SpringOptions, springs, StaggerFrom, resolvePalette, BaseBehaviourOptions, BehaviourDefinition, ReducedMotionMode } from '@ansh-ui/core';
5
- import './use-observers-B9qtimrk.js';
5
+ import './use-observers-DvA7hSz4.cjs';
6
6
 
7
- /**
8
- * Declarative motion.
9
- *
10
- * A deliberately **small** subset of what a full motion library does: transform properties and
11
- * opacity, animated from `initial` to `animate`, plus hover and press states and an exit animation
12
- * when paired with `AnimatePresence`.
13
- *
14
- * That scope is a decision, not a gap. Layout animation (FLIP), shared-element transitions and
15
- * variant propagation each need machinery an order of magnitude larger than this file, and a
16
- * half-implementation of them is worse than none — it works in the demo and fails on the real page.
17
- * For those, use a dedicated library; for the 90% case of "fade this in, slide that up, spring the
18
- * card on hover", this costs a fraction of the bundle.
19
- *
20
- * Values are written straight to the element's `style` from the ticker's write phase. React never
21
- * re-renders during an animation.
22
- */
23
7
  interface MotionValues {
24
8
  opacity?: number;
25
9
  x?: number;
@@ -59,6 +43,23 @@ type MotionElementProps = {
59
43
  style?: CSSProperties;
60
44
  children?: ReactNode;
61
45
  };
46
+
47
+ /**
48
+ * Declarative motion.
49
+ *
50
+ * A deliberately **small** subset of what a full motion library does: transform properties and
51
+ * opacity, animated from `initial` to `animate`, plus hover and press states and an exit animation
52
+ * when paired with `AnimatePresence`.
53
+ *
54
+ * That scope is a decision, not a gap. Layout animation (FLIP), shared-element transitions and
55
+ * variant propagation each need machinery an order of magnitude larger than this file, and a
56
+ * half-implementation of them is worse than none — it works in the demo and fails on the real page.
57
+ * For those, use a dedicated library; for the 90% case of "fade this in, slide that up, spring the
58
+ * card on hover", this costs a fraction of the bundle.
59
+ *
60
+ * Values are written straight to the element's `style` from the ticker's write phase. React never
61
+ * re-renders during an animation.
62
+ */
62
63
  /**
63
64
  * An animated element.
64
65
  *
@@ -69,6 +70,7 @@ type MotionElementProps = {
69
70
  * ```
70
71
  */
71
72
  declare function Motion({ as: Component, initial, animate: target, exit: _exit, transition, whileHover, whileTap, whileInView, inViewAmount, className, style, children, ...rest }: MotionElementProps & Record<string, unknown>): react.JSX.Element;
73
+
72
74
  interface AnimatePresenceProps {
73
75
  children: ReactNode;
74
76
  /** Seconds to keep a removed child mounted. Default `0.35`. */
@@ -85,6 +87,7 @@ interface AnimatePresenceProps {
85
87
  * React reuses element positions and this sees no removal to animate.
86
88
  */
87
89
  declare function AnimatePresence({ children, exitDuration }: AnimatePresenceProps): react.JSX.Element;
90
+
88
91
  interface DraggableProps {
89
92
  /** Constrain movement. */
90
93
  axis?: 'x' | 'y' | 'both';
@@ -392,4 +395,5 @@ declare const ScrollReveal: BehaviourComponent<_ansh_ui_core.ScrollRevealOptions
392
395
  */
393
396
  declare const Parallax: BehaviourComponent<_ansh_ui_core.ParallaxOptions, HTMLElement>;
394
397
 
395
- export { AnimatePresence as A, type BehaviourComponent as B, Draggable as D, GradientText as G, MagneticButton as M, Parallax as P, Ripple as R, ScrollReveal as S, type ThemeContextValue as T, type AnimatePresenceProps as a, AnimatedText as b, type AnimatedTextProps as c, type BehaviourComponentBaseProps as d, type BehaviourComponentProps as e, type DraggableProps as f, type GradientTextProps as g, Marquee as h, Motion as i, MotionConfig as j, type MotionConfigProps as k, type MotionConfigValue as l, type MotionTransition as m, type MotionValues as n, ThemeProvider as o, type ThemeProviderProps as p, type ThemeSetting as q, TiltCard as r, createBehaviourComponent as s, themeScript as t, useBehaviour as u, useMotionConfig as v, useTheme as w };
398
+ export { AnimatePresence as A, Draggable as D, GradientText as G, MagneticButton as M, Parallax as P, Ripple as R, ScrollReveal as S, AnimatedText as b, Marquee as h, Motion as i, MotionConfig as j, ThemeProvider as o, TiltCard as r, createBehaviourComponent as s, themeScript as t, useBehaviour as u, useMotionConfig as v, useTheme as w };
399
+ export type { BehaviourComponent as B, ThemeContextValue as T, AnimatePresenceProps as a, AnimatedTextProps as c, BehaviourComponentBaseProps as d, BehaviourComponentProps as e, DraggableProps as f, GradientTextProps as g, MotionConfigProps as k, MotionConfigValue as l, MotionTransition as m, MotionValues as n, ThemeProviderProps as p, ThemeSetting as q };
@@ -1,25 +1,9 @@
1
1
  import * as react from 'react';
2
- import { ReactNode, CSSProperties, ElementType, ForwardRefExoticComponent, ComponentPropsWithoutRef, RefAttributes } from 'react';
2
+ import { ElementType, CSSProperties, ReactNode, ForwardRefExoticComponent, ComponentPropsWithoutRef, RefAttributes } from 'react';
3
3
  import * as _ansh_ui_core from '@ansh-ui/core';
4
4
  import { EasingInput, SpringOptions, springs, StaggerFrom, resolvePalette, BaseBehaviourOptions, BehaviourDefinition, ReducedMotionMode } from '@ansh-ui/core';
5
- import './use-observers-B9qtimrk.cjs';
5
+ import './use-observers-DvA7hSz4.js';
6
6
 
7
- /**
8
- * Declarative motion.
9
- *
10
- * A deliberately **small** subset of what a full motion library does: transform properties and
11
- * opacity, animated from `initial` to `animate`, plus hover and press states and an exit animation
12
- * when paired with `AnimatePresence`.
13
- *
14
- * That scope is a decision, not a gap. Layout animation (FLIP), shared-element transitions and
15
- * variant propagation each need machinery an order of magnitude larger than this file, and a
16
- * half-implementation of them is worse than none — it works in the demo and fails on the real page.
17
- * For those, use a dedicated library; for the 90% case of "fade this in, slide that up, spring the
18
- * card on hover", this costs a fraction of the bundle.
19
- *
20
- * Values are written straight to the element's `style` from the ticker's write phase. React never
21
- * re-renders during an animation.
22
- */
23
7
  interface MotionValues {
24
8
  opacity?: number;
25
9
  x?: number;
@@ -59,6 +43,23 @@ type MotionElementProps = {
59
43
  style?: CSSProperties;
60
44
  children?: ReactNode;
61
45
  };
46
+
47
+ /**
48
+ * Declarative motion.
49
+ *
50
+ * A deliberately **small** subset of what a full motion library does: transform properties and
51
+ * opacity, animated from `initial` to `animate`, plus hover and press states and an exit animation
52
+ * when paired with `AnimatePresence`.
53
+ *
54
+ * That scope is a decision, not a gap. Layout animation (FLIP), shared-element transitions and
55
+ * variant propagation each need machinery an order of magnitude larger than this file, and a
56
+ * half-implementation of them is worse than none — it works in the demo and fails on the real page.
57
+ * For those, use a dedicated library; for the 90% case of "fade this in, slide that up, spring the
58
+ * card on hover", this costs a fraction of the bundle.
59
+ *
60
+ * Values are written straight to the element's `style` from the ticker's write phase. React never
61
+ * re-renders during an animation.
62
+ */
62
63
  /**
63
64
  * An animated element.
64
65
  *
@@ -69,6 +70,7 @@ type MotionElementProps = {
69
70
  * ```
70
71
  */
71
72
  declare function Motion({ as: Component, initial, animate: target, exit: _exit, transition, whileHover, whileTap, whileInView, inViewAmount, className, style, children, ...rest }: MotionElementProps & Record<string, unknown>): react.JSX.Element;
73
+
72
74
  interface AnimatePresenceProps {
73
75
  children: ReactNode;
74
76
  /** Seconds to keep a removed child mounted. Default `0.35`. */
@@ -85,6 +87,7 @@ interface AnimatePresenceProps {
85
87
  * React reuses element positions and this sees no removal to animate.
86
88
  */
87
89
  declare function AnimatePresence({ children, exitDuration }: AnimatePresenceProps): react.JSX.Element;
90
+
88
91
  interface DraggableProps {
89
92
  /** Constrain movement. */
90
93
  axis?: 'x' | 'y' | 'both';
@@ -392,4 +395,5 @@ declare const ScrollReveal: BehaviourComponent<_ansh_ui_core.ScrollRevealOptions
392
395
  */
393
396
  declare const Parallax: BehaviourComponent<_ansh_ui_core.ParallaxOptions, HTMLElement>;
394
397
 
395
- export { AnimatePresence as A, type BehaviourComponent as B, Draggable as D, GradientText as G, MagneticButton as M, Parallax as P, Ripple as R, ScrollReveal as S, type ThemeContextValue as T, type AnimatePresenceProps as a, AnimatedText as b, type AnimatedTextProps as c, type BehaviourComponentBaseProps as d, type BehaviourComponentProps as e, type DraggableProps as f, type GradientTextProps as g, Marquee as h, Motion as i, MotionConfig as j, type MotionConfigProps as k, type MotionConfigValue as l, type MotionTransition as m, type MotionValues as n, ThemeProvider as o, type ThemeProviderProps as p, type ThemeSetting as q, TiltCard as r, createBehaviourComponent as s, themeScript as t, useBehaviour as u, useMotionConfig as v, useTheme as w };
398
+ export { AnimatePresence as A, Draggable as D, GradientText as G, MagneticButton as M, Parallax as P, Ripple as R, ScrollReveal as S, AnimatedText as b, Marquee as h, Motion as i, MotionConfig as j, ThemeProvider as o, TiltCard as r, createBehaviourComponent as s, themeScript as t, useBehaviour as u, useMotionConfig as v, useTheme as w };
399
+ export type { BehaviourComponent as B, ThemeContextValue as T, AnimatePresenceProps as a, AnimatedTextProps as c, BehaviourComponentBaseProps as d, BehaviourComponentProps as e, DraggableProps as f, GradientTextProps as g, MotionConfigProps as k, MotionConfigValue as l, MotionTransition as m, MotionValues as n, ThemeProviderProps as p, ThemeSetting as q };
package/dist/motion.cjs CHANGED
@@ -1,79 +1,79 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkAVPEA5PB_cjs = require('./chunk-AVPEA5PB.cjs');
5
- var chunk6VRF7X5C_cjs = require('./chunk-6VRF7X5C.cjs');
4
+ var chunkMPX7QT4R_cjs = require('./chunk-MPX7QT4R.cjs');
5
+ var chunkTEPQGFR4_cjs = require('./chunk-TEPQGFR4.cjs');
6
6
  require('./chunk-SFU5EPSN.cjs');
7
7
 
8
8
 
9
9
 
10
10
  Object.defineProperty(exports, "AnimatePresence", {
11
11
  enumerable: true,
12
- get: function () { return chunkAVPEA5PB_cjs.AnimatePresence; }
12
+ get: function () { return chunkMPX7QT4R_cjs.AnimatePresence; }
13
13
  });
14
14
  Object.defineProperty(exports, "AnimatedText", {
15
15
  enumerable: true,
16
- get: function () { return chunkAVPEA5PB_cjs.AnimatedText; }
16
+ get: function () { return chunkMPX7QT4R_cjs.AnimatedText; }
17
17
  });
18
18
  Object.defineProperty(exports, "Draggable", {
19
19
  enumerable: true,
20
- get: function () { return chunkAVPEA5PB_cjs.Draggable; }
20
+ get: function () { return chunkMPX7QT4R_cjs.Draggable; }
21
21
  });
22
22
  Object.defineProperty(exports, "GradientText", {
23
23
  enumerable: true,
24
- get: function () { return chunkAVPEA5PB_cjs.GradientText; }
24
+ get: function () { return chunkMPX7QT4R_cjs.GradientText; }
25
25
  });
26
26
  Object.defineProperty(exports, "MagneticButton", {
27
27
  enumerable: true,
28
- get: function () { return chunkAVPEA5PB_cjs.MagneticButton; }
28
+ get: function () { return chunkMPX7QT4R_cjs.MagneticButton; }
29
29
  });
30
30
  Object.defineProperty(exports, "Marquee", {
31
31
  enumerable: true,
32
- get: function () { return chunkAVPEA5PB_cjs.Marquee; }
32
+ get: function () { return chunkMPX7QT4R_cjs.Marquee; }
33
33
  });
34
34
  Object.defineProperty(exports, "Motion", {
35
35
  enumerable: true,
36
- get: function () { return chunkAVPEA5PB_cjs.Motion; }
36
+ get: function () { return chunkMPX7QT4R_cjs.Motion; }
37
37
  });
38
38
  Object.defineProperty(exports, "MotionConfig", {
39
39
  enumerable: true,
40
- get: function () { return chunkAVPEA5PB_cjs.MotionConfig; }
40
+ get: function () { return chunkMPX7QT4R_cjs.MotionConfig; }
41
41
  });
42
42
  Object.defineProperty(exports, "Parallax", {
43
43
  enumerable: true,
44
- get: function () { return chunkAVPEA5PB_cjs.Parallax; }
44
+ get: function () { return chunkMPX7QT4R_cjs.Parallax; }
45
45
  });
46
46
  Object.defineProperty(exports, "Ripple", {
47
47
  enumerable: true,
48
- get: function () { return chunkAVPEA5PB_cjs.Ripple; }
48
+ get: function () { return chunkMPX7QT4R_cjs.Ripple; }
49
49
  });
50
50
  Object.defineProperty(exports, "ScrollReveal", {
51
51
  enumerable: true,
52
- get: function () { return chunkAVPEA5PB_cjs.ScrollReveal; }
52
+ get: function () { return chunkMPX7QT4R_cjs.ScrollReveal; }
53
53
  });
54
54
  Object.defineProperty(exports, "ThemeProvider", {
55
55
  enumerable: true,
56
- get: function () { return chunkAVPEA5PB_cjs.ThemeProvider; }
56
+ get: function () { return chunkMPX7QT4R_cjs.ThemeProvider; }
57
57
  });
58
58
  Object.defineProperty(exports, "TiltCard", {
59
59
  enumerable: true,
60
- get: function () { return chunkAVPEA5PB_cjs.TiltCard; }
60
+ get: function () { return chunkMPX7QT4R_cjs.TiltCard; }
61
61
  });
62
62
  Object.defineProperty(exports, "themeScript", {
63
63
  enumerable: true,
64
- get: function () { return chunkAVPEA5PB_cjs.themeScript; }
64
+ get: function () { return chunkMPX7QT4R_cjs.themeScript; }
65
65
  });
66
66
  Object.defineProperty(exports, "useMotionConfig", {
67
67
  enumerable: true,
68
- get: function () { return chunkAVPEA5PB_cjs.useMotionConfig; }
68
+ get: function () { return chunkMPX7QT4R_cjs.useMotionConfig; }
69
69
  });
70
70
  Object.defineProperty(exports, "useTheme", {
71
71
  enumerable: true,
72
- get: function () { return chunkAVPEA5PB_cjs.useTheme; }
72
+ get: function () { return chunkMPX7QT4R_cjs.useTheme; }
73
73
  });
74
74
  Object.defineProperty(exports, "useMergedRef", {
75
75
  enumerable: true,
76
- get: function () { return chunk6VRF7X5C_cjs.useMergedRef; }
76
+ get: function () { return chunkTEPQGFR4_cjs.useMergedRef; }
77
77
  });
78
78
  //# sourceMappingURL=motion.cjs.map
79
79
  //# sourceMappingURL=motion.cjs.map
package/dist/motion.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- export { A as AnimatePresence, a as AnimatePresenceProps, b as AnimatedText, c as AnimatedTextProps, D as Draggable, f as DraggableProps, G as GradientText, g as GradientTextProps, M as MagneticButton, h as Marquee, i as Motion, j as MotionConfig, k as MotionConfigProps, l as MotionConfigValue, m as MotionTransition, n as MotionValues, P as Parallax, R as Ripple, S as ScrollReveal, T as ThemeContextValue, o as ThemeProvider, p as ThemeProviderProps, q as ThemeSetting, r as TiltCard, t as themeScript, v as useMotionConfig, w as useTheme } from './motion-CSX4g2N8.cjs';
2
- export { c as useMergedRef } from './use-observers-B9qtimrk.cjs';
1
+ export { A as AnimatePresence, a as AnimatePresenceProps, b as AnimatedText, c as AnimatedTextProps, D as Draggable, f as DraggableProps, G as GradientText, g as GradientTextProps, M as MagneticButton, h as Marquee, i as Motion, j as MotionConfig, k as MotionConfigProps, l as MotionConfigValue, m as MotionTransition, n as MotionValues, P as Parallax, R as Ripple, S as ScrollReveal, T as ThemeContextValue, o as ThemeProvider, p as ThemeProviderProps, q as ThemeSetting, r as TiltCard, t as themeScript, v as useMotionConfig, w as useTheme } from './motion-C6WfBFES.cjs';
2
+ export { c as useMergedRef } from './use-observers-DvA7hSz4.cjs';
3
3
  import 'react';
4
4
  import '@ansh-ui/core';
package/dist/motion.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { A as AnimatePresence, a as AnimatePresenceProps, b as AnimatedText, c as AnimatedTextProps, D as Draggable, f as DraggableProps, G as GradientText, g as GradientTextProps, M as MagneticButton, h as Marquee, i as Motion, j as MotionConfig, k as MotionConfigProps, l as MotionConfigValue, m as MotionTransition, n as MotionValues, P as Parallax, R as Ripple, S as ScrollReveal, T as ThemeContextValue, o as ThemeProvider, p as ThemeProviderProps, q as ThemeSetting, r as TiltCard, t as themeScript, v as useMotionConfig, w as useTheme } from './motion-CQmCq6_k.js';
2
- export { c as useMergedRef } from './use-observers-B9qtimrk.js';
1
+ export { A as AnimatePresence, a as AnimatePresenceProps, b as AnimatedText, c as AnimatedTextProps, D as Draggable, f as DraggableProps, G as GradientText, g as GradientTextProps, M as MagneticButton, h as Marquee, i as Motion, j as MotionConfig, k as MotionConfigProps, l as MotionConfigValue, m as MotionTransition, n as MotionValues, P as Parallax, R as Ripple, S as ScrollReveal, T as ThemeContextValue, o as ThemeProvider, p as ThemeProviderProps, q as ThemeSetting, r as TiltCard, t as themeScript, v as useMotionConfig, w as useTheme } from './motion-ugXmf505.js';
2
+ export { c as useMergedRef } from './use-observers-DvA7hSz4.js';
3
3
  import 'react';
4
4
  import '@ansh-ui/core';
package/dist/motion.js CHANGED
@@ -1,6 +1,6 @@
1
1
  'use client';
2
- export { AnimatePresence, AnimatedText, Draggable, GradientText, MagneticButton, Marquee, Motion, MotionConfig, Parallax, Ripple, ScrollReveal, ThemeProvider, TiltCard, themeScript, useMotionConfig, useTheme } from './chunk-T4AK2KLM.js';
3
- export { useMergedRef } from './chunk-IBXLC5IE.js';
2
+ export { AnimatePresence, AnimatedText, Draggable, GradientText, MagneticButton, Marquee, Motion, MotionConfig, Parallax, Ripple, ScrollReveal, ThemeProvider, TiltCard, themeScript, useMotionConfig, useTheme } from './chunk-NJUVVMJV.js';
3
+ export { useMergedRef } from './chunk-P5MRISBP.js';
4
4
  import './chunk-H34OXXJU.js';
5
5
  //# sourceMappingURL=motion.js.map
6
6
  //# sourceMappingURL=motion.js.map
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkDATBU46V_cjs = require('./chunk-DATBU46V.cjs');
4
+ var chunkXYT6OXKP_cjs = require('./chunk-XYT6OXKP.cjs');
5
5
  var chunkZWAFLHC2_cjs = require('./chunk-ZWAFLHC2.cjs');
6
6
  require('./chunk-PO5DU3FU.cjs');
7
7
  require('./chunk-SFU5EPSN.cjs');
@@ -10,31 +10,31 @@ require('./chunk-SFU5EPSN.cjs');
10
10
 
11
11
  Object.defineProperty(exports, "Accordion", {
12
12
  enumerable: true,
13
- get: function () { return chunkDATBU46V_cjs.Accordion; }
13
+ get: function () { return chunkXYT6OXKP_cjs.Accordion; }
14
14
  });
15
15
  Object.defineProperty(exports, "Breadcrumbs", {
16
16
  enumerable: true,
17
- get: function () { return chunkDATBU46V_cjs.Breadcrumbs; }
17
+ get: function () { return chunkXYT6OXKP_cjs.Breadcrumbs; }
18
18
  });
19
19
  Object.defineProperty(exports, "Collapsible", {
20
20
  enumerable: true,
21
- get: function () { return chunkDATBU46V_cjs.Collapsible; }
21
+ get: function () { return chunkXYT6OXKP_cjs.Collapsible; }
22
22
  });
23
23
  Object.defineProperty(exports, "DisclosureList", {
24
24
  enumerable: true,
25
- get: function () { return chunkDATBU46V_cjs.DisclosureList; }
25
+ get: function () { return chunkXYT6OXKP_cjs.DisclosureList; }
26
26
  });
27
27
  Object.defineProperty(exports, "NavigationMenu", {
28
28
  enumerable: true,
29
- get: function () { return chunkDATBU46V_cjs.NavigationMenu; }
29
+ get: function () { return chunkXYT6OXKP_cjs.NavigationMenu; }
30
30
  });
31
31
  Object.defineProperty(exports, "Stepper", {
32
32
  enumerable: true,
33
- get: function () { return chunkDATBU46V_cjs.Stepper; }
33
+ get: function () { return chunkXYT6OXKP_cjs.Stepper; }
34
34
  });
35
35
  Object.defineProperty(exports, "Tabs", {
36
36
  enumerable: true,
37
- get: function () { return chunkDATBU46V_cjs.Tabs; }
37
+ get: function () { return chunkXYT6OXKP_cjs.Tabs; }
38
38
  });
39
39
  Object.defineProperty(exports, "AppShell", {
40
40
  enumerable: true,
@@ -1,6 +1,6 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
- export { A as AppShell, a as AppShellProps, N as NavItem, b as NavSection, S as Sidebar, c as SidebarProps } from './sidebar-D-PafAXw.cjs';
3
+ export { A as AppShell, a as AppShellProps, N as NavItem, b as NavSection, S as Sidebar, c as SidebarProps } from './sidebar-Dyt67t2z.cjs';
4
4
 
5
5
  interface TabItem {
6
6
  id: string;
@@ -207,4 +207,5 @@ interface DisclosureListProps {
207
207
  /** Show a few items with a "show N more" toggle. */
208
208
  declare function DisclosureList({ items, initial, moreLabel, lessLabel, className, }: DisclosureListProps): react.JSX.Element;
209
209
 
210
- export { Accordion, type AccordionItem, type AccordionProps, Breadcrumbs, type BreadcrumbsProps, Collapsible, type CollapsibleProps, type Crumb, DisclosureList, type DisclosureListProps, type MegaMenuColumn, type MegaMenuLink, type NavMenuItem, NavigationMenu, type NavigationMenuProps, type Step, Stepper, type StepperProps, type TabItem, Tabs, type TabsProps };
210
+ export { Accordion, Breadcrumbs, Collapsible, DisclosureList, NavigationMenu, Stepper, Tabs };
211
+ export type { AccordionItem, AccordionProps, BreadcrumbsProps, CollapsibleProps, Crumb, DisclosureListProps, MegaMenuColumn, MegaMenuLink, NavMenuItem, NavigationMenuProps, Step, StepperProps, TabItem, TabsProps };
@@ -1,6 +1,6 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
- export { A as AppShell, a as AppShellProps, N as NavItem, b as NavSection, S as Sidebar, c as SidebarProps } from './sidebar-D-PafAXw.js';
3
+ export { A as AppShell, a as AppShellProps, N as NavItem, b as NavSection, S as Sidebar, c as SidebarProps } from './sidebar-Dyt67t2z.js';
4
4
 
5
5
  interface TabItem {
6
6
  id: string;
@@ -207,4 +207,5 @@ interface DisclosureListProps {
207
207
  /** Show a few items with a "show N more" toggle. */
208
208
  declare function DisclosureList({ items, initial, moreLabel, lessLabel, className, }: DisclosureListProps): react.JSX.Element;
209
209
 
210
- export { Accordion, type AccordionItem, type AccordionProps, Breadcrumbs, type BreadcrumbsProps, Collapsible, type CollapsibleProps, type Crumb, DisclosureList, type DisclosureListProps, type MegaMenuColumn, type MegaMenuLink, type NavMenuItem, NavigationMenu, type NavigationMenuProps, type Step, Stepper, type StepperProps, type TabItem, Tabs, type TabsProps };
210
+ export { Accordion, Breadcrumbs, Collapsible, DisclosureList, NavigationMenu, Stepper, Tabs };
211
+ export type { AccordionItem, AccordionProps, BreadcrumbsProps, CollapsibleProps, Crumb, DisclosureListProps, MegaMenuColumn, MegaMenuLink, NavMenuItem, NavigationMenuProps, Step, StepperProps, TabItem, TabsProps };
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- export { Accordion, Breadcrumbs, Collapsible, DisclosureList, NavigationMenu, Stepper, Tabs } from './chunk-OLTS6G5M.js';
2
+ export { Accordion, Breadcrumbs, Collapsible, DisclosureList, NavigationMenu, Stepper, Tabs } from './chunk-GNA33V2J.js';
3
3
  export { AppShell, Sidebar } from './chunk-5CFQFMP5.js';
4
4
  import './chunk-LXCIXR5T.js';
5
5
  import './chunk-H34OXXJU.js';