@elliemae/pui-app-sdk 3.0.0-beta.7 → 3.0.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 (431) hide show
  1. package/README.md +4 -0
  2. package/dist/cjs/analytics/appdynamics.js +29 -9
  3. package/dist/cjs/analytics/index.js +28 -13
  4. package/dist/cjs/analytics/page-view-event.js +11 -10
  5. package/dist/cjs/analytics/user-session-event.js +12 -11
  6. package/dist/cjs/analytics/user-wait-event.js +11 -10
  7. package/dist/cjs/analytics/web-analytics.js +34 -3
  8. package/dist/cjs/api/auth/index.js +11 -10
  9. package/dist/cjs/api/helpers.js +12 -11
  10. package/dist/cjs/api/users/index.js +11 -10
  11. package/dist/cjs/communication/http-client/index.js +60 -21
  12. package/dist/cjs/communication/http-client/request-interceptor.js +11 -10
  13. package/dist/cjs/communication/http-client/response-interceptor.js +13 -7
  14. package/dist/cjs/communication/http-client/retry-axios.js +14 -8
  15. package/dist/cjs/communication/http-client/retry.js +11 -10
  16. package/dist/cjs/data/auth/actions.js +19 -2
  17. package/dist/cjs/data/auth/reducer.js +14 -8
  18. package/dist/cjs/data/breakpoint/index.js +13 -7
  19. package/dist/cjs/data/error/index.js +11 -10
  20. package/dist/cjs/data/index.js +35 -0
  21. package/dist/cjs/data/live-message/index.js +11 -10
  22. package/dist/cjs/data/logout/actions.js +19 -2
  23. package/dist/cjs/data/navigation-prompt/actions.js +19 -2
  24. package/dist/cjs/data/react-redux.js +11 -10
  25. package/dist/cjs/data/reducers.js +32 -18
  26. package/dist/cjs/data/saga.js +19 -2
  27. package/dist/cjs/data/store.js +18 -22
  28. package/dist/cjs/data/wait-message/actions.js +19 -2
  29. package/dist/cjs/data/wait-message/reducer.js +14 -8
  30. package/dist/cjs/data/webpack-hmr.js +42 -0
  31. package/dist/cjs/index.js +90 -85
  32. package/dist/cjs/micro-frontend.js +34 -0
  33. package/dist/cjs/package.json +7 -1
  34. package/dist/cjs/sideeffect/auth/index.js +36 -20
  35. package/dist/cjs/sideeffect/error-toast/index.js +34 -17
  36. package/dist/cjs/sideeffect/wait-message/index.js +36 -20
  37. package/dist/cjs/utils/app-config/config.js +14 -8
  38. package/dist/cjs/utils/app-config/index.js +17 -11
  39. package/dist/cjs/utils/app-host-integration/react.js +11 -10
  40. package/dist/cjs/utils/auth/helper.js +13 -7
  41. package/dist/cjs/utils/auth/index.js +42 -25
  42. package/dist/cjs/utils/await.js +18 -1
  43. package/dist/cjs/utils/constants.js +19 -2
  44. package/dist/cjs/utils/font-size.js +19 -2
  45. package/dist/cjs/utils/guest-with-service.js +19 -2
  46. package/dist/cjs/utils/helpers.js +20 -3
  47. package/dist/cjs/utils/history.js +11 -10
  48. package/dist/cjs/utils/log-records.js +19 -2
  49. package/dist/cjs/utils/micro-frontend/console-logger.js +12 -11
  50. package/dist/cjs/utils/micro-frontend/guest.js +25 -19
  51. package/dist/cjs/utils/micro-frontend/host.js +30 -29
  52. package/dist/cjs/utils/micro-frontend/index.js +17 -11
  53. package/dist/cjs/utils/micro-frontend/types.js +18 -1
  54. package/dist/cjs/utils/redact-pii.js +19 -2
  55. package/dist/cjs/utils/service-worker.js +14 -14
  56. package/dist/cjs/utils/session.js +15 -14
  57. package/dist/cjs/utils/storybook/{main.js → cjs/main.js} +11 -3
  58. package/dist/cjs/utils/storybook/{middleware.js → cjs/middleware.js} +0 -0
  59. package/dist/cjs/utils/storybook/{vite.js → cjs/vite.js} +0 -0
  60. package/dist/cjs/utils/storybook/{webpack.js → cjs/webpack.js} +0 -0
  61. package/dist/cjs/utils/storybook/manager.js +12 -11
  62. package/dist/cjs/utils/storybook/preview.js +24 -19
  63. package/dist/cjs/utils/storybook/theme.js +50 -19
  64. package/dist/cjs/utils/testing/index.js +34 -14
  65. package/dist/cjs/utils/testing/render-with-redux.js +37 -15
  66. package/dist/cjs/utils/testing/render-with-router-redux.js +41 -19
  67. package/dist/cjs/utils/testing/render-with-router.js +40 -15
  68. package/dist/cjs/utils/testing/render-with-state-addons.js +56 -21
  69. package/dist/cjs/utils/types.js +18 -1
  70. package/dist/cjs/utils/url.js +19 -2
  71. package/dist/cjs/utils/web-storage.js +13 -7
  72. package/dist/cjs/utils/window.js +11 -10
  73. package/dist/cjs/view/app-root/hosted-app.js +26 -15
  74. package/dist/cjs/view/app-root/index.js +37 -26
  75. package/dist/cjs/view/app-root/stand-alone-app.js +27 -17
  76. package/dist/cjs/view/app-root/style.js +11 -10
  77. package/dist/cjs/view/app-router.js +77 -0
  78. package/dist/cjs/view/{media-breakpoint/index.js → breakpoint/use-breakpoint.js} +20 -21
  79. package/dist/cjs/view/{useMediaBreakpoints/index.js → breakpoint/use-media-query-list.js} +15 -14
  80. package/dist/cjs/view/error-boundary/default-error-template.js +14 -8
  81. package/dist/cjs/view/error-boundary/index.js +35 -13
  82. package/dist/cjs/view/error-toast/index.js +37 -21
  83. package/dist/cjs/view/fetch-host-app-data/index.js +16 -10
  84. package/dist/cjs/view/fetch-host-app-data/store.js +26 -11
  85. package/dist/cjs/view/fields/check-box/index.js +57 -26
  86. package/dist/cjs/view/fields/combo-box/index.js +68 -28
  87. package/dist/cjs/view/fields/connect-form.js +26 -13
  88. package/dist/cjs/view/fields/date-input/index.js +58 -23
  89. package/dist/cjs/view/fields/date-picker/index.js +58 -23
  90. package/dist/cjs/view/fields/form-item-layout/index.js +56 -25
  91. package/dist/cjs/view/fields/form-layout-block-item/index.js +84 -0
  92. package/dist/cjs/view/fields/input-mask/index.js +58 -24
  93. package/dist/cjs/view/fields/large-text-box/index.js +58 -23
  94. package/dist/cjs/view/fields/radio/index.js +67 -25
  95. package/dist/cjs/view/fields/radio-group/index.js +57 -22
  96. package/dist/cjs/view/fields/text-box/index.js +58 -23
  97. package/dist/cjs/view/fields/watch-value.js +19 -11
  98. package/dist/cjs/view/form/index.js +32 -15
  99. package/dist/cjs/view/form/personal-info-section.js +46 -36
  100. package/dist/cjs/view/form/submit-button/index.js +48 -15
  101. package/dist/cjs/view/guest-unload-handlers/index.js +11 -10
  102. package/dist/cjs/view/host-binding-events/index.js +19 -2
  103. package/dist/cjs/view/live-message/index.js +15 -9
  104. package/dist/cjs/view/loadable/index.js +30 -12
  105. package/dist/cjs/view/login/index.js +16 -20
  106. package/dist/cjs/view/message-to-host-app/index.js +11 -10
  107. package/dist/cjs/view/micro-app/app-factory/index.js +40 -20
  108. package/dist/cjs/view/micro-app/const.js +19 -2
  109. package/dist/cjs/view/micro-app/index.js +17 -11
  110. package/dist/cjs/view/micro-app/resources/manifest.js +16 -13
  111. package/dist/cjs/view/micro-app/resources/script.js +12 -11
  112. package/dist/cjs/view/micro-app/resources/style.js +11 -10
  113. package/dist/cjs/view/micro-app/types.js +18 -1
  114. package/dist/cjs/view/micro-app/use-app-will-render.js +36 -19
  115. package/dist/cjs/view/micro-app/utils.js +11 -10
  116. package/dist/cjs/view/micro-iframe-app/app.js +57 -22
  117. package/dist/cjs/view/micro-iframe-app/iframe/const.js +19 -2
  118. package/dist/cjs/view/micro-iframe-app/iframe/index.js +37 -14
  119. package/dist/cjs/view/micro-iframe-app/index.js +49 -14
  120. package/dist/cjs/view/micro-iframe-app/types.js +18 -1
  121. package/dist/cjs/view/micro-iframe-app/use-frame-loaded.js +16 -13
  122. package/dist/cjs/view/modals/error/index.js +31 -22
  123. package/dist/cjs/view/modals/navigation-prompt/index.js +39 -22
  124. package/dist/cjs/view/modals/session-expiry/customHooks.js +14 -13
  125. package/dist/cjs/view/modals/session-expiry/index.js +39 -30
  126. package/dist/cjs/view/modals/wait-message/index.js +59 -22
  127. package/dist/cjs/view/modals/wait-message/{html-wait-message.js → use-html-wait-message.js} +14 -15
  128. package/dist/cjs/view/modals/wait-message/wait-message-launcher.js +14 -14
  129. package/dist/cjs/view/page.js +51 -0
  130. package/dist/cjs/view/render-with-delay/index.js +15 -9
  131. package/dist/cjs/view/render-with-host-data/index.js +16 -10
  132. package/dist/cjs/view/require-auth.js +58 -0
  133. package/dist/cjs/view/session-timeout/index.js +23 -13
  134. package/dist/cjs/view/storybook/decorator.js +15 -9
  135. package/dist/cjs/view/use-previous.js +11 -10
  136. package/dist/cjs/view/{window-size/index.js → use-window-size-change.js} +15 -16
  137. package/dist/cjs/view/visually-hidden/index.js +32 -13
  138. package/dist/esm/analytics/appdynamics.js +34 -0
  139. package/dist/esm/analytics/index.js +43 -0
  140. package/dist/{es → esm}/analytics/page-view-event.js +0 -0
  141. package/dist/{es → esm}/analytics/user-session-event.js +0 -0
  142. package/dist/{es → esm}/analytics/user-wait-event.js +0 -0
  143. package/dist/esm/analytics/web-analytics.js +30 -0
  144. package/dist/{es → esm}/api/auth/index.js +0 -0
  145. package/dist/{es → esm}/api/helpers.js +0 -0
  146. package/dist/{es → esm}/api/users/index.js +0 -0
  147. package/dist/{es → esm}/api/users/users.json +0 -0
  148. package/dist/{es → esm}/app.config.json +0 -0
  149. package/dist/esm/communication/http-client/index.js +70 -0
  150. package/dist/{es → esm}/communication/http-client/request-interceptor.js +0 -0
  151. package/dist/{es → esm}/communication/http-client/response-interceptor.js +0 -0
  152. package/dist/{es → esm}/communication/http-client/retry-axios.js +1 -1
  153. package/dist/{es → esm}/communication/http-client/retry.js +0 -0
  154. package/dist/{es → esm}/data/auth/actions.js +0 -0
  155. package/dist/{es → esm}/data/auth/reducer.js +0 -0
  156. package/dist/{es → esm}/data/breakpoint/index.js +0 -0
  157. package/dist/{es → esm}/data/error/index.js +0 -0
  158. package/dist/esm/data/index.js +11 -0
  159. package/dist/{es → esm}/data/live-message/index.js +0 -0
  160. package/dist/{es → esm}/data/logout/actions.js +0 -0
  161. package/dist/{es → esm}/data/navigation-prompt/actions.js +0 -0
  162. package/dist/{es → esm}/data/react-redux.js +0 -0
  163. package/dist/esm/data/reducers.js +33 -0
  164. package/dist/{es → esm}/data/saga.js +0 -0
  165. package/dist/{es → esm}/data/store.js +5 -12
  166. package/dist/{es → esm}/data/wait-message/actions.js +0 -0
  167. package/dist/{es → esm}/data/wait-message/reducer.js +0 -0
  168. package/dist/esm/data/webpack-hmr.js +17 -0
  169. package/dist/{es → esm}/index.js +13 -11
  170. package/dist/{es → esm}/index.pug +0 -0
  171. package/dist/esm/micro-frontend.js +10 -0
  172. package/dist/esm/package.json +7 -0
  173. package/dist/esm/sideeffect/auth/index.js +64 -0
  174. package/dist/esm/sideeffect/error-toast/index.js +43 -0
  175. package/dist/esm/sideeffect/wait-message/index.js +55 -0
  176. package/dist/{es → esm}/utils/app-config/config.js +1 -1
  177. package/dist/{es → esm}/utils/app-config/index.js +0 -0
  178. package/dist/{es → esm}/utils/app-host-integration/react.js +0 -0
  179. package/dist/{es → esm}/utils/auth/helper.js +0 -0
  180. package/dist/{es → esm}/utils/auth/index.js +25 -7
  181. package/dist/{es → esm}/utils/await.js +0 -0
  182. package/dist/{es → esm}/utils/constants.js +0 -0
  183. package/dist/{es → esm}/utils/font-size.js +0 -0
  184. package/dist/{es → esm}/utils/guest-with-service.js +0 -0
  185. package/dist/{es → esm}/utils/helpers.js +1 -1
  186. package/dist/{es → esm}/utils/history.js +0 -0
  187. package/dist/{es → esm}/utils/log-records.js +0 -0
  188. package/dist/{es → esm}/utils/micro-frontend/console-logger.js +0 -0
  189. package/dist/{es → esm}/utils/micro-frontend/guest.js +1 -1
  190. package/dist/{es → esm}/utils/micro-frontend/host.js +5 -4
  191. package/dist/{es → esm}/utils/micro-frontend/index.js +0 -0
  192. package/dist/{es → esm}/utils/micro-frontend/types.js +0 -0
  193. package/dist/{es → esm}/utils/redact-pii.js +0 -0
  194. package/dist/{es → esm}/utils/service-worker.js +2 -3
  195. package/dist/{es → esm}/utils/session.js +2 -2
  196. package/dist/{es → esm}/utils/storybook/manager.js +0 -0
  197. package/dist/{es → esm}/utils/storybook/preview.js +8 -4
  198. package/dist/esm/utils/storybook/theme.js +45 -0
  199. package/dist/esm/utils/testing/index.js +38 -0
  200. package/dist/esm/utils/testing/render-with-redux.js +35 -0
  201. package/dist/esm/utils/testing/render-with-router-redux.js +41 -0
  202. package/dist/esm/utils/testing/render-with-router.js +37 -0
  203. package/dist/esm/utils/testing/render-with-state-addons.js +69 -0
  204. package/dist/{es → esm}/utils/types.js +0 -0
  205. package/dist/{es → esm}/utils/url.js +0 -0
  206. package/dist/{es → esm}/utils/web-storage.js +0 -0
  207. package/dist/{es → esm}/utils/window.js +0 -0
  208. package/dist/esm/view/app-root/hosted-app.js +20 -0
  209. package/dist/{es → esm}/view/app-root/index.js +19 -12
  210. package/dist/esm/view/app-root/stand-alone-app.js +25 -0
  211. package/dist/{es → esm}/view/app-root/style.js +0 -0
  212. package/dist/esm/view/app-router.js +50 -0
  213. package/dist/{es/view/media-breakpoint/index.js → esm/view/breakpoint/use-breakpoint.js} +4 -6
  214. package/dist/{es/view/useMediaBreakpoints/index.js → esm/view/breakpoint/use-media-query-list.js} +4 -4
  215. package/dist/esm/view/error-boundary/default-error-template.js +5 -0
  216. package/dist/esm/view/error-boundary/index.js +54 -0
  217. package/dist/esm/view/error-toast/index.js +42 -0
  218. package/dist/{es → esm}/view/fetch-host-app-data/index.js +0 -0
  219. package/dist/esm/view/fetch-host-app-data/store.js +28 -0
  220. package/dist/esm/view/fields/check-box/index.js +52 -0
  221. package/dist/esm/view/fields/combo-box/index.js +64 -0
  222. package/dist/esm/view/fields/connect-form.js +24 -0
  223. package/dist/esm/view/fields/date-input/index.js +53 -0
  224. package/dist/esm/view/fields/date-picker/index.js +53 -0
  225. package/dist/esm/view/fields/form-item-layout/index.js +50 -0
  226. package/dist/esm/view/fields/form-layout-block-item/index.js +57 -0
  227. package/dist/esm/view/fields/input-mask/index.js +59 -0
  228. package/dist/esm/view/fields/large-text-box/index.js +53 -0
  229. package/dist/esm/view/fields/radio/index.js +62 -0
  230. package/dist/esm/view/fields/radio-group/index.js +52 -0
  231. package/dist/esm/view/fields/text-box/index.js +53 -0
  232. package/dist/esm/view/fields/watch-value.js +23 -0
  233. package/dist/esm/view/form/index.js +46 -0
  234. package/dist/{es → esm}/view/form/personal-info-section.js +29 -25
  235. package/dist/esm/view/form/submit-button/index.js +48 -0
  236. package/dist/{es → esm}/view/guest-unload-handlers/index.js +0 -0
  237. package/dist/{es → esm}/view/host-binding-events/index.js +0 -0
  238. package/dist/{es → esm}/view/intro.stories.mdx +0 -0
  239. package/dist/{es → esm}/view/live-message/index.js +0 -0
  240. package/dist/esm/view/loadable/index.js +28 -0
  241. package/dist/{es → esm}/view/login/index.js +2 -7
  242. package/dist/{es → esm}/view/message-to-host-app/index.js +0 -0
  243. package/dist/{es → esm}/view/micro-app/app-factory/index.js +23 -2
  244. package/dist/{es → esm}/view/micro-app/const.js +0 -0
  245. package/dist/{es → esm}/view/micro-app/index.js +0 -0
  246. package/dist/{es → esm}/view/micro-app/resources/manifest.js +2 -0
  247. package/dist/{es → esm}/view/micro-app/resources/script.js +1 -1
  248. package/dist/{es → esm}/view/micro-app/resources/style.js +0 -0
  249. package/dist/{es → esm}/view/micro-app/types.js +0 -0
  250. package/dist/{es → esm}/view/micro-app/use-app-will-render.js +21 -3
  251. package/dist/{es → esm}/view/micro-app/utils.js +0 -0
  252. package/dist/esm/view/micro-iframe-app/app.js +58 -0
  253. package/dist/{es → esm}/view/micro-iframe-app/iframe/const.js +0 -0
  254. package/dist/{es → esm}/view/micro-iframe-app/iframe/index.html +0 -0
  255. package/dist/esm/view/micro-iframe-app/iframe/index.js +54 -0
  256. package/dist/esm/view/micro-iframe-app/index.js +57 -0
  257. package/dist/{es → esm}/view/micro-iframe-app/types.js +0 -0
  258. package/dist/{es → esm}/view/micro-iframe-app/use-frame-loaded.js +2 -0
  259. package/dist/esm/view/modals/error/index.js +33 -0
  260. package/dist/esm/view/modals/navigation-prompt/index.js +40 -0
  261. package/dist/{es → esm}/view/modals/session-expiry/customHooks.js +0 -0
  262. package/dist/esm/view/modals/session-expiry/index.js +51 -0
  263. package/dist/esm/view/modals/wait-message/index.js +69 -0
  264. package/dist/esm/view/modals/wait-message/use-html-wait-message.js +11 -0
  265. package/dist/{es → esm}/view/modals/wait-message/wait-message-launcher.js +1 -2
  266. package/dist/{es/route/page-view.js → esm/view/page.js} +7 -0
  267. package/dist/{es → esm}/view/render-with-delay/index.js +1 -1
  268. package/dist/{es → esm}/view/render-with-host-data/index.js +0 -0
  269. package/dist/esm/view/require-auth.js +29 -0
  270. package/dist/{es → esm}/view/session-timeout/index.js +5 -1
  271. package/dist/{es → esm}/view/storybook/decorator.js +0 -0
  272. package/dist/{es → esm}/view/use-previous.js +0 -0
  273. package/dist/{es/view/window-size/index.js → esm/view/use-window-size-change.js} +3 -5
  274. package/dist/esm/view/visually-hidden/index.js +37 -0
  275. package/dist/types/communication/http-client/tests/{index.test-disable.d.ts → index.test.d.ts} +0 -0
  276. package/dist/types/data/index.d.ts +4 -0
  277. package/dist/types/data/react-redux.d.ts +8 -17
  278. package/dist/types/data/store.d.ts +0 -1
  279. package/dist/types/data/webpack-hmr.d.ts +1 -0
  280. package/dist/types/index.d.ts +5 -6
  281. package/dist/types/micro-frontend.d.ts +6 -0
  282. package/dist/types/utils/app-config/config.d.ts +1 -1
  283. package/dist/types/utils/history.d.ts +2 -2
  284. package/dist/types/utils/micro-frontend/guest.d.ts +3 -3
  285. package/dist/types/utils/micro-frontend/host.d.ts +2 -2
  286. package/dist/types/utils/micro-frontend/types.d.ts +1 -1
  287. package/dist/types/utils/session.d.ts +5 -2
  288. package/dist/types/utils/storybook/{main.d.cts → cjs/main.d.ts} +15 -1
  289. package/dist/types/utils/storybook/{middleware.d.cts → cjs/middleware.d.ts} +0 -0
  290. package/dist/types/utils/storybook/{vite.d.cts → cjs/vite.d.ts} +0 -0
  291. package/dist/types/utils/storybook/{webpack.d.cts → cjs/webpack.d.ts} +0 -0
  292. package/dist/types/utils/storybook/preview.d.ts +1 -0
  293. package/dist/types/utils/testing/render-with-router.d.ts +1 -1
  294. package/dist/types/utils/testing/render-with-state-addons.d.ts +1 -1
  295. package/dist/types/view/app-root/hosted-app.d.ts +2 -1
  296. package/dist/types/view/app-root/index.d.ts +1 -1
  297. package/dist/types/view/app-root/stand-alone-app.d.ts +1 -1
  298. package/dist/types/view/app-router.d.ts +9 -0
  299. package/dist/types/view/{media-breakpoint → breakpoint}/index.stories.d.ts +0 -0
  300. package/dist/types/view/breakpoint/use-breakpoint.d.ts +1 -0
  301. package/dist/types/view/breakpoint/use-media-query-list.d.ts +1 -0
  302. package/dist/types/view/error-boundary/default-error-template.d.ts +1 -1
  303. package/dist/types/view/fields/check-box/index.d.ts +2 -4
  304. package/dist/types/view/fields/check-box/index.stories.d.ts +1 -3
  305. package/dist/types/view/fields/combo-box/index.d.ts +1 -2
  306. package/dist/types/view/fields/combo-box/index.stories.d.ts +2 -4
  307. package/dist/types/view/fields/connect-form.d.ts +1 -1
  308. package/dist/types/view/fields/date-input/index.d.ts +1 -1
  309. package/dist/types/view/fields/date-picker/index.d.ts +2 -1
  310. package/dist/types/view/fields/date-picker/index.stories.d.ts +1 -3
  311. package/dist/types/view/fields/form-item-layout/index.d.ts +1 -1
  312. package/dist/types/view/fields/form-layout-block-item/index.d.ts +8 -0
  313. package/dist/types/view/{header → fields/form-layout-block-item}/index.stories.d.ts +2 -2
  314. package/dist/types/view/fields/input-mask/index.d.ts +2 -2
  315. package/dist/types/view/fields/input-mask/index.stories.d.ts +1 -3
  316. package/dist/types/view/fields/large-text-box/index.d.ts +1 -1
  317. package/dist/types/view/fields/large-text-box/index.stories.d.ts +1 -3
  318. package/dist/types/view/fields/radio/index.d.ts +2 -2
  319. package/dist/types/view/fields/radio/index.stories.d.ts +1 -3
  320. package/dist/types/view/fields/radio-group/index.d.ts +1 -1
  321. package/dist/types/view/fields/text-box/index.d.ts +1 -1
  322. package/dist/types/view/fields/watch-value.d.ts +2 -2
  323. package/dist/types/view/form/personal-info-section.d.ts +3 -3
  324. package/dist/types/view/form/submit-button/index.d.ts +2 -1
  325. package/dist/types/view/live-message/index.d.ts +1 -1
  326. package/dist/types/view/login/index.d.ts +1 -2
  327. package/dist/types/view/micro-app/app-factory/index.d.ts +2 -2
  328. package/dist/types/view/micro-app/resources/manifest.d.ts +2 -2
  329. package/dist/types/view/modals/error/index.d.ts +3 -2
  330. package/dist/types/view/modals/navigation-prompt/index.d.ts +0 -1
  331. package/dist/types/view/modals/session-expiry/index.d.ts +0 -1
  332. package/dist/types/view/modals/wait-message/index.stories.d.ts +6 -2
  333. package/dist/types/view/modals/wait-message/use-html-wait-message.d.ts +1 -0
  334. package/dist/types/view/modals/wait-message/wait-message-launcher.d.ts +1 -2
  335. package/dist/types/view/page.d.ts +8 -0
  336. package/dist/types/view/require-auth.d.ts +8 -0
  337. package/dist/types/view/session-timeout/index.d.ts +1 -1
  338. package/dist/types/view/session-timeout/index.stories.d.ts +1 -4
  339. package/dist/types/view/use-window-size-change.d.ts +1 -0
  340. package/package.json +67 -36
  341. package/dist/cjs/communication/http-client/tests/index.test-disable.js +0 -64
  342. package/dist/cjs/route/index.js +0 -49
  343. package/dist/cjs/route/page-view.js +0 -38
  344. package/dist/cjs/route/private-route/index.js +0 -69
  345. package/dist/cjs/typings/custom.d.js +0 -0
  346. package/dist/cjs/typings/elliemae.d.js +0 -0
  347. package/dist/cjs/typings/styled.d.js +0 -19
  348. package/dist/cjs/typings/thirdparty.d.js +0 -0
  349. package/dist/cjs/view/header/center-region/index.js +0 -65
  350. package/dist/cjs/view/header/index.js +0 -44
  351. package/dist/cjs/view/header/logo-region/index.js +0 -33
  352. package/dist/cjs/view/header/logo-region/logo.svg +0 -2
  353. package/dist/cjs/view/header/nav-region/index.js +0 -47
  354. package/dist/cjs/view/header/nav-region/notification/index.js +0 -32
  355. package/dist/cjs/view/header/nav-region/notification/index.svg +0 -5
  356. package/dist/cjs/view/header/nav-region/user/index.js +0 -32
  357. package/dist/cjs/view/header/nav-region/user/index.svg +0 -4
  358. package/dist/es/analytics/appdynamics.js +0 -18
  359. package/dist/es/analytics/index.js +0 -27
  360. package/dist/es/analytics/web-analytics.js +0 -14
  361. package/dist/es/communication/http-client/index.js +0 -35
  362. package/dist/es/communication/http-client/tests/index.test-disable.js +0 -46
  363. package/dist/es/data/reducers.js +0 -18
  364. package/dist/es/package.json +0 -1
  365. package/dist/es/route/index.js +0 -26
  366. package/dist/es/route/private-route/index.js +0 -46
  367. package/dist/es/sideeffect/auth/index.js +0 -47
  368. package/dist/es/sideeffect/error-toast/index.js +0 -25
  369. package/dist/es/sideeffect/wait-message/index.js +0 -38
  370. package/dist/es/typings/custom.d.js +0 -0
  371. package/dist/es/typings/elliemae.d.js +0 -0
  372. package/dist/es/typings/styled.d.js +0 -1
  373. package/dist/es/typings/thirdparty.d.js +0 -0
  374. package/dist/es/utils/storybook/theme.js +0 -13
  375. package/dist/es/utils/testing/index.js +0 -22
  376. package/dist/es/utils/testing/render-with-redux.js +0 -17
  377. package/dist/es/utils/testing/render-with-router-redux.js +0 -23
  378. package/dist/es/utils/testing/render-with-router.js +0 -16
  379. package/dist/es/utils/testing/render-with-state-addons.js +0 -38
  380. package/dist/es/view/app-root/hosted-app.js +0 -15
  381. package/dist/es/view/app-root/stand-alone-app.js +0 -21
  382. package/dist/es/view/error-boundary/default-error-template.js +0 -5
  383. package/dist/es/view/error-boundary/index.js +0 -36
  384. package/dist/es/view/error-toast/index.js +0 -35
  385. package/dist/es/view/fetch-host-app-data/store.js +0 -12
  386. package/dist/es/view/fields/check-box/index.js +0 -25
  387. package/dist/es/view/fields/combo-box/index.js +0 -28
  388. package/dist/es/view/fields/connect-form.js +0 -10
  389. package/dist/es/view/fields/date-input/index.js +0 -22
  390. package/dist/es/view/fields/date-picker/index.js +0 -22
  391. package/dist/es/view/fields/form-item-layout/index.js +0 -23
  392. package/dist/es/view/fields/input-mask/index.js +0 -28
  393. package/dist/es/view/fields/large-text-box/index.js +0 -22
  394. package/dist/es/view/fields/radio/index.js +0 -24
  395. package/dist/es/view/fields/radio-group/index.js +0 -21
  396. package/dist/es/view/fields/text-box/index.js +0 -22
  397. package/dist/es/view/fields/watch-value.js +0 -21
  398. package/dist/es/view/form/index.js +0 -33
  399. package/dist/es/view/form/submit-button/index.js +0 -19
  400. package/dist/es/view/header/center-region/index.js +0 -42
  401. package/dist/es/view/header/index.js +0 -21
  402. package/dist/es/view/header/logo-region/index.js +0 -10
  403. package/dist/es/view/header/logo-region/logo.svg +0 -2
  404. package/dist/es/view/header/nav-region/index.js +0 -24
  405. package/dist/es/view/header/nav-region/notification/index.js +0 -9
  406. package/dist/es/view/header/nav-region/notification/index.svg +0 -5
  407. package/dist/es/view/header/nav-region/user/index.js +0 -9
  408. package/dist/es/view/header/nav-region/user/index.svg +0 -4
  409. package/dist/es/view/loadable/index.js +0 -14
  410. package/dist/es/view/micro-iframe-app/app.js +0 -27
  411. package/dist/es/view/micro-iframe-app/iframe/index.js +0 -35
  412. package/dist/es/view/micro-iframe-app/index.js +0 -26
  413. package/dist/es/view/modals/error/index.js +0 -24
  414. package/dist/es/view/modals/navigation-prompt/index.js +0 -22
  415. package/dist/es/view/modals/session-expiry/index.js +0 -40
  416. package/dist/es/view/modals/wait-message/html-wait-message.js +0 -13
  417. package/dist/es/view/modals/wait-message/index.js +0 -36
  418. package/dist/es/view/visually-hidden/index.js +0 -22
  419. package/dist/types/route/index.d.ts +0 -8
  420. package/dist/types/route/page-view.d.ts +0 -1
  421. package/dist/types/route/private-route/index.d.ts +0 -8
  422. package/dist/types/view/header/center-region/index.d.ts +0 -9
  423. package/dist/types/view/header/index.d.ts +0 -7
  424. package/dist/types/view/header/logo-region/index.d.ts +0 -2
  425. package/dist/types/view/header/nav-region/index.d.ts +0 -2
  426. package/dist/types/view/header/nav-region/notification/index.d.ts +0 -2
  427. package/dist/types/view/header/nav-region/user/index.d.ts +0 -2
  428. package/dist/types/view/media-breakpoint/index.d.ts +0 -2
  429. package/dist/types/view/modals/wait-message/html-wait-message.d.ts +0 -6
  430. package/dist/types/view/useMediaBreakpoints/index.d.ts +0 -1
  431. package/dist/types/view/window-size/index.d.ts +0 -2
