@wise/dynamic-flow-client 3.4.0-experimental-ed080a1 → 3.4.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 (188) hide show
  1. package/build/i18n/de.json +2 -1
  2. package/build/i18n/en.json +1 -0
  3. package/build/i18n/es.json +1 -0
  4. package/build/i18n/fr.json +1 -0
  5. package/build/i18n/hu.json +1 -0
  6. package/build/i18n/id.json +1 -0
  7. package/build/i18n/it.json +1 -0
  8. package/build/i18n/ja.json +1 -0
  9. package/build/i18n/pl.json +1 -0
  10. package/build/i18n/pt.json +1 -0
  11. package/build/i18n/ro.json +1 -0
  12. package/build/i18n/ru.json +1 -0
  13. package/build/i18n/th.json +1 -0
  14. package/build/i18n/tr.json +1 -0
  15. package/build/i18n/zh_CN.json +1 -0
  16. package/build/i18n/zh_HK.json +1 -0
  17. package/build/main.js +1116 -966
  18. package/build/main.min.js +1 -1
  19. package/build/main.mjs +945 -795
  20. package/build/types/common/messages/multi-select.messages.d.ts +8 -0
  21. package/build/types/legacy/common/utils/schema-utils.d.ts +4 -3
  22. package/build/types/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/ArrayListSchema.d.ts +6 -6
  23. package/build/types/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multiSelectSchema/MultiSelectSchema.d.ts +9 -0
  24. package/build/types/revamp/domain/components/MultiUploadInputComponent.d.ts +1 -1
  25. package/package.json +3 -3
  26. package/build/common/httpClientContext/HttpClientContext.js +0 -35
  27. package/build/common/httpClientContext/index.js +0 -1
  28. package/build/common/makeHttpClient/index.js +0 -1
  29. package/build/common/makeHttpClient/makeHttpClient.js +0 -34
  30. package/build/common/messages/generic-error.messages.js +0 -18
  31. package/build/common/messages/help.messages.js +0 -8
  32. package/build/common/messages/multi-file-upload.messages.js +0 -18
  33. package/build/common/messages/paragraph.messages.js +0 -13
  34. package/build/common/messages/repeatable.messages.js +0 -23
  35. package/build/common/messages/validation.array.messages.js +0 -13
  36. package/build/common/messages/validation.messages.js +0 -53
  37. package/build/common/utils/api-utils.js +0 -4
  38. package/build/legacy/common/constants/DateMode.js +0 -4
  39. package/build/legacy/common/constants/FeatureName.js +0 -4
  40. package/build/legacy/common/constants/FormControlType.js +0 -21
  41. package/build/legacy/common/constants/MonthFormat.js +0 -4
  42. package/build/legacy/common/constants/Size.js +0 -7
  43. package/build/legacy/common/constants/index.js +0 -4
  44. package/build/legacy/common/contexts/dynamicFlowContexts/DynamicFlowContexts.js +0 -36
  45. package/build/legacy/common/contexts/dynamicFlowContexts/usePendingPromiseCounter.js +0 -13
  46. package/build/legacy/common/contexts/eventsContext/EventsContext.js +0 -38
  47. package/build/legacy/common/contexts/featureContext/FeatureContext.js +0 -22
  48. package/build/legacy/common/contexts/index.js +0 -3
  49. package/build/legacy/common/contexts/logContext/LogContext.js +0 -44
  50. package/build/legacy/common/hooks/index.js +0 -7
  51. package/build/legacy/common/hooks/useDebouncedFunction/useDebouncedFunction.js +0 -9
  52. package/build/legacy/common/hooks/useExternal/useExternal.js +0 -15
  53. package/build/legacy/common/hooks/useExternalStepPolling/useExternalStepPolling.js +0 -70
  54. package/build/legacy/common/hooks/usePersistAsync/usePersistAsync.js +0 -172
  55. package/build/legacy/common/hooks/usePolling/usePolling.js +0 -51
  56. package/build/legacy/common/hooks/usePrevious/usePrevious.js +0 -8
  57. package/build/legacy/common/hooks/useStepPolling/useStepPolling.js +0 -43
  58. package/build/legacy/common/messages.js +0 -8
  59. package/build/legacy/common/utils/api-utils.js +0 -6
  60. package/build/legacy/common/utils/date-utils.js +0 -22
  61. package/build/legacy/common/utils/debounce.js +0 -38
  62. package/build/legacy/common/utils/file-utils.js +0 -45
  63. package/build/legacy/common/utils/id-utils.js +0 -5
  64. package/build/legacy/common/utils/index.js +0 -11
  65. package/build/legacy/common/utils/is-equal.js +0 -21
  66. package/build/legacy/common/utils/misc-utils.js +0 -4
  67. package/build/legacy/common/utils/mobile-utils.js +0 -23
  68. package/build/legacy/common/utils/model-utils.js +0 -33
  69. package/build/legacy/common/utils/schema-utils.js +0 -97
  70. package/build/legacy/common/utils/step-utils.js +0 -32
  71. package/build/legacy/common/validators/index.js +0 -5
  72. package/build/legacy/common/validators/models/model-utils.js +0 -119
  73. package/build/legacy/common/validators/models/model-validators.js +0 -62
  74. package/build/legacy/common/validators/schemas/schema-validators.js +0 -101
  75. package/build/legacy/common/validators/types/type-validators.js +0 -14
  76. package/build/legacy/common/validators/validationFailures/validation-failures.js +0 -139
  77. package/build/legacy/common/validators/validationFailures/validation-failures.utils.js +0 -40
  78. package/build/legacy/common/validators/values/value-validators.js +0 -6
  79. package/build/legacy/dynamic-flow-types.js +0 -1
  80. package/build/legacy/dynamicFlow/BackButton.js +0 -22
  81. package/build/legacy/dynamicFlow/DynamicFlowStep.js +0 -37
  82. package/build/legacy/formControl/FormControl.js +0 -266
  83. package/build/legacy/formControl/index.js +0 -1
  84. package/build/legacy/formControl/utils/getAutocompleteString.js +0 -80
  85. package/build/legacy/formControl/utils/index.js +0 -2
  86. package/build/legacy/formControl/utils/value-utils.js +0 -108
  87. package/build/legacy/jsonSchemaForm/allOfSchema/AllOfSchema.js +0 -50
  88. package/build/legacy/jsonSchemaForm/allOfSchema/index.js +0 -1
  89. package/build/legacy/jsonSchemaForm/arrayTypeSchema/ArraySchema.js +0 -25
  90. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/ArrayListSchema.js +0 -30
  91. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/MultipleFileUploadSchema.js +0 -141
  92. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/index.js +0 -1
  93. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/utils/index.js +0 -2
  94. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/utils/upload-utils.js +0 -79
  95. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/utils/useFormattedDefaultErrorMessages.js +0 -14
  96. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/ItemSummary.js +0 -7
  97. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/RepeatableSchema.js +0 -134
  98. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/RepeatableSchemaStep.js +0 -85
  99. package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/utils/summary-utils.js +0 -135
  100. package/build/legacy/jsonSchemaForm/arrayTypeSchema/index.js +0 -1
  101. package/build/legacy/jsonSchemaForm/basicTypeSchema/BasicTypeSchema.js +0 -111
  102. package/build/legacy/jsonSchemaForm/basicTypeSchema/index.js +0 -1
  103. package/build/legacy/jsonSchemaForm/controlFeedback/ControlFeedback.js +0 -86
  104. package/build/legacy/jsonSchemaForm/controlFeedback/index.js +0 -1
  105. package/build/legacy/jsonSchemaForm/help/Help.js +0 -20
  106. package/build/legacy/jsonSchemaForm/help/index.js +0 -1
  107. package/build/legacy/jsonSchemaForm/objectSchema/ObjectSchema.js +0 -77
  108. package/build/legacy/jsonSchemaForm/objectSchema/index.js +0 -1
  109. package/build/legacy/jsonSchemaForm/oneOfSchema/OneOfSchema.js +0 -155
  110. package/build/legacy/jsonSchemaForm/oneOfSchema/index.js +0 -1
  111. package/build/legacy/jsonSchemaForm/oneOfSchema/utils.js +0 -68
  112. package/build/legacy/jsonSchemaForm/persistAsyncSchema/PersistAsyncSchema.js +0 -26
  113. package/build/legacy/jsonSchemaForm/persistAsyncSchema/index.js +0 -1
  114. package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBasicSchema/PersistAsyncBasicSchema.js +0 -165
  115. package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBasicSchema/index.js +0 -1
  116. package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBlobSchema/PersistAsyncBlobSchema.js +0 -131
  117. package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBlobSchema/UploadInputAdapter.js +0 -31
  118. package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBlobSchema/index.js +0 -1
  119. package/build/legacy/jsonSchemaForm/promotedOneOfSchema/PromotedOneOfSchema.js +0 -72
  120. package/build/legacy/jsonSchemaForm/promotedOneOfSchema/index.js +0 -1
  121. package/build/legacy/jsonSchemaForm/promotedOneOfSchema/promoted-one-of-utils.js +0 -8
  122. package/build/legacy/jsonSchemaForm/promotedOneOfSchema/promotedOneOfControl/PromotedOneOfCheckboxControl.js +0 -27
  123. package/build/legacy/jsonSchemaForm/promotedOneOfSchema/promotedOneOfControl/PromotedOneOfControl.js +0 -31
  124. package/build/legacy/jsonSchemaForm/promotedOneOfSchema/promotedOneOfControl/PromotedOneOfRadioControl.js +0 -32
  125. package/build/legacy/jsonSchemaForm/readOnlySchema/ReadOnlySchema.js +0 -54
  126. package/build/legacy/jsonSchemaForm/readOnlySchema/ReadOnlySchema.messages.js +0 -13
  127. package/build/legacy/jsonSchemaForm/readOnlySchema/index.js +0 -1
  128. package/build/legacy/jsonSchemaForm/schemaFormControl/SchemaFormControl.js +0 -133
  129. package/build/legacy/jsonSchemaForm/schemaFormControl/index.js +0 -1
  130. package/build/legacy/jsonSchemaForm/schemaFormControl/utils/index.js +0 -1
  131. package/build/legacy/jsonSchemaForm/schemaFormControl/utils/mapping-utils.js +0 -107
  132. package/build/legacy/layout/DynamicLayout.js +0 -68
  133. package/build/legacy/layout/alert/DynamicAlert.js +0 -29
  134. package/build/legacy/layout/box/DynamicBox.js +0 -41
  135. package/build/legacy/layout/button/DynamicButton.js +0 -27
  136. package/build/legacy/layout/button/utils.js +0 -45
  137. package/build/legacy/layout/columns/DynamicColumns.js +0 -38
  138. package/build/legacy/layout/decision/DynamicDecision.js +0 -21
  139. package/build/legacy/layout/divider/DynamicDivider.js +0 -9
  140. package/build/legacy/layout/external/DynamicExternal.js +0 -32
  141. package/build/legacy/layout/external/DynamicExternal.messages.js +0 -8
  142. package/build/legacy/layout/form/DynamicForm.js +0 -22
  143. package/build/legacy/layout/heading/DynamicHeading.js +0 -51
  144. package/build/legacy/layout/icon/DynamicIcon.js +0 -17
  145. package/build/legacy/layout/icon/FlagIcon.js +0 -198
  146. package/build/legacy/layout/icon/NamedIcon.js +0 -19
  147. package/build/legacy/layout/image/DynamicImage.js +0 -111
  148. package/build/legacy/layout/index.js +0 -20
  149. package/build/legacy/layout/instructions/DynamicInstructions.js +0 -30
  150. package/build/legacy/layout/list/DynamicStatusList.js +0 -37
  151. package/build/legacy/layout/loadingIndicator/DynamicLoadingIndicator.js +0 -11
  152. package/build/legacy/layout/markdown/DynamicMarkdown.js +0 -23
  153. package/build/legacy/layout/modal/DynamicModal.js +0 -26
  154. package/build/legacy/layout/paragraph/DynamicParagraph.js +0 -46
  155. package/build/legacy/layout/paragraph/useSnackBarIfAvailable.js +0 -9
  156. package/build/legacy/layout/review/DynamicReview.js +0 -58
  157. package/build/legacy/layout/search/DynamicSearch.js +0 -58
  158. package/build/legacy/layout/search/SearchInput.js +0 -17
  159. package/build/legacy/layout/search/SearchResults.js +0 -31
  160. package/build/legacy/layout/search/useSearch.js +0 -137
  161. package/build/legacy/layout/utils/getNavigationOptionMedia.js +0 -28
  162. package/build/legacy/layout/utils/index.js +0 -32
  163. package/build/legacy/step/cameraStep/CameraStep.js +0 -124
  164. package/build/legacy/step/cameraStep/cameraCapture/CameraCapture.js +0 -161
  165. package/build/legacy/step/cameraStep/cameraCapture/CameraCapture.messages.js +0 -58
  166. package/build/legacy/step/cameraStep/cameraCapture/components/bottomBar/BottomBar.js +0 -28
  167. package/build/legacy/step/cameraStep/cameraCapture/components/index.js +0 -3
  168. package/build/legacy/step/cameraStep/cameraCapture/components/orientationLockOverlay/OrientationLockOverlay.js +0 -19
  169. package/build/legacy/step/cameraStep/cameraCapture/components/orientationLockOverlay/OrientationLockOverlay.messages.js +0 -8
  170. package/build/legacy/step/cameraStep/cameraCapture/hooks/useFullScreenOrientationLock.js +0 -60
  171. package/build/legacy/step/cameraStep/cameraCapture/hooks/useVideoConstraints.js +0 -80
  172. package/build/legacy/step/cameraStep/cameraCapture/index.js +0 -1
  173. package/build/legacy/step/cameraStep/cameraCapture/overlay/Overlay.js +0 -77
  174. package/build/legacy/step/cameraStep/cameraCapture/screens/cameraErrorScreen/CameraErrorScreen.js +0 -18
  175. package/build/legacy/step/cameraStep/cameraCapture/screens/index.js +0 -1
  176. package/build/legacy/step/cameraStep/cameraCapture/tracking/index.js +0 -109
  177. package/build/legacy/step/cameraStep/cameraCapture/types/index.js +0 -7
  178. package/build/legacy/step/cameraStep/cameraCapture/utils/index.js +0 -107
  179. package/build/legacy/step/cameraStep/index.js +0 -1
  180. package/build/legacy/step/externalConfirmationStep/ExternalConfirmationStep.js +0 -64
  181. package/build/legacy/step/externalConfirmationStep/ExternalConfirmationStep.messages.js +0 -23
  182. package/build/legacy/step/externalConfirmationStep/index.js +0 -1
  183. package/build/legacy/step/index.js +0 -3
  184. package/build/legacy/step/layoutStep/LayoutStep.js +0 -33
  185. package/build/legacy/step/layoutStep/index.js +0 -1
  186. package/build/legacy/step/layoutStep/utils/index.js +0 -2
  187. package/build/legacy/step/layoutStep/utils/inline-reference-utils.js +0 -105
  188. package/build/legacy/step/layoutStep/utils/layout-utils.js +0 -212
