@xaui/native 0.9.1-alpha.37 → 0.9.1-alpha.39

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 (149) hide show
  1. package/dist/{chunk-OULTSBKU.js → chunk-26OGEFQI.js} +1 -1
  2. package/dist/chunk-2EGR4LWD.js +145 -0
  3. package/dist/{chunk-TJHYSSBZ.js → chunk-346QBNUD.js} +1 -1
  4. package/dist/chunk-37L7YGZV.cjs +425 -0
  5. package/dist/{chunk-PPWXLZGL.js → chunk-3GFRSZYR.js} +15 -23
  6. package/dist/{chunk-DKH6BNPF.cjs → chunk-3JXI2IHV.cjs} +13 -13
  7. package/dist/{chunk-7B3UBUC6.cjs → chunk-4KFKWBN5.cjs} +23 -2
  8. package/dist/{chunk-IGLKACSR.cjs → chunk-4KSKQD37.cjs} +5 -5
  9. package/dist/{chunk-UBOXW5WO.cjs → chunk-54CWXA34.cjs} +61 -61
  10. package/dist/chunk-64MXEVT3.js +66 -0
  11. package/dist/{chunk-ZJWEVFAO.cjs → chunk-66FOASTP.cjs} +9 -9
  12. package/dist/{chunk-5PPNDKRX.js → chunk-6CO6FM67.js} +16 -16
  13. package/dist/{chunk-DVDQSW7U.cjs → chunk-76XDVA24.cjs} +65 -190
  14. package/dist/{chunk-54FJOKAN.cjs → chunk-7GHM4GKL.cjs} +25 -25
  15. package/dist/chunk-7KLBTMXV.cjs +478 -0
  16. package/dist/{chunk-AP6RVIIK.cjs → chunk-7TOG4TVU.cjs} +21 -21
  17. package/dist/{chunk-LEWW24RQ.cjs → chunk-A7YB7YWX.cjs} +3 -3
  18. package/dist/{chunk-3P6M2R4S.cjs → chunk-AAVCMCJ3.cjs} +4 -4
  19. package/dist/{chunk-VFTT3Q4B.cjs → chunk-BNFIFRQA.cjs} +3 -3
  20. package/dist/{chunk-JXNFOOKC.js → chunk-DY3SUG5P.js} +5 -5
  21. package/dist/chunk-EKS3W46M.cjs +66 -0
  22. package/dist/{chunk-EOJ5MYAQ.js → chunk-EYD4H4X6.js} +4 -4
  23. package/dist/{chunk-RGKWNK4T.js → chunk-FBCWNXZC.js} +58 -58
  24. package/dist/{chunk-HXW4ANVB.js → chunk-FHUYHV6J.js} +25 -4
  25. package/dist/chunk-GJSFKH4L.js +586 -0
  26. package/dist/{chunk-6G3XWPNP.js → chunk-HA6BFY3A.js} +3 -3
  27. package/dist/{chunk-FTQHDJYL.cjs → chunk-HOI5425P.cjs} +9 -9
  28. package/dist/{chunk-XWY4DF37.js → chunk-JKP4TPIL.js} +86 -289
  29. package/dist/{chunk-YXPYOOHU.js → chunk-K72UDPVN.js} +27 -27
  30. package/dist/{chunk-NTD3NPRX.cjs → chunk-KSUV74BE.cjs} +2 -2
  31. package/dist/{chunk-UGF35NSE.js → chunk-LIUO6D3D.js} +75 -75
  32. package/dist/{chunk-E3X5ODKQ.js → chunk-LTX6TB5I.js} +1 -1
  33. package/dist/chunk-LUPCPLND.cjs +145 -0
  34. package/dist/{chunk-BORJJYDW.js → chunk-MXGER5PI.js} +2 -2
  35. package/dist/{chunk-GTT4NHS2.cjs → chunk-NCCRQK3P.cjs} +11 -11
  36. package/dist/chunk-NCTOTTVW.js +13 -0
  37. package/dist/{chunk-NKPTXTTS.js → chunk-QZ24MZRX.js} +3 -3
  38. package/dist/{chunk-7LSY4WFL.js → chunk-R7BU4CPS.js} +2 -2
  39. package/dist/{chunk-JB5LGQ54.cjs → chunk-RKCWYUGA.cjs} +3 -3
  40. package/dist/{chunk-SMW6ZWMH.js → chunk-S2WNWMNT.js} +1 -1
  41. package/dist/{chunk-WVLSQO6K.cjs → chunk-S4QUM4EE.cjs} +9 -9
  42. package/dist/{chunk-SO5UAGIU.js → chunk-SACDOFGF.js} +15 -15
  43. package/dist/{chunk-CUQTAPBU.cjs → chunk-SIP5J7HU.cjs} +17 -17
  44. package/dist/{chunk-O3A3DBSZ.js → chunk-SZLXPF3G.js} +1 -1
  45. package/dist/{chunk-437QULXO.cjs → chunk-TDTUAIFF.cjs} +5 -5
  46. package/dist/{chunk-DRMT346W.cjs → chunk-TGMVEHV7.cjs} +64 -64
  47. package/dist/{chunk-TDYPY2J7.js → chunk-TRETQZEW.js} +7 -7
  48. package/dist/{chunk-ITURCQMQ.cjs → chunk-URA25DU4.cjs} +5 -5
  49. package/dist/{chunk-4PTWZCOK.js → chunk-USF6EWYR.js} +7 -7
  50. package/dist/{chunk-P747CRAY.cjs → chunk-VZK3NLBH.cjs} +9 -9
  51. package/dist/chunk-WFEMJCXO.cjs +13 -0
  52. package/dist/chunk-XAFP5JLK.js +425 -0
  53. package/dist/{chunk-RVRVGG73.js → chunk-XNMZQSY5.js} +2 -2
  54. package/dist/{chunk-K4TWKF5U.cjs → chunk-XSQPVDFH.cjs} +15 -25
  55. package/dist/{chunk-JDSE4TQL.js → chunk-XTC2SLFT.js} +1 -1
  56. package/dist/{chunk-C5VDFRAD.cjs → chunk-XWNG2U4K.cjs} +2 -2
  57. package/dist/components/accordion/index.cjs +35 -0
  58. package/dist/components/accordion/index.d.cts +299 -0
  59. package/dist/components/accordion/index.d.ts +299 -0
  60. package/dist/components/accordion/index.js +35 -0
  61. package/dist/components/alert/index.cjs +7 -7
  62. package/dist/components/alert/index.d.cts +2 -2
  63. package/dist/components/alert/index.d.ts +2 -2
  64. package/dist/components/alert/index.js +6 -6
  65. package/dist/components/avatar/index.cjs +4 -4
  66. package/dist/components/avatar/index.d.cts +3 -3
  67. package/dist/components/avatar/index.d.ts +3 -3
  68. package/dist/components/avatar/index.js +3 -3
  69. package/dist/components/badge/index.cjs +3 -3
  70. package/dist/components/badge/index.d.cts +1 -1
  71. package/dist/components/badge/index.d.ts +1 -1
  72. package/dist/components/badge/index.js +2 -2
  73. package/dist/components/button/index.cjs +8 -7
  74. package/dist/components/button/index.d.cts +204 -204
  75. package/dist/components/button/index.d.ts +204 -204
  76. package/dist/components/button/index.js +7 -6
  77. package/dist/components/card/index.cjs +5 -5
  78. package/dist/components/card/index.d.cts +206 -206
  79. package/dist/components/card/index.d.ts +206 -206
  80. package/dist/components/card/index.js +4 -4
  81. package/dist/components/checkbox/index.cjs +5 -5
  82. package/dist/components/checkbox/index.d.cts +408 -408
  83. package/dist/components/checkbox/index.d.ts +408 -408
  84. package/dist/components/checkbox/index.js +4 -4
  85. package/dist/components/chip/index.cjs +7 -7
  86. package/dist/components/chip/index.d.cts +205 -205
  87. package/dist/components/chip/index.d.ts +205 -205
  88. package/dist/components/chip/index.js +6 -6
  89. package/dist/components/divider/index.cjs +3 -3
  90. package/dist/components/divider/index.d.cts +3 -3
  91. package/dist/components/divider/index.d.ts +3 -3
  92. package/dist/components/divider/index.js +2 -2
  93. package/dist/components/field-group/index.cjs +5 -5
  94. package/dist/components/field-group/index.d.cts +8 -8
  95. package/dist/components/field-group/index.d.ts +8 -8
  96. package/dist/components/field-group/index.js +4 -4
  97. package/dist/components/input-otp/index.cjs +3 -3
  98. package/dist/components/input-otp/index.d.cts +2 -2
  99. package/dist/components/input-otp/index.d.ts +2 -2
  100. package/dist/components/input-otp/index.js +2 -2
  101. package/dist/components/popover/index.cjs +37 -0
  102. package/dist/components/popover/index.d.cts +254 -0
  103. package/dist/components/popover/index.d.ts +254 -0
  104. package/dist/components/popover/index.js +37 -0
  105. package/dist/components/radio/index.cjs +5 -5
  106. package/dist/components/radio/index.d.cts +419 -419
  107. package/dist/components/radio/index.d.ts +419 -419
  108. package/dist/components/radio/index.js +4 -4
  109. package/dist/components/select/index.cjs +10 -7
  110. package/dist/components/select/index.d.cts +24 -45
  111. package/dist/components/select/index.d.ts +24 -45
  112. package/dist/components/select/index.js +9 -6
  113. package/dist/components/skeleton/index.d.cts +1 -1
  114. package/dist/components/skeleton/index.d.ts +1 -1
  115. package/dist/components/spinner/index.cjs +5 -4
  116. package/dist/components/spinner/index.d.cts +1 -1
  117. package/dist/components/spinner/index.d.ts +1 -1
  118. package/dist/components/spinner/index.js +4 -3
  119. package/dist/components/switch/index.cjs +5 -5
  120. package/dist/components/switch/index.d.cts +409 -409
  121. package/dist/components/switch/index.d.ts +409 -409
  122. package/dist/components/switch/index.js +4 -4
  123. package/dist/components/text-area/index.cjs +4 -4
  124. package/dist/components/text-area/index.js +3 -3
  125. package/dist/components/text-field/index.cjs +3 -3
  126. package/dist/components/text-field/index.d.cts +3 -3
  127. package/dist/components/text-field/index.d.ts +3 -3
  128. package/dist/components/text-field/index.js +2 -2
  129. package/dist/components/typography/index.cjs +3 -3
  130. package/dist/components/typography/index.d.cts +5 -5
  131. package/dist/components/typography/index.d.ts +5 -5
  132. package/dist/components/typography/index.js +2 -2
  133. package/dist/components/view/index.cjs +3 -3
  134. package/dist/components/view/index.d.cts +8 -8
  135. package/dist/components/view/index.d.ts +8 -8
  136. package/dist/components/view/index.js +2 -2
  137. package/dist/index.cjs +89 -28
  138. package/dist/index.d.cts +5 -2
  139. package/dist/index.d.ts +5 -2
  140. package/dist/index.js +109 -48
  141. package/dist/placement-DHa0Rrh1.d.cts +38 -0
  142. package/dist/placement-DHa0Rrh1.d.ts +38 -0
  143. package/dist/system/index.cjs +24 -8
  144. package/dist/system/index.d.cts +83 -34
  145. package/dist/system/index.d.ts +83 -34
  146. package/dist/system/index.js +24 -8
  147. package/package.json +21 -1
  148. /package/dist/{chunk-OJCCV65P.cjs → chunk-GGW43Q37.cjs} +0 -0
  149. /package/dist/{chunk-MESKS6AI.js → chunk-WHJTBTYM.js} +0 -0
