@ticatec/uniface-element 5.0.1 → 5.0.2
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.md +29 -54
- package/README_CN.md +37 -57
- package/dist/base-calendar/CalendarBase.svelte +29 -6
- package/dist/base-calendar/CalendarBase.svelte.d.ts +4 -0
- package/dist/base-calendar/MonthPickupPanel.svelte +19 -6
- package/dist/base-calendar/MonthPickupPanel.svelte.d.ts +1 -1
- package/dist/base-calendar/MonthlyCalendar.svelte +18 -2
- package/dist/base-calendar/YearPickupPanel.svelte +24 -6
- package/dist/base-calendar/YearPickupPanel.svelte.d.ts +1 -1
- package/dist/composite/pagination_panel/PaginationPanel.svelte +2 -0
- package/dist/data_display/card/CommonCardActionBar.svelte +34 -14
- package/dist/data_display/concise_data_table/Column.d.ts +6 -0
- package/dist/data_display/concise_data_table/ConciseListTable.svelte +4 -3
- package/dist/data_display/concise_data_table/DataCell.svelte +3 -3
- package/dist/data_display/list_box/ListBox.svelte +90 -15
- package/dist/data_display/list_box/ListBox.svelte.d.ts +4 -0
- package/dist/data_display/tree_view/TreeNodeView.svelte +25 -4
- package/dist/data_table/DataTable.svelte +5 -5
- package/dist/data_table/DataTable.svelte.d.ts +36 -16
- package/dist/data_table/lib/ActionsColumn.d.ts +2 -2
- package/dist/data_table/lib/DataColumn.d.ts +7 -1
- package/dist/data_table/lib/RowAction.d.ts +5 -5
- package/dist/data_table/parts/FixedHeaderPanel.svelte +18 -3
- package/dist/data_table/parts/FixedRow.svelte +10 -1
- package/dist/data_table/parts/HrefCell.svelte +1 -1
- package/dist/data_table/parts/TableHeaderPanel.svelte +18 -2
- package/dist/data_table/parts/TextCell.svelte +2 -2
- package/dist/form/attachment_files/AttachmentEditor.svelte +9 -9
- package/dist/form/attachment_files/FileRender.svelte +1 -1
- package/dist/form/attachment_files/FileUploadPanel.svelte +5 -1
- package/dist/form/cascade_options_select/CascadeOptionSelect.svelte +10 -2
- package/dist/form/cascade_options_select/OptionsBox.svelte +48 -2
- package/dist/form/color_picker/ColorPickerPanel.svelte +23 -20
- package/dist/form/color_picker/ColorPickerPanel.svelte.d.ts +5 -18
- package/dist/form/common_editor/CommonEditor.svelte +18 -4
- package/dist/form/common_editor/CommonPicker.svelte +11 -4
- package/dist/form/common_editor/CommonPopupEditor.svelte +8 -1
- package/dist/form/common_range_editor/CommonRangeEditor.svelte +11 -2
- package/dist/form/date_picker/DatePicker.svelte +1 -1
- package/dist/form/date_picker/DateTimePicker.svelte +1 -1
- package/dist/form/date_picker/ScrollBar.svelte +20 -12
- package/dist/form/date_picker/ScrollBar.svelte.d.ts +4 -18
- package/dist/form/date_range/DateRangeEditor.svelte +11 -3
- package/dist/form/group_box/group-check-box/GroupCheckBox.svelte +6 -1
- package/dist/form/group_box/group-radio-box/GroupRadioBox.svelte +6 -1
- package/dist/form/image-files/ImageFilesField.svelte +51 -7
- package/dist/form/image-files/ImagePreview.svelte +8 -2
- package/dist/form/image-files/ImageRender.svelte +69 -11
- package/dist/form/input_options_select/InputOptionsSelect.svelte +10 -2
- package/dist/form/lookup_editor/LookupEditor.svelte +9 -2
- package/dist/form/options_multi_select/OptionsMultiSelect.svelte +19 -3
- package/dist/form/options_select/OptionsSelect.svelte +15 -6
- package/dist/form/options_select/OptionsSelect.svelte.d.ts +39 -17
- package/dist/form/prompts_text_editor/PromptsTextEditor.svelte +10 -2
- package/dist/form/switch/Switch.svelte +4 -4
- package/dist/form/unit-number-editor/UnitNumberEditor.svelte +10 -2
- package/dist/general/button/Button.svelte +3 -0
- package/dist/general/button/Button.svelte.d.ts +1 -0
- package/dist/general/button/IconButton.svelte +3 -1
- package/dist/general/button/IconButton.svelte.d.ts +1 -0
- package/dist/general/button/TextButton.svelte +3 -0
- package/dist/general/button/TextButton.svelte.d.ts +1 -0
- package/dist/general/icon/Icon.svelte +18 -1
- package/dist/general/tag/Tag.svelte +9 -1
- package/dist/navigation/nav_menu/NavigatorMenu.svelte +2 -2
- package/dist/navigation/nav_menu/NavigatorMenuItem.svelte +10 -1
- package/dist/navigation/navigator/Navigator.svelte +17 -17
- package/dist/navigation/page-stack/PageStack.svelte +160 -0
- package/dist/navigation/page-stack/PageStack.svelte.d.ts +24 -0
- package/dist/navigation/page-stack/PageStackContext.d.ts +25 -0
- package/dist/navigation/page-stack/PageStackContext.js +12 -0
- package/dist/navigation/page-stack/PageStackFrame.svelte +24 -0
- package/dist/navigation/page-stack/PageStackFrame.svelte.d.ts +11 -0
- package/dist/navigation/page-stack/README.md +154 -0
- package/dist/navigation/page-stack/README_CN.md +154 -0
- package/dist/navigation/page-stack/index.d.ts +6 -0
- package/dist/navigation/page-stack/index.js +4 -0
- package/dist/navigation/pagination/Pagination.svelte +114 -14
- package/dist/navigation/tabs/Tabs.svelte +42 -10
- package/dist/navigation/tabs/Tabs.svelte.d.ts +2 -2
- package/dist/overlay/common/FloatingPanel.svelte +3 -11
- package/dist/overlay/common/FullscreenOverlay.svelte +27 -3
- package/dist/overlay/common/FullscreenOverlay.svelte.d.ts +6 -27
- package/dist/overlay/common/ModalPopover.svelte +18 -2
- package/dist/overlay/common/Popover.svelte +56 -57
- package/dist/overlay/common/Popover.svelte.d.ts +1 -5
- package/dist/overlay/common/escapeClose.d.ts +28 -0
- package/dist/overlay/common/escapeClose.js +47 -0
- package/dist/overlay/common/focusTrap.d.ts +8 -0
- package/dist/overlay/common/focusTrap.js +83 -0
- package/dist/overlay/common/mountSingleton.d.ts +27 -0
- package/dist/overlay/common/mountSingleton.js +45 -0
- package/dist/overlay/common/outsideClick.d.ts +28 -0
- package/dist/overlay/common/outsideClick.js +20 -0
- package/dist/overlay/common/scrollLock.d.ts +8 -0
- package/dist/overlay/common/scrollLock.js +49 -0
- package/dist/overlay/context-menu/ContextMenu.svelte.js +2 -15
- package/dist/overlay/context-menu/ContextMenuPanel.svelte +13 -1
- package/dist/overlay/dialog/Dialog.svelte +46 -29
- package/dist/overlay/dialog/DialogManager.svelte.js +7 -9
- package/dist/overlay/drawer/Drawer.svelte +30 -3
- package/dist/overlay/indicator/Indicator.svelte.js +2 -15
- package/dist/overlay/indicator/IndicatorPanel.svelte +4 -1
- package/dist/overlay/message-box/MessageBox.svelte.js +2 -15
- package/dist/overlay/message-box/MessageBoxPanel.svelte +19 -3
- package/dist/overlay/toast/Toast.svelte.js +2 -15
- package/dist/overlay/toast/ToastPanel.svelte +1 -1
- package/dist/overlay/tooltip/Tooltip.svelte +1 -1
- package/dist/ticatec-uniface-web.css +102 -7
- package/dist/types.d.ts +4 -3
- package/docs/components/README.md +133 -0
- package/docs/components/accordion/README.md +60 -0
- package/docs/components/accordion/example.svelte +7 -0
- package/docs/components/action-bar/README.md +114 -0
- package/docs/components/action-bar/example.svelte +7 -0
- package/docs/components/app-top-bar/README.md +60 -0
- package/docs/components/app-top-bar/example.svelte +9 -0
- package/docs/components/attachment-files/README.md +332 -0
- package/docs/components/attachment-files/example.svelte +16 -0
- package/docs/components/box/README.md +63 -0
- package/docs/components/box/example.svelte +10 -0
- package/docs/components/breadcrumbs/README.md +86 -0
- package/docs/components/breadcrumbs/example.svelte +11 -0
- package/docs/components/button/README.md +103 -0
- package/docs/components/button/example.svelte +10 -0
- package/docs/components/card/README.md +113 -0
- package/docs/components/card/example.svelte +10 -0
- package/docs/components/cascade-options-select/README.md +162 -0
- package/docs/components/cascade-options-select/example.svelte +18 -0
- package/docs/components/checkbox/README.md +103 -0
- package/docs/components/checkbox/example.svelte +15 -0
- package/docs/components/classic-layout/README.md +76 -0
- package/docs/components/classic-layout/example.svelte +16 -0
- package/docs/components/color-picker/README.md +132 -0
- package/docs/components/color-picker/example.svelte +16 -0
- package/docs/components/columns-layout/README.md +70 -0
- package/docs/components/columns-layout/example.svelte +12 -0
- package/docs/components/common-dialog/README.md +109 -0
- package/docs/components/common-dialog/example.svelte +12 -0
- package/docs/components/concise-data-table/README.md +307 -0
- package/docs/components/concise-data-table/example.svelte +16 -0
- package/docs/components/context-menu/README.md +99 -0
- package/docs/components/context-menu/example.svelte +10 -0
- package/docs/components/criteria-field/README.md +69 -0
- package/docs/components/criteria-field/example.svelte +9 -0
- package/docs/components/data-table/README.md +365 -0
- package/docs/components/data-table/example.svelte +23 -0
- package/docs/components/date-picker/README.md +136 -0
- package/docs/components/date-picker/example.svelte +16 -0
- package/docs/components/date-range/README.md +122 -0
- package/docs/components/date-range/example.svelte +15 -0
- package/docs/components/date-time-picker/README.md +142 -0
- package/docs/components/date-time-picker/example.svelte +16 -0
- package/docs/components/dialog/README.md +174 -0
- package/docs/components/dialog/example.svelte +13 -0
- package/docs/components/dialog-board/README.md +41 -0
- package/docs/components/dialog-board/example.svelte +5 -0
- package/docs/components/drawer/README.md +70 -0
- package/docs/components/drawer/example.svelte +12 -0
- package/docs/components/flex-form/README.md +55 -0
- package/docs/components/flex-form/example.svelte +7 -0
- package/docs/components/flex-row-form/README.md +56 -0
- package/docs/components/flex-row-form/example.svelte +7 -0
- package/docs/components/form-field/README.md +84 -0
- package/docs/components/form-field/example.svelte +10 -0
- package/docs/components/full-screen-overlay/README.md +66 -0
- package/docs/components/full-screen-overlay/example.svelte +11 -0
- package/docs/components/grid-form/README.md +75 -0
- package/docs/components/grid-form/example.svelte +9 -0
- package/docs/components/group-check-box/README.md +147 -0
- package/docs/components/group-check-box/example.svelte +21 -0
- package/docs/components/group-radio-box/README.md +144 -0
- package/docs/components/group-radio-box/example.svelte +21 -0
- package/docs/components/header-layout/README.md +65 -0
- package/docs/components/header-layout/example.svelte +12 -0
- package/docs/components/icon/README.md +87 -0
- package/docs/components/icon/example.svelte +9 -0
- package/docs/components/icon-button/README.md +91 -0
- package/docs/components/icon-button/example.svelte +10 -0
- package/docs/components/image-files/README.md +174 -0
- package/docs/components/image-files/example.svelte +19 -0
- package/docs/components/indicator/README.md +53 -0
- package/docs/components/indicator/example.svelte +14 -0
- package/docs/components/input-options-select/README.md +163 -0
- package/docs/components/input-options-select/example.svelte +16 -0
- package/docs/components/list-box/ListItem.svelte +14 -0
- package/docs/components/list-box/README.md +221 -0
- package/docs/components/list-box/example.svelte +61 -0
- package/docs/components/lookup-editor/README.md +137 -0
- package/docs/components/lookup-editor/example.svelte +16 -0
- package/docs/components/memo-editor/README.md +143 -0
- package/docs/components/memo-editor/example.svelte +16 -0
- package/docs/components/message-box/README.md +68 -0
- package/docs/components/message-box/example.svelte +10 -0
- package/docs/components/navigator/README.md +75 -0
- package/docs/components/navigator/example.svelte +13 -0
- package/docs/components/navigator-menu/README.md +113 -0
- package/docs/components/navigator-menu/example.svelte +10 -0
- package/docs/components/number-editor/README.md +144 -0
- package/docs/components/number-editor/example.svelte +16 -0
- package/docs/components/number-range/README.md +116 -0
- package/docs/components/number-range/example.svelte +15 -0
- package/docs/components/options-multi-select/README.md +161 -0
- package/docs/components/options-multi-select/example.svelte +20 -0
- package/docs/components/options-select/README.md +160 -0
- package/docs/components/options-select/example.svelte +21 -0
- package/docs/components/page/README.md +77 -0
- package/docs/components/page/example.svelte +10 -0
- package/docs/components/pagination/README.md +88 -0
- package/docs/components/pagination/example.svelte +10 -0
- package/docs/components/pagination-panel/README.md +120 -0
- package/docs/components/pagination-panel/example.svelte +16 -0
- package/docs/components/popup-hint/README.md +44 -0
- package/docs/components/popup-hint/example.svelte +5 -0
- package/docs/components/progress-bar/README.md +64 -0
- package/docs/components/progress-bar/example.svelte +8 -0
- package/docs/components/progress-step-bar/README.md +93 -0
- package/docs/components/progress-step-bar/example.svelte +7 -0
- package/docs/components/prompts-text-editor/README.md +146 -0
- package/docs/components/prompts-text-editor/example.svelte +17 -0
- package/docs/components/radio-button/README.md +121 -0
- package/docs/components/radio-button/example.svelte +18 -0
- package/docs/components/rows-layout/README.md +70 -0
- package/docs/components/rows-layout/example.svelte +12 -0
- package/docs/components/search-box/README.md +136 -0
- package/docs/components/search-box/example.svelte +16 -0
- package/docs/components/separator/README.md +44 -0
- package/docs/components/separator/example.svelte +7 -0
- package/docs/components/sidebar-layout/README.md +65 -0
- package/docs/components/sidebar-layout/example.svelte +12 -0
- package/docs/components/split/README.md +48 -0
- package/docs/components/split/example.svelte +8 -0
- package/docs/components/switch/README.md +77 -0
- package/docs/components/switch/example.svelte +11 -0
- package/docs/components/tabs/README.md +127 -0
- package/docs/components/tabs/example.svelte +22 -0
- package/docs/components/tag/README.md +63 -0
- package/docs/components/tag/example.svelte +8 -0
- package/docs/components/text-button/README.md +90 -0
- package/docs/components/text-button/example.svelte +9 -0
- package/docs/components/text-editor/README.md +147 -0
- package/docs/components/text-editor/example.svelte +16 -0
- package/docs/components/time-editor/README.md +130 -0
- package/docs/components/time-editor/example.svelte +16 -0
- package/docs/components/toast/README.md +52 -0
- package/docs/components/toast/example.svelte +9 -0
- package/docs/components/tooltip/README.md +44 -0
- package/docs/components/tooltip/example.svelte +5 -0
- package/docs/components/transfer/README.md +109 -0
- package/docs/components/transfer/example.svelte +13 -0
- package/docs/components/tree-view/README.md +163 -0
- package/docs/components/tree-view/example.svelte +26 -0
- package/docs/components/unit-number-editor/README.md +192 -0
- package/docs/components/unit-number-editor/example.svelte +18 -0
- package/package.json +15 -7
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# HeaderLayout
|
|
2
|
+
|
|
3
|
+
应用布局组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
以顶部区域为核心的应用页面布局。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 顶部导航型后台和内容门户
|
|
12
|
+
- 需要固定 Header 与可滚动主体
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import HeaderLayout from '@ticatec/uniface-element/app-layout/HeaderLayout';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `headerHeight` | 否 | `string` | 否 | `"48px"` | 否 | 高度配置;字符串可以使用 px、rem、% 等 CSS 单位。 |
|
|
25
|
+
| `sidebarWidth` | 否 | `string` | 否 | `'300px'` | 否 | 宽度配置;字符串可以使用 px、rem、% 等 CSS 单位。 |
|
|
26
|
+
| `sidebarResize` | 否 | `boolean` | 否 | `false` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
27
|
+
| `sidebarMaxWidth` | 否 | `string \| null` | 否 | `null` | 否 | 宽度配置;字符串可以使用 px、rem、% 等 CSS 单位。 |
|
|
28
|
+
| `sidebarMinWidth` | 否 | `string \| null` | 否 | `null` | 否 | 宽度配置;字符串可以使用 px、rem、% 等 CSS 单位。 |
|
|
29
|
+
| `header` | 否 | `Snippet` | 否 | `undefined` | 否 | Svelte Snippet 渲染入口,用于替换或补充默认内容。 |
|
|
30
|
+
| `sidebar` | 否 | `Snippet` | 否 | `undefined` | 否 | Svelte Snippet 渲染入口,用于替换或补充默认内容。 |
|
|
31
|
+
| `children` | 是 | `Snippet` | 否 | `undefined` | 否 | Svelte Snippet 子内容,用于自定义组件主体。 |
|
|
32
|
+
|
|
33
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
34
|
+
|
|
35
|
+
## 重要属性说明
|
|
36
|
+
|
|
37
|
+
### `children`
|
|
38
|
+
|
|
39
|
+
Svelte Snippet 子内容,用于自定义组件主体。
|
|
40
|
+
|
|
41
|
+
- 类型:`Snippet`
|
|
42
|
+
- 默认值:`undefined`
|
|
43
|
+
- 示例写法:`children={children}`
|
|
44
|
+
|
|
45
|
+
## 示例
|
|
46
|
+
|
|
47
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
48
|
+
```svelte
|
|
49
|
+
<script lang="ts">
|
|
50
|
+
import HeaderLayout from '@ticatec/uniface-element/app-layout/HeaderLayout';
|
|
51
|
+
</script>
|
|
52
|
+
|
|
53
|
+
<HeaderLayout
|
|
54
|
+
headerHeight="48px"
|
|
55
|
+
sidebarWidth="240px"
|
|
56
|
+
sidebarMaxWidth="240px"
|
|
57
|
+
sidebarMinWidth="240px"
|
|
58
|
+
>
|
|
59
|
+
<div>在这里放置子内容</div>
|
|
60
|
+
</HeaderLayout>
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## 源码
|
|
64
|
+
|
|
65
|
+
- `src/lib/app_layout/HeaderLayout.svelte`
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import HeaderLayout from '@ticatec/uniface-element/app-layout/HeaderLayout';
|
|
3
|
+
</script>
|
|
4
|
+
|
|
5
|
+
<HeaderLayout
|
|
6
|
+
headerHeight="48px"
|
|
7
|
+
sidebarWidth="240px"
|
|
8
|
+
sidebarMaxWidth="240px"
|
|
9
|
+
sidebarMinWidth="240px"
|
|
10
|
+
>
|
|
11
|
+
<div>在这里放置子内容</div>
|
|
12
|
+
</HeaderLayout>
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# Icon
|
|
2
|
+
|
|
3
|
+
通用组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
显示图标并支持尺寸、颜色和交互状态。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 按钮装饰、状态提示和独立操作图标
|
|
12
|
+
- 统一使用项目图标字体或图标资源
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import Icon from '@ticatec/uniface-element/Icon';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `name` | 是 | `string` | 是 | `—` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
25
|
+
| `onclick` | 是 | `MouseClickHandler \| null` | 否 | `null` | 否 | 用户点击组件时调用,参数通常为 MouseEvent。 |
|
|
26
|
+
| `style` | 否 | `string` | 否 | `''` | 否 | 附加到组件根元素的内联样式。 |
|
|
27
|
+
| `theme` | 否 | `string` | 否 | `''` | 否 | 组件主题标识,通常通过 `data-theme` 选择对应 CSS 变量。 |
|
|
28
|
+
| `class` | 否 | `string` | 否 | `''` | 否 | 附加到组件根元素的 CSS class。 |
|
|
29
|
+
| `tooltip` | 否 | `string` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
30
|
+
| `disabled` | 是 | `boolean` | 否 | `false` | 否 | 禁用交互。禁用后通常不可聚焦、不可修改,也不会触发变更操作。 |
|
|
31
|
+
|
|
32
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
33
|
+
|
|
34
|
+
## 重要属性说明
|
|
35
|
+
|
|
36
|
+
### `name`
|
|
37
|
+
|
|
38
|
+
可选配置,具体取值范围和数据结构见类型列。
|
|
39
|
+
|
|
40
|
+
- 类型:`string`
|
|
41
|
+
- 默认值:`—`
|
|
42
|
+
- 示例写法:`name="示例"`
|
|
43
|
+
|
|
44
|
+
### `onclick`
|
|
45
|
+
|
|
46
|
+
用户点击组件时调用,参数通常为 MouseEvent。
|
|
47
|
+
|
|
48
|
+
- 类型:`MouseClickHandler | null`
|
|
49
|
+
- 默认值:`null`
|
|
50
|
+
- 示例写法:`onclick={async (...args: any[]) => { console.log('onclick', ...args); return true; }}`
|
|
51
|
+
|
|
52
|
+
### `disabled`
|
|
53
|
+
|
|
54
|
+
禁用交互。禁用后通常不可聚焦、不可修改,也不会触发变更操作。
|
|
55
|
+
|
|
56
|
+
- 类型:`boolean`
|
|
57
|
+
- 默认值:`false`
|
|
58
|
+
- 示例写法:`disabled={false}`
|
|
59
|
+
|
|
60
|
+
## 相关类型定义
|
|
61
|
+
|
|
62
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
63
|
+
|
|
64
|
+
### `MouseClickHandler`
|
|
65
|
+
|
|
66
|
+
```ts
|
|
67
|
+
export type MouseClickHandler = (event: MouseEvent) => void;
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## 示例
|
|
71
|
+
|
|
72
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
73
|
+
```svelte
|
|
74
|
+
<script lang="ts">
|
|
75
|
+
import Icon from '@ticatec/uniface-element/Icon';
|
|
76
|
+
</script>
|
|
77
|
+
|
|
78
|
+
<Icon
|
|
79
|
+
name="示例"
|
|
80
|
+
onclick={async (...args: any[]) => { console.log('onclick', ...args); return true; }}
|
|
81
|
+
disabled={false}
|
|
82
|
+
/>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## 源码
|
|
86
|
+
|
|
87
|
+
- `src/lib/general/icon/Icon.svelte`
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# IconButton
|
|
2
|
+
|
|
3
|
+
通用组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
仅以图标呈现的紧凑按钮。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 刷新、关闭、编辑和工具栏操作
|
|
12
|
+
- 空间有限且图标语义明确的操作
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import IconButton from '@ticatec/uniface-element/IconButton';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `type` | 否 | `ButtonType` | 否 | `'default'` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
25
|
+
| `htmlType` | 否 | `'button' \| 'submit' \| 'reset'` | 否 | `'button'` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
26
|
+
| `disabled` | 是 | `boolean` | 否 | `false` | 否 | 禁用交互。禁用后通常不可聚焦、不可修改,也不会触发变更操作。 |
|
|
27
|
+
| `size` | 否 | `ButtonSize` | 否 | `'medium'` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
28
|
+
| `style` | 否 | `string` | 否 | `undefined` | 否 | 附加到组件根元素的内联样式。 |
|
|
29
|
+
| `icon` | 否 | `string` | 否 | `''` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
30
|
+
| `tooltip` | 否 | `string` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
31
|
+
| `onclick` | 是 | `(event: MouseEvent) => void` | 否 | `undefined` | 否 | 用户点击组件时调用,参数通常为 MouseEvent。 |
|
|
32
|
+
| `theme` | 否 | `string` | 否 | `undefined` | 否 | 组件主题标识,通常通过 `data-theme` 选择对应 CSS 变量。 |
|
|
33
|
+
| `children` | 是 | `Snippet` | 否 | `undefined` | 否 | Svelte Snippet 子内容,用于自定义组件主体。 |
|
|
34
|
+
|
|
35
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
36
|
+
|
|
37
|
+
## 重要属性说明
|
|
38
|
+
|
|
39
|
+
### `disabled`
|
|
40
|
+
|
|
41
|
+
禁用交互。禁用后通常不可聚焦、不可修改,也不会触发变更操作。
|
|
42
|
+
|
|
43
|
+
- 类型:`boolean`
|
|
44
|
+
- 默认值:`false`
|
|
45
|
+
- 示例写法:`disabled={false}`
|
|
46
|
+
|
|
47
|
+
### `onclick`
|
|
48
|
+
|
|
49
|
+
用户点击组件时调用,参数通常为 MouseEvent。
|
|
50
|
+
|
|
51
|
+
- 类型:`(event: MouseEvent) => void`
|
|
52
|
+
- 默认值:`undefined`
|
|
53
|
+
- 示例写法:`onclick={async (...args: any[]) => { console.log('onclick', ...args); return true; }}`
|
|
54
|
+
|
|
55
|
+
### `children`
|
|
56
|
+
|
|
57
|
+
Svelte Snippet 子内容,用于自定义组件主体。
|
|
58
|
+
|
|
59
|
+
- 类型:`Snippet`
|
|
60
|
+
- 默认值:`undefined`
|
|
61
|
+
- 示例写法:`children={children}`
|
|
62
|
+
|
|
63
|
+
## 相关类型定义
|
|
64
|
+
|
|
65
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
66
|
+
|
|
67
|
+
### `ButtonType`
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
export type ButtonType = 'default' | 'primary' | 'secondary' | 'third' | 'forth';
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## 示例
|
|
74
|
+
|
|
75
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
76
|
+
```svelte
|
|
77
|
+
<script lang="ts">
|
|
78
|
+
import IconButton from '@ticatec/uniface-element/IconButton';
|
|
79
|
+
</script>
|
|
80
|
+
|
|
81
|
+
<IconButton
|
|
82
|
+
onclick={async (...args: any[]) => { console.log('onclick', ...args); return true; }}
|
|
83
|
+
disabled={false}
|
|
84
|
+
>
|
|
85
|
+
<div>在这里放置子内容</div>
|
|
86
|
+
</IconButton>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## 源码
|
|
90
|
+
|
|
91
|
+
- `src/lib/general/button/IconButton.svelte`
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
# ImageFiles
|
|
2
|
+
|
|
3
|
+
表单组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
管理图片上传、缩略图、预览和删除的图片字段。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 头像、商品图和现场照片
|
|
12
|
+
- 需要图片预览及多图上传管理
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import ImageFiles from '@ticatec/uniface-element/ImageFiles';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `variant` | 是 | `EditorVariant` | 否 | `getEditorVariant()` | 否 | 视觉样式变体,可选值:`""`(默认)、`plain`、`outlined`、`filled`;具体含义见组件说明。 |
|
|
25
|
+
| `disabled` | 是 | `boolean` | 否 | `false` | 否 | 禁用交互。禁用后通常不可聚焦、不可修改,也不会触发变更操作。 |
|
|
26
|
+
| `readonly` | 是 | `boolean` | 否 | `false` | 否 | 只读状态。保留内容展示,但阻止用户修改。 |
|
|
27
|
+
| `files` | 是 | `ImageFile[]` | 是 | `$bindable([] as ImageFile[])` | 是 | 当前文件列表;增删文件后会更新绑定值。 |
|
|
28
|
+
| `style` | 否 | `string` | 否 | `""` | 否 | 附加到组件根元素的内联样式。 |
|
|
29
|
+
| `removeFileConfirm` | 否 | `RemoveConfirm` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
30
|
+
| `uploadFile` | 是 | `FileUpload` | 是 | `—` | 否 | 实际执行上传的函数;接收文件、进度回调与完成回调,需返回 `{cancel}` 以支持取消上传。 |
|
|
31
|
+
| `maxFiles` | 否 | `number` | 否 | `1` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
32
|
+
| `text` | 否 | `string \| null` | 否 | `null as string \| null` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
33
|
+
|
|
34
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
35
|
+
|
|
36
|
+
## 重要属性说明
|
|
37
|
+
|
|
38
|
+
### `variant`
|
|
39
|
+
|
|
40
|
+
视觉样式变体,可选值:`""`(默认)、`plain`、`outlined`、`filled`;具体含义见组件说明。
|
|
41
|
+
|
|
42
|
+
- 类型:`EditorVariant`
|
|
43
|
+
- 默认值:`getEditorVariant()`
|
|
44
|
+
- 示例写法:`variant="plain"`
|
|
45
|
+
|
|
46
|
+
### `disabled`
|
|
47
|
+
|
|
48
|
+
禁用交互。禁用后通常不可聚焦、不可修改,也不会触发变更操作。
|
|
49
|
+
|
|
50
|
+
- 类型:`boolean`
|
|
51
|
+
- 默认值:`false`
|
|
52
|
+
- 示例写法:`disabled={false}`
|
|
53
|
+
|
|
54
|
+
### `readonly`
|
|
55
|
+
|
|
56
|
+
只读状态。保留内容展示,但阻止用户修改。
|
|
57
|
+
|
|
58
|
+
- 类型:`boolean`
|
|
59
|
+
- 默认值:`false`
|
|
60
|
+
- 示例写法:`readonly={false}`
|
|
61
|
+
|
|
62
|
+
### `files`
|
|
63
|
+
|
|
64
|
+
当前文件列表;增删文件后会更新绑定值。
|
|
65
|
+
|
|
66
|
+
- 类型:`ImageFile[]`
|
|
67
|
+
- 默认值:`$bindable([] as ImageFile[])`
|
|
68
|
+
- 推荐写法:`bind:files`
|
|
69
|
+
|
|
70
|
+
### `uploadFile`
|
|
71
|
+
|
|
72
|
+
实际执行上传的函数;接收文件、进度回调与完成回调,需返回 `{cancel}` 以支持取消上传。
|
|
73
|
+
|
|
74
|
+
- 类型:`FileUpload`
|
|
75
|
+
- 默认值:`—`
|
|
76
|
+
- 示例写法:参见下方完整示例中的类型化实现。
|
|
77
|
+
|
|
78
|
+
## 相关类型定义
|
|
79
|
+
|
|
80
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
81
|
+
|
|
82
|
+
### `EditorVariant`
|
|
83
|
+
|
|
84
|
+
```ts
|
|
85
|
+
export type EditorVariant = '' | 'plain' | 'outlined' | 'filled';
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### `ImageFile`
|
|
89
|
+
|
|
90
|
+
```ts
|
|
91
|
+
export default interface ImageFile {
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* 附件名
|
|
95
|
+
*/
|
|
96
|
+
name: string;
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* oss保存的文件路径
|
|
100
|
+
*/
|
|
101
|
+
uri: string;
|
|
102
|
+
|
|
103
|
+
thumbnail?: string | undefined | null;
|
|
104
|
+
}
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### `RemoveConfirm`
|
|
108
|
+
|
|
109
|
+
```ts
|
|
110
|
+
export type RemoveConfirm = (file: ImageFile) => Promise<boolean>;
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### `FileUpload`
|
|
114
|
+
|
|
115
|
+
```ts
|
|
116
|
+
export type FileUpload = (file: File, progressUpdate: ProgressUpdate, onUploaded: OnUploaded, errorHandler: ErrorHandler) => UploadProgress;
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### `ProgressUpdate`
|
|
120
|
+
|
|
121
|
+
```ts
|
|
122
|
+
export type ProgressUpdate = (uploadBytes: number) => void;
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
### `OnUploaded`
|
|
126
|
+
|
|
127
|
+
```ts
|
|
128
|
+
export type OnUploaded = (url: string, thumbnail?: string) => void;
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
### `ErrorHandler`
|
|
132
|
+
|
|
133
|
+
```ts
|
|
134
|
+
export type ErrorHandler = (e: Error) => void;
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### `UploadProgress`
|
|
138
|
+
|
|
139
|
+
```ts
|
|
140
|
+
export interface UploadProgress {
|
|
141
|
+
|
|
142
|
+
cancel:()=>Promise<boolean>;
|
|
143
|
+
|
|
144
|
+
}
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## 示例
|
|
148
|
+
|
|
149
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
150
|
+
```svelte
|
|
151
|
+
<script lang="ts">
|
|
152
|
+
import ImageFiles, {type FileUpload, type ImageFile} from '@ticatec/uniface-element/ImageFiles';
|
|
153
|
+
|
|
154
|
+
let files = $state<ImageFile[]>([]);
|
|
155
|
+
const uploadFile: FileUpload = (file, progress, uploaded) => {
|
|
156
|
+
progress(file.size);
|
|
157
|
+
uploaded(URL.createObjectURL(file));
|
|
158
|
+
return {cancel: async () => true};
|
|
159
|
+
};
|
|
160
|
+
</script>
|
|
161
|
+
|
|
162
|
+
<ImageFiles
|
|
163
|
+
bind:files
|
|
164
|
+
{uploadFile}
|
|
165
|
+
maxFiles={5}
|
|
166
|
+
variant="outlined"
|
|
167
|
+
removeFileConfirm={async (file) => confirm(`确定删除 ${file.name}?`)}
|
|
168
|
+
/>
|
|
169
|
+
<p>已上传 {files.length} 张图片</p>
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
## 源码
|
|
173
|
+
|
|
174
|
+
- `src/lib/form/image-files/ImageFilesField.svelte`
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import ImageFiles, {type FileUpload, type ImageFile} from '@ticatec/uniface-element/ImageFiles';
|
|
3
|
+
|
|
4
|
+
let files = $state<ImageFile[]>([]);
|
|
5
|
+
const uploadFile: FileUpload = (file, progress, uploaded) => {
|
|
6
|
+
progress(file.size);
|
|
7
|
+
uploaded(URL.createObjectURL(file));
|
|
8
|
+
return {cancel: async () => true};
|
|
9
|
+
};
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<ImageFiles
|
|
13
|
+
bind:files
|
|
14
|
+
{uploadFile}
|
|
15
|
+
maxFiles={5}
|
|
16
|
+
variant="outlined"
|
|
17
|
+
removeFileConfirm={async (file) => confirm(`确定删除 ${file.name}?`)}
|
|
18
|
+
/>
|
|
19
|
+
<p>已上传 {files.length} 张图片</p>
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Indicator
|
|
2
|
+
|
|
3
|
+
命令式服务。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
通过命令式 API 显示全局处理中指示层。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 保存、导入和长任务执行期间
|
|
12
|
+
- 需要阻止重复操作并提示正在处理
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import Indicator from '@ticatec/uniface-element/Indicator';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 公开成员与方法
|
|
21
|
+
|
|
22
|
+
| 成员 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `message` | 是 | `string` | 否 | `$state('')` | 是 | 内部响应式状态;由上方方法统一管理。这是一个单例服务而非组件,不能使用 `bind:message`,仅供参考,不建议直接修改。 |
|
|
25
|
+
| `visible` | 是 | `boolean` | 否 | `$state(false)` | 是 | 内部响应式状态:标记当前是否正在显示。由 `show()`/`hide()` 等方法统一管理;这是一个单例服务而非组件,不能使用 `bind:visible`,不建议直接修改。 |
|
|
26
|
+
| `show()` | 否 | `(msg: string) => void` | 否 | `—` | 否 | 显示加载指示器 |
|
|
27
|
+
| `hide()` | 否 | `() => void` | 否 | `—` | 否 | 隐藏加载指示器 |
|
|
28
|
+
|
|
29
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
30
|
+
|
|
31
|
+
## 示例
|
|
32
|
+
|
|
33
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
34
|
+
```svelte
|
|
35
|
+
<script lang="ts">
|
|
36
|
+
import Indicator from '@ticatec/uniface-element/Indicator';
|
|
37
|
+
|
|
38
|
+
async function runTask() {
|
|
39
|
+
Indicator.show('处理中…');
|
|
40
|
+
try {
|
|
41
|
+
await new Promise((resolve) => setTimeout(resolve, 1500));
|
|
42
|
+
} finally {
|
|
43
|
+
Indicator.hide();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
</script>
|
|
47
|
+
|
|
48
|
+
<button type="button" onclick={runTask}>开始任务(1.5 秒后自动隐藏)</button>
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## 源码
|
|
52
|
+
|
|
53
|
+
- `src/lib/overlay/indicator/Indicator.svelte.ts`
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import Indicator from '@ticatec/uniface-element/Indicator';
|
|
3
|
+
|
|
4
|
+
async function runTask() {
|
|
5
|
+
Indicator.show('处理中…');
|
|
6
|
+
try {
|
|
7
|
+
await new Promise((resolve) => setTimeout(resolve, 1500));
|
|
8
|
+
} finally {
|
|
9
|
+
Indicator.hide();
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
<button type="button" onclick={runTask}>开始任务(1.5 秒后自动隐藏)</button>
|