@imksh/create 1.0.26 → 1.0.28

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 (1130) hide show
  1. package/package.json +6 -3
  2. package/src/commands/create.js +2 -1
  3. package/src/index.js +1 -1
  4. package/src/utils/askTemplate.js +1 -0
  5. package/src/utils/composeTemplate.js +158 -0
  6. package/src/utils/copyTemplate.js +17 -39
  7. package/templates/{mern/server → layers/node/javascript}/src/controllers/auth.controller.js +14 -0
  8. package/templates/{node → layers/node/javascript}/src/models/pushSubscription.model.js +12 -4
  9. package/templates/{node → layers/node/javascript}/src/models/user.model.js +6 -0
  10. package/templates/{mern/server → layers/node/javascript}/src/services/auth.service.js +17 -0
  11. package/templates/{mern-ts/server → layers/node/typescript}/src/controllers/auth.controller.ts +14 -0
  12. package/templates/{mern-ts/server → layers/node/typescript}/src/models/pushSubscription.model.ts +15 -6
  13. package/templates/{mern-react-native/server → layers/node/typescript}/src/models/user.model.ts +1 -1
  14. package/templates/{mern-ts/server → layers/node/typescript}/src/routes/auth.route.ts +2 -0
  15. package/templates/{mern-ts/server → layers/node/typescript}/src/services/auth.service.ts +17 -0
  16. package/templates/layers/prisma/javascript/README.md +71 -0
  17. package/templates/{node → layers/prisma/javascript}/package.json +6 -3
  18. package/templates/layers/prisma/javascript/prisma/schema.prisma +41 -0
  19. package/templates/layers/prisma/javascript/src/config/db.js +16 -0
  20. package/templates/{node → layers/prisma/javascript}/src/controllers/auth.controller.js +7 -14
  21. package/templates/layers/prisma/javascript/src/controllers/push.controller.js +54 -0
  22. package/templates/layers/prisma/javascript/src/middleware/auth.middleware.js +44 -0
  23. package/templates/{node → layers/prisma/javascript}/src/services/auth.service.js +55 -55
  24. package/templates/layers/prisma/javascript/src/utils/pushHelper.js +22 -0
  25. package/templates/{node-ts → layers/prisma/typescript}/package.json +7 -6
  26. package/templates/layers/prisma/typescript/prisma/schema.prisma +41 -0
  27. package/templates/layers/prisma/typescript/src/config/db.ts +16 -0
  28. package/templates/{react/src/config → layers/react/javascript/src/assets/data}/navigation.js +10 -0
  29. package/templates/layers/react/javascript/src/components/common/Breadcrumbs.jsx +60 -0
  30. package/templates/layers/react/javascript/src/components/common/CircularProgress.jsx +65 -0
  31. package/templates/layers/react/javascript/src/components/common/Modal.jsx +108 -0
  32. package/templates/{mern/client → layers/react/javascript}/src/components/common/NotFound.jsx +1 -1
  33. package/templates/layers/react/javascript/src/components/common/PageTransition.jsx +34 -0
  34. package/templates/layers/react/javascript/src/components/common/Pagination.jsx +81 -0
  35. package/templates/{react → layers/react/javascript}/src/components/common/SEO.jsx +3 -11
  36. package/templates/{react → layers/react/javascript}/src/components/common/Scroll.jsx +1 -1
  37. package/templates/layers/react/javascript/src/components/common/Table.jsx +143 -0
  38. package/templates/layers/react/javascript/src/components/common/Tabs.jsx +134 -0
  39. package/templates/layers/react/javascript/src/components/common/modals/ConfirmModal.jsx +119 -0
  40. package/templates/layers/react/javascript/src/components/common/modals/DocViewerModal.jsx +31 -0
  41. package/templates/{next → layers/react/javascript}/src/components/modals/ConfirmModal.jsx +2 -11
  42. package/templates/{next → layers/react/javascript}/src/components/modals/Modal.jsx +4 -9
  43. package/templates/{next → layers/react/javascript}/src/components/skeletons/common/CardSkeleton.jsx +1 -3
  44. package/templates/{next → layers/react/javascript}/src/components/skeletons/common/DashboardSkeleton.jsx +1 -3
  45. package/templates/{next → layers/react/javascript}/src/components/skeletons/common/ListSkeleton.jsx +2 -5
  46. package/templates/{next → layers/react/javascript}/src/components/skeletons/common/PageSkeleton.jsx +2 -9
  47. package/templates/{next → layers/react/javascript}/src/components/skeletons/common/ProfileSkeleton.jsx +1 -5
  48. package/templates/{next → layers/react/javascript}/src/components/skeletons/common/Skeleton.jsx +1 -1
  49. package/templates/{next → layers/react/javascript}/src/components/skeletons/common/TableSkeleton.jsx +1 -1
  50. package/templates/{mern/client → layers/react/javascript}/src/components/ui/Header.jsx +19 -11
  51. package/templates/layers/react/javascript/src/components/ui/SidebarHeader.jsx +36 -0
  52. package/templates/layers/react/javascript/src/components/ui/sidebar.jsx +169 -0
  53. package/templates/{mern/client → layers/react/javascript}/src/config/api.js +1 -1
  54. package/templates/{react → layers/react/javascript}/src/config/appConfig.js +1 -1
  55. package/templates/{react → layers/react/javascript}/src/hooks/useLenis.js +1 -1
  56. package/templates/{react → layers/react/javascript}/src/hooks/usePwaInstall.js +4 -1
  57. package/templates/{next → layers/react/javascript}/src/hooks/useWindowSize.js +1 -2
  58. package/templates/{react → layers/react/javascript}/src/pages/Home.jsx +1 -1
  59. package/templates/{react → layers/react/javascript}/src/pages/Login.jsx +8 -2
  60. package/templates/layers/react/javascript/src/pages/Profile.jsx +7 -0
  61. package/templates/{react → layers/react/javascript}/src/services/authService.js +3 -6
  62. package/templates/{next → layers/react/javascript}/src/store/useAuthStore.js +7 -1
  63. package/templates/{mern/client → layers/react/javascript}/src/store/useUiStore.js +11 -14
  64. package/templates/{next → layers/react/javascript}/src/utils/getInitials.js +1 -1
  65. package/templates/layers/react/typescript/src/components/common/Breadcrumbs.tsx +49 -0
  66. package/templates/layers/react/typescript/src/components/common/CircularProgress.tsx +68 -0
  67. package/templates/{production-fullstack/client/src/components/ui → layers/react/typescript/src/components/common}/Modal.tsx +53 -18
  68. package/templates/layers/react/typescript/src/components/common/PageTransition.tsx +45 -0
  69. package/templates/layers/react/typescript/src/components/common/Pagination.tsx +91 -0
  70. package/templates/{mern-ts/client → layers/react/typescript}/src/components/common/Table.tsx +4 -2
  71. package/templates/layers/react/typescript/src/components/common/Tabs.tsx +145 -0
  72. package/templates/layers/react/typescript/src/components/common/modals/ConfirmModal.tsx +114 -0
  73. package/templates/layers/react/typescript/src/components/common/modals/DocViewerModal.tsx +41 -0
  74. package/templates/{mern-react-native/client → layers/react/typescript}/src/components/layout/SidebarLayout.tsx +1 -1
  75. package/templates/{mern/client/src/components/ui/sidebar.jsx → layers/react/typescript/src/components/ui/Sidebar.tsx} +4 -4
  76. package/templates/{mern-react-native/client → layers/react/typescript}/src/components/ui/SidebarHeader.tsx +15 -4
  77. package/templates/{react-ts → layers/react/typescript}/src/store/useUiStore.ts +17 -0
  78. package/templates/layers/react-native/base/package-lock.json +15108 -0
  79. package/templates/{mern-react-native/mobile → layers/react-native/base}/package.json +8 -0
  80. package/templates/{react-native → layers/react-native/base}/src/app/(tabs)/profile.tsx +20 -1
  81. package/templates/{react-native → layers/react-native/base}/src/app/_layout.tsx +20 -12
  82. package/templates/layers/react-native/base/src/app/doc-viewer.tsx +193 -0
  83. package/templates/{react-native → layers/react-native/base}/src/components/common/Typography.tsx +37 -10
  84. package/templates/layers/react-native/base/src/components/ui/BiometricLock.tsx +113 -0
  85. package/templates/{react-native → layers/react-native/base}/src/components/ui/BottomModal.tsx +20 -3
  86. package/templates/{production-fullstack/mobile → layers/react-native/base}/src/components/ui/ClassicTabBar.tsx +10 -27
  87. package/templates/layers/react-native/base/src/services/biometric.service.ts +24 -0
  88. package/templates/{mern-react-native/mobile → layers/react-native/base}/src/store/useAuthStore.ts +53 -12
  89. package/templates/presets/fullstack-prisma/overrides/package.json +15 -0
  90. package/templates/presets/fullstack-prisma/preset.json +22 -0
  91. package/templates/presets/mern/overrides/_gitignore +2 -0
  92. package/templates/presets/mern/preset.json +18 -0
  93. package/templates/presets/mern-react-native/preset.json +22 -0
  94. package/templates/presets/mern-ts/preset.json +18 -0
  95. package/templates/presets/next/preset.json +7 -0
  96. package/templates/presets/next-ts/preset.json +7 -0
  97. package/templates/presets/node/preset.json +6 -0
  98. package/templates/presets/node-prisma/preset.json +6 -0
  99. package/templates/presets/node-prisma-ts/preset.json +6 -0
  100. package/templates/presets/node-ts/preset.json +6 -0
  101. package/templates/presets/production-fullstack/overrides/client/package-lock.json +6065 -0
  102. package/templates/presets/production-fullstack/overrides/mobile/_gitignore +43 -0
  103. package/templates/{mern → presets/production-fullstack/overrides}/server/.env.example +3 -2
  104. package/templates/presets/production-fullstack/preset.json +5 -0
  105. package/templates/presets/react/preset.json +8 -0
  106. package/templates/presets/react-native/preset.json +6 -0
  107. package/templates/presets/react-ts/preset.json +7 -0
  108. package/templates/mern/client/src/components/common/Breadcrumbs.jsx +0 -27
  109. package/templates/mern/client/src/components/common/SEO.jsx +0 -67
  110. package/templates/mern/client/src/components/common/Scroll.jsx +0 -25
  111. package/templates/mern/client/src/config/appConfig.js +0 -44
  112. package/templates/mern/client/src/hooks/useLenis.js +0 -28
  113. package/templates/mern/client/src/pages/Home.jsx +0 -154
  114. package/templates/mern/client/src/pages/Login.jsx +0 -233
  115. package/templates/mern/client/src/pages/Profile.jsx +0 -9
  116. package/templates/mern/client/src/services/authService.js +0 -19
  117. package/templates/mern/server/src/models/pushSubscription.model.js +0 -32
  118. package/templates/mern/server/src/models/user.model.js +0 -43
  119. package/templates/mern/server/src/routes/auth.route.js +0 -24
  120. package/templates/mern-react-native/client/src/components/ui/sidebar.tsx +0 -152
  121. package/templates/mern-react-native/mobile/src/app/(tabs)/profile.tsx +0 -78
  122. package/templates/mern-react-native/mobile/src/app/_layout.tsx +0 -98
  123. package/templates/mern-react-native/server/package.json +0 -48
  124. package/templates/mern-react-native/server/src/controllers/auth.controller.ts +0 -207
  125. package/templates/mern-react-native/server/src/models/pushSubscription.model.ts +0 -45
  126. package/templates/mern-react-native/server/src/services/auth.service.ts +0 -167
  127. package/templates/mern-ts/client/package.json +0 -41
  128. package/templates/mern-ts/client/src/App.tsx +0 -68
  129. package/templates/mern-ts/client/src/components/common/Breadcrumbs.tsx +0 -27
  130. package/templates/mern-ts/client/src/components/common/Loading.tsx +0 -19
  131. package/templates/mern-ts/client/src/components/common/PwaInstallPrompt.tsx +0 -72
  132. package/templates/mern-ts/client/src/components/layout/ProtectedRoute.tsx +0 -23
  133. package/templates/mern-ts/client/src/components/layout/SidebarLayout.tsx +0 -37
  134. package/templates/mern-ts/client/src/components/modals/Modal.tsx +0 -106
  135. package/templates/mern-ts/client/src/components/ui/Header.tsx +0 -230
  136. package/templates/mern-ts/client/src/components/ui/SidebarHeader.tsx +0 -27
  137. package/templates/mern-ts/client/src/components/ui/sidebar.tsx +0 -152
  138. package/templates/mern-ts/client/src/config/api.ts +0 -22
  139. package/templates/mern-ts/client/src/config/appConfig.ts +0 -44
  140. package/templates/mern-ts/client/src/main.tsx +0 -24
  141. package/templates/mern-ts/client/src/pages/Home.tsx +0 -154
  142. package/templates/mern-ts/client/src/pages/Login.tsx +0 -233
  143. package/templates/mern-ts/client/src/services/authService.ts +0 -19
  144. package/templates/mern-ts/client/src/store/useUiStore.ts +0 -74
  145. package/templates/mern-ts/server/README.md +0 -71
  146. package/templates/mern-ts/server/src/config/db.ts +0 -15
  147. package/templates/mern-ts/server/src/index.ts +0 -17
  148. package/templates/mern-ts/server/src/middleware/auth.middleware.ts +0 -38
  149. package/templates/mern-ts/server/src/models/otp.model.ts +0 -27
  150. package/templates/mern-ts/server/src/models/user.model.ts +0 -57
  151. package/templates/mern-ts/server/src/routes/index.ts +0 -10
  152. package/templates/next/next.config.mjs +0 -23
  153. package/templates/next/public/manifest.json +0 -21
  154. package/templates/next/src/assets/data/navigation.js +0 -29
  155. package/templates/next/src/components/common/Table.jsx +0 -110
  156. package/templates/next/src/components/ui/SidebarHeader.jsx +0 -27
  157. package/templates/next/src/hooks/usePwaInstall.js +0 -45
  158. package/templates/next-ts/AGENTS.md +0 -37
  159. package/templates/next-ts/CLAUDE.md +0 -1
  160. package/templates/next-ts/_gitignore +0 -0
  161. package/templates/next-ts/src/components/common/Table.tsx +0 -118
  162. package/templates/next-ts/src/components/modals/ConfirmModal.tsx +0 -152
  163. package/templates/next-ts/src/store/useAuthStore.ts +0 -143
  164. package/templates/node/.env.example +0 -62
  165. package/templates/node/README.md +0 -67
  166. package/templates/node/_gitignore +0 -24
  167. package/templates/node/src/app.js +0 -42
  168. package/templates/node/src/config/cloudinary.js +0 -9
  169. package/templates/node/src/config/db.js +0 -14
  170. package/templates/node/src/config/dotenv.js +0 -2
  171. package/templates/node/src/config/email.js +0 -30
  172. package/templates/node/src/config/socket.js +0 -54
  173. package/templates/node/src/config/webPush.js +0 -9
  174. package/templates/node/src/controllers/upload.controller.js +0 -26
  175. package/templates/node/src/index.js +0 -24
  176. package/templates/node/src/middleware/auth.middleware.js +0 -43
  177. package/templates/node/src/middleware/errorHandler.js +0 -22
  178. package/templates/node/src/middleware/multer.js +0 -21
  179. package/templates/node/src/middleware/rateLimiter.js +0 -57
  180. package/templates/node/src/models/otp.model.js +0 -21
  181. package/templates/node/src/routes/auth.route.js +0 -22
  182. package/templates/node/src/routes/index.js +0 -12
  183. package/templates/node/src/routes/upload.route.js +0 -12
  184. package/templates/node/src/utils/authToken.js +0 -26
  185. package/templates/node/src/utils/cloudinary.js +0 -27
  186. package/templates/node/src/utils/cloudinaryUpload.js +0 -87
  187. package/templates/node/src/utils/emailOtp.js +0 -190
  188. package/templates/node/src/utils/genOtpToken.js +0 -20
  189. package/templates/node/src/utils/generateVapidKeys.js +0 -12
  190. package/templates/node/src/utils/jwt.js +0 -25
  191. package/templates/node/src/utils/logger.js +0 -25
  192. package/templates/node-prisma-ts/src/app.ts +0 -36
  193. package/templates/node-prisma-ts/src/config/cloudinary.ts +0 -9
  194. package/templates/node-prisma-ts/src/config/dotenv.ts +0 -2
  195. package/templates/node-prisma-ts/src/config/email.ts +0 -28
  196. package/templates/node-prisma-ts/src/config/socket.ts +0 -54
  197. package/templates/node-prisma-ts/src/config/webPush.ts +0 -9
  198. package/templates/node-prisma-ts/src/controllers/upload.controller.ts +0 -22
  199. package/templates/node-prisma-ts/src/routes/upload.route.ts +0 -11
  200. package/templates/node-prisma-ts/src/utils/cloudinaryUpload.ts +0 -44
  201. package/templates/node-prisma-ts/src/utils/emailOtp.ts +0 -30
  202. package/templates/node-prisma-ts/src/utils/generateVapidKeys.ts +0 -12
  203. package/templates/node-prisma-ts/src/utils/logger.ts +0 -27
  204. package/templates/node-ts/.env.example +0 -62
  205. package/templates/node-ts/README.md +0 -71
  206. package/templates/node-ts/src/app.ts +0 -36
  207. package/templates/node-ts/src/config/cloudinary.ts +0 -9
  208. package/templates/node-ts/src/config/db.ts +0 -15
  209. package/templates/node-ts/src/config/dotenv.ts +0 -2
  210. package/templates/node-ts/src/config/email.ts +0 -28
  211. package/templates/node-ts/src/config/socket.ts +0 -54
  212. package/templates/node-ts/src/config/webPush.ts +0 -9
  213. package/templates/node-ts/src/controllers/auth.controller.ts +0 -126
  214. package/templates/node-ts/src/controllers/upload.controller.ts +0 -22
  215. package/templates/node-ts/src/index.ts +0 -17
  216. package/templates/node-ts/src/middleware/auth.middleware.ts +0 -38
  217. package/templates/node-ts/src/middleware/errorHandler.ts +0 -16
  218. package/templates/node-ts/src/middleware/multer.ts +0 -20
  219. package/templates/node-ts/src/middleware/rateLimiter.ts +0 -53
  220. package/templates/node-ts/src/models/otp.model.ts +0 -27
  221. package/templates/node-ts/src/models/pushSubscription.model.ts +0 -45
  222. package/templates/node-ts/src/models/user.model.ts +0 -57
  223. package/templates/node-ts/src/routes/auth.route.ts +0 -22
  224. package/templates/node-ts/src/routes/index.ts +0 -12
  225. package/templates/node-ts/src/routes/upload.route.ts +0 -11
  226. package/templates/node-ts/src/services/auth.service.ts +0 -107
  227. package/templates/node-ts/src/types/express.d.ts +0 -10
  228. package/templates/node-ts/src/utils/cloudinaryUpload.ts +0 -44
  229. package/templates/node-ts/src/utils/emailOtp.ts +0 -30
  230. package/templates/node-ts/src/utils/genOtpToken.ts +0 -22
  231. package/templates/node-ts/src/utils/generateVapidKeys.ts +0 -12
  232. package/templates/node-ts/src/utils/jwt.ts +0 -27
  233. package/templates/node-ts/src/utils/logger.ts +0 -27
  234. package/templates/node-ts/tsconfig.json +0 -18
  235. package/templates/production-fullstack/client/index.html +0 -14
  236. package/templates/production-fullstack/client/public/_redirects +0 -1
  237. package/templates/production-fullstack/client/public/favicon.ico +0 -0
  238. package/templates/production-fullstack/client/public/favicon.svg +0 -1
  239. package/templates/production-fullstack/client/public/manifest.json +0 -24
  240. package/templates/production-fullstack/client/public/sw.js +0 -56
  241. package/templates/production-fullstack/client/src/assets/data/navigation.ts +0 -29
  242. package/templates/production-fullstack/client/src/assets/images/logo.png +0 -0
  243. package/templates/production-fullstack/client/src/components/layout/PublicLayout.tsx +0 -13
  244. package/templates/production-fullstack/client/src/components/shared/Breadcrumbs.tsx +0 -27
  245. package/templates/production-fullstack/client/src/components/shared/LottieIcon.tsx +0 -36
  246. package/templates/production-fullstack/client/src/components/shared/NotFound.tsx +0 -78
  247. package/templates/production-fullstack/client/src/components/shared/SEO.tsx +0 -67
  248. package/templates/production-fullstack/client/src/components/shared/Scroll.tsx +0 -25
  249. package/templates/production-fullstack/client/src/components/shared/Unauthorized.tsx +0 -76
  250. package/templates/production-fullstack/client/src/components/shared/skeletons/common/CardSkeleton.tsx +0 -23
  251. package/templates/production-fullstack/client/src/components/shared/skeletons/common/DashboardSkeleton.tsx +0 -19
  252. package/templates/production-fullstack/client/src/components/shared/skeletons/common/ListSkeleton.tsx +0 -24
  253. package/templates/production-fullstack/client/src/components/shared/skeletons/common/PageSkeleton.tsx +0 -26
  254. package/templates/production-fullstack/client/src/components/shared/skeletons/common/ProfileSkeleton.tsx +0 -23
  255. package/templates/production-fullstack/client/src/components/shared/skeletons/common/Skeleton.tsx +0 -18
  256. package/templates/production-fullstack/client/src/components/shared/skeletons/common/TableSkeleton.tsx +0 -33
  257. package/templates/production-fullstack/client/src/components/ui/ConfirmModal.tsx +0 -152
  258. package/templates/production-fullstack/client/src/components/ui/ToggleSwitch.tsx +0 -38
  259. package/templates/production-fullstack/client/src/constants/navigation.ts +0 -14
  260. package/templates/production-fullstack/client/src/features/core/pages/Profile.tsx +0 -9
  261. package/templates/production-fullstack/client/src/hooks/useLenis.ts +0 -28
  262. package/templates/production-fullstack/client/src/hooks/usePwaInstall.ts +0 -45
  263. package/templates/production-fullstack/client/src/hooks/useWindowSize.ts +0 -25
  264. package/templates/production-fullstack/client/src/index.css +0 -158
  265. package/templates/production-fullstack/client/src/store/useUiStore.ts +0 -74
  266. package/templates/production-fullstack/client/src/utils/formatDate.ts +0 -19
  267. package/templates/production-fullstack/client/src/utils/getInitials.ts +0 -10
  268. package/templates/production-fullstack/client/src/vite-env.d.ts +0 -1
  269. package/templates/production-fullstack/client/tsconfig.json +0 -25
  270. package/templates/production-fullstack/client/tsconfig.node.json +0 -10
  271. package/templates/production-fullstack/client/vite.config.ts +0 -8
  272. package/templates/production-fullstack/mobile/assets/animations/loading.json +0 -1
  273. package/templates/production-fullstack/mobile/assets/images/logo/logo.png +0 -0
  274. package/templates/production-fullstack/mobile/src/components/common/Typography.tsx +0 -113
  275. package/templates/production-fullstack/mobile/src/components/ui/BottomModal.tsx +0 -159
  276. package/templates/production-fullstack/server/src/common/middlewares/errorHandler.ts +0 -16
  277. package/templates/production-fullstack/server/src/common/middlewares/multer.ts +0 -20
  278. package/templates/production-fullstack/server/src/common/middlewares/rateLimiter.ts +0 -53
  279. package/templates/production-fullstack/server/src/common/types/express.d.ts +0 -10
  280. package/templates/production-fullstack/server/src/common/utils/genOtpToken.ts +0 -22
  281. package/templates/production-fullstack/server/src/common/utils/jwt.ts +0 -27
  282. package/templates/production-fullstack/server/tsconfig.json +0 -14
  283. package/templates/react/_gitignore +0 -24
  284. package/templates/react/index.html +0 -14
  285. package/templates/react/package.json +0 -38
  286. package/templates/react/public/_redirects +0 -1
  287. package/templates/react/public/favicon.ico +0 -0
  288. package/templates/react/public/favicon.svg +0 -1
  289. package/templates/react/public/logo.png +0 -0
  290. package/templates/react/public/manifest.json +0 -24
  291. package/templates/react/public/sw.js +0 -56
  292. package/templates/react/src/App.jsx +0 -68
  293. package/templates/react/src/assets/data/navigation.js +0 -29
  294. package/templates/react/src/assets/images/logo.png +0 -0
  295. package/templates/react/src/components/common/Breadcrumbs.jsx +0 -27
  296. package/templates/react/src/components/common/Loading.jsx +0 -19
  297. package/templates/react/src/components/common/LottieIcon.jsx +0 -36
  298. package/templates/react/src/components/common/NotFound.jsx +0 -78
  299. package/templates/react/src/components/common/PwaInstallPrompt.jsx +0 -72
  300. package/templates/react/src/components/common/Table.jsx +0 -110
  301. package/templates/react/src/components/common/ToggleSwitch.jsx +0 -38
  302. package/templates/react/src/components/common/Unauthorized.jsx +0 -76
  303. package/templates/react/src/components/layout/ProtectedRoute.jsx +0 -17
  304. package/templates/react/src/components/layout/PublicLayout.jsx +0 -13
  305. package/templates/react/src/components/layout/SidebarLayout.jsx +0 -37
  306. package/templates/react/src/components/modals/ConfirmModal.jsx +0 -135
  307. package/templates/react/src/components/modals/Modal.jsx +0 -94
  308. package/templates/react/src/components/skeletons/common/CardSkeleton.jsx +0 -23
  309. package/templates/react/src/components/skeletons/common/DashboardSkeleton.jsx +0 -19
  310. package/templates/react/src/components/skeletons/common/ListSkeleton.jsx +0 -24
  311. package/templates/react/src/components/skeletons/common/PageSkeleton.jsx +0 -26
  312. package/templates/react/src/components/skeletons/common/ProfileSkeleton.jsx +0 -23
  313. package/templates/react/src/components/skeletons/common/Skeleton.jsx +0 -18
  314. package/templates/react/src/components/skeletons/common/TableSkeleton.jsx +0 -33
  315. package/templates/react/src/components/ui/Header.jsx +0 -230
  316. package/templates/react/src/components/ui/SidebarHeader.jsx +0 -27
  317. package/templates/react/src/components/ui/sidebar.jsx +0 -152
  318. package/templates/react/src/config/api.js +0 -22
  319. package/templates/react/src/hooks/useWindowSize.js +0 -25
  320. package/templates/react/src/index.css +0 -158
  321. package/templates/react/src/main.jsx +0 -24
  322. package/templates/react/src/pages/Profile.jsx +0 -9
  323. package/templates/react/src/store/useAuthStore.js +0 -115
  324. package/templates/react/src/store/useUiStore.js +0 -54
  325. package/templates/react/src/utils/formatDate.js +0 -15
  326. package/templates/react/src/utils/getInitials.js +0 -10
  327. package/templates/react/vite.config.js +0 -8
  328. package/templates/react-native/LICENSE +0 -21
  329. package/templates/react-native/app.json +0 -84
  330. package/templates/react-native/assets/animations/celebrate.json +0 -1
  331. package/templates/react-native/assets/animations/infinity.json +0 -1
  332. package/templates/react-native/assets/animations/loading.json +0 -1
  333. package/templates/react-native/assets/fonts/Inter_Bold.ttf +0 -0
  334. package/templates/react-native/assets/fonts/Inter_ExtraBold.ttf +0 -0
  335. package/templates/react-native/assets/fonts/Inter_Medium.ttf +0 -0
  336. package/templates/react-native/assets/fonts/Inter_Regular.ttf +0 -0
  337. package/templates/react-native/assets/fonts/Inter_SemiBold.ttf +0 -0
  338. package/templates/react-native/assets/images/logo/logo.png +0 -0
  339. package/templates/react-native/assets/images/logo/logo.svg +0 -1
  340. package/templates/react-native/assets/images/logo/logoWithBg.png +0 -0
  341. package/templates/react-native/babel.config.js +0 -13
  342. package/templates/react-native/drizzle.config.ts +0 -8
  343. package/templates/react-native/eas.json +0 -24
  344. package/templates/react-native/eslint.config.js +0 -10
  345. package/templates/react-native/metro.config.js +0 -6
  346. package/templates/react-native/nativewind-env.d.ts +0 -3
  347. package/templates/react-native/package.json +0 -84
  348. package/templates/react-native/src/app/(auth)/_layout.tsx +0 -12
  349. package/templates/react-native/src/app/(auth)/change-password.tsx +0 -112
  350. package/templates/react-native/src/app/(auth)/edit-profile.tsx +0 -156
  351. package/templates/react-native/src/app/(auth)/forgot-password.tsx +0 -191
  352. package/templates/react-native/src/app/(auth)/login.tsx +0 -253
  353. package/templates/react-native/src/app/(tabs)/_layout.tsx +0 -38
  354. package/templates/react-native/src/app/(tabs)/dashboard.tsx +0 -13
  355. package/templates/react-native/src/app/(tabs)/index.tsx +0 -464
  356. package/templates/react-native/src/app/(tabs)/search.tsx +0 -12
  357. package/templates/react-native/src/app/global.css +0 -82
  358. package/templates/react-native/src/components/common/AnimatedHeader.tsx +0 -328
  359. package/templates/react-native/src/components/common/ConfirmationToast.tsx +0 -67
  360. package/templates/react-native/src/components/common/Loading.tsx +0 -26
  361. package/templates/react-native/src/components/common/LocationLoader.tsx +0 -591
  362. package/templates/react-native/src/components/common/ScreenHeader.tsx +0 -68
  363. package/templates/react-native/src/components/common/TabHeader.tsx +0 -58
  364. package/templates/react-native/src/components/common/Welcome.tsx +0 -55
  365. package/templates/react-native/src/components/ui/ClassicTabBar.tsx +0 -129
  366. package/templates/react-native/src/components/ui/CustomTabBar.tsx +0 -238
  367. package/templates/react-native/src/components/ui/Sidebar.tsx +0 -258
  368. package/templates/react-native/src/components/ui/buttons/Button.tsx +0 -180
  369. package/templates/react-native/src/components/ui/buttons/ButtonGroup.tsx +0 -32
  370. package/templates/react-native/src/components/ui/buttons/FloatingActionButton.tsx +0 -72
  371. package/templates/react-native/src/components/ui/buttons/IconButton.tsx +0 -84
  372. package/templates/react-native/src/components/ui/data-display/Accordion.tsx +0 -82
  373. package/templates/react-native/src/components/ui/data-display/Avatar.tsx +0 -47
  374. package/templates/react-native/src/components/ui/data-display/Badge.tsx +0 -104
  375. package/templates/react-native/src/components/ui/data-display/Card.tsx +0 -36
  376. package/templates/react-native/src/components/ui/data-display/Image.tsx +0 -43
  377. package/templates/react-native/src/components/ui/data-display/ImageViewer.tsx +0 -33
  378. package/templates/react-native/src/components/ui/data-display/SwipeableRow.tsx +0 -94
  379. package/templates/react-native/src/components/ui/feedback/CircularProgress.tsx +0 -38
  380. package/templates/react-native/src/components/ui/feedback/GestureWrapper.tsx +0 -114
  381. package/templates/react-native/src/components/ui/feedback/ProgressBar.tsx +0 -51
  382. package/templates/react-native/src/components/ui/feedback/Skeleton.tsx +0 -84
  383. package/templates/react-native/src/components/ui/feedback/Spinner.tsx +0 -50
  384. package/templates/react-native/src/components/ui/inputs/Checkbox.tsx +0 -54
  385. package/templates/react-native/src/components/ui/inputs/DatePicker.tsx +0 -186
  386. package/templates/react-native/src/components/ui/inputs/ImagePickerModal.tsx +0 -129
  387. package/templates/react-native/src/components/ui/inputs/Input.tsx +0 -158
  388. package/templates/react-native/src/components/ui/inputs/LocationPicker.tsx +0 -211
  389. package/templates/react-native/src/components/ui/inputs/OTPInput.tsx +0 -83
  390. package/templates/react-native/src/components/ui/inputs/PasswordInput.tsx +0 -16
  391. package/templates/react-native/src/components/ui/inputs/Radio.tsx +0 -54
  392. package/templates/react-native/src/components/ui/inputs/SearchBar.tsx +0 -53
  393. package/templates/react-native/src/components/ui/inputs/Slider.tsx +0 -49
  394. package/templates/react-native/src/components/ui/inputs/Switch.tsx +0 -75
  395. package/templates/react-native/src/components/ui/inputs/TextArea.tsx +0 -15
  396. package/templates/react-native/src/components/ui/inputs/WebLocationPicker.tsx +0 -321
  397. package/templates/react-native/src/components/ui/layout/Container.tsx +0 -23
  398. package/templates/react-native/src/components/ui/layout/Divider.tsx +0 -20
  399. package/templates/react-native/src/components/ui/layout/Grid.tsx +0 -62
  400. package/templates/react-native/src/components/ui/layout/KeyboardAvoidingViewWrapper.tsx +0 -16
  401. package/templates/react-native/src/components/ui/layout/ScrollContainer.tsx +0 -21
  402. package/templates/react-native/src/components/ui/layout/Section.tsx +0 -51
  403. package/templates/react-native/src/components/ui/layout/Spacer.tsx +0 -6
  404. package/templates/react-native/src/components/ui/layout/Stack.tsx +0 -34
  405. package/templates/react-native/src/components/ui/navigation/Pagination.tsx +0 -61
  406. package/templates/react-native/src/components/ui/navigation/ProgressStepper.tsx +0 -66
  407. package/templates/react-native/src/components/ui/navigation/Tabs.tsx +0 -173
  408. package/templates/react-native/src/config/api.ts +0 -27
  409. package/templates/react-native/src/config/sidebar.config.ts +0 -12
  410. package/templates/react-native/src/config/tabNavigation.ts +0 -34
  411. package/templates/react-native/src/constants/Colors.ts +0 -71
  412. package/templates/react-native/src/db/index.ts +0 -9
  413. package/templates/react-native/src/db/schema.ts +0 -14
  414. package/templates/react-native/src/hooks/useDebounce.ts +0 -17
  415. package/templates/react-native/src/services/auth.service.ts +0 -24
  416. package/templates/react-native/src/services/notification.service.ts +0 -22
  417. package/templates/react-native/src/services/permission.service.ts +0 -214
  418. package/templates/react-native/src/services/socket.service.ts +0 -36
  419. package/templates/react-native/src/store/localStore.ts +0 -7
  420. package/templates/react-native/src/store/useAuthStore.ts +0 -273
  421. package/templates/react-native/src/store/useNotificationStore.ts +0 -178
  422. package/templates/react-native/src/types/auth.type.ts +0 -14
  423. package/templates/react-native/src/types/images.d.ts +0 -24
  424. package/templates/react-native/src/utils/storage.ts +0 -55
  425. package/templates/react-native/src/utils/toast.ts +0 -26
  426. package/templates/react-native/tailwind.config.js +0 -71
  427. package/templates/react-native/tsconfig.json +0 -23
  428. package/templates/react-ts/_gitignore +0 -24
  429. package/templates/react-ts/index.html +0 -14
  430. package/templates/react-ts/package.json +0 -41
  431. package/templates/react-ts/public/_redirects +0 -1
  432. package/templates/react-ts/public/favicon.ico +0 -0
  433. package/templates/react-ts/public/favicon.svg +0 -1
  434. package/templates/react-ts/public/logo.png +0 -0
  435. package/templates/react-ts/public/manifest.json +0 -24
  436. package/templates/react-ts/public/sw.js +0 -56
  437. package/templates/react-ts/src/App.tsx +0 -68
  438. package/templates/react-ts/src/assets/animations/loading.json +0 -1
  439. package/templates/react-ts/src/assets/data/navigation.ts +0 -29
  440. package/templates/react-ts/src/assets/images/logo.png +0 -0
  441. package/templates/react-ts/src/components/common/Breadcrumbs.tsx +0 -27
  442. package/templates/react-ts/src/components/common/Loading.tsx +0 -19
  443. package/templates/react-ts/src/components/common/LottieIcon.tsx +0 -36
  444. package/templates/react-ts/src/components/common/NotFound.tsx +0 -78
  445. package/templates/react-ts/src/components/common/PwaInstallPrompt.tsx +0 -72
  446. package/templates/react-ts/src/components/common/SEO.tsx +0 -67
  447. package/templates/react-ts/src/components/common/Scroll.tsx +0 -25
  448. package/templates/react-ts/src/components/common/Table.tsx +0 -118
  449. package/templates/react-ts/src/components/common/ToggleSwitch.tsx +0 -38
  450. package/templates/react-ts/src/components/common/Unauthorized.tsx +0 -76
  451. package/templates/react-ts/src/components/layout/ProtectedRoute.tsx +0 -23
  452. package/templates/react-ts/src/components/layout/PublicLayout.tsx +0 -13
  453. package/templates/react-ts/src/components/layout/SidebarLayout.tsx +0 -37
  454. package/templates/react-ts/src/components/modals/ConfirmModal.tsx +0 -152
  455. package/templates/react-ts/src/components/modals/Modal.tsx +0 -106
  456. package/templates/react-ts/src/components/skeletons/common/CardSkeleton.tsx +0 -23
  457. package/templates/react-ts/src/components/skeletons/common/DashboardSkeleton.tsx +0 -19
  458. package/templates/react-ts/src/components/skeletons/common/ListSkeleton.tsx +0 -24
  459. package/templates/react-ts/src/components/skeletons/common/PageSkeleton.tsx +0 -26
  460. package/templates/react-ts/src/components/skeletons/common/ProfileSkeleton.tsx +0 -23
  461. package/templates/react-ts/src/components/skeletons/common/Skeleton.tsx +0 -18
  462. package/templates/react-ts/src/components/skeletons/common/TableSkeleton.tsx +0 -33
  463. package/templates/react-ts/src/components/ui/Header.tsx +0 -230
  464. package/templates/react-ts/src/components/ui/SidebarHeader.tsx +0 -27
  465. package/templates/react-ts/src/components/ui/sidebar.tsx +0 -152
  466. package/templates/react-ts/src/config/api.ts +0 -22
  467. package/templates/react-ts/src/config/appConfig.ts +0 -44
  468. package/templates/react-ts/src/config/navigation.ts +0 -14
  469. package/templates/react-ts/src/hooks/useLenis.ts +0 -28
  470. package/templates/react-ts/src/hooks/usePwaInstall.ts +0 -45
  471. package/templates/react-ts/src/hooks/useWindowSize.ts +0 -25
  472. package/templates/react-ts/src/index.css +0 -158
  473. package/templates/react-ts/src/main.tsx +0 -24
  474. package/templates/react-ts/src/pages/Home.tsx +0 -154
  475. package/templates/react-ts/src/pages/Login.tsx +0 -233
  476. package/templates/react-ts/src/pages/Profile.tsx +0 -9
  477. package/templates/react-ts/src/services/authService.ts +0 -19
  478. package/templates/react-ts/src/store/useAuthStore.ts +0 -143
  479. package/templates/react-ts/src/utils/formatDate.ts +0 -19
  480. package/templates/react-ts/src/utils/getInitials.ts +0 -10
  481. package/templates/react-ts/src/vite-env.d.ts +0 -1
  482. package/templates/react-ts/tsconfig.json +0 -25
  483. package/templates/react-ts/tsconfig.node.json +0 -10
  484. package/templates/react-ts/vite.config.ts +0 -8
  485. /package/templates/{next-ts → layers/next/base}/next.config.mjs +0 -0
  486. /package/templates/{next → layers/next/base}/postcss.config.js +0 -0
  487. /package/templates/{next-ts → layers/next/base}/public/manifest.json +0 -0
  488. /package/templates/{next → layers/next/javascript}/README.md +0 -0
  489. /package/templates/{mern-react-native/client → layers/next/javascript}/_gitignore +0 -0
  490. /package/templates/{next → layers/next/javascript}/package.json +0 -0
  491. /package/templates/{next → layers/next/javascript}/src/app/(protected)/layout.js +0 -0
  492. /package/templates/{next → layers/next/javascript}/src/app/(protected)/profile/page.js +0 -0
  493. /package/templates/{next → layers/next/javascript}/src/app/api/hello/route.js +0 -0
  494. /package/templates/{next → layers/next/javascript}/src/app/layout.js +0 -0
  495. /package/templates/{next → layers/next/javascript}/src/app/login/page.js +0 -0
  496. /package/templates/{next → layers/next/javascript}/src/app/page.js +0 -0
  497. /package/templates/{mern-react-native/client → layers/next/javascript}/src/assets/animations/loading.json +0 -0
  498. /package/templates/{mern/client → layers/next/javascript}/src/assets/data/navigation.js +0 -0
  499. /package/templates/{mern-react-native/client/public → layers/next/javascript/src/assets/images}/logo.png +0 -0
  500. /package/templates/{next → layers/next/javascript}/src/components/common/Breadcrumbs.jsx +0 -0
  501. /package/templates/{mern/client → layers/next/javascript}/src/components/common/Loading.jsx +0 -0
  502. /package/templates/{mern/client → layers/next/javascript}/src/components/common/LottieIcon.jsx +0 -0
  503. /package/templates/{next → layers/next/javascript}/src/components/common/NotFound.jsx +0 -0
  504. /package/templates/{next → layers/next/javascript}/src/components/common/PwaInstallPrompt.jsx +0 -0
  505. /package/templates/{next → layers/next/javascript}/src/components/common/SEO.jsx +0 -0
  506. /package/templates/{next → layers/next/javascript}/src/components/common/Scroll.jsx +0 -0
  507. /package/templates/{mern/client → layers/next/javascript}/src/components/common/Table.jsx +0 -0
  508. /package/templates/{mern/client → layers/next/javascript}/src/components/common/ToggleSwitch.jsx +0 -0
  509. /package/templates/{next → layers/next/javascript}/src/components/common/Unauthorized.jsx +0 -0
  510. /package/templates/{next → layers/next/javascript}/src/components/layout/ProtectedRoute.jsx +0 -0
  511. /package/templates/{next → layers/next/javascript}/src/components/layout/PublicLayout.jsx +0 -0
  512. /package/templates/{next → layers/next/javascript}/src/components/layout/SidebarLayout.jsx +0 -0
  513. /package/templates/{mern/client → layers/next/javascript}/src/components/modals/ConfirmModal.jsx +0 -0
  514. /package/templates/{mern/client → layers/next/javascript}/src/components/modals/Modal.jsx +0 -0
  515. /package/templates/{mern/client → layers/next/javascript}/src/components/skeletons/common/CardSkeleton.jsx +0 -0
  516. /package/templates/{mern/client → layers/next/javascript}/src/components/skeletons/common/DashboardSkeleton.jsx +0 -0
  517. /package/templates/{mern/client → layers/next/javascript}/src/components/skeletons/common/ListSkeleton.jsx +0 -0
  518. /package/templates/{mern/client → layers/next/javascript}/src/components/skeletons/common/PageSkeleton.jsx +0 -0
  519. /package/templates/{mern/client → layers/next/javascript}/src/components/skeletons/common/ProfileSkeleton.jsx +0 -0
  520. /package/templates/{mern/client → layers/next/javascript}/src/components/skeletons/common/Skeleton.jsx +0 -0
  521. /package/templates/{mern/client → layers/next/javascript}/src/components/skeletons/common/TableSkeleton.jsx +0 -0
  522. /package/templates/{next → layers/next/javascript}/src/components/ui/Header.jsx +0 -0
  523. /package/templates/{mern/client → layers/next/javascript}/src/components/ui/SidebarHeader.jsx +0 -0
  524. /package/templates/{next → layers/next/javascript}/src/components/ui/sidebar.jsx +0 -0
  525. /package/templates/{next → layers/next/javascript}/src/config/api.js +0 -0
  526. /package/templates/{next → layers/next/javascript}/src/config/appConfig.js +0 -0
  527. /package/templates/{mern/client → layers/next/javascript}/src/config/navigation.js +0 -0
  528. /package/templates/{next → layers/next/javascript}/src/hooks/useLenis.js +0 -0
  529. /package/templates/{mern/client → layers/next/javascript}/src/hooks/usePwaInstall.js +0 -0
  530. /package/templates/{mern/client → layers/next/javascript}/src/hooks/useWindowSize.js +0 -0
  531. /package/templates/{next-ts → layers/next/javascript}/src/index.css +0 -0
  532. /package/templates/{next → layers/next/javascript}/src/services/authService.js +0 -0
  533. /package/templates/{mern/client → layers/next/javascript}/src/store/useAuthStore.js +0 -0
  534. /package/templates/{next → layers/next/javascript}/src/store/useUiStore.js +0 -0
  535. /package/templates/{mern/client → layers/next/javascript}/src/utils/formatDate.js +0 -0
  536. /package/templates/{mern/client → layers/next/javascript}/src/utils/getInitials.js +0 -0
  537. /package/templates/{next-ts → layers/next/typescript}/.env.example +0 -0
  538. /package/templates/{next-ts → layers/next/typescript}/README.md +0 -0
  539. /package/templates/{mern-react-native/server → layers/next/typescript}/_gitignore +0 -0
  540. /package/templates/{next-ts → layers/next/typescript}/next-env.d.ts +0 -0
  541. /package/templates/{next-ts → layers/next/typescript}/package.json +0 -0
  542. /package/templates/{next-ts → layers/next/typescript}/postcss.config.js +0 -0
  543. /package/templates/{mern-react-native/client/src/assets/images → layers/next/typescript/public}/logo.png +0 -0
  544. /package/templates/{next-ts → layers/next/typescript}/public/sw.js +0 -0
  545. /package/templates/{next-ts → layers/next/typescript}/public/workbox-f1770938.js +0 -0
  546. /package/templates/{next-ts → layers/next/typescript}/src/app/(protected)/layout.tsx +0 -0
  547. /package/templates/{next-ts → layers/next/typescript}/src/app/(protected)/profile/page.tsx +0 -0
  548. /package/templates/{next-ts → layers/next/typescript}/src/app/api/hello/route.ts +0 -0
  549. /package/templates/{next-ts → layers/next/typescript}/src/app/error.tsx +0 -0
  550. /package/templates/{next-ts → layers/next/typescript}/src/app/layout.tsx +0 -0
  551. /package/templates/{next-ts → layers/next/typescript}/src/app/login/page.tsx +0 -0
  552. /package/templates/{next-ts → layers/next/typescript}/src/app/not-found.tsx +0 -0
  553. /package/templates/{next-ts → layers/next/typescript}/src/app/page.tsx +0 -0
  554. /package/templates/{mern-react-native/mobile → layers/next/typescript/src}/assets/animations/loading.json +0 -0
  555. /package/templates/{mern-react-native/client → layers/next/typescript}/src/assets/data/navigation.ts +0 -0
  556. /package/templates/{mern-react-native/mobile/assets/images/logo → layers/next/typescript/src/assets/images}/logo.png +0 -0
  557. /package/templates/{next-ts → layers/next/typescript}/src/components/common/Breadcrumbs.tsx +0 -0
  558. /package/templates/{next-ts → layers/next/typescript}/src/components/common/Loading.tsx +0 -0
  559. /package/templates/{next-ts → layers/next/typescript}/src/components/common/LottieIcon.tsx +0 -0
  560. /package/templates/{next-ts → layers/next/typescript}/src/components/common/NotFound.tsx +0 -0
  561. /package/templates/{next-ts → layers/next/typescript}/src/components/common/PwaInstallPrompt.tsx +0 -0
  562. /package/templates/{next-ts → layers/next/typescript}/src/components/common/SEO.tsx +0 -0
  563. /package/templates/{next-ts → layers/next/typescript}/src/components/common/Scroll.tsx +0 -0
  564. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/common/Table.tsx +0 -0
  565. /package/templates/{next-ts → layers/next/typescript}/src/components/common/ToggleSwitch.tsx +0 -0
  566. /package/templates/{next-ts → layers/next/typescript}/src/components/common/Unauthorized.tsx +0 -0
  567. /package/templates/{next-ts → layers/next/typescript}/src/components/layout/ProtectedRoute.tsx +0 -0
  568. /package/templates/{next-ts → layers/next/typescript}/src/components/layout/PublicLayout.tsx +0 -0
  569. /package/templates/{next-ts → layers/next/typescript}/src/components/layout/SidebarLayout.tsx +0 -0
  570. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/modals/ConfirmModal.tsx +0 -0
  571. /package/templates/{next-ts → layers/next/typescript}/src/components/modals/Modal.tsx +0 -0
  572. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/skeletons/common/CardSkeleton.tsx +0 -0
  573. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/skeletons/common/DashboardSkeleton.tsx +0 -0
  574. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/skeletons/common/ListSkeleton.tsx +0 -0
  575. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/skeletons/common/PageSkeleton.tsx +0 -0
  576. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/skeletons/common/ProfileSkeleton.tsx +0 -0
  577. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/skeletons/common/Skeleton.tsx +0 -0
  578. /package/templates/{mern-react-native/client → layers/next/typescript}/src/components/skeletons/common/TableSkeleton.tsx +0 -0
  579. /package/templates/{next-ts → layers/next/typescript}/src/components/ui/Button.tsx +0 -0
  580. /package/templates/{next-ts → layers/next/typescript}/src/components/ui/Header.tsx +0 -0
  581. /package/templates/{next-ts → layers/next/typescript}/src/components/ui/Input.tsx +0 -0
  582. /package/templates/{next-ts → layers/next/typescript}/src/components/ui/SidebarHeader.tsx +0 -0
  583. /package/templates/{next-ts → layers/next/typescript}/src/components/ui/sidebar.tsx +0 -0
  584. /package/templates/{next-ts → layers/next/typescript}/src/config/api.ts +0 -0
  585. /package/templates/{next-ts → layers/next/typescript}/src/config/appConfig.ts +0 -0
  586. /package/templates/{mern-react-native/client → layers/next/typescript}/src/config/navigation.ts +0 -0
  587. /package/templates/{next-ts → layers/next/typescript}/src/hooks/useLenis.ts +0 -0
  588. /package/templates/{next-ts → layers/next/typescript}/src/hooks/usePwaInstall.ts +0 -0
  589. /package/templates/{mern-react-native/client → layers/next/typescript}/src/hooks/useWindowSize.ts +0 -0
  590. /package/templates/{next → layers/next/typescript}/src/index.css +0 -0
  591. /package/templates/{next-ts → layers/next/typescript}/src/services/authService.ts +0 -0
  592. /package/templates/{mern-react-native/client → layers/next/typescript}/src/store/useAuthStore.ts +0 -0
  593. /package/templates/{next-ts → layers/next/typescript}/src/store/useUiStore.ts +0 -0
  594. /package/templates/{mern-react-native/client → layers/next/typescript}/src/utils/formatDate.ts +0 -0
  595. /package/templates/{mern-react-native/client → layers/next/typescript}/src/utils/getInitials.ts +0 -0
  596. /package/templates/{next-ts → layers/next/typescript}/tsconfig.json +0 -0
  597. /package/templates/{mern-react-native/server → layers/node/javascript}/.env.example +0 -0
  598. /package/templates/{mern/server → layers/node/javascript}/README.md +0 -0
  599. /package/templates/{mern/client → layers/node/javascript}/_gitignore +0 -0
  600. /package/templates/{mern/server → layers/node/javascript}/package.json +0 -0
  601. /package/templates/{node-prisma → layers/node/javascript}/src/app.js +0 -0
  602. /package/templates/{node-prisma → layers/node/javascript}/src/config/cloudinary.js +0 -0
  603. /package/templates/{mern/server → layers/node/javascript}/src/config/db.js +0 -0
  604. /package/templates/{node-prisma → layers/node/javascript}/src/config/dotenv.js +0 -0
  605. /package/templates/{node-prisma → layers/node/javascript}/src/config/email.js +0 -0
  606. /package/templates/{node-prisma → layers/node/javascript}/src/config/socket.js +0 -0
  607. /package/templates/{node-prisma → layers/node/javascript}/src/config/webPush.js +0 -0
  608. /package/templates/{node → layers/node/javascript}/src/controllers/push.controller.js +0 -0
  609. /package/templates/{node-prisma → layers/node/javascript}/src/controllers/upload.controller.js +0 -0
  610. /package/templates/{mern/server → layers/node/javascript}/src/index.js +0 -0
  611. /package/templates/{mern/server → layers/node/javascript}/src/middleware/auth.middleware.js +0 -0
  612. /package/templates/{node-prisma → layers/node/javascript}/src/middleware/errorHandler.js +0 -0
  613. /package/templates/{node-prisma → layers/node/javascript}/src/middleware/multer.js +0 -0
  614. /package/templates/{node-prisma → layers/node/javascript}/src/middleware/rateLimiter.js +0 -0
  615. /package/templates/{mern/server → layers/node/javascript}/src/models/otp.model.js +0 -0
  616. /package/templates/{mern-react-native/server/src/routes/auth.route.ts → layers/node/javascript/src/routes/auth.route.js} +0 -0
  617. /package/templates/{mern/server → layers/node/javascript}/src/routes/index.js +0 -0
  618. /package/templates/{node → layers/node/javascript}/src/routes/push.route.js +0 -0
  619. /package/templates/{node-prisma → layers/node/javascript}/src/routes/upload.route.js +0 -0
  620. /package/templates/{node-prisma → layers/node/javascript}/src/utils/authToken.js +0 -0
  621. /package/templates/{node-prisma → layers/node/javascript}/src/utils/cloudinary.js +0 -0
  622. /package/templates/{node-prisma → layers/node/javascript}/src/utils/cloudinaryUpload.js +0 -0
  623. /package/templates/{node-prisma → layers/node/javascript}/src/utils/emailOtp.js +0 -0
  624. /package/templates/{node-prisma → layers/node/javascript}/src/utils/genOtpToken.js +0 -0
  625. /package/templates/{node-prisma → layers/node/javascript}/src/utils/generateVapidKeys.js +0 -0
  626. /package/templates/{node-prisma → layers/node/javascript}/src/utils/jwt.js +0 -0
  627. /package/templates/{node-prisma → layers/node/javascript}/src/utils/logger.js +0 -0
  628. /package/templates/{node → layers/node/javascript}/src/utils/pushHelper.js +0 -0
  629. /package/templates/{mern-ts/server → layers/node/typescript}/.env.example +0 -0
  630. /package/templates/{mern-react-native/server → layers/node/typescript}/README.md +0 -0
  631. /package/templates/{mern/server → layers/node/typescript}/_gitignore +0 -0
  632. /package/templates/{mern-ts/server → layers/node/typescript}/package.json +0 -0
  633. /package/templates/{mern-ts/server → layers/node/typescript}/src/app.ts +0 -0
  634. /package/templates/{mern-ts/server → layers/node/typescript}/src/config/cloudinary.ts +0 -0
  635. /package/templates/{mern-react-native/server → layers/node/typescript}/src/config/db.ts +0 -0
  636. /package/templates/{mern-ts/server → layers/node/typescript}/src/config/dotenv.ts +0 -0
  637. /package/templates/{mern-ts/server → layers/node/typescript}/src/config/email.ts +0 -0
  638. /package/templates/{mern-ts/server → layers/node/typescript}/src/config/socket.ts +0 -0
  639. /package/templates/{mern-ts/server → layers/node/typescript}/src/config/webPush.ts +0 -0
  640. /package/templates/{node-ts → layers/node/typescript}/src/controllers/push.controller.ts +0 -0
  641. /package/templates/{mern-ts/server → layers/node/typescript}/src/controllers/upload.controller.ts +0 -0
  642. /package/templates/{mern-react-native/server → layers/node/typescript}/src/index.ts +0 -0
  643. /package/templates/{mern-react-native/server → layers/node/typescript}/src/middleware/auth.middleware.ts +0 -0
  644. /package/templates/{mern-ts/server → layers/node/typescript}/src/middleware/errorHandler.ts +0 -0
  645. /package/templates/{mern-ts/server → layers/node/typescript}/src/middleware/multer.ts +0 -0
  646. /package/templates/{mern-ts/server → layers/node/typescript}/src/middleware/rateLimiter.ts +0 -0
  647. /package/templates/{mern-react-native/server → layers/node/typescript}/src/models/otp.model.ts +0 -0
  648. /package/templates/{mern-react-native/server → layers/node/typescript}/src/routes/index.ts +0 -0
  649. /package/templates/{node-ts → layers/node/typescript}/src/routes/push.route.ts +0 -0
  650. /package/templates/{mern-ts/server → layers/node/typescript}/src/routes/upload.route.ts +0 -0
  651. /package/templates/{mern-ts/server → layers/node/typescript}/src/types/express.d.ts +0 -0
  652. /package/templates/{mern-ts/server → layers/node/typescript}/src/utils/cloudinaryUpload.ts +0 -0
  653. /package/templates/{mern-ts/server → layers/node/typescript}/src/utils/emailOtp.ts +0 -0
  654. /package/templates/{mern-react-native/server → layers/node/typescript}/src/utils/expoNotification.ts +0 -0
  655. /package/templates/{mern-ts/server → layers/node/typescript}/src/utils/genOtpToken.ts +0 -0
  656. /package/templates/{mern-ts/server → layers/node/typescript}/src/utils/generateVapidKeys.ts +0 -0
  657. /package/templates/{mern-ts/server → layers/node/typescript}/src/utils/jwt.ts +0 -0
  658. /package/templates/{mern-ts/server → layers/node/typescript}/src/utils/logger.ts +0 -0
  659. /package/templates/{node-ts → layers/node/typescript}/src/utils/pushHelper.ts +0 -0
  660. /package/templates/{mern-ts/server → layers/node/typescript}/tsconfig.json +0 -0
  661. /package/templates/{node-prisma-ts → layers/node-prisma/javascript}/.env.example +0 -0
  662. /package/templates/{node-prisma → layers/node-prisma/javascript}/README.md +0 -0
  663. /package/templates/{mern-ts/client → layers/node-prisma/javascript}/_gitignore +0 -0
  664. /package/templates/{node-prisma → layers/node-prisma/javascript}/package.json +0 -0
  665. /package/templates/{node-prisma-ts → layers/node-prisma/javascript}/prisma/schema.prisma +0 -0
  666. /package/templates/{mern/server → layers/node-prisma/javascript}/src/app.js +0 -0
  667. /package/templates/{mern/server → layers/node-prisma/javascript}/src/config/cloudinary.js +0 -0
  668. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/config/db.js +0 -0
  669. /package/templates/{mern/server → layers/node-prisma/javascript}/src/config/dotenv.js +0 -0
  670. /package/templates/{mern/server → layers/node-prisma/javascript}/src/config/email.js +0 -0
  671. /package/templates/{mern/server → layers/node-prisma/javascript}/src/config/socket.js +0 -0
  672. /package/templates/{mern/server → layers/node-prisma/javascript}/src/config/webPush.js +0 -0
  673. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/controllers/auth.controller.js +0 -0
  674. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/controllers/push.controller.js +0 -0
  675. /package/templates/{mern/server → layers/node-prisma/javascript}/src/controllers/upload.controller.js +0 -0
  676. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/index.js +0 -0
  677. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/middleware/auth.middleware.js +0 -0
  678. /package/templates/{mern/server → layers/node-prisma/javascript}/src/middleware/errorHandler.js +0 -0
  679. /package/templates/{mern/server → layers/node-prisma/javascript}/src/middleware/multer.js +0 -0
  680. /package/templates/{mern/server → layers/node-prisma/javascript}/src/middleware/rateLimiter.js +0 -0
  681. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/routes/auth.route.js +0 -0
  682. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/routes/index.js +0 -0
  683. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/routes/push.route.js +0 -0
  684. /package/templates/{mern/server → layers/node-prisma/javascript}/src/routes/upload.route.js +0 -0
  685. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/services/auth.service.js +0 -0
  686. /package/templates/{mern/server → layers/node-prisma/javascript}/src/utils/authToken.js +0 -0
  687. /package/templates/{mern/server → layers/node-prisma/javascript}/src/utils/cloudinary.js +0 -0
  688. /package/templates/{mern/server → layers/node-prisma/javascript}/src/utils/cloudinaryUpload.js +0 -0
  689. /package/templates/{mern/server → layers/node-prisma/javascript}/src/utils/emailOtp.js +0 -0
  690. /package/templates/{mern/server → layers/node-prisma/javascript}/src/utils/genOtpToken.js +0 -0
  691. /package/templates/{mern/server → layers/node-prisma/javascript}/src/utils/generateVapidKeys.js +0 -0
  692. /package/templates/{mern/server → layers/node-prisma/javascript}/src/utils/jwt.js +0 -0
  693. /package/templates/{mern/server → layers/node-prisma/javascript}/src/utils/logger.js +0 -0
  694. /package/templates/{node-prisma → layers/node-prisma/javascript}/src/utils/pushHelper.js +0 -0
  695. /package/templates/{node-prisma → layers/node-prisma/typescript}/.env.example +0 -0
  696. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/README.md +0 -0
  697. /package/templates/{mern-ts/server → layers/node-prisma/typescript}/_gitignore +0 -0
  698. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/package.json +0 -0
  699. /package/templates/{node-prisma → layers/node-prisma/typescript}/prisma/schema.prisma +0 -0
  700. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/app.ts +0 -0
  701. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/config/cloudinary.ts +0 -0
  702. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/config/db.ts +0 -0
  703. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/config/dotenv.ts +0 -0
  704. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/config/email.ts +0 -0
  705. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/config/socket.ts +0 -0
  706. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/config/webPush.ts +0 -0
  707. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/controllers/auth.controller.ts +0 -0
  708. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/controllers/push.controller.ts +0 -0
  709. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/controllers/upload.controller.ts +0 -0
  710. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/index.ts +0 -0
  711. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/middleware/auth.middleware.ts +0 -0
  712. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/middleware/errorHandler.ts +0 -0
  713. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/middleware/multer.ts +0 -0
  714. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/middleware/rateLimiter.ts +0 -0
  715. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/routes/auth.route.ts +0 -0
  716. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/routes/index.ts +0 -0
  717. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/routes/push.route.ts +0 -0
  718. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/routes/upload.route.ts +0 -0
  719. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/services/auth.service.ts +0 -0
  720. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/types/express.d.ts +0 -0
  721. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/utils/cloudinaryUpload.ts +0 -0
  722. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/utils/emailOtp.ts +0 -0
  723. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/utils/genOtpToken.ts +0 -0
  724. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/utils/generateVapidKeys.ts +0 -0
  725. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/utils/jwt.ts +0 -0
  726. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/src/utils/logger.ts +0 -0
  727. /package/templates/{node-prisma-ts → layers/node-prisma/typescript}/src/utils/pushHelper.ts +0 -0
  728. /package/templates/{mern-react-native/server → layers/node-prisma/typescript}/tsconfig.json +0 -0
  729. /package/templates/{production-fullstack/server → layers/prisma/javascript}/.env.example +0 -0
  730. /package/templates/{mern/client → layers/react/base}/index.html +0 -0
  731. /package/templates/{mern-react-native/client → layers/react/base}/public/_redirects +0 -0
  732. /package/templates/{mern-react-native/client → layers/react/base}/public/favicon.ico +0 -0
  733. /package/templates/{mern-react-native/client → layers/react/base}/public/favicon.svg +0 -0
  734. /package/templates/{mern-ts/client/src/assets/images → layers/react/base/public}/logo.png +0 -0
  735. /package/templates/{mern-react-native/client → layers/react/base}/public/manifest.json +0 -0
  736. /package/templates/{mern-react-native/client → layers/react/base}/public/sw.js +0 -0
  737. /package/templates/{mern/client → layers/react/base}/src/assets/animations/loading.json +0 -0
  738. /package/templates/{mern/client/public → layers/react/base/src/assets/images}/logo.png +0 -0
  739. /package/templates/{mern-react-native/client → layers/react/base}/src/index.css +0 -0
  740. /package/templates/{next → layers/react/javascript}/_gitignore +0 -0
  741. /package/templates/{mern/client → layers/react/javascript}/package.json +0 -0
  742. /package/templates/{mern/client → layers/react/javascript}/src/App.jsx +0 -0
  743. /package/templates/{next → layers/react/javascript}/src/components/common/Loading.jsx +0 -0
  744. /package/templates/{next → layers/react/javascript}/src/components/common/LottieIcon.jsx +0 -0
  745. /package/templates/{mern/client → layers/react/javascript}/src/components/common/PwaInstallPrompt.jsx +0 -0
  746. /package/templates/{next → layers/react/javascript}/src/components/common/ToggleSwitch.jsx +0 -0
  747. /package/templates/{mern/client → layers/react/javascript}/src/components/common/Unauthorized.jsx +0 -0
  748. /package/templates/{mern/client → layers/react/javascript}/src/components/layout/ProtectedRoute.jsx +0 -0
  749. /package/templates/{mern/client → layers/react/javascript}/src/components/layout/PublicLayout.jsx +0 -0
  750. /package/templates/{mern/client → layers/react/javascript}/src/components/layout/SidebarLayout.jsx +0 -0
  751. /package/templates/{next → layers/react/javascript}/src/config/navigation.js +0 -0
  752. /package/templates/{mern/client → layers/react/javascript}/src/main.jsx +0 -0
  753. /package/templates/{next → layers/react/javascript}/src/utils/formatDate.js +0 -0
  754. /package/templates/{mern/client → layers/react/javascript}/vite.config.js +0 -0
  755. /package/templates/{node-prisma-ts → layers/react/typescript}/_gitignore +0 -0
  756. /package/templates/{mern-react-native/client → layers/react/typescript}/index.html +0 -0
  757. /package/templates/{mern-react-native/client → layers/react/typescript}/package.json +0 -0
  758. /package/templates/{mern-ts/client → layers/react/typescript}/public/_redirects +0 -0
  759. /package/templates/{mern-ts/client → layers/react/typescript}/public/favicon.ico +0 -0
  760. /package/templates/{mern-ts/client → layers/react/typescript}/public/favicon.svg +0 -0
  761. /package/templates/{mern/client/src/assets/images → layers/react/typescript/public}/logo.png +0 -0
  762. /package/templates/{mern-ts/client → layers/react/typescript}/public/manifest.json +0 -0
  763. /package/templates/{mern-ts/client → layers/react/typescript}/public/sw.js +0 -0
  764. /package/templates/{mern-react-native/client → layers/react/typescript}/src/App.tsx +0 -0
  765. /package/templates/{next-ts → layers/react/typescript}/src/assets/animations/loading.json +0 -0
  766. /package/templates/{mern-ts/client → layers/react/typescript}/src/assets/data/navigation.ts +0 -0
  767. /package/templates/{next-ts/public → layers/react/typescript/src/assets/images}/logo.png +0 -0
  768. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/common/Loading.tsx +0 -0
  769. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/common/LottieIcon.tsx +0 -0
  770. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/common/NotFound.tsx +0 -0
  771. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/common/PwaInstallPrompt.tsx +0 -0
  772. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/common/SEO.tsx +0 -0
  773. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/common/Scroll.tsx +0 -0
  774. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/common/ToggleSwitch.tsx +0 -0
  775. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/common/Unauthorized.tsx +0 -0
  776. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/layout/ProtectedRoute.tsx +0 -0
  777. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/layout/PublicLayout.tsx +0 -0
  778. /package/templates/{mern-ts/client → layers/react/typescript}/src/components/skeletons/common/CardSkeleton.tsx +0 -0
  779. /package/templates/{mern-ts/client → layers/react/typescript}/src/components/skeletons/common/DashboardSkeleton.tsx +0 -0
  780. /package/templates/{mern-ts/client → layers/react/typescript}/src/components/skeletons/common/ListSkeleton.tsx +0 -0
  781. /package/templates/{mern-ts/client → layers/react/typescript}/src/components/skeletons/common/PageSkeleton.tsx +0 -0
  782. /package/templates/{mern-ts/client → layers/react/typescript}/src/components/skeletons/common/ProfileSkeleton.tsx +0 -0
  783. /package/templates/{mern-ts/client → layers/react/typescript}/src/components/skeletons/common/Skeleton.tsx +0 -0
  784. /package/templates/{mern-ts/client → layers/react/typescript}/src/components/skeletons/common/TableSkeleton.tsx +0 -0
  785. /package/templates/{mern-react-native/client → layers/react/typescript}/src/components/ui/Header.tsx +0 -0
  786. /package/templates/{mern-react-native/client → layers/react/typescript}/src/config/api.ts +0 -0
  787. /package/templates/{mern-react-native/client → layers/react/typescript}/src/config/appConfig.ts +0 -0
  788. /package/templates/{mern-ts/client → layers/react/typescript}/src/config/navigation.ts +0 -0
  789. /package/templates/{mern-react-native/client → layers/react/typescript}/src/hooks/useLenis.ts +0 -0
  790. /package/templates/{mern-react-native/client → layers/react/typescript}/src/hooks/usePwaInstall.ts +0 -0
  791. /package/templates/{mern-ts/client → layers/react/typescript}/src/hooks/useWindowSize.ts +0 -0
  792. /package/templates/{mern-ts/client → layers/react/typescript}/src/index.css +0 -0
  793. /package/templates/{mern-react-native/client → layers/react/typescript}/src/main.tsx +0 -0
  794. /package/templates/{mern-react-native/client → layers/react/typescript}/src/pages/Home.tsx +0 -0
  795. /package/templates/{mern-react-native/client → layers/react/typescript}/src/pages/Login.tsx +0 -0
  796. /package/templates/{mern-react-native/client → layers/react/typescript}/src/pages/Profile.tsx +0 -0
  797. /package/templates/{mern-react-native/client → layers/react/typescript}/src/services/authService.ts +0 -0
  798. /package/templates/{mern-ts/client → layers/react/typescript}/src/store/useAuthStore.ts +0 -0
  799. /package/templates/{mern-ts/client → layers/react/typescript}/src/utils/formatDate.ts +0 -0
  800. /package/templates/{mern-ts/client → layers/react/typescript}/src/utils/getInitials.ts +0 -0
  801. /package/templates/{mern-react-native/client → layers/react/typescript}/src/vite-env.d.ts +0 -0
  802. /package/templates/{mern-react-native/client → layers/react/typescript}/tsconfig.json +0 -0
  803. /package/templates/{mern-react-native/client → layers/react/typescript}/tsconfig.node.json +0 -0
  804. /package/templates/{mern-react-native/client → layers/react/typescript}/vite.config.ts +0 -0
  805. /package/templates/{mern-react-native/mobile → layers/react-native/base}/LICENSE +0 -0
  806. /package/templates/{mern-react-native/mobile → layers/react-native/base}/_gitignore +0 -0
  807. /package/templates/{mern-react-native/mobile → layers/react-native/base}/app.json +0 -0
  808. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/animations/celebrate.json +0 -0
  809. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/animations/infinity.json +0 -0
  810. /package/templates/{mern-ts/client/src → layers/react-native/base}/assets/animations/loading.json +0 -0
  811. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/fonts/Inter_Bold.ttf +0 -0
  812. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/fonts/Inter_ExtraBold.ttf +0 -0
  813. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/fonts/Inter_Medium.ttf +0 -0
  814. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/fonts/Inter_Regular.ttf +0 -0
  815. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/fonts/Inter_SemiBold.ttf +0 -0
  816. /package/templates/{mern-ts/client/public → layers/react-native/base/assets/images/logo}/logo.png +0 -0
  817. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/images/logo/logo.svg +0 -0
  818. /package/templates/{mern-react-native/mobile → layers/react-native/base}/assets/images/logo/logoWithBg.png +0 -0
  819. /package/templates/{mern-react-native/mobile → layers/react-native/base}/babel.config.js +0 -0
  820. /package/templates/{mern-react-native/mobile → layers/react-native/base}/drizzle.config.ts +0 -0
  821. /package/templates/{mern-react-native/mobile → layers/react-native/base}/eas.json +0 -0
  822. /package/templates/{mern-react-native/mobile → layers/react-native/base}/eslint.config.js +0 -0
  823. /package/templates/{mern-react-native/mobile → layers/react-native/base}/expo-env.d.ts +0 -0
  824. /package/templates/{mern-react-native/mobile → layers/react-native/base}/metro.config.js +0 -0
  825. /package/templates/{mern-react-native/mobile → layers/react-native/base}/nativewind-env.d.ts +0 -0
  826. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(auth)/_layout.tsx +0 -0
  827. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(auth)/change-password.tsx +0 -0
  828. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(auth)/edit-profile.tsx +0 -0
  829. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(auth)/forgot-password.tsx +0 -0
  830. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(auth)/login.tsx +0 -0
  831. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(tabs)/_layout.tsx +0 -0
  832. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(tabs)/dashboard.tsx +0 -0
  833. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(tabs)/index.tsx +0 -0
  834. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/(tabs)/search.tsx +0 -0
  835. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/app/global.css +0 -0
  836. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/common/AnimatedHeader.tsx +0 -0
  837. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/common/ConfirmationToast.tsx +0 -0
  838. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/common/Loading.tsx +0 -0
  839. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/common/LocationLoader.tsx +0 -0
  840. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/common/ScreenHeader.tsx +0 -0
  841. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/common/TabHeader.tsx +0 -0
  842. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/common/Welcome.tsx +0 -0
  843. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/CustomTabBar.tsx +0 -0
  844. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/Sidebar.tsx +0 -0
  845. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/buttons/Button.tsx +0 -0
  846. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/buttons/ButtonGroup.tsx +0 -0
  847. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/buttons/FloatingActionButton.tsx +0 -0
  848. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/buttons/IconButton.tsx +0 -0
  849. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/data-display/Accordion.tsx +0 -0
  850. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/data-display/Avatar.tsx +0 -0
  851. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/data-display/Badge.tsx +0 -0
  852. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/data-display/Card.tsx +0 -0
  853. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/data-display/Image.tsx +0 -0
  854. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/data-display/ImageViewer.tsx +0 -0
  855. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/data-display/SwipeableRow.tsx +0 -0
  856. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/feedback/CircularProgress.tsx +0 -0
  857. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/feedback/GestureWrapper.tsx +0 -0
  858. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/feedback/ProgressBar.tsx +0 -0
  859. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/feedback/Skeleton.tsx +0 -0
  860. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/feedback/Spinner.tsx +0 -0
  861. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/Checkbox.tsx +0 -0
  862. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/DatePicker.tsx +0 -0
  863. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/ImagePickerModal.tsx +0 -0
  864. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/Input.tsx +0 -0
  865. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/LocationPicker.tsx +0 -0
  866. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/OTPInput.tsx +0 -0
  867. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/PasswordInput.tsx +0 -0
  868. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/Radio.tsx +0 -0
  869. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/SearchBar.tsx +0 -0
  870. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/Slider.tsx +0 -0
  871. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/Switch.tsx +0 -0
  872. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/TextArea.tsx +0 -0
  873. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/inputs/WebLocationPicker.tsx +0 -0
  874. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/layout/Container.tsx +0 -0
  875. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/layout/Divider.tsx +0 -0
  876. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/layout/Grid.tsx +0 -0
  877. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/layout/KeyboardAvoidingViewWrapper.tsx +0 -0
  878. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/layout/ScrollContainer.tsx +0 -0
  879. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/layout/Section.tsx +0 -0
  880. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/layout/Spacer.tsx +0 -0
  881. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/layout/Stack.tsx +0 -0
  882. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/navigation/Pagination.tsx +0 -0
  883. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/navigation/ProgressStepper.tsx +0 -0
  884. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/components/ui/navigation/Tabs.tsx +0 -0
  885. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/config/api.ts +0 -0
  886. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/config/sidebar.config.ts +0 -0
  887. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/config/tabNavigation.ts +0 -0
  888. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/constants/Colors.ts +0 -0
  889. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/db/index.ts +0 -0
  890. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/db/schema.ts +0 -0
  891. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/hooks/useDebounce.ts +0 -0
  892. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/services/auth.service.ts +0 -0
  893. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/services/notification.service.ts +0 -0
  894. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/services/permission.service.ts +0 -0
  895. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/services/socket.service.ts +0 -0
  896. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/store/localStore.ts +0 -0
  897. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/store/useNotificationStore.ts +0 -0
  898. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/types/auth.type.ts +0 -0
  899. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/types/images.d.ts +0 -0
  900. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/utils/storage.ts +0 -0
  901. /package/templates/{mern-react-native/mobile → layers/react-native/base}/src/utils/toast.ts +0 -0
  902. /package/templates/{mern-react-native/mobile → layers/react-native/base}/tailwind.config.js +0 -0
  903. /package/templates/{mern-react-native/mobile → layers/react-native/base}/tsconfig.json +0 -0
  904. /package/templates/{mern-react-native → presets/fullstack-prisma/overrides}/_gitignore +0 -0
  905. /package/templates/{mern → presets/mern/overrides}/package.json +0 -0
  906. /package/templates/{mern-ts → presets/mern-react-native/overrides}/_gitignore +0 -0
  907. /package/templates/{mern-react-native → presets/mern-react-native/overrides}/package.json +0 -0
  908. /package/templates/{mern → presets/mern-ts/overrides}/_gitignore +0 -0
  909. /package/templates/{mern-ts → presets/mern-ts/overrides}/package.json +0 -0
  910. /package/templates/{node-prisma → presets/production-fullstack/overrides/client}/_gitignore +0 -0
  911. /package/templates/{mern-ts → presets/production-fullstack/overrides}/client/index.html +0 -0
  912. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/package.json +0 -0
  913. /package/templates/{mern → presets/production-fullstack/overrides}/client/public/_redirects +0 -0
  914. /package/templates/{mern → presets/production-fullstack/overrides}/client/public/favicon.ico +0 -0
  915. /package/templates/{mern → presets/production-fullstack/overrides}/client/public/favicon.svg +0 -0
  916. /package/templates/{next-ts/src/assets/images → presets/production-fullstack/overrides/client/public}/logo.png +0 -0
  917. /package/templates/{mern → presets/production-fullstack/overrides}/client/public/manifest.json +0 -0
  918. /package/templates/{mern → presets/production-fullstack/overrides}/client/public/sw.js +0 -0
  919. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/App.tsx +0 -0
  920. /package/templates/{next → presets/production-fullstack/overrides/client}/src/assets/animations/loading.json +0 -0
  921. /package/templates/{next-ts → presets/production-fullstack/overrides/client}/src/assets/data/navigation.ts +0 -0
  922. /package/templates/{next → presets/production-fullstack/overrides/client}/src/assets/images/logo.png +0 -0
  923. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/components/layout/ProtectedRoute.tsx +0 -0
  924. /package/templates/{mern-ts → presets/production-fullstack/overrides}/client/src/components/layout/PublicLayout.tsx +0 -0
  925. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/components/layout/SidebarLayout.tsx +0 -0
  926. /package/templates/{mern-react-native/client/src/components/common → presets/production-fullstack/overrides/client/src/components/shared}/Breadcrumbs.tsx +0 -0
  927. /package/templates/{mern-ts/client/src/components/common → presets/production-fullstack/overrides/client/src/components/shared}/LottieIcon.tsx +0 -0
  928. /package/templates/{mern-ts/client/src/components/common → presets/production-fullstack/overrides/client/src/components/shared}/NotFound.tsx +0 -0
  929. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/components/shared/PwaInstallPrompt.tsx +0 -0
  930. /package/templates/{mern-ts/client/src/components/common → presets/production-fullstack/overrides/client/src/components/shared}/SEO.tsx +0 -0
  931. /package/templates/{mern-ts/client/src/components/common → presets/production-fullstack/overrides/client/src/components/shared}/Scroll.tsx +0 -0
  932. /package/templates/{mern-ts/client/src/components/common → presets/production-fullstack/overrides/client/src/components/shared}/Unauthorized.tsx +0 -0
  933. /package/templates/{next-ts/src/components → presets/production-fullstack/overrides/client/src/components/shared}/skeletons/common/CardSkeleton.tsx +0 -0
  934. /package/templates/{next-ts/src/components → presets/production-fullstack/overrides/client/src/components/shared}/skeletons/common/DashboardSkeleton.tsx +0 -0
  935. /package/templates/{next-ts/src/components → presets/production-fullstack/overrides/client/src/components/shared}/skeletons/common/ListSkeleton.tsx +0 -0
  936. /package/templates/{next-ts/src/components → presets/production-fullstack/overrides/client/src/components/shared}/skeletons/common/PageSkeleton.tsx +0 -0
  937. /package/templates/{next-ts/src/components → presets/production-fullstack/overrides/client/src/components/shared}/skeletons/common/ProfileSkeleton.tsx +0 -0
  938. /package/templates/{next-ts/src/components → presets/production-fullstack/overrides/client/src/components/shared}/skeletons/common/Skeleton.tsx +0 -0
  939. /package/templates/{next-ts/src/components → presets/production-fullstack/overrides/client/src/components/shared}/skeletons/common/TableSkeleton.tsx +0 -0
  940. /package/templates/{mern-ts/client/src/components/modals → presets/production-fullstack/overrides/client/src/components/ui}/ConfirmModal.tsx +0 -0
  941. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/components/ui/Header.tsx +0 -0
  942. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/components/ui/Loading.tsx +0 -0
  943. /package/templates/{mern-react-native/client/src/components/modals → presets/production-fullstack/overrides/client/src/components/ui}/Modal.tsx +0 -0
  944. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/components/ui/SidebarHeader.tsx +0 -0
  945. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/components/ui/Table.tsx +0 -0
  946. /package/templates/{mern-ts/client/src/components/common → presets/production-fullstack/overrides/client/src/components/ui}/ToggleSwitch.tsx +0 -0
  947. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/components/ui/sidebar.tsx +0 -0
  948. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/config/index.ts +0 -0
  949. /package/templates/{next-ts/src/config → presets/production-fullstack/overrides/client/src/constants}/navigation.ts +0 -0
  950. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/features/auth/api/authService.ts +0 -0
  951. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/features/auth/pages/Login.tsx +0 -0
  952. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/features/auth/store/useAuthStore.ts +0 -0
  953. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/features/core/pages/Home.tsx +0 -0
  954. /package/templates/{mern-ts/client/src → presets/production-fullstack/overrides/client/src/features/core}/pages/Profile.tsx +0 -0
  955. /package/templates/{mern-ts → presets/production-fullstack/overrides}/client/src/hooks/useLenis.ts +0 -0
  956. /package/templates/{mern-ts → presets/production-fullstack/overrides}/client/src/hooks/usePwaInstall.ts +0 -0
  957. /package/templates/{next-ts → presets/production-fullstack/overrides/client}/src/hooks/useWindowSize.ts +0 -0
  958. /package/templates/{mern → presets/production-fullstack/overrides}/client/src/index.css +0 -0
  959. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/lib/axios.ts +0 -0
  960. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/lib/dayjs.ts +0 -0
  961. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/lib/query-client.ts +0 -0
  962. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/lib/socket.ts +0 -0
  963. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/client/src/main.tsx +0 -0
  964. /package/templates/{mern-react-native → presets/production-fullstack/overrides}/client/src/store/useUiStore.ts +0 -0
  965. /package/templates/{next-ts → presets/production-fullstack/overrides/client}/src/utils/formatDate.ts +0 -0
  966. /package/templates/{next-ts → presets/production-fullstack/overrides/client}/src/utils/getInitials.ts +0 -0
  967. /package/templates/{mern-ts → presets/production-fullstack/overrides}/client/src/vite-env.d.ts +0 -0
  968. /package/templates/{mern-ts → presets/production-fullstack/overrides}/client/tsconfig.json +0 -0
  969. /package/templates/{mern-ts → presets/production-fullstack/overrides}/client/tsconfig.node.json +0 -0
  970. /package/templates/{mern-ts → presets/production-fullstack/overrides}/client/vite.config.ts +0 -0
  971. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/LICENSE +0 -0
  972. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/app.json +0 -0
  973. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/animations/celebrate.json +0 -0
  974. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/animations/infinity.json +0 -0
  975. /package/templates/{production-fullstack/client/src → presets/production-fullstack/overrides/mobile}/assets/animations/loading.json +0 -0
  976. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/fonts/Inter_Bold.ttf +0 -0
  977. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/fonts/Inter_ExtraBold.ttf +0 -0
  978. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/fonts/Inter_Medium.ttf +0 -0
  979. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/fonts/Inter_Regular.ttf +0 -0
  980. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/fonts/Inter_SemiBold.ttf +0 -0
  981. /package/templates/{production-fullstack/client/public → presets/production-fullstack/overrides/mobile/assets/images/logo}/logo.png +0 -0
  982. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/images/logo/logo.svg +0 -0
  983. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/assets/images/logo/logoWithBg.png +0 -0
  984. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/babel.config.js +0 -0
  985. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/drizzle.config.ts +0 -0
  986. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/eas.json +0 -0
  987. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/eslint.config.js +0 -0
  988. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/expo-env.d.ts +0 -0
  989. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/metro.config.js +0 -0
  990. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/nativewind-env.d.ts +0 -0
  991. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/package.json +0 -0
  992. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/app/(auth)/_layout.tsx +0 -0
  993. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/app/(auth)/change-password.tsx +0 -0
  994. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/app/(auth)/edit-profile.tsx +0 -0
  995. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/app/(auth)/forgot-password.tsx +0 -0
  996. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/app/(auth)/login.tsx +0 -0
  997. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/app/_layout.tsx +0 -0
  998. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/app/global.css +0 -0
  999. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/common/AnimatedHeader.tsx +0 -0
  1000. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/common/ConfirmationToast.tsx +0 -0
  1001. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/common/Loading.tsx +0 -0
  1002. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/common/LocationLoader.tsx +0 -0
  1003. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/common/ScreenHeader.tsx +0 -0
  1004. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/common/TabHeader.tsx +0 -0
  1005. /package/templates/{mern-react-native → presets/production-fullstack/overrides}/mobile/src/components/common/Typography.tsx +0 -0
  1006. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/common/Welcome.tsx +0 -0
  1007. /package/templates/{mern-react-native → presets/production-fullstack/overrides}/mobile/src/components/ui/BottomModal.tsx +0 -0
  1008. /package/templates/{mern-react-native → presets/production-fullstack/overrides}/mobile/src/components/ui/ClassicTabBar.tsx +0 -0
  1009. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/CustomTabBar.tsx +0 -0
  1010. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/Sidebar.tsx +0 -0
  1011. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/buttons/Button.tsx +0 -0
  1012. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/buttons/ButtonGroup.tsx +0 -0
  1013. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/buttons/FloatingActionButton.tsx +0 -0
  1014. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/buttons/IconButton.tsx +0 -0
  1015. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/data-display/Accordion.tsx +0 -0
  1016. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/data-display/Avatar.tsx +0 -0
  1017. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/data-display/Badge.tsx +0 -0
  1018. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/data-display/Card.tsx +0 -0
  1019. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/data-display/Image.tsx +0 -0
  1020. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/data-display/ImageViewer.tsx +0 -0
  1021. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/data-display/SwipeableRow.tsx +0 -0
  1022. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/feedback/CircularProgress.tsx +0 -0
  1023. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/feedback/GestureWrapper.tsx +0 -0
  1024. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/feedback/ProgressBar.tsx +0 -0
  1025. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/feedback/Skeleton.tsx +0 -0
  1026. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/feedback/Spinner.tsx +0 -0
  1027. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/Checkbox.tsx +0 -0
  1028. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/DatePicker.tsx +0 -0
  1029. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/ImagePickerModal.tsx +0 -0
  1030. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/Input.tsx +0 -0
  1031. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/LocationPicker.tsx +0 -0
  1032. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/OTPInput.tsx +0 -0
  1033. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/PasswordInput.tsx +0 -0
  1034. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/Radio.tsx +0 -0
  1035. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/SearchBar.tsx +0 -0
  1036. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/Slider.tsx +0 -0
  1037. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/Switch.tsx +0 -0
  1038. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/TextArea.tsx +0 -0
  1039. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/inputs/WebLocationPicker.tsx +0 -0
  1040. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/layout/Container.tsx +0 -0
  1041. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/layout/Divider.tsx +0 -0
  1042. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/layout/Grid.tsx +0 -0
  1043. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/layout/KeyboardAvoidingViewWrapper.tsx +0 -0
  1044. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/layout/ScrollContainer.tsx +0 -0
  1045. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/layout/Section.tsx +0 -0
  1046. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/layout/Spacer.tsx +0 -0
  1047. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/layout/Stack.tsx +0 -0
  1048. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/navigation/Pagination.tsx +0 -0
  1049. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/navigation/ProgressStepper.tsx +0 -0
  1050. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/components/ui/navigation/Tabs.tsx +0 -0
  1051. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/config/sidebar.config.ts +0 -0
  1052. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/config/tabNavigation.ts +0 -0
  1053. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/constants/Colors.ts +0 -0
  1054. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/db/index.ts +0 -0
  1055. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/db/schema.ts +0 -0
  1056. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/features/auth/api/auth.service.ts +0 -0
  1057. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/features/auth/store/useAuthStore.ts +0 -0
  1058. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/features/auth/types/auth.type.ts +0 -0
  1059. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/hooks/useDebounce.ts +0 -0
  1060. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/lib/axios.ts +0 -0
  1061. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/lib/query-client.ts +0 -0
  1062. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/lib/socket.ts +0 -0
  1063. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/lib/storage.ts +0 -0
  1064. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/services/permission.service.ts +0 -0
  1065. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/store/localStore.ts +0 -0
  1066. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/store/useNotificationStore.ts +0 -0
  1067. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/types/common.type.ts +0 -0
  1068. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/types/images.d.ts +0 -0
  1069. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/src/utils/toast.ts +0 -0
  1070. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/tailwind.config.js +0 -0
  1071. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/mobile/tsconfig.json +0 -0
  1072. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/README.md +0 -0
  1073. /package/templates/{node-ts → presets/production-fullstack/overrides/server}/_gitignore +0 -0
  1074. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/eslint.config.js +0 -0
  1075. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/package.json +0 -0
  1076. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/core/attachment.prisma +0 -0
  1077. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/core/notification.prisma +0 -0
  1078. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/core/permission.prisma +0 -0
  1079. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/core/role.prisma +0 -0
  1080. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/core/user.prisma +0 -0
  1081. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/enums/common.prisma +0 -0
  1082. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/enums/notification.prisma +0 -0
  1083. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/enums/user.prisma +0 -0
  1084. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma/schema/schema.prisma +0 -0
  1085. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/prisma.config.ts +0 -0
  1086. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/app.ts +0 -0
  1087. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/common/middlewares/auth.middleware.ts +0 -0
  1088. /package/templates/{node-prisma-ts/src/middleware → presets/production-fullstack/overrides/server/src/common/middlewares}/errorHandler.ts +0 -0
  1089. /package/templates/{node-prisma-ts/src/middleware → presets/production-fullstack/overrides/server/src/common/middlewares}/multer.ts +0 -0
  1090. /package/templates/{node-prisma-ts/src/middleware → presets/production-fullstack/overrides/server/src/common/middlewares}/rateLimiter.ts +0 -0
  1091. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/common/services/email.service.ts +0 -0
  1092. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/common/services/push.service.ts +0 -0
  1093. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/common/services/storage.service.ts +0 -0
  1094. /package/templates/{node-prisma-ts/src → presets/production-fullstack/overrides/server/src/common}/types/express.d.ts +0 -0
  1095. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/common/utils/cloudinaryUpload.ts +0 -0
  1096. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/common/utils/emailOtp.ts +0 -0
  1097. /package/templates/{node-prisma-ts/src → presets/production-fullstack/overrides/server/src/common}/utils/genOtpToken.ts +0 -0
  1098. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/common/utils/generateVapidKeys.ts +0 -0
  1099. /package/templates/{node-prisma-ts/src → presets/production-fullstack/overrides/server/src/common}/utils/jwt.ts +0 -0
  1100. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/common/utils/pushHelper.ts +0 -0
  1101. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/config/env.ts +0 -0
  1102. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/config/logger.ts +0 -0
  1103. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/config/prisma.ts +0 -0
  1104. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/features/attachments/upload.controller.ts +0 -0
  1105. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/features/attachments/upload.routes.ts +0 -0
  1106. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/features/auth/auth.controller.ts +0 -0
  1107. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/features/auth/auth.routes.ts +0 -0
  1108. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/features/auth/auth.service.ts +0 -0
  1109. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/features/notifications/push.controller.ts +0 -0
  1110. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/features/notifications/push.routes.ts +0 -0
  1111. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/index.ts +0 -0
  1112. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/routes/index.ts +0 -0
  1113. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/auth.ts +0 -0
  1114. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/connection.ts +0 -0
  1115. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/emitters/assignment.emitter.ts +0 -0
  1116. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/emitters/attendance.emitter.ts +0 -0
  1117. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/emitters/exam.emitter.ts +0 -0
  1118. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/emitters/notification.emitter.ts +0 -0
  1119. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/events.ts +0 -0
  1120. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/handlers/attendance.handler.ts +0 -0
  1121. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/handlers/chat.handler.ts +0 -0
  1122. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/handlers/index.ts +0 -0
  1123. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/handlers/lms.handler.ts +0 -0
  1124. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/handlers/notification.handler.ts +0 -0
  1125. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/index.ts +0 -0
  1126. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/middleware.ts +0 -0
  1127. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/rooms.ts +0 -0
  1128. /package/templates/{production-fullstack → presets/production-fullstack/overrides}/server/src/sockets/types.ts +0 -0
  1129. /package/templates/{node-prisma-ts → presets/production-fullstack/overrides/server}/tsconfig.json +0 -0
  1130. /package/templates/{react → presets/react/overrides}/.env.example +0 -0