@@ -6,14 +6,14 @@ var _chunkF6CQ6CBIcjs = require('./chunk-F6CQ6CBI.cjs');
6
6
  var _chunk7EIHHOHPcjs = require('./chunk-7EIHHOHP.cjs');
7
7
 
8
8
 
9
- var _chunkDRMT346Wcjs = require('./chunk-DRMT346W.cjs');
9
+ var _chunkTGMVEHV7cjs = require('./chunk-TGMVEHV7.cjs');
10
10
 
11
11
 
12
12
  var _chunk7DPL3ZDScjs = require('./chunk-7DPL3ZDS.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunk54FJOKANcjs = require('./chunk-54FJOKAN.cjs');
16
+ var _chunk7GHM4GKLcjs = require('./chunk-7GHM4GKL.cjs');
17
17
 
18
18
 
19
19
 
@@ -30,7 +30,7 @@ var _react = require('react');
30
30
  var _reactnative = require('react-native');
31
31
 
32
32
  // src/components/checkbox/checkbox.context.ts
33
- var [CheckboxProvider, useCheckbox] = _chunk54FJOKANcjs.createSlotContext.call(void 0, "Checkbox");
33
+ var [CheckboxProvider, useCheckbox] = _chunk7GHM4GKLcjs.createSlotContext.call(void 0, "Checkbox");
34
34
 
35
35
  // src/components/checkbox/checkbox-indicator.tsx
36
36
  var _jsxruntime = require('react/jsx-runtime');
@@ -297,13 +297,13 @@ var CheckboxRoot = _react.forwardRef.call(void 0, function Checkbox({
297
297
  styleProps,
298
298
  typeof style === "function" ? style({ pressed: isPressed }) : style
299
299
  ];
300
- const text = _chunk54FJOKANcjs.childrenToString.call(void 0, children);
300
+ const text = _chunk7GHM4GKLcjs.childrenToString.call(void 0, children);
301
301
  const content = text !== null ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
302
302
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CheckboxIndicator, {}),
303
303
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CheckboxLabel, { children: text })
304
304
  ] }) : _nullishCoalesce(children, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CheckboxIndicator, {})));
