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

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 (43) hide show
  1. package/dist/assets/form-js-editor-base.css +24 -5
  2. package/dist/assets/form-js-editor.css +98 -22
  3. package/dist/index.cjs +7843 -7295
  4. package/dist/index.cjs.map +1 -1
  5. package/dist/index.es.js +7864 -7316
  6. package/dist/index.es.js.map +1 -1
  7. package/dist/types/FormEditor.d.ts +6 -3
  8. package/dist/types/features/SectionModuleBase.d.ts +35 -0
  9. package/dist/types/features/expression-language/EditorTemplating.d.ts +8 -0
  10. package/dist/types/features/expression-language/index.d.ts +2 -2
  11. package/dist/types/features/palette/PaletteModule.d.ts +8 -0
  12. package/dist/types/features/palette/components/Palette.d.ts +1 -1
  13. package/dist/types/features/palette/index.d.ts +2 -2
  14. package/dist/types/features/properties-panel/PropertiesPanel.d.ts +1 -1
  15. package/dist/types/features/properties-panel/PropertiesPanelHeaderProvider.d.ts +1 -1
  16. package/dist/types/features/properties-panel/PropertiesPanelModule.d.ts +8 -0
  17. package/dist/types/features/properties-panel/entries/InputKeyValuesSourceEntry.d.ts +1 -1
  18. package/dist/types/features/properties-panel/entries/LabelEntry.d.ts +5 -5
  19. package/dist/types/features/properties-panel/entries/ReadonlyEntry.d.ts +9 -0
  20. package/dist/types/features/properties-panel/entries/index.d.ts +1 -0
  21. package/dist/types/features/properties-panel/hooks/index.d.ts +1 -1
  22. package/dist/types/features/properties-panel/hooks/useService.d.ts +2 -0
  23. package/dist/types/features/properties-panel/index.d.ts +2 -2
  24. package/dist/types/features/render-injection/RenderInjector.d.ts +30 -0
  25. package/dist/types/features/render-injection/components/InjectedRendersRoot.d.ts +2 -0
  26. package/dist/types/features/render-injection/index.d.ts +6 -0
  27. package/dist/types/features/render-injection/slot-fill/Fill.d.ts +2 -0
  28. package/dist/types/features/render-injection/slot-fill/FillContext.d.ts +5 -0
  29. package/dist/types/features/render-injection/slot-fill/Slot.d.ts +7 -0
  30. package/dist/types/features/render-injection/slot-fill/SlotContext.d.ts +4 -0
  31. package/dist/types/features/render-injection/slot-fill/SlotFillRoot.d.ts +2 -0
  32. package/dist/types/features/render-injection/slot-fill/index.d.ts +5 -0
  33. package/dist/types/render/components/FieldDragPreview.d.ts +1 -1
  34. package/dist/types/render/components/FieldResizer.d.ts +1 -1
  35. package/dist/types/render/components/FormEditor.d.ts +1 -1
  36. package/dist/types/render/components/ModularSection.d.ts +2 -0
  37. package/dist/types/render/components/editor-form-fields/EditorText.d.ts +1 -1
  38. package/package.json +4 -4
  39. package/dist/types/features/palette/PaletteRenderer.d.ts +0 -33
  40. package/dist/types/features/properties-panel/PropertiesPanelRenderer.d.ts +0 -37
  41. package/dist/types/features/properties-panel/context/FormPropertiesPanelContext.d.ts +0 -11
  42. package/dist/types/features/properties-panel/context/index.d.ts +0 -1
  43. package/dist/types/features/properties-panel/hooks/usePropertiesPanelService.d.ts +0 -1
@@ -189,8 +189,11 @@
189
189
  --list-entry-add-entry-background-color: var(--cds-interactive, var(--color-blue-205-100-50));
190
190
  --list-entry-add-entry-fill-color: var(--cds-icon-inverse, var(--color-white));
191
191
 
192
- --feel-active-color: var(--cds-interactive, var(--color-blue-205-100-35));
192
+ --feel-background-color: var(--cds-field-02, var(--color-grey-225-10-97));
193
+ --feel-active-color: var(--cds-interactive, var(--color-blue-205-100-45));
193
194
  --feel-inactive-color: var(--cds-text-secondary, var(--color-grey-225-10-35));
195
+ --feel-hover-background-color: var(--cds-field-hover-02, var(--color-grey-225-10-90));
196
+ --feel-active-background-color: var(--cds-field-02, var(--color-grey-225-10-97));
194
197
 
