@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,6 +1,8 @@
1
1
  # ActionBar Component
2
2
 
3
- A horizontal row of action buttons, declared via a `buttons` array (or a custom snippet). Use `null` entries in the array to drop a vertical separator between button groups.
3
+ > **Renamed in 5.1.0**: this document uses the names from the [API Naming Guide](../../../docs/NAMING.md); the old names `buttons` were removed in 5.1.0 (no compatibility aliases are kept).
4
+
5
+ A horizontal row of action buttons, declared via a `actions` array (or a custom snippet). Use `null` entries in the array to drop a vertical separator between button groups.
4
6
 
5
7
  Built on top of [Button](../../general/button/README.md) and [Separator](../../general/separator/README.md).
6
8
 
@@ -8,7 +10,7 @@ Built on top of [Button](../../general/button/README.md) and [Separator](../../g
8
10
 
9
11
  - **Data-driven buttons**: declare actions as `ButtonAction[]`, the bar renders them
10
12
  - **Implicit separators**: `null` in the array → 24px-tall vertical Separator between groups
11
- - **Or snippet content**: pass children for full custom layout (overrides `buttons` when both are set)
13
+ - **Or snippet content**: pass children for full custom layout (overrides `actions` when both are set)
12
14
  - **Disabled per button**: `ButtonAction.disabled` flows through to the underlying Button
13
15
  - **All ButtonType variants**: `default` / `primary` / `secondary` / `third` / `forth`
14
16
  - **Tooltips**: `ButtonAction.tooltip` is forwarded as `data-tip` to Button
@@ -47,19 +49,19 @@ import ActionBar, { type ButtonAction, type ButtonActions } from '@ticatec/unifa
47
49
  ];
48
50
  </script>
49
51
 
50
- <ActionBar buttons={actions} />
52
+ <ActionBar actions={actions} />
51
53
  ```
52
54
 
53
55
  ## Props
54
56
 
55
57
  | Prop | Type | Default | Description |
56
58
  |------|------|---------|-------------|
57
- | `buttons` | `ButtonActions` (`Array<ButtonAction \| null>`) | `[]` | Declarative button list. `null` entries render as a vertical Separator. Ignored when `children` is provided. |
59
+ | `actions` | `ButtonActions` (`Array<ButtonAction \| null>`) | `[]` | Declarative button list. `null` entries render as a vertical Separator. Ignored when `children` is provided. |
58
60
  | `style` | `string \| undefined` | `undefined` | Inline CSS on the outer wrapper |
59
61
  | `theme` | `string \| undefined` | `undefined` | Set as `data-theme` on the outer wrapper for scoped CSS overrides |
60
- | `children` | `Snippet \| undefined` | `undefined` | Custom content. **Takes precedence over `buttons`** when both are provided. |
62
+ | `children` | `Snippet \| undefined` | `undefined` | Custom content. **Takes precedence over `actions`** when both are provided. |
61
63
 
62
- > **Children precedence**: if you pass both `buttons` and inline children, only the children render. The `buttons` array is silently ignored.
64
+ > **Children precedence**: if you pass both `actions` and inline children, only the children render. The `actions` array is silently ignored.
63
65
 
64
66
  ## ButtonAction
65
67
 
@@ -111,7 +113,7 @@ Two consequences:
111
113
  ];
112
114
  </script>
113
115
 
114
- <ActionBar buttons={basicActions} />
116
+ <ActionBar actions={basicActions} />
115
117
  ```
116
118
 
117
119
  ### With Icons + Tooltips
@@ -135,7 +137,7 @@ Two consequences:
135
137
  ];
136
138
  </script>
137
139
 
138
- <ActionBar buttons={iconActions} />
140
+ <ActionBar actions={iconActions} />
139
141
  ```
140
142
 
141
143
  ### With Separators Between Groups
@@ -150,14 +152,14 @@ Two consequences:
150
152
  ];
151
153
  </script>
152
154
 
153
- <ActionBar buttons={actions} />
155
+ <ActionBar actions={actions} />
154
156
  ```
155
157
 
156
158
  ### Form Footer (Right-Aligned, Full-Width)
157
159
 
158
160
  ```svelte
159
161
  <ActionBar
160
- buttons={[
162
+ actions={[
161
163
  { label: 'Save', type: 'primary', handler: submit },
162
164
  { label: 'Cancel', handler: cancel }
163
165
  ]}
@@ -168,7 +170,7 @@ Two consequences:
168
170
  ### CRUD Toolbar
169
171
 
170
172
  ```svelte
171
- <ActionBar buttons={[
173
+ <ActionBar actions={[
172
174
  { label: 'Create', type: 'primary', handler: create },
173
175
  { label: 'Edit', handler: edit },
174
176
  { label: 'Delete', type: 'secondary', handler: remove },
@@ -179,7 +181,7 @@ Two consequences:
179
181
 
180
182
  ### Custom Content (Snippet)
181
183
 
182
- Bypass `buttons` entirely and render arbitrary content:
184
+ Bypass `actions` entirely and render arbitrary content:
183
185
 
184
186
  ```svelte
185
187
  <ActionBar>
@@ -212,7 +214,7 @@ Bypass `buttons` entirely and render arbitrary content:
212
214
  );
213
215
  </script>
214
216
 
215
- <ActionBar buttons={actions} />
217
+ <ActionBar actions={actions} />
216
218
  ```
217
219
 
218
220
  ### Conditional Buttons (preserve separators)
@@ -236,7 +238,7 @@ To conditionally show a button without dropping your separators, branch *inside*
236
238
  ]);
237
239
  </script>
238
240
 
239
- <ActionBar buttons={actions} />
241
+ <ActionBar actions={actions} />
240
242
  ```
241
243
 
242
244
  > Note: if you want a "missing button" to render as *nothing* rather than a separator, wrap the whole ActionBar in your own `{#if}` instead.
@@ -247,7 +249,7 @@ Rendered output:
247
249
 
248
250
  ```html
249
251
  <div class="uniface-action-bar" style="..." data-theme="...">
250
- <!-- children OR buttons: -->
252
+ <!-- children OR actions: -->
251
253
  <Button label="..." icon="..." tooltip="..." type="..." disabled={...} />
252
254
  <div class="uniface-separator" style="height: 24px;"></div> <!-- null entry -->
253
255
  <Button ... />
@@ -258,7 +260,7 @@ Rendered output:
258
260
 
259
261
  | Variable | Default | Description |
260
262
  |----------|---------|-------------|
261
- | `--uniface-spacing-actionbar` | (from theme) | Gap between buttons (and between button and separator) |
263
+ | `--uniface-spacing-actionbar` | (from theme) | Gap between actions (and between button and separator) |
262
264
 
263
265
  Override globally:
264
266
 
@@ -273,7 +275,7 @@ Override globally:
273
275
  ```svelte
274
276
  <!-- Left-aligned, full-width, with padding -->
275
277
  <ActionBar
276
- buttons={actions}
278
+ actions={actions}
277
279
  style="justify-content: flex-start; width: 100%; padding: 8px 12px; background: #f9fafb;"
278
280
  />
279
281
  ```
@@ -293,7 +295,7 @@ The ActionBar itself is a plain `<div>` — semantics come from the rendered `<b
293
295
  2. **Override `justify-content` and `width`** when the centered + fit-content default doesn't fit (form footers, left-aligned toolbars).
294
296
  3. **Pick the right `type`**: `primary` for the main action, `secondary` for neutral/destructive, leave default for tertiary.
295
297
  4. **Disable, don't hide, during async work** so the user sees that the action exists but is temporarily unavailable (unless permissions say otherwise).
296
- 5. **Prefer `buttons` over snippet content** for data-driven toolbars — it's serialisable and easier to test.
298
+ 5. **Prefer `actions` over snippet content** for data-driven toolbars — it's serialisable and easier to test.
297
299
  6. **Keep the array small**; for >8 actions, consider a dropdown menu instead of a wide action bar.
298
300
 
299
301
  ## Related Components
@@ -1,6 +1,8 @@
1
1
  # ActionBar 操作栏组件
2
2
 
3
- 一行水平排列的操作按钮,通过 `buttons` 数组声明(或用 snippet 自定义)。数组里写 `null` 会在按钮组之间渲染一条竖直分隔线。
3
+ > **5.1.0 重命名**:本文使用 [API 命名规范](../../../docs/NAMING_CN.md) 中的名字;旧名 `buttons` 已在 5.1.0 移除(5.1.0 不保留兼容别名)。
4
+
5
+ 一行水平排列的操作按钮,通过 `actions` 数组声明(或用 snippet 自定义)。数组里写 `null` 会在按钮组之间渲染一条竖直分隔线。
4
6
 
5
7
  基于 [Button](../../general/button/README_CN.md) 和 [Separator](../../general/separator/README_CN.md) 构建。
6
8
 
@@ -8,7 +10,7 @@
8
10
 
9
11
  - **数据驱动**:把操作声明为 `ButtonAction[]`,bar 自动渲染
10
12
  - **隐式分隔符**:数组里的 `null` → 24px 高的竖直 Separator
11
- - **或 snippet 内容**:传 children 做完全自定义布局(同时传 `buttons` 和 children 时 children 优先)
13
+ - **或 snippet 内容**:传 children 做完全自定义布局(同时传 `actions` 和 children 时 children 优先)
12
14
  - **单按钮禁用**:`ButtonAction.disabled` 透传到底层 Button
13
15
  - **全部 ButtonType**:`default` / `primary` / `secondary` / `third` / `forth`
14
16
  - **tooltip**:`ButtonAction.tooltip` 以 `data-tip` 形式透传给 Button
@@ -47,19 +49,19 @@ import ActionBar, { type ButtonAction, type ButtonActions } from '@ticatec/unifa
47
49
  ];
48
50
  </script>
49
51
 
50
- <ActionBar buttons={actions} />
52
+ <ActionBar actions={actions} />
51
53
  ```
52
54
 
53
55
  ## 属性
54
56
 
55
57
  | 属性 | 类型 | 默认值 | 描述 |
56
58
  |------|------|---------|-------------|
57
- | `buttons` | `ButtonActions`(`Array<ButtonAction \| null>`) | `[]` | 声明式按钮列表。`null` 项渲染为一条竖直 Separator。提供 `children` 时本字段被忽略 |
59
+ | `actions` | `ButtonActions`(`Array<ButtonAction \| null>`) | `[]` | 声明式按钮列表。`null` 项渲染为一条竖直 Separator。提供 `children` 时本字段被忽略 |
58
60
  | `style` | `string \| undefined` | `undefined` | 外层 wrapper 的内联 CSS |
59
61
  | `theme` | `string \| undefined` | `undefined` | 设为外层 wrapper 的 `data-theme`,便于作用域化 CSS 覆盖 |
60
- | `children` | `Snippet \| undefined` | `undefined` | 自定义内容。**同时提供 `buttons` 时 children 优先** |
62
+ | `children` | `Snippet \| undefined` | `undefined` | 自定义内容。**同时提供 `actions` 时 children 优先** |
61
63
 
62
- > **children 优先**:同时传了 `buttons` 和内联 children,只会渲染 children,`buttons` 数组被静默忽略。
64
+ > **children 优先**:同时传了 `actions` 和内联 children,只会渲染 children,`actions` 数组被静默忽略。
63
65
 
64
66
  ## ButtonAction
65
67
 
@@ -111,7 +113,7 @@ type ButtonActions = Array<ButtonAction | null>;
111
113
  ];
112
114
  </script>
113
115
 
114
- <ActionBar buttons={basicActions} />
116
+ <ActionBar actions={basicActions} />
115
117
  ```
116
118
 
117
119
  ### 带图标 + tooltip
@@ -135,7 +137,7 @@ type ButtonActions = Array<ButtonAction | null>;
135
137
  ];
136
138
  </script>
137
139
 
138
- <ActionBar buttons={iconActions} />
140
+ <ActionBar actions={iconActions} />
139
141
  ```
140
142
 
141
143
  ### 组间加分隔符
@@ -150,14 +152,14 @@ type ButtonActions = Array<ButtonAction | null>;
150
152
  ];
151
153
  </script>
152
154
 
153
- <ActionBar buttons={actions} />
155
+ <ActionBar actions={actions} />
154
156
  ```
155
157
 
156
158
  ### 表单底部(右对齐 + 全宽)
157
159
 
158
160
  ```svelte
159
161
  <ActionBar
160
- buttons={[
162
+ actions={[
161
163
  { label: '保存', type: 'primary', handler: submit },
162
164
  { label: '取消', handler: cancel }
163
165
  ]}
@@ -168,7 +170,7 @@ type ButtonActions = Array<ButtonAction | null>;
168
170
  ### CRUD 工具栏
169
171
 
170
172
  ```svelte
171
- <ActionBar buttons={[
173
+ <ActionBar actions={[
172
174
  { label: '创建', type: 'primary', handler: create },
173
175
  { label: '编辑', handler: edit },
174
176
  { label: '删除', type: 'secondary', handler: remove },
@@ -179,7 +181,7 @@ type ButtonActions = Array<ButtonAction | null>;
179
181
 
180
182
  ### 自定义内容(snippet)
181
183
 
182
- 完全绕开 `buttons`,渲染任意内容:
184
+ 完全绕开 `actions`,渲染任意内容:
183
185
 
184
186
  ```svelte
185
187
  <ActionBar>
@@ -212,7 +214,7 @@ type ButtonActions = Array<ButtonAction | null>;
212
214
  );
213
215
  </script>
214
216
 
215
- <ActionBar buttons={actions} />
217
+ <ActionBar actions={actions} />
216
218
  ```
217
219
 
218
220
  ### 条件按钮(保留分隔符)
@@ -236,7 +238,7 @@ type ButtonActions = Array<ButtonAction | null>;
236
238
  ]);
237
239
  </script>
238
240
 
239
- <ActionBar buttons={actions} />
241
+ <ActionBar actions={actions} />
240
242
  ```
241
243
 
242
244
  > 注意:如果想让"按钮不显示"渲染为**完全空白**而不是分隔符,自己在外面套 `{#if}` 控制是否渲染整个 ActionBar。
@@ -247,7 +249,7 @@ type ButtonActions = Array<ButtonAction | null>;
247
249
 
248
250
  ```html
249
251
  <div class="uniface-action-bar" style="..." data-theme="...">
250
- <!-- children 或 buttons: -->
252
+ <!-- children 或 actions: -->
251
253
  <Button label="..." icon="..." tooltip="..." type="..." disabled={...} />
252
254
  <div class="uniface-separator" style="height: 24px;"></div> <!-- null 项 -->
253
255
  <Button ... />
@@ -273,7 +275,7 @@ type ButtonActions = Array<ButtonAction | null>;
273
275
  ```svelte
274
276
  <!-- 左对齐 + 全宽 + padding -->
275
277
  <ActionBar
276
- buttons={actions}
278
+ actions={actions}
277
279
  style="justify-content: flex-start; width: 100%; padding: 8px 12px; background: #f9fafb;"
278
280
  />
279
281
  ```
@@ -293,7 +295,7 @@ ActionBar 本身是普通 `<div>` —— 语义来自内部渲染的 `<button>`
293
295
  2. **居中 + fit-content 默认不合适时覆盖 `justify-content` 和 `width`**(表单底部、左对齐工具栏)
294
296
  3. **`type` 用对**:主操作 `primary`,中性/危险 `secondary`,再次要的不写
295
297
  4. **异步期间 disable 而不是 hide**,让用户看到"操作存在但暂时不可用"(权限场景除外)
296
- 5. **数据驱动工具栏优先用 `buttons`**,可序列化、好测试
298
+ 5. **数据驱动工具栏优先用 `actions`**,可序列化、好测试
297
299
  6. **数组别太长**,超过 8 个操作考虑改成下拉菜单
298
300
 
299
301
  ## 相关组件
@@ -5,7 +5,8 @@
5
5
  title?: string;
6
6
  round?: boolean;
7
7
  style?: string;
8
- contentStyle?: string;
8
+ /** 内容区内联样式 */
9
+ content$style?: string;
9
10
  theme?: string;
10
11
  children?: Snippet;
11
12
  header?: Snippet;
@@ -16,7 +17,7 @@
16
17
  title = '',
17
18
  round = false,
18
19
  style = '',
19
- contentStyle = '',
20
+ content$style = '',
20
21
  theme,
21
22
  children,
22
23
  header,
@@ -36,7 +37,7 @@
36
37
  {/if}
37
38
  </div>
38
39
  {/if}
39
- <div class="box-content" style={contentStyle}>
40
+ <div class="box-content" style={content$style}>
40
41
  {#if children}
41
42
  {@render children()}
42
43
  {/if}
@@ -3,7 +3,8 @@ interface Props {
3
3
  title?: string;
4
4
  round?: boolean;
5
5
  style?: string;
6
- contentStyle?: string;
6
+ /** 内容区内联样式 */
7
+ content$style?: string;
7
8
  theme?: string;
8
9
  children?: Snippet;
9
10
  header?: Snippet;
@@ -1,6 +1,8 @@
1
1
  # Box Component
2
2
 
3
- A bordered flex-column container with optional header / footer. The structural building block for cards, panels, and dashboard widgets Box itself is intentionally minimal (no shadow, no padding); you add visuals via `style` / `contentStyle` and CSS variables.
3
+ > **Renamed in 5.1.0**: this document uses the names from the [API Naming Guide](../../../docs/NAMING.md); the old names `contentStyle` were removed in 5.1.0 (no compatibility aliases are kept).
4
+
5
+ A bordered flex-column container with optional header / footer. The structural building block for cards, panels, and dashboard widgets — Box itself is intentionally minimal (no shadow, no padding); you add visuals via `style` / `content$style` and CSS variables.
4
6
 
5
7
  ## Features
6
8
 
@@ -9,7 +11,7 @@ A bordered flex-column container with optional header / footer. The structural b
9
11
  - **Default children** fill the middle (`flex: 1 1 auto`, `overflow: hidden`)
10
12
  - **Optional rounded corners** via `round` prop (sets `border-radius: var(--uniface-box-radius)`)
11
13
  - **Outer wrapper clips overflow** — children can't spill out
12
- - **Per-section styling**: `style` on the outer wrapper, `contentStyle` on the content area only
14
+ - **Per-section styling**: `style` on the outer wrapper, `content$style` on the content area only
13
15
  - **Theme hook**: `data-theme="{theme}"` on the outer wrapper
14
16
 
15
17
  ## Installation
@@ -36,7 +38,7 @@ import Box from '@ticatec/uniface-element/Box';
36
38
  </Box>
37
39
  ```
38
40
 
39
- > **Box has no built-in padding on the content area.** Wrap your content in its own padded container, or pass `contentStyle="padding: 16px;"`.
41
+ > **Box has no built-in padding on the content area.** Wrap your content in its own padded container, or pass `content$style="padding: 16px;"`.
40
42
 
41
43
  ## Props
42
44
 
@@ -45,7 +47,7 @@ import Box from '@ticatec/uniface-element/Box';
45
47
  | `title` | `string` | `''` | Title text rendered inside `.box-header > .title`. Ignored when `header` snippet is provided. Empty string → header block is not rendered (unless `header` snippet is set). |
46
48
  | `round` | `boolean` | `false` | Adds the `rounded` class → `border-radius: var(--uniface-box-radius)` |
47
49
  | `style` | `string` | `''` | Inline CSS on the outer wrapper (`.uniface-box`) |
48
- | `contentStyle` | `string` | `''` | Inline CSS on the content area (`.box-content`). Use this for padding so the header/footer aren't affected. |
50
+ | `content$style` | `string` | `''` | Inline CSS on the content area (`.box-content`). Use this for padding so the header/footer aren't affected. |
49
51
  | `theme` | `string \| undefined` | `undefined` | Set as `data-theme` on the outer wrapper for scoped CSS overrides |
50
52
  | `header` | `Snippet \| undefined` | `undefined` | Custom header content. **Overrides `title` when both are set.** |
51
53
  | `children` | `Snippet \| undefined` | `undefined` | Main content |
@@ -81,7 +83,7 @@ If you want the title AND extra content in the header, render the title yourself
81
83
  │ .box-header (if title/header) │ ← user-select: none, ellipsis on title
82
84
  ├──────────────────────────────────┤
83
85
  │ .box-content (flex 1, overflow: hidden)
84
- │ {children} │ ← NO built-in padding — add via contentStyle
86
+ │ {children} │ ← NO built-in padding — add via content$style
85
87
  ├──────────────────────────────────┤
86
88
  │ .box-footer (if footer) │ ← flex row, user-select: none
87
89
  └──────────────────────────────────┘
@@ -156,7 +158,7 @@ Built-in styles:
156
158
  import ActionBar from '@ticatec/uniface-element/ActionBar';
157
159
  </script>
158
160
 
159
- <Box title="User Profile" contentStyle="padding: 16px;">
161
+ <Box title="User Profile" content$style="padding: 16px;">
160
162
  <p>User information and details</p>
161
163
 
162
164
  {#snippet footer()}
@@ -174,7 +176,7 @@ Built-in styles:
174
176
  ### Custom Header (title + action button)
175
177
 
176
178
  ```svelte
177
- <Box contentStyle="padding: 16px;">
179
+ <Box content$style="padding: 16px;">
178
180
  {#snippet header()}
179
181
  <div style="display: flex; justify-content: space-between; align-items: center; padding: 8px 16px;">
180
182
  <h3>Sales Overview</h3>
@@ -194,7 +196,7 @@ Built-in styles:
194
196
  title="Rounded Card"
195
197
  round
196
198
  style="box-shadow: 0 2px 8px rgba(0,0,0,0.08);"
197
- contentStyle="padding: 16px;"
199
+ content$style="padding: 16px;"
198
200
  >
199
201
  <p>This card has rounded corners and a soft shadow.</p>
200
202
  </Box>
@@ -240,7 +242,7 @@ Built-in styles:
240
242
  ### Footer-Only (no header)
241
243
 
242
244
  ```svelte
243
- <Box contentStyle="padding: 16px;">
245
+ <Box content$style="padding: 16px;">
244
246
  <p>Content with a footer but no header.</p>
245
247
 
246
248
  {#snippet footer()}
@@ -287,7 +289,7 @@ Built-in styles:
287
289
  - **Title is single-line** (`white-space: nowrap; text-overflow: ellipsis`). Long titles show `…` instead of wrapping.
288
290
  - **Header & footer disable text selection** (`user-select: none`) — they're meant for labels/actions, not copyable content.
289
291
  - **No shadow by default.** Pass `style="box-shadow: ..."` for a card look.
290
- - **No content padding by default.** Use `contentStyle="padding: ..."` so the header/footer aren't affected.
292
+ - **No content padding by default.** Use `content$style="padding: ..."` so the header/footer aren't affected.
291
293
 
292
294
  ## Accessibility
293
295
 
@@ -297,7 +299,7 @@ Built-in styles:
297
299
 
298
300
  ## Best Practices
299
301
 
300
- 1. **Add your own content padding** via `contentStyle="padding: ..."`. Box intentionally doesn't pad so the header/footer edges can sit flush with the border.
302
+ 1. **Add your own content padding** via `content$style="padding: ..."`. Box intentionally doesn't pad so the header/footer edges can sit flush with the border.
301
303
  2. **Use `header` snippet over `title`** as soon as you need icons, action buttons, or a different layout — the snippet takes precedence anyway, so it's clearer.
302
304
  3. **Reserve the footer for actions**, not extra content — it has `user-select: none` and is visually separated by background.
303
305
  4. **For scrollable content**, wrap your content in its own `<div style="overflow: auto; height: 100%">`. Box's `overflow: hidden` will clip but won't scroll.
@@ -1,6 +1,8 @@
1
1
  # Box 容器组件
2
2
 
3
- 带可选 header / footer 的边框 flex-column 容器。卡片、面板、仪表盘小部件的结构化基础积木 —— Box 本身故意做得很最小(无阴影、无 padding),视觉效果通过 `style` / `contentStyle` CSS 变量叠加。
3
+ > **5.1.0 重命名**:本文使用 [API 命名规范](../../../docs/NAMING_CN.md) 中的名字;旧名 `contentStyle` 已在 5.1.0 移除(5.1.0 不保留兼容别名)。
4
+
5
+ 带可选 header / footer 的边框 flex-column 容器。卡片、面板、仪表盘小部件的结构化基础积木 —— Box 本身故意做得很最小(无阴影、无 padding),视觉效果通过 `style` / `content$style` 和 CSS 变量叠加。
4
6
 
5
7
  ## 功能特性
6
8
 
@@ -9,7 +11,7 @@
9
11
  - **默认 children 填充中间**(`flex: 1 1 auto`、`overflow: hidden`)
10
12
  - **可选圆角**通过 `round` prop(设置 `border-radius: var(--uniface-box-radius)`)
11
13
  - **外层 wrapper 裁剪溢出** —— 子内容不会溢出
12
- - **分区样式**:`style` 作用于外层,`contentStyle` 仅作用于内容区
14
+ - **分区样式**:`style` 作用于外层,`content$style` 仅作用于内容区
13
15
  - **主题钩子**:外层 wrapper 暴露 `data-theme="{theme}"`
14
16
 
15
17
  ## 安装
@@ -36,7 +38,7 @@ import Box from '@ticatec/uniface-element/Box';
36
38
  </Box>
37
39
  ```
38
40
 
39
- > **Box 的内容区不带 padding。** 自己用 padded 容器包内容,或者传 `contentStyle="padding: 16px;"`。
41
+ > **Box 的内容区不带 padding。** 自己用 padded 容器包内容,或者传 `content$style="padding: 16px;"`。
40
42
 
41
43
  ## 属性
42
44
 
@@ -45,7 +47,7 @@ import Box from '@ticatec/uniface-element/Box';
45
47
  | `title` | `string` | `''` | 渲染在 `.box-header > .title` 里的标题文字。提供 `header` snippet 时被忽略。空字符串 → 不渲染 header 块(除非提供了 `header` snippet) |
46
48
  | `round` | `boolean` | `false` | 加 `rounded` 类 → `border-radius: var(--uniface-box-radius)` |
47
49
  | `style` | `string` | `''` | 外层 wrapper(`.uniface-box`)的内联 CSS |
48
- | `contentStyle` | `string` | `''` | 内容区(`.box-content`)的内联 CSS。padding 写在这里,不影响 header/footer |
50
+ | `content$style` | `string` | `''` | 内容区(`.box-content`)的内联 CSS。padding 写在这里,不影响 header/footer |
49
51
  | `theme` | `string \| undefined` | `undefined` | 设为外层 wrapper 的 `data-theme`,便于作用域化 CSS 覆盖 |
50
52
  | `header` | `Snippet \| undefined` | `undefined` | 自定义 header 内容。**同时传 `title` 时 snippet 优先** |
51
53
  | `children` | `Snippet \| undefined` | `undefined` | 主要内容 |
@@ -81,7 +83,7 @@ header 块在 `title` 非空**或** `header` snippet 提供**任一满足**时
81
83
  │ .box-header (title/header 提供时) │ ← user-select: none,title 加省略号
82
84
  ├──────────────────────────────────┤
83
85
  │ .box-content (flex 1,overflow: hidden)
84
- │ {children} │ ← 默认无 padding,靠 contentStyle
86
+ │ {children} │ ← 默认无 padding,靠 content$style
85
87
  ├──────────────────────────────────┤
86
88
  │ .box-footer (footer 提供时) │ ← flex row,user-select: none
87
89
  └──────────────────────────────────┘
@@ -156,7 +158,7 @@ header 块在 `title` 非空**或** `header` snippet 提供**任一满足**时
156
158
  import ActionBar from '@ticatec/uniface-element/ActionBar';
157
159
  </script>
158
160
 
159
- <Box title="用户资料" contentStyle="padding: 16px;">
161
+ <Box title="用户资料" content$style="padding: 16px;">
160
162
  <p>用户信息和详情</p>
161
163
 
162
164
  {#snippet footer()}
@@ -174,7 +176,7 @@ header 块在 `title` 非空**或** `header` snippet 提供**任一满足**时
174
176
  ### 自定义标题(标题文字 + 操作按钮)
175
177
 
176
178
  ```svelte
177
- <Box contentStyle="padding: 16px;">
179
+ <Box content$style="padding: 16px;">
178
180
  {#snippet header()}
179
181
  <div style="display: flex; justify-content: space-between; align-items: center; padding: 8px 16px;">
180
182
  <h3>销售概览</h3>
@@ -194,7 +196,7 @@ header 块在 `title` 非空**或** `header` snippet 提供**任一满足**时
194
196
  title="圆角卡片"
195
197
  round
196
198
  style="box-shadow: 0 2px 8px rgba(0,0,0,0.08);"
197
- contentStyle="padding: 16px;"
199
+ content$style="padding: 16px;"
198
200
  >
199
201
  <p>这个卡片有圆角和柔和阴影。</p>
200
202
  </Box>
@@ -240,7 +242,7 @@ header 块在 `title` 非空**或** `header` snippet 提供**任一满足**时
240
242
  ### 仅 footer(无 header)
241
243
 
242
244
  ```svelte
243
- <Box contentStyle="padding: 16px;">
245
+ <Box content$style="padding: 16px;">
244
246
  <p>有 footer 但无 header 的内容。</p>
245
247
 
246
248
  {#snippet footer()}
@@ -287,7 +289,7 @@ header 块在 `title` 非空**或** `header` snippet 提供**任一满足**时
287
289
  - **title 单行**(`white-space: nowrap; text-overflow: ellipsis`)。长 title 显示 `…` 而不是换行
288
290
  - **header 和 footer 禁用文本选中**(`user-select: none`)—— 它们是标签/操作,不是可复制内容
289
291
  - **默认无阴影。** 传 `style="box-shadow: ..."` 走卡片视觉
290
- - **默认无内容 padding。** 用 `contentStyle="padding: ..."`,不影响 header/footer
292
+ - **默认无内容 padding。** 用 `content$style="padding: ..."`,不影响 header/footer
291
293
 
292
294
  ## 无障碍访问
293
295
 
@@ -297,7 +299,7 @@ header 块在 `title` 非空**或** `header` snippet 提供**任一满足**时
297
299
 
298
300
  ## 最佳实践
299
301
 
300
- 1. **内容 padding 自己加**,用 `contentStyle="padding: ..."`。Box 故意不加,好让 header/footer 边缘与边框对齐
302
+ 1. **内容 padding 自己加**,用 `content$style="padding: ..."`。Box 故意不加,好让 header/footer 边缘与边框对齐
301
303
  2. **一旦需要图标、操作按钮或不同布局,就用 `header` snippet 替代 `title`** —— 反正 snippet 优先,显式更清楚
302
304
  3. **footer 留给操作**,不是额外内容 —— 它带 `user-select: none`,视觉上也有背景区分
303
305
  4. **需要滚动的内容**自己在 children 里包 `<div style="overflow: auto; height: 100%">`。Box 的 `overflow: hidden` 只裁不滚
@@ -2,7 +2,7 @@
2
2
 
3
3
  import type {Snippet} from "svelte";
4
4
  import {getLayoutMode} from "../../unifaceContext";
5
- import type {FieldLayout} from "../../types";
5
+ import type {Direction} from "../../types";
6
6
  interface Props {
7
7
  style?: string;
8
8
  theme?: string;
@@ -12,7 +12,8 @@
12
12
  label$alignment?: 'center' | 'top',
13
13
  autoHeight?: boolean;
14
14
  required?: boolean;
15
- layout?: FieldLayout;
15
+ /** 标签与控件的排布方向 */
16
+ direction?: Direction;
16
17
  class?: string;
17
18
  children: Snippet;
18
19
  }
@@ -28,11 +29,11 @@
28
29
  class: className,
29
30
  children,
30
31
  autoHeight,
31
- layout = getLayoutMode()
32
+ direction = getLayoutMode(),
32
33
  }: Props = $props();
33
34
 
34
35
  </script>
35
- <div class="uniface-form-field {layout} {className}" data-theme={theme} class:fit-height={autoHeight} style={style}>
36
+ <div class="uniface-form-field {direction} {className}" data-theme={theme} class:fit-height={autoHeight} style={style}>
36
37
  <div class="form-content">
37
38
  <div class="field-label {label$alignment=='top' ? 'vert-top' : ''}" style={label$style}>
38
39
  {#if required}
@@ -1,5 +1,5 @@
1
1
  import type { Snippet } from "svelte";
2
- import type { FieldLayout } from "../../types";
2
+ import type { Direction } from "../../types";
3
3
  interface Props {
4
4
  style?: string;
5
5
  theme?: string;
@@ -9,7 +9,8 @@ interface Props {
9
9
  label$alignment?: 'center' | 'top';
10
10
  autoHeight?: boolean;
11
11
  required?: boolean;
12
- layout?: FieldLayout;
12
+ /** 标签与控件的排布方向 */
13
+ direction?: Direction;
13
14
  class?: string;
14
15
  children: Snippet;
15
16
  }
@@ -1,5 +1,7 @@
1
1
  # FormField Component
2
2
 
3
+ > **Renamed in 5.1.0**: this document uses the names from the [API Naming Guide](../../../docs/NAMING.md); the old names `layout` were removed in 5.1.0 (no compatibility aliases are kept).
4
+
3
5
  A form-field wrapper that places a label next to (or above) a single child control, with required-marker, suffix, alignment, and auto-height support. The richer sibling of [CriteriaField](../criteria_field/README.md) — supports both vertical and horizontal layouts, inherits layout from context, and is designed for editing forms (not just filter rows).
4
6
 
5
7
  ## Features
@@ -46,18 +48,18 @@ The default layout comes from `getLayoutMode()` (Svelte context). If no ancestor
46
48
  | `label` | `string` | _(required)_ | Label text. `labelSuffix` is appended directly to this string inside the same `<span>`. |
47
49
  | `required` | `boolean` | `false` | Renders a red `*` before the label text |
48
50
  | `labelSuffix` | `string` | `':'` | String appended after the label text. Pass `""` to drop the colon. |
49
- | `label$alignment` | `'center' \| 'top'` | `'center'` | Label vertical alignment **in horizontal layout only**. `top` aligns the label with the field's first line (useful for textareas). Ignored in vertical layout. |
51
+ | `label$alignment` | `'center' \| 'top'` | `'center'` | Label vertical alignment **in horizontal direction only**. `top` aligns the label with the field's first line (useful for textareas). Ignored in vertical direction. |
50
52
  | `label$style` | `string \| undefined` | `undefined` | Inline CSS on the label `<div>` |
51
- | `autoHeight` | `boolean` | `false` | Makes the outer wrapper and content area `height: 100%`. The field flexes to fill height in vertical layout. |
52
- | `layout` | `'vertical' \| 'horizontal'` | `getLayoutMode()` | Layout mode. Defaults from context, falls back to `'vertical'`. |
53
+ | `autoHeight` | `boolean` | `false` | Makes the outer wrapper and content area `height: 100%`. The field flexes to fill height in vertical direction. |
54
+ | `direction` | `'vertical' \| 'horizontal'` | `getLayoutMode()` | Layout mode. Defaults from context, falls back to `'vertical'`. |
53
55
  | `style` | `string` | `''` | Inline CSS on the outer wrapper |
54
- | `class` | `string` | `''` | Extra CSS class on the outer wrapper (in addition to `uniface-form-field {layout}`) |
56
+ | `class` | `string` | `''` | Extra CSS class on the outer wrapper (in addition to `uniface-form-field {direction}`) |
55
57
  | `theme` | `string \| undefined` | `undefined` | Set as `data-theme` on the outer wrapper |
56
58
  | `children` | `Snippet` | | The actual form control |
57
59
 
58
60
  ## Layout
59
61
 
60
- Controlled by `layout` (or context). Two modes:
62
+ Controlled by `direction` (or context). Two modes:
61
63
 
62
64
  ### Vertical (default)
63
65
 
@@ -106,7 +108,7 @@ Useful for `MemoEditor` and other tall controls that should fill their container
106
108
  ### Top-Aligned Label (for Textareas)
107
109
 
108
110
  ```svelte
109
- <FormField label="Description" label$alignment="top" layout="horizontal">
111
+ <FormField label="Description" label$alignment="top" direction="horizontal">
110
112
  <MemoEditor placeholder="Enter description..." rows={6} />
111
113
  </FormField>
112
114
  ```
@@ -128,7 +130,7 @@ Without `label$alignment="top"`, the label centers vertically against the textar
128
130
 
129
131
  ```svelte
130
132
  <div style="height: 320px;">
131
- <FormField label="Notes" autoHeight layout="vertical">
133
+ <FormField label="Notes" autoHeight direction="vertical">
132
134
  <MemoEditor placeholder="Enter notes..." />
133
135
  </FormField>
134
136
  </div>
@@ -139,7 +141,7 @@ The MemoEditor fills the 320px container.
139
141
  ### Forced Horizontal Layout (Ignores Context)
140
142
 
141
143
  ```svelte
142
- <FormField label="Code" layout="horizontal" labelSuffix="">
144
+ <FormField label="Code" direction="horizontal" labelSuffix="">
143
145
  <TextEditor bind:value={code} />
144
146
  </FormField>
145
147
  ```
@@ -224,7 +226,7 @@ When `autoHeight={true}`, the outer wrapper also gets `class:fit-height`.
224
226
  - **Label is not associated with the field** via `<label for="...">`. Same a11y caveat as CriteriaField — see below.
225
227
  - **`labelSuffix` is glued to label** inside the same `<span>` — no separator space.
226
228
  - **Required `*` is rendered before the label**, not after. So `required` + `label="Name"` + `labelSuffix=":"` produces `*Name:`.
227
- - **Layout comes from context by default.** Ancestors can call `setLayoutMode('horizontal')` to flip the whole form. The `layout` prop overrides per-field.
229
+ - **Layout comes from context by default.** Ancestors can call `setLayoutMode('horizontal')` to flip the whole form. The `direction` prop overrides per-field.
228
230
  - **Label is non-selectable** (`user-select: none`) — different from CriteriaField, where labels are selectable.
229
231
  - **Long labels**: vertical mode truncates with `…`; horizontal mode wraps (`white-space: normal`) unless `autoHeight` is also on (then it becomes `white-space: wrap`).
230
232