@cicctencent/low-code-editor 0.0.0-stage → 1.1.9-beta.5

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 (97) hide show
  1. package/README.md +2 -2
  2. package/api-extractor.json +36 -0
  3. package/dist/ActivityBar/index.vue.d.ts +29 -0
  4. package/dist/ComponentTree/components/List.vue.d.ts +29 -0
  5. package/dist/ComponentTree/index.vue.d.ts +32 -0
  6. package/dist/DataSource/index.vue.d.ts +34 -0
  7. package/dist/HeaderBar/components/BarTooltip.vue.d.ts +37 -0
  8. package/dist/HeaderBar/index.vue.d.ts +49 -0
  9. package/dist/NavTree/index.vue.d.ts +48 -0
  10. package/dist/SchemaConfig/index.vue.d.ts +36 -0
  11. package/dist/SidebarPane/index.vue.d.ts +38 -0
  12. package/dist/components/ComponentTreeFavorites/components/List.vue.d.ts +41 -0
  13. package/dist/components/ComponentTreeFavorites/components/Tips.vue.d.ts +16 -0
  14. package/dist/components/ComponentTreeFavorites/index.vue.d.ts +44 -0
  15. package/dist/components/ImageGuide/index.vue.d.ts +45 -0
  16. package/dist/components.d.ts +7 -0
  17. package/dist/composables/useComponentTree.d.ts +13 -0
  18. package/dist/config/ace.config.d.ts +3 -0
  19. package/dist/domain/EditorDomain.d.ts +89 -0
  20. package/dist/editor.d.ts +286 -0
  21. package/dist/editor.vue.d.ts +104 -0
  22. package/dist/formily/ActivityBar/index.d.ts +4 -0
  23. package/dist/formily/ComponentTree/index.d.ts +4 -0
  24. package/dist/formily/DataBinding/index.d.ts +4 -0
  25. package/dist/formily/DataBinding/index.vue.d.ts +26 -0
  26. package/dist/formily/DataSource/index.d.ts +4 -0
  27. package/dist/formily/MenuTable/PageList.vue.d.ts +28 -0
  28. package/dist/formily/MenuTable/index.d.ts +4 -0
  29. package/dist/formily/MenuTable/index.vue.d.ts +30 -0
  30. package/dist/formily/MenuTable/useMenuTable.d.ts +227 -0
  31. package/dist/formily/NavTree/index.d.ts +4 -0
  32. package/dist/formily/SidebarPane/index.d.ts +4 -0
  33. package/dist/formily/index.d.ts +2 -0
  34. package/dist/index.css +1167 -0
  35. package/dist/index.d.ts +250 -0
  36. package/dist/index.js +34171 -0
  37. package/dist/utils/base64.d.ts +4 -0
  38. package/dist/utils/index.d.ts +27 -0
  39. package/package.json +58 -4
  40. package/rollup.config.js +3 -0
  41. package/src/ActivityBar/index.vue +71 -0
  42. package/src/ComponentTree/components/List.vue +310 -0
  43. package/src/ComponentTree/index.vue +77 -0
  44. package/src/DataSource/index.vue +640 -0
  45. package/src/HeaderBar/components/BarDialog.vue +43 -0
  46. package/src/HeaderBar/components/BarTooltip.vue +33 -0
  47. package/src/HeaderBar/index.vue +513 -0
  48. package/src/NavTree/index.vue +345 -0
  49. package/src/SchemaConfig/index.vue +150 -0
  50. package/src/SidebarPane/index.vue +199 -0
  51. package/src/SynBarComponent/index.vue +31 -0
  52. package/src/assets/font/NotoSansSC.ttf +0 -0
  53. package/src/assets/img/header/edit.png +0 -0
  54. package/src/assets/img/header/link.png +0 -0
  55. package/src/assets/img/header/link.svg +9 -0
  56. package/src/assets/img/header/preview.png +0 -0
  57. package/src/assets/img/header/preview.svg +9 -0
  58. package/src/assets/img/header/redo.svg +1 -0
  59. package/src/assets/img/header/undo.svg +1 -0
  60. package/src/assets/img/tool/all-select.svg +9 -0
  61. package/src/assets/img/tool/all.svg +9 -0
  62. package/src/assets/img/tool/collect.svg +6 -0
  63. package/src/assets/img/tool/collection-select.svg +3 -0
  64. package/src/assets/img/tool/collection-tag.svg +5 -0
  65. package/src/assets/img/tool/info.svg +4 -0
  66. package/src/assets/img/tool/union.svg +4 -0
  67. package/src/components/ComponentTreeFavorites/components/List.vue +452 -0
  68. package/src/components/ComponentTreeFavorites/components/Tips.vue +108 -0
  69. package/src/components/ComponentTreeFavorites/index.vue +180 -0
  70. package/src/components/ImageGuide/index.vue +100 -0
  71. package/src/components.ts +23 -0
  72. package/src/composables/useComponentTree.ts +38 -0
  73. package/src/config/ace.config.ts +22 -0
  74. package/src/domain/EditorDomain.ts +265 -0
  75. package/src/editor.ts +645 -0
  76. package/src/editor.vue +380 -0
  77. package/src/formily/ActivityBar/index.ts +23 -0
  78. package/src/formily/ActivityBar/index.vue +121 -0
  79. package/src/formily/ComponentTree/index.ts +22 -0
  80. package/src/formily/DataBinding/index.ts +22 -0
  81. package/src/formily/DataBinding/index.vue +285 -0
  82. package/src/formily/DataSource/index.ts +22 -0
  83. package/src/formily/MenuTable/PageList.vue +132 -0
  84. package/src/formily/MenuTable/index.ts +19 -0
  85. package/src/formily/MenuTable/index.vue +218 -0
  86. package/src/formily/MenuTable/useMenuTable.ts +147 -0
  87. package/src/formily/NavTree/index.ts +20 -0
  88. package/src/formily/SidebarPane/index.ts +23 -0
  89. package/src/formily/SidebarPane/index.vue +174 -0
  90. package/src/formily/index.ts +12 -0
  91. package/src/index.ts +29 -0
  92. package/src/typings/vue-shim.d.ts +13 -0
  93. package/src/utils/base64.ts +5 -0
  94. package/src/utils/index.ts +57 -0
  95. package/test/case.ts +67 -0
  96. package/test/utils/index.test.ts +27 -0
  97. package/tsconfig.json +8 -0