195
198
  --feel-indicator-background-color: var(--cds-background-hover, var(--color-grey-225-10-90));
196
199
  }
@@ -211,13 +214,18 @@
211
214
  flex-direction: row;
212
215
  }
213
216
 
214
- .fjs-editor-container .fjs-form-container,
215
- .fjs-editor-container .fjs-editor-palette-container,
216
- .fjs-editor-container .fjs-editor-properties-container {
217
+ .fjs-editor-container .fjs-form-container {
217
218
  overflow-y: auto;
218
219
  position: relative;
219
220
  }
220
221
 
222
+ .fjs-editor-container .fjs-render-injector-container {
223
+ width: 0;
224
+ height: 0;
225
+ display: none;
226
+ overflow: hidden;
227
+ }
228
+
221
229
  .fjs-editor-container .fjs-form-container,
222
230
  .fjs-editor-container .fjs-form {
223
231
  display: flex;
@@ -247,8 +255,10 @@
247
255
  background-color: var(--color-children-selected-background);
248
256
  }
249
257
 
250
- .fjs-editor-container .fjs-children .fjs-element:hover {
258
+ .fjs-editor-container .fjs-children .fjs-element:hover,
259
+ .fjs-editor-container .fjs-children .fjs-element:focus-within {
251
260
  border-color: var(--color-children-hover-border);
261
+ outline: none;
252
262
  }
253
263
 
254
264
  .fjs-editor-container .fjs-input:disabled,
@@ -259,6 +269,10 @@
259
269
  pointer-events: none;
260
270
  }
261
271
 
272
+ .fjs-editor-container .fjs-readonly {
273
+ pointer-events: none;
274
+ }
275
+
262
276
  .fjs-editor-container .fjs-drag-container,
263
277
  .fjs-editor-container .fjs-drop-container-vertical {
264
278
  user-select: none;
@@ -415,6 +429,11 @@
415
429
  color: var(--color-context-pad-item-hover-fill);
416
430
  }
417
431
 
432
+ .fjs-editor-container .fjs-context-pad-item:focus-visible {
433
+ outline: 2px solid var(--color-children-selected-border);
434
+ border-radius: 2px;
435
+ }
436
+
418
437
  /**
419
438
  * Palette
420
439
  */
@@ -168,8 +168,11 @@
168
168
  --list-entry-add-entry-label-color: var(--cds-text-inverse, var(--color-white));
169
169
  --list-entry-add-entry-background-color: var(--cds-interactive, var(--color-blue-205-100-50));
170
170
  --list-entry-add-entry-fill-color: var(--cds-icon-inverse, var(--color-white));
171
- --feel-active-color: var(--cds-interactive, var(--color-blue-205-100-35));
171
+ --feel-background-color: var(--cds-field-02, var(--color-grey-225-10-97));
172
+ --feel-active-color: var(--cds-interactive, var(--color-blue-205-100-45));
172
173
  --feel-inactive-color: var(--cds-text-secondary, var(--color-grey-225-10-35));
174
+ --feel-hover-background-color: var(--cds-field-hover-02, var(--color-grey-225-10-90));
175
+ --feel-active-background-color: var(--cds-field-02, var(--color-grey-225-10-97));
173
176
  --feel-indicator-background-color: var(--cds-background-hover, var(--color-grey-225-10-90));
174
177
  }
175
178
 
@@ -189,13 +192,18 @@
189
192
  flex-direction: row;
190
193
  }
191
194
 
