@ticatec/uniface-element 5.0.4 → 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.
Files changed (411) hide show
  1. package/README.md +14 -13
  2. package/README_CN.md +17 -15
  3. package/dist/app_layout/ColumnsLayout.svelte +14 -10
  4. package/dist/app_layout/ColumnsLayout.svelte.d.ts +8 -4
  5. package/dist/app_layout/README.md +14 -12
  6. package/dist/app_layout/README_CN.md +14 -12
  7. package/dist/app_layout/RowsLayout.svelte +14 -10
  8. package/dist/app_layout/RowsLayout.svelte.d.ts +8 -4
  9. package/dist/base-calendar/CalendarBase.svelte +4 -10
  10. package/dist/base-calendar/CalendarBase.svelte.d.ts +0 -4
  11. package/dist/base-calendar/DateContext.d.ts +1 -0
  12. package/dist/base-calendar/DateContext.js +5 -8
  13. package/dist/base-calendar/MonthlyCalendar.svelte +11 -3
  14. package/dist/base-calendar/MonthlyCalendar.svelte.d.ts +1 -2
  15. package/dist/base-calendar/YearPickupPanel.svelte +5 -5
  16. package/dist/base-calendar/YearPickupPanel.svelte.d.ts +2 -2
  17. package/dist/base-calendar/dateUtils.js +9 -5
  18. package/dist/composite/pagination_panel/PaginationPanel.svelte +19 -13
  19. package/dist/composite/pagination_panel/PaginationPanel.svelte.d.ts +8 -5
  20. package/dist/composite/pagination_panel/README.md +3 -1
  21. package/dist/composite/pagination_panel/README_CN.md +3 -1
  22. package/dist/composite/transfer/Transfer.svelte +30 -16
  23. package/dist/composite/transfer/Transfer.svelte.d.ts +11 -4
  24. package/dist/composite/transfer/index.d.ts +2 -2
  25. package/dist/data_display/accordion/Accordion.svelte +10 -9
  26. package/dist/data_display/accordion/Accordion.svelte.d.ts +2 -1
  27. package/dist/data_display/accordion/AccordionItemView.svelte +6 -6
  28. package/dist/data_display/accordion/AccordionItemView.svelte.d.ts +1 -1
  29. package/dist/data_display/accordion/README.md +6 -4
  30. package/dist/data_display/accordion/README_CN.md +6 -4
  31. package/dist/data_display/card/Card.svelte +13 -11
  32. package/dist/data_display/card/Card.svelte.d.ts +5 -3
  33. package/dist/data_display/card/CardAction.d.ts +7 -2
  34. package/dist/data_display/card/CommonCardActionBar.svelte +2 -2
  35. package/dist/data_display/card/README.md +11 -9
  36. package/dist/data_display/card/README_CN.md +11 -9
  37. package/dist/data_display/card/index.d.ts +2 -1
  38. package/dist/data_display/concise_data_table/Column.d.ts +0 -6
  39. package/dist/data_display/concise_data_table/ConciseListTable.svelte +6 -5
  40. package/dist/data_display/concise_data_table/ConciseListTable.svelte.d.ts +4 -3
  41. package/dist/data_display/concise_data_table/DataCell.svelte +1 -1
  42. package/dist/data_display/concise_data_table/README.md +7 -5
  43. package/dist/data_display/concise_data_table/README_CN.md +7 -5
  44. package/dist/data_display/concise_data_table/TableOptions.d.ts +1 -1
  45. package/dist/data_display/list_box/ListBox.svelte +11 -15
  46. package/dist/data_display/list_box/ListBox.svelte.d.ts +6 -9
  47. package/dist/data_display/list_box/README.md +10 -8
  48. package/dist/data_display/list_box/README_CN.md +10 -8
  49. package/dist/data_display/list_box/index.d.ts +2 -3
  50. package/dist/data_display/tree_view/README.md +4 -2
  51. package/dist/data_display/tree_view/README_CN.md +4 -2
  52. package/dist/data_display/tree_view/TreeNodeView.svelte +15 -16
  53. package/dist/data_display/tree_view/TreeNodeView.svelte.d.ts +4 -5
  54. package/dist/data_display/tree_view/TreeView.svelte +27 -19
  55. package/dist/data_display/tree_view/TreeView.svelte.d.ts +12 -4
  56. package/dist/data_display/tree_view/index.d.ts +2 -3
  57. package/dist/data_table/DataTable.svelte +46 -15
  58. package/dist/data_table/DataTable.svelte.d.ts +9 -1
  59. package/dist/data_table/README.md +10 -8
  60. package/dist/data_table/README_CN.md +10 -8
  61. package/dist/data_table/UniDataTable.d.ts +4 -4
  62. package/dist/data_table/UniDataTable.js +2 -2
  63. package/dist/data_table/index.d.ts +5 -5
  64. package/dist/data_table/lib/CellAction.d.ts +9 -0
  65. package/dist/data_table/lib/CommonHeaderCell.d.ts +2 -2
  66. package/dist/data_table/lib/CompareFn.d.ts +3 -0
  67. package/dist/data_table/lib/DataColumn.d.ts +7 -12
  68. package/dist/data_table/lib/FormatCellFn.d.ts +2 -0
  69. package/dist/data_table/lib/HrefLink.d.ts +3 -3
  70. package/dist/data_table/lib/IndicatorColumn.d.ts +2 -1
  71. package/dist/data_table/lib/RowAction.d.ts +14 -20
  72. package/dist/data_table/lib/virtualWindow.d.ts +37 -0
  73. package/dist/data_table/lib/virtualWindow.js +41 -0
  74. package/dist/data_table/parts/ActionCell.svelte +3 -3
  75. package/dist/data_table/parts/ActionCell.svelte.d.ts +1 -1
  76. package/dist/data_table/parts/ActionsPanel.svelte +17 -2
  77. package/dist/data_table/parts/ActionsPanel.svelte.d.ts +3 -0
  78. package/dist/data_table/parts/ActionsRow.svelte +7 -5
  79. package/dist/data_table/parts/ContentPanel.svelte +40 -15
  80. package/dist/data_table/parts/ContentPanel.svelte.d.ts +11 -6
  81. package/dist/data_table/parts/FixedColumnsPanel.svelte +32 -16
  82. package/dist/data_table/parts/FixedColumnsPanel.svelte.d.ts +8 -5
  83. package/dist/data_table/parts/FixedHeaderPanel.svelte +14 -15
  84. package/dist/data_table/parts/FixedHeaderPanel.svelte.d.ts +4 -4
  85. package/dist/data_table/parts/FixedRow.svelte +9 -9
  86. package/dist/data_table/parts/FixedRow.svelte.d.ts +3 -3
  87. package/dist/data_table/parts/HrefCell.svelte +1 -1
  88. package/dist/data_table/parts/PopupMenu.svelte +3 -3
  89. package/dist/data_table/parts/PopupMenu.svelte.d.ts +1 -1
  90. package/dist/data_table/parts/TableHeaderPanel.svelte +14 -14
  91. package/dist/data_table/parts/TableHeaderPanel.svelte.d.ts +4 -4
  92. package/dist/data_table/parts/TextCell.svelte +1 -1
  93. package/dist/feedback/progress-bar/ProgressBar.svelte +13 -10
  94. package/dist/feedback/progress-bar/ProgressBar.svelte.d.ts +6 -3
  95. package/dist/form/FormEditor.svelte +2 -2
  96. package/dist/form/FormEditor.svelte.d.ts +1 -1
  97. package/dist/form/attachment_files/AttachmentEditor.svelte +407 -92
  98. package/dist/form/attachment_files/AttachmentEditor.svelte.d.ts +71 -15
  99. package/dist/form/attachment_files/AttachmentFile.d.ts +35 -8
  100. package/dist/form/attachment_files/AttachmentFile.js +54 -29
  101. package/dist/form/attachment_files/AttachmentListItem.svelte +208 -0
  102. package/dist/form/attachment_files/AttachmentListItem.svelte.d.ts +25 -0
  103. package/dist/form/attachment_files/AttachmentTile.svelte +296 -0
  104. package/dist/form/attachment_files/AttachmentTile.svelte.d.ts +25 -0
  105. package/dist/form/attachment_files/FileUpload.d.ts +2 -2
  106. package/dist/form/attachment_files/README.md +71 -452
  107. package/dist/form/attachment_files/README_CN.md +68 -449
  108. package/dist/form/attachment_files/UploadTask.d.ts +27 -0
  109. package/dist/form/attachment_files/index.d.ts +8 -5
  110. package/dist/form/attachment_files/index.js +4 -2
  111. package/dist/form/cascade_options_select/CascadeOptionSelect.svelte +16 -15
  112. package/dist/form/cascade_options_select/CascadeOptionSelect.svelte.d.ts +6 -5
  113. package/dist/form/cascade_options_select/IsLeaf.d.ts +4 -0
  114. package/dist/form/cascade_options_select/IsLeaf.js +1 -0
  115. package/dist/form/cascade_options_select/OptionsBox.svelte +4 -4
  116. package/dist/form/cascade_options_select/OptionsBox.svelte.d.ts +2 -2
  117. package/dist/form/color_picker/ColorPicker.svelte +3 -3
  118. package/dist/form/color_picker/ColorPickerPanel.svelte +1 -1
  119. package/dist/form/common_editor/BasePicker.svelte +7 -7
  120. package/dist/form/common_editor/BasePicker.svelte.d.ts +3 -3
  121. package/dist/form/common_editor/CommonEditor.svelte +8 -8
  122. package/dist/form/common_editor/CommonEditor.svelte.d.ts +2 -2
  123. package/dist/form/common_editor/CommonPicker.svelte +43 -31
  124. package/dist/form/common_editor/CommonPicker.svelte.d.ts +6 -6
  125. package/dist/form/common_editor/CommonPickerProps.d.ts +2 -2
  126. package/dist/form/common_editor/CommonPopupEditor.svelte +13 -13
  127. package/dist/form/common_editor/CommonPopupEditor.svelte.d.ts +3 -4
  128. package/dist/form/common_editor/NumberInput.svelte +10 -2
  129. package/dist/form/common_editor/NumberInput.svelte.d.ts +1 -1
  130. package/dist/form/common_range_editor/CommonRangeEditor.svelte +17 -17
  131. package/dist/form/common_range_editor/CommonRangeEditor.svelte.d.ts +5 -5
  132. package/dist/form/date_picker/DatePicker.svelte +5 -5
  133. package/dist/form/date_picker/DatePicker.svelte.d.ts +1 -1
  134. package/dist/form/date_picker/DateTimePicker.svelte +16 -6
  135. package/dist/form/date_picker/README.md +7 -5
  136. package/dist/form/date_picker/README_CN.md +7 -5
  137. package/dist/form/date_picker/ScrollBar.svelte +21 -20
  138. package/dist/form/date_picker/ScrollBar.svelte.d.ts +3 -3
  139. package/dist/form/date_range/DateRangeEditor.svelte +6 -6
  140. package/dist/form/events.d.ts +70 -0
  141. package/dist/form/events.js +6 -0
  142. package/dist/form/group_box/group-check-box/GroupCheckBox.svelte +9 -7
  143. package/dist/form/group_box/group-check-box/GroupCheckBox.svelte.d.ts +4 -3
  144. package/dist/form/group_box/group-check-box/README.md +5 -3
  145. package/dist/form/group_box/group-check-box/README_CN.md +5 -3
  146. package/dist/form/group_box/group-radio-box/GroupRadioBox.svelte +9 -7
  147. package/dist/form/group_box/group-radio-box/GroupRadioBox.svelte.d.ts +4 -3
  148. package/dist/form/group_box/group-radio-box/README.md +3 -1
  149. package/dist/form/group_box/group-radio-box/README_CN.md +3 -1
  150. package/dist/form/image_editor/ImageEditor.svelte +118 -0
  151. package/dist/form/image_editor/ImageEditor.svelte.d.ts +52 -0
  152. package/dist/form/image_editor/ImageFile.d.ts +11 -0
  153. package/dist/form/image_editor/ImageFile.js +1 -0
  154. package/dist/form/{image-files → image_editor}/ImagePreview.svelte +10 -2
  155. package/dist/form/image_editor/README.md +89 -0
  156. package/dist/form/image_editor/README_CN.md +89 -0
  157. package/dist/form/image_editor/index.d.ts +11 -0
  158. package/dist/form/image_editor/index.js +4 -0
  159. package/dist/form/input_options_select/InputOptionsSelect.svelte +11 -8
  160. package/dist/form/input_options_select/InputOptionsSelect.svelte.d.ts +2 -1
  161. package/dist/form/input_options_select/README.md +44 -218
  162. package/dist/form/input_options_select/README_CN.md +38 -211
  163. package/dist/form/lookup_editor/LookupEditor.svelte +7 -10
  164. package/dist/form/lookup_editor/LookupEditor.svelte.d.ts +2 -1
  165. package/dist/form/memo_editor/MemoEditor.svelte +2 -2
  166. package/dist/form/memo_editor/MemoEditor.svelte.d.ts +1 -1
  167. package/dist/form/number_editor/NumberEditor.svelte +13 -1
  168. package/dist/form/number_editor/NumberEditor.svelte.d.ts +1 -1
  169. package/dist/form/number_range/NumberRange.svelte +5 -5
  170. package/dist/form/options_multi_select/OptionsMultiSelect.svelte +13 -13
  171. package/dist/form/options_multi_select/OptionsMultiSelect.svelte.d.ts +3 -2
  172. package/dist/form/options_multi_select/README.md +5 -3
  173. package/dist/form/options_multi_select/README_CN.md +5 -3
  174. package/dist/form/options_select/OptionsSelect.svelte +19 -15
  175. package/dist/form/options_select/OptionsSelect.svelte.d.ts +2 -1
  176. package/dist/form/options_select/README.md +9 -7
  177. package/dist/form/options_select/README_CN.md +8 -6
  178. package/dist/form/prompts_text_editor/PromptsTextEditor.svelte +6 -5
  179. package/dist/form/prompts_text_editor/PromptsTextEditor.svelte.d.ts +2 -1
  180. package/dist/form/prompts_text_editor/README.md +16 -14
  181. package/dist/form/prompts_text_editor/README_CN.md +16 -14
  182. package/dist/form/search_box/SearchBox.svelte +3 -2
  183. package/dist/form/search_box/SearchBox.svelte.d.ts +1 -1
  184. package/dist/form/switch/README.md +7 -5
  185. package/dist/form/switch/README_CN.md +7 -5
  186. package/dist/form/switch/Switch.svelte +7 -5
  187. package/dist/form/switch/Switch.svelte.d.ts +4 -2
  188. package/dist/form/text_editor/PasswordEditor.svelte +2 -2
  189. package/dist/form/text_editor/PasswordEditor.svelte.d.ts +1 -1
  190. package/dist/form/text_editor/TextEditor.svelte +6 -4
  191. package/dist/form/text_editor/TextEditor.svelte.d.ts +1 -1
  192. package/dist/form/time_editor/README.md +4 -2
  193. package/dist/form/time_editor/README_CN.md +4 -2
  194. package/dist/form/time_editor/TimeEditor.svelte +10 -7
  195. package/dist/form/time_editor/TimeEditor.svelte.d.ts +2 -1
  196. package/dist/form/types.d.ts +5 -42
  197. package/dist/form/unit-number-editor/README.md +21 -19
  198. package/dist/form/unit-number-editor/README_CN.md +21 -19
  199. package/dist/form/unit-number-editor/UnitNumberEditor.svelte +12 -11
  200. package/dist/form/unit-number-editor/UnitNumberEditor.svelte.d.ts +4 -3
  201. package/dist/general/button/Button.svelte +4 -1
  202. package/dist/general/button/Button.svelte.d.ts +3 -1
  203. package/dist/general/button/IconButton.svelte +11 -5
  204. package/dist/general/button/IconButton.svelte.d.ts +5 -2
  205. package/dist/general/button/IconButton_README.md +9 -6
  206. package/dist/general/button/IconButton_README_CN.md +9 -6
  207. package/dist/general/button/TextButton.svelte +15 -5
  208. package/dist/general/button/TextButton.svelte.d.ts +6 -2
  209. package/dist/general/button/TextButton_README.md +10 -6
  210. package/dist/general/button/TextButton_README_CN.md +10 -6
  211. package/dist/general/icon/Icon.svelte +6 -4
  212. package/dist/general/icon/Icon.svelte.d.ts +3 -2
  213. package/dist/general/tag/Tag.svelte +8 -4
  214. package/dist/general/tag/Tag.svelte.d.ts +3 -1
  215. package/dist/i18nRes/i18nRes.d.ts +45 -2
  216. package/dist/i18nRes/i18nRes.js +7 -2
  217. package/dist/layouts/action_bar/ActionBar.svelte +5 -4
  218. package/dist/layouts/action_bar/ActionBar.svelte.d.ts +2 -1
  219. package/dist/layouts/action_bar/ButtonAction.d.ts +1 -23
  220. package/dist/layouts/action_bar/README.md +20 -18
  221. package/dist/layouts/action_bar/README_CN.md +19 -17
  222. package/dist/layouts/box/Box.svelte +4 -3
  223. package/dist/layouts/box/Box.svelte.d.ts +2 -1
  224. package/dist/layouts/box/README.md +13 -11
  225. package/dist/layouts/box/README_CN.md +13 -11
  226. package/dist/layouts/form_field/FormField.svelte +5 -4
  227. package/dist/layouts/form_field/FormField.svelte.d.ts +3 -2
  228. package/dist/layouts/form_field/README.md +11 -9
  229. package/dist/layouts/form_field/README_CN.md +9 -7
  230. package/dist/layouts/form_panel/flex_row_form/Cell.svelte +3 -1
  231. package/dist/layouts/form_panel/flex_row_form/Cell.svelte.d.ts +3 -1
  232. package/dist/layouts/form_panel/flex_row_form/Row.svelte +3 -1
  233. package/dist/layouts/form_panel/flex_row_form/Row.svelte.d.ts +3 -1
  234. package/dist/layouts/form_panel/grid_form/GridField.svelte +8 -4
  235. package/dist/layouts/form_panel/grid_form/GridField.svelte.d.ts +6 -2
  236. package/dist/layouts/form_panel/grid_form/GridForm.svelte +3 -1
  237. package/dist/layouts/form_panel/grid_form/GridForm.svelte.d.ts +3 -1
  238. package/dist/layouts/form_panel/grid_form/README.md +6 -4
  239. package/dist/layouts/form_panel/grid_form/README_CN.md +6 -4
  240. package/dist/layouts/page/Page.svelte +7 -7
  241. package/dist/layouts/page/Page.svelte.d.ts +2 -2
  242. package/dist/layouts/page/PageHeader.svelte +4 -4
  243. package/dist/layouts/page/PageHeader.svelte.d.ts +1 -1
  244. package/dist/layouts/page/README.md +18 -18
  245. package/dist/layouts/page/README_CN.md +18 -18
  246. package/dist/navigation/nav_menu/MenuItem.d.ts +1 -1
  247. package/dist/navigation/nav_menu/NavigatorMenu.svelte +16 -14
  248. package/dist/navigation/nav_menu/NavigatorMenu.svelte.d.ts +7 -5
  249. package/dist/navigation/nav_menu/NavigatorMenuItem.svelte +2 -2
  250. package/dist/navigation/nav_menu/NavigatorMenuItem.svelte.d.ts +2 -2
  251. package/dist/navigation/nav_menu/README.md +8 -6
  252. package/dist/navigation/nav_menu/README_CN.md +8 -6
  253. package/dist/navigation/nav_menu/index.d.ts +2 -2
  254. package/dist/navigation/navigator/Navigator.svelte +5 -4
  255. package/dist/navigation/navigator/Navigator.svelte.d.ts +3 -2
  256. package/dist/navigation/navigator/README.md +12 -10
  257. package/dist/navigation/navigator/README_CN.md +12 -10
  258. package/dist/navigation/pagination/Pagination.svelte +23 -15
  259. package/dist/navigation/pagination/Pagination.svelte.d.ts +6 -4
  260. package/dist/navigation/progress_step_bar/ProgressStep.d.ts +2 -1
  261. package/dist/navigation/progress_step_bar/ProgressStepBar.svelte +5 -4
  262. package/dist/navigation/progress_step_bar/ProgressStepBar.svelte.d.ts +2 -1
  263. package/dist/navigation/progress_step_bar/ProgressStepBlock.svelte +3 -3
  264. package/dist/navigation/progress_step_bar/ProgressStepBlock.svelte.d.ts +1 -1
  265. package/dist/navigation/progress_step_bar/README.md +37 -35
  266. package/dist/navigation/progress_step_bar/README_CN.md +36 -34
  267. package/dist/navigation/tabs/Tabs.svelte +14 -5
  268. package/dist/navigation/tabs/Tabs.svelte.d.ts +11 -4
  269. package/dist/navigation/tabs/index.d.ts +2 -2
  270. package/dist/overlay/common/ModalPopover.svelte +5 -4
  271. package/dist/overlay/common/ModalPopover.svelte.d.ts +2 -1
  272. package/dist/overlay/common/Popover.svelte +4 -3
  273. package/dist/overlay/common/Popover.svelte.d.ts +2 -1
  274. package/dist/overlay/context-menu/ContextMenuItem.d.ts +3 -3
  275. package/dist/overlay/context-menu/ContextMenuPanel.svelte +4 -4
  276. package/dist/overlay/context-menu/index.d.ts +2 -2
  277. package/dist/overlay/dialog/CommonDialog.svelte +17 -13
  278. package/dist/overlay/dialog/CommonDialog.svelte.d.ts +9 -5
  279. package/dist/overlay/dialog/Dialog.svelte +25 -19
  280. package/dist/overlay/dialog/Dialog.svelte.d.ts +11 -5
  281. package/dist/overlay/dialog/DialogActions.d.ts +1 -1
  282. package/dist/overlay/dialog/DialogCloseConfirm.d.ts +4 -1
  283. package/dist/overlay/dialog/DialogCloseConfirm.js +1 -1
  284. package/dist/overlay/dialog/DialogManager.svelte.js +2 -1
  285. package/dist/overlay/dialog/README.md +19 -17
  286. package/dist/overlay/dialog/README_CN.md +19 -17
  287. package/dist/overlay/dialog/index.d.ts +2 -2
  288. package/dist/overlay/message-box/IMessageBox.d.ts +4 -4
  289. package/dist/overlay/message-box/MessageBox.svelte.js +3 -3
  290. package/dist/ticatec-uniface-web.css +38 -12
  291. package/dist/types.d.ts +38 -46
  292. package/dist/unifaceContext.d.ts +2 -2
  293. package/dist/utils/prefixFilter.js +0 -1
  294. package/docs/NAMING.md +362 -0
  295. package/docs/NAMING_CN.md +362 -0
  296. package/docs/components/README.md +16 -14
  297. package/docs/components/accordion/README.md +13 -2
  298. package/docs/components/accordion/example.svelte +1 -0
  299. package/docs/components/action-bar/README.md +4 -4
  300. package/docs/components/attachment-editor/README.md +224 -0
  301. package/docs/components/attachment-editor/example.svelte +22 -0
  302. package/docs/components/box/README.md +1 -1
  303. package/docs/components/button/README.md +8 -1
  304. package/docs/components/button/example.svelte +1 -0
  305. package/docs/components/card/README.md +19 -5
  306. package/docs/components/cascade-options-select/README.md +11 -5
  307. package/docs/components/columns-layout/README.md +8 -4
  308. package/docs/components/columns-layout/example.svelte +4 -0
  309. package/docs/components/common-dialog/README.md +19 -10
  310. package/docs/components/common-dialog/example.svelte +2 -1
  311. package/docs/components/concise-data-table/README.md +18 -29
  312. package/docs/components/concise-data-table/example.svelte +1 -1
  313. package/docs/components/context-menu/README.md +5 -5
  314. package/docs/components/context-menu/example.svelte +1 -1
  315. package/docs/components/criteria-field/README.md +1 -0
  316. package/docs/components/criteria-field/example.svelte +1 -0
  317. package/docs/components/data-table/README.md +63 -40
  318. package/docs/components/data-table/example.svelte +2 -2
  319. package/docs/components/date-picker/README.md +1 -1
  320. package/docs/components/date-time-picker/README.md +1 -1
  321. package/docs/components/dialog/README.md +21 -14
  322. package/docs/components/dialog/example.svelte +1 -1
  323. package/docs/components/form-field/README.md +3 -3
  324. package/docs/components/grid-form/README.md +15 -5
  325. package/docs/components/grid-form/example.svelte +1 -1
  326. package/docs/components/group-check-box/README.md +3 -3
  327. package/docs/components/group-radio-box/README.md +3 -3
  328. package/docs/components/icon/README.md +6 -5
  329. package/docs/components/icon-button/README.md +10 -1
  330. package/docs/components/icon-button/example.svelte +1 -0
  331. package/docs/components/image-editor/README.md +262 -0
  332. package/docs/components/{image-files → image-editor}/example.svelte +5 -3
  333. package/docs/components/input-options-select/README.md +2 -2
  334. package/docs/components/list-box/README.md +12 -13
  335. package/docs/components/list-box/example.svelte +3 -3
  336. package/docs/components/lookup-editor/README.md +1 -1
  337. package/docs/components/navigator/README.md +2 -1
  338. package/docs/components/navigator/example.svelte +1 -0
  339. package/docs/components/navigator-menu/README.md +24 -21
  340. package/docs/components/navigator-menu/example.svelte +4 -2
  341. package/docs/components/options-multi-select/README.md +2 -2
  342. package/docs/components/options-select/README.md +4 -4
  343. package/docs/components/page/README.md +2 -2
  344. package/docs/components/page-stack/README.md +67 -0
  345. package/docs/components/page-stack/example.svelte +7 -0
  346. package/docs/components/pagination/README.md +24 -7
  347. package/docs/components/pagination/example.svelte +5 -2
  348. package/docs/components/pagination-panel/README.md +25 -10
  349. package/docs/components/pagination-panel/example.svelte +5 -4
  350. package/docs/components/password-editor/README.md +128 -0
  351. package/docs/components/{attachment-files → password-editor}/example.svelte +5 -5
  352. package/docs/components/progress-bar/README.md +14 -4
  353. package/docs/components/progress-bar/example.svelte +1 -1
  354. package/docs/components/progress-step-bar/README.md +16 -7
  355. package/docs/components/progress-step-bar/example.svelte +5 -1
  356. package/docs/components/prompts-text-editor/README.md +8 -6
  357. package/docs/components/prompts-text-editor/example.svelte +0 -1
  358. package/docs/components/rows-layout/README.md +8 -4
  359. package/docs/components/rows-layout/example.svelte +4 -0
  360. package/docs/components/switch/README.md +2 -2
  361. package/docs/components/tabs/README.md +24 -9
  362. package/docs/components/tag/README.md +13 -2
  363. package/docs/components/tag/example.svelte +1 -0
  364. package/docs/components/text-button/README.md +20 -1
  365. package/docs/components/text-button/example.svelte +2 -0
  366. package/docs/components/time-editor/README.md +1 -1
  367. package/docs/components/transfer/README.md +16 -9
  368. package/docs/components/tree-view/README.md +29 -13
  369. package/docs/components/tree-view/example.svelte +2 -1
  370. package/docs/components/unit-number-editor/README.md +11 -8
  371. package/docs/components/unit-number-editor/example.svelte +0 -1
  372. package/package.json +13 -7
  373. package/dist/data_table/lib/CompareFunction.d.ts +0 -3
  374. package/dist/data_table/lib/FormatCell.d.ts +0 -2
  375. package/dist/form/attachment_files/FileRender.svelte +0 -125
  376. package/dist/form/attachment_files/FileRender.svelte.d.ts +0 -9
  377. package/dist/form/attachment_files/FileUploadBar.svelte +0 -66
  378. package/dist/form/attachment_files/FileUploadBar.svelte.d.ts +0 -8
  379. package/dist/form/attachment_files/FileUploadPanel.svelte +0 -161
  380. package/dist/form/attachment_files/FileUploadPanel.svelte.d.ts +0 -14
  381. package/dist/form/attachment_files/UploadFile.d.ts +0 -43
  382. package/dist/form/attachment_files/UploadFile.js +0 -80
  383. package/dist/form/cascade_options_select/CascadePanel.svelte +0 -52
  384. package/dist/form/cascade_options_select/CascadePanel.svelte.d.ts +0 -26
  385. package/dist/form/cascade_options_select/isLeafDetermine.d.ts +0 -4
  386. package/dist/form/common_editor/EditorEvents.d.ts +0 -14
  387. package/dist/form/common_editor/EditorEvents.js +0 -2
  388. package/dist/form/image-files/ImageFile.d.ts +0 -12
  389. package/dist/form/image-files/ImageFilesField.svelte +0 -128
  390. package/dist/form/image-files/ImageFilesField.svelte.d.ts +0 -18
  391. package/dist/form/image-files/ImageRender.svelte +0 -95
  392. package/dist/form/image-files/ImageRender.svelte.d.ts +0 -10
  393. package/dist/form/image-files/README.md +0 -468
  394. package/dist/form/image-files/README_CN.md +0 -468
  395. package/dist/form/image-files/index.d.ts +0 -10
  396. package/dist/form/image-files/index.js +0 -2
  397. package/dist/layout/flex/FlexBlock.svelte +0 -17
  398. package/dist/layout/flex/FlexBlock.svelte.d.ts +0 -38
  399. package/dist/layout/flex/README.md +0 -148
  400. package/dist/layout/flex/README_CN.md +0 -148
  401. package/dist/layout/flex/index.d.ts +0 -2
  402. package/dist/layout/flex/index.js +0 -2
  403. package/dist/layout/index.d.ts +0 -0
  404. package/dist/layout/index.js +0 -1
  405. package/docs/components/attachment-files/README.md +0 -332
  406. package/docs/components/image-files/README.md +0 -174
  407. /package/dist/data_table/lib/{FormatCell.js → CellAction.js} +0 -0
  408. /package/dist/data_table/lib/{CompareFunction.js → CompareFn.js} +0 -0
  409. /package/dist/{form/cascade_options_select/isLeafDetermine.js → data_table/lib/FormatCellFn.js} +0 -0
  410. /package/dist/form/{image-files/ImageFile.js → attachment_files/UploadTask.js} +0 -0
  411. /package/dist/form/{image-files → image_editor}/ImagePreview.svelte.d.ts +0 -0
