@wise/dynamic-flow-client 5.9.0 → 5.9.2-logging-bf0bd22

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 (413) hide show
  1. package/build/main.js +41 -44
  2. package/build/main.mjs +41 -44
  3. package/build/types/domain/components/step/StepDomainComponent.d.ts +2 -1
  4. package/build/types/domain/components/step/StepDomainComponent.d.ts.map +1 -1
  5. package/build/types/domain/mappers/mapStepSchemas.d.ts +1 -1
  6. package/build/types/domain/mappers/mapStepSchemas.d.ts.map +1 -1
  7. package/build/types/domain/mappers/mapStepToComponent.d.ts.map +1 -1
  8. package/build/types/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.d.ts +1 -531
  9. package/build/types/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.d.ts.map +1 -1
  10. package/build/types/domain/mappers/schema/persistAsyncSchemaToComponent.d.ts +0 -16
  11. package/build/types/domain/mappers/schema/persistAsyncSchemaToComponent.d.ts.map +1 -1
  12. package/build/types/domain/types.d.ts +0 -1
  13. package/build/types/domain/types.d.ts.map +1 -1
  14. package/build/types/renderers/mappers/selectInputComponentToProps.d.ts +2 -2
  15. package/build/types/renderers/mappers/selectInputComponentToProps.d.ts.map +1 -1
  16. package/package.json +20 -19
  17. package/build/DynamicFlowCore.js +0 -5
  18. package/build/common/errorBoundary/ErrorBoundary.js +0 -26
  19. package/build/common/errorBoundary/ErrorBoundary.test.js +0 -29
  20. package/build/common/errorBoundary/ErrorBoundaryAlert.js +0 -11
  21. package/build/common/makeHttpClient/api-utils.js +0 -3
  22. package/build/common/makeHttpClient/index.js +0 -1
  23. package/build/common/makeHttpClient/makeHttpClient.js +0 -10
  24. package/build/common/makeHttpClient/makeHttpClient.test.js +0 -186
  25. package/build/common/messages/external-confirmation.messages.js +0 -23
  26. package/build/common/messages/file-upload.messages.js +0 -13
  27. package/build/common/messages/generic-error.messages.js +0 -18
  28. package/build/common/messages/help.messages.js +0 -8
  29. package/build/common/messages/multi-file-upload.messages.js +0 -18
  30. package/build/common/messages/multi-select.messages.js +0 -8
  31. package/build/common/messages/paragraph.messages.js +0 -13
  32. package/build/common/messages/repeatable.messages.js +0 -23
  33. package/build/common/messages/search.messages.js +0 -8
  34. package/build/common/messages/validation.array.messages.js +0 -13
  35. package/build/common/messages/validation.messages.js +0 -53
  36. package/build/controller/FlowController.js +0 -368
  37. package/build/controller/executePoll.js +0 -49
  38. package/build/controller/executeRefresh.js +0 -39
  39. package/build/controller/executeRequest.js +0 -77
  40. package/build/controller/executeSubmission.js +0 -69
  41. package/build/controller/getErrorMessage.js +0 -7
  42. package/build/controller/getRequestAbortController.js +0 -13
  43. package/build/controller/getResponseType.js +0 -35
  44. package/build/controller/getSafeHttpClient.js +0 -8
  45. package/build/controller/getStepCounter.js +0 -16
  46. package/build/controller/handleErrorResponse.js +0 -26
  47. package/build/controller/makeSafeHttpClient.js +0 -8
  48. package/build/controller/response-utils.js +0 -72
  49. package/build/domain/components/AlertComponent.js +0 -1
  50. package/build/domain/components/AllOfComponent.js +0 -40
  51. package/build/domain/components/BooleanInputComponent.js +0 -50
  52. package/build/domain/components/BoxComponent.js +0 -3
  53. package/build/domain/components/ButtonComponent.js +0 -1
  54. package/build/domain/components/ColumnsComponent.js +0 -3
  55. package/build/domain/components/ConstComponent.js +0 -18
  56. package/build/domain/components/ContainerComponent.js +0 -3
  57. package/build/domain/components/DateInputComponent.js +0 -75
  58. package/build/domain/components/DecisionComponent.js +0 -1
  59. package/build/domain/components/DividerComponent.js +0 -1
  60. package/build/domain/components/FormComponent.js +0 -3
  61. package/build/domain/components/FormattedValueComponent.js +0 -44
  62. package/build/domain/components/HeadingComponent.js +0 -1
  63. package/build/domain/components/ImageComponent.js +0 -1
  64. package/build/domain/components/InstructionsComponent.js +0 -1
  65. package/build/domain/components/IntegerInputComponent.js +0 -74
  66. package/build/domain/components/ListComponent.js +0 -1
  67. package/build/domain/components/LoadingIndicatorComponent.js +0 -1
  68. package/build/domain/components/MarkdownComponent.js +0 -1
  69. package/build/domain/components/MediaComponent.js +0 -1
  70. package/build/domain/components/ModalComponent.js +0 -16
  71. package/build/domain/components/ModalLayoutComponent.js +0 -3
  72. package/build/domain/components/MoneyInputComponent.js +0 -57
  73. package/build/domain/components/MultiSelectInputComponent.js +0 -81
  74. package/build/domain/components/MultiUploadInputComponent.js +0 -88
  75. package/build/domain/components/NumberInputComponent.js +0 -73
  76. package/build/domain/components/ObjectComponent.js +0 -45
  77. package/build/domain/components/ParagraphComponent.js +0 -1
  78. package/build/domain/components/PersistAsyncComponent.js +0 -92
  79. package/build/domain/components/ProgressComponent.js +0 -1
  80. package/build/domain/components/RepeatableComponent.js +0 -103
  81. package/build/domain/components/ReviewComponent.js +0 -1
  82. package/build/domain/components/RootDomainComponent.js +0 -173
  83. package/build/domain/components/SectionComponent.js +0 -5
  84. package/build/domain/components/SelectInputComponent.js +0 -88
  85. package/build/domain/components/StatusListComponent.js +0 -1
  86. package/build/domain/components/SubflowDomainComponent.js +0 -9
  87. package/build/domain/components/TabsComponent.js +0 -1
  88. package/build/domain/components/TextInputComponent.js +0 -76
  89. package/build/domain/components/TupleComponent.js +0 -41
  90. package/build/domain/components/UploadInputComponent.js +0 -83
  91. package/build/domain/components/UpsellComponent.js +0 -25
  92. package/build/domain/components/searchComponent/SearchComponent.js +0 -92
  93. package/build/domain/components/searchComponent/SearchComponent.test.js +0 -190
  94. package/build/domain/components/step/ExternalConfirmationComponent.js +0 -28
  95. package/build/domain/components/step/StepDomainComponent.js +0 -73
  96. package/build/domain/components/step/ToolbarComponent.js +0 -1
  97. package/build/domain/components/utils/WithUpdate.js +0 -1
  98. package/build/domain/components/utils/component-utils.js +0 -12
  99. package/build/domain/components/utils/debounce.js +0 -34
  100. package/build/domain/components/utils/debounce.test.js +0 -67
  101. package/build/domain/components/utils/file-utils.js +0 -21
  102. package/build/domain/components/utils/file-utils.test.js +0 -27
  103. package/build/domain/components/utils/getRandomId.js +0 -1
  104. package/build/domain/components/utils/isExactLocalValueMatch.js +0 -14
  105. package/build/domain/components/utils/isOrWasValid.js +0 -5
  106. package/build/domain/components/utils/isPartialModelMatch.js +0 -18
  107. package/build/domain/components/utils/isPartialModelMatch.test.js +0 -74
  108. package/build/domain/features/eventNames.js +0 -24
  109. package/build/domain/features/events.js +0 -1
  110. package/build/domain/features/persistAsync/getComponentMultiPersistAsync.js +0 -50
  111. package/build/domain/features/persistAsync/getInitialPersistedState.js +0 -7
  112. package/build/domain/features/persistAsync/getPerformPersistAsync.js +0 -43
  113. package/build/domain/features/persistAsync/getPerformPersistAsync.test.js +0 -139
  114. package/build/domain/features/polling/getStepPolling.js +0 -43
  115. package/build/domain/features/polling/getStepPolling.test.js +0 -90
  116. package/build/domain/features/prefetch/getStepPrefetch.js +0 -43
  117. package/build/domain/features/prefetch/request-cache.js +0 -49
  118. package/build/domain/features/prefetch/request-cache.test.js +0 -70
  119. package/build/domain/features/refreshAfter/getStepRefreshAfter.js +0 -24
  120. package/build/domain/features/refreshAfter/getStepRefreshAfter.test.js +0 -40
  121. package/build/domain/features/schema-on-change/getDebouncedSchemaOnChange.js +0 -50
  122. package/build/domain/features/schema-on-change/getSchemaOnChange.js +0 -34
  123. package/build/domain/features/search/getPerformSearchFunction.js +0 -75
  124. package/build/domain/features/search/getPerformSearchFunction.test.js +0 -301
  125. package/build/domain/features/summary/summary-utils.js +0 -40
  126. package/build/domain/features/summary/summary-utils.test.js +0 -125
  127. package/build/domain/features/utils/http-utils.js +0 -21
  128. package/build/domain/features/utils/response-utils.js +0 -9
  129. package/build/domain/features/validation/spec-utils.js +0 -19
  130. package/build/domain/features/validation/validateStringPattern.js +0 -24
  131. package/build/domain/features/validation/validation-functions.js +0 -6
  132. package/build/domain/features/validation/validation-functions.test.js +0 -108
  133. package/build/domain/features/validation/value-checks.js +0 -125
  134. package/build/domain/features/validation/value-checks.test.js +0 -262
  135. package/build/domain/features/validationAsync/getComponentValidationAsync.js +0 -53
  136. package/build/domain/features/validationAsync/getComponentValidationAsync.test.js +0 -67
  137. package/build/domain/features/validationAsync/getInitialValidationAsyncState.js +0 -5
  138. package/build/domain/features/validationAsync/getPerformValidationAsync.js +0 -45
  139. package/build/domain/features/validationAsync/getPerformValidationAsync.test.js +0 -143
  140. package/build/domain/mappers/layout/alertLayoutToComponent.js +0 -16
  141. package/build/domain/mappers/layout/boxLayoutToComponent.js +0 -13
  142. package/build/domain/mappers/layout/buttonLayoutToComponent.js +0 -77
  143. package/build/domain/mappers/layout/columnsLayoutToComponent.js +0 -13
  144. package/build/domain/mappers/layout/decisionLayoutToComponent.js +0 -22
  145. package/build/domain/mappers/layout/deprecatedListLayoutToComponent.js +0 -30
  146. package/build/domain/mappers/layout/dividerLayoutToComponent.js +0 -2
  147. package/build/domain/mappers/layout/formLayoutToComponent.js +0 -19
  148. package/build/domain/mappers/layout/headingLayoutToComponent.js +0 -12
  149. package/build/domain/mappers/layout/imageLayoutToComponent.js +0 -20
  150. package/build/domain/mappers/layout/infoLayoutToComponent.js +0 -12
  151. package/build/domain/mappers/layout/instructionsLayoutToComponent.js +0 -12
  152. package/build/domain/mappers/layout/listLayoutToComponent.js +0 -39
  153. package/build/domain/mappers/layout/loadingIndicatorLayoutToComponent.js +0 -9
  154. package/build/domain/mappers/layout/markdownLayoutToComponent.js +0 -12
  155. package/build/domain/mappers/layout/mediaLayoutToComponent.js +0 -12
  156. package/build/domain/mappers/layout/modalLayoutToComponent.js +0 -17
  157. package/build/domain/mappers/layout/modalToComponent.js +0 -8
  158. package/build/domain/mappers/layout/paragraphLayoutToComponent.js +0 -12
  159. package/build/domain/mappers/layout/progressLayoutToComponent.js +0 -15
  160. package/build/domain/mappers/layout/reviewLayoutToComponent.js +0 -48
  161. package/build/domain/mappers/layout/searchLayoutToComponent.js +0 -44
  162. package/build/domain/mappers/layout/sectionLayoutToComponent.js +0 -15
  163. package/build/domain/mappers/layout/statusListLayoutToComponent.js +0 -15
  164. package/build/domain/mappers/layout/tabsLayoutToComponent.js +0 -16
  165. package/build/domain/mappers/layout/upsellLayoutToComponent.js +0 -25
  166. package/build/domain/mappers/mapLayoutToComponent.js +0 -81
  167. package/build/domain/mappers/mapSchemaToComponent.js +0 -61
  168. package/build/domain/mappers/mapSchemaToComponent.test.js +0 -112
  169. package/build/domain/mappers/mapStepSchemas.js +0 -17
  170. package/build/domain/mappers/mapStepToComponent.js +0 -132
  171. package/build/domain/mappers/mapStepToComponent.test.js +0 -221
  172. package/build/domain/mappers/mapToolbarToComponent.js +0 -15
  173. package/build/domain/mappers/schema/allOfSchemaToComponent.js +0 -16
  174. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToComponent.js +0 -26
  175. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToMultiSelectComponent.js +0 -55
  176. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToMultiUploadComponent.js +0 -67
  177. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToRepeatableComponent.js +0 -57
  178. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToTupleComponent.js +0 -20
  179. package/build/domain/mappers/schema/blobSchemaToComponent.js +0 -15
  180. package/build/domain/mappers/schema/booleanSchemaToComponent.js +0 -29
  181. package/build/domain/mappers/schema/constSchemaToComponent.js +0 -23
  182. package/build/domain/mappers/schema/integerSchemaToComponent.js +0 -28
  183. package/build/domain/mappers/schema/numberSchemaToComponent.js +0 -26
  184. package/build/domain/mappers/schema/objectSchemaToComponent/assertDisplayOrder.js +0 -23
  185. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToFormattedValueComponent.js +0 -9
  186. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToMoneyInputComponent.js +0 -119
  187. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToMoneyInputComponent.test.js +0 -96
  188. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToObjectComponent.js +0 -31
  189. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToObjectComponent.test.js +0 -99
  190. package/build/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.js +0 -76
  191. package/build/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.test.js +0 -265
  192. package/build/domain/mappers/schema/persistAsyncSchemaToComponent.js +0 -29
  193. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToComponent.js +0 -18
  194. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToComponent.test.js +0 -133
  195. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToDateInputComponent.js +0 -48
  196. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToTextInputComponent.js +0 -37
  197. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToUploadInputComponent.js +0 -28
  198. package/build/domain/mappers/schema/tests/test-utils.js +0 -16
  199. package/build/domain/mappers/schema/types.js +0 -1
  200. package/build/domain/mappers/schema/utils/getPerformPersistAsyncFn.js +0 -19
  201. package/build/domain/mappers/schema/utils/getValidationAsyncInitialState.js +0 -23
  202. package/build/domain/mappers/schema/utils/mapCommonSchemaProps.js +0 -16
  203. package/build/domain/mappers/types.js +0 -1
  204. package/build/domain/mappers/utils/FeatureFlags.js +0 -22
  205. package/build/domain/mappers/utils/behavior-utils.js +0 -44
  206. package/build/domain/mappers/utils/call-to-action-utils.js +0 -21
  207. package/build/domain/mappers/utils/getAutocompleteString.js +0 -76
  208. package/build/domain/mappers/utils/getAutocompleteString.test.js +0 -21
  209. package/build/domain/mappers/utils/groupLayoutByPinned.js +0 -38
  210. package/build/domain/mappers/utils/groupLayoutByPinned.test.js +0 -166
  211. package/build/domain/mappers/utils/image.js +0 -9
  212. package/build/domain/mappers/utils/layout-utils.js +0 -11
  213. package/build/domain/mappers/utils/legacy-utils.js +0 -49
  214. package/build/domain/mappers/utils/media-utils.js +0 -14
  215. package/build/domain/mappers/utils/suggestions-utils.js +0 -26
  216. package/build/domain/mappers/utils/suggestions-utils.test.js +0 -36
  217. package/build/domain/mappers/utils/tags-utils.js +0 -1
  218. package/build/domain/mappers/utils/utils.js +0 -35
  219. package/build/domain/types.js +0 -1
  220. package/build/getSubflowCallbacks.js +0 -38
  221. package/build/i18n/index.js +0 -40
  222. package/build/index.js +0 -8
  223. package/build/renderers/CoreContainerRenderer.js +0 -5
  224. package/build/renderers/CoreRootRenderer.js +0 -12
  225. package/build/renderers/EmptyLoadingStateRenderer.js +0 -5
  226. package/build/renderers/getRenderFunction.js +0 -24
  227. package/build/renderers/getSchemaErrorMessageFunction.js +0 -97
  228. package/build/renderers/mappers/alertComponentToProps.js +0 -2
  229. package/build/renderers/mappers/allOfComponentToProps.js +0 -6
  230. package/build/renderers/mappers/booleanInputComponentToProps.js +0 -5
  231. package/build/renderers/mappers/boxComponentToProps.js +0 -13
  232. package/build/renderers/mappers/buttonComponentToProps.js +0 -4
  233. package/build/renderers/mappers/columnsComponentToProps.js +0 -11
  234. package/build/renderers/mappers/componentToRendererProps.js +0 -164
  235. package/build/renderers/mappers/constComponentToProps.js +0 -5
  236. package/build/renderers/mappers/containerComponentToProps.js +0 -7
  237. package/build/renderers/mappers/dateInputComponentToProps.js +0 -2
  238. package/build/renderers/mappers/decisionComponentToProps.js +0 -16
  239. package/build/renderers/mappers/dividerComponentToProps.js +0 -2
  240. package/build/renderers/mappers/externalComponentToProps.js +0 -3
  241. package/build/renderers/mappers/formComponentToProps.js +0 -12
  242. package/build/renderers/mappers/formattedValueComponentToProps.js +0 -5
  243. package/build/renderers/mappers/headingComponentToProps.js +0 -2
  244. package/build/renderers/mappers/hiddenComponentToProps.js +0 -4
  245. package/build/renderers/mappers/imageComponentToProps.js +0 -2
  246. package/build/renderers/mappers/instructionsComponentToProps.js +0 -2
  247. package/build/renderers/mappers/integerInputComponentToProps.js +0 -2
  248. package/build/renderers/mappers/listComponentToProps.js +0 -2
  249. package/build/renderers/mappers/loadingIndicatorComponentToProps.js +0 -2
  250. package/build/renderers/mappers/markdownComponentToProps.js +0 -2
  251. package/build/renderers/mappers/mediaComponentToProps.js +0 -2
  252. package/build/renderers/mappers/modalComponentToProps.js +0 -11
  253. package/build/renderers/mappers/modalLayoutComponentToProps.js +0 -16
  254. package/build/renderers/mappers/moneyInputComponentToProps.js +0 -36
  255. package/build/renderers/mappers/multiSelectComponentToProps.js +0 -23
  256. package/build/renderers/mappers/multiUploadInputComponentToProps.js +0 -12
  257. package/build/renderers/mappers/numberInputComponentToProps.js +0 -2
  258. package/build/renderers/mappers/objectComponentToProps.js +0 -8
  259. package/build/renderers/mappers/paragraphComponentToProps.js +0 -2
  260. package/build/renderers/mappers/persistAsyncComponentToProps.js +0 -8
  261. package/build/renderers/mappers/progressComponentToProps.js +0 -2
  262. package/build/renderers/mappers/repeatableComponentToProps.js +0 -30
  263. package/build/renderers/mappers/reviewComponentToProps.js +0 -2
  264. package/build/renderers/mappers/rootComponentToProps.js +0 -21
  265. package/build/renderers/mappers/searchComponentToProps.js +0 -57
  266. package/build/renderers/mappers/sectionComponentToProps.js +0 -6
  267. package/build/renderers/mappers/selectInputComponentToProps.js +0 -26
  268. package/build/renderers/mappers/statusListComponentToProps.js +0 -2
  269. package/build/renderers/mappers/subflowComponentToRendererProps.js +0 -4
  270. package/build/renderers/mappers/tabsComponentToProps.js +0 -14
  271. package/build/renderers/mappers/textInputComponentToProps.js +0 -2
  272. package/build/renderers/mappers/tupleComponentToProps.js +0 -8
  273. package/build/renderers/mappers/uploadInputComponentToProps.js +0 -8
  274. package/build/renderers/mappers/upsellComponentToProps.js +0 -2
  275. package/build/renderers/mappers/utils/getValidationState.js +0 -12
  276. package/build/renderers/mappers/utils/inputComponentToProps.js +0 -26
  277. package/build/renderers/mappers/utils/mapErrorsToValidationState.js +0 -9
  278. package/build/renderers/mappers/utils/pick.js +0 -8
  279. package/build/renderers/mappers/utils/selectInputOptionsToProps.js +0 -11
  280. package/build/renderers/stepComponentToProps.js +0 -32
  281. package/build/renderers/utils.js +0 -69
  282. package/build/renderers/utils.test.js +0 -70
  283. package/build/stories/dev-tools/ContainerQueries.story.js +0 -66
  284. package/build/stories/dev-tools/Debugger.story.js +0 -38
  285. package/build/stories/dev-tools/FixtureSelect.story.js +0 -23
  286. package/build/stories/dev-tools/TestServer.story.js +0 -32
  287. package/build/stories/examples/NativeFlow.story.js +0 -80
  288. package/build/stories/examples/Recipients.story.js +0 -568
  289. package/build/stories/spec/behavior/Copy.story.js +0 -59
  290. package/build/stories/spec/behavior/Modal.story.js +0 -76
  291. package/build/stories/spec/behavior/Subflow.story.js +0 -267
  292. package/build/stories/spec/layouts/Decision.story.js +0 -241
  293. package/build/stories/spec/layouts/Image.story.js +0 -42
  294. package/build/stories/spec/layouts/Modal.story.js +0 -81
  295. package/build/stories/spec/layouts/Search.story.js +0 -325
  296. package/build/stories/spec/layouts/Upsell.story.js +0 -55
  297. package/build/stories/spec/layouts/button/Button.story.js +0 -100
  298. package/build/stories/spec/layouts/button/PinnedButton.story.js +0 -81
  299. package/build/stories/spec/response/ActionResponse.story.js +0 -66
  300. package/build/stories/spec/schemas/MultiSelect.story.js +0 -148
  301. package/build/stories/spec/schemas/Upload.story.js +0 -168
  302. package/build/stories/spec/schemas/const/ConstLayout.story.js +0 -159
  303. package/build/stories/spec/schemas/const/ObjectConst.story.js +0 -94
  304. package/build/stories/spec/schemas/features/PersistAsync.story.js +0 -176
  305. package/build/stories/spec/schemas/features/ValidationAsync.story.js +0 -103
  306. package/build/stories/spec/schemas/object/FormattedValue.story.js +0 -92
  307. package/build/stories/spec/schemas/object/MoneyInput.story.js +0 -240
  308. package/build/stories/spec/schemas/oneOf/OneOfInitialisation.story.js +0 -55
  309. package/build/stories/spec/step/Controls.story.js +0 -109
  310. package/build/stories/spec/step/DFModal.story.js +0 -58
  311. package/build/stories/spec/step/Footer.story.js +0 -70
  312. package/build/stories/spec/step/Navigation.story.js +0 -20
  313. package/build/stories/spec/step/Tags.story.js +0 -39
  314. package/build/stories/spec/step/ToolBar.story.js +0 -60
  315. package/build/stories/spec/step/features/ErrorHandling.story.js +0 -92
  316. package/build/stories/spec/step/features/External.story.js +0 -44
  317. package/build/stories/spec/step/features/Polling.story.js +0 -108
  318. package/build/stories/spec/step/features/RefreshAfter.story.js +0 -92
  319. package/build/stories/spec/step/features/refresh/Refresh.story.js +0 -258
  320. package/build/stories/spec/step/features/refresh/RefreshWithPersistAsync.story.js +0 -958
  321. package/build/stories/types.js +0 -1
  322. package/build/stories/utils/fixtureHttpClient.js +0 -70
  323. package/build/stories/utils/getBasicStep.js +0 -223
  324. package/build/stories/utils/mockSearchHandler.js +0 -71
  325. package/build/stories/utils/render-utils.js +0 -41
  326. package/build/stories/visual-tests/layouts/NotUsingListItem.story.js +0 -17
  327. package/build/test-utils/DynamicFlowWise.js +0 -32
  328. package/build/test-utils/DynamicFlowWiseModal.js +0 -34
  329. package/build/test-utils/NeptuneProviders.js +0 -11
  330. package/build/test-utils/component-utils.js +0 -5
  331. package/build/test-utils/fetch-utils.js +0 -45
  332. package/build/test-utils/getMergedTestRenderers.js +0 -34
  333. package/build/test-utils/getRandomId.js +0 -1
  334. package/build/test-utils/index.js +0 -3
  335. package/build/test-utils/rtl-utils.js +0 -7
  336. package/build/test-utils/step-utils.js +0 -6
  337. package/build/test-utils/wait.js +0 -3
  338. package/build/tests/AlertLayout.test.js +0 -78
  339. package/build/tests/ArrayTuple.test.js +0 -118
  340. package/build/tests/ButtonLayout.test.js +0 -308
  341. package/build/tests/ConstLayout.test.js +0 -95
  342. package/build/tests/DateInput.test.js +0 -163
  343. package/build/tests/DecisionLayout.test.js +0 -146
  344. package/build/tests/DynamicFlow.test.js +0 -147
  345. package/build/tests/External.test.js +0 -169
  346. package/build/tests/Flow.test.js +0 -328
  347. package/build/tests/FormLayout.test.js +0 -28
  348. package/build/tests/FormattedValue.test.js +0 -107
  349. package/build/tests/ImageRenderer.test.js +0 -78
  350. package/build/tests/InitialAction.test.js +0 -179
  351. package/build/tests/InitialStep.test.js +0 -168
  352. package/build/tests/InstructionsLayout.test.js +0 -45
  353. package/build/tests/ListLayout.test.js +0 -145
  354. package/build/tests/Logging.test.js +0 -53
  355. package/build/tests/ModalBehavior.test.js +0 -149
  356. package/build/tests/MoneyInput.test.js +0 -316
  357. package/build/tests/MultiUpload.test.js +0 -293
  358. package/build/tests/NativeBack.test.js +0 -267
  359. package/build/tests/OneOfInitialisation.test.js +0 -571
  360. package/build/tests/PersistAsync.test.js +0 -653
  361. package/build/tests/Polling.test.js +0 -617
  362. package/build/tests/Prefetching.test.js +0 -230
  363. package/build/tests/RefreshAfter.test.js +0 -63
  364. package/build/tests/RefreshOnChange.ResponseHandling.test.js +0 -205
  365. package/build/tests/RefreshOnChange.test.js +0 -233
  366. package/build/tests/RefreshOnChange.with.Segmented.test.js +0 -348
  367. package/build/tests/RefreshOnChange.with.Tabs.test.js +0 -358
  368. package/build/tests/RefreshOnChangePreserve.test.js +0 -224
  369. package/build/tests/RendererProps.test.js +0 -342
  370. package/build/tests/Repeatable.test.js +0 -107
  371. package/build/tests/Rerendering.test.js +0 -67
  372. package/build/tests/ReviewLayout.test.js +0 -274
  373. package/build/tests/SchemaOnChange.test.js +0 -133
  374. package/build/tests/ScrollToError.test.js +0 -217
  375. package/build/tests/SegmentedControl.test.js +0 -49
  376. package/build/tests/SingleFileUpload.test.js +0 -88
  377. package/build/tests/StatusList.test.js +0 -85
  378. package/build/tests/Subflow.test.js +0 -710
  379. package/build/tests/Submission.ResponseHandling.test.js +0 -557
  380. package/build/tests/Submission.merging.test.js +0 -202
  381. package/build/tests/Submission.test.js +0 -523
  382. package/build/tests/Tags.test.js +0 -475
  383. package/build/tests/Upsell.test.js +0 -126
  384. package/build/tests/ValidationAsync.test.js +0 -295
  385. package/build/tests/legacy/Actions.test.js +0 -158
  386. package/build/tests/legacy/BackButton.test.js +0 -114
  387. package/build/tests/legacy/HiddenSchemas.test.js +0 -246
  388. package/build/tests/legacy/MultiSelect.test.js +0 -497
  389. package/build/tests/legacy/MultipleFileUploadSchema.test.js +0 -341
  390. package/build/tests/legacy/PersistAsync.blob-schema.test.js +0 -224
  391. package/build/tests/legacy/PersistAsync.string-schema.test.js +0 -211
  392. package/build/tests/legacy/RefreshStepOnChange.debouncing.test.js +0 -209
  393. package/build/tests/legacy/RefreshStepOnChange.test.js +0 -424
  394. package/build/tests/legacy/Search.test.js +0 -437
  395. package/build/tests/renderers/MultiSelectInputRendererProps.test.js +0 -58
  396. package/build/tests/renderers/SelectInputRendererProps.test.js +0 -42
  397. package/build/tests/renderers/TextInputRenderer.test.js +0 -51
  398. package/build/types.js +0 -1
  399. package/build/useDynamicFlow.js +0 -104
  400. package/build/useDynamicFlowModal.js +0 -58
  401. package/build/utils/analyse-step.js +0 -14
  402. package/build/utils/component-utils.js +0 -8
  403. package/build/utils/component-utils.test.js +0 -113
  404. package/build/utils/getScrollToTop.js +0 -12
  405. package/build/utils/normalise-flow-id.js +0 -1
  406. package/build/utils/normalise-flow-id.test.js +0 -24
  407. package/build/utils/openLinkInNewTab.js +0 -10
  408. package/build/utils/recursiveMerge.js +0 -40
  409. package/build/utils/recursiveMerge.test.js +0 -93
  410. package/build/utils/type-utils.js +0 -21
  411. package/build/utils/type-validators.js +0 -11
  412. package/build/utils/type-validators.test.js +0 -180
  413. package/build/utils/useStableCallback.js +0 -15
