@xaui/native 0.9.1-alpha.30 → 0.9.1-alpha.32

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 (91) hide show
  1. package/dist/chunk-36PRYGAM.js +13 -0
  2. package/dist/{chunk-E4TS6632.cjs → chunk-4MPSXDAB.cjs} +16 -16
  3. package/dist/{chunk-XQFAUDR2.cjs → chunk-4SLOOIE5.cjs} +2 -2
  4. package/dist/{chunk-FMZQW35T.js → chunk-4YJLNYUS.js} +13 -13
  5. package/dist/{chunk-ZP2E2H2G.cjs → chunk-54FJOKAN.cjs} +3 -3
  6. package/dist/{chunk-GPVNCJ3Z.cjs → chunk-6M7RUU7V.cjs} +68 -68
  7. package/dist/{chunk-XFSW3ZNI.cjs → chunk-7CTIE42J.cjs} +12 -12
  8. package/dist/{chunk-QGN2BBJO.cjs → chunk-AOEXU5UV.cjs} +8 -8
  9. package/dist/{chunk-Q3WFY5N3.js → chunk-AYOVBZAX.js} +10 -10
  10. package/dist/{chunk-6RVCGLKZ.js → chunk-BA2MPBCO.js} +60 -60
  11. package/dist/{chunk-5GO7MAVY.cjs → chunk-CM4LI5OH.cjs} +11 -11
  12. package/dist/{chunk-NBFWWQFW.cjs → chunk-CNNLMMFV.cjs} +13 -13
  13. package/dist/{chunk-TGZZ3RZU.cjs → chunk-CYS6U374.cjs} +4 -4
  14. package/dist/{chunk-UBQLKIZC.cjs → chunk-ETSYP3NH.cjs} +19 -19
  15. package/dist/{chunk-VJEER76X.js → chunk-GBFQZQ77.js} +9 -9
  16. package/dist/chunk-H4E4HDEP.cjs +13 -0
  17. package/dist/{chunk-NYRXUGVL.js → chunk-HVD5EX7V.js} +6 -6
  18. package/dist/{chunk-GVQOD3VW.js → chunk-HXL2QCMR.js} +3 -3
  19. package/dist/{chunk-GLGU2WFL.cjs → chunk-I6ZB3FZI.cjs} +1 -12
  20. package/dist/chunk-JCYWU5TO.js +92 -0
  21. package/dist/{chunk-7XKQJQF2.cjs → chunk-K4TWKF5U.cjs} +16 -16
  22. package/dist/{chunk-N527BTY4.cjs → chunk-K7LLERKT.cjs} +17 -17
  23. package/dist/chunk-KQKD3KB3.js +152 -0
  24. package/dist/{chunk-A5OCK3C2.js → chunk-L55CDXNI.js} +7 -7
  25. package/dist/chunk-LT6XHFXJ.cjs +185 -0
  26. package/dist/{chunk-URSKA2VR.js → chunk-MEYCZS32.js} +0 -11
  27. package/dist/{chunk-DFME724B.js → chunk-MHEL3NAN.js} +4 -4
  28. package/dist/{chunk-KWCHSIMI.cjs → chunk-MSMZBUZO.cjs} +13 -13
  29. package/dist/{chunk-27ZRTZEE.js → chunk-NFFL3E4N.js} +10 -10
  30. package/dist/{chunk-G7K652GC.js → chunk-NLASSGA7.js} +2 -2
  31. package/dist/{chunk-KOC3KQIT.js → chunk-NMAZ2TQF.js} +4 -4
  32. package/dist/{chunk-ZSLNGBDS.cjs → chunk-OX2YNMNS.cjs} +67 -67
  33. package/dist/{chunk-VZBWYWEI.cjs → chunk-PBR44KVV.cjs} +25 -25
  34. package/dist/{chunk-WR7YLDVV.cjs → chunk-PCWT2YBE.cjs} +3 -3
  35. package/dist/{chunk-BVJQ3UPZ.js → chunk-PPWXLZGL.js} +15 -15
  36. package/dist/{chunk-5Z4P6WHR.cjs → chunk-Q3D6KIVF.cjs} +11 -11
  37. package/dist/{chunk-X4HQ4H2V.js → chunk-SLUJFE6R.js} +16 -16
  38. package/dist/{chunk-4XPLPQLM.cjs → chunk-TVCS5UOE.cjs} +12 -12
  39. package/dist/{chunk-V4WDMM6Z.js → chunk-U3RDU3HU.js} +2 -2
  40. package/dist/{chunk-5RQ7AZPN.cjs → chunk-UORTYL63.cjs} +17 -17
  41. package/dist/{chunk-YKL6XHM6.js → chunk-UR6DNU2M.js} +10 -10
  42. package/dist/chunk-VSALV7VO.cjs +92 -0
  43. package/dist/{chunk-3FV4COTM.js → chunk-WJPQARJ5.js} +3 -3
  44. package/dist/{chunk-BFMTUMTU.js → chunk-XNNJM5DQ.js} +76 -76
  45. package/dist/{chunk-KPWZLUES.cjs → chunk-XWMB66ZM.cjs} +5 -5
  46. package/dist/{chunk-GI24YJPE.js → chunk-Y2B4XM3Y.js} +12 -12
  47. package/dist/{chunk-E2CWBQTV.js → chunk-YXPYOOHU.js} +1 -1
  48. package/dist/{chunk-7SEZGVTY.js → chunk-ZC35YYKS.js} +1 -1
  49. package/dist/components/alert/index.cjs +8 -7
  50. package/dist/components/alert/index.js +7 -6
  51. package/dist/components/button/index.cjs +9 -8
  52. package/dist/components/button/index.js +8 -7
  53. package/dist/components/card/index.cjs +6 -5
  54. package/dist/components/card/index.js +5 -4
  55. package/dist/components/checkbox/index.cjs +7 -6
  56. package/dist/components/checkbox/index.js +6 -5
  57. package/dist/components/chip/index.cjs +8 -7
  58. package/dist/components/chip/index.js +7 -6
  59. package/dist/components/divider/index.cjs +14 -0
  60. package/dist/components/divider/index.d.cts +117 -0
  61. package/dist/components/divider/index.d.ts +117 -0
  62. package/dist/components/divider/index.js +14 -0
  63. package/dist/components/input/index.cjs +5 -4
  64. package/dist/components/input/index.js +4 -3
  65. package/dist/components/input-group/index.cjs +7 -6
  66. package/dist/components/input-group/index.js +6 -5
  67. package/dist/components/input-otp/index.cjs +5 -4
  68. package/dist/components/input-otp/index.js +4 -3
  69. package/dist/components/radio/index.cjs +7 -6
  70. package/dist/components/radio/index.js +6 -5
  71. package/dist/components/skeleton/index.cjs +12 -0
  72. package/dist/components/skeleton/index.d.cts +120 -0
  73. package/dist/components/skeleton/index.d.ts +120 -0
  74. package/dist/components/skeleton/index.js +12 -0
  75. package/dist/components/spinner/index.cjs +6 -5
  76. package/dist/components/spinner/index.js +5 -4
  77. package/dist/components/switch/index.cjs +7 -6
  78. package/dist/components/switch/index.js +6 -5
  79. package/dist/components/text-area/index.cjs +6 -5
  80. package/dist/components/text-area/index.js +5 -4
  81. package/dist/components/typography/index.cjs +5 -4
  82. package/dist/components/typography/index.js +4 -3
  83. package/dist/components/view/index.cjs +5 -4
  84. package/dist/components/view/index.js +4 -3
  85. package/dist/index.cjs +43 -29
  86. package/dist/index.d.cts +2 -0
  87. package/dist/index.d.ts +2 -0
  88. package/dist/index.js +65 -51
  89. package/dist/system/index.cjs +12 -10
  90. package/dist/system/index.js +15 -13
  91. package/package.json +21 -1