305
305
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CheckboxProvider, { value: context, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
306
- _chunkDRMT346Wcjs.PressableFeedback,
306
+ _chunkTGMVEHV7cjs.PressableFeedback,
307
307
  {
308
308
  ref,
309
309
  isPressed,
@@ -1,24 +1,24 @@
1
1
  import {
2
2
  CloseButton,
3
3
  closeButtonBase
4
- } from "./chunk-EOJ5MYAQ.js";
4
+ } from "./chunk-EYD4H4X6.js";
5
5
  import {
6
6
  Icon
7
- } from "./chunk-HXW4ANVB.js";
7
+ } from "./chunk-FHUYHV6J.js";
8
8
  import {
9
9
  PressableFeedback
10
- } from "./chunk-UGF35NSE.js";
11
- import {
12
- warnDev
13
- } from "./chunk-EGLLDKN6.js";
10
+ } from "./chunk-LIUO6D3D.js";
14
11
  import {
15
12
  usePressState
16
13
  } from "./chunk-423RQBOX.js";
14
+ import {
15
+ warnDev
16
+ } from "./chunk-EGLLDKN6.js";
17
17
  import {
18
18
  Slot,
19
19
  childrenToString,
20
20
  createSlotContext
21
- } from "./chunk-YXPYOOHU.js";
21
+ } from "./chunk-K72UDPVN.js";
22
22
  import {
23
23
  createRecipe,
24
24
  radiusAxis
@@ -5,10 +5,10 @@
5
5
 
6
6
 
7
7
 
8
- var _chunkLEWW24RQcjs = require('./chunk-LEWW24RQ.cjs');
8
+ var _chunkA7YB7YWXcjs = require('./chunk-A7YB7YWX.cjs');
9
9
 
10
10
 
11
- var _chunk54FJOKANcjs = require('./chunk-54FJOKAN.cjs');
11
+ var _chunk7GHM4GKLcjs = require('./chunk-7GHM4GKL.cjs');
12
12
 
13
13
 
14
14
  var _chunkTK44VBIEcjs = require('./chunk-TK44VBIE.cjs');
@@ -17,13 +17,13 @@ var _chunkTK44VBIEcjs = require('./chunk-TK44VBIE.cjs');
17
17
  var _react = require('react');
18
18
 
19
19
  // src/components/text-area/text-area.context.ts
20
- var [TextAreaProvider, useTextArea] = _chunk54FJOKANcjs.createSlotContext.call(void 0, "TextArea");
20
+ var [TextAreaProvider, useTextArea] = _chunk7GHM4GKLcjs.createSlotContext.call(void 0, "TextArea");
21
21
 
22
22
  // src/components/text-area/text-area-field.tsx
23
23
  var _jsxruntime = require('react/jsx-runtime');
24
24
  var TextAreaField = _react.forwardRef.call(void 0,
25
25
  function TextAreaField2({ style, scrollEnabled, ...props }, ref) {
26
- const { textAreaStyle, textArea } = _chunkLEWW24RQcjs.useTextField.call(void 0, );
26
+ const { textAreaStyle, textArea } = _chunkA7YB7YWXcjs.useTextField.call(void 0, );
27
27
  const { rows, maxRows } = useTextArea();
28
28
  const [styleProps, rest] = _chunkTK44VBIEcjs.useStyleProps.call(void 0, props);
29
29
  const height = _react.useMemo.call(void 0, () => {
@@ -37,7 +37,7 @@ var TextAreaField = _react.forwardRef.call(void 0,
37
37
  };
38
38
  }, [rows, maxRows, textArea]);
39
39
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
40
- _chunkLEWW24RQcjs.TextFieldField,
40
+ _chunkA7YB7YWXcjs.TextFieldField,
41
41
  {
42
42
  ref,
43
43
  multiline: true,
@@ -56,16 +56,16 @@ TextAreaField.displayName = "XAUI.TextArea.Field";
56
56
  var DEFAULT_ROWS = 3;
57
57
  var TextAreaRoot = _react.forwardRef.call(void 0, function TextArea({ rows = DEFAULT_ROWS, maxRows, children, ...props }, ref) {
58
58
  const context = _react.useMemo.call(void 0, () => ({ rows, maxRows }), [rows, maxRows]);
59
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TextAreaProvider, { value: context, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLEWW24RQcjs.TextFieldRoot, { ref, ...props, children }) });
59
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TextAreaProvider, { value: context, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkA7YB7YWXcjs.TextFieldRoot, { ref, ...props, children }) });
60
60
  });
