@flarehr/apollo-super-selection 3.17.52781 → 3.21.53721

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 (296) hide show
  1. package/dist/lib/apollo-super-selection/apollo-super-selection.esm.js +1 -0
  2. package/dist/lib/apollo-super-selection/apollo-super-selection.js +130 -0
  3. package/dist/lib/apollo-super-selection/index.esm.js +0 -0
  4. package/dist/lib/apollo-super-selection/p-01a9f4a4.entry.js +1 -0
  5. package/dist/lib/apollo-super-selection/p-082669d9.js +1 -0
  6. package/dist/lib/apollo-super-selection/p-13573238.system.js +15 -0
  7. package/dist/lib/apollo-super-selection/p-20136efe.entry.js +1 -0
  8. package/dist/lib/apollo-super-selection/p-285da037.system.entry.js +1 -0
  9. package/dist/lib/apollo-super-selection/p-342cee5a.js +1 -0
  10. package/dist/lib/apollo-super-selection/p-381262c1.system.js +1 -0
  11. package/dist/lib/apollo-super-selection/p-38ee2795.system.js +1 -0
  12. package/dist/lib/apollo-super-selection/p-38f24f69.js +1 -0
  13. package/dist/lib/apollo-super-selection/p-50ea2036.system.js +1 -0
  14. package/dist/lib/apollo-super-selection/p-61734b66.js +1 -0
  15. package/dist/lib/apollo-super-selection/p-642db1f7.system.entry.js +1 -0
  16. package/dist/lib/apollo-super-selection/p-64ebe17d.system.entry.js +1 -0
  17. package/dist/lib/apollo-super-selection/p-7dbe5a2f.system.js +1 -0
  18. package/dist/lib/apollo-super-selection/p-8cbfc343.system.entry.js +1 -0
  19. package/dist/lib/apollo-super-selection/p-9eff6951.system.entry.js +69 -0
  20. package/dist/lib/apollo-super-selection/p-a98c2760.entry.js +1 -0
  21. package/dist/lib/apollo-super-selection/p-abedb220.entry.js +1 -0
  22. package/dist/lib/apollo-super-selection/p-ae4f5e0b.system.js +1 -0
  23. package/dist/lib/apollo-super-selection/p-c284a0de.entry.js +14 -0
  24. package/dist/lib/apollo-super-selection/p-c5e41889.entry.js +1 -0
  25. package/dist/lib/apollo-super-selection/p-cd49a6b7.system.entry.js +1 -0
  26. package/dist/lib/apollo-super-selection/p-d82b00ed.system.js +1 -0
  27. package/dist/lib/apollo-super-selection/p-df9ce4b7.js +15 -0
  28. package/dist/lib/apollo-super-selection/p-f15bf700.system.entry.js +1 -0
  29. package/dist/lib/apollo-super-selection/p-f7a45412.entry.js +1 -0
  30. package/dist/lib/cjs/active-router-e92fd784.js +75 -0
  31. package/dist/lib/cjs/apollo-super-selection.cjs.js +23 -0
  32. package/dist/lib/cjs/app-globals-45007120.js +25 -0
  33. package/dist/lib/cjs/context-consumer.cjs.entry.js +29 -0
  34. package/dist/lib/cjs/datorama-akita-7f4b082a.js +2704 -0
  35. package/dist/lib/cjs/delay-81aff2f1.js +955 -0
  36. package/dist/lib/cjs/fl-button_46.cjs.entry.js +17199 -0
  37. package/dist/lib/cjs/fl-style-guide.cjs.entry.js +90 -0
  38. package/dist/lib/cjs/index-942e6faa.js +1767 -0
  39. package/dist/lib/cjs/index.cjs.js +2 -0
  40. package/dist/lib/cjs/loader.cjs.js +25 -0
  41. package/dist/lib/cjs/stencil-async-content.cjs.entry.js +32 -0
  42. package/dist/lib/cjs/stencil-route-title.cjs.entry.js +32 -0
  43. package/dist/lib/cjs/stencil-router-prompt.cjs.entry.js +59 -0
  44. package/dist/lib/cjs/stencil-router-redirect.cjs.entry.js +32 -0
  45. package/dist/lib/collection/collection-manifest.json +131 -0
  46. package/dist/lib/collection/components/app-host/loading-page.js +9 -0
  47. package/dist/lib/collection/components/app-host/services/app-configuration.query.js +18 -0
  48. package/dist/lib/collection/components/app-host/services/app-configuration.service.js +25 -0
  49. package/dist/lib/collection/components/app-host/services/appinsights.service.js +43 -0
  50. package/dist/lib/collection/components/app-host/services/authentication.query.js +21 -0
  51. package/dist/lib/collection/components/app-host/services/authentication.service.js +50 -0
  52. package/dist/lib/collection/components/app-host/services/interop/host-interop.service.js +31 -0
  53. package/dist/lib/collection/components/app-host/services/interop/iframe-interop.service.js +30 -0
  54. package/dist/lib/collection/components/app-host/services/interop/react-native-interop.service.js +20 -0
  55. package/dist/lib/collection/components/app-host/services/interop.query.js +26 -0
  56. package/dist/lib/collection/components/app-host/services/session.store.js +37 -0
  57. package/dist/lib/collection/components/app-host/super-selection-app-host.css +28 -0
  58. package/dist/lib/collection/components/app-host/super-selection-app-host.js +92 -0
  59. package/dist/lib/collection/components/super-selection-app/api/api-client.js +14 -0
  60. package/dist/lib/collection/components/super-selection-app/api/event-tracking.api.js +9 -0
  61. package/dist/lib/collection/components/super-selection-app/api/super-selection-events.model.js +1 -0
  62. package/dist/lib/collection/components/super-selection-app/api/super-selection.api.dto.js +1 -0
  63. package/dist/lib/collection/components/super-selection-app/api/super-selection.api.js +30 -0
  64. package/dist/lib/collection/components/super-selection-app/app-state-pages/success.js +31 -0
  65. package/dist/lib/collection/components/super-selection-app/footer-section/footer-section.css +11 -0
  66. package/dist/lib/collection/components/super-selection-app/footer-section/footer-section.js +28 -0
  67. package/dist/lib/collection/components/super-selection-app/funds/constants.js +17 -0
  68. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/api/custom-fund-choice.api.dto.js +1 -0
  69. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/api/custom-fund-choice.api.js +31 -0
  70. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/custom-fund.js +68 -0
  71. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/custom-fund.store.js +53 -0
  72. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/default-fund/default-fund.js +108 -0
  73. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund-inputs.js +93 -0
  74. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund.js +103 -0
  75. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/bankBsbNumbers.js +111 -0
  76. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-fund-inputs.js +153 -0
  77. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-fund.form.js +1 -0
  78. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-fund.js +111 -0
  79. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-not-supported.css +23 -0
  80. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-not-supported.js +52 -0
  81. package/dist/lib/collection/components/super-selection-app/funds/promoted-fund/api/promoted-fund-choice.api.dto.js +1 -0
  82. package/dist/lib/collection/components/super-selection-app/funds/promoted-fund/api/promoted-fund-choice.api.js +13 -0
  83. package/dist/lib/collection/components/super-selection-app/funds/promoted-fund/promoted-fund-join-page.js +34 -0
  84. package/dist/lib/collection/components/super-selection-app/funds/promoted-fund/promoted-fund-standard-choice-page.js +62 -0
  85. package/dist/lib/collection/components/super-selection-app/funds/promoted-fund/promoted-fund.store.js +9 -0
  86. package/dist/lib/collection/components/super-selection-app/funds/promoted-fund/services/promoted-fund-join-iframe-builder.js +101 -0
  87. package/dist/lib/collection/components/super-selection-app/funds/qsuper/api/qsuper-choice.api.dto.js +1 -0
  88. package/dist/lib/collection/components/super-selection-app/funds/qsuper/api/qsuper-choice.api.js +13 -0
  89. package/dist/lib/collection/components/super-selection-app/funds/qsuper/helpers/confirmCheck.js +37 -0
  90. package/dist/lib/collection/components/super-selection-app/funds/qsuper/helpers/continueCheck.js +13 -0
  91. package/dist/lib/collection/components/super-selection-app/funds/qsuper/helpers/getNextRoute.js +89 -0
  92. package/dist/lib/collection/components/super-selection-app/funds/qsuper/helpers/resetState.js +31 -0
  93. package/dist/lib/collection/components/super-selection-app/funds/qsuper/qsuper-confirm-header.js +38 -0
  94. package/dist/lib/collection/components/super-selection-app/funds/qsuper/qsuper-confirm-selection/qsuper-confirm-selection.js +63 -0
  95. package/dist/lib/collection/components/super-selection-app/funds/qsuper/qsuper-confirmation.css +0 -0
  96. package/dist/lib/collection/components/super-selection-app/funds/qsuper/qsuper-consent/qsuper-consent.js +95 -0
  97. package/dist/lib/collection/components/super-selection-app/funds/qsuper/qsuper-insurance-opt-in.js +99 -0
  98. package/dist/lib/collection/components/super-selection-app/funds/qsuper/qsuper-insurance-questions.js +18 -0
  99. package/dist/lib/collection/components/super-selection-app/funds/qsuper/qsuper-layout.js +95 -0
  100. package/dist/lib/collection/components/super-selection-app/funds/qsuper/qsuper.css +50 -0
  101. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/question1/question1.js +10 -0
  102. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/question2/question2.js +10 -0
  103. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/question3/question3.js +10 -0
  104. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/question4/question4.js +10 -0
  105. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/question5/question5.js +10 -0
  106. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/question6/question6.js +10 -0
  107. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/question7/question7.js +10 -0
  108. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/question8/question8.js +10 -0
  109. package/dist/lib/collection/components/super-selection-app/funds/qsuper/questions/yes-no-buttons/qsuper-question-yes-no-buttons.js +66 -0
  110. package/dist/lib/collection/components/super-selection-app/funds/qsuper/services/qsuper.store.js +64 -0
  111. package/dist/lib/collection/components/super-selection-app/funds/slate-super/api/slate-choice.api.dto.js +1 -0
  112. package/dist/lib/collection/components/super-selection-app/funds/slate-super/api/slate-choice.api.js +13 -0
  113. package/dist/lib/collection/components/super-selection-app/funds/slate-super/services/slate-iframe-builder.js +127 -0
  114. package/dist/lib/collection/components/super-selection-app/funds/slate-super/slate-fund.store.js +9 -0
  115. package/dist/lib/collection/components/super-selection-app/funds/slate-super/slate-join-page.js +35 -0
  116. package/dist/lib/collection/components/super-selection-app/funds/slate-super/slate-standard-choice-page.js +67 -0
  117. package/dist/lib/collection/components/super-selection-app/funds/slate-super/slatesuper-header.css +0 -0
  118. package/dist/lib/collection/components/super-selection-app/funds/slate-super/slatesuper-header.js +19 -0
  119. package/dist/lib/collection/components/super-selection-app/notifications-section/notifications-section.js +25 -0
  120. package/dist/lib/collection/components/super-selection-app/services/australian-fund-lookup.service.js +22 -0
  121. package/dist/lib/collection/components/super-selection-app/services/event-tracking.service.js +71 -0
  122. package/dist/lib/collection/components/super-selection-app/services/navigation.service.js +22 -0
  123. package/dist/lib/collection/components/super-selection-app/services/notifications.service.js +37 -0
  124. package/dist/lib/collection/components/super-selection-app/services/notifications.store.js +3 -0
  125. package/dist/lib/collection/components/super-selection-app/services/selected-super-choice-info.service.js +53 -0
  126. package/dist/lib/collection/components/super-selection-app/services/super-selection-app.routes.js +46 -0
  127. package/dist/lib/collection/components/super-selection-app/services/super-selection-app.service.js +83 -0
  128. package/dist/lib/collection/components/super-selection-app/services/super-selection.store.js +12 -0
  129. package/dist/lib/collection/components/super-selection-app/standard-choice/api/standard-choice.model.js +1 -0
  130. package/dist/lib/collection/components/super-selection-app/standard-choice/standard-choice-form.js +49 -0
  131. package/dist/lib/collection/components/super-selection-app/super-choice-page/selected-super-choice-section/selected-super-choice-section.css +18 -0
  132. package/dist/lib/collection/components/super-selection-app/super-choice-page/selected-super-choice-section/selected-super-choice-section.js +53 -0
  133. package/dist/lib/collection/components/super-selection-app/super-choice-page/super-choice-item.js +216 -0
  134. package/dist/lib/collection/components/super-selection-app/super-choice-page/super-choice-page.css +53 -0
  135. package/dist/lib/collection/components/super-selection-app/super-choice-page/super-choice-page.js +180 -0
  136. package/dist/lib/collection/components/super-selection-app/super-selection-app.css +15 -0
  137. package/dist/lib/collection/components/super-selection-app/super-selection-app.js +229 -0
  138. package/dist/lib/collection/global/init-host.js +22 -0
  139. package/dist/lib/collection/global/main.dev.js +26 -0
  140. package/dist/lib/collection/global/main.js +11 -0
  141. package/dist/lib/collection/global/stencil-router-workaround.js +12 -0
  142. package/dist/lib/collection/index.js +2 -0
  143. package/dist/lib/collection/utils/config.js +2 -0
  144. package/dist/lib/collection/utils/gtm.js +5 -0
  145. package/dist/lib/collection/utils/iframe.js +33 -0
  146. package/dist/lib/collection/utils/index.js +8 -0
  147. package/dist/lib/collection/utils/lazy.js +29 -0
  148. package/dist/lib/collection/utils/storage.js +5 -0
  149. package/dist/lib/esm/active-router-4c80d3d2.js +73 -0
  150. package/dist/lib/esm/apollo-super-selection.js +21 -0
  151. package/dist/lib/esm/app-globals-7ac1ffba.js +23 -0
  152. package/dist/lib/esm/context-consumer.entry.js +25 -0
  153. package/dist/lib/esm/datorama-akita-79ce4385.js +2692 -0
  154. package/dist/lib/esm/delay-c0555599.js +935 -0
  155. package/dist/lib/esm/fl-button_46.entry.js +17150 -0
  156. package/dist/lib/esm/fl-style-guide.entry.js +86 -0
  157. package/dist/lib/esm/index-0496d1af.js +1734 -0
  158. package/dist/lib/esm/index.js +1 -0
  159. package/dist/lib/esm/loader.js +21 -0
  160. package/dist/lib/esm/polyfills/core-js.js +11 -0
  161. package/dist/lib/esm/polyfills/css-shim.js +1 -0
  162. package/dist/lib/esm/polyfills/dom.js +79 -0
  163. package/dist/lib/esm/polyfills/es5-html-element.js +1 -0
  164. package/dist/lib/esm/polyfills/index.js +34 -0
  165. package/dist/lib/esm/polyfills/system.js +6 -0
  166. package/dist/lib/esm/stencil-async-content.entry.js +28 -0
  167. package/dist/lib/esm/stencil-route-title.entry.js +28 -0
  168. package/dist/lib/esm/stencil-router-prompt.entry.js +55 -0
  169. package/dist/lib/esm/stencil-router-redirect.entry.js +28 -0
  170. package/dist/lib/esm-es5/active-router-4c80d3d2.js +1 -0
  171. package/dist/lib/esm-es5/apollo-super-selection.js +1 -0
  172. package/dist/lib/esm-es5/app-globals-7ac1ffba.js +1 -0
  173. package/dist/lib/esm-es5/context-consumer.entry.js +1 -0
  174. package/dist/lib/esm-es5/datorama-akita-79ce4385.js +15 -0
  175. package/dist/lib/esm-es5/delay-c0555599.js +1 -0
  176. package/dist/lib/esm-es5/fl-button_46.entry.js +69 -0
  177. package/dist/lib/esm-es5/fl-style-guide.entry.js +1 -0
  178. package/dist/lib/esm-es5/index-0496d1af.js +1 -0
  179. package/dist/lib/esm-es5/index.js +0 -0
  180. package/dist/lib/esm-es5/loader.js +1 -0
  181. package/dist/lib/esm-es5/stencil-async-content.entry.js +1 -0
  182. package/dist/lib/esm-es5/stencil-route-title.entry.js +1 -0
  183. package/dist/lib/esm-es5/stencil-router-prompt.entry.js +1 -0
  184. package/dist/lib/esm-es5/stencil-router-redirect.entry.js +1 -0
  185. package/dist/lib/index.cjs.js +1 -0
  186. package/dist/lib/index.js +1 -0
  187. package/dist/lib/loader/cdn.js +3 -0
  188. package/dist/lib/loader/index.cjs.js +3 -0
  189. package/dist/lib/loader/index.d.ts +13 -0
  190. package/dist/lib/loader/index.es2017.js +3 -0
  191. package/dist/lib/loader/index.js +4 -0
  192. package/dist/lib/loader/package.json +10 -0
  193. package/dist/lib/node_modules/@flarehr/beacon/dist/collection/components/button/button.css +45 -0
  194. package/dist/lib/node_modules/@flarehr/beacon/dist/collection/components/dropdown/dropdown.css +9 -0
  195. package/dist/lib/node_modules/@flarehr/beacon/dist/collection/components/dropdown-async/dropdown-async.css +9 -0
  196. package/dist/lib/node_modules/@flarehr/beacon/dist/collection/components/loading-indicator/loading-indicator.css +141 -0
  197. package/dist/lib/node_modules/@flarehr/beacon/dist/collection/components/promise-button/promise-button.css +5 -0
  198. package/dist/lib/node_modules/@flarehr/beacon/dist/collection/components/style-guide/style-guide.css +0 -0
  199. package/dist/lib/node_modules/@stencil/router/dist/collection/components/route/route.css +3 -0
  200. package/dist/lib/types/components/app-host/loading-page.d.ts +3 -0
  201. package/dist/lib/types/components/app-host/services/app-configuration.query.d.ts +11 -0
  202. package/dist/lib/types/components/app-host/services/app-configuration.service.d.ts +9 -0
  203. package/dist/lib/types/components/app-host/services/appinsights.service.d.ts +14 -0
  204. package/dist/lib/types/components/app-host/services/authentication.query.d.ts +13 -0
  205. package/dist/lib/types/components/app-host/services/authentication.service.d.ts +9 -0
  206. package/dist/lib/types/components/app-host/services/interop/host-interop.service.d.ts +7 -0
  207. package/dist/lib/types/components/app-host/services/interop/iframe-interop.service.d.ts +5 -0
  208. package/dist/lib/types/components/app-host/services/interop/react-native-interop.service.d.ts +7 -0
  209. package/dist/lib/types/components/app-host/services/interop.query.d.ts +11 -0
  210. package/dist/lib/types/components/app-host/services/session.store.d.ts +30 -0
  211. package/dist/lib/types/components/app-host/super-selection-app-host.d.ts +17 -0
  212. package/dist/lib/types/components/super-selection-app/api/api-client.d.ts +2 -0
  213. package/dist/lib/types/components/super-selection-app/api/event-tracking.api.d.ts +6 -0
  214. package/dist/lib/types/components/super-selection-app/api/super-selection-events.model.d.ts +73 -0
  215. package/dist/lib/types/components/super-selection-app/api/super-selection.api.d.ts +16 -0
  216. package/dist/lib/types/components/super-selection-app/api/super-selection.api.dto.d.ts +82 -0
  217. package/dist/lib/types/components/super-selection-app/app-state-pages/success.d.ts +4 -0
  218. package/dist/lib/types/components/super-selection-app/footer-section/footer-section.d.ts +4 -0
  219. package/dist/lib/types/components/super-selection-app/funds/constants.d.ts +17 -0
  220. package/dist/lib/types/components/super-selection-app/funds/custom-fund/api/custom-fund-choice.api.d.ts +8 -0
  221. package/dist/lib/types/components/super-selection-app/funds/custom-fund/api/custom-fund-choice.api.dto.d.ts +28 -0
  222. package/dist/lib/types/components/super-selection-app/funds/custom-fund/custom-fund.d.ts +9 -0
  223. package/dist/lib/types/components/super-selection-app/funds/custom-fund/custom-fund.store.d.ts +30 -0
  224. package/dist/lib/types/components/super-selection-app/funds/custom-fund/default-fund/default-fund.d.ts +15 -0
  225. package/dist/lib/types/components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund-inputs.d.ts +12 -0
  226. package/dist/lib/types/components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund.d.ts +12 -0
  227. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/bankBsbNumbers.d.ts +112 -0
  228. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-fund-inputs.d.ts +15 -0
  229. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-fund.d.ts +14 -0
  230. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-fund.form.d.ts +14 -0
  231. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-not-supported.d.ts +7 -0
  232. package/dist/lib/types/components/super-selection-app/funds/promoted-fund/api/promoted-fund-choice.api.d.ts +6 -0
  233. package/dist/lib/types/components/super-selection-app/funds/promoted-fund/api/promoted-fund-choice.api.dto.d.ts +6 -0
  234. package/dist/lib/types/components/super-selection-app/funds/promoted-fund/promoted-fund-join-page.d.ts +7 -0
  235. package/dist/lib/types/components/super-selection-app/funds/promoted-fund/promoted-fund-standard-choice-page.d.ts +8 -0
  236. package/dist/lib/types/components/super-selection-app/funds/promoted-fund/promoted-fund.store.d.ts +9 -0
  237. package/dist/lib/types/components/super-selection-app/funds/promoted-fund/services/promoted-fund-join-iframe-builder.d.ts +11 -0
  238. package/dist/lib/types/components/super-selection-app/funds/qsuper/api/qsuper-choice.api.d.ts +6 -0
  239. package/dist/lib/types/components/super-selection-app/funds/qsuper/api/qsuper-choice.api.dto.d.ts +21 -0
  240. package/dist/lib/types/components/super-selection-app/funds/qsuper/helpers/confirmCheck.d.ts +1 -0
  241. package/dist/lib/types/components/super-selection-app/funds/qsuper/helpers/continueCheck.d.ts +1 -0
  242. package/dist/lib/types/components/super-selection-app/funds/qsuper/helpers/getNextRoute.d.ts +2 -0
  243. package/dist/lib/types/components/super-selection-app/funds/qsuper/helpers/resetState.d.ts +1 -0
  244. package/dist/lib/types/components/super-selection-app/funds/qsuper/qsuper-confirm-header.d.ts +5 -0
  245. package/dist/lib/types/components/super-selection-app/funds/qsuper/qsuper-confirm-selection/qsuper-confirm-selection.d.ts +6 -0
  246. package/dist/lib/types/components/super-selection-app/funds/qsuper/qsuper-consent/qsuper-consent.d.ts +7 -0
  247. package/dist/lib/types/components/super-selection-app/funds/qsuper/qsuper-insurance-opt-in.d.ts +12 -0
  248. package/dist/lib/types/components/super-selection-app/funds/qsuper/qsuper-insurance-questions.d.ts +3 -0
  249. package/dist/lib/types/components/super-selection-app/funds/qsuper/qsuper-layout.d.ts +11 -0
  250. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/question1/question1.d.ts +3 -0
  251. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/question2/question2.d.ts +3 -0
  252. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/question3/question3.d.ts +3 -0
  253. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/question4/question4.d.ts +3 -0
  254. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/question5/question5.d.ts +3 -0
  255. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/question6/question6.d.ts +3 -0
  256. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/question7/question7.d.ts +3 -0
  257. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/question8/question8.d.ts +3 -0
  258. package/dist/lib/types/components/super-selection-app/funds/qsuper/questions/yes-no-buttons/qsuper-question-yes-no-buttons.d.ts +6 -0
  259. package/dist/lib/types/components/super-selection-app/funds/qsuper/services/qsuper.store.d.ts +58 -0
  260. package/dist/lib/types/components/super-selection-app/funds/slate-super/api/slate-choice.api.d.ts +6 -0
  261. package/dist/lib/types/components/super-selection-app/funds/slate-super/api/slate-choice.api.dto.d.ts +4 -0
  262. package/dist/lib/types/components/super-selection-app/funds/slate-super/services/slate-iframe-builder.d.ts +13 -0
  263. package/dist/lib/types/components/super-selection-app/funds/slate-super/slate-fund.store.d.ts +7 -0
  264. package/dist/lib/types/components/super-selection-app/funds/slate-super/slate-join-page.d.ts +7 -0
  265. package/dist/lib/types/components/super-selection-app/funds/slate-super/slate-standard-choice-page.d.ts +8 -0
  266. package/dist/lib/types/components/super-selection-app/funds/slate-super/slatesuper-header.d.ts +3 -0
  267. package/dist/lib/types/components/super-selection-app/notifications-section/notifications-section.d.ts +5 -0
  268. package/dist/lib/types/components/super-selection-app/services/australian-fund-lookup.service.d.ts +8 -0
  269. package/dist/lib/types/components/super-selection-app/services/event-tracking.service.d.ts +17 -0
  270. package/dist/lib/types/components/super-selection-app/services/navigation.service.d.ts +9 -0
  271. package/dist/lib/types/components/super-selection-app/services/notifications.service.d.ts +15 -0
  272. package/dist/lib/types/components/super-selection-app/services/notifications.store.d.ts +14 -0
  273. package/dist/lib/types/components/super-selection-app/services/selected-super-choice-info.service.d.ts +18 -0
  274. package/dist/lib/types/components/super-selection-app/services/super-selection-app.routes.d.ts +23 -0
  275. package/dist/lib/types/components/super-selection-app/services/super-selection-app.service.d.ts +26 -0
  276. package/dist/lib/types/components/super-selection-app/services/super-selection.store.d.ts +14 -0
  277. package/dist/lib/types/components/super-selection-app/standard-choice/api/standard-choice.model.d.ts +3 -0
  278. package/dist/lib/types/components/super-selection-app/standard-choice/standard-choice-form.d.ts +7 -0
  279. package/dist/lib/types/components/super-selection-app/super-choice-page/selected-super-choice-section/selected-super-choice-section.d.ts +5 -0
  280. package/dist/lib/types/components/super-selection-app/super-choice-page/super-choice-item.d.ts +17 -0
  281. package/dist/lib/types/components/super-selection-app/super-choice-page/super-choice-page.d.ts +14 -0
  282. package/dist/lib/types/components/super-selection-app/super-selection-app.d.ts +26 -0
  283. package/dist/lib/types/components.d.ts +576 -0
  284. package/dist/lib/types/global/init-host.d.ts +1 -0
  285. package/dist/lib/types/global/main.d.ts +1 -0
  286. package/dist/lib/types/global/main.dev.d.ts +1 -0
  287. package/dist/lib/types/global/stencil-router-workaround.d.ts +1 -0
  288. package/dist/lib/types/index.d.ts +2 -0
  289. package/dist/lib/types/stencil-public-runtime.d.ts +1555 -0
  290. package/dist/lib/types/utils/config.d.ts +2 -0
  291. package/dist/lib/types/utils/gtm.d.ts +7 -0
  292. package/dist/lib/types/utils/iframe.d.ts +13 -0
  293. package/dist/lib/types/utils/index.d.ts +3 -0
  294. package/dist/lib/types/utils/lazy.d.ts +12 -0
  295. package/dist/lib/types/utils/storage.d.ts +4 -0
  296. package/package.json +1 -1
