@h-ai/ui 0.1.0-alpha.67 → 0.1.0-alpha.68

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 (286) hide show
  1. package/README.en.md +31 -5
  2. package/README.ja.md +31 -5
  3. package/README.md +64 -38
  4. package/dist/components/compounds/Accordion.svelte +24 -0
  5. package/dist/components/compounds/Accordion.svelte.d.ts +34 -0
  6. package/dist/components/compounds/ActionSheet.svelte +24 -0
  7. package/dist/components/compounds/ActionSheet.svelte.d.ts +38 -0
  8. package/dist/components/compounds/Alert.svelte +15 -4
  9. package/dist/components/compounds/Alert.svelte.d.ts +10 -0
  10. package/dist/components/compounds/AppBar.svelte +24 -0
  11. package/dist/components/compounds/AppBar.svelte.d.ts +33 -0
  12. package/dist/components/compounds/BottomNav.svelte +37 -0
  13. package/dist/components/compounds/BottomNav.svelte.d.ts +43 -0
  14. package/dist/components/compounds/Breadcrumb.svelte +11 -0
  15. package/dist/components/compounds/Breadcrumb.svelte.d.ts +20 -0
  16. package/dist/components/compounds/Calendar.svelte +20 -6
  17. package/dist/components/compounds/Calendar.svelte.d.ts +20 -6
  18. package/dist/components/compounds/Card.svelte +10 -0
  19. package/dist/components/compounds/Card.svelte.d.ts +10 -0
  20. package/dist/components/compounds/Combobox.svelte +35 -18
  21. package/dist/components/compounds/Combobox.svelte.d.ts +35 -18
  22. package/dist/components/compounds/Confirm.svelte +11 -0
  23. package/dist/components/compounds/Confirm.svelte.d.ts +21 -0
  24. package/dist/components/compounds/DataTable.svelte +40 -17
  25. package/dist/components/compounds/DataTable.svelte.d.ts +9 -13
  26. package/dist/components/compounds/DatePicker.svelte +20 -6
  27. package/dist/components/compounds/DatePicker.svelte.d.ts +20 -6
  28. package/dist/components/compounds/Drawer.svelte +11 -0
  29. package/dist/components/compounds/Drawer.svelte.d.ts +21 -0
  30. package/dist/components/compounds/Dropdown.svelte +10 -0
  31. package/dist/components/compounds/Dropdown.svelte.d.ts +10 -0
  32. package/dist/components/compounds/Empty.svelte +16 -5
  33. package/dist/components/compounds/Empty.svelte.d.ts +20 -0
  34. package/dist/components/compounds/Form.svelte +37 -2
  35. package/dist/components/compounds/Form.svelte.d.ts +20 -0
  36. package/dist/components/compounds/FormField.svelte +11 -0
  37. package/dist/components/compounds/FormField.svelte.d.ts +20 -0
  38. package/dist/components/compounds/FormLayout.svelte +13 -1
  39. package/dist/components/compounds/FormLayout.svelte.d.ts +13 -0
  40. package/dist/components/compounds/InfiniteScroll.svelte +24 -0
  41. package/dist/components/compounds/InfiniteScroll.svelte.d.ts +34 -0
  42. package/dist/components/compounds/MessageBoxContainer.svelte +11 -0
  43. package/dist/components/compounds/MessageBoxContainer.svelte.d.ts +21 -0
  44. package/dist/components/compounds/MessageBoxDialog.svelte +14 -0
  45. package/dist/components/compounds/MessageBoxDialog.svelte.d.ts +21 -0
  46. package/dist/components/compounds/MessageContainer.svelte +11 -0
  47. package/dist/components/compounds/MessageContainer.svelte.d.ts +21 -0
  48. package/dist/components/compounds/Modal.svelte +10 -0
  49. package/dist/components/compounds/Modal.svelte.d.ts +10 -0
  50. package/dist/components/compounds/PageHeader.svelte +21 -8
  51. package/dist/components/compounds/PageHeader.svelte.d.ts +21 -8
  52. package/dist/components/compounds/Pagination.svelte +34 -8
  53. package/dist/components/compounds/Pagination.svelte.d.ts +20 -0
  54. package/dist/components/compounds/Popover.svelte +11 -0
  55. package/dist/components/compounds/Popover.svelte.d.ts +20 -0
  56. package/dist/components/compounds/PullRefresh.svelte +24 -0
  57. package/dist/components/compounds/PullRefresh.svelte.d.ts +32 -0
  58. package/dist/components/compounds/Result.svelte +11 -0
  59. package/dist/components/compounds/Result.svelte.d.ts +20 -0
  60. package/dist/components/compounds/SafeArea.svelte +24 -0
  61. package/dist/components/compounds/SafeArea.svelte.d.ts +32 -0
  62. package/dist/components/compounds/Skeleton.svelte +10 -0
  63. package/dist/components/compounds/Skeleton.svelte.d.ts +10 -0
  64. package/dist/components/compounds/Steps.svelte +11 -0
  65. package/dist/components/compounds/Steps.svelte.d.ts +20 -0
  66. package/dist/components/compounds/SwipeCell.svelte +24 -0
  67. package/dist/components/compounds/SwipeCell.svelte.d.ts +37 -0
  68. package/dist/components/compounds/TableToolbar.svelte +66 -28
  69. package/dist/components/compounds/TableToolbar.svelte.d.ts +29 -19
  70. package/dist/components/compounds/Tabs.svelte +58 -10
  71. package/dist/components/compounds/Tabs.svelte.d.ts +10 -0
  72. package/dist/components/compounds/TagInput.svelte +11 -0
  73. package/dist/components/compounds/TagInput.svelte.d.ts +20 -0
  74. package/dist/components/compounds/Timeline.svelte +24 -0
  75. package/dist/components/compounds/Timeline.svelte.d.ts +34 -0
  76. package/dist/components/compounds/ToastContainer.svelte +11 -0
  77. package/dist/components/compounds/ToastContainer.svelte.d.ts +26 -0
  78. package/dist/components/compounds/Tooltip.svelte +11 -0
  79. package/dist/components/compounds/Tooltip.svelte.d.ts +22 -0
  80. package/dist/components/compounds/accordion-types.d.ts +10 -1
  81. package/dist/components/compounds/action-sheet-types.d.ts +9 -0
  82. package/dist/components/compounds/bottom-nav-types.d.ts +9 -0
  83. package/dist/components/compounds/swipe-cell-types.d.ts +9 -0
  84. package/dist/components/compounds/timeline-types.d.ts +9 -0
  85. package/dist/components/control-size.d.ts +17 -0
  86. package/dist/components/control-size.js +8 -0
  87. package/dist/components/primitives/Avatar.svelte +10 -0
  88. package/dist/components/primitives/Avatar.svelte.d.ts +10 -0
  89. package/dist/components/primitives/Badge.svelte +10 -0
  90. package/dist/components/primitives/Badge.svelte.d.ts +10 -0
  91. package/dist/components/primitives/BareButton.svelte +11 -0
  92. package/dist/components/primitives/BareButton.svelte.d.ts +20 -0
  93. package/dist/components/primitives/BareInput.svelte +11 -0
  94. package/dist/components/primitives/BareInput.svelte.d.ts +20 -0
  95. package/dist/components/primitives/Button.svelte +10 -0
  96. package/dist/components/primitives/Button.svelte.d.ts +10 -0
  97. package/dist/components/primitives/Checkbox.svelte +11 -0
  98. package/dist/components/primitives/Checkbox.svelte.d.ts +20 -0
  99. package/dist/components/primitives/IconButton.svelte +11 -0
  100. package/dist/components/primitives/IconButton.svelte.d.ts +20 -0
  101. package/dist/components/primitives/Input.svelte +10 -0
  102. package/dist/components/primitives/Input.svelte.d.ts +10 -0
  103. package/dist/components/primitives/Progress.svelte +11 -0
  104. package/dist/components/primitives/Progress.svelte.d.ts +20 -0
  105. package/dist/components/primitives/Radio.svelte +11 -0
  106. package/dist/components/primitives/Radio.svelte.d.ts +20 -0
  107. package/dist/components/primitives/Range.svelte +24 -0
  108. package/dist/components/primitives/Range.svelte.d.ts +34 -0
  109. package/dist/components/primitives/Rating.svelte +24 -0
  110. package/dist/components/primitives/Rating.svelte.d.ts +34 -0
  111. package/dist/components/primitives/Select.svelte +11 -0
  112. package/dist/components/primitives/Select.svelte.d.ts +21 -0
  113. package/dist/components/primitives/Spinner.svelte +11 -0
  114. package/dist/components/primitives/Spinner.svelte.d.ts +20 -0
  115. package/dist/components/primitives/Switch.svelte +11 -0
  116. package/dist/components/primitives/Switch.svelte.d.ts +20 -0
  117. package/dist/components/primitives/Tag.svelte +11 -0
  118. package/dist/components/primitives/Tag.svelte.d.ts +20 -0
  119. package/dist/components/primitives/Textarea.svelte +11 -0
  120. package/dist/components/primitives/Textarea.svelte.d.ts +21 -0
  121. package/dist/components/primitives/ToggleCheckbox.svelte +11 -0
  122. package/dist/components/primitives/ToggleCheckbox.svelte.d.ts +20 -0
  123. package/dist/components/primitives/ToggleInput.svelte +11 -0
  124. package/dist/components/primitives/ToggleInput.svelte.d.ts +20 -0
  125. package/dist/components/primitives/ToggleRadio.svelte +11 -0
  126. package/dist/components/primitives/ToggleRadio.svelte.d.ts +20 -0
  127. package/dist/components/scenes/ai/AiDocumentDownloadMenu.svelte +27 -0
  128. package/dist/components/scenes/ai/AiDocumentDownloadMenu.svelte.d.ts +27 -0
  129. package/dist/components/scenes/ai/AiDocumentEditor.svelte +79 -0
  130. package/dist/components/scenes/ai/AiDocumentEditor.svelte.d.ts +23 -0
  131. package/dist/components/scenes/ai/MarkdownRenderer.svelte +11 -0
  132. package/dist/components/scenes/ai/MarkdownRenderer.svelte.d.ts +28 -0
  133. package/dist/components/scenes/ai/code-preview.d.ts +28 -0
  134. package/dist/components/scenes/ai/code-preview.js +20 -0
  135. package/dist/components/scenes/ai/document-download.d.ts +52 -0
  136. package/dist/components/scenes/ai/document-download.js +30 -2
  137. package/dist/components/scenes/ai/document-parse.d.ts +71 -14
  138. package/dist/components/scenes/ai/document-parse.js +19 -9
  139. package/dist/components/scenes/ai/document-types.d.ts +222 -88
  140. package/dist/components/scenes/ai/editor-markdown-extensions.d.ts +16 -0
  141. package/dist/components/scenes/ai/editor-markdown-extensions.js +16 -0
  142. package/dist/components/scenes/ai/highlight.d.ts +11 -0
  143. package/dist/components/scenes/ai/highlight.js +11 -0
  144. package/dist/components/scenes/ai/markdown-parse.d.ts +8 -2
  145. package/dist/components/scenes/ai/markdown-parse.js +2 -2
  146. package/dist/components/scenes/ai/mermaid-host-sync.d.ts +38 -0
  147. package/dist/components/scenes/ai/mermaid-host-sync.js +30 -0
  148. package/dist/components/scenes/ai/mermaid-render.d.ts +23 -0
  149. package/dist/components/scenes/ai/mermaid-render.js +23 -0
  150. package/dist/components/scenes/ai/safe-html.d.ts +54 -6
  151. package/dist/components/scenes/ai/safe-html.js +54 -6
  152. package/dist/components/scenes/ai/table/AiTableEditor.svelte +48 -0
  153. package/dist/components/scenes/ai/table/AiTableEditor.svelte.d.ts +24 -0
  154. package/dist/components/scenes/ai/table/table-types.d.ts +79 -0
  155. package/dist/components/scenes/app/FeedbackModal.svelte +45 -5
  156. package/dist/components/scenes/app/FeedbackModal.svelte.d.ts +45 -5
  157. package/dist/components/scenes/app/LanguageSwitch.svelte +29 -19
  158. package/dist/components/scenes/app/LanguageSwitch.svelte.d.ts +28 -19
  159. package/dist/components/scenes/app/SettingsLayout.svelte +21 -9
  160. package/dist/components/scenes/app/SettingsLayout.svelte.d.ts +21 -9
  161. package/dist/components/scenes/app/SettingsModal.svelte +23 -0
  162. package/dist/components/scenes/app/SettingsModal.svelte.d.ts +23 -0
  163. package/dist/components/scenes/app/ThemeColorPicker.svelte +31 -0
  164. package/dist/components/scenes/app/ThemeColorPicker.svelte.d.ts +31 -0
  165. package/dist/components/scenes/app/ThemeSelector.svelte +21 -6
  166. package/dist/components/scenes/app/ThemeSelector.svelte.d.ts +21 -6
  167. package/dist/components/scenes/app/ThemeToggle.svelte +21 -4
  168. package/dist/components/scenes/app/ThemeToggle.svelte.d.ts +21 -4
  169. package/dist/components/scenes/app/index.d.ts +1 -1
  170. package/dist/components/scenes/app/index.js +1 -1
  171. package/dist/components/scenes/charts/Chart.svelte +11 -0
  172. package/dist/components/scenes/charts/Chart.svelte.d.ts +20 -0
  173. package/dist/components/scenes/charts/chart-theme.d.ts +25 -1
  174. package/dist/components/scenes/charts/chart-theme.js +25 -1
  175. package/dist/components/scenes/charts/chart-types.d.ts +83 -7
  176. package/dist/components/scenes/charts/renderers/LineChart.svelte +53 -0
  177. package/dist/components/scenes/charts/renderers/LineChart.svelte.d.ts +13 -0
  178. package/dist/components/scenes/crud/CrudDeleteConfirm.svelte +10 -0
  179. package/dist/components/scenes/crud/CrudDeleteConfirm.svelte.d.ts +10 -0
  180. package/dist/components/scenes/crud/CrudDetailDrawer.svelte +8 -0
  181. package/dist/components/scenes/crud/CrudDetailDrawer.svelte.d.ts +8 -0
  182. package/dist/components/scenes/crud/CrudDetailPanel.svelte +18 -0
  183. package/dist/components/scenes/crud/CrudDetailPanel.svelte.d.ts +18 -0
  184. package/dist/components/scenes/crud/CrudEditPanel.svelte +10 -0
  185. package/dist/components/scenes/crud/CrudEditPanel.svelte.d.ts +10 -0
  186. package/dist/components/scenes/crud/CrudFilterBar.svelte +18 -0
  187. package/dist/components/scenes/crud/CrudFilterBar.svelte.d.ts +18 -0
  188. package/dist/components/scenes/crud/CrudPage.svelte +37 -5
  189. package/dist/components/scenes/crud/CrudPage.svelte.d.ts +35 -3
  190. package/dist/components/scenes/crud/crud-controller.svelte.d.ts +142 -23
  191. package/dist/components/scenes/crud/crud-controller.svelte.js +22 -11
  192. package/dist/components/scenes/crud/crud-form-validation.d.ts +12 -0
  193. package/dist/components/scenes/crud/crud-form-validation.js +12 -0
  194. package/dist/components/scenes/crud/crud-types.d.ts +79 -8
  195. package/dist/components/scenes/crud/nav-adapter.d.ts +14 -0
  196. package/dist/components/scenes/crud/nav-adapter.js +8 -0
  197. package/dist/components/scenes/crypto/EncryptedInput.svelte +24 -0
  198. package/dist/components/scenes/crypto/EncryptedInput.svelte.d.ts +34 -0
  199. package/dist/components/scenes/crypto/HashDisplay.svelte +11 -0
  200. package/dist/components/scenes/crypto/HashDisplay.svelte.d.ts +21 -0
  201. package/dist/components/scenes/crypto/SignatureDisplay.svelte +11 -0
  202. package/dist/components/scenes/crypto/SignatureDisplay.svelte.d.ts +21 -0
  203. package/dist/components/scenes/error/ErrorPage.svelte +8 -1
  204. package/dist/components/scenes/error/ErrorPage.svelte.d.ts +8 -1
  205. package/dist/components/scenes/error/error-presets.d.ts +40 -4
  206. package/dist/components/scenes/error/error-presets.js +22 -2
  207. package/dist/components/scenes/guide/GuideHost.svelte +27 -0
  208. package/dist/components/scenes/guide/GuideHost.svelte.d.ts +27 -0
  209. package/dist/components/scenes/guide/HelpCenter.svelte +27 -0
  210. package/dist/components/scenes/guide/HelpCenter.svelte.d.ts +27 -0
  211. package/dist/components/scenes/iam/AuthPanel.svelte +26 -2
  212. package/dist/components/scenes/iam/AuthPanel.svelte.d.ts +25 -0
  213. package/dist/components/scenes/iam/AuthShell.svelte +8 -3
  214. package/dist/components/scenes/iam/AuthShell.svelte.d.ts +8 -3
  215. package/dist/components/scenes/iam/ChangePasswordForm.svelte +10 -0
  216. package/dist/components/scenes/iam/ChangePasswordForm.svelte.d.ts +10 -0
  217. package/dist/components/scenes/iam/ForgotPasswordForm.svelte +11 -0
  218. package/dist/components/scenes/iam/ForgotPasswordForm.svelte.d.ts +21 -0
  219. package/dist/components/scenes/iam/LoginForm.svelte +24 -31
  220. package/dist/components/scenes/iam/LoginForm.svelte.d.ts +10 -0
  221. package/dist/components/scenes/iam/PasswordInput.svelte +23 -0
  222. package/dist/components/scenes/iam/PasswordInput.svelte.d.ts +23 -0
  223. package/dist/components/scenes/iam/PermGuard.svelte +21 -11
  224. package/dist/components/scenes/iam/PermGuard.svelte.d.ts +30 -0
  225. package/dist/components/scenes/iam/RegisterForm.svelte +10 -0
  226. package/dist/components/scenes/iam/RegisterForm.svelte.d.ts +10 -0
  227. package/dist/components/scenes/iam/ResetPasswordForm.svelte +10 -0
  228. package/dist/components/scenes/iam/ResetPasswordForm.svelte.d.ts +10 -0
  229. package/dist/components/scenes/iam/UserProfile.svelte +11 -0
  230. package/dist/components/scenes/iam/UserProfile.svelte.d.ts +21 -0
  231. package/dist/components/scenes/iam/auth-error-message.d.ts +10 -0
  232. package/dist/components/scenes/iam/auth-error-message.js +10 -0
  233. package/dist/components/scenes/iam/password-utils.d.ts +39 -1
  234. package/dist/components/scenes/iam/password-utils.js +39 -1
  235. package/dist/components/scenes/iam/permission-context.svelte.d.ts +33 -23
  236. package/dist/components/scenes/iam/permission-context.svelte.js +20 -22
  237. package/dist/components/scenes/storage/AvatarUpload.svelte +11 -0
  238. package/dist/components/scenes/storage/AvatarUpload.svelte.d.ts +20 -0
  239. package/dist/components/scenes/storage/FileList.svelte +13 -2
  240. package/dist/components/scenes/storage/FileList.svelte.d.ts +20 -0
  241. package/dist/components/scenes/storage/FileUpload.svelte +37 -2
  242. package/dist/components/scenes/storage/FileUpload.svelte.d.ts +21 -0
  243. package/dist/components/scenes/storage/ImageUpload.svelte +11 -0
  244. package/dist/components/scenes/storage/ImageUpload.svelte.d.ts +21 -0
  245. package/dist/components/scenes/types.d.ts +352 -11
  246. package/dist/guide-storage.d.ts +13 -1
  247. package/dist/guide-storage.js +13 -1
  248. package/dist/guide-types.d.ts +67 -2
  249. package/dist/guide.svelte.d.ts +22 -1
  250. package/dist/guide.svelte.js +22 -1
  251. package/dist/i18n.svelte.d.ts +64 -3
  252. package/dist/i18n.svelte.js +99 -18
  253. package/dist/index.d.ts +2 -1
  254. package/dist/index.js +1 -2
  255. package/dist/internal/browser-safety.d.ts +51 -2
  256. package/dist/internal/browser-safety.js +45 -7
  257. package/dist/internal/form-context.d.ts +73 -0
  258. package/dist/internal/form-context.js +57 -0
  259. package/dist/internal/form-validation.svelte.d.ts +42 -0
  260. package/dist/internal/form-validation.svelte.js +26 -0
  261. package/dist/internal/icon-safety.d.ts +7 -0
  262. package/dist/internal/icon-safety.js +7 -0
  263. package/dist/internal/locale.d.ts +19 -0
  264. package/dist/internal/locale.js +21 -0
  265. package/dist/message.svelte.d.ts +90 -0
  266. package/dist/message.svelte.js +84 -0
  267. package/dist/messagebox.svelte.d.ts +61 -13
  268. package/dist/messagebox.svelte.js +55 -13
  269. package/dist/messages/en-US.json +6 -1
  270. package/dist/messages/ja-JP.json +389 -0
  271. package/dist/messages/zh-CN.json +6 -1
  272. package/dist/messages.d.ts +24 -3
  273. package/dist/messages.js +18 -3
  274. package/dist/styles/design-tokens.css +4 -2
  275. package/dist/styles/global.css +28 -8
  276. package/dist/styles/theme.css +2 -0
  277. package/dist/theme-config.d.ts +173 -0
  278. package/dist/theme-config.js +143 -0
  279. package/dist/toast.svelte.d.ts +114 -4
  280. package/dist/toast.svelte.js +108 -4
  281. package/dist/types.d.ts +526 -9
  282. package/dist/utils/platform.svelte.d.ts +28 -15
  283. package/dist/utils/platform.svelte.js +19 -14
  284. package/dist/utils.d.ts +102 -0
  285. package/dist/utils.js +93 -0
  286. package/package.json +66 -6
