@flarehr/apollo-super-selection 1.3.23524 → 1.3.23680

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 (283) hide show
  1. package/dist/lib/apollo-super-selection/apollo-super-selection.css +1 -0
  2. package/dist/lib/apollo-super-selection/apollo-super-selection.esm.js +1 -0
  3. package/dist/lib/apollo-super-selection/apollo-super-selection.js +130 -0
  4. package/dist/lib/apollo-super-selection/assets/icon-exclamation.svg +3 -0
  5. package/dist/lib/apollo-super-selection/assets/icon-information-circle.svg +3 -0
  6. package/dist/lib/apollo-super-selection/index.esm.js +0 -0
  7. package/dist/lib/apollo-super-selection/p-14885f78.system.js +15 -0
  8. package/dist/lib/apollo-super-selection/p-15f0e5eb.system.js +1 -0
  9. package/dist/lib/apollo-super-selection/p-22939048.system.entry.js +1 -0
  10. package/dist/lib/apollo-super-selection/p-24d6e2b8.js +1 -0
  11. package/dist/lib/apollo-super-selection/p-29c11183.js +15 -0
  12. package/dist/lib/apollo-super-selection/p-2b42304a.system.entry.js +1 -0
  13. package/dist/lib/apollo-super-selection/p-33eca162.entry.js +1 -0
  14. package/dist/lib/apollo-super-selection/p-4e871154.entry.js +1 -0
  15. package/dist/lib/apollo-super-selection/p-50ea2036.system.js +1 -0
  16. package/dist/lib/apollo-super-selection/p-53b231f0.system.entry.js +1 -0
  17. package/dist/lib/apollo-super-selection/p-5c73c587.entry.js +1 -0
  18. package/dist/lib/apollo-super-selection/p-5e00b8d8.system.entry.js +69 -0
  19. package/dist/lib/apollo-super-selection/p-69bbf1dd.entry.js +1 -0
  20. package/dist/lib/apollo-super-selection/p-71ca4cf8.system.js +1 -0
  21. package/dist/lib/apollo-super-selection/p-86e3e03f.js +1 -0
  22. package/dist/lib/apollo-super-selection/p-97188c78.system.js +1 -0
  23. package/dist/lib/apollo-super-selection/p-9d2a7c0e.entry.js +1 -0
  24. package/dist/lib/apollo-super-selection/p-9f64929e.entry.js +14 -0
  25. package/dist/lib/apollo-super-selection/p-a0063575.system.entry.js +1 -0
  26. package/dist/lib/apollo-super-selection/p-b00f648b.entry.js +1 -0
  27. package/dist/lib/apollo-super-selection/p-bd6e6a8f.system.js +1 -0
  28. package/dist/lib/apollo-super-selection/p-c775c0e4.system.entry.js +1 -0
  29. package/dist/lib/apollo-super-selection/p-cd3ed541.system.js +1 -0
  30. package/dist/lib/apollo-super-selection/p-db0bded8.js +1 -0
  31. package/dist/lib/apollo-super-selection/p-e957b393.system.entry.js +1 -0
  32. package/dist/lib/apollo-super-selection/p-fdadb647.js +1 -0
  33. package/dist/lib/cjs/active-router-1f555f75.js +75 -0
  34. package/dist/lib/cjs/apollo-super-selection.cjs.js +22 -0
  35. package/dist/lib/cjs/app-globals-b1125d8c.js +25 -0
  36. package/dist/lib/cjs/context-consumer.cjs.entry.js +29 -0
  37. package/dist/lib/cjs/custom-fund-choice.api-293c1ace.js +3209 -0
  38. package/dist/lib/cjs/datorama-akita-6c9cb8fb.js +3641 -0
  39. package/dist/lib/cjs/index-eb4f212f.js +1766 -0
  40. package/dist/lib/cjs/index.cjs.js +2 -0
  41. package/dist/lib/cjs/loader.cjs.js +24 -0
  42. package/dist/lib/cjs/sss-button_32.cjs.entry.js +14934 -0
  43. package/dist/lib/cjs/sss-super-byof-host.cjs.entry.js +111 -0
  44. package/dist/lib/cjs/stencil-async-content.cjs.entry.js +32 -0
  45. package/dist/lib/cjs/stencil-route-title.cjs.entry.js +32 -0
  46. package/dist/lib/cjs/stencil-router-prompt.cjs.entry.js +59 -0
  47. package/dist/lib/cjs/stencil-router-redirect.cjs.entry.js +32 -0
  48. package/dist/lib/collection/apollo-super-selection.css +1 -0
  49. package/dist/lib/collection/collection-manifest.json +98 -0
  50. package/dist/lib/collection/components/app-host/loading-page.js +9 -0
  51. package/dist/lib/collection/components/app-host/services/app-configuration.query.js +18 -0
  52. package/dist/lib/collection/components/app-host/services/app-configuration.service.js +25 -0
  53. package/dist/lib/collection/components/app-host/services/app-parameters.query.js +13 -0
  54. package/dist/lib/collection/components/app-host/services/app-parameters.service.js +14 -0
  55. package/dist/lib/collection/components/app-host/services/appinsights.service.js +46 -0
  56. package/dist/lib/collection/components/app-host/services/authentication.query.js +21 -0
  57. package/dist/lib/collection/components/app-host/services/authentication.service.js +50 -0
  58. package/dist/lib/collection/components/app-host/services/interop/host-interop.service.js +31 -0
  59. package/dist/lib/collection/components/app-host/services/interop/iframe-interop.service.js +30 -0
  60. package/dist/lib/collection/components/app-host/services/interop/react-native-interop.service.js +20 -0
  61. package/dist/lib/collection/components/app-host/services/interop.query.js +26 -0
  62. package/dist/lib/collection/components/app-host/services/session.store.js +38 -0
  63. package/dist/lib/collection/components/app-host/super-selection-app-host.css +24 -0
  64. package/dist/lib/collection/components/app-host/super-selection-app-host.js +87 -0
  65. package/dist/lib/collection/components/external-loading-page/external-loading-page.js +29 -0
  66. package/dist/lib/collection/components/super-byof/super-byof-types.js +1 -0
  67. package/dist/lib/collection/components/super-byof/super-byof.form.js +1 -0
  68. package/dist/lib/collection/components/super-byof/super-byof.js +139 -0
  69. package/dist/lib/collection/components/super-campaign/fund-tile-clicked.handler.js +49 -0
  70. package/dist/lib/collection/components/super-campaign/promoted-fund-joined.handler.js +121 -0
  71. package/dist/lib/collection/components/super-campaign/super-campaign-types.js +6 -0
  72. package/dist/lib/collection/components/super-campaign/super-campaign.js +210 -0
  73. package/dist/lib/collection/components/super-selection-app/api/api-client.js +14 -0
  74. package/dist/lib/collection/components/super-selection-app/api/event-tracking.api.js +9 -0
  75. package/dist/lib/collection/components/super-selection-app/api/super-campaign-errors-api.js +9 -0
  76. package/dist/lib/collection/components/super-selection-app/api/super-campaign-errors.api.dtos.js +1 -0
  77. package/dist/lib/collection/components/super-selection-app/api/super-selection-events.model.js +16 -0
  78. package/dist/lib/collection/components/super-selection-app/api/super-selection.api.dto.js +179 -0
  79. package/dist/lib/collection/components/super-selection-app/api/super-selection.api.js +69 -0
  80. package/dist/lib/collection/components/super-selection-app/app-state-pages/success.js +36 -0
  81. package/dist/lib/collection/components/super-selection-app/assets/icon-exclamation.svg +3 -0
  82. package/dist/lib/collection/components/super-selection-app/assets/icon-information-circle.svg +3 -0
  83. package/dist/lib/collection/components/super-selection-app/choice/choice-router.js +42 -0
  84. package/dist/lib/collection/components/super-selection-app/existing-choice/existing-choice.js +163 -0
  85. package/dist/lib/collection/components/super-selection-app/footer-section/footer-section.js +39 -0
  86. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/api/custom-fund-choice.api.dto.js +1 -0
  87. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/api/custom-fund-choice.api.js +50 -0
  88. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/custom-fund.js +109 -0
  89. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/custom-fund.store.js +36 -0
  90. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/default-fund/default-fund.js +114 -0
  91. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/featured-funds/super-campaign-featured-funds.js +113 -0
  92. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/featured-funds/super-campaign-featured-funds.types.js +1 -0
  93. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/member-name-input.js +162 -0
  94. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund-engagement-step-types.js +1 -0
  95. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund-engagement-step.js +115 -0
  96. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/abn-validation.js +11 -0
  97. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/bankBsbNumbers.js +111 -0
  98. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/smsf-engagement-step-host.js +161 -0
  99. package/dist/lib/collection/components/super-selection-app/funds/custom-fund/self-managed-fund/smsf-engagement-step-types.js +1 -0
  100. package/dist/lib/collection/components/super-selection-app/funds/promoted-fund/api/promoted-fund-choice.api.dto.js +1 -0
  101. package/dist/lib/collection/components/super-selection-app/funds/promoted-fund/api/promoted-fund-choice.api.js +31 -0
  102. package/dist/lib/collection/components/super-selection-app/funds/slate-super/api/slate-choice.api.dto.js +1 -0
  103. package/dist/lib/collection/components/super-selection-app/funds/slate-super/api/slate-choice.api.js +13 -0
  104. package/dist/lib/collection/components/super-selection-app/funds/slate-super/api/slate.js +4 -0
  105. package/dist/lib/collection/components/super-selection-app/header-section/header-section.js +37 -0
  106. package/dist/lib/collection/components/super-selection-app/misc/button.js +195 -0
  107. package/dist/lib/collection/components/super-selection-app/misc/dropdown-async.css +7 -0
  108. package/dist/lib/collection/components/super-selection-app/misc/dropdown-async.js +390 -0
  109. package/dist/lib/collection/components/super-selection-app/misc/loading-indicator.js +52 -0
  110. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-common.js +22 -0
  111. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-display-field.js +42 -0
  112. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-error-box.js +66 -0
  113. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-invalid-my-own-fund.js +121 -0
  114. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-invalid-smsf.js +145 -0
  115. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-my-own-fund.js +223 -0
  116. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-smsf.js +398 -0
  117. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-types.js +288 -0
  118. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill-warning-box.js +37 -0
  119. package/dist/lib/collection/components/super-selection-app/prefill-fund/prefill.js +81 -0
  120. package/dist/lib/collection/components/super-selection-app/services/australian-fund-lookup.service.js +15 -0
  121. package/dist/lib/collection/components/super-selection-app/services/event-tracking.service.js +117 -0
  122. package/dist/lib/collection/components/super-selection-app/services/existing-super-choice-info.service.js +134 -0
  123. package/dist/lib/collection/components/super-selection-app/services/misc.service.js +7 -0
  124. package/dist/lib/collection/components/super-selection-app/services/navigation.service.js +31 -0
  125. package/dist/lib/collection/components/super-selection-app/services/super-selection-app.routes.js +38 -0
  126. package/dist/lib/collection/components/super-selection-app/services/super-selection-app.service.js +171 -0
  127. package/dist/lib/collection/components/super-selection-app/services/super-selection.store.js +45 -0
  128. package/dist/lib/collection/components/super-selection-app/standard-choice/standard-choice-form.js +155 -0
  129. package/dist/lib/collection/components/super-selection-app/standard-choice/standard-choice-form.store.js +11 -0
  130. package/dist/lib/collection/components/super-selection-app/super-selection-app.css +27 -0
  131. package/dist/lib/collection/components/super-selection-app/super-selection-app.js +291 -0
  132. package/dist/lib/collection/components/super-smsf/super-smsf-types.js +1 -0
  133. package/dist/lib/collection/components/super-smsf/super-smsf.form.js +1 -0
  134. package/dist/lib/collection/components/super-smsf/super-smsf.js +166 -0
  135. package/dist/lib/collection/global/init-host.js +25 -0
  136. package/dist/lib/collection/global/main.dev.js +29 -0
  137. package/dist/lib/collection/global/main.js +11 -0
  138. package/dist/lib/collection/global/stencil-router-workaround.js +12 -0
  139. package/dist/lib/collection/index.js +2 -0
  140. package/dist/lib/collection/utils/config.js +2 -0
  141. package/dist/lib/collection/utils/gtm.js +5 -0
  142. package/dist/lib/collection/utils/iframe.js +33 -0
  143. package/dist/lib/collection/utils/index.js +11 -0
  144. package/dist/lib/collection/utils/lazy.js +29 -0
  145. package/dist/lib/collection/utils/storage.js +5 -0
  146. package/dist/lib/esm/active-router-d18b36fb.js +73 -0
  147. package/dist/lib/esm/apollo-super-selection.js +20 -0
  148. package/dist/lib/esm/app-globals-c1f89805.js +23 -0
  149. package/dist/lib/esm/context-consumer.entry.js +25 -0
  150. package/dist/lib/esm/custom-fund-choice.api-42801d64.js +3188 -0
  151. package/dist/lib/esm/datorama-akita-127aea91.js +3624 -0
  152. package/dist/lib/esm/index-107d7c24.js +1732 -0
  153. package/dist/lib/esm/index.js +1 -0
  154. package/dist/lib/esm/loader.js +20 -0
  155. package/dist/lib/esm/polyfills/core-js.js +11 -0
  156. package/dist/lib/esm/polyfills/css-shim.js +1 -0
  157. package/dist/lib/esm/polyfills/dom.js +79 -0
  158. package/dist/lib/esm/polyfills/es5-html-element.js +1 -0
  159. package/dist/lib/esm/polyfills/index.js +34 -0
  160. package/dist/lib/esm/polyfills/system.js +6 -0
  161. package/dist/lib/esm/sss-button_32.entry.js +14879 -0
  162. package/dist/lib/esm/sss-super-byof-host.entry.js +107 -0
  163. package/dist/lib/esm/stencil-async-content.entry.js +28 -0
  164. package/dist/lib/esm/stencil-route-title.entry.js +28 -0
  165. package/dist/lib/esm/stencil-router-prompt.entry.js +55 -0
  166. package/dist/lib/esm/stencil-router-redirect.entry.js +28 -0
  167. package/dist/lib/esm-es5/active-router-d18b36fb.js +1 -0
  168. package/dist/lib/esm-es5/apollo-super-selection.js +1 -0
  169. package/dist/lib/esm-es5/app-globals-c1f89805.js +1 -0
  170. package/dist/lib/esm-es5/context-consumer.entry.js +1 -0
  171. package/dist/lib/esm-es5/custom-fund-choice.api-42801d64.js +1 -0
  172. package/dist/lib/esm-es5/datorama-akita-127aea91.js +15 -0
  173. package/dist/lib/esm-es5/index-107d7c24.js +1 -0
  174. package/dist/lib/esm-es5/index.js +0 -0
  175. package/dist/lib/esm-es5/loader.js +1 -0
  176. package/dist/lib/esm-es5/sss-button_32.entry.js +69 -0
  177. package/dist/lib/esm-es5/sss-super-byof-host.entry.js +1 -0
  178. package/dist/lib/esm-es5/stencil-async-content.entry.js +1 -0
  179. package/dist/lib/esm-es5/stencil-route-title.entry.js +1 -0
  180. package/dist/lib/esm-es5/stencil-router-prompt.entry.js +1 -0
  181. package/dist/lib/esm-es5/stencil-router-redirect.entry.js +1 -0
  182. package/dist/lib/index.cjs.js +1 -0
  183. package/dist/lib/index.js +1 -0
  184. package/dist/lib/loader/cdn.js +3 -0
  185. package/dist/lib/loader/index.cjs.js +3 -0
  186. package/dist/lib/loader/index.d.ts +13 -0
  187. package/dist/lib/loader/index.es2017.js +3 -0
  188. package/dist/lib/loader/index.js +4 -0
  189. package/dist/lib/loader/package.json +10 -0
  190. package/dist/lib/node_modules/@stencil/router/dist/collection/components/route/route.css +3 -0
  191. package/dist/lib/types/components/app-host/loading-page.d.ts +3 -0
  192. package/dist/lib/types/components/app-host/services/app-configuration.query.d.ts +11 -0
  193. package/dist/lib/types/components/app-host/services/app-configuration.service.d.ts +9 -0
  194. package/dist/lib/types/components/app-host/services/app-parameters.query.d.ts +10 -0
  195. package/dist/lib/types/components/app-host/services/app-parameters.service.d.ts +6 -0
  196. package/dist/lib/types/components/app-host/services/appinsights.service.d.ts +15 -0
  197. package/dist/lib/types/components/app-host/services/authentication.query.d.ts +13 -0
  198. package/dist/lib/types/components/app-host/services/authentication.service.d.ts +9 -0
  199. package/dist/lib/types/components/app-host/services/interop/host-interop.service.d.ts +7 -0
  200. package/dist/lib/types/components/app-host/services/interop/iframe-interop.service.d.ts +5 -0
  201. package/dist/lib/types/components/app-host/services/interop/react-native-interop.service.d.ts +7 -0
  202. package/dist/lib/types/components/app-host/services/interop.query.d.ts +11 -0
  203. package/dist/lib/types/components/app-host/services/session.store.d.ts +31 -0
  204. package/dist/lib/types/components/app-host/super-selection-app-host.d.ts +15 -0
  205. package/dist/lib/types/components/super-byof/super-byof-types.d.ts +26 -0
  206. package/dist/lib/types/components/super-byof/super-byof.d.ts +19 -0
  207. package/dist/lib/types/components/super-byof/super-byof.form.d.ts +6 -0
  208. package/dist/lib/types/components/super-campaign/fund-tile-clicked.handler.d.ts +12 -0
  209. package/dist/lib/types/components/super-campaign/promoted-fund-joined.handler.d.ts +15 -0
  210. package/dist/lib/types/components/super-campaign/super-campaign-types.d.ts +98 -0
  211. package/dist/lib/types/components/super-campaign/super-campaign.d.ts +27 -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-campaign-errors-api.d.ts +6 -0
  215. package/dist/lib/types/components/super-selection-app/api/super-campaign-errors.api.dtos.d.ts +7 -0
  216. package/dist/lib/types/components/super-selection-app/api/super-selection-events.model.d.ts +171 -0
  217. package/dist/lib/types/components/super-selection-app/api/super-selection.api.d.ts +16 -0
  218. package/dist/lib/types/components/super-selection-app/api/super-selection.api.dto.d.ts +248 -0
  219. package/dist/lib/types/components/super-selection-app/app-state-pages/success.d.ts +7 -0
  220. package/dist/lib/types/components/super-selection-app/choice/choice-router.d.ts +6 -0
  221. package/dist/lib/types/components/super-selection-app/existing-choice/existing-choice.d.ts +12 -0
  222. package/dist/lib/types/components/super-selection-app/footer-section/footer-section.d.ts +5 -0
  223. package/dist/lib/types/components/super-selection-app/funds/custom-fund/api/custom-fund-choice.api.d.ts +10 -0
  224. package/dist/lib/types/components/super-selection-app/funds/custom-fund/api/custom-fund-choice.api.dto.d.ts +43 -0
  225. package/dist/lib/types/components/super-selection-app/funds/custom-fund/custom-fund.d.ts +9 -0
  226. package/dist/lib/types/components/super-selection-app/funds/custom-fund/custom-fund.store.d.ts +27 -0
  227. package/dist/lib/types/components/super-selection-app/funds/custom-fund/default-fund/default-fund.d.ts +13 -0
  228. package/dist/lib/types/components/super-selection-app/funds/custom-fund/featured-funds/super-campaign-featured-funds.d.ts +18 -0
  229. package/dist/lib/types/components/super-selection-app/funds/custom-fund/featured-funds/super-campaign-featured-funds.types.d.ts +26 -0
  230. package/dist/lib/types/components/super-selection-app/funds/custom-fund/member-name-input.d.ts +14 -0
  231. package/dist/lib/types/components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund-engagement-step-types.d.ts +15 -0
  232. package/dist/lib/types/components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund-engagement-step.d.ts +20 -0
  233. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/abn-validation.d.ts +1 -0
  234. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/bankBsbNumbers.d.ts +112 -0
  235. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/smsf-engagement-step-host.d.ts +28 -0
  236. package/dist/lib/types/components/super-selection-app/funds/custom-fund/self-managed-fund/smsf-engagement-step-types.d.ts +15 -0
  237. package/dist/lib/types/components/super-selection-app/funds/promoted-fund/api/promoted-fund-choice.api.d.ts +8 -0
  238. package/dist/lib/types/components/super-selection-app/funds/promoted-fund/api/promoted-fund-choice.api.dto.d.ts +23 -0
  239. package/dist/lib/types/components/super-selection-app/funds/slate-super/api/slate-choice.api.d.ts +6 -0
  240. package/dist/lib/types/components/super-selection-app/funds/slate-super/api/slate-choice.api.dto.d.ts +9 -0
  241. package/dist/lib/types/components/super-selection-app/funds/slate-super/api/slate.d.ts +4 -0
  242. package/dist/lib/types/components/super-selection-app/header-section/header-section.d.ts +3 -0
  243. package/dist/lib/types/components/super-selection-app/misc/button.d.ts +14 -0
  244. package/dist/lib/types/components/super-selection-app/misc/dropdown-async.d.ts +52 -0
  245. package/dist/lib/types/components/super-selection-app/misc/loading-indicator.d.ts +5 -0
  246. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-common.d.ts +9 -0
  247. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-display-field.d.ts +5 -0
  248. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-error-box.d.ts +5 -0
  249. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-invalid-my-own-fund.d.ts +18 -0
  250. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-invalid-smsf.d.ts +28 -0
  251. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-my-own-fund.d.ts +30 -0
  252. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-smsf.d.ts +52 -0
  253. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-types.d.ts +95 -0
  254. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill-warning-box.d.ts +4 -0
  255. package/dist/lib/types/components/super-selection-app/prefill-fund/prefill.d.ts +14 -0
  256. package/dist/lib/types/components/super-selection-app/services/australian-fund-lookup.service.d.ts +8 -0
  257. package/dist/lib/types/components/super-selection-app/services/event-tracking.service.d.ts +25 -0
  258. package/dist/lib/types/components/super-selection-app/services/existing-super-choice-info.service.d.ts +75 -0
  259. package/dist/lib/types/components/super-selection-app/services/misc.service.d.ts +6 -0
  260. package/dist/lib/types/components/super-selection-app/services/navigation.service.d.ts +17 -0
  261. package/dist/lib/types/components/super-selection-app/services/super-selection-app.routes.d.ts +19 -0
  262. package/dist/lib/types/components/super-selection-app/services/super-selection-app.service.d.ts +43 -0
  263. package/dist/lib/types/components/super-selection-app/services/super-selection.store.d.ts +37 -0
  264. package/dist/lib/types/components/super-selection-app/standard-choice/standard-choice-form.d.ts +16 -0
  265. package/dist/lib/types/components/super-selection-app/standard-choice/standard-choice-form.store.d.ts +42 -0
  266. package/dist/lib/types/components/super-selection-app/super-selection-app.d.ts +27 -0
  267. package/dist/lib/types/components/super-smsf/super-smsf-types.d.ts +34 -0
  268. package/dist/lib/types/components/super-smsf/super-smsf.d.ts +20 -0
  269. package/dist/lib/types/components/super-smsf/super-smsf.form.d.ts +15 -0
  270. package/dist/lib/types/components.d.ts +522 -0
  271. package/dist/lib/types/global/init-host.d.ts +1 -0
  272. package/dist/lib/types/global/main.d.ts +1 -0
  273. package/dist/lib/types/global/main.dev.d.ts +1 -0
  274. package/dist/lib/types/global/stencil-router-workaround.d.ts +1 -0
  275. package/dist/lib/types/index.d.ts +2 -0
  276. package/dist/lib/types/stencil-public-runtime.d.ts +1555 -0
  277. package/dist/lib/types/utils/config.d.ts +2 -0
  278. package/dist/lib/types/utils/gtm.d.ts +7 -0
  279. package/dist/lib/types/utils/iframe.d.ts +13 -0
  280. package/dist/lib/types/utils/index.d.ts +4 -0
  281. package/dist/lib/types/utils/lazy.d.ts +12 -0
  282. package/dist/lib/types/utils/storage.d.ts +4 -0
  283. package/package.json +1 -1
