@bpmn-io/form-js-viewer 0.8.0 → 0.9.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 (49) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +158 -158
  3. package/dist/assets/form-js.css +339 -339
  4. package/dist/index.cjs +78 -78
  5. package/dist/index.cjs.map +1 -1
  6. package/dist/index.es.js +78 -78
  7. package/dist/index.es.js.map +1 -1
  8. package/dist/types/Form.d.ts +136 -136
  9. package/dist/types/core/EventBus.d.ts +1 -1
  10. package/dist/types/core/FormFieldRegistry.d.ts +17 -17
  11. package/dist/types/core/Validator.d.ts +7 -7
  12. package/dist/types/core/index.d.ts +16 -16
  13. package/dist/types/import/Importer.d.ts +43 -43
  14. package/dist/types/import/index.d.ts +5 -5
  15. package/dist/types/index.d.ts +18 -18
  16. package/dist/types/render/FormFields.d.ts +5 -5
  17. package/dist/types/render/Renderer.d.ts +23 -23
  18. package/dist/types/render/components/Description.d.ts +1 -1
  19. package/dist/types/render/components/Errors.d.ts +1 -1
  20. package/dist/types/render/components/FormComponent.d.ts +1 -1
  21. package/dist/types/render/components/FormField.d.ts +1 -1
  22. package/dist/types/render/components/Label.d.ts +1 -1
  23. package/dist/types/render/components/PoweredBy.d.ts +1 -1
  24. package/dist/types/render/components/Sanitizer.d.ts +7 -7
  25. package/dist/types/render/components/Util.d.ts +6 -6
  26. package/dist/types/render/components/form-fields/Button.d.ts +11 -11
  27. package/dist/types/render/components/form-fields/Checkbox.d.ts +13 -13
  28. package/dist/types/render/components/form-fields/Checklist.d.ts +12 -12
  29. package/dist/types/render/components/form-fields/Default.d.ts +9 -9
  30. package/dist/types/render/components/form-fields/Number.d.ts +13 -13
  31. package/dist/types/render/components/form-fields/Radio.d.ts +12 -12
  32. package/dist/types/render/components/form-fields/Select.d.ts +12 -12
  33. package/dist/types/render/components/form-fields/Taglist.d.ts +12 -12
  34. package/dist/types/render/components/form-fields/Text.d.ts +10 -10
  35. package/dist/types/render/components/form-fields/Textfield.d.ts +13 -13
  36. package/dist/types/render/components/form-fields/parts/DropdownList.d.ts +1 -1
  37. package/dist/types/render/components/index.d.ts +13 -13
  38. package/dist/types/render/context/FormContext.d.ts +12 -12
  39. package/dist/types/render/context/FormRenderContext.d.ts +6 -6
  40. package/dist/types/render/context/index.d.ts +2 -2
  41. package/dist/types/render/hooks/useKeyDownAction.d.ts +1 -1
  42. package/dist/types/render/hooks/useService.d.ts +1 -1
  43. package/dist/types/render/hooks/useValuesAsync.d.ts +28 -28
  44. package/dist/types/render/index.d.ts +11 -11
  45. package/dist/types/types.d.ts +35 -35
  46. package/dist/types/util/form.d.ts +6 -6
  47. package/dist/types/util/index.d.ts +24 -24
  48. package/dist/types/util/injector.d.ts +2 -2
  49. package/package.json +2 -2
