@highbeek/create-rnstarterkit 1.0.2-beta.0 → 1.0.2-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/dist/bin/create-rnstarterkit.js +17 -3
  2. package/dist/src/generators/appGenerator.js +945 -60
  3. package/dist/templates/cli-base/.bundle/config +2 -0
  4. package/dist/templates/cli-base/.eslintrc.js +4 -0
  5. package/dist/templates/cli-base/.prettierrc.js +5 -0
  6. package/dist/templates/cli-base/.watchmanconfig +1 -0
  7. package/dist/templates/cli-base/App.tsx +45 -0
  8. package/dist/templates/cli-base/Gemfile +16 -0
  9. package/dist/templates/cli-base/Gemfile.lock +169 -0
  10. package/dist/templates/cli-base/README.md +97 -0
  11. package/dist/templates/cli-base/__tests__/App.test.tsx +13 -0
  12. package/dist/templates/cli-base/android/app/build.gradle +119 -0
  13. package/dist/templates/cli-base/android/app/debug.keystore +0 -0
  14. package/dist/templates/cli-base/android/app/proguard-rules.pro +10 -0
  15. package/dist/templates/cli-base/android/app/src/main/AndroidManifest.xml +27 -0
  16. package/dist/templates/cli-base/android/app/src/main/java/com/baseapp/MainActivity.kt +22 -0
  17. package/dist/templates/cli-base/android/app/src/main/java/com/baseapp/MainApplication.kt +27 -0
  18. package/dist/templates/cli-base/android/app/src/main/res/drawable/rn_edit_text_material.xml +37 -0
  19. package/dist/templates/cli-base/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  20. package/dist/templates/cli-base/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  21. package/dist/templates/cli-base/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  22. package/dist/templates/cli-base/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  23. package/dist/templates/cli-base/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  24. package/dist/templates/cli-base/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  25. package/dist/templates/cli-base/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  26. package/dist/templates/cli-base/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  27. package/dist/templates/cli-base/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  28. package/dist/templates/cli-base/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  29. package/dist/templates/cli-base/android/app/src/main/res/values/strings.xml +3 -0
  30. package/dist/templates/cli-base/android/app/src/main/res/values/styles.xml +9 -0
  31. package/dist/templates/cli-base/android/build.gradle +21 -0
  32. package/dist/templates/cli-base/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  33. package/dist/templates/cli-base/android/gradle/wrapper/gradle-wrapper.properties +7 -0
  34. package/dist/templates/cli-base/android/gradle.properties +44 -0
  35. package/dist/templates/cli-base/android/gradlew +251 -0
  36. package/dist/templates/cli-base/android/gradlew.bat +99 -0
  37. package/dist/templates/cli-base/android/settings.gradle +6 -0
  38. package/dist/templates/cli-base/app.json +4 -0
  39. package/dist/templates/cli-base/babel.config.js +3 -0
  40. package/dist/templates/cli-base/index.js +9 -0
  41. package/dist/templates/cli-base/ios/.xcode.env +11 -0
  42. package/dist/templates/cli-base/ios/BaseApp/AppDelegate.swift +48 -0
  43. package/dist/templates/cli-base/ios/BaseApp/Images.xcassets/AppIcon.appiconset/Contents.json +53 -0
  44. package/dist/templates/cli-base/ios/BaseApp/Images.xcassets/Contents.json +6 -0
  45. package/dist/templates/cli-base/ios/BaseApp/Info.plist +60 -0
  46. package/dist/templates/cli-base/ios/BaseApp/LaunchScreen.storyboard +47 -0
  47. package/dist/templates/cli-base/ios/BaseApp/PrivacyInfo.xcprivacy +37 -0
  48. package/dist/templates/cli-base/ios/BaseApp.xcodeproj/project.pbxproj +494 -0
  49. package/dist/templates/cli-base/ios/BaseApp.xcodeproj/xcshareddata/xcschemes/BaseApp.xcscheme +88 -0
  50. package/dist/templates/cli-base/ios/BaseApp.xcworkspace/contents.xcworkspacedata +10 -0
  51. package/dist/templates/cli-base/ios/Podfile +34 -0
  52. package/dist/templates/cli-base/ios/Podfile.lock +2165 -0
  53. package/dist/templates/cli-base/jest.config.js +3 -0
  54. package/dist/templates/cli-base/metro.config.js +11 -0
  55. package/dist/templates/cli-base/package-lock.json +11859 -0
  56. package/dist/templates/cli-base/package.json +41 -0
  57. package/dist/templates/cli-base/tsconfig.json +8 -0
  58. package/dist/templates/expo-base/.vscode/extensions.json +1 -0
  59. package/dist/templates/expo-base/.vscode/settings.json +7 -0
  60. package/dist/templates/expo-base/README.md +50 -0
  61. package/dist/templates/expo-base/app/_layout.tsx +9 -0
  62. package/dist/templates/expo-base/app/index.tsx +9 -0
  63. package/dist/templates/expo-base/app.json +48 -0
  64. package/dist/templates/expo-base/assets/images/android-icon-background.png +0 -0
  65. package/dist/templates/expo-base/assets/images/android-icon-foreground.png +0 -0
  66. package/dist/templates/expo-base/assets/images/android-icon-monochrome.png +0 -0
  67. package/dist/templates/expo-base/assets/images/favicon.png +0 -0
  68. package/dist/templates/expo-base/assets/images/icon.png +0 -0
  69. package/dist/templates/expo-base/assets/images/partial-react-logo.png +0 -0
  70. package/dist/templates/expo-base/assets/images/react-logo.png +0 -0
  71. package/dist/templates/expo-base/assets/images/react-logo@2x.png +0 -0
  72. package/dist/templates/expo-base/assets/images/react-logo@3x.png +0 -0
  73. package/dist/templates/expo-base/assets/images/splash-icon.png +0 -0
  74. package/dist/templates/expo-base/components/ui/collapsible.tsx +45 -0
  75. package/dist/templates/expo-base/components/ui/icon-symbol.ios.tsx +32 -0
  76. package/dist/templates/expo-base/components/ui/icon-symbol.tsx +41 -0
  77. package/dist/templates/expo-base/eslint.config.js +10 -0
  78. package/dist/templates/expo-base/package-lock.json +12916 -0
  79. package/dist/templates/expo-base/package.json +46 -0
  80. package/dist/templates/expo-base/tsconfig.json +17 -0
  81. package/dist/templates/optional/apiClient/api/client.ts +142 -0
  82. package/dist/templates/optional/apiClient/api/index.ts +1 -0
  83. package/dist/templates/optional/apiClient/config/env.cli.ts +5 -0
  84. package/dist/templates/optional/apiClient/config/env.expo.ts +4 -0
  85. package/dist/templates/optional/apiClient/config/env.ts +1 -0
  86. package/dist/templates/optional/apiClient/env.d.ts +3 -0
  87. package/dist/templates/optional/auth-context/api/endpoints/auth.ts +14 -0
  88. package/dist/templates/optional/auth-context/context/AuthContext.tsx +47 -0
  89. package/dist/templates/optional/auth-context/navigation/ProtectedStack.tsx +38 -0
  90. package/dist/templates/optional/auth-context/navigation/cli/BottomTabs.tsx +17 -0
  91. package/dist/templates/optional/auth-context/navigation/expo/BottomTabs.tsx +29 -0
  92. package/dist/templates/optional/auth-context/screens/HomeScreen.tsx +14 -0
  93. package/dist/templates/optional/auth-context/screens/LoginScreen.tsx +62 -0
  94. package/dist/templates/optional/auth-context/screens/ProfileScreen.tsx +10 -0
  95. package/dist/templates/optional/auth-context/screens/RegisterScreen.tsx +62 -0
  96. package/dist/templates/optional/auth-context/screens/SettingsScreen.tsx +10 -0
  97. package/dist/templates/optional/auth-context/utils/storage.ts +13 -0
  98. package/dist/templates/optional/auth-redux/api/endpoints/auth.ts +14 -0
  99. package/dist/templates/optional/auth-redux/navigation/ProtectedStack.tsx +30 -0
  100. package/dist/templates/optional/auth-redux/navigation/cli/BottomTabs.tsx +17 -0
  101. package/dist/templates/optional/auth-redux/navigation/expo/BottomTabs.tsx +31 -0
  102. package/dist/templates/optional/auth-redux/screens/HomeScreen.tsx +15 -0
  103. package/dist/templates/optional/auth-redux/screens/LoginScreen.tsx +63 -0
  104. package/dist/templates/optional/auth-redux/screens/ProfileScreen.tsx +14 -0
  105. package/dist/templates/optional/auth-redux/screens/RegisterScreen.tsx +63 -0
  106. package/dist/templates/optional/auth-redux/screens/SettingsScreen.tsx +14 -0
  107. package/dist/templates/optional/auth-redux/store/authSlice.ts +25 -0
  108. package/dist/templates/optional/auth-redux/store/store.ts +11 -0
  109. package/dist/templates/optional/auth-zustand/api/endpoints/auth.ts +14 -0
  110. package/dist/templates/optional/auth-zustand/navigation/BottomTabs.tsx +1 -0
  111. package/dist/templates/optional/auth-zustand/navigation/ProtectedStack.tsx +44 -0
  112. package/dist/templates/optional/auth-zustand/navigation/cli/BottomTabs.tsx +17 -0
  113. package/dist/templates/optional/auth-zustand/navigation/expo/BottomTabs.tsx +31 -0
  114. package/dist/templates/optional/auth-zustand/screens/HomeScreen.tsx +14 -0
  115. package/dist/templates/optional/auth-zustand/screens/LoginScreen.tsx +62 -0
  116. package/dist/templates/optional/auth-zustand/screens/ProfileScreen.tsx +10 -0
  117. package/dist/templates/optional/auth-zustand/screens/RegisterScreen.tsx +62 -0
  118. package/dist/templates/optional/auth-zustand/screens/SettingsScreen.tsx +10 -0
  119. package/dist/templates/optional/auth-zustand/store/authStore.ts +30 -0
  120. package/dist/templates/optional/auth-zustand/utils/storage.ts +13 -0
  121. package/package.json +2 -2
