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
Copy file name to clipboardExpand all lines: workspaces/orchestrator/docs/orchestratorFormWidgets.md
+24Lines changed: 24 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -216,6 +216,10 @@ The widget supports following `ui:props`:
216
216
- fetch:method
217
217
- fetch:body
218
218
- fetch:retrigger
219
+
- fetch:retry:maxAttempts
220
+
- fetch:retry:delay
221
+
- fetch:retry:backoff
222
+
- fetch:retry:statusCodes
219
223
- fetch:error:ignoreUnready
220
224
- fetch:error:silent
221
225
- fetch:response:value
@@ -301,6 +305,10 @@ The widget supports following `ui:props`:
301
305
- fetch:method
302
306
- fetch:body
303
307
- fetch:retrigger
308
+
- fetch:retry:maxAttempts
309
+
- fetch:retry:delay
310
+
- fetch:retry:backoff
311
+
- fetch:retry:statusCodes
304
312
- fetch:error:ignoreUnready
305
313
- fetch:error:silent
306
314
- fetch:skipInitialValue
@@ -349,6 +357,10 @@ The widget supports following `ui:props`:
349
357
- fetch:method
350
358
- fetch:body
351
359
- fetch:retrigger
360
+
- fetch:retry:maxAttempts
361
+
- fetch:retry:delay
362
+
- fetch:retry:backoff
363
+
- fetch:retry:statusCodes
352
364
- fetch:error:ignoreUnready
353
365
- fetch:error:silent
354
366
- fetch:skipInitialValue
@@ -400,6 +412,10 @@ The widget supports following `ui:props`:
400
412
- fetch:method
401
413
- fetch:body
402
414
- fetch:retrigger
415
+
- fetch:retry:maxAttempts
416
+
- fetch:retry:delay
417
+
- fetch:retry:backoff
418
+
- fetch:retry:statusCodes
403
419
- fetch:error:ignoreUnready
404
420
- fetch:error:silent
405
421
- fetch:skipInitialValue
@@ -522,6 +538,10 @@ The widget supports the following `ui:props` (for detailed information on each,
522
538
-`fetch:body`: HTTP body for the fetch request
523
539
-`fetch:retrigger`: Array of field paths that trigger a refetch when their values change
524
540
-`fetch:clearOnRetrigger`: Clears the field value when retrigger dependencies change
541
+
-`fetch:retry:maxAttempts`: Enables retry logic for the fetch call
542
+
-`fetch:retry:delay`: Initial delay (ms) before the first retry
543
+
-`fetch:retry:backoff`: Backoff multiplier applied to the delay
544
+
-`fetch:retry:statusCodes`: Optional list of status codes to retry
525
545
526
546
## Content of `ui:props`
527
547
@@ -542,6 +562,10 @@ Various selectors (like `fetch:response:*`) are processed by the [jsonata](https
542
562
| fetch:body| An object representing the body of an HTTP POST request. Not used with the GET method. Property value can be a string template or an array of strings. templates. |`{“foo”: “bar $${{identityApi.token}}”, "myArray": ["constant", "$${{current.solutionName}}"]}`|
543
563
| fetch:retrigger| An array of keys/key families as described in the Backstage API Exposed Parts. If the value referenced by any key from this list is changed, the fetch is triggered. |`["current.solutionName", "identityApi.profileName"]`|
544
564
| fetch:clearOnRetrigger| When set to `true`, clears the field value as soon as any `fetch:retrigger` dependency changes, before the fetch completes. Useful to avoid stale values while refetching. |`true`, `false` (default: `false`) |
565
+
| fetch:retry:maxAttempts| Enables retry logic for the widget fetch. The value is the maximum number of retries after the initial failure. If not set or `0`, retries are disabled. |`3` (retries) |
566
+
| fetch:retry:delay| Initial delay in milliseconds before the first retry. Combined with `fetch:retry:backoff` for exponential backoff. |`1000` (ms) |
567
+
| fetch:retry:backoff| Multiplier applied to the delay for each subsequent retry. Use `2` for exponential backoff, or `1` for fixed delay. |`2`|
568
+
| fetch:retry:statusCodes| Optional list of HTTP status codes that should be retried. If omitted, any non-OK response is eligible for retry. |`[408, 429, 500, 502, 503, 504]`|
545
569
| fetch:error:ignoreUnready| When set to `true`, suppresses fetch error display until all `fetch:retrigger` dependencies have non-empty values. This is useful when fetch depends on other fields that are not filled yet, preventing expected errors from being displayed during initial load. |`true`, `false` (default: `false`) |
546
570
| fetch:error:silent| When set to `true`, suppresses fetch error display when the fetch request returns a non-OK status (4xx/5xx). Use this when you want to handle error states via conditional UI instead of showing the widget error. |`true`, `false` (default: `false`) |
547
571
| fetch:skipInitialValue| When set to `true`, prevents applying the initial value from `fetch:response:value`, keeping the field empty until the user selects or types a value. |`true`, `false` (default: `false`) |
0 commit comments