@@ -1,16 +0,0 @@
1
- /**
2
- * To ensure there are no uid collisions between consecutive steps, we use a
3
- * counter that is appended to the step id. This means that even steps with the
4
- * same structure and ids will not have the same component uids.
5
- */
6
- export const getStepCounter = () => {
7
- let count = 0;
8
- return {
9
- increment() {
10
- count = (count + 1) % 100;
11
- },
12
- get current() {
13
- return count;
14
- },
15
- };
16
- };
@@ -1,26 +0,0 @@
1
- import { parseResponseBodyAsJsonElement, isErrorResponseBody, parseResponseBodyAsText, } from './response-utils';
2
- export const handleErrorResponse = async (response, actionId, trackEvent) => {
3
- const body = await parseResponseBodyAsJsonElement(response.clone());
4
- if (isErrorResponseBody(body)) {
5
- const refreshUrl = body.refreshUrl || body.refreshFormUrl;
6
- const { error, validation, analytics } = body;
7
- trackEvent('Action Failed', Object.assign(Object.assign({}, analytics), { actionId, statusCode: response.status }));
8
- const errors = { error, validation };
9
- return refreshUrl
10
- ? { type: 'refresh', body: { refreshUrl, errors } }
11
- : {
12
- type: 'error',
13
- body: { errors, analytics },
14
- httpError: { statusCode: response.status },
15
- };
16
- }
17
- trackEvent('Action Failed', { actionId, statusCode: response.status });
18
- const errorMessage = await parseResponseBodyAsText(response);
19
- return {
20
- type: 'error',
21
- httpError: {
22
- message: errorMessage || undefined,
23
- statusCode: response.status,
24
- },
25
- };
26
- };
@@ -1,8 +0,0 @@
1
- export const makeSafeHttpClient = (httpClient) => async (...props) => {
2
- try {
3
- return await httpClient(...props);
4
- }
5
- catch (_a) {
6
- return null;
7
- }
8
- };
@@ -1,72 +0,0 @@
1
- import { validateActionResponse, validateSubflowResponse } from '@wise/dynamic-flow-types/spec';
2
- import { isArray, isObject } from '../utils/type-validators';
3
- export const parseResponseBodyAsJsonElement = async (response) => {
4
- assertResponseIsValid(response);
5
- try {
6
- return (await response.json());
7
- }
8
- catch (_a) {
9
- return null;
10
- }
11
- };
12
- export const parseResponseBodyAsText = async (response) => {
13
- try {
14
- return await response.text();
15
- }
16
- catch (_a) {
17
- return null;
18
- }
19
- };
20
- export function isActionResponseBody(body) {
21
- return validateActionResponse(body).valid;
22
- }
23
- export function assertActionResponseBody(body) {
24
- // TODO: use zod to validate the action object instead of this
25
- if (!isObject(body) || !isObject(body.action)) {
26
- throw new Error('Incorrect response body in action response. Expected an object satisfying the type { action: Action }.');
27
- }
28
- }
29
- // TODO make this a modal response body type
30
- export function assertModalResponseBody(body) {
31
- if (isObject(body)) {
32
- if ('content' in body && isArray(body.content)) {
33
- return;
34
- }
35
- }
36
- throw new Error('Incorrect response body in modal response. Expected an object satisfying the type { title?: string, components: Layout[] }.');
37
- }
38
- export function assertSubflowResponseBody(body) {
39
- const { valid } = validateSubflowResponse(body);
40
- if (valid) {
41
- return;
42
- }
43
- throw new Error('Incorrect response body in subflow response.');
44
- }
45
- export function isErrorResponseBody(body) {
46
- return Boolean(isObject(body) &&
47
- (body.refreshFormUrl || body.refreshUrl || body.validation || body.error || body.analytics));
48
- }
49
- export function assertErrorResponseBody(body) {
50
- // TODO: use zod to validate the error object instead of this
51
- if (!isErrorResponseBody(body)) {
52
- throw new Error('Incorrect error response body in error response. Expected an object with either `refreshUrl`, `validation` or `error` properties.');
53
- }
54
- }
55
- export function assertStepResponseBody(body) {
56
- // TODO: use zod to validate the error object instead of this
57
- if (!isObject(body)) {
58
- throw new Error('Incorrect response body in step response. Expected an object.');
59
- }
60
- }
61
- const assertResponseIsValid = (response) => {
62
- if (!isResponse(response)) {
63
- throw new Error('Incorrect type of response from fetch. Expected object of type Response.');
64
- }
65
- if (response.bodyUsed) {
66
- throw new Error('The body of the provided Response object has already been used. Every request must respond with a new Response object.');
67
- }
68
- };
69
- const isResponse = (response) => typeof response === 'object' &&
70
- response !== null &&
71
- 'clone' in response &&
72
- 'bodyUsed' in response;
@@ -1 +0,0 @@
1
- export const createAlertComponent = (alertProps) => (Object.assign({ type: 'alert', kind: 'layout' }, alertProps));
@@ -1,40 +0,0 @@
1
- import { getLocalValues, getSubmittableData, getSubmittableDataSync, } from '../../utils/component-utils';
2
- import { summariseFromChildren } from '../features/summary/summary-utils';
3
- import { validateComponents } from '../features/validation/validation-functions';
4
- export const createAllOfComponent = (allOfProps) => {
5
- const { uid, schemaId, analyticsId, alert, components, control, description, help, hidden, media, title, tags, } = allOfProps;
6
- return {
7
- type: 'all-of',
8
- kind: 'input',
9
- uid,
10
- schemaId,
11
- analyticsId,
12
- alert,
13
- components,
14
- control,
15
- description,
16
- help,
17
- hidden,
18
- media,
19
- title,
20
- tags,
21
- getChildren() {
22
- return this.components;
23
- },
24
- getSummary() {
25
- return summariseFromChildren(this.getChildren());
26
- },
27
- async getSubmittableValue() {
28
- return getSubmittableData(this.components);
29
- },
30
- getSubmittableValueSync() {
31
- return getSubmittableDataSync(this.components);
32
- },
33
- getLocalValue() {
34
- return getLocalValues(this.components);
35
- },
36
- validate() {
37
- return hidden ? true : validateComponents(this.getChildren());
38
- },
39
- };
40
- };
@@ -1,50 +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 { getComponentValidationAsync } from '../features/validationAsync/getComponentValidationAsync';
13
- import { getInputUpdateFunction } from './utils/component-utils';
14
- export const createBooleanInputComponent = (booleanInputProps, onComponentUpdate) => {
15
- const { uid, id, value, schemaOnChange, performValidationAsync, onValueChange, onPersistAsync, summariser } = booleanInputProps, rest = __rest(booleanInputProps, ["uid", "id", "value", "schemaOnChange", "performValidationAsync", "onValueChange", "onPersistAsync", "summariser"]);
16
- const update = getInputUpdateFunction(onComponentUpdate);
17
- const validateAsync = performValidationAsync
18
- ? getComponentValidationAsync(update, performValidationAsync)
19
- : undefined;
20
- const booleanComponent = Object.assign({ type: 'boolean', kind: 'input', uid,
21
- id, autoComplete: '', value,
22
- _update(updateFn) {
23
- update(this, updateFn);
24
- },
25
- onBlur() { }, // Noop
26
- onFocus() { }, // Noop
27
- onChange(updatedValue) {
28
- this._update((draft) => {
29
- draft.errors = [];
30
- draft.value = updatedValue;
31
- });
32
- void (schemaOnChange === null || schemaOnChange === void 0 ? void 0 : schemaOnChange());
33
- void (onPersistAsync === null || onPersistAsync === void 0 ? void 0 : onPersistAsync().catch(() => { }));
34
- validateAsync === null || validateAsync === void 0 ? void 0 : validateAsync(this, this.getLocalValue()).catch(() => { }); // Noop
35
- onValueChange();
36
- },
37
- async getSubmittableValue() {
38
- return this.getSubmittableValueSync();
39
- },
40
- getSubmittableValueSync() {
41
- return this.getLocalValue();
42
- },
43
- getSummary() {
44
- return summariser(this.getLocalValue());
45
- },
46
- getLocalValue() {
47
- return this.value;
48
- }, validate: () => true }, rest);
49
- return booleanComponent;
50
- };
@@ -1,3 +0,0 @@
1
- export const createBoxComponent = (boxProps) => (Object.assign(Object.assign({}, boxProps), { type: 'box', kind: 'layout', getChildren() {
2
- return this.components;
3
- } }));
@@ -1 +0,0 @@
1
- export const createButtonComponent = (buttonProps) => (Object.assign({ type: 'button', kind: 'layout' }, buttonProps));
@@ -1,3 +0,0 @@
1
- export const createColumnsComponent = (columnsProps) => (Object.assign(Object.assign({}, columnsProps), { type: 'columns', kind: 'layout', getChildren() {
2
- return [...this.startComponents, ...this.endComponents];
3
- } }));
@@ -1,18 +0,0 @@
1
- export const createConstComponent = (hiddenProps) => {
2
- const { uid, schemaId, analyticsId, value, summary, layout, hidden, tags } = hiddenProps;
3
- return {
4
- type: 'const',
5
- kind: 'input',
6
- uid,
7
- schemaId,
8
- analyticsId,
9
- layout,
10
- hidden,
11
- tags,
12
- getLocalValue: () => value,
13
- getSubmittableValue: async () => value,
14
- getSubmittableValueSync: () => value,
15
- getSummary: () => summary,
16
- validate: () => true,
17
- };
18
- };
@@ -1,3 +0,0 @@
1
- export const createContainerComponent = (containerProps) => (Object.assign(Object.assign({}, containerProps), { type: 'container', kind: 'layout', getChildren() {
2
- return this.components;
3
- } }));
@@ -1,75 +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 { isValidDate } from '../../utils/type-validators';
13
- import { getLocalValueValidator } from '../features/validation/validation-functions';
14
- import { getComponentValidationAsync } from '../features/validationAsync/getComponentValidationAsync';
15
- import { getInputUpdateFunction } from './utils/component-utils';
16
- import { isOrWasValid } from './utils/isOrWasValid';
17
- export const createDateInputComponent = (textInputProps, onComponentUpdate) => {
18
- const { uid, id, checks, schemaOnChange, performValidationAsync, onValueChange, onPersistAsync, summariser, value } = textInputProps, rest = __rest(textInputProps, ["uid", "id", "checks", "schemaOnChange", "performValidationAsync", "onValueChange", "onPersistAsync", "summariser", "value"]);
19
- const update = getInputUpdateFunction(onComponentUpdate);
20
- const getValidationErrors = getLocalValueValidator(checks);
21
- const validateAsync = performValidationAsync
22
- ? getComponentValidationAsync(update, performValidationAsync)
23
- : undefined;
24
- const dateInputComponent = Object.assign({ type: 'date', kind: 'input', uid,
25
- id,
26
- value,
27
- _update(updateFn) {
28
- update(this, updateFn);
29
- },
30
- onBlur() {
31
- const isValid = this.validate();
32
- if (isValid) {
33
- validateAsync === null || validateAsync === void 0 ? void 0 : validateAsync(this, this.getLocalValue()).catch(() => { }); // Noop
34
- }
35
- },
36
- onFocus() { }, // Noop
37
- onChange(updatedValue) {
38
- const prevValue = this.value;
39
- this._update((draft) => {
40
- draft.errors = [];
41
- draft.validationAsyncState.messages = {};
42
- draft.value = updatedValue;
43
- });
44
- if (isOrWasValid(getValidationErrors, prevValue, updatedValue)) {
45
- void (schemaOnChange === null || schemaOnChange === void 0 ? void 0 : schemaOnChange());
46
- }
47
- onValueChange();
48
- if (getValidationErrors(updatedValue).length === 0) {
49
- void (onPersistAsync === null || onPersistAsync === void 0 ? void 0 : onPersistAsync().catch(() => { }));
50
- }
51
- },
52
- async getSubmittableValue() {
53
- return this.getSubmittableValueSync();
54
- },
55
- getSubmittableValueSync() {
56
- if (isValidDate(this.getLocalValue())) {
57
- return this.getLocalValue();
58
- }
59
- return null;
60
- },
61
- getSummary() {
62
- return summariser(this.getLocalValue());
63
- },
64
- getLocalValue() {
65
- return this.value;
66
- },
67
- validate() {
68
- const errors = getValidationErrors(this.getLocalValue());
69
- this._update((draft) => {
70
- draft.errors = errors;
71
- });
72
- return errors.length === 0;
73
- } }, rest);
74
- return dateInputComponent;
75
- };
@@ -1 +0,0 @@
1
- export const createDecisionComponent = (decisionProps) => (Object.assign({ type: 'decision', kind: 'layout' }, decisionProps));
@@ -1 +0,0 @@
1
- export const createDividerComponent = (props) => (Object.assign({ type: 'divider', kind: 'layout' }, props));
@@ -1,3 +0,0 @@
1
- export const createFormComponent = (formProps) => (Object.assign(Object.assign({}, formProps), { type: 'form', kind: 'layout', getChildren() {
2
- return [this.schemaComponent];
3
- } }));
@@ -1,44 +0,0 @@
1
- import { getInputUpdateFunction } from './utils/component-utils';
2
- export const createFormattedValueComponent = (props, onComponentUpdate) => {
3
- const { uid, schemaId, analyticsId, alert, control, description, errors, format, help, hidden, media, summariser, title, tags, value, schemaOnChange, } = props;
4
- const update = getInputUpdateFunction(onComponentUpdate);
5
- return {
6
- type: 'formatted-value',
7
- kind: 'input',
8
- uid,
9
- schemaId,
10
- analyticsId,
11
- alert,
12
- control,
13
- description,
14
- errors,
15
- format,
16
- help,
17
- hidden,
18
- media,
19
- title,
20
- tags,
21
- value,
22
- async getSubmittableValue() {
23
- return this.getSubmittableValueSync();
24
- },
25
- getSubmittableValueSync() {
26
- return this.getLocalValue();
27
- },
28
- getSummary() {
29
- return summariser(this.getLocalValue());
30
- },
31
- getLocalValue() {
32
- return this.value;
33
- },
34
- validate() {
35
- return true;
36
- },
37
- onChange(newValue) {
38
- update(this, (draft) => {
39
- draft.value = newValue;
40
- });
41
- void (schemaOnChange === null || schemaOnChange === void 0 ? void 0 : schemaOnChange());
42
- },
43
- };
44
- };
@@ -1 +0,0 @@
1
- export const createHeadingComponent = (headingProps) => (Object.assign({ type: 'heading', kind: 'layout' }, headingProps));
@@ -1 +0,0 @@
1
- export const createImageComponent = (imageProps) => (Object.assign({ type: 'image', kind: 'layout' }, imageProps));
@@ -1 +0,0 @@
1
- export const createInstructionsComponent = (instructionsProps) => (Object.assign({ type: 'instructions', kind: 'layout' }, instructionsProps));
@@ -1,74 +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 { getDebouncedSchemaOnChange } from '../features/schema-on-change/getDebouncedSchemaOnChange';
13
- import { getLocalValueValidator } from '../features/validation/validation-functions';
14
- import { getDebouncedComponentValidationAsync } from '../features/validationAsync/getComponentValidationAsync';
15
- import { getInputUpdateFunction } from './utils/component-utils';
16
- export const createIntegerInputComponent = (integerInputProps, onComponentUpdate) => {
17
- const { uid, id, checks, value, schemaOnChange, performValidationAsync, onValueChange, onPersistAsync, summariser } = integerInputProps, rest = __rest(integerInputProps, ["uid", "id", "checks", "value", "schemaOnChange", "performValidationAsync", "onValueChange", "onPersistAsync", "summariser"]);
18
- const update = getInputUpdateFunction(onComponentUpdate);
19
- const getValidationErrors = getLocalValueValidator(checks);
20
- const performOnChange = getDebouncedSchemaOnChange(schemaOnChange, getValidationErrors);
21
- const validateAsync = performValidationAsync
22
- ? getDebouncedComponentValidationAsync(update, performValidationAsync)
23
- : undefined;
24
- const integerComponent = Object.assign({ type: 'integer', kind: 'input', uid,
25
- id,
26
- value,
27
- _update(updateFn) {
28
- update(this, updateFn);
29
- },
30
- onBlur() {
31
- const isValid = this.validate();
32
- performOnChange === null || performOnChange === void 0 ? void 0 : performOnChange.flush();
33
- if (isValid) {
34
- void (onPersistAsync === null || onPersistAsync === void 0 ? void 0 : onPersistAsync().catch(() => { }));
35
- validateAsync === null || validateAsync === void 0 ? void 0 : validateAsync.flush();
36
- }
37
- },
38
- onFocus() { }, // Noop
39
- onChange(updatedValue) {
40
- const prevValue = this.value;
41
- this._update((draft) => {
42
- draft.errors = [];
43
- draft.validationAsyncState.messages = {};
44
- draft.value = updatedValue;
45
- });
46
- performOnChange === null || performOnChange === void 0 ? void 0 : performOnChange(prevValue, updatedValue);
47
- const isValid = getValidationErrors(updatedValue).length === 0;
48
- if (isValid) {
49
- validateAsync === null || validateAsync === void 0 ? void 0 : validateAsync(this, updatedValue);
50
- }
51
- onValueChange();
52
- },
53
- async getSubmittableValue() {
54
- return this.getSubmittableValueSync();
55
- },
56
- getSubmittableValueSync() {
57
- var _a;
58
- return (_a = this.getLocalValue()) !== null && _a !== void 0 ? _a : null;
59
- },
60
- getSummary() {
61
- return summariser(this.getLocalValue());
62
- },
63
- getLocalValue() {
64
- return this.value;
65
- },
66
- validate() {
67
- const errors = getValidationErrors(this.getLocalValue());
68
- this._update((draft) => {
69
- draft.errors = errors;
70
- });
71
- return errors.length === 0;
72
- } }, rest);
73
- return integerComponent;
74
- };
@@ -1 +0,0 @@
1
- export const createListComponent = (listProps) => (Object.assign({ type: 'list', kind: 'layout' }, listProps));
@@ -1 +0,0 @@
1
- export const createLoadingIndicatorComponent = (loadingIndicatorProps) => (Object.assign({ type: 'loading-indicator', kind: 'layout' }, loadingIndicatorProps));
@@ -1 +0,0 @@
1
- export const createMarkdownComponent = (markdownProps) => (Object.assign({ type: 'markdown', kind: 'layout' }, markdownProps));
@@ -1 +0,0 @@
1
- export const createMediaComponent = (props) => (Object.assign({ type: 'media', kind: 'layout' }, props));
@@ -1,16 +0,0 @@
1
- import { getInputUpdateFunction } from './utils/component-utils';
2
- export const createModalContentComponent = (modalProps, onComponentUpdate) => {
3
- const update = getInputUpdateFunction(onComponentUpdate);
4
- const modalContentComponent = Object.assign(Object.assign({ type: 'modal', kind: 'layout', open: true }, modalProps), { _update(updateFn) {
5
- update(this, updateFn);
6
- },
7
- getChildren() {
8
- return this.components;
9
- },
10
- close() {
11
- update(this, (draft) => {
12
- draft.open = false;
13
- });
14
- } });
15
- return modalContentComponent;
16
- };
@@ -1,3 +0,0 @@
1
- export const createModalComponent = (modalProps) => (Object.assign(Object.assign({ type: 'modal-layout', kind: 'layout' }, modalProps), { getChildren() {
2
- return this.content.components;
3
- } }));
@@ -1,57 +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 { getLocalValueValidator } from '../features/validation/validation-functions';
13
- import { getInputUpdateFunction } from './utils/component-utils';
14
- export const createMoneyInputComponent = (moneyInputProps, onComponentUpdate) => {
15
- const { id, uid, schemaId, analyticsId, amountKey, amountComponent, currencyKey, currencyComponent, control, description, help, hidden, media, summariser, title, tags, extraValues, checks } = moneyInputProps, rest = __rest(moneyInputProps, ["id", "uid", "schemaId", "analyticsId", "amountKey", "amountComponent", "currencyKey", "currencyComponent", "control", "description", "help", "hidden", "media", "summariser", "title", "tags", "extraValues", "checks"]);
16
- const getValidationErrors = getLocalValueValidator(checks);
17
- const update = getInputUpdateFunction(onComponentUpdate);
18
- const moneyComponent = Object.assign({ type: 'money-input', kind: 'input', id,
19
- uid,
20
- schemaId,
21
- analyticsId, autoComplete: 'off', control,
22
- description,
23
- help,
24
- hidden,
25
- media,
26
- title,
27
- tags, value: {
28
- [amountKey]: amountComponent.getLocalValue(),
29
- [currencyKey]: currencyComponent.getLocalValue(),
30
- }, _update(updateFn) {
31
- update(this, updateFn);
32
- }, components: {
33
- amount: amountComponent,
34
- currency: currencyComponent,
35
- }, async getSubmittableValue() {
36
- return Object.assign({ [amountKey]: await amountComponent.getSubmittableValue(), [currencyKey]: await currencyComponent.getSubmittableValue() }, extraValues);
37
- },
38
- getSubmittableValueSync() {
39
- return Object.assign({ [amountKey]: amountComponent.getSubmittableValueSync(), [currencyKey]: currencyComponent.getSubmittableValueSync() }, extraValues);
40
- },
41
- getLocalValue() {
42
- return Object.assign({ [amountKey]: amountComponent.getLocalValue(), [currencyKey]: currencyComponent.getLocalValue() }, extraValues);
43
- },
44
- getSummary() {
45
- return summariser(this.getLocalValue());
46
- },
47
- validate() {
48
- const errors = getValidationErrors(amountComponent.getLocalValue());
49
- this._update((draft) => {
50
- draft.errors = errors;
51
- });
52
- return amountComponent.validate() && currencyComponent.validate() && errors.length === 0;
53
- },
54
- onBlur() { }, // noop
55
- onFocus() { } }, rest);
56
- return moneyComponent;
57
- };
@@ -1,81 +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 { isArray } from '../../utils/type-validators';
13
- import { getLocalValueValidator } from '../features/validation/validation-functions';
14
- import { getComponentValidationAsync } from '../features/validationAsync/getComponentValidationAsync';
15
- import { getInputUpdateFunction } from './utils/component-utils';
16
- export const createMultiSelectComponent = (multiSelectProps, onComponentUpdate) => {
17
- const { uid, checks, options, initialValue, performValidationAsync, schemaOnChange, onValueChange } = multiSelectProps, rest = __rest(multiSelectProps, ["uid", "checks", "options", "initialValue", "performValidationAsync", "schemaOnChange", "onValueChange"]);
18
- const update = getInputUpdateFunction(onComponentUpdate);
19
- const children = options.map((option) => option.component);
20
- const selectedIndices = getInitialModelIndices(initialValue, children);
21
- const getValidationErrors = getLocalValueValidator(checks);
22
- const validateAsync = performValidationAsync
23
- ? getComponentValidationAsync(update, performValidationAsync)
24
- : undefined;
25
- const component = Object.assign(Object.assign({ uid, type: 'multi-select', kind: 'input', children,
26
- options,
27
- selectedIndices, value: null }, rest), { _update(updateFn) {
28
- update(this, updateFn);
29
- },
30
- onSelect(indices) {
31
- this._update((draft) => {
32
- draft.selectedIndices = indices;
33
- draft.errors = [];
34
- });
35
- void (schemaOnChange === null || schemaOnChange === void 0 ? void 0 : schemaOnChange());
36
- const errors = getValidationErrors(this.getLocalValue());
37
- this._update((draft) => {
38
- draft.errors = errors;
39
- });
40
- if (this.validate()) {
41
- validateAsync === null || validateAsync === void 0 ? void 0 : validateAsync(this, this.getLocalValue()).catch(() => { }); // Noop
42
- }
43
- onValueChange();
44
- },
45
- onBlur() { }, // Noop
46
- onFocus() { }, // Noop
47
- getLocalValue() {
48
- var _a, _b;
49
- return (_b = (_a = this.getSelectedChildren()) === null || _a === void 0 ? void 0 : _a.map((child) => child.getLocalValue())) !== null && _b !== void 0 ? _b : null;
50
- },
51
- validate() {
52
- const errors = getValidationErrors(this.getLocalValue());
53
- this._update((draft) => {
54
- draft.errors = errors;
55
- });
56
- return errors.length === 0;
57
- },
58
- async getSubmittableValue() {
59
- const selected = this.getSelectedChildren();
60
- if (selected) {
61
- return Promise.all(selected.map(async (child) => child.getSubmittableValue()));
62
- }
63
- return null;
64
- },
65
- getSubmittableValueSync() {
66
- var _a, _b;
67
- return (_b = (_a = this.getSelectedChildren()) === null || _a === void 0 ? void 0 : _a.map((child) => child.getSubmittableValueSync())) !== null && _b !== void 0 ? _b : null;
68
- }, getSummary: () => ({}), getChildren() {
69
- return this.children;
70
- },
71
- getSelectedChildren() {
72
- return this.selectedIndices.map((i) => this.children[i]);
73
- } });
74
- return component;
75
- };
76
- const getInitialModelIndices = (model, options) => {
77
- if (!isArray(model)) {
78
- return [];
79
- }
80
- return model.map((m) => options.findIndex((o) => o.getLocalValue() === m)).filter((n) => n >= 0);
81
- };