fast-element-plus 2.0.18 → 2.0.20

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 (130) hide show
  1. package/CHANGELOG.md +52 -19
  2. package/CONTRIBUTING.md +3 -4
  3. package/README.md +80 -27
  4. package/README.zh.md +66 -27
  5. package/dist/component.d.ts +123 -123
  6. package/dist/components/avatar/src/avatar.d.ts +26 -26
  7. package/dist/components/avatar/src/avatar.mjs +10 -10
  8. package/dist/components/avatar/src/avatar.mjs.map +1 -1
  9. package/dist/components/button/src/button.d.ts +32 -27
  10. package/dist/components/button/src/button.mjs +57 -36
  11. package/dist/components/button/src/button.mjs.map +1 -1
  12. package/dist/components/carNumber/src/carNumber.d.ts +8 -8
  13. package/dist/components/carNumber/src/carNumber.mjs +5 -5
  14. package/dist/components/carNumber/src/carNumber.mjs.map +1 -1
  15. package/dist/components/contextMenu/src/contextMenu.d.ts +7 -7
  16. package/dist/components/contextMenu/src/contextMenu.mjs +7 -7
  17. package/dist/components/contextMenu/src/contextMenu.mjs.map +1 -1
  18. package/dist/components/contextMenu/src/contextMenu.type.d.ts +7 -7
  19. package/dist/components/dialog/src/dialog.d.ts +76 -76
  20. package/dist/components/dialog/src/dialog.mjs +34 -34
  21. package/dist/components/dialog/src/dialog.mjs.map +1 -1
  22. package/dist/components/drawer/src/drawer.d.ts +59 -59
  23. package/dist/components/drawer/src/drawer.mjs +27 -27
  24. package/dist/components/drawer/src/drawer.mjs.map +1 -1
  25. package/dist/components/form/src/form.d.ts +30 -30
  26. package/dist/components/form/src/form.mjs +16 -16
  27. package/dist/components/form/src/form.mjs.map +1 -1
  28. package/dist/components/form/src/formItem.d.ts +30 -30
  29. package/dist/components/form/src/formItem.mjs +13 -13
  30. package/dist/components/form/src/formItem.mjs.map +1 -1
  31. package/dist/components/formItemTip/src/formItemTip.d.ts +9 -9
  32. package/dist/components/formItemTip/src/formItemTip.mjs +3 -3
  33. package/dist/components/formItemTip/src/formItemTip.mjs.map +1 -1
  34. package/dist/components/icon/src/icon.d.ts +10 -10
  35. package/dist/components/icon/src/icon.mjs +4 -4
  36. package/dist/components/icon/src/icon.mjs.map +1 -1
  37. package/dist/components/iconSelector/src/iconSelector.d.ts +6 -6
  38. package/dist/components/iconSelector/src/iconSelector.mjs +4 -4
  39. package/dist/components/iconSelector/src/iconSelector.mjs.map +1 -1
  40. package/dist/components/image/src/image.d.ts +36 -36
  41. package/dist/components/image/src/image.mjs +11 -11
  42. package/dist/components/image/src/image.mjs.map +1 -1
  43. package/dist/components/inputDialogPage/src/inputDialogPage.d.ts +37 -37
  44. package/dist/components/inputDialogPage/src/inputDialogPage.mjs +16 -16
  45. package/dist/components/inputDialogPage/src/inputDialogPage.mjs.map +1 -1
  46. package/dist/components/layoutGrid/src/layoutGrid.d.ts +12 -12
  47. package/dist/components/layoutGrid/src/layoutGrid.mjs +6 -6
  48. package/dist/components/layoutGrid/src/layoutGrid.mjs.map +1 -1
  49. package/dist/components/layoutGrid/src/layoutGridItem.d.ts +19 -19
  50. package/dist/components/layoutGrid/src/layoutGridItem.mjs +9 -9
  51. package/dist/components/layoutGrid/src/layoutGridItem.mjs.map +1 -1
  52. package/dist/components/select/src/select.d.ts +89 -89
  53. package/dist/components/select/src/select.mjs +30 -30
  54. package/dist/components/select/src/select.mjs.map +1 -1
  55. package/dist/components/select/src/selectOption.d.ts +13 -13
  56. package/dist/components/select/src/selectOption.mjs +6 -6
  57. package/dist/components/select/src/selectOption.mjs.map +1 -1
  58. package/dist/components/selectPage/src/selectPage.d.ts +76 -76
  59. package/dist/components/selectPage/src/selectPage.mjs +50 -36
  60. package/dist/components/selectPage/src/selectPage.mjs.map +1 -1
  61. package/dist/components/selectV2/index.mjs +2 -1
  62. package/dist/components/selectV2/index.mjs.map +1 -1
  63. package/dist/components/selectV2/src/selectV2.d.ts +161 -852
  64. package/dist/components/selectV2/src/selectV2.mjs +32 -340
  65. package/dist/components/selectV2/src/selectV2.mjs.map +1 -1
  66. package/dist/components/table/index.mjs +3 -2
  67. package/dist/components/table/index.mjs.map +1 -1
  68. package/dist/components/table/src/page.type.d.ts +1 -1
  69. package/dist/components/table/src/table.d.ts +211 -744
  70. package/dist/components/table/src/table.mjs +111 -307
  71. package/dist/components/table/src/table.mjs.map +1 -1
  72. package/dist/components/table/src/table.state.d.ts +3 -3
  73. package/dist/components/table/src/table.type.d.ts +1 -9
  74. package/dist/components/table/src/table.type.mjs.map +1 -1
  75. package/dist/components/table/src/tableColumn.d.ts +102 -399
  76. package/dist/components/table/src/tableColumn.mjs +28 -185
  77. package/dist/components/table/src/tableColumn.mjs.map +1 -1
  78. package/dist/components/table/src/tableColumnSettingDialog.d.ts +4 -4
  79. package/dist/components/table/src/tableColumnSettingDialog.mjs +3 -3
  80. package/dist/components/table/src/tableColumnSettingDialog.mjs.map +1 -1
  81. package/dist/components/table/src/tablePagination.d.ts +4 -4
  82. package/dist/components/table/src/tablePagination.mjs +3 -3
  83. package/dist/components/table/src/tablePagination.mjs.map +1 -1
  84. package/dist/components/table/src/tableSearchForm.d.ts +12 -12
  85. package/dist/components/table/src/tableSearchForm.mjs +6 -6
  86. package/dist/components/table/src/tableSearchForm.mjs.map +1 -1
  87. package/dist/components/table/src/tableSearchFormItem.d.ts +4 -4
  88. package/dist/components/table/src/tableSearchFormItem.mjs +2 -2
  89. package/dist/components/table/src/tableSearchFormItem.mjs.map +1 -1
  90. package/dist/components/table/src/useTable.d.ts +1 -0
  91. package/dist/components/table/src/useTable.mjs +109 -65
  92. package/dist/components/table/src/useTable.mjs.map +1 -1
  93. package/dist/components/table/utils/table.d.ts +4 -4
  94. package/dist/components/table/utils/table.mjs +4 -4
  95. package/dist/components/table/utils/table.mjs.map +1 -1
  96. package/dist/components/tree/src/tree.d.ts +87 -87
  97. package/dist/components/tree/src/tree.mjs +48 -48
  98. package/dist/components/tree/src/tree.mjs.map +1 -1
  99. package/dist/components/treeSelect/src/treeSelect.d.ts +139 -133
  100. package/dist/components/treeSelect/src/treeSelect.mjs +57 -57
  101. package/dist/components/treeSelect/src/treeSelect.mjs.map +1 -1
  102. package/dist/components/upload/src/upload.d.ts +36 -36
  103. package/dist/components/upload/src/upload.mjs +19 -19
  104. package/dist/components/upload/src/upload.mjs.map +1 -1
  105. package/dist/components/uploadImage/src/uploadImage.d.ts +47 -47
  106. package/dist/components/uploadImage/src/uploadImage.mjs +24 -28
  107. package/dist/components/uploadImage/src/uploadImage.mjs.map +1 -1
  108. package/dist/components/uploadImages/src/uploadImages.d.ts +41 -41
  109. package/dist/components/uploadImages/src/uploadImages.mjs +21 -21
  110. package/dist/components/uploadImages/src/uploadImages.mjs.map +1 -1
  111. package/dist/directives/click-debounce/index.mjs +19 -11
  112. package/dist/directives/click-debounce/index.mjs.map +1 -1
  113. package/dist/directives/click-throttle/index.d.ts +4 -2
  114. package/dist/directives/click-throttle/index.mjs +21 -11
  115. package/dist/directives/click-throttle/index.mjs.map +1 -1
  116. package/dist/index.css +1 -1
  117. package/dist/index.css.map +1 -1
  118. package/dist/index.global.min.js +3 -3
  119. package/dist/index.global.min.js.map +1 -1
  120. package/dist/index.mjs +3 -3
  121. package/dist/internal/props.d.ts +685 -0
  122. package/dist/internal/props.mjs +683 -0
  123. package/dist/internal/props.mjs.map +1 -0
  124. package/dist/utils/loading-tasks.d.ts +5 -0
  125. package/dist/utils/loading-tasks.mjs +32 -0
  126. package/dist/utils/loading-tasks.mjs.map +1 -0
  127. package/dist/version.d.ts +1 -1
  128. package/dist/version.mjs +1 -1
  129. package/dist/version.mjs.map +1 -1
  130. package/package.json +5 -10