@@ -1,339 +1,339 @@
1
- /**
2
- * Theming
3
- */
4
- .fjs-container {
5
- --color-grey-225-10-15: hsl(225, 10%, 15%);
6
- --color-grey-225-10-35: hsl(225, 10%, 35%);
7
- --color-grey-225-10-55: hsl(225, 10%, 55%);
8
- --color-grey-225-10-75: hsl(225, 10%, 75%);
9
- --color-grey-225-10-80: hsl(225, 10%, 80%);
10
- --color-grey-225-10-85: hsl(225, 10%, 85%);
11
- --color-grey-225-10-90: hsl(225, 10%, 90%);
12
- --color-grey-225-10-95: hsl(225, 10%, 95%);
13
- --color-grey-225-10-97: hsl(225, 10%, 97%);
14
-
15
- --color-blue-205-100-45: hsl(205, 100%, 45%);
16
- --color-blue-205-100-50: hsl(205, 100%, 50%);
17
- --color-blue-205-100-80: hsl(205, 100%, 80%);
18
- --color-blue-205-100-95: hsl(205, 100%, 95%);
19
-
20
- --color-green-150-86-44: hsl(150, 86%, 44%);
21
-
22
- --color-red-360-100-40: hsl(360, 100%, 40%);
23
- --color-red-360-100-45: hsl(360, 100%, 45%);
24
- --color-red-360-100-92: hsl(360, 100%, 92%);
25
- --color-red-360-100-97: hsl(360, 100%, 97%);
26
-
27
- --color-white: hsl(0, 0%, 100%);
28
- --color-black: hsl(0, 0%, 0%);
29
-
30
- --color-background: var(--color-white);
31
- --color-background-disabled: var(--color-grey-225-10-95);
32
- --color-text: var(--color-grey-225-10-15);
33
- --color-text-light: var(--color-grey-225-10-35);
34
- --color-text-lighter: var(--color-grey-225-10-55);
35
- --color-text-inverted: var(--color-white);
36
- --color-borders: var(--color-grey-225-10-55);
37
- --color-borders-disabled: var(--color-grey-225-10-75);
38
- --color-warning: var(--color-red-360-100-45);
39
- --color-accent: var(--color-blue-205-100-45);
40
- --color-accent-dark: var(--color-blue-205-100-45);
41
-
42
- --font-family: 'IBM Plex Sans', sans-serif;
43
-
44
- height: 100%;
45
- }
46
-
47
- /**
48
- * Layout styles
49
- */
50
- .fjs-container .fjs-vertical-layout {
51
- display: flex;
52
- flex-direction: column;
53
- }
54
-
55
- .fjs-container .fjs-columns {
56
- display: flex;
57
- flex-direction: row;
58
- }
59
-
60
- .fjs-container .fjs-column {
61
- flex-grow: 1;
62
- }
63
-
64
- .fjs-container img {
65
- max-width: 100%;
66
- }
67
-
68
- /**
69
- * Visual styles
70
- */
71
- .fjs-container .fjs-form {
72
- font-family: var(--font-family);
73
- font-size: 14px;
74
- line-height: 1.3;
75
- font-weight: 400;
76
-
77
- color: var(--color-text);
78
- background-color: var(--color-background);
79
-
80
- position: relative;
81
- }
82
-
83
- .fjs-container .fjs-form * {
84
- box-sizing: border-box;
85
- }
86
-
87
- .fjs-container .fjs-form-field {
88
- margin: 16px;
89
- }
90
-
91
- .fjs-container .fjs-form-field-placeholder {
92
- color: var(--color-text-light);
93
- }
94
-
95
- .fjs-container .fjs-input,
96
- .fjs-container .fjs-textarea,
97
- .fjs-container .fjs-select {
98
- border-color: var(--color-borders);
99
- background-color: var(--color-background);
100
- }
101
- .fjs-container .fjs-input::placeholder,
102
- .fjs-container .fjs-textarea::placeholder,
103
- .fjs-container .fjs-select > option:disabled,
104
- .fjs-container .fjs-select [disabled] {
105
- font-style: italic;
106
- letter-spacing: 0.25px;
107
- color: var(--color-text-lighter);
108
- }
109
-
110
- .fjs-container .fjs-form-field-label {
111
- display: flex;
112
- align-items: center;
113
- }
114
-
115
- .fjs-container .fjs-form-field-description {
116
- display: block;
117
- color: var(--color-text-lighter);
118
- }
119
-
120
- .fjs-container .fjs-form-field-label,
121
- .fjs-container .fjs-form-field-description {
122
- margin: 4px 0;
123
- }
124
-
125
- .fjs-container .fjs-form-field.required label::after,
126
- .fjs-container .fjs-form-field.required .group-title::after {
127
- content: '*';
128
- }
129
-
130
- .fjs-container .fjs-checkbox.group.required label::after,
131
- .fjs-container .fjs-radio.required label::after {
132
- display: none;
133
- }
134
-
135
- .fjs-container .fjs-input[type='text'],
136
- .fjs-container .fjs-input[type='number'],
137
- .fjs-container .fjs-button[type='submit'],
138
- .fjs-container .fjs-button[type='reset'],
139
- .fjs-container .fjs-textarea,
140
- .fjs-container .fjs-select {
141
- display: block;
142
- width: 100%;
143
- padding: 8px;
144
- margin: 4px 0;
145
- border-width: 1px;
146
- border-style: solid;
147
- border-radius: 3px;
148
- }
149
-
150
- .fjs-container .fjs-textarea {
151
- height: 90px;
152
- }
153
-
154
- .fjs-container .fjs-radio {
155
- display: flex;
156
- flex-direction: column;
157
- }
158
-
159
- .fjs-container .fjs-input[type='checkbox'],
160
- .fjs-container .fjs-input[type='radio'] {
161
- margin: 6px 10px 6px 4px;
162
- }
163
-
164
- .fjs-container .fjs-button[type='submit'] {
165
- color: var(--color-text-inverted);
166
- background-color: var(--color-accent);
167
- border-color: var(--color-accent);
168
- }
169
-
170
- .fjs-container .fjs-button[type='reset'] {
171
- color: var(--color-text);
172
- background-color: transparent;
173
- border-color: var(--color-borders);
174
- }
175
-
176
- .fjs-container .fjs-button[type='submit'],
177
- .fjs-container .fjs-button[type='reset'] {
178
- min-width: 100px;
179
- width: auto;
180
- }
181
-
182
- .fjs-container .fjs-button[type='submit'] {
183
- font-weight: 600;
184
- }
185
-
186
- .fjs-container .fjs-input[type='text']:focus,
187
- .fjs-container .fjs-input[type='number']:focus,
188
- .fjs-container .fjs-button[type='submit']:focus,
189
- .fjs-container .fjs-button[type='reset']:focus,
190
- .fjs-container .fjs-textarea:focus,
191
- .fjs-container .fjs-select:focus {
192
- outline: var(--color-borders) solid 1px;
193
- }
194
-
195
- .fjs-container .fjs-button[type='submit']:focus {
196
- border-color: var(--color-accent-dark);
197
- }
198
-
199
- .fjs-container .fjs-input:disabled,
200
- .fjs-container .fjs-textarea:disabled,
201
- .fjs-container .fjs-select:disabled {
202
- background-color: var(--color-background-disabled);
203
- border-color: var(--color-borders-disabled);
204
- }
205
-
206
- .fjs-container .fjs-button[type='submit']:disabled,
207
- .fjs-container .fjs-button[type='reset']:disabled {
208
- color: var(--text-light);
209
- background-color: var(--color-background-disabled);
210
- border-color: var(--color-borders-disabled);
211
- }
212
-
213
- .fjs-container .fjs-form-field.fjs-has-errors .fjs-input,
214
- .fjs-container .fjs-form-field.fjs-has-errors .fjs-select,
215
- .fjs-container .fjs-form-field.fjs-has-errors .fjs-textarea {
216
- border-color: var(--color-warning);
217
- }
218
-
219
- .fjs-container .fjs-form-field-error {
220
- color: var(--color-warning);
221
- }
222
-
223
- .fjs-container .fjs-form-field-error > ul {
224
- list-style-type: none;
225
- margin: 0;
226
- padding: 0;
227
- }
228
-
229
- .fjs-container .fjs-form-field-error > ul > li {
230
- list-style-type: none;
231
- }
232
-
233
- .fjs-container .fjs-form-field-text a {
234
- color: var(--color-blue-205-100-45);
235
- }
236
-
237
- .fjs-container .fjs-taglist-anchor {
238
- position: relative;
239
- }
240
-
241
- .fjs-container .fjs-taglist {
242
- display: flex;
243
- flex-wrap: wrap;
244
- gap: 5px;
245
- border: var(--color-borders) solid 1px;
246
- border-radius: 3px;
247
- padding: 5px;
248
- background-color: var(--color-background);
249
- }
250
-
251
- .fjs-container .fjs-taglist:focus-within {
252
- outline: var(--color-borders) solid 1px;
253
- }
254
-
255
- .fjs-container .fjs-taglist.disabled {
256
- border: var(--color-borders-disabled) solid 1px;
257
- background-color: var(--color-background-disabled);
258
- }
259
-
260
- .fjs-container .fjs-taglist .fjs-taglist-tag {
261
- display: flex;
262
- overflow: hidden;
263
- user-select: none;
264
- border-radius: 2px;
265
- background-color: var(--color-grey-225-10-90);
266
- }
267
-
268
- .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-label {
269
- padding: 2px 6px 2px 8px;
270
- }
271
-
272
- .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-remove {
273
- overflow: clip;
274
- width: 22px;
275
- height: 22px;
276
- text-align: center;
277
- line-height: 28px;
278
- background-color: var(--color-grey-225-10-80);
279
- }
280
-
281
- .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-remove svg {
282
- opacity: 0.6;
283
- }
284
-
285
- .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-remove:hover {
286
- background-color: var(--color-grey-225-10-75);
287
- }
288
-
289
- .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-remove:hover > svg {
290
- opacity: 1;
291
- }
292
-
293
- .fjs-container .fjs-taglist .fjs-taglist-input {
294
- border: none;
295
- background-color: transparent;
296
- min-width: 100px;
297
- height: 22px;
298
- flex-grow: 1;
299
- }
300
-
301
- .fjs-container .fjs-taglist .fjs-taglist-input:focus-visible {
302
- outline: none;
303
- }
304
-
305
- .fjs-container .fjs-taglist .fjs-taglist-dropdown-anchor {
306
- position: relative;
307
- }
308
-
309
- .fjs-container .fjs-dropdownlist {
310
- position: absolute;
311
- user-select: none;
312
- overflow-y: auto;
313
- scroll-behavior: smooth;
314
- width: 100%;
315
- border-radius: 3px;
316
- margin-top: 3px;
317
- box-shadow: 0px 0px 5px var(--color-grey-225-10-85);
318
- background-color: var(--color-white);
319
- }
320
-
321
- .fjs-container .fjs-dropdownlist .fjs-dropdownlist-item {
322
- padding: 6px 8px;
323
- border-bottom: 1px solid var(--color-grey-225-10-90);
324
- color: var(--color-grey-225-10-35);
325
- }
326
-
327
- .fjs-container .fjs-dropdownlist .fjs-dropdownlist-item:last-child {
328
- border-bottom: none;
329
- }
330
-
331
- .fjs-container .fjs-dropdownlist .fjs-dropdownlist-item.focused {
332
- background-color: var(--color-grey-225-10-90);
333
- color: var(--color-black);
334
- }
335
-
336
- .fjs-container .fjs-dropdownlist .fjs-dropdownlist-empty {
337
- padding: 6px 8px;
338
- color: var(--color-text-lighter);
339
- }
1
+ /**
2
+ * Theming
3
+ */
4
+ .fjs-container {
5
+ --color-grey-225-10-15: hsl(225, 10%, 15%);
6
+ --color-grey-225-10-35: hsl(225, 10%, 35%);
7
+ --color-grey-225-10-55: hsl(225, 10%, 55%);
8
+ --color-grey-225-10-75: hsl(225, 10%, 75%);
9
+ --color-grey-225-10-80: hsl(225, 10%, 80%);
10
+ --color-grey-225-10-85: hsl(225, 10%, 85%);
11
+ --color-grey-225-10-90: hsl(225, 10%, 90%);
12
+ --color-grey-225-10-95: hsl(225, 10%, 95%);
13
+ --color-grey-225-10-97: hsl(225, 10%, 97%);
14
+
15
+ --color-blue-205-100-45: hsl(205, 100%, 45%);
16
+ --color-blue-205-100-50: hsl(205, 100%, 50%);
17
+ --color-blue-205-100-80: hsl(205, 100%, 80%);
18
+ --color-blue-205-100-95: hsl(205, 100%, 95%);
19
+
20
+ --color-green-150-86-44: hsl(150, 86%, 44%);
21
+
22
+ --color-red-360-100-40: hsl(360, 100%, 40%);
23
+ --color-red-360-100-45: hsl(360, 100%, 45%);
24
+ --color-red-360-100-92: hsl(360, 100%, 92%);
25
+ --color-red-360-100-97: hsl(360, 100%, 97%);
26
+
27
+ --color-white: hsl(0, 0%, 100%);
28
+ --color-black: hsl(0, 0%, 0%);
29
+
30
+ --color-background: var(--color-white);
31
+ --color-background-disabled: var(--color-grey-225-10-95);
32
+ --color-text: var(--color-grey-225-10-15);
33
+ --color-text-light: var(--color-grey-225-10-35);
34
+ --color-text-lighter: var(--color-grey-225-10-55);
35
+ --color-text-inverted: var(--color-white);
36
+ --color-borders: var(--color-grey-225-10-55);
37
+ --color-borders-disabled: var(--color-grey-225-10-75);
38
+ --color-warning: var(--color-red-360-100-45);
39
+ --color-accent: var(--color-blue-205-100-45);
40
+ --color-accent-dark: var(--color-blue-205-100-45);
41
+
42
+ --font-family: 'IBM Plex Sans', sans-serif;
43
+
44
+ height: 100%;
45
+ }
46
+
47
+ /**
48
+ * Layout styles
49
+ */
50
+ .fjs-container .fjs-vertical-layout {
51
+ display: flex;
52
+ flex-direction: column;
53
+ }
54
+
55
+ .fjs-container .fjs-columns {
56
+ display: flex;
57
+ flex-direction: row;
58
+ }
59
+
60
+ .fjs-container .fjs-column {
61
+ flex-grow: 1;
62
+ }
63
+
64
+ .fjs-container img {
65
+ max-width: 100%;
66
+ }
67
+
68
+ /**
69
+ * Visual styles
70
+ */
71
+ .fjs-container .fjs-form {
72
+ font-family: var(--font-family);
73
+ font-size: 14px;
74
+ line-height: 1.3;
75
+ font-weight: 400;
76
+
77
+ color: var(--color-text);
78
+ background-color: var(--color-background);
79
+
80
+ position: relative;
81
+ }
82
+
83
+ .fjs-container .fjs-form * {
84
+ box-sizing: border-box;
85
+ }
86
+
87
+ .fjs-container .fjs-form-field {
88
+ margin: 16px;
89
+ }
90
+
91
+ .fjs-container .fjs-form-field-placeholder {
92
+ color: var(--color-text-light);
93
+ }
94
+
95
+ .fjs-container .fjs-input,
96
+ .fjs-container .fjs-textarea,
97
+ .fjs-container .fjs-select {
98
+ border-color: var(--color-borders);
99
+ background-color: var(--color-background);
100
+ }
101
+ .fjs-container .fjs-input::placeholder,
102
+ .fjs-container .fjs-textarea::placeholder,
103
+ .fjs-container .fjs-select > option:disabled,
104
+ .fjs-container .fjs-select [disabled] {
105
+ font-style: italic;
106
+ letter-spacing: 0.25px;
107
+ color: var(--color-text-lighter);
108
+ }
109
+
110
+ .fjs-container .fjs-form-field-label {
111
+ display: flex;
112
+ align-items: center;
113
+ }
114
+
115
+ .fjs-container .fjs-form-field-description {
116
+ display: block;
117
+ color: var(--color-text-lighter);
118
+ }
119
+
120
+ .fjs-container .fjs-form-field-label,
121
+ .fjs-container .fjs-form-field-description {
122
+ margin: 4px 0;
123
+ }
124
+
125
+ .fjs-container .fjs-form-field.required label::after,
126
+ .fjs-container .fjs-form-field.required .group-title::after {
127
+ content: '*';
128
+ }
129
+
130
+ .fjs-container .fjs-checkbox.group.required label::after,
131
+ .fjs-container .fjs-radio.required label::after {
132
+ display: none;
133
+ }
134
+
135
+ .fjs-container .fjs-input[type='text'],
136
+ .fjs-container .fjs-input[type='number'],
137
+ .fjs-container .fjs-button[type='submit'],
138
+ .fjs-container .fjs-button[type='reset'],
139
+ .fjs-container .fjs-textarea,
140
+ .fjs-container .fjs-select {
141
+ display: block;
142
+ width: 100%;
143
+ padding: 8px;
144
+ margin: 4px 0;
145
+ border-width: 1px;
146
+ border-style: solid;
147
+ border-radius: 3px;
148
+ }
149
+
150
+ .fjs-container .fjs-textarea {
151
+ height: 90px;
152
+ }
153
+
154
+ .fjs-container .fjs-radio {
155
+ display: flex;
156
+ flex-direction: column;
157
+ }
158
+
159
+ .fjs-container .fjs-input[type='checkbox'],
160
+ .fjs-container .fjs-input[type='radio'] {
161
+ margin: 6px 10px 6px 4px;
162
+ }
163
+
164
+ .fjs-container .fjs-button[type='submit'] {
165
+ color: var(--color-text-inverted);
166
+ background-color: var(--color-accent);
167
+ border-color: var(--color-accent);
168
+ }
169
+
170
+ .fjs-container .fjs-button[type='reset'] {
171
+ color: var(--color-text);
172
+ background-color: transparent;
173
+ border-color: var(--color-borders);
174
+ }
175
+
176
+ .fjs-container .fjs-button[type='submit'],
177
+ .fjs-container .fjs-button[type='reset'] {
178
+ min-width: 100px;
179
+ width: auto;
180
+ }
181
+
182
+ .fjs-container .fjs-button[type='submit'] {
183
+ font-weight: 600;
184
+ }
185
+
186
+ .fjs-container .fjs-input[type='text']:focus,
187
+ .fjs-container .fjs-input[type='number']:focus,
188
+ .fjs-container .fjs-button[type='submit']:focus,
189
+ .fjs-container .fjs-button[type='reset']:focus,
190
+ .fjs-container .fjs-textarea:focus,
191
+ .fjs-container .fjs-select:focus {
192
+ outline: var(--color-borders) solid 1px;
193
+ }
194
+
195
+ .fjs-container .fjs-button[type='submit']:focus {
196
+ border-color: var(--color-accent-dark);
197
+ }
198
+
199
+ .fjs-container .fjs-input:disabled,
200
+ .fjs-container .fjs-textarea:disabled,
201
+ .fjs-container .fjs-select:disabled {
202
+ background-color: var(--color-background-disabled);
203
+ border-color: var(--color-borders-disabled);
204
+ }
205
+
206
+ .fjs-container .fjs-button[type='submit']:disabled,
207
+ .fjs-container .fjs-button[type='reset']:disabled {
208
+ color: var(--text-light);
209
+ background-color: var(--color-background-disabled);
210
+ border-color: var(--color-borders-disabled);
211
+ }
212
+
213
+ .fjs-container .fjs-form-field.fjs-has-errors .fjs-input,
214
+ .fjs-container .fjs-form-field.fjs-has-errors .fjs-select,
215
+ .fjs-container .fjs-form-field.fjs-has-errors .fjs-textarea {
216
+ border-color: var(--color-warning);
217
+ }
218
+
219
+ .fjs-container .fjs-form-field-error {
220
+ color: var(--color-warning);
221
+ }
222
+
223
+ .fjs-container .fjs-form-field-error > ul {
224
+ list-style-type: none;
225
+ margin: 0;
226
+ padding: 0;
227
+ }
228
+
229
+ .fjs-container .fjs-form-field-error > ul > li {
230
+ list-style-type: none;
231
+ }
232
+
233
+ .fjs-container .fjs-form-field-text a {
234
+ color: var(--color-blue-205-100-45);
235
+ }
236
+
237
+ .fjs-container .fjs-taglist-anchor {
238
+ position: relative;
239
+ }
240
+
241
+ .fjs-container .fjs-taglist {
242
+ display: flex;
243
+ flex-wrap: wrap;
244
+ gap: 5px;
245
+ border: var(--color-borders) solid 1px;
246
+ border-radius: 3px;
247
+ padding: 5px;
248
+ background-color: var(--color-background);
249
+ }
250
+
251
+ .fjs-container .fjs-taglist:focus-within {
252
+ outline: var(--color-borders) solid 1px;
253
+ }
254
+
255
+ .fjs-container .fjs-taglist.disabled {
256
+ border: var(--color-borders-disabled) solid 1px;
257
+ background-color: var(--color-background-disabled);
258
+ }
259
+
260
+ .fjs-container .fjs-taglist .fjs-taglist-tag {
261
+ display: flex;
262
+ overflow: hidden;
263
+ user-select: none;
264
+ border-radius: 2px;
265
+ background-color: var(--color-grey-225-10-90);
266
+ }
267
+
268
+ .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-label {
269
+ padding: 2px 6px 2px 8px;
270
+ }
271
+
272
+ .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-remove {
273
+ overflow: clip;
274
+ width: 22px;
275
+ height: 22px;
276
+ text-align: center;
277
+ line-height: 28px;
278
+ background-color: var(--color-grey-225-10-80);
279
+ }
280
+
281
+ .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-remove svg {
282
+ opacity: 0.6;
283
+ }
284
+
285
+ .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-remove:hover {
286
+ background-color: var(--color-grey-225-10-75);
287
+ }
288
+
289
+ .fjs-container .fjs-taglist .fjs-taglist-tag .fjs-taglist-tag-remove:hover > svg {
290
+ opacity: 1;
291
+ }
292
+
293
+ .fjs-container .fjs-taglist .fjs-taglist-input {
294
+ border: none;
295
+ background-color: transparent;
296
+ min-width: 100px;
297
+ height: 22px;
298
+ flex-grow: 1;
299
+ }
300
+
301
+ .fjs-container .fjs-taglist .fjs-taglist-input:focus-visible {
302
+ outline: none;
303
+ }
304
+
305
+ .fjs-container .fjs-taglist .fjs-taglist-dropdown-anchor {
306
+ position: relative;
307
+ }
308
+
309
+ .fjs-container .fjs-dropdownlist {
310
+ position: absolute;
311
+ user-select: none;
312
+ overflow-y: auto;
313
+ scroll-behavior: smooth;
314
+ width: 100%;
315
+ border-radius: 3px;
316
+ margin-top: 3px;
317
+ box-shadow: 0px 0px 5px var(--color-grey-225-10-85);
318
+ background-color: var(--color-white);
319
+ }
320
+
321
+ .fjs-container .fjs-dropdownlist .fjs-dropdownlist-item {
322
+ padding: 6px 8px;
323
+ border-bottom: 1px solid var(--color-grey-225-10-90);
324
+ color: var(--color-grey-225-10-35);
325
+ }
326
+
327
+ .fjs-container .fjs-dropdownlist .fjs-dropdownlist-item:last-child {
328
+ border-bottom: none;
329
+ }
330
+
331
+ .fjs-container .fjs-dropdownlist .fjs-dropdownlist-item.focused {
332
+ background-color: var(--color-grey-225-10-90);
333
+ color: var(--color-black);
334
+ }
335
+
336
+ .fjs-container .fjs-dropdownlist .fjs-dropdownlist-empty {
337
+ padding: 6px 8px;
338
+ color: var(--color-text-lighter);
339
+ }