@bpmn-io/form-js-editor 0.14.0 → 0.15.0-alpha.0

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 (37) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +116 -116
  3. package/dist/assets/form-js-editor-base.css +704 -489
  4. package/dist/assets/form-js-editor.css +229 -35
  5. package/dist/index.cjs +1049 -523
  6. package/dist/index.cjs.map +1 -1
  7. package/dist/index.es.js +920 -394
  8. package/dist/index.es.js.map +1 -1
  9. package/dist/types/FormEditor.d.ts +9 -4
  10. package/dist/types/core/EventBus.d.ts +1 -1
  11. package/dist/types/core/FormLayoutValidator.d.ts +5 -1
  12. package/dist/types/core/index.d.ts +2 -1
  13. package/dist/types/features/dragging/Dragging.d.ts +3 -3
  14. package/dist/types/features/editor-actions/FormEditorActions.d.ts +2 -1
  15. package/dist/types/features/editor-actions/index.d.ts +1 -1
  16. package/dist/types/features/keyboard/index.d.ts +1 -1
  17. package/dist/types/features/modeling/FormLayoutUpdater.d.ts +2 -1
  18. package/dist/types/features/modeling/behavior/IdBehavior.d.ts +2 -1
  19. package/dist/types/features/modeling/behavior/KeyBehavior.d.ts +2 -1
  20. package/dist/types/features/modeling/behavior/ValidateBehavior.d.ts +2 -1
  21. package/dist/types/features/modeling/index.d.ts +6 -1
  22. package/dist/types/features/palette/PaletteRenderer.d.ts +1 -1
  23. package/dist/types/features/palette/components/Palette.d.ts +1 -1
  24. package/dist/types/features/properties-panel/PropertiesPanel.d.ts +1 -1
  25. package/dist/types/features/properties-panel/PropertiesPanelHeaderProvider.d.ts +1 -1
  26. package/dist/types/features/properties-panel/PropertiesPanelRenderer.d.ts +1 -1
  27. package/dist/types/features/properties-panel/entries/InputKeyValuesSourceEntry.d.ts +1 -1
  28. package/dist/types/render/Renderer.d.ts +1 -1
  29. package/dist/types/render/components/FieldDragPreview.d.ts +1 -1
  30. package/dist/types/render/components/FieldResizer.d.ts +1 -0
  31. package/dist/types/render/components/FormEditor.d.ts +1 -1
  32. package/dist/types/render/components/Util.d.ts +27 -1
  33. package/dist/types/render/components/editor-form-fields/EditorText.d.ts +2 -4
  34. package/dist/types/render/components/icons/index.d.ts +1 -1
  35. package/dist/types/types.d.ts +28 -28
  36. package/package.json +4 -3
  37. package/dist/types/features/properties-panel/icons/index.d.ts +0 -1
