@particle-network/ui-native 0.0.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 +57 -0
- package/dist/components/ProgressWrapper/index.d.ts +35 -0
- package/dist/components/ProgressWrapper/index.js +120 -0
- package/dist/components/Text/index.d.ts +2 -0
- package/dist/components/Text/index.js +2 -0
- package/dist/components/Text/text.d.ts +4 -0
- package/dist/components/Text/text.js +196 -0
- package/dist/components/Text/text.types.d.ts +109 -0
- package/dist/components/Text/text.types.js +77 -0
- package/dist/components/UXButton/button.d.ts +3 -0
- package/dist/components/UXButton/button.js +74 -0
- package/dist/components/UXButton/button.styles.d.ts +53 -0
- package/dist/components/UXButton/button.styles.js +157 -0
- package/dist/components/UXButton/button.types.d.ts +18 -0
- package/dist/components/UXButton/button.types.js +0 -0
- package/dist/components/UXButton/index.d.ts +2 -0
- package/dist/components/UXButton/index.js +1 -0
- package/dist/components/UXCheckbox/checkbox-group.d.ts +8 -0
- package/dist/components/UXCheckbox/checkbox-group.js +30 -0
- package/dist/components/UXCheckbox/checkbox.d.ts +10 -0
- package/dist/components/UXCheckbox/checkbox.js +78 -0
- package/dist/components/UXCheckbox/context.d.ts +8 -0
- package/dist/components/UXCheckbox/context.js +8 -0
- package/dist/components/UXCheckbox/index.d.ts +4 -0
- package/dist/components/UXCheckbox/index.js +3 -0
- package/dist/components/UXCheckbox/types.d.ts +6 -0
- package/dist/components/UXCheckbox/types.js +0 -0
- package/dist/components/UXChip/chip.d.ts +3 -0
- package/dist/components/UXChip/chip.js +48 -0
- package/dist/components/UXChip/index.d.ts +2 -0
- package/dist/components/UXChip/index.js +1 -0
- package/dist/components/UXChip/styles.d.ts +24 -0
- package/dist/components/UXChip/styles.js +70 -0
- package/dist/components/UXChip/types.d.ts +11 -0
- package/dist/components/UXChip/types.js +0 -0
- package/dist/components/UXDivider/index.d.ts +8 -0
- package/dist/components/UXDivider/index.js +34 -0
- package/dist/components/UXHint/index.d.ts +7 -0
- package/dist/components/UXHint/index.js +19 -0
- package/dist/components/UXModal/index.d.ts +24 -0
- package/dist/components/UXModal/index.js +271 -0
- package/dist/components/UXPressable/index.d.ts +4 -0
- package/dist/components/UXPressable/index.js +36 -0
- package/dist/components/UXRadio/context.d.ts +7 -0
- package/dist/components/UXRadio/context.js +10 -0
- package/dist/components/UXRadio/index.d.ts +2 -0
- package/dist/components/UXRadio/index.js +2 -0
- package/dist/components/UXRadio/radio-group.d.ts +5 -0
- package/dist/components/UXRadio/radio-group.js +21 -0
- package/dist/components/UXRadio/radio.d.ts +5 -0
- package/dist/components/UXRadio/radio.js +67 -0
- package/dist/components/UXRadio/types.d.ts +10 -0
- package/dist/components/UXRadio/types.js +0 -0
- package/dist/components/UXSwitch/index.d.ts +2 -0
- package/dist/components/UXSwitch/index.js +1 -0
- package/dist/components/UXSwitch/styles.d.ts +16 -0
- package/dist/components/UXSwitch/styles.js +58 -0
- package/dist/components/UXSwitch/switch.d.ts +3 -0
- package/dist/components/UXSwitch/switch.js +103 -0
- package/dist/components/UXSwitch/types.d.ts +11 -0
- package/dist/components/UXSwitch/types.js +0 -0
- package/dist/components/UXTabs/context.d.ts +5 -0
- package/dist/components/UXTabs/context.js +8 -0
- package/dist/components/UXTabs/index.d.ts +4 -0
- package/dist/components/UXTabs/index.js +3 -0
- package/dist/components/UXTabs/styles.d.ts +30 -0
- package/dist/components/UXTabs/styles.js +191 -0
- package/dist/components/UXTabs/tab.d.ts +3 -0
- package/dist/components/UXTabs/tab.js +55 -0
- package/dist/components/UXTabs/tabs.d.ts +3 -0
- package/dist/components/UXTabs/tabs.js +66 -0
- package/dist/components/UXTabs/types.d.ts +23 -0
- package/dist/components/UXTabs/types.js +0 -0
- package/dist/components/UXTooltip/index.d.ts +6 -0
- package/dist/components/UXTooltip/index.js +32 -0
- package/dist/components/UXTouchableOpacity/index.d.ts +4 -0
- package/dist/components/UXTouchableOpacity/index.js +24 -0
- package/dist/components/index.d.ts +22 -0
- package/dist/components/index.js +22 -0
- package/dist/components/input/index.d.ts +3 -0
- package/dist/components/input/index.js +2 -0
- package/dist/components/input/input.d.ts +3 -0
- package/dist/components/input/input.js +138 -0
- package/dist/components/input/number-input.d.ts +3 -0
- package/dist/components/input/number-input.js +231 -0
- package/dist/components/input/styles.d.ts +31 -0
- package/dist/components/input/styles.js +102 -0
- package/dist/components/input/types.d.ts +61 -0
- package/dist/components/input/types.js +0 -0
- package/dist/components/layout/Box/box.d.ts +12 -0
- package/dist/components/layout/Box/box.js +89 -0
- package/dist/components/layout/Box/index.d.ts +3 -0
- package/dist/components/layout/Box/index.js +2 -0
- package/dist/components/layout/Box/useBox.style.d.ts +3 -0
- package/dist/components/layout/Box/useBox.style.js +141 -0
- package/dist/components/layout/Box/useBox.type.d.ts +292 -0
- package/dist/components/layout/Box/useBox.type.js +0 -0
- package/dist/components/layout/Center.d.ts +5 -0
- package/dist/components/layout/Center.js +10 -0
- package/dist/components/layout/Circle.d.ts +7 -0
- package/dist/components/layout/Circle.js +14 -0
- package/dist/components/layout/Flex/flex.d.ts +6 -0
- package/dist/components/layout/Flex/flex.js +33 -0
- package/dist/components/layout/Flex/index.d.ts +4 -0
- package/dist/components/layout/Flex/index.js +3 -0
- package/dist/components/layout/Flex/useFlex.style.d.ts +3 -0
- package/dist/components/layout/Flex/useFlex.style.js +122 -0
- package/dist/components/layout/Flex/useFlex.type.d.ts +65 -0
- package/dist/components/layout/Flex/useFlex.type.js +0 -0
- package/dist/components/layout/Flex/useFlexBox.style.d.ts +134 -0
- package/dist/components/layout/Flex/useFlexBox.style.js +26 -0
- package/dist/components/layout/HStack.d.ts +5 -0
- package/dist/components/layout/HStack.js +11 -0
- package/dist/components/layout/Square.d.ts +9 -0
- package/dist/components/layout/Square.js +14 -0
- package/dist/components/layout/VStack.d.ts +5 -0
- package/dist/components/layout/VStack.js +14 -0
- package/dist/hooks/index.d.ts +5 -0
- package/dist/hooks/index.js +5 -0
- package/dist/hooks/useColors.d.ts +7 -0
- package/dist/hooks/useColors.js +18 -0
- package/dist/hooks/useKeyboard.d.ts +4 -0
- package/dist/hooks/useKeyboard.js +29 -0
- package/dist/hooks/useRadius.d.ts +7 -0
- package/dist/hooks/useRadius.js +16 -0
- package/dist/hooks/useSpacing.d.ts +7 -0
- package/dist/hooks/useSpacing.js +16 -0
- package/dist/hooks/useTheme.d.ts +5 -0
- package/dist/hooks/useTheme.js +6 -0
- package/dist/icons/CheckboxOffIcon.d.ts +4 -0
- package/dist/icons/CheckboxOffIcon.js +21 -0
- package/dist/icons/CheckboxOnIcon.d.ts +4 -0
- package/dist/icons/CheckboxOnIcon.js +26 -0
- package/dist/icons/DotIcon.d.ts +4 -0
- package/dist/icons/DotIcon.js +23 -0
- package/dist/icons/QuestionIcon.d.ts +4 -0
- package/dist/icons/QuestionIcon.js +30 -0
- package/dist/icons/RadioOffIcon.d.ts +4 -0
- package/dist/icons/RadioOffIcon.js +22 -0
- package/dist/icons/RadioOnIcon.d.ts +4 -0
- package/dist/icons/RadioOnIcon.js +42 -0
- package/dist/icons/types.d.ts +6 -0
- package/dist/icons/types.js +0 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +4 -0
- package/dist/provider/ThemeContext.d.ts +3 -0
- package/dist/provider/ThemeContext.js +15 -0
- package/dist/provider/ThemeProvider.d.ts +10 -0
- package/dist/provider/ThemeProvider.js +31 -0
- package/dist/provider/index.d.ts +2 -0
- package/dist/provider/index.js +2 -0
- package/dist/theme/colors.d.ts +6 -0
- package/dist/theme/colors.js +17 -0
- package/dist/theme/index.d.ts +7 -0
- package/dist/theme/index.js +16 -0
- package/dist/theme/opacity.d.ts +2 -0
- package/dist/theme/opacity.js +3 -0
- package/dist/theme/radius.d.ts +3 -0
- package/dist/theme/radius.js +10 -0
- package/dist/theme/spacing.d.ts +3 -0
- package/dist/theme/spacing.js +10 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +0 -0
- package/dist/types/theme.d.ts +17 -0
- package/dist/types/theme.js +0 -0
- package/dist/utils/triggerHapticFeedback.d.ts +5 -0
- package/dist/utils/triggerHapticFeedback.js +16 -0
- package/package.json +110 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import "react";
|
|
3
|
+
import react_native_svg, { ClipPath, Defs, G, Path } from "react-native-svg";
|
|
4
|
+
import { useColors } from "../hooks/index.js";
|
|
5
|
+
const RadioOnIcon_RadioOnIcon = ({ size = 16, color = 'default', ...props })=>{
|
|
6
|
+
const { getColor } = useColors();
|
|
7
|
+
const colorValue = getColor(color);
|
|
8
|
+
return /*#__PURE__*/ jsxs(react_native_svg, {
|
|
9
|
+
fill: "none",
|
|
10
|
+
height: size,
|
|
11
|
+
viewBox: "0 0 16 16",
|
|
12
|
+
width: size,
|
|
13
|
+
...props,
|
|
14
|
+
children: [
|
|
15
|
+
/*#__PURE__*/ jsxs(G, {
|
|
16
|
+
clipPath: "url(#a)",
|
|
17
|
+
children: [
|
|
18
|
+
/*#__PURE__*/ jsx(Path, {
|
|
19
|
+
d: "M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Z",
|
|
20
|
+
stroke: colorValue,
|
|
21
|
+
strokeWidth: 1.2
|
|
22
|
+
}),
|
|
23
|
+
/*#__PURE__*/ jsx(Path, {
|
|
24
|
+
d: "M8 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8Z",
|
|
25
|
+
fill: colorValue
|
|
26
|
+
})
|
|
27
|
+
]
|
|
28
|
+
}),
|
|
29
|
+
/*#__PURE__*/ jsx(Defs, {
|
|
30
|
+
children: /*#__PURE__*/ jsx(ClipPath, {
|
|
31
|
+
id: "a",
|
|
32
|
+
children: /*#__PURE__*/ jsx(Path, {
|
|
33
|
+
d: "M0 0h16v16H0z",
|
|
34
|
+
fill: "#fff"
|
|
35
|
+
})
|
|
36
|
+
})
|
|
37
|
+
})
|
|
38
|
+
]
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
const RadioOnIcon = RadioOnIcon_RadioOnIcon;
|
|
42
|
+
export { RadioOnIcon as default };
|
|
File without changes
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
import { createTheme } from "../theme/index.js";
|
|
3
|
+
const ThemeContext = /*#__PURE__*/ createContext(void 0);
|
|
4
|
+
const ThemeContextProvider = ThemeContext.Provider;
|
|
5
|
+
function useThemeContext() {
|
|
6
|
+
const context = useContext(ThemeContext);
|
|
7
|
+
if (!context) return {
|
|
8
|
+
theme: createTheme('light'),
|
|
9
|
+
config: {
|
|
10
|
+
theme: 'light'
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
return context;
|
|
14
|
+
}
|
|
15
|
+
export { ThemeContextProvider, useThemeContext };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { DynamicColors } from '@particle-network/ui-shared';
|
|
3
|
+
import type { ThemeMode } from '../types';
|
|
4
|
+
export interface ThemeProviderProps {
|
|
5
|
+
children: React.ReactNode;
|
|
6
|
+
theme?: ThemeMode;
|
|
7
|
+
dynamicColors?: DynamicColors;
|
|
8
|
+
onThemeChange?: (theme: ThemeMode) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function ThemeProvider({ children, theme, dynamicColors, onThemeChange }: ThemeProviderProps): React.JSX.Element;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from "react";
|
|
3
|
+
import { createTheme } from "../theme/index.js";
|
|
4
|
+
import { ThemeContextProvider } from "./ThemeContext.js";
|
|
5
|
+
function ThemeProvider({ children, theme = 'light', dynamicColors, onThemeChange }) {
|
|
6
|
+
const config = useMemo(()=>({
|
|
7
|
+
theme,
|
|
8
|
+
dynamicColors
|
|
9
|
+
}), [
|
|
10
|
+
theme,
|
|
11
|
+
dynamicColors
|
|
12
|
+
]);
|
|
13
|
+
const themeObject = useMemo(()=>createTheme(theme, dynamicColors), [
|
|
14
|
+
theme,
|
|
15
|
+
dynamicColors
|
|
16
|
+
]);
|
|
17
|
+
const contextValue = useMemo(()=>({
|
|
18
|
+
theme: themeObject,
|
|
19
|
+
config,
|
|
20
|
+
setTheme: onThemeChange
|
|
21
|
+
}), [
|
|
22
|
+
themeObject,
|
|
23
|
+
config,
|
|
24
|
+
onThemeChange
|
|
25
|
+
]);
|
|
26
|
+
return /*#__PURE__*/ jsx(ThemeContextProvider, {
|
|
27
|
+
value: contextValue,
|
|
28
|
+
children: children
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
export { ThemeProvider };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type DynamicColors, type ThemeColors } from '@particle-network/ui-shared';
|
|
2
|
+
export declare const DEFAULT_DYNAMIC_COLORS: {
|
|
3
|
+
bullish: string;
|
|
4
|
+
bearish: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function getColors(theme: 'light' | 'dark', dynamicColors?: DynamicColors): ThemeColors;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { colorMap } from "@particle-network/ui-shared";
|
|
2
|
+
const DEFAULT_DYNAMIC_COLORS = {
|
|
3
|
+
bullish: '#45B167',
|
|
4
|
+
bearish: '#E84A5A'
|
|
5
|
+
};
|
|
6
|
+
function getColors(theme, dynamicColors) {
|
|
7
|
+
const mergedDynamicColors = {
|
|
8
|
+
...DEFAULT_DYNAMIC_COLORS,
|
|
9
|
+
...dynamicColors
|
|
10
|
+
};
|
|
11
|
+
return {
|
|
12
|
+
...colorMap[theme],
|
|
13
|
+
bullish: mergedDynamicColors.bullish,
|
|
14
|
+
bearish: mergedDynamicColors.bearish
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export { DEFAULT_DYNAMIC_COLORS, getColors };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { DynamicColors } from '@particle-network/ui-shared';
|
|
2
|
+
import type { Theme, ThemeMode } from '../types';
|
|
3
|
+
export declare function createTheme(theme: ThemeMode, dynamicColors?: DynamicColors): Theme;
|
|
4
|
+
export * from './colors';
|
|
5
|
+
export * from './opacity';
|
|
6
|
+
export * from './radius';
|
|
7
|
+
export * from './spacing';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { getColors } from "./colors.js";
|
|
2
|
+
import { createRadius } from "./radius.js";
|
|
3
|
+
import { createSpacing } from "./spacing.js";
|
|
4
|
+
export * from "./colors.js";
|
|
5
|
+
export * from "./opacity.js";
|
|
6
|
+
export * from "./radius.js";
|
|
7
|
+
export * from "./spacing.js";
|
|
8
|
+
function createTheme(theme, dynamicColors) {
|
|
9
|
+
return {
|
|
10
|
+
theme,
|
|
11
|
+
colors: getColors(theme, dynamicColors),
|
|
12
|
+
spacing: createSpacing(),
|
|
13
|
+
radius: createRadius()
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export { createTheme };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { moderateScale } from "react-native-size-matters";
|
|
2
|
+
import { radiusMap } from "@particle-network/ui-shared";
|
|
3
|
+
function createRadius() {
|
|
4
|
+
return Object.entries(radiusMap).reduce((acc, [key, value])=>{
|
|
5
|
+
acc[key] = 'full' === key ? value : moderateScale(value);
|
|
6
|
+
return acc;
|
|
7
|
+
}, {});
|
|
8
|
+
}
|
|
9
|
+
const radius = createRadius();
|
|
10
|
+
export { createRadius, radius };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ms } from "react-native-size-matters";
|
|
2
|
+
import { spacingMap } from "@particle-network/ui-shared";
|
|
3
|
+
function createSpacing() {
|
|
4
|
+
return Object.entries(spacingMap).reduce((acc, [key, value])=>{
|
|
5
|
+
acc[key] = ms(value);
|
|
6
|
+
return acc;
|
|
7
|
+
}, {});
|
|
8
|
+
}
|
|
9
|
+
const spacing = createSpacing();
|
|
10
|
+
export { createSpacing, spacing };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type * from './theme';
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { DynamicColors, RadiusScale, SpacingScale, ThemeColors } from '@particle-network/ui-shared';
|
|
2
|
+
export type ThemeMode = 'light' | 'dark';
|
|
3
|
+
export interface ThemeConfig {
|
|
4
|
+
theme: ThemeMode;
|
|
5
|
+
dynamicColors?: DynamicColors;
|
|
6
|
+
}
|
|
7
|
+
export interface Theme {
|
|
8
|
+
theme: ThemeMode;
|
|
9
|
+
colors: ThemeColors;
|
|
10
|
+
spacing: SpacingScale;
|
|
11
|
+
radius: RadiusScale;
|
|
12
|
+
}
|
|
13
|
+
export interface ThemeContextValue {
|
|
14
|
+
theme: Theme;
|
|
15
|
+
config: ThemeConfig;
|
|
16
|
+
setTheme?: (theme: ThemeMode) => void;
|
|
17
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ImpactFeedbackStyle, impactAsync } from "expo-haptics";
|
|
2
|
+
const triggerHapticFeedback = async (style = 'light')=>{
|
|
3
|
+
try {
|
|
4
|
+
const feedbackStyleMap = {
|
|
5
|
+
light: ImpactFeedbackStyle.Light,
|
|
6
|
+
medium: ImpactFeedbackStyle.Medium,
|
|
7
|
+
heavy: ImpactFeedbackStyle.Heavy
|
|
8
|
+
};
|
|
9
|
+
const feedbackStyle = feedbackStyleMap[style];
|
|
10
|
+
if (feedbackStyle) await impactAsync(feedbackStyle);
|
|
11
|
+
else console.warn(`Invalid haptic feedback style: ${style}`);
|
|
12
|
+
} catch (error) {
|
|
13
|
+
console.error('Failed to trigger haptic feedback:', error);
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
export { triggerHapticFeedback };
|
package/package.json
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@particle-network/ui-native",
|
|
3
|
+
"version": "0.0.2",
|
|
4
|
+
"license": "MIT",
|
|
5
|
+
"main": "./entry.js",
|
|
6
|
+
"module": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"start": "expo start",
|
|
10
|
+
"android": "expo start --android",
|
|
11
|
+
"ios": "expo start --ios",
|
|
12
|
+
"web": "storybook dev -p 6006",
|
|
13
|
+
"storybook:build": "storybook build --docs",
|
|
14
|
+
"storybook:preview": "serve storybook-static",
|
|
15
|
+
"storybook:generate": "sb-rn-get-stories",
|
|
16
|
+
"type-check": "npx tsc --noEmit -p ./tsconfig.json",
|
|
17
|
+
"build": "rslib build",
|
|
18
|
+
"build:watch": "rslib build --watch",
|
|
19
|
+
"publish": "./scripts/publish.sh",
|
|
20
|
+
"publish:patch": "npm version patch && yarn publish",
|
|
21
|
+
"publish:minor": "npm version minor && yarn publish",
|
|
22
|
+
"publish:major": "npm version major && yarn publish",
|
|
23
|
+
"lint": "eslint . --no-error-on-unmatched-pattern --quiet",
|
|
24
|
+
"lint:fix": "eslint . --fix --no-error-on-unmatched-pattern --quiet",
|
|
25
|
+
"clean": "rm -rf .turbo node_modules dist"
|
|
26
|
+
},
|
|
27
|
+
"files": [
|
|
28
|
+
"dist",
|
|
29
|
+
"README.md",
|
|
30
|
+
"LICENSE"
|
|
31
|
+
],
|
|
32
|
+
"repository": {
|
|
33
|
+
"type": "git",
|
|
34
|
+
"url": "https://gitlab.minijoy.work/frontend/ux-design",
|
|
35
|
+
"directory": "packages/ui-react-native"
|
|
36
|
+
},
|
|
37
|
+
"keywords": [
|
|
38
|
+
"react-native",
|
|
39
|
+
"ui-components",
|
|
40
|
+
"design-system",
|
|
41
|
+
"expo",
|
|
42
|
+
"typescript"
|
|
43
|
+
],
|
|
44
|
+
"author": "UniversalX",
|
|
45
|
+
"dependencies": {
|
|
46
|
+
"@particle-network/ui-shared": "*"
|
|
47
|
+
},
|
|
48
|
+
"devDependencies": {
|
|
49
|
+
"@babel/core": "^7.24.0",
|
|
50
|
+
"@babel/preset-env": "^7.25.4",
|
|
51
|
+
"@chromatic-com/storybook": "^4.0.0",
|
|
52
|
+
"@expo/metro-runtime": "~5.0.4",
|
|
53
|
+
"@gorhom/bottom-sheet": "^5.1.2",
|
|
54
|
+
"@react-native-async-storage/async-storage": "2.1.2",
|
|
55
|
+
"@react-native-community/datetimepicker": "8.4.1",
|
|
56
|
+
"@react-native-community/slider": "4.5.6",
|
|
57
|
+
"@particle-network/eslint-config": "*",
|
|
58
|
+
"@rsbuild/core": "^1.5.0",
|
|
59
|
+
"@rsbuild/plugin-react": "^1.3.5",
|
|
60
|
+
"@rslib/core": "^0.12.2",
|
|
61
|
+
"@storybook/addon-docs": "^9",
|
|
62
|
+
"@storybook/addon-ondevice-actions": "^9",
|
|
63
|
+
"@storybook/addon-ondevice-backgrounds": "^9",
|
|
64
|
+
"@storybook/addon-ondevice-controls": "^9",
|
|
65
|
+
"@storybook/addon-ondevice-notes": "^9",
|
|
66
|
+
"@storybook/react": "^9",
|
|
67
|
+
"@storybook/react-native": "^9",
|
|
68
|
+
"@storybook/react-native-web-vite": "^9",
|
|
69
|
+
"@types/react": "~19.0.10",
|
|
70
|
+
"ahooks": "^3.9.4",
|
|
71
|
+
"babel-plugin-module-resolver": "^5.0.2",
|
|
72
|
+
"babel-plugin-react-docgen-typescript": "^1.5.1",
|
|
73
|
+
"cross-env": "^7.0.3",
|
|
74
|
+
"expo": "~53.0.22",
|
|
75
|
+
"expo-constants": "~17.1.6",
|
|
76
|
+
"expo-haptics": "^14.1.4",
|
|
77
|
+
"expo-status-bar": "~2.2.3",
|
|
78
|
+
"lucide-react-native": "^0.541.0",
|
|
79
|
+
"react": "19.0.0",
|
|
80
|
+
"react-dom": "19.0.0",
|
|
81
|
+
"react-native": "0.79.5",
|
|
82
|
+
"react-native-gesture-handler": "~2.24.0",
|
|
83
|
+
"react-native-paper": "^5.14.5",
|
|
84
|
+
"react-native-reanimated": "~3.17.4",
|
|
85
|
+
"react-native-safe-area-context": "5.4.0",
|
|
86
|
+
"react-native-size-matters": "^0.4.2",
|
|
87
|
+
"react-native-svg": "15.11.2",
|
|
88
|
+
"react-native-web": "^0.20.0",
|
|
89
|
+
"storybook": "^9",
|
|
90
|
+
"typescript": "~5.8.3",
|
|
91
|
+
"vite": "^6.3.5"
|
|
92
|
+
},
|
|
93
|
+
"resolutions": {
|
|
94
|
+
"react-docgen-typescript": "2.2.2",
|
|
95
|
+
"react-native-web": "^0.20.0",
|
|
96
|
+
"unfetch": "^4.2.0"
|
|
97
|
+
},
|
|
98
|
+
"overrides": {
|
|
99
|
+
"react-docgen-typescript": "2.2.2",
|
|
100
|
+
"react-native-web": "^0.20.0",
|
|
101
|
+
"unfetch": "^4.2.0"
|
|
102
|
+
},
|
|
103
|
+
"expo": {
|
|
104
|
+
"doctor": {
|
|
105
|
+
"reactNativeDirectoryCheck": {
|
|
106
|
+
"listUnknownPackages": false
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|