@kp-ui/lowcode 1.0.96 → 1.0.97
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/package.json +1 -1
- package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js +13 -12
- package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue2.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/cascader-widget.vue.js +1 -1
- package/src/components/form-designer/form-widget/field-widget/cascader-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/date-range-widget.vue.js +8 -8
- package/src/components/form-designer/form-widget/field-widget/date-range-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue.js +1 -1
- package/src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/treeSelect-widget.vue.js +1 -1
- package/src/components/form-designer/form-widget/field-widget/treeSelect-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/index.vue.js +1 -1
- package/src/components/form-designer/form-widget/index.vue.js.map +1 -1
- package/src/components/form-designer/index.vue.js +1 -1
- package/src/components/form-designer/index.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue.js +12 -13
- package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-sub-form/sub-form-labelAlign-editor.vue.js +13 -14
- package/src/components/form-designer/setting-panel/property-editor/container-sub-form/sub-form-labelAlign-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-direction-editor.vue.js +5 -6
- package/src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-direction-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue.js +1 -1
- package/src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue.js.map +1 -1
- package/src/components/form-designer/toolbar-panel/index.vue.js +2 -2
- package/src/components/form-designer/toolbar-panel/index.vue2.js.map +1 -1
- package/src/components/form-render/container-item/data-table-item.vue.js +2 -1
- package/src/components/form-render/container-item/data-table-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/grid-sub-form-item.vue.js +1 -1
- package/src/components/form-render/container-item/grid-sub-form-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/sub-form-item.vue.js +5 -2
- package/src/components/form-render/container-item/sub-form-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/vf-collapse-item.vue.js +1 -1
- package/src/components/form-render/container-item/vf-collapse-item.vue.js.map +1 -1
- package/src/components/form-render/dynamic-drawer.vue.js +2 -2
- package/src/components/form-render/dynamic-drawer.vue.js.map +1 -1
- package/src/components/form-render/dynamic-drawer.vue2.js +2 -0
- package/src/components/form-render/dynamic-drawer.vue2.js.map +1 -0
- package/src/components/form-render/index.vue.js +3 -2
- package/src/components/form-render/index.vue.js.map +1 -1
- package/src/components/public/QuillEditor/index.vue.js +13 -15
- package/src/components/public/QuillEditor/index.vue.js.map +1 -1
- package/src/mixins/useDataTableMixin.js +4 -0
- package/src/mixins/useDataTableMixin.js.map +1 -1
- package/stats.html +1 -1
- package/styles/style.css +8 -2
- package/types/install.d.ts +26 -0
- package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue2.js +0 -2
- package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue2.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue.js","sources":["../../../../src/components/form-designer/index.vue"],"sourcesContent":["<template>\n <TpfConfigProvider>\n <a-layout class=\"main-container full-height\">\n <a-layout>\n <a-layout-sider :width=\"leftWidth\" class=\"side-panel\">\n <WidgetPanel :designer=\"designer\" />\n </a-layout-sider>\n\n <a-layout-content class=\"center-layout-container\">\n <a-layout-header class=\"toolbar-header\">\n <toolbar-panel\n :saveJsonApi=\"saveJsonApi\"\n :designer=\"designer\"\n :global-dsv=\"globalDsv\"\n :changeLeftWidth=\"changeLeftWidth\"\n :changeRightWidth=\"changeRightWidth\"\n :leftWidth=\"leftWidth\"\n :rightWidth=\"rightWidth\"\n ref=\"toolbarRef\"\n >\n <template v-for=\"(idx, slotName) in $slots\" #[slotName]>\n <slot :name=\"slotName\"></slot>\n </template>\n </toolbar-panel>\n </a-layout-header>\n <a-layout-content class=\"form-widget-main\">\n <div class=\"container-scroll-bar\">\n <VFormWidget\n :designer=\"designer\"\n :form-config=\"designer.formConfig\"\n :global-dsv=\"globalDsv\"\n ref=\"formRef\"\n />\n </div>\n </a-layout-content>\n </a-layout-content>\n\n <a-layout-sider :width=\"rightWidth\">\n <setting-panel\n :designer=\"designer\"\n :selected-widget=\"designer.selectedWidget\"\n :global-dsv=\"globalDsv\"\n :form-config=\"designer.formConfig\"\n @edit-event-handler=\"testEEH\"\n />\n </a-layout-sider>\n </a-layout>\n </a-layout>\n </TpfConfigProvider>\n</template>\n\n<script>\n import WidgetPanel from './widget-panel/index.vue';\n import ToolbarPanel from './toolbar-panel/index.vue';\n import SettingPanel from './setting-panel/index.vue';\n import VFormWidget from './form-widget/index.vue';\n import { createDesigner } from '@/components/form-designer/designer';\n import { TpfConfigProvider } from 'tmgc2-share';\n import {\n addWindowResizeHandler,\n deepClone,\n getAllContainerWidgets,\n getAllFieldWidgets,\n traverseAllWidgets\n } from '@/utils/util';\n import i18n, { changeLocale } from '@/utils/i18n';\n import { isEmpty } from 'lodash-es';\n\n export default {\n name: 'VFormDesigner',\n componentName: 'VFormDesigner',\n mixins: [i18n],\n components: {\n TpfConfigProvider,\n WidgetPanel,\n ToolbarPanel,\n SettingPanel,\n VFormWidget\n },\n props: {\n /* 保存jsonApi */\n\n saveJsonApi: {\n type: Function,\n default: null\n },\n /* 后端字段列表API */\n fieldListApi: {\n type: Function,\n default: null\n },\n\n /* 禁止显示的组件名称数组 */\n bannedWidgets: {\n type: Array,\n default: () => []\n },\n /* 设计器配置参数 */\n designerConfig: {\n type: Object,\n default: () => {\n return {\n languageMenu: true, //是否显示语言切换菜单\n // externalLink: true, //是否显示GitHub、文档等外部链接\n // formTemplates: true, //是否显示表单模板\n eventCollapse: true, //是否显示组件事件属性折叠面板\n widgetNameReadonly: false, //禁止修改组件名称\n\n clearDesignerButton: true, //是否显示清空设计器按钮\n previewFormButton: true, //是否显示预览表单按钮\n importJsonButton: true, //是否显示导入JSON按钮\n exportJsonButton: true, //是否显示导出JSON器按钮\n exportCodeButton: true, //是否显示导出代码按钮\n // generateSFCButton: true, //是否显示生成SFC按钮\n\n toolbarMaxWidth: 450, //设计器工具按钮栏最大宽度(单位像素)\n toolbarMinWidth: 300, //设计器工具按钮栏最小宽度(单位像素)\n\n presetCssCode: '', //设计器预设CSS样式代码\n\n resetFormJson: false //是否在设计器初始化时将表单内容重置为空\n };\n }\n },\n\n /* 全局数据源变量 */\n globalDsv: {\n type: Object,\n default: () => ({})\n }\n },\n data() {\n return {\n leftWidth: 270,\n rightWidth: 300,\n curLangName: '',\n curLocale: '',\n isLoading: false, //是否正在加载中\n vsCodeFlag: false,\n caseName: '',\n\n docUrl: 'https://www.vform666.com/document3.html',\n gitUrl: 'https://github.com/vform666/variant-form3-vite',\n chatUrl: 'https://www.vform666.com/pages/chat-group/',\n subScribeUrl: 'https://www.vform666.com/pages/pro/',\n\n scrollerHeight: 0,\n\n designer: createDesigner(this),\n\n fieldList: []\n };\n },\n provide() {\n return {\n serverFieldList: () => this.fieldList,\n getDesignerConfig: () => this.designerConfig,\n getBannedWidgets: () => this.bannedWidgets\n };\n },\n created() {\n // this.vsCodeFlag = getQueryParam('vscode') == 1;\n // this.caseName = getQueryParam('case');\n },\n mounted() {\n this.initLocale();\n\n this.scrollerHeight = window.innerHeight - 56 - 36 + 'px';\n addWindowResizeHandler(() => {\n this.$nextTick(() => {\n this.scrollerHeight = window.innerHeight - 56 - 36 + 'px';\n });\n });\n\n this.loadFieldListFromServer();\n },\n methods: {\n setLoading(flag) {\n this.isLoading = flag;\n },\n changeLeftWidth() {\n if (this.leftWidth === 270) {\n this.leftWidth = 0;\n } else {\n this.leftWidth = 270;\n }\n },\n changeRightWidth() {\n if (this.rightWidth === 300) {\n this.rightWidth = 0;\n } else {\n this.rightWidth = 300;\n }\n },\n /**\n * json回填\n * @param {*} importObj\n */\n setJsonImport(importObj = {}) {\n if (isEmpty(importObj)) return;\n try {\n if (!importObj || !importObj.formConfig) {\n throw new Error(this.i18nt('designer.hint.invalidJsonFormat'));\n }\n\n // const fJsonVer = importObj?.formConfig?.jsonVersion || '';\n // if (!fJsonVer || fJsonVer !== 3) {\n // throw new Error(this.i18nt('designer.hint.jsonVersionMismatch'));\n // }\n\n this.designer.loadFormJson(importObj);\n\n this.designer.emitHistoryChange();\n\n this.designer.emitEvent('form-json-imported', []);\n } catch (ex) {\n this.$message.error(ex + '');\n }\n },\n testEEH(eventName, eventParams) {\n console.log('test', eventName);\n console.log('test222222', eventParams);\n },\n\n showLink(configName) {\n if (this.designerConfig[configName] === undefined) {\n return true;\n }\n\n return !!this.designerConfig[configName];\n },\n\n openUrl(event, url) {\n if (!!this.vsCodeFlag) {\n const msgObj = {\n cmd: 'openUrl',\n data: {\n url\n }\n };\n window.parent.postMessage(msgObj, '*');\n } else {\n const aDom = event.currentTarget;\n aDom.href = url;\n //window.open(url, '_blank') //直接打开新窗口,会被浏览器拦截\n }\n },\n\n changeLanguage(langName) {\n changeLocale(langName);\n },\n initLocale() {\n this.curLocale = localStorage.getItem('lowcode_local');\n if (!!this.vsCodeFlag) {\n this.curLocale = this.curLocale || 'en-US';\n } else {\n this.curLocale = this.curLocale || 'zh-CN';\n }\n this.curLangName = this.i18nt('application.' + this.curLocale);\n this.changeLanguage(this.curLocale);\n },\n\n async loadFieldListFromServer() {\n if (!this.fieldListApi) {\n return;\n }\n this.fieldList = await this.fieldListApi();\n console.log('this.fieldList: ', this.fieldList);\n },\n setFormJson(formJson) {\n console.log('formJson: ', formJson);\n let modifiedFlag = false;\n if (!!formJson) {\n if (typeof formJson === 'string') {\n //TODO\n modifiedFlag = this.designer.loadFormJson(JSON.parse(formJson));\n } else if (formJson.constructor === Object) {\n modifiedFlag = this.designer.loadFormJson(formJson);\n }\n\n if (modifiedFlag) {\n this.designer.emitHistoryChange();\n }\n }\n },\n\n getFormJson() {\n return {\n widgetList: deepClone(this.designer.widgetList),\n formConfig: deepClone(this.designer.formConfig)\n };\n },\n\n clearDesigner() {\n this.$refs.toolbarRef.clearFormWidget();\n },\n\n /**\n * 刷新表单设计器\n */\n refreshDesigner() {\n //this.designer.loadFormJson( this.getFormJson() ) //只有第一次调用生效??\n\n const fJson = this.getFormJson();\n this.designer.clearDesigner(true); //不触发历史记录变更\n this.designer.loadFormJson(fJson);\n },\n\n /**\n * 预览表单\n */\n previewForm() {\n this.$refs.toolbarRef.previewForm();\n },\n\n /**\n * 导入表单JSON\n */\n importJson() {\n this.$refs.toolbarRef.importJson();\n },\n\n /**\n * 导出表单JSON\n */\n exportJson() {\n this.$refs.toolbarRef.exportJson();\n },\n\n /**\n * 导出Vue/HTML代码\n */\n exportCode() {\n this.$refs.toolbarRef.exportCode();\n },\n\n /**\n * 生成SFC代码\n */\n generateSFC() {\n this.$refs.toolbarRef.generateSFC();\n },\n\n /**\n * 获取所有字段组件\n * @returns {*[]}\n */\n getFieldWidgets(widgetList = null) {\n return !!widgetList\n ? getAllFieldWidgets(widgetList)\n : getAllFieldWidgets(this.designer.widgetList);\n },\n\n /**\n * 获取所有容器组件\n * @returns {*[]}\n */\n getContainerWidgets(widgetList = null) {\n return !!widgetList\n ? getAllContainerWidgets(widgetList)\n : getAllContainerWidgets(this.designer.widgetList);\n },\n\n /**\n * 升级表单json,以补充最新的组件属性\n * @param formJson\n */\n upgradeFormJson(formJson) {\n if (!formJson.widgetList || !formJson.formConfig) {\n this.$message.error('Invalid form json!');\n return;\n }\n\n traverseAllWidgets(formJson.widgetList, w => {\n this.designer.upgradeWidgetConfig(w);\n });\n this.designer.upgradeFormConfig(formJson.formConfig);\n\n return formJson;\n },\n\n getWidgetRef(widgetName, showError = false) {\n return this.$refs['formRef'].getWidgetRef(widgetName, showError);\n },\n\n getSelectedWidgetRef() {\n return this.$refs['formRef'].getSelectedWidgetRef();\n },\n\n /**\n * 添加数据源对象\n * @param dsObj\n */\n addDataSource(dsObj) {\n this.designer.formConfig.dataSources.push(dsObj);\n },\n\n /**\n * 增加外部组件引用,可通过getEC()方法获取外部组件,以便在VForm内部调用外部组件方法\n * @param componentName 外部组件名称\n * @param externalComponent 外部组件实例\n */\n addEC(componentName, externalComponent) {\n this.externalComponents[componentName] = externalComponent;\n },\n\n /**\n * 判断外部组件是否可获取\n * @param componentName 外部组件名称\n * @returns {boolean}\n */\n hasEC(componentName) {\n return this.externalComponents.hasOwnProperty(componentName);\n },\n\n /**\n * 获取外部组件实例\n * @param componentName\n * @returns {*}\n */\n getEC(componentName) {\n return this.externalComponents[componentName];\n }\n\n //TODO: 增加更多方法!!\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .ant-layout.main-container {\n background: #fff;\n\n .ant-layout-sider {\n background: #fff;\n }\n\n :deep(aside) {\n /* 防止aside样式被外部样式覆盖!! */\n margin: 0;\n padding: 0;\n background: inherit;\n }\n }\n\n .ant-layout.full-height {\n height: 100%;\n overflow-y: hidden;\n }\n\n .ant-layout-content.center-layout-container {\n min-width: 680px;\n border-left: 2px dotted #ebeef5;\n border-right: 2px dotted #ebeef5;\n display: flex;\n flex-direction: column;\n }\n\n .ant-layout-header.main-header {\n border-bottom: 2px dotted #ebeef5;\n background: #fff;\n padding: 0;\n\n height: 48px !important;\n line-height: 48px !important;\n min-width: 800px;\n }\n\n div.main-title {\n font-size: 18px;\n color: #242424;\n display: flex;\n align-items: center;\n justify-items: center;\n\n img {\n cursor: pointer;\n width: 36px;\n height: 36px;\n }\n\n span.bold {\n font-size: 20px;\n font-weight: bold;\n margin: 0 6px 0 6px;\n }\n\n span.version-span {\n font-size: 14px;\n color: #101f1c;\n margin-left: 6px;\n }\n }\n\n .float-left {\n float: left;\n }\n\n .float-right {\n float: right;\n }\n\n .el-dropdown-link {\n margin-right: 12px;\n cursor: pointer;\n }\n\n div.external-link {\n display: flex;\n align-items: center;\n\n a {\n font-size: 13px;\n text-decoration: none;\n margin-right: 10px;\n color: #606266;\n }\n }\n\n .ant-layout-header.toolbar-header {\n font-size: 14px;\n border-bottom: 1px dotted #cccccc;\n height: 42px !important;\n background: #fff;\n padding: 0;\n }\n\n .ant-layout-sider.side-panel {\n width: 260px !important;\n overflow-y: hidden;\n }\n // .left-aside-toggle-bar {\n // position: relative;\n // width: 0px;\n // .icons {\n // position: absolute;\n // right: 100%;\n // top: 50%;\n // transform: translate(100%, -50%);\n // z-index: 9999;\n // background: #fff;\n // width: 12px !important;\n // height: 36px !important;\n // }\n // }\n\n .ant-layout-content.form-widget-main {\n padding: 0;\n position: relative;\n overflow-x: hidden;\n flex: 1 0 0;\n }\n\n .container-scroll-bar {\n height: 100%;\n & > :deep(.form-widget-container) {\n height: 100%;\n }\n }\n</style>\n"],"names":["_sfc_main","i18n","TpfConfigProvider","WidgetPanel","ToolbarPanel","SettingPanel","VFormWidget","createDesigner","addWindowResizeHandler","flag","importObj","isEmpty","ex","eventName","eventParams","configName","event","url","msgObj","aDom","langName","changeLocale","formJson","modifiedFlag","deepClone","fJson","widgetList","getAllFieldWidgets","getAllContainerWidgets","traverseAllWidgets","w","widgetName","showError","dsObj","componentName","externalComponent","_hoisted_1","_createBlock","_component_TpfConfigProvider","_createVNode","_component_a_layout","_component_a_layout_sider","$data","_component_WidgetPanel","_component_a_layout_content","_component_a_layout_header","_component_toolbar_panel","$props","$options","_ctx","idx","slotName","_renderSlot","_createElementVNode","_component_VFormWidget","_component_setting_panel"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.vue.js","sources":["../../../../src/components/form-designer/index.vue"],"sourcesContent":["<template>\n <TpfConfigProvider>\n <a-layout class=\"main-container full-height\">\n <a-layout>\n <a-layout-sider :width=\"leftWidth\" class=\"side-panel\">\n <WidgetPanel :designer=\"designer\" />\n </a-layout-sider>\n\n <a-layout-content class=\"center-layout-container\">\n <a-layout-header class=\"toolbar-header\">\n <toolbar-panel\n :saveJsonApi=\"saveJsonApi\"\n :designer=\"designer\"\n :global-dsv=\"globalDsv\"\n :changeLeftWidth=\"changeLeftWidth\"\n :changeRightWidth=\"changeRightWidth\"\n :leftWidth=\"leftWidth\"\n :rightWidth=\"rightWidth\"\n ref=\"toolbarRef\"\n >\n <template v-for=\"(idx, slotName) in $slots\" #[slotName]>\n <slot :name=\"slotName\"></slot>\n </template>\n </toolbar-panel>\n </a-layout-header>\n <a-layout-content class=\"form-widget-main\">\n <div class=\"container-scroll-bar\">\n <VFormWidget\n :designer=\"designer\"\n :form-config=\"designer.formConfig\"\n :global-dsv=\"globalDsv\"\n ref=\"formRef\"\n />\n </div>\n </a-layout-content>\n </a-layout-content>\n\n <a-layout-sider :width=\"rightWidth\">\n <setting-panel\n :designer=\"designer\"\n :selected-widget=\"designer.selectedWidget\"\n :global-dsv=\"globalDsv\"\n :form-config=\"designer.formConfig\"\n @edit-event-handler=\"testEEH\"\n />\n </a-layout-sider>\n </a-layout>\n </a-layout>\n </TpfConfigProvider>\n</template>\n\n<script>\n import WidgetPanel from './widget-panel/index.vue';\n import ToolbarPanel from './toolbar-panel/index.vue';\n import SettingPanel from './setting-panel/index.vue';\n import VFormWidget from './form-widget/index.vue';\n import { createDesigner } from '@/components/form-designer/designer';\n import { TpfConfigProvider } from 'tmgc2-share';\n import {\n addWindowResizeHandler,\n deepClone,\n getAllContainerWidgets,\n getAllFieldWidgets,\n traverseAllWidgets\n } from '@/utils/util';\n import i18n, { changeLocale } from '@/utils/i18n';\n import { isEmpty } from 'lodash-es';\n\n export default {\n name: 'VFormDesigner',\n componentName: 'VFormDesigner',\n mixins: [i18n],\n components: {\n TpfConfigProvider,\n WidgetPanel,\n ToolbarPanel,\n SettingPanel,\n VFormWidget\n },\n props: {\n /* 保存jsonApi */\n\n saveJsonApi: {\n type: Function,\n default: null\n },\n /* 后端字段列表API */\n fieldListApi: {\n type: Function,\n default: null\n },\n\n /* 禁止显示的组件名称数组 */\n bannedWidgets: {\n type: Array,\n default: () => []\n },\n /* 设计器配置参数 */\n designerConfig: {\n type: Object,\n default: () => {\n return {\n languageMenu: true, //是否显示语言切换菜单\n // externalLink: true, //是否显示GitHub、文档等外部链接\n // formTemplates: true, //是否显示表单模板\n eventCollapse: true, //是否显示组件事件属性折叠面板\n widgetNameReadonly: false, //禁止修改组件名称\n\n clearDesignerButton: true, //是否显示清空设计器按钮\n previewFormButton: true, //是否显示预览表单按钮\n importJsonButton: true, //是否显示导入JSON按钮\n exportJsonButton: true, //是否显示导出JSON器按钮\n exportCodeButton: true, //是否显示导出代码按钮\n // generateSFCButton: true, //是否显示生成SFC按钮\n\n toolbarMaxWidth: 450, //设计器工具按钮栏最大宽度(单位像素)\n toolbarMinWidth: 300, //设计器工具按钮栏最小宽度(单位像素)\n\n presetCssCode: '', //设计器预设CSS样式代码\n\n resetFormJson: false //是否在设计器初始化时将表单内容重置为空\n };\n }\n },\n\n /* 全局数据源变量 */\n globalDsv: {\n type: Object,\n default: () => ({})\n }\n },\n data() {\n return {\n leftWidth: 270,\n rightWidth: 300,\n curLangName: '',\n curLocale: '',\n isLoading: false, //是否正在加载中\n vsCodeFlag: false,\n caseName: '',\n\n docUrl: 'https://www.vform666.com/document3.html',\n gitUrl: 'https://github.com/vform666/variant-form3-vite',\n chatUrl: 'https://www.vform666.com/pages/chat-group/',\n subScribeUrl: 'https://www.vform666.com/pages/pro/',\n\n scrollerHeight: 0,\n\n designer: createDesigner(this),\n\n fieldList: []\n };\n },\n provide() {\n return {\n serverFieldList: () => this.fieldList,\n getDesignerConfig: () => this.designerConfig,\n getBannedWidgets: () => this.bannedWidgets\n };\n },\n created() {\n // this.vsCodeFlag = getQueryParam('vscode') == 1;\n // this.caseName = getQueryParam('case');\n },\n mounted() {\n this.initLocale();\n\n this.scrollerHeight = window.innerHeight - 56 - 36 + 'px';\n addWindowResizeHandler(() => {\n this.$nextTick(() => {\n this.scrollerHeight = window.innerHeight - 56 - 36 + 'px';\n });\n });\n\n this.loadFieldListFromServer();\n },\n methods: {\n setLoading(flag) {\n this.isLoading = flag;\n },\n changeLeftWidth() {\n if (this.leftWidth === 270) {\n this.leftWidth = 0;\n } else {\n this.leftWidth = 270;\n }\n },\n changeRightWidth() {\n if (this.rightWidth === 300) {\n this.rightWidth = 0;\n } else {\n this.rightWidth = 300;\n }\n },\n /**\n * json回填\n * @param {*} importObj\n */\n setJsonImport(importObj = {}) {\n if (isEmpty(importObj)) return;\n try {\n if (!importObj || !importObj.formConfig) {\n throw new Error(this.i18nt('designer.hint.invalidJsonFormat'));\n }\n\n // const fJsonVer = importObj?.formConfig?.jsonVersion || '';\n // if (!fJsonVer || fJsonVer !== 3) {\n // throw new Error(this.i18nt('designer.hint.jsonVersionMismatch'));\n // }\n\n this.designer.loadFormJson(importObj);\n\n this.designer.emitHistoryChange();\n\n this.designer.emitEvent('form-json-imported', []);\n } catch (ex) {\n this.$message.error(ex + '');\n }\n },\n testEEH(eventName, eventParams) {\n console.log('test', eventName);\n console.log('test222222', eventParams);\n },\n\n showLink(configName) {\n if (this.designerConfig[configName] === undefined) {\n return true;\n }\n\n return !!this.designerConfig[configName];\n },\n\n openUrl(event, url) {\n if (!!this.vsCodeFlag) {\n const msgObj = {\n cmd: 'openUrl',\n data: {\n url\n }\n };\n window.parent.postMessage(msgObj, '*');\n } else {\n const aDom = event.currentTarget;\n aDom.href = url;\n //window.open(url, '_blank') //直接打开新窗口,会被浏览器拦截\n }\n },\n\n changeLanguage(langName) {\n changeLocale(langName);\n },\n initLocale() {\n this.curLocale = localStorage.getItem('lowcode_local');\n if (!!this.vsCodeFlag) {\n this.curLocale = this.curLocale || 'en-US';\n } else {\n this.curLocale = this.curLocale || 'zh-CN';\n }\n this.curLangName = this.i18nt('application.' + this.curLocale);\n this.changeLanguage(this.curLocale);\n },\n\n async loadFieldListFromServer() {\n if (!this.fieldListApi) {\n return;\n }\n this.fieldList = await this.fieldListApi();\n console.log('this.fieldList: ', this.fieldList);\n },\n setFormJson(formJson) {\n console.log('formJson: ', formJson);\n let modifiedFlag = false;\n if (!!formJson) {\n if (typeof formJson === 'string') {\n //TODO\n modifiedFlag = this.designer.loadFormJson(JSON.parse(formJson));\n } else if (formJson.constructor === Object) {\n modifiedFlag = this.designer.loadFormJson(formJson);\n }\n\n if (modifiedFlag) {\n this.designer.emitHistoryChange();\n }\n }\n },\n\n getFormJson() {\n return {\n widgetList: deepClone(this.designer.widgetList),\n formConfig: deepClone(this.designer.formConfig)\n };\n },\n\n clearDesigner() {\n this.$refs.toolbarRef.clearFormWidget();\n },\n\n /**\n * 刷新表单设计器\n */\n refreshDesigner() {\n //this.designer.loadFormJson( this.getFormJson() ) //只有第一次调用生效??\n\n const fJson = this.getFormJson();\n this.designer.clearDesigner(true); //不触发历史记录变更\n this.designer.loadFormJson(fJson);\n },\n\n /**\n * 预览表单\n */\n previewForm() {\n this.$refs.toolbarRef.previewForm();\n },\n\n /**\n * 导入表单JSON\n */\n importJson() {\n this.$refs.toolbarRef.importJson();\n },\n\n /**\n * 导出表单JSON\n */\n exportJson() {\n this.$refs.toolbarRef.exportJson();\n },\n\n /**\n * 导出Vue/HTML代码\n */\n exportCode() {\n this.$refs.toolbarRef.exportCode();\n },\n\n /**\n * 生成SFC代码\n */\n generateSFC() {\n this.$refs.toolbarRef.generateSFC();\n },\n\n /**\n * 获取所有字段组件\n * @returns {*[]}\n */\n getFieldWidgets(widgetList = null) {\n return !!widgetList\n ? getAllFieldWidgets(widgetList)\n : getAllFieldWidgets(this.designer.widgetList);\n },\n\n /**\n * 获取所有容器组件\n * @returns {*[]}\n */\n getContainerWidgets(widgetList = null) {\n return !!widgetList\n ? getAllContainerWidgets(widgetList)\n : getAllContainerWidgets(this.designer.widgetList);\n },\n\n /**\n * 升级表单json,以补充最新的组件属性\n * @param formJson\n */\n upgradeFormJson(formJson) {\n if (!formJson.widgetList || !formJson.formConfig) {\n this.$message.error('Invalid form json!');\n return;\n }\n\n traverseAllWidgets(formJson.widgetList, w => {\n this.designer.upgradeWidgetConfig(w);\n });\n this.designer.upgradeFormConfig(formJson.formConfig);\n\n return formJson;\n },\n\n getWidgetRef(widgetName, showError = false) {\n return this.$refs['formRef'].getWidgetRef(widgetName, showError);\n },\n\n getSelectedWidgetRef() {\n return this.$refs['formRef'].getSelectedWidgetRef();\n },\n\n /**\n * 添加数据源对象\n * @param dsObj\n */\n addDataSource(dsObj) {\n this.designer.formConfig.dataSources.push(dsObj);\n },\n\n /**\n * 增加外部组件引用,可通过getEC()方法获取外部组件,以便在VForm内部调用外部组件方法\n * @param componentName 外部组件名称\n * @param externalComponent 外部组件实例\n */\n addEC(componentName, externalComponent) {\n this.externalComponents[componentName] = externalComponent;\n },\n\n /**\n * 判断外部组件是否可获取\n * @param componentName 外部组件名称\n * @returns {boolean}\n */\n hasEC(componentName) {\n return this.externalComponents.hasOwnProperty(componentName);\n },\n\n /**\n * 获取外部组件实例\n * @param componentName\n * @returns {*}\n */\n getEC(componentName) {\n return this.externalComponents[componentName];\n }\n\n //TODO: 增加更多方法!!\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .ant-layout.main-container {\n background: #fff;\n\n .ant-layout-sider {\n background: #fff;\n }\n\n :deep(aside) {\n /* 防止aside样式被外部样式覆盖!! */\n margin: 0;\n padding: 0;\n background: inherit;\n }\n }\n\n .ant-layout.full-height {\n height: 100%;\n overflow-y: hidden;\n }\n\n .ant-layout-content.center-layout-container {\n min-width: 680px;\n border-left: 2px dotted #ebeef5;\n border-right: 2px dotted #ebeef5;\n display: flex;\n flex-direction: column;\n }\n\n .ant-layout-header.main-header {\n border-bottom: 2px dotted #ebeef5;\n background: #fff;\n padding: 0;\n\n height: 48px !important;\n line-height: 48px !important;\n min-width: 800px;\n }\n\n div.main-title {\n font-size: 18px;\n color: #242424;\n display: flex;\n align-items: center;\n justify-items: center;\n\n img {\n cursor: pointer;\n width: 36px;\n height: 36px;\n }\n\n span.bold {\n font-size: 20px;\n font-weight: bold;\n margin: 0 6px 0 6px;\n }\n\n span.version-span {\n font-size: 14px;\n color: #101f1c;\n margin-left: 6px;\n }\n }\n\n .float-left {\n float: left;\n }\n\n .float-right {\n float: right;\n }\n\n div.external-link {\n display: flex;\n align-items: center;\n\n a {\n font-size: 13px;\n text-decoration: none;\n margin-right: 10px;\n color: #606266;\n }\n }\n\n .ant-layout-header.toolbar-header {\n font-size: 14px;\n border-bottom: 1px dotted #cccccc;\n height: 42px !important;\n background: #fff;\n padding: 0;\n }\n\n .ant-layout-sider.side-panel {\n width: 260px !important;\n overflow-y: hidden;\n }\n // .left-aside-toggle-bar {\n // position: relative;\n // width: 0px;\n // .icons {\n // position: absolute;\n // right: 100%;\n // top: 50%;\n // transform: translate(100%, -50%);\n // z-index: 9999;\n // background: #fff;\n // width: 12px !important;\n // height: 36px !important;\n // }\n // }\n\n .ant-layout-content.form-widget-main {\n padding: 0;\n position: relative;\n overflow-x: hidden;\n flex: 1 0 0;\n }\n\n .container-scroll-bar {\n height: 100%;\n & > :deep(.form-widget-container) {\n height: 100%;\n }\n }\n</style>\n"],"names":["_sfc_main","i18n","TpfConfigProvider","WidgetPanel","ToolbarPanel","SettingPanel","VFormWidget","createDesigner","addWindowResizeHandler","flag","importObj","isEmpty","ex","eventName","eventParams","configName","event","url","msgObj","aDom","langName","changeLocale","formJson","modifiedFlag","deepClone","fJson","widgetList","getAllFieldWidgets","getAllContainerWidgets","traverseAllWidgets","w","widgetName","showError","dsObj","componentName","externalComponent","_hoisted_1","_createBlock","_component_TpfConfigProvider","_createVNode","_component_a_layout","_component_a_layout_sider","$data","_component_WidgetPanel","_component_a_layout_content","_component_a_layout_header","_component_toolbar_panel","$props","$options","_ctx","idx","slotName","_renderSlot","_createElementVNode","_component_VFormWidget","_component_setting_panel"],"mappings":"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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { resolveComponent as o, createBlock as p, openBlock as
|
|
3
|
-
import "
|
|
4
|
-
import g from "../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
1
|
+
import m from "../../../../utils/i18n.js";
|
|
2
|
+
import { resolveComponent as o, createBlock as p, openBlock as g, withCtx as t, createVNode as n, createTextVNode as l, toDisplayString as s } from "vue";
|
|
3
|
+
import _ from "../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
5
4
|
const f = {
|
|
6
5
|
name: "actionColumnPosition-editor",
|
|
7
|
-
mixins: [
|
|
6
|
+
mixins: [m],
|
|
8
7
|
props: {
|
|
9
8
|
designer: Object,
|
|
10
9
|
selectedWidget: Object,
|
|
@@ -16,25 +15,25 @@ const f = {
|
|
|
16
15
|
}
|
|
17
16
|
}
|
|
18
17
|
};
|
|
19
|
-
function b(e,
|
|
18
|
+
function b(e, i, a, C, v, h) {
|
|
20
19
|
const r = o("a-radio-button"), d = o("a-radio-group"), c = o("a-form-item");
|
|
21
|
-
return
|
|
20
|
+
return g(), p(c, {
|
|
22
21
|
label: e.i18nt("designer.setting.actionColumnPosition")
|
|
23
22
|
}, {
|
|
24
23
|
default: t(() => [
|
|
25
|
-
|
|
24
|
+
n(d, {
|
|
26
25
|
value: a.optionModel.actionColumnPosition,
|
|
27
|
-
"onUpdate:value":
|
|
26
|
+
"onUpdate:value": i[0] || (i[0] = (u) => a.optionModel.actionColumnPosition = u),
|
|
28
27
|
class: "radio-group-custom"
|
|
29
28
|
}, {
|
|
30
29
|
default: t(() => [
|
|
31
|
-
|
|
30
|
+
n(r, { value: "left" }, {
|
|
32
31
|
default: t(() => [
|
|
33
32
|
l(s(e.i18nt("designer.setting.leftAlign")), 1)
|
|
34
33
|
]),
|
|
35
34
|
_: 1
|
|
36
35
|
}),
|
|
37
|
-
|
|
36
|
+
n(r, { value: "right" }, {
|
|
38
37
|
default: t(() => [
|
|
39
38
|
l(s(e.i18nt("designer.setting.rightAlign")), 1)
|
|
40
39
|
]),
|
|
@@ -47,8 +46,8 @@ function b(e, n, a, v, C, h) {
|
|
|
47
46
|
_: 1
|
|
48
47
|
}, 8, ["label"]);
|
|
49
48
|
}
|
|
50
|
-
const
|
|
49
|
+
const y = /* @__PURE__ */ _(f, [["render", b]]);
|
|
51
50
|
export {
|
|
52
|
-
|
|
51
|
+
y as default
|
|
53
52
|
};
|
|
54
53
|
//# sourceMappingURL=actionColumnPosition-editor.vue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionColumnPosition-editor.vue.js","sources":["../../../../../../src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue"],"sourcesContent":["<template>\n
|
|
1
|
+
{"version":3,"file":"actionColumnPosition-editor.vue.js","sources":["../../../../../../src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue"],"sourcesContent":["<template>\n <a-form-item :label=\"i18nt('designer.setting.actionColumnPosition')\">\n <a-radio-group v-model:value=\"optionModel.actionColumnPosition\" class=\"radio-group-custom\">\n <a-radio-button value=\"left\"> {{ i18nt('designer.setting.leftAlign') }}</a-radio-button>\n <a-radio-button value=\"right\">\n {{ i18nt('designer.setting.rightAlign') }}</a-radio-button\n >\n </a-radio-group>\n </a-form-item>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n\n export default {\n name: 'actionColumnPosition-editor',\n mixins: [i18n],\n props: {\n designer: Object,\n selectedWidget: Object,\n optionModel: Object\n },\n computed: {\n noLabelSetting() {\n return (\n this.selectedWidget.type === 'static-text' ||\n this.selectedWidget.type === 'html-text'\n );\n //|| (this.selectedWidget.type === 'divider')\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["_sfc_main","i18n","_createBlock","_component_a_form_item","_ctx","_createVNode","_component_a_radio_group","$props","_cache","$event","_component_a_radio_button"],"mappings":";;;AAcI,MAAKA,IAAU;AAAA,EACX,MAAM;AAAA,EACN,QAAQ,CAACC,CAAI;AAAA,EACb,OAAO;AAAA,IACH,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB,aAAa;AAAA;EAEjB,UAAU;AAAA,IACN,iBAAiB;AACb,aACI,KAAK,eAAe,SAAS,iBAC7B,KAAK,eAAe,SAAS;AAAA,IAGrC;AAAA,EACJ;;;;cA7BJC,EAOcC,GAAA;AAAA,IAPA,OAAOC,EAAA,MAAK,uCAAA;AAAA;eACtB,MAKgB;AAAA,MALhBC,EAKgBC,GAAA;AAAA,QALO,OAAOC,EAAA,YAAY;AAAA,QAAZ,kBAAAC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAF,EAAA,YAAY,uBAAoBE;AAAA,QAAE,OAAM;AAAA;mBAClE,MAAwF;AAAA,UAAxFJ,EAAwFK,GAAA,EAAxE,OAAM,OAAM,GAAA;AAAA,uBAAE,MAAyC;AAAA,kBAAtCN,EAAA,MAAK,4BAAA,CAAA,GAAA,CAAA;AAAA;;;UACtCC,EAECK,GAAA,EAFe,OAAM,QAAO,GAAA;AAAA,uBACzB,MAA0C;AAAA,kBAAvCN,EAAA,MAAK,6BAAA,CAAA,GAAA,CAAA;AAAA;;;;;;;;;;;"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import m from "../../../../../utils/i18n.js";
|
|
2
|
-
import { resolveComponent as o, createBlock as
|
|
3
|
-
|
|
4
|
-
import c from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
2
|
+
import { resolveComponent as o, createBlock as p, openBlock as c, withCtx as e, createVNode as n, createTextVNode as a, toDisplayString as d } from "vue";
|
|
3
|
+
import _ from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
5
4
|
const f = {
|
|
6
5
|
name: "sub-form-labelAlign-editor",
|
|
7
6
|
mixins: [m],
|
|
@@ -11,27 +10,27 @@ const f = {
|
|
|
11
10
|
optionModel: Object
|
|
12
11
|
}
|
|
13
12
|
};
|
|
14
|
-
function b(t, i,
|
|
15
|
-
const
|
|
16
|
-
return
|
|
13
|
+
function b(t, i, l, A, v, j) {
|
|
14
|
+
const r = o("a-radio-button"), s = o("a-radio-group"), g = o("a-form-item");
|
|
15
|
+
return c(), p(g, {
|
|
17
16
|
label: t.i18nt("designer.setting.labelAlign")
|
|
18
17
|
}, {
|
|
19
18
|
default: e(() => [
|
|
20
19
|
n(s, {
|
|
21
|
-
value:
|
|
22
|
-
"onUpdate:value": i[0] || (i[0] = (
|
|
20
|
+
value: l.optionModel.labelAlign,
|
|
21
|
+
"onUpdate:value": i[0] || (i[0] = (u) => l.optionModel.labelAlign = u),
|
|
23
22
|
class: "radio-group-custom"
|
|
24
23
|
}, {
|
|
25
24
|
default: e(() => [
|
|
26
|
-
n(
|
|
25
|
+
n(r, { value: "left" }, {
|
|
27
26
|
default: e(() => [
|
|
28
|
-
|
|
27
|
+
a(d(t.i18nt("designer.setting.leftAlign")), 1)
|
|
29
28
|
]),
|
|
30
29
|
_: 1
|
|
31
30
|
}),
|
|
32
|
-
n(
|
|
31
|
+
n(r, { value: "right" }, {
|
|
33
32
|
default: e(() => [
|
|
34
|
-
|
|
33
|
+
a(d(t.i18nt("designer.setting.rightAlign")), 1)
|
|
35
34
|
]),
|
|
36
35
|
_: 1
|
|
37
36
|
})
|
|
@@ -42,8 +41,8 @@ function b(t, i, a, v, A, j) {
|
|
|
42
41
|
_: 1
|
|
43
42
|
}, 8, ["label"]);
|
|
44
43
|
}
|
|
45
|
-
const
|
|
44
|
+
const h = /* @__PURE__ */ _(f, [["render", b]]);
|
|
46
45
|
export {
|
|
47
|
-
|
|
46
|
+
h as default
|
|
48
47
|
};
|
|
49
48
|
//# sourceMappingURL=sub-form-labelAlign-editor.vue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sub-form-labelAlign-editor.vue.js","sources":["../../../../../../../src/components/form-designer/setting-panel/property-editor/container-sub-form/sub-form-labelAlign-editor.vue"],"sourcesContent":["<template>\n
|
|
1
|
+
{"version":3,"file":"sub-form-labelAlign-editor.vue.js","sources":["../../../../../../../src/components/form-designer/setting-panel/property-editor/container-sub-form/sub-form-labelAlign-editor.vue"],"sourcesContent":["<template>\n <a-form-item :label=\"i18nt('designer.setting.labelAlign')\">\n <a-radio-group v-model:value=\"optionModel.labelAlign\" class=\"radio-group-custom\">\n <a-radio-button value=\"left\">\n {{ i18nt('designer.setting.leftAlign') }}\n </a-radio-button>\n <!-- <a-radio-button value=\"label-center-align\">\n {{ i18nt('designer.setting.centerAlign') }}\n </a-radio-button> -->\n <a-radio-button value=\"right\">\n {{ i18nt('designer.setting.rightAlign') }}\n </a-radio-button>\n </a-radio-group>\n </a-form-item>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n\n export default {\n name: 'sub-form-labelAlign-editor',\n mixins: [i18n],\n props: {\n designer: Object,\n selectedWidget: Object,\n optionModel: Object\n }\n };\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["_sfc_main","i18n","_createBlock","_component_a_form_item","_ctx","_createVNode","_component_a_radio_group","$props","_cache","$event","_component_a_radio_button"],"mappings":";;;AAmBI,MAAKA,IAAU;AAAA,EACX,MAAM;AAAA,EACN,QAAQ,CAACC,CAAI;AAAA,EACb,OAAO;AAAA,IACH,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB,aAAa;AAAA,EACjB;;;;cAzBJC,EAYcC,GAAA;AAAA,IAZA,OAAOC,EAAA,MAAK,6BAAA;AAAA;eACtB,MAUgB;AAAA,MAVhBC,EAUgBC,GAAA;AAAA,QAVO,OAAOC,EAAA,YAAY;AAAA,QAAZ,kBAAAC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAF,EAAA,YAAY,aAAUE;AAAA,QAAE,OAAM;AAAA;mBACxD,MAEiB;AAAA,UAFjBJ,EAEiBK,GAAA,EAFD,OAAM,OAAM,GAAA;AAAA,uBACxB,MAAyC;AAAA,kBAAtCN,EAAA,MAAK,4BAAA,CAAA,GAAA,CAAA;AAAA;;;UAKZC,EAEiBK,GAAA,EAFD,OAAM,QAAO,GAAA;AAAA,uBACzB,MAA0C;AAAA,kBAAvCN,EAAA,MAAK,6BAAA,CAAA,GAAA,CAAA;AAAA;;;;;;;;;;;"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import p from "../../../../../utils/i18n.js";
|
|
2
2
|
import { resolveComponent as i, createBlock as s, openBlock as m, withCtx as o, createVNode as e, createTextVNode as n } from "vue";
|
|
3
|
-
/* empty css */
|
|
4
3
|
import f from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
5
4
|
const c = {
|
|
6
5
|
name: "vf-drawer-direction-editor",
|
|
@@ -16,14 +15,14 @@ const c = {
|
|
|
16
15
|
}
|
|
17
16
|
};
|
|
18
17
|
function v(a, t, d, b, g, x) {
|
|
19
|
-
const r = i("a-radio-button"), l = i("a-radio-group"),
|
|
20
|
-
return m(), s(
|
|
18
|
+
const r = i("a-radio-button"), l = i("a-radio-group"), u = i("a-form-item");
|
|
19
|
+
return m(), s(u, {
|
|
21
20
|
label: a.i18nt("designer.setting.drawDirection")
|
|
22
21
|
}, {
|
|
23
22
|
default: o(() => [
|
|
24
23
|
e(l, {
|
|
25
24
|
value: d.optionModel.direction,
|
|
26
|
-
"onUpdate:value": t[0] || (t[0] = (
|
|
25
|
+
"onUpdate:value": t[0] || (t[0] = (_) => d.optionModel.direction = _),
|
|
27
26
|
class: "radio-group-custom"
|
|
28
27
|
}, {
|
|
29
28
|
default: o(() => [
|
|
@@ -62,8 +61,8 @@ function v(a, t, d, b, g, x) {
|
|
|
62
61
|
_: 1
|
|
63
62
|
}, 8, ["label"]);
|
|
64
63
|
}
|
|
65
|
-
const
|
|
64
|
+
const M = /* @__PURE__ */ f(c, [["render", v]]);
|
|
66
65
|
export {
|
|
67
|
-
|
|
66
|
+
M as default
|
|
68
67
|
};
|
|
69
68
|
//# sourceMappingURL=vf-drawer-direction-editor.vue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vf-drawer-direction-editor.vue.js","sources":["../../../../../../../src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-direction-editor.vue"],"sourcesContent":["<template>\n
|
|
1
|
+
{"version":3,"file":"vf-drawer-direction-editor.vue.js","sources":["../../../../../../../src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-direction-editor.vue"],"sourcesContent":["<template>\n <a-form-item :label=\"i18nt('designer.setting.drawDirection')\">\n <a-radio-group v-model:value=\"optionModel.direction\" class=\"radio-group-custom\">\n <a-radio-button value=\"rtl\">左</a-radio-button>\n <a-radio-button value=\"ltr\">右</a-radio-button>\n <a-radio-button value=\"ttb\">下</a-radio-button>\n <a-radio-button value=\"btt\">上</a-radio-button>\n </a-radio-group>\n </a-form-item>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n\n export default {\n name: 'vf-drawer-direction-editor',\n mixins: [i18n],\n components: {},\n props: {\n designer: Object,\n selectedWidget: Object,\n optionModel: Object\n },\n computed: {\n //\n }\n };\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["_sfc_main","i18n","_createBlock","_component_a_form_item","_ctx","_createVNode","_component_a_radio_group","$props","_cache","$event","_component_a_radio_button"],"mappings":";;;AAcI,MAAKA,IAAU;AAAA,EACX,MAAM;AAAA,EACN,QAAQ,CAACC,CAAI;AAAA,EACb,YAAY,CAAA;AAAA,EACZ,OAAO;AAAA,IACH,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB,aAAa;AAAA;EAEjB,UAAU;AAAA;AAAA,EAEV;;;;cAxBJC,EAOcC,GAAA;AAAA,IAPA,OAAOC,EAAA,MAAK,gCAAA;AAAA;eACtB,MAKgB;AAAA,MALhBC,EAKgBC,GAAA;AAAA,QALO,OAAOC,EAAA,YAAY;AAAA,QAAZ,kBAAAC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAF,EAAA,YAAY,YAASE;AAAA,QAAE,OAAM;AAAA;mBACvD,MAA8C;AAAA,UAA9CJ,EAA8CK,GAAA,EAA9B,OAAM,MAAK,GAAA;AAAA,uBAAC,MAACF,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA;AAAA,gBAAD,GAAC;AAAA;;;;UAC7BH,EAA8CK,GAAA,EAA9B,OAAM,MAAK,GAAA;AAAA,uBAAC,MAACF,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA;AAAA,gBAAD,GAAC;AAAA;;;;UAC7BH,EAA8CK,GAAA,EAA9B,OAAM,MAAK,GAAA;AAAA,uBAAC,MAACF,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA;AAAA,gBAAD,GAAC;AAAA;;;;UAC7BH,EAA8CK,GAAA,EAA9B,OAAM,MAAK,GAAA;AAAA,uBAAC,MAACF,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA;AAAA,gBAAD,GAAC;AAAA;;;;;;;;;;;;"}
|
|
@@ -48,7 +48,7 @@ function A(t, l, o, h, x, s) {
|
|
|
48
48
|
_: 1
|
|
49
49
|
}, 8, ["label"])) : _("", !0);
|
|
50
50
|
}
|
|
51
|
-
const C = /* @__PURE__ */ b(v, [["render", A], ["__scopeId", "data-v-
|
|
51
|
+
const C = /* @__PURE__ */ b(v, [["render", A], ["__scopeId", "data-v-0a6f90f5"]]);
|
|
52
52
|
export {
|
|
53
53
|
C as default
|
|
54
54
|
};
|
package/src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labelAlign-editor.vue.js","sources":["../../../../../../src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue"],"sourcesContent":["<template>\n
|
|
1
|
+
{"version":3,"file":"labelAlign-editor.vue.js","sources":["../../../../../../src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue"],"sourcesContent":["<template>\n <a-form-item\n :label=\"i18nt('designer.setting.labelAlign')\"\n v-if=\"!noLabelSetting && selectedWidget.type !== 'button'\"\n >\n <a-radio-group v-model:value=\"optionModel.labelAlign\" class=\"radio-group-custom\">\n <a-radio-button value=\"left\"> {{ i18nt('designer.setting.leftAlign') }}</a-radio-button>\n <!-- <a-radio-button value=\"label-center-align\">\n {{ i18nt('designer.setting.centerAlign') }}</a-radio-button\n > -->\n <a-radio-button value=\"right\">\n {{ i18nt('designer.setting.rightAlign') }}</a-radio-button\n >\n </a-radio-group>\n </a-form-item>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n\n export default {\n name: 'labelAlign-editor',\n mixins: [i18n],\n props: {\n designer: Object,\n selectedWidget: Object,\n optionModel: Object\n },\n computed: {\n noLabelSetting() {\n return (\n this.selectedWidget.type === 'static-text' ||\n this.selectedWidget.type === 'html-text'\n );\n //|| (this.selectedWidget.type === 'divider')\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .radio-group-custom {\n :deep(.ant-radio-button__inner) {\n padding-left: 12px;\n padding-right: 12px;\n }\n }\n</style>\n"],"names":["_sfc_main","i18n","$options","$props","_createBlock","_component_a_form_item","_ctx","_createVNode","_component_a_radio_group","_cache","$event","_component_a_radio_button"],"mappings":";;;;AAoBI,MAAKA,IAAU;AAAA,EACX,MAAM;AAAA,EACN,QAAQ,CAACC,CAAI;AAAA,EACb,OAAO;AAAA,IACH,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB,aAAa;AAAA;EAEjB,UAAU;AAAA,IACN,iBAAiB;AACb,aACI,KAAK,eAAe,SAAS,iBAC7B,KAAK,eAAe,SAAS;AAAA,IAGrC;AAAA,EACJ;;;;UAjCOC,EAAA,kBAAkBC,EAAA,eAAe,SAAI,iBAFhDC,EAacC,GAAA;AAAA;IAZT,OAAOC,EAAA,MAAK,6BAAA;AAAA;eAGb,MAQgB;AAAA,MARhBC,EAQgBC,GAAA;AAAA,QARO,OAAOL,EAAA,YAAY;AAAA,QAAZ,kBAAAM,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAP,EAAA,YAAY,aAAUO;AAAA,QAAE,OAAM;AAAA;mBACxD,MAAwF;AAAA,UAAxFH,EAAwFI,GAAA,EAAxE,OAAM,OAAM,GAAA;AAAA,uBAAE,MAAyC;AAAA,kBAAtCL,EAAA,MAAK,4BAAA,CAAA,GAAA,CAAA;AAAA;;;UAItCC,EAECI,GAAA,EAFe,OAAM,QAAO,GAAA;AAAA,uBACzB,MAA0C;AAAA,kBAAvCL,EAAA,MAAK,6BAAA,CAAA,GAAA,CAAA;AAAA;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./index.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
|
-
import
|
|
4
|
-
const f = /* @__PURE__ */
|
|
3
|
+
import r from "../../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
+
const f = /* @__PURE__ */ r(o, [["__scopeId", "data-v-700f328e"]]);
|
|
5
5
|
export {
|
|
6
6
|
f as default
|
|
7
7
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.js","sources":["../../../../../src/components/form-designer/toolbar-panel/index.vue"],"sourcesContent":["<template>\n <div class=\"toolbar-container\">\n <div class=\"left-toolbar\">\n <a-button type=\"link\" @click=\"changeLeftWidth()\">\n <svg-icon\n :style=\"`transform:${leftWidth === 0 ? 'rotate(180deg)' : 'rotate(0deg)'}`\"\n icon-class=\"a-ipadarrow_back\"\n />\n </a-button>\n <a-button\n type=\"link\"\n :disabled=\"undoDisabled\"\n :title=\"i18nt('designer.toolbar.undoHint')\"\n @click=\"undoHistory\"\n >\n <svg-icon icon-class=\"undo\"\n /></a-button>\n <a-button\n type=\"link\"\n :disabled=\"redoDisabled\"\n :title=\"i18nt('designer.toolbar.redoHint')\"\n @click=\"redoHistory\"\n >\n <svg-icon icon-class=\"redo\"\n /></a-button>\n <a-radio-group v-model:value=\"layoutType\">\n <a-radio-button\n value=\"PC\"\n :type=\"layoutType === 'PC' ? 'primary' : ''\"\n @click=\"changeLayoutType('PC')\"\n >\n {{ i18nt('designer.toolbar.pcLayout') }}</a-radio-button\n >\n <a-radio-button\n value=\"Pad\"\n :type=\"layoutType === 'Pad' ? 'primary' : ''\"\n @click=\"changeLayoutType('Pad')\"\n >\n {{ i18nt('designer.toolbar.padLayout') }}</a-radio-button\n >\n <a-radio-button\n :type=\"layoutType === 'H5' ? 'primary' : ''\"\n @click=\"changeLayoutType('H5')\"\n value=\"H5\"\n >\n {{ i18nt('designer.toolbar.mobileLayout') }}</a-radio-button\n >\n </a-radio-group>\n <a-button\n style=\"margin-left: 20px\"\n :title=\"i18nt('designer.toolbar.nodeTreeHint')\"\n @click=\"showNodeTreeDrawer\"\n >\n <svg-icon icon-class=\"node-tree\"\n /></a-button>\n </div>\n\n <a-drawer\n :title=\"i18nt('designer.toolbar.nodeTreeTitle')\"\n direction=\"ltr\"\n v-model:open=\"showNodeTreeDrawerFlag\"\n :width=\"280\"\n :destroy-on-close=\"true\"\n class=\"node-tree-drawer\"\n >\n <a-tree\n ref=\"nodeTree\"\n :treeData=\"nodeTreeData\"\n default-expand-all\n highlight-current\n class=\"node-tree\"\n icon-class=\"el-icon-arrow-right\"\n :fieldNames=\"{ children: 'children', title: 'label', key: 'id' }\"\n />\n </a-drawer>\n\n <div class=\"right-toolbar\">\n <div class=\"right-toolbar-con\">\n <a-button\n v-if=\"showToolButton('clearDesignerButton')\"\n type=\"link\"\n @click=\"clearFormWidget\"\n >\n <svg-icon icon-class=\"el-delete\" />{{ i18nt('designer.toolbar.clear') }}\n </a-button>\n <a-button\n v-if=\"showToolButton('previewFormButton')\"\n type=\"link\"\n @click=\"previewForm\"\n >\n <svg-icon icon-class=\"el-view\" />{{ i18nt('designer.toolbar.preview') }}\n </a-button>\n <a-button v-if=\"showToolButton('importJsonButton')\" type=\"link\" @click=\"importJson\">\n {{ i18nt('designer.toolbar.importJson') }}\n </a-button>\n <a-button v-if=\"showToolButton('exportJsonButton')\" type=\"link\" @click=\"exportJson\">\n {{ i18nt('designer.toolbar.exportJson') }}\n </a-button>\n <a-button v-if=\"showToolButton('exportCodeButton')\" type=\"link\" @click=\"saveJson\">\n 保存\n </a-button>\n <a-button type=\"link\" @click=\"changeRightWidth()\">\n <svg-icon\n :style=\"`transform:${rightWidth === 0 ? 'rotate(0deg)' : 'rotate(180deg)'}`\"\n icon-class=\"a-ipadarrow_back\"\n />\n </a-button>\n <template v-for=\"(idx, slotName) in $slots\">\n <slot :name=\"slotName\"></slot>\n </template>\n </div>\n </div>\n\n <TpfModal\n :title=\"i18nt('designer.toolbar.preview')\"\n v-model:visible=\"showPreviewDialogFlag\"\n :show-close=\"true\"\n :close-on-click-modal=\"false\"\n :close-on-press-escape=\"false\"\n center\n class=\"drag-dialog\"\n width=\"75%\"\n :fullscreen=\"true\"\n >\n <div>\n <div\n class=\"form-render-wrapper\"\n :class=\"[\n layoutType === 'H5' ? 'h5-layout' : layoutType === 'Pad' ? 'pad-layout' : ''\n ]\"\n >\n <VFormRender\n :vfCtx=\"vfCtx\"\n ref=\"preForm\"\n :form-json=\"cloneDeep(formJson)\"\n :form-data=\"testFormData\"\n :preview-state=\"true\"\n :global-dsv=\"designerDsv\"\n @appendButtonClick=\"testOnAppendButtonClick\"\n @buttonClick=\"testOnButtonClick\"\n @formChange=\"handleFormChange\"\n />\n </div>\n </div>\n <template #footerRight>\n <!-- <a-button @click=\"insertData\">新增一个数据</a-button> -->\n <a-button @click=\"showData\">数据回显</a-button>\n <a-button type=\"primary\" @click=\"getFormData\">\n {{ i18nt('designer.hint.getFormData') }}\n </a-button>\n <a-button type=\"primary\" @click=\"resetForm\">\n {{ i18nt('designer.hint.resetForm') }}\n </a-button>\n <a-button type=\"primary\" @click=\"setFormDisabled\">\n {{ i18nt('designer.hint.disableForm') }}\n </a-button>\n <a-button type=\"primary\" @click=\"setFormEnabled\">\n {{ i18nt('designer.hint.enableForm') }}\n </a-button>\n <a-button @click=\"showPreviewDialogFlag = false\">\n {{ i18nt('designer.hint.closePreview') }}\n </a-button>\n </template>\n </TpfModal>\n\n <TpfCodeEditor\n ref=\"importJsonEditorRef\"\n :isShowEventFooter=\"false\"\n :event-header=\"i18nt('designer.hint.importJsonHint')\"\n v-model=\"importTemplate\"\n mode=\"json\"\n :width=\"1200\"\n height=\"70vh\"\n :title=\"i18nt('designer.toolbar.importJson')\"\n @set-code=\"doJsonImport\"\n />\n\n <TpfModal\n :title=\"i18nt('designer.hint.exportFormData')\"\n v-model:visible=\"showFormDataDialogFlag\"\n width=\"1200px\"\n >\n <CodeEditor :mode=\"'json'\" :readonly=\"true\" :value=\"exportTemplate\" />\n <template #footerRight>\n <a-button\n type=\"primary\"\n class=\"copy-form-data-json-btn\"\n :data-clipboard-text=\"exportTemplate\"\n @click=\"copyFormDataJson\"\n >\n {{ i18nt('designer.hint.copyFormData') }}\n </a-button>\n <a-button @click=\"saveFormData\">{{ i18nt('designer.hint.saveFormData') }}</a-button>\n <a-button @click=\"showFormDataDialogFlag = false\">\n {{ i18nt('designer.hint.closePreview') }}\n </a-button>\n </template>\n </TpfModal>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\n import { ref, computed, nextTick, onMounted, defineAsyncComponent, inject } from 'vue';\n import {\n copyToClipboard,\n generateId,\n getQueryParam,\n traverseAllWidgets,\n addWindowResizeHandler\n } from '@/utils/util';\n import { useI18n } from '@/utils/i18n';\n import { saveAs } from 'file-saver';\n import SvgIcon from '@/components/svg-icon/index.vue';\n import { fmtHttpParams } from '@/utils/request/fmtHttpParams';\n import { getLocat } from '@kp-ui/tool';\n import { cloneDeep } from 'lodash-es';\n import { CodeEditor, TpfModal, TpfCodeEditor } from 'tmgc2-share';\n import { message } from 'ant-design-vue';\n import { getCurrentInstance } from 'vue';\n\n // 组件定义\n const VFormRender = defineAsyncComponent(() => import('@/components/form-render/index.vue'));\n\n const ctx = getCurrentInstance();\n // Props 定义\n interface Props {\n leftWidth: number;\n rightWidth: number;\n changeRightWidth: () => void;\n changeLeftWidth: () => void;\n designer: any; // 可以根据实际类型定义更具体的类型\n saveJsonApi?: (formJson: any) => void;\n globalDsv?: Record<string, any>;\n }\n\n const props = withDefaults(defineProps<Props>(), {\n globalDsv: () => ({})\n });\n\n // Inject\n const getDesignerConfig = inject('getDesignerConfig') as () => any;\n\n // Refs\n const nodeTree = ref<any>(null);\n const preForm = ref<any>(null);\n const importJsonEditorRef = ref<any>(null);\n const exportJsonEditorRef = ref<any>(null);\n\n // 响应式数据\n const vfCtx = ref({ type: 'add', ...getLocat() });\n const designerConfig = ref(getDesignerConfig());\n const toolbarWidth = ref(460);\n const showPreviewDialogFlag = ref(false);\n const showImportJsonDialogFlag = ref(false);\n const showFormDataDialogFlag = ref(false);\n const showNodeTreeDrawerFlag = ref(false);\n const nodeTreeData = ref<any[]>([]);\n const importTemplate = ref('');\n const exportTemplate = ref('');\n const formDataJson = ref('');\n const htmlCode = ref('');\n\n const testFormData = ref({\n select62173: 2\n });\n\n // 计算属性\n const formJson = computed(() => {\n return {\n widgetList: cloneDeep(props.designer.widgetList),\n formConfig: cloneDeep(props.designer.formConfig)\n };\n });\n\n const undoDisabled = computed(() => {\n return !props.designer.undoEnabled();\n });\n\n const redoDisabled = computed(() => {\n return !props.designer.redoEnabled();\n });\n\n const layoutType = computed(() => {\n return props.designer.getLayoutType();\n });\n\n const designerDsv = computed(() => {\n return props.globalDsv;\n });\n\n // 生命周期钩子\n onMounted(() => {\n const maxTBWidth = designerConfig.value.toolbarMaxWidth || 460;\n const minTBWidth = designerConfig.value.toolbarMinWidth || 300;\n const newTBWidth = window.innerWidth - 260 - 300 - 320 - 80;\n toolbarWidth.value =\n newTBWidth >= maxTBWidth\n ? maxTBWidth\n : newTBWidth <= minTBWidth\n ? minTBWidth\n : newTBWidth;\n addWindowResizeHandler(() => {\n nextTick(() => {\n const newTBWidth2 = window.innerWidth - 260 - 300 - 320 - 80;\n toolbarWidth.value =\n newTBWidth2 >= maxTBWidth\n ? maxTBWidth\n : newTBWidth2 <= minTBWidth\n ? minTBWidth\n : newTBWidth2;\n });\n });\n });\n\n // 方法\n const { i18nt } = useI18n();\n\n const saveJson = () => {\n if (props.saveJsonApi) {\n props.saveJsonApi(formJson.value);\n }\n };\n\n const showToolButton = (configName: string): boolean => {\n if (designerConfig.value[configName] === undefined) {\n return true;\n }\n\n return !!designerConfig.value[configName];\n };\n\n const buildTreeNodeOfWidget = (widget: any, treeNode: any[]) => {\n const curNode = {\n id: widget.id,\n label: widget.options.label || widget.type,\n children: [] as any[]\n };\n treeNode.push(curNode);\n\n if (widget.category === undefined) {\n return;\n }\n\n if (widget.type === 'grid') {\n widget.cols.map((col: any) => {\n const colNode = {\n id: col.id,\n label: col.options.name || widget.type,\n children: [] as any[]\n };\n curNode.children.push(colNode);\n col.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, colNode.children);\n });\n });\n } else if (widget.type === 'table') {\n //TODO: 需要考虑合并单元格!!\n widget.rows.map((row: any) => {\n const rowNode = {\n id: row.id,\n label: 'table-row',\n selectable: false,\n children: [] as any[]\n };\n curNode.children.push(rowNode);\n\n row.cols.map((cell: any) => {\n if (!!cell.merged) {\n //跳过合并单元格!!\n return;\n }\n\n const rowChildren = rowNode.children;\n const cellNode = {\n id: cell.id,\n label: 'table-cell',\n children: [] as any[]\n };\n rowChildren.push(cellNode);\n\n cell.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, cellNode.children);\n });\n });\n });\n } else if (widget.type === 'tab') {\n widget.tabs.map((tab: any) => {\n const tabNode = {\n id: tab.id,\n label: tab.options.name || widget.type,\n selectable: false,\n children: [] as any[]\n };\n curNode.children.push(tabNode);\n tab.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, tabNode.children);\n });\n });\n } else if (widget.type === 'sub-form') {\n widget.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, curNode.children);\n });\n } else if (widget.category === 'container') {\n //自定义容器\n widget.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, curNode.children);\n });\n }\n };\n\n const refreshNodeTree = () => {\n nodeTreeData.value.length = 0;\n props.designer.widgetList.forEach((wItem: any) => {\n buildTreeNodeOfWidget(wItem, nodeTreeData.value);\n });\n };\n\n const showNodeTreeDrawer = () => {\n refreshNodeTree();\n showNodeTreeDrawerFlag.value = true;\n nextTick(() => {\n if (!!props.designer.selectedId) {\n //同步当前选中组件到节点树!!!\n nodeTree.value.setCurrentKey(props.designer.selectedId);\n }\n });\n };\n\n const saveImportTemplate = value => {\n saveAsFile(value, `vform${generateId()}.json`);\n };\n\n const undoHistory = () => {\n props.designer.undoHistoryStep();\n };\n\n const redoHistory = () => {\n props.designer.redoHistoryStep();\n };\n\n const changeLayoutType = (newType: string) => {\n props.designer.changeLayoutType(newType);\n };\n\n const clearFormWidget = () => {\n props.designer.clearDesigner();\n props.designer.formWidget.clearWidgetRefList();\n message.success('ok');\n };\n\n const previewForm = () => {\n showPreviewDialogFlag.value = true;\n // ctx!.proxy.$openCustomerModal({\n // ...vfCtx.value,\n // width: '90%'\n // });\n };\n\n const saveAsFile = (fileContent: string, defaultFileName: string) => {\n const value = 'json.json' || defaultFileName;\n\n if (getQueryParam('vscode') == 1) {\n vsSaveFile(value, fileContent);\n return;\n }\n\n const fileBlob = new Blob([fileContent], { type: 'text/plain;charset=utf-8' });\n saveAs(fileBlob, value);\n };\n\n const vsSaveFile = (fileName: string, fileContent: string) => {\n const msgObj = {\n cmd: 'writeFile',\n data: {\n fileName,\n code: fileContent\n }\n };\n window.parent.postMessage(msgObj, '*');\n };\n\n const importJson = () => {\n importTemplate.value = JSON.stringify(props.designer.getImportTemplate(), null, ' ');\n\n importJsonEditorRef.value.open();\n showImportJsonDialogFlag.value = true;\n };\n\n const doJsonImport = () => {\n try {\n const importObj = JSON.parse(importTemplate.value);\n if (!importObj || !importObj.formConfig) {\n throw new Error(i18nt('designer.hint.invalidJsonFormat'));\n }\n\n props.designer.loadFormJson(importObj);\n\n showImportJsonDialogFlag.value = false;\n message.success(i18nt('designer.hint.importJsonSuccess'));\n\n props.designer.emitHistoryChange();\n\n props.designer.emitEvent('form-json-imported', []);\n } catch (ex) {\n message.error(ex + '');\n }\n };\n\n const exportJson = () => {\n const widgetList = cloneDeep(props.designer.widgetList);\n const formConfig = cloneDeep(props.designer.formConfig);\n exportTemplate.value = JSON.stringify({ widgetList, formConfig }, null, ' ');\n // exportJsonEditorRef.value.open();\n showFormDataDialogFlag.value = true;\n };\n\n const showData = async () => {\n const formConfig = props.designer.formConfig;\n const { id: _id } = getLocat();\n const dsResult = await fmtHttpParams(formConfig.serveList.vformDetail, { _id });\n const leaveDates = [{ date: '2024-10-28' }, { date: '2024-10-29' }, { date: '2024-10-20' }];\n\n preForm.value.getWidgetRef('leaveDates').setValue(leaveDates);\n preForm.value.setFormData({\n ...dsResult\n });\n preForm.value.setReadMode(true);\n };\n\n const getFormData = () => {\n console.log(preForm.value);\n\n preForm.value\n .getFormData()\n .then((formData: any) => {\n formDataJson.value = JSON.stringify(formData, null, ' ');\n showFormDataDialogFlag.value = true;\n })\n .catch((error: any) => {\n message.error(error);\n });\n };\n\n const copyFormDataJson = (e: Event) => {\n copyToClipboard(\n exportTemplate.value,\n e,\n message,\n i18nt('designer.hint.copyJsonSuccess'),\n i18nt('designer.hint.copyJsonFail')\n );\n };\n\n const saveFormData = () => {\n saveAsFile(htmlCode.value, `formData${generateId()}.json`);\n };\n\n const resetForm = () => {\n preForm.value.resetForm();\n };\n\n const setFormDisabled = () => {\n preForm.value.disableForm();\n };\n\n const setFormEnabled = () => {\n preForm.value.enableForm();\n };\n\n const handleFormChange = (fieldName: string, newValue: any, oldValue: any, formModel: any) => {\n console.log('formModel', formModel);\n };\n\n const testOnAppendButtonClick = (clickedWidget: any) => {\n console.log('test', clickedWidget);\n };\n\n const testOnButtonClick = (button: any) => {\n console.log('test', button);\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .toolbar-container {\n width: 100%;\n display: flex;\n height: 42px;\n align-items: center;\n justify-content: space-between;\n }\n\n .left-toolbar {\n display: flex;\n margin-top: 4px;\n font-size: 16px;\n }\n\n .right-toolbar {\n display: flex;\n line-height: 42px;\n overflow: hidden;\n\n .right-toolbar-con {\n text-align: left;\n }\n\n :deep(.svg-icon) {\n margin-left: 0;\n margin-right: 0.05em;\n }\n }\n\n .no-box-shadow {\n box-shadow: none;\n }\n\n .form-render-wrapper.h5-layout {\n margin: 0 auto;\n width: 420px;\n border-radius: 15px;\n //border-width: 10px;\n box-shadow: 0 0 1px 10px #495060;\n height: calc(100vh - 175px);\n overflow-y: auto;\n overflow-x: hidden;\n }\n\n .form-render-wrapper.pad-layout {\n margin: 0 auto;\n width: 960px;\n border-radius: 15px;\n //border-width: 10px;\n box-shadow: 0 0 1px 10px #495060;\n height: calc(100vh - 175px);\n overflow-y: auto;\n overflow-x: hidden;\n }\n\n .node-tree-drawer {\n :deep(.el-drawer) {\n padding: 10px;\n overflow: auto;\n }\n\n :deep(.el-drawer__header) {\n margin-bottom: 12px;\n padding: 5px 5px 0;\n }\n\n :deep(.el-drawer__body) {\n padding-left: 5px;\n }\n }\n\n /*.node-tree-scroll-bar {*/\n /* height: 100%;*/\n /* overflow: auto;*/\n /*}*/\n\n :deep(.node-tree) {\n .el-tree > .el-tree-node:after {\n border-top: none;\n }\n .el-tree-node {\n position: relative;\n padding-left: 12px;\n }\n\n .el-tree-node__content {\n padding-left: 0 !important;\n }\n\n .el-tree-node__expand-icon.is-leaf {\n display: none;\n }\n\n .el-tree-node__children {\n padding-left: 12px;\n overflow: visible !important; /* 加入此行让el-tree宽度自动撑开,超出宽度el-draw自动出现水平滚动条! */\n }\n\n .el-tree-node :last-child:before {\n height: 38px;\n }\n\n .el-tree > .el-tree-node:before {\n border-left: none;\n }\n\n .el-tree > .el-tree-node:after {\n border-top: none;\n }\n\n .el-tree-node:before {\n content: '';\n left: -4px;\n position: absolute;\n right: auto;\n border-width: 1px;\n }\n\n .el-tree-node:after {\n content: '';\n left: -4px;\n position: absolute;\n right: auto;\n border-width: 1px;\n }\n\n .el-tree-node:before {\n border-left: 1px dashed #4386c6;\n bottom: 0px;\n height: 100%;\n top: -10px;\n width: 1px;\n }\n\n .el-tree-node:after {\n border-top: 1px dashed #4386c6;\n height: 20px;\n top: 12px;\n width: 16px;\n }\n\n .el-tree-node.is-current > .el-tree-node__content {\n background: #c2d6ea !important;\n }\n\n .el-tree-node__expand-icon {\n margin-left: -3px;\n padding: 6px 6px 6px 0px;\n font-size: 16px;\n }\n }\n</style>\n"],"names":["VFormRender","defineAsyncComponent","getCurrentInstance","props","__props","getDesignerConfig","inject","nodeTree","ref","preForm","importJsonEditorRef","vfCtx","getLocat","designerConfig","toolbarWidth","showPreviewDialogFlag","showImportJsonDialogFlag","showFormDataDialogFlag","showNodeTreeDrawerFlag","nodeTreeData","importTemplate","exportTemplate","formDataJson","htmlCode","testFormData","formJson","computed","cloneDeep","undoDisabled","redoDisabled","layoutType","designerDsv","onMounted","maxTBWidth","minTBWidth","newTBWidth","addWindowResizeHandler","nextTick","newTBWidth2","i18nt","useI18n","saveJson","showToolButton","configName","buildTreeNodeOfWidget","widget","treeNode","curNode","col","colNode","wChild","row","rowNode","cell","rowChildren","cellNode","tab","tabNode","refreshNodeTree","wItem","showNodeTreeDrawer","undoHistory","redoHistory","changeLayoutType","newType","clearFormWidget","message","previewForm","saveAsFile","fileContent","defaultFileName","value","getQueryParam","vsSaveFile","fileBlob","saveAs","fileName","msgObj","importJson","doJsonImport","importObj","ex","exportJson","widgetList","formConfig","showData","_id","dsResult","fmtHttpParams","leaveDates","getFormData","formData","error","copyFormDataJson","copyToClipboard","saveFormData","resetForm","setFormDisabled","setFormEnabled","handleFormChange","fieldName","newValue","oldValue","formModel","testOnAppendButtonClick","clickedWidget","testOnButtonClick","button","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_createVNode","_component_a_button","changeLeftWidth","SvgIcon","leftWidth","_unref","_component_a_radio_group","$event","_component_a_radio_button","_component_a_drawer","_component_a_tree","_hoisted_3","_hoisted_4","_createBlock","_cache","changeRightWidth","rightWidth","_Fragment","_renderList","$slots","idx","slotName","_renderSlot","_ctx","TpfModal","TpfCodeEditor","CodeEditor"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.vue2.js","sources":["../../../../../src/components/form-designer/toolbar-panel/index.vue"],"sourcesContent":["<template>\n <div class=\"toolbar-container\">\n <div class=\"left-toolbar\">\n <a-button type=\"link\" @click=\"changeLeftWidth()\">\n <svg-icon\n :style=\"`transform:${leftWidth === 0 ? 'rotate(180deg)' : 'rotate(0deg)'}`\"\n icon-class=\"a-ipadarrow_back\"\n />\n </a-button>\n <a-button\n type=\"link\"\n :disabled=\"undoDisabled\"\n :title=\"i18nt('designer.toolbar.undoHint')\"\n @click=\"undoHistory\"\n >\n <svg-icon icon-class=\"undo\"\n /></a-button>\n <a-button\n type=\"link\"\n :disabled=\"redoDisabled\"\n :title=\"i18nt('designer.toolbar.redoHint')\"\n @click=\"redoHistory\"\n >\n <svg-icon icon-class=\"redo\"\n /></a-button>\n <a-radio-group v-model:value=\"layoutType\">\n <a-radio-button\n value=\"PC\"\n :type=\"layoutType === 'PC' ? 'primary' : ''\"\n @click=\"changeLayoutType('PC')\"\n >\n {{ i18nt('designer.toolbar.pcLayout') }}</a-radio-button\n >\n <a-radio-button\n value=\"Pad\"\n :type=\"layoutType === 'Pad' ? 'primary' : ''\"\n @click=\"changeLayoutType('Pad')\"\n >\n {{ i18nt('designer.toolbar.padLayout') }}</a-radio-button\n >\n <a-radio-button\n :type=\"layoutType === 'H5' ? 'primary' : ''\"\n @click=\"changeLayoutType('H5')\"\n value=\"H5\"\n >\n {{ i18nt('designer.toolbar.mobileLayout') }}</a-radio-button\n >\n </a-radio-group>\n <a-button\n style=\"margin-left: 20px\"\n :title=\"i18nt('designer.toolbar.nodeTreeHint')\"\n @click=\"showNodeTreeDrawer\"\n >\n <svg-icon icon-class=\"node-tree\"\n /></a-button>\n </div>\n\n <a-drawer\n :title=\"i18nt('designer.toolbar.nodeTreeTitle')\"\n direction=\"ltr\"\n v-model:open=\"showNodeTreeDrawerFlag\"\n :width=\"280\"\n :destroy-on-close=\"true\"\n class=\"node-tree-drawer\"\n >\n <a-tree\n ref=\"nodeTree\"\n :treeData=\"nodeTreeData\"\n default-expand-all\n highlight-current\n class=\"node-tree\"\n icon-class=\"el-icon-arrow-right\"\n :fieldNames=\"{ children: 'children', title: 'label', key: 'id' }\"\n />\n </a-drawer>\n\n <div class=\"right-toolbar\">\n <div class=\"right-toolbar-con\">\n <a-button\n v-if=\"showToolButton('clearDesignerButton')\"\n type=\"link\"\n @click=\"clearFormWidget\"\n >\n <svg-icon icon-class=\"el-delete\" />{{ i18nt('designer.toolbar.clear') }}\n </a-button>\n <a-button\n v-if=\"showToolButton('previewFormButton')\"\n type=\"link\"\n @click=\"previewForm\"\n >\n <svg-icon icon-class=\"el-view\" />{{ i18nt('designer.toolbar.preview') }}\n </a-button>\n <a-button v-if=\"showToolButton('importJsonButton')\" type=\"link\" @click=\"importJson\">\n {{ i18nt('designer.toolbar.importJson') }}\n </a-button>\n <a-button v-if=\"showToolButton('exportJsonButton')\" type=\"link\" @click=\"exportJson\">\n {{ i18nt('designer.toolbar.exportJson') }}\n </a-button>\n <a-button v-if=\"showToolButton('exportCodeButton')\" type=\"link\" @click=\"saveJson\">\n 保存\n </a-button>\n <a-button type=\"link\" @click=\"changeRightWidth()\">\n <svg-icon\n :style=\"`transform:${rightWidth === 0 ? 'rotate(0deg)' : 'rotate(180deg)'}`\"\n icon-class=\"a-ipadarrow_back\"\n />\n </a-button>\n <template v-for=\"(idx, slotName) in $slots\">\n <slot :name=\"slotName\"></slot>\n </template>\n </div>\n </div>\n\n <TpfModal\n :title=\"i18nt('designer.toolbar.preview')\"\n v-model:visible=\"showPreviewDialogFlag\"\n :show-close=\"true\"\n :close-on-click-modal=\"false\"\n :close-on-press-escape=\"false\"\n center\n class=\"drag-dialog\"\n width=\"75%\"\n :fullscreen=\"true\"\n >\n <div>\n <div\n class=\"form-render-wrapper\"\n :class=\"[\n layoutType === 'H5' ? 'h5-layout' : layoutType === 'Pad' ? 'pad-layout' : ''\n ]\"\n >\n <VFormRender\n :vfCtx=\"vfCtx\"\n ref=\"preForm\"\n :form-json=\"cloneDeep(formJson)\"\n :form-data=\"testFormData\"\n :preview-state=\"true\"\n :global-dsv=\"designerDsv\"\n @appendButtonClick=\"testOnAppendButtonClick\"\n @buttonClick=\"testOnButtonClick\"\n @formChange=\"handleFormChange\"\n />\n </div>\n </div>\n <template #footerRight>\n <!-- <a-button @click=\"insertData\">新增一个数据</a-button> -->\n <a-button @click=\"showData\">数据回显</a-button>\n <a-button type=\"primary\" @click=\"getFormData\">\n {{ i18nt('designer.hint.getFormData') }}\n </a-button>\n <a-button type=\"primary\" @click=\"resetForm\">\n {{ i18nt('designer.hint.resetForm') }}\n </a-button>\n <a-button type=\"primary\" @click=\"setFormDisabled\">\n {{ i18nt('designer.hint.disableForm') }}\n </a-button>\n <a-button type=\"primary\" @click=\"setFormEnabled\">\n {{ i18nt('designer.hint.enableForm') }}\n </a-button>\n <a-button @click=\"showPreviewDialogFlag = false\">\n {{ i18nt('designer.hint.closePreview') }}\n </a-button>\n </template>\n </TpfModal>\n\n <TpfCodeEditor\n ref=\"importJsonEditorRef\"\n :isShowEventFooter=\"false\"\n :event-header=\"i18nt('designer.hint.importJsonHint')\"\n v-model=\"importTemplate\"\n mode=\"json\"\n :width=\"1200\"\n height=\"70vh\"\n :title=\"i18nt('designer.toolbar.importJson')\"\n @set-code=\"doJsonImport\"\n />\n\n <TpfModal\n :title=\"i18nt('designer.hint.exportFormData')\"\n v-model:visible=\"showFormDataDialogFlag\"\n width=\"1200px\"\n >\n <CodeEditor :mode=\"'json'\" :readonly=\"true\" :value=\"exportTemplate\" />\n <template #footerRight>\n <a-button\n type=\"primary\"\n class=\"copy-form-data-json-btn\"\n :data-clipboard-text=\"exportTemplate\"\n @click=\"copyFormDataJson\"\n >\n {{ i18nt('designer.hint.copyFormData') }}\n </a-button>\n <a-button @click=\"saveFormData\">{{ i18nt('designer.hint.saveFormData') }}</a-button>\n <a-button @click=\"showFormDataDialogFlag = false\">\n {{ i18nt('designer.hint.closePreview') }}\n </a-button>\n </template>\n </TpfModal>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\n import { ref, computed, nextTick, onMounted, defineAsyncComponent, inject } from 'vue';\n import {\n copyToClipboard,\n generateId,\n getQueryParam,\n traverseAllWidgets,\n addWindowResizeHandler\n } from '@/utils/util';\n import { useI18n } from '@/utils/i18n';\n import { saveAs } from 'file-saver';\n import SvgIcon from '@/components/svg-icon/index.vue';\n import { fmtHttpParams } from '@/utils/request/fmtHttpParams';\n import { getLocat } from '@kp-ui/tool';\n import { cloneDeep } from 'lodash-es';\n import { CodeEditor, TpfModal, TpfCodeEditor } from 'tmgc2-share';\n import { message } from 'ant-design-vue';\n import { getCurrentInstance } from 'vue';\n\n // 组件定义\n const VFormRender = defineAsyncComponent(() => import('@/components/form-render/index.vue'));\n\n const ctx = getCurrentInstance();\n // Props 定义\n interface Props {\n leftWidth: number;\n rightWidth: number;\n changeRightWidth: () => void;\n changeLeftWidth: () => void;\n designer: any; // 可以根据实际类型定义更具体的类型\n saveJsonApi?: (formJson: any) => void;\n globalDsv?: Record<string, any>;\n }\n\n const props = withDefaults(defineProps<Props>(), {\n globalDsv: () => ({})\n });\n\n // Inject\n const getDesignerConfig = inject('getDesignerConfig') as () => any;\n\n // Refs\n const nodeTree = ref<any>(null);\n const preForm = ref<any>(null);\n const importJsonEditorRef = ref<any>(null);\n const exportJsonEditorRef = ref<any>(null);\n\n // 响应式数据\n const vfCtx = ref({ type: 'add', ...getLocat() });\n const designerConfig = ref(getDesignerConfig());\n const toolbarWidth = ref(460);\n const showPreviewDialogFlag = ref(false);\n const showImportJsonDialogFlag = ref(false);\n const showFormDataDialogFlag = ref(false);\n const showNodeTreeDrawerFlag = ref(false);\n const nodeTreeData = ref<any[]>([]);\n const importTemplate = ref('');\n const exportTemplate = ref('');\n const formDataJson = ref('');\n const htmlCode = ref('');\n\n const testFormData = ref({\n select62173: 2\n });\n\n // 计算属性\n const formJson = computed(() => {\n return {\n widgetList: cloneDeep(props.designer.widgetList),\n formConfig: cloneDeep(props.designer.formConfig)\n };\n });\n\n const undoDisabled = computed(() => {\n return !props.designer.undoEnabled();\n });\n\n const redoDisabled = computed(() => {\n return !props.designer.redoEnabled();\n });\n\n const layoutType = computed(() => {\n return props.designer.getLayoutType();\n });\n\n const designerDsv = computed(() => {\n return props.globalDsv;\n });\n\n // 生命周期钩子\n onMounted(() => {\n const maxTBWidth = designerConfig.value.toolbarMaxWidth || 460;\n const minTBWidth = designerConfig.value.toolbarMinWidth || 300;\n const newTBWidth = window.innerWidth - 260 - 300 - 320 - 80;\n toolbarWidth.value =\n newTBWidth >= maxTBWidth\n ? maxTBWidth\n : newTBWidth <= minTBWidth\n ? minTBWidth\n : newTBWidth;\n addWindowResizeHandler(() => {\n nextTick(() => {\n const newTBWidth2 = window.innerWidth - 260 - 300 - 320 - 80;\n toolbarWidth.value =\n newTBWidth2 >= maxTBWidth\n ? maxTBWidth\n : newTBWidth2 <= minTBWidth\n ? minTBWidth\n : newTBWidth2;\n });\n });\n });\n\n // 方法\n const { i18nt } = useI18n();\n\n const saveJson = () => {\n if (props.saveJsonApi) {\n props.saveJsonApi(formJson.value);\n }\n };\n\n const showToolButton = (configName: string): boolean => {\n if (designerConfig.value[configName] === undefined) {\n return true;\n }\n\n return !!designerConfig.value[configName];\n };\n\n const buildTreeNodeOfWidget = (widget: any, treeNode: any[]) => {\n const curNode = {\n id: widget.id,\n label: widget.options.label || widget.type,\n children: [] as any[]\n };\n treeNode.push(curNode);\n\n if (widget.category === undefined) {\n return;\n }\n\n if (widget.type === 'grid') {\n widget.cols.map((col: any) => {\n const colNode = {\n id: col.id,\n label: col.options.name || widget.type,\n children: [] as any[]\n };\n curNode.children.push(colNode);\n col.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, colNode.children);\n });\n });\n } else if (widget.type === 'table') {\n //TODO: 需要考虑合并单元格!!\n widget.rows.map((row: any) => {\n const rowNode = {\n id: row.id,\n label: 'table-row',\n selectable: false,\n children: [] as any[]\n };\n curNode.children.push(rowNode);\n\n row.cols.map((cell: any) => {\n if (!!cell.merged) {\n //跳过合并单元格!!\n return;\n }\n\n const rowChildren = rowNode.children;\n const cellNode = {\n id: cell.id,\n label: 'table-cell',\n children: [] as any[]\n };\n rowChildren.push(cellNode);\n\n cell.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, cellNode.children);\n });\n });\n });\n } else if (widget.type === 'tab') {\n widget.tabs.map((tab: any) => {\n const tabNode = {\n id: tab.id,\n label: tab.options.name || widget.type,\n selectable: false,\n children: [] as any[]\n };\n curNode.children.push(tabNode);\n tab.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, tabNode.children);\n });\n });\n } else if (widget.type === 'sub-form') {\n widget.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, curNode.children);\n });\n } else if (widget.category === 'container') {\n //自定义容器\n widget.widgetList.map((wChild: any) => {\n buildTreeNodeOfWidget(wChild, curNode.children);\n });\n }\n };\n\n const refreshNodeTree = () => {\n nodeTreeData.value.length = 0;\n props.designer.widgetList.forEach((wItem: any) => {\n buildTreeNodeOfWidget(wItem, nodeTreeData.value);\n });\n };\n\n const showNodeTreeDrawer = () => {\n refreshNodeTree();\n showNodeTreeDrawerFlag.value = true;\n nextTick(() => {\n if (!!props.designer.selectedId) {\n //同步当前选中组件到节点树!!!\n nodeTree.value.setCurrentKey(props.designer.selectedId);\n }\n });\n };\n\n const saveImportTemplate = value => {\n saveAsFile(value, `vform${generateId()}.json`);\n };\n\n const undoHistory = () => {\n props.designer.undoHistoryStep();\n };\n\n const redoHistory = () => {\n props.designer.redoHistoryStep();\n };\n\n const changeLayoutType = (newType: string) => {\n props.designer.changeLayoutType(newType);\n };\n\n const clearFormWidget = () => {\n props.designer.clearDesigner();\n props.designer.formWidget.clearWidgetRefList();\n message.success('ok');\n };\n\n const previewForm = () => {\n showPreviewDialogFlag.value = true;\n // ctx!.proxy.$openCustomerModal({\n // ...vfCtx.value,\n // width: '90%'\n // });\n };\n\n const saveAsFile = (fileContent: string, defaultFileName: string) => {\n const value = 'json.json' || defaultFileName;\n\n if (getQueryParam('vscode') == 1) {\n vsSaveFile(value, fileContent);\n return;\n }\n\n const fileBlob = new Blob([fileContent], { type: 'text/plain;charset=utf-8' });\n saveAs(fileBlob, value);\n };\n\n const vsSaveFile = (fileName: string, fileContent: string) => {\n const msgObj = {\n cmd: 'writeFile',\n data: {\n fileName,\n code: fileContent\n }\n };\n window.parent.postMessage(msgObj, '*');\n };\n\n const importJson = () => {\n importTemplate.value = JSON.stringify(props.designer.getImportTemplate(), null, ' ');\n\n importJsonEditorRef.value.open();\n showImportJsonDialogFlag.value = true;\n };\n\n const doJsonImport = () => {\n try {\n const importObj = JSON.parse(importTemplate.value);\n if (!importObj || !importObj.formConfig) {\n throw new Error(i18nt('designer.hint.invalidJsonFormat'));\n }\n\n props.designer.loadFormJson(importObj);\n\n showImportJsonDialogFlag.value = false;\n message.success(i18nt('designer.hint.importJsonSuccess'));\n\n props.designer.emitHistoryChange();\n\n props.designer.emitEvent('form-json-imported', []);\n } catch (ex) {\n message.error(ex + '');\n }\n };\n\n const exportJson = () => {\n const widgetList = cloneDeep(props.designer.widgetList);\n const formConfig = cloneDeep(props.designer.formConfig);\n exportTemplate.value = JSON.stringify({ widgetList, formConfig }, null, ' ');\n // exportJsonEditorRef.value.open();\n showFormDataDialogFlag.value = true;\n };\n\n const showData = async () => {\n const formConfig = props.designer.formConfig;\n const { id: _id } = getLocat();\n const dsResult = await fmtHttpParams(formConfig.serveList.vformDetail, { _id });\n const leaveDates = [{ date: '2024-10-28' }, { date: '2024-10-29' }, { date: '2024-10-20' }];\n\n preForm.value.getWidgetRef('leaveDates').setValue(leaveDates);\n preForm.value.setFormData({\n ...dsResult\n });\n preForm.value.setReadMode(true);\n };\n\n const getFormData = () => {\n console.log(preForm.value);\n\n preForm.value\n .getFormData()\n .then((formData: any) => {\n formDataJson.value = JSON.stringify(formData, null, ' ');\n showFormDataDialogFlag.value = true;\n })\n .catch((error: any) => {\n message.error(error);\n });\n };\n\n const copyFormDataJson = (e: Event) => {\n copyToClipboard(\n exportTemplate.value,\n e,\n message,\n i18nt('designer.hint.copyJsonSuccess'),\n i18nt('designer.hint.copyJsonFail')\n );\n };\n\n const saveFormData = () => {\n saveAsFile(htmlCode.value, `formData${generateId()}.json`);\n };\n\n const resetForm = () => {\n preForm.value.resetForm();\n };\n\n const setFormDisabled = () => {\n preForm.value.disableForm();\n };\n\n const setFormEnabled = () => {\n preForm.value.enableForm();\n };\n\n const handleFormChange = (fieldName: string, newValue: any, oldValue: any, formModel: any) => {\n console.log('formModel', formModel);\n };\n\n const testOnAppendButtonClick = (clickedWidget: any) => {\n console.log('test', clickedWidget);\n };\n\n const testOnButtonClick = (button: any) => {\n console.log('test', button);\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .toolbar-container {\n width: 100%;\n display: flex;\n height: 42px;\n align-items: center;\n justify-content: space-between;\n }\n\n .left-toolbar {\n display: flex;\n margin-top: 4px;\n font-size: 16px;\n }\n\n .right-toolbar {\n display: flex;\n line-height: 42px;\n overflow: hidden;\n\n .right-toolbar-con {\n text-align: left;\n }\n\n :deep(.svg-icon) {\n margin-left: 0;\n margin-right: 0.05em;\n }\n }\n\n .no-box-shadow {\n box-shadow: none;\n }\n\n .form-render-wrapper.h5-layout {\n margin: 0 auto;\n width: 420px;\n border-radius: 15px;\n //border-width: 10px;\n box-shadow: 0 0 1px 10px #495060;\n height: calc(100vh - 175px);\n overflow-y: auto;\n overflow-x: hidden;\n }\n\n .form-render-wrapper.pad-layout {\n margin: 0 auto;\n width: 960px;\n border-radius: 15px;\n //border-width: 10px;\n box-shadow: 0 0 1px 10px #495060;\n height: calc(100vh - 175px);\n overflow-y: auto;\n overflow-x: hidden;\n }\n\n .node-tree-drawer {\n }\n</style>\n"],"names":["VFormRender","defineAsyncComponent","getCurrentInstance","props","__props","getDesignerConfig","inject","nodeTree","ref","preForm","importJsonEditorRef","vfCtx","getLocat","designerConfig","toolbarWidth","showPreviewDialogFlag","showImportJsonDialogFlag","showFormDataDialogFlag","showNodeTreeDrawerFlag","nodeTreeData","importTemplate","exportTemplate","formDataJson","htmlCode","testFormData","formJson","computed","cloneDeep","undoDisabled","redoDisabled","layoutType","designerDsv","onMounted","maxTBWidth","minTBWidth","newTBWidth","addWindowResizeHandler","nextTick","newTBWidth2","i18nt","useI18n","saveJson","showToolButton","configName","buildTreeNodeOfWidget","widget","treeNode","curNode","col","colNode","wChild","row","rowNode","cell","rowChildren","cellNode","tab","tabNode","refreshNodeTree","wItem","showNodeTreeDrawer","undoHistory","redoHistory","changeLayoutType","newType","clearFormWidget","message","previewForm","saveAsFile","fileContent","defaultFileName","value","getQueryParam","vsSaveFile","fileBlob","saveAs","fileName","msgObj","importJson","doJsonImport","importObj","ex","exportJson","widgetList","formConfig","showData","_id","dsResult","fmtHttpParams","leaveDates","getFormData","formData","error","copyFormDataJson","copyToClipboard","saveFormData","resetForm","setFormDisabled","setFormEnabled","handleFormChange","fieldName","newValue","oldValue","formModel","testOnAppendButtonClick","clickedWidget","testOnButtonClick","button","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_createVNode","_component_a_button","changeLeftWidth","SvgIcon","leftWidth","_unref","_component_a_radio_group","$event","_component_a_radio_button","_component_a_drawer","_component_a_tree","_hoisted_3","_hoisted_4","_createBlock","_cache","changeRightWidth","rightWidth","_Fragment","_renderList","$slots","idx","slotName","_renderSlot","_ctx","TpfModal","TpfCodeEditor","CodeEditor"],"mappings":"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"}
|
|
@@ -111,6 +111,7 @@ function z(e, M, t, _, D, N) {
|
|
|
111
111
|
columns: e.columns.columns,
|
|
112
112
|
size: e.widgetSize,
|
|
113
113
|
dataSource: t.data,
|
|
114
|
+
"deep-watch-data-source": !0,
|
|
114
115
|
rowKey: (o) => o[t.widget.options.rowKey],
|
|
115
116
|
scroll: { y: parseFloat(e.tableHeight || 0), x: 300 },
|
|
116
117
|
bordered: t.widget.options.border,
|
|
@@ -142,7 +143,7 @@ function z(e, M, t, _, D, N) {
|
|
|
142
143
|
[S, !e.handleHidden()]
|
|
143
144
|
]);
|
|
144
145
|
}
|
|
145
|
-
const A = /* @__PURE__ */ I(T, [["render", z], ["__scopeId", "data-v-
|
|
146
|
+
const A = /* @__PURE__ */ I(T, [["render", z], ["__scopeId", "data-v-8e1059ce"]]);
|
|
146
147
|
export {
|
|
147
148
|
A as default
|
|
148
149
|
};
|