@xaui/native 0.9.1-alpha.3 → 0.9.1-alpha.31

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-3FV4COTM.js +68 -0
  2. package/dist/chunk-423RQBOX.js +21 -0
  3. package/dist/chunk-42FMGB5M.js +661 -0
  4. package/dist/chunk-4GTAZM2C.js +174 -0
  5. package/dist/chunk-4XPLPQLM.cjs +147 -0
  6. package/dist/{chunk-3QBT3Q65.cjs → chunk-57SJ4LJF.cjs} +7 -2
  7. package/dist/chunk-5GO7MAVY.cjs +74 -0
  8. package/dist/chunk-5PTBRJM7.cjs +346 -0
  9. package/dist/chunk-5RQ7AZPN.cjs +455 -0
  10. package/dist/chunk-5Z4P6WHR.cjs +525 -0
  11. package/dist/chunk-7DPL3ZDS.cjs +21 -0
  12. package/dist/chunk-7EIHHOHP.cjs +42 -0
  13. package/dist/chunk-7SEZGVTY.js +62 -0
  14. package/dist/chunk-7XKQJQF2.cjs +70 -0
  15. package/dist/{chunk-X2K2FX3W.js → chunk-A3EGFI6T.js} +6 -1
  16. package/dist/chunk-A5OCK3C2.js +525 -0
  17. package/dist/chunk-AETWQQWU.cjs +92 -0
  18. package/dist/chunk-ANNUYP55.cjs +431 -0
  19. package/dist/chunk-BA2DBSAN.js +102 -0
  20. package/dist/chunk-BFMTUMTU.js +669 -0
  21. package/dist/chunk-BVJQ3UPZ.js +62 -0
  22. package/dist/chunk-DFME724B.js +147 -0
  23. package/dist/chunk-E2CWBQTV.js +119 -0
  24. package/dist/chunk-EGLLDKN6.js +9 -0
  25. package/dist/chunk-EJQCQPET.cjs +9 -0
  26. package/dist/chunk-F6CQ6CBI.cjs +112 -0
  27. package/dist/chunk-F6W3JQ7K.js +42 -0
  28. package/dist/chunk-FNEUOBCV.cjs +174 -0
  29. package/dist/chunk-G7K652GC.js +145 -0
  30. package/dist/chunk-GGW42MY4.js +20 -0
  31. package/dist/chunk-GLGU2WFL.cjs +190 -0
  32. package/dist/chunk-GPVNCJ3Z.cjs +696 -0
  33. package/dist/chunk-GVQOD3VW.js +74 -0
  34. package/dist/chunk-IHOCANCQ.js +293 -0
  35. package/dist/chunk-JDFV4W6N.cjs +700 -0
  36. package/dist/chunk-KOC3KQIT.js +124 -0
  37. package/dist/chunk-KPWZLUES.cjs +124 -0
  38. package/dist/chunk-L7JN6OBQ.cjs +314 -0
  39. package/dist/chunk-MC7SY2QH.cjs +20 -0
  40. package/dist/chunk-MDVSCWJI.js +314 -0
  41. package/dist/chunk-N527BTY4.cjs +366 -0
  42. package/dist/chunk-NYRXUGVL.js +104 -0
  43. package/dist/{chunk-AW63PTQ4.cjs → chunk-OHEHPQLC.cjs} +72 -72
  44. package/dist/chunk-Q3WFY5N3.js +366 -0
  45. package/dist/chunk-QGN2BBJO.cjs +104 -0
  46. package/dist/chunk-RDTKAAHX.js +346 -0
  47. package/dist/chunk-TGZZ3RZU.cjs +86 -0
  48. package/dist/{chunk-2KXQATVL.js → chunk-TZG3DERP.js} +46 -46
  49. package/dist/chunk-URSKA2VR.js +190 -0
  50. package/dist/chunk-V4WDMM6Z.js +86 -0
  51. package/dist/chunk-VJEER76X.js +455 -0
  52. package/dist/chunk-VZBWYWEI.cjs +736 -0
  53. package/dist/chunk-WR7YLDVV.cjs +68 -0
  54. package/dist/chunk-X4HQ4H2V.js +701 -0
  55. package/dist/chunk-XFSW3ZNI.cjs +145 -0
  56. package/dist/chunk-XQFAUDR2.cjs +62 -0
  57. package/dist/chunk-ZH5XVNHG.js +92 -0
  58. package/dist/chunk-ZH6BHLQR.js +431 -0
  59. package/dist/chunk-ZP2E2H2G.cjs +119 -0
  60. package/dist/chunk-ZVWXM3UK.cjs +293 -0
  61. package/dist/close-button.type-BUYuoSt2.d.ts +36 -0
  62. package/dist/close-button.type-CHsgZ3wO.d.cts +36 -0
  63. package/dist/components/alert/index.cjs +20 -0
  64. package/dist/components/alert/index.d.cts +169 -0
  65. package/dist/components/alert/index.d.ts +169 -0
  66. package/dist/components/alert/index.js +20 -0
  67. package/dist/components/button/index.cjs +21 -0
  68. package/dist/components/button/index.d.cts +613 -0
  69. package/dist/components/button/index.d.ts +613 -0
  70. package/dist/components/button/index.js +21 -0
  71. package/dist/components/card/index.cjs +22 -0
  72. package/dist/components/card/index.d.cts +620 -0
  73. package/dist/components/card/index.d.ts +620 -0
  74. package/dist/components/card/index.js +22 -0
  75. package/dist/components/checkbox/index.cjs +26 -0
  76. package/dist/components/checkbox/index.d.cts +1136 -0
  77. package/dist/components/checkbox/index.d.ts +1136 -0
  78. package/dist/components/checkbox/index.js +26 -0
  79. package/dist/components/chip/index.cjs +20 -0
  80. package/dist/components/chip/index.d.cts +608 -0
  81. package/dist/components/chip/index.d.ts +608 -0
  82. package/dist/components/chip/index.js +20 -0
  83. package/dist/components/divider/index.cjs +13 -0
  84. package/dist/components/divider/index.d.cts +117 -0
  85. package/dist/components/divider/index.d.ts +117 -0
  86. package/dist/components/divider/index.js +13 -0
  87. package/dist/components/input/index.cjs +25 -0
  88. package/dist/components/input/index.d.cts +205 -0
  89. package/dist/components/input/index.d.ts +205 -0
  90. package/dist/components/input/index.js +25 -0
  91. package/dist/components/input-group/index.cjs +27 -0
  92. package/dist/components/input-group/index.d.cts +270 -0
  93. package/dist/components/input-group/index.d.ts +270 -0
  94. package/dist/components/input-group/index.js +27 -0
  95. package/dist/components/input-otp/index.cjs +29 -0
  96. package/dist/components/input-otp/index.d.cts +325 -0
  97. package/dist/components/input-otp/index.d.ts +325 -0
  98. package/dist/components/input-otp/index.js +29 -0
  99. package/dist/components/radio/index.cjs +26 -0
  100. package/dist/components/radio/index.d.cts +1102 -0
  101. package/dist/components/radio/index.d.ts +1102 -0
  102. package/dist/components/radio/index.js +26 -0
  103. package/dist/components/spinner/index.cjs +16 -0
  104. package/dist/components/spinner/index.d.cts +104 -0
  105. package/dist/components/spinner/index.d.ts +104 -0
  106. package/dist/components/spinner/index.js +16 -0
  107. package/dist/components/switch/index.cjs +27 -0
  108. package/dist/components/switch/index.d.cts +1154 -0
  109. package/dist/components/switch/index.d.ts +1154 -0
  110. package/dist/components/switch/index.js +27 -0
  111. package/dist/components/text-area/index.cjs +14 -0
  112. package/dist/components/text-area/index.d.cts +73 -0
  113. package/dist/components/text-area/index.d.ts +73 -0
  114. package/dist/components/text-area/index.js +14 -0
  115. package/dist/components/typography/index.cjs +15 -0
  116. package/dist/components/typography/index.d.cts +116 -0
  117. package/dist/components/typography/index.d.ts +116 -0
  118. package/dist/components/typography/index.js +15 -0
  119. package/dist/components/view/index.cjs +17 -0
  120. package/dist/components/view/index.d.cts +152 -0
  121. package/dist/components/view/index.d.ts +152 -0
  122. package/dist/components/view/index.js +17 -0
  123. package/dist/create-recipe-BdVd2ffi.d.ts +114 -0
  124. package/dist/create-recipe-dC7wMfnj.d.cts +114 -0
  125. package/dist/icon.type-Kml72iSz.d.ts +73 -0
  126. package/dist/icon.type-d_i9ma-i.d.cts +73 -0
  127. package/dist/index.cjs +252 -4
  128. package/dist/index.d.cts +110 -4
  129. package/dist/index.d.ts +110 -4
  130. package/dist/index.js +271 -23
  131. package/dist/input.type-BUMDlzL9.d.cts +167 -0
  132. package/dist/input.type-D2qgi03E.d.ts +167 -0
  133. package/dist/pressable-feedback.type-BA2C9sSz.d.cts +127 -0
  134. package/dist/pressable-feedback.type-Bs4dQlGj.d.ts +127 -0
  135. package/dist/style-props.type-CfnoGEP7.d.cts +31 -0
  136. package/dist/style-props.type-CfnoGEP7.d.ts +31 -0
  137. package/dist/system/index.cjs +60 -3
  138. package/dist/system/index.d.cts +347 -181
  139. package/dist/system/index.d.ts +347 -181
  140. package/dist/system/index.js +71 -14
  141. package/dist/theme/index.cjs +4 -3
  142. package/dist/theme/index.d.cts +34 -23
  143. package/dist/theme/index.d.ts +34 -23
  144. package/dist/theme/index.js +3 -2
  145. package/dist/{theme.type-C9bFJKFm.d.cts → theme.type-C2gNHpEx.d.cts} +1 -1
  146. package/dist/{theme.type-C9bFJKFm.d.ts → theme.type-C2gNHpEx.d.ts} +1 -1
  147. package/package.json +184 -18
  148. package/dist/chunk-QAMNNTGM.js +0 -637
  149. package/dist/chunk-V63JO65F.cjs +0 -637
