@umituz/react-native-settings 5.3.34 → 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 (248) hide show
  1. package/package.json +1 -1
  2. package/LICENSE +0 -21
  3. package/README.md +0 -355
  4. package/dist/account.d.ts +0 -27
  5. package/dist/application/ports/ISettingsRepository.d.ts +0 -45
  6. package/dist/domains/about/domain/entities/AppInfo.d.ts +0 -76
  7. package/dist/domains/about/domain/repositories/IAboutRepository.d.ts +0 -19
  8. package/dist/domains/about/index.d.ts +0 -10
  9. package/dist/domains/about/infrastructure/repositories/AboutRepository.d.ts +0 -18
  10. package/dist/domains/about/presentation/components/AboutContent.d.ts +0 -14
  11. package/dist/domains/about/presentation/components/AboutHeader.d.ts +0 -21
  12. package/dist/domains/about/presentation/components/AboutSection.d.ts +0 -14
  13. package/dist/domains/about/presentation/components/AboutSettingItem.d.ts +0 -39
  14. package/dist/domains/about/presentation/hooks/useAboutInfo.d.ts +0 -2
  15. package/dist/domains/about/presentation/hooks/useAboutInfo.types.d.ts +0 -29
  16. package/dist/domains/about/presentation/screens/AboutScreen.d.ts +0 -21
  17. package/dist/domains/about/presentation/screens/AboutScreenContent.d.ts +0 -15
  18. package/dist/domains/about/utils/AppInfoFactory.d.ts +0 -9
  19. package/dist/domains/appearance/data/colorPalettes.d.ts +0 -25
  20. package/dist/domains/appearance/hooks/useAppearance.d.ts +0 -11
  21. package/dist/domains/appearance/hooks/useAppearanceActions.d.ts +0 -9
  22. package/dist/domains/appearance/index.d.ts +0 -9
  23. package/dist/domains/appearance/presentation/components/AppearanceHeader.d.ts +0 -18
  24. package/dist/domains/appearance/presentation/components/AppearancePreview.d.ts +0 -21
  25. package/dist/domains/appearance/presentation/components/AppearanceSection.d.ts +0 -16
  26. package/dist/domains/appearance/presentation/components/ColorPicker.d.ts +0 -15
  27. package/dist/domains/appearance/presentation/components/CustomColorsSection.d.ts +0 -25
  28. package/dist/domains/appearance/presentation/components/ThemeModeSection.d.ts +0 -24
  29. package/dist/domains/appearance/presentation/components/ThemeOption.d.ts +0 -20
  30. package/dist/domains/appearance/presentation/components/index.d.ts +0 -6
  31. package/dist/domains/appearance/presentation/screens/AppearanceScreen.d.ts +0 -16
  32. package/dist/domains/appearance/types/index.d.ts +0 -48
  33. package/dist/domains/cloud-sync/index.d.ts +0 -6
  34. package/dist/domains/cloud-sync/presentation/components/CloudSyncSetting.d.ts +0 -14
  35. package/dist/domains/dev/index.d.ts +0 -14
  36. package/dist/domains/dev/presentation/components/DevSettingsSection.d.ts +0 -34
  37. package/dist/domains/dev/presentation/components/EnvViewerSetting.d.ts +0 -20
  38. package/dist/domains/dev/presentation/components/StorageClearSetting.d.ts +0 -13
  39. package/dist/domains/dev/presentation/screens/EnvViewerScreen.d.ts +0 -12
  40. package/dist/domains/dev/types.d.ts +0 -22
  41. package/dist/domains/disclaimer/index.d.ts +0 -17
  42. package/dist/domains/disclaimer/presentation/components/DisclaimerCard.d.ts +0 -14
  43. package/dist/domains/disclaimer/presentation/components/DisclaimerModal.d.ts +0 -12
  44. package/dist/domains/disclaimer/presentation/components/DisclaimerSetting.d.ts +0 -34
  45. package/dist/domains/disclaimer/presentation/screens/DisclaimerScreen.d.ts +0 -27
  46. package/dist/domains/faqs/domain/entities/FAQEntity.d.ts +0 -21
  47. package/dist/domains/faqs/domain/services/FAQSearchService.d.ts +0 -12
  48. package/dist/domains/faqs/index.d.ts +0 -8
  49. package/dist/domains/faqs/presentation/components/FAQCategory.d.ts +0 -21
  50. package/dist/domains/faqs/presentation/components/FAQEmptyState.d.ts +0 -20
  51. package/dist/domains/faqs/presentation/components/FAQItem.d.ts +0 -24
  52. package/dist/domains/faqs/presentation/components/FAQSearchBar.d.ts +0 -18
  53. package/dist/domains/faqs/presentation/components/index.d.ts +0 -11
  54. package/dist/domains/faqs/presentation/hooks/index.d.ts +0 -5
  55. package/dist/domains/faqs/presentation/hooks/useFAQExpansion.d.ts +0 -12
  56. package/dist/domains/faqs/presentation/hooks/useFAQSearch.d.ts +0 -12
  57. package/dist/domains/faqs/presentation/screens/FAQScreen.d.ts +0 -33
  58. package/dist/domains/feedback/domain/entities/FeedbackEntity.d.ts +0 -25
  59. package/dist/domains/feedback/domain/repositories/IFeedbackRepository.d.ts +0 -20
  60. package/dist/domains/feedback/index.d.ts +0 -10
  61. package/dist/domains/feedback/presentation/components/FeedbackForm.d.ts +0 -7
  62. package/dist/domains/feedback/presentation/components/FeedbackForm.styles.d.ts +0 -48
  63. package/dist/domains/feedback/presentation/components/FeedbackFormProps.d.ts +0 -26
  64. package/dist/domains/feedback/presentation/components/FeedbackModal.d.ts +0 -23
  65. package/dist/domains/feedback/presentation/components/SupportSection.d.ts +0 -62
  66. package/dist/domains/feedback/presentation/hooks/useFeedbackForm.d.ts +0 -19
  67. package/dist/domains/gamification/components/AchievementCard.d.ts +0 -23
  68. package/dist/domains/gamification/components/AchievementItem.d.ts +0 -7
  69. package/dist/domains/gamification/components/AchievementToast.d.ts +0 -21
  70. package/dist/domains/gamification/components/GamificationScreen/AchievementsList.d.ts +0 -17
  71. package/dist/domains/gamification/components/GamificationScreen/GamificationScreen.d.ts +0 -11
  72. package/dist/domains/gamification/components/GamificationScreen/GamificationScreenWithConfig.d.ts +0 -11
  73. package/dist/domains/gamification/components/GamificationScreen/StatsGrid.d.ts +0 -16
  74. package/dist/domains/gamification/components/GamificationScreen/index.d.ts +0 -17
  75. package/dist/domains/gamification/components/GamificationScreen/styles.d.ts +0 -40
  76. package/dist/domains/gamification/components/GamificationScreen/types.d.ts +0 -42
  77. package/dist/domains/gamification/components/LevelProgress.d.ts +0 -27
  78. package/dist/domains/gamification/components/PointsBadge.d.ts +0 -16
  79. package/dist/domains/gamification/components/StatsCard.d.ts +0 -20
  80. package/dist/domains/gamification/components/StreakDisplay.d.ts +0 -21
  81. package/dist/domains/gamification/components/index.d.ts +0 -14
  82. package/dist/domains/gamification/components/styles/achievementItemStyles.d.ts +0 -71
  83. package/dist/domains/gamification/components/types/AchievementItemProps.d.ts +0 -22
  84. package/dist/domains/gamification/hooks/useGamification.d.ts +0 -22
  85. package/dist/domains/gamification/index.d.ts +0 -13
  86. package/dist/domains/gamification/store/gamificationStore.d.ts +0 -6
  87. package/dist/domains/gamification/types/index.d.ts +0 -99
  88. package/dist/domains/gamification/utils/calculations.d.ts +0 -10
  89. package/dist/domains/legal/domain/entities/LegalConfig.d.ts +0 -28
  90. package/dist/domains/legal/domain/services/ContentValidationService.d.ts +0 -19
  91. package/dist/domains/legal/domain/services/StyleCacheService.d.ts +0 -38
  92. package/dist/domains/legal/domain/services/UrlHandlerService.d.ts +0 -32
  93. package/dist/domains/legal/index.d.ts +0 -8
  94. package/dist/domains/legal/presentation/components/LegalDocumentsList.d.ts +0 -21
  95. package/dist/domains/legal/presentation/components/LegalItem.d.ts +0 -35
  96. package/dist/domains/legal/presentation/components/LegalScreenHeader.d.ts +0 -12
  97. package/dist/domains/legal/presentation/components/LegalSection.d.ts +0 -14
  98. package/dist/domains/legal/presentation/screens/LegalContentScreen.d.ts +0 -19
  99. package/dist/domains/legal/presentation/screens/LegalScreen.d.ts +0 -24
  100. package/dist/domains/legal/presentation/screens/PrivacyPolicyScreen.d.ts +0 -15
  101. package/dist/domains/legal/presentation/screens/TermsOfServiceScreen.d.ts +0 -15
  102. package/dist/domains/localization/domain/repositories/ILocalizationRepository.d.ts +0 -16
  103. package/dist/domains/localization/index.d.ts +0 -16
  104. package/dist/domains/localization/infrastructure/components/LanguageSwitcher.d.ts +0 -19
  105. package/dist/domains/localization/infrastructure/components/LanguageSwitcher.styles.d.ts +0 -37
  106. package/dist/domains/localization/infrastructure/components/useLanguageNavigation.d.ts +0 -4
  107. package/dist/domains/localization/infrastructure/components/useLanguageSwitcher.d.ts +0 -13
  108. package/dist/domains/localization/infrastructure/config/DeviceLocale.d.ts +0 -10
  109. package/dist/domains/localization/infrastructure/config/I18nInitializer.d.ts +0 -14
  110. package/dist/domains/localization/infrastructure/config/LanguageQuery.d.ts +0 -10
  111. package/dist/domains/localization/infrastructure/config/LocaleMapping.d.ts +0 -5
  112. package/dist/domains/localization/infrastructure/config/NamespaceResolver.d.ts +0 -11
  113. package/dist/domains/localization/infrastructure/config/ResourceBuilder.d.ts +0 -10
  114. package/dist/domains/localization/infrastructure/config/TranslationLoader.d.ts +0 -16
  115. package/dist/domains/localization/infrastructure/config/constants/defaultLanguages.d.ts +0 -6
  116. package/dist/domains/localization/infrastructure/config/i18n.d.ts +0 -7
  117. package/dist/domains/localization/infrastructure/config/languages.d.ts +0 -7
  118. package/dist/domains/localization/infrastructure/hooks/useLanguageSelection.d.ts +0 -11
  119. package/dist/domains/localization/infrastructure/hooks/useLocalization.d.ts +0 -12
  120. package/dist/domains/localization/infrastructure/hooks/useTranslation.d.ts +0 -23
  121. package/dist/domains/localization/infrastructure/repository/LanguageRepository.d.ts +0 -18
  122. package/dist/domains/localization/infrastructure/storage/LanguageInitializer.d.ts +0 -20
  123. package/dist/domains/localization/infrastructure/storage/LanguageSwitcher.d.ts +0 -16
  124. package/dist/domains/localization/infrastructure/storage/LocalizationStore.d.ts +0 -6
  125. package/dist/domains/localization/infrastructure/storage/localizationStoreUtils.d.ts +0 -44
  126. package/dist/domains/localization/infrastructure/storage/types/Language.d.ts +0 -12
  127. package/dist/domains/localization/infrastructure/storage/types/LocalizationState.d.ts +0 -22
  128. package/dist/domains/localization/presentation/components/LanguageItem.d.ts +0 -23
  129. package/dist/domains/localization/presentation/components/LanguageItem.styles.d.ts +0 -30
  130. package/dist/domains/localization/presentation/components/LanguageSection.d.ts +0 -15
  131. package/dist/domains/localization/presentation/providers/LocalizationManager.d.ts +0 -12
  132. package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.d.ts +0 -7
  133. package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.styles.d.ts +0 -7
  134. package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.types.d.ts +0 -26
  135. package/dist/domains/notifications/index.d.ts +0 -46
  136. package/dist/domains/notifications/infrastructure/config/notificationsConfig.d.ts +0 -19
  137. package/dist/domains/notifications/infrastructure/hooks/useNotificationSettings.d.ts +0 -8
  138. package/dist/domains/notifications/infrastructure/services/NotificationBadgeManager.d.ts +0 -4
  139. package/dist/domains/notifications/infrastructure/services/NotificationManager.d.ts +0 -23
  140. package/dist/domains/notifications/infrastructure/services/NotificationPermissions.d.ts +0 -5
  141. package/dist/domains/notifications/infrastructure/services/NotificationScheduler.d.ts +0 -7
  142. package/dist/domains/notifications/infrastructure/services/NotificationService.d.ts +0 -31
  143. package/dist/domains/notifications/infrastructure/services/types.d.ts +0 -147
  144. package/dist/domains/notifications/infrastructure/storage/UnifiedNotificationStore.d.ts +0 -42
  145. package/dist/domains/notifications/infrastructure/utils/idGenerator.d.ts +0 -6
  146. package/dist/domains/notifications/infrastructure/utils/triggerBuilder.d.ts +0 -6
  147. package/dist/domains/notifications/presentation/components/NotificationsSection.d.ts +0 -16
  148. package/dist/domains/notifications/presentation/components/RemindersNavRow.d.ts +0 -12
  149. package/dist/domains/notifications/presentation/components/RemindersNavRow.styles.d.ts +0 -34
  150. package/dist/domains/notifications/presentation/components/SettingRow.d.ts +0 -14
  151. package/dist/domains/notifications/presentation/hooks/useNotificationSettingsUI.d.ts +0 -13
  152. package/dist/domains/notifications/presentation/hooks/useTimePicker.d.ts +0 -21
  153. package/dist/domains/notifications/presentation/screens/NotificationSettingsScreen.d.ts +0 -12
  154. package/dist/domains/notifications/presentation/screens/NotificationSettingsScreen.styles.d.ts +0 -26
  155. package/dist/domains/notifications/presentation/screens/NotificationsScreen.d.ts +0 -18
  156. package/dist/domains/notifications/quietHours/infrastructure/hooks/useQuietHoursActions.d.ts +0 -13
  157. package/dist/domains/notifications/quietHours/presentation/components/QuietHoursCard.d.ts +0 -14
  158. package/dist/domains/notifications/reminders/infrastructure/config/reminderPresets.d.ts +0 -24
  159. package/dist/domains/notifications/reminders/infrastructure/hooks/useReminderActions.d.ts +0 -11
  160. package/dist/domains/notifications/reminders/presentation/components/FormButton.d.ts +0 -12
  161. package/dist/domains/notifications/reminders/presentation/components/FrequencySelector.d.ts +0 -14
  162. package/dist/domains/notifications/reminders/presentation/components/ReminderForm.constants.d.ts +0 -28
  163. package/dist/domains/notifications/reminders/presentation/components/ReminderForm.d.ts +0 -7
  164. package/dist/domains/notifications/reminders/presentation/components/ReminderForm.styles.d.ts +0 -31
  165. package/dist/domains/notifications/reminders/presentation/components/ReminderItem.d.ts +0 -20
  166. package/dist/domains/notifications/reminders/presentation/components/TimePresetSelector.d.ts +0 -20
  167. package/dist/domains/notifications/reminders/presentation/components/WeekdaySelector.d.ts +0 -11
  168. package/dist/domains/notifications/reminders/presentation/screens/ReminderListScreen.d.ts +0 -13
  169. package/dist/domains/rating/application/services/RatingService.d.ts +0 -33
  170. package/dist/domains/rating/domain/entities/Rating.d.ts +0 -15
  171. package/dist/domains/rating/domain/entities/RatingConfig.d.ts +0 -120
  172. package/dist/domains/rating/index.d.ts +0 -12
  173. package/dist/domains/rating/infrastructure/storage/RatingStorage.d.ts +0 -50
  174. package/dist/domains/rating/presentation/components/RatingPromptModal.d.ts +0 -16
  175. package/dist/domains/rating/presentation/components/StarRating.d.ts +0 -13
  176. package/dist/domains/rating/presentation/hooks/useAppRating.d.ts +0 -9
  177. package/dist/domains/video-tutorials/index.d.ts +0 -18
  178. package/dist/domains/video-tutorials/presentation/components/VideoTutorialCard.d.ts +0 -13
  179. package/dist/domains/video-tutorials/presentation/components/VideoTutorialSection.d.ts +0 -25
  180. package/dist/domains/video-tutorials/presentation/screens/VideoTutorialsScreen.d.ts +0 -25
  181. package/dist/domains/video-tutorials/types/index.d.ts +0 -26
  182. package/dist/index.d.ts +0 -41
  183. package/dist/infrastructure/repositories/SettingsRepository.d.ts +0 -12
  184. package/dist/infrastructure/services/SettingsService.d.ts +0 -14
  185. package/dist/infrastructure/utils/configFactory.d.ts +0 -39
  186. package/dist/infrastructure/utils/constants/textLimits.d.ts +0 -16
  187. package/dist/infrastructure/utils/sanitizers.d.ts +0 -13
  188. package/dist/infrastructure/utils/validation/core.d.ts +0 -8
  189. package/dist/infrastructure/utils/validation/formValidators.d.ts +0 -26
  190. package/dist/infrastructure/utils/validation/index.d.ts +0 -5
  191. package/dist/infrastructure/utils/validators.d.ts +0 -21
  192. package/dist/presentation/components/SettingsFooter.d.ts +0 -7
  193. package/dist/presentation/components/SettingsItemCard.d.ts +0 -22
  194. package/dist/presentation/components/SettingsNavigationItem.d.ts +0 -67
  195. package/dist/presentation/components/SettingsSection.d.ts +0 -6
  196. package/dist/presentation/components/settings/SettingsItemCardContent.d.ts +0 -12
  197. package/dist/presentation/components/settings/SettingsItemCardRightElement.d.ts +0 -11
  198. package/dist/presentation/components/settings/SettingsItemCardSection.d.ts +0 -5
  199. package/dist/presentation/hooks/mutations/useSettingsMutations.d.ts +0 -20
  200. package/dist/presentation/hooks/queries/useSettingsQuery.d.ts +0 -7
  201. package/dist/presentation/hooks/useSettings.d.ts +0 -26
  202. package/dist/presentation/hooks/useSettingsScreenConfig.d.ts +0 -41
  203. package/dist/presentation/navigation/SettingsStackNavigator.d.ts +0 -9
  204. package/dist/presentation/navigation/hooks/index.d.ts +0 -5
  205. package/dist/presentation/navigation/hooks/useNavigationHandlers.d.ts +0 -14
  206. package/dist/presentation/navigation/hooks/useSettingsNavigation.d.ts +0 -22
  207. package/dist/presentation/navigation/hooks/useSettingsScreens.d.ts +0 -12
  208. package/dist/presentation/navigation/types.d.ts +0 -134
  209. package/dist/presentation/navigation/utils/index.d.ts +0 -5
  210. package/dist/presentation/navigation/utils/navigationHelpers.d.ts +0 -13
  211. package/dist/presentation/navigation/utils/navigationTranslations.d.ts +0 -35
  212. package/dist/presentation/screens/AppearanceScreen.d.ts +0 -6
  213. package/dist/presentation/screens/SettingsScreen.d.ts +0 -49
  214. package/dist/presentation/screens/components/SettingsContent.d.ts +0 -3
  215. package/dist/presentation/screens/components/SettingsHeader.d.ts +0 -8
  216. package/dist/presentation/screens/components/sections/CustomSettingsList.d.ts +0 -7
  217. package/dist/presentation/screens/components/sections/FeatureSettingsSection.d.ts +0 -13
  218. package/dist/presentation/screens/components/sections/IdentitySettingsSection.d.ts +0 -12
  219. package/dist/presentation/screens/components/sections/ProfileSectionLoader.d.ts +0 -17
  220. package/dist/presentation/screens/components/sections/SupportSettingsSection.d.ts +0 -13
  221. package/dist/presentation/screens/components/types/SettingsContentProps.d.ts +0 -47
  222. package/dist/presentation/screens/components/utils/featureChecker.d.ts +0 -10
  223. package/dist/presentation/screens/hooks/useFeatureDetection.d.ts +0 -28
  224. package/dist/presentation/screens/hooks/useSettingsScreen.d.ts +0 -36
  225. package/dist/presentation/screens/types/BaseTypes.d.ts +0 -11
  226. package/dist/presentation/screens/types/ContentConfig.d.ts +0 -76
  227. package/dist/presentation/screens/types/CustomSection.d.ts +0 -38
  228. package/dist/presentation/screens/types/SettingsConfig.d.ts +0 -122
  229. package/dist/presentation/screens/types/SettingsTranslations.d.ts +0 -159
  230. package/dist/presentation/screens/types/UserFeatureConfig.d.ts +0 -178
  231. package/dist/presentation/screens/types/index.d.ts +0 -11
  232. package/dist/presentation/screens/utils/normalizeConfig.d.ts +0 -68
  233. package/dist/presentation/utils/accountConfigUtils.d.ts +0 -34
  234. package/dist/presentation/utils/config-creators/base-configs.d.ts +0 -26
  235. package/dist/presentation/utils/config-creators/feature-configs.d.ts +0 -17
  236. package/dist/presentation/utils/config-creators/index.d.ts +0 -7
  237. package/dist/presentation/utils/config-creators/support-configs.d.ts +0 -19
  238. package/dist/presentation/utils/config-creators/types.d.ts +0 -20
  239. package/dist/presentation/utils/faqTranslator.d.ts +0 -3
  240. package/dist/presentation/utils/index.d.ts +0 -8
  241. package/dist/presentation/utils/screenFactory.d.ts +0 -26
  242. package/dist/presentation/utils/settingsConfigFactory.d.ts +0 -33
  243. package/dist/presentation/utils/userProfileUtils.d.ts +0 -20
  244. package/dist/utils/appUtils.d.ts +0 -4
  245. package/dist/utils/devUtils.d.ts +0 -31
  246. package/dist/utils/errorUtils.d.ts +0 -22
  247. package/dist/utils/hooks/useAsyncStateUpdate.d.ts +0 -35
  248. package/dist/utils/hooks/useMountSafety.d.ts +0 -1