@@ -39,14 +39,14 @@ async function main() {
39
39
  type: "rawlist",
40
40
  name: "state",
41
41
  message: "State management?",
42
- choices: ["None", "Redux Toolkit", "Zustand"],
43
- default: "None",
42
+ choices: ["None", "Context API", "Redux Toolkit", "Zustand"],
43
+ default: "Context API",
44
44
  },
45
45
  {
46
46
  type: "rawlist",
47
47
  name: "dataFetching",
48
48
  message: "Data fetching library?",
49
- choices: ["None", "React Query", "SWR", "Axios"],
49
+ choices: ["None", "React Query", "SWR"],
50
50
  default: "None",
51
51
  },
52
52
  {
@@ -55,6 +55,12 @@ async function main() {
55
55
  message: "Validation libraries?",
56
56
  choices: ["Formik", "React Hook Form", "Yup"],
57
57
  default: [],
58
+ validate: (selected) => {
59
+ if (selected.includes("Formik") && !selected.includes("Yup")) {
60
+ return "Formik requires Yup in this starter. Select Yup as well.";
61
+ }
62
+ return true;
63
+ },
58
64
  },
59
65
  {
60
66
  type: "rawlist",
@@ -75,6 +81,14 @@ async function main() {
75
81
  message: "Include API client scaffold?",
76
82
  default: true,
77
83
  },
84
+ {
85
+ type: "rawlist",
86
+ name: "apiClientType",
87
+ message: "API client transport?",
88
+ choices: ["Fetch", "Axios"],
89
+ default: "Fetch",
90
+ when: (answers) => answers.apiClient,
91
+ },
78
92
  {
79
93
  type: "confirm",
80
94
  name: "ci",