m-eleplus-crud 0.0.7 → 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/dist/index.full.js +48 -20
  2. package/dist/index.full.min.js +9 -9
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +8 -8
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +48 -20
  7. package/dist/locale/en.js +1 -1
  8. package/dist/locale/en.min.js +1 -1
  9. package/dist/locale/en.min.mjs +1 -1
  10. package/dist/locale/en.mjs +1 -1
  11. package/dist/locale/zh-cn.js +1 -1
  12. package/dist/locale/zh-cn.min.js +1 -1
  13. package/dist/locale/zh-cn.min.mjs +1 -1
  14. package/dist/locale/zh-cn.mjs +1 -1
  15. package/es/components/crud/src/crud.d.ts +8 -0
  16. package/es/components/form/src/form.d.ts +4 -0
  17. package/es/index.mjs +5 -5
  18. package/es/packages/components/crud/src/crud.mjs.map +1 -1
  19. package/es/packages/components/crud/src/crud2.mjs +17 -4
  20. package/es/packages/components/crud/src/crud2.mjs.map +1 -1
  21. package/es/packages/components/form/index.mjs +2 -2
  22. package/es/packages/components/form/src/form.mjs +640 -25
  23. package/es/packages/components/form/src/form.mjs.map +1 -1
  24. package/es/packages/components/form/src/form2.mjs +25 -633
  25. package/es/packages/components/form/src/form2.mjs.map +1 -1
  26. package/es/packages/components/index.mjs +5 -5
  27. package/es/packages/components/picture/index.mjs +2 -2
  28. package/es/packages/components/picture/src/picture.mjs +19 -26
  29. package/es/packages/components/picture/src/picture.mjs.map +1 -1
  30. package/es/packages/components/picture/src/picture2.mjs +26 -19
  31. package/es/packages/components/picture/src/picture2.mjs.map +1 -1
  32. package/es/packages/components/qrcode/index.mjs +2 -2
  33. package/es/packages/components/qrcode/src/qrcode.mjs +22 -62
  34. package/es/packages/components/qrcode/src/qrcode.mjs.map +1 -1
  35. package/es/packages/components/qrcode/src/qrcode2.mjs +62 -22
  36. package/es/packages/components/qrcode/src/qrcode2.mjs.map +1 -1
  37. package/es/packages/components/search/index.mjs +2 -2
  38. package/es/packages/components/search/src/search.mjs +431 -25
  39. package/es/packages/components/search/src/search.mjs.map +1 -1
  40. package/es/packages/components/search/src/search2.mjs +25 -423
  41. package/es/packages/components/search/src/search2.mjs.map +1 -1
  42. package/es/packages/components/table/index.mjs +2 -2
  43. package/es/packages/components/table/src/table.mjs +419 -37
  44. package/es/packages/components/table/src/table.mjs.map +1 -1
  45. package/es/packages/components/table/src/table2.mjs +37 -419
  46. package/es/packages/components/table/src/table2.mjs.map +1 -1
  47. package/es/version.d.ts +1 -1
  48. package/es/version.mjs +1 -1
  49. package/es/version.mjs.map +1 -1
  50. package/lib/components/crud/src/crud.d.ts +8 -0
  51. package/lib/components/form/src/form.d.ts +4 -0
  52. package/lib/index.js +5 -5
  53. package/lib/packages/components/crud/src/crud.js.map +1 -1
  54. package/lib/packages/components/crud/src/crud2.js +16 -3
  55. package/lib/packages/components/crud/src/crud2.js.map +1 -1
  56. package/lib/packages/components/form/index.js +2 -2
  57. package/lib/packages/components/form/src/form.js +640 -26
  58. package/lib/packages/components/form/src/form.js.map +1 -1
  59. package/lib/packages/components/form/src/form2.js +26 -633
  60. package/lib/packages/components/form/src/form2.js.map +1 -1
  61. package/lib/packages/components/index.js +5 -5
  62. package/lib/packages/components/picture/index.js +2 -2
  63. package/lib/packages/components/picture/src/picture.js +20 -26
  64. package/lib/packages/components/picture/src/picture.js.map +1 -1
  65. package/lib/packages/components/picture/src/picture2.js +26 -20
  66. package/lib/packages/components/picture/src/picture2.js.map +1 -1
  67. package/lib/packages/components/qrcode/index.js +2 -2
  68. package/lib/packages/components/qrcode/src/qrcode.js +23 -66
  69. package/lib/packages/components/qrcode/src/qrcode.js.map +1 -1
  70. package/lib/packages/components/qrcode/src/qrcode2.js +66 -23
  71. package/lib/packages/components/qrcode/src/qrcode2.js.map +1 -1
  72. package/lib/packages/components/search/index.js +2 -2
  73. package/lib/packages/components/search/src/search.js +431 -26
  74. package/lib/packages/components/search/src/search.js.map +1 -1
  75. package/lib/packages/components/search/src/search2.js +26 -423
  76. package/lib/packages/components/search/src/search2.js.map +1 -1
  77. package/lib/packages/components/table/index.js +2 -2
  78. package/lib/packages/components/table/src/table.js +424 -38
  79. package/lib/packages/components/table/src/table.js.map +1 -1
  80. package/lib/packages/components/table/src/table2.js +38 -424
  81. package/lib/packages/components/table/src/table2.js.map +1 -1
  82. package/lib/version.d.ts +1 -1
  83. package/lib/version.js +1 -1
  84. package/lib/version.js.map +1 -1
  85. package/package.json +2 -2
  86. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"form2.js","sources":["../../../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<script lang=\"ts\" setup>\r\nimport { computed, ref, useSlots, watch } from 'vue'\r\nimport { cloneDeep, get, set } from 'lodash-unified'\r\nimport { useGlobalConfig } from '@m-eleplus-crud/components'\r\nimport { debugWarn } from '@m-eleplus-crud/utils'\r\nimport { formEmits, formProps } from './form'\r\nimport type { IDictValue } from '@m-eleplus-crud/components/common'\r\nimport type { FormInstance } from 'element-plus'\r\nimport type { IFormColumn, IFormOption } from './form'\r\n\r\nconst COMPONENT_NAME = 'MForm'\r\ndefineOptions({\r\n name: COMPONENT_NAME,\r\n})\r\n\r\nconst props = defineProps(formProps)\r\ndefineEmits(formEmits)\r\n\r\n// 插槽信息\r\nconst slots = useSlots() as any\r\n\r\n// 全局配置\r\nconst globalConfig = useGlobalConfig()\r\n\r\n// 表单实例\r\nconst formRef = ref<FormInstance>()\r\n\r\n// 表单输入类型\r\nconst INPUT_TYPES = [\r\n 'input',\r\n 'textarea',\r\n 'number',\r\n 'password',\r\n 'qrcode',\r\n 'barcode',\r\n]\r\n\r\n// 日期类型\r\nconst DATE_TYPES = [\r\n 'year',\r\n 'month',\r\n 'date',\r\n 'datetime',\r\n 'week',\r\n 'datetimerange',\r\n 'daterange',\r\n 'monthrange',\r\n 'yearrange',\r\n 'time',\r\n 'timerange',\r\n]\r\n\r\n// 需要字典显示处理\r\nconst NEED_DIC_TYPE = ['select', 'checkbox', 'radio', 'switch']\r\n\r\n// 表单配置\r\nconst formOption = ref<IFormOption>({\r\n // 默认标签宽度80px\r\n labelWidth: '80px',\r\n column: [],\r\n})\r\n\r\n/**\r\n * @description 计算详情模式下的表格行\r\n */\r\nconst detailTableRows = computed(() => {\r\n const rows = []\r\n let currentRow = []\r\n let currentTotal = 0\r\n for (const item of formOption.value.column || []) {\r\n const req = item.span || 12\r\n // 若当前行加入该项超过总列数,则开启新行\r\n if (currentTotal + req > 24) {\r\n rows.push(currentRow)\r\n currentRow = []\r\n currentTotal = 0\r\n }\r\n currentRow.push(item)\r\n currentTotal += req\r\n }\r\n if (currentRow.length) rows.push(currentRow)\r\n return rows\r\n})\r\n\r\n// 表单model\r\nconst proxys = new Proxy(props.model as any, {\r\n get(target, property) {\r\n return get(target, property)\r\n },\r\n set(target, property, value) {\r\n set(target, property, value)\r\n return true\r\n },\r\n})\r\n\r\n/**\r\n * @description 初始化表单的值\r\n */\r\nconst initValue = () => {\r\n // 初始化搜索表单的值\r\n if (formOption.value && formOption.value.column) {\r\n for (let i = 0; i < formOption.value.column?.length; i++) {\r\n const column = formOption.value.column[i]\r\n if (column.prop && proxys[column.prop] === undefined) {\r\n if (column.value) {\r\n proxys[column.prop] = column.value\r\n } else {\r\n const ARR_TYPES = [\r\n 'checkbox',\r\n 'datetimerange',\r\n 'daterange',\r\n 'monthrange',\r\n 'yearrange',\r\n 'timerange',\r\n ]\r\n if (\r\n (column.type === 'select' && column.multiple) ||\r\n ARR_TYPES.includes(column.type || '')\r\n ) {\r\n proxys[column.prop] = []\r\n } else {\r\n proxys[column.prop] = ''\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * 根据类型获取默认时间格式\r\n * @param type 类型\r\n */\r\nconst getValueFormatByType = (type: string) => {\r\n let format = ''\r\n switch (type) {\r\n case 'yearrange':\r\n case 'year':\r\n format = 'YYYY'\r\n break\r\n case 'monthrange':\r\n case 'month':\r\n format = 'YYYY-MM'\r\n break\r\n case 'daterange':\r\n case 'week':\r\n case 'date':\r\n format = 'YYYY-MM-DD'\r\n break\r\n case 'datetimerange':\r\n case 'datetime':\r\n format = 'YYYY-MM-DD HH:mm:ss'\r\n break\r\n case 'time':\r\n format = 'HH:mm:ss'\r\n break\r\n }\r\n return format\r\n}\r\n\r\n/**\r\n * 处理需要远程获取字典的配置\r\n */\r\nconst getAllRemoteDics = () => {\r\n const hasDicUrl = formOption.value?.column?.some((column) => column.dicUrl)\r\n if (hasDicUrl && !globalConfig.value?.httpGet) {\r\n debugWarn('MForm', 'global config httpGet is null')\r\n return\r\n }\r\n /**\r\n * 调用接口设置到dicData\r\n * @param column 列配置\r\n */\r\n const updateRemoteDic = (column: IFormColumn) => {\r\n return new Promise((resolve) => {\r\n let isSuccess = false\r\n // @ts-ignore\r\n globalConfig.value\r\n .httpGet(column.dicUrl, column.dicQuery, column.dicHeaders)\r\n .then((e: any) => {\r\n // @ts-ignore\r\n const { list, label, value } = column.dicFormatter(e)\r\n if (list && Array.isArray(list)) {\r\n column['dicData'] = list.map((item) => {\r\n const lastLabel = label.replace(/\\{(\\w+)\\}/g, (match, key) => {\r\n return item[key] || match\r\n })\r\n return {\r\n label: lastLabel,\r\n value: item[value],\r\n }\r\n })\r\n isSuccess = true\r\n }\r\n })\r\n .finally(() => {\r\n if (!isSuccess) {\r\n column['dicData'] = []\r\n }\r\n resolve(null)\r\n })\r\n })\r\n }\r\n for (let i = 0; i < (formOption.value?.column || []).length; i++) {\r\n // @ts-ignore\r\n const column = formOption.value.column[i]\r\n if (column.dicUrl) {\r\n if (!column.dicFormatter) {\r\n debugWarn('MForm', 'dicUrl and dicFormatter must be used together')\r\n continue\r\n }\r\n updateRemoteDic(column)\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * 根据配置获取表单项的绑定事件\r\n * @param column\r\n */\r\nconst getFormItemEventBind = (column: IFormColumn): object => {\r\n const result: any = {}\r\n for (const key in column) {\r\n if (key.startsWith('event')) {\r\n let funName = key.replace('event', '')\r\n funName = funName.charAt(0).toLowerCase() + funName.slice(1)\r\n // @ts-ignore\r\n result[funName] = column[key]\r\n }\r\n }\r\n return result\r\n}\r\n\r\n/**\r\n * 解析字典并展示\r\n * @param row 行数据\r\n * @param column 列配置\r\n */\r\nconst formatDicValue = (row: any, column: IFormColumn) => {\r\n // 未拿到字典值的placeholder\r\n let dictLabel: string | undefined = ''\r\n // 查找\r\n const findLabelByValue = (dicData: IDictValue[], value: any) => {\r\n const dictItem = (dicData || []).find((dict) => dict.value === value)\r\n if (dictItem === undefined) {\r\n return dictLabel\r\n }\r\n return dictItem.label\r\n }\r\n if (\r\n (column.type === 'select' && column.multiple) ||\r\n column.type === 'checkbox'\r\n ) {\r\n // select下拉且开启多选/多选模式\r\n let values: any = []\r\n\r\n if (\r\n row[column.prop || ''] != null &&\r\n row[column.prop || ''] != undefined &&\r\n row[column.prop || ''] !== ''\r\n ) {\r\n if (Array.isArray(row[column.prop || ''])) {\r\n // 数据就是数组\r\n values = row[column.prop || '']\r\n } else if (typeof row[column.prop || ''] === 'string') {\r\n // 数据是字符串,启动字符分割,后续需要弄成从配置读取\r\n values = row[column.prop || ''].split(',')\r\n } else {\r\n // 最后情况变成数组\r\n values = [row[column.prop || '']]\r\n }\r\n }\r\n // 结果集合\r\n const result: string[] = []\r\n for (const value of values) {\r\n dictLabel = findLabelByValue(column.dicData || [], value)\r\n if (dictLabel === undefined) {\r\n break\r\n }\r\n result.push(dictLabel)\r\n }\r\n return result.join(',')\r\n }\r\n // 单模式\r\n dictLabel = findLabelByValue(column.dicData || [], row[column.prop || ''])\r\n return dictLabel\r\n}\r\n\r\n/**\r\n * 拿到详情模式下的图片集合\r\n * @param row\r\n * @param column\r\n */\r\nconst getDetailPic = (row: any, column: IFormColumn) => {\r\n if (!row || !row[column.prop || '']) {\r\n return []\r\n }\r\n const pics: string[] = row[column.prop || '']\r\n .split(column.imgSuffix || ';')\r\n .map((pic: string) => (column.imgPrefix || '') + pic)\r\n return pics\r\n}\r\n\r\nconst getValueColspan = (\r\n item: IFormColumn,\r\n rows: IFormColumn[],\r\n index: number\r\n) => {\r\n const getRemaining = (row: IFormColumn[]) => {\r\n const used = row.reduce((acc, item) => acc + (item.span || 12), 0)\r\n return 24 - used\r\n }\r\n if (index === rows.length - 1) {\r\n return (item.span || 12) + getRemaining(rows) - 1\r\n }\r\n return (item.span || 12) - 1\r\n}\r\n\r\n/**\r\n * @description 校验表单\r\n */\r\nconst validForm = (): Promise<boolean> => {\r\n return new Promise((resolve) => {\r\n formRef.value!.validate((valid) => {\r\n resolve(valid)\r\n })\r\n })\r\n}\r\n\r\n/**\r\n * @description 清空数据和校验规则\r\n */\r\nconst clear = () => {\r\n // 清空校验规则\r\n formRef.value?.clearValidate()\r\n // 清空表单数据\r\n formRef.value?.resetFields()\r\n}\r\n\r\nwatch(\r\n () => props.option as IFormOption,\r\n (newVal: IFormOption) => {\r\n if (newVal) {\r\n formOption.value = Object.assign({}, formOption.value, newVal)\r\n if (newVal.column) {\r\n formOption.value.column = cloneDeep(\r\n newVal.column\r\n .filter(\r\n (column) => !(props.permission[column.prop || ''] === false)\r\n )\r\n .sort((a, b) => (b.order || 0) - (a.order || 0))\r\n )\r\n // 处理远程字典的配置\r\n getAllRemoteDics()\r\n if (!props.readonly) {\r\n // 初始化表单的值\r\n initValue()\r\n }\r\n }\r\n }\r\n },\r\n {\r\n immediate: true,\r\n deep: true,\r\n }\r\n)\r\n\r\ndefineExpose({\r\n /**\r\n * @description 校验表单\r\n */\r\n validForm,\r\n /**\r\n * @description 清空表单\r\n */\r\n clear,\r\n})\r\n</script>\r\n\r\n<template>\r\n <div class=\"m-form\">\r\n <!--编辑模式-->\r\n <el-form\r\n v-if=\"!readonly\"\r\n ref=\"formRef\"\r\n :model=\"proxys\"\r\n :disabled=\"loading\"\r\n :size=\"size || globalConfig.size\"\r\n :label-width=\"formOption.labelWidth\"\r\n style=\"width: 100%\"\r\n @submit.prevent\r\n >\r\n <el-row :gutter=\"0\">\r\n <el-col\r\n v-for=\"(column, columnIndex) in formOption.column\"\r\n :key=\"columnIndex\"\r\n :span=\"column.span || 12\"\r\n >\r\n <el-form-item\r\n style=\"width: 100%\"\r\n :label=\"column.label + ':'\"\r\n :prop=\"column.prop\"\r\n :rules=\"column.rules\"\r\n :label-width=\"column.labelWidth || formOption.labelWidth\"\r\n >\r\n <!--插槽信息-->\r\n <slot\r\n v-if=\"slots[column.prop || '']\"\r\n :name=\"column.prop\"\r\n v-bind=\"{ size: size || globalConfig.size, loading: loading }\"\r\n />\r\n <!---->\r\n <!--输入框-->\r\n <el-input\r\n v-else-if=\"!column.type || INPUT_TYPES.includes(column.type)\"\r\n v-model.trim=\"proxys[column.prop || '']\"\r\n style=\"width: 100%\"\r\n :placeholder=\"column.placeholder\"\r\n :maxlength=\"column.maxlength\"\r\n :show-word-limit=\"column.showWordLimit\"\r\n :show-password=\"column.showPassword\"\r\n :type=\"\r\n !column.type || column.type === 'input' ? 'text' : column.type\r\n \"\r\n v-on=\"getFormItemEventBind(column)\"\r\n />\r\n <!---->\r\n <!--下拉框-->\r\n <el-select\r\n v-else-if=\"column.type === 'select'\"\r\n v-model.trim=\"proxys[column.prop || '']\"\r\n style=\"width: 100%\"\r\n :placeholder=\"column.placeholder\"\r\n :multiple=\"column.multiple\"\r\n :clearable=\"column.clearable\"\r\n :filterable=\"column.filterable\"\r\n :filter-method=\"column.filterMethod\"\r\n :remote=\"column.remote\"\r\n :remote-method=\"column.remoteMethod\"\r\n :loading=\"column.loading\"\r\n v-on=\"getFormItemEventBind(column)\"\r\n >\r\n <el-option\r\n v-for=\"(dicItem, dicIndex) in column.dicData || []\"\r\n :key=\"dicIndex\"\r\n :label=\"dicItem.label\"\r\n :value=\"dicItem.value\"\r\n />\r\n </el-select>\r\n <!---->\r\n <!--radio-->\r\n <el-radio-group\r\n v-else-if=\"column.type === 'radio'\"\r\n v-model=\"proxys[column.prop || '']\"\r\n style=\"width: 100%\"\r\n v-on=\"getFormItemEventBind(column)\"\r\n >\r\n <el-radio\r\n v-for=\"(dicItem, dicIndex) in column.dicData || []\"\r\n :key=\"dicIndex\"\r\n :value=\"dicItem.value\"\r\n :label=\"dicItem.value\"\r\n >\r\n {{ dicItem.label }}\r\n </el-radio>\r\n </el-radio-group>\r\n <!---->\r\n <!--checkbox-->\r\n <el-checkbox-group\r\n v-else-if=\"column.type === 'checkbox'\"\r\n v-model=\"proxys[column.prop || '']\"\r\n style=\"width: 100%\"\r\n v-on=\"getFormItemEventBind(column)\"\r\n >\r\n <el-checkbox\r\n v-for=\"(dicItem, dicIndex) in column.dicData || []\"\r\n :key=\"dicIndex\"\r\n :label=\"dicItem.label\"\r\n :value=\"dicItem.value\"\r\n />\r\n </el-checkbox-group>\r\n <!---->\r\n <!--switch-->\r\n <template v-else-if=\"column.type === 'switch'\">\r\n <span\r\n v-if=\"!column.dicData || column.dicData.length != 2\"\r\n style=\"\r\n color: var(--el-text-color-placeholder);\r\n line-height: 32px;\r\n height: 32px;\r\n \"\r\n >\"dicData/dicUrl的结果\"未设置或长度不等于2</span\r\n >\r\n <template v-else>\r\n <el-switch\r\n v-model=\"proxys[column.prop || '']\"\r\n :active-value=\"column.dicData[0].value\"\r\n :inactive-value=\"column.dicData[1].value\"\r\n v-on=\"getFormItemEventBind(column)\"\r\n />\r\n <span\r\n style=\"\r\n font-size: var(--el-font-size-base);\r\n color: var(--el-text-color-regular);\r\n margin-left: 6px;\r\n \"\r\n >{{\r\n proxys[column.prop || ''] === column.dicData[0].value\r\n ? column.dicData[0].label\r\n : column.dicData[1].label\r\n }}</span\r\n >\r\n </template>\r\n </template>\r\n <!---->\r\n <!--时间-->\r\n <template v-else-if=\"DATE_TYPES.includes(column.type)\">\r\n <el-date-picker\r\n v-if=\"column.type !== 'time' && column.type !== 'timerange'\"\r\n v-model=\"proxys[column.prop || '']\"\r\n :type=\"column.type\"\r\n :clearable=\"column.clearable\"\r\n :start-placeholder=\"column.startPlaceholder\"\r\n :end-placeholder=\"column.endPlaceholder\"\r\n :format=\"column.format\"\r\n :value-format=\"\r\n column.valueFormat || getValueFormatByType(column.type)\r\n \"\r\n v-on=\"getFormItemEventBind(column)\"\r\n />\r\n <el-time-picker\r\n v-else\r\n v-model=\"proxys[column.prop || '']\"\r\n :is-range=\"column.type === 'timerange'\"\r\n :clearable=\"column.clearable\"\r\n :start-placeholder=\"column.startPlaceholder\"\r\n :end-placeholder=\"column.endPlaceholder\"\r\n :value-format=\"\r\n column.valueFormat || getValueFormatByType(column.type)\r\n \"\r\n v-on=\"getFormItemEventBind(column)\"\r\n />\r\n </template>\r\n <!---->\r\n <!--picture-->\r\n <span\r\n v-else-if=\"column.type === 'picture'\"\r\n style=\"\r\n color: var(--el-text-color-regular);\r\n line-height: 32px;\r\n height: 32px;\r\n \"\r\n >\r\n 暂不支持picture,请使用插槽自行实现\r\n </span>\r\n <!---->\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <!---->\r\n <!--详情模式-->\r\n <template v-else>\r\n <table class=\"detail-desc\">\r\n <tbody>\r\n <tr v-for=\"(row, rowIndex) in detailTableRows\" :key=\"rowIndex\">\r\n <template v-for=\"(column, index) in row\" :key=\"index\">\r\n <td\r\n :style=\"{ width: column.labelWidth || formOption.labelWidth }\"\r\n colspan=\"1\"\r\n class=\"label\"\r\n >\r\n {{ column.label }}\r\n </td>\r\n <td :colspan=\"getValueColspan(column, row, index)\">\r\n <template v-if=\"column.type === 'picture'\">\r\n <MPicture\r\n :src=\"getDetailPic(proxys, column)[0]\"\r\n :preview-src-list=\"getDetailPic(proxys, column)[0]\"\r\n img-width=\"100px\"\r\n img-height=\"100px\"\r\n />\r\n </template>\r\n <template v-else-if=\"NEED_DIC_TYPE.includes(column.type || '')\">\r\n {{ formatDicValue(proxys, column) }}\r\n </template>\r\n <template v-else-if=\"column.type === 'qrcode'\">\r\n <MQrcode\r\n v-if=\"proxys[column.prop || '']\"\r\n :text=\"proxys[column.prop || '']\"\r\n align=\"center\"\r\n />\r\n </template>\r\n <template v-else-if=\"column.type === 'barcode'\">\r\n <MBarcode\r\n v-if=\"proxys[column.prop || '']\"\r\n :text=\"proxys[column.prop || '']\"\r\n align=\"center\"\r\n />\r\n </template>\r\n <template v-else>\r\n {{ proxys[column.prop || ''] }}\r\n </template>\r\n </td>\r\n </template>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </template>\r\n </div>\r\n</template>\r\n"],"names":["DO_defineComponent","useSlots","useGlobalConfig","ref","computed","get","set","debugWarn","item","watch","cloneDeep"],"mappings":";;;;;;;;;;;;AAWc,MAAA,cAAAA,mBAAA,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;AAEA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAId,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AAGvB,IAAA,MAAM,eAAeC,+BAAgB,EAAA,CAAA;AAGrC,IAAA,MAAM,UAAUC,OAAkB,EAAA,CAAA;AAGlC,IAAA,MAAM,WAAc,GAAA;AAAA,MAClB,OAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,SAAA;AAAA,KACF,CAAA;AAGA,IAAA,MAAM,UAAa,GAAA;AAAA,MACjB,MAAA;AAAA,MACA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,eAAA;AAAA,MACA,WAAA;AAAA,MACA,YAAA;AAAA,MACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,WAAA;AAAA,KACF,CAAA;AAGA,IAAA,MAAM,aAAgB,GAAA,CAAC,QAAU,EAAA,UAAA,EAAY,SAAS,QAAQ,CAAA,CAAA;AAG9D,IAAA,MAAM,aAAaA,OAAiB,CAAA;AAAA,MAElC,UAAY,EAAA,MAAA;AAAA,MACZ,QAAQ,EAAC;AAAA,KACV,CAAA,CAAA;AAKK,IAAA,MAAA,eAAA,GAAkBC,aAAS,MAAM;AACrC,MAAA,MAAM,OAAO,EAAC,CAAA;AACd,MAAA,IAAI,aAAa,EAAC,CAAA;AAClB,MAAA,IAAI,YAAe,GAAA,CAAA,CAAA;AACnB,MAAA,KAAA,MAAW,IAAQ,IAAA,UAAA,CAAW,KAAM,CAAA,MAAA,IAAU,EAAI,EAAA;AAC1C,QAAA,MAAA,GAAA,GAAM,KAAK,IAAQ,IAAA,EAAA,CAAA;AAErB,QAAA,IAAA,YAAA,GAAe,MAAM,EAAI,EAAA;AAC3B,UAAA,IAAA,CAAK,KAAK,UAAU,CAAA,CAAA;AACpB,UAAA,UAAA,GAAa,EAAC,CAAA;AACC,UAAA,YAAA,GAAA,CAAA,CAAA;AAAA,SACjB;AACA,QAAA,UAAA,CAAW,KAAK,IAAI,CAAA,CAAA;AACJ,QAAA,YAAA,IAAA,GAAA,CAAA;AAAA,OAClB;AACA,MAAA,IAAI,UAAW,CAAA,MAAA;AAAa,QAAA,IAAA,CAAA,KAAK,UAAU,CAAA,CAAA;AACpC,MAAA,OAAA,IAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAGD,IAAA,MAAM,MAAS,GAAA,IAAI,KAAM,CAAA,KAAA,CAAM,KAAc,EAAA;AAAA,MAC3C,GAAA,CAAI,QAAQ,QAAU,EAAA;AACb,QAAA,OAAAC,iBAAA,CAAI,QAAQ,QAAQ,CAAA,CAAA;AAAA,OAC7B;AAAA,MACA,GAAA,CAAI,MAAQ,EAAA,QAAA,EAAU,KAAO,EAAA;AACvB,QAAAC,iBAAA,CAAA,MAAA,EAAQ,UAAU,KAAK,CAAA,CAAA;AACpB,QAAA,OAAA,IAAA,CAAA;AAAA,OACT;AAAA,KACD,CAAA,CAAA;AAKD,IAAA,MAAM,YAAY,MAAM;;AAEtB,MAAA,IAAI,UAAW,CAAA,KAAA,IAAS,UAAW,CAAA,KAAA,CAAM,MAAQ,EAAA;AAC/C,QAAS,KAAA,IAAA,CAAA,GAAI,GAAG,CAAI,IAAA,CAAA,EAAA,GAAA,UAAA,CAAW,MAAM,MAAjB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAyB,SAAQ,CAAK,EAAA,EAAA;AACxD,UAAM,MAAA,MAAA,GAAS,UAAW,CAAA,KAAA,CAAM,MAAO,CAAA,CAAA,CAAA,CAAA;AACvC,UAAA,IAAI,MAAO,CAAA,IAAA,IAAQ,MAAO,CAAA,MAAA,CAAO,UAAU,KAAW,CAAA,EAAA;AACpD,YAAA,IAAI,OAAO,KAAO,EAAA;AACT,cAAA,MAAA,CAAA,MAAA,CAAO,QAAQ,MAAO,CAAA,KAAA,CAAA;AAAA,aACxB,MAAA;AACL,cAAA,MAAM,SAAY,GAAA;AAAA,gBAChB,UAAA;AAAA,gBACA,eAAA;AAAA,gBACA,WAAA;AAAA,gBACA,YAAA;AAAA,gBACA,WAAA;AAAA,gBACA,WAAA;AAAA,eACF,CAAA;AAEG,cAAA,IAAA,MAAA,CAAO,IAAS,KAAA,QAAA,IAAY,MAAO,CAAA,QAAA,IACpC,UAAU,QAAS,CAAA,MAAA,CAAO,IAAQ,IAAA,EAAE,CACpC,EAAA;AACO,gBAAA,MAAA,CAAA,MAAA,CAAO,QAAQ,EAAC,CAAA;AAAA,eAClB,MAAA;AACE,gBAAA,MAAA,CAAA,OAAO,IAAQ,CAAA,GAAA,EAAA,CAAA;AAAA,eACxB;AAAA,aACF;AAAA,WACF;AAAA,SACF;AAAA,OACF;AAAA,KACF,CAAA;AAMM,IAAA,MAAA,oBAAA,GAAuB,CAAC,IAAiB,KAAA;AAC7C,MAAA,IAAI,MAAS,GAAA,EAAA,CAAA;AACb,MAAQ,QAAA,IAAA;AAAA,QACD,KAAA,WAAA,CAAA;AAAA,QACA,KAAA,MAAA;AACM,UAAA,MAAA,GAAA,MAAA,CAAA;AACT,UAAA,MAAA;AAAA,QACG,KAAA,YAAA,CAAA;AAAA,QACA,KAAA,OAAA;AACM,UAAA,MAAA,GAAA,SAAA,CAAA;AACT,UAAA,MAAA;AAAA,QACG,KAAA,WAAA,CAAA;AAAA,QACA,KAAA,MAAA,CAAA;AAAA,QACA,KAAA,MAAA;AACM,UAAA,MAAA,GAAA,YAAA,CAAA;AACT,UAAA,MAAA;AAAA,QACG,KAAA,eAAA,CAAA;AAAA,QACA,KAAA,UAAA;AACM,UAAA,MAAA,GAAA,qBAAA,CAAA;AACT,UAAA,MAAA;AAAA,QACG,KAAA,MAAA;AACM,UAAA,MAAA,GAAA,UAAA,CAAA;AACT,UAAA,MAAA;AAAA,OAAA;AAEG,MAAA,OAAA,MAAA,CAAA;AAAA,KACT,CAAA;AAKA,IAAA,MAAM,mBAAmB,MAAM;;AACvB,MAAA,MAAA,SAAA,GAAA,CAAY,sBAAW,KAAX,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAkB,WAAlB,IAA0B,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAK,CAAC,MAAA,KAAW,MAAO,CAAA,MAAA,CAAA,CAAA;AACpE,MAAA,IAAI,SAAa,IAAA,EAAA,CAAC,EAAa,GAAA,YAAA,CAAA,KAAA,KAAb,mBAAoB,OAAS,CAAA,EAAA;AAC7C,QAAAC,eAAA,CAAU,SAAS,+BAA+B,CAAA,CAAA;AAClD,QAAA,OAAA;AAAA,OACF;AAKM,MAAA,MAAA,eAAA,GAAkB,CAAC,MAAwB,KAAA;AACxC,QAAA,OAAA,IAAI,OAAQ,CAAA,CAAC,OAAY,KAAA;AAC9B,UAAA,IAAI,SAAY,GAAA,KAAA,CAAA;AAEH,UAAA,YAAA,CAAA,KAAA,CACV,OAAQ,CAAA,MAAA,CAAO,MAAQ,EAAA,MAAA,CAAO,QAAU,EAAA,MAAA,CAAO,UAAU,CAAA,CACzD,IAAK,CAAA,CAAC,CAAW,KAAA;AAEhB,YAAA,MAAM,EAAE,IAAM,EAAA,KAAA,EAAO,OAAU,GAAA,MAAA,CAAO,aAAa,CAAC,CAAA,CAAA;AACpD,YAAA,IAAI,IAAQ,IAAA,KAAA,CAAM,OAAQ,CAAA,IAAI,CAAG,EAAA;AAC/B,cAAA,MAAA,CAAO,SAAa,CAAA,GAAA,IAAA,CAAK,GAAI,CAAA,CAAC,IAAS,KAAA;AACrC,gBAAA,MAAM,YAAY,KAAM,CAAA,OAAA,CAAQ,YAAc,EAAA,CAAC,OAAO,GAAQ,KAAA;AACrD,kBAAA,OAAA,KAAK,GAAQ,CAAA,IAAA,KAAA,CAAA;AAAA,iBACrB,CAAA,CAAA;AACM,gBAAA,OAAA;AAAA,kBACL,KAAO,EAAA,SAAA;AAAA,kBACP,OAAO,IAAK,CAAA,KAAA,CAAA;AAAA,iBACd,CAAA;AAAA,eACD,CAAA,CAAA;AACW,cAAA,SAAA,GAAA,IAAA,CAAA;AAAA,aACd;AAAA,WACD,CACA,CAAA,OAAA,CAAQ,MAAM;AACb,YAAA,IAAI,CAAC,SAAW,EAAA;AACP,cAAA,MAAA,CAAA,aAAa,EAAC,CAAA;AAAA,aACvB;AACA,YAAA,OAAA,CAAQ,IAAI,CAAA,CAAA;AAAA,WACb,CAAA,CAAA;AAAA,SACJ,CAAA,CAAA;AAAA,OACH,CAAA;AACS,MAAA,KAAA,IAAA,CAAA,GAAI,CAAG,EAAA,CAAA,GAAA,CAAA,CAAA,CAAK,EAAW,GAAA,UAAA,CAAA,KAAA,KAAX,mBAAkB,MAAU,KAAA,EAAI,EAAA,MAAA,EAAQ,CAAK,EAAA,EAAA;AAEhE,QAAM,MAAA,MAAA,GAAS,UAAW,CAAA,KAAA,CAAM,MAAO,CAAA,CAAA,CAAA,CAAA;AACvC,QAAA,IAAI,OAAO,MAAQ,EAAA;AACb,UAAA,IAAA,CAAC,OAAO,YAAc,EAAA;AACxB,YAAAA,eAAA,CAAU,SAAS,+CAA+C,CAAA,CAAA;AAClE,YAAA,SAAA;AAAA,WACF;AACA,UAAA,eAAA,CAAgB,MAAM,CAAA,CAAA;AAAA,SACxB;AAAA,OACF;AAAA,KACF,CAAA;AAMM,IAAA,MAAA,oBAAA,GAAuB,CAAC,MAAgC,KAAA;AAC5D,MAAA,MAAM,SAAc,EAAC,CAAA;AACrB,MAAA,KAAA,MAAW,OAAO,MAAQ,EAAA;AACpB,QAAA,IAAA,GAAA,CAAI,UAAW,CAAA,OAAO,CAAG,EAAA;AAC3B,UAAA,IAAI,OAAU,GAAA,GAAA,CAAI,OAAQ,CAAA,OAAA,EAAS,EAAE,CAAA,CAAA;AAC3B,UAAA,OAAA,GAAA,OAAA,CAAQ,OAAO,CAAC,CAAA,CAAE,aAAgB,GAAA,OAAA,CAAQ,MAAM,CAAC,CAAA,CAAA;AAEpD,UAAA,MAAA,CAAA,WAAW,MAAO,CAAA,GAAA,CAAA,CAAA;AAAA,SAC3B;AAAA,OACF;AACO,MAAA,OAAA,MAAA,CAAA;AAAA,KACT,CAAA;AAOM,IAAA,MAAA,cAAA,GAAiB,CAAC,GAAA,EAAU,MAAwB,KAAA;AAExD,MAAA,IAAI,SAAgC,GAAA,EAAA,CAAA;AAE9B,MAAA,MAAA,gBAAA,GAAmB,CAAC,OAAA,EAAuB,KAAe,KAAA;AACxD,QAAA,MAAA,QAAA,GAAA,CAAY,WAAW,EAAC,EAAG,KAAK,CAAC,IAAA,KAAS,IAAK,CAAA,KAAA,KAAU,KAAK,CAAA,CAAA;AACpE,QAAA,IAAI,aAAa,KAAW,CAAA,EAAA;AACnB,UAAA,OAAA,SAAA,CAAA;AAAA,SACT;AACA,QAAA,OAAO,QAAS,CAAA,KAAA,CAAA;AAAA,OAClB,CAAA;AACA,MAAA,IACG,OAAO,IAAS,KAAA,QAAA,IAAY,OAAO,QACpC,IAAA,MAAA,CAAO,SAAS,UAChB,EAAA;AAEA,QAAA,IAAI,SAAc,EAAC,CAAA;AAEnB,QAAA,IACE,GAAI,CAAA,MAAA,CAAO,IAAQ,IAAA,EAAA,CAAA,IAAO,QAC1B,GAAI,CAAA,MAAA,CAAO,IAAQ,IAAA,EAAA,CAAA,IAAO,KAC1B,CAAA,IAAA,GAAA,CAAI,MAAO,CAAA,IAAA,IAAQ,QAAQ,EAC3B,EAAA;AACA,UAAA,IAAI,MAAM,OAAQ,CAAA,GAAA,CAAI,MAAO,CAAA,IAAA,IAAQ,GAAG,CAAG,EAAA;AAEhC,YAAA,MAAA,GAAA,GAAA,CAAI,OAAO,IAAQ,IAAA,EAAA,CAAA,CAAA;AAAA,qBACnB,OAAO,GAAA,CAAI,MAAO,CAAA,IAAA,IAAQ,QAAQ,QAAU,EAAA;AAErD,YAAA,MAAA,GAAS,GAAI,CAAA,MAAA,CAAO,IAAQ,IAAA,EAAA,CAAA,CAAI,MAAM,GAAG,CAAA,CAAA;AAAA,WACpC,MAAA;AAEL,YAAA,MAAA,GAAS,CAAC,GAAA,CAAI,MAAO,CAAA,IAAA,IAAQ,EAAG,CAAA,CAAA,CAAA;AAAA,WAClC;AAAA,SACF;AAEA,QAAA,MAAM,SAAmB,EAAC,CAAA;AAC1B,QAAA,KAAA,MAAW,SAAS,MAAQ,EAAA;AAC1B,UAAA,SAAA,GAAY,gBAAiB,CAAA,MAAA,CAAO,OAAW,IAAA,IAAI,KAAK,CAAA,CAAA;AACxD,UAAA,IAAI,cAAc,KAAW,CAAA,EAAA;AAC3B,YAAA,MAAA;AAAA,WACF;AACA,UAAA,MAAA,CAAO,KAAK,SAAS,CAAA,CAAA;AAAA,SACvB;AACO,QAAA,OAAA,MAAA,CAAO,KAAK,GAAG,CAAA,CAAA;AAAA,OACxB;AAEY,MAAA,SAAA,GAAA,gBAAA,CAAiB,OAAO,OAAW,IAAA,IAAI,GAAI,CAAA,MAAA,CAAO,QAAQ,EAAG,CAAA,CAAA,CAAA;AAClE,MAAA,OAAA,SAAA,CAAA;AAAA,KACT,CAAA;AAOM,IAAA,MAAA,YAAA,GAAe,CAAC,GAAA,EAAU,MAAwB,KAAA;AACtD,MAAA,IAAI,CAAC,GAAO,IAAA,CAAC,GAAI,CAAA,MAAA,CAAO,QAAQ,EAAK,CAAA,EAAA;AACnC,QAAA,OAAO,EAAC,CAAA;AAAA,OACV;AACA,MAAA,MAAM,OAAiB,GAAI,CAAA,MAAA,CAAO,IAAQ,IAAA,EAAA,CAAA,CACvC,MAAM,MAAO,CAAA,SAAA,IAAa,GAAG,CAAA,CAC7B,IAAI,CAAC,GAAA,KAAA,CAAiB,MAAO,CAAA,SAAA,IAAa,MAAM,GAAG,CAAA,CAAA;AAC/C,MAAA,OAAA,IAAA,CAAA;AAAA,KACT,CAAA;AAEA,IAAA,MAAM,eAAkB,GAAA,CACtB,IACA,EAAA,IAAA,EACA,KACG,KAAA;AACG,MAAA,MAAA,YAAA,GAAe,CAAC,GAAuB,KAAA;AACrC,QAAA,MAAA,IAAA,GAAO,GAAI,CAAA,MAAA,CAAO,CAAC,GAAA,EAAKC,UAAS,GAAOA,IAAAA,KAAAA,CAAK,IAAQ,IAAA,EAAA,CAAA,EAAK,CAAC,CAAA,CAAA;AACjE,QAAA,OAAO,EAAK,GAAA,IAAA,CAAA;AAAA,OACd,CAAA;AACI,MAAA,IAAA,KAAA,KAAU,IAAK,CAAA,MAAA,GAAS,CAAG,EAAA;AAC7B,QAAA,OAAA,CAAQ,IAAK,CAAA,IAAA,IAAQ,EAAM,IAAA,YAAA,CAAa,IAAI,CAAI,GAAA,CAAA,CAAA;AAAA,OAClD;AACQ,MAAA,OAAA,CAAA,IAAA,CAAK,QAAQ,EAAM,IAAA,CAAA,CAAA;AAAA,KAC7B,CAAA;AAKA,IAAA,MAAM,YAAY,MAAwB;AACjC,MAAA,OAAA,IAAI,OAAQ,CAAA,CAAC,OAAY,KAAA;AACtB,QAAA,OAAA,CAAA,KAAA,CAAO,QAAS,CAAA,CAAC,KAAU,KAAA;AACjC,UAAA,OAAA,CAAQ,KAAK,CAAA,CAAA;AAAA,SACd,CAAA,CAAA;AAAA,OACF,CAAA,CAAA;AAAA,KACH,CAAA;AAKA,IAAA,MAAM,QAAQ,MAAM;;AAElB,MAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,UAAR,IAAe,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,aAAA,EAAA,CAAA;AAEf,MAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,UAAR,IAAe,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,WAAA,EAAA,CAAA;AAAA,KACjB,CAAA;AAEA,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,MAAA;AAAA,MACZ,CAAC,MAAwB,KAAA;AACvB,QAAA,IAAI,MAAQ,EAAA;AACV,UAAA,UAAA,CAAW,QAAQ,MAAO,CAAA,MAAA,CAAO,EAAI,EAAA,UAAA,CAAW,OAAO,MAAM,CAAA,CAAA;AAC7D,UAAA,IAAI,OAAO,MAAQ,EAAA;AACjB,YAAA,UAAA,CAAW,MAAM,MAAS,GAAAC,uBAAA;AAAA,cACxB,OAAO,MACJ,CAAA,MAAA;AAAA,gBACC,CAAC,MAAW,KAAA,EAAE,MAAM,UAAW,CAAA,MAAA,CAAO,QAAQ,EAAQ,CAAA,KAAA,KAAA,CAAA;AAAA,eACxD,CACC,IAAK,CAAA,CAAC,CAAG,EAAA,CAAA,KAAA,CAAO,EAAE,KAAS,IAAA,CAAA,KAAM,CAAE,CAAA,KAAA,IAAS,CAAE,CAAA,CAAA;AAAA,aACnD,CAAA;AAEiB,YAAA,gBAAA,EAAA,CAAA;AACb,YAAA,IAAA,CAAC,MAAM,QAAU,EAAA;AAET,cAAA,SAAA,EAAA,CAAA;AAAA,aACZ;AAAA,WACF;AAAA,SACF;AAAA,OACF;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,QACX,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;AAEa,IAAA,QAAA,CAAA;AAAA,MAIX,SAAA;AAAA,MAIA,KAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"form2.js","sources":["../../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import { useSizeProp } from '@m-eleplus-crud/hooks'\r\nimport { buildProps, definePropType } from '@m-eleplus-crud/utils'\r\n\r\nimport type { ColumnType, ICommonColumn } from '../../common'\r\nimport type { FormItemRule } from 'element-plus'\r\n\r\nimport type { ExtractPropTypes } from 'vue'\r\n\r\n// 事件处理\r\ntype EventHandlers = {\r\n [K in `event${string}`]?: (...args: any[]) => any\r\n}\r\n\r\n/**\r\n * @description 公开的form column配置\r\n */\r\nexport interface IFormCommonColumn extends EventHandlers {\r\n /**\r\n * 表单校验规则\r\n */\r\n rules?: FormItemRule[]\r\n /**\r\n * @description 单个标签宽度\r\n */\r\n labelWidth?: string\r\n /**\r\n * @description 表单排序\r\n */\r\n order?: number\r\n /**\r\n * @description 栅栏宽度\r\n */\r\n span?: number\r\n /**\r\n * @description 最大长度\r\n */\r\n maxlength?: number\r\n /**\r\n * @description 是否显示字数统计,仅对type为textarea有效\r\n */\r\n showWordLimit?: boolean\r\n /**\r\n * @description 是否显示密码切换按钮,仅对type为password有效\r\n */\r\n showPassword?: boolean\r\n /**\r\n * @description 默认值\r\n */\r\n value?: any\r\n /**\r\n * @description 占位文本\r\n */\r\n placeholder?: string\r\n /**\r\n * @description 表单禁用\r\n */\r\n disabled?: boolean\r\n}\r\n\r\nexport interface IFormColumn extends ICommonColumn, IFormCommonColumn {\r\n /**\r\n * @description 组件类型\r\n */\r\n type?: ColumnType\r\n}\r\n\r\n/**\r\n * @description 公开的form配置\r\n */\r\nexport interface IFormCommonOption {\r\n /**\r\n * @description 标签宽度\r\n */\r\n labelWidth?: string\r\n}\r\n\r\nexport interface IFormOption extends IFormCommonOption {\r\n /**\r\n * @description 表单列\r\n */\r\n column: IFormColumn[]\r\n}\r\n\r\nexport const formProps = buildProps({\r\n /**\r\n * @description 组件大小\r\n */\r\n size: useSizeProp,\r\n /**\r\n * @description 表单绑定的数据\r\n */\r\n model: {\r\n type: Object,\r\n required: true,\r\n },\r\n /**\r\n * @description 表单加载状态\r\n */\r\n loading: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n /**\r\n * @description 表单权限配置\r\n */\r\n permission: {\r\n type: Object,\r\n default: {},\r\n },\r\n /**\r\n * @description 是否只读\r\n */\r\n readonly: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n /**\r\n * @description 表单配置\r\n */\r\n option: {\r\n type: definePropType<IFormOption>(Object),\r\n required: false,\r\n },\r\n} as const)\r\nexport type FormProps = ExtractPropTypes<typeof formProps>\r\n\r\nexport const formEmits = {}\r\nexport type FormEmits = typeof formEmits\r\n"],"names":["buildProps","useSizeProp","definePropType"],"mappings":";;;;;;;AAmFO,MAAM,YAAYA,kBAAW,CAAA;AAAA,EAIlC,IAAM,EAAAC,iBAAA;AAAA,EAIN,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,SAAS,EAAC;AAAA,GACZ;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EAIA,MAAQ,EAAA;AAAA,IACN,IAAA,EAAMC,uBAA4B,MAAM,CAAA;AAAA,IACxC,QAAU,EAAA,KAAA;AAAA,GACZ;AACF,CAAU,EAAA;AAGH,MAAM,YAAY;;;;;"}
