@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,69 @@
|
|
|
1
|
+
# CriteriaField
|
|
2
|
+
|
|
3
|
+
布局组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
用于搜索条件区域的带标签字段容器。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 高级查询和筛选面板
|
|
12
|
+
- 需要统一排列查询控件与字段标签
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import CriteriaField from '@ticatec/uniface-element/CriteriaField';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `style` | 否 | `string` | 否 | `''` | 否 | 附加到组件根元素的内联样式。 |
|
|
25
|
+
| `theme` | 否 | `string` | 否 | `undefined` | 否 | 组件主题标识,通常通过 `data-theme` 选择对应 CSS 变量。 |
|
|
26
|
+
| `label` | 是 | `string` | 是 | `—` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
27
|
+
| `label$style` | 否 | `string` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
28
|
+
| `labelSuffix` | 否 | `string` | 否 | `':'` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
29
|
+
| `children` | 是 | `Snippet` | 是 | `—` | 否 | Svelte Snippet 子内容,用于自定义组件主体。 |
|
|
30
|
+
| `size` | 否 | `'' \| 'x15' \| 'x20' \| 'x25' \| 'x30' \| 'x35' \| 'x40'` | 否 | `''` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
31
|
+
|
|
32
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
33
|
+
|
|
34
|
+
## 重要属性说明
|
|
35
|
+
|
|
36
|
+
### `label`
|
|
37
|
+
|
|
38
|
+
可选配置,具体取值范围和数据结构见类型列。
|
|
39
|
+
|
|
40
|
+
- 类型:`string`
|
|
41
|
+
- 默认值:`—`
|
|
42
|
+
- 示例写法:`label="示例标签"`
|
|
43
|
+
|
|
44
|
+
### `children`
|
|
45
|
+
|
|
46
|
+
Svelte Snippet 子内容,用于自定义组件主体。
|
|
47
|
+
|
|
48
|
+
- 类型:`Snippet`
|
|
49
|
+
- 默认值:`—`
|
|
50
|
+
- 示例写法:`children={children}`
|
|
51
|
+
|
|
52
|
+
## 示例
|
|
53
|
+
|
|
54
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
55
|
+
```svelte
|
|
56
|
+
<script lang="ts">
|
|
57
|
+
import CriteriaField from '@ticatec/uniface-element/CriteriaField';
|
|
58
|
+
</script>
|
|
59
|
+
|
|
60
|
+
<CriteriaField
|
|
61
|
+
label="示例标签"
|
|
62
|
+
>
|
|
63
|
+
<div>在这里放置子内容</div>
|
|
64
|
+
</CriteriaField>
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## 源码
|
|
68
|
+
|
|
69
|
+
- `src/lib/layouts/criteria_field/CriteriaField.svelte`
|
|
@@ -0,0 +1,365 @@
|
|
|
1
|
+
# DataTable
|
|
2
|
+
|
|
3
|
+
数据表格组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
支持列配置、选择、操作、冻结和扩展行的数据表格。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 企业列表页和大数据管理界面
|
|
12
|
+
- 需要排序、选择、自定义单元格或行操作
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import DataTable from '@ticatec/uniface-element/DataTable';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `columns` | 是 | `Array<DataColumn>` | 是 | `—` | 否 | 表格列定义,控制字段、标题、宽度、格式化、链接和自定义渲染。 |
|
|
25
|
+
| `actionsColumn` | 否 | `ActionsColumn<T> \| null` | 否 | `null` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
26
|
+
| `indicatorColumn` | 否 | `IndicatorColumn \| null` | 否 | `null` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
27
|
+
| `rowHeight` | 否 | `number` | 否 | `42` | 否 | 高度配置,数值单位为像素。 |
|
|
28
|
+
| `headerHeight` | 否 | `number` | 否 | `48` | 否 | 高度配置,数值单位为像素。 |
|
|
29
|
+
| `list` | 是 | `Array<T>` | 是 | `—` | 否 | 组件展示的数据集合。数据项结构由相关列、字段映射或渲染器决定。 |
|
|
30
|
+
| `selectedRows` | 是 | `Array<T>` | 否 | `$bindable([])` | 是 | 当前选中的行数据数组,推荐使用 `bind:selectedRows`;数组项与 `list` 中的数据引用一致。 |
|
|
31
|
+
| `inlineRowHeight` | 是 | `number` | 否 | `$bindable(80)` | 是 | 高度配置,数值单位为像素。 |
|
|
32
|
+
| `rowBorder` | 否 | `boolean` | 否 | `false` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
33
|
+
| `colBorder` | 否 | `boolean` | 否 | `false` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
34
|
+
| `emptyIndicator` | 否 | `string` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
35
|
+
| `getRowFontStyle` | 否 | `GetRowFontStyle<T>` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
36
|
+
| `style` | 否 | `string` | 否 | `''` | 否 | 附加到组件根元素的内联样式。 |
|
|
37
|
+
|
|
38
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
39
|
+
|
|
40
|
+
## 重要属性说明
|
|
41
|
+
|
|
42
|
+
### `columns`
|
|
43
|
+
|
|
44
|
+
表格列定义,控制字段、标题、宽度、格式化、链接和自定义渲染。
|
|
45
|
+
|
|
46
|
+
- 类型:`Array<DataColumn>`
|
|
47
|
+
- 默认值:`—`
|
|
48
|
+
- 示例写法:`columns={[
|
|
49
|
+
{field: 'name', text: '姓名', width: 160},
|
|
50
|
+
{field: 'department', text: '部门', width: 180}
|
|
51
|
+
]}`
|
|
52
|
+
|
|
53
|
+
### `list`
|
|
54
|
+
|
|
55
|
+
组件展示的数据集合。数据项结构由相关列、字段映射或渲染器决定。
|
|
56
|
+
|
|
57
|
+
- 类型:`Array<T>`
|
|
58
|
+
- 默认值:`—`
|
|
59
|
+
- 示例写法:`list={[
|
|
60
|
+
{id: 1, name: '张三', department: '研发部'},
|
|
61
|
+
{id: 2, name: '李四', department: '产品部'}
|
|
62
|
+
]}`
|
|
63
|
+
|
|
64
|
+
### `selectedRows`
|
|
65
|
+
|
|
66
|
+
当前选中的行数据数组,推荐使用 `bind:selectedRows`;数组项与 `list` 中的数据引用一致。
|
|
67
|
+
|
|
68
|
+
- 类型:`Array<T>`
|
|
69
|
+
- 默认值:`$bindable([])`
|
|
70
|
+
- 推荐写法:`bind:selectedRows`
|
|
71
|
+
|
|
72
|
+
### `inlineRowHeight`
|
|
73
|
+
|
|
74
|
+
高度配置,数值单位为像素。
|
|
75
|
+
|
|
76
|
+
- 类型:`number`
|
|
77
|
+
- 默认值:`$bindable(80)`
|
|
78
|
+
- 推荐写法:`bind:inlineRowHeight`
|
|
79
|
+
|
|
80
|
+
## 相关类型定义
|
|
81
|
+
|
|
82
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
83
|
+
|
|
84
|
+
### `DataColumn`
|
|
85
|
+
|
|
86
|
+
```ts
|
|
87
|
+
export default interface DataColumn {
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* 列头文字
|
|
91
|
+
*/
|
|
92
|
+
text: string;
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* 对应的字段/属性名
|
|
96
|
+
*/
|
|
97
|
+
field?: string;
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* 是否冻结在数据表中,如果前面的frozen是false,那么就无效
|
|
101
|
+
*/
|
|
102
|
+
frozen?: boolean;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* 对齐方式
|
|
106
|
+
*/
|
|
107
|
+
align?: 'left' | 'center' | 'right';
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
*
|
|
111
|
+
*/
|
|
112
|
+
width: number;
|
|
113
|
+
|
|
114
|
+
minWidth?: number;
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* 是否可以换行,默认为false
|
|
118
|
+
*/
|
|
119
|
+
warp?: boolean;
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* 单元格转换函数
|
|
123
|
+
*/
|
|
124
|
+
formatter?: FormatCell;
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* 是否将单元格内容作为可信 HTML 渲染({@html}),而非纯文本转义。
|
|
128
|
+
* 仅当 field/formatter 输出为可信标记时才应设为 true。
|
|
129
|
+
*/
|
|
130
|
+
renderHTML?: boolean;
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* @deprecated 请使用 renderHTML;名称容易被误读为"转义 HTML",
|
|
134
|
+
* 实际含义相反——设为 true 会把内容作为可信 HTML 渲染。仍受支持以兼容旧调用。
|
|
135
|
+
*/
|
|
136
|
+
escapeHTML?: boolean;
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* 超链接设置
|
|
140
|
+
*/
|
|
141
|
+
href?: HrefBuilder;
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* 是否生产hint
|
|
145
|
+
*/
|
|
146
|
+
hint?: CellHint;
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* 渲染器
|
|
150
|
+
*/
|
|
151
|
+
render?: any;
|
|
152
|
+
|
|
153
|
+
/**
|
|
154
|
+
*
|
|
155
|
+
*/
|
|
156
|
+
visible?: boolean;
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
*
|
|
160
|
+
*/
|
|
161
|
+
resizable?: boolean;
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
*
|
|
165
|
+
*/
|
|
166
|
+
compareFunction?: CompareFunction;
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* 获取表格的样式
|
|
170
|
+
*/
|
|
171
|
+
cellStyle?: GetCellStyle;
|
|
172
|
+
}
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### `ActionsColumn`
|
|
176
|
+
|
|
177
|
+
```ts
|
|
178
|
+
export default interface ActionsColumn<T = any> {
|
|
179
|
+
/**
|
|
180
|
+
* 宽度
|
|
181
|
+
*/
|
|
182
|
+
width: number;
|
|
183
|
+
/**
|
|
184
|
+
*
|
|
185
|
+
*/
|
|
186
|
+
getActions: GetRowActions<T>;
|
|
187
|
+
|
|
188
|
+
/**
|
|
189
|
+
* 对齐方式,默认靠左对齐
|
|
190
|
+
*/
|
|
191
|
+
align?: 'left' | 'center';
|
|
192
|
+
}
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
### `IndicatorColumn`
|
|
196
|
+
|
|
197
|
+
```ts
|
|
198
|
+
export default interface IndicatorColumn {
|
|
199
|
+
/**
|
|
200
|
+
*
|
|
201
|
+
*/
|
|
202
|
+
width: number;
|
|
203
|
+
/**
|
|
204
|
+
*
|
|
205
|
+
*/
|
|
206
|
+
selectable?: boolean;
|
|
207
|
+
|
|
208
|
+
/**
|
|
209
|
+
*
|
|
210
|
+
*/
|
|
211
|
+
buildInlineComponent?: (data:any) => Promise<any>;
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* 是否显示行号
|
|
216
|
+
*/
|
|
217
|
+
displayNo?: boolean
|
|
218
|
+
}
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
### `GetRowFontStyle`
|
|
222
|
+
|
|
223
|
+
```ts
|
|
224
|
+
export type GetRowFontStyle<T = any> = (data: T) => RowFontStyle;
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
### `FormatCell`
|
|
228
|
+
|
|
229
|
+
```ts
|
|
230
|
+
export type FormatCell = (value: any) => string;
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### `HrefBuilder`
|
|
234
|
+
|
|
235
|
+
```ts
|
|
236
|
+
export type HrefBuilder = (item: any) => Array<HrefLink> | HrefLink | string;
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
### `CellHint`
|
|
240
|
+
|
|
241
|
+
```ts
|
|
242
|
+
export type CellHint = (value: any) => string;
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
### `CompareFunction`
|
|
246
|
+
|
|
247
|
+
```ts
|
|
248
|
+
export type CompareFunction = (o1: any, o2: any) => number;
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
### `GetCellStyle`
|
|
252
|
+
|
|
253
|
+
```ts
|
|
254
|
+
export type GetCellStyle = (data: any) => string;
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
### `GetRowActions`
|
|
258
|
+
|
|
259
|
+
```ts
|
|
260
|
+
export type GetRowActions = (data: any) => Array<CellAction>;
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
### `RowFontStyle`
|
|
264
|
+
|
|
265
|
+
```ts
|
|
266
|
+
export interface RowFontStyle {
|
|
267
|
+
/**
|
|
268
|
+
* 字体大小
|
|
269
|
+
*/
|
|
270
|
+
size?: string;
|
|
271
|
+
/**
|
|
272
|
+
* 字体颜色
|
|
273
|
+
*/
|
|
274
|
+
color?: string;
|
|
275
|
+
/**
|
|
276
|
+
* 字重
|
|
277
|
+
*/
|
|
278
|
+
weight?: number | string;
|
|
279
|
+
}
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
### `HrefLink`
|
|
283
|
+
|
|
284
|
+
```ts
|
|
285
|
+
export default interface HrefLink {
|
|
286
|
+
/**
|
|
287
|
+
* 显示超链接的文字
|
|
288
|
+
*/
|
|
289
|
+
text: string;
|
|
290
|
+
/**
|
|
291
|
+
* 点击的处理函数
|
|
292
|
+
*/
|
|
293
|
+
action: HrefAction;
|
|
294
|
+
}
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
### `CellAction`
|
|
298
|
+
|
|
299
|
+
```ts
|
|
300
|
+
export interface CellAction {
|
|
301
|
+
/**
|
|
302
|
+
* action的文本
|
|
303
|
+
*/
|
|
304
|
+
text: string;
|
|
305
|
+
/**
|
|
306
|
+
* action的类型
|
|
307
|
+
*/
|
|
308
|
+
type?: ButtonType;
|
|
309
|
+
/**
|
|
310
|
+
* 点击处理
|
|
311
|
+
*/
|
|
312
|
+
handle: HandleAction;
|
|
313
|
+
}
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
### `HrefAction`
|
|
317
|
+
|
|
318
|
+
```ts
|
|
319
|
+
export type HrefAction = () => void;
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
### `ButtonType`
|
|
323
|
+
|
|
324
|
+
```ts
|
|
325
|
+
export type ButtonType = 'default' | 'primary' | 'secondary' | 'third' | 'forth';
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
### `HandleAction`
|
|
329
|
+
|
|
330
|
+
```ts
|
|
331
|
+
export type HandleAction = (data: any) => Promise<void>;
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
## 示例
|
|
335
|
+
|
|
336
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
337
|
+
```svelte
|
|
338
|
+
<script lang="ts">
|
|
339
|
+
import DataTable from '@ticatec/uniface-element/DataTable';
|
|
340
|
+
let selectedRows = $state<any>([]);
|
|
341
|
+
let inlineRowHeight = $state<any>(80);
|
|
342
|
+
</script>
|
|
343
|
+
|
|
344
|
+
<DataTable
|
|
345
|
+
columns={[
|
|
346
|
+
{field: 'name', text: '姓名', width: 160},
|
|
347
|
+
{field: 'department', text: '部门', width: 180}
|
|
348
|
+
]}
|
|
349
|
+
list={[
|
|
350
|
+
{id: 1, name: '张三', department: '研发部'},
|
|
351
|
+
{id: 2, name: '李四', department: '产品部'}
|
|
352
|
+
]}
|
|
353
|
+
bind:selectedRows
|
|
354
|
+
bind:inlineRowHeight
|
|
355
|
+
rowBorder={true}
|
|
356
|
+
colBorder={true}
|
|
357
|
+
rowHeight={48}
|
|
358
|
+
headerHeight={48}
|
|
359
|
+
/>
|
|
360
|
+
<p>当前状态:{JSON.stringify({selectedRows, inlineRowHeight})}</p>
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
## 源码
|
|
364
|
+
|
|
365
|
+
- `src/lib/data_table/DataTable.svelte`
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import DataTable from '@ticatec/uniface-element/DataTable';
|
|
3
|
+
let selectedRows = $state<any>([]);
|
|
4
|
+
let inlineRowHeight = $state<any>(80);
|
|
5
|
+
</script>
|
|
6
|
+
|
|
7
|
+
<DataTable
|
|
8
|
+
columns={[
|
|
9
|
+
{field: 'name', text: '姓名', width: 160},
|
|
10
|
+
{field: 'department', text: '部门', width: 180}
|
|
11
|
+
]}
|
|
12
|
+
list={[
|
|
13
|
+
{id: 1, name: '张三', department: '研发部'},
|
|
14
|
+
{id: 2, name: '李四', department: '产品部'}
|
|
15
|
+
]}
|
|
16
|
+
bind:selectedRows
|
|
17
|
+
bind:inlineRowHeight
|
|
18
|
+
rowBorder={true}
|
|
19
|
+
colBorder={true}
|
|
20
|
+
rowHeight={48}
|
|
21
|
+
headerHeight={48}
|
|
22
|
+
/>
|
|
23
|
+
<p>当前状态:{JSON.stringify({selectedRows, inlineRowHeight})}</p>
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# DatePicker
|
|
2
|
+
|
|
3
|
+
表单组件。本文档由源码自动生成,类型以当前版本为准。
|
|
4
|
+
|
|
5
|
+
## 简介
|
|
6
|
+
|
|
7
|
+
选择单个日期的表单控件。
|
|
8
|
+
|
|
9
|
+
## 适用场景
|
|
10
|
+
|
|
11
|
+
- 生日、计划日期和业务发生日期
|
|
12
|
+
- 需要格式化输入与日历选择
|
|
13
|
+
|
|
14
|
+
## 导入
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import DatePicker from '@ticatec/uniface-element/DatePicker';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 属性
|
|
21
|
+
|
|
22
|
+
| 属性 | 重要 | 类型 | 必填 | 默认值 | 可绑定/响应式 | 说明 |
|
|
23
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
24
|
+
| `theme` | 否 | `string` | 否 | `undefined` | 否 | 主题样式名称,用于切换组件外观主题 |
|
|
25
|
+
| `tooltip` | 否 | `string` | 否 | `undefined` | 否 | 悬停提示信息,鼠标悬浮在字段上时显示 |
|
|
26
|
+
| `error` | 否 | `string` | 否 | `undefined` | 否 | 错误信息,用于在字段下方展示校验错误提示 |
|
|
27
|
+
| `disabled` | 是 | `boolean` | 否 | `false` | 否 | 是否禁用该字段,禁用后字段不可编辑且不响应交互 |
|
|
28
|
+
| `readonly` | 是 | `boolean` | 否 | `false` | 否 | 是否只读,只读状态下字段不可编辑但可聚焦和复制 |
|
|
29
|
+
| `compact` | 否 | `boolean` | 否 | `false` | 否 | 是否启用紧凑模式,紧凑模式下字段内部间距更小 |
|
|
30
|
+
| `variant` | 是 | `EditorVariant` | 否 | `undefined` | 否 | 编辑器外观样式变体 |
|
|
31
|
+
| `placeholder` | 是 | `string` | 否 | `undefined` | 否 | 占位提示文本,字段值为空时在输入区域内展示 |
|
|
32
|
+
| `style` | 否 | `string` | 否 | `undefined` | 否 | 自定义内联样式,会应用到字段根容器上 |
|
|
33
|
+
| `onfocus` | 否 | `(event: FocusEvent) => void` | 否 | `undefined` | 否 | 字段获得焦点时触发的回调 |
|
|
34
|
+
| `onblur` | 否 | `(event: FocusEvent) => void` | 否 | `undefined` | 否 | 字段失去焦点时触发的回调 |
|
|
35
|
+
| `onchange` | 是 | `(value?: any) => void` | 否 | `undefined` | 否 | 字段值发生变化时触发的回调 |
|
|
36
|
+
| `mandatory` | 否 | `boolean` | 否 | `false` | 否 | 是否为必填字段,必填时字段值不能为空 |
|
|
37
|
+
| `onkeydown` | 否 | `(event: KeyboardEvent) => void` | 否 | `undefined` | 否 | 事件或行为回调;参数与返回值以类型签名为准。 |
|
|
38
|
+
| `onkeyup` | 否 | `(event: KeyboardEvent) => void` | 否 | `undefined` | 否 | 事件或行为回调;参数与返回值以类型签名为准。 |
|
|
39
|
+
| `onkeypress` | 否 | `(event: KeyboardEvent) => void` | 否 | `undefined` | 否 | 事件或行为回调;参数与返回值以类型签名为准。 |
|
|
40
|
+
| `value` | 是 | `UniDate` | 否 | `$bindable<UniDate>()` | 是 | 组件的核心值。支持绑定时建议使用 `bind:value`,外部修改会同步到组件。 |
|
|
41
|
+
| `min` | 否 | `UniDate` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
42
|
+
| `max` | 否 | `UniDate` | 否 | `undefined` | 否 | 可选配置,具体取值范围和数据结构见类型列。 |
|
|
43
|
+
|
|
44
|
+
> 组件的“可绑定”表示源码使用了 Svelte 5 的 `$bindable`;服务的“响应式”表示成员使用了 `$state`。复杂类型请同时参考 TypeScript 自动补全。
|
|
45
|
+
|
|
46
|
+
## 重要属性说明
|
|
47
|
+
|
|
48
|
+
### `disabled`
|
|
49
|
+
|
|
50
|
+
是否禁用该字段,禁用后字段不可编辑且不响应交互
|
|
51
|
+
|
|
52
|
+
- 类型:`boolean`
|
|
53
|
+
- 默认值:`false`
|
|
54
|
+
- 示例写法:`disabled={false}`
|
|
55
|
+
|
|
56
|
+
### `readonly`
|
|
57
|
+
|
|
58
|
+
是否只读,只读状态下字段不可编辑但可聚焦和复制
|
|
59
|
+
|
|
60
|
+
- 类型:`boolean`
|
|
61
|
+
- 默认值:`false`
|
|
62
|
+
- 示例写法:`readonly={false}`
|
|
63
|
+
|
|
64
|
+
### `variant`
|
|
65
|
+
|
|
66
|
+
编辑器外观样式变体
|
|
67
|
+
|
|
68
|
+
- 类型:`EditorVariant`
|
|
69
|
+
- 默认值:`undefined`
|
|
70
|
+
- 示例写法:`variant="plain"`
|
|
71
|
+
|
|
72
|
+
### `placeholder`
|
|
73
|
+
|
|
74
|
+
占位提示文本,字段值为空时在输入区域内展示
|
|
75
|
+
|
|
76
|
+
- 类型:`string`
|
|
77
|
+
- 默认值:`undefined`
|
|
78
|
+
- 示例写法:`placeholder="请输入或选择"`
|
|
79
|
+
|
|
80
|
+
### `onchange`
|
|
81
|
+
|
|
82
|
+
字段值发生变化时触发的回调
|
|
83
|
+
|
|
84
|
+
- 类型:`(value?: any) => void`
|
|
85
|
+
- 默认值:`undefined`
|
|
86
|
+
- 示例写法:`onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}`
|
|
87
|
+
|
|
88
|
+
### `value`
|
|
89
|
+
|
|
90
|
+
组件的核心值。支持绑定时建议使用 `bind:value`,外部修改会同步到组件。
|
|
91
|
+
|
|
92
|
+
- 类型:`UniDate`
|
|
93
|
+
- 默认值:`$bindable<UniDate>()`
|
|
94
|
+
- 推荐写法:`bind:value`
|
|
95
|
+
|
|
96
|
+
## 相关类型定义
|
|
97
|
+
|
|
98
|
+
以下定义帮助理解复杂属性的数据结构;其中部分辅助类型属于内部实现,不一定是独立导出入口。
|
|
99
|
+
|
|
100
|
+
### `EditorVariant`
|
|
101
|
+
|
|
102
|
+
```ts
|
|
103
|
+
export type EditorVariant = '' | 'plain' | 'outlined' | 'filled';
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### `UniDate`
|
|
107
|
+
|
|
108
|
+
```ts
|
|
109
|
+
export type UniDate = dayjs.Dayjs | Date | string | undefined;
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## 示例
|
|
113
|
+
|
|
114
|
+
完整示例见 [example.svelte](./example.svelte)。
|
|
115
|
+
```svelte
|
|
116
|
+
<script lang="ts">
|
|
117
|
+
import DatePicker from '@ticatec/uniface-element/DatePicker';
|
|
118
|
+
let value = $state<any>('2026-08-22');
|
|
119
|
+
</script>
|
|
120
|
+
|
|
121
|
+
<DatePicker
|
|
122
|
+
bind:value
|
|
123
|
+
onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}
|
|
124
|
+
onfocus={async (...args: any[]) => { console.log('onfocus', ...args); return true; }}
|
|
125
|
+
variant="plain"
|
|
126
|
+
placeholder="请输入或选择"
|
|
127
|
+
disabled={false}
|
|
128
|
+
readonly={false}
|
|
129
|
+
compact={true}
|
|
130
|
+
/>
|
|
131
|
+
<p>当前状态:{JSON.stringify({value})}</p>
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## 源码
|
|
135
|
+
|
|
136
|
+
- `src/lib/form/date_picker/DatePicker.svelte`
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import DatePicker from '@ticatec/uniface-element/DatePicker';
|
|
3
|
+
let value = $state<any>('2026-08-22');
|
|
4
|
+
</script>
|
|
5
|
+
|
|
6
|
+
<DatePicker
|
|
7
|
+
bind:value
|
|
8
|
+
onchange={async (...args: any[]) => { console.log('onchange', ...args); return true; }}
|
|
9
|
+
onfocus={async (...args: any[]) => { console.log('onfocus', ...args); return true; }}
|
|
10
|
+
variant="plain"
|
|
11
|
+
placeholder="请输入或选择"
|
|
12
|
+
disabled={false}
|
|
13
|
+
readonly={false}
|
|
14
|
+
compact={true}
|
|
15
|
+
/>
|
|
16
|
+
<p>当前状态:{JSON.stringify({value})}</p>
|