@@ -1,19 +1,23 @@
1
1
  <script lang="ts">
2
2
  import Pagination from "../../navigation/pagination";
3
3
  import OptionsSelect from "../../form/options_select";
4
- import type {GenerateTotalInfo, OnPageChange, OnPageSizeChange} from "../../types";
4
+ import i18nRes from "../../i18nRes";
5
+ import type {GenerateTotalInfo, OnPageChange, OnPageSizeChange, Size} from "../../types";
5
6
 
6
7
  interface Props {
7
8
  pageCount?: number;
8
9
  pageNo?: number;
9
- type?: 'plain' | 'round' | 'circle';
10
+ /** 形状:plain / round / circle */
11
+ variant?: 'plain' | 'round' | 'circle';
10
12
  page$style?: string;
11
- big?: boolean;
13
+ /** 尺寸档位;'large' 对应旧的 big */
14
+ size?: Size;
12
15
  rowsSet?: Array<number>;
13
16
  total?: number;
14
17
  generateInfo?: GenerateTotalInfo;
15
18
  rowCount?: number;
16
- rowCountLabel?: string;
19
+ /** 每页行数选择框旁的文字 */
20
+ rowCountText?: string;
17
21
  align?: 'left' | 'right' | '';
18
22
  onPageSizeChange?: OnPageSizeChange;
19
23
  onchange?: OnPageChange;
@@ -21,15 +25,15 @@
21
25
 
22
26
  let {
23
27
  pageCount = 0,
24
- pageNo = 1,
25
- type = 'round',
28
+ pageNo = $bindable(1),
29
+ variant = 'round',
26
30
  page$style = '',
27
- big = false,
31
+ size = 'medium',
28
32
  rowsSet = [25, 50, 100],
29
33
  total = 0,
30
34
  generateInfo,
31
35
  rowCount = $bindable(25),
32
- rowCountLabel = 'Rows/Page',
36
+ rowCountText = i18nRes.dataTable.rowsPerPage(),
33
37
  align = '',
34
38
  onPageSizeChange,
35
39
  onchange,
@@ -40,10 +44,12 @@
40
44
  );
41
45
  // Rendered via {@html} below: generateInfo is a trusted, caller-supplied
42
46
  // renderer (not user input) — same opt-in-HTML boundary as DataColumn#renderHTML.
47
+ // The default text comes from the i18n resources (dataTable.totalInfo), so it
48
+ // follows the active language instead of being hardcoded English.
43
49
  let totalText = $derived(
44
50
  generateInfo
45
51
  ? generateInfo(total, pageCount, pageNo, rowCount)
46
- : `Total: <b>${total}</b> entities.`
52
+ : i18nRes.dataTable.totalInfo({total})
47
53
  );
48
54
 
49
55
  const handleRowCountChange = () => {
@@ -54,18 +60,18 @@
54
60
  <div class="uniface-pagination-panel" class:left={align === 'left'} class:right={align === 'right'}>
55
61
  <div class="page-options">
56
62
  <OptionsSelect
57
- compact={!big || type === 'plain'}
63
+ compact={size !== 'large' || variant === 'plain'}
58
64
  style="width: 80px"
59
65
  variant="outlined"
60
- mandatory
66
+ clearable={false}
61
67
  options={pagesOptions}
62
68
  bind:value={rowCount}
63
69
  onchange={handleRowCountChange}/>
64
70
  </div>
65
71
  <div>
66
- <span style="margin-left: 8px">{rowCountLabel}</span></div>
72
+ <span style="margin-left: 8px">{rowCountText}</span></div>
67
73
  <div class="pagination">
68
- <Pagination {pageCount} {pageNo} {type} style={page$style} {big} {onchange}/>
74
+ <Pagination {pageCount} bind:pageNo {variant} style={page$style} {size} {onchange}/>
69
75
  </div>
70
76
  <div class="pagination-info">
71
77
  {@html totalText}
@@ -1,19 +1,22 @@
1
- import type { GenerateTotalInfo, OnPageChange, OnPageSizeChange } from "../../types";
1
+ import type { GenerateTotalInfo, OnPageChange, OnPageSizeChange, Size } from "../../types";
2
2
  interface Props {
3
3
  pageCount?: number;
4
4
  pageNo?: number;
5
- type?: 'plain' | 'round' | 'circle';
5
+ /** 形状:plain / round / circle */
6
+ variant?: 'plain' | 'round' | 'circle';
6
7
  page$style?: string;
7
- big?: boolean;
8
+ /** 尺寸档位;'large' 对应旧的 big */
9
+ size?: Size;
8
10
  rowsSet?: Array<number>;
9
11
  total?: number;
10
12
  generateInfo?: GenerateTotalInfo;
11
13
  rowCount?: number;
12
- rowCountLabel?: string;
14
+ /** 每页行数选择框旁的文字 */
15
+ rowCountText?: string;
13
16
  align?: 'left' | 'right' | '';
14
17
  onPageSizeChange?: OnPageSizeChange;
15
18
  onchange?: OnPageChange;
16
19
  }
17
- declare const PaginationPanel: import("svelte").Component<Props, {}, "rowCount">;
20
+ declare const PaginationPanel: import("svelte").Component<Props, {}, "pageNo" | "rowCount">;
18
21
  type PaginationPanel = ReturnType<typeof PaginationPanel>;
19
22
  export default PaginationPanel;
@@ -1,5 +1,7 @@
1
1
  # PaginationPanel
2
2
 
3
+ > **Renamed in 5.1.0**: this document uses the names from the [API Naming Guide](../../../docs/NAMING.md); the old names `rowCountLabel` were removed in 5.1.0 (no compatibility aliases are kept).
4
+
3
5
  A composite pagination bar that combines three controls into one row: a rows-per-page selector, a page navigator, and a total-records info area.
4
6
 
5
7
  > Svelte 5 component. Callbacks are passed as plain props (`onchange`, `onPageSizeChange`), not as `on:` directives.
@@ -28,7 +30,7 @@ npm install @ticatec/uniface-element
28
30
  | `total` | `number` | `0` | Total record count, shown in the info area |
29
31
  | `rowCount` | `number` | `25` | Rows-per-page value. **Bindable** — use `bind:rowCount` to read it back, or pass `onPageSizeChange` to react to changes |
30
32
  | `rowsSet` | `Array<number>` | `[25, 50, 100]` | Available options in the rows-per-page selector |
31
- | `rowCountLabel` | `string` | `'Rows/Page'` | Label shown next to the rows-per-page selector |
33
+ | `rowCountText` | `string` | `'Rows/Page'` | Label shown next to the rows-per-page selector |
32
34
  | `type` | `'plain' \| 'round' \| 'circle'` | `'round'` | Visual style of the inner Pagination buttons |
33
35
  | `big` | `boolean` | `false` | Larger button size for the inner Pagination |
34
36
  | `page$style` | `string` | `''` | Inline CSS applied to the inner Pagination root |
@@ -1,5 +1,7 @@
1
1
  # PaginationPanel 分页面板
2
2
 
3
+ > **5.1.0 重命名**:本文使用 [API 命名规范](../../../docs/NAMING_CN.md) 中的名字;旧名 `rowCountLabel` 已在 5.1.0 移除(5.1.0 不保留兼容别名)。
4
+
3
5
  一个组合分页条,把"每页行数选择器 + 页码导航 + 总记录数信息"放在同一行。
4
6
 
5
7
  > Svelte 5 组件。回调以普通 prop 形式传入(`onchange`、`onPageSizeChange`),不再用 `on:` 指令。
@@ -28,7 +30,7 @@ npm install @ticatec/uniface-element
28
30
  | `total` | `number` | `0` | 总记录数,显示在信息区 |
29
31
  | `rowCount` | `number` | `25` | 每页行数。**可绑定** —— 用 `bind:rowCount` 读回,或通过 `onPageSizeChange` 监听变化 |
30
32
  | `rowsSet` | `Array<number>` | `[25, 50, 100]` | 每页行数选择器的可选项 |
31
- | `rowCountLabel` | `string` | `'Rows/Page'` | 每页行数选择器旁的标签文字 |
33
+ | `rowCountText` | `string` | `'Rows/Page'` | 每页行数选择器旁的标签文字 |
32
34
  | `type` | `'plain' \| 'round' \| 'circle'` | `'round'` | 内部 Pagination 按钮的视觉样式 |
33
35
  | `big` | `boolean` | `false` | 内部 Pagination 使用大号按钮 |
34
36
  | `page$style` | `string` | `''` | 应用到内部 Pagination 根节点的内联 CSS |
@@ -2,10 +2,9 @@
2
2
  import ListBox from "../../data_display/list_box";
3
3
  import IconButton from "../../general/button/IconButton.svelte";
4
4
 
5
- import type {FunFilter} from "../../data_display/list_box";
6
- import type {TransferData} from "../../types";
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
- import i18nRes from "../../i18nRes";
9
8
 
10
9
 
11
10
  interface Props {
@@ -15,8 +14,15 @@
15
14
  targetList?: Array<any>;
16
15
  targetTitle?: string;
17
16
  itemRender?: any;
18
- filter?: FunFilter | null;
19
- onchange?: TransferData;
17
+ filter?: FilterFn | null;
18
+ /**
19
+ * 移动前的否决钩子:返回 false 阻止移动。
20
+ */
21
+ beforeTransfer?: BeforeTransfer;
22
+ /**
23
+ * 移动完成后的通知。
24
+ */
25
+ onchange?: OnTransfer;
20
26
  onfocus?: (event: FocusEvent) => void;
21
27
  onblur?: (event: FocusEvent) => void;
22
28
  footer$style?: string;
@@ -30,6 +36,7 @@
30
36
  targetTitle,
31
37
  itemRender = null,
32
38
  filter = null,
39
+ beforeTransfer,
33
40
  onchange,
34
41
  onfocus,
35
42
  onblur,
@@ -48,26 +55,33 @@
48
55
  if (!transferContainer?.contains(event.relatedTarget as Node | null)) onblur?.(event);
49
56
  };
50
57
 
58
+ const allowMove = async (list: Array<any>, direction: "left" | "right"): Promise<boolean> =>
59
+ beforeTransfer == null || (await beforeTransfer(list, direction)) !== false;
60
+
51
61
  const moveToTarget = async () => {
52
- if (sourceSelectedList.length > 0 && await onchange?.(sourceSelectedList, "right")) {
53
- targetList = [...targetList, ...sourceSelectedList];
54
- sourceList = sourceList.filter(item => sourceSelectedList.indexOf(item) === -1);
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);
55
66
  sourceSelectedList = [];
67
+ onchange?.(moved, "right");
56
68
  }
57
69
  }
58
70
 
59
71
  const moveToSource = async () => {
60
- if (targetSelectedList.length > 0 && await onchange?.(targetSelectedList, "left")) {
61
- sourceList = [...sourceList, ...targetSelectedList];
62
- targetList = targetList.filter(item => targetSelectedList.indexOf(item) === -1);
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);
63
76
  targetSelectedList = [];
77
+ onchange?.(moved, "left");
64
78
  }
65
79
  }