@@ -1,26 +1,26 @@
1
1
  import {
2
2
  PressableFeedback
3
- } from "./chunk-BFMTUMTU.js";
3
+ } from "./chunk-XNNJM5DQ.js";
4
4
  import {
5
5
  usePressState
6
6
  } from "./chunk-423RQBOX.js";
7
7
  import {
8
8
  warnDev
9
9
  } from "./chunk-EGLLDKN6.js";
10
- import {
11
- createRecipe
12
- } from "./chunk-4GTAZM2C.js";
13
- import {
14
- useXAUITheme
15
- } from "./chunk-A3EGFI6T.js";
16
10
  import {
17
11
  Slot,
18
12
  childrenToString,
19
13
  createSlotContext
20
- } from "./chunk-E2CWBQTV.js";
14
+ } from "./chunk-YXPYOOHU.js";
15
+ import {
16
+ createRecipe
17
+ } from "./chunk-4GTAZM2C.js";
21
18
  import {
22
19
  useStyleProps
23
- } from "./chunk-URSKA2VR.js";
20
+ } from "./chunk-MEYCZS32.js";
21
+ import {
22
+ useXAUITheme
23
+ } from "./chunk-A3EGFI6T.js";
24
24
 
25
25
  // src/components/card/card-background.tsx
26
26
  import { forwardRef } from "react";