package/dist/index.css ADDED
@@ -0,0 +1,1167 @@
1
+ @charset "UTF-8";
2
+ .editor {
3
+ height: 100%;
4
+ display: flex;
5
+ flex-direction: column;
6
+ align-items: stretch;
7
+ overflow: hidden;
8
+ }
9
+ .editor-top {
10
+ position: relative;
11
+ box-sizing: border-box;
12
+ background: #f8f8f8;
13
+ padding: 9px 23px;
14
+ display: flex;
15
+ /* z-index: 3; */
16
+ overflow-x: auto;
17
+ flex-shrink: 0;
18
+ flex-basis: 53px;
19
+ }
20
+ .editor-container {
21
+ display: flex;
22
+ flex-direction: row;
23
+ align-items: stretch;
24
+ overflow-y: hidden;
25
+ position: relative;
26
+ /* height: calc(100% - 53px); */
27
+ flex: 9;
28
+ }
29
+ .editor-container__empty {
30
+ flex: 1 0 410px;
31
+ display: flex;
32
+ justify-content: center;
33
+ margin-top: 11px;
34
+ font-weight: 400;
35
+ font-size: 16px;
36
+ color: #4d5260;
37
+ line-height: 24px;
38
+ }
39
+ .editor-container__tool {
40
+ flex: 1 1 480px;
41
+ display: flex;
42
+ flex-direction: column;
43
+ position: relative;
44
+ box-shadow: 0px 2px 12px rgba(216, 222, 235, 0.5);
45
+ height: 100%;
46
+ }
47
+ .editor-container__tool .divider {
48
+ height: 1px;
49
+ width: 100%;
50
+ background-color: rgba(0, 0, 0, 0.1);
51
+ }
52
+ .editor-container__context {
53
+ flex: 1 3 1100px;
54
+ position: relative;
55
+ background-color: #e8e8e8;
56
+ display: flex;
57
+ align-items: flex-start;
58
+ justify-content: center;
59
+ padding-top: 20px;
60
+ overflow: auto;
61
+ }
62
+ .editor-container__context .iframe-box.mask::before {
63
+ content: "图片拖到这里上传";
64
+ z-index: inherit;
65
+ color: #fff;
66
+ background-color: rgba(0, 0, 0, 0.3);
67
+ position: absolute;
68
+ left: 0;
69
+ top: 0;
70
+ width: 100%;
71
+ height: 100%;
72
+ font-size: 16px;
73
+ display: flex;
74
+ align-items: center;
75
+ justify-content: center;
76
+ }
77
+ .editor-container__context .iframe-box .editor-iframe {
78
+ box-sizing: border-box;
79
+ border: 0;
80
+ box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.1);
81
+ transition: all ease 300ms;
82
+ }
83
+ .editor-container__schema {
84
+ flex: 1 0 364px;
85
+ box-sizing: border-box;
86
+ position: relative;
87
+ padding: 0 0 16px 0;
88
+ overflow: auto;
89
+ box-shadow: 0px 2px 12px rgba(216, 222, 235, 0.5);
90
+ }
91
+
92
+ .component-tree-v2 {
93
+ box-sizing: border-box;
94
+ padding: 20px;
95
+ flex-shrink: 1;
96
+ position: relative;
97
+ height: 100%;
98
+ display: flex;
99
+ flex-direction: column;
100
+ background: #fff;
101
+ }
102
+ .component-tree-v2__title {
103
+ display: flex;
104
+ align-items: center;
105
+ }
106
+ .component-tree-v2__title .text_info {
107
+ min-width: 54px;
108
+ font-size: 18px;
109
+ font-weight: 500;
110
+ color: #282f40;
111
+ line-height: 24px;
112
+ display: inline-flex;
113
+ margin-right: 15px;
114
+ }
115
+ .component-tree-v2__classify {
116
+ margin-top: 12px;
117
+ height: 48px;
118
+ border-radius: 6px;
119
+ background: #e6e6e6;
120
+ display: flex;
121
+ align-items: center;
122
+ position: relative;
123
+ }
124
+ .component-tree-v2__classify .classify_item {
125
+ flex: 1;
126
+ color: #828690;
127
+ font-size: 16px;
128
+ line-height: 24px;
129
+ display: flex;
130
+ justify-content: center;
131
+ align-items: center;
132
+ cursor: pointer;
133
+ position: relative;
134
+ z-index: 3;
135
+ }
136
+ .component-tree-v2__classify .classify_item img {
137
+ margin-right: 4px;
138
+ }
139
+ .component-tree-v2__classify .classify_item.active {
140
+ font-weight: 700;
141
+ color: #c79156;
142
+ }
143
+ .component-tree-v2__classify .action {
144
+ z-index: 2;
145
+ position: absolute;
146
+ width: calc(50% - 10px);
147
+ height: 38px;
148
+ border-radius: 4px;
149
+ background: #fff;
150
+ transition: all 0.3s;
151
+ margin-left: 5px;
152
+ }
153
+
154
+ .nav-tree .el-tree-node.activity > .el-tree-node__content {
155
+ background-color: rgba(245, 219, 193, 0.5);
156
+ }
157
+ .nav-tree .el-tree-node {
158
+ padding: 8px 0;
159
+ }
160
+ .nav-tree .el-tree-node .el-tree-node__content:hover, .nav-tree .el-tree-node .el-tree-node__content:active {
161
+ background-color: rgba(245, 219, 193, 0.5);
162
+ }
163
+ .nav-tree .el-tree-node .el-tree-node__content .el-tree-node__label {
164
+ flex: 1;
165
+ }
166
+ .nav-tree .el-tree-node .el-tree-node__content .tree-item span {
167
+ font-weight: 500;
168
+ font-size: 16px;
169
+ line-height: 24px;
170
+ }
171
+ .nav-tree .el-tree-node .el-tree-node__children .el-tree-node:nth-child(1) {
172
+ margin-top: 8px;
173
+ }
174
+ .nav-tree .el-tree-node .el-tree-node__children .tree-item span {
175
+ font-weight: 400;
176
+ font-size: 14px;
177
+ }
178
+ .nav-tree .tree-item .el-input__wrapper {
179
+ box-shadow: 0 0 0 1px #bf935f inset;
180
+ padding: 4px 5px 4px 4px;
181
+ }
182
+ .nav-tree .tree-item .el-input__wrapper .el-input__inner {
183
+ color: #50381f;
184
+ }
185
+
186
+ .nav-tree {
187
+ flex: 0 0 30%;
188
+ padding: 16px 17px;
189
+ overflow: auto;
190
+ color: #020202;
191
+ height: 100%;
192
+ }
193
+ .nav-tree .tree-item {
194
+ display: flex;
195
+ flex: 1;
196
+ align-items: center;
197
+ position: relative;
198
+ }
199
+ .nav-tree .tree-item span {
200
+ margin-left: 3px;
201
+ font-size: 14px;
202
+ line-height: 24px;
203
+ color: #020202;
204
+ }
205
+ .nav-tree .tree-item .tree-icon {
206
+ width: 20px;
207
+ height: 18px;
208
+ object-fit: contain;
209
+ }
210
+ .nav-tree .tree-item .el-input {
211
+ height: 26px;
212
+ width: fit-content;
213
+ }
214
+ .nav-tree .tree-item .delete-icon {
215
+ position: absolute;
216
+ right: 0;
217
+ transition: all 0.2s ease;
218
+ }
219
+ .nav-tree .tree-item .delete-icon:hover {
220
+ font-size: 18px !important;
221
+ }
222
+
223
+ .schema-config .title {
224
+ font-family: "Noto Sans SC";
225
+ font-style: normal;
226
+ font-weight: 600;
227
+ font-size: 16px;
228
+ line-height: 24px;
229
+ /* identical to box height, or 150% */
230
+ color: #020202;
231
+ margin-bottom: 16px;
232
+ }
233
+ .schema-config .notice {
234
+ text-align: center;
235
+ font-size: 14px;
236
+ color: rgba(0, 0, 0, 0.6);
237
+ padding: 50px 15px 0;
238
+ }
239
+
240
+ .header-bar {
241
+ display: flex;
242
+ align-items: center;
243
+ width: 100%;
244
+ white-space: nowrap;
245
+ }
246
+ .header-bar .read-only {
247
+ opacity: 0.4;
248
+ pointer-events: none;
249
+ cursor: not-allowed;
250
+ }
251
+ .header-bar__left {
252
+ flex: 1 1 320px;
253
+ display: flex;
254
+ align-items: center;
255
+ }
256
+ .header-bar__left .title {
257
+ margin-right: 10px;
258
+ font-weight: 500;
259
+ font-size: 16px;
260
+ line-height: 22px;
261
+ color: #4b515e;
262
+ width: 300px;
263
+ white-space: nowrap;
264
+ overflow: hidden;
265
+ text-overflow: ellipsis;
266
+ }
267
+ .header-bar__left .title .status {
268
+ color: #b7b7b7;
269
+ }
270
+ .header-bar__left .title-edit {
271
+ cursor: pointer;
272
+ }
273
+ .header-bar__center {
274
+ flex: 1 1 auto;
275
+ display: flex;
276
+ align-items: center;
277
+ justify-content: center;
278
+ }
279
+ .header-bar__center .label {
280
+ font-size: 14px;
281
+ line-height: 20px;
282
+ color: #1e1917;
283
+ }
284
+ .header-bar__center .select-wrap {
285
+ margin: 0 24px 0 9px;
286
+ }
287
+ .header-bar__center .img-box {
288
+ position: relative;
289
+ }
290
+ .header-bar__center .img-box .box-1 {
291
+ transform: rotate(90deg);
292
+ transform-origin: 6px 14px;
293
+ }
294
+ .header-bar__center .img-box .box-2, .header-bar__center .img-box .box-1 {
295
+ box-sizing: border-box;
296
+ height: 20px;
297
+ width: 12px;
298
+ position: absolute;
299
+ left: 15px;
300
+ top: 10px;
301
+ border: 1px solid #4f5052;
302
+ border-radius: 2px;
303
+ background-color: #fff;
304
+ z-index: 10;
305
+ }
306
+ .header-bar__center .img-box .box-3 {
307
+ position: absolute;
308
+ height: 1px;
309
+ width: 3px;
310
+ top: 26px;
311
+ left: 19px;
312
+ background-color: #4f5052;
313
+ z-index: 10;
314
+ }
315
+ .header-bar__center .img-box .inactive {
316
+ opacity: 0.2;
317
+ z-index: 1;
318
+ }
319
+ .header-bar__center .scale-area {
320
+ margin-left: 10px;
321
+ font-family: "Noto Sans SC";
322
+ width: 150px;
323
+ display: flex;
324
+ align-items: center;
325
+ justify-content: space-evenly;
326
+ background-color: #fff;
327
+ border-radius: 6px;
328
+ }
329
+ .header-bar__center .scale-area .scale {
330
+ font-size: 20px;
331
+ cursor: pointer;
332
+ flex: 1;
333
+ text-align: center;
334
+ }
335
+ .header-bar__center .scale-area .disabled {
336
+ cursor: not-allowed;
337
+ color: #a8abb2;
338
+ }
339
+ .header-bar__center .scale-area .percent {
340
+ width: 62px;
341
+ height: 40px;
342
+ line-height: 40px;
343
+ text-align: center;
344
+ border-left: 1px solid #dbdbdb;
345
+ border-right: 1px solid #dbdbdb;
346
+ }
347
+ .header-bar__center .history-btn {
348
+ margin-left: 20px;
349
+ margin-right: 10px;
350
+ display: flex;
351
+ }
352
+ .header-bar__center .history-btn .undo,
353
+ .header-bar__center .history-btn .redo {
354
+ display: flex;
355
+ margin-right: 10px;
356
+ cursor: pointer;
357
+ line-height: 40px;
358
+ }
359
+ .header-bar__center .history-btn .undo img,
360
+ .header-bar__center .history-btn .redo img {
361
+ width: 25px;
362
+ vertical-align: middle;
363
+ }
364
+ .header-bar__center .history-btn .disable {
365
+ pointer-events: none;
366
+ cursor: not-allowed !important;
367
+ opacity: 0.3;
368
+ }
369
+ .header-bar__right {
370
+ flex: 1 1 485px;
371
+ display: flex;
372
+ align-items: center;
373
+ justify-content: space-between;
374
+ }
375
+ .header-bar__right .tips .img-box:first-child {
376
+ margin-right: 10px;
377
+ }
378
+ .header-bar__right .btns .el-button:first-child:focus, .header-bar__right .btns .el-button:first-child:hover {
379
+ color: #704528;
380
+ border-color: #f5dbc1;
381
+ background-color: #f5dbc1;
382
+ }
383
+ .header-bar__right .btns .el-button--primary {
384
+ color: #704528;
385
+ }
386
+ .header-bar .img-box {
387
+ display: inline-block;
388
+ width: 51px;
389
+ height: 40px;
390
+ line-height: 40px;
391
+ text-align: center;
392
+ background-color: #fff;
393
+ cursor: pointer;
394
+ }
395
+ .header-bar .img-box img {
396
+ vertical-align: middle;
397
+ }
398
+
399
+ .component-tree {
400
+ flex-shrink: 1;
401
+ padding: 16px 17px;
402
+ position: relative;
403
+ height: 100%;
404
+ display: flex;
405
+ flex-direction: column;
406
+ }
407
+ .component-tree__title {
408
+ margin-bottom: 19px;
409
+ font-weight: 500;
410
+ font-size: 16px;
411
+ line-height: 24px;
412
+ }
413
+ .component-tree .search-input {
414
+ margin-bottom: 9px;
415
+ flex-grow: 0;
416
+ }
417
+
418
+ .sidebar {
419
+ padding-top: 12px;
420
+ height: 100%;
421
+ width: 48px;
422
+ display: flex;
423
+ flex-direction: column;
424
+ align-items: center;
425
+ justify-content: flex-start;
426
+ }
427
+ .sidebar .title {
428
+ width: 46px;
429
+ height: 46px;
430
+ display: flex;
431
+ flex-direction: column;
432
+ align-items: center;
433
+ justify-content: center;
434
+ cursor: pointer;
435
+ }
436
+ .sidebar .title .title-icon {
437
+ width: 20px;
438
+ height: 20px;
439
+ margin: 0;
440
+ display: flex;
441
+ align-items: center;
442
+ }
443
+ .sidebar .title .title-icon .el-icon:deep(svg > path) {
444
+ fill: currentColor;
445
+ }
446
+ .sidebar .activated {
447
+ color: #f0dcc4;
448
+ }
449
+
450
+ .float-pane {
451
+ position: absolute;
452
+ width: 300px;
453
+ top: 0;
454
+ bottom: 0;
455
+ left: 46px;
456
+ z-index: 820;
457
+ border-left: 1px solid rgba(0, 0, 0, 0.1);
458
+ box-shadow: 4px 6px 6px 0 rgba(31, 50, 88, 0.08);
459
+ background-color: #fff;
460
+ display: none;
461
+ }
462
+
463
+ .fixed-pane {
464
+ position: relative;
465
+ margin-left: 1px;
466
+ border-left: 1px solid rgba(0, 0, 0, 0.1);
467
+ height: 100%;
468
+ width: 300px;
469
+ flex-shrink: 0;
470
+ background-color: #fff;
471
+ display: none;
472
+ }
473
+
474
+ .float-pane .titled-panel,
475
+ .fixed-pane .titled-panel {
476
+ position: relative;
477
+ width: 100%;
478
+ height: 100%;
479
+ }
480
+ .float-pane .titled-panel .icon-float,
481
+ .float-pane .titled-panel .icon-fixed,
482
+ .fixed-pane .titled-panel .icon-float,
483
+ .fixed-pane .titled-panel .icon-fixed {
484
+ position: absolute;
485
+ right: 38px;
486
+ top: 14px;
487
+ height: auto;
488
+ z-index: 2;
489
+ background: transparent;
490
+ border-color: transparent;
491
+ border-radius: 0;
492
+ padding: 0;
493
+ height: 20px;
494
+ font-size: 14px;
495
+ border-width: 0;
496
+ cursor: pointer;
497
+ }
498
+ .float-pane .titled-panel .icon-close,
499
+ .fixed-pane .titled-panel .icon-close {
500
+ position: absolute;
501
+ right: 16px;
502
+ top: 14px;
503
+ height: auto;
504
+ z-index: 2;
505
+ background: transparent;
506
+ border-color: transparent;
507
+ border-radius: 0;
508
+ padding: 0;
509
+ height: 20px;
510
+ font-size: 14px;
511
+ border-width: 0;
512
+ cursor: pointer;
513
+ display: flex;
514
+ align-items: center;
515
+ justify-content: center;
516
+ }
517
+ .float-pane .titled-panel .panel-title,
518
+ .fixed-pane .titled-panel .panel-title {
519
+ height: 48px;
520
+ font-size: 16px;
521
+ padding: 0 15px;
522
+ color: #0f1726;
523
+ font-weight: 700;
524
+ display: flex;
525
+ justify-content: flex-start;
526
+ align-items: center;
527
+ }
528
+ .float-pane .titled-panel .panel-body,
529
+ .fixed-pane .titled-panel .panel-body {
530
+ position: absolute;
531
+ top: 0;
532
+ bottom: 0;
533
+ left: 0;
534
+ right: 0;
535
+ overflow: visible;
536
+ border-top: 1px solid rgba(31, 56, 88, 0.1);
537
+ }
538
+
539
+ .visible {
540
+ display: block;
541
+ }
542
+
543
+ .guide-dialog .el-dialog__body {
544
+ padding: 32px;
545
+ overflow-y: scroll;
546
+ }
547
+ .guide-dialog .image-export-guide {
548
+ box-sizing: border-box;
549
+ padding: 16px 137px 24px 22px;
550
+ background: #f3f3f3;
551
+ }
552
+ .guide-dialog .image-export-guide--item {
553
+ margin-bottom: 22px;
554
+ }
555
+ .guide-dialog .image-export-guide--item p {
556
+ font-style: normal;
557
+ font-weight: 400;
558
+ font-size: 14px;
559
+ line-height: 24px;
560
+ /* identical to box height, or 171% */
561
+ display: flex;
562
+ align-items: center;
563
+ color: #000000;
564
+ margin-bottom: 12px;
565
+ }
566
+ .guide-dialog .image-export-guide .image-group {
567
+ display: flex;
568
+ justify-content: space-around;
569
+ }
570
+
571
+ .binded-page {
572
+ display: "flex";
573
+ align-items: "center";
574
+ }
575
+
576
+ .menu-form {
577
+ margin-bottom: 17px;
578
+ padding-top: 44px;
579
+ padding-bottom: 26px;
580
+ border: 1px solid #e8e9eb;
581
+ border-left: none;
582
+ border-right: none;
583
+ }
584
+
585
+ .data-binding {
586
+ position: relative;
587
+ }
588
+ .data-binding .setter-actions {
589
+ position: absolute;
590
+ right: 0;
591
+ top: 0;
592
+ transform: none;
593
+ cursor: pointer;
594
+ display: flex;
595
+ align-items: center;
596
+ }
597
+ .data-binding .setter-actions .title {
598
+ background: #006cff;
599
+ color: #fff !important;
600
+ border-radius: 3px;
601
+ }
602
+ .data-binding .setter-actions .title .title-icon {
603
+ display: flex;
604
+ align-items: center;
605
+ }
606
+ .data-binding .setter-actions .only-icon {
607
+ background: #fff;
608
+ color: #8f9bb3;
609
+ }
610
+ .data-binding:deep(.formily-element-plus-form-item-control-content-component) {
611
+ justify-content: flex-start;
612
+ }
613
+
614
+ .variable-dialog-content {
615
+ display: flex;
616
+ box-sizing: border-box;
617
+ }
618
+ .variable-dialog-content .variable-selector {
619
+ width: 270px;
620
+ flex-shrink: 0;
621
+ flex-grow: 0;
622
+ }
623
+ .variable-dialog-content .variable-selector .variable-selector-inner {
624
+ display: flex;
625
+ border: 1px solid rgba(31, 56, 88, 0.3);
626
+ border-radius: 3px;
627
+ height: calc(100% - 28px);
628
+ }
629
+ .variable-dialog-content .variable-selector .variable-selector-inner .variable-selector-category {
630
+ width: 110px;
631
+ flex-shrink: 0;
632
+ flex-grow: 0;
633
+ border-right: 1px solid rgba(31, 56, 88, 0.2);
634
+ }
635
+ .variable-dialog-content .variable-selector .variable-selector-inner .variable-selector-category li {
636
+ height: 28px;
637
+ line-height: 28px;
638
+ padding: 0 12px;
639
+ cursor: pointer;
640
+ position: relative;
641
+ overflow: hidden;
642
+ text-overflow: ellipsis;
643
+ white-space: nowrap;
644
+ }
645
+ .variable-dialog-content .variable-selector .variable-selector-inner .variable-selector-category .active {
646
+ background: rgba(31, 56, 88, 0.06);
647
+ }
648
+ .variable-dialog-content .variable-selector .variable-selector-inner .variable-selector-items-container {
649
+ width: 157px;
650
+ }
651
+ .variable-dialog-content .variable-selector .variable-selector-inner .variable-selector-items-container .selector-search-control {
652
+ margin: 10px;
653
+ height: 30px;
654
+ }
655
+ .variable-dialog-content .variable-selector .variable-selector-inner .variable-selector-items-container .variable-selector-items {
656
+ overflow-y: auto;
657
+ overflow-x: hidden;
658
+ height: 270px;
659
+ }
660
+ .variable-dialog-content .variable-selector .variable-selector-inner .variable-selector-items-container .variable-selector-items li {
661
+ height: 28px;
662
+ line-height: 28px;
663
+ padding: 0 12px;
664
+ cursor: pointer;
665
+ position: relative;
666
+ overflow: hidden;
667
+ text-overflow: ellipsis;
668
+ white-space: nowrap;
669
+ }
670
+ .variable-dialog-content .variable-selector .variable-selector-inner ul {
671
+ margin: 0;
672
+ padding: 0;
673
+ list-style-type: none;
674
+ }
675
+ .variable-dialog-content .variable-selector .variable-selector-inner ul li:hover {
676
+ background: rgba(31, 56, 88, 0.04);
677
+ }
678
+ .variable-dialog-content .variable-content {
679
+ margin-left: 12px;
680
+ flex-grow: 1;
681
+ }
682
+ .variable-dialog-content .variable-title {
683
+ font-weight: 700;
684
+ margin-bottom: 8px;
685
+ color: rgba(0, 0, 0, 0.8);
686
+ display: flex;
687
+ align-items: center;
688
+ }
689
+
690
+ .component-list-favorites .el-collapse {
691
+ margin-top: 20px;
692
+ border: none;
693
+ }
694
+ .component-list-favorites .el-collapse .el-collapse-item__arrow {
695
+ display: none;
696
+ }
697
+ .component-list-favorites .el-collapse .el-collapse-item__header {
698
+ color: #282f40;
699
+ font-size: 14px;
700
+ font-weight: 500;
701
+ line-height: 120%;
702
+ height: auto;
703
+ margin-bottom: 20px;
704
+ border: none;
705
+ display: flex;
706
+ align-items: center;
707
+ column-gap: 8px;
708
+ }
709
+ .component-list-favorites .el-collapse .el-collapse-item__header path {
710
+ fill: #999 !important;
711
+ }
712
+ .component-list-favorites .el-collapse .el-collapse-item__wrap {
713
+ border-bottom: none;
714
+ }
715
+ .component-list-favorites .el-collapse .el-collapse-item__wrap .el-collapse-item__content {
716
+ padding-bottom: 0px;
717
+ padding-left: 10px;
718
+ }
719
+ .component-list-favorites .nested-list .el-collapse-item__header {
720
+ font-size: 14px;
721
+ line-height: 24px;
722
+ font-weight: 400;
723
+ height: auto;
724
+ color: #282f40;
725
+ margin-bottom: 4px;
726
+ border: none;
727
+ }
728
+ .component-list-favorites .nested-list .el-collapse-item__content {
729
+ padding-left: 0px !important;
730
+ }
731
+
732
+ .component-list-favorites__tags {
733
+ display: flex;
734
+ column-gap: 4px;
735
+ flex-wrap: wrap;
736
+ padding-top: 12px;
737
+ position: sticky;
738
+ top: 0;
739
+ background: #fff;
740
+ z-index: 2;
741
+ }
742
+ .component-list-favorites__tags .tag-item {
743
+ padding: 5px 10px;
744
+ border-radius: 4px;
745
+ border: 1px solid #dcdfe6;
746
+ background: #fff;
747
+ color: #4d5260;
748
+ font-size: 14px;
749
+ font-weight: 500;
750
+ line-height: 22px;
751
+ margin-bottom: 6px;
752
+ cursor: pointer;
753
+ }
754
+ .component-list-favorites__tags .tag-item:hover {
755
+ background: #c79156;
756
+ border: 1px solid #c79156;
757
+ color: #fff;
758
+ }
759
+
760
+ .component-list-favorites {
761
+ display: flex;
762
+ flex-basis: 100px;
763
+ flex-grow: 1;
764
+ height: 100%;
765
+ overflow-y: auto;
766
+ flex-direction: column;
767
+ }
768
+ .component-list-favorites .notice {
769
+ text-align: center;
770
+ font-size: 14px;
771
+ color: rgba(0, 0, 0, 0.6);
772
+ padding: 50px 15px 0;
773
+ }
774
+ .component-list-favorites .component-group {
775
+ display: flex;
776
+ flex-wrap: wrap;
777
+ column-gap: 10px;
778
+ }
779
+ .component-list-favorites .component-item {
780
+ display: flex;
781
+ align-items: center;
782
+ flex-direction: column;
783
+ margin-bottom: 10px;
784
+ position: relative;
785
+ cursor: pointer;
786
+ }
787
+ .component-list-favorites .component-item:hover .tip-box {
788
+ display: block;
789
+ }
790
+ .component-list-favorites .component-item .tip-box {
791
+ position: absolute;
792
+ background: rgba(26, 26, 26, 0.4);
793
+ width: 100px;
794
+ height: 100px;
795
+ left: 0;
796
+ top: 0;
797
+ box-sizing: border-box;
798
+ padding-top: 9px;
799
+ padding-right: 6px;
800
+ display: none;
801
+ border-radius: 4px;
802
+ }
803
+ .component-list-favorites .component-item .tip-box .icon {
804
+ float: right;
805
+ margin-left: 4px;
806
+ position: relative;
807
+ z-index: 1;
808
+ cursor: pointer;
809
+ }
810
+ .component-list-favorites .component-item .component-img, .component-list-favorites .component-item .component-img-copy {
811
+ box-sizing: border-box;
812
+ width: 100px;
813
+ min-width: 100px;
814
+ height: 100px;
815
+ background-color: rgba(33, 33, 33, 0.1);
816
+ border-radius: 4px;
817
+ padding: 8px 9px;
818
+ }
819
+ .component-list-favorites .component-item .component-img img, .component-list-favorites .component-item .component-img-copy img {
820
+ height: 100%;
821
+ width: 100%;
822
+ object-fit: contain;
823
+ }
824
+ .component-list-favorites .component-item .component-img-copy {
825
+ /* 由于设置为absolute会被该组件外的其他组件遮盖 因此设置为fixed */
826
+ position: fixed;
827
+ z-index: 999;
828
+ transition: all ease;
829
+ }
830
+ .component-list-favorites .component-item .component-name {
831
+ font-size: 12px;
832
+ line-height: 24px;
833
+ color: #828690;
834
+ }
835
+
836
+ .drop-area {
837
+ background: transparent;
838
+ }
839
+
840
+ .cover-iframe {
841
+ position: fixed;
842
+ inset: 0;
843
+ z-index: 99;
844
+ }
845
+
846
+ .datapool {
847
+ box-sizing: border-box;
848
+ display: flex;
849
+ height: 100%;
850
+ overflow: auto;
851
+ background: #fff;
852
+ }
853
+ .datapool .datapool-view-group {
854
+ padding-top: 44px;
855
+ width: 300px;
856
+ user-select: initial;
857
+ display: inline-block;
858
+ vertical-align: top;
859
+ height: 100%;
860
+ overflow: auto;
861
+ border-right: 1px solid rgba(31, 56, 88, 0.1);
862
+ }
863
+ .datapool .datapool-view-group .datapool-view-group-title {
864
+ box-sizing: border-box;
865
+ line-height: 44px;
866
+ width: 100%;
867
+ top: 0;
868
+ text-align: left;
869
+ padding: 0 12px;
870
+ position: absolute;
871
+ background: #f6f7f8;
872
+ }
873
+ .datapool .datapool-view-group .datapool-view-operation-group {
874
+ margin-top: 8px;
875
+ padding: 0 12px;
876
+ }
877
+ .datapool .datapool-view-group .datapool-view-operation-group .datapool-view-button-group {
878
+ display: flex;
879
+ justify-content: space-between;
880
+ align-items: center;
881
+ margin-top: 10px;
882
+ }
883
+ .datapool .datapool-view-group .datapool-view-group-list {
884
+ overflow-y: auto;
885
+ margin-top: 10px;
886
+ }
887
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item {
888
+ margin-bottom: 6px;
889
+ border-radius: 2px;
890
+ padding: 0 12px;
891
+ position: relative;
892
+ }
893
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title {
894
+ line-height: 28px;
895
+ font-size: 12px;
896
+ font-weight: 700;
897
+ border: 1px solid rgba(31, 56, 88, 0.1);
898
+ border-radius: 3px;
899
+ padding: 0 4px;
900
+ box-sizing: border-box;
901
+ position: relative;
902
+ transition: border 0.3s ease;
903
+ display: flex;
904
+ align-items: center;
905
+ }
906
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .title-icon {
907
+ width: 16px;
908
+ height: 16px;
909
+ max-height: 100%;
910
+ max-width: 100%;
911
+ opacity: 0.7;
912
+ overflow: hidden;
913
+ display: inline-flex;
914
+ align-items: center;
915
+ justify-content: center;
916
+ box-sizing: border-box;
917
+ cursor: pointer;
918
+ }
919
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .icon-drag {
920
+ cursor: ns-resize;
921
+ }
922
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .title-protocal {
923
+ padding: 0 4px;
924
+ border-radius: 5px;
925
+ text-align: center;
926
+ }
927
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .title-protocal.METHOD {
928
+ color: #33a4ff;
929
+ }
930
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .title-protocal.VARIABLE {
931
+ color: #66bc5c;
932
+ }
933
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .title-protocal.URI {
934
+ color: #fabd0e;
935
+ }
936
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .title-name {
937
+ max-width: calc(100% - 145px);
938
+ white-space: nowrap;
939
+ text-overflow: ellipsis;
940
+ overflow: hidden;
941
+ word-wrap: normal;
942
+ }
943
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .title-right-icons {
944
+ position: absolute;
945
+ right: 5px;
946
+ display: flex;
947
+ align-items: center;
948
+ height: 24px;
949
+ }
950
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .icon-edit,
951
+ .datapool .datapool-view-group .datapool-view-group-list .datapool-list-item .datapool-list-item-title .icon-copy {
952
+ margin-right: 4px;
953
+ }
954
+ .datapool .datapool-form-wrap {
955
+ position: relative;
956
+ padding-top: 44px;
957
+ flex: 1;
958
+ height: 100%;
959
+ box-sizing: border-box;
960
+ border-right: 1px solid rgba(31, 56, 88, 0.1);
961
+ overflow: auto;
962
+ vertical-align: top;
963
+ font-size: 12px;
964
+ }
965
+ .datapool .datapool-form-wrap .datapool-form-wrap-title {
966
+ box-sizing: border-box;
967
+ display: flex;
968
+ justify-content: space-between;
969
+ line-height: 44px;
970
+ padding: 0 12px;
971
+ position: absolute;
972
+ top: 0;
973
+ width: 409px;
974
+ background: #f6f7f8;
975
+ font-size: 14px;
976
+ z-index: 10;
977
+ }
978
+ .datapool .datapool-form-wrap .datapool-form-wrap-content {
979
+ width: 100%;
980
+ height: calc(100% - 37px);
981
+ box-sizing: border-box;
982
+ overflow-y: auto;
983
+ overflow-x: hidden;
984
+ padding: 8px 12px;
985
+ }
986
+
987
+ .component-list {
988
+ display: flex;
989
+ flex-basis: 100px;
990
+ flex-grow: 1;
991
+ height: 100%;
992
+ overflow-y: auto;
993
+ flex-direction: column;
994
+ }
995
+ .component-list .notice {
996
+ text-align: center;
997
+ font-size: 14px;
998
+ color: rgba(0, 0, 0, 0.6);
999
+ padding: 50px 15px 0;
1000
+ }
1001
+ .component-list .component-item {
1002
+ display: flex;
1003
+ align-items: center;
1004
+ margin-bottom: 12px;
1005
+ cursor: pointer;
1006
+ }
1007
+ .component-list .component-item .component-img, .component-list .component-item .component-img-copy {
1008
+ box-sizing: border-box;
1009
+ width: 100px;
1010
+ min-width: 100px;
1011
+ height: 52px;
1012
+ background-color: rgba(33, 33, 33, 0.1);
1013
+ border-radius: 4px;
1014
+ margin-right: 24px;
1015
+ padding: 8px 9px;
1016
+ }
1017
+ .component-list .component-item .component-img img, .component-list .component-item .component-img-copy img {
1018
+ height: 100%;
1019
+ width: 100%;
1020
+ object-fit: contain;
1021
+ }
1022
+ .component-list .component-item .component-img-copy {
1023
+ /* 由于设置为absolute会被该组件外的其他组件遮盖 因此设置为fixed */
1024
+ position: fixed;
1025
+ z-index: 999;
1026
+ transition: all ease;
1027
+ }
1028
+ .component-list .component-item .component-name {
1029
+ font-size: 14px;
1030
+ line-height: 24px;
1031
+ color: #4b515e;
1032
+ }
1033
+
1034
+ .drop-area {
1035
+ background: transparent;
1036
+ }
1037
+
1038
+ .cover-iframe {
1039
+ position: fixed;
1040
+ inset: 0;
1041
+ z-index: 99;
1042
+ }
1043
+
1044
+ .component-list .el-collapse {
1045
+ border-top: none;
1046
+ }
1047
+ .component-list .el-collapse .el-collapse-item__arrow {
1048
+ display: none;
1049
+ }
1050
+ .component-list .el-collapse .el-collapse-item__header {
1051
+ border-bottom: none;
1052
+ font-size: 14px;
1053
+ font-weight: 400;
1054
+ line-height: 24px;
1055
+ color: #020202;
1056
+ }
1057
+ .component-list .el-collapse .el-collapse-item__wrap {
1058
+ border-bottom: none;
1059
+ }
1060
+ .component-list .el-collapse .el-collapse-item__wrap .el-collapse-item__content {
1061
+ padding-bottom: 0px;
1062
+ padding-left: 10px;
1063
+ }
1064
+ .component-list .nested-list .el-collapse-item__header {
1065
+ font-size: 12px;
1066
+ line-height: 24px;
1067
+ color: #4b515e;
1068
+ }
1069
+ .component-list .nested-list .el-collapse-item__content {
1070
+ padding-left: 0px !important;
1071
+ }
1072
+
1073
+ .page-list {
1074
+ flex: 1;
1075
+ margin-bottom: 18px;
1076
+ border: 1px solid #6b7280;
1077
+ border-radius: 5px;
1078
+ overflow: hidden;
1079
+ }
1080
+ .page-list .input,
1081
+ .page-list .title {
1082
+ padding: 10px 15px 10px 15px;
1083
+ }
1084
+ .page-list .name-list {
1085
+ list-style: none;
1086
+ margin: 0;
1087
+ padding: 0;
1088
+ overflow: auto;
1089
+ height: 150px;
1090
+ }
1091
+ .page-list .name-list li {
1092
+ padding-left: 20px;
1093
+ padding-right: 20px;
1094
+ line-height: 30px;
1095
+ cursor: pointer;
1096
+ }
1097
+ .page-list .show-area {
1098
+ padding: 10px 15px 10px 15px;
1099
+ display: flex;
1100
+ justify-content: space-between;
1101
+ }
1102
+ .page-list .show-area .remove-icon {
1103
+ display: flex;
1104
+ justify-content: space-between;
1105
+ align-items: center;
1106
+ cursor: pointer;
1107
+ }
1108
+
1109
+ .page-item {
1110
+ transition: all 0.3s ease-in-out;
1111
+ }
1112
+
1113
+ .page-item:hover {
1114
+ background-color: #f5f7fa;
1115
+ }
1116
+
1117
+ .component-tips ::v-deep .el-dialog__body {
1118
+ padding: 30px;
1119
+ }
1120
+ .component-tips ::v-deep .el-dialog__title {
1121
+ color: #1a1a1a;
1122
+ font-size: 18px;
1123
+ font-weight: 500;
1124
+ line-height: 24px;
1125
+ }
1126
+ .component-tips ::v-deep .el-dialog {
1127
+ border-radius: 10px;
1128
+ }
1129
+ .component-tips ::v-deep .el-dialog__header {
1130
+ border-bottom: 1px solid #e6e6e6;
1131
+ padding: 30px 0 16px 0;
1132
+ margin: 0 30px;
1133
+ }
1134
+ .component-tips ::v-deep .el-dialog__header .el-icon {
1135
+ font-size: 24px;
1136
+ color: #1c212d;
1137
+ }
1138
+ .component-tips h1 {
1139
+ color: #1a1a1a;
1140
+ font-size: 16px;
1141
+ font-weight: 500;
1142
+ line-height: 24px;
1143
+ margin-bottom: 10px;
1144
+ }
1145
+ .component-tips--content {
1146
+ display: flex;
1147
+ }
1148
+ .component-tips--content__left {
1149
+ flex-grow: 1;
1150
+ }
1151
+ .component-tips--content__left p {
1152
+ color: #1a1a1a;
1153
+ font-size: 14px;
1154
+ font-weight: 400;
1155
+ line-height: 24px;
1156
+ }
1157
+ .component-tips--content__right {
1158
+ display: flex;
1159
+ flex-direction: column;
1160
+ min-width: 270px;
1161
+ max-width: 270px;
1162
+ margin-left: 80px;
1163
+ }
1164
+ .component-tips--content__right img {
1165
+ width: 100%;
1166
+ margin-top: 15px;
1167
+ }