@@ -1,67 +0,0 @@
1
- /**
2
- * Generic Settings Navigation Item
3
- * Consolidates VideoTutorialSettingsItem, GamificationSettingsItem,
4
- * WalletSettingsItem, and SubscriptionSettingsItem into one reusable component
5
- */
6
- import React from "react";
7
- import type { IconName } from "@umituz/react-native-design-system/atoms";
8
- import type { SettingsStackParamList } from "../navigation/types";
9
- /**
10
- * Base configuration for navigation items
11
- */
12
- export interface SettingsNavigationItemConfig {
13
- title?: string;
14
- description?: string;
15
- icon?: string;
16
- sectionTitle?: string;
17
- route?: keyof SettingsStackParamList;
18
- onPress?: () => void;
19
- }
20
- /**
21
- * Props for generic settings navigation item
22
- */
23
- export interface SettingsNavigationItemProps<T extends SettingsNavigationItemConfig = SettingsNavigationItemConfig> {
24
- /** Item configuration */
25
- config: T;
26
- /** Default icon if not specified in config */
27
- defaultIcon?: IconName;
28
- /** Default route if not specified in config */
29
- defaultRoute?: keyof SettingsStackParamList;
30
- /** Function to render custom description */
31
- renderDescription?: (config: T) => string | undefined;
32
- /** Remove background styling */
33
- noBackground?: boolean;
34
- /** Remove margin */
35
- hideMargin?: boolean;
36
- }
37
- /**
38
- * Generic Settings Navigation Item Component
39
- *
40
- * @example
41
- * ```tsx
42
- * <SettingsNavigationItem
43
- * config={videoConfig}
44
- * defaultIcon="play-circle-outline"
45
- * defaultRoute="VideoTutorial"
46
- * />
47
- * ```
48
- *
49
- * @example With custom description
50
- * ```tsx
51
- * <SettingsNavigationItem
52
- * config={gamificationConfig}
53
- * defaultIcon="trophy-outline"
54
- * defaultRoute="Gamification"
55
- * renderDescription={(cfg) => `${level} • ${points}`}
56
- * />
57
- * ```
58
- */
59
- declare const SettingsNavigationItemComponent: <T extends SettingsNavigationItemConfig>({ config, defaultIcon, defaultRoute, renderDescription, noBackground, hideMargin, }: SettingsNavigationItemProps<T>) => React.JSX.Element;
60
- /**
61
- * Memoized Settings Navigation Item
62
- * Uses shallow comparison by default
63
- */
64
- export declare const SettingsNavigationItem: typeof SettingsNavigationItemComponent & {
65
- displayName?: string;
66
- };
67
- export {};
@@ -1,6 +0,0 @@
1
- import React from "react";
2
- export interface SettingsSectionProps {
3
- title: string;
4
- children: React.ReactNode;
5
- }
6
- export declare const SettingsSection: React.FC<SettingsSectionProps>;
@@ -1,12 +0,0 @@
1
- import React from "react";
2
- import { type IconName } from "@umituz/react-native-design-system/atoms";
3
- export interface SettingsItemCardContentProps {
4
- icon: IconName;
5
- title: string;
6
- description?: string;
7
- iconBgColor: string;
8
- iconColor: string;
9
- disabled?: boolean;
10
- rightElement: React.ReactElement;
11
- }
12
- export declare const SettingsItemCardContent: React.FC<SettingsItemCardContentProps>;
@@ -1,11 +0,0 @@
1
- import React from "react";
2
- import { type IconName } from "@umituz/react-native-design-system/atoms";
3
- export interface SettingsItemCardRightElementProps {
4
- showSwitch: boolean;
5
- switchValue?: boolean;
6
- onSwitchChange?: (value: boolean) => void;
7
- disabled?: boolean;
8
- shouldShowChevron: boolean;
9
- rightIcon: IconName;
10
- }
11
- export declare const SettingsItemCardRightElement: React.FC<SettingsItemCardRightElementProps>;
@@ -1,5 +0,0 @@
1
- import React from "react";
2
- export interface SettingsItemCardSectionProps {
3
- sectionTitle?: string;
4
- }
5
- export declare const SettingsItemCardSection: React.FC<SettingsItemCardSectionProps>;
@@ -1,20 +0,0 @@
1
- /**
2
- * useSettingsMutations Hook
3
- *
4
- * Mutations for updating and resetting user settings
5
- */
6
- import type { UserSettings } from '../../../application/ports/ISettingsRepository';
7
- export declare const useUpdateSettingsMutation: (userId: string) => import("@tanstack/react-query").UseMutationResult<{
8
- updatedAt: Date;
9
- userId: string;
10
- theme: "light" | "dark" | "auto";
11
- language: string;
12
- notificationsEnabled: boolean;
13
- emailNotifications: boolean;
14
- pushNotifications: boolean;
15
- soundEnabled: boolean;
16
- vibrationEnabled: boolean;
17
- privacyMode: boolean;
18
- disclaimerAccepted: boolean;
19
- }, Error, Partial<UserSettings>, unknown>;
20
- export declare const useResetSettingsMutation: (userId: string) => import("@tanstack/react-query").UseMutationResult<UserSettings, Error, void, unknown>;
@@ -1,7 +0,0 @@
1
- /**
2
- * useSettingsQuery Hook
3
- *
4
- * Fetches user settings using TanStack Query
5
- */
6
- export declare const SETTINGS_QUERY_KEY: string[];
7
- export declare const useSettingsQuery: (userId: string) => import("@tanstack/react-query").UseQueryResult<import("../../..").UserSettings, Error>;
@@ -1,26 +0,0 @@
1
- /**
2
- * useSettings Hook
3
- *
4
- * Primary hook for accessing and managing user settings.
5
- * Integrates with TanStack Query mutations and queries.
6
- */
7
- import type { UserSettings } from '../../application/ports/ISettingsRepository';
8
- export declare const useSettings: (userId: string) => {
9
- settings: UserSettings;
10
- loading: boolean;
11
- error: string;
12
- updateSettings: (updates: Partial<UserSettings>) => Promise<{
13
- updatedAt: Date;
14
- userId: string;
15
- theme: "light" | "dark" | "auto";
16
- language: string;
17
- notificationsEnabled: boolean;
18
- emailNotifications: boolean;
19
- pushNotifications: boolean;
20
- soundEnabled: boolean;
21
- vibrationEnabled: boolean;
22
- privacyMode: boolean;
23
- disclaimerAccepted: boolean;
24
- }>;
25
- resetSettings: () => Promise<UserSettings>;
26
- };
@@ -1,41 +0,0 @@
1
- /**
2
- * useSettingsScreenConfig Hook
3
- *
4
- * One-stop hook for settings screen configuration.
5
- * Handles auth, feedback, and all settings config internally.
6
- * Apps pass subscription config from subscription package.
7
- */
8
- import type { SettingsConfig, SettingsTranslations } from "../screens/types";
9
- import type { FeedbackFormData } from "../utils/config-creators";
10
- import type { AppInfo, FAQData, UserProfileDisplay, AdditionalScreen, AccountConfig } from "../navigation/types";
11
- export interface SettingsFeatures {
12
- notifications?: boolean;
13
- appearance?: boolean;
14
- language?: boolean;
15
- feedback?: boolean;
16
- rating?: boolean;
17
- faqs?: boolean;
18
- about?: boolean;
19
- legal?: boolean;
20
- gamification?: boolean;
21
- videoTutorial?: boolean;
22
- subscription?: boolean;
23
- }
24
- export interface UseSettingsScreenConfigParams {
25
- appInfo: AppInfo;
26
- faqData?: FAQData;
27
- isPremium: boolean;
28
- onFeedbackSubmit: (data: FeedbackFormData) => Promise<void>;
29
- additionalScreens?: AdditionalScreen[];
30
- features?: SettingsFeatures;
31
- translations?: SettingsTranslations;
32
- }
33
- export interface SettingsScreenConfigResult {
34
- settingsConfig: SettingsConfig;
35
- userProfile: UserProfileDisplay;
36
- accountConfig: AccountConfig;
37
- translatedFaqData: FAQData | undefined;
38
- isLoading: boolean;
39
- isAuthReady: boolean;
40
- }
41
- export declare const useSettingsScreenConfig: (params: UseSettingsScreenConfigParams) => SettingsScreenConfigResult;
@@ -1,9 +0,0 @@
1
- /**
2
- * Settings Stack Navigator
3
- *
4
- * Complete settings navigation with all screens.
5
- * Receives appInfo and legalUrls from app.
6
- */
7
- import React from "react";
8
- import type { SettingsStackNavigatorProps } from "./types";
9
- export declare const SettingsStackNavigator: React.FC<SettingsStackNavigatorProps>;
@@ -1,5 +0,0 @@
1
- /**
2
- * Navigation Hooks
3
- */
4
- export { useNavigationHandlers } from "./useNavigationHandlers";
5
- export { useSettingsScreens } from "./useSettingsScreens";
@@ -1,14 +0,0 @@
1
- /**
2
- * Navigation Handlers Hook
3
- * Provides URL handlers and config generation for settings screens
4
- */
5
- import type { AppInfo, LegalUrls } from "../types";
6
- import type { AboutConfig } from "../../../domains/about";
7
- interface NavigationHandlersResult {
8
- handlePrivacyPress: () => void;
9
- handleTermsPress: () => void;
10
- handleEulaPress: () => void;
11
- aboutConfig: AboutConfig;
12
- }
13
- export declare const useNavigationHandlers: (appInfo: AppInfo, legalUrls: LegalUrls, aboutTranslations?: AboutConfig["texts"]) => NavigationHandlersResult;
14
- export {};
@@ -1,22 +0,0 @@
1
- /**
2
- * Typed Settings Navigation Hook
3
- *
4
- * Provides type-safe navigation for Settings stack screens.
5
- * Replaces unsafe `as never` casts throughout the codebase.
6
- */
7
- import type { StackNavigationProp } from '@react-navigation/stack';
8
- import type { SettingsStackParamList } from '../types';
9
- /**
10
- * Type for Settings navigation prop
11
- */
12
- export type SettingsNavigationProp = StackNavigationProp<SettingsStackParamList>;
13
- /**
14
- * Hook to get typed navigation for Settings screens
15
- *
16
- * @example
17
- * ```typescript
18
- * const navigation = useSettingsNavigation();
19
- * navigation.navigate('LanguageSelection'); // Fully typed!
20
- * ```
21
- */
22
- export declare const useSettingsNavigation: () => SettingsNavigationProp;
@@ -1,12 +0,0 @@
1
- import type { StackScreen } from "@umituz/react-native-design-system/molecules";
2
- import type { SettingsStackNavigatorProps } from "../types";
3
- import type { AboutConfig } from "../../../domains/about/domain/entities/AppInfo";
4
- import type { LegalScreenProps } from "../../../domains/legal/presentation/screens/LegalScreen";
5
- import type { NotificationSettingsTranslations, QuietHoursTranslations } from "../../../domains/notifications/infrastructure/services/types";
6
- export interface UseSettingsScreensProps extends SettingsStackNavigatorProps {
7
- aboutConfig: AboutConfig;
8
- legalProps: LegalScreenProps;
9
- notificationTranslations: NotificationSettingsTranslations;
10
- quietHoursTranslations: QuietHoursTranslations;
11
- }
12
- export declare const useSettingsScreens: (props: UseSettingsScreensProps) => StackScreen[];
@@ -1,134 +0,0 @@
1
- /**
2
- * Settings Navigation Types
3
- */
4
- import type React from 'react';
5
- import type { SettingsConfig, CustomSettingsSection } from "../screens/types";
6
- import type { DevSettingsProps } from "../../domains/dev";
7
- import type { FAQCategory } from "../../domains/faqs";
8
- /**
9
- * App Info passed from main app (APP_INFO constant)
10
- */
11
- export interface AppInfo {
12
- name: string;
13
- appName?: string;
14
- version: string;
15
- description?: string;
16
- developer?: string;
17
- contactEmail?: string;
18
- websiteUrl?: string;
19
- websiteDisplay?: string;
20
- moreAppsUrl?: string;
21
- appStoreId?: string;
22
- appStoreUrl?: string;
23
- }
24
- /**
25
- * Legal URLs passed from main app (LEGAL_URLS constant)
26
- */
27
- export interface LegalUrls {
28
- privacy: string;
29
- terms: string;
30
- eula?: string;
31
- }
32
- /**
33
- * Navigation param list
34
- */
35
- export type SettingsStackParamList = {
36
- SettingsMain: undefined;
37
- Appearance: undefined;
38
- About: undefined;
39
- Legal: undefined;
40
- Notifications: undefined;
41
- FAQ: undefined;
42
- LanguageSelection: undefined;
43
- Gamification: undefined;
44
- Account: undefined;
45
- VideoTutorial: undefined;
46
- PasswordPrompt: {
47
- onComplete: (password: string | null) => void;
48
- title?: string;
49
- message?: string;
50
- confirmText?: string;
51
- cancelText?: string;
52
- };
53
- };
54
- /**
55
- * User profile configuration
56
- */
57
- export interface UserProfileDisplay {
58
- displayName?: string;
59
- userId?: string;
60
- isAnonymous?: boolean;
61
- avatarUrl?: string;
62
- accountSettingsRoute?: string;
63
- onPress?: () => void;
64
- anonymousDisplayName?: string;
65
- avatarServiceUrl?: string;
66
- }
67
- /**
68
- * Additional screen configuration
69
- */
70
- export interface AdditionalScreen {
71
- name: string;
72
- component?: React.ComponentType<unknown>;
73
- children?: () => React.ReactElement;
74
- options?: Record<string, unknown>;
75
- }
76
- /**
77
- * FAQ Data passed from main app
78
- */
79
- export interface FAQData {
80
- categories: FAQCategory[];
81
- }
82
- /**
83
- * Account configuration — auth is an optional peer dependency.
84
- * Defined locally so the main package does not require @umituz/react-native-auth.
85
- */
86
- export interface AccountConfig {
87
- profile?: {
88
- displayName?: string;
89
- userId?: string;
90
- isAnonymous?: boolean;
91
- avatarUrl?: string;
92
- accountSettingsRoute?: string;
93
- benefits?: string[];
94
- };
95
- isAnonymous?: boolean;
96
- editProfileText?: string;
97
- onSignIn?: () => void;
98
- PasswordPromptComponent?: React.ReactNode;
99
- accountActions?: {
100
- onLogout?: () => Promise<void>;
101
- onDeleteAccount?: () => Promise<void>;
102
- logoutText?: string;
103
- logoutConfirmTitle?: string;
104
- logoutConfirmMessage?: string;
105
- cancelText?: string;
106
- deleteAccountText?: string;
107
- deleteConfirmTitle?: string;
108
- deleteConfirmMessage?: string;
109
- deleteErrorTitle?: string;
110
- deleteErrorMessage?: string;
111
- };
112
- }
113
- /**
114
- * Settings Stack Navigator Props
115
- */
116
- export interface SettingsStackNavigatorProps {
117
- appInfo: AppInfo;
118
- legalUrls: LegalUrls;
119
- faqData?: FAQData;
120
- config?: SettingsConfig;
121
- showUserProfile?: boolean;
122
- userProfile?: UserProfileDisplay;
123
- accountConfig?: AccountConfig;
124
- additionalScreens?: AdditionalScreen[];
125
- devSettings?: DevSettingsProps;
126
- customSections?: CustomSettingsSection[];
127
- showHeader?: boolean;
128
- /** Show close button in header (useful for modal presentation) */
129
- showCloseButton?: boolean;
130
- /** Custom close handler */
131
- onClose?: () => void;
132
- gamificationConfig?: import("../../domains/gamification").GamificationSettingsConfig;
133
- videoTutorialConfig?: import("../../domains/video-tutorials").VideoTutorialsScreenProps;
134
- }
@@ -1,5 +0,0 @@
1
- /**
2
- * Navigation Utilities
3
- */
4
- export { createRouteOrPressHandler } from './navigationHelpers';
5
- export { createNotificationTranslations, createQuietHoursTranslations, createLegalScreenProps } from './navigationTranslations';
@@ -1,13 +0,0 @@
1
- /**
2
- * Navigation Helper Utilities
3
- * Type-safe navigation handling to eliminate type casting
4
- */
5
- import type { SettingsStackParamList } from '../types';
6
- type NavigateFunction = <RouteName extends keyof SettingsStackParamList>(route: RouteName, params?: SettingsStackParamList[RouteName]) => void;
7
- interface RouteOrPressConfig<T extends keyof SettingsStackParamList = keyof SettingsStackParamList> {
8
- route?: T;
9
- onPress?: () => void;
10
- fallback?: T;
11
- }
12
- export declare const createRouteOrPressHandler: <T extends keyof SettingsStackParamList>(navigate: NavigateFunction, config: RouteOrPressConfig<T>) => () => void;
13
- export {};
@@ -1,35 +0,0 @@
1
- import type { SettingsTranslations } from "../../screens/types";
2
- export declare const createNotificationTranslations: (translations?: SettingsTranslations["features"]) => {
3
- screenTitle: string;
4
- masterToggleTitle: string;
5
- masterToggleDescription: string;
6
- soundTitle: string;
7
- soundDescription: string;
8
- vibrationTitle: string;
9
- vibrationDescription: string;
10
- remindersTitle: string;
11
- remindersDescription: string;
12
- quietHoursTitle: string;
13
- quietHoursDescription: string;
14
- };
15
- export declare const createQuietHoursTranslations: (translations?: SettingsTranslations["features"]) => {
16
- title: string;
17
- description: string;
18
- startTimeLabel: string;
19
- endTimeLabel: string;
20
- enabledLabel: string;
21
- };
22
- export declare const createLegalScreenProps: (translations: SettingsTranslations["features"], handlePrivacyPress: () => void, handleTermsPress: () => void, handleEulaPress: () => void) => {
23
- title: string;
24
- description: string;
25
- documentsHeader: string;
26
- privacyTitle: string;
27
- privacyDescription: string;
28
- termsTitle: string;
29
- termsDescription: string;
30
- eulaTitle: string;
31
- eulaDescription: string;
32
- onPrivacyPress: () => void;
33
- onTermsPress: () => void;
34
- onEulaPress: () => void;
35
- };
@@ -1,6 +0,0 @@
1
- /**
2
- * Appearance Settings Screen
3
- * Advanced appearance settings with theme customization and custom colors
4
- * Now uses consolidated appearance domain
5
- */
6
- export { AppearanceScreen } from "../../domains/appearance/presentation/screens/AppearanceScreen";
@@ -1,49 +0,0 @@
1
- /**
2
- * Settings Screen
3
- * Presentation layer - Composition only, no business logic
4
- */
5
- import React from "react";
6
- import type { SettingsConfig, CustomSettingsSection } from "./types";
7
- import type { DevSettingsProps } from "../../domains/dev";
8
- export interface SettingsScreenProps {
9
- children?: React.ReactNode;
10
- config?: SettingsConfig;
11
- /** Show user profile header */
12
- showUserProfile?: boolean;
13
- /** User profile props */
14
- userProfile?: {
15
- displayName?: string;
16
- userId?: string;
17
- isAnonymous?: boolean;
18
- avatarUrl?: string;
19
- accountSettingsRoute?: string;
20
- onPress?: () => void;
21
- anonymousDisplayName?: string;
22
- avatarServiceUrl?: string;
23
- };
24
- /** Show footer with version */
25
- showFooter?: boolean;
26
- /** Custom footer text (overrides appVersion) */
27
- footerText?: string;
28
- /** App version number from app config (e.g., "1.0.0") */
29
- appVersion?: string;
30
- /** Custom sections to render */
31
- customSections?: CustomSettingsSection[];
32
- /** Show close button in header */
33
- showCloseButton?: boolean;
34
- /** Custom close handler */
35
- onClose?: () => void;
36
- /** Feature detection options */
37
- featureOptions?: {
38
- notificationServiceAvailable?: boolean;
39
- };
40
- /** Dev settings (only shown in __DEV__ mode) */
41
- devSettings?: DevSettingsProps;
42
- /** Gamification configuration */
43
- gamificationConfig?: import("../../domains/gamification").GamificationSettingsConfig;
44
- /** Show header (default: true) */
45
- showHeader?: boolean;
46
- /** Password prompt modal component */
47
- PasswordPromptComponent?: React.ReactNode;
48
- }
49
- export declare const SettingsScreen: React.FC<SettingsScreenProps>;
@@ -1,3 +0,0 @@
1
- import React from "react";
2
- import type { SettingsContentProps } from "./types/SettingsContentProps";
3
- export declare const SettingsContent: React.FC<SettingsContentProps>;
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- interface SettingsHeaderProps {
3
- showCloseButton?: boolean;
4
- onClose?: () => void;
5
- title?: string;
6
- }
7
- export declare const SettingsHeader: React.FC<SettingsHeaderProps>;
8
- export {};
@@ -1,7 +0,0 @@
1
- import React from "react";
2
- import type { CustomSettingsSection } from "../../types";
3
- interface CustomSettingsListProps {
4
- customSections?: CustomSettingsSection[];
5
- }
6
- export declare const CustomSettingsList: React.FC<CustomSettingsListProps>;
7
- export {};
@@ -1,13 +0,0 @@
1
- import React from "react";
2
- import type { NormalizedConfig } from "../../utils/normalizeConfig";
3
- interface FeatureSettingsSectionProps {
4
- normalizedConfig: NormalizedConfig;
5
- features: {
6
- appearance: boolean;
7
- language: boolean;
8
- notifications: boolean;
9
- };
10
- currentLanguage?: string;
11
- }
12
- export declare const FeatureSettingsSection: React.FC<FeatureSettingsSectionProps>;
13
- export {};
@@ -1,12 +0,0 @@
1
- import React from "react";
2
- import type { NormalizedConfig } from "../../utils/normalizeConfig";
3
- interface IdentitySettingsSectionProps {
4
- normalizedConfig: NormalizedConfig;
5
- features: {
6
- about: boolean;
7
- legal: boolean;
8
- [key: string]: boolean;
9
- };
10
- }
11
- export declare const IdentitySettingsSection: React.FC<IdentitySettingsSectionProps>;
12
- export {};
@@ -1,17 +0,0 @@
1
- import React from "react";
2
- export interface ProfileSectionLoaderProps {
3
- userProfile?: {
4
- displayName?: string;
5
- userId?: string;
6
- isAnonymous?: boolean;
7
- avatarUrl?: string;
8
- accountSettingsRoute?: string;
9
- onPress?: () => void;
10
- benefits?: string[];
11
- };
12
- translations?: {
13
- anonymousName?: string;
14
- signIn?: string;
15
- };
16
- }
17
- export declare const ProfileSectionLoader: React.FC<ProfileSectionLoaderProps>;
@@ -1,13 +0,0 @@
1
- import React from "react";
2
- import type { NormalizedConfig } from "../../utils/normalizeConfig";
3
- interface SupportSettingsSectionProps {
4
- features: {
5
- feedback: boolean;
6
- rating: boolean;
7
- faqs: boolean;
8
- [key: string]: boolean;
9
- };
10
- normalizedConfig: NormalizedConfig;
11
- }
12
- export declare const SupportSettingsSection: React.FC<SupportSettingsSectionProps>;
13
- export {};
@@ -1,47 +0,0 @@
1
- /**
2
- * Settings Content Component Props
3
- */
4
- import type { NormalizedConfig } from "../../utils/normalizeConfig";
5
- import type { CustomSettingsSection } from "../../types";
6
- import type { DevSettingsProps } from "../../../../domains/dev";
7
- import type { GamificationSettingsConfig } from "../../../../domains/gamification";
8
- export interface SettingsContentFeatures {
9
- [key: string]: boolean;
10
- appearance: boolean;
11
- language: boolean;
12
- notifications: boolean;
13
- about: boolean;
14
- legal: boolean;
15
- disclaimer: boolean;
16
- userProfile: boolean;
17
- feedback: boolean;
18
- rating: boolean;
19
- faqs: boolean;
20
- subscription: boolean;
21
- wallet: boolean;
22
- gamification: boolean;
23
- videoTutorial: boolean;
24
- }
25
- export interface SettingsContentUserProfile {
26
- displayName?: string;
27
- userId?: string;
28
- isAnonymous?: boolean;
29
- avatarUrl?: string;
30
- accountSettingsRoute?: string;
31
- onPress?: () => void;
32
- anonymousDisplayName?: string;
33
- avatarServiceUrl?: string;
34
- }
35
- export interface SettingsContentProps {
36
- normalizedConfig: NormalizedConfig;
37
- features: SettingsContentFeatures;
38
- showUserProfile?: boolean;
39
- userProfile?: SettingsContentUserProfile;
40
- showFooter?: boolean;
41
- footerText?: string;
42
- appVersion?: string;
43
- customSections?: CustomSettingsSection[];
44
- emptyStateText?: string;
45
- devSettings?: DevSettingsProps;
46
- gamificationConfig?: GamificationSettingsConfig;
47
- }