@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,46 +0,0 @@
1
- /**
2
- * Notifications Package - Public API
3
- * Offline-first local notifications using expo-notifications
4
- */
5
- export type { NotificationTrigger, ScheduleNotificationOptions, ScheduledNotification, TimePreset, ReminderFrequency, Reminder, CreateReminderInput, UpdateReminderInput, QuietHoursConfig, NotificationPreferences, ReminderTranslations, QuietHoursTranslations, NotificationSettingsTranslations, } from './infrastructure/services/types';
6
- export { notificationsConfig } from './infrastructure/config/notificationsConfig';
7
- export type { NotificationSetting, NotificationSection, NotificationsConfig, } from './infrastructure/config/notificationsConfig';
8
- export { DEFAULT_TIME_PRESETS, FREQUENCY_OPTIONS, WEEKDAY_OPTIONS, getTimePresetById, formatTime, parseTime, } from './reminders/infrastructure/config/reminderPresets';
9
- export type { FrequencyOption, WeekdayOption } from './reminders/infrastructure/config/reminderPresets';
10
- export { NotificationService, notificationService } from './infrastructure/services/NotificationService';
11
- export { NotificationManager } from './infrastructure/services/NotificationManager';
12
- export { useNotificationStore, useNotificationPermissions, useNotificationInitialized, useNotificationPreferences, useQuietHours, useReminders, useEnabledReminders, useReminderById, useRemindersLoading, useRemindersInitialized, } from './infrastructure/storage/UnifiedNotificationStore';
13
- export { useNotificationSettings } from './infrastructure/hooks/useNotificationSettings';
14
- export { useReminderActions } from './reminders/infrastructure/hooks/useReminderActions';
15
- export { useQuietHoursActions } from './quietHours/infrastructure/hooks/useQuietHoursActions';
16
- export { useNotificationSettingsUI } from './presentation/hooks/useNotificationSettingsUI';
17
- export { NotificationsScreen } from './presentation/screens/NotificationsScreen';
18
- export type { NotificationsScreenProps } from './presentation/screens/NotificationsScreen';
19
- export { NotificationSettingsScreen } from './presentation/screens/NotificationSettingsScreen';
20
- export type { NotificationSettingsScreenProps } from './presentation/screens/NotificationSettingsScreen';
21
- export { ReminderListScreen } from './reminders/presentation/screens/ReminderListScreen';
22
- export type { ReminderListScreenProps } from './reminders/presentation/screens/ReminderListScreen';
23
- export { NotificationsSection } from './presentation/components/NotificationsSection';
24
- export type { NotificationsSectionProps, NotificationsSectionConfig } from './presentation/components/NotificationsSection';
25
- export { TimePresetSelector } from './reminders/presentation/components/TimePresetSelector';
26
- export type { TimePresetSelectorProps } from './reminders/presentation/components/TimePresetSelector';
27
- export { FrequencySelector } from './reminders/presentation/components/FrequencySelector';
28
- export type { FrequencySelectorProps } from './reminders/presentation/components/FrequencySelector';
29
- export { WeekdaySelector } from './reminders/presentation/components/WeekdaySelector';
30
- export type { WeekdaySelectorProps } from './reminders/presentation/components/WeekdaySelector';
31
- export { ReminderItem } from './reminders/presentation/components/ReminderItem';
32
- export type { ReminderItemProps, ReminderItemTranslations } from './reminders/presentation/components/ReminderItem';
33
- export { ReminderForm } from './reminders/presentation/components/ReminderForm';
34
- export type { ReminderFormProps, ReminderFormTranslations } from './reminders/presentation/components/ReminderForm.constants';
35
- export { FormButton } from './reminders/presentation/components/FormButton';
36
- export type { FormButtonProps } from './reminders/presentation/components/FormButton';
37
- export { QuietHoursCard } from './quietHours/presentation/components/QuietHoursCard';
38
- export type { QuietHoursCardProps } from './quietHours/presentation/components/QuietHoursCard';
39
- export { RemindersNavRow } from './presentation/components/RemindersNavRow';
40
- export type { RemindersNavRowProps } from './presentation/components/RemindersNavRow';
41
- export { SettingRow } from './presentation/components/SettingRow';
42
- export type { SettingRowProps } from './presentation/components/SettingRow';
43
- export { generateId, generateReminderId } from './infrastructure/utils/idGenerator';
44
- export { buildTrigger } from './infrastructure/utils/triggerBuilder';
45
- export { useTimePicker } from './presentation/hooks/useTimePicker';
46
- export type { PickerMode, UseTimePickerParams, TimePickerHandlers } from './presentation/hooks/useTimePicker';
@@ -1,19 +0,0 @@
1
- /**
2
- * Notifications Configuration
3
- * Defines notification settings structure
4
- */
5
- export interface NotificationSetting {
6
- id: string;
7
- titleKey: string;
8
- descKey: string;
9
- icon: string;
10
- }
11
- export interface NotificationSection {
12
- id: string;
13
- titleKey: string;
14
- settings: NotificationSetting[];
15
- }
16
- export interface NotificationsConfig {
17
- sections: NotificationSection[];
18
- }
19
- export declare const notificationsConfig: NotificationsConfig;
@@ -1,8 +0,0 @@
1
- /**
2
- * Simple notification settings hook
3
- */
4
- export declare const useNotificationSettings: () => {
5
- notificationsEnabled: boolean;
6
- setNotificationsEnabled: (value: boolean) => void;
7
- isLoading: boolean;
8
- };
@@ -1,4 +0,0 @@
1
- export declare class NotificationBadgeManager {
2
- getBadgeCount(): Promise<number>;
3
- setBadgeCount(count: number): Promise<void>;
4
- }
@@ -1,23 +0,0 @@
1
- /**
2
- * NotificationManager - Core Notification Operations
3
- *
4
- * Offline-first notification system using expo-notifications.
5
- * Works in ALL apps (offline, online, hybrid) - no backend required.
6
- */
7
- import type { ScheduleNotificationOptions, ScheduledNotification } from './types';
8
- export declare class NotificationManager {
9
- private permissions;
10
- private scheduler;
11
- private badgeManager;
12
- constructor();
13
- static configure(): void;
14
- requestPermissions(): Promise<boolean>;
15
- hasPermissions(): Promise<boolean>;
16
- scheduleNotification(options: ScheduleNotificationOptions): Promise<string>;
17
- cancelNotification(notificationId: string): Promise<void>;
18
- cancelAllNotifications(): Promise<void>;
19
- getScheduledNotifications(): Promise<ScheduledNotification[]>;
20
- dismissAllNotifications(): Promise<void>;
21
- getBadgeCount(): Promise<number>;
22
- setBadgeCount(count: number): Promise<void>;
23
- }
@@ -1,5 +0,0 @@
1
- export declare class NotificationPermissions {
2
- requestPermissions(): Promise<boolean>;
3
- hasPermissions(): Promise<boolean>;
4
- private createAndroidChannels;
5
- }
@@ -1,7 +0,0 @@
1
- import type { ScheduleNotificationOptions, ScheduledNotification } from './types';
2
- export declare class NotificationScheduler {
3
- scheduleNotification(options: ScheduleNotificationOptions): Promise<string>;
4
- cancelNotification(notificationId: string): Promise<void>;
5
- cancelAllNotifications(): Promise<void>;
6
- getScheduledNotifications(): Promise<ScheduledNotification[]>;
7
- }
@@ -1,31 +0,0 @@
1
- /**
2
- * NotificationService
3
- *
4
- * Simple facade for offline notification system.
5
- * Works in ALL apps - offline, online, hybrid - no backend required.
6
- *
7
- * @module NotificationService
8
- */
9
- import { NotificationManager } from './NotificationManager';
10
- export * from './types';
11
- /**
12
- * Notification service singleton
13
- * Provides simple access to notification manager
14
- */
15
- export declare class NotificationService {
16
- private static instance;
17
- private isConfigured;
18
- readonly notifications: NotificationManager;
19
- private constructor();
20
- private ensureConfigured;
21
- static getInstance(): NotificationService;
22
- /**
23
- * Request notification permissions
24
- */
25
- requestPermissions(): Promise<boolean>;
26
- /**
27
- * Check if permissions are granted
28
- */
29
- hasPermissions(): Promise<boolean>;
30
- }
31
- export declare const notificationService: NotificationService;
@@ -1,147 +0,0 @@
1
- /**
2
- * Offline-First Notification Types
3
- * Uses expo-notifications for local device notifications
4
- */
5
- import * as Notifications from 'expo-notifications';
6
- export interface NotificationChannel {
7
- id: string;
8
- channel_type: 'push' | 'in_app';
9
- channel_address: string;
10
- preferences: Record<string, unknown>;
11
- is_verified: boolean;
12
- is_active: boolean;
13
- created_at: string;
14
- }
15
- export type NotificationTrigger = {
16
- type: 'date';
17
- date: Date;
18
- } | {
19
- type: 'daily';
20
- hour: number;
21
- minute: number;
22
- } | {
23
- type: 'weekly';
24
- weekday: number;
25
- hour: number;
26
- minute: number;
27
- } | {
28
- type: 'monthly';
29
- day: number;
30
- hour: number;
31
- minute: number;
32
- };
33
- export type NotificationData = Record<string, string | number | boolean | null>;
34
- export interface ScheduleNotificationOptions {
35
- title: string;
36
- body: string;
37
- data?: NotificationData;
38
- trigger: NotificationTrigger;
39
- sound?: boolean | string;
40
- badge?: number;
41
- categoryIdentifier?: string;
42
- }
43
- export interface ScheduledNotification {
44
- identifier: string;
45
- content: {
46
- title: string;
47
- body: string;
48
- data: NotificationData;
49
- };
50
- trigger: Notifications.NotificationTrigger;
51
- }
52
- export interface TimePreset {
53
- id: string;
54
- hour: number;
55
- minute: number;
56
- labelKey: string;
57
- iconName: string;
58
- }
59
- export type ReminderFrequency = 'once' | 'daily' | 'weekly' | 'monthly';
60
- export interface Reminder {
61
- id: string;
62
- title: string;
63
- body: string;
64
- frequency: ReminderFrequency;
65
- timePresetId?: string;
66
- hour: number;
67
- minute: number;
68
- weekday?: number;
69
- dayOfMonth?: number;
70
- enabled: boolean;
71
- notificationId?: string;
72
- createdAt: string;
73
- updatedAt: string;
74
- }
75
- export interface CreateReminderInput {
76
- title: string;
77
- body: string;
78
- frequency: ReminderFrequency;
79
- timePresetId?: string;
80
- hour: number;
81
- minute: number;
82
- weekday?: number;
83
- dayOfMonth?: number;
84
- }
85
- export interface UpdateReminderInput {
86
- title?: string;
87
- body?: string;
88
- frequency?: ReminderFrequency;
89
- timePresetId?: string;
90
- hour?: number;
91
- minute?: number;
92
- weekday?: number;
93
- dayOfMonth?: number;
94
- enabled?: boolean;
95
- }
96
- export interface QuietHoursConfig {
97
- enabled: boolean;
98
- startHour: number;
99
- startMinute: number;
100
- endHour: number;
101
- endMinute: number;
102
- }
103
- export interface NotificationPreferences {
104
- enabled: boolean;
105
- sound: boolean;
106
- vibration: boolean;
107
- quietHours: QuietHoursConfig;
108
- }
109
- export interface ReminderTranslations {
110
- screenTitle: string;
111
- emptyTitle: string;
112
- emptyDescription: string;
113
- addButtonLabel: string;
114
- editButtonLabel: string;
115
- deleteButtonLabel: string;
116
- enabledLabel: string;
117
- disabledLabel: string;
118
- frequencyOnce: string;
119
- frequencyDaily: string;
120
- frequencyWeekly: string;
121
- frequencyMonthly: string;
122
- timeLabel: string;
123
- titlePlaceholder: string;
124
- bodyPlaceholder: string;
125
- saveButtonLabel: string;
126
- cancelButtonLabel: string;
127
- }
128
- export interface QuietHoursTranslations {
129
- title: string;
130
- description: string;
131
- startTimeLabel: string;
132
- endTimeLabel: string;
133
- enabledLabel: string;
134
- }
135
- export interface NotificationSettingsTranslations {
136
- screenTitle: string;
137
- masterToggleTitle: string;
138
- masterToggleDescription: string;
139
- soundTitle: string;
140
- soundDescription: string;
141
- vibrationTitle: string;
142
- vibrationDescription: string;
143
- remindersTitle: string;
144
- remindersDescription: string;
145
- quietHoursTitle: string;
146
- quietHoursDescription: string;
147
- }
@@ -1,42 +0,0 @@
1
- /**
2
- * Unified Notification Store
3
- * Consolidates NotificationsStore, RemindersStore, and PreferencesStore
4
- *
5
- * Production-ready implementation with:
6
- * - Single source of truth for all notification state
7
- * - Proper state partializing (transient vs persistent)
8
- * - Type-safe actions and selectors
9
- * - Data migration support
10
- */
11
- import type { Reminder, QuietHoursConfig, NotificationPreferences } from '../services/types';
12
- interface NotificationState {
13
- hasPermissions: boolean;
14
- isInitialized: boolean;
15
- isLoading: boolean;
16
- preferences: NotificationPreferences;
17
- reminders: Reminder[];
18
- }
19
- interface NotificationActions {
20
- setPermissions: (granted: boolean) => void;
21
- setInitialized: (initialized: boolean) => void;
22
- initialize: () => void;
23
- updatePreferences: (updates: Partial<NotificationPreferences>) => void;
24
- updateQuietHours: (quietHours: QuietHoursConfig) => void;
25
- addReminder: (reminder: Reminder) => void;
26
- updateReminder: (id: string, updates: Partial<Reminder>) => void;
27
- deleteReminder: (id: string) => void;
28
- toggleReminder: (id: string) => void;
29
- reset: () => void;
30
- resetReminders: () => void;
31
- }
32
- export declare const useNotificationStore: import("zustand").UseBoundStore<import("zustand").StoreApi<NotificationState & NotificationActions>>;
33
- export declare const useNotificationPermissions: () => boolean;
34
- export declare const useNotificationInitialized: () => boolean;
35
- export declare const useRemindersLoading: () => boolean;
36
- export declare const useRemindersInitialized: () => boolean;
37
- export declare const useNotificationPreferences: () => NotificationPreferences;
38
- export declare const useQuietHours: () => QuietHoursConfig;
39
- export declare const useReminders: () => Reminder[];
40
- export declare const useEnabledReminders: () => Reminder[];
41
- export declare const useReminderById: (id: string) => Reminder;
42
- export {};
@@ -1,6 +0,0 @@
1
- /**
2
- * ID Generator Utility
3
- * Generates unique IDs for entities
4
- */
5
- export declare const generateId: (prefix?: string) => string;
6
- export declare const generateReminderId: () => string;
@@ -1,6 +0,0 @@
1
- /**
2
- * Trigger Builder Utility
3
- * Builds notification triggers from reminder data
4
- */
5
- import type { NotificationTrigger, Reminder } from '../services/types';
6
- export declare const buildTrigger: (reminder: Reminder) => NotificationTrigger;
@@ -1,16 +0,0 @@
1
- import React from 'react';
2
- import type { StyleProp, ViewStyle } from 'react-native';
3
- export interface NotificationsSectionConfig {
4
- route?: string;
5
- onPress?: () => void;
6
- title?: string;
7
- description?: string;
8
- sectionTitle?: string;
9
- }
10
- export interface NotificationsSectionProps {
11
- config?: NotificationsSectionConfig;
12
- containerStyle?: StyleProp<ViewStyle>;
13
- noBackground?: boolean;
14
- hideMargin?: boolean;
15
- }
16
- export declare const NotificationsSection: React.FC<NotificationsSectionProps>;
@@ -1,12 +0,0 @@
1
- /**
2
- * RemindersNavRow Component
3
- * Reusable navigation row for reminders section with badge
4
- */
5
- import React from 'react';
6
- export interface RemindersNavRowProps {
7
- title: string;
8
- description: string;
9
- count: number;
10
- onPress: () => void;
11
- }
12
- export declare const RemindersNavRow: React.FC<RemindersNavRowProps>;
@@ -1,34 +0,0 @@
1
- /**
2
- * RemindersNavRow Styles
3
- */
4
- import type { DesignTokens } from '@umituz/react-native-design-system/theme';
5
- export declare const createStyles: (tokens: DesignTokens) => {
6
- navRow: {
7
- flexDirection: "row";
8
- alignItems: "center";
9
- };
10
- iconContainer: {
11
- width: number;
12
- height: number;
13
- borderRadius: number;
14
- backgroundColor: string;
15
- justifyContent: "center";
16
- alignItems: "center";
17
- marginRight: number;
18
- };
19
- textContainer: {
20
- flex: number;
21
- marginRight: number;
22
- };
23
- badge: {
24
- backgroundColor: string;
25
- paddingHorizontal: number;
26
- paddingVertical: number;
27
- borderRadius: number;
28
- marginRight: number;
29
- };
30
- badgeText: {
31
- color: string;
32
- fontWeight: "600";
33
- };
34
- };
@@ -1,14 +0,0 @@
1
- /**
2
- * Setting Row Component
3
- * Reusable toggle row for settings
4
- */
5
- import React from 'react';
6
- export interface SettingRowProps {
7
- iconName: string;
8
- title: string;
9
- description: string;
10
- value: boolean;
11
- onToggle: (value: boolean) => void;
12
- onHapticFeedback?: () => void;
13
- }
14
- export declare const SettingRow: React.FC<SettingRowProps>;
@@ -1,13 +0,0 @@
1
- /**
2
- * useNotificationSettingsUI Hook
3
- * Handles all business logic for notification settings screen
4
- */
5
- export declare const useNotificationSettingsUI: () => {
6
- preferences: import("../..").NotificationPreferences;
7
- quietHours: import("../..").QuietHoursConfig;
8
- isLoading: boolean;
9
- handleMasterToggle: (value: boolean) => Promise<void>;
10
- handleSoundToggle: (value: boolean) => Promise<void>;
11
- handleVibrationToggle: (value: boolean) => Promise<void>;
12
- handleQuietHoursToggle: (value: boolean) => Promise<void>;
13
- };
@@ -1,21 +0,0 @@
1
- /**
2
- * useTimePicker Hook
3
- * Encapsulates DateTimePicker logic for notification settings
4
- */
5
- import type { QuietHoursConfig } from '../../infrastructure/services/types';
6
- export type PickerMode = 'start' | 'end' | null;
7
- export interface UseTimePickerParams {
8
- quietHours: QuietHoursConfig;
9
- onStartTimeChange: (hours: number, minutes: number) => void;
10
- onEndTimeChange: (hours: number, minutes: number) => void;
11
- }
12
- export interface TimePickerHandlers {
13
- pickerMode: PickerMode;
14
- handleStartTimePress: () => void;
15
- handleEndTimePress: () => void;
16
- handleTimeChange: (event: {
17
- type: string;
18
- }, selectedDate?: Date) => void;
19
- getPickerDate: () => Date;
20
- }
21
- export declare const useTimePicker: ({ quietHours, onStartTimeChange, onEndTimeChange, }: UseTimePickerParams) => TimePickerHandlers;
@@ -1,12 +0,0 @@
1
- /**
2
- * NotificationSettingsScreen
3
- * Clean presentation-only screen for notification settings
4
- */
5
- import React from 'react';
6
- import type { NotificationSettingsTranslations, QuietHoursTranslations } from '../../infrastructure/services/types';
7
- export interface NotificationSettingsScreenProps {
8
- translations: NotificationSettingsTranslations;
9
- quietHoursTranslations: QuietHoursTranslations;
10
- onHapticFeedback?: () => void;
11
- }
12
- export declare const NotificationSettingsScreen: React.FC<NotificationSettingsScreenProps>;
@@ -1,26 +0,0 @@
1
- /**
2
- * NotificationSettingsScreen Styles
3
- * Extracted styles for better organization and maintainability
4
- */
5
- import type { DesignTokens } from '@umituz/react-native-design-system/theme';
6
- export declare const createStyles: (tokens: DesignTokens) => {
7
- container: {
8
- flex: number;
9
- padding: number;
10
- };
11
- loadingContainer: {
12
- flex: number;
13
- justifyContent: "center";
14
- alignItems: "center";
15
- };
16
- card: {
17
- marginBottom: number;
18
- padding: number;
19
- backgroundColor: string;
20
- };
21
- divider: {
22
- height: number;
23
- backgroundColor: string;
24
- marginVertical: number;
25
- };
26
- };
@@ -1,18 +0,0 @@
1
- /**
2
- * Notifications Screen - Dynamic and Reusable
3
- *
4
- * A clean notification settings screen that accepts all text and configuration
5
- * as props to make it completely reusable across different applications.
6
- */
7
- import React from 'react';
8
- export interface NotificationsScreenProps {
9
- translations: {
10
- title: string;
11
- description: string;
12
- loadingText?: string;
13
- };
14
- iconName?: string;
15
- iconColor?: string;
16
- testID?: string;
17
- }
18
- export declare const NotificationsScreen: React.FC<NotificationsScreenProps>;
@@ -1,13 +0,0 @@
1
- /**
2
- * useQuietHoursActions Hook
3
- * Manages quiet hours configuration
4
- */
5
- import type { QuietHoursConfig } from '../../../infrastructure/services/types';
6
- export declare const useQuietHoursActions: () => {
7
- quietHours: QuietHoursConfig;
8
- setQuietHoursEnabled: (enabled: boolean) => Promise<void>;
9
- setStartTime: (hour: number, minute: number) => Promise<void>;
10
- setEndTime: (hour: number, minute: number) => Promise<void>;
11
- setQuietHours: (config: QuietHoursConfig) => Promise<void>;
12
- isInQuietHours: () => boolean;
13
- };
@@ -1,14 +0,0 @@
1
- /**
2
- * QuietHoursCard Component
3
- * Displays and manages quiet hours settings
4
- */
5
- import React from 'react';
6
- import type { QuietHoursConfig, QuietHoursTranslations } from '../../../infrastructure/services/types';
7
- export interface QuietHoursCardProps {
8
- config: QuietHoursConfig;
9
- translations: QuietHoursTranslations;
10
- onToggle: (enabled: boolean) => void;
11
- onStartTimePress: () => void;
12
- onEndTimePress: () => void;
13
- }
14
- export declare const QuietHoursCard: React.FC<QuietHoursCardProps>;
@@ -1,24 +0,0 @@
1
- /**
2
- * Reminder Presets Configuration
3
- * Default time presets and frequency options for reminders
4
- */
5
- import type { TimePreset, ReminderFrequency } from '../../../infrastructure/services/types';
6
- export declare const DEFAULT_TIME_PRESETS: TimePreset[];
7
- export interface FrequencyOption {
8
- id: ReminderFrequency;
9
- labelKey: string;
10
- iconName: string;
11
- }
12
- export declare const FREQUENCY_OPTIONS: FrequencyOption[];
13
- export interface WeekdayOption {
14
- id: number;
15
- labelKey: string;
16
- shortLabelKey: string;
17
- }
18
- export declare const WEEKDAY_OPTIONS: WeekdayOption[];
19
- export declare const getTimePresetById: (id: string) => TimePreset | undefined;
20
- export declare const formatTime: (hour: number, minute: number) => string;
21
- export declare const parseTime: (timeString: string) => {
22
- hour: number;
23
- minute: number;
24
- };
@@ -1,11 +0,0 @@
1
- /**
2
- * useReminderActions Hook
3
- * Handles reminder CRUD operations with notification scheduling
4
- */
5
- import type { Reminder, CreateReminderInput, UpdateReminderInput } from '../../../infrastructure/services/types';
6
- export declare const useReminderActions: () => {
7
- createReminder: (input: CreateReminderInput) => Promise<Reminder>;
8
- editReminder: (id: string, input: UpdateReminderInput) => Promise<void>;
9
- removeReminder: (id: string) => Promise<void>;
10
- toggleReminderEnabled: (id: string) => Promise<void>;
11
- };
@@ -1,12 +0,0 @@
1
- /**
2
- * FormButton Component
3
- * Simple button for forms
4
- */
5
- import React from 'react';
6
- export interface FormButtonProps {
7
- label: string;
8
- onPress: () => void;
9
- variant?: 'primary' | 'secondary';
10
- disabled?: boolean;
11
- }
12
- export declare const FormButton: React.FC<FormButtonProps>;
@@ -1,14 +0,0 @@
1
- /**
2
- * FrequencySelector Component
3
- * Allows selection of reminder frequency
4
- */
5
- import React from 'react';
6
- import type { ReminderFrequency } from '../../../infrastructure/services/types';
7
- import type { FrequencyOption } from '../../infrastructure/config/reminderPresets';
8
- export interface FrequencySelectorProps {
9
- options: FrequencyOption[];
10
- selectedFrequency: ReminderFrequency;
11
- onSelect: (frequency: ReminderFrequency) => void;
12
- getLabel: (labelKey: string) => string;
13
- }
14
- export declare const FrequencySelector: React.FC<FrequencySelectorProps>;