@@ -15,13 +15,13 @@ var index$9 = require('./pagination/index.js');
15
15
  var configProviderProps = require('./config-provider/src/config-provider-props.js');
16
16
  var constants = require('./config-provider/src/constants.js');
17
17
  var useGlobalConfig = require('./config-provider/src/hooks/use-global-config.js');
18
- var table = require('./table/src/table.js');
19
- var search = require('./search/src/search.js');
20
- var picture = require('./picture/src/picture2.js');
18
+ var table = require('./table/src/table2.js');
19
+ var search = require('./search/src/search2.js');
20
+ var picture = require('./picture/src/picture.js');
21
21
  var dialog = require('./dialog/src/dialog.js');
22
- var qrcode = require('./qrcode/src/qrcode2.js');
22
+ var qrcode = require('./qrcode/src/qrcode.js');
23
23
  var barcode = require('./barcode/src/barcode.js');
24
- var form = require('./form/src/form.js');
24
+ var form = require('./form/src/form2.js');
25
25
  var crud = require('./crud/src/crud.js');
26
26
  var pagination = require('./pagination/src/pagination2.js');
27
27
 
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var picture$1 = require('./src/picture.js');
6
- var picture = require('./src/picture2.js');
5
+ var picture$1 = require('./src/picture2.js');
6
+ var picture = require('./src/picture.js');
7
7
  var install = require('../../utils/vue/install.js');
