@wise/dynamic-flow-client 5.11.0 → 5.12.0

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 (407) hide show
  1. package/build/main.js +15 -1
  2. package/build/main.mjs +15 -1
  3. package/build/types/controller/executePoll.d.ts.map +1 -1
  4. package/package.json +1 -1
  5. package/build/DynamicFlowCore.js +0 -5
  6. package/build/common/errorBoundary/ErrorBoundary.js +0 -26
  7. package/build/common/errorBoundary/ErrorBoundary.test.js +0 -29
  8. package/build/common/errorBoundary/ErrorBoundaryAlert.js +0 -11
  9. package/build/common/makeHttpClient/api-utils.js +0 -3
  10. package/build/common/makeHttpClient/index.js +0 -1
  11. package/build/common/makeHttpClient/makeHttpClient.js +0 -10
  12. package/build/common/makeHttpClient/makeHttpClient.test.js +0 -186
  13. package/build/common/messages/external-confirmation.messages.js +0 -23
  14. package/build/common/messages/file-upload.messages.js +0 -13
  15. package/build/common/messages/generic-error.messages.js +0 -18
  16. package/build/common/messages/help.messages.js +0 -8
  17. package/build/common/messages/multi-file-upload.messages.js +0 -18
  18. package/build/common/messages/multi-select.messages.js +0 -8
  19. package/build/common/messages/paragraph.messages.js +0 -13
  20. package/build/common/messages/repeatable.messages.js +0 -23
  21. package/build/common/messages/search.messages.js +0 -8
  22. package/build/common/messages/validation.array.messages.js +0 -13
  23. package/build/common/messages/validation.messages.js +0 -53
  24. package/build/controller/FlowController.js +0 -373
  25. package/build/controller/executePoll.js +0 -49
  26. package/build/controller/executeRefresh.js +0 -45
  27. package/build/controller/executeRequest.js +0 -80
  28. package/build/controller/executeSubmission.js +0 -70
  29. package/build/controller/getErrorMessage.js +0 -7
  30. package/build/controller/getRequestAbortController.js +0 -13
  31. package/build/controller/getResponseType.js +0 -35
  32. package/build/controller/getSafeHttpClient.js +0 -8
  33. package/build/controller/getStepCounter.js +0 -16
  34. package/build/controller/handleErrorResponse.js +0 -26
  35. package/build/controller/makeSafeHttpClient.js +0 -8
  36. package/build/controller/response-utils.js +0 -72
  37. package/build/domain/components/AlertComponent.js +0 -1
  38. package/build/domain/components/AllOfComponent.js +0 -40
  39. package/build/domain/components/BooleanInputComponent.js +0 -50
  40. package/build/domain/components/BoxComponent.js +0 -3
  41. package/build/domain/components/ButtonComponent.js +0 -1
  42. package/build/domain/components/ColumnsComponent.js +0 -3
  43. package/build/domain/components/ConstComponent.js +0 -18
  44. package/build/domain/components/ContainerComponent.js +0 -3
  45. package/build/domain/components/DateInputComponent.js +0 -75
  46. package/build/domain/components/DecisionComponent.js +0 -1
  47. package/build/domain/components/DividerComponent.js +0 -1
  48. package/build/domain/components/FormComponent.js +0 -3
  49. package/build/domain/components/FormattedValueComponent.js +0 -44
  50. package/build/domain/components/HeadingComponent.js +0 -1
  51. package/build/domain/components/ImageComponent.js +0 -1
  52. package/build/domain/components/InstructionsComponent.js +0 -1
  53. package/build/domain/components/IntegerInputComponent.js +0 -74
  54. package/build/domain/components/ListComponent.js +0 -1
  55. package/build/domain/components/LoadingIndicatorComponent.js +0 -1
  56. package/build/domain/components/MarkdownComponent.js +0 -1
  57. package/build/domain/components/MediaComponent.js +0 -1
  58. package/build/domain/components/ModalComponent.js +0 -16
  59. package/build/domain/components/ModalLayoutComponent.js +0 -3
  60. package/build/domain/components/MoneyInputComponent.js +0 -57
  61. package/build/domain/components/MultiSelectInputComponent.js +0 -81
  62. package/build/domain/components/MultiUploadInputComponent.js +0 -88
  63. package/build/domain/components/NumberInputComponent.js +0 -73
  64. package/build/domain/components/ObjectComponent.js +0 -45
  65. package/build/domain/components/ParagraphComponent.js +0 -1
  66. package/build/domain/components/PersistAsyncComponent.js +0 -92
  67. package/build/domain/components/ProgressComponent.js +0 -1
  68. package/build/domain/components/RepeatableComponent.js +0 -103
  69. package/build/domain/components/ReviewComponent.js +0 -1
  70. package/build/domain/components/RootDomainComponent.js +0 -173
  71. package/build/domain/components/SectionComponent.js +0 -5
  72. package/build/domain/components/SelectInputComponent.js +0 -88
  73. package/build/domain/components/StatusListComponent.js +0 -1
  74. package/build/domain/components/SubflowDomainComponent.js +0 -9
  75. package/build/domain/components/TabsComponent.js +0 -1
  76. package/build/domain/components/TextInputComponent.js +0 -76
  77. package/build/domain/components/TupleComponent.js +0 -41
  78. package/build/domain/components/UploadInputComponent.js +0 -83
  79. package/build/domain/components/UpsellComponent.js +0 -25
  80. package/build/domain/components/searchComponent/SearchComponent.js +0 -92
  81. package/build/domain/components/searchComponent/SearchComponent.test.js +0 -190
  82. package/build/domain/components/step/ExternalConfirmationComponent.js +0 -24
  83. package/build/domain/components/step/StepDomainComponent.js +0 -78
  84. package/build/domain/components/step/ToolbarComponent.js +0 -1
  85. package/build/domain/components/utils/WithUpdate.js +0 -1
  86. package/build/domain/components/utils/component-utils.js +0 -12
  87. package/build/domain/components/utils/debounce.js +0 -34
  88. package/build/domain/components/utils/debounce.test.js +0 -67
  89. package/build/domain/components/utils/file-utils.js +0 -21
  90. package/build/domain/components/utils/file-utils.test.js +0 -27
  91. package/build/domain/components/utils/getRandomId.js +0 -1
  92. package/build/domain/components/utils/isExactLocalValueMatch.js +0 -14
  93. package/build/domain/components/utils/isOrWasValid.js +0 -5
  94. package/build/domain/components/utils/isPartialModelMatch.js +0 -18
  95. package/build/domain/components/utils/isPartialModelMatch.test.js +0 -74
  96. package/build/domain/features/eventNames.js +0 -24
  97. package/build/domain/features/events.js +0 -1
  98. package/build/domain/features/persistAsync/getComponentMultiPersistAsync.js +0 -50
  99. package/build/domain/features/persistAsync/getInitialPersistedState.js +0 -7
  100. package/build/domain/features/persistAsync/getPerformPersistAsync.js +0 -43
  101. package/build/domain/features/persistAsync/getPerformPersistAsync.test.js +0 -139
  102. package/build/domain/features/polling/getStepPolling.js +0 -43
  103. package/build/domain/features/polling/getStepPolling.test.js +0 -90
  104. package/build/domain/features/prefetch/getStepPrefetch.js +0 -43
  105. package/build/domain/features/prefetch/request-cache.js +0 -49
  106. package/build/domain/features/prefetch/request-cache.test.js +0 -70
  107. package/build/domain/features/refreshAfter/getStepRefreshAfter.js +0 -24
  108. package/build/domain/features/refreshAfter/getStepRefreshAfter.test.js +0 -40
  109. package/build/domain/features/schema-on-change/getDebouncedSchemaOnChange.js +0 -50
  110. package/build/domain/features/schema-on-change/getSchemaOnChange.js +0 -34
  111. package/build/domain/features/search/getPerformSearchFunction.js +0 -75
  112. package/build/domain/features/search/getPerformSearchFunction.test.js +0 -301
  113. package/build/domain/features/summary/summary-utils.js +0 -40
  114. package/build/domain/features/summary/summary-utils.test.js +0 -125
  115. package/build/domain/features/utils/http-utils.js +0 -21
  116. package/build/domain/features/utils/response-utils.js +0 -9
  117. package/build/domain/features/validation/spec-utils.js +0 -19
  118. package/build/domain/features/validation/validateStringPattern.js +0 -24
  119. package/build/domain/features/validation/validation-functions.js +0 -6
  120. package/build/domain/features/validation/validation-functions.test.js +0 -108
  121. package/build/domain/features/validation/value-checks.js +0 -125
  122. package/build/domain/features/validation/value-checks.test.js +0 -262
  123. package/build/domain/features/validationAsync/getComponentValidationAsync.js +0 -53
  124. package/build/domain/features/validationAsync/getComponentValidationAsync.test.js +0 -67
  125. package/build/domain/features/validationAsync/getInitialValidationAsyncState.js +0 -5
  126. package/build/domain/features/validationAsync/getPerformValidationAsync.js +0 -45
  127. package/build/domain/features/validationAsync/getPerformValidationAsync.test.js +0 -143
  128. package/build/domain/mappers/layout/alertLayoutToComponent.js +0 -16
  129. package/build/domain/mappers/layout/boxLayoutToComponent.js +0 -13
  130. package/build/domain/mappers/layout/buttonLayoutToComponent.js +0 -77
  131. package/build/domain/mappers/layout/columnsLayoutToComponent.js +0 -13
  132. package/build/domain/mappers/layout/decisionLayoutToComponent.js +0 -22
  133. package/build/domain/mappers/layout/deprecatedListLayoutToComponent.js +0 -30
  134. package/build/domain/mappers/layout/dividerLayoutToComponent.js +0 -2
  135. package/build/domain/mappers/layout/formLayoutToComponent.js +0 -19
  136. package/build/domain/mappers/layout/headingLayoutToComponent.js +0 -12
  137. package/build/domain/mappers/layout/imageLayoutToComponent.js +0 -20
  138. package/build/domain/mappers/layout/infoLayoutToComponent.js +0 -12
  139. package/build/domain/mappers/layout/instructionsLayoutToComponent.js +0 -12
  140. package/build/domain/mappers/layout/listLayoutToComponent.js +0 -39
  141. package/build/domain/mappers/layout/loadingIndicatorLayoutToComponent.js +0 -9
  142. package/build/domain/mappers/layout/markdownLayoutToComponent.js +0 -12
  143. package/build/domain/mappers/layout/mediaLayoutToComponent.js +0 -12
  144. package/build/domain/mappers/layout/modalLayoutToComponent.js +0 -17
  145. package/build/domain/mappers/layout/modalToComponent.js +0 -8
  146. package/build/domain/mappers/layout/paragraphLayoutToComponent.js +0 -12
  147. package/build/domain/mappers/layout/progressLayoutToComponent.js +0 -15
  148. package/build/domain/mappers/layout/reviewLayoutToComponent.js +0 -48
  149. package/build/domain/mappers/layout/searchLayoutToComponent.js +0 -44
  150. package/build/domain/mappers/layout/sectionLayoutToComponent.js +0 -15
  151. package/build/domain/mappers/layout/statusListLayoutToComponent.js +0 -15
  152. package/build/domain/mappers/layout/tabsLayoutToComponent.js +0 -16
  153. package/build/domain/mappers/layout/upsellLayoutToComponent.js +0 -25
  154. package/build/domain/mappers/mapLayoutToComponent.js +0 -81
  155. package/build/domain/mappers/mapSchemaToComponent.js +0 -61
  156. package/build/domain/mappers/mapSchemaToComponent.test.js +0 -112
  157. package/build/domain/mappers/mapStepSchemas.js +0 -15
  158. package/build/domain/mappers/mapStepToComponent.js +0 -133
  159. package/build/domain/mappers/mapStepToComponent.test.js +0 -221
  160. package/build/domain/mappers/mapToolbarToComponent.js +0 -15
  161. package/build/domain/mappers/schema/allOfSchemaToComponent.js +0 -16
  162. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToComponent.js +0 -26
  163. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToMultiSelectComponent.js +0 -55
  164. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToMultiUploadComponent.js +0 -67
  165. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToRepeatableComponent.js +0 -57
  166. package/build/domain/mappers/schema/arraySchemaToComponent/arraySchemaToTupleComponent.js +0 -20
  167. package/build/domain/mappers/schema/blobSchemaToComponent.js +0 -15
  168. package/build/domain/mappers/schema/booleanSchemaToComponent.js +0 -29
  169. package/build/domain/mappers/schema/constSchemaToComponent.js +0 -23
  170. package/build/domain/mappers/schema/integerSchemaToComponent.js +0 -28
  171. package/build/domain/mappers/schema/numberSchemaToComponent.js +0 -26
  172. package/build/domain/mappers/schema/objectSchemaToComponent/assertDisplayOrder.js +0 -23
  173. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToFormattedValueComponent.js +0 -9
  174. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToMoneyInputComponent.js +0 -119
  175. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToMoneyInputComponent.test.js +0 -96
  176. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToObjectComponent.js +0 -31
  177. package/build/domain/mappers/schema/objectSchemaToComponent/objectSchemaToObjectComponent.test.js +0 -99
  178. package/build/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.js +0 -66
  179. package/build/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.test.js +0 -225
  180. package/build/domain/mappers/schema/persistAsyncSchemaToComponent.js +0 -29
  181. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToComponent.js +0 -18
  182. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToComponent.test.js +0 -133
  183. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToDateInputComponent.js +0 -48
  184. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToTextInputComponent.js +0 -37
  185. package/build/domain/mappers/schema/stringSchemaToComponent/stringSchemaToUploadInputComponent.js +0 -28
  186. package/build/domain/mappers/schema/tests/test-utils.js +0 -16
  187. package/build/domain/mappers/schema/types.js +0 -1
  188. package/build/domain/mappers/schema/utils/getPerformPersistAsyncFn.js +0 -19
  189. package/build/domain/mappers/schema/utils/getValidationAsyncInitialState.js +0 -23
  190. package/build/domain/mappers/schema/utils/mapCommonSchemaProps.js +0 -16
  191. package/build/domain/mappers/types.js +0 -1
  192. package/build/domain/mappers/utils/FeatureFlags.js +0 -22
  193. package/build/domain/mappers/utils/behavior-utils.js +0 -44
  194. package/build/domain/mappers/utils/call-to-action-utils.js +0 -21
  195. package/build/domain/mappers/utils/getAutocompleteString.js +0 -76
  196. package/build/domain/mappers/utils/getAutocompleteString.test.js +0 -21
  197. package/build/domain/mappers/utils/groupLayoutByPinned.js +0 -38
  198. package/build/domain/mappers/utils/groupLayoutByPinned.test.js +0 -166
  199. package/build/domain/mappers/utils/image.js +0 -9
  200. package/build/domain/mappers/utils/layout-utils.js +0 -11
  201. package/build/domain/mappers/utils/legacy-utils.js +0 -49
  202. package/build/domain/mappers/utils/media-utils.js +0 -14
  203. package/build/domain/mappers/utils/suggestions-utils.js +0 -26
  204. package/build/domain/mappers/utils/suggestions-utils.test.js +0 -36
  205. package/build/domain/mappers/utils/tags-utils.js +0 -1
  206. package/build/domain/mappers/utils/utils.js +0 -35
  207. package/build/domain/types.js +0 -1
  208. package/build/getSubflowCallbacks.js +0 -38
  209. package/build/i18n/index.js +0 -40
  210. package/build/index.js +0 -8
  211. package/build/renderers/CoreContainerRenderer.js +0 -5
  212. package/build/renderers/CoreRootRenderer.js +0 -12
  213. package/build/renderers/EmptyLoadingStateRenderer.js +0 -5
  214. package/build/renderers/getRenderFunction.js +0 -24
  215. package/build/renderers/getSchemaErrorMessageFunction.js +0 -97
  216. package/build/renderers/mappers/alertComponentToProps.js +0 -2
  217. package/build/renderers/mappers/allOfComponentToProps.js +0 -6
  218. package/build/renderers/mappers/booleanInputComponentToProps.js +0 -5
  219. package/build/renderers/mappers/boxComponentToProps.js +0 -13
  220. package/build/renderers/mappers/buttonComponentToProps.js +0 -4
  221. package/build/renderers/mappers/columnsComponentToProps.js +0 -11
  222. package/build/renderers/mappers/componentToRendererProps.js +0 -164
  223. package/build/renderers/mappers/constComponentToProps.js +0 -5
  224. package/build/renderers/mappers/containerComponentToProps.js +0 -7
  225. package/build/renderers/mappers/dateInputComponentToProps.js +0 -2
  226. package/build/renderers/mappers/decisionComponentToProps.js +0 -16
  227. package/build/renderers/mappers/dividerComponentToProps.js +0 -2
  228. package/build/renderers/mappers/externalComponentToProps.js +0 -3
  229. package/build/renderers/mappers/formComponentToProps.js +0 -12
  230. package/build/renderers/mappers/formattedValueComponentToProps.js +0 -5
  231. package/build/renderers/mappers/headingComponentToProps.js +0 -2
  232. package/build/renderers/mappers/hiddenComponentToProps.js +0 -4
  233. package/build/renderers/mappers/imageComponentToProps.js +0 -2
  234. package/build/renderers/mappers/instructionsComponentToProps.js +0 -2
  235. package/build/renderers/mappers/integerInputComponentToProps.js +0 -2
  236. package/build/renderers/mappers/listComponentToProps.js +0 -2
  237. package/build/renderers/mappers/loadingIndicatorComponentToProps.js +0 -2
  238. package/build/renderers/mappers/markdownComponentToProps.js +0 -2
  239. package/build/renderers/mappers/mediaComponentToProps.js +0 -2
  240. package/build/renderers/mappers/modalComponentToProps.js +0 -11
  241. package/build/renderers/mappers/modalLayoutComponentToProps.js +0 -16
  242. package/build/renderers/mappers/moneyInputComponentToProps.js +0 -36
  243. package/build/renderers/mappers/multiSelectComponentToProps.js +0 -23
  244. package/build/renderers/mappers/multiUploadInputComponentToProps.js +0 -12
  245. package/build/renderers/mappers/numberInputComponentToProps.js +0 -2
  246. package/build/renderers/mappers/objectComponentToProps.js +0 -8
  247. package/build/renderers/mappers/paragraphComponentToProps.js +0 -2
  248. package/build/renderers/mappers/persistAsyncComponentToProps.js +0 -8
  249. package/build/renderers/mappers/progressComponentToProps.js +0 -2
  250. package/build/renderers/mappers/repeatableComponentToProps.js +0 -30
  251. package/build/renderers/mappers/reviewComponentToProps.js +0 -2
  252. package/build/renderers/mappers/rootComponentToProps.js +0 -21
  253. package/build/renderers/mappers/searchComponentToProps.js +0 -57
  254. package/build/renderers/mappers/sectionComponentToProps.js +0 -6
  255. package/build/renderers/mappers/selectInputComponentToProps.js +0 -34
  256. package/build/renderers/mappers/statusListComponentToProps.js +0 -2
  257. package/build/renderers/mappers/subflowComponentToRendererProps.js +0 -4
  258. package/build/renderers/mappers/tabsComponentToProps.js +0 -14
  259. package/build/renderers/mappers/textInputComponentToProps.js +0 -2
  260. package/build/renderers/mappers/tupleComponentToProps.js +0 -8
  261. package/build/renderers/mappers/uploadInputComponentToProps.js +0 -8
  262. package/build/renderers/mappers/upsellComponentToProps.js +0 -2
  263. package/build/renderers/mappers/utils/getValidationState.js +0 -12
  264. package/build/renderers/mappers/utils/inputComponentToProps.js +0 -26
  265. package/build/renderers/mappers/utils/mapErrorsToValidationState.js +0 -9
  266. package/build/renderers/mappers/utils/pick.js +0 -8
  267. package/build/renderers/mappers/utils/selectInputOptionsToProps.js +0 -11
  268. package/build/renderers/stepComponentToProps.js +0 -32
  269. package/build/renderers/utils.js +0 -69
  270. package/build/renderers/utils.test.js +0 -70
  271. package/build/stories/dev-tools/ContainerQueries.story.js +0 -66
  272. package/build/stories/dev-tools/Debugger.story.js +0 -38
  273. package/build/stories/dev-tools/FixtureSelect.story.js +0 -23
  274. package/build/stories/dev-tools/TestServer.story.js +0 -32
  275. package/build/stories/examples/NativeFlow.story.js +0 -80
  276. package/build/stories/examples/Recipients.story.js +0 -568
  277. package/build/stories/spec/behavior/Copy.story.js +0 -71
  278. package/build/stories/spec/behavior/Link.story.js +0 -40
  279. package/build/stories/spec/behavior/Modal.story.js +0 -79
  280. package/build/stories/spec/behavior/Subflow.story.js +0 -267
  281. package/build/stories/spec/layouts/Decision.story.js +0 -241
  282. package/build/stories/spec/layouts/Image.story.js +0 -42
  283. package/build/stories/spec/layouts/Modal.story.js +0 -81
  284. package/build/stories/spec/layouts/Search.story.js +0 -325
  285. package/build/stories/spec/layouts/Upsell.story.js +0 -55
  286. package/build/stories/spec/layouts/button/Button.story.js +0 -100
  287. package/build/stories/spec/layouts/button/PinnedButton.story.js +0 -81
  288. package/build/stories/spec/response/ActionResponse.story.js +0 -66
  289. package/build/stories/spec/schemas/MultiSelect.story.js +0 -148
  290. package/build/stories/spec/schemas/Upload.story.js +0 -168
  291. package/build/stories/spec/schemas/const/ConstLayout.story.js +0 -159
  292. package/build/stories/spec/schemas/const/ObjectConst.story.js +0 -94
  293. package/build/stories/spec/schemas/features/PersistAsync.story.js +0 -211
  294. package/build/stories/spec/schemas/features/ValidationAsync.story.js +0 -103
  295. package/build/stories/spec/schemas/object/FormattedValue.story.js +0 -92
  296. package/build/stories/spec/schemas/object/MoneyInput.story.js +0 -240
  297. package/build/stories/spec/schemas/oneOf/OneOfInitialisation.story.js +0 -55
  298. package/build/stories/spec/schemas/oneOf/OneOfWithSingleOption.story.js +0 -114
  299. package/build/stories/spec/step/Controls.story.js +0 -109
  300. package/build/stories/spec/step/DFModal.story.js +0 -58
  301. package/build/stories/spec/step/Footer.story.js +0 -70
  302. package/build/stories/spec/step/Navigation.story.js +0 -20
  303. package/build/stories/spec/step/ScrollToBottom.story.js +0 -103
  304. package/build/stories/spec/step/Tags.story.js +0 -39
  305. package/build/stories/spec/step/ToolBar.story.js +0 -60
  306. package/build/stories/spec/step/features/ErrorHandling.story.js +0 -92
  307. package/build/stories/spec/step/features/External.story.js +0 -91
  308. package/build/stories/spec/step/features/Polling.story.js +0 -108
  309. package/build/stories/spec/step/features/RefreshAfter.story.js +0 -92
  310. package/build/stories/spec/step/features/refresh/Refresh.story.js +0 -258
  311. package/build/stories/spec/step/features/refresh/RefreshWithPersistAsync.story.js +0 -958
  312. package/build/stories/types.js +0 -1
  313. package/build/stories/utils/fixtureHttpClient.js +0 -70
  314. package/build/stories/utils/getBasicStep.js +0 -223
  315. package/build/stories/utils/mockSearchHandler.js +0 -71
  316. package/build/stories/utils/render-utils.js +0 -41
  317. package/build/stories/visual-tests/layouts/NotUsingListItem.story.js +0 -17
  318. package/build/test-utils/DynamicFlowWise.js +0 -32
  319. package/build/test-utils/DynamicFlowWiseModal.js +0 -34
  320. package/build/test-utils/NeptuneProviders.js +0 -11
  321. package/build/test-utils/component-utils.js +0 -5
  322. package/build/test-utils/fetch-utils.js +0 -45
  323. package/build/test-utils/getMergedTestRenderers.js +0 -34
  324. package/build/test-utils/getRandomId.js +0 -1
  325. package/build/test-utils/index.js +0 -3
  326. package/build/test-utils/openLinkInNewTab.js +0 -15
  327. package/build/test-utils/rtl-utils.js +0 -7
  328. package/build/test-utils/step-utils.js +0 -6
  329. package/build/test-utils/wait.js +0 -3
  330. package/build/tests/AlertLayout.test.js +0 -78
  331. package/build/tests/ArrayTuple.test.js +0 -118
  332. package/build/tests/ButtonLayout.test.js +0 -308
  333. package/build/tests/ConstLayout.test.js +0 -95
  334. package/build/tests/DateInput.test.js +0 -163
  335. package/build/tests/DecisionLayout.test.js +0 -146
  336. package/build/tests/DynamicFlow.test.js +0 -147
  337. package/build/tests/External.test.js +0 -169
  338. package/build/tests/Flow.test.js +0 -328
  339. package/build/tests/FormLayout.test.js +0 -28
  340. package/build/tests/FormattedValue.test.js +0 -107
  341. package/build/tests/ImageRenderer.test.js +0 -78
  342. package/build/tests/InitialAction.test.js +0 -179
  343. package/build/tests/InitialStep.test.js +0 -168
  344. package/build/tests/InstructionsLayout.test.js +0 -45
  345. package/build/tests/ListLayout.test.js +0 -145
  346. package/build/tests/Logging.test.js +0 -53
  347. package/build/tests/ModalBehavior.test.js +0 -149
  348. package/build/tests/MoneyInput.test.js +0 -316
  349. package/build/tests/MultiUpload.test.js +0 -293
  350. package/build/tests/NativeBack.test.js +0 -267
  351. package/build/tests/NoOp.test.js +0 -194
  352. package/build/tests/OneOfInitialisation.test.js +0 -571
  353. package/build/tests/PersistAsync.test.js +0 -687
  354. package/build/tests/Polling.test.js +0 -617
  355. package/build/tests/Prefetching.test.js +0 -230
  356. package/build/tests/RefreshAfter.test.js +0 -63
  357. package/build/tests/RefreshOnChange.ResponseHandling.test.js +0 -205
  358. package/build/tests/RefreshOnChange.test.js +0 -233
  359. package/build/tests/RefreshOnChange.with.Segmented.test.js +0 -348
  360. package/build/tests/RefreshOnChange.with.Tabs.test.js +0 -358
  361. package/build/tests/RefreshOnChangePreserve.test.js +0 -224
  362. package/build/tests/RendererProps.test.js +0 -342
  363. package/build/tests/Repeatable.test.js +0 -107
  364. package/build/tests/Rerendering.test.js +0 -67
  365. package/build/tests/ReviewLayout.test.js +0 -274
  366. package/build/tests/SchemaOnChange.test.js +0 -133
  367. package/build/tests/SchemaReferences.test.js +0 -88
  368. package/build/tests/ScrollToBottom.test.js +0 -122
  369. package/build/tests/ScrollToError.test.js +0 -217
  370. package/build/tests/SegmentedControl.test.js +0 -49
  371. package/build/tests/SingleFileUpload.test.js +0 -168
  372. package/build/tests/StatusList.test.js +0 -85
  373. package/build/tests/Subflow.test.js +0 -710
  374. package/build/tests/Submission.ResponseHandling.test.js +0 -557
  375. package/build/tests/Submission.merging.test.js +0 -202
  376. package/build/tests/Submission.test.js +0 -748
  377. package/build/tests/Tags.test.js +0 -475
  378. package/build/tests/Upsell.test.js +0 -154
  379. package/build/tests/ValidationAsync.test.js +0 -295
  380. package/build/tests/legacy/Actions.test.js +0 -158
  381. package/build/tests/legacy/BackButton.test.js +0 -114
  382. package/build/tests/legacy/HiddenSchemas.test.js +0 -246
  383. package/build/tests/legacy/MultiSelect.test.js +0 -501
  384. package/build/tests/legacy/MultipleFileUploadSchema.test.js +0 -341
  385. package/build/tests/legacy/PersistAsync.blob-schema.test.js +0 -224
  386. package/build/tests/legacy/PersistAsync.string-schema.test.js +0 -211
  387. package/build/tests/legacy/RefreshStepOnChange.debouncing.test.js +0 -209
  388. package/build/tests/legacy/RefreshStepOnChange.test.js +0 -424
  389. package/build/tests/legacy/Search.test.js +0 -437
  390. package/build/tests/renderers/MultiSelectInputRendererProps.test.js +0 -58
  391. package/build/tests/renderers/SelectInputRendererProps.test.js +0 -43
  392. package/build/tests/renderers/TextInputRenderer.test.js +0 -51
  393. package/build/types.js +0 -1
  394. package/build/useDynamicFlow.js +0 -104
  395. package/build/useDynamicFlowModal.js +0 -58
  396. package/build/utils/analyse-step.js +0 -14
  397. package/build/utils/component-utils.js +0 -8
  398. package/build/utils/component-utils.test.js +0 -113
  399. package/build/utils/getScrollToTop.js +0 -12
  400. package/build/utils/normalise-flow-id.js +0 -1
  401. package/build/utils/normalise-flow-id.test.js +0 -24
  402. package/build/utils/recursiveMerge.js +0 -40
  403. package/build/utils/recursiveMerge.test.js +0 -93
  404. package/build/utils/type-utils.js +0 -21
  405. package/build/utils/type-validators.js +0 -11
  406. package/build/utils/type-validators.test.js +0 -180
  407. package/build/utils/useStableCallback.js +0 -15