192
- .fjs-editor-container .fjs-form-container,
193
- .fjs-editor-container .fjs-editor-palette-container,
194
- .fjs-editor-container .fjs-editor-properties-container {
195
+ .fjs-editor-container .fjs-form-container {
195
196
  overflow-y: auto;
196
197
  position: relative;
197
198
  }
198
199
 
200
+ .fjs-editor-container .fjs-render-injector-container {
201
+ width: 0;
202
+ height: 0;
203
+ display: none;
204
+ overflow: hidden;
205
+ }
206
+
199
207
  .fjs-editor-container .fjs-form-container,
200
208
  .fjs-editor-container .fjs-form {
201
209
  display: flex;
@@ -225,8 +233,10 @@
225
233
  background-color: var(--color-children-selected-background);
226
234
  }
227
235
 
228
- .fjs-editor-container .fjs-children .fjs-element:hover {
236
+ .fjs-editor-container .fjs-children .fjs-element:hover,
237
+ .fjs-editor-container .fjs-children .fjs-element:focus-within {
229
238
  border-color: var(--color-children-hover-border);
239
+ outline: none;
230
240
  }
231
241
 
232
242
  .fjs-editor-container .fjs-input:disabled,
@@ -237,6 +247,10 @@
237
247
  pointer-events: none;
238
248
  }
239
249
 
250
+ .fjs-editor-container .fjs-readonly {
251
+ pointer-events: none;
252
+ }
253
+
240
254
  .fjs-editor-container .fjs-drag-container,
241
255
  .fjs-editor-container .fjs-drop-container-vertical {
242
256
  user-select: none;
@@ -391,6 +405,11 @@
391
405
  color: var(--color-context-pad-item-hover-fill);
392
406
  }
393
407
 
408
+ .fjs-editor-container .fjs-context-pad-item:focus-visible {
409
+ outline: 2px solid var(--color-children-selected-border);
410
+ border-radius: 2px;
411
+ }
412
+
394
413
  /**
395
414
  * Palette
396
415
  */
@@ -782,8 +801,11 @@
782
801
  --dropdown-item-background-color: var(--color-white);
783
802
  --dropdown-item-hover-background-color: var(--color-grey-225-10-95);
784
803
  --dropdown-separator-background-color: var(--color-grey-225-10-75);
785
- --feel-active-color: var(--color-blue-205-100-35);
804
+ --feel-background-color: var(--color-grey-225-10-95);
805
+ --feel-active-color: var(--color-blue-205-100-45);
786
806
  --feel-inactive-color: var(--color-grey-225-10-35);
807
+ --feel-hover-background-color: var(--color-grey-225-10-90);
808
+ --feel-active-background-color: var(--color-grey-225-10-95);
787
809
  --feel-indicator-background-color: var(--color-grey-225-10-90);
788
810
  --text-size-base: 14px;
789
811
  --text-size-small: 13px;
@@ -792,7 +814,9 @@
792
814
  --line-height-condensed: 17px;
793
815
  --font-family: sans-serif;
794
816
  --font-family-monospace: monospace;
795
- display: none;
817
+ display: flex;
818
+ flex-direction: column;
819
+ flex: 1;
796
820
  position: relative;
797
821
  height: 100%;
798
822
  width: 100%;
@@ -814,12 +838,6 @@
814
838
  font-family: var(--font-family);
815
839
  }
816
840
 
817
- .bio-properties-panel.open {
818
- display: flex;
819
- flex-direction: column;
820
- flex: 1;
821
- }
822
-
823
841
  /**
824
842
  * Placeholder (empty, multi select, ...)
825
843
  */
@@ -1194,7 +1212,7 @@ select.bio-properties-panel-input {
1194
1212
  }
1195
1213
 
1196
1214
  .bio-properties-panel-input[type=checkbox]:focus {
1197
- outline: 1px solid var(--input-focus-border-color);
1215
+ outline: 2px solid var(--input-focus-border-color);
1198
1216
  outline-offset: 0;
1199
1217
  }
1200
1218
 
@@ -1264,10 +1282,23 @@ textarea.bio-properties-panel-input {
1264
1282
  align-items: center;
1265
1283
  }
1266
1284
 
1285
+ .bio-properties-panel-toggle-switch.inline {
1286
+ display: flex;
1287
+ flex-direction: row;
1288
+ }
1289
+
1290
+ .bio-properties-panel-toggle-switch.inline .bio-properties-panel-field-wrapper {
1291
+ margin-left: auto;
1292
+ }
1293
+
1267
1294
  .bio-properties-panel-toggle-switch > .bio-properties-panel-label {
1268
1295
  font-size: var(--text-size-base);
1269
1296
  }
1270
1297
 