66
80
  </script>
67
81
 
68
- <div bind:this={transferContainer} class="uniface-transfer-container" onfocusin={handleFocusIn} onfocusout={handleFocusOut}>
69
- <ListBox class="list-container" title={sourceTitle} {filter} style="{style}; grid-column: 1/2" list={sourceList} selectMode="multiple"
70
- bind:selectedList={sourceSelectedList} {itemRender}>
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}>
71
85
  {#snippet footer()}
72
86
  <div style={footer$style}>
73
87
  <span>{i18nUtils.formatText(i18n.getText('uniface.transfer.selectIndicator'), {
@@ -85,8 +99,8 @@
85
99
  <i class="icon_google_navigate_next"></i>
86
100
  </IconButton>
87
101
  </div>
88
- <ListBox class="list-container" title={targetTitle} style="{style}; grid-column: 3/4" {filter} list={targetList} selectMode="multiple"
89
- bind:selectedList={targetSelectedList} {itemRender}>
102
+ <ListBox class="list-container" title={targetTitle} style="grid-column: 3/4" {filter} list={targetList} selectMode="multiple"
103
+ bind:selectedItems={targetSelectedList} {itemRender}>
90
104
  {#snippet footer()}
91
105
  <div style={footer$style}>
92
106
  <span>{i18nUtils.formatText(i18n.getText('uniface.transfer.selectIndicator'), {
@@ -1,5 +1,5 @@
1
- import type { FunFilter } from "../../data_display/list_box";
2
- import type { TransferData } from "../../types";
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?: FunFilter | null;
11
- onchange?: TransferData;
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;
@@ -1,4 +1,4 @@
1
1
  import Transfer from "./Transfer.svelte";
2
- import type { TransferData } from "../../types";
2
+ import type { BeforeTransfer, OnTransfer } from "../../types";
3
3
  export default Transfer;
4
- export type { TransferData };
4
+ export type { BeforeTransfer, OnTransfer };
@@ -6,7 +6,8 @@
6
6
  interface Props {
7
7
  style?: string;
8
8
  compact?: boolean;
9
- accordions?: AccordionItem[];
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
- accordions = [],
18
+ items = [],
18
19
  exclusive = false,
19
- theme = 'theme-light'
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 && accordions.length > 0) {
27
- activeItem = accordions[0];
28
- openSet.add(accordions[0]);
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 {theme}" class:compact {style}>
51
- {#each accordions as accordion}
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
- isOpen={openSet.has(accordion)}
55
+ expanded={openSet.has(accordion)}
55
56
  {exclusive}
56
57
  {compact}
57
58
  onclick={handleAccordionClick(accordion)}
@@ -2,7 +2,8 @@ import type AccordionItem from './AccordionItem';
2
2
  interface Props {
3
3
  style?: string;
4
4
  compact?: boolean;
5
- accordions?: AccordionItem[];
5
+ /** 折叠项列表 */
6
+ items?: AccordionItem[];
6
7
  exclusive?: boolean;
7
8
  theme?: string;
8
9
  }
@@ -3,7 +3,7 @@
3
3
 
4
4
  interface Props {
5
5
  title: string;
6
- isOpen?: boolean;
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
- isOpen = false,
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={isOpen}
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 isOpen}
58
+ {#if expanded}
59
59
  <i class="icon_google_folder_open"></i>
60
60
  {/if}
61
61
  {:else}
62
- <i class={isOpen ? 'icon_google_keyboard_arrow_up' : 'icon_google_keyboard_arrow_down'}></i>
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 isOpen && children}
67
+ {#if expanded && children}
68
68
  <div class="content" class:compact>
69
69
  {@render children()}
70
70
  </div>
@@ -1,7 +1,7 @@
1
1
  import type { Snippet } from 'svelte';
2
2
  interface Props {
3
3
  title: string;
4
- isOpen?: boolean;
4
+ expanded?: boolean;
5
5
  onclick?: (event: MouseEvent) => void;
6
6
  header?: Snippet;
7
7
  exclusive?: boolean;
@@ -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
- | `accordions` | `AccordionItem[]` | `[]` | Items to render |
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 accordions={items} />
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 accordions={items} exclusive />
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 accordions={items} compact style="max-width: 600px; margin: 0 auto;" />
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
- | `accordions` | `AccordionItem[]` | `[]` | 要渲染的项 |
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 accordions={items} />
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 accordions={items} exclusive />
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 accordions={items} compact style="max-width: 600px; margin: 0 auto;" />
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
- headerBar?: Snippet;
14
+ header?: Snippet;
15
15
  children?: Snippet;
16
16
  theme?: string;
17
17
  /** 操作栏图标排布方式,默认 'distribute'(按数量平分宽度、每个居中,不会被拉到两端) */
18
- actionsAlign?: CardActionsAlign;
18
+ /** 动作栏对齐方式 */
19
+ actions$align?: CardActionsAlign;
19
20
  /** 'center'/'left'/'right' 模式下相邻图标的固定间距,例如 '16px' */
20
21
  actionsGap?: string;
21
- contentStyle?: string;
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
- headerBar,
32
+ header,
31
33
  children,
32
- theme = "",
33
- actionsAlign = 'distribute',
34
+ theme,
35
+ actions$align = 'distribute',
34
36
  actionsGap,
35
- contentStyle = ''
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 headerBar}
47
+ {:else if header}
46
48
  <div class="card-header">
47
- {@render headerBar()}
49
+ {@render header()}
48
50
  </div>
49
51
  {/if}
50
- <div class="card-content" style={contentStyle}>
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={actionsAlign} gap={actionsGap}/>
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
- headerBar?: Snippet;
10
+ header?: Snippet;
11
11
  children?: Snippet;
12
12
  theme?: string;
13
13
  /** 操作栏图标排布方式,默认 'distribute'(按数量平分宽度、每个居中,不会被拉到两端) */
14
- actionsAlign?: CardActionsAlign;
14
+ /** 动作栏对齐方式 */
15
+ actions$align?: CardActionsAlign;
15
16
  /** 'center'/'left'/'right' 模式下相邻图标的固定间距,例如 '16px' */
16
17
  actionsGap?: string;
17
- contentStyle?: string;
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
- export type ActionCallback = (data: any) => void;
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
- callback: ActionCallback;
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.callback?.(data);
33
+ action.handler?.(data);
34
34
  await utils.sleep(0.5);
35
35
  clickEnable = true;
36
36
  }