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

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