You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* feat(orchestrator): add ActiveMultiSelect widget and replace @material-ui by @mui
Signed-off-by: Marek Libra <marek.libra@gmail.com>
* yarn.lock
* Enable passing complex objects via templates
* Add ClassNameGenerator config for v5 mui
---------
Signed-off-by: Marek Libra <marek.libra@gmail.com>
A smart component based on the [@mui/material/TextField](https://mui.com/material-ui/react-text-field/) keeping look&feel with other RJSF-default fields.
120
120
121
+

122
+
123
+

124
+
121
125
### ActiveTextInput Data fetching
122
126
123
127
When instantiated, it loads (prefetch) the **default** value using a single HTTP call based on the `fetch:*` from the `ui:props`.
A smart component based on the [@mui/material/TextField](https://mui.com/material-ui/react-text-field/) keeping look&feel with other RJSF-default fields with autocompletion.
245
+
246
+
The selected items are represented as chips, the value of the field is an array of strings.
247
+
248
+
Users can only enter values that are provided in the list returned by `fetch:url` and `fetch:response:autocomplete`.
249
+
250
+

251
+
252
+

253
+
254
+

255
+
256
+

257
+
258
+
### ActiveMultiSelect Data Fetching and validation
259
+
260
+
Retrieving a list of autocomplete items (array of strings for autocompletion) and validating the field operates similarly to the `ActiveTextInput` component.
261
+
262
+
Validation is similar to the `ActiveTextInput` as well, just the value being passed is an array of strings.
263
+
264
+
### ActiveMultiSelect widget ui:props
265
+
266
+
The widget supports following `ui:props`:
267
+
268
+
- fetch:url
269
+
- fetch:headers
270
+
- fetch:method
271
+
- fetch:body
272
+
- fetch:retrigger
273
+
- fetch:response:autocomplete
274
+
- validate:url
275
+
- validate:method
276
+
- validate:headers
277
+
- validate:body
278
+
- validate:retrigger
279
+
280
+
[Check more details](#content-of-uiprops)
281
+
232
282
## ActiveText widget
233
283
234
284
Referenced as: `"ui:widget": "ActiveText"`.
@@ -390,19 +440,19 @@ The widgets manage waiting for asynchronous promises and chains of functions to
390
440
When exposing additional keys in the future, we will consider not only the [frontend-visibility](https://backstage.io/docs/conf/defining/#visibility) but security as well, since a malicious workflow can retrieve configuration of plugins or Backstage, eventually with their secrets.
391
441
That’s the reason for listing the exposed keys explicitly.
392
442
393
-
| Key Family | Key | Value of at runtime\<br\>(skipping promises for simplicity) |
| current |\[whatever property name\]| Value of other field/property of the form. The properties build hierarchy separated by `.` (dots) matching the structure of fields/objects defined by the data input schema. |
| microsoftAuthApi gitlabAuthApi googleAuthApi | openIdToken | OpenIdConnectApi.getIdToken(undefined /\* defaults \*/) Mind this is not available for Github and Atlassian |
| current |\[whatever property name\]| Value of other field/property of the form. The properties build hierarchy separated by `.` (dots) matching the structure of fields/objects defined by the data input schema. Arrays or branches of a complex object structure can be passed as well, data are encoded into JSON in that case. |
| microsoftAuthApi gitlabAuthApi googleAuthApi | openIdToken |OpenIdConnectApi.getIdToken(undefined /\* defaults \*/) Mind this is not available for Github and Atlassian|
0 commit comments