@lifesg/web-frontend-engine 2.2.4 → 2.2.5

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 (335) hide show
  1. package/chunks/file-upload-manager.817b80cc.js +2 -0
  2. package/chunks/file-upload-manager.817b80cc.js.map +1 -0
  3. package/chunks/{index.ac3b6195.js → index.44b5e2a5.js} +10 -10
  4. package/chunks/{index.ac3b6195.js.map → index.44b5e2a5.js.map} +1 -1
  5. package/chunks/{index.a24b1857.js → index.51ad1607.js} +2 -2
  6. package/chunks/{index.a24b1857.js.map → index.51ad1607.js.map} +1 -1
  7. package/chunks/{index.8edac70b.js → index.f1de2e77.js} +2 -2
  8. package/chunks/{index.8edac70b.js.map → index.f1de2e77.js.map} +1 -1
  9. package/chunks/{location-modal.6475a4db.js → location-modal.1859f93a.js} +2 -2
  10. package/chunks/{location-modal.6475a4db.js.map → location-modal.1859f93a.js.map} +1 -1
  11. package/cjs/chunks/file-upload-manager.85af8429.js +2 -0
  12. package/cjs/chunks/file-upload-manager.85af8429.js.map +1 -0
  13. package/cjs/chunks/{index.d136a8bd.js → index.48f1a1f1.js} +2 -2
  14. package/cjs/chunks/{index.d136a8bd.js.map → index.48f1a1f1.js.map} +1 -1
  15. package/cjs/chunks/{index.6a929030.js → index.c2370225.js} +7 -7
  16. package/cjs/chunks/{index.6a929030.js.map → index.c2370225.js.map} +1 -1
  17. package/cjs/chunks/{index.6e0e20f7.js → index.efc005fc.js} +2 -2
  18. package/cjs/chunks/{index.6e0e20f7.js.map → index.efc005fc.js.map} +1 -1
  19. package/cjs/chunks/{location-modal.e5989ca3.js → location-modal.6885ccea.js} +2 -2
  20. package/cjs/chunks/{location-modal.e5989ca3.js.map → location-modal.6885ccea.js.map} +1 -1
  21. package/cjs/index.js +1 -1
  22. package/components/custom/array-field/array-field-element.d.ts +10 -11
  23. package/components/custom/array-field/array-field.d.ts +3 -3
  24. package/components/custom/array-field/array-field.styles.d.ts +22 -23
  25. package/components/custom/array-field/index.d.ts +2 -2
  26. package/components/custom/array-field/types.d.ts +39 -39
  27. package/components/custom/filter/filter/filter.d.ts +3 -3
  28. package/components/custom/filter/filter/types.d.ts +12 -12
  29. package/components/custom/filter/filter-checkbox/filter-checkbox.d.ts +3 -3
  30. package/components/custom/filter/filter-checkbox/types.d.ts +23 -23
  31. package/components/custom/filter/filter-helper.d.ts +8 -8
  32. package/components/custom/filter/filter-item/filter-item.d.ts +3 -3
  33. package/components/custom/filter/filter-item/types.d.ts +13 -13
  34. package/components/custom/filter/index.d.ts +3 -3
  35. package/components/custom/filter/types.d.ts +11 -11
  36. package/components/custom/iframe/iframe.d.ts +3 -3
  37. package/components/custom/iframe/index.d.ts +2 -2
  38. package/components/custom/iframe/types.d.ts +28 -29
  39. package/components/custom/index.d.ts +6 -6
  40. package/components/custom/review/index.d.ts +2 -2
  41. package/components/custom/review/review.d.ts +3 -3
  42. package/components/custom/review/review.styles.d.ts +12 -13
  43. package/components/custom/review/types.d.ts +60 -60
  44. package/components/custom/timeline/index.d.ts +2 -2
  45. package/components/custom/timeline/timeline.d.ts +3 -3
  46. package/components/custom/timeline/types.d.ts +19 -19
  47. package/components/custom/types.d.ts +87 -87
  48. package/components/elements/accordion/accordion.d.ts +6 -6
  49. package/components/elements/accordion/accordion.styles.d.ts +1 -2
  50. package/components/elements/accordion/index.d.ts +2 -2
  51. package/components/elements/accordion/types.d.ts +27 -27
  52. package/components/elements/alert/alert.d.ts +3 -3
  53. package/components/elements/alert/index.d.ts +2 -2
  54. package/components/elements/alert/types.d.ts +9 -10
  55. package/components/elements/divider/divider.d.ts +3 -3
  56. package/components/elements/divider/index.d.ts +2 -2
  57. package/components/elements/divider/types.d.ts +6 -6
  58. package/components/elements/grid/grid.d.ts +3 -3
  59. package/components/elements/grid/index.d.ts +2 -2
  60. package/components/elements/grid/types.d.ts +11 -11
  61. package/components/elements/index.d.ts +9 -9
  62. package/components/elements/list/data.d.ts +3 -3
  63. package/components/elements/list/index.d.ts +3 -3
  64. package/components/elements/list/list-item.d.ts +3 -3
  65. package/components/elements/list/list.d.ts +3 -3
  66. package/components/elements/list/types.d.ts +17 -17
  67. package/components/elements/popover/index.d.ts +2 -2
  68. package/components/elements/popover/popover.d.ts +3 -3
  69. package/components/elements/popover/types.d.ts +15 -15
  70. package/components/elements/section/index.d.ts +2 -2
  71. package/components/elements/section/section.d.ts +2 -2
  72. package/components/elements/section/section.styles.d.ts +11 -12
  73. package/components/elements/section/types.d.ts +16 -16
  74. package/components/elements/sections/index.d.ts +1 -1
  75. package/components/elements/sections/sections.d.ts +13 -13
  76. package/components/elements/tab/index.d.ts +2 -2
  77. package/components/elements/tab/tab.d.ts +3 -3
  78. package/components/elements/tab/types.d.ts +23 -23
  79. package/components/elements/text/data.d.ts +121 -122
  80. package/components/elements/text/index.d.ts +2 -2
  81. package/components/elements/text/text.d.ts +3 -3
  82. package/components/elements/text/types.d.ts +18 -18
  83. package/components/elements/types.d.ts +97 -97
  84. package/components/elements/wrapper/col-wrapper.d.ts +12 -12
  85. package/components/elements/wrapper/conditional-renderer.d.ts +16 -16
  86. package/components/elements/wrapper/field-wrapper.d.ts +9 -10
  87. package/components/elements/wrapper/index.d.ts +2 -2
  88. package/components/elements/wrapper/types.d.ts +29 -30
  89. package/components/elements/wrapper/wrapper.d.ts +2 -3
  90. package/components/fields/button/button.d.ts +3 -3
  91. package/components/fields/button/index.d.ts +2 -2
  92. package/components/fields/button/types.d.ts +17 -17
  93. package/components/fields/checkbox-group/checkbox-group.d.ts +3 -3
  94. package/components/fields/checkbox-group/checkbox-group.styles.d.ts +23 -24
  95. package/components/fields/checkbox-group/index.d.ts +2 -2
  96. package/components/fields/checkbox-group/types.d.ts +33 -33
  97. package/components/fields/chips/chips.d.ts +3 -3
  98. package/components/fields/chips/chips.styles.d.ts +5 -6
  99. package/components/fields/chips/index.d.ts +2 -2
  100. package/components/fields/chips/types.d.ts +18 -19
  101. package/components/fields/contact-field/contact-field.d.ts +3 -3
  102. package/components/fields/contact-field/data.d.ts +6 -6
  103. package/components/fields/contact-field/index.d.ts +2 -2
  104. package/components/fields/contact-field/types.d.ts +31 -31
  105. package/components/fields/contact-field/utils.d.ts +7 -7
  106. package/components/fields/date-field/date-field.d.ts +3 -3
  107. package/components/fields/date-field/index.d.ts +2 -2
  108. package/components/fields/date-field/types.d.ts +20 -20
  109. package/components/fields/date-range-field/date-range-field.d.ts +3 -3
  110. package/components/fields/date-range-field/index.d.ts +2 -2
  111. package/components/fields/date-range-field/types.d.ts +32 -32
  112. package/components/fields/e-signature-field/e-signature-field.d.ts +3 -3
  113. package/components/fields/e-signature-field/e-signature-field.styles.d.ts +4 -5
  114. package/components/fields/e-signature-field/index.d.ts +2 -2
  115. package/components/fields/e-signature-field/types.d.ts +22 -22
  116. package/components/fields/error-field/error-field.d.ts +3 -3
  117. package/components/fields/error-field/index.d.ts +2 -2
  118. package/components/fields/error-field/types.d.ts +11 -11
  119. package/components/fields/file-upload/file-upload-context.d.ts +14 -14
  120. package/components/fields/file-upload/file-upload-helper.d.ts +10 -10
  121. package/components/fields/file-upload/file-upload-manager.d.ts +14 -14
  122. package/components/fields/file-upload/file-upload.d.ts +4 -4
  123. package/components/fields/file-upload/index.d.ts +2 -2
  124. package/components/fields/file-upload/types.d.ts +78 -78
  125. package/components/fields/hidden-field/hidden-field.d.ts +3 -3
  126. package/components/fields/hidden-field/index.d.ts +2 -2
  127. package/components/fields/hidden-field/types.d.ts +29 -29
  128. package/components/fields/histogram-slider/histogram-slider.d.ts +3 -3
  129. package/components/fields/histogram-slider/index.d.ts +2 -2
  130. package/components/fields/histogram-slider/types.d.ts +20 -20
  131. package/components/fields/image-upload/image-context/image-context.d.ts +16 -16
  132. package/components/fields/image-upload/image-context/index.d.ts +1 -1
  133. package/components/fields/image-upload/image-input/drag-upload/drag-upload.d.ts +2 -3
  134. package/components/fields/image-upload/image-input/drag-upload/drag-upload.styles.d.ts +14 -15
  135. package/components/fields/image-upload/image-input/drag-upload/index.d.ts +2 -2
  136. package/components/fields/image-upload/image-input/drag-upload/types.d.ts +15 -16
  137. package/components/fields/image-upload/image-input/file-item/file-item.d.ts +11 -11
  138. package/components/fields/image-upload/image-input/file-item/file-item.styles.d.ts +48 -49
  139. package/components/fields/image-upload/image-input/file-item/index.d.ts +1 -1
  140. package/components/fields/image-upload/image-input/image-input.d.ts +26 -26
  141. package/components/fields/image-upload/image-input/image-input.styles.d.ts +47 -48
  142. package/components/fields/image-upload/image-input/index.d.ts +1 -1
  143. package/components/fields/image-upload/image-manager/image-manager.d.ts +25 -25
  144. package/components/fields/image-upload/image-manager/index.d.ts +2 -2
  145. package/components/fields/image-upload/image-review/image-editor/image-editor.d.ts +2 -3
  146. package/components/fields/image-upload/image-review/image-editor/image-editor.styles.d.ts +6 -7
  147. package/components/fields/image-upload/image-review/image-editor/index.d.ts +3 -3
  148. package/components/fields/image-upload/image-review/image-editor/types.d.ts +17 -17
  149. package/components/fields/image-upload/image-review/image-error/image-error.d.ts +10 -10
  150. package/components/fields/image-upload/image-review/image-error/image-error.styles.d.ts +31 -32
  151. package/components/fields/image-upload/image-review/image-error/index.d.ts +1 -1
  152. package/components/fields/image-upload/image-review/image-prompts/image-prompts.d.ts +11 -11
  153. package/components/fields/image-upload/image-review/image-prompts/index.d.ts +1 -1
  154. package/components/fields/image-upload/image-review/image-review.d.ts +18 -18
  155. package/components/fields/image-upload/image-review/image-review.styles.d.ts +128 -129
  156. package/components/fields/image-upload/image-review/image-thumbnails/image-thumbnails.d.ts +11 -11
  157. package/components/fields/image-upload/image-review/image-thumbnails/image-thumbnails.styles.d.ts +29 -30
  158. package/components/fields/image-upload/image-review/image-thumbnails/index.d.ts +1 -1
  159. package/components/fields/image-upload/image-review/index.d.ts +1 -1
  160. package/components/fields/image-upload/image-upload-helper.d.ts +12 -10
  161. package/components/fields/image-upload/image-upload.d.ts +4 -4
  162. package/components/fields/image-upload/index.d.ts +2 -2
  163. package/components/fields/image-upload/types.d.ts +151 -151
  164. package/components/fields/index.d.ts +30 -30
  165. package/components/fields/location-field/index.d.ts +2 -2
  166. package/components/fields/location-field/location-field.d.ts +3 -3
  167. package/components/fields/location-field/location-helper.d.ts +38 -39
  168. package/components/fields/location-field/location-input/dummy-location-field.d.ts +13 -14
  169. package/components/fields/location-field/location-input/index.d.ts +1 -1
  170. package/components/fields/location-field/location-input/location-input.d.ts +6 -7
  171. package/components/fields/location-field/location-input/location-input.styles.d.ts +22 -23
  172. package/components/fields/location-field/location-modal/infinite-scroll/index.d.ts +1 -1
  173. package/components/fields/location-field/location-modal/infinite-scroll/infinite-scroll.d.ts +11 -12
  174. package/components/fields/location-field/location-modal/infinite-scroll/infinite-scroll.style.d.ts +1 -2
  175. package/components/fields/location-field/location-modal/infinite-scroll/loading-indicator/config.d.ts +5 -5
  176. package/components/fields/location-field/location-modal/infinite-scroll/loading-indicator/index.d.ts +1 -1
  177. package/components/fields/location-field/location-modal/infinite-scroll/loading-indicator/loading-indicator.d.ts +5 -5
  178. package/components/fields/location-field/location-modal/infinite-scroll/loading-indicator/loading-indicator.styles.d.ts +2 -3
  179. package/components/fields/location-field/location-modal/location-modal.d.ts +8 -8
  180. package/components/fields/location-field/location-modal/location-modal.data.d.ts +3 -3
  181. package/components/fields/location-field/location-modal/location-modal.styles.d.ts +16 -17
  182. package/components/fields/location-field/location-modal/location-picker/helper.d.ts +4 -4
  183. package/components/fields/location-field/location-modal/location-picker/index.d.ts +1 -1
  184. package/components/fields/location-field/location-modal/location-picker/legend/index.d.ts +1 -1
  185. package/components/fields/location-field/location-modal/location-picker/legend/legend.d.ts +8 -8
  186. package/components/fields/location-field/location-modal/location-picker/legend/legend.styles.d.ts +10 -11
  187. package/components/fields/location-field/location-modal/location-picker/location-picker.d.ts +3 -3
  188. package/components/fields/location-field/location-modal/location-picker/location-picker.styles.d.ts +17 -18
  189. package/components/fields/location-field/location-modal/location-picker/types.d.ts +34 -35
  190. package/components/fields/location-field/location-modal/location-search/helper.d.ts +14 -14
  191. package/components/fields/location-field/location-modal/location-search/index.d.ts +1 -1
  192. package/components/fields/location-field/location-modal/location-search/location-search.d.ts +2 -2
  193. package/components/fields/location-field/location-modal/location-search/location-search.styles.d.ts +84 -85
  194. package/components/fields/location-field/location-modal/location-search/types.d.ts +30 -30
  195. package/components/fields/location-field/location-modal/no-network-modal/no-network-modal.d.ts +7 -7
  196. package/components/fields/location-field/location-modal/no-network-modal/no-network-modal.styles.d.ts +29 -30
  197. package/components/fields/location-field/location-modal/types.d.ts +18 -18
  198. package/components/fields/location-field/types.d.ts +163 -163
  199. package/components/fields/masked-field/index.d.ts +2 -2
  200. package/components/fields/masked-field/masked-field.d.ts +3 -3
  201. package/components/fields/masked-field/types.d.ts +12 -12
  202. package/components/fields/multi-select/index.d.ts +2 -2
  203. package/components/fields/multi-select/multi-select.d.ts +3 -3
  204. package/components/fields/multi-select/types.d.ts +9 -9
  205. package/components/fields/nested-multi-select/index.d.ts +2 -2
  206. package/components/fields/nested-multi-select/nested-multi-select.d.ts +3 -3
  207. package/components/fields/nested-multi-select/types.d.ts +33 -34
  208. package/components/fields/otp-verification-field/index.d.ts +2 -2
  209. package/components/fields/otp-verification-field/otp-verification-field.d.ts +3 -3
  210. package/components/fields/otp-verification-field/types.d.ts +46 -46
  211. package/components/fields/radio-button/index.d.ts +2 -2
  212. package/components/fields/radio-button/radio-button.d.ts +3 -3
  213. package/components/fields/radio-button/radio-button.styles.d.ts +29 -30
  214. package/components/fields/radio-button/types.d.ts +41 -41
  215. package/components/fields/range-select/index.d.ts +2 -2
  216. package/components/fields/range-select/range-select.d.ts +3 -3
  217. package/components/fields/range-select/types.d.ts +9 -9
  218. package/components/fields/reset-button/index.d.ts +2 -2
  219. package/components/fields/reset-button/reset-button.d.ts +3 -3
  220. package/components/fields/reset-button/types.d.ts +8 -8
  221. package/components/fields/select/index.d.ts +2 -2
  222. package/components/fields/select/select.d.ts +3 -3
  223. package/components/fields/select/types.d.ts +9 -9
  224. package/components/fields/select-histogram/index.d.ts +2 -2
  225. package/components/fields/select-histogram/select-histogram.d.ts +3 -3
  226. package/components/fields/select-histogram/types.d.ts +17 -17
  227. package/components/fields/slider/index.d.ts +2 -2
  228. package/components/fields/slider/slider.d.ts +3 -3
  229. package/components/fields/slider/types.d.ts +11 -11
  230. package/components/fields/submit-button/index.d.ts +2 -2
  231. package/components/fields/submit-button/submit-button.d.ts +3 -3
  232. package/components/fields/submit-button/types.d.ts +7 -7
  233. package/components/fields/switch/index.d.ts +2 -2
  234. package/components/fields/switch/switch.d.ts +3 -3
  235. package/components/fields/switch/switch.styles.d.ts +1 -2
  236. package/components/fields/switch/types.d.ts +10 -10
  237. package/components/fields/text-field/index.d.ts +2 -2
  238. package/components/fields/text-field/text-field.d.ts +3 -3
  239. package/components/fields/text-field/types.d.ts +37 -37
  240. package/components/fields/textarea/index.d.ts +2 -2
  241. package/components/fields/textarea/textarea.d.ts +3 -3
  242. package/components/fields/textarea/textarea.styles.d.ts +19 -20
  243. package/components/fields/textarea/types.d.ts +8 -8
  244. package/components/fields/time-field/index.d.ts +2 -2
  245. package/components/fields/time-field/time-field.d.ts +3 -3
  246. package/components/fields/time-field/types.d.ts +7 -7
  247. package/components/fields/types.d.ts +122 -122
  248. package/components/fields/unit-number-field/index.d.ts +2 -2
  249. package/components/fields/unit-number-field/types.d.ts +8 -8
  250. package/components/fields/unit-number-field/unit-number-field.d.ts +3 -3
  251. package/components/frontend-engine/frontend-engine.d.ts +23 -23
  252. package/components/frontend-engine/index.d.ts +2 -2
  253. package/components/frontend-engine/types.d.ts +213 -214
  254. package/components/frontend-engine/use-form-change.d.ts +12 -12
  255. package/components/index.d.ts +2 -2
  256. package/components/shared/chip/chip.d.ts +6 -6
  257. package/components/shared/chip/chip.styles.d.ts +16 -17
  258. package/components/shared/chip/index.d.ts +2 -2
  259. package/components/shared/chip/types.d.ts +4 -4
  260. package/components/shared/error-messages.d.ts +102 -102
  261. package/components/shared/index.d.ts +6 -6
  262. package/components/shared/prompt/index.d.ts +2 -2
  263. package/components/shared/prompt/prompt.d.ts +2 -2
  264. package/components/shared/prompt/prompt.styles.d.ts +40 -41
  265. package/components/shared/prompt/types.d.ts +16 -16
  266. package/components/shared/sanitize/index.d.ts +1 -1
  267. package/components/shared/sanitize/sanitize.d.ts +13 -14
  268. package/components/shared/static-map/index.d.ts +1 -1
  269. package/components/shared/static-map/static-map.d.ts +12 -12
  270. package/components/shared/static-map/static-map.styles.d.ts +12 -13
  271. package/components/shared/warning/index.d.ts +1 -1
  272. package/components/shared/warning/warning.d.ts +6 -6
  273. package/components/types.d.ts +4 -4
  274. package/context-providers/context-providers.d.ts +7 -7
  275. package/context-providers/custom-components/context-provider.d.ts +14 -14
  276. package/context-providers/custom-components/index.d.ts +1 -1
  277. package/context-providers/event/context-provider.d.ts +14 -14
  278. package/context-providers/event/index.d.ts +2 -2
  279. package/context-providers/event/types.d.ts +10 -10
  280. package/context-providers/form-schema/context-provider.d.ts +12 -12
  281. package/context-providers/form-schema/index.d.ts +1 -1
  282. package/context-providers/form-values/context-provider.d.ts +23 -23
  283. package/context-providers/form-values/index.d.ts +1 -1
  284. package/context-providers/frontend-engine-form/context-provider.d.ts +13 -13
  285. package/context-providers/frontend-engine-form/index.d.ts +1 -1
  286. package/context-providers/index.d.ts +7 -7
  287. package/context-providers/recaptcha/index.d.ts +3 -3
  288. package/context-providers/recaptcha/recaptcha-hook.d.ts +5 -5
  289. package/context-providers/recaptcha/recaptcha-provider.d.ts +10 -11
  290. package/context-providers/recaptcha/types.d.ts +14 -14
  291. package/context-providers/yup/context-provider.d.ts +16 -16
  292. package/context-providers/yup/custom-conditions/html-safe.d.ts +1 -1
  293. package/context-providers/yup/custom-conditions/index.d.ts +3 -3
  294. package/context-providers/yup/custom-conditions/uen.d.ts +1 -1
  295. package/context-providers/yup/custom-conditions/uinfin.d.ts +1 -1
  296. package/context-providers/yup/helper.d.ts +44 -44
  297. package/context-providers/yup/index.d.ts +4 -4
  298. package/context-providers/yup/types.d.ts +82 -82
  299. package/index.d.ts +3 -3
  300. package/index.js +1 -1
  301. package/package.json +1 -1
  302. package/services/index.d.ts +1 -1
  303. package/services/onemap/onemap-service.d.ts +21 -21
  304. package/services/onemap/types.d.ts +48 -48
  305. package/utils/api-client/api-client.d.ts +65 -65
  306. package/utils/api-client/index.d.ts +1 -1
  307. package/utils/date-time-helper.d.ts +22 -22
  308. package/utils/file-helper.d.ts +45 -47
  309. package/utils/geolocation-helper.d.ts +17 -17
  310. package/utils/hooks/index.d.ts +12 -12
  311. package/utils/hooks/use-custom-components.d.ts +5 -6
  312. package/utils/hooks/use-deep-layout-effect.d.ts +3 -3
  313. package/utils/hooks/use-field-event.d.ts +10 -10
  314. package/utils/hooks/use-form-schema.d.ts +6 -7
  315. package/utils/hooks/use-form-values.d.ts +11 -12
  316. package/utils/hooks/use-frontend-engine-component.d.ts +17 -17
  317. package/utils/hooks/use-frontend-engine-form.d.ts +6 -7
  318. package/utils/hooks/use-iframe-message.d.ts +5 -5
  319. package/utils/hooks/use-previous.d.ts +4 -4
  320. package/utils/hooks/use-validation-config.d.ts +10 -10
  321. package/utils/hooks/use-validation-schema.d.ts +15 -15
  322. package/utils/hooks/use-window-helper.d.ts +1 -1
  323. package/utils/id-helper.d.ts +1 -1
  324. package/utils/image-helper.d.ts +49 -49
  325. package/utils/index.d.ts +11 -11
  326. package/utils/math-helper.d.ts +5 -5
  327. package/utils/object-helper.d.ts +15 -15
  328. package/utils/prop-helper.d.ts +8 -8
  329. package/utils/test-helper.d.ts +4 -4
  330. package/utils/ts-helper.d.ts +1 -1
  331. package/utils/types.d.ts +9 -9
  332. package/chunks/file-upload-manager.ddb44c1f.js +0 -2
  333. package/chunks/file-upload-manager.ddb44c1f.js.map +0 -1
  334. package/cjs/chunks/file-upload-manager.b22d56d4.js +0 -2
  335. package/cjs/chunks/file-upload-manager.b22d56d4.js.map +0 -1
@@ -303,7 +303,7 @@ function bN(e){return"[object Object]"===Object.prototype.toString.call(e)}Objec
303
303
  height: auto;
304
304
  `,KF=({id:r,lat:a,lng:o,address:s,staticMapPinColor:u={r:28,g:118,b:213},className:c,onClick:l,disabled:d})=>{const f=t.useRef(!1),[p,h]=t.useState(""),m=t.useRef([0,0]),g=t.useContext(i.ThemeContext);t.useEffect(()=>(window.addEventListener("resize",A),a&&o&&A(),()=>{window.removeEventListener("resize",A)}),[a,o]);const A=()=>{if(!a||!o)return;const e=window.matchMedia(`(max-width: ${n.Breakpoint["sm-max"]({theme:g})}px)`).matches;if(f.current!==e||m.current[0]!==a||m.current[1]!==o){f.current=e;const t=e?YF.mobile:YF.desktop,n=15,r=t.height+n;h(exports.LocationHelper.getStaticMapUrl(a,o,t.width,r,u)),m.current=[a,o]}};return a&&o?e.jsx(VF,{id:exports.TestHelper.generateId(r,"static-map"),"data-testid":exports.TestHelper.generateId(r,"static-map"),className:c,onClick:l,"aria-disabled":d,children:e.jsx(WF,{alt:s||"Location Map",src:p,onError:e=>{e.currentTarget.src="https://assets.life.gov.sg/web-frontend-engine/img/map/static_map_placeholder.png"}})}):null},qF=({id:t,message:n,className:r})=>n?e.jsx(QF,{type:"warning","data-testid":exports.TestHelper.generateId(t,"warning"),className:r,children:n}):null,QF=H.default(c.Alert)`
305
305
  margin: -1rem 0rem 2rem;