@@ -0,0 +1 @@
1
+ {"version":3,"file":"props.mjs","names":[],"sources":["../../src/internal/props.ts"],"sourcesContent":["/** 集中维护复制并适配的 Element Plus 运行时 Props;业务组件在此基础上覆写。 */\nimport { ArrowDown, CircleClose } from \"@element-plus/icons-vue\";\nimport { tagProps, useAriaProps, useEmptyValuesProps, useSizeProp, useTooltipContentProps } from \"element-plus\";\nimport { definePropType } from \"../utils/vue/props\";\nimport type { SelectV2Props as ElementPlusSelectV2Props, Options, Placement, TableColumnCtx, TableProps } from \"element-plus\";\nimport type { CSSProperties, Component, PropType } from \"vue\";\nimport type { ElSelectorModelValue } from \"../components/select/src/select.type\";\nimport type { DefaultRow } from \"../components/table/src/table.state\";\n\ntype Layout = \"fixed\" | \"auto\";\n\n/** FaTable 树形数据的字段配置。 */\nexport interface TreeProps {\n\thasChildren?: string;\n\tchildren?: string;\n\tcheckStrictly?: boolean;\n}\n\n/** Element Plus Table 的透传 Props 定义。 */\nexport const tableProps = {\n\t/**\n\t * table data\n\t */\n\tdata: {\n\t\ttype: Array as PropType<DefaultRow[]>,\n\t\tdefault: (): DefaultRow[] => [],\n\t},\n\t/**\n\t * size of Table\n\t */\n\tsize: useSizeProp,\n\twidth: [String, Number],\n\t/**\n\t * table's height. By default it has an `auto` height. If its value is a number, the height is measured in pixels; if its value is a string, the value will be assigned to element's style.height, the height is affected by external styles\n\t */\n\theight: [String, Number],\n\t/**\n\t * table's max-height. The legal value is a number or the height in px\n\t */\n\tmaxHeight: [String, Number],\n\t/**\n\t * whether width of column automatically fits its container\n\t */\n\tfit: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * whether Table is striped\n\t */\n\tstripe: Boolean,\n\t/**\n\t * whether Table has vertical border\n\t */\n\tborder: Boolean,\n\t/**\n\t * key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used\n\t */\n\trowKey: [String, Function] as PropType<TableProps<DefaultRow>[\"rowKey\"]>,\n\t/**\n\t * whether Table header is visible\n\t */\n\tshowHeader: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * whether to display a summary row\n\t */\n\tshowSummary: Boolean,\n\t/**\n\t * displayed text for the first column of summary row\n\t */\n\tsumText: String,\n\t/**\n\t * custom summary method\n\t */\n\tsummaryMethod: Function as PropType<TableProps<DefaultRow>[\"summaryMethod\"]>,\n\t/**\n\t * function that returns custom class names for a row, or a string assigning class names for every row\n\t */\n\trowClassName: [String, Function] as PropType<TableProps<DefaultRow>[\"rowClassName\"]>,\n\t/**\n\t * function that returns custom style for a row, or an object assigning custom style for every row\n\t */\n\trowStyle: [Object, Function] as PropType<TableProps<DefaultRow>[\"rowStyle\"]>,\n\t/**\n\t * function that returns custom class names for a cell, or a string assigning class names for every cell\n\t */\n\tcellClassName: [String, Function] as PropType<TableProps<DefaultRow>[\"cellClassName\"]>,\n\t/**\n\t * function that returns custom style for a cell, or an object assigning custom style for every cell\n\t */\n\tcellStyle: [Object, Function] as PropType<TableProps<DefaultRow>[\"cellStyle\"]>,\n\t/**\n\t * function that returns custom class names for a row in table header, or a string assigning class names for every row in table header\n\t */\n\theaderRowClassName: [String, Function] as PropType<TableProps<DefaultRow>[\"headerRowClassName\"]>,\n\t/**\n\t * function that returns custom style for a row in table header, or an object assigning custom style for every row in table header\n\t */\n\theaderRowStyle: [Object, Function] as PropType<TableProps<DefaultRow>[\"headerRowStyle\"]>,\n\t/**\n\t * function that returns custom class names for a cell in table header, or a string assigning class names for every cell in table header\n\t */\n\theaderCellClassName: [String, Function] as PropType<TableProps<DefaultRow>[\"headerCellClassName\"]>,\n\t/**\n\t * function that returns custom style for a cell in table header, or an object assigning custom style for every cell in table header\n\t */\n\theaderCellStyle: [Object, Function] as PropType<TableProps<DefaultRow>[\"headerCellStyle\"]>,\n\t/**\n\t * whether current row is highlighted\n\t */\n\thighlightCurrentRow: Boolean,\n\t/**\n\t * key of current row, a set only prop\n\t */\n\tcurrentRowKey: [String, Number],\n\t/**\n\t * displayed text when data is empty. You can customize this area with `#empty`\n\t */\n\temptyText: String,\n\t/**\n\t * set expanded rows by this prop, prop's value is the keys of expand rows, you should set row-key before using this prop\n\t */\n\texpandRowKeys: Array as PropType<TableProps<DefaultRow>[\"expandRowKeys\"]>,\n\t/** controls whether a row can be expanded */\n\trowExpandable: Function as PropType<TableProps<DefaultRow>[\"rowExpandable\"]>,\n\t/**\n\t * whether expand all rows by default, works when the table has a column type=\"expand\" or contains tree structure data\n\t */\n\tdefaultExpandAll: Boolean,\n\t/**\n\t * set the default sort column and order. property `prop` is used to set default sort column, property `order` is used to set default sort order\n\t */\n\tdefaultSort: Object as PropType<TableProps<DefaultRow>[\"defaultSort\"]>,\n\t/**\n\t * the `effect` of the overflow tooltip\n\t */\n\ttooltipEffect: String,\n\t/**\n\t * the options for the overflow tooltip, [see the following tooltip component](tooltip.html#attributes)\n\t */\n\ttooltipOptions: Object as PropType<TableProps<DefaultRow>[\"tooltipOptions\"]>,\n\t/**\n\t * method that returns rowspan and colspan\n\t */\n\tspanMethod: Function as PropType<TableProps<DefaultRow>[\"spanMethod\"]>,\n\t/**\n\t * controls the behavior of master checkbox in multi-select tables when only some rows are selected (but not all). If true, all rows will be selected, else deselected\n\t */\n\tselectOnIndeterminate: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * horizontal indentation of tree data\n\t */\n\tindent: {\n\t\ttype: Number,\n\t\tdefault: 16,\n\t},\n\t/**\n\t * configuration for rendering nested data\n\t */\n\ttreeProps: {\n\t\ttype: Object as PropType<TreeProps>,\n\t\tdefault: (): { hasChildren: string; children: string; checkStrictly: boolean } => ({\n\t\t\thasChildren: \"hasChildren\",\n\t\t\tchildren: \"children\",\n\t\t\tcheckStrictly: false,\n\t\t}),\n\t},\n\t/**\n\t * whether to lazy loading data\n\t */\n\tlazy: Boolean,\n\t/**\n\t * method for loading child row data, only works when `lazy` is true\n\t */\n\tload: Function as PropType<TableProps<DefaultRow>[\"load\"]>,\n\tstyle: {\n\t\ttype: Object as PropType<CSSProperties>,\n\t\tdefault: (): CSSProperties => ({}),\n\t},\n\tclassName: {\n\t\ttype: String,\n\t\tdefault: \"\",\n\t},\n\t/**\n\t * sets the algorithm used to lay out table cells, rows, and columns\n\t */\n\ttableLayout: {\n\t\ttype: String as PropType<Layout>,\n\t\tdefault: \"fixed\",\n\t},\n\t/**\n\t * always show scrollbar\n\t */\n\tscrollbarAlwaysOn: Boolean,\n\t/**\n\t * ensure main axis minimum-size doesn't follow the content\n\t */\n\tflexible: Boolean,\n\t/**\n\t * whether to hide extra content and show them in a tooltip when hovering on the cell.It will affect all the table columns\n\t */\n\tshowOverflowTooltip: [Boolean, Object] as PropType<TableProps<DefaultRow>[\"showOverflowTooltip\"]>,\n\t/** formats overflow tooltip content */\n\ttooltipFormatter: Function as PropType<TableProps<DefaultRow>[\"tooltipFormatter\"]>,\n\t/** element to which the filter panel is appended */\n\tappendFilterPanelTo: String,\n\tscrollbarTabindex: {\n\t\ttype: [Number, String],\n\t\tdefault: undefined,\n\t},\n\t/** whether the last column can be resized */\n\tallowDragLastColumn: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/** whether collapsed expanded-row content remains mounted */\n\tpreserveExpandedContent: Boolean,\n\t/** whether to use native scrollbars */\n\tnativeScrollbar: Boolean,\n};\n\n/** Element Plus TableColumn 的透传 Props 定义 */\nexport const tableColumnProps = {\n\t/**\n\t * type of the column. If set to `selection`, the column will display checkbox. If set to `index`, the column will display index of the row (staring from 1). If set to `expand`, the column will display expand icon\n\t */\n\ttype: {\n\t\ttype: String,\n\t\tdefault: \"default\",\n\t},\n\t/**\n\t * column label\n\t */\n\tlabel: String,\n\t/**\n\t * class name of cells in the column\n\t */\n\tclassName: String,\n\t/**\n\t * class name of the label of this column\n\t */\n\tlabelClassName: String,\n\t/**\n\t *\n\t */\n\tproperty: String,\n\t/**\n\t * field name. You can also use its alias: `property`\n\t */\n\tprop: String,\n\t/**\n\t * column width\n\t */\n\twidth: {\n\t\ttype: [String, Number],\n\t\tdefault: \"\",\n\t},\n\t/**\n\t * column minimum width. Columns with `width` has a fixed width, while columns with `min-width` has a width that is distributed in proportion\n\t */\n\tminWidth: {\n\t\ttype: [String, Number],\n\t\tdefault: \"\",\n\t},\n\t/**\n\t * render function for table header of this column\n\t */\n\trenderHeader: Function as PropType<TableColumnCtx<DefaultRow>[\"renderHeader\"]>,\n\t/**\n\t * whether column can be sorted. Remote sorting can be done by setting this attribute to 'custom' and listening to the `sort-change` event of Table\n\t */\n\tsortable: {\n\t\ttype: [Boolean, String],\n\t\tdefault: false,\n\t},\n\t/**\n\t * sorting method, works when `sortable` is `true`. Should return a number, just like Array.sort\n\t */\n\tsortMethod: Function as PropType<TableColumnCtx<DefaultRow>[\"sortMethod\"]>,\n\t/**\n\t * specify which property to sort by, works when `sortable` is `true` and `sort-method` is `undefined`. If set to an Array, the column will sequentially sort by the next property if the previous one is equal\n\t */\n\tsortBy: [String, Function, Array] as PropType<TableColumnCtx<DefaultRow>[\"sortBy\"]>,\n\t/**\n\t * whether column width can be resized, works when `border` of `el-table` is `true`\n\t */\n\tresizable: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * column's key. If you need to use the filter-change event, you need this attribute to identify which column is being filtered\n\t */\n\tcolumnKey: String,\n\t/**\n\t * alignment, the value should be 'left' \\/ 'center' \\/ 'right'\n\t */\n\talign: String,\n\t/**\n\t * alignment of the table header. If omitted, the value of the above `align` attribute will be applied, the value should be 'left' \\/ 'center' \\/ 'right'\n\t */\n\theaderAlign: String,\n\t/**\n\t * whether to hide extra content and show them in a tooltip when hovering on the cell\n\t */\n\tshowOverflowTooltip: {\n\t\ttype: [Boolean, Object] as PropType<TableColumnCtx<DefaultRow>[\"showOverflowTooltip\"]>,\n\t\tdefault: undefined,\n\t},\n\t/** function that formats cell tooltip content, works when show-overflow-tooltip is enabled */\n\ttooltipFormatter: Function as PropType<TableColumnCtx<DefaultRow>[\"tooltipFormatter\"]>,\n\t/**\n\t * whether column is fixed at left / right. Will be fixed at left if `true`\n\t */\n\tfixed: [Boolean, String],\n\t/**\n\t * function that formats cell content\n\t */\n\tformatter: Function as PropType<TableColumnCtx<DefaultRow>[\"formatter\"]>,\n\t/**\n\t * function that determines if a certain row can be selected, works when `type` is 'selection'\n\t */\n\tselectable: Function as PropType<TableColumnCtx<DefaultRow>[\"selectable\"]>,\n\t/**\n\t * whether to reserve selection after data refreshing, works when `type` is 'selection'. Note that `row-key` is required for this to work\n\t */\n\treserveSelection: Boolean,\n\t/**\n\t * data filtering method. If `filter-multiple` is on, this method will be called multiple times for each row, and a row will display if one of the calls returns `true`\n\t */\n\tfilterMethod: Function as PropType<TableColumnCtx<DefaultRow>[\"filterMethod\"]>,\n\t/**\n\t * filter value for selected data, might be useful when table header is rendered with `render-header`\n\t */\n\tfilteredValue: Array as PropType<TableColumnCtx<DefaultRow>[\"filteredValue\"]>,\n\t/**\n\t * an array of data filtering options. For each element in this array, `text` and `value` are required\n\t */\n\tfilters: Array as PropType<TableColumnCtx<DefaultRow>[\"filters\"]>,\n\t/**\n\t * placement for the filter dropdown\n\t */\n\tfilterPlacement: String,\n\t/**\n\t * whether data filtering supports multiple options\n\t */\n\tfilterMultiple: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * className for the filter dropdown\n\t */\n\tfilterClassName: String,\n\t/**\n\t * customize indices for each row, works on columns with `type=index`\n\t */\n\tindex: [Number, Function] as PropType<TableColumnCtx<DefaultRow>[\"index\"]>,\n\t/**\n\t * the order of the sorting strategies used when sorting the data, works when `sortable` is `true`. Accepts an array, as the user clicks on the header, the column is sorted in order of the elements in the array\n\t */\n\tsortOrders: {\n\t\ttype: Array as PropType<TableColumnCtx<DefaultRow>[\"sortOrders\"]>,\n\t\tdefault: (): (string | null)[] => {\n\t\t\treturn [\"ascending\", \"descending\", null];\n\t\t},\n\t\tvalidator: (val: unknown): boolean => {\n\t\t\treturn Array.isArray(val) && val.every((order: unknown): boolean => order === \"ascending\" || order === \"descending\" || order === null);\n\t\t},\n\t},\n};\n\n/** 传递给底层 Element Plus 虚拟化选择器的扩展 Props。 */\nexport interface Props {\n\tlabel?: string;\n\tvalue?: string;\n\tdisabled?: string;\n\toptions?: string;\n}\n\n/** Element Plus SelectV2 的透传 Props 定义。 */\nexport const SelectV2Props = {\n\t/**\n\t * whether creating new items is allowed. To use this, `filterable` must be true\n\t */\n\tallowCreate: Boolean,\n\t/**\n\t * autocomplete of select input\n\t */\n\tautocomplete: {\n\t\ttype: definePropType<\"none\" | \"both\" | \"list\" | \"inline\">(String),\n\t\tdefault: \"none\",\n\t},\n\t/**\n\t * for non-filterable Select, this prop decides if the option menu pops up when the input is focused\n\t */\n\tautomaticDropdown: Boolean,\n\t/**\n\t * whether select can be cleared\n\t */\n\tclearable: Boolean,\n\t/**\n\t * custom clear icon\n\t */\n\tclearIcon: {\n\t\ttype: definePropType<string | Component>([String, Object, Function]),\n\t\tdefault: CircleClose,\n\t},\n\t/**\n\t * tooltip theme, built-in theme: `dark` / `light`\n\t */\n\teffect: {\n\t\ttype: definePropType<string>(String),\n\t\tdefault: \"light\",\n\t},\n\t/**\n\t * whether to collapse tags to a text when multiple selecting\n\t */\n\tcollapseTags: Boolean,\n\t/**\n\t * whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true\n\t */\n\tcollapseTagsTooltip: Boolean,\n\t/** collapse-tags tooltip configuration */\n\ttagTooltip: {\n\t\ttype: definePropType<ElementPlusSelectV2Props[\"tagTooltip\"]>(Object),\n\t\tdefault: (): NonNullable<ElementPlusSelectV2Props[\"tagTooltip\"]> => ({}),\n\t},\n\t/**\n\t * The max tags number to be shown. To use this, `collapse-tags` must be true\n\t */\n\tmaxCollapseTags: {\n\t\ttype: Number,\n\t\tdefault: 1,\n\t},\n\t/**\n\t *\n\t */\n\tdefaultFirstOption: Boolean,\n\t/**\n\t * is disabled\n\t */\n\tdisabled: Boolean,\n\t/**\n\t *\n\t */\n\testimatedOptionHeight: {\n\t\ttype: Number,\n\t\tdefault: undefined,\n\t},\n\t/**\n\t * is filterable\n\t */\n\tfilterable: Boolean,\n\t/**\n\t *\n\t */\n\tfilterMethod: Function as PropType<ElementPlusSelectV2Props[\"filterMethod\"]>,\n\t/**\n\t * The height of the dropdown panel, 34px for each item\n\t */\n\theight: {\n\t\ttype: Number,\n\t\tdefault: 274, // same as select dropdown menu\n\t},\n\t/**\n\t * The height of the dropdown item\n\t */\n\titemHeight: {\n\t\ttype: Number,\n\t\tdefault: 34,\n\t},\n\t/**\n\t *\n\t */\n\tid: String,\n\t/**\n\t * whether Select is loading data from server\n\t */\n\tloading: Boolean,\n\t/**\n\t * displayed text while loading data from server, default is 'Loading'\n\t */\n\tloadingText: String,\n\t/**\n\t * biding value\n\t */\n\tmodelValue: {\n\t\ttype: definePropType<ElSelectorModelValue>([Array, String, Number, Boolean, Object]),\n\t},\n\t/**\n\t * is multiple\n\t */\n\tmultiple: Boolean,\n\t/**\n\t * maximum number of options user can select when multiple is true. No limit when set to 0\n\t */\n\tmultipleLimit: {\n\t\ttype: Number,\n\t\tdefault: 0,\n\t},\n\t/**\n\t * the name attribute of select input\n\t */\n\tname: String,\n\t/**\n\t * displayed text when there is no options, you can also use slot empty, the default is 'No Data'\n\t */\n\tnoDataText: String,\n\t/**\n\t * displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'\n\t */\n\tnoMatchText: String,\n\t/**\n\t * function that gets called when the input value changes. Its parameter is the current input value. To use this, `filterable` must be true\n\t */\n\tremoteMethod: Function as PropType<ElementPlusSelectV2Props[\"remoteMethod\"]>,\n\t/**\n\t * whether reserve the keyword after select filtered option.\n\t */\n\treserveKeyword: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * data of the options, the key of `value` and `label` can be customize by `props`\n\t */\n\toptions: {\n\t\ttype: definePropType<ElementPlusSelectV2Props[\"options\"]>(Array),\n\t},\n\t/**\n\t * placeholder, the default is 'Please select'\n\t */\n\tplaceholder: {\n\t\ttype: String,\n\t},\n\t/**\n\t * whether select dropdown is teleported to the body\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-deprecated -- 复用 Element Plus 2.x 的运行时默认值与校验规则。\n\tteleported: useTooltipContentProps.teleported,\n\t/**\n\t * when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed\n\t */\n\tpersistent: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * custom class name for Select's dropdown\n\t */\n\tpopperClass: {\n\t\ttype: String,\n\t\tdefault: \"\",\n\t},\n\t/** custom style for Select's dropdown */\n\t// eslint-disable-next-line @typescript-eslint/no-deprecated -- 复用 Element Plus 2.x 的运行时类型定义。\n\tpopperStyle: useTooltipContentProps.popperStyle,\n\t/**\n\t * [popper.js](https://popper.js.org/docs/v2/) parameters\n\t */\n\tpopperOptions: {\n\t\ttype: definePropType<Partial<Options>>(Object),\n\t\tdefault: (): Partial<Options> => ({}),\n\t},\n\t/**\n\t * whether search data from server\n\t */\n\tremote: Boolean,\n\t/** debounce delay during remote search, in milliseconds */\n\tdebounce: {\n\t\ttype: Number,\n\t\tdefault: 300,\n\t},\n\t/**\n\t * size of component\n\t */\n\tsize: useSizeProp,\n\t/**\n\t * configuration options, see the following table\n\t */\n\tprops: {\n\t\ttype: definePropType<Props>(Object),\n\t\tdefault: (): { label: string; value: string; disabled: string; options: string } => ({\n\t\t\tlabel: \"label\",\n\t\t\tvalue: \"value\",\n\t\t\tdisabled: \"disabled\",\n\t\t\toptions: \"options\",\n\t\t}),\n\t},\n\t/**\n\t * unique identity key name for value, required when value is an object\n\t */\n\tvalueKey: {\n\t\ttype: String,\n\t\tdefault: \"value\",\n\t},\n\t/**\n\t * Controls whether the scrollbar is always displayed\n\t */\n\tscrollbarAlwaysOn: Boolean,\n\t/**\n\t * whether to trigger form validation\n\t */\n\tvalidateEvent: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * offset of the dropdown\n\t */\n\toffset: {\n\t\ttype: Number,\n\t\tdefault: 12,\n\t},\n\t/** whether to show the suffix icon during remote search */\n\tremoteShowSuffix: Boolean,\n\t/**\n\t * Determines whether the arrow is displayed\n\t */\n\tshowArrow: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * position of dropdown\n\t */\n\tplacement: {\n\t\ttype: definePropType<Placement>(String),\n\t\tdefault: \"bottom-start\",\n\t},\n\t/**\n\t * list of possible positions for dropdown\n\t */\n\tfallbackPlacements: {\n\t\ttype: definePropType<Placement[]>(Array),\n\t\tdefault: [\"bottom-start\", \"top-start\", \"right\", \"left\"],\n\t},\n\t/**\n\t * tag type\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-deprecated -- 复用 Element Plus 2.x 的 Tag 运行时校验规则。\n\ttagType: { ...tagProps.type, default: \"info\" },\n\t/**\n\t * tag effect\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-deprecated -- 复用 Element Plus 2.x 的 Tag 运行时校验规则。\n\ttagEffect: { ...tagProps.effect, default: \"light\" },\n\t/**\n\t * tabindex for input\n\t */\n\ttabindex: {\n\t\ttype: [String, Number],\n\t\tdefault: 0,\n\t},\n\t/**\n\t * which element the select dropdown appends to\n\t */\n\tappendTo: String,\n\t/** whether the dropdown width follows the input width, or a fixed width */\n\tfitInputWidth: {\n\t\ttype: [Boolean, Number],\n\t\tdefault: true,\n\t\tvalidator: (value: boolean | number): boolean => typeof value === \"boolean\" || typeof value === \"number\",\n\t},\n\t/** select suffix icon */\n\tsuffixIcon: {\n\t\ttype: definePropType<string | Component>([String, Object, Function]),\n\t\tdefault: ArrowDown,\n\t},\n\t// eslint-disable-next-line @typescript-eslint/no-deprecated -- 复用 Element Plus 2.x 的空值运行时约定。\n\t...useEmptyValuesProps,\n\t...useAriaProps([\"ariaLabel\"]),\n};\n"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /** 组件内部异步任务的 Loading 所有权集合,不作为公共包入口导出。 */
2
+ export declare function createLoadingTasks(notify: (loading: boolean, text?: string) => void): {
3
+ begin: (text?: string) => () => void;
4
+ dispose: () => void;
5
+ };
@@ -0,0 +1,32 @@
1
+ //#region src/utils/loading-tasks.ts
2
+ /** 组件内部异步任务的 Loading 所有权集合,不作为公共包入口导出。 */
3
+ function createLoadingTasks(notify) {
4
+ const tasks = /* @__PURE__ */ new Map();
5
+ let disposed = false;
6
+ const update = () => {
7
+ let text;
8
+ for (const value of tasks.values()) text = value;
9
+ notify(tasks.size > 0, text);
10
+ };
11
+ return {
12
+ begin(text) {
13
+ if (disposed) return () => void 0;
14
+ const owner = Symbol();
15
+ tasks.set(owner, text);
16
+ update();
17
+ return () => {
18
+ if (!disposed && tasks.delete(owner)) update();
19
+ };
20
+ },
21
+ dispose() {
22
+ if (disposed) return;
23
+ disposed = true;
24
+ tasks.clear();
25
+ notify(false);
26
+ }
27
+ };
28
+ }
29
+ //#endregion
30
+ export { createLoadingTasks };
31
+
32
+ //# sourceMappingURL=loading-tasks.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading-tasks.mjs","names":[],"sources":["../../src/utils/loading-tasks.ts"],"sourcesContent":["/** 组件内部异步任务的 Loading 所有权集合,不作为公共包入口导出。 */\nexport function createLoadingTasks(notify: (loading: boolean, text?: string) => void): {\n\tbegin: (text?: string) => () => void;\n\tdispose: () => void;\n} {\n\tconst tasks = new Map<symbol, string | undefined>();\n\tlet disposed = false;\n\tconst update = (): void => {\n\t\tlet text: string | undefined;\n\t\t// 显示最后启动且尚未结束的任务文案。\n\t\tfor (const value of tasks.values()) text = value;\n\t\tnotify(tasks.size > 0, text);\n\t};\n\treturn {\n\t\tbegin(text) {\n\t\t\tif (disposed) return () => undefined;\n\t\t\tconst owner = Symbol();\n\t\t\ttasks.set(owner, text);\n\t\t\tupdate();\n\t\t\treturn () => {\n\t\t\t\t// 旧任务、重复 done 和卸载后的回调均不能移除其他任务。\n\t\t\t\tif (!disposed && tasks.delete(owner)) update();\n\t\t\t};\n\t\t},\n\t\tdispose() {\n\t\t\tif (disposed) return;\n\t\t\tdisposed = true;\n\t\t\ttasks.clear();\n\t\t\tnotify(false);\n\t\t},\n\t};\n}\n"],"mappings":";;AACA,SAAgB,mBAAmB,QAGjC;CACD,MAAM,wBAAQ,IAAI,IAAgC;CAClD,IAAI,WAAW;CACf,MAAM,eAAqB;EAC1B,IAAI;EAEJ,KAAK,MAAM,SAAS,MAAM,OAAO,GAAG,OAAO;EAC3C,OAAO,MAAM,OAAO,GAAG,IAAI;CAC5B;CACA,OAAO;EACN,MAAM,MAAM;GACX,IAAI,UAAU,aAAa,KAAA;GAC3B,MAAM,QAAQ,OAAO;GACrB,MAAM,IAAI,OAAO,IAAI;GACrB,OAAO;GACP,aAAa;IAEZ,IAAI,CAAC,YAAY,MAAM,OAAO,KAAK,GAAG,OAAO;GAC9C;EACD;EACA,UAAU;GACT,IAAI,UAAU;GACd,WAAW;GACX,MAAM,MAAM;GACZ,OAAO,KAAK;EACb;CACD;AACD"}
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  /** 当前 Fast.Element.Plus 包版本,发布时必须与 package.json 保持一致。 */
2
- export declare const version = "2.0.18";
2
+ export declare const version = "2.0.20";
package/dist/version.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  //#region src/version.ts
2
2
  /** 当前 Fast.Element.Plus 包版本,发布时必须与 package.json 保持一致。 */
3
- const version = "2.0.18";
3
+ const version = "2.0.20";
4
4
  //#endregion
5
5
  export { version };
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","names":[],"sources":["../src/version.ts"],"sourcesContent":["/** 当前 Fast.Element.Plus 包版本,发布时必须与 package.json 保持一致。 */\nexport const version = \"2.0.18\";\n"],"mappings":";;AACA,MAAa,UAAU"}
1
+ {"version":3,"file":"version.mjs","names":[],"sources":["../src/version.ts"],"sourcesContent":["/** 当前 Fast.Element.Plus 包版本,发布时必须与 package.json 保持一致。 */\nexport const version = \"2.0.20\";\n"],"mappings":";;AACA,MAAa,UAAU"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fast-element-plus",
3
- "version": "2.0.18",
3
+ "version": "2.0.20",
4
4
  "description": "Typed Vue 3 components, directives, and hooks built on Element Plus.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -15,7 +15,7 @@
15
15
  "vue"
16
16
  ],
