@ticatec/uniface-element 5.0.5 → 5.1.0
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 +4 -3
- package/README_CN.md +4 -3
- package/dist/app_layout/ColumnsLayout.svelte +14 -10
- package/dist/app_layout/ColumnsLayout.svelte.d.ts +8 -4
- package/dist/app_layout/README.md +14 -12
- package/dist/app_layout/README_CN.md +14 -12
- package/dist/app_layout/RowsLayout.svelte +14 -10
- package/dist/app_layout/RowsLayout.svelte.d.ts +8 -4
- package/dist/base-calendar/CalendarBase.svelte +4 -10
- package/dist/base-calendar/CalendarBase.svelte.d.ts +0 -4
- package/dist/base-calendar/MonthlyCalendar.svelte +11 -3
- package/dist/base-calendar/MonthlyCalendar.svelte.d.ts +1 -2
- package/dist/base-calendar/YearPickupPanel.svelte +5 -5
- package/dist/base-calendar/YearPickupPanel.svelte.d.ts +2 -2
- package/dist/base-calendar/dateUtils.js +9 -5
- package/dist/composite/pagination_panel/PaginationPanel.svelte +15 -12
- package/dist/composite/pagination_panel/PaginationPanel.svelte.d.ts +8 -5
- package/dist/composite/pagination_panel/README.md +3 -1
- package/dist/composite/pagination_panel/README_CN.md +3 -1
- package/dist/composite/transfer/Transfer.svelte +30 -15
- package/dist/composite/transfer/Transfer.svelte.d.ts +11 -4
- package/dist/composite/transfer/index.d.ts +2 -2
- package/dist/data_display/accordion/Accordion.svelte +10 -9
- package/dist/data_display/accordion/Accordion.svelte.d.ts +2 -1
- package/dist/data_display/accordion/AccordionItemView.svelte +6 -6
- package/dist/data_display/accordion/AccordionItemView.svelte.d.ts +1 -1
- package/dist/data_display/accordion/README.md +6 -4
- package/dist/data_display/accordion/README_CN.md +6 -4
- package/dist/data_display/card/Card.svelte +13 -11
- package/dist/data_display/card/Card.svelte.d.ts +5 -3
- package/dist/data_display/card/CardAction.d.ts +7 -2
- package/dist/data_display/card/CommonCardActionBar.svelte +2 -2
- package/dist/data_display/card/README.md +11 -9
- package/dist/data_display/card/README_CN.md +11 -9
- package/dist/data_display/card/index.d.ts +2 -1
- package/dist/data_display/concise_data_table/Column.d.ts +0 -6
- package/dist/data_display/concise_data_table/ConciseListTable.svelte +6 -5
- package/dist/data_display/concise_data_table/ConciseListTable.svelte.d.ts +4 -3
- package/dist/data_display/concise_data_table/DataCell.svelte +1 -1
- package/dist/data_display/concise_data_table/README.md +7 -5
- package/dist/data_display/concise_data_table/README_CN.md +7 -5
- package/dist/data_display/concise_data_table/TableOptions.d.ts +1 -1
- package/dist/data_display/list_box/ListBox.svelte +11 -15
- package/dist/data_display/list_box/ListBox.svelte.d.ts +6 -9
- package/dist/data_display/list_box/README.md +10 -8
- package/dist/data_display/list_box/README_CN.md +10 -8
- package/dist/data_display/list_box/index.d.ts +2 -3
- package/dist/data_display/tree_view/README.md +4 -2
- package/dist/data_display/tree_view/README_CN.md +4 -2
- package/dist/data_display/tree_view/TreeNodeView.svelte +15 -16
- package/dist/data_display/tree_view/TreeNodeView.svelte.d.ts +4 -5
- package/dist/data_display/tree_view/TreeView.svelte +27 -19
- package/dist/data_display/tree_view/TreeView.svelte.d.ts +12 -4
- package/dist/data_display/tree_view/index.d.ts +2 -3
- package/dist/data_table/DataTable.svelte +15 -14
- package/dist/data_table/DataTable.svelte.d.ts +2 -1
- package/dist/data_table/README.md +10 -8
- package/dist/data_table/README_CN.md +10 -8
- package/dist/data_table/UniDataTable.d.ts +4 -4
- package/dist/data_table/UniDataTable.js +2 -2
- package/dist/data_table/index.d.ts +5 -5
- package/dist/data_table/lib/CellAction.d.ts +9 -0
- package/dist/data_table/lib/CommonHeaderCell.d.ts +2 -2
- package/dist/data_table/lib/CompareFn.d.ts +3 -0
- package/dist/data_table/lib/DataColumn.d.ts +7 -12
- package/dist/data_table/lib/FormatCellFn.d.ts +2 -0
- package/dist/data_table/lib/HrefLink.d.ts +3 -3
- package/dist/data_table/lib/IndicatorColumn.d.ts +2 -1
- package/dist/data_table/lib/RowAction.d.ts +14 -20
- package/dist/data_table/parts/ActionCell.svelte +3 -3
- package/dist/data_table/parts/ActionCell.svelte.d.ts +1 -1
- package/dist/data_table/parts/ActionsRow.svelte +7 -5
- package/dist/data_table/parts/ContentPanel.svelte +14 -14
- package/dist/data_table/parts/ContentPanel.svelte.d.ts +5 -5
- package/dist/data_table/parts/FixedColumnsPanel.svelte +15 -15
- package/dist/data_table/parts/FixedColumnsPanel.svelte.d.ts +4 -4
- package/dist/data_table/parts/FixedHeaderPanel.svelte +13 -13
- package/dist/data_table/parts/FixedHeaderPanel.svelte.d.ts +4 -4
- package/dist/data_table/parts/FixedRow.svelte +9 -9
- package/dist/data_table/parts/FixedRow.svelte.d.ts +3 -3
- package/dist/data_table/parts/HrefCell.svelte +1 -1
- package/dist/data_table/parts/PopupMenu.svelte +3 -3
- package/dist/data_table/parts/PopupMenu.svelte.d.ts +1 -1
- package/dist/data_table/parts/TableHeaderPanel.svelte +14 -14
- package/dist/data_table/parts/TableHeaderPanel.svelte.d.ts +4 -4
- package/dist/data_table/parts/TextCell.svelte +1 -1
- package/dist/feedback/progress-bar/ProgressBar.svelte +13 -10
- package/dist/feedback/progress-bar/ProgressBar.svelte.d.ts +6 -3
- package/dist/form/FormEditor.svelte +2 -2
- package/dist/form/FormEditor.svelte.d.ts +1 -1
- package/dist/form/attachment_files/AttachmentEditor.svelte +407 -92
- package/dist/form/attachment_files/AttachmentEditor.svelte.d.ts +71 -15
- package/dist/form/attachment_files/AttachmentFile.d.ts +35 -8
- package/dist/form/attachment_files/AttachmentFile.js +54 -29
- package/dist/form/attachment_files/AttachmentListItem.svelte +208 -0
- package/dist/form/attachment_files/AttachmentListItem.svelte.d.ts +25 -0
- package/dist/form/attachment_files/AttachmentTile.svelte +296 -0
- package/dist/form/attachment_files/AttachmentTile.svelte.d.ts +25 -0
- package/dist/form/attachment_files/FileUpload.d.ts +2 -2
- package/dist/form/attachment_files/README.md +71 -452
- package/dist/form/attachment_files/README_CN.md +68 -449
- package/dist/form/attachment_files/UploadTask.d.ts +27 -0
- package/dist/form/attachment_files/index.d.ts +8 -5
- package/dist/form/attachment_files/index.js +4 -2
- package/dist/form/cascade_options_select/CascadeOptionSelect.svelte +16 -15
- package/dist/form/cascade_options_select/CascadeOptionSelect.svelte.d.ts +6 -5
- package/dist/form/cascade_options_select/IsLeaf.d.ts +4 -0
- package/dist/form/cascade_options_select/IsLeaf.js +1 -0
- package/dist/form/cascade_options_select/OptionsBox.svelte +4 -4
- package/dist/form/cascade_options_select/OptionsBox.svelte.d.ts +2 -2
- package/dist/form/color_picker/ColorPicker.svelte +3 -3
- package/dist/form/common_editor/BasePicker.svelte +7 -7
- package/dist/form/common_editor/BasePicker.svelte.d.ts +3 -3
- package/dist/form/common_editor/CommonEditor.svelte +8 -8
- package/dist/form/common_editor/CommonEditor.svelte.d.ts +2 -2
- package/dist/form/common_editor/CommonPicker.svelte +43 -31
- package/dist/form/common_editor/CommonPicker.svelte.d.ts +6 -6
- package/dist/form/common_editor/CommonPickerProps.d.ts +2 -2
- package/dist/form/common_editor/CommonPopupEditor.svelte +13 -13
- package/dist/form/common_editor/CommonPopupEditor.svelte.d.ts +3 -4
- package/dist/form/common_editor/NumberInput.svelte +10 -2
- package/dist/form/common_editor/NumberInput.svelte.d.ts +1 -1
- package/dist/form/common_range_editor/CommonRangeEditor.svelte +17 -17
- package/dist/form/common_range_editor/CommonRangeEditor.svelte.d.ts +5 -5
- package/dist/form/date_picker/DatePicker.svelte +5 -5
- package/dist/form/date_picker/DatePicker.svelte.d.ts +1 -1
- package/dist/form/date_picker/DateTimePicker.svelte +15 -5
- package/dist/form/date_picker/README.md +7 -5
- package/dist/form/date_picker/README_CN.md +7 -5
- package/dist/form/date_picker/ScrollBar.svelte +21 -20
- package/dist/form/date_picker/ScrollBar.svelte.d.ts +3 -3
- package/dist/form/date_range/DateRangeEditor.svelte +6 -6
- package/dist/form/events.d.ts +70 -0
- package/dist/form/events.js +6 -0
- package/dist/form/group_box/group-check-box/GroupCheckBox.svelte +9 -7
- package/dist/form/group_box/group-check-box/GroupCheckBox.svelte.d.ts +4 -3
- package/dist/form/group_box/group-check-box/README.md +5 -3
- package/dist/form/group_box/group-check-box/README_CN.md +5 -3
- package/dist/form/group_box/group-radio-box/GroupRadioBox.svelte +9 -7
- package/dist/form/group_box/group-radio-box/GroupRadioBox.svelte.d.ts +4 -3
- package/dist/form/group_box/group-radio-box/README.md +3 -1
- package/dist/form/group_box/group-radio-box/README_CN.md +3 -1
- package/dist/form/image_editor/ImageEditor.svelte +118 -0
- package/dist/form/image_editor/ImageEditor.svelte.d.ts +52 -0
- package/dist/form/image_editor/ImageFile.d.ts +11 -0
- package/dist/form/image_editor/ImageFile.js +1 -0
- package/dist/form/{image-files → image_editor}/ImagePreview.svelte +10 -2
- package/dist/form/image_editor/README.md +89 -0
- package/dist/form/image_editor/README_CN.md +89 -0
- package/dist/form/image_editor/index.d.ts +11 -0
- package/dist/form/image_editor/index.js +4 -0
- package/dist/form/input_options_select/InputOptionsSelect.svelte +11 -8
- package/dist/form/input_options_select/InputOptionsSelect.svelte.d.ts +2 -1
- package/dist/form/input_options_select/README.md +44 -218
- package/dist/form/input_options_select/README_CN.md +38 -211
- package/dist/form/lookup_editor/LookupEditor.svelte +7 -10
- package/dist/form/lookup_editor/LookupEditor.svelte.d.ts +2 -1
- package/dist/form/memo_editor/MemoEditor.svelte +2 -2
- package/dist/form/memo_editor/MemoEditor.svelte.d.ts +1 -1
- package/dist/form/number_editor/NumberEditor.svelte +13 -1
- package/dist/form/number_editor/NumberEditor.svelte.d.ts +1 -1
- package/dist/form/number_range/NumberRange.svelte +5 -5
- package/dist/form/options_multi_select/OptionsMultiSelect.svelte +13 -13
- package/dist/form/options_multi_select/OptionsMultiSelect.svelte.d.ts +3 -2
- package/dist/form/options_multi_select/README.md +5 -3
- package/dist/form/options_multi_select/README_CN.md +5 -3
- package/dist/form/options_select/OptionsSelect.svelte +17 -13
- package/dist/form/options_select/OptionsSelect.svelte.d.ts +2 -1
- package/dist/form/options_select/README.md +9 -7
- package/dist/form/options_select/README_CN.md +8 -6
- package/dist/form/prompts_text_editor/PromptsTextEditor.svelte +6 -5
- package/dist/form/prompts_text_editor/PromptsTextEditor.svelte.d.ts +2 -1
- package/dist/form/prompts_text_editor/README.md +16 -14
- package/dist/form/prompts_text_editor/README_CN.md +16 -14
- package/dist/form/search_box/SearchBox.svelte +3 -2
- package/dist/form/search_box/SearchBox.svelte.d.ts +1 -1
- package/dist/form/switch/README.md +7 -5
- package/dist/form/switch/README_CN.md +7 -5
- package/dist/form/switch/Switch.svelte +7 -5
- package/dist/form/switch/Switch.svelte.d.ts +4 -2
- package/dist/form/text_editor/PasswordEditor.svelte +2 -2
- package/dist/form/text_editor/PasswordEditor.svelte.d.ts +1 -1
- package/dist/form/text_editor/TextEditor.svelte +6 -4
- package/dist/form/text_editor/TextEditor.svelte.d.ts +1 -1
- package/dist/form/time_editor/README.md +4 -2
- package/dist/form/time_editor/README_CN.md +4 -2
- package/dist/form/time_editor/TimeEditor.svelte +10 -7
- package/dist/form/time_editor/TimeEditor.svelte.d.ts +2 -1
- package/dist/form/types.d.ts +5 -42
- package/dist/form/unit-number-editor/README.md +21 -19
- package/dist/form/unit-number-editor/README_CN.md +21 -19
- package/dist/form/unit-number-editor/UnitNumberEditor.svelte +12 -11
- package/dist/form/unit-number-editor/UnitNumberEditor.svelte.d.ts +4 -3
- package/dist/general/button/Button.svelte +4 -1
- package/dist/general/button/Button.svelte.d.ts +3 -1
- package/dist/general/button/IconButton.svelte +11 -5
- package/dist/general/button/IconButton.svelte.d.ts +5 -2
- package/dist/general/button/IconButton_README.md +9 -6
- package/dist/general/button/IconButton_README_CN.md +9 -6
- package/dist/general/button/TextButton.svelte +15 -5
- package/dist/general/button/TextButton.svelte.d.ts +6 -2
- package/dist/general/button/TextButton_README.md +10 -6
- package/dist/general/button/TextButton_README_CN.md +10 -6
- package/dist/general/icon/Icon.svelte +6 -4
- package/dist/general/icon/Icon.svelte.d.ts +3 -2
- package/dist/general/tag/Tag.svelte +8 -4
- package/dist/general/tag/Tag.svelte.d.ts +3 -1
- package/dist/i18nRes/i18nRes.d.ts +5 -1
- package/dist/i18nRes/i18nRes.js +5 -1
- package/dist/layouts/action_bar/ActionBar.svelte +5 -4
- package/dist/layouts/action_bar/ActionBar.svelte.d.ts +2 -1
- package/dist/layouts/action_bar/ButtonAction.d.ts +1 -23
- package/dist/layouts/action_bar/README.md +20 -18
- package/dist/layouts/action_bar/README_CN.md +19 -17
- package/dist/layouts/box/Box.svelte +4 -3
- package/dist/layouts/box/Box.svelte.d.ts +2 -1
- package/dist/layouts/box/README.md +13 -11
- package/dist/layouts/box/README_CN.md +13 -11
- package/dist/layouts/form_field/FormField.svelte +5 -4
- package/dist/layouts/form_field/FormField.svelte.d.ts +3 -2
- package/dist/layouts/form_field/README.md +11 -9
- package/dist/layouts/form_field/README_CN.md +9 -7
- package/dist/layouts/form_panel/flex_row_form/Cell.svelte +3 -1
- package/dist/layouts/form_panel/flex_row_form/Cell.svelte.d.ts +3 -1
- package/dist/layouts/form_panel/flex_row_form/Row.svelte +3 -1
- package/dist/layouts/form_panel/flex_row_form/Row.svelte.d.ts +3 -1
- package/dist/layouts/form_panel/grid_form/GridField.svelte +8 -4
- package/dist/layouts/form_panel/grid_form/GridField.svelte.d.ts +6 -2
- package/dist/layouts/form_panel/grid_form/GridForm.svelte +3 -1
- package/dist/layouts/form_panel/grid_form/GridForm.svelte.d.ts +3 -1
- package/dist/layouts/form_panel/grid_form/README.md +6 -4
- package/dist/layouts/form_panel/grid_form/README_CN.md +6 -4
- package/dist/layouts/page/Page.svelte +7 -7
- package/dist/layouts/page/Page.svelte.d.ts +2 -2
- package/dist/layouts/page/PageHeader.svelte +4 -4
- package/dist/layouts/page/PageHeader.svelte.d.ts +1 -1
- package/dist/layouts/page/README.md +18 -18
- package/dist/layouts/page/README_CN.md +18 -18
- package/dist/navigation/nav_menu/MenuItem.d.ts +1 -1
- package/dist/navigation/nav_menu/NavigatorMenu.svelte +16 -14
- package/dist/navigation/nav_menu/NavigatorMenu.svelte.d.ts +7 -5
- package/dist/navigation/nav_menu/NavigatorMenuItem.svelte +2 -2
- package/dist/navigation/nav_menu/NavigatorMenuItem.svelte.d.ts +2 -2
- package/dist/navigation/nav_menu/README.md +8 -6
- package/dist/navigation/nav_menu/README_CN.md +8 -6
- package/dist/navigation/nav_menu/index.d.ts +2 -2
- package/dist/navigation/navigator/Navigator.svelte +5 -4
- package/dist/navigation/navigator/Navigator.svelte.d.ts +3 -2
- package/dist/navigation/navigator/README.md +12 -10
- package/dist/navigation/navigator/README_CN.md +12 -10
- package/dist/navigation/pagination/Pagination.svelte +23 -15
- package/dist/navigation/pagination/Pagination.svelte.d.ts +6 -4
- package/dist/navigation/progress_step_bar/ProgressStep.d.ts +2 -1
- package/dist/navigation/progress_step_bar/ProgressStepBar.svelte +5 -4
- package/dist/navigation/progress_step_bar/ProgressStepBar.svelte.d.ts +2 -1
- package/dist/navigation/progress_step_bar/ProgressStepBlock.svelte +3 -3
- package/dist/navigation/progress_step_bar/ProgressStepBlock.svelte.d.ts +1 -1
- package/dist/navigation/progress_step_bar/README.md +37 -35
- package/dist/navigation/progress_step_bar/README_CN.md +36 -34
- package/dist/navigation/tabs/Tabs.svelte +14 -5
- package/dist/navigation/tabs/Tabs.svelte.d.ts +11 -4
- package/dist/navigation/tabs/index.d.ts +2 -2
- package/dist/overlay/common/ModalPopover.svelte +5 -4
- package/dist/overlay/common/ModalPopover.svelte.d.ts +2 -1
- package/dist/overlay/common/Popover.svelte +4 -3
- package/dist/overlay/common/Popover.svelte.d.ts +2 -1
- package/dist/overlay/context-menu/ContextMenuItem.d.ts +3 -3
- package/dist/overlay/context-menu/ContextMenuPanel.svelte +4 -4
- package/dist/overlay/context-menu/index.d.ts +2 -2
- package/dist/overlay/dialog/CommonDialog.svelte +16 -12
- package/dist/overlay/dialog/CommonDialog.svelte.d.ts +9 -5
- package/dist/overlay/dialog/Dialog.svelte +25 -19
- package/dist/overlay/dialog/Dialog.svelte.d.ts +11 -5
- package/dist/overlay/dialog/DialogActions.d.ts +1 -1
- package/dist/overlay/dialog/DialogCloseConfirm.d.ts +4 -1
- package/dist/overlay/dialog/DialogCloseConfirm.js +1 -1
- package/dist/overlay/dialog/DialogManager.svelte.js +2 -1
- package/dist/overlay/dialog/README.md +19 -17
- package/dist/overlay/dialog/README_CN.md +19 -17
- package/dist/overlay/dialog/index.d.ts +2 -2
- package/dist/overlay/message-box/IMessageBox.d.ts +4 -4
- package/dist/ticatec-uniface-web.css +38 -12
- package/dist/types.d.ts +38 -46
- package/dist/unifaceContext.d.ts +2 -2
- package/dist/utils/prefixFilter.js +0 -1
- package/docs/NAMING.md +362 -0
- package/docs/NAMING_CN.md +362 -0
- package/docs/components/README.md +16 -14
- package/docs/components/accordion/README.md +13 -2
- package/docs/components/accordion/example.svelte +1 -0
- package/docs/components/action-bar/README.md +4 -4
- package/docs/components/attachment-editor/README.md +224 -0
- package/docs/components/attachment-editor/example.svelte +22 -0
- package/docs/components/box/README.md +1 -1
- package/docs/components/button/README.md +8 -1
- package/docs/components/button/example.svelte +1 -0
- package/docs/components/card/README.md +19 -5
- package/docs/components/cascade-options-select/README.md +11 -5
- package/docs/components/columns-layout/README.md +8 -4
- package/docs/components/columns-layout/example.svelte +4 -0
- package/docs/components/common-dialog/README.md +19 -10
- package/docs/components/common-dialog/example.svelte +2 -1
- package/docs/components/concise-data-table/README.md +18 -29
- package/docs/components/concise-data-table/example.svelte +1 -1
- package/docs/components/context-menu/README.md +5 -5
- package/docs/components/context-menu/example.svelte +1 -1
- package/docs/components/criteria-field/README.md +1 -0
- package/docs/components/criteria-field/example.svelte +1 -0
- package/docs/components/data-table/README.md +63 -40
- package/docs/components/data-table/example.svelte +2 -2
- package/docs/components/date-picker/README.md +1 -1
- package/docs/components/date-time-picker/README.md +1 -1
- package/docs/components/dialog/README.md +21 -14
- package/docs/components/dialog/example.svelte +1 -1
- package/docs/components/form-field/README.md +3 -3
- package/docs/components/grid-form/README.md +15 -5
- package/docs/components/grid-form/example.svelte +1 -1
- package/docs/components/group-check-box/README.md +3 -3
- package/docs/components/group-radio-box/README.md +3 -3
- package/docs/components/icon/README.md +6 -5
- package/docs/components/icon-button/README.md +10 -1
- package/docs/components/icon-button/example.svelte +1 -0
- package/docs/components/image-editor/README.md +262 -0
- package/docs/components/{image-files → image-editor}/example.svelte +5 -3
- package/docs/components/input-options-select/README.md +2 -2
- package/docs/components/list-box/README.md +12 -13
- package/docs/components/list-box/example.svelte +3 -3
- package/docs/components/lookup-editor/README.md +1 -1
- package/docs/components/navigator/README.md +2 -1
- package/docs/components/navigator/example.svelte +1 -0
- package/docs/components/navigator-menu/README.md +24 -21
- package/docs/components/navigator-menu/example.svelte +4 -2
- package/docs/components/options-multi-select/README.md +2 -2
- package/docs/components/options-select/README.md +4 -4
- package/docs/components/page/README.md +2 -2
- package/docs/components/page-stack/README.md +67 -0
- package/docs/components/page-stack/example.svelte +7 -0
- package/docs/components/pagination/README.md +24 -7
- package/docs/components/pagination/example.svelte +5 -2
- package/docs/components/pagination-panel/README.md +25 -10
- package/docs/components/pagination-panel/example.svelte +5 -4
- package/docs/components/password-editor/README.md +128 -0
- package/docs/components/{attachment-files → password-editor}/example.svelte +5 -5
- package/docs/components/progress-bar/README.md +14 -4
- package/docs/components/progress-bar/example.svelte +1 -1
- package/docs/components/progress-step-bar/README.md +16 -7
- package/docs/components/progress-step-bar/example.svelte +5 -1
- package/docs/components/prompts-text-editor/README.md +8 -6
- package/docs/components/prompts-text-editor/example.svelte +0 -1
- package/docs/components/rows-layout/README.md +8 -4
- package/docs/components/rows-layout/example.svelte +4 -0
- package/docs/components/switch/README.md +2 -2
- package/docs/components/tabs/README.md +24 -9
- package/docs/components/tag/README.md +13 -2
- package/docs/components/tag/example.svelte +1 -0
- package/docs/components/text-button/README.md +20 -1
- package/docs/components/text-button/example.svelte +2 -0
- package/docs/components/time-editor/README.md +1 -1
- package/docs/components/transfer/README.md +16 -9
- package/docs/components/tree-view/README.md +29 -13
- package/docs/components/tree-view/example.svelte +2 -1
- package/docs/components/unit-number-editor/README.md +11 -8
- package/docs/components/unit-number-editor/example.svelte +0 -1
- package/package.json +13 -7
- package/dist/data_table/lib/CompareFunction.d.ts +0 -3
- package/dist/data_table/lib/FormatCell.d.ts +0 -2
- package/dist/form/attachment_files/FileRender.svelte +0 -125
- package/dist/form/attachment_files/FileRender.svelte.d.ts +0 -9
- package/dist/form/attachment_files/FileUploadBar.svelte +0 -66
- package/dist/form/attachment_files/FileUploadBar.svelte.d.ts +0 -8
- package/dist/form/attachment_files/FileUploadPanel.svelte +0 -161
- package/dist/form/attachment_files/FileUploadPanel.svelte.d.ts +0 -14
- package/dist/form/attachment_files/UploadFile.d.ts +0 -43
- package/dist/form/attachment_files/UploadFile.js +0 -80
- package/dist/form/cascade_options_select/CascadePanel.svelte +0 -52
- package/dist/form/cascade_options_select/CascadePanel.svelte.d.ts +0 -26
- package/dist/form/cascade_options_select/isLeafDetermine.d.ts +0 -4
- package/dist/form/common_editor/EditorEvents.d.ts +0 -14
- package/dist/form/common_editor/EditorEvents.js +0 -2
- package/dist/form/image-files/ImageFile.d.ts +0 -12
- package/dist/form/image-files/ImageFilesField.svelte +0 -128
- package/dist/form/image-files/ImageFilesField.svelte.d.ts +0 -18
- package/dist/form/image-files/ImageRender.svelte +0 -95
- package/dist/form/image-files/ImageRender.svelte.d.ts +0 -10
- package/dist/form/image-files/README.md +0 -468
- package/dist/form/image-files/README_CN.md +0 -468
- package/dist/form/image-files/index.d.ts +0 -10
- package/dist/form/image-files/index.js +0 -2
- package/docs/components/attachment-files/README.md +0 -332
- package/docs/components/image-files/README.md +0 -174
- /package/dist/data_table/lib/{FormatCell.js → CellAction.js} +0 -0
- /package/dist/data_table/lib/{CompareFunction.js → CompareFn.js} +0 -0
- /package/dist/{form/cascade_options_select/isLeafDetermine.js → data_table/lib/FormatCellFn.js} +0 -0
- /package/dist/form/{image-files/ImageFile.js → attachment_files/UploadTask.js} +0 -0
- /package/dist/form/{image-files → image_editor}/ImagePreview.svelte.d.ts +0 -0
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
import ListBox from "../../data_display/list_box";
|
|
3
3
|
import IconButton from "../../general/button/IconButton.svelte";
|
|
4
4
|
|
|
5
|
-
import type {
|
|
6
|
-
import type {
|
|
5
|
+
import type {FilterFn} from "../../data_display/list_box";
|
|
6
|
+
import type {BeforeTransfer, OnTransfer} from "../../types";
|
|
7
7
|
import i18n, {i18nUtils} from "@ticatec/i18n";
|
|
8
8
|
|
|
9
9
|
|
|
@@ -14,8 +14,15 @@
|
|
|
14
14
|
targetList?: Array<any>;
|
|
15
15
|
targetTitle?: string;
|
|
16
16
|
itemRender?: any;
|
|
17
|
-
filter?:
|
|
18
|
-
|
|
17
|
+
filter?: FilterFn | null;
|
|
18
|
+
/**
|
|
19
|
+
* 移动前的否决钩子:返回 false 阻止移动。
|
|
20
|
+
*/
|
|
21
|
+
beforeTransfer?: BeforeTransfer;
|
|
22
|
+
/**
|
|
23
|
+
* 移动完成后的通知。
|
|
24
|
+
*/
|
|
25
|
+
onchange?: OnTransfer;
|
|
19
26
|
onfocus?: (event: FocusEvent) => void;
|
|
20
27
|
onblur?: (event: FocusEvent) => void;
|
|
21
28
|
footer$style?: string;
|
|
@@ -29,6 +36,7 @@
|
|
|
29
36
|
targetTitle,
|
|
30
37
|
itemRender = null,
|
|
31
38
|
filter = null,
|
|
39
|
+
beforeTransfer,
|
|
32
40
|
onchange,
|
|
33
41
|
onfocus,
|
|
34
42
|
onblur,
|
|
@@ -47,26 +55,33 @@
|
|
|
47
55
|
if (!transferContainer?.contains(event.relatedTarget as Node | null)) onblur?.(event);
|
|
48
56
|
};
|
|
49
57
|
|
|
58
|
+
const allowMove = async (list: Array<any>, direction: "left" | "right"): Promise<boolean> =>
|
|
59
|
+
beforeTransfer == null || (await beforeTransfer(list, direction)) !== false;
|
|
60
|
+
|
|
50
61
|
const moveToTarget = async () => {
|
|
51
|
-
if (sourceSelectedList.length > 0 && await
|
|
52
|
-
|
|
53
|
-
|
|
62
|
+
if (sourceSelectedList.length > 0 && await allowMove(sourceSelectedList, "right")) {
|
|
63
|
+
const moved = sourceSelectedList;
|
|
64
|
+
targetList = [...targetList, ...moved];
|
|
65
|
+
sourceList = sourceList.filter(item => moved.indexOf(item) === -1);
|
|
54
66
|
sourceSelectedList = [];
|
|
67
|
+
onchange?.(moved, "right");
|
|
55
68
|
}
|
|
56
69
|
}
|
|
57
70
|
|
|
58
71
|
const moveToSource = async () => {
|
|
59
|
-
if (targetSelectedList.length > 0 && await
|
|
60
|
-
|
|
61
|
-
|
|
72
|
+
if (targetSelectedList.length > 0 && await allowMove(targetSelectedList, "left")) {
|
|
73
|
+
const moved = targetSelectedList;
|
|
74
|
+
sourceList = [...sourceList, ...moved];
|
|
75
|
+
targetList = targetList.filter(item => moved.indexOf(item) === -1);
|
|
62
76
|
targetSelectedList = [];
|
|
77
|
+
onchange?.(moved, "left");
|
|
63
78
|
}
|
|
64
79
|
}
|
|
65
80
|
</script>
|
|
66
81
|
|
|
67
|
-
<div bind:this={transferContainer} class="uniface-transfer-container" onfocusin={handleFocusIn} onfocusout={handleFocusOut}>
|
|
68
|
-
<ListBox class="list-container" title={sourceTitle} {filter} style="
|
|
69
|
-
bind:
|
|
82
|
+
<div bind:this={transferContainer} class="uniface-transfer-container" {style} onfocusin={handleFocusIn} onfocusout={handleFocusOut}>
|
|
83
|
+
<ListBox class="list-container" title={sourceTitle} {filter} style="grid-column: 1/2" list={sourceList} selectMode="multiple"
|
|
84
|
+
bind:selectedItems={sourceSelectedList} {itemRender}>
|
|
70
85
|
{#snippet footer()}
|
|
71
86
|
<div style={footer$style}>
|
|
72
87
|
<span>{i18nUtils.formatText(i18n.getText('uniface.transfer.selectIndicator'), {
|
|
@@ -84,8 +99,8 @@
|
|
|
84
99
|
<i class="icon_google_navigate_next"></i>
|
|
85
100
|
</IconButton>
|
|
86
101
|
</div>
|
|
87
|
-
<ListBox class="list-container" title={targetTitle} style="
|
|
88
|
-
bind:
|
|
102
|
+
<ListBox class="list-container" title={targetTitle} style="grid-column: 3/4" {filter} list={targetList} selectMode="multiple"
|
|
103
|
+
bind:selectedItems={targetSelectedList} {itemRender}>
|
|
89
104
|
{#snippet footer()}
|
|
90
105
|
<div style={footer$style}>
|
|
91
106
|
<span>{i18nUtils.formatText(i18n.getText('uniface.transfer.selectIndicator'), {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { FilterFn } from "../../data_display/list_box";
|
|
2
|
+
import type { BeforeTransfer, OnTransfer } from "../../types";
|
|
3
3
|
interface Props {
|
|
4
4
|
style?: string;
|
|
5
5
|
sourceList?: Array<any>;
|
|
@@ -7,8 +7,15 @@ interface Props {
|
|
|
7
7
|
targetList?: Array<any>;
|
|
8
8
|
targetTitle?: string;
|
|
9
9
|
itemRender?: any;
|
|
10
|
-
filter?:
|
|
11
|
-
|
|
10
|
+
filter?: FilterFn | null;
|
|
11
|
+
/**
|
|
12
|
+
* 移动前的否决钩子:返回 false 阻止移动。
|
|
13
|
+
*/
|
|
14
|
+
beforeTransfer?: BeforeTransfer;
|
|
15
|
+
/**
|
|
16
|
+
* 移动完成后的通知。
|
|
17
|
+
*/
|
|
18
|
+
onchange?: OnTransfer;
|
|
12
19
|
onfocus?: (event: FocusEvent) => void;
|
|
13
20
|
onblur?: (event: FocusEvent) => void;
|
|
14
21
|
footer$style?: string;
|
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
interface Props {
|
|
7
7
|
style?: string;
|
|
8
8
|
compact?: boolean;
|
|
9
|
-
|
|
9
|
+
/** 折叠项列表 */
|
|
10
|
+
items?: AccordionItem[];
|
|
10
11
|
exclusive?: boolean;
|
|
11
12
|
theme?: string;
|
|
12
13
|
}
|
|
@@ -14,18 +15,18 @@
|
|
|
14
15
|
let {
|
|
15
16
|
style = '',
|
|
16
17
|
compact = false,
|
|
17
|
-
|
|
18
|
+
items = [],
|
|
18
19
|
exclusive = false,
|
|
19
|
-
theme
|
|
20
|
+
theme
|
|
20
21
|
}: Props = $props();
|
|
21
22
|
|
|
22
23
|
let openSet = $state(new Set<AccordionItem>());
|
|
23
24
|
let activeItem = $state<AccordionItem | null>(null);
|
|
24
25
|
|
|
25
26
|
onMount(() => {
|
|
26
|
-
if (exclusive && activeItem == null &&
|
|
27
|
-
activeItem =
|
|
28
|
-
openSet.add(
|
|
27
|
+
if (exclusive && activeItem == null && items.length > 0) {
|
|
28
|
+
activeItem = items[0];
|
|
29
|
+
openSet.add(items[0]);
|
|
29
30
|
}
|
|
30
31
|
});
|
|
31
32
|
|
|
@@ -47,11 +48,11 @@
|
|
|
47
48
|
};
|
|
48
49
|
</script>
|
|
49
50
|
|
|
50
|
-
<div class="uniface-accordion-panel
|
|
51
|
-
{#each
|
|
51
|
+
<div class="uniface-accordion-panel" class:compact {style} data-theme={theme}>
|
|
52
|
+
{#each items as accordion}
|
|
52
53
|
<AccordionItemView
|
|
53
54
|
title={accordion.title}
|
|
54
|
-
|
|
55
|
+
expanded={openSet.has(accordion)}
|
|
55
56
|
{exclusive}
|
|
56
57
|
{compact}
|
|
57
58
|
onclick={handleAccordionClick(accordion)}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
interface Props {
|
|
5
5
|
title: string;
|
|
6
|
-
|
|
6
|
+
expanded?: boolean;
|
|
7
7
|
onclick?: (event: MouseEvent) => void;
|
|
8
8
|
header?: Snippet;
|
|
9
9
|
exclusive?: boolean;
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
let {
|
|
15
15
|
title = '',
|
|
16
|
-
|
|
16
|
+
expanded = false,
|
|
17
17
|
onclick = undefined,
|
|
18
18
|
header = undefined,
|
|
19
19
|
exclusive = false,
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
class:compact
|
|
44
44
|
role="button"
|
|
45
45
|
tabindex="0"
|
|
46
|
-
aria-expanded={
|
|
46
|
+
aria-expanded={expanded}
|
|
47
47
|
onclick={handleClick}
|
|
48
48
|
onkeydown={handleKeyDown}
|
|
49
49
|
>
|
|
@@ -55,16 +55,16 @@
|
|
|
55
55
|
</div>
|
|
56
56
|
<div class="icon">
|
|
57
57
|
{#if exclusive}
|
|
58
|
-
{#if
|
|
58
|
+
{#if expanded}
|
|
59
59
|
<i class="icon_google_folder_open"></i>
|
|
60
60
|
{/if}
|
|
61
61
|
{:else}
|
|
62
|
-
<i class={
|
|
62
|
+
<i class={expanded ? 'icon_google_keyboard_arrow_up' : 'icon_google_keyboard_arrow_down'}></i>
|
|
63
63
|
{/if}
|
|
64
64
|
</div>
|
|
65
65
|
{/if}
|
|
66
66
|
</div>
|
|
67
|
-
{#if
|
|
67
|
+
{#if expanded && children}
|
|
68
68
|
<div class="content" class:compact>
|
|
69
69
|
{@render children()}
|
|
70
70
|
</div>
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# Accordion
|
|
2
2
|
|
|
3
|
+
> **Renamed in 5.1.0**: this document uses the names from the [API Naming Guide](../../../docs/NAMING.md); the old names `accordions` were removed in 5.1.0 (no compatibility aliases are kept).
|
|
4
|
+
|
|
3
5
|
A vertically stacked set of expandable panels. Each panel has a clickable header and a collapsible content area.
|
|
4
6
|
|
|
5
7
|
> Svelte 5 component. Content is passed as **Snippets** (not JSX, not Svelte 4 slots).
|
|
@@ -23,7 +25,7 @@ npm install @ticatec/uniface-element
|
|
|
23
25
|
|
|
24
26
|
| Prop | Type | Default | Description |
|
|
25
27
|
|------|------|---------|-------------|
|
|
26
|
-
| `
|
|
28
|
+
| `items` | `AccordionItem[]` | `[]` | Items to render |
|
|
27
29
|
| `exclusive` | `boolean` | `false` | When `true`, only one panel open at a time. The first item auto-opens on mount. Icon switches to folder/folder-open style |
|
|
28
30
|
| `compact` | `boolean` | `false` | Reduces header and content padding |
|
|
29
31
|
| `style` | `string` | `''` | Inline CSS on the root container |
|
|
@@ -61,7 +63,7 @@ interface AccordionItem {
|
|
|
61
63
|
<div>Content for section 2</div>
|
|
62
64
|
{/snippet}
|
|
63
65
|
|
|
64
|
-
<Accordion
|
|
66
|
+
<Accordion items={items} />
|
|
65
67
|
```
|
|
66
68
|
|
|
67
69
|
> The snippet must be defined at the **top level of the module script** (or passed via a variable) — not inlined inside the array literal. Inline arrow functions returning JSX like `() => <div>...</div>` are not valid Svelte.
|
|
@@ -69,7 +71,7 @@ interface AccordionItem {
|
|
|
69
71
|
### Exclusive mode — single open panel
|
|
70
72
|
|
|
71
73
|
```svelte
|
|
72
|
-
<Accordion
|
|
74
|
+
<Accordion items={items} exclusive />
|
|
73
75
|
```
|
|
74
76
|
|
|
75
77
|
In `exclusive` mode:
|
|
@@ -80,7 +82,7 @@ In `exclusive` mode:
|
|
|
80
82
|
### Compact
|
|
81
83
|
|
|
82
84
|
```svelte
|
|
83
|
-
<Accordion
|
|
85
|
+
<Accordion items={items} compact style="max-width: 600px; margin: 0 auto;" />
|
|
84
86
|
```
|
|
85
87
|
|
|
86
88
|
## Styling
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# Accordion 手风琴
|
|
2
2
|
|
|
3
|
+
> **5.1.0 重命名**:本文使用 [API 命名规范](../../../docs/NAMING_CN.md) 中的名字;旧名 `accordions` 已在 5.1.0 移除(5.1.0 不保留兼容别名)。
|
|
4
|
+
|
|
3
5
|
一组垂直堆叠、可展开/折叠的面板。每个面板有可点击的标题和可折叠的内容区。
|
|
4
6
|
|
|
5
7
|
> Svelte 5 组件。内容通过 **Snippet** 传入(不是 JSX,也不是 Svelte 4 slot)。
|
|
@@ -23,7 +25,7 @@ npm install @ticatec/uniface-element
|
|
|
23
25
|
|
|
24
26
|
| 属性 | 类型 | 默认值 | 描述 |
|
|
25
27
|
|------|------|--------|------|
|
|
26
|
-
| `
|
|
28
|
+
| `items` | `AccordionItem[]` | `[]` | 要渲染的项 |
|
|
27
29
|
| `exclusive` | `boolean` | `false` | 为 `true` 时同一时刻只能展开一个面板,第一项在挂载时自动展开,图标改为 文件夹/打开文件夹 样式 |
|
|
28
30
|
| `compact` | `boolean` | `false` | 缩小标题和内容的内边距 |
|
|
29
31
|
| `style` | `string` | `''` | 根容器的内联 CSS |
|
|
@@ -61,7 +63,7 @@ interface AccordionItem {
|
|
|
61
63
|
<div>第二部分的内容</div>
|
|
62
64
|
{/snippet}
|
|
63
65
|
|
|
64
|
-
<Accordion
|
|
66
|
+
<Accordion items={items} />
|
|
65
67
|
```
|
|
66
68
|
|
|
67
69
|
> snippet 必须定义在 **模块顶层**(或通过变量传入),不能在数组字面量里直接写 `() => <div>...</div>` —— 那不是合法的 Svelte 语法。
|
|
@@ -69,7 +71,7 @@ interface AccordionItem {
|
|
|
69
71
|
### exclusive 模式 —— 只展开一个
|
|
70
72
|
|
|
71
73
|
```svelte
|
|
72
|
-
<Accordion
|
|
74
|
+
<Accordion items={items} exclusive />
|
|
73
75
|
```
|
|
74
76
|
|
|
75
77
|
`exclusive` 模式下:
|
|
@@ -80,7 +82,7 @@ interface AccordionItem {
|
|
|
80
82
|
### 紧凑
|
|
81
83
|
|
|
82
84
|
```svelte
|
|
83
|
-
<Accordion
|
|
85
|
+
<Accordion items={items} compact style="max-width: 600px; margin: 0 auto;" />
|
|
84
86
|
```
|
|
85
87
|
|
|
86
88
|
## 样式定制
|
|
@@ -11,14 +11,16 @@
|
|
|
11
11
|
actions?: Array<CardAction>;
|
|
12
12
|
variant?: 'plain' | '3d';
|
|
13
13
|
data?: any;
|
|
14
|
-
|
|
14
|
+
header?: Snippet;
|
|
15
15
|
children?: Snippet;
|
|
16
16
|
theme?: string;
|
|
17
17
|
/** 操作栏图标排布方式,默认 'distribute'(按数量平分宽度、每个居中,不会被拉到两端) */
|
|
18
|
-
|
|
18
|
+
/** 动作栏对齐方式 */
|
|
19
|
+
actions$align?: CardActionsAlign;
|
|
19
20
|
/** 'center'/'left'/'right' 模式下相邻图标的固定间距,例如 '16px' */
|
|
20
21
|
actionsGap?: string;
|
|
21
|
-
|
|
22
|
+
/** 内容区内联样式 */
|
|
23
|
+
content$style?: string;
|
|
22
24
|
}
|
|
23
25
|
|
|
24
26
|
let {
|
|
@@ -27,12 +29,12 @@
|
|
|
27
29
|
actions = [],
|
|
28
30
|
variant = 'plain',
|
|
29
31
|
data = null,
|
|
30
|
-
|
|
32
|
+
header,
|
|
31
33
|
children,
|
|
32
|
-
theme
|
|
33
|
-
|
|
34
|
+
theme,
|
|
35
|
+
actions$align = 'distribute',
|
|
34
36
|
actionsGap,
|
|
35
|
-
|
|
37
|
+
content$style = '',
|
|
36
38
|
}: Props = $props();
|
|
37
39
|
</script>
|
|
38
40
|
|
|
@@ -42,18 +44,18 @@
|
|
|
42
44
|
<div class="card-header">
|
|
43
45
|
<CardHeader {title}/>
|
|
44
46
|
</div>
|
|
45
|
-
{:else if
|
|
47
|
+
{:else if header}
|
|
46
48
|
<div class="card-header">
|
|
47
|
-
{@render
|
|
49
|
+
{@render header()}
|
|
48
50
|
</div>
|
|
49
51
|
{/if}
|
|
50
|
-
<div class="card-content" style={
|
|
52
|
+
<div class="card-content" style={content$style}>
|
|
51
53
|
{#if children}
|
|
52
54
|
{@render children()}
|
|
53
55
|
{/if}
|
|
54
56
|
</div>
|
|
55
57
|
{#if actions && actions.length > 0}
|
|
56
|
-
<CommonCardActionBar {actions} {data} align={
|
|
58
|
+
<CommonCardActionBar {actions} {data} align={actions$align} gap={actionsGap}/>
|
|
57
59
|
{/if}
|
|
58
60
|
</div>
|
|
59
61
|
</div>
|
|
@@ -7,14 +7,16 @@ interface Props {
|
|
|
7
7
|
actions?: Array<CardAction>;
|
|
8
8
|
variant?: 'plain' | '3d';
|
|
9
9
|
data?: any;
|
|
10
|
-
|
|
10
|
+
header?: Snippet;
|
|
11
11
|
children?: Snippet;
|
|
12
12
|
theme?: string;
|
|
13
13
|
/** 操作栏图标排布方式,默认 'distribute'(按数量平分宽度、每个居中,不会被拉到两端) */
|
|
14
|
-
|
|
14
|
+
/** 动作栏对齐方式 */
|
|
15
|
+
actions$align?: CardActionsAlign;
|
|
15
16
|
/** 'center'/'left'/'right' 模式下相邻图标的固定间距,例如 '16px' */
|
|
16
17
|
actionsGap?: string;
|
|
17
|
-
|
|
18
|
+
/** 内容区内联样式 */
|
|
19
|
+
content$style?: string;
|
|
18
20
|
}
|
|
19
21
|
declare const Card: import("svelte").Component<Props, {}, "">;
|
|
20
22
|
type Card = ReturnType<typeof Card>;
|
|
@@ -1,5 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
import type { ActionHandler } from "../../types";
|
|
2
|
+
export type { ActionHandler };
|
|
2
3
|
export default interface CardAction {
|
|
4
|
+
/**
|
|
5
|
+
* 显示文字(图标动作可省略,用 tooltip 说明)
|
|
6
|
+
*/
|
|
7
|
+
label?: string;
|
|
3
8
|
/**
|
|
4
9
|
* 使用icon字体
|
|
5
10
|
*/
|
|
@@ -19,7 +24,7 @@ export default interface CardAction {
|
|
|
19
24
|
/**
|
|
20
25
|
*
|
|
21
26
|
*/
|
|
22
|
-
|
|
27
|
+
handler: ActionHandler;
|
|
23
28
|
}
|
|
24
29
|
/**
|
|
25
30
|
* 操作栏图标的排布方式:
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
actions,
|
|
19
19
|
color = null,
|
|
20
20
|
data,
|
|
21
|
-
theme
|
|
21
|
+
theme,
|
|
22
22
|
align = 'distribute',
|
|
23
23
|
gap
|
|
24
24
|
}: Props = $props();
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
const handleActionClick = (action: CardAction) => async (e: MouseEvent) => {
|
|
31
31
|
if (clickEnable && !action.disabled) {
|
|
32
32
|
clickEnable = false;
|
|
33
|
-
action.
|
|
33
|
+
action.handler?.(data);
|
|
34
34
|
await utils.sleep(0.5);
|
|
35
35
|
clickEnable = true;
|
|
36
36
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
# Card
|
|
2
2
|
|
|
3
|
+
> **Renamed in 5.1.0**: this document uses the names from the [API Naming Guide](../../../docs/NAMING.md); the old names `actionsAlign`, `contentStyle` were removed in 5.1.0 (no compatibility aliases are kept).
|
|
4
|
+
|
|
3
5
|
A content container with optional title bar (or custom header snippet), body, and an action bar at the bottom.
|
|
4
6
|
|
|
5
|
-
> Svelte 5 component. Custom header is passed as the `
|
|
7
|
+
> Svelte 5 component. Custom header is passed as the `header` snippet; body content is the default children.
|
|
6
8
|
|
|
7
9
|
## Installation
|
|
8
10
|
|
|
@@ -23,15 +25,15 @@ npm install @ticatec/uniface-element
|
|
|
23
25
|
|
|
24
26
|
| Prop | Type | Default | Description |
|
|
25
27
|
|------|------|---------|-------------|
|
|
26
|
-
| `title` | `string` | `''` | Plain-text title rendered by `CardHeader`. Single-line, truncated with an ellipsis (native tooltip shows the full text) when it overflows. If empty and `
|
|
27
|
-
| `
|
|
28
|
+
| `title` | `string` | `''` | Plain-text title rendered by `CardHeader`. Single-line, truncated with an ellipsis (native tooltip shows the full text) when it overflows. If empty and `header` is provided, the custom snippet is used instead |
|
|
29
|
+
| `header` | `Snippet` | `undefined` | Custom header content (takes over when `title` is empty) |
|
|
28
30
|
| `actions` | `CardAction[]` | `[]` | Action bar items rendered at the bottom. Empty array → no footer |
|
|
29
31
|
| `data` | `any` | `null` | Passed as the argument to each action's `callback(data)` |
|
|
30
|
-
| `
|
|
32
|
+
| `actions$align` | `'distribute' \| 'center' \| 'left' \| 'right'` | `'distribute'` | How action icons are laid out — see below |
|
|
31
33
|
| `actionsGap` | `string` | `undefined` | Fixed spacing between icons for `'center'`/`'left'`/`'right'` (e.g. `'16px'`); falls back to `--uniface-spacing-actionbar` |
|
|
32
34
|
| `variant` | `'plain' \| '3d'` | `'plain'` | `'3d'` adds a box-shadow to lift the card |
|
|
33
35
|
| `style` | `string` | `''` | Inline CSS on the root |
|
|
34
|
-
| `
|
|
36
|
+
| `content$style` | `string` | `''` | Inline CSS on the body wrapper (`.card-content`) |
|
|
35
37
|
| `theme` | `string` | `''` | Theme value, exposed as `data-theme` on the root for scoped CSS |
|
|
36
38
|
| `children` | `Snippet` | `undefined` | Card body |
|
|
37
39
|
|
|
@@ -62,11 +64,11 @@ interface CardAction {
|
|
|
62
64
|
### Custom header snippet
|
|
63
65
|
|
|
64
66
|
```svelte
|
|
65
|
-
<Card {
|
|
67
|
+
<Card {header}>
|
|
66
68
|
<p>Body</p>
|
|
67
69
|
</Card>
|
|
68
70
|
|
|
69
|
-
{#snippet
|
|
71
|
+
{#snippet header()}
|
|
70
72
|
<header style="display:flex; align-items:center; gap:8px;">
|
|
71
73
|
<i class="icon_google_star"></i>
|
|
72
74
|
<strong>Custom title</strong>
|
|
@@ -97,13 +99,13 @@ interface CardAction {
|
|
|
97
99
|
|
|
98
100
|
### Action bar layout
|
|
99
101
|
|
|
100
|
-
With few actions, `justify-content: space-between` (the old, fixed behavior) pushes them to opposite edges — two icons end up one at the far left, one at the far right. `
|
|
102
|
+
With few actions, `justify-content: space-between` (the old, fixed behavior) pushes them to opposite edges — two icons end up one at the far left, one at the far right. `actions$align` controls this:
|
|
101
103
|
|
|
102
104
|
- `'distribute'` (default) — the row is split into as many equal-width slots as there are actions, each icon centered in its own slot. Equivalent to `justify-content: space-around`; icons never get pushed all the way to the edges regardless of count.
|
|
103
105
|
- `'center'` / `'left'` / `'right'` — icons keep a fixed gap (`actionsGap`, default `--uniface-spacing-actionbar`) and the whole group is aligned as a block within the footer.
|
|
104
106
|
|
|
105
107
|
```svelte
|
|
106
|
-
<Card title="Item Details" {actions} data={cardData}
|
|
108
|
+
<Card title="Item Details" {actions} data={cardData} actions$align="center" actionsGap="24px">
|
|
107
109
|
...
|
|
108
110
|
</Card>
|
|
109
111
|
```
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
# Card 卡片
|
|
2
2
|
|
|
3
|
+
> **5.1.0 重命名**:本文使用 [API 命名规范](../../../docs/NAMING_CN.md) 中的名字;旧名 `actionsAlign`, `contentStyle` 已在 5.1.0 移除(5.1.0 不保留兼容别名)。
|
|
4
|
+
|
|
3
5
|
内容容器,可选标题栏(或自定义 header snippet)、内容体,以及底部操作栏。
|
|
4
6
|
|
|
5
|
-
> Svelte 5 组件。自定义标题通过 `
|
|
7
|
+
> Svelte 5 组件。自定义标题通过 `header` snippet 传入;内容体就是默认的 children。
|
|
6
8
|
|
|
7
9
|
## 安装
|
|
8
10
|
|
|
@@ -23,15 +25,15 @@ npm install @ticatec/uniface-element
|
|
|
23
25
|
|
|
24
26
|
| 属性 | 类型 | 默认值 | 描述 |
|
|
25
27
|
|------|------|--------|------|
|
|
26
|
-
| `title` | `string` | `''` | 纯文本标题,由 `CardHeader` 渲染。默认单行显示,超出宽度会用省略号截断(原生 tooltip 显示完整文字)。为空且传了 `
|
|
27
|
-
| `
|
|
28
|
+
| `title` | `string` | `''` | 纯文本标题,由 `CardHeader` 渲染。默认单行显示,超出宽度会用省略号截断(原生 tooltip 显示完整文字)。为空且传了 `header` 时改用自定义 snippet |
|
|
29
|
+
| `header` | `Snippet` | `undefined` | 自定义标题内容(`title` 为空时生效) |
|
|
28
30
|
| `actions` | `CardAction[]` | `[]` | 底部操作栏。空数组 → 不渲染底栏 |
|
|
29
31
|
| `data` | `any` | `null` | 作为参数传给每个 action 的 `callback(data)` |
|
|
30
|
-
| `
|
|
32
|
+
| `actions$align` | `'distribute' \| 'center' \| 'left' \| 'right'` | `'distribute'` | 操作图标的排布方式,见下文 |
|
|
31
33
|
| `actionsGap` | `string` | `undefined` | `'center'`/`'left'`/`'right'` 模式下图标之间的固定间距(比如 `'16px'`),不设则回退到 `--uniface-spacing-actionbar` |
|
|
32
34
|
| `variant` | `'plain' \| '3d'` | `'plain'` | `'3d'` 加盒阴影让卡片浮起来 |
|
|
33
35
|
| `style` | `string` | `''` | 根节点的内联 CSS |
|
|
34
|
-
| `
|
|
36
|
+
| `content$style` | `string` | `''` | 内容区域包裹层(`.card-content`)的内联 CSS |
|
|
35
37
|
| `theme` | `string` | `''` | 主题值,作为 `data-theme` 写到根节点上方便做作用域 CSS |
|
|
36
38
|
| `children` | `Snippet` | `undefined` | 卡片内容体 |
|
|
37
39
|
|
|
@@ -62,11 +64,11 @@ interface CardAction {
|
|
|
62
64
|
### 自定义 header snippet
|
|
63
65
|
|
|
64
66
|
```svelte
|
|
65
|
-
<Card {
|
|
67
|
+
<Card {header}>
|
|
66
68
|
<p>内容</p>
|
|
67
69
|
</Card>
|
|
68
70
|
|
|
69
|
-
{#snippet
|
|
71
|
+
{#snippet header()}
|
|
70
72
|
<header style="display:flex; align-items:center; gap:8px;">
|
|
71
73
|
<i class="icon_google_star"></i>
|
|
72
74
|
<strong>自定义标题</strong>
|
|
@@ -97,13 +99,13 @@ interface CardAction {
|
|
|
97
99
|
|
|
98
100
|
### 操作栏排布方式
|
|
99
101
|
|
|
100
|
-
当图标数量比较少时,`justify-content: space-between`(旧的固定行为)会把它们推到两端 —— 两个图标就变成一个在最左,一个在最右。`
|
|
102
|
+
当图标数量比较少时,`justify-content: space-between`(旧的固定行为)会把它们推到两端 —— 两个图标就变成一个在最左,一个在最右。`actions$align` 用来控制这个行为:
|
|
101
103
|
|
|
102
104
|
- `'distribute'`(默认)—— 把整行按图标数量平分成若干等宽格子,每个图标在自己的格子里居中。等价于 `justify-content: space-around`;不管图标数量多少,都不会被拉到两端。
|
|
103
105
|
- `'center'` / `'left'` / `'right'` —— 图标之间保持固定间距(`actionsGap`,默认回退到 `--uniface-spacing-actionbar`),整组图标作为一个整体在底栏里居中 / 左对齐 / 右对齐。
|
|
104
106
|
|
|
105
107
|
```svelte
|
|
106
|
-
<Card title="项目详情" {actions} data={cardData}
|
|
108
|
+
<Card title="项目详情" {actions} data={cardData} actions$align="center" actionsGap="24px">
|
|
107
109
|
...
|
|
108
110
|
</Card>
|
|
109
111
|
```
|
|
@@ -6,10 +6,4 @@ export default interface Column {
|
|
|
6
6
|
weight?: number;
|
|
7
7
|
formatter?: (value: any) => string;
|
|
8
8
|
renderHTML?: boolean;
|
|
9
|
-
/**
|
|
10
|
-
* @deprecated Use renderHTML instead; "escapeHTML" reads as "this escapes HTML"
|
|
11
|
-
* when it actually means the opposite — true renders raw, trusted HTML. Still
|
|
12
|
-
* honored as a fallback for existing callers.
|
|
13
|
-
*/
|
|
14
|
-
escapeHTML?: boolean;
|
|
15
9
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import {onMount, tick} from 'svelte';
|
|
3
3
|
import DataRow from "./DataRow.svelte";
|
|
4
|
-
import {type
|
|
4
|
+
import {type OnRowClick, type TableOptions} from "./TableOptions";
|
|
5
5
|
import utils from "./utils";
|
|
6
6
|
import type Column from "./Column";
|
|
7
7
|
|
|
@@ -10,7 +10,8 @@
|
|
|
10
10
|
columns: Array<Column>;
|
|
11
11
|
autoScroll?: boolean;
|
|
12
12
|
scrollInterval?: number;
|
|
13
|
-
|
|
13
|
+
/** 行点击回调 */
|
|
14
|
+
onRowClick?: OnRowClick | null;
|
|
14
15
|
options?: TableOptions;
|
|
15
16
|
style?: string;
|
|
16
17
|
class?: string;
|
|
@@ -23,7 +24,7 @@
|
|
|
23
24
|
columns,
|
|
24
25
|
autoScroll = false,
|
|
25
26
|
scrollInterval = 2000,
|
|
26
|
-
|
|
27
|
+
onRowClick = null,
|
|
27
28
|
options = {},
|
|
28
29
|
style = '',
|
|
29
30
|
class: className = '',
|
|
@@ -122,7 +123,7 @@
|
|
|
122
123
|
});
|
|
123
124
|
|
|
124
125
|
const handleRowClick = (row: any) => () => {
|
|
125
|
-
|
|
126
|
+
onRowClick?.(row);
|
|
126
127
|
}
|
|
127
128
|
|
|
128
129
|
const handleTableFocus = (event: FocusEvent) => {
|
|
@@ -133,7 +134,7 @@
|
|
|
133
134
|
onblur?.(event);
|
|
134
135
|
}
|
|
135
136
|
|
|
136
|
-
export function
|
|
137
|
+
export function focus() {
|
|
137
138
|
const firstRow = tableContainer?.querySelector('.table-body .table-row');
|
|
138
139
|
if (firstRow) {
|
|
139
140
|
setTimeout(() => {
|