@oneblink/apps-react 8.14.0-beta.2 → 9.0.0-beta.1

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 (416) hide show
  1. package/dist/OneBlinkAutoSaveForm.d.ts +1 -1
  2. package/dist/OneBlinkAutoSaveForm.js +6 -8
  3. package/dist/OneBlinkAutoSaveForm.js.map +1 -1
  4. package/dist/OneBlinkForm.js +3 -2
  5. package/dist/OneBlinkForm.js.map +1 -1
  6. package/dist/OneBlinkFormBase.d.ts +1 -1
  7. package/dist/OneBlinkFormBase.js +49 -146
  8. package/dist/OneBlinkFormBase.js.map +1 -1
  9. package/dist/OneBlinkReadOnlyForm.d.ts +1 -1
  10. package/dist/OneBlinkReadOnlyForm.js +2 -1
  11. package/dist/OneBlinkReadOnlyForm.js.map +1 -1
  12. package/dist/PaymentReceipt.d.ts +1 -1
  13. package/dist/PaymentReceipt.js +9 -30
  14. package/dist/PaymentReceipt.js.map +1 -1
  15. package/dist/components/ArcGISWebMap.d.ts +3 -3
  16. package/dist/components/ArcGISWebMap.js +25 -38
  17. package/dist/components/ArcGISWebMap.js.map +1 -1
  18. package/dist/components/Clickable.d.ts +1 -1
  19. package/dist/components/Clickable.js +2 -1
  20. package/dist/components/Clickable.js.map +1 -1
  21. package/dist/components/ConfirmDialog.d.ts +2 -2
  22. package/dist/components/ConfirmDialog.js +7 -14
  23. package/dist/components/ConfirmDialog.js.map +1 -1
  24. package/dist/components/CopyToClipboardIconButton.d.ts +1 -1
  25. package/dist/components/CopyToClipboardIconButton.js +10 -14
  26. package/dist/components/CopyToClipboardIconButton.js.map +1 -1
  27. package/dist/components/CustomAccordion.d.ts +3 -20
  28. package/dist/components/ErrorSnackbar.d.ts +1 -1
  29. package/dist/components/ErrorSnackbar.js +6 -7
  30. package/dist/components/ErrorSnackbar.js.map +1 -1
  31. package/dist/components/ImageCropper/CropModal.d.ts +1 -1
  32. package/dist/components/ImageCropper/CropModal.js +2 -8
  33. package/dist/components/ImageCropper/CropModal.js.map +1 -1
  34. package/dist/components/ImageCropper/index.d.ts +1 -1
  35. package/dist/components/ImageCropper/index.js +3 -5
  36. package/dist/components/ImageCropper/index.js.map +1 -1
  37. package/dist/components/InputClear.js +2 -3
  38. package/dist/components/InputClear.js.map +1 -1
  39. package/dist/components/InputField.d.ts +3 -2
  40. package/dist/components/InputField.js +5 -2
  41. package/dist/components/InputField.js.map +1 -1
  42. package/dist/components/Lists.d.ts +1 -6
  43. package/dist/components/Lists.js +2 -2
  44. package/dist/components/Lists.js.map +1 -1
  45. package/dist/components/LoadingWithMessage.js +2 -6
  46. package/dist/components/LoadingWithMessage.js.map +1 -1
  47. package/dist/components/MaterialIcon.d.ts +2 -4
  48. package/dist/components/MaterialIcon.js +4 -4
  49. package/dist/components/MaterialIcon.js.map +1 -1
  50. package/dist/components/NotificationGrid.d.ts +2 -2
  51. package/dist/components/NotificationGrid.js +4 -7
  52. package/dist/components/NotificationGrid.js.map +1 -1
  53. package/dist/components/QuillHTML.d.ts +1 -1
  54. package/dist/components/QuillHTML.js +2 -1
  55. package/dist/components/QuillHTML.js.map +1 -1
  56. package/dist/components/SuccessSnackbar.d.ts +1 -1
  57. package/dist/components/SuccessSnackbar.js +3 -6
  58. package/dist/components/SuccessSnackbar.js.map +1 -1
  59. package/dist/components/ValidationErrorsCard.d.ts +2 -2
  60. package/dist/components/ValidationErrorsCard.js +32 -49
  61. package/dist/components/ValidationErrorsCard.js.map +1 -1
  62. package/dist/components/calendar-bookings/CalendarBookingsCancelForm.d.ts +1 -1
  63. package/dist/components/calendar-bookings/CalendarBookingsCancelForm.js +5 -6
  64. package/dist/components/calendar-bookings/CalendarBookingsCancelForm.js.map +1 -1
  65. package/dist/components/calendar-bookings/CalendarBookingsContainer.d.ts +1 -1
  66. package/dist/components/calendar-bookings/CalendarBookingsContainer.js +9 -11
  67. package/dist/components/calendar-bookings/CalendarBookingsContainer.js.map +1 -1
  68. package/dist/components/calendar-bookings/CalendarBookingsForm.d.ts +1 -1
  69. package/dist/components/calendar-bookings/CalendarBookingsForm.js +33 -45
  70. package/dist/components/calendar-bookings/CalendarBookingsForm.js.map +1 -1
  71. package/dist/components/calendar-bookings/CalendarBookingsProvider.d.ts +1 -1
  72. package/dist/components/calendar-bookings/CalendarBookingsProvider.js +2 -6
  73. package/dist/components/calendar-bookings/CalendarBookingsProvider.js.map +1 -1
  74. package/dist/components/calendar-bookings/CalendarBookingsReschedulingForm.d.ts +1 -1
  75. package/dist/components/calendar-bookings/CalendarBookingsReschedulingForm.js +5 -6
  76. package/dist/components/calendar-bookings/CalendarBookingsReschedulingForm.js.map +1 -1
  77. package/dist/components/calendar-bookings/ErrorModal.js +7 -11
  78. package/dist/components/calendar-bookings/ErrorModal.js.map +1 -1
  79. package/dist/components/downloadable-files/LayoutProvider.d.ts +1 -1
  80. package/dist/components/downloadable-files/LayoutProvider.js +2 -1
  81. package/dist/components/downloadable-files/LayoutProvider.js.map +1 -1
  82. package/dist/components/downloadable-files/index.d.ts +1 -1
  83. package/dist/components/downloadable-files/index.js +3 -5
  84. package/dist/components/downloadable-files/index.js.map +1 -1
  85. package/dist/components/downloadable-files/resource-components.d.ts +3 -3
  86. package/dist/components/downloadable-files/resource-components.js +9 -32
  87. package/dist/components/downloadable-files/resource-components.js.map +1 -1
  88. package/dist/components/formStore/FormStoreTableProvider.d.ts +1 -1
  89. package/dist/components/formStore/FormStoreTableProvider.js +5 -15
  90. package/dist/components/formStore/FormStoreTableProvider.js.map +1 -1
  91. package/dist/components/formStore/OneBlinkFormStoreClearFiltersButton.d.ts +1 -1
  92. package/dist/components/formStore/OneBlinkFormStoreClearFiltersButton.js +3 -2
  93. package/dist/components/formStore/OneBlinkFormStoreClearFiltersButton.js.map +1 -1
  94. package/dist/components/formStore/OneBlinkFormStoreColumnsButton.d.ts +1 -1
  95. package/dist/components/formStore/OneBlinkFormStoreColumnsButton.js +21 -54
  96. package/dist/components/formStore/OneBlinkFormStoreColumnsButton.js.map +1 -1
  97. package/dist/components/formStore/OneBlinkFormStoreDownloadButton.d.ts +2 -2
  98. package/dist/components/formStore/OneBlinkFormStoreDownloadButton.js +7 -26
  99. package/dist/components/formStore/OneBlinkFormStoreDownloadButton.js.map +1 -1
  100. package/dist/components/formStore/OneBlinkFormStoreProvider.d.ts +1 -1
  101. package/dist/components/formStore/OneBlinkFormStoreProvider.js +4 -5
  102. package/dist/components/formStore/OneBlinkFormStoreProvider.js.map +1 -1
  103. package/dist/components/formStore/OneBlinkFormStoreRefreshButton.d.ts +1 -1
  104. package/dist/components/formStore/OneBlinkFormStoreRefreshButton.js +3 -2
  105. package/dist/components/formStore/OneBlinkFormStoreRefreshButton.js.map +1 -1
  106. package/dist/components/formStore/OneBlinkFormStoreTable.d.ts +1 -1
  107. package/dist/components/formStore/OneBlinkFormStoreTable.js +128 -94
  108. package/dist/components/formStore/OneBlinkFormStoreTable.js.map +1 -1
  109. package/dist/components/formStore/display/ElementDisplay.d.ts +3 -4
  110. package/dist/components/formStore/display/ElementDisplay.js +9 -12
  111. package/dist/components/formStore/display/ElementDisplay.js.map +1 -1
  112. package/dist/components/formStore/display/FormStoreIcon.d.ts +1 -1
  113. package/dist/components/formStore/display/FormStoreIcon.js +2 -2
  114. package/dist/components/formStore/display/FormStoreIcon.js.map +1 -1
  115. package/dist/components/formStore/table/ActionedByTableCell.d.ts +1 -1
  116. package/dist/components/formStore/table/ActionedByTableCell.js +6 -7
  117. package/dist/components/formStore/table/ActionedByTableCell.js.map +1 -1
  118. package/dist/components/formStore/table/ColumnFilters.d.ts +3 -3
  119. package/dist/components/formStore/table/ColumnFilters.js +84 -100
  120. package/dist/components/formStore/table/ColumnFilters.js.map +1 -1
  121. package/dist/components/formStore/table/FormElementTableCell.d.ts +1 -1
  122. package/dist/components/formStore/table/FormElementTableCell.js +34 -97
  123. package/dist/components/formStore/table/FormElementTableCell.js.map +1 -1
  124. package/dist/components/formStore/table/HeaderCellMoreButton.d.ts +4 -4
  125. package/dist/components/formStore/table/HeaderCellMoreButton.js +26 -32
  126. package/dist/components/formStore/table/HeaderCellMoreButton.js.map +1 -1
  127. package/dist/components/formStore/table/Pickers.d.ts +4 -4
  128. package/dist/components/formStore/table/Pickers.js +14 -13
  129. package/dist/components/formStore/table/Pickers.js.map +1 -1
  130. package/dist/components/formStore/table/RepeatableSetCell.js +16 -21
  131. package/dist/components/formStore/table/RepeatableSetCell.js.map +1 -1
  132. package/dist/components/formStore/table/RepeatableSetCellAccordion.js +2 -4
  133. package/dist/components/formStore/table/RepeatableSetCellAccordion.js.map +1 -1
  134. package/dist/components/formStore/table/TableCellCopyButton.d.ts +1 -1
  135. package/dist/components/formStore/table/TableCellCopyButton.js +2 -3
  136. package/dist/components/formStore/table/TableCellCopyButton.js.map +1 -1
  137. package/dist/components/formStore/table/generateColumns.d.ts +5 -6
  138. package/dist/components/formStore/table/generateColumns.js +23 -18
  139. package/dist/components/formStore/table/generateColumns.js.map +1 -1
  140. package/dist/components/formStore/table/getVersionedState.d.ts +4 -3
  141. package/dist/components/formStore/table/getVersionedState.js +23 -6
  142. package/dist/components/formStore/table/getVersionedState.js.map +1 -1
  143. package/dist/components/formStore/table/useFormStoreTable.d.ts +146 -37
  144. package/dist/components/formStore/table/useFormStoreTable.js +266 -199
  145. package/dist/components/formStore/table/useFormStoreTable.js.map +1 -1
  146. package/dist/components/formStore/useFormStoreTableContext.d.ts +142 -33
  147. package/dist/components/messages/ErrorMessage.js +3 -3
  148. package/dist/components/messages/ErrorMessage.js.map +1 -1
  149. package/dist/components/messages/LargeIconMessage.js +2 -6
  150. package/dist/components/messages/LargeIconMessage.js.map +1 -1
  151. package/dist/components/messages/NoResourcesYet.d.ts +1 -1
  152. package/dist/components/messages/NoResourcesYet.js +2 -1
  153. package/dist/components/messages/NoResourcesYet.js.map +1 -1
  154. package/dist/components/mfa/MfaDialog.d.ts +1 -1
  155. package/dist/components/mfa/MfaDialog.js +9 -48
  156. package/dist/components/mfa/MfaDialog.js.map +1 -1
  157. package/dist/components/mfa/MultiFactorAuthentication.d.ts +2 -5
  158. package/dist/components/mfa/MultiFactorAuthentication.js +14 -45
  159. package/dist/components/mfa/MultiFactorAuthentication.js.map +1 -1
  160. package/dist/components/payments/PaymentForm.d.ts +1 -1
  161. package/dist/components/payments/PaymentForm.js +4 -9
  162. package/dist/components/payments/PaymentForm.js.map +1 -1
  163. package/dist/components/payments/WestpacQuickStreamPaymentForm.d.ts +1 -1
  164. package/dist/components/payments/WestpacQuickStreamPaymentForm.js +11 -45
  165. package/dist/components/payments/WestpacQuickStreamPaymentForm.js.map +1 -1
  166. package/dist/components/receipts/Receipt.d.ts +1 -1
  167. package/dist/components/receipts/Receipt.js +2 -2
  168. package/dist/components/receipts/Receipt.js.map +1 -1
  169. package/dist/components/receipts/ReceiptButton.d.ts +1 -1
  170. package/dist/components/receipts/ReceiptButton.js +3 -2
  171. package/dist/components/receipts/ReceiptButton.js.map +1 -1
  172. package/dist/components/receipts/ReceiptList.d.ts +1 -1
  173. package/dist/components/receipts/ReceiptList.js +2 -9
  174. package/dist/components/receipts/ReceiptList.js.map +1 -1
  175. package/dist/components/receipts/ReceiptListItem.d.ts +1 -1
  176. package/dist/components/receipts/ReceiptListItem.js +2 -11
  177. package/dist/components/receipts/ReceiptListItem.js.map +1 -1
  178. package/dist/components/renderer/AnnotationModal.d.ts +1 -1
  179. package/dist/components/renderer/AnnotationModal.js +6 -14
  180. package/dist/components/renderer/AnnotationModal.js.map +1 -1
  181. package/dist/components/renderer/AutocompleteDropdown.d.ts +1 -1
  182. package/dist/components/renderer/AutocompleteDropdown.js +15 -34
  183. package/dist/components/renderer/AutocompleteDropdown.js.map +1 -1
  184. package/dist/components/renderer/CopyToClipboardButton.d.ts +1 -1
  185. package/dist/components/renderer/CopyToClipboardButton.js +2 -4
  186. package/dist/components/renderer/CopyToClipboardButton.js.map +1 -1
  187. package/dist/components/renderer/CustomisableButtonInner.js +2 -4
  188. package/dist/components/renderer/CustomisableButtonInner.js.map +1 -1
  189. package/dist/components/renderer/FormElementLabelContainer.d.ts +3 -3
  190. package/dist/components/renderer/FormElementLabelContainer.js +7 -14
  191. package/dist/components/renderer/FormElementLabelContainer.js.map +1 -1
  192. package/dist/components/renderer/FormElementOptions.d.ts +1 -1
  193. package/dist/components/renderer/FormElementOptions.js +4 -5
  194. package/dist/components/renderer/FormElementOptions.js.map +1 -1
  195. package/dist/components/renderer/FormElementValidationMessage.js +3 -5
  196. package/dist/components/renderer/FormElementValidationMessage.js.map +1 -1
  197. package/dist/components/renderer/LookupButton.d.ts +1 -1
  198. package/dist/components/renderer/LookupButton.js +4 -8
  199. package/dist/components/renderer/LookupButton.js.map +1 -1
  200. package/dist/components/renderer/LookupNotification.d.ts +1 -1
  201. package/dist/components/renderer/LookupNotification.js +14 -36
  202. package/dist/components/renderer/LookupNotification.js.map +1 -1
  203. package/dist/components/renderer/Modal.d.ts +3 -3
  204. package/dist/components/renderer/Modal.js +5 -10
  205. package/dist/components/renderer/Modal.js.map +1 -1
  206. package/dist/components/renderer/OnLoading.d.ts +1 -1
  207. package/dist/components/renderer/OnLoading.js +3 -3
  208. package/dist/components/renderer/OnLoading.js.map +1 -1
  209. package/dist/components/renderer/OneBlinkAppsErrorOriginalMessage.d.ts +1 -1
  210. package/dist/components/renderer/OneBlinkAppsErrorOriginalMessage.js +2 -4
  211. package/dist/components/renderer/OneBlinkAppsErrorOriginalMessage.js.map +1 -1
  212. package/dist/components/renderer/OneBlinkFormElements.d.ts +1 -1
  213. package/dist/components/renderer/OneBlinkFormElements.js +61 -90
  214. package/dist/components/renderer/OneBlinkFormElements.js.map +1 -1
  215. package/dist/components/renderer/PageFormElements.d.ts +1 -1
  216. package/dist/components/renderer/PageFormElements.js +3 -5
  217. package/dist/components/renderer/PageFormElements.js.map +1 -1
  218. package/dist/components/renderer/ProgressBar.d.ts +1 -1
  219. package/dist/components/renderer/ProgressBar.js +2 -1
  220. package/dist/components/renderer/ProgressBar.js.map +1 -1
  221. package/dist/components/renderer/ReverseGeocode.d.ts +1 -1
  222. package/dist/components/renderer/ReverseGeocode.js +2 -1
  223. package/dist/components/renderer/ReverseGeocode.js.map +1 -1
  224. package/dist/components/renderer/ToggleAllCheckbox.js +4 -5
  225. package/dist/components/renderer/ToggleAllCheckbox.js.map +1 -1
  226. package/dist/components/renderer/Tooltip.d.ts +1 -1
  227. package/dist/components/renderer/Tooltip.js +3 -1
  228. package/dist/components/renderer/Tooltip.js.map +1 -1
  229. package/dist/components/renderer/attachments/AttachmentStatus.d.ts +1 -1
  230. package/dist/components/renderer/attachments/AttachmentStatus.js +6 -15
  231. package/dist/components/renderer/attachments/AttachmentStatus.js.map +1 -1
  232. package/dist/components/renderer/attachments/DropdownMenu.js +30 -42
  233. package/dist/components/renderer/attachments/DropdownMenu.js.map +1 -1
  234. package/dist/components/renderer/attachments/FileCard.d.ts +1 -1
  235. package/dist/components/renderer/attachments/FileCard.js +2 -10
  236. package/dist/components/renderer/attachments/FileCard.js.map +1 -1
  237. package/dist/components/renderer/attachments/FileCardContent.d.ts +1 -1
  238. package/dist/components/renderer/attachments/FileCardContent.js +3 -4
  239. package/dist/components/renderer/attachments/FileCardContent.js.map +1 -1
  240. package/dist/components/renderer/attachments/ImagePreviewUnavailable.d.ts +1 -1
  241. package/dist/components/renderer/attachments/ImagePreviewUnavailable.js +2 -5
  242. package/dist/components/renderer/attachments/ImagePreviewUnavailable.js.map +1 -1
  243. package/dist/components/renderer/attachments/ProgressBar.js +2 -4
  244. package/dist/components/renderer/attachments/ProgressBar.js.map +1 -1
  245. package/dist/form-elements/ComplianceButton.js +3 -4
  246. package/dist/form-elements/ComplianceButton.js.map +1 -1
  247. package/dist/form-elements/FormElementABN.d.ts +1 -1
  248. package/dist/form-elements/FormElementABN.js +18 -28
  249. package/dist/form-elements/FormElementABN.js.map +1 -1
  250. package/dist/form-elements/FormElementAPINSWLiquorLicence.d.ts +2 -2
  251. package/dist/form-elements/FormElementAPINSWLiquorLicence.js +3 -21
  252. package/dist/form-elements/FormElementAPINSWLiquorLicence.js.map +1 -1
  253. package/dist/form-elements/FormElementArcGISWebMap.d.ts +1 -1
  254. package/dist/form-elements/FormElementArcGISWebMap.js +21 -36
  255. package/dist/form-elements/FormElementArcGISWebMap.js.map +1 -1
  256. package/dist/form-elements/FormElementAutocomplete.d.ts +1 -1
  257. package/dist/form-elements/FormElementAutocomplete.js +5 -9
  258. package/dist/form-elements/FormElementAutocomplete.js.map +1 -1
  259. package/dist/form-elements/FormElementBSB.d.ts +1 -1
  260. package/dist/form-elements/FormElementBSB.js +17 -30
  261. package/dist/form-elements/FormElementBSB.js.map +1 -1
  262. package/dist/form-elements/FormElementBarcodeScanner.d.ts +1 -1
  263. package/dist/form-elements/FormElementBarcodeScanner.js +16 -50
  264. package/dist/form-elements/FormElementBarcodeScanner.js.map +1 -1
  265. package/dist/form-elements/FormElementBoolean.d.ts +1 -1
  266. package/dist/form-elements/FormElementBoolean.js +4 -4
  267. package/dist/form-elements/FormElementBoolean.js.map +1 -1
  268. package/dist/form-elements/FormElementCalculation.d.ts +1 -1
  269. package/dist/form-elements/FormElementCalculation.js +2 -9
  270. package/dist/form-elements/FormElementCalculation.js.map +1 -1
  271. package/dist/form-elements/FormElementCamera.d.ts +1 -1
  272. package/dist/form-elements/FormElementCamera.js +7 -53
  273. package/dist/form-elements/FormElementCamera.js.map +1 -1
  274. package/dist/form-elements/FormElementCaptcha.d.ts +1 -1
  275. package/dist/form-elements/FormElementCaptcha.js +2 -4
  276. package/dist/form-elements/FormElementCaptcha.js.map +1 -1
  277. package/dist/form-elements/FormElementCheckBoxes.d.ts +1 -1
  278. package/dist/form-elements/FormElementCheckBoxes.js +23 -33
  279. package/dist/form-elements/FormElementCheckBoxes.js.map +1 -1
  280. package/dist/form-elements/FormElementCivicaNameRecord.d.ts +1 -1
  281. package/dist/form-elements/FormElementCivicaNameRecord.js +2 -1
  282. package/dist/form-elements/FormElementCivicaNameRecord.js.map +1 -1
  283. package/dist/form-elements/FormElementCivicaStreetName.d.ts +1 -1
  284. package/dist/form-elements/FormElementCivicaStreetName.js +2 -4
  285. package/dist/form-elements/FormElementCivicaStreetName.js.map +1 -1
  286. package/dist/form-elements/FormElementCompliance.d.ts +1 -1
  287. package/dist/form-elements/FormElementCompliance.js +13 -25
  288. package/dist/form-elements/FormElementCompliance.js.map +1 -1
  289. package/dist/form-elements/FormElementDate.d.ts +1 -1
  290. package/dist/form-elements/FormElementDate.js +2 -9
  291. package/dist/form-elements/FormElementDate.js.map +1 -1
  292. package/dist/form-elements/FormElementDateTime.d.ts +1 -1
  293. package/dist/form-elements/FormElementDateTime.js +2 -9
  294. package/dist/form-elements/FormElementDateTime.js.map +1 -1
  295. package/dist/form-elements/FormElementEmail.d.ts +1 -1
  296. package/dist/form-elements/FormElementEmail.js +4 -13
  297. package/dist/form-elements/FormElementEmail.js.map +1 -1
  298. package/dist/form-elements/FormElementFile.js +2 -12
  299. package/dist/form-elements/FormElementFile.js.map +1 -1
  300. package/dist/form-elements/FormElementFiles.d.ts +1 -1
  301. package/dist/form-elements/FormElementFiles.js +9 -17
  302. package/dist/form-elements/FormElementFiles.js.map +1 -1
  303. package/dist/form-elements/FormElementForm.d.ts +1 -1
  304. package/dist/form-elements/FormElementForm.js +2 -1
  305. package/dist/form-elements/FormElementForm.js.map +1 -1
  306. package/dist/form-elements/FormElementFreshdeskDependentField.d.ts +1 -1
  307. package/dist/form-elements/FormElementFreshdeskDependentField.js +2 -1
  308. package/dist/form-elements/FormElementFreshdeskDependentField.js.map +1 -1
  309. package/dist/form-elements/FormElementGeoscapeAddress.d.ts +1 -1
  310. package/dist/form-elements/FormElementGeoscapeAddress.js +2 -4
  311. package/dist/form-elements/FormElementGeoscapeAddress.js.map +1 -1
  312. package/dist/form-elements/FormElementGoogleAddress.d.ts +1 -1
  313. package/dist/form-elements/FormElementGoogleAddress.js +2 -7
  314. package/dist/form-elements/FormElementGoogleAddress.js.map +1 -1
  315. package/dist/form-elements/FormElementHTML.d.ts +1 -1
  316. package/dist/form-elements/FormElementHTML.js +2 -3
  317. package/dist/form-elements/FormElementHTML.js.map +1 -1
  318. package/dist/form-elements/FormElementHeading.d.ts +1 -1
  319. package/dist/form-elements/FormElementHeading.js +7 -8
  320. package/dist/form-elements/FormElementHeading.js.map +1 -1
  321. package/dist/form-elements/FormElementImage.d.ts +1 -1
  322. package/dist/form-elements/FormElementImage.js +3 -3
  323. package/dist/form-elements/FormElementImage.js.map +1 -1
  324. package/dist/form-elements/FormElementLocation.d.ts +1 -1
  325. package/dist/form-elements/FormElementLocation.js +16 -47
  326. package/dist/form-elements/FormElementLocation.js.map +1 -1
  327. package/dist/form-elements/FormElementLookupButton.d.ts +2 -3
  328. package/dist/form-elements/FormElementLookupButton.js +4 -7
  329. package/dist/form-elements/FormElementLookupButton.js.map +1 -1
  330. package/dist/form-elements/FormElementNumber.d.ts +1 -1
  331. package/dist/form-elements/FormElementNumber.js +3 -14
  332. package/dist/form-elements/FormElementNumber.js.map +1 -1
  333. package/dist/form-elements/FormElementPointAddress.d.ts +2 -2
  334. package/dist/form-elements/FormElementPointAddress.js +6 -13
  335. package/dist/form-elements/FormElementPointAddress.js.map +1 -1
  336. package/dist/form-elements/FormElementPointAddressV3.d.ts +1 -1
  337. package/dist/form-elements/FormElementPointAddressV3.js +2 -9
  338. package/dist/form-elements/FormElementPointAddressV3.js.map +1 -1
  339. package/dist/form-elements/FormElementPointCadastralParcel.d.ts +1 -1
  340. package/dist/form-elements/FormElementPointCadastralParcel.js +14 -26
  341. package/dist/form-elements/FormElementPointCadastralParcel.js.map +1 -1
  342. package/dist/form-elements/FormElementRadio.d.ts +1 -1
  343. package/dist/form-elements/FormElementRadio.js +24 -30
  344. package/dist/form-elements/FormElementRadio.js.map +1 -1
  345. package/dist/form-elements/FormElementRepeatableSet.d.ts +1 -1
  346. package/dist/form-elements/FormElementRepeatableSet.js +21 -39
  347. package/dist/form-elements/FormElementRepeatableSet.js.map +1 -1
  348. package/dist/form-elements/FormElementSection.d.ts +1 -1
  349. package/dist/form-elements/FormElementSection.js +16 -34
  350. package/dist/form-elements/FormElementSection.js.map +1 -1
  351. package/dist/form-elements/FormElementSelect.d.ts +1 -1
  352. package/dist/form-elements/FormElementSelect.js +12 -23
  353. package/dist/form-elements/FormElementSelect.js.map +1 -1
  354. package/dist/form-elements/FormElementSignature.d.ts +1 -1
  355. package/dist/form-elements/FormElementSignature.js +21 -46
  356. package/dist/form-elements/FormElementSignature.js.map +1 -1
  357. package/dist/form-elements/FormElementSummary.d.ts +1 -1
  358. package/dist/form-elements/FormElementSummary.js +5 -4
  359. package/dist/form-elements/FormElementSummary.js.map +1 -1
  360. package/dist/form-elements/FormElementTelephone.d.ts +1 -1
  361. package/dist/form-elements/FormElementTelephone.js +4 -13
  362. package/dist/form-elements/FormElementTelephone.js.map +1 -1
  363. package/dist/form-elements/FormElementText.d.ts +1 -1
  364. package/dist/form-elements/FormElementText.js +6 -21
  365. package/dist/form-elements/FormElementText.js.map +1 -1
  366. package/dist/form-elements/FormElementTextarea.d.ts +1 -1
  367. package/dist/form-elements/FormElementTextarea.js +6 -20
  368. package/dist/form-elements/FormElementTextarea.js.map +1 -1
  369. package/dist/form-elements/FormElementTime.d.ts +1 -1
  370. package/dist/form-elements/FormElementTime.js +2 -9
  371. package/dist/form-elements/FormElementTime.js.map +1 -1
  372. package/dist/form-elements/OptionButton.js +3 -5
  373. package/dist/form-elements/OptionButton.js.map +1 -1
  374. package/dist/hooks/attachments/useAttachmentBlobs.d.ts +1 -1
  375. package/dist/hooks/attachments/useAttachmentBlobs.js +2 -1
  376. package/dist/hooks/attachments/useAttachmentBlobs.js.map +1 -1
  377. package/dist/hooks/form-date-picker/useFormDatePickerProps.d.ts +7 -8
  378. package/dist/hooks/form-date-picker/useFormDatePickerProps.js +8 -10
  379. package/dist/hooks/form-date-picker/useFormDatePickerProps.js.map +1 -1
  380. package/dist/hooks/useAuth.d.ts +1 -1
  381. package/dist/hooks/useAuth.js +2 -1
  382. package/dist/hooks/useAuth.js.map +1 -1
  383. package/dist/hooks/useDrafts.d.ts +1 -1
  384. package/dist/hooks/useDrafts.js +2 -1
  385. package/dist/hooks/useDrafts.js.map +1 -1
  386. package/dist/hooks/useDynamicOptionsLoaderState.d.ts +1 -1
  387. package/dist/hooks/useDynamicOptionsLoaderState.js +4 -13
  388. package/dist/hooks/useDynamicOptionsLoaderState.js.map +1 -1
  389. package/dist/hooks/useFormElementLookups.d.ts +1 -1
  390. package/dist/hooks/useFormElementLookups.js +2 -1
  391. package/dist/hooks/useFormElementLookups.js.map +1 -1
  392. package/dist/hooks/useFormSubmissionModelContext.d.ts +1 -1
  393. package/dist/hooks/useFormSubmissionModelContext.js +2 -1
  394. package/dist/hooks/useFormSubmissionModelContext.js.map +1 -1
  395. package/dist/hooks/useFormSubmissionState.d.ts +1 -1
  396. package/dist/hooks/useFormSubmissionState.js +1 -1
  397. package/dist/hooks/useFormSubmissionState.js.map +1 -1
  398. package/dist/hooks/useIsHovering.d.ts +1 -1
  399. package/dist/hooks/useIsHovering.js +4 -4
  400. package/dist/hooks/useIsHovering.js.map +1 -1
  401. package/dist/hooks/useIsOffline.d.ts +1 -1
  402. package/dist/hooks/useIsOffline.js +2 -1
  403. package/dist/hooks/useIsOffline.js.map +1 -1
  404. package/dist/hooks/useIsPageVisible.d.ts +1 -1
  405. package/dist/hooks/useIsPageVisible.js +2 -1
  406. package/dist/hooks/useIsPageVisible.js.map +1 -1
  407. package/dist/hooks/useMfa.d.ts +1 -1
  408. package/dist/hooks/useMfa.js +2 -1
  409. package/dist/hooks/useMfa.js.map +1 -1
  410. package/dist/hooks/usePages.d.ts +1 -1
  411. package/dist/hooks/usePendingSubmissions.d.ts +1 -1
  412. package/dist/hooks/usePendingSubmissions.js +2 -1
  413. package/dist/hooks/usePendingSubmissions.js.map +1 -1
  414. package/dist/hooks/useReCAPTCHAProps.d.ts +1 -1
  415. package/dist/hooks/useReCAPTCHAProps.js.map +1 -1
  416. package/package.json +21 -25
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
2
  export default function QuillHTML({ html, ...props }: React.ComponentProps<'div'> & {
3
3
  html: string;
4
- }): React.JSX.Element;
4
+ }): import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import * as React from 'react';
2
3
  import clsx from 'clsx';
