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"
]
}
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
3 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
5 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
7 months ago
7 months ago
7 months ago
7 months ago