@@ -1,489 +1,704 @@
1
- .fjs-editor-container {
2
- --color-children-border: var(--color-grey-225-10-75);
3
- --color-children-selected-border: var(--color-blue-219-100-53);
4
- --color-children-selected-background: transparent;
5
- --color-children-hover-border: var(--color-blue-219-100-53-05);
6
-
7
- --color-context-pad-item-background: var(--color-white);
8
- --color-context-pad-item-fill: var(--color-grey-225-10-35);
9
- --color-context-pad-item-hover-fill: var(--color-black);
10
-
11
- --color-dragula-background: var(--color-blue-205-100-95);
12
- --color-dragula-border: var(--color-blue-205-100-45);
13
- --color-dragula-mirror-background: var(--color-white);
14
- --color-dragula-mirror-border: var(--color-grey-225-10-90);
15
- --color-dragula-error-background: var(--color-red-360-100-92);
16
- --color-dragula-error-border: var(--color-red-360-100-45);
17
- }
18
-
19
- .fjs-palette-container {
20
- --color-palette-text: var(--color-grey-225-10-15);
21
- --color-palette-container-background: var(--color-grey-225-10-95);
22
- --color-palette-container-border: var(--color-grey-225-10-80);
23
- --color-palette-header: var(--color-text);
24
- --color-palette-header-background: var(--color-grey-225-10-95);
25
- --color-palette-header-border: var(--color-grey-225-10-85);
26
- --color-palette-search: var(--color-palette-text);
27
- --color-palette-search-icon: var(--color-grey-225-10-35);
28
- --color-palette-search-icon-hover: var(--color-grey-225-10-15);
29
- --color-palette-search-background: var(--color-white);
30
- --color-palette-search-border: var(--color-grey-225-10-75);
31
- --color-palette-search-focus-background: var(--color-blue-205-100-95);
32
- --color-palette-search-focus-border: var(--color-blue-205-100-50);
33
- --color-palette-search-clear-focus-border: var(--color-grey-225-10-50);
34
- --color-palette-group-title: var(--color-palette-text);
35
- --color-palette-field: var(--color-palette-text);
36
- --color-palette-field-background: var(--color-white);
37
- --color-palette-field-border: var(--color-grey-225-10-80);
38
- --color-palette-field-hover-background: var(--color-grey-225-10-90);
39
- --cursor-palette-field: grab;
40
- --palette-width: 250px;
41
- }
42
-
43
- .fjs-properties-container {
44
- --color-properties-container-background: var(--color-white);
45
- --color-properties-container-border: var(--color-grey-225-10-80);
46
- --properties-panel-width: 300px;
47
- }
48
-
49
- .fjs-editor-container {
50
- height: 100%;
51
- width: 100%;
52
- display: flex;
53
- }
54
-
55
- .fjs-editor-container .fjs-form-editor {
56
- display: flex;
57
- flex: 1;
58
- flex-direction: row;
59
- }
60
-
61
- .fjs-editor-container .fjs-form-container,
62
- .fjs-editor-container .fjs-editor-palette-container,
63
- .fjs-editor-container .fjs-editor-properties-container {
64
- overflow-y: auto;
65
- position: relative;
66
- }
67
-
68
- .fjs-editor-container .fjs-form-container,
69
- .fjs-editor-container .fjs-form {
70
- display: flex;
71
- flex-direction: column;
72
- flex: 1;
73
- }
74
-
75
- .fjs-editor-container .fjs-form > .fjs-element {
76
- flex-grow: 1;
77
- }
78
-
79
- .fjs-editor-container .fjs-children .fjs-children {
80
- border: dashed 2px var(--color-children-border);
81
- }
82
-
83
- .fjs-editor-container .fjs-children .fjs-element {
84
- position: relative;
85
- border: solid 2px transparent;
86
- }
87
-
88
- .fjs-editor-container .fjs-form-field:not(.fjs-powered-by) {
89
- margin: 1px 6px;
90
- }
91
-
92
- .fjs-editor-container .fjs-children .fjs-element.fjs-editor-selected {
93
- border-color: var(--color-children-selected-border) !important;
94
- background-color: var(--color-children-selected-background);
95
- }
96
-
97
- .fjs-editor-container .fjs-children .fjs-element:hover {
98
- border-color: var(--color-children-hover-border);
99
- }
100
-
101
- .fjs-editor-container .fjs-input:disabled,
102
- .fjs-editor-container .fjs-textarea:disabled,
103
- .fjs-editor-container .fjs-taglist-input:disabled,
104
- .fjs-editor-container .fjs-button:disabled,
105
- .fjs-editor-container .fjs-select:disabled {
106
- pointer-events: none;
107
- }
108
-
109
- .fjs-editor-container .fjs-drag-container,
110
- .fjs-editor-container .fjs-drop-container-vertical {
111
- user-select: none;
112
- }
113
-
114
- .fjs-editor-container .fjs-layout-row {
115
- padding: 4px 0px;
116
- }
117
-
118
- .fjs-editor-container .fjs-drag-row-move {
119
- display: flex;
120
- width: 100%;
121
- padding: 3px 0px;
122
- position: relative;
123
- }
124
-
125
- .fjs-editor-container .fjs-row-dragger {
126
- z-index: 2;
127
- position: absolute;
128
- top: 25%;
129
- height: 50%;
130
- left: -33px;
131
- width: 23px;
132
- padding-right: 7px;
133
- cursor: grab;
134
- display: flex;
135
- justify-content: center;
136
- align-items: center;
137
- }
138
-
139
- .fjs-editor-container .fjs-row-dragger svg {
140
- visibility: hidden;
141
- }
142
-
143
- .fjs-editor-container .fjs-row-dragger:hover svg,
144
- .fjs-editor-container .fjs-drag-row-move:hover .fjs-row-dragger svg {
145
- visibility: visible;
146
- }
147
-
148
- /**
149
- * Cursor styles
150
- */
151
- .fjs-cursor-grab {
152
- cursor: -webkit-grab;
153
- cursor: -moz-grab;
154
- cursor: grab;
155
- }
156
-
157
- .fjs-cursor-grabbing {
158
- cursor: -webkit-grabbing;
159
- cursor: -moz-grabbing;
160
- cursor: grabbing;
161
- }
162
-
163
- .fjs-cursor-crosshair {
164
- cursor: crosshair;
165
- }
166
-
167
- .fjs-cursor-move {
168
- cursor: move;
169
- }
170
-
171
- .fjs-cursor-not-allowed {
172
- cursor: not-allowed;
173
- }
174
-
175
-
176
- /**
177
- * Context Pad
178
- */
179
- .fjs-editor-container .fjs-context-pad {
180
- z-index: 2;
181
- position: absolute;
182
- top: 3px;
183
- right: 3px;
184
- box-shadow: 1px 1px 1px 1px rgb(0 0 0 / 10%);
185
- }
186
-
187
- .fjs-editor-container .fjs-context-pad-item {
188
- border: none;
189
- border-radius: 3px;
190
- background-color: var(--color-context-pad-item-background);
191
- padding: 0;
192
- width: 24px;
193
- height: 24px;
194
- fill: var(--color-context-pad-item-fill);
195
- display: flex;
196
- justify-content: center;
197
- align-items: center;
198
- }
199
-
200
- .fjs-editor-container .fjs-context-pad-item:hover {
201
- fill: var(--color-context-pad-item-hover-fill);
202
- }
203
-
204
- /**
205
- * Palette
206
- */
207
- .fjs-editor-container .fjs-palette-container {
208
- height: 100%;
209
- }
210
-
211
- .fjs-palette-container {
212
- width: var(--palette-width);
213
- background-color: var(--color-palette-container-background);
214
- border-right: solid 1px var(--color-palette-container-border);
215
- font-family: var(--font-family);
216
- }
217
-
218
- .fjs-palette-container .fjs-palette {
219
- height: 100%;
220
- display: flex;
221
- flex-direction: column;
222
- flex: 1;
223
- }
224
-
225
- .fjs-palette-container .fjs-palette-header {
226
- font-size: 14px;
227
- font-weight: bold;
228
- color: var(--color-palette-header);
229
- padding: 10px 15px;
230
- border-bottom: solid 1px var(--color-palette-header-border);
231
- background: var(--color-palette-header-background);
232
- user-select: none;
233
- }
234
-
235
- .fjs-palette-container .fjs-palette-search-container {
236
- display: flex;
237
- flex-direction: row;
238
- padding: 4px;
239
- margin: 15px;
240
- margin-top: 12px;
241
- color: var(--color-palette-search);
242
- border: 1px solid var(--color-palette-search-border);
243
- background-color: var(--color-palette-search-background);
244
- border-radius: 2px;
245
- font-size: 14px;
246
- }
247
-
248
- .fjs-palette-container .fjs-palette-search-container:focus-within {
249
- outline: none;
250
- background-color: var(--color-palette-search-focus-background);
251
- border: 1px solid var(--color-palette-search-focus-border);
252
- }
253
-
254
- .fjs-palette-container .fjs-palette-search-icon {
255
- margin-right: 6px;
256
- display: flex;
257
- align-items: center;
258
- justify-content: center;
259
- color: var(--color-palette-search-icon);
260
- }
261
-
262
- .fjs-palette-container .fjs-palette-search {
263
- background-color: inherit;
264
- font-family: inherit;
265
- margin: 0;
266
- border: none;
267
- padding: 0;
268
- }
269
-
270
- .fjs-palette-container .fjs-palette-search:focus {
271
- outline: none;
272
- }
273
-
274
- .fjs-palette-container .fjs-palette-search-clear {
275
- display: flex;
276
- justify-content: center;
277
- align-items: center;
278
- border: none;
279
- margin-left: auto;
280
- padding: 0;
281
- background: transparent;
282
- color: var(--color-palette-search-icon);
283
- }
284
-
285
- .fjs-palette-container .fjs-palette-search-clear svg {
286
- margin: 0;
287
- }
288
-
289
- .fjs-palette-container .fjs-palette-search-clear:hover {
290
- color: var(--color-palette-search-icon-hover);
291
- }
292
-
293
- .fjs-palette-container .fjs-palette-entries {
294
- height: 100%;
295
- overflow-x: hidden;
296
- overflow-y: auto;
297
- }
298
-
299
- .fjs-palette-container .fjs-palette-group {
300
- padding: 5px 15px;
301
- padding-right: 0px;
302
- }
303
-
304
- .fjs-palette-container .fjs-palette-group-title {
305
- font-size: 14px;
306
- font-weight: 500;
307
- color: var(--color-palette-group-title);
308
- user-select: none;
309
- }
310
-
311
- .fjs-palette-container .fjs-palette-fields {
312
- height: 100%;
313
- display: flex;
314
- flex-wrap: wrap;
315
- gap: 3%;
316
- }
317
-
318
- .fjs-palette-field {
319
- height: 68px;
320
- margin: 5px 0;
321
- display: flex;
322
- flex-direction: column;
323
- justify-content: center;
324
- font-size: 11px;
325
- user-select: none;
326
- color: var( --color-palette-field);
327
- background: var(--color-palette-field-background);
328
- }
329
-
330
- .fjs-palette-container .fjs-palette-field {
331
- width: 68px;
332
- }
333
-
334
- .fjs-palette-field .fjs-palette-field-icon {
335
- margin: 0 auto;
336
- }
337
-
338
- .fjs-palette-field .fjs-palette-field-text {
339
- text-align: center;
340
- }
341
-
342
- .fjs-palette-container .fjs-palette-field:hover {
343
- background-color: var(--color-palette-field-hover-background);
344
- cursor: var(--cursor-palette-field);
345
- }
346
-
347
- .fjs-palette-container .fjs-palette-no-entries {
348
- padding: 5px 15px;
349
- font-size: 14px;
350
- color: var(--color-palette-text);
351
- }
352
-
353
- /**
354
- * Properties Panel
355
- */
356
- .fjs-editor-container .fjs-properties-container {
357
- height: 100%;
358
- }
359
-
360
- .fjs-properties-container {
361
- background-color: var(--color-properties-container-background);
362
- width: var(--properties-panel-width);
363
- border-left: solid 1px var(--color-properties-container-border);
364
- color: var(--color-text);
365
- }
366
-
367
- .fjs-properties-container .fjs-properties-panel {
368
- height: 100%;
369
- }
370
-
371
- .fjs-properties-container .fjs-properties-panel * {
372
- box-sizing: border-box;
373
- }
374
-
375
- .fjs-properties-container .fjs-properties-panel .bio-properties-panel-header-icon svg {
376
- transform: scale(1.3);
377
- }
378
-
379
- /**
380
- * Editor Form Fields
381
- */
382
- .fjs-editor-container .fjs-form-field-placeholder {
383
- color: var(--color-text-light);
384
- font-style: italic;
385
- }
386
-
387
- .fjs-editor-container .fjs-form-field-placeholder svg {
388
- width: 36px;
389
- height: 36px;
390
- vertical-align: middle;
391
- margin-top: -2px;
392
- margin-right: 2px;
393
- }
394
-
395
- /**
396
- * Custom Dragula Styles
397
- */
398
- .gu-transit {
399
- background: var(--color-dragula-background) !important;
400
- border: dashed 2px var(--color-dragula-border) !important;
401
- border-radius: 3px !important;
402
- filter: none !important;
403
- height: 70px !important;
404
- opacity: 1 !important;
405
- /* mitigate for additional border in row */
406
- flex-grow: 0.98 !important;
407
- margin: 0 !important;
408
- }
409
-
410
- /* row drop preview */
411
- .fjs-children > .gu-transit {
412
- height: 28px !important;
413
- width: 100% !important;
414
- flex: unset !important;
415
- }
416
-
417
- /* error drop preview */
418
- .fjs-error-drop > .gu-transit {
419
- height: 100% !important;
420
- background: var(--color-dragula-error-background) !important;
421
- border: none !important;
422
- width: 6px !important;
423
- flex: none !important;
424
- padding: 0 !important;
425
- border-radius: 5px !important;
426
- }
427
-
428
- .fjs-error-drop.cds--row {
429
- flex-wrap: nowrap !important;
430
- }
431
-
432
- .gu-transit * {
433
- display: none !important;
434
- }
435
-
436
- .gu-mirror {
437
- background-color: var(--color-dragula-mirror-background) !important;
438
- border: solid 1px var(--color-dragula-mirror-border) !important;
439
- border-radius: 5px !important;
440
- box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.15) !important;
441
- display: flex !important;
442
- filter: none !important;
443
- flex-direction: row !important;
444
- justify-content: center !important;
445
- align-items: center !important;
446
- opacity: 0.5 !important;
447
- padding: 0 !important;
448
- pointer-events: none !important;
449
- height: 54px !important;
450
- }
451
-
452
- .fjs-field-preview {
453
- margin: 5px 0;
454
- display: flex;
455
- flex-direction: column;
456
- justify-content: center;
457
- font-size: 11px;
458
- user-select: none;
459
- color: var(--color-text);
460
- background: var(--color-white);
461
- }
462
-
463
- .fjs-field-preview .fjs-field-preview-icon {
464
- margin: 0 auto;
465
- }
466
-
467
- .fjs-field-preview .fjs-field-preview-text {
468
- text-align: center;
469
- }
470
-
471
- .gu-mirror.fjs-field-preview-container {
472
- transform: rotate(-15deg);
473
- font-family: var(--font-family);
474
- width: 68px !important;
475
- height: 68px !important;
476
- }
477
-
478
- .gu-mirror.fjs-drag-row-move {
479
- padding: 4px 12px !important;
480
- height: fit-content !important;
481
- opacity: 0.8 !important;
482
- max-height: 120px !important;
483
- overflow: hidden !important;
484
- align-items: start !important;
485
- }
486
-
487
- .gu-mirror.fjs-drag-row-move .cds--row {
488
- flex-wrap: nowrap !important;
489
- }
1
+ .fjs-editor-container {
2
+ --color-children-border: var(
3
+ --cds-border-strong,
4
+ var(--cds-border-strong-01, var(--color-grey-225-10-75))
5
+ );
6
+ --color-children-selected-border: var(--cds-border-interactive, var(--color-blue-219-100-53));
7
+ --color-children-selected-background: transparent;
8
+ --color-children-hover-border: var(--cds-border-interactive, var(--color-blue-219-100-53-05));
9
+
10
+ --color-context-pad-item-background: transparent;
11
+ --color-context-pad-item-fill: var(--cds-icon-secondary, var(--color-grey-225-10-15));
12
+ --color-context-pad-item-hover-fill: var(--color-red-360-100-45);
13
+
14
+ --color-resize-handle-background: var(--cds-border-interactive, var(--color-blue-219-100-53));
15
+ --color-resize-handle-border: var(--cds-border-interactive, var(--color-blue-219-100-53));
16
+
17
+ --color-dragula-background: var(--cds-highlight, var(--color-blue-205-100-95));
18
+ --color-dragula-border: var(--cds-border-interactive, var(--color-blue-205-100-45));
19
+ --color-dragula-mirror-background: var(--cds-background, var(--color-white));
20
+ --color-dragula-mirror-border: var(
21
+ --cds-border-strong,
22
+ var(--cds-border-strong-01, var(--color-grey-225-10-90))
23
+ );
24
+ --color-dragula-error-background: var(--color-red-360-100-92);
25
+ --color-dragula-error-border: var(--cds-text-error, var(--color-red-360-100-45));
26
+ }
27
+
28
+ .fjs-palette-container {
29
+ --color-palette-text: var(--cds-text-primary, var(--color-grey-225-10-15));
30
+ --color-palette-container-background: var(--cds-background, var(--color-grey-225-10-95));
31
+ --color-palette-container-border: var(
32
+ --cds-border-strong,
33
+ var(--cds-border-strong-01, var(--color-grey-225-10-80))
34
+ );
35
+ --color-palette-header: var(--cds-text-primary, var(--color-text));
36
+ --color-palette-header-background: var(--cds-background, var(--color-grey-225-10-95));
37
+ --color-palette-header-border: var(
38
+ --cds-border-strong,
39
+ var(--cds-border-strong-01, var(--color-grey-225-10-85))
40
+ );
41
+ --color-palette-search: var(--color-palette-text);
42
+ --color-palette-search-icon: var(--cds-icon-secondary, var(--color-grey-225-10-35));
43
+ --color-palette-search-icon-hover: var(--cds-icon-primary, var(--color-grey-225-10-15));
44
+ --color-palette-search-background: var(
45
+ --cds-field,
46
+ var(--cds-field-01, var(--color-white))
47
+ );
48
+ --color-palette-search-border: var(
49
+ --cds-border-strong,
50
+ var(--cds-border-strong-01, var(--color-grey-225-10-75))
51
+ );
52
+ --color-palette-search-focus-background: var(
53
+ --cds-field,
54
+ var(--cds-field-01, var(--color-blue-205-100-95))
55
+ );
56
+ --color-palette-search-focus-border: var(--cds-focus, var(--color-blue-205-100-50));
57
+ --color-palette-search-clear-focus-border: var(--cds-focus, var(--color-grey-225-10-50));
58
+ --color-palette-group-title: var(--color-palette-text);
59
+ --color-palette-field: var(--color-palette-text);
60
+ --color-palette-field-background: var(
61
+ --cds-layer,
62
+ var(--cds-layer-01, var(--color-white))
63
+ );
64
+ --color-palette-field-border: var(
65
+ --cds-border-strong,
66
+ var(--cds-border-strong-01, var(--color-grey-225-10-80))
67
+ );
68
+ --color-palette-field-hover-background: var(--cds-background-hover, var(--color-grey-225-10-90));
69
+ --cursor-palette-field: grab;
70
+ --palette-width: 250px;
71
+ }
72
+
73
+ .fjs-properties-container {
74
+ --color-properties-container-background: var(--cds-background, var(--color-white));
75
+ --color-properties-container-border: var(
76
+ --cds-border-strong,
77
+ var(--cds-border-strong-01, var(--color-grey-225-10-80))
78
+ );
79
+ --properties-panel-width: 300px;
80
+ }
81
+
82
+ /**
83
+ * Theming overrides
84
+ */
85
+ .fjs-properties-container .bio-properties-panel {
86
+ --text-base-color: var(--cds-text-primary, var(--color-grey-225-10-15));
87
+ --text-error-color: var(--cds-text-color, var(--color-red-360-100-45));
88
+ --link-color: var(--cds-text-primary, var(--color-blue-205-100-50));
89
+
90
+ --description-color: var(--cds-text-secondary, var(--color-grey-225-10-35));
91
+ --description-code-background-color: var(
92
+ --cds-layer,
93
+ var(--cds-layer-01, var(--color-grey-225-10-97))
94
+ );
95
+ --description-code-border-color: var(
96
+ --cds-border-strong,
97
+ var(--cds-border-strong-01, var(--color-grey-225-10-85))
98
+ );
99
+ --description-list-item-color: var(--cds-text-secondary, var(--color-grey-225-10-35));
100
+
101
+ --placeholder-color: var(--cds-text-placeholder, var(--color-grey-225-10-35));
102
+ --placeholder-background-color: var(
103
+ --cds-layer,
104
+ var(--cds-layer-01, var(--color-grey-225-10-95))
105
+ );
106
+
107
+ --header-background-color: var(
108
+ --cds-layer,
109
+ var(--cds-layer-01, var(--color-grey-225-10-95))
110
+ );
111
+ --header-icon-fill-color: var(--cds-icon-primary, var(--color-grey-225-10-15));
112
+ --header-bottom-border-color: var(--color-grey-225-10-75);
113
+
114
+ --group-background-color: var(--cds-background, var(--color-white));
115
+ --group-bottom-border-color: var(
116
+ --cds-border-strong,
117
+ var(--cds-border-strong-01, var(--color-grey-225-10-75))
118
+ );
119
+
120
+ --sticky-group-background-color: var(
121
+ --cds-layer,
122
+ var(--cds-layer-01, var(--color-grey-225-10-95))
123
+ );
124
+ --sticky-group-bottom-border-color: var(
125
+ --cds-border-strong,
126
+ var(--cds-border-strong-01, var(--color-grey-225-10-75))
127
+ );
128
+
129
+ --add-entry-fill-color: var(--cds-icon-secondary, var(--color-grey-225-10-35));
130
+ --add-entry-hover-fill-color: var(--cds-icon-inverse, var(--color-white));
131
+ --add-entry-hover-background-color: var(--cds-interactive, var(--color-blue-205-100-50));
132
+ --add-entry-label-color: var(--cds-text-inverse, var(--color-white));
133
+
134
+ --remove-entry-fill-color: var(--color-red-360-100-45);
135
+ --remove-entry-hover-background-color: var(--color-red-360-100-92);
136
+
137
+ --arrow-fill-color: var(--cds-icon-secondary, var(--color-grey-225-10-35));
138
+ --arrow-hover-background-color: var(
139
+ --cds-layer,
140
+ var(--cds-layer-01, var(--color-grey-225-10-95))
141
+ );
142
+
143
+ --dot-color: var(--cds-text-secondary, var(--color-grey-225-10-35));
144
+
145
+ --list-badge-color: var(--cds-text-inverse, var(--color-white));
146
+ --list-badge-background-color: var(--cds-background-inverse, var(--color-grey-225-10-35));
147
+
148
+ --input-background-color: var(
149
+ --cds-field,
150
+ var(--cds-field-01, var(--color-grey-225-10-97))
151
+ );
152
+ --input-border-color: var(
153
+ --cds-border-strong,
154
+ var(--cds-border-strong-01, var(--color-grey-225-10-75))
155
+ );
156
+
157
+ --input-focus-background-color: var(
158
+ --cds-field,
159
+ var(--cds-field-01, var(--color-blue-205-100-95))
160
+ );
161
+ --input-focus-border-color: var(--cds-focus, var(--color-blue-205-100-50));
162
+
163
+ --input-error-background-color: var(
164
+ --cds-field,
165
+ var(--cds-field-01, var(--color-red-360-100-97))
166
+ );
167
+ --input-error-border-color: var(--cds-text-error, var(--color-red-360-100-45));
168
+ --input-error-focus-border-color: var(--cds-text-error, var(--color-red-360-100-45));
169
+
170
+ --input-disabled-color: var(--cds-text-disabled, var(--color-grey-225-10-55));
171
+ --input-disabled-background-color: var(
172
+ --cds-field,
173
+ var(--cds-field-01, var(--color-grey-225-10-97))
174
+ );
175
+ --input-disabled-border-color: var(--cds-border-disabled, var(--color-grey-225-10-90));
176
+
177
+ --toggle-switch-on-background-color: var(--cds-interactive, var(--color-blue-205-100-50));
178
+ --toggle-switch-off-background-color: var(--cds-toggle-off, var(--color-grey-225-10-75));
179
+ --toggle-switch-switcher-background-color: var(--cds-background, var(--color-white));
180
+
181
+ --side-line-background-color: var(--cds-text-secondary, var(--color-grey-225-10-35));
182
+ --side-line-extension-background-color: var(--cds-text-secondary, (--color-grey-225-10-35));
183
+
184
+ --list-entry-dot-background-color: var(--cds-background-inverse, var(--color-grey-225-10-35));
185
+ --list-entry-header-button-fill-color: var(--cds-background-inverse, var(--color-grey-225-10-35));
186
+ --list-entry-add-entry-empty-background-color: var(--cds-interactive, var(--color-blue-205-100-50));
187
+ --list-entry-add-entry-empty-hover-background-color: var(--cds-interactive, var(--color-blue-205-100-45));
188
+ --list-entry-add-entry-label-color: var(--cds-text-inverse, var(--color-white));
189
+ --list-entry-add-entry-background-color: var(--cds-interactive, var(--color-blue-205-100-50));
190
+ --list-entry-add-entry-fill-color: var(--cds-icon-inverse, var(--color-white));
191
+
192
+ --feel-active-color: var(--cds-interactive, var(--color-blue-205-100-35));
193
+ --feel-inactive-color: var(--cds-text-secondary, var(--color-grey-225-10-35));
194
+
195
+ --feel-indicator-background-color: var(--cds-background-hover, var(--color-grey-225-10-90));
196
+ }
197
+
198
+ .fjs-properties-container .bio-properties-panel-input {
199
+ color: var(--color-text);
200
+ }
201
+
202
+ .fjs-editor-container {
203
+ height: 100%;
204
+ width: 100%;
205
+ display: flex;
206
+ }
207
+
208
+ .fjs-editor-container .fjs-form-editor {
209
+ display: flex;
210
+ flex: 1;
211
+ flex-direction: row;
212
+ }
213
+
214
+ .fjs-editor-container .fjs-form-container,
215
+ .fjs-editor-container .fjs-editor-palette-container,
216
+ .fjs-editor-container .fjs-editor-properties-container {
217
+ overflow-y: auto;
218
+ position: relative;
219
+ }
220
+
221
+ .fjs-editor-container .fjs-form-container,
222
+ .fjs-editor-container .fjs-form {
223
+ display: flex;
224
+ flex-direction: column;
225
+ flex: 1;
226
+ }
227
+
228
+ .fjs-editor-container .fjs-form > .fjs-element {
229
+ flex-grow: 1;
230
+ }
231
+
232
+ .fjs-editor-container .fjs-children .fjs-children {
233
+ border: dashed 2px var(--color-children-border);
234
+ }
235
+
236
+ .fjs-editor-container .fjs-children .fjs-element {
237
+ position: relative;
238
+ border: solid 2px transparent;
239
+ }
240
+
241
+ .fjs-editor-container .fjs-form-field:not(.fjs-powered-by) {
242
+ margin: 1px 6px;
243
+ }
244
+
245
+ .fjs-editor-container .fjs-children .fjs-element.fjs-editor-selected {
246
+ border-color: var(--color-children-selected-border) !important;
247
+ background-color: var(--color-children-selected-background);
248
+ }
249
+
250
+ .fjs-editor-container .fjs-children .fjs-element:hover {
251
+ border-color: var(--color-children-hover-border);
252
+ }
253
+
254
+ .fjs-editor-container .fjs-input:disabled,
255
+ .fjs-editor-container .fjs-textarea:disabled,
256
+ .fjs-editor-container .fjs-taglist-input:disabled,
257
+ .fjs-editor-container .fjs-button:disabled,
258
+ .fjs-editor-container .fjs-select:disabled {
259
+ pointer-events: none;
260
+ }
261
+
262
+ .fjs-editor-container .fjs-drag-container,
263
+ .fjs-editor-container .fjs-drop-container-vertical {
264
+ user-select: none;
265
+ }
266
+
267
+ .fjs-editor-container .fjs-drop-container-horizontal {
268
+ width: 100%;
269
+ }
270
+
271
+ .fjs-editor-container .fjs-layout-row {
272
+ padding: 4px 0px;
273
+ }
274
+
275
+ .fjs-editor-container .fjs-drag-row-move {
276
+ display: flex;
277
+ width: 100%;
278
+ padding: 3px 0px;
279
+ position: relative;
280
+ }
281
+
282
+ .fjs-editor-container .fjs-row-dragger {
283
+ z-index: 2;
284
+ position: absolute;
285
+ top: 25%;
286
+ height: 50%;
287
+ left: -33px;
288
+ width: 23px;
289
+ padding-right: 7px;
290
+ cursor: grab;
291
+ display: flex;
292
+ justify-content: center;
293
+ align-items: center;
294
+ }
295
+
296
+ .fjs-editor-container .fjs-row-dragger svg {
297
+ visibility: hidden;
298
+ }
299
+
300
+ .fjs-editor-container .fjs-row-dragger:hover svg,
301
+ .fjs-editor-container .fjs-drag-row-move:hover .fjs-row-dragger svg {
302
+ visibility: visible;
303
+ }
304
+
305
+ .fjs-editor-container .fjs-drag-move {
306
+ padding-left: 3px;
307
+ }
308
+
309
+ .fjs-editor-container .fjs-field-resize-handle {
310
+ resize: horizontal;
311
+ position: absolute;
312
+ visibility: hidden;
313
+ width: 6px;
314
+ top: 0;
315
+ bottom: 0;
316
+ margin: auto;
317
+ height: 50px;
318
+ max-height: calc(100% - 2px);
319
+ border: 1px solid var(--color-resize-handle-border);
320
+ border-radius: 50px;
321
+ background: var(--color-white);
322
+ z-index: 3;
323
+ }
324
+
325
+ .fjs-editor-container .fjs-field-resize-handle-right {
326
+ right: -4px;
327
+ cursor: ew-resize;
328
+ }
329
+
330
+ .fjs-editor-container .fjs-field-resize-handle-left {
331
+ left: -4px;
332
+ cursor: ew-resize;
333
+ }
334
+
335
+ .fjs-editor-container .fjs-element-resizing-right .fjs-field-resize-handle-right,
336
+ .fjs-editor-container .fjs-element-resizing-left .fjs-field-resize-handle-left,
337
+ .fjs-editor-container .fjs-field-resize-handle:hover {
338
+ background: var(--color-resize-handle-background);
339
+ }
340
+
341
+ .fjs-editor-container .fjs-element-resizing-right .fjs-context-pad,
342
+ .fjs-editor-container .fjs-element-resizing-left .fjs-context-pad {
343
+ display: none;
344
+ }
345
+
346
+ .fjs-editor-container .fjs-children .fjs-editor-selected .fjs-field-resize-handle {
347
+ visibility: visible;
348
+ }
349
+
350
+ .fjs-resize-drag-preview {
351
+ width: 1px;
352
+ height: 1px;
353
+ position: absolute;
354
+ top: 0;
355
+ }
356
+
357
+ /* do not show resize handles on small screens */
358
+ @media (max-width: 66rem) {
359
+ .fjs-editor-container .fjs-children .fjs-editor-selected .fjs-field-resize-handle {
360
+ display: none !important;
361
+ }
362
+ }
363
+
364
+ /**
365
+ * Cursor styles
366
+ */
367
+ .fjs-cursor-grab {
368
+ cursor: -webkit-grab;
369
+ cursor: -moz-grab;
370
+ cursor: grab;
371
+ }
372
+
373
+ .fjs-cursor-grabbing {
374
+ cursor: -webkit-grabbing;
375
+ cursor: -moz-grabbing;
376
+ cursor: grabbing;
377
+ }
378
+
379
+ .fjs-cursor-crosshair {
380
+ cursor: crosshair;
381
+ }
382
+
383
+ .fjs-cursor-move {
384
+ cursor: move;
385
+ }
386
+
387
+ .fjs-cursor-not-allowed {
388
+ cursor: not-allowed;
389
+ }
390
+
391
+
392
+ /**
393
+ * Context Pad
394
+ */
395
+ .fjs-editor-container .fjs-context-pad {
396
+ z-index: 2;
397
+ position: absolute;
398
+ top: 0;
399
+ right: 5px;
400
+ }
401
+
402
+ .fjs-editor-container .fjs-context-pad-item {
403
+ border: none;
404
+ background-color: var(--color-context-pad-item-background);
405
+ padding: 0;
406
+ width: 24px;
407
+ height: 24px;
408
+ color: var(--color-context-pad-item-fill);
409
+ display: flex;
410
+ justify-content: center;
411
+ align-items: center;
412
+ }
413
+
414
+ .fjs-editor-container .fjs-context-pad-item:hover {
415
+ color: var(--color-context-pad-item-hover-fill);
416
+ }
417
+
418
+ /**
419
+ * Palette
420
+ */
421
+ .fjs-editor-container .fjs-palette-container {
422
+ height: 100%;
423
+ }
424
+
425
+ .fjs-palette-container {
426
+ width: var(--palette-width);
427
+ background-color: var(--color-palette-container-background);
428
+ border-right: solid 1px var(--color-palette-container-border);
429
+ font-family: var(--font-family);
430
+ }
431
+
432
+ .fjs-palette-container .fjs-palette {
433
+ height: 100%;
434
+ display: flex;
435
+ flex-direction: column;
436
+ flex: 1;
437
+ }
438
+
439
+ .fjs-palette-container .fjs-palette-header {
440
+ font-size: 14px;
441
+ font-weight: bold;
442
+ color: var(--color-palette-header);
443
+ padding: 10px 15px;
444
+ border-bottom: solid 1px var(--color-palette-header-border);
445
+ background: var(--color-palette-header-background);
446
+ user-select: none;
447
+ }
448
+
449
+ .fjs-palette-container .fjs-palette-search-container {
450
+ display: flex;
451
+ flex-direction: row;
452
+ padding: 4px;
453
+ margin: 15px;
454
+ margin-top: 12px;
455
+ color: var(--color-palette-search);
456
+ border: 1px solid var(--color-palette-search-border);
457
+ background-color: var(--color-palette-search-background);
458
+ border-radius: 2px;
459
+ font-size: 14px;
460
+ }
461
+
462
+ .fjs-palette-container .fjs-palette-search-container:focus-within {
463
+ outline: none;
464
+ background-color: var(--color-palette-search-focus-background);
465
+ border: 1px solid var(--color-palette-search-focus-border);
466
+ }
467
+
468
+ .fjs-palette-container .fjs-palette-search-icon {
469
+ margin-right: 6px;
470
+ display: flex;
471
+ align-items: center;
472
+ justify-content: center;
473
+ color: var(--color-palette-search-icon);
474
+ }
475
+
476
+ .fjs-palette-container .fjs-palette-search {
477
+ background-color: inherit;
478
+ font-family: inherit;
479
+ margin: 0;
480
+ border: none;
481
+ padding: 0;
482
+ color: var(--color-palette-text);
483
+ }
484
+
485
+ .fjs-palette-container .fjs-palette-search:focus {
486
+ outline: none;
487
+ }
488
+
489
+ .fjs-palette-container .fjs-palette-search-clear {
490
+ display: flex;
491
+ justify-content: center;
492
+ align-items: center;
493
+ border: none;
494
+ margin-left: auto;
495
+ padding: 0;
496
+ background: transparent;
497
+ color: var(--color-palette-search-icon);
498
+ }
499
+
500
+ .fjs-palette-container .fjs-palette-search-clear svg {
501
+ margin: 0;
502
+ }
503
+
504
+ .fjs-palette-container .fjs-palette-search-clear:hover {
505
+ color: var(--color-palette-search-icon-hover);
506
+ }
507
+
508
+ .fjs-palette-container .fjs-palette-entries {
509
+ height: 100%;
510
+ overflow-x: hidden;
511
+ overflow-y: auto;
512
+ }
513
+
514
+ .fjs-palette-container .fjs-palette-group {
515
+ padding: 5px 15px;
516
+ padding-right: 0px;
517
+ }
518
+
519
+ .fjs-palette-container .fjs-palette-group-title {
520
+ font-size: 14px;
521
+ font-weight: 500;
522
+ color: var(--color-palette-group-title);
523
+ user-select: none;
524
+ }
525
+
526
+ .fjs-palette-container .fjs-palette-fields {
527
+ height: 100%;
528
+ display: flex;
529
+ flex-wrap: wrap;
530
+ gap: 3%;
531
+ }
532
+
533
+ .fjs-palette-field {
534
+ height: 68px;
535
+ margin: 5px 0;
536
+ display: flex;
537
+ flex-direction: column;
538
+ justify-content: center;
539
+ font-size: 11px;
540
+ user-select: none;
541
+ color: var( --color-palette-field);
542
+ background: var(--color-palette-field-background);
543
+ }
544
+
545
+ .fjs-palette-container .fjs-palette-field {
546
+ width: 68px;
547
+ }
548
+
549
+ .fjs-palette-field .fjs-palette-field-icon {
550
+ margin: 0 auto;
551
+ }
552
+
553
+ .fjs-palette-field .fjs-palette-field-text {
554
+ text-align: center;
555
+ }
556
+
557
+ .fjs-palette-container .fjs-palette-field:hover {
558
+ background-color: var(--color-palette-field-hover-background);
559
+ cursor: var(--cursor-palette-field);
560
+ }
561
+
562
+ .fjs-palette-container .fjs-palette-no-entries {
563
+ padding: 5px 15px;
564
+ font-size: 14px;
565
+ color: var(--color-palette-text);
566
+ }
567
+
568
+ /**
569
+ * Properties Panel
570
+ */
571
+ .fjs-editor-container .fjs-properties-container {
572
+ height: 100%;
573
+ }
574
+
575
+ .fjs-properties-container {
576
+ background-color: var(--color-properties-container-background);
577
+ width: var(--properties-panel-width);
578
+ border-left: solid 1px var(--color-properties-container-border);
579
+ color: var(--color-text);
580
+ }
581
+
582
+ .fjs-properties-container .fjs-properties-panel {
583
+ height: 100%;
584
+ }
585
+
586
+ .fjs-properties-container .fjs-properties-panel * {
587
+ box-sizing: border-box;
588
+ }
589
+
590
+ .fjs-properties-container .fjs-properties-panel .bio-properties-panel-header-icon svg {
591
+ transform: scale(1.3);
592
+ }
593
+
594
+ /**
595
+ * Editor Form Fields
596
+ */
597
+ .fjs-editor-container .fjs-form-field-placeholder {
598
+ color: var(--color-text-light);
599
+ font-style: italic;
600
+ }
601
+
602
+ .fjs-editor-container .fjs-form-field-placeholder svg {
603
+ width: 36px;
604
+ height: 36px;
605
+ vertical-align: middle;
606
+ margin-top: -2px;
607
+ margin-right: 2px;
608
+ }
609
+
610
+ /**
611
+ * Custom Dragula Styles
612
+ */
613
+ .gu-transit {
614
+ background: var(--color-dragula-background) !important;
615
+ border: dashed 2px var(--color-dragula-border) !important;
616
+ border-radius: 3px !important;
617
+ filter: none !important;
618
+ height: 70px !important;
619
+ opacity: 1 !important;
620
+ /* mitigate for additional border in row */
621
+ flex-grow: 0.98 !important;
622
+ margin: 0 !important;
623
+ }
624
+
625
+ /* row drop preview */
626
+ .fjs-children > .gu-transit {
627
+ height: 28px !important;
628
+ width: 100% !important;
629
+ flex: unset !important;
630
+ }
631
+
632
+ /* error drop preview */
633
+ .fjs-error-drop > .gu-transit {
634
+ height: 100% !important;
635
+ background: var(--color-dragula-error-background) !important;
636
+ border: none !important;
637
+ width: 6px !important;
638
+ flex: none !important;
639
+ padding: 0 !important;
640
+ border-radius: 5px !important;
641
+ }
642
+
643
+ .fjs-error-drop.cds--row {
644
+ flex-wrap: nowrap !important;
645
+ }
646
+
647
+ .gu-transit * {
648
+ display: none !important;
649
+ }
650
+
651
+ .gu-mirror {
652
+ background-color: var(--color-dragula-mirror-background) !important;
653
+ border: solid 1px var(--color-dragula-mirror-border) !important;
654
+ border-radius: 5px !important;
655
+ box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.15) !important;
656
+ display: flex !important;
657
+ filter: none !important;
658
+ flex-direction: row !important;
659
+ justify-content: center !important;
660
+ align-items: center !important;
661
+ opacity: 0.5 !important;
662
+ padding: 0 !important;
663
+ pointer-events: none !important;
664
+ height: 54px !important;
665
+ }
666
+
667
+ .fjs-field-preview {
668
+ margin: 5px 0;
669
+ display: flex;
670
+ flex-direction: column;
671
+ justify-content: center;
672
+ font-size: 11px;
673
+ user-select: none;
674
+ color: var(--color-text);
675
+ background: var(--color-white);
676
+ }
677
+
678
+ .fjs-field-preview .fjs-field-preview-icon {
679
+ margin: 0 auto;
680
+ }
681
+
682
+ .fjs-field-preview .fjs-field-preview-text {
683
+ text-align: center;
684
+ }
685
+
686
+ .gu-mirror.fjs-field-preview-container {
687
+ transform: rotate(-15deg);
688
+ font-family: var(--font-family);
689
+ width: 68px !important;
690
+ height: 68px !important;
691
+ }
692
+
693
+ .gu-mirror.fjs-drag-row-move {
694
+ padding: 4px 12px !important;
695
+ height: fit-content !important;
696
+ opacity: 0.8 !important;
697
+ max-height: 120px !important;
698
+ overflow: hidden !important;
699
+ align-items: start !important;
700
+ }
701
+
702
+ .gu-mirror.fjs-drag-row-move .cds--row {
703
+ flex-wrap: nowrap !important;
704
+ }