lw-cdp-ui 1.2.48 → 1.2.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/package.json +1 -1
  2. package/dist/assets/images/empty.jpg +0 -0
  3. package/dist/assets/images/login.svg +0 -558
  4. package/dist/assets/images/logo.jpg +0 -0
  5. package/dist/assets/images/logo.svg +0 -78
  6. package/dist/assets/images/logo1.svg +0 -86
  7. package/dist/assets/images/register.svg +0 -351
  8. package/dist/components/lwCronSelect/index.vue +0 -218
  9. package/dist/components/lwFlow/components/lfControl.vue +0 -126
  10. package/dist/components/lwFlow/components/lfNodePanel.vue +0 -98
  11. package/dist/components/lwFlow/config/dagre.js +0 -279
  12. package/dist/components/lwFlow/config/nodesList.js +0 -243
  13. package/dist/components/lwFlow/index.vue +0 -781
  14. package/dist/components/lwFlow/nodeEdit/audienceReceive.vue +0 -262
  15. package/dist/components/lwFlow/nodeEdit/basicSettings.vue +0 -88
  16. package/dist/components/lwFlow/nodeEdit/eventReceive.vue +0 -145
  17. package/dist/components/lwFlow/nodeEdit/index.vue +0 -306
  18. package/dist/components/lwFlow/nodeEdit/sms.vue +0 -107
  19. package/dist/components/lwFlow/nodeEdit/styleSettings.vue +0 -236
  20. package/dist/components/lwFlow/nodes/basisEnd.js +0 -56
  21. package/dist/components/lwFlow/nodes/basisStart.js +0 -56
  22. package/dist/components/lwFlow/nodes/custom.js +0 -129
  23. package/dist/components/lwFlow/nodes/et2lTable.js +0 -132
  24. package/dist/components/lwFlow/nodesData/datas/audienceReceive.js +0 -137
  25. package/dist/components/lwFlow/nodesData/datas/base.js +0 -190
  26. package/dist/components/lwFlow/nodesData/datas/collap.js +0 -95
  27. package/dist/components/lwFlow/nodesData/datas/eventReceive.js +0 -106
  28. package/dist/components/lwFlow/nodesData/datas/expand.js +0 -85
  29. package/dist/components/lwFlow/nodesData/datas/filter.js +0 -85
  30. package/dist/components/lwFlow/nodesData/datas/joiner.js +0 -96
  31. package/dist/components/lwFlow/nodesData/datas/mapper.js +0 -111
  32. package/dist/components/lwFlow/nodesData/datas/reduce.js +0 -69
  33. package/dist/components/lwFlow/nodesData/datas/sms.js +0 -69
  34. package/dist/components/lwFlow/nodesData/datas/source.js +0 -142
  35. package/dist/components/lwFlow/nodesData/datas/target.js +0 -95
  36. package/dist/components/lwFlow/nodesData/datas/timer.js +0 -180
  37. package/dist/components/lwFlow/nodesData/index.js +0 -41
  38. package/dist/components/lwForm/index.vue +0 -631
  39. package/dist/components/lwFormJson/JsonItem.vue +0 -302
  40. package/dist/components/lwFormJson/StatsConfig.vue +0 -544
  41. package/dist/components/lwFormJson/TreeItem.vue +0 -149
  42. package/dist/components/lwFormJson/index.vue +0 -362
  43. package/dist/components/lwFormJson/menuList.js +0 -324
  44. package/dist/components/lwFormMini/FormItem.vue +0 -466
  45. package/dist/components/lwFormMini/ViewItem.vue +0 -391
  46. package/dist/components/lwFormMini/index.vue +0 -421
  47. package/dist/components/lwFormMini/textToPassword.vue +0 -61
  48. package/dist/components/lwFormView/index.vue +0 -390
  49. package/dist/components/lwFormView/textToPassword.vue +0 -59
  50. package/dist/components/lwIconSelect/iconSelect.js +0 -289
  51. package/dist/components/lwIconSelect/index.vue +0 -142
  52. package/dist/components/lwLayout/components/NavMenu.vue +0 -36
  53. package/dist/components/lwLayout/components/aside.vue +0 -295
  54. package/dist/components/lwLayout/components/bu.vue +0 -88
  55. package/dist/components/lwLayout/components/iframeView.vue +0 -57
  56. package/dist/components/lwLayout/components/lang.vue +0 -77
  57. package/dist/components/lwLayout/components/setting.vue +0 -102
  58. package/dist/components/lwLayout/components/sideM.vue +0 -135
  59. package/dist/components/lwLayout/components/tags.vue +0 -388
  60. package/dist/components/lwLayout/components/topbar.vue +0 -69
  61. package/dist/components/lwLayout/components/userbar.vue +0 -214
  62. package/dist/components/lwLayout/index.vue +0 -469
  63. package/dist/components/lwLogin/index.vue +0 -511
  64. package/dist/components/lwLogin/locale/en-us.js +0 -37
  65. package/dist/components/lwLogin/locale/zh-cn.js +0 -37
  66. package/dist/components/lwSearch/date/date.vue +0 -113
  67. package/dist/components/lwSearch/dateRange/dateRange.vue +0 -118
  68. package/dist/components/lwSearch/dates/dates.vue +0 -366
  69. package/dist/components/lwSearch/index.vue +0 -628
  70. package/dist/components/lwSearch/input/input.vue +0 -55
  71. package/dist/components/lwSearch/locale/en-us.js +0 -15
  72. package/dist/components/lwSearch/locale/zh-cn.js +0 -15
  73. package/dist/components/lwSearch/select/select.vue +0 -58
  74. package/dist/components/lwSvgIcon/index.vue +0 -29
  75. package/dist/components/lwTable/index.js +0 -286
  76. package/dist/components/lwTable/index.scss +0 -238
  77. package/dist/components/lwTable/index.vue +0 -346
  78. package/dist/components/lwTable/locale/en-US.js +0 -26
  79. package/dist/components/lwTable/locale/zh-CN.js +0 -26
  80. package/dist/components/lwTable/useFullscreen.js +0 -73
  81. package/dist/components/lwTableForm/index.vue +0 -662
  82. package/dist/components/lwTableSelect/index.vue +0 -266
  83. package/dist/components/lwTableSelect/tableSelect.js +0 -23
  84. package/dist/components/lwUpload/index.vue +0 -564
  85. package/dist/lw-cdp-ui.esm.js +0 -19906
  86. package/dist/lw-cdp-ui.umd.js +0 -22
  87. package/dist/style.css +0 -1
  88. package/dist/vite.svg +0 -1
