web-component-gallery 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/amap.umd.js +9 -9
- package/dist/form.umd.js +5 -5
- package/dist/index.umd.js +9 -9
- package/dist/table.umd.js +1 -1
- package/dist/tree.umd.js +2 -2
- package/lib/form/Model.js +6 -7
- package/lib/form/components/ASelectCustom.vue +1 -1
- package/lib/form/components/AUpload.vue +15 -6
- package/lib/form/utils/render.js +12 -4
- package/lib/iframe/index.jsx +14 -4
- package/lib/style/mixins.less +1 -1
- package/lib/table/index.vue +2 -2
- package/package.json +1 -1
- package/plugins/lib/form/Model.js +6 -7
- package/plugins/lib/form/components/ASelectCustom.vue +1 -1
- package/plugins/lib/form/components/AUpload.vue +15 -6
- package/plugins/lib/form/utils/render.js +12 -4
- package/plugins/lib/iframe/index.jsx +14 -4
- package/plugins/lib/style/mixins.less +1 -1
- package/plugins/lib/table/index.vue +2 -2
- package/plugins/method/AMap.js +9 -4
- package/plugins/utils/AutoFlexible.js +0 -39
package/dist/amap.umd.js
CHANGED
|
@@ -8613,7 +8613,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var mome
|
|
|
8613
8613
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
8614
8614
|
|
|
8615
8615
|
"use strict";
|
|
8616
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/select/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/checkbox/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/pagination/index.js\");\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'TAntdSelect',\n components: {\n VNodes: {\n functional: true,\n render: (h, ctx) => ctx.props.vnodes\n },\n Select: ant_design_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n SelectOption: ant_design_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Option,\n Checkbox: ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Pagination: ant_design_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n },\n props: {\n value: {\n type: [String, Number, Array, Boolean, Object],\n default: undefined\n },\n // 多选 'multiple'\n mode: {\n type: String\n },\n // 是否支持输入\n isInput: {\n type: Boolean,\n default: false\n },\n placeholder: {\n type: String,\n default: '请选择'\n },\n // 选择框宽度\n width: {\n type: String\n },\n // 是否自定义设置下拉label\n customLabel: {\n type: String\n },\n // 传入的option数组中,要作为最终选择项的键值key\n valueKey: {\n type: String,\n default: 'value'\n },\n // 传入的option数组中,要作为显示项的键值名称\n labelKey: {\n type: String,\n default: 'label'\n },\n // 下拉框组件数据源\n options: {\n type: Array\n },\n // 是否显示分页\n isShowPagination: {\n type: Boolean,\n default: false\n },\n // 分页配置项\n paginationOption: {\n type: Object,\n default: () => {\n return {\n pageSize: 6,\n // 每页显示条数\n current: 1,\n // 当前页\n total: 0 // 总条数\n };\n }\n }\n },\n data() {\n return {\n selectOpen: false\n };\n },\n computed: {\n childSelectedValue: {\n get() {\n return this.value;\n },\n set(val) {\n this.$emit('input', val);\n }\n },\n attrs() {\n return {\n allowClear: true,\n showSearch: true,\n ...this.$attrs\n };\n },\n selectChecked: {\n get() {\n return this.childSelectedValue?.length === this.options?.length;\n },\n set(val) {\n this.$emit('input', val);\n }\n }\n },\n mounted() {\n document.addEventListener('click', this.bodyCloseMenus);\n },\n beforeDestroy() {\n document.removeEventListener('click', this.bodyCloseMenus);\n },\n methods: {\n filterOption(input, option) {\n this.isInput && (this.childSelectedValue = input);\n return option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n },\n // 点击空白区域\n bodyCloseMenus(e) {\n if (this.$refs.main && !this.$refs.main.contains(e.target)) {\n if (this.selectOpen == true) {\n this.selectOpen = false;\n }\n }\n },\n // 点击全选\n selectAll(val) {\n const options = JSON.parse(JSON.stringify(this.options));\n if (val.target.checked) {\n const childSelectedValue = options?.map(item => {\n return item[this.valueKey];\n });\n setTimeout(() => {\n this.$emit('input', childSelectedValue);\n }, 0);\n } else {\n this.$emit('input', null);\n }\n this.selectOpen = false;\n },\n handleSelect(value, option) {\n if (value) {\n this.selectOpen = false;\n }\n const options = this.options.find(e => e[this.valueKey] == value);\n this.$emit('select', value, options);\n },\n // 切换分页\n currentChange(val) {\n // console.log('切换分页', val)\n if (!this.mode) {\n this.childSelectedValue = null;\n }\n setTimeout(() => {\n this.selectOpen = true;\n }, 0);\n this.$emit('current-change', val);\n },\n // 自定义label显示\n customLabelHandler(item) {\n // eslint-disable-next-line no-eval\n return eval(this.customLabel);\n }\n }\n});\n\n//# sourceURL=webpack://mui/./plugins/lib/form/components/ASelectCustom.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
8616
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/select/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/checkbox/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/pagination/index.js\");\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'TAntdSelect',\n components: {\n VNodes: {\n functional: true,\n render: (h, ctx) => ctx.props.vnodes\n },\n Select: ant_design_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n SelectOption: ant_design_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Option,\n Checkbox: ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Pagination: ant_design_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n },\n props: {\n value: {\n type: [String, Number, Array, Boolean, Object],\n default: undefined\n },\n // 多选 'multiple'\n mode: {\n type: String\n },\n // 是否支持输入\n isInput: {\n type: Boolean,\n default: false\n },\n placeholder: {\n type: String,\n default: '请选择'\n },\n // 选择框宽度\n width: {\n type: String\n },\n // 是否自定义设置下拉label\n customLabel: {\n type: String\n },\n // 传入的option数组中,要作为最终选择项的键值key\n valueKey: {\n type: String,\n default: 'value'\n },\n // 传入的option数组中,要作为显示项的键值名称\n labelKey: {\n type: String,\n default: 'label'\n },\n // 下拉框组件数据源\n options: {\n type: Array\n },\n // 是否显示分页\n isShowPagination: {\n type: Boolean,\n default: false\n },\n // 分页配置项\n paginationOption: {\n type: Object,\n default: () => {\n return {\n pageSize: 6,\n // 每页显示条数\n current: 1,\n // 当前页\n total: 0 // 总条数\n };\n }\n }\n },\n data() {\n return {\n selectOpen: false\n };\n },\n computed: {\n childSelectedValue: {\n get() {\n return this.value;\n },\n set(val) {\n this.$emit('input', val);\n }\n },\n attrs() {\n return {\n allowClear: true,\n showSearch: true,\n ...this.$attrs\n };\n },\n selectChecked: {\n get() {\n return this.childSelectedValue?.length === this.options?.length;\n },\n set(val) {\n this.$emit('input', val);\n }\n }\n },\n mounted() {\n document.addEventListener('click', this.bodyCloseMenus);\n },\n beforeDestroy() {\n document.removeEventListener('click', this.bodyCloseMenus);\n },\n methods: {\n filterOption(input, option) {\n this.isInput && (this.childSelectedValue = input);\n return option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n },\n // 点击空白区域\n bodyCloseMenus(e) {\n if (this.$refs.main && !this.$refs.main.contains(e.target)) {\n if (this.selectOpen == true) {\n this.selectOpen = false;\n }\n }\n },\n // 点击全选\n selectAll(val) {\n const options = JSON.parse(JSON.stringify(this.options));\n if (val.target.checked) {\n const childSelectedValue = options?.map(item => {\n return item[this.valueKey];\n });\n setTimeout(() => {\n this.$emit('input', childSelectedValue);\n }, 0);\n } else {\n this.$emit('input', null);\n }\n this.selectOpen = false;\n },\n handleSelect(value, option) {\n if (value) {\n this.selectOpen = false;\n }\n const options = this.options.find(e => e[this.valueKey] == value);\n options[this.valueKey] && this.$emit('select', value, options);\n },\n // 切换分页\n currentChange(val) {\n // console.log('切换分页', val)\n if (!this.mode) {\n this.childSelectedValue = null;\n }\n setTimeout(() => {\n this.selectOpen = true;\n }, 0);\n this.$emit('current-change', val);\n },\n // 自定义label显示\n customLabelHandler(item) {\n // eslint-disable-next-line no-eval\n return eval(this.customLabel);\n }\n }\n});\n\n//# sourceURL=webpack://mui/./plugins/lib/form/components/ASelectCustom.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
8617
8617
|
|
|
8618
8618
|
/***/ }),
|
|
8619
8619
|
|
|
@@ -8646,7 +8646,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_
|
|
|
8646
8646
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
8647
8647
|
|
|
8648
8648
|
"use strict";
|
|
8649
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/icon/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/upload/index.js\");\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n model: {\n prop: 'value',\n event: 'handleFileUpload'\n },\n components: {\n Icon: ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n
|
|
8649
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/icon/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/button/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/upload/index.js\");\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n model: {\n prop: 'value',\n event: 'handleFileUpload'\n },\n components: {\n Icon: ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Button: ant_design_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n Upload: ant_design_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n },\n props: {\n value: {\n type: [String, Array],\n default: () => []\n },\n /* 提示文字 */\n tips: String,\n /* 上传文件数量限制 */\n uploadLen: {\n type: Number,\n default: 1\n },\n /* 上传接口 */\n fileUploadUrl: String,\n /* 显示需要pin的接口前缀 */\n filePrefixUrl: String,\n /* 上传文件格式限制 */\n fileAccept: String,\n /* 上传文件携带Headers信息 */\n fileHeaders: Object,\n /* 删除文件函数回调 */\n fileRemoveHandle: Function\n },\n data() {\n return {\n fileList: [],\n modalValue: []\n };\n },\n watch: {\n value() {\n this.setResetFile();\n }\n },\n computed: {\n uploadAttrs() {\n return {\n listType: 'picture-card',\n prefix: this.filePrefixUrl ?? this.$https.FILEURL,\n action: this.fileUploadUrl ?? this.$https.UPLOADURL,\n headers: this.fileHeaders ?? this.$store.getters.fileHeaders,\n ...this.$attrs\n };\n }\n },\n mounted() {\n this.setResetFile();\n },\n methods: {\n setResetFile() {\n let arrayObject;\n try {\n arrayObject = JSON.parse(this.value);\n } catch (e) {\n arrayObject = [].concat(this.value);\n }\n this.modalValue = arrayObject ?? [];\n this.fileList = this.modalValue.map(file => ({\n ...file,\n url: `${this.uploadAttrs.prefix}${file.url}`,\n type: file.contentType,\n status: 'done'\n }));\n },\n handleFilePreview({\n uid,\n contentType,\n url\n }) {\n let suffix = url.substr(url.lastIndexOf('.') + 1);\n const pictureSuffix = ['JPEG', 'JPG', 'GIF', 'PNG', 'TIFF', 'WEBP', 'BMP'];\n if (contentType.includes('image') || pictureSuffix.includes(suffix.toUpperCase())) {\n this.$viewerApi({\n options: {\n url: 'url',\n toolbar: true,\n initialViewIndex: this.fileList.findIndex(file => file.url == url)\n },\n images: this.fileList\n });\n return;\n }\n this.$dialog('Brower', {\n data: url\n }, {\n title: '预览文件',\n width: 1104,\n height: 848,\n centered: true,\n maskClosable: false,\n footer: false,\n bodyStyle: {\n height: 'calc( 100% - 54px )'\n }\n });\n },\n handleFileChange({\n file,\n fileList\n }) {\n file.status == 'uploading' && (this.fileList = fileList);\n switch (file.status) {\n case 'removed':\n const params = {\n id: file.uid\n };\n const requestHandle = this.fileRemoveHandle ? this.fileRemoveHandle(params) : this.$store.dispatch('fileRemoveHandle', params);\n requestHandle.then(Response => {\n const i = this.modalValue.findIndex(e => e.uid == file.uid);\n this.modalValue.splice(i, 1);\n this.$emit('handleFileUpload', JSON.stringify(this.modalValue));\n });\n break;\n case 'done':\n const {\n data\n } = file.response;\n const uploadFileObj = {\n ...data,\n uid: data.id\n };\n delete uploadFileObj.id;\n this.modalValue.push(uploadFileObj);\n this.$emit('handleFileUpload', JSON.stringify(this.modalValue));\n break;\n }\n }\n }\n});\n\n//# sourceURL=webpack://mui/./plugins/lib/form/components/AUpload.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
8650
8650
|
|
|
8651
8651
|
/***/ }),
|
|
8652
8652
|
|
|
@@ -8877,7 +8877,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
8877
8877
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
8878
8878
|
|
|
8879
8879
|
"use strict";
|
|
8880
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; },\n/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }\n/* harmony export */ });\nvar render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"TAntdUpload\"\n }, [_c(\"Upload\", _vm._b({\n attrs: {\n name: \"file\",\n \"file-list\": _vm.fileList,\n
|
|
8880
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; },\n/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }\n/* harmony export */ });\nvar render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"TAntdUpload\"\n }, [_c(\"Upload\", _vm._b({\n attrs: {\n name: \"file\",\n \"file-list\": _vm.fileList,\n accept: _vm.fileAccept\n },\n on: {\n change: _vm.handleFileChange,\n preview: _vm.handleFilePreview,\n reject: function ($event) {\n return _vm.$message.error(`上传文件类型只能为${_vm.fileAccept}`);\n }\n }\n }, \"Upload\", _vm.uploadAttrs, false), [_vm.uploadAttrs.listType === \"text\" ? _c(\"Button\", {\n attrs: {\n type: \"primary\"\n }\n }, [_c(\"Icon\", {\n attrs: {\n type: \"upload\"\n }\n }), _vm._v(\"上传\\n \")], 1) : [!_vm.fileList || _vm.fileList.length < _vm.uploadLen ? _c(\"Icon\", {\n staticStyle: {\n fontsize: \"36px\"\n },\n attrs: {\n type: \"plus\"\n }\n }) : _vm._e()]], 2), _vm._v(\" \"), _vm.tips ? _c(\"span\", {\n staticClass: \"tips\"\n }, [_vm._v(_vm._s(_vm.tips))]) : _vm._e()], 1);\n};\nvar staticRenderFns = [];\nrender._withStripped = true;\n\n\n//# sourceURL=webpack://mui/./plugins/lib/form/components/AUpload.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet%5B1%5D.rules%5B2%5D!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
8881
8881
|
|
|
8882
8882
|
/***/ }),
|
|
8883
8883
|
|
|
@@ -9108,7 +9108,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_
|
|
|
9108
9108
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
9109
9109
|
|
|
9110
9110
|
"use strict";
|
|
9111
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vue/babel-helper-vue-jsx-merge-props */ \"./node_modules/@vue/babel-helper-vue-jsx-merge-props/dist/helper.js\");\n/* harmony import */ var _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/form-model/index.js\");\n/* harmony import */ var _utils_render__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/render */ \"./plugins/lib/form/utils/render.js\");\n/* harmony import */ var _style_Model_less__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./style/Model.less */ \"./plugins/lib/form/style/Model.less\");\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Model',\n model: {\n prop: 'value',\n event: 'Change:Model'\n },\n data() {\n return {\n formRules: {}\n };\n },\n props: {\n value: {\n type: Object,\n default: () => ({})\n },\n /* Form布局方式 */\n layout: {\n type: String,\n default: 'vertical'\n },\n /* 一行显示几个 PS:最多5个 */\n layoutSize: {\n type: Number,\n default: 4,\n validator: value => {\n return value <= 5;\n }\n },\n /* 表单项配置 */\n formSetting: Array\n },\n computed: {\n form: {\n get() {\n /** 校验单独赋值延迟的字段 */\n for (const k in this.value) {\n Object.hasOwnProperty.call(this.formRules, k) && this.$refs.FormModel?.validateField(k);\n }\n return this.value;\n },\n set(value) {\n this.$emit('Change:Model', value);\n }\n },\n formAttrs() {\n let attr = {\n labelCol: {\n span: 4\n },\n wrapperCol: {\n span: 20\n },\n ...this.$attrs\n };\n this.layout === 'vertical' && (delete attr.labelCol, delete attr.wrapperCol);\n return attr;\n },\n filterSetting() {\n return this.formSetting.filter(settingItem => !settingItem.hidden);\n }\n },\n watch: {\n filterSetting: {\n handler(newVal, oldVal) {\n newVal.forEach(node => this.$set(this.formRules, node.model, _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItemRule.call(this, node)));\n },\n immediate: true\n }\n },\n mounted() {\n this.$emit('update:refForm', this.$refs.FormModel);\n },\n methods: {\n /** 包含单表单项,多表单项,动态增减表单项合并处理 */\n setModelRender(props) {\n const h = this.$createElement;\n const dynamicModel = this.form[props.model];\n return (\n /** \r\n * multiple为动态多项\r\n * multipleConfig为配置的动态项数据 */\n h(\"div\", {\n \"class\": props.multiple && ['MultipleForm'],\n \"attrs\": {\n ...{\n style: _utils_render__WEBPACK_IMPORTED_MODULE_1__.getFormWidth.call(this, props, this.layoutSize)\n }\n }\n }, [this.$scopedSlots[`${props.model}Tips`] && this.$scopedSlots[`${props.model}Tips`](props), /** 处理动态增减表单 */\n dynamicModel instanceof Array && props.multiple ? dynamicModel.map((modelItem, index) => props.multipleConfig.map((configItem, key) => {\n /** 为动态项时重新定义绑定key、prop等来进行检验 */\n /** 目前还有一个动态项layoutSize排版问题 */\n const childAttrs = {\n key: index,\n prop: `${props.model}.${index}.${configItem.model}`,\n
|
|
9111
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vue/babel-helper-vue-jsx-merge-props */ \"./node_modules/@vue/babel-helper-vue-jsx-merge-props/dist/helper.js\");\n/* harmony import */ var _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/form-model/index.js\");\n/* harmony import */ var _utils_render__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/render */ \"./plugins/lib/form/utils/render.js\");\n/* harmony import */ var _style_Model_less__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./style/Model.less */ \"./plugins/lib/form/style/Model.less\");\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Model',\n model: {\n prop: 'value',\n event: 'Change:Model'\n },\n data() {\n return {\n formRules: {}\n };\n },\n props: {\n value: {\n type: Object,\n default: () => ({})\n },\n /* Form布局方式 */\n layout: {\n type: String,\n default: 'vertical'\n },\n /* 一行显示几个 PS:最多5个 */\n layoutSize: {\n type: Number,\n default: 4,\n validator: value => {\n return value <= 5;\n }\n },\n /* 表单项配置 */\n formSetting: Array\n },\n computed: {\n form: {\n get() {\n /** 校验单独赋值延迟的字段 */\n for (const k in this.value) {\n Object.hasOwnProperty.call(this.formRules, k) && this.$refs.FormModel?.validateField(k);\n }\n return this.value;\n },\n set(value) {\n this.$emit('Change:Model', value);\n }\n },\n formAttrs() {\n let attr = {\n labelCol: {\n span: 4\n },\n wrapperCol: {\n span: 20\n },\n ...this.$attrs\n };\n this.layout === 'vertical' && (delete attr.labelCol, delete attr.wrapperCol);\n return attr;\n },\n filterSetting() {\n return this.formSetting.filter(settingItem => !settingItem.hidden);\n }\n },\n watch: {\n filterSetting: {\n handler(newVal, oldVal) {\n newVal.forEach(node => this.$set(this.formRules, node.model, _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItemRule.call(this, node)));\n },\n immediate: true\n }\n },\n mounted() {\n this.$emit('update:refForm', this.$refs.FormModel);\n },\n methods: {\n /** 包含单表单项,多表单项,动态增减表单项合并处理 */\n setModelRender(props) {\n const h = this.$createElement;\n const dynamicModel = this.form[props.model];\n return (\n /** \r\n * multiple为动态多项\r\n * multipleConfig为配置的动态项数据 */\n h(\"div\", {\n \"class\": props.multiple && ['MultipleForm'],\n \"attrs\": {\n ...{\n style: _utils_render__WEBPACK_IMPORTED_MODULE_1__.getFormWidth.call(this, props, this.layoutSize)\n }\n }\n }, [this.$scopedSlots[`${props.model}Tips`] && this.$scopedSlots[`${props.model}Tips`](props), /** 处理动态增减表单 */\n dynamicModel instanceof Array && props.multiple ? dynamicModel.map((modelItem, index) => props.multipleConfig.map((configItem, key) => {\n /** 为动态项时重新定义绑定key、prop等来进行检验 */\n /** 目前还有一个动态项layoutSize排版问题 */\n const childAttrs = {\n key: index,\n prop: `${props.model}.${index}.${configItem.model}`,\n style: _utils_render__WEBPACK_IMPORTED_MODULE_1__.getFormWidth.call(this, configItem, this.layoutSize ?? props.layoutSize),\n rules: _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItemRule.call(this, configItem, props),\n parentModel: props.model\n };\n return _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItem.call(this, h, modelItem, configItem, childAttrs);\n })) : _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItem.call(this, h, this.form, props), this.$scopedSlots[`${props.model}Operate`] && this.$scopedSlots[`${props.model}Operate`](props)])\n );\n },\n /** 提交测验 */\n formSubmit() {\n return new Promise((resolve, reject) => {\n this.$refs.FormModel.validate().then(resolve).catch(err => this.$nextTick(() => {\n const errorDiv = document.getElementsByClassName('has-error');\n errorDiv[0].scrollIntoView({\n behavior: \"smooth\",\n block: \"center\"\n });\n }));\n });\n }\n },\n render() {\n const h = arguments[0];\n const {\n layout,\n formAttrs,\n setModelRender\n } = this;\n return h(ant_design_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"], _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0___default()([{\n \"ref\": \"FormModel\",\n \"class\": \"FormModel\"\n }, {\n \"props\": {\n model: this.form,\n rules: this.formRules,\n layout,\n ...formAttrs\n }\n }]), [this.$slots.default ?? this.filterSetting.map(props => setModelRender(props))]);\n }\n});\n\n//# sourceURL=webpack://mui/./plugins/lib/form/Model.js?");
|
|
9112
9112
|
|
|
9113
9113
|
/***/ }),
|
|
9114
9114
|
|
|
@@ -9130,7 +9130,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
9130
9130
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
9131
9131
|
|
|
9132
9132
|
"use strict";
|
|
9133
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFormWidth: function() { return /* binding */ getFormWidth; },\n/* harmony export */ setFormItem: function() { return /* binding */ setFormItem; },\n/* harmony export */ setFormItemRule: function() { return /* binding */ setFormItemRule; }\n/* harmony export */ });\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/form-model/index.js\");\n/* harmony import */ var _components_RenderComp_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../components/RenderComp.vue */ \"./plugins/lib/form/components/RenderComp.vue\");\n\n\nconst FormModelItem = ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"].Item;\n\n/** 根据layoutSize来进行距离及大小切分 */\nfunction getFormWidth(child, layoutSize) {\n if (this.layout === 'vertical') return `flex: 0 1 calc((${100 / layoutSize * (child.size ?? 1)}% - 24px));margin-right:24px;`;\n return `flex: 0 1 ${100 / layoutSize * (child.size ?? 1)}%;`;\n}\n\n/** 动态设置单个表单项规则 (同时解决处理动态增减表单项操作 */\nfunction setFormItemRule(node, nodeParent = {}) {\n const required = node.required ?? nodeParent.required ?? this.formAttrs.required ?? true;\n\n /** node.placeholder与组件内的提示文字位置不对等 */\n const message = node.attrs?.placeholder || (/(select|picker|radio|upload)/.test((node.is ?? 'Input').toLowerCase()) ? '请选择' : '请输入') + (node.label || '');\n const rules = [{\n required,\n message,\n trigger: ['change', 'blur']\n }].concat((node.rules || []).filter(i => {\n i.pattern && (i.pattern = new RegExp(i.pattern));\n return i;\n }));\n return rules;\n}\n\n/** 动态渲染表单项 */\nfunction setFormItem(h, vModel, child, childAttrs) {\n const {\n layout,\n layoutSize,\n $scopedSlots\n } = this;\n let formItemAttrs = childAttrs ?? {\n key: child.model,\n prop: child.model,\n
|
|
9133
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFormWidth: function() { return /* binding */ getFormWidth; },\n/* harmony export */ setFormItem: function() { return /* binding */ setFormItem; },\n/* harmony export */ setFormItemRule: function() { return /* binding */ setFormItemRule; }\n/* harmony export */ });\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/form-model/index.js\");\n/* harmony import */ var _components_RenderComp_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../components/RenderComp.vue */ \"./plugins/lib/form/components/RenderComp.vue\");\n\n\nconst FormModelItem = ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"].Item;\n\n/** 根据layoutSize来进行距离及大小切分 */\nfunction getFormWidth(child, layoutSize) {\n if (this.layout === 'vertical') return `flex: 0 1 calc((${100 / layoutSize * (child.size ?? 1)}% - 24px));margin-right:24px;`;\n return `flex: 0 1 ${100 / layoutSize * (child.size ?? 1)}%;`;\n}\n\n/** 动态设置单个表单项规则 (同时解决处理动态增减表单项操作 */\nfunction setFormItemRule(node, nodeParent = {}) {\n const required = node.required ?? nodeParent.required ?? this.formAttrs.required ?? true;\n\n /** node.placeholder与组件内的提示文字位置不对等 */\n const message = node.attrs?.placeholder || (/(select|picker|radio|upload)/.test((node.is ?? 'Input').toLowerCase()) ? '请选择' : '请输入') + (node.label || '');\n const rules = [{\n required,\n message,\n trigger: ['change', 'blur']\n }].concat((node.rules || []).filter(i => {\n i.pattern && (i.pattern = new RegExp(i.pattern));\n return i;\n }));\n return rules;\n}\n\n/** 动态渲染表单项 */\nfunction setFormItem(h, vModel, child, childAttrs) {\n const {\n layout,\n layoutSize,\n $scopedSlots\n } = this;\n let formItemAttrs = childAttrs ?? {\n key: child.model,\n prop: child.model,\n colon: !(layout == 'inline')\n };\n const slotsName = (childAttrs?.parentModel ?? '') + child.model;\n const {\n label,\n customLabel\n } = child;\n return h(FormModelItem, {\n \"class\": [{\n FormLineVertical: child.size === layoutSize && layout === 'vertical'\n }, {\n FormLine: child.size === layoutSize\n }],\n \"attrs\": {\n ...formItemAttrs\n }\n }, [h(\"template\", {\n \"slot\": \"label\"\n }, [customLabel ? customLabel(vModel) : h(\"span\", [label])]), $scopedSlots[child.model] ? $scopedSlots[child.model](child) : h(_components_RenderComp_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"], {\n \"attrs\": {\n \"component\": child.is,\n ...child.attrs\n },\n \"on\": {\n ...child.event\n },\n \"model\": {\n value: vModel[child.model],\n callback: $$v => {\n this.$set(vModel, child.model, $$v);\n }\n }\n }), $scopedSlots[`${slotsName}Handle`] && $scopedSlots[`${slotsName}Handle`](formItemAttrs)]);\n}\n\n//# sourceURL=webpack://mui/./plugins/lib/form/utils/render.js?");
|
|
9134
9134
|
|
|
9135
9135
|
/***/ }),
|
|
9136
9136
|
|
|
@@ -9163,7 +9163,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var vue_
|
|
|
9163
9163
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
9164
9164
|
|
|
9165
9165
|
"use strict";
|
|
9166
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ant-design-vue/es/_util/vue-types */ \"./node_modules/ant-design-vue/es/_util/vue-types/index.js\");\n/* harmony import */ var _modal_index_jsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../modal/index.jsx */ \"./plugins/lib/modal/index.jsx\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/spin/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/icon/index.js\");\n/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./events.js */ \"./plugins/lib/iframe/events.js\");\n/* harmony import */ var _index_less__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./index.less */ \"./plugins/lib/iframe/index.less\");\n\n\n\n\n// const IconFont = Icon.createFromIconfontCN({\n// scriptUrl: '//at.alicdn.com/t/c/font_4641025_trbtf28ob8g.js'\n// })\n\n// Spin.setDefaultIndicator({\n// indicator: {\n// render() {\n// return <IconFont type=\"icon-loading\" />\n// }\n// }\n// })\n\nant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"].setDefaultIndicator({\n indicator: {\n render() {\n const h = arguments[0];\n return h(ant_design_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n \"attrs\": {\n \"type\": \"loading\"\n }\n });\n }\n }\n});\n\n\nconst IframeContainerProps = {\n activeKey: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].string,\n checkedKey: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].string.def('name'),\n linkurlKey: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].string.def('linkUrl'),\n operatesArr: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].array,\n componentsArr: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].array,\n postMessage: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].object\n};\nconst IframeContainer = {\n name: 'IframeComp',\n props: IframeContainerProps,\n data() {\n return {\n /** 页面加载状态 */\n compSpinning: true,\n componentAdd: true,\n /** 弹窗加载状态 */\n modalSpinning: true,\n modalComponents: {}\n };\n },\n render(h, content) {\n const {\n $props,\n modalComponents\n } = this;\n const {\n activeKey,\n checkedKey,\n componentsArr\n } = $props;\n const IframeComponents = componentsArr.map(componentItem => {\n const isActive = activeKey === componentItem[checkedKey];\n return this.getIframeComponent(componentItem, isActive);\n });\n const modalKeys = Object.keys(modalComponents);\n const ModalOperates = modalKeys.map(modalKey => {\n return h(_modal_index_jsx__WEBPACK_IMPORTED_MODULE_0__[\"default\"], {\n \"props\": {\n ...{\n ...modalComponents[modalKey],\n cancelHandle: () => this.closeModalHandle(modalKey)\n }\n }\n }, [h(ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n \"attrs\": {\n \"spinning\": this.modalSpinning,\n \"tip\": \"加载中...\"\n }\n }, [this.getIframeComponent(modalComponents[modalKey], true)])]);\n });\n return h(\"div\", {\n \"class\": \"ant-pro-grid-content-page\"\n }, [h(ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n \"attrs\": {\n \"spinning\": this.compSpinning,\n \"tip\": \"加载中...\"\n }\n }, [IframeComponents]), ModalOperates]);\n },\n watch: {\n activeKey(newVal) {\n this.modalComponents = {};\n },\n componentsArr: {\n handler(newVal, oldVal) {\n this.componentAdd = newVal.length > oldVal.length;\n this.postCompMessage();\n },\n deep: true\n }\n },\n computed: {\n activeKeyAndParams() {\n const {\n activeKey,\n postMessage,\n componentsArr\n } = this;\n return {\n activeKey,\n postMessage,\n componentsArr\n };\n }\n },\n created() {\n _events_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].$on('modalOpen', ({\n name,\n params\n }) => {\n const activeModal = this.switchModalHandle(name, params);\n activeModal && (this.componentAdd = true, this.$set(this.modalComponents, name, {\n mode: params.mode,\n visible: true,\n ...activeModal\n }));\n });\n _events_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].$on('modalClose', ({\n name,\n params\n }) => {\n this.closeModalHandle(name);\n params && (this.componentAdd = false, this.postCompMessage(params));\n });\n _events_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].$on('modalGoBack', ({\n name,\n params\n }, closeModal) => {\n this.componentAdd = false;\n this.closeModalHandle(closeModal);\n this.switchModalHandle(name, params);\n });\n },\n mounted() {\n // this.postCompMessage()\n },\n methods: {\n postCompMessage(data = {}) {\n const {\n componentsArr,\n activeKey,\n postMessage\n } = this;\n componentsArr.length && this.postIframeMessage(componentsArr, {\n type: 'refreshPage',\n activeKey,\n data\n });\n },\n closeModalHandle(name) {\n this.modalComponents[name].visible = false;\n delete this.modalComponents[name];\n },\n switchModalHandle(name, data) {\n const {\n operatesArr,\n checkedKey\n } = this;\n const activeModal = operatesArr.find(operatesItem => operatesItem[checkedKey] === name);\n activeModal && this.postIframeMessage(operatesArr, {\n type: 'refreshModal',\n activeKey: name,\n data
|
|
9166
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ant-design-vue/es/_util/vue-types */ \"./node_modules/ant-design-vue/es/_util/vue-types/index.js\");\n/* harmony import */ var _modal_index_jsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../modal/index.jsx */ \"./plugins/lib/modal/index.jsx\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/spin/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/icon/index.js\");\n/* harmony import */ var _events_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./events.js */ \"./plugins/lib/iframe/events.js\");\n/* harmony import */ var _index_less__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./index.less */ \"./plugins/lib/iframe/index.less\");\n\n\n\n\n// const IconFont = Icon.createFromIconfontCN({\n// scriptUrl: '//at.alicdn.com/t/c/font_4641025_trbtf28ob8g.js'\n// })\n\n// Spin.setDefaultIndicator({\n// indicator: {\n// render() {\n// return <IconFont type=\"icon-loading\" />\n// }\n// }\n// })\n\nant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"].setDefaultIndicator({\n indicator: {\n render() {\n const h = arguments[0];\n return h(ant_design_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n \"attrs\": {\n \"type\": \"loading\"\n }\n });\n }\n }\n});\n\n\nconst IframeContainerProps = {\n activeKey: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].string,\n checkedKey: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].string.def('name'),\n linkurlKey: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].string.def('linkUrl'),\n operatesArr: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].array,\n componentsArr: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].array,\n postMessage: ant_design_vue_es_util_vue_types__WEBPACK_IMPORTED_MODULE_5__[\"default\"].object\n};\nconst IframeContainer = {\n name: 'IframeComp',\n props: IframeContainerProps,\n data() {\n return {\n /** 页面加载状态 */\n compSpinning: true,\n componentAdd: true,\n /** 弹窗加载状态 */\n modalSpinning: true,\n modalComponents: {}\n };\n },\n render(h, content) {\n const {\n $props,\n modalComponents\n } = this;\n const {\n activeKey,\n checkedKey,\n componentsArr\n } = $props;\n const IframeComponents = componentsArr.map(componentItem => {\n const isActive = activeKey === componentItem[checkedKey];\n return this.getIframeComponent(componentItem, isActive);\n });\n const modalKeys = Object.keys(modalComponents);\n const ModalOperates = modalKeys.map(modalKey => {\n return h(_modal_index_jsx__WEBPACK_IMPORTED_MODULE_0__[\"default\"], {\n \"props\": {\n ...{\n ...modalComponents[modalKey],\n cancelHandle: () => this.closeModalHandle(modalKey)\n }\n }\n }, [h(ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n \"attrs\": {\n \"spinning\": this.modalSpinning,\n \"tip\": \"加载中...\"\n }\n }, [this.getIframeComponent(modalComponents[modalKey], true)])]);\n });\n return h(\"div\", {\n \"class\": \"ant-pro-grid-content-page\"\n }, [h(ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n \"attrs\": {\n \"spinning\": this.compSpinning,\n \"tip\": \"加载中...\"\n }\n }, [IframeComponents]), ModalOperates]);\n },\n watch: {\n activeKey(newVal) {\n this.modalComponents = {};\n },\n componentsArr: {\n handler(newVal, oldVal) {\n this.componentAdd = newVal.length > oldVal.length;\n this.postCompMessage();\n },\n deep: true\n }\n },\n computed: {\n activeKeyAndParams() {\n const {\n activeKey,\n postMessage,\n componentsArr\n } = this;\n return {\n activeKey,\n postMessage,\n componentsArr\n };\n }\n },\n created() {\n _events_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].$on('modalOpen', ({\n name,\n params\n }) => {\n const activeModal = this.switchModalHandle(name, params);\n activeModal && (this.componentAdd = true, this.$set(this.modalComponents, name, {\n mode: params.mode,\n visible: true,\n ...activeModal\n }));\n });\n _events_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].$on('modalClose', ({\n name,\n params\n }) => {\n this.closeModalHandle(name);\n params && (this.componentAdd = false, this.postCompMessage(params));\n });\n _events_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].$on('modalGoBack', ({\n name,\n params\n }, closeModal) => {\n this.componentAdd = false;\n this.closeModalHandle(closeModal);\n this.switchModalHandle(name, params);\n });\n },\n mounted() {\n // this.postCompMessage()\n },\n methods: {\n postCompMessage(data = {}) {\n const {\n componentsArr,\n activeKey,\n postMessage\n } = this;\n componentsArr.length && this.postIframeMessage(componentsArr, {\n type: 'refreshPage',\n activeKey,\n data\n });\n },\n closeModalHandle(name) {\n this.modalComponents[name].visible = false;\n delete this.modalComponents[name];\n },\n switchModalHandle(name, data) {\n const {\n operatesArr,\n checkedKey\n } = this;\n const activeModal = operatesArr.find(operatesItem => operatesItem[checkedKey] === name);\n activeModal && this.postIframeMessage(operatesArr, {\n type: 'refreshModal',\n activeKey: name,\n data\n });\n return {\n ...activeModal,\n ...(data.attrs ?? {})\n };\n },\n postIframeMessage(components, iframeConfig) {\n const {\n type,\n activeKey,\n data = {}\n } = iframeConfig;\n this.$nextTick(() => {\n const {\n checkedKey,\n linkurlKey,\n postMessage\n } = this;\n const activeComp = components.find(componentsItem => activeKey === componentsItem[checkedKey]);\n const refKey = activeComp[linkurlKey];\n const isModal = refKey.includes('?type=modal');\n const spinningKey = isModal ? 'modalSpinning' : 'compSpinning';\n const iframeRef = () => {\n const _self = this;\n const iframe = this.$refs[refKey];\n const iframeWin = this.$refs[refKey]?.contentWindow;\n const iframeOptions = {\n type,\n params: {\n data,\n name: activeKey,\n title: isModal ? activeComp.title : activeComp.meta.title,\n routeQuery: postMessage\n }\n };\n this.componentAdd ? (this[spinningKey] = true, iframe.onload = function () {\n _self[spinningKey] = false;\n iframeWin.postMessage(iframeOptions, '*');\n }) : iframeWin.postMessage(iframeOptions, '*');\n };\n if (isModal) {\n const timer = setTimeout(() => {\n iframeRef();\n clearTimeout(timer);\n }, 0);\n return;\n }\n iframeRef();\n });\n },\n getIframeComponent(componentItem, isActive) {\n const h = this.$createElement;\n const {\n linkurlKey,\n checkedKey\n } = this;\n return h(\"iframe\", {\n \"attrs\": {\n \"width\": \"100%\",\n \"height\": \"100%\",\n \"src\": componentItem[linkurlKey]\n },\n \"ref\": componentItem[linkurlKey],\n \"key\": componentItem[checkedKey],\n \"style\": {\n border: 'none',\n display: isActive ? 'block' : 'none'\n }\n });\n }\n }\n};\nIframeContainer.install = function (Vue) {\n Vue.prototype.$IframeBus = _events_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"];\n Vue.component('IframePage', IframeContainer);\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (IframeContainer);\n\n//# sourceURL=webpack://mui/./plugins/lib/iframe/index.jsx?");
|
|
9167
9167
|
|
|
9168
9168
|
/***/ }),
|
|
9169
9169
|
|
|
@@ -9470,7 +9470,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
9470
9470
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
9471
9471
|
|
|
9472
9472
|
"use strict";
|
|
9473
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);\n// Imports\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/* 混入样式 */\\n/* 布局( 纯为了不想多写一行 */\\n/* 正方体盒子 */\\n/* 滚动条样式 */\\n/* 文字换行省略(默认1行)*/\\n/* flex布局 */\\n/* flex排版方式 */\\n/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\\n/* stylelint-disable no-duplicate-selectors */\\n/* stylelint-disable */\\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\\n.DirectoryTreeMenu {\\n height: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n}\\n.DirectoryTreeMenu__Actions {\\n display: flex;\\n gap: 0 8px;\\n flex-direction: row;\\n position: relative;\\n}\\n.DirectoryTreeMenu__Actions .ActionsIcons.ActionsIcons {\\n cursor: pointer;\\n width: 16px;\\n height: 16px;\\n}\\n.DirectoryTreeMenu__Actions .ActionsIcons.ActionsIcons:focus {\\n outline: none;\\n}\\n.DirectoryTreeMenu .treeDirectory {\\n width: 100%;\\n height: 40px;\\n display: flex;\\n gap: 0;\\n flex-direction: row;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: flex-start;\\n}\\n.DirectoryTreeMenu .treeDirectory > span {\\n flex: 1;\\n color: #fff;\\n text-align: left;\\n font-size: 16px;\\n font-weight: 700;\\n padding-left: 12px;\\n box-sizing: border-box;\\n position: relative;\\n}\\n.DirectoryTreeMenu .treeDirectory > span::after {\\n left: 0;\\n top: calc((100% - 12px) / 2);\\n content: '';\\n position: absolute;\\n background: #1890ff;\\n border-radius: 2px;\\n width: 4px;\\n height: 12px;\\n}\\n.DirectoryTreeMenu .treeDirectory :deep(.ant-btn) {\\n line-height: 16px;\\n margin-right: 12px;\\n border-color: #fff;\\n width: 16px;\\n height: 16px;\\n display: flex;\\n gap: 0;\\n flex-direction: row;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: center;\\n}\\n.DirectoryTreeMenu .treeDirectory :deep(.ant-btn) i {\\n font-size: 12px;\\n color: #fff;\\n}\\n.DirectoryTreeMenu__Tree {\\n height: calc(100% - 40px);\\n overflow-y: auto;\\n}\\n.DirectoryTreeMenu__Tree::-webkit-scrollbar-track {\\n border-radius: 0;\\n background-color: transparent;\\n}\\n.DirectoryTreeMenu__Tree::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n border-radius: 5px;\\n background-image: -webkit-linear-gradient(270deg, #1890ff 0%, transparent 100%);\\n -webkit-transition: all 0.2s;\\n transition: all 0.2s;\\n}\\n.DirectoryTreeMenu__Tree::-webkit-scrollbar-corner {\\n background-color: transparent;\\n}\\n.DirectoryTreeMenu__Tree::-webkit-scrollbar {\\n width: 6px;\\n height:
|
|
9473
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);\n// Imports\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/* 混入样式 */\\n/* 布局( 纯为了不想多写一行 */\\n/* 正方体盒子 */\\n/* 滚动条样式 */\\n/* 文字换行省略(默认1行)*/\\n/* flex布局 */\\n/* flex排版方式 */\\n/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\\n/* stylelint-disable no-duplicate-selectors */\\n/* stylelint-disable */\\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\\n.DirectoryTreeMenu {\\n height: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n}\\n.DirectoryTreeMenu__Actions {\\n display: flex;\\n gap: 0 8px;\\n flex-direction: row;\\n position: relative;\\n}\\n.DirectoryTreeMenu__Actions .ActionsIcons.ActionsIcons {\\n cursor: pointer;\\n width: 16px;\\n height: 16px;\\n}\\n.DirectoryTreeMenu__Actions .ActionsIcons.ActionsIcons:focus {\\n outline: none;\\n}\\n.DirectoryTreeMenu .treeDirectory {\\n width: 100%;\\n height: 40px;\\n display: flex;\\n gap: 0;\\n flex-direction: row;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: flex-start;\\n}\\n.DirectoryTreeMenu .treeDirectory > span {\\n flex: 1;\\n color: #fff;\\n text-align: left;\\n font-size: 16px;\\n font-weight: 700;\\n padding-left: 12px;\\n box-sizing: border-box;\\n position: relative;\\n}\\n.DirectoryTreeMenu .treeDirectory > span::after {\\n left: 0;\\n top: calc((100% - 12px) / 2);\\n content: '';\\n position: absolute;\\n background: #1890ff;\\n border-radius: 2px;\\n width: 4px;\\n height: 12px;\\n}\\n.DirectoryTreeMenu .treeDirectory :deep(.ant-btn) {\\n line-height: 16px;\\n margin-right: 12px;\\n border-color: #fff;\\n width: 16px;\\n height: 16px;\\n display: flex;\\n gap: 0;\\n flex-direction: row;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: center;\\n}\\n.DirectoryTreeMenu .treeDirectory :deep(.ant-btn) i {\\n font-size: 12px;\\n color: #fff;\\n}\\n.DirectoryTreeMenu__Tree {\\n height: calc(100% - 40px);\\n overflow-y: auto;\\n}\\n.DirectoryTreeMenu__Tree::-webkit-scrollbar-track {\\n border-radius: 0;\\n background-color: transparent;\\n}\\n.DirectoryTreeMenu__Tree::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n border-radius: 5px;\\n background-image: -webkit-linear-gradient(270deg, #1890ff 0%, transparent 100%);\\n -webkit-transition: all 0.2s;\\n transition: all 0.2s;\\n}\\n.DirectoryTreeMenu__Tree::-webkit-scrollbar-corner {\\n background-color: transparent;\\n}\\n.DirectoryTreeMenu__Tree::-webkit-scrollbar {\\n width: 6px;\\n height: 6px;\\n}\\n.DirectoryTreeMenu__Dropdown__Menu {\\n width: 140px;\\n height: auto;\\n padding: 8px 0;\\n box-sizing: border-box;\\n border-radius: 2px;\\n}\\n.DirectoryTreeMenu__Dropdown__Menu span {\\n display: flex;\\n align-items: center;\\n margin-bottom: 2px;\\n font-size: 14px;\\n padding: 0 16px;\\n box-sizing: border-box;\\n cursor: pointer;\\n width: 100%;\\n height: 26px;\\n}\\n.DirectoryTreeMenu__Dropdown__Menu span:last-child {\\n margin: 0;\\n}\\n.DirectoryTreeMenu__Dropdown__Menu span .svg-icon {\\n margin-right: 8px;\\n width: 16px;\\n height: 16px;\\n}\\n.DirectoryTreeMenu__Node .ant-tree-node-content-wrapper {\\n width: calc(100% - 24px);\\n}\\n.DirectoryTreeMenu__Node .ant-tree-node-content-wrapper .ant-tree-title {\\n display: inline-block;\\n width: calc(100% - 24px);\\n height: 100%;\\n}\\n.DirectoryTreeMenu__Node .ant-tree-node-content-wrapper .ant-tree-title .__Title {\\n width: 100%;\\n height: 100%;\\n display: flex;\\n gap: 0 8px;\\n flex-direction: row;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: flex-start;\\n}\\n.DirectoryTreeMenu__Node .ant-tree-node-content-wrapper .ant-tree-title .__Title > span {\\n white-space: normal;\\n width: calc(100% - 56px);\\n text-overflow: -o-ellipsis-lastline;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n display: -webkit-box;\\n -webkit-line-clamp: 1;\\n line-clamp: 1;\\n -webkit-box-orient: vertical;\\n}\\n\", \"\"]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://mui/./plugins/lib/tree/style/Directory.less?./node_modules/css-loader/dist/cjs.js!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-2.use%5B2%5D");
|
|
9474
9474
|
|
|
9475
9475
|
/***/ }),
|
|
9476
9476
|
|
|
@@ -9646,7 +9646,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
9646
9646
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
9647
9647
|
|
|
9648
9648
|
"use strict";
|
|
9649
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);\n// Imports\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/* 混入样式 */\\n/* 布局( 纯为了不想多写一行 */\\n/* 正方体盒子 */\\n/* 滚动条样式 */\\n/* 文字换行省略(默认1行)*/\\n/* flex布局 */\\n/* flex排版方式 */\\n/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\\n/* stylelint-disable no-duplicate-selectors */\\n/* stylelint-disable */\\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\\n.WebComponentTable[data-v-19255b3a] {\\n width: 100%;\\n height: 100%;\\n display: flex;\\n gap: 16px 0;\\n flex-direction: column;\\n}\\n.WebComponentTable__List__Title[data-v-19255b3a] {\\n display: flex;\\n align-items: center;\\n}\\n.WebComponentTable__List__Empty[data-v-19255b3a] {\\n gap: 16px 0;\\n height: 120px;\\n display: flex;\\n gap: 0;\\n flex-direction: column;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: center;\\n}\\n.WebComponentTable__List__Empty i[data-v-19255b3a] {\\n font-size: 80px;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-title {\\n padding: 0;\\n margin-bottom: 12px;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-body::-webkit-scrollbar-track {\\n border-radius: 0;\\n background-color: transparent;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-body::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n border-radius: 5px;\\n background-image: -webkit-linear-gradient(270deg, #1890ff 0%, transparent 100%);\\n -webkit-transition: all 0.2s;\\n transition: all 0.2s;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-body::-webkit-scrollbar-corner {\\n background-color: transparent;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-body::-webkit-scrollbar {\\n width: 6px;\\n height:
|
|
9649
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);\n// Imports\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/* 混入样式 */\\n/* 布局( 纯为了不想多写一行 */\\n/* 正方体盒子 */\\n/* 滚动条样式 */\\n/* 文字换行省略(默认1行)*/\\n/* flex布局 */\\n/* flex排版方式 */\\n/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\\n/* stylelint-disable no-duplicate-selectors */\\n/* stylelint-disable */\\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\\n.WebComponentTable[data-v-19255b3a] {\\n width: 100%;\\n height: 100%;\\n display: flex;\\n gap: 16px 0;\\n flex-direction: column;\\n}\\n.WebComponentTable__List__Title[data-v-19255b3a] {\\n display: flex;\\n align-items: center;\\n}\\n.WebComponentTable__List__Empty[data-v-19255b3a] {\\n gap: 16px 0;\\n height: 120px;\\n display: flex;\\n gap: 0;\\n flex-direction: column;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: center;\\n}\\n.WebComponentTable__List__Empty i[data-v-19255b3a] {\\n font-size: 80px;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-title {\\n padding: 0;\\n margin-bottom: 12px;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-body::-webkit-scrollbar-track {\\n border-radius: 0;\\n background-color: transparent;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-body::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n border-radius: 5px;\\n background-image: -webkit-linear-gradient(270deg, #1890ff 0%, transparent 100%);\\n -webkit-transition: all 0.2s;\\n transition: all 0.2s;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-body::-webkit-scrollbar-corner {\\n background-color: transparent;\\n}\\n.WebComponentTable__List[data-v-19255b3a] .ant-table-body::-webkit-scrollbar {\\n width: 6px;\\n height: 6px;\\n}\\n.WebComponentTable__Pagination[data-v-19255b3a] {\\n display: flex;\\n justify-content: flex-end;\\n}\\n\", \"\"]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://mui/./plugins/lib/table/index.vue?./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-2.use%5B2%5D!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
9650
9650
|
|
|
9651
9651
|
/***/ }),
|
|
9652
9652
|
|
|
@@ -9657,7 +9657,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
9657
9657
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
9658
9658
|
|
|
9659
9659
|
"use strict";
|
|
9660
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);\n// Imports\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/* 混入样式 */\\n/* 布局( 纯为了不想多写一行 */\\n/* 正方体盒子 */\\n/* 滚动条样式 */\\n/* 文字换行省略(默认1行)*/\\n/* flex布局 */\\n/* flex排版方式 */\\n/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\\n/* stylelint-disable no-duplicate-selectors */\\n/* stylelint-disable */\\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\\n.publicTreeCheck[data-v-45ca0cb8] {\\n display: flex;\\n width: 100%;\\n height: 100%;\\n}\\n.publicTreeCheck > div[data-v-45ca0cb8] {\\n flex: 1;\\n padding: 16px 24px;\\n box-sizing: border-box;\\n display: flex;\\n gap: 0;\\n flex-direction: column;\\n}\\n.publicTreeCheck .TreeSelect[data-v-45ca0cb8] {\\n border-right: 1px solid #e8e8e8;\\n}\\n.publicTreeCheck .TreeReveal .TreeSelectCount[data-v-45ca0cb8] {\\n display: flex;\\n color: #1890ff;\\n margin-bottom: 16px;\\n}\\n.publicTreeCheck .TreeReveal .TreeSelectCount .clear[data-v-45ca0cb8] {\\n flex: 1;\\n text-align: right;\\n color: #1890ff;\\n cursor: pointer;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8]::-webkit-scrollbar-track {\\n border-radius: 0;\\n background-color: transparent;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8]::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n border-radius: 5px;\\n background-image: -webkit-linear-gradient(270deg, #1890ff 0%, transparent 100%);\\n -webkit-transition: all 0.2s;\\n transition: all 0.2s;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8]::-webkit-scrollbar-corner {\\n background-color: transparent;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8]::-webkit-scrollbar {\\n width: 6px;\\n height:
|
|
9660
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);\n// Imports\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/* 混入样式 */\\n/* 布局( 纯为了不想多写一行 */\\n/* 正方体盒子 */\\n/* 滚动条样式 */\\n/* 文字换行省略(默认1行)*/\\n/* flex布局 */\\n/* flex排版方式 */\\n/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\\n/* stylelint-disable no-duplicate-selectors */\\n/* stylelint-disable */\\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\\n.publicTreeCheck[data-v-45ca0cb8] {\\n display: flex;\\n width: 100%;\\n height: 100%;\\n}\\n.publicTreeCheck > div[data-v-45ca0cb8] {\\n flex: 1;\\n padding: 16px 24px;\\n box-sizing: border-box;\\n display: flex;\\n gap: 0;\\n flex-direction: column;\\n}\\n.publicTreeCheck .TreeSelect[data-v-45ca0cb8] {\\n border-right: 1px solid #e8e8e8;\\n}\\n.publicTreeCheck .TreeReveal .TreeSelectCount[data-v-45ca0cb8] {\\n display: flex;\\n color: #1890ff;\\n margin-bottom: 16px;\\n}\\n.publicTreeCheck .TreeReveal .TreeSelectCount .clear[data-v-45ca0cb8] {\\n flex: 1;\\n text-align: right;\\n color: #1890ff;\\n cursor: pointer;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8]::-webkit-scrollbar-track {\\n border-radius: 0;\\n background-color: transparent;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8]::-webkit-scrollbar-thumb {\\n border-radius: 0;\\n border-radius: 5px;\\n background-image: -webkit-linear-gradient(270deg, #1890ff 0%, transparent 100%);\\n -webkit-transition: all 0.2s;\\n transition: all 0.2s;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8]::-webkit-scrollbar-corner {\\n background-color: transparent;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8]::-webkit-scrollbar {\\n width: 6px;\\n height: 6px;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8] .ant-checkbox-group {\\n width: 100%;\\n display: flex;\\n gap: 0;\\n flex-direction: column;\\n}\\n.publicTreeCheck .TreeReveal .TreeListPage[data-v-45ca0cb8] .ant-checkbox-group-item {\\n height: 40px;\\n display: flex;\\n align-items: center;\\n margin-right: 0;\\n padding: 0 12px;\\n box-sizing: border-box;\\n}\\n\", \"\"]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://mui/./plugins/lib/tree/Tree.vue?./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-2.use%5B2%5D!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
9661
9661
|
|
|
9662
9662
|
/***/ }),
|
|
9663
9663
|
|
package/dist/form.umd.js
CHANGED
|
@@ -7253,7 +7253,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var mome
|
|
|
7253
7253
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
7254
7254
|
|
|
7255
7255
|
"use strict";
|
|
7256
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/select/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/checkbox/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/pagination/index.js\");\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'TAntdSelect',\n components: {\n VNodes: {\n functional: true,\n render: (h, ctx) => ctx.props.vnodes\n },\n Select: ant_design_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n SelectOption: ant_design_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Option,\n Checkbox: ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Pagination: ant_design_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n },\n props: {\n value: {\n type: [String, Number, Array, Boolean, Object],\n default: undefined\n },\n // 多选 'multiple'\n mode: {\n type: String\n },\n // 是否支持输入\n isInput: {\n type: Boolean,\n default: false\n },\n placeholder: {\n type: String,\n default: '请选择'\n },\n // 选择框宽度\n width: {\n type: String\n },\n // 是否自定义设置下拉label\n customLabel: {\n type: String\n },\n // 传入的option数组中,要作为最终选择项的键值key\n valueKey: {\n type: String,\n default: 'value'\n },\n // 传入的option数组中,要作为显示项的键值名称\n labelKey: {\n type: String,\n default: 'label'\n },\n // 下拉框组件数据源\n options: {\n type: Array\n },\n // 是否显示分页\n isShowPagination: {\n type: Boolean,\n default: false\n },\n // 分页配置项\n paginationOption: {\n type: Object,\n default: () => {\n return {\n pageSize: 6,\n // 每页显示条数\n current: 1,\n // 当前页\n total: 0 // 总条数\n };\n }\n }\n },\n data() {\n return {\n selectOpen: false\n };\n },\n computed: {\n childSelectedValue: {\n get() {\n return this.value;\n },\n set(val) {\n this.$emit('input', val);\n }\n },\n attrs() {\n return {\n allowClear: true,\n showSearch: true,\n ...this.$attrs\n };\n },\n selectChecked: {\n get() {\n return this.childSelectedValue?.length === this.options?.length;\n },\n set(val) {\n this.$emit('input', val);\n }\n }\n },\n mounted() {\n document.addEventListener('click', this.bodyCloseMenus);\n },\n beforeDestroy() {\n document.removeEventListener('click', this.bodyCloseMenus);\n },\n methods: {\n filterOption(input, option) {\n this.isInput && (this.childSelectedValue = input);\n return option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n },\n // 点击空白区域\n bodyCloseMenus(e) {\n if (this.$refs.main && !this.$refs.main.contains(e.target)) {\n if (this.selectOpen == true) {\n this.selectOpen = false;\n }\n }\n },\n // 点击全选\n selectAll(val) {\n const options = JSON.parse(JSON.stringify(this.options));\n if (val.target.checked) {\n const childSelectedValue = options?.map(item => {\n return item[this.valueKey];\n });\n setTimeout(() => {\n this.$emit('input', childSelectedValue);\n }, 0);\n } else {\n this.$emit('input', null);\n }\n this.selectOpen = false;\n },\n handleSelect(value, option) {\n if (value) {\n this.selectOpen = false;\n }\n const options = this.options.find(e => e[this.valueKey] == value);\n this.$emit('select', value, options);\n },\n // 切换分页\n currentChange(val) {\n // console.log('切换分页', val)\n if (!this.mode) {\n this.childSelectedValue = null;\n }\n setTimeout(() => {\n this.selectOpen = true;\n }, 0);\n this.$emit('current-change', val);\n },\n // 自定义label显示\n customLabelHandler(item) {\n // eslint-disable-next-line no-eval\n return eval(this.customLabel);\n }\n }\n});\n\n//# sourceURL=webpack://mui/./plugins/lib/form/components/ASelectCustom.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
7256
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/select/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/checkbox/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/pagination/index.js\");\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'TAntdSelect',\n components: {\n VNodes: {\n functional: true,\n render: (h, ctx) => ctx.props.vnodes\n },\n Select: ant_design_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n SelectOption: ant_design_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"].Option,\n Checkbox: ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Pagination: ant_design_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n },\n props: {\n value: {\n type: [String, Number, Array, Boolean, Object],\n default: undefined\n },\n // 多选 'multiple'\n mode: {\n type: String\n },\n // 是否支持输入\n isInput: {\n type: Boolean,\n default: false\n },\n placeholder: {\n type: String,\n default: '请选择'\n },\n // 选择框宽度\n width: {\n type: String\n },\n // 是否自定义设置下拉label\n customLabel: {\n type: String\n },\n // 传入的option数组中,要作为最终选择项的键值key\n valueKey: {\n type: String,\n default: 'value'\n },\n // 传入的option数组中,要作为显示项的键值名称\n labelKey: {\n type: String,\n default: 'label'\n },\n // 下拉框组件数据源\n options: {\n type: Array\n },\n // 是否显示分页\n isShowPagination: {\n type: Boolean,\n default: false\n },\n // 分页配置项\n paginationOption: {\n type: Object,\n default: () => {\n return {\n pageSize: 6,\n // 每页显示条数\n current: 1,\n // 当前页\n total: 0 // 总条数\n };\n }\n }\n },\n data() {\n return {\n selectOpen: false\n };\n },\n computed: {\n childSelectedValue: {\n get() {\n return this.value;\n },\n set(val) {\n this.$emit('input', val);\n }\n },\n attrs() {\n return {\n allowClear: true,\n showSearch: true,\n ...this.$attrs\n };\n },\n selectChecked: {\n get() {\n return this.childSelectedValue?.length === this.options?.length;\n },\n set(val) {\n this.$emit('input', val);\n }\n }\n },\n mounted() {\n document.addEventListener('click', this.bodyCloseMenus);\n },\n beforeDestroy() {\n document.removeEventListener('click', this.bodyCloseMenus);\n },\n methods: {\n filterOption(input, option) {\n this.isInput && (this.childSelectedValue = input);\n return option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n },\n // 点击空白区域\n bodyCloseMenus(e) {\n if (this.$refs.main && !this.$refs.main.contains(e.target)) {\n if (this.selectOpen == true) {\n this.selectOpen = false;\n }\n }\n },\n // 点击全选\n selectAll(val) {\n const options = JSON.parse(JSON.stringify(this.options));\n if (val.target.checked) {\n const childSelectedValue = options?.map(item => {\n return item[this.valueKey];\n });\n setTimeout(() => {\n this.$emit('input', childSelectedValue);\n }, 0);\n } else {\n this.$emit('input', null);\n }\n this.selectOpen = false;\n },\n handleSelect(value, option) {\n if (value) {\n this.selectOpen = false;\n }\n const options = this.options.find(e => e[this.valueKey] == value);\n options[this.valueKey] && this.$emit('select', value, options);\n },\n // 切换分页\n currentChange(val) {\n // console.log('切换分页', val)\n if (!this.mode) {\n this.childSelectedValue = null;\n }\n setTimeout(() => {\n this.selectOpen = true;\n }, 0);\n this.$emit('current-change', val);\n },\n // 自定义label显示\n customLabelHandler(item) {\n // eslint-disable-next-line no-eval\n return eval(this.customLabel);\n }\n }\n});\n\n//# sourceURL=webpack://mui/./plugins/lib/form/components/ASelectCustom.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
7257
7257
|
|
|
7258
7258
|
/***/ }),
|
|
7259
7259
|
|
|
@@ -7286,7 +7286,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var ant_
|
|
|
7286
7286
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
7287
7287
|
|
|
7288
7288
|
"use strict";
|
|
7289
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/icon/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/upload/index.js\");\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n model: {\n prop: 'value',\n event: 'handleFileUpload'\n },\n components: {\n Icon: ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n
|
|
7289
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/icon/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/button/index.js\");\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/upload/index.js\");\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n model: {\n prop: 'value',\n event: 'handleFileUpload'\n },\n components: {\n Icon: ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Button: ant_design_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n Upload: ant_design_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n },\n props: {\n value: {\n type: [String, Array],\n default: () => []\n },\n /* 提示文字 */\n tips: String,\n /* 上传文件数量限制 */\n uploadLen: {\n type: Number,\n default: 1\n },\n /* 上传接口 */\n fileUploadUrl: String,\n /* 显示需要pin的接口前缀 */\n filePrefixUrl: String,\n /* 上传文件格式限制 */\n fileAccept: String,\n /* 上传文件携带Headers信息 */\n fileHeaders: Object,\n /* 删除文件函数回调 */\n fileRemoveHandle: Function\n },\n data() {\n return {\n fileList: [],\n modalValue: []\n };\n },\n watch: {\n value() {\n this.setResetFile();\n }\n },\n computed: {\n uploadAttrs() {\n return {\n listType: 'picture-card',\n prefix: this.filePrefixUrl ?? this.$https.FILEURL,\n action: this.fileUploadUrl ?? this.$https.UPLOADURL,\n headers: this.fileHeaders ?? this.$store.getters.fileHeaders,\n ...this.$attrs\n };\n }\n },\n mounted() {\n this.setResetFile();\n },\n methods: {\n setResetFile() {\n let arrayObject;\n try {\n arrayObject = JSON.parse(this.value);\n } catch (e) {\n arrayObject = [].concat(this.value);\n }\n this.modalValue = arrayObject ?? [];\n this.fileList = this.modalValue.map(file => ({\n ...file,\n url: `${this.uploadAttrs.prefix}${file.url}`,\n type: file.contentType,\n status: 'done'\n }));\n },\n handleFilePreview({\n uid,\n contentType,\n url\n }) {\n let suffix = url.substr(url.lastIndexOf('.') + 1);\n const pictureSuffix = ['JPEG', 'JPG', 'GIF', 'PNG', 'TIFF', 'WEBP', 'BMP'];\n if (contentType.includes('image') || pictureSuffix.includes(suffix.toUpperCase())) {\n this.$viewerApi({\n options: {\n url: 'url',\n toolbar: true,\n initialViewIndex: this.fileList.findIndex(file => file.url == url)\n },\n images: this.fileList\n });\n return;\n }\n this.$dialog('Brower', {\n data: url\n }, {\n title: '预览文件',\n width: 1104,\n height: 848,\n centered: true,\n maskClosable: false,\n footer: false,\n bodyStyle: {\n height: 'calc( 100% - 54px )'\n }\n });\n },\n handleFileChange({\n file,\n fileList\n }) {\n file.status == 'uploading' && (this.fileList = fileList);\n switch (file.status) {\n case 'removed':\n const params = {\n id: file.uid\n };\n const requestHandle = this.fileRemoveHandle ? this.fileRemoveHandle(params) : this.$store.dispatch('fileRemoveHandle', params);\n requestHandle.then(Response => {\n const i = this.modalValue.findIndex(e => e.uid == file.uid);\n this.modalValue.splice(i, 1);\n this.$emit('handleFileUpload', JSON.stringify(this.modalValue));\n });\n break;\n case 'done':\n const {\n data\n } = file.response;\n const uploadFileObj = {\n ...data,\n uid: data.id\n };\n delete uploadFileObj.id;\n this.modalValue.push(uploadFileObj);\n this.$emit('handleFileUpload', JSON.stringify(this.modalValue));\n break;\n }\n }\n }\n});\n\n//# sourceURL=webpack://mui/./plugins/lib/form/components/AUpload.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
7290
7290
|
|
|
7291
7291
|
/***/ }),
|
|
7292
7292
|
|
|
@@ -7385,7 +7385,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
7385
7385
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
7386
7386
|
|
|
7387
7387
|
"use strict";
|
|
7388
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; },\n/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }\n/* harmony export */ });\nvar render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"TAntdUpload\"\n }, [_c(\"Upload\", _vm._b({\n attrs: {\n name: \"file\",\n \"file-list\": _vm.fileList,\n
|
|
7388
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; },\n/* harmony export */ staticRenderFns: function() { return /* binding */ staticRenderFns; }\n/* harmony export */ });\nvar render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"TAntdUpload\"\n }, [_c(\"Upload\", _vm._b({\n attrs: {\n name: \"file\",\n \"file-list\": _vm.fileList,\n accept: _vm.fileAccept\n },\n on: {\n change: _vm.handleFileChange,\n preview: _vm.handleFilePreview,\n reject: function ($event) {\n return _vm.$message.error(`上传文件类型只能为${_vm.fileAccept}`);\n }\n }\n }, \"Upload\", _vm.uploadAttrs, false), [_vm.uploadAttrs.listType === \"text\" ? _c(\"Button\", {\n attrs: {\n type: \"primary\"\n }\n }, [_c(\"Icon\", {\n attrs: {\n type: \"upload\"\n }\n }), _vm._v(\"上传\\n \")], 1) : [!_vm.fileList || _vm.fileList.length < _vm.uploadLen ? _c(\"Icon\", {\n staticStyle: {\n fontsize: \"36px\"\n },\n attrs: {\n type: \"plus\"\n }\n }) : _vm._e()]], 2), _vm._v(\" \"), _vm.tips ? _c(\"span\", {\n staticClass: \"tips\"\n }, [_vm._v(_vm._s(_vm.tips))]) : _vm._e()], 1);\n};\nvar staticRenderFns = [];\nrender._withStripped = true;\n\n\n//# sourceURL=webpack://mui/./plugins/lib/form/components/AUpload.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet%5B1%5D.rules%5B2%5D!./node_modules/vue-loader/lib/index.js??vue-loader-options");
|
|
7389
7389
|
|
|
7390
7390
|
/***/ }),
|
|
7391
7391
|
|
|
@@ -7440,7 +7440,7 @@ eval("/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source cod
|
|
|
7440
7440
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
7441
7441
|
|
|
7442
7442
|
"use strict";
|
|
7443
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vue/babel-helper-vue-jsx-merge-props */ \"./node_modules/@vue/babel-helper-vue-jsx-merge-props/dist/helper.js\");\n/* harmony import */ var _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/form-model/index.js\");\n/* harmony import */ var _utils_render__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/render */ \"./plugins/lib/form/utils/render.js\");\n/* harmony import */ var _style_Model_less__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./style/Model.less */ \"./plugins/lib/form/style/Model.less\");\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Model',\n model: {\n prop: 'value',\n event: 'Change:Model'\n },\n data() {\n return {\n formRules: {}\n };\n },\n props: {\n value: {\n type: Object,\n default: () => ({})\n },\n /* Form布局方式 */\n layout: {\n type: String,\n default: 'vertical'\n },\n /* 一行显示几个 PS:最多5个 */\n layoutSize: {\n type: Number,\n default: 4,\n validator: value => {\n return value <= 5;\n }\n },\n /* 表单项配置 */\n formSetting: Array\n },\n computed: {\n form: {\n get() {\n /** 校验单独赋值延迟的字段 */\n for (const k in this.value) {\n Object.hasOwnProperty.call(this.formRules, k) && this.$refs.FormModel?.validateField(k);\n }\n return this.value;\n },\n set(value) {\n this.$emit('Change:Model', value);\n }\n },\n formAttrs() {\n let attr = {\n labelCol: {\n span: 4\n },\n wrapperCol: {\n span: 20\n },\n ...this.$attrs\n };\n this.layout === 'vertical' && (delete attr.labelCol, delete attr.wrapperCol);\n return attr;\n },\n filterSetting() {\n return this.formSetting.filter(settingItem => !settingItem.hidden);\n }\n },\n watch: {\n filterSetting: {\n handler(newVal, oldVal) {\n newVal.forEach(node => this.$set(this.formRules, node.model, _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItemRule.call(this, node)));\n },\n immediate: true\n }\n },\n mounted() {\n this.$emit('update:refForm', this.$refs.FormModel);\n },\n methods: {\n /** 包含单表单项,多表单项,动态增减表单项合并处理 */\n setModelRender(props) {\n const h = this.$createElement;\n const dynamicModel = this.form[props.model];\n return (\n /** \r\n * multiple为动态多项\r\n * multipleConfig为配置的动态项数据 */\n h(\"div\", {\n \"class\": props.multiple && ['MultipleForm'],\n \"attrs\": {\n ...{\n style: _utils_render__WEBPACK_IMPORTED_MODULE_1__.getFormWidth.call(this, props, this.layoutSize)\n }\n }\n }, [this.$scopedSlots[`${props.model}Tips`] && this.$scopedSlots[`${props.model}Tips`](props), /** 处理动态增减表单 */\n dynamicModel instanceof Array && props.multiple ? dynamicModel.map((modelItem, index) => props.multipleConfig.map((configItem, key) => {\n /** 为动态项时重新定义绑定key、prop等来进行检验 */\n /** 目前还有一个动态项layoutSize排版问题 */\n const childAttrs = {\n key: index,\n prop: `${props.model}.${index}.${configItem.model}`,\n
|
|
7443
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vue/babel-helper-vue-jsx-merge-props */ \"./node_modules/@vue/babel-helper-vue-jsx-merge-props/dist/helper.js\");\n/* harmony import */ var _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/form-model/index.js\");\n/* harmony import */ var _utils_render__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/render */ \"./plugins/lib/form/utils/render.js\");\n/* harmony import */ var _style_Model_less__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./style/Model.less */ \"./plugins/lib/form/style/Model.less\");\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Model',\n model: {\n prop: 'value',\n event: 'Change:Model'\n },\n data() {\n return {\n formRules: {}\n };\n },\n props: {\n value: {\n type: Object,\n default: () => ({})\n },\n /* Form布局方式 */\n layout: {\n type: String,\n default: 'vertical'\n },\n /* 一行显示几个 PS:最多5个 */\n layoutSize: {\n type: Number,\n default: 4,\n validator: value => {\n return value <= 5;\n }\n },\n /* 表单项配置 */\n formSetting: Array\n },\n computed: {\n form: {\n get() {\n /** 校验单独赋值延迟的字段 */\n for (const k in this.value) {\n Object.hasOwnProperty.call(this.formRules, k) && this.$refs.FormModel?.validateField(k);\n }\n return this.value;\n },\n set(value) {\n this.$emit('Change:Model', value);\n }\n },\n formAttrs() {\n let attr = {\n labelCol: {\n span: 4\n },\n wrapperCol: {\n span: 20\n },\n ...this.$attrs\n };\n this.layout === 'vertical' && (delete attr.labelCol, delete attr.wrapperCol);\n return attr;\n },\n filterSetting() {\n return this.formSetting.filter(settingItem => !settingItem.hidden);\n }\n },\n watch: {\n filterSetting: {\n handler(newVal, oldVal) {\n newVal.forEach(node => this.$set(this.formRules, node.model, _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItemRule.call(this, node)));\n },\n immediate: true\n }\n },\n mounted() {\n this.$emit('update:refForm', this.$refs.FormModel);\n },\n methods: {\n /** 包含单表单项,多表单项,动态增减表单项合并处理 */\n setModelRender(props) {\n const h = this.$createElement;\n const dynamicModel = this.form[props.model];\n return (\n /** \r\n * multiple为动态多项\r\n * multipleConfig为配置的动态项数据 */\n h(\"div\", {\n \"class\": props.multiple && ['MultipleForm'],\n \"attrs\": {\n ...{\n style: _utils_render__WEBPACK_IMPORTED_MODULE_1__.getFormWidth.call(this, props, this.layoutSize)\n }\n }\n }, [this.$scopedSlots[`${props.model}Tips`] && this.$scopedSlots[`${props.model}Tips`](props), /** 处理动态增减表单 */\n dynamicModel instanceof Array && props.multiple ? dynamicModel.map((modelItem, index) => props.multipleConfig.map((configItem, key) => {\n /** 为动态项时重新定义绑定key、prop等来进行检验 */\n /** 目前还有一个动态项layoutSize排版问题 */\n const childAttrs = {\n key: index,\n prop: `${props.model}.${index}.${configItem.model}`,\n style: _utils_render__WEBPACK_IMPORTED_MODULE_1__.getFormWidth.call(this, configItem, this.layoutSize ?? props.layoutSize),\n rules: _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItemRule.call(this, configItem, props),\n parentModel: props.model\n };\n return _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItem.call(this, h, modelItem, configItem, childAttrs);\n })) : _utils_render__WEBPACK_IMPORTED_MODULE_1__.setFormItem.call(this, h, this.form, props), this.$scopedSlots[`${props.model}Operate`] && this.$scopedSlots[`${props.model}Operate`](props)])\n );\n },\n /** 提交测验 */\n formSubmit() {\n return new Promise((resolve, reject) => {\n this.$refs.FormModel.validate().then(resolve).catch(err => this.$nextTick(() => {\n const errorDiv = document.getElementsByClassName('has-error');\n errorDiv[0].scrollIntoView({\n behavior: \"smooth\",\n block: \"center\"\n });\n }));\n });\n }\n },\n render() {\n const h = arguments[0];\n const {\n layout,\n formAttrs,\n setModelRender\n } = this;\n return h(ant_design_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"], _vue_babel_helper_vue_jsx_merge_props__WEBPACK_IMPORTED_MODULE_0___default()([{\n \"ref\": \"FormModel\",\n \"class\": \"FormModel\"\n }, {\n \"props\": {\n model: this.form,\n rules: this.formRules,\n layout,\n ...formAttrs\n }\n }]), [this.$slots.default ?? this.filterSetting.map(props => setModelRender(props))]);\n }\n});\n\n//# sourceURL=webpack://mui/./plugins/lib/form/Model.js?");
|
|
7444
7444
|
|
|
7445
7445
|
/***/ }),
|
|
7446
7446
|
|
|
@@ -7462,7 +7462,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
7462
7462
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
7463
7463
|
|
|
7464
7464
|
"use strict";
|
|
7465
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFormWidth: function() { return /* binding */ getFormWidth; },\n/* harmony export */ setFormItem: function() { return /* binding */ setFormItem; },\n/* harmony export */ setFormItemRule: function() { return /* binding */ setFormItemRule; }\n/* harmony export */ });\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/form-model/index.js\");\n/* harmony import */ var _components_RenderComp_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../components/RenderComp.vue */ \"./plugins/lib/form/components/RenderComp.vue\");\n\n\nconst FormModelItem = ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"].Item;\n\n/** 根据layoutSize来进行距离及大小切分 */\nfunction getFormWidth(child, layoutSize) {\n if (this.layout === 'vertical') return `flex: 0 1 calc((${100 / layoutSize * (child.size ?? 1)}% - 24px));margin-right:24px;`;\n return `flex: 0 1 ${100 / layoutSize * (child.size ?? 1)}%;`;\n}\n\n/** 动态设置单个表单项规则 (同时解决处理动态增减表单项操作 */\nfunction setFormItemRule(node, nodeParent = {}) {\n const required = node.required ?? nodeParent.required ?? this.formAttrs.required ?? true;\n\n /** node.placeholder与组件内的提示文字位置不对等 */\n const message = node.attrs?.placeholder || (/(select|picker|radio|upload)/.test((node.is ?? 'Input').toLowerCase()) ? '请选择' : '请输入') + (node.label || '');\n const rules = [{\n required,\n message,\n trigger: ['change', 'blur']\n }].concat((node.rules || []).filter(i => {\n i.pattern && (i.pattern = new RegExp(i.pattern));\n return i;\n }));\n return rules;\n}\n\n/** 动态渲染表单项 */\nfunction setFormItem(h, vModel, child, childAttrs) {\n const {\n layout,\n layoutSize,\n $scopedSlots\n } = this;\n let formItemAttrs = childAttrs ?? {\n key: child.model,\n prop: child.model,\n
|
|
7465
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFormWidth: function() { return /* binding */ getFormWidth; },\n/* harmony export */ setFormItem: function() { return /* binding */ setFormItem; },\n/* harmony export */ setFormItemRule: function() { return /* binding */ setFormItemRule; }\n/* harmony export */ });\n/* harmony import */ var ant_design_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ant-design-vue */ \"./node_modules/ant-design-vue/es/form-model/index.js\");\n/* harmony import */ var _components_RenderComp_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../components/RenderComp.vue */ \"./plugins/lib/form/components/RenderComp.vue\");\n\n\nconst FormModelItem = ant_design_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"].Item;\n\n/** 根据layoutSize来进行距离及大小切分 */\nfunction getFormWidth(child, layoutSize) {\n if (this.layout === 'vertical') return `flex: 0 1 calc((${100 / layoutSize * (child.size ?? 1)}% - 24px));margin-right:24px;`;\n return `flex: 0 1 ${100 / layoutSize * (child.size ?? 1)}%;`;\n}\n\n/** 动态设置单个表单项规则 (同时解决处理动态增减表单项操作 */\nfunction setFormItemRule(node, nodeParent = {}) {\n const required = node.required ?? nodeParent.required ?? this.formAttrs.required ?? true;\n\n /** node.placeholder与组件内的提示文字位置不对等 */\n const message = node.attrs?.placeholder || (/(select|picker|radio|upload)/.test((node.is ?? 'Input').toLowerCase()) ? '请选择' : '请输入') + (node.label || '');\n const rules = [{\n required,\n message,\n trigger: ['change', 'blur']\n }].concat((node.rules || []).filter(i => {\n i.pattern && (i.pattern = new RegExp(i.pattern));\n return i;\n }));\n return rules;\n}\n\n/** 动态渲染表单项 */\nfunction setFormItem(h, vModel, child, childAttrs) {\n const {\n layout,\n layoutSize,\n $scopedSlots\n } = this;\n let formItemAttrs = childAttrs ?? {\n key: child.model,\n prop: child.model,\n colon: !(layout == 'inline')\n };\n const slotsName = (childAttrs?.parentModel ?? '') + child.model;\n const {\n label,\n customLabel\n } = child;\n return h(FormModelItem, {\n \"class\": [{\n FormLineVertical: child.size === layoutSize && layout === 'vertical'\n }, {\n FormLine: child.size === layoutSize\n }],\n \"attrs\": {\n ...formItemAttrs\n }\n }, [h(\"template\", {\n \"slot\": \"label\"\n }, [customLabel ? customLabel(vModel) : h(\"span\", [label])]), $scopedSlots[child.model] ? $scopedSlots[child.model](child) : h(_components_RenderComp_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"], {\n \"attrs\": {\n \"component\": child.is,\n ...child.attrs\n },\n \"on\": {\n ...child.event\n },\n \"model\": {\n value: vModel[child.model],\n callback: $$v => {\n this.$set(vModel, child.model, $$v);\n }\n }\n }), $scopedSlots[`${slotsName}Handle`] && $scopedSlots[`${slotsName}Handle`](formItemAttrs)]);\n}\n\n//# sourceURL=webpack://mui/./plugins/lib/form/utils/render.js?");
|
|
7466
7466
|
|
|
7467
7467
|
/***/ }),
|
|
7468
7468
|
|