qidian-vue-ui 1.1.36 → 1.1.38
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.
- package/dist/components/form/item.vue.d.ts +3 -1
- package/dist/components/form/item.vue.mjs +1 -1
- package/dist/components/form/item.vue2.mjs +14 -5
- package/dist/components/form/item.vue2.mjs.map +1 -1
- package/dist/components/service/dialog-table-select/index.vue.mjs +1 -1
- package/dist/components/service/dialog-table-select/index.vue2.mjs +6 -0
- package/dist/components/service/dialog-table-select/index.vue2.mjs.map +1 -1
- package/dist/components/service/dialog-table-select/props.d.ts +1 -0
- package/dist/components/service/dialog-table-select/props.mjs +1 -0
- package/dist/components/service/dialog-table-select/props.mjs.map +1 -1
- package/dist/components/service/dialog-table-select/types.d.ts +1 -1
- package/dist/qidian-vue-ui.css +5 -5
- package/package.json +2 -2
|
@@ -2,8 +2,10 @@ import type { QdFormItemProps } from './types';
|
|
|
2
2
|
declare var __VLS_10: {
|
|
3
3
|
crudMode: "view" | "add" | "edit" | undefined;
|
|
4
4
|
context: Record<string, unknown> | undefined;
|
|
5
|
-
};
|
|
5
|
+
}, __VLS_17: string, __VLS_18: any;
|
|
6
6
|
type __VLS_Slots = {} & {
|
|
7
|
+
[K in NonNullable<typeof __VLS_17>]?: (props: typeof __VLS_18) => any;
|
|
8
|
+
} & {
|
|
7
9
|
default?: (props: typeof __VLS_10) => any;
|
|
8
10
|
};
|
|
9
11
|
declare const __VLS_component: import("vue").DefineComponent<QdFormItemProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<QdFormItemProps> & Readonly<{}>, {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./item.vue2.mjs";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const QdFormItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const QdFormItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-3b3090b0"]]);
|
|
5
5
|
export {
|
|
6
6
|
QdFormItem as default
|
|
7
7
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { defineComponent, mergeDefaults, computed, createBlock, createCommentVNode, openBlock, unref, mergeProps, withCtx, createVNode, normalizeProps, guardReactiveProps, renderSlot } from "vue";
|
|
1
|
+
import { defineComponent, mergeDefaults, computed, createBlock, createCommentVNode, openBlock, unref, mergeProps, withCtx, createVNode, normalizeProps, guardReactiveProps, createSlots, renderSlot, renderList } from "vue";
|
|
2
2
|
import { FormItem } from "tdesign-vue-next";
|
|
3
|
-
import { isEmpty } from "qidian-shared";
|
|
3
|
+
import { isEmpty, filterSlots } from "qidian-shared";
|
|
4
4
|
/* empty css */
|
|
5
5
|
import QdGridItem from "../grid/item.vue.mjs";
|
|
6
6
|
import _sfc_main$1 from "../config-renderer/index.vue.mjs";
|
|
@@ -80,7 +80,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
80
80
|
class: "qd-form-item"
|
|
81
81
|
}, reProps.value.gridItemOptions), {
|
|
82
82
|
default: withCtx(() => [
|
|
83
|
-
createVNode(unref(FormItem), normalizeProps(guardReactiveProps(reProps.value.formItemOptions)), {
|
|
83
|
+
createVNode(unref(FormItem), normalizeProps(guardReactiveProps(reProps.value.formItemOptions)), createSlots({
|
|
84
84
|
default: withCtx(() => [
|
|
85
85
|
renderSlot(_ctx.$slots, "default", {
|
|
86
86
|
crudMode: reProps.value.formItemOptions.crudMode,
|
|
@@ -92,8 +92,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
92
92
|
}, reProps.value.configRendererOptions), null, 16)) : createCommentVNode("", true)
|
|
93
93
|
], true)
|
|
94
94
|
]),
|
|
95
|
-
_:
|
|
96
|
-
},
|
|
95
|
+
_: 2
|
|
96
|
+
}, [
|
|
97
|
+
renderList(unref(filterSlots)(_ctx.$slots, ["default"]), (name) => {
|
|
98
|
+
return {
|
|
99
|
+
name,
|
|
100
|
+
fn: withCtx((slotProps) => [
|
|
101
|
+
renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps)), void 0, true)
|
|
102
|
+
])
|
|
103
|
+
};
|
|
104
|
+
})
|
|
105
|
+
]), 1040)
|
|
97
106
|
]),
|
|
98
107
|
_: 3
|
|
99
108
|
}, 16)) : createCommentVNode("", true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item.vue2.mjs","sources":["../../../src/components/form/item.vue"],"sourcesContent":["<template>\n <qd-grid-item v-if=\"reIfRender !== false\" class=\"qd-form-item\" v-bind=\"reProps.gridItemOptions\">\n <t-form-item v-bind=\"reProps.formItemOptions\">\n <slot :crud-mode=\"reProps.formItemOptions.crudMode\" :context=\"context\">\n <qd-config-renderer\n v-if=\"reProps.configRendererOptions.config\"\n class=\"qd-form-item__component\"\n v-bind=\"reProps.configRendererOptions\"\n />\n </slot>\n </t-form-item>\n </qd-grid-item>\n</template>\n\n<script setup lang=\"ts\">\n import type { QdFormItemProps } from './types'\n import type {\n QdConfigRendererProps,\n QdComputeFunction,\n QdAsyncComputeOptions\n } from '../config-renderer'\n import { computed } from 'vue'\n import { FormItem as TFormItem } from 'tdesign-vue-next'\n import { QdGridItem } from '../grid'\n import { QdConfigRenderer } from '../config-renderer'\n import { qdFormItemProps } from './props'\n import { qdUseComputeValue } from '../config-renderer/compute'\n import { isEmpty } from 'qidian-shared'\n\n defineOptions({\n name: 'QdFormItem'\n })\n\n const props = withDefaults(defineProps<QdFormItemProps>(), qdFormItemProps)\n\n // 处理 ifRender\n const reIfRender = computed(() => {\n const ifRender = props.ifRender\n if (isEmpty(ifRender)) return true\n\n if (\n (ifRender as QdComputeFunction<boolean>)?.__qdCompute ||\n (ifRender as QdAsyncComputeOptions<boolean>)?.__qdAsyncCompute\n ) {\n const { result } = qdUseComputeValue(\n ifRender as QdComputeFunction<boolean> | QdAsyncComputeOptions<boolean>,\n computed(() => props.context || {})\n )\n return result.value\n }\n\n return ifRender as boolean\n })\n\n const reProps = computed(() => {\n const { col, row, context, component, required, rules, ...formItemOptions } = props\n const reRules = rules || []\n\n if (component) {\n const comp = component.is\n const compName = (\n typeof comp === 'string' ? comp : !comp ? '' : 'name' in comp ? comp.name || '' : ''\n ).toLowerCase()\n const messagePrefix =\n compName.search('select') > -1 ||\n compName.search('checkbox') > -1 ||\n compName.search('radio') > -1\n ? '请选择'\n : compName.search('upload') > -1\n ? '请上传'\n : '请输入'\n\n if (required && !reRules.some((item) => item.required)) {\n if (required && typeof required === 'string') {\n reRules.push({ required: true, message: required })\n } else {\n reRules.push({ required: true, message: `${messagePrefix}${formItemOptions.label}` })\n }\n }\n\n component.placeholder =\n component.placeholder ??\n (compName.search('picker') > -1 || compName.search('upload') > -1\n ? ''\n : `${messagePrefix}${formItemOptions.label}`)\n component.clearable =\n component.clearable ?? (required ? false : (props.defaultClearable ?? true))\n }\n\n return {\n formItemOptions: {\n ...formItemOptions,\n rules: reRules\n },\n gridItemOptions: { col, row },\n configRendererOptions: { context, config: component } as QdConfigRendererProps\n }\n })\n</script>\n\n<style lang=\"less\" scoped>\n .qd-form-item {\n & > :deep(.t-form__item) {\n & > .t-form__controls > .t-form__controls-content > * {\n width: 100%;\n }\n }\n\n &__component {\n width: 100%;\n }\n }\n</style>\n"],"names":["_openBlock","_createBlock","_unref","_mergeProps","_createVNode","TFormItem","_normalizeProps","_guardReactiveProps","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"item.vue2.mjs","sources":["../../../src/components/form/item.vue"],"sourcesContent":["<template>\n <qd-grid-item v-if=\"reIfRender !== false\" class=\"qd-form-item\" v-bind=\"reProps.gridItemOptions\">\n <t-form-item v-bind=\"reProps.formItemOptions\">\n <slot :crud-mode=\"reProps.formItemOptions.crudMode\" :context=\"context\">\n <qd-config-renderer\n v-if=\"reProps.configRendererOptions.config\"\n class=\"qd-form-item__component\"\n v-bind=\"reProps.configRendererOptions\"\n />\n </slot>\n\n <template v-for=\"name in filterSlots($slots, ['default'])\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </t-form-item>\n </qd-grid-item>\n</template>\n\n<script setup lang=\"ts\">\n import type { QdFormItemProps } from './types'\n import type {\n QdConfigRendererProps,\n QdComputeFunction,\n QdAsyncComputeOptions\n } from '../config-renderer'\n import { computed } from 'vue'\n import { FormItem as TFormItem } from 'tdesign-vue-next'\n import { QdGridItem } from '../grid'\n import { QdConfigRenderer } from '../config-renderer'\n import { qdFormItemProps } from './props'\n import { qdUseComputeValue } from '../config-renderer/compute'\n import { filterSlots, isEmpty } from 'qidian-shared'\n\n defineOptions({\n name: 'QdFormItem'\n })\n\n const props = withDefaults(defineProps<QdFormItemProps>(), qdFormItemProps)\n\n // 处理 ifRender\n const reIfRender = computed(() => {\n const ifRender = props.ifRender\n if (isEmpty(ifRender)) return true\n\n if (\n (ifRender as QdComputeFunction<boolean>)?.__qdCompute ||\n (ifRender as QdAsyncComputeOptions<boolean>)?.__qdAsyncCompute\n ) {\n const { result } = qdUseComputeValue(\n ifRender as QdComputeFunction<boolean> | QdAsyncComputeOptions<boolean>,\n computed(() => props.context || {})\n )\n return result.value\n }\n\n return ifRender as boolean\n })\n\n const reProps = computed(() => {\n const { col, row, context, component, required, rules, ...formItemOptions } = props\n const reRules = rules || []\n\n if (component) {\n const comp = component.is\n const compName = (\n typeof comp === 'string' ? comp : !comp ? '' : 'name' in comp ? comp.name || '' : ''\n ).toLowerCase()\n const messagePrefix =\n compName.search('select') > -1 ||\n compName.search('checkbox') > -1 ||\n compName.search('radio') > -1\n ? '请选择'\n : compName.search('upload') > -1\n ? '请上传'\n : '请输入'\n\n if (required && !reRules.some((item) => item.required)) {\n if (required && typeof required === 'string') {\n reRules.push({ required: true, message: required })\n } else {\n reRules.push({ required: true, message: `${messagePrefix}${formItemOptions.label}` })\n }\n }\n\n component.placeholder =\n component.placeholder ??\n (compName.search('picker') > -1 || compName.search('upload') > -1\n ? ''\n : `${messagePrefix}${formItemOptions.label}`)\n component.clearable =\n component.clearable ?? (required ? false : (props.defaultClearable ?? true))\n }\n\n return {\n formItemOptions: {\n ...formItemOptions,\n rules: reRules\n },\n gridItemOptions: { col, row },\n configRendererOptions: { context, config: component } as QdConfigRendererProps\n }\n })\n</script>\n\n<style lang=\"less\" scoped>\n .qd-form-item {\n & > :deep(.t-form__item) {\n & > .t-form__controls > .t-form__controls-content > * {\n width: 100%;\n }\n }\n\n &__component {\n width: 100%;\n }\n }\n</style>\n"],"names":["_openBlock","_createBlock","_unref","_mergeProps","_createVNode","TFormItem","_normalizeProps","_guardReactiveProps","_createSlots","_renderSlot","$slots","_withCtx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCE,UAAM,QAAQ;AAGd,UAAM,aAAa,SAAS,MAAM;AAChC,YAAM,WAAW,MAAM;AACvB,UAAI,QAAQ,QAAQ,EAAG,QAAO;AAE9B,UACG,UAAyC,eACzC,UAA6C,kBAC9C;AACA,cAAM,EAAE,WAAW;AAAA,UACjB;AAAA,UACA,SAAS,MAAM,MAAM,WAAW,CAAA,CAAE;AAAA,QAAA;AAEpC,eAAO,OAAO;AAAA,MAChB;AAEA,aAAO;AAAA,IACT,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,EAAE,KAAK,KAAK,SAAS,WAAW,UAAU,OAAO,GAAG,gBAAA,IAAoB;AAC9E,YAAM,UAAU,SAAS,CAAA;AAEzB,UAAI,WAAW;AACb,cAAM,OAAO,UAAU;AACvB,cAAM,YACJ,OAAO,SAAS,WAAW,OAAO,CAAC,OAAO,KAAK,UAAU,OAAO,KAAK,QAAQ,KAAK,IAClF,YAAA;AACF,cAAM,gBACJ,SAAS,OAAO,QAAQ,IAAI,MAC5B,SAAS,OAAO,UAAU,IAAI,MAC9B,SAAS,OAAO,OAAO,IAAI,KACvB,QACA,SAAS,OAAO,QAAQ,IAAI,KAC1B,QACA;AAER,YAAI,YAAY,CAAC,QAAQ,KAAK,CAAC,SAAS,KAAK,QAAQ,GAAG;AACtD,cAAI,YAAY,OAAO,aAAa,UAAU;AAC5C,oBAAQ,KAAK,EAAE,UAAU,MAAM,SAAS,UAAU;AAAA,UACpD,OAAO;AACL,oBAAQ,KAAK,EAAE,UAAU,MAAM,SAAS,GAAG,aAAa,GAAG,gBAAgB,KAAK,GAAA,CAAI;AAAA,UACtF;AAAA,QACF;AAEA,kBAAU,cACR,UAAU,gBACT,SAAS,OAAO,QAAQ,IAAI,MAAM,SAAS,OAAO,QAAQ,IAAI,KAC3D,KACA,GAAG,aAAa,GAAG,gBAAgB,KAAK;AAC9C,kBAAU,YACR,UAAU,cAAc,WAAW,QAAS,MAAM,oBAAoB;AAAA,MAC1E;AAEA,aAAO;AAAA,QACL,iBAAiB;AAAA,UACf,GAAG;AAAA,UACH,OAAO;AAAA,QAAA;AAAA,QAET,iBAAiB,EAAE,KAAK,IAAA;AAAA,QACxB,uBAAuB,EAAE,SAAS,QAAQ,UAAA;AAAA,MAAU;AAAA,IAExD,CAAC;;aApGmB,WAAA,UAAU,SAA9BA,UAAA,GAAAC,YAceC,mBAdfC,WAce;AAAA;QAd2B,OAAM;AAAA,MAAA,GAAuB,QAAA,MAAQ,eAAe,GAAA;AAAA,yBAC5F,MAYc;AAAA,UAZdC,YAYcF,MAAAG,QAAA,GAAAC,eAAAC,mBAZO,QAAA,MAAQ,eAAe,CAAA,GAAAC,YAAA;AAAA,6BAC1C,MAMO;AAAA,cANPC,WAMO,KAAA,QAAA,WAAA;AAAA,gBANA,UAAW,QAAA,MAAQ,gBAAgB;AAAA,gBAAW,SAAS,QAAA;AAAA,cAAA,GAA9D,MAMO;AAAA,gBAJG,QAAA,MAAQ,sBAAsB,UADtCT,aAAAC,YAIEC,oBAJFC,WAIE;AAAA;kBAFA,OAAM;AAAA,gBAAA,GACE,QAAA,MAAQ,qBAAqB,GAAA,MAAA,EAAA;;;;;uBAIhBD,MAAA,WAAA,EAAYQ,KAAAA,QAAM,CAAA,SAAA,CAAA,GAAA,CAA1B,SAAI;;;gBACnB,IAAAC,QAAA,CADkE,cAAS;AAAA,kBAC3EF,WAAwC,KAAA,QAA3B,MAAIH,eAAAC,mBAAU,SAAS,CAAA,GAAA,QAAA,IAAA;AAAA,gBAAA;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./index.vue2.mjs";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-adb47397"]]);
|
|
5
5
|
export {
|
|
6
6
|
index as default
|
|
7
7
|
};
|
|
@@ -156,6 +156,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
156
156
|
multiple: { type: Boolean },
|
|
157
157
|
readonly: { type: Boolean },
|
|
158
158
|
disabled: { type: Boolean },
|
|
159
|
+
placeholder: {},
|
|
160
|
+
clearable: { type: Boolean },
|
|
159
161
|
keys: {},
|
|
160
162
|
size: {},
|
|
161
163
|
valueType: {},
|
|
@@ -204,6 +206,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
204
206
|
disabled,
|
|
205
207
|
keys,
|
|
206
208
|
valueType,
|
|
209
|
+
clearable,
|
|
210
|
+
placeholder,
|
|
207
211
|
size,
|
|
208
212
|
onClear,
|
|
209
213
|
onChange,
|
|
@@ -218,6 +222,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
218
222
|
disabled: disabled ?? tdDisabled.value,
|
|
219
223
|
keys,
|
|
220
224
|
valueType,
|
|
225
|
+
clearable,
|
|
226
|
+
placeholder,
|
|
221
227
|
size
|
|
222
228
|
},
|
|
223
229
|
dialogOptions: wrapper,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.mjs","sources":["../../../../src/components/service/dialog-table-select/index.vue"],"sourcesContent":["<template>\n <t-select\n :class=\"['qd-dialog-table-select', reProps.readonly ? 'qd-dialog-table-select--readonly' : '']\"\n v-model=\"modelValue\"\n :options=\"selectedRows\"\n readonly\n v-bind=\"reProps.selectOptions\"\n @click=\"openDialog\"\n @clear=\"handleClear\"\n >\n <template #suffixIcon>\n <search-icon />\n </template>\n </t-select>\n\n <qd-dialog\n ref=\"dialog\"\n v-model:visible=\"visible\"\n lazy\n destroy-on-close\n v-bind=\"reProps.dialogOptions\"\n @confirm=\"handleConfirm\"\n >\n <qd-crud-table\n ref=\"tableRef\"\n class=\"qd-dialog-table-select__table\"\n v-model:search-data=\"searchData\"\n v-model:data=\"data\"\n v-model:selected-row-keys=\"selectedRowKeys\"\n v-model:column-controller-visible=\"columnControllerVisible\"\n v-model:display-columns=\"displayColumns\"\n v-model:expanded-rowKeys=\"expandedRowKeys\"\n v-model:filter-value=\"filterValue\"\n v-model:sort=\"sort\"\n v-model:expanded-tree-nodes=\"expandedTreeNodes\"\n v-bind=\"reProps.tableOptions\"\n @select-change=\"handleSelectChange\"\n >\n <template\n v-for=\"item in extractSlotsWithPrefix($slots, 'table')\"\n #[item.filterName]=\"slotProps\"\n >\n <slot :name=\"item.originalName\" v-bind=\"slotProps\" />\n </template>\n </qd-crud-table>\n </qd-dialog>\n</template>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n D extends TableRowData = TableRowData,\n R = unknown,\n P = ServicePageParams,\n TP = P,\n Pag extends ServicePagination = ServicePagination\n \"\n>\n import type { SelectOption, SelectOptions, SelectValue, TableRowData } from 'tdesign-vue-next'\n import type { ServicePageParams, ServicePagination } from 'qidian-shared'\n import type {\n QdDialogTableSelectInstanceFunctions,\n QdServiceDialogTableSelectProps\n } from './types'\n import type { QdDialogInstanceFunctions } from '../../dialog'\n import type { QdCrudTableProps } from '../../crud'\n import { extractSlotsWithPrefix } from 'qidian-shared'\n import { Select as TSelect } from 'tdesign-vue-next'\n import { SearchIcon } from 'tdesign-icons-vue-next'\n import { qdDialogTableSelectSearchGrid, qdServiceDialogTableSelectProps } from './props'\n import { computed, onMounted, ref, useTemplateRef } from 'vue'\n import { useVModels } from '@vueuse/core'\n import { QdDialog } from '../../dialog'\n import { QdCrudTable } from '../../crud'\n import { qdServiceSelectKeys } from '../select/props'\n import { useDisabled, useReadonly } from '../../../hooks'\n import { merge } from 'lodash-es'\n\n defineOptions({\n name: 'QdServiceDialogTableSelect'\n })\n\n type Props = QdServiceDialogTableSelectProps<D, R, P, TP, Pag>\n\n const props = withDefaults(defineProps<Props>(), qdServiceDialogTableSelectProps)\n const emit = defineEmits<{\n 'update:modelValue': [Props['modelValue']]\n 'update:visible': [Props['visible']]\n\n 'update:searchData': [Props['searchData']]\n 'update:data': [Props['data']]\n 'update:columnControllerVisible': [Props['columnControllerVisible']]\n 'update:displayColumns': [Props['displayColumns']]\n 'update:expandedRowKeys': [Props['expandedRowKeys']]\n 'update:filterValue': [Props['filterValue']]\n 'update:sort': [Props['sort']]\n 'update:expandedTreeNodes': [Props['expandedTreeNodes']]\n }>()\n const {\n modelValue,\n visible,\n searchData,\n data,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes\n } = useVModels<typeof props, keyof typeof emit>(props, emit, {\n passive: true\n })\n\n const tdReadonly = useReadonly()\n const tdDisabled = useDisabled()\n const dialogRef = useTemplateRef<QdDialogInstanceFunctions>('dialog')\n\n const selectedRowKeys = ref<(string | number)[]>([])\n const selectedRows = ref<D[]>([])\n let latestSelectedRows: D[] = []\n\n const reProps = computed(() => {\n const {\n modelValue,\n visible,\n searchData,\n data,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes,\n wrapper,\n readonly,\n\n multiple,\n disabled,\n keys,\n valueType,\n size,\n\n onClear,\n onChange,\n\n search,\n tableSize,\n ...tableOptions\n } = props\n\n return {\n readonly: readonly ?? tdReadonly.value,\n selectOptions: {\n multiple,\n disabled: disabled ?? tdDisabled.value,\n keys,\n valueType,\n size\n },\n dialogOptions: wrapper,\n tableOptions: {\n ...tableOptions,\n size: tableSize,\n search: {\n ...search,\n grid: merge({}, qdDialogTableSelectSearchGrid, search?.grid)\n },\n selectType: (multiple ? 'multiple' : 'single') as QdCrudTableProps['selectType'],\n rowKey: keys?.value || qdServiceSelectKeys.value\n },\n\n onClear,\n onChange,\n\n models: {\n modelValue,\n visible,\n searchData,\n data,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes,\n wrapper\n }\n }\n })\n\n function handleSelectChange(rowKeys: (string | number)[], options: SelectOptions<D>) {\n latestSelectedRows = options.selectedRowData\n }\n\n function handleConfirm() {\n selectedRows.value = latestSelectedRows\n dialogRef.value?.hide()\n\n /**\n * FIXME qd-dialog 一定要配置 destroy-on-close 并且在 modelValue 赋值前要销毁\n * 否则就会报错\n */\n const { selectOptions } = reProps.value\n const valueKey = selectOptions.keys?.value || qdServiceSelectKeys.value\n const labelKey = selectOptions.keys?.label || qdServiceSelectKeys.label\n if (selectOptions.valueType === 'value') {\n modelValue.value = selectOptions.multiple\n ? latestSelectedRows.map((item) => item[valueKey])\n : latestSelectedRows[0]?.[valueKey]\n } else {\n const rows = selectedRows.value.map((item) => ({\n [valueKey]: item[valueKey],\n [labelKey]: item[labelKey]\n }))\n modelValue.value = selectOptions.multiple ? rows : rows[0]\n }\n\n reProps.value.onChange?.(modelValue.value, {\n option: latestSelectedRows[latestSelectedRows.length - 1],\n selectedOptions: latestSelectedRows,\n trigger: 'check'\n })\n }\n\n function openDialog() {\n if (reProps.value.readonly || reProps.value.selectOptions.disabled) return\n\n dialogRef.value?.show()\n }\n\n function handleClear(context: { e: MouseEvent }) {\n reProps.value.onChange?.(undefined as unknown as SelectValue, {\n e: context.e,\n option: null as unknown as SelectOption,\n selectedOptions: [],\n trigger: 'clear'\n })\n reProps.value.onClear?.(context)\n }\n\n const expose = {} as QdDialogTableSelectInstanceFunctions\n\n onMounted(() => {\n Object.assign(expose, dialogRef.value)\n })\n</script>\n\n<style lang=\"less\" scoped>\n .qd-dialog-table-select {\n &:not(&--readonly) {\n cursor: pointer;\n }\n\n &__table {\n :deep(.qd-crud) {\n &-search > .t-card__body,\n &-table__body > .t-card__body {\n padding: 0 !important;\n }\n }\n }\n }\n</style>\n"],"names":["modelValue","visible","searchData","data","columnControllerVisible","displayColumns","expandedRowKeys","filterValue","sort","expandedTreeNodes","_createVNode","_unref","_mergeProps","_createSlots","$slots","_withCtx","_renderSlot"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.vue2.mjs","sources":["../../../../src/components/service/dialog-table-select/index.vue"],"sourcesContent":["<template>\n <t-select\n :class=\"['qd-dialog-table-select', reProps.readonly ? 'qd-dialog-table-select--readonly' : '']\"\n v-model=\"modelValue\"\n :options=\"selectedRows\"\n readonly\n v-bind=\"reProps.selectOptions\"\n @click=\"openDialog\"\n @clear=\"handleClear\"\n >\n <template #suffixIcon>\n <search-icon />\n </template>\n </t-select>\n\n <qd-dialog\n ref=\"dialog\"\n v-model:visible=\"visible\"\n lazy\n destroy-on-close\n v-bind=\"reProps.dialogOptions\"\n @confirm=\"handleConfirm\"\n >\n <qd-crud-table\n ref=\"tableRef\"\n class=\"qd-dialog-table-select__table\"\n v-model:search-data=\"searchData\"\n v-model:data=\"data\"\n v-model:selected-row-keys=\"selectedRowKeys\"\n v-model:column-controller-visible=\"columnControllerVisible\"\n v-model:display-columns=\"displayColumns\"\n v-model:expanded-rowKeys=\"expandedRowKeys\"\n v-model:filter-value=\"filterValue\"\n v-model:sort=\"sort\"\n v-model:expanded-tree-nodes=\"expandedTreeNodes\"\n v-bind=\"reProps.tableOptions\"\n @select-change=\"handleSelectChange\"\n >\n <template\n v-for=\"item in extractSlotsWithPrefix($slots, 'table')\"\n #[item.filterName]=\"slotProps\"\n >\n <slot :name=\"item.originalName\" v-bind=\"slotProps\" />\n </template>\n </qd-crud-table>\n </qd-dialog>\n</template>\n\n<script\n setup\n lang=\"ts\"\n generic=\"\n D extends TableRowData = TableRowData,\n R = unknown,\n P = ServicePageParams,\n TP = P,\n Pag extends ServicePagination = ServicePagination\n \"\n>\n import type { SelectOption, SelectOptions, SelectValue, TableRowData } from 'tdesign-vue-next'\n import type { ServicePageParams, ServicePagination } from 'qidian-shared'\n import type {\n QdDialogTableSelectInstanceFunctions,\n QdServiceDialogTableSelectProps\n } from './types'\n import type { QdDialogInstanceFunctions } from '../../dialog'\n import type { QdCrudTableProps } from '../../crud'\n import { extractSlotsWithPrefix } from 'qidian-shared'\n import { Select as TSelect } from 'tdesign-vue-next'\n import { SearchIcon } from 'tdesign-icons-vue-next'\n import { qdDialogTableSelectSearchGrid, qdServiceDialogTableSelectProps } from './props'\n import { computed, onMounted, ref, useTemplateRef } from 'vue'\n import { useVModels } from '@vueuse/core'\n import { QdDialog } from '../../dialog'\n import { QdCrudTable } from '../../crud'\n import { qdServiceSelectKeys } from '../select/props'\n import { useDisabled, useReadonly } from '../../../hooks'\n import { merge } from 'lodash-es'\n\n defineOptions({\n name: 'QdServiceDialogTableSelect'\n })\n\n type Props = QdServiceDialogTableSelectProps<D, R, P, TP, Pag>\n\n const props = withDefaults(defineProps<Props>(), qdServiceDialogTableSelectProps)\n const emit = defineEmits<{\n 'update:modelValue': [Props['modelValue']]\n 'update:visible': [Props['visible']]\n\n 'update:searchData': [Props['searchData']]\n 'update:data': [Props['data']]\n 'update:columnControllerVisible': [Props['columnControllerVisible']]\n 'update:displayColumns': [Props['displayColumns']]\n 'update:expandedRowKeys': [Props['expandedRowKeys']]\n 'update:filterValue': [Props['filterValue']]\n 'update:sort': [Props['sort']]\n 'update:expandedTreeNodes': [Props['expandedTreeNodes']]\n }>()\n const {\n modelValue,\n visible,\n searchData,\n data,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes\n } = useVModels<typeof props, keyof typeof emit>(props, emit, {\n passive: true\n })\n\n const tdReadonly = useReadonly()\n const tdDisabled = useDisabled()\n const dialogRef = useTemplateRef<QdDialogInstanceFunctions>('dialog')\n\n const selectedRowKeys = ref<(string | number)[]>([])\n const selectedRows = ref<D[]>([])\n let latestSelectedRows: D[] = []\n\n const reProps = computed(() => {\n const {\n modelValue,\n visible,\n searchData,\n data,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes,\n wrapper,\n readonly,\n\n multiple,\n disabled,\n keys,\n valueType,\n clearable,\n placeholder,\n size,\n\n onClear,\n onChange,\n\n search,\n tableSize,\n ...tableOptions\n } = props\n\n return {\n readonly: readonly ?? tdReadonly.value,\n selectOptions: {\n multiple,\n disabled: disabled ?? tdDisabled.value,\n keys,\n valueType,\n clearable,\n placeholder,\n size\n },\n dialogOptions: wrapper,\n tableOptions: {\n ...tableOptions,\n size: tableSize,\n search: {\n ...search,\n grid: merge({}, qdDialogTableSelectSearchGrid, search?.grid)\n },\n selectType: (multiple ? 'multiple' : 'single') as QdCrudTableProps['selectType'],\n rowKey: keys?.value || qdServiceSelectKeys.value\n },\n\n onClear,\n onChange,\n\n models: {\n modelValue,\n visible,\n searchData,\n data,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes,\n wrapper\n }\n }\n })\n\n function handleSelectChange(rowKeys: (string | number)[], options: SelectOptions<D>) {\n latestSelectedRows = options.selectedRowData\n }\n\n function handleConfirm() {\n selectedRows.value = latestSelectedRows\n dialogRef.value?.hide()\n\n /**\n * FIXME qd-dialog 一定要配置 destroy-on-close 并且在 modelValue 赋值前要销毁\n * 否则就会报错\n */\n const { selectOptions } = reProps.value\n const valueKey = selectOptions.keys?.value || qdServiceSelectKeys.value\n const labelKey = selectOptions.keys?.label || qdServiceSelectKeys.label\n if (selectOptions.valueType === 'value') {\n modelValue.value = selectOptions.multiple\n ? latestSelectedRows.map((item) => item[valueKey])\n : latestSelectedRows[0]?.[valueKey]\n } else {\n const rows = selectedRows.value.map((item) => ({\n [valueKey]: item[valueKey],\n [labelKey]: item[labelKey]\n }))\n modelValue.value = selectOptions.multiple ? rows : rows[0]\n }\n\n reProps.value.onChange?.(modelValue.value, {\n option: latestSelectedRows[latestSelectedRows.length - 1],\n selectedOptions: latestSelectedRows,\n trigger: 'check'\n })\n }\n\n function openDialog() {\n if (reProps.value.readonly || reProps.value.selectOptions.disabled) return\n\n dialogRef.value?.show()\n }\n\n function handleClear(context: { e: MouseEvent }) {\n reProps.value.onChange?.(undefined as unknown as SelectValue, {\n e: context.e,\n option: null as unknown as SelectOption,\n selectedOptions: [],\n trigger: 'clear'\n })\n reProps.value.onClear?.(context)\n }\n\n const expose = {} as QdDialogTableSelectInstanceFunctions\n\n onMounted(() => {\n Object.assign(expose, dialogRef.value)\n })\n</script>\n\n<style lang=\"less\" scoped>\n .qd-dialog-table-select {\n &:not(&--readonly) {\n cursor: pointer;\n }\n\n &__table {\n :deep(.qd-crud) {\n &-search > .t-card__body,\n &-table__body > .t-card__body {\n padding: 0 !important;\n }\n }\n }\n }\n</style>\n"],"names":["modelValue","visible","searchData","data","columnControllerVisible","displayColumns","expandedRowKeys","filterValue","sort","expandedTreeNodes","_createVNode","_unref","_mergeProps","_createSlots","$slots","_withCtx","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqFE,UAAM,QAAQ;AACd,UAAM,OAAO;AAab,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,IACE,WAA4C,OAAO,MAAM;AAAA,MAC3D,SAAS;AAAA,IAAA,CACV;AAED,UAAM,aAAa,YAAA;AACnB,UAAM,aAAa,YAAA;AACnB,UAAM,YAAY,eAA0C,QAAQ;AAEpE,UAAM,kBAAkB,IAAyB,EAAE;AACnD,UAAM,eAAe,IAAS,EAAE;AAChC,QAAI,qBAA0B,CAAA;AAE9B,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM;AAAA,QACJ,YAAAA;AAAAA,QACA,SAAAC;AAAAA,QACA,YAAAC;AAAAA,QACA,MAAAC;AAAAA,QACA,yBAAAC;AAAAA,QACA,gBAAAC;AAAAA,QACA,iBAAAC;AAAAA,QACA,aAAAC;AAAAA,QACA,MAAAC;AAAAA,QACA,mBAAAC;AAAAA,QACA;AAAA,QACA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QAEA;AAAA,QACA;AAAA,QAEA;AAAA,QACA;AAAA,QACA,GAAG;AAAA,MAAA,IACD;AAEJ,aAAO;AAAA,QACL,UAAU,YAAY,WAAW;AAAA,QACjC,eAAe;AAAA,UACb;AAAA,UACA,UAAU,YAAY,WAAW;AAAA,UACjC;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QAAA;AAAA,QAEF,eAAe;AAAA,QACf,cAAc;AAAA,UACZ,GAAG;AAAA,UACH,MAAM;AAAA,UACN,QAAQ;AAAA,YACN,GAAG;AAAA,YACH,MAAM,MAAM,CAAA,GAAI,+BAA+B,QAAQ,IAAI;AAAA,UAAA;AAAA,UAE7D,YAAa,WAAW,aAAa;AAAA,UACrC,QAAQ,MAAM,SAAS,oBAAoB;AAAA,QAAA;AAAA,QAG7C;AAAA,QACA;AAAA,QAEA,QAAQ;AAAA,UACN,YAAAT;AAAAA,UACA,SAAAC;AAAAA,UACA,YAAAC;AAAAA,UACA,MAAAC;AAAAA,UACA,yBAAAC;AAAAA,UACA,gBAAAC;AAAAA,UACA,iBAAAC;AAAAA,UACA,aAAAC;AAAAA,UACA,MAAAC;AAAAA,UACA,mBAAAC;AAAAA,UACA;AAAA,QAAA;AAAA,MACF;AAAA,IAEJ,CAAC;AAED,aAAS,mBAAmB,SAA8B,SAA2B;AACnF,2BAAqB,QAAQ;AAAA,IAC/B;AAEA,aAAS,gBAAgB;AACvB,mBAAa,QAAQ;AACrB,gBAAU,OAAO,KAAA;AAMjB,YAAM,EAAE,kBAAkB,QAAQ;AAClC,YAAM,WAAW,cAAc,MAAM,SAAS,oBAAoB;AAClE,YAAM,WAAW,cAAc,MAAM,SAAS,oBAAoB;AAClE,UAAI,cAAc,cAAc,SAAS;AACvC,mBAAW,QAAQ,cAAc,WAC7B,mBAAmB,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,IAC/C,mBAAmB,CAAC,IAAI,QAAQ;AAAA,MACtC,OAAO;AACL,cAAM,OAAO,aAAa,MAAM,IAAI,CAAC,UAAU;AAAA,UAC7C,CAAC,QAAQ,GAAG,KAAK,QAAQ;AAAA,UACzB,CAAC,QAAQ,GAAG,KAAK,QAAQ;AAAA,QAAA,EACzB;AACF,mBAAW,QAAQ,cAAc,WAAW,OAAO,KAAK,CAAC;AAAA,MAC3D;AAEA,cAAQ,MAAM,WAAW,WAAW,OAAO;AAAA,QACzC,QAAQ,mBAAmB,mBAAmB,SAAS,CAAC;AAAA,QACxD,iBAAiB;AAAA,QACjB,SAAS;AAAA,MAAA,CACV;AAAA,IACH;AAEA,aAAS,aAAa;AACpB,UAAI,QAAQ,MAAM,YAAY,QAAQ,MAAM,cAAc,SAAU;AAEpE,gBAAU,OAAO,KAAA;AAAA,IACnB;AAEA,aAAS,YAAY,SAA4B;AAC/C,cAAQ,MAAM,WAAW,QAAqC;AAAA,QAC5D,GAAG,QAAQ;AAAA,QACX,QAAQ;AAAA,QACR,iBAAiB,CAAA;AAAA,QACjB,SAAS;AAAA,MAAA,CACV;AACD,cAAQ,MAAM,UAAU,OAAO;AAAA,IACjC;AAEA,UAAM,SAAS,CAAA;AAEf,cAAU,MAAM;AACd,aAAO,OAAO,QAAQ,UAAU,KAAK;AAAA,IACvC,CAAC;;;QAxPDC,YAYWC,eAZXC,WAYW;AAAA,UAXR,OAAK,CAAA,0BAA6B,QAAA,MAAQ,WAAQ,qCAAA,EAAA;AAAA,sBAC1CD,MAAA,UAAA;AAAA,2FAAA,WAAU,QAAA,SAAA;AAAA,UAClB,SAAS,aAAA;AAAA,UACV,UAAA;AAAA,QAAA,GACQ,QAAA,MAAQ,eAAa;AAAA,UAC5B,SAAO;AAAA,UACP,SAAO;AAAA,QAAA;UAEG,oBACT,MAAe;AAAA,YAAfD,YAAeC,MAAA,UAAA,CAAA;AAAA,UAAA;;;QAInBD,YA8BYC,oBA9BZC,WA8BY;AAAA,UA7BV,KAAI;AAAA,UACI,SAASD,MAAA,OAAA;AAAA,uFAAA,QAAO,QAAA,SAAA;AAAA,UACxB,MAAA;AAAA,UACA,oBAAA;AAAA,QAAA,GACQ,QAAA,MAAQ,eAAa,EAC5B,WAAS,cAAA,CAAa,GAAA;AAAA,2BAEvB,MAqBgB;AAAA,YArBhBD,YAqBgBC,oBArBhBC,WAqBgB;AAAA,cApBd,KAAI;AAAA,cACJ,OAAM;AAAA,cACE,eAAaD,MAAA,UAAA;AAAA,+FAAA,WAAU,QAAA,SAAA;AAAA,cACvB,MAAMA,MAAA,IAAA;AAAA,mFAAA,KAAI,QAAA,SAAA;AAAA,cACV,qBAAmB,gBAAA;AAAA,gFAAA,gBAAe,QAAA;AAAA,cAClC,6BAA2BA,MAAA,uBAAA;AAAA,yHAAA,wBAAuB,QAAA,SAAA;AAAA,cAClD,mBAAiBA,MAAA,cAAA;AAAA,uGAAA,eAAc,QAAA,SAAA;AAAA,cAC/B,oBAAkBA,MAAA,eAAA;AAAA,yGAAA,gBAAe,QAAA,SAAA;AAAA,cACjC,gBAAcA,MAAA,WAAA;AAAA,iGAAA,YAAW,QAAA,SAAA;AAAA,cACzB,MAAMA,MAAA,IAAA;AAAA,mFAAA,KAAI,QAAA,SAAA;AAAA,cACV,uBAAqBA,MAAA,iBAAA;AAAA,6GAAA,kBAAiB,QAAA,SAAA;AAAA,YAAA,GACtC,QAAA,MAAQ,cAAY,EAC3B,gBAAe,mBAAA,CAAkB,GAAAE,YAAA,EAAA,GAAA,KAAA;AAAA,yBAGjBF,MAAA,sBAAA,EAAuBG,KAAAA,QAAM,OAAA,GAAA,CAArC,SAAI;;kBACV,MAAA,KAAK;AAAA,kBAEN,IAAAC,QAAA,CAFoB,cAAS;AAAA,oBAE7BC,WAAqD,KAAA,QAAxC,KAAK,gDAAsB,SAAS,CAAA,GAAA,QAAA,IAAA;AAAA,kBAAA;;;;;;;;;;;"}
|
|
@@ -13,6 +13,7 @@ export declare const qdServiceDialogTableSelectProps: {
|
|
|
13
13
|
readonly multiple: false;
|
|
14
14
|
readonly readonly: undefined;
|
|
15
15
|
readonly disabled: undefined;
|
|
16
|
+
readonly clearable: false;
|
|
16
17
|
readonly valueType: "value";
|
|
17
18
|
readonly wrapper: () => {
|
|
18
19
|
width: "min(960px, 100%)";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"props.mjs","sources":["../../../../src/components/service/dialog-table-select/props.ts"],"sourcesContent":["import { qdDialogProps } from '../../dialog/props'\nimport { qdServiceTableProps } from '../table/props'\n\nconst { selectedRowKeys, activeRowKeys, rowKey, ...qdServiceTableOtherProps } = qdServiceTableProps\nconst { lazy, destroyOnClose, ...qdDialogOtherProps } = qdDialogProps\n\nexport const qdDialogTableSelectSearchGrid = {\n col: {\n xs: 4,\n sm: 4,\n md: 3,\n lg: 3,\n xl: 3,\n xxl: 2\n }\n}\n\nexport const qdServiceDialogTableSelectProps = {\n ...qdServiceTableOtherProps,\n\n searchData: () => ({}),\n\n multiple: false,\n readonly: undefined,\n disabled: undefined,\n valueType: 'value',\n\n wrapper: () => qdDialogOtherProps\n} as const\n"],"names":[],"mappings":";;AAGA,MAAM,EAAE,iBAAiB,eAAe,QAAQ,GAAG,6BAA6B;AAChF,MAAM,EAAE,MAAM,gBAAgB,GAAG,uBAAuB;AAEjD,MAAM,gCAAgC;AAAA,EAC3C,KAAK;AAAA,IACH,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,KAAK;AAAA,EAAA;AAET;AAEO,MAAM,kCAAkC;AAAA,EAC7C,GAAG;AAAA,EAEH,YAAY,OAAO,CAAA;AAAA,EAEnB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AAAA,EACV,WAAW;AAAA,EAEX,SAAS,MAAM;AACjB;"}
|
|
1
|
+
{"version":3,"file":"props.mjs","sources":["../../../../src/components/service/dialog-table-select/props.ts"],"sourcesContent":["import { qdDialogProps } from '../../dialog/props'\nimport { qdServiceTableProps } from '../table/props'\n\nconst { selectedRowKeys, activeRowKeys, rowKey, ...qdServiceTableOtherProps } = qdServiceTableProps\nconst { lazy, destroyOnClose, ...qdDialogOtherProps } = qdDialogProps\n\nexport const qdDialogTableSelectSearchGrid = {\n col: {\n xs: 4,\n sm: 4,\n md: 3,\n lg: 3,\n xl: 3,\n xxl: 2\n }\n}\n\nexport const qdServiceDialogTableSelectProps = {\n ...qdServiceTableOtherProps,\n\n searchData: () => ({}),\n\n multiple: false,\n readonly: undefined,\n disabled: undefined,\n clearable: false,\n valueType: 'value',\n\n wrapper: () => qdDialogOtherProps\n} as const\n"],"names":[],"mappings":";;AAGA,MAAM,EAAE,iBAAiB,eAAe,QAAQ,GAAG,6BAA6B;AAChF,MAAM,EAAE,MAAM,gBAAgB,GAAG,uBAAuB;AAEjD,MAAM,gCAAgC;AAAA,EAC3C,KAAK;AAAA,IACH,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,KAAK;AAAA,EAAA;AAET;AAEO,MAAM,kCAAkC;AAAA,EAC7C,GAAG;AAAA,EAEH,YAAY,OAAO,CAAA;AAAA,EAEnB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EAEX,SAAS,MAAM;AACjB;"}
|
|
@@ -3,7 +3,7 @@ import type { TableRowData } from 'tdesign-vue-next';
|
|
|
3
3
|
import type { QdCrudTableProps } from '../../crud';
|
|
4
4
|
import type { QdDialogInstanceFunctions, QdDialogProps } from '../../dialog';
|
|
5
5
|
import type { QdServiceSelectProps } from '../select';
|
|
6
|
-
export interface QdServiceDialogTableSelectProps<D extends TableRowData = TableRowData, R = unknown, P = ServicePageParams, TP = P, Pag extends ServicePagination = ServicePagination> extends Omit<QdCrudTableProps<D, R, P, TP, Pag>, 'add' | 'actions' | 'edit' | 'view' | 'del' | 'rowActions' | 'form' | 'selectedRowKeys' | 'activeRowKeys' | 'rowKey' | 'selectType' | 'size' | 'onAsyncLoadingClick' | 'onCellClick' | 'onChange' | 'onColumnChange' | 'onColumnControllerVisibleChange' | 'onDataChange' | 'onDisplayColumnsChange' | 'onDragSort' | 'onExpandChange' | 'onFilterChange' | 'onRowEdit' | 'onRowValidate' | 'onSelectChange' | 'onSortChange' | 'onValidate'>, Pick<QdDialogProps, 'visible'>, Pick<QdServiceSelectProps, 'modelValue' | 'multiple' | 'readonly' | 'disabled' | 'keys' | 'size' | 'valueType' | 'onClear' | 'onChange'> {
|
|
6
|
+
export interface QdServiceDialogTableSelectProps<D extends TableRowData = TableRowData, R = unknown, P = ServicePageParams, TP = P, Pag extends ServicePagination = ServicePagination> extends Omit<QdCrudTableProps<D, R, P, TP, Pag>, 'add' | 'actions' | 'edit' | 'view' | 'del' | 'rowActions' | 'form' | 'selectedRowKeys' | 'activeRowKeys' | 'rowKey' | 'selectType' | 'size' | 'onAsyncLoadingClick' | 'onCellClick' | 'onChange' | 'onColumnChange' | 'onColumnControllerVisibleChange' | 'onDataChange' | 'onDisplayColumnsChange' | 'onDragSort' | 'onExpandChange' | 'onFilterChange' | 'onRowEdit' | 'onRowValidate' | 'onSelectChange' | 'onSortChange' | 'onValidate'>, Pick<QdDialogProps, 'visible'>, Pick<QdServiceSelectProps, 'modelValue' | 'multiple' | 'readonly' | 'disabled' | 'placeholder' | 'clearable' | 'keys' | 'size' | 'valueType' | 'onClear' | 'onChange'> {
|
|
7
7
|
tableSize?: QdCrudTableProps['size'];
|
|
8
8
|
wrapper?: Omit<QdDialogProps, 'visible' | 'lazy' | 'destroyOnClose' | 'onBeforeClose' | 'onBeforeOpen' | 'onCancel' | 'onClose' | 'onCloseBtnClick' | 'onClosed' | 'onConfirm' | 'onEscKeydown' | 'onOpened' | 'onOverlayClick'>;
|
|
9
9
|
}
|
package/dist/qidian-vue-ui.css
CHANGED
|
@@ -163,10 +163,10 @@ p {
|
|
|
163
163
|
.qd-grid-item[data-v-f8a13f89] {
|
|
164
164
|
min-width: 0;
|
|
165
165
|
}
|
|
166
|
-
.qd-form-item[data-v-
|
|
166
|
+
.qd-form-item[data-v-3b3090b0] > .t-form__item > .t-form__controls > .t-form__controls-content > * {
|
|
167
167
|
width: 100%;
|
|
168
168
|
}
|
|
169
|
-
.qd-form-item__component[data-v-
|
|
169
|
+
.qd-form-item__component[data-v-3b3090b0] {
|
|
170
170
|
width: 100%;
|
|
171
171
|
}
|
|
172
172
|
.qd-form--descriptions[data-v-a511737b] .qd-grid {
|
|
@@ -297,11 +297,11 @@ p {
|
|
|
297
297
|
display: inline-block;
|
|
298
298
|
padding-left: var(--td-comp-paddingLR-s);
|
|
299
299
|
}
|
|
300
|
-
.qd-dialog-table-select[data-v-
|
|
300
|
+
.qd-dialog-table-select[data-v-adb47397]:not(.qd-dialog-table-select--readonly) {
|
|
301
301
|
cursor: pointer;
|
|
302
302
|
}
|
|
303
|
-
.qd-dialog-table-select__table[data-v-
|
|
304
|
-
.qd-dialog-table-select__table[data-v-
|
|
303
|
+
.qd-dialog-table-select__table[data-v-adb47397] .qd-crud-search > .t-card__body,
|
|
304
|
+
.qd-dialog-table-select__table[data-v-adb47397] .qd-crud-table__body > .t-card__body {
|
|
305
305
|
padding: 0 !important;
|
|
306
306
|
}
|
|
307
307
|
.qd-service-list[data-v-fe54dd3b] {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "qidian-vue-ui",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.38",
|
|
4
4
|
"description": "基于 TDesign 的 QiDian Vue UI 组件库",
|
|
5
5
|
"author": "qidian",
|
|
6
6
|
"license": "MIT",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"vue": ">=3.1.0",
|
|
43
43
|
"tdesign-vue-next": "^1.16.1",
|
|
44
44
|
"tdesign-icons-vue-next": "^0.3.7",
|
|
45
|
-
"qidian-shared": "1.0.
|
|
45
|
+
"qidian-shared": "1.0.41"
|
|
46
46
|
},
|
|
47
47
|
"scripts": {
|
|
48
48
|
"build": "vue-tsc --noEmit && vite build && vue-tsc",
|