@@ -1,39 +1,96 @@
1
1
  import {
2
+ Portal,
3
+ PortalContext,
4
+ PortalHost
5
+ } from "../chunk-7SEZGVTY.js";
6
+ import {
7
+ SelectionFill
8
+ } from "../chunk-BA2DBSAN.js";
9
+ import {
10
+ CloseButton,
11
+ closeButtonBase
12
+ } from "../chunk-V4WDMM6Z.js";
13
+ import {
14
+ FEEDBACK_OVERLAY,
15
+ HIGHLIGHT_DURATION,
2
16
  HIGHLIGHT_OPACITY,
3
17
  PRESS_DURATION,
4
18
  PRESS_SCALE,
5
19
  PressableFeedback,
6
- RELEASE_DURATION,
7
- RIPPLE_COVERAGE,
8
- RIPPLE_DURATION,
20
+ RIPPLE_CONFIRM_DURATION,
21
+ RIPPLE_EXPAND_DURATION,
22
+ RIPPLE_FADE_IN,
23
+ RIPPLE_FADE_OUT,
24
+ RIPPLE_FADE_OUT_DELAY,
9
25
  RIPPLE_OPACITY,
26
+ RIPPLE_START_SCALE,
27
+ SCALE_REFERENCE_WIDTH,
28
+ markOverlay,
29
+ pressScaleFor,
30
+ resolveAnimation,
31
+ resolveSlotAnimation,
32
+ rippleRadiusFor,
33
+ useFeedback
34
+ } from "../chunk-BFMTUMTU.js";
35
+ import "../chunk-423RQBOX.js";
36
+ import "../chunk-EGLLDKN6.js";
37
+ import {
38
+ Icon,
39
+ IconContext,
40
+ useIconContext
41
+ } from "../chunk-3FV4COTM.js";
42
+ import {
43
+ createRecipe,
44
+ radiusAxis
45
+ } from "../chunk-4GTAZM2C.js";
46
+ import "../chunk-A3EGFI6T.js";
47
+ import {
10
48
  Slot,
11
49
  childrenToString,
12
- createRecipe,
13
50
  createSlotContext,
14
- mergeProps,
51
+ mergeProps
52
+ } from "../chunk-E2CWBQTV.js";
53
+ import {
15
54
  mergeRefs,
16
- resolveAnimation,
17
- resolveSlotAnimation,
18
- useFeedback
19
- } from "../chunk-QAMNNTGM.js";
20
- import "../chunk-X2K2FX3W.js";
55
+ useStyleProps
56
+ } from "../chunk-URSKA2VR.js";
57
+ import "../chunk-GGW42MY4.js";
21
58
  export {
59
+ CloseButton,
60
+ FEEDBACK_OVERLAY,
61
+ HIGHLIGHT_DURATION,
22
62
  HIGHLIGHT_OPACITY,
63
+ Icon,
64
+ IconContext,
23
65
  PRESS_DURATION,
24
66
  PRESS_SCALE,
67
+ Portal,
68
+ PortalContext,
69
+ PortalHost,
25
70
  PressableFeedback,
26
- RELEASE_DURATION,
27
- RIPPLE_COVERAGE,
28
- RIPPLE_DURATION,
71
+ RIPPLE_CONFIRM_DURATION,
72
+ RIPPLE_EXPAND_DURATION,
73
+ RIPPLE_FADE_IN,
74
+ RIPPLE_FADE_OUT,
75
+ RIPPLE_FADE_OUT_DELAY,
29
76
  RIPPLE_OPACITY,
77
+ RIPPLE_START_SCALE,
78
+ SCALE_REFERENCE_WIDTH,
79
+ SelectionFill,
30
80
  Slot,
31
81
  childrenToString,
82
+ closeButtonBase,
32
83
  createRecipe,
33
84
  createSlotContext,
85
+ markOverlay,
34
86
  mergeProps,
35
87
  mergeRefs,
88
+ pressScaleFor,
89
+ radiusAxis,
36
90
  resolveAnimation,
37
91
  resolveSlotAnimation,
38
- useFeedback
92
+ rippleRadiusFor,
93
+ useFeedback,
94
+ useIconContext,
95
+ useStyleProps
39
96
  };