@@ -3,6 +3,16 @@ type $$ComponentProps = InputProps & DataAttributes;
3
3
  /**
4
4
  * Input
5
5
  * 文本输入框组件,支持自定义验证消息
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * import { mount, unmount } from 'svelte'
10
+ * import type { ComponentProps } from 'svelte'
11
+ * import { Input } from '@h-ai/ui'
12
+ * const props: ComponentProps<typeof Input> = { name: 'email', type: 'email', required: true }
13
+ * const component = mount(Input, { target: document.body, props })
14
+ * await unmount(component)
15
+ * ```
6
16
  */
7
17
  declare const Input: import("svelte").Component<$$ComponentProps, {}, "value" | "inputRef">;
8
18
  type Input = ReturnType<typeof Input>;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Progress
2
3
  =============================================================================
3
4
  @h-ai/ui - Progress 组件
4
5
  =============================================================================
@@ -6,6 +7,16 @@
6
7
 
7
8
  使用 Svelte 5 Runes ($props, $derived)
8
9
  =============================================================================
10
+
11
+ @example
12
+ ```ts
13
+ import { mount, unmount } from 'svelte'
14
+ import type { ComponentProps } from 'svelte'
15
+ import { Progress } from '@h-ai/ui'
16
+ const props: ComponentProps<typeof Progress> = { value: 65, max: 100, showLabel: true }
17
+ const component = mount(Progress, { target: document.body, props })
18
+ await unmount(component)
19
+ ```
9
20
  -->