@@ -1,321 +0,0 @@
1
- import React, { useState, useEffect, useRef, useMemo } from "react";
2
- import { View, Modal, TouchableOpacity, ActivityIndicator } from "react-native";
3
- import * as Location from "expo-location";
4
- import { Ionicons } from "@expo/vector-icons";
5
- import { useColorScheme } from "nativewind";
6
- import { Colors } from "../../../constants/Colors";
7
- import { Txt } from "../../common/Typography";
8
- import Button from "../buttons/Button";
9
- import Input from "./Input";
10
- import { toast } from "@/utils/toast";
11
- import { WebView, WebViewMessageEvent } from "react-native-webview";
12
- import { LocationLoader } from "../../common/LocationLoader";
13
-
14
- export interface LocationDetails {
15
- addressLine1: string;
16
- addressLine2?: string;
17
- locality: string;
18
- city: string;
19
- state: string;
20
- pinCode: string;
21
- latitude: number;
22
- longitude: number;
23
- }
24
-
25
- interface WebLocationPickerProps {
26
- onLocationSelected: (details: LocationDetails) => void;
27
- initialCoordinate?: { latitude: number; longitude: number };
28
- renderTrigger?: (onPress: () => void) => React.ReactNode;
29
- }
30
-
31
- export default function WebLocationPicker({
32
- onLocationSelected,
33
- initialCoordinate,
34
- renderTrigger,
35
- }: WebLocationPickerProps) {
36
- const { colorScheme } = useColorScheme();
37
- const theme = Colors[colorScheme ?? "light"];
38
-
39
- const [modalVisible, setModalVisible] = useState(false);
40
- const [loading, setLoading] = useState(false);
41
- const [searchQuery, setSearchQuery] = useState("");
42
- const [searching, setSearching] = useState(false);
43
-
44
- const [loadingLocation, setLoadingLocation] = useState(false);
45
- const [animationDone, setAnimationDone] = useState(false);
46
- const [positionFetched, setPositionFetched] = useState(false);
47
-
48
- const [mapCenter, setMapCenter] = useState({
49
- latitude: initialCoordinate?.latitude || 28.6139,
50
- longitude: initialCoordinate?.longitude || 77.209,
51
- });
52
-
53
- const [currentCenter, setCurrentCenter] = useState(mapCenter);
54
-
55
- const webViewRef = useRef<WebView>(null);
56
-
57
- useEffect(() => {
58
- if (initialCoordinate?.latitude && initialCoordinate?.longitude) {
59
-
60
- setMapCenter(initialCoordinate);
61
- setCurrentCenter(initialCoordinate);
62
- }
63
- }, [initialCoordinate]);
64
-
65
- useEffect(() => {
66
- if (animationDone && positionFetched) {
67
- setLoadingLocation(false);
68
- }
69
- }, [animationDone, positionFetched]);
70
-
71
- const requestLocationAndOpenMap = async () => {
72
- setModalVisible(true);
73
- setLoadingLocation(true);
74
- setAnimationDone(false);
75
- setPositionFetched(false);
76
-
77
- // Asynchronously fetch current position
78
- (async () => {
79
- try {
80
- let { status } = await Location.requestForegroundPermissionsAsync();
81
- if (status !== "granted") {
82
- setPositionFetched(true);
83
- return;
84
- }
85
-
86
- if (!initialCoordinate?.latitude) {
87
- let location = await Location.getCurrentPositionAsync({ accuracy: Location.Accuracy.Balanced });
88
- setMapCenter({
89
- latitude: location.coords.latitude,
90
- longitude: location.coords.longitude,
91
- });
92
- setCurrentCenter({
93
- latitude: location.coords.latitude,
94
- longitude: location.coords.longitude,
95
- });
96
- }
97
- } catch (e) {
98
- console.warn(e);
99
- } finally {
100
- setPositionFetched(true);
101
- }
102
- })();
103
- };
104
-
105
- const handleConfirmLocation = async () => {
106
- setLoading(true);
107
- try {
108
- const [address] = await Location.reverseGeocodeAsync({
109
- latitude: currentCenter.latitude,
110
- longitude: currentCenter.longitude,
111
- });
112
-
113
- if (address) {
114
- const details: LocationDetails = {
115
- addressLine1: address.street || address.name || "",
116
- locality: address.subregion || address.district || "",
117
- city: address.city || address.subregion || "",
118
- state: address.region || "",
119
- pinCode: address.postalCode || "",
120
- latitude: currentCenter.latitude,
121
- longitude: currentCenter.longitude,
122
- };
123
- onLocationSelected(details);
124
- setModalVisible(false);
125
- }
126
- } catch (error) {
127
- console.warn("Geocoding failed", error);
128
- }
129
- setLoading(false);
130
- };
131
-
132
- const handleSearch = async () => {
133
- if (!searchQuery.trim()) return;
134
- setSearching(true);
135
- try {
136
- const results = await Location.geocodeAsync(searchQuery);
137
- if (results && results.length > 0) {
138
- const { latitude, longitude } = results[0];
139
- setCurrentCenter({ latitude, longitude });
140
- webViewRef.current?.injectJavaScript(`
141
- map.setView([${latitude}, ${longitude}], 15);
142
- true;
143
- `);
144
- } else {
145
- toast.success("Location not found");
146
- }
147
- } catch (error) {
148
- console.warn("Search failed", error);
149
- toast.error("Failed to search location");
150
- }
151
- setSearching(false);
152
- };
153
-
154
- const handleMessage = (event: WebViewMessageEvent) => {
155
- try {
156
- const data = JSON.parse(event.nativeEvent.data);
157
- if (data.type === "centerChanged") {
158
- setCurrentCenter({
159
- latitude: data.lat,
160
- longitude: data.lng,
161
- });
162
- }
163
- } catch {}
164
- };
165
-
166
- const htmlContent = useMemo(() => `
167
- <!DOCTYPE html>
168
- <html>
169
- <head>
170
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
171
- <link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" />
172
- <script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script>
173
- <style>
174
- body, html, #map { margin: 0; padding: 0; height: 100%; width: 100%; background: #f0f0f0; }
175
- .center-marker {
176
- position: absolute;
177
- top: 50%;
178
- left: 50%;
179
- transform: translate(-50%, -100%);
180
- z-index: 1000;
181
- font-size: 36px;
182
- pointer-events: none;
183
- }
184
- </style>
185
- </head>
186
- <body>
187
- <div id="map"></div>
188
- <div class="center-marker">📍</div>
189
- <script>
190
- var map = L.map('map', { zoomControl: false, attributionControl: false }).setView([${mapCenter.latitude}, ${mapCenter.longitude}], 15);
191
- L.tileLayer('https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png', {
192
- maxZoom: 19
193
- }).addTo(map);
194
-
195
- map.on('moveend', function() {
196
- var center = map.getCenter();
197
- window.ReactNativeWebView.postMessage(JSON.stringify({
198
- type: 'centerChanged',
199
- lat: center.lat,
200
- lng: center.lng
201
- }));
202
- });
203
- </script>
204
- </body>
205
- </html>
206
- `, [mapCenter.latitude, mapCenter.longitude]);
207
-
208
- return (
209
- <>
210
- {renderTrigger ? (
211
- renderTrigger(requestLocationAndOpenMap)
212
- ) : (
213
- <TouchableOpacity
214
- onPress={requestLocationAndOpenMap}
215
- className="w-full h-14 bg-base-200 rounded-xl mb-4 flex-row items-center justify-between px-4 border border-base-300"
216
- >
217
- <View className="flex-row items-center">
218
- <Ionicons
219
- name="map-outline"
220
- size={24}
221
- color={theme.primary}
222
- style={{ marginRight: 12 }}
223
- />
224
- <Txt color={theme.baseContent} weight="semibold">
225
- {initialCoordinate?.latitude
226
- ? "Update Location on Map"
227
- : "Pick from Map"}
228
- </Txt>
229
- </View>
230
- {loading && !modalVisible ? (
231
- <ActivityIndicator color={theme.primary} />
232
- ) : (
233
- <Ionicons name="chevron-forward" size={20} color={theme.secondary} />
234
- )}
235
- </TouchableOpacity>
236
- )}
237
-
238
- <Modal
239
- animationType="slide"
240
- transparent={false}
241
- visible={modalVisible}
242
- onRequestClose={() => setModalVisible(false)}
243
- >
244
- {loadingLocation ? (
245
- <View style={{ flex: 1 }}>
246
- <LocationLoader
247
- onReady={() => {
248
- setAnimationDone(true);
249
- }}
250
- />
251
- </View>
252
- ) : (
253
- <View className="flex-1 bg-base-100">
254
- <View
255
- className="h-16 flex-row items-center justify-between px-4 border-b border-base-300 pt-4 bg-base-100"
256
- style={{ zIndex: 10 }}
257
- >
258
- <TouchableOpacity onPress={() => setModalVisible(false)}>
259
- <Ionicons name="close" size={28} color={theme.baseContent} />
260
- </TouchableOpacity>
261
- <Txt weight="bold" style={{ fontSize: 18 }}>
262
- Select Location
263
- </Txt>
264
- <View style={{ width: 28 }} />
265
- </View>
266
-
267
- <View className="px-4 py-3 bg-base-100 flex-row items-center border-b border-base-200 gap-4">
268
- <View className="flex-1" style={{ marginBottom: -16 }}>
269
- <Input
270
- placeholder="Search city, area, etc."
271
- value={searchQuery}
272
- onChangeText={setSearchQuery}
273
- onSubmitEditing={handleSearch}
274
- returnKeyType="search"
275
- containerStyle={{ marginBottom: 0 }}
276
- leftIcon="search"
277
- />
278
- </View>
279
- <Button
280
- onPress={handleSearch}
281
- isLoading={searching}
282
- label="Go"
283
- variant="primary"
284
- soft
285
- size="md"
286
- className="my-auto"
287
- />
288
- </View>
289
-
290
- <View className="flex-1 relative">
291
- <WebView
292
- ref={webViewRef}
293
- source={{ html: htmlContent }}
294
- onMessage={handleMessage}
295
- style={{ flex: 1 }}
296
- javaScriptEnabled={true}
297
- scrollEnabled={false}
298
- bounces={false}
299
- startInLoadingState={true}
300
- renderLoading={() => (
301
- <View style={{ position: 'absolute', top: 0, left: 0, right: 0, bottom: 0, justifyContent: 'center', alignItems: 'center', backgroundColor: '#f0f0f0' }}>
302
- <ActivityIndicator size="large" color={theme.primary} />
303
- </View>
304
- )}
305
- />
306
- </View>
307
-
308
- <View className="p-4 bg-base-100 border-t border-base-300 pb-8">
309
- <Button
310
- label="Confirm Location"
311
- onPress={handleConfirmLocation}
312
- isLoading={loading}
313
- variant="primary"
314
- />
315
- </View>
316
- </View>
317
- )}
318
- </Modal>
319
- </>
320
- );
321
- }
@@ -1,23 +0,0 @@
1
- import React from "react";
2
- import { View, ViewProps } from "react-native";
3
- import { useSafeAreaInsets } from "react-native-safe-area-context";
4
-
5
- export interface ContainerProps extends ViewProps {
6
- safeArea?: boolean;
7
- }
8
-
9
- export default function Container({ children, style, safeArea = true, ...props }: ContainerProps) {
10
- const insets = useSafeAreaInsets();
11
- return (
12
- <View
13
- style={[
14
- { flex: 1, paddingHorizontal: 20 },
15
- safeArea && { paddingTop: insets.top, paddingBottom: insets.bottom },
16
- style,
17
- ]}
18
- {...props}
19
- >
20
- {children}
21
- </View>
22
- );
23
- }
@@ -1,20 +0,0 @@
1
- import React from "react";
2
- import { View, StyleProp, ViewStyle } from "react-native";
3
- import { useColorScheme } from "nativewind";
4
- import { Colors } from "../../../constants/Colors";
5
-
6
- export default function Divider({ style, vertical }: { style?: StyleProp<ViewStyle>; vertical?: boolean }) {
7
- const { colorScheme } = useColorScheme();
8
- const theme = Colors[colorScheme ?? "light"];
9
- return (
10
- <View
11
- style={[
12
- {
13
- backgroundColor: theme.base300,
14
- ...(vertical ? { width: 1, height: "100%" } : { height: 1, width: "100%" }),
15
- },
16
- style,
17
- ]}
18
- />
19
- );
20
- }
@@ -1,62 +0,0 @@
1
- import React from "react";
2
- import { View, ViewProps } from "react-native";
3
-
4
- export interface GridProps extends ViewProps {
5
- cols?: number;
6
- gap?: number;
7
- children: React.ReactNode;
8
- }
9
-
10
- export interface GridItemProps extends ViewProps {
11
- colSpan?: number;
12
- children: React.ReactNode;
13
- }
14
-
15
- export function GridItem({
16
- children,
17
- ...props
18
- }: GridItemProps) {
19
- return <View {...props}>{children}</View>;
20
- }
21
-
22
- export default function Grid({
23
- cols = 2,
24
- gap = 12,
25
- children,
26
- style,
27
- ...props
28
- }: GridProps) {
29
- return (
30
- <View
31
- style={[
32
- {
33
- flexDirection: "row",
34
- flexWrap: "wrap",
35
- margin: -gap / 2,
36
- },
37
- style,
38
- ]}
39
- {...props}
40
- >
41
- {React.Children.map(children, (child) => {
42
- if (!React.isValidElement(child)) return null;
43
-
44
- const colSpan = Math.min(
45
- (child as React.ReactElement<GridItemProps>).props.colSpan ?? 1,
46
- cols
47
- );
48
-
49
- return (
50
- <View
51
- style={{
52
- width: `${(100 / cols) * colSpan}%`,
53
- padding: gap / 2,
54
- }}
55
- >
56
- {child}
57
- </View>
58
- );
59
- })}
60
- </View>
61
- );
62
- }
@@ -1,16 +0,0 @@
1
- import React from "react";
2
- import { KeyboardAvoidingView, Platform, KeyboardAvoidingViewProps, TouchableWithoutFeedback, Keyboard } from "react-native";
3
-
4
- export default function KeyboardAvoidingViewWrapper({ children, ...props }: KeyboardAvoidingViewProps) {
5
- return (
6
- <KeyboardAvoidingView
7
- style={{ flex: 1 }}
8
- behavior={Platform.OS === "ios" ? "padding" : "height"}
9
- {...props}
10
- >
11
- <TouchableWithoutFeedback onPress={Keyboard.dismiss}>
12
- {children}
13
- </TouchableWithoutFeedback>
14
- </KeyboardAvoidingView>
15
- );
16
- }
@@ -1,21 +0,0 @@
1
- import React from "react";
2
- import { ScrollViewProps } from "react-native";
3
- import { KeyboardAwareScrollView } from "react-native-keyboard-aware-scroll-view";
4
- import { useSafeAreaInsets } from "react-native-safe-area-context";
5
-
6
- export default function ScrollContainer({ contentContainerStyle, children, ...props }: ScrollViewProps) {
7
- const insets = useSafeAreaInsets();
8
- return (
9
- <KeyboardAwareScrollView
10
- showsVerticalScrollIndicator={false}
11
- keyboardShouldPersistTaps="handled"
12
- enableOnAndroid={true}
13
- extraScrollHeight={20}
14
- removeClippedSubviews={true}
15
- contentContainerStyle={[{ paddingBottom: insets.bottom + 20 }, contentContainerStyle]}
16
- {...props}
17
- >
18
- {children}
19
- </KeyboardAwareScrollView>
20
- );
21
- }
@@ -1,51 +0,0 @@
1
- import React from "react";
2
- import { View, ViewProps } from "react-native";
3
- import { useColorScheme } from "nativewind";
4
- import { Colors } from "../../../constants/Colors";
5
- import { Txt } from "../../common/Typography";
6
-
7
- export interface SectionProps extends ViewProps {
8
- title?: string;
9
- titleClass?: string;
10
- action?: React.ReactNode;
11
- }
12
-
13
- export default function Section({
14
- title,
15
- titleClass = "",
16
- action,
17
- children,
18
- style,
19
- ...props
20
- }: SectionProps) {
21
- const { colorScheme } = useColorScheme();
22
- const theme = Colors[colorScheme ?? "light"];
23
-
24
- return (
25
- <View style={[{ marginBottom: 24 }, style]} {...props}>
26
- {(title || action) && (
27
- <View
28
- style={{
29
- flexDirection: "row",
30
- justifyContent: "space-between",
31
- alignItems: "center",
32
- marginBottom: 12,
33
- }}
34
- >
35
- {title && (
36
- <Txt
37
- color={theme.baseContent}
38
- weight="bold"
39
- variant="lg"
40
- className={titleClass}
41
- >
42
- {title}
43
- </Txt>
44
- )}
45
- {action}
46
- </View>
47
- )}
48
- {children}
49
- </View>
50
- );
51
- }
@@ -1,6 +0,0 @@
1
- import React from "react";
2
- import { View } from "react-native";
3
-
4
- export default function Spacer({ size = 16, horizontal = false }: { size?: number; horizontal?: boolean }) {
5
- return <View style={{ [horizontal ? "width" : "height"]: size }} />;
6
- }
@@ -1,34 +0,0 @@
1
- import React from "react";
2
- import { View, ViewProps, FlexAlignType } from "react-native";
3
-
4
- export interface StackProps extends ViewProps {
5
- direction?: "row" | "column";
6
- spacing?: number;
7
- align?: FlexAlignType;
8
- justify?: "flex-start" | "flex-end" | "center" | "space-between" | "space-around" | "space-evenly";
9
- }
10
-
11
- export default function Stack({
12
- direction = "column",
13
- spacing = 8,
14
- align = "stretch",
15
- justify = "flex-start",
16
- children,
17
- style,
18
- ...props
19
- }: StackProps) {
20
- return (
21
- <View
22
- style={[
23
- { flexDirection: direction, gap: spacing, alignItems: align, justifyContent: justify },
24
- style,
25
- ]}
26
- {...props}
27
- >
28
- {children}
29
- </View>
30
- );
31
- }
32
-
33
- export const HStack = (props: Omit<StackProps, "direction">) => <Stack direction="row" {...props} />;
34
- export const VStack = (props: Omit<StackProps, "direction">) => <Stack direction="column" {...props} />;
@@ -1,61 +0,0 @@
1
- import React from "react";
2
- import { View, TouchableOpacity } from "react-native";
3
- import { useColorScheme } from "nativewind";
4
- import { Colors } from "../../../constants/Colors";
5
- import { Ionicons } from "@expo/vector-icons";
6
- import { Txt } from "../../common/Typography";
7
-
8
- export interface PaginationProps {
9
- currentPage: number;
10
- totalPages: number;
11
- onPageChange: (page: number) => void;
12
- }
13
-
14
- export default function Pagination({ currentPage, totalPages, onPageChange }: PaginationProps) {
15
- const { colorScheme } = useColorScheme();
16
- const theme = Colors[colorScheme ?? "light"];
17
-
18
- const pages = Array.from({ length: totalPages }, (_, i) => i + 1);
19
-
20
- return (
21
- <View style={{ flexDirection: "row", alignItems: "center", justifyContent: "center", gap: 8 }}>
22
- <TouchableOpacity
23
- disabled={currentPage === 1}
24
- onPress={() => onPageChange(currentPage - 1)}
25
- style={{ padding: 8, opacity: currentPage === 1 ? 0.5 : 1 }}
26
- >
27
- <Ionicons name="chevron-back" size={20} color={theme.baseContent} />
28
- </TouchableOpacity>
29
-
30
- {pages.map((p) => {
31
- const isActive = p === currentPage;
32
- return (
33
- <TouchableOpacity
34
- key={p}
35
- onPress={() => onPageChange(p)}
36
- style={{
37
- width: 32,
38
- height: 32,
39
- borderRadius: 16,
40
- backgroundColor: isActive ? theme.primary : "transparent",
41
- alignItems: "center",
42
- justifyContent: "center",
43
- }}
44
- >
45
- <Txt color={isActive ? theme.primaryContent : theme.baseContent} weight={isActive ? "bold" : "semibold"}>
46
- {p}
47
- </Txt>
48
- </TouchableOpacity>
49
- );
50
- })}
51
-
52
- <TouchableOpacity
53
- disabled={currentPage === totalPages}
54
- onPress={() => onPageChange(currentPage + 1)}
55
- style={{ padding: 8, opacity: currentPage === totalPages ? 0.5 : 1 }}
56
- >
57
- <Ionicons name="chevron-forward" size={20} color={theme.baseContent} />
58
- </TouchableOpacity>
59
- </View>
60
- );
61
- }
@@ -1,66 +0,0 @@
1
- import React from "react";
2
- import { View } from "react-native";
3
- import { useColorScheme } from "nativewind";
4
- import { Colors } from "../../../constants/Colors";
5
- import { Ionicons } from "@expo/vector-icons";
6
- import { Txt } from "../../common/Typography";
7
-
8
- export interface ProgressStepperProps {
9
- steps: string[];
10
- currentStep: number;
11
- }
12
-
13
- export default function ProgressStepper({ steps, currentStep }: ProgressStepperProps) {
14
- const { colorScheme } = useColorScheme();
15
- const theme = Colors[colorScheme ?? "light"];
16
-
17
- return (
18
- <View style={{ flexDirection: "row", alignItems: "center", justifyContent: "space-between", width: "100%", paddingHorizontal: 16 }}>
19
- {steps.map((step, index) => {
20
- const isCompleted = index < currentStep;
21
- const isActive = index === currentStep;
22
-
23
- return (
24
- <React.Fragment key={index}>
25
- <View style={{ alignItems: "center", width: 40 }}>
26
- <View
27
- style={{
28
- width: 32,
29
- height: 32,
30
- borderRadius: 16,
31
- backgroundColor: isCompleted ? theme.success : isActive ? theme.primary : theme.base300,
32
- alignItems: "center",
33
- justifyContent: "center",
34
- marginBottom: 8,
35
- }}
36
- >
37
- {isCompleted ? (
38
- <Ionicons name="checkmark" size={16} color="#fff" />
39
- ) : (
40
- <Txt color={isActive ? theme.primaryContent : theme.secondary} weight="bold">
41
- {index + 1}
42
- </Txt>
43
- )}
44
- </View>
45
- <Txt color={isActive ? theme.primary : theme.secondary} variant="xs" align="center">
46
- {step}
47
- </Txt>
48
- </View>
49
-
50
- {index < steps.length - 1 && (
51
- <View
52
- style={{
53
- flex: 1,
54
- height: 2,
55
- backgroundColor: index < currentStep ? theme.success : theme.base300,
56
- marginHorizontal: 4,
57
- marginTop: -20,
58
- }}
59
- />
60
- )}
61
- </React.Fragment>
62
- );
63
- })}
64
- </View>
65
- );
66
- }