@yahoo/uds-mobile 2.18.0 → 2.20.0

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 (201) hide show
  1. package/dist/components/Modal/Modal.cjs +396 -0
  2. package/dist/components/Modal/Modal.d.cts +9 -0
  3. package/dist/components/Modal/Modal.d.cts.map +1 -0
  4. package/dist/components/Modal/Modal.d.ts +9 -0
  5. package/dist/components/Modal/Modal.d.ts.map +1 -0
  6. package/dist/components/Modal/Modal.js +395 -0
  7. package/dist/components/Modal/Modal.js.map +1 -0
  8. package/dist/components/Modal/ModalActions.cjs +47 -0
  9. package/dist/components/Modal/ModalActions.d.cts +9 -0
  10. package/dist/components/Modal/ModalActions.d.cts.map +1 -0
  11. package/dist/components/Modal/ModalActions.d.ts +9 -0
  12. package/dist/components/Modal/ModalActions.d.ts.map +1 -0
  13. package/dist/components/Modal/ModalActions.js +47 -0
  14. package/dist/components/Modal/ModalActions.js.map +1 -0
  15. package/dist/components/Modal/ModalContent.cjs +41 -0
  16. package/dist/components/Modal/ModalContent.d.cts +9 -0
  17. package/dist/components/Modal/ModalContent.d.cts.map +1 -0
  18. package/dist/components/Modal/ModalContent.d.ts +9 -0
  19. package/dist/components/Modal/ModalContent.d.ts.map +1 -0
  20. package/dist/components/Modal/ModalContent.js +41 -0
  21. package/dist/components/Modal/ModalContent.js.map +1 -0
  22. package/dist/components/Modal/ModalContext.cjs +14 -0
  23. package/dist/components/Modal/ModalContext.d.cts +10 -0
  24. package/dist/components/Modal/ModalContext.d.cts.map +1 -0
  25. package/dist/components/Modal/ModalContext.d.ts +10 -0
  26. package/dist/components/Modal/ModalContext.d.ts.map +1 -0
  27. package/dist/components/Modal/ModalContext.js +13 -0
  28. package/dist/components/Modal/ModalContext.js.map +1 -0
  29. package/dist/components/Modal/ModalDescription.cjs +21 -0
  30. package/dist/components/Modal/ModalDescription.d.cts +9 -0
  31. package/dist/components/Modal/ModalDescription.d.cts.map +1 -0
  32. package/dist/components/Modal/ModalDescription.d.ts +9 -0
  33. package/dist/components/Modal/ModalDescription.d.ts.map +1 -0
  34. package/dist/components/Modal/ModalDescription.js +21 -0
  35. package/dist/components/Modal/ModalDescription.js.map +1 -0
  36. package/dist/components/Modal/ModalTitle.cjs +22 -0
  37. package/dist/components/Modal/ModalTitle.d.cts +9 -0
  38. package/dist/components/Modal/ModalTitle.d.cts.map +1 -0
  39. package/dist/components/Modal/ModalTitle.d.ts +9 -0
  40. package/dist/components/Modal/ModalTitle.d.ts.map +1 -0
  41. package/dist/components/Modal/ModalTitle.js +22 -0
  42. package/dist/components/Modal/ModalTitle.js.map +1 -0
  43. package/dist/components/Modal/index.cjs +12 -0
  44. package/dist/components/Modal/index.d.cts +8 -0
  45. package/dist/components/Modal/index.d.ts +8 -0
  46. package/dist/components/Modal/index.js +7 -0
  47. package/dist/components/Modal/types.cjs +1 -0
  48. package/dist/components/Modal/types.d.cts +111 -0
  49. package/dist/components/Modal/types.d.cts.map +1 -0
  50. package/dist/components/Modal/types.d.ts +111 -0
  51. package/dist/components/Modal/types.d.ts.map +1 -0
  52. package/dist/components/Modal/types.js +1 -0
  53. package/dist/components/Modal/utils.cjs +59 -0
  54. package/dist/components/Modal/utils.d.cts +28 -0
  55. package/dist/components/Modal/utils.d.cts.map +1 -0
  56. package/dist/components/Modal/utils.d.ts +28 -0
  57. package/dist/components/Modal/utils.d.ts.map +1 -0
  58. package/dist/components/Modal/utils.js +56 -0
  59. package/dist/components/Modal/utils.js.map +1 -0
  60. package/dist/components/Pagination/Pagination.cjs +75 -0
  61. package/dist/components/Pagination/Pagination.d.cts +40 -0
  62. package/dist/components/Pagination/Pagination.d.cts.map +1 -0
  63. package/dist/components/Pagination/Pagination.d.ts +40 -0
  64. package/dist/components/Pagination/Pagination.d.ts.map +1 -0
  65. package/dist/components/Pagination/Pagination.js +75 -0
  66. package/dist/components/Pagination/Pagination.js.map +1 -0
  67. package/dist/components/Pagination/PaginationEllipsis.cjs +64 -0
  68. package/dist/components/Pagination/PaginationEllipsis.d.cts +21 -0
  69. package/dist/components/Pagination/PaginationEllipsis.d.cts.map +1 -0
  70. package/dist/components/Pagination/PaginationEllipsis.d.ts +21 -0
  71. package/dist/components/Pagination/PaginationEllipsis.d.ts.map +1 -0
  72. package/dist/components/Pagination/PaginationEllipsis.js +64 -0
  73. package/dist/components/Pagination/PaginationEllipsis.js.map +1 -0
  74. package/dist/components/Pagination/PaginationItem.cjs +68 -0
  75. package/dist/components/Pagination/PaginationItem.d.cts +24 -0
  76. package/dist/components/Pagination/PaginationItem.d.cts.map +1 -0
  77. package/dist/components/Pagination/PaginationItem.d.ts +24 -0
  78. package/dist/components/Pagination/PaginationItem.d.ts.map +1 -0
  79. package/dist/components/Pagination/PaginationItem.js +68 -0
  80. package/dist/components/Pagination/PaginationItem.js.map +1 -0
  81. package/dist/components/Pagination/PaginationLink.cjs +68 -0
  82. package/dist/components/Pagination/PaginationLink.d.cts +25 -0
  83. package/dist/components/Pagination/PaginationLink.d.cts.map +1 -0
  84. package/dist/components/Pagination/PaginationLink.d.ts +25 -0
  85. package/dist/components/Pagination/PaginationLink.d.ts.map +1 -0
  86. package/dist/components/Pagination/PaginationLink.js +68 -0
  87. package/dist/components/Pagination/PaginationLink.js.map +1 -0
  88. package/dist/components/Pagination/PaginationNext.cjs +72 -0
  89. package/dist/components/Pagination/PaginationNext.d.cts +24 -0
  90. package/dist/components/Pagination/PaginationNext.d.cts.map +1 -0
  91. package/dist/components/Pagination/PaginationNext.d.ts +24 -0
  92. package/dist/components/Pagination/PaginationNext.d.ts.map +1 -0
  93. package/dist/components/Pagination/PaginationNext.js +72 -0
  94. package/dist/components/Pagination/PaginationNext.js.map +1 -0
  95. package/dist/components/Pagination/PaginationNumbers.cjs +50 -0
  96. package/dist/components/Pagination/PaginationNumbers.d.cts +23 -0
  97. package/dist/components/Pagination/PaginationNumbers.d.cts.map +1 -0
  98. package/dist/components/Pagination/PaginationNumbers.d.ts +23 -0
  99. package/dist/components/Pagination/PaginationNumbers.d.ts.map +1 -0
  100. package/dist/components/Pagination/PaginationNumbers.js +50 -0
  101. package/dist/components/Pagination/PaginationNumbers.js.map +1 -0
  102. package/dist/components/Pagination/PaginationPrev.cjs +72 -0
  103. package/dist/components/Pagination/PaginationPrev.d.cts +24 -0
  104. package/dist/components/Pagination/PaginationPrev.d.cts.map +1 -0
  105. package/dist/components/Pagination/PaginationPrev.d.ts +24 -0
  106. package/dist/components/Pagination/PaginationPrev.d.ts.map +1 -0
  107. package/dist/components/Pagination/PaginationPrev.js +72 -0
  108. package/dist/components/Pagination/PaginationPrev.js.map +1 -0
  109. package/dist/components/Pagination/computeVisiblePages.cjs +21 -0
  110. package/dist/components/Pagination/computeVisiblePages.d.cts +19 -0
  111. package/dist/components/Pagination/computeVisiblePages.d.cts.map +1 -0
  112. package/dist/components/Pagination/computeVisiblePages.d.ts +19 -0
  113. package/dist/components/Pagination/computeVisiblePages.d.ts.map +1 -0
  114. package/dist/components/Pagination/computeVisiblePages.js +22 -0
  115. package/dist/components/Pagination/computeVisiblePages.js.map +1 -0
  116. package/dist/components/Pagination/ellipsisDefault.cjs +28 -0
  117. package/dist/components/Pagination/ellipsisDefault.d.cts +11 -0
  118. package/dist/components/Pagination/ellipsisDefault.d.cts.map +1 -0
  119. package/dist/components/Pagination/ellipsisDefault.d.ts +11 -0
  120. package/dist/components/Pagination/ellipsisDefault.d.ts.map +1 -0
  121. package/dist/components/Pagination/ellipsisDefault.js +29 -0
  122. package/dist/components/Pagination/ellipsisDefault.js.map +1 -0
  123. package/dist/components/Pagination/ellipsisNone.cjs +24 -0
  124. package/dist/components/Pagination/ellipsisNone.d.cts +11 -0
  125. package/dist/components/Pagination/ellipsisNone.d.cts.map +1 -0
  126. package/dist/components/Pagination/ellipsisNone.d.ts +11 -0
  127. package/dist/components/Pagination/ellipsisNone.d.ts.map +1 -0
  128. package/dist/components/Pagination/ellipsisNone.js +25 -0
  129. package/dist/components/Pagination/ellipsisNone.js.map +1 -0
  130. package/dist/components/Pagination/index.cjs +18 -0
  131. package/dist/components/Pagination/index.d.cts +10 -0
  132. package/dist/components/Pagination/index.d.ts +10 -0
  133. package/dist/components/Pagination/index.js +10 -0
  134. package/dist/components/Pagination/paginationContext.cjs +42 -0
  135. package/dist/components/Pagination/paginationContext.d.cts +34 -0
  136. package/dist/components/Pagination/paginationContext.d.cts.map +1 -0
  137. package/dist/components/Pagination/paginationContext.d.ts +34 -0
  138. package/dist/components/Pagination/paginationContext.d.ts.map +1 -0
  139. package/dist/components/Pagination/paginationContext.js +38 -0
  140. package/dist/components/Pagination/paginationContext.js.map +1 -0
  141. package/dist/components/Pagination/paginationDefaultComponents.cjs +68 -0
  142. package/dist/components/Pagination/paginationDefaultComponents.d.cts +17 -0
  143. package/dist/components/Pagination/paginationDefaultComponents.d.cts.map +1 -0
  144. package/dist/components/Pagination/paginationDefaultComponents.d.ts +17 -0
  145. package/dist/components/Pagination/paginationDefaultComponents.d.ts.map +1 -0
  146. package/dist/components/Pagination/paginationDefaultComponents.js +69 -0
  147. package/dist/components/Pagination/paginationDefaultComponents.js.map +1 -0
  148. package/dist/components/Pagination/paginationTheme.cjs +67 -0
  149. package/dist/components/Pagination/paginationTheme.d.cts +28 -0
  150. package/dist/components/Pagination/paginationTheme.d.cts.map +1 -0
  151. package/dist/components/Pagination/paginationTheme.d.ts +28 -0
  152. package/dist/components/Pagination/paginationTheme.d.ts.map +1 -0
  153. package/dist/components/Pagination/paginationTheme.js +62 -0
  154. package/dist/components/Pagination/paginationTheme.js.map +1 -0
  155. package/dist/components/Pagination/range.cjs +10 -0
  156. package/dist/components/Pagination/range.d.cts +6 -0
  157. package/dist/components/Pagination/range.d.cts.map +1 -0
  158. package/dist/components/Pagination/range.d.ts +6 -0
  159. package/dist/components/Pagination/range.d.ts.map +1 -0
  160. package/dist/components/Pagination/range.js +11 -0
  161. package/dist/components/Pagination/range.js.map +1 -0
  162. package/dist/components/Pagination/usePaginationControlStyles.cjs +78 -0
  163. package/dist/components/Pagination/usePaginationControlStyles.d.cts +26 -0
  164. package/dist/components/Pagination/usePaginationControlStyles.d.cts.map +1 -0
  165. package/dist/components/Pagination/usePaginationControlStyles.d.ts +26 -0
  166. package/dist/components/Pagination/usePaginationControlStyles.d.ts.map +1 -0
  167. package/dist/components/Pagination/usePaginationControlStyles.js +78 -0
  168. package/dist/components/Pagination/usePaginationControlStyles.js.map +1 -0
  169. package/dist/jest/bun-test-guard.cjs +8 -0
  170. package/dist/jest/bun-test-guard.d.cts +2 -0
  171. package/dist/jest/bun-test-guard.d.ts +2 -0
  172. package/dist/jest/bun-test-guard.js +10 -0
  173. package/dist/jest/bun-test-guard.js.map +1 -0
  174. package/dist/jest/mocks/gesture-handler.cjs +29 -0
  175. package/dist/jest/mocks/gesture-handler.d.cts +27 -2
  176. package/dist/jest/mocks/gesture-handler.d.cts.map +1 -1
  177. package/dist/jest/mocks/gesture-handler.d.ts +27 -2
  178. package/dist/jest/mocks/gesture-handler.d.ts.map +1 -1
  179. package/dist/jest/mocks/gesture-handler.js +22 -1
  180. package/dist/jest/mocks/gesture-handler.js.map +1 -1
  181. package/dist/jest/mocks/styles.cjs +62 -0
  182. package/dist/jest/mocks/styles.d.cts +4 -2
  183. package/dist/jest/mocks/styles.d.cts.map +1 -1
  184. package/dist/jest/mocks/styles.d.ts +4 -2
  185. package/dist/jest/mocks/styles.d.ts.map +1 -1
  186. package/dist/jest/mocks/styles.js +61 -1
  187. package/dist/jest/mocks/styles.js.map +1 -1
  188. package/dist/jest/setup.cjs +8 -28
  189. package/dist/jest/setup.d.cts.map +1 -1
  190. package/dist/jest/setup.d.ts.map +1 -1
  191. package/dist/jest/setup.js +8 -28
  192. package/dist/jest/setup.js.map +1 -1
  193. package/dist/types/dist/index.d.cts +83 -1
  194. package/dist/types/dist/index.d.cts.map +1 -1
  195. package/dist/types/dist/index.d.ts +83 -1
  196. package/dist/types/dist/index.d.ts.map +1 -1
  197. package/generated/styles.cjs +75 -0
  198. package/generated/styles.d.ts +29 -0
  199. package/generated/styles.mjs +75 -0
  200. package/generated/unistyles.d.ts +69 -0
  201. package/package.json +21 -1
