@qin-ui/antd-vue-pro 2.0.12 → 2.0.14

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.
@@ -1,52 +1,58 @@
1
- .search-form[data-v-a5f1b551] .ant-form-item {
1
+ .pro-table_search-form[data-v-0bb2bc70] .ant-form-item {
2
2
  margin: 0;
3
3
  }
4
- .expand-toggle-button[data-v-a5f1b551] {
4
+ .pro-table_search-form_expand-toggle-button[data-v-0bb2bc70] {
5
5
  display: flex;
6
6
  align-items: center;
7
7
  padding: 0;
8
8
  padding-left: 4px;
9
9
  }
10
- .transition[data-v-a5f1b551] {
10
+ .pro-table_search-form .transition[data-v-0bb2bc70] {
11
11
  transition: all 0.25s;
12
12
  }
13
- .search-form-container[data-v-727c8aba] {
13
+ .pro-table_search-form-container[data-v-c385cd54] {
14
14
  margin-bottom: 24px;
15
15
  padding: 24px;
16
16
  }
17
- .table-container[data-v-185690a3] {
17
+ .pro-table_table-container[data-v-ac3cdb51] {
18
18
  flex: 1;
19
19
  padding: 24px 24px 0;
20
20
  }
21
- .size-control-button[data-v-b7eded53] {
21
+ .pro-table_size-control_button[data-v-0df8d4ae] {
22
22
  display: flex;
23
23
  align-items: center;
24
24
  padding-right: 12px;
25
25
  padding-left: 12px;
26
26
  }
27
- .size-control-button[data-v-b7eded53] svg {
27
+ .pro-table_size-control_button[data-v-0df8d4ae] svg {
28
28
  transform: scale(1.3);
29
29
  }
30
- .column-control-button[data-v-cdcab425] {
30
+ .pro-table_column-control_button[data-v-49bb3de5] {
31
31
  display: flex;
32
32
  align-items: center;
33
33
  padding-right: 12px;
34
34
  padding-left: 12px;
35
35
  }
36
- .column-control-button[data-v-cdcab425] svg {
36
+ .pro-table_column-control_button[data-v-49bb3de5] svg {
37
37
  transform: scale(1.2, 1.4);
38
38
  }
39
- .pro-table .pro-table-header[data-v-7b0601fa] {
39
+ .pro-table_header[data-v-54982423] {
40
40
  display: flex;
41
41
  align-items: center;
42
42
  justify-content: flex-end;
43
43
  }
44
- .pro-table .pro-table-header[data-v-7b0601fa]:empty {
44
+ .pro-table_header[data-v-54982423]:empty {
45
45
  display: none;
46
46
  }
47
- .pro-table .pro-table-header + .pro-table-content[data-v-7b0601fa] {
47
+ .pro-table_header + .pro-table_header_content[data-v-54982423] {
48
48
  margin-top: 16px;
49
49
  }
50
- .pro-table[data-v-7b0601fa] .ant-pagination .ant-pagination-total-text {
50
+ .pro-table_header_button-bar[data-v-54982423] {
51
+ flex: 1;
52
+ }
53
+ .pro-table_header_toolbar[data-v-54982423] {
54
+ margin-left: 12px;
55
+ }
56
+ .pro-table[data-v-54982423] .ant-pagination .ant-pagination-total-text {
51
57
  flex: 1;
52
58
  }
@@ -1,5 +1,5 @@
1
1
  import { camelize, defineComponent, provide, renderSlot } from "vue";
2
- import { i as isPlainObject } from "../vendor/utils/lodash-es-B2uQdS28.js";
2
+ import { i as isPlainObject } from "../vendor/utils/lodash-es-p6jau26B.js";
3
3
  const getPopupContainer = (triggerNode) => triggerNode.closest(".ant-form");
4
4
  const INJECT_CONFIG = {
5
5
  "pro-table": {
@@ -134,6 +134,9 @@ function camelizeProperties(obj) {
134
134
  );
135
135
  }
136
136
  const _sfc_main = /* @__PURE__ */ defineComponent({
137
+ ...{
138
+ inheritAttrs: false
139
+ },
137
140
  __name: "index",
138
141
  props: {
139
142
  componentVars: {}
@@ -1,4 +1,4 @@
1
- import { I, _ } from "./index-DXPHmG1H.js";
1
+ import { I, _ } from "./index-D8NF18a1.js";
2
2
  export {
3
3
  I as INJECT_CONFIG,
4
4
  _ as default
package/es/form/index.js CHANGED
@@ -5,8 +5,8 @@ import { useProviderDisabled, useInjectDisabled } from "ant-design-vue/es/config
5
5
  import { colProps } from "ant-design-vue/es/grid/Col";
6
6
  import { formItemProps, useInjectFormItemContext } from "ant-design-vue/es/form";
7
7
  import { defineComponent, provide, inject, useSlots, watchEffect, createBlock, openBlock, unref, mergeProps, withCtx, createVNode, renderSlot, computed, toValue, normalizeProps, guardReactiveProps, resolveComponent, createElementBlock, Fragment, renderList, createSlots, ref, reactive, useAttrs, createCommentVNode, resolveDynamicComponent, isVNode, createTextVNode, toDisplayString } from "vue";
8
- import { I as INJECT_CONFIG, c as camelizeProperties, g as getObject } from "../component-provider/index-DXPHmG1H.js";
9
- import { i as isPlainObject, t as toPath, g as get, s as set, o as omit, c as cloneDeep } from "../vendor/utils/lodash-es-B2uQdS28.js";
8
+ import { I as INJECT_CONFIG, c as camelizeProperties, g as getObject } from "../component-provider/index-D8NF18a1.js";
9
+ import { i as isPlainObject, t as toPath, g as get, s as set, o as omit, c as cloneDeep } from "../vendor/utils/lodash-es-p6jau26B.js";
10
10
  const _sfc_main$6 = /* @__PURE__ */ defineComponent({
11
11
  ...{ name: "ProForm", inheritAttrs: false },
12
12
  __name: "index",
@@ -37,11 +37,11 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
37
37
  return (_a = unref(setFormRef)) == null ? void 0 : _a(el);
38
38
  },
39
39
  model: unref(formData)
40
- }, mergeProps(injectAttrs, unref(camelizeProperties)(_ctx.$attrs))), {
40
+ }, mergeProps(injectAttrs, unref(camelizeProperties)(_ctx.$attrs)), { class: "pro-form" }), {
41
41
  default: withCtx(() => [
42
42
  createVNode(unref(_sfc_main$3), {
43
43
  fields: unref(fields),
44
- grid: _ctx.grid
44
+ grid: __props.grid
45
45
  }, null, 8, ["fields", "grid"]),
46
46
  renderSlot(_ctx.$slots, "default")
47
47
  ]),
@@ -234,7 +234,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
234
234
  default: withCtx(() => [
235
235
  field.fields ? (openBlock(), createBlock(_component_BaseFormItem, {
236
236
  key: 0,
237
- grid: field.grid ?? _ctx.grid,
237
+ grid: field.grid ?? __props.grid,
238
238
  fields: field.fields,
239
239
  disabled: field.disabled
240
240
  }, null, 8, ["grid", "fields", "disabled"])) : (openBlock(), createBlock(unref(_sfc_main$2), mergeProps({
@@ -495,7 +495,8 @@ function useForm(...args) {
495
495
  }
496
496
  const initPropsMap = /* @__PURE__ */ new Map();
497
497
  const getInitProps = (field) => {
498
- const { component, type = "" } = field;
498
+ const { component } = field;
499
+ const type = component === "input" ? "" : field.type;
499
500
  if (COMPONENT_MAP.has(component)) {
500
501
  const k = [component, type].filter(Boolean).join(".");
501
502
  if (initPropsMap.has(k)) {
@@ -583,7 +584,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
583
584
  return (_ctx, _cache) => {
584
585
  return openBlock(), createBlock(unref(_sfc_main$1), {
585
586
  component: groupedAttrs.value.componentContainer,
586
- path: _ctx.path
587
+ path: __props.path
587
588
  }, {
588
589
  default: withCtx(() => [
589
590
  is.value ? (openBlock(), createBlock(resolveDynamicComponent(is.value), mergeProps({ key: 0 }, groupedAttrs.value.attrs, {
@@ -591,13 +592,13 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
591
592
  ref: componentRef,
592
593
  [`${groupedAttrs.value.modelName}`]: value.value,
593
594
  [`onUpdate:${groupedAttrs.value.modelName}`]: _cache[0] || (_cache[0] = ($event) => value.value = $event),
594
- path: _ctx.path
595
+ path: __props.path
595
596
  }), createSlots({ _: 2 }, [
596
597
  renderList(groupedAttrs.value.slots, (slot, name) => {
597
598
  return {
598
599
  name,
599
600
  fn: withCtx((scoped) => [
600
- createVNode(unref(_sfc_main), mergeProps({ path: _ctx.path }, scoped, { component: slot }), null, 16, ["path", "component"])
601
+ createVNode(unref(_sfc_main), mergeProps({ path: __props.path }, scoped, { component: slot }), null, 16, ["path", "component"])
601
602
  ])
602
603
  };
603
604
  })
@@ -612,11 +613,11 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
612
613
  ...{ name: "ContainerFragment", inheritAttrs: false },
613
614
  __name: "index",
614
615
  props: {
615
- component: {}
616
+ component: { type: [Object, Function] }
616
617
  },
617
618
  setup(__props) {
618
619
  return (_ctx, _cache) => {
619
- return _ctx.component ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.component), normalizeProps(mergeProps({ key: 0 }, _ctx.$attrs)), {
620
+ return __props.component ? (openBlock(), createBlock(resolveDynamicComponent(__props.component), normalizeProps(mergeProps({ key: 0 }, _ctx.$attrs)), {
620
621
  default: withCtx(() => [
621
622
  renderSlot(_ctx.$slots, "default")
622
623
  ]),
@@ -629,12 +630,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
629
630
  ...{ name: "SlotComponent", inheritAttrs: false },
630
631
  __name: "index",
631
632
  props: {
632
- component: { type: [Object, String, Number, Boolean, null, Function] }
633
+ component: { type: [Object, Function, String, Number, Boolean, null] }
633
634
  },
634
635
  setup(__props) {
635
636
  return (_ctx, _cache) => {
636
- return isVNode(_ctx.component) || typeof _ctx.component === "function" ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.component), normalizeProps(mergeProps({ key: 0 }, _ctx.$attrs)), null, 16)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
637
- createTextVNode(toDisplayString(_ctx.component), 1)
637
+ return isVNode(__props.component) || typeof __props.component === "function" ? (openBlock(), createBlock(resolveDynamicComponent(__props.component), normalizeProps(mergeProps({ key: 0 }, _ctx.$attrs)), null, 16)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
638
+ createTextVNode(toDisplayString(__props.component), 1)
638
639
  ], 64));
639
640
  };
640
641
  }
@@ -651,6 +652,7 @@ export {
651
652
  _sfc_main as SlotComponent,
652
653
  TeleportComponentNamePrefix,
653
654
  _sfc_main$6 as default,
655
+ getInitProps,
654
656
  useFields,
655
657
  useForm,
656
658
  useFormData
package/es/index.d.ts CHANGED
@@ -260,7 +260,7 @@ declare type CompSlot<T extends string> = Partial<Record<KeyExpandString<T>, Slo
260
260
  /**
261
261
  * @description 容器组件类型
262
262
  */
263
- export declare type ContainerComponent = Component<PathProps> | null;
263
+ export declare type ContainerComponent = Component<PathProps>;
264
264
 
265
265
  export declare const ContainerFragment: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
266
266
 
@@ -289,13 +289,13 @@ declare const _default_2: <T extends Table<any> = Table>(__VLS_props: NonNullabl
289
289
  }>;
290
290
  searchFormConfig?: Omit<SearchFormProps, "form"> & {
291
291
  hidden?: boolean;
292
- container?: ContainerComponent;
292
+ container?: ContainerComponent | false;
293
293
  };
294
- tableContainer?: ContainerComponent;
294
+ tableContainer?: ContainerComponent | false;
295
295
  } & TableProps<any>) & Partial<{}>> & PublicProps;
296
296
  expose(exposed: ShallowUnwrapRef< {}>): void;
297
297
  attrs: any;
298
- slots: Readonly<Omit<Readonly<{
298
+ slots: Readonly<Omit<Omit<Readonly<{
299
299
  emptyText?: any;
300
300
  expandIcon?: Slot<RenderExpandIconProps<any> | undefined> | undefined;
301
301
  title?: any;
@@ -317,7 +317,15 @@ declare const _default_2: <T extends Table<any> = Table>(__VLS_props: NonNullabl
317
317
  customFilterIcon?: any;
318
318
  customFilterDropdown?: any;
319
319
  default: any;
320
- }> & Partial<Record<"table" | "search-form" | "button-bar" | "toolbar", Slot>>, "default">> & Omit<Readonly<{
320
+ }>, "bodyCell"> & Readonly<{
321
+ bodyCell?: (props: {
322
+ text: any;
323
+ value: any;
324
+ record: T extends Table<infer U extends Data> ? U : never;
325
+ index: number;
326
+ column: Column<T extends Table<infer U extends Data> ? U : never>;
327
+ }) => void;
328
+ }> & Readonly<Partial<Record<"table" | "search-form" | "button-bar" | "toolbar", Slot>>>, "default">> & Omit<Omit<Readonly<{
321
329
  emptyText?: any;
322
330
  expandIcon?: Slot<RenderExpandIconProps<any> | undefined> | undefined;
323
331
  title?: any;
@@ -339,7 +347,15 @@ declare const _default_2: <T extends Table<any> = Table>(__VLS_props: NonNullabl
339
347
  customFilterIcon?: any;
340
348
  customFilterDropdown?: any;
341
349
  default: any;
342
- }> & Partial<Record<"table" | "search-form" | "button-bar" | "toolbar", Slot>>, "default">;
350
+ }>, "bodyCell"> & Readonly<{
351
+ bodyCell?: (props: {
352
+ text: any;
353
+ value: any;
354
+ record: T extends Table<infer U extends Data> ? U : never;
355
+ index: number;
356
+ column: Column<T extends Table<infer U extends Data> ? U : never>;
357
+ }) => void;
358
+ }> & Readonly<Partial<Record<"table" | "search-form" | "button-bar" | "toolbar", Slot>>>, "default">;
343
359
  emit: {};
344
360
  }>) => VNode & {
345
361
  __ctx?: Awaited<typeof __VLS_setup>;
@@ -464,6 +480,8 @@ declare type _FormProps = Pick<Partial<FormProps>, 'colon' | 'disabled' | 'hideR
464
480
 
465
481
  declare type FP<T extends Record<string, any>> = Partial<T & Pick<Base, 'valueFormatter' | 'componentContainer' | 'modelName'> & AllowedComponentProps>;
466
482
 
483
+ export declare const getInitProps: (field: Field) => Record<string, any>;
484
+
467
485
  export declare type Grid = boolean | (RowProps & {});
468
486
 
469
487
  export declare const INJECT_CONFIG: {
@@ -724,7 +742,7 @@ declare type RangePickerSlots = CompSlot<'dateRender' | 'renderExtraFooter' | 's
724
742
  export declare type RenderComponentType = Component<VModelProps & PathProps>;
725
743
 
726
744
  export declare type RequiredComponentVars = {
727
- 'pro-table': PP<TableProps & Pick<ProTableProps, 'control' | 'searchFormConfig' | 'immediateSearch' | 'addIndexColumn'>>;
745
+ 'pro-table': PP<TableProps & Pick<ProTableProps, 'control' | 'searchFormConfig' | 'immediateSearch' | 'addIndexColumn' | 'tableContainer'>>;
728
746
  'pro-form': PP<Omit<ProFormProps, 'form' | 'grid'> & {
729
747
  grid: Exclude<Grid, undefined | boolean>;
730
748
  }>;
package/es/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import "./antd-vue-pro.css";
2
2
  import _sfc_main from "./form/index.js";
3
- import { BaseField, BaseFormItem, COMPONENT_MAP, ContainerFragment, FORM_ITEM_SLOT_KEYS, InjectionFormKey, InjectionPathKey, SlotComponent, TeleportComponentNamePrefix, useFields, useForm, useFormData } from "./form/index.js";
3
+ import { BaseField, BaseFormItem, COMPONENT_MAP, ContainerFragment, FORM_ITEM_SLOT_KEYS, InjectionFormKey, InjectionPathKey, SlotComponent, TeleportComponentNamePrefix, getInitProps, useFields, useForm, useFormData } from "./form/index.js";
4
4
  import BaseTable from "./table/index.js";
5
5
  import { useTable } from "./table/index.js";
6
- import { _ as _sfc_main$1 } from "./component-provider/index-DXPHmG1H.js";
7
- import { I } from "./component-provider/index-DXPHmG1H.js";
6
+ import { _ as _sfc_main$1 } from "./component-provider/index-D8NF18a1.js";
7
+ import { I } from "./component-provider/index-D8NF18a1.js";
8
8
  const withInstall = (comp) => {
9
9
  comp.install = (app) => {
10
10
  app.component(comp.name, comp);
@@ -38,6 +38,7 @@ export {
38
38
  SlotComponent,
39
39
  TeleportComponentNamePrefix,
40
40
  index as default,
41
+ getInitProps,
41
42
  useFields,
42
43
  useForm,
43
44
  useFormData,
package/es/table/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { createElementBlock, openBlock, createElementVNode, defineComponent, ref, computed, watch, watchEffect, createBlock, unref, mergeProps, withCtx, createVNode, renderSlot, resolveDynamicComponent, createTextVNode, createCommentVNode, Fragment, toDisplayString, normalizeStyle, toValue, useAttrs, renderList, withModifiers, inject, useSlots, onMounted, normalizeClass, isRef, createSlots, normalizeProps, guardReactiveProps, nextTick, reactive } from "vue";
2
- import { I as INJECT_CONFIG, g as getObject, c as camelizeProperties } from "../component-provider/index-DXPHmG1H.js";
2
+ import { I as INJECT_CONFIG, g as getObject, c as camelizeProperties } from "../component-provider/index-D8NF18a1.js";
3
3
  import _sfc_main$9, { ContainerFragment as _sfc_main$a, useForm } from "../form/index.js";
4
4
  import { Space, Button, theme, Dropdown, Menu, MenuItem, Checkbox, MenuDivider, Table } from "ant-design-vue";
5
- import { p as pick, c as cloneDeep } from "../vendor/utils/lodash-es-B2uQdS28.js";
5
+ import { p as pick, c as cloneDeep } from "../vendor/utils/lodash-es-p6jau26B.js";
6
6
  import { useConfigContextInject } from "ant-design-vue/es/config-provider/context";
7
7
  import { tableProps } from "ant-design-vue/es/table";
8
8
  const _export_sfc = (sfc, props) => {
@@ -23,9 +23,9 @@ const _hoisted_1$3 = {
23
23
  viewBox: "64 64 896 896"
24
24
  };
25
25
  function _sfc_render$2(_ctx, _cache) {
26
- return openBlock(), createElementBlock("svg", _hoisted_1$3, _cache[0] || (_cache[0] = [
26
+ return openBlock(), createElementBlock("svg", _hoisted_1$3, [..._cache[0] || (_cache[0] = [
27
27
  createElementVNode("path", { d: "M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z" }, null, -1)
28
- ]));
28
+ ])]);
29
29
  }
30
30
  const DownOutlined = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$2]]);
31
31
  const _sfc_main$7 = /* @__PURE__ */ defineComponent({
@@ -35,9 +35,9 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
35
35
  form: {},
36
36
  layout: { default: "grid" },
37
37
  expand: { type: [Boolean, Object], default: true },
38
- searchButton: { default: void 0 },
39
- resetButton: { default: void 0 },
40
- expandButton: { default: void 0 },
38
+ searchButton: { type: [Object, Function], default: void 0 },
39
+ resetButton: { type: [Object, Function], default: void 0 },
40
+ expandButton: { type: [Object, Function], default: void 0 },
41
41
  class: {},
42
42
  style: {}
43
43
  },
@@ -150,54 +150,57 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
150
150
  };
151
151
  return (_ctx, _cache) => {
152
152
  return openBlock(), createBlock(unref(_sfc_main$9), mergeProps(layoutProps.value, {
153
- form: _ctx.form,
154
- class: "search-form transition"
153
+ form: __props.form,
154
+ class: "pro-table_search-form transition"
155
155
  }), {
156
156
  default: withCtx(() => [
157
- createVNode(unref(Space), { align: "start" }, {
157
+ createVNode(unref(Space), {
158
+ align: "start",
159
+ class: "pro-table_search-form_button-group"
160
+ }, {
158
161
  default: withCtx(() => [
159
162
  renderSlot(_ctx.$slots, "reset-button", { onClick: onReset }, () => [
160
- _ctx.resetButton ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.resetButton), {
163
+ __props.resetButton ? (openBlock(), createBlock(resolveDynamicComponent(__props.resetButton), {
161
164
  key: 0,
162
165
  onClick: onReset
163
166
  })) : (openBlock(), createBlock(unref(Button), {
164
167
  key: 1,
168
+ class: "pro-table_search-form_reset-button",
165
169
  onClick: onReset
166
170
  }, {
167
- default: withCtx(() => _cache[0] || (_cache[0] = [
171
+ default: withCtx(() => [..._cache[0] || (_cache[0] = [
168
172
  createTextVNode("重置", -1)
169
- ])),
170
- _: 1,
171
- __: [0]
173
+ ])]),
174
+ _: 1
172
175
  }))
173
176
  ], true),
174
177
  renderSlot(_ctx.$slots, "search-button", { onClick: onSearch }, () => [
175
- _ctx.searchButton ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.searchButton), {
178
+ __props.searchButton ? (openBlock(), createBlock(resolveDynamicComponent(__props.searchButton), {
176
179
  key: 0,
177
180
  onClick: onSearch
178
181
  })) : (openBlock(), createBlock(unref(Button), {
179
182
  key: 1,
183
+ class: "pro-table_search-form_search-button",
180
184
  type: "primary",
181
185
  "html-type": "submit",
182
186
  onClick: onSearch
183
187
  }, {
184
- default: withCtx(() => _cache[1] || (_cache[1] = [
188
+ default: withCtx(() => [..._cache[1] || (_cache[1] = [
185
189
  createTextVNode(" 查询 ", -1)
186
- ])),
187
- _: 1,
188
- __: [1]
190
+ ])]),
191
+ _: 1
189
192
  }))
190
193
  ], true),
191
194
  renderSlot(_ctx.$slots, "expand-button", { onClick: changeExpandStatus }, () => [
192
195
  showExpandToggle.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
193
- _ctx.expandButton ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.expandButton), {
196
+ __props.expandButton ? (openBlock(), createBlock(resolveDynamicComponent(__props.expandButton), {
194
197
  key: 0,
195
198
  "expand-status": expandStatus.value,
196
199
  onClick: changeExpandStatus
197
200
  }, null, 8, ["expand-status"])) : (openBlock(), createBlock(unref(Button), {
198
201
  key: 1,
199
202
  type: "link",
200
- class: "expand-toggle-button",
203
+ class: "pro-table_search-form_expand-toggle-button",
201
204
  onClick: changeExpandStatus
202
205
  }, {
203
206
  default: withCtx(() => [
@@ -220,7 +223,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
220
223
  };
221
224
  }
222
225
  });
223
- const SearchForm = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-a5f1b551"]]);
226
+ const SearchForm = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-0bb2bc70"]]);
224
227
  function useModel(props, name, options) {
225
228
  const eventName = `onUpdate:${name}`;
226
229
  const emitUpdate = props[eventName];
@@ -240,7 +243,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
240
243
  const { token } = theme.useToken();
241
244
  return (_ctx, _cache) => {
242
245
  return openBlock(), createElementBlock("div", {
243
- class: "search-form-container",
246
+ class: "pro-table_search-form-container",
244
247
  style: normalizeStyle({ backgroundColor: unref(token).colorBgContainer })
245
248
  }, [
246
249
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
@@ -248,14 +251,14 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
248
251
  };
249
252
  }
250
253
  });
251
- const DefaultSearchFormContainer = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-727c8aba"]]);
254
+ const DefaultSearchFormContainer = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-c385cd54"]]);
252
255
  const _sfc_main$5 = /* @__PURE__ */ defineComponent({
253
256
  __name: "DefaultTableContainer",
254
257
  setup(__props) {
255
258
  const { token } = theme.useToken();
256
259
  return (_ctx, _cache) => {
257
260
  return openBlock(), createElementBlock("div", {
258
- class: "table-container",
261
+ class: "pro-table_table-container",
259
262
  style: normalizeStyle({ backgroundColor: unref(token).colorBgContainer })
260
263
  }, [
261
264
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
@@ -263,7 +266,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
263
266
  };
264
267
  }
265
268
  });
266
- const DefaultTableContainer = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-185690a3"]]);
269
+ const DefaultTableContainer = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-ac3cdb51"]]);
267
270
  const _sfc_main$4 = {};
268
271
  const _hoisted_1$2 = {
269
272
  focusable: "false",
@@ -275,9 +278,9 @@ const _hoisted_1$2 = {
275
278
  viewBox: "64 64 896 896"
276
279
  };
277
280
  function _sfc_render$1(_ctx, _cache) {
278
- return openBlock(), createElementBlock("svg", _hoisted_1$2, _cache[0] || (_cache[0] = [
281
+ return openBlock(), createElementBlock("svg", _hoisted_1$2, [..._cache[0] || (_cache[0] = [
279
282
  createElementVNode("path", { d: "M840 836H184c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h656c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zm0-724H184c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h656c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zM610.8 378c6 0 9.4-7 5.7-11.7L515.7 238.7a7.14 7.14 0 00-11.3 0L403.6 366.3a7.23 7.23 0 005.7 11.7H476v268h-62.8c-6 0-9.4 7-5.7 11.7l100.8 127.5c2.9 3.7 8.5 3.7 11.3 0l100.8-127.5c3.7-4.7.4-11.7-5.7-11.7H548V378h62.8z" }, null, -1)
280
- ]));
283
+ ])]);
281
284
  }
282
285
  const ColumnHeightOutlined = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$1]]);
283
286
  const _sfc_main$3 = /* @__PURE__ */ defineComponent({
@@ -308,12 +311,12 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
308
311
  "selected-keys": unref(size) ? [unref(size)] : [],
309
312
  items: sizeOptions,
310
313
  onClick: onSizeChange
311
- }, null, 8, ["selected-keys", "items"])
314
+ }, null, 8, ["selected-keys"])
312
315
  ]),
313
316
  default: withCtx(() => [
314
317
  createVNode(unref(Button), {
315
318
  type: "text",
316
- class: "size-control-button"
319
+ class: "pro-table_size-control_button"
317
320
  }, {
318
321
  default: withCtx(() => [
319
322
  createVNode(ColumnHeightOutlined)
@@ -326,7 +329,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
326
329
  };
327
330
  }
328
331
  });
329
- const SizeControl = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-b7eded53"]]);
332
+ const SizeControl = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-0df8d4ae"]]);
330
333
  const _sfc_main$2 = {};
331
334
  const _hoisted_1$1 = {
332
335
  focusable: "false",
@@ -338,9 +341,9 @@ const _hoisted_1$1 = {
338
341
  viewBox: "64 64 896 896"
339
342
  };
340
343
  function _sfc_render(_ctx, _cache) {
341
- return openBlock(), createElementBlock("svg", _hoisted_1$1, _cache[0] || (_cache[0] = [
344
+ return openBlock(), createElementBlock("svg", _hoisted_1$1, [..._cache[0] || (_cache[0] = [
342
345
  createElementVNode("path", { d: "M880.1 154H143.9c-24.5 0-39.8 26.7-27.5 48L349 597.4V838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V597.4L907.7 202c12.2-21.3-3.1-48-27.6-48zM603.4 798H420.6V642h182.9v156zm9.6-236.6l-9.5 16.6h-183l-9.5-16.6L212.7 226h598.6L613 561.4z" }, null, -1)
343
- ]));
346
+ ])]);
344
347
  }
345
348
  const FilterOutlined = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render]]);
346
349
  const _sfc_main$1 = /* @__PURE__ */ defineComponent({
@@ -408,61 +411,58 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
408
411
  placement: "bottomRight"
409
412
  }, {
410
413
  overlay: withCtx(() => [
411
- createElementVNode("div", null, [
412
- createVNode(unref(Menu), {
413
- style: { "min-width": "100px", "max-height": "500px", "overflow-y": "scroll" },
414
- selectable: false
415
- }, {
416
- default: withCtx(() => [
417
- (openBlock(), createBlock(unref(MenuItem), { key: 0 }, {
414
+ createVNode(unref(Menu), {
415
+ style: { "min-width": "100px", "max-height": "500px", "overflow-y": "scroll" },
416
+ selectable: false
417
+ }, {
418
+ default: withCtx(() => [
419
+ (openBlock(), createBlock(unref(MenuItem), { key: 0 }, {
420
+ default: withCtx(() => [
421
+ createElementVNode("div", null, [
422
+ createVNode(unref(Checkbox), {
423
+ checked: checkAll.value,
424
+ indeterminate: indeterminate.value,
425
+ onChange: onCheckAllChange
426
+ }, {
427
+ default: withCtx(() => [..._cache[2] || (_cache[2] = [
428
+ createTextVNode(" 全选 ", -1)
429
+ ])]),
430
+ _: 1
431
+ }, 8, ["checked", "indeterminate"])
432
+ ])
433
+ ]),
434
+ _: 1
435
+ })),
436
+ createVNode(unref(MenuDivider)),
437
+ (openBlock(true), createElementBlock(Fragment, null, renderList(checkedColumnsOptions.value, (item) => {
438
+ return openBlock(), createBlock(unref(MenuItem), {
439
+ key: item.value,
440
+ onClick: ($event) => checkColumnsMenuItemClick(item.value)
441
+ }, {
418
442
  default: withCtx(() => [
419
- createElementVNode("div", null, [
420
- createVNode(unref(Checkbox), {
421
- checked: checkAll.value,
422
- indeterminate: indeterminate.value,
423
- onChange: onCheckAllChange
424
- }, {
425
- default: withCtx(() => _cache[2] || (_cache[2] = [
426
- createTextVNode(" 全选 ", -1)
427
- ])),
428
- _: 1,
429
- __: [2]
430
- }, 8, ["checked", "indeterminate"])
431
- ])
443
+ createVNode(unref(Checkbox), {
444
+ checked: checkedColumnKeys.value.includes(item.value)
445
+ }, {
446
+ default: withCtx(() => [
447
+ createElementVNode("div", {
448
+ onClick: _cache[0] || (_cache[0] = withModifiers(() => {
449
+ }, ["stop"]))
450
+ }, toDisplayString(item.label), 1)
451
+ ]),
452
+ _: 2
453
+ }, 1032, ["checked"])
432
454
  ]),
433
- _: 1
434
- })),
435
- createVNode(unref(MenuDivider)),
436
- (openBlock(true), createElementBlock(Fragment, null, renderList(checkedColumnsOptions.value, (item) => {
437
- return openBlock(), createBlock(unref(MenuItem), {
438
- key: item.value,
439
- onClick: ($event) => checkColumnsMenuItemClick(item.value)
440
- }, {
441
- default: withCtx(() => [
442
- createVNode(unref(Checkbox), {
443
- checked: checkedColumnKeys.value.includes(item.value)
444
- }, {
445
- default: withCtx(() => [
446
- createElementVNode("div", {
447
- onClick: _cache[0] || (_cache[0] = withModifiers(() => {
448
- }, ["stop"]))
449
- }, toDisplayString(item.label), 1)
450
- ]),
451
- _: 2
452
- }, 1032, ["checked"])
453
- ]),
454
- _: 2
455
- }, 1032, ["onClick"]);
456
- }), 128))
457
- ]),
458
- _: 1
459
- })
460
- ])
455
+ _: 2
456
+ }, 1032, ["onClick"]);
457
+ }), 128))
458
+ ]),
459
+ _: 1
460
+ })
461
461
  ]),
462
462
  default: withCtx(() => [
463
463
  createVNode(unref(Button), {
464
464
  type: "text",
465
- class: "column-control-button"
465
+ class: "pro-table_column-control_button"
466
466
  }, {
467
467
  default: withCtx(() => [
468
468
  createVNode(FilterOutlined)
@@ -475,18 +475,24 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
475
475
  };
476
476
  }
477
477
  });
478
- const ColumnControl = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-cdcab425"]]);
479
- const _hoisted_1 = { class: "pro-table-header" };
478
+ const ColumnControl = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-49bb3de5"]]);
479
+ const _hoisted_1 = { class: "pro-table_header" };
480
480
  const _hoisted_2 = {
481
481
  key: 0,
482
- style: { "flex": "1" }
482
+ class: "pro-table_header_button-bar"
483
483
  };
484
484
  const _hoisted_3 = {
485
485
  key: 1,
486
- style: { "margin-left": "12px" }
486
+ class: "pro-table_header_toolbar"
487
+ };
488
+ const _hoisted_4 = {
489
+ key: 2,
490
+ class: "pro-table_header_size-control"
491
+ };
492
+ const _hoisted_5 = {
493
+ key: 3,
494
+ class: "pro-table_header_column-control"
487
495
  };
488
- const _hoisted_4 = { key: 2 };
489
- const _hoisted_5 = { key: 3 };
490
496
  const _sfc_main = /* @__PURE__ */ defineComponent({
491
497
  ...{ name: "ProTable", inheritAttrs: false },
492
498
  __name: "BaseTable",
@@ -497,7 +503,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
497
503
  immediateSearch: { type: Boolean, default: void 0 },
498
504
  control: { type: [Boolean, Object], default: void 0 },
499
505
  searchFormConfig: { default: void 0 },
500
- tableContainer: { default: DefaultTableContainer }
506
+ tableContainer: { type: [Object, Function, Boolean], default: void 0 }
501
507
  },
502
508
  setup(__props) {
503
509
  const props = __props;
@@ -506,10 +512,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
506
512
  const tableProperties = Object.keys(tableProps());
507
513
  const injectAttrs = pick(injectProps, tableProperties);
508
514
  const computedSearchFormConfig = computed(() => {
515
+ var _a, _b;
516
+ const container = ((_a = props.searchFormConfig) == null ? void 0 : _a.container) ?? ((_b = injectProps.searchFormConfig) == null ? void 0 : _b.container) ?? DefaultSearchFormContainer;
509
517
  return {
510
- container: DefaultSearchFormContainer,
511
518
  ...injectProps.searchFormConfig,
512
- ...getObject(props.searchFormConfig)
519
+ ...getObject(props.searchFormConfig),
520
+ container: container ? container : void 0
513
521
  };
514
522
  });
515
523
  const attrs = useAttrs();
@@ -549,7 +557,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
549
557
  _search();
550
558
  };
551
559
  const computedTableProps = computed(() => {
552
- return { ...injectAttrs, ...tableAttrs.value, onChange: void 0 };
560
+ return {
561
+ ...injectAttrs,
562
+ ...tableAttrs.value,
563
+ pagination: void 0,
564
+ onChange: void 0
565
+ };
566
+ });
567
+ const computedTableContainer = computed(() => {
568
+ const container = props.tableContainer ?? injectProps.tableContainer ?? DefaultTableContainer;
569
+ return container ? container : void 0;
553
570
  });
554
571
  const indexColumn = {
555
572
  title: "序号",
@@ -557,19 +574,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
557
574
  width: 80,
558
575
  customRender: ({ index }) => index + 1
559
576
  };
560
- const computedColumns = computed(() => [
561
- ...props.addIndexColumn ?? injectProps.addIndexColumn ? [indexColumn] : [],
562
- ...(tableAttrs.value.columns ?? (columns == null ? void 0 : columns.value) ?? []).flatMap(
563
- (item, index) => {
564
- if (item.key) return [{ ...item, key: item.key }];
565
- if (item.dataIndex) {
566
- const dataIndexKey = Array.isArray(item.dataIndex) ? item.dataIndex.join(".") : item.dataIndex;
567
- return [{ ...item, key: dataIndexKey }];
577
+ const computedColumns = computed(
578
+ () => [
579
+ ...props.addIndexColumn ?? injectProps.addIndexColumn ? [indexColumn] : [],
580
+ ...(tableAttrs.value.columns ?? (columns == null ? void 0 : columns.value) ?? []).flatMap(
581
+ (item, index) => {
582
+ if (item.key) return [{ ...item, key: item.key }];
583
+ if (item.dataIndex) {
584
+ const dataIndexKey = Array.isArray(item.dataIndex) ? item.dataIndex.join(".") : item.dataIndex;
585
+ return [{ ...item, key: dataIndexKey }];
586
+ }
587
+ return [{ ...item, key: index }];
568
588
  }
569
- return [{ ...item, key: index }];
570
- }
571
- )
572
- ]);
589
+ )
590
+ ]
591
+ );
573
592
  const visibleComputedColumns = computed(() => {
574
593
  return computedColumns.value.filter((item) => !item.hidden);
575
594
  });
@@ -627,7 +646,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
627
646
  ]),
628
647
  _: 3
629
648
  }, 8, ["component"])) : createCommentVNode("", true),
630
- createVNode(unref(_sfc_main$a), { component: _ctx.tableContainer }, {
649
+ createVNode(unref(_sfc_main$a), { component: computedTableContainer.value }, {
631
650
  default: withCtx(() => [
632
651
  createElementVNode("div", _hoisted_1, [
633
652
  unref(buttonBarSlot) ? (openBlock(), createElementBlock("div", _hoisted_2, [
@@ -650,7 +669,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
650
669
  ])) : createCommentVNode("", true)
651
670
  ]),
652
671
  renderSlot(_ctx.$slots, "table", {}, () => [
653
- createVNode(unref(Table), mergeProps({ class: "pro-table-content" }, computedTableProps.value, {
672
+ createVNode(unref(Table), mergeProps({ class: "pro-table_content" }, computedTableProps.value, {
654
673
  size: unref(size),
655
674
  loading: unref(loading),
656
675
  columns: visibleComputedColumns.value,
@@ -675,7 +694,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
675
694
  };
676
695
  }
677
696
  });
678
- const BaseTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-7b0601fa"]]);
697
+ const BaseTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-54982423"]]);
679
698
  const getDefaultPageParam = () => ({ current: 1, pageSize: 10, total: 0 });
680
699
  const pageParamProperty = ["current", "pageSize", "total"];
681
700
  const useTable = (params) => {
@@ -81,10 +81,10 @@ function isFunction(value) {
81
81
  return tag == funcTag$2 || tag == genTag$1 || tag == asyncTag || tag == proxyTag;
82
82
  }
83
83
  var coreJsData = root["__core-js_shared__"];
84
- var maskSrcKey = function() {
84
+ var maskSrcKey = (function() {
85
85
  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || "");
86
86
  return uid ? "Symbol(src)_1." + uid : "";
87
- }();
87
+ })();
88
88
  function isMasked(func) {
89
89
  return !!maskSrcKey && maskSrcKey in func;
90
90
  }
@@ -127,7 +127,7 @@ function getNative(object, key) {
127
127
  }
128
128
  var WeakMap = getNative(root, "WeakMap");
129
129
  var objectCreate = Object.create;
130
- var baseCreate = /* @__PURE__ */ function() {
130
+ var baseCreate = /* @__PURE__ */ (function() {
131
131
  function object() {
132
132
  }
133
133
  return function(proto) {
@@ -142,7 +142,7 @@ var baseCreate = /* @__PURE__ */ function() {
142
142
  object.prototype = void 0;
143
143
  return result;
144
144
  };
145
- }();
145
+ })();
146
146
  function apply(func, thisArg, args) {
147
147
  switch (args.length) {
148
148
  case 0:
@@ -186,14 +186,14 @@ function constant(value) {
186
186
  return value;
187
187
  };
188
188
  }
189
- var defineProperty = function() {
189
+ var defineProperty = (function() {
190
190
  try {
191
191
  var func = getNative(Object, "defineProperty");
192
192
  func({}, "", {});
193
193
  return func;
194
194
  } catch (e) {
195
195
  }
196
- }();
196
+ })();
197
197
  var baseSetToString = !defineProperty ? identity : function(func, string) {
198
198
  return defineProperty(func, "toString", {
199
199
  "configurable": true,
@@ -303,9 +303,9 @@ function baseIsArguments(value) {
303
303
  var objectProto$8 = Object.prototype;
304
304
  var hasOwnProperty$7 = objectProto$8.hasOwnProperty;
305
305
  var propertyIsEnumerable$1 = objectProto$8.propertyIsEnumerable;
306
- var isArguments = baseIsArguments(/* @__PURE__ */ function() {
306
+ var isArguments = baseIsArguments(/* @__PURE__ */ (function() {
307
307
  return arguments;
308
- }()) ? baseIsArguments : function(value) {
308
+ })()) ? baseIsArguments : function(value) {
309
309
  return isObjectLike(value) && hasOwnProperty$7.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee");
310
310
  };
311
311
  function stubFalse() {
@@ -334,7 +334,7 @@ var freeExports$1 = typeof exports == "object" && exports && !exports.nodeType &
334
334
  var freeModule$1 = freeExports$1 && typeof module == "object" && module && !module.nodeType && module;
335
335
  var moduleExports$1 = freeModule$1 && freeModule$1.exports === freeExports$1;
336
336
  var freeProcess = moduleExports$1 && freeGlobal.process;
337
- var nodeUtil = function() {
337
+ var nodeUtil = (function() {
338
338
  try {
339
339
  var types = freeModule$1 && freeModule$1.require && freeModule$1.require("util").types;
340
340
  if (types) {
@@ -343,7 +343,7 @@ var nodeUtil = function() {
343
343
  return freeProcess && freeProcess.binding && freeProcess.binding("util");
344
344
  } catch (e) {
345
345
  }
346
- }();
346
+ })();
347
347
  var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
348
348
  var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
349
349
  var objectProto$7 = Object.prototype;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qin-ui/antd-vue-pro",
3
- "version": "2.0.12",
3
+ "version": "2.0.14",
4
4
  "description": "二次封装antd vue组件",
5
5
  "type": "module",
6
6
  "module": "es/index.js",
@@ -36,8 +36,10 @@
36
36
  "url": "https://github.com/dufan3715/pro-components/issues"
37
37
  },
38
38
  "devDependencies": {
39
+ "@types/lodash-es": "^4.17.12",
39
40
  "ant-design-vue": "^4",
40
41
  "lodash-es": "^4.17.21",
42
+ "scroll-into-view-if-needed": "^3.1.0",
41
43
  "vue": "^3.5.18",
42
44
  "vue-component-type-helpers": "^3.0.1"
43
45
  },