@@ -1,35 +0,0 @@
1
- import { isObject } from '../utils/type-validators';
2
- const responseTypes = ['step', 'action', 'exit', 'modal', 'subflow', 'no-op'];
3
- /**
4
- * Returns either 'step', 'action', 'exit', 'modal', 'subflow', or 'no-op' based on the response headers and body.
5
- * This function takes a response body parameter because, for legacy reasons, we still need to consider the body
6
- * to determine the response type, in cases where the response headers are not set.
7
- * Ideally it should just be a matter of checking the "X-Df-Response-Type" response header.
8
- */
9
- export const getResponseType = (headers, body) => {
10
- const headerResponseType = getResponseTypeFromHeader(headers);
11
- if (headerResponseType) {
12
- return headerResponseType;
13
- }
14
- if (isObject(body) && body.action) {
15
- // TODO: use Zod to validate the action object
16
- return 'action';
17
- }
18
- return 'step';
19
- };
20
- export const getResponseTypeFromHeader = (headers) => {
21
- if (headers === null || headers === void 0 ? void 0 : headers.has('X-Df-Response-Type')) {
22
- const type = headers.get('X-Df-Response-Type');
23
- assertDFResponseType(type);
24
- return type;
25
- }
26
- if (headers === null || headers === void 0 ? void 0 : headers.has('X-Df-Exit')) {
27
- return 'exit';
28
- }
29
- return undefined;
30
- };
31
- function assertDFResponseType(type) {
32
- if (!responseTypes.includes(type)) {
33
- throw new Error("Unsupported X-Df-Response-Type. Allowed values are 'step', 'action', 'exit', 'modal', 'subflow', 'no-op'.");
34
- }
35
- }
@@ -1,8 +0,0 @@
1
- export const getSafeHttpClient = (httpClient) => async (input, init) => {
2
- try {
3
- return await httpClient(input, init);
4
- }
5
- catch (_a) {
6
- return null;
7
- }
8
- };
@@ -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
- };