61
61
  TextAreaRoot.displayName = "XAUI.TextArea.Root";
62
62
 
63
63
  // src/components/text-area/index.ts
64
64
  var TextArea2 = Object.assign(TextAreaRoot, {
65
- Label: _chunkLEWW24RQcjs.TextFieldLabel,
65
+ Label: _chunkA7YB7YWXcjs.TextFieldLabel,
66
66
  Field: TextAreaField,
67
- Description: _chunkLEWW24RQcjs.TextFieldDescription,
68
- Error: _chunkLEWW24RQcjs.TextFieldError
67
+ Description: _chunkA7YB7YWXcjs.TextFieldDescription,
68
+ Error: _chunkA7YB7YWXcjs.TextFieldError
69
69
  });
70
70
 
71
71
 
@@ -0,0 +1,13 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunkH4E4HDEPcjs = require('./chunk-H4E4HDEP.cjs');
4
+
5
+ // src/hooks/use-merged-ref.ts
6
+ var _react = require('react');
7
+ function useMergedRef(...refs) {
8
+ return _react.useMemo.call(void 0, () => _chunkH4E4HDEPcjs.mergeRefs.call(void 0, ...refs), refs);
9
+ }
10
+
11
+
12
+
13
+ exports.useMergedRef = useMergedRef;
@@ -0,0 +1,425 @@
1
+ import {
2
+ useAnchoredPosition
3
+ } from "./chunk-2EGR4LWD.js";
4
+ import {
5
+ Portal
6
+ } from "./chunk-2PMXMKS5.js";
7
+ import {
8
+ anchoredEntering,
9
+ anchoredExiting,
10
+ overlayEntering,
11
+ overlayExiting
12
+ } from "./chunk-64MXEVT3.js";
13
+ import {
14
+ useMergedRef
15
+ } from "./chunk-NCTOTTVW.js";
16
+ import {
17
+ useControllableState
18
+ } from "./chunk-F6W3JQ7K.js";
19
+ import {
20
+ PressableFeedback
21
+ } from "./chunk-LIUO6D3D.js";
22
+ import {
23
+ usePressState
24
+ } from "./chunk-423RQBOX.js";
25
+ import {
26
+ createSlotContext
27
+ } from "./chunk-K72UDPVN.js";
28
+ import {
29
+ createRecipe,
30
+ radiusAxis
31
+ } from "./chunk-4GTAZM2C.js";
32
+ import {
33
+ useXAUITheme
34
+ } from "./chunk-A3EGFI6T.js";
35
+ import {
36
+ useStyleProps
37
+ } from "./chunk-M63GFNKV.js";
38
+
39
+ // src/components/popover/popover-close.tsx
40
+ import { forwardRef, useCallback } from "react";
41
+
42
+ // src/components/popover/popover.context.ts
43
+ var [PopoverProvider, usePopover] = createSlotContext("Popover");
44
+
45
+ // src/components/popover/popover-close.tsx
46
+ import { jsx } from "react/jsx-runtime";
47
+ var PopoverClose = forwardRef(
48
+ function PopoverClose2({
49
+ children,
50
+ asChild = false,
51
+ accessibilityRole = "button",
52
+ style,
53
+ onPress,
54
+ onPressIn,
55
+ onPressOut,
56
+ ...props
57
+ }, ref) {
58
+ const { close } = usePopover();
59
+ const [styleProps, rest] = useStyleProps(props);
60
+ const [isPressed, press] = usePressState({ onPressIn, onPressOut });
61
+ const handlePress = useCallback(
62
+ (event) => {
63
+ onPress?.(event);
64
+ close();
65
+ },
66
+ [close, onPress]
67
+ );
68
+ return /* @__PURE__ */ jsx(
69
+ PressableFeedback,
70
+ {
71
+ ref,
72
+ isPressed,
73
+ asChild,
74
+ accessibilityRole,
75
+ ...rest,
76
+ style: [
77
+ styleProps,
78
+ typeof style === "function" ? style({ pressed: isPressed }) : style
79
+ ],
80
+ onPress: handlePress,
81
+ onPressIn: press.onPressIn,
82
+ onPressOut: press.onPressOut,
83
+ children
84
+ }
85
+ );
86
+ }
87
+ );
88
+ PopoverClose.displayName = "XAUI.Popover.Close";
89
+
90
+ // src/components/popover/popover-content.tsx
91
+ import { forwardRef as forwardRef2 } from "react";
92
+ import Animated from "react-native-reanimated";
93
+
94
+ // src/components/popover/popover.recipe.ts
95
+ var SLOTS = ["trigger", "overlay", "content", "title", "description"];
96
+ function popoverMeasure(fontSize) {
97
+ return fontSize * 13;
98
+ }
99
+ var popoverRecipe = createRecipe({
100
+ slots: SLOTS,
101
+ base: (theme) => ({
102
+ overlay: { position: "absolute", top: 0, bottom: 0, start: 0, end: 0 },
103
+ content: {
104
+ position: "absolute",
105
+ backgroundColor: theme.colors.overlay,
106
+ // HeroUI's twelve by sixteen: a panel is read, not scanned, so it is wider-padded
107
+ // than it is tall-padded.
108
+ paddingVertical: theme.spacing(3),
109
+ paddingHorizontal: theme.spacing(4),
110
+ // Their `--radius-3xl` on a base of 8 is 24 points; our base is 12, so the same 24
111
+ // is `2xl`. Reading their key rather than their number puts a pill on it.
112
+ borderRadius: theme.radius["2xl"],
113
+ borderCurve: "continuous",
114
+ gap: theme.spacing(1.5),
115
+ ...theme.shadows.overlay
116
+ },
117
+ title: {
118
+ fontFamily: theme.fontFamilies.body,
119
+ fontWeight: theme.fontWeights.medium,
120
+ fontSize: theme.fontSizes.lg,
121
+ lineHeight: theme.lineHeights.lg,
122
+ color: theme.colors.overlayForeground
123
+ },
124
+ description: {
125
+ fontFamily: theme.fontFamilies.body,
126
+ fontSize: theme.fontSizes.md,
127
+ lineHeight: theme.lineHeights.md,
128
+ color: theme.colors.muted
129
+ }
130
+ }),
131
+ variantTokens: { default: {} },
132
+ variants: { radius: radiusAxis("content") },
133
+ states: {
134
+ disabled: (theme) => ({ trigger: { opacity: theme.opacity.disabled } })
135
+ },
136
+ defaultVariants: { variant: "default" }
137
+ });
138
+
139
+ // src/components/popover/popover-content.tsx
140
+ import { jsx as jsx2 } from "react/jsx-runtime";
141
+ var DEFAULT_OFFSET = 9;
142
+ var DEFAULT_INSETS = {
143
+ top: 12,
144
+ bottom: 12,
145
+ start: 12,
146
+ end: 12
147
+ };
148
+ var PopoverContent = forwardRef2(
149
+ function PopoverContent2({
150
+ children,
151
+ placement = "bottom",
152
+ align = "center",
153
+ width = "content-fit",
154
+ offset = DEFAULT_OFFSET,
155
+ alignOffset = 0,
156
+ avoidCollisions = true,
157
+ insets,
158
+ style,
159
+ onLayout,
160
+ ...props
161
+ }, ref) {
162
+ const context = usePopover();
163
+ const { contentStyle, isOpen, anchor } = context;
164
+ const [styleProps, rest] = useStyleProps(props);
165
+ const theme = useXAUITheme();
166
+ const { position, onContentLayout, measuringStyle } = useAnchoredPosition({
167
+ anchor,
168
+ isOpen,
169
+ placement,
170
+ align,
171
+ width,
172
+ offset,
173
+ alignOffset,
174
+ avoidCollisions,
175
+ insets: { ...DEFAULT_INSETS, ...insets },
176
+ maxWidth: popoverMeasure(theme.fontSizes.md),
177
+ onLayout
178
+ });
179
+ if (!isOpen || anchor === null) return null;
180
+ return /* @__PURE__ */ jsx2(Portal, { children: /* @__PURE__ */ jsx2(PopoverProvider, { value: context, children: /* @__PURE__ */ jsx2(
181
+ Animated.View,
182
+ {
183
+ ref,
184
+ entering: position ? anchoredEntering(position.placement) : void 0,
185
+ exiting: position ? anchoredExiting(position.placement) : void 0,
186
+ onLayout: onContentLayout,
187
+ ...rest,
188
+ style: [
189
+ contentStyle,
190
+ position === null ? measuringStyle : {
191
+ top: position.top,
192
+ start: position.start,
193
+ width: position.width,
194
+ maxHeight: position.maxHeight
195
+ },
196
+ styleProps,
197
+ style
198
+ ],
199
+ children
200
+ },
201
+ position?.placement ?? "measuring"
202
+ ) }) });
203
+ }
204
+ );
205
+ PopoverContent.displayName = "XAUI.Popover.Content";
206
+
207
+ // src/components/popover/popover-description.tsx
208
+ import { forwardRef as forwardRef3 } from "react";
209
+ import { Text } from "react-native";
210
+ import { jsx as jsx3 } from "react/jsx-runtime";
211
+ var PopoverDescription = forwardRef3(
212
+ function PopoverDescription2({ children, style, ...props }, ref) {
213
+ const { descriptionStyle } = usePopover();
214
+ const [styleProps, rest] = useStyleProps(props);
215
+ return /* @__PURE__ */ jsx3(Text, { ref, ...rest, style: [descriptionStyle, styleProps, style], children });
216
+ }
217
+ );
218
+ PopoverDescription.displayName = "XAUI.Popover.Description";
219
+
220
+ // src/components/popover/popover-overlay.tsx
221
+ import { forwardRef as forwardRef4 } from "react";
222
+ import { Pressable } from "react-native";
223
+ import Animated2 from "react-native-reanimated";
224
+ import { jsx as jsx4 } from "react/jsx-runtime";
225
+ var AnimatedPressable = Animated2.createAnimatedComponent(Pressable);
226
+ var PopoverOverlay = forwardRef4(
227
+ function PopoverOverlay2({ children, isDismissable = true, style, ...props }, ref) {
228
+ const context = usePopover();
229
+ const { overlayStyle, isOpen, close } = context;
230
+ const [styleProps, rest] = useStyleProps(props);
231
+ if (!isOpen) return null;
232
+ return /* @__PURE__ */ jsx4(Portal, { children: /* @__PURE__ */ jsx4(PopoverProvider, { value: context, children: /* @__PURE__ */ jsx4(
233
+ AnimatedPressable,
234
+ {
235
+ ref,
236
+ entering: overlayEntering,
237
+ exiting: overlayExiting,
238
+ accessibilityRole: "none",
239
+ importantForAccessibility: "no",
240
+ onPress: isDismissable ? close : void 0,
241
+ ...rest,
242
+ style: [overlayStyle, styleProps, style],
243
+ children
244
+ }
245
+ ) }) });
246
+ }
247
+ );
248
+ PopoverOverlay.displayName = "XAUI.Popover.Overlay";
249
+
250
+ // src/components/popover/popover-title.tsx
251
+ import { forwardRef as forwardRef5 } from "react";
252
+ import { Text as Text2 } from "react-native";
253
+ import { jsx as jsx5 } from "react/jsx-runtime";
254
+ var PopoverTitle = forwardRef5(
255
+ function PopoverTitle2({ children, accessibilityRole = "header", style, ...props }, ref) {
256
+ const { titleStyle } = usePopover();
257
+ const [styleProps, rest] = useStyleProps(props);
258
+ return /* @__PURE__ */ jsx5(
259
+ Text2,
260
+ {
261
+ ref,
262
+ accessibilityRole,
263
+ ...rest,
264
+ style: [titleStyle, styleProps, style],
265
+ children
266
+ }
267
+ );
268
+ }
269
+ );
270
+ PopoverTitle.displayName = "XAUI.Popover.Title";
271
+
272
+ // src/components/popover/popover-trigger.tsx
273
+ import { forwardRef as forwardRef6, useCallback as useCallback3 } from "react";
274
+
275
+ // src/hooks/use-anchor-ref.ts
276
+ import { useCallback as useCallback2, useEffect, useRef } from "react";
277
+ function useAnchorRef({ isOpen, onAnchor, onLayout }) {
278
+ const node = useRef(null);
279
+ const latest = useRef(onAnchor);
280
+ latest.current = onAnchor;
281
+ const measure = useCallback2(() => {
282
+ node.current?.measureInWindow((x, y, width, height) => {
283
+ latest.current({ x, y, width, height });
284
+ });
285
+ }, []);
286
+ const handleLayout = useCallback2(
287
+ (event) => {
288
+ onLayout?.(event);
289
+ measure();
290
+ },
291
+ [measure, onLayout]
292
+ );
293
+ useEffect(() => {
294
+ if (isOpen) measure();
295
+ }, [isOpen, measure]);
296
+ return { node, measure, onLayout: handleLayout };
297
+ }
298
+
299
+ // src/components/popover/popover-trigger.tsx
300
+ import { jsx as jsx6 } from "react/jsx-runtime";
301
+ var PopoverTrigger = forwardRef6(
302
+ function PopoverTrigger2({
303
+ children,
304
+ asChild = false,
305
+ accessibilityRole = "button",
306
+ accessibilityState,
307
+ style,
308
+ onLayout,
309
+ onPress,
310
+ onPressIn,
311
+ onPressOut,
312
+ ...props
313
+ }, ref) {
314
+ const { triggerStyle, isOpen, isDisabled, toggle, setAnchor } = usePopover();
315
+ const [styleProps, rest] = useStyleProps(props);
316
+ const [isPressed, press] = usePressState({ onPressIn, onPressOut });
317
+ const anchor = useAnchorRef({ isOpen, onAnchor: setAnchor, onLayout });
318
+ const refs = useMergedRef(anchor.node, ref);
319
+ const handlePress = useCallback3(
320
+ (event) => {
321
+ onPress?.(event);
322
+ anchor.measure();
323
+ toggle();
324
+ },
325
+ [anchor, onPress, toggle]
326
+ );
327
+ return /* @__PURE__ */ jsx6(
328
+ PressableFeedback,
329
+ {
330
+ ref: refs,
331
+ isPressed,
332
+ isDisabled,
333
+ asChild,
334
+ accessibilityRole,
335
+ accessibilityState: {
336
+ disabled: isDisabled,
337
+ expanded: isOpen,
338
+ ...accessibilityState
339
+ },
340
+ ...rest,
341
+ onLayout: anchor.onLayout,
342
+ style: [
343
+ triggerStyle,
344
+ styleProps,
345
+ typeof style === "function" ? style({ pressed: isPressed }) : style
346
+ ],
347
+ onPress: handlePress,
348
+ onPressIn: press.onPressIn,
349
+ onPressOut: press.onPressOut,
350
+ children
351
+ }
352
+ );
353
+ }
354
+ );
355
+ PopoverTrigger.displayName = "XAUI.Popover.Trigger";
356
+
357
+ // src/components/popover/popover.tsx
358
+ import { useCallback as useCallback4, useMemo, useState } from "react";
359
+ import { jsx as jsx7 } from "react/jsx-runtime";
360
+ function Popover({
361
+ children,
362
+ radius,
363
+ isOpen: controlledOpen,
364
+ defaultOpen = false,
365
+ onOpenChange,
366
+ isDisabled = false
367
+ }) {
368
+ const theme = useXAUITheme();
369
+ const [anchor, setAnchor] = useState(null);
370
+ const [isOpen, setOpen] = useControllableState({
371
+ value: controlledOpen,
372
+ defaultValue: defaultOpen,
373
+ onChange: onOpenChange
374
+ });
375
+ const styles = popoverRecipe.resolve({
376
+ theme,
377
+ selection: { radius },
378
+ states: { disabled: isDisabled }
379
+ });
380
+ const open = useCallback4(() => setOpen(true), [setOpen]);
381
+ const close = useCallback4(() => setOpen(false), [setOpen]);
382
+ const toggle = useCallback4(() => setOpen((current) => !current), [setOpen]);
383
+ const context = useMemo(
384
+ () => ({
385
+ triggerStyle: styles.trigger,
386
+ overlayStyle: styles.overlay,
387
+ contentStyle: styles.content,
388
+ titleStyle: styles.title,
389
+ descriptionStyle: styles.description,
390
+ isOpen,
391
+ isDisabled,
392
+ open,
393
+ close,
394
+ toggle,
395
+ anchor,
396
+ setAnchor
397
+ }),
398
+ [styles, isOpen, isDisabled, open, close, toggle, anchor]
399
+ );
400
+ return /* @__PURE__ */ jsx7(PopoverProvider, { value: context, children });
401
+ }
402
+ Popover.displayName = "XAUI.Popover.Root";
403
+
404
+ // src/components/popover/index.ts
405
+ var Popover2 = Object.assign(Popover, {
406
+ Trigger: PopoverTrigger,
407
+ Overlay: PopoverOverlay,
408
+ Content: PopoverContent,
409
+ Title: PopoverTitle,
410
+ Description: PopoverDescription,
411
+ Close: PopoverClose
412
+ });
413
+
414
+ export {
415
+ usePopover,
416
+ PopoverClose,
417
+ popoverRecipe,
418
+ PopoverContent,
419
+ PopoverDescription,
420
+ PopoverOverlay,
421
+ PopoverTitle,
422
+ PopoverTrigger,
423
+ Popover,
424
+ Popover2
425
+ };
@@ -6,14 +6,14 @@ import {
6
6
  } from "./chunk-F6W3JQ7K.js";