306
- `,JF=["required","length","min","max","matches","email","url","uuid","positive","negative","integer","lessThan","moreThan","when","filled","empty","equals","notEquals","includes","excludes","uinfin","equalsField","withinDays","htmlSafe"];var XF;!function(e){const t=[],n={};e.buildSchema=(t,n)=>{const i={},[a,o]=r(t);return Object.keys(a).forEach(n=>{const{schema:r,validationRules:a}=t[n];i[n]=e.buildFieldSchema(r,a)}),$I().meta({yupId:n}).shape(i,o)};const r=e=>{const t=[],n={...e};return Object.entries(n).forEach(([e,{validationRules:r}])=>{const[a,o]=i(e,n,r);t.push(...o),n[e].validationRules=a}),[n,t]},i=(e,t,n)=>{const r=[],a=n?.filter(e=>!("when"in e))||[];return n?.filter(e=>"when"in e).forEach(n=>{const o={...n,when:n.when?{...n.when}:void 0};Object.keys(o.when).forEach(n=>{if(!t[n])return void console.warn(`field "${n}" was not found, when condition on "${e}" was not applied`);r.push([e,n]),o.when[n]={...o.when[n],yupSchema:t[n].schema.clone()};const[a,s]=i(e,t,o.when[n].then);o.when[n].then=a,r.push(...s)}),a.push(o)}),[a,r]};e.buildFieldSchema=(t,n)=>e.mapRules(t,n),e.mapSchemaType=e=>{switch(e){case"string":return EM().typeError("Only string values are allowed");case"number":return wM().typeError("Only number values are allowed");case"boolean":return mM().strict().typeError("Only boolean values are allowed");case"array":return zI().typeError("Only array values are allowed");case"object":return $I().typeError("Only object values are allowed");default:return pM()}},e.mapRules=(n,r)=>(r.forEach(r=>{const i=Object.keys(r).filter(e=>JF.includes(e))?.[0];switch(!0){case r.required:n=n.required(r.errorMessage||Eg.COMMON.FIELD_REQUIRED);break;case!!r.email:case!!r.url:case!!r.uuid:case!!r.positive:case!!r.negative:case!!r.integer:try{n=n[i](r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}break;case r.length>0:case!isNaN(r.min):case!isNaN(r.max):case!isNaN(r.lessThan):case!isNaN(r.moreThan):try{n=n[i](r[i],r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}break;case!!r.matches:{const e=r.matches.match(/\/(.*)\/([a-z]+)?/);try{n=n.matches(new RegExp(e[1],e[2]),r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}}break;case!!r.when:Object.keys(r.when).forEach(t=>{const i=r.when[t]?.yupSchema;if(!i)return void console.warn(`[mapRules] Unexpected: yupSchema missing for field "${t}" in when condition. `);const a=r.when[t].is,o=e.mapRules(n,r.when[t].then),s=r.when[t].otherwise&&e.mapRules(n,r.when[t].otherwise);n=Array.isArray(a)&&a.every(e=>"object"==typeof e)?n.when(t,t=>{const n=e.mapRules(i.clone(),a);let r=!1;try{n.validateSync(t),r=!0}catch(e){}return r?o:s}):n.when(t,{is:a,then:o,otherwise:s})})}const a=Object.keys(r).filter(e=>t.includes(e))?.[0];a&&(n[a]?n=n[a](r[a],r.errorMessage):console.warn(`error applying "${a}" condition to ${n.type} schema`)),Object.keys(r).forEach(e=>{n=n.meta({rules:[...n.describe().meta?.rules||[],r]})}),n&&(n=n.transform(e=>{if(null!==e&&""!==e&&("object"!=typeof e||0!==Object.keys(e).length))return e}))}),n),e.addCondition=(e,r,i,a,o=!1)=>{if(a){if(n[a]||(n[a]={}),n[a][r]&&!0!==o)return void console.warn(`the validation condition "${r}" is not added because it already exists!`);n[a][r]=i}else if(t.includes(r)&&!0!==o)return void console.warn(`the validation condition "${r}" is not added because it already exists!`);t.includes(r)||t.push(r),UI(jI[e],r,function(e,t){return this.test({name:r,message:t,test:(t,o)=>{if(!a)return i(t,e,o);const s=o.options.from.length,u=o.options.from[s-1].schema.describe().meta.yupId;return n[u]?.[r]?.(t,e,o)}})})}}(XF||(XF={}));var e$=cn,t$=Pr;var n$=function(e){return!0===e||!1===e||t$(e)&&"[object Boolean]"==e$(e)},r$=JC;var i$=function(e,t){return r$(e,t)},a$=cn,o$=Pr;var s$=function(e){return"number"==typeof e||o$(e)&&"[object Number]"==a$(e)};const u$=/^[A-Za-z\s,()/.@'-]+$/;var c$;XF.addCondition("string","htmlSafe",(e,t)=>!(!QS(e)&&t)||u$.test(e)),function(e){e.LOCAL_S_PREFIX="S",e.LOCAL_T_PREFIX="T",e.FOREIGN_F_PREFIX="F",e.FOREIGN_G_PREFIX="G",e.FOREIGN_M_PREFIX="M"}(c$||(c$={}));const l$=[2,7,6,5,4,3,2],d$=["J","Z","I","H","G","F","E","D","C","B","A"],f$=["X","W","U","T","R","Q","P","N","M","L","K"],p$=["X","W","U","T","R","Q","P","N","J","L","K"];function h$(e){if("string"==typeof e){const t=function(e){return/^[STFGM]\d{7}[A-Z]$/.test(e)}(e),n=e.charAt(8)===function(e){let t=0;for(let n=0;n<7;++n)t+=Number(e.charAt(n+1))*l$[n];const n=e.charAt(0);n!==c$.LOCAL_T_PREFIX&&n!==c$.FOREIGN_G_PREFIX||(t+=4);n===c$.FOREIGN_M_PREFIX&&(t+=3);let r;r=n===c$.LOCAL_S_PREFIX||n===c$.LOCAL_T_PREFIX?d$[t%11]:n===c$.FOREIGN_M_PREFIX?p$[t%11]:f$[t%11];return r}(e);return t&&n}return!1}XF.addCondition("string","uinfin",e=>!!QS(e)||h$(e));const m$=["LP","LL","FC","PF","RF","MQ","MM","NB","CC","CS","MB","FM","GS","GA","GB","DP","CP","NR","CM","CD","MD","HS","VH","CH","MH","CL","XL","CX","RP","TU","TC","FB","FN","PA","PB","SS","MC","SM"];XF.addCondition("string","uen",e=>!!QS(e)||function(e){if(e.length<9||e.length>10)return!1;if(9===(e=e.toUpperCase()).length){if(e.match(/^\d{8}[A-Z]$/))return!0}else if(10===e.length){if(e.match(/^\d{9}[A-Z]$/))return!0;const t=String.raw`^((R|S|T)([\d]{2})(`+m$.join("|")+String.raw`)([\d]{4})([A-Z]))$`;if(e.match(t))return!0}return!1}(e));const g$=e=>s$(e)?ew(e):QS(e)&&!n$(e);XF.addCondition("mixed","filled",e=>!g$(e)),XF.addCondition("mixed","empty",e=>g$(e)),XF.addCondition("mixed","equals",(e,t)=>!g$(e)&&i$(e,t)),XF.addCondition("mixed","notEquals",(e,t)=>!g$(e)&&!i$(e,t)),XF.addCondition("string","notMatches",(e,t)=>{if(g$(e))return!0;const n=t.match(/\/(.*)\/([a-z]+)?/);return!new RegExp(n[1],n[2]).test(e)}),XF.addCondition("string","noWhitespaceOnly",(e,t)=>!(!g$(e)&&t)||/\S/.test(e)),XF.addCondition("string","whitespace",(e,t)=>!(!g$(e)&&t&&("object"!=typeof t||n$(t.noLeadingOrTrailingWhitespace)))||("object"!=typeof t||t.noLeadingOrTrailingWhitespace?/^(?!\s+$)(?!\s).*(?<!\s)$/.test(e):/\S/.test(e))),XF.addCondition("array","includes",(e,t)=>!e?.length||(Array.isArray(t)?t.filter(t=>e.includes(t)).length===t.length:e.includes(t))),XF.addCondition("array","excludes",(e,t)=>!e?.length||(Array.isArray(t)?e.length&&0===t.filter(t=>e.includes(t)).length:!e.includes(t))),XF.addCondition("mixed","equalsField",(e,t,n)=>{if("object"==typeof e){if(Array.isArray(e)&&Array.isArray(n.parent[`${t}`])){const r=[...e].sort(),i=[...n.parent[`${t}`]].sort();return i$(r,i)}return i$(e,n.parent[`${t}`])}return i$(e,n.parent[`${t}`])}),XF.addCondition("mixed","notEqualsField",(e,t,n)=>{if("object"==typeof e){if(Array.isArray(e)&&Array.isArray(n.parent[`${t}`])){const r=[...e].sort(),i=[...n.parent[`${t}`]].sort();return!i$(r,i)}return!i$(e,n.parent[`${t}`])}return!i$(e,n.parent[`${t}`])}),XF.addCondition("mixed","withinDays",(e,t)=>!!QS(e)||Sg.checkWithinDays(e,t)),XF.addCondition("mixed","beyondDays",(e,t)=>!!QS(e)||Sg.checkBeyondDays(e,t));const A$=({children:t,recaptchaSiteKey:n})=>e.jsx(Rs,{recaptchaSiteKey:n,children:e.jsx(Sx,{children:e.jsx(ws,{children:e.jsx(Cs,{children:e.jsx(Ms,{children:e.jsx(Es,{children:e.jsx(Os,{children:t})})})})})})}),y$=()=>{const{customComponents:e,setCustomComponents:n}=t.useContext(bs),r=t.useCallback(t=>e?.[t],[e]);return{customComponents:e,getCustomComponent:r,setCustomComponents:n}},_$="undefined"!=typeof window?(e,n)=>{const r=t.useRef(n),i=t.useRef(0);return i$(n,r.current)||(r.current=n,i.current+=1),t.useLayoutEffect(e,[i.current])}:vs,v$=()=>{const{eventManagerRef:e}=t.useContext(Ss),n=t.useCallback((t,n,r,i,a)=>{if("function"==typeof r&&"function"!=typeof i){const[a,o,s,u]=[t,n,r,i];e.current?.addEventListener(`${o}:${a}`,s,u)}else if("function"==typeof i){const[o,s,u,c,l]=[t,n,r,i,a];e.current?.addEventListener(`${u}:${s}`,c,l)}},[e]),r=t.useCallback((t,n,r,i,a)=>{if("function"==typeof r&&"function"!=typeof i){const[a,o,s,u]=[t,n,r,i];e.current?.removeEventListener(`${o}:${a}`,s,u)}else if("function"==typeof i){const[o,s,u,c,l]=[t,n,r,i,a];e.current?.removeEventListener(`${u}:${s}`,c,l)}},[e]);return{addFieldEventListener:n,dispatchFieldEvent:t.useCallback((t,n,r,i)=>{if("string"!=typeof r){const[i,a,o]=[t,n,r];return e.current?.dispatchEvent(new CustomEvent(`${a}:${i}`,{cancelable:!0,detail:{id:a,...o}}))}{const[a,o,s,u]=[t,n,r,i];return e.current?.dispatchEvent(new CustomEvent(`${s}:${o}`,{cancelable:!0,detail:{id:s,...u}}))}},[e]),removeFieldEventListener:r}};var b$=Ir,E$=Tt;var S$=function(e,t,n){(void 0!==n&&!E$(e[t],n)||void 0===n&&!(t in e))&&b$(e,t,n)},w$=Ii,x$=Pr;var C$=function(e){return x$(e)&&w$(e)};var T$=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]},M$=Fr,I$=Yi;var O$=S$,D$=qi.exports,N$=lo,L$=Qi,k$=wo,R$=Yr,F$=Vr,$$=C$,P$=Wr.exports,z$=hn,B$=ln,Z$=Zw,U$=li,j$=T$,G$=function(e){return M$(e,I$(e))};var H$=function(e,t,n,r,i,a,o){var s=j$(e,n),u=j$(t,n),c=o.get(u);if(c)O$(e,n,c);else{var l=a?a(s,u,n+"",e,t,o):void 0,d=void 0===l;if(d){var f=F$(u),p=!f&&P$(u),h=!f&&!p&&U$(u);l=u,f||p||h?F$(s)?l=s:$$(s)?l=L$(s):p?(d=!1,l=D$(u,!0)):h?(d=!1,l=N$(u,!0)):l=[]:Z$(u)||R$(u)?(l=s,R$(s)?l=G$(s):B$(s)&&!z$(s)||(l=k$(u))):d=!1}d&&(o.set(u,l),i(l,u,r,a,o),o.delete(u)),O$(e,n,l)}},Y$=wr,V$=S$,W$=cC,K$=H$,q$=ln,Q$=Yi,J$=T$;var X$=function e(t,n,r,i,a){t!==n&&W$(n,function(o,s){if(a||(a=new Y$),q$(o))K$(t,n,s,r,e,i,a);else{var u=i?i(J$(t,s),o,s+"",t,n,a):void 0;void 0===u&&(u=o),V$(t,s,u)}},Q$)},eP=tx,tP=ex,nP=sx;var rP=function(e,t){return nP(tP(e,t,eP),e+"")},iP=Tt,aP=Ii,oP=Qr,sP=ln;var uP=function(e,t,n){if(!sP(n))return!1;var r=typeof t;return!!("number"==r?aP(n)&&oP(t,n.length):"string"==r&&t in n)&&iP(n[t],e)},cP=rP,lP=uP;var dP=function(e){return cP(function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(i--,a):void 0,o&&lP(n[0],n[1],o)&&(a=i<3?void 0:a,i=1),t=Object(t);++r<i;){var s=n[r];s&&e(t,s,r,a)}return t})},fP=X$,pP=dP(function(e,t,n){fP(e,t,n)}),hP=pP;const mP=()=>{const{setFormSchema:e,formSchema:n}=t.useContext(xs);return{setFormSchema:e,formSchema:n,overrideSchema:t.useCallback((e,t)=>{if(QS(t)||"string"==typeof e)return e;let n={};if(Object.keys(e).forEach(e=>{const r=JS.getNestedValueByKey(t,e,{searchIn:["children"]});QS(r)||(n={...n,...r})}),!QS(n)){const t=ps(e),r=hP(t,n);return JS.removeNil(r)}return e},[])}},gP=e=>{const n=xe(),{setFormValues:r,formValues:i,formValuesRef:a,registeredFields:o,setRegisteredFields:s}=t.useContext(Ts),u=t.useCallback((t,r=!1)=>{if("string"!=typeof t){if(Array.isArray(t)){if(r){const r=t.filter(e=>o.includes(e));return e?.getValues(r)||n?.getValues(r)}return e?.getValues(t)||n?.getValues(t)}{const t=e?.getValues()||n?.getValues();if(r){const e={};return Object.entries(t).forEach(([t,n])=>{o.includes(t)&&(e[t]=n)}),e}return t}}if(!r||r&&o.includes(t))return e?.getValues(t)||n?.getValues(t)},[n?.getValues,e?.getValues,o]);return{formValues:i,getField:e=>a.current[e],setFields:e=>{a.current={...a.current,...e},r(t=>({...t,...e}))},setField:(e,t)=>{a.current[e]=t,r(n=>({...n,[e]:t}))},resetFields:e=>{a.current={...e},r(()=>({...e}))},registeredFields:o,setRegisteredFields:s,getFormValues:u}},AP=()=>{const{formValidationConfig:e,setFormValidationConfig:n}=t.useContext(Ex);return{formValidationConfig:e,setFieldValidationConfig:(e,t,r=[])=>{n(n=>({...n,[e]:{schema:t,validationRules:r}}))},removeFieldValidationConfig:e=>n(t=>{const n={...t};return delete n[e],n})}},yP=()=>{const{submitHandler:e,setSubmitHandler:n,wrapInForm:r,setWrapInForm:i}=t.useContext(Is);return{submitHandler:e,setSubmitHandler:n,wrapInForm:r,setWrapInForm:i}},_P=(e,n)=>{t.useEffect(()=>{const t=t=>{t.data.type===e&&n(t)};return window.addEventListener("message",t),()=>{window.removeEventListener("message",t)}},[e,n])},vP=e=>{const n=t.useRef();return t.useEffect(()=>{n.current=e},[e]),n.current},bP=()=>{const{formValidationConfig:e,warnings:n,setWarnings:r,yupId:i}=t.useContext(Ex),[a,o]=t.useState($I()),[s,u]=t.useState($I()),c=t.useCallback(()=>{if(e){let t={},n={};Object.entries(e).forEach(([e,r])=>{if(!r.validationRules||0===r.validationRules.length)return void(t=JS.upsert(t,e,{schema:r.schema,validationRules:[]}));const i=r.validationRules.filter(({soft:e})=>e),a=r.validationRules.filter(({soft:e})=>!e);i.length&&(n=JS.upsert(n,e,{schema:r.schema,validationRules:i})),a.length&&(t=JS.upsert(t,e,{schema:r.schema,validationRules:a}))}),u(XF.buildSchema(n,i)),o(XF.buildSchema(t,i))}},[e,i]);t.useEffect(()=>{c()},[c]);return{warnings:n,softValidationSchema:s,hardValidationSchema:a,rebuildValidationSchema:c,performSoftValidation:(e,t)=>{e.validate(t,{abortEarly:!1}).then(()=>{r({})}).catch(e=>{const t=e;if(QS(t))return;const n=t.inner.reduce((e,t)=>(e[t.path]=t.message,e),{});r(n)})},addWarnings:e=>{r({...n,...e})},yupId:i}},EP=()=>{const e=t.useContext(i.ThemeContext);return t.useCallback(()=>window.innerWidth<=n.Breakpoint["sm-max"]({theme:e})||window.innerWidth>window.innerHeight&&window.innerHeight<n.Breakpoint["sm-max"]({theme:e}),[e])},SP=H.default.div`
306
+ `,JF=["required","length","min","max","matches","email","url","uuid","positive","negative","integer","lessThan","moreThan","when","filled","empty","equals","notEquals","includes","excludes","uinfin","equalsField","withinDays","htmlSafe"];var XF;!function(e){const t=[],n={};e.buildSchema=(t,n)=>{const i={},[a,o]=r(t);return Object.keys(a).forEach(n=>{const{schema:r,validationRules:a}=t[n];i[n]=e.buildFieldSchema(r,a)}),$I().meta({yupId:n}).shape(i,o)};const r=e=>{const t=[],n={...e};return Object.entries(n).forEach(([e,{validationRules:r}])=>{const[a,o]=i(e,n,r);t.push(...o),n[e].validationRules=a}),[n,t]},i=(e,t,n)=>{const r=[],a=n?.filter(e=>!("when"in e))||[];return n?.filter(e=>"when"in e).forEach(n=>{const o={...n,when:n.when?{...n.when}:void 0};Object.keys(o.when).forEach(n=>{if(!t[n])return void console.warn(`field "${n}" was not found, when condition on "${e}" was not applied`);r.push([e,n]),o.when[n]={...o.when[n],yupSchema:t[n].schema.clone()};const[a,s]=i(e,t,o.when[n].then);o.when[n].then=a,r.push(...s)}),a.push(o)}),[a,r]};e.buildFieldSchema=(t,n)=>e.mapRules(t,n),e.mapSchemaType=e=>{switch(e){case"string":return EM().typeError("Only string values are allowed");case"number":return wM().typeError("Only number values are allowed");case"boolean":return mM().strict().typeError("Only boolean values are allowed");case"array":return zI().typeError("Only array values are allowed");case"object":return $I().typeError("Only object values are allowed");default:return pM()}},e.mapRules=(n,r)=>(r.forEach(r=>{const i=Object.keys(r).filter(e=>JF.includes(e))?.[0];switch(!0){case r.required:n=n.required(r.errorMessage||Eg.COMMON.FIELD_REQUIRED);break;case!!r.email:case!!r.url:case!!r.uuid:case!!r.positive:case!!r.negative:case!!r.integer:try{n=n[i](r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}break;case r.length>0:case!isNaN(r.min):case!isNaN(r.max):case!isNaN(r.lessThan):case!isNaN(r.moreThan):try{n=n[i](r[i],r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}break;case!!r.matches:{const e=r.matches.match(/\/(.*)\/([a-z]+)?/);try{n=n.matches(new RegExp(e[1],e[2]),r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}}break;case!!r.when:Object.keys(r.when).forEach(t=>{const i=r.when[t]?.yupSchema;if(!i)return void console.warn(`[mapRules] Unexpected: yupSchema missing for field "${t}" in when condition. `);const a=r.when[t].is,o=e.mapRules(n,r.when[t].then),s=r.when[t].otherwise&&e.mapRules(n,r.when[t].otherwise);n=Array.isArray(a)&&a.every(e=>"object"==typeof e)?n.when(t,t=>{const n=e.mapRules(i.clone(),a);let r=!1;try{n.validateSync(t),r=!0}catch(e){}return r?o:s}):n.when(t,{is:a,then:o,otherwise:s})})}const a=Object.keys(r).filter(e=>t.includes(e))?.[0];a&&(n[a]?n=n[a](r[a],r.errorMessage):console.warn(`error applying "${a}" condition to ${n.type} schema`)),Object.keys(r).forEach(e=>{n=n.meta({rules:[...n.describe().meta?.rules||[],r]})}),n&&(n=n.transform(e=>{if(null!==e&&""!==e&&("object"!=typeof e||0!==Object.keys(e).length))return e}))}),n),e.addCondition=(e,r,i,a,o=!1)=>{if(a){if(n[a]||(n[a]={}),n[a][r]&&!0!==o)return void console.warn(`the validation condition "${r}" is not added because it already exists!`);n[a][r]=i}else if(t.includes(r)&&!0!==o)return void console.warn(`the validation condition "${r}" is not added because it already exists!`);t.includes(r)||t.push(r),UI(jI[e],r,function(e,t){return this.test({name:r,message:t,test:(t,o)=>{if(!a)return i(t,e,o);const s=o.options.from.length,u=o.options.from[s-1].schema.describe().meta.yupId;return n[u]?.[r]?.(t,e,o)}})})}}(XF||(XF={}));var e$=cn,t$=Pr;var n$=function(e){return!0===e||!1===e||t$(e)&&"[object Boolean]"==e$(e)},r$=JC;var i$=function(e,t){return r$(e,t)},a$=cn,o$=Pr;var s$=function(e){return"number"==typeof e||o$(e)&&"[object Number]"==a$(e)};const u$=/^[A-Za-z\s,()/.@'-]+$/;var c$;XF.addCondition("string","htmlSafe",(e,t)=>!(!QS(e)&&t)||u$.test(e)),function(e){e.LOCAL_S_PREFIX="S",e.LOCAL_T_PREFIX="T",e.FOREIGN_F_PREFIX="F",e.FOREIGN_G_PREFIX="G",e.FOREIGN_M_PREFIX="M"}(c$||(c$={}));const l$=[2,7,6,5,4,3,2],d$=["J","Z","I","H","G","F","E","D","C","B","A"],f$=["X","W","U","T","R","Q","P","N","M","L","K"],p$=["X","W","U","T","R","Q","P","N","J","L","K"];function h$(e){if("string"==typeof e){const t=function(e){return/^[STFGM]\d{7}[A-Z]$/.test(e)}(e),n=e.charAt(8)===function(e){let t=0;for(let n=0;n<7;++n)t+=Number(e.charAt(n+1))*l$[n];const n=e.charAt(0);n!==c$.LOCAL_T_PREFIX&&n!==c$.FOREIGN_G_PREFIX||(t+=4);n===c$.FOREIGN_M_PREFIX&&(t+=3);let r;r=n===c$.LOCAL_S_PREFIX||n===c$.LOCAL_T_PREFIX?d$[t%11]:n===c$.FOREIGN_M_PREFIX?p$[t%11]:f$[t%11];return r}(e);return t&&n}return!1}XF.addCondition("string","uinfin",e=>!!QS(e)||h$(e));const m$=["LP","LL","FC","PF","RF","MQ","MM","NB","CC","CS","MB","FM","GS","GA","GB","DP","CP","NR","CM","CD","MD","HS","VH","CH","MH","CL","XL","CX","RP","TU","TC","FB","FN","PA","PB","SS","MC","SM"];XF.addCondition("string","uen",e=>!!QS(e)||function(e){if(e.length<9||e.length>10)return!1;if(9===(e=e.toUpperCase()).length){if(e.match(/^\d{8}[A-Z]$/))return!0}else if(10===e.length){if(e.match(/^\d{9}[A-Z]$/))return!0;const t=String.raw`^((R|S|T)([\d]{2})(`+m$.join("|")+String.raw`)([\d]{4})([A-Z]))$`;if(e.match(t))return!0}return!1}(e));const g$=e=>s$(e)?ew(e):QS(e)&&!n$(e);XF.addCondition("mixed","filled",e=>!g$(e)),XF.addCondition("mixed","empty",e=>g$(e)),XF.addCondition("mixed","equals",(e,t)=>!g$(e)&&i$(e,t)),XF.addCondition("mixed","notEquals",(e,t)=>!g$(e)&&!i$(e,t)),XF.addCondition("string","notMatches",(e,t)=>{if(g$(e))return!0;const n=t.match(/\/(.*)\/([a-z]+)?/);return!new RegExp(n[1],n[2]).test(e)}),XF.addCondition("string","noWhitespaceOnly",(e,t)=>!(!g$(e)&&t)||/\S/.test(e)),XF.addCondition("string","whitespace",(e,t)=>!(!g$(e)&&t&&("object"!=typeof t||n$(t.noLeadingOrTrailingWhitespace)))||("object"!=typeof t||t.noLeadingOrTrailingWhitespace?/^\S([\s\S]*\S)?$/.test(e):/\S/.test(e))),XF.addCondition("array","includes",(e,t)=>!e?.length||(Array.isArray(t)?t.filter(t=>e.includes(t)).length===t.length:e.includes(t))),XF.addCondition("array","excludes",(e,t)=>!e?.length||(Array.isArray(t)?e.length&&0===t.filter(t=>e.includes(t)).length:!e.includes(t))),XF.addCondition("mixed","equalsField",(e,t,n)=>{if("object"==typeof e){if(Array.isArray(e)&&Array.isArray(n.parent[`${t}`])){const r=[...e].sort(),i=[...n.parent[`${t}`]].sort();return i$(r,i)}return i$(e,n.parent[`${t}`])}return i$(e,n.parent[`${t}`])}),XF.addCondition("mixed","notEqualsField",(e,t,n)=>{if("object"==typeof e){if(Array.isArray(e)&&Array.isArray(n.parent[`${t}`])){const r=[...e].sort(),i=[...n.parent[`${t}`]].sort();return!i$(r,i)}return!i$(e,n.parent[`${t}`])}return!i$(e,n.parent[`${t}`])}),XF.addCondition("mixed","withinDays",(e,t)=>!!QS(e)||Sg.checkWithinDays(e,t)),XF.addCondition("mixed","beyondDays",(e,t)=>!!QS(e)||Sg.checkBeyondDays(e,t));const A$=({children:t,recaptchaSiteKey:n})=>e.jsx(Rs,{recaptchaSiteKey:n,children:e.jsx(Sx,{children:e.jsx(ws,{children:e.jsx(Cs,{children:e.jsx(Ms,{children:e.jsx(Es,{children:e.jsx(Os,{children:t})})})})})})}),y$=()=>{const{customComponents:e,setCustomComponents:n}=t.useContext(bs),r=t.useCallback(t=>e?.[t],[e]);return{customComponents:e,getCustomComponent:r,setCustomComponents:n}},_$="undefined"!=typeof window?(e,n)=>{const r=t.useRef(n),i=t.useRef(0);return i$(n,r.current)||(r.current=n,i.current+=1),t.useLayoutEffect(e,[i.current])}:vs,v$=()=>{const{eventManagerRef:e}=t.useContext(Ss),n=t.useCallback((t,n,r,i,a)=>{if("function"==typeof r&&"function"!=typeof i){const[a,o,s,u]=[t,n,r,i];e.current?.addEventListener(`${o}:${a}`,s,u)}else if("function"==typeof i){const[o,s,u,c,l]=[t,n,r,i,a];e.current?.addEventListener(`${u}:${s}`,c,l)}},[e]),r=t.useCallback((t,n,r,i,a)=>{if("function"==typeof r&&"function"!=typeof i){const[a,o,s,u]=[t,n,r,i];e.current?.removeEventListener(`${o}:${a}`,s,u)}else if("function"==typeof i){const[o,s,u,c,l]=[t,n,r,i,a];e.current?.removeEventListener(`${u}:${s}`,c,l)}},[e]);return{addFieldEventListener:n,dispatchFieldEvent:t.useCallback((t,n,r,i)=>{if("string"!=typeof r){const[i,a,o]=[t,n,r];return e.current?.dispatchEvent(new CustomEvent(`${a}:${i}`,{cancelable:!0,detail:{id:a,...o}}))}{const[a,o,s,u]=[t,n,r,i];return e.current?.dispatchEvent(new CustomEvent(`${s}:${o}`,{cancelable:!0,detail:{id:s,...u}}))}},[e]),removeFieldEventListener:r}};var b$=Ir,E$=Tt;var S$=function(e,t,n){(void 0!==n&&!E$(e[t],n)||void 0===n&&!(t in e))&&b$(e,t,n)},w$=Ii,x$=Pr;var C$=function(e){return x$(e)&&w$(e)};var T$=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]},M$=Fr,I$=Yi;var O$=S$,D$=qi.exports,N$=lo,L$=Qi,k$=wo,R$=Yr,F$=Vr,$$=C$,P$=Wr.exports,z$=hn,B$=ln,Z$=Zw,U$=li,j$=T$,G$=function(e){return M$(e,I$(e))};var H$=function(e,t,n,r,i,a,o){var s=j$(e,n),u=j$(t,n),c=o.get(u);if(c)O$(e,n,c);else{var l=a?a(s,u,n+"",e,t,o):void 0,d=void 0===l;if(d){var f=F$(u),p=!f&&P$(u),h=!f&&!p&&U$(u);l=u,f||p||h?F$(s)?l=s:$$(s)?l=L$(s):p?(d=!1,l=D$(u,!0)):h?(d=!1,l=N$(u,!0)):l=[]:Z$(u)||R$(u)?(l=s,R$(s)?l=G$(s):B$(s)&&!z$(s)||(l=k$(u))):d=!1}d&&(o.set(u,l),i(l,u,r,a,o),o.delete(u)),O$(e,n,l)}},Y$=wr,V$=S$,W$=cC,K$=H$,q$=ln,Q$=Yi,J$=T$;var X$=function e(t,n,r,i,a){t!==n&&W$(n,function(o,s){if(a||(a=new Y$),q$(o))K$(t,n,s,r,e,i,a);else{var u=i?i(J$(t,s),o,s+"",t,n,a):void 0;void 0===u&&(u=o),V$(t,s,u)}},Q$)},eP=tx,tP=ex,nP=sx;var rP=function(e,t){return nP(tP(e,t,eP),e+"")},iP=Tt,aP=Ii,oP=Qr,sP=ln;var uP=function(e,t,n){if(!sP(n))return!1;var r=typeof t;return!!("number"==r?aP(n)&&oP(t,n.length):"string"==r&&t in n)&&iP(n[t],e)},cP=rP,lP=uP;var dP=function(e){return cP(function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(i--,a):void 0,o&&lP(n[0],n[1],o)&&(a=i<3?void 0:a,i=1),t=Object(t);++r<i;){var s=n[r];s&&e(t,s,r,a)}return t})},fP=X$,pP=dP(function(e,t,n){fP(e,t,n)}),hP=pP;const mP=()=>{const{setFormSchema:e,formSchema:n}=t.useContext(xs);return{setFormSchema:e,formSchema:n,overrideSchema:t.useCallback((e,t)=>{if(QS(t)||"string"==typeof e)return e;let n={};if(Object.keys(e).forEach(e=>{const r=JS.getNestedValueByKey(t,e,{searchIn:["children"]});QS(r)||(n={...n,...r})}),!QS(n)){const t=ps(e),r=hP(t,n);return JS.removeNil(r)}return e},[])}},gP=e=>{const n=xe(),{setFormValues:r,formValues:i,formValuesRef:a,registeredFields:o,setRegisteredFields:s}=t.useContext(Ts),u=t.useCallback((t,r=!1)=>{if("string"!=typeof t){if(Array.isArray(t)){if(r){const r=t.filter(e=>o.includes(e));return e?.getValues(r)||n?.getValues(r)}return e?.getValues(t)||n?.getValues(t)}{const t=e?.getValues()||n?.getValues();if(r){const e={};return Object.entries(t).forEach(([t,n])=>{o.includes(t)&&(e[t]=n)}),e}return t}}if(!r||r&&o.includes(t))return e?.getValues(t)||n?.getValues(t)},[n?.getValues,e?.getValues,o]);return{formValues:i,getField:e=>a.current[e],setFields:e=>{a.current={...a.current,...e},r(t=>({...t,...e}))},setField:(e,t)=>{a.current[e]=t,r(n=>({...n,[e]:t}))},resetFields:e=>{a.current={...e},r(()=>({...e}))},registeredFields:o,setRegisteredFields:s,getFormValues:u}},AP=()=>{const{formValidationConfig:e,setFormValidationConfig:n}=t.useContext(Ex);return{formValidationConfig:e,setFieldValidationConfig:(e,t,r=[])=>{n(n=>({...n,[e]:{schema:t,validationRules:r}}))},removeFieldValidationConfig:e=>n(t=>{const n={...t};return delete n[e],n})}},yP=()=>{const{submitHandler:e,setSubmitHandler:n,wrapInForm:r,setWrapInForm:i}=t.useContext(Is);return{submitHandler:e,setSubmitHandler:n,wrapInForm:r,setWrapInForm:i}},_P=(e,n)=>{t.useEffect(()=>{const t=t=>{t.data.type===e&&n(t)};return window.addEventListener("message",t),()=>{window.removeEventListener("message",t)}},[e,n])},vP=e=>{const n=t.useRef();return t.useEffect(()=>{n.current=e},[e]),n.current},bP=()=>{const{formValidationConfig:e,warnings:n,setWarnings:r,yupId:i}=t.useContext(Ex),[a,o]=t.useState($I()),[s,u]=t.useState($I()),c=t.useCallback(()=>{if(e){let t={},n={};Object.entries(e).forEach(([e,r])=>{if(!r.validationRules||0===r.validationRules.length)return void(t=JS.upsert(t,e,{schema:r.schema,validationRules:[]}));const i=r.validationRules.filter(({soft:e})=>e),a=r.validationRules.filter(({soft:e})=>!e);i.length&&(n=JS.upsert(n,e,{schema:r.schema,validationRules:i})),a.length&&(t=JS.upsert(t,e,{schema:r.schema,validationRules:a}))}),u(XF.buildSchema(n,i)),o(XF.buildSchema(t,i))}},[e,i]);t.useEffect(()=>{c()},[c]);return{warnings:n,softValidationSchema:s,hardValidationSchema:a,rebuildValidationSchema:c,performSoftValidation:(e,t)=>{e.validate(t,{abortEarly:!1}).then(()=>{r({})}).catch(e=>{const t=e;if(QS(t))return;const n=t.inner.reduce((e,t)=>(e[t.path]=t.message,e),{});r(n)})},addWarnings:e=>{r({...n,...e})},yupId:i}},EP=()=>{const e=t.useContext(i.ThemeContext);return t.useCallback(()=>window.innerWidth<=n.Breakpoint["sm-max"]({theme:e})||window.innerWidth>window.innerHeight&&window.innerHeight<n.Breakpoint["sm-max"]({theme:e}),[e])},SP=H.default.div`
307
307
  padding: ${n.Spacing["spacing-32"]};
