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

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-3A5RK2R7.js +40 -0
  2. package/dist/chunk-6JAGPPZU.cjs +788 -0
  3. package/dist/chunk-7NQL5DXY.js +302 -0
  4. package/dist/chunk-FTPPUTWL.cjs +40 -0
  5. package/dist/chunk-GGP2ERSV.js +487 -0
  6. package/dist/chunk-KPKEZWZM.js +517 -0
  7. package/dist/chunk-LKRQUQZQ.cjs +487 -0
  8. package/dist/{chunk-LIEXFWTN.js → chunk-P5M5URAB.js} +29 -126
  9. package/dist/chunk-UR37LVPU.cjs +382 -0
  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 +31 -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 +31 -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 +71 -0
  56. package/dist/components/pager/pager.d.ts +71 -0
  57. package/dist/components/pager/pager.recipe.d.cts +15 -0
  58. package/dist/components/pager/pager.recipe.d.ts +15 -0
  59. package/dist/components/pager/pager.type.d.cts +108 -0
  60. package/dist/components/pager/pager.type.d.ts +108 -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 +90 -29
  84. package/dist/index.js +146 -85
  85. package/package.json +31 -1
  86. package/dist/chunk-K5UO3HBW.cjs +0 -1007
@@ -0,0 +1,34 @@
1
+ /**
2
+ * The three digit rows, top to bottom, then `0` on the bottom one.
3
+ *
4
+ * Data rather than markup, and that is the whole reason this component renders its own
5
+ * grid instead of asking to be composed: `1` through `9` are not a decision a caller
6
+ * makes, and eleven hand-written cells is a layout that silently disagrees with itself
7
+ * the moment one of them is edited.
8
+ */
9
+ export declare const NUMBER_PAD_ROWS: readonly [readonly ["1", "2", "3"], readonly ["4", "5", "6"], readonly ["7", "8", "9"]];
10
+ /** The key on the bottom row, between the free cell and the backspace. */
11
+ export declare const NUMBER_PAD_ZERO = "0";
12
+ export type AppendOptions = {
13
+ value: string;
14
+ /** What the pressed key inserts. A digit, but a decimal separator is a key too. */
15
+ insert: string;
16
+ /** Unset means unbounded — a pad in front of an amount rather than a PIN. */
17
+ maxLength?: number;
18
+ };
19
+ /**
20
+ * The value after a key press.
21
+ *
22
+ * It **clamps rather than truncates**: a press past `maxLength` returns the value
23
+ * unchanged, so the caller's `onChangeText` does not fire and a full PIN cannot be
24
+ * completed twice by leaning on a key.
25
+ *
26
+ * The insert is measured whole rather than as one character, because a key may carry more
27
+ * than one — a `00` key on a currency pad is a key, and a pad that let it land halfway
28
+ * over the limit would produce a value one character longer than it promised.
29
+ */
30
+ export declare function appendKey({ value, insert, maxLength }: AppendOptions): string;
31
+ /** The value after a backspace. Empty stays empty rather than becoming `undefined`. */
32
+ export declare function removeLast(value: string): string;
33
+ /** Whether the value has reached the length the pad was given. */
34
+ export declare function isComplete(value: string, maxLength?: number): boolean;
@@ -0,0 +1,31 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+ var _chunkUR37LVPUcjs = require('../../chunk-UR37LVPU.cjs');
11
+ require('../../chunk-FTPPUTWL.cjs');
12
+ require('../../chunk-WFEMJCXO.cjs');
13
+ require('../../chunk-7EIHHOHP.cjs');
14
+ require('../../chunk-FHNIGHN5.cjs');
15
+ require('../../chunk-SL3V7R2Y.cjs');
16
+ require('../../chunk-TVJXC4HY.cjs');
17
+ require('../../chunk-CDRGTUYF.cjs');
18
+ require('../../chunk-H4E4HDEP.cjs');
19
+ require('../../chunk-EJQCQPET.cjs');
20
+ require('../../chunk-IIAQISBG.cjs');
21
+ require('../../chunk-TK44VBIE.cjs');
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+
31
+ exports.Pager = _chunkUR37LVPUcjs.Pager; exports.PagerContent = _chunkUR37LVPUcjs.PagerContent; exports.PagerDot = _chunkUR37LVPUcjs.PagerDot; exports.PagerIndicator = _chunkUR37LVPUcjs.PagerIndicator; exports.PagerPage = _chunkUR37LVPUcjs.PagerPage; exports.PagerRoot = _chunkUR37LVPUcjs.PagerRoot; exports.pagerRecipe = _chunkUR37LVPUcjs.pagerRecipe; exports.usePager = _chunkUR37LVPUcjs.usePager;
@@ -0,0 +1,60 @@
1
+ export declare const Pager: import("react").ForwardRefExoticComponent<{
2
+ variant?: import("./pager.type").PagerVariant;
3
+ size?: import("./pager.type").PagerSize;
4
+ color?: string;
5
+ orientation?: import("./pager.type").PagerOrientation;
6
+ index?: number;
7
+ defaultIndex?: number;
8
+ onIndexChange?: (index: number) => void;
9
+ isDisabled?: boolean;
10
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
11
+ children?: import("react").ReactNode;
12
+ } & Omit<import("react-native").ViewProps, keyof {
13
+ variant?: import("./pager.type").PagerVariant;
14
+ size?: import("./pager.type").PagerSize;
15
+ color?: string;
16
+ orientation?: import("./pager.type").PagerOrientation;
17
+ index?: number;
18
+ defaultIndex?: number;
19
+ onIndexChange?: (index: number) => void;
20
+ isDisabled?: boolean;
21
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
22
+ children?: import("react").ReactNode;
23
+ }> & Omit<import("../..").ViewStyleProps, keyof {
24
+ variant?: import("./pager.type").PagerVariant;
25
+ size?: import("./pager.type").PagerSize;
26
+ color?: string;
27
+ orientation?: import("./pager.type").PagerOrientation;
28
+ index?: number;
29
+ defaultIndex?: number;
30
+ onIndexChange?: (index: number) => void;
31
+ isDisabled?: boolean;
32
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
33
+ children?: import("react").ReactNode;
34
+ }> & import("react").RefAttributes<import("react-native").View>> & {
35
+ Content: import("react").ForwardRefExoticComponent<Omit<import("react-native").ScrollViewProps, "style" | "children"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ScrollViewProps> & {
36
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
37
+ children?: import("react").ReactNode;
38
+ } & import("react").RefAttributes<import("react-native").ScrollView>>;
39
+ Page: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
40
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
41
+ children?: import("react").ReactNode;
42
+ } & import("react").RefAttributes<import("react-native").View>>;
43
+ Indicator: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
44
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
45
+ children?: import("react").ReactNode;
46
+ } & import("react").RefAttributes<import("react-native").View>>;
47
+ Dot: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
48
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
49
+ children?: import("react").ReactNode;
50
+ } & {
51
+ index: number;
52
+ } & import("react").RefAttributes<import("react-native").View>>;
53
+ };
54
+ export { PagerRoot } from './pager';
55
+ export { PagerContent } from './pager-content';
56
+ export { PagerDot, PagerIndicator } from './pager-indicator';
57
+ export { PagerPage } from './pager-page';
58
+ export { usePager } from './pager.context';
59
+ export { pagerRecipe } from './pager.recipe';
60
+ export type { PagerContentProps, PagerContextValue, PagerDotInk, PagerDotProps, PagerOrientation, PagerProps, PagerSize, PagerSlot, PagerTrackSize, PagerVariant, PagerViewSlotProps, } from './pager.type';
@@ -0,0 +1,60 @@
1
+ export declare const Pager: import("react").ForwardRefExoticComponent<{
2
+ variant?: import("./pager.type").PagerVariant;
3
+ size?: import("./pager.type").PagerSize;
4
+ color?: string;
5
+ orientation?: import("./pager.type").PagerOrientation;
6
+ index?: number;
7
+ defaultIndex?: number;
8
+ onIndexChange?: (index: number) => void;
9
+ isDisabled?: boolean;
10
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
11
+ children?: import("react").ReactNode;
12
+ } & Omit<import("react-native").ViewProps, keyof {
13
+ variant?: import("./pager.type").PagerVariant;
14
+ size?: import("./pager.type").PagerSize;
15
+ color?: string;
16
+ orientation?: import("./pager.type").PagerOrientation;
17
+ index?: number;
18
+ defaultIndex?: number;
19
+ onIndexChange?: (index: number) => void;
20
+ isDisabled?: boolean;
21
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
22
+ children?: import("react").ReactNode;
23
+ }> & Omit<import("../..").ViewStyleProps, keyof {
24
+ variant?: import("./pager.type").PagerVariant;
25
+ size?: import("./pager.type").PagerSize;
26
+ color?: string;
27
+ orientation?: import("./pager.type").PagerOrientation;
28
+ index?: number;
29
+ defaultIndex?: number;
30
+ onIndexChange?: (index: number) => void;
31
+ isDisabled?: boolean;
32
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
33
+ children?: import("react").ReactNode;
34
+ }> & import("react").RefAttributes<import("react-native").View>> & {
35
+ Content: import("react").ForwardRefExoticComponent<Omit<import("react-native").ScrollViewProps, "style" | "children"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ScrollViewProps> & {
36
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
37
+ children?: import("react").ReactNode;
38
+ } & import("react").RefAttributes<import("react-native").ScrollView>>;
39
+ Page: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
40
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
41
+ children?: import("react").ReactNode;
42
+ } & import("react").RefAttributes<import("react-native").View>>;
43
+ Indicator: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
44
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
45
+ children?: import("react").ReactNode;
46
+ } & import("react").RefAttributes<import("react-native").View>>;
47
+ Dot: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
48
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
49
+ children?: import("react").ReactNode;
50
+ } & {
51
+ index: number;
52
+ } & import("react").RefAttributes<import("react-native").View>>;
53
+ };
54
+ export { PagerRoot } from './pager';
55
+ export { PagerContent } from './pager-content';
56
+ export { PagerDot, PagerIndicator } from './pager-indicator';
57
+ export { PagerPage } from './pager-page';
58
+ export { usePager } from './pager.context';
59
+ export { pagerRecipe } from './pager.recipe';
60
+ export type { PagerContentProps, PagerContextValue, PagerDotInk, PagerDotProps, PagerOrientation, PagerProps, PagerSize, PagerSlot, PagerTrackSize, PagerVariant, PagerViewSlotProps, } from './pager.type';
@@ -0,0 +1,31 @@
1
+ import {
2
+ Pager,
3
+ PagerContent,
4
+ PagerDot,
5
+ PagerIndicator,
6
+ PagerPage,
7
+ PagerRoot,
8
+ pagerRecipe,
9
+ usePager
10
+ } from "../../chunk-KPKEZWZM.js";
11
+ import "../../chunk-3A5RK2R7.js";
12
+ import "../../chunk-NCTOTTVW.js";
13
+ import "../../chunk-F6W3JQ7K.js";
14
+ import "../../chunk-WFZDAXDI.js";
15
+ import "../../chunk-DKVXTMIJ.js";
16
+ import "../../chunk-3Q42X6EQ.js";
17
+ import "../../chunk-TTZOIXKE.js";
18
+ import "../../chunk-36PRYGAM.js";
19
+ import "../../chunk-EGLLDKN6.js";
20
+ import "../../chunk-Z6JBWRPL.js";
21
+ import "../../chunk-M63GFNKV.js";
22
+ export {
23
+ Pager,
24
+ PagerContent,
25
+ PagerDot,
26
+ PagerIndicator,
27
+ PagerPage,
28
+ PagerRoot,
29
+ pagerRecipe,
30
+ usePager
31
+ };
@@ -0,0 +1,24 @@
1
+ import type { ScrollView } from 'react-native';
2
+ /**
3
+ * The track: the pages, and the swiping of them.
4
+ *
5
+ * **It pages.** `pagingEnabled` is React Native's own whole-viewport paging — the thing this
6
+ * component is, and the thing the `Carousel` cannot use because its slides are a division of
7
+ * the track rather than the whole of it.
8
+ *
9
+ * **It measures itself**, and that is why the measurement is here rather than on the root:
10
+ * the indicator sits in the flow under the pages, so the root is taller than the box a page
11
+ * has to fill by exactly the height of the dots.
12
+ *
13
+ * **It counts its own children**, which is how the dots know how many pages there are
14
+ * without the caller passing a number that can go stale. The count is published upwards
15
+ * because the indicator is the track's *sibling*, not its child.
16
+ *
17
+ * **It reports its offset on the UI thread**, and the settled index from the same handler.
18
+ * Nothing re-renders while a finger is down except at the moment the nearest page changes,
19
+ * which is once per page crossed.
20
+ */
21
+ export declare const PagerContent: import("react").ForwardRefExoticComponent<Omit<import("react-native").ScrollViewProps, "style" | "children"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ScrollViewProps> & {
22
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
23
+ children?: import("react").ReactNode;
24
+ } & import("react").RefAttributes<ScrollView>>;
@@ -0,0 +1,24 @@
1
+ import type { ScrollView } from 'react-native';
2
+ /**
3
+ * The track: the pages, and the swiping of them.
4
+ *
5
+ * **It pages.** `pagingEnabled` is React Native's own whole-viewport paging — the thing this
6
+ * component is, and the thing the `Carousel` cannot use because its slides are a division of
7
+ * the track rather than the whole of it.
8
+ *
9
+ * **It measures itself**, and that is why the measurement is here rather than on the root:
10
+ * the indicator sits in the flow under the pages, so the root is taller than the box a page
11
+ * has to fill by exactly the height of the dots.
12
+ *
13
+ * **It counts its own children**, which is how the dots know how many pages there are
14
+ * without the caller passing a number that can go stale. The count is published upwards
15
+ * because the indicator is the track's *sibling*, not its child.
16
+ *
17
+ * **It reports its offset on the UI thread**, and the settled index from the same handler.
18
+ * Nothing re-renders while a finger is down except at the moment the nearest page changes,
19
+ * which is once per page crossed.
20
+ */
21
+ export declare const PagerContent: import("react").ForwardRefExoticComponent<Omit<import("react-native").ScrollViewProps, "style" | "children"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ScrollViewProps> & {
22
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
23
+ children?: import("react").ReactNode;
24
+ } & import("react").RefAttributes<ScrollView>>;
@@ -0,0 +1,47 @@
1
+ import { View } from 'react-native';
2
+ /**
3
+ * Which page the reader is on.
4
+ *
5
+ * With no children it draws one dot per page, which is what it is for. Children are the long
6
+ * form — a subset, a label beside them, a shape of your own:
7
+ *
8
+ * ```tsx
9
+ * <Pager.Indicator>
10
+ * {steps.map((step, index) => (
11
+ * <Pager.Dot key={step.id} index={index} />
12
+ * ))}
13
+ * </Pager.Indicator>
14
+ * ```
15
+ *
16
+ * It sits **in the flow**, under the pages. A caller who wants it over them says so —
17
+ * `position="absolute" bottom={16} start={0} end={0}` — which is what the style props are
18
+ * for; absolute by default would have made the common case the one that needs undoing.
19
+ */
20
+ export declare const PagerIndicator: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
21
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
22
+ children?: import("react").ReactNode;
23
+ } & import("react").RefAttributes<View>>;
24
+ /**
25
+ * One dot.
26
+ *
27
+ * **It changes colour, it does not stretch.** That is the difference from
28
+ * `Carousel.Dot`, and it is deliberate rather than a simplification: a page control is a
29
+ * fixed row of marks saying how many screens there are and which one you are on, and a mark
30
+ * that grows makes the row's arithmetic move under a reader who is counting it. The
31
+ * carousel's pill is a *progress* indicator over a series; this is a position among screens.
32
+ *
33
+ * **It follows the drag rather than the settle.** The colour is interpolated from the live
34
+ * scroll offset on the UI thread, so it travels while the finger is still down — which is
35
+ * what makes a reader believe the dots are attached to the thing they are moving. Reading
36
+ * the settled index instead would make it jump once per gesture, after the fact.
37
+ *
38
+ * **A screen reader hears "3 of 5" rather than a label**, through `accessibilityValue`. A dot
39
+ * has no text of its own, and inventing one would be picking a language on behalf of every
40
+ * app that installs this.
41
+ */
42
+ export declare const PagerDot: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
43
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
44
+ children?: import("react").ReactNode;
45
+ } & {
46
+ index: number;
47
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,47 @@
1
+ import { View } from 'react-native';
2
+ /**
3
+ * Which page the reader is on.
4
+ *
5
+ * With no children it draws one dot per page, which is what it is for. Children are the long
6
+ * form — a subset, a label beside them, a shape of your own:
7
+ *
8
+ * ```tsx
9
+ * <Pager.Indicator>
10
+ * {steps.map((step, index) => (
11
+ * <Pager.Dot key={step.id} index={index} />
12
+ * ))}
13
+ * </Pager.Indicator>
14
+ * ```
15
+ *
16
+ * It sits **in the flow**, under the pages. A caller who wants it over them says so —
17
+ * `position="absolute" bottom={16} start={0} end={0}` — which is what the style props are
18
+ * for; absolute by default would have made the common case the one that needs undoing.
19
+ */
20
+ export declare const PagerIndicator: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
21
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
22
+ children?: import("react").ReactNode;
23
+ } & import("react").RefAttributes<View>>;
24
+ /**
25
+ * One dot.
26
+ *
27
+ * **It changes colour, it does not stretch.** That is the difference from
28
+ * `Carousel.Dot`, and it is deliberate rather than a simplification: a page control is a
29
+ * fixed row of marks saying how many screens there are and which one you are on, and a mark
30
+ * that grows makes the row's arithmetic move under a reader who is counting it. The
31
+ * carousel's pill is a *progress* indicator over a series; this is a position among screens.
32
+ *
33
+ * **It follows the drag rather than the settle.** The colour is interpolated from the live
34
+ * scroll offset on the UI thread, so it travels while the finger is still down — which is
35
+ * what makes a reader believe the dots are attached to the thing they are moving. Reading
36
+ * the settled index instead would make it jump once per gesture, after the fact.
37
+ *
38
+ * **A screen reader hears "3 of 5" rather than a label**, through `accessibilityValue`. A dot
39
+ * has no text of its own, and inventing one would be picking a language on behalf of every
40
+ * app that installs this.
41
+ */
42
+ export declare const PagerDot: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
43
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
44
+ children?: import("react").ReactNode;
45
+ } & {
46
+ index: number;
47
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,16 @@
1
+ import { View } from 'react-native';
2
+ /**
3
+ * One page.
4
+ *
5
+ * Its size is the **track's**, on both axes, measured rather than given — which is the whole
6
+ * difference between this and a `Carousel.Item`, whose width is a *division* of the track by
7
+ * `itemsPerView` and the gaps. A page given a size in points is a page that is wrong on the
8
+ * next screen.
9
+ *
10
+ * It clips, so content drawn to its edges stops at them instead of bleeding onto the page
11
+ * beside it while the track is mid-travel.
12
+ */
13
+ export declare const PagerPage: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
14
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
15
+ children?: import("react").ReactNode;
16
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,16 @@
1
+ import { View } from 'react-native';
2
+ /**
3
+ * One page.
4
+ *
5
+ * Its size is the **track's**, on both axes, measured rather than given — which is the whole
6
+ * difference between this and a `Carousel.Item`, whose width is a *division* of the track by
7
+ * `itemsPerView` and the gaps. A page given a size in points is a page that is wrong on the
8
+ * next screen.
9
+ *
10
+ * It clips, so content drawn to its edges stops at them instead of bleeding onto the page
11
+ * beside it while the track is mid-travel.
12
+ */
13
+ export declare const PagerPage: import("react").ForwardRefExoticComponent<Omit<import("react-native").ViewProps, "style"> & Omit<import("../..").ViewStyleProps, keyof import("react-native").ViewProps> & {
14
+ style?: import("react-native").StyleProp<import("react-native").ViewStyle>;
15
+ children?: import("react").ReactNode;
16
+ } & import("react").RefAttributes<View>>;
@@ -0,0 +1,7 @@
1
+ import type { PagerContextValue } from './pager.type';
2
+ /**
3
+ * R10 — `usePager` is exported so a control beside the pager can drive it (`goTo`) or read
4
+ * where it is, and so a caller can write their own indicator against the same live `offset`
5
+ * the built-in dots read. Outside a `<Pager>` it throws by name.
6
+ */
7
+ export declare const PagerProvider: import("react").Provider<PagerContextValue | null>, usePager: () => PagerContextValue;
@@ -0,0 +1,7 @@
1
+ import type { PagerContextValue } from './pager.type';
2
+ /**
3
+ * R10 — `usePager` is exported so a control beside the pager can drive it (`goTo`) or read
4
+ * where it is, and so a caller can write their own indicator against the same live `offset`
5
+ * the built-in dots read. Outside a `<Pager>` it throws by name.
6
+ */
7
+ export declare const PagerProvider: import("react").Provider<PagerContextValue | null>, usePager: () => PagerContextValue;
@@ -0,0 +1,71 @@
1
+ import { View } from 'react-native';
2
+ import type { ViewStyle } from 'react-native';
3
+ /**
4
+ * Whole pages, one at a time — the onboarding flow, the full-screen feed, the gallery a
5
+ * reader swipes through.
6
+ *
7
+ * ```tsx
8
+ * <Pager>
9
+ * <Pager.Content>
10
+ * <Pager.Page><Welcome /></Pager.Page>
11
+ * <Pager.Page><Permissions /></Pager.Page>
12
+ * <Pager.Page><Done /></Pager.Page>
13
+ * </Pager.Content>
14
+ *
15
+ * <Pager.Indicator />
16
+ * </Pager>
17
+ * ```
18
+ *
19
+ * **A page is the track, measured.** Not a prop, and not a fraction of one: a pager's page
20
+ * is the viewport it sits in, on both axes, so it is measured once and handed down. That is
21
+ * also what separates this from the `Carousel`, whose slides are a *division* of the track
22
+ * and which therefore has `itemsPerView`, `peek` and a gap to divide it by.
23
+ *
24
+ * **It has no height of its own** — give it one, `flex={1}` to fill a screen or
25
+ * `height={320}` inside a scroll view. A `flex: 1` in the recipe would have overridden an
26
+ * explicit `height` through RN's zero flex-basis, which is the trap the recipe explains.
27
+ *
28
+ * **It pages rather than snapping.** `pagingEnabled` is React Native's own whole-viewport
29
+ * paging, which is exactly this component's job and exactly what the `Carousel` cannot use.
30
+ *
31
+ * **The pages are yours and the dots are the library's.** `variant`, `color` and `size`
32
+ * reach the dots and nothing else — a pager of screens and a pager of photographs want
33
+ * opposite things inside a page, and the caller is the one who knows which this is.
34
+ *
35
+ * `usePager()` publishes `goTo`, the settled `index` and the live `offset`, so a "Skip"
36
+ * button beside the pager costs no state and an indicator of your own follows the drag.
37
+ */
38
+ export declare const PagerRoot: import("react").ForwardRefExoticComponent<{
39
+ variant?: import("./pager.type").PagerVariant;
40
+ size?: import("./pager.type").PagerSize;
41
+ color?: string;
42
+ orientation?: import("./pager.type").PagerOrientation;
43
+ index?: number;
44
+ defaultIndex?: number;
45
+ onIndexChange?: (index: number) => void;
46
+ isDisabled?: boolean;
47
+ style?: import("react-native").StyleProp<ViewStyle>;
48
+ children?: import("react").ReactNode;
49
+ } & Omit<import("react-native").ViewProps, keyof {
50
+ variant?: import("./pager.type").PagerVariant;
51
+ size?: import("./pager.type").PagerSize;
52
+ color?: string;
53
+ orientation?: import("./pager.type").PagerOrientation;
54
+ index?: number;
55
+ defaultIndex?: number;
56
+ onIndexChange?: (index: number) => void;
57
+ isDisabled?: boolean;
58
+ style?: import("react-native").StyleProp<ViewStyle>;
59
+ children?: import("react").ReactNode;
60
+ }> & Omit<import("../..").ViewStyleProps, keyof {
61
+ variant?: import("./pager.type").PagerVariant;
62
+ size?: import("./pager.type").PagerSize;
63
+ color?: string;
64
+ orientation?: import("./pager.type").PagerOrientation;
65
+ index?: number;
66
+ defaultIndex?: number;
67
+ onIndexChange?: (index: number) => void;
68
+ isDisabled?: boolean;
69
+ style?: import("react-native").StyleProp<ViewStyle>;
70
+ children?: import("react").ReactNode;
71
+ }> & import("react").RefAttributes<View>>;
@@ -0,0 +1,71 @@
1
+ import { View } from 'react-native';
2
+ import type { ViewStyle } from 'react-native';
3
+ /**
4
+ * Whole pages, one at a time — the onboarding flow, the full-screen feed, the gallery a
5
+ * reader swipes through.
6
+ *
7
+ * ```tsx
8
+ * <Pager>
9
+ * <Pager.Content>
10
+ * <Pager.Page><Welcome /></Pager.Page>
11
+ * <Pager.Page><Permissions /></Pager.Page>
12
+ * <Pager.Page><Done /></Pager.Page>
13
+ * </Pager.Content>
14
+ *
15
+ * <Pager.Indicator />
16
+ * </Pager>
17
+ * ```
18
+ *
19
+ * **A page is the track, measured.** Not a prop, and not a fraction of one: a pager's page
20
+ * is the viewport it sits in, on both axes, so it is measured once and handed down. That is
21
+ * also what separates this from the `Carousel`, whose slides are a *division* of the track
22
+ * and which therefore has `itemsPerView`, `peek` and a gap to divide it by.
23
+ *
24
+ * **It has no height of its own** — give it one, `flex={1}` to fill a screen or
25
+ * `height={320}` inside a scroll view. A `flex: 1` in the recipe would have overridden an
26
+ * explicit `height` through RN's zero flex-basis, which is the trap the recipe explains.
27
+ *
28
+ * **It pages rather than snapping.** `pagingEnabled` is React Native's own whole-viewport
29
+ * paging, which is exactly this component's job and exactly what the `Carousel` cannot use.
30
+ *
31
+ * **The pages are yours and the dots are the library's.** `variant`, `color` and `size`
32
+ * reach the dots and nothing else — a pager of screens and a pager of photographs want
33
+ * opposite things inside a page, and the caller is the one who knows which this is.
34
+ *
35
+ * `usePager()` publishes `goTo`, the settled `index` and the live `offset`, so a "Skip"
36
+ * button beside the pager costs no state and an indicator of your own follows the drag.
37
+ */
38
+ export declare const PagerRoot: import("react").ForwardRefExoticComponent<{
39
+ variant?: import("./pager.type").PagerVariant;
40
+ size?: import("./pager.type").PagerSize;
41
+ color?: string;
42
+ orientation?: import("./pager.type").PagerOrientation;
43
+ index?: number;
44
+ defaultIndex?: number;
45
+ onIndexChange?: (index: number) => void;
46
+ isDisabled?: boolean;
47
+ style?: import("react-native").StyleProp<ViewStyle>;
48
+ children?: import("react").ReactNode;
49
+ } & Omit<import("react-native").ViewProps, keyof {
50
+ variant?: import("./pager.type").PagerVariant;
51
+ size?: import("./pager.type").PagerSize;
52
+ color?: string;
53
+ orientation?: import("./pager.type").PagerOrientation;
54
+ index?: number;
55
+ defaultIndex?: number;
56
+ onIndexChange?: (index: number) => void;
57
+ isDisabled?: boolean;
58
+ style?: import("react-native").StyleProp<ViewStyle>;
59
+ children?: import("react").ReactNode;
60
+ }> & Omit<import("../..").ViewStyleProps, keyof {
61
+ variant?: import("./pager.type").PagerVariant;
62
+ size?: import("./pager.type").PagerSize;
63
+ color?: string;
64
+ orientation?: import("./pager.type").PagerOrientation;
65
+ index?: number;
66
+ defaultIndex?: number;
67
+ onIndexChange?: (index: number) => void;
68
+ isDisabled?: boolean;
69
+ style?: import("react-native").StyleProp<ViewStyle>;
70
+ children?: import("react").ReactNode;
71
+ }> & import("react").RefAttributes<View>>;
@@ -0,0 +1,15 @@
1
+ import type { SlotStyles } from '../../system/recipe';
2
+ import type { XAUITheme } from '../../theme/theme.type';
3
+ import type { PagerSlot, PagerVariant } from './pager.type';
4
+ export declare const pagerRecipe: import("../..").Recipe<"content" | "root" | "dot" | "indicator" | "page" | "dotActive", PagerVariant, {
5
+ readonly size: {
6
+ readonly xs: (theme: XAUITheme) => SlotStyles<PagerSlot>;
7
+ readonly sm: (theme: XAUITheme) => SlotStyles<PagerSlot>;
8
+ readonly md: (theme: XAUITheme) => SlotStyles<PagerSlot>;
9
+ readonly lg: (theme: XAUITheme) => SlotStyles<PagerSlot>;
10
+ };
11
+ readonly orientation: {
12
+ readonly horizontal: () => SlotStyles<PagerSlot>;
13
+ readonly vertical: () => SlotStyles<PagerSlot>;
14
+ };
15
+ }>;
@@ -0,0 +1,15 @@
1
+ import type { SlotStyles } from '../../system/recipe';
2
+ import type { XAUITheme } from '../../theme/theme.type';
3
+ import type { PagerSlot, PagerVariant } from './pager.type';
4
+ export declare const pagerRecipe: import("../..").Recipe<"content" | "root" | "dot" | "indicator" | "page" | "dotActive", PagerVariant, {
5
+ readonly size: {
6
+ readonly xs: (theme: XAUITheme) => SlotStyles<PagerSlot>;
7
+ readonly sm: (theme: XAUITheme) => SlotStyles<PagerSlot>;
8
+ readonly md: (theme: XAUITheme) => SlotStyles<PagerSlot>;
9
+ readonly lg: (theme: XAUITheme) => SlotStyles<PagerSlot>;
10
+ };
11
+ readonly orientation: {
12
+ readonly horizontal: () => SlotStyles<PagerSlot>;
13
+ readonly vertical: () => SlotStyles<PagerSlot>;
14
+ };
15
+ }>;