zkit-ui 1.0.0

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 (267) hide show
  1. package/README.md +267 -0
  2. package/dist/ComponentLibProvider.d.ts +15 -0
  3. package/dist/ComponentLibProvider.d.ts.map +1 -0
  4. package/dist/ComponentLibProvider.js +18 -0
  5. package/dist/assets/animations/spinner.json +1 -0
  6. package/dist/assets/icons/check.svg +4 -0
  7. package/dist/assets/icons/toast/error.webp +0 -0
  8. package/dist/assets/icons/toast/success.webp +0 -0
  9. package/dist/assets/icons/toast/warning.webp +0 -0
  10. package/dist/config.d.ts +16 -0
  11. package/dist/config.d.ts.map +1 -0
  12. package/dist/config.js +42 -0
  13. package/dist/i18n/I18nProvider.d.ts +11 -0
  14. package/dist/i18n/I18nProvider.d.ts.map +1 -0
  15. package/dist/i18n/I18nProvider.js +84 -0
  16. package/dist/i18n/locale.d.ts +7 -0
  17. package/dist/i18n/locale.d.ts.map +1 -0
  18. package/dist/i18n/locale.js +87 -0
  19. package/dist/i18n/locales/de.d.ts +51 -0
  20. package/dist/i18n/locales/de.d.ts.map +1 -0
  21. package/dist/i18n/locales/de.js +62 -0
  22. package/dist/i18n/locales/en-US.d.ts +51 -0
  23. package/dist/i18n/locales/en-US.d.ts.map +1 -0
  24. package/dist/i18n/locales/en-US.js +62 -0
  25. package/dist/i18n/locales/index.d.ts +9 -0
  26. package/dist/i18n/locales/index.d.ts.map +1 -0
  27. package/dist/i18n/locales/index.js +23 -0
  28. package/dist/i18n/locales/ja.d.ts +51 -0
  29. package/dist/i18n/locales/ja.d.ts.map +1 -0
  30. package/dist/i18n/locales/ja.js +62 -0
  31. package/dist/i18n/locales/zh-CN.d.ts +51 -0
  32. package/dist/i18n/locales/zh-CN.d.ts.map +1 -0
  33. package/dist/i18n/locales/zh-CN.js +62 -0
  34. package/dist/i18n/locales/zh-TW.d.ts +51 -0
  35. package/dist/i18n/locales/zh-TW.d.ts.map +1 -0
  36. package/dist/i18n/locales/zh-TW.js +62 -0
  37. package/dist/i18n/types.d.ts +11 -0
  38. package/dist/i18n/types.d.ts.map +1 -0
  39. package/dist/i18n/types.js +2 -0
  40. package/dist/i18n/useI18n.d.ts +2 -0
  41. package/dist/i18n/useI18n.d.ts.map +1 -0
  42. package/dist/i18n/useI18n.js +41 -0
  43. package/dist/index.d.ts +57 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +90 -0
  46. package/dist/services/ActionDialogService/ActionDialog.d.ts +4 -0
  47. package/dist/services/ActionDialogService/ActionDialog.d.ts.map +1 -0
  48. package/dist/services/ActionDialogService/ActionDialog.js +531 -0
  49. package/dist/services/ActionDialogService/index.d.ts +4 -0
  50. package/dist/services/ActionDialogService/index.d.ts.map +1 -0
  51. package/dist/services/ActionDialogService/index.js +8 -0
  52. package/dist/services/ActionDialogService/service.d.ts +7 -0
  53. package/dist/services/ActionDialogService/service.d.ts.map +1 -0
  54. package/dist/services/ActionDialogService/service.js +309 -0
  55. package/dist/services/ActionDialogService/shared.d.ts +17 -0
  56. package/dist/services/ActionDialogService/shared.d.ts.map +1 -0
  57. package/dist/services/ActionDialogService/shared.js +167 -0
  58. package/dist/services/ActionDialogService/types.d.ts +160 -0
  59. package/dist/services/ActionDialogService/types.d.ts.map +1 -0
  60. package/dist/services/ActionDialogService/types.js +2 -0
  61. package/dist/services/CardToastService/index.d.ts +115 -0
  62. package/dist/services/CardToastService/index.d.ts.map +1 -0
  63. package/dist/services/CardToastService/index.js +899 -0
  64. package/dist/services/ImagePreviewService/index.d.ts +179 -0
  65. package/dist/services/ImagePreviewService/index.d.ts.map +1 -0
  66. package/dist/services/ImagePreviewService/index.js +1383 -0
  67. package/dist/services/LoadingService/index.d.ts +146 -0
  68. package/dist/services/LoadingService/index.d.ts.map +1 -0
  69. package/dist/services/LoadingService/index.js +827 -0
  70. package/dist/services/PermissionPurposeDialogService/index.d.ts +99 -0
  71. package/dist/services/PermissionPurposeDialogService/index.d.ts.map +1 -0
  72. package/dist/services/PermissionPurposeDialogService/index.js +360 -0
  73. package/dist/services/PickerService/index.d.ts +128 -0
  74. package/dist/services/PickerService/index.d.ts.map +1 -0
  75. package/dist/services/PickerService/index.js +250 -0
  76. package/dist/theme/ThemeProvider.d.ts +15 -0
  77. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  78. package/dist/theme/ThemeProvider.js +61 -0
  79. package/dist/theme/defaultTheme.d.ts +3 -0
  80. package/dist/theme/defaultTheme.d.ts.map +1 -0
  81. package/dist/theme/defaultTheme.js +28 -0
  82. package/dist/theme/mergeTheme.d.ts +3 -0
  83. package/dist/theme/mergeTheme.d.ts.map +1 -0
  84. package/dist/theme/mergeTheme.js +19 -0
  85. package/dist/theme/types.d.ts +17 -0
  86. package/dist/theme/types.d.ts.map +1 -0
  87. package/dist/theme/types.js +2 -0
  88. package/dist/theme/useTheme.d.ts +2 -0
  89. package/dist/theme/useTheme.d.ts.map +1 -0
  90. package/dist/theme/useTheme.js +46 -0
  91. package/dist/ui/Accordion/index.d.ts +99 -0
  92. package/dist/ui/Accordion/index.d.ts.map +1 -0
  93. package/dist/ui/Accordion/index.js +777 -0
  94. package/dist/ui/AddressCascader/index.d.ts +58 -0
  95. package/dist/ui/AddressCascader/index.d.ts.map +1 -0
  96. package/dist/ui/AddressCascader/index.js +710 -0
  97. package/dist/ui/BetweenTime/index.d.ts +82 -0
  98. package/dist/ui/BetweenTime/index.d.ts.map +1 -0
  99. package/dist/ui/BetweenTime/index.js +702 -0
  100. package/dist/ui/Button/index.d.ts +93 -0
  101. package/dist/ui/Button/index.d.ts.map +1 -0
  102. package/dist/ui/Button/index.js +832 -0
  103. package/dist/ui/Checkbox/index.d.ts +103 -0
  104. package/dist/ui/Checkbox/index.d.ts.map +1 -0
  105. package/dist/ui/Checkbox/index.js +694 -0
  106. package/dist/ui/DatePicker/index.d.ts +5 -0
  107. package/dist/ui/DatePicker/index.d.ts.map +1 -0
  108. package/dist/ui/DatePicker/index.js +157 -0
  109. package/dist/ui/DatePicker/types.d.ts +99 -0
  110. package/dist/ui/DatePicker/types.d.ts.map +1 -0
  111. package/dist/ui/DatePicker/types.js +2 -0
  112. package/dist/ui/DatePicker/utils.d.ts +32 -0
  113. package/dist/ui/DatePicker/utils.d.ts.map +1 -0
  114. package/dist/ui/DatePicker/utils.js +316 -0
  115. package/dist/ui/LinkedScroll/index.d.ts +78 -0
  116. package/dist/ui/LinkedScroll/index.d.ts.map +1 -0
  117. package/dist/ui/LinkedScroll/index.js +470 -0
  118. package/dist/ui/LoadingSpinner/index.d.ts +8 -0
  119. package/dist/ui/LoadingSpinner/index.d.ts.map +1 -0
  120. package/dist/ui/LoadingSpinner/index.js +122 -0
  121. package/dist/ui/Picker/actionBar.d.ts +14 -0
  122. package/dist/ui/Picker/actionBar.d.ts.map +1 -0
  123. package/dist/ui/Picker/actionBar.js +28 -0
  124. package/dist/ui/Picker/index.d.ts +5 -0
  125. package/dist/ui/Picker/index.d.ts.map +1 -0
  126. package/dist/ui/Picker/index.js +412 -0
  127. package/dist/ui/Picker/types.d.ts +80 -0
  128. package/dist/ui/Picker/types.d.ts.map +1 -0
  129. package/dist/ui/Picker/types.js +2 -0
  130. package/dist/ui/Picker/utils.d.ts +27 -0
  131. package/dist/ui/Picker/utils.d.ts.map +1 -0
  132. package/dist/ui/Picker/utils.js +182 -0
  133. package/dist/ui/Radio/index.d.ts +95 -0
  134. package/dist/ui/Radio/index.d.ts.map +1 -0
  135. package/dist/ui/Radio/index.js +633 -0
  136. package/dist/ui/Sheet/index.d.ts +12 -0
  137. package/dist/ui/Sheet/index.d.ts.map +1 -0
  138. package/dist/ui/Sheet/index.js +832 -0
  139. package/dist/ui/Sheet/nativeBottom.d.ts +52 -0
  140. package/dist/ui/Sheet/nativeBottom.d.ts.map +1 -0
  141. package/dist/ui/Sheet/nativeBottom.js +442 -0
  142. package/dist/ui/Sheet/nativeBottom.web.d.ts +18 -0
  143. package/dist/ui/Sheet/nativeBottom.web.d.ts.map +1 -0
  144. package/dist/ui/Sheet/nativeBottom.web.js +46 -0
  145. package/dist/ui/Sheet/slots.d.ts +5 -0
  146. package/dist/ui/Sheet/slots.d.ts.map +1 -0
  147. package/dist/ui/Sheet/slots.js +40 -0
  148. package/dist/ui/Sheet/types.d.ts +131 -0
  149. package/dist/ui/Sheet/types.d.ts.map +1 -0
  150. package/dist/ui/Sheet/types.js +2 -0
  151. package/dist/ui/SliderCaptcha/index.d.ts +57 -0
  152. package/dist/ui/SliderCaptcha/index.d.ts.map +1 -0
  153. package/dist/ui/SliderCaptcha/index.js +586 -0
  154. package/dist/ui/Switch/index.d.ts +72 -0
  155. package/dist/ui/Switch/index.d.ts.map +1 -0
  156. package/dist/ui/Switch/index.js +671 -0
  157. package/dist/ui/Text/index.d.ts +41 -0
  158. package/dist/ui/Text/index.d.ts.map +1 -0
  159. package/dist/ui/Text/index.js +325 -0
  160. package/dist/ui/TextInput/TextInputPrimitive.d.ts +8 -0
  161. package/dist/ui/TextInput/TextInputPrimitive.d.ts.map +1 -0
  162. package/dist/ui/TextInput/TextInputPrimitive.js +54 -0
  163. package/dist/ui/TextInput/index.d.ts +89 -0
  164. package/dist/ui/TextInput/index.d.ts.map +1 -0
  165. package/dist/ui/TextInput/index.js +545 -0
  166. package/dist/ui/WheelColumn/ZKitWheelPickerNativeComponent.d.ts +39 -0
  167. package/dist/ui/WheelColumn/ZKitWheelPickerNativeComponent.d.ts.map +1 -0
  168. package/dist/ui/WheelColumn/ZKitWheelPickerNativeComponent.js +60 -0
  169. package/dist/ui/WheelColumn/constants.d.ts +2 -0
  170. package/dist/ui/WheelColumn/constants.d.ts.map +1 -0
  171. package/dist/ui/WheelColumn/constants.js +4 -0
  172. package/dist/ui/WheelColumn/index.d.ts +59 -0
  173. package/dist/ui/WheelColumn/index.d.ts.map +1 -0
  174. package/dist/ui/WheelColumn/index.js +547 -0
  175. package/ios/ZKitWheelPicker.h +18 -0
  176. package/ios/ZKitWheelPicker.mm +230 -0
  177. package/ios/ZKitWheelPickerLabel.h +10 -0
  178. package/ios/ZKitWheelPickerLabel.mm +31 -0
  179. package/ios/ZKitWheelPickerManager.h +5 -0
  180. package/ios/ZKitWheelPickerManager.mm +53 -0
  181. package/package.json +75 -0
  182. package/react-native.config.js +10 -0
  183. package/src/ComponentLibProvider.tsx +56 -0
  184. package/src/assets/animations/spinner.json +1 -0
  185. package/src/assets/icons/check.svg +4 -0
  186. package/src/assets/icons/toast/error.webp +0 -0
  187. package/src/assets/icons/toast/success.webp +0 -0
  188. package/src/assets/icons/toast/warning.webp +0 -0
  189. package/src/config.ts +65 -0
  190. package/src/i18n/I18nProvider.tsx +69 -0
  191. package/src/i18n/locale.ts +108 -0
  192. package/src/i18n/locales/de.ts +67 -0
  193. package/src/i18n/locales/en-US.ts +67 -0
  194. package/src/i18n/locales/index.ts +19 -0
  195. package/src/i18n/locales/ja.ts +67 -0
  196. package/src/i18n/locales/zh-CN.ts +67 -0
  197. package/src/i18n/locales/zh-TW.ts +67 -0
  198. package/src/i18n/types.ts +21 -0
  199. package/src/i18n/useI18n.ts +7 -0
  200. package/src/index.ts +395 -0
  201. package/src/services/ActionDialogService/ActionDialog.tsx +756 -0
  202. package/src/services/ActionDialogService/README.md +146 -0
  203. package/src/services/ActionDialogService/index.tsx +39 -0
  204. package/src/services/ActionDialogService/service.tsx +355 -0
  205. package/src/services/ActionDialogService/shared.ts +204 -0
  206. package/src/services/ActionDialogService/types.ts +197 -0
  207. package/src/services/CardToastService/README.md +128 -0
  208. package/src/services/CardToastService/index.tsx +1284 -0
  209. package/src/services/ImagePreviewService/README.md +67 -0
  210. package/src/services/ImagePreviewService/index.tsx +2148 -0
  211. package/src/services/LoadingService/README.md +128 -0
  212. package/src/services/LoadingService/index.tsx +1113 -0
  213. package/src/services/PermissionPurposeDialogService/README.md +80 -0
  214. package/src/services/PermissionPurposeDialogService/index.tsx +449 -0
  215. package/src/services/PickerService/README.md +154 -0
  216. package/src/services/PickerService/index.tsx +410 -0
  217. package/src/theme/ThemeProvider.tsx +40 -0
  218. package/src/theme/defaultTheme.ts +30 -0
  219. package/src/theme/mergeTheme.ts +16 -0
  220. package/src/theme/types.ts +36 -0
  221. package/src/theme/useTheme.ts +10 -0
  222. package/src/types/svg.d.ts +9 -0
  223. package/src/types/vant-area-data.d.ts +19 -0
  224. package/src/ui/Accordion/README.md +67 -0
  225. package/src/ui/Accordion/index.tsx +1221 -0
  226. package/src/ui/AddressCascader/README.md +144 -0
  227. package/src/ui/AddressCascader/index.tsx +1084 -0
  228. package/src/ui/BetweenTime/README.md +490 -0
  229. package/src/ui/BetweenTime/index.tsx +1001 -0
  230. package/src/ui/Button/README.md +186 -0
  231. package/src/ui/Button/index.tsx +1356 -0
  232. package/src/ui/Checkbox/README.md +211 -0
  233. package/src/ui/Checkbox/index.tsx +1231 -0
  234. package/src/ui/DatePicker/README.md +117 -0
  235. package/src/ui/DatePicker/index.tsx +295 -0
  236. package/src/ui/DatePicker/types.ts +115 -0
  237. package/src/ui/DatePicker/utils.ts +405 -0
  238. package/src/ui/LinkedScroll/README.md +55 -0
  239. package/src/ui/LinkedScroll/index.tsx +809 -0
  240. package/src/ui/LoadingSpinner/index.tsx +104 -0
  241. package/src/ui/Picker/README.md +190 -0
  242. package/src/ui/Picker/actionBar.tsx +70 -0
  243. package/src/ui/Picker/index.tsx +694 -0
  244. package/src/ui/Picker/types.ts +94 -0
  245. package/src/ui/Picker/utils.ts +239 -0
  246. package/src/ui/Radio/README.md +207 -0
  247. package/src/ui/Radio/index.tsx +1117 -0
  248. package/src/ui/Sheet/README.md +82 -0
  249. package/src/ui/Sheet/index.tsx +1163 -0
  250. package/src/ui/Sheet/nativeBottom.tsx +683 -0
  251. package/src/ui/Sheet/nativeBottom.web.tsx +40 -0
  252. package/src/ui/Sheet/slots.tsx +75 -0
  253. package/src/ui/Sheet/types.ts +195 -0
  254. package/src/ui/SliderCaptcha/README.md +61 -0
  255. package/src/ui/SliderCaptcha/index.tsx +816 -0
  256. package/src/ui/Switch/README.md +143 -0
  257. package/src/ui/Switch/index.tsx +1092 -0
  258. package/src/ui/Text/README.md +157 -0
  259. package/src/ui/Text/index.tsx +450 -0
  260. package/src/ui/TextInput/README.md +197 -0
  261. package/src/ui/TextInput/TextInputPrimitive.tsx +44 -0
  262. package/src/ui/TextInput/index.tsx +942 -0
  263. package/src/ui/WheelColumn/README.md +104 -0
  264. package/src/ui/WheelColumn/ZKitWheelPickerNativeComponent.tsx +68 -0
  265. package/src/ui/WheelColumn/constants.ts +1 -0
  266. package/src/ui/WheelColumn/index.tsx +826 -0
  267. package/zkit-ui.podspec +19 -0
