custom-mobile-ui 1.0.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 (116) hide show
  1. package/dist/Fonts-Black-U4YX6GHD.ttf +0 -0
  2. package/dist/Fonts-Bold-QAA2AGZS.ttf +0 -0
  3. package/dist/Fonts-ExtraBold-OVZKTNJI.ttf +0 -0
  4. package/dist/Fonts-Light-RMQAEPUP.ttf +0 -0
  5. package/dist/Fonts-Medium-UUWQX4EV.ttf +0 -0
  6. package/dist/Fonts-Regular-JNHL4IDV.ttf +0 -0
  7. package/dist/PopupMenuExample-DAAku8nG.d.mts +11 -0
  8. package/dist/PopupMenuExample-DAAku8nG.d.ts +11 -0
  9. package/dist/avatarF1-C47EE65Y.png +0 -0
  10. package/dist/avatarF2-TZPKSMDG.png +0 -0
  11. package/dist/avatarF3-OSDX6E7J.png +0 -0
  12. package/dist/avatarF4-CASWRGNJ.png +0 -0
  13. package/dist/avatarM1-3XV4KE4H.png +0 -0
  14. package/dist/avatarM2-ZMN26Y2Y.png +0 -0
  15. package/dist/avatarM3-XIDLYITU.png +0 -0
  16. package/dist/avatarM4-DYW5DSZC.png +0 -0
  17. package/dist/avatarM5-YP66OPXT.png +0 -0
  18. package/dist/components.d.mts +3286 -0
  19. package/dist/components.d.ts +3286 -0
  20. package/dist/components.js +21401 -0
  21. package/dist/components.mjs +21246 -0
  22. package/dist/config.d.mts +7 -0
  23. package/dist/config.d.ts +7 -0
  24. package/dist/config.js +213 -0
  25. package/dist/config.mjs +210 -0
  26. package/dist/context.d.mts +11 -0
  27. package/dist/context.d.ts +11 -0
  28. package/dist/context.js +150 -0
  29. package/dist/context.mjs +148 -0
  30. package/dist/examples.d.mts +30 -0
  31. package/dist/examples.d.ts +30 -0
  32. package/dist/examples.js +30785 -0
  33. package/dist/examples.mjs +30748 -0
  34. package/dist/hooks.d.mts +15 -0
  35. package/dist/hooks.d.ts +15 -0
  36. package/dist/hooks.js +750 -0
  37. package/dist/hooks.mjs +739 -0
  38. package/dist/icAppleNegative-E3OORB4A.png +0 -0
  39. package/dist/icAppleOriginal-M7FOSDZ4.png +0 -0
  40. package/dist/icBlueskyNegative-QXHPLARU.png +0 -0
  41. package/dist/icBlueskyOriginal-D2GX35RV.png +0 -0
  42. package/dist/icDiscordNegative-EWGZJJ27.png +0 -0
  43. package/dist/icDiscordOriginal-5ODPKZ6S.png +0 -0
  44. package/dist/icDribbbleNegative-GOLJS6SO.png +0 -0
  45. package/dist/icDribbbleOriginal-ONQLW62I.png +0 -0
  46. package/dist/icError404-Z6PQK64J.png +0 -0
  47. package/dist/icFacebookNegative-DIFRSSJJ.png +0 -0
  48. package/dist/icFacebookOriginal-PK7CGUNB.png +0 -0
  49. package/dist/icFigmaNegative-X6P3DVCQ.png +0 -0
  50. package/dist/icFigmaOriginal-VGD7LQVQ.png +0 -0
  51. package/dist/icGithubNegative-G7XH6J7V.png +0 -0
  52. package/dist/icGithubOriginal-BOXVXICL.png +0 -0
  53. package/dist/icGoogleNegative-UFNCEWM7.png +0 -0
  54. package/dist/icGoogleOriginal-WCDLPRSH.png +0 -0
  55. package/dist/icInstagramNegative-47CG4IHG.png +0 -0
  56. package/dist/icInstagramOriginal-SGRJTPEH.png +0 -0
  57. package/dist/icLinkedInNegative-4EHL223U.png +0 -0
  58. package/dist/icLinkedInOriginal-CQXTAW56.png +0 -0
  59. package/dist/icMediumNegative-YMS7U46C.png +0 -0
  60. package/dist/icMediumOriginal-TRTNJBN4.png +0 -0
  61. package/dist/icMessengerNegative-SIFKBM2Y.png +0 -0
  62. package/dist/icMessengerOriginal-PNN2SB3Z.png +0 -0
  63. package/dist/icNoData-JQB7KCKJ.png +0 -0
  64. package/dist/icPinterestNegative-LPDQYRD3.png +0 -0
  65. package/dist/icPinterestOriginal-7AWYJQBQ.png +0 -0
  66. package/dist/icRedditNegative-BBV3R7UA.png +0 -0
  67. package/dist/icRedditOriginal-BIKS3S2I.png +0 -0
  68. package/dist/icRestriction-JFCJAQ5L.png +0 -0
  69. package/dist/icSadMen-6HAFJHIQ.png +0 -0
  70. package/dist/icSignalNegative-DVBANSGJ.png +0 -0
  71. package/dist/icSignalOriginal-FQEXGCKX.png +0 -0
  72. package/dist/icSnapchatNegative-VQFVKRPC.png +0 -0
  73. package/dist/icSnapchatOriginal-ZK4T4CLL.png +0 -0
  74. package/dist/icSpotifyNegative-UGDBMFNS.png +0 -0
  75. package/dist/icSpotifyOriginal-ZFNO4BJO.png +0 -0
  76. package/dist/icTelegramNegative-GDSFFYME.png +0 -0
  77. package/dist/icTelegramOriginal-DMTCZCGP.png +0 -0
  78. package/dist/icThreadsNegative-4NIM4AOP.png +0 -0
  79. package/dist/icThreadsOriginal-OYU6UKN2.png +0 -0
  80. package/dist/icTikTokNegative-WYI3PQGD.png +0 -0
  81. package/dist/icTikTokOriginal-26SKYCIO.png +0 -0
  82. package/dist/icTumblrNegative-CYBTEYAG.png +0 -0
  83. package/dist/icTumblrOriginal-MZ7RV5ZY.png +0 -0
  84. package/dist/icTwitchNegative-GK3VVFL7.png +0 -0
  85. package/dist/icTwitchOriginal-GOENLOGB.png +0 -0
  86. package/dist/icVKNegative-FCXPFYDV.png +0 -0
  87. package/dist/icVKOriginal-NCWB7WYH.png +0 -0
  88. package/dist/icWhatsAppNegative-FJHYFUMA.png +0 -0
  89. package/dist/icWhatsAppOriginal-MWQWQC56.png +0 -0
  90. package/dist/icXTwitterNegative-VS3UXBLN.png +0 -0
  91. package/dist/icXTwitterOriginal-WJ2IFMZL.png +0 -0
  92. package/dist/icYouTubeNegative-LUSZ7OD4.png +0 -0
  93. package/dist/icYouTubeOriginal-6Y2SNMC7.png +0 -0
  94. package/dist/index-tIixPl5M.d.mts +214 -0
  95. package/dist/index-tIixPl5M.d.ts +214 -0
  96. package/dist/index.d.mts +32 -0
  97. package/dist/index.d.ts +32 -0
  98. package/dist/index.js +32215 -0
  99. package/dist/index.mjs +32022 -0
  100. package/dist/theme.d.mts +297 -0
  101. package/dist/theme.d.ts +297 -0
  102. package/dist/theme.js +472 -0
  103. package/dist/theme.mjs +458 -0
  104. package/dist/types-cxHozHqF.d.mts +92 -0
  105. package/dist/types-cxHozHqF.d.ts +92 -0
  106. package/dist/ui.d.mts +400 -0
  107. package/dist/ui.d.ts +400 -0
  108. package/dist/ui.js +1469 -0
  109. package/dist/ui.mjs +1461 -0
  110. package/dist/ui_config-LKHwCbDD.d.mts +102 -0
  111. package/dist/ui_config-LKHwCbDD.d.ts +102 -0
  112. package/dist/utils.d.mts +7 -0
  113. package/dist/utils.d.ts +7 -0
  114. package/dist/utils.js +89 -0
  115. package/dist/utils.mjs +83 -0
  116. package/package.json +78 -0