@@ -0,0 +1,2 @@
1
+ 'use strict';
2
+
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-942e6faa.js');
6
+ require('./datorama-akita-7f4b082a.js');
7
+ require('./delay-81aff2f1.js');
8
+ const appGlobals = require('./app-globals-45007120.js');
9
+
10
+ /*
11
+ Stencil Client Patch Esm v2.3.0 | MIT Licensed | https://stenciljs.com
12
+ */
13
+ const patchEsm = () => {
14
+ return index.promiseResolve();
15
+ };
16
+
17
+ const defineCustomElements = (win, options) => {
18
+ if (typeof window === 'undefined') return Promise.resolve();
19
+ return patchEsm().then(() => {
20
+ appGlobals.globalScripts();
21
+ return index.bootstrapLazy([["fl-style-guide.cjs",[[1,"fl-style-guide",{"themeCssUrl":[1,"theme-css-url"]}]]],["context-consumer.cjs",[[0,"context-consumer",{"context":[16],"renderer":[16],"subscribe":[16],"unsubscribe":[32]}]]],["stencil-async-content.cjs",[[0,"stencil-async-content",{"documentLocation":[1,"document-location"],"content":[32]}]]],["stencil-route-title.cjs",[[0,"stencil-route-title",{"titleSuffix":[1,"title-suffix"],"pageTitle":[1,"page-title"]}]]],["stencil-router-prompt.cjs",[[0,"stencil-router-prompt",{"when":[4],"message":[1],"history":[16],"unblock":[32]}]]],["stencil-router-redirect.cjs",[[0,"stencil-router-redirect",{"history":[16],"root":[1],"url":[1]}]]],["fl-button_46.cjs",[[0,"sss-my-own-fund",{"history":[16],"formState":[32],"isNotAllInformationProvidedMessageVisible":[32]}],[0,"sss-self-managed-fund",{"history":[16],"formState":[32],"showSmsfNotSupported":[32]}],[0,"sss-qsuper-question-1"],[0,"sss-qsuper-question-2"],[0,"sss-qsuper-question-3"],[0,"sss-qsuper-question-4"],[0,"sss-qsuper-question-5"],[0,"sss-qsuper-question-6"],[0,"sss-qsuper-question-7"],[0,"sss-qsuper-question-8"],[0,"sss-default-fund",{"history":[16],"formState":[32],"defaultFundProductName":[32]}],[0,"sss-qsuper-insurance-opt-in",{"insuranceChosen":[32]}],[0,"sss-qsuper-join"],[0,"sss-slate-standard-choice-page",{"history":[16],"formState":[32]}],[1,"super-selection-app-host",{"sessionState":[32],"jwt":[32],"appConfiguration":[32],"areStylesLoaded":[32]}],[0,"sss-qsuper-consent"],[0,"sss-super-choice-page",{"history":[16],"promotedFunds":[32],"chosenFund":[32]}],[0,"sss-promoted-fund-standard-choice-page",{"history":[16],"formState":[32]}],[0,"sss-success"],[0,"sss-promoted-fund-join-page",{"history":[16]}],[0,"sss-slate-join-page",{"history":[16]}],[0,"super-selection-app",{"accessToken":[1,"access-token"],"backendUrl":[1,"backend-url"],"appBaseUrl":[1,"app-base-url"],"history":[16],"location":[16],"isAppInitialised":[32]}],[0,"sss-my-own-fund-inputs",{"myOwnFundForm":[16],"selectedOption":[32]}],[0,"sss-self-managed-fund-inputs",{"fundForm":[16],"currentBank":[32]}],[0,"sss-loading-page"],[0,"sss-smsf-not-supported-dialog"],[0,"sss-super-choice-item",{"heading":[1],"isSelected":[4,"is-selected"],"usi":[1],"name":[1],"logo":[1],"pdsLink":[1,"pds-link"],"callToAction":[1,"call-to-action"],"features":[1],"history":[16]}],[0,"sss-selected-super-choice-section",{"fundType":[1,"fund-type"],"fundName":[1,"fund-name"]}],[0,"sss-slatesuper-header"],[0,"sss-footer-section"],[4,"stencil-route-link",{"url":[1],"urlMatch":[1,"url-match"],"activeClass":[1,"active-class"],"exact":[4],"strict":[4],"custom":[1],"anchorClass":[1,"anchor-class"],"anchorRole":[1,"anchor-role"],"anchorTitle":[1,"anchor-title"],"anchorTabIndex":[1,"anchor-tab-index"],"anchorId":[1,"anchor-id"],"history":[16],"location":[16],"root":[1],"ariaHaspopup":[1,"aria-haspopup"],"ariaPosinset":[1,"aria-posinset"],"ariaSetsize":[2,"aria-setsize"],"ariaLabel":[1,"aria-label"],"match":[32]}],[4,"stencil-route-switch",{"group":[513],"scrollTopOffset":[2,"scroll-top-offset"],"location":[16],"routeViewsUpdated":[16]}],[4,"stencil-router",{"root":[1],"historyType":[1,"history-type"],"titleSuffix":[1,"title-suffix"],"scrollTopOffset":[2,"scroll-top-offset"],"location":[32],"history":[32]}],[4,"sss-custom-fund",{"history":[16],"currentCustomFund":[32],"fundOptionsList":[32]}],[0,"fl-dropdown-async",{"placeholder":[1],"searchFunction":[16],"value":[16],"required":[4],"requiredValidationMessage":[1,"required-validation-message"],"disabled":[4],"minSearchStringLength":[2,"min-search-string-length"],"searchState":[32],"inputValue":[32],"isDropdownVisible":[32],"filteredOptions":[32],"highlightedOptionIndex":[32],"selectedOption":[32]},[[2,"focus","handleFocus"],[2,"blur","handleBlur"],[2,"keydown","handleKeyDown"]]],[0,"fl-dropdown",{"placeholder":[1],"options":[16],"value":[16],"required":[4],"requiredValidationMessage":[1,"required-validation-message"],"disabled":[4],"inputValue":[32],"isDropdownVisible":[32],"filteredOptions":[32],"highlightedOptionIndex":[32],"selectedOption":[32]},[[2,"focus","handleFocus"],[2,"blur","handleBlur"],[2,"keydown","handleKeyDown"]]],[0,"sss-standard-choice-form",{"standardChoiceFormSignature":[32]}],[4,"sss-qsuper-insurance-questions"],[0,"sss-qsuper-question-yes-no-buttons",{"history":[16]}],[0,"sss-qsuper-confirm-header"],[4,"sss-qsuper-layout",{"history":[16]}],[0,"sss-notifications-section"],[4,"fl-promise-button",{"isBlockElement":[4,"is-block-element"],"isRounded":[4,"is-rounded"],"disabled":[4],"variant":[1],"promiseFn":[16],"state":[32]}],[4,"fl-button",{"isBlockElement":[4,"is-block-element"],"disabled":[4],"variant":[1]}],[0,"fl-loading-indicator",{"theme":[1]}],[0,"stencil-route",{"group":[513],"componentUpdated":[16],"match":[1040],"url":[1],"component":[1],"componentProps":[16],"exact":[4],"routeRender":[16],"scrollTopOffset":[2,"scroll-top-offset"],"routeViewsUpdated":[16],"location":[16],"history":[16],"historyType":[1,"history-type"]}]]]], options);
22
+ });
23
+ };
24
+
25
+ exports.defineCustomElements = defineCustomElements;
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-942e6faa.js');
6
+
7
+ const AsyncContent = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ this.content = '';
11
+ }
12
+ componentWillLoad() {
13
+ if (this.documentLocation != null) {
14
+ return this.fetchNewContent(this.documentLocation);
15
+ }
16
+ }
17
+ fetchNewContent(newDocumentLocation) {
18
+ return fetch(newDocumentLocation)
19
+ .then(response => response.text())
20
+ .then(data => {
21
+ this.content = data;
22
+ });
23
+ }
24
+ render() {
25
+ return (index.h("div", { innerHTML: this.content }));
26
+ }
27
+ static get watchers() { return {
28
+ "documentLocation": ["fetchNewContent"]
29
+ }; }
30
+ };
31
+
32
+ exports.stencil_async_content = AsyncContent;
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-942e6faa.js');
6
+ const activeRouter = require('./active-router-e92fd784.js');
7
+
8
+ const RouteTitle = class {
9
+ constructor(hostRef) {
10
+ index.registerInstance(this, hostRef);
11
+ this.titleSuffix = '';
12
+ this.pageTitle = '';
13
+ }
14
+ updateDocumentTitle() {
15
+ const el = this.el;
16
+ if (el.ownerDocument) {
17
+ el.ownerDocument.title = `${this.pageTitle}${this.titleSuffix || ''}`;
18
+ }
19
+ }
20
+ componentWillLoad() {
21
+ this.updateDocumentTitle();
22
+ }
23
+ get el() { return index.getElement(this); }
24
+ static get watchers() { return {
25
+ "pageTitle": ["updateDocumentTitle"]
26
+ }; }
27
+ };
28
+ activeRouter.ActiveRouter.injectProps(RouteTitle, [
29
+ 'titleSuffix',
30
+ ]);
31
+
32
+ exports.stencil_route_title = RouteTitle;
@@ -0,0 +1,59 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-942e6faa.js');
6
+ const activeRouter = require('./active-router-e92fd784.js');
7
+
8
+ const StencilRouterPrompt = class {
9
+ constructor(hostRef) {
10
+ index.registerInstance(this, hostRef);
11
+ this.when = true;
12
+ this.message = '';
13
+ }
14
+ enable(message) {
15
+ if (this.unblock) {
16
+ this.unblock();
17
+ }
18
+ if (this.history) {
19
+ this.unblock = this.history.block(message);
20
+ }
21
+ }
22
+ disable() {
23
+ if (this.unblock) {
24
+ this.unblock();
25
+ this.unblock = undefined;
26
+ }
27
+ }
28
+ componentWillLoad() {
29
+ if (this.when) {
30
+ this.enable(this.message);
31
+ }
32
+ }
33
+ updateMessage(newMessage, prevMessage) {
34
+ if (this.when) {
35
+ if (!this.when || prevMessage !== newMessage) {
36
+ this.enable(this.message);
37
+ }
38
+ }
39
+ else {
40
+ this.disable();
41
+ }
42
+ }
43
+ componentDidUnload() {
44
+ this.disable();
45
+ }
46
+ render() {
47
+ return null;
48
+ }
49
+ get el() { return index.getElement(this); }
50
+ static get watchers() { return {
51
+ "message": ["updateMessage"],
52
+ "when": ["updateMessage"]
53
+ }; }
54
+ };
55
+ activeRouter.ActiveRouter.injectProps(StencilRouterPrompt, [
56
+ 'history',
57
+ ]);
58
+
59
+ exports.stencil_router_prompt = StencilRouterPrompt;
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-942e6faa.js');
6
+ const activeRouter = require('./active-router-e92fd784.js');
7
+
8
+ // Get the URL for this route link without the root from the router
9
+ const getUrl = (url, root) => {
10
+ // Don't allow double slashes
11
+ if (url.charAt(0) == '/' && root.charAt(root.length - 1) == '/') {
12
+ return root.slice(0, root.length - 1) + url;
13
+ }
14
+ return root + url;
15
+ };
16
+ const Redirect = class {
17
+ constructor(hostRef) {
18
+ index.registerInstance(this, hostRef);
19
+ }
20
+ componentWillLoad() {
21
+ if (this.history && this.root && this.url) {
22
+ return this.history.replace(getUrl(this.url, this.root));
23
+ }
24
+ }
25
+ get el() { return index.getElement(this); }
26
+ };
27
+ activeRouter.ActiveRouter.injectProps(Redirect, [
28
+ 'history',
29
+ 'root'
30
+ ]);
31
+
32
+ exports.stencil_router_redirect = Redirect;
@@ -0,0 +1,131 @@
1
+ {
2
+ "entries": [
3
+ "./components/super-selection-app/super-selection-app.js",
4
+ "./components/app-host/loading-page.js",
5
+ "./components/app-host/super-selection-app-host.js",
6
+ "./components/super-selection-app/app-state-pages/success.js",
7
+ "./components/super-selection-app/footer-section/footer-section.js",
8
+ "./components/super-selection-app/funds/custom-fund/custom-fund.js",
9
+ "./components/super-selection-app/funds/custom-fund/default-fund/default-fund.js",
10
+ "./components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund-inputs.js",
11
+ "./components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund.js",
12
+ "./components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-fund-inputs.js",
13
+ "./components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-fund.js",
14
+ "./components/super-selection-app/funds/custom-fund/self-managed-fund/self-managed-not-supported.js",
15
+ "./components/super-selection-app/funds/promoted-fund/promoted-fund-join-page.js",
16
+ "./components/super-selection-app/funds/promoted-fund/promoted-fund-standard-choice-page.js",
17
+ "./components/super-selection-app/funds/qsuper/qsuper-confirm-header.js",
18
+ "./components/super-selection-app/funds/qsuper/qsuper-insurance-opt-in.js",
19
+ "./components/super-selection-app/funds/qsuper/qsuper-insurance-questions.js",
20
+ "./components/super-selection-app/funds/qsuper/qsuper-layout.js",
21
+ "./components/super-selection-app/funds/qsuper/qsuper-confirm-selection/qsuper-confirm-selection.js",
22
+ "./components/super-selection-app/funds/qsuper/qsuper-consent/qsuper-consent.js",
23
+ "./components/super-selection-app/funds/qsuper/questions/question1/question1.js",
24
+ "./components/super-selection-app/funds/qsuper/questions/question2/question2.js",
25
+ "./components/super-selection-app/funds/qsuper/questions/question3/question3.js",
26
+ "./components/super-selection-app/funds/qsuper/questions/question4/question4.js",
27
+ "./components/super-selection-app/funds/qsuper/questions/question5/question5.js",
28
+ "./components/super-selection-app/funds/qsuper/questions/question6/question6.js",
29
+ "./components/super-selection-app/funds/qsuper/questions/question7/question7.js",
30
+ "./components/super-selection-app/funds/qsuper/questions/question8/question8.js",
31
+ "./components/super-selection-app/funds/qsuper/questions/yes-no-buttons/qsuper-question-yes-no-buttons.js",
32
+ "./components/super-selection-app/funds/slate-super/slate-join-page.js",
33
+ "./components/super-selection-app/funds/slate-super/slate-standard-choice-page.js",
34
+ "./components/super-selection-app/funds/slate-super/slatesuper-header.js",
35
+ "./components/super-selection-app/notifications-section/notifications-section.js",
36
+ "./components/super-selection-app/standard-choice/standard-choice-form.js",
37
+ "./components/super-selection-app/super-choice-page/super-choice-item.js",
38
+ "./components/super-selection-app/super-choice-page/super-choice-page.js",
39
+ "./components/super-selection-app/super-choice-page/selected-super-choice-section/selected-super-choice-section.js"
40
+ ],
41
+ "compiler": {
42
+ "name": "@stencil/core",
43
+ "version": "2.3.0",
44
+ "typescriptVersion": "4.0.5"
45
+ },
46
+ "collections": [
47
+ {
48
+ "name": "@flarehr/beacon",
49
+ "tags": [
50
+ "fl-button",
51
+ "fl-dropdown",
52
+ "fl-dropdown-async",
53
+ "fl-loading-indicator",
54
+ "fl-promise-button",
55
+ "fl-style-guide"
56
+ ]
57
+ },
58
+ {
59
+ "name": "@stencil/router",
60
+ "tags": [
61
+ "stencil-async-content",
62
+ "stencil-route",
63
+ "stencil-route-link",
64
+ "stencil-route-switch",
65
+ "stencil-route-title",
66
+ "stencil-router",
67
+ "stencil-router-prompt",
68
+ "stencil-router-redirect"
69
+ ]
70
+ },
71
+ {
72
+ "name": "@stencil/state-tunnel",
73
+ "tags": [
74
+ "context-consumer"
75
+ ]
76
+ }
77
+ ],
78
+ "bundles": [
79
+ {
80
+ "components": [
81
+ "fl-button",
82
+ "fl-dropdown",
83
+ "fl-dropdown-async",
84
+ "fl-loading-indicator",
85
+ "fl-promise-button",
86
+ "sss-custom-fund",
87
+ "sss-default-fund",
88
+ "sss-footer-section",
89
+ "sss-loading-page",
90
+ "sss-my-own-fund",
91
+ "sss-my-own-fund-inputs",
92
+ "sss-notifications-section",
93
+ "sss-promoted-fund-join-page",
94
+ "sss-promoted-fund-standard-choice-page",
95
+ "sss-qsuper-confirm-header",
96
+ "sss-qsuper-consent",
97
+ "sss-qsuper-insurance-opt-in",
98
+ "sss-qsuper-insurance-questions",
99
+ "sss-qsuper-join",
100
+ "sss-qsuper-layout",
101
+ "sss-qsuper-question-1",
102
+ "sss-qsuper-question-2",
103
+ "sss-qsuper-question-3",
104
+ "sss-qsuper-question-4",
105
+ "sss-qsuper-question-5",
106
+ "sss-qsuper-question-6",
107
+ "sss-qsuper-question-7",
108
+ "sss-qsuper-question-8",
109
+ "sss-qsuper-question-yes-no-buttons",
110
+ "sss-selected-super-choice-section",
111
+ "sss-self-managed-fund",
112
+ "sss-self-managed-fund-inputs",
113
+ "sss-slate-join-page",
114
+ "sss-slate-standard-choice-page",
115
+ "sss-slatesuper-header",
116
+ "sss-smsf-not-supported-dialog",
117
+ "sss-standard-choice-form",
118
+ "sss-success",
119
+ "sss-super-choice-item",
120
+ "sss-super-choice-page",
121
+ "stencil-route",
122
+ "stencil-route-link",
123
+ "stencil-route-switch",
124
+ "stencil-router",
125
+ "super-selection-app",
126
+ "super-selection-app-host"
127
+ ]
128
+ }
129
+ ],
130
+ "global": "./global/main.js"
131
+ }
@@ -0,0 +1,9 @@
1
+ import { Component, h, Host } from '@stencil/core';
2
+ export class LoadingPage {
3
+ render() {
4
+ return (h(Host, { class: "d-flex flex-column justify-content-center align-items-center flex-grow-1" },
5
+ h("h5", null, "Loading your superannuation step"),
6
+ h("fl-loading-indicator", null)));
7
+ }
8
+ static get is() { return "sss-loading-page"; }
9
+ }
@@ -0,0 +1,18 @@
1
+ import { Query } from '@datorama/akita';
2
+ import * as O from 'fp-ts/Option';
3
+ import sessionStore from './session.store';
4
+ export class AppConfigurationQuery extends Query {
5
+ constructor(store) {
6
+ super(store);
7
+ this.store = store;
8
+ this.appConfiguration$ = this.select((state) => state.appConfiguration);
9
+ }
10
+ get configuration() {
11
+ const configuration = this.getValue().appConfiguration;
12
+ if (O.isNone(configuration)) {
13
+ throw Error('App configuration is not yet loaded');
14
+ }
15
+ return configuration.value;
16
+ }
17
+ }
18
+ export default new AppConfigurationQuery(sessionStore);
@@ -0,0 +1,25 @@
1
+ import * as O from 'fp-ts/lib/Option';
2
+ import wretch from 'wretch';
3
+ import { Lazy } from '../../../utils';
4
+ import sessionStore from './session.store';
5
+ class AppConfigurationService {
6
+ constructor() {
7
+ this._appRootUrl = new Lazy(() => this.resolveRootUrl());
8
+ this.getAppRootUrl = () => this._appRootUrl.value;
9
+ this.getAppHostUrl = () => `${window.location.origin}${this.getAppRootUrl()}`.replace(/\/$/, '');
10
+ }
11
+ async loadConfigurationAsync() {
12
+ const configuration = await wretch(`${this.getAppRootUrl()}config.json`)
13
+ .get()
14
+ .json();
15
+ sessionStore.update({ appConfiguration: O.fromNullable(configuration) });
16
+ }
17
+ resolveRootUrl() {
18
+ const match = O.fromNullable(window.location.pathname.match(/^\/super-selection\/embed\/v1.0\/app/));
19
+ if (O.isNone(match)) {
20
+ throw Error('Unsupported host URL');
21
+ }
22
+ return match.value[0] + '/';
23
+ }
24
+ }
25
+ export default new AppConfigurationService();
@@ -0,0 +1,43 @@
1
+ import { ApplicationInsights } from '@microsoft/applicationinsights-web';
2
+ import { SeverityLevel } from '@microsoft/applicationinsights-web';
3
+ import { setErrorHandler } from '@stencil/core';
4
+ import { Lazy } from '../../../utils';
5
+ import appConfigurationQuery from './app-configuration.query';
6
+ export class AppInsightsService {
7
+ constructor() {
8
+ this.appInsights = new Lazy(() => new ApplicationInsights({
9
+ config: {
10
+ instrumentationKey: appConfigurationQuery.configuration.AppInsightsKey,
11
+ enableAutoRouteTracking: true,
12
+ autoTrackPageVisitTime: true,
13
+ maxBatchInterval: 1000,
14
+ enableUnhandledPromiseRejectionTracking: true
15
+ }
16
+ }));
17
+ }
18
+ init() {
19
+ this.appInsights.value.loadAppInsights();
20
+ setErrorHandler((err) => this.appInsightsErrorHandler(err));
21
+ }
22
+ getAppInsights() {
23
+ return this.appInsights.value;
24
+ }
25
+ addCustomProperties(properties) {
26
+ this.appInsights.value.addTelemetryInitializer((envelope) => {
27
+ envelope.data = envelope.data ? envelope.data : {};
28
+ for (const [k, v] of Object.entries(properties)) {
29
+ envelope.data[k] = v;
30
+ }
31
+ });
32
+ }
33
+ appInsightsErrorHandler(error) {
34
+ this.appInsights.value.trackException({
35
+ error: error,
36
+ severityLevel: SeverityLevel.Error
37
+ });
38
+ // eslint-disable-next-line no-console
39
+ const defaultStencilErrorHandler = (error) => console.error(error);
40
+ defaultStencilErrorHandler(error);
41
+ }
42
+ }
43
+ export default new AppInsightsService();
@@ -0,0 +1,21 @@
1
+ import { Query } from '@datorama/akita';
2
+ import sessionStore, { AuthenticationState } from './session.store';
3
+ export class AuthenticationQuery extends Query {
4
+ constructor(store) {
5
+ super(store);
6
+ this.store = store;
7
+ this.sessionState$ = this.select((state) => state.authenticationState);
8
+ this.jwt$ = this.select((state) => state.jwt);
9
+ }
10
+ get sessionState() {
11
+ return this.getValue().authenticationState;
12
+ }
13
+ get isUnauthorized() {
14
+ return (this.getValue().authenticationState === AuthenticationState.Unauthorized ||
15
+ this.getValue().authenticationState === AuthenticationState.Error);
16
+ }
17
+ get isAuthorized() {
18
+ return this.getValue().authenticationState === AuthenticationState.Authenticated;
19
+ }
20
+ }
21
+ export default new AuthenticationQuery(sessionStore);
@@ -0,0 +1,50 @@
1
+ import * as O from 'fp-ts/lib/Option';
2
+ import wretch from 'wretch';
3
+ import { sendAnalyticsEvent } from '../../../utils/gtm';
4
+ import appConfigurationQuery from './app-configuration.query';
5
+ import appConfigurationService from './app-configuration.service';
6
+ import sessionStore, { AuthenticationState } from './session.store';
7
+ export class AuthenticationService {
8
+ constructor() {
9
+ this.authCodeQueryParameter = 'code';
10
+ }
11
+ authorizationCodeIsPresent(query) {
12
+ const authCode = this.getAuthorizationCodeFromRoute(query);
13
+ return O.isSome(authCode);
14
+ }
15
+ initFromRoute(query) {
16
+ const authorizationCode = this.getAuthorizationCodeFromRoute(query);
17
+ if (O.isNone(authorizationCode)) {
18
+ sessionStore.update({ authenticationState: AuthenticationState.Error });
19
+ throw Error(`"${this.authCodeQueryParameter}" URL query parameter missing`);
20
+ }
21
+ this.authCodeExchangeAsync(authorizationCode.value);
22
+ }
23
+ async authCodeExchangeAsync(authorizationCode) {
24
+ const formData = new URLSearchParams([
25
+ ['grant_type', 'authorization_code'],
26
+ ['client_id', 'apollo-super-selection-app'],
27
+ ['code', authorizationCode],
28
+ ['redirect_uri', `${appConfigurationService.getAppHostUrl()}`]
29
+ ]);
30
+ const tokenResponse = await wretch(appConfigurationQuery.configuration.OidcAuthority + "/connect/token")
31
+ .headers({ 'Content-Type': 'application/x-www-form-urlencoded' })
32
+ .post(formData.toString())
33
+ .badRequest(() => {
34
+ sessionStore.update({ authenticationState: AuthenticationState.Error });
35
+ throw new Error('Failed to authenticate.');
36
+ })
37
+ .json();
38
+ sessionStore.update({
39
+ jwt: O.fromNullable(tokenResponse.access_token),
40
+ authenticationState: AuthenticationState.Authenticated
41
+ });
42
+ sendAnalyticsEvent('oidc_sign_in', {});
43
+ window.history.replaceState(null, '', appConfigurationService.getAppRootUrl());
44
+ }
45
+ getAuthorizationCodeFromRoute(query) {
46
+ const urlParams = new URLSearchParams(query);
47
+ return O.fromNullable(urlParams.get(this.authCodeQueryParameter));
48
+ }
49
+ }
50
+ export default new AuthenticationService();
@@ -0,0 +1,31 @@
1
+ import * as O from 'fp-ts/Option';
2
+ import interopQuery from '../interop.query';
3
+ import sessionStore from '../session.store';
4
+ import { IFrameInteropService } from './iframe-interop.service';
5
+ import { ReactNativeInteropService } from './react-native-interop.service';
6
+ export class HostInteropService {
7
+ constructor() {
8
+ this.interopModeQueryParameter = 'interop-mode';
9
+ }
10
+ completeSuperSelectionStep() {
11
+ if (interopQuery.isIframeInteropEnabled()) {
12
+ IFrameInteropService.completeSuperSelectionStep();
13
+ }
14
+ else if (interopQuery.isReactNativeInteropEnabled()) {
15
+ ReactNativeInteropService.completeSuperSelectionStep();
16
+ }
17
+ else {
18
+ throw Error('Unknown interop mode');
19
+ }
20
+ }
21
+ init(urlQuery) {
22
+ const urlParams = new URLSearchParams(urlQuery);
23
+ const interopMode = O.fromNullable(urlParams.get(this.interopModeQueryParameter));
24
+ if (O.isSome(interopMode) && interopMode.value === "react-native") {
25
+ sessionStore.update({ reactNativeInterop: O.some(ReactNativeInteropService.init()) });
26
+ return;
27
+ }
28
+ sessionStore.update({ iframeInterop: O.some(IFrameInteropService.initFromRoute(urlQuery)) });
29
+ }
30
+ }
31
+ export default new HostInteropService();
@@ -0,0 +1,30 @@
1
+ import * as O from 'fp-ts/lib/Option';
2
+ import iframe from '../../../../utils/iframe';
3
+ import interopQuery from '../interop.query';
4
+ export class IFrameInteropService {
5
+ static completeSuperSelectionStep() {
6
+ const { successRedirectionUrl } = interopQuery.getIframeInteropMode();
7
+ if (O.isSome(successRedirectionUrl)) {
8
+ window.top.location.href = successRedirectionUrl.value;
9
+ }
10
+ else {
11
+ iframe.complete();
12
+ }
13
+ }
14
+ static initFromRoute(route) {
15
+ const redirectionUrlQueryParameter = 'success-redirection-url';
16
+ const urlParams = new URLSearchParams(route);
17
+ const redirectionUrl = O.fromNullable(urlParams.get(redirectionUrlQueryParameter));
18
+ const iframeMode = { successRedirectionUrl: O.none };
19
+ if (O.isSome(redirectionUrl)) {
20
+ try {
21
+ const validatedUrl = new URL(redirectionUrl.value);
22
+ iframeMode.successRedirectionUrl = O.some(validatedUrl.toString());
23
+ }
24
+ catch (error) {
25
+ throw Error(`"${redirectionUrl.value}" is not a valid URL`);
26
+ }
27
+ }
28
+ return iframeMode;
29
+ }
30
+ }
@@ -0,0 +1,20 @@
1
+ import { ReactNativeInteropMode } from '../session.store';
2
+ export class ReactNativeInteropService {
3
+ static init() {
4
+ const isMessagingAvailable = window['ReactNativeWebView'] !== undefined;
5
+ if (!isMessagingAvailable) {
6
+ throw Error('React Native WebView messaging is not enabled. Please, refer to https://github.com/react-native-webview/react-native-webview/blob/master/docs/Guide.md#the-windowreactnativewebviewpostmessage-method-and-onmessage-prop');
7
+ }
8
+ return new ReactNativeInteropMode();
9
+ }
10
+ static completeSuperSelectionStep() {
11
+ this.postRNMessage();
12
+ }
13
+ static postRNMessage() {
14
+ const message = {
15
+ stepStatus: 'completed'
16
+ };
17
+ ReactNativeInteropService.getRnInterop().postMessage(JSON.stringify(message));
18
+ }
19
+ }
20
+ ReactNativeInteropService.getRnInterop = () => window['ReactNativeWebView'];
@@ -0,0 +1,26 @@
1
+ import { Query } from '@datorama/akita';
2
+ import * as O from 'fp-ts/Option';
3
+ import sessionStore from './session.store';
4
+ export class InteropQuery extends Query {
5
+ constructor(store) {
6
+ super(store);
7
+ this.store = store;
8
+ }
9
+ isReactNativeInteropEnabled() {
10
+ return O.isSome(this.getValue().reactNativeInterop);
11
+ }
12
+ isIframeInteropEnabled() {
13
+ return O.isSome(this.getValue().iframeInterop);
14
+ }
15
+ getIframeInteropMode() {
16
+ const iframeInterop = this.getValue().iframeInterop;
17
+ if (O.isNone(iframeInterop)) {
18
+ throw Error('Failed to get iframe interop information: no data in store');
19
+ }
20
+ if (!this.isIframeInteropEnabled()) {
21
+ throw Error('Failed to get iframe interop information: iframe mode is disabled');
22
+ }
23
+ return iframeInterop.value;
24
+ }
25
+ }
26
+ export default new InteropQuery(sessionStore);
@@ -0,0 +1,37 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Store, StoreConfig } from '@datorama/akita';
8
+ import * as O from 'fp-ts/Option';
9
+ export var AuthenticationState;
10
+ (function (AuthenticationState) {
11
+ AuthenticationState[AuthenticationState["Unauthorized"] = 0] = "Unauthorized";
12
+ AuthenticationState[AuthenticationState["Authenticated"] = 1] = "Authenticated";
13
+ AuthenticationState[AuthenticationState["Error"] = 2] = "Error";
14
+ })(AuthenticationState || (AuthenticationState = {}));
15
+ export class ReactNativeInteropMode {
16
+ }
17
+ export class IframeInteropMode {
18
+ }
19
+ export function createInitialState() {
20
+ return {
21
+ authenticationState: AuthenticationState.Unauthorized,
22
+ jwt: O.none,
23
+ reactNativeInterop: O.none,
24
+ iframeInterop: O.none,
25
+ appConfiguration: O.none
26
+ };
27
+ }
28
+ let SessionStore = class SessionStore extends Store {
29
+ constructor() {
30
+ super(createInitialState());
31
+ }
32
+ };
33
+ SessionStore = __decorate([
34
+ StoreConfig({ name: 'sss-session', resettable: true })
35
+ ], SessionStore);
36
+ export { SessionStore };
37
+ export default new SessionStore();