@@ -0,0 +1,80 @@
1
+ import type * as React from 'react';
2
+ export type PickerPrimitiveValue = string | number;
3
+ export type PickerValue = PickerPrimitiveValue | PickerPrimitiveValue[];
4
+ export type PickerValueMode = 'auto' | 'single' | 'path';
5
+ export type PickerOption<TValue extends PickerPrimitiveValue = PickerPrimitiveValue> = {
6
+ value: TValue;
7
+ label: string;
8
+ disabled?: boolean;
9
+ children?: PickerOption<TValue>[];
10
+ key?: React.Key;
11
+ testID?: string;
12
+ accessibilityLabel?: string;
13
+ [key: string]: unknown;
14
+ };
15
+ export type PickerSelection<TOption = PickerOption> = {
16
+ value: PickerValue;
17
+ values: PickerPrimitiveValue[];
18
+ label: string;
19
+ labels: string[];
20
+ items: TOption[];
21
+ columns: TOption[][];
22
+ indices: number[];
23
+ isComplete: boolean;
24
+ };
25
+ export type PickerConfirmPayload<TOption = PickerOption> = PickerSelection<TOption>;
26
+ export type PickerChangePayload<TOption = PickerOption> = PickerSelection<TOption>;
27
+ export type PickerDraftChangePayload<TOption = PickerOption> = PickerSelection<TOption>;
28
+ export type PickerHandle = {
29
+ open: () => void;
30
+ close: () => void;
31
+ };
32
+ export type PickerTriggerContext<TOption = PickerOption> = PickerSelection<TOption> & {
33
+ open: () => void;
34
+ close: () => void;
35
+ isOpen: boolean;
36
+ disabled: boolean;
37
+ placeholder: string;
38
+ };
39
+ export type PickerColumnHeaderContext<TOption = PickerOption> = {
40
+ columnIndex: number;
41
+ columnCount: number;
42
+ options: TOption[];
43
+ selectedItem?: TOption;
44
+ selectedValue?: PickerPrimitiveValue;
45
+ selectedLabel?: string;
46
+ };
47
+ export type PickerOptionAccessors<TOption> = {
48
+ getOptionValue?: (option: TOption, index: number, path: TOption[]) => PickerPrimitiveValue | undefined;
49
+ getOptionLabel?: (option: TOption, index: number, path: TOption[]) => string | number | undefined;
50
+ getOptionChildren?: (option: TOption, index: number, path: TOption[]) => readonly TOption[] | undefined;
51
+ isOptionDisabled?: (option: TOption, index: number, path: TOption[]) => boolean;
52
+ };
53
+ export type PickerProps<TOption = PickerOption> = PickerOptionAccessors<TOption> & {
54
+ options: readonly TOption[];
55
+ value?: PickerValue;
56
+ defaultValue?: PickerValue;
57
+ onChange?: (value: PickerValue, selection: PickerChangePayload<TOption>) => void;
58
+ valueMode?: PickerValueMode;
59
+ open?: boolean;
60
+ defaultOpen?: boolean;
61
+ onOpenChange?: (open: boolean) => void;
62
+ onDismissComplete?: () => void;
63
+ title?: string;
64
+ placeholder?: string;
65
+ cancelText?: string;
66
+ confirmText?: string;
67
+ emptyText?: string;
68
+ separator?: string;
69
+ formatLabel?: (selection: PickerSelection<TOption>) => string;
70
+ renderColumnHeader?: (context: PickerColumnHeaderContext<TOption>) => React.ReactNode;
71
+ maxColumns?: number;
72
+ lazyContent?: boolean;
73
+ sheetHeight?: number | 'auto';
74
+ disabled?: boolean;
75
+ onCancel?: () => void;
76
+ onConfirm?: (selection: PickerConfirmPayload<TOption>) => void;
77
+ onDraftChange?: (selection: PickerDraftChangePayload<TOption>) => void;
78
+ children?: React.ReactNode | ((context: PickerTriggerContext<TOption>) => React.ReactNode);
79
+ };
80
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ui/Picker/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,27 @@
1
+ import type { PickerOptionAccessors, PickerPrimitiveValue, PickerSelection, PickerValue, PickerValueMode } from './types';
2
+ export type PickerCascadeState<TOption> = {
3
+ columns: TOption[][];
4
+ indices: number[];
5
+ values: PickerPrimitiveValue[];
6
+ labels: string[];
7
+ items: TOption[];
8
+ };
9
+ type SelectionOptions<TOption> = {
10
+ separator: string;
11
+ valueMode: PickerValueMode;
12
+ preferPathValue: boolean;
13
+ formatLabel?: (selection: PickerSelection<TOption>) => string;
14
+ };
15
+ export declare function clampNumber(n: number, min: number, max: number): number;
16
+ export declare function toArrayValue(value: PickerValue | undefined): PickerPrimitiveValue[];
17
+ export declare function toOutputValue(values: PickerPrimitiveValue[], valueMode: PickerValueMode, preferPathValue: boolean): PickerValue;
18
+ export declare function resolveOptionValue<TOption>(option: TOption, index: number, path: TOption[], accessors: PickerOptionAccessors<TOption>): PickerPrimitiveValue;
19
+ export declare function resolveOptionLabel<TOption>(option: TOption, index: number, path: TOption[], accessors: PickerOptionAccessors<TOption>): string;
20
+ export declare function resolveOptionChildren<TOption>(option: TOption, index: number, path: TOption[], accessors: PickerOptionAccessors<TOption>): TOption[];
21
+ export declare function resolveOptionDisabled<TOption>(option: TOption, index: number, path: TOption[], accessors: PickerOptionAccessors<TOption>): boolean;
22
+ export declare function findNearestEnabledIndex<TOption>(options: readonly TOption[], startIndex: number, path: TOption[], accessors: PickerOptionAccessors<TOption>): number;
23
+ export declare function resolveCascade<TOption>(rootOptions: readonly TOption[], desiredValues: PickerPrimitiveValue[], accessors: PickerOptionAccessors<TOption>, maxColumns: number): PickerCascadeState<TOption>;
24
+ export declare function createPickerSelection<TOption>(state: PickerCascadeState<TOption>, options: SelectionOptions<TOption>): PickerSelection<TOption>;
25
+ export declare function transparentizeColor(color: string): string;
26
+ export {};
27
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/ui/Picker/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,kBAAkB,CAAC,OAAO,IAAI;IACxC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,oBAAoB,EAAE,CAAC;IAC/B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB,CAAC;AAEF,KAAK,gBAAgB,CAAC,OAAO,IAAI;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,eAAe,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC;CAC/D,CAAC;AAEF,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAE9D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,GAAG,oBAAoB,EAAE,CAInF;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,oBAAoB,EAAE,EAC9B,SAAS,EAAE,eAAe,EAC1B,eAAe,EAAE,OAAO,GACvB,WAAW,CAKb;AAaD,wBAAgB,kBAAkB,CAAC,OAAO,EACxC,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,EAAE,EACf,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC,GACxC,oBAAoB,CAStB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EACxC,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,EAAE,EACf,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC,GACxC,MAAM,CAWR;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAC3C,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,EAAE,EACf,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC,GACxC,OAAO,EAAE,CAMX;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAC3C,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,EAAE,EACf,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC,GACxC,OAAO,CAIT;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAC7C,OAAO,EAAE,SAAS,OAAO,EAAE,EAC3B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,OAAO,EAAE,EACf,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC,UAqB1C;AAED,wBAAgB,cAAc,CAAC,OAAO,EACpC,WAAW,EAAE,SAAS,OAAO,EAAE,EAC/B,aAAa,EAAE,oBAAoB,EAAE,EACrC,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC,EACzC,UAAU,EAAE,MAAM,GACjB,kBAAkB,CAAC,OAAO,CAAC,CA0C7B;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAC3C,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAClC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,GACjC,eAAe,CAAC,OAAO,CAAC,CAuB1B;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,UAqBhD"}
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.clampNumber = clampNumber;
4
+ exports.toArrayValue = toArrayValue;
5
+ exports.toOutputValue = toOutputValue;
6
+ exports.resolveOptionValue = resolveOptionValue;
7
+ exports.resolveOptionLabel = resolveOptionLabel;
8
+ exports.resolveOptionChildren = resolveOptionChildren;
9
+ exports.resolveOptionDisabled = resolveOptionDisabled;
10
+ exports.findNearestEnabledIndex = findNearestEnabledIndex;
11
+ exports.resolveCascade = resolveCascade;
12
+ exports.createPickerSelection = createPickerSelection;
13
+ exports.transparentizeColor = transparentizeColor;
14
+ function clampNumber(n, min, max) {
15
+ return Math.max(min, Math.min(max, n));
16
+ }
17
+ function toArrayValue(value) {
18
+ if (Array.isArray(value))
19
+ return value;
20
+ if (typeof value === 'string' || typeof value === 'number')
21
+ return [value];
22
+ return [];
23
+ }
24
+ function toOutputValue(values, valueMode, preferPathValue) {
25
+ var _a, _b;
26
+ if (valueMode === 'path')
27
+ return values;
28
+ if (valueMode === 'single')
29
+ return (_a = values[values.length - 1]) !== null && _a !== void 0 ? _a : '';
30
+ if (preferPathValue || values.length !== 1)
31
+ return values;
32
+ return (_b = values[0]) !== null && _b !== void 0 ? _b : '';
33
+ }
34
+ function isPrimitiveValue(value) {
35
+ return typeof value === 'string' || typeof value === 'number';
36
+ }
37
+ function toOptionRecord(option) {
38
+ if (option != null && typeof option === 'object') {
39
+ return option;
40
+ }
41
+ return {};
42
+ }
43
+ function resolveOptionValue(option, index, path, accessors) {
44
+ var _a, _b, _c, _d;
45
+ const customValue = (_a = accessors.getOptionValue) === null || _a === void 0 ? void 0 : _a.call(accessors, option, index, path);
46
+ if (isPrimitiveValue(customValue))
47
+ return customValue;
48
+ const record = toOptionRecord(option);
49
+ const fallbackValue = (_d = (_c = (_b = record.value) !== null && _b !== void 0 ? _b : record.id) !== null && _c !== void 0 ? _c : record.code) !== null && _d !== void 0 ? _d : record.key;
50
+ if (isPrimitiveValue(fallbackValue))
51
+ return fallbackValue;
52
+ return index;
53
+ }
54
+ function resolveOptionLabel(option, index, path, accessors) {
55
+ var _a, _b, _c, _d;
56
+ const customLabel = (_a = accessors.getOptionLabel) === null || _a === void 0 ? void 0 : _a.call(accessors, option, index, path);
57
+ if (typeof customLabel === 'string')
58
+ return customLabel;
59
+ if (typeof customLabel === 'number')
60
+ return String(customLabel);
61
+ const record = toOptionRecord(option);
62
+ const fallbackLabel = (_d = (_c = (_b = record.label) !== null && _b !== void 0 ? _b : record.title) !== null && _c !== void 0 ? _c : record.text) !== null && _d !== void 0 ? _d : record.name;
63
+ if (typeof fallbackLabel === 'string')
64
+ return fallbackLabel;
65
+ if (typeof fallbackLabel === 'number')
66
+ return String(fallbackLabel);
67
+ return String(resolveOptionValue(option, index, path, accessors));
68
+ }
69
+ function resolveOptionChildren(option, index, path, accessors) {
70
+ var _a;
71
+ const customChildren = (_a = accessors.getOptionChildren) === null || _a === void 0 ? void 0 : _a.call(accessors, option, index, path);
72
+ if (Array.isArray(customChildren))
73
+ return customChildren;
74
+ const record = toOptionRecord(option);
75
+ return Array.isArray(record.children) ? record.children : [];
76
+ }
77
+ function resolveOptionDisabled(option, index, path, accessors) {
78
+ var _a;
79
+ const customDisabled = (_a = accessors.isOptionDisabled) === null || _a === void 0 ? void 0 : _a.call(accessors, option, index, path);
80
+ if (typeof customDisabled === 'boolean')
81
+ return customDisabled;
82
+ return toOptionRecord(option).disabled === true;
83
+ }
84
+ function findNearestEnabledIndex(options, startIndex, path, accessors) {
85
+ if (!options.length)
86
+ return -1;
87
+ const index = clampNumber(Math.round(startIndex), 0, options.length - 1);
88
+ const isEnabled = (optionIndex) => {
89
+ const option = options[optionIndex];
90
+ return !resolveOptionDisabled(option, optionIndex, [...path, option], accessors);
91
+ };
92
+ if (isEnabled(index))
93
+ return index;
94
+ for (let i = index + 1; i < options.length; i += 1) {
95
+ if (isEnabled(i))
96
+ return i;
97
+ }
98
+ for (let i = index - 1; i >= 0; i -= 1) {
99
+ if (isEnabled(i))
100
+ return i;
101
+ }
102
+ return -1;
103
+ }
104
+ function resolveCascade(rootOptions, desiredValues, accessors, maxColumns) {
105
+ const columns = [];
106
+ const indices = [];
107
+ const values = [];
108
+ const labels = [];
109
+ const items = [];
110
+ let currentOptions = Array.isArray(rootOptions) ? rootOptions : [];
111
+ let path = [];
112
+ for (let columnIndex = 0; columnIndex < maxColumns; columnIndex += 1) {
113
+ if (!currentOptions.length)
114
+ break;
115
+ columns.push(currentOptions);
116
+ const desired = desiredValues[columnIndex];
117
+ let selectedIndex = 0;
118
+ if (desired !== undefined) {
119
+ const foundIndex = currentOptions.findIndex((option, optionIndex) => {
120
+ const nextPath = [...path, option];
121
+ return Object.is(resolveOptionValue(option, optionIndex, nextPath, accessors), desired);
122
+ });
123
+ selectedIndex = foundIndex >= 0 ? foundIndex : 0;
124
+ }
125
+ selectedIndex = findNearestEnabledIndex(currentOptions, selectedIndex, path, accessors);
126
+ if (selectedIndex < 0)
127
+ break;
128
+ const item = currentOptions[selectedIndex];
129
+ if (item == null)
130
+ break;
131
+ const nextPath = [...path, item];
132
+ indices.push(selectedIndex);
133
+ values.push(resolveOptionValue(item, selectedIndex, nextPath, accessors));
134
+ labels.push(resolveOptionLabel(item, selectedIndex, nextPath, accessors));
135
+ items.push(item);
136
+ currentOptions = resolveOptionChildren(item, selectedIndex, nextPath, accessors);
137
+ path = nextPath;
138
+ }
139
+ return { columns, indices, values, labels, items };
140
+ }
141
+ function createPickerSelection(state, options) {
142
+ var _a;
143
+ const value = toOutputValue(state.values, options.valueMode, options.preferPathValue);
144
+ const baseLabel = state.labels.filter(Boolean).join(options.separator);
145
+ const baseSelection = {
146
+ value,
147
+ values: state.values,
148
+ label: baseLabel,
149
+ labels: state.labels,
150
+ items: state.items,
151
+ columns: state.columns,
152
+ indices: state.indices,
153
+ isComplete: state.columns.length > 0 &&
154
+ state.items.length === state.columns.length &&
155
+ state.values.length === state.columns.length,
156
+ };
157
+ const formattedLabel = (_a = options.formatLabel) === null || _a === void 0 ? void 0 : _a.call(options, baseSelection);
158
+ if (typeof formattedLabel === 'string') {
159
+ return { ...baseSelection, label: formattedLabel };
160
+ }
161
+ return baseSelection;
162
+ }
163
+ function transparentizeColor(color) {
164
+ const input = color.trim();
165
+ const fullHex = /^#([0-9a-f]{6})$/i.exec(input);
166
+ if (fullHex) {
167
+ const n = Number.parseInt(fullHex[1], 16);
168
+ const r = (n >> 16) & 255;
169
+ const g = (n >> 8) & 255;
170
+ const b = n & 255;
171
+ return `rgba(${r},${g},${b},0)`;
172
+ }
173
+ const shortHex = /^#([0-9a-f]{3})$/i.exec(input);
174
+ if (shortHex) {
175
+ const chars = shortHex[1];
176
+ const r = Number.parseInt(`${chars[0]}${chars[0]}`, 16);
177
+ const g = Number.parseInt(`${chars[1]}${chars[1]}`, 16);
178
+ const b = Number.parseInt(`${chars[2]}${chars[2]}`, 16);
179
+ return `rgba(${r},${g},${b},0)`;
180
+ }
181
+ return 'transparent';
182
+ }
@@ -0,0 +1,95 @@
1
+ import * as React from 'react';
2
+ import type { StyleProp, TextStyle, ViewStyle } from 'react-native';
3
+ import { Pressable, View } from 'react-native';
4
+ export type RadioValue = string | number;
5
+ export type RadioSize = 'sm' | 'md' | 'lg';
6
+ export type RadioTone = 'primary' | 'neutral' | 'success' | 'warning' | 'danger' | 'info';
7
+ export type RadioVariant = 'outline' | 'soft' | 'solid';
8
+ export type RadioLabelPlacement = 'start' | 'end';
9
+ export type RadioGroupOrientation = 'horizontal' | 'vertical';
10
+ export type RadioGroupAlign = 'start' | 'center' | 'end' | 'stretch';
11
+ export type RadioLayout = {
12
+ indicatorSize?: number;
13
+ indicatorDotSize?: number;
14
+ indicatorBorderWidth?: number;
15
+ gap?: number;
16
+ minTouchTarget?: number;
17
+ focusRingWidth?: number;
18
+ focusRingOffset?: number;
19
+ };
20
+ export type RadioColors = {
21
+ checkedBackground?: string;
22
+ checkedBorder?: string;
23
+ checkedIndicator?: string;
24
+ uncheckedBackground?: string;
25
+ uncheckedBorder?: string;
26
+ focusRing?: string;
27
+ };
28
+ export type RadioSlotProps = {
29
+ checked: boolean;
30
+ value?: RadioValue;
31
+ disabled: boolean;
32
+ interactive: boolean;
33
+ size: RadioSize;
34
+ tone: RadioTone;
35
+ variant: RadioVariant;
36
+ select: () => void;
37
+ };
38
+ type NativePressableProps = Omit<React.ComponentPropsWithoutRef<typeof Pressable>, 'accessibilityRole' | 'accessibilityState' | 'children' | 'disabled' | 'style' | 'onChange'>;
39
+ export type RadioRef = React.ComponentRef<typeof Pressable>;
40
+ export interface RadioProps extends NativePressableProps {
41
+ value?: RadioValue;
42
+ checked?: boolean;
43
+ defaultChecked?: boolean;
44
+ onChange?: (checked: boolean) => void;
45
+ allowDeselect?: boolean;
46
+ disabled?: boolean;
47
+ size?: RadioSize;
48
+ tone?: RadioTone;
49
+ variant?: RadioVariant;
50
+ duration?: number;
51
+ color?: string;
52
+ colors?: RadioColors;
53
+ layout?: RadioLayout;
54
+ label?: React.ReactNode;
55
+ description?: React.ReactNode;
56
+ labelPlacement?: RadioLabelPlacement;
57
+ children?: React.ReactNode | ((slot: RadioSlotProps) => React.ReactNode);
58
+ showIndicator?: boolean;
59
+ indicator?: React.ReactNode | ((slot: RadioSlotProps) => React.ReactNode);
60
+ style?: React.ComponentPropsWithoutRef<typeof Pressable>['style'];
61
+ contentStyle?: StyleProp<ViewStyle>;
62
+ indicatorStyle?: StyleProp<ViewStyle>;
63
+ labelStyle?: StyleProp<TextStyle>;
64
+ descriptionStyle?: StyleProp<TextStyle>;
65
+ accessibilityState?: React.ComponentPropsWithoutRef<typeof Pressable>['accessibilityState'];
66
+ }
67
+ export declare const Radio: React.NamedExoticComponent<RadioProps & React.RefAttributes<View>>;
68
+ export type RadioIndicatorProps = {
69
+ children?: React.ReactNode | ((slot: RadioSlotProps) => React.ReactNode);
70
+ style?: StyleProp<ViewStyle>;
71
+ };
72
+ export declare function RadioIndicator({ children, style }: RadioIndicatorProps): import("react/jsx-runtime").JSX.Element;
73
+ export type RadioGroupProps<T extends RadioValue = RadioValue> = Omit<React.ComponentPropsWithoutRef<typeof View>, 'children' | 'onChange'> & {
74
+ value?: T | null;
75
+ defaultValue?: T | null;
76
+ onChange?: (value: T | null) => void;
77
+ disabled?: boolean;
78
+ allowDeselect?: boolean;
79
+ orientation?: RadioGroupOrientation;
80
+ align?: RadioGroupAlign;
81
+ wrap?: boolean;
82
+ gap?: number;
83
+ rowGap?: number;
84
+ columnGap?: number;
85
+ size?: RadioSize;
86
+ tone?: RadioTone;
87
+ variant?: RadioVariant;
88
+ color?: string;
89
+ colors?: RadioColors;
90
+ layout?: RadioLayout;
91
+ children: React.ReactNode;
92
+ };
93
+ export declare function RadioGroup<T extends RadioValue = RadioValue>({ value, defaultValue, onChange, disabled, allowDeselect, orientation, align, wrap, gap, rowGap, columnGap, size, tone, variant, color, colors, layout, style, children, accessibilityState, ...viewProps }: RadioGroupProps<T>): import("react/jsx-runtime").JSX.Element;
94
+ export {};
95
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/Radio/index.tsx"],"names":[],"mappings":"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"}