10
21
  <script lang='ts'>
11
22
  import type { DataAttributes, ProgressProps } from '../../types.js'
@@ -1,5 +1,25 @@
1
1
  import type { DataAttributes, ProgressProps } from '../../types.js';
2
2
  type $$ComponentProps = ProgressProps & DataAttributes;
3
+ /**
4
+ * Progress
5
+ * =============================================================================
6
+ * @h-ai/ui - Progress 组件
7
+ * =============================================================================
8
+ * 进度条组件
9
+ *
10
+ * 使用 Svelte 5 Runes ($props, $derived)
11
+ * =============================================================================
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { mount, unmount } from 'svelte'
16
+ * import type { ComponentProps } from 'svelte'
17
+ * import { Progress } from '@h-ai/ui'
18
+ * const props: ComponentProps<typeof Progress> = { value: 65, max: 100, showLabel: true }
19
+ * const component = mount(Progress, { target: document.body, props })
20
+ * await unmount(component)
21
+ * ```
22
+ */
3
23
  declare const Progress: import("svelte").Component<$$ComponentProps, {}, "">;
4
24
  type Progress = ReturnType<typeof Progress>;
5
25
  export default Progress;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Radio
2
3
  =============================================================================
3
4
  @h-ai/ui - Radio 组件
4
5
  =============================================================================