3
4
  import sanitizeHtml from '../services/sanitize-html';
@@ -7,7 +8,7 @@ export default function QuillHTML({ html, ...props }) {
7
8
  const quillLegacyListsIndicator = 'ql-indent-';
8
9
  return [sanitizedHtml, sanitizedHtml.includes(quillLegacyListsIndicator)];
9
10
  }, [html]);
10
- return (React.createElement("div", { ...props, className: clsx(props.className, 'ob-quill-content', {
11
+ return (_jsx("div", { ...props, className: clsx(props.className, 'ob-quill-content', {
11
12
  'ob-quill-legacy-content': includesLegacyLists,
12
13
  // "content" is a bulma class: https://bulma.io/documentation/elements/content/
13
14
  content: !includesLegacyLists,
@@ -1 +1 @@
1
- {"version":3,"file":"QuillHTML.js","sourceRoot":"","sources":["../../src/components/QuillHTML.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,YAAY,MAAM,2BAA2B,CAAA;AAEpD,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,IAAI,EACJ,GAAG,KAAK,EAGT;IACC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACvD,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QACxC,MAAM,yBAAyB,GAAG,YAAY,CAAA;QAC9C,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAA;IAC3E,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IACV,OAAO,CACL,gCACM,KAAK,EACT,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAkB,EAAE;YACnD,yBAAyB,EAAE,mBAAmB;YAC9C,+EAA+E;YAC/E,OAAO,EAAE,CAAC,mBAAmB;SAC9B,CAAC;QACF,2CAA2C;QAC3C,uBAAuB,EAAE;YACvB,MAAM;SACP,GACD,CACH,CAAA;AACH,CAAC","sourcesContent":["import * as React from 'react'\nimport clsx from 'clsx'\nimport sanitizeHtml from '../services/sanitize-html'\n\nexport default function QuillHTML({\n html,\n ...props\n}: React.ComponentProps<'div'> & {\n html: string\n}) {\n const [__html, includesLegacyLists] = React.useMemo(() => {\n const sanitizedHtml = sanitizeHtml(html)\n const quillLegacyListsIndicator = 'ql-indent-'\n return [sanitizedHtml, sanitizedHtml.includes(quillLegacyListsIndicator)]\n }, [html])\n return (\n <div\n {...props}\n className={clsx(props.className, 'ob-quill-content', {\n 'ob-quill-legacy-content': includesLegacyLists,\n // \"content\" is a bulma class: https://bulma.io/documentation/elements/content/\n content: !includesLegacyLists,\n })}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{\n __html,\n }}\n />\n )\n}\n"]}
1
+ {"version":3,"file":"QuillHTML.js","sourceRoot":"","sources":["../../src/components/QuillHTML.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,YAAY,MAAM,2BAA2B,CAAA;AAEpD,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,IAAI,EACJ,GAAG,KAAK,EAGT;IACC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACvD,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QACxC,MAAM,yBAAyB,GAAG,YAAY,CAAA;QAC9C,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAA;IAC3E,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IACV,OAAO,CACL,iBACM,KAAK,EACT,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAkB,EAAE;YACnD,yBAAyB,EAAE,mBAAmB;YAC9C,+EAA+E;YAC/E,OAAO,EAAE,CAAC,mBAAmB;SAC9B,CAAC;QACF,2CAA2C;QAC3C,uBAAuB,EAAE;YACvB,MAAM;SACP,GACD,CACH,CAAA;AACH,CAAC","sourcesContent":["import * as React from 'react'\nimport clsx from 'clsx'\nimport sanitizeHtml from '../services/sanitize-html'\n\nexport default function QuillHTML({\n html,\n ...props\n}: React.ComponentProps<'div'> & {\n html: string\n}) {\n const [__html, includesLegacyLists] = React.useMemo(() => {\n const sanitizedHtml = sanitizeHtml(html)\n const quillLegacyListsIndicator = 'ql-indent-'\n return [sanitizedHtml, sanitizedHtml.includes(quillLegacyListsIndicator)]\n }, [html])\n return (\n <div\n {...props}\n className={clsx(props.className, 'ob-quill-content', {\n 'ob-quill-legacy-content': includesLegacyLists,\n // \"content\" is a bulma class: https://bulma.io/documentation/elements/content/\n content: !includesLegacyLists,\n })}\n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML={{\n __html,\n }}\n />\n )\n}\n"]}
@@ -3,6 +3,6 @@ declare function SuccessSnackbar({ open, onClose, children, }: {
3
3
  open: boolean;
4
4
  children: React.ReactNode;
5
5
  onClose: (isOpen: false) => void;
6
- }): React.JSX.Element;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
7
  declare const _default: React.MemoExoticComponent<typeof SuccessSnackbar>;
8
8
  export default _default;
@@ -1,7 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import * as React from 'react';
2
3
  import { Grid, Icon, Snackbar, SnackbarContent } from '@mui/material';
3
4
  function SuccessSnackbar({ open, onClose, children, }) {
4
- return (React.createElement(Snackbar, { anchorOrigin: {
5
+ return (_jsx(Snackbar, { anchorOrigin: {
5
6
  vertical: 'bottom',
6
7
  horizontal: 'right',
7
8
  }, open: open, onClose: (event, reason) => {
@@ -9,11 +10,7 @@ function SuccessSnackbar({ open, onClose, children, }) {
9
10
  return;
10
11
  }
11
12
  onClose(false);
12
- }, autoHideDuration: 3000 },
13
- React.createElement(SnackbarContent, { sx: { bgcolor: 'success.main' }, message: React.createElement(Grid, { container: true, spacing: 2, alignItems: "center" },
14
- React.createElement(Grid, { item: true, xs: "auto" },
15
- React.createElement(Icon, null, "check_circle")),
16
- React.createElement(Grid, { item: true, xs: true }, children)) })));
13
+ }, autoHideDuration: 3000, children: _jsx(SnackbarContent, { sx: { bgcolor: 'success.main' }, message: _jsxs(Grid, { container: true, spacing: 2, alignItems: "center", children: [_jsx(Grid, { size: { xs: 'auto' }, children: _jsx(Icon, { children: "check_circle" }) }), _jsx(Grid, { size: { xs: 'grow' }, children: children })] }) }) }));
17
14
  }
18
15
  export default React.memo(SuccessSnackbar);
19
16
  //# sourceMappingURL=SuccessSnackbar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SuccessSnackbar.js","sourceRoot":"","sources":["../../src/components/SuccessSnackbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAErE,SAAS,eAAe,CAAC,EACvB,IAAI,EACJ,OAAO,EACP,QAAQ,GAKT;IACC,OAAO,CACL,oBAAC,QAAQ,IACP,YAAY,EAAE;YACZ,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,OAAO;SACpB,EACD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACzB,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;gBAC3B,OAAM;YACR,CAAC;YAED,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC,EACD,gBAAgB,EAAE,IAAI;QAEtB,oBAAC,eAAe,IACd,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAC/B,OAAO,EACL,oBAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ;gBAC7C,oBAAC,IAAI,IAAC,IAAI,QAAC,EAAE,EAAC,MAAM;oBAClB,oBAAC,IAAI,uBAAoB,CACpB;gBACP,oBAAC,IAAI,IAAC,IAAI,QAAC,EAAE,UACV,QAAQ,CACJ,CACF,GAET,CACO,CACZ,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA","sourcesContent":["import * as React from 'react'\nimport { Grid, Icon, Snackbar, SnackbarContent } from '@mui/material'\n\nfunction SuccessSnackbar({\n open,\n onClose,\n children,\n}: {\n open: boolean\n children: React.ReactNode\n onClose: (isOpen: false) => void\n}) {\n return (\n <Snackbar\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right',\n }}\n open={open}\n onClose={(event, reason) => {\n if (reason === 'clickaway') {\n return\n }\n\n onClose(false)\n }}\n autoHideDuration={3000}\n >\n <SnackbarContent\n sx={{ bgcolor: 'success.main' }}\n message={\n <Grid container spacing={2} alignItems=\"center\">\n <Grid item xs=\"auto\">\n <Icon>check_circle</Icon>\n </Grid>\n <Grid item xs>\n {children}\n </Grid>\n </Grid>\n }\n />\n </Snackbar>\n )\n}\n\nexport default React.memo(SuccessSnackbar)\n"]}
1
+ {"version":3,"file":"SuccessSnackbar.js","sourceRoot":"","sources":["../../src/components/SuccessSnackbar.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAErE,SAAS,eAAe,CAAC,EACvB,IAAI,EACJ,OAAO,EACP,QAAQ,GAKT;IACC,OAAO,CACL,KAAC,QAAQ,IACP,YAAY,EAAE;YACZ,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,OAAO;SACpB,EACD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACzB,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;gBAC3B,OAAM;YACR,CAAC;YAED,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC,EACD,gBAAgB,EAAE,IAAI,YAEtB,KAAC,eAAe,IACd,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAC/B,OAAO,EACL,MAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ,aAC7C,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,YACxB,KAAC,IAAI,+BAAoB,GACpB,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,YAAG,QAAQ,GAAQ,IACxC,GAET,GACO,CACZ,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA","sourcesContent":["import * as React from 'react'\nimport { Grid, Icon, Snackbar, SnackbarContent } from '@mui/material'\n\nfunction SuccessSnackbar({\n open,\n onClose,\n children,\n}: {\n open: boolean\n children: React.ReactNode\n onClose: (isOpen: false) => void\n}) {\n return (\n <Snackbar\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right',\n }}\n open={open}\n onClose={(event, reason) => {\n if (reason === 'clickaway') {\n return\n }\n\n onClose(false)\n }}\n autoHideDuration={3000}\n >\n <SnackbarContent\n sx={{ bgcolor: 'success.main' }}\n message={\n <Grid container spacing={2} alignItems=\"center\">\n <Grid size={{ xs: 'auto' }}>\n <Icon>check_circle</Icon>\n </Grid>\n <Grid size={{ xs: 'grow' }}>{children}</Grid>\n </Grid>\n }\n />\n </Snackbar>\n )\n}\n\nexport default React.memo(SuccessSnackbar)\n"]}
@@ -9,6 +9,6 @@ declare const _default: React.MemoExoticComponent<({ formElementsValidation, vis
9
9
  setPageId: ReturnType<typeof usePages>["setPageId"];
10
10
  navigationTopOffset: number | "CALCULATE";
11
11
  scrollableContainerId?: string;
12
- validationErrorToastFocusElementRef: React.RefObject<HTMLButtonElement>;
13
- }) => React.JSX.Element>;
12
+ validationErrorToastFocusElementRef: React.RefObject<HTMLButtonElement | null>;
13
+ }) => import("react/jsx-runtime").JSX.Element>;
14
14
  export default _default;
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import { IconButton, Collapse, Tooltip } from '@mui/material';
2
3
  import * as React from 'react';
3
4
  import MaterialIcon from './MaterialIcon';
@@ -133,58 +134,40 @@ const ValidationErrorsCard = ({ formElementsValidation, visiblePages, currentPag
133
134
  }
134
135
  return Array.from(pages.values());
135
136
  }, [formElementsValidation, visiblePages]);
136
- return (React.createElement("div", { className: "ob-validation-notification-wrapper" },
137
- React.createElement("div", { className: clsx('ob-validation-notification-card cypress-invalid-submit-attempt', {
137
+ return (_jsx("div", { className: "ob-validation-notification-wrapper", children: _jsx("div", { className: clsx('ob-validation-notification-card cypress-invalid-submit-attempt', {
138
138
  'is-clickable': !isExpanded,
139
139
  'is-contracted': !isExpanded,
140
140
  'is-expanded': isExpanded,
141
- }), onClick: !isExpanded ? expand : undefined },
142
- React.createElement("div", { className: "ob-validation-notification-card-content" },
143
- React.createElement("div", { className: "ob-validation-notification-card-header-wrapper" },
144
- React.createElement("div", { className: "ob-validation-notification-card-header-title-wrapper" },
145
- React.createElement(MaterialIcon, { className: clsx('ob-validation-notification-card-header-title-icon ob-validation-color-transition', {
146
- 'has-text-danger': isExpanded,
147
- 'has-text-white': !isExpanded,
148
- }) }, "error"),
149
- React.createElement("p", { className: clsx('ob-validation-color-transition ob-validation-notification-card-header-title-text', {
150
- 'has-text-danger': isExpanded,
151
- 'has-text-white': !isExpanded,
152
- }) }, "Validation Errors")),
153
- React.createElement("div", { className: "ob-validation-notification-card-header-collapse-icon-wrapper" },
154
- React.createElement(IconButton, { autoFocus: true, ref: validationErrorToastFocusElementRef, onClick: isExpanded ? contract : undefined, "aria-label": `${isExpanded ? 'Collapse' : 'Expand'} validation errors`, className: "cypress-validation-notification-toggle-messages-button" },
155
- React.createElement(MaterialIcon, { className: clsx('icon-small', {
156
- 'has-text-white': !isExpanded,
157
- }) }, isExpanded ? 'expand_more' : 'expand_less')))),
158
- React.createElement("div", { className: "ob-validation-notification-card-collapse-wrapper" },
159
- React.createElement(Collapse, { in: isExpanded }, pagesWithValidationErrors.map(({ page, errors }, pageIndex) => {
160
- const isNotFirstPage = pageIndex > 0;
161
- return (React.createElement(React.Fragment, { key: pageIndex },
162
- page && (React.createElement("p", { className: clsx('ob-validation-notification-card-page-label ob-validation-color-transition', {
163
- 'is-not-first': isNotFirstPage,
164
- }) }, page.label)),
165
- React.createElement("div", { className: "ob-list has-dividers has-borders ob-validation-notification-card-list ob-validation-color-transition" }, errors.map(({ errorMessage, label, elementDOMId }, index, list) => {
166
- const isFirst = index === 0;
167
- const isLast = index === list.length - 1;
168
- return (React.createElement(Clickable, { key: index, className: clsx('ob-list__item is-clickable ob-validation-notification-card-item cypress-validation-notification-error', {
169
- 'is-first': isFirst,
170
- 'is-last': isLast,
171
- }), onClick: () => {
172
- if (page && page.id !== currentPage.id) {
173
- setPageId(page.id);
174
- }
175
- scrollToElement({
176
- elementDOMId,
177
- navigationTopOffset,
178
- scrollableContainerId,
179
- });
180
- } },
181
- React.createElement("div", { className: "ob-validation-notification-card-item-text" },
182
- React.createElement("p", { className: "cypress-validation-notification-error-label" }, label),
183
- React.createElement(Tooltip, { title: errorMessage, placement: "left", arrow: true },
184
- React.createElement("p", { className: "ob-validation-notification-card-item-text-error-message has-text-danger cypress-validation-notification-error-message" }, errorMessage))),
185
- React.createElement(MaterialIcon, { className: "has-text-grey icon-small ob-validation-notification-card-item-icon" }, "chevron_right")));
186
- }))));
187
- })))))));
141
+ }), onClick: !isExpanded ? expand : undefined, children: _jsxs("div", { className: "ob-validation-notification-card-content", children: [_jsxs("div", { className: "ob-validation-notification-card-header-wrapper", children: [_jsxs("div", { className: "ob-validation-notification-card-header-title-wrapper", children: [_jsx(MaterialIcon, { className: clsx('ob-validation-notification-card-header-title-icon ob-validation-color-transition', {
142
+ 'has-text-danger': isExpanded,
143
+ 'has-text-white': !isExpanded,
144
+ }), children: "error" }), _jsx("p", { className: clsx('ob-validation-color-transition ob-validation-notification-card-header-title-text', {
145
+ 'has-text-danger': isExpanded,
146
+ 'has-text-white': !isExpanded,
147
+ }), children: "Validation Errors" })] }), _jsx("div", { className: "ob-validation-notification-card-header-collapse-icon-wrapper", children: _jsx(IconButton, { autoFocus: true, ref: validationErrorToastFocusElementRef, onClick: isExpanded ? contract : undefined, "aria-label": `${isExpanded ? 'Collapse' : 'Expand'} validation errors`, className: "cypress-validation-notification-toggle-messages-button", children: _jsx(MaterialIcon, { className: clsx('icon-small', {
148
+ 'has-text-white': !isExpanded,
149
+ }), children: isExpanded ? 'expand_more' : 'expand_less' }) }) })] }), _jsx("div", { className: "ob-validation-notification-card-collapse-wrapper", children: _jsx(Collapse, { in: isExpanded, children: pagesWithValidationErrors.map(({ page, errors }, pageIndex) => {
150
+ const isNotFirstPage = pageIndex > 0;
151
+ return (_jsxs(React.Fragment, { children: [page && (_jsx("p", { className: clsx('ob-validation-notification-card-page-label ob-validation-color-transition', {
152
+ 'is-not-first': isNotFirstPage,
153
+ }), children: page.label })), _jsx("div", { className: "ob-list has-dividers has-borders ob-validation-notification-card-list ob-validation-color-transition", children: errors.map(({ errorMessage, label, elementDOMId }, index, list) => {
154
+ const isFirst = index === 0;
155
+ const isLast = index === list.length - 1;
156
+ return (_jsxs(Clickable, { className: clsx('ob-list__item is-clickable ob-validation-notification-card-item cypress-validation-notification-error', {
157
+ 'is-first': isFirst,
158
+ 'is-last': isLast,
159
+ }), onClick: () => {
160
+ if (page && page.id !== currentPage.id) {
161
+ setPageId(page.id);
162
+ }
163
+ scrollToElement({
164
+ elementDOMId,
165
+ navigationTopOffset,
166
+ scrollableContainerId,
167
+ });
168
+ }, children: [_jsxs("div", { className: "ob-validation-notification-card-item-text", children: [_jsx("p", { className: "cypress-validation-notification-error-label", children: label }), _jsx(Tooltip, { title: errorMessage, placement: "left", arrow: true, children: _jsx("p", { className: "ob-validation-notification-card-item-text-error-message has-text-danger cypress-validation-notification-error-message", children: errorMessage }) })] }), _jsx(MaterialIcon, { className: "has-text-grey icon-small ob-validation-notification-card-item-icon", children: "chevron_right" })] }, index));
169
+ }) })] }, pageIndex));
170
+ }) }) })] }) }) }));
188
171
  };
189
172
  export default React.memo(ValidationErrorsCard);
190
173
  //# sourceMappingURL=ValidationErrorsCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationErrorsCard.js","sourceRoot":"","sources":["../../src/components/ValidationErrorsCard.tsx"],"names":[],"mappings":"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","sourcesContent":["import { IconButton, Collapse, Tooltip } from '@mui/material'\nimport * as React from 'react'\nimport MaterialIcon from './MaterialIcon'\nimport { FormElementsValidation } from '../types/form'\nimport useBooleanState from '../hooks/useBooleanState'\nimport clsx from 'clsx'\nimport { FormTypes } from '@oneblink/types'\nimport usePages from '../hooks/usePages'\nimport ElementDOMId from '../utils/elementDOMIds'\nimport scrollToElement from '../utils/scrollToElement'\nimport { Clickable } from './Clickable'\n\nconst NO_PAGE_KEY = 'NO_PAGE'\ntype ValidationErrorMetaData = {\n elementDOMId: ElementDOMId\n label: string\n page?: {\n label: string\n id: string\n }\n errorMessage: string\n}\nconst getValidationErrors = ({\n formElementsValidation,\n elements,\n page,\n idPrefix,\n}: {\n formElementsValidation: FormElementsValidation\n elements: FormTypes.FormElement[]\n page?: ValidationErrorMetaData['page']\n idPrefix: string\n}) => {\n return elements.reduce<Array<ValidationErrorMetaData>>((memo, el) => {\n switch (el.type) {\n case 'page': {\n memo.push(\n ...getValidationErrors({\n formElementsValidation,\n elements: el.elements,\n page: el,\n idPrefix,\n }),\n )\n break\n }\n case 'section': {\n memo.push(\n ...getValidationErrors({\n formElementsValidation,\n elements: el.elements,\n page,\n idPrefix,\n }),\n )\n break\n }\n case 'repeatableSet': {\n const validationData = formElementsValidation[el.name]\n if (\n !!validationData &&\n typeof validationData !== 'string' &&\n validationData.type === 'repeatableSet'\n ) {\n const elementDOMId = new ElementDOMId({\n element: el,\n idPrefix,\n })\n if (validationData.set) {\n memo.push({\n elementDOMId,\n errorMessage: validationData.set,\n label: el.label,\n page,\n })\n }\n for (const [key, entry] of Object.entries(validationData.entries)) {\n if (!entry) continue\n memo.push(\n ...getValidationErrors({\n formElementsValidation: entry,\n elements: el.elements,\n page,\n idPrefix: elementDOMId.repeatableSetEntryDOMIdPrefix(key),\n }),\n )\n }\n }\n break\n }\n case 'infoPage':\n case 'form': {\n const validationData = formElementsValidation[el.name]\n if (\n !!validationData &&\n typeof validationData !== 'string' &&\n validationData.type === 'formElements'\n ) {\n if (validationData.formElements && el.elements) {\n const elementDOMId = new ElementDOMId({\n element: el,\n idPrefix,\n })\n memo.push(\n ...getValidationErrors({\n formElementsValidation: validationData.formElements,\n elements: el.elements,\n page,\n idPrefix: elementDOMId.subFormDOMIdPrefix,\n }),\n )\n }\n }\n break\n }\n default: {\n const validationMessage = formElementsValidation[el.name]\n if (typeof validationMessage === 'string') {\n const elementDOMId = new ElementDOMId({\n element: el,\n idPrefix,\n })\n memo.push({\n elementDOMId,\n label: el.label,\n page,\n errorMessage: validationMessage,\n })\n }\n }\n }\n return memo\n }, [])\n}\n\nconst ValidationErrorsCard = ({\n formElementsValidation,\n visiblePages,\n currentPage,\n setPageId,\n navigationTopOffset,\n scrollableContainerId,\n validationErrorToastFocusElementRef,\n}: {\n visiblePages: FormTypes.PageElement[]\n formElementsValidation: FormElementsValidation | undefined\n currentPage: FormTypes.PageElement\n setPageId: ReturnType<typeof usePages>['setPageId']\n navigationTopOffset: number | 'CALCULATE'\n scrollableContainerId?: string\n validationErrorToastFocusElementRef: React.RefObject<HTMLButtonElement>\n}) => {\n const [isExpanded, expand, contract] = useBooleanState(false)\n\n const pagesWithValidationErrors = React.useMemo(() => {\n if (!formElementsValidation) return []\n const flatErrors = getValidationErrors({\n formElementsValidation,\n elements: visiblePages,\n idPrefix: '',\n })\n\n // Organise into pages\n const pages = new Map<\n string,\n {\n page: ValidationErrorMetaData['page']\n errors: ValidationErrorMetaData[]\n }\n >()\n for (const error of flatErrors) {\n if (error.page) {\n // If error belongs to a page\n const existingSetEntry = pages.get(error.page.id)\n const errors = [...(existingSetEntry?.errors || []), error]\n const page = error.page\n\n pages.set(page.id, {\n page,\n errors,\n })\n } else {\n // No page associated with error\n const existingSetEntry = pages.get(NO_PAGE_KEY)\n const errors = [...(existingSetEntry?.errors || []), error]\n pages.set(NO_PAGE_KEY, {\n page: undefined,\n errors,\n })\n }\n }\n return Array.from(pages.values())\n }, [formElementsValidation, visiblePages])\n\n return (\n <div className=\"ob-validation-notification-wrapper\">\n <div\n className={clsx(\n 'ob-validation-notification-card cypress-invalid-submit-attempt',\n {\n 'is-clickable': !isExpanded,\n 'is-contracted': !isExpanded,\n 'is-expanded': isExpanded,\n },\n )}\n onClick={!isExpanded ? expand : undefined}\n >\n <div className=\"ob-validation-notification-card-content\">\n <div className=\"ob-validation-notification-card-header-wrapper\">\n <div className=\"ob-validation-notification-card-header-title-wrapper\">\n <MaterialIcon\n className={clsx(\n 'ob-validation-notification-card-header-title-icon ob-validation-color-transition',\n {\n 'has-text-danger': isExpanded,\n 'has-text-white': !isExpanded,\n },\n )}\n >\n error\n </MaterialIcon>\n <p\n className={clsx(\n 'ob-validation-color-transition ob-validation-notification-card-header-title-text',\n {\n 'has-text-danger': isExpanded,\n 'has-text-white': !isExpanded,\n },\n )}\n >\n Validation Errors\n </p>\n </div>\n <div className=\"ob-validation-notification-card-header-collapse-icon-wrapper\">\n <IconButton\n autoFocus\n ref={validationErrorToastFocusElementRef}\n onClick={isExpanded ? contract : undefined}\n aria-label={`${isExpanded ? 'Collapse' : 'Expand'} validation errors`}\n className=\"cypress-validation-notification-toggle-messages-button\"\n >\n <MaterialIcon\n className={clsx('icon-small', {\n 'has-text-white': !isExpanded,\n })}\n >\n {isExpanded ? 'expand_more' : 'expand_less'}\n </MaterialIcon>\n </IconButton>\n </div>\n </div>\n <div className=\"ob-validation-notification-card-collapse-wrapper\">\n <Collapse in={isExpanded}>\n {pagesWithValidationErrors.map(({ page, errors }, pageIndex) => {\n const isNotFirstPage = pageIndex > 0\n return (\n <React.Fragment key={pageIndex}>\n {page && (\n <p\n className={clsx(\n 'ob-validation-notification-card-page-label ob-validation-color-transition',\n {\n 'is-not-first': isNotFirstPage,\n },\n )}\n >\n {page.label}\n </p>\n )}\n <div className=\"ob-list has-dividers has-borders ob-validation-notification-card-list ob-validation-color-transition\">\n {errors.map(\n (\n { errorMessage, label, elementDOMId },\n index,\n list,\n ) => {\n const isFirst = index === 0\n const isLast = index === list.length - 1\n return (\n <Clickable\n key={index}\n className={clsx(\n 'ob-list__item is-clickable ob-validation-notification-card-item cypress-validation-notification-error',\n {\n 'is-first': isFirst,\n 'is-last': isLast,\n },\n )}\n onClick={() => {\n if (page && page.id !== currentPage.id) {\n setPageId(page.id)\n }\n\n scrollToElement({\n elementDOMId,\n navigationTopOffset,\n scrollableContainerId,\n })\n }}\n >\n <div className=\"ob-validation-notification-card-item-text\">\n <p className=\"cypress-validation-notification-error-label\">\n {label}\n </p>\n <Tooltip\n title={errorMessage}\n placement=\"left\"\n arrow\n >\n <p className=\"ob-validation-notification-card-item-text-error-message has-text-danger cypress-validation-notification-error-message\">\n {errorMessage}\n </p>\n </Tooltip>\n </div>\n <MaterialIcon className=\"has-text-grey icon-small ob-validation-notification-card-item-icon\">\n chevron_right\n </MaterialIcon>\n </Clickable>\n )\n },\n )}\n </div>\n </React.Fragment>\n )\n })}\n </Collapse>\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nexport default React.memo(ValidationErrorsCard)\n"]}
1
+ {"version":3,"file":"ValidationErrorsCard.js","sourceRoot":"","sources":["../../src/components/ValidationErrorsCard.tsx"],"names":[],"mappings":"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","sourcesContent":["import { IconButton, Collapse, Tooltip } from '@mui/material'\nimport * as React from 'react'\nimport MaterialIcon from './MaterialIcon'\nimport { FormElementsValidation } from '../types/form'\nimport useBooleanState from '../hooks/useBooleanState'\nimport clsx from 'clsx'\nimport { FormTypes } from '@oneblink/types'\nimport usePages from '../hooks/usePages'\nimport ElementDOMId from '../utils/elementDOMIds'\nimport scrollToElement from '../utils/scrollToElement'\nimport { Clickable } from './Clickable'\n\nconst NO_PAGE_KEY = 'NO_PAGE'\ntype ValidationErrorMetaData = {\n elementDOMId: ElementDOMId\n label: string\n page?: {\n label: string\n id: string\n }\n errorMessage: string\n}\nconst getValidationErrors = ({\n formElementsValidation,\n elements,\n page,\n idPrefix,\n}: {\n formElementsValidation: FormElementsValidation\n elements: FormTypes.FormElement[]\n page?: ValidationErrorMetaData['page']\n idPrefix: string\n}) => {\n return elements.reduce<Array<ValidationErrorMetaData>>((memo, el) => {\n switch (el.type) {\n case 'page': {\n memo.push(\n ...getValidationErrors({\n formElementsValidation,\n elements: el.elements,\n page: el,\n idPrefix,\n }),\n )\n break\n }\n case 'section': {\n memo.push(\n ...getValidationErrors({\n formElementsValidation,\n elements: el.elements,\n page,\n idPrefix,\n }),\n )\n break\n }\n case 'repeatableSet': {\n const validationData = formElementsValidation[el.name]\n if (\n !!validationData &&\n typeof validationData !== 'string' &&\n validationData.type === 'repeatableSet'\n ) {\n const elementDOMId = new ElementDOMId({\n element: el,\n idPrefix,\n })\n if (validationData.set) {\n memo.push({\n elementDOMId,\n errorMessage: validationData.set,\n label: el.label,\n page,\n })\n }\n for (const [key, entry] of Object.entries(validationData.entries)) {\n if (!entry) continue\n memo.push(\n ...getValidationErrors({\n formElementsValidation: entry,\n elements: el.elements,\n page,\n idPrefix: elementDOMId.repeatableSetEntryDOMIdPrefix(key),\n }),\n )\n }\n }\n break\n }\n case 'infoPage':\n case 'form': {\n const validationData = formElementsValidation[el.name]\n if (\n !!validationData &&\n typeof validationData !== 'string' &&\n validationData.type === 'formElements'\n ) {\n if (validationData.formElements && el.elements) {\n const elementDOMId = new ElementDOMId({\n element: el,\n idPrefix,\n })\n memo.push(\n ...getValidationErrors({\n formElementsValidation: validationData.formElements,\n elements: el.elements,\n page,\n idPrefix: elementDOMId.subFormDOMIdPrefix,\n }),\n )\n }\n }\n break\n }\n default: {\n const validationMessage = formElementsValidation[el.name]\n if (typeof validationMessage === 'string') {\n const elementDOMId = new ElementDOMId({\n element: el,\n idPrefix,\n })\n memo.push({\n elementDOMId,\n label: el.label,\n page,\n errorMessage: validationMessage,\n })\n }\n }\n }\n return memo\n }, [])\n}\n\nconst ValidationErrorsCard = ({\n formElementsValidation,\n visiblePages,\n currentPage,\n setPageId,\n navigationTopOffset,\n scrollableContainerId,\n validationErrorToastFocusElementRef,\n}: {\n visiblePages: FormTypes.PageElement[]\n formElementsValidation: FormElementsValidation | undefined\n currentPage: FormTypes.PageElement\n setPageId: ReturnType<typeof usePages>['setPageId']\n navigationTopOffset: number | 'CALCULATE'\n scrollableContainerId?: string\n validationErrorToastFocusElementRef: React.RefObject<HTMLButtonElement | null>\n}) => {\n const [isExpanded, expand, contract] = useBooleanState(false)\n\n const pagesWithValidationErrors = React.useMemo(() => {\n if (!formElementsValidation) return []\n const flatErrors = getValidationErrors({\n formElementsValidation,\n elements: visiblePages,\n idPrefix: '',\n })\n\n // Organise into pages\n const pages = new Map<\n string,\n {\n page: ValidationErrorMetaData['page']\n errors: ValidationErrorMetaData[]\n }\n >()\n for (const error of flatErrors) {\n if (error.page) {\n // If error belongs to a page\n const existingSetEntry = pages.get(error.page.id)\n const errors = [...(existingSetEntry?.errors || []), error]\n const page = error.page\n\n pages.set(page.id, {\n page,\n errors,\n })\n } else {\n // No page associated with error\n const existingSetEntry = pages.get(NO_PAGE_KEY)\n const errors = [...(existingSetEntry?.errors || []), error]\n pages.set(NO_PAGE_KEY, {\n page: undefined,\n errors,\n })\n }\n }\n return Array.from(pages.values())\n }, [formElementsValidation, visiblePages])\n\n return (\n <div className=\"ob-validation-notification-wrapper\">\n <div\n className={clsx(\n 'ob-validation-notification-card cypress-invalid-submit-attempt',\n {\n 'is-clickable': !isExpanded,\n 'is-contracted': !isExpanded,\n 'is-expanded': isExpanded,\n },\n )}\n onClick={!isExpanded ? expand : undefined}\n >\n <div className=\"ob-validation-notification-card-content\">\n <div className=\"ob-validation-notification-card-header-wrapper\">\n <div className=\"ob-validation-notification-card-header-title-wrapper\">\n <MaterialIcon\n className={clsx(\n 'ob-validation-notification-card-header-title-icon ob-validation-color-transition',\n {\n 'has-text-danger': isExpanded,\n 'has-text-white': !isExpanded,\n },\n )}\n >\n error\n </MaterialIcon>\n <p\n className={clsx(\n 'ob-validation-color-transition ob-validation-notification-card-header-title-text',\n {\n 'has-text-danger': isExpanded,\n 'has-text-white': !isExpanded,\n },\n )}\n >\n Validation Errors\n </p>\n </div>\n <div className=\"ob-validation-notification-card-header-collapse-icon-wrapper\">\n <IconButton\n autoFocus\n ref={validationErrorToastFocusElementRef}\n onClick={isExpanded ? contract : undefined}\n aria-label={`${isExpanded ? 'Collapse' : 'Expand'} validation errors`}\n className=\"cypress-validation-notification-toggle-messages-button\"\n >\n <MaterialIcon\n className={clsx('icon-small', {\n 'has-text-white': !isExpanded,\n })}\n >\n {isExpanded ? 'expand_more' : 'expand_less'}\n </MaterialIcon>\n </IconButton>\n </div>\n </div>\n <div className=\"ob-validation-notification-card-collapse-wrapper\">\n <Collapse in={isExpanded}>\n {pagesWithValidationErrors.map(({ page, errors }, pageIndex) => {\n const isNotFirstPage = pageIndex > 0\n return (\n <React.Fragment key={pageIndex}>\n {page && (\n <p\n className={clsx(\n 'ob-validation-notification-card-page-label ob-validation-color-transition',\n {\n 'is-not-first': isNotFirstPage,\n },\n )}\n >\n {page.label}\n </p>\n )}\n <div className=\"ob-list has-dividers has-borders ob-validation-notification-card-list ob-validation-color-transition\">\n {errors.map(\n (\n { errorMessage, label, elementDOMId },\n index,\n list,\n ) => {\n const isFirst = index === 0\n const isLast = index === list.length - 1\n return (\n <Clickable\n key={index}\n className={clsx(\n 'ob-list__item is-clickable ob-validation-notification-card-item cypress-validation-notification-error',\n {\n 'is-first': isFirst,\n 'is-last': isLast,\n },\n )}\n onClick={() => {\n if (page && page.id !== currentPage.id) {\n setPageId(page.id)\n }\n\n scrollToElement({\n elementDOMId,\n navigationTopOffset,\n scrollableContainerId,\n })\n }}\n >\n <div className=\"ob-validation-notification-card-item-text\">\n <p className=\"cypress-validation-notification-error-label\">\n {label}\n </p>\n <Tooltip\n title={errorMessage}\n placement=\"left\"\n arrow\n >\n <p className=\"ob-validation-notification-card-item-text-error-message has-text-danger cypress-validation-notification-error-message\">\n {errorMessage}\n </p>\n </Tooltip>\n </div>\n <MaterialIcon className=\"has-text-grey icon-small ob-validation-notification-card-item-icon\">\n chevron_right\n </MaterialIcon>\n </Clickable>\n )\n },\n )}\n </div>\n </React.Fragment>\n )\n })}\n </Collapse>\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nexport default React.memo(ValidationErrorsCard)\n"]}
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- declare function CalendarBookingsCancelForm(): React.JSX.Element;
2
+ declare function CalendarBookingsCancelForm(): import("react/jsx-runtime").JSX.Element;
3
3
  declare const _default: React.MemoExoticComponent<typeof CalendarBookingsCancelForm>;
4
4
  export default _default;
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import React from 'react';
2
3
  import { NylasScheduling } from '@nylas/react';
3
4
  import { schedulingService } from '@oneblink/apps';
@@ -7,11 +8,9 @@ import useCalendarBookings from './CalendarBookingsProvider';
7
8
  function NylasCancelForm({ sessionId, bookingRef, }) {
8
9
  const { setBookingError, themeConfig } = useCalendarBookings();
9
10
  if (!bookingRef) {
10
- return (React.createElement(ErrorMessage, { title: "Error Retrieving Data", gutterTop: true },
11
- React.createElement("span", { className: "cypress-booking-ref-not-found-error-message" }, "Could not find a calendar booking to cancel")));
11
+ return (_jsx(ErrorMessage, { title: "Error Retrieving Data", gutterTop: true, children: _jsx("span", { className: "cypress-booking-ref-not-found-error-message", children: "Could not find a calendar booking to cancel" }) }));
12
12
  }
13
- return (React.createElement("div", { className: "ob-scheduling-booking-form" },
14
- React.createElement(NylasScheduling, { sessionId: sessionId, eventOverrides: {
13
+ return (_jsx("div", { className: "ob-scheduling-booking-form", children: _jsx(NylasScheduling, { sessionId: sessionId, eventOverrides: {
15
14
  bookedEventInfo: async (event) => {
16
15
  var _a;
17
16
  event.preventDefault();
@@ -19,10 +18,10 @@ function NylasCancelForm({ sessionId, bookingRef, }) {
19
18
  setBookingError((_a = event.detail.error.message) !== null && _a !== void 0 ? _a : 'Calendar Booking Error');
20
19
  }
21
20
  },
22
- }, themeConfig: themeConfig, cancelBookingRef: bookingRef, enableUserFeedback: false, nylasBranding: false })));
21
+ }, themeConfig: themeConfig, cancelBookingRef: bookingRef, enableUserFeedback: false, nylasBranding: false }) }));
23
22
  }
24
23
  function CalendarBookingsCancelForm() {
25
- return (React.createElement(CalendarBookingsContainer, { fetchConfiguration: schedulingService.createNylasExistingBookingSession }, (props) => React.createElement(NylasCancelForm, { ...props })));
24
+ return (_jsx(CalendarBookingsContainer, { fetchConfiguration: schedulingService.createNylasExistingBookingSession, children: (props) => _jsx(NylasCancelForm, { ...props }) }));
26
25
  }
27
26
  export default React.memo(CalendarBookingsCancelForm);
28
27
  //# sourceMappingURL=CalendarBookingsCancelForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarBookingsCancelForm.js","sourceRoot":"","sources":["../../../src/components/calendar-bookings/CalendarBookingsCancelForm.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,YAAY,MAAM,0BAA0B,CAAA;AACnD,OAAO,yBAAyB,MAAM,6BAA6B,CAAA;AACnE,OAAO,mBAAmB,MAAM,4BAA4B,CAAA;AAE5D,SAAS,eAAe,CAAC,EACvB,SAAS,EACT,UAAU,GAKX;IACC,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,mBAAmB,EAAE,CAAA;IAE9D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CACL,oBAAC,YAAY,IAAC,KAAK,EAAC,uBAAuB,EAAC,SAAS;YACnD,8BAAM,SAAS,EAAC,6CAA6C,kDAEtD,CACM,CAChB,CAAA;IACH,CAAC;IAED,OAAO,CACL,6BAAK,SAAS,EAAC,4BAA4B;QACzC,oBAAC,eAAe,IACd,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE;gBACd,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;;oBAC/B,KAAK,CAAC,cAAc,EAAE,CAAA;oBACtB,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;wBACvB,eAAe,CACb,MAAA,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,mCAAI,wBAAwB,CACvD,CAAA;oBACH,CAAC;gBACH,CAAC;aACF,EACD,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,UAAU,EAC5B,kBAAkB,EAAE,KAAK,EACzB,aAAa,EAAE,KAAK,GACpB,CACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,0BAA0B;IACjC,OAAO,CACL,oBAAC,yBAAyB,IACxB,kBAAkB,EAAE,iBAAiB,CAAC,iCAAiC,IAEtE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAC,eAAe,OAAK,KAAK,GAAI,CAChB,CAC7B,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA","sourcesContent":["import React from 'react'\nimport { NylasScheduling } from '@nylas/react'\nimport { schedulingService } from '@oneblink/apps'\nimport ErrorMessage from '../messages/ErrorMessage'\nimport CalendarBookingsContainer from './CalendarBookingsContainer'\nimport useCalendarBookings from './CalendarBookingsProvider'\n\nfunction NylasCancelForm({\n sessionId,\n bookingRef,\n}: Awaited<\n ReturnType<typeof schedulingService.createNylasExistingBookingSession>\n> & {\n submissionId: string\n}) {\n const { setBookingError, themeConfig } = useCalendarBookings()\n\n if (!bookingRef) {\n return (\n <ErrorMessage title=\"Error Retrieving Data\" gutterTop>\n <span className=\"cypress-booking-ref-not-found-error-message\">\n Could not find a calendar booking to cancel\n </span>\n </ErrorMessage>\n )\n }\n\n return (\n <div className=\"ob-scheduling-booking-form\">\n <NylasScheduling\n sessionId={sessionId}\n eventOverrides={{\n bookedEventInfo: async (event) => {\n event.preventDefault()\n if (event.detail.error) {\n setBookingError(\n event.detail.error.message ?? 'Calendar Booking Error',\n )\n }\n },\n }}\n themeConfig={themeConfig}\n cancelBookingRef={bookingRef}\n enableUserFeedback={false}\n nylasBranding={false}\n />\n </div>\n )\n}\n\nfunction CalendarBookingsCancelForm() {\n return (\n <CalendarBookingsContainer\n fetchConfiguration={schedulingService.createNylasExistingBookingSession}\n >\n {(props) => <NylasCancelForm {...props} />}\n </CalendarBookingsContainer>\n )\n}\n\nexport default React.memo(CalendarBookingsCancelForm)\n"]}
1
+ {"version":3,"file":"CalendarBookingsCancelForm.js","sourceRoot":"","sources":["../../../src/components/calendar-bookings/CalendarBookingsCancelForm.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,YAAY,MAAM,0BAA0B,CAAA;AACnD,OAAO,yBAAyB,MAAM,6BAA6B,CAAA;AACnE,OAAO,mBAAmB,MAAM,4BAA4B,CAAA;AAE5D,SAAS,eAAe,CAAC,EACvB,SAAS,EACT,UAAU,GAKX;IACC,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,mBAAmB,EAAE,CAAA;IAE9D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CACL,KAAC,YAAY,IAAC,KAAK,EAAC,uBAAuB,EAAC,SAAS,kBACnD,eAAM,SAAS,EAAC,6CAA6C,4DAEtD,GACM,CAChB,CAAA;IACH,CAAC;IAED,OAAO,CACL,cAAK,SAAS,EAAC,4BAA4B,YACzC,KAAC,eAAe,IACd,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE;gBACd,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;;oBAC/B,KAAK,CAAC,cAAc,EAAE,CAAA;oBACtB,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;wBACvB,eAAe,CACb,MAAA,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,mCAAI,wBAAwB,CACvD,CAAA;oBACH,CAAC;gBACH,CAAC;aACF,EACD,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,UAAU,EAC5B,kBAAkB,EAAE,KAAK,EACzB,aAAa,EAAE,KAAK,GACpB,GACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,0BAA0B;IACjC,OAAO,CACL,KAAC,yBAAyB,IACxB,kBAAkB,EAAE,iBAAiB,CAAC,iCAAiC,YAEtE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAC,eAAe,OAAK,KAAK,GAAI,GAChB,CAC7B,CAAA;AACH,CAAC;AAED,eAAe,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA","sourcesContent":["import React from 'react'\nimport { NylasScheduling } from '@nylas/react'\nimport { schedulingService } from '@oneblink/apps'\nimport ErrorMessage from '../messages/ErrorMessage'\nimport CalendarBookingsContainer from './CalendarBookingsContainer'\nimport useCalendarBookings from './CalendarBookingsProvider'\n\nfunction NylasCancelForm({\n sessionId,\n bookingRef,\n}: Awaited<\n ReturnType<typeof schedulingService.createNylasExistingBookingSession>\n> & {\n submissionId: string\n}) {\n const { setBookingError, themeConfig } = useCalendarBookings()\n\n if (!bookingRef) {\n return (\n <ErrorMessage title=\"Error Retrieving Data\" gutterTop>\n <span className=\"cypress-booking-ref-not-found-error-message\">\n Could not find a calendar booking to cancel\n </span>\n </ErrorMessage>\n )\n }\n\n return (\n <div className=\"ob-scheduling-booking-form\">\n <NylasScheduling\n sessionId={sessionId}\n eventOverrides={{\n bookedEventInfo: async (event) => {\n event.preventDefault()\n if (event.detail.error) {\n setBookingError(\n event.detail.error.message ?? 'Calendar Booking Error',\n )\n }\n },\n }}\n themeConfig={themeConfig}\n cancelBookingRef={bookingRef}\n enableUserFeedback={false}\n nylasBranding={false}\n />\n </div>\n )\n}\n\nfunction CalendarBookingsCancelForm() {\n return (\n <CalendarBookingsContainer\n fetchConfiguration={schedulingService.createNylasExistingBookingSession}\n >\n {(props) => <NylasCancelForm {...props} />}\n </CalendarBookingsContainer>\n )\n}\n\nexport default React.memo(CalendarBookingsCancelForm)\n"]}
@@ -4,4 +4,4 @@ export default function CalendarBookingsContainer<T>({ fetchConfiguration, child
4
4
  children: (renderProps: {
5
5
  submissionId: string;
6
6
  } & T) => React.ReactNode;
7
- }): React.JSX.Element;
7
+ }): import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import React from 'react';
2
3
  import useQuery from '../../hooks/useQuery';
3
4
  import useLoadDataState from '../../hooks/useLoadDataState';
@@ -10,25 +11,22 @@ function CalendarBookingLoader({ submissionId, fetchConfiguration, children, })
10
11
  return await fetchConfiguration(submissionId, abortSignal);
11
12
  }, [fetchConfiguration, submissionId]));
12
13
  if (nylasSchedulingState.status === 'LOADING') {
13
- return (React.createElement("div", { className: "has-margin-top-1" },
14
- React.createElement("div", { className: "cypress-loading has-text-centered" },
15
- React.createElement(OnLoading, { className: "has-text-centered" }))));
14
+ return (_jsx("div", { className: "has-margin-top-1", children: _jsx("div", { className: "cypress-loading has-text-centered", children: _jsx(OnLoading, { className: "has-text-centered" }) }) }));
16
15
  }
17
16
  if (nylasSchedulingState.status === 'ERROR') {
18
- return (React.createElement(ErrorModal, { error: nylasSchedulingState.error, onClose: refreshNylasState }));
17
+ return (_jsx(ErrorModal, { error: nylasSchedulingState.error, onClose: refreshNylasState }));
19
18
  }
20
- return (React.createElement(CalendarBookingsProvider, { refreshNylasState: refreshNylasState }, children({
21
- ...nylasSchedulingState.result,
22
- submissionId,
23
- })));
19
+ return (_jsx(CalendarBookingsProvider, { refreshNylasState: refreshNylasState, children: children({
20
+ ...nylasSchedulingState.result,
21
+ submissionId,
22
+ }) }));
24
23
  }
25
24
  export default function CalendarBookingsContainer({ fetchConfiguration, children, }) {
26
25
  const { submissionId: submissionIdQs } = useQuery();
27
26
  const submissionId = React.useMemo(() => (typeof submissionIdQs === 'string' ? submissionIdQs : undefined), [submissionIdQs]);
28
27
  if (!submissionId) {
29
- return (React.createElement(ErrorMessage, { title: "Missing Configuration", gutterTop: true },
30
- React.createElement("span", { className: "cypress-scheduling-booking-form-invalid-querystring ob-scheduling-booking-form__invalid-querystring-message" }, "It seems you have navigated here incorrectly. Please go back.")));
28
+ return (_jsx(ErrorMessage, { title: "Missing Configuration", gutterTop: true, children: _jsx("span", { className: "cypress-scheduling-booking-form-invalid-querystring ob-scheduling-booking-form__invalid-querystring-message", children: "It seems you have navigated here incorrectly. Please go back." }) }));
31
29
  }
32
- return (React.createElement(CalendarBookingLoader, { fetchConfiguration: fetchConfiguration, submissionId: submissionId }, children));
30
+ return (_jsx(CalendarBookingLoader, { fetchConfiguration: fetchConfiguration, submissionId: submissionId, children: children }));
33
31
  }
34
32
  //# sourceMappingURL=CalendarBookingsContainer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarBookingsContainer.js","sourceRoot":"","sources":["../../../src/components/calendar-bookings/CalendarBookingsContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,sBAAsB,CAAA;AAC3C,OAAO,gBAAgB,MAAM,8BAA8B,CAAA;AAC3D,OAAO,YAAY,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,SAAS,MAAM,uBAAuB,CAAA;AAC7C,OAAO,UAAU,MAAM,cAAc,CAAA;AAOrC,SAAS,qBAAqB,CAAI,EAChC,YAAY,EACZ,kBAAkB,EAClB,QAAQ,GAKT;IACC,MAAM,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,GAAG,gBAAgB,CAChE,KAAK,CAAC,WAAW,CACf,KAAK,EAAE,WAAW,EAAE,EAAE;QACpB,OAAO,MAAM,kBAAkB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAA;IAC5D,CAAC,EACD,CAAC,kBAAkB,EAAE,YAAY,CAAC,CACnC,CACF,CAAA;IAED,IAAI,oBAAoB,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9C,OAAO,CACL,6BAAK,SAAS,EAAC,kBAAkB;YAC/B,6BAAK,SAAS,EAAC,mCAAmC;gBAChD,oBAAC,SAAS,IAAC,SAAS,EAAC,mBAAmB,GAAG,CACvC,CACF,CACP,CAAA;IACH,CAAC;IAED,IAAI,oBAAoB,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC5C,OAAO,CACL,oBAAC,UAAU,IACT,KAAK,EAAE,oBAAoB,CAAC,KAAK,EACjC,OAAO,EAAE,iBAAiB,GAC1B,CACH,CAAA;IACH,CAAC;IAED,OAAO,CACL,oBAAC,wBAAwB,IAAC,iBAAiB,EAAE,iBAAiB,IAC3D,QAAQ,CAAC;QACR,GAAG,oBAAoB,CAAC,MAAM;QAC9B,YAAY;KACb,CAAC,CACuB,CAC5B,CAAA;AACH,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAI,EACnD,kBAAkB,EAClB,QAAQ,GAOT;IACC,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAA;IAEnD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,GAAG,EAAE,CAAC,CAAC,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,EACvE,CAAC,cAAc,CAAC,CACjB,CAAA;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CACL,oBAAC,YAAY,IAAC,KAAK,EAAC,uBAAuB,EAAC,SAAS;YACnD,8BAAM,SAAS,EAAC,6GAA6G,oEAEtH,CACM,CAChB,CAAA;IACH,CAAC;IAED,OAAO,CACL,oBAAC,qBAAqB,IACpB,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,YAAY,IAEzB,QAAQ,CACa,CACzB,CAAA;AACH,CAAC","sourcesContent":["import React from 'react'\nimport useQuery from '../../hooks/useQuery'\nimport useLoadDataState from '../../hooks/useLoadDataState'\nimport ErrorMessage from '../messages/ErrorMessage'\nimport { CalendarBookingsProvider } from './CalendarBookingsProvider'\nimport OnLoading from '../renderer/OnLoading'\nimport ErrorModal from './ErrorModal'\n\ntype FetchConfiguration<T> = (\n submissionId: string,\n abortSignal: AbortSignal,\n) => Promise<T>\n\nfunction CalendarBookingLoader<T>({\n submissionId,\n fetchConfiguration,\n children,\n}: {\n submissionId: string\n fetchConfiguration: FetchConfiguration<T>\n children: (renderProps: { submissionId: string } & T) => React.ReactNode\n}) {\n const [nylasSchedulingState, refreshNylasState] = useLoadDataState<T>(\n React.useCallback(\n async (abortSignal) => {\n return await fetchConfiguration(submissionId, abortSignal)\n },\n [fetchConfiguration, submissionId],\n ),\n )\n\n if (nylasSchedulingState.status === 'LOADING') {\n return (\n <div className=\"has-margin-top-1\">\n <div className=\"cypress-loading has-text-centered\">\n <OnLoading className=\"has-text-centered\" />\n </div>\n </div>\n )\n }\n\n if (nylasSchedulingState.status === 'ERROR') {\n return (\n <ErrorModal\n error={nylasSchedulingState.error}\n onClose={refreshNylasState}\n />\n )\n }\n\n return (\n <CalendarBookingsProvider refreshNylasState={refreshNylasState}>\n {children({\n ...nylasSchedulingState.result,\n submissionId,\n })}\n </CalendarBookingsProvider>\n )\n}\n\nexport default function CalendarBookingsContainer<T>({\n fetchConfiguration,\n children,\n}: {\n fetchConfiguration: (\n submissionId: string,\n abortSignal: AbortSignal,\n ) => Promise<T>\n children: (renderProps: { submissionId: string } & T) => React.ReactNode\n}) {\n const { submissionId: submissionIdQs } = useQuery()\n\n const submissionId = React.useMemo(\n () => (typeof submissionIdQs === 'string' ? submissionIdQs : undefined),\n [submissionIdQs],\n )\n\n if (!submissionId) {\n return (\n <ErrorMessage title=\"Missing Configuration\" gutterTop>\n <span className=\"cypress-scheduling-booking-form-invalid-querystring ob-scheduling-booking-form__invalid-querystring-message\">\n It seems you have navigated here incorrectly. Please go back.\n </span>\n </ErrorMessage>\n )\n }\n\n return (\n <CalendarBookingLoader\n fetchConfiguration={fetchConfiguration}\n submissionId={submissionId}\n >\n {children}\n </CalendarBookingLoader>\n )\n}\n"]}
1
+ {"version":3,"file":"CalendarBookingsContainer.js","sourceRoot":"","sources":["../../../src/components/calendar-bookings/CalendarBookingsContainer.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,sBAAsB,CAAA;AAC3C,OAAO,gBAAgB,MAAM,8BAA8B,CAAA;AAC3D,OAAO,YAAY,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,SAAS,MAAM,uBAAuB,CAAA;AAC7C,OAAO,UAAU,MAAM,cAAc,CAAA;AAOrC,SAAS,qBAAqB,CAAI,EAChC,YAAY,EACZ,kBAAkB,EAClB,QAAQ,GAKT;IACC,MAAM,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,GAAG,gBAAgB,CAChE,KAAK,CAAC,WAAW,CACf,KAAK,EAAE,WAAW,EAAE,EAAE;QACpB,OAAO,MAAM,kBAAkB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAA;IAC5D,CAAC,EACD,CAAC,kBAAkB,EAAE,YAAY,CAAC,CACnC,CACF,CAAA;IAED,IAAI,oBAAoB,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9C,OAAO,CACL,cAAK,SAAS,EAAC,kBAAkB,YAC/B,cAAK,SAAS,EAAC,mCAAmC,YAChD,KAAC,SAAS,IAAC,SAAS,EAAC,mBAAmB,GAAG,GACvC,GACF,CACP,CAAA;IACH,CAAC;IAED,IAAI,oBAAoB,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC5C,OAAO,CACL,KAAC,UAAU,IACT,KAAK,EAAE,oBAAoB,CAAC,KAAK,EACjC,OAAO,EAAE,iBAAiB,GAC1B,CACH,CAAA;IACH,CAAC;IAED,OAAO,CACL,KAAC,wBAAwB,IAAC,iBAAiB,EAAE,iBAAiB,YAC3D,QAAQ,CAAC;YACR,GAAG,oBAAoB,CAAC,MAAM;YAC9B,YAAY;SACb,CAAC,GACuB,CAC5B,CAAA;AACH,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAI,EACnD,kBAAkB,EAClB,QAAQ,GAOT;IACC,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAA;IAEnD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,GAAG,EAAE,CAAC,CAAC,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,EACvE,CAAC,cAAc,CAAC,CACjB,CAAA;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CACL,KAAC,YAAY,IAAC,KAAK,EAAC,uBAAuB,EAAC,SAAS,kBACnD,eAAM,SAAS,EAAC,6GAA6G,8EAEtH,GACM,CAChB,CAAA;IACH,CAAC;IAED,OAAO,CACL,KAAC,qBAAqB,IACpB,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,YAAY,YAEzB,QAAQ,GACa,CACzB,CAAA;AACH,CAAC","sourcesContent":["import React from 'react'\nimport useQuery from '../../hooks/useQuery'\nimport useLoadDataState from '../../hooks/useLoadDataState'\nimport ErrorMessage from '../messages/ErrorMessage'\nimport { CalendarBookingsProvider } from './CalendarBookingsProvider'\nimport OnLoading from '../renderer/OnLoading'\nimport ErrorModal from './ErrorModal'\n\ntype FetchConfiguration<T> = (\n submissionId: string,\n abortSignal: AbortSignal,\n) => Promise<T>\n\nfunction CalendarBookingLoader<T>({\n submissionId,\n fetchConfiguration,\n children,\n}: {\n submissionId: string\n fetchConfiguration: FetchConfiguration<T>\n children: (renderProps: { submissionId: string } & T) => React.ReactNode\n}) {\n const [nylasSchedulingState, refreshNylasState] = useLoadDataState<T>(\n React.useCallback(\n async (abortSignal) => {\n return await fetchConfiguration(submissionId, abortSignal)\n },\n [fetchConfiguration, submissionId],\n ),\n )\n\n if (nylasSchedulingState.status === 'LOADING') {\n return (\n <div className=\"has-margin-top-1\">\n <div className=\"cypress-loading has-text-centered\">\n <OnLoading className=\"has-text-centered\" />\n </div>\n </div>\n )\n }\n\n if (nylasSchedulingState.status === 'ERROR') {\n return (\n <ErrorModal\n error={nylasSchedulingState.error}\n onClose={refreshNylasState}\n />\n )\n }\n\n return (\n <CalendarBookingsProvider refreshNylasState={refreshNylasState}>\n {children({\n ...nylasSchedulingState.result,\n submissionId,\n })}\n </CalendarBookingsProvider>\n )\n}\n\nexport default function CalendarBookingsContainer<T>({\n fetchConfiguration,\n children,\n}: {\n fetchConfiguration: (\n submissionId: string,\n abortSignal: AbortSignal,\n ) => Promise<T>\n children: (renderProps: { submissionId: string } & T) => React.ReactNode\n}) {\n const { submissionId: submissionIdQs } = useQuery()\n\n const submissionId = React.useMemo(\n () => (typeof submissionIdQs === 'string' ? submissionIdQs : undefined),\n [submissionIdQs],\n )\n\n if (!submissionId) {\n return (\n <ErrorMessage title=\"Missing Configuration\" gutterTop>\n <span className=\"cypress-scheduling-booking-form-invalid-querystring ob-scheduling-booking-form__invalid-querystring-message\">\n It seems you have navigated here incorrectly. Please go back.\n </span>\n </ErrorMessage>\n )\n }\n\n return (\n <CalendarBookingLoader\n fetchConfiguration={fetchConfiguration}\n submissionId={submissionId}\n >\n {children}\n </CalendarBookingLoader>\n )\n}\n"]}
@@ -2,6 +2,6 @@ import * as React from 'react';
2
2
  import { submissionService } from '@oneblink/apps';
3
3
  declare function CalendarBookingsForm({ onDone, }: {
4
4
  onDone: (formSubmissionResult: submissionService.FormSubmissionResult) => Promise<void>;
5
- }): React.JSX.Element;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
6
  declare const _default: React.MemoExoticComponent<typeof CalendarBookingsForm>;
7
7
  export default _default;
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
2
  import * as React from 'react';
2
3
  import { NylasScheduling } from '@nylas/react';
3
4
  import { Collapse, Fade } from '@mui/material';
@@ -86,53 +87,40 @@ function NylasBookingForm({ submissionId, name, email, configurationId, sessionI
86
87
  }));
87
88
  }
88
89
  }, [onBookingConfirmed, executePostSubmissionAction]);
89
- return (React.createElement(React.Fragment, null,
90
- React.createElement(Collapse, { in: isConfirmingBooking },
91
- React.createElement("div", { className: "has-margin-top-1" },
92
- React.createElement("div", { className: "cypress-loading has-text-centered" },
93
- React.createElement(OnLoading, { className: "has-text-centered" }),
94
- React.createElement(Fade, { in: !!(formSubmissionResult === null || formSubmissionResult === void 0 ? void 0 : formSubmissionResult.payment) },
95
- React.createElement("span", null, "Redirecting to payment"))))),
96
- React.createElement("div", { className: "ob-scheduling-booking-form" },
97
- !(formSubmissionResult === null || formSubmissionResult === void 0 ? void 0 : formSubmissionResult.payment) && (React.createElement(NylasScheduling, { eventOverrides: {
98
- timeslotConfirmed: onTimeSlotConfirmed,
99
- async bookedEventInfo(event) {
100
- var _a, _b;
101
- console.log('bookedEventInfo event', event);
102
- event.preventDefault();
103
- if ('error' in event.detail) {
104
- setBookingError((_b = (_a = event.detail.error) === null || _a === void 0 ? void 0 : _a.message) !== null && _b !== void 0 ? _b : 'Calendar Booking Error');
105
- }
106
- else if ('data' in event.detail) {
107
- await handleConfirmedBooking({
108
- submissionId,
109
- startTime: new Date(event.detail.data.start_time * 1000),
110
- endTime: new Date(event.detail.data.end_time * 1000),
111
- location: event.detail.data.location,
112
- isReschedule: false,
113
- });
114
- }
115
- },
116
- }, bookingInfo: {
117
- primaryParticipant: {
118
- name: name !== null && name !== void 0 ? name : '',
119
- email: email !== null && email !== void 0 ? email : '',
120
- },
121
- additionalFields: {
122
- submissionId: {
123
- value: submissionId,
124
- type: 'text',
125
- },
126
- },
127
- }, enableUserFeedback: false, configurationId: configurationId, sessionId: sessionId, nylasBranding: false })),
128
- formSubmissionResult && !formSubmissionResult.payment && (React.createElement(Receipt, { className: "ob-scheduling-receipt", containerClassName: "ob-scheduling-receipt__container" },
129
- React.createElement("div", { className: "buttons" },
130
- React.createElement("button", { type: "button", className: clsx('is-primary button ob-button ob-scheduling-receipt__button ob-scheduling-receipt__okay-button cypress-scheduling-receipt-okay-button', { 'is-loading': isRunningPostSubmissionAction }), disabled: isRunningPostSubmissionAction, onClick: () => executePostSubmissionAction(formSubmissionResult) }, "Done")))),
131
- React.createElement(ErrorModal, { error: postSubmissionError, onClose: clearPostSubmissionError }),
132
- React.createElement(ErrorModal, { error: confirmingBookingError, onClose: clearConfirmingBookingError }))));
90
+ return (_jsxs(_Fragment, { children: [_jsx(Collapse, { in: isConfirmingBooking, children: _jsx("div", { className: "has-margin-top-1", children: _jsxs("div", { className: "cypress-loading has-text-centered", children: [_jsx(OnLoading, { className: "has-text-centered" }), _jsx(Fade, { in: !!(formSubmissionResult === null || formSubmissionResult === void 0 ? void 0 : formSubmissionResult.payment), children: _jsx("span", { children: "Redirecting to payment" }) })] }) }) }), _jsxs("div", { className: "ob-scheduling-booking-form", children: [!(formSubmissionResult === null || formSubmissionResult === void 0 ? void 0 : formSubmissionResult.payment) && (_jsx(NylasScheduling, { eventOverrides: {
91
+ timeslotConfirmed: onTimeSlotConfirmed,
92
+ async bookedEventInfo(event) {
93
+ var _a, _b;
94
+ console.log('bookedEventInfo event', event);
95
+ event.preventDefault();
96
+ if ('error' in event.detail) {
97
+ setBookingError((_b = (_a = event.detail.error) === null || _a === void 0 ? void 0 : _a.message) !== null && _b !== void 0 ? _b : 'Calendar Booking Error');
98
+ }
99
+ else if ('data' in event.detail) {
100
+ await handleConfirmedBooking({
101
+ submissionId,
102
+ startTime: new Date(event.detail.data.start_time * 1000),
103
+ endTime: new Date(event.detail.data.end_time * 1000),
104
+ location: event.detail.data.location,
105
+ isReschedule: false,
106
+ });
107
+ }
108
+ },
109
+ }, bookingInfo: {
110
+ primaryParticipant: {
111
+ name: name !== null && name !== void 0 ? name : '',
112
+ email: email !== null && email !== void 0 ? email : '',
113
+ },
114
+ additionalFields: {
115
+ submissionId: {
116
+ value: submissionId,
117
+ type: 'text',
118
+ },
119
+ },
120
+ }, enableUserFeedback: false, configurationId: configurationId, sessionId: sessionId, nylasBranding: false })), formSubmissionResult && !formSubmissionResult.payment && (_jsx(Receipt, { className: "ob-scheduling-receipt", containerClassName: "ob-scheduling-receipt__container", children: _jsx("div", { className: "buttons", children: _jsx("button", { type: "button", className: clsx('is-primary button ob-button ob-scheduling-receipt__button ob-scheduling-receipt__okay-button cypress-scheduling-receipt-okay-button', { 'is-loading': isRunningPostSubmissionAction }), disabled: isRunningPostSubmissionAction, onClick: () => executePostSubmissionAction(formSubmissionResult), children: "Done" }) }) })), _jsx(ErrorModal, { error: postSubmissionError, onClose: clearPostSubmissionError }), _jsx(ErrorModal, { error: confirmingBookingError, onClose: clearConfirmingBookingError })] })] }));
133
121
  }
134
122
  function CalendarBookingsForm({ onDone, }) {
135
- return (React.createElement(CalendarBookingsContainer, { fetchConfiguration: schedulingService.createNylasNewBookingSession }, (props) => React.createElement(NylasBookingForm, { ...props, onDone: onDone })));
123
+ return (_jsx(CalendarBookingsContainer, { fetchConfiguration: schedulingService.createNylasNewBookingSession, children: (props) => _jsx(NylasBookingForm, { ...props, onDone: onDone }) }));
136
124
  }
137
125
  export default React.memo(CalendarBookingsForm);
138
126
  //# sourceMappingURL=CalendarBookingsForm.js.map