@wise/dynamic-flow-client 5.30.1 → 5.30.2-experimental-949e5e5

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 (480) hide show
  1. package/build/tsconfig.types.tsbuildinfo +1 -1
  2. package/package.json +2 -2
  3. package/build/DynamicFlowCore.js +0 -5
  4. package/build/common/capabilities/getHttpClientWithCapabilities.js +0 -41
  5. package/build/common/capabilities/getHttpClientWithCapabilities.test.js +0 -106
  6. package/build/common/capabilities/index.js +0 -1
  7. package/build/common/errorBoundary/ErrorBoundary.js +0 -26
  8. package/build/common/errorBoundary/ErrorBoundary.test.js +0 -29
  9. package/build/common/errorBoundary/ErrorBoundaryAlert.js +0 -11
  10. package/build/common/makeHttpClient/api-utils.js +0 -3
  11. package/build/common/makeHttpClient/index.js +0 -1
  12. package/build/common/makeHttpClient/makeHttpClient.js +0 -10
  13. package/build/common/makeHttpClient/makeHttpClient.test.js +0 -186
  14. package/build/common/messages/download.messages.js +0 -18
  15. package/build/common/messages/external-confirmation.messages.js +0 -23
  16. package/build/common/messages/file-upload.messages.js +0 -13
  17. package/build/common/messages/generic-error.messages.js +0 -18
  18. package/build/common/messages/help.messages.js +0 -8
  19. package/build/common/messages/multi-file-upload.messages.js +0 -18
  20. package/build/common/messages/multi-select.messages.js +0 -8
  21. package/build/common/messages/paragraph.messages.js +0 -13
  22. package/build/common/messages/repeatable.messages.js +0 -23
  23. package/build/common/messages/search.messages.js +0 -8
  24. package/build/common/messages/validation.array.messages.js +0 -13
  25. package/build/common/messages/validation.messages.js +0 -53
  26. package/build/controller/FlowController.js +0 -400
  27. package/build/controller/executeDownload.js +0 -86
  28. package/build/controller/executePoll.js +0 -65
  29. package/build/controller/executeRefresh.js +0 -45
  30. package/build/controller/executeRequest.js +0 -93
  31. package/build/controller/executeSubflow.js +0 -71
  32. package/build/controller/executeSubmission.js +0 -68
  33. package/build/controller/getErrorMessage.js +0 -7
  34. package/build/controller/getFilenameFromContentDisposition.js +0 -47
  35. package/build/controller/getFilenameFromContentDisposition.test.js +0 -47
  36. package/build/controller/getRequestAbortController.js +0 -13
  37. package/build/controller/getResponseType.js +0 -35
  38. package/build/controller/getSafeHttpClient.js +0 -8
  39. package/build/controller/getStepCounter.js +0 -16
  40. package/build/controller/handleErrorResponse.js +0 -26
  41. package/build/controller/makeSafeHttpClient.js +0 -8
  42. package/build/controller/response-utils.js +0 -72
  43. package/build/controller/response-utils.test.js +0 -52
  44. package/build/domain/components/AlertComponent.js +0 -2
  45. package/build/domain/components/AllOfComponent.js +0 -47
  46. package/build/domain/components/BooleanInputComponent.js +0 -48
  47. package/build/domain/components/BoxComponent.js +0 -12
  48. package/build/domain/components/ButtonComponent.js +0 -2
  49. package/build/domain/components/ColumnsComponent.js +0 -12
  50. package/build/domain/components/ConstComponent.js +0 -20
  51. package/build/domain/components/ContainerComponent.js +0 -12
  52. package/build/domain/components/DateInputComponent.js +0 -73
  53. package/build/domain/components/DecisionComponent.js +0 -2
  54. package/build/domain/components/DividerComponent.js +0 -2
  55. package/build/domain/components/FormComponent.js +0 -12
  56. package/build/domain/components/FormattedValueComponent.js +0 -47
  57. package/build/domain/components/HeadingComponent.js +0 -2
  58. package/build/domain/components/ImageComponent.js +0 -2
  59. package/build/domain/components/InstructionsComponent.js +0 -2
  60. package/build/domain/components/IntegerInputComponent.js +0 -75
  61. package/build/domain/components/ListComponent.js +0 -2
  62. package/build/domain/components/LoadingIndicatorComponent.js +0 -2
  63. package/build/domain/components/MarkdownComponent.js +0 -2
  64. package/build/domain/components/MediaComponent.js +0 -2
  65. package/build/domain/components/ModalComponent.js +0 -20
  66. package/build/domain/components/ModalLayoutComponent.js +0 -12
  67. package/build/domain/components/MoneyInputComponent.js +0 -56
  68. package/build/domain/components/MultiSelectInputComponent.js +0 -86
  69. package/build/domain/components/MultiUploadInputComponent.js +0 -86
  70. package/build/domain/components/NumberInputComponent.js +0 -74
  71. package/build/domain/components/ObjectComponent.js +0 -54
  72. package/build/domain/components/ParagraphComponent.js +0 -2
  73. package/build/domain/components/PersistAsyncComponent.js +0 -96
  74. package/build/domain/components/ProgressComponent.js +0 -2
  75. package/build/domain/components/RepeatableComponent.js +0 -106
  76. package/build/domain/components/ReviewComponent.js +0 -2
  77. package/build/domain/components/RootDomainComponent.js +0 -193
  78. package/build/domain/components/SectionComponent.js +0 -12
  79. package/build/domain/components/SelectInputComponent.js +0 -96
  80. package/build/domain/components/StatusListComponent.js +0 -2
  81. package/build/domain/components/SubflowComponent.js +0 -19
  82. package/build/domain/components/TabsComponent.js +0 -2
  83. package/build/domain/components/TextInputComponent.js +0 -77
  84. package/build/domain/components/TupleComponent.js +0 -48
  85. package/build/domain/components/UpdatableComponent.js +0 -46
  86. package/build/domain/components/UploadInputComponent.js +0 -78
  87. package/build/domain/components/UpsellComponent.js +0 -26
  88. package/build/domain/components/collectionComponent/CollectionComponent.js +0 -14
  89. package/build/domain/components/collectionComponent/CollectionComponent.test.js +0 -447
  90. package/build/domain/components/collectionComponent/CollectionController.js +0 -138
  91. package/build/domain/components/collectionComponent/CollectionController.test.js +0 -58
  92. package/build/domain/components/collectionComponent/CollectionStack.js +0 -40
  93. package/build/domain/components/collectionComponent/CollectionStack.test.js +0 -173
  94. package/build/domain/components/collectionComponent/CollectionState.js +0 -39
  95. package/build/domain/components/collectionComponent/applyCollectionResponse.js +0 -9
  96. package/build/domain/components/collectionComponent/mergeSections.js +0 -28
  97. package/build/domain/components/collectionComponent/toggleFilterOption.js +0 -15
  98. package/build/domain/components/collectionComponent/types.js +0 -1
  99. package/build/domain/components/searchComponent/SearchComponent.js +0 -91
  100. package/build/domain/components/searchComponent/SearchComponent.test.js +0 -190
  101. package/build/domain/components/step/ExternalConfirmationComponent.js +0 -27
  102. package/build/domain/components/step/StepDomainComponent.js +0 -153
  103. package/build/domain/components/step/ToolbarComponent.js +0 -1
  104. package/build/domain/components/utils/component-utils.js +0 -12
  105. package/build/domain/components/utils/debounce.js +0 -34
  106. package/build/domain/components/utils/debounce.test.js +0 -67
  107. package/build/domain/components/utils/file-utils.js +0 -21
  108. package/build/domain/components/utils/file-utils.test.js +0 -27
  109. package/build/domain/components/utils/getRandomId.js +0 -1
  110. package/build/domain/components/utils/isExactLocalValueMatch.js +0 -14
  111. package/build/domain/components/utils/isOrWasValid.js +0 -5
  112. package/build/domain/components/utils/isPartialModelMatch.js +0 -18
  113. package/build/domain/components/utils/isPartialModelMatch.test.js +0 -74
  114. package/build/domain/features/collection/getPerformCollectionQuery.js +0 -80
  115. package/build/domain/features/collection/getPerformCollectionQuery.test.js +0 -215
  116. package/build/domain/features/delay/getStepDelays.js +0 -37
  117. package/build/domain/features/delay/getStepDelays.test.js +0 -69
  118. package/build/domain/features/domain-event-bus/DomainEventBus.js +0 -24
  119. package/build/domain/features/domain-event-bus/index.js +0 -1
  120. package/build/domain/features/domain-event-bus/types.js +0 -1
  121. package/build/domain/features/eventNames.js +0 -41
  122. package/build/domain/features/events.js +0 -5
  123. package/build/domain/features/persistAsync/getComponentMultiPersistAsync.js +0 -50
  124. package/build/domain/features/persistAsync/getInitialPersistedState.js +0 -7
  125. package/build/domain/features/persistAsync/getPerformPersistAsync.js +0 -43
  126. package/build/domain/features/persistAsync/getPerformPersistAsync.test.js +0 -139
  127. package/build/domain/features/polling/getStepPolling.js +0 -50
  128. package/build/domain/features/polling/getStepPolling.test.js +0 -115
  129. package/build/domain/features/prefetch/getStepPrefetch.js +0 -56
  130. package/build/domain/features/prefetch/request-cache.js +0 -49
  131. package/build/domain/features/prefetch/request-cache.test.js +0 -70
  132. package/build/domain/features/refreshAfter/getStepRefreshAfter.js +0 -24
  133. package/build/domain/features/refreshAfter/getStepRefreshAfter.test.js +0 -40
  134. package/build/domain/features/schema-on-change/getDebouncedSchemaOnChange.js +0 -50
  135. package/build/domain/features/schema-on-change/getSchemaOnChange.js +0 -38
  136. package/build/domain/features/search/getPerformSearchFunction.js +0 -75
  137. package/build/domain/features/search/getPerformSearchFunction.test.js +0 -301
  138. package/build/domain/features/summary/summary-utils.js +0 -37
  139. package/build/domain/features/summary/summary-utils.test.js +0 -125
  140. package/build/domain/features/updatable/getPerformUpdateQuery.js +0 -52
  141. package/build/domain/features/utils/http-utils.js +0 -21
  142. package/build/domain/features/utils/response-utils.js +0 -9
  143. package/build/domain/features/validation/date-availability.js +0 -54
  144. package/build/domain/features/validation/date-availability.test.js +0 -54
  145. package/build/domain/features/validation/getPatternRegExp.js +0 -25
  146. package/build/domain/features/validation/spec-utils.js +0 -23
  147. package/build/domain/features/validation/validation-functions.js +0 -6
  148. package/build/domain/features/validation/validation-functions.test.js +0 -108
  149. package/build/domain/features/validation/value-checks.js +0 -130
  150. package/build/domain/features/validation/value-checks.test.js +0 -297
  151. package/build/domain/features/validationAsync/getComponentValidationAsync.js +0 -57
  152. package/build/domain/features/validationAsync/getComponentValidationAsync.test.js +0 -67
  153. package/build/domain/features/validationAsync/getInitialValidationAsyncState.js +0 -6
  154. package/build/domain/features/validationAsync/getPerformValidationAsync.js +0 -46
  155. package/build/domain/features/validationAsync/getPerformValidationAsync.test.js +0 -162
  156. package/build/domain/handlers/dismissHandler.js +0 -11
  157. package/build/domain/mappers/layout/alertLayoutToComponent.js +0 -18
  158. package/build/domain/mappers/layout/boxLayoutToComponent.js +0 -13
  159. package/build/domain/mappers/layout/buttonLayoutToComponent.js +0 -77
  160. package/build/domain/mappers/layout/collectionLayoutToComponent.js +0 -66
  161. package/build/domain/mappers/layout/columnsLayoutToComponent.js +0 -13
  162. package/build/domain/mappers/layout/decisionLayoutToComponent.js +0 -24
  163. package/build/domain/mappers/layout/deprecatedListLayoutToComponent.js +0 -30
  164. package/build/domain/mappers/layout/dividerLayoutToComponent.js +0 -2
  165. package/build/domain/mappers/layout/formLayoutToComponent.js +0 -19
  166. package/build/domain/mappers/layout/headingLayoutToComponent.js +0 -12
  167. package/build/domain/mappers/layout/imageLayoutToComponent.js +0 -17
  168. package/build/domain/mappers/layout/infoLayoutToComponent.js +0 -12
  169. package/build/domain/mappers/layout/instructionsLayoutToComponent.js +0 -12
  170. package/build/domain/mappers/layout/listLayoutToComponent.js +0 -39
  171. package/build/domain/mappers/layout/loadingIndicatorLayoutToComponent.js +0 -9
  172. package/build/domain/mappers/layout/markdownLayoutToComponent.js +0 -12
  173. package/build/domain/mappers/layout/mediaLayoutToComponent.js +0 -12
  174. package/build/domain/mappers/layout/modalLayoutToComponent.js +0 -17
  175. package/build/domain/mappers/layout/modalToComponent.js +0 -8
  176. package/build/domain/mappers/layout/paragraphLayoutToComponent.js +0 -12
  177. package/build/domain/mappers/layout/progressLayoutToComponent.js +0 -15
  178. package/build/domain/mappers/layout/reviewLayoutToComponent.js +0 -49
  179. package/build/domain/mappers/layout/searchLayoutToComponent.js +0 -44
  180. package/build/domain/mappers/layout/sectionLayoutToComponent.js +0 -16
  181. package/build/domain/mappers/layout/statusListLayoutToComponent.js +0 -15
  182. package/build/domain/mappers/layout/tabsLayoutToComponent.js +0 -16
  183. package/build/domain/mappers/layout/updatableLayoutToComponent.js +0 -39
  184. package/build/domain/mappers/layout/upsellLayoutToComponent.js +0 -18
  185. package/build/domain/mappers/mapLayoutToComponent.js +0 -87
  186. package/build/domain/mappers/mapSchemaToComponent.js +0 -65
  187. package/build/domain/mappers/mapSchemaToComponent.test.js +0 -116
  188. package/build/domain/mappers/mapStepSchemas.js +0 -14
  189. package/build/domain/mappers/mapStepToComponent.js +0 -145
  190. package/build/domain/mappers/mapStepToComponent.test.js +0 -319
  191. package/build/domain/mappers/mapToolbarToComponent.js +0 -15
  192. package/build/domain/mappers/schema/allOfSchemaToComponent.js +0 -17
  193. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToComponent.js +0 -26
  194. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToMultiSelectComponent.js +0 -56
  195. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToMultiUploadComponent.js +0 -66
  196. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToRepeatableComponent.js +0 -58
  197. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToTupleComponent.js +0 -18
  198. package/build/domain/mappers/schema/blobSchemaToComponent.js +0 -15
  199. package/build/domain/mappers/schema/booleanSchemaToComponent.js +0 -29
  200. package/build/domain/mappers/schema/constSchemaToComponent.js +0 -23
  201. package/build/domain/mappers/schema/dateSchemaToComponent.js +0 -56
  202. package/build/domain/mappers/schema/dateSchemaToComponent.test.js +0 -117
  203. package/build/domain/mappers/schema/integerSchemaToComponent.js +0 -28
  204. package/build/domain/mappers/schema/numberSchemaToComponent.js +0 -26
  205. package/build/domain/mappers/schema/objectSchemaToComponent/assertDisplayOrder.js +0 -23
  206. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToFormattedValueComponent.js +0 -9
  207. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToMoneyInputComponent.js +0 -119
  208. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToMoneyInputComponent.test.js +0 -97
  209. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToObjectComponent.js +0 -32
  210. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToObjectComponent.test.js +0 -99
  211. package/build/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.js +0 -67
  212. package/build/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.test.js +0 -225
  213. package/build/domain/mappers/schema/persistAsyncSchemaToComponent.js +0 -29
  214. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToComponent.js +0 -18
  215. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToComponent.test.js +0 -133
  216. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToTextInputComponent.js +0 -38
  217. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToUploadInputComponent.js +0 -28
  218. package/build/domain/mappers/schema/tests/test-utils.js +0 -16
  219. package/build/domain/mappers/schema/types.js +0 -1
  220. package/build/domain/mappers/schema/utils/getPerformPersistAsyncFn.js +0 -19
  221. package/build/domain/mappers/schema/utils/getValidationAsyncInitialState.js +0 -23
  222. package/build/domain/mappers/schema/utils/mapCommonSchemaProps.js +0 -16
  223. package/build/domain/mappers/types.js +0 -1
  224. package/build/domain/mappers/utils/FeatureFlags.js +0 -22
  225. package/build/domain/mappers/utils/behavior-utils.js +0 -52
  226. package/build/domain/mappers/utils/call-to-action-utils.js +0 -24
  227. package/build/domain/mappers/utils/getAutocompleteString.js +0 -76
  228. package/build/domain/mappers/utils/getAutocompleteString.test.js +0 -21
  229. package/build/domain/mappers/utils/getHrefWithTracking.js +0 -16
  230. package/build/domain/mappers/utils/groupLayoutByPinned.js +0 -38
  231. package/build/domain/mappers/utils/groupLayoutByPinned.test.js +0 -166
  232. package/build/domain/mappers/utils/image.js +0 -6
  233. package/build/domain/mappers/utils/layout-utils.js +0 -11
  234. package/build/domain/mappers/utils/legacy-utils.js +0 -49
  235. package/build/domain/mappers/utils/media-utils.js +0 -14
  236. package/build/domain/mappers/utils/suggestions-utils.js +0 -26
  237. package/build/domain/mappers/utils/suggestions-utils.test.js +0 -36
  238. package/build/domain/mappers/utils/tags-utils.js +0 -1
  239. package/build/domain/mappers/utils/utils.js +0 -45
  240. package/build/domain/types.js +0 -1
  241. package/build/i18n/index.js +0 -40
  242. package/build/index.js +0 -9
  243. package/build/renderers/CoreContainerRenderer.js +0 -5
  244. package/build/renderers/CoreRootRenderer.js +0 -12
  245. package/build/renderers/EmptyLoadingStateRenderer.js +0 -5
  246. package/build/renderers/getRenderFunction.js +0 -24
  247. package/build/renderers/getSchemaErrorMessageFunction.js +0 -111
  248. package/build/renderers/mappers/alertComponentToProps.js +0 -3
  249. package/build/renderers/mappers/allOfComponentToProps.js +0 -6
  250. package/build/renderers/mappers/booleanInputComponentToProps.js +0 -3
  251. package/build/renderers/mappers/boxComponentToProps.js +0 -13
  252. package/build/renderers/mappers/buttonComponentToProps.js +0 -4
  253. package/build/renderers/mappers/collectionComponentToProps.js +0 -54
  254. package/build/renderers/mappers/columnsComponentToProps.js +0 -8
  255. package/build/renderers/mappers/componentToRendererProps.js +0 -168
  256. package/build/renderers/mappers/constComponentToProps.js +0 -5
  257. package/build/renderers/mappers/containerComponentToProps.js +0 -8
  258. package/build/renderers/mappers/dateInputComponentToProps.js +0 -3
  259. package/build/renderers/mappers/decisionComponentToProps.js +0 -16
  260. package/build/renderers/mappers/dividerComponentToProps.js +0 -2
  261. package/build/renderers/mappers/externalComponentToProps.js +0 -4
  262. package/build/renderers/mappers/formComponentToProps.js +0 -8
  263. package/build/renderers/mappers/formattedValueComponentToProps.js +0 -5
  264. package/build/renderers/mappers/headingComponentToProps.js +0 -2
  265. package/build/renderers/mappers/hiddenComponentToProps.js +0 -1
  266. package/build/renderers/mappers/imageComponentToProps.js +0 -2
  267. package/build/renderers/mappers/instructionsComponentToProps.js +0 -2
  268. package/build/renderers/mappers/integerInputComponentToProps.js +0 -3
  269. package/build/renderers/mappers/listComponentToProps.js +0 -3
  270. package/build/renderers/mappers/loadingIndicatorComponentToProps.js +0 -2
  271. package/build/renderers/mappers/markdownComponentToProps.js +0 -2
  272. package/build/renderers/mappers/mediaComponentToProps.js +0 -2
  273. package/build/renderers/mappers/modalComponentToProps.js +0 -8
  274. package/build/renderers/mappers/modalLayoutComponentToProps.js +0 -13
  275. package/build/renderers/mappers/moneyInputComponentToProps.js +0 -36
  276. package/build/renderers/mappers/multiSelectComponentToProps.js +0 -19
  277. package/build/renderers/mappers/multiUploadInputComponentToProps.js +0 -7
  278. package/build/renderers/mappers/numberInputComponentToProps.js +0 -3
  279. package/build/renderers/mappers/objectComponentToProps.js +0 -8
  280. package/build/renderers/mappers/paragraphComponentToProps.js +0 -2
  281. package/build/renderers/mappers/persistAsyncComponentToProps.js +0 -7
  282. package/build/renderers/mappers/progressComponentToProps.js +0 -2
  283. package/build/renderers/mappers/repeatableComponentToProps.js +0 -22
  284. package/build/renderers/mappers/reviewComponentToProps.js +0 -3
  285. package/build/renderers/mappers/rootComponentToProps.js +0 -20
  286. package/build/renderers/mappers/searchComponentToProps.js +0 -45
  287. package/build/renderers/mappers/sectionComponentToProps.js +0 -7
  288. package/build/renderers/mappers/selectInputComponentToProps.js +0 -34
  289. package/build/renderers/mappers/statusListComponentToProps.js +0 -3
  290. package/build/renderers/mappers/subflowComponentToRendererProps.js +0 -26
  291. package/build/renderers/mappers/tabsComponentToProps.js +0 -14
  292. package/build/renderers/mappers/textInputComponentToProps.js +0 -3
  293. package/build/renderers/mappers/tupleComponentToProps.js +0 -8
  294. package/build/renderers/mappers/updatableComponentToProps.js +0 -6
  295. package/build/renderers/mappers/uploadInputComponentToProps.js +0 -5
  296. package/build/renderers/mappers/upsellComponentToProps.js +0 -3
  297. package/build/renderers/mappers/utils/getValidationState.js +0 -12
  298. package/build/renderers/mappers/utils/inputComponentToProps.js +0 -17
  299. package/build/renderers/mappers/utils/mapCallToAction.js +0 -23
  300. package/build/renderers/mappers/utils/mapErrorsToValidationState.js +0 -9
  301. package/build/renderers/mappers/utils/mapRendererLoadingState.js +0 -1
  302. package/build/renderers/mappers/utils/pick.js +0 -8
  303. package/build/renderers/mappers/utils/selectInputOptionsToProps.js +0 -11
  304. package/build/renderers/stepComponentToProps.js +0 -32
  305. package/build/renderers/subflow/getDynamicSubflowRenderer.js +0 -13
  306. package/build/renderers/subflow/getNativeSubflowRenderer.js +0 -26
  307. package/build/renderers/utils.js +0 -82
  308. package/build/renderers/utils.test.js +0 -70
  309. package/build/stories/dev-tools/ContainerQueries.story.js +0 -66
  310. package/build/stories/dev-tools/Debugger.story.js +0 -107
  311. package/build/stories/dev-tools/FixtureSelect.story.js +0 -23
  312. package/build/stories/dev-tools/TestServer.story.js +0 -118
  313. package/build/stories/examples/NativeFlow.story.js +0 -80
  314. package/build/stories/examples/Recipients.story.js +0 -568
  315. package/build/stories/spec/behavior/Copy.story.js +0 -71
  316. package/build/stories/spec/behavior/Download.story.js +0 -254
  317. package/build/stories/spec/behavior/DynamicSubflow.story.js +0 -272
  318. package/build/stories/spec/behavior/Link.story.js +0 -40
  319. package/build/stories/spec/behavior/Modal.story.js +0 -79
  320. package/build/stories/spec/behavior/NativeSubflow.story.js +0 -249
  321. package/build/stories/spec/layouts/Alert.story.js +0 -107
  322. package/build/stories/spec/layouts/Box.Container-Widths.3-sizes.story.js +0 -59
  323. package/build/stories/spec/layouts/Box.Container-Widths.story.js +0 -57
  324. package/build/stories/spec/layouts/Box.Viewport-Widths.story.js +0 -64
  325. package/build/stories/spec/layouts/Collection.story.js +0 -326
  326. package/build/stories/spec/layouts/Decision.story.js +0 -241
  327. package/build/stories/spec/layouts/Image.Illustrations.Animated.story.js +0 -37
  328. package/build/stories/spec/layouts/Image.Sizes.story.js +0 -58
  329. package/build/stories/spec/layouts/List.story.js +0 -60
  330. package/build/stories/spec/layouts/Modal.story.js +0 -81
  331. package/build/stories/spec/layouts/Search.story.js +0 -325
  332. package/build/stories/spec/layouts/Updatable.story.js +0 -135
  333. package/build/stories/spec/layouts/Upsell.story.js +0 -55
  334. package/build/stories/spec/layouts/button/Button.story.js +0 -111
  335. package/build/stories/spec/layouts/button/PinnedButton.story.js +0 -81
  336. package/build/stories/spec/response/ActionResponse.story.js +0 -66
  337. package/build/stories/spec/schemas/InlineAlert.story.js +0 -134
  338. package/build/stories/spec/schemas/MultiSelect.story.js +0 -206
  339. package/build/stories/spec/schemas/Upload.story.js +0 -168
  340. package/build/stories/spec/schemas/const/ConstLayout.story.js +0 -159
  341. package/build/stories/spec/schemas/const/ObjectConst.story.js +0 -94
  342. package/build/stories/spec/schemas/date/DateSchema.story.js +0 -60
  343. package/build/stories/spec/schemas/features/PersistAsync.story.js +0 -230
  344. package/build/stories/spec/schemas/features/ValidationAsync.story.js +0 -137
  345. package/build/stories/spec/schemas/object/FormattedValue.story.js +0 -92
  346. package/build/stories/spec/schemas/object/MoneyInput.story.js +0 -240
  347. package/build/stories/spec/schemas/oneOf/OneOfInitialisation.story.js +0 -55
  348. package/build/stories/spec/schemas/oneOf/OneOfWithSingleOption.story.js +0 -114
  349. package/build/stories/spec/schemas/string/SsnInput.story.js +0 -38
  350. package/build/stories/spec/step/Controls.story.js +0 -110
  351. package/build/stories/spec/step/DFModal.story.js +0 -58
  352. package/build/stories/spec/step/Footer.story.js +0 -90
  353. package/build/stories/spec/step/Navigation.story.js +0 -46
  354. package/build/stories/spec/step/ScrollToBottom.story.js +0 -103
  355. package/build/stories/spec/step/Tags.story.js +0 -39
  356. package/build/stories/spec/step/ToolBar.story.js +0 -60
  357. package/build/stories/spec/step/features/ErrorHandling.story.js +0 -92
  358. package/build/stories/spec/step/features/External.story.js +0 -91
  359. package/build/stories/spec/step/features/LongFormError.story.js +0 -88
  360. package/build/stories/spec/step/features/Polling.story.js +0 -108
  361. package/build/stories/spec/step/features/RefreshAfter.story.js +0 -92
  362. package/build/stories/spec/step/features/refresh/Refresh.story.js +0 -260
  363. package/build/stories/spec/step/features/refresh/RefreshWithPersistAsync.story.js +0 -958
  364. package/build/stories/types.js +0 -1
  365. package/build/stories/utils/fixtureHttpClient.js +0 -70
  366. package/build/stories/utils/getBasicStep.js +0 -223
  367. package/build/stories/utils/mockSearchHandler.js +0 -71
  368. package/build/stories/utils/render-utils.js +0 -59
  369. package/build/stories/visual-tests/layouts/NotUsingListItem.story.js +0 -17
  370. package/build/test-utils/DynamicFlowWise.js +0 -41
  371. package/build/test-utils/DynamicFlowWiseModal.js +0 -34
  372. package/build/test-utils/NeptuneProviders.js +0 -11
  373. package/build/test-utils/component-utils.js +0 -5
  374. package/build/test-utils/dummy-native-subflows-handlers/dummySubflowHandlers.js +0 -45
  375. package/build/test-utils/dummy-native-subflows-handlers/geolocationSubflowHandler.js +0 -30
  376. package/build/test-utils/dummy-native-subflows-handlers/index.js +0 -9
  377. package/build/test-utils/dummy-native-subflows-handlers/notificationPermissionSubflowHandler.js +0 -17
  378. package/build/test-utils/fetch-utils.js +0 -47
  379. package/build/test-utils/getMergedTestRenderers.js +0 -36
  380. package/build/test-utils/getRandomId.js +0 -1
  381. package/build/test-utils/index.js +0 -3
  382. package/build/test-utils/mockIntersectionObserver.js +0 -23
  383. package/build/test-utils/openLinkInNewTab.js +0 -15
  384. package/build/test-utils/rtl-utils.js +0 -7
  385. package/build/test-utils/step-utils.js +0 -6
  386. package/build/test-utils/useSnackBar.js +0 -4
  387. package/build/test-utils/wait.js +0 -3
  388. package/build/tests/AlertLayout.test.js +0 -228
  389. package/build/tests/ArrayTuple.test.js +0 -118
  390. package/build/tests/ButtonLayout.test.js +0 -356
  391. package/build/tests/CollectionLayout.test.js +0 -722
  392. package/build/tests/CollectionLayout.v2.test.js +0 -350
  393. package/build/tests/ConstLayout.test.js +0 -95
  394. package/build/tests/DateInput.test.js +0 -190
  395. package/build/tests/DateSchema.test.js +0 -171
  396. package/build/tests/DecisionLayout.test.js +0 -146
  397. package/build/tests/DelayBehavior.test.js +0 -186
  398. package/build/tests/Download.test.js +0 -201
  399. package/build/tests/DynamicFlow.test.js +0 -147
  400. package/build/tests/External.test.js +0 -169
  401. package/build/tests/Flow.test.js +0 -328
  402. package/build/tests/FormLayout.test.js +0 -28
  403. package/build/tests/FormattedValue.test.js +0 -107
  404. package/build/tests/ImageRenderer.test.js +0 -78
  405. package/build/tests/InitialAction.test.js +0 -235
  406. package/build/tests/InitialStep.test.js +0 -168
  407. package/build/tests/InstructionsLayout.test.js +0 -45
  408. package/build/tests/ListLayout.test.js +0 -165
  409. package/build/tests/Logging.test.js +0 -53
  410. package/build/tests/ModalBehavior.test.js +0 -149
  411. package/build/tests/MoneyInput.test.js +0 -313
  412. package/build/tests/MultiUpload.test.js +0 -293
  413. package/build/tests/NativeBack.test.js +0 -267
  414. package/build/tests/NoOp.test.js +0 -194
  415. package/build/tests/OnLoad.test.js +0 -153
  416. package/build/tests/OneOfInitialisation.test.js +0 -571
  417. package/build/tests/PersistAsync.test.js +0 -687
  418. package/build/tests/Polling.test.js +0 -708
  419. package/build/tests/Prefetching.test.js +0 -229
  420. package/build/tests/RefreshAfter.test.js +0 -63
  421. package/build/tests/RefreshOnChange.ResponseHandling.test.js +0 -199
  422. package/build/tests/RefreshOnChange.test.js +0 -233
  423. package/build/tests/RefreshOnChange.with.Segmented.test.js +0 -351
  424. package/build/tests/RefreshOnChange.with.Tabs.test.js +0 -359
  425. package/build/tests/RefreshOnChangePreserve.test.js +0 -221
  426. package/build/tests/RendererProps.test.js +0 -372
  427. package/build/tests/Repeatable.test.js +0 -104
  428. package/build/tests/Rerendering.test.js +0 -67
  429. package/build/tests/ReviewLayout.test.js +0 -271
  430. package/build/tests/SchemaOnChange.test.js +0 -133
  431. package/build/tests/SchemaReferences.test.js +0 -88
  432. package/build/tests/ScrollToBottom.test.js +0 -101
  433. package/build/tests/ScrollToError.test.js +0 -359
  434. package/build/tests/ScrollToTop.test.js +0 -95
  435. package/build/tests/SegmentedControl.test.js +0 -49
  436. package/build/tests/SingleFileUpload.test.js +0 -168
  437. package/build/tests/StatusList.test.js +0 -85
  438. package/build/tests/Subflow.dynamic.test.js +0 -887
  439. package/build/tests/Subflow.native.test.js +0 -448
  440. package/build/tests/Submission.Const.test.js +0 -70
  441. package/build/tests/Submission.ResponseHandling.test.js +0 -557
  442. package/build/tests/Submission.merging.test.js +0 -202
  443. package/build/tests/Submission.test.js +0 -821
  444. package/build/tests/Tags.test.js +0 -466
  445. package/build/tests/UpdatableLayout.test.js +0 -343
  446. package/build/tests/Upsell.test.js +0 -154
  447. package/build/tests/ValidationAsync.test.js +0 -295
  448. package/build/tests/behavior/events.test.js +0 -348
  449. package/build/tests/legacy/Actions.test.js +0 -158
  450. package/build/tests/legacy/BackButton.test.js +0 -114
  451. package/build/tests/legacy/HiddenSchemas.test.js +0 -250
  452. package/build/tests/legacy/MultiSelect.test.js +0 -546
  453. package/build/tests/legacy/MultipleFileUploadSchema.test.js +0 -350
  454. package/build/tests/legacy/PersistAsync.blob-schema.test.js +0 -224
  455. package/build/tests/legacy/PersistAsync.string-schema.test.js +0 -211
  456. package/build/tests/legacy/RefreshStepOnChange.debouncing.test.js +0 -209
  457. package/build/tests/legacy/RefreshStepOnChange.test.js +0 -421
  458. package/build/tests/legacy/Search.test.js +0 -439
  459. package/build/tests/renderers/InlineAlertInSchemas.test.js +0 -82
  460. package/build/tests/renderers/MediaRenderer.test.js +0 -74
  461. package/build/tests/renderers/MultiSelectInputRendererProps.test.js +0 -58
  462. package/build/tests/renderers/SelectInputRendererProps.test.js +0 -43
  463. package/build/tests/renderers/TextInputRenderer.test.js +0 -48
  464. package/build/types.js +0 -1
  465. package/build/useDynamicFlow.js +0 -110
  466. package/build/useDynamicFlowModal.js +0 -58
  467. package/build/utils/analyse-step.js +0 -14
  468. package/build/utils/component-utils.js +0 -8
  469. package/build/utils/component-utils.test.js +0 -113
  470. package/build/utils/getScrollToTop.js +0 -12
  471. package/build/utils/normalise-flow-id.js +0 -1
  472. package/build/utils/normalise-flow-id.test.js +0 -24
  473. package/build/utils/recursiveMerge.js +0 -40
  474. package/build/utils/recursiveMerge.test.js +0 -93
  475. package/build/utils/safe-parse-link.js +0 -14
  476. package/build/utils/safe-parse-link.test.js +0 -19
  477. package/build/utils/type-utils.js +0 -22
  478. package/build/utils/type-validators.js +0 -11
  479. package/build/utils/type-validators.test.js +0 -180
  480. package/build/utils/useStableCallback.js +0 -15
