@xaui/native 0.9.1-alpha.91 → 0.9.1-alpha.93

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 (86) hide show
  1. package/dist/chunk-2SHWOFQV.js +495 -0
  2. package/dist/chunk-3A5RK2R7.js +40 -0
  3. package/dist/chunk-6JAGPPZU.cjs +788 -0
  4. package/dist/chunk-7NQL5DXY.js +302 -0
  5. package/dist/chunk-FTPPUTWL.cjs +40 -0
  6. package/dist/chunk-GGP2ERSV.js +487 -0
  7. package/dist/chunk-LKRQUQZQ.cjs +487 -0
  8. package/dist/chunk-OPLPLFGK.cjs +493 -0
  9. package/dist/{chunk-LIEXFWTN.js → chunk-P5M5URAB.js} +29 -126
  10. package/dist/chunk-XWIPLZTD.cjs +302 -0
  11. package/dist/components/carousel/index.cjs +3 -2
  12. package/dist/components/carousel/index.js +2 -1
  13. package/dist/components/index.d.cts +3 -0
  14. package/dist/components/index.d.ts +3 -0
  15. package/dist/components/number-pad/index.cjs +40 -0
  16. package/dist/components/number-pad/index.d.cts +60 -0
  17. package/dist/components/number-pad/index.d.ts +60 -0
  18. package/dist/components/number-pad/index.js +40 -0
  19. package/dist/components/number-pad/number-pad-action.d.cts +24 -0
  20. package/dist/components/number-pad/number-pad-action.d.ts +24 -0
  21. package/dist/components/number-pad/number-pad-backspace.d.cts +18 -0
  22. package/dist/components/number-pad/number-pad-backspace.d.ts +18 -0
  23. package/dist/components/number-pad/number-pad-cell.d.cts +7 -0
  24. package/dist/components/number-pad/number-pad-cell.d.ts +7 -0
  25. package/dist/components/number-pad/number-pad-icon.d.cts +13 -0
  26. package/dist/components/number-pad/number-pad-icon.d.ts +13 -0
  27. package/dist/components/number-pad/number-pad-key.d.cts +24 -0
  28. package/dist/components/number-pad/number-pad-key.d.ts +24 -0
  29. package/dist/components/number-pad/number-pad-label.d.cts +14 -0
  30. package/dist/components/number-pad/number-pad-label.d.ts +14 -0
  31. package/dist/components/number-pad/number-pad.context.d.cts +18 -0
  32. package/dist/components/number-pad/number-pad.context.d.ts +18 -0
  33. package/dist/components/number-pad/number-pad.d.cts +57 -0
  34. package/dist/components/number-pad/number-pad.d.ts +57 -0
  35. package/dist/components/number-pad/number-pad.recipe.d.cts +11 -0
  36. package/dist/components/number-pad/number-pad.recipe.d.ts +11 -0
  37. package/dist/components/number-pad/number-pad.style.d.cts +13 -0
  38. package/dist/components/number-pad/number-pad.style.d.ts +13 -0
  39. package/dist/components/number-pad/number-pad.type.d.cts +135 -0
  40. package/dist/components/number-pad/number-pad.type.d.ts +135 -0
  41. package/dist/components/number-pad/number-pad.utils.d.cts +34 -0
  42. package/dist/components/number-pad/number-pad.utils.d.ts +34 -0
  43. package/dist/components/pager/index.cjs +33 -0
  44. package/dist/components/pager/index.d.cts +60 -0
  45. package/dist/components/pager/index.d.ts +60 -0
  46. package/dist/components/pager/index.js +33 -0
  47. package/dist/components/pager/pager-content.d.cts +24 -0
  48. package/dist/components/pager/pager-content.d.ts +24 -0
  49. package/dist/components/pager/pager-indicator.d.cts +47 -0
  50. package/dist/components/pager/pager-indicator.d.ts +47 -0
  51. package/dist/components/pager/pager-page.d.cts +16 -0
  52. package/dist/components/pager/pager-page.d.ts +16 -0
  53. package/dist/components/pager/pager.context.d.cts +7 -0
  54. package/dist/components/pager/pager.context.d.ts +7 -0
  55. package/dist/components/pager/pager.d.cts +70 -0
  56. package/dist/components/pager/pager.d.ts +70 -0
  57. package/dist/components/pager/pager.recipe.d.cts +33 -0
  58. package/dist/components/pager/pager.recipe.d.ts +33 -0
  59. package/dist/components/pager/pager.type.d.cts +107 -0
  60. package/dist/components/pager/pager.type.d.ts +107 -0
  61. package/dist/components/rating/index.cjs +30 -0
  62. package/dist/components/rating/index.d.cts +41 -0
  63. package/dist/components/rating/index.d.ts +41 -0
  64. package/dist/components/rating/index.js +30 -0
  65. package/dist/components/rating/rating-icon.d.cts +16 -0
  66. package/dist/components/rating/rating-icon.d.ts +16 -0
  67. package/dist/components/rating/rating-item.d.cts +23 -0
  68. package/dist/components/rating/rating-item.d.ts +23 -0
  69. package/dist/components/rating/rating-star.d.cts +19 -0
  70. package/dist/components/rating/rating-star.d.ts +19 -0
  71. package/dist/components/rating/rating.context.d.cts +16 -0
  72. package/dist/components/rating/rating.context.d.ts +16 -0
  73. package/dist/components/rating/rating.d.cts +59 -0
  74. package/dist/components/rating/rating.d.ts +59 -0
  75. package/dist/components/rating/rating.recipe.d.cts +11 -0
  76. package/dist/components/rating/rating.recipe.d.ts +11 -0
  77. package/dist/components/rating/rating.style.d.cts +24 -0
  78. package/dist/components/rating/rating.style.d.ts +24 -0
  79. package/dist/components/rating/rating.type.d.cts +108 -0
  80. package/dist/components/rating/rating.type.d.ts +108 -0
  81. package/dist/components/rating/rating.utils.d.cts +28 -0
  82. package/dist/components/rating/rating.utils.d.ts +28 -0
  83. package/dist/index.cjs +91 -28
  84. package/dist/index.js +148 -85
  85. package/package.json +31 -1
  86. package/dist/chunk-K5UO3HBW.cjs +0 -1007