@@ -6,6 +7,16 @@
6
7
 
7
8
  使用 Svelte 5 Runes ($props, $derived, $bindable)
8
9
  =============================================================================
10
+
11
+ @example
12
+ ```ts
13
+ import { mount, unmount } from 'svelte'
14
+ import type { ComponentProps } from 'svelte'
15
+ import { Radio } from '@h-ai/ui'
16
+ const props: ComponentProps<typeof Radio> = { options: [{ value: 'email', label: '邮件' }], value: 'email' }
17
+ const component = mount(Radio, { target: document.body, props })
18
+ await unmount(component)
19
+ ```
9
20
  -->
10
21
  <script lang='ts' generics="T = string">
11
22
  import type { DataAttributes, RadioProps, SelectOption } from '../../types.js'
@@ -20,6 +20,26 @@ interface $$IsomorphicComponent {
20
20
  <T = string>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
21
21
  z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
22
22
  }
23
+ /**
24
+ * Radio
25
+ * =============================================================================
26
+ * @h-ai/ui - Radio 组件
27
+ * =============================================================================
28
+ * 单选框组件,支持组模式
29
+ *
30
+ * 使用 Svelte 5 Runes ($props, $derived, $bindable)
31
+ * =============================================================================
32
+ *
33
+ * @example
34
+ * ```ts
35
+ * import { mount, unmount } from 'svelte'
36
+ * import type { ComponentProps } from 'svelte'
37
+ * import { Radio } from '@h-ai/ui'
38
+ * const props: ComponentProps<typeof Radio> = { options: [{ value: 'email', label: '邮件' }], value: 'email' }
39
+ * const component = mount(Radio, { target: document.body, props })
40
+ * await unmount(component)
41
+ * ```
42
+ */
23
43
  declare const Radio: $$IsomorphicComponent;
