m-eleplus-crud 0.0.14 → 0.0.16

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 (88) hide show
  1. package/dist/index.full.js +15 -4
  2. package/dist/index.full.min.js +16 -16
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +14 -14
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +15 -4
  7. package/es/components/crud/src/crud.d.ts +21 -0
  8. package/es/components/crud/src/crud.vue.d.ts +10 -0
  9. package/es/components/table/src/table.d.ts +14 -0
  10. package/es/components/table/src/table.vue.d.ts +10 -0
  11. package/es/index.mjs +6 -6
  12. package/es/packages/components/crud/index.mjs +2 -2
  13. package/es/packages/components/crud/src/crud.mjs +54 -621
  14. package/es/packages/components/crud/src/crud.mjs.map +1 -1
  15. package/es/packages/components/crud/src/crud2.mjs +625 -53
  16. package/es/packages/components/crud/src/crud2.mjs.map +1 -1
  17. package/es/packages/components/form/index.mjs +2 -2
  18. package/es/packages/components/form/src/form.mjs +25 -640
  19. package/es/packages/components/form/src/form.mjs.map +1 -1
  20. package/es/packages/components/form/src/form2.mjs +640 -25
  21. package/es/packages/components/form/src/form2.mjs.map +1 -1
  22. package/es/packages/components/index.mjs +6 -6
  23. package/es/packages/components/pagination/index.mjs +2 -2
  24. package/es/packages/components/pagination/src/pagination.mjs +38 -41
  25. package/es/packages/components/pagination/src/pagination.mjs.map +1 -1
  26. package/es/packages/components/pagination/src/pagination2.mjs +41 -38
  27. package/es/packages/components/pagination/src/pagination2.mjs.map +1 -1
  28. package/es/packages/components/picture/index.mjs +2 -2
  29. package/es/packages/components/picture/src/picture.mjs +26 -19
  30. package/es/packages/components/picture/src/picture.mjs.map +1 -1
  31. package/es/packages/components/picture/src/picture2.mjs +19 -26
  32. package/es/packages/components/picture/src/picture2.mjs.map +1 -1
  33. package/es/packages/components/qrcode/index.mjs +2 -2
  34. package/es/packages/components/qrcode/src/qrcode.mjs +62 -22
  35. package/es/packages/components/qrcode/src/qrcode.mjs.map +1 -1
  36. package/es/packages/components/qrcode/src/qrcode2.mjs +22 -62
  37. package/es/packages/components/qrcode/src/qrcode2.mjs.map +1 -1
  38. package/es/packages/components/search/index.mjs +2 -2
  39. package/es/packages/components/search/src/search.mjs +438 -25
  40. package/es/packages/components/search/src/search.mjs.map +1 -1
  41. package/es/packages/components/search/src/search2.mjs +25 -438
  42. package/es/packages/components/search/src/search2.mjs.map +1 -1
  43. package/es/packages/components/table/src/table.mjs +8 -3
  44. package/es/packages/components/table/src/table.mjs.map +1 -1
  45. package/es/packages/components/table/src/table2.mjs +1 -0
  46. package/es/packages/components/table/src/table2.mjs.map +1 -1
  47. package/lib/components/crud/src/crud.d.ts +21 -0
  48. package/lib/components/crud/src/crud.vue.d.ts +10 -0
  49. package/lib/components/table/src/table.d.ts +14 -0
  50. package/lib/components/table/src/table.vue.d.ts +10 -0
  51. package/lib/index.js +6 -6
  52. package/lib/packages/components/crud/index.js +2 -2
  53. package/lib/packages/components/crud/src/crud.js +55 -621
  54. package/lib/packages/components/crud/src/crud.js.map +1 -1
  55. package/lib/packages/components/crud/src/crud2.js +625 -54
  56. package/lib/packages/components/crud/src/crud2.js.map +1 -1
  57. package/lib/packages/components/form/index.js +2 -2
  58. package/lib/packages/components/form/src/form.js +26 -640
  59. package/lib/packages/components/form/src/form.js.map +1 -1
  60. package/lib/packages/components/form/src/form2.js +640 -26
  61. package/lib/packages/components/form/src/form2.js.map +1 -1
  62. package/lib/packages/components/index.js +6 -6
  63. package/lib/packages/components/pagination/index.js +2 -2
  64. package/lib/packages/components/pagination/src/pagination.js +38 -42
  65. package/lib/packages/components/pagination/src/pagination.js.map +1 -1
  66. package/lib/packages/components/pagination/src/pagination2.js +42 -38
  67. package/lib/packages/components/pagination/src/pagination2.js.map +1 -1
  68. package/lib/packages/components/picture/index.js +2 -2
  69. package/lib/packages/components/picture/src/picture.js +26 -20
  70. package/lib/packages/components/picture/src/picture.js.map +1 -1
  71. package/lib/packages/components/picture/src/picture2.js +20 -26
  72. package/lib/packages/components/picture/src/picture2.js.map +1 -1
  73. package/lib/packages/components/qrcode/index.js +2 -2
  74. package/lib/packages/components/qrcode/src/qrcode.js +66 -23
  75. package/lib/packages/components/qrcode/src/qrcode.js.map +1 -1
  76. package/lib/packages/components/qrcode/src/qrcode2.js +23 -66
  77. package/lib/packages/components/qrcode/src/qrcode2.js.map +1 -1
  78. package/lib/packages/components/search/index.js +2 -2
  79. package/lib/packages/components/search/src/search.js +438 -26
  80. package/lib/packages/components/search/src/search.js.map +1 -1
  81. package/lib/packages/components/search/src/search2.js +26 -438
  82. package/lib/packages/components/search/src/search2.js.map +1 -1
  83. package/lib/packages/components/table/src/table.js +8 -3
  84. package/lib/packages/components/table/src/table.js.map +1 -1
  85. package/lib/packages/components/table/src/table2.js +1 -0
  86. package/lib/packages/components/table/src/table2.js.map +1 -1
  87. package/package.json +1 -1
  88. package/web-types.json +1 -1