7
7
  import {
8
8
  PressableFeedback
9
- } from "./chunk-UGF35NSE.js";
9
+ } from "./chunk-LIUO6D3D.js";
10
10
  import {
11
11
  usePressState
12
12
  } from "./chunk-423RQBOX.js";
13
13
  import {
14
14
  childrenToString,
15
15
  createSlotContext
16
- } from "./chunk-YXPYOOHU.js";
16
+ } from "./chunk-K72UDPVN.js";
17
17
  import {
18
18
  createRecipe,
19
19
  radiusAxis
@@ -2,17 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
- });
6
- var _chunkH4E4HDEPcjs = require('./chunk-H4E4HDEP.cjs');
7
-
8
- // src/hooks/use-merged-ref.ts
5
+ }); // src/hooks/use-previous.ts
9
6
  var _react = require('react');
10
- function useMergedRef(...refs) {
11
- return _react.useMemo.call(void 0, () => _chunkH4E4HDEPcjs.mergeRefs.call(void 0, ...refs), refs);
12
- }
13
-
14
- // src/hooks/use-previous.ts
15
-
16
7
  function usePrevious(value) {
17
8
  const previous = _react.useRef.call(void 0, void 0);
18
9
  _react.useEffect.call(void 0, () => {
@@ -25,10 +16,10 @@ function usePrevious(value) {
25
16
 
26
17
  var _reactnativereanimated = require('react-native-reanimated');
27
18
  var ROTATION_DURATION = 900;
28
- const _worklet_15362242700341_init_data = {
29
- code: "function chunkK4TWKF5UCjs1(){const{angle}=this.__closure;return{transform:[{rotate:angle.value+\"deg\"}]};}",
30
- location: "/home/runner/work/xaui/xaui/packages/native/dist/chunk-K4TWKF5U.cjs",
31
- sourceMap: "{\"version\":3,\"names\":[\"chunkK4TWKF5UCjs1\",\"angle\",\"__closure\",\"transform\",\"rotate\",\"value\"],\"sources\":[\"/home/runner/work/xaui/xaui/packages/native/dist/chunk-K4TWKF5U.cjs\"],\"mappings\":\"AAyC8D,SAAAA,iBAAMA,CAAA,QAAAC,KAAA,OAAAC,SAAA,CAEhE,MAAO,CAAEC,SAAS,CAAE,CAAC,CAAEC,MAAM,CAAKH,KAAK,CAACI,KAAK,MAAM,CAAC,CAAE,CAAC,CACzD\",\"ignoreList\":[]}"
19
+ const _worklet_15909689137170_init_data = {
20
+ code: "function chunkXSQPVDFHCjs1(){const{angle}=this.__closure;return{transform:[{rotate:angle.value+\"deg\"}]};}",
21
+ location: "/home/runner/work/xaui/xaui/packages/native/dist/chunk-XSQPVDFH.cjs",
22
+ sourceMap: "{\"version\":3,\"names\":[\"chunkXSQPVDFHCjs1\",\"angle\",\"__closure\",\"transform\",\"rotate\",\"value\"],\"sources\":[\"/home/runner/work/xaui/xaui/packages/native/dist/chunk-XSQPVDFH.cjs\"],\"mappings\":\"AA+B8D,SAAAA,iBAAMA,CAAA,QAAAC,KAAA,OAAAC,SAAA,CAEhE,MAAO,CAAEC,SAAS,CAAE,CAAC,CAAEC,MAAM,CAAKH,KAAK,CAACI,KAAK,MAAM,CAAC,CAAE,CAAC,CACzD\",\"ignoreList\":[]}"
32
23
  };
33
24
  function useRotation() {
34
25
  const angle = _reactnativereanimated.useSharedValue.call(void 0, 0);
@@ -39,32 +30,31 @@ function useRotation() {
39
30
  }), -1, false);
40
31
  return () => _reactnativereanimated.cancelAnimation.call(void 0, angle);
41
32
  }, [angle]);
42
- return _reactnativereanimated.useAnimatedStyle.call(void 0, function chunkK4TWKF5UCjs1Factory({
43
- _worklet_15362242700341_init_data,
33
+ return _reactnativereanimated.useAnimatedStyle.call(void 0, function chunkXSQPVDFHCjs1Factory({
34
+ _worklet_15909689137170_init_data,
44
35
  angle
45
36
  }) {
46
37
  const _e = [new global.Error(), -2, -27];
47
- const chunkK4TWKF5UCjs1 = function () {
38
+ const chunkXSQPVDFHCjs1 = function () {
48
39
  return {
49
40
  transform: [{
50
41
  rotate: `${angle.value}deg`
51
42
  }]
52
43
  };
53
44
  };
54
- chunkK4TWKF5UCjs1.__closure = {
45
+ chunkXSQPVDFHCjs1.__closure = {
55
46
  angle
56
47
  };
57
- chunkK4TWKF5UCjs1.__workletHash = 15362242700341;
58
- chunkK4TWKF5UCjs1.__pluginVersion = "0.7.4";
59
- chunkK4TWKF5UCjs1.__initData = _worklet_15362242700341_init_data;
60
- chunkK4TWKF5UCjs1.__stackDetails = _e;
61
- return chunkK4TWKF5UCjs1;
48
+ chunkXSQPVDFHCjs1.__workletHash = 15909689137170;
49
+ chunkXSQPVDFHCjs1.__pluginVersion = "0.7.4";
50
+ chunkXSQPVDFHCjs1.__initData = _worklet_15909689137170_init_data;
51
+ chunkXSQPVDFHCjs1.__stackDetails = _e;
52
+ return chunkXSQPVDFHCjs1;
62
53
  }({
63
- _worklet_15362242700341_init_data,
54
+ _worklet_15909689137170_init_data,
64
55
  angle
65
56
  }), [angle]);
66
57
  }
67
- exports.useMergedRef = useMergedRef;
68
58
  exports.usePrevious = usePrevious;
69
59
  exports.ROTATION_DURATION = ROTATION_DURATION;
70
60
  exports.useRotation = useRotation;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Slot
3
- } from "./chunk-YXPYOOHU.js";
3
+ } from "./chunk-K72UDPVN.js";
4
4
  import {
5
5
  useStyleProps
6
6
  } from "./chunk-M63GFNKV.js";
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
- var _chunkK4TWKF5Ucjs = require('./chunk-K4TWKF5U.cjs');
3
+ var _chunkXSQPVDFHcjs = require('./chunk-XSQPVDFH.cjs');
4
4
 
5
5
 
6
6
  var _chunkFNEUOBCVcjs = require('./chunk-FNEUOBCV.cjs');
@@ -114,7 +114,7 @@ var Spinner = _react.forwardRef.call(void 0, function Spinner2({ variant, size,
114
114
  });
115
115
  Spinner.displayName = "XAUI.Spinner";
116
116
  function SpinningArc({ style }) {
117
- const rotation = _chunkK4TWKF5Ucjs.useRotation.call(void 0, );
117
+ const rotation = _chunkXSQPVDFHcjs.useRotation.call(void 0, );
118
118
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactnativereanimated2.default.View, { style: [style, rotation] });
119
119
  }
120
120