24
44
  type Radio<T = string> = InstanceType<typeof Radio<T>>;
25
45
  export default Radio;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Range
2
3
  =============================================================================
3
4
  @h-ai/ui - Range 组件
4
5
  =============================================================================
@@ -7,12 +8,35 @@
7
8
  使用 Svelte 5 Runes ($props, $derived)
8
9
  使用 DaisyUI range 类
9
10
  =============================================================================
11
+
12
+ @example
13
+ ```ts
14
+ import { mount, unmount } from 'svelte'
15
+ import type { ComponentProps } from 'svelte'
16
+ import { Range } from '@h-ai/ui'
17
+ const props: ComponentProps<typeof Range> = { value: 50, min: 0, max: 100, step: 5 }
18
+ const component = mount(Range, { target: document.body, props })
19
+ await unmount(component)
20
+ ```
10
21
  -->
11
22
  <script lang='ts'>
12
23
  import type { DataAttributes } from '../../types.js'
13
24
  import { cn, getDataAttributes } from '../../utils.js'
14
25
  import BareInput from './BareInput.svelte'
15
26
 
27
+ /**
28
+ * Range 组件的属性契约;通过公开组件配置使用。
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * import { mount, unmount } from 'svelte'
33
+ * import type { ComponentProps } from 'svelte'
34
+ * import { Range } from '@h-ai/ui'
35
+ * const props: ComponentProps<typeof Range> = { value: 50, min: 0, max: 100, step: 5 }
36
+ * const component = mount(Range, { target: document.body, props })
37
+ * await unmount(component)
38
+ * ```
39
+ */
16
40
  interface Props {
17
41
  /** 当前值 */
18
42
  value?: number
@@ -1,4 +1,17 @@
1
1
  import type { DataAttributes } from '../../types.js';
2
+ /**
3
+ * Range 组件的属性契约;通过公开组件配置使用。
4
+ *
5
+ * @example
6
+ * ```ts
7
+ * import { mount, unmount } from 'svelte'
8
+ * import type { ComponentProps } from 'svelte'
9
+ * import { Range } from '@h-ai/ui'
10
+ * const props: ComponentProps<typeof Range> = { value: 50, min: 0, max: 100, step: 5 }
11
+ * const component = mount(Range, { target: document.body, props })
12
+ * await unmount(component)
13
+ * ```
14
+ */
2
15
  interface Props {
3
16
  /** 当前值 */
4
17
  value?: number;
@@ -24,6 +37,27 @@ interface Props {
24
37
  class?: string;
25
38
  }
26
39
  type $$ComponentProps = Props & DataAttributes;
40
+ /**
41
+ * Range
42
+ * =============================================================================
43
+ * @h-ai/ui - Range 组件
44
+ * =============================================================================
45
+ * 范围滑块组件,支持不同尺寸和颜色变体
46
+ *
47
+ * 使用 Svelte 5 Runes ($props, $derived)
48
+ * 使用 DaisyUI range 类
49
+ * =============================================================================
50
+ *
51
+ * @example
52
+ * ```ts
53
+ * import { mount, unmount } from 'svelte'
54
+ * import type { ComponentProps } from 'svelte'
55
+ * import { Range } from '@h-ai/ui'
56
+ * const props: ComponentProps<typeof Range> = { value: 50, min: 0, max: 100, step: 5 }
57
+ * const component = mount(Range, { target: document.body, props })
58
+ * await unmount(component)
59
+ * ```
60
+ */
27
61
  declare const Range: import("svelte").Component<$$ComponentProps, {}, "value">;
28
62
  type Range = ReturnType<typeof Range>;
29
63
  export default Range;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Rating
2
3
  =============================================================================
3
4
  @h-ai/ui - Rating 组件
4
5
  =============================================================================
@@ -7,12 +8,35 @@
7
8
  使用 Svelte 5 Runes ($props, $state, $derived)
8
9
  使用 DaisyUI rating 类
9
10
  =============================================================================
11
+
12
+ @example
13
+ ```ts
14
+ import { mount, unmount } from 'svelte'
15
+ import type { ComponentProps } from 'svelte'
16
+ import { Rating } from '@h-ai/ui'
17
+ const props: ComponentProps<typeof Rating> = { value: 4, max: 5, readonly: true }
18
+ const component = mount(Rating, { target: document.body, props })
19
+ await unmount(component)
20
+ ```
10
21
  -->
11
22
  <script lang='ts'>
12
23
  import type { DataAttributes } from '../../types.js'
13
24
  import { uiM } from '../../messages.js'
14
25
  import { cn, getDataAttributes } from '../../utils.js'
15
26
 
27
+ /**
28
+ * Rating 组件的属性契约;通过公开组件配置使用。
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * import { mount, unmount } from 'svelte'
33
+ * import type { ComponentProps } from 'svelte'
34
+ * import { Rating } from '@h-ai/ui'
35
+ * const props: ComponentProps<typeof Rating> = { value: 4, max: 5, readonly: true }
36
+ * const component = mount(Rating, { target: document.body, props })
37
+ * await unmount(component)
38
+ * ```
39
+ */
16
40
  interface Props {
17
41
  /** 当前评分值 (0 - max) */
18
42
  value?: number
@@ -1,4 +1,17 @@
1
1
  import type { DataAttributes } from '../../types.js';
2
+ /**
3
+ * Rating 组件的属性契约;通过公开组件配置使用。
4
+ *
5
+ * @example
6
+ * ```ts
7
+ * import { mount, unmount } from 'svelte'
8
+ * import type { ComponentProps } from 'svelte'
9
+ * import { Rating } from '@h-ai/ui'
10
+ * const props: ComponentProps<typeof Rating> = { value: 4, max: 5, readonly: true }
11
+ * const component = mount(Rating, { target: document.body, props })
12
+ * await unmount(component)
13
+ * ```
14
+ */
2
15
  interface Props {
3
16
  /** 当前评分值 (0 - max) */
4
17
  value?: number;
@@ -24,6 +37,27 @@ interface Props {
24
37
  class?: string;
25
38
  }
26
39
  type $$ComponentProps = Props & DataAttributes;
40
+ /**
41
+ * Rating
42
+ * =============================================================================
43
+ * @h-ai/ui - Rating 组件
44
+ * =============================================================================
45
+ * 星级评分组件,支持全星/半星、只读模式、不同尺寸和颜色
46
+ *
47
+ * 使用 Svelte 5 Runes ($props, $state, $derived)
48
+ * 使用 DaisyUI rating 类
49
+ * =============================================================================
50
+ *
51
+ * @example
52
+ * ```ts
53
+ * import { mount, unmount } from 'svelte'
54
+ * import type { ComponentProps } from 'svelte'
55
+ * import { Rating } from '@h-ai/ui'
56
+ * const props: ComponentProps<typeof Rating> = { value: 4, max: 5, readonly: true }
57
+ * const component = mount(Rating, { target: document.body, props })
58
+ * await unmount(component)
59
+ * ```
60
+ */
27
61
  declare const Rating: import("svelte").Component<$$ComponentProps, {}, "value">;
28
62
  type Rating = ReturnType<typeof Rating>;
29
63
  export default Rating;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Select
2
3
  =============================================================================
3
4
  @h-ai/ui - Select 组件
4
5
  =============================================================================
@@ -7,6 +8,16 @@
7
8
  使用 Svelte 5 Runes ($props, $derived, $bindable)
8
9
  支持 clearable(可清空)和 filterable(可筛选)属性
9
10
  =============================================================================
11
+
12
+ @example
13
+ ```ts
14
+ import { mount, unmount } from 'svelte'
15
+ import type { ComponentProps } from 'svelte'
16
+ import { Select } from '@h-ai/ui'
17
+ const props: ComponentProps<typeof Select> = { options: [{ value: 'active', label: '启用' }], value: 'active' }
18
+ const component = mount(Select, { target: document.body, props })
19
+ await unmount(component)
20
+ ```
10
21
  -->
11
22
  <script lang='ts' generics="T = string">
12
23
  import type { DataAttributes, SelectProps } from '../../types.js'
@@ -20,6 +20,27 @@ interface $$IsomorphicComponent {
20
20
  <T = string>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
21
21
  z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
22
22
  }
23
+ /**
24
+ * Select
25
+ * =============================================================================
26
+ * @h-ai/ui - Select 组件
27
+ * =============================================================================
28
+ * 下拉选择框组件(全自定义实现,统一弹出层样式)
29
+ *
30
+ * 使用 Svelte 5 Runes ($props, $derived, $bindable)
31
+ * 支持 clearable(可清空)和 filterable(可筛选)属性
32
+ * =============================================================================
33
+ *
34
+ * @example
35
+ * ```ts
36
+ * import { mount, unmount } from 'svelte'
37
+ * import type { ComponentProps } from 'svelte'
38
+ * import { Select } from '@h-ai/ui'
39
+ * const props: ComponentProps<typeof Select> = { options: [{ value: 'active', label: '启用' }], value: 'active' }
40
+ * const component = mount(Select, { target: document.body, props })
41
+ * await unmount(component)
42
+ * ```
43
+ */
23
44
  declare const Select: $$IsomorphicComponent;
24
45
  type Select<T = string> = InstanceType<typeof Select<T>>;
25
46
  export default Select;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Spinner
2
3
  =============================================================================
3
4
  @h-ai/ui - Spinner 组件
4
5
  =============================================================================
@@ -6,6 +7,16 @@
6
7
 
7
8
  使用 Svelte 5 Runes ($props, $derived)
8
9
  =============================================================================
10
+
11
+ @example
12
+ ```ts
13
+ import { mount, unmount } from 'svelte'
14
+ import type { ComponentProps } from 'svelte'
15
+ import { Spinner } from '@h-ai/ui'
16
+ const props: ComponentProps<typeof Spinner> = { size: 'sm', variant: 'primary' }
17
+ const component = mount(Spinner, { target: document.body, props })
18
+ await unmount(component)
19
+ ```
9
20
  -->
10
21
  <script lang='ts'>
11
22
  import type { DataAttributes, SpinnerProps } from '../../types.js'
@@ -1,5 +1,25 @@
1
1
  import type { DataAttributes, SpinnerProps } from '../../types.js';
2
2
  type $$ComponentProps = SpinnerProps & DataAttributes;
3
+ /**
4
+ * Spinner
5
+ * =============================================================================
6
+ * @h-ai/ui - Spinner 组件
7
+ * =============================================================================
8
+ * 加载指示器组件
9
+ *
10
+ * 使用 Svelte 5 Runes ($props, $derived)
11
+ * =============================================================================
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { mount, unmount } from 'svelte'
16
+ * import type { ComponentProps } from 'svelte'
17
+ * import { Spinner } from '@h-ai/ui'
18
+ * const props: ComponentProps<typeof Spinner> = { size: 'sm', variant: 'primary' }
19
+ * const component = mount(Spinner, { target: document.body, props })
20
+ * await unmount(component)
21
+ * ```
22
+ */
3
23
  declare const Spinner: import("svelte").Component<$$ComponentProps, {}, "">;
4
24
  type Spinner = ReturnType<typeof Spinner>;
5
25
  export default Spinner;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Switch
2
3
  =============================================================================
3
4
  @h-ai/ui - Switch 组件
4
5
  =============================================================================
@@ -6,6 +7,16 @@
6
7
 
7
8
  使用 Svelte 5 Runes ($props, $derived, $bindable)
8
9
  =============================================================================
10
+
11
+ @example
12
+ ```ts
13
+ import { mount, unmount } from 'svelte'
14
+ import type { ComponentProps } from 'svelte'
15
+ import { Switch } from '@h-ai/ui'
16
+ const props: ComponentProps<typeof Switch> = { label: '开启通知', checked: true }
17
+ const component = mount(Switch, { target: document.body, props })
18
+ await unmount(component)
19
+ ```
9
20
  -->
10
21
  <script lang='ts'>
11
22
  import type { DataAttributes, SwitchProps } from '../../types.js'
@@ -1,5 +1,25 @@
1
1
  import type { DataAttributes, SwitchProps } from '../../types.js';
2
2
  type $$ComponentProps = SwitchProps & DataAttributes;
3
+ /**
4
+ * Switch
5
+ * =============================================================================
6
+ * @h-ai/ui - Switch 组件
7
+ * =============================================================================
8
+ * 开关组件
9
+ *
10
+ * 使用 Svelte 5 Runes ($props, $derived, $bindable)
11
+ * =============================================================================
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { mount, unmount } from 'svelte'
16
+ * import type { ComponentProps } from 'svelte'
17
+ * import { Switch } from '@h-ai/ui'
18
+ * const props: ComponentProps<typeof Switch> = { label: '开启通知', checked: true }
19
+ * const component = mount(Switch, { target: document.body, props })
20
+ * await unmount(component)
21
+ * ```
22
+ */
3
23
  declare const Switch: import("svelte").Component<$$ComponentProps, {}, "checked">;
4
24
  type Switch = ReturnType<typeof Switch>;
5
25
  export default Switch;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Tag
2
3
  =============================================================================
3
4
  @h-ai/ui - Tag 组件
4
5
  =============================================================================
@@ -6,6 +7,16 @@
6
7
 
7
8
  使用 Svelte 5 Runes ($props, $derived)
8
9
  =============================================================================
10
+
11
+ @example
12
+ ```ts
13
+ import { mount, unmount } from 'svelte'
14
+ import type { ComponentProps } from 'svelte'
15
+ import { Tag } from '@h-ai/ui'
16
+ const props: ComponentProps<typeof Tag> = { text: '已启用', variant: 'success', closable: true }
17
+ const component = mount(Tag, { target: document.body, props })
18
+ await unmount(component)
19
+ ```
9
20
  -->
10
21
  <script lang='ts'>
11
22
  import type { DataAttributes, TagProps } from '../../types.js'
@@ -1,5 +1,25 @@
1
1
  import type { DataAttributes, TagProps } from '../../types.js';
2
2
  type $$ComponentProps = TagProps & DataAttributes;
3
+ /**
4
+ * Tag
5
+ * =============================================================================
6
+ * @h-ai/ui - Tag 组件
7
+ * =============================================================================
8
+ * 标签组件
9
+ *
10
+ * 使用 Svelte 5 Runes ($props, $derived)
11
+ * =============================================================================
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { mount, unmount } from 'svelte'
16
+ * import type { ComponentProps } from 'svelte'
17
+ * import { Tag } from '@h-ai/ui'
18
+ * const props: ComponentProps<typeof Tag> = { text: '已启用', variant: 'success', closable: true }
19
+ * const component = mount(Tag, { target: document.body, props })
20
+ * await unmount(component)
21
+ * ```
22
+ */
3
23
  declare const Tag: import("svelte").Component<$$ComponentProps, {}, "">;
4
24
  type Tag = ReturnType<typeof Tag>;
5
25
  export default Tag;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component Textarea
2
3
  =============================================================================
3
4
  @h-ai/ui - Textarea 组件
4
5
  =============================================================================
@@ -7,6 +8,16 @@
7
8
  使用 Svelte 5 Runes ($props, $derived, $bindable)
8
9
  支持自定义验证消息(validationMessage)覆盖浏览器原生提示
9
10
  =============================================================================
11
+
12
+ @example
13
+ ```ts
14
+ import { mount, unmount } from 'svelte'
15
+ import type { ComponentProps } from 'svelte'
16
+ import { Textarea } from '@h-ai/ui'
17
+ const props: ComponentProps<typeof Textarea> = { name: 'description', rows: 4, maxlength: 500 }
18
+ const component = mount(Textarea, { target: document.body, props })
19
+ await unmount(component)
20
+ ```
10
21
  -->
11
22
  <script lang='ts'>
12
23
  import type { DataAttributes, TextareaProps } from '../../types.js'
@@ -1,5 +1,26 @@
1
1
  import type { DataAttributes, TextareaProps } from '../../types.js';
2
2
  type $$ComponentProps = TextareaProps & DataAttributes;
3
+ /**
4
+ * Textarea
5
+ * =============================================================================
6
+ * @h-ai/ui - Textarea 组件
7
+ * =============================================================================
8
+ * 多行文本输入框组件
9
+ *
10
+ * 使用 Svelte 5 Runes ($props, $derived, $bindable)
11
+ * 支持自定义验证消息(validationMessage)覆盖浏览器原生提示
12
+ * =============================================================================
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * import { mount, unmount } from 'svelte'
17
+ * import type { ComponentProps } from 'svelte'
18
+ * import { Textarea } from '@h-ai/ui'
19
+ * const props: ComponentProps<typeof Textarea> = { name: 'description', rows: 4, maxlength: 500 }
20
+ * const component = mount(Textarea, { target: document.body, props })
21
+ * await unmount(component)
22
+ * ```
23
+ */
3
24
  declare const Textarea: import("svelte").Component<$$ComponentProps, {}, "value" | "textareaRef">;
4
25
  type Textarea = ReturnType<typeof Textarea>;
5
26
  export default Textarea;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component ToggleCheckbox
2
3
  =============================================================================
3
4
  @h-ai/ui - ToggleCheckbox 组件
4
5
  =============================================================================
@@ -6,6 +7,16 @@
6
7
 
7
8
  使用 Svelte 5 Runes ($props, $bindable)
8
9
  =============================================================================
10
+
11
+ @example
12
+ ```ts
13
+ import { mount, unmount } from 'svelte'
14
+ import type { ComponentProps } from 'svelte'
15
+ import { ToggleCheckbox } from '@h-ai/ui'
16
+ const props: ComponentProps<typeof ToggleCheckbox> = { name: 'expanded', checked: true }
17
+ const component = mount(ToggleCheckbox, { target: document.body, props })
18
+ await unmount(component)
19
+ ```
9
20
  -->
10
21
  <script lang='ts'>
11
22
  import type { DataAttributes, ToggleCheckboxProps } from '../../types.js'
@@ -1,5 +1,25 @@
1
1
  import type { DataAttributes, ToggleCheckboxProps } from '../../types.js';
2
2
  type $$ComponentProps = ToggleCheckboxProps & DataAttributes;
3
+ /**
4
+ * ToggleCheckbox
5
+ * =============================================================================
6
+ * @h-ai/ui - ToggleCheckbox 组件
7
+ * =============================================================================
8
+ * 仅渲染 checkbox input(用于 collapse/drawer 等结构要求)
9
+ *
10
+ * 使用 Svelte 5 Runes ($props, $bindable)
11
+ * =============================================================================
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { mount, unmount } from 'svelte'
16
+ * import type { ComponentProps } from 'svelte'
17
+ * import { ToggleCheckbox } from '@h-ai/ui'
18
+ * const props: ComponentProps<typeof ToggleCheckbox> = { name: 'expanded', checked: true }
19
+ * const component = mount(ToggleCheckbox, { target: document.body, props })
20
+ * await unmount(component)
21
+ * ```
22
+ */
3
23
  declare const ToggleCheckbox: import("svelte").Component<$$ComponentProps, {}, "checked">;
4
24
  type ToggleCheckbox = ReturnType<typeof ToggleCheckbox>;
5
25
  export default ToggleCheckbox;
@@ -1,4 +1,5 @@
1
1
  <!--
2
+ @component ToggleInput
2
3
  =============================================================================
3
4
  @h-ai/ui - ToggleInput 组件
4
5
  =============================================================================
@@ -6,6 +7,16 @@
6
7
 
7
8
  使用 Svelte 5 Runes ($props, $bindable)
8
9
  =============================================================================
10
+
11
+ @example
12
+ ```ts
13
+ import { mount, unmount } from 'svelte'
14
+ import type { ComponentProps } from 'svelte'
15
+ import { ToggleInput } from '@h-ai/ui'
16
+ const props: ComponentProps<typeof ToggleInput> = { name: 'expanded', checked: true }
17
+ const component = mount(ToggleInput, { target: document.body, props })
18
+ await unmount(component)
19
+ ```
9
20
  -->
10
21
  <script lang='ts'>
11
22
  import type { DataAttributes, ToggleCheckboxProps } from '../../types.js'
@@ -1,5 +1,25 @@
1
1
  import type { DataAttributes, ToggleCheckboxProps } from '../../types.js';
2
2
  type $$ComponentProps = ToggleCheckboxProps & DataAttributes;
3
+ /**
4
+ * ToggleInput
5
+ * =============================================================================
6
+ * @h-ai/ui - ToggleInput 组件
7
+ * =============================================================================
8
+ * 仅渲染原生 checkbox/radio input,用于需要 input 作为直接子元素的场景
9
+ *
10
+ * 使用 Svelte 5 Runes ($props, $bindable)
11
+ * =============================================================================
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { mount, unmount } from 'svelte'
16
+ * import type { ComponentProps } from 'svelte'
17
+ * import { ToggleInput } from '@h-ai/ui'
18
+ * const props: ComponentProps<typeof ToggleInput> = { name: 'expanded', checked: true }
19
+ * const component = mount(ToggleInput, { target: document.body, props })
20
+ * await unmount(component)
21
+ * ```
22
+ */
3
23
  declare const ToggleInput: import("svelte").Component<$$ComponentProps, {}, "checked">;
4
24
  type ToggleInput = ReturnType<typeof ToggleInput>;
5
25
  export default ToggleInput;