@@ -1,56 +0,0 @@
1
- export default function registerStart(lf) {
2
- lf.register('start', ({ HtmlNode, HtmlNodeModel, h }) => {
3
- class HtmlNodeView extends HtmlNode {
4
- setHtml(rootEl) {
5
- const { properties, text } = this.props.model
6
-
7
- const el = document.createElement('div')
8
- el.className = 'lw-flow-node-start'
9
- // 设置样式
10
- el.style.backgroundColor = properties?.style?.backgroundColor || ''
11
- el.style.borderStyle = properties?.style?.borderStyle || ''
12
- el.style.borderColor = properties?.style?.borderColor || ''
13
- el.style.borderWidth = `${properties?.style?.borderWidth || 2}px`
14
- el.style.color = properties?.style?.fontColor || '' // 使用 color 替代 font-color
15
- el.style.fontSize = `${properties?.style?.fontSize || 14}px` // 默认字体大小为 12px
16
- el.style.fontFamily = properties?.style?.fontFamily || 'Microsoft YaHei' // 添加默认字体
17
- el.style.lineHeight = properties?.style?.lineHeight || '1'
18
- el.style.fontWeight = properties?.style?.fontWeight || ''
19
- el.style.justifyContent = properties?.style?.textAlign || ''
20
- el.style.textDecoration = properties?.style?.textDecoration || ''
21
- el.style.fontStyle = properties?.style?.fontStyle || ''
22
- const html = `<span>${properties?.data?.name || '开始'}</span>`
23
- el.innerHTML = html
24
- rootEl.innerHTML = ''
25
- rootEl.appendChild(el)
26
- window.stop = (ev) => {
27
- ev.stopPropagation()
28
- }
29
- window.setData = () => {
30
- const { graphModel, model } = this.props
31
- graphModel.eventCenter.emit('custom:button-click', model)
32
- }
33
- }
34
- }
35
- class HtmlNodeModelAttributes extends HtmlNodeModel {
36
- setAttributes() {
37
- this.width = 100
38
- this.height = 40
39
- this.text.editable = false
40
- }
41
- getConnectedTargetRules() {
42
- const rules = super.getConnectedTargetRules()
43
- const notAsTarget = {
44
- message: '起始节点不能作为连线的终点',
45
- validate: () => false
46
- }
47
- rules.push(notAsTarget)
48
- return rules
49
- }
50
- }
51
- return {
52
- view: HtmlNodeView,
53
- model: HtmlNodeModelAttributes
54
- }
55
- })
56
- }
@@ -1,129 +0,0 @@
1
- /**
2
- * @description 公共节点初始化
3
- */
4
- import dayjs from 'dayjs'
5
- import nodeDatas from '../nodesData/index.js'
6
- export default function registerCustom(lf, node, state) {
7
- // 是否显示
8
- function hideHandle(item, data) {
9
- if (Object.keys(data).length === 0) return false
10
-
11
- if (typeof item.hideHandle === 'string') {
12
- try {
13
- const hideHandleFunc = new Function('data', `return ${item.hideHandle.replace(/\$/g, 'data')}`)
14
- return hideHandleFunc(data)
15
- } catch (error) {
16
- console.error('遇到错误时返回默认值:', error)
17
- return false // 遇到错误时返回默认值
18
- }
19
- } else if (typeof item.hideHandle === 'boolean') {
20
- return item.hideHandle
21
- }
22
-
23
- return false
24
- }
25
-
26
- /**
27
- * 解析模板字符串,将其中的占位符替换为对应的数据值。
28
- * 占位符格式为 ${key},其中 key 可以是嵌套的对象属性。
29
- * 如果数据中存在对应的值,则替换占位符;否则保留原占位符。
30
- * @param {string} template - 待解析的模板字符串
31
- * @param {object} data - 包含替换数据的对象
32
- * @returns {string} 解析后的字符串
33
- */
34
- function parseTemplateString(data) {
35
- let html = ''
36
- nodeDatas[node.type].nodeHtml.forEach((item) => {
37
- let value = item.value?.split('.').reduce((acc, part) => acc && acc[part], data)
38
-
39
- // 日期
40
- if (item?.component == 'date') {
41
- if (Array.isArray(value)) {
42
- value = `${dayjs(value[0]).format(item['value-format'] || 'YYYY-MM-DD HH:mm:ss')} 到 ${dayjs(value[1]).format(item['value-format'] || 'YYYY-MM-DD HH:mm:ss')}`
43
- } else {
44
- value = dayjs(value).format(item['value-format'] || 'YYYY-MM-DD HH:mm:ss')
45
- }
46
- }
47
-
48
- // switch
49
- if (item?.component == 'switch') {
50
- value = value ? item['activeText'] || '是' : item['inactiveText'] || '否'
51
- }
52
-
53
- // 转换
54
- if (state[`lwFlow_${node.type}`] && state[`lwFlow_${node.type}`][item.value]) {
55
- let items = state[`lwFlow_${node.type}`][item.value]
56
- let x = items.find((x) => {
57
- return x[item.key || 'value'] == value
58
- })
59
- value = x?.label
60
- }
61
-
62
- if (item.hideHandle) {
63
- if (!hideHandle(item, data)) {
64
- html += `<span>${item.label}: ${value || '--'}</span>`
65
- }
66
- } else {
67
- html += `<span>${item.label}: ${value || '--'}</span>`
68
- }
69
- })
70
- return html
71
- }
72
-
73
- lf.register(node.type, ({ HtmlNode, HtmlNodeModel, h }) => {
74
- class HtmlNodeView extends HtmlNode {
75
- setHtml(rootEl) {
76
- const { properties, text } = this.props.model
77
- const el = document.createElement('div')
78
- el.className = 'lw-flow-node-custom'
79
- // 设置样式
80
- el.style.backgroundColor = properties?.style?.backgroundColor || node.background || ''
81
- el.style.borderStyle = properties?.style?.borderStyle || ''
82
- el.style.borderColor = properties?.style?.borderColor || node.themeColor || ''
83
- el.style.borderWidth = `${properties?.style?.borderWidth || 2}px`
84
- el.style.color = properties?.style?.fontColor || '' // 使用 color 替代 font-color
85
- el.style.fontSize = `${properties?.style?.fontSize || 12}px` // 默认字体大小为 12px
86
- el.style.fontFamily = properties?.style?.fontFamily || 'Microsoft YaHei' // 添加默认字体
87
- el.style.lineHeight = properties?.style?.lineHeight || '1'
88
- el.style.fontWeight = properties?.style?.fontWeight || ''
89
- el.style.justifyContent = properties?.style?.textAlign || ''
90
- el.style.textDecoration = properties?.style?.textDecoration || ''
91
- el.style.fontStyle = properties?.style?.fontStyle || ''
92
-
93
- // 检验不通过提示
94
- if (properties.error) {
95
- el.classList.add('lw-flow-node-error')
96
- } else {
97
- el.classList.remove('lw-flow-node-error')
98
- }
99
-
100
- const html = `<div class="top-name" style="border-color: ${node.themeColor};">
101
- <i class="iconfont ${node.icon}"></i> ${properties?.data?.name || node.name}</div>
102
- <div class="bottom-content" style="border-color: ${node.themeColor};">
103
- ${parseTemplateString({ ...properties.data })}
104
- `
105
- el.innerHTML = html
106
- rootEl.innerHTML = ''
107
- rootEl.appendChild(el)
108
- window.stop = (ev) => {
109
- ev.stopPropagation()
110
- }
111
- window.setData = () => {
112
- const { graphModel, model } = this.props
113
- graphModel.eventCenter.emit('custom:button-click', model)
114
- }
115
- }
116
- }
117
- class HtmlNodeModelAttributes extends HtmlNodeModel {
118
- setAttributes() {
119
- this.width = 230
120
- this.height = 105
121
- this.text.editable = false
122
- }
123
- }
124
- return {
125
- view: HtmlNodeView,
126
- model: HtmlNodeModelAttributes
127
- }
128
- })
129
- }
@@ -1,132 +0,0 @@
1
- /**
2
- * @description ET2L节点节点初始化
3
- */
4
- import dayjs from 'dayjs'
5
- import nodeDatas from '../nodesData/index.js'
6
- export default function registerEt2l(lf, node) {
7
- // 是否显示
8
- function hideHandle(item, data) {
9
- if (Object.keys(data).length === 0) return false;
10
-
11
- if (typeof item.hideHandle === 'string') {
12
- try {
13
- const hideHandleFunc = new Function("data", `return ${item.hideHandle.replace(/\$/g, 'data')}`);
14
- return hideHandleFunc(data);
15
- } catch (error) {
16
- console.error("遇到错误时返回默认值:", error);
17
- return false; // 遇到错误时返回默认值
18
- }
19
- } else if (typeof item.hideHandle === 'boolean') {
20
- return item.hideHandle;
21
- }
22
-
23
- return false;
24
- }
25
-
26
- /**
27
- * 解析模板字符串,将其中的占位符替换为对应的数据值。
28
- * 占位符格式为 ${key},其中 key 可以是嵌套的对象属性。
29
- * 如果数据中存在对应的值,则替换占位符;否则保留原占位符。
30
- * @param {string} template - 待解析的模板字符串
31
- * @param {object} data - 包含替换数据的对象
32
- * @returns {string} 解析后的字符串
33
- */
34
- function parseTemplateString(data) {
35
- let html = ''
36
- nodeDatas[node.type].nodeHtml.forEach((item) => {
37
- let value = item.value?.split('.').reduce((acc, part) => acc && acc[part], data)
38
- // 日期
39
- if (item?.component == 'date') {
40
- if (Array.isArray(value)) {
41
- value = `${dayjs(value[0]).format(item['value-format'] || 'YYYY-MM-DD HH:mm:ss')}到${dayjs(value[1]).format(item['value-format'] || 'YYYY-MM-DD HH:mm:ss')}`
42
- } else {
43
- value = dayjs(value).format(item['value-format'] || 'YYYY-MM-DD HH:mm:ss')
44
- }
45
- }
46
- // 转换
47
- if (item?.items) {
48
- let x = item.items.find((x) => {
49
- return x.value == value
50
- })
51
- value = x?.label
52
- }
53
- if (item.hideHandle) {
54
- if (!hideHandle(item, data)) {
55
- html += `<span>${item.label}: ${value || '--'}</span>`
56
- }
57
- } else {
58
- html += `<span>${item.label}: ${value || '--'}</span>`
59
- }
60
- })
61
- return html
62
- }
63
-
64
- lf.register(node.type, ({ HtmlNode, HtmlNodeModel, h }) => {
65
- class HtmlNodeView extends HtmlNode {
66
- setHtml(rootEl) {
67
- const { properties, text } = this.props.model
68
- const el = document.createElement('div')
69
- el.className = 'lw-flow-node-et2l'
70
- // 设置样式
71
- el.style.backgroundColor = properties?.style?.backgroundColor || node.themeColor || ''
72
- el.style.borderStyle = properties?.style?.borderStyle || ''
73
- el.style.borderColor = properties?.style?.borderColor || node.themeColor || ''
74
- el.style.borderWidth = `${properties?.style?.borderWidth || 2}px`
75
- el.style.color = properties?.style?.fontColor || '' // 使用 color 替代 font-color
76
- el.style.fontSize = `${properties?.style?.fontSize || 12}px` // 默认字体大小为 12px
77
- el.style.fontFamily = properties?.style?.fontFamily || 'Microsoft YaHei' // 添加默认字体
78
- el.style.lineHeight = properties?.style?.lineHeight || '1'
79
- el.style.fontWeight = properties?.style?.fontWeight || ''
80
- el.style.justifyContent = properties?.style?.textAlign || ''
81
- el.style.textDecoration = properties?.style?.textDecoration || ''
82
- el.style.fontStyle = properties?.style?.fontStyle || ''
83
-
84
- // 检验不通过提示
85
- if (properties.error) {
86
- el.classList.add('lw-flow-node-error')
87
- } else {
88
- el.classList.remove('lw-flow-node-error')
89
- }
90
-
91
- const html = `<i class="iconfont ${node.icon}"></i> <span class="text" title="${properties?.data?.name || node.name}">${properties?.data?.name || node.name}</span>`
92
-
93
- // 暂无显示需求
94
- // if (properties?.data.mode) {
95
- // html += `<div class="details-body">
96
- // <i class="iconfont icon-ziliao"></i>
97
- // <div class="p-list">11111111111111${parseTemplateString({ ...properties.data })}</div>
98
- // </div>`
99
- // }
100
-
101
- el.innerHTML = html
102
- rootEl.innerHTML = ''
103
- rootEl.appendChild(el)
104
- window.stop = (ev) => {
105
- ev.stopPropagation()
106
- }
107
- window.setData = () => {
108
- const { graphModel, model } = this.props
109
- graphModel.eventCenter.emit('custom:button-click', model)
110
- }
111
- }
112
- }
113
- class HtmlNodeModelAttributes extends HtmlNodeModel {
114
- setAttributes() {
115
- this.width = 120
116
- this.height = 40
117
- this.text.editable = false
118
- }
119
- initNodeData(data) {
120
- super.initNodeData(data)
121
- // 目标节点校验
122
- nodeDatas[node.type]?.targetRules?.forEach((item) => {
123
- this.targetRules.push(item)
124
- })
125
- }
126
- }
127
- return {
128
- view: HtmlNodeView,
129
- model: HtmlNodeModelAttributes
130
- }
131
- })
132
- }
@@ -1,137 +0,0 @@
1
- /**
2
- * 营销目标: 人群包
3
- */
4
-
5
- export default {
6
- // 暂无显示需求
7
- nodeHtml: [
8
- {
9
- label: '事件',
10
- component: 'select',
11
- value: 'audienceId'
12
- },
13
- {
14
- label: '人群快照',
15
- component: 'select',
16
- value: 'snapshotId'
17
- },
18
- {
19
- label: '营销频次',
20
- component: 'select',
21
- value: 'schedule.type'
22
- },
23
- {
24
- label: '触发时间',
25
- component: 'date',
26
- value: 'schedule.date',
27
- hideHandle: '$.schedule.type != "DATE"'
28
- },
29
- {
30
- label: '时间范围',
31
- component: 'date',
32
- value: 'startEndTime',
33
- 'value-format': 'YYYY-MM-DD',
34
- hideHandle: '$.schedule.type != "CRON"'
35
- },
36
- {
37
- label: 'Cron',
38
- component: 'Cron',
39
- value: 'schedule.cron',
40
- hideHandle: '$.schedule.type != "CRON"'
41
- }
42
- ],
43
- // 目标节点校验
44
- targetRules: [],
45
- // 表单内容
46
- formConfig: {
47
- labelWidth: '70px',
48
- labelPosition: 'top',
49
- formItems: [
50
- {
51
- label: '选择事件',
52
- name: 'audienceId',
53
- value: '',
54
- component: 'audienceIdSelect',
55
- span: 24,
56
- options: {
57
- items: [],
58
- placeholder: '请选择'
59
- },
60
- rules: [{ required: true, message: '不能为空', trigger: 'change' }]
61
- },
62
- {
63
- label: '人群快照',
64
- name: 'snapshotId',
65
- value: '',
66
- component: 'snapshotIdSelect',
67
- span: 24,
68
- options: {
69
- items: [],
70
- placeholder: '请选择'
71
- },
72
- rules: [{ required: true, message: '不能为空', trigger: 'change' }]
73
- },
74
- {
75
- label: '营销频次',
76
- name: 'schedule',
77
- value: 'DATE',
78
- component: 'select',
79
- span: 24,
80
- options: {
81
- name: 'type',
82
- items: [
83
- {
84
- label: '单次定时',
85
- note: '活动周期内仅触发 1 次',
86
- value: 'DATE'
87
- },
88
- {
89
- label: '多次定时',
90
- note: '活动周期内允许触发多次',
91
- value: 'CRON'
92
- }
93
- ],
94
- placeholder: '请选择'
95
- },
96
- rules: [{ required: true, message: '不能为空', trigger: 'change' }]
97
- },
98
- {
99
- label: '触发时间',
100
- name: 'schedule',
101
- value: '',
102
- component: 'scheduleTime',
103
- span: 24,
104
- options: {
105
- name: 'date',
106
- placeholder: '请选择'
107
- },
108
- hideHandle: '$.schedule.type != "DATE"',
109
- rules: [{ required: true, message: '不能为空', trigger: 'change' }]
110
- },
111
- {
112
- label: '触发时间',
113
- name: 'schedule',
114
- value: '',
115
- component: 'scheduleDate',
116
- span: 24,
117
- options: {
118
- name: 'startTime',
119
- placeholder: '请选择'
120
- },
121
- hideHandle: '$.schedule.type != "CRON"',
122
- rules: [{ required: true, message: '不能为空', trigger: 'change' }]
123
- },
124
- {
125
- label: '备注信息',
126
- name: 'desp',
127
- value: '',
128
- component: 'input',
129
- options: {
130
- type: 'textarea',
131
- placeholder: '请输入'
132
- },
133
- span: 24
134
- }
135
- ]
136
- }
137
- }
@@ -1,190 +0,0 @@
1
- /**
2
- * ET2L数据合并节点 JOINER 表单自定义内容
3
- */
4
-
5
- export default {
6
- // 表单内容
7
- formConfig: {
8
- labelWidth: '70px',
9
- labelPosition: 'top',
10
- formItems: [
11
- {
12
- label: '节点名称',
13
- name: 'name',
14
- value: '',
15
- component: 'input',
16
- options: {
17
- placeholder: '请输入节点名称'
18
- },
19
- span: 24
20
- },
21
- {
22
- label: '节点并行度',
23
- name: 'para',
24
- value: '',
25
- component: 'number',
26
- options: {
27
- placeholder: '请输入节点并行度'
28
- },
29
- span: 24
30
- },
31
- {
32
- label: '节点标签',
33
- name: 'tags',
34
- value: '',
35
- component: 'tags',
36
- span: 24
37
- },
38
- {
39
- label: '描述信息',
40
- name: 'desp',
41
- value: '',
42
- component: 'input',
43
- options: {
44
- placeholder: '请输入描述信息'
45
- },
46
- span: 24
47
- },
48
- {
49
- label: '输出名称',
50
- name: 'into',
51
- value: '',
52
- component: 'select',
53
- options: {
54
- placeholder: '请选择输出名称'
55
- },
56
- span: 24
57
- }
58
- ]
59
- },
60
- // 数据来源
61
- configKeyableSource: {
62
- treeProps: {
63
- children: 'fields'
64
- },
65
- rowKey: 'id',
66
- formItems: [
67
- {
68
- label: '来源名称',
69
- name: 'name',
70
- value: '',
71
- minWidth: '80',
72
- component: 'input',
73
- options: {
74
- placeholder: '请输入'
75
- },
76
- rules: [{ required: true, message: '不能为空', trigger: 'blur' }]
77
- },
78
- {
79
- label: '名称简写',
80
- name: 'abbr',
81
- value: '',
82
- minWidth: '80',
83
- component: 'input',
84
- options: {
85
- placeholder: '请输入'
86
- }
87
- },
88
- {
89
- label: '关联字段',
90
- name: 'with',
91
- value: '',
92
- minWidth: '80',
93
- component: 'input',
94
- options: {
95
- placeholder: '请输入'
96
- },
97
- rules: [{ required: true, message: '不能为空', trigger: 'blur' }]
98
- },
99
- {
100
- label: '自动映射',
101
- name: 'auto',
102
- value: false,
103
- minWidth: '75',
104
- component: 'switch'
105
- },
106
- {
107
- label: '操作',
108
- component: 'operation',
109
- width: '60',
110
- fixed: 'right',
111
- options: {
112
- addDelete: [
113
- {
114
- icon: '',
115
- type: 'delete',
116
- label: '删除'
117
- }
118
- ]
119
- }
120
- }
121
- ]
122
- },
123
- // 映射动作
124
- configMapAction: {
125
- treeProps: {
126
- children: 'fields'
127
- },
128
- rowKey: 'id',
129
- formItems: [
130
- {
131
- label: '来源字段',
132
- name: 'from',
133
- value: '',
134
- minWidth: '80',
135
- component: 'sourceField',
136
- options: {
137
- placeholder: '请输入'
138
- },
139
- rules: [{ required: true, message: '不能为空', trigger: 'blur' }]
140
- },
141
- {
142
- label: '映射类型',
143
- name: 'type',
144
- value: '',
145
- minWidth: '80',
146
- component: 'select',
147
- options: {
148
- placeholder: '请选择',
149
- items: [
150
- {
151
- label: '任意映射',
152
- value: 'any_of'
153
- },
154
- {
155
- label: '直接映射',
156
- value: 'direct'
157
- }
158
- ]
159
- },
160
- rules: [{ required: true, message: '不能为空', trigger: 'blur' }]
161
- },
162
- {
163
- label: '目标字段',
164
- name: 'into',
165
- value: '',
166
- minWidth: '80',
167
- component: 'input',
168
- options: {
169
- placeholder: '请输入'
170
- },
171
- rules: [{ required: true, message: '不能为空', trigger: 'blur' }]
172
- },
173
- {
174
- label: '操作',
175
- component: 'operation',
176
- width: '60',
177
- fixed: 'right',
178
- options: {
179
- addDelete: [
180
- {
181
- icon: '',
182
- type: 'delete',
183
- label: '删除'
184
- }
185
- ]
186
- }
187
- }
188
- ]
189
- }
190
- }