@@ -0,0 +1,13 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/system/slot/merge-refs.ts
2
+ function mergeRefs(...refs) {
3
+ return (value) => {
4
+ for (const ref of refs) {
5
+ if (typeof ref === "function") ref(value);
6
+ else if (ref) ref.current = value;
7
+ }
8
+ };
9
+ }
10
+
11
+
12
+
13
+ exports.mergeRefs = mergeRefs;
@@ -1,15 +1,15 @@
1
+ import {
2
+ Slot
3
+ } from "./chunk-YXPYOOHU.js";
1
4
  import {
2
5
  createRecipe
3
6
  } from "./chunk-4GTAZM2C.js";
7
+ import {
8
+ useStyleProps
9
+ } from "./chunk-MEYCZS32.js";
4
10
  import {
5
11
  useXAUITheme
6
12
  } from "./chunk-A3EGFI6T.js";
7
- import {
8
- Slot
9
- } from "./chunk-E2CWBQTV.js";
10
- import {
11
- useStyleProps
12
- } from "./chunk-URSKA2VR.js";
13
13
 
14
14
  // src/components/typography/typography.tsx
15
15
  import { forwardRef } from "react";
@@ -5,13 +5,13 @@ import {
5
5
  InputLabel,
6
6
  InputRoot,
7
7
  useInput
8
- } from "./chunk-A5OCK3C2.js";
8
+ } from "./chunk-L55CDXNI.js";
9
9
  import {
10
10
  createSlotContext
11
- } from "./chunk-E2CWBQTV.js";
11
+ } from "./chunk-YXPYOOHU.js";
12
12
  import {
13
13
  useStyleProps
14
- } from "./chunk-URSKA2VR.js";
14
+ } from "./chunk-MEYCZS32.js";
15
15
 
16
16
  // src/components/text-area/text-area-field.tsx
17
17
  import { forwardRef, useMemo } from "react";
@@ -2,16 +2,6 @@
2
2
 
3
3
  var _chunkMC7SY2QHcjs = require('./chunk-MC7SY2QH.cjs');
4
4
 
5
- // src/system/slot/merge-refs.ts
6
- function mergeRefs(...refs) {
7
- return (value) => {
8
- for (const ref of refs) {
9
- if (typeof ref === "function") ref(value);
10
- else if (ref) ref.current = value;
11
- }
12
- };
13
- }
14
-
15
5
  // src/system/style-props/use-style-props.ts
16
6
  var _react = require('react');
17
7
 