@@ -1,33 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useDynamicFlow, useEventDispatcher } from '../../common/contexts';
3
- import { useStepPolling } from '../../common/hooks';
4
- import { isEmpty } from '../../common/validators';
5
- import { DynamicLayout } from '../../layout';
6
- import { convertStepToLayout, inlineReferences } from './utils';
7
- var getComponents = function (step, options) {
8
- var _a;
9
- if (isEmpty(step)) {
10
- return [];
11
- }
12
- var layout = convertStepToLayout(step, options);
13
- return inlineReferences({
14
- layout: layout,
15
- schemas: step.schemas || [],
16
- actions: step.actions || [],
17
- model: (_a = step.model) !== null && _a !== void 0 ? _a : null
18
- });
19
- };
20
- var LayoutStep = function (props) {
21
- var stepSpecification = props.stepSpecification, stepLayoutOptions = props.stepLayoutOptions, submitted = props.submitted, model = props.model, formErrors = props.formErrors, onModelChange = props.onModelChange;
22
- var components = getComponents(stepSpecification, stepLayoutOptions);
23
- var _a = useDynamicFlow(), loading = _a.loading, registerPersistAsyncPromise = _a.registerPersistAsyncPromise;
24
- var onEvent = useEventDispatcher();
25
- var onAction = !loading
26
- ? props.onAction
27
- : function () {
28
- onEvent('Dynamic Flow - onAction supressed', { reason: 'LayoutStep - loading state' });
29
- };
30
- useStepPolling(stepSpecification.polling, onAction);
31
- return (_jsx(DynamicLayout, { components: components, submitted: submitted, model: model, errors: formErrors, onAction: onAction, onModelChange: onModelChange, onPersistAsync: registerPersistAsyncPromise }));
32
- };
33
- export default LayoutStep;
@@ -1 +0,0 @@
1
- export { default } from './LayoutStep';
@@ -1,2 +0,0 @@
1
- export { convertStepToLayout } from './layout-utils';
2
- export { inlineReferences } from './inline-reference-utils';
@@ -1,105 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { convertStepActionToDynamicAction } from './layout-utils';
13
- export function inlineReferences(_a) {
14
- var layout = _a.layout, schemas = _a.schemas, actions = _a.actions, model = _a.model;
15
- if (!layout) {
16
- return [];
17
- }
18
- if (!schemas) {
19
- return layout;
20
- }
21
- return layout.map(function (component) {
22
- if (component.type === 'form') {
23
- return inlineFormSchema({ formComponent: component, schemas: schemas });
24
- }
25
- if (component.type === 'decision') {
26
- return inlineDecisionActions({ decisionComponent: component, actions: actions });
27
- }
28
- if (component.type === 'button') {
29
- return inlineAction({ actionComponent: component, actions: actions });
30
- }
31
- if (component.type === 'box') {
32
- return __assign(__assign({}, component), { components: inlineReferences({ layout: component.components, schemas: schemas, actions: actions, model: model }) });
33
- }
34
- if (component.type === 'modal') {
35
- return __assign(__assign({}, component), { components: inlineReferences({
36
- layout: component.content.components,
37
- schemas: schemas,
38
- actions: actions,
39
- model: model
40
- }) });
41
- }
42
- if (component.type === 'columns') {
43
- return __assign(__assign({}, component), { left: inlineReferences({ layout: component.left, schemas: schemas, actions: actions, model: model }), right: inlineReferences({ layout: component.right, schemas: schemas, actions: actions, model: model }) });
44
- }
45
- return component;
46
- });
47
- }
48
- function inlineFormSchema(_a) {
49
- var formComponent = _a.formComponent, schemas = _a.schemas;
50
- if (formComponent.schemaId) {
51
- return {
52
- type: 'form',
53
- margin: formComponent.margin,
54
- schema: getSchemaById(schemas, formComponent.schemaId)
55
- };
56
- }
57
- if (formComponent.schema && isReference(formComponent.schema) && formComponent.schema.$ref) {
58
- return {
59
- type: 'form',
60
- margin: formComponent.margin,
61
- schema: getSchemaById(schemas, formComponent.schema.$ref)
62
- };
63
- }
64
- if (formComponent.schema && !isReference(formComponent.schema)) {
65
- return __assign({}, formComponent);
66
- }
67
- throw new Error('Invalid form layout component. Missing "schema" or "schemaId" properties.');
68
- }
69
- function inlineDecisionActions(_a) {
70
- var _b;
71
- var decisionComponent = _a.decisionComponent, actions = _a.actions;
72
- var newOptions = (_b = decisionComponent === null || decisionComponent === void 0 ? void 0 : decisionComponent.options) === null || _b === void 0 ? void 0 : _b.map(function (option) {
73
- return option.action && isReference(option.action)
74
- ? __assign(__assign({}, option), { action: getActionById(actions, option.action.$ref) }) : option;
75
- });
76
- return __assign(__assign({}, decisionComponent), { options: newOptions });
77
- }
78
- function inlineAction(_a) {
79
- var _b;
80
- var actionComponent = _a.actionComponent, actions = _a.actions;
81
- if (actionComponent.action &&
82
- isReference(actionComponent.action) &&
83
- ((_b = actionComponent.action) === null || _b === void 0 ? void 0 : _b.$ref)) {
84
- var newAction = getActionById(actions, actionComponent.action.$ref);
85
- return convertStepActionToDynamicAction(newAction);
86
- }
87
- return actionComponent;
88
- }
89
- function getSchemaById(schemas, id) {
90
- var schema = schemas.find(function (schema) { return schema.$id === id; });
91
- if (!schema) {
92
- throw new Error("Fatal Error. Schema not found. $id ".concat(id));
93
- }
94
- return schema;
95
- }
96
- function getActionById(actions, id) {
97
- var action = actions.find(function (action) { return action.$id === id; });
98
- if (!action) {
99
- throw new Error("Fatal Error. Action not found. $id ".concat(id));
100
- }
101
- return action;
102
- }
103
- function isReference(block) {
104
- return Object.hasOwnProperty.call(block, '$ref');
105
- }
@@ -1,212 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
13
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
14
- if (ar || !(i in from)) {
15
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
16
- ar[i] = from[i];
17
- }
18
- }
19
- return to.concat(ar || Array.prototype.slice.call(from));
20
- };
21
- export function convertStepToLayout(step, _a) {
22
- var _b = _a === void 0 ? {} : _a, _c = _b.displayStepTitle, displayStepTitle = _c === void 0 ? true : _c;
23
- // This condition is meant as a temporary hack until mobile platforms will be refactored to fully support the layout property
24
- if (step.layout) {
25
- return addMissingTitleAndDescriptionToStep(step, displayStepTitle);
26
- }
27
- switch (step.type) {
28
- case 'final':
29
- return convertFinalStepToDynamicLayout(step);
30
- case 'decision':
31
- return convertDecisionStepToDynamicLayout(step);
32
- case 'external':
33
- return convertExternalStepToDynamicLayout(step);
34
- default:
35
- return convertFormStepToDynamicLayout(step);
36
- }
37
- }
38
- function convertCommonComponents(step) {
39
- var layout = [];
40
- if (step.title) {
41
- layout.push(convertStepTitleToDynamicHeading(step.title));
42
- }
43
- if (step.image) {
44
- var image = convertStepImageToDynamicImage(step.image);
45
- layout.push(image);
46
- }
47
- if (step.description) {
48
- layout.push(convertStepDescriptionToDynamicParagraph(step.description));
49
- }
50
- return layout;
51
- }
52
- function convertExternalStepToDynamicLayout(step) {
53
- return __spreadArray(__spreadArray([], convertCommonComponents(step), true), [convertStepToExternalComponent(step)], false);
54
- }
55
- function convertStepToExternalComponent(step) {
56
- return {
57
- type: 'external',
58
- requestUrl: step.requestUrl,
59
- polling: step.polling,
60
- responseHandlers: step.responseHandlers,
61
- retryTitle: step.retryTitle
62
- };
63
- }
64
- function convertFormStepToDynamicLayout(step) {
65
- var layout = convertCommonComponents(step);
66
- if (step.reviewFields) {
67
- layout.push(convertStepReviewToDynamicReview(step.reviewFields));
68
- }
69
- if (step.schemas) {
70
- layout.push.apply(layout, getSchemaLayout(step));
71
- }
72
- if (step.actions) {
73
- var actions = step.actions.map(convertStepActionToDynamicAction);
74
- layout.push(dynamicBox(actions, 'md'));
75
- }
76
- return layout;
77
- }
78
- function convertFinalStepToDynamicLayout(step) {
79
- var layout = [];
80
- if (step.details) {
81
- if (step.details.image) {
82
- var image = convertFinalStepImageToDynamicImage(step.details.image);
83
- layout.push(image);
84
- }
85
- if (step.details.title) {
86
- layout.push(convertStepTitleToDynamicHeading(step.details.title));
87
- }
88
- if (step.details.description) {
89
- layout.push(convertStepDescriptionToDynamicParagraph(step.details.description));
90
- }
91
- }
92
- if (step.actions) {
93
- var actions = step.actions.map(function (action) {
94
- return convertStepActionToDynamicAction(__assign(__assign({}, action), { type: action.type || 'primary' }));
95
- });
96
- layout.push(dynamicBox(actions, 'md'));
97
- }
98
- return layout;
99
- }
100
- function convertDecisionStepToDynamicLayout(step) {
101
- var layout = convertCommonComponents(step);
102
- if (step.options) {
103
- layout.push(convertStepDecisionToDynamicDecision(step.options));
104
- }
105
- return layout;
106
- }
107
- function dynamicBox(components, size) {
108
- return {
109
- type: 'box',
110
- width: size || 'md',
111
- components: components
112
- };
113
- }
114
- function convertStepTitleToDynamicHeading(title) {
115
- return {
116
- type: 'heading',
117
- text: title,
118
- size: 'lg',
119
- margin: 'lg',
120
- align: 'center'
121
- };
122
- }
123
- function convertStepDescriptionToDynamicParagraph(description) {
124
- return {
125
- type: 'paragraph',
126
- text: description,
127
- align: 'center'
128
- };
129
- }
130
- function convertStepSchemaToDynamicForm(schema) {
131
- return { type: 'form', schema: schema };
132
- }
133
- function convertStepDecisionToDynamicDecision(options) {
134
- return {
135
- type: 'decision',
136
- options: options.map(convertStepDecisionOption)
137
- };
138
- }
139
- function convertStepDecisionOption(option) {
140
- return {
141
- title: option.title,
142
- description: option.description,
143
- action: {
144
- title: option.title,
145
- method: 'GET',
146
- url: option.url,
147
- disabled: option.disabled
148
- }
149
- };
150
- }
151
- function convertStepImageToDynamicImage(image) {
152
- return {
153
- type: 'image',
154
- url: image.url,
155
- text: image.text,
156
- margin: image.margin || 'lg',
157
- size: image.size || 'md'
158
- };
159
- }
160
- function convertFinalStepImageToDynamicImage(image) {
161
- return typeof image === 'string'
162
- ? {
163
- type: 'image',
164
- url: image,
165
- text: undefined,
166
- margin: 'lg',
167
- size: 'md'
168
- }
169
- : convertStepImageToDynamicImage(image);
170
- }
171
- export function convertStepActionToDynamicAction(action) {
172
- var newAction = __assign(__assign({}, action), { title: action.title });
173
- return {
174
- type: 'button',
175
- action: newAction
176
- };
177
- }
178
- function convertStepReviewToDynamicReview(reviewFields) {
179
- return {
180
- type: 'review',
181
- title: reviewFields.title,
182
- fields: reviewFields.fields.map(convertReviewFieldToDefinition)
183
- };
184
- }
185
- function convertReviewFieldToDefinition(reviewField) {
186
- return {
187
- label: reviewField.title,
188
- value: reviewField.value
189
- };
190
- }
191
- function getSchemaLayout(step) {
192
- var layout = [];
193
- if (step.schemas && step.schemas[0]) {
194
- var schema = step.schemas[0];
195
- var dynamicForm = convertStepSchemaToDynamicForm(schema);
196
- if (isWideForm()) {
197
- layout.push(dynamicForm);
198
- }
199
- else {
200
- layout.push(dynamicBox([dynamicForm], 'md'));
201
- }
202
- }
203
- return layout;
204
- }
205
- function isWideForm() {
206
- // For the time being we won't support automatically widening forms
207
- // Unlike it V2, there is no way to easily iterate and identify narrow fields
208
- return false;
209
- }
210
- function addMissingTitleAndDescriptionToStep(step, displayStepTitle) {
211
- return __spreadArray(__spreadArray(__spreadArray([], (displayStepTitle && step.title ? [convertStepTitleToDynamicHeading(step.title)] : []), true), (step.description ? [convertStepDescriptionToDynamicParagraph(step.description)] : []), true), (step.layout || []), true);
212
- }