package/dist/theme.js ADDED
@@ -0,0 +1,472 @@
1
+ 'use strict';
2
+
3
+ var reactNative = require('react-native');
4
+
5
+ // src/theme/colors.ts
6
+ var Colors = {
7
+ primary: {
8
+ 50: "#EFF6FF",
9
+ 100: "#DBEAFE",
10
+ 200: "#BFDBFE",
11
+ 300: "#93C5FD",
12
+ 400: "#60A5FA",
13
+ 500: "#3B82F6",
14
+ 600: "#2563EB",
15
+ 700: "#1D4ED8",
16
+ 800: "#1E40AF",
17
+ 900: "#1E3A8A"
18
+ },
19
+ primaryColor: "#2563EB",
20
+ gray: {
21
+ 50: "#F9FAFB",
22
+ 100: "#F3F4F6",
23
+ 200: "#E5E7EB",
24
+ 300: "#D1D5DB",
25
+ 400: "#9CA3AF",
26
+ 500: "#6B7280",
27
+ 600: "#4B5563",
28
+ 700: "#374151",
29
+ 800: "#1F2937",
30
+ 900: "#111827"
31
+ },
32
+ white: "#ffffff",
33
+ black: "#000000",
34
+ green: { 500: "#22C55E" },
35
+ orange: { 500: "#F97316" },
36
+ red: { 50: "#FEE2E2", 500: "#EF4444" },
37
+ status: {
38
+ success: {
39
+ light: "#DCFCE7",
40
+ default: "#22C55E",
41
+ dark: "#15803D"
42
+ },
43
+ warning: {
44
+ light: "#FFEDD5",
45
+ default: "#F97316",
46
+ dark: "#C2410C"
47
+ },
48
+ error: {
49
+ light: "#FEE2E2",
50
+ default: "#EF4444",
51
+ dark: "#B91C1C"
52
+ },
53
+ info: {
54
+ light: "#DBEAFE",
55
+ default: "#3B82F6",
56
+ dark: "#1D4ED8"
57
+ },
58
+ pending: {
59
+ light: "#FEF3C7",
60
+ default: "#EAB308",
61
+ dark: "#A16207"
62
+ },
63
+ disabled: {
64
+ light: "#F3F4F6",
65
+ default: "#9CA3AF",
66
+ dark: "#6B7280"
67
+ },
68
+ // Uppercase aliases for basic statuses
69
+ SUCCESS: {
70
+ light: "#DCFCE7",
71
+ default: "#22C55E",
72
+ dark: "#15803D"
73
+ },
74
+ WARNING: {
75
+ light: "#FFEDD5",
76
+ default: "#F97316",
77
+ dark: "#C2410C"
78
+ },
79
+ ERROR: {
80
+ light: "#FEE2E2",
81
+ default: "#EF4444",
82
+ dark: "#B91C1C"
83
+ },
84
+ INFO: {
85
+ light: "#DBEAFE",
86
+ default: "#3B82F6",
87
+ dark: "#1D4ED8"
88
+ },
89
+ PENDING: {
90
+ light: "#FEF3C7",
91
+ default: "#EAB308",
92
+ dark: "#A16207"
93
+ },
94
+ DISABLED: {
95
+ light: "#F3F4F6",
96
+ default: "#9CA3AF",
97
+ dark: "#6B7280"
98
+ },
99
+ // Complaint Statuses
100
+ OPEN: {
101
+ light: "#DBEAFE",
102
+ default: "#3B82F6",
103
+ dark: "#1D4ED8"
104
+ },
105
+ ASSIGNED: {
106
+ light: "#E0E7FF",
107
+ default: "#6366F1",
108
+ dark: "#4338CA"
109
+ },
110
+ IN_PROGRESS: {
111
+ light: "#FEF3C7",
112
+ default: "#EAB308",
113
+ dark: "#A16207"
114
+ },
115
+ ON_HOLD: {
116
+ light: "#FFEDD5",
117
+ default: "#F97316",
118
+ dark: "#C2410C"
119
+ },
120
+ RESOLVED: {
121
+ light: "#DCFCE7",
122
+ default: "#22C55E",
123
+ dark: "#15803D"
124
+ },
125
+ CLOSED: {
126
+ light: "#F3F4F6",
127
+ default: "#6B7280",
128
+ dark: "#374151"
129
+ },
130
+ REJECTED: {
131
+ light: "#FEE2E2",
132
+ default: "#EF4444",
133
+ dark: "#B91C1C"
134
+ },
135
+ CANCELLED: {
136
+ light: "#F3F4F6",
137
+ default: "#9CA3AF",
138
+ dark: "#6B7280"
139
+ }
140
+ }
141
+ };
142
+ var AVATAR_COLORS = [
143
+ "#2563EB",
144
+ // Blue
145
+ "#9333EA",
146
+ // Purple
147
+ "#16A34A",
148
+ // Green
149
+ "#EA580C",
150
+ // Orange
151
+ "#DC2626",
152
+ // Red
153
+ "#0891B2",
154
+ // Cyan
155
+ "#CA8A04",
156
+ // Yellow
157
+ "#4F46E5",
158
+ // Indigo
159
+ "#BE185D",
160
+ // Pink
161
+ "#374151"
162
+ // Dark Gray
163
+ ];
164
+ var colors_default = Colors;
165
+ var FontFamily = (style) => {
166
+ const weight = style?.fontWeight ?? "400";
167
+ let fontFamily = "Fonts-Regular";
168
+ let numericWeight = "400";
169
+ switch (weight) {
170
+ case "100":
171
+ case "200":
172
+ fontFamily = "Fonts-Light";
173
+ numericWeight = "300";
174
+ break;
175
+ case "300":
176
+ case "light":
177
+ fontFamily = "Fonts-Light";
178
+ numericWeight = "300";
179
+ break;
180
+ case "400":
181
+ case "normal":
182
+ case "regular":
183
+ fontFamily = "Fonts-Regular";
184
+ numericWeight = "400";
185
+ break;
186
+ case "500":
187
+ case "medium":
188
+ fontFamily = "Fonts-Medium";
189
+ numericWeight = "500";
190
+ break;
191
+ case "600":
192
+ case "semibold":
193
+ fontFamily = "Fonts-Bold";
194
+ numericWeight = "600";
195
+ break;
196
+ case "700":
197
+ case "bold":
198
+ fontFamily = "Fonts-Bold";
199
+ numericWeight = "700";
200
+ break;
201
+ case "800":
202
+ case "heavy":
203
+ fontFamily = "Fonts-ExtraBold";
204
+ numericWeight = "800";
205
+ break;
206
+ case "900":
207
+ case "black":
208
+ fontFamily = "Fonts-Black";
209
+ numericWeight = "900";
210
+ break;
211
+ }
212
+ return {
213
+ fontFamily,
214
+ fontWeight: reactNative.Platform.OS === "android" ? "normal" : numericWeight
215
+ };
216
+ };
217
+
218
+ // src/theme/theme.ts
219
+ var BaseTheme = {
220
+ primary: {
221
+ default: colors_default.primary[600],
222
+ hover: colors_default.primary[500]
223
+ },
224
+ background: {
225
+ screen: colors_default.gray[50],
226
+ surface: "#FFFFFF",
227
+ selected: colors_default.primary[50],
228
+ secondary: colors_default.gray[100],
229
+ design: colors_default.primary[50]
230
+ },
231
+ input: {
232
+ background: colors_default.gray[50]
233
+ },
234
+ text: {
235
+ primary: colors_default.gray[900],
236
+ secondary: colors_default.gray[600],
237
+ muted: colors_default.gray[400],
238
+ inverse: "#FFFFFF"
239
+ },
240
+ border: {
241
+ default: colors_default.gray[300],
242
+ focused: colors_default.primary[600],
243
+ success: colors_default.green[500],
244
+ warning: colors_default.orange[500],
245
+ error: colors_default.red[500]
246
+ },
247
+ status: {
248
+ success: colors_default.green[500],
249
+ warning: colors_default.orange[500],
250
+ error: colors_default.red[500],
251
+ validating: colors_default.primary[600]
252
+ },
253
+ icon: {
254
+ default: colors_default.gray[500],
255
+ active: colors_default.primary[600],
256
+ disabled: colors_default.gray[400]
257
+ },
258
+ tabContent: {
259
+ active: colors_default.primary[600],
260
+ inactive: colors_default.gray[400]
261
+ },
262
+ skeleton: {
263
+ background: colors_default.gray[200],
264
+ componentBg: colors_default.gray[300],
265
+ highlight: "#ffffff99"
266
+ },
267
+ primaryContent: {
268
+ color: colors_default.primaryColor
269
+ }
270
+ };
271
+ var LightTheme = {
272
+ ...BaseTheme
273
+ };
274
+ var DarkTheme = {
275
+ ...BaseTheme,
276
+ primary: {
277
+ default: colors_default.primary[500],
278
+ hover: colors_default.primary[400]
279
+ },
280
+ background: {
281
+ ...BaseTheme.background,
282
+ screen: colors_default.gray[900],
283
+ surface: colors_default.gray[800],
284
+ selected: colors_default.primary[900],
285
+ secondary: colors_default.gray[900],
286
+ design: colors_default.primaryColor + 10
287
+ },
288
+ input: {
289
+ background: colors_default.gray[700]
290
+ },
291
+ text: {
292
+ ...BaseTheme.text,
293
+ primary: "#FFFFFF",
294
+ secondary: colors_default.gray[200],
295
+ muted: colors_default.gray[500],
296
+ inverse: colors_default.gray[900]
297
+ },
298
+ border: {
299
+ ...BaseTheme.border,
300
+ default: colors_default.gray[700]
301
+ },
302
+ icon: {
303
+ ...BaseTheme.icon,
304
+ default: colors_default.gray[400],
305
+ disabled: colors_default.gray[600]
306
+ },
307
+ tabContent: {
308
+ active: colors_default.white,
309
+ inactive: colors_default.gray[500]
310
+ },
311
+ skeleton: {
312
+ background: colors_default.gray[700],
313
+ componentBg: colors_default.gray[800],
314
+ highlight: "#ffffff14"
315
+ },
316
+ primaryContent: {
317
+ color: colors_default.primary[400]
318
+ }
319
+ };
320
+
321
+ // src/theme/spacing.ts
322
+ var Spacing = {
323
+ /** 2px — hairline gaps, icon nudges */
324
+ xxs: 2,
325
+ /** 4px — tight internal padding */
326
+ xs: 4,
327
+ /** 8px — compact spacing between elements */
328
+ sm: 8,
329
+ /** 12px — default internal padding */
330
+ md: 12,
331
+ /** 16px — section padding, card padding */
332
+ lg: 16,
333
+ /** 24px — generous padding between sections */
334
+ xl: 24,
335
+ /** 32px — large section gaps */
336
+ xxl: 32,
337
+ /** 48px — page-level vertical spacing */
338
+ xxxl: 48
339
+ };
340
+
341
+ // src/theme/typography.ts
342
+ var FontSize = {
343
+ /** 11px — small badges, captions, overlines */
344
+ xs: 11,
345
+ /** 13px — labels, secondary text, button small */
346
+ sm: 13,
347
+ /** 15px — body text, default input */
348
+ md: 15,
349
+ /** 17px — section headings, large labels */
350
+ lg: 17,
351
+ /** 20px — page sub-headings */
352
+ xl: 20,
353
+ /** 24px — page headings */
354
+ xxl: 24,
355
+ /** 28px — hero / display text */
356
+ display: 28
357
+ };
358
+ var LineHeight = {
359
+ /** Tight line-height for xs */
360
+ xs: 15,
361
+ /** Tight line-height for sm */
362
+ sm: 18,
363
+ /** Default line-height for md */
364
+ md: 22,
365
+ /** Line-height for lg */
366
+ lg: 24,
367
+ /** Line-height for xl */
368
+ xl: 28,
369
+ /** Line-height for xxl */
370
+ xxl: 32,
371
+ /** Line-height for display */
372
+ display: 36
373
+ };
374
+ var Shadow = {
375
+ /** Subtle shadow — cards, inputs */
376
+ sm: reactNative.Platform.select({
377
+ ios: {
378
+ shadowColor: "#000",
379
+ shadowOffset: { width: 0, height: 1 },
380
+ shadowOpacity: 0.06,
381
+ shadowRadius: 4
382
+ },
383
+ android: { elevation: 2 },
384
+ default: {}
385
+ }),
386
+ /** Medium shadow — dropdowns, popups */
387
+ md: reactNative.Platform.select({
388
+ ios: {
389
+ shadowColor: "#000",
390
+ shadowOffset: { width: 0, height: 4 },
391
+ shadowOpacity: 0.1,
392
+ shadowRadius: 8
393
+ },
394
+ android: { elevation: 5 },
395
+ default: {}
396
+ }),
397
+ /** Strong shadow — modals, floating elements */
398
+ lg: reactNative.Platform.select({
399
+ ios: {
400
+ shadowColor: "#000",
401
+ shadowOffset: { width: 0, height: 8 },
402
+ shadowOpacity: 0.15,
403
+ shadowRadius: 16
404
+ },
405
+ android: { elevation: 10 },
406
+ default: {}
407
+ }),
408
+ /** Extra strong — overlays */
409
+ xl: reactNative.Platform.select({
410
+ ios: {
411
+ shadowColor: "#000",
412
+ shadowOffset: { width: 0, height: 12 },
413
+ shadowOpacity: 0.2,
414
+ shadowRadius: 24
415
+ },
416
+ android: { elevation: 16 },
417
+ default: {}
418
+ }),
419
+ /** No shadow */
420
+ none: {}
421
+ };
422
+
423
+ // src/theme/animations.ts
424
+ var Duration = {
425
+ /** 100ms — micro-interactions (press feedback, check toggle) */
426
+ instant: 100,
427
+ /** 150ms — quick transitions (button press, icon swap) */
428
+ fast: 150,
429
+ /** 250ms — default transitions (modal, popup, focus ring) */
430
+ normal: 250,
431
+ /** 350ms — deliberate transitions (page slide, bottom sheet) */
432
+ slow: 350,
433
+ /** 500ms — emphasis transitions (celebration, onboarding) */
434
+ slower: 500
435
+ };
436
+
437
+ // src/theme/zindex.ts
438
+ var ZIndex = {
439
+ /** Base content layer */
440
+ base: 0,
441
+ /** Sticky headers, FABs */
442
+ sticky: 100,
443
+ /** Dropdown menus, select popups */
444
+ dropdown: 1e3,
445
+ /** Bottom sheets, drawers */
446
+ drawer: 1100,
447
+ /** Modals, dialogs */
448
+ modal: 2e3,
449
+ /** Popup menus, tooltips */
450
+ popup: 2500,
451
+ /** Toast notifications */
452
+ toast: 3e3,
453
+ /** Highest priority overlays (loading screens, critical alerts) */
454
+ overlay: 4e3
455
+ };
456
+
457
+ // src/theme/index.ts
458
+ var getTheme = (mode) => mode === "dark" ? DarkTheme : LightTheme;
459
+
460
+ exports.AVATAR_COLORS = AVATAR_COLORS;
461
+ exports.BaseTheme = BaseTheme;
462
+ exports.Colors = colors_default;
463
+ exports.DarkTheme = DarkTheme;
464
+ exports.Duration = Duration;
465
+ exports.FontFamily = FontFamily;
466
+ exports.FontSize = FontSize;
467
+ exports.LightTheme = LightTheme;
468
+ exports.LineHeight = LineHeight;
469
+ exports.Shadow = Shadow;
470
+ exports.Spacing = Spacing;
471
+ exports.ZIndex = ZIndex;
472
+ exports.getTheme = getTheme;