@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.
- package/package.json +1 -1
- package/LICENSE +0 -21
- package/README.md +0 -355
- package/dist/account.d.ts +0 -27
- package/dist/application/ports/ISettingsRepository.d.ts +0 -45
- package/dist/domains/about/domain/entities/AppInfo.d.ts +0 -76
- package/dist/domains/about/domain/repositories/IAboutRepository.d.ts +0 -19
- package/dist/domains/about/index.d.ts +0 -10
- package/dist/domains/about/infrastructure/repositories/AboutRepository.d.ts +0 -18
- package/dist/domains/about/presentation/components/AboutContent.d.ts +0 -14
- package/dist/domains/about/presentation/components/AboutHeader.d.ts +0 -21
- package/dist/domains/about/presentation/components/AboutSection.d.ts +0 -14
- package/dist/domains/about/presentation/components/AboutSettingItem.d.ts +0 -39
- package/dist/domains/about/presentation/hooks/useAboutInfo.d.ts +0 -2
- package/dist/domains/about/presentation/hooks/useAboutInfo.types.d.ts +0 -29
- package/dist/domains/about/presentation/screens/AboutScreen.d.ts +0 -21
- package/dist/domains/about/presentation/screens/AboutScreenContent.d.ts +0 -15
- package/dist/domains/about/utils/AppInfoFactory.d.ts +0 -9
- package/dist/domains/appearance/data/colorPalettes.d.ts +0 -25
- package/dist/domains/appearance/hooks/useAppearance.d.ts +0 -11
- package/dist/domains/appearance/hooks/useAppearanceActions.d.ts +0 -9
- package/dist/domains/appearance/index.d.ts +0 -9
- package/dist/domains/appearance/presentation/components/AppearanceHeader.d.ts +0 -18
- package/dist/domains/appearance/presentation/components/AppearancePreview.d.ts +0 -21
- package/dist/domains/appearance/presentation/components/AppearanceSection.d.ts +0 -16
- package/dist/domains/appearance/presentation/components/ColorPicker.d.ts +0 -15
- package/dist/domains/appearance/presentation/components/CustomColorsSection.d.ts +0 -25
- package/dist/domains/appearance/presentation/components/ThemeModeSection.d.ts +0 -24
- package/dist/domains/appearance/presentation/components/ThemeOption.d.ts +0 -20
- package/dist/domains/appearance/presentation/components/index.d.ts +0 -6
- package/dist/domains/appearance/presentation/screens/AppearanceScreen.d.ts +0 -16
- package/dist/domains/appearance/types/index.d.ts +0 -48
- package/dist/domains/cloud-sync/index.d.ts +0 -6
- package/dist/domains/cloud-sync/presentation/components/CloudSyncSetting.d.ts +0 -14
- package/dist/domains/dev/index.d.ts +0 -14
- package/dist/domains/dev/presentation/components/DevSettingsSection.d.ts +0 -34
- package/dist/domains/dev/presentation/components/EnvViewerSetting.d.ts +0 -20
- package/dist/domains/dev/presentation/components/StorageClearSetting.d.ts +0 -13
- package/dist/domains/dev/presentation/screens/EnvViewerScreen.d.ts +0 -12
- package/dist/domains/dev/types.d.ts +0 -22
- package/dist/domains/disclaimer/index.d.ts +0 -17
- package/dist/domains/disclaimer/presentation/components/DisclaimerCard.d.ts +0 -14
- package/dist/domains/disclaimer/presentation/components/DisclaimerModal.d.ts +0 -12
- package/dist/domains/disclaimer/presentation/components/DisclaimerSetting.d.ts +0 -34
- package/dist/domains/disclaimer/presentation/screens/DisclaimerScreen.d.ts +0 -27
- package/dist/domains/faqs/domain/entities/FAQEntity.d.ts +0 -21
- package/dist/domains/faqs/domain/services/FAQSearchService.d.ts +0 -12
- package/dist/domains/faqs/index.d.ts +0 -8
- package/dist/domains/faqs/presentation/components/FAQCategory.d.ts +0 -21
- package/dist/domains/faqs/presentation/components/FAQEmptyState.d.ts +0 -20
- package/dist/domains/faqs/presentation/components/FAQItem.d.ts +0 -24
- package/dist/domains/faqs/presentation/components/FAQSearchBar.d.ts +0 -18
- package/dist/domains/faqs/presentation/components/index.d.ts +0 -11
- package/dist/domains/faqs/presentation/hooks/index.d.ts +0 -5
- package/dist/domains/faqs/presentation/hooks/useFAQExpansion.d.ts +0 -12
- package/dist/domains/faqs/presentation/hooks/useFAQSearch.d.ts +0 -12
- package/dist/domains/faqs/presentation/screens/FAQScreen.d.ts +0 -33
- package/dist/domains/feedback/domain/entities/FeedbackEntity.d.ts +0 -25
- package/dist/domains/feedback/domain/repositories/IFeedbackRepository.d.ts +0 -20
- package/dist/domains/feedback/index.d.ts +0 -10
- package/dist/domains/feedback/presentation/components/FeedbackForm.d.ts +0 -7
- package/dist/domains/feedback/presentation/components/FeedbackForm.styles.d.ts +0 -48
- package/dist/domains/feedback/presentation/components/FeedbackFormProps.d.ts +0 -26
- package/dist/domains/feedback/presentation/components/FeedbackModal.d.ts +0 -23
- package/dist/domains/feedback/presentation/components/SupportSection.d.ts +0 -62
- package/dist/domains/feedback/presentation/hooks/useFeedbackForm.d.ts +0 -19
- package/dist/domains/gamification/components/AchievementCard.d.ts +0 -23
- package/dist/domains/gamification/components/AchievementItem.d.ts +0 -7
- package/dist/domains/gamification/components/AchievementToast.d.ts +0 -21
- package/dist/domains/gamification/components/GamificationScreen/AchievementsList.d.ts +0 -17
- package/dist/domains/gamification/components/GamificationScreen/GamificationScreen.d.ts +0 -11
- package/dist/domains/gamification/components/GamificationScreen/GamificationScreenWithConfig.d.ts +0 -11
- package/dist/domains/gamification/components/GamificationScreen/StatsGrid.d.ts +0 -16
- package/dist/domains/gamification/components/GamificationScreen/index.d.ts +0 -17
- package/dist/domains/gamification/components/GamificationScreen/styles.d.ts +0 -40
- package/dist/domains/gamification/components/GamificationScreen/types.d.ts +0 -42
- package/dist/domains/gamification/components/LevelProgress.d.ts +0 -27
- package/dist/domains/gamification/components/PointsBadge.d.ts +0 -16
- package/dist/domains/gamification/components/StatsCard.d.ts +0 -20
- package/dist/domains/gamification/components/StreakDisplay.d.ts +0 -21
- package/dist/domains/gamification/components/index.d.ts +0 -14
- package/dist/domains/gamification/components/styles/achievementItemStyles.d.ts +0 -71
- package/dist/domains/gamification/components/types/AchievementItemProps.d.ts +0 -22
- package/dist/domains/gamification/hooks/useGamification.d.ts +0 -22
- package/dist/domains/gamification/index.d.ts +0 -13
- package/dist/domains/gamification/store/gamificationStore.d.ts +0 -6
- package/dist/domains/gamification/types/index.d.ts +0 -99
- package/dist/domains/gamification/utils/calculations.d.ts +0 -10
- package/dist/domains/legal/domain/entities/LegalConfig.d.ts +0 -28
- package/dist/domains/legal/domain/services/ContentValidationService.d.ts +0 -19
- package/dist/domains/legal/domain/services/StyleCacheService.d.ts +0 -38
- package/dist/domains/legal/domain/services/UrlHandlerService.d.ts +0 -32
- package/dist/domains/legal/index.d.ts +0 -8
- package/dist/domains/legal/presentation/components/LegalDocumentsList.d.ts +0 -21
- package/dist/domains/legal/presentation/components/LegalItem.d.ts +0 -35
- package/dist/domains/legal/presentation/components/LegalScreenHeader.d.ts +0 -12
- package/dist/domains/legal/presentation/components/LegalSection.d.ts +0 -14
- package/dist/domains/legal/presentation/screens/LegalContentScreen.d.ts +0 -19
- package/dist/domains/legal/presentation/screens/LegalScreen.d.ts +0 -24
- package/dist/domains/legal/presentation/screens/PrivacyPolicyScreen.d.ts +0 -15
- package/dist/domains/legal/presentation/screens/TermsOfServiceScreen.d.ts +0 -15
- package/dist/domains/localization/domain/repositories/ILocalizationRepository.d.ts +0 -16
- package/dist/domains/localization/index.d.ts +0 -16
- package/dist/domains/localization/infrastructure/components/LanguageSwitcher.d.ts +0 -19
- package/dist/domains/localization/infrastructure/components/LanguageSwitcher.styles.d.ts +0 -37
- package/dist/domains/localization/infrastructure/components/useLanguageNavigation.d.ts +0 -4
- package/dist/domains/localization/infrastructure/components/useLanguageSwitcher.d.ts +0 -13
- package/dist/domains/localization/infrastructure/config/DeviceLocale.d.ts +0 -10
- package/dist/domains/localization/infrastructure/config/I18nInitializer.d.ts +0 -14
- package/dist/domains/localization/infrastructure/config/LanguageQuery.d.ts +0 -10
- package/dist/domains/localization/infrastructure/config/LocaleMapping.d.ts +0 -5
- package/dist/domains/localization/infrastructure/config/NamespaceResolver.d.ts +0 -11
- package/dist/domains/localization/infrastructure/config/ResourceBuilder.d.ts +0 -10
- package/dist/domains/localization/infrastructure/config/TranslationLoader.d.ts +0 -16
- package/dist/domains/localization/infrastructure/config/constants/defaultLanguages.d.ts +0 -6
- package/dist/domains/localization/infrastructure/config/i18n.d.ts +0 -7
- package/dist/domains/localization/infrastructure/config/languages.d.ts +0 -7
- package/dist/domains/localization/infrastructure/hooks/useLanguageSelection.d.ts +0 -11
- package/dist/domains/localization/infrastructure/hooks/useLocalization.d.ts +0 -12
- package/dist/domains/localization/infrastructure/hooks/useTranslation.d.ts +0 -23
- package/dist/domains/localization/infrastructure/repository/LanguageRepository.d.ts +0 -18
- package/dist/domains/localization/infrastructure/storage/LanguageInitializer.d.ts +0 -20
- package/dist/domains/localization/infrastructure/storage/LanguageSwitcher.d.ts +0 -16
- package/dist/domains/localization/infrastructure/storage/LocalizationStore.d.ts +0 -6
- package/dist/domains/localization/infrastructure/storage/localizationStoreUtils.d.ts +0 -44
- package/dist/domains/localization/infrastructure/storage/types/Language.d.ts +0 -12
- package/dist/domains/localization/infrastructure/storage/types/LocalizationState.d.ts +0 -22
- package/dist/domains/localization/presentation/components/LanguageItem.d.ts +0 -23
- package/dist/domains/localization/presentation/components/LanguageItem.styles.d.ts +0 -30
- package/dist/domains/localization/presentation/components/LanguageSection.d.ts +0 -15
- package/dist/domains/localization/presentation/providers/LocalizationManager.d.ts +0 -12
- package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.d.ts +0 -7
- package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.styles.d.ts +0 -7
- package/dist/domains/localization/presentation/screens/LanguageSelectionScreen.types.d.ts +0 -26
- package/dist/domains/notifications/index.d.ts +0 -46
- package/dist/domains/notifications/infrastructure/config/notificationsConfig.d.ts +0 -19
- package/dist/domains/notifications/infrastructure/hooks/useNotificationSettings.d.ts +0 -8
- package/dist/domains/notifications/infrastructure/services/NotificationBadgeManager.d.ts +0 -4
- package/dist/domains/notifications/infrastructure/services/NotificationManager.d.ts +0 -23
- package/dist/domains/notifications/infrastructure/services/NotificationPermissions.d.ts +0 -5
- package/dist/domains/notifications/infrastructure/services/NotificationScheduler.d.ts +0 -7
- package/dist/domains/notifications/infrastructure/services/NotificationService.d.ts +0 -31
- package/dist/domains/notifications/infrastructure/services/types.d.ts +0 -147
- package/dist/domains/notifications/infrastructure/storage/UnifiedNotificationStore.d.ts +0 -42
- package/dist/domains/notifications/infrastructure/utils/idGenerator.d.ts +0 -6
- package/dist/domains/notifications/infrastructure/utils/triggerBuilder.d.ts +0 -6
- package/dist/domains/notifications/presentation/components/NotificationsSection.d.ts +0 -16
- package/dist/domains/notifications/presentation/components/RemindersNavRow.d.ts +0 -12
- package/dist/domains/notifications/presentation/components/RemindersNavRow.styles.d.ts +0 -34
- package/dist/domains/notifications/presentation/components/SettingRow.d.ts +0 -14
- package/dist/domains/notifications/presentation/hooks/useNotificationSettingsUI.d.ts +0 -13
- package/dist/domains/notifications/presentation/hooks/useTimePicker.d.ts +0 -21
- package/dist/domains/notifications/presentation/screens/NotificationSettingsScreen.d.ts +0 -12
- package/dist/domains/notifications/presentation/screens/NotificationSettingsScreen.styles.d.ts +0 -26
- package/dist/domains/notifications/presentation/screens/NotificationsScreen.d.ts +0 -18
- package/dist/domains/notifications/quietHours/infrastructure/hooks/useQuietHoursActions.d.ts +0 -13
- package/dist/domains/notifications/quietHours/presentation/components/QuietHoursCard.d.ts +0 -14
- package/dist/domains/notifications/reminders/infrastructure/config/reminderPresets.d.ts +0 -24
- package/dist/domains/notifications/reminders/infrastructure/hooks/useReminderActions.d.ts +0 -11
- package/dist/domains/notifications/reminders/presentation/components/FormButton.d.ts +0 -12
- package/dist/domains/notifications/reminders/presentation/components/FrequencySelector.d.ts +0 -14
- package/dist/domains/notifications/reminders/presentation/components/ReminderForm.constants.d.ts +0 -28
- package/dist/domains/notifications/reminders/presentation/components/ReminderForm.d.ts +0 -7
- package/dist/domains/notifications/reminders/presentation/components/ReminderForm.styles.d.ts +0 -31
- package/dist/domains/notifications/reminders/presentation/components/ReminderItem.d.ts +0 -20
- package/dist/domains/notifications/reminders/presentation/components/TimePresetSelector.d.ts +0 -20
- package/dist/domains/notifications/reminders/presentation/components/WeekdaySelector.d.ts +0 -11
- package/dist/domains/notifications/reminders/presentation/screens/ReminderListScreen.d.ts +0 -13
- package/dist/domains/rating/application/services/RatingService.d.ts +0 -33
- package/dist/domains/rating/domain/entities/Rating.d.ts +0 -15
- package/dist/domains/rating/domain/entities/RatingConfig.d.ts +0 -120
- package/dist/domains/rating/index.d.ts +0 -12
- package/dist/domains/rating/infrastructure/storage/RatingStorage.d.ts +0 -50
- package/dist/domains/rating/presentation/components/RatingPromptModal.d.ts +0 -16
- package/dist/domains/rating/presentation/components/StarRating.d.ts +0 -13
- package/dist/domains/rating/presentation/hooks/useAppRating.d.ts +0 -9
- package/dist/domains/video-tutorials/index.d.ts +0 -18
- package/dist/domains/video-tutorials/presentation/components/VideoTutorialCard.d.ts +0 -13
- package/dist/domains/video-tutorials/presentation/components/VideoTutorialSection.d.ts +0 -25
- package/dist/domains/video-tutorials/presentation/screens/VideoTutorialsScreen.d.ts +0 -25
- package/dist/domains/video-tutorials/types/index.d.ts +0 -26
- package/dist/index.d.ts +0 -41
- package/dist/infrastructure/repositories/SettingsRepository.d.ts +0 -12
- package/dist/infrastructure/services/SettingsService.d.ts +0 -14
- package/dist/infrastructure/utils/configFactory.d.ts +0 -39
- package/dist/infrastructure/utils/constants/textLimits.d.ts +0 -16
- package/dist/infrastructure/utils/sanitizers.d.ts +0 -13
- package/dist/infrastructure/utils/validation/core.d.ts +0 -8
- package/dist/infrastructure/utils/validation/formValidators.d.ts +0 -26
- package/dist/infrastructure/utils/validation/index.d.ts +0 -5
- package/dist/infrastructure/utils/validators.d.ts +0 -21
- package/dist/presentation/components/SettingsFooter.d.ts +0 -7
- package/dist/presentation/components/SettingsItemCard.d.ts +0 -22
- package/dist/presentation/components/SettingsNavigationItem.d.ts +0 -67
- package/dist/presentation/components/SettingsSection.d.ts +0 -6
- package/dist/presentation/components/settings/SettingsItemCardContent.d.ts +0 -12
- package/dist/presentation/components/settings/SettingsItemCardRightElement.d.ts +0 -11
- package/dist/presentation/components/settings/SettingsItemCardSection.d.ts +0 -5
- package/dist/presentation/hooks/mutations/useSettingsMutations.d.ts +0 -20
- package/dist/presentation/hooks/queries/useSettingsQuery.d.ts +0 -7
- package/dist/presentation/hooks/useSettings.d.ts +0 -26
- package/dist/presentation/hooks/useSettingsScreenConfig.d.ts +0 -41
- package/dist/presentation/navigation/SettingsStackNavigator.d.ts +0 -9
- package/dist/presentation/navigation/hooks/index.d.ts +0 -5
- package/dist/presentation/navigation/hooks/useNavigationHandlers.d.ts +0 -14
- package/dist/presentation/navigation/hooks/useSettingsNavigation.d.ts +0 -22
- package/dist/presentation/navigation/hooks/useSettingsScreens.d.ts +0 -12
- package/dist/presentation/navigation/types.d.ts +0 -134
- package/dist/presentation/navigation/utils/index.d.ts +0 -5
- package/dist/presentation/navigation/utils/navigationHelpers.d.ts +0 -13
- package/dist/presentation/navigation/utils/navigationTranslations.d.ts +0 -35
- package/dist/presentation/screens/AppearanceScreen.d.ts +0 -6
- package/dist/presentation/screens/SettingsScreen.d.ts +0 -49
- package/dist/presentation/screens/components/SettingsContent.d.ts +0 -3
- package/dist/presentation/screens/components/SettingsHeader.d.ts +0 -8
- package/dist/presentation/screens/components/sections/CustomSettingsList.d.ts +0 -7
- package/dist/presentation/screens/components/sections/FeatureSettingsSection.d.ts +0 -13
- package/dist/presentation/screens/components/sections/IdentitySettingsSection.d.ts +0 -12
- package/dist/presentation/screens/components/sections/ProfileSectionLoader.d.ts +0 -17
- package/dist/presentation/screens/components/sections/SupportSettingsSection.d.ts +0 -13
- package/dist/presentation/screens/components/types/SettingsContentProps.d.ts +0 -47
- package/dist/presentation/screens/components/utils/featureChecker.d.ts +0 -10
- package/dist/presentation/screens/hooks/useFeatureDetection.d.ts +0 -28
- package/dist/presentation/screens/hooks/useSettingsScreen.d.ts +0 -36
- package/dist/presentation/screens/types/BaseTypes.d.ts +0 -11
- package/dist/presentation/screens/types/ContentConfig.d.ts +0 -76
- package/dist/presentation/screens/types/CustomSection.d.ts +0 -38
- package/dist/presentation/screens/types/SettingsConfig.d.ts +0 -122
- package/dist/presentation/screens/types/SettingsTranslations.d.ts +0 -159
- package/dist/presentation/screens/types/UserFeatureConfig.d.ts +0 -178
- package/dist/presentation/screens/types/index.d.ts +0 -11
- package/dist/presentation/screens/utils/normalizeConfig.d.ts +0 -68
- package/dist/presentation/utils/accountConfigUtils.d.ts +0 -34
- package/dist/presentation/utils/config-creators/base-configs.d.ts +0 -26
- package/dist/presentation/utils/config-creators/feature-configs.d.ts +0 -17
- package/dist/presentation/utils/config-creators/index.d.ts +0 -7
- package/dist/presentation/utils/config-creators/support-configs.d.ts +0 -19
- package/dist/presentation/utils/config-creators/types.d.ts +0 -20
- package/dist/presentation/utils/faqTranslator.d.ts +0 -3
- package/dist/presentation/utils/index.d.ts +0 -8
- package/dist/presentation/utils/screenFactory.d.ts +0 -26
- package/dist/presentation/utils/settingsConfigFactory.d.ts +0 -33
- package/dist/presentation/utils/userProfileUtils.d.ts +0 -20
- package/dist/utils/appUtils.d.ts +0 -4
- package/dist/utils/devUtils.d.ts +0 -31
- package/dist/utils/errorUtils.d.ts +0 -22
- package/dist/utils/hooks/useAsyncStateUpdate.d.ts +0 -35
- package/dist/utils/hooks/useMountSafety.d.ts +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@umituz/react-native-settings",
|
|
3
|
-
"version": "5.3.
|
|
3
|
+
"version": "5.3.35",
|
|
4
4
|
"description": "Complete settings hub for React Native apps - consolidated package with settings, localization, about, legal, appearance, feedback, FAQs, rating, and gamification",
|
|
5
5
|
"main": "./src/index.ts",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
package/LICENSE
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2025 Ümit UZ
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
package/README.md
DELETED
|
@@ -1,355 +0,0 @@
|
|
|
1
|
-
# @umituz/react-native-settings
|
|
2
|
-
|
|
3
|
-
Comprehensive settings management for React Native apps with modular domain-based architecture.
|
|
4
|
-
|
|
5
|
-
## Purpose
|
|
6
|
-
|
|
7
|
-
Complete settings solution with pre-built screens, components, and state management for React Native applications.
|
|
8
|
-
|
|
9
|
-
## File Path
|
|
10
|
-
|
|
11
|
-
Main package entry: `src/index.ts`
|
|
12
|
-
|
|
13
|
-
## Installation
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npm install @umituz/react-native-settings
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Peer Dependencies
|
|
20
|
-
|
|
21
|
-
Required packages (check package.json for versions):
|
|
22
|
-
- zustand
|
|
23
|
-
- @umituz/react-native-storage
|
|
24
|
-
- @umituz/react-native-design-system
|
|
25
|
-
- @umituz/react-native-localization
|
|
26
|
-
- @react-navigation/native
|
|
27
|
-
- @react-navigation/stack
|
|
28
|
-
- react-native-safe-area-context
|
|
29
|
-
|
|
30
|
-
## Strategy
|
|
31
|
-
|
|
32
|
-
### Package Architecture
|
|
33
|
-
|
|
34
|
-
The package follows Domain-Driven Design (DDD) with four layers:
|
|
35
|
-
|
|
36
|
-
1. **Domain Layer**: Business logic and entities
|
|
37
|
-
2. **Application Layer**: Interfaces and orchestration
|
|
38
|
-
3. **Infrastructure Layer**: Data persistence
|
|
39
|
-
4. **Presentation Layer**: UI components and screens
|
|
40
|
-
|
|
41
|
-
### Integration Approach
|
|
42
|
-
|
|
43
|
-
1. Import components from `@umituz/react-native-settings`
|
|
44
|
-
2. Use pre-built screens for standard settings
|
|
45
|
-
3. Customize via configuration objects
|
|
46
|
-
4. Extend with custom sections when needed
|
|
47
|
-
5. Follow design system for consistency
|
|
48
|
-
|
|
49
|
-
### Domain Structure
|
|
50
|
-
|
|
51
|
-
Each feature domain is self-contained:
|
|
52
|
-
- `about/`: App information and version
|
|
53
|
-
- `appearance/`: Theme and color management
|
|
54
|
-
- `legal/`: Legal documents and policies
|
|
55
|
-
- `disclaimer/`: Legal notices and warnings
|
|
56
|
-
- `feedback/`: User feedback collection
|
|
57
|
-
- `faqs/`: FAQ management
|
|
58
|
-
- `rating/`: Rating system
|
|
59
|
-
- `video-tutorials/`: Video tutorials
|
|
60
|
-
- `cloud-sync/`: Cloud synchronization
|
|
61
|
-
- `dev/`: Development utilities
|
|
62
|
-
|
|
63
|
-
## Restrictions (Forbidden)
|
|
64
|
-
|
|
65
|
-
### ❌ DO NOT
|
|
66
|
-
|
|
67
|
-
- Create custom settings screens from scratch
|
|
68
|
-
- Duplicate existing component functionality
|
|
69
|
-
- Mix settings logic with business logic
|
|
70
|
-
- Hardcode feature availability
|
|
71
|
-
- Bypass feature detection system
|
|
72
|
-
- Access storage repositories directly from UI
|
|
73
|
-
- Create custom settings item components
|
|
74
|
-
- Ignore design system tokens
|
|
75
|
-
- Mix UI and data layers inappropriately
|
|
76
|
-
|
|
77
|
-
### ❌ NEVER
|
|
78
|
-
|
|
79
|
-
- Modify internal package files
|
|
80
|
-
- Override core component behavior
|
|
81
|
-
- Skip type checking
|
|
82
|
-
- Use deprecated APIs
|
|
83
|
-
- Ignore accessibility requirements
|
|
84
|
-
- Bypass error boundaries
|
|
85
|
-
- Hardcode colors or spacing
|
|
86
|
-
- Create circular dependencies between layers
|
|
87
|
-
|
|
88
|
-
### ❌ AVOID
|
|
89
|
-
|
|
90
|
-
- Over-complicating configuration
|
|
91
|
-
- Creating one-off solutions
|
|
92
|
-
- Inconsistent styling
|
|
93
|
-
- Skipping proper error handling
|
|
94
|
-
- Not testing on both platforms
|
|
95
|
-
- Ignoring performance optimization
|
|
96
|
-
- Bypassing TypeScript strict mode
|
|
97
|
-
|
|
98
|
-
## Rules
|
|
99
|
-
|
|
100
|
-
### ✅ ALWAYS
|
|
101
|
-
|
|
102
|
-
- Use TypeScript strict mode
|
|
103
|
-
- Import from package exports
|
|
104
|
-
- Follow component documentation strategies
|
|
105
|
-
- Reference implementation files for current patterns
|
|
106
|
-
- Use design system tokens for styling
|
|
107
|
-
- Handle errors gracefully
|
|
108
|
-
- Support both iOS and Android
|
|
109
|
-
- Include proper accessibility labels
|
|
110
|
-
- Test with feature flags
|
|
111
|
-
- Follow DDD layer separation
|
|
112
|
-
|
|
113
|
-
### ✅ MUST
|
|
114
|
-
|
|
115
|
-
- Use SettingsScreen for main settings UI
|
|
116
|
-
- Use SettingsItemCard for all settings items
|
|
117
|
-
- Normalize configuration before use
|
|
118
|
-
- Handle loading and error states
|
|
119
|
-
- Provide proper TypeScript types
|
|
120
|
-
- Export types for reuse
|
|
121
|
-
- Follow naming conventions
|
|
122
|
-
- Document custom components
|
|
123
|
-
- Test all new features
|
|
124
|
-
- Maintain backward compatibility
|
|
125
|
-
|
|
126
|
-
### ✅ SHOULD
|
|
127
|
-
|
|
128
|
-
- Use auto-detection for features
|
|
129
|
-
- Group related settings together
|
|
130
|
-
- Provide meaningful section titles
|
|
131
|
-
- Support both modal and push navigation
|
|
132
|
-
- Include user profile for authenticated users
|
|
133
|
-
- Add custom sections via config
|
|
134
|
-
- Use feature flags appropriately
|
|
135
|
-
- Optimize performance with memoization
|
|
136
|
-
- Follow AI agent guidelines
|
|
137
|
-
- Keep documentation up to date
|
|
138
|
-
|
|
139
|
-
## Component Reference
|
|
140
|
-
|
|
141
|
-
### Main Components
|
|
142
|
-
|
|
143
|
-
File: `src/index.ts`
|
|
144
|
-
|
|
145
|
-
**Screens:**
|
|
146
|
-
- `SettingsScreen`: Main settings screen
|
|
147
|
-
- Implementation: `src/presentation/screens/SettingsScreen.tsx`
|
|
148
|
-
- Documentation: `SETTINGS_SCREEN_GUIDE.md`
|
|
149
|
-
|
|
150
|
-
**Components:**
|
|
151
|
-
- `SettingsItemCard`: Reusable settings item
|
|
152
|
-
- Implementation: `src/presentation/components/SettingsItemCard/SettingsItemCard.tsx`
|
|
153
|
-
- Strategy: `src/presentation/components/SettingsItemCard/STRATEGY.md`
|
|
154
|
-
|
|
155
|
-
- `SettingsSection`: Section container
|
|
156
|
-
- Implementation: `src/presentation/components/SettingsSection/SettingsSection.tsx`
|
|
157
|
-
|
|
158
|
-
- `SettingsContent`: Content composer
|
|
159
|
-
- Implementation: `src/presentation/screens/components/SettingsContent/SettingsContent.tsx`
|
|
160
|
-
|
|
161
|
-
**Hooks:**
|
|
162
|
-
- `useSettings`: Main settings hook
|
|
163
|
-
- Implementation: `src/presentation/hooks/useSettings.ts`
|
|
164
|
-
|
|
165
|
-
- `useFeatureDetection`: Feature detection
|
|
166
|
-
- Implementation: `src/presentation/screens/hooks/useFeatureDetection.ts`
|
|
167
|
-
|
|
168
|
-
### Domain Components
|
|
169
|
-
|
|
170
|
-
Each domain has its own components:
|
|
171
|
-
|
|
172
|
-
**Appearance:**
|
|
173
|
-
- Screen: `src/domains/appearance/presentation/screens/AppearanceScreen.tsx`
|
|
174
|
-
- Components: `src/domains/appearance/presentation/components/`
|
|
175
|
-
- Hooks: `src/domains/appearance/hooks/`
|
|
176
|
-
|
|
177
|
-
**About:**
|
|
178
|
-
- Screen: `src/domains/about/presentation/screens/AboutScreen.tsx`
|
|
179
|
-
- Components: `src/domains/about/presentation/components/`
|
|
180
|
-
- Hooks: `src/domains/about/presentation/hooks/`
|
|
181
|
-
|
|
182
|
-
**Other Domains:**
|
|
183
|
-
- Legal: `src/domains/legal/`
|
|
184
|
-
- Disclaimer: `src/domains/disclaimer/`
|
|
185
|
-
- Feedback: `src/domains/feedback/`
|
|
186
|
-
- FAQs: `src/domains/faqs/`
|
|
187
|
-
- Rating: `src/domains/rating/`
|
|
188
|
-
- Video Tutorials: `src/domains/video-tutorials/`
|
|
189
|
-
- Cloud Sync: `src/domains/cloud-sync/`
|
|
190
|
-
- Dev: `src/domains/dev/`
|
|
191
|
-
|
|
192
|
-
## Configuration
|
|
193
|
-
|
|
194
|
-
### Settings Configuration
|
|
195
|
-
|
|
196
|
-
Type definition: `src/presentation/screens/types/SettingsConfig.ts`
|
|
197
|
-
|
|
198
|
-
Configuration structure:
|
|
199
|
-
- `appearance`: Theme settings
|
|
200
|
-
- `language`: Language selection
|
|
201
|
-
- `notifications`: Notification preferences
|
|
202
|
-
- `about`: App information
|
|
203
|
-
- `legal`: Legal documents
|
|
204
|
-
- `disclaimer`: Legal notices
|
|
205
|
-
- `userProfile`: User profile display
|
|
206
|
-
- `feedback`: Feedback system
|
|
207
|
-
- `rating`: Rating feature
|
|
208
|
-
- `faqs`: FAQ access
|
|
209
|
-
- `subscription`: Subscription/upgrade
|
|
210
|
-
- `wallet`: Wallet/payment
|
|
211
|
-
- `customSections`: App-specific sections
|
|
212
|
-
|
|
213
|
-
### Feature Flags
|
|
214
|
-
|
|
215
|
-
Use feature flags to control visibility:
|
|
216
|
-
- `true`: Always show feature
|
|
217
|
-
- `false`: Never show feature
|
|
218
|
-
- `'auto'`: Auto-detect based on navigation
|
|
219
|
-
|
|
220
|
-
## AI Agent Guidelines
|
|
221
|
-
|
|
222
|
-
### When Implementing Settings
|
|
223
|
-
|
|
224
|
-
1. **Read Strategy Documentation First**
|
|
225
|
-
- Check `STRATEGY.md` files in component directories
|
|
226
|
-
- Review `AI_AGENT_GUIDELINES.md`
|
|
227
|
-
- Understand restrictions and rules
|
|
228
|
-
|
|
229
|
-
2. **Reference Implementation Files**
|
|
230
|
-
- Check file paths in documentation
|
|
231
|
-
- Look at similar existing implementations
|
|
232
|
-
- Follow established patterns
|
|
233
|
-
|
|
234
|
-
3. **No Code Examples**
|
|
235
|
-
- Documentation contains strategy, not syntax
|
|
236
|
-
- Reference implementation files directly
|
|
237
|
-
- File paths stay valid when code changes
|
|
238
|
-
|
|
239
|
-
4. **Follow Component Structure**
|
|
240
|
-
- Use existing components from package
|
|
241
|
-
- Don't recreate what already exists
|
|
242
|
-
- Extend via configuration, not modification
|
|
243
|
-
|
|
244
|
-
5. **Check Restrictions Before Coding**
|
|
245
|
-
- Review what's forbidden
|
|
246
|
-
- Verify rules to follow
|
|
247
|
-
- Ask if unclear
|
|
248
|
-
|
|
249
|
-
### Common Patterns
|
|
250
|
-
|
|
251
|
-
**Adding Settings Screen:**
|
|
252
|
-
Reference: `SETTINGS_SCREEN_GUIDE.md`
|
|
253
|
-
- Use SettingsScreen component
|
|
254
|
-
- Configure via SettingsConfig
|
|
255
|
-
- Don't build from scratch
|
|
256
|
-
|
|
257
|
-
**Adding Settings Item:**
|
|
258
|
-
Reference: `src/presentation/components/SettingsItemCard/STRATEGY.md`
|
|
259
|
-
- Use SettingsItemCard component
|
|
260
|
-
- Follow props interface
|
|
261
|
-
- Don't create custom items
|
|
262
|
-
|
|
263
|
-
**Adding Domain Feature:**
|
|
264
|
-
Reference: Similar domain README
|
|
265
|
-
- Follow domain structure
|
|
266
|
-
- Implement required layers
|
|
267
|
-
- Document with strategy format
|
|
268
|
-
|
|
269
|
-
## Documentation Structure
|
|
270
|
-
|
|
271
|
-
### Key Documentation Files
|
|
272
|
-
|
|
273
|
-
- `README.md`: This file - package overview
|
|
274
|
-
- `DOCUMENTATION_TEMPLATE.md`: Template for new docs
|
|
275
|
-
- `AI_AGENT_GUIDELINES.md`: AI coding guidelines
|
|
276
|
-
- `SETTINGS_SCREEN_GUIDE.md`: Screen strategy
|
|
277
|
-
- `ARCHITECTURE.md`: Architecture overview
|
|
278
|
-
- `TESTING.md`: Testing guide
|
|
279
|
-
|
|
280
|
-
### Domain Documentation
|
|
281
|
-
|
|
282
|
-
Each domain has README.md with:
|
|
283
|
-
- Purpose and file paths
|
|
284
|
-
- Strategy for usage
|
|
285
|
-
- Restrictions (what not to do)
|
|
286
|
-
- Rules (what must be done)
|
|
287
|
-
- Component references
|
|
288
|
-
- AI agent guidelines
|
|
289
|
-
|
|
290
|
-
### Component Documentation
|
|
291
|
-
|
|
292
|
-
Each component directory may contain:
|
|
293
|
-
- `README.md`: Component reference
|
|
294
|
-
- `STRATEGY.md`: Detailed strategy guide
|
|
295
|
-
- Implementation file with TypeScript types
|
|
296
|
-
|
|
297
|
-
## Quick Reference
|
|
298
|
-
|
|
299
|
-
### Import Patterns
|
|
300
|
-
|
|
301
|
-
```typescript
|
|
302
|
-
// From package
|
|
303
|
-
import { ComponentName } from '@umituz/react-native-settings';
|
|
304
|
-
|
|
305
|
-
// Types
|
|
306
|
-
import type { SettingsConfig, UserProfile } from '@umituz/react-native-settings';
|
|
307
|
-
```
|
|
308
|
-
|
|
309
|
-
### File Locations
|
|
310
|
-
|
|
311
|
-
```
|
|
312
|
-
src/
|
|
313
|
-
├── domains/ # Feature domains
|
|
314
|
-
│ ├── about/
|
|
315
|
-
│ ├── appearance/
|
|
316
|
-
│ ├── legal/
|
|
317
|
-
│ └── ...
|
|
318
|
-
├── presentation/ # UI layer
|
|
319
|
-
│ ├── components/ # Shared components
|
|
320
|
-
│ ├── screens/ # Screens
|
|
321
|
-
│ ├── hooks/ # Hooks
|
|
322
|
-
│ └── navigation/ # Navigation
|
|
323
|
-
├── application/ # Interfaces
|
|
324
|
-
├── infrastructure/ # Data layer
|
|
325
|
-
└── index.ts # Package exports
|
|
326
|
-
```
|
|
327
|
-
|
|
328
|
-
## Related Documentation
|
|
329
|
-
|
|
330
|
-
### Core Documentation
|
|
331
|
-
- **Architecture**: `ARCHITECTURE.md`
|
|
332
|
-
- **Testing**: `TESTING.md`
|
|
333
|
-
- **AI Guidelines**: `AI_AGENT_GUIDELINES.md`
|
|
334
|
-
- **Settings Screen**: `SETTINGS_SCREEN_GUIDE.md`
|
|
335
|
-
- **Documentation Template**: `DOCUMENTATION_TEMPLATE.md`
|
|
336
|
-
- **Migration**: `DOCUMENTATION_MIGRATION.md`
|
|
337
|
-
|
|
338
|
-
### Community
|
|
339
|
-
- **Contributing**: `CONTRIBUTING.md`
|
|
340
|
-
- **Code of Conduct**: `CODE_OF_CONDUCT.md`
|
|
341
|
-
- **Security**: `SECURITY.md`
|
|
342
|
-
- **Changelog**: `CHANGELOG.md`
|
|
343
|
-
|
|
344
|
-
### Component Documentation
|
|
345
|
-
- **Domain READMEs**: Check individual domain directories
|
|
346
|
-
- **Component Strategies**: Check component STRATEGY.md files
|
|
347
|
-
- **Component READMEs**: Check component directories
|
|
348
|
-
|
|
349
|
-
## License
|
|
350
|
-
|
|
351
|
-
MIT
|
|
352
|
-
|
|
353
|
-
## Version History
|
|
354
|
-
|
|
355
|
-
See package.json for version information.
|
package/dist/account.d.ts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @umituz/react-native-settings/account
|
|
3
|
-
*
|
|
4
|
-
* Subpath export for apps that use @umituz/react-native-auth.
|
|
5
|
-
* Import auth-dependent hooks and components from here.
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* import {
|
|
9
|
-
* useSettingsScreenConfigWithAuth,
|
|
10
|
-
* AccountScreen,
|
|
11
|
-
* ProfileSection,
|
|
12
|
-
* } from '@umituz/react-native-settings/account';
|
|
13
|
-
*
|
|
14
|
-
* // Pass AccountScreen and ProfileSection as props to SettingsStackNavigator:
|
|
15
|
-
* <SettingsStackNavigator
|
|
16
|
-
* AccountScreenComponent={AccountScreen}
|
|
17
|
-
* ProfileSectionComponent={ProfileSection}
|
|
18
|
-
* ...
|
|
19
|
-
* />
|
|
20
|
-
*/
|
|
21
|
-
export { AccountScreen, ProfileSection } from "@umituz/react-native-auth";
|
|
22
|
-
export { useAuth, useUserProfile, useAuthHandlers } from "@umituz/react-native-auth";
|
|
23
|
-
export type { AccountScreenConfig } from "@umituz/react-native-auth";
|
|
24
|
-
export { useSettingsScreenConfig } from './presentation/hooks/useSettingsScreenConfig';
|
|
25
|
-
export { useSettingsScreenConfig as useSettingsScreenConfigWithAuth } from './presentation/hooks/useSettingsScreenConfig';
|
|
26
|
-
export type { UseSettingsScreenConfigParams, SettingsScreenConfigResult, SettingsFeatures, } from './presentation/hooks/useSettingsScreenConfig';
|
|
27
|
-
export type { AccountConfig } from './presentation/navigation/types';
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Settings Repository Interface and Types
|
|
3
|
-
*
|
|
4
|
-
* Defines the contract for settings storage operations
|
|
5
|
-
* and the core types used throughout the settings domain.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* User settings data structure
|
|
9
|
-
*/
|
|
10
|
-
export interface UserSettings {
|
|
11
|
-
userId: string;
|
|
12
|
-
theme: 'light' | 'dark' | 'auto';
|
|
13
|
-
language: string;
|
|
14
|
-
notificationsEnabled: boolean;
|
|
15
|
-
emailNotifications: boolean;
|
|
16
|
-
pushNotifications: boolean;
|
|
17
|
-
soundEnabled: boolean;
|
|
18
|
-
vibrationEnabled: boolean;
|
|
19
|
-
privacyMode: boolean;
|
|
20
|
-
disclaimerAccepted: boolean;
|
|
21
|
-
updatedAt: Date;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Settings operation result
|
|
25
|
-
*/
|
|
26
|
-
export interface SettingsResult<T> {
|
|
27
|
-
success: boolean;
|
|
28
|
-
data?: T;
|
|
29
|
-
error?: SettingsError;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Settings error types
|
|
33
|
-
*/
|
|
34
|
-
export interface SettingsError {
|
|
35
|
-
code: string;
|
|
36
|
-
message: string;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Settings repository interface
|
|
40
|
-
*/
|
|
41
|
-
export interface ISettingsRepository {
|
|
42
|
-
getSettings(userId: string): Promise<SettingsResult<UserSettings>>;
|
|
43
|
-
saveSettings(settings: UserSettings): Promise<SettingsResult<void>>;
|
|
44
|
-
deleteSettings(userId: string): Promise<SettingsResult<void>>;
|
|
45
|
-
}
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Domain Entity - Application Information
|
|
3
|
-
* Pure business logic, no external dependencies
|
|
4
|
-
* Part of About Domain
|
|
5
|
-
*/
|
|
6
|
-
export interface AppInfo {
|
|
7
|
-
/** Application name */
|
|
8
|
-
name: string;
|
|
9
|
-
/** Application version (semver format) */
|
|
10
|
-
version: string;
|
|
11
|
-
/** Application description */
|
|
12
|
-
description?: string;
|
|
13
|
-
/** Developer/Company name */
|
|
14
|
-
developer?: string;
|
|
15
|
-
/** Contact email */
|
|
16
|
-
contactEmail?: string;
|
|
17
|
-
/** Website URL */
|
|
18
|
-
websiteUrl?: string;
|
|
19
|
-
/** Website display text */
|
|
20
|
-
websiteDisplay?: string;
|
|
21
|
-
/** More apps URL */
|
|
22
|
-
moreAppsUrl?: string;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Configuration interface for About component
|
|
26
|
-
* Fully configurable by parent application
|
|
27
|
-
*/
|
|
28
|
-
export interface AboutConfig {
|
|
29
|
-
/** Application information */
|
|
30
|
-
appInfo?: Partial<AppInfo>;
|
|
31
|
-
/** Custom theme colors */
|
|
32
|
-
theme?: {
|
|
33
|
-
primary?: string;
|
|
34
|
-
secondary?: string;
|
|
35
|
-
background?: string;
|
|
36
|
-
text?: string;
|
|
37
|
-
border?: string;
|
|
38
|
-
};
|
|
39
|
-
/** Custom styling options */
|
|
40
|
-
style?: {
|
|
41
|
-
containerStyle?: Record<string, unknown>;
|
|
42
|
-
itemStyle?: Record<string, unknown>;
|
|
43
|
-
textStyle?: Record<string, unknown>;
|
|
44
|
-
iconStyle?: Record<string, unknown>;
|
|
45
|
-
};
|
|
46
|
-
/** Custom actions */
|
|
47
|
-
actions?: {
|
|
48
|
-
onWebsitePress?: () => void;
|
|
49
|
-
onEmailPress?: () => void;
|
|
50
|
-
onMoreAppsPress?: () => void;
|
|
51
|
-
};
|
|
52
|
-
/** Localized texts for section headers and labels */
|
|
53
|
-
texts?: {
|
|
54
|
-
title?: string;
|
|
55
|
-
contact?: string;
|
|
56
|
-
more?: string;
|
|
57
|
-
developer?: string;
|
|
58
|
-
email?: string;
|
|
59
|
-
website?: string;
|
|
60
|
-
moreApps?: string;
|
|
61
|
-
loading?: string;
|
|
62
|
-
errorPrefix?: string;
|
|
63
|
-
noInfo?: string;
|
|
64
|
-
versionPrefix?: string;
|
|
65
|
-
};
|
|
66
|
-
/** Navigation route name */
|
|
67
|
-
route?: string;
|
|
68
|
-
/** Default navigation route name */
|
|
69
|
-
defaultRoute?: string;
|
|
70
|
-
/** Section title */
|
|
71
|
-
title?: string;
|
|
72
|
-
/** Section description */
|
|
73
|
-
description?: string;
|
|
74
|
-
/** Custom onPress handler (overrides navigation) */
|
|
75
|
-
onPress?: () => void;
|
|
76
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Repository interface for About data
|
|
3
|
-
* Defines contract for data access layer
|
|
4
|
-
*/
|
|
5
|
-
import { AppInfo } from '../entities/AppInfo';
|
|
6
|
-
export interface IAboutRepository {
|
|
7
|
-
/**
|
|
8
|
-
* Get application information
|
|
9
|
-
*/
|
|
10
|
-
getAppInfo(): Promise<AppInfo>;
|
|
11
|
-
/**
|
|
12
|
-
* Save application information
|
|
13
|
-
*/
|
|
14
|
-
saveAppInfo(appInfo: AppInfo): Promise<void>;
|
|
15
|
-
/**
|
|
16
|
-
* Update application information
|
|
17
|
-
*/
|
|
18
|
-
updateAppInfo(updates: Partial<AppInfo>): Promise<AppInfo>;
|
|
19
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* About Domain
|
|
3
|
-
* User information, app details, version info
|
|
4
|
-
*/
|
|
5
|
-
export * from './presentation/screens/AboutScreen';
|
|
6
|
-
export * from './presentation/components/AboutContent';
|
|
7
|
-
export * from './presentation/components/AboutSection';
|
|
8
|
-
export * from './presentation/components/AboutSettingItem';
|
|
9
|
-
export * from './presentation/components/AboutHeader';
|
|
10
|
-
export * from './domain/entities/AppInfo';
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Repository implementation for About data
|
|
3
|
-
* Handles data persistence and retrieval
|
|
4
|
-
* Optimized for performance and memory safety
|
|
5
|
-
*/
|
|
6
|
-
import { AppInfo } from '../../domain/entities/AppInfo';
|
|
7
|
-
import { IAboutRepository } from '../../domain/repositories/IAboutRepository';
|
|
8
|
-
export declare class AboutRepository implements IAboutRepository {
|
|
9
|
-
private appInfo;
|
|
10
|
-
private isDestroyed;
|
|
11
|
-
getAppInfo(): Promise<AppInfo>;
|
|
12
|
-
saveAppInfo(appInfo: AppInfo): Promise<void>;
|
|
13
|
-
updateAppInfo(updates: Partial<AppInfo>): Promise<AppInfo>;
|
|
14
|
-
/**
|
|
15
|
-
* Cleanup method to prevent memory leaks
|
|
16
|
-
*/
|
|
17
|
-
destroy(): void;
|
|
18
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* About Content Component
|
|
3
|
-
* Displays the list of about items organized in sections
|
|
4
|
-
*/
|
|
5
|
-
import React from 'react';
|
|
6
|
-
import { AppInfo } from '../../domain/entities/AppInfo';
|
|
7
|
-
import { AboutConfig } from '../../domain/entities/AppInfo';
|
|
8
|
-
export interface AboutContentProps {
|
|
9
|
-
/** App information to display */
|
|
10
|
-
appInfo: AppInfo;
|
|
11
|
-
/** Configuration for actions */
|
|
12
|
-
config: AboutConfig;
|
|
13
|
-
}
|
|
14
|
-
export declare const AboutContent: React.FC<AboutContentProps>;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* About Header Component
|
|
3
|
-
* Displays app name, version, and description
|
|
4
|
-
*/
|
|
5
|
-
import React from 'react';
|
|
6
|
-
import { ViewStyle, TextStyle } from 'react-native';
|
|
7
|
-
import { AppInfo } from '../../domain/entities/AppInfo';
|
|
8
|
-
export interface AboutHeaderProps {
|
|
9
|
-
/** App information to display */
|
|
10
|
-
appInfo: AppInfo;
|
|
11
|
-
/** Custom container style */
|
|
12
|
-
containerStyle?: ViewStyle;
|
|
13
|
-
/** Custom title style */
|
|
14
|
-
titleStyle?: TextStyle;
|
|
15
|
-
/** Custom version style */
|
|
16
|
-
versionStyle?: TextStyle;
|
|
17
|
-
descriptionStyle?: TextStyle;
|
|
18
|
-
versionPrefix?: string;
|
|
19
|
-
testID?: string;
|
|
20
|
-
}
|
|
21
|
-
export declare const AboutHeader: React.FC<AboutHeaderProps>;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { ViewStyle } from 'react-native';
|
|
3
|
-
import { AboutConfig } from '../../domain/entities/AppInfo';
|
|
4
|
-
export interface AboutSectionProps {
|
|
5
|
-
config?: AboutConfig;
|
|
6
|
-
onPress?: () => void;
|
|
7
|
-
containerStyle?: ViewStyle;
|
|
8
|
-
title?: string;
|
|
9
|
-
description?: string;
|
|
10
|
-
sectionTitle?: string;
|
|
11
|
-
noBackground?: boolean;
|
|
12
|
-
hideMargin?: boolean;
|
|
13
|
-
}
|
|
14
|
-
export declare const AboutSection: React.FC<AboutSectionProps>;
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* About Setting Item Component
|
|
3
|
-
* Reusable setting item for about screen
|
|
4
|
-
* Fully configurable and generic
|
|
5
|
-
* Optimized for performance and memory safety
|
|
6
|
-
*/
|
|
7
|
-
import React from 'react';
|
|
8
|
-
import { ViewStyle, TextStyle } from 'react-native';
|
|
9
|
-
export interface AboutSettingItemProps {
|
|
10
|
-
/** Icon component (any React component) */
|
|
11
|
-
icon?: React.ReactNode;
|
|
12
|
-
/** Main title text */
|
|
13
|
-
title: string;
|
|
14
|
-
/** Optional description text */
|
|
15
|
-
description?: string;
|
|
16
|
-
/** Optional value to display on the right */
|
|
17
|
-
value?: string;
|
|
18
|
-
/** Callback when pressed */
|
|
19
|
-
onPress?: () => void;
|
|
20
|
-
/** Show chevron arrow on right */
|
|
21
|
-
showChevron?: boolean;
|
|
22
|
-
/** Custom container style */
|
|
23
|
-
containerStyle?: ViewStyle;
|
|
24
|
-
/** Custom title style */
|
|
25
|
-
titleStyle?: TextStyle;
|
|
26
|
-
/** Custom description style */
|
|
27
|
-
descriptionStyle?: TextStyle;
|
|
28
|
-
/** Custom value style */
|
|
29
|
-
valueStyle?: TextStyle;
|
|
30
|
-
/** Custom icon container style */
|
|
31
|
-
iconContainerStyle?: ViewStyle;
|
|
32
|
-
/** Make item look disabled */
|
|
33
|
-
disabled?: boolean;
|
|
34
|
-
/** Test ID for E2E testing */
|
|
35
|
-
testID?: string;
|
|
36
|
-
/** Custom chevron color */
|
|
37
|
-
chevronColor?: string;
|
|
38
|
-
}
|
|
39
|
-
export declare const AboutSettingItem: React.FC<AboutSettingItemProps>;
|