@@ -0,0 +1,46 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+ import * as React from "react";
18
+ import styled from "styled-components";
19
+ import {
20
+ useForm,
21
+ FormProvider
22
+ } from "react-hook-form";
23
+ const StyledForm = styled.form`
24
+ width: 100%;
25
+ height: 100%;
26
+ `;
27
+ const Form = ({
28
+ classname,
29
+ reactHookFormProps = { mode: "onBlur" },
30
+ children,
31
+ onSubmit
32
+ }) => {
33
+ const methods = useForm(reactHookFormProps);
34
+ const formProps = {};
35
+ if (onSubmit)
36
+ formProps.onSubmit = methods.handleSubmit(onSubmit);
37
+ const providerProps = Object.assign(methods, {
38
+ formProps: reactHookFormProps
39
+ });
40
+ return /* @__PURE__ */ React.createElement(FormProvider, __spreadValues({}, providerProps), /* @__PURE__ */ React.createElement(StyledForm, __spreadValues({
41
+ className: classname
42
+ }, formProps), children));
43
+ };
44
+ export {
45
+ Form
46
+ };
@@ -3,48 +3,52 @@ import moment from "moment";
3
3
  import { TextBox } from "../fields/text-box/index.js";
4
4
  import { ComboBox } from "../fields/combo-box/index.js";
