de178a654ca71b11d17750885f3d26ce.json 26 KB

1
  1. {"remainingRequest":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\k-form-design\\packages\\components\\KFormDesign\\module\\layoutItem.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\k-form-design\\packages\\components\\KFormDesign\\module\\layoutItem.vue","mtime":1688725442017},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1688725391035},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1688725407620},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1688725391035},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1688725415411}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQovKg0KICogYXV0aG9yIGtjeg0KICogZGF0ZSAyMDE5LTExLTIwDQogKiBkZXNjcmlwdGlvbiDkvb/nlKjpgJLlvZLnu4Tku7bosIPnlKjoh6rlt7HvvIznlJ/miJDluIPlsYDnu5PmnoTlj4rooajljZUNCiAqLw0KaW1wb3J0IGRyYWdnYWJsZSBmcm9tICJ2dWVkcmFnZ2FibGUiOw0KaW1wb3J0IGZvcm1Ob2RlIGZyb20gIi4vZm9ybU5vZGUiOw0KaW1wb3J0IHsgcGx1Z2luTWFuYWdlciB9IGZyb20gIi4uLy4uLy4uL3V0aWxzL2luZGV4IjsNCmNvbnN0IENoZWNrYm94SXRlbSA9IHBsdWdpbk1hbmFnZXIuZ2V0Q29tcG9uZW50KCJjaGVja2JveEl0ZW0iKS5jb21wb25lbnQ7DQpjb25zdCBSYWRpb0l0ZW0gPSBwbHVnaW5NYW5hZ2VyLmdldENvbXBvbmVudCgicmFkaW9JdGVtIikuY29tcG9uZW50Ow0KZXhwb3J0IGRlZmF1bHQgew0KICBuYW1lOiAibGF5b3V0SXRlbSIsDQogIHByb3BzOiB7DQogICAgcmVjb3JkOiB7DQogICAgICB0eXBlOiBPYmplY3QsDQogICAgICByZXF1aXJlZDogdHJ1ZQ0KICAgIH0sDQogICAgc2VsZWN0SXRlbTogew0KICAgICAgdHlwZTogT2JqZWN0LA0KICAgICAgcmVxdWlyZWQ6IHRydWUNCiAgICB9LA0KICAgIGNvbmZpZzogew0KICAgICAgdHlwZTogT2JqZWN0LA0KICAgICAgcmVxdWlyZWQ6IHRydWUNCiAgICB9LA0KICAgIHN0YXJ0VHlwZTogew0KICAgICAgdHlwZTogU3RyaW5nLA0KICAgICAgcmVxdWlyZWQ6IHRydWUNCiAgICB9LA0KICAgIGluc2VydEFsbG93ZWRUeXBlOiB7DQogICAgICB0eXBlOiBBcnJheSwNCiAgICAgIHJlcXVpcmVkOiB0cnVlDQogICAgfSwNCiAgICBoaWRlTW9kZWw6IHsNCiAgICAgIHR5cGU6IEJvb2xlYW4sDQogICAgICBkZWZhdWx0OiBmYWxzZQ0KICAgIH0NCiAgfSwNCiAgY29tcHV0ZWQ6IHsNCiAgICBpbnNlcnRBbGxvd2VkKCkgew0KICAgICAgcmV0dXJuIHRoaXMuaW5zZXJ0QWxsb3dlZFR5cGUuaW5jbHVkZXModGhpcy5zdGFydFR5cGUpOw0KICAgIH0NCiAgfSwNCiAgY29tcG9uZW50czogew0KICAgIGZvcm1Ob2RlLA0KICAgIGRyYWdnYWJsZSwNCiAgICBDaGVja2JveEl0ZW0sDQogICAgUmFkaW9JdGVtDQogIH0sDQogIG1ldGhvZHM6IHsNCiAgICBoYW5kbGVTaG93UmlnaHRNZW51KGUsIHJlY29yZCwgdHJJbmRleCwgdGRJbmRleCkgew0KICAgICAgdGhpcy4kZW1pdCgiaGFuZGxlU2hvd1JpZ2h0TWVudSIsIGUsIHJlY29yZCwgdHJJbmRleCwgdGRJbmRleCk7DQogICAgfSwNCiAgICBoYW5kbGVTZWxlY3RJdGVtKHJlY29yZCkgew0KICAgICAgdGhpcy4kZW1pdCgiaGFuZGxlU2VsZWN0SXRlbSIsIHJlY29yZCk7DQogICAgfSwNCiAgICBoYW5kbGVDb2xBZGQoZSwgbGlzdCkgew0KICAgICAgdGhpcy4kZW1pdCgiaGFuZGxlQ29sQWRkIiwgZSwgbGlzdCk7DQogICAgfQ0KICB9DQp9Ow0K"},{"version":3,"sources":["layoutItem.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8eA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"layoutItem.vue","sourceRoot":"node_modules/k-form-design/packages/components/KFormDesign/module","sourcesContent":["<template>\r\n <div\r\n :class=\"{\r\n 'layout-width': [\r\n 'grid',\r\n 'table',\r\n 'selectInputList',\r\n 'tabs',\r\n 'card',\r\n 'editor',\r\n 'batch',\r\n 'divider',\r\n 'html'\r\n ].includes(record.type)\r\n }\"\r\n >\r\n <!-- 动态表格设计模块 start -->\r\n <template v-if=\"record.type === 'batch'\">\r\n <div\r\n class=\"batch-box\"\r\n :class=\"{ active: record.key === selectItem.key }\"\r\n @click.stop=\"handleSelectItem(record)\"\r\n >\r\n <a-form-item\r\n :label=\"!record.options.showLabel ? '' : record.label\"\r\n :label-col=\"\r\n config.layout === 'horizontal' && record.options.showLabel\r\n ? config.labelLayout === 'flex'\r\n ? { style: `width:${config.labelWidth}px` }\r\n : config.labelCol\r\n : {}\r\n \"\r\n :wrapper-col=\"\r\n config.layout === 'horizontal' && record.options.showLabel\r\n ? config.labelLayout === 'flex'\r\n ? { style: 'width:auto;flex:1' }\r\n : config.wrapperCol\r\n : {}\r\n \"\r\n :style=\"\r\n config.layout === 'horizontal' &&\r\n config.labelLayout === 'flex' &&\r\n record.options.showLabel\r\n ? { display: 'flex' }\r\n : {}\r\n \"\r\n >\r\n <draggable\r\n tag=\"div\"\r\n class=\"draggable-box\"\r\n v-bind=\"{\r\n group: insertAllowed ? 'form-draggable' : '',\r\n ghostClass: 'moving',\r\n animation: 180,\r\n handle: '.drag-move'\r\n }\"\r\n v-model=\"record.list\"\r\n @start=\"$emit('dragStart', $event, record.list)\"\r\n @add=\"$emit('handleColAdd', $event, record.list)\"\r\n >\r\n <transition-group tag=\"div\" name=\"list\" class=\"list-main\">\r\n <formNode\r\n v-for=\"item in record.list\"\r\n :key=\"item.key\"\r\n class=\"drag-move\"\r\n :selectItem.sync=\"selectItem\"\r\n :record=\"item\"\r\n :hideModel=\"hideModel\"\r\n :config=\"config\"\r\n @handleSelectItem=\"handleSelectItem\"\r\n @handleColAdd=\"handleColAdd\"\r\n @handleCopy=\"$emit('handleCopy')\"\r\n @handleShowRightMenu=\"handleShowRightMenu\"\r\n @handleDelete=\"$emit('handleDelete')\"\r\n />\r\n </transition-group>\r\n </draggable>\r\n </a-form-item>\r\n <div\r\n class=\"copy\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleCopy')\"\r\n >\r\n <a-icon type=\"copy\" />\r\n </div>\r\n <div\r\n class=\"delete\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleDelete')\"\r\n >\r\n <a-icon type=\"delete\" />\r\n </div>\r\n </div>\r\n </template>\r\n <!-- 动态表格设计模块 end -->\r\n <!-- 选择输入列 start -->\r\n <template v-else-if=\"record.type === 'selectInputList'\">\r\n <div\r\n class=\"select-input-list-box\"\r\n :class=\"{ active: record.key === selectItem.key }\"\r\n @click.stop=\"handleSelectItem(record)\"\r\n >\r\n <a-form-item\r\n :label=\"!record.options.showLabel ? '' : record.label\"\r\n :label-col=\"\r\n config.layout === 'horizontal' && record.options.showLabel\r\n ? config.labelLayout === 'flex'\r\n ? { style: `width:${config.labelWidth}px` }\r\n : config.labelCol\r\n : {}\r\n \"\r\n :wrapper-col=\"\r\n config.layout === 'horizontal' && record.options.showLabel\r\n ? config.labelLayout === 'flex'\r\n ? { style: 'width:auto;flex:1' }\r\n : config.wrapperCol\r\n : {}\r\n \"\r\n :style=\"\r\n config.layout === 'horizontal' &&\r\n config.labelLayout === 'flex' &&\r\n record.options.showLabel\r\n ? { display: 'flex' }\r\n : {}\r\n \"\r\n >\r\n <div\r\n class=\"column-box\"\r\n v-for=\"(column, index) in record.columns\"\r\n :key=\"index\"\r\n >\r\n <div class=\"check-box\">\r\n <CheckboxItem v-if=\"record.options.multiple\" disabled>\r\n {{ column.label }}\r\n </CheckboxItem>\r\n <RadioItem v-else disabled name=\"radio\" :value=\"column.value\">{{\r\n column.label\r\n }}</RadioItem>\r\n </div>\r\n <draggable\r\n tag=\"div\"\r\n class=\"draggable-box\"\r\n v-bind=\"{\r\n group: insertAllowed ? 'form-draggable' : '',\r\n ghostClass: 'moving',\r\n animation: 180,\r\n handle: '.drag-move'\r\n }\"\r\n v-model=\"column.list\"\r\n @start=\"$emit('dragStart', $event, column.list)\"\r\n @add=\"$emit('handleColAdd', $event, column.list)\"\r\n >\r\n <transition-group tag=\"div\" name=\"list\" class=\"list-main\">\r\n <formNode\r\n v-for=\"item in column.list\"\r\n :key=\"item.key\"\r\n class=\"drag-move\"\r\n :selectItem.sync=\"selectItem\"\r\n :record=\"item\"\r\n :hideModel=\"hideModel\"\r\n :config=\"config\"\r\n @handleSelectItem=\"handleSelectItem\"\r\n @handleColAdd=\"handleColAdd\"\r\n @handleCopy=\"$emit('handleCopy')\"\r\n @handleShowRightMenu=\"handleShowRightMenu\"\r\n @handleDelete=\"$emit('handleDelete')\"\r\n />\r\n </transition-group>\r\n </draggable>\r\n </div>\r\n </a-form-item>\r\n <div\r\n class=\"copy\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleCopy')\"\r\n >\r\n <a-icon type=\"copy\" />\r\n </div>\r\n <div\r\n class=\"delete\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleDelete')\"\r\n >\r\n <a-icon type=\"delete\" />\r\n </div>\r\n </div>\r\n </template>\r\n <!-- 选择输入列 end -->\r\n <!-- 标签Tabs布局 start -->\r\n <template v-else-if=\"record.type === 'tabs'\">\r\n <div\r\n class=\"grid-box\"\r\n :class=\"{ active: record.key === selectItem.key }\"\r\n @click.stop=\"handleSelectItem(record)\"\r\n >\r\n <a-tabs\r\n class=\"grid-row\"\r\n :default-active-key=\"0\"\r\n :tabBarGutter=\"record.options.tabBarGutter || null\"\r\n :type=\"record.options.type\"\r\n :size=\"record.options.size\"\r\n :tabPosition=\"record.options.tabPosition\"\r\n :animated=\"record.options.animated\"\r\n >\r\n <a-tab-pane\r\n v-for=\"(tabItem, index) in record.columns\"\r\n :key=\"index\"\r\n :tab=\"tabItem.label\"\r\n >\r\n <div class=\"grid-col\">\r\n <draggable\r\n tag=\"div\"\r\n class=\"draggable-box\"\r\n v-bind=\"{\r\n group: 'form-draggable',\r\n ghostClass: 'moving',\r\n animation: 180,\r\n handle: '.drag-move'\r\n }\"\r\n v-model=\"tabItem.list\"\r\n @start=\"$emit('dragStart', $event, tabItem.list)\"\r\n @add=\"$emit('handleColAdd', $event, tabItem.list)\"\r\n >\r\n <transition-group tag=\"div\" name=\"list\" class=\"list-main\">\r\n <layoutItem\r\n class=\"drag-move\"\r\n v-for=\"item in tabItem.list\"\r\n :key=\"item.key\"\r\n :selectItem.sync=\"selectItem\"\r\n :startType=\"startType\"\r\n :insertAllowedType=\"insertAllowedType\"\r\n :record=\"item\"\r\n :hideModel=\"hideModel\"\r\n :config=\"config\"\r\n @handleSelectItem=\"handleSelectItem\"\r\n @handleColAdd=\"handleColAdd\"\r\n @handleCopy=\"$emit('handleCopy')\"\r\n @handleShowRightMenu=\"handleShowRightMenu\"\r\n @handleDelete=\"$emit('handleDelete')\"\r\n />\r\n </transition-group>\r\n </draggable>\r\n </div>\r\n </a-tab-pane>\r\n </a-tabs>\r\n\r\n <div\r\n class=\"copy\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleCopy')\"\r\n >\r\n <a-icon type=\"copy\" />\r\n </div>\r\n <div\r\n class=\"delete\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleDelete')\"\r\n >\r\n <a-icon type=\"delete\" />\r\n </div>\r\n </div>\r\n </template>\r\n <!-- 标签Tabs布局 end -->\r\n <!-- 栅格布局 start -->\r\n <template v-else-if=\"record.type === 'grid'\">\r\n <div\r\n class=\"grid-box\"\r\n :class=\"{ active: record.key === selectItem.key }\"\r\n @click.stop=\"handleSelectItem(record)\"\r\n >\r\n <a-row class=\"grid-row\" :gutter=\"record.options.gutter\">\r\n <a-col\r\n class=\"grid-col\"\r\n v-for=\"(colItem, idnex) in record.columns\"\r\n :key=\"idnex\"\r\n :span=\"colItem.span || 0\"\r\n >\r\n <draggable\r\n tag=\"div\"\r\n class=\"draggable-box\"\r\n v-bind=\"{\r\n group: 'form-draggable',\r\n ghostClass: 'moving',\r\n animation: 180,\r\n handle: '.drag-move'\r\n }\"\r\n v-model=\"colItem.list\"\r\n @start=\"$emit('dragStart', $event, colItem.list)\"\r\n @add=\"$emit('handleColAdd', $event, colItem.list)\"\r\n >\r\n <transition-group tag=\"div\" name=\"list\" class=\"list-main\">\r\n <layoutItem\r\n class=\"drag-move\"\r\n v-for=\"item in colItem.list\"\r\n :key=\"item.key\"\r\n :selectItem.sync=\"selectItem\"\r\n :startType=\"startType\"\r\n :insertAllowedType=\"insertAllowedType\"\r\n :record=\"item\"\r\n :hideModel=\"hideModel\"\r\n :config=\"config\"\r\n @handleSelectItem=\"handleSelectItem\"\r\n @handleColAdd=\"handleColAdd\"\r\n @handleCopy=\"$emit('handleCopy')\"\r\n @handleShowRightMenu=\"handleShowRightMenu\"\r\n @handleDelete=\"$emit('handleDelete')\"\r\n />\r\n </transition-group>\r\n </draggable>\r\n </a-col>\r\n </a-row>\r\n\r\n <div\r\n class=\"copy\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleCopy')\"\r\n >\r\n <a-icon type=\"copy\" />\r\n </div>\r\n <div\r\n class=\"delete\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleDelete')\"\r\n >\r\n <a-icon type=\"delete\" />\r\n </div>\r\n </div>\r\n </template>\r\n <!-- 栅格布局 end -->\r\n <!-- 卡片布局 start -->\r\n <template v-else-if=\"record.type === 'card'\">\r\n <div\r\n class=\"grid-box\"\r\n :class=\"{ active: record.key === selectItem.key }\"\r\n @click.stop=\"handleSelectItem(record)\"\r\n >\r\n <a-card class=\"grid-row\" :title=\"record.label\">\r\n <div class=\"grid-col\">\r\n <draggable\r\n tag=\"div\"\r\n class=\"draggable-box\"\r\n v-bind=\"{\r\n group: 'form-draggable',\r\n ghostClass: 'moving',\r\n animation: 180,\r\n handle: '.drag-move'\r\n }\"\r\n v-model=\"record.list\"\r\n @start=\"$emit('dragStart', $event, record.list)\"\r\n @add=\"$emit('handleColAdd', $event, record.list)\"\r\n >\r\n <transition-group tag=\"div\" name=\"list\" class=\"list-main\">\r\n <layoutItem\r\n class=\"drag-move\"\r\n v-for=\"item in record.list\"\r\n :key=\"item.key\"\r\n :selectItem.sync=\"selectItem\"\r\n :startType=\"startType\"\r\n :insertAllowedType=\"insertAllowedType\"\r\n :record=\"item\"\r\n :hideModel=\"hideModel\"\r\n :config=\"config\"\r\n @handleSelectItem=\"handleSelectItem\"\r\n @handleColAdd=\"handleColAdd\"\r\n @handleCopy=\"$emit('handleCopy')\"\r\n @handleShowRightMenu=\"handleShowRightMenu\"\r\n @handleDelete=\"$emit('handleDelete')\"\r\n />\r\n </transition-group>\r\n </draggable>\r\n </div>\r\n </a-card>\r\n\r\n <div\r\n class=\"copy\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleCopy')\"\r\n >\r\n <a-icon type=\"copy\" />\r\n </div>\r\n <div\r\n class=\"delete\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleDelete')\"\r\n >\r\n <a-icon type=\"delete\" />\r\n </div>\r\n </div>\r\n </template>\r\n <!-- 卡片布局 end -->\r\n <!-- 表格布局 start -->\r\n <template v-else-if=\"record.type === 'table'\">\r\n <div\r\n class=\"table-box\"\r\n :class=\"{ active: record.key === selectItem.key }\"\r\n @click.stop=\"handleSelectItem(record)\"\r\n >\r\n <table\r\n class=\"table-layout kk-table-9136076486841527\"\r\n :class=\"{\r\n bright: record.options.bright,\r\n small: record.options.small,\r\n bordered: record.options.bordered\r\n }\"\r\n :style=\"\r\n 'width:' + record.options.width + ';' + record.options.customStyle\r\n \"\r\n >\r\n <tr v-for=\"(trItem, trIndex) in record.trs\" :key=\"trIndex\">\r\n <td\r\n class=\"table-td\"\r\n v-for=\"(tdItem, tdIndex) in trItem.tds\"\r\n v-show=\"tdItem.colspan && tdItem.rowspan\"\r\n :key=\"tdIndex\"\r\n :colspan=\"tdItem.colspan\"\r\n :rowspan=\"tdItem.rowspan\"\r\n @contextmenu.prevent=\"\r\n $emit('handleShowRightMenu', $event, record, trIndex, tdIndex)\r\n \"\r\n >\r\n <draggable\r\n tag=\"div\"\r\n class=\"draggable-box\"\r\n v-bind=\"{\r\n group: 'form-draggable',\r\n ghostClass: 'moving',\r\n animation: 180,\r\n handle: '.drag-move'\r\n }\"\r\n v-model=\"tdItem.list\"\r\n @start=\"$emit('dragStart', $event, tdItem.list)\"\r\n @add=\"$emit('handleColAdd', $event, tdItem.list)\"\r\n >\r\n <transition-group\r\n tag=\"div\"\r\n name=\"list\"\r\n :style=\"{ 'min-height': tdItem.rowspan * 80 - 19 + 'px' }\"\r\n class=\"list-main\"\r\n >\r\n <layoutItem\r\n class=\"drag-move\"\r\n v-for=\"item in tdItem.list\"\r\n :key=\"item.key\"\r\n :selectItem.sync=\"selectItem\"\r\n :startType=\"startType\"\r\n :insertAllowedType=\"insertAllowedType\"\r\n :record=\"item\"\r\n :hideModel=\"hideModel\"\r\n :config=\"config\"\r\n @handleSelectItem=\"handleSelectItem\"\r\n @handleColAdd=\"handleColAdd\"\r\n @handleCopy=\"$emit('handleCopy')\"\r\n @handleShowRightMenu=\"handleShowRightMenu\"\r\n @handleDelete=\"$emit('handleDelete')\"\r\n />\r\n </transition-group>\r\n </draggable>\r\n </td>\r\n </tr>\r\n </table>\r\n\r\n <div\r\n class=\"copy\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleCopy')\"\r\n >\r\n <a-icon type=\"copy\" />\r\n </div>\r\n <div\r\n class=\"delete\"\r\n :class=\"record.key === selectItem.key ? 'active' : 'unactivated'\"\r\n @click.stop=\"$emit('handleDelete')\"\r\n >\r\n <a-icon type=\"delete\" />\r\n </div>\r\n </div>\r\n </template>\r\n <!-- 表格布局 end -->\r\n <template v-else>\r\n <formNode\r\n :key=\"record.key\"\r\n :selectItem.sync=\"selectItem\"\r\n :record=\"record\"\r\n :config=\"config\"\r\n :hideModel=\"hideModel\"\r\n @handleSelectItem=\"handleSelectItem\"\r\n @handleCopy=\"$emit('handleCopy')\"\r\n @handleDelete=\"$emit('handleDelete')\"\r\n @handleShowRightMenu=\"$emit('handleShowRightMenu')\"\r\n />\r\n </template>\r\n </div>\r\n</template>\r\n<script>\r\n/*\r\n * author kcz\r\n * date 2019-11-20\r\n * description 使用递归组件调用自己,生成布局结构及表单\r\n */\r\nimport draggable from \"vuedraggable\";\r\nimport formNode from \"./formNode\";\r\nimport { pluginManager } from \"../../../utils/index\";\r\nconst CheckboxItem = pluginManager.getComponent(\"checkboxItem\").component;\r\nconst RadioItem = pluginManager.getComponent(\"radioItem\").component;\r\nexport default {\r\n name: \"layoutItem\",\r\n props: {\r\n record: {\r\n type: Object,\r\n required: true\r\n },\r\n selectItem: {\r\n type: Object,\r\n required: true\r\n },\r\n config: {\r\n type: Object,\r\n required: true\r\n },\r\n startType: {\r\n type: String,\r\n required: true\r\n },\r\n insertAllowedType: {\r\n type: Array,\r\n required: true\r\n },\r\n hideModel: {\r\n type: Boolean,\r\n default: false\r\n }\r\n },\r\n computed: {\r\n insertAllowed() {\r\n return this.insertAllowedType.includes(this.startType);\r\n }\r\n },\r\n components: {\r\n formNode,\r\n draggable,\r\n CheckboxItem,\r\n RadioItem\r\n },\r\n methods: {\r\n handleShowRightMenu(e, record, trIndex, tdIndex) {\r\n this.$emit(\"handleShowRightMenu\", e, record, trIndex, tdIndex);\r\n },\r\n handleSelectItem(record) {\r\n this.$emit(\"handleSelectItem\", record);\r\n },\r\n handleColAdd(e, list) {\r\n this.$emit(\"handleColAdd\", e, list);\r\n }\r\n }\r\n};\r\n</script>\r\n"]}]}