@flarehr/apollo-super-selection 1.2.30870 → 1.2.30963

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.
@@ -1 +1 @@
1
- System.register(["./p-44bec843.system.js","./p-14885f78.system.js","./p-15f0e5eb.system.js"],(function(s,e){"use strict";var t,o,i;return{setters:[function(s){t=s.p;o=s.b},function(){},function(s){i=s.g}],execute:function(){var s=function(){var s=e.meta.url;var o={};if(s!==""){o.resourcesUrl=new URL(".",s).href}return t(o)};s().then((function(s){i();return o([["p-6ac8791e.system",[[0,"context-consumer",{context:[16],renderer:[16],subscribe:[16],unsubscribe:[32]}]]],["p-02f24922.system",[[0,"stencil-async-content",{documentLocation:[1,"document-location"],content:[32]}]]],["p-ef3afa00.system",[[0,"stencil-route-title",{titleSuffix:[1,"title-suffix"],pageTitle:[1,"page-title"]}]]],["p-f29066b9.system",[[0,"stencil-router-prompt",{when:[4],message:[1],history:[16],unblock:[32]}]]],["p-51aefdb1.system",[[0,"stencil-router-redirect",{history:[16],root:[1],url:[1]}]]],["p-894ac1a0.system",[[0,"sss-my-own-fund",{history:[16],formState:[32],isNotAllInformationProvidedMessageVisible:[32],isSubmitDisabled:[32]}],[0,"sss-self-managed-fund",{history:[16],formState:[32],isSubmitDisabled:[32]}],[0,"sss-super-choice-page",{history:[16],promotedFunds:[32],campaignConnectRequestInProgress:[32]}],[1,"super-selection-app-host",{sessionState:[32],jwt:[32],appConfiguration:[32],ignoreExistingSelection:[32]}],[0,"sss-default-fund",{history:[16],defaultFundProductName:[32]}],[0,"sss-standard-choice-form",{history:[16],standardChoiceFormSignature:[32],formState:[32],isSubmitDisabled:[32]}],[0,"sss-consent-page",{history:[16]}],[0,"sss-existing-choice-page",{history:[16],existingFund:[32]}],[0,"sss-promoted-fund-join-v1-page",{history:[16]}],[0,"sss-promoted-fund-join-v2-page",{history:[16]}],[0,"sss-slate-join-page",{history:[16]}],[0,"sss-success"],[1,"super-selection-app",{ignoreExistingSelection:[4,"ignore-existing-selection"],accessToken:[1,"access-token"],backendUrl:[1,"backend-url"],appBaseUrl:[1,"app-base-url"],history:[16],location:[16],isSelfHosted:[4,"is-self-hosted"],isAppInitialised:[32]}],[0,"sss-my-own-fund-inputs",{myOwnFundForm:[16],showValidationErrors:[4,"show-validation-errors"],selectedOption:[32]}],[0,"sss-self-managed-fund-inputs",{fundForm:[16],showValidationErrors:[4,"show-validation-errors"],isAbnValid:[32],isAbnTouched:[32],isAbnUsedForRegulated:[32],currentBank:[32],addressErrorMessage:[32]}],[0,"sss-super-choice-item-bottom",{disclaimer:[16],abnInfo:[1,"abn-info"],abn:[1],isMultiFund:[4,"is-multi-fund"]}],[0,"sss-loading-page"],[0,"sss-super-choice-item-top",{name:[1],logo:[1],features:[16],featureSubText:[16],isMultiFund:[4,"is-multi-fund"],isPromotedDefault:[4,"is-promoted-default"]}],[0,"sss-dropdown-async",{placeholder:[1],searchFunction:[16],value:[16],required:[4],requiredValidationMessage:[1,"required-validation-message"],disabled:[4],minSearchStringLength:[2,"min-search-string-length"],showValidationErrors:[4,"show-validation-errors"],searchState:[32],inputValue:[32],isDropdownVisible:[32],filteredOptions:[32],highlightedOptionIndex:[32],selectedOption:[32]},[[2,"focus","handleFocus"],[2,"blur","handleBlur"],[2,"keydown","handleKeyDown"]]],[0,"sss-footer-section",{textOverride:[16]}],[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],showFundOptionsSelection:[32]}],[0,"sss-iframe-host",{build:[16]}],[0,"sss-header-section",{currentPage:[1,"current-page"]}],[0,"sss-name-input",{value:[1],name:[1],readableName:[1,"readable-name"],showValidationErrors:[4,"show-validation-errors"],errorMessage:[32]}],[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,"sss-button",{fillWidth:[4,"fill-width"],fillWidthOnMobile:[4,"fill-width-on-mobile"],disabled:[4],variant:[1],size:[1],promiseFn:[16],state:[32]}],[0,"sss-loading-indicator",{theme:[1],size:[2]}],[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"]}]]]],s)}))}}}));
1
+ System.register(["./p-44bec843.system.js","./p-14885f78.system.js","./p-15f0e5eb.system.js"],(function(s,e){"use strict";var t,o,i;return{setters:[function(s){t=s.p;o=s.b},function(){},function(s){i=s.g}],execute:function(){var s=function(){var s=e.meta.url;var o={};if(s!==""){o.resourcesUrl=new URL(".",s).href}return t(o)};s().then((function(s){i();return o([["p-6ac8791e.system",[[0,"context-consumer",{context:[16],renderer:[16],subscribe:[16],unsubscribe:[32]}]]],["p-02f24922.system",[[0,"stencil-async-content",{documentLocation:[1,"document-location"],content:[32]}]]],["p-ef3afa00.system",[[0,"stencil-route-title",{titleSuffix:[1,"title-suffix"],pageTitle:[1,"page-title"]}]]],["p-f29066b9.system",[[0,"stencil-router-prompt",{when:[4],message:[1],history:[16],unblock:[32]}]]],["p-51aefdb1.system",[[0,"stencil-router-redirect",{history:[16],root:[1],url:[1]}]]],["p-58535c0b.system",[[0,"sss-my-own-fund",{history:[16],formState:[32],isNotAllInformationProvidedMessageVisible:[32],isSubmitDisabled:[32]}],[0,"sss-self-managed-fund",{history:[16],formState:[32],isSubmitDisabled:[32]}],[0,"sss-super-choice-page",{history:[16],promotedFunds:[32],campaignConnectRequestInProgress:[32]}],[1,"super-selection-app-host",{sessionState:[32],jwt:[32],appConfiguration:[32],ignoreExistingSelection:[32]}],[0,"sss-default-fund",{history:[16],defaultFundProductName:[32]}],[0,"sss-standard-choice-form",{history:[16],standardChoiceFormSignature:[32],formState:[32],isSubmitDisabled:[32]}],[0,"sss-consent-page",{history:[16]}],[0,"sss-existing-choice-page",{history:[16],existingFund:[32]}],[0,"sss-promoted-fund-join-v1-page",{history:[16]}],[0,"sss-promoted-fund-join-v2-page",{history:[16]}],[0,"sss-slate-join-page",{history:[16]}],[0,"sss-success"],[1,"super-selection-app",{ignoreExistingSelection:[4,"ignore-existing-selection"],accessToken:[1,"access-token"],backendUrl:[1,"backend-url"],appBaseUrl:[1,"app-base-url"],history:[16],location:[16],isSelfHosted:[4,"is-self-hosted"],isAppInitialised:[32]}],[0,"sss-my-own-fund-inputs",{myOwnFundForm:[16],showValidationErrors:[4,"show-validation-errors"],selectedOption:[32]}],[0,"sss-self-managed-fund-inputs",{fundForm:[16],showValidationErrors:[4,"show-validation-errors"],isAbnValid:[32],isAbnTouched:[32],isAbnUsedForRegulated:[32],currentBank:[32],addressErrorMessage:[32]}],[0,"sss-super-choice-item-bottom",{disclaimer:[16],abnInfo:[1,"abn-info"],abn:[1],isMultiFund:[4,"is-multi-fund"]}],[0,"sss-loading-page"],[0,"sss-super-choice-item-top",{name:[1],logo:[1],features:[16],featureSubText:[16],isMultiFund:[4,"is-multi-fund"],isPromotedDefault:[4,"is-promoted-default"]}],[0,"sss-dropdown-async",{placeholder:[1],searchFunction:[16],value:[16],required:[4],requiredValidationMessage:[1,"required-validation-message"],disabled:[4],minSearchStringLength:[2,"min-search-string-length"],showValidationErrors:[4,"show-validation-errors"],searchState:[32],inputValue:[32],isDropdownVisible:[32],filteredOptions:[32],highlightedOptionIndex:[32],selectedOption:[32]},[[2,"focus","handleFocus"],[2,"blur","handleBlur"],[2,"keydown","handleKeyDown"]]],[0,"sss-footer-section",{textOverride:[16]}],[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],showFundOptionsSelection:[32]}],[0,"sss-iframe-host",{build:[16]}],[0,"sss-header-section",{currentPage:[1,"current-page"]}],[0,"sss-name-input",{value:[1],name:[1],readableName:[1,"readable-name"],showValidationErrors:[4,"show-validation-errors"],errorMessage:[32]}],[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,"sss-button",{fillWidth:[4,"fill-width"],fillWidthOnMobile:[4,"fill-width-on-mobile"],disabled:[4],variant:[1],size:[1],promiseFn:[16],state:[32]}],[0,"sss-loading-indicator",{theme:[1],size:[2]}],[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"]}]]]],s)}))}}}));
@@ -264,7 +264,7 @@ class TapSubscriber extends datoramaAkita.Subscriber {
264
264
  }
265
265
  }
266
266
 
267
- const AppVersion = '1.2.30870';
267
+ const AppVersion = '1.2.30963';
268
268
 
269
269
  // -------------------------------------------------------------------------------------
270
270
  // guards
@@ -3276,6 +3276,131 @@ exports.traverseArray(_function.identity);
3276
3276
 
3277
3277
  function e(e){this.message=e;}e.prototype=new Error,e.prototype.name="InvalidCharacterError";var r="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(r){var t=String(r).replace(/=+$/,"");if(t.length%4==1)throw new e("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,o,a=0,i=0,c="";o=t.charAt(i++);~o&&(n=a%4?64*n+o:o,a++%4)?c+=String.fromCharCode(255&n>>(-2*a&6)):0)o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(o);return c};function t(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw "Illegal base64url string!"}try{return function(e){return decodeURIComponent(r(e).replace(/(.)/g,(function(e,r){var t=r.charCodeAt(0).toString(16).toUpperCase();return t.length<2&&(t="0"+t),"%"+t})))}(t)}catch(e){return r(t)}}function n(e){this.message=e;}function o(e,r){if("string"!=typeof e)throw new n("Invalid token specified");var o=!0===(r=r||{}).header?0:1;try{return JSON.parse(t(e.split(".")[o]))}catch(e){throw new n("Invalid token specified: "+e.message)}}n.prototype=new Error,n.prototype.name="InvalidTokenError";
3278
3278
 
3279
+ function hydratePromotedFundChoiceDtoKind(dto) {
3280
+ if ('slate' in dto) {
3281
+ dto.kind = 'slate';
3282
+ }
3283
+ else if ('australianRetirementTrust' in dto) {
3284
+ dto.kind = 'australianRetirementTrust';
3285
+ }
3286
+ else if ('aware' in dto) {
3287
+ dto.kind = 'aware';
3288
+ }
3289
+ else if ('active' in dto) {
3290
+ dto.kind = 'active';
3291
+ }
3292
+ else if ('australianEthical' in dto) {
3293
+ dto.kind = 'australianEthical';
3294
+ }
3295
+ else if ('virgin' in dto) {
3296
+ dto.kind = 'virgin';
3297
+ }
3298
+ else if ('spirit' in dto) {
3299
+ dto.kind = 'spirit';
3300
+ }
3301
+ else if ('firstSuper' in dto) {
3302
+ dto.kind = 'firstSuper';
3303
+ }
3304
+ else if ('mercerMyChoice' in dto) {
3305
+ dto.kind = 'mercerMyChoice';
3306
+ }
3307
+ }
3308
+ function getPromotedFundUsi(dto) {
3309
+ switch (dto.kind) {
3310
+ case 'slate':
3311
+ return none;
3312
+ case 'australianRetirementTrust':
3313
+ return some(dto.australianRetirementTrust.usi);
3314
+ case 'aware':
3315
+ return some(dto.aware.usi);
3316
+ case 'active':
3317
+ return some(dto.active.usi);
3318
+ case 'australianEthical':
3319
+ return some(dto.australianEthical.usi);
3320
+ case 'virgin':
3321
+ return some(dto.virgin.usi);
3322
+ case 'spirit':
3323
+ return some(dto.spirit.usi);
3324
+ case 'firstSuper':
3325
+ return some(dto.firstSuper.usi);
3326
+ case 'mercerMyChoice':
3327
+ return some(dto.mercerMyChoice.usi);
3328
+ default:
3329
+ return none;
3330
+ }
3331
+ }
3332
+ function getSuperChoiceUsi(dto) {
3333
+ switch (dto.kind) {
3334
+ case 'Promoted':
3335
+ return getPromotedFundUsi(dto.promoted);
3336
+ case 'MyOwnFund':
3337
+ return some(dto.myOwnFund.usi);
3338
+ case 'SMSF':
3339
+ return none;
3340
+ case 'Default':
3341
+ return some(dto.default.usi);
3342
+ case 'PromotedDefault':
3343
+ return some(dto.promotedDefault.usi);
3344
+ default:
3345
+ return none;
3346
+ }
3347
+ }
3348
+ function getPromotedFundMemberNumber(dto) {
3349
+ switch (dto.kind) {
3350
+ case 'slate':
3351
+ return some(dto.slate.memberNumber);
3352
+ case 'australianRetirementTrust':
3353
+ return some(dto.australianRetirementTrust.memberNumber);
3354
+ case 'aware':
3355
+ return some(dto.aware.memberNumber);
3356
+ case 'active':
3357
+ return some(dto.active.memberNumber);
3358
+ case 'australianEthical':
3359
+ return some(dto.australianEthical.memberNumber);
3360
+ case 'virgin':
3361
+ return some(dto.virgin.memberNumber);
3362
+ case 'spirit':
3363
+ return some(dto.spirit.memberNumber);
3364
+ case 'firstSuper':
3365
+ return some(dto.firstSuper.memberNumber);
3366
+ case 'mercerMyChoice':
3367
+ return some(dto.mercerMyChoice.memberNumber);
3368
+ default:
3369
+ return none;
3370
+ }
3371
+ }
3372
+ function getSuperChoiceMemberNumber(dto) {
3373
+ switch (dto.kind) {
3374
+ case 'Promoted':
3375
+ return getPromotedFundMemberNumber(dto.promoted);
3376
+ case 'MyOwnFund':
3377
+ return some(dto.myOwnFund.memberNumber);
3378
+ case 'SMSF':
3379
+ case 'Default':
3380
+ case 'PromotedDefault':
3381
+ return none;
3382
+ default:
3383
+ return none;
3384
+ }
3385
+ }
3386
+ function hydrateSuperChoiceDetailsDtoKind(dto) {
3387
+ if ('promoted' in dto) {
3388
+ dto.kind = 'Promoted';
3389
+ }
3390
+ else if ('myOwnFund' in dto) {
3391
+ dto.kind = 'MyOwnFund';
3392
+ }
3393
+ else if ('smsf' in dto) {
3394
+ dto.kind = 'SMSF';
3395
+ }
3396
+ else if ('default' in dto) {
3397
+ dto.kind = 'Default';
3398
+ }
3399
+ else if ('promotedDefault' in dto) {
3400
+ dto.kind = 'PromotedDefault';
3401
+ }
3402
+ }
3403
+
3279
3404
  class SuperSelectionApi {
3280
3405
  async getAustralianFundsAsync(searchFilter, includeInactive = false) {
3281
3406
  return buildBackendApiClient()
@@ -3297,13 +3422,23 @@ class SuperSelectionApi {
3297
3422
  .json();
3298
3423
  }
3299
3424
  async getAppStateAsync() {
3300
- return buildBackendApiClient()
3425
+ var _a;
3426
+ const response = await buildBackendApiClient()
3301
3427
  .url('client-app-state')
3302
3428
  .get()
3303
3429
  .notFound(() => {
3304
3430
  throw new Error('Failed to fetch application configuration.');
3305
3431
  })
3306
3432
  .json();
3433
+ if ((_a = response.superBuyer.superChoice) === null || _a === void 0 ? void 0 : _a.choiceDetails) {
3434
+ hydrateSuperChoiceDetailsDtoKind(response.superBuyer.superChoice.choiceDetails);
3435
+ switch (response.superBuyer.superChoice.choiceDetails.kind) {
3436
+ case 'Promoted':
3437
+ hydratePromotedFundChoiceDtoKind(response.superBuyer.superChoice.choiceDetails.promoted);
3438
+ break;
3439
+ }
3440
+ }
3441
+ return response;
3307
3442
  }
3308
3443
  async getCampaignConnectAsync() {
3309
3444
  return buildBackendApiClient()
@@ -4197,10 +4332,47 @@ const fund$4 = {
4197
4332
  dtoPropName: 'firstSuper'
4198
4333
  };
4199
4334
 
4200
- const name$5 = 'Mercer MyChoice';
4335
+ const name$5 = 'Hesta Super';
4201
4336
  const fund$5 = {
4202
- fundId: 'mercermychoice',
4337
+ fundId: 'hesta-default',
4203
4338
  name: name$5,
4339
+ logo: 'logo-hesta.svg',
4340
+ route: SuperSelectionAppRoutes.PromotedFundJoinV2,
4341
+ features: [
4342
+ index.h("p", null, "A top-performing super fund* working for real-world impact"),
4343
+ index.h("p", null, "1+ million members"),
4344
+ index.h("p", null, "Expert help whenever you need it to help you face the future with confidence")
4345
+ ],
4346
+ featureSubText: (index.h("span", null,
4347
+ "* SuperRatings 10 Year Platinum Performance 2013-2023 (MySuper). Product ratings and awards are only one factor to be considered. See",
4348
+ ' ',
4349
+ index.h(Link, { className: "underline underline-offset-2 hover:text-gray-600", href: "https://www.hesta.com.au/ratings" }, "hesta.com.au/ratings"),
4350
+ ' ',
4351
+ "for more information.")),
4352
+ disclaimer: (index.h("div", { class: "space-y-2" },
4353
+ index.h("p", null,
4354
+ "You should look at your own financial position and requirements before making a decision. You may wish to consult an adviser when doing this or use the",
4355
+ ' ',
4356
+ index.h(Link, { href: "https://www.ato.gov.au/YourSuper-comparison-tool/" }, "ATO YourSuper comparison tool"),
4357
+ "."),
4358
+ index.h("p", null,
4359
+ "Visit",
4360
+ ' ',
4361
+ index.h(Link, { onClick: () => pdsViewedAsync(name$5), href: "https://www.hesta.com.au/pds" }, "hesta.com.au/pds"),
4362
+ ' ',
4363
+ "for a copy of a Product Disclosure Statement which should be considered when making a decision about the HESTA products on this website and to consider the relevant risks. The target market determination for HESTA products can be found at",
4364
+ ' ',
4365
+ index.h(Link, { href: "https://www.hesta.com.au/tmd" }, "hesta.com.au/tmd"),
4366
+ "."),
4367
+ index.h("p", null, "Issued by H.E.S.T. Australia Ltd ABN 66 006 818 695 AFSL No. 235249, Trustee of HESTA"))),
4368
+ footnoteTextOverride: Option.none,
4369
+ isPromotedDefault: true
4370
+ };
4371
+
4372
+ const name$6 = 'Mercer MyChoice';
4373
+ const fund$6 = {
4374
+ fundId: 'mercermychoice',
4375
+ name: name$6,
4204
4376
  logo: 'logo-mercer-mychoice.svg',
4205
4377
  route: SuperSelectionAppRoutes.PromotedFundJoinV2,
4206
4378
  features: [
@@ -4212,7 +4384,7 @@ const fund$5 = {
4212
4384
  index.h("p", null,
4213
4385
  "You should consider the",
4214
4386
  ' ',
4215
- index.h(Link, { href: "https://www.mercersuper.com.au/campaign-page/mercer-mychoice", onClick: () => pdsViewedAsync(name$5) }, "Product Disclosure Statement"),
4387
+ index.h(Link, { href: "https://www.mercersuper.com.au/campaign-page/mercer-mychoice", onClick: () => pdsViewedAsync(name$6) }, "Product Disclosure Statement"),
4216
4388
  ' ',
4217
4389
  "and",
4218
4390
  ' ',
@@ -4225,11 +4397,11 @@ const fund$5 = {
4225
4397
  dtoPropName: 'mercerMyChoice'
4226
4398
  };
4227
4399
 
4228
- const name$6 = 'Slate Super';
4400
+ const name$7 = 'Slate Super';
4229
4401
  const slateUsi = '32367272075001';
4230
- const fund$6 = {
4402
+ const fund$7 = {
4231
4403
  fundId: 'slate',
4232
- name: name$6,
4404
+ name: name$7,
4233
4405
  logo: 'logo-slate.png',
4234
4406
  route: SuperSelectionAppRoutes.SlateJoin,
4235
4407
  features: [
@@ -4240,7 +4412,7 @@ const fund$6 = {
4240
4412
  disclaimer: (index.h("p", { class: "small text-muted" },
4241
4413
  "You should consider the",
4242
4414
  ' ',
4243
- index.h(Link, { href: "https://slate.co/pds/?utm_source=flare&utm_medium=superselection", onClick: () => pdsViewedAsync(name$6, slateUsi) }, "Product Disclosure Statement"),
4415
+ index.h(Link, { href: "https://slate.co/pds/?utm_source=flare&utm_medium=superselection", onClick: () => pdsViewedAsync(name$7, slateUsi) }, "Product Disclosure Statement"),
4244
4416
  ' ',
4245
4417
  "and",
4246
4418
  ' ',
@@ -4253,10 +4425,10 @@ const fund$6 = {
4253
4425
  dtoPropName: 'slate'
4254
4426
  };
4255
4427
 
4256
- const name$7 = 'Spirit Super';
4257
- const fund$7 = {
4428
+ const name$8 = 'Spirit Super';
4429
+ const fund$8 = {
4258
4430
  fundId: 'spirit',
4259
- name: name$7,
4431
+ name: name$8,
4260
4432
  logo: 'logo-spirit.svg',
4261
4433
  route: SuperSelectionAppRoutes.PromotedFundJoinV2,
4262
4434
  features: [
@@ -4285,17 +4457,17 @@ const fund$7 = {
4285
4457
  disclaimer: (index.h("p", null,
4286
4458
  "Past performance isn\u2019t a reliable indicator of future performance. Consider the PDS and TMD at",
4287
4459
  ' ',
4288
- index.h(Link, { href: "https://www.spiritsuper.com.au/pds", onClick: () => pdsViewedAsync(name$7) }, "www.spiritsuper.com.au/pds"),
4460
+ index.h(Link, { href: "https://www.spiritsuper.com.au/pds", onClick: () => pdsViewedAsync(name$8) }, "www.spiritsuper.com.au/pds"),
4289
4461
  ' ',
4290
4462
  "before making a decision. Issuer is Motor Trades Association of Australia Superannuation Fund Pty Ltd (AFSL 238 718, ABN 14 008 650 628), the trustee of Spirit Super (ABN 74 559 365 913). Advice is provided by Quadrant First Pty Ltd (ABN 78 102 167 877, AFSL 284443).")),
4291
4463
  footnoteTextOverride: Option.none,
4292
4464
  dtoPropName: 'spirit'
4293
4465
  };
4294
4466
 
4295
- const name$8 = 'Virgin Money Super';
4296
- const fund$8 = {
4467
+ const name$9 = 'Virgin Money Super';
4468
+ const fund$9 = {
4297
4469
  fundId: 'virgin',
4298
- name: name$8,
4470
+ name: name$9,
4299
4471
  logo: 'logo-virgin.svg',
4300
4472
  route: SuperSelectionAppRoutes.PromotedFundJoinV2,
4301
4473
  features: [
@@ -4317,7 +4489,7 @@ const fund$8 = {
4317
4489
  disclaimer: (index.h("p", null,
4318
4490
  "Prepared by Virgin Money Financial Services Pty Ltd ABN 51 113 285 395 AFSL 286869 (\u2018Virgin Money\u2019). Virgin Money Super is a plan in the Mercer Super Trust ABN 19 905 422 981. Virgin Money Super is issued by Mercer Superannuation (Australia) Limited (MSAL) ABN 79 004 717 533 AFSL 235906 as trustee of the Mercer Super Trust. Consider the PDS and TMD at",
4319
4491
  ' ',
4320
- index.h(Link, { href: "https://virginmoney.com.au/superannuation/", onClick: () => pdsViewedAsync(name$8) }, "www.virginmoney.com.au"),
4492
+ index.h(Link, { href: "https://virginmoney.com.au/superannuation/", onClick: () => pdsViewedAsync(name$9) }, "www.virginmoney.com.au"),
4321
4493
  ' ',
4322
4494
  "before making a decision")),
4323
4495
  footnoteTextOverride: Option.some(PoweredByFlareFS),
@@ -4325,14 +4497,15 @@ const fund$8 = {
4325
4497
  };
4326
4498
 
4327
4499
  const fundsById = {
4328
- [fund$6.fundId]: fund$6,
4500
+ [fund$7.fundId]: fund$7,
4329
4501
  [fund$2.fundId]: fund$2,
4330
4502
  [fund$3.fundId]: fund$3,
4331
4503
  [fund.fundId]: fund,
4332
4504
  [fund$1.fundId]: fund$1,
4505
+ [fund$9.fundId]: fund$9,
4333
4506
  [fund$8.fundId]: fund$8,
4334
- [fund$7.fundId]: fund$7,
4335
4507
  [fund$4.fundId]: fund$4,
4508
+ [fund$6.fundId]: fund$6,
4336
4509
  [fund$5.fundId]: fund$5
4337
4510
  };
4338
4511
  const allPromotedFunds = Object.values(fundsById);
@@ -4342,88 +4515,9 @@ const getFundByDtoPropName = (dtoPropName) => {
4342
4515
  };
4343
4516
  const getFundNameByFundId = (fundId) => fundsById[fundId] != undefined ? some(fundsById[fundId].name) : none;
4344
4517
  const getFooterTextOverrideByFundId = (fundId) => { var _a, _b; return (_b = (_a = fundsById[fundId]) === null || _a === void 0 ? void 0 : _a.footnoteTextOverride) !== null && _b !== void 0 ? _b : none; };
4345
- const getFundUsiByFundId = (fundId) => fundId == fund$6.fundId ? some(slateUsi) : none;
4518
+ const getFundUsiByFundId = (fundId) => fundId == fund$7.fundId ? some(slateUsi) : none;
4346
4519
  const getLogoSrcByFundId = (fundId) => fundsById[fundId] != undefined ? some(index.getAssetPath(`assets/${fundsById[fundId].logo}`)) : none;
4347
4520
 
4348
- function getPromotedFundUsi(dto) {
4349
- switch (dto.kind) {
4350
- case 'slate':
4351
- return none;
4352
- case 'australianRetirementTrust':
4353
- return some(dto.australianRetirementTrust.usi);
4354
- case 'aware':
4355
- return some(dto.aware.usi);
4356
- case 'active':
4357
- return some(dto.active.usi);
4358
- case 'australianEthical':
4359
- return some(dto.australianEthical.usi);
4360
- case 'virgin':
4361
- return some(dto.virgin.usi);
4362
- case 'spirit':
4363
- return some(dto.spirit.usi);
4364
- case 'firstSuper':
4365
- return some(dto.firstSuper.usi);
4366
- case 'mercerMyChoice':
4367
- return some(dto.mercerMyChoice.usi);
4368
- default:
4369
- return none;
4370
- }
4371
- }
4372
- function getSuperChoiceUsi(dto) {
4373
- switch (dto.kind) {
4374
- case 'Promoted':
4375
- return getPromotedFundUsi(dto.promoted);
4376
- case 'MyOwnFund':
4377
- return some(dto.myOwnFund.usi);
4378
- case 'SMSF':
4379
- return none;
4380
- case 'Default':
4381
- return some(dto.default.usi);
4382
- case 'PromotedDefault':
4383
- return some(dto.promotedDefault.usi);
4384
- default:
4385
- return none;
4386
- }
4387
- }
4388
- function getPromotedFundMemberNumber(dto) {
4389
- switch (dto.kind) {
4390
- case 'slate':
4391
- return some(dto.slate.memberNumber);
4392
- case 'australianRetirementTrust':
4393
- return some(dto.australianRetirementTrust.memberNumber);
4394
- case 'aware':
4395
- return some(dto.aware.memberNumber);
4396
- case 'active':
4397
- return some(dto.active.memberNumber);
4398
- case 'australianEthical':
4399
- return some(dto.australianEthical.memberNumber);
4400
- case 'virgin':
4401
- return some(dto.virgin.memberNumber);
4402
- case 'spirit':
4403
- return some(dto.spirit.memberNumber);
4404
- case 'firstSuper':
4405
- return some(dto.firstSuper.memberNumber);
4406
- case 'mercerMyChoice':
4407
- return some(dto.mercerMyChoice.memberNumber);
4408
- default:
4409
- return none;
4410
- }
4411
- }
4412
- function getSuperChoiceMemberNumber(dto) {
4413
- switch (dto.kind) {
4414
- case 'Promoted':
4415
- return getPromotedFundMemberNumber(dto.promoted);
4416
- case 'MyOwnFund':
4417
- return some(dto.myOwnFund.memberNumber);
4418
- case 'SMSF':
4419
- case 'Default':
4420
- case 'PromotedDefault':
4421
- return none;
4422
- default:
4423
- return none;
4424
- }
4425
- }
4426
-
4427
4521
  class ExistingFundService {
4428
4522
  async GetExistingFundAsync() {
4429
4523
  var _a;
@@ -4576,6 +4670,7 @@ const ExistingChoice = class {
4576
4670
  return (index.h("div", null, index.h("div", { class: "text-2xl sm:text-3xl font-bold text-center" }, "Your super choice"), index.h("div", { class: "sm:text-lg text-gray-600 mt-3 sm:mt-4 max-w-800 text-center leading-7" }, "Continue with your chosen fund or choose another fund below."), index.h("div", { class: "flex justify-center mt-8 sm:mt-12" }, index.h("div", { class: "max-w-400 w-full" }, index.h("div", { class: "flex-col border shadow-sm p-6 pt-8 rounded-lg text-center" }, index.h("div", { class: "space-y-4" }, (() => {
4577
4671
  switch (this.existingFund.type) {
4578
4672
  case 'Promoted Fund':
4673
+ case 'Promoted Default Fund':
4579
4674
  return index.h(PromotedFundView, { id: this.existingFund.id });
4580
4675
  case 'Self Managed Fund':
4581
4676
  return index.h(SelfManagedFundView, null);
@@ -4583,13 +4678,20 @@ const ExistingChoice = class {
4583
4678
  return index.h(MyOwnFundView, null);
4584
4679
  case 'Default Fund':
4585
4680
  return index.h(DefaultFundView, null);
4681
+ default:
4682
+ return index.h("div", null);
4586
4683
  }
4587
4684
  })(), index.h("div", { class: "sm:text-lg font-bold leading-6" }, (() => {
4588
4685
  switch (this.existingFund.type) {
4589
4686
  case 'Default Fund':
4590
4687
  return "Employer's default fund";
4591
- default:
4688
+ case 'My Own Fund':
4689
+ case 'Promoted Fund':
4690
+ case 'Self Managed Fund':
4691
+ case 'Promoted Default Fund':
4592
4692
  return this.existingFund.name;
4693
+ default:
4694
+ return '';
4593
4695
  }
4594
4696
  })())), index.h("div", { class: "mt-6" }, index.h("sss-button", { fillWidth: true, promiseFn: () => this.handleFundNominationAccepted() }, "Continue with this fund"))), index.h("div", { class: "mt-4" }, index.h("sss-button", { fillWidth: true, variant: "secondary", promiseFn: () => this.handleFundNominationDeclined() }, "Choose another fund"))))));
4595
4697
  }
@@ -5008,7 +5110,8 @@ class PromotedFundJoinV2IFrameBuilder {
5008
5110
  navigationService.navigateInternally(history, SuperSelectionAppRoutes.ChoicePage);
5009
5111
  break;
5010
5112
  case 'success':
5011
- if (data.memberNumber) {
5113
+ if (state$2.isPromotedDefault ||
5114
+ (!state$2.isPromotedDefault && data.memberNumber)) {
5012
5115
  const promotedFundId = state$2.fundId;
5013
5116
  const fundName = getFundNameByFundId(promotedFundId);
5014
5117
  navigationService.navigateInternallyToStandardChoice({
@@ -5511,9 +5614,9 @@ class SlateIFrameBuilder {
5511
5614
  if (data.memberNumber) {
5512
5615
  navigationService.navigateInternallyToStandardChoice({
5513
5616
  history,
5514
- fundName: fund$6.name,
5617
+ fundName: fund$7.name,
5515
5618
  handleSubmitFn: (standardChoiceFormSignature) => slateChoiceApi.submitSlateChoiceAsync(Object.assign({ memberNumber: data.memberNumber, memberFirstName: data.memberFirstName, memberFamilyName: data.memberFamilyName, standardChoiceFormSignature, defaultFundUsiSet: Option.toUndefined(superSelectionAppService.defaultFundUsi) }, superSelectionAppService.promotedFundsConfig)),
5516
- promotedFundId: fund$6.fundId
5619
+ promotedFundId: fund$7.fundId
5517
5620
  });
5518
5621
  break;
5519
5622
  }
@@ -17180,6 +17283,8 @@ const SuperSelectionAppHost = class {
17180
17283
  return () => index.h("sss-loading-page", null);
17181
17284
  case AuthenticationState.Error:
17182
17285
  return () => index.h("h1", null, "Authentication Error");
17286
+ default:
17287
+ return () => index.h("h1", null, "Authentication Error");
17183
17288
  }
17184
17289
  }
17185
17290
  };
@@ -2,6 +2,7 @@ import { ResizeObserver as ResizeObserverPolyfill } from '@juggle/resize-observe
2
2
  import { Component, getAssetPath, h, Host, State } from '@stencil/core';
3
3
  import { isNone, toUndefined } from 'fp-ts/lib/Option';
4
4
  import initHost from '../../global/init-host';
5
+ import { assertExhaustive } from '../../utils';
5
6
  import iframe from '../../utils/iframe';
6
7
  import appInsights from '../app-host/services/appinsights.service';
7
8
  import appConfigurationQuery from './services/app-configuration.query';
@@ -64,6 +65,9 @@ export class SuperSelectionAppHost {
64
65
  return () => h("sss-loading-page", null);
65
66
  case AuthenticationState.Error:
66
67
  return () => h("h1", null, "Authentication Error");
68
+ default:
69
+ assertExhaustive(this.sessionState);
70
+ return () => h("h1", null, "Authentication Error");
67
71
  }
68
72
  }
69
73
  static get is() { return "super-selection-app-host"; }
@@ -1,5 +1,34 @@
1
1
  import { none, some } from 'fp-ts/Option';
2
2
  import { assertExhaustive } from '../../../utils';
3
+ export function hydratePromotedFundChoiceDtoKind(dto) {
4
+ if ('slate' in dto) {
5
+ dto.kind = 'slate';
6
+ }
7
+ else if ('australianRetirementTrust' in dto) {
8
+ dto.kind = 'australianRetirementTrust';
9
+ }
10
+ else if ('aware' in dto) {
11
+ dto.kind = 'aware';
12
+ }
13
+ else if ('active' in dto) {
14
+ dto.kind = 'active';
15
+ }
16
+ else if ('australianEthical' in dto) {
17
+ dto.kind = 'australianEthical';
18
+ }
19
+ else if ('virgin' in dto) {
20
+ dto.kind = 'virgin';
21
+ }
22
+ else if ('spirit' in dto) {
23
+ dto.kind = 'spirit';
24
+ }
25
+ else if ('firstSuper' in dto) {
26
+ dto.kind = 'firstSuper';
27
+ }
28
+ else if ('mercerMyChoice' in dto) {
29
+ dto.kind = 'mercerMyChoice';
30
+ }
31
+ }
3
32
  function getPromotedFundUsi(dto) {
4
33
  switch (dto.kind) {
5
34
  case 'slate':
@@ -82,3 +111,20 @@ export function getSuperChoiceMemberNumber(dto) {
82
111
  return none;
83
112
  }
84
113
  }
114
+ export function hydrateSuperChoiceDetailsDtoKind(dto) {
115
+ if ('promoted' in dto) {
116
+ dto.kind = 'Promoted';
117
+ }
118
+ else if ('myOwnFund' in dto) {
119
+ dto.kind = 'MyOwnFund';
120
+ }
121
+ else if ('smsf' in dto) {
122
+ dto.kind = 'SMSF';
123
+ }
124
+ else if ('default' in dto) {
125
+ dto.kind = 'Default';
126
+ }
127
+ else if ('promotedDefault' in dto) {
128
+ dto.kind = 'PromotedDefault';
129
+ }
130
+ }
@@ -1,4 +1,6 @@
1
+ import { assertExhaustive } from '../../../utils';
1
2
  import { buildBackendApiClient } from './api-client';
3
+ import { hydratePromotedFundChoiceDtoKind, hydrateSuperChoiceDetailsDtoKind } from './super-selection.api.dto';
2
4
  export class SuperSelectionApi {
3
5
  async getAustralianFundsAsync(searchFilter, includeInactive = false) {
4
6
  return buildBackendApiClient()
@@ -20,13 +22,30 @@ export class SuperSelectionApi {
20
22
  .json();
21
23
  }
22
24
  async getAppStateAsync() {
23
- return buildBackendApiClient()
25
+ var _a;
26
+ const response = await buildBackendApiClient()
24
27
  .url('client-app-state')
25
28
  .get()
26
29
  .notFound(() => {
27
30
  throw new Error('Failed to fetch application configuration.');
28
31
  })
29
32
  .json();
33
+ if ((_a = response.superBuyer.superChoice) === null || _a === void 0 ? void 0 : _a.choiceDetails) {
34
+ hydrateSuperChoiceDetailsDtoKind(response.superBuyer.superChoice.choiceDetails);
35
+ switch (response.superBuyer.superChoice.choiceDetails.kind) {
36
+ case 'Promoted':
37
+ hydratePromotedFundChoiceDtoKind(response.superBuyer.superChoice.choiceDetails.promoted);
38
+ break;
39
+ case 'Default':
40
+ case 'MyOwnFund':
41
+ case 'PromotedDefault':
42
+ case 'SMSF':
43
+ break;
44
+ default:
45
+ assertExhaustive(response.superBuyer.superChoice.choiceDetails);
46
+ }
47
+ }
48
+ return response;
30
49
  }
31
50
  async getCampaignConnectAsync() {
32
51
  return buildBackendApiClient()
@@ -1,5 +1,6 @@
1
1
  import { Component, h, Prop, State } from '@stencil/core';
2
2
  import { isSome } from 'fp-ts/Option';
3
+ import { assertExhaustive } from '../../../utils';
3
4
  import { getFundNameByFundId, getLogoSrcByFundId } from '../funds/constants';
4
5
  import { EventTrackingService } from '../services/event-tracking.service';
5
6
  import existingFundService from '../services/existing-super-choice-info.service';
@@ -80,6 +81,7 @@ export class ExistingChoice {
80
81
  (() => {
81
82
  switch (this.existingFund.type) {
82
83
  case 'Promoted Fund':
84
+ case 'Promoted Default Fund':
83
85
  return h(PromotedFundView, { id: this.existingFund.id });
84
86
  case 'Self Managed Fund':
85
87
  return h(SelfManagedFundView, null);
@@ -87,14 +89,23 @@ export class ExistingChoice {
87
89
  return h(MyOwnFundView, null);
88
90
  case 'Default Fund':
89
91
  return h(DefaultFundView, null);
92
+ default:
93
+ assertExhaustive(this.existingFund);
94
+ return h("div", null);
90
95
  }
91
96
  })(),
92
97
  h("div", { class: "sm:text-lg font-bold leading-6" }, (() => {
93
98
  switch (this.existingFund.type) {
94
99
  case 'Default Fund':
95
100
  return "Employer's default fund";
96
- default:
101
+ case 'My Own Fund':
102
+ case 'Promoted Fund':
103
+ case 'Self Managed Fund':
104
+ case 'Promoted Default Fund':
97
105
  return this.existingFund.name;
106
+ default:
107
+ assertExhaustive(this.existingFund);
108
+ return '';
98
109
  }
99
110
  })())),
100
111
  h("div", { class: "mt-6" },
@@ -5,6 +5,7 @@ import australianEthical from './promoted-fund/funds/australian-ethical';
5
5
  import australianRetirementTrust from './promoted-fund/funds/australian-retirement-trust';
6
6
  import aware from './promoted-fund/funds/aware';
7
7
  import first from './promoted-fund/funds/first';
8
+ import hestaDefault from './promoted-fund/funds/hesta-default';
8
9
  import mercerMyChoice from './promoted-fund/funds/mercermychoice';
9
10
  import slate, { slateUsi } from './promoted-fund/funds/slate';
10
11
  import spirit from './promoted-fund/funds/spirit';
@@ -18,7 +19,8 @@ const fundsById = {
18
19
  [virgin.fundId]: virgin,
19
20
  [spirit.fundId]: spirit,
20
21
  [first.fundId]: first,
21
- [mercerMyChoice.fundId]: mercerMyChoice
22
+ [mercerMyChoice.fundId]: mercerMyChoice,
23
+ [hestaDefault.fundId]: hestaDefault
22
24
  };
23
25
  export const allPromotedFunds = Object.values(fundsById);
24
26
  export const getFundByDtoPropName = (dtoPropName) => {
@@ -41,7 +41,8 @@ class PromotedFundJoinV2IFrameBuilder {
41
41
  navigationService.navigateInternally(history, SuperSelectionAppRoutes.ChoicePage);
42
42
  break;
43
43
  case 'success':
44
- if (data.memberNumber) {
44
+ if (promotedFundState.isPromotedDefault ||
45
+ (!promotedFundState.isPromotedDefault && data.memberNumber)) {
45
46
  const promotedFundId = promotedFundState.fundId;
46
47
  const fundName = getFundNameByFundId(promotedFundId);
47
48
  navigationService.navigateInternallyToStandardChoice({