@umituz/react-native-design-system 1.4.3 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (236) hide show
  1. package/README.md +0 -1
  2. package/lib/index.d.ts +4 -5
  3. package/lib/index.d.ts.map +1 -1
  4. package/lib/index.js +14 -17
  5. package/lib/index.js.map +1 -1
  6. package/lib/presentation/atoms/AtomicAvatar.js +1 -1
  7. package/lib/presentation/atoms/AtomicAvatar.js.map +1 -1
  8. package/lib/presentation/atoms/AtomicAvatarGroup.js +1 -1
  9. package/lib/presentation/atoms/AtomicAvatarGroup.js.map +1 -1
  10. package/lib/presentation/atoms/AtomicBadge.js +1 -1
  11. package/lib/presentation/atoms/AtomicBadge.js.map +1 -1
  12. package/lib/presentation/atoms/AtomicButton.d.ts +1 -1
  13. package/lib/presentation/atoms/AtomicButton.d.ts.map +1 -1
  14. package/lib/presentation/atoms/AtomicButton.js +2 -2
  15. package/lib/presentation/atoms/AtomicButton.js.map +1 -1
  16. package/lib/presentation/atoms/AtomicCard.js +1 -1
  17. package/lib/presentation/atoms/AtomicCard.js.map +1 -1
  18. package/lib/presentation/atoms/AtomicChip.js +1 -1
  19. package/lib/presentation/atoms/AtomicChip.js.map +1 -1
  20. package/lib/presentation/atoms/AtomicDatePicker.js +1 -1
  21. package/lib/presentation/atoms/AtomicDatePicker.js.map +1 -1
  22. package/lib/presentation/atoms/AtomicDivider.js +1 -1
  23. package/lib/presentation/atoms/AtomicDivider.js.map +1 -1
  24. package/lib/presentation/atoms/AtomicFab.js +1 -1
  25. package/lib/presentation/atoms/AtomicFab.js.map +1 -1
  26. package/lib/presentation/atoms/AtomicFilter.js +1 -1
  27. package/lib/presentation/atoms/AtomicFilter.js.map +1 -1
  28. package/lib/presentation/atoms/AtomicFormError.js +2 -2
  29. package/lib/presentation/atoms/AtomicFormError.js.map +1 -1
  30. package/lib/presentation/atoms/AtomicIcon.d.ts +2 -3
  31. package/lib/presentation/atoms/AtomicIcon.d.ts.map +1 -1
  32. package/lib/presentation/atoms/AtomicIcon.js +1 -1
  33. package/lib/presentation/atoms/AtomicIcon.js.map +1 -1
  34. package/lib/presentation/atoms/AtomicImage.js +1 -1
  35. package/lib/presentation/atoms/AtomicImage.js.map +1 -1
  36. package/lib/presentation/atoms/AtomicInput.js +1 -1
  37. package/lib/presentation/atoms/AtomicInput.js.map +1 -1
  38. package/lib/presentation/atoms/AtomicPicker.js +1 -1
  39. package/lib/presentation/atoms/AtomicPicker.js.map +1 -1
  40. package/lib/presentation/atoms/AtomicProgress.js +1 -1
  41. package/lib/presentation/atoms/AtomicProgress.js.map +1 -1
  42. package/lib/presentation/atoms/AtomicSearchBar.js +1 -1
  43. package/lib/presentation/atoms/AtomicSearchBar.js.map +1 -1
  44. package/lib/presentation/atoms/AtomicSort.js +1 -1
  45. package/lib/presentation/atoms/AtomicSort.js.map +1 -1
  46. package/lib/presentation/atoms/AtomicSwitch.js +1 -1
  47. package/lib/presentation/atoms/AtomicSwitch.js.map +1 -1
  48. package/lib/presentation/atoms/AtomicText.d.ts +21 -1
  49. package/lib/presentation/atoms/AtomicText.d.ts.map +1 -1
  50. package/lib/presentation/atoms/AtomicText.js +31 -10
  51. package/lib/presentation/atoms/AtomicText.js.map +1 -1
  52. package/lib/presentation/atoms/AtomicTextArea.js +1 -1
  53. package/lib/presentation/atoms/AtomicTextArea.js.map +1 -1
  54. package/lib/presentation/atoms/AtomicTouchable.js +1 -1
  55. package/lib/presentation/atoms/AtomicTouchable.js.map +1 -1
  56. package/lib/presentation/atoms/fab/styles/fabStyles.d.ts +1 -1
  57. package/lib/presentation/atoms/fab/styles/fabStyles.d.ts.map +1 -1
  58. package/lib/presentation/atoms/index.d.ts +1 -1
  59. package/lib/presentation/atoms/input/styles/inputStyles.d.ts +1 -1
  60. package/lib/presentation/atoms/input/styles/inputStyles.d.ts.map +1 -1
  61. package/lib/presentation/atoms/picker/styles/pickerStyles.d.ts +12 -23
  62. package/lib/presentation/atoms/picker/styles/pickerStyles.d.ts.map +1 -1
  63. package/lib/presentation/atoms/picker/styles/pickerStyles.js.map +1 -1
  64. package/lib/presentation/molecules/AtomicConfirmationModal.d.ts +2 -2
  65. package/lib/presentation/molecules/AtomicConfirmationModal.d.ts.map +1 -1
  66. package/lib/presentation/molecules/AtomicConfirmationModal.js +3 -22
  67. package/lib/presentation/molecules/AtomicConfirmationModal.js.map +1 -1
  68. package/lib/presentation/molecules/EmptyState.js +1 -1
  69. package/lib/presentation/molecules/EmptyState.js.map +1 -1
  70. package/lib/presentation/molecules/FormField.js +1 -1
  71. package/lib/presentation/molecules/FormField.js.map +1 -1
  72. package/lib/presentation/molecules/IconContainer.js +1 -1
  73. package/lib/presentation/molecules/IconContainer.js.map +1 -1
  74. package/lib/presentation/molecules/ListItem.js +1 -1
  75. package/lib/presentation/molecules/ListItem.js.map +1 -1
  76. package/lib/presentation/molecules/ScreenHeader.js +1 -1
  77. package/lib/presentation/molecules/ScreenHeader.js.map +1 -1
  78. package/lib/presentation/molecules/SearchBar.js +1 -1
  79. package/lib/presentation/molecules/SearchBar.js.map +1 -1
  80. package/lib/presentation/molecules/SectionCard.js +1 -1
  81. package/lib/presentation/molecules/SectionCard.js.map +1 -1
  82. package/lib/presentation/molecules/SectionContainer.js +1 -1
  83. package/lib/presentation/molecules/SectionContainer.js.map +1 -1
  84. package/lib/presentation/molecules/SectionHeader.js +1 -1
  85. package/lib/presentation/molecules/SectionHeader.js.map +1 -1
  86. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.d.ts +1 -1
  87. package/lib/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.d.ts.map +1 -1
  88. package/lib/presentation/molecules/confirmation-modal/types/index.d.ts +4 -6
  89. package/lib/presentation/molecules/confirmation-modal/types/index.d.ts.map +1 -1
  90. package/lib/presentation/molecules/index.d.ts +0 -1
  91. package/lib/presentation/molecules/index.d.ts.map +1 -1
  92. package/lib/presentation/molecules/index.js +0 -1
  93. package/lib/presentation/molecules/index.js.map +1 -1
  94. package/lib/presentation/molecules/listitem/styles/listItemStyles.d.ts +1 -1
  95. package/lib/presentation/molecules/listitem/styles/listItemStyles.d.ts.map +1 -1
  96. package/lib/presentation/organisms/AppHeader.d.ts +3 -2
  97. package/lib/presentation/organisms/AppHeader.d.ts.map +1 -1
  98. package/lib/presentation/organisms/AppHeader.js +1 -1
  99. package/lib/presentation/organisms/AppHeader.js.map +1 -1
  100. package/lib/presentation/organisms/FormContainer.js +1 -1
  101. package/lib/presentation/organisms/FormContainer.js.map +1 -1
  102. package/lib/presentation/organisms/ScreenLayout.js +1 -1
  103. package/lib/presentation/organisms/ScreenLayout.js.map +1 -1
  104. package/lib/presentation/tokens/commonStyles.d.ts +1 -1
  105. package/lib/presentation/tokens/commonStyles.js +2 -2
  106. package/lib/presentation/tokens/commonStyles.js.map +1 -1
  107. package/package.json +2 -6
  108. package/src/index.ts +17 -26
  109. package/src/presentation/atoms/AtomicAvatar.tsx +1 -1
  110. package/src/presentation/atoms/AtomicAvatarGroup.tsx +1 -1
  111. package/src/presentation/atoms/AtomicBadge.tsx +2 -2
  112. package/src/presentation/atoms/AtomicButton.tsx +3 -3
  113. package/src/presentation/atoms/AtomicCard.tsx +1 -1
  114. package/src/presentation/atoms/AtomicChip.tsx +1 -1
  115. package/src/presentation/atoms/AtomicDatePicker.tsx +1 -1
  116. package/src/presentation/atoms/AtomicDivider.tsx +1 -1
  117. package/src/presentation/atoms/AtomicFab.tsx +1 -1
  118. package/src/presentation/atoms/AtomicFilter.tsx +1 -1
  119. package/src/presentation/atoms/AtomicFormError.tsx +2 -2
  120. package/src/presentation/atoms/AtomicIcon.tsx +3 -4
  121. package/src/presentation/atoms/AtomicImage.tsx +1 -1
  122. package/src/presentation/atoms/AtomicInput.tsx +1 -1
  123. package/src/presentation/atoms/AtomicPicker.tsx +1 -1
  124. package/src/presentation/atoms/AtomicProgress.tsx +1 -1
  125. package/src/presentation/atoms/AtomicSearchBar.tsx +1 -1
  126. package/src/presentation/atoms/AtomicSort.tsx +1 -1
  127. package/src/presentation/atoms/AtomicSwitch.tsx +1 -1
  128. package/src/presentation/atoms/AtomicText.tsx +80 -14
  129. package/src/presentation/atoms/AtomicTextArea.tsx +1 -1
  130. package/src/presentation/atoms/AtomicTouchable.tsx +2 -2
  131. package/src/presentation/atoms/fab/styles/fabStyles.ts +1 -1
  132. package/src/presentation/atoms/input/styles/inputStyles.ts +1 -1
  133. package/src/presentation/atoms/picker/styles/pickerStyles.ts +13 -6
  134. package/src/presentation/molecules/AtomicConfirmationModal.tsx +5 -26
  135. package/src/presentation/molecules/EmptyState.tsx +1 -1
  136. package/src/presentation/molecules/FormField.tsx +1 -1
  137. package/src/presentation/molecules/IconContainer.tsx +1 -1
  138. package/src/presentation/molecules/ListItem.tsx +1 -1
  139. package/src/presentation/molecules/ScreenHeader.tsx +1 -1
  140. package/src/presentation/molecules/SearchBar.tsx +1 -1
  141. package/src/presentation/molecules/SectionCard.tsx +1 -1
  142. package/src/presentation/molecules/SectionContainer.tsx +1 -1
  143. package/src/presentation/molecules/SectionHeader.tsx +1 -1
  144. package/src/presentation/molecules/confirmation-modal/styles/confirmationModalStyles.ts +1 -1
  145. package/src/presentation/molecules/confirmation-modal/types/index.ts +4 -6
  146. package/src/presentation/molecules/index.ts +0 -1
  147. package/src/presentation/molecules/listitem/styles/listItemStyles.ts +1 -1
  148. package/src/presentation/organisms/AppHeader.tsx +4 -3
  149. package/src/presentation/organisms/FormContainer.tsx +1 -1
  150. package/src/presentation/organisms/ScreenLayout.tsx +1 -1
  151. package/src/presentation/tokens/commonStyles.ts +2 -2
  152. package/lib/domains/icons/domain/config/IconLibraryConfig.d.ts +0 -91
  153. package/lib/domains/icons/domain/config/IconLibraryConfig.d.ts.map +0 -1
  154. package/lib/domains/icons/domain/config/IconLibraryConfig.js +0 -85
  155. package/lib/domains/icons/domain/config/IconLibraryConfig.js.map +0 -1
  156. package/lib/domains/icons/domain/entities/Icon.d.ts +0 -111
  157. package/lib/domains/icons/domain/entities/Icon.d.ts.map +0 -1
  158. package/lib/domains/icons/domain/entities/Icon.js +0 -87
  159. package/lib/domains/icons/domain/entities/Icon.js.map +0 -1
  160. package/lib/domains/icons/domain/interfaces/IIconAdapter.d.ts +0 -114
  161. package/lib/domains/icons/domain/interfaces/IIconAdapter.d.ts.map +0 -1
  162. package/lib/domains/icons/domain/interfaces/IIconAdapter.js +0 -17
  163. package/lib/domains/icons/domain/interfaces/IIconAdapter.js.map +0 -1
  164. package/lib/domains/icons/index.d.ts +0 -84
  165. package/lib/domains/icons/index.d.ts.map +0 -1
  166. package/lib/domains/icons/index.js +0 -89
  167. package/lib/domains/icons/index.js.map +0 -1
  168. package/lib/domains/icons/infrastructure/adapters/LucideAdapter.d.ts +0 -24
  169. package/lib/domains/icons/infrastructure/adapters/LucideAdapter.d.ts.map +0 -1
  170. package/lib/domains/icons/infrastructure/adapters/LucideAdapter.js +0 -85
  171. package/lib/domains/icons/infrastructure/adapters/LucideAdapter.js.map +0 -1
  172. package/lib/domains/icons/infrastructure/registries/ExpoIconRegistry.d.ts +0 -23
  173. package/lib/domains/icons/infrastructure/registries/ExpoIconRegistry.d.ts.map +0 -1
  174. package/lib/domains/icons/infrastructure/registries/ExpoIconRegistry.js +0 -178
  175. package/lib/domains/icons/infrastructure/registries/ExpoIconRegistry.js.map +0 -1
  176. package/lib/domains/icons/presentation/components/Icon.d.ts +0 -42
  177. package/lib/domains/icons/presentation/components/Icon.d.ts.map +0 -1
  178. package/lib/domains/icons/presentation/components/Icon.js +0 -86
  179. package/lib/domains/icons/presentation/components/Icon.js.map +0 -1
  180. package/lib/domains/icons/presentation/hooks/useIconLibrary.d.ts +0 -38
  181. package/lib/domains/icons/presentation/hooks/useIconLibrary.d.ts.map +0 -1
  182. package/lib/domains/icons/presentation/hooks/useIconLibrary.js +0 -114
  183. package/lib/domains/icons/presentation/hooks/useIconLibrary.js.map +0 -1
  184. package/lib/infrastructure/theme/globalThemeStore.d.ts +0 -42
  185. package/lib/infrastructure/theme/globalThemeStore.d.ts.map +0 -1
  186. package/lib/infrastructure/theme/globalThemeStore.js +0 -38
  187. package/lib/infrastructure/theme/globalThemeStore.js.map +0 -1
  188. package/lib/presentation/hooks/useAppDesignTokens.d.ts +0 -34
  189. package/lib/presentation/hooks/useAppDesignTokens.d.ts.map +0 -1
  190. package/lib/presentation/hooks/useAppDesignTokens.js +0 -39
  191. package/lib/presentation/hooks/useAppDesignTokens.js.map +0 -1
  192. package/lib/presentation/molecules/LanguageSwitcher.d.ts +0 -10
  193. package/lib/presentation/molecules/LanguageSwitcher.d.ts.map +0 -1
  194. package/lib/presentation/molecules/LanguageSwitcher.js +0 -24
  195. package/lib/presentation/molecules/LanguageSwitcher.js.map +0 -1
  196. package/lib/presentation/molecules/languageswitcher/config/languageSwitcherConfig.d.ts +0 -11
  197. package/lib/presentation/molecules/languageswitcher/config/languageSwitcherConfig.d.ts.map +0 -1
  198. package/lib/presentation/molecules/languageswitcher/config/languageSwitcherConfig.js +0 -6
  199. package/lib/presentation/molecules/languageswitcher/config/languageSwitcherConfig.js.map +0 -1
  200. package/lib/presentation/molecules/languageswitcher/hooks/useLanguageNavigation.d.ts +0 -5
  201. package/lib/presentation/molecules/languageswitcher/hooks/useLanguageNavigation.d.ts.map +0 -1
  202. package/lib/presentation/molecules/languageswitcher/hooks/useLanguageNavigation.js +0 -14
  203. package/lib/presentation/molecules/languageswitcher/hooks/useLanguageNavigation.js.map +0 -1
  204. package/lib/presentation/tokens/AppDesignTokens.d.ts +0 -14
  205. package/lib/presentation/tokens/AppDesignTokens.d.ts.map +0 -1
  206. package/lib/presentation/tokens/AppDesignTokens.js +0 -23
  207. package/lib/presentation/tokens/AppDesignTokens.js.map +0 -1
  208. package/lib/presentation/tokens/core/BaseTokens.d.ts +0 -312
  209. package/lib/presentation/tokens/core/BaseTokens.d.ts.map +0 -1
  210. package/lib/presentation/tokens/core/BaseTokens.js +0 -307
  211. package/lib/presentation/tokens/core/BaseTokens.js.map +0 -1
  212. package/lib/presentation/tokens/core/ColorPalette.d.ts +0 -216
  213. package/lib/presentation/tokens/core/ColorPalette.d.ts.map +0 -1
  214. package/lib/presentation/tokens/core/ColorPalette.js +0 -330
  215. package/lib/presentation/tokens/core/ColorPalette.js.map +0 -1
  216. package/lib/presentation/tokens/core/TokenFactory.d.ts +0 -216
  217. package/lib/presentation/tokens/core/TokenFactory.d.ts.map +0 -1
  218. package/lib/presentation/tokens/core/TokenFactory.js +0 -86
  219. package/lib/presentation/tokens/core/TokenFactory.js.map +0 -1
  220. package/src/domains/icons/domain/config/IconLibraryConfig.ts +0 -93
  221. package/src/domains/icons/domain/entities/Icon.ts +0 -143
  222. package/src/domains/icons/domain/interfaces/IIconAdapter.ts +0 -147
  223. package/src/domains/icons/index.ts +0 -109
  224. package/src/domains/icons/infrastructure/adapters/LucideAdapter.ts +0 -100
  225. package/src/domains/icons/infrastructure/registries/ExpoIconRegistry.ts +0 -191
  226. package/src/domains/icons/presentation/components/Icon.tsx +0 -132
  227. package/src/domains/icons/presentation/hooks/useIconLibrary.ts +0 -141
  228. package/src/infrastructure/theme/globalThemeStore.ts +0 -51
  229. package/src/presentation/hooks/useAppDesignTokens.ts +0 -40
  230. package/src/presentation/molecules/LanguageSwitcher.tsx +0 -42
  231. package/src/presentation/molecules/languageswitcher/config/languageSwitcherConfig.ts +0 -5
  232. package/src/presentation/molecules/languageswitcher/hooks/useLanguageNavigation.ts +0 -16
  233. package/src/presentation/tokens/AppDesignTokens.ts +0 -55
  234. package/src/presentation/tokens/core/BaseTokens.ts +0 -376
  235. package/src/presentation/tokens/core/ColorPalette.ts +0 -400
  236. package/src/presentation/tokens/core/TokenFactory.ts +0 -118
