@open-dy/vibecoding-sdk-taro 0.0.1-beta.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 (239) hide show
  1. package/dist/adapters/interest-card/eslint/eslint-plugin-custom-navigation.mjs +290 -0
  2. package/dist/adapters/interest-card/eslint/taro.mjs +55 -0
  3. package/dist/adapters/interest-card/runtime/microapp.d.ts +7 -0
  4. package/dist/adapters/interest-card/runtime/microapp.js +8 -0
  5. package/dist/adapters/interest-card/runtime/microapp.js.map +1 -0
  6. package/dist/adapters/interest-card/types/taro.d.ts +28 -0
  7. package/dist/build/config-overrides.d.ts +19 -0
  8. package/dist/build/config-overrides.js +35 -0
  9. package/dist/build/config-overrides.js.map +1 -0
  10. package/dist/build/index.d.ts +1 -0
  11. package/dist/build/index.js +2 -0
  12. package/dist/build/index.js.map +1 -0
  13. package/dist/build/plugins/app-config.cjs +43 -0
  14. package/dist/build/plugins/vite-depend-card.d.ts +29 -0
  15. package/dist/build/plugins/vite-depend-card.js +250 -0
  16. package/dist/build/plugins/vite-depend-card.js.map +1 -0
  17. package/dist/build/plugins/vite-image-asset-import.d.ts +10 -0
  18. package/dist/build/plugins/vite-image-asset-import.js +150 -0
  19. package/dist/build/plugins/vite-image-asset-import.js.map +1 -0
  20. package/dist/build/plugins/vite-inline-json.d.ts +4 -0
  21. package/dist/build/plugins/vite-inline-json.js +129 -0
  22. package/dist/build/plugins/vite-inline-json.js.map +1 -0
  23. package/dist/build/plugins/vite-taro-source-location.d.ts +13 -0
  24. package/dist/build/plugins/vite-taro-source-location.js +159 -0
  25. package/dist/build/plugins/vite-taro-source-location.js.map +1 -0
  26. package/dist/build/taro.d.ts +53 -0
  27. package/dist/build/taro.js +729 -0
  28. package/dist/build/taro.js.map +1 -0
  29. package/dist/components/miniapp-open-card.d.ts +19 -0
  30. package/dist/components/miniapp-open-card.js +3 -0
  31. package/dist/components/miniapp-open-card.js.map +1 -0
  32. package/dist/eslint/eslint-plugin-microapp-pages.mjs +659 -0
  33. package/dist/eslint/server.mjs +69 -0
  34. package/dist/eslint/taro.mjs +553 -0
  35. package/dist/index.d.ts +2 -0
  36. package/dist/index.js +3 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/internal/runtime/douyin-open-button.d.ts +29 -0
  39. package/dist/internal/runtime/iframe-auth/identity.d.ts +20 -0
  40. package/dist/internal/runtime/iframe-auth/identity.js +156 -0
  41. package/dist/internal/runtime/iframe-auth/identity.js.map +1 -0
  42. package/dist/internal/runtime/iframe-auth/index.d.ts +2 -0
  43. package/dist/internal/runtime/iframe-auth/index.js +3 -0
  44. package/dist/internal/runtime/iframe-auth/index.js.map +1 -0
  45. package/dist/internal/runtime/iframe-auth/sync.d.ts +2 -0
  46. package/dist/internal/runtime/iframe-auth/sync.js +23 -0
  47. package/dist/internal/runtime/iframe-auth/sync.js.map +1 -0
  48. package/dist/lib/measure.d.ts +21 -0
  49. package/dist/lib/measure.js +101 -0
  50. package/dist/lib/measure.js.map +1 -0
  51. package/dist/lib/platform.d.ts +2 -0
  52. package/dist/lib/platform.js +11 -0
  53. package/dist/lib/platform.js.map +1 -0
  54. package/dist/lib/utils.d.ts +2 -0
  55. package/dist/lib/utils.js +6 -0
  56. package/dist/lib/utils.js.map +1 -0
  57. package/dist/reference/llms.txt +36 -0
  58. package/dist/reference/sdk-api/build/taro/BuildContext.md +53 -0
  59. package/dist/reference/sdk-api/build/taro/CreateMicroappTaroConfigOptions.md +62 -0
  60. package/dist/reference/sdk-api/build/taro/createMicroappTaroConfig.md +66 -0
  61. package/dist/reference/sdk-api/build/taro/index.md +11 -0
  62. package/dist/reference/sdk-api/runtime/CreateMicroappClientOptions.md +47 -0
  63. package/dist/reference/sdk-api/runtime/createMicroappClient.md +378 -0
  64. package/dist/reference/sdk-api/runtime/index.md +10 -0
  65. package/dist/reference/sdk-api.json +1534 -0
  66. package/dist/reference/sdk-api.md +43 -0
  67. package/dist/runtime/client.d.ts +63 -0
  68. package/dist/runtime/client.js +194 -0
  69. package/dist/runtime/client.js.map +1 -0
  70. package/dist/runtime/closed-domain-request-header.d.ts +4 -0
  71. package/dist/runtime/closed-domain-request-header.js +8 -0
  72. package/dist/runtime/closed-domain-request-header.js.map +1 -0
  73. package/dist/runtime/default-client.d.ts +57 -0
  74. package/dist/runtime/default-client.js +21 -0
  75. package/dist/runtime/default-client.js.map +1 -0
  76. package/dist/runtime/default-iframe-auth.d.ts +8 -0
  77. package/dist/runtime/default-iframe-auth.js +10 -0
  78. package/dist/runtime/default-iframe-auth.js.map +1 -0
  79. package/dist/runtime/douyin-container-request.d.ts +11 -0
  80. package/dist/runtime/douyin-container-request.js +301 -0
  81. package/dist/runtime/douyin-container-request.js.map +1 -0
  82. package/dist/runtime/douyin-login-request.d.ts +32 -0
  83. package/dist/runtime/douyin-login-request.js +400 -0
  84. package/dist/runtime/douyin-login-request.js.map +1 -0
  85. package/dist/runtime/globals.d.ts +342 -0
  86. package/dist/runtime/index.d.ts +4 -0
  87. package/dist/runtime/index.js +4 -0
  88. package/dist/runtime/index.js.map +1 -0
  89. package/dist/runtime/network-url.d.ts +3 -0
  90. package/dist/runtime/network-url.js +53 -0
  91. package/dist/runtime/network-url.js.map +1 -0
  92. package/dist/types/taro.d.ts +1 -0
  93. package/dist/ui/accordion.d.ts +17 -0
  94. package/dist/ui/accordion.js +60 -0
  95. package/dist/ui/accordion.js.map +1 -0
  96. package/dist/ui/alert-dialog.d.ts +33 -0
  97. package/dist/ui/alert-dialog.js +96 -0
  98. package/dist/ui/alert-dialog.js.map +1 -0
  99. package/dist/ui/alert.d.ts +11 -0
  100. package/dist/ui/alert.js +49 -0
  101. package/dist/ui/alert.js.map +1 -0
  102. package/dist/ui/aspect-ratio.d.ts +5 -0
  103. package/dist/ui/aspect-ratio.js +10 -0
  104. package/dist/ui/aspect-ratio.js.map +1 -0
  105. package/dist/ui/avatar.d.ts +14 -0
  106. package/dist/ui/avatar.js +50 -0
  107. package/dist/ui/avatar.js.map +1 -0
  108. package/dist/ui/badge.d.ts +8 -0
  109. package/dist/ui/badge.js +27 -0
  110. package/dist/ui/badge.js.map +1 -0
  111. package/dist/ui/button-group.d.ts +14 -0
  112. package/dist/ui/button-group.js +52 -0
  113. package/dist/ui/button-group.js.map +1 -0
  114. package/dist/ui/button.d.ts +30 -0
  115. package/dist/ui/button.js +75 -0
  116. package/dist/ui/button.js.map +1 -0
  117. package/dist/ui/calendar.d.ts +29 -0
  118. package/dist/ui/calendar.js +141 -0
  119. package/dist/ui/calendar.js.map +1 -0
  120. package/dist/ui/card.d.ts +12 -0
  121. package/dist/ui/card.js +38 -0
  122. package/dist/ui/card.js.map +1 -0
  123. package/dist/ui/carousel.d.ts +30 -0
  124. package/dist/ui/carousel.js +60 -0
  125. package/dist/ui/carousel.js.map +1 -0
  126. package/dist/ui/checkbox.d.ts +9 -0
  127. package/dist/ui/checkbox.js +20 -0
  128. package/dist/ui/checkbox.js.map +1 -0
  129. package/dist/ui/collapsible.d.ts +18 -0
  130. package/dist/ui/collapsible.js +53 -0
  131. package/dist/ui/collapsible.js.map +1 -0
  132. package/dist/ui/combobox.d.ts +55 -0
  133. package/dist/ui/combobox.js +165 -0
  134. package/dist/ui/combobox.js.map +1 -0
  135. package/dist/ui/dialog.d.ts +26 -0
  136. package/dist/ui/dialog.js +54 -0
  137. package/dist/ui/dialog.js.map +1 -0
  138. package/dist/ui/drawer.d.ts +21 -0
  139. package/dist/ui/drawer.js +57 -0
  140. package/dist/ui/drawer.js.map +1 -0
  141. package/dist/ui/dropdown-menu.d.ts +52 -0
  142. package/dist/ui/dropdown-menu.js +112 -0
  143. package/dist/ui/dropdown-menu.js.map +1 -0
  144. package/dist/ui/empty.d.ts +12 -0
  145. package/dist/ui/empty.js +35 -0
  146. package/dist/ui/empty.js.map +1 -0
  147. package/dist/ui/field.d.ts +26 -0
  148. package/dist/ui/field.js +117 -0
  149. package/dist/ui/field.js.map +1 -0
  150. package/dist/ui/helpers.d.ts +6 -0
  151. package/dist/ui/helpers.js +23 -0
  152. package/dist/ui/helpers.js.map +1 -0
  153. package/dist/ui/index.d.ts +47 -0
  154. package/dist/ui/index.js +48 -0
  155. package/dist/ui/index.js.map +1 -0
  156. package/dist/ui/input-group.d.ts +17 -0
  157. package/dist/ui/input-group.js +122 -0
  158. package/dist/ui/input-group.js.map +1 -0
  159. package/dist/ui/input-otp.d.ts +18 -0
  160. package/dist/ui/input-otp.js +48 -0
  161. package/dist/ui/input-otp.js.map +1 -0
  162. package/dist/ui/input.d.ts +5 -0
  163. package/dist/ui/input.js +8 -0
  164. package/dist/ui/input.js.map +1 -0
  165. package/dist/ui/item.d.ts +22 -0
  166. package/dist/ui/item.js +83 -0
  167. package/dist/ui/item.js.map +1 -0
  168. package/dist/ui/label.d.ts +3 -0
  169. package/dist/ui/label.js +8 -0
  170. package/dist/ui/label.js.map +1 -0
  171. package/dist/ui/menubar.d.ts +65 -0
  172. package/dist/ui/menubar.js +244 -0
  173. package/dist/ui/menubar.js.map +1 -0
  174. package/dist/ui/navigation-menu.d.ts +27 -0
  175. package/dist/ui/navigation-menu.js +72 -0
  176. package/dist/ui/navigation-menu.js.map +1 -0
  177. package/dist/ui/pagination.d.ts +17 -0
  178. package/dist/ui/pagination.js +28 -0
  179. package/dist/ui/pagination.js.map +1 -0
  180. package/dist/ui/popover.d.ts +27 -0
  181. package/dist/ui/popover.js +139 -0
  182. package/dist/ui/popover.js.map +1 -0
  183. package/dist/ui/portal.d.ts +5 -0
  184. package/dist/ui/portal.js +18 -0
  185. package/dist/ui/portal.js.map +1 -0
  186. package/dist/ui/progress.d.ts +45 -0
  187. package/dist/ui/progress.js +67 -0
  188. package/dist/ui/progress.js.map +1 -0
  189. package/dist/ui/radio-group.d.ts +12 -0
  190. package/dist/ui/radio-group.js +29 -0
  191. package/dist/ui/radio-group.js.map +1 -0
  192. package/dist/ui/resizable.d.ts +20 -0
  193. package/dist/ui/resizable.js +244 -0
  194. package/dist/ui/resizable.js.map +1 -0
  195. package/dist/ui/scroll-area.d.ts +8 -0
  196. package/dist/ui/scroll-area.js +34 -0
  197. package/dist/ui/scroll-area.js.map +1 -0
  198. package/dist/ui/select.d.ts +35 -0
  199. package/dist/ui/select.js +136 -0
  200. package/dist/ui/select.js.map +1 -0
  201. package/dist/ui/separator.d.ts +5 -0
  202. package/dist/ui/separator.js +8 -0
  203. package/dist/ui/separator.js.map +1 -0
  204. package/dist/ui/sheet.d.ts +26 -0
  205. package/dist/ui/sheet.js +67 -0
  206. package/dist/ui/sheet.js.map +1 -0
  207. package/dist/ui/skeleton.d.ts +3 -0
  208. package/dist/ui/skeleton.js +8 -0
  209. package/dist/ui/skeleton.js.map +1 -0
  210. package/dist/ui/slider.d.ts +12 -0
  211. package/dist/ui/slider.js +94 -0
  212. package/dist/ui/slider.js.map +1 -0
  213. package/dist/ui/sonner.d.ts +6 -0
  214. package/dist/ui/sonner.js +13 -0
  215. package/dist/ui/sonner.js.map +1 -0
  216. package/dist/ui/spinner.d.ts +3 -0
  217. package/dist/ui/spinner.js +9 -0
  218. package/dist/ui/spinner.js.map +1 -0
  219. package/dist/ui/switch.d.ts +11 -0
  220. package/dist/ui/switch.js +33 -0
  221. package/dist/ui/switch.js.map +1 -0
  222. package/dist/ui/table.d.ts +13 -0
  223. package/dist/ui/table.js +54 -0
  224. package/dist/ui/table.js.map +1 -0
  225. package/dist/ui/tabs.d.ts +23 -0
  226. package/dist/ui/tabs.js +61 -0
  227. package/dist/ui/tabs.js.map +1 -0
  228. package/dist/ui/tailwind.css +2 -0
  229. package/dist/ui/textarea.d.ts +3 -0
  230. package/dist/ui/textarea.js +13 -0
  231. package/dist/ui/textarea.js.map +1 -0
  232. package/dist/ui/theme.css +234 -0
  233. package/dist/ui/toggle-group.d.ts +19 -0
  234. package/dist/ui/toggle-group.js +73 -0
  235. package/dist/ui/toggle-group.js.map +1 -0
  236. package/dist/ui/toggle.d.ts +14 -0
  237. package/dist/ui/toggle.js +41 -0
  238. package/dist/ui/toggle.js.map +1 -0
  239. package/package.json +97 -0