@@ -186,5 +176,4 @@ function useStyleProps(props) {
186
176
 
187
177
 
188
178
 
189
-
190
- exports.mergeRefs = mergeRefs; exports.useStyleProps = useStyleProps;
179
+ exports.useStyleProps = useStyleProps;
@@ -0,0 +1,92 @@
1
+ import {
2
+ Slot
3
+ } from "./chunk-YXPYOOHU.js";
4
+ import {
5
+ createRecipe
6
+ } from "./chunk-4GTAZM2C.js";
7
+ import {
8
+ useStyleProps
9
+ } from "./chunk-MEYCZS32.js";
10
+ import {
11
+ useXAUITheme
12
+ } from "./chunk-A3EGFI6T.js";
13
+
14
+ // src/components/divider/divider.tsx
15
+ import { forwardRef } from "react";
16
+ import { View } from "react-native";
17
+
18
+ // src/components/divider/divider.recipe.ts
19
+ import { StyleSheet } from "react-native";
20
+ var SLOTS = ["root"];
21
+ var VARIANT_TOKENS = { default: { bg: "separator" } };
22
+ var HAIRLINE = StyleSheet.hairlineWidth;
23
+ function thickness(of) {
24
+ return (theme) => {
25
+ const value = of(theme);
26
+ return { root: { height: value, width: value } };
27
+ };
28
+ }
29
+ var dividerRecipe = createRecipe({
30
+ slots: SLOTS,
31
+ base: () => ({
32
+ // One line for both orientations. In a column the cross axis is horizontal, so a
33
+ // stretched child is full width; in a row it is vertical, so the same word makes a
34
+ // vertical rule full height. `stretch` is ignored on the axis the thickness fixes,
35
+ // which is what lets one declaration serve both.
36
+ root: { alignSelf: "stretch" }
37
+ }),
38
+ variantTokens: VARIANT_TOKENS,
39
+ paint: (_theme, colors) => ({ root: { backgroundColor: colors.bg } }),
40
+ variants: {
41
+ // Multiples of `borderWidth.default`, so a theme that thickens its edges thickens
42
+ // these with it. Only the hairline stands outside the scale, being a device pixel.
43
+ size: {
44
+ xs: thickness(() => HAIRLINE),
45
+ sm: thickness((theme) => theme.borderWidth.default),
46
+ md: thickness((theme) => theme.borderWidth.default * 2),
47
+ lg: thickness((theme) => theme.borderWidth.default * 6)
48
+ },
49
+ /** Second, so it releases the axis `size` had to write blind. */
50
+ orientation: {
51
+ horizontal: () => ({ root: { width: "auto" } }),
52
+ vertical: () => ({ root: { height: "auto" } })
53
+ }
54
+ },
55
+ /**
56
+ * `xs` where every other component defaults to `md`, and it is the one place in the
57
+ * library that departs from that: a rule you notice is a rule that is too thick, and
58
+ * the hairline is what a separator is at rest.
59
+ *
60
+ * `variant` is named here and nowhere else — there is one, the caller cannot choose it,
61
+ * and the recipe still needs it selected for `paint` and the tint to resolve.
62
+ */
63
+ defaultVariants: { variant: "default", size: "xs", orientation: "horizontal" }
64
+ });
65
+
66
+ // src/components/divider/divider.tsx
67
+ import { jsx } from "react/jsx-runtime";
68
+ var Divider = forwardRef(function Divider2({ children, orientation, size, color, asChild = false, style, ...props }, ref) {
69
+ const theme = useXAUITheme();
70
+ const [styleProps, rest] = useStyleProps(props);
71
+ const selection = { orientation, size };
72
+ const styles = dividerRecipe.resolve({ theme, selection });
73
+ const tint = color ? dividerRecipe.tint({ theme, color, selection }) : void 0;
74
+ const Root = asChild ? Slot : View;
75
+ return /* @__PURE__ */ jsx(
76
+ Root,
77
+ {
78
+ ref,
79
+ accessibilityElementsHidden: true,
80
+ importantForAccessibility: "no",
81
+ ...rest,
82
+ style: [styles.root, tint?.root, styleProps, style],
83
+ children: asChild ? children : null
84
+ }
85
+ );
86
+ });
87
+ Divider.displayName = "XAUI.Divider";
88
+
89
+ export {
90
+ dividerRecipe,
91
+ Divider
92
+ };
@@ -3,12 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- var _chunkGLGU2WFLcjs = require('./chunk-GLGU2WFL.cjs');
6
+ var _chunkH4E4HDEPcjs = require('./chunk-H4E4HDEP.cjs');
7
7
 
8
8
  // src/hooks/use-merged-ref.ts
9
9
  var _react = require('react');
10
10
  function useMergedRef(...refs) {
11
- return _react.useMemo.call(void 0, () => _chunkGLGU2WFLcjs.mergeRefs.call(void 0, ...refs), refs);
11
+ return _react.useMemo.call(void 0, () => _chunkH4E4HDEPcjs.mergeRefs.call(void 0, ...refs), refs);
12
12
  }
13
13
 
14
14
  // src/hooks/use-previous.ts
@@ -25,10 +25,10 @@ function usePrevious(value) {
25
25
 
26
26
  var _reactnativereanimated = require('react-native-reanimated');
27
27
  var ROTATION_DURATION = 900;
28
- const _worklet_4260628533630_init_data = {
29
- code: "function chunk7XKQJQF2Cjs1(){const{angle}=this.__closure;return{transform:[{rotate:angle.value+\"deg\"}]};}",
30
- location: "/home/runner/work/xaui/xaui/packages/native/dist/chunk-7XKQJQF2.cjs",
31
- sourceMap: "{\"version\":3,\"names\":[\"chunk7XKQJQF2Cjs1\",\"angle\",\"__closure\",\"transform\",\"rotate\",\"value\"],\"sources\":[\"/home/runner/work/xaui/xaui/packages/native/dist/chunk-7XKQJQF2.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\":[]}"
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\":[]}"
32
32
  };
33
33
  function useRotation() {
34
34
  const angle = _reactnativereanimated.useSharedValue.call(void 0, 0);
@@ -39,28 +39,28 @@ function useRotation() {
39
39
  }), -1, false);
40
40
  return () => _reactnativereanimated.cancelAnimation.call(void 0, angle);
41
41
  }, [angle]);
