@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,28 +0,0 @@
1
- import { isFile, isString } from '../../../../utils/type-validators';
2
- import { createUploadInputComponent } from '../../../components/UploadInputComponent';
3
- import { base64dataUrltoFile } from '../../../components/utils/file-utils';
4
- import { getSchemaOnChange } from '../../../features/schema-on-change/getSchemaOnChange';
5
- import { getFileSizeCheck, getFileTypeCheck, getRequiredCheck, } from '../../../features/validation/value-checks';
6
- import { getAutocompleteString } from '../../utils/getAutocompleteString';
7
- import { mapCommonSchemaProps } from '../utils/mapCommonSchemaProps';
8
- export const stringSchemaToUploadInputComponent = (schemaMapperProps, mapperProps) => {
9
- var _a;
10
- const { schema, localValue, model, required = false, onValueChange } = schemaMapperProps;
11
- const { accepts, autocompleteHint, cameraConfig, hidden, maxSize, source, validationMessages } = schema;
12
- const { getErrorMessageFunctions, onComponentUpdate, onBehavior } = mapperProps;
13
- const errorMessageFunctions = getErrorMessageFunctions(validationMessages);
14
- const validLocalValue = isFile(localValue) ? localValue : null;
15
- const value = (_a = getFileFromModel(model)) !== null && _a !== void 0 ? _a : validLocalValue;
16
- const checks = hidden
17
- ? []
18
- : [
19
- getRequiredCheck(required, errorMessageFunctions),
20
- getFileSizeCheck(schema, errorMessageFunctions),
21
- getFileTypeCheck(schema, errorMessageFunctions),
22
- ];
23
- return createUploadInputComponent(Object.assign(Object.assign({}, mapCommonSchemaProps(schemaMapperProps)), { accepts, autoComplete: getAutocompleteString(autocompleteHint), cameraConfig,
24
- checks, format: 'base64', maxSize,
25
- source,
26
- value, schemaOnChange: getSchemaOnChange(schema, onBehavior), onValueChange }), onComponentUpdate);
27
- };
28
- const getFileFromModel = (model) => isString(model) ? base64dataUrltoFile(model, '') : null;
@@ -1,16 +0,0 @@
1
- import { vi } from 'vitest';
2
- import { getRandomId } from '../../../../test-utils/getRandomId';
3
- import { mockErrorMessageFunctions } from '../../../features/validation/spec-utils';
4
- import { FeatureFlags } from '../../utils/FeatureFlags';
5
- import { makeRequestCache } from '../../../features/prefetch/request-cache';
6
- export const getStepMapperProps = () => (Object.assign(Object.assign({}, getMockMapperProps()), { uid: 'root', flowRequestCache: makeRequestCache(), etag: null, loadingState: 'idle', trackEvent: vi.fn(), onPoll: vi.fn() }));
7
- export const getMockMapperProps = (mapperProps = {}) => (Object.assign({ step: {}, stepLocalValue: null, features: new FeatureFlags({}), onComponentUpdate: vi.fn(), onBehavior: vi.fn(), onLink: vi.fn(), stepEventSubscriber: { addEventListener: vi.fn(), removeEventListener: vi.fn() }, getErrorMessageFunctions: vi.fn().mockReturnValue(mockErrorMessageFunctions), trackEvent: vi.fn(), logEvent: vi.fn(), httpClient: vi.fn(), registerSubmissionBehavior: vi.fn() }, mapperProps));
8
- export const getMockSchemaMapperProps = (schemaMapperProps) => (Object.assign({ uid: getRandomId(), localValue: null, model: null, required: false, validationErrors: null, onValueChange: vi.fn() }, schemaMapperProps));
9
- export const getMockRendererMapperProps = () => ({
10
- render: vi.fn(),
11
- stepLoadingState: 'idle',
12
- features: {},
13
- trackEvent: vi.fn(),
14
- httpClient: vi.fn(),
15
- });
16
- export const getUpdateFunctionMock = (getComponent) => vi.fn(() => { });
@@ -1 +0,0 @@
1
- export {};
@@ -1,19 +0,0 @@
1
- import { getPerformPersistAsync } from '../../../features/persistAsync/getPerformPersistAsync';
2
- export const getPerformPersistAsyncFn = (schema, persistAsyncConfig, mapperProps) => {
3
- const { getErrorMessageFunctions, httpClient, trackEvent, logEvent } = mapperProps;
4
- const { $id, analyticsId } = schema;
5
- const validationMessages = schemaHasValidationMessages(schema)
6
- ? schema.validationMessages
7
- : undefined;
8
- const errorMessageFunctions = getErrorMessageFunctions(validationMessages);
9
- const persistAsyncError = errorMessageFunctions.genericError();
10
- return getPerformPersistAsync({
11
- genericErrorMessage: persistAsyncError,
12
- httpClient,
13
- logEvent,
14
- persistAsyncConfig,
15
- schemaId: analyticsId !== null && analyticsId !== void 0 ? analyticsId : $id,
16
- trackEvent,
17
- });
18
- };
19
- const schemaHasValidationMessages = (schema) => Boolean('validationMessages' in schema && schema.validationMessages);
@@ -1,23 +0,0 @@
1
- import { getInitialValidationAsyncState } from '../../../features/validationAsync/getInitialValidationAsyncState';
2
- import { getPerformValidationAsync } from '../../../features/validationAsync/getPerformValidationAsync';
3
- export const getValidationAsyncInitialState = (schemaMapperProps, mapperProps) => {
4
- const performValidationAsync = getValidationAsyncFn(schemaMapperProps, mapperProps);
5
- const validationAsyncState = getInitialValidationAsyncState();
6
- return { performValidationAsync, validationAsyncState };
7
- };
8
- const getValidationAsyncFn = (schemaMapperProps, mapperProps) => {
9
- const { schema } = schemaMapperProps;
10
- const { trackEvent } = mapperProps;
11
- if (!schemaHasValidationAsync(schema)) {
12
- return undefined;
13
- }
14
- const { $id, analyticsId, validationAsync } = schema;
15
- const { httpClient } = mapperProps;
16
- return getPerformValidationAsync({
17
- httpClient,
18
- validationAsyncConfig: validationAsync,
19
- schemaId: analyticsId !== null && analyticsId !== void 0 ? analyticsId : $id,
20
- trackEvent,
21
- });
22
- };
23
- const schemaHasValidationAsync = (schema) => Boolean('validationAsync' in schema && schema.validationAsync);
@@ -1,16 +0,0 @@
1
- import { isString } from '../../../../utils/type-validators';
2
- import { getSummariser } from '../../../features/summary/summary-utils';
3
- import { mapInlineAlert, mapSchemaAlert } from '../../utils/utils';
4
- import { getDomainLayerMedia } from '../../utils/media-utils';
5
- export const mapCommonSchemaProps = (schemaMapperProps) => {
6
- var _a;
7
- const { uid, schemaId, schema, required, validationErrors, onPersistAsync } = schemaMapperProps;
8
- const { $id, analyticsId, control, description, icon, image, keywords, media, tags, title, hidden, } = schema;
9
- return Object.assign(Object.assign(Object.assign(Object.assign({ uid, id: $id !== null && $id !== void 0 ? $id : uid, schemaId, analyticsId: (_a = analyticsId !== null && analyticsId !== void 0 ? analyticsId : $id) !== null && _a !== void 0 ? _a : '', control,
10
- description, disabled: schemaHasDisabled(schema) ? schema.disabled : false, errors: isString(validationErrors) ? [validationErrors] : undefined, hidden: Boolean(hidden), keywords, media: getDomainLayerMedia({ icon, image, media }), required: Boolean(required), tags,
11
- title,
12
- onPersistAsync, summariser: getSummariser(schema) }, (schemaHasHelp(schema) ? { help: schema.help.markdown } : {})), (schemaHasPlaceholder(schema) ? { placeholder: schema.placeholder } : {})), (schema.alert ? { alert: mapSchemaAlert(schema.alert) } : {})), (schema.inlineAlert ? { inlineAlert: mapInlineAlert(schema.inlineAlert) } : {}));
13
- };
14
- const schemaHasDisabled = (schema) => Boolean('disabled' in schema && schema.disabled !== undefined);
15
- const schemaHasHelp = (schema) => Boolean('help' in schema && schema.help);
16
- const schemaHasPlaceholder = (schema) => Boolean('placeholder' in schema && schema.placeholder);
@@ -1 +0,0 @@
1
- export {};
@@ -1,22 +0,0 @@
1
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
- if (kind === "m") throw new TypeError("Private method is not writable");
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
- };
7
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
- };
12
- var _FeatureFlags_features;
13
- export class FeatureFlags {
14
- constructor(features) {
15
- _FeatureFlags_features.set(this, void 0);
16
- __classPrivateFieldSet(this, _FeatureFlags_features, features, "f");
17
- }
18
- isEnabled(featureName) {
19
- return __classPrivateFieldGet(this, _FeatureFlags_features, "f")[featureName] != null && __classPrivateFieldGet(this, _FeatureFlags_features, "f")[featureName] !== false;
20
- }
21
- }
22
- _FeatureFlags_features = new WeakMap();
@@ -1,52 +0,0 @@
1
- import { safeParseLink } from '../../../utils/safe-parse-link';
2
- export const getDomainLayerBehavior = ({ action, behavior: specBehavior }, stepActions, registerSubmissionBehavior) => {
3
- if (specBehavior) {
4
- const behavior = normaliseBehavior(specBehavior, stepActions);
5
- registerSubmissionBehavior === null || registerSubmissionBehavior === void 0 ? void 0 : registerSubmissionBehavior(behavior);
6
- return behavior;
7
- }
8
- if (action) {
9
- const behavior = actionToBehavior(action, stepActions);
10
- registerSubmissionBehavior === null || registerSubmissionBehavior === void 0 ? void 0 : registerSubmissionBehavior(behavior);
11
- return behavior;
12
- }
13
- return { type: 'none', track: false };
14
- };
15
- export const normaliseBehavior = (behavior, stepActions) => {
16
- // New "discriminated union" behavior type
17
- if ('type' in behavior) {
18
- if (behavior.type === 'subflow') {
19
- return Object.assign(Object.assign({}, behavior), { track: true, onCompletion: behavior.onCompletion
20
- ? normaliseBehavior(behavior.onCompletion, stepActions)
21
- : undefined, onError: behavior.onError ? normaliseBehavior(behavior.onError, stepActions) : undefined });
22
- }
23
- if (behavior.type === 'delay') {
24
- return Object.assign(Object.assign({}, behavior), { behavior: normaliseBehavior(behavior.behavior, stepActions), track: true });
25
- }
26
- if (behavior.type === 'link') {
27
- return Object.assign(Object.assign({}, behavior), { type: 'link', url: safeParseLink(behavior.url), track: true });
28
- }
29
- return Object.assign(Object.assign({}, behavior), { track: true });
30
- }
31
- // Deprecated "container" behavior type
32
- if ('action' in behavior && behavior.action) {
33
- return actionToBehavior(behavior.action, stepActions);
34
- }
35
- if ('link' in behavior && behavior.link) {
36
- return { type: 'link', url: safeParseLink(behavior.link.url), track: true };
37
- }
38
- return { type: 'none', track: false };
39
- };
40
- const actionToBehavior = (action, stepActions) => ({
41
- type: 'action',
42
- action: inlineAction(action, stepActions),
43
- track: false,
44
- });
45
- export const inlineAction = (action, stepActions = []) => action.$ref ? Object.assign(Object.assign({}, getActionByReference(action.$ref, stepActions)), action) : action;
46
- const getActionByReference = ($ref, actions = []) => {
47
- const action = actions.find((a) => a.$id === $ref);
48
- if (!action) {
49
- throw new Error('Action reference not found in actions array.');
50
- }
51
- return action;
52
- };
@@ -1,24 +0,0 @@
1
- import { getDomainLayerBehavior } from './behavior-utils';
2
- import { getHrefWithTracking } from './getHrefWithTracking';
3
- import { mapLegacyContext } from './legacy-utils';
4
- export function getDomainLayerCallToAction(cta, mapperProps) {
5
- var _a, _b;
6
- if (!cta) {
7
- return undefined;
8
- }
9
- const { step, onBehavior, trackEvent, registerSubmissionBehavior } = mapperProps;
10
- const stepActions = (_a = step.actions) !== null && _a !== void 0 ? _a : [];
11
- const behavior = getDomainLayerBehavior(cta, stepActions, registerSubmissionBehavior);
12
- const isLink = behavior.type === 'link';
13
- return {
14
- type: behavior.type,
15
- title: (_b = cta.title) !== null && _b !== void 0 ? _b : '',
16
- context: cta.context ? mapLegacyContext(cta.context) : undefined,
17
- accessibilityDescription: cta.accessibilityDescription,
18
- href: isLink ? behavior.url : undefined,
19
- hrefWithTracking: getHrefWithTracking({ behavior, onBehavior, trackEvent }),
20
- onClick: () => {
21
- void onBehavior(behavior);
22
- },
23
- };
24
- }
@@ -1,76 +0,0 @@
1
- export const getAutocompleteString = (hints) => {
2
- if (!hints || hints.length === 0) {
3
- return 'off';
4
- }
5
- const validHints = hints.filter((hint) => autocompleteTokenMap[hint]);
6
- if (validHints.length === 0) {
7
- return 'off';
8
- }
9
- return validHints.map((hint) => autocompleteTokenMap[hint]).join(' ');
10
- };
11
- const autocompleteTokenMap = {
12
- on: 'on',
13
- name: 'name',
14
- 'name-prefix': 'honorific-prefix',
15
- 'given-name': 'given-name',
16
- 'additional-name': 'additional-name',
17
- 'family-name': 'family-name',
18
- 'name-suffix': 'honorific-suffix',
19
- nickname: 'nickname',
20
- email: 'email',
21
- // Web doesn't have a specific mapping for new username, but this is semantically close enough
22
- 'new-username': 'username',
23
- username: 'username',
24
- 'new-password': 'new-password',
25
- password: 'current-password',
26
- 'one-time-code': 'one-time-code',
27
- 'job-title': 'organization-title',
28
- 'organization-name': 'organization',
29
- 'full-street-address': 'street-address',
30
- 'street-address-line-1': 'address-line1',
31
- 'street-address-line-2': 'address-line2',
32
- 'street-address-line-3': 'address-line3',
33
- 'address-level-1': 'address-level1',
34
- 'address-level-2': 'address-level2',
35
- 'address-level-3': 'address-level3',
36
- 'address-level-4': 'address-level4',
37
- 'country-code': 'country',
38
- 'country-name': 'country-name',
39
- 'postal-code': 'postal-code',
40
- 'credit-card-name': 'cc-name',
41
- 'credit-card-given-name': 'cc-given-name',
42
- 'credit-card-middle-name': 'cc-additional-name',
43
- 'credit-card-family-name': 'cc-family-name',
44
- 'credit-card-number': 'cc-number',
45
- 'credit-card-expiration': 'cc-exp',
46
- 'credit-card-expiration-month': 'cc-exp-month',
47
- 'credit-card-expiration-year': 'cc-exp-year',
48
- 'credit-card-security-code': 'cc-csc',
49
- 'credit-card-type': 'cc-type',
50
- 'transaction-currency': 'transaction-currency',
51
- 'transaction-amount': 'transaction-amount',
52
- language: 'language',
53
- birthdate: 'bday',
54
- 'birthdate-day': 'bday-day',
55
- 'birthdate-month': 'bday-month',
56
- 'birthdate-year': 'bday-year',
57
- gender: 'sex',
58
- 'phone-number': 'tel',
59
- 'phone-country-code': 'tel-country-code',
60
- 'phone-national': 'tel-national',
61
- 'phone-area-code': 'tel-area-code',
62
- 'phone-local': 'tel-local',
63
- 'phone-local-prefix': 'tel-local-prefix',
64
- 'phone-local-suffix': 'tel-local-suffix',
65
- 'phone-extension': 'tel-extension',
66
- url: 'url',
67
- photo: 'photo',
68
- impp: 'impp',
69
- shipping: 'shipping',
70
- billing: 'billing',
71
- home: 'home',
72
- work: 'work',
73
- mobile: 'mobile',
74
- fax: 'fax',
75
- pager: 'pager',
76
- };
@@ -1,21 +0,0 @@
1
- import { getAutocompleteString } from './getAutocompleteString';
2
- describe('getAutocompleteString', () => {
3
- it('should return "off" if no hints are provided', () => {
4
- expect(getAutocompleteString(undefined)).toBe('off');
5
- expect(getAutocompleteString([])).toBe('off');
6
- });
7
- it('should return a string for valid hints', () => {
8
- expect(getAutocompleteString(['name-prefix'])).toBe('honorific-prefix');
9
- });
10
- it('should return a space delimited, concatenated string for multiple valid hints', () => {
11
- expect(getAutocompleteString(['name', 'billing'])).toBe('name billing');
12
- });
13
- it('should discard invalid hints', () => {
14
- // @ts-expect-error testing an invalid hint
15
- expect(getAutocompleteString(['name', 'cats'])).toBe('name');
16
- });
17
- it('should return "off" if no valid hints are provided', () => {
18
- // @ts-expect-error testing an invalid hint
19
- expect(getAutocompleteString(['cats'])).toBe('off');
20
- });
21
- });
@@ -1,16 +0,0 @@
1
- export const getHrefWithTracking = ({ behavior, onBehavior, trackEvent, }) => {
2
- if (behavior.type === 'link' && behavior.url) {
3
- return () => ({
4
- href: behavior.url,
5
- target: '_blank',
6
- onClick: () => {
7
- trackEvent('Behavior Triggered', Object.assign(Object.assign({}, behavior.analytics), { behaviorType: behavior.type }));
8
- },
9
- });
10
- }
11
- return () => ({
12
- onClick: () => {
13
- void onBehavior(behavior);
14
- },
15
- });
16
- };
@@ -1,38 +0,0 @@
1
- export const groupLayoutByPinned = (layouts) => {
2
- return layouts.reduce(groupLayout, { pinned: [], nonPinned: [] });
3
- };
4
- const groupLayout = (acc, layout) => {
5
- if (layout.type === 'button' && layout.pinOrder !== undefined) {
6
- return {
7
- pinned: [...acc.pinned, layout],
8
- nonPinned: acc.nonPinned,
9
- };
10
- }
11
- if (hasColumns(layout)) {
12
- const leftChildren = groupLayoutByPinned(layout.left);
13
- const rightChildren = groupLayoutByPinned(layout.right);
14
- return {
15
- pinned: [...acc.pinned, ...leftChildren.pinned, ...rightChildren.pinned],
16
- nonPinned: [
17
- ...acc.nonPinned,
18
- Object.assign(Object.assign({}, layout), { left: leftChildren.nonPinned, right: rightChildren.nonPinned }),
19
- ],
20
- };
21
- }
22
- if (hasChildren(layout)) {
23
- const childComponents = groupLayoutByPinned(layout.components);
24
- return {
25
- pinned: [...acc.pinned, ...childComponents.pinned],
26
- nonPinned: [
27
- ...acc.nonPinned,
28
- Object.assign(Object.assign({}, layout), { components: childComponents.nonPinned }),
29
- ],
30
- };
31
- }
32
- return {
33
- pinned: [...acc.pinned],
34
- nonPinned: [...acc.nonPinned, layout],
35
- };
36
- };
37
- const hasChildren = (component) => 'components' in component;
38
- const hasColumns = (component) => 'right' in component && 'left' in component;
@@ -1,166 +0,0 @@
1
- import { groupLayoutByPinned } from './groupLayoutByPinned';
2
- describe('groupLayoutByPinned', () => {
3
- it('should handle empty layouts array', () => {
4
- const result = groupLayoutByPinned([]);
5
- expect(result.pinned).toEqual([]);
6
- expect(result.nonPinned).toEqual([]);
7
- });
8
- it('should leave unpinned layouts as is', () => {
9
- const layouts = [
10
- { type: 'button' },
11
- { type: 'heading', text: 'Heading' },
12
- { type: 'paragraph', text: 'Paragraph' },
13
- {
14
- type: 'columns',
15
- left: [
16
- { type: 'button' },
17
- { type: 'heading', text: 'Heading' },
18
- { type: 'paragraph', text: 'Paragraph' },
19
- ],
20
- right: [
21
- { type: 'button' },
22
- { type: 'heading', text: 'Heading' },
23
- { type: 'paragraph', text: 'Paragraph' },
24
- ],
25
- },
26
- ];
27
- const result = groupLayoutByPinned(layouts);
28
- expect(result.pinned).toEqual([]);
29
- expect(result.nonPinned).toEqual(layouts);
30
- });
31
- it('should group layouts by pinned', () => {
32
- const layouts = [
33
- { type: 'button', pinOrder: 1 },
34
- { type: 'button', pinOrder: 2 },
35
- { type: 'button' },
36
- ];
37
- const result = groupLayoutByPinned(layouts);
38
- expect(result.pinned).toEqual([
39
- { type: 'button', pinOrder: 1 },
40
- { type: 'button', pinOrder: 2 },
41
- ]);
42
- expect(result.nonPinned).toEqual([{ type: 'button' }]);
43
- });
44
- it('should group layouts by pinned in nested layout', () => {
45
- const layouts = [
46
- {
47
- type: 'columns',
48
- left: [
49
- {
50
- type: 'button',
51
- pinOrder: 1,
52
- },
53
- {
54
- type: 'heading',
55
- text: 'Money for here, there and everywhere',
56
- },
57
- {
58
- type: 'button',
59
- pinOrder: 2,
60
- },
61
- ],
62
- right: [
63
- {
64
- type: 'paragraph',
65
- text: "Sending money shouldn't cost the earth. That's why we charge you as little as possible when you transfer and exchange money internationally – you can save up to 9x compared to UK high street banks.",
66
- },
67
- {
68
- type: 'button',
69
- pinOrder: 3,
70
- },
71
- ],
72
- },
73
- { type: 'button' },
74
- ];
75
- const result = groupLayoutByPinned(layouts);
76
- expect(result.pinned).toEqual([
77
- { type: 'button', pinOrder: 1 },
78
- { type: 'button', pinOrder: 2 },
79
- { type: 'button', pinOrder: 3 },
80
- ]);
81
- expect(result.nonPinned).toEqual([
82
- {
83
- type: 'columns',
84
- left: [
85
- {
86
- type: 'heading',
87
- text: 'Money for here, there and everywhere',
88
- },
89
- ],
90
- right: [
91
- {
92
- type: 'paragraph',
93
- text: "Sending money shouldn't cost the earth. That's why we charge you as little as possible when you transfer and exchange money internationally – you can save up to 9x compared to UK high street banks.",
94
- },
95
- ],
96
- },
97
- { type: 'button' },
98
- ]);
99
- });
100
- it('should handle layouts with child components', () => {
101
- const layouts = [
102
- {
103
- type: 'section',
104
- title: 'Container',
105
- components: [
106
- { type: 'button', pinOrder: 0 },
107
- { type: 'paragraph', text: 'Some text' },
108
- { type: 'button', pinOrder: 1 },
109
- ],
110
- },
111
- { type: 'button' },
112
- ];
113
- const result = groupLayoutByPinned(layouts);
114
- expect(result.pinned).toEqual([
115
- { type: 'button', pinOrder: 0 },
116
- { type: 'button', pinOrder: 1 },
117
- ]);
118
- expect(result.nonPinned).toEqual([
119
- {
120
- type: 'section',
121
- title: 'Container',
122
- components: [{ type: 'paragraph', text: 'Some text' }],
123
- },
124
- { type: 'button' },
125
- ]);
126
- });
127
- it('should handle mixed nested structures', () => {
128
- const layouts = [
129
- {
130
- type: 'columns',
131
- left: [
132
- {
133
- type: 'section',
134
- title: 'Left Container',
135
- components: [
136
- { type: 'button', pinOrder: 1 },
137
- { type: 'paragraph', text: 'Left text' },
138
- ],
139
- },
140
- ],
141
- right: [
142
- { type: 'button', pinOrder: 2 },
143
- { type: 'paragraph', text: 'Right paragraph' },
144
- ],
145
- },
146
- ];
147
- const result = groupLayoutByPinned(layouts);
148
- expect(result.pinned).toEqual([
149
- { type: 'button', pinOrder: 1 },
150
- { type: 'button', pinOrder: 2 },
151
- ]);
152
- expect(result.nonPinned).toEqual([
153
- {
154
- type: 'columns',
155
- left: [
156
- {
157
- type: 'section',
158
- title: 'Left Container',
159
- components: [{ type: 'paragraph', text: 'Left text' }],
160
- },
161
- ],
162
- right: [{ type: 'paragraph', text: 'Right paragraph' }],
163
- },
164
- ]);
165
- });
166
- });
@@ -1,6 +0,0 @@
1
- export const mapSpecImage = (image) => { var _a, _b, _c; return image
2
- ? {
3
- uri: (_b = (_a = image.uri) !== null && _a !== void 0 ? _a : image.url) !== null && _b !== void 0 ? _b : '',
4
- accessibilityDescription: (_c = image.accessibilityDescription) !== null && _c !== void 0 ? _c : image.text,
5
- }
6
- : undefined; };
@@ -1,11 +0,0 @@
1
- /**
2
- * Normalizes the margin of the last layout component in the container by removing its margin if it is not explicitly set.
3
- * @param container The array of layout components.
4
- * @returns The array of layout components with the last component's margin normalized if needed.
5
- */
6
- export const normaliseMarginInLastComponent = (container) => {
7
- return container.map((component, index) => {
8
- const shouldRemoveMargin = index === container.length - 1 && component.margin === undefined;
9
- return shouldRemoveMargin ? Object.assign(Object.assign({}, component), { margin: 'xs' }) : component;
10
- });
11
- };
@@ -1,49 +0,0 @@
1
- export const mapLegacyContext = (context) => {
2
- switch (context) {
3
- case 'success':
4
- return 'positive';
5
- case 'failure':
6
- return 'negative';
7
- case 'info':
8
- case 'primary':
9
- return 'neutral';
10
- default:
11
- return context;
12
- }
13
- };
14
- export const mapLegacyBias = (bias) => {
15
- switch (bias) {
16
- case 'left':
17
- return 'start';
18
- case 'right':
19
- return 'end';
20
- default:
21
- return bias;
22
- }
23
- };
24
- export const mapLegacyAlign = (align) => {
25
- switch (align) {
26
- case 'left':
27
- return 'start';
28
- case 'right':
29
- return 'end';
30
- default:
31
- return align;
32
- }
33
- };
34
- const legacyActionTypeToContext = {
35
- positive: 'positive',
36
- negative: 'negative',
37
- primary: 'neutral',
38
- secondary: 'neutral',
39
- link: 'neutral',
40
- };
41
- export const mapLegacyActionTypeToContext = (type) => type && type in legacyActionTypeToContext ? legacyActionTypeToContext[type] : 'neutral';
42
- const legacyActionTypeToControl = {
43
- primary: 'primary',
44
- secondary: 'secondary',
45
- link: 'tertiary',
46
- positive: 'primary',
47
- negative: 'primary',
48
- };
49
- export const mapLegacyActionTypeToControl = (type) => type && type in legacyActionTypeToControl ? legacyActionTypeToControl[type] : 'secondary';
@@ -1,14 +0,0 @@
1
- import { mapSpecImage } from './image';
2
- export const getDomainLayerMedia = ({ icon, image, media }) => {
3
- if (media) {
4
- return media;
5
- }
6
- if (icon || image) {
7
- return {
8
- type: 'legacy',
9
- icon,
10
- image: mapSpecImage(image),
11
- };
12
- }
13
- return undefined;
14
- };
@@ -1,26 +0,0 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
- import { getDomainLayerMedia } from './media-utils';
13
- import { mapTags } from './tags-utils';
14
- export const mapSuggestions = (suggestions, logEvent) => {
15
- if (!suggestions)
16
- return undefined;
17
- return {
18
- values: suggestions.values.map((_a) => {
19
- var { icon, image, media, value } = _a, rest = __rest(_a, ["icon", "image", "media", "value"]);
20
- if (typeof value !== 'string') {
21
- logEvent('warning', `Suggestion values must be of type string. Found ${typeof value} instead.`);
22
- }
23
- return Object.assign(Object.assign({}, rest), { media: getDomainLayerMedia({ icon, image, media }), value, tags: mapTags(rest) });
24
- }),
25
- };
26
- };