8
8
 
9
9
  const MPicture = install.withInstall(picture$1["default"]);
@@ -2,34 +2,28 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var picture = require('./picture2.js');
7
- var pluginVue_exportHelper = require('../../../../_virtual/plugin-vue_export-helper.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
8
6
 
9
- const COMPONENT_NAME = "MPicture";
10
- const __default__ = vue.defineComponent({
11
- name: COMPONENT_NAME
12
- });
13
- const _sfc_main = vue.defineComponent({
14
- ...__default__,
15
- props: picture.pictureProps,
16
- emits: picture.pictureEmits,
17
- setup(__props) {
18
- return (_ctx, _cache) => {
19
- const _component_el_image = vue.resolveComponent("el-image");
20
- return vue.openBlock(), vue.createElementBlock("div", { class: "m-picture" }, [
21
- vue.createVNode(_component_el_image, {
22
- src: _ctx.src,
23
- "preview-src-list": _ctx.previewSrcList,
24
- fit: "cover",
25
- style: vue.normalizeStyle({ width: _ctx.imgWidth, height: _ctx.imgHeight }),
26
- "preview-teleported": true
27
- }, null, 8, ["src", "preview-src-list", "style"])
28
- ]);
29
- };
7
+ const pictureProps = runtime.buildProps({
8
+ src: {
9
+ type: String,
10
+ required: true
11
+ },
12
+ previewSrcList: {
13
+ type: Array,
14
+ required: true
15
+ },
16
+ imgWidth: {
17
+ type: String,
18
+ default: "70px"
19
+ },
20
+ imgHeight: {
21
+ type: String,
22
+ default: "70px"
30
23
  }
31
24
  });
32
- var Picture = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "picture.vue"]]);
25
+ const pictureEmits = {};
33
26
 
34
- exports["default"] = Picture;
27
+ exports.pictureEmits = pictureEmits;
28
+ exports.pictureProps = pictureProps;
35
29
  //# sourceMappingURL=picture.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"picture.js","sources":["../../../../../../../packages/components/picture/src/picture.vue"],"sourcesContent":["<template>\r\n <div class=\"m-picture\">\r\n <el-image\r\n :src=\"src\"\r\n :preview-src-list=\"previewSrcList\"\r\n fit=\"cover\"\r\n :style=\"{ width: imgWidth, height: imgHeight }\"\r\n :preview-teleported=\"true\"\r\n />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { pictureEmits, pictureProps } from './picture'\r\n\r\nconst COMPONENT_NAME = 'MPicture'\r\ndefineOptions({\r\n name: COMPONENT_NAME,\r\n})\r\n\r\ndefineProps(pictureProps)\r\ndefineEmits(pictureEmits)\r\n</script>\r\n"],"names":["DO_defineComponent"],"mappings":";;;;;;;;;AAgBc,MAAA,cAAAA,mBAAA,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"picture.js","sources":["../../../../../../../packages/components/picture/src/picture.ts"],"sourcesContent":["import { buildProps } from '@m-eleplus-crud/utils'\r\n\r\nimport type { ExtractPropTypes } from 'vue'\r\n\r\nexport const pictureProps = buildProps({\r\n /**\r\n * @description 图片url资源\r\n */\r\n src: {\r\n type: String,\r\n required: true,\r\n },\r\n /**\r\n * @description 预览图片url资源集合\r\n */\r\n previewSrcList: {\r\n type: Array,\r\n required: true,\r\n },\r\n /**\r\n * @description 图片宽度\r\n */\r\n imgWidth: {\r\n type: String,\r\n default: '70px',\r\n },\r\n /**\r\n * @description 图片高度\r\n */\r\n imgHeight: {\r\n type: String,\r\n default: '70px',\r\n },\r\n} as const)\r\nexport type PictureProps = ExtractPropTypes<typeof pictureProps>\r\n\r\nexport const pictureEmits = {}\r\nexport type PictureEmits = typeof pictureEmits\r\n"],"names":["buildProps"],"mappings":";;;;;;AAIO,MAAM,eAAeA,kBAAW,CAAA;AAAA,EAIrC,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EAIA,cAAgB,EAAA;AAAA,IACd,IAAM,EAAA,KAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,MAAA;AAAA,GACX;AAAA,EAIA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,MAAA;AAAA,GACX;AACF,CAAU,EAAA;AAGH,MAAM,eAAe;;;;;"}
@@ -2,28 +2,34 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
5
+ var vue = require('vue');
6
+ var picture = require('./picture.js');
7
+ var pluginVue_exportHelper = require('../../../../_virtual/plugin-vue_export-helper.js');
6
8
 
7
- const pictureProps = runtime.buildProps({
8
- src: {
9
- type: String,
10
- required: true
11
- },
12
- previewSrcList: {
13
- type: Array,
14
- required: true
15
- },
16
- imgWidth: {
17
- type: String,
18
- default: "70px"
19
- },
20
- imgHeight: {
21
- type: String,
22
- default: "70px"
9
+ const COMPONENT_NAME = "MPicture";
10
+ const __default__ = vue.defineComponent({
11
+ name: COMPONENT_NAME
12
+ });
13
+ const _sfc_main = vue.defineComponent({
14
+ ...__default__,
15
+ props: picture.pictureProps,
16
+ emits: picture.pictureEmits,
17
+ setup(__props) {
18
+ return (_ctx, _cache) => {
19
+ const _component_el_image = vue.resolveComponent("el-image");
20
+ return vue.openBlock(), vue.createElementBlock("div", { class: "m-picture" }, [
21
+ vue.createVNode(_component_el_image, {
22
+ src: _ctx.src,
23
+ "preview-src-list": _ctx.previewSrcList,
24
+ fit: "cover",
25
+ style: vue.normalizeStyle({ width: _ctx.imgWidth, height: _ctx.imgHeight }),
26
+ "preview-teleported": true
27
+ }, null, 8, ["src", "preview-src-list", "style"])
28
+ ]);
29
+ };
23
30
  }
24
31
  });
25
- const pictureEmits = {};
32
+ var Picture = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "picture.vue"]]);
26
33
 
27
- exports.pictureEmits = pictureEmits;
28
- exports.pictureProps = pictureProps;
34
+ exports["default"] = Picture;
29
35
  //# sourceMappingURL=picture2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"picture2.js","sources":["../../../../../../../packages/components/picture/src/picture.ts"],"sourcesContent":["import { buildProps } from '@m-eleplus-crud/utils'\r\n\r\nimport type { ExtractPropTypes } from 'vue'\r\n\r\nexport const pictureProps = buildProps({\r\n /**\r\n * @description 图片url资源\r\n */\r\n src: {\r\n type: String,\r\n required: true,\r\n },\r\n /**\r\n * @description 预览图片url资源集合\r\n */\r\n previewSrcList: {\r\n type: Array,\r\n required: true,\r\n },\r\n /**\r\n * @description 图片宽度\r\n */\r\n imgWidth: {\r\n type: String,\r\n default: '70px',\r\n },\r\n /**\r\n * @description 图片高度\r\n */\r\n imgHeight: {\r\n type: String,\r\n default: '70px',\r\n },\r\n} as const)\r\nexport type PictureProps = ExtractPropTypes<typeof pictureProps>\r\n\r\nexport const pictureEmits = {}\r\nexport type PictureEmits = typeof pictureEmits\r\n"],"names":["buildProps"],"mappings":";;;;;;AAIO,MAAM,eAAeA,kBAAW,CAAA;AAAA,EAIrC,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EAIA,cAAgB,EAAA;AAAA,IACd,IAAM,EAAA,KAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,MAAA;AAAA,GACX;AAAA,EAIA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,MAAA;AAAA,GACX;AACF,CAAU,EAAA;AAGH,MAAM,eAAe;;;;;"}
1
+ {"version":3,"file":"picture2.js","sources":["../../../../../../../packages/components/picture/src/picture.vue"],"sourcesContent":["<template>\r\n <div class=\"m-picture\">\r\n <el-image\r\n :src=\"src\"\r\n :preview-src-list=\"previewSrcList\"\r\n fit=\"cover\"\r\n :style=\"{ width: imgWidth, height: imgHeight }\"\r\n :preview-teleported=\"true\"\r\n />\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { pictureEmits, pictureProps } from './picture'\r\n\r\nconst COMPONENT_NAME = 'MPicture'\r\ndefineOptions({\r\n name: COMPONENT_NAME,\r\n})\r\n\r\ndefineProps(pictureProps)\r\ndefineEmits(pictureEmits)\r\n</script>\r\n"],"names":["DO_defineComponent"],"mappings":";;;;;;;;;AAgBc,MAAA,cAAAA,mBAAA,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var qrcode$1 = require('./src/qrcode.js');
6
- var qrcode = require('./src/qrcode2.js');
5
+ var qrcode$1 = require('./src/qrcode2.js');
6
+ var qrcode = require('./src/qrcode.js');
7
7
  var install = require('../../utils/vue/install.js');
8
8
 
9
9
  const MQrcode = install.withInstall(qrcode$1["default"]);
@@ -2,74 +2,31 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var Qrcode$1 = require('qrcodejs2-fix');
7
- var qrcode = require('./qrcode2.js');
8
- var pluginVue_exportHelper = require('../../../../_virtual/plugin-vue_export-helper.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
6
+ var shared = require('@vue/shared');
9
7
 
10
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
-
12
- var Qrcode__default = /*#__PURE__*/_interopDefaultLegacy(Qrcode$1);
13
-
14
- const COMPONENT_NAME = "MQrcode";
15
- const __default__ = vue.defineComponent({
16
- name: COMPONENT_NAME
17
- });
18
- const _sfc_main = vue.defineComponent({
19
- ...__default__,
20
- props: qrcode.qrcodeProps,
21
- emits: qrcode.qrcodeEmits,
22
- setup(__props, { emit: __emit }) {
23
- const props = __props;
24
- const emit = __emit;
25
- const qrcodeRef = vue.ref();
26
- const alignComputed = vue.computed(() => {
27
- if (!props.align || props.align === "left") {
28
- return "flex-start";
29
- }
30
- if (props.align === "right") {
31
- return "flex-end";
32
- }
33
- return "center";
34
- });
35
- vue.watch(
36
- () => props.text,
37
- (newVal) => {
38
- if (!newVal)
39
- return;
40
- setTimeout(() => {
41
- qrcodeRef.value.innerHTML = "";
42
- new Qrcode__default["default"](qrcodeRef.value, {
43
- text: newVal,
44
- width: props.qrcodeWidth,
45
- height: props.qrcodeHeight
46
- });
47
- const img = qrcodeRef.value.querySelector("img");
48
- img.onclick = () => {
49
- emit("click", newVal);
50
- };
51
- }, 0);
52
- },
53
- {
54
- immediate: true
55
- }
56
- );
57
- return (_ctx, _cache) => {
58
- return vue.openBlock(), vue.createElementBlock(
59
- "div",
60
- {
61
- ref_key: "qrcodeRef",
62
- ref: qrcodeRef,
63
- class: "m-qrcode-box",
64
- style: vue.normalizeStyle("justify-content: " + alignComputed.value)
65
- },
66
- null,
67
- 4
68
- );
69
- };
8
+ const qrcodeProps = runtime.buildProps({
9
+ text: {
10
+ type: String,
11
+ required: true
12
+ },
13
+ align: {
14
+ type: String,
15
+ default: "left"
16
+ },
17
+ qrcodeWidth: {
18
+ type: Number,
19
+ default: 70
20
+ },
21
+ qrcodeHeight: {
22
+ type: Number,
23
+ default: 70
70
24
  }
71
25
  });
72
- var Qrcode = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "qrcode.vue"]]);
26
+ const qrcodeEmits = {
27
+ click: (val) => shared.isString(val)
28
+ };
73
29
 
74
- exports["default"] = Qrcode;
30
+ exports.qrcodeEmits = qrcodeEmits;
31
+ exports.qrcodeProps = qrcodeProps;
75
32
  //# sourceMappingURL=qrcode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"qrcode.js","sources":["../../../../../../../packages/components/qrcode/src/qrcode.vue"],"sourcesContent":["<template>\r\n <div\r\n ref=\"qrcodeRef\"\r\n class=\"m-qrcode-box\"\r\n :style=\"'justify-content: ' + alignComputed\"\r\n />\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { computed, ref, watch } from 'vue'\r\n// @ts-ignore\r\nimport Qrcode from 'qrcodejs2-fix'\r\nimport { qrcodeEmits, qrcodeProps } from './qrcode'\r\n\r\nconst COMPONENT_NAME = 'MQrcode'\r\ndefineOptions({\r\n name: COMPONENT_NAME,\r\n})\r\n\r\nconst props = defineProps(qrcodeProps)\r\nconst emit = defineEmits(qrcodeEmits)\r\n\r\nconst qrcodeRef = ref<any>()\r\n\r\nconst alignComputed = computed(() => {\r\n if (!props.align || props.align === 'left') {\r\n return 'flex-start'\r\n }\r\n if (props.align === 'right') {\r\n return 'flex-end'\r\n }\r\n return 'center'\r\n})\r\n\r\nwatch(\r\n () => props.text as string,\r\n (newVal: string) => {\r\n if (!newVal) return\r\n setTimeout(() => {\r\n qrcodeRef.value.innerHTML = ''\r\n new Qrcode(qrcodeRef.value, {\r\n text: newVal,\r\n width: props.qrcodeWidth,\r\n height: props.qrcodeHeight,\r\n })\r\n const img = qrcodeRef.value.querySelector('img')\r\n img.onclick = () => {\r\n emit('click', newVal)\r\n }\r\n }, 0)\r\n },\r\n {\r\n immediate: true,\r\n }\r\n)\r\n</script>\r\n"],"names":["DO_defineComponent","ref","computed","watch","Qrcode"],"mappings":";;;;;;;;;;;;;;AAec,MAAA,cAAAA,mBAAA,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;AAEA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAEb,IAAA,MAAM,YAAYC,OAAS,EAAA,CAAA;AAErB,IAAA,MAAA,aAAA,GAAgBC,aAAS,MAAM;AACnC,MAAA,IAAI,CAAC,KAAA,CAAM,KAAS,IAAA,KAAA,CAAM,UAAU,MAAQ,EAAA;AACnC,QAAA,OAAA,YAAA,CAAA;AAAA,OACT;AACI,MAAA,IAAA,KAAA,CAAM,UAAU,OAAS,EAAA;AACpB,QAAA,OAAA,UAAA,CAAA;AAAA,OACT;AACO,MAAA,OAAA,QAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,CAAC,MAAmB,KAAA;AAClB,QAAA,IAAI,CAAC,MAAA;AAAQ,UAAA,OAAA;AACb,QAAA,UAAA,CAAW,MAAM;AACf,UAAA,SAAA,CAAU,MAAM,SAAY,GAAA,EAAA,CAAA;AACxB,UAAA,IAAAC,0BAAA,CAAO,UAAU,KAAO,EAAA;AAAA,YAC1B,IAAM,EAAA,MAAA;AAAA,YACN,OAAO,KAAM,CAAA,WAAA;AAAA,YACb,QAAQ,KAAM,CAAA,YAAA;AAAA,WACf,CAAA,CAAA;AACD,UAAA,MAAM,GAAM,GAAA,SAAA,CAAU,KAAM,CAAA,aAAA,CAAc,KAAK,CAAA,CAAA;AAC/C,UAAA,GAAA,CAAI,UAAU,MAAM;AAClB,YAAA,IAAA,CAAK,SAAS,MAAM,CAAA,CAAA;AAAA,WACtB,CAAA;AAAA,WACC,CAAC,CAAA,CAAA;AAAA,OACN;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"qrcode.js","sources":["../../../../../../../packages/components/qrcode/src/qrcode.ts"],"sourcesContent":["import { buildProps, isString } from '@m-eleplus-crud/utils'\r\n\r\nimport type { ExtractPropTypes } from 'vue'\r\n\r\nexport const qrcodeProps = buildProps({\r\n /**\r\n * @description 二维码内容\r\n */\r\n text: {\r\n type: String,\r\n required: true,\r\n },\r\n /**\r\n * @description 对齐方式\r\n */\r\n align: {\r\n type: String,\r\n default: 'left',\r\n },\r\n /**\r\n * @description qrcode宽度\r\n */\r\n qrcodeWidth: {\r\n type: Number,\r\n default: 70,\r\n },\r\n /**\r\n * @description qrcode高度\r\n */\r\n qrcodeHeight: {\r\n type: Number,\r\n default: 70,\r\n },\r\n} as const)\r\nexport type QrcodeProps = ExtractPropTypes<typeof qrcodeProps>\r\n\r\nexport const qrcodeEmits = {\r\n click: (val: string) => isString(val),\r\n}\r\nexport type QrcodeEmits = typeof qrcodeEmits\r\n"],"names":["buildProps","isString"],"mappings":";;;;;;;AAIO,MAAM,cAAcA,kBAAW,CAAA;AAAA,EAIpC,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,MAAA;AAAA,GACX;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AACF,CAAU,EAAA;AAGH,MAAM,WAAc,GAAA;AAAA,EACzB,KAAO,EAAA,CAAC,GAAgB,KAAAC,eAAA,CAAS,GAAG,CAAA;AACtC;;;;;"}
@@ -2,31 +2,74 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
6
- var shared = require('@vue/shared');
5
+ var vue = require('vue');
6
+ var Qrcode$1 = require('qrcodejs2-fix');
7
+ var qrcode = require('./qrcode.js');
8
+ var pluginVue_exportHelper = require('../../../../_virtual/plugin-vue_export-helper.js');
7
9
 
8
- const qrcodeProps = runtime.buildProps({
9
- text: {
10
- type: String,
11
- required: true
12
- },
13
- align: {
14
- type: String,
15
- default: "left"
16
- },
17
- qrcodeWidth: {
18
- type: Number,
19
- default: 70
20
- },
21
- qrcodeHeight: {
22
- type: Number,
23
- default: 70
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
+
12
+ var Qrcode__default = /*#__PURE__*/_interopDefaultLegacy(Qrcode$1);
13
+
14
+ const COMPONENT_NAME = "MQrcode";
15
+ const __default__ = vue.defineComponent({
16
+ name: COMPONENT_NAME
17
+ });
18
+ const _sfc_main = vue.defineComponent({
19
+ ...__default__,
20
+ props: qrcode.qrcodeProps,
21
+ emits: qrcode.qrcodeEmits,
22
+ setup(__props, { emit: __emit }) {
23
+ const props = __props;
24
+ const emit = __emit;
25
+ const qrcodeRef = vue.ref();
26
+ const alignComputed = vue.computed(() => {
27
+ if (!props.align || props.align === "left") {
28
+ return "flex-start";
29
+ }
30
+ if (props.align === "right") {
31
+ return "flex-end";
32
+ }
33
+ return "center";
34
+ });
35
+ vue.watch(
36
+ () => props.text,
37
+ (newVal) => {
38
+ if (!newVal)
39
+ return;
40
+ setTimeout(() => {
41
+ qrcodeRef.value.innerHTML = "";
42
+ new Qrcode__default["default"](qrcodeRef.value, {
43
+ text: newVal,
44
+ width: props.qrcodeWidth,
45
+ height: props.qrcodeHeight
46
+ });
47
+ const img = qrcodeRef.value.querySelector("img");
48
+ img.onclick = () => {
49
+ emit("click", newVal);
50
+ };
51
+ }, 0);
52
+ },
53
+ {
54
+ immediate: true
55
+ }
56
+ );
57
+ return (_ctx, _cache) => {
58
+ return vue.openBlock(), vue.createElementBlock(
59
+ "div",
60
+ {
61
+ ref_key: "qrcodeRef",
62
+ ref: qrcodeRef,
63
+ class: "m-qrcode-box",
64
+ style: vue.normalizeStyle("justify-content: " + alignComputed.value)
65
+ },
66
+ null,
67
+ 4
68
+ );
69
+ };
24
70
  }
25
71
  });
26
- const qrcodeEmits = {
27
- click: (val) => shared.isString(val)
28
- };
72
+ var Qrcode = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "qrcode.vue"]]);
29
73
 
30
- exports.qrcodeEmits = qrcodeEmits;
31
- exports.qrcodeProps = qrcodeProps;
74
+ exports["default"] = Qrcode;
32
75
  //# sourceMappingURL=qrcode2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"qrcode2.js","sources":["../../../../../../../packages/components/qrcode/src/qrcode.ts"],"sourcesContent":["import { buildProps, isString } from '@m-eleplus-crud/utils'\r\n\r\nimport type { ExtractPropTypes } from 'vue'\r\n\r\nexport const qrcodeProps = buildProps({\r\n /**\r\n * @description 二维码内容\r\n */\r\n text: {\r\n type: String,\r\n required: true,\r\n },\r\n /**\r\n * @description 对齐方式\r\n */\r\n align: {\r\n type: String,\r\n default: 'left',\r\n },\r\n /**\r\n * @description qrcode宽度\r\n */\r\n qrcodeWidth: {\r\n type: Number,\r\n default: 70,\r\n },\r\n /**\r\n * @description qrcode高度\r\n */\r\n qrcodeHeight: {\r\n type: Number,\r\n default: 70,\r\n },\r\n} as const)\r\nexport type QrcodeProps = ExtractPropTypes<typeof qrcodeProps>\r\n\r\nexport const qrcodeEmits = {\r\n click: (val: string) => isString(val),\r\n}\r\nexport type QrcodeEmits = typeof qrcodeEmits\r\n"],"names":["buildProps","isString"],"mappings":";;;;;;;AAIO,MAAM,cAAcA,kBAAW,CAAA;AAAA,EAIpC,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,MAAA;AAAA,GACX;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AACF,CAAU,EAAA;AAGH,MAAM,WAAc,GAAA;AAAA,EACzB,KAAO,EAAA,CAAC,GAAgB,KAAAC,eAAA,CAAS,GAAG,CAAA;AACtC;;;;;"}
1
+ {"version":3,"file":"qrcode2.js","sources":["../../../../../../../packages/components/qrcode/src/qrcode.vue"],"sourcesContent":["<template>\r\n <div\r\n ref=\"qrcodeRef\"\r\n class=\"m-qrcode-box\"\r\n :style=\"'justify-content: ' + alignComputed\"\r\n />\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { computed, ref, watch } from 'vue'\r\n// @ts-ignore\r\nimport Qrcode from 'qrcodejs2-fix'\r\nimport { qrcodeEmits, qrcodeProps } from './qrcode'\r\n\r\nconst COMPONENT_NAME = 'MQrcode'\r\ndefineOptions({\r\n name: COMPONENT_NAME,\r\n})\r\n\r\nconst props = defineProps(qrcodeProps)\r\nconst emit = defineEmits(qrcodeEmits)\r\n\r\nconst qrcodeRef = ref<any>()\r\n\r\nconst alignComputed = computed(() => {\r\n if (!props.align || props.align === 'left') {\r\n return 'flex-start'\r\n }\r\n if (props.align === 'right') {\r\n return 'flex-end'\r\n }\r\n return 'center'\r\n})\r\n\r\nwatch(\r\n () => props.text as string,\r\n (newVal: string) => {\r\n if (!newVal) return\r\n setTimeout(() => {\r\n qrcodeRef.value.innerHTML = ''\r\n new Qrcode(qrcodeRef.value, {\r\n text: newVal,\r\n width: props.qrcodeWidth,\r\n height: props.qrcodeHeight,\r\n })\r\n const img = qrcodeRef.value.querySelector('img')\r\n img.onclick = () => {\r\n emit('click', newVal)\r\n }\r\n }, 0)\r\n },\r\n {\r\n immediate: true,\r\n }\r\n)\r\n</script>\r\n"],"names":["DO_defineComponent","ref","computed","watch","Qrcode"],"mappings":";;;;;;;;;;;;;;AAec,MAAA,cAAAA,mBAAA,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;AAEA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAEb,IAAA,MAAM,YAAYC,OAAS,EAAA,CAAA;AAErB,IAAA,MAAA,aAAA,GAAgBC,aAAS,MAAM;AACnC,MAAA,IAAI,CAAC,KAAA,CAAM,KAAS,IAAA,KAAA,CAAM,UAAU,MAAQ,EAAA;AACnC,QAAA,OAAA,YAAA,CAAA;AAAA,OACT;AACI,MAAA,IAAA,KAAA,CAAM,UAAU,OAAS,EAAA;AACpB,QAAA,OAAA,UAAA,CAAA;AAAA,OACT;AACO,MAAA,OAAA,QAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,CAAC,MAAmB,KAAA;AAClB,QAAA,IAAI,CAAC,MAAA;AAAQ,UAAA,OAAA;AACb,QAAA,UAAA,CAAW,MAAM;AACf,UAAA,SAAA,CAAU,MAAM,SAAY,GAAA,EAAA,CAAA;AACxB,UAAA,IAAAC,0BAAA,CAAO,UAAU,KAAO,EAAA;AAAA,YAC1B,IAAM,EAAA,MAAA;AAAA,YACN,OAAO,KAAM,CAAA,WAAA;AAAA,YACb,QAAQ,KAAM,CAAA,YAAA;AAAA,WACf,CAAA,CAAA;AACD,UAAA,MAAM,GAAM,GAAA,SAAA,CAAU,KAAM,CAAA,aAAA,CAAc,KAAK,CAAA,CAAA;AAC/C,UAAA,GAAA,CAAI,UAAU,MAAM;AAClB,YAAA,IAAA,CAAK,SAAS,MAAM,CAAA,CAAA;AAAA,WACtB,CAAA;AAAA,WACC,CAAC,CAAA,CAAA;AAAA,OACN;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;"}
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var search$1 = require('./src/search2.js');
6
- var search = require('./src/search.js');
5
+ var search$1 = require('./src/search.js');
6
+ var search = require('./src/search2.js');
7
7
  var install = require('../../utils/vue/install.js');
8
8
 
9
9
  const MSearch = install.withInstall(search$1["default"]);