5
5
  import { DateInput } from "../fields/date-input/index.js";
6
- import { FormItemLayout } from "../fields/form-item-layout/index.js";
7
- const FirstName = () => /* @__PURE__ */ React.createElement(FormItemLayout, {
8
- floatingLabel: true,
9
- inputComponent: TextBox,
10
- labelText: "First Name",
6
+ import { FormLayoutBlockItem } from "../fields/form-layout-block-item/index.js";
7
+ const FirstName = () => /* @__PURE__ */ React.createElement(FormLayoutBlockItem, {
8
+ label: "First Name",
9
+ inputID: "firstname",
10
+ required: true
11
+ }, /* @__PURE__ */ React.createElement(TextBox, {
12
+ id: "firstname",
11
13
  name: "firstname",
12
- required: true,
13
14
  rules: {
14
15
  required: { value: true, message: "First Name is required" },
15
16
  minLength: { value: 2, message: "Minimum 2 characters" },
16
17
  maxLength: { value: 50, message: "Maximum 50 characters" }
17
18
  }
18
- });
19
- const DOB = () => /* @__PURE__ */ React.createElement(FormItemLayout, {
20
- floatingLabel: true,
21
- inputComponent: DateInput,
22
- labelText: "Date of Birth",
19
+ }));
20
+ const DOB = () => /* @__PURE__ */ React.createElement(FormLayoutBlockItem, {
21
+ label: "Date of Birth",
22
+ inputID: "dob",
23
+ required: true
24
+ }, /* @__PURE__ */ React.createElement(DateInput, {
25
+ id: "dob",
23
26
  name: "dob",
24
- required: true,
25
27
  rules: {
26
28
  required: { value: true, message: "Date of Birth is required" },
27
29
  validate: (value) => moment() > value || "Date of Birth can not be greater than current date"
28
30
  }
29
- });
30
- const State = () => /* @__PURE__ */ React.createElement(FormItemLayout, {
31
- floatingLabel: true,
32
- inputComponent: ComboBox,
33
- labelText: "State",
31
+ }));
32
+ const State = () => /* @__PURE__ */ React.createElement(FormLayoutBlockItem, {
33
+ label: "State",
34
+ inputID: "state",
35
+ required: true
36
+ }, /* @__PURE__ */ React.createElement(ComboBox, {
37
+ id: "state",
34
38
  name: "state",
35
- required: true,
36
39
  rules: { required: { value: true, message: "State is required" } },
37
40
  options: [
38
41
  { value: "ca", label: "California" },
39
42
  { value: "nj", label: "New Jersey" }
40
43
  ]
41
- });
42
- const MaritalStatus = () => /* @__PURE__ */ React.createElement(FormItemLayout, {
43
- floatingLabel: true,
44
- inputComponent: ComboBox,
45
- labelText: "Marital Status",
44
+ }));
45
+ const MaritalStatus = () => /* @__PURE__ */ React.createElement(FormLayoutBlockItem, {
46
+ label: "Marital Status",
47
+ inputID: "marital_status",
48
+ required: true
49
+ }, /* @__PURE__ */ React.createElement(ComboBox, {
50
+ id: "marital_status",
46
51
  name: "marital_status",
47
- required: true,
48
52
  rules: {
49
53
  required: { value: true, message: "Marital Status is required" }
50
54
  },
@@ -52,7 +56,7 @@ const MaritalStatus = () => /* @__PURE__ */ React.createElement(FormItemLayout,
52
56
  { value: "married", label: "Married" },
53
57
  { value: "single", label: "Single" }
54
58
  ]
55
- });
59
+ }));
56
60
  export {
57
61
  DOB,
58
62
  FirstName,
@@ -0,0 +1,48 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import * as React from "react";
33
+ import { useFormContext } from "react-hook-form";
34
+ import { DSButtonV2 } from "@elliemae/ds-button";
35
+ const FormSubmitButton = (_a) => {
36
+ var rest = __objRest(_a, []);
37
+ const {
38
+ formState,
39
+ formProps: { mode }
40
+ } = useFormContext();
41
+ return /* @__PURE__ */ React.createElement(DSButtonV2, __spreadProps(__spreadValues({}, rest), {
42
+ type: "submit",
43
+ disabled: mode !== "onSubmit" && (!formState.isDirty || formState.isDirty && !formState.isValid)
44
+ }));
45
+ };
46
+ export {
47
+ FormSubmitButton
48
+ };
File without changes
File without changes
@@ -0,0 +1,28 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+ import * as React from "react";
18
+ import { lazy, Suspense } from "react";
19
+ import { WaitMessageLauncher } from "../modals/wait-message/wait-message-launcher.js";
20
+ const loadable = (importFunc, fallback = /* @__PURE__ */ React.createElement(WaitMessageLauncher, null)) => {
21
+ const LazyComponent = lazy(importFunc);
22
+ return (props) => /* @__PURE__ */ React.createElement(Suspense, {
23
+ fallback
24
+ }, /* @__PURE__ */ React.createElement(LazyComponent, __spreadValues({}, props)));
25
+ };
26
+ export {
27
+ loadable
28
+ };
@@ -1,13 +1,8 @@
1
- import * as React from "react";
2
1
  import { useEffect } from "react";
3
2
  import { useAppDispatch } from "../../data/react-redux.js";
4
3
  import { login } from "../../utils/auth/index.js";
5
4
  import { LOGIN_SUCCESS } from "../../data/auth/actions.js";
6
- const Login = ({
7
- clientId,
8
- scope,
9
- responseType
10
- }) => {
5
+ const Login = ({ clientId, scope, responseType }) => {
11
6
  const dispatch = useAppDispatch();
12
7
  useEffect(() => {
13
8
  login({ clientId, scope, responseType }).then(() => {
@@ -15,7 +10,7 @@ const Login = ({
15
10
  }).catch(() => {
16
11
  });
17
12
  }, [dispatch, clientId, scope, responseType]);
18
- return /* @__PURE__ */ React.createElement(React.Fragment, null);
13
+ return null;
19
14
  };
20
15
  export {
21
16
  Login
@@ -1,3 +1,22 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
1
20
  import { persistentStorage } from "../../../utils/web-storage.js";
2
21
  import { CMicroAppHost } from "../../../utils/micro-frontend/host.js";
3
22
  import { getLogger } from "../../../utils/micro-frontend/index.js";
@@ -20,7 +39,7 @@ import {
20
39
  getAppManifest,
21
40
  getFullFileNameofAssetsFromManifest
22
41
  } from "../resources/manifest.js";
23
- const cssType = new RegExp(/\.css$/);
42
+ const cssType = /\.css$/;
24
43
  const isCss = (fileName) => cssType.test(fileName);
25
44
  const activeApps = {};
26
45
  const initApplication = async ({
@@ -88,7 +107,7 @@ const addAppToActiveAppList = (id, elementIds) => {
88
107
  };
89
108
  const waitAndInitApplication = (appConfig, requests) => Promise.all(requests).then(addAppToActiveAppList.bind(null, appConfig.id)).then(initApplication.bind(null, appConfig)).catch((err) => {
90
109
  const logRecord = logRecords.APP_INIT_FAILED(appConfig.id, err.message);
91
- getLogger().error({ ...logRecord, exception: err });
110
+ getLogger().error(__spreadProps(__spreadValues({}, logRecord), { exception: err }));
92
111
  throw new Error(logRecord.msg);
93
112
  });
94
113
  const removeAssetsFromDOM = (id, documentEle = document) => {
@@ -123,6 +142,8 @@ const unloadApp = ({
123
142
  hostUrl,
124
143
  documentEle
125
144
  }) => {
145
+ if (!hostUrl)
146
+ throw new Error("Unable to unload app. hostUrl is required");
126
147
  getLogger().info(logRecords.APP_UNLOADING(id));
127
148
  const app = (window.emui || {})[id];
128
149
  if (!app)
File without changes
File without changes
@@ -7,6 +7,8 @@ const getAppManifest = async ({
7
7
  hostUrl,
8
8
  manifestPath
9
9
  }) => {
10
+ if (!hostUrl || !manifestPath)
11
+ throw new Error("Unable to get app manifest. hostUrl and manifestPath are required.");
10
12
  const url = new URL(`${manifestPath.replace(/\/?$/, "/")}manifest.json`, hostUrl);
11
13
  const response = await getHTTPClient().get(removeDoubleSlash(url.href));
12
14
  const { headers } = response;
@@ -1,6 +1,6 @@
1
1
  import { removeDoubleSlash } from "../../../utils/url.js";
2
2
  const APP_SCRIPT_ID_PREFIX = "emui-script-";
3
- const HEAD_SCRIPTS = new RegExp("/(?:emuiDiagnostics|global|global-prod|emuiUserMonitoring)(?:..*)?.js", "i");
3
+ const HEAD_SCRIPTS = /(?:emuiDiagnostics|global|global-prod|emuiUserMonitoring)(?:..*)?.js/;
4
4
  const isHeadScript = (scriptSrc) => HEAD_SCRIPTS.test(scriptSrc);
5
5
  const addScriptToDOM = ({ name, hostUrl, documentEle }, fileName, index) => new Promise((resolve, reject) => {
6
6
  const ele = documentEle.createElement("script");
File without changes
@@ -1,3 +1,22 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
1
20
  import { useRef, useLayoutEffect, useCallback } from "react";
2
21
  import { merge } from "lodash";
3
22
  import { useDispatch } from "react-redux";
@@ -41,10 +60,9 @@ const useAppWillRender = ({
41
60
  await loadApp(appConfig);
42
61
  await mountApp(appConfig);
43
62
  } catch (ex) {
44
- getLogger().error({
45
- ...logRecords.APP_CONFIG_LOAD_FAILED,
63
+ getLogger().error(__spreadProps(__spreadValues({}, logRecords.APP_CONFIG_LOAD_FAILED), {
46
64
  exception: ex
47
- });
65
+ }));
48
66
  await unload(appConfig, true);
49
67
  throw ex;
50
68
  }
File without changes
@@ -0,0 +1,58 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import * as React from "react";
33
+ import { memo, useState } from "react";
34
+ import frameHtml from "file-loader?name=iframe.[contenthash].[ext]!./iframe/index.html";
35
+ import { IFrame } from "./iframe/index.js";
36
+ import { useFrameLoaded } from "./use-frame-loaded.js";
37
+ import {
38
+ useAppWillRender
39
+ } from "../micro-app/use-app-will-render.js";
40
+ const App = memo((_a) => {
41
+ var _b = _a, { id, dispose, onUnloadComplete } = _b, rest = __objRest(_b, ["id", "dispose", "onUnloadComplete"]);
42
+ const [documentEle, setDocumentEle] = useState(null);
43
+ useFrameLoaded(__spreadValues({ id, documentEle }, rest));
44
+ useAppWillRender(__spreadValues({
45
+ id,
46
+ documentEle: dispose ? null : documentEle,
47
+ onUnloadComplete
48
+ }, rest));
49
+ return /* @__PURE__ */ React.createElement(IFrame, __spreadProps(__spreadValues({
50
+ id,
51
+ src: frameHtml
52
+ }, rest), {
53
+ onFrameReady: setDocumentEle
54
+ }));
55
+ });
56
+ export {
57
+ App
58
+ };
@@ -0,0 +1,54 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import * as React from "react";
21
+ import { memo, useRef } from "react";
22
+ import styled from "styled-components";
23
+ import { IFRAME_CONTAINER_ID_PREFIX } from "./const.js";
24
+ const Div = styled.div`
25
+ display: flex;
26
+ width: 100%;
27
+ height: 100%;
28
+ flex-direction: column;
29
+ overflow: hidden;
30
+ `;
31
+ const Iframe = styled.iframe`
32
+ flex-grow: 1;
33
+ border: none;
34
+ margin: 0;
35
+ padding: 0;
36
+ display: block;
37
+ height: 100%;
38
+ `;
39
+ const IFrame = memo(({ id, name: title, src, sandbox, onFrameReady }) => {
40
+ const frameRef = useRef(null);
41
+ const sandboxProps = sandbox ? { sandbox } : {};
42
+ return /* @__PURE__ */ React.createElement(Div, null, /* @__PURE__ */ React.createElement(Iframe, __spreadProps(__spreadValues({
43
+ id: `${IFRAME_CONTAINER_ID_PREFIX}${id}`,
44
+ ref: frameRef,
45
+ title,
46
+ src,
47
+ scrolling: "no"
48
+ }, sandboxProps), {
49
+ onLoad: () => frameRef?.current?.contentDocument && onFrameReady(frameRef.current.contentDocument)
50
+ })));
51
+ });
52
+ export {
53
+ IFrame
54
+ };
@@ -0,0 +1,57 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import * as React from "react";
33
+ import { useEffect, useState, memo } from "react";
34
+ import { usePrevious } from "../use-previous.js";
35
+ import { App } from "./app.js";
36
+ const MicroIFrameApp = memo((_a) => {
37
+ var _b = _a, { entityId = null } = _b, rest = __objRest(_b, ["entityId"]);
38
+ const [disposePrevApp, setDisposePrevApp] = useState(false);
39
+ const [appKey, setAppKey] = useState(Date.now());
40
+ const prevEntityId = usePrevious(entityId);
41
+ useEffect(() => {
42
+ if (prevEntityId !== entityId && prevEntityId) {
43
+ setDisposePrevApp(true);
44
+ }
45
+ }, [entityId]);
46
+ return /* @__PURE__ */ React.createElement(App, __spreadProps(__spreadValues({}, rest), {
47
+ key: appKey,
48
+ dispose: disposePrevApp,
49
+ onUnloadComplete: () => {
50
+ setAppKey(Date.now());
51
+ setDisposePrevApp(false);
52
+ }
53
+ }));
54
+ });
55
+ export {
56
+ MicroIFrameApp
57
+ };
File without changes
@@ -6,6 +6,8 @@ const addBaseTag = (id, documentEle) => {
6
6
  const { hostUrl, manifestPath } = getMicroFrontEndAppConfig({
7
7
  id
8
8
  });
9
+ if (!hostUrl || !manifestPath)
10
+ throw new Error("hostUrl or manifestPath is not defined");
9
11
  const base = documentEle.createElement("base");
10
12
  base.href = new URL(manifestPath, hostUrl).href;
11
13
  documentEle.getElementsByTagName("head")[0].appendChild(base);
@@ -0,0 +1,33 @@
1
+ import * as React from "react";
2
+ import { useState, useCallback } from "react";
3
+ import {
4
+ DSDialog,
5
+ DSDialogBody,
6
+ DSDialogDefaultLayout,
7
+ DSDialogPrimaryMessage,
8
+ DSDialogSecondaryMessage
9
+ } from "@elliemae/ds-dialog";
10
+ import { ErrorHexegon } from "@elliemae/ds-icons";
11
+ const Error = ({
12
+ open,
13
+ primaryMessage,
14
+ secondaryMessage
15
+ }) => {
16
+ const [isOpen, setOpen] = useState(open);
17
+ const handleClick = useCallback(() => {
18
+ setOpen((prev) => !prev);
19
+ }, []);
20
+ return /* @__PURE__ */ React.createElement(DSDialog, {
21
+ isOpen,
22
+ onClickOutside: handleClick,
23
+ size: "small"
24
+ }, /* @__PURE__ */ React.createElement(DSDialogBody, {
25
+ p: "s"
26
+ }, /* @__PURE__ */ React.createElement(DSDialogDefaultLayout, null, /* @__PURE__ */ React.createElement(ErrorHexegon, {
27
+ size: "xxl",
28
+ color: ["danger", "900"]
29
+ }), /* @__PURE__ */ React.createElement(DSDialogPrimaryMessage, null, primaryMessage), secondaryMessage && /* @__PURE__ */ React.createElement(DSDialogSecondaryMessage, null, secondaryMessage))));
30
+ };
31
+ export {
32
+ Error
33
+ };
@@ -0,0 +1,40 @@
1
+ import * as React from "react";
2
+ import { memo } from "react";
3
+ import { Close } from "@elliemae/ds-icons";
4
+ import { DSButtonV2 } from "@elliemae/ds-button";
5
+ import {
6
+ DSDialog,
7
+ DSDialogHeader,
8
+ DSDialogBody,
9
+ DSDialogFooter,
10
+ DSDialogSeparator,
11
+ DSDialogAddon
12
+ } from "@elliemae/ds-dialog";
13
+ import { useAppDispatch } from "../../../data/react-redux.js";
14
+ import { navigationPrompt } from "../../../data/navigation-prompt/actions.js";
15
+ const NavigationPrompt = memo(({ open }) => {
16
+ const dispatch = useAppDispatch();
17
+ const cancelDialog = () => dispatch(navigationPrompt.cancel());
18
+ const confirmDialog = () => dispatch(navigationPrompt.confirm());
19
+ return /* @__PURE__ */ React.createElement(DSDialog, {
20
+ isOpen: open,
21
+ onClickOutside: cancelDialog,
22
+ centered: true
23
+ }, /* @__PURE__ */ React.createElement(DSDialogHeader, null, /* @__PURE__ */ React.createElement(DSDialogAddon, null, /* @__PURE__ */ React.createElement(DSButtonV2, {
24
+ buttonType: "icon",
25
+ onClick: cancelDialog
26
+ }, /* @__PURE__ */ React.createElement(Close, {
27
+ color: ["neutral", "900"]
28
+ })))), /* @__PURE__ */ React.createElement(DSDialogSeparator, null), /* @__PURE__ */ React.createElement(DSDialogBody, {
29
+ px: 24,
30
+ mb: 16
31
+ }, "You currently have unsaved changes. Are you sure you want to proceed without saving?"), /* @__PURE__ */ React.createElement(DSDialogSeparator, null), /* @__PURE__ */ React.createElement(DSDialogFooter, null, /* @__PURE__ */ React.createElement(DSButtonV2, {
32
+ buttonType: "outline",
33
+ onClick: cancelDialog
34
+ }, "Continue without saving"), /* @__PURE__ */ React.createElement(DSButtonV2, {
35
+ onClick: confirmDialog
36
+ }, "Save & Continue")));
37
+ });
38
+ export {
39
+ NavigationPrompt
40
+ };