qidian-vue-ui 1.1.41 → 1.1.43
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/crud/search/index.vue.mjs +1 -1
- package/dist/components/crud/search/index.vue2.mjs +4 -4
- package/dist/components/crud/search/index.vue2.mjs.map +1 -1
- package/dist/components/dialog/index.vue.mjs +1 -1
- package/dist/components/dialog/index.vue.mjs.map +1 -1
- package/dist/components/service-dialog-table-select/index.vue.d.ts +28 -0
- package/dist/components/service-dialog-table-select/index.vue.mjs +1 -1
- package/dist/components/service-dialog-table-select/index.vue2.mjs +360 -211
- package/dist/components/service-dialog-table-select/index.vue2.mjs.map +1 -1
- package/dist/components/service-dialog-table-select/types.d.ts +5 -1
- package/dist/components/service-popup-table-select/index.vue.d.ts +28 -0
- package/dist/components/service-popup-table-select/index.vue.mjs +1 -1
- package/dist/components/service-popup-table-select/index.vue2.mjs +350 -192
- package/dist/components/service-popup-table-select/index.vue2.mjs.map +1 -1
- package/dist/components/service-popup-table-select/types.d.ts +5 -1
- package/dist/qidian-vue-ui.css +20 -20
- package/package.json +1 -1
|
@@ -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=\"[\n 'qd-dialog-table-select',\n reProps.selectOptions.readonly ? 'qd-dialog-table-select--readonly' : '',\n reProps.selectOptions.disabled ? 'qd-dialog-table-select--disabled' : ''\n ]\"\n v-model=\"modelValue\"\n :options=\"selectedRows\"\n :popup-visible=\"false\"\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 v-bind=\"reProps.dialogOptions\"\n @confirm=\"handleConfirm\"\n @before-open=\"handleBeforeOpen\"\n @closed=\"handleClosed\"\n >\n <qd-crud-table\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:active-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 reserve-selected-row-on-paginate\n active-row-type=\"multiple\"\n v-bind=\"reProps.tableOptions\"\n @select-change=\"handleSelectChange\"\n >\n <template v-if=\"reProps.creatable\" #table-bottom-content>\n <div v-if=\"addCustom.visible\" class=\"qd-dialog-table-select__table-add\">\n <t-input v-model=\"addCustom.value\" clearable />\n <t-space size=\"small\">\n <t-button :disabled=\"addConfirmDisabled\" @click=\"confirmAddCustom\">\n {{ t('addConfirmText') }}\n </t-button>\n <t-button variant=\"outline\" @click=\"cancelAddCustom\">{{ t('addCancelText') }}</t-button>\n </t-space>\n </div>\n\n <t-button\n v-else\n class=\"qd-dialog-table-select__table-add\"\n block\n theme=\"primary\"\n variant=\"dashed\"\n @click=\"addCustom.visible = true\"\n >\n <template #icon><add-icon /></template>\n {{ t('addText') }}\n </t-button>\n </template>\n\n <template\n v-for=\"item in extractSlotsWithPrefix($slots, 'search')\"\n #[item.filterName]=\"slotProps\"\n >\n <slot :name=\"item.originalName\" v-bind=\"slotProps\" />\n </template>\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 { 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, identifyType, isEmpty } from 'qidian-shared'\n import {\n Select as TSelect,\n Button as TButton,\n Input as TInput,\n Space as TSpace\n } from 'tdesign-vue-next'\n import type { WatchHandle } from 'vue'\n import { AddIcon, SearchIcon } from 'tdesign-icons-vue-next'\n import { qdDialogTableSelectSearchGrid, qdServiceDialogTableSelectProps } from './props'\n import { computed, onMounted, reactive, ref, useTemplateRef, watch } from 'vue'\n import { useVModels } from '@vueuse/core'\n import { QdDialog } from '../dialog'\n import { QdCrudTable } from '../crud'\n import { qdServiceSelectKeys } from '../service-select/props'\n import { useDisabled, useReadonly } from '../../hooks'\n import { get, merge } from 'lodash-es'\n import { useConfig } from '../config-provider/useConfig'\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 { t } = useConfig('dialogTableSelect')\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 addCustom = reactive({\n visible: false,\n value: ''\n })\n const addConfirmDisabled = computed(() => isEmpty(addCustom.value))\n\n const reProps = computed(() => {\n const {\n modelValue,\n visible,\n fillOptions,\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 creatable,\n placeholder,\n size,\n\n onClear,\n onCreate,\n onChange,\n\n search,\n tableSize,\n ...tableOptions\n } = props\n\n return {\n creatable,\n fillOptions,\n selectOptions: {\n multiple,\n readonly: readonly ?? tdReadonly.value,\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 onCreate,\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 }\n }\n })\n\n let fillOptionsWatchStop: WatchHandle | undefined // 处理 fillOptions 合并逻辑\n\n function handleSelectChange(rowKeys: (string | number)[], options: SelectOptions<D>) {\n latestSelectedRows = options.selectedRowData\n }\n\n function handleConfirm() {\n selectedRows.value = latestSelectedRows\n visible.value = false\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) => get(item, valueKey))\n : get(latestSelectedRows[0], valueKey)\n } else {\n const rows = selectedRows.value.map((item) => ({\n [valueKey]: get(item, valueKey),\n [labelKey]: get(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 const { selectOptions } = reProps.value\n if (selectOptions.readonly || selectOptions.disabled) return\n\n const valueKey = selectOptions.keys?.value || qdServiceSelectKeys.value\n if (identifyType(modelValue.value) === 'array') {\n selectedRowKeys.value = modelValue.value.map((item: (typeof modelValue.value)[number]) => {\n if (identifyType(item) === 'object') {\n return get(item, valueKey)\n }\n\n return item\n })\n } else if (identifyType(modelValue.value) === 'object') {\n selectedRowKeys.value = [get(modelValue.value, valueKey)]\n } else {\n selectedRowKeys.value = isEmpty(modelValue.value) ? [] : [modelValue.value]\n }\n visible.value = true\n }\n\n function handleClear(context: { e: MouseEvent }) {\n selectedRowKeys.value = []\n\n reProps.value.onChange?.(undefined as unknown as SelectValue, {\n e: context.e,\n option: null as unknown as D,\n selectedOptions: [],\n trigger: 'clear'\n })\n reProps.value.onClear?.(context)\n }\n\n function confirmAddCustom(e: MouseEvent) {\n reProps.value.onCreate?.(addCustom.value, (closed: boolean) => {\n visible.value = closed ?? false\n })\n reProps.value.onChange?.(undefined as unknown as SelectValue, {\n e,\n option: null as unknown as D,\n selectedOptions: [],\n trigger: 'clear'\n })\n }\n\n function cancelAddCustom() {\n Object.assign(addCustom, {\n visible: false,\n value: ''\n })\n }\n\n function handleBeforeOpen() {\n fillOptionsWatchStop?.()\n }\n\n function handleClosed() {\n if (addCustom.visible) cancelAddCustom()\n\n if (reProps.value.dialogOptions.destroyOnClose) {\n data.value = []\n searchData.value = {}\n selectedRowKeys.value = []\n }\n }\n\n const expose = {} as QdDialogTableSelectInstanceFunctions\n\n fillOptionsWatchStop = watch(\n () => reProps.value.fillOptions,\n (fillOpts) => {\n if (!fillOpts?.length) return\n\n selectedRows.value = fillOpts as D[]\n },\n { immediate: true, deep: true }\n )\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):not(&--disabled) {\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 &-table__toolbar {\n display: none;\n }\n }\n\n :deep(.qd-service-table) {\n margin-top: 0;\n }\n\n &-add {\n margin-top: var(--td-comp-margin-m);\n display: flex;\n\n .t-input__wrap {\n flex: 1 1 0;\n overflow: hidden;\n margin-right: var(--td-comp-margin-m);\n }\n }\n }\n }\n</style>\n"],"names":["modelValue","visible","searchData","data","columnControllerVisible","displayColumns","expandedRowKeys","filterValue","sort","expandedTreeNodes","_createVNode","_unref","_mergeProps","_createSlots","_openBlock","_createElementBlock","TInput","TSpace","TButton","_createBlock","_createTextVNode","$slots","_withCtx","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiIE,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,EAAE,EAAA,IAAM,UAAU,mBAAmB;AAC3C,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,YAAY,SAAS;AAAA,MACzB,SAAS;AAAA,MACT,OAAO;AAAA,IAAA,CACR;AACD,UAAM,qBAAqB,SAAS,MAAM,QAAQ,UAAU,KAAK,CAAC;AAElE,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM;AAAA,QACJ,YAAAA;AAAAA,QACA,SAAAC;AAAAA,QACA;AAAA,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,QACA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA,QAEA;AAAA,QACA;AAAA,QACA,GAAG;AAAA,MAAA,IACD;AAEJ,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA,eAAe;AAAA,UACb;AAAA,UACA,UAAU,YAAY,WAAW;AAAA,UACjC,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,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,QAAA;AAAA,MACF;AAAA,IAEJ,CAAC;AAED,QAAI;AAEJ,aAAS,mBAAmB,SAA8B,SAA2B;AACnF,2BAAqB,QAAQ;AAAA,IAC/B;AAEA,aAAS,gBAAgB;AACvB,mBAAa,QAAQ;AACrB,cAAQ,QAAQ;AAMhB,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,IAAI,MAAM,QAAQ,CAAC,IACpD,IAAI,mBAAmB,CAAC,GAAG,QAAQ;AAAA,MACzC,OAAO;AACL,cAAM,OAAO,aAAa,MAAM,IAAI,CAAC,UAAU;AAAA,UAC7C,CAAC,QAAQ,GAAG,IAAI,MAAM,QAAQ;AAAA,UAC9B,CAAC,QAAQ,GAAG,IAAI,MAAM,QAAQ;AAAA,QAAA,EAC9B;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,YAAM,EAAE,kBAAkB,QAAQ;AAClC,UAAI,cAAc,YAAY,cAAc,SAAU;AAEtD,YAAM,WAAW,cAAc,MAAM,SAAS,oBAAoB;AAClE,UAAI,aAAa,WAAW,KAAK,MAAM,SAAS;AAC9C,wBAAgB,QAAQ,WAAW,MAAM,IAAI,CAAC,SAA4C;AACxF,cAAI,aAAa,IAAI,MAAM,UAAU;AACnC,mBAAO,IAAI,MAAM,QAAQ;AAAA,UAC3B;AAEA,iBAAO;AAAA,QACT,CAAC;AAAA,MACH,WAAW,aAAa,WAAW,KAAK,MAAM,UAAU;AACtD,wBAAgB,QAAQ,CAAC,IAAI,WAAW,OAAO,QAAQ,CAAC;AAAA,MAC1D,OAAO;AACL,wBAAgB,QAAQ,QAAQ,WAAW,KAAK,IAAI,CAAA,IAAK,CAAC,WAAW,KAAK;AAAA,MAC5E;AACA,cAAQ,QAAQ;AAAA,IAClB;AAEA,aAAS,YAAY,SAA4B;AAC/C,sBAAgB,QAAQ,CAAA;AAExB,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,aAAS,iBAAiB,GAAe;AACvC,cAAQ,MAAM,WAAW,UAAU,OAAO,CAAC,WAAoB;AAC7D,gBAAQ,QAAQ,UAAU;AAAA,MAC5B,CAAC;AACD,cAAQ,MAAM,WAAW,QAAqC;AAAA,QAC5D;AAAA,QACA,QAAQ;AAAA,QACR,iBAAiB,CAAA;AAAA,QACjB,SAAS;AAAA,MAAA,CACV;AAAA,IACH;AAEA,aAAS,kBAAkB;AACzB,aAAO,OAAO,WAAW;AAAA,QACvB,SAAS;AAAA,QACT,OAAO;AAAA,MAAA,CACR;AAAA,IACH;AAEA,aAAS,mBAAmB;AAC1B,6BAAA;AAAA,IACF;AAEA,aAAS,eAAe;AACtB,UAAI,UAAU,QAAS,iBAAA;AAEvB,UAAI,QAAQ,MAAM,cAAc,gBAAgB;AAC9C,aAAK,QAAQ,CAAA;AACb,mBAAW,QAAQ,CAAA;AACnB,wBAAgB,QAAQ,CAAA;AAAA,MAC1B;AAAA,IACF;AAEA,UAAM,SAAS,CAAA;AAEf,2BAAuB;AAAA,MACrB,MAAM,QAAQ,MAAM;AAAA,MACpB,CAAC,aAAa;AACZ,YAAI,CAAC,UAAU,OAAQ;AAEvB,qBAAa,QAAQ;AAAA,MACvB;AAAA,MACA,EAAE,WAAW,MAAM,MAAM,KAAA;AAAA,IAAK;AAGhC,cAAU,MAAM;AACd,aAAO,OAAO,QAAQ,UAAU,KAAK;AAAA,IACvC,CAAC;;;QA9WDC,YAgBWC,eAhBXC,WAgBW;AAAA,UAfR,OAAK;AAAA;YAA0C,QAAA,MAAQ,cAAc,WAAQ,qCAAA;AAAA,YAAkD,QAAA,MAAQ,cAAc,WAAQ,qCAAA;AAAA,UAAA;AAAA,sBAKrJD,MAAA,UAAA;AAAA,2FAAA,WAAU,QAAA,SAAA;AAAA,UAClB,SAAS,aAAA;AAAA,UACT,iBAAe;AAAA,QAAA,GACR,QAAA,MAAQ,eAAa;AAAA,UAC5B,SAAO;AAAA,UACP,SAAO;AAAA,QAAA;UAEG,oBACT,MAAe;AAAA,YAAfD,YAAeC,MAAA,UAAA,CAAA;AAAA,UAAA;;;QAInBD,YA+DYC,oBA/DZC,WA+DY;AAAA,UA9DV,KAAI;AAAA,UACI,SAASD,MAAA,OAAA;AAAA,uFAAA,QAAO,QAAA,SAAA;AAAA,QAAA,GAChB,QAAA,MAAQ,eAAa;AAAA,UAC5B,WAAS;AAAA,UACT,cAAa;AAAA,UACb,UAAQ;AAAA,QAAA;2BAET,MAsDgB;AAAA,YAtDhBD,YAsDgBC,oBAtDhBC,WAsDgB;AAAA,cArDd,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,mBAAiB,gBAAA;AAAA,8EAAA,gBAAe,QAAA;AAAA,cAChC,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,mGAAA,YAAW,QAAA,SAAA;AAAA,cACzB,MAAMA,MAAA,IAAA;AAAA,qFAAA,KAAI,QAAA,SAAA;AAAA,cACV,uBAAqBA,MAAA,iBAAA;AAAA,+GAAA,kBAAiB,QAAA,SAAA;AAAA,cAC9C,oCAAA;AAAA,cACA,mBAAgB;AAAA,YAAA,GACR,QAAA,MAAQ,cAAY,EAC3B,gBAAe,mBAAA,CAAkB,GAAAE,YAAA,EAAA,GAAA,KAAA;AAAA,cAElB,QAAA,MAAQ;sBAAY;AAAA,4BAClC,MAQM;AAAA,kBARK,UAAU,WAArBC,UAAA,GAAAC,mBAQM,OARN,YAQM;AAAA,oBAPJL,YAA+CC,MAAAK,KAAA,GAAA;AAAA,sBAA7B,YAAA,UAAU;AAAA,sBAAV,uBAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,CAAA,WAAA,UAAU,QAAK;AAAA,sBAAE,WAAA;AAAA,oBAAA;oBACnCN,YAKUC,MAAAM,KAAA,GAAA,EALD,MAAK,WAAO;AAAA,uCACnB,MAEW;AAAA,wBAFXP,YAEWC,MAAAO,MAAA,GAAA;AAAA,0BAFA,UAAU,mBAAA;AAAA,0BAAqB,SAAO;AAAA,wBAAA;2CAC/C,MAAyB;AAAA,4DAAtBP,MAAA,CAAA,EAAC,gBAAA,CAAA,GAAA,CAAA;AAAA,0BAAA;;;wBAEND,YAAwFC,MAAAO,MAAA,GAAA;AAAA,0BAA9E,SAAQ;AAAA,0BAAW,SAAO;AAAA,wBAAA;2CAAiB,MAAwB;AAAA,4DAArBP,MAAA,CAAA,EAAC,eAAA,CAAA,GAAA,CAAA;AAAA,0BAAA;;;;;;sCAI7DQ,YAUWR,MAAAO,MAAA,GAAA;AAAA;oBART,OAAM;AAAA,oBACN,OAAA;AAAA,oBACA,OAAM;AAAA,oBACN,SAAQ;AAAA,oBACP,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,CAAA,WAAE,UAAU,UAAO;AAAA,kBAAA;oBAEd,cAAK,MAAY;AAAA,sBAAZR,YAAYC,MAAA,OAAA,CAAA;AAAA,oBAAA;qCAAW,MACvC;AAAA,sBADuCS,gBAAA,sBACpCT,MAAA,CAAA,EAAC,SAAA,CAAA,GAAA,CAAA;AAAA,oBAAA;;;;;;yBAKSA,MAAA,sBAAA,EAAuBU,KAAAA,QAAM,QAAA,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;;;yBAIlCZ,MAAA,sBAAA,EAAuBU,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;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"index.vue2.mjs","sources":["../../../src/components/service-dialog-table-select/index.vue"],"sourcesContent":["<template>\n <t-select\n :class=\"[\n 'qd-dialog-table-select',\n reProps.selectOptions.readonly ? 'qd-dialog-table-select--readonly' : '',\n reProps.selectOptions.disabled ? 'qd-dialog-table-select--disabled' : ''\n ]\"\n v-model=\"modelValue\"\n :options=\"selectedRows\"\n :popup-visible=\"false\"\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 v-bind=\"reProps.dialogOptions\"\n @confirm=\"handleConfirm\"\n @before-open=\"handleBeforeOpen\"\n @closed=\"handleClosed\"\n >\n <qd-crud-table\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:active-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 reserve-selected-row-on-paginate\n active-row-type=\"multiple\"\n v-bind=\"reProps.tableOptions\"\n @select-change=\"handleSelectChange\"\n >\n <template v-if=\"reProps.creatable\" #table-bottom-content>\n <div v-if=\"addCustom.visible\" class=\"qd-dialog-table-select__table-add\">\n <slot name=\"add-input\" :add-custom=\"addCustom\">\n <t-input v-model=\"addCustom.value\" v-bind=\"reProps.addInputOptions\" />\n </slot>\n\n <t-space size=\"small\">\n <slot name=\"add-confirm-btn\" :add-custom=\"addCustom\">\n <t-button v-bind=\"reProps.addConfirmBtnOptions\" />\n </slot>\n\n <slot name=\"add-cancel-btn\" :add-custom=\"addCustom\">\n <t-button v-bind=\"reProps.addCancelBtnOptions\" />\n </slot>\n </t-space>\n </div>\n\n <slot v-else name=\"add-btn\" :add-custom=\"addCustom\">\n <t-button class=\"qd-dialog-table-select__table-add\" v-bind=\"reProps.addBtnOptions\" />\n </slot>\n </template>\n\n <template\n v-for=\"item in extractSlotsWithPrefix($slots, 'search')\"\n #[item.filterName]=\"slotProps\"\n >\n <slot :name=\"item.originalName\" v-bind=\"slotProps\" />\n </template>\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=\"tsx\"\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 {\n SelectOptions,\n SelectValue,\n TableRowData,\n TdButtonProps,\n TdInputProps\n } 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, identifyType, isEmpty } from 'qidian-shared'\n import {\n Select as TSelect,\n Button as TButton,\n Input as TInput,\n Space as TSpace\n } from 'tdesign-vue-next'\n import type { WatchHandle } from 'vue'\n import { AddIcon, SearchIcon } from 'tdesign-icons-vue-next'\n import { qdDialogTableSelectSearchGrid, qdServiceDialogTableSelectProps } from './props'\n import { computed, onMounted, reactive, ref, useTemplateRef, watch } from 'vue'\n import { useVModels } from '@vueuse/core'\n import { QdDialog } from '../dialog'\n import { QdCrudTable } from '../crud'\n import { qdServiceSelectKeys } from '../service-select/props'\n import { useDisabled, useReadonly } from '../../hooks'\n import { get, merge } from 'lodash-es'\n import { useConfig } from '../config-provider/useConfig'\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 { t } = useConfig('dialogTableSelect')\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 addCustom = reactive({\n visible: false,\n value: ''\n })\n const addConfirmDisabled = computed(() => isEmpty(addCustom.value))\n\n const reProps = computed(() => {\n const {\n modelValue,\n visible,\n fillOptions,\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 creatable,\n placeholder,\n size,\n\n onClear,\n onCreate,\n onChange,\n\n search,\n tableSize,\n\n addBtn,\n addConfirmBtn,\n addCancelBtn,\n addInput,\n\n ...tableOptions\n } = props\n\n const addBtnOptions: TdButtonProps = merge(\n {},\n {\n block: true,\n theme: 'primary',\n variant: 'dashed',\n icon: () => <AddIcon />,\n content: t('addText'),\n onClick: () => {\n addCustom.visible = true\n }\n },\n typeof addBtn === 'string' ? { content: addBtn } : addBtn\n )\n\n const addConfirmBtnOptions: TdButtonProps = merge(\n {},\n {\n content: t('addConfirmText'),\n onClick: confirmAddCustom\n },\n typeof addConfirmBtn === 'string'\n ? { content: addConfirmBtn, disabled: addConfirmDisabled.value }\n : { ...addConfirmBtn, disabled: addConfirmDisabled.value || addConfirmBtn?.disabled }\n )\n\n const addCancelBtnOptions: TdButtonProps = merge(\n {},\n {\n variant: 'outline',\n content: t('addCancelText'),\n onClick: cancelAddCustom\n },\n typeof addCancelBtn === 'string' ? { content: addCancelBtn } : addCancelBtn\n )\n\n const addInputOptions: TdInputProps = merge(\n {},\n { clearable: true },\n typeof addInput === 'string' ? { placeholder: addInput } : addInput\n )\n\n return {\n creatable,\n fillOptions,\n selectOptions: {\n multiple,\n readonly: readonly ?? tdReadonly.value,\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 onCreate,\n onChange,\n\n addBtnOptions,\n addConfirmBtnOptions,\n addCancelBtnOptions,\n addInputOptions,\n\n models: {\n modelValue,\n visible,\n searchData,\n data,\n columnControllerVisible,\n displayColumns,\n expandedRowKeys,\n filterValue,\n sort,\n expandedTreeNodes\n }\n }\n })\n\n let fillOptionsWatchStop: WatchHandle | undefined // 处理 fillOptions 合并逻辑\n\n function handleSelectChange(rowKeys: (string | number)[], options: SelectOptions<D>) {\n latestSelectedRows = options.selectedRowData\n }\n\n function handleConfirm() {\n selectedRows.value = latestSelectedRows\n visible.value = false\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) => get(item, valueKey))\n : get(latestSelectedRows[0], valueKey)\n } else {\n const rows = selectedRows.value.map((item) => ({\n [valueKey]: get(item, valueKey),\n [labelKey]: get(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 const { selectOptions } = reProps.value\n if (selectOptions.readonly || selectOptions.disabled) return\n\n const valueKey = selectOptions.keys?.value || qdServiceSelectKeys.value\n if (identifyType(modelValue.value) === 'array') {\n selectedRowKeys.value = modelValue.value.map((item: (typeof modelValue.value)[number]) => {\n if (identifyType(item) === 'object') {\n return get(item, valueKey)\n }\n\n return item\n })\n } else if (identifyType(modelValue.value) === 'object') {\n selectedRowKeys.value = [get(modelValue.value, valueKey)]\n } else {\n selectedRowKeys.value = isEmpty(modelValue.value) ? [] : [modelValue.value]\n }\n visible.value = true\n }\n\n function handleClear(context: { e: MouseEvent }) {\n selectedRowKeys.value = []\n\n reProps.value.onChange?.(undefined as unknown as SelectValue, {\n e: context.e,\n option: null as unknown as D,\n selectedOptions: [],\n trigger: 'clear'\n })\n reProps.value.onClear?.(context)\n }\n\n function confirmAddCustom(e: MouseEvent) {\n reProps.value.onCreate?.(addCustom.value, (closed: boolean) => {\n visible.value = !closed\n })\n reProps.value.onChange?.(undefined as unknown as SelectValue, {\n e,\n option: null as unknown as D,\n selectedOptions: [],\n trigger: 'clear'\n })\n }\n\n function cancelAddCustom() {\n Object.assign(addCustom, {\n visible: false,\n value: ''\n })\n }\n\n function handleBeforeOpen() {\n fillOptionsWatchStop?.()\n }\n\n function handleClosed() {\n if (addCustom.visible) cancelAddCustom()\n\n if (reProps.value.dialogOptions.destroyOnClose) {\n data.value = []\n searchData.value = {}\n selectedRowKeys.value = []\n }\n }\n\n const expose = {} as QdDialogTableSelectInstanceFunctions\n\n fillOptionsWatchStop = watch(\n () => reProps.value.fillOptions,\n (fillOpts) => {\n if (!fillOpts?.length) return\n\n selectedRows.value = fillOpts as D[]\n },\n { immediate: true, deep: true }\n )\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):not(&--disabled) {\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 &-table__toolbar {\n display: none;\n }\n }\n\n :deep(.qd-service-table) {\n margin-top: 0;\n }\n\n &-add {\n margin-top: var(--td-comp-margin-m);\n display: flex;\n\n .t-input__wrap {\n flex: 1 1 0;\n overflow: hidden;\n margin-right: var(--td-comp-margin-m);\n }\n }\n }\n }\n</style>\n"],"names":["props","__props","emit","__emit","modelValue","visible","searchData","data","columnControllerVisible","displayColumns","expandedRowKeys","filterValue","sort","expandedTreeNodes","useVModels","passive","t","useConfig","tdReadonly","useReadonly","tdDisabled","useDisabled","dialogRef","useTemplateRef","selectedRowKeys","ref","selectedRows","latestSelectedRows","addCustom","reactive","value","addConfirmDisabled","computed","isEmpty","reProps","fillOptions","wrapper","readonly","multiple","disabled","keys","valueType","clearable","creatable","placeholder","size","onClear","onCreate","onChange","search","tableSize","addBtn","addConfirmBtn","addCancelBtn","addInput","tableOptions","addBtnOptions","merge","block","theme","variant","icon","_createVNode2","AddIcon","content","onClick","addConfirmBtnOptions","confirmAddCustom","addCancelBtnOptions","cancelAddCustom","addInputOptions","selectOptions","dialogOptions","grid","qdDialogTableSelectSearchGrid","selectType","rowKey","qdServiceSelectKeys","models","fillOptionsWatchStop","handleSelectChange","rowKeys","options","selectedRowData","handleConfirm","valueKey","labelKey","label","map","item","get","rows","option","length","selectedOptions","trigger","openDialog","identifyType","handleClear","context","undefined","e","closed","Object","assign","handleBeforeOpen","handleClosed","destroyOnClose","expose","watch","fillOpts","immediate","deep","onMounted","_createVNode","_unref","_mergeProps","class","$event","suffixIcon","SearchIcon","onConfirm","onBeforeOpen","onClosed","onSelectChange","_createSlots","_","_openBlock","_createElementBlock","_hoisted_1","_renderSlot","_ctx","$slots","_cache","TSpace","TButton","_normalizeProps","_guardReactiveProps","extractSlotsWithPrefix","name","filterName","fn","_withCtx","slotProps","originalName"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ServicePageParams, ServicePagination } from 'qidian-shared';
|
|
2
|
-
import type { TableRowData } from 'tdesign-vue-next';
|
|
2
|
+
import type { TableRowData, TdButtonProps, TdInputProps } 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 '../service-select';
|
|
@@ -9,5 +9,9 @@ export interface QdServiceDialogTableSelectProps<D extends TableRowData = TableR
|
|
|
9
9
|
tableSize?: QdCrudTableProps['size'];
|
|
10
10
|
visible?: boolean;
|
|
11
11
|
wrapper?: Omit<QdDialogProps, 'visible' | 'onBeforeClose' | 'onBeforeOpen' | 'onCancel' | 'onClose' | 'onCloseBtnClick' | 'onClosed' | 'onConfirm' | 'onEscKeydown' | 'onOpened' | 'onOverlayClick'>;
|
|
12
|
+
addBtn?: string | TdButtonProps | null;
|
|
13
|
+
addConfirmBtn?: string | TdButtonProps | null;
|
|
14
|
+
addCancelBtn?: string | TdButtonProps | null;
|
|
15
|
+
addInput?: string | TdInputProps | null;
|
|
12
16
|
}
|
|
13
17
|
export type QdDialogTableSelectInstanceFunctions = QdDialogInstanceFunctions;
|
|
@@ -20,6 +20,34 @@ declare const _default: <D extends TableRowData = TableRowData, R = unknown, P =
|
|
|
20
20
|
[x: string]: ((props: any) => any) | undefined;
|
|
21
21
|
} & {
|
|
22
22
|
[x: string]: ((props: any) => any) | undefined;
|
|
23
|
+
} & {
|
|
24
|
+
'add-input'?: (props: {
|
|
25
|
+
addCustom: {
|
|
26
|
+
visible: boolean;
|
|
27
|
+
value: string;
|
|
28
|
+
};
|
|
29
|
+
}) => any;
|
|
30
|
+
} & {
|
|
31
|
+
'add-confirm-btn'?: (props: {
|
|
32
|
+
addCustom: {
|
|
33
|
+
visible: boolean;
|
|
34
|
+
value: string;
|
|
35
|
+
};
|
|
36
|
+
}) => any;
|
|
37
|
+
} & {
|
|
38
|
+
'add-cancel-btn'?: (props: {
|
|
39
|
+
addCustom: {
|
|
40
|
+
visible: boolean;
|
|
41
|
+
value: string;
|
|
42
|
+
};
|
|
43
|
+
}) => any;
|
|
44
|
+
} & {
|
|
45
|
+
'add-btn'?: (props: {
|
|
46
|
+
addCustom: {
|
|
47
|
+
visible: boolean;
|
|
48
|
+
value: string;
|
|
49
|
+
};
|
|
50
|
+
}) => any;
|
|
23
51
|
};
|
|
24
52
|
emit: ((evt: "update:modelValue", args_0: SelectValue<import("tdesign-vue-next").SelectOption> | undefined) => void) & ((evt: "update:popupVisible", args_0: boolean | undefined) => void) & ((evt: "update:data", args_0: D[] | undefined) => void) & ((evt: "update:columnControllerVisible", args_0: boolean | undefined) => void) & ((evt: "update:displayColumns", args_0: import("tdesign-vue-next").CheckboxGroupValue | undefined) => void) & ((evt: "update:expandedRowKeys", args_0: (string | number)[] | undefined) => void) & ((evt: "update:filterValue", args_0: import("tdesign-vue-next").FilterValue | undefined) => void) & ((evt: "update:sort", args_0: import("tdesign-vue-next").TableSort | undefined) => void) & ((evt: "update:expandedTreeNodes", args_0: (string | number)[] | undefined) => void) & ((evt: "update:searchData", args_0: import("tdesign-vue-next").Data | undefined) => void);
|
|
25
53
|
}>) => import("vue").VNode & {
|
|
@@ -2,7 +2,7 @@ import _sfc_main from "./index.vue2.mjs";
|
|
|
2
2
|
/* empty css */
|
|
3
3
|
/* empty css */
|
|
4
4
|
import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
|
|
5
|
-
const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
5
|
+
const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-45fe1fd8"]]);
|
|
6
6
|
export {
|
|
7
7
|
index as default
|
|
8
8
|
};
|