@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.
- package/README.en.md +31 -5
- package/README.ja.md +31 -5
- package/README.md +64 -38
- package/dist/components/compounds/Accordion.svelte +24 -0
- package/dist/components/compounds/Accordion.svelte.d.ts +34 -0
- package/dist/components/compounds/ActionSheet.svelte +24 -0
- package/dist/components/compounds/ActionSheet.svelte.d.ts +38 -0
- package/dist/components/compounds/Alert.svelte +15 -4
- package/dist/components/compounds/Alert.svelte.d.ts +10 -0
- package/dist/components/compounds/AppBar.svelte +24 -0
- package/dist/components/compounds/AppBar.svelte.d.ts +33 -0
- package/dist/components/compounds/BottomNav.svelte +37 -0
- package/dist/components/compounds/BottomNav.svelte.d.ts +43 -0
- package/dist/components/compounds/Breadcrumb.svelte +11 -0
- package/dist/components/compounds/Breadcrumb.svelte.d.ts +20 -0
- package/dist/components/compounds/Calendar.svelte +20 -6
- package/dist/components/compounds/Calendar.svelte.d.ts +20 -6
- package/dist/components/compounds/Card.svelte +10 -0
- package/dist/components/compounds/Card.svelte.d.ts +10 -0
- package/dist/components/compounds/Combobox.svelte +35 -18
- package/dist/components/compounds/Combobox.svelte.d.ts +35 -18
- package/dist/components/compounds/Confirm.svelte +11 -0
- package/dist/components/compounds/Confirm.svelte.d.ts +21 -0
- package/dist/components/compounds/DataTable.svelte +40 -17
- package/dist/components/compounds/DataTable.svelte.d.ts +9 -13
- package/dist/components/compounds/DatePicker.svelte +20 -6
- package/dist/components/compounds/DatePicker.svelte.d.ts +20 -6
- package/dist/components/compounds/Drawer.svelte +11 -0
- package/dist/components/compounds/Drawer.svelte.d.ts +21 -0
- package/dist/components/compounds/Dropdown.svelte +10 -0
- package/dist/components/compounds/Dropdown.svelte.d.ts +10 -0
- package/dist/components/compounds/Empty.svelte +16 -5
- package/dist/components/compounds/Empty.svelte.d.ts +20 -0
- package/dist/components/compounds/Form.svelte +37 -2
- package/dist/components/compounds/Form.svelte.d.ts +20 -0
- package/dist/components/compounds/FormField.svelte +11 -0
- package/dist/components/compounds/FormField.svelte.d.ts +20 -0
- package/dist/components/compounds/FormLayout.svelte +13 -1
- package/dist/components/compounds/FormLayout.svelte.d.ts +13 -0
- package/dist/components/compounds/InfiniteScroll.svelte +24 -0
- package/dist/components/compounds/InfiniteScroll.svelte.d.ts +34 -0
- package/dist/components/compounds/MessageBoxContainer.svelte +11 -0
- package/dist/components/compounds/MessageBoxContainer.svelte.d.ts +21 -0
- package/dist/components/compounds/MessageBoxDialog.svelte +14 -0
- package/dist/components/compounds/MessageBoxDialog.svelte.d.ts +21 -0
- package/dist/components/compounds/MessageContainer.svelte +11 -0
- package/dist/components/compounds/MessageContainer.svelte.d.ts +21 -0
- package/dist/components/compounds/Modal.svelte +10 -0
- package/dist/components/compounds/Modal.svelte.d.ts +10 -0
- package/dist/components/compounds/PageHeader.svelte +21 -8
- package/dist/components/compounds/PageHeader.svelte.d.ts +21 -8
- package/dist/components/compounds/Pagination.svelte +34 -8
- package/dist/components/compounds/Pagination.svelte.d.ts +20 -0
- package/dist/components/compounds/Popover.svelte +11 -0
- package/dist/components/compounds/Popover.svelte.d.ts +20 -0
- package/dist/components/compounds/PullRefresh.svelte +24 -0
- package/dist/components/compounds/PullRefresh.svelte.d.ts +32 -0
- package/dist/components/compounds/Result.svelte +11 -0
- package/dist/components/compounds/Result.svelte.d.ts +20 -0
- package/dist/components/compounds/SafeArea.svelte +24 -0
- package/dist/components/compounds/SafeArea.svelte.d.ts +32 -0
- package/dist/components/compounds/Skeleton.svelte +10 -0
- package/dist/components/compounds/Skeleton.svelte.d.ts +10 -0
- package/dist/components/compounds/Steps.svelte +11 -0
- package/dist/components/compounds/Steps.svelte.d.ts +20 -0
- package/dist/components/compounds/SwipeCell.svelte +24 -0
- package/dist/components/compounds/SwipeCell.svelte.d.ts +37 -0
- package/dist/components/compounds/TableToolbar.svelte +66 -28
- package/dist/components/compounds/TableToolbar.svelte.d.ts +29 -19
- package/dist/components/compounds/Tabs.svelte +58 -10
- package/dist/components/compounds/Tabs.svelte.d.ts +10 -0
- package/dist/components/compounds/TagInput.svelte +11 -0
- package/dist/components/compounds/TagInput.svelte.d.ts +20 -0
- package/dist/components/compounds/Timeline.svelte +24 -0
- package/dist/components/compounds/Timeline.svelte.d.ts +34 -0
- package/dist/components/compounds/ToastContainer.svelte +11 -0
- package/dist/components/compounds/ToastContainer.svelte.d.ts +26 -0
- package/dist/components/compounds/Tooltip.svelte +11 -0
- package/dist/components/compounds/Tooltip.svelte.d.ts +22 -0
- package/dist/components/compounds/accordion-types.d.ts +10 -1
- package/dist/components/compounds/action-sheet-types.d.ts +9 -0
- package/dist/components/compounds/bottom-nav-types.d.ts +9 -0
- package/dist/components/compounds/swipe-cell-types.d.ts +9 -0
- package/dist/components/compounds/timeline-types.d.ts +9 -0
- package/dist/components/control-size.d.ts +17 -0
- package/dist/components/control-size.js +8 -0
- package/dist/components/primitives/Avatar.svelte +10 -0
- package/dist/components/primitives/Avatar.svelte.d.ts +10 -0
- package/dist/components/primitives/Badge.svelte +10 -0
- package/dist/components/primitives/Badge.svelte.d.ts +10 -0
- package/dist/components/primitives/BareButton.svelte +11 -0
- package/dist/components/primitives/BareButton.svelte.d.ts +20 -0
- package/dist/components/primitives/BareInput.svelte +11 -0
- package/dist/components/primitives/BareInput.svelte.d.ts +20 -0
- package/dist/components/primitives/Button.svelte +10 -0
- package/dist/components/primitives/Button.svelte.d.ts +10 -0
- package/dist/components/primitives/Checkbox.svelte +11 -0
- package/dist/components/primitives/Checkbox.svelte.d.ts +20 -0
- package/dist/components/primitives/IconButton.svelte +11 -0
- package/dist/components/primitives/IconButton.svelte.d.ts +20 -0
- package/dist/components/primitives/Input.svelte +10 -0
- package/dist/components/primitives/Input.svelte.d.ts +10 -0
- package/dist/components/primitives/Progress.svelte +11 -0
- package/dist/components/primitives/Progress.svelte.d.ts +20 -0
- package/dist/components/primitives/Radio.svelte +11 -0
- package/dist/components/primitives/Radio.svelte.d.ts +20 -0
- package/dist/components/primitives/Range.svelte +24 -0
- package/dist/components/primitives/Range.svelte.d.ts +34 -0
- package/dist/components/primitives/Rating.svelte +24 -0
- package/dist/components/primitives/Rating.svelte.d.ts +34 -0
- package/dist/components/primitives/Select.svelte +11 -0
- package/dist/components/primitives/Select.svelte.d.ts +21 -0
- package/dist/components/primitives/Spinner.svelte +11 -0
- package/dist/components/primitives/Spinner.svelte.d.ts +20 -0
- package/dist/components/primitives/Switch.svelte +11 -0
- package/dist/components/primitives/Switch.svelte.d.ts +20 -0
- package/dist/components/primitives/Tag.svelte +11 -0
- package/dist/components/primitives/Tag.svelte.d.ts +20 -0
- package/dist/components/primitives/Textarea.svelte +11 -0
- package/dist/components/primitives/Textarea.svelte.d.ts +21 -0
- package/dist/components/primitives/ToggleCheckbox.svelte +11 -0
- package/dist/components/primitives/ToggleCheckbox.svelte.d.ts +20 -0
- package/dist/components/primitives/ToggleInput.svelte +11 -0
- package/dist/components/primitives/ToggleInput.svelte.d.ts +20 -0
- package/dist/components/primitives/ToggleRadio.svelte +11 -0
- package/dist/components/primitives/ToggleRadio.svelte.d.ts +20 -0
- package/dist/components/scenes/ai/AiDocumentDownloadMenu.svelte +27 -0
- package/dist/components/scenes/ai/AiDocumentDownloadMenu.svelte.d.ts +27 -0
- package/dist/components/scenes/ai/AiDocumentEditor.svelte +79 -0
- package/dist/components/scenes/ai/AiDocumentEditor.svelte.d.ts +23 -0
- package/dist/components/scenes/ai/MarkdownRenderer.svelte +11 -0
- package/dist/components/scenes/ai/MarkdownRenderer.svelte.d.ts +28 -0
- package/dist/components/scenes/ai/code-preview.d.ts +28 -0
- package/dist/components/scenes/ai/code-preview.js +20 -0
- package/dist/components/scenes/ai/document-download.d.ts +52 -0
- package/dist/components/scenes/ai/document-download.js +30 -2
- package/dist/components/scenes/ai/document-parse.d.ts +71 -14
- package/dist/components/scenes/ai/document-parse.js +19 -9
- package/dist/components/scenes/ai/document-types.d.ts +222 -88
- package/dist/components/scenes/ai/editor-markdown-extensions.d.ts +16 -0
- package/dist/components/scenes/ai/editor-markdown-extensions.js +16 -0
- package/dist/components/scenes/ai/highlight.d.ts +11 -0
- package/dist/components/scenes/ai/highlight.js +11 -0
- package/dist/components/scenes/ai/markdown-parse.d.ts +8 -2
- package/dist/components/scenes/ai/markdown-parse.js +2 -2
- package/dist/components/scenes/ai/mermaid-host-sync.d.ts +38 -0
- package/dist/components/scenes/ai/mermaid-host-sync.js +30 -0
- package/dist/components/scenes/ai/mermaid-render.d.ts +23 -0
- package/dist/components/scenes/ai/mermaid-render.js +23 -0
- package/dist/components/scenes/ai/safe-html.d.ts +54 -6
- package/dist/components/scenes/ai/safe-html.js +54 -6
- package/dist/components/scenes/ai/table/AiTableEditor.svelte +48 -0
- package/dist/components/scenes/ai/table/AiTableEditor.svelte.d.ts +24 -0
- package/dist/components/scenes/ai/table/table-types.d.ts +79 -0
- package/dist/components/scenes/app/FeedbackModal.svelte +45 -5
- package/dist/components/scenes/app/FeedbackModal.svelte.d.ts +45 -5
- package/dist/components/scenes/app/LanguageSwitch.svelte +29 -19
- package/dist/components/scenes/app/LanguageSwitch.svelte.d.ts +28 -19
- package/dist/components/scenes/app/SettingsLayout.svelte +21 -9
- package/dist/components/scenes/app/SettingsLayout.svelte.d.ts +21 -9
- package/dist/components/scenes/app/SettingsModal.svelte +23 -0
- package/dist/components/scenes/app/SettingsModal.svelte.d.ts +23 -0
- package/dist/components/scenes/app/ThemeColorPicker.svelte +31 -0
- package/dist/components/scenes/app/ThemeColorPicker.svelte.d.ts +31 -0
- package/dist/components/scenes/app/ThemeSelector.svelte +21 -6
- package/dist/components/scenes/app/ThemeSelector.svelte.d.ts +21 -6
- package/dist/components/scenes/app/ThemeToggle.svelte +21 -4
- package/dist/components/scenes/app/ThemeToggle.svelte.d.ts +21 -4
- package/dist/components/scenes/app/index.d.ts +1 -1
- package/dist/components/scenes/app/index.js +1 -1
- package/dist/components/scenes/charts/Chart.svelte +11 -0
- package/dist/components/scenes/charts/Chart.svelte.d.ts +20 -0
- package/dist/components/scenes/charts/chart-theme.d.ts +25 -1
- package/dist/components/scenes/charts/chart-theme.js +25 -1
- package/dist/components/scenes/charts/chart-types.d.ts +83 -7
- package/dist/components/scenes/charts/renderers/LineChart.svelte +53 -0
- package/dist/components/scenes/charts/renderers/LineChart.svelte.d.ts +13 -0
- package/dist/components/scenes/crud/CrudDeleteConfirm.svelte +10 -0
- package/dist/components/scenes/crud/CrudDeleteConfirm.svelte.d.ts +10 -0
- package/dist/components/scenes/crud/CrudDetailDrawer.svelte +8 -0
- package/dist/components/scenes/crud/CrudDetailDrawer.svelte.d.ts +8 -0
- package/dist/components/scenes/crud/CrudDetailPanel.svelte +18 -0
- package/dist/components/scenes/crud/CrudDetailPanel.svelte.d.ts +18 -0
- package/dist/components/scenes/crud/CrudEditPanel.svelte +10 -0
- package/dist/components/scenes/crud/CrudEditPanel.svelte.d.ts +10 -0
- package/dist/components/scenes/crud/CrudFilterBar.svelte +18 -0
- package/dist/components/scenes/crud/CrudFilterBar.svelte.d.ts +18 -0
- package/dist/components/scenes/crud/CrudPage.svelte +37 -5
- package/dist/components/scenes/crud/CrudPage.svelte.d.ts +35 -3
- package/dist/components/scenes/crud/crud-controller.svelte.d.ts +142 -23
- package/dist/components/scenes/crud/crud-controller.svelte.js +22 -11
- package/dist/components/scenes/crud/crud-form-validation.d.ts +12 -0
- package/dist/components/scenes/crud/crud-form-validation.js +12 -0
- package/dist/components/scenes/crud/crud-types.d.ts +79 -8
- package/dist/components/scenes/crud/nav-adapter.d.ts +14 -0
- package/dist/components/scenes/crud/nav-adapter.js +8 -0
- package/dist/components/scenes/crypto/EncryptedInput.svelte +24 -0
- package/dist/components/scenes/crypto/EncryptedInput.svelte.d.ts +34 -0
- package/dist/components/scenes/crypto/HashDisplay.svelte +11 -0
- package/dist/components/scenes/crypto/HashDisplay.svelte.d.ts +21 -0
- package/dist/components/scenes/crypto/SignatureDisplay.svelte +11 -0
- package/dist/components/scenes/crypto/SignatureDisplay.svelte.d.ts +21 -0
- package/dist/components/scenes/error/ErrorPage.svelte +8 -1
- package/dist/components/scenes/error/ErrorPage.svelte.d.ts +8 -1
- package/dist/components/scenes/error/error-presets.d.ts +40 -4
- package/dist/components/scenes/error/error-presets.js +22 -2
- package/dist/components/scenes/guide/GuideHost.svelte +27 -0
- package/dist/components/scenes/guide/GuideHost.svelte.d.ts +27 -0
- package/dist/components/scenes/guide/HelpCenter.svelte +27 -0
- package/dist/components/scenes/guide/HelpCenter.svelte.d.ts +27 -0
- package/dist/components/scenes/iam/AuthPanel.svelte +26 -2
- package/dist/components/scenes/iam/AuthPanel.svelte.d.ts +25 -0
- package/dist/components/scenes/iam/AuthShell.svelte +8 -3
- package/dist/components/scenes/iam/AuthShell.svelte.d.ts +8 -3
- package/dist/components/scenes/iam/ChangePasswordForm.svelte +10 -0
- package/dist/components/scenes/iam/ChangePasswordForm.svelte.d.ts +10 -0
- package/dist/components/scenes/iam/ForgotPasswordForm.svelte +11 -0
- package/dist/components/scenes/iam/ForgotPasswordForm.svelte.d.ts +21 -0
- package/dist/components/scenes/iam/LoginForm.svelte +24 -31
- package/dist/components/scenes/iam/LoginForm.svelte.d.ts +10 -0
- package/dist/components/scenes/iam/PasswordInput.svelte +23 -0
- package/dist/components/scenes/iam/PasswordInput.svelte.d.ts +23 -0
- package/dist/components/scenes/iam/PermGuard.svelte +21 -11
- package/dist/components/scenes/iam/PermGuard.svelte.d.ts +30 -0
- package/dist/components/scenes/iam/RegisterForm.svelte +10 -0
- package/dist/components/scenes/iam/RegisterForm.svelte.d.ts +10 -0
- package/dist/components/scenes/iam/ResetPasswordForm.svelte +10 -0
- package/dist/components/scenes/iam/ResetPasswordForm.svelte.d.ts +10 -0
- package/dist/components/scenes/iam/UserProfile.svelte +11 -0
- package/dist/components/scenes/iam/UserProfile.svelte.d.ts +21 -0
- package/dist/components/scenes/iam/auth-error-message.d.ts +10 -0
- package/dist/components/scenes/iam/auth-error-message.js +10 -0
- package/dist/components/scenes/iam/password-utils.d.ts +39 -1
- package/dist/components/scenes/iam/password-utils.js +39 -1
- package/dist/components/scenes/iam/permission-context.svelte.d.ts +33 -23
- package/dist/components/scenes/iam/permission-context.svelte.js +20 -22
- package/dist/components/scenes/storage/AvatarUpload.svelte +11 -0
- package/dist/components/scenes/storage/AvatarUpload.svelte.d.ts +20 -0
- package/dist/components/scenes/storage/FileList.svelte +13 -2
- package/dist/components/scenes/storage/FileList.svelte.d.ts +20 -0
- package/dist/components/scenes/storage/FileUpload.svelte +37 -2
- package/dist/components/scenes/storage/FileUpload.svelte.d.ts +21 -0
- package/dist/components/scenes/storage/ImageUpload.svelte +11 -0
- package/dist/components/scenes/storage/ImageUpload.svelte.d.ts +21 -0
- package/dist/components/scenes/types.d.ts +352 -11
- package/dist/guide-storage.d.ts +13 -1
- package/dist/guide-storage.js +13 -1
- package/dist/guide-types.d.ts +67 -2
- package/dist/guide.svelte.d.ts +22 -1
- package/dist/guide.svelte.js +22 -1
- package/dist/i18n.svelte.d.ts +64 -3
- package/dist/i18n.svelte.js +99 -18
- package/dist/index.d.ts +2 -1
- package/dist/index.js +1 -2
- package/dist/internal/browser-safety.d.ts +51 -2
- package/dist/internal/browser-safety.js +45 -7
- package/dist/internal/form-context.d.ts +73 -0
- package/dist/internal/form-context.js +57 -0
- package/dist/internal/form-validation.svelte.d.ts +42 -0
- package/dist/internal/form-validation.svelte.js +26 -0
- package/dist/internal/icon-safety.d.ts +7 -0
- package/dist/internal/icon-safety.js +7 -0
- package/dist/internal/locale.d.ts +19 -0
- package/dist/internal/locale.js +21 -0
- package/dist/message.svelte.d.ts +90 -0
- package/dist/message.svelte.js +84 -0
- package/dist/messagebox.svelte.d.ts +61 -13
- package/dist/messagebox.svelte.js +55 -13
- package/dist/messages/en-US.json +6 -1
- package/dist/messages/ja-JP.json +389 -0
- package/dist/messages/zh-CN.json +6 -1
- package/dist/messages.d.ts +24 -3
- package/dist/messages.js +18 -3
- package/dist/styles/design-tokens.css +4 -2
- package/dist/styles/global.css +28 -8
- package/dist/styles/theme.css +2 -0
- package/dist/theme-config.d.ts +173 -0
- package/dist/theme-config.js +143 -0
- package/dist/toast.svelte.d.ts +114 -4
- package/dist/toast.svelte.js +108 -4
- package/dist/types.d.ts +526 -9
- package/dist/utils/platform.svelte.d.ts +28 -15
- package/dist/utils/platform.svelte.js +19 -14
- package/dist/utils.d.ts +102 -0
- package/dist/utils.js +93 -0
- package/package.json +66 -6
|
@@ -3,6 +3,16 @@ type $$ComponentProps = AlertProps & DataAttributes;
|
|
|
3
3
|
/**
|
|
4
4
|
* Alert
|
|
5
5
|
* 警告框组件,使用 tabler icon 替代 emoji,更精致。
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* import { mount, unmount, createRawSnippet } from 'svelte'
|
|
10
|
+
* import type { ComponentProps } from 'svelte'
|
|
11
|
+
* import { Alert } from '@h-ai/ui'
|
|
12
|
+
* const props: ComponentProps<typeof Alert> = { title: '保存成功', variant: 'success', children: createRawSnippet(() => ({ render: () => "<span>操作已经完成。</span>" })) }
|
|
13
|
+
* const component = mount(Alert, { target: document.body, props })
|
|
14
|
+
* await unmount(component)
|
|
15
|
+
* ```
|
|
6
16
|
*/
|
|
7
17
|
declare const Alert: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
8
18
|
type Alert = ReturnType<typeof Alert>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
<!--
|
|
2
|
+
@component AppBar
|
|
2
3
|
@h-ai/ui — AppBar(顶部应用栏,支持安全区域)
|
|
3
4
|
|
|
4
5
|
用法:
|
|
@@ -6,12 +7,35 @@
|
|
|
6
7
|
{#snippet leading()}<BackButton />{/snippet}
|
|
7
8
|
{#snippet trailing()}<Avatar />{/snippet}
|
|
8
9
|
</AppBar>
|
|
10
|
+
|
|
11
|
+
@example
|
|
12
|
+
```ts
|
|
13
|
+
import { mount, unmount } from 'svelte'
|
|
14
|
+
import type { ComponentProps } from 'svelte'
|
|
15
|
+
import { AppBar } from '@h-ai/ui'
|
|
16
|
+
const props: ComponentProps<typeof AppBar> = { title: '设置', safeArea: true }
|
|
17
|
+
const component = mount(AppBar, { target: document.body, props })
|
|
18
|
+
await unmount(component)
|
|
19
|
+
```
|
|
9
20
|
-->
|
|
10
21
|
<script lang='ts'>
|
|
11
22
|
import type { Snippet } from 'svelte'
|
|
12
23
|
import type { DataAttributes } from '../../types.js'
|
|
13
24
|
import { cn, getDataAttributes } from '../../utils.js'
|
|
14
25
|
|
|
26
|
+
/**
|
|
27
|
+
* AppBar 组件的属性契约;通过公开组件配置使用。
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* import { mount, unmount } from 'svelte'
|
|
32
|
+
* import type { ComponentProps } from 'svelte'
|
|
33
|
+
* import { AppBar } from '@h-ai/ui'
|
|
34
|
+
* const props: ComponentProps<typeof AppBar> = { title: '设置', safeArea: true }
|
|
35
|
+
* const component = mount(AppBar, { target: document.body, props })
|
|
36
|
+
* await unmount(component)
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
15
39
|
interface Props {
|
|
16
40
|
/** 标题文本 */
|
|
17
41
|
title?: string
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import type { Snippet } from 'svelte';
|
|
2
2
|
import type { DataAttributes } from '../../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* AppBar 组件的属性契约;通过公开组件配置使用。
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* import { mount, unmount } from 'svelte'
|
|
9
|
+
* import type { ComponentProps } from 'svelte'
|
|
10
|
+
* import { AppBar } from '@h-ai/ui'
|
|
11
|
+
* const props: ComponentProps<typeof AppBar> = { title: '设置', safeArea: true }
|
|
12
|
+
* const component = mount(AppBar, { target: document.body, props })
|
|
13
|
+
* await unmount(component)
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
3
16
|
interface Props {
|
|
4
17
|
/** 标题文本 */
|
|
5
18
|
title?: string;
|
|
@@ -17,6 +30,26 @@ interface Props {
|
|
|
17
30
|
children?: Snippet;
|
|
18
31
|
}
|
|
19
32
|
type $$ComponentProps = Props & DataAttributes;
|
|
33
|
+
/**
|
|
34
|
+
* AppBar
|
|
35
|
+
* @h-ai/ui — AppBar(顶部应用栏,支持安全区域)
|
|
36
|
+
*
|
|
37
|
+
* 用法:
|
|
38
|
+
* <AppBar title="首页">
|
|
39
|
+
* {#snippet leading()}<BackButton />{/snippet}
|
|
40
|
+
* {#snippet trailing()}<Avatar />{/snippet}
|
|
41
|
+
* </AppBar>
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* import { mount, unmount } from 'svelte'
|
|
46
|
+
* import type { ComponentProps } from 'svelte'
|
|
47
|
+
* import { AppBar } from '@h-ai/ui'
|
|
48
|
+
* const props: ComponentProps<typeof AppBar> = { title: '设置', safeArea: true }
|
|
49
|
+
* const component = mount(AppBar, { target: document.body, props })
|
|
50
|
+
* await unmount(component)
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
20
53
|
declare const AppBar: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
21
54
|
type AppBar = ReturnType<typeof AppBar>;
|
|
22
55
|
export default AppBar;
|
|
@@ -1,8 +1,19 @@
|
|
|
1
1
|
<!--
|
|
2
|
+
@component BottomNav
|
|
2
3
|
@h-ai/ui — BottomNav(底部导航栏)
|
|
3
4
|
|
|
4
5
|
用法:
|
|
5
6
|
<BottomNav items={navItems} active="home" onchange={(id) => goto(`/${id}`)} />
|
|
7
|
+
|
|
8
|
+
@example
|
|
9
|
+
```ts
|
|
10
|
+
import { mount, unmount } from 'svelte'
|
|
11
|
+
import type { ComponentProps } from 'svelte'
|
|
12
|
+
import { BottomNav } from '@h-ai/ui'
|
|
13
|
+
const props: ComponentProps<typeof BottomNav> = { items: [{ id: 'home', label: '首页', iconClass: 'icon-[tabler--home]' }], active: 'home', maxWidth: 'lg' }
|
|
14
|
+
const component = mount(BottomNav, { target: document.body, props })
|
|
15
|
+
await unmount(component)
|
|
16
|
+
```
|
|
6
17
|
-->
|
|
7
18
|
<script lang='ts'>
|
|
8
19
|
import type { DataAttributes } from '../../types.js'
|
|
@@ -12,6 +23,19 @@
|
|
|
12
23
|
// eslint-disable-next-line no-import-assign -- type re-export
|
|
13
24
|
export type { BottomNavItem }
|
|
14
25
|
|
|
26
|
+
/**
|
|
27
|
+
* 底部导航的内容宽度预设;none 取消预设宽度约束。
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* import { mount, unmount } from 'svelte'
|
|
32
|
+
* import type { ComponentProps } from 'svelte'
|
|
33
|
+
* import { BottomNav } from '@h-ai/ui'
|
|
34
|
+
* const props: ComponentProps<typeof BottomNav> = { items: [{ id: 'home', label: '首页', iconClass: 'icon-[tabler--home]' }], active: 'home', maxWidth: 'lg' }
|
|
35
|
+
* const component = mount(BottomNav, { target: document.body, props })
|
|
36
|
+
* await unmount(component)
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
15
39
|
type BottomNavMaxWidth = 'sm' | 'md' | 'lg' | 'xl' | 'none'
|
|
16
40
|
|
|
17
41
|
const MAX_WIDTH_CLASS: Record<BottomNavMaxWidth, string> = {
|
|
@@ -22,6 +46,19 @@
|
|
|
22
46
|
none: '',
|
|
23
47
|
}
|
|
24
48
|
|
|
49
|
+
/**
|
|
50
|
+
* BottomNav 组件的属性契约;通过公开组件配置使用。
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```ts
|
|
54
|
+
* import { mount, unmount } from 'svelte'
|
|
55
|
+
* import type { ComponentProps } from 'svelte'
|
|
56
|
+
* import { BottomNav } from '@h-ai/ui'
|
|
57
|
+
* const props: ComponentProps<typeof BottomNav> = { items: [{ id: 'home', label: '首页', iconClass: 'icon-[tabler--home]' }], active: 'home', maxWidth: 'lg' }
|
|
58
|
+
* const component = mount(BottomNav, { target: document.body, props })
|
|
59
|
+
* await unmount(component)
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
25
62
|
interface Props {
|
|
26
63
|
/** 导航项列表 */
|
|
27
64
|
items: BottomNavItem[]
|
|
@@ -1,6 +1,32 @@
|
|
|
1
1
|
import type { DataAttributes } from '../../types.js';
|
|
2
2
|
import type { BottomNavItem } from './bottom-nav-types.js';
|
|
3
|
+
/**
|
|
4
|
+
* 底部导航的内容宽度预设;none 取消预设宽度约束。
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* import { mount, unmount } from 'svelte'
|
|
9
|
+
* import type { ComponentProps } from 'svelte'
|
|
10
|
+
* import { BottomNav } from '@h-ai/ui'
|
|
11
|
+
* const props: ComponentProps<typeof BottomNav> = { items: [{ id: 'home', label: '首页', iconClass: 'icon-[tabler--home]' }], active: 'home', maxWidth: 'lg' }
|
|
12
|
+
* const component = mount(BottomNav, { target: document.body, props })
|
|
13
|
+
* await unmount(component)
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
3
16
|
type BottomNavMaxWidth = 'sm' | 'md' | 'lg' | 'xl' | 'none';
|
|
17
|
+
/**
|
|
18
|
+
* BottomNav 组件的属性契约;通过公开组件配置使用。
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```ts
|
|
22
|
+
* import { mount, unmount } from 'svelte'
|
|
23
|
+
* import type { ComponentProps } from 'svelte'
|
|
24
|
+
* import { BottomNav } from '@h-ai/ui'
|
|
25
|
+
* const props: ComponentProps<typeof BottomNav> = { items: [{ id: 'home', label: '首页', iconClass: 'icon-[tabler--home]' }], active: 'home', maxWidth: 'lg' }
|
|
26
|
+
* const component = mount(BottomNav, { target: document.body, props })
|
|
27
|
+
* await unmount(component)
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
4
30
|
interface Props {
|
|
5
31
|
/** 导航项列表 */
|
|
6
32
|
items: BottomNavItem[];
|
|
@@ -18,6 +44,23 @@ interface Props {
|
|
|
18
44
|
class?: string;
|
|
19
45
|
}
|
|
20
46
|
type $$ComponentProps = Props & DataAttributes;
|
|
47
|
+
/**
|
|
48
|
+
* BottomNav
|
|
49
|
+
* @h-ai/ui — BottomNav(底部导航栏)
|
|
50
|
+
*
|
|
51
|
+
* 用法:
|
|
52
|
+
* <BottomNav items={navItems} active="home" onchange={(id) => goto(`/${id}`)} />
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* ```ts
|
|
56
|
+
* import { mount, unmount } from 'svelte'
|
|
57
|
+
* import type { ComponentProps } from 'svelte'
|
|
58
|
+
* import { BottomNav } from '@h-ai/ui'
|
|
59
|
+
* const props: ComponentProps<typeof BottomNav> = { items: [{ id: 'home', label: '首页', iconClass: 'icon-[tabler--home]' }], active: 'home', maxWidth: 'lg' }
|
|
60
|
+
* const component = mount(BottomNav, { target: document.body, props })
|
|
61
|
+
* await unmount(component)
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
21
64
|
declare const BottomNav: import("svelte").Component<$$ComponentProps, {
|
|
22
65
|
BottomNavItem: typeof BottomNavItem;
|
|
23
66
|
}, "">;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
<!--
|
|
2
|
+
@component Breadcrumb
|
|
2
3
|
=============================================================================
|
|
3
4
|
@h-ai/ui - Breadcrumb 组件
|
|
4
5
|
=============================================================================
|
|
@@ -6,6 +7,16 @@
|
|
|
6
7
|
|
|
7
8
|
使用 Svelte 5 Runes ($props)
|
|
8
9
|
=============================================================================
|
|
10
|
+
|
|
11
|
+
@example
|
|
12
|
+
```ts
|
|
13
|
+
import { mount, unmount } from 'svelte'
|
|
14
|
+
import type { ComponentProps } from 'svelte'
|
|
15
|
+
import { Breadcrumb } from '@h-ai/ui'
|
|
16
|
+
const props: ComponentProps<typeof Breadcrumb> = { items: [{ label: '首页', href: '/' }, { label: '设置' }] }
|
|
17
|
+
const component = mount(Breadcrumb, { target: document.body, props })
|
|
18
|
+
await unmount(component)
|
|
19
|
+
```
|
|
9
20
|
-->
|
|
10
21
|
<script lang='ts'>
|
|
11
22
|
import type { BreadcrumbProps, DataAttributes } from '../../types.js'
|
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
import type { BreadcrumbProps, DataAttributes } from '../../types.js';
|
|
2
2
|
type $$ComponentProps = BreadcrumbProps & DataAttributes;
|
|
3
|
+
/**
|
|
4
|
+
* Breadcrumb
|
|
5
|
+
* =============================================================================
|
|
6
|
+
* @h-ai/ui - Breadcrumb 组件
|
|
7
|
+
* =============================================================================
|
|
8
|
+
* 面包屑导航组件
|
|
9
|
+
*
|
|
10
|
+
* 使用 Svelte 5 Runes ($props)
|
|
11
|
+
* =============================================================================
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { mount, unmount } from 'svelte'
|
|
16
|
+
* import type { ComponentProps } from 'svelte'
|
|
17
|
+
* import { Breadcrumb } from '@h-ai/ui'
|
|
18
|
+
* const props: ComponentProps<typeof Breadcrumb> = { items: [{ label: '首页', href: '/' }, { label: '设置' }] }
|
|
19
|
+
* const component = mount(Breadcrumb, { target: document.body, props })
|
|
20
|
+
* await unmount(component)
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
3
23
|
declare const Breadcrumb: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
4
24
|
type Breadcrumb = ReturnType<typeof Breadcrumb>;
|
|
5
25
|
export default Breadcrumb;
|
|
@@ -11,12 +11,13 @@
|
|
|
11
11
|
@prop {function} onchange - 日期变更回调
|
|
12
12
|
|
|
13
13
|
@example
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
```ts
|
|
15
|
+
import { mount, unmount } from 'svelte'
|
|
16
|
+
import type { ComponentProps } from 'svelte'
|
|
17
|
+
import { Calendar } from '@h-ai/ui'
|
|
18
|
+
const props: ComponentProps<typeof Calendar> = { weekStartsOn: 1 }
|
|
19
|
+
const component = mount(Calendar, { target: document.body, props })
|
|
20
|
+
await unmount(component)
|
|
20
21
|
```
|
|
21
22
|
-->
|
|
22
23
|
<script lang='ts'>
|
|
@@ -25,6 +26,19 @@
|
|
|
25
26
|
import { Calendar as BitsCalendar } from 'bits-ui'
|
|
26
27
|
import { getDataAttributes } from '../../utils.js'
|
|
27
28
|
|
|
29
|
+
/**
|
|
30
|
+
* Calendar 组件的属性契约;通过公开组件配置使用。
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```ts
|
|
34
|
+
* import { mount, unmount } from 'svelte'
|
|
35
|
+
* import type { ComponentProps } from 'svelte'
|
|
36
|
+
* import { Calendar } from '@h-ai/ui'
|
|
37
|
+
* const props: ComponentProps<typeof Calendar> = { weekStartsOn: 1 }
|
|
38
|
+
* const component = mount(Calendar, { target: document.body, props })
|
|
39
|
+
* await unmount(component)
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
28
42
|
interface Props {
|
|
29
43
|
/** 选中日期(双向绑定) */
|
|
30
44
|
value?: DateValue
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import type { DateValue } from '@internationalized/date';
|
|
2
2
|
import type { DataAttributes } from '../../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Calendar 组件的属性契约;通过公开组件配置使用。
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* import { mount, unmount } from 'svelte'
|
|
9
|
+
* import type { ComponentProps } from 'svelte'
|
|
10
|
+
* import { Calendar } from '@h-ai/ui'
|
|
11
|
+
* const props: ComponentProps<typeof Calendar> = { weekStartsOn: 1 }
|
|
12
|
+
* const component = mount(Calendar, { target: document.body, props })
|
|
13
|
+
* await unmount(component)
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
3
16
|
interface Props {
|
|
4
17
|
/** 选中日期(双向绑定) */
|
|
5
18
|
value?: DateValue;
|
|
@@ -36,12 +49,13 @@ type $$ComponentProps = Props & DataAttributes;
|
|
|
36
49
|
* @prop {function} onchange - 日期变更回调
|
|
37
50
|
*
|
|
38
51
|
* @example
|
|
39
|
-
* ```
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
52
|
+
* ```ts
|
|
53
|
+
* import { mount, unmount } from 'svelte'
|
|
54
|
+
* import type { ComponentProps } from 'svelte'
|
|
55
|
+
* import { Calendar } from '@h-ai/ui'
|
|
56
|
+
* const props: ComponentProps<typeof Calendar> = { weekStartsOn: 1 }
|
|
57
|
+
* const component = mount(Calendar, { target: document.body, props })
|
|
58
|
+
* await unmount(component)
|
|
45
59
|
* ```
|
|
46
60
|
*/
|
|
47
61
|
declare const Calendar: import("svelte").Component<$$ComponentProps, {}, "value" | "placeholder">;
|
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
<!--
|
|
2
2
|
@component Card
|
|
3
3
|
卡片组件,默认使用 border 而非 shadow,更现代克制。
|
|
4
|
+
|
|
5
|
+
@example
|
|
6
|
+
```ts
|
|
7
|
+
import { mount, unmount, createRawSnippet } from 'svelte'
|
|
8
|
+
import type { ComponentProps } from 'svelte'
|
|
9
|
+
import { Card } from '@h-ai/ui'
|
|
10
|
+
const props: ComponentProps<typeof Card> = { title: '个人资料', bordered: true, children: createRawSnippet(() => ({ render: () => "<span>资料内容</span>" })) }
|
|
11
|
+
const component = mount(Card, { target: document.body, props })
|
|
12
|
+
await unmount(component)
|
|
13
|
+
```
|
|
4
14
|
-->
|
|
5
15
|
<script lang='ts'>
|
|
6
16
|
import type { CardProps, DataAttributes } from '../../types.js'
|
|
@@ -3,6 +3,16 @@ type $$ComponentProps = CardProps & DataAttributes;
|
|
|
3
3
|
/**
|
|
4
4
|
* Card
|
|
5
5
|
* 卡片组件,默认使用 border 而非 shadow,更现代克制。
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* import { mount, unmount, createRawSnippet } from 'svelte'
|
|
10
|
+
* import type { ComponentProps } from 'svelte'
|
|
11
|
+
* import { Card } from '@h-ai/ui'
|
|
12
|
+
* const props: ComponentProps<typeof Card> = { title: '个人资料', bordered: true, children: createRawSnippet(() => ({ render: () => "<span>资料内容</span>" })) }
|
|
13
|
+
* const component = mount(Card, { target: document.body, props })
|
|
14
|
+
* await unmount(component)
|
|
15
|
+
* ```
|
|
6
16
|
*/
|
|
7
17
|
declare const Card: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
8
18
|
type Card = ReturnType<typeof Card>;
|
|
@@ -15,23 +15,15 @@
|
|
|
15
15
|
@prop {string} class - 自定义类名
|
|
16
16
|
@prop {function} onchange - 值变更回调
|
|
17
17
|
|
|
18
|
-
@example
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
@example 多选
|
|
29
|
-
<Combobox
|
|
30
|
-
options={skills}
|
|
31
|
-
bind:value={selectedSkills}
|
|
32
|
-
multiple
|
|
33
|
-
placeholder="搜索技能..."
|
|
34
|
-
/>
|
|
18
|
+
@example
|
|
19
|
+
```ts
|
|
20
|
+
import { mount, unmount } from 'svelte'
|
|
21
|
+
import type { ComponentProps } from 'svelte'
|
|
22
|
+
import { Combobox } from '@h-ai/ui'
|
|
23
|
+
const props: ComponentProps<typeof Combobox> = { options: [{ value: 'svelte', label: 'Svelte' }], value: 'svelte' }
|
|
24
|
+
const component = mount(Combobox, { target: document.body, props })
|
|
25
|
+
await unmount(component)
|
|
26
|
+
```
|
|
35
27
|
-->
|
|
36
28
|
<script lang='ts'>
|
|
37
29
|
import type { DataAttributes, FormText, Size } from '../../types.js'
|
|
@@ -43,7 +35,19 @@
|
|
|
43
35
|
import { getFormControlSizeClasses } from '../control-size.js'
|
|
44
36
|
import BareButton from '../primitives/BareButton.svelte'
|
|
45
37
|
|
|
46
|
-
/**
|
|
38
|
+
/**
|
|
39
|
+
* 选项定义
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* import { mount, unmount } from 'svelte'
|
|
44
|
+
* import type { ComponentProps } from 'svelte'
|
|
45
|
+
* import { Combobox } from '@h-ai/ui'
|
|
46
|
+
* const props: ComponentProps<typeof Combobox> = { options: [{ value: 'svelte', label: 'Svelte' }], value: 'svelte' }
|
|
47
|
+
* const component = mount(Combobox, { target: document.body, props })
|
|
48
|
+
* await unmount(component)
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
47
51
|
interface Option {
|
|
48
52
|
/** 选项值 */
|
|
49
53
|
value: string
|
|
@@ -55,6 +59,19 @@
|
|
|
55
59
|
description?: string
|
|
56
60
|
}
|
|
57
61
|
|
|
62
|
+
/**
|
|
63
|
+
* Combobox 组件的属性契约;通过公开组件配置使用。
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```ts
|
|
67
|
+
* import { mount, unmount } from 'svelte'
|
|
68
|
+
* import type { ComponentProps } from 'svelte'
|
|
69
|
+
* import { Combobox } from '@h-ai/ui'
|
|
70
|
+
* const props: ComponentProps<typeof Combobox> = { options: [{ value: 'svelte', label: 'Svelte' }], value: 'svelte' }
|
|
71
|
+
* const component = mount(Combobox, { target: document.body, props })
|
|
72
|
+
* await unmount(component)
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
58
75
|
interface Props {
|
|
59
76
|
/** 选项列表 */
|
|
60
77
|
options: Option[]
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
import type { DataAttributes, FormText, Size } from '../../types.js';
|
|
2
2
|
import { Combobox } from 'bits-ui';
|
|
3
|
-
/**
|
|
3
|
+
/**
|
|
4
|
+
* 选项定义
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* import { mount, unmount } from 'svelte'
|
|
9
|
+
* import type { ComponentProps } from 'svelte'
|
|
10
|
+
* import { Combobox } from '@h-ai/ui'
|
|
11
|
+
* const props: ComponentProps<typeof Combobox> = { options: [{ value: 'svelte', label: 'Svelte' }], value: 'svelte' }
|
|
12
|
+
* const component = mount(Combobox, { target: document.body, props })
|
|
13
|
+
* await unmount(component)
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
4
16
|
interface Option {
|
|
5
17
|
/** 选项值 */
|
|
6
18
|
value: string;
|
|
@@ -11,6 +23,19 @@ interface Option {
|
|
|
11
23
|
/** 描述文本(仅在多选模式下展示) */
|
|
12
24
|
description?: string;
|
|
13
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Combobox 组件的属性契约;通过公开组件配置使用。
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* import { mount, unmount } from 'svelte'
|
|
32
|
+
* import type { ComponentProps } from 'svelte'
|
|
33
|
+
* import { Combobox } from '@h-ai/ui'
|
|
34
|
+
* const props: ComponentProps<typeof Combobox> = { options: [{ value: 'svelte', label: 'Svelte' }], value: 'svelte' }
|
|
35
|
+
* const component = mount(Combobox, { target: document.body, props })
|
|
36
|
+
* await unmount(component)
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
14
39
|
interface Props {
|
|
15
40
|
/** 选项列表 */
|
|
16
41
|
options: Option[];
|
|
@@ -51,23 +76,15 @@ type $$ComponentProps = Props & DataAttributes;
|
|
|
51
76
|
* @prop {string} class - 自定义类名
|
|
52
77
|
* @prop {function} onchange - 值变更回调
|
|
53
78
|
*
|
|
54
|
-
* @example
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
* @example 多选
|
|
65
|
-
* <Combobox
|
|
66
|
-
* options={skills}
|
|
67
|
-
* bind:value={selectedSkills}
|
|
68
|
-
* multiple
|
|
69
|
-
* placeholder="搜索技能..."
|
|
70
|
-
* />
|
|
79
|
+
* @example
|
|
80
|
+
* ```ts
|
|
81
|
+
* import { mount, unmount } from 'svelte'
|
|
82
|
+
* import type { ComponentProps } from 'svelte'
|
|
83
|
+
* import { Combobox } from '@h-ai/ui'
|
|
84
|
+
* const props: ComponentProps<typeof Combobox> = { options: [{ value: 'svelte', label: 'Svelte' }], value: 'svelte' }
|
|
85
|
+
* const component = mount(Combobox, { target: document.body, props })
|
|
86
|
+
* await unmount(component)
|
|
87
|
+
* ```
|
|
71
88
|
*/
|
|
72
89
|
declare const Combobox: import("svelte").Component<$$ComponentProps, {}, "value">;
|
|
73
90
|
type Combobox = ReturnType<typeof Combobox>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
<!--
|
|
2
|
+
@component Confirm
|
|
2
3
|
=============================================================================
|
|
3
4
|
@h-ai/ui - Confirm 组件
|
|
4
5
|
=============================================================================
|
|
@@ -7,6 +8,16 @@
|
|
|
7
8
|
使用 Svelte 5 Runes ($props, $state)
|
|
8
9
|
使用 primitives 组件:Button
|
|
9
10
|
=============================================================================
|
|
11
|
+
|
|
12
|
+
@example
|
|
13
|
+
```ts
|
|
14
|
+
import { mount, unmount } from 'svelte'
|
|
15
|
+
import type { ComponentProps } from 'svelte'
|
|
16
|
+
import { Confirm } from '@h-ai/ui'
|
|
17
|
+
const props: ComponentProps<typeof Confirm> = { open: true, title: '删除记录', message: '确定删除这条记录?', variant: 'warning' }
|
|
18
|
+
const component = mount(Confirm, { target: document.body, props })
|
|
19
|
+
await unmount(component)
|
|
20
|
+
```
|
|
10
21
|
-->
|
|
11
22
|
<script lang='ts'>
|
|
12
23
|
import type { ConfirmProps, DataAttributes } from '../../types.js'
|
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
import type { ConfirmProps, DataAttributes } from '../../types.js';
|
|
2
2
|
type $$ComponentProps = ConfirmProps & DataAttributes;
|
|
3
|
+
/**
|
|
4
|
+
* Confirm
|
|
5
|
+
* =============================================================================
|
|
6
|
+
* @h-ai/ui - Confirm 组件
|
|
7
|
+
* =============================================================================
|
|
8
|
+
* 确认对话框组件
|
|
9
|
+
*
|
|
10
|
+
* 使用 Svelte 5 Runes ($props, $state)
|
|
11
|
+
* 使用 primitives 组件:Button
|
|
12
|
+
* =============================================================================
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* import { mount, unmount } from 'svelte'
|
|
17
|
+
* import type { ComponentProps } from 'svelte'
|
|
18
|
+
* import { Confirm } from '@h-ai/ui'
|
|
19
|
+
* const props: ComponentProps<typeof Confirm> = { open: true, title: '删除记录', message: '确定删除这条记录?', variant: 'warning' }
|
|
20
|
+
* const component = mount(Confirm, { target: document.body, props })
|
|
21
|
+
* await unmount(component)
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
3
24
|
declare const Confirm: import("svelte").Component<$$ComponentProps, {}, "open">;
|
|
4
25
|
type Confirm = ReturnType<typeof Confirm>;
|
|
5
26
|
export default Confirm;
|