@@ -1 +0,0 @@
1
- {"version":3,"file":"IIconAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/domains/icons/domain/interfaces/IIconAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mDAAmD,CAAC;AAEtF,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC9B,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAChE,MAAM,MAAM,SAAS,GACjB,SAAS,GACT,WAAW,GACX,SAAS,GACT,SAAS,GACT,OAAO,GACP,MAAM,GACN,WAAW,GACX,gBAAgB,GAChB,WAAW,GACX,aAAa,GACb,aAAa,CAAC;AAElB;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAE9D;;;;;OAKG;IACH,WAAW,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAE7D;;;;;;OAMG;IACH,YAAY,EAAE,CACZ,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,YAAY,EACpB,WAAW,CAAC,EAAE,MAAM,KACjB,MAAM,CAAC;IAEZ;;;OAGG;IACH,WAAW,EAAE,MAAM,MAAM,EAAE,CAAC;IAE5B;;;;OAIG;IACH,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAEnC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAEhB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Icon Adapter Interface
3
- *
4
- * Universal interface that all icon library adapters must implement.
5
- * This allows seamless switching between icon libraries.
6
- *
7
- * @example
8
- * // Implementing for a new library:
9
- * export const MyLibraryAdapter: IIconAdapter = {
10
- * getIconComponent: (name) => MyIcons[name],
11
- * getIconSize: (size) => sizeMap[size],
12
- * getIconColor: (color, tokens) => colorMap[color],
13
- * getAllIcons: () => Object.keys(MyIcons),
14
- * };
15
- */
16
- export {};
17
- //# sourceMappingURL=IIconAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IIconAdapter.js","sourceRoot":"","sources":["../../../../../src/domains/icons/domain/interfaces/IIconAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
@@ -1,84 +0,0 @@
1
- /**
2
- * Icons Domain - Centralized Icon System
3
- *
4
- * 🎯 SINGLE SOURCE OF TRUTH FOR ALL ICONS
5
- *
6
- * Universal icon library system with easy library switching.
7
- * Change icon library = change one config file!
8
- *
9
- * @domain icons
10
- * @enabled true (All apps)
11
- *
12
- * ARCHITECTURE:
13
- * ```
14
- * domains/icons/
15
- * ├── domain/
16
- * │ ├── config/
17
- * │ │ └── IconLibraryConfig.ts 🔧 Change library here!
18
- * │ └── interfaces/
19
- * │ └── IIconAdapter.ts Interface for adapters
20
- * ├── infrastructure/
21
- * │ └── adapters/
22
- * │ ├── LucideAdapter.ts Current: Lucide (1,639 icons)
23
- * │ ├── MaterialAdapter.ts Future: Material Icons
24
- * │ └── FontAwesomeAdapter.ts Future: Font Awesome
25
- * └── presentation/
26
- * └── components/
27
- * └── Icon.tsx Universal Icon component
28
- * ```
29
- *
30
- * USAGE:
31
- * ```typescript
32
- * import { Icon } from '@domains/icons';
33
- *
34
- * // Basic usage
35
- * <Icon name="Settings" size="md" color="primary" />
36
- *
37
- * // Custom size and color
38
- * <Icon name="Heart" customSize={32} customColor="#FF0000" />
39
- *
40
- * // With background
41
- * <Icon name="Info" size="lg" withBackground backgroundColor="#667eea" />
42
- * ```
43
- *
44
- * 🔧 TO CHANGE ICON LIBRARY:
45
- *
46
- * Step 1: Update package.json
47
- * ```json
48
- * {
49
- * "dependencies": {
50
- * "new-icon-library": "^1.0.0"
51
- * }
52
- * }
53
- * ```
54
- *
55
- * Step 2: Change CURRENT_LIBRARY in domain/config/IconLibraryConfig.ts
56
- * ```typescript
57
- * export const CURRENT_LIBRARY: IconLibraryType = 'material'; // Changed!
58
- * ```
59
- *
60
- * Step 3: Create adapter (if needed)
61
- * ```typescript
62
- * // infrastructure/adapters/MaterialAdapter.ts
63
- * export const MaterialAdapter: IIconAdapter = {
64
- * getIconComponent: (name) => MaterialIcons[name],
65
- * // ... implement interface
66
- * };
67
- * ```
68
- *
69
- * Step 4: Done! All apps use new library automatically ✅
70
- *
71
- * CURRENT LIBRARY: Lucide (1,639 icons)
72
- * @see https://lucide.dev/icons/
73
- *
74
- * DEPENDENCIES:
75
- * - lucide-react-native: ^0.468.0 (Current library)
76
- */
77
- export { Icon } from './presentation/components/Icon';
78
- export type { IconProps, IconSize, IconColor, IconName, } from './presentation/components/Icon';
79
- export { CURRENT_LIBRARY, ICON_LIBRARY_CONFIG, getCurrentLibrary, isLucideLibrary, } from './domain/config/IconLibraryConfig';
80
- export type { IconLibraryType } from './domain/config/IconLibraryConfig';
81
- export type { IIconAdapter } from './domain/interfaces/IIconAdapter';
82
- export { LucideAdapter } from './infrastructure/adapters/LucideAdapter';
83
- export type { LucideIconName } from './infrastructure/adapters/LucideAdapter';
84
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domains/icons/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AAMH,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD,YAAY,EACV,SAAS,EACT,QAAQ,EACR,SAAS,EACT,QAAQ,GACT,MAAM,gCAAgC,CAAC;AAMxC,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEzE,YAAY,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAMrE,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,YAAY,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC"}
@@ -1,89 +0,0 @@
1
- /**
2
- * Icons Domain - Centralized Icon System
3
- *
4
- * 🎯 SINGLE SOURCE OF TRUTH FOR ALL ICONS
5
- *
6
- * Universal icon library system with easy library switching.
7
- * Change icon library = change one config file!
8
- *
9
- * @domain icons
10
- * @enabled true (All apps)
11
- *
12
- * ARCHITECTURE:
13
- * ```
14
- * domains/icons/
15
- * ├── domain/
16
- * │ ├── config/
17
- * │ │ └── IconLibraryConfig.ts 🔧 Change library here!
18
- * │ └── interfaces/
19
- * │ └── IIconAdapter.ts Interface for adapters
20
- * ├── infrastructure/
21
- * │ └── adapters/
22
- * │ ├── LucideAdapter.ts Current: Lucide (1,639 icons)
23
- * │ ├── MaterialAdapter.ts Future: Material Icons
24
- * │ └── FontAwesomeAdapter.ts Future: Font Awesome
25
- * └── presentation/
26
- * └── components/
27
- * └── Icon.tsx Universal Icon component
28
- * ```
29
- *
30
- * USAGE:
31
- * ```typescript
32
- * import { Icon } from '@domains/icons';
33
- *
34
- * // Basic usage
35
- * <Icon name="Settings" size="md" color="primary" />
36
- *
37
- * // Custom size and color
38
- * <Icon name="Heart" customSize={32} customColor="#FF0000" />
39
- *
40
- * // With background
41
- * <Icon name="Info" size="lg" withBackground backgroundColor="#667eea" />
42
- * ```
43
- *
44
- * 🔧 TO CHANGE ICON LIBRARY:
45
- *
46
- * Step 1: Update package.json
47
- * ```json
48
- * {
49
- * "dependencies": {
50
- * "new-icon-library": "^1.0.0"
51
- * }
52
- * }
53
- * ```
54
- *
55
- * Step 2: Change CURRENT_LIBRARY in domain/config/IconLibraryConfig.ts
56
- * ```typescript
57
- * export const CURRENT_LIBRARY: IconLibraryType = 'material'; // Changed!
58
- * ```
59
- *
60
- * Step 3: Create adapter (if needed)
61
- * ```typescript
62
- * // infrastructure/adapters/MaterialAdapter.ts
63
- * export const MaterialAdapter: IIconAdapter = {
64
- * getIconComponent: (name) => MaterialIcons[name],
65
- * // ... implement interface
66
- * };
67
- * ```
68
- *
69
- * Step 4: Done! All apps use new library automatically ✅
70
- *
71
- * CURRENT LIBRARY: Lucide (1,639 icons)
72
- * @see https://lucide.dev/icons/
73
- *
74
- * DEPENDENCIES:
75
- * - lucide-react-native: ^0.468.0 (Current library)
76
- */
77
- // ============================================================================
78
- // PRESENTATION LAYER - Universal Icon Component
79
- // ============================================================================
80
- export { Icon } from './presentation/components/Icon';
81
- // ============================================================================
82
- // DOMAIN LAYER - Configuration & Interfaces
83
- // ============================================================================
84
- export { CURRENT_LIBRARY, ICON_LIBRARY_CONFIG, getCurrentLibrary, isLucideLibrary, } from './domain/config/IconLibraryConfig';
85
- // ============================================================================
86
- // INFRASTRUCTURE LAYER - Adapters
87
- // ============================================================================
88
- export { LucideAdapter } from './infrastructure/adapters/LucideAdapter';
89
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domains/icons/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AAEH,+EAA+E;AAC/E,gDAAgD;AAChD,+EAA+E;AAE/E,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AAQtD,+EAA+E;AAC/E,4CAA4C;AAC5C,+EAA+E;AAE/E,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAK3C,+EAA+E;AAC/E,kCAAkC;AAClC,+EAA+E;AAE/E,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC"}
@@ -1,24 +0,0 @@
1
- /**
2
- * Lucide Icon Library Adapter
3
- *
4
- * Adapter for lucide-react-native library (1,639 icons).
5
- * Implements IIconAdapter interface for seamless library switching.
6
- *
7
- * @library lucide-react-native
8
- * @version ^0.468.0
9
- * @icons 1,639
10
- * @type outline
11
- *
12
- * @see https://lucide.dev/icons/
13
- */
14
- import { icons } from 'lucide-react-native';
15
- import type { IIconAdapter } from '../../domain/interfaces/IIconAdapter';
16
- /**
17
- * Lucide Adapter Implementation
18
- */
19
- export declare const LucideAdapter: IIconAdapter;
20
- /**
21
- * Lucide icon names type (for TypeScript autocomplete)
22
- */
23
- export type LucideIconName = keyof typeof icons;
24
- //# sourceMappingURL=LucideAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LucideAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/domains/icons/infrastructure/adapters/LucideAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAuB,MAAM,sCAAsC,CAAC;AAe9F;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,YA6D3B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,KAAK,CAAC"}
@@ -1,85 +0,0 @@
1
- /**
2
- * Lucide Icon Library Adapter
3
- *
4
- * Adapter for lucide-react-native library (1,639 icons).
5
- * Implements IIconAdapter interface for seamless library switching.
6
- *
7
- * @library lucide-react-native
8
- * @version ^0.468.0
9
- * @icons 1,639
10
- * @type outline
11
- *
12
- * @see https://lucide.dev/icons/
13
- */
14
- import { icons } from 'lucide-react-native';
15
- /**
16
- * Size mapping: Semantic → Pixels
17
- */
18
- const SIZE_MAP = {
19
- xs: 16,
20
- sm: 20,
21
- md: 24,
22
- lg: 28,
23
- xl: 32,
24
- xxl: 40,
25
- };
26
- /**
27
- * Lucide Adapter Implementation
28
- */
29
- export const LucideAdapter = {
30
- /**
31
- * Get Lucide icon component by name
32
- */
33
- getIconComponent: (name) => {
34
- const IconComponent = icons[name];
35
- if (!IconComponent) {
36
- console.warn(`[LucideAdapter] Icon "${name}" not found in Lucide library`);
37
- return null;
38
- }
39
- return IconComponent;
40
- },
41
- /**
42
- * Get icon size in pixels
43
- */
44
- getIconSize: (size, customSize) => {
45
- return customSize || SIZE_MAP[size];
46
- },
47
- /**
48
- * Get icon color from theme
49
- */
50
- getIconColor: (color, tokens, customColor) => {
51
- if (customColor)
52
- return customColor;
53
- const colorMap = {
54
- primary: tokens.colors.primary,
55
- secondary: tokens.colors.secondary,
56
- success: tokens.colors.success,
57
- warning: tokens.colors.warning,
58
- error: tokens.colors.error,
59
- info: tokens.colors.info,
60
- onSurface: tokens.colors.onSurface,
61
- surfaceVariant: tokens.colors.surfaceVariant,
62
- onPrimary: tokens.colors.onPrimary,
63
- onSecondary: tokens.colors.onSecondary,
64
- textInverse: tokens.colors.textInverse,
65
- };
66
- return colorMap[color];
67
- },
68
- /**
69
- * Get all available Lucide icon names
70
- */
71
- getAllIcons: () => {
72
- return Object.keys(icons);
73
- },
74
- /**
75
- * Check if icon exists in Lucide library
76
- */
77
- hasIcon: (name) => {
78
- return name in icons;
79
- },
80
- /**
81
- * Default stroke width for Lucide outline icons
82
- */
83
- getStrokeWidth: () => 2,
84
- };
85
- //# sourceMappingURL=LucideAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LucideAdapter.js","sourceRoot":"","sources":["../../../../../src/domains/icons/infrastructure/adapters/LucideAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAI5C;;GAEG;AACH,MAAM,QAAQ,GAA6B;IACzC,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,GAAG,EAAE,EAAE;CACR,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAiB;IACzC;;OAEG;IACH,gBAAgB,EAAE,CAAC,IAAY,EAAE,EAAE;QACjC,MAAM,aAAa,GAAG,KAAK,CAAC,IAA0B,CAAC,CAAC;QACxD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,yBAAyB,IAAI,+BAA+B,CAAC,CAAC;YAC3E,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,WAAW,EAAE,CAAC,IAAc,EAAE,UAAmB,EAAE,EAAE;QACnD,OAAO,UAAU,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,YAAY,EAAE,CAAC,KAAgB,EAAE,MAAoB,EAAE,WAAoB,EAAE,EAAE;QAC7E,IAAI,WAAW;YAAE,OAAO,WAAW,CAAC;QAEpC,MAAM,QAAQ,GAA8B;YAC1C,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC9B,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS;YAClC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;YAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;YACxB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS;YAClC,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc;YAC5C,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS;YAClC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;YACtC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;SACvC,CAAC;QAEF,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,WAAW,EAAE,GAAG,EAAE;QAChB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE;QACxB,OAAO,IAAI,IAAI,KAAK,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;CACxB,CAAC"}
@@ -1,23 +0,0 @@
1
- /**
2
- * Icons Domain - Expo Vector Icons Registry
3
- *
4
- * Registry for @expo/vector-icons (Material, FontAwesome, Ionicons).
5
- * Provides metadata and search capabilities for 1000+ icons.
6
- *
7
- * @domain icons
8
- * @layer infrastructure
9
- */
10
- import type { IIconRegistry, IconMetadata } from '@domains/icons/domain/entities/Icon';
11
- import { IconCategory } from '@domains/icons/domain/entities/Icon';
12
- /**
13
- * Expo vector icons registry
14
- * Maps common Material Design, FontAwesome, and Ionicons
15
- */
16
- export declare class ExpoIconRegistry implements IIconRegistry {
17
- private icons;
18
- getAllIcons(): IconMetadata[];
19
- getIconsByCategory(category: IconCategory): IconMetadata[];
20
- searchIcons(query: string): IconMetadata[];
21
- getIconMetadata(name: string): IconMetadata | null;
22
- }
23
- //# sourceMappingURL=ExpoIconRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExpoIconRegistry.d.ts","sourceRoot":"","sources":["../../../../../src/domains/icons/infrastructure/registries/ExpoIconRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACvF,OAAO,EAAe,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEhF;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,aAAa;IACpD,OAAO,CAAC,KAAK,CAwIX;IAEF,WAAW,IAAI,YAAY,EAAE;IAI7B,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,EAAE;IAO1D,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE;IAoB1C,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;CAGnD"}
@@ -1,178 +0,0 @@
1
- /**
2
- * Icons Domain - Expo Vector Icons Registry
3
- *
4
- * Registry for @expo/vector-icons (Material, FontAwesome, Ionicons).
5
- * Provides metadata and search capabilities for 1000+ icons.
6
- *
7
- * @domain icons
8
- * @layer infrastructure
9
- */
10
- import { IconLibrary, IconCategory } from '@domains/icons/domain/entities/Icon';
11
- /**
12
- * Expo vector icons registry
13
- * Maps common Material Design, FontAwesome, and Ionicons
14
- */
15
- export class ExpoIconRegistry {
16
- constructor() {
17
- this.icons = [
18
- // Navigation icons (Material Design)
19
- {
20
- name: 'home',
21
- library: IconLibrary.MATERIAL,
22
- category: IconCategory.NAVIGATION,
23
- tags: ['house', 'main', 'start'],
24
- searchTerms: ['home', 'house', 'main', 'dashboard'],
25
- },
26
- {
27
- name: 'arrow-back',
28
- library: IconLibrary.MATERIAL,
29
- category: IconCategory.NAVIGATION,
30
- tags: ['back', 'previous', 'return'],
31
- searchTerms: ['arrow', 'back', 'previous', 'navigate'],
32
- },
33
- {
34
- name: 'menu',
35
- library: IconLibrary.MATERIAL,
36
- category: IconCategory.NAVIGATION,
37
- tags: ['hamburger', 'drawer', 'navigation'],
38
- searchTerms: ['menu', 'hamburger', 'navigation', 'drawer'],
39
- },
40
- {
41
- name: 'search',
42
- library: IconLibrary.MATERIAL,
43
- category: IconCategory.ACTION,
44
- tags: ['find', 'lookup', 'query'],
45
- searchTerms: ['search', 'find', 'lookup', 'magnify'],
46
- },
47
- // Action icons (Material Design)
48
- {
49
- name: 'add',
50
- library: IconLibrary.MATERIAL,
51
- category: IconCategory.ACTION,
52
- tags: ['plus', 'create', 'new'],
53
- searchTerms: ['add', 'plus', 'create', 'new'],
54
- },
55
- {
56
- name: 'delete',
57
- library: IconLibrary.MATERIAL,
58
- category: IconCategory.ACTION,
59
- tags: ['remove', 'trash', 'bin'],
60
- searchTerms: ['delete', 'remove', 'trash', 'garbage'],
61
- },
62
- {
63
- name: 'edit',
64
- library: IconLibrary.MATERIAL,
65
- category: IconCategory.ACTION,
66
- tags: ['pencil', 'modify', 'update'],
67
- searchTerms: ['edit', 'pencil', 'modify', 'write'],
68
- },
69
- {
70
- name: 'settings',
71
- library: IconLibrary.MATERIAL,
72
- category: IconCategory.ACTION,
73
- tags: ['gear', 'preferences', 'config'],
74
- searchTerms: ['settings', 'gear', 'preferences', 'options'],
75
- },
76
- {
77
- name: 'favorite',
78
- library: IconLibrary.MATERIAL,
79
- category: IconCategory.ACTION,
80
- tags: ['heart', 'like', 'love'],
81
- searchTerms: ['favorite', 'heart', 'like', 'love'],
82
- },
83
- // Social icons (FontAwesome)
84
- {
85
- name: 'facebook',
86
- library: IconLibrary.FONTAWESOME,
87
- category: IconCategory.SOCIAL,
88
- tags: ['fb', 'social', 'network'],
89
- searchTerms: ['facebook', 'fb', 'social', 'meta'],
90
- },
91
- {
92
- name: 'twitter',
93
- library: IconLibrary.FONTAWESOME,
94
- category: IconCategory.SOCIAL,
95
- tags: ['x', 'social', 'tweet'],
96
- searchTerms: ['twitter', 'x', 'social', 'tweet'],
97
- },
98
- {
99
- name: 'instagram',
100
- library: IconLibrary.FONTAWESOME,
101
- category: IconCategory.SOCIAL,
102
- tags: ['ig', 'social', 'photo'],
103
- searchTerms: ['instagram', 'ig', 'social', 'photo'],
104
- },
105
- // Communication icons (Ionicons)
106
- {
107
- name: 'mail',
108
- library: IconLibrary.IONICONS,
109
- category: IconCategory.COMMUNICATION,
110
- tags: ['email', 'message', 'envelope'],
111
- searchTerms: ['mail', 'email', 'message', 'contact'],
112
- },
113
- {
114
- name: 'call',
115
- library: IconLibrary.IONICONS,
116
- category: IconCategory.COMMUNICATION,
117
- tags: ['phone', 'telephone', 'dial'],
118
- searchTerms: ['call', 'phone', 'telephone', 'dial'],
119
- },
120
- {
121
- name: 'notifications',
122
- library: IconLibrary.IONICONS,
123
- category: IconCategory.COMMUNICATION,
124
- tags: ['bell', 'alert', 'reminder'],
125
- searchTerms: ['notifications', 'bell', 'alert', 'reminder'],
126
- },
127
- // Media icons (Material Design)
128
- {
129
- name: 'camera',
130
- library: IconLibrary.MATERIAL,
131
- category: IconCategory.MEDIA,
132
- tags: ['photo', 'picture', 'snapshot'],
133
- searchTerms: ['camera', 'photo', 'picture', 'image'],
134
- },
135
- {
136
- name: 'image',
137
- library: IconLibrary.MATERIAL,
138
- category: IconCategory.MEDIA,
139
- tags: ['photo', 'picture', 'gallery'],
140
- searchTerms: ['image', 'photo', 'picture', 'gallery'],
141
- },
142
- {
143
- name: 'videocam',
144
- library: IconLibrary.MATERIAL,
145
- category: IconCategory.MEDIA,
146
- tags: ['video', 'camera', 'record'],
147
- searchTerms: ['video', 'camera', 'record', 'film'],
148
- },
149
- ];
150
- }
151
- getAllIcons() {
152
- return this.icons;
153
- }
154
- getIconsByCategory(category) {
155
- if (category === IconCategory.ALL) {
156
- return this.icons;
157
- }
158
- return this.icons.filter(icon => icon.category === category);
159
- }
160
- searchIcons(query) {
161
- if (!query.trim()) {
162
- return this.icons;
163
- }
164
- const normalizedQuery = query.toLowerCase().replace(/[^a-z0-9]/g, '');
165
- return this.icons.filter(icon => {
166
- const normalizedName = icon.name.toLowerCase().replace(/[^a-z0-9]/g, '');
167
- const normalizedTags = icon.tags.map(tag => tag.toLowerCase().replace(/[^a-z0-9]/g, ''));
168
- const normalizedTerms = icon.searchTerms.map(term => term.toLowerCase().replace(/[^a-z0-9]/g, ''));
169
- return (normalizedName.includes(normalizedQuery) ||
170
- normalizedTags.some(tag => tag.includes(normalizedQuery)) ||
171
- normalizedTerms.some(term => term.includes(normalizedQuery)));
172
- });
173
- }
174
- getIconMetadata(name) {
175
- return this.icons.find(icon => icon.name === name) || null;
176
- }
177
- }
178
- //# sourceMappingURL=ExpoIconRegistry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExpoIconRegistry.js","sourceRoot":"","sources":["../../../../../src/domains/icons/infrastructure/registries/ExpoIconRegistry.ts"],"names":[],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- /**
2
- * Universal Icon Component
3
- *
4
- * 🎯 SINGLE ICON COMPONENT FOR ALL APPS
5
- *
6
- * Automatically uses the icon library configured in IconLibraryConfig.
7
- * Change library = change config, no code changes needed!
8
- *
9
- * @example
10
- * ```tsx
11
- * import { Icon } from '@domains/icons';
12
- *
13
- * // Basic usage
14
- * <Icon name="Settings" size="md" color="primary" />
15
- *
16
- * // Custom size and color
17
- * <Icon name="Heart" customSize={32} customColor="#FF0000" />
18
- *
19
- * // With background
20
- * <Icon name="Info" size="lg" withBackground backgroundColor="#667eea" />
21
- * ```
22
- *
23
- * 🔧 To change icon library:
24
- * 1. Update CURRENT_LIBRARY in domain/config/IconLibraryConfig.ts
25
- * 2. Done! All apps use new library automatically
26
- */
27
- import React from 'react';
28
- import type { IconProps } from '../../domain/interfaces/IIconAdapter';
29
- /**
30
- * Universal Icon Component
31
- */
32
- export declare const Icon: React.FC<IconProps>;
33
- /**
34
- * Export icon types for convenience
35
- */
36
- export type { IconProps } from '../../domain/interfaces/IIconAdapter';
37
- export { type IconSize, type IconColor } from '../../domain/interfaces/IIconAdapter';
38
- /**
39
- * Export current library's icon names for TypeScript autocomplete
40
- */
41
- export type { LucideIconName as IconName } from '../../infrastructure/adapters/LucideAdapter';
42
- //# sourceMappingURL=Icon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../../../src/domains/icons/presentation/components/Icon.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,KAAK,EAAE,SAAS,EAAuB,MAAM,sCAAsC,CAAC;AAmB3F;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAkEpC,CAAC;AAEF;;GAEG;AACH,YAAY,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAErF;;GAEG;AACH,YAAY,EAAE,cAAc,IAAI,QAAQ,EAAE,MAAM,6CAA6C,CAAC"}