@varunindiit/create-rn-starter 1.0.1

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 (243) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +93 -0
  3. package/bin/index.js +270 -0
  4. package/lib/prompt.js +63 -0
  5. package/lib/rename.js +239 -0
  6. package/lib/scaffold.js +110 -0
  7. package/lib/utils.js +122 -0
  8. package/package.json +38 -0
  9. package/template/.eslintrc.js +4 -0
  10. package/template/.prettierrc.js +5 -0
  11. package/template/.watchmanconfig +1 -0
  12. package/template/App.tsx +100 -0
  13. package/template/Gemfile +17 -0
  14. package/template/README.md +97 -0
  15. package/template/__tests__/App.test.tsx +13 -0
  16. package/template/_gitignore +75 -0
  17. package/template/android/app/build.gradle +119 -0
  18. package/template/android/app/debug.keystore +0 -0
  19. package/template/android/app/proguard-rules.pro +10 -0
  20. package/template/android/app/src/main/AndroidManifest.xml +45 -0
  21. package/template/android/app/src/main/assets/fonts/MonaSans-Black.ttf +0 -0
  22. package/template/android/app/src/main/assets/fonts/MonaSans-BlackItalic.ttf +0 -0
  23. package/template/android/app/src/main/assets/fonts/MonaSans-Bold.ttf +0 -0
  24. package/template/android/app/src/main/assets/fonts/MonaSans-BoldItalic.ttf +0 -0
  25. package/template/android/app/src/main/assets/fonts/MonaSans-ExtraBold.ttf +0 -0
  26. package/template/android/app/src/main/assets/fonts/MonaSans-ExtraBoldItalic.ttf +0 -0
  27. package/template/android/app/src/main/assets/fonts/MonaSans-ExtraLight.ttf +0 -0
  28. package/template/android/app/src/main/assets/fonts/MonaSans-ExtraLightItalic.ttf +0 -0
  29. package/template/android/app/src/main/assets/fonts/MonaSans-Italic.ttf +0 -0
  30. package/template/android/app/src/main/assets/fonts/MonaSans-Light.ttf +0 -0
  31. package/template/android/app/src/main/assets/fonts/MonaSans-LightItalic.ttf +0 -0
  32. package/template/android/app/src/main/assets/fonts/MonaSans-Medium.ttf +0 -0
  33. package/template/android/app/src/main/assets/fonts/MonaSans-MediumItalic.ttf +0 -0
  34. package/template/android/app/src/main/assets/fonts/MonaSans-Regular.ttf +0 -0
  35. package/template/android/app/src/main/assets/fonts/MonaSans-SemiBold.ttf +0 -0
  36. package/template/android/app/src/main/assets/fonts/MonaSans-SemiBoldItalic.ttf +0 -0
  37. package/template/android/app/src/main/java/com/awesomeproject/MainActivity.kt +22 -0
  38. package/template/android/app/src/main/java/com/awesomeproject/MainApplication.kt +27 -0
  39. package/template/android/app/src/main/res/drawable/launch_screen.png +0 -0
  40. package/template/android/app/src/main/res/drawable/rn_edit_text_material.xml +37 -0
  41. package/template/android/app/src/main/res/layout/launch_screen.xml +12 -0
  42. package/template/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  43. package/template/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  44. package/template/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  45. package/template/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  46. package/template/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  47. package/template/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  48. package/template/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  49. package/template/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  50. package/template/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  51. package/template/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  52. package/template/android/app/src/main/res/values/colors.xml +3 -0
  53. package/template/android/app/src/main/res/values/strings.xml +3 -0
  54. package/template/android/app/src/main/res/values/styles.xml +11 -0
  55. package/template/android/build.gradle +21 -0
  56. package/template/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  57. package/template/android/gradle/wrapper/gradle-wrapper.properties +7 -0
  58. package/template/android/gradle.properties +44 -0
  59. package/template/android/gradlew +248 -0
  60. package/template/android/gradlew.bat +98 -0
  61. package/template/android/link-assets-manifest.json +69 -0
  62. package/template/android/settings.gradle +6 -0
  63. package/template/app.json +4 -0
  64. package/template/babel.config.js +4 -0
  65. package/template/declarations.d.ts +6 -0
  66. package/template/env.example +20 -0
  67. package/template/index.js +10 -0
  68. package/template/ios/.xcode.env +11 -0
  69. package/template/ios/.xcode.env.local +1 -0
  70. package/template/ios/AwesomeProject/AppDelegate.swift +60 -0
  71. package/template/ios/AwesomeProject/Images.xcassets/AppIcon.appiconset/Contents.json +53 -0
  72. package/template/ios/AwesomeProject/Images.xcassets/Contents.json +6 -0
  73. package/template/ios/AwesomeProject/Images.xcassets/Splash.imageset/Contents.json +23 -0
  74. package/template/ios/AwesomeProject/Images.xcassets/Splash.imageset/Splash@1x.png +0 -0
  75. package/template/ios/AwesomeProject/Images.xcassets/Splash.imageset/Splash@2x.png +0 -0
  76. package/template/ios/AwesomeProject/Images.xcassets/Splash.imageset/Splash@3x.png +0 -0
  77. package/template/ios/AwesomeProject/Info.plist +89 -0
  78. package/template/ios/AwesomeProject/LaunchScreen.storyboard +40 -0
  79. package/template/ios/AwesomeProject/PrivacyInfo.xcprivacy +38 -0
  80. package/template/ios/AwesomeProject.xcodeproj/project.pbxproj +576 -0
  81. package/template/ios/AwesomeProject.xcodeproj/xcshareddata/xcschemes/AwesomeProject.xcscheme +88 -0
  82. package/template/ios/AwesomeProject.xcworkspace/contents.xcworkspacedata +10 -0
  83. package/template/ios/Podfile +68 -0
  84. package/template/ios/link-assets-manifest.json +69 -0
  85. package/template/jest.config.js +3 -0
  86. package/template/metro.config.js +24 -0
  87. package/template/package.json +68 -0
  88. package/template/react-native.config.js +7 -0
  89. package/template/src/assets/fonts/MonaSans-Black.ttf +0 -0
  90. package/template/src/assets/fonts/MonaSans-BlackItalic.ttf +0 -0
  91. package/template/src/assets/fonts/MonaSans-Bold.ttf +0 -0
  92. package/template/src/assets/fonts/MonaSans-BoldItalic.ttf +0 -0
  93. package/template/src/assets/fonts/MonaSans-ExtraBold.ttf +0 -0
  94. package/template/src/assets/fonts/MonaSans-ExtraBoldItalic.ttf +0 -0
  95. package/template/src/assets/fonts/MonaSans-ExtraLight.ttf +0 -0
  96. package/template/src/assets/fonts/MonaSans-ExtraLightItalic.ttf +0 -0
  97. package/template/src/assets/fonts/MonaSans-Italic.ttf +0 -0
  98. package/template/src/assets/fonts/MonaSans-Light.ttf +0 -0
  99. package/template/src/assets/fonts/MonaSans-LightItalic.ttf +0 -0
  100. package/template/src/assets/fonts/MonaSans-Medium.ttf +0 -0
  101. package/template/src/assets/fonts/MonaSans-MediumItalic.ttf +0 -0
  102. package/template/src/assets/fonts/MonaSans-Regular.ttf +0 -0
  103. package/template/src/assets/fonts/MonaSans-SemiBold.ttf +0 -0
  104. package/template/src/assets/fonts/MonaSans-SemiBoldItalic.ttf +0 -0
  105. package/template/src/assets/image/BackGroundAuth.png +0 -0
  106. package/template/src/assets/image/BackgroundVerification.png +0 -0
  107. package/template/src/assets/image/logo.png +0 -0
  108. package/template/src/assets/svg/add-circle.svg +5 -0
  109. package/template/src/assets/svg/airConditioning.svg +12 -0
  110. package/template/src/assets/svg/apple.svg +3 -0
  111. package/template/src/assets/svg/arrowDown.svg +3 -0
  112. package/template/src/assets/svg/back.svg +10 -0
  113. package/template/src/assets/svg/bag.svg +11 -0
  114. package/template/src/assets/svg/calender.svg +5 -0
  115. package/template/src/assets/svg/car.svg +10 -0
  116. package/template/src/assets/svg/carConfirm.svg +60 -0
  117. package/template/src/assets/svg/chatActive.svg +3 -0
  118. package/template/src/assets/svg/chatUnActive.svg +3 -0
  119. package/template/src/assets/svg/document-text.svg +6 -0
  120. package/template/src/assets/svg/gender.svg +11 -0
  121. package/template/src/assets/svg/google.svg +6 -0
  122. package/template/src/assets/svg/headphone.svg +3 -0
  123. package/template/src/assets/svg/homeActive.svg +3 -0
  124. package/template/src/assets/svg/homeUnActive.svg +3 -0
  125. package/template/src/assets/svg/logo.svg +18 -0
  126. package/template/src/assets/svg/logout.svg +5 -0
  127. package/template/src/assets/svg/maxBack.svg +4 -0
  128. package/template/src/assets/svg/message-text.svg +7 -0
  129. package/template/src/assets/svg/music.svg +5 -0
  130. package/template/src/assets/svg/noSmoking.svg +10 -0
  131. package/template/src/assets/svg/notification.svg +5 -0
  132. package/template/src/assets/svg/passenger.svg +4 -0
  133. package/template/src/assets/svg/phone.svg +3 -0
  134. package/template/src/assets/svg/rightArrow.svg +3 -0
  135. package/template/src/assets/svg/security-user.svg +5 -0
  136. package/template/src/assets/svg/star.svg +3 -0
  137. package/template/src/assets/svg/tick-circle.svg +4 -0
  138. package/template/src/assets/svg/trafficLight.svg +41 -0
  139. package/template/src/assets/svg/tripActive.svg +10 -0
  140. package/template/src/assets/svg/tripUnActive.svg +10 -0
  141. package/template/src/assets/svg/usbChargers.svg +3 -0
  142. package/template/src/assets/svg/user.svg +4 -0
  143. package/template/src/assets/svg/userActive.svg +3 -0
  144. package/template/src/assets/svg/userPlaceholder.svg +3 -0
  145. package/template/src/assets/svg/userUnActive.svg +3 -0
  146. package/template/src/components/AuthLayout/AuthLayout.tsx +170 -0
  147. package/template/src/components/AuthLayout/index.ts +1 -0
  148. package/template/src/components/BottomSheet/BottomSheet.tsx +73 -0
  149. package/template/src/components/BottomSheet/BottomSheetAlert.tsx +100 -0
  150. package/template/src/components/BottomSheet/CenterAlert.tsx +153 -0
  151. package/template/src/components/BottomSheet/index.ts +2 -0
  152. package/template/src/components/BottomTabBar/index.tsx +145 -0
  153. package/template/src/components/Button/RNButton.tsx +152 -0
  154. package/template/src/components/Button/index.ts +2 -0
  155. package/template/src/components/Common/Avatar.tsx +80 -0
  156. package/template/src/components/Common/Card.tsx +49 -0
  157. package/template/src/components/Common/CardBrandLogo.tsx +66 -0
  158. package/template/src/components/Common/Checkbox.tsx +65 -0
  159. package/template/src/components/Common/Chip.tsx +79 -0
  160. package/template/src/components/Common/CommonStyles.tsx +594 -0
  161. package/template/src/components/Common/Divider.tsx +33 -0
  162. package/template/src/components/Common/DriverTripCard.tsx +308 -0
  163. package/template/src/components/Common/Dropdown.tsx +161 -0
  164. package/template/src/components/Common/EmptyState.tsx +52 -0
  165. package/template/src/components/Common/FAB.tsx +68 -0
  166. package/template/src/components/Common/HeaderLocation.tsx +108 -0
  167. package/template/src/components/Common/Loader.tsx +23 -0
  168. package/template/src/components/Common/RatingStars.tsx +103 -0
  169. package/template/src/components/Common/RouteDots.tsx +98 -0
  170. package/template/src/components/Common/SegmentedControl.tsx +126 -0
  171. package/template/src/components/Common/SosButton.tsx +80 -0
  172. package/template/src/components/Common/SosSheet.tsx +344 -0
  173. package/template/src/components/Common/StarRating.tsx +58 -0
  174. package/template/src/components/Common/StatusBadge.tsx +56 -0
  175. package/template/src/components/Common/Toggle.tsx +66 -0
  176. package/template/src/components/Common/TripCard.tsx +247 -0
  177. package/template/src/components/Common/UploadBox.tsx +106 -0
  178. package/template/src/components/Container/MainContainer.tsx +76 -0
  179. package/template/src/components/Container/index.ts +1 -0
  180. package/template/src/components/Header/index.tsx +143 -0
  181. package/template/src/components/Icon/SvgIcons.tsx +1991 -0
  182. package/template/src/components/ImagePickerSheet/ImagePickerSheet.tsx +233 -0
  183. package/template/src/components/ImagePickerSheet/index.ts +2 -0
  184. package/template/src/components/Input/CountryDropdown.tsx +71 -0
  185. package/template/src/components/Input/OtpInput.tsx +117 -0
  186. package/template/src/components/Input/RNInput.tsx +138 -0
  187. package/template/src/components/Input/index.ts +4 -0
  188. package/template/src/components/Picker/DatePickerSheet.tsx +393 -0
  189. package/template/src/components/Picker/PassengerPickerSheet.tsx +237 -0
  190. package/template/src/components/Text/RNText.tsx +62 -0
  191. package/template/src/components/Text/index.ts +1 -0
  192. package/template/src/components/index.ts +44 -0
  193. package/template/src/hooks/useCurrentLocation.ts +72 -0
  194. package/template/src/localization/i18n.ts +29 -0
  195. package/template/src/localization/i18next.d.ts +11 -0
  196. package/template/src/localization/index.ts +4 -0
  197. package/template/src/localization/languageStorage.ts +27 -0
  198. package/template/src/localization/languages.ts +62 -0
  199. package/template/src/localization/resources/en.ts +703 -0
  200. package/template/src/localization/resources/fr.ts +703 -0
  201. package/template/src/localization/useLanguage.ts +42 -0
  202. package/template/src/navigation/AuthNavigation.tsx +23 -0
  203. package/template/src/navigation/BottomTabs.tsx +24 -0
  204. package/template/src/navigation/RootNavigation.tsx +27 -0
  205. package/template/src/navigation/RouteKey.ts +22 -0
  206. package/template/src/navigation/StackNavigation.tsx +52 -0
  207. package/template/src/navigation/paramLists.ts +25 -0
  208. package/template/src/redux/slice/app.ts +66 -0
  209. package/template/src/redux/slice/auth.ts +40 -0
  210. package/template/src/redux/slice/userProfile.ts +124 -0
  211. package/template/src/redux/store.ts +17 -0
  212. package/template/src/screen/auth/Login.tsx +69 -0
  213. package/template/src/screen/onboarding/LanguageSelection.tsx +231 -0
  214. package/template/src/screen/root/home/index.tsx +36 -0
  215. package/template/src/screen/root/profile/index.tsx +69 -0
  216. package/template/src/screen/shared/Chat.tsx +308 -0
  217. package/template/src/screen/shared/EditProfile.tsx +407 -0
  218. package/template/src/screen/shared/HelpSupport.tsx +678 -0
  219. package/template/src/screen/shared/LocationSearch.tsx +362 -0
  220. package/template/src/screen/shared/Messages.tsx +115 -0
  221. package/template/src/screen/shared/Notifications.tsx +86 -0
  222. package/template/src/screen/shared/PrivacyPolicy.tsx +297 -0
  223. package/template/src/screen/shared/Profile.tsx +118 -0
  224. package/template/src/screen/shared/Ratings.tsx +170 -0
  225. package/template/src/screen/shared/TermsConditions.tsx +315 -0
  226. package/template/src/screen/shared/profile/DriverProfile.tsx +262 -0
  227. package/template/src/screen/shared/profile/PassengerProfile.tsx +123 -0
  228. package/template/src/screen/shared/profile/ProfileParts.tsx +219 -0
  229. package/template/src/services/Config.ts +37 -0
  230. package/template/src/services/api.ts +37 -0
  231. package/template/src/services/index.ts +4 -0
  232. package/template/src/services/places.ts +320 -0
  233. package/template/src/services/storage.ts +33 -0
  234. package/template/src/theme/fonts.ts +30 -0
  235. package/template/src/theme/index.ts +3 -0
  236. package/template/src/theme/spacing.ts +66 -0
  237. package/template/src/theme/theme.ts +58 -0
  238. package/template/src/types/env.d.ts +8 -0
  239. package/template/src/types/index.ts +3 -0
  240. package/template/src/utils/card.ts +101 -0
  241. package/template/src/utils/constants.ts +39 -0
  242. package/template/src/utils/functions.ts +24 -0
  243. package/template/tsconfig.json +8 -0