42
- return _reactnativereanimated.useAnimatedStyle.call(void 0, function chunk7XKQJQF2Cjs1Factory({
43
- _worklet_4260628533630_init_data,
42
+ return _reactnativereanimated.useAnimatedStyle.call(void 0, function chunkK4TWKF5UCjs1Factory({
43
+ _worklet_15362242700341_init_data,
44
44
  angle
45
45
  }) {
46
46
  const _e = [new global.Error(), -2, -27];
47
- const chunk7XKQJQF2Cjs1 = function () {
47
+ const chunkK4TWKF5UCjs1 = function () {
48
48
  return {
49
49
  transform: [{
50
50
  rotate: `${angle.value}deg`
51
51
  }]
52
52
  };
53
53
  };
54
- chunk7XKQJQF2Cjs1.__closure = {
54
+ chunkK4TWKF5UCjs1.__closure = {
55
55
  angle
56
56
  };
57
- chunk7XKQJQF2Cjs1.__workletHash = 4260628533630;
58
- chunk7XKQJQF2Cjs1.__pluginVersion = "0.7.4";
59
- chunk7XKQJQF2Cjs1.__initData = _worklet_4260628533630_init_data;
60
- chunk7XKQJQF2Cjs1.__stackDetails = _e;
61
- return chunk7XKQJQF2Cjs1;
57
+ chunkK4TWKF5UCjs1.__workletHash = 15362242700341;
58
+ chunkK4TWKF5UCjs1.__pluginVersion = "0.7.4";
59
+ chunkK4TWKF5UCjs1.__initData = _worklet_15362242700341_init_data;
60
+ chunkK4TWKF5UCjs1.__stackDetails = _e;
61
+ return chunkK4TWKF5UCjs1;
62
62
  }({
63
- _worklet_4260628533630_init_data,
63
+ _worklet_15362242700341_init_data,
64
64
  angle
65
65
  }), [angle]);
66
66
  }
@@ -1,38 +1,38 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } 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
3
 
4
- var _chunkTGZZ3RZUcjs = require('./chunk-TGZZ3RZU.cjs');
4
+ var _chunkCYS6U374cjs = require('./chunk-CYS6U374.cjs');
5
5
 
6
6
 
7
- var _chunkWR7YLDVVcjs = require('./chunk-WR7YLDVV.cjs');
7
+ var _chunkPCWT2YBEcjs = require('./chunk-PCWT2YBE.cjs');
8
8
 
9
9
 
10
10
 
11
- var _chunkFNEUOBCVcjs = require('./chunk-FNEUOBCV.cjs');
12
11
 
12
+ var _chunk54FJOKANcjs = require('./chunk-54FJOKAN.cjs');
13
13
 
14
- var _chunk57SJ4LJFcjs = require('./chunk-57SJ4LJF.cjs');
15
14
 
16
15
 
16
+ var _chunkFNEUOBCVcjs = require('./chunk-FNEUOBCV.cjs');
17
17
 
18
18
 
19
- var _chunkZP2E2H2Gcjs = require('./chunk-ZP2E2H2G.cjs');
19
+ var _chunkI6ZB3FZIcjs = require('./chunk-I6ZB3FZI.cjs');
20
20
 
21
21
 
22
- var _chunkGLGU2WFLcjs = require('./chunk-GLGU2WFL.cjs');
22
+ var _chunk57SJ4LJFcjs = require('./chunk-57SJ4LJF.cjs');
23
23
 
24
24
  // src/components/alert/alert-close.tsx
25
25
  var _react = require('react');
26
26
 
27
27
  // src/components/alert/alert.context.ts
28
- var [AlertProvider, useAlert] = _chunkZP2E2H2Gcjs.createSlotContext.call(void 0, "Alert");
28
+ var [AlertProvider, useAlert] = _chunk54FJOKANcjs.createSlotContext.call(void 0, "Alert");
29
29
 
30
30
  // src/components/alert/alert-close.tsx
31
31
  var _jsxruntime = require('react/jsx-runtime');
32
32
  var AlertClose = _react.forwardRef.call(void 0, function AlertClose2({ isDisabled, ...props }, ref) {
33
33
  const { closeStyle, closeGlyphStyle, isDisabled: isAlertDisabled } = useAlert();
34
34
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35
- _chunkTGZZ3RZUcjs.CloseButton,
35
+ _chunkCYS6U374cjs.CloseButton,
36
36
  {
37
37
  ref,
38
38
  name: "Alert.Close",
@@ -52,7 +52,7 @@ var _reactnative = require('react-native');
52
52
  var AlertContent = _react.forwardRef.call(void 0,
53
53
  function AlertContent2({ children, style, ...props }, ref) {
54
54
  const { contentStyle } = useAlert();
55
- const [styleProps, rest] = _chunkGLGU2WFLcjs.useStyleProps.call(void 0, props);
55
+ const [styleProps, rest] = _chunkI6ZB3FZIcjs.useStyleProps.call(void 0, props);
56
56
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactnative.View, { ref, style: [contentStyle, styleProps, style], ...rest, children });
57
57
  }
58
58
  );
@@ -65,7 +65,7 @@ AlertContent.displayName = "XAUI.Alert.Content";
65
65
  var AlertDescription = _react.forwardRef.call(void 0,
66
66
  function AlertDescription2({ children, style, ...props }, ref) {
67
67
  const { descriptionStyle } = useAlert();
68
- const [styleProps, rest] = _chunkGLGU2WFLcjs.useStyleProps.call(void 0, props);
68
+ const [styleProps, rest] = _chunkI6ZB3FZIcjs.useStyleProps.call(void 0, props);
69
69
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactnative.Text, { ref, style: [descriptionStyle, styleProps, style], ...rest, children });
70
70
  }
71
71
  );
@@ -77,10 +77,10 @@ AlertDescription.displayName = "XAUI.Alert.Description";
77
77
 
78
78
  var AlertIcon = _react.forwardRef.call(void 0, function AlertIcon2({ as, children, source, size, color, style, ...props }, ref) {
79
79
  const { iconStyle, icon } = useAlert();
80
- const [styleProps, rest] = _chunkGLGU2WFLcjs.useStyleProps.call(void 0, props);
80
+ const [styleProps, rest] = _chunkI6ZB3FZIcjs.useStyleProps.call(void 0, props);
81
81
  const glyphSize = _nullishCoalesce(size, () => ( icon.size));
82
82
  const glyphColor = _nullishCoalesce(color, () => ( icon.color));
83
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactnative.View, { ref, style: [iconStyle, styleProps, style], ...rest, children: as ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWR7YLDVVcjs.Icon, { as, size: glyphSize, color: glyphColor }) : source ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWR7YLDVVcjs.Icon, { source, size: glyphSize, color: glyphColor }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWR7YLDVVcjs.Icon, { size: glyphSize, color: glyphColor, children }) });
83
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactnative.View, { ref, style: [iconStyle, styleProps, style], ...rest, children: as ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPCWT2YBEcjs.Icon, { as, size: glyphSize, color: glyphColor }) : source ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPCWT2YBEcjs.Icon, { source, size: glyphSize, color: glyphColor }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPCWT2YBEcjs.Icon, { size: glyphSize, color: glyphColor, children }) });
84
84
  });