@@ -0,0 +1,111 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-eb4f212f.js');
6
+ const customFundChoice_api = require('./custom-fund-choice.api-293c1ace.js');
7
+ require('./active-router-1f555f75.js');
8
+
9
+ const LoadWaitingTimeout = 30000;
10
+
11
+ var SuperByofComponentStatus;
12
+ (function (SuperByofComponentStatus) {
13
+ SuperByofComponentStatus[SuperByofComponentStatus["NotLoaded"] = 1] = "NotLoaded";
14
+ SuperByofComponentStatus[SuperByofComponentStatus["Loaded"] = 2] = "Loaded";
15
+ })(SuperByofComponentStatus || (SuperByofComponentStatus = {}));
16
+ let superByofComponentStatus = SuperByofComponentStatus.NotLoaded;
17
+ const SuperByofHost = class {
18
+ constructor(hostRef) {
19
+ index.registerInstance(this, hostRef);
20
+ this.eventTrackingService = customFundChoice_api.EventTrackingService.Instance;
21
+ this.subscribeToSuperByofEvents = () => {
22
+ for (const eventName in this.byofEventHandlers) {
23
+ document.addEventListener(eventName, this.byofEventHandlers[eventName]);
24
+ }
25
+ };
26
+ this.unSubscribeFromSuperByofEvents = () => {
27
+ for (const eventName in this.byofEventHandlers) {
28
+ document.removeEventListener(eventName, this.byofEventHandlers[eventName]);
29
+ }
30
+ };
31
+ this.byofLoaded = async (event) => {
32
+ if (event.detail.sender === 'super-byof') {
33
+ superByofComponentStatus = SuperByofComponentStatus.Loaded;
34
+ clearTimeout(this.loadingTimeoutRef);
35
+ this.eventTrackingService.TrackMyOwnSuperFundDetailViewedAsync({
36
+ promotedFundsShown: customFundChoice_api.superSelectionAppService.promotedFunds,
37
+ defaultFundUsiSet: customFundChoice_api.Option.toUndefined(customFundChoice_api.superSelectionAppService.defaultFundUsi)
38
+ });
39
+ }
40
+ return Promise.resolve();
41
+ };
42
+ this.byofCompleted = async (event) => {
43
+ if (event.detail.sender === 'super-byof') {
44
+ customFundChoice_api.state.myOwnFundForm = {
45
+ fundUsi: customFundChoice_api.Option.fromNullable(event.detail.fundUsi),
46
+ fundName: customFundChoice_api.Option.fromNullable(event.detail.fundName),
47
+ memberNumber: customFundChoice_api.Option.fromNullable(event.detail.memberNumber),
48
+ memberFirstName: customFundChoice_api.Option.fromNullable(event.detail.memberFirstName),
49
+ memberFamilyName: customFundChoice_api.Option.fromNullable(event.detail.memberLastName)
50
+ };
51
+ if (customFundChoice_api.superSelectionAppService.isBringYourOwnFundCustomStepEnabled &&
52
+ customFundChoice_api.superSelectionAppService.isUsingSuperCampaign) {
53
+ customFundChoice_api.navigationService.navigateInternally(this.history, customFundChoice_api.SuperSelectionAppRoutes.MyOwnFundEngagementStep);
54
+ return;
55
+ }
56
+ customFundChoice_api.navigationService.navigateInternallyToStandardChoice({
57
+ history: this.history,
58
+ fundName: event.detail.fundName,
59
+ fundDetails: {
60
+ type: 'myOwnFund',
61
+ fundName: event.detail.fundName,
62
+ fundUsi: event.detail.fundUsi,
63
+ memberNumber: event.detail.memberNumber
64
+ },
65
+ handleSubmitFn: async (standardChoiceFormSignature) => {
66
+ const customFundChoiceDto = Object.assign({ fundUsi: event.detail.fundUsi, memberNumber: event.detail.memberNumber, memberFirstName: event.detail.memberFirstName, memberFamilyName: event.detail.memberLastName, standardChoiceFormSignature }, customFundChoice_api.superSelectionAppService.promotedFundsConfig);
67
+ await customFundChoice_api.customFundChoiceApi.submitCustomFundChoiceAsync(customFundChoiceDto);
68
+ }
69
+ });
70
+ }
71
+ };
72
+ this.byofCancelled = async (event) => {
73
+ if (event.detail.sender === 'super-byof') {
74
+ await customFundChoice_api.navigationService.navigateInternally(this.history, customFundChoice_api.SuperSelectionAppRoutes.ChoicePage);
75
+ }
76
+ };
77
+ this.byofEventHandlers = {
78
+ 'byof-loaded': this.byofLoaded.bind(this),
79
+ 'byof-completed': this.byofCompleted.bind(this),
80
+ 'byof-cancelled': this.byofCancelled.bind(this)
81
+ };
82
+ }
83
+ async componentWillLoad() {
84
+ if (customFundChoice_api.Option.isSome(customFundChoice_api.superSelectionAppService.backendUrl) && customFundChoice_api.Option.isSome(customFundChoice_api.superSelectionAppService.state.jwt)) {
85
+ this.backendUrl = customFundChoice_api.superSelectionAppService.backendUrl.value;
86
+ this.accessToken = customFundChoice_api.superSelectionAppService.state.jwt.value;
87
+ if (superByofComponentStatus === SuperByofComponentStatus.NotLoaded) {
88
+ this.loadingTimeoutRef = setTimeout(this.byofLoadingTimeoutTriggered.bind(this), LoadWaitingTimeout);
89
+ }
90
+ this.subscribeToSuperByofEvents();
91
+ }
92
+ else {
93
+ throw Error(`SuperByofHost pre-requisites not met.`);
94
+ }
95
+ }
96
+ disconnectedCallback() {
97
+ clearTimeout(this.loadingTimeoutRef);
98
+ this.unSubscribeFromSuperByofEvents();
99
+ }
100
+ render() {
101
+ return (index.h(index.Host, null, index.h("sss-header-section", null), index.h("div", { class: "flex justify-center mt-11" }, index.h("sss-custom-fund", null, index.h("apollo-super-byof", { "backend-url": this.backendUrl, "access-token": this.accessToken })))));
102
+ }
103
+ async byofLoadingTimeoutTriggered() {
104
+ if (superByofComponentStatus !== SuperByofComponentStatus.Loaded) {
105
+ throw Error(`BYOF component failed to load.`);
106
+ }
107
+ }
108
+ };
109
+ customFundChoice_api.injectHistory(SuperByofHost);
110
+
111
+ exports.sss_super_byof_host = SuperByofHost;
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-eb4f212f.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-eb4f212f.js');
6
+ const activeRouter = require('./active-router-1f555f75.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-eb4f212f.js');
6
+ const activeRouter = require('./active-router-1f555f75.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-eb4f212f.js');
6
+ const activeRouter = require('./active-router-1f555f75.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 @@
1
+ /*! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,select:focus,textarea:focus{outline:2px solid #0000;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple]{background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid #0000;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:#0000;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E")}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=checkbox]:indeterminate,[type=radio]:checked:focus,[type=radio]:checked:hover{border-color:#0000;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");background-size:100% 100%;background-position:50%;background-repeat:no-repeat}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{border-color:#0000;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-y-0{top:0;bottom:0}.left-1\/2{left:50%}.right-0{right:0}.top-1\/2{top:50%}.z-10{z-index:10}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.my-3{margin-top:.75rem;margin-bottom:.75rem}.-mt-12{margin-top:-3rem}.-mt-20{margin-top:-5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-11{margin-top:2.75rem}.mt-2{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-16{height:4rem}.h-20{height:5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-60{max-height:15rem}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-20{width:5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.max-w-140{max-width:140px}.max-w-400{max-width:400px}.max-w-560{max-width:560px}.max-w-800{max-width:800px}.max-w-960{max-width:960px}.max-w-\[200px\]{max-width:200px}.max-w-\[300px\]{max-width:300px}.max-w-\[560px\]{max-width:560px}.flex-1{flex:1 1 0%}.flex-\[1_0_0\]{flex:1 0 0}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.grow{flex-grow:1}.basis-0{flex-basis:0px}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-outside{list-style-position:outside}.list-disc{list-style-type:disc}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.content-center{align-content:center}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-\[7px\]{gap:7px}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.-space-x-px>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-1px*var(--tw-space-x-reverse));margin-left:calc(-1px*(1 - var(--tw-space-x-reverse)))}.-space-y-px>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(-1px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(-1px*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-normal{white-space:normal}.break-words{overflow-wrap:break-word}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.rounded-bl-md{border-bottom-left-radius:.375rem}.rounded-br-md{border-bottom-right-radius:.375rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0}.border-l-4{border-left-width:4px}.border-r-0{border-right-width:0}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.border-transparent{border-color:#0000}.border-yellow-400{--tw-border-opacity:1;border-color:rgb(250 204 21/var(--tw-border-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.bg-primary-base{background-color:var(--fl-color-primary)}.bg-primary-hover{background-color:var(--fl-color-primary-hover)}.bg-primary-light{background-color:var(--fl-color-primary-light)}.bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity))}.bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity))}.bg-yellow-700{--tw-bg-opacity:1;background-color:rgb(161 98 7/var(--tw-bg-opacity))}.fill-primary-base{fill:var(--fl-color-primary)}.fill-white{fill:#fff}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-0{padding-left:0}.pl-1{padding-left:.25rem}.pl-1\.5{padding-left:.375rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pr-10{padding-right:2.5rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pr-9{padding-right:2.25rem}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-28{padding-top:7rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.font-inter{font-family:Inter,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.not-italic{font-style:normal}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-tight{line-height:1.25}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}.text-primary-base{color:var(--fl-color-primary)}.text-primary-dark{color:var(--fl-color-primary-dark)}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity))}.text-transparent{color:#0000}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7/var(--tw-text-opacity))}.opacity-10{opacity:.1}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.shadow-none,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-1,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-black{--tw-ring-opacity:1;--tw-ring-color:rgb(0 0 0/var(--tw-ring-opacity))}.ring-opacity-5{--tw-ring-opacity:0.05}.ring-offset-1{--tw-ring-offset-width:1px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invalid\:border-red-300:invalid{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity))}.invalid\:text-red-900:invalid{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity))}.invalid\:placeholder-red-300:invalid::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(252 165 165/var(--tw-placeholder-opacity))}.invalid\:placeholder-red-300:invalid::placeholder{--tw-placeholder-opacity:1;color:rgb(252 165 165/var(--tw-placeholder-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.hover\:bg-primary-base:hover{background-color:var(--fl-color-primary)}.hover\:bg-primary-hover:hover{background-color:var(--fl-color-primary-hover)}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.focus\:z-10:focus{z-index:10}.focus\:border-primary-base:focus{border-color:var(--fl-color-primary)}.focus\:border-primary-focus:focus{border-color:var(--fl-color-primary-focus)}.focus\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-primary-focus:focus{--tw-ring-color:var(--fl-color-primary-focus)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.invalid\:focus\:border-red-500:focus:invalid{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.invalid\:focus\:ring-red-500:focus:invalid{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:border-gray-300:disabled{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.disabled\:bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.disabled\:text-gray-400:disabled{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.group:hover .group-hover\:fill-white{fill:#fff}@media (min-width:640px){.sm\:mb-0{margin-bottom:0}.sm\:mb-4{margin-bottom:1rem}.sm\:mr-8{margin-right:2rem}.sm\:mt-12{margin-top:3rem}.sm\:mt-20{margin-top:5rem}.sm\:mt-4{margin-top:1rem}.sm\:h-12{height:3rem}.sm\:h-auto{height:auto}.sm\:w-1\/2{width:50%}.sm\:w-2\/5{width:40%}.sm\:w-3\/5{width:60%}.sm\:w-560{width:560px}.sm\:w-80{width:20rem}.sm\:w-auto{width:auto}.sm\:max-w-320{max-width:320px}.sm\:max-w-\[100px\]{max-width:100px}.sm\:flex-row{flex-direction:row}.sm\:justify-start{justify-content:flex-start}.sm\:gap-4{gap:1rem}.sm\:border-b-0{border-bottom-width:0}.sm\:border-r{border-right-width:1px}.sm\:p-6{padding:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:pb-0{padding-bottom:0}.sm\:pb-8{padding-bottom:2rem}.sm\:pr-8{padding-right:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem}.sm\:leading-5,.sm\:text-sm{line-height:1.25rem}.sm\:leading-8{line-height:2rem}}
@@ -0,0 +1,98 @@
1
+ {
2
+ "entries": [
3
+ "./components/super-selection-app/misc/button.js",
4
+ "./components/super-selection-app/misc/dropdown-async.js",
5
+ "./components/super-selection-app/super-selection-app.js",
6
+ "./components/app-host/loading-page.js",
7
+ "./components/app-host/super-selection-app-host.js",
8
+ "./components/super-byof/super-byof.js",
9
+ "./components/super-campaign/super-campaign.js",
10
+ "./components/super-selection-app/app-state-pages/success.js",
11
+ "./components/super-selection-app/choice/choice-router.js",
12
+ "./components/super-selection-app/existing-choice/existing-choice.js",
13
+ "./components/super-selection-app/footer-section/footer-section.js",
14
+ "./components/super-selection-app/funds/custom-fund/custom-fund.js",
15
+ "./components/super-selection-app/funds/custom-fund/member-name-input.js",
16
+ "./components/super-selection-app/funds/custom-fund/default-fund/default-fund.js",
17
+ "./components/super-selection-app/funds/custom-fund/featured-funds/super-campaign-featured-funds.js",
18
+ "./components/super-selection-app/funds/custom-fund/my-own-fund/my-own-fund-engagement-step.js",
19
+ "./components/super-selection-app/funds/custom-fund/self-managed-fund/smsf-engagement-step-host.js",
20
+ "./components/super-selection-app/header-section/header-section.js",
21
+ "./components/super-selection-app/misc/loading-indicator.js",
22
+ "./components/super-selection-app/prefill-fund/prefill-display-field.js",
23
+ "./components/super-selection-app/prefill-fund/prefill-error-box.js",
24
+ "./components/super-selection-app/prefill-fund/prefill-invalid-my-own-fund.js",
25
+ "./components/super-selection-app/prefill-fund/prefill-invalid-smsf.js",
26
+ "./components/super-selection-app/prefill-fund/prefill-my-own-fund.js",
27
+ "./components/super-selection-app/prefill-fund/prefill-smsf.js",
28
+ "./components/super-selection-app/prefill-fund/prefill-warning-box.js",
29
+ "./components/super-selection-app/prefill-fund/prefill.js",
30
+ "./components/super-selection-app/standard-choice/standard-choice-form.js",
31
+ "./components/super-smsf/super-smsf.js"
32
+ ],
33
+ "compiler": {
34
+ "name": "@stencil/core",
35
+ "version": "2.3.0",
36
+ "typescriptVersion": "4.0.5"
37
+ },
38
+ "collections": [
39
+ {
40
+ "name": "@stencil/router",
41
+ "tags": [
42
+ "stencil-async-content",
43
+ "stencil-route",
44
+ "stencil-route-link",
45
+ "stencil-route-switch",
46
+ "stencil-route-title",
47
+ "stencil-router",
48
+ "stencil-router-prompt",
49
+ "stencil-router-redirect"
50
+ ]
51
+ },
52
+ {
53
+ "name": "@stencil/state-tunnel",
54
+ "tags": [
55
+ "context-consumer"
56
+ ]
57
+ }
58
+ ],
59
+ "bundles": [
60
+ {
61
+ "components": [
62
+ "sss-button",
63
+ "sss-choice-router",
64
+ "sss-custom-fund",
65
+ "sss-default-fund",
66
+ "sss-dropdown-async",
67
+ "sss-existing-choice-page",
68
+ "sss-footer-section",
69
+ "sss-header-section",
70
+ "sss-loading-indicator",
71
+ "sss-loading-page",
72
+ "sss-my-own-fund-engagement-step-host",
73
+ "sss-name-input",
74
+ "sss-prefill",
75
+ "sss-prefill-display-field",
76
+ "sss-prefill-error-box",
77
+ "sss-prefill-invalid-my-own-fund",
78
+ "sss-prefill-invalid-smsf",
79
+ "sss-prefill-my-own-fund",
80
+ "sss-prefill-smsf",
81
+ "sss-prefill-warning-box",
82
+ "sss-smsf-engagement-step-host",
83
+ "sss-standard-choice-form",
84
+ "sss-success",
85
+ "sss-super-campaign-featured-funds",
86
+ "sss-super-campaign-host",
87
+ "sss-super-smsf-host",
88
+ "stencil-route",
89
+ "stencil-route-link",
90
+ "stencil-route-switch",
91
+ "stencil-router",
92
+ "super-selection-app",
93
+ "super-selection-app-host"
94
+ ]
95
+ }
96
+ ],
97
+ "global": "./global/main.js"
98
+ }
@@ -0,0 +1,9 @@
1
+ import { Component, h, Host } from '@stencil/core';
2
+ export class LoadingPage {
3
+ render() {
4
+ return (h(Host, { class: "flex flex-col justify-center items-center" },
5
+ h("h5", { class: "text-lg" }, "Loading your superannuation step"),
6
+ h("sss-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,13 @@
1
+ import { Query } from '@datorama/akita';
2
+ import sessionStore from './session.store';
3
+ export class AppParametersQuery extends Query {
4
+ constructor(store) {
5
+ super(store);
6
+ this.store = store;
7
+ this.ignoreExistingSelection$ = this.select((state) => state.ignoreExistingSelection);
8
+ }
9
+ get ignoreExistingSelection() {
10
+ return this.getValue().ignoreExistingSelection;
11
+ }
12
+ }
13
+ export default new AppParametersQuery(sessionStore);
@@ -0,0 +1,14 @@
1
+ import * as O from 'fp-ts/lib/Option';
2
+ import sessionStore from './session.store';
3
+ class AppParametersService {
4
+ constructor() {
5
+ this.ignoreExistingSelectionQueryParameter = 'ignoreExistingSelection';
6
+ }
7
+ init(query) {
8
+ const urlParams = new URLSearchParams(query);
9
+ const queryParamValue = O.fromNullable(urlParams.get(this.ignoreExistingSelectionQueryParameter));
10
+ const ignoreExistingSelection = O.fold(() => false, (value) => value === 'true')(queryParamValue);
11
+ sessionStore.update({ ignoreExistingSelection: ignoreExistingSelection });
12
+ }
13
+ }
14
+ export default new AppParametersService();
@@ -0,0 +1,46 @@
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
+ trackErrorTrace(message) {
34
+ this.appInsights.value.trackTrace({ message, severityLevel: SeverityLevel.Error });
35
+ }
36
+ appInsightsErrorHandler(error) {
37
+ this.appInsights.value.trackException({
38
+ error: error,
39
+ severityLevel: SeverityLevel.Error
40
+ });
41
+ // eslint-disable-next-line no-console
42
+ const defaultStencilErrorHandler = (error) => console.error(error);
43
+ defaultStencilErrorHandler(error);
44
+ }
45
+ }
46
+ 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();