@@ -17335,6 +17335,7 @@ const crudProps = buildProps$1({
17335
17335
  const crudEmits = {
17336
17336
  "update:select": (arr) => isArray$1(arr),
17337
17337
  "update:modelValue": (value) => isObject$1(value),
17338
+ sortChange: (data) => true,
17338
17339
  search: (form) => isObject$1(form),
17339
17340
  reset: () => true,
17340
17341
  rowSave: (form, done, loading) => isObject$1(form) && isFunction$1(done) && isFunction$1(loading),
@@ -17689,6 +17690,9 @@ const _sfc_main$2 = defineComponent({
17689
17690
  });
17690
17691
  return result;
17691
17692
  };
17693
+ const sortChange = (data) => {
17694
+ emit("sortChange", data);
17695
+ };
17692
17696
  watch(
17693
17697
  () => props.option,
17694
17698
  (newVal) => {
@@ -17816,7 +17820,8 @@ const _sfc_main$2 = defineComponent({
17816
17820
  permission: _ctx.permission,
17817
17821
  option: tableOption.value,
17818
17822
  height: tableHeight.value,
17819
- "max-height": tableHeight.value
17823
+ "max-height": tableHeight.value,
17824
+ onSortChange: sortChange
17820
17825
  }, createSlots({
17821
17826
  menu: withCtx((scope) => [
17822
17827
  crudOption.value.editBtn && !unref(slots).editBtn && _ctx.permission["edit"] !== false ? (openBlock(), createBlock(_component_el_link, {
@@ -18076,6 +18081,7 @@ const tableProps = buildProps$1({
18076
18081
  });
18077
18082
  const tableEmits = {
18078
18083
  "update:select": (arr) => isArray$1(arr),
18084
+ sortChange: (data) => true,
18079
18085
  selectionChange: (arr) => isArray$1(arr)
18080
18086
  };
18081
18087
 
@@ -18151,6 +18157,9 @@ const _sfc_main = defineComponent({
18151
18157
  emit("update:select", cloneDeep(arrs));
18152
18158
  emit("selectionChange", arrs);
18153
18159
  };
18160
+ const sortChange = (data) => {
18161
+ emit("sortChange", data);
18162
+ };
18154
18163
  const radioSelect = (index) => {
18155
18164
  if (index == selectIndex.value) {
18156
18165
  selectIndex.value = -1;
@@ -18315,7 +18324,8 @@ const _sfc_main = defineComponent({
18315
18324
  border: tableOption.value.border,
18316
18325
  stripe: tableOption.value.stripe,
18317
18326
  "row-key": tableOption.value.rowKey,
18318
- onSelectionChange: selectionChange
18327
+ onSelectionChange: selectionChange,
18328
+ onSortChange: sortChange
18319
18329
  }, {
18320
18330
  empty: withCtx(() => [
18321
18331
  createElementVNode("div", { style: { "display": "flex", "flex-direction": "column", "justify-content": "center", "align-items": "center", "padding": "16px 0", "box-sizing": "border-box" } }, [
@@ -18337,7 +18347,8 @@ const _sfc_main = defineComponent({
18337
18347
  align: column.align || "center",
18338
18348
  "show-overflow-tooltip": column.overHidden,
18339
18349
  formatter: column.formatter ? (row, col, cellValue, index) => column.formatter(row, column, index) : null,
18340
- selectable: column.selectable
18350
+ selectable: column.selectable,
18351
+ sortable: column.sortable
18341
18352
  }, createSlots({
18342
18353
  _: 2
18343
18354
  }, [
@@ -18441,7 +18452,7 @@ const _sfc_main = defineComponent({
18441
18452
  ]),
18442
18453
  key: "2"
18443
18454
  } : void 0
18444
- ]), 1032, ["type", "width", "label", "prop", "align", "show-overflow-tooltip", "formatter", "selectable"]);
18455
+ ]), 1032, ["type", "width", "label", "prop", "align", "show-overflow-tooltip", "formatter", "selectable", "sortable"]);
18445
18456
  }),
18446
18457
  128
18447
18458
  )),
@@ -106,6 +106,17 @@ export interface ICrudCommonColumn extends ICommonColumn, ITableCommonColumn, Wi
106
106
  }
107
107
  export interface ICrudColumn extends ICrudCommonColumn {
108
108
  type?: ColumnType | 'index' | 'single' | 'selection';
109
+ /**
110
+ * @description 仅对 type=selection 的列有效,类型为 Function,Function 的返回值用来决定这一行的 CheckBox 是否可以勾选
111
+ * @param row 行数据
112
+ * @param index 索引
113
+ * @returns
114
+ */
115
+ selectable?: (row: any, index: number) => boolean;
116
+ /**
117
+ * @description 对应列是否可以排序, 如果设置为 'custom',则代表用户希望远程排序,需要监听 Table 的 sort-change 事件
118
+ */
119
+ sortable?: boolean | string;
109
120
  }
110
121
  /**
111
122
  * @description crud配置
@@ -227,6 +238,16 @@ export declare const crudEmits: {
227
238
  * @returns
228
239
  */
229
240
  'update:modelValue': (value: any) => value is Record<any, any>;
241
+ /**
242
+ * 表格自定义排序模式下排序变化触发
243
+ * @param data
244
+ * @returns
245
+ */
246
+ sortChange: (data: {
247
+ column: any;
248
+ prop: string;
249
+ order: any;
250
+ }) => boolean;
230
251
  /**
231
252
  * 查询事件触发
232
253
  * @param form 查询表单数据
@@ -124,6 +124,11 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
124
124
  search: (form: any) => void;
125
125
  reset: () => void;
126
126
  "update:select": (arr: any[]) => void;
127
+ sortChange: (data: {
128
+ column: any;
129
+ prop: string;
130
+ order: any;
131
+ }) => void;
127
132
  "update:modelValue": (value: any) => void;
128
133
  rowSave: (form: any, done: () => void, loading: () => void) => void;
129
134
  rowEdit: (form: any, done: () => void, loading: () => void) => void;
@@ -173,6 +178,11 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
173
178
  onSearch?: ((form: any) => any) | undefined;
174
179
  onReset?: (() => any) | undefined;
175
180
  "onUpdate:select"?: ((arr: any[]) => any) | undefined;
181
+ onSortChange?: ((data: {
182
+ column: any;
183
+ prop: string;
184
+ order: any;
185
+ }) => any) | undefined;
176
186
  "onUpdate:modelValue"?: ((value: any) => any) | undefined;
177
187
  onRowSave?: ((form: any, done: () => void, loading: () => void) => any) | undefined;
178
188
  onRowEdit?: ((form: any, done: () => void, loading: () => void) => any) | undefined;
@@ -57,6 +57,10 @@ export interface ITableColumn extends ICommonColumn, ITableCommonColumn {
57
57
  * @returns
58
58
  */
59
59
  selectable?: (row: any, index: number) => boolean;
60
+ /**
61
+ * @description 对应列是否可以排序, 如果设置为 'custom',则代表用户希望远程排序,需要监听 Table 的 sort-change 事件
62
+ */
63
+ sortable?: boolean | string;
60
64
  }
61
65
  /**
62
66
  * @description 公开的table配置
@@ -144,6 +148,16 @@ export declare const tableProps: {
144
148
  export type TableProps = ExtractPropTypes<typeof tableProps>;
145
149
  export declare const tableEmits: {
146
150
  'update:select': (arr: any[]) => boolean;
151
+ /**
152
+ * 表格自定义排序模式下排序变化触发
153
+ * @param data
154
+ * @returns
155
+ */
156
+ sortChange: (data: {
157
+ column: any;
158
+ prop: string;
159
+ order: any;
160
+ }) => boolean;
147
161
  /**
148
162
  * 表格选择数据触发
149
163
  * @param arr 选择的数据
@@ -64,6 +64,11 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
64
64
  refreshTable: () => void;
65
65
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
66
66
  "update:select": (arr: any[]) => void;
67
+ sortChange: (data: {
68
+ column: any;
69
+ prop: string;
70
+ order: any;
71
+ }) => void;
67
72
  selectionChange: (arr: any[]) => void;
68
73
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
69
74
  readonly size: {
@@ -106,6 +111,11 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
106
111
  };
107
112
  }>> & Readonly<{
108
113
  "onUpdate:select"?: ((arr: any[]) => any) | undefined;
114
+ onSortChange?: ((data: {
115
+ column: any;
116
+ prop: string;
117
+ order: any;
118
+ }) => any) | undefined;
109
119
  onSelectionChange?: ((arr: any[]) => any) | undefined;
110
120
  }>, {
111
121
  readonly loading: import("m-eleplus-crud/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
package/es/index.mjs CHANGED
@@ -7,21 +7,21 @@ export { provideGlobalConfig, useGlobalComponentSettings, useGlobalConfig } from
7
7
  export { MConfigProvider } from './packages/components/config-provider/index.mjs';
8
8
  export { tableEmits, tableProps } from './packages/components/table/src/table2.mjs';
9
9
  export { MTable } from './packages/components/table/index.mjs';
10
- export { searchEmits, searchProps } from './packages/components/search/src/search.mjs';
10
+ export { searchEmits, searchProps } from './packages/components/search/src/search2.mjs';
11
11
  export { MSearch } from './packages/components/search/index.mjs';
12
- export { pictureEmits, pictureProps } from './packages/components/picture/src/picture.mjs';
12
+ export { pictureEmits, pictureProps } from './packages/components/picture/src/picture2.mjs';
13
13
  export { MPicture } from './packages/components/picture/index.mjs';
14
14
  export { dialogEmits, dialogProps } from './packages/components/dialog/src/dialog.mjs';
15
15
  export { MDialog } from './packages/components/dialog/index.mjs';
16
- export { qrcodeEmits, qrcodeProps } from './packages/components/qrcode/src/qrcode.mjs';
16
+ export { qrcodeEmits, qrcodeProps } from './packages/components/qrcode/src/qrcode2.mjs';
17
17
  export { MQrcode } from './packages/components/qrcode/index.mjs';
18
18
  export { barcodeEmits, barcodeProps } from './packages/components/barcode/src/barcode.mjs';
19
19
  export { MBarcode } from './packages/components/barcode/index.mjs';
20
- export { formEmits, formProps } from './packages/components/form/src/form2.mjs';
20
+ export { formEmits, formProps } from './packages/components/form/src/form.mjs';
21
21
  export { MForm } from './packages/components/form/index.mjs';
22
- export { crudEmits, crudProps } from './packages/components/crud/src/crud2.mjs';
22
+ export { crudEmits, crudProps } from './packages/components/crud/src/crud.mjs';
23
23
  export { MCrud } from './packages/components/crud/index.mjs';
24
- export { paginationEmits, paginationProps } from './packages/components/pagination/src/pagination.mjs';
24
+ export { paginationEmits, paginationProps } from './packages/components/pagination/src/pagination2.mjs';
25
25
  export { MPagination } from './packages/components/pagination/index.mjs';
26
26
  export { INSTALLED_KEY } from './packages/constants/key.mjs';
27
27
  export { componentSizeMap, componentSizes } from './packages/constants/size.mjs';
@@ -1,5 +1,5 @@
1
- import Crud from './src/crud.mjs';
2
- export { crudEmits, crudProps } from './src/crud2.mjs';
1
+ import Crud from './src/crud2.mjs';
2
+ export { crudEmits, crudProps } from './src/crud.mjs';
3
3
  import { withInstall } from '../../utils/vue/install.mjs';
4
4
 
5
5
  const MCrud = withInstall(Crud);