1298
+ .bio-properties-panel-toggle-switch.inline > .bio-properties-panel-label {
1299
+ font-size: var(--text-size-small);
1300
+ }
1301
+
1271
1302
  .bio-properties-panel-toggle-switch .bio-properties-panel-toggle-switch__label {
1272
1303
  margin: 0;
1273
1304
  margin-left: 6px;
@@ -1280,6 +1311,11 @@ textarea.bio-properties-panel-input {
1280
1311
  height: 16px;
1281
1312
  }
1282
1313
 
1314
+ .bio-properties-panel-toggle-switch .bio-properties-panel-toggle-switch__switcher:focus-within {
1315
+ outline: 2px solid var(--input-focus-border-color);
1316
+ outline-offset: 1px;
1317
+ }
1318
+
1283
1319
  .bio-properties-panel-toggle-switch .bio-properties-panel-toggle-switch__switcher input[type=checkbox] {
1284
1320
  opacity: 0;
1285
1321
  width: 0;
@@ -1288,6 +1324,7 @@ textarea.bio-properties-panel-input {
1288
1324
 
1289
1325
  .bio-properties-panel-toggle-switch .bio-properties-panel-toggle-switch__switcher .bio-properties-panel-toggle-switch__slider {
1290
1326
  position: absolute;
1327
+ cursor: pointer;
1291
1328
  top: 0;
1292
1329
  left: 0;
1293
1330
  right: 0;
@@ -1634,34 +1671,56 @@ textarea.bio-properties-panel-input {
1634
1671
  padding-right: 2em;
1635
1672
  }
1636
1673
 
1674
+ .bio-properties-panel-feel-entry .bio-properties-panel-label {
1675
+ display: flex;
1676
+ }
1677
+
1637
1678
  .bio-properties-panel-feel-icon {
1638
- display: inline-block;
1639
- height: 16px;
1640
- border-radius: 8px;
1679
+ display: inline-flex;
1680
+ height: 22px;
1681
+ width: 22px;
1641
1682
  vertical-align: text-bottom;
1642
1683
  padding: 0;
1643
1684
  margin: 0 3px;
1644
1685
  align-items: center;
1645
1686
  align-self: center;
1687
+ justify-content: center;
1646
1688
  border: none;
1647
1689
  background: none;
1690
+ border-radius: 3px;
1648
1691
  }
1649
1692
 
1650
1693
  .bio-properties-panel-feel-icon.optional {
1651
1694
  cursor: pointer;
1695
+ background: var(--feel-background-color);
1652
1696
  }
1653
1697
 
1654
1698
  .bio-properties-panel-feel-icon svg * {
1655
- color: var(--feel-inactive-color);
1699
+ fill: var(--feel-inactive-color);
1700
+ }
1701
+
1702
+ .bio-properties-panel-feel-icon:hover {
1703
+ background: var(--feel-hover-background-color);
1704
+ }
1705
+
1706
+ .bio-properties-panel-feel-icon.active {
1707
+ background: var(--feel-active-background-color);
1708
+ }
1709
+
1710
+ .bio-properties-panel-feel-icon.active:hover {
1711
+ background: var(--feel-hover-background-color);
1712
+ }
1713
+
1714
+ .bio-properties-panel-feel-icon.required.active {
1715
+ background: none;
1656
1716
  }
1657
1717
 
1658
1718
  .bio-properties-panel-feel-icon.active svg * {
1659
- color: var(--feel-active-color);
1719
+ fill: var(--feel-active-color);
1660
1720
  }
1661
1721
 
1662
- .bio-properties-panel-feel-icon svg {
1663
- width: 16px;
1664
- height: 16px;
1722
+ .bio-properties-panel-feel-icon.required.active svg * {
1723
+ fill: var(--feel-inactive-color);
1665
1724
  }
1666
1725
 
1667
1726
  .bio-properties-panel-feel-editor-container {
@@ -1718,3 +1777,20 @@ textarea.bio-properties-panel-input {
1718
1777
  .bio-properties-panel-feel-container .cm-editor {
1719
1778
  min-height: 100%;
1720
1779
  }
1780
+
1781
+ .bio-properties-panel-feel-checkbox,
1782
+ .bio-properties-panel-feel-toggle-switch {
1783
+ padding-top: 1px;
1784
+ }
1785
+
1786
+ .bio-properties-panel-feel-checkbox .bio-properties-panel-feel-entry:not(.feel-active),
1787
+ .bio-properties-panel-feel-toggle-switch .bio-properties-panel-feel-entry:not(.feel-active) {
1788
+ display: flex;
1789
+ flex-direction: row;
1790
+ align-items: center;
1791
+ }
1792
+
1793
+ .bio-properties-panel-feel-checkbox .bio-properties-panel-feel-entry:not(.feel-active) .bio-properties-panel-feel-container,
1794
+ .bio-properties-panel-feel-toggle-switch .bio-properties-panel-feel-entry:not(.feel-active) .bio-properties-panel-feel-container {
1795
+ margin-left: auto;
1796
+ }