85
85
  AlertIcon.displayName = "XAUI.Alert.Icon";
86
86
 
@@ -90,7 +90,7 @@ AlertIcon.displayName = "XAUI.Alert.Icon";
90
90
 
91
91
  var AlertTitle = _react.forwardRef.call(void 0, function AlertTitle2({ children, style, ...props }, ref) {
92
92
  const { titleStyle } = useAlert();
93
- const [styleProps, rest] = _chunkGLGU2WFLcjs.useStyleProps.call(void 0, props);
93
+ const [styleProps, rest] = _chunkI6ZB3FZIcjs.useStyleProps.call(void 0, props);
94
94
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactnative.Text, { ref, style: [titleStyle, styleProps, style], ...rest, children });
95
95
  });
96
96
  AlertTitle.displayName = "XAUI.Alert.Title";
@@ -194,7 +194,7 @@ var alertRecipe = _chunkFNEUOBCVcjs.createRecipe.call(void 0, {
194
194
  // The cross's own geometry — thickness and centring — belongs to the shared
195
195
  // `CloseButton`; what stays below is the box and bar size this component's scale sets.
196
196
  base: (theme) => ({
197
- ..._chunkTGZZ3RZUcjs.closeButtonBase.call(void 0, theme),
197
+ ..._chunkCYS6U374cjs.closeButtonBase.call(void 0, theme),
198
198
  root: {
199
199
  flexDirection: "row",
200
200
  // Top-aligned, not centred: an alert's message can run to three lines, and an icon
@@ -295,7 +295,7 @@ var AlertRoot = _react.forwardRef.call(void 0, function Alert({
295
295
  ...props
296
296
  }, ref) {
297
297
  const theme = _chunk57SJ4LJFcjs.useXAUITheme.call(void 0, );
298
- const [styleProps, rest] = _chunkGLGU2WFLcjs.useStyleProps.call(void 0, props);
298
+ const [styleProps, rest] = _chunkI6ZB3FZIcjs.useStyleProps.call(void 0, props);
299
299
  const selection = { variant, size, radius };
300
300
  const states = { disabled: isDisabled };
301
301
  const styles = alertRecipe.resolve({ theme, selection, states });
@@ -319,13 +319,13 @@ var AlertRoot = _react.forwardRef.call(void 0, function Alert({
319
319
  };
320
320
  }, [styles, tint, isDisabled]);
321
321
  const rootStyle = [styles.root, _optionalChain([tint, 'optionalAccess', _2 => _2.root]), styleProps, style];
322
- const text = _chunkZP2E2H2Gcjs.childrenToString.call(void 0, children);
322
+ const text = _chunk54FJOKANcjs.childrenToString.call(void 0, children);
323
323
  const content = text !== null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AlertDescription, { children: text }) : children;
324
324
  const surface = asChild ? (
325
325
  // R12 — the caller's element *is* the alert, so it takes the children it was written
326
326
  // with and the auto-wrap does not apply.
327
327
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
328
- _chunkZP2E2H2Gcjs.Slot,
328
+ _chunk54FJOKANcjs.Slot,
329
329
  {
330
330
  ref,
331
331
  accessibilityRole,
@@ -0,0 +1,152 @@
1
+ import { createRecipe, radiusAxis } from "./chunk-4GTAZM2C.js";
2
+ import { useStyleProps } from "./chunk-MEYCZS32.js";
3
+ import { useXAUITheme } from "./chunk-A3EGFI6T.js";
4
+
5
+ // src/components/skeleton/skeleton.tsx
6
+ import { forwardRef, useEffect } from "react";
7
+ import { View } from "react-native";
8
+ import Animated, { Easing, cancelAnimation, useAnimatedStyle, useSharedValue, withRepeat, withTiming } from "react-native-reanimated";
9
+
10
+ // src/components/skeleton/skeleton.recipe.ts
11
+ var SLOTS = ["root"];
12
+ var VARIANT_TOKENS = {
13
+ default: {
14
+ bg: "default"
15
+ },
16
+ secondary: {
17
+ bg: "defaultSoft"
18
+ }
19
+ };
20
+ var skeletonRecipe = createRecipe({
21
+ slots: SLOTS,
22
+ base: () => ({
23
+ // Squircle corners, free on Android and what keeps a `full` radius from reading as a
24
+ // stadium at small sizes. Nothing else: a skeleton has no size of its own — see the
25
+ // component for why R14 is the whole sizing API here.
26
+ root: {
27
+ borderCurve: "continuous"
28
+ }
29
+ }),
30
+ variantTokens: VARIANT_TOKENS,
31
+ paint: (_theme, colors) => ({
32
+ root: {
33
+ backgroundColor: colors.bg
34
+ }
35
+ }),
36
+ variants: {
37
+ radius: radiusAxis("root")
38
+ },
39
+ /**
40
+ * `md` is the block, and `full` is what an avatar placeholder passes. There is no `size`
41
+ * default because there is no `size`: the caller gives the block its dimensions with
42
+ * R14's `width` and `height`, because only they know the shape of the thing that is
43
+ * missing.
44
+ */
45
+ defaultVariants: {
46
+ variant: "default",
47
+ radius: "md"
48
+ }
49
+ });
50
+
51
+ // src/components/skeleton/skeleton.tsx
52
+ import { Fragment, jsx } from "react/jsx-runtime";
53
+ var PULSE_DURATION = 1e3;
54
+ var PULSE_MIN_OPACITY = 0.5;
55
+ var Skeleton = forwardRef(function Skeleton2({
56
+ variant,
57
+ radius,
58
+ color,
59
+ isLoading = true,
60
+ animation = true,
61
+ children,
62
+ style,
63
+ ...props
64
+ }, ref) {
65
+ const theme = useXAUITheme();
66
+ const [styleProps, rest] = useStyleProps(props);
67
+ const selection = {
68
+ variant,
69
+ radius
70
+ };
71
+ const styles = skeletonRecipe.resolve({
72
+ theme,
73
+ selection
74
+ });
75
+ const tint = color ? skeletonRecipe.tint({
76
+ theme,
77
+ color,
78
+ selection
79
+ }) : void 0;
80
+ if (!isLoading) return /* @__PURE__ */jsx(Fragment, {
81
+ children
82
+ });
83
+ const blockProps = {
84
+ // A block stands in for content that is not there. Announcing its absence is `busy`
85
+ // on whatever region is loading, not a stop on each rectangle. Both stay overridable
86
+ // (R9) for the caller whose skeleton really is the whole screen.
87
+ accessibilityElementsHidden: true,
88
+ importantForAccessibility: "no-hide-descendants",
89
+ ...rest
90
+ };
91
+ const blockStyle = [styles.root, tint?.root, styleProps, style];
92
+ if (!animation) return /* @__PURE__ */jsx(View, {
93
+ ref,
94
+ ...blockProps,
95
+ style: blockStyle
96
+ });
97
+ return /* @__PURE__ */jsx(PulsingBlock, {
98
+ ref,
99
+ ...blockProps,
100
+ style: blockStyle
101
+ });
102
+ });
103
+ Skeleton.displayName = "XAUI.Skeleton";
104
+ const _worklet_6728096170816_init_data = {
105
+ code: "function chunkKQKD3KB3Js1(){const{opacity}=this.__closure;return{opacity:opacity.value};}",
106
+ location: "/home/runner/work/xaui/xaui/packages/native/dist/chunk-KQKD3KB3.js",
107
+ sourceMap: "{\"version\":3,\"names\":[\"chunkKQKD3KB3Js1\",\"opacity\",\"__closure\",\"value\"],\"sources\":[\"/home/runner/work/xaui/xaui/packages/native/dist/chunk-KQKD3KB3.js\"],\"mappings\":\"AAiG2C,SAAAA,gBAAMA,CAAA,QAAAC,OAAA,OAAAC,SAAA,CAE3C,MAAO,CAAED,OAAO,CAAEA,OAAO,CAACE,KAAM,CAAC,CACnC\",\"ignoreList\":[]}"
108
+ };
109
+ var PulsingBlock = forwardRef(function PulsingBlock2({
110
+ style,
111
+ ...props
112
+ }, ref) {
113
+ const opacity = useSharedValue(1);
114
+ useEffect(() => {
115
+ opacity.value = withRepeat(withTiming(PULSE_MIN_OPACITY, {
116
+ duration: PULSE_DURATION,
117
+ easing: Easing.inOut(Easing.ease)
118
+ }), -1,
119
+ // Reversed, so the block breathes rather than snapping back to full at each turn.
120
+ true);
121
+ return () => cancelAnimation(opacity);
122
+ }, [opacity]);
123
+ const animatedStyle = useAnimatedStyle(function chunkKQKD3KB3Js1Factory({
124
+ _worklet_6728096170816_init_data,
125
+ opacity
126
+ }) {
127
+ const _e = [new global.Error(), -2, -27];
128
+ const chunkKQKD3KB3Js1 = function () {
129
+ return {
130
+ opacity: opacity.value
131
+ };
132
+ };
133
+ chunkKQKD3KB3Js1.__closure = {
134
+ opacity
135
+ };
136
+ chunkKQKD3KB3Js1.__workletHash = 6728096170816;
137
+ chunkKQKD3KB3Js1.__pluginVersion = "0.7.4";
138
+ chunkKQKD3KB3Js1.__initData = _worklet_6728096170816_init_data;
139
+ chunkKQKD3KB3Js1.__stackDetails = _e;
140
+ return chunkKQKD3KB3Js1;
141
+ }({
142
+ _worklet_6728096170816_init_data,
143
+ opacity
144
+ }), [opacity]);
145
+ return /* @__PURE__ */jsx(Animated.View, {
146
+ ref,
147
+ ...props,
148
+ style: [style, animatedStyle]
149
+ });
150
+ });
151
+ PulsingBlock.displayName = "XAUI.Skeleton.Block";
152
+ export { skeletonRecipe, Skeleton };
@@ -1,17 +1,17 @@
1
+ import {
2
+ Slot,
3
+ createSlotContext
4
+ } from "./chunk-YXPYOOHU.js";
1
5
  import {
2
6
  createRecipe,
3
7
  radiusAxis
4
8
  } from "./chunk-4GTAZM2C.js";
9
+ import {
10
+ useStyleProps
11
+ } from "./chunk-MEYCZS32.js";
5
12
  import {
6
13
  useXAUITheme
7
14
  } from "./chunk-A3EGFI6T.js";
8
- import {
9
- Slot,
10
- createSlotContext
11
- } from "./chunk-E2CWBQTV.js";
12
- import {
13
- useStyleProps
14
- } from "./chunk-URSKA2VR.js";
15
15
 
16
16
  // src/components/input/input-description.tsx
17
17
  import { forwardRef } from "react";