17
17
  "license": "Apache-2.0",
18
- "homepage": "https://fastdotnet.com",
18
+ "homepage": "http://fastdotnet.com",
19
19
  "bugs": {
20
20
  "url": "https://gitee.com/FastDotnet/fast.element.plus/issues"
21
21
  },
@@ -61,10 +61,7 @@
61
61
  },
62
62
  "scripts": {
63
63
  "dev": "tsdown --watch",
64
- "docs:dev": "vitepress dev docs --host 127.0.0.1 --port 5173 --strictPort",
65
64
  "build": "tsdown && pnpm run typegen && pnpm run build:styles",
66
- "docs:build": "vitepress build docs",
67
- "docs:preview": "vitepress preview docs",
68
65
  "build:styles": "sass styles/index.scss dist/index.css --style=compressed --source-map --embed-sources",
69
66
  "typegen": "tsc",
70
67
  "typecheck": "tsc --noEmit",
@@ -72,10 +69,9 @@
72
69
  "lint:fix": "eslint . --fix",
73
70
  "format": "prettier --write .",
74
71
  "format:check": "prettier --check .",
75
- "test": "pnpm run build && pnpm run test:types && pnpm run test:runtime && pnpm run test:docs && pnpm run test:package",
72
+ "test": "pnpm run build && pnpm run test:types && pnpm run test:runtime && pnpm run test:package",
76
73
  "test:types": "tsc --noEmit --project tests/tsconfig.json",
77
- "test:runtime": "node --test tests/runtime.test.mjs",
78
- "test:docs": "node --test tests/docs.test.mjs",
74
+ "test:runtime": "node --test tests/runtime.test.mjs tests/lifecycle.runtime.test.mjs tests/tool-ignores.test.mjs && node --import tsx --test tests/directive-lifecycle.test.mjs tests/loading-tasks.test.ts",
79
75
  "test:package": "node --test tests/package.test.mjs && publint --strict --pack npm",
80
76
  "check": "pnpm run typecheck && pnpm run lint && pnpm run test && pnpm run format:check",
81
77
  "prepack": "pnpm run check"
@@ -98,7 +94,7 @@
98
94
  "@fast-element-plus/icons-vue": "^2.0.1",
99
95
  "@types/node": "^24.13.4",
100
96
  "@types/sortablejs": "^1.15.9",
101
- "dayjs": "^1.11.23",
97
+ "@vue/shared": "3.5.11",
102
98
  "element-plus": "^2.14.5",
103
99
  "eslint": "^10.10.0",
104
100
  "eslint-config-flat-gitignore": "^2.4.0",
@@ -116,7 +112,6 @@
116
112
  "typescript": "^6.0.3",
117
113
  "typescript-eslint": "^8.70.0",
118
114
  "unplugin-vue-jsx": "^0.10.0",
119
- "vitepress": "^1.6.4",
120
115
  "vue": "^3.5.11",
121
116
  "vue-eslint-parser": "^10.4.1"
122
117
  },