@@ -9,14 +9,15 @@
9
9
 
10
10
 
11
11
 
12
- var _chunkAW63PTQ4cjs = require('../chunk-AW63PTQ4.cjs');
12
+ var _chunkOHEHPQLCcjs = require('../chunk-OHEHPQLC.cjs');
13
13
 
14
14
 
15
15
 
16
16
 
17
17
 
18
18
 
19
- var _chunk3QBT3Q65cjs = require('../chunk-3QBT3Q65.cjs');
19
+ var _chunk57SJ4LJFcjs = require('../chunk-57SJ4LJF.cjs');
20
+ require('../chunk-MC7SY2QH.cjs');
20
21
 
21
22
 
22
23
 
@@ -33,4 +34,4 @@ var _chunk3QBT3Q65cjs = require('../chunk-3QBT3Q65.cjs');
33
34
 
34
35
 
35
36
 
36
- exports.ThemeContext = _chunk3QBT3Q65cjs.ThemeContext; exports.XAUIProvider = _chunkAW63PTQ4cjs.XAUIProvider; exports.buildRadius = _chunkAW63PTQ4cjs.buildRadius; exports.buildShadows = _chunkAW63PTQ4cjs.buildShadows; exports.createTheme = _chunkAW63PTQ4cjs.createTheme; exports.defaultTheme = _chunkAW63PTQ4cjs.defaultTheme; exports.deriveColors = _chunkAW63PTQ4cjs.deriveColors; exports.deriveTint = _chunk3QBT3Q65cjs.deriveTint; exports.palette = _chunkAW63PTQ4cjs.palette; exports.primitives = _chunkAW63PTQ4cjs.primitives; exports.sourceKeys = _chunkAW63PTQ4cjs.sourceKeys; exports.tokens = _chunkAW63PTQ4cjs.tokens; exports.useColorMode = _chunk3QBT3Q65cjs.useColorMode; exports.useThemeColor = _chunk3QBT3Q65cjs.useThemeColor; exports.useXAUITheme = _chunk3QBT3Q65cjs.useXAUITheme;
37
+ exports.ThemeContext = _chunk57SJ4LJFcjs.ThemeContext; exports.XAUIProvider = _chunkOHEHPQLCcjs.XAUIProvider; exports.buildRadius = _chunkOHEHPQLCcjs.buildRadius; exports.buildShadows = _chunkOHEHPQLCcjs.buildShadows; exports.createTheme = _chunkOHEHPQLCcjs.createTheme; exports.defaultTheme = _chunkOHEHPQLCcjs.defaultTheme; exports.deriveColors = _chunkOHEHPQLCcjs.deriveColors; exports.deriveTint = _chunk57SJ4LJFcjs.deriveTint; exports.palette = _chunkOHEHPQLCcjs.palette; exports.primitives = _chunkOHEHPQLCcjs.primitives; exports.sourceKeys = _chunkOHEHPQLCcjs.sourceKeys; exports.tokens = _chunkOHEHPQLCcjs.tokens; exports.useColorMode = _chunk57SJ4LJFcjs.useColorMode; exports.useThemeColor = _chunk57SJ4LJFcjs.useThemeColor; exports.useXAUITheme = _chunk57SJ4LJFcjs.useXAUITheme;
@@ -1,7 +1,7 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
- import { i as XAUIThemeSet, h as XAUIThemeConfig, f as XAUISourceColors, b as XAUIDerivedColors, g as XAUITheme, d as XAUIRadius, C as ColorMode, X as XAUIColors } from '../theme.type-C9bFJKFm.cjs';
4
- export { F as FontSizeKey, a as FontWeightKey, R as RadiusKey, S as Size, c as XAUIPrimitiveColors, e as XAUIShadow } from '../theme.type-C9bFJKFm.cjs';
3
+ import { i as XAUIThemeSet, h as XAUIThemeConfig, g as XAUISourceColors, c as XAUIDerivedColors, X as XAUITheme, e as XAUIRadius, C as ColorMode, a as XAUIColors } from '../theme.type-C2gNHpEx.cjs';
4
+ export { F as FontSizeKey, b as FontWeightKey, R as RadiusKey, S as Size, d as XAUIPrimitiveColors, f as XAUIShadow } from '../theme.type-C2gNHpEx.cjs';
5
5
  import 'react-native';