@@ -0,0 +1,5 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M7.41669 6.30019C7.67502 3.3002 9.21669 2.0752 12.5917 2.0752H12.7C16.425 2.0752 17.9167 3.56686 17.9167 7.29186V12.7252C17.9167 16.4502 16.425 17.9419 12.7 17.9419H12.5917C9.24169 17.9419 7.70002 16.7335 7.42502 13.7835" stroke="#CC1E1E" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M12.5 10H3.01666" stroke="#CC1E1E" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
4
+ <path d="M4.875 7.20801L2.08333 9.99967L4.875 12.7913" stroke="#CC1E1E" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
5
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M10.6667 14.0001V12.6668C10.6667 11.195 9.47181 10.0001 8.00004 10.0001H4.00004C2.52827 10.0001 1.33337 11.195 1.33337 12.6668V14.0001M10.6667 2.08545C11.8428 2.39036 12.6642 3.45176 12.6642 4.66678C12.6642 5.8818 11.8428 6.94321 10.6667 7.24812M14.6667 14.0001V12.6668C14.6658 11.4515 13.8434 10.3906 12.6667 10.0868" stroke="#C4521A" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M3.33337 4.66667C3.33337 6.13844 4.52827 7.33333 6.00004 7.33333C7.47181 7.33333 8.66671 6.13844 8.66671 4.66667C8.66671 3.19489 7.47181 2 6.00004 2C4.52827 2 3.33337 3.19489 3.33337 4.66667H3.33337" stroke="#C4521A" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1,7 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M6.66669 1.66675C3.33335 1.66675 1.66669 3.33341 1.66669 6.66675V17.5001C1.66669 17.9584 2.04169 18.3334 2.50002 18.3334H13.3334C16.6667 18.3334 18.3334 16.6667 18.3334 13.3334V6.66675C18.3334 3.33341 16.6667 1.66675 13.3334 1.66675H6.66669Z" stroke="#2C1A0E" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M5.83331 7.91675H14.1666H5.83331Z" fill="white"/>
4
+ <path d="M5.83331 7.91675H14.1666" stroke="#2C1A0E" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
5
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M5.83331 12.0835H11.6666H5.83331Z" fill="white"/>
6
+ <path d="M5.83331 12.0835H11.6666" stroke="#2C1A0E" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
7
+ </svg>
@@ -0,0 +1,5 @@
1
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M6 12V3.33333L14 2V10.6667" stroke="#C4521A" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M2 12C2 13.1038 2.89617 14 4 14C5.10383 14 6 13.1038 6 12C6 10.8962 5.10383 10 4 10C2.89617 10 2 10.8962 2 12H2" stroke="#C4521A" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
4
+ <path d="M10 10.6667C10 11.7706 10.8962 12.6667 12 12.6667C13.1038 12.6667 14 11.7706 14 10.6667C14 9.56292 13.1038 8.66675 12 8.66675C10.8962 8.66675 10 9.56292 10 10.6667V10.6667" stroke="#C4521A" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
5
+ </svg>
@@ -0,0 +1,10 @@
1
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_136_1773)">
3
+ <path d="M8.00004 7.99992H2.00004C1.6321 7.99992 1.33337 8.29864 1.33337 8.66659V9.99992C1.33337 10.3679 1.6321 10.6666 2.00004 10.6666H10.6667M12 5.33325C12 3.66659 10.6667 3.66659 10.6667 1.99992M1.33337 1.33325L14.6667 14.6666M14 7.99992C14.368 7.99992 14.6667 8.29864 14.6667 8.66659V9.99992C14.6667 10.2381 14.5396 10.4582 14.3334 10.5773M14.6667 5.33325C14.6667 3.66659 13.3334 3.66659 13.3334 1.99992M4.66671 7.99992V10.6666" stroke="#C4521A" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </g>
5
+ <defs>
6
+ <clipPath id="clip0_136_1773">
7
+ <rect width="16" height="16" fill="white"/>
8
+ </clipPath>
9
+ </defs>
10
+ </svg>
@@ -0,0 +1,5 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M5.01664 7.4248V9.83314C5.01664 10.3415 4.79997 11.1165 4.54164 11.5498L3.5833 13.1415C2.99164 14.1248 3.39997 15.2165 4.4833 15.5831C8.07497 16.7831 11.95 16.7831 15.5416 15.5831C16.55 15.2498 16.9916 14.0581 16.4416 13.1415L15.4833 11.5498C15.2333 11.1165 15.0166 10.3415 15.0166 9.83314V7.4248C15.0166 4.6748 12.7666 2.4248 10.0166 2.4248C7.2583 2.4248 5.01664 4.66647 5.01664 7.4248Z" stroke="#2C1A0E" stroke-width="1.25" stroke-linecap="round"/>
3
+ <path d="M10.7584 2.50003C9.95837 2.40003 9.1917 2.45837 8.47504 2.6667C8.7167 2.05003 9.3167 1.6167 10.0167 1.6167C10.7167 1.6167 11.3167 2.05003 11.5584 2.6667C11.3 2.5917 11.0334 2.53337 10.7584 2.50003Z" stroke="#2C1A0E" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
4
+ <path d="M12.5167 15.8833C12.5167 17.2583 11.3917 18.3833 10.0167 18.3833C9.33335 18.3833 8.70001 18.1 8.25001 17.65C7.80001 17.2 7.51668 16.5666 7.51668 15.8833" stroke="#2C1A0E" stroke-width="1.25"/>
5
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M14.25 15.75V14.25C14.25 12.5943 12.9057 11.25 11.25 11.25H6.75C5.09425 11.25 3.75 12.5943 3.75 14.25V15.75" stroke="#E87C3E" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M6 5.25C6 6.90575 7.34425 8.25 9 8.25C10.6557 8.25 12 6.90575 12 5.25C12 3.59425 10.6557 2.25 9 2.25C7.34425 2.25 6 3.59425 6 5.25V5.25" stroke="#E87C3E" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M4.7775 1.70249C5.79167 0.69416 7.46167 0.873326 8.31084 2.00833L9.3625 3.41166C10.0542 4.33499 9.9925 5.62499 9.17167 6.44083L8.97334 6.63916C8.95085 6.72242 8.94856 6.80984 8.96667 6.89416C9.01917 7.23416 9.30334 7.95416 10.4933 9.13749C11.6833 10.3208 12.4083 10.6042 12.7533 10.6575C12.8403 10.675 12.93 10.6724 13.0158 10.65L13.3558 10.3117C14.0858 9.58666 15.2058 9.45083 16.1092 9.94166L17.7008 10.8083C19.065 11.5483 19.4092 13.4017 18.2925 14.5125L17.1083 15.6892C16.735 16.06 16.2333 16.3692 15.6217 16.4267C14.1133 16.5675 10.5992 16.3875 6.905 12.715C3.4575 9.28666 2.79584 6.29666 2.71167 4.82333C2.67 4.07833 3.02167 3.44833 3.47 3.00333L4.7775 1.70249ZM7.31084 2.75749C6.88834 2.19333 6.10167 2.14833 5.65834 2.58916L4.35 3.88916C4.075 4.16249 3.94334 4.46416 3.96 4.75249C4.02667 5.92333 4.56 8.62083 7.78667 11.8292C11.1717 15.1942 14.2975 15.295 15.5058 15.1817C15.7525 15.1592 15.9975 15.0308 16.2267 14.8033L17.41 13.6258C17.8917 13.1475 17.7858 12.2758 17.1042 11.9058L15.5125 11.04C15.0725 10.8017 14.5575 10.88 14.2375 11.1983L13.8583 11.5758L13.4167 11.1325C13.8583 11.5758 13.8575 11.5767 13.8567 11.5767L13.8558 11.5783L13.8533 11.5808L13.8475 11.5858L13.835 11.5975C13.7998 11.6301 13.7619 11.6597 13.7217 11.6858C13.655 11.73 13.5667 11.7792 13.4558 11.82C13.2308 11.9042 12.9325 11.9492 12.5642 11.8925C11.8417 11.7817 10.8842 11.2892 9.61167 10.0242C8.34 8.75916 7.84334 7.80749 7.73167 7.08583C7.67417 6.71749 7.72 6.41916 7.805 6.19416C7.85178 6.06755 7.91876 5.94935 8.00334 5.84416L8.03 5.81499L8.04167 5.80249L8.04667 5.79749L8.04917 5.79499L8.05084 5.79333L8.29084 5.55499C8.6475 5.19916 8.6975 4.60999 8.36167 4.16083L7.31084 2.75749Z" fill="#2C1A0E"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M3.33334 8.00016H12.6667M8.00001 3.3335L12.6667 8.00016L8.00001 12.6668" stroke="#7A5A3A" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
3
+ </svg>
@@ -0,0 +1,5 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M7.48367 18.1752L3.90033 15.5002C2.95033 14.7918 2.20866 13.3168 2.20866 12.1335V5.94183C2.20866 4.65849 3.15034 3.29183 4.35867 2.84183L8.517 1.2835C9.342 0.975163 10.642 0.975163 11.467 1.2835L15.6337 2.84183C16.842 3.29183 17.7837 4.65849 17.7837 5.94183V12.1335C17.7837 13.3168 17.042 14.7918 16.092 15.5002L12.5087 18.1752C11.8087 18.7002 10.9087 18.9668 10.0003 18.9668C9.092 18.9668 8.19201 18.7002 7.48367 18.1752ZM4.80034 4.00849C4.08367 4.27515 3.45866 5.17516 3.45866 5.94183V12.1335C3.45866 12.9252 4.017 14.0335 4.642 14.5001L8.22533 17.1751C9.18366 17.8918 10.8087 17.8918 11.767 17.1751L15.3503 14.5001C15.9837 14.0251 16.5337 12.9168 16.5337 12.1335V5.94183C16.5337 5.18349 15.9087 4.28349 15.192 4.00849L11.0337 2.45016C10.4837 2.24182 9.517 2.24182 8.95866 2.45016L4.80034 4.00849Z" fill="#292D32"/>
3
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M9.94158 9.7253C8.73325 9.69197 7.84993 8.76697 7.84993 7.64197C7.84993 6.49197 8.79158 5.55029 9.94158 5.55029C11.0916 5.55029 12.0333 6.49197 12.0333 7.64197C12.0249 8.7753 11.1416 9.69195 10.0166 9.73362C10.0082 9.72528 10.0083 9.7253 9.99992 9.7253C9.98326 9.7253 9.96658 9.7253 9.94158 9.7253ZM9.09993 7.64197C9.09993 8.1003 9.45827 8.46695 9.90827 8.48362C9.90827 8.48362 9.94992 8.48362 9.99992 8.48362C10.4416 8.45862 10.7833 8.09197 10.7833 7.64197C10.7916 7.1753 10.4082 6.80029 9.94158 6.80029C9.47492 6.80029 9.09993 7.1753 9.09993 7.64197Z" fill="#292D32"/>
4
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M8.00067 13.8918C7.44233 13.5251 7.12565 12.9835 7.12565 12.4085C7.12565 11.8335 7.44233 11.2918 8.00067 10.9168C9.12567 10.1668 10.884 10.1751 12.0007 10.9168C12.559 11.2835 12.8757 11.8251 12.8757 12.4001C12.8757 12.9751 12.559 13.5168 12.0007 13.8918C11.4423 14.2668 10.7173 14.4585 10.0007 14.4585C9.284 14.4585 8.559 14.2668 8.00067 13.8918ZM8.37565 12.4001C8.37565 12.5501 8.49232 12.7168 8.69232 12.8501C9.39232 13.3168 10.609 13.3168 11.309 12.8501C11.5173 12.7168 11.634 12.5501 11.634 12.4001C11.634 12.2501 11.5173 12.0835 11.3173 11.9501C10.6173 11.4918 9.39232 11.4918 8.69232 11.9501C8.48399 12.0835 8.36732 12.2501 8.37565 12.4001Z" fill="#292D32"/>
5
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M12.9083 5.85853C13.1083 6.26686 13.6416 6.65853 14.0916 6.73353L16.75 7.1752C18.45 7.45853 18.85 8.69186 17.625 9.90853L15.5583 11.9752C15.2083 12.3252 15.0166 13.0002 15.125 13.4835L15.7166 16.0419C16.1833 18.0669 15.1083 18.8502 13.3166 17.7919L10.825 16.3169C10.375 16.0502 9.63331 16.0502 9.17498 16.3169L6.68331 17.7919C4.89998 18.8502 3.81664 18.0585 4.28331 16.0419L4.87498 13.4835C4.98331 13.0002 4.79164 12.3252 4.44164 11.9752L2.37498 9.90853C1.15831 8.69186 1.54998 7.45853 3.24998 7.1752L5.90831 6.73353C6.34998 6.65853 6.88331 6.26686 7.08331 5.85853L8.54998 2.9252C9.34998 1.33353 10.65 1.33353 11.4416 2.9252L12.9083 5.85853Z" stroke="#2C1A0E" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
3
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M16.5 9C16.5 4.875 13.125 1.5 9 1.5C4.875 1.5 1.5 4.875 1.5 9C1.5 13.125 4.875 16.5 9 16.5C13.125 16.5 16.5 13.125 16.5 9Z" stroke="#292D32" stroke-width="1.125" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M5.8125 8.99994L7.935 11.1224L12.1875 6.87744" stroke="#292D32" stroke-width="1.125" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1,41 @@
1
+ <svg width="94" height="224" viewBox="0 0 94 224" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_161_2046)">
3
+ <path d="M57.2197 174.388H37.8182V223.429H57.2197V174.388Z" fill="url(#paint0_linear_161_2046)"/>
4
+ <path d="M66.2549 114.294H28.7819V119.484H66.2549V114.294Z" fill="#2C1A0E"/>
5
+ <path d="M18.1383 131.165H1.38256C1.01626 131.166 0.665315 131.312 0.406303 131.571C0.147291 131.83 0.00123437 132.181 0 132.547L9.56901 162.619C9.79495 163.374 10.1906 164.001 10.9504 164.001H18.1383V131.165Z" fill="#2C1A0E"/>
6
+ <path d="M67.1458 119.484H26.7883C22.0104 119.484 18.1371 123.357 18.1371 128.135V165.736C18.1371 170.514 22.0104 174.387 26.7883 174.387H67.1458C71.9237 174.387 75.797 170.514 75.797 165.736V128.135C75.797 123.357 71.9237 119.484 67.1458 119.484Z" fill="#7A5A3A"/>
7
+ <path d="M92.5538 131.165H75.804V164.001H82.9918C83.7516 164.001 84.1473 163.374 84.3732 162.619L93.9352 132.553C93.9358 132.186 93.7907 131.833 93.5317 131.573C93.2727 131.313 92.921 131.166 92.5538 131.165Z" fill="#2C1A0E"/>
8
+ <path d="M28.782 127.224C28.782 127.884 28.5863 128.529 28.2197 129.078C27.8531 129.627 27.332 130.054 26.7224 130.307C26.1127 130.559 25.4419 130.625 24.7947 130.497C24.1475 130.368 23.553 130.05 23.0864 129.583C22.6198 129.117 22.302 128.522 22.1733 127.875C22.0446 127.228 22.1106 126.557 22.3632 125.947C22.6157 125.338 23.0433 124.817 23.592 124.45C24.1407 124.084 24.7857 123.888 25.4456 123.888C26.3305 123.888 27.1791 124.239 27.8048 124.865C28.4304 125.491 28.782 126.339 28.782 127.224Z" fill="#2C1A0E"/>
9
+ <path d="M71.3801 127.224C71.3801 127.884 71.1844 128.529 70.8178 129.078C70.4512 129.627 69.9301 130.054 69.3205 130.307C68.7108 130.559 68.04 130.625 67.3928 130.497C66.7456 130.368 66.1511 130.05 65.6845 129.583C65.2179 129.117 64.9001 128.522 64.7714 127.875C64.6426 127.228 64.7087 126.557 64.9612 125.947C65.2138 125.338 65.6414 124.817 66.1901 124.45C66.7387 124.084 67.3838 123.888 68.0437 123.888C68.9285 123.888 69.7772 124.239 70.4029 124.865C71.0286 125.491 71.3801 126.339 71.3801 127.224Z" fill="#2C1A0E"/>
10
+ <path d="M28.782 167.337C28.782 167.997 28.5863 168.642 28.2197 169.191C27.8531 169.739 27.332 170.167 26.7224 170.42C26.1127 170.672 25.4419 170.738 24.7947 170.609C24.1475 170.481 23.553 170.163 23.0864 169.696C22.6198 169.23 22.302 168.635 22.1733 167.988C22.0446 167.341 22.1106 166.67 22.3632 166.06C22.6157 165.451 23.0433 164.93 23.592 164.563C24.1407 164.196 24.7857 164.001 25.4456 164.001C26.3305 164.001 27.1791 164.352 27.8048 164.978C28.4304 165.604 28.782 166.452 28.782 167.337Z" fill="#2C1A0E"/>
11
+ <path d="M71.3801 167.337C71.3801 167.997 71.1844 168.642 70.8178 169.191C70.4512 169.739 69.9301 170.167 69.3205 170.42C68.7108 170.672 68.04 170.738 67.3928 170.609C66.7456 170.481 66.1511 170.163 65.6845 169.696C65.2179 169.23 64.9001 168.635 64.7714 167.988C64.6426 167.341 64.7087 166.67 64.9612 166.06C65.2138 165.451 65.6414 164.93 66.1901 164.563C66.7387 164.196 67.3838 164.001 68.0437 164.001C68.9285 164.001 69.7772 164.352 70.4029 164.978C71.0286 165.604 71.3801 166.452 71.3801 167.337Z" fill="#2C1A0E"/>
12
+ <path d="M67.7744 59.3901H26.1596C21.7289 59.3901 18.1371 62.982 18.1371 67.4127V106.271C18.1371 110.701 21.7289 114.293 26.1596 114.293H67.7744C72.2052 114.293 75.797 110.701 75.797 106.271V67.4127C75.797 62.982 72.2052 59.3901 67.7744 59.3901Z" fill="#7A5A3A"/>
13
+ <path d="M25.4455 70.467C27.2882 70.467 28.7819 68.9732 28.7819 67.1306C28.7819 65.2879 27.2882 63.7942 25.4455 63.7942C23.6029 63.7942 22.1091 65.2879 22.1091 67.1306C22.1091 68.9732 23.6029 70.467 25.4455 70.467Z" fill="#2C1A0E"/>
14
+ <path d="M71.3801 67.1306C71.3801 67.7905 71.1844 68.4355 70.8178 68.9842C70.4512 69.5328 69.9301 69.9605 69.3205 70.213C68.7108 70.4655 68.04 70.5316 67.3928 70.4029C66.7456 70.2741 66.1511 69.9564 65.6845 69.4898C65.2179 69.0232 64.9001 68.4287 64.7714 67.7815C64.6426 67.1343 64.7087 66.4634 64.9612 65.8538C65.2138 65.2442 65.6414 64.7231 66.1901 64.3565C66.7387 63.9899 67.3838 63.7942 68.0437 63.7942C68.9285 63.7942 69.7772 64.1457 70.4029 64.7714C71.0286 65.3971 71.3801 66.2457 71.3801 67.1306Z" fill="#2C1A0E"/>
15
+ <path d="M28.782 107.245C28.782 107.904 28.5863 108.549 28.2197 109.098C27.8531 109.647 27.332 110.074 26.7224 110.327C26.1127 110.579 25.4419 110.646 24.7947 110.517C24.1475 110.388 23.553 110.07 23.0864 109.604C22.6198 109.137 22.302 108.543 22.1733 107.895C22.0446 107.248 22.1106 106.577 22.3632 105.968C22.6157 105.358 23.0433 104.837 23.592 104.47C24.1407 104.104 24.7857 103.908 25.4456 103.908C26.3305 103.908 27.1791 104.26 27.8048 104.885C28.4304 105.511 28.782 106.36 28.782 107.245Z" fill="#2C1A0E"/>
16
+ <path d="M71.3801 107.245C71.3801 107.904 71.1844 108.549 70.8178 109.098C70.4512 109.647 69.9301 110.074 69.3205 110.327C68.7108 110.579 68.04 110.646 67.3928 110.517C66.7456 110.388 66.1511 110.07 65.6845 109.604C65.2179 109.137 64.9001 108.543 64.7714 107.895C64.6426 107.248 64.7087 106.577 64.9612 105.968C65.2138 105.358 65.6414 104.837 66.1901 104.47C66.7387 104.104 67.3838 103.908 68.0437 103.908C68.9285 103.908 69.7772 104.26 70.4029 104.885C71.0286 105.511 71.3801 106.36 71.3801 107.245Z" fill="#2C1A0E"/>
17
+ <path d="M18.1383 11.6808H1.38256C1.01626 11.6821 0.665315 11.8281 0.406303 12.0872C0.147291 12.3462 0.00123437 12.6971 0 13.0634L9.56901 43.1354C9.79495 43.8905 10.1906 44.5168 10.9504 44.5168H18.1383V11.6808Z" fill="#2C1A0E"/>
18
+ <path d="M67.0439 0H26.8901C22.056 0 18.1371 3.91888 18.1371 8.75306V46.1499C18.1371 50.9841 22.056 54.903 26.8901 54.903H67.0439C71.8781 54.903 75.797 50.9841 75.797 46.1499V8.75306C75.797 3.91888 71.8781 0 67.0439 0Z" fill="#7A5A3A"/>
19
+ <path d="M92.5538 11.6808H75.804V44.5191H82.9918C83.7516 44.5191 84.1473 43.8928 84.3732 43.1378L93.941 13.0657C93.9409 12.8837 93.9049 12.7035 93.8351 12.5354C93.7653 12.3673 93.6631 12.2146 93.5343 12.086C93.4054 11.9574 93.2526 11.8554 93.0843 11.7859C92.9161 11.7164 92.7358 11.6807 92.5538 11.6808Z" fill="#2C1A0E"/>
20
+ <path d="M47.2121 48.8391C58.5615 48.8391 67.762 39.6386 67.762 28.2893C67.762 16.9399 58.5615 7.73944 47.2121 7.73944C35.8628 7.73944 26.6623 16.9399 26.6623 28.2893C26.6623 39.6386 35.8628 48.8391 47.2121 48.8391Z" fill="#FE671D"/>
21
+ <path d="M61.7434 102.153C69.7686 94.1282 69.7686 81.1167 61.7434 73.0915C53.7182 65.0663 40.7068 65.0663 32.6816 73.0915C24.6564 81.1167 24.6564 94.1282 32.6816 102.153C40.7068 110.179 53.7182 110.179 61.7434 102.153Z" fill="#593A0E"/>
22
+ <path d="M47.2129 168.878C58.5622 168.878 67.7627 159.677 67.7627 148.328C67.7627 136.978 58.5622 127.778 47.2129 127.778C35.8635 127.778 26.663 136.978 26.663 148.328C26.663 159.677 35.8635 168.878 47.2129 168.878Z" fill="#08411E"/>
23
+ <path d="M28.782 7.74045C28.782 8.40032 28.5863 9.04538 28.2197 9.59405C27.8531 10.1427 27.332 10.5703 26.7224 10.8229C26.1127 11.0754 25.4419 11.1415 24.7947 11.0127C24.1475 10.884 23.553 10.5662 23.0864 10.0996C22.6198 9.63303 22.302 9.03854 22.1733 8.39135C22.0446 7.74415 22.1106 7.07331 22.3632 6.46367C22.6157 5.85402 23.0433 5.33295 23.592 4.96634C24.1407 4.59973 24.7857 4.40405 25.4456 4.40405C26.3305 4.40405 27.1791 4.75557 27.8048 5.38126C28.4304 6.00696 28.782 6.85558 28.782 7.74045Z" fill="#2C1A0E"/>
24
+ <path d="M71.3801 7.74045C71.3801 8.40032 71.1844 9.04538 70.8178 9.59405C70.4512 10.1427 69.9301 10.5703 69.3205 10.8229C68.7108 11.0754 68.04 11.1415 67.3928 11.0127C66.7456 10.884 66.1511 10.5662 65.6845 10.0996C65.2179 9.63303 64.9001 9.03854 64.7714 8.39135C64.6426 7.74415 64.7087 7.07331 64.9612 6.46367C65.2138 5.85402 65.6414 5.33295 66.1901 4.96634C66.7387 4.59973 67.3838 4.40405 68.0437 4.40405C68.9285 4.40405 69.7772 4.75557 70.4029 5.38126C71.0286 6.00696 71.3801 6.85558 71.3801 7.74045Z" fill="#2C1A0E"/>
25
+ <path d="M28.782 47.8532C28.782 48.5131 28.5863 49.1582 28.2197 49.7068C27.8531 50.2555 27.332 50.6831 26.7224 50.9357C26.1127 51.1882 25.4419 51.2543 24.7947 51.1255C24.1475 50.9968 23.553 50.679 23.0864 50.2124C22.6198 49.7458 22.302 49.1513 22.1733 48.5041C22.0446 47.8569 22.1106 47.1861 22.3632 46.5765C22.6157 45.9668 23.0433 45.4457 23.592 45.0791C24.1407 44.7125 24.7857 44.5168 25.4456 44.5168C26.3304 44.5172 27.1788 44.8688 27.8044 45.4944C28.4301 46.12 28.7817 46.9685 28.782 47.8532Z" fill="#2C1A0E"/>
26
+ <path d="M71.3801 47.8532C71.3801 48.5131 71.1844 49.1582 70.8178 49.7068C70.4512 50.2555 69.9301 50.6831 69.3205 50.9357C68.7108 51.1882 68.04 51.2543 67.3928 51.1255C66.7456 50.9968 66.1511 50.679 65.6845 50.2124C65.2179 49.7458 64.9001 49.1513 64.7714 48.5041C64.6426 47.8569 64.7087 47.1861 64.9612 46.5765C65.2138 45.9668 65.6414 45.4457 66.1901 45.0791C66.7387 44.7125 67.3838 44.5168 68.0437 44.5168C68.9284 44.5172 69.7769 44.8688 70.4025 45.4944C71.0281 46.12 71.3798 46.9685 71.3801 47.8532Z" fill="#2C1A0E"/>
27
+ <path d="M66.2549 54.903H28.7819V59.3902H66.2549V54.903Z" fill="#2C1A0E"/>
28
+ <path d="M92.5538 71.0722H75.804V103.908H82.9918C83.7516 103.908 84.1473 103.281 84.3732 102.526L93.941 72.4536C93.9401 72.0865 93.7935 71.7348 93.5334 71.4758C93.2732 71.2167 92.9209 71.0716 92.5538 71.0722Z" fill="#2C1A0E"/>
29
+ <path d="M18.1383 71.0722H1.38256C1.01637 71.0731 0.665434 71.2189 0.406389 71.4778C0.147343 71.7366 0.00123596 72.0874 0 72.4536L9.56901 102.526C9.79495 103.281 10.1906 103.908 10.9504 103.908H18.1383V71.0722Z" fill="#2C1A0E"/>
30
+ </g>
31
+ <defs>
32
+ <linearGradient id="paint0_linear_161_2046" x1="47.5189" y1="174.388" x2="47.5189" y2="223.429" gradientUnits="userSpaceOnUse">
33
+ <stop stop-color="#2C1A0E"/>
34
+ <stop offset="0.51438" stop-color="#2C1A0E"/>
35
+ <stop offset="1" stop-color="#2C1A0E" stop-opacity="0"/>
36
+ </linearGradient>
37
+ <clipPath id="clip0_161_2046">
38
+ <rect width="93.9353" height="223.429" fill="white"/>
39
+ </clipPath>
40
+ </defs>
41
+ </svg>
@@ -0,0 +1,10 @@
1
+ <svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_148_1912)">
3
+ <path d="M17.4166 13.3377C17.4047 13.3084 17.386 13.2824 17.3621 13.2617C17.3382 13.241 17.3098 13.2262 17.2791 13.2185C16.3166 12.8885 12.3658 8.3235 12.3658 5.271V4.8035C12.3658 4.64766 12.4391 4.35433 12.1458 4.35433H11C10.9392 4.35433 10.8809 4.37847 10.8379 4.42145C10.7949 4.46443 10.7708 4.52272 10.7708 4.5835V7.10433C10.7708 7.28667 10.6984 7.46153 10.5694 7.59047C10.4405 7.7194 10.2656 7.79183 10.0833 7.79183C9.90097 7.79183 9.7261 7.7194 9.59717 7.59047C9.46824 7.46153 9.3958 7.28667 9.3958 7.10433V4.5835C9.3958 4.52272 9.37166 4.46443 9.32868 4.42145C9.2857 4.37847 9.22741 4.35433 9.16664 4.35433H6.58164C6.49009 4.35552 6.401 4.38409 6.32585 4.43638C6.25069 4.48866 6.19292 4.56225 6.15997 4.64766L-3.04934e-05 20.231C-0.0272424 20.3002 -0.0364703 20.3752 -0.0268522 20.4489C-0.017234 20.5227 0.0109163 20.5928 0.0549695 20.6527C0.0953774 20.7154 0.151072 20.7668 0.216817 20.8021C0.282562 20.8374 0.356198 20.8553 0.430803 20.8543H9.16664C9.22741 20.8543 9.2857 20.8302 9.32868 20.7872C9.37166 20.7442 9.3958 20.6859 9.3958 20.6252V18.1043C9.3958 17.922 9.46824 17.7471 9.59717 17.6182C9.7261 17.4893 9.90097 17.4168 10.0833 17.4168C10.2656 17.4168 10.4405 17.4893 10.5694 17.6182C10.6984 17.7471 10.7708 17.922 10.7708 18.1043V20.6252C10.7708 20.6859 10.7949 20.7442 10.8379 20.7872C10.8809 20.8302 10.9392 20.8543 11 20.8543H19.7083C19.7828 20.8545 19.8561 20.8362 19.9217 20.801C19.9873 20.7658 20.0431 20.7148 20.0841 20.6527C20.1282 20.5928 20.1563 20.5227 20.166 20.4489C20.1756 20.3752 20.1663 20.3002 20.1391 20.231L17.4166 13.3377ZM10.7616 14.4377C10.7616 14.62 10.6892 14.7949 10.5603 14.9238C10.4313 15.0527 10.2565 15.1252 10.0741 15.1252C9.8918 15.1252 9.71693 15.0527 9.588 14.9238C9.45907 14.7949 9.38664 14.62 9.38664 14.4377V10.771C9.38664 10.5887 9.45907 10.4138 9.588 10.2849C9.71693 10.1559 9.8918 10.0835 10.0741 10.0835C10.2565 10.0835 10.4313 10.1559 10.5603 10.2849C10.6892 10.4138 10.7616 10.5887 10.7616 10.771V14.4377ZM18.205 11.7977C19.195 10.7435 22 7.54433 22 5.271C22 4.17698 21.5654 3.12777 20.7918 2.35418C20.0182 1.58059 18.969 1.146 17.875 1.146C16.781 1.146 15.7317 1.58059 14.9582 2.35418C14.1846 3.12777 13.75 4.17698 13.75 5.271C13.75 7.54433 16.555 10.771 17.545 11.7977C17.587 11.8432 17.6381 11.8796 17.6949 11.9044C17.7516 11.9293 17.813 11.9421 17.875 11.9421C17.937 11.9421 17.9983 11.9293 18.0551 11.9044C18.1119 11.8796 18.1629 11.8432 18.205 11.7977ZM16.5 5.271C16.5 4.99905 16.5806 4.7332 16.7317 4.50709C16.8828 4.28097 17.0975 4.10473 17.3488 4.00066C17.6 3.89659 17.8765 3.86936 18.1432 3.92242C18.4099 3.97547 18.6549 4.10643 18.8472 4.29872C19.0395 4.49102 19.1705 4.73602 19.2235 5.00275C19.2766 5.26947 19.2494 5.54594 19.1453 5.79719C19.0412 6.04843 18.865 6.26318 18.6389 6.41427C18.4128 6.56535 18.1469 6.646 17.875 6.646C17.5103 6.646 17.1606 6.50113 16.9027 6.24327C16.6448 5.98541 16.5 5.63567 16.5 5.271Z" fill="white"/>
4
+ </g>
5
+ <defs>
6
+ <clipPath id="clip0_148_1912">
7
+ <rect width="22" height="22" fill="white"/>
8
+ </clipPath>
9
+ </defs>
10
+ </svg>
@@ -0,0 +1,10 @@
1
+ <svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_124_1058)">
3
+ <path d="M17.4166 13.3374C17.4047 13.3082 17.386 13.2821 17.3621 13.2614C17.3382 13.2407 17.3098 13.226 17.2791 13.2183C16.3166 12.8883 12.3658 8.32325 12.3658 5.27075V4.80325C12.3658 4.64742 12.4391 4.35409 12.1458 4.35409H11C10.9392 4.35409 10.8809 4.37823 10.8379 4.42121C10.7949 4.46418 10.7708 4.52247 10.7708 4.58325V7.10409C10.7708 7.28642 10.6984 7.46129 10.5694 7.59022C10.4405 7.71915 10.2656 7.79159 10.0833 7.79159C9.90097 7.79159 9.7261 7.71915 9.59717 7.59022C9.46824 7.46129 9.3958 7.28642 9.3958 7.10409V4.58325C9.3958 4.52247 9.37166 4.46418 9.32868 4.42121C9.2857 4.37823 9.22741 4.35409 9.16664 4.35409H6.58164C6.49009 4.35527 6.401 4.38385 6.32585 4.43613C6.25069 4.48841 6.19292 4.562 6.15997 4.64742L-3.04934e-05 20.2308C-0.0272424 20.3 -0.0364703 20.3749 -0.0268522 20.4487C-0.017234 20.5224 0.0109163 20.5925 0.0549695 20.6524C0.0953774 20.7151 0.151072 20.7666 0.216817 20.8018C0.282562 20.8371 0.356198 20.8551 0.430803 20.8541H9.16664C9.22741 20.8541 9.2857 20.8299 9.32868 20.787C9.37166 20.744 9.3958 20.6857 9.3958 20.6249V18.1041C9.3958 17.9217 9.46824 17.7469 9.59717 17.6179C9.7261 17.489 9.90097 17.4166 10.0833 17.4166C10.2656 17.4166 10.4405 17.489 10.5694 17.6179C10.6984 17.7469 10.7708 17.9217 10.7708 18.1041V20.6249C10.7708 20.6857 10.7949 20.744 10.8379 20.787C10.8809 20.8299 10.9392 20.8541 11 20.8541H19.7083C19.7828 20.8543 19.8561 20.8359 19.9217 20.8007C19.9873 20.7655 20.0431 20.7146 20.0841 20.6524C20.1282 20.5925 20.1563 20.5224 20.166 20.4487C20.1756 20.3749 20.1663 20.3 20.1391 20.2308L17.4166 13.3374ZM10.7616 14.4374C10.7616 14.6198 10.6892 14.7946 10.5603 14.9236C10.4313 15.0525 10.2565 15.1249 10.0741 15.1249C9.8918 15.1249 9.71693 15.0525 9.588 14.9236C9.45907 14.7946 9.38664 14.6198 9.38664 14.4374V10.7708C9.38664 10.5884 9.45907 10.4135 9.588 10.2846C9.71693 10.1557 9.8918 10.0833 10.0741 10.0833C10.2565 10.0833 10.4313 10.1557 10.5603 10.2846C10.6892 10.4135 10.7616 10.5884 10.7616 10.7708V14.4374ZM18.205 11.7974C19.195 10.7433 22 7.54409 22 5.27075C22 4.17673 21.5654 3.12752 20.7918 2.35394C20.0182 1.58035 18.969 1.14575 17.875 1.14575C16.781 1.14575 15.7317 1.58035 14.9582 2.35394C14.1846 3.12752 13.75 4.17673 13.75 5.27075C13.75 7.54409 16.555 10.7708 17.545 11.7974C17.587 11.843 17.6381 11.8793 17.6949 11.9042C17.7516 11.929 17.813 11.9419 17.875 11.9419C17.937 11.9419 17.9983 11.929 18.0551 11.9042C18.1119 11.8793 18.1629 11.843 18.205 11.7974ZM16.5 5.27075C16.5 4.9988 16.5806 4.73296 16.7317 4.50684C16.8828 4.28073 17.0975 4.10449 17.3488 4.00042C17.6 3.89635 17.8765 3.86912 18.1432 3.92217C18.4099 3.97523 18.6549 4.10618 18.8472 4.29848C19.0395 4.49078 19.1705 4.73578 19.2235 5.0025C19.2766 5.26923 19.2494 5.54569 19.1453 5.79694C19.0412 6.04819 18.865 6.26294 18.6389 6.41402C18.4128 6.56511 18.1469 6.64575 17.875 6.64575C17.5103 6.64575 17.1606 6.50089 16.9027 6.24302C16.6448 5.98516 16.5 5.63542 16.5 5.27075Z" fill="#C9C9C9"/>
4
+ </g>
5
+ <defs>
6
+ <clipPath id="clip0_124_1058">
7
+ <rect width="22" height="22" fill="white"/>
8
+ </clipPath>
9
+ </defs>
10
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M7.33337 4.66667L5.33337 8H8.00004L6.00004 11.3333M9.90404 4H10.6667C11.4026 4 12 4.59745 12 5.33333V10.6667C12 11.4026 11.4026 12 10.6667 12H8.71004M14.6667 9.33333V6.66667M3.42671 12H2.66671C1.93082 12 1.33337 11.4026 1.33337 10.6667V5.33333C1.33337 4.59745 1.93082 4 2.66671 4H4.62404" stroke="#C4521A" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
3
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M10 8.33335C11.841 8.33335 13.3333 6.84097 13.3333 5.00002C13.3333 3.15907 11.841 1.66669 10 1.66669C8.15906 1.66669 6.66667 3.15907 6.66667 5.00002C6.66667 6.84097 8.15906 8.33335 10 8.33335Z" stroke="#2C1A0E" stroke-width="1.25"/>
3
+ <path d="M16.6667 14.5834C16.6667 16.6542 16.6667 18.3334 10 18.3334C3.33334 18.3334 3.33334 16.6542 3.33334 14.5834C3.33334 12.5125 6.31834 10.8334 10 10.8334C13.6817 10.8334 16.6667 12.5125 16.6667 14.5834Z" stroke="#2C1A0E" stroke-width="1.25"/>
4
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M11.0002 3.11681C9.62135 3.11655 8.26658 3.47794 7.07108 4.16491C5.87559 4.85187 4.88117 5.84038 4.1871 7.03177C3.49303 8.22316 3.12358 9.57575 3.11562 10.9545C3.10767 12.3333 3.46148 13.6901 4.14176 14.8894C4.60156 14.2919 5.19262 13.808 5.86926 13.4754C6.54589 13.1427 7.28997 12.9701 8.04396 12.9708H13.9564C14.7104 12.9701 15.4545 13.1427 16.1311 13.4754C16.8077 13.808 17.3988 14.2919 17.8586 14.8894C18.5389 13.6901 18.8927 12.3333 18.8847 10.9545C18.8768 9.57575 18.5073 8.22316 17.8132 7.03177C17.1192 5.84038 16.1248 4.85187 14.9293 4.16491C13.7338 3.47794 12.379 3.11655 11.0002 3.11681ZM18.8272 16.9874C18.9507 16.8264 19.069 16.6615 19.182 16.4927C20.2744 14.8694 20.8568 12.9567 20.8542 11C20.8542 5.55765 16.4426 1.146 11.0002 1.146C5.55778 1.146 1.14613 5.55765 1.14613 11C1.14302 13.1647 1.85566 15.2697 3.17311 16.9874L3.16818 17.0051L3.518 17.4121C4.44219 18.4926 5.5897 19.3598 6.88141 19.9541C8.17313 20.5483 9.57833 20.8553 11.0002 20.8541C11.213 20.8541 11.4246 20.8475 11.6348 20.8344C13.4128 20.7223 15.1267 20.1278 16.5923 19.1148C17.2933 18.6313 17.9286 18.0589 18.4823 17.4121L18.8322 17.0051L18.8272 16.9874ZM11.0002 5.08761C10.2161 5.08761 9.46421 5.39907 8.90981 5.95347C8.35542 6.50787 8.04396 7.25979 8.04396 8.04383C8.04396 8.82786 8.35542 9.57979 8.90981 10.1342C9.46421 10.6886 10.2161 11 11.0002 11C11.7842 11 12.5361 10.6886 13.0905 10.1342C13.6449 9.57979 13.9564 8.82786 13.9564 8.04383C13.9564 7.25979 13.6449 6.50787 13.0905 5.95347C12.5361 5.39907 11.7842 5.08761 11.0002 5.08761Z" fill="white"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M50.0003 10C43.004 9.99876 36.1298 11.8325 30.0638 15.3182C23.9977 18.8039 18.952 23.8197 15.4302 29.8649C11.9084 35.9101 10.0338 42.7733 9.99343 49.7694C9.95306 56.7655 11.7483 63.6499 15.2001 69.7353C17.5332 66.7032 20.5323 64.2482 23.9656 62.5602C27.3989 60.8721 31.1744 59.9963 35.0002 60.0003H65.0003C68.8262 59.9963 72.6017 60.8721 76.035 62.5602C79.4682 64.2482 82.4673 66.7032 84.8004 69.7353C88.2522 63.6499 90.0475 56.7655 90.0071 49.7694C89.9667 42.7733 88.0921 35.9101 84.5703 29.8649C81.0486 23.8197 76.0028 18.8039 69.9368 15.3182C63.8707 11.8325 56.9965 9.99876 50.0003 10ZM89.7154 80.3804C90.3421 79.5637 90.9421 78.727 91.5154 77.8703C97.0586 69.6338 100.013 59.9284 100 50.0002C100 22.3851 77.6154 0 50.0003 0C22.3851 0 5.12775e-05 22.3851 5.12775e-05 50.0002C-0.0157054 60.9841 3.60027 71.665 10.2851 80.3804L10.2601 80.4704L12.0351 82.5354C16.7246 88.0179 22.5471 92.4185 29.1013 95.4336C35.6556 98.4488 42.7857 100.007 50.0003 100C51.0803 100 52.1536 99.9671 53.2203 99.9004C62.2423 99.3315 70.9388 96.3152 78.3754 91.1754C81.932 88.7218 85.1555 85.8176 87.9654 82.5354L89.7404 80.4704L89.7154 80.3804ZM50.0003 20.0001C46.022 20.0001 42.2067 21.5804 39.3936 24.3935C36.5806 27.2066 35.0002 31.0219 35.0002 35.0002C35.0002 38.9784 36.5806 42.7937 39.3936 45.6068C42.2067 48.4199 46.022 50.0002 50.0003 50.0002C53.9785 50.0002 57.7939 48.4199 60.6069 45.6068C63.42 42.7937 65.0003 38.9784 65.0003 35.0002C65.0003 31.0219 63.42 27.2066 60.6069 24.3935C57.7939 21.5804 53.9785 20.0001 50.0003 20.0001Z" fill="white"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M11.0002 3.11681C9.62135 3.11655 8.26658 3.47794 7.07108 4.16491C5.87559 4.85187 4.88117 5.84038 4.1871 7.03177C3.49303 8.22316 3.12358 9.57575 3.11562 10.9545C3.10767 12.3333 3.46148 13.6901 4.14176 14.8894C4.60156 14.2919 5.19262 13.808 5.86926 13.4754C6.54589 13.1427 7.28997 12.9701 8.04396 12.9708H13.9564C14.7104 12.9701 15.4545 13.1427 16.1311 13.4754C16.8077 13.808 17.3988 14.2919 17.8586 14.8894C18.5389 13.6901 18.8927 12.3333 18.8847 10.9545C18.8768 9.57575 18.5073 8.22316 17.8132 7.03177C17.1192 5.84038 16.1248 4.85187 14.9293 4.16491C13.7338 3.47794 12.379 3.11655 11.0002 3.11681ZM18.8272 16.9874C18.9507 16.8264 19.069 16.6615 19.182 16.4927C20.2744 14.8694 20.8568 12.9567 20.8542 11C20.8542 5.55765 16.4426 1.146 11.0002 1.146C5.55778 1.146 1.14613 5.55765 1.14613 11C1.14302 13.1647 1.85566 15.2697 3.17311 16.9874L3.16818 17.0051L3.518 17.4121C4.44219 18.4926 5.5897 19.3598 6.88141 19.9541C8.17313 20.5483 9.57833 20.8553 11.0002 20.8541C11.213 20.8541 11.4246 20.8475 11.6348 20.8344C13.4128 20.7223 15.1267 20.1278 16.5923 19.1148C17.2933 18.6313 17.9286 18.0589 18.4823 17.4121L18.8322 17.0051L18.8272 16.9874ZM11.0002 5.08761C10.2161 5.08761 9.46421 5.39907 8.90981 5.95347C8.35542 6.50787 8.04396 7.25979 8.04396 8.04383C8.04396 8.82786 8.35542 9.57979 8.90981 10.1342C9.46421 10.6886 10.2161 11 11.0002 11C11.7842 11 12.5361 10.6886 13.0905 10.1342C13.6449 9.57979 13.9564 8.82786 13.9564 8.04383C13.9564 7.25979 13.6449 6.50787 13.0905 5.95347C12.5361 5.39907 11.7842 5.08761 11.0002 5.08761Z" fill="#C9C9C9"/>
3
+ </svg>
@@ -0,0 +1,170 @@
1
+ import React from "react";
2
+ import {
3
+ ImageBackground,
4
+ ImageSourcePropType,
5
+ StyleProp,
6
+ StyleSheet,
7
+ TouchableOpacity,
8
+ View,
9
+ ViewStyle,
10
+ } from "react-native";
11
+ import { KeyboardAwareScrollView } from "react-native-keyboard-controller";
12
+ import { SafeAreaView } from "react-native-safe-area-context";
13
+ import { moderateScale } from "react-native-size-matters";
14
+ import { useNavigation } from "@react-navigation/native";
15
+ import { SPACING, THEME } from "../../theme";
16
+ import RNText from "../Text/RNText";
17
+ import BackIcon from "../../assets/svg/back.svg";
18
+
19
+ const AUTH_BG: ImageSourcePropType = require("../../assets/image/BackGroundAuth.png");
20
+
21
+ interface AuthLayoutProps {
22
+ children: React.ReactNode;
23
+ title?: string;
24
+ subtitle?: string;
25
+ rightLabel?: string;
26
+ rightColor?: string;
27
+ onRightPress?: () => void;
28
+ showBack?: boolean;
29
+ scrollable?: boolean;
30
+ contentStyle?: StyleProp<ViewStyle>;
31
+ withBackground?: boolean;
32
+ backgroundSource?: ImageSourcePropType;
33
+ }
34
+
35
+ const AuthLayout: React.FC<AuthLayoutProps> = ({
36
+ children,
37
+ title,
38
+ subtitle,
39
+ rightLabel,
40
+ rightColor,
41
+ onRightPress,
42
+ showBack,
43
+ scrollable = true,
44
+ contentStyle,
45
+ withBackground = true,
46
+ backgroundSource,
47
+ }) => {
48
+ const nav = useNavigation();
49
+
50
+ const inner = (
51
+ <View style={[styles.body, contentStyle]}>
52
+ {title ? (
53
+ <View style={styles.titleBlock}>
54
+ <RNText font="bold" size={24} color={THEME.text}>
55
+ {title}
56
+ </RNText>
57
+ {subtitle ? (
58
+ <RNText
59
+ size={13}
60
+ color={THEME.textSecondary}
61
+ style={styles.subtitle}
62
+ >
63
+ {subtitle}
64
+ </RNText>
65
+ ) : null}
66
+ </View>
67
+ ) : null}
68
+ {children}
69
+ </View>
70
+ );
71
+
72
+ const content = (
73
+ <SafeAreaView edges={["top", "bottom"]} style={styles.flex}>
74
+ {(showBack || rightLabel) && (
75
+ <View style={styles.topBar}>
76
+ {showBack ? (
77
+ <TouchableOpacity
78
+ onPress={() => nav.canGoBack() && nav.goBack()}
79
+ hitSlop={10}
80
+ style={styles.backBtn}
81
+ >
82
+ <BackIcon
83
+ width={moderateScale(22)}
84
+ height={moderateScale(22)}
85
+ color={THEME.text}
86
+ />
87
+ </TouchableOpacity>
88
+ ) : (
89
+ <View style={styles.backBtn} />
90
+ )}
91
+ <View style={styles.topBarSpacer} />
92
+ {rightLabel ? (
93
+ <TouchableOpacity onPress={onRightPress} hitSlop={10}>
94
+ <RNText font="medium" size={14} color={rightColor ?? THEME.primary}>
95
+ {rightLabel}
96
+ </RNText>
97
+ </TouchableOpacity>
98
+ ) : null}
99
+ </View>
100
+ )}
101
+
102
+ {scrollable ? (
103
+ <KeyboardAwareScrollView
104
+ style={styles.flex}
105
+ contentContainerStyle={styles.scrollContent}
106
+ keyboardShouldPersistTaps="handled"
107
+ showsVerticalScrollIndicator={false}
108
+ bottomOffset={moderateScale(35)}
109
+ >
110
+ {inner}
111
+ </KeyboardAwareScrollView>
112
+ ) : (
113
+ inner
114
+ )}
115
+ </SafeAreaView>
116
+ );
117
+
118
+ if (withBackground) {
119
+ return (
120
+ <ImageBackground
121
+ source={backgroundSource ?? AUTH_BG}
122
+ style={styles.flex}
123
+ resizeMode="cover"
124
+ >
125
+ {content}
126
+ </ImageBackground>
127
+ );
128
+ }
129
+ return (
130
+ <View style={[styles.flex, styles.plainBg]}>
131
+ {content}
132
+ </View>
133
+ );
134
+ };
135
+
136
+ export default AuthLayout;
137
+
138
+ const styles = StyleSheet.create({
139
+ flex: { flex: 1 },
140
+ topBarSpacer: { flex: 1 },
141
+ plainBg: { backgroundColor: THEME.background },
142
+ topBar: {
143
+ flexDirection: "row",
144
+ alignItems: "center",
145
+ paddingHorizontal: SPACING.hPadding,
146
+ paddingTop: moderateScale(4),
147
+ },
148
+ backBtn: {
149
+ width: moderateScale(40),
150
+ height: moderateScale(40),
151
+ alignItems: "flex-start",
152
+ justifyContent: "center",
153
+ },
154
+ scrollContent: {
155
+ flexGrow: 1,
156
+ },
157
+ body: {
158
+ paddingHorizontal: SPACING.hPadding,
159
+ paddingTop: moderateScale(8),
160
+ paddingBottom: moderateScale(24),
161
+ flexGrow: 1,
162
+ },
163
+ titleBlock: {
164
+ marginBottom: moderateScale(20),
165
+ },
166
+ subtitle: {
167
+ marginTop: moderateScale(6),
168
+ lineHeight: moderateScale(20),
169
+ },
170
+ });
@@ -0,0 +1 @@
1
+ export { default as AuthLayout } from "./AuthLayout";
@@ -0,0 +1,73 @@
1
+ import React from "react";
2
+ import { StyleProp, StyleSheet, View, ViewStyle } from "react-native";
3
+ import { Modal } from "react-native-reanimated-modal";
4
+ import { moderateScale } from "react-native-size-matters";
5
+ import { SPACING, THEME } from "../../theme";
6
+
7
+ interface BottomSheetProps {
8
+ visible: boolean;
9
+ onClose: () => void;
10
+ children?: React.ReactNode;
11
+ contentStyle?: StyleProp<ViewStyle>;
12
+ dismissOnBackdropPress?: boolean;
13
+ showHandle?: boolean;
14
+ animationInTiming?: number;
15
+ backdropOpacity?: number;
16
+ }
17
+
18
+ const BottomSheet: React.FC<BottomSheetProps> = ({
19
+ visible,
20
+ onClose,
21
+ children,
22
+ contentStyle,
23
+ dismissOnBackdropPress = true,
24
+ showHandle = true,
25
+ animationInTiming = 280,
26
+ backdropOpacity = 0.5,
27
+ }) => (
28
+ <Modal
29
+ visible={visible}
30
+ statusBarTranslucent
31
+ style={styles.modal}
32
+ animation={{ type: "slide", duration: animationInTiming }}
33
+ backdrop={{
34
+ enabled: true,
35
+ color: "#000000",
36
+ opacity: backdropOpacity,
37
+ }}
38
+ swipe={{ directions: ["down"], threshold: 150 }}
39
+ onBackdropPress={dismissOnBackdropPress ? onClose : false}
40
+ onHide={onClose}
41
+ >
42
+ <View style={[styles.sheet, contentStyle]}>
43
+ {showHandle && <View style={styles.handle} />}
44
+ {children}
45
+ </View>
46
+ </Modal>
47
+ );
48
+
49
+ export default BottomSheet;
50
+
51
+ const styles = StyleSheet.create({
52
+ modal: {
53
+ justifyContent: "flex-end",
54
+ margin: 0,
55
+ backgroundColor: "rgba(0,0,0,0.5)",
56
+ },
57
+ sheet: {
58
+ backgroundColor: THEME.surface,
59
+ paddingHorizontal: SPACING.xl,
60
+ paddingTop: SPACING.lg,
61
+ paddingBottom: SPACING.xxxl,
62
+ borderTopLeftRadius: SPACING.radiusXxl,
63
+ borderTopRightRadius: SPACING.radiusXxl,
64
+ },
65
+ handle: {
66
+ alignSelf: "center",
67
+ width: moderateScale(40),
68
+ height: moderateScale(4),
69
+ backgroundColor: THEME.border,
70
+ borderRadius: moderateScale(2),
71
+ marginBottom: SPACING.lg,
72
+ },
73
+ });
@@ -0,0 +1,100 @@
1
+ import React from "react";
2
+ import { StyleSheet, View } from "react-native";
3
+ import { moderateScale } from "react-native-size-matters";
4
+ import { SPACING, THEME } from "../../theme";
5
+ import { RNButton } from "../Button";
6
+ import RNText from "../Text/RNText";
7
+ import BottomSheet from "./BottomSheet";
8
+
9
+ interface BottomSheetAlertProps {
10
+ visible: boolean;
11
+ onClose: () => void;
12
+ title: string;
13
+ description?: string;
14
+ confirmText?: string;
15
+ cancelText?: string;
16
+ onConfirm?: () => void;
17
+ onCancel?: () => void;
18
+ loading?: boolean;
19
+ destructive?: boolean;
20
+ }
21
+
22
+ const BottomSheetAlert: React.FC<BottomSheetAlertProps> = ({
23
+ visible,
24
+ onClose,
25
+ title,
26
+ description,
27
+ confirmText = "Yes",
28
+ cancelText = "No",
29
+ onConfirm,
30
+ onCancel,
31
+ loading,
32
+ destructive,
33
+ }) => {
34
+ const handleCancel = () => {
35
+ onCancel?.();
36
+ onClose();
37
+ };
38
+
39
+ return (
40
+ <BottomSheet visible={visible} onClose={onClose} showHandle>
41
+ <RNText
42
+ font="semibold"
43
+ size={20}
44
+ color={THEME.text}
45
+ textAlign="center"
46
+ style={styles.title}
47
+ >
48
+ {title}
49
+ </RNText>
50
+
51
+ {description ? (
52
+ <RNText
53
+ size={13}
54
+ color={THEME.textSecondary}
55
+ textAlign="center"
56
+ style={styles.description}
57
+ >
58
+ {description}
59
+ </RNText>
60
+ ) : null}
61
+
62
+ <View style={styles.btnRow}>
63
+ <RNButton
64
+ title={cancelText}
65
+ variant="outline"
66
+ containerStyle={styles.btn}
67
+ onPress={handleCancel}
68
+ disabled={loading}
69
+ />
70
+ <RNButton
71
+ title={confirmText}
72
+ containerStyle={styles.btn}
73
+ variant={destructive ? "primary" : "primary"}
74
+ onPress={onConfirm}
75
+ loading={loading}
76
+ />
77
+ </View>
78
+ </BottomSheet>
79
+ );
80
+ };
81
+
82
+ export default BottomSheetAlert;
83
+
84
+ const styles = StyleSheet.create({
85
+ title: { marginTop: moderateScale(6) },
86
+ description: {
87
+ marginTop: moderateScale(8),
88
+ paddingHorizontal: moderateScale(8),
89
+ lineHeight: moderateScale(20),
90
+ },
91
+ btnRow: {
92
+ flexDirection: "row",
93
+ gap: moderateScale(10),
94
+ marginTop: moderateScale(20),
95
+ },
96
+ btn: {
97
+ width: "50%",
98
+ borderRadius: SPACING.radiusPill,
99
+ },
100
+ });