react-native-sj-prime-base v0.0.70
// tailwind.config.js 설정
module.exports = {
content: [
// 기존 설정들...
"./node_modules/react-native-sj-prime-base/dist/**/*.js"
],
}
// 라이브러리 배포용 package.json
{
"name": "react-native-sj-prime-base",
"version": "0.0.70",
"private": false,
"description": "React Native UI Component Library",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"files": [
"dist",
"src"
],
"scripts": {
"build": "tsc && cp -R src/library/images dist/library/",
"prepare": "pnpm run build",
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
"type-check": "tsc --noemit",
"test": "jest",
"paste:modules": "cp -R re_modules/* node_modules"
},
"peerDependencies": {
"react": ">=18.3.0",
"react-native": ">=0.72.0",
"react-native-paper": "^5.0.0",
"react-native-indicators": "^0.17.0",
"@react-navigation/native": "^7.0.4",
"react-native-safe-area-context": ">= 4.0.0",
"react-native-screens": ">= 4.0.0",
"tailwind-variants": "^0.2.0",
"react-native-gesture-handler": "~2.20.0",
"react-native-reanimated": "~3.16.0",
"nativewind": "^4.0.0",
"react-native-svg": "~15.8.0",
"moti": "^0.29.0",
"@react-native-community/blur": "^4.4.1",
"@gorhom/bottom-sheet": "^5.0.5"
},
"dependencies": {
"react-native-paper": "^5.12.5",
"react-native-indicators": "^0.17.0",
"@react-navigation/elements": "^2.1.1",
"tailwind-variants": "^0.2.1",
"react-native-flash-message": "^0.4.2",
"react-hook-form": "^7.53.0",
"@hookform/resolvers": "^3.9.0",
"zod": "^3.23.8",
"react-error-boundary": "^4.0.13"
},
"devDependencies": {
"@types/react": "~18.3.12",
"@types/react-native": "^0.76.0",
"typescript": "^5.3.3",
"eslint": "^8.57.0",
"jest": "^29.7.0",
"tailwindcss": "3.4.4"
},
"keywords": [
"react-native",
"react-component",
"ui-library",
"react-native-component",
"mobile",
"ios",
"android",
"ui",
"design-system",
"react-native-ui"
],
"author": "SjSofttech",
"license": "MIT",
"repository": {
"type": "git",
"url": "git+https://github.com/user/repo-name.git"
},
"bugs": {
"url": "https://github.com/user/repo-name/issues"
},
"homepage": "https://github.com/user/repo-name#readme",
"publishConfig": {
"access": "public"
},
"engines": {
"node": ">=14.0.0"
}
}
// 로컬 개발용 package.json
{
"name": "react-native-sj-prime-base",
"version": "0.0.1",
"private": false,
"description": "React Native UI Component Library",
"main": "expo-router/entry",
"scripts": {
"build": "tsc",
"prepare": "pnpm run build",
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
"type-check": "tsc --noemit",
"test": "jest",
"ios": "cross-env EXPO_NO_DOTENV=1 expo run:ios",
"android": "cross-env EXPO_NO_DOTENV=1 expo run:android",
"paste:modules": "cp -R re_modules/* node_modules"
},
"peerDependencies": {
"@react-navigation/native": "^7.0.4",
"react": ">=18.3.0",
"react-native": ">=0.72.0",
"react-native-indicators": "^0.17.0",
"react-native-paper": "^5.0.0",
"react-native-safe-area-context": ">= 4.0.0",
"react-native-screens": ">= 4.0.0"
},
"dependencies": {
"@expo/metro-runtime": "^4.0.0",
"@fluentui/react-native-icons": "^2.0.266",
"@gorhom/bottom-sheet": "^5.0.5",
"@hookform/resolvers": "^3.9.0",
"@react-native-community/blur": "^4.4.1",
"@shopify/flash-list": "1.7.1",
"@tanstack/react-query": "^5.52.1",
"app-icon-badge": "^0.1.2",
"axios": "^1.7.5",
"expo": "~52.0.6",
"expo-constants": "~17.0.3",
"expo-dev-client": "~5.0.1",
"expo-font": "~13.0.1",
"expo-image": "~2.0.0",
"expo-linking": "~7.0.2",
"expo-localization": "~16.0.0",
"expo-router": "~4.0.5",
"expo-splash-screen": "~0.29.9",
"expo-status-bar": "~2.0.0",
"expo-system-ui": "~4.0.2",
"i18next": "^23.14.0",
"lodash.memoize": "^4.1.2",
"moti": "^0.29.0",
"nativewind": "^4.1.21",
"react": ">=18.3.0",
"react-dom": "18.3.1",
"react-error-boundary": "^4.0.13",
"react-hook-form": "^7.53.0",
"react-i18next": "^15.0.1",
"react-native": ">=0.72.0",
"react-native-flash-message": "^0.4.2",
"react-native-gesture-handler": "~2.20.2",
"react-native-indicators": "^0.17.0",
"react-native-keyboard-controller": "^1.13.2",
"react-native-mmkv": "~3.1.0",
"react-native-paper": "^5.0.0",
"react-native-reanimated": "~3.16.1",
"react-native-restart": "0.0.27",
"react-native-safe-area-context": "4.12.0",
"react-native-screens": "^4.0.0",
"react-native-sj-prime-base": "^0.0.1",
"react-native-svg": "~15.8.0",
"react-native-web": "~0.19.13",
"react-native-webview": "^13.13.2",
"react-query-kit": "^3.3.0",
"tailwind-variants": "^0.2.1",
"zod": "^3.23.8",
"zustand": "^4.5.5"
},
"devDependencies": {
"@babel/core": "^7.24.5",
"@commitlint/cli": "^19.2.2",
"@commitlint/config-conventional": "^19.2.2",
"@dev-plugins/react-query": "^0.0.7",
"@expo/config": "~10.0.3",
"@testing-library/jest-dom": "^6.5.0",
"@testing-library/react-native": "^12.7.2",
"@types/i18n-js": "^3.8.9",
"@types/jest": "^29.5.12",
"@types/lodash.memoize": "^4.1.9",
"@types/react": "~18.3.12",
"@types/react-native": "^0.73.0",
"@typescript-eslint/eslint-plugin": "^5.62.0",
"@typescript-eslint/parser": "^5.62.0",
"babel-plugin-module-resolver": "^5.0.2",
"cross-env": "^7.0.3",
"dotenv": "^16.4.5",
"eslint": "^8.57.0",
"eslint-config-expo": "^7.1.2",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-i18n-json": "^4.0.0",
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-react-compiler": "19.0.0-beta-a7bf2bd-20241110",
"eslint-plugin-simple-import-sort": "^10.0.0",
"eslint-plugin-tailwindcss": "^3.15.2",
"eslint-plugin-testing-library": "^6.2.2",
"eslint-plugin-unicorn": "^46.0.1",
"eslint-plugin-unused-imports": "^2.0.0",
"husky": "^9.1.5",
"jest": "^29.7.0",
"jest-environment-jsdom": "^29.7.0",
"jest-expo": "~52.0.1",
"jest-junit": "^16.0.0",
"lint-staged": "^15.2.9",
"np": "^10.0.7",
"prettier": "^3.3.3",
"tailwindcss": "3.4.4",
"ts-jest": "^29.1.2",
"typescript": "^5.3.3"
},
"keywords": [
"react-native",
"react-component",
"ui-library"
],
"packageManager": "pnpm@9.12.3",
"expo": {
"doctor": {
"reactNativeDirectoryCheck": {
"listUnknownPackages": false,
"exclude": [
"react-native-restart"
]
}
},
"install": {
"exclude": [
"eslint-config-expo"
]
}
},
"osMetadata": {
"initVersion": "7.0.0"
},
"author": "SJ",
"license": "MIT",
"repository": {
"type": "git",
"url": "git+https://github.com/user/repo-name.git"
}
}
// tsconfig.json 설정
{
"compilerOptions": {
"outDir": "dist",
"declaration": true,
"allowJs": true,
"declarationMap": true,
"sourceMap": true,
"strict": true,
"jsx": "react-native",
"module": "commonjs",
"target": "es5",
"lib": ["es6", "dom"],
"moduleResolution": "node",
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"skipLibCheck": true,
"rootDir": "src",
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"],
"@env": ["./src/lib/env.js"]
},
"resolveJsonModule": true,
"noImplicitAny": false,
"ignoreDeprecations": "5.0"
},
"include": ["src/**/*"],
"exclude": [
"node_modules",
"dist",
"**/__tests__/*",
"**/*.test.ts",
"**/*.test.tsx"
]
}
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
7 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago