@ticatec/topside-elements 1.0.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 (809) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/LICENSE +21 -0
  3. package/README.md +308 -0
  4. package/README_CN.md +372 -0
  5. package/dist/app_layout/ClassicLayout.svelte +140 -0
  6. package/dist/app_layout/ClassicLayout.svelte.d.ts +21 -0
  7. package/dist/app_layout/ColumnsLayout.svelte +95 -0
  8. package/dist/app_layout/ColumnsLayout.svelte.d.ts +23 -0
  9. package/dist/app_layout/HeaderLayout.svelte +93 -0
  10. package/dist/app_layout/HeaderLayout.svelte.d.ts +14 -0
  11. package/dist/app_layout/README.md +316 -0
  12. package/dist/app_layout/README_CN.md +323 -0
  13. package/dist/app_layout/RowsLayout.svelte +95 -0
  14. package/dist/app_layout/RowsLayout.svelte.d.ts +23 -0
  15. package/dist/app_layout/SidebarLayout.svelte +93 -0
  16. package/dist/app_layout/SidebarLayout.svelte.d.ts +14 -0
  17. package/dist/app_layout/index.d.ts +6 -0
  18. package/dist/app_layout/index.js +6 -0
  19. package/dist/assets/loading.gif +0 -0
  20. package/dist/base-calendar/CalendarBase.svelte +188 -0
  21. package/dist/base-calendar/CalendarBase.svelte.d.ts +15 -0
  22. package/dist/base-calendar/CalendarDay.d.ts +7 -0
  23. package/dist/base-calendar/CalendarDay.js +1 -0
  24. package/dist/base-calendar/DateContext.d.ts +19 -0
  25. package/dist/base-calendar/DateContext.js +49 -0
  26. package/dist/base-calendar/MonthPickupPanel.svelte +101 -0
  27. package/dist/base-calendar/MonthPickupPanel.svelte.d.ts +8 -0
  28. package/dist/base-calendar/MonthlyCalendar.svelte +227 -0
  29. package/dist/base-calendar/MonthlyCalendar.svelte.d.ts +25 -0
  30. package/dist/base-calendar/YearPickupPanel.svelte +143 -0
  31. package/dist/base-calendar/YearPickupPanel.svelte.d.ts +9 -0
  32. package/dist/base-calendar/dateUtils.d.ts +9 -0
  33. package/dist/base-calendar/dateUtils.js +38 -0
  34. package/dist/base-calendar/index.d.ts +5 -0
  35. package/dist/base-calendar/index.js +5 -0
  36. package/dist/composite/pagination_panel/PaginationPanel.svelte +117 -0
  37. package/dist/composite/pagination_panel/PaginationPanel.svelte.d.ts +22 -0
  38. package/dist/composite/pagination_panel/README.md +130 -0
  39. package/dist/composite/pagination_panel/README_CN.md +130 -0
  40. package/dist/composite/pagination_panel/index.d.ts +4 -0
  41. package/dist/composite/pagination_panel/index.js +2 -0
  42. package/dist/composite/transfer/README.md +795 -0
  43. package/dist/composite/transfer/Transfer.svelte +136 -0
  44. package/dist/composite/transfer/Transfer.svelte.d.ts +25 -0
  45. package/dist/composite/transfer/index.d.ts +4 -0
  46. package/dist/composite/transfer/index.js +2 -0
  47. package/dist/data_display/accordion/Accordion.svelte +76 -0
  48. package/dist/data_display/accordion/Accordion.svelte.d.ts +12 -0
  49. package/dist/data_display/accordion/AccordionItem.d.ts +5 -0
  50. package/dist/data_display/accordion/AccordionItem.js +1 -0
  51. package/dist/data_display/accordion/AccordionItemView.svelte +128 -0
  52. package/dist/data_display/accordion/AccordionItemView.svelte.d.ts +13 -0
  53. package/dist/data_display/accordion/README.md +104 -0
  54. package/dist/data_display/accordion/README_CN.md +104 -0
  55. package/dist/data_display/accordion/index.d.ts +4 -0
  56. package/dist/data_display/accordion/index.js +2 -0
  57. package/dist/data_display/card/Card.svelte +107 -0
  58. package/dist/data_display/card/Card.svelte.d.ts +23 -0
  59. package/dist/data_display/card/CardAction.d.ts +36 -0
  60. package/dist/data_display/card/CardAction.js +1 -0
  61. package/dist/data_display/card/CardHeader.svelte +20 -0
  62. package/dist/data_display/card/CardHeader.svelte.d.ts +6 -0
  63. package/dist/data_display/card/CommonCardActionBar.svelte +156 -0
  64. package/dist/data_display/card/CommonCardActionBar.svelte.d.ts +15 -0
  65. package/dist/data_display/card/README.md +144 -0
  66. package/dist/data_display/card/README_CN.md +144 -0
  67. package/dist/data_display/card/index.d.ts +5 -0
  68. package/dist/data_display/card/index.js +2 -0
  69. package/dist/data_display/concise_data_table/Column.d.ts +9 -0
  70. package/dist/data_display/concise_data_table/Column.js +1 -0
  71. package/dist/data_display/concise_data_table/ConciseListTable.svelte +274 -0
  72. package/dist/data_display/concise_data_table/ConciseListTable.svelte.d.ts +20 -0
  73. package/dist/data_display/concise_data_table/DataCell.svelte +28 -0
  74. package/dist/data_display/concise_data_table/DataCell.svelte.d.ts +9 -0
  75. package/dist/data_display/concise_data_table/DataRow.svelte +44 -0
  76. package/dist/data_display/concise_data_table/DataRow.svelte.d.ts +11 -0
  77. package/dist/data_display/concise_data_table/README.md +177 -0
  78. package/dist/data_display/concise_data_table/README_CN.md +177 -0
  79. package/dist/data_display/concise_data_table/TableOptions.d.ts +11 -0
  80. package/dist/data_display/concise_data_table/TableOptions.js +1 -0
  81. package/dist/data_display/concise_data_table/index.d.ts +5 -0
  82. package/dist/data_display/concise_data_table/index.js +2 -0
  83. package/dist/data_display/concise_data_table/utils.d.ts +6 -0
  84. package/dist/data_display/concise_data_table/utils.js +38 -0
  85. package/dist/data_display/list_box/ListBox.svelte +424 -0
  86. package/dist/data_display/list_box/ListBox.svelte.d.ts +31 -0
  87. package/dist/data_display/list_box/README.md +158 -0
  88. package/dist/data_display/list_box/README_CN.md +158 -0
  89. package/dist/data_display/list_box/index.d.ts +4 -0
  90. package/dist/data_display/list_box/index.js +2 -0
  91. package/dist/data_display/tree_view/README.md +246 -0
  92. package/dist/data_display/tree_view/README_CN.md +240 -0
  93. package/dist/data_display/tree_view/TreeNodeView.svelte +227 -0
  94. package/dist/data_display/tree_view/TreeNodeView.svelte.d.ts +22 -0
  95. package/dist/data_display/tree_view/TreeView.svelte +225 -0
  96. package/dist/data_display/tree_view/TreeView.svelte.d.ts +45 -0
  97. package/dist/data_display/tree_view/index.d.ts +7 -0
  98. package/dist/data_display/tree_view/index.js +2 -0
  99. package/dist/data_table/DataTable.svelte +249 -0
  100. package/dist/data_table/DataTable.svelte.d.ts +57 -0
  101. package/dist/data_table/README.md +728 -0
  102. package/dist/data_table/README_CN.md +753 -0
  103. package/dist/data_table/UniDataTable.d.ts +30 -0
  104. package/dist/data_table/UniDataTable.js +89 -0
  105. package/dist/data_table/assets/loading.gif +0 -0
  106. package/dist/data_table/index.d.ts +15 -0
  107. package/dist/data_table/index.js +4 -0
  108. package/dist/data_table/lib/ActionsColumn.d.ts +15 -0
  109. package/dist/data_table/lib/ActionsColumn.js +1 -0
  110. package/dist/data_table/lib/CellAction.d.ts +9 -0
  111. package/dist/data_table/lib/CellAction.js +1 -0
  112. package/dist/data_table/lib/CommonHeaderCell.d.ts +37 -0
  113. package/dist/data_table/lib/CommonHeaderCell.js +1 -0
  114. package/dist/data_table/lib/CompareFn.d.ts +3 -0
  115. package/dist/data_table/lib/CompareFn.js +2 -0
  116. package/dist/data_table/lib/DataColumn.d.ts +83 -0
  117. package/dist/data_table/lib/DataColumn.js +1 -0
  118. package/dist/data_table/lib/FixedColumns.d.ts +15 -0
  119. package/dist/data_table/lib/FixedColumns.js +1 -0
  120. package/dist/data_table/lib/FormatCellFn.d.ts +2 -0
  121. package/dist/data_table/lib/FormatCellFn.js +1 -0
  122. package/dist/data_table/lib/HrefLink.d.ts +12 -0
  123. package/dist/data_table/lib/HrefLink.js +1 -0
  124. package/dist/data_table/lib/IndicatorColumn.d.ts +19 -0
  125. package/dist/data_table/lib/IndicatorColumn.js +1 -0
  126. package/dist/data_table/lib/OrderDirection.d.ts +4 -0
  127. package/dist/data_table/lib/OrderDirection.js +5 -0
  128. package/dist/data_table/lib/RowAction.d.ts +23 -0
  129. package/dist/data_table/lib/RowAction.js +1 -0
  130. package/dist/data_table/lib/TabContext.d.ts +4 -0
  131. package/dist/data_table/lib/TabContext.js +4 -0
  132. package/dist/data_table/lib/TableColumns.d.ts +9 -0
  133. package/dist/data_table/lib/TableColumns.js +12 -0
  134. package/dist/data_table/lib/TableUtils.d.ts +4 -0
  135. package/dist/data_table/lib/TableUtils.js +18 -0
  136. package/dist/data_table/lib/clickOutSide.d.ts +3 -0
  137. package/dist/data_table/lib/clickOutSide.js +17 -0
  138. package/dist/data_table/lib/summary.d.ts +40 -0
  139. package/dist/data_table/lib/summary.js +123 -0
  140. package/dist/data_table/lib/virtualWindow.d.ts +37 -0
  141. package/dist/data_table/lib/virtualWindow.js +41 -0
  142. package/dist/data_table/parts/ActionCell.svelte +23 -0
  143. package/dist/data_table/parts/ActionCell.svelte.d.ts +8 -0
  144. package/dist/data_table/parts/ActionsPanel.svelte +108 -0
  145. package/dist/data_table/parts/ActionsPanel.svelte.d.ts +19 -0
  146. package/dist/data_table/parts/ActionsRow.svelte +150 -0
  147. package/dist/data_table/parts/ActionsRow.svelte.d.ts +14 -0
  148. package/dist/data_table/parts/ContentPanel.svelte +210 -0
  149. package/dist/data_table/parts/ContentPanel.svelte.d.ts +36 -0
  150. package/dist/data_table/parts/DataCell.svelte +40 -0
  151. package/dist/data_table/parts/DataCell.svelte.d.ts +10 -0
  152. package/dist/data_table/parts/DataRow.svelte +43 -0
  153. package/dist/data_table/parts/DataRow.svelte.d.ts +13 -0
  154. package/dist/data_table/parts/FixedColumnsPanel.svelte +195 -0
  155. package/dist/data_table/parts/FixedColumnsPanel.svelte.d.ts +31 -0
  156. package/dist/data_table/parts/FixedHeaderPanel.svelte +151 -0
  157. package/dist/data_table/parts/FixedHeaderPanel.svelte.d.ts +19 -0
  158. package/dist/data_table/parts/FixedRow.svelte +88 -0
  159. package/dist/data_table/parts/FixedRow.svelte.d.ts +22 -0
  160. package/dist/data_table/parts/HrefCell.svelte +47 -0
  161. package/dist/data_table/parts/HrefCell.svelte.d.ts +8 -0
  162. package/dist/data_table/parts/PopupMenu.svelte +71 -0
  163. package/dist/data_table/parts/PopupMenu.svelte.d.ts +9 -0
  164. package/dist/data_table/parts/TableHeaderPanel.svelte +112 -0
  165. package/dist/data_table/parts/TableHeaderPanel.svelte.d.ts +17 -0
  166. package/dist/data_table/parts/TableRow.d.ts +4 -0
  167. package/dist/data_table/parts/TableRow.js +6 -0
  168. package/dist/data_table/parts/TableRows.d.ts +7 -0
  169. package/dist/data_table/parts/TableRows.js +13 -0
  170. package/dist/data_table/parts/TextCell.svelte +27 -0
  171. package/dist/data_table/parts/TextCell.svelte.d.ts +8 -0
  172. package/dist/data_table/parts/TreeRootCell.svelte +2 -0
  173. package/dist/data_table/parts/TreeRootCell.svelte.d.ts +18 -0
  174. package/dist/feedback/progress-bar/ProgressBar.svelte +150 -0
  175. package/dist/feedback/progress-bar/ProgressBar.svelte.d.ts +16 -0
  176. package/dist/feedback/progress-bar/ProgressStatus.d.ts +6 -0
  177. package/dist/feedback/progress-bar/ProgressStatus.js +8 -0
  178. package/dist/feedback/progress-bar/README.md +242 -0
  179. package/dist/feedback/progress-bar/README_CN.md +242 -0
  180. package/dist/feedback/progress-bar/index.d.ts +4 -0
  181. package/dist/feedback/progress-bar/index.js +4 -0
  182. package/dist/form/FormEditor.svelte +42 -0
  183. package/dist/form/FormEditor.svelte.d.ts +17 -0
  184. package/dist/form/attachment_files/AttachmentEditor.svelte +494 -0
  185. package/dist/form/attachment_files/AttachmentEditor.svelte.d.ts +75 -0
  186. package/dist/form/attachment_files/AttachmentFile.d.ts +53 -0
  187. package/dist/form/attachment_files/AttachmentFile.js +84 -0
  188. package/dist/form/attachment_files/AttachmentListItem.svelte +208 -0
  189. package/dist/form/attachment_files/AttachmentListItem.svelte.d.ts +25 -0
  190. package/dist/form/attachment_files/AttachmentTile.svelte +296 -0
  191. package/dist/form/attachment_files/AttachmentTile.svelte.d.ts +25 -0
  192. package/dist/form/attachment_files/FileUpload.d.ts +22 -0
  193. package/dist/form/attachment_files/FileUpload.js +1 -0
  194. package/dist/form/attachment_files/README.md +111 -0
  195. package/dist/form/attachment_files/README_CN.md +111 -0
  196. package/dist/form/attachment_files/UploadTask.d.ts +27 -0
  197. package/dist/form/attachment_files/UploadTask.js +1 -0
  198. package/dist/form/attachment_files/index.d.ts +11 -0
  199. package/dist/form/attachment_files/index.js +6 -0
  200. package/dist/form/cascade_options_select/CascadeOptionSelect.svelte +170 -0
  201. package/dist/form/cascade_options_select/CascadeOptionSelect.svelte.d.ts +23 -0
  202. package/dist/form/cascade_options_select/IsLeaf.d.ts +4 -0
  203. package/dist/form/cascade_options_select/IsLeaf.js +1 -0
  204. package/dist/form/cascade_options_select/OptionsBox.svelte +81 -0
  205. package/dist/form/cascade_options_select/OptionsBox.svelte.d.ts +12 -0
  206. package/dist/form/cascade_options_select/README.md +188 -0
  207. package/dist/form/cascade_options_select/README_CN.md +188 -0
  208. package/dist/form/cascade_options_select/index.d.ts +2 -0
  209. package/dist/form/cascade_options_select/index.js +2 -0
  210. package/dist/form/checkbox/CheckBox.svelte +222 -0
  211. package/dist/form/checkbox/CheckBox.svelte.d.ts +18 -0
  212. package/dist/form/checkbox/README.md +366 -0
  213. package/dist/form/checkbox/README_CN.md +366 -0
  214. package/dist/form/checkbox/index.d.ts +2 -0
  215. package/dist/form/checkbox/index.js +2 -0
  216. package/dist/form/color_picker/ColorPicker.svelte +173 -0
  217. package/dist/form/color_picker/ColorPicker.svelte.d.ts +9 -0
  218. package/dist/form/color_picker/ColorPickerPanel.svelte +178 -0
  219. package/dist/form/color_picker/ColorPickerPanel.svelte.d.ts +10 -0
  220. package/dist/form/color_picker/README.md +296 -0
  221. package/dist/form/color_picker/README_CN.md +296 -0
  222. package/dist/form/color_picker/index.d.ts +2 -0
  223. package/dist/form/color_picker/index.js +2 -0
  224. package/dist/form/common_editor/BasePicker.svelte +48 -0
  225. package/dist/form/common_editor/BasePicker.svelte.d.ts +11 -0
  226. package/dist/form/common_editor/CommonEditor.svelte +121 -0
  227. package/dist/form/common_editor/CommonEditor.svelte.d.ts +15 -0
  228. package/dist/form/common_editor/CommonEditorProps.d.ts +26 -0
  229. package/dist/form/common_editor/CommonEditorProps.js +1 -0
  230. package/dist/form/common_editor/CommonFieldProps.d.ts +56 -0
  231. package/dist/form/common_editor/CommonFieldProps.js +1 -0
  232. package/dist/form/common_editor/CommonPicker.svelte +201 -0
  233. package/dist/form/common_editor/CommonPicker.svelte.d.ts +29 -0
  234. package/dist/form/common_editor/CommonPickerProps.d.ts +12 -0
  235. package/dist/form/common_editor/CommonPickerProps.js +1 -0
  236. package/dist/form/common_editor/CommonPopupEditor.svelte +99 -0
  237. package/dist/form/common_editor/CommonPopupEditor.svelte.d.ts +18 -0
  238. package/dist/form/common_editor/NumberInput.svelte +255 -0
  239. package/dist/form/common_editor/NumberInput.svelte.d.ts +17 -0
  240. package/dist/form/common_editor/index.d.ts +8 -0
  241. package/dist/form/common_editor/index.js +6 -0
  242. package/dist/form/common_range_editor/CommonRangeEditor.svelte +141 -0
  243. package/dist/form/common_range_editor/CommonRangeEditor.svelte.d.ts +23 -0
  244. package/dist/form/common_range_editor/index.d.ts +2 -0
  245. package/dist/form/common_range_editor/index.js +2 -0
  246. package/dist/form/date_picker/DatePicker.svelte +71 -0
  247. package/dist/form/date_picker/DatePicker.svelte.d.ts +11 -0
  248. package/dist/form/date_picker/DateTimePicker.svelte +168 -0
  249. package/dist/form/date_picker/DateTimePicker.svelte.d.ts +14 -0
  250. package/dist/form/date_picker/README.md +341 -0
  251. package/dist/form/date_picker/README_CN.md +341 -0
  252. package/dist/form/date_picker/ScrollBar.svelte +129 -0
  253. package/dist/form/date_picker/ScrollBar.svelte.d.ts +10 -0
  254. package/dist/form/date_picker/TimePanel.svelte +95 -0
  255. package/dist/form/date_picker/TimePanel.svelte.d.ts +11 -0
  256. package/dist/form/date_picker/index.d.ts +4 -0
  257. package/dist/form/date_picker/index.js +4 -0
  258. package/dist/form/date_range/DateRangeEditor.svelte +123 -0
  259. package/dist/form/date_range/DateRangeEditor.svelte.d.ts +21 -0
  260. package/dist/form/date_range/README.md +250 -0
  261. package/dist/form/date_range/README_CN.md +250 -0
  262. package/dist/form/date_range/index.d.ts +2 -0
  263. package/dist/form/date_range/index.js +2 -0
  264. package/dist/form/events.d.ts +70 -0
  265. package/dist/form/events.js +6 -0
  266. package/dist/form/group_box/group-check-box/GroupCheckBox.svelte +211 -0
  267. package/dist/form/group_box/group-check-box/GroupCheckBox.svelte.d.ts +32 -0
  268. package/dist/form/group_box/group-check-box/README.md +336 -0
  269. package/dist/form/group_box/group-check-box/README_CN.md +336 -0
  270. package/dist/form/group_box/group-check-box/index.d.ts +2 -0
  271. package/dist/form/group_box/group-check-box/index.js +2 -0
  272. package/dist/form/group_box/group-radio-box/GroupRadioBox.svelte +159 -0
  273. package/dist/form/group_box/group-radio-box/GroupRadioBox.svelte.d.ts +29 -0
  274. package/dist/form/group_box/group-radio-box/README.md +910 -0
  275. package/dist/form/group_box/group-radio-box/README_CN.md +910 -0
  276. package/dist/form/group_box/group-radio-box/index.d.ts +2 -0
  277. package/dist/form/group_box/group-radio-box/index.js +2 -0
  278. package/dist/form/image_editor/ImageEditor.svelte +118 -0
  279. package/dist/form/image_editor/ImageEditor.svelte.d.ts +52 -0
  280. package/dist/form/image_editor/ImageFile.d.ts +11 -0
  281. package/dist/form/image_editor/ImageFile.js +1 -0
  282. package/dist/form/image_editor/ImagePreview.svelte +151 -0
  283. package/dist/form/image_editor/ImagePreview.svelte.d.ts +7 -0
  284. package/dist/form/image_editor/README.md +89 -0
  285. package/dist/form/image_editor/README_CN.md +89 -0
  286. package/dist/form/image_editor/index.d.ts +11 -0
  287. package/dist/form/image_editor/index.js +4 -0
  288. package/dist/form/input_options_select/InputOptionsSelect.svelte +257 -0
  289. package/dist/form/input_options_select/InputOptionsSelect.svelte.d.ts +18 -0
  290. package/dist/form/input_options_select/README.md +73 -0
  291. package/dist/form/input_options_select/README_CN.md +73 -0
  292. package/dist/form/input_options_select/index.d.ts +4 -0
  293. package/dist/form/input_options_select/index.js +2 -0
  294. package/dist/form/lookup_editor/LookupEditor.svelte +85 -0
  295. package/dist/form/lookup_editor/LookupEditor.svelte.d.ts +16 -0
  296. package/dist/form/lookup_editor/README.md +345 -0
  297. package/dist/form/lookup_editor/README_CN.md +345 -0
  298. package/dist/form/lookup_editor/index.d.ts +2 -0
  299. package/dist/form/lookup_editor/index.js +2 -0
  300. package/dist/form/memo_editor/MemoEditor.svelte +176 -0
  301. package/dist/form/memo_editor/MemoEditor.svelte.d.ts +18 -0
  302. package/dist/form/memo_editor/README.md +283 -0
  303. package/dist/form/memo_editor/README_CN.md +283 -0
  304. package/dist/form/memo_editor/index.d.ts +2 -0
  305. package/dist/form/memo_editor/index.js +2 -0
  306. package/dist/form/number_editor/NumberEditor.svelte +113 -0
  307. package/dist/form/number_editor/NumberEditor.svelte.d.ts +20 -0
  308. package/dist/form/number_editor/README.md +356 -0
  309. package/dist/form/number_editor/README_CN.md +356 -0
  310. package/dist/form/number_editor/index.d.ts +2 -0
  311. package/dist/form/number_editor/index.js +2 -0
  312. package/dist/form/number_range/NumberRange.svelte +69 -0
  313. package/dist/form/number_range/NumberRange.svelte.d.ts +20 -0
  314. package/dist/form/number_range/README.md +498 -0
  315. package/dist/form/number_range/README_CN.md +488 -0
  316. package/dist/form/number_range/index.d.ts +2 -0
  317. package/dist/form/number_range/index.js +2 -0
  318. package/dist/form/options_multi_select/OptionsMultiSelect.svelte +229 -0
  319. package/dist/form/options_multi_select/OptionsMultiSelect.svelte.d.ts +21 -0
  320. package/dist/form/options_multi_select/README.md +251 -0
  321. package/dist/form/options_multi_select/README_CN.md +242 -0
  322. package/dist/form/options_multi_select/index.d.ts +2 -0
  323. package/dist/form/options_multi_select/index.js +2 -0
  324. package/dist/form/options_select/OptionsSelect.svelte +208 -0
  325. package/dist/form/options_select/OptionsSelect.svelte.d.ts +43 -0
  326. package/dist/form/options_select/README.md +371 -0
  327. package/dist/form/options_select/README_CN.md +368 -0
  328. package/dist/form/options_select/index.d.ts +2 -0
  329. package/dist/form/options_select/index.js +2 -0
  330. package/dist/form/prompts_text_editor/PromptsTextEditor.svelte +96 -0
  331. package/dist/form/prompts_text_editor/PromptsTextEditor.svelte.d.ts +15 -0
  332. package/dist/form/prompts_text_editor/README.md +320 -0
  333. package/dist/form/prompts_text_editor/README_CN.md +320 -0
  334. package/dist/form/prompts_text_editor/index.d.ts +2 -0
  335. package/dist/form/prompts_text_editor/index.js +2 -0
  336. package/dist/form/radio_button/README.md +372 -0
  337. package/dist/form/radio_button/README_CN.md +363 -0
  338. package/dist/form/radio_button/RadioButton.svelte +177 -0
  339. package/dist/form/radio_button/RadioButton.svelte.d.ts +17 -0
  340. package/dist/form/radio_button/index.d.ts +2 -0
  341. package/dist/form/radio_button/index.js +2 -0
  342. package/dist/form/search_box/README.md +301 -0
  343. package/dist/form/search_box/README_CN.md +301 -0
  344. package/dist/form/search_box/SearchBox.svelte +91 -0
  345. package/dist/form/search_box/SearchBox.svelte.d.ts +11 -0
  346. package/dist/form/search_box/index.d.ts +2 -0
  347. package/dist/form/search_box/index.js +2 -0
  348. package/dist/form/switch/README.md +231 -0
  349. package/dist/form/switch/README_CN.md +255 -0
  350. package/dist/form/switch/Switch.svelte +138 -0
  351. package/dist/form/switch/Switch.svelte.d.ts +12 -0
  352. package/dist/form/switch/index.d.ts +2 -0
  353. package/dist/form/switch/index.js +2 -0
  354. package/dist/form/text_editor/PasswordEditor.svelte +70 -0
  355. package/dist/form/text_editor/PasswordEditor.svelte.d.ts +9 -0
  356. package/dist/form/text_editor/PasswordEditor_README.md +551 -0
  357. package/dist/form/text_editor/PasswordEditor_README_CN.md +551 -0
  358. package/dist/form/text_editor/README.md +356 -0
  359. package/dist/form/text_editor/README_CN.md +356 -0
  360. package/dist/form/text_editor/TextEditor.svelte +91 -0
  361. package/dist/form/text_editor/TextEditor.svelte.d.ts +16 -0
  362. package/dist/form/text_editor/index.d.ts +4 -0
  363. package/dist/form/text_editor/index.js +4 -0
  364. package/dist/form/time_editor/README.md +386 -0
  365. package/dist/form/time_editor/README_CN.md +386 -0
  366. package/dist/form/time_editor/TimeEditor.svelte +231 -0
  367. package/dist/form/time_editor/TimeEditor.svelte.d.ts +16 -0
  368. package/dist/form/time_editor/index.d.ts +2 -0
  369. package/dist/form/time_editor/index.js +2 -0
  370. package/dist/form/types.d.ts +8 -0
  371. package/dist/form/types.js +1 -0
  372. package/dist/form/unit-number-editor/README.md +352 -0
  373. package/dist/form/unit-number-editor/README_CN.md +352 -0
  374. package/dist/form/unit-number-editor/UnitNumberEditor.svelte +221 -0
  375. package/dist/form/unit-number-editor/UnitNumberEditor.svelte.d.ts +30 -0
  376. package/dist/form/unit-number-editor/UnitOption.d.ts +26 -0
  377. package/dist/form/unit-number-editor/UnitOption.js +1 -0
  378. package/dist/form/unit-number-editor/index.d.ts +4 -0
  379. package/dist/form/unit-number-editor/index.js +3 -0
  380. package/dist/general/button/Button.svelte +72 -0
  381. package/dist/general/button/Button.svelte.d.ts +23 -0
  382. package/dist/general/button/IconButton.svelte +60 -0
  383. package/dist/general/button/IconButton.svelte.d.ts +21 -0
  384. package/dist/general/button/IconButton_README.md +522 -0
  385. package/dist/general/button/IconButton_README_CN.md +522 -0
  386. package/dist/general/button/README.md +361 -0
  387. package/dist/general/button/README_CN.md +357 -0
  388. package/dist/general/button/TextButton.svelte +74 -0
  389. package/dist/general/button/TextButton.svelte.d.ts +22 -0
  390. package/dist/general/button/TextButton_README.md +569 -0
  391. package/dist/general/button/TextButton_README_CN.md +569 -0
  392. package/dist/general/button/index.d.ts +8 -0
  393. package/dist/general/button/index.js +6 -0
  394. package/dist/general/icon/Icon.svelte +90 -0
  395. package/dist/general/icon/Icon.svelte.d.ts +14 -0
  396. package/dist/general/icon/README.md +255 -0
  397. package/dist/general/icon/README_CN.md +255 -0
  398. package/dist/general/icon/index.d.ts +2 -0
  399. package/dist/general/icon/index.js +2 -0
  400. package/dist/general/separator/README.md +203 -0
  401. package/dist/general/separator/README_CN.md +203 -0
  402. package/dist/general/separator/Separator.svelte +24 -0
  403. package/dist/general/separator/Separator.svelte.d.ts +7 -0
  404. package/dist/general/separator/index.d.ts +2 -0
  405. package/dist/general/separator/index.js +2 -0
  406. package/dist/general/split/README.md +312 -0
  407. package/dist/general/split/README_CN.md +312 -0
  408. package/dist/general/split/Split.svelte +150 -0
  409. package/dist/general/split/Split.svelte.d.ts +10 -0
  410. package/dist/general/split/index.d.ts +2 -0
  411. package/dist/general/split/index.js +2 -0
  412. package/dist/general/tag/README.md +319 -0
  413. package/dist/general/tag/README_CN.md +319 -0
  414. package/dist/general/tag/Tag.svelte +193 -0
  415. package/dist/general/tag/Tag.svelte.d.ts +17 -0
  416. package/dist/general/tag/index.d.ts +2 -0
  417. package/dist/general/tag/index.js +2 -0
  418. package/dist/i18nRes/i18nRes.d.ts +47 -0
  419. package/dist/i18nRes/i18nRes.js +49 -0
  420. package/dist/i18nRes/index.d.ts +2 -0
  421. package/dist/i18nRes/index.js +2 -0
  422. package/dist/index.d.ts +10 -0
  423. package/dist/index.js +4 -0
  424. package/dist/layouts/action_bar/ActionBar.svelte +60 -0
  425. package/dist/layouts/action_bar/ActionBar.svelte.d.ts +12 -0
  426. package/dist/layouts/action_bar/ButtonAction.d.ts +1 -0
  427. package/dist/layouts/action_bar/ButtonAction.js +1 -0
  428. package/dist/layouts/action_bar/README.md +304 -0
  429. package/dist/layouts/action_bar/README_CN.md +304 -0
  430. package/dist/layouts/action_bar/index.d.ts +5 -0
  431. package/dist/layouts/action_bar/index.js +2 -0
  432. package/dist/layouts/app_top_bar/AppTopBar.svelte +83 -0
  433. package/dist/layouts/app_top_bar/AppTopBar.svelte.d.ts +12 -0
  434. package/dist/layouts/app_top_bar/README.md +258 -0
  435. package/dist/layouts/app_top_bar/README_CN.md +258 -0
  436. package/dist/layouts/app_top_bar/index.d.ts +2 -0
  437. package/dist/layouts/app_top_bar/index.js +2 -0
  438. package/dist/layouts/box/Box.svelte +104 -0
  439. package/dist/layouts/box/Box.svelte.d.ts +15 -0
  440. package/dist/layouts/box/README.md +312 -0
  441. package/dist/layouts/box/README_CN.md +312 -0
  442. package/dist/layouts/box/index.d.ts +2 -0
  443. package/dist/layouts/box/index.js +2 -0
  444. package/dist/layouts/criteria_field/CriteriaField.svelte +97 -0
  445. package/dist/layouts/criteria_field/CriteriaField.svelte.d.ts +13 -0
  446. package/dist/layouts/criteria_field/README.md +277 -0
  447. package/dist/layouts/criteria_field/README_CN.md +277 -0
  448. package/dist/layouts/criteria_field/index.d.ts +2 -0
  449. package/dist/layouts/criteria_field/index.js +2 -0
  450. package/dist/layouts/form_field/FormField.svelte +139 -0
  451. package/dist/layouts/form_field/FormField.svelte.d.ts +19 -0
  452. package/dist/layouts/form_field/README.md +252 -0
  453. package/dist/layouts/form_field/README_CN.md +251 -0
  454. package/dist/layouts/form_field/index.d.ts +2 -0
  455. package/dist/layouts/form_field/index.js +2 -0
  456. package/dist/layouts/form_panel/flex_form/CellField.svelte +42 -0
  457. package/dist/layouts/form_panel/flex_form/CellField.svelte.d.ts +13 -0
  458. package/dist/layouts/form_panel/flex_form/EmptyCell.svelte +26 -0
  459. package/dist/layouts/form_panel/flex_form/EmptyCell.svelte.d.ts +6 -0
  460. package/dist/layouts/form_panel/flex_form/FlexForm.svelte +44 -0
  461. package/dist/layouts/form_panel/flex_form/FlexForm.svelte.d.ts +9 -0
  462. package/dist/layouts/form_panel/flex_form/README.md +202 -0
  463. package/dist/layouts/form_panel/flex_form/README_CN.md +202 -0
  464. package/dist/layouts/form_panel/flex_form/RowBreak.svelte +11 -0
  465. package/dist/layouts/form_panel/flex_form/RowBreak.svelte.d.ts +18 -0
  466. package/dist/layouts/form_panel/flex_form/index.d.ts +6 -0
  467. package/dist/layouts/form_panel/flex_form/index.js +6 -0
  468. package/dist/layouts/form_panel/flex_row_form/Cell.svelte +42 -0
  469. package/dist/layouts/form_panel/flex_row_form/Cell.svelte.d.ts +13 -0
  470. package/dist/layouts/form_panel/flex_row_form/FormContainer.svelte +45 -0
  471. package/dist/layouts/form_panel/flex_row_form/FormContainer.svelte.d.ts +10 -0
  472. package/dist/layouts/form_panel/flex_row_form/README.md +224 -0
  473. package/dist/layouts/form_panel/flex_row_form/README_CN.md +224 -0
  474. package/dist/layouts/form_panel/flex_row_form/Row.svelte +37 -0
  475. package/dist/layouts/form_panel/flex_row_form/Row.svelte.d.ts +12 -0
  476. package/dist/layouts/form_panel/flex_row_form/index.d.ts +7 -0
  477. package/dist/layouts/form_panel/flex_row_form/index.js +7 -0
  478. package/dist/layouts/form_panel/grid_form/EmptyCell.svelte +32 -0
  479. package/dist/layouts/form_panel/grid_form/EmptyCell.svelte.d.ts +9 -0
  480. package/dist/layouts/form_panel/grid_form/GridField.svelte +48 -0
  481. package/dist/layouts/form_panel/grid_form/GridField.svelte.d.ts +22 -0
  482. package/dist/layouts/form_panel/grid_form/GridForm.svelte +49 -0
  483. package/dist/layouts/form_panel/grid_form/GridForm.svelte.d.ts +13 -0
  484. package/dist/layouts/form_panel/grid_form/README.md +217 -0
  485. package/dist/layouts/form_panel/grid_form/README_CN.md +217 -0
  486. package/dist/layouts/form_panel/grid_form/index.d.ts +5 -0
  487. package/dist/layouts/form_panel/grid_form/index.js +5 -0
  488. package/dist/layouts/form_panel/index.d.ts +4 -0
  489. package/dist/layouts/form_panel/index.js +4 -0
  490. package/dist/layouts/page/Page.svelte +98 -0
  491. package/dist/layouts/page/Page.svelte.d.ts +19 -0
  492. package/dist/layouts/page/PageHeader.svelte +59 -0
  493. package/dist/layouts/page/PageHeader.svelte.d.ts +12 -0
  494. package/dist/layouts/page/README.md +286 -0
  495. package/dist/layouts/page/README_CN.md +286 -0
  496. package/dist/layouts/page/index.d.ts +6 -0
  497. package/dist/layouts/page/index.js +4 -0
  498. package/dist/lib/index.d.ts +7 -0
  499. package/dist/lib/index.js +3 -0
  500. package/dist/navigation/breadcrumbs/Breadcrumb.d.ts +4 -0
  501. package/dist/navigation/breadcrumbs/Breadcrumb.js +1 -0
  502. package/dist/navigation/breadcrumbs/Breadcrumbs.svelte +91 -0
  503. package/dist/navigation/breadcrumbs/Breadcrumbs.svelte.d.ts +12 -0
  504. package/dist/navigation/breadcrumbs/README.md +257 -0
  505. package/dist/navigation/breadcrumbs/README_CN.md +257 -0
  506. package/dist/navigation/breadcrumbs/index.d.ts +4 -0
  507. package/dist/navigation/breadcrumbs/index.js +2 -0
  508. package/dist/navigation/nav_menu/MenuItem.d.ts +9 -0
  509. package/dist/navigation/nav_menu/MenuItem.js +1 -0
  510. package/dist/navigation/nav_menu/Menus.d.ts +12 -0
  511. package/dist/navigation/nav_menu/Menus.js +15 -0
  512. package/dist/navigation/nav_menu/NavigatorMenu.svelte +318 -0
  513. package/dist/navigation/nav_menu/NavigatorMenu.svelte.d.ts +17 -0
  514. package/dist/navigation/nav_menu/NavigatorMenuItem.svelte +183 -0
  515. package/dist/navigation/nav_menu/NavigatorMenuItem.svelte.d.ts +18 -0
  516. package/dist/navigation/nav_menu/README.md +224 -0
  517. package/dist/navigation/nav_menu/README_CN.md +224 -0
  518. package/dist/navigation/nav_menu/index.d.ts +8 -0
  519. package/dist/navigation/nav_menu/index.js +4 -0
  520. package/dist/navigation/navigator/NavItemStatus.d.ts +5 -0
  521. package/dist/navigation/navigator/NavItemStatus.js +6 -0
  522. package/dist/navigation/navigator/Navigator.svelte +156 -0
  523. package/dist/navigation/navigator/Navigator.svelte.d.ts +15 -0
  524. package/dist/navigation/navigator/README.md +304 -0
  525. package/dist/navigation/navigator/README_CN.md +304 -0
  526. package/dist/navigation/navigator/index.d.ts +4 -0
  527. package/dist/navigation/navigator/index.js +4 -0
  528. package/dist/navigation/page-stack/PageStack.svelte +160 -0
  529. package/dist/navigation/page-stack/PageStack.svelte.d.ts +24 -0
  530. package/dist/navigation/page-stack/PageStackContext.d.ts +25 -0
  531. package/dist/navigation/page-stack/PageStackContext.js +12 -0
  532. package/dist/navigation/page-stack/PageStackFrame.svelte +24 -0
  533. package/dist/navigation/page-stack/PageStackFrame.svelte.d.ts +11 -0
  534. package/dist/navigation/page-stack/README.md +154 -0
  535. package/dist/navigation/page-stack/README_CN.md +154 -0
  536. package/dist/navigation/page-stack/index.d.ts +6 -0
  537. package/dist/navigation/page-stack/index.js +4 -0
  538. package/dist/navigation/pagination/Pagination.svelte +300 -0
  539. package/dist/navigation/pagination/Pagination.svelte.d.ts +15 -0
  540. package/dist/navigation/pagination/README.md +248 -0
  541. package/dist/navigation/pagination/README_CN.md +248 -0
  542. package/dist/navigation/pagination/index.d.ts +2 -0
  543. package/dist/navigation/pagination/index.js +2 -0
  544. package/dist/navigation/progress_step_bar/ProgressStep.d.ts +20 -0
  545. package/dist/navigation/progress_step_bar/ProgressStep.js +6 -0
  546. package/dist/navigation/progress_step_bar/ProgressStepBar.svelte +56 -0
  547. package/dist/navigation/progress_step_bar/ProgressStepBar.svelte.d.ts +11 -0
  548. package/dist/navigation/progress_step_bar/ProgressStepBlock.svelte +197 -0
  549. package/dist/navigation/progress_step_bar/ProgressStepBlock.svelte.d.ts +12 -0
  550. package/dist/navigation/progress_step_bar/README.md +247 -0
  551. package/dist/navigation/progress_step_bar/README_CN.md +247 -0
  552. package/dist/navigation/progress_step_bar/index.d.ts +6 -0
  553. package/dist/navigation/progress_step_bar/index.js +5 -0
  554. package/dist/navigation/tabs/README.md +353 -0
  555. package/dist/navigation/tabs/README_CN.md +353 -0
  556. package/dist/navigation/tabs/Tabs.svelte +400 -0
  557. package/dist/navigation/tabs/Tabs.svelte.d.ts +28 -0
  558. package/dist/navigation/tabs/index.d.ts +4 -0
  559. package/dist/navigation/tabs/index.js +2 -0
  560. package/dist/overlay/common/DateFormats.d.ts +5 -0
  561. package/dist/overlay/common/DateFormats.js +6 -0
  562. package/dist/overlay/common/FloatingPanel.svelte +69 -0
  563. package/dist/overlay/common/FloatingPanel.svelte.d.ts +15 -0
  564. package/dist/overlay/common/FullscreenOverlay.svelte +42 -0
  565. package/dist/overlay/common/FullscreenOverlay.svelte.d.ts +8 -0
  566. package/dist/overlay/common/ModalPopover.svelte +56 -0
  567. package/dist/overlay/common/ModalPopover.svelte.d.ts +11 -0
  568. package/dist/overlay/common/Popover.svelte +155 -0
  569. package/dist/overlay/common/Popover.svelte.d.ts +17 -0
  570. package/dist/overlay/common/escapeClose.d.ts +28 -0
  571. package/dist/overlay/common/escapeClose.js +47 -0
  572. package/dist/overlay/common/focusTrap.d.ts +8 -0
  573. package/dist/overlay/common/focusTrap.js +83 -0
  574. package/dist/overlay/common/mountSingleton.d.ts +28 -0
  575. package/dist/overlay/common/mountSingleton.js +48 -0
  576. package/dist/overlay/common/outsideClick.d.ts +28 -0
  577. package/dist/overlay/common/outsideClick.js +20 -0
  578. package/dist/overlay/common/scrollLock.d.ts +8 -0
  579. package/dist/overlay/common/scrollLock.js +49 -0
  580. package/dist/overlay/common/topside-utils.d.ts +3 -0
  581. package/dist/overlay/common/topside-utils.js +19 -0
  582. package/dist/overlay/common/utils.d.ts +13 -0
  583. package/dist/overlay/common/utils.js +136 -0
  584. package/dist/overlay/context-menu/ContextMenu.svelte.d.ts +22 -0
  585. package/dist/overlay/context-menu/ContextMenu.svelte.js +53 -0
  586. package/dist/overlay/context-menu/ContextMenuItem.d.ts +31 -0
  587. package/dist/overlay/context-menu/ContextMenuItem.js +1 -0
  588. package/dist/overlay/context-menu/ContextMenuPanel.svelte +211 -0
  589. package/dist/overlay/context-menu/ContextMenuPanel.svelte.d.ts +3 -0
  590. package/dist/overlay/context-menu/README.md +361 -0
  591. package/dist/overlay/context-menu/README_CN.md +361 -0
  592. package/dist/overlay/context-menu/index.d.ts +6 -0
  593. package/dist/overlay/context-menu/index.js +3 -0
  594. package/dist/overlay/dialog/BeforeClose.d.ts +4 -0
  595. package/dist/overlay/dialog/BeforeClose.js +1 -0
  596. package/dist/overlay/dialog/CommonDialog.svelte +58 -0
  597. package/dist/overlay/dialog/CommonDialog.svelte.d.ts +22 -0
  598. package/dist/overlay/dialog/Dialog.svelte +255 -0
  599. package/dist/overlay/dialog/Dialog.svelte.d.ts +29 -0
  600. package/dist/overlay/dialog/DialogBoard.svelte +15 -0
  601. package/dist/overlay/dialog/DialogBoard.svelte.d.ts +18 -0
  602. package/dist/overlay/dialog/DialogManager.svelte.d.ts +24 -0
  603. package/dist/overlay/dialog/DialogManager.svelte.js +58 -0
  604. package/dist/overlay/dialog/DialogWrapper.svelte +12 -0
  605. package/dist/overlay/dialog/DialogWrapper.svelte.d.ts +8 -0
  606. package/dist/overlay/dialog/IDialog.d.ts +14 -0
  607. package/dist/overlay/dialog/IDialog.js +2 -0
  608. package/dist/overlay/dialog/README.md +540 -0
  609. package/dist/overlay/dialog/README_CN.md +540 -0
  610. package/dist/overlay/dialog/index.d.ts +14 -0
  611. package/dist/overlay/dialog/index.js +7 -0
  612. package/dist/overlay/drawer/Drawer.svelte +116 -0
  613. package/dist/overlay/drawer/Drawer.svelte.d.ts +11 -0
  614. package/dist/overlay/drawer/README.md +249 -0
  615. package/dist/overlay/drawer/README_CN.md +249 -0
  616. package/dist/overlay/drawer/index.d.ts +2 -0
  617. package/dist/overlay/drawer/index.js +2 -0
  618. package/dist/overlay/indicator/Indicator.svelte.d.ts +14 -0
  619. package/dist/overlay/indicator/Indicator.svelte.js +27 -0
  620. package/dist/overlay/indicator/IndicatorPanel.svelte +43 -0
  621. package/dist/overlay/indicator/IndicatorPanel.svelte.d.ts +18 -0
  622. package/dist/overlay/indicator/README.md +142 -0
  623. package/dist/overlay/indicator/README_CN.md +142 -0
  624. package/dist/overlay/indicator/index.d.ts +2 -0
  625. package/dist/overlay/indicator/index.js +2 -0
  626. package/dist/overlay/message-box/IMessageBox.d.ts +17 -0
  627. package/dist/overlay/message-box/IMessageBox.js +6 -0
  628. package/dist/overlay/message-box/MessageBox.svelte.d.ts +36 -0
  629. package/dist/overlay/message-box/MessageBox.svelte.js +77 -0
  630. package/dist/overlay/message-box/MessageBoxPanel.svelte +247 -0
  631. package/dist/overlay/message-box/MessageBoxPanel.svelte.d.ts +3 -0
  632. package/dist/overlay/message-box/README.md +92 -0
  633. package/dist/overlay/message-box/README_CN.md +92 -0
  634. package/dist/overlay/message-box/index.d.ts +5 -0
  635. package/dist/overlay/message-box/index.js +4 -0
  636. package/dist/overlay/toast/README.md +59 -0
  637. package/dist/overlay/toast/README_CN.md +59 -0
  638. package/dist/overlay/toast/Toast.svelte.d.ts +18 -0
  639. package/dist/overlay/toast/Toast.svelte.js +49 -0
  640. package/dist/overlay/toast/ToastPanel.svelte +56 -0
  641. package/dist/overlay/toast/ToastPanel.svelte.d.ts +3 -0
  642. package/dist/overlay/toast/index.d.ts +2 -0
  643. package/dist/overlay/toast/index.js +2 -0
  644. package/dist/overlay/tooltip/README.md +334 -0
  645. package/dist/overlay/tooltip/README_CN.md +334 -0
  646. package/dist/overlay/tooltip/Tooltip.svelte +280 -0
  647. package/dist/overlay/tooltip/Tooltip.svelte.d.ts +7 -0
  648. package/dist/overlay/tooltip/index.d.ts +2 -0
  649. package/dist/overlay/tooltip/index.js +2 -0
  650. package/dist/topside-elements.css +1753 -0
  651. package/dist/topsideContext.d.ts +10 -0
  652. package/dist/topsideContext.js +59 -0
  653. package/dist/types.d.ts +184 -0
  654. package/dist/types.js +9 -0
  655. package/dist/utils/exclude.d.ts +1 -0
  656. package/dist/utils/exclude.js +3 -0
  657. package/dist/utils/prefixFilter.d.ts +5 -0
  658. package/dist/utils/prefixFilter.js +33 -0
  659. package/docs/NAMING.md +364 -0
  660. package/docs/NAMING_CN.md +364 -0
  661. package/docs/components/README.md +135 -0
  662. package/docs/components/accordion/README.md +71 -0
  663. package/docs/components/accordion/example.svelte +8 -0
  664. package/docs/components/action-bar/README.md +114 -0
  665. package/docs/components/action-bar/example.svelte +7 -0
  666. package/docs/components/app-top-bar/README.md +60 -0
  667. package/docs/components/app-top-bar/example.svelte +9 -0
  668. package/docs/components/attachment-editor/README.md +224 -0
  669. package/docs/components/attachment-editor/example.svelte +22 -0
  670. package/docs/components/box/README.md +63 -0
  671. package/docs/components/box/example.svelte +10 -0
  672. package/docs/components/breadcrumbs/README.md +86 -0
  673. package/docs/components/breadcrumbs/example.svelte +11 -0
  674. package/docs/components/button/README.md +110 -0
  675. package/docs/components/button/example.svelte +11 -0
  676. package/docs/components/card/README.md +127 -0
  677. package/docs/components/card/example.svelte +10 -0
  678. package/docs/components/cascade-options-select/README.md +168 -0
  679. package/docs/components/cascade-options-select/example.svelte +18 -0
  680. package/docs/components/checkbox/README.md +103 -0
  681. package/docs/components/checkbox/example.svelte +15 -0
  682. package/docs/components/classic-layout/README.md +76 -0
  683. package/docs/components/classic-layout/example.svelte +16 -0
  684. package/docs/components/color-picker/README.md +132 -0
  685. package/docs/components/color-picker/example.svelte +16 -0
  686. package/docs/components/columns-layout/README.md +74 -0
  687. package/docs/components/columns-layout/example.svelte +16 -0
  688. package/docs/components/common-dialog/README.md +118 -0
  689. package/docs/components/common-dialog/example.svelte +13 -0
  690. package/docs/components/concise-data-table/README.md +296 -0
  691. package/docs/components/concise-data-table/example.svelte +16 -0
  692. package/docs/components/context-menu/README.md +99 -0
  693. package/docs/components/context-menu/example.svelte +10 -0
  694. package/docs/components/criteria-field/README.md +70 -0
  695. package/docs/components/criteria-field/example.svelte +10 -0
  696. package/docs/components/data-table/README.md +388 -0
  697. package/docs/components/data-table/example.svelte +23 -0
  698. package/docs/components/date-picker/README.md +136 -0
  699. package/docs/components/date-picker/example.svelte +16 -0
  700. package/docs/components/date-range/README.md +122 -0
  701. package/docs/components/date-range/example.svelte +15 -0
  702. package/docs/components/date-time-picker/README.md +142 -0
  703. package/docs/components/date-time-picker/example.svelte +16 -0
  704. package/docs/components/dialog/README.md +181 -0
  705. package/docs/components/dialog/example.svelte +13 -0
  706. package/docs/components/dialog-board/README.md +41 -0
  707. package/docs/components/dialog-board/example.svelte +5 -0
  708. package/docs/components/drawer/README.md +70 -0
  709. package/docs/components/drawer/example.svelte +12 -0
  710. package/docs/components/flex-form/README.md +55 -0
  711. package/docs/components/flex-form/example.svelte +7 -0
  712. package/docs/components/flex-row-form/README.md +56 -0
  713. package/docs/components/flex-row-form/example.svelte +7 -0
  714. package/docs/components/form-field/README.md +84 -0
  715. package/docs/components/form-field/example.svelte +10 -0
  716. package/docs/components/full-screen-overlay/README.md +66 -0
  717. package/docs/components/full-screen-overlay/example.svelte +11 -0
  718. package/docs/components/grid-form/README.md +85 -0
  719. package/docs/components/grid-form/example.svelte +9 -0
  720. package/docs/components/group-check-box/README.md +147 -0
  721. package/docs/components/group-check-box/example.svelte +21 -0
  722. package/docs/components/group-radio-box/README.md +144 -0
  723. package/docs/components/group-radio-box/example.svelte +21 -0
  724. package/docs/components/header-layout/README.md +65 -0
  725. package/docs/components/header-layout/example.svelte +12 -0
  726. package/docs/components/icon/README.md +88 -0
  727. package/docs/components/icon/example.svelte +9 -0
  728. package/docs/components/icon-button/README.md +100 -0
  729. package/docs/components/icon-button/example.svelte +11 -0
  730. package/docs/components/image-editor/README.md +262 -0
  731. package/docs/components/image-editor/example.svelte +21 -0
  732. package/docs/components/indicator/README.md +53 -0
  733. package/docs/components/indicator/example.svelte +14 -0
  734. package/docs/components/input-options-select/README.md +163 -0
  735. package/docs/components/input-options-select/example.svelte +16 -0
  736. package/docs/components/list-box/ListItem.svelte +14 -0
  737. package/docs/components/list-box/README.md +220 -0
  738. package/docs/components/list-box/example.svelte +61 -0
  739. package/docs/components/lookup-editor/README.md +137 -0
  740. package/docs/components/lookup-editor/example.svelte +16 -0
  741. package/docs/components/memo-editor/README.md +143 -0
  742. package/docs/components/memo-editor/example.svelte +16 -0
  743. package/docs/components/message-box/README.md +68 -0
  744. package/docs/components/message-box/example.svelte +10 -0
  745. package/docs/components/navigator/README.md +76 -0
  746. package/docs/components/navigator/example.svelte +14 -0
  747. package/docs/components/navigator-menu/README.md +116 -0
  748. package/docs/components/navigator-menu/example.svelte +12 -0
  749. package/docs/components/number-editor/README.md +144 -0
  750. package/docs/components/number-editor/example.svelte +16 -0
  751. package/docs/components/number-range/README.md +116 -0
  752. package/docs/components/number-range/example.svelte +15 -0
  753. package/docs/components/options-multi-select/README.md +161 -0
  754. package/docs/components/options-multi-select/example.svelte +20 -0
  755. package/docs/components/options-select/README.md +160 -0
  756. package/docs/components/options-select/example.svelte +21 -0
  757. package/docs/components/page/README.md +77 -0
  758. package/docs/components/page/example.svelte +10 -0
  759. package/docs/components/page-stack/README.md +67 -0
  760. package/docs/components/page-stack/example.svelte +7 -0
  761. package/docs/components/pagination/README.md +105 -0
  762. package/docs/components/pagination/example.svelte +13 -0
  763. package/docs/components/pagination-panel/README.md +135 -0
  764. package/docs/components/pagination-panel/example.svelte +17 -0
  765. package/docs/components/password-editor/README.md +128 -0
  766. package/docs/components/password-editor/example.svelte +16 -0
  767. package/docs/components/popup-hint/README.md +44 -0
  768. package/docs/components/popup-hint/example.svelte +5 -0
  769. package/docs/components/progress-bar/README.md +74 -0
  770. package/docs/components/progress-bar/example.svelte +8 -0
  771. package/docs/components/progress-step-bar/README.md +102 -0
  772. package/docs/components/progress-step-bar/example.svelte +11 -0
  773. package/docs/components/prompts-text-editor/README.md +148 -0
  774. package/docs/components/prompts-text-editor/example.svelte +16 -0
  775. package/docs/components/radio-button/README.md +121 -0
  776. package/docs/components/radio-button/example.svelte +18 -0
  777. package/docs/components/rows-layout/README.md +74 -0
  778. package/docs/components/rows-layout/example.svelte +16 -0
  779. package/docs/components/search-box/README.md +136 -0
  780. package/docs/components/search-box/example.svelte +16 -0
  781. package/docs/components/separator/README.md +44 -0
  782. package/docs/components/separator/example.svelte +7 -0
  783. package/docs/components/sidebar-layout/README.md +65 -0
  784. package/docs/components/sidebar-layout/example.svelte +12 -0
  785. package/docs/components/split/README.md +48 -0
  786. package/docs/components/split/example.svelte +8 -0
  787. package/docs/components/switch/README.md +77 -0
  788. package/docs/components/switch/example.svelte +11 -0
  789. package/docs/components/tabs/README.md +142 -0
  790. package/docs/components/tabs/example.svelte +22 -0
  791. package/docs/components/tag/README.md +74 -0
  792. package/docs/components/tag/example.svelte +9 -0
  793. package/docs/components/text-button/README.md +109 -0
  794. package/docs/components/text-button/example.svelte +11 -0
  795. package/docs/components/text-editor/README.md +147 -0
  796. package/docs/components/text-editor/example.svelte +16 -0
  797. package/docs/components/time-editor/README.md +130 -0
  798. package/docs/components/time-editor/example.svelte +16 -0
  799. package/docs/components/toast/README.md +52 -0
  800. package/docs/components/toast/example.svelte +9 -0
  801. package/docs/components/tooltip/README.md +44 -0
  802. package/docs/components/tooltip/example.svelte +5 -0
  803. package/docs/components/transfer/README.md +116 -0
  804. package/docs/components/transfer/example.svelte +13 -0
  805. package/docs/components/tree-view/README.md +179 -0
  806. package/docs/components/tree-view/example.svelte +27 -0
  807. package/docs/components/unit-number-editor/README.md +195 -0
  808. package/docs/components/unit-number-editor/example.svelte +17 -0
  809. package/package.json +515 -0
@@ -0,0 +1,155 @@
1
+ <script lang="ts">
2
+ import {onMount, type Snippet} from 'svelte';
3
+ import Portal from "svelte-portal";
4
+ import {acquireScrollLock} from "./scrollLock";
5
+ import {outsideClick} from "./outsideClick";
6
+ import {registerEscapeHandler} from "./escapeClose";
7
+
8
+ interface Props {
9
+ style?: string;
10
+ target: HTMLElement;
11
+ align?: 'left' | 'right' | 'center';
12
+ autoFit?: boolean;
13
+ theme?: string;
14
+ margin?: number;
15
+ onclose?: () => void;
16
+ /** 附加到 .contents-inner 上的 class(用于覆盖 overflow 等样式) */
17
+ /** 内容容器附加 class */
18
+ body$class?: string;
19
+ children?: Snippet;
20
+ }
21
+
22
+ let {
23
+ onclose,
24
+ style,
25
+ target,
26
+ theme,
27
+ align = 'left',
28
+ autoFit = true,
29
+ margin = 0,
30
+ body$class = '',
31
+ children
32
+ }: Props = $props();
33
+
34
+ let position = $state({top: 0, left: 0, width: 0, height: 0});
35
+ let hidden = $state(true);
36
+ let width = $state(0);
37
+ let vertPos = $state('');
38
+ let horzPos = $state('');
39
+ let contentPanel: any;
40
+
41
+ let w = $state(0);
42
+ let h = $state(0);
43
+
44
+
45
+ const updatePosition = () => {
46
+ if (!hidden && target) {
47
+ let rect = target.getBoundingClientRect();
48
+ position = {
49
+ top: rect.top,
50
+ left: rect.left,
51
+ width: rect.width,
52
+ height: rect.height
53
+ };
54
+ rect = contentPanel.getBoundingClientRect();
55
+ width = rect.width;
56
+ vertPos = (h - position.top - position.height) > rect.height ? `top: ${(position.top + position.height + 1)}px` : `top: ${position.top - rect.height - 1}px`;
57
+
58
+ // Regression fix: this used to compare an absolute viewport
59
+ // x-coordinate (position.left/position.left+position.width) against
60
+ // the popup's own rendered width, which doesn't express "is there
61
+ // room to the right/left in the viewport" at all — for a narrow
62
+ // anchor near the left edge it would almost always pick "left"
63
+ // regardless of how wide the popup actually was, clipping wide
64
+ // content (e.g. a multi-column cascade picker) against the right
65
+ // edge of the window instead of flipping side. Compare against the
66
+ // actual viewport width `w` instead.
67
+ if (align == 'left') {
68
+ horzPos = (position.left + width > w) ? "right: 0" : "left: 0";
69
+ } else {
70
+ horzPos = (position.left + position.width - width < 0) ? "left: 0" : "right: 0";
71
+ }
72
+ if (autoFit) {
73
+ horzPos += '; width: 100%'
74
+ }
75
+ }
76
+ }
77
+
78
+ // Coalesces bursts of triggers (resize + scroll + ResizeObserver firing in
79
+ // the same frame) into a single updatePosition() call instead of one per
80
+ // listener, so repositioning does one layout read/write pass per frame.
81
+ let rafId: number | null = null;
82
+ const scheduleUpdate = () => {
83
+ if (rafId != null) return;
84
+ rafId = requestAnimationFrame(() => {
85
+ rafId = null;
86
+ updatePosition();
87
+ });
88
+ };
89
+
90
+ onMount(() => {
91
+ const release = acquireScrollLock();
92
+ // Registered later than any overlay already open "under" this popover
93
+ // (e.g. a dialog), so this is topmost on the shared Escape stack and
94
+ // closes first.
95
+ const unregisterEscape = registerEscapeHandler(() => close());
96
+
97
+ // hidden must flip before updatePosition() — updatePosition() is a no-op
98
+ // while hidden, so calling it first (as this used to) skipped the initial
99
+ // positioning entirely and left the popover rendered at (0,0) until the
100
+ // next scroll/resize.
101
+ const showTimeout = setTimeout(() => {
102
+ hidden = false;
103
+ scheduleUpdate();
104
+ }, 50); // 延迟显示 portal
105
+ const releaseTimeout = setTimeout(release, 100);
106
+ window.addEventListener("resize", scheduleUpdate);
107
+ // capture:true — scroll events don't bubble, so a listener on the bubble phase
108
+ // only ever sees window/document-level scroll. Capturing catches scroll on any
109
+ // nested scrollable ancestor (a table body, a dialog's scroll area, etc.) too,
110
+ // which is what keeps the popover pinned to its anchor while that container
111
+ // scrolls. Matches the pattern in FloatingPanel.svelte.
112
+ window.addEventListener("scroll", scheduleUpdate, true);
113
+ // Observing both the anchor and the popover body catches anchor-size changes
114
+ // and content-size changes, replacing the unconditional 10ms poll that used
115
+ // to run regardless of visibility/tab focus and forced a layout every tick.
116
+ const resizeObserver = new ResizeObserver(scheduleUpdate);
117
+ resizeObserver.observe(contentPanel);
118
+ resizeObserver.observe(target);
119
+ return () => {
120
+ clearTimeout(showTimeout);
121
+ clearTimeout(releaseTimeout);
122
+ release();
123
+ unregisterEscape();
124
+ window.removeEventListener("resize", scheduleUpdate);
125
+ window.removeEventListener("scroll", scheduleUpdate, true);
126
+ resizeObserver.disconnect();
127
+ if (rafId != null) {
128
+ cancelAnimationFrame(rafId);
129
+ rafId = null;
130
+ }
131
+ };
132
+ });
133
+
134
+ const close = () => {
135
+ onclose?.();
136
+ };
137
+
138
+ </script>
139
+ <svelte:window bind:innerWidth={w} bind:innerHeight={h}/>
140
+ <Portal target="body">
141
+ <div class="topside-popover-wrapper" class:hidden={hidden}
142
+ style="{vertPos}; height: auto; left: {position.left-margin}px; width: {position.width}px; ">
143
+ <div class="topside-popover" use:outsideClick={close}>
144
+ <div bind:this={contentPanel} style="{horzPos}">
145
+ <div class="contents" style="{style}">
146
+ <div class="contents-inner {body$class}">
147
+ {#if children}
148
+ {@render children()}
149
+ {/if}
150
+ </div>
151
+ </div>
152
+ </div>
153
+ </div>
154
+ </div>
155
+ </Portal>
@@ -0,0 +1,17 @@
1
+ import { type Snippet } from 'svelte';
2
+ interface Props {
3
+ style?: string;
4
+ target: HTMLElement;
5
+ align?: 'left' | 'right' | 'center';
6
+ autoFit?: boolean;
7
+ theme?: string;
8
+ margin?: number;
9
+ onclose?: () => void;
10
+ /** 附加到 .contents-inner 上的 class(用于覆盖 overflow 等样式) */
11
+ /** 内容容器附加 class */
12
+ body$class?: string;
13
+ children?: Snippet;
14
+ }
15
+ declare const Popover: import("svelte").Component<Props, {}, "">;
16
+ type Popover = ReturnType<typeof Popover>;
17
+ export default Popover;
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Shared, stack-aware "close on Escape" primitive.
3
+ *
4
+ * Previously each modal-ish surface either reinvented this (Dialog's
5
+ * `svelte:window onkeydown` with a hand-rolled DOM query to special-case
6
+ * "defer to an open Popover first"), relied on the browser (MessageBox's
7
+ * native <dialog> — left alone here, it already does this correctly) or
8
+ * didn't handle Escape at all (Popover, ModalPopover, FullscreenOverlay,
9
+ * Drawer).
10
+ *
11
+ * Registered handlers form a stack. Only the topmost (most recently
12
+ * registered, i.e. most recently opened) handler runs on Escape — this is
13
+ * what "close the innermost open overlay first" means for nested overlays,
14
+ * and it replaces Dialog's ad-hoc "is a popover open" DOM query with the
15
+ * same mechanism every overlay uses.
16
+ */
17
+ type EscapeHandler = () => void;
18
+ /** Push a handler onto the stack; returns an unregister function. */
19
+ export declare function registerEscapeHandler(handler: EscapeHandler): () => void;
20
+ /**
21
+ * Svelte action form: `use:escapeClose={onclose}`. Registers for as long as
22
+ * the node is mounted.
23
+ */
24
+ export declare function escapeClose(_node: HTMLElement, onclose: EscapeHandler): {
25
+ update(newOnClose: EscapeHandler): void;
26
+ destroy(): void;
27
+ };
28
+ export {};
@@ -0,0 +1,47 @@
1
+ const stack = [];
2
+ let listenerInstalled = false;
3
+ function handleKeyDown(e) {
4
+ if (e.key !== 'Escape' && e.key !== 'Esc')
5
+ return;
6
+ const top = stack[stack.length - 1];
7
+ if (!top)
8
+ return;
9
+ e.preventDefault();
10
+ top();
11
+ }
12
+ function ensureListener() {
13
+ if (listenerInstalled || typeof window === 'undefined')
14
+ return;
15
+ window.addEventListener('keydown', handleKeyDown);
16
+ listenerInstalled = true;
17
+ }
18
+ /** Push a handler onto the stack; returns an unregister function. */
19
+ export function registerEscapeHandler(handler) {
20
+ ensureListener();
21
+ stack.push(handler);
22
+ let registered = true;
23
+ return () => {
24
+ if (!registered)
25
+ return;
26
+ registered = false;
27
+ const idx = stack.lastIndexOf(handler);
28
+ if (idx !== -1)
29
+ stack.splice(idx, 1);
30
+ };
31
+ }
32
+ /**
33
+ * Svelte action form: `use:escapeClose={onclose}`. Registers for as long as
34
+ * the node is mounted.
35
+ */
36
+ export function escapeClose(_node, onclose) {
37
+ let unregister = registerEscapeHandler(onclose);
38
+ return {
39
+ update(newOnClose) {
40
+ unregister();
41
+ unregister = registerEscapeHandler(newOnClose);
42
+ },
43
+ destroy() {
44
+ unregister();
45
+ }
46
+ };
47
+ }
@@ -0,0 +1,8 @@
1
+ export interface FocusTrapOptions {
2
+ /** Set false to make this a no-op — lets callers keep the action wired up
3
+ * unconditionally while still gating the behavior on a reactive value. */
4
+ enabled?: boolean;
5
+ }
6
+ export declare function focusTrap(node: HTMLElement, options?: FocusTrapOptions): {
7
+ destroy(): void;
8
+ };
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Shared focus-trap + focus-restore Svelte action for modal-like surfaces.
3
+ *
4
+ * Previously: Dialog and MessageBox each did a `setTimeout` +
5
+ * `querySelector('button')` to focus *something* on open, and nothing
6
+ * anywhere saved/restored the element that had focus before the overlay
7
+ * opened — closing a dialog silently dropped focus back to the document
8
+ * body instead of wherever the user was before opening it.
9
+ *
10
+ * `use:focusTrap` on a modal's root/box element will:
11
+ * - save `document.activeElement` on mount
12
+ * - move focus to the first focusable descendant (or the node itself)
13
+ * - keep Tab/Shift+Tab cycling within the node's focusable descendants
14
+ * - restore focus to the saved element on destroy
15
+ *
16
+ * Not applied to ContextMenuPanel, which already has its own working
17
+ * roving-focus/aria-activedescendant pattern more appropriate for a
18
+ * `role="menu"` — a second, competing trap there would fight it rather than
19
+ * help. Not applied to MessageBox, whose native <dialog> + showModal()
20
+ * already gives correct trap/restore behavior from the browser for free.
21
+ */
22
+ const FOCUSABLE_SELECTOR = [
23
+ 'a[href]',
24
+ 'button:not([disabled])',
25
+ 'textarea:not([disabled])',
26
+ 'input:not([disabled])',
27
+ 'select:not([disabled])',
28
+ '[tabindex]:not([tabindex="-1"])'
29
+ ].join(',');
30
+ function getFocusable(container) {
31
+ return Array.from(container.querySelectorAll(FOCUSABLE_SELECTOR));
32
+ }
33
+ export function focusTrap(node, options = {}) {
34
+ if (options.enabled === false) {
35
+ return { destroy() { } };
36
+ }
37
+ const previouslyFocused = document.activeElement;
38
+ const focusFirst = () => {
39
+ const focusable = getFocusable(node);
40
+ (focusable[0] ?? node).focus();
41
+ };
42
+ // Deferred one tick: the trap is typically mounted before children with
43
+ // their own autofocus/initial-value logic have settled.
44
+ const raf = requestAnimationFrame(focusFirst);
45
+ const handleKeyDown = (e) => {
46
+ if (e.key !== 'Tab')
47
+ return;
48
+ const focusable = getFocusable(node);
49
+ if (focusable.length === 0) {
50
+ e.preventDefault();
51
+ return;
52
+ }
53
+ const first = focusable[0];
54
+ const last = focusable[focusable.length - 1];
55
+ const active = document.activeElement;
56
+ if (e.shiftKey) {
57
+ if (active === first || !node.contains(active)) {
58
+ e.preventDefault();
59
+ last.focus();
60
+ }
61
+ }
62
+ else {
63
+ if (active === last || !node.contains(active)) {
64
+ e.preventDefault();
65
+ first.focus();
66
+ }
67
+ }
68
+ };
69
+ node.addEventListener('keydown', handleKeyDown);
70
+ return {
71
+ destroy() {
72
+ cancelAnimationFrame(raf);
73
+ node.removeEventListener('keydown', handleKeyDown);
74
+ // Only restore if focus is still somewhere inside this trap (or on
75
+ // the body) — if the app already moved focus elsewhere on its own
76
+ // (e.g. opening another overlay), don't fight it.
77
+ const active = document.activeElement;
78
+ if (previouslyFocused && (active == null || active === document.body || node.contains(active))) {
79
+ previouslyFocused.focus();
80
+ }
81
+ }
82
+ };
83
+ }
@@ -0,0 +1,28 @@
1
+ import { type Component } from 'svelte';
2
+ /**
3
+ * Attempts to mount `component` to `document.body` once. Returns whether it
4
+ * succeeded. SSR-safe (no-ops when window/document aren't available) and
5
+ * swallows mount errors (e.g. test environments where Svelte's client mount
6
+ * is bypassed) rather than throwing — this was silent-fallback-by-design in
7
+ * every controller that had its own copy of this check.
8
+ */
9
+ export declare function mountToBody(component: Component): boolean;
10
+ /**
11
+ * Shared "lazy-mount this controller's panel to document.body on first
12
+ * use, then reuse the same instance" helper.
13
+ *
14
+ * Previously each overlay controller singleton (Indicator, Toast,
15
+ * ContextMenu, MessageBox) carried an identical `panelMounted` flag +
16
+ * `ensureMounted()` pair. This is the one implementation; call the returned
17
+ * function at the start of whatever triggers showing the overlay (`show()`,
18
+ * etc.) — it's idempotent, so calling it on every show is fine. Pass the panel
19
+ * as a thunk (`() => Panel`) so the circular controller ⇄ panel import is resolved lazily.
20
+ *
21
+ * DialogManager is intentionally NOT migrated to this: its `<DialogBoard>`
22
+ * self-reports whether it's already mounted (so a board the *consumer*
23
+ * placed manually in their app root and the manager's own auto-mount don't
24
+ * both render), which needs the mounted flag to be externally observable —
25
+ * a different shape than this memoized-closure helper provides. It reuses
26
+ * `mountToBody` directly instead.
27
+ */
28
+ export declare function createSingletonMounter(component: () => Component): () => void;
@@ -0,0 +1,48 @@
1
+ import { mount } from 'svelte';
2
+ /**
3
+ * Attempts to mount `component` to `document.body` once. Returns whether it
4
+ * succeeded. SSR-safe (no-ops when window/document aren't available) and
5
+ * swallows mount errors (e.g. test environments where Svelte's client mount
6
+ * is bypassed) rather than throwing — this was silent-fallback-by-design in
7
+ * every controller that had its own copy of this check.
8
+ */
9
+ export function mountToBody(component) {
10
+ if (typeof window === 'undefined' || typeof document === 'undefined' || !document.body) {
11
+ return false;
12
+ }
13
+ try {
14
+ mount(component, { target: document.body });
15
+ return true;
16
+ }
17
+ catch {
18
+ return false;
19
+ }
20
+ }
21
+ /**
22
+ * Shared "lazy-mount this controller's panel to document.body on first
23
+ * use, then reuse the same instance" helper.
24
+ *
25
+ * Previously each overlay controller singleton (Indicator, Toast,
26
+ * ContextMenu, MessageBox) carried an identical `panelMounted` flag +
27
+ * `ensureMounted()` pair. This is the one implementation; call the returned
28
+ * function at the start of whatever triggers showing the overlay (`show()`,
29
+ * etc.) — it's idempotent, so calling it on every show is fine. Pass the panel
30
+ * as a thunk (`() => Panel`) so the circular controller ⇄ panel import is resolved lazily.
31
+ *
32
+ * DialogManager is intentionally NOT migrated to this: its `<DialogBoard>`
33
+ * self-reports whether it's already mounted (so a board the *consumer*
34
+ * placed manually in their app root and the manager's own auto-mount don't
35
+ * both render), which needs the mounted flag to be externally observable —
36
+ * a different shape than this memoized-closure helper provides. It reuses
37
+ * `mountToBody` directly instead.
38
+ */
39
+ export function createSingletonMounter(component) {
40
+ let mounted = false;
41
+ return () => {
42
+ if (mounted)
43
+ return;
44
+ // 组件延迟到首次 show 时才取:控制器与它的 Panel 互相 import(Panel 里要调控制器方法),
45
+ // 模块顶层直接引用 Panel 会在 Panel 先被加载时撞上 TDZ("Cannot access 'XxxPanel' before initialization")
46
+ mounted = mountToBody(component());
47
+ };
48
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Shared "click outside this element" Svelte action.
3
+ *
4
+ * Previously reimplemented near-identically in Popover.svelte (`outerClick`)
5
+ * and FloatingPanel.svelte (`handleClickOutside` + a manual
6
+ * document.addEventListener), plus a third, unused variant in
7
+ * topside-utils.ts. This is the one canonical implementation; new
8
+ * outside-click needs should use this rather than adding a fourth.
9
+ *
10
+ * Uses the capture phase so it fires before the click can be stopped by a
11
+ * descendant's own handler, and so nested overlays (a popover inside a
12
+ * dialog) each see the click regardless of bubbling order.
13
+ */
14
+ export type OutsideClickOptions = (() => void) | {
15
+ callback: () => void;
16
+ /**
17
+ * Elements that should NOT count as "outside" even though they're
18
+ * not inside `node` — typically the trigger/anchor element, whose
19
+ * own click handler usually toggles the overlay open. Without this,
20
+ * clicking the trigger to close would fire this callback first and
21
+ * then the trigger's own handler would immediately reopen it.
22
+ */
23
+ exclude?: Array<HTMLElement | null | undefined>;
24
+ };
25
+ export declare function outsideClick(node: HTMLElement, options: OutsideClickOptions): {
26
+ update(newOptions: OutsideClickOptions): void;
27
+ destroy(): void;
28
+ };
@@ -0,0 +1,20 @@
1
+ export function outsideClick(node, options) {
2
+ let opts = typeof options === 'function' ? { callback: options } : options;
3
+ const handleClick = (event) => {
4
+ const t = event.target;
5
+ if (node.contains(t))
6
+ return;
7
+ if (opts.exclude?.some(el => el && el.contains(t)))
8
+ return;
9
+ opts.callback();
10
+ };
11
+ document.addEventListener('click', handleClick, true);
12
+ return {
13
+ update(newOptions) {
14
+ opts = typeof newOptions === 'function' ? { callback: newOptions } : newOptions;
15
+ },
16
+ destroy() {
17
+ document.removeEventListener('click', handleClick, true);
18
+ }
19
+ };
20
+ }
@@ -0,0 +1,8 @@
1
+ export declare function lockBodyScroll(): void;
2
+ export declare function unlockBodyScroll(): void;
3
+ /**
4
+ * Convenience wrapper for the common "lock on mount, unlock on cleanup"
5
+ * pattern, idempotent against being released more than once (e.g. both a
6
+ * timer and an unmount cleanup racing to call it).
7
+ */
8
+ export declare function acquireScrollLock(): () => void;
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Shared, reference-counted body scroll-lock.
3
+ *
4
+ * Any number of overlays (Popover, Dialog, Drawer, ModalPopover,
5
+ * FullscreenOverlay, ...) can call lockBodyScroll()/unlockBodyScroll()
6
+ * independently, in any open/close order, without one overlay's close
7
+ * clobbering another still-open overlay's lock. Only the very first lock
8
+ * captures the pre-lock overflowY value, and only the transition back to
9
+ * zero open locks restores it — this is what makes stacking safe.
10
+ *
11
+ * Originally lived inline in Popover.svelte; generalized here so every
12
+ * modal-ish overlay in the library shares one lock instead of each
13
+ * reinventing (or omitting) its own save/restore.
14
+ */
15
+ let lockCount = 0;
16
+ let savedOverflowY = null;
17
+ export function lockBodyScroll() {
18
+ if (typeof document === 'undefined')
19
+ return;
20
+ if (lockCount === 0) {
21
+ savedOverflowY = window.getComputedStyle(document.body).overflowY;
22
+ document.body.style.overflowY = 'hidden';
23
+ }
24
+ lockCount++;
25
+ }
26
+ export function unlockBodyScroll() {
27
+ if (typeof document === 'undefined')
28
+ return;
29
+ lockCount = Math.max(0, lockCount - 1);
30
+ if (lockCount === 0 && savedOverflowY != null) {
31
+ document.body.style.overflowY = savedOverflowY;
32
+ savedOverflowY = null;
33
+ }
34
+ }
35
+ /**
36
+ * Convenience wrapper for the common "lock on mount, unlock on cleanup"
37
+ * pattern, idempotent against being released more than once (e.g. both a
38
+ * timer and an unmount cleanup racing to call it).
39
+ */
40
+ export function acquireScrollLock() {
41
+ lockBodyScroll();
42
+ let released = false;
43
+ return () => {
44
+ if (released)
45
+ return;
46
+ released = true;
47
+ unlockBodyScroll();
48
+ };
49
+ }
@@ -0,0 +1,3 @@
1
+ export declare function clickOutside(node: Node): {
2
+ destroy(): void;
3
+ };
@@ -0,0 +1,19 @@
1
+ export function clickOutside(node) {
2
+ const handleClick = (event) => {
3
+ if (node && !node.contains(event.target) && !event.defaultPrevented) {
4
+ node.dispatchEvent(new CustomEvent('outerClick', {
5
+ bubbles: true, // 通常自定义事件要冒泡,方便捕获
6
+ cancelable: true, // 可取消
7
+ detail: { originalEvent: event } // 可选:传递原始事件信息
8
+ }));
9
+ event.stopPropagation();
10
+ event.preventDefault();
11
+ }
12
+ };
13
+ document.addEventListener('click', handleClick, true);
14
+ return {
15
+ destroy() {
16
+ document.removeEventListener('click', handleClick, true);
17
+ }
18
+ };
19
+ }
@@ -0,0 +1,13 @@
1
+ declare const _default: {
2
+ isEmpty: (s: any) => boolean;
3
+ getNumberValue: (n: any) => number | null;
4
+ getStringValue: (n: any) => string | null;
5
+ sleep: (n: number) => Promise<void>;
6
+ getNumberRegex: (precision: number | null | undefined, allowNegative: boolean) => string;
7
+ isValidNumber: (n: number, precision: number | null | undefined, allowNegative: boolean, max?: number | null, min?: number | null) => boolean;
8
+ formatNumber: (n: number | string | null, precision: number | null | undefined) => string;
9
+ filterFiles: (files: Array<File>, accept: string) => File[];
10
+ getNestedObject: (obj: any, keys: string[]) => any;
11
+ getNestedValue: (data: any, key: string) => any;
12
+ };
13
+ export default _default;