@@ -1,240 +0,0 @@
1
- import { getMockHttpClient, respondWith } from '../../../../test-utils';
2
- import DynamicFlowWise from '../../../../test-utils/DynamicFlowWise';
3
- import { renderWithStep } from '../../../utils/render-utils';
4
- const getHttpClient = () => getMockHttpClient({
5
- '/submit': async (input, init) => {
6
- // console.log(input, init && JSON.parse(init.body as string));
7
- const step = getStep(`Submission Successful`, `The form was submitted with body: ${init === null || init === void 0 ? void 0 : init.body}`);
8
- return respondWith(step);
9
- },
10
- '/refresh': async () => {
11
- return respondWith(null, { status: 304 });
12
- },
13
- });
14
- export default {
15
- component: DynamicFlowWise,
16
- title: 'Spec/Schemas/Object/MoneyInput',
17
- parameters: {
18
- chromatic: { disableSnapshot: false },
19
- },
20
- };
21
- export function Basic() {
22
- return renderWithStep(getStep('Money Input', 'Basic money input: no placeholder, no default value, no model, no onChange.'), getHttpClient());
23
- }
24
- export function WithPlaceholder() {
25
- const step = getStep('Money Input', 'Money input with placeholder in the amount.');
26
- const schema = step.schemas[0];
27
- schema.properties.amount.placeholder = '9.99';
28
- return renderWithStep(step, getHttpClient());
29
- }
30
- export function WithDefaultValue() {
31
- const step = getStep('Money Input', 'Money input with default value in the amount and currency.');
32
- const schema = step.schemas[0];
33
- schema.properties.amount.default = '49.99';
34
- schema.properties.currency.default = 'GBP';
35
- return renderWithStep(step, getHttpClient());
36
- }
37
- export function WithModel() {
38
- const step = Object.assign(Object.assign({}, getStep('Money Input', 'Money input with model values for the amount and currency.')), { model: { currency: 'EUR', amount: '100.00' } });
39
- return renderWithStep(step, getHttpClient());
40
- }
41
- export function WithOnChangeInTheAmount() {
42
- const step = getStep('Money Input', 'Money input with onChange in the amount, which triggers a refresh after the debounce period.');
43
- const schema = step.schemas[0];
44
- schema.properties.amount.onChange = { type: 'refresh' };
45
- return renderWithStep(step, getHttpClient());
46
- }
47
- export function WithOnChangeInTheCurrency() {
48
- const step = getStep('Money Input', 'Money input with onChange in the currency, which triggers a refresh immediately.');
49
- const schema = step.schemas[0];
50
- schema.properties.currency.onChange = { type: 'refresh' };
51
- return renderWithStep(step, getHttpClient());
52
- }
53
- export function WithExtraConstAndHiddenProperties() {
54
- const step = getStep('Money Input', 'Money input with extra const and hidden properties in the object schema.');
55
- const schema = step.schemas[0];
56
- schema.properties.hiddenProp = {
57
- type: 'string',
58
- hidden: true,
59
- const: 'hiddenValue',
60
- };
61
- schema.properties.constProp = {
62
- const: 'constValue',
63
- };
64
- schema.properties.invalidSchema = {
65
- type: 'number', // not hidden and not const, should be ignored
66
- };
67
- step.model = { amount: '99.99', currency: 'USD' };
68
- return renderWithStep(step, getHttpClient());
69
- }
70
- export function WithValidationErrors() {
71
- const step = getStep('Money Input', 'Money input with validation errors on the amount.');
72
- step.model = { amount: '12', currency: 'EUR' };
73
- step.errors = {
74
- validation: {
75
- amount: 'This error is in the step errors object.',
76
- },
77
- };
78
- return renderWithStep(step, getHttpClient());
79
- }
80
- export function WithOnlyOneCurrencyOption() {
81
- const step = getStep('Money Input', 'Money input with only one currency option, which should render as a const field.');
82
- const schema = step.schemas[0];
83
- schema.properties.currency = {
84
- const: 'USD',
85
- title: 'USD',
86
- description: 'US Dollar',
87
- };
88
- step.model = { amount: '75.50', currency: 'USD' };
89
- return renderWithStep(step, getHttpClient());
90
- }
91
- export function WithGroupingTags() {
92
- const step = getStep('Money Input', 'Money input with grouping tags in the currency options.');
93
- const schema = step.schemas[0];
94
- const { oneOf } = schema.properties.currency;
95
- oneOf.forEach((option, index) => {
96
- const rnd = predictablyRandomNumbers[index];
97
- const constSchemaOption = option;
98
- constSchemaOption.tags = [];
99
- if (rnd < 0.7)
100
- return; // randomly skip some options
101
- if (rnd >= 0.7 && rnd < 0.8) {
102
- constSchemaOption.tags.push('recent');
103
- }
104
- if (rnd >= 0.75 && rnd < 0.85) {
105
- constSchemaOption.tags.push('popular');
106
- }
107
- if (rnd >= 0.9) {
108
- constSchemaOption.tags.push('currencies-with-account-details');
109
- }
110
- });
111
- step.model = { amount: '150', currency: 'EUR' };
112
- return renderWithStep(step, getHttpClient());
113
- }
114
- const getStep = (title, description) => ({
115
- id: 'step',
116
- title,
117
- description,
118
- layout: [
119
- {
120
- type: 'form',
121
- schemaId: '#schema',
122
- },
123
- {
124
- type: 'button',
125
- title: 'Submit',
126
- control: 'primary',
127
- action: {
128
- url: '/submit',
129
- },
130
- },
131
- ],
132
- schemas: [
133
- {
134
- $id: '#schema',
135
- type: 'object',
136
- title: 'Money Input (object schema title)',
137
- description: 'A money input with amount and currency (object schema description)',
138
- format: 'money',
139
- properties: {
140
- currency: {
141
- oneOf: [
142
- {
143
- const: 'USD',
144
- title: 'USD',
145
- description: 'US Dollar',
146
- keywords: ['American Dollar'],
147
- },
148
- {
149
- const: 'EUR',
150
- title: 'EUR',
151
- description: 'Euro',
152
- },
153
- {
154
- const: 'AUD',
155
- title: 'AUD',
156
- description: 'Australian Dollar',
157
- keywords: ['Aussie Dollar'],
158
- },
159
- {
160
- const: 'GBP',
161
- title: 'GBP',
162
- description: 'British Pound',
163
- keywords: ['Blighty'],
164
- },
165
- {
166
- const: 'JPY',
167
- title: 'JPY',
168
- description: 'Japanese Yen',
169
- keywords: ['Nippon Yen'],
170
- },
171
- {
172
- const: 'CAD',
173
- title: 'CAD',
174
- description: 'Canadian Dollar',
175
- keywords: ['Loonie'],
176
- },
177
- { const: 'CHF', title: 'CHF', description: 'Swiss Franc', keywords: ['Swissie'] },
178
- { const: 'CNY', title: 'CNY', description: 'Chinese Yuan', keywords: ['Renminbi'] },
179
- { const: 'INR', title: 'INR', description: 'Indian Rupee', keywords: ['Rupee'] },
180
- { const: 'MXN', title: 'MXN', description: 'Mexican Peso', keywords: ['Peso'] },
181
- {
182
- const: 'NZD',
183
- title: 'NZD',
184
- description: 'New Zealand Dollar',
185
- keywords: ['Kiwi Dollar'],
186
- },
187
- { const: 'ZAR', title: 'ZAR', description: 'South African Rand', keywords: ['Rand'] },
188
- { const: 'SEK', title: 'SEK', description: 'Swedish Krona', keywords: ['Krona'] },
189
- { const: 'NOK', title: 'NOK', description: 'Norwegian Krone', keywords: ['Krone'] },
190
- { const: 'DKK', title: 'DKK', description: 'Danish Krone', keywords: ['Krone'] },
191
- { const: 'BRL', title: 'BRL', description: 'Brazilian Real', keywords: ['Real'] },
192
- {
193
- const: 'SGD',
194
- title: 'SGD',
195
- description: 'Singapore Dollar',
196
- keywords: ['Sing Dollar'],
197
- },
198
- {
199
- const: 'HKD',
200
- title: 'HKD',
201
- description: 'Hong Kong Dollar',
202
- keywords: ['HK Dollar'],
203
- },
204
- { const: 'KRW', title: 'KRW', description: 'South Korean Won', keywords: ['Won'] },
205
- { const: 'TRY', title: 'TRY', description: 'Turkish Lira', keywords: ['Lira'] },
206
- {
207
- const: 'IDR',
208
- title: 'IDR',
209
- description: 'Indonesian Rupiah',
210
- keywords: ['Rupiah'],
211
- },
212
- { const: 'SAR', title: 'SAR', description: 'Saudi Riyal', keywords: ['Riyal'] },
213
- { const: 'AED', title: 'AED', description: 'Emirati Dirham', keywords: ['Dirham'] },
214
- {
215
- const: 'PLN',
216
- title: 'PLN',
217
- description: 'Polish Zloty',
218
- keywords: ['Zloty'],
219
- },
220
- {
221
- const: 'THB',
222
- title: 'THB',
223
- description: 'Thai Baht',
224
- keywords: ['Baht'],
225
- },
226
- ],
227
- },
228
- amount: { type: 'string', format: 'numeric', minLength: 5 },
229
- },
230
- displayOrder: ['currency', 'amount'],
231
- required: ['currency', 'amount'],
232
- },
233
- ],
234
- refreshUrl: '/refresh',
235
- });
236
- const predictablyRandomNumbers = [
237
- 0.25, 0.7, 0.74, 0.81, 0.87, 0.53, 0.41, 0.19, 0.18, 0.2, 0.76, 0.66, 0.52, 0.1, 0.81, 0.19, 0.19,
238
- 0.59, 0.9, 0.19, 0.28, 0.44, 0.01, 0.37, 0.12, 0.62, 0.37, 0.71, 0.07, 0.67, 0.82, 0.35, 0.81,
239
- 0.8, 0.04, 0.88, 0.99, 0.29, 0.04, 0.21, 0.46, 0.84, 0.64, 0.2, 0.02, 0.34, 0.17, 0.1, 0.91, 0.83,
240
- ];
@@ -1,55 +0,0 @@
1
- import DynamicFlowWise from '../../../../test-utils/DynamicFlowWise';
2
- import { renderWithStep } from '../../../utils/render-utils';
3
- export default {
4
- component: DynamicFlowWise,
5
- title: 'Spec/Schemas/OneOf',
6
- parameters: {
7
- chromatic: { disableSnapshot: true },
8
- },
9
- };
10
- export function AllOfAndOneOfInitialisation() {
11
- return renderWithStep(allOfAndOneOfStep);
12
- }
13
- const allOfAndOneOfStep = {
14
- id: 'step-id',
15
- title: 'Step Title',
16
- schemas: [
17
- {
18
- $id: '#root',
19
- allOf: [
20
- {
21
- type: 'object',
22
- displayOrder: ['email'],
23
- properties: { email: { type: 'string', title: 'Email' } },
24
- },
25
- {
26
- control: 'radio',
27
- oneOf: [
28
- {
29
- title: 'Iban',
30
- type: 'object',
31
- displayOrder: ['iban', 'type'],
32
- properties: { iban: { type: 'string', title: 'IBAN' }, type: { const: 'IBAN' } },
33
- },
34
- {
35
- title: 'Bic',
36
- type: 'object',
37
- displayOrder: ['bic', 'type'],
38
- properties: { bic: { type: 'string', title: 'BIC' }, type: { const: 'BIC' } },
39
- },
40
- ],
41
- },
42
- ],
43
- },
44
- ],
45
- layout: [
46
- {
47
- type: 'form',
48
- schemaId: '#root',
49
- },
50
- ],
51
- model: {
52
- email: 'marty.mcfly@wise.com',
53
- type: 'IBAN',
54
- },
55
- };
@@ -1,114 +0,0 @@
1
- import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { getMockHttpClient, respondWith } from '../../../../test-utils';
3
- import DynamicFlowWise from '../../../../test-utils/DynamicFlowWise';
4
- import { renderWithStepAndOverrides } from '../../../utils/render-utils';
5
- export default {
6
- component: DynamicFlowWise,
7
- title: 'Spec/Schemas/OneOf',
8
- parameters: {
9
- chromatic: { disableSnapshot: true },
10
- },
11
- };
12
- const httpClient = getMockHttpClient({
13
- '/submit': async () => respondWith({}, { status: 404 }),
14
- });
15
- export function SingleOptionOneOfs() {
16
- const optionSchemasByType = {
17
- object: {
18
- type: 'object',
19
- title: 'Object Schema Option',
20
- displayOrder: ['accountId'],
21
- properties: {
22
- accountId: {
23
- title: 'Account Number',
24
- type: 'string',
25
- placeholder: '12345678',
26
- },
27
- },
28
- },
29
- const: {
30
- title: 'Const Schema Option',
31
- const: 'fixedValue',
32
- layout: [
33
- {
34
- type: 'alert',
35
- markdown: 'This is a const schema with a fixed value of "fixedValue"',
36
- },
37
- ],
38
- },
39
- };
40
- const rootLevel = [true, false];
41
- const withId = [true, false];
42
- const required = [true, false];
43
- const optionSchemaType = Object.keys(optionSchemasByType);
44
- const examples = [];
45
- rootLevel.forEach((isRootLevel) => {
46
- withId.forEach((hasId) => {
47
- required.forEach((isRequired) => {
48
- optionSchemaType.forEach((optionType) => {
49
- const step = getStep(isRootLevel, isRequired, hasId, optionSchemasByType[optionType]);
50
- if (!isRequired && isRootLevel) {
51
- return null;
52
- }
53
- if (!hasId && isRootLevel) {
54
- return null;
55
- }
56
- examples.push(_jsx("div", { className: "m-b-3", children: _jsx(BeforeAndAfter, { step: step, configuration: _jsx(ConfigurationTable, { ordinal: examples.length + 1, step: step, configuration: {
57
- isRootLevel,
58
- isRequired,
59
- withId: hasId,
60
- optionType,
61
- } }) }) }, `${isRootLevel}-${isRequired}-${hasId}-${optionType}`));
62
- });
63
- });
64
- });
65
- });
66
- return examples;
67
- }
68
- const getStep = (rootLevel, required, withId, singleOption) => {
69
- const oneOfSchema = {
70
- $id: withId && rootLevel ? '#oneOfSchemaId' : undefined,
71
- title: 'One Of Schema Title',
72
- placeholder: 'Select an option',
73
- oneOf: [singleOption],
74
- // control: 'tab',
75
- };
76
- const objectSchemaWrapper = {
77
- type: 'object',
78
- $id: '#objectSchemaWrapper',
79
- title: 'Object Schema Wrapper Title',
80
- displayOrder: ['childSchema'],
81
- properties: {
82
- childSchema: oneOfSchema,
83
- },
84
- required: required ? ['childSchema'] : [],
85
- };
86
- return {
87
- id: 'step-id',
88
- title: 'Step Title',
89
- schemas: [rootLevel ? oneOfSchema : objectSchemaWrapper],
90
- layout: [
91
- {
92
- type: 'form',
93
- schemaId: rootLevel ? '#oneOfSchemaId' : '#objectSchemaWrapper',
94
- },
95
- {
96
- type: 'button',
97
- title: 'Submit',
98
- behavior: { type: 'action', action: { url: '/submit' } },
99
- },
100
- ],
101
- };
102
- };
103
- function ConfigurationTable({ configuration, ordinal, step, }) {
104
- return (_jsxs(_Fragment, { children: [_jsxs("h4", { children: ["Configuration ", String(ordinal)] }), _jsxs("ul", { style: { paddingLeft: '16px', marginBottom: '4px' }, children: [_jsxs("li", { children: ["OneOf is at ", _jsxs("strong", { children: ["root level: ", configuration.isRootLevel ? 'Yes' : 'No'] })] }), _jsxs("li", { children: ["OneOf is ", _jsxs("strong", { children: ["required: ", configuration.isRequired ? 'Yes' : 'No'] })] }), _jsxs("li", { children: ["OneOf has ", _jsxs("strong", { children: ["$id: ", configuration.withId ? 'Yes' : 'No'] })] }), _jsxs("li", { children: ["Option Schema Type: ", _jsx("strong", { children: configuration.optionType })] })] }), _jsxs("details", { children: [_jsx("summary", { children: "Step JSON" }), _jsx("pre", { children: JSON.stringify(step, null, 2) })] })] }));
105
- }
106
- function BeforeAndAfter({ configuration, step }) {
107
- return (_jsxs("div", { style: { display: 'flex', gap: '16px' }, children: [_jsx("div", { style: { flex: 1, padding: '8px' }, children: configuration }), _jsxs("div", { style: { flex: 2, border: '1px dashed #999', borderRadius: '8px', padding: '8px' }, children: [_jsx("strong", { children: "Before" }), _jsx("br", {}), renderWithStepAndOverrides(step, {
108
- httpClient,
109
- features: { bugfix: false },
110
- })] }), _jsxs("div", { style: { flex: 2, border: '1px dashed #999', borderRadius: '8px', padding: '8px' }, children: [_jsx("strong", { children: "After" }), _jsx("br", {}), renderWithStepAndOverrides(step, {
111
- httpClient,
112
- features: { bugfix: true },
113
- })] })] }));
114
- }
@@ -1,38 +0,0 @@
1
- import DynamicFlowWise from '../../../../test-utils/DynamicFlowWise';
2
- import { renderWithStep } from '../../../utils/render-utils';
3
- export default {
4
- component: DynamicFlowWise,
5
- title: 'Spec/Schemas/String/SSN Input',
6
- parameters: {
7
- chromatic: { disableSnapshot: false },
8
- },
9
- };
10
- const step = {
11
- id: 'ssn-input',
12
- title: 'Verify your identity',
13
- schemas: [
14
- {
15
- $id: '#identity',
16
- type: 'object',
17
- displayOrder: ['ssn'],
18
- required: ['ssn'],
19
- properties: {
20
- ssn: {
21
- type: 'string',
22
- title: 'Social Security number',
23
- description: 'Enter your 9-digit Social Security number.',
24
- control: 'ssn-input',
25
- displayFormat: '***-**-****',
26
- },
27
- },
28
- },
29
- ],
30
- layout: [
31
- { type: 'form', schemaId: '#identity' },
32
- { type: 'button', action: { url: '/submit' }, title: 'Submit' },
33
- ],
34
- model: { ssn: '123456789' },
35
- };
36
- export const SsnInput = {
37
- render: () => renderWithStep(step),
38
- };
@@ -1,110 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { FlowNavigation } from '@transferwise/components';
3
- import { ThemeProvider } from '@wise/components-theming';
4
- import { action } from 'storybook/actions';
5
- import { respondWith } from '../../../test-utils';
6
- import DynamicFlowWise from '../../../test-utils/DynamicFlowWise';
7
- export default {
8
- component: DynamicFlowWise,
9
- title: 'Spec/Step/Controls',
10
- parameters: {
11
- layout: 'fullscreen',
12
- },
13
- };
14
- export function Splash() {
15
- return render('splash');
16
- }
17
- export function SplashCelebration() {
18
- return render('splash-celebration');
19
- }
20
- export function SplashInteractive() {
21
- return (_jsx(ThemeProvider, { theme: "personal", className: "animate-theme", children: _jsxs("div", { style: {
22
- width: '100%',
23
- height: '100vh',
24
- }, children: [_jsx(FlowNavigation, { steps: [], onClose: () => { } }), _jsx("div", { style: {
25
- maxWidth: '546px',
26
- margin: 'auto',
27
- paddingTop: '48px',
28
- }, children: _jsx(DynamicFlowWise, { flowId: "splash", httpClient: async (input) => {
29
- if (input === '/continue') {
30
- return respondWith(step('splash-celebration'));
31
- }
32
- return respondWith({
33
- id: 'next',
34
- title: 'This is the step after the splash',
35
- description: 'The theme should be reset to personal',
36
- layout: [],
37
- schemas: [],
38
- });
39
- }, initialStep: {
40
- title: 'Click the button to continue',
41
- id: 'step',
42
- layout: [
43
- {
44
- type: 'button',
45
- title: 'Continue',
46
- behavior: {
47
- type: 'action',
48
- action: {
49
- url: '/continue',
50
- },
51
- },
52
- },
53
- ],
54
- schemas: [],
55
- }, onCompletion: action('onCompletion'), onEvent: action('onEvent'), onError: (error) => {
56
- action('onError');
57
- console.error(error);
58
- }, onLog: action('onLog') }) })] }) }));
59
- }
60
- SplashInteractive.parameters = {
61
- chromatic: { disableSnapshot: true },
62
- };
63
- const render = (control) => {
64
- return (_jsx("div", { style: {
65
- width: '60%',
66
- margin: 'auto',
67
- }, children: _jsx(DynamicFlowWise, { flowId: "splash", httpClient: fetch, initialStep: step(control), onCompletion: action('onCompletion'), onEvent: action('onEvent'), onError: (error) => {
68
- action('onError');
69
- console.error(error);
70
- }, onLog: action('onLog') }) }));
71
- };
72
- const step = (control) => ({
73
- id: 'splash',
74
- title: 'Step title',
75
- description: 'Step description',
76
- layout: [
77
- {
78
- type: 'image',
79
- content: {
80
- accessibilityDescription: 'plane',
81
- uri: 'urn:wise:illustrations:plane',
82
- },
83
- },
84
- {
85
- type: 'heading',
86
- control: 'display',
87
- text: 'Almost there',
88
- align: 'center',
89
- margin: 'lg',
90
- },
91
- {
92
- type: 'markdown',
93
- content: "Your money should arrive **by Wednesday**. We'll keep you posted.",
94
- align: 'center',
95
- margin: 'lg',
96
- },
97
- {
98
- type: 'button',
99
- title: 'Track your transfer',
100
- behavior: {
101
- type: 'action',
102
- action: {
103
- url: '/submit',
104
- },
105
- },
106
- },
107
- ],
108
- schemas: [],
109
- control,
110
- });
@@ -1,58 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Layout } from '@transferwise/navigation-ui';
3
- import { action } from 'storybook/actions';
4
- import { DynamicFlowWiseModal } from '../../../test-utils/DynamicFlowWiseModal';
5
- export default {
6
- component: DynamicFlowWiseModal,
7
- title: 'Spec/Step/DFModal',
8
- parameters: {
9
- layout: 'fullscreen',
10
- },
11
- };
12
- const httpClient = async (input, init) => {
13
- action('httpClient')(input, init);
14
- const url = typeof input === 'string' ? input : '';
15
- const match = /\/submit\/(\d+)/.exec(url);
16
- if (!match) {
17
- return new Response('Not Found', { status: 404 });
18
- }
19
- const index = match[1];
20
- action('httpClient response index')(index);
21
- return new Response(JSON.stringify(getStep(index)));
22
- };
23
- export function DFModalExample() {
24
- return (_jsx(Layout, { children: _jsx(DynamicFlowWiseModal, { flowId: "df-modal-story", initialStep: getStep('1'), features: {
25
- nativeBack: true,
26
- hideStepTitle: false,
27
- }, httpClient: httpClient, onCompletion: action('onCompletion'), onAnalytics: action('onAnalytics'), onCancellation: action('onCancellation'), onEvent: action('onEvent'), onError: (error) => {
28
- action('onError');
29
- console.error(error);
30
- }, onLog: action('onLog') }) }));
31
- }
32
- const getStep = (index) => {
33
- return {
34
- id: 'step',
35
- title: `Step title ${index}`,
36
- description: 'This is a description of the step.',
37
- schemas: [],
38
- layout: [
39
- {
40
- type: 'markdown',
41
- content: 'The title is now missing from the layout, and only visible in the modal header. This is because we are using the hideStepTitle to hide it.',
42
- align: 'left',
43
- margin: 'xl',
44
- },
45
- {
46
- type: 'button',
47
- title: 'Continue',
48
- behavior: {
49
- type: 'action',
50
- action: {
51
- url: `/submit/${Number(index) + 1}`,
52
- },
53
- },
54
- },
55
- ],
56
- tags: ['root-screen'],
57
- };
58
- };