@@ -0,0 +1,18 @@
1
+ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
+ import * as TaroComponents from "@tarojs/components";
3
+ import { createPortal } from "react-dom";
4
+ import { isH5 } from "../lib/platform.js";
5
+ const RootPortal = TaroComponents.RootPortal;
6
+ const Portal = ({ children }) => {
7
+ if (isH5()) {
8
+ if (typeof document === "undefined")
9
+ return _jsx(_Fragment, { children: children });
10
+ return createPortal(children, document.body);
11
+ }
12
+ if (!RootPortal) {
13
+ return _jsx(_Fragment, { children: children });
14
+ }
15
+ return _jsx(RootPortal, { children: children });
16
+ };
17
+ export { Portal };
18
+ //# sourceMappingURL=portal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portal.js","sourceRoot":"","sources":["../../src/ui/portal.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,cAAc,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,MAAM,UAAU,GAAI,cAAsB,CAAC,UAAU,CAAA;AAErD,MAAM,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAiC,EAAE,EAAE;IAC7D,IAAI,IAAI,EAAE,EAAE,CAAC;QACX,IAAI,OAAO,QAAQ,KAAK,WAAW;YAAE,OAAO,4BAAG,QAAQ,GAAI,CAAA;QAC3D,OAAO,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;IACD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,4BAAG,QAAQ,GAAI,CAAA;IACxB,CAAC;IACD,OAAO,KAAC,UAAU,cAAE,QAAQ,GAAc,CAAA;AAC5C,CAAC,CAAA;AAED,OAAO,EAAE,MAAM,EAAE,CAAA"}
@@ -0,0 +1,45 @@
1
+ import * as React from "react";
2
+ import { type ViewProps } from "@tarojs/components";
3
+ type ProgressValueRender = (formattedValue: string | null, value: number | null) => React.ReactNode;
4
+ type ProgressValueProps = Omit<ViewProps, "children"> & {
5
+ children?: React.ReactNode | ProgressValueRender;
6
+ };
7
+ /**
8
+ * Progress — context 提供者 + 布局容器。
9
+ *
10
+ * 不自动渲染 ProgressTrack,避免使用者在 children 中传入 ProgressTrack 时出现双轨道。
11
+ * 无 children 时自动渲染默认 ProgressTrack + ProgressIndicator 作为兜底。
12
+ *
13
+ * 用法示例:
14
+ * // 极简(无 children,自动渲染默认轨道)
15
+ * <Progress value={60} />
16
+ *
17
+ * // 带标签(显式传入 ProgressTrack)
18
+ * <Progress value={60}>
19
+ * <ProgressLabel>加载中</ProgressLabel>
20
+ * <ProgressValue />
21
+ * <ProgressTrack>
22
+ * <ProgressIndicator />
23
+ * </ProgressTrack>
24
+ * </Progress>
25
+ *
26
+ * // 自定义颜色
27
+ * <Progress value={60}>
28
+ * <ProgressTrack className="bg-violet-100">
29
+ * <ProgressIndicator className="bg-violet-500" />
30
+ * </ProgressTrack>
31
+ * </Progress>
32
+ */
33
+ declare function Progress({ className, children, value, max, ...props }: ViewProps & {
34
+ value?: number | null;
35
+ max?: number;
36
+ }): React.JSX.Element;
37
+ declare function ProgressTrack({ className, ...props }: ViewProps): React.JSX.Element;
38
+ /**
39
+ * ProgressIndicator — 自动从 ProgressContext 读取百分比,无需手动传 style={{ width }}。
40
+ * 若外部显式传入 style.width,则以外部值为准。
41
+ */
42
+ declare function ProgressIndicator({ className, style, ...props }: ViewProps): React.JSX.Element;
43
+ declare function ProgressLabel({ className, ...props }: ViewProps): React.JSX.Element;
44
+ declare function ProgressValue({ className, children, ...props }: ProgressValueProps): React.JSX.Element;
45
+ export { Progress, ProgressTrack, ProgressIndicator, ProgressLabel, ProgressValue, };
@@ -0,0 +1,67 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { View } from "@tarojs/components";
4
+ import { cn } from "../lib/utils.js";
5
+ const ProgressContext = React.createContext(null);
6
+ function getProgressPercentage(value = 0, max = 100) {
7
+ const safeMax = max > 0 ? max : 100;
8
+ const percentage = (value / safeMax) * 100;
9
+ return Math.min(100, Math.max(0, percentage));
10
+ }
11
+ /**
12
+ * Progress — context 提供者 + 布局容器。
13
+ *
14
+ * 不自动渲染 ProgressTrack,避免使用者在 children 中传入 ProgressTrack 时出现双轨道。
15
+ * 无 children 时自动渲染默认 ProgressTrack + ProgressIndicator 作为兜底。
16
+ *
17
+ * 用法示例:
18
+ * // 极简(无 children,自动渲染默认轨道)
19
+ * <Progress value={60} />
20
+ *
21
+ * // 带标签(显式传入 ProgressTrack)
22
+ * <Progress value={60}>
23
+ * <ProgressLabel>加载中</ProgressLabel>
24
+ * <ProgressValue />
25
+ * <ProgressTrack>
26
+ * <ProgressIndicator />
27
+ * </ProgressTrack>
28
+ * </Progress>
29
+ *
30
+ * // 自定义颜色
31
+ * <Progress value={60}>
32
+ * <ProgressTrack className="bg-violet-100">
33
+ * <ProgressIndicator className="bg-violet-500" />
34
+ * </ProgressTrack>
35
+ * </Progress>
36
+ */
37
+ function Progress({ className, children, value, max = 100, ...props }) {
38
+ const percentage = getProgressPercentage(value ?? 0, max);
39
+ const formattedValue = value == null ? null : `${Math.round(percentage)}%`;
40
+ return (_jsx(ProgressContext.Provider, { value: { formattedValue, percentage, value: value ?? null }, children: _jsx(View, { "data-slot": "progress", className: cn("flex flex-wrap gap-3", className), ...props, children: children ?? (_jsx(ProgressTrack, { children: _jsx(ProgressIndicator, {}) })) }) }));
41
+ }
42
+ function ProgressTrack({ className, ...props }) {
43
+ return (_jsx(View, { className: cn("relative flex h-1 w-full items-center overflow-x-hidden rounded-full bg-muted", className), "data-slot": "progress-track", ...props }));
44
+ }
45
+ /**
46
+ * ProgressIndicator — 自动从 ProgressContext 读取百分比,无需手动传 style={{ width }}。
47
+ * 若外部显式传入 style.width,则以外部值为准。
48
+ */
49
+ function ProgressIndicator({ className, style, ...props }) {
50
+ const ctx = React.useContext(ProgressContext);
51
+ const width = style?.width ?? (ctx ? `${ctx.percentage}%` : "0%");
52
+ return (_jsx(View, { "data-slot": "progress-indicator", className: cn("h-full bg-primary transition-all", className), style: { ...style, width }, ...props }));
53
+ }
54
+ function ProgressLabel({ className, ...props }) {
55
+ return (_jsx(View, { className: cn("text-sm font-medium", className), "data-slot": "progress-label", ...props }));
56
+ }
57
+ function ProgressValue({ className, children, ...props }) {
58
+ const context = React.useContext(ProgressContext);
59
+ const content = typeof children === "function"
60
+ ? children(context?.formattedValue ?? "indeterminate", context?.value ?? null)
61
+ : React.Children.count(children) > 0
62
+ ? children
63
+ : context?.formattedValue ?? null;
64
+ return (_jsx(View, { className: cn("ml-auto text-sm text-muted-foreground tabular-nums", className), "data-slot": "progress-value", ...props, children: content }));
65
+ }
66
+ export { Progress, ProgressTrack, ProgressIndicator, ProgressLabel, ProgressValue, };
67
+ //# sourceMappingURL=progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/ui/progress.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import * as React from "react";
2
+ import { type ViewProps } from "@tarojs/components";
3
+ declare function RadioGroup({ className, value: valueProp, defaultValue, onValueChange, children, ...props }: ViewProps & {
4
+ value?: string;
5
+ defaultValue?: string;
6
+ onValueChange?: (value: string) => void;
7
+ }): React.JSX.Element;
8
+ declare function RadioGroupItem({ className, value, disabled, ...props }: ViewProps & {
9
+ value: string;
10
+ disabled?: boolean;
11
+ }): React.JSX.Element;
12
+ export { RadioGroup, RadioGroupItem };
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { View } from "@tarojs/components";
4
+ import { cn } from "../lib/utils.js";
5
+ const RadioGroupContext = React.createContext({});
6
+ function RadioGroup({ className, value: valueProp, defaultValue, onValueChange, children, ...props }) {
7
+ const [internal, setInternal] = React.useState(defaultValue ?? "");
8
+ const controlled = valueProp !== undefined;
9
+ const value = controlled ? valueProp : internal;
10
+ return (_jsx(RadioGroupContext.Provider, { value: {
11
+ value,
12
+ onValueChange: (v) => {
13
+ if (!controlled)
14
+ setInternal(v);
15
+ onValueChange?.(v);
16
+ },
17
+ }, children: _jsx(View, { "data-slot": "radio-group", className: cn("grid w-full gap-2", className), ...props, children: children }) }));
18
+ }
19
+ function RadioGroupItem({ className, value, disabled, ...props }) {
20
+ const ctx = React.useContext(RadioGroupContext);
21
+ const checked = ctx.value === value;
22
+ return (_jsx(View, { "data-slot": "radio-group-item", "data-checked": checked || undefined, "aria-checked": checked, "aria-disabled": disabled || undefined, className: cn("group/radio-group-item peer relative flex aspect-square size-4 shrink-0 rounded-full border border-input outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40", checked && "border-primary bg-primary text-primary-foreground dark:bg-primary", className), onClick: () => {
23
+ if (disabled)
24
+ return;
25
+ ctx.onValueChange?.(value);
26
+ }, ...props, children: checked ? _jsx(View, { "data-slot": "radio-group-indicator", className: "flex size-4 items-center justify-center", children: _jsx(View, { className: "absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 rounded-full bg-primary-foreground" }) }) : null }));
27
+ }
28
+ export { RadioGroup, RadioGroupItem };
29
+ //# sourceMappingURL=radio-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-group.js","sourceRoot":"","sources":["../../src/ui/radio-group.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAkB,MAAM,oBAAoB,CAAA;AAEzD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAEjC,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAG1C,EAAE,CAAC,CAAA;AAEN,SAAS,UAAU,CAAC,EAClB,SAAS,EACT,KAAK,EAAE,SAAS,EAChB,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,GAAG,KAAK,EAKT;IACC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,CAAC,CAAA;IAClE,MAAM,UAAU,GAAG,SAAS,KAAK,SAAS,CAAA;IAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAA;IAE/C,OAAO,CACL,KAAC,iBAAiB,CAAC,QAAQ,IACzB,KAAK,EAAE;YACL,KAAK;YACL,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE;gBACnB,IAAI,CAAC,UAAU;oBAAE,WAAW,CAAC,CAAC,CAAC,CAAA;gBAC/B,aAAa,EAAE,CAAC,CAAC,CAAC,CAAA;YACpB,CAAC;SACF,YAED,KAAC,IAAI,iBACO,aAAa,EACvB,SAAS,EAAE,EAAE,CAAC,mBAAmB,EAAE,SAAS,CAAC,KACzC,KAAK,YAER,QAAQ,GACJ,GACoB,CAC9B,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EAC0C;IAClD,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,KAAK,KAAK,CAAA;IAEnC,OAAO,CACL,KAAC,IAAI,iBACO,kBAAkB,kBACd,OAAO,IAAI,SAAS,kBACpB,OAAO,mBACN,QAAQ,IAAI,SAAS,EACpC,SAAS,EAAE,EAAE,CACX,+fAA+f,EAC/f,OAAO,IAAI,mEAAmE,EAC9E,SAAS,CACV,EACD,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,QAAQ;gBAAE,OAAM;YACpB,GAAG,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC,KACG,KAAK,YAER,OAAO,CAAC,CAAC,CAAC,KAAC,IAAI,iBACF,uBAAuB,EACjC,SAAS,EAAC,yCAAyC,YAEnD,KAAC,IAAI,IAAC,SAAS,EAAC,uGAAuG,GAAG,GACrH,CAAC,CAAC,CAAC,IAAI,GACX,CACR,CAAA;AACH,CAAC;AAED,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAA"}
@@ -0,0 +1,20 @@
1
+ import * as React from "react";
2
+ import { type ViewProps } from "@tarojs/components";
3
+ type Direction = "horizontal" | "vertical";
4
+ type ResizablePanelGroupProps = ViewProps & {
5
+ direction?: Direction;
6
+ orientation?: Direction;
7
+ };
8
+ type ResizablePanelProps = ViewProps & {
9
+ defaultSize?: number | string;
10
+ __size?: number;
11
+ __direction?: Direction;
12
+ };
13
+ type ResizableHandleProps = ViewProps & {
14
+ withHandle?: boolean;
15
+ __direction?: Direction;
16
+ };
17
+ declare const ResizablePanelGroup: ({ className, children, orientation, ...props }: ResizablePanelGroupProps) => React.JSX.Element;
18
+ declare const ResizablePanel: ({ className, children, defaultSize, __size, ...props }: ResizablePanelProps) => React.JSX.Element;
19
+ declare const ResizableHandle: ({ withHandle, className, __direction, ...props }: ResizableHandleProps) => React.JSX.Element;
20
+ export { ResizableHandle, ResizablePanel, ResizablePanelGroup };
@@ -0,0 +1,244 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { View } from "@tarojs/components";
4
+ import Taro from "@tarojs/taro";
5
+ import { cn } from "../lib/utils.js";
6
+ import { isH5 } from "../lib/platform.js";
7
+ function getPoint(e) {
8
+ const touch = e?.touches?.[0] || e?.changedTouches?.[0];
9
+ return touch || e;
10
+ }
11
+ function clamp(value, min, max) {
12
+ return Math.min(Math.max(value, min), max);
13
+ }
14
+ function parseDefaultSize(size) {
15
+ if (typeof size === "number" && Number.isFinite(size))
16
+ return size;
17
+ if (typeof size !== "string")
18
+ return null;
19
+ const normalized = size.trim();
20
+ if (!normalized)
21
+ return null;
22
+ const numeric = normalized.endsWith("%")
23
+ ? Number.parseFloat(normalized.slice(0, -1))
24
+ : Number.parseFloat(normalized);
25
+ return Number.isFinite(numeric) ? numeric : null;
26
+ }
27
+ const ResizablePanelGroup = ({ className, children, orientation, ...props }) => {
28
+ const resolvedDirection = orientation ?? "horizontal";
29
+ const idRef = React.useRef(`resizable-${Math.random().toString(36).slice(2, 11)}`);
30
+ const groupRef = React.useRef(null);
31
+ const sizesRef = React.useRef(null);
32
+ const [sizes, setSizes] = React.useState(null);
33
+ const rectSizeRef = React.useRef(null);
34
+ const dragRef = React.useRef(null);
35
+ React.useEffect(() => {
36
+ sizesRef.current = sizes;
37
+ }, [sizes]);
38
+ const isPanelElement = React.useCallback((child) => {
39
+ return child?.type?.displayName === "ResizablePanel";
40
+ }, []);
41
+ const isHandleElement = React.useCallback((child) => {
42
+ return child?.type?.displayName === "ResizableHandle";
43
+ }, []);
44
+ const panels = React.useMemo(() => {
45
+ const nextPanels = [];
46
+ React.Children.forEach(children, (child) => {
47
+ if (!React.isValidElement(child))
48
+ return;
49
+ if (isPanelElement(child))
50
+ nextPanels.push(child);
51
+ });
52
+ return nextPanels;
53
+ }, [children, isPanelElement]);
54
+ const measure = React.useCallback(() => {
55
+ const element = groupRef.current;
56
+ if (isH5() && typeof element?.getBoundingClientRect === "function") {
57
+ const rect = element.getBoundingClientRect();
58
+ if (typeof rect?.width === "number" && typeof rect?.height === "number") {
59
+ rectSizeRef.current = { width: rect.width, height: rect.height };
60
+ return Promise.resolve(rectSizeRef.current);
61
+ }
62
+ }
63
+ return new Promise((resolve) => {
64
+ const query = Taro.createSelectorQuery();
65
+ query
66
+ .select(`#${idRef.current}`)
67
+ .boundingClientRect((res) => {
68
+ const rect = Array.isArray(res) ? res[0] : res;
69
+ if (typeof rect?.width === "number" && typeof rect?.height === "number") {
70
+ rectSizeRef.current = { width: rect.width, height: rect.height };
71
+ resolve(rectSizeRef.current);
72
+ return;
73
+ }
74
+ resolve(null);
75
+ })
76
+ .exec();
77
+ });
78
+ }, []);
79
+ React.useEffect(() => {
80
+ const defaults = panels.map((panel) => {
81
+ const size = panel.props?.defaultSize;
82
+ return parseDefaultSize(size);
83
+ });
84
+ const hasAnyDefault = defaults.some((value) => value != null);
85
+ const nextSizes = hasAnyDefault
86
+ ? defaults.map((value) => (value == null ? 0 : value))
87
+ : panels.map(() => 100 / Math.max(1, panels.length));
88
+ const total = nextSizes.reduce((sum, value) => sum + value, 0) || 1;
89
+ const normalized = nextSizes.map((value) => (value / total) * 100);
90
+ setSizes((prev) => {
91
+ if (prev && prev.length === normalized.length)
92
+ return prev;
93
+ return normalized;
94
+ });
95
+ }, [panels]);
96
+ React.useEffect(() => {
97
+ void measure();
98
+ if (!isH5() || typeof window === "undefined")
99
+ return;
100
+ const onResize = () => void measure();
101
+ window.addEventListener("resize", onResize);
102
+ return () => window.removeEventListener("resize", onResize);
103
+ }, [measure]);
104
+ const applyMove = React.useCallback((e) => {
105
+ const drag = dragRef.current;
106
+ const currentSizes = sizesRef.current;
107
+ if (!drag || !currentSizes)
108
+ return;
109
+ const point = getPoint(e);
110
+ const position = drag.axis === "x" ? point?.pageX : point?.pageY;
111
+ if (typeof position !== "number" || !drag.containerSize)
112
+ return;
113
+ const deltaPercent = ((position - drag.startPos) / drag.containerSize) * 100;
114
+ const left = drag.leftIndex;
115
+ const right = left + 1;
116
+ const total = drag.startSizes[left] + drag.startSizes[right];
117
+ const minSize = 10;
118
+ const nextLeft = clamp(drag.startSizes[left] + deltaPercent, minSize, total - minSize);
119
+ const nextSizes = drag.startSizes.slice();
120
+ nextSizes[left] = nextLeft;
121
+ nextSizes[right] = total - nextLeft;
122
+ setSizes(nextSizes);
123
+ }, []);
124
+ const endDrag = React.useCallback(() => {
125
+ dragRef.current = null;
126
+ if (!isH5() || typeof document === "undefined")
127
+ return;
128
+ document.removeEventListener("mousemove", onDocumentMouseMove);
129
+ document.removeEventListener("mouseup", onDocumentMouseUp);
130
+ document.removeEventListener("touchmove", onDocumentTouchMove);
131
+ document.removeEventListener("touchend", onDocumentTouchEnd);
132
+ document.removeEventListener("touchcancel", onDocumentTouchEnd);
133
+ // eslint-disable-next-line react-hooks/exhaustive-deps
134
+ }, []);
135
+ const onDocumentMouseMove = React.useCallback((e) => applyMove(e), [applyMove]);
136
+ const onDocumentMouseUp = React.useCallback(() => endDrag(), [endDrag]);
137
+ const onDocumentTouchMove = React.useCallback((e) => {
138
+ const drag = dragRef.current;
139
+ if (!drag || drag.input !== "touch")
140
+ return;
141
+ e?.preventDefault?.();
142
+ applyMove(e);
143
+ }, [applyMove]);
144
+ const onDocumentTouchEnd = React.useCallback(() => endDrag(), [endDrag]);
145
+ React.useEffect(() => {
146
+ return () => endDrag();
147
+ }, [endDrag]);
148
+ const startDrag = React.useCallback(async (leftIndex, e) => {
149
+ const currentSizes = sizesRef.current;
150
+ if (!currentSizes || leftIndex < 0 || leftIndex >= currentSizes.length - 1)
151
+ return;
152
+ const axis = resolvedDirection === "horizontal" ? "x" : "y";
153
+ const point = getPoint(e);
154
+ const position = axis === "x" ? point?.pageX : point?.pageY;
155
+ if (typeof position !== "number")
156
+ return;
157
+ const input = e?.touches?.length ? "touch" : "mouse";
158
+ const rect = rectSizeRef.current || (await measure());
159
+ const containerSize = axis === "x" ? rect?.width : rect?.height;
160
+ if (!containerSize)
161
+ return;
162
+ dragRef.current = {
163
+ axis,
164
+ input,
165
+ leftIndex,
166
+ startPos: position,
167
+ startSizes: currentSizes.slice(),
168
+ containerSize,
169
+ };
170
+ e?.preventDefault?.();
171
+ if (isH5() && typeof document !== "undefined") {
172
+ if (input === "mouse") {
173
+ document.addEventListener("mousemove", onDocumentMouseMove);
174
+ document.addEventListener("mouseup", onDocumentMouseUp);
175
+ }
176
+ else {
177
+ document.addEventListener("touchmove", onDocumentTouchMove, { passive: false });
178
+ document.addEventListener("touchend", onDocumentTouchEnd);
179
+ document.addEventListener("touchcancel", onDocumentTouchEnd);
180
+ }
181
+ }
182
+ }, [
183
+ measure,
184
+ onDocumentMouseMove,
185
+ onDocumentMouseUp,
186
+ onDocumentTouchEnd,
187
+ onDocumentTouchMove,
188
+ resolvedDirection,
189
+ ]);
190
+ const onGroupTouchMove = React.useCallback((e) => {
191
+ const drag = dragRef.current;
192
+ if (!drag || drag.input !== "touch")
193
+ return;
194
+ e?.preventDefault?.();
195
+ applyMove(e);
196
+ }, [applyMove]);
197
+ const onGroupTouchEnd = React.useCallback(() => endDrag(), [endDrag]);
198
+ let panelIndex = 0;
199
+ let handleIndex = 0;
200
+ return (_jsx(View, { id: idRef.current, ref: groupRef, "data-slot": "resizable-panel-group", "data-direction": resolvedDirection, className: cn("flex h-full w-full items-stretch overflow-hidden", resolvedDirection === "vertical" ? "flex-col" : "flex-row", className), ...props, onTouchMove: onGroupTouchMove, onTouchEnd: onGroupTouchEnd, onTouchCancel: onGroupTouchEnd, children: React.Children.map(children, (child) => {
201
+ if (!React.isValidElement(child))
202
+ return child;
203
+ if (isPanelElement(child)) {
204
+ const size = sizes?.[panelIndex];
205
+ const cloned = React.cloneElement(child, {
206
+ __size: typeof size === "number" ? size : undefined,
207
+ __direction: resolvedDirection,
208
+ });
209
+ panelIndex += 1;
210
+ return cloned;
211
+ }
212
+ if (isHandleElement(child)) {
213
+ const leftIndex = panelIndex - 1;
214
+ const cloned = React.cloneElement(child, {
215
+ __direction: resolvedDirection,
216
+ className: cn(resolvedDirection === "horizontal" ? "cursor-col-resize" : "cursor-row-resize", child.props?.className),
217
+ onTouchStart: (e) => void startDrag(leftIndex, e),
218
+ onMouseDown: (e) => void startDrag(leftIndex, e),
219
+ "data-handle-index": handleIndex,
220
+ });
221
+ handleIndex += 1;
222
+ return cloned;
223
+ }
224
+ return child;
225
+ }) }));
226
+ };
227
+ const ResizablePanel = ({ className, children, defaultSize, __size, ...props }) => {
228
+ const parsedDefaultSize = parseDefaultSize(defaultSize);
229
+ return (_jsx(View, { "data-slot": "resizable-panel", ...props, className: cn("flex min-h-0 min-w-0 flex-col overflow-hidden", className), style: {
230
+ flexBasis: 0,
231
+ flexGrow: __size ?? parsedDefaultSize ?? 1,
232
+ flexShrink: 1,
233
+ minWidth: 0,
234
+ minHeight: 0,
235
+ ...props.style,
236
+ }, children: children }));
237
+ };
238
+ const ResizableHandle = ({ withHandle, className, __direction, ...props }) => (_jsxs(View, { "data-slot": "resizable-handle", ...props, className: cn("relative flex shrink-0 items-center justify-center bg-transparent", __direction === "vertical" ? "h-3 self-stretch" : "w-3 self-stretch", className), children: [_jsx(View, { className: cn("absolute bg-border", __direction === "vertical"
239
+ ? "inset-x-0 top-1/2 -translate-y-1/2"
240
+ : "inset-y-0 left-1/2 -translate-x-1/2"), style: __direction === "vertical" ? { height: "1PX" } : { width: "1PX" } }), withHandle ? _jsx(View, { className: "z-10 flex h-6 w-3 items-center justify-center rounded-md bg-border", children: _jsx(View, { className: cn("rounded-full bg-background/80", __direction === "vertical" ? "h-1 w-6" : "h-6 w-1") }) }) : null] }));
241
+ ResizablePanel.displayName = "ResizablePanel";
242
+ ResizableHandle.displayName = "ResizableHandle";
243
+ export { ResizableHandle, ResizablePanel, ResizablePanelGroup };
244
+ //# sourceMappingURL=resizable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resizable.js","sourceRoot":"","sources":["../../src/ui/resizable.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import * as React from "react";
2
+ import { ScrollView, type ViewProps } from "@tarojs/components";
3
+ type ScrollAreaProps = Omit<React.ComponentPropsWithoutRef<typeof ScrollView>, "scrollX" | "scrollY">;
4
+ declare function ScrollArea({ className, children, ...props }: ScrollAreaProps): React.JSX.Element;
5
+ declare function ScrollBar({ className, orientation, ...props }: ViewProps & {
6
+ orientation?: "horizontal" | "vertical";
7
+ }): React.JSX.Element;
8
+ export { ScrollArea, ScrollBar };
@@ -0,0 +1,34 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { ScrollView, View } from "@tarojs/components";
4
+ import { cn } from "../lib/utils.js";
5
+ function resolveScrollAxis(children) {
6
+ let hasHorizontalBar = false;
7
+ let hasVerticalBar = false;
8
+ React.Children.forEach(children, (child) => {
9
+ if (!React.isValidElement(child) || child.type !== ScrollBar) {
10
+ return;
11
+ }
12
+ if (child.props.orientation === "horizontal") {
13
+ hasHorizontalBar = true;
14
+ return;
15
+ }
16
+ hasVerticalBar = true;
17
+ });
18
+ if (hasHorizontalBar && hasVerticalBar) {
19
+ return "both";
20
+ }
21
+ if (hasHorizontalBar) {
22
+ return "horizontal";
23
+ }
24
+ return "vertical";
25
+ }
26
+ function ScrollArea({ className, children, ...props }) {
27
+ const resolvedOrientation = resolveScrollAxis(children);
28
+ return (_jsx(ScrollView, { "data-slot": "scroll-area", scrollY: resolvedOrientation === "vertical" || resolvedOrientation === "both", scrollX: resolvedOrientation === "horizontal" || resolvedOrientation === "both", className: cn("relative", className), ...props, children: children }));
29
+ }
30
+ function ScrollBar({ className, orientation = "vertical", ...props }) {
31
+ return (_jsx(View, { "data-slot": "scroll-bar", "data-orientation": orientation, className: cn("flex touch-none select-none p-px transition-colors", orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent", orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent", className), ...props }));
32
+ }
33
+ export { ScrollArea, ScrollBar };
34
+ //# sourceMappingURL=scroll-area.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroll-area.js","sourceRoot":"","sources":["../../src/ui/scroll-area.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAkB,MAAM,oBAAoB,CAAA;AAErE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAOjC,SAAS,iBAAiB,CAAC,QAAyB;IAClD,IAAI,gBAAgB,GAAG,KAAK,CAAA;IAC5B,IAAI,cAAc,GAAG,KAAK,CAAA;IAE1B,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QACzC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7D,OAAM;QACR,CAAC;QAED,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,KAAK,YAAY,EAAE,CAAC;YAC7C,gBAAgB,GAAG,IAAI,CAAA;YACvB,OAAM;QACR,CAAC;QAED,cAAc,GAAG,IAAI,CAAA;IACvB,CAAC,CAAC,CAAA;IAEF,IAAI,gBAAgB,IAAI,cAAc,EAAE,CAAC;QACvC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACQ;IAChB,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAEvD,OAAO,CACL,KAAC,UAAU,iBACC,aAAa,EACvB,OAAO,EAAE,mBAAmB,KAAK,UAAU,IAAI,mBAAmB,KAAK,MAAM,EAC7E,OAAO,EAAE,mBAAmB,KAAK,YAAY,IAAI,mBAAmB,KAAK,MAAM,EAC/E,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,KAChC,KAAK,YAER,QAAQ,GACE,CACd,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,EACjB,SAAS,EACT,WAAW,GAAG,UAAU,EACxB,GAAG,KAAK,EACgD;IACxD,OAAO,CACL,KAAC,IAAI,iBACO,YAAY,sBACJ,WAAW,EAC7B,SAAS,EAAE,EAAE,CACX,oDAAoD,EACpD,WAAW,KAAK,UAAU,IAAI,4CAA4C,EAC1E,WAAW,KAAK,YAAY,IAAI,8CAA8C,EAC9E,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC;AAED,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA"}
@@ -0,0 +1,35 @@
1
+ import * as React from "react";
2
+ import { type ViewProps } from "@tarojs/components";
3
+ type SelectItemValue = string | null;
4
+ type SelectOption = {
5
+ label: React.ReactNode;
6
+ value: SelectItemValue;
7
+ };
8
+ declare function Select({ open: openProp, defaultOpen, onOpenChange, value: valueProp, defaultValue, onValueChange, items, children, }: {
9
+ open?: boolean;
10
+ defaultOpen?: boolean;
11
+ onOpenChange?: (open: boolean) => void;
12
+ value?: SelectItemValue;
13
+ defaultValue?: SelectItemValue;
14
+ onValueChange?: (value: SelectItemValue) => void;
15
+ items?: SelectOption[];
16
+ children?: React.ReactNode;
17
+ }): React.JSX.Element;
18
+ declare function SelectTrigger({ className, size, children, ...props }: ViewProps & {
19
+ size?: "default" | "sm";
20
+ }): React.JSX.Element;
21
+ declare function SelectValue({ placeholder, className, ...props }: ViewProps & {
22
+ placeholder?: string;
23
+ }): React.JSX.Element;
24
+ declare function SelectContent({ className, children, position: _position, ...props }: ViewProps & {
25
+ position?: string;
26
+ }): React.JSX.Element | null;
27
+ declare function SelectItem({ className, children, value, ...props }: ViewProps & {
28
+ value: SelectItemValue;
29
+ }): React.JSX.Element;
30
+ declare function SelectGroup({ ...props }: ViewProps): React.JSX.Element;
31
+ declare function SelectLabel({ className, ...props }: ViewProps): React.JSX.Element;
32
+ declare function SelectSeparator({ className, ...props }: ViewProps): React.JSX.Element;
33
+ declare function SelectScrollUpButton({ className, ...props }: ViewProps): React.JSX.Element;
34
+ declare function SelectScrollDownButton({ className, ...props }: ViewProps): React.JSX.Element;
35
+ export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, };