@umituz/react-native-settings 5.3.33 → 5.3.35

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 (249) hide show
  1. package/package.json +1 -1
  2. package/src/domains/localization/presentation/providers/LocalizationManager.tsx +24 -1
  3. package/LICENSE +0 -21
  4. package/README.md +0 -355
  5. package/dist/account.d.ts +0 -27
  6. package/dist/application/ports/ISettingsRepository.d.ts +0 -45
  7. package/dist/domains/about/domain/entities/AppInfo.d.ts +0 -76
  8. package/dist/domains/about/domain/repositories/IAboutRepository.d.ts +0 -19
  9. package/dist/domains/about/index.d.ts +0 -10
  10. package/dist/domains/about/infrastructure/repositories/AboutRepository.d.ts +0 -18
  11. package/dist/domains/about/presentation/components/AboutContent.d.ts +0 -14
  12. package/dist/domains/about/presentation/components/AboutHeader.d.ts +0 -21
  13. package/dist/domains/about/presentation/components/AboutSection.d.ts +0 -14
  14. package/dist/domains/about/presentation/components/AboutSettingItem.d.ts +0 -39
  15. package/dist/domains/about/presentation/hooks/useAboutInfo.d.ts +0 -2
  16. package/dist/domains/about/presentation/hooks/useAboutInfo.types.d.ts +0 -29
  17. package/dist/domains/about/presentation/screens/AboutScreen.d.ts +0 -21
  18. package/dist/domains/about/presentation/screens/AboutScreenContent.d.ts +0 -15
  19. package/dist/domains/about/utils/AppInfoFactory.d.ts +0 -9
  20. package/dist/domains/appearance/data/colorPalettes.d.ts +0 -25
  21. package/dist/domains/appearance/hooks/useAppearance.d.ts +0 -11
  22. package/dist/domains/appearance/hooks/useAppearanceActions.d.ts +0 -9
  23. package/dist/domains/appearance/index.d.ts +0 -9
  24. package/dist/domains/appearance/presentation/components/AppearanceHeader.d.ts +0 -18
  25. package/dist/domains/appearance/presentation/components/AppearancePreview.d.ts +0 -21
  26. package/dist/domains/appearance/presentation/components/AppearanceSection.d.ts +0 -16
  27. package/dist/domains/appearance/presentation/components/ColorPicker.d.ts +0 -15
  28. package/dist/domains/appearance/presentation/components/CustomColorsSection.d.ts +0 -25
  29. package/dist/domains/appearance/presentation/components/ThemeModeSection.d.ts +0 -24
  30. package/dist/domains/appearance/presentation/components/ThemeOption.d.ts +0 -20
  31. package/dist/domains/appearance/presentation/components/index.d.ts +0 -6
  32. package/dist/domains/appearance/presentation/screens/AppearanceScreen.d.ts +0 -16
  33. package/dist/domains/appearance/types/index.d.ts +0 -48
  34. package/dist/domains/cloud-sync/index.d.ts +0 -6
  35. package/dist/domains/cloud-sync/presentation/components/CloudSyncSetting.d.ts +0 -14
  36. package/dist/domains/dev/index.d.ts +0 -14
  37. package/dist/domains/dev/presentation/components/DevSettingsSection.d.ts +0 -34
  38. package/dist/domains/dev/presentation/components/EnvViewerSetting.d.ts +0 -20
  39. package/dist/domains/dev/presentation/components/StorageClearSetting.d.ts +0 -13
  40. package/dist/domains/dev/presentation/screens/EnvViewerScreen.d.ts +0 -12
  41. package/dist/domains/dev/types.d.ts +0 -22
  42. package/dist/domains/disclaimer/index.d.ts +0 -17
  43. package/dist/domains/disclaimer/presentation/components/DisclaimerCard.d.ts +0 -14
  44. package/dist/domains/disclaimer/presentation/components/DisclaimerModal.d.ts +0 -12
  45. package/dist/domains/disclaimer/presentation/components/DisclaimerSetting.d.ts +0 -34
  46. package/dist/domains/disclaimer/presentation/screens/DisclaimerScreen.d.ts +0 -27
  47. package/dist/domains/faqs/domain/entities/FAQEntity.d.ts +0 -21
  48. package/dist/domains/faqs/domain/services/FAQSearchService.d.ts +0 -12
  49. package/dist/domains/faqs/index.d.ts +0 -8
  50. package/dist/domains/faqs/presentation/components/FAQCategory.d.ts +0 -21
  51. package/dist/domains/faqs/presentation/components/FAQEmptyState.d.ts +0 -20
  52. package/dist/domains/faqs/presentation/components/FAQItem.d.ts +0 -24
  53. package/dist/domains/faqs/presentation/components/FAQSearchBar.d.ts +0 -18
  54. package/dist/domains/faqs/presentation/components/index.d.ts +0 -11
  55. package/dist/domains/faqs/presentation/hooks/index.d.ts +0 -5
  56. package/dist/domains/faqs/presentation/hooks/useFAQExpansion.d.ts +0 -12
  57. package/dist/domains/faqs/presentation/hooks/useFAQSearch.d.ts +0 -12
  58. package/dist/domains/faqs/presentation/screens/FAQScreen.d.ts +0 -33
  59. package/dist/domains/feedback/domain/entities/FeedbackEntity.d.ts +0 -25
  60. package/dist/domains/feedback/domain/repositories/IFeedbackRepository.d.ts +0 -20
  61. package/dist/domains/feedback/index.d.ts +0 -10
  62. package/dist/domains/feedback/presentation/components/FeedbackForm.d.ts +0 -7
  63. package/dist/domains/feedback/presentation/components/FeedbackForm.styles.d.ts +0 -48
  64. package/dist/domains/feedback/presentation/components/FeedbackFormProps.d.ts +0 -26
  65. package/dist/domains/feedback/presentation/components/FeedbackModal.d.ts +0 -23
  66. package/dist/domains/feedback/presentation/components/SupportSection.d.ts +0 -62
  67. package/dist/domains/feedback/presentation/hooks/useFeedbackForm.d.ts +0 -19
  68. package/dist/domains/gamification/components/AchievementCard.d.ts +0 -23
  69. package/dist/domains/gamification/components/AchievementItem.d.ts +0 -7
  70. package/dist/domains/gamification/components/AchievementToast.d.ts +0 -21
  71. package/dist/domains/gamification/components/GamificationScreen/AchievementsList.d.ts +0 -17
  72. package/dist/domains/gamification/components/GamificationScreen/GamificationScreen.d.ts +0 -11
  73. package/dist/domains/gamification/components/GamificationScreen/GamificationScreenWithConfig.d.ts +0 -11
  74. package/dist/domains/gamification/components/GamificationScreen/StatsGrid.d.ts +0 -16
  75. package/dist/domains/gamification/components/GamificationScreen/index.d.ts +0 -17
  76. package/dist/domains/gamification/components/GamificationScreen/styles.d.ts +0 -40
  77. package/dist/domains/gamification/components/GamificationScreen/types.d.ts +0 -42
  78. package/dist/domains/gamification/components/LevelProgress.d.ts +0 -27
  79. package/dist/domains/gamification/components/PointsBadge.d.ts +0 -16
  80. package/dist/domains/gamification/components/StatsCard.d.ts +0 -20
  81. package/dist/domains/gamification/components/StreakDisplay.d.ts +0 -21
  82. package/dist/domains/gamification/components/index.d.ts +0 -14
  83. package/dist/domains/gamification/components/styles/achievementItemStyles.d.ts +0 -71
  84. package/dist/domains/gamification/components/types/AchievementItemProps.d.ts +0 -22
  85. package/dist/domains/gamification/hooks/useGamification.d.ts +0 -22
  86. package/dist/domains/gamification/index.d.ts +0 -13
  87. package/dist/domains/gamification/store/gamificationStore.d.ts +0 -6
  88. package/dist/domains/gamification/types/index.d.ts +0 -99
  89. package/dist/domains/gamification/utils/calculations.d.ts +0 -10
  90. package/dist/domains/legal/domain/entities/LegalConfig.d.ts +0 -28
  91. package/dist/domains/legal/domain/services/ContentValidationService.d.ts +0 -19
  92. package/dist/domains/legal/domain/services/StyleCacheService.d.ts +0 -38
  93. package/dist/domains/legal/domain/services/UrlHandlerService.d.ts +0 -32
  94. package/dist/domains/legal/index.d.ts +0 -8
  95. package/dist/domains/legal/presentation/components/LegalDocumentsList.d.ts +0 -21
  96. package/dist/domains/legal/presentation/components/LegalItem.d.ts +0 -35
  97. package/dist/domains/legal/presentation/components/LegalScreenHeader.d.ts +0 -12
  98. package/dist/domains/legal/presentation/components/LegalSection.d.ts +0 -14
  99. package/dist/domains/legal/presentation/screens/LegalContentScreen.d.ts +0 -19
  100. package/dist/domains/legal/presentation/screens/LegalScreen.d.ts +0 -24
  101. package/dist/domains/legal/presentation/screens/PrivacyPolicyScreen.d.ts +0 -15
  102. package/dist/domains/legal/presentation/screens/TermsOfServiceScreen.d.ts +0 -15
  103. package/dist/domains/localization/domain/repositories/ILocalizationRepository.d.ts +0 -16
  104. package/dist/domains/localization/index.d.ts +0 -16
  105. package/dist/domains/localization/infrastructure/components/LanguageSwitcher.d.ts +0 -19
  106. package/dist/domains/localization/infrastructure/components/LanguageSwitcher.styles.d.ts +0 -37
  107. package/dist/domains/localization/infrastructure/components/useLanguageNavigation.d.ts +0 -4
  108. package/dist/domains/localization/infrastructure/components/useLanguageSwitcher.d.ts +0 -13
  109. package/dist/domains/localization/infrastructure/config/DeviceLocale.d.ts +0 -10
  110. package/dist/domains/localization/infrastructure/config/I18nInitializer.d.ts +0 -14
  111. package/dist/domains/localization/infrastructure/config/LanguageQuery.d.ts +0 -10
  112. package/dist/domains/localization/infrastructure/config/LocaleMapping.d.ts +0 -5
  113. package/dist/domains/localization/infrastructure/config/NamespaceResolver.d.ts +0 -11
  114. package/dist/domains/localization/infrastructure/config/ResourceBuilder.d.ts +0 -10
  115. package/dist/domains/localization/infrastructure/config/TranslationLoader.d.ts +0 -16
  116. package/dist/domains/localization/infrastructure/config/constants/defaultLanguages.d.ts +0 -6
  117. package/dist/domains/localization/infrastructure/config/i18n.d.ts +0 -7
  118. package/dist/domains/localization/infrastructure/config/languages.d.ts +0 -7
  119. package/dist/domains/localization/infrastructure/hooks/useLanguageSelection.d.ts +0 -11
  120. package/dist/domains/localization/infrastructure/hooks/useLocalization.d.ts +0 -12
  121. package/dist/domains/localization/infrastructure/hooks/useTranslation.d.ts +0 -23
  122. package/dist/domains/localization/infrastructure/repository/LanguageRepository.d.ts +0 -18
  123. package/dist/domains/localization/infrastructure/storage/LanguageInitializer.d.ts +0 -20
  124. package/dist/domains/localization/infrastructure/storage/LanguageSwitcher.d.ts +0 -16
  125. package/dist/domains/localization/infrastructure/storage/LocalizationStore.d.ts +0 -6
  126. package/dist/domains/localization/infrastructure/storage/localizationStoreUtils.d.ts +0 -44
  127. package/dist/domains/localization/infrastructure/storage/types/Language.d.ts +0 -12
  128. package/dist/domains/localization/infrastructure/storage/types/LocalizationState.d.ts +0 -22
  129. package/dist/domains/localization/presentation/components/LanguageItem.d.ts +0 -23
  130. package/dist/domains/localization/presentation/components/LanguageItem.styles.d.ts +0 -30
  131. package/dist/domains/localization/presentation/components/LanguageSection.d.ts +0 -15
  132. package/dist/domains/localization/presentation/providers/LocalizationManager.d.ts +0 -12
  133. package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.d.ts +0 -7
  134. package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.styles.d.ts +0 -7
  135. package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.types.d.ts +0 -26
  136. package/dist/domains/notifications/index.d.ts +0 -46
  137. package/dist/domains/notifications/infrastructure/config/notificationsConfig.d.ts +0 -19
  138. package/dist/domains/notifications/infrastructure/hooks/useNotificationSettings.d.ts +0 -8
  139. package/dist/domains/notifications/infrastructure/services/NotificationBadgeManager.d.ts +0 -4
  140. package/dist/domains/notifications/infrastructure/services/NotificationManager.d.ts +0 -23
  141. package/dist/domains/notifications/infrastructure/services/NotificationPermissions.d.ts +0 -5
  142. package/dist/domains/notifications/infrastructure/services/NotificationScheduler.d.ts +0 -7
  143. package/dist/domains/notifications/infrastructure/services/NotificationService.d.ts +0 -31
  144. package/dist/domains/notifications/infrastructure/services/types.d.ts +0 -147
  145. package/dist/domains/notifications/infrastructure/storage/UnifiedNotificationStore.d.ts +0 -42
  146. package/dist/domains/notifications/infrastructure/utils/idGenerator.d.ts +0 -6
  147. package/dist/domains/notifications/infrastructure/utils/triggerBuilder.d.ts +0 -6
  148. package/dist/domains/notifications/presentation/components/NotificationsSection.d.ts +0 -16
  149. package/dist/domains/notifications/presentation/components/RemindersNavRow.d.ts +0 -12
  150. package/dist/domains/notifications/presentation/components/RemindersNavRow.styles.d.ts +0 -34
  151. package/dist/domains/notifications/presentation/components/SettingRow.d.ts +0 -14
  152. package/dist/domains/notifications/presentation/hooks/useNotificationSettingsUI.d.ts +0 -13
  153. package/dist/domains/notifications/presentation/hooks/useTimePicker.d.ts +0 -21
  154. package/dist/domains/notifications/presentation/screens/NotificationSettingsScreen.d.ts +0 -12
  155. package/dist/domains/notifications/presentation/screens/NotificationSettingsScreen.styles.d.ts +0 -26
  156. package/dist/domains/notifications/presentation/screens/NotificationsScreen.d.ts +0 -18
  157. package/dist/domains/notifications/quietHours/infrastructure/hooks/useQuietHoursActions.d.ts +0 -13
  158. package/dist/domains/notifications/quietHours/presentation/components/QuietHoursCard.d.ts +0 -14
  159. package/dist/domains/notifications/reminders/infrastructure/config/reminderPresets.d.ts +0 -24
  160. package/dist/domains/notifications/reminders/infrastructure/hooks/useReminderActions.d.ts +0 -11
  161. package/dist/domains/notifications/reminders/presentation/components/FormButton.d.ts +0 -12
  162. package/dist/domains/notifications/reminders/presentation/components/FrequencySelector.d.ts +0 -14
  163. package/dist/domains/notifications/reminders/presentation/components/ReminderForm.constants.d.ts +0 -28
  164. package/dist/domains/notifications/reminders/presentation/components/ReminderForm.d.ts +0 -7
  165. package/dist/domains/notifications/reminders/presentation/components/ReminderForm.styles.d.ts +0 -31
  166. package/dist/domains/notifications/reminders/presentation/components/ReminderItem.d.ts +0 -20
  167. package/dist/domains/notifications/reminders/presentation/components/TimePresetSelector.d.ts +0 -20
  168. package/dist/domains/notifications/reminders/presentation/components/WeekdaySelector.d.ts +0 -11
  169. package/dist/domains/notifications/reminders/presentation/screens/ReminderListScreen.d.ts +0 -13
  170. package/dist/domains/rating/application/services/RatingService.d.ts +0 -33
  171. package/dist/domains/rating/domain/entities/Rating.d.ts +0 -15
  172. package/dist/domains/rating/domain/entities/RatingConfig.d.ts +0 -120
  173. package/dist/domains/rating/index.d.ts +0 -12
  174. package/dist/domains/rating/infrastructure/storage/RatingStorage.d.ts +0 -50
  175. package/dist/domains/rating/presentation/components/RatingPromptModal.d.ts +0 -16
  176. package/dist/domains/rating/presentation/components/StarRating.d.ts +0 -13
  177. package/dist/domains/rating/presentation/hooks/useAppRating.d.ts +0 -9
  178. package/dist/domains/video-tutorials/index.d.ts +0 -18
  179. package/dist/domains/video-tutorials/presentation/components/VideoTutorialCard.d.ts +0 -13
  180. package/dist/domains/video-tutorials/presentation/components/VideoTutorialSection.d.ts +0 -25
  181. package/dist/domains/video-tutorials/presentation/screens/VideoTutorialsScreen.d.ts +0 -25
  182. package/dist/domains/video-tutorials/types/index.d.ts +0 -26
  183. package/dist/index.d.ts +0 -41
  184. package/dist/infrastructure/repositories/SettingsRepository.d.ts +0 -12
  185. package/dist/infrastructure/services/SettingsService.d.ts +0 -14
  186. package/dist/infrastructure/utils/configFactory.d.ts +0 -39
  187. package/dist/infrastructure/utils/constants/textLimits.d.ts +0 -16
  188. package/dist/infrastructure/utils/sanitizers.d.ts +0 -13
  189. package/dist/infrastructure/utils/validation/core.d.ts +0 -8
  190. package/dist/infrastructure/utils/validation/formValidators.d.ts +0 -26
  191. package/dist/infrastructure/utils/validation/index.d.ts +0 -5
  192. package/dist/infrastructure/utils/validators.d.ts +0 -21
  193. package/dist/presentation/components/SettingsFooter.d.ts +0 -7
  194. package/dist/presentation/components/SettingsItemCard.d.ts +0 -22
  195. package/dist/presentation/components/SettingsNavigationItem.d.ts +0 -67
  196. package/dist/presentation/components/SettingsSection.d.ts +0 -6
  197. package/dist/presentation/components/settings/SettingsItemCardContent.d.ts +0 -12
  198. package/dist/presentation/components/settings/SettingsItemCardRightElement.d.ts +0 -11
  199. package/dist/presentation/components/settings/SettingsItemCardSection.d.ts +0 -5
  200. package/dist/presentation/hooks/mutations/useSettingsMutations.d.ts +0 -20
  201. package/dist/presentation/hooks/queries/useSettingsQuery.d.ts +0 -7
  202. package/dist/presentation/hooks/useSettings.d.ts +0 -26
  203. package/dist/presentation/hooks/useSettingsScreenConfig.d.ts +0 -41
  204. package/dist/presentation/navigation/SettingsStackNavigator.d.ts +0 -9
  205. package/dist/presentation/navigation/hooks/index.d.ts +0 -5
  206. package/dist/presentation/navigation/hooks/useNavigationHandlers.d.ts +0 -14
  207. package/dist/presentation/navigation/hooks/useSettingsNavigation.d.ts +0 -22
  208. package/dist/presentation/navigation/hooks/useSettingsScreens.d.ts +0 -12
  209. package/dist/presentation/navigation/types.d.ts +0 -134
  210. package/dist/presentation/navigation/utils/index.d.ts +0 -5
  211. package/dist/presentation/navigation/utils/navigationHelpers.d.ts +0 -13
  212. package/dist/presentation/navigation/utils/navigationTranslations.d.ts +0 -35
  213. package/dist/presentation/screens/AppearanceScreen.d.ts +0 -6
  214. package/dist/presentation/screens/SettingsScreen.d.ts +0 -49
  215. package/dist/presentation/screens/components/SettingsContent.d.ts +0 -3
  216. package/dist/presentation/screens/components/SettingsHeader.d.ts +0 -8
  217. package/dist/presentation/screens/components/sections/CustomSettingsList.d.ts +0 -7
  218. package/dist/presentation/screens/components/sections/FeatureSettingsSection.d.ts +0 -13
  219. package/dist/presentation/screens/components/sections/IdentitySettingsSection.d.ts +0 -12
  220. package/dist/presentation/screens/components/sections/ProfileSectionLoader.d.ts +0 -17
  221. package/dist/presentation/screens/components/sections/SupportSettingsSection.d.ts +0 -13
  222. package/dist/presentation/screens/components/types/SettingsContentProps.d.ts +0 -47
  223. package/dist/presentation/screens/components/utils/featureChecker.d.ts +0 -10
  224. package/dist/presentation/screens/hooks/useFeatureDetection.d.ts +0 -28
  225. package/dist/presentation/screens/hooks/useSettingsScreen.d.ts +0 -36
  226. package/dist/presentation/screens/types/BaseTypes.d.ts +0 -11
  227. package/dist/presentation/screens/types/ContentConfig.d.ts +0 -76
  228. package/dist/presentation/screens/types/CustomSection.d.ts +0 -38
  229. package/dist/presentation/screens/types/SettingsConfig.d.ts +0 -122
  230. package/dist/presentation/screens/types/SettingsTranslations.d.ts +0 -159
  231. package/dist/presentation/screens/types/UserFeatureConfig.d.ts +0 -178
  232. package/dist/presentation/screens/types/index.d.ts +0 -11
  233. package/dist/presentation/screens/utils/normalizeConfig.d.ts +0 -68
  234. package/dist/presentation/utils/accountConfigUtils.d.ts +0 -34
  235. package/dist/presentation/utils/config-creators/base-configs.d.ts +0 -26
  236. package/dist/presentation/utils/config-creators/feature-configs.d.ts +0 -17
  237. package/dist/presentation/utils/config-creators/index.d.ts +0 -7
  238. package/dist/presentation/utils/config-creators/support-configs.d.ts +0 -19
  239. package/dist/presentation/utils/config-creators/types.d.ts +0 -20
  240. package/dist/presentation/utils/faqTranslator.d.ts +0 -3
  241. package/dist/presentation/utils/index.d.ts +0 -8
  242. package/dist/presentation/utils/screenFactory.d.ts +0 -26
  243. package/dist/presentation/utils/settingsConfigFactory.d.ts +0 -33
  244. package/dist/presentation/utils/userProfileUtils.d.ts +0 -20
  245. package/dist/utils/appUtils.d.ts +0 -4
  246. package/dist/utils/devUtils.d.ts +0 -31
  247. package/dist/utils/errorUtils.d.ts +0 -22
  248. package/dist/utils/hooks/useAsyncStateUpdate.d.ts +0 -35
  249. package/dist/utils/hooks/useMountSafety.d.ts +0 -1