6
6
 
7
7
  /** `'system'` follows the device; the resolved value is never `'system'`. */
@@ -44,6 +44,17 @@ declare const defaultTheme: XAUIThemeSet;
44
44
  * These are HeroUI's `color-mix(in oklab, …)` formulas transposed to JS, because React
45
45
  * Native has no `color-mix()`. Their `-hover` names became `-pressed`: what they feed is
46
46
  * the press overlay, and the web name was a leftover.
47
+ *
48
+ * **One deliberate divergence: a pressed state always moves towards the mode's ink**
49
+ * (P2-API-REVIEW §E). Mixing towards the variant's own foreground — which is what their
50
+ * formula does — makes the direction follow the fill's lightness rather than a decision:
51
+ * `#9333ea` has near-white text and lightened under the finger in light mode, while
52
+ * `#c084fc` has dark text and darkened in dark mode. Same component, opposite gesture,
53
+ * nobody's choice. Towards `foreground` it is one direction — darker in light, lighter in
54
+ * dark — and the label's contrast rises in both instead of falling in one.
55
+ *
56
+ * The neutral fills already did this: `defaultForeground` and `surfaceForeground` *are*
57
+ * the ink, so only the four saturated intents ever flipped.
47
58
  */
48
59
  declare function deriveColors(s: XAUISourceColors): XAUIDerivedColors;
49
60
 