@@ -0,0 +1,10 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ import { computeVisiblePages } from "./computeVisiblePages.js";
3
+ import { Pagination } from "./Pagination.js";
4
+ import { PaginationEllipsis } from "./PaginationEllipsis.js";
5
+ import { PaginationItem } from "./PaginationItem.js";
6
+ import { PaginationLink } from "./PaginationLink.js";
7
+ import { PaginationNext } from "./PaginationNext.js";
8
+ import { PaginationNumbers } from "./PaginationNumbers.js";
9
+ import { PaginationPrev } from "./PaginationPrev.js";
10
+ export { Pagination, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationNumbers, PaginationPrev, computeVisiblePages };
@@ -0,0 +1,42 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("../../_virtual/_rolldown/runtime.cjs");
4
+ const require_components_Pagination_computeVisiblePages = require("./computeVisiblePages.cjs");
5
+ let react = require("react");
6
+ let react_jsx_runtime = require("react/jsx-runtime");
7
+ //#region src/components/Pagination/paginationContext.tsx
8
+ const defaultGetItemAriaLabel = (page, isActive) => isActive ? `Page ${page}, current page` : `Go to page ${page}`;
9
+ const PaginationContext = (0, react.createContext)(null);
10
+ const PaginationProvider = ({ value, children }) => {
11
+ const contextValue = (0, react.useMemo)(() => value, [value]);
12
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PaginationContext.Provider, {
13
+ value: contextValue,
14
+ children
15
+ });
16
+ };
17
+ PaginationProvider.displayName = "PaginationProvider";
18
+ function usePaginationContext() {
19
+ const context = (0, react.useContext)(PaginationContext);
20
+ if (!context) throw new Error("Pagination components must be used within a Pagination provider.");
21
+ return context;
22
+ }
23
+ function useVisiblePages() {
24
+ const { activePage, totalPages, maxVisiblePageNumbers, ellipsisPlacement } = usePaginationContext();
25
+ return (0, react.useMemo)(() => require_components_Pagination_computeVisiblePages.computeVisiblePages({
26
+ activePage,
27
+ totalPages,
28
+ maxVisiblePageNumbers,
29
+ ellipsisPlacement
30
+ }), [
31
+ activePage,
32
+ totalPages,
33
+ maxVisiblePageNumbers,
34
+ ellipsisPlacement
35
+ ]);
36
+ }
37
+ //#endregion
38
+ exports.PaginationContext = PaginationContext;
39
+ exports.PaginationProvider = PaginationProvider;
40
+ exports.defaultGetItemAriaLabel = defaultGetItemAriaLabel;
41
+ exports.usePaginationContext = usePaginationContext;
42
+ exports.useVisiblePages = useVisiblePages;
@@ -0,0 +1,34 @@
1
+
2
+ import { PaginationEllipsisPlacement, PaginationSize, PaginationVariant, PaginationVisibleItem } from "../../types/dist/index.cjs";
3
+ import * as _$react from "react";
4
+
5
+ //#region src/components/Pagination/paginationContext.d.ts
6
+ interface PaginationContextValue {
7
+ activePage: number;
8
+ totalPages: number;
9
+ maxVisiblePageNumbers: number;
10
+ ellipsisPlacement: PaginationEllipsisPlacement;
11
+ size: PaginationSize;
12
+ variant: PaginationVariant;
13
+ getPageHref?: (page: number) => string;
14
+ getItemAriaLabel: (page: number, isActive: boolean) => string;
15
+ onPageChange?: (page: number) => void;
16
+ }
17
+ declare const defaultGetItemAriaLabel: (page: number, isActive: boolean) => string;
18
+ declare const PaginationContext: _$react.Context<PaginationContextValue | null>;
19
+ interface PaginationProviderProps {
20
+ value: PaginationContextValue;
21
+ children: React.ReactNode;
22
+ }
23
+ declare const PaginationProvider: {
24
+ ({
25
+ value,
26
+ children
27
+ }: PaginationProviderProps): _$react.JSX.Element;
28
+ displayName: string;
29
+ };
30
+ declare function usePaginationContext(): PaginationContextValue;
31
+ declare function useVisiblePages(): PaginationVisibleItem[];
32
+ //#endregion
33
+ export { PaginationContext, PaginationProvider, defaultGetItemAriaLabel, usePaginationContext, useVisiblePages };
34
+ //# sourceMappingURL=paginationContext.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationContext.d.cts","names":[],"sources":["../../../src/components/Pagination/paginationContext.tsx"],"mappings":";;;;;UASU,sBAAA;EACR,UAAA;EACA,UAAA;EACA,qBAAA;EACA,iBAAA,EAAmB,2BAAA;EACnB,IAAA,EAAM,cAAA;EACN,OAAA,EAAS,iBAAA;EACT,WAAA,IAAe,IAAA;EACf,gBAAA,GAAmB,IAAA,UAAc,QAAA;EACjC,YAAA,IAAgB,IAAA;AAAA;AAAA,cAGZ,uBAAA,GAA2B,IAAA,UAAc,QAAA;AAAA,cAGzC,iBAAA,EAAiB,OAAA,CAAA,OAAA,CAAA,sBAAA;AAAA,UAEb,uBAAA;EACR,KAAA,EAAO,sBAAA;EACP,QAAA,EAAU,KAAA,CAAM,SAAA;AAAA;AAAA,cAGZ,kBAAA;EAAA;;;KAA2C,uBAAA,GAAuB,OAAA,CAAA,GAAA,CAAA,OAAA;;;iBAO/D,oBAAA,CAAA,GAAwB,sBAAA;AAAA,iBAQxB,eAAA,CAAA,GAAe,qBAAA"}
@@ -0,0 +1,34 @@
1
+
2
+ import { PaginationEllipsisPlacement, PaginationSize, PaginationVariant, PaginationVisibleItem } from "../../types/dist/index.js";
3
+ import * as _$react from "react";
4
+
5
+ //#region src/components/Pagination/paginationContext.d.ts
6
+ interface PaginationContextValue {
7
+ activePage: number;
8
+ totalPages: number;
9
+ maxVisiblePageNumbers: number;
10
+ ellipsisPlacement: PaginationEllipsisPlacement;
11
+ size: PaginationSize;
12
+ variant: PaginationVariant;
13
+ getPageHref?: (page: number) => string;
14
+ getItemAriaLabel: (page: number, isActive: boolean) => string;
15
+ onPageChange?: (page: number) => void;
16
+ }
17
+ declare const defaultGetItemAriaLabel: (page: number, isActive: boolean) => string;
18
+ declare const PaginationContext: _$react.Context<PaginationContextValue | null>;
19
+ interface PaginationProviderProps {
20
+ value: PaginationContextValue;
21
+ children: React.ReactNode;
22
+ }
23
+ declare const PaginationProvider: {
24
+ ({
25
+ value,
26
+ children
27
+ }: PaginationProviderProps): _$react.JSX.Element;
28
+ displayName: string;
29
+ };
30
+ declare function usePaginationContext(): PaginationContextValue;
31
+ declare function useVisiblePages(): PaginationVisibleItem[];
32
+ //#endregion
33
+ export { PaginationContext, PaginationProvider, defaultGetItemAriaLabel, usePaginationContext, useVisiblePages };
34
+ //# sourceMappingURL=paginationContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationContext.d.ts","names":[],"sources":["../../../src/components/Pagination/paginationContext.tsx"],"mappings":";;;;;UASU,sBAAA;EACR,UAAA;EACA,UAAA;EACA,qBAAA;EACA,iBAAA,EAAmB,2BAAA;EACnB,IAAA,EAAM,cAAA;EACN,OAAA,EAAS,iBAAA;EACT,WAAA,IAAe,IAAA;EACf,gBAAA,GAAmB,IAAA,UAAc,QAAA;EACjC,YAAA,IAAgB,IAAA;AAAA;AAAA,cAGZ,uBAAA,GAA2B,IAAA,UAAc,QAAA;AAAA,cAGzC,iBAAA,EAAiB,OAAA,CAAA,OAAA,CAAA,sBAAA;AAAA,UAEb,uBAAA;EACR,KAAA,EAAO,sBAAA;EACP,QAAA,EAAU,KAAA,CAAM,SAAA;AAAA;AAAA,cAGZ,kBAAA;EAAA;;;KAA2C,uBAAA,GAAuB,OAAA,CAAA,GAAA,CAAA,OAAA;;;iBAO/D,oBAAA,CAAA,GAAwB,sBAAA;AAAA,iBAQxB,eAAA,CAAA,GAAe,qBAAA"}
@@ -0,0 +1,38 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ import { computeVisiblePages } from "./computeVisiblePages.js";
3
+ import { createContext, useContext, useMemo } from "react";
4
+ import { jsx } from "react/jsx-runtime";
5
+ //#region src/components/Pagination/paginationContext.tsx
6
+ const defaultGetItemAriaLabel = (page, isActive) => isActive ? `Page ${page}, current page` : `Go to page ${page}`;
7
+ const PaginationContext = createContext(null);
8
+ const PaginationProvider = ({ value, children }) => {
9
+ const contextValue = useMemo(() => value, [value]);
10
+ return /* @__PURE__ */ jsx(PaginationContext.Provider, {
11
+ value: contextValue,
12
+ children
13
+ });
14
+ };
15
+ PaginationProvider.displayName = "PaginationProvider";
16
+ function usePaginationContext() {
17
+ const context = useContext(PaginationContext);
18
+ if (!context) throw new Error("Pagination components must be used within a Pagination provider.");
19
+ return context;
20
+ }
21
+ function useVisiblePages() {
22
+ const { activePage, totalPages, maxVisiblePageNumbers, ellipsisPlacement } = usePaginationContext();
23
+ return useMemo(() => computeVisiblePages({
24
+ activePage,
25
+ totalPages,
26
+ maxVisiblePageNumbers,
27
+ ellipsisPlacement
28
+ }), [
29
+ activePage,
30
+ totalPages,
31
+ maxVisiblePageNumbers,
32
+ ellipsisPlacement
33
+ ]);
34
+ }
35
+ //#endregion
36
+ export { PaginationContext, PaginationProvider, defaultGetItemAriaLabel, usePaginationContext, useVisiblePages };
37
+
38
+ //# sourceMappingURL=paginationContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationContext.js","names":[],"sources":["../../../src/components/Pagination/paginationContext.tsx"],"sourcesContent":["import type {\n PaginationEllipsisPlacement,\n PaginationSize,\n PaginationVariant,\n} from '@yahoo/uds-types';\nimport { createContext, useContext, useMemo } from 'react';\n\nimport { computeVisiblePages } from './computeVisiblePages';\n\ninterface PaginationContextValue {\n activePage: number;\n totalPages: number;\n maxVisiblePageNumbers: number;\n ellipsisPlacement: PaginationEllipsisPlacement;\n size: PaginationSize;\n variant: PaginationVariant;\n getPageHref?: (page: number) => string;\n getItemAriaLabel: (page: number, isActive: boolean) => string;\n onPageChange?: (page: number) => void;\n}\n\nconst defaultGetItemAriaLabel = (page: number, isActive: boolean) =>\n isActive ? `Page ${page}, current page` : `Go to page ${page}`;\n\nconst PaginationContext = createContext<PaginationContextValue | null>(null);\n\ninterface PaginationProviderProps {\n value: PaginationContextValue;\n children: React.ReactNode;\n}\n\nconst PaginationProvider = ({ value, children }: PaginationProviderProps) => {\n const contextValue = useMemo(() => value, [value]);\n return <PaginationContext.Provider value={contextValue}>{children}</PaginationContext.Provider>;\n};\n\nPaginationProvider.displayName = 'PaginationProvider';\n\nfunction usePaginationContext(): PaginationContextValue {\n const context = useContext(PaginationContext);\n if (!context) {\n throw new Error('Pagination components must be used within a Pagination provider.');\n }\n return context;\n}\n\nfunction useVisiblePages() {\n const { activePage, totalPages, maxVisiblePageNumbers, ellipsisPlacement } =\n usePaginationContext();\n return useMemo(\n () =>\n computeVisiblePages({\n activePage,\n totalPages,\n maxVisiblePageNumbers,\n ellipsisPlacement,\n }),\n [activePage, totalPages, maxVisiblePageNumbers, ellipsisPlacement],\n );\n}\n\nexport {\n defaultGetItemAriaLabel,\n PaginationContext,\n PaginationProvider,\n usePaginationContext,\n useVisiblePages,\n};\n"],"mappings":";;;;;AAqBA,MAAM,2BAA2B,MAAc,aAC7C,WAAW,QAAQ,KAAK,kBAAkB,cAAc;AAE1D,MAAM,oBAAoB,cAA6C,KAAK;AAO5E,MAAM,sBAAsB,EAAE,OAAO,eAAwC;CAC3E,MAAM,eAAe,cAAc,OAAO,CAAC,MAAM,CAAC;CAClD,OAAO,oBAAC,kBAAkB,UAAnB;EAA4B,OAAO;EAAe;EAAsC,CAAA;;AAGjG,mBAAmB,cAAc;AAEjC,SAAS,uBAA+C;CACtD,MAAM,UAAU,WAAW,kBAAkB;CAC7C,IAAI,CAAC,SACH,MAAM,IAAI,MAAM,mEAAmE;CAErF,OAAO;;AAGT,SAAS,kBAAkB;CACzB,MAAM,EAAE,YAAY,YAAY,uBAAuB,sBACrD,sBAAsB;CACxB,OAAO,cAEH,oBAAoB;EAClB;EACA;EACA;EACA;EACD,CAAC,EACJ;EAAC;EAAY;EAAY;EAAuB;EAAkB,CACnE"}
@@ -0,0 +1,68 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ //#region src/components/Pagination/paginationDefaultComponents.ts
4
+ /**
5
+ * Default pagination component tokens from `@yahoo/uds-config`.
6
+ * Used when the synced app theme has not yet published pagination variables.
7
+ */
8
+ const PAGINATION_DEFAULT_COMPONENTS = {
9
+ "pagination/size/md/icon/rest": {
10
+ fontSize: 16,
11
+ iconSizeToken: "sm",
12
+ lineHeight: 16
13
+ },
14
+ "pagination/size/md/item/rest": {
15
+ borderRadius: 9999,
16
+ padding: 8
17
+ },
18
+ "pagination/size/md/root/rest": { gap: 4 },
19
+ "pagination/size/md/text/rest": {
20
+ fontFamily: "YahooProductSans",
21
+ fontSize: 16,
22
+ letterSpacing: -.05,
23
+ lineHeight: 16
24
+ },
25
+ "pagination/size/sm/icon/rest": {
26
+ fontSize: 16,
27
+ iconSizeToken: "sm",
28
+ lineHeight: 16
29
+ },
30
+ "pagination/size/sm/item/rest": {
31
+ borderRadius: 9999,
32
+ padding: 6
33
+ },
34
+ "pagination/size/sm/root/rest": { gap: 4 },
35
+ "pagination/size/sm/text/rest": {
36
+ fontFamily: "YahooProductSans",
37
+ fontSize: 16,
38
+ letterSpacing: -.05,
39
+ lineHeight: 16
40
+ },
41
+ "pagination/variant/default/active/off/root/pressed": {
42
+ backgroundColor: "rgb(234, 229, 253)",
43
+ borderColor: "transparent",
44
+ borderWidth: 0,
45
+ boxShadow: "inset 0px 1px 2px 0px rgba(26, 25, 25, 0.1), inset 0px 1px 4px 0px rgba(26, 25, 25, 0.1)"
46
+ },
47
+ "pagination/variant/default/active/off/root/rest": {
48
+ backgroundColor: "transparent",
49
+ borderColor: "transparent",
50
+ borderWidth: 0
51
+ },
52
+ "pagination/variant/default/active/off/rootText/pressed": { color: "rgb(58, 57, 57)" },
53
+ "pagination/variant/default/active/off/rootText/rest": { color: "rgb(58, 57, 57)" },
54
+ "pagination/variant/default/active/on/root/pressed": {
55
+ backgroundColor: "rgb(125, 46, 255)",
56
+ borderColor: "transparent",
57
+ borderWidth: 0
58
+ },
59
+ "pagination/variant/default/active/on/root/rest": {
60
+ backgroundColor: "rgb(125, 46, 255)",
61
+ borderColor: "transparent",
62
+ borderWidth: 0
63
+ },
64
+ "pagination/variant/default/active/on/rootText/pressed": { color: "rgb(254, 254, 254)" },
65
+ "pagination/variant/default/active/on/rootText/rest": { color: "rgb(254, 254, 254)" }
66
+ };
67
+ //#endregion
68
+ exports.PAGINATION_DEFAULT_COMPONENTS = PAGINATION_DEFAULT_COMPONENTS;
@@ -0,0 +1,17 @@
1
+
2
+ import { IconSize } from "../../types/dist/index.cjs";
3
+ import { TextStyle, ViewStyle } from "react-native";
4
+
5
+ //#region src/components/Pagination/paginationDefaultComponents.d.ts
6
+ /** Theme layer values may include RN styles plus UDS token fields from config. */
7
+ type PaginationDefaultComponentStyle = (ViewStyle | TextStyle) & {
8
+ iconSizeToken?: IconSize;
9
+ };
10
+ /**
11
+ * Default pagination component tokens from `@yahoo/uds-config`.
12
+ * Used when the synced app theme has not yet published pagination variables.
13
+ */
14
+ declare const PAGINATION_DEFAULT_COMPONENTS: Record<string, PaginationDefaultComponentStyle>;
15
+ //#endregion
16
+ export { PAGINATION_DEFAULT_COMPONENTS };
17
+ //# sourceMappingURL=paginationDefaultComponents.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationDefaultComponents.d.cts","names":[],"sources":["../../../src/components/Pagination/paginationDefaultComponents.ts"],"mappings":";;;;;;KAIK,+BAAA,IAAmC,SAAA,GAAY,SAAA;EAClD,aAAA,GAAgB,QAAA;AAAA;;;;;cAOL,6BAAA,EAA+B,MAAA,SAAe,+BAAA"}
@@ -0,0 +1,17 @@
1
+
2
+ import { IconSize } from "../../types/dist/index.js";
3
+ import { TextStyle, ViewStyle } from "react-native";
4
+
5
+ //#region src/components/Pagination/paginationDefaultComponents.d.ts
6
+ /** Theme layer values may include RN styles plus UDS token fields from config. */
7
+ type PaginationDefaultComponentStyle = (ViewStyle | TextStyle) & {
8
+ iconSizeToken?: IconSize;
9
+ };
10
+ /**
11
+ * Default pagination component tokens from `@yahoo/uds-config`.
12
+ * Used when the synced app theme has not yet published pagination variables.
13
+ */
14
+ declare const PAGINATION_DEFAULT_COMPONENTS: Record<string, PaginationDefaultComponentStyle>;
15
+ //#endregion
16
+ export { PAGINATION_DEFAULT_COMPONENTS };
17
+ //# sourceMappingURL=paginationDefaultComponents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationDefaultComponents.d.ts","names":[],"sources":["../../../src/components/Pagination/paginationDefaultComponents.ts"],"mappings":";;;;;;KAIK,+BAAA,IAAmC,SAAA,GAAY,SAAA;EAClD,aAAA,GAAgB,QAAA;AAAA;;;;;cAOL,6BAAA,EAA+B,MAAA,SAAe,+BAAA"}
@@ -0,0 +1,69 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ //#region src/components/Pagination/paginationDefaultComponents.ts
3
+ /**
4
+ * Default pagination component tokens from `@yahoo/uds-config`.
5
+ * Used when the synced app theme has not yet published pagination variables.
6
+ */
7
+ const PAGINATION_DEFAULT_COMPONENTS = {
8
+ "pagination/size/md/icon/rest": {
9
+ fontSize: 16,
10
+ iconSizeToken: "sm",
11
+ lineHeight: 16
12
+ },
13
+ "pagination/size/md/item/rest": {
14
+ borderRadius: 9999,
15
+ padding: 8
16
+ },
17
+ "pagination/size/md/root/rest": { gap: 4 },
18
+ "pagination/size/md/text/rest": {
19
+ fontFamily: "YahooProductSans",
20
+ fontSize: 16,
21
+ letterSpacing: -.05,
22
+ lineHeight: 16
23
+ },
24
+ "pagination/size/sm/icon/rest": {
25
+ fontSize: 16,
26
+ iconSizeToken: "sm",
27
+ lineHeight: 16
28
+ },
29
+ "pagination/size/sm/item/rest": {
30
+ borderRadius: 9999,
31
+ padding: 6
32
+ },
33
+ "pagination/size/sm/root/rest": { gap: 4 },
34
+ "pagination/size/sm/text/rest": {
35
+ fontFamily: "YahooProductSans",
36
+ fontSize: 16,
37
+ letterSpacing: -.05,
38
+ lineHeight: 16
39
+ },
40
+ "pagination/variant/default/active/off/root/pressed": {
41
+ backgroundColor: "rgb(234, 229, 253)",
42
+ borderColor: "transparent",
43
+ borderWidth: 0,
44
+ boxShadow: "inset 0px 1px 2px 0px rgba(26, 25, 25, 0.1), inset 0px 1px 4px 0px rgba(26, 25, 25, 0.1)"
45
+ },
46
+ "pagination/variant/default/active/off/root/rest": {
47
+ backgroundColor: "transparent",
48
+ borderColor: "transparent",
49
+ borderWidth: 0
50
+ },
51
+ "pagination/variant/default/active/off/rootText/pressed": { color: "rgb(58, 57, 57)" },
52
+ "pagination/variant/default/active/off/rootText/rest": { color: "rgb(58, 57, 57)" },
53
+ "pagination/variant/default/active/on/root/pressed": {
54
+ backgroundColor: "rgb(125, 46, 255)",
55
+ borderColor: "transparent",
56
+ borderWidth: 0
57
+ },
58
+ "pagination/variant/default/active/on/root/rest": {
59
+ backgroundColor: "rgb(125, 46, 255)",
60
+ borderColor: "transparent",
61
+ borderWidth: 0
62
+ },
63
+ "pagination/variant/default/active/on/rootText/pressed": { color: "rgb(254, 254, 254)" },
64
+ "pagination/variant/default/active/on/rootText/rest": { color: "rgb(254, 254, 254)" }
65
+ };
66
+ //#endregion
67
+ export { PAGINATION_DEFAULT_COMPONENTS };
68
+
69
+ //# sourceMappingURL=paginationDefaultComponents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationDefaultComponents.js","names":[],"sources":["../../../src/components/Pagination/paginationDefaultComponents.ts"],"sourcesContent":["import type { IconSize } from '@yahoo/uds-types';\nimport type { TextStyle, ViewStyle } from 'react-native';\n\n/** Theme layer values may include RN styles plus UDS token fields from config. */\ntype PaginationDefaultComponentStyle = (ViewStyle | TextStyle) & {\n iconSizeToken?: IconSize;\n};\n\n/**\n * Default pagination component tokens from `@yahoo/uds-config`.\n * Used when the synced app theme has not yet published pagination variables.\n */\nexport const PAGINATION_DEFAULT_COMPONENTS: Record<string, PaginationDefaultComponentStyle> = {\n 'pagination/size/md/icon/rest': {\n fontSize: 16,\n iconSizeToken: 'sm',\n lineHeight: 16,\n },\n 'pagination/size/md/item/rest': {\n borderRadius: 9999,\n padding: 8,\n },\n 'pagination/size/md/root/rest': {\n gap: 4,\n },\n 'pagination/size/md/text/rest': {\n fontFamily: 'YahooProductSans',\n fontSize: 16,\n letterSpacing: -0.05,\n lineHeight: 16,\n },\n 'pagination/size/sm/icon/rest': {\n fontSize: 16,\n iconSizeToken: 'sm',\n lineHeight: 16,\n },\n 'pagination/size/sm/item/rest': {\n borderRadius: 9999,\n padding: 6,\n },\n 'pagination/size/sm/root/rest': {\n gap: 4,\n },\n 'pagination/size/sm/text/rest': {\n fontFamily: 'YahooProductSans',\n fontSize: 16,\n letterSpacing: -0.05,\n lineHeight: 16,\n },\n 'pagination/variant/default/active/off/root/pressed': {\n backgroundColor: 'rgb(234, 229, 253)',\n borderColor: 'transparent',\n borderWidth: 0,\n boxShadow:\n 'inset 0px 1px 2px 0px rgba(26, 25, 25, 0.1), inset 0px 1px 4px 0px rgba(26, 25, 25, 0.1)',\n },\n 'pagination/variant/default/active/off/root/rest': {\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n borderWidth: 0,\n },\n 'pagination/variant/default/active/off/rootText/pressed': {\n color: 'rgb(58, 57, 57)',\n },\n 'pagination/variant/default/active/off/rootText/rest': {\n color: 'rgb(58, 57, 57)',\n },\n 'pagination/variant/default/active/on/root/pressed': {\n backgroundColor: 'rgb(125, 46, 255)',\n borderColor: 'transparent',\n borderWidth: 0,\n },\n 'pagination/variant/default/active/on/root/rest': {\n backgroundColor: 'rgb(125, 46, 255)',\n borderColor: 'transparent',\n borderWidth: 0,\n },\n 'pagination/variant/default/active/on/rootText/pressed': {\n color: 'rgb(254, 254, 254)',\n },\n 'pagination/variant/default/active/on/rootText/rest': {\n color: 'rgb(254, 254, 254)',\n },\n};\n"],"mappings":";;;;;;AAYA,MAAa,gCAAiF;CAC5F,gCAAgC;EAC9B,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,gCAAgC;EAC9B,cAAc;EACd,SAAS;EACV;CACD,gCAAgC,EAC9B,KAAK,GACN;CACD,gCAAgC;EAC9B,YAAY;EACZ,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,gCAAgC;EAC9B,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,gCAAgC;EAC9B,cAAc;EACd,SAAS;EACV;CACD,gCAAgC,EAC9B,KAAK,GACN;CACD,gCAAgC;EAC9B,YAAY;EACZ,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,sDAAsD;EACpD,iBAAiB;EACjB,aAAa;EACb,aAAa;EACb,WACE;EACH;CACD,mDAAmD;EACjD,iBAAiB;EACjB,aAAa;EACb,aAAa;EACd;CACD,0DAA0D,EACxD,OAAO,mBACR;CACD,uDAAuD,EACrD,OAAO,mBACR;CACD,qDAAqD;EACnD,iBAAiB;EACjB,aAAa;EACb,aAAa;EACd;CACD,kDAAkD;EAChD,iBAAiB;EACjB,aAAa;EACb,aAAa;EACd;CACD,yDAAyD,EACvD,OAAO,sBACR;CACD,sDAAsD,EACpD,OAAO,sBACR;CACF"}
@@ -0,0 +1,67 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const require_components_Pagination_paginationDefaultComponents = require("./paginationDefaultComponents.cjs");
4
+ //#region src/components/Pagination/paginationTheme.ts
5
+ function paginationSizePath(size, layer) {
6
+ return `pagination/size/${size}/${layer}/rest`;
7
+ }
8
+ function paginationVariantPath(variant, active, layer, state) {
9
+ return `pagination/variant/${variant}/active/${active}/${layer}/${state}`;
10
+ }
11
+ function getLayerStyle(theme, path) {
12
+ const style = theme.components[path];
13
+ if (style && typeof style === "object" && Object.keys(style).length > 0) return style;
14
+ const fallback = require_components_Pagination_paginationDefaultComponents.PAGINATION_DEFAULT_COMPONENTS[path];
15
+ return fallback && typeof fallback === "object" ? fallback : {};
16
+ }
17
+ function getPaginationSizeLayerStyle(theme, size, layer) {
18
+ return getLayerStyle(theme, paginationSizePath(size, layer));
19
+ }
20
+ function getPaginationVariantLayerStyle(theme, variant, active, layer, state) {
21
+ return getLayerStyle(theme, paginationVariantPath(variant, active, layer, state));
22
+ }
23
+ /** Page control container: size item + variant root (matches web stacking). */
24
+ function getMergedPaginationControlRootStyle(theme, size, variant, active, state) {
25
+ return {
26
+ ...getPaginationSizeLayerStyle(theme, size, "item"),
27
+ ...getPaginationVariantLayerStyle(theme, variant, active, "root", state)
28
+ };
29
+ }
30
+ /** Label typography + color: size text + variant rootText. */
31
+ function getMergedPaginationTextStyle(theme, size, variant, active, state) {
32
+ return {
33
+ ...getPaginationSizeLayerStyle(theme, size, "text"),
34
+ ...getPaginationVariantLayerStyle(theme, variant, active, "rootText", state)
35
+ };
36
+ }
37
+ /** Icon sizing from size layer; color follows variant rootText. */
38
+ function getMergedPaginationIconStyle(theme, size, variant, active, state) {
39
+ const iconStyle = getPaginationSizeLayerStyle(theme, size, "icon");
40
+ const textStyle = getPaginationVariantLayerStyle(theme, variant, active, "rootText", state);
41
+ return {
42
+ ...iconStyle,
43
+ ...textStyle.color !== void 0 ? { color: textStyle.color } : void 0
44
+ };
45
+ }
46
+ function getPaginationRootGapStyle(theme, size) {
47
+ return getPaginationSizeLayerStyle(theme, size, "root");
48
+ }
49
+ /** Control height/width from item padding plus icon size, matching web alignment. */
50
+ function getPaginationControlMetrics(theme, size) {
51
+ const itemStyle = getPaginationSizeLayerStyle(theme, size, "item");
52
+ const iconStyle = getPaginationSizeLayerStyle(theme, size, "icon");
53
+ const padding = (typeof itemStyle.padding === "number" ? itemStyle.padding : void 0) ?? (typeof itemStyle.paddingVertical === "number" ? itemStyle.paddingVertical : void 0) ?? 8;
54
+ const iconSize = (typeof iconStyle.fontSize === "number" ? iconStyle.fontSize : void 0) ?? (typeof iconStyle.lineHeight === "number" ? iconStyle.lineHeight : void 0) ?? 16;
55
+ return {
56
+ controlSize: padding * 2 + iconSize,
57
+ borderRadius: itemStyle.borderRadius
58
+ };
59
+ }
60
+ //#endregion
61
+ exports.getMergedPaginationControlRootStyle = getMergedPaginationControlRootStyle;
62
+ exports.getMergedPaginationIconStyle = getMergedPaginationIconStyle;
63
+ exports.getMergedPaginationTextStyle = getMergedPaginationTextStyle;
64
+ exports.getPaginationControlMetrics = getPaginationControlMetrics;
65
+ exports.getPaginationRootGapStyle = getPaginationRootGapStyle;
66
+ exports.getPaginationSizeLayerStyle = getPaginationSizeLayerStyle;
67
+ exports.getPaginationVariantLayerStyle = getPaginationVariantLayerStyle;
@@ -0,0 +1,28 @@
1
+
2
+ import { PaginationSize, PaginationVariant } from "../../types/dist/index.cjs";
3
+ import { TextStyle, ViewStyle } from "react-native";
4
+
5
+ //#region src/components/Pagination/paginationTheme.d.ts
6
+ type PaginationActiveState = 'on' | 'off';
7
+ type PaginationVariantLayer = 'root' | 'rootText';
8
+ type InteractionState = 'rest' | 'pressed';
9
+ type PaginationTheme = {
10
+ components: Record<string, any>;
11
+ };
12
+ declare function getPaginationSizeLayerStyle(theme: PaginationTheme, size: PaginationSize, layer: 'root' | 'item' | 'icon' | 'text'): ViewStyle | TextStyle;
13
+ declare function getPaginationVariantLayerStyle(theme: PaginationTheme, variant: PaginationVariant, active: PaginationActiveState, layer: PaginationVariantLayer, state: InteractionState): ViewStyle | TextStyle;
14
+ /** Page control container: size item + variant root (matches web stacking). */
15
+ declare function getMergedPaginationControlRootStyle(theme: PaginationTheme, size: PaginationSize, variant: PaginationVariant, active: PaginationActiveState, state: InteractionState): ViewStyle;
16
+ /** Label typography + color: size text + variant rootText. */
17
+ declare function getMergedPaginationTextStyle(theme: PaginationTheme, size: PaginationSize, variant: PaginationVariant, active: PaginationActiveState, state: InteractionState): TextStyle;
18
+ /** Icon sizing from size layer; color follows variant rootText. */
19
+ declare function getMergedPaginationIconStyle(theme: PaginationTheme, size: PaginationSize, variant: PaginationVariant, active: PaginationActiveState, state: InteractionState): TextStyle;
20
+ declare function getPaginationRootGapStyle(theme: PaginationTheme, size: PaginationSize): ViewStyle;
21
+ /** Control height/width from item padding plus icon size, matching web alignment. */
22
+ declare function getPaginationControlMetrics(theme: PaginationTheme, size: PaginationSize): {
23
+ controlSize: number;
24
+ borderRadius: ViewStyle['borderRadius'];
25
+ };
26
+ //#endregion
27
+ export { getMergedPaginationControlRootStyle, getMergedPaginationIconStyle, getMergedPaginationTextStyle, getPaginationControlMetrics, getPaginationRootGapStyle, getPaginationSizeLayerStyle, getPaginationVariantLayerStyle };
28
+ //# sourceMappingURL=paginationTheme.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationTheme.d.cts","names":[],"sources":["../../../src/components/Pagination/paginationTheme.ts"],"mappings":";;;;;KAKK,qBAAA;AAAA,KACA,sBAAA;AAAA,KACA,gBAAA;AAAA,KAEA,eAAA;EAEH,UAAA,EAAY,MAAA;AAAA;AAAA,iBA6BE,2BAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA,EACN,KAAA,sCACC,SAAA,GAAY,SAAA;AAAA,iBAIC,8BAAA,CACd,KAAA,EAAO,eAAA,EACP,OAAA,EAAS,iBAAA,EACT,MAAA,EAAQ,qBAAA,EACR,KAAA,EAAO,sBAAA,EACP,KAAA,EAAO,gBAAA,GACN,SAAA,GAAY,SAAA;;iBAKC,mCAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA,EACN,OAAA,EAAS,iBAAA,EACT,MAAA,EAAQ,qBAAA,EACR,KAAA,EAAO,gBAAA,GACN,SAAA;;iBAQa,4BAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA,EACN,OAAA,EAAS,iBAAA,EACT,MAAA,EAAQ,qBAAA,EACR,KAAA,EAAO,gBAAA,GACN,SAAA;AAzEwB;AAAA,iBAiFX,4BAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA,EACN,OAAA,EAAS,iBAAA,EACT,MAAA,EAAQ,qBAAA,EACR,KAAA,EAAO,gBAAA,GACN,SAAA;AAAA,iBAgBa,yBAAA,CAA0B,KAAA,EAAO,eAAA,EAAiB,IAAA,EAAM,cAAA,GAAiB,SAAA;;iBAKzE,2BAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA;EACH,WAAA;EAAqB,YAAA,EAAc,SAAA;AAAA"}
@@ -0,0 +1,28 @@
1
+
2
+ import { PaginationSize, PaginationVariant } from "../../types/dist/index.js";
3
+ import { TextStyle, ViewStyle } from "react-native";
4
+
5
+ //#region src/components/Pagination/paginationTheme.d.ts
6
+ type PaginationActiveState = 'on' | 'off';
7
+ type PaginationVariantLayer = 'root' | 'rootText';
8
+ type InteractionState = 'rest' | 'pressed';
9
+ type PaginationTheme = {
10
+ components: Record<string, any>;
11
+ };
12
+ declare function getPaginationSizeLayerStyle(theme: PaginationTheme, size: PaginationSize, layer: 'root' | 'item' | 'icon' | 'text'): ViewStyle | TextStyle;
13
+ declare function getPaginationVariantLayerStyle(theme: PaginationTheme, variant: PaginationVariant, active: PaginationActiveState, layer: PaginationVariantLayer, state: InteractionState): ViewStyle | TextStyle;
14
+ /** Page control container: size item + variant root (matches web stacking). */
15
+ declare function getMergedPaginationControlRootStyle(theme: PaginationTheme, size: PaginationSize, variant: PaginationVariant, active: PaginationActiveState, state: InteractionState): ViewStyle;
16
+ /** Label typography + color: size text + variant rootText. */
17
+ declare function getMergedPaginationTextStyle(theme: PaginationTheme, size: PaginationSize, variant: PaginationVariant, active: PaginationActiveState, state: InteractionState): TextStyle;
18
+ /** Icon sizing from size layer; color follows variant rootText. */
19
+ declare function getMergedPaginationIconStyle(theme: PaginationTheme, size: PaginationSize, variant: PaginationVariant, active: PaginationActiveState, state: InteractionState): TextStyle;
20
+ declare function getPaginationRootGapStyle(theme: PaginationTheme, size: PaginationSize): ViewStyle;
21
+ /** Control height/width from item padding plus icon size, matching web alignment. */
22
+ declare function getPaginationControlMetrics(theme: PaginationTheme, size: PaginationSize): {
23
+ controlSize: number;
24
+ borderRadius: ViewStyle['borderRadius'];
25
+ };
26
+ //#endregion
27
+ export { getMergedPaginationControlRootStyle, getMergedPaginationIconStyle, getMergedPaginationTextStyle, getPaginationControlMetrics, getPaginationRootGapStyle, getPaginationSizeLayerStyle, getPaginationVariantLayerStyle };
28
+ //# sourceMappingURL=paginationTheme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationTheme.d.ts","names":[],"sources":["../../../src/components/Pagination/paginationTheme.ts"],"mappings":";;;;;KAKK,qBAAA;AAAA,KACA,sBAAA;AAAA,KACA,gBAAA;AAAA,KAEA,eAAA;EAEH,UAAA,EAAY,MAAA;AAAA;AAAA,iBA6BE,2BAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA,EACN,KAAA,sCACC,SAAA,GAAY,SAAA;AAAA,iBAIC,8BAAA,CACd,KAAA,EAAO,eAAA,EACP,OAAA,EAAS,iBAAA,EACT,MAAA,EAAQ,qBAAA,EACR,KAAA,EAAO,sBAAA,EACP,KAAA,EAAO,gBAAA,GACN,SAAA,GAAY,SAAA;;iBAKC,mCAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA,EACN,OAAA,EAAS,iBAAA,EACT,MAAA,EAAQ,qBAAA,EACR,KAAA,EAAO,gBAAA,GACN,SAAA;;iBAQa,4BAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA,EACN,OAAA,EAAS,iBAAA,EACT,MAAA,EAAQ,qBAAA,EACR,KAAA,EAAO,gBAAA,GACN,SAAA;AAzEwB;AAAA,iBAiFX,4BAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA,EACN,OAAA,EAAS,iBAAA,EACT,MAAA,EAAQ,qBAAA,EACR,KAAA,EAAO,gBAAA,GACN,SAAA;AAAA,iBAgBa,yBAAA,CAA0B,KAAA,EAAO,eAAA,EAAiB,IAAA,EAAM,cAAA,GAAiB,SAAA;;iBAKzE,2BAAA,CACd,KAAA,EAAO,eAAA,EACP,IAAA,EAAM,cAAA;EACH,WAAA;EAAqB,YAAA,EAAc,SAAA;AAAA"}
@@ -0,0 +1,62 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ import { PAGINATION_DEFAULT_COMPONENTS } from "./paginationDefaultComponents.js";
3
+ //#region src/components/Pagination/paginationTheme.ts
4
+ function paginationSizePath(size, layer) {
5
+ return `pagination/size/${size}/${layer}/rest`;
6
+ }
7
+ function paginationVariantPath(variant, active, layer, state) {
8
+ return `pagination/variant/${variant}/active/${active}/${layer}/${state}`;
9
+ }
10
+ function getLayerStyle(theme, path) {
11
+ const style = theme.components[path];
12
+ if (style && typeof style === "object" && Object.keys(style).length > 0) return style;
13
+ const fallback = PAGINATION_DEFAULT_COMPONENTS[path];
14
+ return fallback && typeof fallback === "object" ? fallback : {};
15
+ }
16
+ function getPaginationSizeLayerStyle(theme, size, layer) {
17
+ return getLayerStyle(theme, paginationSizePath(size, layer));
18
+ }
19
+ function getPaginationVariantLayerStyle(theme, variant, active, layer, state) {
20
+ return getLayerStyle(theme, paginationVariantPath(variant, active, layer, state));
21
+ }
22
+ /** Page control container: size item + variant root (matches web stacking). */
23
+ function getMergedPaginationControlRootStyle(theme, size, variant, active, state) {
24
+ return {
25
+ ...getPaginationSizeLayerStyle(theme, size, "item"),
26
+ ...getPaginationVariantLayerStyle(theme, variant, active, "root", state)
27
+ };
28
+ }
29
+ /** Label typography + color: size text + variant rootText. */
30
+ function getMergedPaginationTextStyle(theme, size, variant, active, state) {
31
+ return {
32
+ ...getPaginationSizeLayerStyle(theme, size, "text"),
33
+ ...getPaginationVariantLayerStyle(theme, variant, active, "rootText", state)
34
+ };
35
+ }
36
+ /** Icon sizing from size layer; color follows variant rootText. */
37
+ function getMergedPaginationIconStyle(theme, size, variant, active, state) {
38
+ const iconStyle = getPaginationSizeLayerStyle(theme, size, "icon");
39
+ const textStyle = getPaginationVariantLayerStyle(theme, variant, active, "rootText", state);
40
+ return {
41
+ ...iconStyle,
42
+ ...textStyle.color !== void 0 ? { color: textStyle.color } : void 0
43
+ };
44
+ }
45
+ function getPaginationRootGapStyle(theme, size) {
46
+ return getPaginationSizeLayerStyle(theme, size, "root");
47
+ }
48
+ /** Control height/width from item padding plus icon size, matching web alignment. */
49
+ function getPaginationControlMetrics(theme, size) {
50
+ const itemStyle = getPaginationSizeLayerStyle(theme, size, "item");
51
+ const iconStyle = getPaginationSizeLayerStyle(theme, size, "icon");
52
+ const padding = (typeof itemStyle.padding === "number" ? itemStyle.padding : void 0) ?? (typeof itemStyle.paddingVertical === "number" ? itemStyle.paddingVertical : void 0) ?? 8;
53
+ const iconSize = (typeof iconStyle.fontSize === "number" ? iconStyle.fontSize : void 0) ?? (typeof iconStyle.lineHeight === "number" ? iconStyle.lineHeight : void 0) ?? 16;
54
+ return {
55
+ controlSize: padding * 2 + iconSize,
56
+ borderRadius: itemStyle.borderRadius
57
+ };
58
+ }
59
+ //#endregion
60
+ export { getMergedPaginationControlRootStyle, getMergedPaginationIconStyle, getMergedPaginationTextStyle, getPaginationControlMetrics, getPaginationRootGapStyle, getPaginationSizeLayerStyle, getPaginationVariantLayerStyle };
61
+
62
+ //# sourceMappingURL=paginationTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginationTheme.js","names":[],"sources":["../../../src/components/Pagination/paginationTheme.ts"],"sourcesContent":["import type { PaginationSize, PaginationVariant } from '@yahoo/uds-types';\nimport type { TextStyle, ViewStyle } from 'react-native';\n\nimport { PAGINATION_DEFAULT_COMPONENTS } from './paginationDefaultComponents';\n\ntype PaginationActiveState = 'on' | 'off';\ntype PaginationVariantLayer = 'root' | 'rootText';\ntype InteractionState = 'rest' | 'pressed';\n\ntype PaginationTheme = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n components: Record<string, any>;\n};\n\nfunction paginationSizePath(\n size: PaginationSize,\n layer: 'root' | 'item' | 'icon' | 'text',\n): string {\n return `pagination/size/${size}/${layer}/rest`;\n}\n\nfunction paginationVariantPath(\n variant: PaginationVariant,\n active: PaginationActiveState,\n layer: PaginationVariantLayer,\n state: InteractionState,\n): string {\n return `pagination/variant/${variant}/active/${active}/${layer}/${state}`;\n}\n\nfunction getLayerStyle(theme: PaginationTheme, path: string): ViewStyle | TextStyle {\n const style = theme.components[path];\n if (style && typeof style === 'object' && Object.keys(style).length > 0) {\n return style;\n }\n\n const fallback = PAGINATION_DEFAULT_COMPONENTS[path];\n return fallback && typeof fallback === 'object' ? fallback : {};\n}\n\nexport function getPaginationSizeLayerStyle(\n theme: PaginationTheme,\n size: PaginationSize,\n layer: 'root' | 'item' | 'icon' | 'text',\n): ViewStyle | TextStyle {\n return getLayerStyle(theme, paginationSizePath(size, layer));\n}\n\nexport function getPaginationVariantLayerStyle(\n theme: PaginationTheme,\n variant: PaginationVariant,\n active: PaginationActiveState,\n layer: PaginationVariantLayer,\n state: InteractionState,\n): ViewStyle | TextStyle {\n return getLayerStyle(theme, paginationVariantPath(variant, active, layer, state));\n}\n\n/** Page control container: size item + variant root (matches web stacking). */\nexport function getMergedPaginationControlRootStyle(\n theme: PaginationTheme,\n size: PaginationSize,\n variant: PaginationVariant,\n active: PaginationActiveState,\n state: InteractionState,\n): ViewStyle {\n return {\n ...(getPaginationSizeLayerStyle(theme, size, 'item') as object),\n ...(getPaginationVariantLayerStyle(theme, variant, active, 'root', state) as object),\n } as ViewStyle;\n}\n\n/** Label typography + color: size text + variant rootText. */\nexport function getMergedPaginationTextStyle(\n theme: PaginationTheme,\n size: PaginationSize,\n variant: PaginationVariant,\n active: PaginationActiveState,\n state: InteractionState,\n): TextStyle {\n return {\n ...(getPaginationSizeLayerStyle(theme, size, 'text') as object),\n ...(getPaginationVariantLayerStyle(theme, variant, active, 'rootText', state) as object),\n } as TextStyle;\n}\n\n/** Icon sizing from size layer; color follows variant rootText. */\nexport function getMergedPaginationIconStyle(\n theme: PaginationTheme,\n size: PaginationSize,\n variant: PaginationVariant,\n active: PaginationActiveState,\n state: InteractionState,\n): TextStyle {\n const iconStyle = getPaginationSizeLayerStyle(theme, size, 'icon') as TextStyle;\n const textStyle = getPaginationVariantLayerStyle(\n theme,\n variant,\n active,\n 'rootText',\n state,\n ) as TextStyle;\n\n return {\n ...iconStyle,\n ...(textStyle.color !== undefined ? { color: textStyle.color } : undefined),\n } as TextStyle;\n}\n\nexport function getPaginationRootGapStyle(theme: PaginationTheme, size: PaginationSize): ViewStyle {\n return getPaginationSizeLayerStyle(theme, size, 'root') as ViewStyle;\n}\n\n/** Control height/width from item padding plus icon size, matching web alignment. */\nexport function getPaginationControlMetrics(\n theme: PaginationTheme,\n size: PaginationSize,\n): { controlSize: number; borderRadius: ViewStyle['borderRadius'] } {\n const itemStyle = getPaginationSizeLayerStyle(theme, size, 'item') as ViewStyle;\n const iconStyle = getPaginationSizeLayerStyle(theme, size, 'icon') as TextStyle;\n\n const padding =\n (typeof itemStyle.padding === 'number' ? itemStyle.padding : undefined) ??\n (typeof itemStyle.paddingVertical === 'number' ? itemStyle.paddingVertical : undefined) ??\n 8;\n\n const iconSize =\n (typeof iconStyle.fontSize === 'number' ? iconStyle.fontSize : undefined) ??\n (typeof iconStyle.lineHeight === 'number' ? iconStyle.lineHeight : undefined) ??\n 16;\n\n return {\n controlSize: padding * 2 + iconSize,\n borderRadius: itemStyle.borderRadius,\n };\n}\n"],"mappings":";;;AAcA,SAAS,mBACP,MACA,OACQ;CACR,OAAO,mBAAmB,KAAK,GAAG,MAAM;;AAG1C,SAAS,sBACP,SACA,QACA,OACA,OACQ;CACR,OAAO,sBAAsB,QAAQ,UAAU,OAAO,GAAG,MAAM,GAAG;;AAGpE,SAAS,cAAc,OAAwB,MAAqC;CAClF,MAAM,QAAQ,MAAM,WAAW;CAC/B,IAAI,SAAS,OAAO,UAAU,YAAY,OAAO,KAAK,MAAM,CAAC,SAAS,GACpE,OAAO;CAGT,MAAM,WAAW,8BAA8B;CAC/C,OAAO,YAAY,OAAO,aAAa,WAAW,WAAW,EAAE;;AAGjE,SAAgB,4BACd,OACA,MACA,OACuB;CACvB,OAAO,cAAc,OAAO,mBAAmB,MAAM,MAAM,CAAC;;AAG9D,SAAgB,+BACd,OACA,SACA,QACA,OACA,OACuB;CACvB,OAAO,cAAc,OAAO,sBAAsB,SAAS,QAAQ,OAAO,MAAM,CAAC;;;AAInF,SAAgB,oCACd,OACA,MACA,SACA,QACA,OACW;CACX,OAAO;EACL,GAAI,4BAA4B,OAAO,MAAM,OAAO;EACpD,GAAI,+BAA+B,OAAO,SAAS,QAAQ,QAAQ,MAAM;EAC1E;;;AAIH,SAAgB,6BACd,OACA,MACA,SACA,QACA,OACW;CACX,OAAO;EACL,GAAI,4BAA4B,OAAO,MAAM,OAAO;EACpD,GAAI,+BAA+B,OAAO,SAAS,QAAQ,YAAY,MAAM;EAC9E;;;AAIH,SAAgB,6BACd,OACA,MACA,SACA,QACA,OACW;CACX,MAAM,YAAY,4BAA4B,OAAO,MAAM,OAAO;CAClE,MAAM,YAAY,+BAChB,OACA,SACA,QACA,YACA,MACD;CAED,OAAO;EACL,GAAG;EACH,GAAI,UAAU,UAAU,KAAA,IAAY,EAAE,OAAO,UAAU,OAAO,GAAG,KAAA;EAClE;;AAGH,SAAgB,0BAA0B,OAAwB,MAAiC;CACjG,OAAO,4BAA4B,OAAO,MAAM,OAAO;;;AAIzD,SAAgB,4BACd,OACA,MACkE;CAClE,MAAM,YAAY,4BAA4B,OAAO,MAAM,OAAO;CAClE,MAAM,YAAY,4BAA4B,OAAO,MAAM,OAAO;CAElE,MAAM,WACH,OAAO,UAAU,YAAY,WAAW,UAAU,UAAU,KAAA,OAC5D,OAAO,UAAU,oBAAoB,WAAW,UAAU,kBAAkB,KAAA,MAC7E;CAEF,MAAM,YACH,OAAO,UAAU,aAAa,WAAW,UAAU,WAAW,KAAA,OAC9D,OAAO,UAAU,eAAe,WAAW,UAAU,aAAa,KAAA,MACnE;CAEF,OAAO;EACL,aAAa,UAAU,IAAI;EAC3B,cAAc,UAAU;EACzB"}
@@ -0,0 +1,10 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ //#region src/components/Pagination/range.ts
4
+ function range(start, end) {
5
+ const result = [];
6
+ for (let i = start; i <= end; i++) result.push(i);
7
+ return result;
8
+ }
9
+ //#endregion
10
+ exports.range = range;
@@ -0,0 +1,6 @@
1
+
2
+ //#region src/components/Pagination/range.d.ts
3
+ declare function range(start: number, end: number): number[];
4
+ //#endregion
5
+ export { range };
6
+ //# sourceMappingURL=range.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range.d.cts","names":[],"sources":["../../../src/components/Pagination/range.ts"],"mappings":";;iBAAS,KAAA,CAAM,KAAA,UAAe,GAAA"}
@@ -0,0 +1,6 @@
1
+
2
+ //#region src/components/Pagination/range.d.ts
3
+ declare function range(start: number, end: number): number[];
4
+ //#endregion
5
+ export { range };
6
+ //# sourceMappingURL=range.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range.d.ts","names":[],"sources":["../../../src/components/Pagination/range.ts"],"mappings":";;iBAAS,KAAA,CAAM,KAAA,UAAe,GAAA"}
@@ -0,0 +1,11 @@
1
+ /*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
2
+ //#region src/components/Pagination/range.ts
3
+ function range(start, end) {
4
+ const result = [];
5
+ for (let i = start; i <= end; i++) result.push(i);
6
+ return result;
7
+ }
8
+ //#endregion
9
+ export { range };
10
+
11
+ //# sourceMappingURL=range.js.map