@yahoo/uds-mobile 2.19.0 → 2.20.1

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 (85) 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/paginationTheme.cjs +4 -2
  61. package/dist/components/Pagination/paginationTheme.d.cts +1 -1
  62. package/dist/components/Pagination/paginationTheme.d.ts +1 -1
  63. package/dist/components/Pagination/paginationTheme.js +4 -2
  64. package/dist/components/Pagination/paginationTheme.js.map +1 -1
  65. package/dist/jest/mocks/gesture-handler.cjs +29 -0
  66. package/dist/jest/mocks/gesture-handler.d.cts +27 -2
  67. package/dist/jest/mocks/gesture-handler.d.cts.map +1 -1
  68. package/dist/jest/mocks/gesture-handler.d.ts +27 -2
  69. package/dist/jest/mocks/gesture-handler.d.ts.map +1 -1
  70. package/dist/jest/mocks/gesture-handler.js +22 -1
  71. package/dist/jest/mocks/gesture-handler.js.map +1 -1
  72. package/dist/jest/mocks/styles.cjs +39 -0
  73. package/dist/jest/mocks/styles.d.cts +3 -2
  74. package/dist/jest/mocks/styles.d.cts.map +1 -1
  75. package/dist/jest/mocks/styles.d.ts +3 -2
  76. package/dist/jest/mocks/styles.d.ts.map +1 -1
  77. package/dist/jest/mocks/styles.js +39 -1
  78. package/dist/jest/mocks/styles.js.map +1 -1
  79. package/dist/jest/setup.cjs +8 -28
  80. package/dist/jest/setup.d.cts.map +1 -1
  81. package/dist/jest/setup.d.ts.map +1 -1
  82. package/dist/jest/setup.js +8 -28
  83. package/dist/jest/setup.js.map +1 -1
  84. package/generated/styles.d.ts +1 -1
  85. package/package.json +11 -1
