nx-react-native-cli 1.0.10 → 1.0.12

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 (113) hide show
  1. package/lib/index.cjs +17 -17
  2. package/package.json +2 -2
  3. package/templates/.eslintrc.json +293 -0
  4. package/templates/.husky/pre-commit +5 -0
  5. package/templates/.husky/pre-push +15 -0
  6. package/templates/.ignorefile +146 -0
  7. package/templates/.nvmrc +1 -0
  8. package/templates/.prettierignore +8 -0
  9. package/templates/.prettierrc +13 -0
  10. package/templates/.ruby-version +1 -0
  11. package/templates/.vscode/extensions.json +10 -0
  12. package/templates/.vscode/settings.json +18 -0
  13. package/templates/apps/mobile/.env +3 -0
  14. package/templates/apps/mobile/.env.template +3 -0
  15. package/templates/apps/mobile/.eslintrc.json +34 -0
  16. package/templates/apps/mobile/Gemfile +11 -0
  17. package/templates/apps/mobile/android/app/build.gradle +164 -0
  18. package/templates/apps/mobile/android/app/src/dev/res/values/strings.xml +3 -0
  19. package/templates/apps/mobile/android/app/src/production/res/values/strings.xml +3 -0
  20. package/templates/apps/mobile/android/build.gradle +34 -0
  21. package/templates/apps/mobile/babel.config.json +14 -0
  22. package/templates/apps/mobile/fastlane/.env.template +24 -0
  23. package/templates/apps/mobile/fastlane/Fastfile +303 -0
  24. package/templates/apps/mobile/fastlane/Matchfile +5 -0
  25. package/templates/apps/mobile/fastlane/Pluginfile +6 -0
  26. package/templates/apps/mobile/fastlane/README.md +65 -0
  27. package/templates/apps/mobile/package.json +77 -0
  28. package/templates/apps/mobile/project.json +102 -0
  29. package/templates/apps/mobile/src/app/index.tsx +68 -0
  30. package/templates/apps/mobile/src/components/atoms/BottomSheet/bottom-sheet.component.tsx +145 -0
  31. package/templates/apps/mobile/src/components/atoms/BottomSheet/index.ts +1 -0
  32. package/templates/apps/mobile/src/components/atoms/Button/button.component.tsx +55 -0
  33. package/templates/apps/mobile/src/components/atoms/Button/index.ts +2 -0
  34. package/templates/apps/mobile/src/components/atoms/Button/outlined-button.component.tsx +59 -0
  35. package/templates/apps/mobile/src/components/atoms/Divider/divider-component.tsx +13 -0
  36. package/templates/apps/mobile/src/components/atoms/Divider/index.ts +1 -0
  37. package/templates/apps/mobile/src/components/atoms/InputLayout/index.ts +1 -0
  38. package/templates/apps/mobile/src/components/atoms/InputLayout/input-layout.component.tsx +34 -0
  39. package/templates/apps/mobile/src/components/atoms/ListLoadingItem/index.ts +1 -0
  40. package/templates/apps/mobile/src/components/atoms/ListLoadingItem/list-loading-item.component.tsx +56 -0
  41. package/templates/apps/mobile/src/components/atoms/Modal/index.ts +1 -0
  42. package/templates/apps/mobile/src/components/atoms/Modal/modal.component.tsx +58 -0
  43. package/templates/apps/mobile/src/components/atoms/ScreenLoader/index.ts +1 -0
  44. package/templates/apps/mobile/src/components/atoms/ScreenLoader/screen-loader.component.tsx +17 -0
  45. package/templates/apps/mobile/src/components/atoms/Skeleton/index.ts +1 -0
  46. package/templates/apps/mobile/src/components/atoms/Skeleton/skeleton.component.tsx +42 -0
  47. package/templates/apps/mobile/src/components/atoms/Text/index.ts +1 -0
  48. package/templates/apps/mobile/src/components/atoms/Text/text.component.tsx +23 -0
  49. package/templates/apps/mobile/src/components/atoms/TextInput/constants.ts +43 -0
  50. package/templates/apps/mobile/src/components/atoms/TextInput/index.ts +2 -0
  51. package/templates/apps/mobile/src/components/atoms/TextInput/text-input.component.tsx +137 -0
  52. package/templates/apps/mobile/src/components/atoms/index.ts +10 -0
  53. package/templates/apps/mobile/src/components/index.ts +3 -0
  54. package/templates/apps/mobile/src/components/molecules/BackButton/back-button.component.tsx +58 -0
  55. package/templates/apps/mobile/src/components/molecules/BackButton/index.ts +1 -0
  56. package/templates/apps/mobile/src/components/molecules/BottomActionsContainer/BottomActionsContainer.component.tsx +28 -0
  57. package/templates/apps/mobile/src/components/molecules/BottomActionsContainer/index.ts +1 -0
  58. package/templates/apps/mobile/src/components/molecules/ScreenContainer/index.ts +1 -0
  59. package/templates/apps/mobile/src/components/molecules/ScreenContainer/screen-container.component.tsx +100 -0
  60. package/templates/apps/mobile/src/components/molecules/ScreenHeader/index.ts +1 -0
  61. package/templates/apps/mobile/src/components/molecules/ScreenHeader/screen-header.component.tsx +71 -0
  62. package/templates/apps/mobile/src/components/molecules/StorageManager/StorageManager.component.tsx +18 -0
  63. package/templates/apps/mobile/src/components/molecules/StorageManager/index.ts +1 -0
  64. package/templates/apps/mobile/src/components/molecules/index.ts +5 -0
  65. package/templates/apps/mobile/src/components/organisms/index.ts +1 -0
  66. package/templates/apps/mobile/src/config/index.ts +13 -0
  67. package/templates/apps/mobile/src/dimens/index.ts +1 -0
  68. package/templates/apps/mobile/src/env.d.ts +17 -0
  69. package/templates/apps/mobile/src/hooks/index.ts +9 -0
  70. package/templates/apps/mobile/src/hooks/useAppState.hook.tsx +20 -0
  71. package/templates/apps/mobile/src/hooks/useApplicationDimensions.hook.tsx +10 -0
  72. package/templates/apps/mobile/src/hooks/useDebounce.hook.ts +11 -0
  73. package/templates/apps/mobile/src/hooks/useGetLayoutHeight.hook.tsx +27 -0
  74. package/templates/apps/mobile/src/hooks/useGetLayoutWidth.hook.tsx +27 -0
  75. package/templates/apps/mobile/src/hooks/useNavigation.hook.tsx +8 -0
  76. package/templates/apps/mobile/src/hooks/useShakeAnimation.hook.tsx +32 -0
  77. package/templates/apps/mobile/src/hooks/useTextInputChangeFocus.hook.tsx +12 -0
  78. package/templates/apps/mobile/src/hooks/useThrottle.hook.ts +11 -0
  79. package/templates/apps/mobile/src/icons/arrow-left.svg +3 -0
  80. package/templates/apps/mobile/src/icons/checkbox-active.svg +4 -0
  81. package/templates/apps/mobile/src/icons/checkbox-unactive.svg +4 -0
  82. package/templates/apps/mobile/src/icons/close.svg +3 -0
  83. package/templates/apps/mobile/src/icons/download.svg +4 -0
  84. package/templates/apps/mobile/src/icons/email.svg +10 -0
  85. package/templates/apps/mobile/src/icons/eye-slash.svg +11 -0
  86. package/templates/apps/mobile/src/icons/eye.svg +4 -0
  87. package/templates/apps/mobile/src/icons/gear.svg +4 -0
  88. package/templates/apps/mobile/src/icons/home.svg +3 -0
  89. package/templates/apps/mobile/src/icons/index.ts +33 -0
  90. package/templates/apps/mobile/src/icons/pencil.svg +3 -0
  91. package/templates/apps/mobile/src/icons/phone.svg +3 -0
  92. package/templates/apps/mobile/src/icons/user-circle.svg +3 -0
  93. package/templates/apps/mobile/src/icons/user.svg +4 -0
  94. package/templates/apps/mobile/src/icons/warning.svg +3 -0
  95. package/templates/apps/mobile/src/main.tsx +5 -0
  96. package/templates/apps/mobile/src/routes/index.tsx +65 -0
  97. package/templates/apps/mobile/src/routes/privateRoutes.tsx +32 -0
  98. package/templates/apps/mobile/src/routes/publicRoutes.tsx +26 -0
  99. package/templates/apps/mobile/src/routes/routes.enum.ts +5 -0
  100. package/templates/apps/mobile/src/routes/screen-options.ts +9 -0
  101. package/templates/apps/mobile/src/routes/screens.enum.ts +4 -0
  102. package/templates/apps/mobile/src/screens/HomeScreen/home.screen.tsx +12 -0
  103. package/templates/apps/mobile/src/screens/LoginScreen/login.screen.tsx +13 -0
  104. package/templates/apps/mobile/src/stores/index.ts +1 -0
  105. package/templates/apps/mobile/src/stores/local-storage.store.ts +60 -0
  106. package/templates/apps/mobile/src/stores/mmkvStorage.ts +19 -0
  107. package/templates/apps/mobile/src/tailwind/index.ts +24 -0
  108. package/templates/apps/mobile/src/types/component.type.ts +13 -0
  109. package/templates/apps/mobile/src/types/index.ts +1 -0
  110. package/templates/apps/mobile/tailwind.config.js +80 -0
  111. package/templates/apps/mobile/tsconfig.app.json +11 -0
  112. package/templates/check-env.sh +44 -0
  113. package/templates/clean-generated-outputs.sh +32 -0
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "nx-react-native-cli",
3
- "version": "1.0.10",
3
+ "version": "1.0.12",
4
4
  "description": "A react native starter (with NX) cli script",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "lib",