@@ -389,7 +400,7 @@ declare const tokens: {
389
400
  readonly foreground: "#18181b";
390
401
  readonly surface: "#ffffff";
391
402
  readonly surfaceForeground: "#18181b";
392
- readonly surfaceSecondary: "#f4f4f5";
403
+ readonly surfaceSecondary: "#ececee";
393
404
  readonly surfaceSecondaryForeground: "#18181b";
394
405
  readonly surfaceTertiary: "#e4e4e7";
395
406
  readonly surfaceTertiaryForeground: "#18181b";
@@ -397,7 +408,7 @@ declare const tokens: {
397
408
  readonly overlayForeground: "#18181b";
398
409
  readonly backdrop: "rgba(0, 0, 0, 0.2)";
399
410
  readonly muted: "#71717a";
400
- readonly default: "#f4f4f5";
411
+ readonly default: "#e4e4e7";
401
412
  readonly defaultForeground: "#18181b";
402
413
  readonly accent: "#9333ea";
403
414
  readonly accentForeground: "#faf5ff";
@@ -407,7 +418,7 @@ declare const tokens: {
407
418
  readonly fieldBorder: "#e4e4e7";
408
419
  readonly success: "#15803d";
409
420
  readonly successForeground: "#fafafa";
410
- readonly warning: "#b45309";
421
+ readonly warning: "#c2410c";
411
422
  readonly warningForeground: "#fafafa";
412
423
  readonly danger: "#dc2626";
413
424
  readonly dangerForeground: "#fafafa";
@@ -417,24 +428,24 @@ declare const tokens: {
417
428
  readonly separator: "#d4d4d8";
418
429
  readonly focus: "#9333ea";
419
430
  readonly link: "#18181b";
420
- readonly accentPressed: "#9c4eee";
421
- readonly successPressed: "#378c50";
422
- readonly warningPressed: "#bd642f";
423
- readonly dangerPressed: "#e2473f";
424
- readonly defaultPressed: "#eaeaeb";
431
+ readonly accentPressed: "#8533d3";
432
+ readonly successPressed: "#1b753a";
433
+ readonly warningPressed: "#af3e15";
434
+ readonly dangerPressed: "#c72927";
435
+ readonly defaultPressed: "#dbdbde";
425
436
  readonly surfacePressed: "#eaeaea";
426
- readonly defaultSoft: "rgba(244, 244, 245, 0.5)";
437
+ readonly defaultSoft: "rgba(228, 228, 231, 0.5)";
427
438
  readonly defaultSoftForeground: "#18181b";
428
- readonly defaultSoftPressed: "rgba(244, 244, 245, 0.6)";
439
+ readonly defaultSoftPressed: "rgba(228, 228, 231, 0.6)";
429
440
  readonly accentSoft: "rgba(147, 51, 234, 0.15)";
430
441
  readonly accentSoftForeground: "#7833bc";
431
442
  readonly accentSoftPressed: "rgba(147, 51, 234, 0.2)";
432
443
  readonly successSoft: "rgba(21, 128, 61, 0.15)";
433
444
  readonly successSoftForeground: "#205f34";
434
445
  readonly successSoftPressed: "rgba(21, 128, 61, 0.2)";
435
- readonly warningSoft: "rgba(180, 83, 9, 0.15)";
436
- readonly warningSoftForeground: "#793f1e";
437
- readonly warningSoftPressed: "rgba(180, 83, 9, 0.2)";
446
+ readonly warningSoft: "rgba(194, 65, 12, 0.15)";
447
+ readonly warningSoftForeground: "#82361e";
448
+ readonly warningSoftPressed: "rgba(194, 65, 12, 0.2)";
438
449
  readonly dangerSoft: "rgba(220, 38, 38, 0.15)";
439
450
  readonly dangerSoftForeground: "#b22b28";
440
451
  readonly dangerSoftPressed: "rgba(220, 38, 38, 0.2)";
@@ -477,7 +488,7 @@ declare const tokens: {
477
488
  readonly fieldBorder: "#3f3f46";
478
489
  readonly success: "#4ade80";
479
490
  readonly successForeground: "#18181b";
480
- readonly warning: "#fbbf24";
491
+ readonly warning: "#fb923c";
481
492
  readonly warningForeground: "#18181b";
482
493
  readonly danger: "#f87171";
483
494
  readonly dangerForeground: "#18181b";
@@ -487,10 +498,10 @@ declare const tokens: {
487
498
  readonly separator: "#52525b";
488
499
  readonly focus: "#c084fc";
489
500
  readonly link: "#fafafa";
490
- readonly accentPressed: "#ad78e3";
491
- readonly successPressed: "#47c875";
492
- readonly warningPressed: "#e1ac2b";
493
- readonly dangerPressed: "#df6868";
501
+ readonly accentPressed: "#c691fd";
502
+ readonly successPressed: "#64e18d";
503
+ readonly warningPressed: "#fc9d55";
504
+ readonly dangerPressed: "#fa807e";
494
505
  readonly defaultPressed: "#2e2e31";
495
506
  readonly surfacePressed: "#27272a";
496
507
  readonly defaultSoft: "rgba(39, 39, 42, 0.5)";
@@ -502,9 +513,9 @@ declare const tokens: {
502
513
  readonly successSoft: "rgba(74, 222, 128, 0.15)";
503
514
  readonly successSoftForeground: "#8de8a6";
504
515
  readonly successSoftPressed: "rgba(74, 222, 128, 0.2)";
505
- readonly warningSoft: "rgba(251, 191, 36, 0.15)";
506
- readonly warningSoftForeground: "#fbd586";
507
- readonly warningSoftPressed: "rgba(251, 191, 36, 0.2)";
516
+ readonly warningSoft: "rgba(251, 146, 60, 0.15)";
517
+ readonly warningSoftForeground: "#feb887";
518
+ readonly warningSoftPressed: "rgba(251, 146, 60, 0.2)";
508
519
  readonly dangerSoft: "rgba(248, 113, 113, 0.15)";
509
520
  readonly dangerSoftForeground: "#fc8f8c";
510
521
  readonly dangerSoftPressed: "rgba(248, 113, 113, 0.2)";
@@ -1,7 +1,7 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
- import { i as XAUIThemeSet, h as XAUIThemeConfig, f as XAUISourceColors, b as XAUIDerivedColors, g as XAUITheme, d as XAUIRadius, C as ColorMode, X as XAUIColors } from '../theme.type-C9bFJKFm.js';
4
- export { F as FontSizeKey, a as FontWeightKey, R as RadiusKey, S as Size, c as XAUIPrimitiveColors, e as XAUIShadow } from '../theme.type-C9bFJKFm.js';
3
+ import { i as XAUIThemeSet, h as XAUIThemeConfig, g as XAUISourceColors, c as XAUIDerivedColors, X as XAUITheme, e as XAUIRadius, C as ColorMode, a as XAUIColors } from '../theme.type-C2gNHpEx.js';
4
+ export { F as FontSizeKey, b as FontWeightKey, R as RadiusKey, S as Size, d as XAUIPrimitiveColors, f as XAUIShadow } from '../theme.type-C2gNHpEx.js';
5
5
  import 'react-native';
6
6
 
7
7
  /** `'system'` follows the device; the resolved value is never `'system'`. */
@@ -44,6 +44,17 @@ declare const defaultTheme: XAUIThemeSet;
44
44
  * These are HeroUI's `color-mix(in oklab, …)` formulas transposed to JS, because React
45
45
  * Native has no `color-mix()`. Their `-hover` names became `-pressed`: what they feed is
46
46
  * the press overlay, and the web name was a leftover.
47
+ *
48
+ * **One deliberate divergence: a pressed state always moves towards the mode's ink**
49
+ * (P2-API-REVIEW §E). Mixing towards the variant's own foreground — which is what their
50
+ * formula does — makes the direction follow the fill's lightness rather than a decision:
51
+ * `#9333ea` has near-white text and lightened under the finger in light mode, while
52
+ * `#c084fc` has dark text and darkened in dark mode. Same component, opposite gesture,
53
+ * nobody's choice. Towards `foreground` it is one direction — darker in light, lighter in
54
+ * dark — and the label's contrast rises in both instead of falling in one.
55
+ *
56
+ * The neutral fills already did this: `defaultForeground` and `surfaceForeground` *are*
57
+ * the ink, so only the four saturated intents ever flipped.
47
58
  */
48
59
  declare function deriveColors(s: XAUISourceColors): XAUIDerivedColors;
49
60
 
@@ -389,7 +400,7 @@ declare const tokens: {
389
400
  readonly foreground: "#18181b";
390
401
  readonly surface: "#ffffff";
391
402
  readonly surfaceForeground: "#18181b";
392
- readonly surfaceSecondary: "#f4f4f5";
403
+ readonly surfaceSecondary: "#ececee";
393
404
  readonly surfaceSecondaryForeground: "#18181b";
394
405
  readonly surfaceTertiary: "#e4e4e7";
395
406
  readonly surfaceTertiaryForeground: "#18181b";
@@ -397,7 +408,7 @@ declare const tokens: {
397
408
  readonly overlayForeground: "#18181b";
398
409
  readonly backdrop: "rgba(0, 0, 0, 0.2)";
399
410
  readonly muted: "#71717a";
400
- readonly default: "#f4f4f5";
411
+ readonly default: "#e4e4e7";
401
412
  readonly defaultForeground: "#18181b";
402
413
  readonly accent: "#9333ea";
403
414
  readonly accentForeground: "#faf5ff";
@@ -407,7 +418,7 @@ declare const tokens: {
407
418
  readonly fieldBorder: "#e4e4e7";
408
419
  readonly success: "#15803d";
409
420
  readonly successForeground: "#fafafa";
410
- readonly warning: "#b45309";
421
+ readonly warning: "#c2410c";
411
422
  readonly warningForeground: "#fafafa";
412
423
  readonly danger: "#dc2626";
413
424
  readonly dangerForeground: "#fafafa";
@@ -417,24 +428,24 @@ declare const tokens: {
417
428
  readonly separator: "#d4d4d8";
418
429
  readonly focus: "#9333ea";
419
430
  readonly link: "#18181b";
420
- readonly accentPressed: "#9c4eee";
421
- readonly successPressed: "#378c50";
422
- readonly warningPressed: "#bd642f";
423
- readonly dangerPressed: "#e2473f";
424
- readonly defaultPressed: "#eaeaeb";
431
+ readonly accentPressed: "#8533d3";
432
+ readonly successPressed: "#1b753a";
433
+ readonly warningPressed: "#af3e15";
434
+ readonly dangerPressed: "#c72927";
435
+ readonly defaultPressed: "#dbdbde";
425
436
  readonly surfacePressed: "#eaeaea";
426
- readonly defaultSoft: "rgba(244, 244, 245, 0.5)";
437
+ readonly defaultSoft: "rgba(228, 228, 231, 0.5)";
427
438
  readonly defaultSoftForeground: "#18181b";
428
- readonly defaultSoftPressed: "rgba(244, 244, 245, 0.6)";
439
+ readonly defaultSoftPressed: "rgba(228, 228, 231, 0.6)";
429
440
  readonly accentSoft: "rgba(147, 51, 234, 0.15)";
430
441
  readonly accentSoftForeground: "#7833bc";
431
442
  readonly accentSoftPressed: "rgba(147, 51, 234, 0.2)";
432
443
  readonly successSoft: "rgba(21, 128, 61, 0.15)";
433
444
  readonly successSoftForeground: "#205f34";
434
445
  readonly successSoftPressed: "rgba(21, 128, 61, 0.2)";
435
- readonly warningSoft: "rgba(180, 83, 9, 0.15)";
436
- readonly warningSoftForeground: "#793f1e";
437
- readonly warningSoftPressed: "rgba(180, 83, 9, 0.2)";
446
+ readonly warningSoft: "rgba(194, 65, 12, 0.15)";
447
+ readonly warningSoftForeground: "#82361e";
448
+ readonly warningSoftPressed: "rgba(194, 65, 12, 0.2)";
438
449
  readonly dangerSoft: "rgba(220, 38, 38, 0.15)";
439
450
  readonly dangerSoftForeground: "#b22b28";
440
451
  readonly dangerSoftPressed: "rgba(220, 38, 38, 0.2)";
@@ -477,7 +488,7 @@ declare const tokens: {
477
488
  readonly fieldBorder: "#3f3f46";
478
489
  readonly success: "#4ade80";
479
490
  readonly successForeground: "#18181b";
480
- readonly warning: "#fbbf24";
491
+ readonly warning: "#fb923c";
481
492
  readonly warningForeground: "#18181b";
482
493
  readonly danger: "#f87171";
483
494
  readonly dangerForeground: "#18181b";
@@ -487,10 +498,10 @@ declare const tokens: {
487
498
  readonly separator: "#52525b";
488
499
  readonly focus: "#c084fc";
489
500
  readonly link: "#fafafa";
490
- readonly accentPressed: "#ad78e3";
491
- readonly successPressed: "#47c875";
492
- readonly warningPressed: "#e1ac2b";
493
- readonly dangerPressed: "#df6868";
501
+ readonly accentPressed: "#c691fd";
502
+ readonly successPressed: "#64e18d";
503
+ readonly warningPressed: "#fc9d55";
504
+ readonly dangerPressed: "#fa807e";
494
505
  readonly defaultPressed: "#2e2e31";
495
506
  readonly surfacePressed: "#27272a";
496
507
  readonly defaultSoft: "rgba(39, 39, 42, 0.5)";
@@ -502,9 +513,9 @@ declare const tokens: {
502
513
  readonly successSoft: "rgba(74, 222, 128, 0.15)";
503
514
  readonly successSoftForeground: "#8de8a6";
504
515
  readonly successSoftPressed: "rgba(74, 222, 128, 0.2)";
505
- readonly warningSoft: "rgba(251, 191, 36, 0.15)";
506
- readonly warningSoftForeground: "#fbd586";
507
- readonly warningSoftPressed: "rgba(251, 191, 36, 0.2)";
516
+ readonly warningSoft: "rgba(251, 146, 60, 0.15)";
517
+ readonly warningSoftForeground: "#feb887";
518
+ readonly warningSoftPressed: "rgba(251, 146, 60, 0.2)";
508
519
  readonly dangerSoft: "rgba(248, 113, 113, 0.15)";
509
520
  readonly dangerSoftForeground: "#fc8f8c";
510
521
  readonly dangerSoftPressed: "rgba(248, 113, 113, 0.2)";
@@ -9,14 +9,15 @@ import {
9
9
  primitives,
10
10
  sourceKeys,
11
11
  tokens
12
- } from "../chunk-2KXQATVL.js";
12
+ } from "../chunk-TZG3DERP.js";
13
13
  import {
14
14
  ThemeContext,
15
15
  deriveTint,
16
16
  useColorMode,
17
17
  useThemeColor,
18
18
  useXAUITheme
19
- } from "../chunk-X2K2FX3W.js";
19
+ } from "../chunk-A3EGFI6T.js";
20
+ import "../chunk-GGW42MY4.js";
20
21
  export {
21
22
  ThemeContext,
22
23
  XAUIProvider,
@@ -156,4 +156,4 @@ type XAUIThemeSet = {
156
156
  dark: XAUITheme;
157
157
  };
158
158
 
159
- export type { ColorMode as C, FontSizeKey as F, RadiusKey as R, Size as S, XAUIColors as X, FontWeightKey as a, XAUIDerivedColors as b, XAUIPrimitiveColors as c, XAUIRadius as d, XAUIShadow as e, XAUISourceColors as f, XAUITheme as g, XAUIThemeConfig as h, XAUIThemeSet as i };
159
+ export type { ColorMode as C, FontSizeKey as F, RadiusKey as R, Size as S, XAUITheme as X, XAUIColors as a, FontWeightKey as b, XAUIDerivedColors as c, XAUIPrimitiveColors as d, XAUIRadius as e, XAUIShadow as f, XAUISourceColors as g, XAUIThemeConfig as h, XAUIThemeSet as i };
@@ -156,4 +156,4 @@ type XAUIThemeSet = {
156
156
  dark: XAUITheme;
157
157
  };
158
158
 
159
- export type { ColorMode as C, FontSizeKey as F, RadiusKey as R, Size as S, XAUIColors as X, FontWeightKey as a, XAUIDerivedColors as b, XAUIPrimitiveColors as c, XAUIRadius as d, XAUIShadow as e, XAUISourceColors as f, XAUITheme as g, XAUIThemeConfig as h, XAUIThemeSet as i };
159
+ export type { ColorMode as C, FontSizeKey as F, RadiusKey as R, Size as S, XAUITheme as X, XAUIColors as a, FontWeightKey as b, XAUIDerivedColors as c, XAUIPrimitiveColors as d, XAUIRadius as e, XAUIShadow as f, XAUISourceColors as g, XAUIThemeConfig as h, XAUIThemeSet as i };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xaui/native",
3
- "version": "0.9.1-alpha.3",
3
+ "version": "0.9.1-alpha.31",
4
4
  "description": "Composition-first React Native UI components with native animations powered by Reanimated",
5
5
  "keywords": [
6
6
  "react-native",
@@ -14,23 +14,188 @@
14
14
  ],
15
15
  "license": "MIT",
16
16
  "type": "module",
17
- "main": "./dist/index.js",
17
+ "main": "./dist/index.cjs",
18
18
  "types": "./dist/index.d.ts",
19
19
  "exports": {
20
20
  ".": {
21
- "types": "./dist/index.d.ts",
22
- "import": "./dist/index.js",
23
- "require": "./dist/index.js"
21
+ "import": {
22
+ "types": "./dist/index.d.ts",
23
+ "default": "./dist/index.js"
24
+ },
25
+ "require": {
26
+ "types": "./dist/index.d.cts",
27
+ "default": "./dist/index.cjs"
28
+ }
29
+ },
30
+ "./alert": {
31
+ "import": {
32
+ "types": "./dist/components/alert/index.d.ts",
33
+ "default": "./dist/components/alert/index.js"
34
+ },
35
+ "require": {
36
+ "types": "./dist/components/alert/index.d.cts",
37
+ "default": "./dist/components/alert/index.cjs"
38
+ }
39
+ },
40
+ "./button": {
41
+ "import": {
42
+ "types": "./dist/components/button/index.d.ts",
43
+ "default": "./dist/components/button/index.js"
44
+ },
45
+ "require": {
46
+ "types": "./dist/components/button/index.d.cts",
47
+ "default": "./dist/components/button/index.cjs"
48
+ }
49
+ },
50
+ "./card": {
51
+ "import": {
52
+ "types": "./dist/components/card/index.d.ts",
53
+ "default": "./dist/components/card/index.js"
54
+ },
55
+ "require": {
56
+ "types": "./dist/components/card/index.d.cts",
57
+ "default": "./dist/components/card/index.cjs"
58
+ }
59
+ },
60
+ "./checkbox": {
61
+ "import": {
62
+ "types": "./dist/components/checkbox/index.d.ts",
63
+ "default": "./dist/components/checkbox/index.js"
64
+ },
65
+ "require": {
66
+ "types": "./dist/components/checkbox/index.d.cts",
67
+ "default": "./dist/components/checkbox/index.cjs"
68
+ }
69
+ },
70
+ "./chip": {
71
+ "import": {
72
+ "types": "./dist/components/chip/index.d.ts",
73
+ "default": "./dist/components/chip/index.js"
74
+ },
75
+ "require": {
76
+ "types": "./dist/components/chip/index.d.cts",
77
+ "default": "./dist/components/chip/index.cjs"
78
+ }
79
+ },
80
+ "./divider": {
81
+ "import": {
82
+ "types": "./dist/components/divider/index.d.ts",
83
+ "default": "./dist/components/divider/index.js"
84
+ },
85
+ "require": {
86
+ "types": "./dist/components/divider/index.d.cts",
87
+ "default": "./dist/components/divider/index.cjs"
88
+ }
89
+ },
90
+ "./input": {
91
+ "import": {
92
+ "types": "./dist/components/input/index.d.ts",
93
+ "default": "./dist/components/input/index.js"
94
+ },
95
+ "require": {
96
+ "types": "./dist/components/input/index.d.cts",
97
+ "default": "./dist/components/input/index.cjs"
98
+ }
99
+ },
100
+ "./input-group": {
101
+ "import": {
102
+ "types": "./dist/components/input-group/index.d.ts",
103
+ "default": "./dist/components/input-group/index.js"
104
+ },
105
+ "require": {
106
+ "types": "./dist/components/input-group/index.d.cts",
107
+ "default": "./dist/components/input-group/index.cjs"
108
+ }
109
+ },
110
+ "./input-otp": {
111
+ "import": {
112
+ "types": "./dist/components/input-otp/index.d.ts",
113
+ "default": "./dist/components/input-otp/index.js"
114
+ },
115
+ "require": {
116
+ "types": "./dist/components/input-otp/index.d.cts",
117
+ "default": "./dist/components/input-otp/index.cjs"
118
+ }
119
+ },
120
+ "./radio": {
121
+ "import": {
122
+ "types": "./dist/components/radio/index.d.ts",
123
+ "default": "./dist/components/radio/index.js"
124
+ },
125
+ "require": {
126
+ "types": "./dist/components/radio/index.d.cts",
127
+ "default": "./dist/components/radio/index.cjs"
128
+ }
129
+ },
130
+ "./spinner": {
131
+ "import": {
132
+ "types": "./dist/components/spinner/index.d.ts",
133
+ "default": "./dist/components/spinner/index.js"
134
+ },
135
+ "require": {
136
+ "types": "./dist/components/spinner/index.d.cts",
137
+ "default": "./dist/components/spinner/index.cjs"
138
+ }
139
+ },
140
+ "./switch": {
141
+ "import": {
142
+ "types": "./dist/components/switch/index.d.ts",
143
+ "default": "./dist/components/switch/index.js"
144
+ },
145
+ "require": {
146
+ "types": "./dist/components/switch/index.d.cts",
147
+ "default": "./dist/components/switch/index.cjs"
148
+ }
149
+ },
150
+ "./text-area": {
151
+ "import": {
152
+ "types": "./dist/components/text-area/index.d.ts",
153
+ "default": "./dist/components/text-area/index.js"
154
+ },
155
+ "require": {
156
+ "types": "./dist/components/text-area/index.d.cts",
157
+ "default": "./dist/components/text-area/index.cjs"
158
+ }
159
+ },
160
+ "./typography": {
161
+ "import": {
162
+ "types": "./dist/components/typography/index.d.ts",
163
+ "default": "./dist/components/typography/index.js"
164
+ },
165
+ "require": {
166
+ "types": "./dist/components/typography/index.d.cts",
167
+ "default": "./dist/components/typography/index.cjs"
168
+ }
169
+ },
170
+ "./view": {
171
+ "import": {
172
+ "types": "./dist/components/view/index.d.ts",
173
+ "default": "./dist/components/view/index.js"
174
+ },
175
+ "require": {
176
+ "types": "./dist/components/view/index.d.cts",
177
+ "default": "./dist/components/view/index.cjs"
178
+ }
24
179
  },
25
180
  "./system": {
26
- "types": "./dist/system/index.d.ts",
27
- "import": "./dist/system/index.js",
28
- "require": "./dist/system/index.js"
181
+ "import": {
182
+ "types": "./dist/system/index.d.ts",
183
+ "default": "./dist/system/index.js"
184
+ },
185
+ "require": {
186
+ "types": "./dist/system/index.d.cts",
187
+ "default": "./dist/system/index.cjs"
188
+ }
29
189
  },
30
190
  "./theme": {
31
- "types": "./dist/theme/index.d.ts",
32
- "import": "./dist/theme/index.js",
33
- "require": "./dist/theme/index.js"
191
+ "import": {
192
+ "types": "./dist/theme/index.d.ts",
193
+ "default": "./dist/theme/index.js"
194
+ },
195
+ "require": {
196
+ "types": "./dist/theme/index.d.cts",
197
+ "default": "./dist/theme/index.cjs"
198
+ }
34
199
  }
35
200
  },
36
201
  "files": [
@@ -67,19 +232,20 @@
67
232
  }
68
233
  },
69
234
  "devDependencies": {
70
- "@types/react": "^19.1.0",
71
- "react": "19.1.0",
72
- "react-native": "0.83.6",
235
+ "@types/react": "^19.2.0",
236
+ "react": "19.2.0",
237
+ "react-native": "0.83.10",
73
238
  "react-native-gesture-handler": "^2.28.0",
74
- "react-native-reanimated": "^4.0.0",
239
+ "react-native-reanimated": "4.2.1",
75
240
  "react-native-safe-area-context": "^5.6.0",
76
- "react-native-svg": "^15.8.0",
77
- "react-native-worklets": "^0.5.1",
241
+ "react-native-svg": "15.15.3",
242
+ "react-native-worklets": "0.7.4",
78
243
  "tsup": "^8.5.1",
79
244
  "typescript": "^5.9.3"
80
245
  },
246
+ "module": "./dist/index.js",
81
247
  "scripts": {
82
- "build": "rm -rf dist && tsup --config tsup.config.ts",
248
+ "build": "rm -rf dist && tsup --config tsup.config.ts && node ../../tooling/workletize/workletize.mjs dist",
83
249
  "dev": "tsup --config tsup.config.ts --watch",
84
250
  "test": "vitest",
85
251
  "lint": "eslint src/",