@@ -12,6 +12,7 @@ var styles_exports = /* @__PURE__ */ __exportAll({
12
12
  iconButtonStyles: () => iconButtonStyles,
13
13
  inputStyles: () => inputStyles,
14
14
  linkStyles: () => linkStyles,
15
+ modalStyles: () => modalStyles,
15
16
  paginationStyles: () => paginationStyles,
16
17
  popoverStyles: () => popoverStyles,
17
18
  radioStyles: () => radioStyles,
@@ -438,7 +439,44 @@ const toastStyles = createComponentStyles({
438
439
  lineHeight: 20
439
440
  }
440
441
  });
442
+ const modalStyles = createComponentStyles({
443
+ root: {
444
+ backgroundBlurColor: "rgba(255, 255, 255, 0.9)",
445
+ backgroundBlurRadius: 0,
446
+ backgroundColor: "#FFFFFF",
447
+ borderColor: "#E0E0E0",
448
+ borderRadius: 16,
449
+ borderWidth: 1,
450
+ boxShadow: "",
451
+ paddingVertical: 32
452
+ },
453
+ actions: { gap: 12 },
454
+ closeIcon: {
455
+ color: "#000000",
456
+ fontSize: 24,
457
+ iconSizeToken: "md",
458
+ lineHeight: 24
459
+ },
460
+ closeIconContainer: { padding: 8 },
461
+ description: {
462
+ color: "#000000",
463
+ fontFamily: "YahooProductSans-Regular",
464
+ fontSize: 18,
465
+ letterSpacing: 0,
466
+ lineHeight: 28
467
+ },
468
+ scrim: { padding: 32 },
469
+ spacingHorizontal: { paddingHorizontal: 32 },
470
+ title: {
471
+ color: "#000000",
472
+ fontFamily: "YahooProductSans-Medium",
473
+ fontSize: 28,
474
+ letterSpacing: 0,
475
+ lineHeight: 36
476
+ },
477
+ titleDescriptionWrapper: { gap: 8 }
478
+ });
441
479
  //#endregion
442
- export { avatarStyles, badgeStyles, bottomSheetStyles, buttonStyles, checkboxStyles, chipStyles, dividerStyles, iconButtonStyles, inputStyles, linkStyles, paginationStyles, popoverStyles, radioStyles, scrimStyles, styles, styles_exports, switchStyles, tabsStyles, textStyles, toastStyles };
480
+ export { avatarStyles, badgeStyles, bottomSheetStyles, buttonStyles, checkboxStyles, chipStyles, dividerStyles, iconButtonStyles, inputStyles, linkStyles, modalStyles, paginationStyles, popoverStyles, radioStyles, scrimStyles, styles, styles_exports, switchStyles, tabsStyles, textStyles, toastStyles };
443
481
 
444
482
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":[],"sources":["../../../src/jest/mocks/styles.ts"],"sourcesContent":["/**\n * Jest mock for generated/styles.\n *\n * Provides proxy-based mocks for the generated style objects\n * (styles, buttonStyles, etc.) with useVariants as a no-op.\n */\n\n/// <reference types=\"jest\" />\n\n// Default style values for foundation\nconst defaultFoundation = {\n // Layout\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n justifyContent: 'flex-start',\n // Spacing\n padding: 0,\n paddingHorizontal: 0,\n paddingVertical: 0,\n margin: 0,\n gap: 0,\n // Colors\n backgroundColor: 'transparent',\n color: '#000000',\n borderColor: 'transparent',\n // Border\n borderWidth: 0,\n borderRadius: 0,\n // Typography\n fontFamily: 'System',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'regular',\n // Effects\n opacity: 1,\n boxShadow: '',\n};\n\n// Create a style object with useVariants attached\nfunction createStyleObject(baseStyles: Record<string, unknown> = {}) {\n const proxy = new Proxy(\n { ...defaultFoundation, ...baseStyles, useVariants: jest.fn() },\n {\n get(target, prop) {\n if (prop === 'useVariants') {\n return jest.fn();\n }\n if (prop in target) {\n return target[prop as keyof typeof target];\n }\n // Return sensible defaults for unknown properties\n if (typeof prop === 'string') {\n if (prop.includes('color') || prop.includes('Color')) {\n return '#000000';\n }\n if (prop.includes('width') || prop.includes('Width')) {\n return 0;\n }\n if (prop.includes('radius') || prop.includes('Radius')) {\n return 0;\n }\n if (prop.includes('size') || prop.includes('Size')) {\n return 16;\n }\n if (prop.includes('spacing') || prop.includes('Spacing')) {\n return 0;\n }\n if (prop.includes('gap') || prop.includes('Gap')) {\n return 0;\n }\n }\n return undefined;\n },\n },\n );\n return proxy;\n}\n\n// Create a component style object (like buttonStyles) with multiple style keys\nfunction createComponentStyles(styleKeys: Record<string, Record<string, unknown>>) {\n const result: Record<string, unknown> = { useVariants: jest.fn() };\n\n for (const [key, baseStyles] of Object.entries(styleKeys)) {\n result[key] = createStyleObject(baseStyles);\n }\n\n return new Proxy(result, {\n get(target, prop) {\n if (prop === 'useVariants') {\n return jest.fn();\n }\n if (prop in target) {\n return target[prop as keyof typeof target];\n }\n // Return a default style object for any unknown key\n if (typeof prop === 'string') {\n return createStyleObject();\n }\n return undefined;\n },\n });\n}\n\n// Main styles export\nexport const styles = createComponentStyles({\n foundation: defaultFoundation,\n});\n\n// Button styles\nexport const buttonStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n gap: 8,\n paddingHorizontal: 16,\n paddingVertical: 10,\n backgroundColor: '#6001D2',\n borderRadius: 8,\n borderWidth: 0,\n borderColor: 'transparent',\n opacity: 1,\n boxShadow: '',\n },\n text: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n letterSpacing: 0,\n lineHeight: 20,\n color: '#FFFFFF',\n },\n icon: {\n fontSize: 16,\n iconSizeToken: 'sm',\n lineHeight: 16,\n color: '#FFFFFF',\n },\n});\n\n// Text styles\nexport const textStyles = createComponentStyles({\n root: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// Input styles\nexport const inputStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'column',\n gap: 4,\n },\n label: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n inputContainer: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n paddingHorizontal: 12,\n paddingVertical: 10,\n backgroundColor: '#FFFFFF',\n borderRadius: 8,\n borderWidth: 1,\n borderColor: '#E0E0E0',\n },\n input: {\n flex: 1,\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 16,\n lineHeight: 24,\n color: '#000000',\n },\n helperText: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 12,\n lineHeight: 16,\n color: '#666666',\n },\n});\n\n// Checkbox styles\nexport const checkboxStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n box: {\n width: 20,\n height: 20,\n borderRadius: 4,\n borderWidth: 2,\n borderColor: '#6001D2',\n backgroundColor: 'transparent',\n },\n label: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// Switch styles\nexport const switchStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n track: {\n width: 48,\n height: 28,\n borderRadius: 14,\n backgroundColor: '#E0E0E0',\n },\n thumb: {\n width: 24,\n height: 24,\n borderRadius: 12,\n backgroundColor: '#FFFFFF',\n },\n label: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// Avatar styles\nexport const avatarStyles = createComponentStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 9999,\n backgroundColor: '#E0E0E0',\n overflow: 'hidden',\n },\n image: {\n width: '100%',\n height: '100%',\n },\n initials: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n color: '#000000',\n },\n});\n\n// Badge styles\nexport const badgeStyles = createComponentStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n paddingHorizontal: 8,\n paddingVertical: 2,\n borderRadius: 4,\n backgroundColor: '#E0E0E0',\n },\n text: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 12,\n lineHeight: 16,\n color: '#000000',\n },\n});\n\n// Chip styles\nexport const chipStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n paddingHorizontal: 12,\n paddingVertical: 6,\n borderRadius: 16,\n backgroundColor: '#F5F5F5',\n borderWidth: 1,\n borderColor: '#E0E0E0',\n },\n text: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// Divider styles\nexport const dividerStyles = createComponentStyles({\n root: {\n gap: 8,\n },\n label: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 12,\n lineHeight: 16,\n color: '#000000',\n },\n line: {\n borderWidth: 1,\n borderColor: '#E0E0E0',\n },\n});\n\n// Link styles\nexport const linkStyles = createComponentStyles({\n root: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n },\n text: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#6001D2',\n textDecorationLine: 'underline',\n },\n});\n\n// Radio styles\nexport const radioStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n circle: {\n width: 20,\n height: 20,\n borderRadius: 10,\n borderWidth: 2,\n borderColor: '#6001D2',\n backgroundColor: 'transparent',\n },\n dot: {\n width: 10,\n height: 10,\n borderRadius: 5,\n backgroundColor: '#6001D2',\n },\n label: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// IconButton styles\nexport const iconButtonStyles = createComponentStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 8,\n backgroundColor: 'transparent',\n },\n icon: {\n fontSize: 24,\n color: '#000000',\n },\n});\n\n// BottomSheet styles\nexport const bottomSheetStyles = createComponentStyles({\n root: {\n backgroundColor: '#ffffff',\n backgroundBlurColor: '#ffffff',\n backgroundBlurRadius: 0,\n borderColor: '#e0e0e0',\n borderWidth: 1,\n borderRadius: 16,\n paddingHorizontal: 16,\n paddingVertical: 8,\n marginHorizontal: 8,\n marginBottom: 8,\n },\n header: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 16,\n letterSpacing: 0,\n lineHeight: 20,\n color: '#000000',\n },\n handleIndicator: {\n backgroundColor: '#999999',\n },\n});\n\n// Scrim styles\nexport const scrimStyles = createComponentStyles({\n root: {\n backgroundColor: '#000000',\n opacity: 0.2,\n backgroundBlurRadius: 0,\n },\n});\n\n// Popover styles\nexport const popoverStyles = createComponentStyles({\n root: {\n boxShadow: '0px 8px 16px rgba(0, 0, 0, 0.12)',\n },\n blur: {\n backgroundBlurRadius: 0,\n },\n closeIcon: {\n fontSize: 16,\n iconSizeToken: 'sm',\n lineHeight: 16,\n color: '#000000',\n },\n closeIconContainer: {\n padding: 8,\n },\n contentWrapper: {\n gap: 8,\n paddingHorizontal: 16,\n paddingVertical: 16,\n },\n svgBase: {\n borderRadius: 16,\n backgroundBlurColor: '#ffffff',\n backgroundBlurRadius: 0,\n backgroundColor: '#ffffff',\n backgroundOpacity: 1,\n },\n svgBorder: {\n borderColor: '#e0e0e0',\n borderWidth: 1,\n },\n});\n\n// Tabs (tab list chrome)\nexport const tabsStyles = createComponentStyles({\n root: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n});\n\n// Pagination styles\nexport const paginationStyles = createComponentStyles({\n root: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n },\n item: {\n alignItems: 'center',\n justifyContent: 'center',\n padding: 8,\n borderRadius: 999,\n },\n text: {\n fontSize: 14,\n lineHeight: 16,\n },\n icon: {\n fontSize: 16,\n lineHeight: 16,\n },\n});\n\n// Toast styles\nexport const toastStyles = createComponentStyles({\n root: {\n alignItems: 'center',\n backgroundBlurColor: 'rgba(255, 255, 255, 0.9)',\n backgroundBlurRadius: 0,\n backgroundColor: '#FFFFFF',\n borderColor: '#E0E0E0',\n borderRadius: 12,\n borderWidth: 1,\n boxShadow: '',\n flexDirection: 'row',\n gap: 8,\n paddingHorizontal: 12,\n paddingVertical: 10,\n },\n text: {\n color: '#000000',\n },\n icon: {\n color: '#000000',\n fontSize: 16,\n iconSizeToken: 'md',\n lineHeight: 16,\n },\n closeIcon: {\n color: '#000000',\n fontSize: 12,\n iconSizeToken: 'sm',\n lineHeight: 12,\n },\n label: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n letterSpacing: 0,\n lineHeight: 20,\n },\n});\n\n// Type for StyleProps\nexport interface StyleProps {\n color?: string;\n backgroundColor?: string;\n borderColor?: string;\n borderWidth?: number;\n borderRadius?: number;\n [key: string]: unknown;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"styles.js","names":[],"sources":["../../../src/jest/mocks/styles.ts"],"sourcesContent":["/**\n * Jest mock for generated/styles.\n *\n * Provides proxy-based mocks for the generated style objects\n * (styles, buttonStyles, etc.) with useVariants as a no-op.\n */\n\n/// <reference types=\"jest\" />\n\n// Default style values for foundation\nconst defaultFoundation = {\n // Layout\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n justifyContent: 'flex-start',\n // Spacing\n padding: 0,\n paddingHorizontal: 0,\n paddingVertical: 0,\n margin: 0,\n gap: 0,\n // Colors\n backgroundColor: 'transparent',\n color: '#000000',\n borderColor: 'transparent',\n // Border\n borderWidth: 0,\n borderRadius: 0,\n // Typography\n fontFamily: 'System',\n fontSize: 14,\n lineHeight: 20,\n fontWeight: 'regular',\n // Effects\n opacity: 1,\n boxShadow: '',\n};\n\n// Create a style object with useVariants attached\nfunction createStyleObject(baseStyles: Record<string, unknown> = {}) {\n const proxy = new Proxy(\n { ...defaultFoundation, ...baseStyles, useVariants: jest.fn() },\n {\n get(target, prop) {\n if (prop === 'useVariants') {\n return jest.fn();\n }\n if (prop in target) {\n return target[prop as keyof typeof target];\n }\n // Return sensible defaults for unknown properties\n if (typeof prop === 'string') {\n if (prop.includes('color') || prop.includes('Color')) {\n return '#000000';\n }\n if (prop.includes('width') || prop.includes('Width')) {\n return 0;\n }\n if (prop.includes('radius') || prop.includes('Radius')) {\n return 0;\n }\n if (prop.includes('size') || prop.includes('Size')) {\n return 16;\n }\n if (prop.includes('spacing') || prop.includes('Spacing')) {\n return 0;\n }\n if (prop.includes('gap') || prop.includes('Gap')) {\n return 0;\n }\n }\n return undefined;\n },\n },\n );\n return proxy;\n}\n\n// Create a component style object (like buttonStyles) with multiple style keys\nfunction createComponentStyles(styleKeys: Record<string, Record<string, unknown>>) {\n const result: Record<string, unknown> = { useVariants: jest.fn() };\n\n for (const [key, baseStyles] of Object.entries(styleKeys)) {\n result[key] = createStyleObject(baseStyles);\n }\n\n return new Proxy(result, {\n get(target, prop) {\n if (prop === 'useVariants') {\n return jest.fn();\n }\n if (prop in target) {\n return target[prop as keyof typeof target];\n }\n // Return a default style object for any unknown key\n if (typeof prop === 'string') {\n return createStyleObject();\n }\n return undefined;\n },\n });\n}\n\n// Main styles export\nexport const styles = createComponentStyles({\n foundation: defaultFoundation,\n});\n\n// Button styles\nexport const buttonStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n gap: 8,\n paddingHorizontal: 16,\n paddingVertical: 10,\n backgroundColor: '#6001D2',\n borderRadius: 8,\n borderWidth: 0,\n borderColor: 'transparent',\n opacity: 1,\n boxShadow: '',\n },\n text: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n letterSpacing: 0,\n lineHeight: 20,\n color: '#FFFFFF',\n },\n icon: {\n fontSize: 16,\n iconSizeToken: 'sm',\n lineHeight: 16,\n color: '#FFFFFF',\n },\n});\n\n// Text styles\nexport const textStyles = createComponentStyles({\n root: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// Input styles\nexport const inputStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'column',\n gap: 4,\n },\n label: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n inputContainer: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n paddingHorizontal: 12,\n paddingVertical: 10,\n backgroundColor: '#FFFFFF',\n borderRadius: 8,\n borderWidth: 1,\n borderColor: '#E0E0E0',\n },\n input: {\n flex: 1,\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 16,\n lineHeight: 24,\n color: '#000000',\n },\n helperText: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 12,\n lineHeight: 16,\n color: '#666666',\n },\n});\n\n// Checkbox styles\nexport const checkboxStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n box: {\n width: 20,\n height: 20,\n borderRadius: 4,\n borderWidth: 2,\n borderColor: '#6001D2',\n backgroundColor: 'transparent',\n },\n label: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// Switch styles\nexport const switchStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n track: {\n width: 48,\n height: 28,\n borderRadius: 14,\n backgroundColor: '#E0E0E0',\n },\n thumb: {\n width: 24,\n height: 24,\n borderRadius: 12,\n backgroundColor: '#FFFFFF',\n },\n label: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// Avatar styles\nexport const avatarStyles = createComponentStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 9999,\n backgroundColor: '#E0E0E0',\n overflow: 'hidden',\n },\n image: {\n width: '100%',\n height: '100%',\n },\n initials: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n color: '#000000',\n },\n});\n\n// Badge styles\nexport const badgeStyles = createComponentStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n paddingHorizontal: 8,\n paddingVertical: 2,\n borderRadius: 4,\n backgroundColor: '#E0E0E0',\n },\n text: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 12,\n lineHeight: 16,\n color: '#000000',\n },\n});\n\n// Chip styles\nexport const chipStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n paddingHorizontal: 12,\n paddingVertical: 6,\n borderRadius: 16,\n backgroundColor: '#F5F5F5',\n borderWidth: 1,\n borderColor: '#E0E0E0',\n },\n text: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// Divider styles\nexport const dividerStyles = createComponentStyles({\n root: {\n gap: 8,\n },\n label: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 12,\n lineHeight: 16,\n color: '#000000',\n },\n line: {\n borderWidth: 1,\n borderColor: '#E0E0E0',\n },\n});\n\n// Link styles\nexport const linkStyles = createComponentStyles({\n root: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n },\n text: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#6001D2',\n textDecorationLine: 'underline',\n },\n});\n\n// Radio styles\nexport const radioStyles = createComponentStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n circle: {\n width: 20,\n height: 20,\n borderRadius: 10,\n borderWidth: 2,\n borderColor: '#6001D2',\n backgroundColor: 'transparent',\n },\n dot: {\n width: 10,\n height: 10,\n borderRadius: 5,\n backgroundColor: '#6001D2',\n },\n label: {\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 14,\n lineHeight: 20,\n color: '#000000',\n },\n});\n\n// IconButton styles\nexport const iconButtonStyles = createComponentStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 8,\n backgroundColor: 'transparent',\n },\n icon: {\n fontSize: 24,\n color: '#000000',\n },\n});\n\n// BottomSheet styles\nexport const bottomSheetStyles = createComponentStyles({\n root: {\n backgroundColor: '#ffffff',\n backgroundBlurColor: '#ffffff',\n backgroundBlurRadius: 0,\n borderColor: '#e0e0e0',\n borderWidth: 1,\n borderRadius: 16,\n paddingHorizontal: 16,\n paddingVertical: 8,\n marginHorizontal: 8,\n marginBottom: 8,\n },\n header: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 16,\n letterSpacing: 0,\n lineHeight: 20,\n color: '#000000',\n },\n handleIndicator: {\n backgroundColor: '#999999',\n },\n});\n\n// Scrim styles\nexport const scrimStyles = createComponentStyles({\n root: {\n backgroundColor: '#000000',\n opacity: 0.2,\n backgroundBlurRadius: 0,\n },\n});\n\n// Popover styles\nexport const popoverStyles = createComponentStyles({\n root: {\n boxShadow: '0px 8px 16px rgba(0, 0, 0, 0.12)',\n },\n blur: {\n backgroundBlurRadius: 0,\n },\n closeIcon: {\n fontSize: 16,\n iconSizeToken: 'sm',\n lineHeight: 16,\n color: '#000000',\n },\n closeIconContainer: {\n padding: 8,\n },\n contentWrapper: {\n gap: 8,\n paddingHorizontal: 16,\n paddingVertical: 16,\n },\n svgBase: {\n borderRadius: 16,\n backgroundBlurColor: '#ffffff',\n backgroundBlurRadius: 0,\n backgroundColor: '#ffffff',\n backgroundOpacity: 1,\n },\n svgBorder: {\n borderColor: '#e0e0e0',\n borderWidth: 1,\n },\n});\n\n// Tabs (tab list chrome)\nexport const tabsStyles = createComponentStyles({\n root: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n});\n\n// Pagination styles\nexport const paginationStyles = createComponentStyles({\n root: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n },\n item: {\n alignItems: 'center',\n justifyContent: 'center',\n padding: 8,\n borderRadius: 999,\n },\n text: {\n fontSize: 14,\n lineHeight: 16,\n },\n icon: {\n fontSize: 16,\n lineHeight: 16,\n },\n});\n\n// Toast styles\nexport const toastStyles = createComponentStyles({\n root: {\n alignItems: 'center',\n backgroundBlurColor: 'rgba(255, 255, 255, 0.9)',\n backgroundBlurRadius: 0,\n backgroundColor: '#FFFFFF',\n borderColor: '#E0E0E0',\n borderRadius: 12,\n borderWidth: 1,\n boxShadow: '',\n flexDirection: 'row',\n gap: 8,\n paddingHorizontal: 12,\n paddingVertical: 10,\n },\n text: {\n color: '#000000',\n },\n icon: {\n color: '#000000',\n fontSize: 16,\n iconSizeToken: 'md',\n lineHeight: 16,\n },\n closeIcon: {\n color: '#000000',\n fontSize: 12,\n iconSizeToken: 'sm',\n lineHeight: 12,\n },\n label: {\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 14,\n letterSpacing: 0,\n lineHeight: 20,\n },\n});\n\n// Modal styles\nexport const modalStyles = createComponentStyles({\n root: {\n backgroundBlurColor: 'rgba(255, 255, 255, 0.9)',\n backgroundBlurRadius: 0,\n backgroundColor: '#FFFFFF',\n borderColor: '#E0E0E0',\n borderRadius: 16,\n borderWidth: 1,\n boxShadow: '',\n paddingVertical: 32,\n },\n actions: {\n gap: 12,\n },\n closeIcon: {\n color: '#000000',\n fontSize: 24,\n iconSizeToken: 'md',\n lineHeight: 24,\n },\n closeIconContainer: {\n padding: 8,\n },\n description: {\n color: '#000000',\n fontFamily: 'YahooProductSans-Regular',\n fontSize: 18,\n letterSpacing: 0,\n lineHeight: 28,\n },\n scrim: {\n padding: 32,\n },\n spacingHorizontal: {\n paddingHorizontal: 32,\n },\n title: {\n color: '#000000',\n fontFamily: 'YahooProductSans-Medium',\n fontSize: 28,\n letterSpacing: 0,\n lineHeight: 36,\n },\n titleDescriptionWrapper: {\n gap: 8,\n },\n});\n\n// Type for StyleProps\nexport interface StyleProps {\n color?: string;\n backgroundColor?: string;\n borderColor?: string;\n borderWidth?: number;\n borderRadius?: number;\n [key: string]: unknown;\n}\n"],"mappings":"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Aa;EACb,cAAc;EACd,aAAa;EACb,WAAW;EACX,eAAe;EACf,KAAK;EACL,mBAAmB;EACnB,iBAAiB;EAClB;CACD,MAAM,EACJ,OAAO,WACR;CACD,MAAM;EACJ,OAAO;EACP,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,WAAW;EACT,OAAO;EACP,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,OAAO;EACL,YAAY;EACZ,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACF,CAAC;AAGF,MAAa,cAAc,sBAAsB;CAC/C,MAAM;EACJ,qBAAqB;EACrB,sBAAsB;EACtB,iBAAiB;EACjB,aAAa;EACb,cAAc;EACd,aAAa;EACb,WAAW;EACX,iBAAiB;EAClB;CACD,SAAS,EACP,KAAK,IACN;CACD,WAAW;EACT,OAAO;EACP,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,oBAAoB,EAClB,SAAS,GACV;CACD,aAAa;EACX,OAAO;EACP,YAAY;EACZ,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,OAAO,EACL,SAAS,IACV;CACD,mBAAmB,EACjB,mBAAmB,IACpB;CACD,OAAO;EACL,OAAO;EACP,YAAY;EACZ,UAAU;EACV,eAAe;EACf,YAAY;EACb;CACD,yBAAyB,EACvB,KAAK,GACN;CACF,CAAC"}
@@ -4,10 +4,17 @@ const require_jest_mocks_icons = require("./mocks/icons.cjs");
4
4
  const require_jest_mocks_reanimated = require("./mocks/reanimated.cjs");
5
5
  const require_jest_mocks_svg = require("./mocks/svg.cjs");
6
6
  const require_jest_mocks_unistyles = require("./mocks/unistyles.cjs");
7
+ const require_jest_mocks_gesture_handler = require("./mocks/gesture-handler.cjs");
7
8
  //#region src/jest/setup.ts
8
9
  let isSetup = false;
10
+ function setupAnimationFrame() {
11
+ const testGlobal = globalThis;
12
+ testGlobal.requestAnimationFrame ??= (callback) => setTimeout(() => callback(Date.now()), 0);
13
+ testGlobal.cancelAnimationFrame ??= (handle) => clearTimeout(handle);
14
+ }
9
15
  function setupUDSMobileJest() {
10
16
  if (isSetup) return;
17
+ setupAnimationFrame();
11
18
  globalThis.expo = { modules: { UDSScreenCornerRadius: {
12
19
  getCornerRadiusSync: () => 0,
13
20
  getCornerRadius: async () => 0
@@ -32,34 +39,7 @@ function setupUDSMobileJest() {
32
39
  const mockReact = jest.requireActual("react");
33
40
  return { FullWindowOverlay: ({ children }) => mockReact.createElement("FullWindowOverlay", null, children) };
34
41
  });
35
- jest.mock("react-native-gesture-handler", () => {
36
- const mockReact = jest.requireActual("react");
37
- const createGesture = () => ({
38
- enabled: jest.fn().mockReturnThis(),
39
- onBegin: jest.fn().mockReturnThis(),
40
- onChange: jest.fn().mockReturnThis(),
41
- onEnd: jest.fn().mockReturnThis(),
42
- onFinalize: jest.fn().mockReturnThis(),
43
- onStart: jest.fn().mockReturnThis(),
44
- onTouchesDown: jest.fn().mockReturnThis(),
45
- onTouchesMove: jest.fn().mockReturnThis(),
46
- onUpdate: jest.fn().mockReturnThis(),
47
- manualActivation: jest.fn().mockReturnThis(),
48
- minDistance: jest.fn().mockReturnThis(),
49
- runOnJS: jest.fn().mockReturnThis(),
50
- simultaneousWithExternalGesture: jest.fn().mockReturnThis(),
51
- withRef: jest.fn().mockReturnThis()
52
- });
53
- return {
54
- Gesture: {
55
- Native: createGesture,
56
- Pan: createGesture,
57
- Tap: createGesture
58
- },
59
- GestureDetector: ({ children }) => children,
60
- GestureHandlerRootView: ({ children, ...props }) => mockReact.createElement("GestureHandlerRootView", props, children)
61
- };
62
- });
42
+ jest.mock("react-native-gesture-handler", () => require_jest_mocks_gesture_handler.gesture_handler_exports);
63
43
  jest.mock("react-native-svg", () => require_jest_mocks_svg.svg_exports);
64
44
  jest.mock("@yahoo/uds-icons/glyphMap", () => ({
65
45
  glyphMap: require_jest_mocks_icons.glyphMap,
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.cts","names":[],"sources":["../../src/jest/setup.ts"],"mappings":";;;AAcA;;iBAAgB,kBAAA,CAAA;;iBA0FA,eAAA,CAAA"}
1
+ {"version":3,"file":"setup.d.cts","names":[],"sources":["../../src/jest/setup.ts"],"mappings":";;;AA6BA;;iBAAgB,kBAAA,CAAA;;iBA8DA,eAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","names":[],"sources":["../../src/jest/setup.ts"],"mappings":";;;AAcA;;iBAAgB,kBAAA,CAAA;;iBA0FA,eAAA,CAAA"}
1
+ {"version":3,"file":"setup.d.ts","names":[],"sources":["../../src/jest/setup.ts"],"mappings":";;;AA6BA;;iBAAgB,kBAAA,CAAA;;iBA8DA,eAAA,CAAA"}
@@ -3,10 +3,17 @@ import { ICON_SIZE_MAP, glyphMap, glyphNames, svgGlyphNames, svgMap } from "./mo
3
3
  import { reanimated_exports } from "./mocks/reanimated.js";
4
4
  import { svg_exports } from "./mocks/svg.js";
5
5
  import { unistyles_exports, useAnimatedTheme, useAnimatedVariantColor } from "./mocks/unistyles.js";
6
+ import { gesture_handler_exports } from "./mocks/gesture-handler.js";
6
7
  //#region src/jest/setup.ts
7
8
  let isSetup = false;
9
+ function setupAnimationFrame() {
10
+ const testGlobal = globalThis;
11
+ testGlobal.requestAnimationFrame ??= (callback) => setTimeout(() => callback(Date.now()), 0);
12
+ testGlobal.cancelAnimationFrame ??= (handle) => clearTimeout(handle);
13
+ }
8
14
  function setupUDSMobileJest() {
9
15
  if (isSetup) return;
16
+ setupAnimationFrame();
10
17
  globalThis.expo = { modules: { UDSScreenCornerRadius: {
11
18
  getCornerRadiusSync: () => 0,
12
19
  getCornerRadius: async () => 0
@@ -31,34 +38,7 @@ function setupUDSMobileJest() {
31
38
  const mockReact = jest.requireActual("react");
32
39
  return { FullWindowOverlay: ({ children }) => mockReact.createElement("FullWindowOverlay", null, children) };
33
40
  });
34
- jest.mock("react-native-gesture-handler", () => {
35
- const mockReact = jest.requireActual("react");
36
- const createGesture = () => ({
37
- enabled: jest.fn().mockReturnThis(),
38
- onBegin: jest.fn().mockReturnThis(),
39
- onChange: jest.fn().mockReturnThis(),
40
- onEnd: jest.fn().mockReturnThis(),
41
- onFinalize: jest.fn().mockReturnThis(),
42
- onStart: jest.fn().mockReturnThis(),
43
- onTouchesDown: jest.fn().mockReturnThis(),
44
- onTouchesMove: jest.fn().mockReturnThis(),
45
- onUpdate: jest.fn().mockReturnThis(),
46
- manualActivation: jest.fn().mockReturnThis(),
47
- minDistance: jest.fn().mockReturnThis(),
48
- runOnJS: jest.fn().mockReturnThis(),
49
- simultaneousWithExternalGesture: jest.fn().mockReturnThis(),
50
- withRef: jest.fn().mockReturnThis()
51
- });
52
- return {
53
- Gesture: {
54
- Native: createGesture,
55
- Pan: createGesture,
56
- Tap: createGesture
57
- },
58
- GestureDetector: ({ children }) => children,
59
- GestureHandlerRootView: ({ children, ...props }) => mockReact.createElement("GestureHandlerRootView", props, children)
60
- };
61
- });
41
+ jest.mock("react-native-gesture-handler", () => gesture_handler_exports);
62
42
  jest.mock("react-native-svg", () => svg_exports);
63
43
  jest.mock("@yahoo/uds-icons/glyphMap", () => ({
64
44
  glyphMap,
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","names":["mockUnistyles","mockUnistyles.useAnimatedTheme","mockUnistyles.useAnimatedVariantColor","mockReanimated","mockSvg","mockIcons.glyphMap","mockIcons.glyphNames","mockIcons.svgMap","mockIcons.svgGlyphNames","mockIcons.ICON_SIZE_MAP"],"sources":["../../src/jest/setup.ts"],"sourcesContent":["/**\n * Registers Jest mocks for native dependencies.\n */\n\n// Jest allows variables prefixed with 'mock' in jest.mock() factories\nimport type React from 'react';\n\nimport * as mockIcons from './mocks/icons';\nimport * as mockReanimated from './mocks/reanimated';\nimport * as mockSvg from './mocks/svg';\nimport * as mockUnistyles from './mocks/unistyles';\n\nlet isSetup = false;\n\nexport function setupUDSMobileJest(): void {\n if (isSetup) {\n return;\n }\n\n (globalThis as { expo?: { modules?: Record<string, unknown> } }).expo = {\n modules: {\n UDSScreenCornerRadius: {\n getCornerRadiusSync: () => 0,\n getCornerRadius: async () => 0,\n },\n },\n };\n\n jest.mock('react-native-unistyles', () => mockUnistyles);\n\n jest.mock('react-native-unistyles/reanimated', () => ({\n useAnimatedTheme: mockUnistyles.useAnimatedTheme,\n useAnimatedVariantColor: mockUnistyles.useAnimatedVariantColor,\n }));\n\n jest.mock('react-native-reanimated', () => mockReanimated);\n\n jest.mock('react-native-safe-area-context', () => ({\n useSafeAreaInsets: () => ({ top: 0, right: 0, bottom: 0, left: 0 }),\n SafeAreaProvider: ({ children }: { children: React.ReactNode }) => children,\n SafeAreaView: ({ children }: { children: React.ReactNode }) => children,\n }));\n\n jest.mock('react-native-screens', () => {\n const mockReact = jest.requireActual('react') as typeof React;\n\n return {\n FullWindowOverlay: ({ children }: { children: React.ReactNode }) =>\n mockReact.createElement('FullWindowOverlay', null, children),\n };\n });\n\n jest.mock('react-native-gesture-handler', () => {\n const mockReact = jest.requireActual('react') as typeof React;\n\n const createGesture = () => ({\n enabled: jest.fn().mockReturnThis(),\n onBegin: jest.fn().mockReturnThis(),\n onChange: jest.fn().mockReturnThis(),\n onEnd: jest.fn().mockReturnThis(),\n onFinalize: jest.fn().mockReturnThis(),\n onStart: jest.fn().mockReturnThis(),\n onTouchesDown: jest.fn().mockReturnThis(),\n onTouchesMove: jest.fn().mockReturnThis(),\n onUpdate: jest.fn().mockReturnThis(),\n manualActivation: jest.fn().mockReturnThis(),\n minDistance: jest.fn().mockReturnThis(),\n runOnJS: jest.fn().mockReturnThis(),\n simultaneousWithExternalGesture: jest.fn().mockReturnThis(),\n withRef: jest.fn().mockReturnThis(),\n });\n\n return {\n Gesture: {\n Native: createGesture,\n Pan: createGesture,\n Tap: createGesture,\n },\n GestureDetector: ({ children }: { children: React.ReactNode }) => children,\n GestureHandlerRootView: ({ children, ...props }: { children: React.ReactNode }) =>\n mockReact.createElement('GestureHandlerRootView', props, children),\n };\n });\n\n jest.mock('react-native-svg', () => mockSvg);\n\n jest.mock('@yahoo/uds-icons/glyphMap', () => ({\n glyphMap: mockIcons.glyphMap,\n glyphNames: mockIcons.glyphNames,\n }));\n\n jest.mock('@yahoo/uds-icons/svgMap', () => ({\n svgMap: mockIcons.svgMap,\n svgGlyphNames: mockIcons.svgGlyphNames,\n }));\n\n jest.mock('@yahoo/uds-icons/tokens', () => ({\n ICON_SIZE_MAP: mockIcons.ICON_SIZE_MAP,\n }));\n\n isSetup = true;\n}\n\n/** @internal */\nexport function resetSetupState(): void {\n isSetup = false;\n}\n"],"mappings":";;;;;;AAYA,IAAI,UAAU;AAEd,SAAgB,qBAA2B;CACzC,IAAI,SACF;CAGF,WAAiE,OAAO,EACtE,SAAS,EACP,uBAAuB;EACrB,2BAA2B;EAC3B,iBAAiB,YAAY;EAC9B,EACF,EACF;CAED,KAAK,KAAK,gCAAgCA,kBAAc;CAExD,KAAK,KAAK,4CAA4C;EAClCC;EACOC;EAC1B,EAAE;CAEH,KAAK,KAAK,iCAAiCC,mBAAe;CAE1D,KAAK,KAAK,yCAAyC;EACjD,0BAA0B;GAAE,KAAK;GAAG,OAAO;GAAG,QAAQ;GAAG,MAAM;GAAG;EAClE,mBAAmB,EAAE,eAA8C;EACnE,eAAe,EAAE,eAA8C;EAChE,EAAE;CAEH,KAAK,KAAK,8BAA8B;EACtC,MAAM,YAAY,KAAK,cAAc,QAAQ;EAE7C,OAAO,EACL,oBAAoB,EAAE,eACpB,UAAU,cAAc,qBAAqB,MAAM,SAAS,EAC/D;GACD;CAEF,KAAK,KAAK,sCAAsC;EAC9C,MAAM,YAAY,KAAK,cAAc,QAAQ;EAE7C,MAAM,uBAAuB;GAC3B,SAAS,KAAK,IAAI,CAAC,gBAAgB;GACnC,SAAS,KAAK,IAAI,CAAC,gBAAgB;GACnC,UAAU,KAAK,IAAI,CAAC,gBAAgB;GACpC,OAAO,KAAK,IAAI,CAAC,gBAAgB;GACjC,YAAY,KAAK,IAAI,CAAC,gBAAgB;GACtC,SAAS,KAAK,IAAI,CAAC,gBAAgB;GACnC,eAAe,KAAK,IAAI,CAAC,gBAAgB;GACzC,eAAe,KAAK,IAAI,CAAC,gBAAgB;GACzC,UAAU,KAAK,IAAI,CAAC,gBAAgB;GACpC,kBAAkB,KAAK,IAAI,CAAC,gBAAgB;GAC5C,aAAa,KAAK,IAAI,CAAC,gBAAgB;GACvC,SAAS,KAAK,IAAI,CAAC,gBAAgB;GACnC,iCAAiC,KAAK,IAAI,CAAC,gBAAgB;GAC3D,SAAS,KAAK,IAAI,CAAC,gBAAgB;GACpC;EAED,OAAO;GACL,SAAS;IACP,QAAQ;IACR,KAAK;IACL,KAAK;IACN;GACD,kBAAkB,EAAE,eAA8C;GAClE,yBAAyB,EAAE,UAAU,GAAG,YACtC,UAAU,cAAc,0BAA0B,OAAO,SAAS;GACrE;GACD;CAEF,KAAK,KAAK,0BAA0BC,YAAQ;CAE5C,KAAK,KAAK,oCAAoC;EAClCC;EACEC;EACb,EAAE;CAEH,KAAK,KAAK,kCAAkC;EAClCC;EACOC;EAChB,EAAE;CAEH,KAAK,KAAK,kCAAkC,EAC3BC,eAChB,EAAE;CAEH,UAAU;;;AAIZ,SAAgB,kBAAwB;CACtC,UAAU"}
1
+ {"version":3,"file":"setup.js","names":["mockUnistyles","mockUnistyles.useAnimatedTheme","mockUnistyles.useAnimatedVariantColor","mockReanimated","mockGestureHandler","mockSvg","mockIcons.glyphMap","mockIcons.glyphNames","mockIcons.svgMap","mockIcons.svgGlyphNames","mockIcons.ICON_SIZE_MAP"],"sources":["../../src/jest/setup.ts"],"sourcesContent":["/**\n * Registers Jest mocks for native dependencies.\n */\n\n// Jest allows variables prefixed with 'mock' in jest.mock() factories\nimport type React from 'react';\n\nimport * as mockGestureHandler from './mocks/gesture-handler';\nimport * as mockIcons from './mocks/icons';\nimport * as mockReanimated from './mocks/reanimated';\nimport * as mockSvg from './mocks/svg';\nimport * as mockUnistyles from './mocks/unistyles';\n\nlet isSetup = false;\n\ntype AnimationFrameHandle = ReturnType<typeof setTimeout>;\n\ntype AnimationFrameGlobal = {\n cancelAnimationFrame?: (handle: AnimationFrameHandle) => void;\n requestAnimationFrame?: (callback: (timestamp: number) => void) => AnimationFrameHandle;\n};\n\nfunction setupAnimationFrame(): void {\n const testGlobal = globalThis as unknown as AnimationFrameGlobal;\n\n testGlobal.requestAnimationFrame ??= (callback) => setTimeout(() => callback(Date.now()), 0);\n testGlobal.cancelAnimationFrame ??= (handle) => clearTimeout(handle);\n}\n\nexport function setupUDSMobileJest(): void {\n if (isSetup) {\n return;\n }\n\n setupAnimationFrame();\n\n (globalThis as { expo?: { modules?: Record<string, unknown> } }).expo = {\n modules: {\n UDSScreenCornerRadius: {\n getCornerRadiusSync: () => 0,\n getCornerRadius: async () => 0,\n },\n },\n };\n\n jest.mock('react-native-unistyles', () => mockUnistyles);\n\n jest.mock('react-native-unistyles/reanimated', () => ({\n useAnimatedTheme: mockUnistyles.useAnimatedTheme,\n useAnimatedVariantColor: mockUnistyles.useAnimatedVariantColor,\n }));\n\n jest.mock('react-native-reanimated', () => mockReanimated);\n\n jest.mock('react-native-safe-area-context', () => ({\n useSafeAreaInsets: () => ({ top: 0, right: 0, bottom: 0, left: 0 }),\n SafeAreaProvider: ({ children }: { children: React.ReactNode }) => children,\n SafeAreaView: ({ children }: { children: React.ReactNode }) => children,\n }));\n\n jest.mock('react-native-screens', () => {\n const mockReact = jest.requireActual('react') as typeof React;\n\n return {\n FullWindowOverlay: ({ children }: { children: React.ReactNode }) =>\n mockReact.createElement('FullWindowOverlay', null, children),\n };\n });\n\n jest.mock('react-native-gesture-handler', () => mockGestureHandler);\n\n jest.mock('react-native-svg', () => mockSvg);\n\n jest.mock('@yahoo/uds-icons/glyphMap', () => ({\n glyphMap: mockIcons.glyphMap,\n glyphNames: mockIcons.glyphNames,\n }));\n\n jest.mock('@yahoo/uds-icons/svgMap', () => ({\n svgMap: mockIcons.svgMap,\n svgGlyphNames: mockIcons.svgGlyphNames,\n }));\n\n jest.mock('@yahoo/uds-icons/tokens', () => ({\n ICON_SIZE_MAP: mockIcons.ICON_SIZE_MAP,\n }));\n\n isSetup = true;\n}\n\n/** @internal */\nexport function resetSetupState(): void {\n isSetup = false;\n}\n"],"mappings":";;;;;;;AAaA,IAAI,UAAU;AASd,SAAS,sBAA4B;CACnC,MAAM,aAAa;CAEnB,WAAW,2BAA2B,aAAa,iBAAiB,SAAS,KAAK,KAAK,CAAC,EAAE,EAAE;CAC5F,WAAW,0BAA0B,WAAW,aAAa,OAAO;;AAGtE,SAAgB,qBAA2B;CACzC,IAAI,SACF;CAGF,qBAAqB;CAErB,WAAiE,OAAO,EACtE,SAAS,EACP,uBAAuB;EACrB,2BAA2B;EAC3B,iBAAiB,YAAY;EAC9B,EACF,EACF;CAED,KAAK,KAAK,gCAAgCA,kBAAc;CAExD,KAAK,KAAK,4CAA4C;EAClCC;EACOC;EAC1B,EAAE;CAEH,KAAK,KAAK,iCAAiCC,mBAAe;CAE1D,KAAK,KAAK,yCAAyC;EACjD,0BAA0B;GAAE,KAAK;GAAG,OAAO;GAAG,QAAQ;GAAG,MAAM;GAAG;EAClE,mBAAmB,EAAE,eAA8C;EACnE,eAAe,EAAE,eAA8C;EAChE,EAAE;CAEH,KAAK,KAAK,8BAA8B;EACtC,MAAM,YAAY,KAAK,cAAc,QAAQ;EAE7C,OAAO,EACL,oBAAoB,EAAE,eACpB,UAAU,cAAc,qBAAqB,MAAM,SAAS,EAC/D;GACD;CAEF,KAAK,KAAK,sCAAsCC,wBAAmB;CAEnE,KAAK,KAAK,0BAA0BC,YAAQ;CAE5C,KAAK,KAAK,oCAAoC;EAClCC;EACEC;EACb,EAAE;CAEH,KAAK,KAAK,kCAAkC;EAClCC;EACOC;EAChB,EAAE;CAEH,KAAK,KAAK,kCAAkC,EAC3BC,eAChB,EAAE;CAEH,UAAU;;;AAIZ,SAAgB,kBAAwB;CACtC,UAAU"}
@@ -2156,7 +2156,7 @@ export declare const switchStyles: {
2156
2156
  color: string;
2157
2157
  };
2158
2158
  handle: { height: number; width: number; backgroundColor: string; boxShadow: string };
2159
- handleIcon: { fontSize: number; iconSizeToken: 'sm'; lineHeight: number; color: string };
2159
+ handleIcon: { fontSize: number; iconSizeToken: 'sm' | 'xs'; lineHeight: number; color: string };
2160
2160
  switch: {
2161
2161
  borderWidth: number;
2162
2162
  height: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yahoo/uds-mobile",
3
- "version": "2.19.0",
3
+ "version": "2.20.1",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "uds-mobile": "./cli/uds-mobile.js"
@@ -210,6 +210,16 @@
210
210
  "default": "./dist/components/Link.cjs"
211
211
  }
212
212
  },
213
+ "./Modal": {
214
+ "import": {
215
+ "types": "./dist/components/Modal/index.d.ts",
216
+ "default": "./dist/components/Modal/index.js"
217
+ },
218
+ "require": {
219
+ "types": "./dist/components/Modal/index.d.cts",
220
+ "default": "./dist/components/Modal/index.cjs"
221
+ }
222
+ },
213
223
  "./Pressable": {
214
224
  "import": {
215
225
  "types": "./dist/components/Pressable.d.ts",