8
- "contents",
8
+ "templates",
9
9
  "README.md",
10
10
  "package.json"
11
11
  ],
@@ -0,0 +1,293 @@
1
+ {
2
+ "root": true,
3
+ "ignorePatterns": ["**/*"],
4
+ "plugins": ["@nx"],
5
+ "settings": {
6
+ "import/parsers": {
7
+ "@typescript-eslint/parser": [".ts", ".tsx"] // @typescript-eslint/parser
8
+ },
9
+ "import/resolver": {
10
+ "typescript": {
11
+ "project": ["tsconfig.base.json"]
12
+ },
13
+ "node": {
14
+ "project": ["tsconfig.base.json"]
15
+ }
16
+ }
17
+ },
18
+ "overrides": [
19
+ {
20
+ "parserOptions": {
21
+ "project": "tsconfig.base.json"
22
+ },
23
+ "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
24
+ "extends": [
25
+ "airbnb-typescript", // eslint-config-airbnb-typescript
26
+ "eslint:recommended", // eslint-plugin-react
27
+ "plugin:react/recommended", // eslint-plugin-react
28
+ "plugin:react-hooks/recommended", // eslint-plugin-react-hooks
29
+ "plugin:react-perf/recommended", // eslint-plugin-react-perf
30
+ "plugin:sonarjs/recommended", // eslint-plugin-sonarjs
31
+ "plugin:@tanstack/eslint-plugin-query/recommended", // @tanstack/eslint-plugin-query
32
+ "plugin:tailwindcss/recommended", // eslint-plugin-tailwindcss
33
+ "prettier" // eslint-config-prettier
34
+ ],
35
+ "plugins": [
36
+ "@typescript-eslint", // @typescript-eslint/eslint-plugin
37
+ "react", // eslint-plugin-react
38
+ "react-perf", // eslint-plugin-react-perf
39
+ "react-hooks", // eslint-plugin-react-hooks
40
+ "@tanstack/query", // @tanstack/eslint-plugin-query
41
+ "sonarjs", // eslint-plugin-sonarjs
42
+ "import", // eslint-plugin-import
43
+ "sort-destructure-keys", // eslint-plugin-sort-destructure-keys
44
+ "sort-keys-fix", // eslint-plugin-sort-keys-fix
45
+ "prettier" // eslint-plugin-prettier
46
+ ],
47
+ "settings": {
48
+ "import/resolver": {
49
+ "node": {
50
+ "extensions": [".js", ".jsx", ".ts", ".tsx"]
51
+ },
52
+ "typescript": {}
53
+ },
54
+ "react": {
55
+ "version": "detect"
56
+ }
57
+ },
58
+ "rules": {
59
+ "@nx/enforce-module-boundaries": [
60
+ "error",
61
+ {
62
+ "enforceBuildableLibDependency": true,
63
+ "allow": [],
64
+ "depConstraints": [
65
+ {
66
+ "sourceTag": "*",
67
+ "onlyDependOnLibsWithTags": ["*"]
68
+ }
69
+ ]
70
+ }
71
+ ],
72
+ "@tanstack/query/exhaustive-deps": "error",
73
+ "array-bracket-spacing": ["error", "never"],
74
+ "arrow-body-style": ["error", "as-needed"],
75
+ "arrow-parens": ["error", "always"],
76
+ "brace-style": "error",
77
+ "comma-dangle": [
78
+ "error",
79
+ {
80
+ "arrays": "always-multiline",
81
+ "exports": "always-multiline",
82
+ "functions": "only-multiline",
83
+ "imports": "always-multiline",
84
+ "objects": "always-multiline"
85
+ }
86
+ ],
87
+ "comma-spacing": [
88
+ "error",
89
+ {
90
+ "after": true,
91
+ "before": false
92
+ }
93
+ ],
94
+ "curly": "error",
95
+ "eol-last": ["error", "always"],
96
+ "eqeqeq": ["error", "always"],
97
+ "func-names": "error",
98
+ "import/no-extraneous-dependencies": "off",
99
+ "import/no-unresolved": "error",
100
+ "sort-destructure-keys/sort-destructure-keys": [
101
+ "error",
102
+ {
103
+ "caseSensitive": false
104
+ }
105
+ ],
106
+ "sort-keys-fix/sort-keys-fix": "warn",
107
+ "import/order": [
108
+ "error",
109
+ {
110
+ "alphabetize": {
111
+ "order": "asc"
112
+ },
113
+ "groups": [
114
+ "builtin",
115
+ "external",
116
+ "internal",
117
+ "parent",
118
+ "sibling",
119
+ "index"
120
+ ],
121
+ "newlines-between": "always"
122
+ }
123
+ ],
124
+ "jsx-quotes": ["error", "prefer-double"],
125
+ "key-spacing": [
126
+ "error",
127
+ {
128
+ "mode": "strict"
129
+ }
130
+ ],
131
+ "max-depth": ["error", 3],
132
+ "max-len": [
133
+ "error",
134
+ {
135
+ "code": 125,
136
+ "ignoreComments": true,
137
+ "ignoreStrings": true,
138
+ "ignoreTemplateLiterals": true
139
+ }
140
+ ],
141
+ "max-params": ["error", 3],
142
+ "no-alert": "error",
143
+ "no-console": "warn",
144
+ "no-duplicate-imports": "error",
145
+ "no-empty-function": "warn",
146
+ "no-extra-boolean-cast": "warn",
147
+ "no-extra-semi": "warn",
148
+ "no-magic-numbers": [
149
+ "error",
150
+ {
151
+ "ignore": [-1, 0, 1, 2, 30, 60, 100, 1000],
152
+ "ignoreArrayIndexes": true
153
+ }
154
+ ],
155
+ "no-multi-spaces": "warn",
156
+ "no-multiple-empty-lines": [
157
+ "error",
158
+ {
159
+ "max": 1,
160
+ "maxEOF": 0
161
+ }
162
+ ],
163
+ "no-plusplus": "warn",
164
+ "no-trailing-spaces": "warn",
165
+ "no-unreachable": "error",
166
+ "no-unused-expressions": "warn",
167
+ "no-unused-vars": "off",
168
+ "no-use-before-define": "off",
169
+ "no-var": "error",
170
+ "padding-line-between-statements": [
171
+ "error",
172
+ {
173
+ "blankLine": "always",
174
+ "next": "return",
175
+ "prev": "*"
176
+ }
177
+ ],
178
+ "prefer-arrow-callback": "warn",
179
+ "prefer-const": "error",
180
+ "prettier/prettier": [
181
+ "error",
182
+ {
183
+ "endOfLine": "auto"
184
+ }
185
+ ],
186
+ "quotes": ["error", "single", { "avoidEscape": true }],
187
+ "react-hooks/exhaustive-deps": "warn",
188
+ "react-hooks/rules-of-hooks": "error",
189
+ "react-perf/jsx-no-new-array-as-prop": "off",
190
+ "react-perf/jsx-no-new-function-as-prop": "off",
191
+ "react-perf/jsx-no-new-object-as-prop": "off",
192
+ "react/display-name": "off",
193
+ "react/jsx-filename-extension": [
194
+ "warn",
195
+ {
196
+ "extensions": [".tsx", ".ts"]
197
+ }
198
+ ],
199
+ "react/jsx-handler-names": [
200
+ "error",
201
+ {
202
+ "eventHandlerPrefix": "handle",
203
+ "eventHandlerPropPrefix": "on"
204
+ }
205
+ ],
206
+ "react/jsx-sort-props": [
207
+ "error",
208
+ {
209
+ "callbacksLast": true,
210
+ "ignoreCase": true,
211
+ "reservedFirst": true,
212
+ "shorthandFirst": true
213
+ }
214
+ ],
215
+ "react/prefer-stateless-function": "error",
216
+ "react/prop-types": "off",
217
+ "react/react-in-jsx-scope": "off",
218
+ "react/sort-comp": [
219
+ "error",
220
+ {
221
+ "order": [
222
+ "type-annotations",
223
+ "static-methods",
224
+ "lifecycle",
225
+ "/^handle.+$/",
226
+ "everything-else",
227
+ "render"
228
+ ]
229
+ }
230
+ ],
231
+ "semi": ["error", "always"],
232
+ "semi-spacing": [
233
+ "error",
234
+ {
235
+ "after": true,
236
+ "before": false
237
+ }
238
+ ],
239
+ "sonarjs/cognitive-complexity": ["error", 50],
240
+ "sort-keys": [
241
+ "error",
242
+ "asc",
243
+ {
244
+ "caseSensitive": true,
245
+ "minKeys": 2,
246
+ "natural": false
247
+ }
248
+ ],
249
+ "space-before-blocks": "error",
250
+ "space-before-function-paren": [
251
+ "error",
252
+ {
253
+ "anonymous": "always",
254
+ "asyncArrow": "always",
255
+ "named": "never"
256
+ }
257
+ ],
258
+ "space-in-parens": ["error", "never"],
259
+ "tailwindcss/classnames-order": "off"
260
+ }
261
+ },
262
+ {
263
+ "files": ["*.ts", "*.tsx"],
264
+ "extends": ["plugin:@nx/typescript"],
265
+ "rules": {
266
+ "@typescript-eslint/consistent-type-definitions": "off",
267
+ "@typescript-eslint/no-explicit-any": "off",
268
+ "@typescript-eslint/no-use-before-define": "off",
269
+ "@typescript-eslint/no-unused-vars": [
270
+ "error",
271
+ {
272
+ "args": "none"
273
+ }
274
+ ],
275
+ "@typescript-eslint/ban-types": [
276
+ "error",
277
+ {
278
+ "types": {
279
+ "{}": false,
280
+ "Function": false
281
+ },
282
+ "extendDefaults": true
283
+ }
284
+ ]
285
+ }
286
+ },
287
+ {
288
+ "files": ["*.js", "*.jsx"],
289
+ "extends": ["plugin:@nx/javascript"],
290
+ "rules": {}
291
+ }
292
+ ]
293
+ }
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env sh
2
+ . "$(dirname -- "$0")/_/husky.sh"
3
+
4
+ echo -e "===\n>> Checking lint..."
5
+ npm run lint:all
@@ -0,0 +1,15 @@
1
+ #!/bin/sh
2
+ . "$(dirname "$0")/_/husky.sh"
3
+
4
+ echo -e "===\n>> Checking branch name..."
5
+ BRANCH=`git rev-parse --abbrev-ref HEAD`
6
+ PROTECTED_BRANCHES="^(main|staging|development)$"
7
+ BRANCH_COMMAND=$(ps -ocommand= -p $PPID | awk '{print $NF}')
8
+
9
+ if [[ "$BRANCH" =~ $PROTECTED_BRANCHES ]]
10
+ then
11
+ echo -e "\n🚫 Cannot push to remote $BRANCH branch, please create your own branch and create a PR." && exit 1
12
+ fi
13
+
14
+ echo -e ">> Finished checking branch name.\n==="
15
+
@@ -0,0 +1,146 @@
1
+ # See http://help.github.com/ignore-files/ for more about ignoring files.
2
+
3
+ # compiled output
4
+ dist
5
+ tmp
6
+ /out-tsc
7
+
8
+ # dependencies
9
+ node_modules
10
+
11
+ # IDEs and editors
12
+ /.idea
13
+ .project
14
+ .classpath
15
+ .c9/
16
+ *.launch
17
+ .settings/
18
+ *.sublime-workspace
19
+
20
+ # IDE - VSCode
21
+ .vscode/*
22
+ !.vscode/settings.json
23
+ !.vscode/tasks.json
24
+ !.vscode/launch.json
25
+ !.vscode/extensions.json
26
+
27
+ # misc
28
+ /.sass-cache
29
+ /connect.lock
30
+ /coverage
31
+ /libpeerconnection.log
32
+ npm-debug.log
33
+ yarn-error.log
34
+ testem.log
35
+ /typings
36
+
37
+ # System Files
38
+ .DS_Store
39
+ Thumbs.db
40
+ .nx
41
+ creds.json
42
+
43
+ # Next.js
44
+ .next
45
+ out
46
+ *.env
47
+ !.env.template
48
+
49
+ # React Native
50
+
51
+ # OSX
52
+ #
53
+ .DS_Store
54
+
55
+ # Xcode
56
+ #
57
+ build/
58
+ *.pbxuser
59
+ !default.pbxuser
60
+ *.mode1v3
61
+ !default.mode1v3
62
+ *.mode2v3
63
+ !default.mode2v3
64
+ *.perspectivev3
65
+ !default.perspectivev3
66
+ xcuserdata
67
+ *.xccheckout
68
+ *.moved-aside
69
+ DerivedData
70
+ *.hmap
71
+ *.ipa
72
+ *.xcuserstate
73
+
74
+ # Android/IntelliJ
75
+ #
76
+ build/
77
+ .idea
78
+ .gradle
79
+ local.properties
80
+ *.iml
81
+ *.hprof
82
+ .cxx/
83
+ *.keystore
84
+ !debug.keystore
85
+
86
+ # node.js
87
+ #
88
+ node_modules/
89
+ npm-debug.log
90
+ yarn-error.log
91
+
92
+ # BUCK
93
+ buck-out/
94
+ \.buckd/
95
+
96
+ # fastlane
97
+ #
98
+ # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
99
+ # screenshots whenever they are needed.
100
+ # For more information about the recommended setup visit:
101
+ # https://docs.fastlane.tools/best-practices/source-control/
102
+
103
+ **/fastlane/report.xml
104
+ **/fastlane/Preview.html
105
+ **/fastlane/screenshots
106
+ **/fastlane/test_output
107
+ *.cer
108
+ *.mobileprovision
109
+
110
+
111
+ # Bundle artifact
112
+ *.jsbundle
113
+
114
+ # Ruby / CocoaPods
115
+ **/ios/Pods/
116
+ **/vendor/bundle/
117
+
118
+ # iOS build logs
119
+ ios-build.log
120
+
121
+ # Temporary files created by Metro to check the health of the file watcher
122
+ .metro-health-check*
123
+
124
+ # testing
125
+ coverage
126
+ /coverage
127
+ apps/mobile-e2e/artifacts
128
+
129
+ # Expo
130
+ .expo
131
+ dist/
132
+ web-build/
133
+
134
+ # Misc
135
+ .env
136
+ .env.*
137
+ !.env.template
138
+ .nx
139
+ *.keystore
140
+ .env
141
+ *.env.*
142
+ !.env.template
143
+ !debug.keystore
144
+ !dev.keystore
145
+ !staging.keystore
146
+ !production.keystore
@@ -0,0 +1 @@
1
+ v18.17.0
@@ -0,0 +1,8 @@
1
+ # Add files here to ignore them from prettier formatting
2
+ tmp
3
+ node_modules
4
+ /dist
5
+ /coverage
6
+ /test
7
+ /build
8
+ /.nx/cache
@@ -0,0 +1,13 @@
1
+ {
2
+ "arrowParens": "always",
3
+ "endOfLine": "auto",
4
+ "plugins": ["prettier-plugin-tailwindcss"],
5
+ "printWidth": 100,
6
+ "semi": true,
7
+ "singleQuote": true,
8
+ "tabWidth": 2,
9
+ "tailwindAttributes": ["className", "style"],
10
+ "tailwindFunctions": ["clsx", "tw", "twMerge"],
11
+ "trailingComma": "all",
12
+ "useTabs": false
13
+ }
@@ -0,0 +1 @@
1
+ 3.1.2
@@ -0,0 +1,10 @@
1
+ {
2
+ "recommendations": [
3
+ "nrwl.angular-console",
4
+ "esbenp.prettier-vscode",
5
+ "firsttris.vscode-jest-runner",
6
+ "bradlc.vscode-tailwindcss",
7
+ "dbaeumer.vscode-eslint",
8
+ "streetsidesoftware.code-spell-checker"
9
+ ]
10
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
3
+ "editor.formatOnSave": true,
4
+ "editor.codeActionsOnSave": {
5
+ "source.fixAll": "explicit",
6
+ "source.fixAll.stylelint": "never"
7
+ },
8
+ "files.insertFinalNewline": true,
9
+ "[typescriptreact]": {
10
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
11
+ },
12
+ "typescript.preferences.importModuleSpecifier": "project-relative",
13
+ "tailwindCSS.classAttributes": ["className", "style"],
14
+ "tailwindCSS.experimental.classRegex": [
15
+ "tw`([^`]*)",
16
+ ["tw.style\\(([^)]*)\\)", "'([^']*)'"]
17
+ ]
18
+ }
@@ -0,0 +1,3 @@
1
+ IS_LIVE=false
2
+ STORAGE_KEY=MMKV-STORAGE-KEY
3
+ API_BASE_URL=
@@ -0,0 +1,3 @@
1
+ IS_LIVE=false
2
+ STORAGE_KEY=MMKV-STORAGE-KEY
3
+ API_BASE_URL=
@@ -0,0 +1,34 @@
1
+ {
2
+ "extends": ["plugin:@nx/react", "../../.eslintrc.json"],
3
+ "ignorePatterns": [
4
+ "!**/*",
5
+ ".cache",
6
+ ".next/**/*",
7
+ "*.d.ts",
8
+ "*.spec.ts",
9
+ "babel.config.js",
10
+ "jest.config.ts",
11
+ "metro.config.js",
12
+ "node_modules",
13
+ "project.json",
14
+ "react-native.config.js",
15
+ "tailwind.config.js",
16
+ "test-setup.ts",
17
+ "tsconfig.json",
18
+ "tsconfig.spec.json"
19
+ ],
20
+ "overrides": [
21
+ {
22
+ "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
23
+ "rules": {}
24
+ },
25
+ {
26
+ "files": ["*.ts", "*.tsx"],
27
+ "rules": {}
28
+ },
29
+ {
30
+ "files": ["*.js", "*.jsx"],
31
+ "rules": {}
32
+ }
33
+ ]
34
+ }
@@ -0,0 +1,11 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
4
+ ruby ">= 2.6.10"
5
+ gem "fastlane", "= 2.221.1"
6
+
7
+ gem 'cocoapods', '~> 1.13'
8
+ gem 'activesupport', '>= 6.1.7.3', '< 7.1.0'
9
+
10
+ plugins_path = File.join(File.dirname(__FILE__), './fastlane', 'Pluginfile')
11
+ eval_gemfile(plugins_path) if File.exist?(plugins_path)