308
308
  ${n.MediaQuery.MaxWidth.sm} {
309
309
  padding: ${n.Spacing["spacing-32"]} ${n.Spacing["spacing-20"]};
@@ -483,7 +483,7 @@ function bN(e){return"[object Object]"===Object.prototype.toString.call(e)}Objec
483
483
  cursor: pointer;
484
484
  `,qZ=H.default(c.Alert)`
485
485
  margin-top: ${n.Spacing["spacing-8"]};
486
- `;var QZ=Na,JZ=function(){},XZ=QZ&&1/xC(new QZ([,-0]))[1]==1/0?function(e){return new QZ(e)}:JZ,eU=AC,tU=lz,nU=dz,rU=_C,iU=XZ,aU=xC;var oU=function(e,t,n){var r=-1,i=tU,a=e.length,o=!0,s=[],u=s;if(n)o=!1,i=nU;else if(a>=200){var c=t?null:iU(e);if(c)return aU(c);o=!1,i=rU,u=new eU}else u=t?[]:s;e:for(;++r<a;){var l=e[r],d=t?t(l):l;if(l=n||0!==l?l:0,o&&d==d){for(var f=u.length;f--;)if(u[f]===d)continue e;t&&u.push(d),s.push(l)}else i(u,d,n)||(u!==s&&u.push(d),s.push(l))}return s},sU=yz,uU=Kw,cU=oU;var lU=function(e,t,n){var r=e.length;if(r<2)return r?cU(e[0]):[];for(var i=-1,a=Array(r);++i<r;)for(var o=e[i],s=-1;++s<r;)s!=i&&(a[i]=sU(a[i]||o,e[s],t,n));return cU(uU(a,1),t,n)},dU=Ji,fU=lU,pU=C$,hU=rP(function(e){return fU(dU(e,pU))});const mU=t.createContext({files:[],setFiles:()=>null,currentFileIds:[],setCurrentFileIds:()=>null}),gU=({children:n})=>{const[r,i]=t.useState([]),[a,o]=t.useState([]),s=t.useMemo(()=>({files:r,setFiles:i,currentFileIds:a,setCurrentFileIds:o}),[r,a]);return e.jsx(mU.Provider,{value:s,children:n})};var AU,yU;!function(e){e.findAvailableSlot=e=>{const t=e.reduce((e,{slot:t})=>t>e?t:e,0),n=Math.max(t,e.length),r=Array(n).fill(0).map((e,t)=>t),i=e.map(({slot:e})=>e);return r.filter(e=>!i.includes(e))[0]??n}}(AU||(AU={})),exports.EFileStatus=void 0,(yU=exports.EFileStatus||(exports.EFileStatus={}))[yU.INJECTED=-99]="INJECTED",yU[yU.INJECTING=-98]="INJECTING",yU[yU.TO_DELETE=-4]="TO_DELETE",yU[yU.ERROR_FORMAT=-3]="ERROR_FORMAT",yU[yU.ERROR_GENERIC=-2]="ERROR_GENERIC",yU[yU.ERROR_SIZE=-1]="ERROR_SIZE",yU[yU.NONE=0]="NONE",yU[yU.UPLOAD_READY=4]="UPLOAD_READY",yU[yU.UPLOADING=5]="UPLOADING",yU[yU.UPLOADED=6]="UPLOADED";const _U=t.lazy(()=>Promise.resolve().then(function(){return require("./file-upload-manager.b22d56d4.js")})),vU=n=>{const{id:r,error:i,isDirty:a,isTouched:o,value:s,schema:{compressImages:u,description:c,hideThumbnail:l,label:d,uploadOnAddingFile:f,validation:p,warning:h,...m},warning:g}=n,{files:A,currentFileIds:y,setFiles:_}=t.useContext(mU),v=t.useRef({}),b=t.useRef({}),E=t.useRef({}),S=t.useRef({}),w=t.useRef({}),{setFieldValidationConfig:x}=AP(),{dispatchFieldEvent:C}=v$(),{clearErrors:T,setError:I}=xe(),[O,D]=t.useState(),N=t.useRef(A),L=t.useCallback((e,t)=>{const n=[...t],i=n.length;e.forEach((e,t)=>{!E.current.max||i+t<E.current.max?(n.push({...e,slot:AU.findAvailableSlot(n)}),T(r)):I(r,{type:"max",message:E.current.errorMessage||Eg.UPLOAD().MAX_FILES(E.current.max)})}),_(n)},[T,r,I,_]);t.useEffect(()=>{N.current=A},[A]),t.useEffect(()=>{C("mount",r)},[C,r]),t.useEffect(()=>{const e=p?.find(e=>"required"in e),t=p?.find(e=>"fileType"in e),n=p?.find(e=>"fileExtension"in e),i=p?.find(e=>"maxSizeInKb"in e),a=p?.find(e=>"upload"in e&&e.upload);v.current=t?.fileType?t:{},b.current=t?.fileType&&n?.fileExtension?n:{},S.current=i?.maxSizeInKb>0?i:{},w.current=a||{};const o=p?.find(e=>"length"in e),s=p?.find(e=>"max"in e);E.current=o?{max:o.length,errorMessage:o.errorMessage}:s?{max:s.max,errorMessage:s.errorMessage}:{},x(r,zI().of($I().shape({dataURL:EM(),fileId:EM(),fileName:EM(),fileUrl:EM(),uploadResponse:$I()})).test("is-empty-array",e?.errorMessage||Eg.UPLOAD().REQUIRED,t=>!t||!e?.required||t.length>0).test("max-size-in-kb",S.current.errorMessage||Eg.UPLOAD().MAX_FILE_SIZE(S.current.maxSizeInKb),e=>!(e&&Array.isArray(e)&&S.current.maxSizeInKb)||A.filter(e=>e.status===exports.EFileStatus.UPLOADED).every(e=>{if("base64"===f.type&&e.dataURL)return exports.FileHelper.getFilesizeFromBase64(e.dataURL)<=1024*S.current.maxSizeInKb;if("multipart"===f.type){const t=e.uploadResponse?.data||e.uploadResponse;let n=e.rawFile?.size||t?.fileSize;return isNaN(n)&&(n=0),n<=1024*S.current.maxSizeInKb}})).test("max-files",E.current.errorMessage||Eg.UPLOAD().MAX_FILES(E.current.max),e=>!(e&&Array.isArray(e)&&E.current.max)||e.length<=E.current.max).test("no-interim-statuses",Eg.UPLOAD().UPLOADING,()=>{const e=new Set([exports.EFileStatus.INJECTED,exports.EFileStatus.INJECTING,exports.EFileStatus.NONE,exports.EFileStatus.UPLOAD_READY,exports.EFileStatus.UPLOADING]);return!N.current.some(t=>e.has(t.status))}),p)},[p,A.map(e=>e.status).join(",")]),t.useEffect(()=>{if(!a&&!o){const e=Array.isArray(s)?s:[];if(!(hU(e.map(({fileId:e})=>e),y).length>0))return;const t=[];e.forEach(({dataURL:e,fileId:n,fileName:r,fileUrl:i,uploadResponse:a})=>{t.push({addedFrom:"schema",dataURL:e,fileItem:{id:n},uploadResponse:a,fileUrl:i,rawFile:{name:r},slot:null,status:exports.EFileStatus.INJECTED})}),L(t,[])}},[L,a,o,y,s]),t.useEffect(()=>{if(i?.message)try{const{message:e,fileErrors:t}=JSON.parse(i.message);t&&_(N.current.map(e=>{const n=t[e.fileItem.id];return n?{...e,fileItem:{...e.fileItem,errorMessage:n}}:e})),e&&D(e)}catch(e){D(i.message)}else D(void 0)},[i?.message,_]);const k=t=>t?e.jsx(zF,{children:t}):null;return e.jsxs(e.Fragment,{children:[e.jsx(t.Suspense,{fallback:null,children:e.jsx(_U,{compressImages:!!u,fileTypeRule:v.current,fileExtensionRule:b.current,hideThumbnail:l,id:r,maxFileSizeRule:S.current,upload:f,uploadRule:w.current,value:s})}),e.jsx(M.FileUpload,{...m,accept:v.current.fileType?.map(e=>`.${e}`).join(","),description:k(c),errorMessage:k(O),fileItems:A.filter(({fileItem:e,status:t})=>!!e&&t!==exports.EFileStatus.INJECTED&&t!==exports.EFileStatus.INJECTING).map(({fileItem:e})=>e),id:r,maxFiles:E.current.max,onChange:e=>{L(e.map(e=>({addedFrom:"input",rawFile:e,slot:null,status:exports.EFileStatus.NONE})),A)},onDelete:e=>{_(A.map(t=>t.fileItem.id!==e.id?t:{...t,status:exports.EFileStatus.TO_DELETE})),T(r)},title:k(d),warning:k(g||h)})]})},bU=t.createContext({images:[],setImages:()=>null,errorCount:0,setErrorCount:()=>null,currentFileIds:[],setCurrentFileIds:()=>null}),EU=({children:n})=>{const[r,i]=t.useState([]),[a,o]=t.useState(0),[s,u]=t.useState([]);return e.jsx(bU.Provider,{value:{images:r,setImages:i,errorCount:a,setErrorCount:o,currentFileIds:s,setCurrentFileIds:u},children:n})};var SU;!function(e){e.findAvailableSlot=e=>{const t=e.reduce((e,{slot:t})=>t>e?t:e,0),n=Math.max(t,e.length),r=Array(n).fill(0).map((e,t)=>t),i=e.map(({slot:e})=>e);return r.filter(e=>!i.includes(e))[0]??n}}(SU||(SU={}));const wU=["jpg","gif","png","heic","heif","webp"];var xU;exports.EImageStatus=void 0,(xU=exports.EImageStatus||(exports.EImageStatus={}))[xU.INJECTED=-99]="INJECTED",xU[xU.ERROR_FILENAME=-8]="ERROR_FILENAME",xU[xU.ERROR_CUSTOM_MUTED=-7]="ERROR_CUSTOM_MUTED",xU[xU.ERROR_EXCEED=-6]="ERROR_EXCEED",xU[xU.ERROR_CUSTOM=-5]="ERROR_CUSTOM",xU[xU.TO_DELETE=-4]="TO_DELETE",xU[xU.ERROR_FORMAT=-3]="ERROR_FORMAT",xU[xU.ERROR_GENERIC=-2]="ERROR_GENERIC",xU[xU.ERROR_SIZE=-1]="ERROR_SIZE",xU[xU.NONE=0]="NONE",xU[xU.TO_RECOMPRESS=1]="TO_RECOMPRESS",xU[xU.COMPRESSED=2]="COMPRESSED",xU[xU.RECOMPRESSED=2]="RECOMPRESSED",xU[xU.CONVERTED=2]="CONVERTED",xU[xU.EDITED=3]="EDITED",xU[xU.UPLOAD_READY=4]="UPLOAD_READY",xU[xU.UPLOADING=5]="UPLOADING",xU[xU.UPLOADED=6]="UPLOADED",xU[xU.PENDING=7]="PENDING";var CU,TU={exports:{}},MU={exports:{}},IU={};var OU,DU,NU,LU,kU,RU,FU,$U,PU,zU,BU,ZU,UU,jU,GU={};
486
+ `;var QZ=Na,JZ=function(){},XZ=QZ&&1/xC(new QZ([,-0]))[1]==1/0?function(e){return new QZ(e)}:JZ,eU=AC,tU=lz,nU=dz,rU=_C,iU=XZ,aU=xC;var oU=function(e,t,n){var r=-1,i=tU,a=e.length,o=!0,s=[],u=s;if(n)o=!1,i=nU;else if(a>=200){var c=t?null:iU(e);if(c)return aU(c);o=!1,i=rU,u=new eU}else u=t?[]:s;e:for(;++r<a;){var l=e[r],d=t?t(l):l;if(l=n||0!==l?l:0,o&&d==d){for(var f=u.length;f--;)if(u[f]===d)continue e;t&&u.push(d),s.push(l)}else i(u,d,n)||(u!==s&&u.push(d),s.push(l))}return s},sU=yz,uU=Kw,cU=oU;var lU=function(e,t,n){var r=e.length;if(r<2)return r?cU(e[0]):[];for(var i=-1,a=Array(r);++i<r;)for(var o=e[i],s=-1;++s<r;)s!=i&&(a[i]=sU(a[i]||o,e[s],t,n));return cU(uU(a,1),t,n)},dU=Ji,fU=lU,pU=C$,hU=rP(function(e){return fU(dU(e,pU))});const mU=t.createContext({files:[],setFiles:()=>null,currentFileIds:[],setCurrentFileIds:()=>null}),gU=({children:n})=>{const[r,i]=t.useState([]),[a,o]=t.useState([]),s=t.useMemo(()=>({files:r,setFiles:i,currentFileIds:a,setCurrentFileIds:o}),[r,a]);return e.jsx(mU.Provider,{value:s,children:n})};var AU,yU;!function(e){e.findAvailableSlot=e=>{const t=e.reduce((e,{slot:t})=>t>e?t:e,0),n=Math.max(t,e.length),r=Array(n).fill(0).map((e,t)=>t),i=e.map(({slot:e})=>e);return r.filter(e=>!i.includes(e))[0]??n}}(AU||(AU={})),exports.EFileStatus=void 0,(yU=exports.EFileStatus||(exports.EFileStatus={}))[yU.INJECTED=-99]="INJECTED",yU[yU.INJECTING=-98]="INJECTING",yU[yU.TO_DELETE=-4]="TO_DELETE",yU[yU.ERROR_FORMAT=-3]="ERROR_FORMAT",yU[yU.ERROR_GENERIC=-2]="ERROR_GENERIC",yU[yU.ERROR_SIZE=-1]="ERROR_SIZE",yU[yU.NONE=0]="NONE",yU[yU.UPLOAD_READY=4]="UPLOAD_READY",yU[yU.UPLOADING=5]="UPLOADING",yU[yU.UPLOADED=6]="UPLOADED";const _U=t.lazy(()=>Promise.resolve().then(function(){return require("./file-upload-manager.85af8429.js")})),vU=n=>{const{id:r,error:i,isDirty:a,isTouched:o,value:s,schema:{compressImages:u,description:c,hideThumbnail:l,label:d,uploadOnAddingFile:f,validation:p,warning:h,...m},warning:g}=n,{files:A,currentFileIds:y,setFiles:_}=t.useContext(mU),v=t.useRef({}),b=t.useRef({}),E=t.useRef({}),S=t.useRef({}),w=t.useRef({}),{setFieldValidationConfig:x}=AP(),{dispatchFieldEvent:C}=v$(),{clearErrors:T,setError:I}=xe(),[O,D]=t.useState(),N=t.useRef(A);N.current=A;const L=t.useCallback((e,t)=>{const n=[...t],i=n.length;e.forEach((e,t)=>{!E.current.max||i+t<E.current.max?(n.push({...e,slot:AU.findAvailableSlot(n)}),T(r)):I(r,{type:"max",message:E.current.errorMessage||Eg.UPLOAD().MAX_FILES(E.current.max)})}),_(n)},[T,r,I,_]);t.useEffect(()=>{C("mount",r)},[C,r]),t.useEffect(()=>{const e=p?.find(e=>"required"in e),t=p?.find(e=>"fileType"in e),n=p?.find(e=>"fileExtension"in e),i=p?.find(e=>"maxSizeInKb"in e),a=p?.find(e=>"upload"in e&&e.upload);v.current=t?.fileType?t:{},b.current=t?.fileType&&n?.fileExtension?n:{},S.current=i?.maxSizeInKb>0?i:{},w.current=a||{};const o=p?.find(e=>"length"in e),s=p?.find(e=>"max"in e);E.current=o?{max:o.length,errorMessage:o.errorMessage}:s?{max:s.max,errorMessage:s.errorMessage}:{},x(r,zI().of($I().shape({dataURL:EM(),fileId:EM(),fileName:EM(),fileUrl:EM(),uploadResponse:$I()})).test("is-empty-array",e?.errorMessage||Eg.UPLOAD().REQUIRED,t=>!t||!e?.required||t.length>0).test("max-size-in-kb",S.current.errorMessage||Eg.UPLOAD().MAX_FILE_SIZE(S.current.maxSizeInKb),e=>!(e&&Array.isArray(e)&&S.current.maxSizeInKb)||A.filter(e=>e.status===exports.EFileStatus.UPLOADED).every(e=>{if("base64"===f.type&&e.dataURL)return exports.FileHelper.getFilesizeFromBase64(e.dataURL)<=1024*S.current.maxSizeInKb;if("multipart"===f.type){const t=e.uploadResponse?.data||e.uploadResponse;let n=e.rawFile?.size||t?.fileSize;return isNaN(n)&&(n=0),n<=1024*S.current.maxSizeInKb}})).test("max-files",E.current.errorMessage||Eg.UPLOAD().MAX_FILES(E.current.max),e=>!(e&&Array.isArray(e)&&E.current.max)||e.length<=E.current.max).test("no-interim-statuses",Eg.UPLOAD().UPLOADING,()=>{const e=new Set([exports.EFileStatus.INJECTED,exports.EFileStatus.INJECTING,exports.EFileStatus.NONE,exports.EFileStatus.UPLOAD_READY,exports.EFileStatus.UPLOADING]);return!N.current.some(t=>e.has(t.status))}),p)},[p,A.map(e=>e.status).join(",")]),t.useEffect(()=>{if(!a&&!o){const e=Array.isArray(s)?s:[];if(!(hU(e.map(({fileId:e})=>e),y).length>0))return;const t=[];e.forEach(({dataURL:e,fileId:n,fileName:r,fileUrl:i,uploadResponse:a})=>{t.push({addedFrom:"schema",dataURL:e,fileItem:{id:n},uploadResponse:a,fileUrl:i,rawFile:{name:r},slot:null,status:exports.EFileStatus.INJECTED})}),L(t,[])}},[L,a,o,y,s]),t.useEffect(()=>{if(i?.message)try{const{message:e,fileErrors:t}=JSON.parse(i.message);t&&_(N.current.map(e=>{const n=t[e.fileItem.id];return n?{...e,fileItem:{...e.fileItem,errorMessage:n}}:e})),e&&D(e)}catch(e){D(i.message)}else D(void 0)},[i?.message,_]);const k=t=>t?e.jsx(zF,{children:t}):null;return e.jsxs(e.Fragment,{children:[e.jsx(t.Suspense,{fallback:null,children:e.jsx(_U,{compressImages:!!u,fileTypeRule:v.current,fileExtensionRule:b.current,hideThumbnail:l,id:r,maxFileSizeRule:S.current,upload:f,uploadRule:w.current,value:s})}),e.jsx(M.FileUpload,{...m,accept:v.current.fileType?.map(e=>`.${e}`).join(","),description:k(c),errorMessage:k(O),fileItems:A.filter(({fileItem:e,status:t})=>!!e&&t!==exports.EFileStatus.INJECTED&&t!==exports.EFileStatus.INJECTING).map(({fileItem:e})=>e),id:r,maxFiles:E.current.max,onChange:e=>{L(e.map(e=>({addedFrom:"input",rawFile:e,slot:null,status:exports.EFileStatus.NONE})),A)},onDelete:e=>{_(A.map(t=>t.fileItem.id!==e.id?t:{...t,status:exports.EFileStatus.TO_DELETE})),T(r)},title:k(d),warning:k(g||h)})]})},bU=t.createContext({images:[],setImages:()=>null,errorCount:0,setErrorCount:()=>null,currentFileIds:[],setCurrentFileIds:()=>null}),EU=({children:n})=>{const[r,i]=t.useState([]),[a,o]=t.useState(0),[s,u]=t.useState([]);return e.jsx(bU.Provider,{value:{images:r,setImages:i,errorCount:a,setErrorCount:o,currentFileIds:s,setCurrentFileIds:u},children:n})},SU=["jpg","gif","png","heic","heif","webp"];var wU,xU;exports.EImageStatus=void 0,(wU=exports.EImageStatus||(exports.EImageStatus={}))[wU.INJECTED=-99]="INJECTED",wU[wU.ERROR_FILENAME=-8]="ERROR_FILENAME",wU[wU.ERROR_CUSTOM_MUTED=-7]="ERROR_CUSTOM_MUTED",wU[wU.ERROR_EXCEED=-6]="ERROR_EXCEED",wU[wU.ERROR_CUSTOM=-5]="ERROR_CUSTOM",wU[wU.TO_DELETE=-4]="TO_DELETE",wU[wU.ERROR_FORMAT=-3]="ERROR_FORMAT",wU[wU.ERROR_GENERIC=-2]="ERROR_GENERIC",wU[wU.ERROR_SIZE=-1]="ERROR_SIZE",wU[wU.NONE=0]="NONE",wU[wU.TO_RECOMPRESS=1]="TO_RECOMPRESS",wU[wU.COMPRESSED=2]="COMPRESSED",wU[wU.RECOMPRESSED=2]="RECOMPRESSED",wU[wU.CONVERTED=2]="CONVERTED",wU[wU.EDITED=3]="EDITED",wU[wU.UPLOAD_READY=4]="UPLOAD_READY",wU[wU.UPLOADING=5]="UPLOADING",wU[wU.UPLOADED=6]="UPLOADED",wU[wU.PENDING=7]="PENDING",function(e){e.shouldRenderFileItem=e=>{const{status:t,drawingDataURL:n,dataURL:r}=e;return!(!n&&!r)||t<exports.EImageStatus.NONE&&t!==exports.EImageStatus.INJECTED&&t!==exports.EImageStatus.TO_DELETE},e.findAvailableSlot=e=>{const t=e.reduce((e,{slot:t})=>t>e?t:e,0),n=Math.max(t,e.length),r=Array(n).fill(0).map((e,t)=>t),i=e.map(({slot:e})=>e);return r.filter(e=>!i.includes(e))[0]??n}}(xU||(xU={}));var CU,TU={exports:{}},MU={exports:{}},IU={};var OU,DU,NU,LU,kU,RU,FU,$U,PU,zU,BU,ZU,UU,jU,GU={};
487
487
  /** @license React v16.13.1
488
488
  * react-is.development.js
489
489
  *
@@ -696,7 +696,7 @@ object-assign
696
696
  `,wG=H.default(c.Alert)`
697
697
  margin-top: ${n.Spacing["spacing-16"]};
698
698
  margin-bottom: ${n.Spacing["spacing-16"]};
699
- `,xG=n=>{const{id:r,capture:i,className:a,label:o,buttonLabel:s="Add photos",description:u,dimensions:c,maxFiles:l,accepts:d,maxSizeInKb:f,validation:p,errorMessage:h,multiple:m,warning:g,tooltip:A}=n,{images:y,setImages:_,setErrorCount:v}=t.useContext(bU),{dispatchFieldEvent:b}=v$(),E=t.createRef(),[S,w]=t.useState(0),[x,C]=t.useState();t.useEffect(()=>{l>0&&w(l-y.length)},[l,y.length]);const T=vP(x);t.useEffect(()=>{T&&!x&&v(e=>Math.max(0,e-1))},[x]);const M=e=>{e?.preventDefault(),b("file-dialog",r),E?.current?.fileDialog()},I=e=>t=>{t.preventDefault(),_(t=>t.map((t,n)=>({...t,...n===e?{status:exports.EImageStatus.TO_DELETE}:{}}))),C(!1)};return e.jsx(mG,{id:exports.TestHelper.generateId(r),"data-testid":exports.TestHelper.generateId(r),className:a,"aria-invalid":!!h,"aria-describedby":!!h&&exports.TestHelper.generateId(r,"error"),children:e.jsxs(Xj,{id:`${r}-drag-upload`,accept:d,capture:i,onInput:e=>{if(e&&e.length)if(!l||e.length+y.length<=l){const t=[...y];e.forEach(e=>{const n=SU.findAvailableSlot(t);t.push({id:wg(),file:e,name:e.name,dimensions:c,status:exports.EImageStatus.NONE,uploadProgress:0,addedFrom:"dragInput",slot:n})}),_(t),C(!1)}else l>0&&C(!0)},ref:E,multiple:m,children:[e.jsx(gG,{forwardedAs:"label",htmlFor:exports.TestHelper.generateId(r,"file-input-add-button"),$hasDescription:!!u,weight:"semibold",children:o}),A&&e.jsxs(AG,{type:"button","data-testid":exports.TestHelper.generateId(r,"tooltip"),onClick:()=>b("click-tooltip",r),children:[A.label&&e.jsx(_G,{children:A.label}),A.icon&&(t=>{const n=Y[t];return e.jsx(yG,{children:e.jsx(n,{})})})(A.icon)]}),u&&e.jsx(vG,{children:e.jsx(zF,{children:u})}),y&&y.length?y.map((t,n)=>e.jsx(hG,{id:`${r}-file-item`,index:n,fileItem:t,maxSizeInKb:f,accepts:d,validation:p,onDelete:I},`${t.name}_${n}`)):null,x?(()=>{const t=p?.find(e=>"length"in e),n=p?.find(e=>"max"in e);let i=t?.errorMessage||n?.errorMessage;return i||(i=S<1||0===y.length?Eg.UPLOAD("photo").MAX_FILES(l):Eg.UPLOAD("photo").MAX_FILES_WITH_REMAINING(S)),e.jsx(wG,{type:"error","data-testid":exports.TestHelper.generateId(r,"error"),children:i})})():null,h&&(O=h,e.jsx(wG,{type:"error","data-testid":exports.TestHelper.generateId(r,"error"),children:O})),g?e.jsx(wG,{type:"warning","data-testid":exports.TestHelper.generateId(r,"warning"),children:g}):null,l&&S<=0?null:e.jsxs(bG,{children:[e.jsx(EG,{type:"button",onClick:M,styleType:"secondary",id:exports.TestHelper.generateId(r,"file-input-add-button"),"data-testid":exports.TestHelper.generateId(r,"file-input-add-button"),children:s}),e.jsx(SG,{children:"or drop them here"})]})]})});var O},CG=H.default.div`
699
+ `,xG=n=>{const{id:r,capture:i,className:a,label:o,buttonLabel:s="Add photos",description:u,dimensions:c,maxFiles:l,accepts:d,maxSizeInKb:f,validation:p,errorMessage:h,multiple:m,warning:g,tooltip:A}=n,{images:y,setImages:_,setErrorCount:v}=t.useContext(bU),{dispatchFieldEvent:b}=v$(),E=t.createRef(),[S,w]=t.useState(0),[x,C]=t.useState();t.useEffect(()=>{l>0&&w(l-y.length)},[l,y.length]);const T=vP(x);t.useEffect(()=>{T&&!x&&v(e=>Math.max(0,e-1))},[x]);const M=e=>{e?.preventDefault(),b("file-dialog",r),E?.current?.fileDialog()},I=e=>t=>{t.preventDefault(),_(t=>t.map((t,n)=>({...t,...n===e?{status:exports.EImageStatus.TO_DELETE}:{}}))),C(!1)};return e.jsx(mG,{id:exports.TestHelper.generateId(r),"data-testid":exports.TestHelper.generateId(r),className:a,"aria-invalid":!!h,"aria-describedby":!!h&&exports.TestHelper.generateId(r,"error"),children:e.jsxs(Xj,{id:`${r}-drag-upload`,accept:d,capture:i,onInput:e=>{if(e&&e.length)if(!l||e.length+y.length<=l){const t=[...y];e.forEach(e=>{const n=xU.findAvailableSlot(t);t.push({id:wg(),file:e,name:e.name,dimensions:c,status:exports.EImageStatus.NONE,uploadProgress:0,addedFrom:"dragInput",slot:n})}),_(t),C(!1)}else l>0&&C(!0)},ref:E,multiple:m,children:[e.jsx(gG,{forwardedAs:"label",htmlFor:exports.TestHelper.generateId(r,"file-input-add-button"),$hasDescription:!!u,weight:"semibold",children:o}),A&&e.jsxs(AG,{type:"button","data-testid":exports.TestHelper.generateId(r,"tooltip"),onClick:()=>b("click-tooltip",r),children:[A.label&&e.jsx(_G,{children:A.label}),A.icon&&(t=>{const n=Y[t];return e.jsx(yG,{children:e.jsx(n,{})})})(A.icon)]}),u&&e.jsx(vG,{children:e.jsx(zF,{children:u})}),y&&y.length?y.map((t,n)=>xU.shouldRenderFileItem(t)?e.jsx(hG,{id:`${r}-file-item`,index:n,fileItem:t,maxSizeInKb:f,accepts:d,validation:p,onDelete:I},`${t.name}_${n}`):null):null,x?(()=>{const t=p?.find(e=>"length"in e),n=p?.find(e=>"max"in e);let i=t?.errorMessage||n?.errorMessage;return i||(i=S<1||0===y.length?Eg.UPLOAD("photo").MAX_FILES(l):Eg.UPLOAD("photo").MAX_FILES_WITH_REMAINING(S)),e.jsx(wG,{type:"error","data-testid":exports.TestHelper.generateId(r,"error"),children:i})})():null,h&&(O=h,e.jsx(wG,{type:"error","data-testid":exports.TestHelper.generateId(r,"error"),children:O})),g?e.jsx(wG,{type:"warning","data-testid":exports.TestHelper.generateId(r,"warning"),children:g}):null,l&&S<=0?null:e.jsxs(bG,{children:[e.jsx(EG,{type:"button",onClick:M,styleType:"secondary",id:exports.TestHelper.generateId(r,"file-input-add-button"),"data-testid":exports.TestHelper.generateId(r,"file-input-add-button"),children:s}),e.jsx(SG,{children:"or drop them here"})]})]})});var O},CG=H.default.div`
700
700
  position: absolute;
701
701
  top: 0;
702
702
  left: 0;
@@ -1016,7 +1016,7 @@ object-assign
1016
1016
  stroke: ${n.Colour["icon-primary"]};
1017
1017
  stroke-width: 1;
1018
1018
  }
1019
- `,dH=n=>{const{accepts:r,activeFileIndex:i,capture:a,id:o="image-thumbnails",images:s,maxFiles:u,onClickThumbnail:c,onSelectFile:l,multiple:d}=n,f=t.useRef(null),p=async e=>{const t=Array.from(e.target.files||[]);t.length&&setTimeout(()=>{l(t)},100)},h=()=>f?.current?.click();return e.jsxs(nH,{id:exports.TestHelper.generateId(o),children:[s.map((t,n)=>t.status===exports.EImageStatus.NONE?e.jsx(sH,{children:[...Array(4)].map((t,n)=>e.jsx(oH,{},`dot-${n}`))},n):t.status>exports.EImageStatus.NONE||t.status===exports.EImageStatus.ERROR_CUSTOM_MUTED?e.jsx(rH,{id:exports.TestHelper.generateId(o,`item-${n+1}`),"data-testid":exports.TestHelper.generateId(o,`item-${n+1}`),$src:t.thumbnailDataURL||t.dataURL||"https://assets.life.gov.sg/web-frontend-engine/img/icons/photo-placeholder-add.svg",type:"button","aria-label":`thumbnail of ${t.name}`,onClick:()=>c(n),children:e.jsx(uH,{$isSelected:i===n})},n):"reviewModal"===t.addedFrom||t.status<exports.EImageStatus.NONE?e.jsxs(rH,{id:exports.TestHelper.generateId(o,`item-${n+1}`),"data-testid":exports.TestHelper.generateId(o,`item-${n+1}`),type:"button","aria-label":`error with ${t.name}`,onClick:()=>c(n),$error:!0,children:[e.jsx(uH,{$isSelected:i===n}),e.jsx(iH,{})]},n):void 0),(s.filter(({status:e,addedFrom:t})=>e>=exports.EImageStatus.NONE||e===exports.EImageStatus.ERROR_CUSTOM_MUTED||"reviewModal"===t).length<u||!u)&&e.jsxs(e.Fragment,{children:[e.jsx(cH,{id:exports.TestHelper.generateId(o,"file-input"),"data-testid":exports.TestHelper.generateId(o,"file-input"),type:"file","aria-hidden":"true",tabIndex:-1,capture:a,ref:f,accept:r.map(e=>`.${e}`).join(", "),onChange:p,multiple:d,value:""}),e.jsx(lH,{type:"button",id:exports.TestHelper.generateId(o,"add-image-button"),"data-testid":exports.TestHelper.generateId(o,"add-image-button"),"aria-label":"add image",styleType:"secondary",onClick:h,children:e.jsx(R.PlusIcon,{})})]})]})},fH=t.lazy(()=>Promise.resolve().then(function(){return require("./index.6e0e20f7.js")})),pH=[{color:"#282828",label:"black"},{color:"#FFF",colorScheme:"light",label:"white"},{color:"#017cd3",label:"blue"},{color:"#fb0101",label:"red"},{color:"#22910c",label:"green"},{color:"#f8e821",label:"yellow"}],hH=n=>{const{accepts:r,capture:i,className:a,compress:s,dimensions:u,id:c="image-review",maxFiles:l,maxSizeInKb:d,onExit:f,outputType:p,show:h,multiple:m,maxFilesErrorMessage:g,imageReviewModalStyles:A}=n,{images:y,setImages:_}=t.useContext(bU),{dispatchFieldEvent:v,addFieldEventListener:b,removeFieldEventListener:E}=v$(),S=vP(h),[w,x]=t.useState(y.length-1),[C,T]=t.useState(!1),[M,O]=t.useState(),D=!!y?.find(({status:e})=>e===exports.EImageStatus.NONE),[N,L]=t.useState(pH[0].color),[k,R]=t.useState(!1),F=t.useRef(null),$=!!y?.find(({addedFrom:e,status:t})=>"reviewModal"===e&&t<=exports.EImageStatus.NONE)||!y.length,P=t.useCallback(e=>{e.detail.removePendingImages&&_(e=>e.filter(({status:e})=>e===exports.EImageStatus.UPLOADED||e===exports.EImageStatus.ERROR_CUSTOM_MUTED)),f()},[f,_]),z=e=>{!l||e.length+y.filter(({status:e,addedFrom:t})=>e>=exports.EImageStatus.NONE||"reviewModal"===t).length<=l?e.forEach(e=>{_(t=>{const n=SU.findAvailableSlot(t);return[...t,{id:wg(),file:e,name:e.name,dimensions:u,status:exports.EImageStatus.NONE,uploadProgress:0,addedFrom:"reviewModal",slot:n}]})}):_(t=>{const n=SU.findAvailableSlot(t);return[...t,{id:wg(),file:e[0],name:e[0].name,dimensions:u,status:exports.EImageStatus.ERROR_EXCEED,uploadProgress:0,addedFrom:"reviewModal",slot:n}]})},B=e=>{e&&(_(e=>e.map((e,t)=>({...e,...t===w?{status:exports.EImageStatus.TO_DELETE}:{}}))),x(Math.max(0,w-1))),O(null)},Z=t.useCallback(()=>{_(e=>e.filter(({status:e})=>e>=exports.EImageStatus.NONE||e===exports.EImageStatus.ERROR_CUSTOM_MUTED).map(e=>{const t={...e};return e.drawingDataURL&&(t.dataURL=e.drawingDataURL),e.status<exports.EImageStatus.UPLOAD_READY&&e.status>exports.EImageStatus.NONE&&(t.status=exports.EImageStatus.UPLOAD_READY),t.drawingDataURL=void 0,t.drawing=void 0,t}))},[_]),U=()=>{!v("save-review-images",c,{images:y,retry:U})||(Z(),f())},j=()=>{T(!0),L(pH[0].color)},G=async()=>{const{dataURL:e,drawing:t}=F.current?.export()||{},n=await exports.ImageHelper.dataUrlToImage(e),r=await exports.ImageHelper.resampleImage(n,{scale:96/n.width,type:exports.FileHelper.fileExtensionToMimeType(p)}),i=await exports.FileHelper.fileToDataUrl(r);_(n=>{const r=[...n];return r[w]={...r[w],thumbnailDataURL:i,drawingDataURL:e,drawing:t,status:s?exports.EImageStatus.TO_RECOMPRESS:exports.EImageStatus.EDITED},r}),T(!1),Y()},H=()=>{Y(),R(!0)},Y=()=>{L(""),R(!1)};t.useEffect(()=>{const e={"trigger-save-review-images":Z,"dismiss-review-modal":P};return Object.entries(e).forEach(([e,t])=>{b(e,c,t)}),()=>{Object.entries(e).forEach(([e,t])=>{E(e,c,t)})}},[b,P,Z,c,E]),t.useEffect(()=>{x(y.length-1)},[y.length]),t.useEffect(()=>{h?v("show-review-modal",c):S&&v("hide-review-modal",c)},[h]);return e.jsx(o.Modal,{id:exports.TestHelper.generateId(c,void 0,h?"show":"hide"),className:a?`${a}-review`:void 0,show:h,children:e.jsx(RG,{className:a?`${a}-review-modal-box`:void 0,imageReviewModalStyles:A,showCloseButton:!1,children:h?e.jsxs(e.Fragment,{children:[e.jsx(FG,{className:a?`${a}-header`:void 0,$drawActive:C,children:C?e.jsxs(e.Fragment,{children:[e.jsx(BG,{id:exports.TestHelper.generateId(c,"clear-drawing-button"),"data-testid":exports.TestHelper.generateId(c,"clear-drawing-button"),onClick:()=>O("clear-drawing"),children:"Clear"}),e.jsx(BG,{id:exports.TestHelper.generateId(c,"save-drawing"),"data-testid":exports.TestHelper.generateId(c,"save-drawing"),onClick:G,children:"Save"})]}):e.jsxs(e.Fragment,{children:[e.jsx($G,{id:exports.TestHelper.generateId(c,"close-button"),"data-testid":exports.TestHelper.generateId(c,"close-button"),"aria-label":"exit review modal",onClick:()=>O("exit"),children:e.jsx(I.CrossIcon,{type:"cross"})}),e.jsx(PG,{weight:"semibold",children:"Review photos"})]})}),e.jsxs(ZG,{children:[y.length>0&&e.jsx(WG,{className:a?`${a}-editor`:void 0,children:e.jsx(t.Suspense,{fallback:null,children:e.jsx(fH,{baseImageDataURL:y[w]?.dataURL,drawing:y[w]?.drawing,color:C?N:void 0,erase:!!C&&k,ref:F,maxSizeInKb:d})})}),y.length>0&&e.jsx(UG,{children:"Loading Preview..."}),!C&&y[w]?.status>=exports.EImageStatus.NONE&&e.jsxs(jG,{children:[e.jsxs(GG,{id:exports.TestHelper.generateId(c,"draw-button"),"data-testid":exports.TestHelper.generateId(c,"draw-button"),onClick:j,disabled:D,children:[e.jsx(YG,{$disabled:D}),e.jsx(HG,{weight:"semibold",$disabled:D,children:"Draw"})]}),e.jsxs(GG,{id:exports.TestHelper.generateId(c,"delete-button"),"data-testid":exports.TestHelper.generateId(c,"delete-button"),onClick:()=>O("delete"),disabled:D,children:[e.jsx(VG,{$disabled:D}),e.jsx(HG,{weight:"semibold",$disabled:D,children:"Delete"})]})]}),y[w]?.status<exports.EImageStatus.NONE&&e.jsx(LG,{id:`${c}-photo-error`,image:y[w],accepts:r,maxSizeInKb:d,onClickOk:()=>B(!0),maxFilesErrorMessage:g,maxFiles:l})]}),e.jsx(KG,{className:a?`${a}-footer`:void 0,children:C?e.jsxs(e.Fragment,{children:[e.jsx(QG,{id:exports.TestHelper.generateId(c,"eraser-button"),"data-testid":exports.TestHelper.generateId(c,"eraser-button"),"aria-label":"eraser",onClick:H,children:e.jsx(JG,{$eraseMode:k})}),e.jsx(eH,{children:pH.map(({color:t,colorScheme:n,label:r},i)=>e.jsx(tH,{id:exports.TestHelper.generateId(c,`palette-color-${i}`),"aria-label":`${r} brush`,$color:t,$colorScheme:n,onClick:()=>(e=>{Y(),L(e)})(t),children:N===t&&e.jsx(XG,{$colorScheme:n})},t))})]}):e.jsxs(e.Fragment,{children:[e.jsx(dH,{id:`${c}-image-thumbnails`,activeFileIndex:w,accepts:r,capture:i,maxFiles:l,images:y,onClickThumbnail:x,onSelectFile:z,multiple:m}),e.jsx(qG,{id:exports.TestHelper.generateId(c,"save-button"),"data-testid":exports.TestHelper.generateId(c,"save-button"),onClick:U,disabled:$,children:"Save"})]})}),e.jsx(kG,{images:y,show:M,onDecideClearDrawing:e=>{e&&F.current.clearDrawing(),O(null)},onDecideDelete:B,onDecideExit:e=>{e&&(_(y.filter(({addedFrom:e,status:t})=>t>=exports.EImageStatus.UPLOADED||t<exports.EImageStatus.NONE&&"dragInput"===e).map(e=>({...e,drawingDataURL:void 0,drawing:void 0}))),f()),O(null)}})]}):e.jsx(e.Fragment,{})})})},mH=t.lazy(()=>Promise.resolve().then(function(){return require("./index.d136a8bd.js")})),gH=n=>{const{schema:{buttonLabel:r,capture:i,className:a,compress:o,crop:s,description:u,dimensions:c={width:1e3,height:1e3},editImage:l,label:d,outputType:f="jpg",uploadOnAddingFile:p,validation:h,multiple:m,imageReviewModalStyles:g,tooltip:A},id:y,error:_,isDirty:v,isTouched:b,value:E,warning:S}=n,{images:w,setImages:x,currentFileIds:C}=t.useContext(bU),T=vP(w),[M,I]=t.useState([...wU]),[O,D]=t.useState(0),[N,L]=t.useState(0),[k,R]=t.useState(!1),[F,$]=t.useState(!1),{setFieldValidationConfig:P}=AP(),{dispatchFieldEvent:z}=v$(),B=EP();t.useEffect(()=>{z("mount",y)},[z,y]),t.useEffect(()=>{if(!v&&!b){const e=Array.isArray(E)?E:[];if(!(hU(e.map(({fileId:e})=>e),C).length>0))return;const t=[];e.forEach(({fileId:e,fileName:n,dataURL:r,uploadResponse:i},a)=>{const o={id:e||wg(),file:{},name:n,dimensions:{width:10,height:10},dataURL:r,status:exports.EImageStatus.INJECTED,addedFrom:"schema",uploadProgress:100,slot:a,uploadResponse:i};t.push(o)}),x(t)}},[v,b,C,x,E]),t.useEffect(()=>{const e=h?.find(e=>"required"in e),t=h?.find(e=>"fileType"in e),n=h?.find(e=>"maxSizeInKb"in e);t?.fileType&&t?.fileType!==M&&I(t?.fileType),n?.maxSizeInKb&&n?.maxSizeInKb!==N&&L(n?.maxSizeInKb);const r=h?.find(e=>"length"in e),i=h?.find(e=>"max"in e);let a;r?a={maxFiles:r.length,errorMessage:r.errorMessage}:i&&(a={maxFiles:i.max,errorMessage:i.errorMessage}),a?.maxFiles&&O!==a.maxFiles&&D(a.maxFiles),P(y,zI().of($I().shape({fileName:EM(),dataURL:EM()})).test("is-empty-array",e?.errorMessage||Eg.UPLOAD("photo").REQUIRED,t=>!t||!e?.required||t.length>0).test("max-size-in-kb",n?.errorMessage||Eg.UPLOAD("photo").MAX_FILE_SIZE(n?.maxSizeInKb),e=>!(e&&Array.isArray(e)&&n?.maxSizeInKb)||e.every(e=>exports.FileHelper.getFilesizeFromBase64(e.dataURL)<=1024*n?.maxSizeInKb)),h)},[h]),t.useEffect(()=>{w.some(e=>e.status===exports.EImageStatus.NONE)||(w.some((e,t)=>{const n=T?.[t];if(e.status!==n?.status||e.dataURL!==n.dataURL)switch(e.status){case exports.EImageStatus.COMPRESSED:case exports.EImageStatus.CONVERTED:if(l&&!F)return B()?$(!0):R(!0),!0}}),0===w.length&&$(!1))},[w.map(e=>e.status).join(","),w.map(e=>e.dataURL).join(",")]);const Z=(e=!1)=>{e?l&&(document.body.classList.remove("lifesg-ds-overlay-open"),$(!0)):x(e=>e.map(e=>e.status<exports.EImageStatus.UPLOAD_READY&&e.status>exports.EImageStatus.NONE?{...e,status:exports.EImageStatus.UPLOAD_READY}:e)),R(!1)};return e.jsxs(e.Fragment,{children:[e.jsx(t.Suspense,{fallback:null,children:e.jsx(mH,{accepts:M,compress:!!o,crop:!!s,dimensions:c,editImage:l,id:y,maxSizeInKb:N,outputType:f,upload:p,filenameMatches:h?.find(e=>"matches"in e)?.matches,filenameMatchesErrorMessage:h?.find(e=>"matches"in e)?.errorMessage,value:E})}),e.jsx(xG,{id:y,capture:i,className:a,label:d,description:u,buttonLabel:r,accepts:M,maxFiles:O,maxSizeInKb:N,dimensions:c,errorMessage:_?.message,validation:h,multiple:m,warning:S,tooltip:A}),e.jsx(nO,{id:`${y}-review-prompt`,title:"Review photos?",size:"large",show:k,description:"This lets you check if you've selected the correct photos, and draw on them to highlight the issue.",buttons:[{id:"ok",title:"Ok",onClick:()=>Z(!0)},{id:"skip",title:"Skip",buttonStyle:"secondary",onClick:()=>Z()}]}),(()=>{const t=h?.find(e=>"max"in e);return e.jsx(hH,{accepts:M,dimensions:c,id:y,className:a,maxFiles:O,maxFilesErrorMessage:t?.errorMessage,maxSizeInKb:N,onExit:()=>$(!1),outputType:f,show:F,multiple:m,capture:i,imageReviewModalStyles:g})})()]})},AH=i.css`
1019
+ `,dH=n=>{const{accepts:r,activeFileIndex:i,capture:a,id:o="image-thumbnails",images:s,maxFiles:u,onClickThumbnail:c,onSelectFile:l,multiple:d}=n,f=t.useRef(null),p=async e=>{const t=Array.from(e.target.files||[]);t.length&&setTimeout(()=>{l(t)},100)},h=()=>f?.current?.click();return e.jsxs(nH,{id:exports.TestHelper.generateId(o),children:[s.map((t,n)=>t.status===exports.EImageStatus.NONE?e.jsx(sH,{children:[...Array(4)].map((t,n)=>e.jsx(oH,{},`dot-${n}`))},n):t.status>exports.EImageStatus.NONE||t.status===exports.EImageStatus.ERROR_CUSTOM_MUTED?e.jsx(rH,{id:exports.TestHelper.generateId(o,`item-${n+1}`),"data-testid":exports.TestHelper.generateId(o,`item-${n+1}`),$src:t.thumbnailDataURL||t.dataURL||"https://assets.life.gov.sg/web-frontend-engine/img/icons/photo-placeholder-add.svg",type:"button","aria-label":`thumbnail of ${t.name}`,onClick:()=>c(n),children:e.jsx(uH,{$isSelected:i===n})},n):"reviewModal"===t.addedFrom||t.status<exports.EImageStatus.NONE?e.jsxs(rH,{id:exports.TestHelper.generateId(o,`item-${n+1}`),"data-testid":exports.TestHelper.generateId(o,`item-${n+1}`),type:"button","aria-label":`error with ${t.name}`,onClick:()=>c(n),$error:!0,children:[e.jsx(uH,{$isSelected:i===n}),e.jsx(iH,{})]},n):void 0),(s.filter(({status:e,addedFrom:t})=>e>=exports.EImageStatus.NONE||e===exports.EImageStatus.ERROR_CUSTOM_MUTED||"reviewModal"===t).length<u||!u)&&e.jsxs(e.Fragment,{children:[e.jsx(cH,{id:exports.TestHelper.generateId(o,"file-input"),"data-testid":exports.TestHelper.generateId(o,"file-input"),type:"file","aria-hidden":"true",tabIndex:-1,capture:a,ref:f,accept:r.map(e=>`.${e}`).join(", "),onChange:p,multiple:d,value:""}),e.jsx(lH,{type:"button",id:exports.TestHelper.generateId(o,"add-image-button"),"data-testid":exports.TestHelper.generateId(o,"add-image-button"),"aria-label":"add image",styleType:"secondary",onClick:h,children:e.jsx(R.PlusIcon,{})})]})]})},fH=t.lazy(()=>Promise.resolve().then(function(){return require("./index.efc005fc.js")})),pH=[{color:"#282828",label:"black"},{color:"#FFF",colorScheme:"light",label:"white"},{color:"#017cd3",label:"blue"},{color:"#fb0101",label:"red"},{color:"#22910c",label:"green"},{color:"#f8e821",label:"yellow"}],hH=n=>{const{accepts:r,capture:i,className:a,compress:s,dimensions:u,id:c="image-review",maxFiles:l,maxSizeInKb:d,onExit:f,outputType:p,show:h,multiple:m,maxFilesErrorMessage:g,imageReviewModalStyles:A}=n,{images:y,setImages:_}=t.useContext(bU),{dispatchFieldEvent:v,addFieldEventListener:b,removeFieldEventListener:E}=v$(),S=vP(h),[w,x]=t.useState(y.length-1),[C,T]=t.useState(!1),[M,O]=t.useState(),D=!!y?.find(({status:e})=>e===exports.EImageStatus.NONE),[N,L]=t.useState(pH[0].color),[k,R]=t.useState(!1),F=t.useRef(null),$=!!y?.find(({addedFrom:e,status:t})=>"reviewModal"===e&&t<=exports.EImageStatus.NONE)||!y.length,P=t.useCallback(e=>{e.detail.removePendingImages&&_(e=>e.filter(({status:e})=>e===exports.EImageStatus.UPLOADED||e===exports.EImageStatus.ERROR_CUSTOM_MUTED)),f()},[f,_]),z=e=>{!l||e.length+y.filter(({status:e,addedFrom:t})=>e>=exports.EImageStatus.NONE||"reviewModal"===t).length<=l?e.forEach(e=>{_(t=>{const n=xU.findAvailableSlot(t);return[...t,{id:wg(),file:e,name:e.name,dimensions:u,status:exports.EImageStatus.NONE,uploadProgress:0,addedFrom:"reviewModal",slot:n}]})}):_(t=>{const n=xU.findAvailableSlot(t);return[...t,{id:wg(),file:e[0],name:e[0].name,dimensions:u,status:exports.EImageStatus.ERROR_EXCEED,uploadProgress:0,addedFrom:"reviewModal",slot:n}]})},B=e=>{e&&(_(e=>e.map((e,t)=>({...e,...t===w?{status:exports.EImageStatus.TO_DELETE}:{}}))),x(Math.max(0,w-1))),O(null)},Z=t.useCallback(()=>{_(e=>e.filter(({status:e})=>e>=exports.EImageStatus.NONE||e===exports.EImageStatus.ERROR_CUSTOM_MUTED).map(e=>{const t={...e};return e.drawingDataURL&&(t.dataURL=e.drawingDataURL),e.status<exports.EImageStatus.UPLOAD_READY&&e.status>exports.EImageStatus.NONE&&(t.status=exports.EImageStatus.UPLOAD_READY),t.drawingDataURL=void 0,t.drawing=void 0,t}))},[_]),U=()=>{!v("save-review-images",c,{images:y,retry:U})||(Z(),f())},j=()=>{T(!0),L(pH[0].color)},G=async()=>{const{dataURL:e,drawing:t}=F.current?.export()||{},n=await exports.ImageHelper.dataUrlToImage(e),r=await exports.ImageHelper.resampleImage(n,{scale:96/n.width,type:exports.FileHelper.fileExtensionToMimeType(p)}),i=await exports.FileHelper.fileToDataUrl(r);_(n=>{const r=[...n];return r[w]={...r[w],thumbnailDataURL:i,drawingDataURL:e,drawing:t,status:s?exports.EImageStatus.TO_RECOMPRESS:exports.EImageStatus.EDITED},r}),T(!1),Y()},H=()=>{Y(),R(!0)},Y=()=>{L(""),R(!1)};t.useEffect(()=>{const e={"trigger-save-review-images":Z,"dismiss-review-modal":P};return Object.entries(e).forEach(([e,t])=>{b(e,c,t)}),()=>{Object.entries(e).forEach(([e,t])=>{E(e,c,t)})}},[b,P,Z,c,E]),t.useEffect(()=>{x(y.length-1)},[y.length]),t.useEffect(()=>{h?v("show-review-modal",c):S&&v("hide-review-modal",c)},[h]);return e.jsx(o.Modal,{id:exports.TestHelper.generateId(c,void 0,h?"show":"hide"),className:a?`${a}-review`:void 0,show:h,children:e.jsx(RG,{className:a?`${a}-review-modal-box`:void 0,imageReviewModalStyles:A,showCloseButton:!1,children:h?e.jsxs(e.Fragment,{children:[e.jsx(FG,{className:a?`${a}-header`:void 0,$drawActive:C,children:C?e.jsxs(e.Fragment,{children:[e.jsx(BG,{id:exports.TestHelper.generateId(c,"clear-drawing-button"),"data-testid":exports.TestHelper.generateId(c,"clear-drawing-button"),onClick:()=>O("clear-drawing"),children:"Clear"}),e.jsx(BG,{id:exports.TestHelper.generateId(c,"save-drawing"),"data-testid":exports.TestHelper.generateId(c,"save-drawing"),onClick:G,children:"Save"})]}):e.jsxs(e.Fragment,{children:[e.jsx($G,{id:exports.TestHelper.generateId(c,"close-button"),"data-testid":exports.TestHelper.generateId(c,"close-button"),"aria-label":"exit review modal",onClick:()=>O("exit"),children:e.jsx(I.CrossIcon,{type:"cross"})}),e.jsx(PG,{weight:"semibold",children:"Review photos"})]})}),e.jsxs(ZG,{children:[y.length>0&&e.jsx(WG,{className:a?`${a}-editor`:void 0,children:e.jsx(t.Suspense,{fallback:null,children:e.jsx(fH,{baseImageDataURL:y[w]?.dataURL,drawing:y[w]?.drawing,color:C?N:void 0,erase:!!C&&k,ref:F,maxSizeInKb:d})})}),y.length>0&&e.jsx(UG,{children:"Loading Preview..."}),!C&&y[w]?.status>=exports.EImageStatus.NONE&&e.jsxs(jG,{children:[e.jsxs(GG,{id:exports.TestHelper.generateId(c,"draw-button"),"data-testid":exports.TestHelper.generateId(c,"draw-button"),onClick:j,disabled:D,children:[e.jsx(YG,{$disabled:D}),e.jsx(HG,{weight:"semibold",$disabled:D,children:"Draw"})]}),e.jsxs(GG,{id:exports.TestHelper.generateId(c,"delete-button"),"data-testid":exports.TestHelper.generateId(c,"delete-button"),onClick:()=>O("delete"),disabled:D,children:[e.jsx(VG,{$disabled:D}),e.jsx(HG,{weight:"semibold",$disabled:D,children:"Delete"})]})]}),y[w]?.status<exports.EImageStatus.NONE&&e.jsx(LG,{id:`${c}-photo-error`,image:y[w],accepts:r,maxSizeInKb:d,onClickOk:()=>B(!0),maxFilesErrorMessage:g,maxFiles:l})]}),e.jsx(KG,{className:a?`${a}-footer`:void 0,children:C?e.jsxs(e.Fragment,{children:[e.jsx(QG,{id:exports.TestHelper.generateId(c,"eraser-button"),"data-testid":exports.TestHelper.generateId(c,"eraser-button"),"aria-label":"eraser",onClick:H,children:e.jsx(JG,{$eraseMode:k})}),e.jsx(eH,{children:pH.map(({color:t,colorScheme:n,label:r},i)=>e.jsx(tH,{id:exports.TestHelper.generateId(c,`palette-color-${i}`),"aria-label":`${r} brush`,$color:t,$colorScheme:n,onClick:()=>(e=>{Y(),L(e)})(t),children:N===t&&e.jsx(XG,{$colorScheme:n})},t))})]}):e.jsxs(e.Fragment,{children:[e.jsx(dH,{id:`${c}-image-thumbnails`,activeFileIndex:w,accepts:r,capture:i,maxFiles:l,images:y,onClickThumbnail:x,onSelectFile:z,multiple:m}),e.jsx(qG,{id:exports.TestHelper.generateId(c,"save-button"),"data-testid":exports.TestHelper.generateId(c,"save-button"),onClick:U,disabled:$,children:"Save"})]})}),e.jsx(kG,{images:y,show:M,onDecideClearDrawing:e=>{e&&F.current.clearDrawing(),O(null)},onDecideDelete:B,onDecideExit:e=>{e&&(_(y.filter(({addedFrom:e,status:t})=>t>=exports.EImageStatus.UPLOADED||t<exports.EImageStatus.NONE&&"dragInput"===e).map(e=>({...e,drawingDataURL:void 0,drawing:void 0}))),f()),O(null)}})]}):e.jsx(e.Fragment,{})})})},mH=t.lazy(()=>Promise.resolve().then(function(){return require("./index.48f1a1f1.js")})),gH=n=>{const{schema:{buttonLabel:r,capture:i,className:a,compress:o,crop:s,description:u,dimensions:c={width:1e3,height:1e3},editImage:l,label:d,outputType:f="jpg",uploadOnAddingFile:p,validation:h,multiple:m,imageReviewModalStyles:g,tooltip:A},id:y,error:_,isDirty:v,isTouched:b,value:E,warning:S}=n,{images:w,setImages:x,currentFileIds:C}=t.useContext(bU),T=vP(w),[M,I]=t.useState([...SU]),[O,D]=t.useState(0),[N,L]=t.useState(0),[k,R]=t.useState(!1),[F,$]=t.useState(!1),{setFieldValidationConfig:P}=AP(),{dispatchFieldEvent:z}=v$(),B=EP();t.useEffect(()=>{z("mount",y)},[z,y]),t.useEffect(()=>{if(!v&&!b){const e=Array.isArray(E)?E:[];if(!(hU(e.map(({fileId:e})=>e),C).length>0))return;const t=[];e.forEach(({fileId:e,fileName:n,dataURL:r,uploadResponse:i},a)=>{const o={id:e||wg(),file:{},name:n,dimensions:{width:10,height:10},dataURL:r,status:exports.EImageStatus.INJECTED,addedFrom:"schema",uploadProgress:100,slot:a,uploadResponse:i};t.push(o)}),x(t)}},[v,b,C,x,E]),t.useEffect(()=>{const e=h?.find(e=>"required"in e),t=h?.find(e=>"fileType"in e),n=h?.find(e=>"maxSizeInKb"in e);t?.fileType&&t?.fileType!==M&&I(t?.fileType),n?.maxSizeInKb&&n?.maxSizeInKb!==N&&L(n?.maxSizeInKb);const r=h?.find(e=>"length"in e),i=h?.find(e=>"max"in e);let a;r?a={maxFiles:r.length,errorMessage:r.errorMessage}:i&&(a={maxFiles:i.max,errorMessage:i.errorMessage}),a?.maxFiles&&O!==a.maxFiles&&D(a.maxFiles),P(y,zI().of($I().shape({fileName:EM(),dataURL:EM()})).test("is-empty-array",e?.errorMessage||Eg.UPLOAD("photo").REQUIRED,t=>!t||!e?.required||t.length>0).test("max-size-in-kb",n?.errorMessage||Eg.UPLOAD("photo").MAX_FILE_SIZE(n?.maxSizeInKb),e=>!(e&&Array.isArray(e)&&n?.maxSizeInKb)||e.every(e=>exports.FileHelper.getFilesizeFromBase64(e.dataURL)<=1024*n?.maxSizeInKb)),h)},[h]),t.useEffect(()=>{w.some(e=>e.status===exports.EImageStatus.NONE)||(w.some((e,t)=>{const n=T?.[t];if(e.status!==n?.status||e.dataURL!==n.dataURL)switch(e.status){case exports.EImageStatus.COMPRESSED:case exports.EImageStatus.CONVERTED:if(l&&!F)return B()?$(!0):R(!0),!0}}),0===w.length&&$(!1))},[w.map(e=>e.status).join(","),w.map(e=>e.dataURL).join(",")]);const Z=(e=!1)=>{e?l&&(document.body.classList.remove("lifesg-ds-overlay-open"),$(!0)):x(e=>e.map(e=>e.status<exports.EImageStatus.UPLOAD_READY&&e.status>exports.EImageStatus.NONE?{...e,status:exports.EImageStatus.UPLOAD_READY}:e)),R(!1)};return e.jsxs(e.Fragment,{children:[e.jsx(t.Suspense,{fallback:null,children:e.jsx(mH,{accepts:M,compress:!!o,crop:!!s,dimensions:c,editImage:l,id:y,maxSizeInKb:N,outputType:f,upload:p,filenameMatches:h?.find(e=>"matches"in e)?.matches,filenameMatchesErrorMessage:h?.find(e=>"matches"in e)?.errorMessage,value:E})}),e.jsx(xG,{id:y,capture:i,className:a,label:d,description:u,buttonLabel:r,accepts:M,maxFiles:O,maxSizeInKb:N,dimensions:c,errorMessage:_?.message,validation:h,multiple:m,warning:S,tooltip:A}),e.jsx(nO,{id:`${y}-review-prompt`,title:"Review photos?",size:"large",show:k,description:"This lets you check if you've selected the correct photos, and draw on them to highlight the issue.",buttons:[{id:"ok",title:"Ok",onClick:()=>Z(!0)},{id:"skip",title:"Skip",buttonStyle:"secondary",onClick:()=>Z()}]}),(()=>{const t=h?.find(e=>"max"in e);return e.jsx(hH,{accepts:M,dimensions:c,id:y,className:a,maxFiles:O,maxFilesErrorMessage:t?.errorMessage,maxSizeInKb:N,onExit:()=>$(!1),outputType:f,show:F,multiple:m,capture:i,imageReviewModalStyles:g})})()]})},AH=i.css`
1020
1020
  border: ${n.Border["width-010"]} ${n.Border.solid} ${n.Colour["border-focus"]};
1021
1021
  box-shadow: none;
1022
1022
  `,yH=i.css`
@@ -1095,7 +1095,7 @@ object-assign
1095
1095
  ${e=>i.css`
1096
1096
  margin-left: ${e.$readOnly?n.Spacing["spacing-4"]:n.Spacing["spacing-12"]};
1097
1097
  `}
1098
- `,SH=t=>{const{id:n,"data-testid":r,className:i,disabled:a,readOnly:o,onFocus:s,value:u,placeholder:c,error:l}=t;return e.jsxs(vH,{id:n,"data-testid":r,type:"button",className:i,disabled:a,$readOnly:o,$error:l,onFocus:s,onClick:e=>{a||e.currentTarget.focus()},tabIndex:a?-1:0,"aria-disabled":a||void 0,"aria-haspopup":"dialog","aria-readonly":o,children:[c&&!u?e.jsx(bH,{$placeholder:!0,$disabled:a,children:c}):e.jsx(bH,{$disabled:a,children:u}),e.jsx(EH,{$disabled:a,$readOnly:o,"aria-hidden":"true",children:e.jsx($.PinFillIcon,{})})]})},wH=t=>{const{id:n,label:r,className:i,locationInputPlaceholder:a="",onFocus:o,value:s,errorMessage:u,disabled:c,readOnly:l}=t;return e.jsx(w.Form.CustomField,{id:exports.TestHelper.generateId(n,"location-input"),"data-testid":exports.TestHelper.generateId(n,"location-input"),label:r,errorMessage:u,children:e.jsx(SH,{id:exports.TestHelper.generateId(n,"location-input-base"),"data-testid":exports.TestHelper.generateId(n,"location-input-base"),disabled:c,readOnly:l,placeholder:a,onFocus:o,value:s,error:!!u,className:i})})},xH=t.lazy(()=>Promise.resolve().then(function(){return require("./location-modal.e5989ca3.js")}));class CH extends Error{code;message;constructor(e){super(),Object.assign(this,e)}}var TH;!function(e){e.IS_EMAIL_VALID="is-email-valid",e.IS_PHONE_NUMBER_VALID="is-phone-number-valid",e.SEND_OTP_FAILED="send-otp-failed",e.OTP_VERIFICATION_FAILED="otp-verification-failed",e.IS_OTP_VERIFIED="is-otp-verified",e.API_ERROR="api"}(TH||(TH={}));const MH=H.default(r.Typography.BodyMD)`
1098
+ `,SH=t=>{const{id:n,"data-testid":r,className:i,disabled:a,readOnly:o,onFocus:s,value:u,placeholder:c,error:l}=t;return e.jsxs(vH,{id:n,"data-testid":r,type:"button",className:i,disabled:a,$readOnly:o,$error:l,onFocus:s,onClick:e=>{a||e.currentTarget.focus()},tabIndex:a?-1:0,"aria-disabled":a||void 0,"aria-haspopup":"dialog","aria-readonly":o,children:[c&&!u?e.jsx(bH,{$placeholder:!0,$disabled:a,children:c}):e.jsx(bH,{$disabled:a,children:u}),e.jsx(EH,{$disabled:a,$readOnly:o,"aria-hidden":"true",children:e.jsx($.PinFillIcon,{})})]})},wH=t=>{const{id:n,label:r,className:i,locationInputPlaceholder:a="",onFocus:o,value:s,errorMessage:u,disabled:c,readOnly:l}=t;return e.jsx(w.Form.CustomField,{id:exports.TestHelper.generateId(n,"location-input"),"data-testid":exports.TestHelper.generateId(n,"location-input"),label:r,errorMessage:u,children:e.jsx(SH,{id:exports.TestHelper.generateId(n,"location-input-base"),"data-testid":exports.TestHelper.generateId(n,"location-input-base"),disabled:c,readOnly:l,placeholder:a,onFocus:o,value:s,error:!!u,className:i})})},xH=t.lazy(()=>Promise.resolve().then(function(){return require("./location-modal.6885ccea.js")}));class CH extends Error{code;message;constructor(e){super(),Object.assign(this,e)}}var TH;!function(e){e.IS_EMAIL_VALID="is-email-valid",e.IS_PHONE_NUMBER_VALID="is-phone-number-valid",e.SEND_OTP_FAILED="send-otp-failed",e.OTP_VERIFICATION_FAILED="otp-verification-failed",e.IS_OTP_VERIFIED="is-otp-verified",e.API_ERROR="api"}(TH||(TH={}));const MH=H.default(r.Typography.BodyMD)`
1099
1099
  cursor: ${e=>e.disabled?"not-allowed":"pointer"};
1100
1100
  `,IH=H.default(z.RadioButton)`
1101
1101
  margin-right: ${n.Spacing["spacing-4"]};
@@ -1131,7 +1131,7 @@ object-assign
1131
1131
  gap: ${n.Spacing["spacing-16"]};
1132
1132
  `,FH=H.default.div`
1133
1133
  ${({$color:e})=>e&&`color: ${e};`}
1134
- `;var $H;exports.EFieldType=void 0,($H=exports.EFieldType||(exports.EFieldType={})).BUTTON="ButtonField",$H.CHECKBOX="CheckboxGroup",$H.CHIPS="Chips",$H["CONTACT-FIELD"]="ContactField",$H["DATE-FIELD"]="DateField",$H["DATE-RANGE-FIELD"]="DateRangeField",$H["EMAIL-FIELD"]="TextField",$H["E-SIGNATURE-FIELD"]="ESignatureField",$H["ERROR-FIELD"]="ErrorField",$H["FILE-UPLOAD"]="FileUpload",$H["HIDDEN-FIELD"]="HiddenField",$H["HISTOGRAM-SLIDER"]="HistogramSlider",$H["IMAGE-UPLOAD"]="ImageUpload",$H["LOCATION-FIELD"]="LocationField",$H["MASKED-FIELD"]="MaskedField",$H["MULTI-SELECT"]="MultiSelect",$H["NESTED-MULTI-SELECT"]="NestedMultiSelect",$H["RANGE-SELECT"]="RangeSelect",$H["NUMERIC-FIELD"]="TextField",$H["OTP-VERIFICATION-FIELD"]="OtpVerificationField",$H.RADIO="RadioButtonGroup",$H.RESET="ResetButton",$H.SELECT="Select",$H["SELECT-HISTOGRAM"]="SelectHistogram",$H.SLIDER="Slider",$H.SUBMIT="SubmitButton",$H.SWITCH="Switch",$H.TEXTAREA="Textarea",$H["TEXT-FIELD"]="TextField",$H["TIME-FIELD"]="TimeField",$H["UNIT-NUMBER-FIELD"]="UnitNumberField";var PH=Object.freeze({__proto__:null,ButtonField:t=>{const{id:n,schema:r}=t,{commonSchema:{label:i},customSchema:{endIcon:a,href:o,startIcon:s,target:u,...c}}=bx(r),{dispatchFieldEvent:l}=v$(),d=t=>{if(!t)return null;const n=Y[t];return e.jsx(n,{})};return e.jsxs(nz,{type:"button",...c,onClick:e=>{l("click",n,e),o&&(e=>{try{return!!new URL(e)}catch{return!1}})(o)&&(u?window.open(o,u,"noopener noreferrer"):window.location.href=o)},children:[d(s),i,d(a)]})},CheckboxGroup:n=>{const{formattedLabel:r,error:i,id:a,onChange:o,schema:s,value:u,warning:c}=n,{commonSchema:{customOptions:l,validation:d},customSchema:{className:f,disabled:p,options:h,...m}}=bx(s),{setValue:g}=xe(),[A,y]=t.useState(u||[]),{setFieldValidationConfig:_}=AP();t.useEffect(()=>{const e=d?.find(e=>"required"in e);_(a,zI().of(EM()).test("is-empty-array",e?.errorMessage||Eg.COMMON.REQUIRED_OPTION,t=>!t||!e?.required||t.length>0),d)},[d]),_s(()=>{const e=u?.filter(e=>h.find(t=>t.value===e));g(a,e)},[h]),t.useEffect(()=>{y(u||[])},[u]);const v=(e,t)=>{const n=h.find(e=>!0===e.none);let r=[...A];t?r=r.includes(e)?[]:[e]:r.includes(e)?r=Ez(r,e,n?.value):(r.push(e),r=Ez(r,n?.value)),o({target:{value:r}})},b=e=>A.includes(e),E=()=>{const e=wg();return`${a}-${e}`},S=t=>"string"==typeof t?e.jsx(zF,{inline:!0,children:t}):e.jsx(jH,{children:t});return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.CustomField,{id:a,label:r,errorMessage:i?.message,children:e.jsx("div",{role:"group",children:"toggle"===l?.styleType?h.length>0&&"toggle"===l.styleType&&e.jsx(Cz,{$layoutType:l?.layoutType??"horizontal",className:f?`${f}-checkbox-container`:void 0,children:h.map((t,n)=>{const r=E();return e.jsx(Tz,{type:"checkbox","data-testid":exports.TestHelper.generateId(a,"toggle"),id:r,className:f,disabled:p??t.disabled,focusableWhenDisabled:p,name:r,indicator:l?.indicator,styleType:!1===l?.border?"no-border":"default",checked:b(t.value),onChange:()=>v(t.value,t.none),error:!!i?.message,compositeSection:t.children?{children:e.jsx(jH,{children:t.children}),collapsible:!1}:null,subLabel:!!t.subLabel&&S(t.subLabel),children:S(t.label)},n)})}):h.length>0&&h.map((t,n)=>{const r=E();return e.jsxs(xz,{className:f?`${f}-checkbox-container`:void 0,children:[e.jsx(wz,{...m,"data-testid":exports.TestHelper.generateId(a,"checkbox"),id:r,className:f,disabled:p??t.disabled,name:r,value:t.value,focusableWhenDisabled:p,checked:b(t.value),onChange:()=>v(t.value)}),e.jsx(Sz,{forwardedAs:"label",htmlFor:r,disabled:p??t.disabled,children:S(t.label)})]},n)})})}),e.jsx(qF,{id:a,message:c})]})},Chips:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:s,value:u,warning:c}=n,{commonSchema:{validation:l},customSchema:{disabled:d,options:f,textarea:p,...h}}=bx(s),[m,g]=t.useState(u||[]),[A,y]=t.useState(!1),[_,v]=t.useState(!0),{setValue:b,unregister:E}=xe(),{setFieldValidationConfig:S,removeFieldValidationConfig:x}=AP();t.useEffect(()=>{A||E(T())},[]),t.useEffect(()=>{const e=l?.find(e=>"required"in e),t=l?.find(e=>"max"in e),n=l?.find(e=>"length"in e);S(a,zI().of(EM()).test("is-empty-array",e?.errorMessage||Eg.COMMON.REQUIRED_OPTION,t=>!t||!e?.required||t.length>0),l),1!==t?.max&&1!==n?.length||v(!1)},[l]),_s(()=>{const e=[...f.map(e=>e.value),p?.label],t=u?.filter(t=>e.includes(t));b(a,t)},[f]),t.useEffect(()=>{u?.includes(M())?I(!0):I(),g(u||[])},[u]);const C=e=>m.includes(e),T=()=>`${a}-textarea`,M=()=>"string"==typeof p?.label?p?.label:p?.label?.mainLabel,I=(e=!1)=>{y(e),e||x(T())},O=e=>{let t=[...m];if(t.includes(e))return t=t.filter(t=>t!==e),void o({target:{value:t}});_?t.push(e):t=[e],o({target:{value:t}})};return e.jsxs(e.Fragment,{children:[e.jsxs(w.Form.CustomField,{label:i,errorMessage:r?.message,children:[e.jsxs(Rz,{"data-testid":exports.TestHelper.generateId(a,"chips"),$showTextarea:A,children:[f.map((e,n)=>t.createElement(YI,{...h,key:n,onClick:()=>O(e.value),isActive:C(e.value),disabled:d??e.disabled},e.label)),(()=>{if(!p?.label)return;const t=M();return e.jsx(YI,{...h,onClick:()=>{O(t)},isActive:C(t),children:t})})()]}),(()=>{if(!p?.label)return e.jsx(e.Fragment,{});const t=T(),n={uiType:"textarea",className:s.className?`${s.className}-textarea`:void 0,...p};return A?e.jsx(Mz,{id:t,schema:n,Field:kz}):e.jsx(e.Fragment,{})})()]}),e.jsx(qF,{id:a,message:c})]})},ContactField:n=>{const{isDirty:r,formattedLabel:i,error:a,id:o,onBlur:s,onChange:u,schema:c,value:l,warning:d}=n,{commonSchema:{validation:f},customSchema:{defaultCountry:p,disabled:h,enableSearch:m,placeholder:g,...A}}=bx(c),{resetField:y}=xe(),[_,v]=t.useState(l||""),b=vP(p),[E,S]=t.useState(p),[x]=t.useState((()=>{const e=new Map;return Fz.forEach(t=>{const[n,...r]=t,i=r.find(e=>/^\d+$/.test(e));e.set(n,i)}),e})()),[C,T]=t.useState(),[M,I]=t.useState(),[O,D]=t.useState(void 0),{setFieldValidationConfig:N}=AP();t.useEffect(()=>{const e=f?.find(e=>"contactNumber"in e),t=e?.contactNumber?.singaporeNumber,n=e?.contactNumber?.internationalNumber,r=e?.errorMessage;x.has(n)?(S(n),D(!0)):["default","house","mobile"].includes(t)?(S("Singapore"),D(!0)):D(!1),I(t),N(o,EM().test("singaporeNumber",r||Eg.CONTACT.INVALID_SINGAPORE_NUMBER,e=>!e||!t||ZZ.isSingaporeNumber(e,t)).test("internationalNumber",r||Eg.CONTACT.INVALID_INTERNATIONAL_NUMBER,e=>!(e&&!t&&n)||ZZ.isInternationalNumber(C?.name,e)),f)},[f,C]),t.useEffect(()=>{const e=E||"Singapore";T({name:e,prefix:x.get(e)})},[E,x]),t.useEffect(()=>{const e=f?.find(e=>"contactNumber"in e),t=e?.contactNumber?.singaporeNumber,n=e?.contactNumber?.internationalNumber;!p||b===p||x.has(n)||["default","house","mobile"].includes(t)||S(p)},[f,p]),t.useEffect(()=>{if(void 0!==O&&!r){const{prefix:e,number:t}=ZZ.getParsedPhoneNumber(l||""),n=e.replace(/\+/g,""),r=(e=>{for(const[t,,,n]of Fz)if(t===e)return n})(E||"Singapore");if(!O||O&&n===r){const n=L({countryCode:e||r,number:t});y(o,{defaultValue:n,keepDirty:!0})}else{const e=L({countryCode:"",number:""});y(o,{defaultValue:e,keepDirty:!0})}}},[l,r,O,E]);const L=e=>{const{countryCode:t,number:n}=e,r=t.replace(/\+/g,"");if(!1===O&&r!==C?.prefix){const e=((e,t)=>{for(const[n,r]of t.entries())if(r===e)return n})(r,x);e&&T({name:e,prefix:t})}return v(n),ZZ.formatPhoneNumber(e.countryCode,e.number)||""};return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.PhoneNumberInput,{...A,"data-testid":exports.TestHelper.generateId(o,"contact"),disabled:h,enableSearch:m,errorMessage:a?.message,fixedCountry:O,id:o,label:i,placeholder:(()=>{if(g)return g;if(M){return`Enter ${"mobile"===M?"mobile":"home"} number`}return"Enter contact number"})(),value:(()=>{if(!C)return;const{prefix:e}=C;return{number:_,countryCode:e}})(),onBlur:s,onChange:e=>{const t=L(e);u({target:{value:t}})}}),e.jsx(qF,{id:o,message:d})]})},DateField:n=>{const{error:r,formattedLabel:i,id:a,isDirty:o,onBlur:s,onChange:u,schema:c,value:l,warning:d}=n,{commonSchema:{validation:f},customSchema:{useCurrentDate:p,dateFormat:h=UZ,...m}}=bx(c),{setValue:g}=xe(),[A,y]=t.useState(l||""),[_,v]=t.useState(),{setFieldValidationConfig:b}=AP();t.useEffect(()=>{const e=f?.find(e=>"dateFormat"in e&&e.dateFormat),t=f?.find(e=>"future"in e),n=f?.find(e=>"past"in e),r=f?.find(e=>"notFuture"in e),i=f?.find(e=>"notPast"in e),o=f?.find(e=>"minDate"in e),s=f?.find(e=>"maxDate"in e),u=f?.find(e=>"excludedDates"in e),c=f?.find(e=>"withinDays"in e),l=f?.find(e=>"beyondDays"in e),d=Sg.toLocalDateOrTime(o?.minDate,h,"date"),p=Sg.toLocalDateOrTime(s?.maxDate,h,"date");b(a,EM().test("is-date",e?.errorMessage||Eg.DATE.INVALID,e=>!e||""===e||!!x(e)&&!!Sg.toLocalDateOrTime(e,h,"date")).test("future",t?.errorMessage||Eg.DATE.MUST_BE_FUTURE,e=>{if(!x(e)||!t?.future)return!0;const n=Sg.toLocalDateOrTime(e,h,"date");return!!n?.isAfter(xf.now())}).test("past",n?.errorMessage||Eg.DATE.MUST_BE_PAST,e=>{if(!x(e)||!n?.past)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!!t?.isBefore(xf.now())}).test("not-future",r?.errorMessage||Eg.DATE.CANNOT_BE_FUTURE,e=>{if(!x(e)||!r?.notFuture)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!t?.isAfter(xf.now())}).test("not-past",i?.errorMessage||Eg.DATE.CANNOT_BE_PAST,e=>{if(!x(e)||!i?.notPast)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!t?.isBefore(xf.now())}).test("min-date",o?.errorMessage||Eg.DATE.MIN_DATE(Sg.formatDateTime(o?.minDate,"dd/MM/uuuu","date")),e=>{if(!x(e)||!d)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!t?.isBefore(d)}).test("max-date",s?.errorMessage||Eg.DATE.MAX_DATE(Sg.formatDateTime(s?.maxDate,"dd/MM/uuuu","date")),e=>{if(!x(e)||!p)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!t?.isAfter(p)}).test("excluded-dates",u?.errorMessage||Eg.DATE.DISABLED_DATES,e=>!x(e)||!u||!u.excludedDates.includes(e)).test("within-days",c?.errorMessage||c?.withinDays&&Eg.DATE.WITHIN_DAYS(c?.withinDays),e=>!x(e)||!c||Sg.checkWithinDays(e,{...c.withinDays,dateFormat:h})).test("beyond-days",l?.errorMessage||l?.beyondDays&&Eg.DATE.BEYOND_DAYS(l?.beyondDays),e=>!x(e)||!l||Sg.checkBeyondDays(e,{...l.beyondDays,dateFormat:h})),f);const m=c?.withinDays&&Sg.calculateDisabledWithinDaysRange({...c.withinDays,dateFormat:h}),g=l?.beyondDays&&Sg.calculateDisabledBeyondDaysRange({...l.beyondDays,dateFormat:h}),A=S([d,t?.future&&xf.now().plusDays(1),i?.notPast&&xf.now(),m?.startDate,g?.startDate]),y=E([p,n?.past&&xf.now().minusDays(1),r?.notFuture&&xf.now(),m?.endDate,g?.endDate]),_=[...u?.excludedDates||[]];(A||y||_)&&v(e=>({...e,minDate:A?.format(jZ),maxDate:y?.format(jZ),disabledDates:_}))},[f]),t.useEffect(()=>{if(h)if(l)if(x(l)){const e=Sg.toLocalDateOrTime(l,h,"date");y(Sg.formatDateTime(e?.toString(),UZ,"date",Eg.DATE.INVALID))}else y(Eg.DATE.INVALID);else if(!o)if(p){const e=Sg.formatDateTime(xf.now().toString(),h,"date");g(a,e);const t=Sg.formatDateTime(xf.now().toString(),UZ,"date");y(t)}else y(void 0)},[p,l,h,o]);const E=e=>e.filter(e=>e).sort((e,t)=>e.isAfter(t)?1:-1)?.[0],S=e=>e.filter(e=>e).sort((e,t)=>e.isBefore(t)?1:-1)?.[0],x=e=>e&&e!==Eg.DATE.INVALID;return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.DateInput,{...m,..._,id:a,"data-testid":exports.TestHelper.generateId(a,"date"),label:i,errorMessage:r?.message,onBlur:s,onChange:e=>{u({target:{value:Sg.formatDateTime(e,h,"date",Eg.DATE.INVALID)}})},value:A}),e.jsx(qF,{id:a,message:d})]})},DateRangeField:n=>{const{error:r,formattedLabel:i,id:a,isDirty:o,onBlur:s,onChange:u,schema:c,value:l={from:void 0,to:void 0},warning:d}=n,{commonSchema:{validation:f},customSchema:{dateFormat:p=HZ,variant:h,...m}}=bx(c),[g,A]=t.useState(l.from||""),[y,_]=t.useState(l.to||""),[v,b]=t.useState(),{setFieldValidationConfig:E}=AP(),[S,x]=t.useState([]);_s(()=>{E(a,$I().shape({from:EM(),to:EM()}).test({name:"is-empty-string",test(e,t){x(t.schema.describe().meta?.rules??[]);const n=O(t.schema.describe().meta?.rules,"required");if(!e||!n)return!0;return!!(e.from?.length>0&&e.to?.length>0)||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.REQUIRED})}}).test({name:"is-date",test(e,t){const n=f?.find(e=>!!e&&"dateFormat"in e&&e.dateFormat);if(BF.exports.isEmpty(e?.from)||BF.exports.isEmpty(e?.to))return!0;return!(!M(e.from)||!M(e.to)||!Sg.toLocalDateOrTime(e.from,p,"date")||!Sg.toLocalDateOrTime(e.to,p,"date"))||t.createError({message:n?.errorMessage||Eg.DATE_RANGE.INVALID})}}).test({name:"number-of-days",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"numberOfDays"),r=n?.numberOfDays;if(!M(e.from)||!M(e.to)||!r)return!0;const i=Sg.toLocalDateOrTime(e.from,p,"date");return!!Sg.toLocalDateOrTime(e.to,p,"date").equals(i.plusDays(r-1))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MUST_HAVE_NUMBER_OF_DAYS(r)})}}).test({name:"future",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"future");if(!M(e.from)||!M(e.to)||!n)return!0;const r=Sg.toLocalDateOrTime(e.from,p,"date"),i=Sg.toLocalDateOrTime(e.to,p,"date");return!(!r?.isAfter(xf.now())||!i?.isAfter(xf.now()))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MUST_BE_FUTURE})}}).test({name:"past",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"past");if(!M(e.from)||!M(e.to)||!n)return!0;const r=Sg.toLocalDateOrTime(e.from,p,"date"),i=Sg.toLocalDateOrTime(e.to,p,"date");return!(!r?.isBefore(xf.now())||!i?.isBefore(xf.now()))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MUST_BE_PAST})}}).test({name:"not-future",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"notFuture");if(!M(e.from)||!M(e.to)||!n)return!0;const r=Sg.toLocalDateOrTime(e.from,p,"date"),i=Sg.toLocalDateOrTime(e.to,p,"date");return!(r?.isAfter(xf.now())||i?.isAfter(xf.now()))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.CANNOT_BE_FUTURE})}}).test({name:"not-past",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"notPast");if(!M(e.from)||!M(e.to)||!n)return!0;const r=Sg.toLocalDateOrTime(e.from,p,"date"),i=Sg.toLocalDateOrTime(e.to,p,"date");return!(r?.isBefore(xf.now())||i?.isBefore(xf.now()))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.CANNOT_BE_PAST})}}).test({name:"min-date",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"minDate"),r=n?.minDate,i=r?Sg.toLocalDateOrTime(r,p,"date"):void 0;if(!M(e.from)||!M(e.to)||!i)return!0;const a=Sg.toLocalDateOrTime(e.from,p,"date"),o=Sg.toLocalDateOrTime(e.to,p,"date");return!(a?.isBefore(i)||o?.isBefore(i))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MIN_DATE(Sg.formatDateTime(r,"dd/MM/uuuu","date"))})}}).test({name:"max-date",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"maxDate"),r=n?.maxDate,i=r?Sg.toLocalDateOrTime(r,p,"date"):void 0;if(!M(e.from)||!M(e.to)||!i)return!0;const a=Sg.toLocalDateOrTime(e.from,p,"date"),o=Sg.toLocalDateOrTime(e.to,p,"date");return!(a?.isAfter(i)||o?.isAfter(i))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MAX_DATE(Sg.formatDateTime(r,"dd/MM/uuuu","date"))})}}).test({name:"excluded-dates",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"excludedDates"),r=n?.excludedDates;if(!M(e.from)||!M(e.to)||!r)return!0;const i=Sg.toLocalDateOrTime(e.from,p,"date"),a=Sg.toLocalDateOrTime(e.to,p,"date");try{const e=r.map(e=>Sg.toLocalDateOrTime(e,p,"date"));for(const r of e)if(i.isEqual(r)||a.isEqual(r))return t.createError({message:n?.errorMessage??Eg.DATE_RANGE.DISABLED_DATES});return!0}catch{return!1}}}),f);const e=O(S,"future"),t=O(S,"past"),n=O(S,"notFuture"),r=O(S,"notPast"),i=O(S,"minDate"),o=O(S,"maxDate"),s=O(S,"excludedDates"),u=O(S,"numberOfDays"),c=Sg.toLocalDateOrTime(i?.minDate,p,"date"),l=Sg.toLocalDateOrTime(o?.maxDate,p,"date"),d=T([c,e?.future&&xf.now().plusDays(1),r?.notPast&&xf.now()]),m=C([l,t?.past&&xf.now().minusDays(1),n?.notFuture&&xf.now()]),g=s?.excludedDates,A=u?.numberOfDays;b(e=>({...e,minDate:d?.format(YZ),maxDate:m?.format(YZ),disabledDates:g,numberOfDays:A}))},[f,S]),t.useEffect(()=>{I(GZ.START)},[l.from,p,o]),t.useEffect(()=>{I(GZ.END)},[l.to,p,o]);const C=e=>e.filter(e=>e).sort((e,t)=>e.isAfter(t)?1:-1)?.[0],T=e=>e.filter(e=>e).sort((e,t)=>e.isBefore(t)?1:-1)?.[0],M=e=>e&&e!==Eg.DATE_RANGE.INVALID,I=e=>{const t=e===GZ.START?l.from:l.to,n=e===GZ.START?A:_;if(p)if(t)if(M(t)){const e=Sg.toLocalDateOrTime(t,p,"date");n(Sg.formatDateTime(e?.toString(),HZ,"date",Eg.DATE_RANGE.INVALID))}else n(Eg.DATE_RANGE.INVALID);else o||n(void 0)},O=(e,t)=>{const n=e?.find(e=>t in e),r=f?.find(e=>!!e&&t in e);return BF.exports.isEmpty(n)?BF.exports.isEmpty(r)?void 0:r:n};return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.DateRangeInput,{...m,...v,id:a,"data-testid":exports.TestHelper.generateId(a,"date"),label:i,errorMessage:r?.message,onBlur:s,onChange:(e,t)=>{u({target:{value:{from:Sg.formatDateTime(e,p,"date",Eg.DATE_RANGE.INVALID),to:Sg.formatDateTime(t,p,"date",Eg.DATE_RANGE.INVALID)}}})},value:g,valueEnd:y,variant:h}),e.jsx(qF,{id:a,message:d})]})},get TDateRangeInputType(){return GZ},ESignatureField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,uiType:u,upload:c,validation:l,...d},value:f,warning:p}=n,[h,m]=t.useState(null),[g,A]=t.useState(0),[y,_]=t.useState(0),[v,b]=t.useState(null),{setFieldValidationConfig:E}=AP(),S=t.useRef(null),{clearErrors:x}=xe();t.useEffect(()=>{const e=l?.find(e=>"upload"in e&&e.upload);S.current=e,E(a,$I().shape({fileId:EM().required(),dataURL:EM(),fileUrl:EM(),uploadResponse:pM().nullable()}).default(void 0),l)},[l]),t.useEffect(()=>{if(_(0),M(f)){if(f.dataURL)m(f.dataURL);else if(f.fileUrl){const e=O(f.fileId,f.fileUrl);return()=>e.abort()}}else m(null)},[f]);const C=async e=>{if(!e)return m(null),_(0),A(0),b(null),void o({target:{value:null}});const t=wg();if(m(e),_(0),QS(c))o({target:{value:{fileId:t,dataURL:e}}});else try{const n=await I(t,e);o({target:{value:{fileId:t,..."base64"===c.type&&{dataURL:e},fileUrl:n?.data?.fileUrl,uploadResponse:n}}}),x(a),A(0)}catch(e){A(e=>e+1),b(null)}},M=e=>!!e,I=async(e,t)=>{b(0);const n=new FormData;if(n.append("fileId",e),c.sessionId&&n.append("sessionId",c.sessionId),"base64"===c.type)n.append("dataURL",t);else if("multipart"===c.type){const r=await exports.FileHelper.dataUrlToBlob(t),i=exports.FileHelper.blobToFile(r,{name:e,lastModified:Date.now()});n.append("file",i,e)}const r=await new Al("",void 0,void 0,!0).post(c.url,n,{headers:{"Content-Type":"base64"===c.type?"application/json":"multipart/form-data",...c.headers},onUploadProgress:e=>{const{loaded:t,total:n}=e;b(t/n)}});return b(null),r},O=(e,t)=>{const n=new AbortController;return(async()=>{try{const r=await new Al("",void 0,void 0,!1,{responseType:"blob"}).get(t,{signal:n.signal}),i=await exports.FileHelper.getType(new File([r],e)),a=new File([r],e,{type:i.mime}),o=await exports.FileHelper.fileToDataUrl(a);m(o),_(0)}catch(e){if(e instanceof el)return;_(e=>e+1)}})(),n};return e.jsxs(VZ,{children:[e.jsx(w.Form.ESignature,{...d,id:a,label:i,onChange:C,value:h,...null!==v&&{loadingProgress:v}}),(r?.message||g||y)&&null===v?g>0?e.jsxs(WZ,{children:[e.jsx(T.ExclamationCircleFillIcon,{}),e.jsxs("span",{children:[S.current?.errorMessage||Eg.ESIGNATURE.UPLOAD,e.jsx(KZ,{type:"button",onClick:()=>C(h),children:"Please try again."})]}),g>=3&&e.jsx(qZ,{type:"warning","data-testid":"upload-refresh-alert",children:"Refresh this page if you cannot upload your signature."})]}):y>0&&M(f)?e.jsxs(WZ,{children:[e.jsx(T.ExclamationCircleFillIcon,{}),e.jsxs("span",{children:["Failed to load.",e.jsx(KZ,{type:"button",onClick:()=>O(f.fileId,f.fileUrl),children:"Please try again."})]}),y>=3&&e.jsx(qZ,{type:"warning","data-testid":"load-refresh-alert",children:"Refresh this page if your signature failed to load."})]}):e.jsxs(WZ,{children:[e.jsx(T.ExclamationCircleFillIcon,{}),e.jsx("span",{children:r?.message})]}):null,e.jsx(qF,{id:a,message:p})]})},ErrorField:n=>{const{id:r,schema:{children:i}}=n,{setFieldValidationConfig:a}=AP();return t.useEffect(()=>{a(r,pM().test(()=>!1),[])},[]),i?e.jsx(jH,{children:i}):null},FileUploadInner:vU,FileUpload:t=>e.jsx(gU,{children:e.jsx(vU,{...t})}),get EFileStatus(){return exports.EFileStatus},HiddenField:n=>{const{id:r,name:i,onBlur:a,onChange:o,schema:{showIf:s,uiType:u,validation:c,valueType:l,value:d,...f},value:p}=n,{setFieldValidationConfig:h}=AP(),{setValue:m}=xe();return t.useEffect(()=>{let e;switch(l){case"null":e=pM();break;case"number":e=wM();break;case"boolean":e=mM();break;default:e=EM()}h(r,e,c)},[c,l]),t.useEffect(()=>{"null"===l&&null!==p?m(r,null):ew(d)||p===d||m(r,d)},[m,r,l,d,p]),e.jsx("input",{onBlur:a,onChange:o,...f,type:"hidden",id:r,"data-testid":r,name:i,value:d??p??""})},HistogramSlider:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,bins:u,interval:c,validation:l,disabled:d,readOnly:f,className:p,ariaLabels:h,customOptions:m},value:g,warning:A}=n,{resetField:y}=xe(),[_,v]=t.useState(void 0),{setFieldValidationConfig:b}=AP(),E=t.useMemo(()=>Math.min(...u.map(e=>e.minValue)),[u]),S=t.useMemo(()=>Math.max(...u.map(e=>e.minValue))+c,[u,c]);t.useEffect(()=>{g?v((e=>["number"==typeof e?.from?e.from:E,"number"==typeof e?.to?e.to:S])(g)):(y(a,{defaultValue:{from:E,to:S},keepDirty:!0}),v([E,S]))},[g]),t.useEffect(()=>{const e=l?.find(e=>"required"in e),t=l?.find(e=>"bin"in e&&e.bin),n=l?.find(e=>"incremental"in e&&e.incremental),r=l?.find(e=>"withinRange"in e&&e.withinRange);b(a,$I({from:wM(),to:wM()}).test("is-required",e?.errorMessage||Eg.COMMON.REQUIRED_OPTIONS,t=>!t||!e||!ew(t.from)&&!ew(t.to)).test("is-bin",t?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...u.map(e=>e.minValue));return Number.isInteger((t-r)/c)&&Number.isInteger((n-r)/c)}).test("is-incremental",n?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>!e||"number"!=typeof e.from||"number"!=typeof e.to||e.from<e.to).test("is-within-range",r?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...u.map(e=>e.minValue)),i=Math.max(...u.map(e=>e.minValue))+c;return!(t<r||n>i)}),l)},[l,u,c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.HistogramSlider,{...m,id:a,"data-testid":exports.TestHelper.generateId(a,"histogram-slider"),label:i,errorMessage:r?.message,onChangeEnd:e=>{const[t,n]=e;o({target:{value:{from:t,to:n}}})},value:_,bins:u,interval:c,disabled:d,readOnly:f,className:p,ariaLabels:h}),e.jsx(qF,{id:a,message:A})]})},ImageUploadInner:gH,ImageUpload:t=>e.jsx(EU,{children:e.jsx(gH,{...t})}),ACCEPTED_FILE_TYPES:wU,get EImageStatus(){return exports.EImageStatus},LocationField:n=>{const{error:r,formattedLabel:i,id:o,schema:{className:s="location",mapApi:u,disabled:c,gettingCurrentLocationFetchMessage:l,interactiveMapPinIconUrl:d,label:f,locationInputPlaceholder:p,locationListTitle:h,locationModalStyles:m,mapBannerText:g,mapPanZoom:A,mustHavePostalCode:y,readOnly:_,staticMapPinColor:v,validation:b,hasExplicitEdit:E,locationSelectionMode:S="default",disableSearch:w,addressFieldPlaceholder:x,searchBarIcon:C,bufferRadius:T,pinsOnlyIndicateCurrentLocation:M,legendItems:I,defaultAddress:O},value:D,warning:N}=n,[L,k]=t.useState(!1),{setValue:R}=xe(),{setFieldValidationConfig:F}=AP(),{dispatchFieldEvent:$,addFieldEventListener:P,removeFieldEventListener:z}=v$();t.useEffect(()=>(P("show-location-modal",o,U),$("show-location-modal-ready",o),()=>{z("show-location-modal",o,U)}),[]),t.useEffect(()=>{const e=b?.find(e=>"required"in e),t=b?.find(e=>"postalCode"in e);F(o,$I({address:EM(),blockNo:EM(),building:EM(),lat:wM(),lng:wM(),postalCode:EM(),roadName:EM(),x:wM(),y:wM()}).test("is-required",e?.errorMessage||Eg.COMMON.FIELD_REQUIRED,t=>!e?.required||!!t&&!!t.lat&&!!t.lng).test("must-have-postal-code",t?.errorMessage||Eg.LOCATION.MUST_HAVE_POSTAL_CODE,t=>!e||!y||exports.LocationHelper.hasGotAddressValue(t.postalCode)),b)},[b]);const B=(e,t=!0)=>{R(o,e,{shouldDirty:t})},Z=()=>{_||c||(k(!0),$("show-location-modal",o))},U=()=>{k(!0)};return e.jsxs("div",{id:o,"data-testid":exports.TestHelper.generateId(o),className:s,children:[e.jsx(wH,{id:o,label:i,className:s,locationInputPlaceholder:p,onChange:e=>e.currentTarget.blur(),onFocus:Z,value:D?.address||"",errorMessage:r?.message,disabled:"explicit"===E&&!!D?.address||c,readOnly:_}),E&&D?.address&&e.jsx(a.Button.Default,{id:exports.TestHelper.generateId(o,"edit-button"),"data-testid":exports.TestHelper.generateId(o,"edit-button"),styleType:"secondary",onClick:()=>{!$("click-edit-button",o)||k(!0)},type:"button",children:"Edit"}),!!D?.lat&&!!D?.lng&&e.jsx(KF,{id:o,className:`${s}-static-map`,lat:D.lat,lng:D.lng,staticMapPinColor:v,onClick:Z,disabled:c}),e.jsx(t.Suspense,{fallback:null,children:xH&&e.jsx(xH,{id:o,className:s,showLocationModal:L,onClose:()=>{k(!1),$("hide-location-modal",o)},formValues:D,onConfirm:B,updateFormValues:B,mapPanZoom:A,mapApi:u,interactiveMapPinIconUrl:d,gettingCurrentLocationFetchMessage:l,mustHavePostalCode:y,locationModalStyles:m,locationListTitle:h,mapBannerText:g,locationSelectionMode:S,disableSearch:w,addressFieldPlaceholder:x,searchBarIcon:C,bufferRadius:T,pinsOnlyIndicateCurrentLocation:M,legendItems:I,defaultAddress:O})}),e.jsx(qF,{id:o,message:N})]})},GeolocationPositionErrorWrapper:CH,MaskedField:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,value:u,schema:{label:c,uiType:l,validation:d,maskRegex:f,iconMask:p,iconUnmask:h,...m},warning:g}=n,[A,y]=t.useState(u||""),[_,v]=t.useState({}),{setFieldValidationConfig:b}=AP();t.useEffect(()=>{b(a,EM(),d);const e=d?.find(e=>"max"in e),t=d?.find(e=>"length"in e),n={..._};e?.max>0?n.maxLength=e.max:t?.length>0&&(n.maxLength=t.length),v(n)},[d]),t.useEffect(()=>{u!==A&&y(u||"")},[u]);const E=t=>{if(!t)return;const n=Y[t];return e.jsx(n,{"data-testid":t})};return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.MaskedInput,{...m,..._,id:a,"data-testid":exports.TestHelper.generateId(a,l),label:i,onBlur:o,onChange:e=>{s(e)},value:A,errorMessage:r?.message,maskRegex:(()=>{if(f)try{const e=f.match(/\/(.*)\/([a-z]+)?/);return new RegExp(e[1],e[2])}catch(e){console.warn(`invalid regex pattern: ${f}`)}})(),iconMask:E(p),iconUnmask:E(h)}),e.jsx(qF,{id:a,message:g})]})},MultiSelect:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:u,value:c,warning:l}=n,{commonSchema:{validation:d},customSchema:{options:f=[],...p}}=bx(u),{setValue:h}=xe(),[m,g]=t.useState(c||[]),{setFieldValidationConfig:A}=AP();t.useEffect(()=>{const e=d?.find(e=>"required"in e);A(a,zI().of(EM()).test("is-empty-array",e?.errorMessage||Eg.COMMON.REQUIRED_OPTION,t=>!t||!e?.required||t.length>0),d)},[d]),vs(()=>{const e=c?.filter(e=>f.find(t=>t.value===e));h(a,e)},[f]),t.useEffect(()=>{g(c||[])},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.MultiSelect,{...p,id:a,"data-testid":exports.TestHelper.generateId(a),label:i,options:f,onBlur:o,onSelectOptions:e=>{const t=e.map(e=>e.value);s({target:{value:t}})},selectedOptions:f.filter(e=>m.includes(e.value)),valueExtractor:e=>e.value,listExtractor:e=>e.label,errorMessage:r?.message}),e.jsx(qF,{id:a,message:l})]})},OtpVerificationField:n=>{const{error:r,id:i,value:a,formattedLabel:o,onChange:s,warning:u,schema:{validation:c,request:l,verification:d,withPrefix:f,verifyOtpCountdownTimer:p,prefixSeparator:h,type:m,...g}}=n,[A,y]=t.useState(a?.otpCode||""),[_,v]=t.useState(a?.otpPrefix),b=t.useRef(a?.transactionId),E=t.useRef(-1),S=t.useRef(-1),x=a?.state||"default",C=a?.contact||"",T={number:"phone-number"===m?C:"",countryCode:"+65"},M=c?.find(e=>"otp-type"in e),I=c?.find(e=>"required"in e),{setFieldValidationConfig:O}=AP(),{formState:D,setError:N,clearErrors:L}=xe(),{submitCount:k}=D;t.useEffect(()=>{O(i,$I().test(TH.IS_OTP_VERIFIED,I?.errorMessage||F(),e=>!I?.required||"verified"===e?.state),c)},[c,x]);const R=async()=>{const e=M?.["otp-type"]??void 0;if("email"===e&&(t=C,!EM().required().email().isValidSync(t)))throw N(i,{type:TH.IS_EMAIL_VALID,message:M?.errorMessage||Eg.OTP_VERIFICATION.INVALID_EMAIL}),new Error;var t;const n=`${T.countryCode}${T.number}`;if("phone-number"===e&&!(e=>ZZ.isSingaporeNumber(e))(n))throw N(i,{type:TH.IS_PHONE_NUMBER_VALID,message:M?.errorMessage||Eg.OTP_VERIFICATION.INVALID_PHONE}),new Error;const r={type:m,..."email"===m?{email:C}:{phoneNo:n},...void 0!==f&&{withPrefix:f}},a=await new Al("",void 0,void 0,!0).post(l.endpoint.url,r).catch(e=>{const t=e?.message||Eg.OTP_VERIFICATION.SEND_OTP_FAILED;throw N(i,{type:TH.SEND_OTP_FAILED,message:t}),new Error(t)}),o=a?.transactionId??a?.data?.transactionId,u=a?.prefix??a?.data?.prefix;b.current=o,u&&v(u),L(i),E.current=k,s({target:{value:{contact:"email"===e?C:T.number,otpPrefix:u??_,type:m,state:"sent"}}})},F=()=>"default"===x?"email"===m?Eg.OTP_VERIFICATION.EMAIL_VERIFICATION_REQUIRED:Eg.OTP_VERIFICATION.PHONE_VERIFICATION_REQUIRED:"sent"===x?Eg.OTP_VERIFICATION.OTP_REQUIRED:void 0,$={...g,id:i,"data-testid":exports.TestHelper.generateId(i,"otp-verification-field"),label:o,otpState:x,onOtpStateChange:e=>{"default"===e&&(y(""),v(void 0),b.current=void 0,s({target:{value:{...a,state:void 0,additionalData:void 0,otpPrefix:void 0}}}))},onSendOtp:R,onResendOtp:R,onVerifyOtp:async e=>{const t="email"===m?C:T.number,n=await new Al("",void 0,void 0,!0).post(d.endpoint.url,{transactionId:b.current,otp:e,otpPrefix:_}).catch(e=>{const t=e?.message||Eg.OTP_VERIFICATION.OTP_VERIFICATION_FAILED;throw N(i,{type:TH.OTP_VERIFICATION_FAILED,message:t}),new Error(t)});s({target:{value:{contact:t,otpPrefix:_,type:m,state:"verified",additionalData:n?.additionalData??n?.data?.additionalData}}})},sendOtpError:(()=>{if("sent"===x)return;if(r?.type===TH.IS_EMAIL_VALID||r?.type===TH.IS_PHONE_NUMBER_VALID||r?.type===TH.SEND_OTP_FAILED)return r?.message;return D.isSubmitted&&k>S.current&&r?.type===TH.IS_OTP_VERIFIED?r?.message:void 0})(),verifyOtpError:(()=>{if("sent"!==x)return;return r?.type===TH.IS_OTP_VERIFIED&&k>E.current||r?.type===TH.OTP_VERIFICATION_FAILED||r?.type===TH.API_ERROR?r?.message:void 0})(),otpValue:{value:A,..._&&{prefix:_},...h&&{prefixSeparator:h}},onOtpChange:e=>{L(i),y(e)},...void 0!==l.placeholder&&{sendOtpPlaceholder:l.placeholder},...void 0!==p&&{verifyOtpCountdownTimer:p},...void 0!==d.showThumbnail&&{showVerifyOtpThumbnail:d.showThumbnail},...void 0!==d.title&&{verifyOtpTitle:d.title},...void 0!==d.message&&{verifyOtpMessage:d.message}};return e.jsxs(e.Fragment,{children:["email"===m?e.jsx(w.Form.OtpVerification,{...$,type:"email",emailValue:C,onEmailChange:e=>{S.current=k,L(i),s({target:{value:{...a,contact:e}}})}}):e.jsx(w.Form.OtpVerification,{...$,type:"phone-number",phoneNumberValue:T,onPhoneNumberChange:e=>{S.current=k,L(i);let t=e.number;e.number||(t=""),s({target:{value:{...a,contact:t}}})},fixedCountry:!0}),e.jsx(qF,{id:i,message:u})]})},get EOtpVerificationErrorType(){return TH},NestedMultiSelect:n=>{const{schema:{label:r,validation:i,options:a=[],...o},id:s,value:u,formattedLabel:c,onChange:l,onBlur:d,error:f,warning:p}=n,{setValue:h}=xe(),{setFieldValidationConfig:m}=AP(),[g,A]=t.useState(u),[y,_]=t.useState([]),v=t.useCallback(e=>{const t=[],n=(e,r)=>{for(const i in e){const a=[...r,i],o=e[i];"string"==typeof o?t.push(a):n(o,a)}};return n(e,[]),t},[]);t.useEffect(()=>{const e=i?.find(e=>"required"in e);m(s,$I().test("is-required",e?.errorMessage||Eg.COMMON.REQUIRED_OPTION,t=>!e?.required||!!t&&!!Object.keys(t).length),i)},[i]),vs(()=>{const e=(t,n)=>{const r={};for(const i of t){const{key:t,subItems:a}=i,o=n[t];if(o){const n="string"==typeof o?o:e(a||[],o);Object.keys(n).length?r[t]=n:delete r[t]}}return r},t=u?e(a,u):u;h(s,t)},[a]),t.useEffect(()=>{A(u);const e=v(u);_(e)},[v,g,u]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.NestedMultiSelect,{...o,id:s,"data-testid":exports.TestHelper.generateId(s),label:c,options:a,onSelectOptions:(e,t)=>{const n=((e,t)=>{const n={};return e.forEach((e,r)=>{e.reduce((n,i,a)=>(a===e.length-1?n[i]=t[r]:n[i]||(n[i]={}),n[i]),n)}),n})(e,t);l({target:{value:n}})},onBlur:d,selectedKeyPaths:y,errorMessage:f?.message}),e.jsx(qF,{id:s,message:p})]})},RadioButtonGroup:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:s,value:u,warning:c}=n,{commonSchema:{customOptions:l,validation:d},customSchema:{className:f,disabled:p,options:h,...m}}=bx(s),{setValue:g}=xe(),[A,y]=t.useState(u||""),{setFieldValidationConfig:_}=AP();t.useEffect(()=>{_(a,EM(),d)},[d]),_s(()=>{h.find(e=>e.value===u)||g(a,"")},[h]),t.useEffect(()=>{y(u||"")},[u]);const v=e=>{o({target:{value:e}})},b=e=>A===e,E=()=>{const e=wg();return`${a}-${e}`},S=t=>"string"==typeof t?e.jsx(zF,{inline:!0,children:t}):e.jsx(jH,{children:t});return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.CustomField,{id:a,label:i,errorMessage:r?.message,children:e.jsx("div",{role:"radiogroup",tabIndex:0,children:(()=>{switch(l?.styleType){case"toggle":return h.length>0&&"toggle"===l.styleType&&e.jsx(LH,{className:f?`${f} ${f}-radio-container`:void 0,$layoutType:l?.layoutType??"horizontal",children:h.map((n,i)=>{const o=E();return t.createElement(kH,{...m,key:i,type:"radio",id:o,className:f?`${f}-radio`:void 0,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:p??n.disabled,focusableWhenDisabled:p,name:o,indicator:l?.indicator,styleType:!1===l?.border?"no-border":"default",checked:b(n.value),onChange:()=>v(n.value),error:!!r?.message,compositeSection:n.children?{children:e.jsx(jH,{children:n.children}),collapsible:!1}:null,subLabel:!!n.subLabel&&S(n.subLabel)},S(n.label))})});case"image-button":return h.length>0&&e.jsx(NH,{className:f?`${f} ${f}-radio-container`:void 0,children:h.map((e,n)=>{const i=E();return t.createElement(OH,{...m,type:"button",key:n,id:i,className:f?`${f}-radio`:void 0,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:p??e.disabled,focusableWhenDisabled:p,name:i,selected:b(e.value),onClick:()=>v(e.value),imgSrc:e.imgSrc,error:!!r?.message},e.label)})});default:return h.length>0&&h.map((t,n)=>{const r=E();return e.jsxs(DH,{className:f?`${f}-radio-container`:void 0,children:[e.jsx(IH,{...m,className:f,id:r,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:p??t.disabled,focusableWhenDisabled:p,name:r,value:t.value,checked:b(t.value),onChange:()=>v(t.value)}),e.jsx(MH,{forwardedAs:"label",htmlFor:r,disabled:p??t.disabled,children:S(t.label)})]},n)})}})()})}),e.jsx(qF,{id:a,message:c})]})},RangeSelect:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:u,value:c={from:void 0,to:void 0},warning:l}=n,{commonSchema:{validation:d},customSchema:{options:f,...p}}=bx(u),{setValue:h}=xe(),[m,g]=t.useState(c.from||""),[A,y]=t.useState(c.to||""),{setFieldValidationConfig:_}=AP(),v=t.useRef(!1);t.useEffect(()=>{const e=d?.find(e=>"required"in e);_(a,$I().shape({from:EM(),to:EM()}).test("is-empty-string",e?.errorMessage||Eg.COMMON.REQUIRED_OPTIONS,t=>!t||!e?.required||t.from?.length>0&&t.to?.length>0),d)},[d]),_s(()=>{const e={};f.from.find(e=>e.value===c.from)||(e.from=""),f.to.find(e=>e.value===c.to)||(e.to=""),h(a,{...c,...e})},[f]),t.useEffect(()=>{y(c.from),g(c.to)},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.RangeSelect,{...p,id:a,onHideOptions:()=>{v.current?v.current=!1:c.from&&c.to||s({target:{value:{from:void 0,to:void 0}}})},onBlur:o,"data-testid":exports.TestHelper.generateId(a),label:i,options:f,onSelectOption:e=>{void 0===e.from&&void 0===e.to&&s({target:{value:{from:void 0,to:void 0}}}),e.from&&s({target:{value:{from:e.from.value,to:void 0}}}),e.to&&(v.current=!0,s({target:{value:{to:e.to.value,from:A}}}))},selectedOptions:{from:f.from.find(({value:e})=>e===A),to:f.to.find(({value:e})=>e===m)},valueToStringFunction:e=>`${e.from} - ${e.to}`,valueExtractor:e=>({from:e.value,to:e.value}),displayValueExtractor:e=>e.label,listExtractor:e=>e.label,errorMessage:r?.message}),e.jsx(qF,{id:a,message:l})]})},ResetButton:t=>{const{id:n,schema:r}=t,{commonSchema:{label:i},customSchema:{disabled:o,ignoreDefaultValues:s,...u}}=bx(r),{reset:c,getValues:l}=xe(),{resetFields:d}=gP(),{formSchema:{defaultValues:f}}=mP();return e.jsx(a.Button.Default,{...u,disabled:o,"data-testid":n,id:n,type:"reset",onClick:()=>{if(s){const e=l();Object.entries(e).forEach(([t,n])=>{Vr(n)?e[t]=[]:YP(n)||s$(n)?e[t]="":Pr(n)&&(e[t]={})}),c(e),d(e)}else c(),d(f)},children:i})},Select:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:u,value:c,warning:l}=n,{commonSchema:{validation:d},customSchema:{options:f,...p}}=bx(u),{setValue:h}=xe(),[m,g]=t.useState(c||""),{setFieldValidationConfig:A}=AP();t.useEffect(()=>{A(a,EM(),d)},[d]),_s(()=>{f.find(e=>e.value===c)||h(a,"")},[f]),t.useEffect(()=>{g(c||"")},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.Select,{...p,id:a,"data-testid":exports.TestHelper.generateId(a,"select"),label:i,errorMessage:r?.message,options:f,onBlur:o,onSelectOption:(e,t)=>{s({target:{value:t}})},selectedOption:f.find(({value:e})=>e===m),displayValueExtractor:e=>e.label,valueExtractor:e=>e.value,listExtractor:e=>e.label}),e.jsx(qF,{id:a,message:l})]})},SelectHistogram:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:{label:u,validation:c,disabled:l,readOnly:d,className:f,histogramSlider:p,customOptions:h},value:m,warning:g}=n,{bins:A,interval:y,..._}=p,{resetField:v}=xe(),[b,E]=t.useState([0,0]),{setFieldValidationConfig:S}=AP();t.useEffect(()=>{if(m)E([m.from,m.to]);else{const e=Math.min(...A.map(e=>e.minValue)),t=Math.max(...A.map(e=>e.minValue))+y;v(a,{defaultValue:{from:e,to:t},keepDirty:!0}),E([e,t])}},[m]),t.useEffect(()=>{const e=c?.find(e=>"required"in e),t=c?.find(e=>"bin"in e&&e.bin),n=c?.find(e=>"incremental"in e&&e.incremental),r=c?.find(e=>"withinRange"in e&&e.withinRange);S(a,$I({from:wM(),to:wM()}).test("is-required",e?.errorMessage||Eg.COMMON.REQUIRED_OPTIONS,t=>!t||!e||!ew(t.from)&&!ew(t.to)).test("is-bin",t?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...A.map(e=>e.minValue));return Number.isInteger((t-r)/y)&&Number.isInteger((n-r)/y)}).test("is-incremental",n?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>!e||"number"!=typeof e.from||"number"!=typeof e.to||e.from<e.to).test("is-within-range",r?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...A.map(e=>e.minValue)),i=Math.max(...A.map(e=>e.minValue))+y;return!(t<r||n>i)}),c)},[c,A,y]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.SelectHistogram,{id:a,"data-testid":exports.TestHelper.generateId(a,"select-histogram"),label:i,errorMessage:r?.message,onBlur:o,onChangeEnd:e=>{const[t,n]=e;s({target:{value:{from:t,to:n}}})},disabled:l,readOnly:d,className:f,rangeLabelPrefix:h?.rangeLabelPrefix,rangeLabelSuffix:h?.rangeLabelSuffix,value:b,histogramSlider:{bins:A,interval:y,..._}}),e.jsx(qF,{id:a,message:g})]})},Slider:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,customOptions:u,validation:c,disabled:l,readOnly:d,className:f,ariaLabel:p},value:h,warning:m}=n,[g,A]=t.useState(),{setFieldValidationConfig:y}=AP();t.useEffect(()=>{const e=c?.find(e=>"min"in e),t=c?.find(e=>"max"in e),n=c?.find(e=>"increment"in e);y(a,wM().test("is-incremental",n?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,t=>{if("number"!=typeof t||!n)return!0;const r=n.increment,i=(e?.min??0)-t;return Number.isInteger(i/r)}),c),(e||t||n)&&A({min:e?.min,max:t?.max,step:n?.increment})},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.Slider,{...u,...g,id:a,"data-testid":exports.TestHelper.generateId(a,"slider"),label:i,errorMessage:r?.message,onChangeEnd:e=>{o({target:{value:e}})},value:h,disabled:l,readOnly:d,className:f,ariaLabel:p}),e.jsx(qF,{id:a,message:m})]})},SubmitButton:n=>{const{id:r,schema:i}=n,{commonSchema:{label:o},customSchema:{disabled:s,...u}}=bx(i),{submitHandler:c,wrapInForm:l}=yP(),{setFieldValidationConfig:d}=AP(),{hardValidationSchema:f}=bP(),p=Fe({disabled:"invalid-form"!==s}),[h,m]=t.useState(!0===s);t.useEffect(()=>{d(r,pM())},[]),t.useEffect(()=>{"invalid-form"!==s&&m(!!s)},[s]),_s(()=>{(async()=>{if("invalid-form"===s)try{await f.validate(p),m(!1)}catch(e){m(!0)}})()},[p,f]);return e.jsx(a.Button.Default,{...u,disabled:h,"data-testid":r,id:r,onClick:e=>{l||(e.preventDefault(),c?.())},type:"submit",children:o})},Switch:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:s,value:u,warning:c}=n,{commonSchema:{customOptions:l,label:d,validation:f},customSchema:{className:p,disabled:h,...m}}=bx(s),[g,A]=t.useState(u||void 0),{setFieldValidationConfig:y}=AP();t.useEffect(()=>{y(a,mM().strict(),f)},[f]),t.useEffect(()=>{A(u)},[u]);const _=e=>{o({target:{value:e}})},v=e=>g===e,b=e=>`${a}-${e}`;return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.CustomField,{id:a,label:i,errorMessage:r?.message,children:e.jsxs(RH,{className:p,role:"radiogroup","aria-label":"string"==typeof d?d:PF(d.mainLabel,{allowedTags:[]}),children:[e.jsx(C.Toggle,{...m,type:"yes",id:b("yes"),"data-testid":exports.TestHelper.generateId(a,"switch-yes"),disabled:h,styleType:!1===l?.border?"no-border":"default",checked:v(!0),onChange:()=>_(!0),indicator:!0,name:a,error:!!r?.message,children:"Yes"}),e.jsx(C.Toggle,{...m,type:"no",id:b("no"),"data-testid":exports.TestHelper.generateId(a,"switch-no"),disabled:h,styleType:!1===l?.border?"no-border":"default",checked:v(!1),onChange:()=>_(!1),indicator:!0,name:a,error:!!r?.message,children:"No"})]})}),e.jsx(qF,{id:a,message:c})]})},TextField:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,value:u,schema:c,warning:l}=n,{commonSchema:{customOptions:d,uiType:f,validation:p},customSchema:{inputMode:h,...m}}=bx(c),[g,A]=t.useState(u??""),[y,_]=t.useState({}),{setFieldValidationConfig:v}=AP(),b=t.useRef(null),E=t.useRef(0);t.useEffect(()=>{switch(f){case"numeric-field":{const e=p?.find(e=>"decimals"in e);let t=wM();void 0!==e?.decimals&&(t=t.test("decimals",e.errorMessage||Eg.NUMERIC.INVALID_DECIMALS(e.decimals),t=>{if(null==t)return!0;const n=String(t).split(".")[1];return!n||n.length<=e.decimals})),v(a,t,p);const n=p?.find(e=>"min"in e),r=p?.find(e=>"max"in e),i={...y};n?.min>0&&(i.min=n.min),r?.max>0&&(i.max=r.max),_(i);break}case"email-field":{const e=p?.find(e=>e.email);v(a,EM().email(e?.errorMessage||Eg.EMAIL.INVALID),p);const t=p?.find(e=>"max"in e),n=p?.find(e=>"length"in e),r={...y};t?.max>0?r.maxLength=t.max:n?.length>0&&(r.maxLength=n.length),_(r);break}case"text-field":{v(a,EM(),p);const e=p?.find(e=>"max"in e),t=p?.find(e=>"length"in e),n={...y};e?.max>0?n.maxLength=e.max:t?.length>0&&(n.maxLength=t.length),_(n);break}}},[p]),t.useEffect(()=>{u!==g&&A(u??"")},[u]),t.useEffect(()=>{"text-field"===f&&document?.activeElement===b.current&&b.current.selectionEnd!==E.current&&b.current.setSelectionRange(E.current,E.current)},[g]),t.useEffect(()=>{"text-field"===c.uiType&&"uppercase"===c.customOptions?.textTransform&&g&&A(e=>e?.toString().toUpperCase())},["text-field"===c.uiType&&c.customOptions?.textTransform]);const S=()=>!!d?.addOn,x=S()?w.Form.InputGroup:w.Form.Input;return e.jsxs(e.Fragment,{children:[e.jsx(x,{...m,...y,id:a,"data-testid":exports.TestHelper.generateId(a,f),ref:b,type:(()=>{switch(f){case"numeric-field":return"number";case"email-field":return"email";default:return"text"}})(),label:i,onBlur:o,onPaste:e=>{const t=e.clipboardData.getData("text");(d?.preventCopyAndPaste||"numeric-field"===f&&/e/i.test(t))&&e.preventDefault()},onDrop:e=>d?.preventDragAndDrop?e.preventDefault():null,inputMode:(()=>{if(h)return h;switch(f){case"numeric-field":return"numeric";case"email-field":return"email";case"text-field":return"text";default:return"none"}})(),onChange:e=>{if("numeric-field"===f){const t=p?.find(e=>"decimals"in e);if(void 0!==t?.decimals){const[n,r]=e.target.value.split(".");r&&r.length>t.decimals&&(e.target.value=`${n}.${r.slice(0,t.decimals)}`)}const n=!isNaN(parseFloat(e.target.value))?+e.target.value:void 0;return s({target:{value:n}}),void A(n??"")}"text-field"===c.uiType?(E.current=e.target.selectionEnd,"uppercase"===c.customOptions?.textTransform&&(e.target.value=e.target.value.toUpperCase()),s(e)):s(e),A(e.target.value)},onKeyDown:e=>{"numeric-field"===f&&"e"===e.key.toLowerCase()&&e.preventDefault()},value:g,errorMessage:r?.message,addon:(()=>{if(S()){if("label"===d.addOn.type)return{type:"label",position:d.addOn.position,attributes:{value:d.addOn.value}};if("icon"===d.addOn.type){const{icon:t,position:n,color:r}=d.addOn,i=Y[t];return{type:"custom",position:n,attributes:{children:e.jsx(FH,{as:i,$color:r})}}}}})()}),e.jsx(qF,{id:a,message:l})]})},Textarea:kz,TimeField:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:u,value:c,warning:l}=n,{commonSchema:{validation:d},customSchema:{is24HourFormat:f,placeholder:p,useCurrentTime:h,...m}}=bx(u),[g,A]=t.useState(c||""),{setFieldValidationConfig:y}=AP();t.useEffect(()=>{y(a,EM(),d)},[d]),t.useEffect(()=>{if(h&&!c){const e=f?"H:mm":"h:mma";setTimeout(()=>_(e))}else A(c)},[c,h,f]);const _=e=>{const t=Sg.formatDateTime(Mf.now().toString().toUpperCase(),e,"time");A(t),s({target:{value:t}})};return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.Timepicker,{...m,id:a,"data-testid":exports.TestHelper.generateId(a,"time"),label:i,errorMessage:r?.message,value:g,placeholder:p,format:f?"24hr":"12hr",onBlur:o,onChange:e=>{s({target:{value:e}})}}),e.jsx(qF,{id:a,message:l})]})},get EFieldType(){return exports.EFieldType},UnitNumberField:n=>{const{formattedLabel:r,error:i,id:a,onBlur:o,onChange:s,schema:u,value:c,warning:l}=n,{commonSchema:{validation:d},customSchema:f}=bx(u),[p,h]=t.useState(c||""),{setFieldValidationConfig:m}=AP();t.useEffect(()=>{const e=d?.find(e=>"unitNumberFormat"in e);m(a,EM().matches(/^([a-zA-Z0-9]{1,3}-[a-zA-Z0-9]{1,5})$/,{excludeEmptyString:!0,message:e?.errorMessage||Eg.UNIT_NUMBER.INVALID}),d)},[d]),t.useEffect(()=>{h(c||"")},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.UnitNumberInput,{...f,id:a,"data-testid":exports.TestHelper.generateId(a,"unit-number"),label:r,value:p,onBlur:o,onChange:e=>{s({target:{value:e}})},errorMessage:i?.message}),e.jsx(qF,{id:a,message:l})]})}});const zH=({id:t,children:n,childSchema:r})=>{if("columns"in r){if((i=r.columns)&&("xxs"in i||"xs"in i||"sm"in i||"md"in i||"lg"in i||"xl"in i||"xxl"in i)){const{xxs:i,xs:a,sm:o,md:s,lg:u,xl:c,xxl:d,...f}=r.columns||{};return e.jsx(l.Layout.ColDiv,{"data-testid":exports.TestHelper.generateId(t,"grid_item"),xlCols:c,lgCols:u,mdCols:s,smCols:o,xsCols:a,xxlCols:d,xxsCols:i,...f,children:n})}const{desktop:a,tablet:o,mobile:s,...u}=r.columns||{};return e.jsx(B.V2_Layout.ColDiv,{"data-testid":exports.TestHelper.generateId(t,"grid_item"),desktopCols:a??12,tabletCols:o,mobileCols:s,...u,children:n})}var i;return e.jsx(e.Fragment,{children:n})},BH=({id:n,renderRules:r,children:i,schema:a})=>{const{formValidationConfig:o,removeFieldValidationConfig:s}=AP(),[u,c]=t.useState(void 0),{formValues:l}=gP(),{unregister:d}=xe();vs(()=>{if(QS(r))return;const e=f();if(e!==u){if(!e){[n,...p(a)].forEach(e=>{s(e),d(e)})}c(e)}},[o,l,r]);const f=()=>{if(QS(r))return!0;let e=!1;return r.forEach(t=>{if(!e){const n={};Object.entries(t).forEach(([e,t])=>{if(t.find(e=>e.shown)&&!o?.[e])return void(n[e]={schema:pM().test("shown",()=>!1),validationRules:[]});const r=o?.[e]?.schema.type;if(r){let i=XF.mapSchemaType(r);"number"===r&&(i=i.nullable().transform((e,t)=>!isNaN(parseFloat(t?.toString()))?+t:void 0)),n[e]={schema:i,validationRules:t}}});const r=XF.buildSchema(n);try{r.validateSync(l),e=!0}catch(e){}}}),e},p=e=>{const t=e.children,r=[];switch(e.uiType){case"chips":r.push(n+"-textarea");break;case"checkbox":case"radio":e.options.forEach(e=>{const t=e.children;!QS(t)&&ln(t)&&Object.entries(t).forEach(([e,t])=>{r.push(e),t.children&&r.push(...p(t.children))})})}return QS(t)||!ln(t)||Object.entries(t).forEach(([e,t])=>{r.push(e),t.children&&r.push(...p(t.children))}),r};return QS(r)||u?e.jsx(e.Fragment,{children:i}):null},ZH=Object.keys(exports.EFieldType),UH=Object.keys(exports.EElementType),jH=n=>{const{id:r,schema:i,children:a}=n,{showIf:o,uiType:s,children:u,...c}=i||{},{warnings:l}=bP(),[d,f]=t.useState(null),{control:p}=xe(),{getCustomComponent:h}=y$(),{formSchema:{overrides:m},overrideSchema:g}=mP();_$(()=>{const n=g(u||a,m);if("object"==typeof n){const r=[];Object.keys(n).forEach(i=>{const a=n[i];if(QS(a)||"object"!=typeof a)return;let o=e.jsx(t.Fragment,{children:Eg.GENERIC.UNSUPPORTED},i);if("referenceKey"in a){const n=a.referenceKey.toUpperCase();o=h(a.referenceKey)||tz[ez[n]]?A(i,a)(y):tz[XP[n]]?A(i,a)(_):e.jsx(t.Fragment,{},i)}else"uiType"in a&&(ZH.includes(a.uiType.toUpperCase())?o=A(i,a)(y):UH.includes(a.uiType.toUpperCase())&&(o=A(i,a)(_)));r.push(o)}),f(r)}else f("string"==typeof n?n:Eg.GENERIC.UNSUPPORTED)},[u||a,m,p,l,h]);const A=(t,n)=>r=>e.jsx(BH,{id:t,...n&&"showIf"in n&&{renderRules:n.showIf},schema:n,children:r(t,n)},t),y=(t,n)=>{let r;return"uiType"in n?r=PH[exports.EFieldType[n.uiType?.toUpperCase()]]:"referenceKey"in n&&(r=tz[ez[n.referenceKey?.toUpperCase()]]||h(n.referenceKey)),r?e.jsx(zH,{id:t,childSchema:n,children:e.jsx(Mz,{id:t,schema:n,Field:r,warning:l?.[t]})}):null},_=(t,n)=>{let r;return"uiType"in n?r=kP[exports.EElementType[n.uiType?.toUpperCase()]]||jH:"referenceKey"in n&&(r=tz[XP[n.referenceKey?.toUpperCase()]]),e.jsx(zH,{id:t,childSchema:n,children:e.jsx(r,{schema:n,id:t})})},v=s;return v?e.jsx(v,{...c,id:r,"data-testid":exports.TestHelper.generateId(r,s),children:d}):e.jsx(e.Fragment,{children:d})},GH=H.default(l.Layout.Container)`
1134
+ `;var $H;exports.EFieldType=void 0,($H=exports.EFieldType||(exports.EFieldType={})).BUTTON="ButtonField",$H.CHECKBOX="CheckboxGroup",$H.CHIPS="Chips",$H["CONTACT-FIELD"]="ContactField",$H["DATE-FIELD"]="DateField",$H["DATE-RANGE-FIELD"]="DateRangeField",$H["EMAIL-FIELD"]="TextField",$H["E-SIGNATURE-FIELD"]="ESignatureField",$H["ERROR-FIELD"]="ErrorField",$H["FILE-UPLOAD"]="FileUpload",$H["HIDDEN-FIELD"]="HiddenField",$H["HISTOGRAM-SLIDER"]="HistogramSlider",$H["IMAGE-UPLOAD"]="ImageUpload",$H["LOCATION-FIELD"]="LocationField",$H["MASKED-FIELD"]="MaskedField",$H["MULTI-SELECT"]="MultiSelect",$H["NESTED-MULTI-SELECT"]="NestedMultiSelect",$H["RANGE-SELECT"]="RangeSelect",$H["NUMERIC-FIELD"]="TextField",$H["OTP-VERIFICATION-FIELD"]="OtpVerificationField",$H.RADIO="RadioButtonGroup",$H.RESET="ResetButton",$H.SELECT="Select",$H["SELECT-HISTOGRAM"]="SelectHistogram",$H.SLIDER="Slider",$H.SUBMIT="SubmitButton",$H.SWITCH="Switch",$H.TEXTAREA="Textarea",$H["TEXT-FIELD"]="TextField",$H["TIME-FIELD"]="TimeField",$H["UNIT-NUMBER-FIELD"]="UnitNumberField";var PH=Object.freeze({__proto__:null,ButtonField:t=>{const{id:n,schema:r}=t,{commonSchema:{label:i},customSchema:{endIcon:a,href:o,startIcon:s,target:u,...c}}=bx(r),{dispatchFieldEvent:l}=v$(),d=t=>{if(!t)return null;const n=Y[t];return e.jsx(n,{})};return e.jsxs(nz,{type:"button",...c,onClick:e=>{l("click",n,e),o&&(e=>{try{return!!new URL(e)}catch{return!1}})(o)&&(u?window.open(o,u,"noopener noreferrer"):window.location.href=o)},children:[d(s),i,d(a)]})},CheckboxGroup:n=>{const{formattedLabel:r,error:i,id:a,onChange:o,schema:s,value:u,warning:c}=n,{commonSchema:{customOptions:l,validation:d},customSchema:{className:f,disabled:p,options:h,...m}}=bx(s),{setValue:g}=xe(),[A,y]=t.useState(u||[]),{setFieldValidationConfig:_}=AP();t.useEffect(()=>{const e=d?.find(e=>"required"in e);_(a,zI().of(EM()).test("is-empty-array",e?.errorMessage||Eg.COMMON.REQUIRED_OPTION,t=>!t||!e?.required||t.length>0),d)},[d]),_s(()=>{const e=u?.filter(e=>h.find(t=>t.value===e));g(a,e)},[h]),t.useEffect(()=>{y(u||[])},[u]);const v=(e,t)=>{const n=h.find(e=>!0===e.none);let r=[...A];t?r=r.includes(e)?[]:[e]:r.includes(e)?r=Ez(r,e,n?.value):(r.push(e),r=Ez(r,n?.value)),o({target:{value:r}})},b=e=>A.includes(e),E=()=>{const e=wg();return`${a}-${e}`},S=t=>"string"==typeof t?e.jsx(zF,{inline:!0,children:t}):e.jsx(jH,{children:t});return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.CustomField,{id:a,label:r,errorMessage:i?.message,children:e.jsx("div",{role:"group",children:"toggle"===l?.styleType?h.length>0&&"toggle"===l.styleType&&e.jsx(Cz,{$layoutType:l?.layoutType??"horizontal",className:f?`${f}-checkbox-container`:void 0,children:h.map((t,n)=>{const r=E();return e.jsx(Tz,{type:"checkbox","data-testid":exports.TestHelper.generateId(a,"toggle"),id:r,className:f,disabled:p??t.disabled,focusableWhenDisabled:p,name:r,indicator:l?.indicator,styleType:!1===l?.border?"no-border":"default",checked:b(t.value),onChange:()=>v(t.value,t.none),error:!!i?.message,compositeSection:t.children?{children:e.jsx(jH,{children:t.children}),collapsible:!1}:null,subLabel:!!t.subLabel&&S(t.subLabel),children:S(t.label)},n)})}):h.length>0&&h.map((t,n)=>{const r=E();return e.jsxs(xz,{className:f?`${f}-checkbox-container`:void 0,children:[e.jsx(wz,{...m,"data-testid":exports.TestHelper.generateId(a,"checkbox"),id:r,className:f,disabled:p??t.disabled,name:r,value:t.value,focusableWhenDisabled:p,checked:b(t.value),onChange:()=>v(t.value)}),e.jsx(Sz,{forwardedAs:"label",htmlFor:r,disabled:p??t.disabled,children:S(t.label)})]},n)})})}),e.jsx(qF,{id:a,message:c})]})},Chips:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:s,value:u,warning:c}=n,{commonSchema:{validation:l},customSchema:{disabled:d,options:f,textarea:p,...h}}=bx(s),[m,g]=t.useState(u||[]),[A,y]=t.useState(!1),[_,v]=t.useState(!0),{setValue:b,unregister:E}=xe(),{setFieldValidationConfig:S,removeFieldValidationConfig:x}=AP();t.useEffect(()=>{A||E(T())},[]),t.useEffect(()=>{const e=l?.find(e=>"required"in e),t=l?.find(e=>"max"in e),n=l?.find(e=>"length"in e);S(a,zI().of(EM()).test("is-empty-array",e?.errorMessage||Eg.COMMON.REQUIRED_OPTION,t=>!t||!e?.required||t.length>0),l),1!==t?.max&&1!==n?.length||v(!1)},[l]),_s(()=>{const e=[...f.map(e=>e.value),p?.label],t=u?.filter(t=>e.includes(t));b(a,t)},[f]),t.useEffect(()=>{u?.includes(M())?I(!0):I(),g(u||[])},[u]);const C=e=>m.includes(e),T=()=>`${a}-textarea`,M=()=>"string"==typeof p?.label?p?.label:p?.label?.mainLabel,I=(e=!1)=>{y(e),e||x(T())},O=e=>{let t=[...m];if(t.includes(e))return t=t.filter(t=>t!==e),void o({target:{value:t}});_?t.push(e):t=[e],o({target:{value:t}})};return e.jsxs(e.Fragment,{children:[e.jsxs(w.Form.CustomField,{label:i,errorMessage:r?.message,children:[e.jsxs(Rz,{"data-testid":exports.TestHelper.generateId(a,"chips"),$showTextarea:A,children:[f.map((e,n)=>t.createElement(YI,{...h,key:n,onClick:()=>O(e.value),isActive:C(e.value),disabled:d??e.disabled},e.label)),(()=>{if(!p?.label)return;const t=M();return e.jsx(YI,{...h,onClick:()=>{O(t)},isActive:C(t),children:t})})()]}),(()=>{if(!p?.label)return e.jsx(e.Fragment,{});const t=T(),n={uiType:"textarea",className:s.className?`${s.className}-textarea`:void 0,...p};return A?e.jsx(Mz,{id:t,schema:n,Field:kz}):e.jsx(e.Fragment,{})})()]}),e.jsx(qF,{id:a,message:c})]})},ContactField:n=>{const{isDirty:r,formattedLabel:i,error:a,id:o,onBlur:s,onChange:u,schema:c,value:l,warning:d}=n,{commonSchema:{validation:f},customSchema:{defaultCountry:p,disabled:h,enableSearch:m,placeholder:g,...A}}=bx(c),{resetField:y}=xe(),[_,v]=t.useState(l||""),b=vP(p),[E,S]=t.useState(p),[x]=t.useState((()=>{const e=new Map;return Fz.forEach(t=>{const[n,...r]=t,i=r.find(e=>/^\d+$/.test(e));e.set(n,i)}),e})()),[C,T]=t.useState(),[M,I]=t.useState(),[O,D]=t.useState(void 0),{setFieldValidationConfig:N}=AP();t.useEffect(()=>{const e=f?.find(e=>"contactNumber"in e),t=e?.contactNumber?.singaporeNumber,n=e?.contactNumber?.internationalNumber,r=e?.errorMessage;x.has(n)?(S(n),D(!0)):["default","house","mobile"].includes(t)?(S("Singapore"),D(!0)):D(!1),I(t),N(o,EM().test("singaporeNumber",r||Eg.CONTACT.INVALID_SINGAPORE_NUMBER,e=>!e||!t||ZZ.isSingaporeNumber(e,t)).test("internationalNumber",r||Eg.CONTACT.INVALID_INTERNATIONAL_NUMBER,e=>!(e&&!t&&n)||ZZ.isInternationalNumber(C?.name,e)),f)},[f,C]),t.useEffect(()=>{const e=E||"Singapore";T({name:e,prefix:x.get(e)})},[E,x]),t.useEffect(()=>{const e=f?.find(e=>"contactNumber"in e),t=e?.contactNumber?.singaporeNumber,n=e?.contactNumber?.internationalNumber;!p||b===p||x.has(n)||["default","house","mobile"].includes(t)||S(p)},[f,p]),t.useEffect(()=>{if(void 0!==O&&!r){const{prefix:e,number:t}=ZZ.getParsedPhoneNumber(l||""),n=e.replace(/\+/g,""),r=(e=>{for(const[t,,,n]of Fz)if(t===e)return n})(E||"Singapore");if(!O||O&&n===r){const n=L({countryCode:e||r,number:t});y(o,{defaultValue:n,keepDirty:!0})}else{const e=L({countryCode:"",number:""});y(o,{defaultValue:e,keepDirty:!0})}}},[l,r,O,E]);const L=e=>{const{countryCode:t,number:n}=e,r=t.replace(/\+/g,"");if(!1===O&&r!==C?.prefix){const e=((e,t)=>{for(const[n,r]of t.entries())if(r===e)return n})(r,x);e&&T({name:e,prefix:t})}return v(n),ZZ.formatPhoneNumber(e.countryCode,e.number)||""};return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.PhoneNumberInput,{...A,"data-testid":exports.TestHelper.generateId(o,"contact"),disabled:h,enableSearch:m,errorMessage:a?.message,fixedCountry:O,id:o,label:i,placeholder:(()=>{if(g)return g;if(M){return`Enter ${"mobile"===M?"mobile":"home"} number`}return"Enter contact number"})(),value:(()=>{if(!C)return;const{prefix:e}=C;return{number:_,countryCode:e}})(),onBlur:s,onChange:e=>{const t=L(e);u({target:{value:t}})}}),e.jsx(qF,{id:o,message:d})]})},DateField:n=>{const{error:r,formattedLabel:i,id:a,isDirty:o,onBlur:s,onChange:u,schema:c,value:l,warning:d}=n,{commonSchema:{validation:f},customSchema:{useCurrentDate:p,dateFormat:h=UZ,...m}}=bx(c),{setValue:g}=xe(),[A,y]=t.useState(l||""),[_,v]=t.useState(),{setFieldValidationConfig:b}=AP();t.useEffect(()=>{const e=f?.find(e=>"dateFormat"in e&&e.dateFormat),t=f?.find(e=>"future"in e),n=f?.find(e=>"past"in e),r=f?.find(e=>"notFuture"in e),i=f?.find(e=>"notPast"in e),o=f?.find(e=>"minDate"in e),s=f?.find(e=>"maxDate"in e),u=f?.find(e=>"excludedDates"in e),c=f?.find(e=>"withinDays"in e),l=f?.find(e=>"beyondDays"in e),d=Sg.toLocalDateOrTime(o?.minDate,h,"date"),p=Sg.toLocalDateOrTime(s?.maxDate,h,"date");b(a,EM().test("is-date",e?.errorMessage||Eg.DATE.INVALID,e=>!e||""===e||!!x(e)&&!!Sg.toLocalDateOrTime(e,h,"date")).test("future",t?.errorMessage||Eg.DATE.MUST_BE_FUTURE,e=>{if(!x(e)||!t?.future)return!0;const n=Sg.toLocalDateOrTime(e,h,"date");return!!n?.isAfter(xf.now())}).test("past",n?.errorMessage||Eg.DATE.MUST_BE_PAST,e=>{if(!x(e)||!n?.past)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!!t?.isBefore(xf.now())}).test("not-future",r?.errorMessage||Eg.DATE.CANNOT_BE_FUTURE,e=>{if(!x(e)||!r?.notFuture)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!t?.isAfter(xf.now())}).test("not-past",i?.errorMessage||Eg.DATE.CANNOT_BE_PAST,e=>{if(!x(e)||!i?.notPast)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!t?.isBefore(xf.now())}).test("min-date",o?.errorMessage||Eg.DATE.MIN_DATE(Sg.formatDateTime(o?.minDate,"dd/MM/uuuu","date")),e=>{if(!x(e)||!d)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!t?.isBefore(d)}).test("max-date",s?.errorMessage||Eg.DATE.MAX_DATE(Sg.formatDateTime(s?.maxDate,"dd/MM/uuuu","date")),e=>{if(!x(e)||!p)return!0;const t=Sg.toLocalDateOrTime(e,h,"date");return!t?.isAfter(p)}).test("excluded-dates",u?.errorMessage||Eg.DATE.DISABLED_DATES,e=>!x(e)||!u||!u.excludedDates.includes(e)).test("within-days",c?.errorMessage||c?.withinDays&&Eg.DATE.WITHIN_DAYS(c?.withinDays),e=>!x(e)||!c||Sg.checkWithinDays(e,{...c.withinDays,dateFormat:h})).test("beyond-days",l?.errorMessage||l?.beyondDays&&Eg.DATE.BEYOND_DAYS(l?.beyondDays),e=>!x(e)||!l||Sg.checkBeyondDays(e,{...l.beyondDays,dateFormat:h})),f);const m=c?.withinDays&&Sg.calculateDisabledWithinDaysRange({...c.withinDays,dateFormat:h}),g=l?.beyondDays&&Sg.calculateDisabledBeyondDaysRange({...l.beyondDays,dateFormat:h}),A=S([d,t?.future&&xf.now().plusDays(1),i?.notPast&&xf.now(),m?.startDate,g?.startDate]),y=E([p,n?.past&&xf.now().minusDays(1),r?.notFuture&&xf.now(),m?.endDate,g?.endDate]),_=[...u?.excludedDates||[]];(A||y||_)&&v(e=>({...e,minDate:A?.format(jZ),maxDate:y?.format(jZ),disabledDates:_}))},[f]),t.useEffect(()=>{if(h)if(l)if(x(l)){const e=Sg.toLocalDateOrTime(l,h,"date");y(Sg.formatDateTime(e?.toString(),UZ,"date",Eg.DATE.INVALID))}else y(Eg.DATE.INVALID);else if(!o)if(p){const e=Sg.formatDateTime(xf.now().toString(),h,"date");g(a,e);const t=Sg.formatDateTime(xf.now().toString(),UZ,"date");y(t)}else y(void 0)},[p,l,h,o]);const E=e=>e.filter(e=>e).sort((e,t)=>e.isAfter(t)?1:-1)?.[0],S=e=>e.filter(e=>e).sort((e,t)=>e.isBefore(t)?1:-1)?.[0],x=e=>e&&e!==Eg.DATE.INVALID;return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.DateInput,{...m,..._,id:a,"data-testid":exports.TestHelper.generateId(a,"date"),label:i,errorMessage:r?.message,onBlur:s,onChange:e=>{u({target:{value:Sg.formatDateTime(e,h,"date",Eg.DATE.INVALID)}})},value:A}),e.jsx(qF,{id:a,message:d})]})},DateRangeField:n=>{const{error:r,formattedLabel:i,id:a,isDirty:o,onBlur:s,onChange:u,schema:c,value:l={from:void 0,to:void 0},warning:d}=n,{commonSchema:{validation:f},customSchema:{dateFormat:p=HZ,variant:h,...m}}=bx(c),[g,A]=t.useState(l.from||""),[y,_]=t.useState(l.to||""),[v,b]=t.useState(),{setFieldValidationConfig:E}=AP(),[S,x]=t.useState([]);_s(()=>{E(a,$I().shape({from:EM(),to:EM()}).test({name:"is-empty-string",test(e,t){x(t.schema.describe().meta?.rules??[]);const n=O(t.schema.describe().meta?.rules,"required");if(!e||!n)return!0;return!!(e.from?.length>0&&e.to?.length>0)||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.REQUIRED})}}).test({name:"is-date",test(e,t){const n=f?.find(e=>!!e&&"dateFormat"in e&&e.dateFormat);if(BF.exports.isEmpty(e?.from)||BF.exports.isEmpty(e?.to))return!0;return!(!M(e.from)||!M(e.to)||!Sg.toLocalDateOrTime(e.from,p,"date")||!Sg.toLocalDateOrTime(e.to,p,"date"))||t.createError({message:n?.errorMessage||Eg.DATE_RANGE.INVALID})}}).test({name:"number-of-days",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"numberOfDays"),r=n?.numberOfDays;if(!M(e.from)||!M(e.to)||!r)return!0;const i=Sg.toLocalDateOrTime(e.from,p,"date");return!!Sg.toLocalDateOrTime(e.to,p,"date").equals(i.plusDays(r-1))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MUST_HAVE_NUMBER_OF_DAYS(r)})}}).test({name:"future",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"future");if(!M(e.from)||!M(e.to)||!n)return!0;const r=Sg.toLocalDateOrTime(e.from,p,"date"),i=Sg.toLocalDateOrTime(e.to,p,"date");return!(!r?.isAfter(xf.now())||!i?.isAfter(xf.now()))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MUST_BE_FUTURE})}}).test({name:"past",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"past");if(!M(e.from)||!M(e.to)||!n)return!0;const r=Sg.toLocalDateOrTime(e.from,p,"date"),i=Sg.toLocalDateOrTime(e.to,p,"date");return!(!r?.isBefore(xf.now())||!i?.isBefore(xf.now()))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MUST_BE_PAST})}}).test({name:"not-future",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"notFuture");if(!M(e.from)||!M(e.to)||!n)return!0;const r=Sg.toLocalDateOrTime(e.from,p,"date"),i=Sg.toLocalDateOrTime(e.to,p,"date");return!(r?.isAfter(xf.now())||i?.isAfter(xf.now()))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.CANNOT_BE_FUTURE})}}).test({name:"not-past",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"notPast");if(!M(e.from)||!M(e.to)||!n)return!0;const r=Sg.toLocalDateOrTime(e.from,p,"date"),i=Sg.toLocalDateOrTime(e.to,p,"date");return!(r?.isBefore(xf.now())||i?.isBefore(xf.now()))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.CANNOT_BE_PAST})}}).test({name:"min-date",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"minDate"),r=n?.minDate,i=r?Sg.toLocalDateOrTime(r,p,"date"):void 0;if(!M(e.from)||!M(e.to)||!i)return!0;const a=Sg.toLocalDateOrTime(e.from,p,"date"),o=Sg.toLocalDateOrTime(e.to,p,"date");return!(a?.isBefore(i)||o?.isBefore(i))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MIN_DATE(Sg.formatDateTime(r,"dd/MM/uuuu","date"))})}}).test({name:"max-date",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"maxDate"),r=n?.maxDate,i=r?Sg.toLocalDateOrTime(r,p,"date"):void 0;if(!M(e.from)||!M(e.to)||!i)return!0;const a=Sg.toLocalDateOrTime(e.from,p,"date"),o=Sg.toLocalDateOrTime(e.to,p,"date");return!(a?.isAfter(i)||o?.isAfter(i))||t.createError({message:n?.errorMessage??Eg.DATE_RANGE.MAX_DATE(Sg.formatDateTime(r,"dd/MM/uuuu","date"))})}}).test({name:"excluded-dates",test(e,t){if("week"===h)return!0;const n=O(t.schema.describe().meta?.rules,"excludedDates"),r=n?.excludedDates;if(!M(e.from)||!M(e.to)||!r)return!0;const i=Sg.toLocalDateOrTime(e.from,p,"date"),a=Sg.toLocalDateOrTime(e.to,p,"date");try{const e=r.map(e=>Sg.toLocalDateOrTime(e,p,"date"));for(const r of e)if(i.isEqual(r)||a.isEqual(r))return t.createError({message:n?.errorMessage??Eg.DATE_RANGE.DISABLED_DATES});return!0}catch{return!1}}}),f);const e=O(S,"future"),t=O(S,"past"),n=O(S,"notFuture"),r=O(S,"notPast"),i=O(S,"minDate"),o=O(S,"maxDate"),s=O(S,"excludedDates"),u=O(S,"numberOfDays"),c=Sg.toLocalDateOrTime(i?.minDate,p,"date"),l=Sg.toLocalDateOrTime(o?.maxDate,p,"date"),d=T([c,e?.future&&xf.now().plusDays(1),r?.notPast&&xf.now()]),m=C([l,t?.past&&xf.now().minusDays(1),n?.notFuture&&xf.now()]),g=s?.excludedDates,A=u?.numberOfDays;b(e=>({...e,minDate:d?.format(YZ),maxDate:m?.format(YZ),disabledDates:g,numberOfDays:A}))},[f,S]),t.useEffect(()=>{I(GZ.START)},[l.from,p,o]),t.useEffect(()=>{I(GZ.END)},[l.to,p,o]);const C=e=>e.filter(e=>e).sort((e,t)=>e.isAfter(t)?1:-1)?.[0],T=e=>e.filter(e=>e).sort((e,t)=>e.isBefore(t)?1:-1)?.[0],M=e=>e&&e!==Eg.DATE_RANGE.INVALID,I=e=>{const t=e===GZ.START?l.from:l.to,n=e===GZ.START?A:_;if(p)if(t)if(M(t)){const e=Sg.toLocalDateOrTime(t,p,"date");n(Sg.formatDateTime(e?.toString(),HZ,"date",Eg.DATE_RANGE.INVALID))}else n(Eg.DATE_RANGE.INVALID);else o||n(void 0)},O=(e,t)=>{const n=e?.find(e=>t in e),r=f?.find(e=>!!e&&t in e);return BF.exports.isEmpty(n)?BF.exports.isEmpty(r)?void 0:r:n};return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.DateRangeInput,{...m,...v,id:a,"data-testid":exports.TestHelper.generateId(a,"date"),label:i,errorMessage:r?.message,onBlur:s,onChange:(e,t)=>{u({target:{value:{from:Sg.formatDateTime(e,p,"date",Eg.DATE_RANGE.INVALID),to:Sg.formatDateTime(t,p,"date",Eg.DATE_RANGE.INVALID)}}})},value:g,valueEnd:y,variant:h}),e.jsx(qF,{id:a,message:d})]})},get TDateRangeInputType(){return GZ},ESignatureField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,uiType:u,upload:c,validation:l,...d},value:f,warning:p}=n,[h,m]=t.useState(null),[g,A]=t.useState(0),[y,_]=t.useState(0),[v,b]=t.useState(null),{setFieldValidationConfig:E}=AP(),S=t.useRef(null),{clearErrors:x}=xe();t.useEffect(()=>{const e=l?.find(e=>"upload"in e&&e.upload);S.current=e,E(a,$I().shape({fileId:EM().required(),dataURL:EM(),fileUrl:EM(),uploadResponse:pM().nullable()}).default(void 0),l)},[l]),t.useEffect(()=>{if(_(0),M(f)){if(f.dataURL)m(f.dataURL);else if(f.fileUrl){const e=O(f.fileId,f.fileUrl);return()=>e.abort()}}else m(null)},[f]);const C=async e=>{if(!e)return m(null),_(0),A(0),b(null),void o({target:{value:null}});const t=wg();if(m(e),_(0),QS(c))o({target:{value:{fileId:t,dataURL:e}}});else try{const n=await I(t,e);o({target:{value:{fileId:t,..."base64"===c.type&&{dataURL:e},fileUrl:n?.data?.fileUrl,uploadResponse:n}}}),x(a),A(0)}catch(e){A(e=>e+1),b(null)}},M=e=>!!e,I=async(e,t)=>{b(0);const n=new FormData;if(n.append("fileId",e),c.sessionId&&n.append("sessionId",c.sessionId),"base64"===c.type)n.append("dataURL",t);else if("multipart"===c.type){const r=await exports.FileHelper.dataUrlToBlob(t),i=exports.FileHelper.blobToFile(r,{name:e,lastModified:Date.now()});n.append("file",i,e)}const r=await new Al("",void 0,void 0,!0).post(c.url,n,{headers:{"Content-Type":"base64"===c.type?"application/json":"multipart/form-data",...c.headers},onUploadProgress:e=>{const{loaded:t,total:n}=e;b(t/n)}});return b(null),r},O=(e,t)=>{const n=new AbortController;return(async()=>{try{const r=await new Al("",void 0,void 0,!1,{responseType:"blob"}).get(t,{signal:n.signal}),i=await exports.FileHelper.getType(new File([r],e)),a=new File([r],e,{type:i.mime}),o=await exports.FileHelper.fileToDataUrl(a);m(o),_(0)}catch(e){if(e instanceof el)return;_(e=>e+1)}})(),n};return e.jsxs(VZ,{children:[e.jsx(w.Form.ESignature,{...d,id:a,label:i,onChange:C,value:h,...null!==v&&{loadingProgress:v}}),(r?.message||g||y)&&null===v?g>0?e.jsxs(WZ,{children:[e.jsx(T.ExclamationCircleFillIcon,{}),e.jsxs("span",{children:[S.current?.errorMessage||Eg.ESIGNATURE.UPLOAD,e.jsx(KZ,{type:"button",onClick:()=>C(h),children:"Please try again."})]}),g>=3&&e.jsx(qZ,{type:"warning","data-testid":"upload-refresh-alert",children:"Refresh this page if you cannot upload your signature."})]}):y>0&&M(f)?e.jsxs(WZ,{children:[e.jsx(T.ExclamationCircleFillIcon,{}),e.jsxs("span",{children:["Failed to load.",e.jsx(KZ,{type:"button",onClick:()=>O(f.fileId,f.fileUrl),children:"Please try again."})]}),y>=3&&e.jsx(qZ,{type:"warning","data-testid":"load-refresh-alert",children:"Refresh this page if your signature failed to load."})]}):e.jsxs(WZ,{children:[e.jsx(T.ExclamationCircleFillIcon,{}),e.jsx("span",{children:r?.message})]}):null,e.jsx(qF,{id:a,message:p})]})},ErrorField:n=>{const{id:r,schema:{children:i}}=n,{setFieldValidationConfig:a}=AP();return t.useEffect(()=>{a(r,pM().test(()=>!1),[])},[]),i?e.jsx(jH,{children:i}):null},FileUploadInner:vU,FileUpload:t=>e.jsx(gU,{children:e.jsx(vU,{...t})}),get EFileStatus(){return exports.EFileStatus},HiddenField:n=>{const{id:r,name:i,onBlur:a,onChange:o,schema:{showIf:s,uiType:u,validation:c,valueType:l,value:d,...f},value:p}=n,{setFieldValidationConfig:h}=AP(),{setValue:m}=xe();return t.useEffect(()=>{let e;switch(l){case"null":e=pM();break;case"number":e=wM();break;case"boolean":e=mM();break;default:e=EM()}h(r,e,c)},[c,l]),t.useEffect(()=>{"null"===l&&null!==p?m(r,null):ew(d)||p===d||m(r,d)},[m,r,l,d,p]),e.jsx("input",{onBlur:a,onChange:o,...f,type:"hidden",id:r,"data-testid":r,name:i,value:d??p??""})},HistogramSlider:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,bins:u,interval:c,validation:l,disabled:d,readOnly:f,className:p,ariaLabels:h,customOptions:m},value:g,warning:A}=n,{resetField:y}=xe(),[_,v]=t.useState(void 0),{setFieldValidationConfig:b}=AP(),E=t.useMemo(()=>Math.min(...u.map(e=>e.minValue)),[u]),S=t.useMemo(()=>Math.max(...u.map(e=>e.minValue))+c,[u,c]);t.useEffect(()=>{g?v((e=>["number"==typeof e?.from?e.from:E,"number"==typeof e?.to?e.to:S])(g)):(y(a,{defaultValue:{from:E,to:S},keepDirty:!0}),v([E,S]))},[g]),t.useEffect(()=>{const e=l?.find(e=>"required"in e),t=l?.find(e=>"bin"in e&&e.bin),n=l?.find(e=>"incremental"in e&&e.incremental),r=l?.find(e=>"withinRange"in e&&e.withinRange);b(a,$I({from:wM(),to:wM()}).test("is-required",e?.errorMessage||Eg.COMMON.REQUIRED_OPTIONS,t=>!t||!e||!ew(t.from)&&!ew(t.to)).test("is-bin",t?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...u.map(e=>e.minValue));return Number.isInteger((t-r)/c)&&Number.isInteger((n-r)/c)}).test("is-incremental",n?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>!e||"number"!=typeof e.from||"number"!=typeof e.to||e.from<e.to).test("is-within-range",r?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...u.map(e=>e.minValue)),i=Math.max(...u.map(e=>e.minValue))+c;return!(t<r||n>i)}),l)},[l,u,c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.HistogramSlider,{...m,id:a,"data-testid":exports.TestHelper.generateId(a,"histogram-slider"),label:i,errorMessage:r?.message,onChangeEnd:e=>{const[t,n]=e;o({target:{value:{from:t,to:n}}})},value:_,bins:u,interval:c,disabled:d,readOnly:f,className:p,ariaLabels:h}),e.jsx(qF,{id:a,message:A})]})},ImageUploadInner:gH,ImageUpload:t=>e.jsx(EU,{children:e.jsx(gH,{...t})}),ACCEPTED_FILE_TYPES:SU,get EImageStatus(){return exports.EImageStatus},LocationField:n=>{const{error:r,formattedLabel:i,id:o,schema:{className:s="location",mapApi:u,disabled:c,gettingCurrentLocationFetchMessage:l,interactiveMapPinIconUrl:d,label:f,locationInputPlaceholder:p,locationListTitle:h,locationModalStyles:m,mapBannerText:g,mapPanZoom:A,mustHavePostalCode:y,readOnly:_,staticMapPinColor:v,validation:b,hasExplicitEdit:E,locationSelectionMode:S="default",disableSearch:w,addressFieldPlaceholder:x,searchBarIcon:C,bufferRadius:T,pinsOnlyIndicateCurrentLocation:M,legendItems:I,defaultAddress:O},value:D,warning:N}=n,[L,k]=t.useState(!1),{setValue:R}=xe(),{setFieldValidationConfig:F}=AP(),{dispatchFieldEvent:$,addFieldEventListener:P,removeFieldEventListener:z}=v$();t.useEffect(()=>(P("show-location-modal",o,U),$("show-location-modal-ready",o),()=>{z("show-location-modal",o,U)}),[]),t.useEffect(()=>{const e=b?.find(e=>"required"in e),t=b?.find(e=>"postalCode"in e);F(o,$I({address:EM(),blockNo:EM(),building:EM(),lat:wM(),lng:wM(),postalCode:EM(),roadName:EM(),x:wM(),y:wM()}).test("is-required",e?.errorMessage||Eg.COMMON.FIELD_REQUIRED,t=>!e?.required||!!t&&!!t.lat&&!!t.lng).test("must-have-postal-code",t?.errorMessage||Eg.LOCATION.MUST_HAVE_POSTAL_CODE,t=>!e||!y||exports.LocationHelper.hasGotAddressValue(t.postalCode)),b)},[b]);const B=(e,t=!0)=>{R(o,e,{shouldDirty:t})},Z=()=>{_||c||(k(!0),$("show-location-modal",o))},U=()=>{k(!0)};return e.jsxs("div",{id:o,"data-testid":exports.TestHelper.generateId(o),className:s,children:[e.jsx(wH,{id:o,label:i,className:s,locationInputPlaceholder:p,onChange:e=>e.currentTarget.blur(),onFocus:Z,value:D?.address||"",errorMessage:r?.message,disabled:"explicit"===E&&!!D?.address||c,readOnly:_}),E&&D?.address&&e.jsx(a.Button.Default,{id:exports.TestHelper.generateId(o,"edit-button"),"data-testid":exports.TestHelper.generateId(o,"edit-button"),styleType:"secondary",onClick:()=>{!$("click-edit-button",o)||k(!0)},type:"button",children:"Edit"}),!!D?.lat&&!!D?.lng&&e.jsx(KF,{id:o,className:`${s}-static-map`,lat:D.lat,lng:D.lng,staticMapPinColor:v,onClick:Z,disabled:c}),e.jsx(t.Suspense,{fallback:null,children:xH&&e.jsx(xH,{id:o,className:s,showLocationModal:L,onClose:()=>{k(!1),$("hide-location-modal",o)},formValues:D,onConfirm:B,updateFormValues:B,mapPanZoom:A,mapApi:u,interactiveMapPinIconUrl:d,gettingCurrentLocationFetchMessage:l,mustHavePostalCode:y,locationModalStyles:m,locationListTitle:h,mapBannerText:g,locationSelectionMode:S,disableSearch:w,addressFieldPlaceholder:x,searchBarIcon:C,bufferRadius:T,pinsOnlyIndicateCurrentLocation:M,legendItems:I,defaultAddress:O})}),e.jsx(qF,{id:o,message:N})]})},GeolocationPositionErrorWrapper:CH,MaskedField:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,value:u,schema:{label:c,uiType:l,validation:d,maskRegex:f,iconMask:p,iconUnmask:h,...m},warning:g}=n,[A,y]=t.useState(u||""),[_,v]=t.useState({}),{setFieldValidationConfig:b}=AP();t.useEffect(()=>{b(a,EM(),d);const e=d?.find(e=>"max"in e),t=d?.find(e=>"length"in e),n={..._};e?.max>0?n.maxLength=e.max:t?.length>0&&(n.maxLength=t.length),v(n)},[d]),t.useEffect(()=>{u!==A&&y(u||"")},[u]);const E=t=>{if(!t)return;const n=Y[t];return e.jsx(n,{"data-testid":t})};return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.MaskedInput,{...m,..._,id:a,"data-testid":exports.TestHelper.generateId(a,l),label:i,onBlur:o,onChange:e=>{s(e)},value:A,errorMessage:r?.message,maskRegex:(()=>{if(f)try{const e=f.match(/\/(.*)\/([a-z]+)?/);return new RegExp(e[1],e[2])}catch(e){console.warn(`invalid regex pattern: ${f}`)}})(),iconMask:E(p),iconUnmask:E(h)}),e.jsx(qF,{id:a,message:g})]})},MultiSelect:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:u,value:c,warning:l}=n,{commonSchema:{validation:d},customSchema:{options:f=[],...p}}=bx(u),{setValue:h}=xe(),[m,g]=t.useState(c||[]),{setFieldValidationConfig:A}=AP();t.useEffect(()=>{const e=d?.find(e=>"required"in e);A(a,zI().of(EM()).test("is-empty-array",e?.errorMessage||Eg.COMMON.REQUIRED_OPTION,t=>!t||!e?.required||t.length>0),d)},[d]),vs(()=>{const e=c?.filter(e=>f.find(t=>t.value===e));h(a,e)},[f]),t.useEffect(()=>{g(c||[])},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.MultiSelect,{...p,id:a,"data-testid":exports.TestHelper.generateId(a),label:i,options:f,onBlur:o,onSelectOptions:e=>{const t=e.map(e=>e.value);s({target:{value:t}})},selectedOptions:f.filter(e=>m.includes(e.value)),valueExtractor:e=>e.value,listExtractor:e=>e.label,errorMessage:r?.message}),e.jsx(qF,{id:a,message:l})]})},OtpVerificationField:n=>{const{error:r,id:i,value:a,formattedLabel:o,onChange:s,warning:u,schema:{validation:c,request:l,verification:d,withPrefix:f,verifyOtpCountdownTimer:p,prefixSeparator:h,type:m,...g}}=n,[A,y]=t.useState(a?.otpCode||""),[_,v]=t.useState(a?.otpPrefix),b=t.useRef(a?.transactionId),E=t.useRef(-1),S=t.useRef(-1),x=a?.state||"default",C=a?.contact||"",T={number:"phone-number"===m?C:"",countryCode:"+65"},M=c?.find(e=>"otp-type"in e),I=c?.find(e=>"required"in e),{setFieldValidationConfig:O}=AP(),{formState:D,setError:N,clearErrors:L}=xe(),{submitCount:k}=D;t.useEffect(()=>{O(i,$I().test(TH.IS_OTP_VERIFIED,I?.errorMessage||F(),e=>!I?.required||"verified"===e?.state),c)},[c,x]);const R=async()=>{const e=M?.["otp-type"]??void 0;if("email"===e&&(t=C,!EM().required().email().isValidSync(t)))throw N(i,{type:TH.IS_EMAIL_VALID,message:M?.errorMessage||Eg.OTP_VERIFICATION.INVALID_EMAIL}),new Error;var t;const n=`${T.countryCode}${T.number}`;if("phone-number"===e&&!(e=>ZZ.isSingaporeNumber(e))(n))throw N(i,{type:TH.IS_PHONE_NUMBER_VALID,message:M?.errorMessage||Eg.OTP_VERIFICATION.INVALID_PHONE}),new Error;const r={type:m,..."email"===m?{email:C}:{phoneNo:n},...void 0!==f&&{withPrefix:f}},a=await new Al("",void 0,void 0,!0).post(l.endpoint.url,r).catch(e=>{const t=e?.message||Eg.OTP_VERIFICATION.SEND_OTP_FAILED;throw N(i,{type:TH.SEND_OTP_FAILED,message:t}),new Error(t)}),o=a?.transactionId??a?.data?.transactionId,u=a?.prefix??a?.data?.prefix;b.current=o,u&&v(u),L(i),E.current=k,s({target:{value:{contact:"email"===e?C:T.number,otpPrefix:u??_,type:m,state:"sent"}}})},F=()=>"default"===x?"email"===m?Eg.OTP_VERIFICATION.EMAIL_VERIFICATION_REQUIRED:Eg.OTP_VERIFICATION.PHONE_VERIFICATION_REQUIRED:"sent"===x?Eg.OTP_VERIFICATION.OTP_REQUIRED:void 0,$={...g,id:i,"data-testid":exports.TestHelper.generateId(i,"otp-verification-field"),label:o,otpState:x,onOtpStateChange:e=>{"default"===e&&(y(""),v(void 0),b.current=void 0,s({target:{value:{...a,state:void 0,additionalData:void 0,otpPrefix:void 0}}}))},onSendOtp:R,onResendOtp:R,onVerifyOtp:async e=>{const t="email"===m?C:T.number,n=await new Al("",void 0,void 0,!0).post(d.endpoint.url,{transactionId:b.current,otp:e,otpPrefix:_}).catch(e=>{const t=e?.message||Eg.OTP_VERIFICATION.OTP_VERIFICATION_FAILED;throw N(i,{type:TH.OTP_VERIFICATION_FAILED,message:t}),new Error(t)});s({target:{value:{contact:t,otpPrefix:_,type:m,state:"verified",additionalData:n?.additionalData??n?.data?.additionalData}}})},sendOtpError:(()=>{if("sent"===x)return;if(r?.type===TH.IS_EMAIL_VALID||r?.type===TH.IS_PHONE_NUMBER_VALID||r?.type===TH.SEND_OTP_FAILED)return r?.message;return D.isSubmitted&&k>S.current&&r?.type===TH.IS_OTP_VERIFIED?r?.message:void 0})(),verifyOtpError:(()=>{if("sent"!==x)return;return r?.type===TH.IS_OTP_VERIFIED&&k>E.current||r?.type===TH.OTP_VERIFICATION_FAILED||r?.type===TH.API_ERROR?r?.message:void 0})(),otpValue:{value:A,..._&&{prefix:_},...h&&{prefixSeparator:h}},onOtpChange:e=>{L(i),y(e)},...void 0!==l.placeholder&&{sendOtpPlaceholder:l.placeholder},...void 0!==p&&{verifyOtpCountdownTimer:p},...void 0!==d.showThumbnail&&{showVerifyOtpThumbnail:d.showThumbnail},...void 0!==d.title&&{verifyOtpTitle:d.title},...void 0!==d.message&&{verifyOtpMessage:d.message}};return e.jsxs(e.Fragment,{children:["email"===m?e.jsx(w.Form.OtpVerification,{...$,type:"email",emailValue:C,onEmailChange:e=>{S.current=k,L(i),s({target:{value:{...a,contact:e}}})}}):e.jsx(w.Form.OtpVerification,{...$,type:"phone-number",phoneNumberValue:T,onPhoneNumberChange:e=>{S.current=k,L(i);let t=e.number;e.number||(t=""),s({target:{value:{...a,contact:t}}})},fixedCountry:!0}),e.jsx(qF,{id:i,message:u})]})},get EOtpVerificationErrorType(){return TH},NestedMultiSelect:n=>{const{schema:{label:r,validation:i,options:a=[],...o},id:s,value:u,formattedLabel:c,onChange:l,onBlur:d,error:f,warning:p}=n,{setValue:h}=xe(),{setFieldValidationConfig:m}=AP(),[g,A]=t.useState(u),[y,_]=t.useState([]),v=t.useCallback(e=>{const t=[],n=(e,r)=>{for(const i in e){const a=[...r,i],o=e[i];"string"==typeof o?t.push(a):n(o,a)}};return n(e,[]),t},[]);t.useEffect(()=>{const e=i?.find(e=>"required"in e);m(s,$I().test("is-required",e?.errorMessage||Eg.COMMON.REQUIRED_OPTION,t=>!e?.required||!!t&&!!Object.keys(t).length),i)},[i]),vs(()=>{const e=(t,n)=>{const r={};for(const i of t){const{key:t,subItems:a}=i,o=n[t];if(o){const n="string"==typeof o?o:e(a||[],o);Object.keys(n).length?r[t]=n:delete r[t]}}return r},t=u?e(a,u):u;h(s,t)},[a]),t.useEffect(()=>{A(u);const e=v(u);_(e)},[v,g,u]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.NestedMultiSelect,{...o,id:s,"data-testid":exports.TestHelper.generateId(s),label:c,options:a,onSelectOptions:(e,t)=>{const n=((e,t)=>{const n={};return e.forEach((e,r)=>{e.reduce((n,i,a)=>(a===e.length-1?n[i]=t[r]:n[i]||(n[i]={}),n[i]),n)}),n})(e,t);l({target:{value:n}})},onBlur:d,selectedKeyPaths:y,errorMessage:f?.message}),e.jsx(qF,{id:s,message:p})]})},RadioButtonGroup:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:s,value:u,warning:c}=n,{commonSchema:{customOptions:l,validation:d},customSchema:{className:f,disabled:p,options:h,...m}}=bx(s),{setValue:g}=xe(),[A,y]=t.useState(u||""),{setFieldValidationConfig:_}=AP();t.useEffect(()=>{_(a,EM(),d)},[d]),_s(()=>{h.find(e=>e.value===u)||g(a,"")},[h]),t.useEffect(()=>{y(u||"")},[u]);const v=e=>{o({target:{value:e}})},b=e=>A===e,E=()=>{const e=wg();return`${a}-${e}`},S=t=>"string"==typeof t?e.jsx(zF,{inline:!0,children:t}):e.jsx(jH,{children:t});return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.CustomField,{id:a,label:i,errorMessage:r?.message,children:e.jsx("div",{role:"radiogroup",tabIndex:0,children:(()=>{switch(l?.styleType){case"toggle":return h.length>0&&"toggle"===l.styleType&&e.jsx(LH,{className:f?`${f} ${f}-radio-container`:void 0,$layoutType:l?.layoutType??"horizontal",children:h.map((n,i)=>{const o=E();return t.createElement(kH,{...m,key:i,type:"radio",id:o,className:f?`${f}-radio`:void 0,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:p??n.disabled,focusableWhenDisabled:p,name:o,indicator:l?.indicator,styleType:!1===l?.border?"no-border":"default",checked:b(n.value),onChange:()=>v(n.value),error:!!r?.message,compositeSection:n.children?{children:e.jsx(jH,{children:n.children}),collapsible:!1}:null,subLabel:!!n.subLabel&&S(n.subLabel)},S(n.label))})});case"image-button":return h.length>0&&e.jsx(NH,{className:f?`${f} ${f}-radio-container`:void 0,children:h.map((e,n)=>{const i=E();return t.createElement(OH,{...m,type:"button",key:n,id:i,className:f?`${f}-radio`:void 0,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:p??e.disabled,focusableWhenDisabled:p,name:i,selected:b(e.value),onClick:()=>v(e.value),imgSrc:e.imgSrc,error:!!r?.message},e.label)})});default:return h.length>0&&h.map((t,n)=>{const r=E();return e.jsxs(DH,{className:f?`${f}-radio-container`:void 0,children:[e.jsx(IH,{...m,className:f,id:r,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:p??t.disabled,focusableWhenDisabled:p,name:r,value:t.value,checked:b(t.value),onChange:()=>v(t.value)}),e.jsx(MH,{forwardedAs:"label",htmlFor:r,disabled:p??t.disabled,children:S(t.label)})]},n)})}})()})}),e.jsx(qF,{id:a,message:c})]})},RangeSelect:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:u,value:c={from:void 0,to:void 0},warning:l}=n,{commonSchema:{validation:d},customSchema:{options:f,...p}}=bx(u),{setValue:h}=xe(),[m,g]=t.useState(c.from||""),[A,y]=t.useState(c.to||""),{setFieldValidationConfig:_}=AP(),v=t.useRef(!1);t.useEffect(()=>{const e=d?.find(e=>"required"in e);_(a,$I().shape({from:EM(),to:EM()}).test("is-empty-string",e?.errorMessage||Eg.COMMON.REQUIRED_OPTIONS,t=>!t||!e?.required||t.from?.length>0&&t.to?.length>0),d)},[d]),_s(()=>{const e={};f.from.find(e=>e.value===c.from)||(e.from=""),f.to.find(e=>e.value===c.to)||(e.to=""),h(a,{...c,...e})},[f]),t.useEffect(()=>{y(c.from),g(c.to)},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.RangeSelect,{...p,id:a,onHideOptions:()=>{v.current?v.current=!1:c.from&&c.to||s({target:{value:{from:void 0,to:void 0}}})},onBlur:o,"data-testid":exports.TestHelper.generateId(a),label:i,options:f,onSelectOption:e=>{void 0===e.from&&void 0===e.to&&s({target:{value:{from:void 0,to:void 0}}}),e.from&&s({target:{value:{from:e.from.value,to:void 0}}}),e.to&&(v.current=!0,s({target:{value:{to:e.to.value,from:A}}}))},selectedOptions:{from:f.from.find(({value:e})=>e===A),to:f.to.find(({value:e})=>e===m)},valueToStringFunction:e=>`${e.from} - ${e.to}`,valueExtractor:e=>({from:e.value,to:e.value}),displayValueExtractor:e=>e.label,listExtractor:e=>e.label,errorMessage:r?.message}),e.jsx(qF,{id:a,message:l})]})},ResetButton:t=>{const{id:n,schema:r}=t,{commonSchema:{label:i},customSchema:{disabled:o,ignoreDefaultValues:s,...u}}=bx(r),{reset:c,getValues:l}=xe(),{resetFields:d}=gP(),{formSchema:{defaultValues:f}}=mP();return e.jsx(a.Button.Default,{...u,disabled:o,"data-testid":n,id:n,type:"reset",onClick:()=>{if(s){const e=l();Object.entries(e).forEach(([t,n])=>{Vr(n)?e[t]=[]:YP(n)||s$(n)?e[t]="":Pr(n)&&(e[t]={})}),c(e),d(e)}else c(),d(f)},children:i})},Select:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:u,value:c,warning:l}=n,{commonSchema:{validation:d},customSchema:{options:f,...p}}=bx(u),{setValue:h}=xe(),[m,g]=t.useState(c||""),{setFieldValidationConfig:A}=AP();t.useEffect(()=>{A(a,EM(),d)},[d]),_s(()=>{f.find(e=>e.value===c)||h(a,"")},[f]),t.useEffect(()=>{g(c||"")},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.Select,{...p,id:a,"data-testid":exports.TestHelper.generateId(a,"select"),label:i,errorMessage:r?.message,options:f,onBlur:o,onSelectOption:(e,t)=>{s({target:{value:t}})},selectedOption:f.find(({value:e})=>e===m),displayValueExtractor:e=>e.label,valueExtractor:e=>e.value,listExtractor:e=>e.label}),e.jsx(qF,{id:a,message:l})]})},SelectHistogram:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:{label:u,validation:c,disabled:l,readOnly:d,className:f,histogramSlider:p,customOptions:h},value:m,warning:g}=n,{bins:A,interval:y,..._}=p,{resetField:v}=xe(),[b,E]=t.useState([0,0]),{setFieldValidationConfig:S}=AP();t.useEffect(()=>{if(m)E([m.from,m.to]);else{const e=Math.min(...A.map(e=>e.minValue)),t=Math.max(...A.map(e=>e.minValue))+y;v(a,{defaultValue:{from:e,to:t},keepDirty:!0}),E([e,t])}},[m]),t.useEffect(()=>{const e=c?.find(e=>"required"in e),t=c?.find(e=>"bin"in e&&e.bin),n=c?.find(e=>"incremental"in e&&e.incremental),r=c?.find(e=>"withinRange"in e&&e.withinRange);S(a,$I({from:wM(),to:wM()}).test("is-required",e?.errorMessage||Eg.COMMON.REQUIRED_OPTIONS,t=>!t||!e||!ew(t.from)&&!ew(t.to)).test("is-bin",t?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...A.map(e=>e.minValue));return Number.isInteger((t-r)/y)&&Number.isInteger((n-r)/y)}).test("is-incremental",n?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>!e||"number"!=typeof e.from||"number"!=typeof e.to||e.from<e.to).test("is-within-range",r?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...A.map(e=>e.minValue)),i=Math.max(...A.map(e=>e.minValue))+y;return!(t<r||n>i)}),c)},[c,A,y]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.SelectHistogram,{id:a,"data-testid":exports.TestHelper.generateId(a,"select-histogram"),label:i,errorMessage:r?.message,onBlur:o,onChangeEnd:e=>{const[t,n]=e;s({target:{value:{from:t,to:n}}})},disabled:l,readOnly:d,className:f,rangeLabelPrefix:h?.rangeLabelPrefix,rangeLabelSuffix:h?.rangeLabelSuffix,value:b,histogramSlider:{bins:A,interval:y,..._}}),e.jsx(qF,{id:a,message:g})]})},Slider:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,customOptions:u,validation:c,disabled:l,readOnly:d,className:f,ariaLabel:p},value:h,warning:m}=n,[g,A]=t.useState(),{setFieldValidationConfig:y}=AP();t.useEffect(()=>{const e=c?.find(e=>"min"in e),t=c?.find(e=>"max"in e),n=c?.find(e=>"increment"in e);y(a,wM().test("is-incremental",n?.errorMessage||Eg.SLIDER.MUST_BE_INCREMENTAL,t=>{if("number"!=typeof t||!n)return!0;const r=n.increment,i=(e?.min??0)-t;return Number.isInteger(i/r)}),c),(e||t||n)&&A({min:e?.min,max:t?.max,step:n?.increment})},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.Slider,{...u,...g,id:a,"data-testid":exports.TestHelper.generateId(a,"slider"),label:i,errorMessage:r?.message,onChangeEnd:e=>{o({target:{value:e}})},value:h,disabled:l,readOnly:d,className:f,ariaLabel:p}),e.jsx(qF,{id:a,message:m})]})},SubmitButton:n=>{const{id:r,schema:i}=n,{commonSchema:{label:o},customSchema:{disabled:s,...u}}=bx(i),{submitHandler:c,wrapInForm:l}=yP(),{setFieldValidationConfig:d}=AP(),{hardValidationSchema:f}=bP(),p=Fe({disabled:"invalid-form"!==s}),[h,m]=t.useState(!0===s);t.useEffect(()=>{d(r,pM())},[]),t.useEffect(()=>{"invalid-form"!==s&&m(!!s)},[s]),_s(()=>{(async()=>{if("invalid-form"===s)try{await f.validate(p),m(!1)}catch(e){m(!0)}})()},[p,f]);return e.jsx(a.Button.Default,{...u,disabled:h,"data-testid":r,id:r,onClick:e=>{l||(e.preventDefault(),c?.())},type:"submit",children:o})},Switch:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:s,value:u,warning:c}=n,{commonSchema:{customOptions:l,label:d,validation:f},customSchema:{className:p,disabled:h,...m}}=bx(s),[g,A]=t.useState(u||void 0),{setFieldValidationConfig:y}=AP();t.useEffect(()=>{y(a,mM().strict(),f)},[f]),t.useEffect(()=>{A(u)},[u]);const _=e=>{o({target:{value:e}})},v=e=>g===e,b=e=>`${a}-${e}`;return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.CustomField,{id:a,label:i,errorMessage:r?.message,children:e.jsxs(RH,{className:p,role:"radiogroup","aria-label":"string"==typeof d?d:PF(d.mainLabel,{allowedTags:[]}),children:[e.jsx(C.Toggle,{...m,type:"yes",id:b("yes"),"data-testid":exports.TestHelper.generateId(a,"switch-yes"),disabled:h,styleType:!1===l?.border?"no-border":"default",checked:v(!0),onChange:()=>_(!0),indicator:!0,name:a,error:!!r?.message,children:"Yes"}),e.jsx(C.Toggle,{...m,type:"no",id:b("no"),"data-testid":exports.TestHelper.generateId(a,"switch-no"),disabled:h,styleType:!1===l?.border?"no-border":"default",checked:v(!1),onChange:()=>_(!1),indicator:!0,name:a,error:!!r?.message,children:"No"})]})}),e.jsx(qF,{id:a,message:c})]})},TextField:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,value:u,schema:c,warning:l}=n,{commonSchema:{customOptions:d,uiType:f,validation:p},customSchema:{inputMode:h,...m}}=bx(c),[g,A]=t.useState(u??""),[y,_]=t.useState({}),{setFieldValidationConfig:v}=AP(),b=t.useRef(null),E=t.useRef(0);t.useEffect(()=>{switch(f){case"numeric-field":{const e=p?.find(e=>"decimals"in e);let t=wM();void 0!==e?.decimals&&(t=t.test("decimals",e.errorMessage||Eg.NUMERIC.INVALID_DECIMALS(e.decimals),t=>{if(null==t)return!0;const n=String(t).split(".")[1];return!n||n.length<=e.decimals})),v(a,t,p);const n=p?.find(e=>"min"in e),r=p?.find(e=>"max"in e),i={...y};n?.min>0&&(i.min=n.min),r?.max>0&&(i.max=r.max),_(i);break}case"email-field":{const e=p?.find(e=>e.email);v(a,EM().email(e?.errorMessage||Eg.EMAIL.INVALID),p);const t=p?.find(e=>"max"in e),n=p?.find(e=>"length"in e),r={...y};t?.max>0?r.maxLength=t.max:n?.length>0&&(r.maxLength=n.length),_(r);break}case"text-field":{v(a,EM(),p);const e=p?.find(e=>"max"in e),t=p?.find(e=>"length"in e),n={...y};e?.max>0?n.maxLength=e.max:t?.length>0&&(n.maxLength=t.length),_(n);break}}},[p]),t.useEffect(()=>{u!==g&&A(u??"")},[u]),t.useEffect(()=>{"text-field"===f&&document?.activeElement===b.current&&b.current.selectionEnd!==E.current&&b.current.setSelectionRange(E.current,E.current)},[g]),t.useEffect(()=>{"text-field"===c.uiType&&"uppercase"===c.customOptions?.textTransform&&g&&A(e=>e?.toString().toUpperCase())},["text-field"===c.uiType&&c.customOptions?.textTransform]);const S=()=>!!d?.addOn,x=S()?w.Form.InputGroup:w.Form.Input;return e.jsxs(e.Fragment,{children:[e.jsx(x,{...m,...y,id:a,"data-testid":exports.TestHelper.generateId(a,f),ref:b,type:(()=>{switch(f){case"numeric-field":return"number";case"email-field":return"email";default:return"text"}})(),label:i,onBlur:o,onPaste:e=>{const t=e.clipboardData.getData("text");(d?.preventCopyAndPaste||"numeric-field"===f&&/e/i.test(t))&&e.preventDefault()},onDrop:e=>d?.preventDragAndDrop?e.preventDefault():null,inputMode:(()=>{if(h)return h;switch(f){case"numeric-field":return"numeric";case"email-field":return"email";case"text-field":return"text";default:return"none"}})(),onChange:e=>{if("numeric-field"===f){const t=p?.find(e=>"decimals"in e);if(void 0!==t?.decimals){const[n,r]=e.target.value.split(".");r&&r.length>t.decimals&&(e.target.value=`${n}.${r.slice(0,t.decimals)}`)}const n=!isNaN(parseFloat(e.target.value))?+e.target.value:void 0;return s({target:{value:n}}),void A(n??"")}"text-field"===c.uiType?(E.current=e.target.selectionEnd,"uppercase"===c.customOptions?.textTransform&&(e.target.value=e.target.value.toUpperCase()),s(e)):s(e),A(e.target.value)},onKeyDown:e=>{"numeric-field"===f&&"e"===e.key.toLowerCase()&&e.preventDefault()},value:g,errorMessage:r?.message,addon:(()=>{if(S()){if("label"===d.addOn.type)return{type:"label",position:d.addOn.position,attributes:{value:d.addOn.value}};if("icon"===d.addOn.type){const{icon:t,position:n,color:r}=d.addOn,i=Y[t];return{type:"custom",position:n,attributes:{children:e.jsx(FH,{as:i,$color:r})}}}}})()}),e.jsx(qF,{id:a,message:l})]})},Textarea:kz,TimeField:n=>{const{error:r,formattedLabel:i,id:a,onBlur:o,onChange:s,schema:u,value:c,warning:l}=n,{commonSchema:{validation:d},customSchema:{is24HourFormat:f,placeholder:p,useCurrentTime:h,...m}}=bx(u),[g,A]=t.useState(c||""),{setFieldValidationConfig:y}=AP();t.useEffect(()=>{y(a,EM(),d)},[d]),t.useEffect(()=>{if(h&&!c){const e=f?"H:mm":"h:mma";setTimeout(()=>_(e))}else A(c)},[c,h,f]);const _=e=>{const t=Sg.formatDateTime(Mf.now().toString().toUpperCase(),e,"time");A(t),s({target:{value:t}})};return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.Timepicker,{...m,id:a,"data-testid":exports.TestHelper.generateId(a,"time"),label:i,errorMessage:r?.message,value:g,placeholder:p,format:f?"24hr":"12hr",onBlur:o,onChange:e=>{s({target:{value:e}})}}),e.jsx(qF,{id:a,message:l})]})},get EFieldType(){return exports.EFieldType},UnitNumberField:n=>{const{formattedLabel:r,error:i,id:a,onBlur:o,onChange:s,schema:u,value:c,warning:l}=n,{commonSchema:{validation:d},customSchema:f}=bx(u),[p,h]=t.useState(c||""),{setFieldValidationConfig:m}=AP();t.useEffect(()=>{const e=d?.find(e=>"unitNumberFormat"in e);m(a,EM().matches(/^([a-zA-Z0-9]{1,3}-[a-zA-Z0-9]{1,5})$/,{excludeEmptyString:!0,message:e?.errorMessage||Eg.UNIT_NUMBER.INVALID}),d)},[d]),t.useEffect(()=>{h(c||"")},[c]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Form.UnitNumberInput,{...f,id:a,"data-testid":exports.TestHelper.generateId(a,"unit-number"),label:r,value:p,onBlur:o,onChange:e=>{s({target:{value:e}})},errorMessage:i?.message}),e.jsx(qF,{id:a,message:l})]})}});const zH=({id:t,children:n,childSchema:r})=>{if("columns"in r){if((i=r.columns)&&("xxs"in i||"xs"in i||"sm"in i||"md"in i||"lg"in i||"xl"in i||"xxl"in i)){const{xxs:i,xs:a,sm:o,md:s,lg:u,xl:c,xxl:d,...f}=r.columns||{};return e.jsx(l.Layout.ColDiv,{"data-testid":exports.TestHelper.generateId(t,"grid_item"),xlCols:c,lgCols:u,mdCols:s,smCols:o,xsCols:a,xxlCols:d,xxsCols:i,...f,children:n})}const{desktop:a,tablet:o,mobile:s,...u}=r.columns||{};return e.jsx(B.V2_Layout.ColDiv,{"data-testid":exports.TestHelper.generateId(t,"grid_item"),desktopCols:a??12,tabletCols:o,mobileCols:s,...u,children:n})}var i;return e.jsx(e.Fragment,{children:n})},BH=({id:n,renderRules:r,children:i,schema:a})=>{const{formValidationConfig:o,removeFieldValidationConfig:s}=AP(),[u,c]=t.useState(void 0),{formValues:l}=gP(),{unregister:d}=xe();vs(()=>{if(QS(r))return;const e=f();if(e!==u){if(!e){[n,...p(a)].forEach(e=>{s(e),d(e)})}c(e)}},[o,l,r]);const f=()=>{if(QS(r))return!0;let e=!1;return r.forEach(t=>{if(!e){const n={};Object.entries(t).forEach(([e,t])=>{if(t.find(e=>e.shown)&&!o?.[e])return void(n[e]={schema:pM().test("shown",()=>!1),validationRules:[]});const r=o?.[e]?.schema.type;if(r){let i=XF.mapSchemaType(r);"number"===r&&(i=i.nullable().transform((e,t)=>!isNaN(parseFloat(t?.toString()))?+t:void 0)),n[e]={schema:i,validationRules:t}}});const r=XF.buildSchema(n);try{r.validateSync(l),e=!0}catch(e){}}}),e},p=e=>{const t=e.children,r=[];switch(e.uiType){case"chips":r.push(n+"-textarea");break;case"checkbox":case"radio":e.options.forEach(e=>{const t=e.children;!QS(t)&&ln(t)&&Object.entries(t).forEach(([e,t])=>{r.push(e),t.children&&r.push(...p(t.children))})})}return QS(t)||!ln(t)||Object.entries(t).forEach(([e,t])=>{r.push(e),t.children&&r.push(...p(t.children))}),r};return QS(r)||u?e.jsx(e.Fragment,{children:i}):null},ZH=Object.keys(exports.EFieldType),UH=Object.keys(exports.EElementType),jH=n=>{const{id:r,schema:i,children:a}=n,{showIf:o,uiType:s,children:u,...c}=i||{},{warnings:l}=bP(),[d,f]=t.useState(null),{control:p}=xe(),{getCustomComponent:h}=y$(),{formSchema:{overrides:m},overrideSchema:g}=mP();_$(()=>{const n=g(u||a,m);if("object"==typeof n){const r=[];Object.keys(n).forEach(i=>{const a=n[i];if(QS(a)||"object"!=typeof a)return;let o=e.jsx(t.Fragment,{children:Eg.GENERIC.UNSUPPORTED},i);if("referenceKey"in a){const n=a.referenceKey.toUpperCase();o=h(a.referenceKey)||tz[ez[n]]?A(i,a)(y):tz[XP[n]]?A(i,a)(_):e.jsx(t.Fragment,{},i)}else"uiType"in a&&(ZH.includes(a.uiType.toUpperCase())?o=A(i,a)(y):UH.includes(a.uiType.toUpperCase())&&(o=A(i,a)(_)));r.push(o)}),f(r)}else f("string"==typeof n?n:Eg.GENERIC.UNSUPPORTED)},[u||a,m,p,l,h]);const A=(t,n)=>r=>e.jsx(BH,{id:t,...n&&"showIf"in n&&{renderRules:n.showIf},schema:n,children:r(t,n)},t),y=(t,n)=>{let r;return"uiType"in n?r=PH[exports.EFieldType[n.uiType?.toUpperCase()]]:"referenceKey"in n&&(r=tz[ez[n.referenceKey?.toUpperCase()]]||h(n.referenceKey)),r?e.jsx(zH,{id:t,childSchema:n,children:e.jsx(Mz,{id:t,schema:n,Field:r,warning:l?.[t]})}):null},_=(t,n)=>{let r;return"uiType"in n?r=kP[exports.EElementType[n.uiType?.toUpperCase()]]||jH:"referenceKey"in n&&(r=tz[XP[n.referenceKey?.toUpperCase()]]),e.jsx(zH,{id:t,childSchema:n,children:e.jsx(r,{schema:n,id:t})})},v=s;return v?e.jsx(v,{...c,id:r,"data-testid":exports.TestHelper.generateId(r,s),children:d}):e.jsx(e.Fragment,{children:d})},GH=H.default(l.Layout.Container)`
1135
1135
  gap: ${n.Spacing["spacing-32"]};
1136
1136
  `,HH=H.default(l.Layout.Container)`
1137
1137
  gap: ${n.Spacing["spacing-32"]};
@@ -1148,4 +1148,4 @@ object-assign
1148
1148
  `,YH=H.default.div`
1149
1149
  flex: 1;
1150
1150
  `,VH=t=>{const{sectionSchema:{children:n,layoutType:r,customOptions:i={gridType:"v2"}},...a}=t;switch(r){case"grid":return(()=>{const t="v3"===i.gridType?GH:HH,r="v3"===i.gridType?"grid":"flex";return e.jsx(l.Layout.Section,{children:e.jsx(t,{type:r,children:e.jsx(jH,{...a,children:n})})})})();case"contain":return e.jsx(l.Layout.Content,{children:e.jsx(YH,{children:e.jsx(jH,{...a,children:n})})});default:return e.jsx(jH,{...a,children:n})}},WH=()=>{const{formSchema:{sections:t,overrides:n},overrideSchema:r}=mP();return e.jsx(e.Fragment,{children:(()=>{const i=r(t,n);return i?Object.entries(i).map(([t,n],r)=>e.jsx(VH,{id:t,sectionSchema:n},`section-${r}`)):e.jsxs(e.Fragment,{children:["Unable to render Frontend Engine schema, make sure schema is declared within ",e.jsx("code",{children:"sections"}),"."]})})()})},KH=t.forwardRef((n,r)=>{const{data:i,className:a=null,components:o,onSubmit:s,onSubmitError:u,wrapInForm:c=!0}=n,{className:l=null,defaultValues:d,id:f,stripUnknown:p,revalidationMode:h="onChange",validationMode:m="onTouched"}=i||{},{addFieldEventListener:g,dispatchFieldEvent:A,removeFieldEventListener:y}=v$(),{setCustomComponents:_}=y$(),{setSubmitHandler:v,setWrapInForm:b}=yP(),{addWarnings:E,performSoftValidation:S,softValidationSchema:w,hardValidationSchema:x,rebuildValidationSchema:C,yupId:T}=bP(),M=function(e={}){const t=j.default.useRef(void 0),n=j.default.useRef(void 0),[r,i]=j.default.useState({isDirty:!1,isValidating:!1,isLoading:Ge(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,defaultValues:Ge(e.defaultValues)?void 0:e.defaultValues});t.current||(t.current={...vt(e),formState:r});const a=t.current.control;return a._options=e,Ne({subject:a._subjects.state,next:e=>{Ie(e,a._proxyFormState,a._updateFormState,!0)&&i({...a._formState})}}),j.default.useEffect(()=>a._disableForm(e.disabled),[a,e.disabled]),j.default.useEffect(()=>{if(a._proxyFormState.isDirty){const e=a._getDirty();e!==r.isDirty&&a._subjects.state.next({isDirty:e})}},[a,r.isDirty]),j.default.useEffect(()=>{e.values&&!ot(e.values,n.current)?(a._reset(e.values,a._options.resetOptions),n.current=e.values,i(e=>({...e}))):a._resetDefaultValues()},[e.values,a]),j.default.useEffect(()=>{e.errors&&a._setErrors(e.errors)},[e.errors,a]),j.default.useEffect(()=>{a._state.mount||(a._updateValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()}),j.default.useEffect(()=>{e.shouldUnregister&&a._subjects.values.next({values:a._getWatch()})},[e.shouldUnregister,a]),t.current.formState=Te(r,a),t.current}({mode:m,reValidateMode:h,defaultValues:d,resolver:async(e,t,n)=>(S(w,e),await function(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),function(r,i,a){try{return Promise.resolve(function(o,s){try{var u=(t.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(e["sync"===n.mode?"validateSync":"validate"](r,Object.assign({abortEarly:!1},t,{context:i}))).then(function(e){return a.shouldUseNativeValidation&&Et({},a),{values:n.rawValues?r:e,errors:{}}}))}catch(e){return s(e)}return u&&u.then?u.then(void 0,s):u}(0,function(e){if(!e.inner)throw e;return{values:{},errors:St((t=e,n=!a.shouldUseNativeValidation&&"all"===a.criteriaMode,(t.inner||[]).reduce(function(e,t){if(e[t.path]||(e[t.path]={message:t.message,type:t.type}),n){var r=e[t.path].types,i=r&&r[t.type];e[t.path]=Pe(t.path,n,e,t.type,i?[].concat(i,t.message):t.message)}return e},{})),a)};var t,n}))}catch(e){return Promise.reject(e)}}}(x)(e,t,n))}),{setFormSchema:I}=mP(),{reset:O,handleSubmit:D,getValues:N,setValue:L,setError:k,trigger:R,formState:F,clearErrors:$}=M,{resetFields:P,setFields:z,getFormValues:B,registeredFields:Z}=gP(M),U=t.useRef(Z),{checkIsFormValid:G}=((e,n)=>{const{data:r,onChange:i,onValueChange:a}=e,{stripUnknown:o}=r||{},{hardValidationSchema:s}=bP(),{formValidationConfig:u}=AP(),{watch:c,getValues:l,formState:d,clearErrors:f}=n,{setFields:p,setField:h,getFormValues:m}=gP(n),[g,A]=t.useState({}),[y,_]=t.useState(!1),v=vP(u),b=vP(s),E=t.useRef(void 0),S=t.useRef(void 0),w=t.useCallback((e=!1)=>{if(!e)try{return s.validateSync(l()),!0}catch(e){return!1}return(async()=>{try{return await s.validate(l()),!0}catch(e){return!1}})()},[l,s]),x=t.useRef(async()=>{});return x.current=async()=>{const e=m(void 0,o),t=await w(!0);a&&Object.keys(u||{}).length&&(S.current===t&&i$(E.current,e)||a(e,t)),E.current=e,S.current=t},t.useEffect(()=>{const e=c((e,{name:t})=>{t?h(t,e[t]):p(e)});return()=>e.unsubscribe()},[]),t.useEffect(()=>{if(i&&Object.keys(u||{}).length){const e=c(async()=>{const e=await w(!0);i(m(void 0,o),e)});return w(!0).then(e=>i(m(void 0,o),e)),()=>e.unsubscribe()}},[w,i,c,u]),t.useEffect(()=>{const e=c(async()=>{await x.current()});return()=>e.unsubscribe()},[c]),t.useEffect(()=>{if(v){const e=e=>Object.entries(e).map(([e,{validationRules:t}])=>[e,t]),t=e(v),n=e(u);i$(t,n)||_(!0)}},[u]),t.useEffect(()=>{y&&b!==s&&x.current().then(()=>_(!1))},[y,s]),t.useEffect(()=>{const e=d.errors;if(e&&!QS(e)){const e=c(e=>{const t=Object.fromEntries(Object.entries(d.errors).filter(([e,t])=>"api"===t.type));t&&!QS(t)&&Object.keys(t).forEach(t=>{g[t]!==e[t]&&f(t)}),A(e)});return()=>e.unsubscribe()}},[d,c]),{checkIsFormValid:w}})(n,M);t.useImperativeHandle(r,()=>({addFieldEventListener:g,addCustomValidation:H,dispatchFieldEvent:A,getValues:e=>B(e,p),isDirty:F.isDirty,isValid:G,validate:R,removeFieldEventListener:y,reset:(e,t)=>{O(e,t),P("function"==typeof e?e(M.getValues())??d:e??d)},setErrors:W,clearErrors:$,setWarnings:K,setValue:L,submit:D(Y,V)}));const H=(e,t,n,r=!1)=>{XF.addCondition(e,t,n,T,r),C()},Y=t.useCallback(()=>{s?.(B(void 0,p))},[B,s,p]),V=t.useCallback(e=>{setTimeout(()=>u?.(e))},[u]),W=e=>{Object.entries(e).forEach(([e,t])=>{U.current.includes(e)&&(Array.isArray(t)?k(e,{type:"api",message:t[0]}):k(e,"object"==typeof t?{type:"api",message:JSON.stringify(t)}:{type:"api",message:t}))})},K=e=>{const t={};Object.entries(e).forEach(([e,n])=>{U.current.includes(e)&&(t[e]=n)}),E(t)};t.useEffect(()=>{z(N())},[]),vs(()=>{O(ps(d))},[d]),_s(()=>{I(i)},[i||{}]),t.useEffect(()=>{_(o)},[o]),t.useEffect(()=>{v(()=>D(Y,V))},[Y,V]),t.useEffect(()=>{b(c)},[c]),t.useEffect(()=>{U.current=Z},[Z]);const q=f?`frontend-engine-${f}`:"frontend-engine",Q=[a,l].join(" ").trim(),J=c?"form":"div";return i?e.jsx(Ce,{...M,children:e.jsx(J,{id:q,"data-testid":f?exports.TestHelper.generateId(f,"frontend-engine"):q,className:Q,noValidate:!0,onSubmit:D(Y,V),ref:r,children:e.jsx(WH,{})})}):e.jsxs(e.Fragment,{children:["Missing ",e.jsx("code",{children:"data"})," prop, unable to render Frontend Engine."]})}),qH=t.forwardRef((t,n)=>e.jsx(A$,{recaptchaSiteKey:t.recaptchaSiteKey,children:e.jsx(KH,{...t,ref:n})}));exports.AxiosApiClient=Al,exports.Description=eO,exports.ERROR_MESSAGES=Eg,exports.FileUploadContext=mU,exports.FrontendEngine=qH,exports.GeolocationPositionErrorWrapper=CH,exports.ImageContext=bU,exports.OneMapError=HF,exports.OneMapService=jF,exports.Prompt=nO,exports.RecaptchaContext=Ls,exports.Sanitize=zF,exports.commonjsGlobal=wt,exports.generateRandomId=wg,exports.lodash=BF,exports.useFieldEvent=v$,exports.useFormContext=xe,exports.useFrontendEngineComponent=()=>{const{addFieldEventListener:e,dispatchFieldEvent:t,removeFieldEventListener:n}=v$(),r=xe(),{setFieldValidationConfig:i,removeFieldValidationConfig:a}=AP();return{event:{addFieldEventListener:e,dispatchFieldEvent:t,removeFieldEventListener:n},formContext:r,validation:{setValidation:i,removeValidation:a}}},exports.usePrevious=vP,exports.useWindowHelper=EP;
1151
- //# sourceMappingURL=index.6a929030.js.map
1151
+ //# sourceMappingURL=index.c2370225.js.map