@@ -0,0 +1,60 @@
1
+ import { NumberPadIcon } from './number-pad-icon';
2
+ export declare const NumberPad: import("react").ForwardRefExoticComponent<{
3
+ variant?: import("./number-pad.type").NumberPadVariant;
4
+ size?: import("./number-pad.type").NumberPadSize;
5
+ radius?: import("../..").RadiusKey;
6
+ color?: string;
7
+ value?: string;
8
+ defaultValue?: string;
9
+ onChangeText?: (value: string) => void;
10
+ onComplete?: (value: string) => void;
11
+ maxLength?: number;
12
+ isDisabled?: boolean;
13
+ children?: import("react").ReactNode;
14
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
15
+ } & Omit<import("react-native").ViewProps, "style" | "children"> & Omit<import("../..").ViewStyleProps, keyof {
16
+ variant?: import("./number-pad.type").NumberPadVariant;
17
+ size?: import("./number-pad.type").NumberPadSize;
18
+ radius?: import("../..").RadiusKey;
19
+ color?: string;
20
+ value?: string;
21
+ defaultValue?: string;
22
+ onChangeText?: (value: string) => void;
23
+ onComplete?: (value: string) => void;
24
+ maxLength?: number;
25
+ isDisabled?: boolean;
26
+ children?: import("react").ReactNode;
27
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
28
+ }> & import("react").RefAttributes<import("react-native").View>> & {
29
+ Key: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
30
+ isDisabled?: boolean;
31
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
32
+ children?: import("react").ReactNode;
33
+ } & {
34
+ value: string;
35
+ } & import("react").RefAttributes<import("react-native").View>>;
36
+ Backspace: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
37
+ isDisabled?: boolean;
38
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
39
+ children?: import("react").ReactNode;
40
+ } & import("react").RefAttributes<import("react-native").View>>;
41
+ Action: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
42
+ isDisabled?: boolean;
43
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
44
+ children?: import("react").ReactNode;
45
+ } & import("react").RefAttributes<import("react-native").View>>;
46
+ Label: import("react").ForwardRefExoticComponent<import("react-native").TextProps & Omit<import("../..").TextStyleProps, keyof import("react-native").TextProps> & {
47
+ children?: import("react").ReactNode;
48
+ } & import("react").RefAttributes<import("react-native").Text>>;
49
+ Icon: typeof NumberPadIcon;
50
+ };
51
+ export { NumberPadRoot } from './number-pad';
52
+ export { NumberPadAction } from './number-pad-action';
53
+ export { NumberPadBackspace } from './number-pad-backspace';
54
+ export { NumberPadIcon } from './number-pad-icon';
55
+ export { NumberPadKey } from './number-pad-key';
56
+ export { NumberPadLabel } from './number-pad-label';
57
+ export { useNumberPad, useNumberPadCell } from './number-pad.context';
58
+ export { numberPadRecipe } from './number-pad.recipe';
59
+ export { NUMBER_PAD_ROWS, NUMBER_PAD_ZERO } from './number-pad.utils';
60
+ export type { NumberPadActionProps, NumberPadBackspaceProps, NumberPadCellContextValue, NumberPadContextValue, NumberPadIconProps, NumberPadKeyProps, NumberPadLabelProps, NumberPadProps, NumberPadSize, NumberPadSlot, NumberPadVariant, } from './number-pad.type';
@@ -0,0 +1,60 @@
1
+ import { NumberPadIcon } from './number-pad-icon';
2
+ export declare const NumberPad: import("react").ForwardRefExoticComponent<{
3
+ variant?: import("./number-pad.type").NumberPadVariant;
4
+ size?: import("./number-pad.type").NumberPadSize;
5
+ radius?: import("../..").RadiusKey;
6
+ color?: string;
7
+ value?: string;
8
+ defaultValue?: string;
9
+ onChangeText?: (value: string) => void;
10
+ onComplete?: (value: string) => void;
11
+ maxLength?: number;
12
+ isDisabled?: boolean;
13
+ children?: import("react").ReactNode;
14
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
15
+ } & Omit<import("react-native").ViewProps, "style" | "children"> & Omit<import("../..").ViewStyleProps, keyof {
16
+ variant?: import("./number-pad.type").NumberPadVariant;
17
+ size?: import("./number-pad.type").NumberPadSize;
18
+ radius?: import("../..").RadiusKey;
19
+ color?: string;
20
+ value?: string;
21
+ defaultValue?: string;
22
+ onChangeText?: (value: string) => void;
23
+ onComplete?: (value: string) => void;
24
+ maxLength?: number;
25
+ isDisabled?: boolean;
26
+ children?: import("react").ReactNode;
27
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
28
+ }> & import("react").RefAttributes<import("react-native").View>> & {
29
+ Key: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
30
+ isDisabled?: boolean;
31
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
32
+ children?: import("react").ReactNode;
33
+ } & {
34
+ value: string;
35
+ } & import("react").RefAttributes<import("react-native").View>>;
36
+ Backspace: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
37
+ isDisabled?: boolean;
38
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
39
+ children?: import("react").ReactNode;
40
+ } & import("react").RefAttributes<import("react-native").View>>;
41
+ Action: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
42
+ isDisabled?: boolean;
43
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
44
+ children?: import("react").ReactNode;
45
+ } & import("react").RefAttributes<import("react-native").View>>;
46
+ Label: import("react").ForwardRefExoticComponent<import("react-native").TextProps & Omit<import("../..").TextStyleProps, keyof import("react-native").TextProps> & {
47
+ children?: import("react").ReactNode;
48
+ } & import("react").RefAttributes<import("react-native").Text>>;
49
+ Icon: typeof NumberPadIcon;
50
+ };
51
+ export { NumberPadRoot } from './number-pad';
52
+ export { NumberPadAction } from './number-pad-action';
53
+ export { NumberPadBackspace } from './number-pad-backspace';
54
+ export { NumberPadIcon } from './number-pad-icon';
55
+ export { NumberPadKey } from './number-pad-key';
56
+ export { NumberPadLabel } from './number-pad-label';
57
+ export { useNumberPad, useNumberPadCell } from './number-pad.context';
58
+ export { numberPadRecipe } from './number-pad.recipe';
59
+ export { NUMBER_PAD_ROWS, NUMBER_PAD_ZERO } from './number-pad.utils';
60
+ export type { NumberPadActionProps, NumberPadBackspaceProps, NumberPadCellContextValue, NumberPadContextValue, NumberPadIconProps, NumberPadKeyProps, NumberPadLabelProps, NumberPadProps, NumberPadSize, NumberPadSlot, NumberPadVariant, } from './number-pad.type';
@@ -0,0 +1,40 @@
1
+ import {
2
+ NUMBER_PAD_ROWS,
3
+ NUMBER_PAD_ZERO,
4
+ NumberPad,
5
+ NumberPadAction,
6
+ NumberPadBackspace,
7
+ NumberPadIcon,
8
+ NumberPadKey,
9
+ NumberPadLabel,
10
+ NumberPadRoot,
11
+ numberPadRecipe,
12
+ useNumberPad,
13
+ useNumberPadCell
14
+ } from "../../chunk-GGP2ERSV.js";
15
+ import "../../chunk-F6W3JQ7K.js";
16
+ import "../../chunk-2AFA5HA2.js";
17
+ import "../../chunk-423RQBOX.js";
18
+ import "../../chunk-JN6IRT2M.js";
19
+ import "../../chunk-WFZDAXDI.js";
20
+ import "../../chunk-DKVXTMIJ.js";
21
+ import "../../chunk-3Q42X6EQ.js";
22
+ import "../../chunk-TTZOIXKE.js";
23
+ import "../../chunk-36PRYGAM.js";
24
+ import "../../chunk-EGLLDKN6.js";
25
+ import "../../chunk-Z6JBWRPL.js";
26
+ import "../../chunk-M63GFNKV.js";
27
+ export {
28
+ NUMBER_PAD_ROWS,
29
+ NUMBER_PAD_ZERO,
30
+ NumberPad,
31
+ NumberPadAction,
32
+ NumberPadBackspace,
33
+ NumberPadIcon,
34
+ NumberPadKey,
35
+ NumberPadLabel,
36
+ NumberPadRoot,
37
+ numberPadRecipe,
38
+ useNumberPad,
39
+ useNumberPadCell
40
+ };
@@ -0,0 +1,24 @@
1
+ import type { View } from 'react-native';
2
+ /**
3
+ * The free corner of the bottom row, opposite the backspace.
4
+ *
5
+ * It does nothing on its own — the press is the caller's, because what belongs there is
6
+ * theirs: a fingerprint that unlocks, a `Clear`, the pad's own decimal separator. Bare like
7
+ * the backspace, so the two corners read as a pair around the `0`.
8
+ *
9
+ * ```tsx
10
+ * <NumberPad>
11
+ * <NumberPad.Action onPress={unlock} accessibilityLabel="Unlock with Face ID">
12
+ * <NumberPad.Icon as={FaceIdIcon} color={theme.colors.accent} />
13
+ * </NumberPad.Action>
14
+ * </NumberPad>
15
+ * ```
16
+ *
17
+ * A key that inserts goes there as a `NumberPad.Key` instead; this one is for everything
18
+ * that is not a character.
19
+ */
20
+ export declare const NumberPadAction: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
21
+ isDisabled?: boolean;
22
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
23
+ children?: import("react").ReactNode;
24
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,24 @@
1
+ import type { View } from 'react-native';
2
+ /**
3
+ * The free corner of the bottom row, opposite the backspace.
4
+ *
5
+ * It does nothing on its own — the press is the caller's, because what belongs there is
6
+ * theirs: a fingerprint that unlocks, a `Clear`, the pad's own decimal separator. Bare like
7
+ * the backspace, so the two corners read as a pair around the `0`.
8
+ *
9
+ * ```tsx
10
+ * <NumberPad>
11
+ * <NumberPad.Action onPress={unlock} accessibilityLabel="Unlock with Face ID">
12
+ * <NumberPad.Icon as={FaceIdIcon} color={theme.colors.accent} />
13
+ * </NumberPad.Action>
14
+ * </NumberPad>
15
+ * ```
16
+ *
17
+ * A key that inserts goes there as a `NumberPad.Key` instead; this one is for everything
18
+ * that is not a character.
19
+ */
20
+ export declare const NumberPadAction: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
21
+ isDisabled?: boolean;
22
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
23
+ children?: import("react").ReactNode;
24
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,18 @@
1
+ import type { View } from 'react-native';
2
+ /**
3
+ * The delete key, on the end of the bottom row. Bare rather than filled: it is not a digit,
4
+ * and eleven identical fills is a pad where the one key that removes looks like the ten that
5
+ * add.
6
+ *
7
+ * **A long press clears the whole value.** It is the gesture every platform's own keypad
8
+ * carries, and without it a mistyped sixteen-digit card is sixteen presses to undo.
9
+ *
10
+ * The arrow is a **character**, not an icon, so the pad needs no SVG peer for the one glyph
11
+ * it draws itself. It flips under RTL, because a backspace points at what it removes and
12
+ * that is the other way round in a right-to-left layout. `NumberPad.Icon` replaces it.
13
+ */
14
+ export declare const NumberPadBackspace: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
15
+ isDisabled?: boolean;
16
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
17
+ children?: import("react").ReactNode;
18
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,18 @@
1
+ import type { View } from 'react-native';
2
+ /**
3
+ * The delete key, on the end of the bottom row. Bare rather than filled: it is not a digit,
4
+ * and eleven identical fills is a pad where the one key that removes looks like the ten that
5
+ * add.
6
+ *
7
+ * **A long press clears the whole value.** It is the gesture every platform's own keypad
8
+ * carries, and without it a mistyped sixteen-digit card is sixteen presses to undo.
9
+ *
10
+ * The arrow is a **character**, not an icon, so the pad needs no SVG peer for the one glyph
11
+ * it draws itself. It flips under RTL, because a backspace points at what it removes and
12
+ * that is the other way round in a right-to-left layout. `NumberPad.Icon` replaces it.
13
+ */
14
+ export declare const NumberPadBackspace: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
15
+ isDisabled?: boolean;
16
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
17
+ children?: import("react").ReactNode;
18
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,7 @@
1
+ import type { View } from 'react-native';
2
+ import type { NumberPadCellTone, NumberPadKeyProps } from './number-pad.type';
3
+ export declare const NumberPadCell: import("react").ForwardRefExoticComponent<Omit<NumberPadKeyProps, "value"> & {
4
+ tone: NumberPadCellTone;
5
+ /** What the press does to the value. Composed after the caller's own `onPress`. */
6
+ onActivate?: () => void;
7
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,7 @@
1
+ import type { View } from 'react-native';
2
+ import type { NumberPadCellTone, NumberPadKeyProps } from './number-pad.type';
3
+ export declare const NumberPadCell: import("react").ForwardRefExoticComponent<Omit<NumberPadKeyProps, "value"> & {
4
+ tone: NumberPadCellTone;
5
+ /** What the press does to the value. Composed after the caller's own `onPress`. */
6
+ onActivate?: () => void;
7
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,13 @@
1
+ import type { NumberPadIconProps } from './number-pad.type';
2
+ /**
3
+ * A glyph on a cell, taking the pad's size and the cell's colour without being told either
4
+ * — the fingerprint in the free corner, or a drawn backspace in place of the character one.
5
+ *
6
+ * The colour follows the cell it is in for the reason the label's does: a filled key reads
7
+ * the variant's foreground and a bare corner the page's. An explicit `color` still wins,
8
+ * which is what makes the accent-coloured biometric key one prop.
9
+ */
10
+ export declare function NumberPadIcon({ size, color, ...rest }: NumberPadIconProps): import("react").JSX.Element;
11
+ export declare namespace NumberPadIcon {
12
+ var displayName: string;
13
+ }
@@ -0,0 +1,13 @@
1
+ import type { NumberPadIconProps } from './number-pad.type';
2
+ /**
3
+ * A glyph on a cell, taking the pad's size and the cell's colour without being told either
4
+ * — the fingerprint in the free corner, or a drawn backspace in place of the character one.
5
+ *
6
+ * The colour follows the cell it is in for the reason the label's does: a filled key reads
7
+ * the variant's foreground and a bare corner the page's. An explicit `color` still wins,
8
+ * which is what makes the accent-coloured biometric key one prop.
9
+ */
10
+ export declare function NumberPadIcon({ size, color, ...rest }: NumberPadIconProps): import("react").JSX.Element;
11
+ export declare namespace NumberPadIcon {
12
+ var displayName: string;
13
+ }
@@ -0,0 +1,24 @@
1
+ import type { View } from 'react-native';
2
+ /**
3
+ * One filled key.
4
+ *
5
+ * The root renders ten of these and names none of them, because the digits are data. This
6
+ * is exported for the eleventh — a decimal separator or a `00` on a currency pad, dropped
7
+ * into the free cell:
8
+ *
9
+ * ```tsx
10
+ * <NumberPad>
11
+ * <NumberPad.Key value="," />
12
+ * </NumberPad>
13
+ * ```
14
+ *
15
+ * With nothing composed inside it, it shows what it inserts. R3 otherwise: a stringifiable
16
+ * tree becomes the label, anything else is the caller's own content.
17
+ */
18
+ export declare const NumberPadKey: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
19
+ isDisabled?: boolean;
20
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
21
+ children?: import("react").ReactNode;
22
+ } & {
23
+ value: string;
24
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,24 @@
1
+ import type { View } from 'react-native';
2
+ /**
3
+ * One filled key.
4
+ *
5
+ * The root renders ten of these and names none of them, because the digits are data. This
6
+ * is exported for the eleventh — a decimal separator or a `00` on a currency pad, dropped
7
+ * into the free cell:
8
+ *
9
+ * ```tsx
10
+ * <NumberPad>
11
+ * <NumberPad.Key value="," />
12
+ * </NumberPad>
13
+ * ```
14
+ *
15
+ * With nothing composed inside it, it shows what it inserts. R3 otherwise: a stringifiable
16
+ * tree becomes the label, anything else is the caller's own content.
17
+ */
18
+ export declare const NumberPadKey: import("react").ForwardRefExoticComponent<Omit<import("../..").PressableFeedbackProps, "isPressed" | "style" | "children" | "layout"> & {
19
+ isDisabled?: boolean;
20
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle> | ((state: import("react-native").PressableStateCallbackType) => import("react-native").StyleProp<import("react-native").ViewStyle>);
21
+ children?: import("react").ReactNode;
22
+ } & {
23
+ value: string;
24
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,14 @@
1
+ import { Text } from 'react-native';
2
+ /**
3
+ * The character on a cell — the digit on a key, the arrow on the backspace.
4
+ *
5
+ * Which foreground it takes is the **cell's** answer rather than a prop of its own: a
6
+ * filled key's is the variant's, a bare corner's is the page's. Three lines, because the
7
+ * root already resolved both (R5).
8
+ *
9
+ * Single-line by default. A key has a fixed height, so a label too long for it truncates
10
+ * rather than deforming the row it is in.
11
+ */
12
+ export declare const NumberPadLabel: import("react").ForwardRefExoticComponent<import("react-native").TextProps & Omit<import("../..").TextStyleProps, keyof import("react-native").TextProps> & {
13
+ children?: import("react").ReactNode;
14
+ } & import("react").RefAttributes<Text>>;
@@ -0,0 +1,14 @@
1
+ import { Text } from 'react-native';
2
+ /**
3
+ * The character on a cell — the digit on a key, the arrow on the backspace.
4
+ *
5
+ * Which foreground it takes is the **cell's** answer rather than a prop of its own: a
6
+ * filled key's is the variant's, a bare corner's is the page's. Three lines, because the
7
+ * root already resolved both (R5).
8
+ *
9
+ * Single-line by default. A key has a fixed height, so a label too long for it truncates
10
+ * rather than deforming the row it is in.
11
+ */
12
+ export declare const NumberPadLabel: import("react").ForwardRefExoticComponent<import("react-native").TextProps & Omit<import("../..").TextStyleProps, keyof import("react-native").TextProps> & {
13
+ children?: import("react").ReactNode;
14
+ } & import("react").RefAttributes<Text>>;
@@ -0,0 +1,18 @@
1
+ import type { NumberPadCellContextValue, NumberPadContextValue } from './number-pad.type';
2
+ /**
3
+ * R10 — `useNumberPad` is exported so a control beside the pad can read the value it is
4
+ * building, and so a caller can write their own cell (a `00` key on a currency pad)
5
+ * against the same `insert` the built-in ones call. Outside a `<NumberPad>` it throws by
6
+ * name.
7
+ */
8
+ export declare const NumberPadProvider: import("react").Provider<NumberPadContextValue | null>, useNumberPad: () => NumberPadContextValue;
9
+ /**
10
+ * Which cell a label or a glyph is inside.
11
+ *
12
+ * It exists so `NumberPad.Icon` needs no prop to know whether it sits on a filled key or in
13
+ * a bare corner — the cell it is in already knows, and the two want different foregrounds:
14
+ * a `primary` pad's digits are `accentForeground`, and a backspace with no ground of its own
15
+ * would take white on white. A `tone` prop would have made that the caller's problem, and
16
+ * the caller cannot see the variant from inside the cell.
17
+ */
18
+ export declare const NumberPadCellProvider: import("react").Provider<NumberPadCellContextValue | null>, useNumberPadCell: () => NumberPadCellContextValue;
@@ -0,0 +1,18 @@
1
+ import type { NumberPadCellContextValue, NumberPadContextValue } from './number-pad.type';
2
+ /**
3
+ * R10 — `useNumberPad` is exported so a control beside the pad can read the value it is
4
+ * building, and so a caller can write their own cell (a `00` key on a currency pad)
5
+ * against the same `insert` the built-in ones call. Outside a `<NumberPad>` it throws by
6
+ * name.
7
+ */
8
+ export declare const NumberPadProvider: import("react").Provider<NumberPadContextValue | null>, useNumberPad: () => NumberPadContextValue;
9
+ /**
10
+ * Which cell a label or a glyph is inside.
11
+ *
12
+ * It exists so `NumberPad.Icon` needs no prop to know whether it sits on a filled key or in
13
+ * a bare corner — the cell it is in already knows, and the two want different foregrounds:
14
+ * a `primary` pad's digits are `accentForeground`, and a backspace with no ground of its own
15
+ * would take white on white. A `tone` prop would have made that the caller's problem, and
16
+ * the caller cannot see the variant from inside the cell.
17
+ */
18
+ export declare const NumberPadCellProvider: import("react").Provider<NumberPadCellContextValue | null>, useNumberPadCell: () => NumberPadCellContextValue;
@@ -0,0 +1,57 @@
1
+ import { View } from 'react-native';
2
+ /**
3
+ * The keypad a PIN, a code and an amount are typed on.
4
+ *
5
+ * ```tsx
6
+ * <NumberPad maxLength={4} onComplete={unlock} />
7
+ *
8
+ * <NumberPad maxLength={4} value={pin} onChangeText={setPin}>
9
+ * <NumberPad.Action onPress={faceId} accessibilityLabel="Unlock with Face ID">
10
+ * <NumberPad.Icon as={FaceIdIcon} color={theme.colors.accent} />
11
+ * </NumberPad.Action>
12
+ * </NumberPad>
13
+ * ```
14
+ *
15
+ * **The grid is data, not markup.** `1` through `9`, the `0` and the backspace are not a
16
+ * decision a caller makes, so the root renders them — eleven hand-written cells is a layout
17
+ * that disagrees with itself the moment one of them is edited. What *is* composed is the one
18
+ * free corner of the bottom row, and that is what `children` is.
19
+ *
20
+ * **The pad owns the value as one string**, controlled or not, and clamps it to `maxLength`:
21
+ * a press past the limit changes nothing at all, so `onChangeText` does not fire and a full
22
+ * PIN cannot be completed twice by leaning on a key.
23
+ *
24
+ * **It draws no display.** What the value looks like is the screen's — an `InputOTP`'s boxes,
25
+ * a row of dots, an amount in a `Typography`. A pad that also rendered the value would be
26
+ * two components that have to agree on a string.
27
+ *
28
+ * `useNumberPad()` publishes `insert`, `backspace` and `clear`, so a control beside the pad
29
+ * drives it with no state of its own.
30
+ */
31
+ export declare const NumberPadRoot: import("react").ForwardRefExoticComponent<{
32
+ variant?: import("./number-pad.type").NumberPadVariant;
33
+ size?: import("./number-pad.type").NumberPadSize;
34
+ radius?: import("../..").RadiusKey;
35
+ color?: string;
36
+ value?: string;
37
+ defaultValue?: string;
38
+ onChangeText?: (value: string) => void;
39
+ onComplete?: (value: string) => void;
40
+ maxLength?: number;
41
+ isDisabled?: boolean;
42
+ children?: import("react").ReactNode;
43
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
44
+ } & Omit<import("react-native").ViewProps, "style" | "children"> & Omit<import("../..").ViewStyleProps, keyof {
45
+ variant?: import("./number-pad.type").NumberPadVariant;
46
+ size?: import("./number-pad.type").NumberPadSize;
47
+ radius?: import("../..").RadiusKey;
48
+ color?: string;
49
+ value?: string;
50
+ defaultValue?: string;
51
+ onChangeText?: (value: string) => void;
52
+ onComplete?: (value: string) => void;
53
+ maxLength?: number;
54
+ isDisabled?: boolean;
55
+ children?: import("react").ReactNode;
56
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
57
+ }> & import("react").RefAttributes<View>>;
@@ -0,0 +1,57 @@
1
+ import { View } from 'react-native';
2
+ /**
3
+ * The keypad a PIN, a code and an amount are typed on.
4
+ *
5
+ * ```tsx
6
+ * <NumberPad maxLength={4} onComplete={unlock} />
7
+ *
8
+ * <NumberPad maxLength={4} value={pin} onChangeText={setPin}>
9
+ * <NumberPad.Action onPress={faceId} accessibilityLabel="Unlock with Face ID">
10
+ * <NumberPad.Icon as={FaceIdIcon} color={theme.colors.accent} />
11
+ * </NumberPad.Action>
12
+ * </NumberPad>
13
+ * ```
14
+ *
15
+ * **The grid is data, not markup.** `1` through `9`, the `0` and the backspace are not a
16
+ * decision a caller makes, so the root renders them — eleven hand-written cells is a layout
17
+ * that disagrees with itself the moment one of them is edited. What *is* composed is the one
18
+ * free corner of the bottom row, and that is what `children` is.
19
+ *
20
+ * **The pad owns the value as one string**, controlled or not, and clamps it to `maxLength`:
21
+ * a press past the limit changes nothing at all, so `onChangeText` does not fire and a full
22
+ * PIN cannot be completed twice by leaning on a key.
23
+ *
24
+ * **It draws no display.** What the value looks like is the screen's — an `InputOTP`'s boxes,
25
+ * a row of dots, an amount in a `Typography`. A pad that also rendered the value would be
26
+ * two components that have to agree on a string.
27
+ *
28
+ * `useNumberPad()` publishes `insert`, `backspace` and `clear`, so a control beside the pad
29
+ * drives it with no state of its own.
30
+ */
31
+ export declare const NumberPadRoot: import("react").ForwardRefExoticComponent<{
32
+ variant?: import("./number-pad.type").NumberPadVariant;
33
+ size?: import("./number-pad.type").NumberPadSize;
34
+ radius?: import("../..").RadiusKey;
35
+ color?: string;
36
+ value?: string;
37
+ defaultValue?: string;
38
+ onChangeText?: (value: string) => void;
39
+ onComplete?: (value: string) => void;
40
+ maxLength?: number;
41
+ isDisabled?: boolean;
42
+ children?: import("react").ReactNode;
43
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
44
+ } & Omit<import("react-native").ViewProps, "style" | "children"> & Omit<import("../..").ViewStyleProps, keyof {
45
+ variant?: import("./number-pad.type").NumberPadVariant;
46
+ size?: import("./number-pad.type").NumberPadSize;
47
+ radius?: import("../..").RadiusKey;
48
+ color?: string;
49
+ value?: string;
50
+ defaultValue?: string;
51
+ onChangeText?: (value: string) => void;
52
+ onComplete?: (value: string) => void;
53
+ maxLength?: number;
54
+ isDisabled?: boolean;
55
+ children?: import("react").ReactNode;
56
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
57
+ }> & import("react").RefAttributes<View>>;
@@ -0,0 +1,11 @@
1
+ import type { SlotStyles } from '../../system/recipe';
2
+ import type { RadiusKey, XAUITheme } from '../../theme/theme.type';
3
+ import type { NumberPadSlot, NumberPadVariant } from './number-pad.type';
4
+ export declare const numberPadRecipe: import("../..").Recipe<"key" | "label" | "row" | "root" | "ghost" | "icon" | "ghostLabel" | "ghostIcon", NumberPadVariant, {
5
+ readonly size: {
6
+ readonly sm: (theme: XAUITheme) => SlotStyles<NumberPadSlot>;
7
+ readonly md: (theme: XAUITheme) => SlotStyles<NumberPadSlot>;
8
+ readonly lg: (theme: XAUITheme) => SlotStyles<NumberPadSlot>;
9
+ };
10
+ readonly radius: Record<RadiusKey, import("../..").StyleFn<"key" | "ghost">>;
11
+ }>;
@@ -0,0 +1,11 @@
1
+ import type { SlotStyles } from '../../system/recipe';
2
+ import type { RadiusKey, XAUITheme } from '../../theme/theme.type';
3
+ import type { NumberPadSlot, NumberPadVariant } from './number-pad.type';
4
+ export declare const numberPadRecipe: import("../..").Recipe<"key" | "label" | "row" | "root" | "ghost" | "icon" | "ghostLabel" | "ghostIcon", NumberPadVariant, {
5
+ readonly size: {
6
+ readonly sm: (theme: XAUITheme) => SlotStyles<NumberPadSlot>;
7
+ readonly md: (theme: XAUITheme) => SlotStyles<NumberPadSlot>;
8
+ readonly lg: (theme: XAUITheme) => SlotStyles<NumberPadSlot>;
9
+ };
10
+ readonly radius: Record<RadiusKey, import("../..").StyleFn<"key" | "ghost">>;
11
+ }>;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * The empty cell that holds the bottom row's free corner open when nothing is composed
3
+ * into it.
4
+ *
5
+ * `flex: 1` and nothing else — no token, which is why it is here rather than in the
6
+ * recipe. Without it the `0` would slide to the start of its row and stop being the middle
7
+ * column, which is the one thing a keypad's layout has to keep.
8
+ */
9
+ export declare const numberPadSheet: {
10
+ spacer: {
11
+ flex: number;
12
+ };
13
+ };
@@ -0,0 +1,13 @@
1
+ /**
2
+ * The empty cell that holds the bottom row's free corner open when nothing is composed
3
+ * into it.
4
+ *
5
+ * `flex: 1` and nothing else — no token, which is why it is here rather than in the
6
+ * recipe. Without it the `0` would slide to the start of its row and stop being the middle
7
+ * column, which is the one thing a keypad's layout has to keep.
8
+ */
9
+ export declare const numberPadSheet: {
10
+ spacer: {
11
+ flex: number;
12
+ };
13
+ };