@@ -1,178 +0,0 @@
1
- /**
2
- * User Feature Configuration Types
3
- * Types for user-related features (Profile, Feedback, FAQ, etc.)
4
- */
5
- import type { FeatureVisibility } from "./BaseTypes";
6
- import type { FeedbackType } from "../../../domains/feedback/domain/entities/FeedbackEntity";
7
- import type { FAQCategory } from "../../../domains/faqs/domain/entities/FAQEntity";
8
- import type { SettingsStackParamList } from "../../navigation/types";
9
- /**
10
- * User Profile Settings Configuration
11
- */
12
- export interface UserProfileConfig {
13
- /** Show user profile header */
14
- enabled?: boolean;
15
- /** Custom section title for grouping */
16
- sectionTitle?: string;
17
- /** Custom display name for anonymous users */
18
- anonymousDisplayName?: string;
19
- /** Custom avatar service URL */
20
- avatarServiceUrl?: string;
21
- /** Navigation route for account settings (shows chevron if set) */
22
- accountSettingsRoute?: string;
23
- }
24
- /**
25
- * Feedback Settings Configuration
26
- */
27
- export interface FeedbackConfig {
28
- /** Enable feedback feature */
29
- enabled?: FeatureVisibility;
30
- /** Custom title for the feedback section */
31
- title?: string;
32
- /** Custom label for the feedback item */
33
- description?: string;
34
- /** Custom icon name (Ionicons) */
35
- icon?: string;
36
- /** Custom section title for grouping */
37
- sectionTitle?: string;
38
- /** Initial feedback type */
39
- initialType?: FeedbackType;
40
- /** Feedback submission handler */
41
- onSubmit?: (data: {
42
- type: FeedbackType;
43
- rating: number;
44
- description: string;
45
- title: string;
46
- }) => Promise<void>;
47
- /** Custom handler to open feedback screen (overrides default modal) */
48
- onPress?: () => void;
49
- }
50
- /**
51
- * FAQ Settings Configuration
52
- */
53
- export interface FAQConfig {
54
- /** Enable FAQ feature */
55
- enabled?: FeatureVisibility;
56
- /** Custom title for the FAQ section */
57
- title?: string;
58
- /** Custom label for the FAQ button */
59
- description?: string;
60
- /** Custom icon name (Ionicons) */
61
- icon?: string;
62
- /** Custom section title for grouping */
63
- sectionTitle?: string;
64
- /** FAQ items passed from app */
65
- items?: FAQCategory[];
66
- /** Handler to open FAQ screen */
67
- onPress?: () => void;
68
- }
69
- /**
70
- * Rating Settings Configuration
71
- */
72
- export interface RatingConfig {
73
- /** Enable rating feature */
74
- enabled?: FeatureVisibility;
75
- /** Custom title for the rating section */
76
- title?: string;
77
- /** Custom label for the rate app button */
78
- description?: string;
79
- /** Store URL for direct linking (optional) */
80
- storeUrl?: string;
81
- /** Custom handler for rating action (e.g. open store review) */
82
- onRate?: () => void;
83
- }
84
- /**
85
- * Cloud Sync Settings Configuration
86
- */
87
- export interface CloudSyncConfig {
88
- /** Enable cloud sync feature */
89
- enabled?: FeatureVisibility;
90
- /** Custom title for the sync section */
91
- title?: string;
92
- /** Custom description for the sync toggle */
93
- description?: string;
94
- /** Custom icon name (Ionicons) */
95
- icon?: string;
96
- /** Custom section title for grouping */
97
- sectionTitle?: string;
98
- /** Firestore collection name */
99
- collectionName?: string;
100
- }
101
- /**
102
- * Subscription Settings Configuration
103
- */
104
- export interface SubscriptionConfig {
105
- /** Show subscription section */
106
- enabled?: FeatureVisibility;
107
- /** Custom title for the subscription section */
108
- title?: string;
109
- /** Custom label for the subscription item */
110
- description?: string;
111
- /** Custom icon name (Ionicons) */
112
- icon?: string;
113
- /** Custom section title for grouping */
114
- sectionTitle?: string;
115
- /** Navigation route for subscription screen (preferred over onPress) */
116
- route?: keyof SettingsStackParamList;
117
- /** Handler to open subscription screen (use route instead for stack navigation) */
118
- onPress?: () => void;
119
- /** Whether user is premium (to show active status) */
120
- isPremium?: boolean;
121
- }
122
- /**
123
- * Wallet Settings Configuration
124
- */
125
- export interface WalletConfig {
126
- /** Show wallet section */
127
- enabled?: FeatureVisibility;
128
- /** Custom title for the wallet section */
129
- title?: string;
130
- /** Custom label for the wallet item */
131
- description?: string;
132
- /** Custom icon name (Ionicons) */
133
- icon?: string;
134
- /** Custom section title for grouping */
135
- sectionTitle?: string;
136
- /** Navigation route for wallet screen */
137
- route?: keyof SettingsStackParamList;
138
- /** Current balance to display */
139
- balance?: number;
140
- }
141
- /**
142
- * Gamification Settings Item Configuration
143
- */
144
- export interface GamificationItemConfig {
145
- /** Show gamification section */
146
- enabled?: FeatureVisibility;
147
- /** Custom title for the gamification section */
148
- title?: string;
149
- /** Custom label for the gamification item */
150
- description?: string;
151
- /** Custom icon name (Ionicons) */
152
- icon?: string;
153
- /** Custom section title for grouping */
154
- sectionTitle?: string;
155
- /** Navigation route for gamification screen */
156
- route?: keyof SettingsStackParamList;
157
- /** Achievements to display */
158
- achievementsCount?: number;
159
- }
160
- /**
161
- * Video Tutorial Settings Configuration
162
- */
163
- export interface VideoTutorialConfig {
164
- /** Enable video tutorial feature */
165
- enabled?: FeatureVisibility;
166
- /** Custom title for the video tutorial section */
167
- title?: string;
168
- /** Custom label for the video tutorial item */
169
- description?: string;
170
- /** Custom icon name (Ionicons) */
171
- icon?: string;
172
- /** Custom section title for grouping */
173
- sectionTitle?: string;
174
- /** Handler to open video tutorial screen */
175
- onPress?: () => void;
176
- /** Navigation route for video tutorial screen */
177
- route?: keyof SettingsStackParamList;
178
- }
@@ -1,11 +0,0 @@
1
- /**
2
- * Settings Types - Public API
3
- * Exports all settings-related types
4
- */
5
- export type { FeatureVisibility } from "./BaseTypes";
6
- export type { AboutConfig, LegalConfig, DisclaimerConfig, AppearanceConfig, LanguageConfig, NotificationsConfig, } from "./ContentConfig";
7
- export type { UserProfileConfig, FeedbackConfig, FAQConfig, RatingConfig, CloudSyncConfig, SubscriptionConfig, WalletConfig, GamificationItemConfig, VideoTutorialConfig, } from "./UserFeatureConfig";
8
- export type { GamificationSettingsConfig as GamificationConfig } from "../../../domains/gamification";
9
- export type { SettingsConfig } from "./SettingsConfig";
10
- export type { SettingsTranslations } from "./SettingsTranslations";
11
- export type { CustomSettingsSection } from "./CustomSection";
@@ -1,68 +0,0 @@
1
- /**
2
- * Config Normalization Utilities
3
- * Single Responsibility: Normalize config values to consistent format
4
- */
5
- import type { AppearanceConfig, LanguageConfig, NotificationsConfig, AboutConfig, LegalConfig, DisclaimerConfig, UserProfileConfig, FeedbackConfig, RatingConfig, FAQConfig, SubscriptionConfig, WalletConfig, GamificationItemConfig, VideoTutorialConfig, SettingsConfig } from "../types";
6
- export interface NormalizedConfig {
7
- appearance: {
8
- enabled: boolean;
9
- config?: AppearanceConfig;
10
- };
11
- language: {
12
- enabled: boolean;
13
- config?: LanguageConfig;
14
- };
15
- notifications: {
16
- enabled: boolean;
17
- config?: NotificationsConfig;
18
- };
19
- about: {
20
- enabled: boolean;
21
- config?: AboutConfig;
22
- };
23
- legal: {
24
- enabled: boolean;
25
- config?: LegalConfig;
26
- };
27
- disclaimer: {
28
- enabled: boolean;
29
- config?: DisclaimerConfig;
30
- };
31
- userProfile: {
32
- enabled: boolean;
33
- config?: UserProfileConfig;
34
- };
35
- feedback: {
36
- enabled: boolean;
37
- config?: FeedbackConfig;
38
- };
39
- rating: {
40
- enabled: boolean;
41
- config?: RatingConfig;
42
- };
43
- faqs: {
44
- enabled: boolean;
45
- config?: FAQConfig;
46
- };
47
- subscription: {
48
- enabled: boolean;
49
- config?: SubscriptionConfig;
50
- };
51
- wallet: {
52
- enabled: boolean;
53
- config?: WalletConfig;
54
- };
55
- gamification: {
56
- enabled: boolean;
57
- config?: GamificationItemConfig;
58
- };
59
- videoTutorial: {
60
- enabled: boolean;
61
- config?: VideoTutorialConfig;
62
- };
63
- translations?: import("../types").SettingsTranslations;
64
- }
65
- /**
66
- * Normalize entire SettingsConfig to consistent format
67
- */
68
- export declare function normalizeSettingsConfig(config: SettingsConfig | undefined): NormalizedConfig;
@@ -1,34 +0,0 @@
1
- /**
2
- * Account Configuration Utilities
3
- *
4
- * Helper functions for creating account screen configurations.
5
- */
6
- import type { AccountConfig } from "../navigation/types";
7
- export interface AccountTranslations {
8
- editProfile?: string;
9
- logout: string;
10
- deleteAccount: string;
11
- logoutConfirmTitle: string;
12
- logoutConfirmMessage: string;
13
- deleteConfirmTitle: string;
14
- deleteConfirmMessage: string;
15
- deleteErrorTitle?: string;
16
- deleteErrorMessage?: string;
17
- cancel: string;
18
- }
19
- export interface CreateAccountConfigParams {
20
- displayName?: string;
21
- userId?: string;
22
- photoURL?: string;
23
- isAnonymous?: boolean;
24
- avatarUrl?: string;
25
- onSignIn: () => void;
26
- onLogout: () => Promise<void>;
27
- onDeleteAccount: () => Promise<void>;
28
- translations?: AccountTranslations;
29
- PasswordPromptComponent?: React.ReactNode;
30
- }
31
- /**
32
- * Create account screen configuration
33
- */
34
- export declare function createAccountConfig(params: CreateAccountConfigParams): AccountConfig;
@@ -1,26 +0,0 @@
1
- /**
2
- * Base Settings Config Creators
3
- * Standard settings: appearance, language, notifications, about, legal
4
- * Refactored to use configFactory pattern for consistency
5
- */
6
- import type { AppearanceConfig, LanguageConfig, NotificationsConfig, AboutConfig, LegalConfig } from "../../screens/types";
7
- /**
8
- * Create appearance configuration
9
- */
10
- export declare const createAppearanceConfig: (routeOrOnPress?: string | (() => void)) => AppearanceConfig;
11
- /**
12
- * Create language configuration
13
- */
14
- export declare const createLanguageConfig: (routeOrOnPress?: string | (() => void)) => LanguageConfig;
15
- /**
16
- * Create notifications configuration
17
- */
18
- export declare const createNotificationsConfig: (routeOrOnPress?: string | (() => void)) => NotificationsConfig;
19
- /**
20
- * Create about configuration
21
- */
22
- export declare const createAboutConfig: (routeOrOnPress?: string | (() => void)) => AboutConfig;
23
- /**
24
- * Create legal configuration
25
- */
26
- export declare const createLegalConfig: (routeOrOnPress?: string | (() => void)) => LegalConfig;
@@ -1,17 +0,0 @@
1
- /**
2
- * Feature Settings Config Creators
3
- * Subscription, gamification
4
- */
5
- import type { SubscriptionConfig } from "../../screens/types";
6
- import type { GamificationConfig, AchievementDefinition, LevelDefinition } from "../../../domains/gamification/types";
7
- import type { SettingsStackParamList } from "../../navigation/types";
8
- /**
9
- * Create subscription configuration
10
- * @param route - Navigation route name (preferred for stack navigation)
11
- * @param onPress - Callback function (use route instead when possible)
12
- */
13
- export declare const createSubscriptionConfig: (isPremium: boolean, routeOrOnPress: keyof SettingsStackParamList | (() => void)) => SubscriptionConfig;
14
- /**
15
- * Create gamification configuration
16
- */
17
- export declare const createGamificationConfig: (storageKey: string, achievements: AchievementDefinition[], levels: LevelDefinition[], enabled?: boolean) => GamificationConfig;
@@ -1,7 +0,0 @@
1
- /**
2
- * Config Creators - Barrel export
3
- */
4
- export type { TranslationFunction, FeedbackFormData } from "./types";
5
- export { createAppearanceConfig, createLanguageConfig, createNotificationsConfig, createAboutConfig, createLegalConfig, } from "./base-configs";
6
- export { createFeedbackConfig, createRatingConfig, createFAQConfig, } from "./support-configs";
7
- export { createSubscriptionConfig, createGamificationConfig, } from "./feature-configs";
@@ -1,19 +0,0 @@
1
- /**
2
- * Support Settings Config Creators
3
- * Feedback, rating, FAQ
4
- */
5
- import type { FeedbackConfig, RatingConfig, FAQConfig } from "../../screens/types";
6
- import type { FeedbackFormData } from "./types";
7
- /**
8
- * Create feedback configuration
9
- */
10
- export declare const createFeedbackConfig: (onSubmit: (data: FeedbackFormData) => Promise<void>) => FeedbackConfig;
11
- /**
12
- * Create rating configuration
13
- */
14
- export declare const createRatingConfig: (onRate: () => void, storeUrl?: string) => RatingConfig;
15
- /**
16
- * Create FAQ configuration
17
- * Navigation is handled internally by the package - no callback needed
18
- */
19
- export declare const createFAQConfig: () => FAQConfig;
@@ -1,20 +0,0 @@
1
- /**
2
- * Config Creator Types
3
- */
4
- /**
5
- * Translation options for i18n parameters
6
- */
7
- export type TranslationOptions = Record<string, string | number | boolean>;
8
- /**
9
- * Translation function type
10
- */
11
- export type TranslationFunction = (key: string, options?: TranslationOptions) => string;
12
- /**
13
- * Feedback form data interface
14
- */
15
- export interface FeedbackFormData {
16
- type: string;
17
- rating: number;
18
- description: string;
19
- title: string;
20
- }
@@ -1,3 +0,0 @@
1
- import type { FAQData } from "../navigation/types";
2
- import type { AppInfo } from "../navigation/types";
3
- export declare const translateFAQData: (faqData: FAQData | undefined, _appInfo: AppInfo) => FAQData | undefined;
@@ -1,8 +0,0 @@
1
- /**
2
- * Presentation Utilities
3
- */
4
- export * from "./config-creators";
5
- export * from "./userProfileUtils";
6
- export * from "./accountConfigUtils";
7
- export * from "./faqTranslator";
8
- export * from "./settingsConfigFactory";
@@ -1,26 +0,0 @@
1
- /**
2
- * Screen Factory Utilities
3
- *
4
- * Helper functions for creating stack screen configurations.
5
- */
6
- import React from "react";
7
- import type { StackScreen } from "@umituz/react-native-design-system/molecules";
8
- import type { AdditionalScreen } from "../navigation/types";
9
- /**
10
- * Create a screen with props
11
- */
12
- export declare function createScreenWithProps<P>(name: string, component: React.ComponentType<P>, props: P, options?: {
13
- headerShown?: boolean;
14
- }): StackScreen;
15
- /**
16
- * Convert additional screen to stack screen
17
- */
18
- export declare function convertAdditionalScreen(screen: AdditionalScreen): StackScreen;
19
- /**
20
- * Create conditional screen
21
- */
22
- export declare function createConditionalScreen(condition: boolean, screenFactory: () => StackScreen): StackScreen | null;
23
- /**
24
- * Combine screens excluding null values
25
- */
26
- export declare function combineScreens(...screens: (StackScreen | null | StackScreen[])[]): StackScreen[];
@@ -1,33 +0,0 @@
1
- /**
2
- * Settings Config Factory Utility
3
- * Creates settings configuration based on feature flags
4
- */
5
- import type { FeedbackFormData } from "./config-creators/types";
6
- import type { SettingsConfig } from "../screens/types";
7
- export interface SettingsConfigFactoryParams {
8
- onFeedbackSubmit: (data: FeedbackFormData) => Promise<void>;
9
- handleRatePress: () => void;
10
- appStoreUrl: string;
11
- isPremium: boolean;
12
- features: {
13
- notifications: boolean;
14
- appearance: boolean;
15
- language: boolean;
16
- feedback: boolean;
17
- rating: boolean;
18
- faqs: boolean;
19
- about: boolean;
20
- legal: boolean;
21
- gamification: boolean;
22
- videoTutorial: boolean;
23
- subscription: boolean;
24
- };
25
- }
26
- /**
27
- * Creates settings configuration based on enabled features
28
- */
29
- export declare const createSettingsConfig: (params: SettingsConfigFactoryParams) => SettingsConfig;
30
- /**
31
- * Hook for creating settings config with memoization
32
- */
33
- export declare const useSettingsConfigFactory: (params: SettingsConfigFactoryParams) => SettingsConfig;
@@ -1,20 +0,0 @@
1
- /**
2
- * User Profile Utilities
3
- *
4
- * Helper functions for creating user profile configurations.
5
- */
6
- import type { UserProfileDisplay } from "../navigation/types";
7
- export interface UserProfileConfig {
8
- displayName?: string;
9
- userId?: string;
10
- isAnonymous?: boolean;
11
- avatarUrl?: string;
12
- }
13
- export interface CreateUserProfileParams {
14
- profileData?: UserProfileConfig;
15
- onSignIn?: () => void;
16
- }
17
- /**
18
- * Create user profile display configuration
19
- */
20
- export declare function createUserProfileDisplay(params: CreateUserProfileParams): UserProfileDisplay;
@@ -1,4 +0,0 @@
1
- /**
2
- * Gets the current app version from Expo constants
3
- */
4
- export declare function getAppVersion(): string;
@@ -1,31 +0,0 @@
1
- /**
2
- * Development Mode Utilities
3
- *
4
- * Provides safe, standardized helpers for development-only code.
5
- * All utilities check for __DEV__ existence to prevent runtime errors.
6
- */
7
- /**
8
- * Safe development mode check
9
- * Handles cases where __DEV__ is not defined
10
- *
11
- * @returns true if in development mode, false otherwise
12
- */
13
- export declare const isDev: () => boolean;
14
- /**
15
- * Log only in development mode
16
- *
17
- * @param args - Arguments to log
18
- */
19
- export declare const devLog: (...args: unknown[]) => void;
20
- /**
21
- * Warn only in development mode
22
- *
23
- * @param args - Arguments to warn
24
- */
25
- export declare const devWarn: (...args: unknown[]) => void;
26
- /**
27
- * Error only in development mode
28
- *
29
- * @param args - Arguments to error
30
- */
31
- export declare const devError: (...args: unknown[]) => void;
@@ -1,22 +0,0 @@
1
- /**
2
- * Error Utilities
3
- * Centralized error message formatting and handling
4
- */
5
- /**
6
- * Format error message from unknown error type
7
- * Handles Error instances, string errors, and unknown error types
8
- *
9
- * @param error - The error to format
10
- * @returns Formatted error message string
11
- *
12
- * @example
13
- * ```typescript
14
- * try {
15
- * await riskyOperation();
16
- * } catch (err) {
17
- * const message = formatErrorMessage(err);
18
- * console.error(message);
19
- * }
20
- * ```
21
- */
22
- export declare const formatErrorMessage: (error: unknown) => string;
@@ -1,35 +0,0 @@
1
- export interface AsyncStateOptions<T> {
2
- /** Initial data value */
3
- initialData?: T | null;
4
- /** Callback invoked on successful operation */
5
- onSuccess?: (data: T) => void;
6
- /** Callback invoked on error */
7
- onError?: (error: string) => void;
8
- }
9
- export interface AsyncStateResult<T> {
10
- /** Current data value */
11
- data: T | null;
12
- /** Loading state */
13
- loading: boolean;
14
- /** Error message if operation failed */
15
- error: string | null;
16
- /** Execute an async operation with automatic state management */
17
- execute: (operation: () => Promise<T>) => Promise<T | null>;
18
- /** Manually set data */
19
- setData: (data: T | null) => void;
20
- /** Manually set error */
21
- setError: (error: string | null) => void;
22
- }
23
- /**
24
- * Hook for managing async operations with automatic state updates
25
- *
26
- * Features:
27
- * - Automatic loading state management
28
- * - Safe mounted state checks
29
- * - Standardized error handling
30
- * - Optional success/error callbacks
31
- *
32
- * @param options - Configuration options
33
- * @returns Async state result with execute function
34
- */
35
- export declare const useAsyncStateUpdate: <T = unknown>(options?: AsyncStateOptions<T>) => AsyncStateResult<T>;
@@ -1 +0,0 @@
1
- export declare const useMountSafety: () => import("react").RefObject<boolean>;