@yahoo/uds-mobile 2.23.3 → 2.24.0-beta.2
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.
- package/README.md +4 -12
- package/dist/bin/automated-config/dist/generated/generatedConfigs.mjs +92 -46
- package/dist/components/BottomSheet/BottomSheet.cjs +1 -1
- package/dist/components/BottomSheet/BottomSheet.js +1 -1
- package/dist/components/Button/buttonTheme.cjs +21 -8
- package/dist/components/Button/buttonTheme.d.cts +16 -4
- package/dist/components/Button/buttonTheme.d.cts.map +1 -1
- package/dist/components/Button/buttonTheme.d.ts +16 -4
- package/dist/components/Button/buttonTheme.d.ts.map +1 -1
- package/dist/components/Button/buttonTheme.js +21 -8
- package/dist/components/Button/buttonTheme.js.map +1 -1
- package/dist/components/Button.cjs +20 -7
- package/dist/components/Button.d.cts +7 -0
- package/dist/components/Button.d.cts.map +1 -1
- package/dist/components/Button.d.ts +7 -0
- package/dist/components/Button.d.ts.map +1 -1
- package/dist/components/Button.js +20 -7
- package/dist/components/Button.js.map +1 -1
- package/dist/components/Checkbox.cjs +30 -7
- package/dist/components/Checkbox.d.cts +7 -0
- package/dist/components/Checkbox.d.cts.map +1 -1
- package/dist/components/Checkbox.d.ts +7 -0
- package/dist/components/Checkbox.d.ts.map +1 -1
- package/dist/components/Checkbox.js +30 -7
- package/dist/components/Checkbox.js.map +1 -1
- package/dist/components/Chip/ChipBase.cjs +23 -9
- package/dist/components/Chip/ChipBase.d.cts.map +1 -1
- package/dist/components/Chip/ChipBase.d.ts.map +1 -1
- package/dist/components/Chip/ChipBase.js +23 -9
- package/dist/components/Chip/ChipBase.js.map +1 -1
- package/dist/components/Chip/ChipDismissible.cjs +3 -1
- package/dist/components/Chip/ChipDismissible.js +3 -1
- package/dist/components/Chip/ChipDismissible.js.map +1 -1
- package/dist/components/Chip/types.d.cts +7 -0
- package/dist/components/Chip/types.d.cts.map +1 -1
- package/dist/components/Chip/types.d.ts +7 -0
- package/dist/components/Chip/types.d.ts.map +1 -1
- package/dist/components/Icon.cjs +4 -1
- package/dist/components/Icon.d.cts +9 -1
- package/dist/components/Icon.d.cts.map +1 -1
- package/dist/components/Icon.d.ts +9 -1
- package/dist/components/Icon.d.ts.map +1 -1
- package/dist/components/Icon.js +4 -1
- package/dist/components/Icon.js.map +1 -1
- package/dist/components/IconButton.js.map +1 -1
- package/dist/components/Radio/Radio.cjs +29 -11
- package/dist/components/Radio/Radio.d.cts +7 -0
- package/dist/components/Radio/Radio.d.cts.map +1 -1
- package/dist/components/Radio/Radio.d.ts +7 -0
- package/dist/components/Radio/Radio.d.ts.map +1 -1
- package/dist/components/Radio/Radio.js +29 -11
- package/dist/components/Radio/Radio.js.map +1 -1
- package/dist/components/Switch.cjs +29 -6
- package/dist/components/Switch.d.cts +7 -0
- package/dist/components/Switch.d.cts.map +1 -1
- package/dist/components/Switch.d.ts +7 -0
- package/dist/components/Switch.d.ts.map +1 -1
- package/dist/components/Switch.js +29 -6
- package/dist/components/Switch.js.map +1 -1
- package/dist/components/Tabs/Tab.cjs +12 -2
- package/dist/components/Tabs/Tab.d.cts.map +1 -1
- package/dist/components/Tabs/Tab.d.ts.map +1 -1
- package/dist/components/Tabs/Tab.js +12 -2
- package/dist/components/Tabs/Tab.js.map +1 -1
- package/dist/components/Tabs/Tabs.cjs +8 -3
- package/dist/components/Tabs/Tabs.d.cts +9 -1
- package/dist/components/Tabs/Tabs.d.cts.map +1 -1
- package/dist/components/Tabs/Tabs.d.ts +9 -1
- package/dist/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/components/Tabs/Tabs.js +8 -3
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/Tabs/tabsContexts.d.cts +2 -0
- package/dist/components/Tabs/tabsContexts.d.cts.map +1 -1
- package/dist/components/Tabs/tabsContexts.d.ts +2 -0
- package/dist/components/Tabs/tabsContexts.d.ts.map +1 -1
- package/dist/components/Tabs/tabsContexts.js.map +1 -1
- package/dist/components/Text.cjs +4 -1
- package/dist/components/Text.d.cts +10 -2
- package/dist/components/Text.d.cts.map +1 -1
- package/dist/components/Text.d.ts +10 -2
- package/dist/components/Text.d.ts.map +1 -1
- package/dist/components/Text.js +4 -1
- package/dist/components/Text.js.map +1 -1
- package/dist/components/UDSProvider.cjs +6 -2
- package/dist/components/UDSProvider.d.cts +8 -0
- package/dist/components/UDSProvider.d.cts.map +1 -1
- package/dist/components/UDSProvider.d.ts +8 -0
- package/dist/components/UDSProvider.d.ts.map +1 -1
- package/dist/components/UDSProvider.js +6 -2
- package/dist/components/UDSProvider.js.map +1 -1
- package/dist/components/internal/Overlay/index.cjs +1 -1
- package/dist/components/internal/Overlay/index.js +1 -1
- package/dist/fontScaling/FontScalingContext.cjs +35 -0
- package/dist/fontScaling/FontScalingContext.d.cts +38 -0
- package/dist/fontScaling/FontScalingContext.d.cts.map +1 -0
- package/dist/fontScaling/FontScalingContext.d.ts +38 -0
- package/dist/fontScaling/FontScalingContext.d.ts.map +1 -0
- package/dist/fontScaling/FontScalingContext.js +34 -0
- package/dist/fontScaling/FontScalingContext.js.map +1 -0
- package/dist/fontScaling/constants.cjs +72 -0
- package/dist/fontScaling/constants.d.cts +49 -0
- package/dist/fontScaling/constants.d.cts.map +1 -0
- package/dist/fontScaling/constants.d.ts +49 -0
- package/dist/fontScaling/constants.d.ts.map +1 -0
- package/dist/fontScaling/constants.js +70 -0
- package/dist/fontScaling/constants.js.map +1 -0
- package/dist/fontScaling/index.cjs +13 -0
- package/dist/fontScaling/index.d.cts +8 -0
- package/dist/fontScaling/index.d.ts +8 -0
- package/dist/fontScaling/index.js +6 -0
- package/dist/fontScaling/resolveMaxFontSizeMultiplier.cjs +38 -0
- package/dist/fontScaling/resolveMaxFontSizeMultiplier.d.cts +36 -0
- package/dist/fontScaling/resolveMaxFontSizeMultiplier.d.cts.map +1 -0
- package/dist/fontScaling/resolveMaxFontSizeMultiplier.d.ts +36 -0
- package/dist/fontScaling/resolveMaxFontSizeMultiplier.d.ts.map +1 -0
- package/dist/fontScaling/resolveMaxFontSizeMultiplier.js +39 -0
- package/dist/fontScaling/resolveMaxFontSizeMultiplier.js.map +1 -0
- package/dist/fontScaling/types.cjs +1 -0
- package/dist/fontScaling/types.d.cts +51 -0
- package/dist/fontScaling/types.d.cts.map +1 -0
- package/dist/fontScaling/types.d.ts +51 -0
- package/dist/fontScaling/types.d.ts.map +1 -0
- package/dist/fontScaling/types.js +1 -0
- package/dist/fontScaling/useFontScale.cjs +32 -0
- package/dist/fontScaling/useFontScale.d.cts +18 -0
- package/dist/fontScaling/useFontScale.d.cts.map +1 -0
- package/dist/fontScaling/useFontScale.d.ts +18 -0
- package/dist/fontScaling/useFontScale.d.ts.map +1 -0
- package/dist/fontScaling/useFontScale.js +32 -0
- package/dist/fontScaling/useFontScale.js.map +1 -0
- package/dist/fontScaling/useMaxFontSizeMultiplier.cjs +24 -0
- package/dist/fontScaling/useMaxFontSizeMultiplier.d.cts +16 -0
- package/dist/fontScaling/useMaxFontSizeMultiplier.d.cts.map +1 -0
- package/dist/fontScaling/useMaxFontSizeMultiplier.d.ts +16 -0
- package/dist/fontScaling/useMaxFontSizeMultiplier.d.ts.map +1 -0
- package/dist/fontScaling/useMaxFontSizeMultiplier.js +24 -0
- package/dist/fontScaling/useMaxFontSizeMultiplier.js.map +1 -0
- package/dist/jest/mocks/react-native.cjs +19 -4
- package/dist/jest/mocks/react-native.d.cts +8 -5
- package/dist/jest/mocks/react-native.d.cts.map +1 -1
- package/dist/jest/mocks/react-native.d.ts +8 -5
- package/dist/jest/mocks/react-native.d.ts.map +1 -1
- package/dist/jest/mocks/react-native.js +18 -5
- package/dist/jest/mocks/react-native.js.map +1 -1
- package/dist/jest/mocks/styles.cjs +15 -0
- package/dist/jest/mocks/styles.d.cts.map +1 -1
- package/dist/jest/mocks/styles.d.ts.map +1 -1
- package/dist/jest/mocks/styles.js +15 -0
- package/dist/jest/mocks/styles.js.map +1 -1
- package/dist/jest/setup.cjs +4 -0
- package/dist/jest/setup.d.cts.map +1 -1
- package/dist/jest/setup.d.ts.map +1 -1
- package/dist/jest/setup.js +4 -0
- package/dist/jest/setup.js.map +1 -1
- package/dist/portal.d.cts.map +1 -1
- package/dist/portal.d.ts.map +1 -1
- package/dist/portal.js.map +1 -1
- package/dist/types/dist/index.d.cts.map +1 -1
- package/dist/types/dist/index.d.ts.map +1 -1
- package/fonts/uds-icons.ttf +0 -0
- package/generated/styles.d.ts +5 -28
- package/generated/unistyles.d.ts +0 -27
- package/package.json +11 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
|
|
2
|
+
import { TextVariant } from "../components/Text.js";
|
|
3
|
+
|
|
4
|
+
//#region src/fontScaling/useMaxFontSizeMultiplier.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* Resolves the `maxFontSizeMultiplier` for a text variant (or `'control'` for
|
|
7
|
+
* control-internal text/icons), combining an explicit prop value, the nearest
|
|
8
|
+
* `UDSFontScalingProvider` config, and the built-in defaults.
|
|
9
|
+
*
|
|
10
|
+
* Returns a value to pass directly to React Native: a cap (>= 1), `0`
|
|
11
|
+
* (force-uncap), or `undefined` (native default / inherit).
|
|
12
|
+
*/
|
|
13
|
+
declare function useMaxFontSizeMultiplier(variant?: TextVariant | 'control', explicit?: number | null): number | undefined;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { useMaxFontSizeMultiplier };
|
|
16
|
+
//# sourceMappingURL=useMaxFontSizeMultiplier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMaxFontSizeMultiplier.d.ts","names":[],"sources":["../../src/fontScaling/useMaxFontSizeMultiplier.ts"],"mappings":";;;;;;AAEsD;;;;;;iBAY7C,wBAAA,CACP,OAAA,GAAU,WAAA,cACV,QAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/*! © 2026 Yahoo, Inc. UDS Mobile v0.0.0-development */
|
|
2
|
+
import { FontScalingContext } from "./FontScalingContext.js";
|
|
3
|
+
import { resolveMaxFontSizeMultiplier } from "./resolveMaxFontSizeMultiplier.js";
|
|
4
|
+
import { useContext } from "react";
|
|
5
|
+
//#region src/fontScaling/useMaxFontSizeMultiplier.ts
|
|
6
|
+
/**
|
|
7
|
+
* Resolves the `maxFontSizeMultiplier` for a text variant (or `'control'` for
|
|
8
|
+
* control-internal text/icons), combining an explicit prop value, the nearest
|
|
9
|
+
* `UDSFontScalingProvider` config, and the built-in defaults.
|
|
10
|
+
*
|
|
11
|
+
* Returns a value to pass directly to React Native: a cap (>= 1), `0`
|
|
12
|
+
* (force-uncap), or `undefined` (native default / inherit).
|
|
13
|
+
*/
|
|
14
|
+
function useMaxFontSizeMultiplier(variant, explicit) {
|
|
15
|
+
return resolveMaxFontSizeMultiplier({
|
|
16
|
+
explicit,
|
|
17
|
+
config: useContext(FontScalingContext),
|
|
18
|
+
variant
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//#endregion
|
|
22
|
+
export { useMaxFontSizeMultiplier };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=useMaxFontSizeMultiplier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMaxFontSizeMultiplier.js","names":[],"sources":["../../src/fontScaling/useMaxFontSizeMultiplier.ts"],"sourcesContent":["import { useContext } from 'react';\n\nimport type { TextVariant } from '../components/Text';\nimport { FontScalingContext } from './FontScalingContext';\nimport { resolveMaxFontSizeMultiplier } from './resolveMaxFontSizeMultiplier';\n\n/**\n * Resolves the `maxFontSizeMultiplier` for a text variant (or `'control'` for\n * control-internal text/icons), combining an explicit prop value, the nearest\n * `UDSFontScalingProvider` config, and the built-in defaults.\n *\n * Returns a value to pass directly to React Native: a cap (>= 1), `0`\n * (force-uncap), or `undefined` (native default / inherit).\n */\nfunction useMaxFontSizeMultiplier(\n variant?: TextVariant | 'control',\n explicit?: number | null,\n): number | undefined {\n const config = useContext(FontScalingContext);\n return resolveMaxFontSizeMultiplier({ explicit, config, variant });\n}\n\nexport { useMaxFontSizeMultiplier };\n"],"mappings":";;;;;;;;;;;;;AAcA,SAAS,yBACP,SACA,UACoB;CAEpB,OAAO,6BAA6B;EAAE;EAAU,QADjC,WAAW,mBAC4B;EAAE;EAAS,CAAC"}
|
|
@@ -76,20 +76,33 @@ const Platform = {
|
|
|
76
76
|
};
|
|
77
77
|
const SCREEN_WIDTH = 375;
|
|
78
78
|
const SCREEN_HEIGHT = 812;
|
|
79
|
+
let mockFontScale = 1;
|
|
80
|
+
const dimensionListeners = /* @__PURE__ */ new Set();
|
|
81
|
+
/** Set the mocked OS font scale and notify Dimensions 'change' listeners. */
|
|
82
|
+
const __setMockFontScale = (fontScale) => {
|
|
83
|
+
mockFontScale = fontScale;
|
|
84
|
+
dimensionListeners.forEach((listener) => listener());
|
|
85
|
+
};
|
|
86
|
+
const __resetMockFontScale = () => {
|
|
87
|
+
__setMockFontScale(1);
|
|
88
|
+
};
|
|
79
89
|
const Dimensions = {
|
|
80
90
|
get: (_dim) => ({
|
|
81
91
|
width: SCREEN_WIDTH,
|
|
82
92
|
height: SCREEN_HEIGHT,
|
|
83
93
|
scale: 2,
|
|
84
|
-
fontScale:
|
|
94
|
+
fontScale: mockFontScale
|
|
85
95
|
}),
|
|
86
96
|
set: jest.fn(),
|
|
87
|
-
addEventListener: jest.fn(() =>
|
|
97
|
+
addEventListener: jest.fn((_event, listener) => {
|
|
98
|
+
dimensionListeners.add(listener);
|
|
99
|
+
return { remove: () => dimensionListeners.delete(listener) };
|
|
100
|
+
}),
|
|
88
101
|
removeEventListener: jest.fn()
|
|
89
102
|
};
|
|
90
103
|
const PixelRatio = {
|
|
91
104
|
get: () => 2,
|
|
92
|
-
getFontScale: () =>
|
|
105
|
+
getFontScale: () => mockFontScale,
|
|
93
106
|
getPixelSizeForLayoutSize: (size) => size * 2,
|
|
94
107
|
roundToNearestPixel: (size) => Math.round(size * 2) / 2
|
|
95
108
|
};
|
|
@@ -155,7 +168,7 @@ const useWindowDimensions = () => ({
|
|
|
155
168
|
width: SCREEN_WIDTH,
|
|
156
169
|
height: SCREEN_HEIGHT,
|
|
157
170
|
scale: 2,
|
|
158
|
-
fontScale:
|
|
171
|
+
fontScale: mockFontScale
|
|
159
172
|
});
|
|
160
173
|
const ReactNative = {
|
|
161
174
|
View,
|
|
@@ -222,6 +235,8 @@ exports.TouchableHighlight = TouchableHighlight;
|
|
|
222
235
|
exports.TouchableOpacity = TouchableOpacity;
|
|
223
236
|
exports.TouchableWithoutFeedback = TouchableWithoutFeedback;
|
|
224
237
|
exports.View = View;
|
|
238
|
+
exports.__resetMockFontScale = __resetMockFontScale;
|
|
239
|
+
exports.__setMockFontScale = __setMockFontScale;
|
|
225
240
|
exports.default = ReactNative;
|
|
226
241
|
exports.useColorScheme = useColorScheme;
|
|
227
242
|
exports.useWindowDimensions = useWindowDimensions;
|
|
@@ -63,6 +63,9 @@ declare const Platform: {
|
|
|
63
63
|
};
|
|
64
64
|
};
|
|
65
65
|
};
|
|
66
|
+
/** Set the mocked OS font scale and notify Dimensions 'change' listeners. */
|
|
67
|
+
declare const __setMockFontScale: (fontScale: number) => void;
|
|
68
|
+
declare const __resetMockFontScale: () => void;
|
|
66
69
|
declare const Dimensions: {
|
|
67
70
|
get: (_dim: "window" | "screen") => {
|
|
68
71
|
width: number;
|
|
@@ -72,8 +75,8 @@ declare const Dimensions: {
|
|
|
72
75
|
};
|
|
73
76
|
set: jest.Mock<any, any, any>;
|
|
74
77
|
addEventListener: jest.Mock<{
|
|
75
|
-
remove:
|
|
76
|
-
}, [], any>;
|
|
78
|
+
remove: () => boolean;
|
|
79
|
+
}, [_event: "change", listener: () => void], any>;
|
|
77
80
|
removeEventListener: jest.Mock<any, any, any>;
|
|
78
81
|
};
|
|
79
82
|
declare const PixelRatio: {
|
|
@@ -228,8 +231,8 @@ declare const ReactNative: {
|
|
|
228
231
|
};
|
|
229
232
|
set: jest.Mock<any, any, any>;
|
|
230
233
|
addEventListener: jest.Mock<{
|
|
231
|
-
remove:
|
|
232
|
-
}, [], any>;
|
|
234
|
+
remove: () => boolean;
|
|
235
|
+
}, [_event: "change", listener: () => void], any>;
|
|
233
236
|
removeEventListener: jest.Mock<any, any, any>;
|
|
234
237
|
};
|
|
235
238
|
PixelRatio: {
|
|
@@ -317,5 +320,5 @@ declare const ReactNative: {
|
|
|
317
320
|
};
|
|
318
321
|
};
|
|
319
322
|
//#endregion
|
|
320
|
-
export { AccessibilityInfo, ActivityIndicator, Animated, AppState, Appearance, BackHandler, Dimensions, FlatList, I18nManager, Image, Keyboard, KeyboardAvoidingView, Linking, Modal, NativeEventEmitter, PixelRatio, Platform, Pressable, RefreshControl, SafeAreaView, ScrollView, SectionList, StyleSheet, Switch, Text, TextInput, TouchableHighlight, TouchableOpacity, TouchableWithoutFeedback, View, ReactNative as default, useColorScheme, useWindowDimensions };
|
|
323
|
+
export { AccessibilityInfo, ActivityIndicator, Animated, AppState, Appearance, BackHandler, Dimensions, FlatList, I18nManager, Image, Keyboard, KeyboardAvoidingView, Linking, Modal, NativeEventEmitter, PixelRatio, Platform, Pressable, RefreshControl, SafeAreaView, ScrollView, SectionList, StyleSheet, Switch, Text, TextInput, TouchableHighlight, TouchableOpacity, TouchableWithoutFeedback, View, __resetMockFontScale, __setMockFontScale, ReactNative as default, useColorScheme, useWindowDimensions };
|
|
321
324
|
//# sourceMappingURL=react-native.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-native.d.cts","names":[],"sources":["../../../src/jest/mocks/react-native.tsx"],"mappings":";;;;UAgBU,kBAAA;EACR,QAAA,GAAW,SAAA;EACX,KAAA;EACA,MAAA;EACA,iBAAA;EACA,kBAAA;EAAA,CACC,GAAA;AAAA;AAAA,cAaG,IAAA,EAAI,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACJ,IAAA,EAAI,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACJ,KAAA,EAAK,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACL,UAAA,EAAU,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACV,SAAA,EAAS,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACT,gBAAA,EAAgB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cAChB,kBAAA,EAAkB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cAClB,wBAAA,EAAwB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACxB,SAAA,EAAS,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACT,QAAA,EAAQ,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACR,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACX,iBAAA,EAAiB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACjB,YAAA,EAAY,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACZ,KAAA,EAAK,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACL,MAAA,EAAM,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACN,cAAA,EAAc,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACd,oBAAA,EAAoB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cAGpB,UAAA;qBACe,MAAA,kBAAsB,MAAA,EAAU,CAAA,KAAI,CAAA;;4BAO/B,MAAA;;;;;;;;;;;;;;;;;cAOpB,QAAA;;;qBAGe,MAAA,mBAAuB,MAAA,EAAU,CAAA,KAAI,CAAA,OAAQ,CAAA
|
|
1
|
+
{"version":3,"file":"react-native.d.cts","names":[],"sources":["../../../src/jest/mocks/react-native.tsx"],"mappings":"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"}
|
|
@@ -63,6 +63,9 @@ declare const Platform: {
|
|
|
63
63
|
};
|
|
64
64
|
};
|
|
65
65
|
};
|
|
66
|
+
/** Set the mocked OS font scale and notify Dimensions 'change' listeners. */
|
|
67
|
+
declare const __setMockFontScale: (fontScale: number) => void;
|
|
68
|
+
declare const __resetMockFontScale: () => void;
|
|
66
69
|
declare const Dimensions: {
|
|
67
70
|
get: (_dim: "window" | "screen") => {
|
|
68
71
|
width: number;
|
|
@@ -72,8 +75,8 @@ declare const Dimensions: {
|
|
|
72
75
|
};
|
|
73
76
|
set: jest.Mock<any, any, any>;
|
|
74
77
|
addEventListener: jest.Mock<{
|
|
75
|
-
remove:
|
|
76
|
-
}, [], any>;
|
|
78
|
+
remove: () => boolean;
|
|
79
|
+
}, [_event: "change", listener: () => void], any>;
|
|
77
80
|
removeEventListener: jest.Mock<any, any, any>;
|
|
78
81
|
};
|
|
79
82
|
declare const PixelRatio: {
|
|
@@ -228,8 +231,8 @@ declare const ReactNative: {
|
|
|
228
231
|
};
|
|
229
232
|
set: jest.Mock<any, any, any>;
|
|
230
233
|
addEventListener: jest.Mock<{
|
|
231
|
-
remove:
|
|
232
|
-
}, [], any>;
|
|
234
|
+
remove: () => boolean;
|
|
235
|
+
}, [_event: "change", listener: () => void], any>;
|
|
233
236
|
removeEventListener: jest.Mock<any, any, any>;
|
|
234
237
|
};
|
|
235
238
|
PixelRatio: {
|
|
@@ -317,5 +320,5 @@ declare const ReactNative: {
|
|
|
317
320
|
};
|
|
318
321
|
};
|
|
319
322
|
//#endregion
|
|
320
|
-
export { AccessibilityInfo, ActivityIndicator, Animated, AppState, Appearance, BackHandler, Dimensions, FlatList, I18nManager, Image, Keyboard, KeyboardAvoidingView, Linking, Modal, NativeEventEmitter, PixelRatio, Platform, Pressable, RefreshControl, SafeAreaView, ScrollView, SectionList, StyleSheet, Switch, Text, TextInput, TouchableHighlight, TouchableOpacity, TouchableWithoutFeedback, View, ReactNative as default, useColorScheme, useWindowDimensions };
|
|
323
|
+
export { AccessibilityInfo, ActivityIndicator, Animated, AppState, Appearance, BackHandler, Dimensions, FlatList, I18nManager, Image, Keyboard, KeyboardAvoidingView, Linking, Modal, NativeEventEmitter, PixelRatio, Platform, Pressable, RefreshControl, SafeAreaView, ScrollView, SectionList, StyleSheet, Switch, Text, TextInput, TouchableHighlight, TouchableOpacity, TouchableWithoutFeedback, View, __resetMockFontScale, __setMockFontScale, ReactNative as default, useColorScheme, useWindowDimensions };
|
|
321
324
|
//# sourceMappingURL=react-native.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-native.d.ts","names":[],"sources":["../../../src/jest/mocks/react-native.tsx"],"mappings":";;;;UAgBU,kBAAA;EACR,QAAA,GAAW,SAAA;EACX,KAAA;EACA,MAAA;EACA,iBAAA;EACA,kBAAA;EAAA,CACC,GAAA;AAAA;AAAA,cAaG,IAAA,EAAI,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACJ,IAAA,EAAI,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACJ,KAAA,EAAK,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACL,UAAA,EAAU,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACV,SAAA,EAAS,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACT,gBAAA,EAAgB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cAChB,kBAAA,EAAkB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cAClB,wBAAA,EAAwB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACxB,SAAA,EAAS,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACT,QAAA,EAAQ,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACR,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACX,iBAAA,EAAiB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACjB,YAAA,EAAY,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACZ,KAAA,EAAK,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACL,MAAA,EAAM,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACN,cAAA,EAAc,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cACd,oBAAA,EAAoB,KAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,kBAAA,WAAA,KAAA,CAAA,aAAA;AAAA,cAGpB,UAAA;qBACe,MAAA,kBAAsB,MAAA,EAAU,CAAA,KAAI,CAAA;;4BAO/B,MAAA;;;;;;;;;;;;;;;;;cAOpB,QAAA;;;qBAGe,MAAA,mBAAuB,MAAA,EAAU,CAAA,KAAI,CAAA,OAAQ,CAAA
|
|
1
|
+
{"version":3,"file":"react-native.d.ts","names":[],"sources":["../../../src/jest/mocks/react-native.tsx"],"mappings":"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"}
|
|
@@ -70,20 +70,33 @@ const Platform = {
|
|
|
70
70
|
};
|
|
71
71
|
const SCREEN_WIDTH = 375;
|
|
72
72
|
const SCREEN_HEIGHT = 812;
|
|
73
|
+
let mockFontScale = 1;
|
|
74
|
+
const dimensionListeners = /* @__PURE__ */ new Set();
|
|
75
|
+
/** Set the mocked OS font scale and notify Dimensions 'change' listeners. */
|
|
76
|
+
const __setMockFontScale = (fontScale) => {
|
|
77
|
+
mockFontScale = fontScale;
|
|
78
|
+
dimensionListeners.forEach((listener) => listener());
|
|
79
|
+
};
|
|
80
|
+
const __resetMockFontScale = () => {
|
|
81
|
+
__setMockFontScale(1);
|
|
82
|
+
};
|
|
73
83
|
const Dimensions = {
|
|
74
84
|
get: (_dim) => ({
|
|
75
85
|
width: SCREEN_WIDTH,
|
|
76
86
|
height: SCREEN_HEIGHT,
|
|
77
87
|
scale: 2,
|
|
78
|
-
fontScale:
|
|
88
|
+
fontScale: mockFontScale
|
|
79
89
|
}),
|
|
80
90
|
set: jest.fn(),
|
|
81
|
-
addEventListener: jest.fn(() =>
|
|
91
|
+
addEventListener: jest.fn((_event, listener) => {
|
|
92
|
+
dimensionListeners.add(listener);
|
|
93
|
+
return { remove: () => dimensionListeners.delete(listener) };
|
|
94
|
+
}),
|
|
82
95
|
removeEventListener: jest.fn()
|
|
83
96
|
};
|
|
84
97
|
const PixelRatio = {
|
|
85
98
|
get: () => 2,
|
|
86
|
-
getFontScale: () =>
|
|
99
|
+
getFontScale: () => mockFontScale,
|
|
87
100
|
getPixelSizeForLayoutSize: (size) => size * 2,
|
|
88
101
|
roundToNearestPixel: (size) => Math.round(size * 2) / 2
|
|
89
102
|
};
|
|
@@ -149,7 +162,7 @@ const useWindowDimensions = () => ({
|
|
|
149
162
|
width: SCREEN_WIDTH,
|
|
150
163
|
height: SCREEN_HEIGHT,
|
|
151
164
|
scale: 2,
|
|
152
|
-
fontScale:
|
|
165
|
+
fontScale: mockFontScale
|
|
153
166
|
});
|
|
154
167
|
const ReactNative = {
|
|
155
168
|
View,
|
|
@@ -186,6 +199,6 @@ const ReactNative = {
|
|
|
186
199
|
useWindowDimensions
|
|
187
200
|
};
|
|
188
201
|
//#endregion
|
|
189
|
-
export { AccessibilityInfo, ActivityIndicator, Animated, AppState, Appearance, BackHandler, Dimensions, FlatList, I18nManager, Image, Keyboard, KeyboardAvoidingView, Linking, Modal, NativeEventEmitter, PixelRatio, Platform, Pressable, RefreshControl, SafeAreaView, ScrollView, SectionList, StyleSheet, Switch, Text, TextInput, TouchableHighlight, TouchableOpacity, TouchableWithoutFeedback, View, ReactNative as default, useColorScheme, useWindowDimensions };
|
|
202
|
+
export { AccessibilityInfo, ActivityIndicator, Animated, AppState, Appearance, BackHandler, Dimensions, FlatList, I18nManager, Image, Keyboard, KeyboardAvoidingView, Linking, Modal, NativeEventEmitter, PixelRatio, Platform, Pressable, RefreshControl, SafeAreaView, ScrollView, SectionList, StyleSheet, Switch, Text, TextInput, TouchableHighlight, TouchableOpacity, TouchableWithoutFeedback, View, __resetMockFontScale, __setMockFontScale, ReactNative as default, useColorScheme, useWindowDimensions };
|
|
190
203
|
|
|
191
204
|
//# sourceMappingURL=react-native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-native.js","names":[],"sources":["../../../src/jest/mocks/react-native.tsx"],"sourcesContent":["/**\n * Jest mock for react-native core components.\n *\n * Provides simple mock implementations for React Native components\n * that work in a Jest environment without native modules.\n */\n\n/// <reference types=\"jest\" />\n\nimport type { ReactNode } from 'react';\nimport React, { forwardRef } from 'react';\n\n// Set up React Native globals\ndeclare const global: { __DEV__?: boolean };\nglobal.__DEV__ = true;\n\ninterface MockComponentProps {\n children?: ReactNode;\n style?: object;\n testID?: string;\n accessibilityRole?: string;\n accessibilityLabel?: string;\n [key: string]: unknown;\n}\n\n// Create a simple mock component factory\nfunction createMockComponent(name: string) {\n const MockComponent = forwardRef<unknown, MockComponentProps>(({ children, ...props }, ref) => {\n return React.createElement(name, { ...props, ref }, children as ReactNode);\n });\n MockComponent.displayName = name;\n return MockComponent;\n}\n\n// Component mocks\nconst View = createMockComponent('View');\nconst Text = createMockComponent('Text');\nconst Image = createMockComponent('Image');\nconst ScrollView = createMockComponent('ScrollView');\nconst TextInput = createMockComponent('TextInput');\nconst TouchableOpacity = createMockComponent('TouchableOpacity');\nconst TouchableHighlight = createMockComponent('TouchableHighlight');\nconst TouchableWithoutFeedback = createMockComponent('TouchableWithoutFeedback');\nconst Pressable = createMockComponent('Pressable');\nconst FlatList = createMockComponent('FlatList');\nconst SectionList = createMockComponent('SectionList');\nconst ActivityIndicator = createMockComponent('ActivityIndicator');\nconst SafeAreaView = createMockComponent('SafeAreaView');\nconst Modal = createMockComponent('Modal');\nconst Switch = createMockComponent('Switch');\nconst RefreshControl = createMockComponent('RefreshControl');\nconst KeyboardAvoidingView = createMockComponent('KeyboardAvoidingView');\n\n// StyleSheet mock\nconst StyleSheet = {\n create: <T extends Record<string, object>>(styles: T): T => styles,\n flatten: (style: object | object[]): object => {\n if (Array.isArray(style)) {\n return Object.assign({}, ...style);\n }\n return style || {};\n },\n compose: (style1: object, style2: object): object[] => [style1, style2],\n hairlineWidth: 1,\n absoluteFill: { position: 'absolute', left: 0, right: 0, top: 0, bottom: 0 },\n absoluteFillObject: { position: 'absolute', left: 0, right: 0, top: 0, bottom: 0 },\n};\n\n// Platform mock\nconst Platform = {\n OS: 'ios' as const,\n Version: 17,\n select: <T extends Record<string, unknown>>(config: T): T[keyof T] | undefined => {\n return (config.ios ?? config.default) as T[keyof T] | undefined;\n },\n isTV: false,\n isPad: false,\n isVision: false,\n isTesting: true,\n constants: {\n reactNativeVersion: { major: 0, minor: 83, patch: 0 },\n },\n};\n\n// Dimensions mock\nconst SCREEN_WIDTH = 375;\nconst SCREEN_HEIGHT = 812;\n\nconst Dimensions = {\n get: (_dim: 'window' | 'screen') => ({\n width: SCREEN_WIDTH,\n height: SCREEN_HEIGHT,\n scale: 2,\n fontScale: 1,\n }),\n set: jest.fn(),\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n removeEventListener: jest.fn(),\n};\n\n// PixelRatio mock\nconst PixelRatio = {\n get: () => 2,\n getFontScale: () => 1,\n getPixelSizeForLayoutSize: (size: number) => size * 2,\n roundToNearestPixel: (size: number) => Math.round(size * 2) / 2,\n};\n\n// Animated mock (basic - reanimated provides more complete implementation)\nconst Animated = {\n View: createMockComponent('Animated.View'),\n Text: createMockComponent('Animated.Text'),\n Image: createMockComponent('Animated.Image'),\n ScrollView: createMockComponent('Animated.ScrollView'),\n Value: class {\n _value: number;\n constructor(value: number) {\n this._value = value;\n }\n },\n timing: jest.fn(() => ({ start: jest.fn() })),\n spring: jest.fn(() => ({ start: jest.fn() })),\n createAnimatedComponent: (Component: React.ComponentType) => Component,\n};\n\n// Keyboard mock\nconst Keyboard = {\n dismiss: jest.fn(),\n addListener: jest.fn(() => ({ remove: jest.fn() })),\n removeListener: jest.fn(),\n isVisible: jest.fn(() => false),\n};\n\nconst BackHandler = {\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n exitApp: jest.fn(),\n};\n\nconst I18nManager = {\n isRTL: false,\n allowRTL: jest.fn(),\n forceRTL: jest.fn(),\n getConstants: () => ({ isRTL: false }),\n};\n\n// Linking mock\nconst Linking = {\n openURL: jest.fn().mockResolvedValue(true),\n canOpenURL: jest.fn().mockResolvedValue(true),\n getInitialURL: jest.fn().mockResolvedValue(null),\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n};\n\n// AppState mock\nconst AppState = {\n currentState: 'active',\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n removeEventListener: jest.fn(),\n};\n\n// AccessibilityInfo mock\nconst AccessibilityInfo = {\n isReduceMotionEnabled: jest.fn().mockResolvedValue(false),\n isScreenReaderEnabled: jest.fn().mockResolvedValue(false),\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n};\n\n// NativeEventEmitter mock\nclass NativeEventEmitter {\n addListener = jest.fn(() => ({ remove: jest.fn() }));\n removeListener = jest.fn();\n removeAllListeners = jest.fn();\n}\n\n// Appearance mock\nconst Appearance = {\n getColorScheme: () => 'light' as const,\n addChangeListener: jest.fn(() => ({ remove: jest.fn() })),\n removeChangeListener: jest.fn(),\n};\n\n// useColorScheme hook mock\nconst useColorScheme = () => 'light' as const;\n\n// useWindowDimensions hook mock\nconst useWindowDimensions = () => ({\n width: SCREEN_WIDTH,\n height: SCREEN_HEIGHT,\n scale: 2,\n fontScale: 1,\n});\n\n// Default export for compatibility\nconst ReactNative = {\n View,\n Text,\n Image,\n ScrollView,\n TextInput,\n TouchableOpacity,\n TouchableHighlight,\n TouchableWithoutFeedback,\n Pressable,\n FlatList,\n SectionList,\n ActivityIndicator,\n SafeAreaView,\n Modal,\n Switch,\n RefreshControl,\n KeyboardAvoidingView,\n StyleSheet,\n Platform,\n Dimensions,\n PixelRatio,\n Animated,\n BackHandler,\n Keyboard,\n I18nManager,\n Linking,\n AppState,\n AccessibilityInfo,\n NativeEventEmitter,\n Appearance,\n useColorScheme,\n useWindowDimensions,\n};\n\n// Named exports\nexport {\n AccessibilityInfo,\n ActivityIndicator,\n Animated,\n Appearance,\n AppState,\n BackHandler,\n Dimensions,\n FlatList,\n I18nManager,\n Image,\n Keyboard,\n KeyboardAvoidingView,\n Linking,\n Modal,\n NativeEventEmitter,\n PixelRatio,\n Platform,\n Pressable,\n RefreshControl,\n SafeAreaView,\n ScrollView,\n SectionList,\n StyleSheet,\n Switch,\n Text,\n TextInput,\n TouchableHighlight,\n TouchableOpacity,\n TouchableWithoutFeedback,\n useColorScheme,\n useWindowDimensions,\n View,\n};\n\nexport default ReactNative;\n"],"mappings":";;;AAcA,OAAO,UAAU;AAYjB,SAAS,oBAAoB,MAAc;CACzC,MAAM,gBAAgB,YAAyC,EAAE,UAAU,GAAG,SAAS,QAAQ;EAC7F,OAAO,MAAM,cAAc,MAAM;GAAE,GAAG;GAAO;GAAK,EAAE,SAAsB;GAC1E;CACF,cAAc,cAAc;CAC5B,OAAO;;AAIT,MAAM,OAAO,oBAAoB,OAAO;AACxC,MAAM,OAAO,oBAAoB,OAAO;AACxC,MAAM,QAAQ,oBAAoB,QAAQ;AAC1C,MAAM,aAAa,oBAAoB,aAAa;AACpD,MAAM,YAAY,oBAAoB,YAAY;AAClD,MAAM,mBAAmB,oBAAoB,mBAAmB;AAChE,MAAM,qBAAqB,oBAAoB,qBAAqB;AACpE,MAAM,2BAA2B,oBAAoB,2BAA2B;AAChF,MAAM,YAAY,oBAAoB,YAAY;AAClD,MAAM,WAAW,oBAAoB,WAAW;AAChD,MAAM,cAAc,oBAAoB,cAAc;AACtD,MAAM,oBAAoB,oBAAoB,oBAAoB;AAClE,MAAM,eAAe,oBAAoB,eAAe;AACxD,MAAM,QAAQ,oBAAoB,QAAQ;AAC1C,MAAM,SAAS,oBAAoB,SAAS;AAC5C,MAAM,iBAAiB,oBAAoB,iBAAiB;AAC5D,MAAM,uBAAuB,oBAAoB,uBAAuB;AAGxE,MAAM,aAAa;CACjB,SAA2C,WAAiB;CAC5D,UAAU,UAAqC;EAC7C,IAAI,MAAM,QAAQ,MAAM,EACtB,OAAO,OAAO,OAAO,EAAE,EAAE,GAAG,MAAM;EAEpC,OAAO,SAAS,EAAE;;CAEpB,UAAU,QAAgB,WAA6B,CAAC,QAAQ,OAAO;CACvE,eAAe;CACf,cAAc;EAAE,UAAU;EAAY,MAAM;EAAG,OAAO;EAAG,KAAK;EAAG,QAAQ;EAAG;CAC5E,oBAAoB;EAAE,UAAU;EAAY,MAAM;EAAG,OAAO;EAAG,KAAK;EAAG,QAAQ;EAAG;CACnF;AAGD,MAAM,WAAW;CACf,IAAI;CACJ,SAAS;CACT,SAA4C,WAAsC;EAChF,OAAQ,OAAO,OAAO,OAAO;;CAE/B,MAAM;CACN,OAAO;CACP,UAAU;CACV,WAAW;CACX,WAAW,EACT,oBAAoB;EAAE,OAAO;EAAG,OAAO;EAAI,OAAO;EAAG,EACtD;CACF;AAGD,MAAM,eAAe;AACrB,MAAM,gBAAgB;AAEtB,MAAM,aAAa;CACjB,MAAM,UAA+B;EACnC,OAAO;EACP,QAAQ;EACR,OAAO;EACP,WAAW;EACZ;CACD,KAAK,KAAK,IAAI;CACd,kBAAkB,KAAK,UAAU,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE;CACxD,qBAAqB,KAAK,IAAI;CAC/B;AAGD,MAAM,aAAa;CACjB,WAAW;CACX,oBAAoB;CACpB,4BAA4B,SAAiB,OAAO;CACpD,sBAAsB,SAAiB,KAAK,MAAM,OAAO,EAAE,GAAG;CAC/D;AAGD,MAAM,WAAW;CACf,MAAM,oBAAoB,gBAAgB;CAC1C,MAAM,oBAAoB,gBAAgB;CAC1C,OAAO,oBAAoB,iBAAiB;CAC5C,YAAY,oBAAoB,sBAAsB;CACtD,OAAO,MAAM;EACX;EACA,YAAY,OAAe;GACzB,KAAK,SAAS;;;CAGlB,QAAQ,KAAK,UAAU,EAAE,OAAO,KAAK,IAAI,EAAE,EAAE;CAC7C,QAAQ,KAAK,UAAU,EAAE,OAAO,KAAK,IAAI,EAAE,EAAE;CAC7C,0BAA0B,cAAmC;CAC9D;AAGD,MAAM,WAAW;CACf,SAAS,KAAK,IAAI;CAClB,aAAa,KAAK,UAAU,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE;CACnD,gBAAgB,KAAK,IAAI;CACzB,WAAW,KAAK,SAAS,MAAM;CAChC;AAED,MAAM,cAAc;CAClB,kBAAkB,KAAK,UAAU,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE;CACxD,SAAS,KAAK,IAAI;CACnB;AAED,MAAM,cAAc;CAClB,OAAO;CACP,UAAU,KAAK,IAAI;CACnB,UAAU,KAAK,IAAI;CACnB,qBAAqB,EAAE,OAAO,OAAO;CACtC;AAGD,MAAM,UAAU;CACd,SAAS,KAAK,IAAI,CAAC,kBAAkB,KAAK;CAC1C,YAAY,KAAK,IAAI,CAAC,kBAAkB,KAAK;CAC7C,eAAe,KAAK,IAAI,CAAC,kBAAkB,KAAK;CAChD,kBAAkB,KAAK,UAAU,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE;CACzD;AAGD,MAAM,WAAW;CACf,cAAc;CACd,kBAAkB,KAAK,UAAU,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE;CACxD,qBAAqB,KAAK,IAAI;CAC/B;AAGD,MAAM,oBAAoB;CACxB,uBAAuB,KAAK,IAAI,CAAC,kBAAkB,MAAM;CACzD,uBAAuB,KAAK,IAAI,CAAC,kBAAkB,MAAM;CACzD,kBAAkB,KAAK,UAAU,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE;CACzD;AAGD,IAAM,qBAAN,MAAyB;CACvB,cAAc,KAAK,UAAU,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE;CACpD,iBAAiB,KAAK,IAAI;CAC1B,qBAAqB,KAAK,IAAI;;AAIhC,MAAM,aAAa;CACjB,sBAAsB;CACtB,mBAAmB,KAAK,UAAU,EAAE,QAAQ,KAAK,IAAI,EAAE,EAAE;CACzD,sBAAsB,KAAK,IAAI;CAChC;AAGD,MAAM,uBAAuB;AAG7B,MAAM,6BAA6B;CACjC,OAAO;CACP,QAAQ;CACR,OAAO;CACP,WAAW;CACZ;AAGD,MAAM,cAAc;CAClB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD"}
|
|
1
|
+
{"version":3,"file":"react-native.js","names":[],"sources":["../../../src/jest/mocks/react-native.tsx"],"sourcesContent":["/**\n * Jest mock for react-native core components.\n *\n * Provides simple mock implementations for React Native components\n * that work in a Jest environment without native modules.\n */\n\n/// <reference types=\"jest\" />\n\nimport type { ReactNode } from 'react';\nimport React, { forwardRef } from 'react';\n\n// Set up React Native globals\ndeclare const global: { __DEV__?: boolean };\nglobal.__DEV__ = true;\n\ninterface MockComponentProps {\n children?: ReactNode;\n style?: object;\n testID?: string;\n accessibilityRole?: string;\n accessibilityLabel?: string;\n [key: string]: unknown;\n}\n\n// Create a simple mock component factory\nfunction createMockComponent(name: string) {\n const MockComponent = forwardRef<unknown, MockComponentProps>(({ children, ...props }, ref) => {\n return React.createElement(name, { ...props, ref }, children as ReactNode);\n });\n MockComponent.displayName = name;\n return MockComponent;\n}\n\n// Component mocks\nconst View = createMockComponent('View');\nconst Text = createMockComponent('Text');\nconst Image = createMockComponent('Image');\nconst ScrollView = createMockComponent('ScrollView');\nconst TextInput = createMockComponent('TextInput');\nconst TouchableOpacity = createMockComponent('TouchableOpacity');\nconst TouchableHighlight = createMockComponent('TouchableHighlight');\nconst TouchableWithoutFeedback = createMockComponent('TouchableWithoutFeedback');\nconst Pressable = createMockComponent('Pressable');\nconst FlatList = createMockComponent('FlatList');\nconst SectionList = createMockComponent('SectionList');\nconst ActivityIndicator = createMockComponent('ActivityIndicator');\nconst SafeAreaView = createMockComponent('SafeAreaView');\nconst Modal = createMockComponent('Modal');\nconst Switch = createMockComponent('Switch');\nconst RefreshControl = createMockComponent('RefreshControl');\nconst KeyboardAvoidingView = createMockComponent('KeyboardAvoidingView');\n\n// StyleSheet mock\nconst StyleSheet = {\n create: <T extends Record<string, object>>(styles: T): T => styles,\n flatten: (style: object | object[]): object => {\n if (Array.isArray(style)) {\n return Object.assign({}, ...style);\n }\n return style || {};\n },\n compose: (style1: object, style2: object): object[] => [style1, style2],\n hairlineWidth: 1,\n absoluteFill: { position: 'absolute', left: 0, right: 0, top: 0, bottom: 0 },\n absoluteFillObject: { position: 'absolute', left: 0, right: 0, top: 0, bottom: 0 },\n};\n\n// Platform mock\nconst Platform = {\n OS: 'ios' as const,\n Version: 17,\n select: <T extends Record<string, unknown>>(config: T): T[keyof T] | undefined => {\n return (config.ios ?? config.default) as T[keyof T] | undefined;\n },\n isTV: false,\n isPad: false,\n isVision: false,\n isTesting: true,\n constants: {\n reactNativeVersion: { major: 0, minor: 83, patch: 0 },\n },\n};\n\n// Dimensions mock\nconst SCREEN_WIDTH = 375;\nconst SCREEN_HEIGHT = 812;\n\n// Controllable font scale so tests can simulate OS text-size settings.\nlet mockFontScale = 1;\nconst dimensionListeners = new Set<() => void>();\n\n/** Set the mocked OS font scale and notify Dimensions 'change' listeners. */\nconst __setMockFontScale = (fontScale: number) => {\n mockFontScale = fontScale;\n dimensionListeners.forEach((listener) => listener());\n};\n\nconst __resetMockFontScale = () => {\n __setMockFontScale(1);\n};\n\nconst Dimensions = {\n get: (_dim: 'window' | 'screen') => ({\n width: SCREEN_WIDTH,\n height: SCREEN_HEIGHT,\n scale: 2,\n fontScale: mockFontScale,\n }),\n set: jest.fn(),\n addEventListener: jest.fn((_event: 'change', listener: () => void) => {\n dimensionListeners.add(listener);\n return { remove: () => dimensionListeners.delete(listener) };\n }),\n removeEventListener: jest.fn(),\n};\n\n// PixelRatio mock\nconst PixelRatio = {\n get: () => 2,\n getFontScale: () => mockFontScale,\n getPixelSizeForLayoutSize: (size: number) => size * 2,\n roundToNearestPixel: (size: number) => Math.round(size * 2) / 2,\n};\n\n// Animated mock (basic - reanimated provides more complete implementation)\nconst Animated = {\n View: createMockComponent('Animated.View'),\n Text: createMockComponent('Animated.Text'),\n Image: createMockComponent('Animated.Image'),\n ScrollView: createMockComponent('Animated.ScrollView'),\n Value: class {\n _value: number;\n constructor(value: number) {\n this._value = value;\n }\n },\n timing: jest.fn(() => ({ start: jest.fn() })),\n spring: jest.fn(() => ({ start: jest.fn() })),\n createAnimatedComponent: (Component: React.ComponentType) => Component,\n};\n\n// Keyboard mock\nconst Keyboard = {\n dismiss: jest.fn(),\n addListener: jest.fn(() => ({ remove: jest.fn() })),\n removeListener: jest.fn(),\n isVisible: jest.fn(() => false),\n};\n\nconst BackHandler = {\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n exitApp: jest.fn(),\n};\n\nconst I18nManager = {\n isRTL: false,\n allowRTL: jest.fn(),\n forceRTL: jest.fn(),\n getConstants: () => ({ isRTL: false }),\n};\n\n// Linking mock\nconst Linking = {\n openURL: jest.fn().mockResolvedValue(true),\n canOpenURL: jest.fn().mockResolvedValue(true),\n getInitialURL: jest.fn().mockResolvedValue(null),\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n};\n\n// AppState mock\nconst AppState = {\n currentState: 'active',\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n removeEventListener: jest.fn(),\n};\n\n// AccessibilityInfo mock\nconst AccessibilityInfo = {\n isReduceMotionEnabled: jest.fn().mockResolvedValue(false),\n isScreenReaderEnabled: jest.fn().mockResolvedValue(false),\n addEventListener: jest.fn(() => ({ remove: jest.fn() })),\n};\n\n// NativeEventEmitter mock\nclass NativeEventEmitter {\n addListener = jest.fn(() => ({ remove: jest.fn() }));\n removeListener = jest.fn();\n removeAllListeners = jest.fn();\n}\n\n// Appearance mock\nconst Appearance = {\n getColorScheme: () => 'light' as const,\n addChangeListener: jest.fn(() => ({ remove: jest.fn() })),\n removeChangeListener: jest.fn(),\n};\n\n// useColorScheme hook mock\nconst useColorScheme = () => 'light' as const;\n\n// useWindowDimensions hook mock\nconst useWindowDimensions = () => ({\n width: SCREEN_WIDTH,\n height: SCREEN_HEIGHT,\n scale: 2,\n fontScale: mockFontScale,\n});\n\n// Default export for compatibility\nconst ReactNative = {\n View,\n Text,\n Image,\n ScrollView,\n TextInput,\n TouchableOpacity,\n TouchableHighlight,\n TouchableWithoutFeedback,\n Pressable,\n FlatList,\n SectionList,\n ActivityIndicator,\n SafeAreaView,\n Modal,\n Switch,\n RefreshControl,\n KeyboardAvoidingView,\n StyleSheet,\n Platform,\n Dimensions,\n PixelRatio,\n Animated,\n BackHandler,\n Keyboard,\n I18nManager,\n Linking,\n AppState,\n AccessibilityInfo,\n NativeEventEmitter,\n Appearance,\n useColorScheme,\n useWindowDimensions,\n};\n\n// Named exports\nexport {\n __resetMockFontScale,\n __setMockFontScale,\n AccessibilityInfo,\n ActivityIndicator,\n Animated,\n Appearance,\n AppState,\n BackHandler,\n Dimensions,\n FlatList,\n I18nManager,\n Image,\n Keyboard,\n KeyboardAvoidingView,\n Linking,\n Modal,\n NativeEventEmitter,\n PixelRatio,\n Platform,\n Pressable,\n RefreshControl,\n SafeAreaView,\n ScrollView,\n SectionList,\n StyleSheet,\n Switch,\n Text,\n TextInput,\n TouchableHighlight,\n TouchableOpacity,\n TouchableWithoutFeedback,\n useColorScheme,\n useWindowDimensions,\n View,\n};\n\nexport default ReactNative;\n"],"mappings":"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"}
|
|
@@ -211,6 +211,7 @@ const switchStyles = createComponentStyles({
|
|
|
211
211
|
switch: {
|
|
212
212
|
width: 48,
|
|
213
213
|
height: 28,
|
|
214
|
+
padding: 2,
|
|
214
215
|
borderRadius: 14,
|
|
215
216
|
backgroundColor: "#E0E0E0"
|
|
216
217
|
},
|
|
@@ -323,6 +324,14 @@ const radioStyles = createComponentStyles({
|
|
|
323
324
|
alignItems: "center",
|
|
324
325
|
gap: 8
|
|
325
326
|
},
|
|
327
|
+
radio: {
|
|
328
|
+
width: 20,
|
|
329
|
+
height: 20,
|
|
330
|
+
borderWidth: 2,
|
|
331
|
+
borderColor: "#6001D2",
|
|
332
|
+
backgroundColor: "transparent"
|
|
333
|
+
},
|
|
334
|
+
radioCircle: { backgroundColor: "#6001D2" },
|
|
326
335
|
circle: {
|
|
327
336
|
width: 20,
|
|
328
337
|
height: 20,
|
|
@@ -342,6 +351,12 @@ const radioStyles = createComponentStyles({
|
|
|
342
351
|
fontSize: 14,
|
|
343
352
|
lineHeight: 20,
|
|
344
353
|
color: "#000000"
|
|
354
|
+
},
|
|
355
|
+
text: {
|
|
356
|
+
fontFamily: "YahooProductSans-Regular",
|
|
357
|
+
fontSize: 14,
|
|
358
|
+
lineHeight: 20,
|
|
359
|
+
color: "#000000"
|
|
345
360
|
}
|
|
346
361
|
});
|
|
347
362
|
const iconButtonStyles = createComponentStyles({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.cts","names":[],"sources":["../../../src/jest/mocks/styles.ts"],"mappings":";;;;;;;;;;cA8Ga,MAAA,EAAM,MAAA;AAAA,cAKN,YAAA,EAAY,MAAA;AAAA,cAgCZ,UAAA,EAAU,MAAA;AAAA,cAUV,WAAA,EAAW,MAAA;AAAA,cAkEX,cAAA,EAAc,MAAA;AAAA,cA2Bd,YAAA,EAAY,MAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"styles.d.cts","names":[],"sources":["../../../src/jest/mocks/styles.ts"],"mappings":";;;;;;;;;;cA8Ga,MAAA,EAAM,MAAA;AAAA,cAKN,YAAA,EAAY,MAAA;AAAA,cAgCZ,UAAA,EAAU,MAAA;AAAA,cAUV,WAAA,EAAW,MAAA;AAAA,cAkEX,cAAA,EAAc,MAAA;AAAA,cA2Bd,YAAA,EAAY,MAAA;AAAA,cAmCZ,YAAA,EAAY,MAAA;AAAA,cAqBZ,WAAA,EAAW,MAAA;AAAA,cAmBX,UAAA,EAAU,MAAA;AAAA,cAsBV,aAAA,EAAa,MAAA;AAAA,cAiBb,UAAA,EAAU,MAAA;AAAA,cAgBV,WAAA,EAAW,MAAA;AAAA,cA+CX,gBAAA,EAAgB,MAAA;AAAA,cAehB,iBAAA,EAAiB,MAAA;AAAA,cA0BjB,WAAA,EAAW,MAAA;AAAA,cASX,aAAA,EAAa,MAAA;AAAA,cAmCb,UAAA,EAAU,MAAA;AAAA,cASV,gBAAA,EAAgB,MAAA;AAAA,cAuBhB,WAAA,EAAW,MAAA;AAAA,cAuCX,WAAA,EAAW,MAAA;AAAA,cAiDX,YAAA,EAAY,MAAA;AAAA,cASZ,mBAAA,EAAmB,MAAA;AAAA,cAanB,gBAAA,EAAgB,MAAA;AAAA,UAeZ,UAAA;EACf,KAAA;EACA,eAAA;EACA,WAAA;EACA,WAAA;EACA,YAAA;EAAA,CACC,GAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","names":[],"sources":["../../../src/jest/mocks/styles.ts"],"mappings":";;;;;;;;;;cA8Ga,MAAA,EAAM,MAAA;AAAA,cAKN,YAAA,EAAY,MAAA;AAAA,cAgCZ,UAAA,EAAU,MAAA;AAAA,cAUV,WAAA,EAAW,MAAA;AAAA,cAkEX,cAAA,EAAc,MAAA;AAAA,cA2Bd,YAAA,EAAY,MAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"styles.d.ts","names":[],"sources":["../../../src/jest/mocks/styles.ts"],"mappings":";;;;;;;;;;cA8Ga,MAAA,EAAM,MAAA;AAAA,cAKN,YAAA,EAAY,MAAA;AAAA,cAgCZ,UAAA,EAAU,MAAA;AAAA,cAUV,WAAA,EAAW,MAAA;AAAA,cAkEX,cAAA,EAAc,MAAA;AAAA,cA2Bd,YAAA,EAAY,MAAA;AAAA,cAmCZ,YAAA,EAAY,MAAA;AAAA,cAqBZ,WAAA,EAAW,MAAA;AAAA,cAmBX,UAAA,EAAU,MAAA;AAAA,cAsBV,aAAA,EAAa,MAAA;AAAA,cAiBb,UAAA,EAAU,MAAA;AAAA,cAgBV,WAAA,EAAW,MAAA;AAAA,cA+CX,gBAAA,EAAgB,MAAA;AAAA,cAehB,iBAAA,EAAiB,MAAA;AAAA,cA0BjB,WAAA,EAAW,MAAA;AAAA,cASX,aAAA,EAAa,MAAA;AAAA,cAmCb,UAAA,EAAU,MAAA;AAAA,cASV,gBAAA,EAAgB,MAAA;AAAA,cAuBhB,WAAA,EAAW,MAAA;AAAA,cAuCX,WAAA,EAAW,MAAA;AAAA,cAiDX,YAAA,EAAY,MAAA;AAAA,cASZ,mBAAA,EAAmB,MAAA;AAAA,cAanB,gBAAA,EAAgB,MAAA;AAAA,UAeZ,UAAA;EACf,KAAA;EACA,eAAA;EACA,WAAA;EACA,WAAA;EACA,YAAA;EAAA,CACC,GAAA;AAAA"}
|
|
@@ -211,6 +211,7 @@ const switchStyles = createComponentStyles({
|
|
|
211
211
|
switch: {
|
|
212
212
|
width: 48,
|
|
213
213
|
height: 28,
|
|
214
|
+
padding: 2,
|
|
214
215
|
borderRadius: 14,
|
|
215
216
|
backgroundColor: "#E0E0E0"
|
|
216
217
|
},
|
|
@@ -323,6 +324,14 @@ const radioStyles = createComponentStyles({
|
|
|
323
324
|
alignItems: "center",
|
|
324
325
|
gap: 8
|
|
325
326
|
},
|
|
327
|
+
radio: {
|
|
328
|
+
width: 20,
|
|
329
|
+
height: 20,
|
|
330
|
+
borderWidth: 2,
|
|
331
|
+
borderColor: "#6001D2",
|
|
332
|
+
backgroundColor: "transparent"
|
|
333
|
+
},
|
|
334
|
+
radioCircle: { backgroundColor: "#6001D2" },
|
|
326
335
|
circle: {
|
|
327
336
|
width: 20,
|
|
328
337
|
height: 20,
|
|
@@ -342,6 +351,12 @@ const radioStyles = createComponentStyles({
|
|
|
342
351
|
fontSize: 14,
|
|
343
352
|
lineHeight: 20,
|
|
344
353
|
color: "#000000"
|
|
354
|
+
},
|
|
355
|
+
text: {
|
|
356
|
+
fontFamily: "YahooProductSans-Regular",
|
|
357
|
+
fontSize: 14,
|
|
358
|
+
lineHeight: 20,
|
|
359
|
+
color: "#000000"
|
|
345
360
|
}
|
|
346
361
|
});
|
|
347
362
|
const iconButtonStyles = createComponentStyles({
|
|
@@ -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 useVariants = jest.fn();\n const proxy = new Proxy(\n { ...defaultFoundation, ...baseStyles, useVariants },\n {\n get(target, prop) {\n if (prop === 'useVariants') {\n return useVariants;\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 useVariants.mockReturnValue(proxy);\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 useVariants = jest.fn();\n const result: Record<string, unknown> = { useVariants };\n\n for (const [key, baseStyles] of Object.entries(styleKeys)) {\n result[key] = createStyleObject(baseStyles);\n }\n\n const proxy = new Proxy(result, {\n get(target, prop) {\n if (prop === 'useVariants') {\n return useVariants;\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 useVariants.mockReturnValue(proxy);\n return proxy;\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 labelRequired: {\n color: '#6001D2',\n },\n inputWrapper: {\n backgroundColor: '#FFFFFF',\n borderColor: '#E0E0E0',\n },\n inputWrapperStatic: {\n paddingHorizontal: 12,\n gap: 8,\n },\n inputWrapperDynamic: {\n borderWidth: 1,\n borderRadius: 8,\n },\n inputPlaceholder: {\n color: '#666666',\n },\n startIcon: {\n color: '#666666',\n },\n endIcon: {\n color: '#666666',\n },\n helperIcon: {\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 checkbox: {\n width: 20,\n height: 20,\n borderRadius: 4,\n borderWidth: 2,\n borderColor: '#6001D2',\n backgroundColor: 'transparent',\n },\n checkboxIcon: {\n color: '#6001D2',\n },\n text: {\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 switch: {\n width: 48,\n height: 28,\n borderRadius: 14,\n backgroundColor: '#E0E0E0',\n },\n handle: {\n width: 24,\n height: 24,\n borderRadius: 12,\n backgroundColor: '#FFFFFF',\n },\n handleIcon: {\n fontSize: 16,\n iconSizeToken: 'sm',\n lineHeight: 16,\n color: '#000000',\n },\n text: {\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// Select styles\nexport const selectStyles = createComponentStyles({\n startIcon: {\n color: '#666666',\n },\n endIcon: {\n color: '#666666',\n },\n});\n\nexport const selectContentStyles = createComponentStyles({\n root: {\n backgroundColor: '#FFFFFF',\n borderColor: '#E0E0E0',\n borderWidth: 1,\n borderRadius: 8,\n boxShadow: '',\n gap: 0,\n paddingHorizontal: 0,\n paddingVertical: 0,\n },\n});\n\nexport const selectItemStyles = createComponentStyles({\n root: {\n backgroundColor: '#FFFFFF',\n paddingHorizontal: 16,\n paddingVertical: 8,\n },\n text: {\n color: '#000000',\n },\n endIcon: {\n color: '#6001D2',\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 useVariants = jest.fn();\n const proxy = new Proxy(\n { ...defaultFoundation, ...baseStyles, useVariants },\n {\n get(target, prop) {\n if (prop === 'useVariants') {\n return useVariants;\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 useVariants.mockReturnValue(proxy);\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 useVariants = jest.fn();\n const result: Record<string, unknown> = { useVariants };\n\n for (const [key, baseStyles] of Object.entries(styleKeys)) {\n result[key] = createStyleObject(baseStyles);\n }\n\n const proxy = new Proxy(result, {\n get(target, prop) {\n if (prop === 'useVariants') {\n return useVariants;\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 useVariants.mockReturnValue(proxy);\n return proxy;\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 labelRequired: {\n color: '#6001D2',\n },\n inputWrapper: {\n backgroundColor: '#FFFFFF',\n borderColor: '#E0E0E0',\n },\n inputWrapperStatic: {\n paddingHorizontal: 12,\n gap: 8,\n },\n inputWrapperDynamic: {\n borderWidth: 1,\n borderRadius: 8,\n },\n inputPlaceholder: {\n color: '#666666',\n },\n startIcon: {\n color: '#666666',\n },\n endIcon: {\n color: '#666666',\n },\n helperIcon: {\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 checkbox: {\n width: 20,\n height: 20,\n borderRadius: 4,\n borderWidth: 2,\n borderColor: '#6001D2',\n backgroundColor: 'transparent',\n },\n checkboxIcon: {\n color: '#6001D2',\n },\n text: {\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 switch: {\n width: 48,\n height: 28,\n padding: 2,\n borderRadius: 14,\n backgroundColor: '#E0E0E0',\n },\n handle: {\n width: 24,\n height: 24,\n borderRadius: 12,\n backgroundColor: '#FFFFFF',\n },\n handleIcon: {\n fontSize: 16,\n iconSizeToken: 'sm',\n lineHeight: 16,\n color: '#000000',\n },\n text: {\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 // Keys used by Radio.tsx (mirror the generated styles)\n radio: {\n width: 20,\n height: 20,\n borderWidth: 2,\n borderColor: '#6001D2',\n backgroundColor: 'transparent',\n },\n radioCircle: {\n backgroundColor: '#6001D2',\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 text: {\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// Select styles\nexport const selectStyles = createComponentStyles({\n startIcon: {\n color: '#666666',\n },\n endIcon: {\n color: '#666666',\n },\n});\n\nexport const selectContentStyles = createComponentStyles({\n root: {\n backgroundColor: '#FFFFFF',\n borderColor: '#E0E0E0',\n borderWidth: 1,\n borderRadius: 8,\n boxShadow: '',\n gap: 0,\n paddingHorizontal: 0,\n paddingVertical: 0,\n },\n});\n\nexport const selectItemStyles = createComponentStyles({\n root: {\n backgroundColor: '#FFFFFF',\n paddingHorizontal: 16,\n paddingVertical: 8,\n },\n text: {\n color: '#000000',\n },\n endIcon: {\n color: '#6001D2',\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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"}
|
package/dist/jest/setup.cjs
CHANGED
|
@@ -5,6 +5,7 @@ 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
7
|
const require_jest_mocks_gesture_handler = require("./mocks/gesture-handler.cjs");
|
|
8
|
+
const require_jest_mocks_react_native = require("./mocks/react-native.cjs");
|
|
8
9
|
//#region src/jest/setup.ts
|
|
9
10
|
let isSetup = false;
|
|
10
11
|
function setupAnimationFrame() {
|
|
@@ -50,6 +51,9 @@ function setupUDSMobileJest() {
|
|
|
50
51
|
svgGlyphNames: require_jest_mocks_icons.svgGlyphNames
|
|
51
52
|
}));
|
|
52
53
|
jest.mock("@yahoo/uds-icons/tokens", () => ({ ICON_SIZE_MAP: require_jest_mocks_icons.ICON_SIZE_MAP }));
|
|
54
|
+
afterEach(() => {
|
|
55
|
+
require_jest_mocks_react_native.__resetMockFontScale();
|
|
56
|
+
});
|
|
53
57
|
isSetup = true;
|
|
54
58
|
}
|
|
55
59
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.cts","names":[],"sources":["../../src/jest/setup.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"setup.d.cts","names":[],"sources":["../../src/jest/setup.ts"],"mappings":";;;AA8BA;;iBAAgB,kBAAA,CAAA;;iBAmEA,eAAA,CAAA"}
|
package/dist/jest/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","names":[],"sources":["../../src/jest/setup.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"setup.d.ts","names":[],"sources":["../../src/jest/setup.ts"],"mappings":";;;AA8BA;;iBAAgB,kBAAA,CAAA;;iBAmEA,eAAA,CAAA"}
|
package/dist/jest/setup.js
CHANGED
|
@@ -4,6 +4,7 @@ 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
6
|
import { gesture_handler_exports } from "./mocks/gesture-handler.js";
|
|
7
|
+
import { __resetMockFontScale } from "./mocks/react-native.js";
|
|
7
8
|
//#region src/jest/setup.ts
|
|
8
9
|
let isSetup = false;
|
|
9
10
|
function setupAnimationFrame() {
|
|
@@ -49,6 +50,9 @@ function setupUDSMobileJest() {
|
|
|
49
50
|
svgGlyphNames
|
|
50
51
|
}));
|
|
51
52
|
jest.mock("@yahoo/uds-icons/tokens", () => ({ ICON_SIZE_MAP }));
|
|
53
|
+
afterEach(() => {
|
|
54
|
+
__resetMockFontScale();
|
|
55
|
+
});
|
|
52
56
|
isSetup = true;
|
|
53
57
|
}
|
|
54
58
|
/** @internal */
|
package/dist/jest/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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":"
|
|
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 { __resetMockFontScale } from './mocks/react-native';\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 // Tests that change the mocked OS font scale must not leak it.\n afterEach(() => {\n __resetMockFontScale();\n });\n\n isSetup = true;\n}\n\n/** @internal */\nexport function resetSetupState(): void {\n isSetup = false;\n}\n"],"mappings":";;;;;;;;AAcA,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;CAGH,gBAAgB;EACd,sBAAsB;GACtB;CAEF,UAAU;;;AAIZ,SAAgB,kBAAwB;CACtC,UAAU"}
|
package/dist/portal.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portal.d.cts","names":[],"sources":["../src/portal.tsx"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"portal.d.cts","names":[],"sources":["../src/portal.tsx"],"mappings":";;;;;UA4CU,kBAAA;EACR,QAAA,GAAW,EAAA,UAAY,IAAA,EAAM,SAAA;EAC7B,UAAA,GAAa,EAAA;AAAA;AAAA,iBAKN,gBAAA,CAAA,GAAoB,kBAAA;AAAA,iBAgCpB,MAAA,CAAA;EAAS;AAAA;EAAc,QAAA,EAAU,SAAA;AAAA;AAAA,iBAmBjC,cAAA,CAAA;EAAiB;AAAA;EAAc,QAAA,EAAU,SAAA;AAAA,IAAW,OAAA,CAAA,GAAA,CAAA,OAAA"}
|
package/dist/portal.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portal.d.ts","names":[],"sources":["../src/portal.tsx"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"portal.d.ts","names":[],"sources":["../src/portal.tsx"],"mappings":";;;;;UA4CU,kBAAA;EACR,QAAA,GAAW,EAAA,UAAY,IAAA,EAAM,SAAA;EAC7B,UAAA,GAAa,EAAA;AAAA;AAAA,iBAKN,gBAAA,CAAA,GAAoB,kBAAA;AAAA,iBAgCpB,MAAA,CAAA;EAAS;AAAA;EAAc,QAAA,EAAU,SAAA;AAAA;AAAA,iBAmBjC,cAAA,CAAA;EAAiB;AAAA;EAAc,QAAA,EAAU,SAAA;AAAA,IAAW,OAAA,CAAA,GAAA,CAAA,OAAA"}
|