@saasquatch/mint-components 2.2.0-0 → 2.2.0-10
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.
- package/dist/cjs/{ShadowViewAddon-2b3f51be.js → ShadowViewAddon-3b477e58.js} +434 -32
- package/dist/cjs/{data-6b5095f8.js → data-89ac73dd.js} +2 -1
- package/dist/cjs/{global-0f8b1267.js → global-b7b1b8fe.js} +3126 -3177
- package/dist/cjs/{index.module-42d413d9.js → index.module-f8c8495f.js} +149 -154
- package/dist/cjs/{keys-cff24974.js → keys-5a2c9ed2.js} +4 -0
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/mint-components.cjs.js +3 -3
- package/dist/cjs/{re-render-69bde9ee.js → re-render-72a0ef45.js} +1 -1
- package/dist/cjs/sqm-banking-info-form_10.cjs.entry.js +57 -320
- package/dist/cjs/{sqm-big-stat_46.cjs.entry.js → sqm-big-stat_47.cjs.entry.js} +441 -71
- package/dist/cjs/sqm-close-button.cjs.entry.js +1 -1
- package/dist/cjs/sqm-code-verification.cjs.entry.js +5 -5
- package/dist/cjs/sqm-context-router.cjs.entry.js +1 -1
- package/dist/cjs/sqm-email-verification_2.cjs.entry.js +68 -67
- package/dist/cjs/sqm-empty_4.cjs.entry.js +3 -3
- package/dist/cjs/sqm-google-sign-in.cjs.entry.js +1 -1
- package/dist/cjs/sqm-graphql-client-provider.cjs.entry.js +1 -1
- package/dist/cjs/sqm-instant-access-registration.cjs.entry.js +3 -3
- package/dist/cjs/{sqm-lead-checkbox-field-view-d90f8941.js → sqm-lead-checkbox-field-view-0af2a157.js} +1 -1
- package/dist/cjs/sqm-lead-checkbox-field.cjs.entry.js +4 -4
- package/dist/cjs/{sqm-lead-input-field-view-818d9e9a.js → sqm-lead-input-field-view-0cd7ebdb.js} +1 -1
- package/dist/cjs/sqm-lead-input-field.cjs.entry.js +4 -4
- package/dist/cjs/sqm-leaderboard-rank.cjs.entry.js +2 -2
- package/dist/cjs/sqm-logout-current-user.cjs.entry.js +1 -1
- package/dist/cjs/{sqm-navigation-sidebar-item-view-20693e59.js → sqm-navigation-sidebar-item-view-49b152dd.js} +1 -1
- package/dist/cjs/sqm-navigation-sidebar-item.cjs.entry.js +2 -2
- package/dist/cjs/sqm-navigation-sidebar.cjs.entry.js +1 -1
- package/dist/cjs/sqm-pagination_3.cjs.entry.js +3 -3
- package/dist/cjs/{sqm-partner-info-modal-view-540886b4.js → sqm-partner-info-modal-view-f6faecf5.js} +23 -12
- package/dist/cjs/sqm-password-field.cjs.entry.js +2 -2
- package/dist/cjs/sqm-popup-container.cjs.entry.js +1 -1
- package/dist/cjs/{sqm-portal-container-view-70a47420.js → sqm-portal-container-view-757f921b.js} +5 -6
- package/dist/cjs/{sqm-portal-email-verification-view-60f8e0a7.js → sqm-portal-email-verification-view-abb773a7.js} +2 -2
- package/dist/cjs/sqm-portal-email-verification.cjs.entry.js +4 -4
- package/dist/cjs/sqm-portal-forgot-password_6.cjs.entry.js +8 -8
- package/dist/cjs/sqm-portal-logout.cjs.entry.js +1 -1
- package/dist/cjs/{sqm-portal-profile-view-2bfd7afd.js → sqm-portal-profile-view-3515e1e5.js} +2 -2
- package/dist/cjs/sqm-portal-profile.cjs.entry.js +5 -5
- package/dist/cjs/sqm-portal-protected-route.cjs.entry.js +1 -1
- package/dist/cjs/{sqm-portal-registration-form-view-fd48f1d3.js → sqm-portal-registration-form-view-a45f7a52.js} +1 -1
- package/dist/cjs/{sqm-portal-reset-password-view-d90d77f9.js → sqm-portal-reset-password-view-a767b044.js} +1 -1
- package/dist/cjs/sqm-portal-reset-password.cjs.entry.js +3 -3
- package/dist/cjs/{sqm-portal-verify-email-view-b31638f8.js → sqm-portal-verify-email-view-717d0633.js} +2 -2
- package/dist/cjs/sqm-qr-code.cjs.entry.js +2 -2
- package/dist/cjs/sqm-referral-table_11.cjs.entry.js +33 -15
- package/dist/cjs/sqm-rewards-table-customer-note-cell.cjs.entry.js +1 -1
- package/dist/cjs/sqm-rewards-table-customer-note-column.cjs.entry.js +2 -2
- package/dist/cjs/sqm-rewards-table_9.cjs.entry.js +35 -14
- package/dist/cjs/sqm-stencilbook.cjs.entry.js +738 -350
- package/dist/cjs/sqm-tab.cjs.entry.js +2 -2
- package/dist/cjs/sqm-tabs.cjs.entry.js +3 -3
- package/dist/cjs/{sqm-text-span-view-8a32dd8c.js → sqm-text-span-view-b9e10f5d.js} +1 -1
- package/dist/cjs/sqm-text-span.cjs.entry.js +1 -1
- package/dist/cjs/{sqm-user-info-form-view-01bf2f41.js → sqm-user-info-form-view-0e1ddbe4.js} +6 -391
- package/dist/cjs/sqm-widget-verification-controller.cjs.entry.js +2 -2
- package/dist/cjs/{useChildElements-89bc50a9.js → useChildElements-041127d7.js} +1 -1
- package/dist/cjs/{usePayoutStatus-cf050a03.js → useIndirectTaxForm-c3c1ec56.js} +292 -1
- package/dist/cjs/{useInstantAccessRegistration-651aa95b.js → useInstantAccessRegistration-2398df36.js} +2 -2
- package/dist/cjs/{useLeadFormState-76d3b511.js → useLeadFormState-b4c2ab5b.js} +2 -2
- package/dist/cjs/{usePortalRegistrationForm-31822dc4.js → usePortalRegistrationForm-23ee2d62.js} +2 -2
- package/dist/cjs/{useReferralCodes-89c2b972.js → useReferralCodes-0f7948af.js} +1 -1
- package/dist/cjs/{useReferralTable-d3ddfd05.js → useReferralTable-6e9de0d5.js} +3 -3
- package/dist/cjs/{useRegistrationFormState-a223f597.js → useRegistrationFormState-4fe5b770.js} +1 -1
- package/dist/cjs/{useVerificationEmail-994bc32f.js → useVerificationEmail-5d19aa99.js} +1 -1
- package/dist/cjs/{utilities-096934ea.js → utilities-fcdb9504.js} +1 -1
- package/dist/cjs/utils-a3b3d05b.js +478 -0
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/sqm-big-stat/useBigStat.js +5 -6
- package/dist/collection/components/sqm-checkbox-field/sqm-checkbox-field-view.js +1 -1
- package/dist/collection/components/sqm-checkbox-field/sqm-checkbox-field.js +2 -3
- package/dist/collection/components/sqm-partner-info-modal/PartnerInfoModal.stories.js +25 -4
- package/dist/collection/components/sqm-partner-info-modal/sqm-partner-info-modal-view.js +22 -11
- package/dist/collection/components/sqm-partner-info-modal/sqm-partner-info-modal.js +40 -40
- package/dist/collection/components/sqm-partner-info-modal/usePartnerInfoModal.js +32 -40
- package/dist/collection/components/sqm-portal-container/sqm-portal-container-view.js +6 -7
- package/dist/collection/components/sqm-portal-google-login/sqm-portal-google-login.js +1 -1
- package/dist/collection/components/sqm-portal-login/sqm-portal-login.js +1 -1
- package/dist/collection/components/sqm-referral-iframe/ReferralIframe.stories.js +1 -0
- package/dist/collection/components/sqm-referral-iframe/sqm-referral-iframe-view.js +1 -1
- package/dist/collection/components/sqm-referral-iframe/sqm-referral-iframe.js +27 -1
- package/dist/collection/components/sqm-referral-table/ReferralTable.stories.js +1 -0
- package/dist/collection/components/sqm-referral-table/ReferralTableRewardsCell.stories.js +1 -0
- package/dist/collection/components/sqm-referral-table/TaxAndCashReferralTableRewardsCell.stories.js +209 -157
- package/dist/collection/components/sqm-referral-table/cells/sqm-referral-table-rewards-cell.js +30 -10
- package/dist/collection/components/sqm-rewards-table/RewardsTableCell.stories.js +1 -0
- package/dist/collection/components/sqm-rewards-table/TaxAndCashRewardsTableCell.stories.js +223 -148
- package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-status-cell.js +30 -10
- package/dist/collection/components/sqm-rewards-table/useRewardsTable.js +1 -0
- package/dist/collection/components/sqm-share-code/sqm-share-code.js +0 -1
- package/dist/collection/components/sqm-share-link/ShareLink.stories.js +136 -11
- package/dist/collection/components/sqm-share-link/UseShareLink.stories.js +14 -5
- package/dist/collection/components/sqm-share-link/sqm-share-link-view.js +192 -0
- package/dist/collection/components/sqm-share-link/sqm-share-link.js +935 -48
- package/dist/collection/components/sqm-share-link/useShareLink.js +227 -14
- package/dist/collection/components/sqm-stencilbook/sqm-stencilbook.js +2 -0
- package/dist/collection/components/sqm-text-span/sqm-text-span-view.js +1 -1
- package/dist/collection/components/sqm-user-attribute/UserAttribute.stories.js +43 -0
- package/dist/collection/components/sqm-user-attribute/sqm-user-attribute-view.js +19 -0
- package/dist/collection/components/sqm-user-attribute/sqm-user-attribute.js +175 -0
- package/dist/collection/components/sqm-user-attribute/useUserAttribute.js +30 -0
- package/dist/collection/components/sqm-widget-verification/keys.js +2 -0
- package/dist/collection/components/sqm-widget-verification/sqm-email-verification/useEmailVerification.js +19 -9
- package/dist/collection/components/sqm-widget-verification/sqm-widget-verification.js +0 -59
- package/dist/collection/components/sqm-widget-verification/useWidgetVerification.js +25 -8
- package/dist/collection/components/tax-and-cash/data.js +1 -0
- package/dist/collection/components/tax-and-cash/sqm-banking-info-form/formDefinitions.js +19 -1
- package/dist/collection/components/tax-and-cash/sqm-banking-info-form/sqm-banking-info-form.js +50 -0
- package/dist/collection/components/tax-and-cash/sqm-indirect-tax-form/sqm-indirect-tax-form.js +4 -4
- package/dist/collection/components/tax-and-cash/sqm-indirect-tax-form/useIndirectTaxForm.js +5 -4
- package/dist/collection/components/tax-and-cash/sqm-payout-details-card/sqm-payout-details-card.js +2 -2
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash/sqm-tax-and-cash.js +65 -36
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash/useTaxAndCash.js +49 -4
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard.js +2 -2
- package/dist/collection/components/tax-and-cash/sqm-user-info-form/UserInfoFormView.stories.js +0 -1
- package/dist/collection/components/tax-and-cash/sqm-user-info-form/sqm-user-info-form-view.js +2 -2
- package/dist/collection/components/tax-and-cash/sqm-user-info-form/sqm-user-info-form.js +0 -25
- package/dist/collection/components/tax-and-cash/sqm-user-info-form/useUserInfoForm.js +5 -6
- package/dist/esm/{ShadowViewAddon-78b791d2.js → ShadowViewAddon-e115fa1c.js} +435 -34
- package/dist/esm/{data-33c16dff.js → data-8698cbc6.js} +2 -1
- package/dist/esm/{global-39f55ec2.js → global-75e96214.js} +3126 -3177
- package/dist/esm/{index.module-cede12c6.js → index.module-02cb914c.js} +150 -153
- package/dist/esm/keys-1054056a.js +8 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/mint-components.js +3 -3
- package/dist/esm/{re-render-7a0c7976.js → re-render-bf46ba54.js} +1 -1
- package/dist/esm/sqm-banking-info-form_10.entry.js +47 -310
- package/dist/esm/{sqm-big-stat_46.entry.js → sqm-big-stat_47.entry.js} +440 -71
- package/dist/esm/sqm-close-button.entry.js +1 -1
- package/dist/esm/sqm-code-verification.entry.js +5 -5
- package/dist/esm/sqm-context-router.entry.js +1 -1
- package/dist/esm/sqm-email-verification_2.entry.js +68 -67
- package/dist/esm/sqm-empty_4.entry.js +3 -3
- package/dist/esm/sqm-google-sign-in.entry.js +1 -1
- package/dist/esm/sqm-graphql-client-provider.entry.js +1 -1
- package/dist/esm/sqm-instant-access-registration.entry.js +3 -3
- package/dist/esm/{sqm-lead-checkbox-field-view-7cee2b4e.js → sqm-lead-checkbox-field-view-bfafee56.js} +1 -1
- package/dist/esm/sqm-lead-checkbox-field.entry.js +4 -4
- package/dist/esm/{sqm-lead-input-field-view-11a4f9a9.js → sqm-lead-input-field-view-b945edf4.js} +1 -1
- package/dist/esm/sqm-lead-input-field.entry.js +4 -4
- package/dist/esm/sqm-leaderboard-rank.entry.js +2 -2
- package/dist/esm/sqm-logout-current-user.entry.js +1 -1
- package/dist/esm/{sqm-navigation-sidebar-item-view-48e7e0d3.js → sqm-navigation-sidebar-item-view-8d98fcf3.js} +1 -1
- package/dist/esm/sqm-navigation-sidebar-item.entry.js +2 -2
- package/dist/esm/sqm-navigation-sidebar.entry.js +1 -1
- package/dist/esm/sqm-pagination_3.entry.js +3 -3
- package/dist/esm/{sqm-partner-info-modal-view-eec8606e.js → sqm-partner-info-modal-view-d6f3a215.js} +23 -12
- package/dist/esm/sqm-password-field.entry.js +2 -2
- package/dist/esm/sqm-popup-container.entry.js +1 -1
- package/dist/esm/{sqm-portal-container-view-a8c708cd.js → sqm-portal-container-view-200c9df8.js} +6 -7
- package/dist/esm/{sqm-portal-email-verification-view-33f5c108.js → sqm-portal-email-verification-view-fde1eb35.js} +2 -2
- package/dist/esm/sqm-portal-email-verification.entry.js +4 -4
- package/dist/esm/sqm-portal-forgot-password_6.entry.js +8 -8
- package/dist/esm/sqm-portal-logout.entry.js +1 -1
- package/dist/esm/{sqm-portal-profile-view-88fd6a93.js → sqm-portal-profile-view-2018590a.js} +2 -2
- package/dist/esm/sqm-portal-profile.entry.js +5 -5
- package/dist/esm/sqm-portal-protected-route.entry.js +1 -1
- package/dist/esm/{sqm-portal-registration-form-view-9bf30b56.js → sqm-portal-registration-form-view-79265df5.js} +1 -1
- package/dist/esm/{sqm-portal-reset-password-view-f8d1689c.js → sqm-portal-reset-password-view-f84c04cf.js} +1 -1
- package/dist/esm/sqm-portal-reset-password.entry.js +3 -3
- package/dist/esm/{sqm-portal-verify-email-view-0b70c1b1.js → sqm-portal-verify-email-view-590f964b.js} +2 -2
- package/dist/esm/sqm-qr-code.entry.js +2 -2
- package/dist/esm/sqm-referral-table_11.entry.js +33 -15
- package/dist/esm/sqm-rewards-table-customer-note-cell.entry.js +1 -1
- package/dist/esm/sqm-rewards-table-customer-note-column.entry.js +2 -2
- package/dist/esm/sqm-rewards-table_9.entry.js +35 -14
- package/dist/esm/sqm-stencilbook.entry.js +736 -348
- package/dist/esm/sqm-tab.entry.js +2 -2
- package/dist/esm/sqm-tabs.entry.js +3 -3
- package/dist/esm/{sqm-text-span-view-4db9e33f.js → sqm-text-span-view-72f43dff.js} +1 -1
- package/dist/esm/sqm-text-span.entry.js +1 -1
- package/dist/esm/{sqm-user-info-form-view-365cef98.js → sqm-user-info-form-view-e1ba6009.js} +6 -388
- package/dist/esm/sqm-widget-verification-controller.entry.js +2 -2
- package/dist/esm/{useChildElements-c26d7347.js → useChildElements-06937df7.js} +1 -1
- package/dist/esm/{usePayoutStatus-fa504d49.js → useIndirectTaxForm-b2888ea5.js} +291 -3
- package/dist/esm/{useInstantAccessRegistration-e2392f42.js → useInstantAccessRegistration-69c9ffe0.js} +2 -2
- package/dist/esm/{useLeadFormState-9099c8d4.js → useLeadFormState-332b2796.js} +2 -2
- package/dist/esm/{usePortalRegistrationForm-5844032a.js → usePortalRegistrationForm-3a1f36a2.js} +2 -2
- package/dist/esm/{useReferralCodes-3cde72d4.js → useReferralCodes-25f8b792.js} +1 -1
- package/dist/esm/{useReferralTable-35e6d4c1.js → useReferralTable-03d32c6f.js} +3 -3
- package/dist/esm/{useRegistrationFormState-1813bdef.js → useRegistrationFormState-aa44cfff.js} +1 -1
- package/dist/esm/{useVerificationEmail-cb3d51e3.js → useVerificationEmail-9f2c0bab.js} +1 -1
- package/dist/esm/{utilities-c9e730ed.js → utilities-cbd8f2eb.js} +1 -1
- package/dist/esm/utils-4f5cd04c.js +467 -0
- package/dist/esm-es5/ShadowViewAddon-e115fa1c.js +1 -0
- package/dist/esm-es5/data-8698cbc6.js +1 -0
- package/dist/esm-es5/global-75e96214.js +271 -0
- package/dist/esm-es5/index.module-02cb914c.js +1 -0
- package/dist/esm-es5/keys-1054056a.js +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/mint-components.js +1 -1
- package/dist/esm-es5/{re-render-7a0c7976.js → re-render-bf46ba54.js} +1 -1
- package/dist/esm-es5/sqm-banking-info-form_10.entry.js +1 -1
- package/dist/esm-es5/sqm-big-stat_47.entry.js +1 -0
- package/dist/esm-es5/sqm-close-button.entry.js +1 -1
- package/dist/esm-es5/sqm-code-verification.entry.js +1 -1
- package/dist/esm-es5/sqm-context-router.entry.js +1 -1
- package/dist/esm-es5/sqm-email-verification_2.entry.js +1 -1
- package/dist/esm-es5/sqm-empty_4.entry.js +1 -1
- package/dist/esm-es5/sqm-google-sign-in.entry.js +1 -1
- package/dist/esm-es5/sqm-graphql-client-provider.entry.js +1 -1
- package/dist/esm-es5/sqm-instant-access-registration.entry.js +1 -1
- package/dist/esm-es5/{sqm-lead-checkbox-field-view-7cee2b4e.js → sqm-lead-checkbox-field-view-bfafee56.js} +1 -1
- package/dist/esm-es5/sqm-lead-checkbox-field.entry.js +1 -1
- package/dist/esm-es5/{sqm-lead-input-field-view-11a4f9a9.js → sqm-lead-input-field-view-b945edf4.js} +1 -1
- package/dist/esm-es5/sqm-lead-input-field.entry.js +1 -1
- package/dist/esm-es5/sqm-leaderboard-rank.entry.js +1 -1
- package/dist/esm-es5/sqm-logout-current-user.entry.js +1 -1
- package/dist/esm-es5/{sqm-navigation-sidebar-item-view-48e7e0d3.js → sqm-navigation-sidebar-item-view-8d98fcf3.js} +1 -1
- package/dist/esm-es5/sqm-navigation-sidebar-item.entry.js +1 -1
- package/dist/esm-es5/sqm-navigation-sidebar.entry.js +1 -1
- package/dist/esm-es5/sqm-pagination_3.entry.js +1 -1
- package/dist/esm-es5/sqm-partner-info-modal-view-d6f3a215.js +1 -0
- package/dist/esm-es5/sqm-password-field.entry.js +1 -1
- package/dist/esm-es5/sqm-popup-container.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-container-view-200c9df8.js +1 -0
- package/dist/esm-es5/{sqm-portal-email-verification-view-33f5c108.js → sqm-portal-email-verification-view-fde1eb35.js} +1 -1
- package/dist/esm-es5/sqm-portal-email-verification.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-forgot-password_6.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-logout.entry.js +1 -1
- package/dist/esm-es5/{sqm-portal-profile-view-88fd6a93.js → sqm-portal-profile-view-2018590a.js} +1 -1
- package/dist/esm-es5/sqm-portal-profile.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-protected-route.entry.js +1 -1
- package/dist/esm-es5/{sqm-portal-registration-form-view-9bf30b56.js → sqm-portal-registration-form-view-79265df5.js} +1 -1
- package/dist/esm-es5/{sqm-portal-reset-password-view-f8d1689c.js → sqm-portal-reset-password-view-f84c04cf.js} +1 -1
- package/dist/esm-es5/sqm-portal-reset-password.entry.js +1 -1
- package/dist/esm-es5/{sqm-portal-verify-email-view-0b70c1b1.js → sqm-portal-verify-email-view-590f964b.js} +1 -1
- package/dist/esm-es5/sqm-qr-code.entry.js +1 -1
- package/dist/esm-es5/sqm-referral-table_11.entry.js +1 -1
- package/dist/esm-es5/sqm-rewards-table-customer-note-cell.entry.js +1 -1
- package/dist/esm-es5/sqm-rewards-table-customer-note-column.entry.js +1 -1
- package/dist/esm-es5/sqm-rewards-table_9.entry.js +1 -1
- package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
- package/dist/esm-es5/sqm-tab.entry.js +1 -1
- package/dist/esm-es5/sqm-tabs.entry.js +1 -1
- package/dist/esm-es5/{sqm-text-span-view-4db9e33f.js → sqm-text-span-view-72f43dff.js} +1 -1
- package/dist/esm-es5/sqm-text-span.entry.js +1 -1
- package/dist/esm-es5/sqm-user-info-form-view-e1ba6009.js +1 -0
- package/dist/esm-es5/sqm-widget-verification-controller.entry.js +1 -1
- package/dist/esm-es5/{useChildElements-c26d7347.js → useChildElements-06937df7.js} +1 -1
- package/dist/esm-es5/useIndirectTaxForm-b2888ea5.js +6 -0
- package/dist/esm-es5/{useInstantAccessRegistration-e2392f42.js → useInstantAccessRegistration-69c9ffe0.js} +1 -1
- package/dist/esm-es5/{useLeadFormState-9099c8d4.js → useLeadFormState-332b2796.js} +1 -1
- package/dist/esm-es5/{usePortalRegistrationForm-5844032a.js → usePortalRegistrationForm-3a1f36a2.js} +1 -1
- package/dist/esm-es5/{useReferralCodes-3cde72d4.js → useReferralCodes-25f8b792.js} +1 -1
- package/dist/esm-es5/{useReferralTable-35e6d4c1.js → useReferralTable-03d32c6f.js} +1 -1
- package/dist/esm-es5/{useRegistrationFormState-1813bdef.js → useRegistrationFormState-aa44cfff.js} +1 -1
- package/dist/esm-es5/{useVerificationEmail-cb3d51e3.js → useVerificationEmail-9f2c0bab.js} +1 -1
- package/dist/esm-es5/{utilities-c9e730ed.js → utilities-cbd8f2eb.js} +1 -1
- package/dist/esm-es5/utils-4f5cd04c.js +1 -0
- package/dist/mint-components/mint-components.esm.js +1 -1
- package/dist/mint-components/mint-components.js +1 -1
- package/dist/mint-components/{p-52748a87.system.entry.js → p-025ddad2.system.entry.js} +1 -1
- package/dist/mint-components/{p-5c9d030a.system.entry.js → p-02c0f88e.system.entry.js} +1 -1
- package/dist/mint-components/{p-140e6a15.system.js → p-02e2b13b.system.js} +1 -1
- package/dist/mint-components/{p-095b7128.js → p-0766438e.js} +1 -1
- package/dist/mint-components/{p-86381dc7.system.js → p-0815b973.system.js} +1 -1
- package/dist/mint-components/{p-37658fec.entry.js → p-092c2606.entry.js} +1 -1
- package/dist/mint-components/{p-6a4496b3.system.entry.js → p-099ce3d5.system.entry.js} +1 -1
- package/dist/mint-components/p-0a6489fa.entry.js +1 -0
- package/dist/mint-components/p-0afa6148.js +1 -0
- package/dist/mint-components/p-0b1e90fe.system.js +1 -0
- package/dist/mint-components/{p-3756d0d1.system.entry.js → p-0b32e1d4.system.entry.js} +1 -1
- package/dist/mint-components/{p-9b33e2a7.system.js → p-1317cc92.system.js} +1 -1
- package/dist/mint-components/{p-45475cf9.system.entry.js → p-13bb56a8.system.entry.js} +1 -1
- package/dist/mint-components/{p-731c4d33.entry.js → p-13d1b10d.entry.js} +1 -1
- package/dist/mint-components/{p-438f6702.js → p-13d8ecad.js} +152 -152
- package/dist/mint-components/{p-9c1b0c8b.entry.js → p-14183edc.entry.js} +1 -1
- package/dist/mint-components/{p-3461a8cb.entry.js → p-1599a178.entry.js} +1 -1
- package/dist/mint-components/p-1b0326d1.entry.js +1 -0
- package/dist/mint-components/p-1d398dbc.entry.js +11 -0
- package/dist/mint-components/p-1d86895f.system.js +1 -0
- package/dist/mint-components/p-1e6a2945.js +1 -0
- package/dist/mint-components/p-1efb42e2.js +499 -0
- package/dist/mint-components/p-1f387c7b.system.js +1 -0
- package/dist/mint-components/{p-21e7079a.system.entry.js → p-209157a9.system.entry.js} +1 -1
- package/dist/mint-components/p-2190dc73.system.js +1 -0
- package/dist/mint-components/{p-60085f20.system.entry.js → p-24f1d342.system.entry.js} +1 -1
- package/dist/mint-components/{p-88c9cc1b.entry.js → p-27daf264.entry.js} +1 -1
- package/dist/mint-components/{p-991f60fc.entry.js → p-29bc5f50.entry.js} +2 -2
- package/dist/mint-components/p-2d3f7b76.system.entry.js +1 -0
- package/dist/mint-components/p-2ed13619.entry.js +1 -0
- package/dist/mint-components/{p-62e1c8b2.system.entry.js → p-30cfe3e3.system.entry.js} +1 -1
- package/dist/mint-components/{p-6b1a6b0c.system.js → p-31815fb6.system.js} +1 -1
- package/dist/mint-components/{p-9bd53e4d.system.entry.js → p-3354cc75.system.entry.js} +1 -1
- package/dist/mint-components/p-335a5736.entry.js +1 -0
- package/dist/mint-components/{p-dbdb2a46.system.entry.js → p-33ca28ba.system.entry.js} +1 -1
- package/dist/mint-components/{p-55d4caaa.entry.js → p-3596e241.entry.js} +7 -13
- package/dist/mint-components/{p-28e0062c.system.js → p-376c7608.system.js} +1 -1
- package/dist/mint-components/p-37e24621.system.entry.js +1 -0
- package/dist/mint-components/{p-0c43b6ff.entry.js → p-38d04e4b.entry.js} +1 -1
- package/dist/mint-components/{p-857a2d77.js → p-3a41b39c.js} +1 -1
- package/dist/mint-components/{p-f972e5c9.entry.js → p-3bbc0db2.entry.js} +1 -1
- package/dist/mint-components/{p-9e43f1eb.entry.js → p-432a44de.entry.js} +3 -2
- package/dist/mint-components/{p-3c88d2ed.js → p-45230a44.js} +2 -2
- package/dist/mint-components/p-4691e9d5.system.js +1 -0
- package/dist/mint-components/{p-1d49dddc.entry.js → p-4d73a616.entry.js} +1 -1
- package/dist/mint-components/{p-160828b4.entry.js → p-4e3db52b.entry.js} +1 -1
- package/dist/mint-components/{p-bcadd021.js → p-4eaa3eb7.js} +1 -1
- package/dist/mint-components/{p-62212b9a.entry.js → p-4eadbd5b.entry.js} +1 -1
- package/dist/mint-components/p-4f9dc974.js +1 -0
- package/dist/mint-components/{p-247cfbdc.system.entry.js → p-51ae6716.system.entry.js} +1 -1
- package/dist/mint-components/p-56b33268.system.entry.js +1 -0
- package/dist/mint-components/p-58c24352.system.js +6 -0
- package/dist/mint-components/{p-8ecc8875.js → p-5c52100b.js} +2 -1
- package/dist/mint-components/{p-7547180f.system.js → p-5fdf0286.system.js} +1 -1
- package/dist/mint-components/{p-f11d29fd.entry.js → p-60b1f3d9.entry.js} +1 -1
- package/dist/mint-components/{p-95aaf35a.system.entry.js → p-623a0a0b.system.entry.js} +1 -1
- package/dist/mint-components/{p-f368f04a.system.js → p-686dd5eb.system.js} +1 -1
- package/dist/mint-components/{p-16deb1a9.system.entry.js → p-6b4e5d94.system.entry.js} +1 -1
- package/dist/mint-components/{p-c8e45671.system.entry.js → p-6f6c3ac6.system.entry.js} +1 -1
- package/dist/mint-components/{p-379cb9f1.system.js → p-7562cd98.system.js} +1 -1
- package/dist/mint-components/{p-00463c83.system.js → p-7628e56f.system.js} +1 -1
- package/dist/mint-components/{p-f4a57aed.entry.js → p-78e6dc8d.entry.js} +1 -1
- package/dist/mint-components/{p-3c333076.js → p-7a091fa7.js} +1 -1
- package/dist/mint-components/{p-9d6984e7.entry.js → p-7cbdf341.entry.js} +2 -2
- package/dist/mint-components/p-7d2d9ef9.system.js +1 -0
- package/dist/mint-components/{p-b5fed7c6.entry.js → p-7ea3f49c.entry.js} +1 -1
- package/dist/mint-components/{p-fb4ab5ba.system.entry.js → p-81bc6dca.system.entry.js} +1 -1
- package/dist/mint-components/{p-19293c16.entry.js → p-84495fb8.entry.js} +1 -1
- package/dist/mint-components/{p-691d34f1.system.entry.js → p-86d20b47.system.entry.js} +1 -1
- package/dist/mint-components/p-87f86492.js +1 -0
- package/dist/mint-components/{p-71561bb2.system.entry.js → p-8899ff38.system.entry.js} +1 -1
- package/dist/mint-components/p-8a6531d2.js +1 -0
- package/dist/mint-components/p-8ae8968c.js +1 -0
- package/dist/mint-components/p-8e148cb0.system.js +271 -0
- package/dist/mint-components/p-8f15bf17.entry.js +1 -0
- package/dist/mint-components/{p-1b0cbbae.entry.js → p-921eb024.entry.js} +1 -1
- package/dist/mint-components/{p-2f4d8ab8.system.entry.js → p-925aa740.system.entry.js} +1 -1
- package/dist/mint-components/p-99eecdcb.system.entry.js +1 -0
- package/dist/mint-components/{p-b5c0bad5.system.entry.js → p-9a15cd5a.system.entry.js} +1 -1
- package/dist/mint-components/p-9c1f5317.system.js +1 -0
- package/dist/mint-components/p-9f48640d.js +1 -0
- package/dist/mint-components/p-a38eece5.system.entry.js +1 -0
- package/dist/mint-components/{p-df88dcaa.system.js → p-a4825ec2.system.js} +1 -1
- package/dist/mint-components/p-a49d9288.entry.js +1 -0
- package/dist/mint-components/{p-357040e6.system.entry.js → p-ab59c5eb.system.entry.js} +1 -1
- package/dist/mint-components/{p-8474aa63.js → p-abd717d4.js} +1 -1
- package/dist/mint-components/p-abe9f5b1.js +99 -0
- package/dist/mint-components/p-ae2f610e.system.js +1 -0
- package/dist/mint-components/p-b222bace.system.entry.js +1 -0
- package/dist/mint-components/{p-d355336b.system.js → p-b2ad3fca.system.js} +1 -1
- package/dist/mint-components/{p-5dc9e95b.entry.js → p-b3309d9b.entry.js} +1 -1
- package/dist/mint-components/{p-45e2a83a.js → p-b3ad957c.js} +1 -1
- package/dist/mint-components/p-b419f9ac.entry.js +299 -0
- package/dist/mint-components/{p-567a5ded.js → p-b871d158.js} +1 -1
- package/dist/mint-components/p-b96ed8eb.js +1 -0
- package/dist/mint-components/p-badf28bb.system.js +1 -0
- package/dist/mint-components/{p-32d078a3.js → p-bb0b5e4b.js} +1 -1
- package/dist/mint-components/{p-608da224.entry.js → p-bcfdb510.entry.js} +1 -1
- package/dist/mint-components/p-be6a0dee.system.js +1 -0
- package/dist/mint-components/{p-a7f72a66.js → p-bee4af5d.js} +1 -1
- package/dist/mint-components/{p-092db51a.js → p-bf9ab2d3.js} +1 -1
- package/dist/mint-components/{p-3c555674.js → p-c0a85e22.js} +1 -1
- package/dist/mint-components/{p-037c1a4f.system.entry.js → p-c0f8f977.system.entry.js} +1 -1
- package/dist/mint-components/p-c41d536d.entry.js +1 -0
- package/dist/mint-components/{p-77117f6c.system.js → p-c66e5217.system.js} +1 -1
- package/dist/mint-components/{p-50d959bd.js → p-c813ec64.js} +1 -1
- package/dist/mint-components/p-cdabd9de.system.js +1 -0
- package/dist/mint-components/p-cfc35705.system.entry.js +1 -0
- package/dist/mint-components/{p-8f9c1387.js → p-cfea215d.js} +1 -1
- package/dist/mint-components/p-d08408b3.entry.js +1 -0
- package/dist/mint-components/{p-a86ce218.system.js → p-d284ae70.system.js} +1 -1
- package/dist/mint-components/{p-998c989a.system.entry.js → p-d34564f8.system.entry.js} +1 -1
- package/dist/mint-components/{p-e1292288.system.entry.js → p-d3b1ab20.system.entry.js} +1 -1
- package/dist/mint-components/p-db6bf7cf.system.entry.js +1 -0
- package/dist/mint-components/{p-b451970a.system.entry.js → p-df897432.system.entry.js} +1 -1
- package/dist/mint-components/p-e30abc44.js +1 -0
- package/dist/mint-components/{p-3218bb1d.entry.js → p-e506bf7f.entry.js} +1 -1
- package/dist/mint-components/{p-e4dbca9a.system.js → p-e651593c.system.js} +1 -1
- package/dist/mint-components/{p-6194855b.system.entry.js → p-e6de31a7.system.entry.js} +1 -1
- package/dist/mint-components/{p-4723526d.js → p-e8e7af06.js} +1 -1
- package/dist/mint-components/{p-36395228.system.js → p-e920c95c.system.js} +1 -1
- package/dist/mint-components/{p-0d75a207.js → p-eae44b42.js} +1 -1
- package/dist/mint-components/p-ebc519bc.system.js +1 -0
- package/dist/mint-components/{p-886fb141.entry.js → p-ef32fa8f.entry.js} +1 -1
- package/dist/mint-components/p-f32050f6.system.js +1 -0
- package/dist/mint-components/{p-d5a1c979.system.entry.js → p-f6de2e5c.system.entry.js} +1 -1
- package/dist/mint-components/{p-7a08d288.system.entry.js → p-fa85ea51.system.entry.js} +1 -1
- package/dist/mint-components/p-ff013776.entry.js +9 -0
- package/dist/mint-components/p-ffcebe78.entry.js +83 -0
- package/dist/types/components/sqm-checkbox-field/sqm-checkbox-field.d.ts +1 -1
- package/dist/types/components/sqm-partner-info-modal/PartnerInfoModal.stories.d.ts +3 -0
- package/dist/types/components/sqm-partner-info-modal/sqm-partner-info-modal-view.d.ts +1 -2
- package/dist/types/components/sqm-partner-info-modal/sqm-partner-info-modal.d.ts +8 -7
- package/dist/types/components/sqm-referral-iframe/sqm-referral-iframe-view.d.ts +1 -0
- package/dist/types/components/sqm-referral-iframe/sqm-referral-iframe.d.ts +5 -0
- package/dist/types/components/sqm-referral-table/TaxAndCashReferralTableRewardsCell.stories.d.ts +16 -0
- package/dist/types/components/sqm-rewards-table/TaxAndCashRewardsTableCell.stories.d.ts +18 -7
- package/dist/types/components/sqm-share-link/ShareLink.stories.d.ts +9 -0
- package/dist/types/components/sqm-share-link/UseShareLink.stories.d.ts +6 -0
- package/dist/types/components/sqm-share-link/sqm-share-link-view.d.ts +41 -0
- package/dist/types/components/sqm-share-link/sqm-share-link.d.ts +195 -2
- package/dist/types/components/sqm-share-link/useShareLink.d.ts +33 -4
- package/dist/types/components/sqm-user-attribute/UserAttribute.stories.d.ts +11 -0
- package/dist/types/components/sqm-user-attribute/sqm-user-attribute-view.d.ts +8 -0
- package/dist/types/components/sqm-user-attribute/sqm-user-attribute.d.ts +45 -0
- package/dist/types/components/sqm-user-attribute/useUserAttribute.d.ts +3 -0
- package/dist/types/components/sqm-widget-verification/keys.d.ts +2 -0
- package/dist/types/components/sqm-widget-verification/sqm-widget-verification.d.ts +0 -10
- package/dist/types/components/tax-and-cash/data.d.ts +2 -0
- package/dist/types/components/tax-and-cash/sqm-banking-info-form/formDefinitions.d.ts +6 -0
- package/dist/types/components/tax-and-cash/sqm-banking-info-form/sqm-banking-info-form.d.ts +8 -0
- package/dist/types/components/tax-and-cash/sqm-banking-info-form/useBankingInfoForm.d.ts +2 -0
- package/dist/types/components/tax-and-cash/sqm-tax-and-cash/sqm-tax-and-cash.d.ts +10 -5
- package/dist/types/components/tax-and-cash/sqm-user-info-form/sqm-user-info-form-view.d.ts +0 -1
- package/dist/types/components/tax-and-cash/sqm-user-info-form/sqm-user-info-form.d.ts +0 -4
- package/dist/types/components.d.ts +487 -54
- package/dist/types/saasquatch.d.ts +1 -0
- package/docs/docs.docx +0 -0
- package/docs/raisins.json +1 -1
- package/docs/stats.json +122783 -0
- package/grapesjs/grapesjs.js +1 -1
- package/package.json +2 -2
- package/readme.md +60 -1
- package/dist/cjs/utils-a8e0bd9b.js +0 -93
- package/dist/esm/keys-db1897ae.js +0 -6
- package/dist/esm/utils-8267d3d8.js +0 -85
- package/dist/esm-es5/ShadowViewAddon-78b791d2.js +0 -1
- package/dist/esm-es5/data-33c16dff.js +0 -1
- package/dist/esm-es5/global-39f55ec2.js +0 -285
- package/dist/esm-es5/index.module-cede12c6.js +0 -1
- package/dist/esm-es5/keys-db1897ae.js +0 -1
- package/dist/esm-es5/sqm-big-stat_46.entry.js +0 -1
- package/dist/esm-es5/sqm-partner-info-modal-view-eec8606e.js +0 -1
- package/dist/esm-es5/sqm-portal-container-view-a8c708cd.js +0 -1
- package/dist/esm-es5/sqm-user-info-form-view-365cef98.js +0 -1
- package/dist/esm-es5/usePayoutStatus-fa504d49.js +0 -6
- package/dist/esm-es5/utils-8267d3d8.js +0 -1
- package/dist/mint-components/p-038d0b8f.entry.js +0 -133
- package/dist/mint-components/p-0553e659.js +0 -463
- package/dist/mint-components/p-0fec43e8.system.js +0 -1
- package/dist/mint-components/p-1c413a06.system.js +0 -1
- package/dist/mint-components/p-28fe7357.system.entry.js +0 -1
- package/dist/mint-components/p-2d3a12f2.entry.js +0 -11
- package/dist/mint-components/p-3181e54a.entry.js +0 -1
- package/dist/mint-components/p-370e0d75.js +0 -1
- package/dist/mint-components/p-38dc2f60.entry.js +0 -1
- package/dist/mint-components/p-39840341.js +0 -1
- package/dist/mint-components/p-4d009702.system.entry.js +0 -1
- package/dist/mint-components/p-52eca331.js +0 -1
- package/dist/mint-components/p-55627a5c.entry.js +0 -1
- package/dist/mint-components/p-574a4089.system.js +0 -1
- package/dist/mint-components/p-5e26014d.system.js +0 -1
- package/dist/mint-components/p-63c299f1.system.js +0 -1
- package/dist/mint-components/p-64041ee1.entry.js +0 -291
- package/dist/mint-components/p-64f56cc9.system.js +0 -285
- package/dist/mint-components/p-70e34ae1.system.js +0 -6
- package/dist/mint-components/p-7d5956ec.system.entry.js +0 -1
- package/dist/mint-components/p-7e36a1ff.js +0 -1
- package/dist/mint-components/p-86a70151.entry.js +0 -1
- package/dist/mint-components/p-8b258a3e.system.js +0 -1
- package/dist/mint-components/p-91369a5f.js +0 -1
- package/dist/mint-components/p-96e4e6a4.entry.js +0 -1
- package/dist/mint-components/p-996eb820.entry.js +0 -1
- package/dist/mint-components/p-a0986077.system.entry.js +0 -1
- package/dist/mint-components/p-a2db4345.system.js +0 -1
- package/dist/mint-components/p-a8891ebd.js +0 -1
- package/dist/mint-components/p-a8ecdc44.system.js +0 -1
- package/dist/mint-components/p-b1b8e629.system.js +0 -1
- package/dist/mint-components/p-b2a99637.system.js +0 -1
- package/dist/mint-components/p-b2bde2f5.entry.js +0 -1
- package/dist/mint-components/p-b699f76e.system.js +0 -1
- package/dist/mint-components/p-b6a1e2ac.js +0 -1
- package/dist/mint-components/p-c7535e70.system.entry.js +0 -1
- package/dist/mint-components/p-c84a2512.system.js +0 -1
- package/dist/mint-components/p-ce11858c.js +0 -1
- package/dist/mint-components/p-d01949f7.system.entry.js +0 -1
- package/dist/mint-components/p-d20188db.js +0 -1
- package/dist/mint-components/p-d273eb05.entry.js +0 -9
- package/dist/mint-components/p-d6714617.entry.js +0 -1
- package/dist/mint-components/p-e95402dc.js +0 -49
- package/dist/mint-components/p-e9e05970.system.entry.js +0 -1
- package/dist/mint-components/p-ea5eec69.system.entry.js +0 -1
- package/dist/mint-components/p-ee0f1cf1.system.js +0 -1
- package/shoelace/assets/icons/twitter-x.svg +0 -4
|
@@ -1,41 +1,41 @@
|
|
|
1
1
|
import { h, r as registerInstance, c as Host } from './index-38ad4957.js';
|
|
2
|
-
import './global-
|
|
2
|
+
import './global-75e96214.js';
|
|
3
3
|
import { a as commonjsGlobal, u as useMemo, k as useState, c as createCommonjsModule, f as useEffect, n as h$1 } from './dom-context-hooks.module-50442785.js';
|
|
4
|
-
import { j as jn,
|
|
4
|
+
import { j as jn, s as setUserIdentity, m as setProgramId, k as kn, d as dist, X as Xe } from './index.module-02cb914c.js';
|
|
5
5
|
import './cjs-bdfb4486.js';
|
|
6
6
|
import './utils-334c1e34.js';
|
|
7
7
|
import { c as createStyleSheet } from './JSS-67b5cff8.js';
|
|
8
|
-
import './useReferralCodes-
|
|
8
|
+
import './useReferralCodes-25f8b792.js';
|
|
9
9
|
import './mixins-f750863a.js';
|
|
10
10
|
import { C as CopyTextView } from './copy-text-view-87259b11.js';
|
|
11
|
-
import './sqm-text-span-view-
|
|
12
|
-
import { b as PortalRegisterView, P as PortalForgotPasswordView, a as PortalLoginView, c as PortalVerifyEmailView } from './sqm-portal-verify-email-view-
|
|
13
|
-
import { P as PortalRegistrationFormView } from './sqm-portal-registration-form-view-
|
|
11
|
+
import './sqm-text-span-view-72f43dff.js';
|
|
12
|
+
import { b as PortalRegisterView, P as PortalForgotPasswordView, a as PortalLoginView, c as PortalVerifyEmailView } from './sqm-portal-verify-email-view-590f964b.js';
|
|
13
|
+
import { P as PortalRegistrationFormView } from './sqm-portal-registration-form-view-79265df5.js';
|
|
14
14
|
import { G as GenericTableView } from './GenericTableView-8c72ac30.js';
|
|
15
|
-
import './useChildElements-
|
|
15
|
+
import './useChildElements-06937df7.js';
|
|
16
16
|
import { l as luxon } from './luxon-1be92a8e.js';
|
|
17
17
|
import { C as CloseButtonView } from './sqm-close-button-view-fd9012e7.js';
|
|
18
18
|
import './index-ffa26b43.js';
|
|
19
19
|
import './imageUrl-4775f17b.js';
|
|
20
20
|
import { E as EmailRegistrationView } from './email-registration-view-4cdb4129.js';
|
|
21
|
-
import { L as LeadCheckboxFieldView } from './sqm-lead-checkbox-field-view-
|
|
21
|
+
import { L as LeadCheckboxFieldView } from './sqm-lead-checkbox-field-view-bfafee56.js';
|
|
22
22
|
import { L as LeaderboardRankView } from './sqm-leaderboard-rank-view-7a682cc3.js';
|
|
23
23
|
import { L as LogoutCurrentUserView } from './sqm-logout-current-user-view-376c1bf6.js';
|
|
24
24
|
import { N as NavigationSidebarView } from './sqm-navigation-sidebar-view-2b66457a.js';
|
|
25
|
-
import { N as NavigationSidebarItemView } from './sqm-navigation-sidebar-item-view-
|
|
26
|
-
import { P as PortalEmailVerificationView } from './sqm-portal-email-verification-view-
|
|
27
|
-
import { P as PortalProfileView } from './sqm-portal-profile-view-
|
|
28
|
-
import './utilities-
|
|
29
|
-
import { P as PortalResetPasswordView } from './sqm-portal-reset-password-view-
|
|
25
|
+
import { N as NavigationSidebarItemView } from './sqm-navigation-sidebar-item-view-8d98fcf3.js';
|
|
26
|
+
import { P as PortalEmailVerificationView } from './sqm-portal-email-verification-view-fde1eb35.js';
|
|
27
|
+
import { P as PortalProfileView } from './sqm-portal-profile-view-2018590a.js';
|
|
28
|
+
import './utilities-cbd8f2eb.js';
|
|
29
|
+
import { P as PortalResetPasswordView } from './sqm-portal-reset-password-view-f84c04cf.js';
|
|
30
30
|
import './ErrorView-74cb3af8.js';
|
|
31
31
|
import { Q as QrCodeView } from './sqm-qr-code-view-ce476721.js';
|
|
32
|
-
import { S as StatContainerView, B as BigStatView, a as ShareButtonView, P as PortalChangePasswordView, b as PoweredByImg$1, c as BaseRegistrationFormView, u as useDemoBigStat, T as TaskCardView, C as CardFeedView, d as CheckboxFieldView, e as CouponCodeView, D as DropdownFieldView, E as EditProfileView, L as LeaderboardView, H as HeroView, I as InputFieldView, N as NameFieldsView, f as ChangeMarktingView, g as PortalFooterView, h as PortalFrameView, R as ReferralIframeView, i as RewardExchangeView, r as rewardExchangeCustomErrorMsg, j as rewardExchangeLongText, k as rewardExchangeSelected, l as chooseAmountFixed, m as chooseAmountFixedNoDescription, n as chooseAmountVariable, o as chooseAmountVariableNoDescription, p as chooseAmountVariableDisabled, q as chooseAmountVariableUnavailable, s as confirmFixed, t as confirmVariable, v as redemptionError, w as queryError, x as success, y as successVariable, z as loading, A as empty$1, F as rewardExchange, G as useShareButton, J as
|
|
33
|
-
import { P as PortalContainerView, a as PortalSectionView } from './sqm-portal-container-view-
|
|
34
|
-
import { I as InvoiceTableView,
|
|
35
|
-
import { t as taxTypeToName, L as LoadingView } from './utils-
|
|
36
|
-
import { L as LeadInputFieldView } from './sqm-lead-input-field-view-
|
|
37
|
-
import './data-
|
|
38
|
-
import { P as PartnerInfoModalView } from './sqm-partner-info-modal-view-
|
|
32
|
+
import { S as StatContainerView, B as BigStatView, a as ShareButtonView, P as PortalChangePasswordView, b as PoweredByImg$1, c as BaseRegistrationFormView, u as useDemoBigStat, T as TaskCardView, C as CardFeedView, d as CheckboxFieldView, e as CouponCodeView, D as DropdownFieldView, E as EditProfileView, L as LeaderboardView, H as HeroView, I as InputFieldView, N as NameFieldsView, f as ChangeMarktingView, g as PortalFooterView, h as PortalFrameView, R as ReferralIframeView, i as RewardExchangeView, r as rewardExchangeCustomErrorMsg, j as rewardExchangeLongText, k as rewardExchangeSelected, l as chooseAmountFixed, m as chooseAmountFixedNoDescription, n as chooseAmountVariable, o as chooseAmountVariableNoDescription, p as chooseAmountVariableDisabled, q as chooseAmountVariableUnavailable, s as confirmFixed, t as confirmVariable, v as redemptionError, w as queryError, x as success, y as successVariable, z as loading, A as empty$1, F as rewardExchange, G as useShareButton, J as ShareLinkView, K as useShareLink, M as ProgressBarView, O as ProgressBar$2, Q as LeadFormView, U as LeadDropdownFieldView, V as ShadowViewAddon } from './ShadowViewAddon-e115fa1c.js';
|
|
33
|
+
import { P as PortalContainerView, a as PortalSectionView } from './sqm-portal-container-view-200c9df8.js';
|
|
34
|
+
import { I as InvoiceTableView, O as OtherRegionSlotView, U as UserInfoFormView$1 } from './sqm-user-info-form-view-e1ba6009.js';
|
|
35
|
+
import { t as taxTypeToName, L as LoadingView, I as INDIRECT_TAX_SPAIN_REGIONS, a as INDIRECT_TAX_PROVINCES } from './utils-4f5cd04c.js';
|
|
36
|
+
import { L as LeadInputFieldView } from './sqm-lead-input-field-view-b945edf4.js';
|
|
37
|
+
import './data-8698cbc6.js';
|
|
38
|
+
import { P as PartnerInfoModalView } from './sqm-partner-info-modal-view-d6f3a215.js';
|
|
39
39
|
|
|
40
40
|
/**
|
|
41
41
|
* lodash (Custom Build) <https://lodash.com/>
|
|
@@ -1793,7 +1793,7 @@ const resetPasswordTemplate = "<sqm-portal-reset-password confirm-password=\"tru
|
|
|
1793
1793
|
|
|
1794
1794
|
const resetPasswordEmailTemplate = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional //EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n\n<html\n xmlns=\"http://www.w3.org/1999/xhtml\"\n xmlns:o=\"urn:schemas-microsoft-com:office:office\"\n xmlns:v=\"urn:schemas-microsoft-com:vml\"\n>\n <head>\n <!--[if gte mso 9\n ]><xml\n ><o:OfficeDocumentSettings\n ><o:AllowPNG /><o:PixelsPerInch\n >96</o:PixelsPerInch\n ></o:OfficeDocumentSettings\n ></xml\n ><!\n [endif]-->\n <meta content=\"text/html; charset=utf-8\" http-equiv=\"Content-Type\" />\n <meta content=\"width=device-width\" name=\"viewport\" />\n <!--[if !mso]><!-->\n <meta content=\"IE=edge\" http-equiv=\"X-UA-Compatible\" />\n <!--<![endif]-->\n <title></title>\n <!--[if !mso]><!-->\n <!--<![endif]-->\n <style type=\"text/css\">\n body {\n margin: 0;\n padding: 0;\n }\n\n table,\n td,\n tr {\n vertical-align: top;\n border-collapse: collapse;\n }\n\n * {\n line-height: inherit;\n }\n\n a[x-apple-data-detectors=\"true\"] {\n color: inherit !important;\n text-decoration: none !important;\n }\n </style>\n <style id=\"media-query\" type=\"text/css\">\n @media (max-width: 520px) {\n .block-grid,\n .col {\n min-width: 320px !important;\n max-width: 100% !important;\n display: block !important;\n }\n\n .block-grid {\n width: 100% !important;\n }\n\n .col {\n width: 100% !important;\n }\n\n .col_cont {\n margin: 0 auto;\n }\n\n img.fullwidth,\n img.fullwidthOnMobile {\n max-width: 100% !important;\n }\n\n .no-stack .col {\n min-width: 0 !important;\n display: table-cell !important;\n }\n\n .no-stack.two-up .col {\n width: 50% !important;\n }\n\n .no-stack .col.num2 {\n width: 16.6% !important;\n }\n\n .no-stack .col.num3 {\n width: 25% !important;\n }\n\n .no-stack .col.num4 {\n width: 33% !important;\n }\n\n .no-stack .col.num5 {\n width: 41.6% !important;\n }\n\n .no-stack .col.num6 {\n width: 50% !important;\n }\n\n .no-stack .col.num7 {\n width: 58.3% !important;\n }\n\n .no-stack .col.num8 {\n width: 66.6% !important;\n }\n\n .no-stack .col.num9 {\n width: 75% !important;\n }\n\n .no-stack .col.num10 {\n width: 83.3% !important;\n }\n\n .video-block {\n max-width: none !important;\n }\n\n .mobile_hide {\n min-height: 0px;\n max-height: 0px;\n max-width: 0px;\n display: none;\n overflow: hidden;\n font-size: 0px;\n }\n\n .desktop_hide {\n display: block !important;\n max-height: none !important;\n }\n }\n </style>\n <style id=\"icon-media-query\" type=\"text/css\">\n @media (max-width: 520px) {\n .icons-inner {\n text-align: center;\n }\n\n .icons-inner td {\n margin: 0 auto;\n }\n }\n </style>\n </head>\n <body\n class=\"clean-body\"\n style=\"\n margin: 0;\n padding: 0;\n -webkit-text-size-adjust: 100%;\n background-color: #ffffff;\n \"\n >\n <!--[if IE]><div class=\"ie-browser\"><![endif]-->\n <table\n bgcolor=\"#FFFFFF\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n class=\"nl-container\"\n role=\"presentation\"\n style=\"\n table-layout: fixed;\n vertical-align: top;\n min-width: 320px;\n border-spacing: 0;\n border-collapse: collapse;\n mso-table-lspace: 0pt;\n mso-table-rspace: 0pt;\n background-color: #ffffff;\n width: 100%;\n \"\n valign=\"top\"\n width=\"100%\"\n >\n <tbody>\n <tr style=\"vertical-align: top\" valign=\"top\">\n <td style=\"word-break: break-word; vertical-align: top\" valign=\"top\">\n <!--[if (mso)|(IE)]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td align=\"center\" style=\"background-color:#FFFFFF\"><![endif]-->\n <div style=\"background-color: transparent\">\n <div\n class=\"block-grid\"\n style=\"\n min-width: 320px;\n max-width: 500px;\n overflow-wrap: break-word;\n word-wrap: break-word;\n word-break: break-word;\n margin: 0 auto;\n background-color: transparent;\n \"\n >\n <div\n style=\"\n border-collapse: collapse;\n display: table;\n width: 100%;\n background-color: transparent;\n \"\n >\n <!--[if (mso)|(IE)]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"background-color:transparent;\"><tr><td align=\"center\"><table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"width:500px\"><tr class=\"layout-full-width\" style=\"background-color:transparent\"><![endif]-->\n <!--[if (mso)|(IE)]><td align=\"center\" width=\"500\" style=\"background-color:transparent;width:500px; border-top: 0px solid transparent; border-left: 0px solid transparent; border-bottom: 0px solid transparent; border-right: 0px solid transparent;\" valign=\"top\"><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td style=\"padding-right: 0px; padding-left: 0px; padding-top:5px; padding-bottom:5px;\"><![endif]-->\n <div\n class=\"col num12\"\n style=\"\n min-width: 320px;\n max-width: 500px;\n display: table-cell;\n vertical-align: top;\n width: 500px;\n \"\n >\n <div class=\"col_cont\" style=\"width: 100% !important\">\n <!--[if (!mso)&(!IE)]><!-->\n <div\n style=\"\n border-top: 0px solid transparent;\n border-left: 0px solid transparent;\n border-bottom: 0px solid transparent;\n border-right: 0px solid transparent;\n padding-top: 5px;\n padding-bottom: 5px;\n padding-right: 0px;\n padding-left: 0px;\n \"\n >\n <!--<![endif]-->\n <table\n cellpadding=\"0\"\n cellspacing=\"0\"\n role=\"presentation\"\n style=\"\n table-layout: fixed;\n vertical-align: top;\n border-spacing: 0;\n border-collapse: collapse;\n mso-table-lspace: 0pt;\n mso-table-rspace: 0pt;\n \"\n valign=\"top\"\n width=\"100%\"\n >\n <tr style=\"vertical-align: top\" valign=\"top\">\n <td\n align=\"center\"\n style=\"\n word-break: break-word;\n vertical-align: top;\n padding-bottom: 20px;\n padding-left: 10px;\n padding-right: 10px;\n padding-top: 10px;\n text-align: center;\n width: 100%;\n \"\n valign=\"top\"\n width=\"100%\"\n >\n <h1\n style=\"\n color: #444445;\n direction: ltr;\n font-family: 'Helvetica Neue', Helvetica,\n Arial, sans-serif;\n font-size: 20px;\n font-weight: normal;\n letter-spacing: normal;\n line-height: 120%;\n text-align: left;\n margin-top: 0;\n margin-bottom: 0;\n \"\n >\n <strong>Reset your password</strong>\n </h1>\n </td>\n </tr>\n </table>\n <!--[if mso]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td style=\"padding-right: 10px; padding-left: 10px; padding-top: 10px; padding-bottom: 10px; font-family: Arial, sans-serif\"><![endif]-->\n <div\n style=\"\n color: #444445;\n font-family: Arial, Helvetica Neue, Helvetica,\n sans-serif;\n line-height: 1.8;\n padding-top: 10px;\n padding-right: 10px;\n padding-bottom: 10px;\n padding-left: 10px;\n \"\n >\n <div\n class=\"txtTinyMce-wrapper\"\n style=\"\n font-size: 14px;\n line-height: 1.8;\n color: #444445;\n font-family: Arial, Helvetica Neue, Helvetica,\n sans-serif;\n mso-line-height-alt: 25px;\n \"\n >\n <p\n style=\"\n margin: 0;\n font-size: 14px;\n line-height: 1.8;\n word-break: break-word;\n mso-line-height-alt: 25px;\n margin-top: 0;\n margin-bottom: 0;\n \"\n >\n <span style=\"font-size: 14px\"\n >We received a request to reset your password.\n Click the button below to reset your\n password.</span\n >\n </p>\n </div>\n </div>\n <div\n align=\"center\"\n class=\"button-container\"\n style=\"\n padding-top: 10px;\n padding-right: 10px;\n padding-bottom: 10px;\n padding-left: 10px;\n \"\n >\n <!--[if mso]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"border-spacing: 0; border-collapse: collapse; mso-table-lspace:0pt; mso-table-rspace:0pt;\"><tr><td style=\"padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px\" align=\"center\"><v:roundrect xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:w=\"urn:schemas-microsoft-com:office:word\" target=\"_blank\" href={{validationLink}} style=\"height:31.5pt;width:390pt;v-text-anchor:middle;\" arcsize=\"12%\" stroke=\"false\" fillcolor=\"#2270ee\"><w:anchorlock/><v:textbox inset=\"0,0,0,0\"><center style=\"color:#ffffff; font-family:Arial, sans-serif; font-size:14px\"><!\n [endif]--><a\n href=\"{{validationLink}}\"\n target=\"_blank\"\n style=\"\n -webkit-text-size-adjust: none;\n text-decoration: none;\n display: block;\n color: #ffffff;\n background-color: #2270ee;\n border-radius: 5px;\n -webkit-border-radius: 5px;\n -moz-border-radius: 5px;\n width: 100%;\n width: calc(100% - 2px);\n border-top: var(--sqm-border-thickness, 1px) solid\n #2270ee;\n border-right: var(--sqm-border-thickness, 1px)\n solid #2270ee;\n border-bottom: var(--sqm-border-thickness, 1px)\n solid #2270ee;\n border-left: var(--sqm-border-thickness, 1px)\n solid #2270ee;\n padding-top: 5px;\n padding-bottom: 5px;\n font-family: 'Helvetica Neue', Helvetica, Arial,\n sans-serif;\n text-align: center;\n mso-border-alt: none;\n word-break: keep-all;\n \"\n target=\"_blank\"\n ><span\n style=\"\n padding-left: 20px;\n padding-right: 20px;\n font-size: 14px;\n display: inline-block;\n letter-spacing: undefined;\n \"\n ><span\n style=\"\n font-size: 16px;\n line-height: 2;\n word-break: break-word;\n mso-line-height-alt: 32px;\n \"\n ><span\n style=\"font-size: 14px; line-height: 28px\"\n >Reset Password</span\n ></span\n ></span\n ></a\n >\n <!--[if mso]></center></v:textbox></v:roundrect></td></tr></table><![endif]-->\n </div>\n <!--[if mso]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td style=\"padding-right: 10px; padding-left: 10px; padding-top: 15px; padding-bottom: 15px; font-family: Arial, sans-serif\"><![endif]-->\n <div\n style=\"\n color: #444445;\n font-family: Arial, Helvetica Neue, Helvetica,\n sans-serif;\n line-height: 1.2;\n padding-top: 15px;\n padding-right: 10px;\n padding-bottom: 15px;\n padding-left: 10px;\n \"\n >\n <div\n class=\"txtTinyMce-wrapper\"\n style=\"\n font-size: 14px;\n line-height: 1.2;\n color: #444445;\n font-family: Arial, Helvetica Neue, Helvetica,\n sans-serif;\n mso-line-height-alt: 17px;\n \"\n >\n <p\n style=\"\n margin: 0;\n font-size: 12px;\n line-height: 1.2;\n word-break: break-word;\n mso-line-height-alt: 14px;\n margin-top: 0;\n margin-bottom: 0;\n \"\n >\n <span style=\"font-size: 12px\"\n >If you didn't request a password reset please\n ignore this email. Your password will not\n change.</span\n >\n </p>\n </div>\n </div>\n <!--[if mso]></td></tr></table><![endif]-->\n <!--[if (!mso)&(!IE)]><!-->\n </div>\n <!--<![endif]-->\n </div>\n </div>\n <!--[if (mso)|(IE)]></td></tr></table><![endif]-->\n <!--[if (mso)|(IE)]></td></tr></table></td></tr></table><![endif]-->\n </div>\n </div>\n </div>\n <!--[if (mso)|(IE)]></td></tr></table><![endif]-->\n </td>\n </tr>\n </tbody>\n </table>\n <!--[if (IE)]></div><![endif]-->\n </body>\n</html>\n";
|
|
1795
1795
|
|
|
1796
|
-
const taxAndCashTemplate = "<sqm-portal-frame>\n <a slot=\"header\" href=\"/\">\n <sqm-text style=\"height: 60px\">\n <img\n style=\"height: 60px\"\n src=\"https://res.cloudinary.com/saasquatch/image/upload/v1634255445/squatch-assets/Copy_of_saasquatch-logo-tree-large-horizontal.png\"\n />\n </sqm-text>\n </a>\n <sqb-program-section program-id=\"referral-program\">\n <sqm-router>\n <template\n path=\"/:path(\\bregister\\b|\\bemailVerification\\b|\\blogin\\b|\\bverifyEmail\\b|\\bforgotPassword\\b|\\bresetPassword\\b|\\blogout\\b)\"\n >\n <sqm-hero\n background=\"https://images.unsplash.com/photo-1599676821464-3555954838dc?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=1939&q=80\"\n >\n <sqm-router>\n <template path=\"/register\">\n <sqm-portal-login></sqm-portal-login>\n <sqm-portal-register>\n <sqm-name-fields slot=\"formData\"></sqm-name-fields>\n </sqm-portal-register>\n </template>\n\n <template path=\"/emailVerification\">\n <sqm-portal-protected-route\n redirect-to=\"/login\"\n ></sqm-portal-protected-route>\n <sqm-portal-email-verification></sqm-portal-email-verification>\n </template>\n\n <template path=\"/login\">\n <sqm-portal-login></sqm-portal-login>\n </template>\n\n <template path=\"/verifyEmail\">\n <sqm-portal-verify-email></sqm-portal-verify-email>\n </template>\n\n <template path=\"/forgotPassword\">\n <sqm-portal-forgot-password\n email-label=\"Business Email\"\n ></sqm-portal-forgot-password>\n </template>\n\n <template path=\"/resetPassword\">\n <sqm-portal-reset-password\n confirm-password=\"true\"\n ></sqm-portal-reset-password>\n </template>\n <template path=\"/logout\">\n <sqm-portal-logout next-page=\"/login\"></sqm-portal-logout>\n </template>\n </sqm-router>\n </sqm-hero>\n </template>\n </sqm-router>\n <sqm-router>\n <template path=\"/:path(\\bactivity\\b|\\beditProfile\\b|\\brefer\\b)?\">\n <sqm-divided-layout\n direction=\"row\"\n style=\"\n border-top: var(--sqm-border-thickness, 1px) solid #eaeaea;\n border-bottom: var(--sqm-border-thickness, 1px) solid #eaeaea;\n \"\n >\n <sqm-navigation-sidebar>\n <sqm-navigation-sidebar-item\n path=\"/\"\n icon=\"house\"\n label=\"Dashboard\"\n ></sqm-navigation-sidebar-item>\n <sqm-navigation-sidebar-item\n path=\"/activity\"\n icon=\"bar-chart\"\n label=\"Activity\"\n ></sqm-navigation-sidebar-item>\n <sqm-navigation-sidebar-item\n path=\"/editProfile\"\n icon=\"person\"\n label=\"Edit Profile\"\n ></sqm-navigation-sidebar-item>\n <sqm-navigation-sidebar-item\n path=\"/taxAndCash\"\n icon=\"file-earmark-text\"\n label=\"Tax & Payout Settings\"\n ></sqm-navigation-sidebar-item>\n <sqm-navigation-sidebar-item\n path=\"/logout\"\n icon=\"box-arrow-right\"\n label=\"Logout\"\n ></sqm-navigation-sidebar-item>\n </sqm-navigation-sidebar>\n <sqm-divided-layout direction=\"column\" content-area-width=\"1200px\">\n <sqm-router>\n <template path=\"/\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqb-widget\n widget-type=\"p/referral-program/w/referrerWidget\"\n track-loads=\"true\"\n ></sqb-widget>\n </template>\n <template path=\"/editProfile\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqm-portal-container direction=\"column\" gap=\"xxx-large\">\n <sqm-portal-profile></sqm-portal-profile> </sqm-portal-container\n ><sqm-portal-container direction=\"column\" gap=\"xxx-large\">\n <sqm-portal-change-password></sqm-portal-change-password>\n </sqm-portal-container>\n </template>\n <template path=\"/refer\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqm-referral-iframe></sqm-referral-iframe>\n </template>\n <template path=\"/activity\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqm-portal-container\n direction=\"column\"\n padding=\"xxx-large\"\n gap=\"xxx-large\"\n >\n <sqm-text>\n <h1>Activity</h1>\n </sqm-text>\n <sqm-stat-container space=\"xxxx-large\"\n ><sqm-big-stat\n flex-reverse=\"true\"\n alignment=\"left\"\n stat-type=\"/referralsCount\"\n ><sqm-text>\n <p>Referrals</p>\n </sqm-text></sqm-big-stat\n >\n <sqm-big-stat\n flex-reverse=\"true\"\n alignment=\"left\"\n stat-type=\"/rewardsCountFiltered/AVAILABLE\"\n ><sqm-text>\n <p>Rewards Earned</p>\n </sqm-text></sqm-big-stat\n >\n <sqm-big-stat\n flex-reverse=\"true\"\n alignment=\"left\"\n stat-type=\"/rewardBalance/CREDIT/CENTS\"\n ><sqm-text>\n <p>Reward Balance</p>\n </sqm-text></sqm-big-stat\n >\n </sqm-stat-container>\n <sqm-referral-table>\n <sqm-referral-table-user-column></sqm-referral-table-user-column>\n <sqm-referral-table-rewards-column></sqm-referral-table-rewards-column>\n <sqm-referral-table-status-column></sqm-referral-table-status-column>\n <sqm-referral-table-date-column\n column-title=\"Referred\"\n date-shown=\"dateReferralStarted\"\n ></sqm-referral-table-date-column> </sqm-referral-table\n ></sqm-portal-container>\n </template>\n <template path=\"/taxAndCash\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqm-tax-and-cash\n step-1_first-name=\"First name\"\n step-1_last-name=\"Last name\"\n step-1_email=\"Email\"\n step-1_country=\"Country\"\n step-1_phone-number=\"Phone number\"\n step-1_address=\"Address\"\n step-1_city=\"City\"\n step-1_state=\"State\"\n step-1_province=\"Province\"\n step-1_region=\"Region\"\n step-1_postal-code=\"Postal code\"\n step-1_currency=\"Currency\"\n step-1_currency-help-text=\"Choose your preferred payout currency\"\n step-1_allow-banking-collection=\"I have read the {termsAndConditionsLink} and allow impact.com to collect my tax and banking information\"\n step-1_personal-information=\"Personal Information\"\n step-1_terms-and-conditions-label=\"terms and conditions\"\n step-1_terms-and-conditions-link=\"/payout-terms-and-conditions\"\n step-1_search-for-currency-text=\"Search for currency..\"\n step-2_indirect-tax=\"Indirect Tax\"\n step-2_indirect-tax-description=\"Indirect taxes (e.g. VAT, HST, GST) are transaction based taxes often applied to goods and services. Service providers are typically required to register with their tax authority and collect these taxes on behalf governments.\"\n step-2_indirect-tax-details=\"Indirect tax details\"\n step-2_other-region=\"Registered for indirect tax\"\n step-2_other-region-subtext=\"If you’ve registered with your tax authority, add your information to stay tax compliant.\"\n step-2_not-registered=\"Not registered for indirect tax\"\n step-2_not-registered-subtext=\"If you’ve never set up indirect tax with your tax authority, then you’re likely not considered registered.\"\n step-2_selected-region=\"Country / region of indirect tax\"\n step-2_indirect-tax-number=\"{taxType, select, GST {GST number} HST {HST number} VAT {VAT number} CT {CT number} SST {SST number} GENERAL {Indirect tax number}}\"\n step-2_province=\"Province\"\n step-2_indirect-tax-number-error=\"{taxType, select, GST {GST number} HST {HST number} VAT {VAT number} CT {CT number} SST {SST number} GENERAL {Indirect tax number}} is required\"\n step-2_qst-number=\"QST number\"\n step-2_is-registered-q-s-t=\"I am registered for QST Tax\"\n step-2_is-registered-sub-region-income-tax=\"I am an individual registered for Income Tax purposes in Spain, and withholding tax will apply to any payments made to me.\"\n step-2_sub-region=\"Sub-region\"\n step-2_sub-region-tax-number-label=\"Income Tax Number\"\n step-2_cannot-change-info-alert=\"Changes to your personal and indirect tax information can only be made through our Support team after you complete this step. Make sure these are correct before continuing.\"\n step-3_tax-form=\"Tax form\"\n step-3_tax-form-label=\"{documentType} Tax Form\"\n step-3_participant-type=\"Participant type\"\n step-3_business-entity=\"I represent a business\"\n step-3_individual-participant=\"I am an individual participant\"\n step-3_tax-form-description=\"Participants based in the US need to submit a {documentType} form.\"\n step-3_tax-form-description-individual-participant=\"Participants residing outside of the US, joining the referral program of a US-based company, need to submit a {documentType} form.\"\n step-3_tax-form-description-business-entity=\"Participants residing outside of the US working with a US Brand need to submit a {documentType} form.\"\n step-3_docusign-expired=\"For your security and privacy, we automatically end your session after 20 minutes of inactivity. Please refresh and re-enter your tax information to continue.\"\n step-3_docusign-session-warning=\"For your security, we automatically end your session when you have not interacted with the form after 20 minutes.\"\n step-3_docusign-error=\"There was a problem displaying this form. Please refresh the page. If this problem continues, contact Support.\"\n step-3_refresh-button=\"Refresh Page\"\n step-3_exit-button=\"Exit\"\n step-3_modal-title=\"Important Note\"\n step-3_modal-description=\"Remember the name you enter in your tax form. It must exactly match the bank account holder name configured in the next step. {br}{br}Otherwise you will have to resubmit your form again and there will be delays receiving your payout.\"\n step-3_modal-button-text=\"I understand\"\n step-4_tax-and-payouts=\"Payouts\"\n step-4_directly-to-bank-account=\"Directly to my bank account\"\n step-4_to-pay-pal-account=\"PayPal (2% processing fee capped to {feeCap})\"\n step-4_payment-schedule-balance-threshold=\"Pay me when my balance reaches a threshold\"\n step-4_payment-schedule-fixed-day=\"Pay me on a fixed day of the month\"\n step-4_payment-day-select-label=\"Payment Day\"\n step-4_payment-threshold-select-label=\"Payment threshold\"\n step-4_payment-day-first-of-month-label-text=\"1st of the month\"\n step-4_payment-day-fifteenth-of-month-label-text=\"15th of the month\"\n step-4_payment-method=\"Payment method\"\n step-4_payment-schedule=\"Payment schedule\"\n step-4_payment-method-subtext=\"Payouts will be sent from our referral program provider, impact.com.\"\n step-4_pay-pal-input-label=\"PayPal email\"\n step-4_bank-location-label=\"Bank country location\"\n step-4_beneficiary-account-name-label=\"Account holder name\"\n step-4_beneficiary-account-name-description=\"The beneficiary name of your bank account. Ensure this matches the name on your tax form.\"\n step-4_bank-account-type-label=\"Bank account type\"\n step-4_checking-select-item-label=\"Checking\"\n step-4_savings-select-item-label=\"Savings\"\n step-4_bank-account-number-label=\"Bank account number\"\n step-4_iban-label=\"IBAN\"\n step-4_swift-code-label=\"SWIFT code\"\n step-4_routing-code-label=\"{bankCountry, select, AU {BSB number} CA {Routing number} CZ {Bank code} HK {Clearing code} SG {Clearing code} US {ABA routing number} NZ {BSB number} ZA {Bank/Branch number} IN {IFSC} CNY {CNAPS} other {Routing code} }\"\n step-4_bank-name-label=\"Bank name\"\n step-4_classification-entity-label=\"Classification entity\"\n step-4_business-select-item-label=\"Business\"\n step-4_individual-select-item-label=\"Individual\"\n step-4_foreign-select-item-label=\"Foreign\"\n step-4_classification-c-p-f-label=\"Classification CPF\"\n step-4_patronymic-name-label=\"Patronymic name\"\n step-4_vo-code-label=\"VO code\"\n step-4_agency-code-label=\"Agency code\"\n step-4_branch-code-label=\"Branch code\"\n step-4_classification-label=\"Classification\"\n step-4_tax-payer-id-label=\"Beneficiary INN\"\n step-4-bank-address-label=\"Bank address\"\n step-4_bank-city-label=\"Bank city\"\n step-4_bank-state-label=\"Bank Province / State\"\n step-4_bank-postal-code-label=\"Bank postal code\"\n step-4_eft-withdrawal-label=\"EFT Withdrawal (free)\"\n step-4_fx-wire-processing-fee-label=\"FX Wire (Processing Fee {currency}{defaultFxFee}.00)\"\n step-4_modal-title=\"Important Note\"\n step-4_modal-description=\"Updating payment information places your account and payouts on hold for up to 48 hours while we verify your change. Payments scheduled during the hold period are skipped.\"\n step-4_modal-button-text=\"I understand, update my information\"\n dashboard_status-text-active=\"Active\"\n dashboard_status-text-not-active=\"Invalid Tax Form\"\n dashboard_status-text-not-verified=\"Not Verified\"\n dashboard_badge-text-submitted-on=\"Submitted on {dateSubmitted}.\"\n dashboard_badge-text-submitted-on-w-8=\"Submitted on {dateSubmitted}. Valid for three years after submission.\"\n dashboard_badge-text-awaiting-review=\"Awaiting review. Submitted on {dateSubmitted}.\"\n dashboard_tax-alert-header-not-active-w-9=\"Your W-9 tax form has personal information that doesn’t match your profile\"\n dashboard_tax-alert-header-not-active-w-8=\"{documentType} tax form is invalid\"\n dashboard_tax-alert-not-active-message-w-9=\"Please resubmit a new {documentType} form.\"\n dashboard_tax-alert-not-active-message-w-8=\"Your tax form may have expired or has personal information that doesn’t match your profile. Please submit a new {documentType} form.\"\n dashboard_invalid-form=\"Make sure your information is correct and submit new form.\"\n dashboard_banking-information-section-header=\"Payout Information\"\n dashboard_tax-document-section-header=\"Tax documents\"\n dashboard_tax-document-section-sub-header=\"{documentType} tax form\"\n dashboard_no-form-needed-subtext=\"Tax documents are only required if you are based in the US or joining the referral program of a US based brand.\"\n dashboard_indirect-tax-info-section-header=\"Indirect tax\"\n dashboard_indirect-tax-info-spain=\"Registered in {country}, {subRegion}\"\n dashboard_indirect-tax-info-other-country=\"Registered in {country}\"\n dashboard_indirect-tax-info-canada=\"Registered in {province}, {country}\"\n dashboard_indirect-tax-tooltip-support=\"To make changes to your indirect tax information, please contact Support.\"\n dashboard_indirect-tax-details=\"{indirectTaxType} number: {indirectTaxNumber}\"\n dashboard_new-form-button=\"Submit new tax form\"\n dashboard_edit-payment-information-button=\"Edit payout information\"\n dashboard_not-registered-for-tax=\"Not registered for indirect tax. If you’ve previously registered with your tax authority, contact Support to add your information to stay tax compliant.\"\n dashboard_qst-number=\"QST number: {qstNumber}\"\n dashboard_sub-region-tax-number=\"Income tax number: {subRegionTaxNumber}\"\n dashboard_status-badge-text=\"{badgeText, select, payoutToday {Payout Today} nextPayout {Next Payout} }\"\n dashboard_threshold-payout-text=\"Next payout occurs when balance is {thresholdBalance}\"\n dashboard_account-text=\"Account\"\n dashboard_invoice-column-title=\"Invoice\"\n dashboard_date-column-title=\"Date\"\n dashboard_earnings-column-title=\"Earnings\"\n dashboard_indirect-tax-column-title=\"Indirect tax\"\n dashboard_payout-from-impact=\"Your balance may take up to 24 hours to update. Payouts will be sent from our referral program provider, impact.com.\"\n dashboard_earnings-after-tax-column-title=\"Earnings after tax\"\n dashboard_error-title-text=\"Your payout is on hold \"\n dashboard_error-description-text=\"If you’ve recently added your payout information, please wait while we verify your information. If it’s still on hold after a few days, please contact Support or check your inbox for an email from our referral program provider, impact.com.\"\n dashboard_payout-missing-information-text=\"Missing banking information, go to Impact.com to resolve.\"\n dashboard_invoice-description=\"View and download your invoices to report your earnings and stay tax compliant.\"\n dashboard_invoice-prev-label=\"Prev\"\n dashboard_invoice-more-label=\"Next\"\n dashboard_invoice-header=\"Invoices\"\n dashboard_invoice-empty-state-header=\"View your invoice details\"\n dashboard_invoice-empty-state-text=\"Refer a friend to view the status of your invoices and rewards earned\"\n dashboard_replace-tax-form-modal-header=\"Replace existing tax form\"\n dashboard_replace-tax-form-modal-body-text=\"Submitting a new tax form will remove your existing form. Make sure to sign and complete your new tax form to prevent any issues with your next payout.\"\n form-step=\"Step {step} of {count}\"\n general-error-title=\"There was a problem submitting your information\"\n general-error-description=\"Please review your information and try again. If this problem continues, contact Support.\"\n field-required-error=\"{fieldName} is required\"\n invalid-character-error=\"{fieldName} includes characters that aren't supported.\"\n field-invalid-error=\"{fieldName} is invalid\"\n continue-button=\"Continue\"\n back-button=\"Back\"\n cancel-button=\"Cancel\"\n is-partner-alert-header=\"An account with this email already exists with our referral program provider, impact.com\"\n is-partner-alert-description=\"If you don’t recognize this referral program provider or believe this is a mistake, please contact Support or sign up for this referral program with a different email.\"\n search-for-country-text=\"Search for country..\"\n loading-error-alert-header=\"There was a problem loading your form\"\n loading-error-alert-description=\"Please refresh the page and try again. If this problem continues, contact Support.\"\n tax-and-payouts-description=\"Submit your tax documents and add your banking information to receive your rewards.\"\n ></sqm-tax-and-cash>\n </template>\n </sqm-router>\n </sqm-divided-layout>\n </sqm-divided-layout>\n </template>\n </sqm-router>\n </sqb-program-section>\n <sqm-portal-footer\n slot=\"footer\"\n support-email=\"support@example.com\"\n terms-link=\"https://example.com\"\n faq-link=\"https://example.com\"\n terms-text=\"Terms And Conditions\"\n faq-text=\"FAQ\"\n show-powered-by=\"true\"\n ></sqm-portal-footer>\n</sqm-portal-frame>\n";
|
|
1796
|
+
const taxAndCashTemplate = "<sqm-portal-frame>\n <a slot=\"header\" href=\"/\">\n <sqm-text style=\"height: 60px\">\n <img\n style=\"height: 60px\"\n src=\"https://res.cloudinary.com/saasquatch/image/upload/v1634255445/squatch-assets/Copy_of_saasquatch-logo-tree-large-horizontal.png\"\n />\n </sqm-text>\n </a>\n <sqb-program-section program-id=\"referral-program\">\n <sqm-router>\n <template\n path=\"/:path(\\bregister\\b|\\bemailVerification\\b|\\blogin\\b|\\bverifyEmail\\b|\\bforgotPassword\\b|\\bresetPassword\\b|\\blogout\\b)\"\n >\n <sqm-hero\n background=\"https://images.unsplash.com/photo-1599676821464-3555954838dc?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=1939&q=80\"\n >\n <sqm-router>\n <template path=\"/register\">\n <sqm-portal-login></sqm-portal-login>\n <sqm-portal-register>\n <sqm-name-fields slot=\"formData\"></sqm-name-fields>\n </sqm-portal-register>\n </template>\n\n <template path=\"/emailVerification\">\n <sqm-portal-protected-route\n redirect-to=\"/login\"\n ></sqm-portal-protected-route>\n <sqm-portal-email-verification></sqm-portal-email-verification>\n </template>\n\n <template path=\"/login\">\n <sqm-portal-login></sqm-portal-login>\n </template>\n\n <template path=\"/verifyEmail\">\n <sqm-portal-verify-email></sqm-portal-verify-email>\n </template>\n\n <template path=\"/forgotPassword\">\n <sqm-portal-forgot-password\n email-label=\"Business Email\"\n ></sqm-portal-forgot-password>\n </template>\n\n <template path=\"/resetPassword\">\n <sqm-portal-reset-password\n confirm-password=\"true\"\n ></sqm-portal-reset-password>\n </template>\n <template path=\"/logout\">\n <sqm-portal-logout next-page=\"/login\"></sqm-portal-logout>\n </template>\n </sqm-router>\n </sqm-hero>\n </template>\n </sqm-router>\n <sqm-router>\n <template path=\"/:path(\\bactivity\\b|\\beditProfile\\b|\\brefer\\b)?\">\n <sqm-divided-layout\n direction=\"row\"\n style=\"\n border-top: var(--sqm-border-thickness, 1px) solid #eaeaea;\n border-bottom: var(--sqm-border-thickness, 1px) solid #eaeaea;\n \"\n >\n <sqm-navigation-sidebar>\n <sqm-navigation-sidebar-item\n path=\"/\"\n icon=\"house\"\n label=\"Dashboard\"\n ></sqm-navigation-sidebar-item>\n <sqm-navigation-sidebar-item\n path=\"/activity\"\n icon=\"bar-chart\"\n label=\"Activity\"\n ></sqm-navigation-sidebar-item>\n <sqm-navigation-sidebar-item\n path=\"/editProfile\"\n icon=\"person\"\n label=\"Edit Profile\"\n ></sqm-navigation-sidebar-item>\n <sqm-navigation-sidebar-item\n path=\"/taxAndCash\"\n icon=\"file-earmark-text\"\n label=\"Tax & Payout Settings\"\n ></sqm-navigation-sidebar-item>\n <sqm-navigation-sidebar-item\n path=\"/logout\"\n icon=\"box-arrow-right\"\n label=\"Logout\"\n ></sqm-navigation-sidebar-item>\n </sqm-navigation-sidebar>\n <sqm-divided-layout direction=\"column\" content-area-width=\"1200px\">\n <sqm-router>\n <template path=\"/\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqb-widget\n widget-type=\"p/referral-program/w/referrerWidget\"\n track-loads=\"true\"\n ></sqb-widget>\n </template>\n <template path=\"/editProfile\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqm-portal-container direction=\"column\" gap=\"xxx-large\">\n <sqm-portal-profile></sqm-portal-profile> </sqm-portal-container\n ><sqm-portal-container direction=\"column\" gap=\"xxx-large\">\n <sqm-portal-change-password></sqm-portal-change-password>\n </sqm-portal-container>\n </template>\n <template path=\"/refer\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqm-referral-iframe></sqm-referral-iframe>\n </template>\n <template path=\"/activity\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqm-portal-container\n direction=\"column\"\n padding=\"xxx-large\"\n gap=\"xxx-large\"\n >\n <sqm-text>\n <h1>Activity</h1>\n </sqm-text>\n <sqm-stat-container space=\"xxxx-large\"\n ><sqm-big-stat\n flex-reverse=\"true\"\n alignment=\"left\"\n stat-type=\"/referralsCount\"\n ><sqm-text>\n <p>Referrals</p>\n </sqm-text></sqm-big-stat\n >\n <sqm-big-stat\n flex-reverse=\"true\"\n alignment=\"left\"\n stat-type=\"/rewardsCountFiltered/AVAILABLE\"\n ><sqm-text>\n <p>Rewards Earned</p>\n </sqm-text></sqm-big-stat\n >\n <sqm-big-stat\n flex-reverse=\"true\"\n alignment=\"left\"\n stat-type=\"/rewardBalance/CREDIT/CENTS\"\n ><sqm-text>\n <p>Reward Balance</p>\n </sqm-text></sqm-big-stat\n >\n </sqm-stat-container>\n <sqm-referral-table>\n <sqm-referral-table-user-column></sqm-referral-table-user-column>\n <sqm-referral-table-rewards-column></sqm-referral-table-rewards-column>\n <sqm-referral-table-status-column></sqm-referral-table-status-column>\n <sqm-referral-table-date-column\n column-title=\"Referred\"\n date-shown=\"dateReferralStarted\"\n ></sqm-referral-table-date-column> </sqm-referral-table\n ></sqm-portal-container>\n </template>\n <template path=\"/taxAndCash\">\n <sqm-portal-protected-route\n require-email-verification=\"true\"\n redirect-to=\"/login\"\n redirect-to-unverified=\"/emailVerification\"\n ></sqm-portal-protected-route>\n <sqm-tax-and-cash\n step-1_first-name=\"First name\"\n step-1_last-name=\"Last name\"\n step-1_email=\"Email\"\n step-1_country=\"Country\"\n step-1_phone-number=\"Phone number\"\n step-1_address=\"Address\"\n step-1_city=\"City\"\n step-1_state=\"State\"\n step-1_province=\"Province\"\n step-1_region=\"Region\"\n step-1_postal-code=\"Postal code\"\n step-1_currency=\"Currency\"\n step-1_currency-help-text=\"Choose your preferred payout currency\"\n step-1_allow-banking-collection=\"I have read the {termsAndConditionsLink} and allow impact.com to collect my tax and banking information\"\n step-1_personal-information=\"Personal Information\"\n step-1_terms-and-conditions-label=\"terms and conditions\"\n step-1_terms-and-conditions-link=\"/payout-terms-and-conditions\"\n step-1_search-for-currency-text=\"Search for currency..\"\n step-2_indirect-tax=\"Indirect Tax\"\n step-2_indirect-tax-description=\"Indirect taxes (e.g. VAT, HST, GST) are transaction based taxes often applied to goods and services. Service providers are typically required to register with their tax authority and collect these taxes on behalf governments.\"\n step-2_indirect-tax-details=\"Indirect tax details\"\n step-2_other-region=\"Registered for indirect tax\"\n step-2_other-region-subtext=\"If you’ve registered with your tax authority, add your information to stay tax compliant.\"\n step-2_not-registered=\"Not registered for indirect tax\"\n step-2_not-registered-subtext=\"If you’ve never set up indirect tax with your tax authority, then you’re likely not considered registered.\"\n step-2_selected-region=\"Country / region of indirect tax\"\n step-2_indirect-tax-number=\"{taxType, select, GST {GST number} HST {HST number} VAT {VAT number} CT {CT number} SST {SST number} GENERAL {Indirect tax number}}\"\n step-2_province=\"Province\"\n step-2_indirect-tax-number-error=\"{taxType, select, GST {GST number} HST {HST number} VAT {VAT number} CT {CT number} SST {SST number} GENERAL {Indirect tax number}} is required\"\n step-2_qst-number=\"QST number\"\n step-2_is-registered-q-s-t=\"I am registered for QST Tax\"\n step-2_is-registered-sub-region-income-tax=\"I am an individual registered for Income Tax purposes in Spain, and withholding tax will apply to any payments made to me.\"\n step-2_sub-region=\"Sub-region\"\n step-2_sub-region-tax-number-label=\"Income Tax Number\"\n step-2_cannot-change-info-alert=\"Changes to your personal and indirect tax information can only be made through our Support team after you complete this step. Make sure these are correct before continuing.\"\n step-3_tax-form=\"Tax form\"\n step-3_tax-form-label=\"{documentType} Tax Form\"\n step-3_participant-type=\"Participant type\"\n step-3_business-entity=\"I represent a business\"\n step-3_individual-participant=\"I am an individual participant\"\n step-3_tax-form-description=\"Participants based in the US need to submit a {documentType} form.\"\n step-3_tax-form-description-individual-participant=\"Participants residing outside of the US, joining the referral program of a US-based company, need to submit a {documentType} form.\"\n step-3_tax-form-description-business-entity=\"Participants residing outside of the US working with a US Brand need to submit a {documentType} form.\"\n step-3_docusign-expired=\"For your security and privacy, we automatically end your session after 20 minutes of inactivity. Please refresh and re-enter your tax information to continue.\"\n step-3_docusign-session-warning=\"For your security, we automatically end your session when you have not interacted with the form after 20 minutes.\"\n step-3_docusign-error=\"There was a problem displaying this form. Please refresh the page. If this problem continues, contact Support.\"\n step-3_refresh-button=\"Refresh Page\"\n step-3_exit-button=\"Exit\"\n step-3_modal-title=\"Important Note\"\n step-3_modal-description=\"Remember the name you enter in your tax form. It must exactly match the bank account holder name configured in the next step. {br}{br}Otherwise you will have to resubmit your form again and there will be delays receiving your payout.\"\n step-3_modal-button-text=\"I understand\"\n step-4_tax-and-payouts=\"Payouts\"\n step-4_directly-to-bank-account=\"Directly to my bank account\"\n step-4_to-pay-pal-account=\"PayPal (2% processing fee capped to {feeCap})\"\n step-4_payment-schedule-balance-threshold=\"Pay me when my balance reaches a threshold\"\n step-4_payment-schedule-fixed-day=\"Pay me on a fixed day of the month\"\n step-4_payment-day-select-label=\"Payment Day\"\n step-4_payment-threshold-select-label=\"Payment threshold\"\n step-4_payment-day-first-of-month-label-text=\"1st of the month\"\n step-4_payment-day-fifteenth-of-month-label-text=\"15th of the month\"\n step-4_payment-method=\"Payment method\"\n step-4_payment-schedule=\"Payment schedule\"\n step-4_payment-method-subtext=\"Payouts will be sent from our referral program provider, impact.com.\"\n step-4_pay-pal-input-label=\"PayPal email\"\n step-4_bank-location-label=\"Bank country location\"\n step-4_beneficiary-account-name-label=\"Account holder name\"\n step-4_beneficiary-account-name-description=\"The beneficiary name of your bank account. Ensure this matches the name on your tax form.\"\n step-4_bank-account-type-label=\"Bank account type\"\n step-4_checking-select-item-label=\"Checking\"\n step-4_savings-select-item-label=\"Savings\"\n step-4_bank-account-number-label=\"Bank account number\"\n step-4_iban-label=\"IBAN\"\n step-4_swift-code-label=\"SWIFT code\"\n step-4_routing-code-label=\"{bankCountry, select, AU {BSB number} CA {Routing number} CZ {Bank code} HK {Clearing code} SG {Clearing code} US {ABA routing number} NZ {BSB number} ZA {Bank/Branch number} IN {IFSC} CNY {CNAPS} other {Routing code} }\"\n step-4_bank-name-label=\"Bank name\"\n step-4_classification-entity-label=\"Classification entity\"\n step-4_business-select-item-label=\"Business\"\n step-4_individual-select-item-label=\"Individual\"\n step-4_foreign-select-item-label=\"Foreign\"\n step-4_classification-c-p-f-label=\"Classification CPF\"\n step-4_patronymic-name-label=\"Patronymic name\"\n step-4_vo-code-label=\"VO code\"\n step-4_agency-code-label=\"Agency code\"\n step-4_branch-code-label=\"Branch code\"\n step-4_branch-name-label=\"Branch name\"\n step-4_classification-label=\"Classification\"\n step-4_classification-code-label=\"KBE code\"\n step-4_tax-payer-id-label=\"Beneficiary INN\"\n step-4-bank-address-label=\"Bank address\"\n step-4_bank-city-label=\"Bank city\"\n step-4_bank-state-label=\"Bank Province / State\"\n step-4_bank-postal-code-label=\"Bank postal code\"\n step-4_eft-withdrawal-label=\"EFT Withdrawal (free)\"\n step-4_fx-wire-processing-fee-label=\"FX Wire (Processing Fee {currency}{defaultFxFee}.00)\"\n step-4_modal-title=\"Important Note\"\n step-4_modal-description=\"Updating payment information places your account and payouts on hold for up to 48 hours while we verify your change. Payments scheduled during the hold period are skipped.\"\n step-4_modal-button-text=\"I understand, update my information\"\n dashboard_status-text-active=\"Active\"\n dashboard_status-text-not-active=\"Invalid Tax Form\"\n dashboard_status-text-not-verified=\"Not Verified\"\n dashboard_badge-text-submitted-on=\"Submitted on {dateSubmitted}.\"\n dashboard_badge-text-submitted-on-w-8=\"Submitted on {dateSubmitted}. Valid for three years after submission.\"\n dashboard_badge-text-awaiting-review=\"Awaiting review. Submitted on {dateSubmitted}.\"\n dashboard_tax-alert-header-not-active-w-9=\"Your W-9 tax form has personal information that doesn’t match your profile\"\n dashboard_tax-alert-header-not-active-w-8=\"{documentType} tax form is invalid\"\n dashboard_tax-alert-not-active-message-w-9=\"Please resubmit a new {documentType} form.\"\n dashboard_tax-alert-not-active-message-w-8=\"Your tax form may have expired or has personal information that doesn’t match your profile. Please submit a new {documentType} form.\"\n dashboard_invalid-form=\"Make sure your information is correct and submit new form.\"\n dashboard_banking-information-section-header=\"Payout Information\"\n dashboard_tax-document-section-header=\"Tax documents\"\n dashboard_tax-document-section-sub-header=\"{documentType} tax form\"\n dashboard_no-form-needed-subtext=\"Tax documents are only required if you are based in the US or joining the referral program of a US based brand.\"\n dashboard_indirect-tax-info-section-header=\"Indirect tax\"\n dashboard_indirect-tax-info-spain=\"Registered in {country}, {subRegion}\"\n dashboard_indirect-tax-info-other-country=\"Registered in {country}\"\n dashboard_indirect-tax-info-canada=\"Registered in {province}, {country}\"\n dashboard_indirect-tax-tooltip-support=\"To make changes to your indirect tax information, please contact Support.\"\n dashboard_indirect-tax-details=\"{indirectTaxType} number: {indirectTaxNumber}\"\n dashboard_new-form-button=\"Submit new tax form\"\n dashboard_edit-payment-information-button=\"Edit payout information\"\n dashboard_not-registered-for-tax=\"Not registered for indirect tax. If you’ve previously registered with your tax authority, contact Support to add your information to stay tax compliant.\"\n dashboard_qst-number=\"QST number: {qstNumber}\"\n dashboard_sub-region-tax-number=\"Income tax number: {subRegionTaxNumber}\"\n dashboard_status-badge-text=\"{badgeText, select, payoutToday {Payout Today} nextPayout {Next Payout} }\"\n dashboard_threshold-payout-text=\"Next payout occurs when balance is {thresholdBalance}\"\n dashboard_account-text=\"Account\"\n dashboard_invoice-column-title=\"Invoice\"\n dashboard_date-column-title=\"Date\"\n dashboard_earnings-column-title=\"Earnings\"\n dashboard_indirect-tax-column-title=\"Indirect tax\"\n dashboard_payout-from-impact=\"Your balance may take up to 24 hours to update. Payouts will be sent from our referral program provider, impact.com.\"\n dashboard_earnings-after-tax-column-title=\"Earnings after tax\"\n dashboard_error-title-text=\"Your payout is on hold \"\n dashboard_error-description-text=\"If you’ve recently added your payout information, please wait while we verify your information. If it’s still on hold after a few days, please contact Support or check your inbox for an email from our referral program provider, impact.com.\"\n dashboard_payout-missing-information-text=\"Missing banking information, go to Impact.com to resolve.\"\n dashboard_invoice-description=\"View and download your invoices to report your earnings and stay tax compliant.\"\n dashboard_invoice-prev-label=\"Prev\"\n dashboard_invoice-more-label=\"Next\"\n dashboard_invoice-header=\"Invoices\"\n dashboard_invoice-empty-state-header=\"View your invoice details\"\n dashboard_invoice-empty-state-text=\"Refer a friend to view the status of your invoices and rewards earned\"\n dashboard_replace-tax-form-modal-header=\"Replace existing tax form\"\n dashboard_replace-tax-form-modal-body-text=\"Submitting a new tax form will remove your existing form. Make sure to sign and complete your new tax form to prevent any issues with your next payout.\"\n form-step=\"Step {step} of {count}\"\n general-error-title=\"There was a problem submitting your information\"\n general-error-description=\"Please review your information and try again. If this problem continues, contact Support.\"\n field-required-error=\"{fieldName} is required\"\n invalid-character-error=\"{fieldName} includes characters that aren't supported.\"\n field-invalid-error=\"{fieldName} is invalid\"\n continue-button=\"Continue\"\n back-button=\"Back\"\n cancel-button=\"Cancel\"\n is-partner-alert-header=\"An account with this email already exists with our referral program provider, impact.com\"\n is-partner-alert-description=\"If you don’t recognize this referral program provider or believe this is a mistake, please contact Support or sign up for this referral program with a different email.\"\n search-for-country-text=\"Search for country..\"\n loading-error-alert-header=\"There was a problem loading your form\"\n loading-error-alert-description=\"Please refresh the page and try again. If this problem continues, contact Support.\"\n tax-and-payouts-description=\"Submit your tax documents and add your banking information to receive your rewards.\"\n ></sqm-tax-and-cash>\n </template>\n </sqm-router>\n </sqm-divided-layout>\n </sqm-divided-layout>\n </template>\n </sqm-router>\n </sqb-program-section>\n <sqm-portal-footer\n slot=\"footer\"\n support-email=\"support@example.com\"\n terms-link=\"https://example.com\"\n faq-link=\"https://example.com\"\n terms-text=\"Terms And Conditions\"\n faq-text=\"FAQ\"\n show-powered-by=\"true\"\n ></sqm-portal-footer>\n</sqm-portal-frame>\n";
|
|
1797
1797
|
|
|
1798
1798
|
const taxPayoutReminderEmailTemplate = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional //EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n\n<html\n xmlns=\"http://www.w3.org/1999/xhtml\"\n xmlns:o=\"urn:schemas-microsoft-com:office:office\"\n xmlns:v=\"urn:schemas-microsoft-com:vml\"\n>\n <head>\n <!--[if gte mso 9\n ]><xml\n ><o:OfficeDocumentSettings\n ><o:AllowPNG /><o:PixelsPerInch\n >96</o:PixelsPerInch\n ></o:OfficeDocumentSettings\n ></xml\n ><!\n [endif]-->\n <meta content=\"text/html; charset=utf-8\" http-equiv=\"Content-Type\" />\n <meta content=\"width=device-width\" name=\"viewport\" />\n <!--[if !mso]><!-->\n <meta content=\"IE=edge\" http-equiv=\"X-UA-Compatible\" />\n <!--<![endif]-->\n <title></title>\n <!--[if !mso]><!-->\n <!--<![endif]-->\n <style type=\"text/css\">\n body {\n margin: 0;\n padding: 0;\n }\n\n table,\n td,\n tr {\n vertical-align: top;\n border-collapse: collapse;\n }\n\n * {\n line-height: inherit;\n }\n\n a[x-apple-data-detectors=\"true\"] {\n color: inherit !important;\n text-decoration: none !important;\n }\n </style>\n <style id=\"media-query\" type=\"text/css\">\n @media (max-width: 520px) {\n .block-grid,\n .col {\n min-width: 320px !important;\n max-width: 100% !important;\n display: block !important;\n }\n\n .block-grid {\n width: 100% !important;\n }\n\n .col {\n width: 100% !important;\n }\n\n .col_cont {\n margin: 0 auto;\n }\n\n img.fullwidth,\n img.fullwidthOnMobile {\n max-width: 100% !important;\n }\n\n .no-stack .col {\n min-width: 0 !important;\n display: table-cell !important;\n }\n\n .no-stack.two-up .col {\n width: 50% !important;\n }\n\n .no-stack .col.num2 {\n width: 16.6% !important;\n }\n\n .no-stack .col.num3 {\n width: 25% !important;\n }\n\n .no-stack .col.num4 {\n width: 33% !important;\n }\n\n .no-stack .col.num5 {\n width: 41.6% !important;\n }\n\n .no-stack .col.num6 {\n width: 50% !important;\n }\n\n .no-stack .col.num7 {\n width: 58.3% !important;\n }\n\n .no-stack .col.num8 {\n width: 66.6% !important;\n }\n\n .no-stack .col.num9 {\n width: 75% !important;\n }\n\n .no-stack .col.num10 {\n width: 83.3% !important;\n }\n\n .video-block {\n max-width: none !important;\n }\n\n .mobile_hide {\n min-height: 0px;\n max-height: 0px;\n max-width: 0px;\n display: none;\n overflow: hidden;\n font-size: 0px;\n }\n\n .desktop_hide {\n display: block !important;\n max-height: none !important;\n }\n }\n </style>\n <style id=\"icon-media-query\" type=\"text/css\">\n @media (max-width: 520px) {\n .icons-inner {\n text-align: center;\n }\n\n .icons-inner td {\n margin: 0 auto;\n }\n }\n </style>\n </head>\n <body\n class=\"clean-body\"\n style=\"\n margin: 0;\n padding: 0;\n -webkit-text-size-adjust: 100%;\n background-color: #ffffff;\n \"\n >\n <!--[if IE]><div class=\"ie-browser\"><![endif]-->\n <table\n bgcolor=\"#FFFFFF\"\n cellpadding=\"0\"\n cellspacing=\"0\"\n class=\"nl-container\"\n role=\"presentation\"\n style=\"\n table-layout: fixed;\n vertical-align: top;\n min-width: 320px;\n border-spacing: 0;\n border-collapse: collapse;\n mso-table-lspace: 0pt;\n mso-table-rspace: 0pt;\n background-color: #ffffff;\n width: 100%;\n \"\n valign=\"top\"\n width=\"100%\"\n >\n <tbody>\n <tr style=\"vertical-align: top\" valign=\"top\">\n <td style=\"word-break: break-word; vertical-align: top\" valign=\"top\">\n <!--[if (mso)|(IE)]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td align=\"center\" style=\"background-color:#FFFFFF\"><![endif]-->\n <div style=\"background-color: transparent\">\n <div\n class=\"block-grid\"\n style=\"\n min-width: 320px;\n max-width: 500px;\n overflow-wrap: break-word;\n word-wrap: break-word;\n word-break: break-word;\n margin: 0 auto;\n background-color: transparent;\n \"\n >\n <div\n style=\"\n border-collapse: collapse;\n display: table;\n width: 100%;\n background-color: transparent;\n \"\n >\n <!--[if (mso)|(IE)]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"background-color:transparent;\"><tr><td align=\"center\"><table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"width:500px\"><tr class=\"layout-full-width\" style=\"background-color:transparent\"><![endif]-->\n <!--[if (mso)|(IE)]><td align=\"center\" width=\"500\" style=\"background-color:transparent;width:500px; border-top: 0px solid transparent; border-left: 0px solid transparent; border-bottom: 0px solid transparent; border-right: 0px solid transparent;\" valign=\"top\"><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td style=\"padding-right: 0px; padding-left: 0px; padding-top:5px; padding-bottom:5px;\"><![endif]-->\n <div\n class=\"col num12\"\n style=\"\n min-width: 320px;\n max-width: 500px;\n display: table-cell;\n vertical-align: top;\n width: 500px;\n \"\n >\n <div class=\"col_cont\" style=\"width: 100% !important\">\n <!--[if (!mso)&(!IE)]><!-->\n <div\n style=\"\n border-top: 0px solid transparent;\n border-left: 0px solid transparent;\n border-bottom: 0px solid transparent;\n border-right: 0px solid transparent;\n padding-top: 5px;\n padding-bottom: 5px;\n padding-right: 0px;\n padding-left: 0px;\n \"\n >\n <!--<![endif]-->\n <table\n cellpadding=\"0\"\n cellspacing=\"0\"\n role=\"presentation\"\n style=\"\n table-layout: fixed;\n vertical-align: top;\n border-spacing: 0;\n border-collapse: collapse;\n mso-table-lspace: 0pt;\n mso-table-rspace: 0pt;\n \"\n valign=\"top\"\n width=\"100%\"\n >\n <tr style=\"vertical-align: top\" valign=\"top\">\n <td\n align=\"center\"\n style=\"\n word-break: break-word;\n vertical-align: top;\n padding-bottom: 20px;\n padding-left: 10px;\n padding-right: 10px;\n padding-top: 10px;\n text-align: center;\n width: 100%;\n \"\n valign=\"top\"\n width=\"100%\"\n >\n <h1\n style=\"\n color: #444445;\n direction: ltr;\n font-family: 'Helvetica Neue', Helvetica,\n Arial, sans-serif;\n font-size: 20px;\n font-weight: normal;\n letter-spacing: normal;\n line-height: 120%;\n text-align: left;\n margin-top: 0;\n margin-bottom: 0;\n \"\n >\n <strong>Submit your tax and payout info to receive your rewards</strong>\n </h1>\n </td>\n </tr>\n </table>\n <!--[if mso]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td style=\"padding-right: 10px; padding-left: 10px; padding-top: 10px; padding-bottom: 10px; font-family: Arial, sans-serif\"><![endif]-->\n <div\n style=\"\n color: #444445;\n font-family: Arial, Helvetica Neue, Helvetica,\n sans-serif;\n line-height: 1.8;\n padding-top: 10px;\n padding-right: 10px;\n padding-bottom: 10px;\n padding-left: 10px;\n \"\n >\n <div\n class=\"txtTinyMce-wrapper\"\n style=\"\n font-size: 14px;\n line-height: 1.8;\n color: #444445;\n font-family: Arial, Helvetica Neue, Helvetica,\n sans-serif;\n mso-line-height-alt: 25px;\n \"\n >\n <p\n style=\"\n margin: 0;\n font-size: 14px;\n line-height: 1.8;\n word-break: break-word;\n mso-line-height-alt: 25px;\n margin-top: 0;\n margin-bottom: 0;\n \"\n >\n <span style=\"font-size: 14px\"\n >Congratulations! You earned a cash reward in our {{programName}}. To\n receive your reward payment, log in to your account and submit your\n tax and payout information.</span\n >\n </p>\n </div>\n </div>\n <!--[if mso]></td></tr></table><![endif]-->\n <div\n align=\"center\"\n class=\"button-container\"\n style=\"\n padding-top: 10px;\n padding-right: 10px;\n padding-bottom: 10px;\n padding-left: 10px;\n \"\n >\n <!--[if mso]><table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" style=\"border-spacing: 0; border-collapse: collapse; mso-table-lspace:0pt; mso-table-rspace:0pt;\"><tr><td style=\"padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px\" align=\"center\"><v:roundrect xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:w=\"urn:schemas-microsoft-com:office:word\" target=\"_blank\" href={{validationLink}} style=\"height:31.5pt;width:390pt;v-text-anchor:middle;\" arcsize=\"12%\" stroke=\"false\" fillcolor=\"#2270ee\"><w:anchorlock/><v:textbox inset=\"0,0,0,0\"><center style=\"color:#ffffff; font-family:Arial, sans-serif; font-size:14px\"><!\n [endif]--><a\n href={{loginLink}}\n\t\t\t\t\t\t\ttarget=\"_blank\"\n style=\"\n -webkit-text-size-adjust: none;\n text-decoration: none;\n display: block;\n color: #ffffff;\n background-color: #2270ee;\n border-radius: 5px;\n -webkit-border-radius: 5px;\n -moz-border-radius: 5px;\n width: 100%;\n width: calc(100% - 2px);\n border-top: var(--sqm-border-thickness, 1px) solid #2270ee;\n border-right: var(--sqm-border-thickness, 1px) solid #2270ee;\n border-bottom: var(--sqm-border-thickness, 1px) solid #2270ee;\n border-left: var(--sqm-border-thickness, 1px) solid #2270ee;\n padding-top: 5px;\n padding-bottom: 5px;\n font-family: 'Helvetica Neue', Helvetica, Arial,\n sans-serif;\n text-align: center;\n mso-border-alt: none;\n word-break: keep-all;\n \"\n target=\"_blank\"\n ><span\n style=\"\n padding-left: 20px;\n padding-right: 20px;\n font-size: 14px;\n display: inline-block;\n letter-spacing: undefined;\n \"\n ><span\n style=\"\n font-size: 16px;\n line-height: 2;\n word-break: break-word;\n mso-line-height-alt: 32px;\n \"\n ><span\n style=\"font-size: 14px; line-height: 28px\"\n >Log In</span\n ></span\n ></span\n ></a\n >\n <!--[if mso]></center></v:textbox></v:roundrect></td></tr></table><![endif]-->\n </div>\n <!--<![endif]-->\n </div>\n </div>\n <!--[if (mso)|(IE)]></td></tr></table><![endif]-->\n <!--[if (mso)|(IE)]></td></tr></table></td></tr></table><![endif]-->\n </div>\n </div>\n </div>\n <!--[if (mso)|(IE)]></td></tr></table><![endif]-->\n </td>\n </tr>\n </tbody>\n </table>\n <!--[if (IE)]></div><![endif]-->\n </body>\n</html>";
|
|
1799
1799
|
|
|
@@ -10702,6 +10702,7 @@ const props$1 = {
|
|
|
10702
10702
|
iframeSrc: "https://example.com",
|
|
10703
10703
|
iframeHeight: "100%",
|
|
10704
10704
|
iframeWidth: "100%",
|
|
10705
|
+
codeParam: "rsCode",
|
|
10705
10706
|
},
|
|
10706
10707
|
},
|
|
10707
10708
|
};
|
|
@@ -10725,7 +10726,7 @@ const column = "@author:noah\n@owner:noah\nFeature: Referral Table User Column\n
|
|
|
10725
10726
|
|
|
10726
10727
|
const date = "@author:noah\n@owner:noah\nFeature: Referral Table Date Column\n\n Shows the date of each referral\n\n Background:\n Given the date column is included in the referral table\n\n @motivating\n @ui\n Scenario Outline: The title of the date column is configurable\n Given the \"column-title\" prop is set to <value>\n Then the date column is shown with <columTitle>\n Examples:\n | value | columnTitle |\n | | Date Converted |\n | My column title | My column title |\n\n @motivating\n Scenario Outline: A configurable date associated with the referral is shown for each referral\n Given the \"date-shown\" prop is set to <dateType>\n And referrals exist\n Then for each referral the <referralDate> is shown in the table\n And the date is localized to the users locale\n Examples:\n | dateType | referralDate |\n | dateReferralStarted | date referral started |\n | dateReferralPaid | date referral paid |\n | dateReferralEnded | date referral ended |\n | dateModerated | date moderated |\n | dateUserModified | date user modified |\n | dateConverted | date converted |\n | dateModified | date modified |\n | | date converted |";
|
|
10727
10728
|
|
|
10728
|
-
const rewards = "@author:noah @owner:noah\nFeature: Referral Table Reward Column\n Shows the reward associated with each referral\n\n Background: \n Given the status column is included in the referral table\n And at least one referral exists\n\n\n\n @motivating @ui\n Scenario Outline: The referral reward and its status are shown for each referral\n Then for each referral reward there exists a reward cell\n And the reward type and value is displayed in the cell\n And the status of each reward is displayed as a pill in the cell\n And rewards of <status> have a <pillColour> pill with the text <statusText>\n\n Examples: \n | status | pillColour | statusText |\n | Available | success | Available |\n | Pending | warning | Pending |\n | Pending Fraud Review | warning | Pending |\n | Pending Tax Review | warning | Pending |\n | Pending New Tax Form | warning | Pending |\n | Pending Tax Submission | warning | Pending |\n | Pending Partner Creation | warning | Pending |\n | Cancelled | danger | Cancelled |\n | Payout Overdue | danger | Payout Failed |\n | Payout Reversed | danger | Payout Cancelled |\n | Expired | danger | Expired |\n | Denied | danger | Denied |\n | Redeemed | primary | Redeemed |\n | Payout Transferred | primary | Payout Approved |\n | Payout Not Yet Due | primary | Payout Approved |\n | Payout Processing | primary | Payment Processing |\n\n @motivating\n Scenario: The pending period of a referral reward is shown inside the pill if scheduled\n Given a reward that is pending\n And the reward has a scheduled date in the future\n Then the status pill of the reward will contain the text \"Pending for <relativeTime>\"\n And the date is localized to the user's locale\n\n Examples: \n | relativeTime |\n | 2 days |\n | 1 week |\n | 3 months |\n\n @motivating\n Scenario: The expiry date of a reward is shown in a secondary pill\n Given a reward that is available\n And the reward has a set expiry date\n Then an additional info pill will appear next to the status pill with the text \"Expiring in <relativeTime>\"\n And the date is localized to the user's locale\n\n Examples: \n | relativeTime |\n | 2 days |\n | 1 week |\n\n @motivating @ui\n Scenario Outline: Expanding the reward cell shows specific detailed status messages\n When a reward cell is clicked\n Then it expands to show the detail view\n And if the reward status is <status>\n Then the detail text displays <detailMessage>\n\n Examples: Payout States\n | status | detailMessage |\n | Payout Approved | Processing until {date}. Payout is then scheduled based on your settings. |\n | Payout Failed | Payout failed due to a fulfillment issue and is currently being retried. |\n | Payout Cancelled | If you think this is a mistake, contact our Support team. |\n | Processing | Processing until {date}. Payout is then scheduled based on your settings. |\n\n Examples: Tax Compliance States\n | status | detailMessage |\n | Pending Tax Review | Awaiting tax form review |\n | Pending New Tax Form | Invalid tax form. Submit a new form to receive your rewards. |\n | Pending Tax Submission | Submit your tax documents to receive your rewards |\n | Pending Partner Creation | Complete your tax and cash payout setup to receive your rewards |\n\n Examples: Standard States\n | status | detailMessage |\n | Available | Reward expiring on |\n | Cancelled | Reward cancelled on |\n | Pending | Available on |\n | Pending Review | Pending since |\n | Denied | Denied on |\n | Expired | Reward expired on |\n | Redeemed | Redeemed |\n\n @motivating\n Scenario: Fuel Tank codes are displayed in the expanded view\n Given a reward has a Fuel Tank code\n When the reward cell is clicked\n Then the expanded details display the text \"Your code is\"\n And the code <fuelTankCode> is displayed in bold\n\n @motivating\n Scenario: Fraud denial help text is displayed\n Given a reward has been denied due to fraud\n And the component has \"deniedHelpText\" configured\n When the reward cell is clicked\n Then the expanded details display the denied help text next to the denial date\n\n @minutia\n Scenario: Payout-related reward statuses are determined by the state of the Paid Funds Transfer\n Given a reward exists\n And the reward has a connected Paid Funds Transfer (PFT)\n When the PFT is in <pftState>\n Then the reward's status is <status>\n And the status text displays <text>\n And the status is displayed in a <pillColour> pill\n\n Examples:\n | pftState | status | text | pillColour |\n | transfer date is in the future | PROCESSING | Payment Processing | primary |\n | successfully transferred to payment provider | PAYOUT_TRANSFERRED | Payout Approved | primary |\n | approved but payout scheduled date not yet arrived | PAYOUT_NOT_YET_DUE | Payout Approved | primary |\n | failed due to fulfillment issue and retrying | PAYOUT_OVERDUE | Payout Failed | danger |\n | reversed or cancelled after being processed | PAYOUT_REVERSED | Payout Cancelled | danger |\n";
|
|
10729
|
+
const rewards = "@author:noah @owner:noah\nFeature: Referral Table Reward Column\n Shows the reward associated with each referral\n\n Background:\n Given the status column is included in the referral table\n And at least one referral exists\n\n @motivating\n Scenario Outline: State precedence ladder\n Given a reward, its referral's fraud state, and the user's tax connection\n Then <rule> is produced\n And the <resultingState>, <resultingBadgeText>, and <resultingDescriptionBody> is determined in the following <order>:\n\n Examples:\n | order | rule | resultingState | resultingBadgeText | resultingDescriptionBody |\n | 1 | referral.fraudData.moderationStatus is \"DENIED\" | DENIED | Denied | Denied on Jan 1, 2026. Contact support. |\n | 2 | referral.fraudData.moderationStatus is \"PENDING\" | PENDING_REVIEW | Pending | Pending since Jan 1, 2026 |\n | 3 | reward.rewardedCash is true AND impactConnection is NOT connected | PENDING_PARTNER_CREATION | Pending | Complete your tax and cash payout setup to receive your rewards |\n | 4 | reward.rewardedCash is true AND impactConnection is connected AND publisher.withdrawalSettings is missing | PENDING_PARTNER_CREATION | Pending | Complete your tax and cash payout setup to receive your rewards |\n | 5 | partnerFundsTransfer.status is \"REVERSED\" | PAYOUT_CANCELLED | Payout Cancelled | If you think this is a mistake, contact our Support team. |\n | 6 | partnerFundsTransfer.status is \"OVERDUE\" | PAYOUT_FAILED | Payout Failed | Payout failed due to a fulfillment issue and is currently being retried. |\n | 7 | partnerFundsTransfer.dateScheduled is in the future | PROCESSING | Payment Processing | Processing until Jan 1, 2026. Payout is then scheduled based on your settings. |\n | 8 | partnerFundsTransfer.status is \"TRANSFERRED\" / \"NOT_YET_DUE\", or dateScheduled has passed without REVERSED/OVERDUE | PAYOUT_APPROVED | Payout Approved | Processing until Jan 1, 2026. Payout is then scheduled based on your settings. |\n | 9 | reward.pendingReasons includes \"US_TAX\" AND impactConnection.taxHandlingEnabled is false | PENDING | Pending | Available on Jan 1, 2026 (if dateScheduledFor set; else no body line) |\n | 10 | reward.pendingReasons includes \"US_TAX\" AND impactConnection.connected is false | PENDING_PARTNER_CREATION | Pending | Complete your tax and cash payout setup to receive your rewards |\n | 11 | reward.pendingReasons includes \"US_TAX\" AND publisher.requiredTaxDocumentType is set AND publisher.currentTaxDocument is missing | PENDING_TAX_SUBMISSION | Pending | Submit your tax documents to receive your rewards |\n | 12 | reward.pendingReasons includes \"US_TAX\" AND publisher.currentTaxDocument.status is \"INACTIVE\" / \"INVALID_W9_ELECTRONIC_DOCUMENT\" / \"INVALID_W9_ELECTRONIC_DOCUMENT_CHECK_INTERNAL\" | PENDING_NEW_TAX_FORM | Pending | Invalid tax form. Submit a new form to receive your rewards. |\n | 13 | reward.pendingReasons includes \"US_TAX\" AND publisher.currentTaxDocument.status is \"NOT_VERIFIED\" | PENDING_TAX_REVIEW | Pending | Awaiting tax form review |\n | 14 | reward.pendingReasons includes \"US_TAX\" AND publisher.currentTaxDocument.status is \"ACTIVE\" AND publisher.withdrawalSettings missing | PENDING_PARTNER_CREATION | Pending | Complete your tax and cash payout setup to receive your rewards |\n | 15 | reward.pendingReasons includes \"MISSING_PAYOUT_CONFIGURATION\" | PENDING_PARTNER_CREATION | Pending | Complete your tax and cash payout setup to receive your rewards |\n | 16 | statuses includes \"REDEEMED\" | REDEEMED | Redeemed | (no state-specific body line) |\n | 17 | statuses includes \"CANCELLED\" | CANCELLED | Cancelled | Reward cancelled on Jan 1, 2026 |\n | 18 | statuses includes \"EXPIRED\" | EXPIRED | Expired | Reward expired on Jan 1, 2026 |\n | 19 | statuses includes \"PENDING\" | PENDING | Pending (or \"Pending for {date}\" overlay if dateScheduledFor set) | Available on Jan 1, 2026 (if dateScheduledFor set; else no body line) |\n | 20 | statuses includes \"AVAILABLE\" | AVAILABLE | Available (plus info pill \"{expiringText} {relative}\" if dateExpires set) | Reward expiring on Jan 1, 2026 |\n\n @motivating @ui\n Scenario Outline: The referral reward and its status are shown for each referral\n Then for each referral reward there exists a reward cell\n And the reward type and value is displayed in the cell\n And the status of each reward is displayed as a pill in the cell\n And rewards of <status> have a <pillColour> pill with the text <statusText>\n\n Examples:\n | status | pillColour | statusText |\n | Available | success | Available |\n | Pending | warning | Pending |\n | Pending Fraud Review | warning | Pending |\n | Pending Tax Review | warning | Pending |\n | Pending New Tax Form | warning | Pending |\n | Pending Tax Submission | warning | Pending |\n | Pending Partner Creation | warning | Pending |\n | Cancelled | danger | Cancelled |\n | Payout Overdue | danger | Payout Failed |\n | Payout Reversed | danger | Payout Cancelled |\n | Expired | danger | Expired |\n | Denied | danger | Denied |\n | Redeemed | primary | Redeemed |\n | Payout Transferred | primary | Payout Approved |\n | Payout Not Yet Due | primary | Payout Approved |\n | Payout Processing | primary | Payment Processing |\n\n @motivating\n Scenario: The pending period of a referral reward is shown inside the pill if scheduled\n Given a reward that is pending\n And the reward has a scheduled date in the future\n Then the status pill of the reward will contain the text \"Pending for <relativeTime>\"\n And the date is localized to the user's locale\n\n Examples:\n | relativeTime |\n | 2 days |\n | 1 week |\n | 3 months |\n\n @motivating\n Scenario: The expiry date of a reward is shown in a secondary pill\n Given a reward that is available\n And the reward has a set expiry date\n Then an additional info pill will appear next to the status pill with the text \"Expiring in <relativeTime>\"\n And the date is localized to the user's locale\n\n Examples:\n | relativeTime |\n | 2 days |\n | 1 week |\n\n @motivating @ui\n Scenario Outline: Expanding the reward cell shows specific detailed status messages\n When a reward cell is clicked\n Then it expands to show the detail view\n And if the reward status is <status>\n Then the detail text displays <detailMessage>\n\n Examples: Payout States\n | status | detailMessage |\n | Payout Approved | Processing until {date}. Payout is then scheduled based on your settings. |\n | Payout Failed | Payout failed due to a fulfillment issue and is currently being retried. |\n | Payout Cancelled | If you think this is a mistake, contact our Support team. |\n | Processing | Processing until {date}. Payout is then scheduled based on your settings. |\n\n Examples: Tax Compliance States\n | status | detailMessage |\n | Pending Tax Review | Awaiting tax form review |\n | Pending New Tax Form | Invalid tax form. Submit a new form to receive your rewards. |\n | Pending Tax Submission | Submit your tax documents to receive your rewards |\n | Pending Partner Creation | Complete your tax and cash payout setup to receive your rewards |\n\n Examples: Standard States\n | status | detailMessage |\n | Available | Reward expiring on |\n | Cancelled | Reward cancelled on |\n | Pending | Available on |\n | Pending Review | Pending since |\n | Denied | Denied on |\n | Expired | Reward expired on |\n | Redeemed | Redeemed |\n\n @motivating\n Scenario: Fuel Tank codes are displayed in the expanded view\n Given a reward has a Fuel Tank code\n When the reward cell is clicked\n Then the expanded details display the text \"Your code is\"\n And the code <fuelTankCode> is displayed in bold\n\n @motivating\n Scenario: Fraud denial help text is displayed\n Given a reward has been denied due to fraud\n And the component has \"deniedHelpText\" configured\n When the reward cell is clicked\n Then the expanded details display the denied help text next to the denial date\n\n @minutia\n Scenario: Payout-related reward statuses are determined by the state of the Paid Funds Transfer\n Given a reward exists\n And the reward has a connected Paid Funds Transfer (PFT)\n When the PFT is in <pftState>\n Then the reward's status is <status>\n And the status text displays <text>\n And the status is displayed in a <pillColour> pill\n\n Examples:\n | pftState | status | text | pillColour |\n | transfer date is in the future | PROCESSING | Payment Processing | primary |\n | successfully transferred to payment provider | PAYOUT_TRANSFERRED | Payout Approved | primary |\n | approved but payout scheduled date not yet arrived | PAYOUT_NOT_YET_DUE | Payout Approved | primary |\n | failed due to fulfillment issue and retrying | PAYOUT_OVERDUE | Payout Failed | danger |\n | reversed or cancelled after being processed | PAYOUT_REVERSED | Payout Cancelled | danger |\n";
|
|
10729
10730
|
|
|
10730
10731
|
const status = "@author:noah\n@owner:noah\nFeature: Referral Table Status Column\n\n Shows the status of each referral\n\n Background:\n Given the status column is included in the referral table\n\n @motivating\n @ui\n Scenario: The title of the date column is configurable\n Given the \"column-title\" prop is set to \"My column title\"\n Then the date column is shown with \"My column title\"\n\n @motivating\n Scenario: The status column's fraudStatus maps to the fraud status of the referral\n Given at least one referral\n Then the referral cell fraud status is set to `moderationStatus` of the referral\n\n @motivating\n Scenario Outline: The status column displays the status of each referral\n Given referrals exist\n Then the status of each referral is displayed\n And the status <status> is displayed as text from <statusTextProp> in a <pillColour> pill\n\n Examples:\n | status | statusTextProp | pillColour |\n | In Progress | inProgressStatusText | Orange |\n | Converted | convertedStatusText | Green |\n | Pending | pendingReviewStatusText | Orange |\n | Denied | deniedStatusText | Red |\n";
|
|
10731
10732
|
|
|
@@ -10892,6 +10893,7 @@ const cashPayoutSentReward = {
|
|
|
10892
10893
|
statuses: ["AVAILABLE"],
|
|
10893
10894
|
globalRewardKey: "Key",
|
|
10894
10895
|
rewardRedemptionTransactions: null,
|
|
10896
|
+
rewardedCash: true,
|
|
10895
10897
|
};
|
|
10896
10898
|
const nullExpiresIn = {
|
|
10897
10899
|
dateExpires: null,
|
|
@@ -11253,6 +11255,7 @@ const baseReward$1 = {
|
|
|
11253
11255
|
},
|
|
11254
11256
|
],
|
|
11255
11257
|
},
|
|
11258
|
+
rewardedCash: false,
|
|
11256
11259
|
};
|
|
11257
11260
|
// Reward Status Cases
|
|
11258
11261
|
const pendingReward$1 = {
|
|
@@ -11807,205 +11810,274 @@ const ReferralTable = /*#__PURE__*/Object.freeze({
|
|
|
11807
11810
|
const TaxAndCashReferralTableRewardsCell_stories = {
|
|
11808
11811
|
title: "Components/Tax And Cash Referral Table Rewards Cell",
|
|
11809
11812
|
};
|
|
11810
|
-
|
|
11811
|
-
|
|
11812
|
-
|
|
11813
|
-
function getMonths$1() {
|
|
11814
|
-
return luxon.DateTime.now().toMillis() + 10000000000;
|
|
11815
|
-
}
|
|
11813
|
+
// Reusable timestamps (current date is May 2026)
|
|
11814
|
+
const PAST = 1640995200000; // Jan 1, 2022
|
|
11815
|
+
const FUTURE = 2779257600000; // ~2058
|
|
11816
11816
|
const cashReward = {
|
|
11817
11817
|
id: "1234",
|
|
11818
11818
|
type: "CREDIT",
|
|
11819
11819
|
value: 50,
|
|
11820
11820
|
unit: "USD",
|
|
11821
11821
|
name: "test",
|
|
11822
|
-
dateScheduledFor:
|
|
11823
|
-
dateExpires:
|
|
11824
|
-
dateCancelled:
|
|
11825
|
-
dateRedeemed:
|
|
11822
|
+
dateScheduledFor: null,
|
|
11823
|
+
dateExpires: null,
|
|
11824
|
+
dateCancelled: null,
|
|
11825
|
+
dateRedeemed: null,
|
|
11826
11826
|
fuelTankCode: null,
|
|
11827
11827
|
fuelTankType: null,
|
|
11828
11828
|
currency: "USD",
|
|
11829
11829
|
prettyValue: "$50.00",
|
|
11830
|
-
statuses: [
|
|
11830
|
+
statuses: [],
|
|
11831
11831
|
globalRewardKey: "Key",
|
|
11832
11832
|
rewardRedemptionTransactions: null,
|
|
11833
11833
|
partnerFundsTransfer: null,
|
|
11834
|
+
rewardedCash: true,
|
|
11834
11835
|
};
|
|
11835
|
-
|
|
11836
|
+
// ============================================================
|
|
11837
|
+
// Reusable tax connections
|
|
11838
|
+
// ============================================================
|
|
11839
|
+
const fullySetupTaxConnection = {
|
|
11836
11840
|
connected: true,
|
|
11837
11841
|
taxHandlingEnabled: true,
|
|
11838
11842
|
publisher: {
|
|
11839
11843
|
requiredTaxDocumentType: "W9",
|
|
11844
|
+
currentTaxDocument: {
|
|
11845
|
+
status: "ACTIVE",
|
|
11846
|
+
type: "W9",
|
|
11847
|
+
dateCreated: PAST,
|
|
11848
|
+
},
|
|
11840
11849
|
withdrawalSettings: { paymentMethod: "BANK_TRANSFER" },
|
|
11841
11850
|
payoutsAccount: null,
|
|
11851
|
+
},
|
|
11852
|
+
};
|
|
11853
|
+
const connectedNoWithdrawalSettings = {
|
|
11854
|
+
connected: true,
|
|
11855
|
+
taxHandlingEnabled: true,
|
|
11856
|
+
publisher: {
|
|
11857
|
+
requiredTaxDocumentType: "W9",
|
|
11842
11858
|
currentTaxDocument: {
|
|
11843
11859
|
status: "ACTIVE",
|
|
11844
11860
|
type: "W9",
|
|
11845
|
-
dateCreated:
|
|
11861
|
+
dateCreated: PAST,
|
|
11846
11862
|
},
|
|
11863
|
+
withdrawalSettings: null,
|
|
11864
|
+
payoutsAccount: null,
|
|
11847
11865
|
},
|
|
11848
11866
|
};
|
|
11849
|
-
const
|
|
11850
|
-
|
|
11851
|
-
|
|
11852
|
-
|
|
11853
|
-
dateScheduled: null,
|
|
11854
|
-
dateTransferred: null,
|
|
11855
|
-
};
|
|
11856
|
-
const defaultTaxDocument = {
|
|
11857
|
-
status: "NOT_VERIFIED",
|
|
11858
|
-
type: "W9",
|
|
11859
|
-
dateCreated: luxon.DateTime.now().toMillis() - 1000000,
|
|
11867
|
+
const notConnectedTaxConnection = {
|
|
11868
|
+
connected: false,
|
|
11869
|
+
taxHandlingEnabled: true,
|
|
11870
|
+
publisher: null,
|
|
11860
11871
|
};
|
|
11861
11872
|
const defaultProps$o = {
|
|
11862
11873
|
statusText: "{status, select, AVAILABLE {Available} CANCELLED {Cancelled} PENDING {Pending} PENDING_REVIEW {Pending} PAYOUT_APPROVED {Payout Approved} PROCESSING {Payment Processing} PAYOUT_FAILED {Payout Failed} PAYOUT_CANCELLED {Payout Cancelled} PENDING_TAX_REVIEW {Pending} PENDING_NEW_TAX_FORM {Pending} PENDING_TAX_SUBMISSION {Pending} PENDING_PARTNER_CREATION {Pending} DENIED {Denied} EXPIRED {Expired} REDEEMED {Redeemed} other {Not available} }",
|
|
11863
|
-
statusLongText: "{status, select, AVAILABLE {Reward expiring on} CANCELLED {Reward cancelled on} PENDING {Available on} PENDING_REVIEW {Pending since} PAYOUT_APPROVED {Processing until {scheduledPayoutDate}. Payout is then scheduled based on your settings.} PAYOUT_FAILED {Payout failed due to a fulfillment issue and is currently being retried.} PAYOUT_CANCELLED {If you think this is a mistake, contact our Support team.} PENDING_TAX_REVIEW {Awaiting tax form review} PENDING_NEW_TAX_FORM {Invalid tax form. Submit a new form to receive your rewards.} PROCESSING {Processing until {scheduledPayoutDate}. Payout is then scheduled based on your settings.} PENDING_TAX_SUBMISSION {Submit your tax documents to receive your rewards} PENDING_PARTNER_CREATION {Complete
|
|
11874
|
+
statusLongText: "{status, select, AVAILABLE {Reward expiring on} CANCELLED {Reward cancelled on} PENDING {Available on} PENDING_REVIEW {Pending since} PAYOUT_APPROVED {Processing until {scheduledPayoutDate}. Payout is then scheduled based on your settings.} PAYOUT_FAILED {Payout failed due to a fulfillment issue and is currently being retried.} PAYOUT_CANCELLED {If you think this is a mistake, contact our Support team.} PENDING_TAX_REVIEW {Awaiting tax form review} PENDING_NEW_TAX_FORM {Invalid tax form. Submit a new form to receive your rewards.} PROCESSING {Processing until {scheduledPayoutDate}. Payout is then scheduled based on your settings.} PENDING_TAX_SUBMISSION {Submit your tax documents to receive your rewards} PENDING_PARTNER_CREATION {Complete cash payout setup to receive your rewards} DENIED {Denied on} EXPIRED {Reward expired on} other {Not available} }",
|
|
11864
11875
|
rewardReceivedText: "Reward received on",
|
|
11865
11876
|
hideDetails: false,
|
|
11866
11877
|
};
|
|
11867
|
-
|
|
11868
|
-
|
|
11869
|
-
|
|
11870
|
-
|
|
11871
|
-
|
|
11872
|
-
|
|
11873
|
-
|
|
11874
|
-
|
|
11875
|
-
|
|
11876
|
-
|
|
11877
|
-
|
|
11878
|
-
|
|
11879
|
-
|
|
11880
|
-
|
|
11881
|
-
|
|
11882
|
-
|
|
11883
|
-
|
|
11884
|
-
|
|
11885
|
-
|
|
11886
|
-
|
|
11887
|
-
|
|
11888
|
-
|
|
11889
|
-
|
|
11890
|
-
|
|
11891
|
-
|
|
11892
|
-
|
|
11893
|
-
|
|
11894
|
-
|
|
11895
|
-
|
|
11896
|
-
|
|
11897
|
-
...cashReward,
|
|
11898
|
-
partnerFundsTransfer: {
|
|
11899
|
-
...defaultPFT,
|
|
11900
|
-
status: "OVERDUE",
|
|
11901
|
-
dateScheduled: Date.now() - 100000,
|
|
11902
|
-
},
|
|
11903
|
-
},
|
|
11904
|
-
], taxConnection: taxConnection }, defaultProps$o)));
|
|
11905
|
-
};
|
|
11906
|
-
const PayoutCancelled$1 = () => {
|
|
11907
|
-
return (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11908
|
-
{
|
|
11909
|
-
...cashReward,
|
|
11910
|
-
partnerFundsTransfer: {
|
|
11911
|
-
...defaultPFT,
|
|
11912
|
-
status: "REVERSED",
|
|
11913
|
-
dateScheduled: Date.now() - 100000,
|
|
11914
|
-
},
|
|
11915
|
-
},
|
|
11916
|
-
], taxConnection: taxConnection }, defaultProps$o)));
|
|
11917
|
-
};
|
|
11918
|
-
const PendingTaxReview$1 = () => {
|
|
11919
|
-
return (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11920
|
-
{
|
|
11921
|
-
...cashReward,
|
|
11922
|
-
statuses: ["PENDING"],
|
|
11923
|
-
pendingReasons: ["US_TAX"],
|
|
11924
|
-
},
|
|
11925
|
-
], taxConnection: {
|
|
11926
|
-
...taxConnection,
|
|
11927
|
-
publisher: {
|
|
11928
|
-
...taxConnection.publisher,
|
|
11929
|
-
currentTaxDocument: {
|
|
11930
|
-
...defaultTaxDocument,
|
|
11931
|
-
status: "NOT_VERIFIED",
|
|
11932
|
-
},
|
|
11933
|
-
},
|
|
11934
|
-
} }, defaultProps$o)));
|
|
11935
|
-
};
|
|
11936
|
-
const PendingNewTaxForm$1 = () => {
|
|
11937
|
-
return (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11938
|
-
{
|
|
11939
|
-
...cashReward,
|
|
11940
|
-
statuses: ["PENDING"],
|
|
11941
|
-
pendingReasons: ["US_TAX"],
|
|
11878
|
+
// ============================================================
|
|
11879
|
+
// STATE PRECEDENCE LADDER — one story per rule
|
|
11880
|
+
// (See referral-table-rewards-column-new.feature § 2)
|
|
11881
|
+
// ============================================================
|
|
11882
|
+
// 1. Fraud check denied the referral → state is DENIED
|
|
11883
|
+
const RewardsCellFraudDenied = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11884
|
+
{
|
|
11885
|
+
...cashReward,
|
|
11886
|
+
referral: { fraudData: { moderationStatus: "DENIED" } },
|
|
11887
|
+
},
|
|
11888
|
+
], taxConnection: fullySetupTaxConnection }, defaultProps$o)));
|
|
11889
|
+
// 2. Fraud check is still pending review → state is PENDING_REVIEW
|
|
11890
|
+
const RewardsCellFraudPendingReview = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11891
|
+
{
|
|
11892
|
+
...cashReward,
|
|
11893
|
+
referral: { fraudData: { moderationStatus: "PENDING" } },
|
|
11894
|
+
},
|
|
11895
|
+
], taxConnection: fullySetupTaxConnection }, defaultProps$o)));
|
|
11896
|
+
// 3a. Cash reward but the user has not connected an Impact partner → shows the partner-setup prompt
|
|
11897
|
+
const RewardsCellPartnerNotCreatedSetupNotStarted = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [{ ...cashReward, statuses: ["AVAILABLE"] }], taxConnection: notConnectedTaxConnection }, defaultProps$o)));
|
|
11898
|
+
// 3b. Cash reward, partner is connected but withdrawal settings are missing → shows the partner-setup prompt
|
|
11899
|
+
const RewardsCellPartnerCreatedSetupStartedButIncomplete = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11900
|
+
{
|
|
11901
|
+
...cashReward,
|
|
11902
|
+
partnerFundsTransfer: {
|
|
11903
|
+
id: "pft-not-yet-due",
|
|
11904
|
+
status: "NOT_YET_DUE",
|
|
11905
|
+
dateCreated: PAST,
|
|
11906
|
+
dateScheduled: FUTURE,
|
|
11907
|
+
dateTransferred: null,
|
|
11942
11908
|
},
|
|
11943
|
-
|
|
11944
|
-
|
|
11945
|
-
|
|
11946
|
-
|
|
11947
|
-
|
|
11948
|
-
|
|
11949
|
-
|
|
11950
|
-
|
|
11909
|
+
},
|
|
11910
|
+
], taxConnection: connectedNoWithdrawalSettings }, defaultProps$o)));
|
|
11911
|
+
// 4. Partner funds transfer was reversed → state is PAYOUT_CANCELLED
|
|
11912
|
+
const RewardsCellPayoutCancelled = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11913
|
+
{
|
|
11914
|
+
...cashReward,
|
|
11915
|
+
partnerFundsTransfer: {
|
|
11916
|
+
id: "pft-reversed",
|
|
11917
|
+
status: "REVERSED",
|
|
11918
|
+
dateCreated: PAST,
|
|
11919
|
+
dateScheduled: PAST,
|
|
11920
|
+
dateTransferred: null,
|
|
11951
11921
|
},
|
|
11952
|
-
}
|
|
11953
|
-
};
|
|
11954
|
-
|
|
11955
|
-
|
|
11956
|
-
|
|
11957
|
-
|
|
11958
|
-
|
|
11959
|
-
|
|
11922
|
+
},
|
|
11923
|
+
], taxConnection: fullySetupTaxConnection }, defaultProps$o)));
|
|
11924
|
+
// 5. Partner funds transfer is overdue → state is PAYOUT_FAILED
|
|
11925
|
+
const RewardsCellPayoutFailed = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11926
|
+
{
|
|
11927
|
+
...cashReward,
|
|
11928
|
+
partnerFundsTransfer: {
|
|
11929
|
+
id: "pft-overdue",
|
|
11930
|
+
status: "OVERDUE",
|
|
11931
|
+
dateCreated: PAST,
|
|
11932
|
+
dateScheduled: PAST,
|
|
11933
|
+
dateTransferred: null,
|
|
11960
11934
|
},
|
|
11961
|
-
|
|
11962
|
-
|
|
11963
|
-
|
|
11964
|
-
|
|
11965
|
-
|
|
11935
|
+
},
|
|
11936
|
+
], taxConnection: fullySetupTaxConnection }, defaultProps$o)));
|
|
11937
|
+
// 6. Partner funds transfer is scheduled for a future date → state is PROCESSING
|
|
11938
|
+
const RewardsCellPayoutProcessing = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11939
|
+
{
|
|
11940
|
+
...cashReward,
|
|
11941
|
+
partnerFundsTransfer: {
|
|
11942
|
+
id: "pft-processing",
|
|
11943
|
+
status: null,
|
|
11944
|
+
dateCreated: PAST,
|
|
11945
|
+
dateScheduled: FUTURE,
|
|
11946
|
+
dateTransferred: null,
|
|
11966
11947
|
},
|
|
11967
|
-
}
|
|
11968
|
-
};
|
|
11969
|
-
|
|
11970
|
-
|
|
11971
|
-
|
|
11972
|
-
|
|
11973
|
-
|
|
11974
|
-
|
|
11948
|
+
},
|
|
11949
|
+
], taxConnection: fullySetupTaxConnection }, defaultProps$o)));
|
|
11950
|
+
// 7. Partner funds transfer has been transferred → state is PAYOUT_APPROVED
|
|
11951
|
+
const RewardsCellPayoutApproved = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11952
|
+
{
|
|
11953
|
+
...cashReward,
|
|
11954
|
+
partnerFundsTransfer: {
|
|
11955
|
+
id: "pft-transferred",
|
|
11956
|
+
status: "TRANSFERRED",
|
|
11957
|
+
dateCreated: PAST,
|
|
11958
|
+
dateScheduled: PAST,
|
|
11959
|
+
dateTransferred: PAST,
|
|
11975
11960
|
},
|
|
11976
|
-
|
|
11977
|
-
|
|
11978
|
-
|
|
11979
|
-
|
|
11980
|
-
|
|
11981
|
-
|
|
11982
|
-
|
|
11983
|
-
|
|
11984
|
-
|
|
11985
|
-
|
|
11986
|
-
|
|
11961
|
+
},
|
|
11962
|
+
], taxConnection: fullySetupTaxConnection }, defaultProps$o)));
|
|
11963
|
+
// 8. Reward is pending US_TAX but tax handling is disabled → state is PENDING (W-9 required)
|
|
11964
|
+
const RewardsCellPendingW9Required = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11965
|
+
{
|
|
11966
|
+
...cashReward,
|
|
11967
|
+
statuses: ["PENDING"],
|
|
11968
|
+
pendingReasons: ["US_TAX"],
|
|
11969
|
+
},
|
|
11970
|
+
], taxConnection: { ...fullySetupTaxConnection, taxHandlingEnabled: false } }, defaultProps$o)));
|
|
11971
|
+
// 9. Reward is pending US_TAX and the partner is not connected → shows the partner-setup prompt
|
|
11972
|
+
const RewardsCellUsTaxPartnerNotConnected = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11973
|
+
{
|
|
11974
|
+
...cashReward,
|
|
11975
|
+
statuses: ["PENDING"],
|
|
11976
|
+
pendingReasons: ["US_TAX"],
|
|
11977
|
+
},
|
|
11978
|
+
], taxConnection: notConnectedTaxConnection }, defaultProps$o)));
|
|
11979
|
+
// 10. Partner is connected but has not submitted any tax documents → shows the submit-tax-docs prompt
|
|
11980
|
+
const RewardsCellPendingTaxSubmission = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11981
|
+
{
|
|
11982
|
+
...cashReward,
|
|
11983
|
+
statuses: ["PENDING"],
|
|
11984
|
+
pendingReasons: ["US_TAX"],
|
|
11985
|
+
},
|
|
11986
|
+
], taxConnection: {
|
|
11987
|
+
...fullySetupTaxConnection,
|
|
11988
|
+
publisher: {
|
|
11989
|
+
...fullySetupTaxConnection.publisher,
|
|
11990
|
+
currentTaxDocument: null,
|
|
11991
|
+
},
|
|
11992
|
+
} }, defaultProps$o)));
|
|
11993
|
+
// 11. Partner's tax document is inactive (rejected) → shows the submit-a-new-form prompt
|
|
11994
|
+
const RewardsCellPendingNewTaxForm = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
11995
|
+
{
|
|
11996
|
+
...cashReward,
|
|
11997
|
+
statuses: ["PENDING"],
|
|
11998
|
+
pendingReasons: ["US_TAX"],
|
|
11999
|
+
},
|
|
12000
|
+
], taxConnection: {
|
|
12001
|
+
...fullySetupTaxConnection,
|
|
12002
|
+
publisher: {
|
|
12003
|
+
...fullySetupTaxConnection.publisher,
|
|
12004
|
+
currentTaxDocument: {
|
|
12005
|
+
status: "INACTIVE",
|
|
12006
|
+
type: "W9",
|
|
12007
|
+
dateCreated: PAST,
|
|
11987
12008
|
},
|
|
11988
|
-
|
|
11989
|
-
|
|
11990
|
-
|
|
11991
|
-
|
|
11992
|
-
|
|
11993
|
-
|
|
11994
|
-
|
|
11995
|
-
|
|
11996
|
-
|
|
11997
|
-
|
|
11998
|
-
|
|
12009
|
+
},
|
|
12010
|
+
} }, defaultProps$o)));
|
|
12011
|
+
// 12. Partner's tax document is awaiting verification → shows the awaiting-review prompt
|
|
12012
|
+
const RewardsCellPendingTaxReview = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
12013
|
+
{
|
|
12014
|
+
...cashReward,
|
|
12015
|
+
statuses: ["PENDING"],
|
|
12016
|
+
pendingReasons: ["US_TAX"],
|
|
12017
|
+
},
|
|
12018
|
+
], taxConnection: {
|
|
12019
|
+
...fullySetupTaxConnection,
|
|
12020
|
+
publisher: {
|
|
12021
|
+
...fullySetupTaxConnection.publisher,
|
|
12022
|
+
currentTaxDocument: {
|
|
12023
|
+
status: "NOT_VERIFIED",
|
|
12024
|
+
type: "W9",
|
|
12025
|
+
dateCreated: PAST,
|
|
11999
12026
|
},
|
|
12000
|
-
|
|
12001
|
-
|
|
12002
|
-
|
|
12003
|
-
|
|
12004
|
-
|
|
12027
|
+
},
|
|
12028
|
+
} }, defaultProps$o)));
|
|
12029
|
+
// 13. Partner has an active tax form but has not configured withdrawal settings → shows the partner-setup prompt
|
|
12030
|
+
const RewardsCellExistingTaxFormNoWithdrawalSettings = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
12031
|
+
{
|
|
12032
|
+
...cashReward,
|
|
12033
|
+
statuses: ["PENDING"],
|
|
12034
|
+
pendingReasons: ["US_TAX"],
|
|
12035
|
+
},
|
|
12036
|
+
], taxConnection: connectedNoWithdrawalSettings }, defaultProps$o)));
|
|
12037
|
+
// 14. Reward has MISSING_PAYOUT_CONFIGURATION pending reason → shows the partner-setup prompt
|
|
12038
|
+
const RewardsCellMissingPayoutConfiguration = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [
|
|
12039
|
+
{
|
|
12040
|
+
...cashReward,
|
|
12041
|
+
statuses: ["PENDING"],
|
|
12042
|
+
pendingReasons: ["MISSING_PAYOUT_CONFIGURATION"],
|
|
12043
|
+
},
|
|
12044
|
+
], taxConnection: connectedNoWithdrawalSettings }, defaultProps$o)));
|
|
12045
|
+
// 18. Reward does not match any precedence rule → state is undefined (Not available)
|
|
12046
|
+
const RewardsCellNoMatchingRule = () => (h("sqm-referral-table-rewards-cell", Object.assign({ rewards: [{ ...cashReward, statuses: [] }], taxConnection: fullySetupTaxConnection }, defaultProps$o)));
|
|
12047
|
+
// ============================================================
|
|
12048
|
+
// Aliases kept for backwards compatibility with existing references
|
|
12049
|
+
// ============================================================
|
|
12050
|
+
const CashReward = RewardsCellPayoutApproved;
|
|
12051
|
+
const PayoutApproved = RewardsCellPayoutApproved;
|
|
12052
|
+
const PayoutProcessing = RewardsCellPayoutProcessing;
|
|
12053
|
+
const PayoutFailed$1 = RewardsCellPayoutFailed;
|
|
12054
|
+
const PayoutCancelled$1 = RewardsCellPayoutCancelled;
|
|
12055
|
+
const PendingTaxReview$1 = RewardsCellPendingTaxReview;
|
|
12056
|
+
const PendingNewTaxForm$1 = RewardsCellPendingNewTaxForm;
|
|
12057
|
+
const PendingTaxSubmission$1 = RewardsCellPendingTaxSubmission;
|
|
12058
|
+
const PartnerNotCreatedSetupNotStarted = RewardsCellPartnerNotCreatedSetupNotStarted;
|
|
12059
|
+
const PartnerCreatedSetupStartedButIncomplete = RewardsCellPartnerCreatedSetupStartedButIncomplete;
|
|
12060
|
+
const PendingW9 = RewardsCellPendingW9Required;
|
|
12005
12061
|
|
|
12006
12062
|
const TaxAndCashReferralTableRewardsCell = /*#__PURE__*/Object.freeze({
|
|
12007
12063
|
__proto__: null,
|
|
12008
12064
|
'default': TaxAndCashReferralTableRewardsCell_stories,
|
|
12065
|
+
RewardsCellFraudDenied: RewardsCellFraudDenied,
|
|
12066
|
+
RewardsCellFraudPendingReview: RewardsCellFraudPendingReview,
|
|
12067
|
+
RewardsCellPartnerNotCreatedSetupNotStarted: RewardsCellPartnerNotCreatedSetupNotStarted,
|
|
12068
|
+
RewardsCellPartnerCreatedSetupStartedButIncomplete: RewardsCellPartnerCreatedSetupStartedButIncomplete,
|
|
12069
|
+
RewardsCellPayoutCancelled: RewardsCellPayoutCancelled,
|
|
12070
|
+
RewardsCellPayoutFailed: RewardsCellPayoutFailed,
|
|
12071
|
+
RewardsCellPayoutProcessing: RewardsCellPayoutProcessing,
|
|
12072
|
+
RewardsCellPayoutApproved: RewardsCellPayoutApproved,
|
|
12073
|
+
RewardsCellPendingW9Required: RewardsCellPendingW9Required,
|
|
12074
|
+
RewardsCellUsTaxPartnerNotConnected: RewardsCellUsTaxPartnerNotConnected,
|
|
12075
|
+
RewardsCellPendingTaxSubmission: RewardsCellPendingTaxSubmission,
|
|
12076
|
+
RewardsCellPendingNewTaxForm: RewardsCellPendingNewTaxForm,
|
|
12077
|
+
RewardsCellPendingTaxReview: RewardsCellPendingTaxReview,
|
|
12078
|
+
RewardsCellExistingTaxFormNoWithdrawalSettings: RewardsCellExistingTaxFormNoWithdrawalSettings,
|
|
12079
|
+
RewardsCellMissingPayoutConfiguration: RewardsCellMissingPayoutConfiguration,
|
|
12080
|
+
RewardsCellNoMatchingRule: RewardsCellNoMatchingRule,
|
|
12009
12081
|
CashReward: CashReward,
|
|
12010
12082
|
PayoutApproved: PayoutApproved,
|
|
12011
12083
|
PayoutProcessing: PayoutProcessing,
|
|
@@ -12436,7 +12508,7 @@ const scenario2 = "@author:derek\n@owner:derek\nFeature: Reward Table reward Col
|
|
|
12436
12508
|
|
|
12437
12509
|
const scenario4 = "@author:derek @owner:derek\nFeature: Reward Table Source Column\n Shows the source of each reward\n\n @motivating @ui\n Scenario Outline: The title of the source column is configurable\n Given the \"column-title\" prop is set to <value>\n Then the source column is shown with <columnTitle>\n\n Examples:\n | value | columnTitle |\n | Source | |\n | My column title | My column title |\n\n @motivating @ui\n Scenario: The source column displays manual if the reward is caused by a manual action\n Given a user with a \"MANUAL\" reward\n When they view the rewards table\n Then the source of their reward is displayed as \"Manual\"\n\n @motivating @ui\n Scenario: The source column displays the program name if the reward is caused automatically by a program\n Given a user with a \"AUTOMATED\" program reward\n And the program has name \"Loyalty Program\"\n When they view the rewards table\n Then the source of their reward is displayed as \"Loyalty Program\"\n\n @motivating @ui\n Scenario Outline: The source column displays customizable reward exchange text with amount if the reward is caused by reward exchange\n Given the \"reward-exchange-text\" prop is <propValue>\n And a user with a \"MANUAL\" reward\n But it was created by a reward exchange\n Then they view the rewards table\n Then the source displays <exchangeText>\n And under it displays the following\n | prettyRedeemedCredit → prettyValue |\n\n Examples:\n | propValue | exchangeText |\n | | Reward Exchange |\n | Exchanged | Exchanged |\n\n @motivating @ui\n Scenario Outline: The source column displays customizable referral information if the reward is from a referral\n Given the \"reward-source-text\" prop is <propValue>\n And a user with a referral reward\n And that reward has <rewardSource>\n When they view the rewards table\n Then then source displays <referralText>\n And under it displays the full name of the <referralUser>\n\n Examples:\n | propValue | rewardSource | referralText | referralUser |\n | | REFERRED | Referred by | referrer user |\n | | FRIEND_SIGNUP | Referral to | referred user |\n | {rewardSource, select, FRIEND_SIGNUP {You Referred} REFERRED {Referred you} other {}} | REFERRED | Referred you | referrer user |\n | {rewardSource, select, FRIEND_SIGNUP {You Referred} REFERRED {Referred you} other {}} | FRIEND_SIGNUP | You Referred | referred user |\n\n @motivating @ui\n Scenario Outline: The source column displays the existing name for a referral if either the first name or last name does not exist\n Given a user with a referral reward\n And referral user exists\n And referral user has <name>\n But referral user has no <otherName>\n When they view the rewards table\n Then referral user's name is displayed as <name>\n\n Examples:\n | name | otherName |\n | first.name | last.name |\n | last.name | first.name |\n\n @motivating @ui\n Scenario Outline: The source column displays referral as \"Your Friend\" if the referral user has no names\n Given a user with a referral reward\n And that reward has <rewardSource>\n And the <referralUser> has no first name\n And the <referralUser> has no last name\n When they view the rewards table\n Then then source displays <sourceText>\n And under it displays \"Your Friend\"\n\n Examples:\n | rewardSource | referralUser | sourceText |\n | FRIEND_SIGNUP | referrer | Referral to |\n | REFERRED | referred user | Referred by |\n\n @motivating @ui\n Scenario Outline: The source column displays referral as \"Deleted User\" if the referral user is deleted in the system\n Given a user with a referral reward\n And that reward has <rewardSource>\n But <referral> user was deleted\n When they view the rewards table\n Then the source displays <sourceText>\n And under it displays \"Deleted User\"\n\n Examples:\n | rewardSource | referral | sourceText |\n | \"FRIEND_SIGNUP\" | referrer | Referral to |\n | \"REFERRED\" | referred | Referred by |\n\n @motivating @ui\n Scenario Outline: The source column displays referral as \"Deleted referral\" if the referral user is deleted in the system\n Given a user with a referral reward\n And that reward has <rewardSource>\n But <referral> user was deleted\n When they view the rewards table\n Then the source displays <sourceText>\n And under it displays \"Deleted referral\"\n\n Examples:\n | rewardSource | referral | sourceText |\n | \"FRIEND_SIGNUP\" | referrer | Referral to |\n | \"REFERRED\" | referred | Referred by |\n\n @minutia @ui\n Scenario Outline: Name fallbacks for referral users without names are customizable\n Given <prop> with <value>\n And a user with a referral reward\n But the referral user <hadAction>\n When they view the rewards table\n Then the source displays <value> as the referral user\n\n Examples:\n | prop | value | hadAction |\n | deleted-user | Former Customer | was deleted |\n | anonymous-user | Nameless User | had first and last name deleted |\n\n @motivating\n Scenario Outline: Source text can be customized\n Given the \"reward-source-text\" prop is \"{rewardSource, select, MANUAL {Support} AUTOMATED {Loyalty Program} other {}}\"\n And a user with a <rewardSource> reward\n When they view the rewards table\n Then the source is <sourceText>\n\n Examples:\n | rewardSource | sourceText |\n | MANUAL | Support |\n | AUTOMATED | Loyalty Program |\n";
|
|
12438
12510
|
|
|
12439
|
-
const scenario3 = "@author:derek @owner:derek\nFeature: Reward Table Status Column\n Shows the status of each reward\n\n Background:\n Given the status column is included in the reward table\n\n @motivating @ui\n Scenario Outline: The title of the status column is configurable\n Given the \"column-title\" prop is set to <value>\n Then the status column is shown with <columnTitle>\n\n Examples:\n | value | columnTitle |\n | Status | |\n | My column title | My column title |\n\n @motivating @ui\n Scenario Outline: The status column displays the status of each reward\n Given a user\n And they have a <status> reward\n When they view the reward table\n Then the status of their reward is displayed in <pillColour> pill with <text>\n\n Examples:\n | status | text | pillColour |\n | AVAILABLE | Available | success |\n | CANCELLED | Cancelled | danger |\n | PENDING | Pending | warning |\n | EXPIRED | Expired | danger |\n | REDEEMED | Redeemed | primary |\n | PENDING_REVIEW | Pending | warning |\n | PAYOUT_TRANSFERRED | Payout Approved | primary |\n | PAYOUT_NOT_YET_DUE | Payout Approved | primary |\n | PAYOUT_OVERDUE | Payout Failed | danger |\n | PAYOUT_REVERSED | Payout Cancelled | danger |\n | PROCESSING | Processing | warning |\n | PENDING_TAX_REVIEW | Pending | warning |\n | PENDING_NEW_TAX_FORM | Pending | warning |\n | PENDING_TAX_SUBMISSION | Pending | warning |\n | PENDING_PARTNER_CREATION | Pending | warning |\n | DENIED | Denied | danger |\n\n @motivating\n Scenario Outline: Reward status related information is displayed under status pills\n Given a user\n And they have a <reward>\n And their program is\n When they view the reward table\n Then they see their reward\n And under the pill is <text>\n And the date is localized to the users locale\n\n Examples: Standard Rewards\n | reward | text |\n | available reward with an expiry date | Expires <localized date> |\n | redeemed reward | <localized date> |\n | expired reward | <localized date> |\n | cancelled reward | <localized date> |\n | pending reward with a scheduled date | Until <localized date> |\n \n Examples: Tax & Payout Rewards\n | reward | text |\n | pending reward due to W9 | W-9 required |\n | pending reward due to fulfillment error | Fulfillment error |\n | reward pending review of referral | Awaiting review |\n | pending reward due to no connected Impact partner | Complete your tax and cash payout setup to receive your rewards. |\n | pending reward due to an invalid tax document | Invalid tax form. Submit a new form to receive your rewards. |\n | pending reward due to user required to submit a tax document | Submit your tax documents to receive your rewards. |\n | pending reward due to tax document being in review | Awaiting tax form review. |\n | reward whose payout is processing | Processing until <localized date>. Payout is then scheduled based on your settings. |\n | reward whose payout failed | Payout failed due to a fulfillment issue and is currently being retried. |\n | reward whose payout was approved | Payout approved and scheduled for payment based on your settings. |\n | reward whose payout was cancelled | If you think this is a mistake, contact our Support team. |\n | cancelled reward from denied referral | Detected self-referral |\n\n @minutia\n Scenario Outline: Tax-related reward statuses are based on the user's Impact tax connection\n Given a user\n And they are in a program that has Impact tax handling enabled\n And they have at least one pending reward\n And the reward's pending reasons include \"MISSING_PAYOUT_CONFIGURATION\"\n Then the status description will be\n \"\"\"\n Complete your tax and cash payout setup to receive your rewards.\n \"\"\"\n\n @motivating\n Scenario Outline: Statuses can be customized via ICU format\n Given the \"status-text\" prop is \"{status, select, AVAILABLE {Redeem me!} CANCELLED {Unavailable} PENDING {Coming soon!} EXPIRED {Past due} REDEEMED {Spent} PENDING_REVIEW {Pending Review!} PAYOUT_SENT {Payout Sent!} PAYOUT_FAILED {Payout Failed!} PENDING_TAX_REVIEW {Pending Tax Review!} PENDING_NEW_TAX_FORM {Pending new tax form!} PENDING_TAX_SUBMISSION {Pending tax submission!} PENDING_PARTNER_CREATION {Pending partner creation!} DENIED {Unlucky!}}\"\n And a user\n And they have a <status> reward\n When they view the reward table\n Then the status of their reward is displayed in <pillColour> pill with <text>\n\n Examples:\n | status | text | pillColour |\n | AVAILABLE | Redeem me! | success |\n | CANCELLED | Unavailable | danger |\n | PENDING | Coming soon! | warning |\n | EXPIRED | Past due | danger |\n | REDEEMED | Spent | primary |\n | PENDING_REVIEW | Pending Review! | warning |\n | PAYOUT_TRANSFERRED | Payout Approved! | primary |\n | PAYOUT_NOT_YET_DUE | Payout Approved! | primary |\n | PAYOUT_OVERDUE | Payout Failed! | danger |\n | PAYOUT_REVERSED | Payout Cancelled! | danger |\n | DENIED | Unlucky! | danger |\n\n @minutia @ui\n Scenario Outline: Expiry status date text can be configured\n Given the \"expiry-text\" prop has <value>\n And a user with an available reward with an expiry date\n When they view the reward table\n Then they see <text> under the Available Status pill\n\n Examples:\n | value | text |\n | Expires | Expires <localized date> |\n | Redeem before | Redeem before <localized date> |\n\n @motivating\n Scenario: Payout-related reward statuses are determined by the state of the Paid Funds Transfer\n Given a user has a reward with a connected Paid Funds Transfer (PFT)\n When the PFT is in <pftState>\n Then the reward's status is <status>\n And the status is displayed in a <pillColour> pill with <text>\n And under the pill is <description>\n\n Examples:\n | pftState | status | text | pillColour | description |\n | transfer date is in the future | PROCESSING | Processing | warning | Processing until <localized date>. Payout is then scheduled based on your settings. |\n | successfully transferred to payment provider | PAYOUT_TRANSFERRED | Payout Approved | primary | Payout approved and scheduled for payment based on your settings. |\n | approved but payout scheduled date not yet arrived | PAYOUT_NOT_YET_DUE | Payout Approved | primary | Payout approved and scheduled for payment based on your settings. |\n | failed due to fulfillment issue and retrying | PAYOUT_OVERDUE | Payout Failed | danger | Payout failed due to a fulfillment issue and is currently being retried. |\n | reversed or cancelled after being processed | PAYOUT_REVERSED | Payout Cancelled | danger | If you think this is a mistake, contact our Support team. |";
|
|
12511
|
+
const scenario3 = "@author:derek @owner:derek\nFeature: Reward Table Status Column\n Shows the status of each reward\n\n Background:\n Given the status column is included in the reward table\n\n @motivating @ui\n Scenario Outline: The title of the status column is configurable\n Given the \"column-title\" prop is set to <value>\n Then the status column is shown with <columnTitle>\n\n Examples:\n | value | columnTitle |\n | Status | |\n | My column title | My column title |\n\n @motivating @ui\n Scenario Outline: The status column displays the status of each reward\n Given a user\n And they have a <status> reward\n When they view the reward table\n Then the status of their reward is displayed in <pillColour> pill with <text>\n\n Examples:\n | status | text | pillColour |\n | AVAILABLE | Available | success |\n | CANCELLED | Cancelled | danger |\n | PENDING | Pending | warning |\n | EXPIRED | Expired | danger |\n | REDEEMED | Redeemed | primary |\n | PENDING_REVIEW | Pending | warning |\n | PAYOUT_TRANSFERRED | Payout Approved | primary |\n | PAYOUT_NOT_YET_DUE | Payout Approved | primary |\n | PAYOUT_OVERDUE | Payout Failed | danger |\n | PAYOUT_REVERSED | Payout Cancelled | danger |\n | PROCESSING | Processing | warning |\n | PENDING_TAX_REVIEW | Pending | warning |\n | PENDING_NEW_TAX_FORM | Pending | warning |\n | PENDING_TAX_SUBMISSION | Pending | warning |\n | PENDING_PARTNER_CREATION | Pending | warning |\n | DENIED | Denied | danger |\n\n @motivating\n Scenario Outline: Status precedence ladder\n Given a reward, its referral fraud state, the user's Impact tax connection\n Then <rule> is produced\n And the <resultingStatus>, <resultingBadgeText>, and <resultingDescription> is determined in the following <order>:\n\n Examples:\n | order | rule | resultingStatus | resultingBadgeText | resultingDescription |\n | 1 | referral.fraudData.moderationStatus is \"DENIED\" | DENIED | Denied | Detected self-referral |\n | 2 | referral.fraudData.moderationStatus is \"PENDING\" | PENDING_REVIEW | Pending | Awaiting review |\n | 3 | reward.rewardedCash is true AND impactConnection is NOT connected | PENDING | Pending | Complete your cash payout setup to receive your rewards. |\n | 4 | reward.rewardedCash is true AND impactConnection is connected AND publisher.withdrawalSettings is missing | PENDING | Pending | Complete your cash payout setup to receive your rewards. |\n | 5 | partnerFundsTransfer.status is \"REVERSED\" | PAYOUT_CANCELLED | Payout Cancelled | If you think this is a mistake, contact our Support team. |\n | 6 | partnerFundsTransfer.status is \"OVERDUE\" | PAYOUT_FAILED | Payout Failed | Payout failed due to a fulfillment issue and is currently being retried. |\n | 7 | reward.pendingReasons includes \"MISSING_PAYOUT_CONFIGURATION\" AND publisher.withdrawalSettings is missing | PENDING | Pending | Complete your cash payout setup to receive your rewards. |\n | 8 | partnerFundsTransfer.dateScheduled is in the future | PROCESSING | Payment Processing | Processing until Jan 1, 2026. Payout is then scheduled based on your settings. |\n | 9 | partnerFundsTransfer.status is \"TRANSFERRED\" / \"NOT_YET_DUE\", or dateScheduled has passed without REVERSED/OVERDUE | PAYOUT_APPROVED | Payout Approved | Payout approved and scheduled for payment based on your settings. |\n | 10 | reward.dateCancelled is set | CANCELLED | Cancelled | Jan 1, 2026 |\n | 11 | reward.statuses includes \"EXPIRED\" | EXPIRED | Expired | Jan 1, 2026 |\n | 12 | reward.statuses includes \"PENDING\" | PENDING | Pending | Until Jan 1, 2026 |\n | 13 | statuses includes \"REDEEMED\" | REDEEMED | Redeemed | Jan 1, 2026 |\n | 14 | statuses includes \"AVAILABLE\" | AVAILABLE | Available | Expires Jan 1, 2026 |\n | 15 | statuses includes \"CANCELLED\" | CANCELLED | Cancelled | Jan 1, 2026 |\n# This spec should probably be inserted in to the above spec after rule 9 because it gets invoked when the reward state is pending\n# and does not hit the rules that output pending from above\n\n @motivating\n Scenario Outline: PENDING description precedence ladder\n Given a PENDING reward, its pendingReasons, and the user's Impact tax connection\n Then <rule> is produced\n And the <resultingStatus>, <resultingBadgeText>, and <resultingDescription> is determined in the following order:\n\n Examples:\n | order | rule | resultingStatus | resultingBadgeText | resultingDescription |\n | 1 | pendingReasons includes \"US_TAX\" AND impactConnection.taxHandlingEnabled is false | PENDING | Pending | W-9 required |\n | 2 | pendingReasons includes \"US_TAX\" AND impactConnection is NOT connected | PENDING | Pending | Complete your tax and cash payout setup to receive your rewards. |\n | 3 | pendingReasons includes \"US_TAX\" AND publisher.requiredTaxDocumentType is set AND publisher.currentTaxDocument is missing | PENDING | Pending | Submit your tax documents to receive your rewards. |\n | 4 | pendingReasons includes \"US_TAX\" AND publisher.requiredTaxDocumentType is set AND publisher.currentTaxDocument.status is \"INACTIVE\" | PENDING | Pending | Invalid tax form. Submit a new form to receive your rewards. |\n | 5 | pendingReasons includes \"US_TAX\" AND publisher.requiredTaxDocumentType is set AND publisher.currentTaxDocument.status is \"NOT_VERIFIED\" | PENDING | Pending | Awaiting tax form review. |\n | 6 | pendingReasons includes \"US_TAX\" AND publisher.withdrawalSettings is missing | PENDING | Pending | Complete your tax and cash payout setup to receive your rewards. |\n | 7 | pendingReasons includes \"MISSING_PAYOUT_CONFIGURATION\" | PENDING | Pending | Complete your tax and cash payout setup to receive your rewards. |\n | 8 | reward.rewardedCash is true AND impactConnection is NOT connected (fallback when no pendingReason returned) | PENDING | Pending | Complete your tax and cash payout setup to receive your rewards. |\n | 9 | reward.rewardedCash is true AND impactConnection is connected AND publisher.withdrawalSettings is missing (fallback) | PENDING | Pending | Complete your tax and cash payout setup to receive your rewards. |\n\n @motivating\n Scenario Outline: Reward status related information is displayed under status pills\n Given a user\n And they have a <reward>\n And their program is\n When they view the reward table\n Then they see their reward\n And under the pill is <text>\n And the date is localized to the users locale\n\n Examples: Standard Rewards\n | reward | text |\n | available reward with an expiry date | Expires <localized date> |\n | redeemed reward | <localized date> |\n | expired reward | <localized date> |\n | cancelled reward | <localized date> |\n | pending reward with a scheduled date | Until <localized date> |\n\n Examples: Tax & Payout Rewards\n | reward | text |\n | pending reward due to W9 | W-9 required |\n | pending reward due to fulfillment error | Fulfillment error |\n | reward pending review of referral | Awaiting review |\n | pending reward due to no connected Impact partner | Complete your tax and cash payout setup to receive your rewards. |\n | pending reward due to an invalid tax document | Invalid tax form. Submit a new form to receive your rewards. |\n | pending reward due to user required to submit a tax document | Submit your tax documents to receive your rewards. |\n | pending reward due to tax document being in review | Awaiting tax form review. |\n | reward whose payout is processing | Processing until <localized date>. Payout is then scheduled based on your settings. |\n | reward whose payout failed | Payout failed due to a fulfillment issue and is currently being retried. |\n | reward whose payout was approved | Payout approved and scheduled for payment based on your settings. |\n | reward whose payout was cancelled | If you think this is a mistake, contact our Support team. |\n | cancelled reward from denied referral | Detected self-referral |\n\n @minutia\n Scenario Outline: Tax-related reward statuses are based on the user's Impact tax connection\n Given a user\n And they are in a program that has Impact tax handling enabled\n And they have at least one pending reward\n And the reward's pending reasons include \"MISSING_PAYOUT_CONFIGURATION\"\n Then the status description will be\n \"\"\"\n Complete your tax and cash payout setup to receive your rewards.\n \"\"\"\n\n @motivating\n Scenario Outline: Statuses can be customized via ICU format\n Given the \"status-text\" prop is \"{status, select, AVAILABLE {Redeem me!} CANCELLED {Unavailable} PENDING {Coming soon!} EXPIRED {Past due} REDEEMED {Spent} PENDING_REVIEW {Pending Review!} PAYOUT_SENT {Payout Sent!} PAYOUT_FAILED {Payout Failed!} PENDING_TAX_REVIEW {Pending Tax Review!} PENDING_NEW_TAX_FORM {Pending new tax form!} PENDING_TAX_SUBMISSION {Pending tax submission!} PENDING_PARTNER_CREATION {Pending partner creation!} DENIED {Unlucky!}}\"\n And a user\n And they have a <status> reward\n When they view the reward table\n Then the status of their reward is displayed in <pillColour> pill with <text>\n\n Examples:\n | status | text | pillColour |\n | AVAILABLE | Redeem me! | success |\n | CANCELLED | Unavailable | danger |\n | PENDING | Coming soon! | warning |\n | EXPIRED | Past due | danger |\n | REDEEMED | Spent | primary |\n | PENDING_REVIEW | Pending Review! | warning |\n | PAYOUT_TRANSFERRED | Payout Approved! | primary |\n | PAYOUT_NOT_YET_DUE | Payout Approved! | primary |\n | PAYOUT_OVERDUE | Payout Failed! | danger |\n | PAYOUT_REVERSED | Payout Cancelled! | danger |\n | DENIED | Unlucky! | danger |\n\n @minutia @ui\n Scenario Outline: Expiry status date text can be configured\n Given the \"expiry-text\" prop has <value>\n And a user with an available reward with an expiry date\n When they view the reward table\n Then they see <text> under the Available Status pill\n\n Examples:\n | value | text |\n | Expires | Expires <localized date> |\n | Redeem before | Redeem before <localized date> |\n\n @motivating\n Scenario: Payout-related reward statuses are determined by the state of the Paid Funds Transfer\n Given a user has a reward with a connected Paid Funds Transfer (PFT)\n When the PFT is in <pftState>\n Then the reward's status is <status>\n And the status is displayed in a <pillColour> pill with <text>\n And under the pill is <description>\n\n Examples:\n | pftState | status | text | pillColour | description |\n | transfer date is in the future | PROCESSING | Processing | warning | Processing until <localized date>. Payout is then scheduled based on your settings. |\n | successfully transferred to payment provider | PAYOUT_TRANSFERRED | Payout Approved | primary | Payout approved and scheduled for payment based on your settings. |\n | approved but payout scheduled date not yet arrived | PAYOUT_NOT_YET_DUE | Payout Approved | primary | Payout approved and scheduled for payment based on your settings. |\n | failed due to fulfillment issue and retrying | PAYOUT_OVERDUE | Payout Failed | danger | Payout failed due to a fulfillment issue and is currently being retried. |\n | reversed or cancelled after being processed | PAYOUT_REVERSED | Payout Cancelled | danger | If you think this is a mistake, contact our Support team. |\n";
|
|
12440
12512
|
|
|
12441
12513
|
const scenario$x = scenario1 + scenario2 + scenario3 + scenario4;
|
|
12442
12514
|
const RewardsTableCell_stories = {
|
|
@@ -12964,6 +13036,9 @@ const RewardsTable$1 = /*#__PURE__*/Object.freeze({
|
|
|
12964
13036
|
const TaxAndCashRewardsTableCell_stories = {
|
|
12965
13037
|
title: "Components/Tax And Cash Rewards Table Cell",
|
|
12966
13038
|
};
|
|
13039
|
+
// Reusable timestamps (current date is May 2026)
|
|
13040
|
+
const PAST$1 = 1640995200000; // Jan 1, 2022
|
|
13041
|
+
const FUTURE$1 = 2779257600000; // ~2058
|
|
12967
13042
|
const cashReward$1 = {
|
|
12968
13043
|
id: "68c34fd98a6cb4f5f8394084",
|
|
12969
13044
|
type: "CREDIT",
|
|
@@ -12983,13 +13058,13 @@ const cashReward$1 = {
|
|
|
12983
13058
|
name: "Cash",
|
|
12984
13059
|
},
|
|
12985
13060
|
name: null,
|
|
12986
|
-
dateCreated:
|
|
12987
|
-
dateScheduledFor:
|
|
12988
|
-
dateGiven:
|
|
13061
|
+
dateCreated: PAST$1,
|
|
13062
|
+
dateScheduledFor: null,
|
|
13063
|
+
dateGiven: PAST$1,
|
|
12989
13064
|
dateExpires: null,
|
|
12990
13065
|
dateCancelled: null,
|
|
12991
|
-
dateRedeemed:
|
|
12992
|
-
dateModified:
|
|
13066
|
+
dateRedeemed: null,
|
|
13067
|
+
dateModified: PAST$1,
|
|
12993
13068
|
rewardSource: "MANUAL",
|
|
12994
13069
|
fuelTankCode: null,
|
|
12995
13070
|
fuelTankType: null,
|
|
@@ -13022,173 +13097,266 @@ const cashReward$1 = {
|
|
|
13022
13097
|
},
|
|
13023
13098
|
referral: null,
|
|
13024
13099
|
description: null,
|
|
13025
|
-
statuses: [
|
|
13100
|
+
statuses: [],
|
|
13026
13101
|
rewardRedemptionTransactions: {
|
|
13027
13102
|
data: null,
|
|
13028
13103
|
},
|
|
13029
13104
|
exchangedRewardRedemptionTransaction: null,
|
|
13030
13105
|
pendingReasons: [],
|
|
13106
|
+
rewardedCash: true,
|
|
13031
13107
|
};
|
|
13032
|
-
|
|
13033
|
-
|
|
13034
|
-
|
|
13035
|
-
const
|
|
13036
|
-
|
|
13037
|
-
|
|
13038
|
-
|
|
13039
|
-
|
|
13040
|
-
|
|
13041
|
-
|
|
13108
|
+
// ============================================================
|
|
13109
|
+
// Reusable tax connections
|
|
13110
|
+
// ============================================================
|
|
13111
|
+
const fullySetupTaxConnection$1 = {
|
|
13112
|
+
connected: true,
|
|
13113
|
+
taxHandlingEnabled: true,
|
|
13114
|
+
connectionStatus: "COMPLETED",
|
|
13115
|
+
publisher: {
|
|
13116
|
+
requiredTaxDocumentType: "W9",
|
|
13117
|
+
currentTaxDocument: {
|
|
13118
|
+
status: "ACTIVE",
|
|
13119
|
+
type: "W9",
|
|
13120
|
+
dateCreated: PAST$1,
|
|
13121
|
+
},
|
|
13122
|
+
withdrawalSettings: { paymentMethod: "BANK_TRANSFER" },
|
|
13123
|
+
payoutsAccount: null,
|
|
13042
13124
|
},
|
|
13043
13125
|
};
|
|
13044
|
-
const
|
|
13126
|
+
const connectedNoWithdrawalSettings$1 = {
|
|
13045
13127
|
connected: true,
|
|
13046
13128
|
taxHandlingEnabled: true,
|
|
13047
|
-
connectionStatus: "
|
|
13129
|
+
connectionStatus: "COMPLETED",
|
|
13048
13130
|
publisher: {
|
|
13049
|
-
requiredTaxDocumentType: "
|
|
13131
|
+
requiredTaxDocumentType: "W9",
|
|
13050
13132
|
currentTaxDocument: {
|
|
13051
|
-
status: "
|
|
13052
|
-
type: "
|
|
13053
|
-
dateCreated:
|
|
13054
|
-
},
|
|
13055
|
-
withdrawalSettings: {
|
|
13056
|
-
paymentMethod: "BANK_TRANSFER",
|
|
13133
|
+
status: "ACTIVE",
|
|
13134
|
+
type: "W9",
|
|
13135
|
+
dateCreated: PAST$1,
|
|
13057
13136
|
},
|
|
13137
|
+
withdrawalSettings: null,
|
|
13058
13138
|
payoutsAccount: null,
|
|
13059
13139
|
},
|
|
13060
13140
|
};
|
|
13061
|
-
const
|
|
13062
|
-
|
|
13063
|
-
|
|
13064
|
-
|
|
13065
|
-
|
|
13066
|
-
|
|
13067
|
-
|
|
13068
|
-
|
|
13069
|
-
|
|
13070
|
-
|
|
13071
|
-
|
|
13072
|
-
|
|
13073
|
-
|
|
13074
|
-
|
|
13075
|
-
|
|
13076
|
-
const
|
|
13077
|
-
|
|
13078
|
-
|
|
13079
|
-
|
|
13080
|
-
|
|
13081
|
-
|
|
13082
|
-
|
|
13083
|
-
|
|
13084
|
-
|
|
13085
|
-
|
|
13086
|
-
|
|
13087
|
-
|
|
13088
|
-
|
|
13089
|
-
|
|
13090
|
-
|
|
13091
|
-
|
|
13092
|
-
|
|
13093
|
-
|
|
13094
|
-
|
|
13095
|
-
|
|
13096
|
-
|
|
13097
|
-
|
|
13098
|
-
|
|
13099
|
-
|
|
13100
|
-
|
|
13101
|
-
|
|
13102
|
-
|
|
13103
|
-
|
|
13104
|
-
|
|
13105
|
-
|
|
13106
|
-
|
|
13107
|
-
|
|
13108
|
-
const StatusCellPartnerCreatedSetupStartedButIncomplete = () => {
|
|
13109
|
-
|
|
13110
|
-
|
|
13111
|
-
|
|
13112
|
-
|
|
13113
|
-
|
|
13114
|
-
|
|
13115
|
-
|
|
13116
|
-
}
|
|
13117
|
-
};
|
|
13118
|
-
|
|
13119
|
-
|
|
13120
|
-
|
|
13121
|
-
|
|
13122
|
-
|
|
13123
|
-
|
|
13124
|
-
|
|
13125
|
-
|
|
13126
|
-
|
|
13127
|
-
|
|
13128
|
-
|
|
13129
|
-
|
|
13130
|
-
|
|
13131
|
-
|
|
13132
|
-
|
|
13133
|
-
|
|
13134
|
-
|
|
13135
|
-
|
|
13136
|
-
|
|
13137
|
-
|
|
13138
|
-
|
|
13139
|
-
|
|
13140
|
-
|
|
13141
|
-
|
|
13142
|
-
|
|
13143
|
-
|
|
13144
|
-
|
|
13145
|
-
|
|
13146
|
-
|
|
13147
|
-
|
|
13148
|
-
|
|
13149
|
-
|
|
13150
|
-
|
|
13151
|
-
|
|
13152
|
-
|
|
13153
|
-
|
|
13154
|
-
|
|
13155
|
-
|
|
13156
|
-
|
|
13157
|
-
|
|
13158
|
-
|
|
13141
|
+
const notConnectedTaxConnection$1 = {
|
|
13142
|
+
connected: false,
|
|
13143
|
+
taxHandlingEnabled: true,
|
|
13144
|
+
connectionStatus: "NOT_STARTED",
|
|
13145
|
+
publisher: null,
|
|
13146
|
+
};
|
|
13147
|
+
// ============================================================
|
|
13148
|
+
// Reward Cell (kept from original)
|
|
13149
|
+
// ============================================================
|
|
13150
|
+
const CashReward$1 = () => (h("sqm-rewards-table-reward-cell", { reward: { ...cashReward$1, statuses: ["REDEEMED"], dateRedeemed: PAST$1 }, availableText: "{availableAmount} remaining" }));
|
|
13151
|
+
// ============================================================
|
|
13152
|
+
// STATUS PRECEDENCE LADDER — one story per rule
|
|
13153
|
+
// (See sqm-rewards-table-status-column-new.feature § 2)
|
|
13154
|
+
// ============================================================
|
|
13155
|
+
// 1. Fraud check denied the referral → status is Denied
|
|
13156
|
+
const StatusCellFraudDenied = () => (h("sqm-rewards-table-status-cell", { statusText: "Denied", reward: {
|
|
13157
|
+
...cashReward$1,
|
|
13158
|
+
referral: { fraudData: { moderationStatus: "DENIED" } },
|
|
13159
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13160
|
+
// 2. Fraud check is still pending review → status is Pending Review
|
|
13161
|
+
const StatusCellFraudPendingReview = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13162
|
+
...cashReward$1,
|
|
13163
|
+
referral: { fraudData: { moderationStatus: "PENDING" } },
|
|
13164
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13165
|
+
// 3. Partner funds transfer was reversed → status is Payout Cancelled
|
|
13166
|
+
const StatusCellPayoutCancelled = () => (h("sqm-rewards-table-status-cell", { statusText: "Payout Cancelled", reward: {
|
|
13167
|
+
...cashReward$1,
|
|
13168
|
+
partnerFundsTransfer: {
|
|
13169
|
+
id: "pft-reversed",
|
|
13170
|
+
status: "REVERSED",
|
|
13171
|
+
dateCreated: PAST$1,
|
|
13172
|
+
dateScheduled: PAST$1,
|
|
13173
|
+
dateTransferred: null,
|
|
13174
|
+
},
|
|
13175
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13176
|
+
// 4. Partner funds transfer is overdue → status is Payout Failed
|
|
13177
|
+
const StatusCellPayoutFailed = () => (h("sqm-rewards-table-status-cell", { statusText: "Payout Failed", reward: {
|
|
13178
|
+
...cashReward$1,
|
|
13179
|
+
partnerFundsTransfer: {
|
|
13180
|
+
id: "pft-overdue",
|
|
13181
|
+
status: "OVERDUE",
|
|
13182
|
+
dateCreated: PAST$1,
|
|
13183
|
+
dateScheduled: PAST$1,
|
|
13184
|
+
dateTransferred: null,
|
|
13185
|
+
},
|
|
13186
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13187
|
+
// 5. Connected partner has not finished withdrawal settings setup → status is Pending
|
|
13188
|
+
const StatusCellPartnerCreatedSetupStartedButIncomplete = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13189
|
+
...cashReward$1,
|
|
13190
|
+
partnerFundsTransfer: {
|
|
13191
|
+
id: "pft-not-yet-due",
|
|
13192
|
+
status: "NOT_YET_DUE",
|
|
13193
|
+
dateCreated: PAST$1,
|
|
13194
|
+
dateScheduled: FUTURE$1,
|
|
13195
|
+
dateTransferred: null,
|
|
13196
|
+
},
|
|
13197
|
+
}, taxConnection: connectedNoWithdrawalSettings$1 }));
|
|
13198
|
+
// Reward is pending US_TAX and the partner has not been created yet → shows the partner-setup prompt
|
|
13199
|
+
const StatusCellPartnerNotCreatedSetupNotStarted = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13200
|
+
...cashReward$1,
|
|
13201
|
+
statuses: ["PENDING"],
|
|
13202
|
+
pendingReasons: ["US_TAX"],
|
|
13203
|
+
}, taxConnection: notConnectedTaxConnection$1 }));
|
|
13204
|
+
// 6. Reward has MISSING_PAYOUT_CONFIGURATION pending reason and no withdrawal settings → status is Pending
|
|
13205
|
+
const StatusCellMissingPayoutConfiguration = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13206
|
+
...cashReward$1,
|
|
13207
|
+
statuses: ["PENDING"],
|
|
13208
|
+
pendingReasons: ["MISSING_PAYOUT_CONFIGURATION"],
|
|
13209
|
+
}, taxConnection: connectedNoWithdrawalSettings$1 }));
|
|
13210
|
+
// 7. Partner funds transfer is scheduled for a future date → status is Processing
|
|
13211
|
+
const StatusCellPayoutProcessing = () => (h("sqm-rewards-table-status-cell", { statusText: "Processing", reward: {
|
|
13212
|
+
...cashReward$1,
|
|
13213
|
+
partnerFundsTransfer: {
|
|
13214
|
+
id: "pft-processing",
|
|
13215
|
+
status: null,
|
|
13216
|
+
dateCreated: PAST$1,
|
|
13217
|
+
dateScheduled: FUTURE$1,
|
|
13218
|
+
dateTransferred: null,
|
|
13219
|
+
},
|
|
13220
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13221
|
+
// 8. Partner funds transfer has been transferred → status is Payout Approved
|
|
13222
|
+
const StatusCellPayoutApproved = () => (h("sqm-rewards-table-status-cell", { statusText: "Payout Approved", reward: {
|
|
13223
|
+
...cashReward$1,
|
|
13224
|
+
partnerFundsTransfer: {
|
|
13225
|
+
id: "pft-transferred",
|
|
13226
|
+
status: "TRANSFERRED",
|
|
13227
|
+
dateCreated: PAST$1,
|
|
13228
|
+
dateScheduled: PAST$1,
|
|
13229
|
+
dateTransferred: PAST$1,
|
|
13230
|
+
},
|
|
13231
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13232
|
+
// 9. Reward has a cancellation date set → status is Cancelled
|
|
13233
|
+
const StatusCellRewardCancelled = () => (h("sqm-rewards-table-status-cell", { statusText: "Cancelled", reward: {
|
|
13234
|
+
...cashReward$1,
|
|
13235
|
+
statuses: ["CANCELLED"],
|
|
13236
|
+
dateCancelled: PAST$1,
|
|
13237
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13238
|
+
// 10. Reward statuses include EXPIRED → status is Expired
|
|
13239
|
+
const StatusCellRewardExpired = () => (h("sqm-rewards-table-status-cell", { statusText: "Expired", reward: {
|
|
13240
|
+
...cashReward$1,
|
|
13241
|
+
statuses: ["EXPIRED"],
|
|
13242
|
+
dateExpires: PAST$1,
|
|
13243
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13244
|
+
// 11. Reward is pending and scheduled for a future date → status is Pending with the scheduled date shown
|
|
13245
|
+
const StatusCellPendingScheduled$1 = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13246
|
+
...cashReward$1,
|
|
13247
|
+
statuses: ["PENDING"],
|
|
13248
|
+
pendingReasons: ["SCHEDULED"],
|
|
13249
|
+
dateScheduledFor: FUTURE$1,
|
|
13250
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13251
|
+
// 12. Reward does not match any precedence rule → no badge text, no description
|
|
13252
|
+
const StatusCellNoMatchingRule = () => (h("sqm-rewards-table-status-cell", { statusText: "", reward: {
|
|
13253
|
+
...cashReward$1,
|
|
13254
|
+
statuses: [],
|
|
13255
|
+
}, taxConnection: fullySetupTaxConnection$1 }));
|
|
13256
|
+
// ============================================================
|
|
13257
|
+
// US_TAX getTaxPendingReasons branches (Pending Description Resolution § 5)
|
|
13258
|
+
// ============================================================
|
|
13259
|
+
// Reward is pending US_TAX but tax handling is disabled → shows "W-9 required"
|
|
13260
|
+
const StatusCellPendingW9Required = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13261
|
+
...cashReward$1,
|
|
13262
|
+
statuses: ["PENDING"],
|
|
13263
|
+
pendingReasons: ["US_TAX"],
|
|
13264
|
+
}, taxConnection: { ...fullySetupTaxConnection$1, taxHandlingEnabled: false } }));
|
|
13265
|
+
// Partner is connected but has not submitted any tax documents → shows the submit-tax-docs prompt
|
|
13266
|
+
const StatusCellPendingTaxSubmission = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13267
|
+
...cashReward$1,
|
|
13268
|
+
statuses: ["PENDING"],
|
|
13269
|
+
pendingReasons: ["US_TAX"],
|
|
13270
|
+
}, taxConnection: {
|
|
13271
|
+
...fullySetupTaxConnection$1,
|
|
13272
|
+
publisher: {
|
|
13273
|
+
...fullySetupTaxConnection$1.publisher,
|
|
13274
|
+
currentTaxDocument: null,
|
|
13275
|
+
},
|
|
13276
|
+
} }));
|
|
13277
|
+
// Partner's tax document is inactive (rejected) → shows the submit-a-new-form prompt
|
|
13278
|
+
const StatusCellPendingNewTaxForm = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13279
|
+
...cashReward$1,
|
|
13280
|
+
statuses: ["PENDING"],
|
|
13281
|
+
pendingReasons: ["US_TAX"],
|
|
13282
|
+
}, taxConnection: {
|
|
13283
|
+
...fullySetupTaxConnection$1,
|
|
13284
|
+
publisher: {
|
|
13285
|
+
...fullySetupTaxConnection$1.publisher,
|
|
13286
|
+
currentTaxDocument: {
|
|
13287
|
+
status: "INACTIVE",
|
|
13288
|
+
type: "W9",
|
|
13289
|
+
dateCreated: PAST$1,
|
|
13159
13290
|
},
|
|
13160
|
-
}
|
|
13161
|
-
};
|
|
13162
|
-
|
|
13163
|
-
|
|
13164
|
-
|
|
13165
|
-
|
|
13166
|
-
|
|
13167
|
-
|
|
13168
|
-
|
|
13169
|
-
|
|
13170
|
-
|
|
13171
|
-
|
|
13172
|
-
|
|
13173
|
-
|
|
13291
|
+
},
|
|
13292
|
+
} }));
|
|
13293
|
+
// Partner's tax document is awaiting verification → shows the awaiting-review prompt
|
|
13294
|
+
const StatusCellPendingTaxReview = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13295
|
+
...cashReward$1,
|
|
13296
|
+
statuses: ["PENDING"],
|
|
13297
|
+
pendingReasons: ["US_TAX"],
|
|
13298
|
+
}, taxConnection: {
|
|
13299
|
+
...fullySetupTaxConnection$1,
|
|
13300
|
+
publisher: {
|
|
13301
|
+
...fullySetupTaxConnection$1.publisher,
|
|
13302
|
+
currentTaxDocument: {
|
|
13303
|
+
status: "NOT_VERIFIED",
|
|
13304
|
+
type: "W9",
|
|
13305
|
+
dateCreated: PAST$1,
|
|
13174
13306
|
},
|
|
13175
|
-
}
|
|
13176
|
-
};
|
|
13307
|
+
},
|
|
13308
|
+
} }));
|
|
13309
|
+
// Partner has an active tax form but has not configured withdrawal settings → shows the partner-setup prompt
|
|
13310
|
+
const StatusCellExistingTaxFormNoWithdrawalSettings = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13311
|
+
...cashReward$1,
|
|
13312
|
+
statuses: ["PENDING"],
|
|
13313
|
+
pendingReasons: ["US_TAX"],
|
|
13314
|
+
}, taxConnection: connectedNoWithdrawalSettings$1 }));
|
|
13315
|
+
// Partner is connected, no tax form is required, but withdrawal settings are not submitted → shows the partner-setup prompt
|
|
13316
|
+
const StatusCellConnectedNoTaxRequiredNoWithdrawalSettings = () => (h("sqm-rewards-table-status-cell", { statusText: "Pending", reward: {
|
|
13317
|
+
...cashReward$1,
|
|
13318
|
+
statuses: ["PENDING"],
|
|
13319
|
+
pendingReasons: [],
|
|
13320
|
+
}, taxConnection: {
|
|
13321
|
+
connected: true,
|
|
13322
|
+
taxHandlingEnabled: true,
|
|
13323
|
+
connectionStatus: "COMPLETED",
|
|
13324
|
+
publisher: {
|
|
13325
|
+
requiredTaxDocumentType: null,
|
|
13326
|
+
currentTaxDocument: null,
|
|
13327
|
+
withdrawalSettings: null,
|
|
13328
|
+
payoutsAccount: null,
|
|
13329
|
+
},
|
|
13330
|
+
} }));
|
|
13331
|
+
// Aliases kept for the table-level stories file
|
|
13332
|
+
const StatusCellPayoutSent = StatusCellPayoutApproved;
|
|
13333
|
+
const StatusCellPendingW9 = StatusCellPendingW9Required;
|
|
13177
13334
|
|
|
13178
13335
|
const TaxAndCashRewardsTableCell = /*#__PURE__*/Object.freeze({
|
|
13179
13336
|
__proto__: null,
|
|
13180
13337
|
'default': TaxAndCashRewardsTableCell_stories,
|
|
13181
13338
|
CashReward: CashReward$1,
|
|
13182
|
-
|
|
13183
|
-
|
|
13184
|
-
|
|
13339
|
+
StatusCellFraudDenied: StatusCellFraudDenied,
|
|
13340
|
+
StatusCellFraudPendingReview: StatusCellFraudPendingReview,
|
|
13341
|
+
StatusCellPayoutCancelled: StatusCellPayoutCancelled,
|
|
13342
|
+
StatusCellPayoutFailed: StatusCellPayoutFailed,
|
|
13185
13343
|
StatusCellPartnerCreatedSetupStartedButIncomplete: StatusCellPartnerCreatedSetupStartedButIncomplete,
|
|
13186
13344
|
StatusCellPartnerNotCreatedSetupNotStarted: StatusCellPartnerNotCreatedSetupNotStarted,
|
|
13187
|
-
|
|
13188
|
-
StatusCellPayoutSent: StatusCellPayoutSent,
|
|
13189
|
-
StatusCellPayoutFailed: StatusCellPayoutFailed,
|
|
13345
|
+
StatusCellMissingPayoutConfiguration: StatusCellMissingPayoutConfiguration,
|
|
13190
13346
|
StatusCellPayoutProcessing: StatusCellPayoutProcessing,
|
|
13191
|
-
|
|
13347
|
+
StatusCellPayoutApproved: StatusCellPayoutApproved,
|
|
13348
|
+
StatusCellRewardCancelled: StatusCellRewardCancelled,
|
|
13349
|
+
StatusCellRewardExpired: StatusCellRewardExpired,
|
|
13350
|
+
StatusCellPendingScheduled: StatusCellPendingScheduled$1,
|
|
13351
|
+
StatusCellNoMatchingRule: StatusCellNoMatchingRule,
|
|
13352
|
+
StatusCellPendingW9Required: StatusCellPendingW9Required,
|
|
13353
|
+
StatusCellPendingTaxSubmission: StatusCellPendingTaxSubmission,
|
|
13354
|
+
StatusCellPendingNewTaxForm: StatusCellPendingNewTaxForm,
|
|
13355
|
+
StatusCellPendingTaxReview: StatusCellPendingTaxReview,
|
|
13356
|
+
StatusCellExistingTaxFormNoWithdrawalSettings: StatusCellExistingTaxFormNoWithdrawalSettings,
|
|
13357
|
+
StatusCellConnectedNoTaxRequiredNoWithdrawalSettings: StatusCellConnectedNoTaxRequiredNoWithdrawalSettings,
|
|
13358
|
+
StatusCellPayoutSent: StatusCellPayoutSent,
|
|
13359
|
+
StatusCellPendingW9: StatusCellPendingW9
|
|
13192
13360
|
});
|
|
13193
13361
|
|
|
13194
13362
|
const TaxAndCashRewardsTable_stories = {
|
|
@@ -14077,21 +14245,145 @@ const CustomStyles$1 = () => {
|
|
|
14077
14245
|
return h(CopyTextView, Object.assign({}, props));
|
|
14078
14246
|
};
|
|
14079
14247
|
const CustomStylesWithDemoHooks = () => {
|
|
14080
|
-
|
|
14081
|
-
|
|
14082
|
-
|
|
14083
|
-
|
|
14084
|
-
|
|
14085
|
-
|
|
14086
|
-
|
|
14087
|
-
|
|
14088
|
-
|
|
14089
|
-
|
|
14090
|
-
|
|
14248
|
+
return (h("sqm-share-link", { demoData: {
|
|
14249
|
+
copyTextViewProps: {
|
|
14250
|
+
copyString: "https://noah.example.com",
|
|
14251
|
+
open: false,
|
|
14252
|
+
tooltiptext: "Copied!",
|
|
14253
|
+
backgroundColor: "#1ed760",
|
|
14254
|
+
borderRadius: "30px",
|
|
14255
|
+
textColor: "red",
|
|
14256
|
+
buttonType: "primary",
|
|
14257
|
+
borderColor: "#121212",
|
|
14258
|
+
},
|
|
14259
|
+
}, backgroundColor: "#1ed760" }));
|
|
14091
14260
|
};
|
|
14092
14261
|
const FullStack = () => {
|
|
14093
14262
|
return h("sqm-share-link", null);
|
|
14094
14263
|
};
|
|
14264
|
+
// Customize URL stories
|
|
14265
|
+
const noopFn = () => { };
|
|
14266
|
+
const defaultCustomizeProps = {
|
|
14267
|
+
copyTextViewProps: {
|
|
14268
|
+
copyString: "https://ssqt.co/abc123",
|
|
14269
|
+
open: false,
|
|
14270
|
+
tooltiptext: "Copied!",
|
|
14271
|
+
},
|
|
14272
|
+
allowCustomization: true,
|
|
14273
|
+
customizeLinkLabel: "Customize Link",
|
|
14274
|
+
saveLabelText: "Save",
|
|
14275
|
+
savingLabelText: "Saving...",
|
|
14276
|
+
cancelLabelText: "Cancel",
|
|
14277
|
+
editLabelText: "Edit your link",
|
|
14278
|
+
charactersRemainingText: "{count} characters remaining",
|
|
14279
|
+
validatingLabelText: "Validating...",
|
|
14280
|
+
isEditing: false,
|
|
14281
|
+
editValue: "",
|
|
14282
|
+
domainPrefix: "https://ssqt.co/",
|
|
14283
|
+
editsRemaining: 3,
|
|
14284
|
+
maxEdits: 5,
|
|
14285
|
+
limitReached: false,
|
|
14286
|
+
validationError: null,
|
|
14287
|
+
isValidating: false,
|
|
14288
|
+
isSaving: false,
|
|
14289
|
+
characterLimit: 15,
|
|
14290
|
+
minCharacters: 3,
|
|
14291
|
+
charactersRemaining: 15,
|
|
14292
|
+
editLimitText: "You can edit your link up to 5 times.",
|
|
14293
|
+
editLimitReachedText: "5 edit limit reached. To make more changes, please contact {supportLink}.",
|
|
14294
|
+
supportLinkText: "Support",
|
|
14295
|
+
customizeDisabled: false,
|
|
14296
|
+
customizeDisabledTooltip: "Link customization is not available.",
|
|
14297
|
+
minCharactersText: "Minimum 3 characters",
|
|
14298
|
+
onCustomizeClick: noopFn,
|
|
14299
|
+
onEditValueChange: noopFn,
|
|
14300
|
+
onSave: noopFn,
|
|
14301
|
+
onCancel: noopFn,
|
|
14302
|
+
};
|
|
14303
|
+
const CustomizeUrlDefault = () => {
|
|
14304
|
+
return h(ShareLinkView, Object.assign({}, defaultCustomizeProps));
|
|
14305
|
+
};
|
|
14306
|
+
const CustomizeUrlEditing = () => {
|
|
14307
|
+
return (h(ShareLinkView, Object.assign({}, {
|
|
14308
|
+
...defaultCustomizeProps,
|
|
14309
|
+
isEditing: true,
|
|
14310
|
+
editValue: "nvoiwb18",
|
|
14311
|
+
charactersRemaining: 7,
|
|
14312
|
+
})));
|
|
14313
|
+
};
|
|
14314
|
+
const CustomizeUrlCustomized = () => {
|
|
14315
|
+
return (h(ShareLinkView, Object.assign({}, {
|
|
14316
|
+
...defaultCustomizeProps,
|
|
14317
|
+
copyTextViewProps: {
|
|
14318
|
+
...defaultCustomizeProps.copyTextViewProps,
|
|
14319
|
+
copyString: "https://ssqt.co/bobtesterson",
|
|
14320
|
+
},
|
|
14321
|
+
})));
|
|
14322
|
+
};
|
|
14323
|
+
const CustomizeUrlLimitReached = () => {
|
|
14324
|
+
return (h(ShareLinkView, Object.assign({}, {
|
|
14325
|
+
...defaultCustomizeProps,
|
|
14326
|
+
copyTextViewProps: {
|
|
14327
|
+
...defaultCustomizeProps.copyTextViewProps,
|
|
14328
|
+
copyString: "https://ssqt.co/bobtesterson",
|
|
14329
|
+
},
|
|
14330
|
+
editsRemaining: 0,
|
|
14331
|
+
limitReached: true,
|
|
14332
|
+
})));
|
|
14333
|
+
};
|
|
14334
|
+
const CustomizeUrlDisabled = () => {
|
|
14335
|
+
return (h(ShareLinkView, Object.assign({}, {
|
|
14336
|
+
...defaultCustomizeProps,
|
|
14337
|
+
customizeDisabled: true,
|
|
14338
|
+
})));
|
|
14339
|
+
};
|
|
14340
|
+
const CustomizeUrlValidationError = () => {
|
|
14341
|
+
return (h(ShareLinkView, Object.assign({}, {
|
|
14342
|
+
...defaultCustomizeProps,
|
|
14343
|
+
isEditing: true,
|
|
14344
|
+
editValue: "nvoiwb18",
|
|
14345
|
+
charactersRemaining: 7,
|
|
14346
|
+
validationError: {
|
|
14347
|
+
code: "EXISTING_CODE_CONFLICT",
|
|
14348
|
+
title: "This link is already taken",
|
|
14349
|
+
description: "Try adding numbers, a dash or underscore to create a unique link.",
|
|
14350
|
+
},
|
|
14351
|
+
})));
|
|
14352
|
+
};
|
|
14353
|
+
const CustomizeUrlInvalidCharacters = () => {
|
|
14354
|
+
return (h(ShareLinkView, Object.assign({}, {
|
|
14355
|
+
...defaultCustomizeProps,
|
|
14356
|
+
isEditing: true,
|
|
14357
|
+
editValue: "nvoiwb18",
|
|
14358
|
+
charactersRemaining: 7,
|
|
14359
|
+
validationError: {
|
|
14360
|
+
code: "INVALID_CHARACTER",
|
|
14361
|
+
title: "Please use only letters, numbers, dashes and underscores",
|
|
14362
|
+
description: "Special characters can break the link when sharing.",
|
|
14363
|
+
},
|
|
14364
|
+
})));
|
|
14365
|
+
};
|
|
14366
|
+
const CustomizeUrlProfanity = () => {
|
|
14367
|
+
return (h(ShareLinkView, Object.assign({}, {
|
|
14368
|
+
...defaultCustomizeProps,
|
|
14369
|
+
isEditing: true,
|
|
14370
|
+
editValue: "nvoiwb18",
|
|
14371
|
+
charactersRemaining: 7,
|
|
14372
|
+
validationError: {
|
|
14373
|
+
code: "BLOCKED_WORD",
|
|
14374
|
+
title: "Please try a different link",
|
|
14375
|
+
description: "This link contains a restricted word.",
|
|
14376
|
+
},
|
|
14377
|
+
})));
|
|
14378
|
+
};
|
|
14379
|
+
const CustomizeUrlSaving = () => {
|
|
14380
|
+
return (h(ShareLinkView, Object.assign({}, {
|
|
14381
|
+
...defaultCustomizeProps,
|
|
14382
|
+
isEditing: true,
|
|
14383
|
+
editValue: "bobtesterson",
|
|
14384
|
+
isSaving: true,
|
|
14385
|
+
})));
|
|
14386
|
+
};
|
|
14095
14387
|
|
|
14096
14388
|
const ShareLink = /*#__PURE__*/Object.freeze({
|
|
14097
14389
|
__proto__: null,
|
|
@@ -14106,7 +14398,16 @@ const ShareLink = /*#__PURE__*/Object.freeze({
|
|
|
14106
14398
|
CopyButtonBelow: CopyButtonBelow$3,
|
|
14107
14399
|
CustomStyles: CustomStyles$1,
|
|
14108
14400
|
CustomStylesWithDemoHooks: CustomStylesWithDemoHooks,
|
|
14109
|
-
FullStack: FullStack
|
|
14401
|
+
FullStack: FullStack,
|
|
14402
|
+
CustomizeUrlDefault: CustomizeUrlDefault,
|
|
14403
|
+
CustomizeUrlEditing: CustomizeUrlEditing,
|
|
14404
|
+
CustomizeUrlCustomized: CustomizeUrlCustomized,
|
|
14405
|
+
CustomizeUrlLimitReached: CustomizeUrlLimitReached,
|
|
14406
|
+
CustomizeUrlDisabled: CustomizeUrlDisabled,
|
|
14407
|
+
CustomizeUrlValidationError: CustomizeUrlValidationError,
|
|
14408
|
+
CustomizeUrlInvalidCharacters: CustomizeUrlInvalidCharacters,
|
|
14409
|
+
CustomizeUrlProfanity: CustomizeUrlProfanity,
|
|
14410
|
+
CustomizeUrlSaving: CustomizeUrlSaving
|
|
14110
14411
|
});
|
|
14111
14412
|
|
|
14112
14413
|
const UseShareLink_stories = {
|
|
@@ -14144,11 +14445,11 @@ const BareBonesView$1 = createHookStory(() => {
|
|
|
14144
14445
|
return (h("div", null,
|
|
14145
14446
|
"Sharelink:",
|
|
14146
14447
|
" ",
|
|
14147
|
-
h("code", { style: { borderStyle: "solid", borderWidth: "1px", padding: "2px" } }, res.copyString)));
|
|
14448
|
+
h("code", { style: { borderStyle: "solid", borderWidth: "1px", padding: "2px" } }, res.copyTextViewProps.copyString)));
|
|
14148
14449
|
});
|
|
14149
14450
|
const RegularView$2 = createHookStory(() => {
|
|
14150
14451
|
setupGraphQL$c();
|
|
14151
|
-
return (h(
|
|
14452
|
+
return (h(ShareLinkView, Object.assign({}, useShareLink({
|
|
14152
14453
|
programId: "klip-referral-program",
|
|
14153
14454
|
tooltiptext: "Copied to clipboard",
|
|
14154
14455
|
tooltiplifespan: 1000,
|
|
@@ -14156,19 +14457,29 @@ const RegularView$2 = createHookStory(() => {
|
|
|
14156
14457
|
});
|
|
14157
14458
|
const FastTooltip = createHookStory(() => {
|
|
14158
14459
|
setupGraphQL$c();
|
|
14159
|
-
return (h(
|
|
14460
|
+
return (h(ShareLinkView, Object.assign({}, useShareLink({
|
|
14160
14461
|
programId: "klip-referral-program",
|
|
14161
|
-
tooltiptext: "
|
|
14462
|
+
tooltiptext: "Copied to clipboard",
|
|
14162
14463
|
tooltiplifespan: 500,
|
|
14163
14464
|
}))));
|
|
14164
14465
|
});
|
|
14466
|
+
const CustomizeUrlEnabled = createHookStory(() => {
|
|
14467
|
+
setupGraphQL$c();
|
|
14468
|
+
return (h(ShareLinkView, Object.assign({}, useShareLink({
|
|
14469
|
+
programId: "klip-referral-program",
|
|
14470
|
+
tooltiptext: "Copied to clipboard",
|
|
14471
|
+
tooltiplifespan: 1000,
|
|
14472
|
+
allowCustomization: true,
|
|
14473
|
+
}))));
|
|
14474
|
+
});
|
|
14165
14475
|
|
|
14166
14476
|
const UseShareLink = /*#__PURE__*/Object.freeze({
|
|
14167
14477
|
__proto__: null,
|
|
14168
14478
|
'default': UseShareLink_stories,
|
|
14169
14479
|
BareBonesView: BareBonesView$1,
|
|
14170
14480
|
RegularView: RegularView$2,
|
|
14171
|
-
FastTooltip: FastTooltip
|
|
14481
|
+
FastTooltip: FastTooltip,
|
|
14482
|
+
CustomizeUrlEnabled: CustomizeUrlEnabled
|
|
14172
14483
|
});
|
|
14173
14484
|
|
|
14174
14485
|
const scenario$C = "@author:Zach\n@owner:Zach\nFeature: Tabs\n\n The Tabs takes in the Tab component as children and maps through to display their header and content.\n\n Background: A user on the portal is viewing the widget\n Given a user viewing the Tabs component\n\n @motivating\n Scenario: Content inside the active tab is shown\n Given the header is set to <tabHeader>\n And the content inside is <tabContent>\n And the user has clicked <tabHeader>\n Then the <tabContent> is shown\n Examples:\n | tabHeader | tabContent |\n | Settings | This is the settings tab |\n | General | This is the general tab |\n | History | This is the history tab |\n\n @motivating\n @ui\n Scenario: The placement of the tabs is configurable\n Given The placement prop has been passed a valid <placement>\n Then tabs are placed on the <placementResult>\n Examples:\n | placement | placementResult |\n | | top of the content |\n | left | left hand side of the content |\n | right | right hand side of the content |\n | bottom | bottom of the content |\n\n\n @minutia\n @ui\n Scenario Outline: Tabs are setup to use the brand color\n Given the brand color is set to darkblue\n Then the text inside the active tab is darkblue\n And the underline of the active tab is darkblue\n\n @ui\n Scenario: Tabs are responsive\n Given the user is on a mobile device\n When there are more tabs than the horizontal space allows for\n Then clickable arrows appear on the left and right of the tabs\n And the tabs are scrollable\n\n @landmine\n Scenario: Program section cannot be used inside of tabs\n Given a tabs component\n And tab containing a program section with program-id \"test123\"\n And the program section wraps a component using program context\n When the tabs component is rendered\n Then the \"sq:program-id\" event listener for the program section is removed\n And the component does not use program-id \"test123\" to source its data\n And falls back to the global program id";
|
|
@@ -18451,7 +18762,6 @@ const defaultText = {
|
|
|
18451
18762
|
region: "Region",
|
|
18452
18763
|
postalCode: "Postal Code",
|
|
18453
18764
|
currency: "Currency",
|
|
18454
|
-
currencyHelpText: "Select your preferred currency for payouts",
|
|
18455
18765
|
allowBankingCollection: "I agree to the {termsAndConditionsLink}",
|
|
18456
18766
|
personalInformation: "Personal Information",
|
|
18457
18767
|
continueButton: "Continue",
|
|
@@ -18757,6 +19067,7 @@ const defaultText$1 = {
|
|
|
18757
19067
|
descriptionNewPartner: "Confirm your country and currency now to get your future rewards faster.",
|
|
18758
19068
|
descriptionExistingPartner: "We noticed you are already an Impact.com partner, please confirm your information.",
|
|
18759
19069
|
supportDescriptionExistingPartner: "If this is a mistake, please contact Support or sign up for this referral program with a different email.",
|
|
19070
|
+
supportLink: "Support",
|
|
18760
19071
|
countryLabel: "Country",
|
|
18761
19072
|
currencyLabel: "Currency",
|
|
18762
19073
|
submitButtonLabel: "Submit",
|
|
@@ -18774,15 +19085,13 @@ const defaultProps$y = {
|
|
|
18774
19085
|
loading: false,
|
|
18775
19086
|
submitting: false,
|
|
18776
19087
|
isExistingPartner: false,
|
|
18777
|
-
countryCode:
|
|
18778
|
-
currency:
|
|
19088
|
+
countryCode: null,
|
|
19089
|
+
currency: null,
|
|
18779
19090
|
error: "",
|
|
18780
19091
|
success: false,
|
|
18781
|
-
brandName: "Test Brand",
|
|
18782
19092
|
filteredCountries: demoCountries,
|
|
18783
19093
|
filteredCurrencies: demoCurrencies,
|
|
18784
19094
|
allowBankingCollection: false,
|
|
18785
|
-
checkboxError: "",
|
|
18786
19095
|
disabled: false,
|
|
18787
19096
|
},
|
|
18788
19097
|
callbacks: noopCallbacks,
|
|
@@ -18825,6 +19134,18 @@ const ExistingPartnerConfirm = () => {
|
|
|
18825
19134
|
};
|
|
18826
19135
|
return h(PartnerInfoModalView, Object.assign({}, props));
|
|
18827
19136
|
};
|
|
19137
|
+
const ExistingPartnerEmpty = () => {
|
|
19138
|
+
const props = {
|
|
19139
|
+
...defaultProps$y,
|
|
19140
|
+
states: {
|
|
19141
|
+
...defaultProps$y.states,
|
|
19142
|
+
isExistingPartner: true,
|
|
19143
|
+
countryCode: "",
|
|
19144
|
+
currency: "",
|
|
19145
|
+
},
|
|
19146
|
+
};
|
|
19147
|
+
return h(PartnerInfoModalView, Object.assign({}, props));
|
|
19148
|
+
};
|
|
18828
19149
|
const Submitting = () => {
|
|
18829
19150
|
const props = {
|
|
18830
19151
|
...defaultProps$y,
|
|
@@ -18871,6 +19192,16 @@ const Closed = () => {
|
|
|
18871
19192
|
};
|
|
18872
19193
|
return h(PartnerInfoModalView, Object.assign({}, props));
|
|
18873
19194
|
};
|
|
19195
|
+
const SQMComponentExistingPartner = () => {
|
|
19196
|
+
return (h("sqm-partner-info-modal", { "support-link": "Support", "support-description-existing-partner": "If this is a mistake, please contact {supportLink} or sign up for this referral program with a different email.", "allow-banking-collection": "I have read the {termsAndConditionsLink} and allow impact.com to collect my tax and banking information", "terms-and-conditions-label": "terms and conditions", "terms-and-conditions-link": "https://terms.advocate.impact.com/PayoutTermsAndConditions.html", demoData: {
|
|
19197
|
+
states: { open: true, isExistingPartner: true },
|
|
19198
|
+
} }));
|
|
19199
|
+
};
|
|
19200
|
+
const SQMComponentNewPartner = () => {
|
|
19201
|
+
return (h("sqm-partner-info-modal", { demoData: {
|
|
19202
|
+
states: { open: true, isExistingPartner: false },
|
|
19203
|
+
} }));
|
|
19204
|
+
};
|
|
18874
19205
|
|
|
18875
19206
|
const PartnerInfoModal = /*#__PURE__*/Object.freeze({
|
|
18876
19207
|
__proto__: null,
|
|
@@ -18879,10 +19210,13 @@ const PartnerInfoModal = /*#__PURE__*/Object.freeze({
|
|
|
18879
19210
|
NewPartnerPrefilled: NewPartnerPrefilled,
|
|
18880
19211
|
NewPartnerFullySelected: NewPartnerFullySelected,
|
|
18881
19212
|
ExistingPartnerConfirm: ExistingPartnerConfirm,
|
|
19213
|
+
ExistingPartnerEmpty: ExistingPartnerEmpty,
|
|
18882
19214
|
Submitting: Submitting,
|
|
18883
19215
|
WithError: WithError$3,
|
|
18884
19216
|
ValidationError: ValidationError$1,
|
|
18885
|
-
Closed: Closed
|
|
19217
|
+
Closed: Closed,
|
|
19218
|
+
SQMComponentExistingPartner: SQMComponentExistingPartner,
|
|
19219
|
+
SQMComponentNewPartner: SQMComponentNewPartner
|
|
18886
19220
|
});
|
|
18887
19221
|
|
|
18888
19222
|
const WidgetVerification_stories = {
|
|
@@ -18910,6 +19244,59 @@ const WidgetVerification = /*#__PURE__*/Object.freeze({
|
|
|
18910
19244
|
Loading: Loading$h
|
|
18911
19245
|
});
|
|
18912
19246
|
|
|
19247
|
+
const scenario$G = "@owner:zach @author:zach\nFeature: User Attribute\n Displays a user's custom field value.\n\n Background: A user exists\n Given a user is logged in\n And the user has custom fields\n\n @motivating\n Scenario: A custom field value is displayed\n Given the component has prop \"value\" with value \"firstName\"\n And the user has a custom field \"firstName\" with value \"John\"\n When the component is rendered\n Then the text \"John\" is displayed\n\n @landmine\n Scenario: Nothing is rendered when the custom field does not exist\n Given the component has prop \"value\" with value \"nonExistentField\"\n And the user does not have a custom field \"nonExistentField\"\n Then component is not rendered\n And nothing is displayed\n\n @motivating\n Scenario: Nothing is rendered while user data is loading\n Given the component is loading user data\n When the component is rendered\n Then component is not rendered\n And nothing is displayed\n\n @motivating\n Scenario Outline: Optional styling props can be applied to customize the text appearance\n Given the component has prop <prop> with value <value>\n When the component is rendered\n Then the text is displayed with <cssProperty> set to <value>\n\n Examples:\n | prop | value | cssProperty |\n | fontSize | 24 | font-size |\n | color | #E91E63 | color |\n | fontWeight | 700 | font-weight |\n\n @minutia\n Scenario: Style props are optional and default to no custom styling\n Given the component has no style props set\n When the component is rendered\n Then the text is displayed with default browser styles\n";
|
|
19248
|
+
|
|
19249
|
+
const UserAttribute_stories = {
|
|
19250
|
+
title: "Components/User Attribute",
|
|
19251
|
+
parameters: {
|
|
19252
|
+
scenario: scenario$G,
|
|
19253
|
+
},
|
|
19254
|
+
};
|
|
19255
|
+
const Default$x = () => {
|
|
19256
|
+
return (h("sqm-user-attribute", { demoData: {
|
|
19257
|
+
loading: false,
|
|
19258
|
+
value: "impact.com",
|
|
19259
|
+
} }));
|
|
19260
|
+
};
|
|
19261
|
+
/*
|
|
19262
|
+
Verifies that an sqm-user-attribute with no valid value
|
|
19263
|
+
collapses completely and does not create extra space
|
|
19264
|
+
(e.g. a double gap) in a flex layout.
|
|
19265
|
+
*/
|
|
19266
|
+
const InvalidValue = () => {
|
|
19267
|
+
return (h("div", { style: { display: "flex", flexDirection: "column", gap: "16px" } },
|
|
19268
|
+
h("div", { style: { background: "#e0e0e0", padding: "8px" } }, "Above"),
|
|
19269
|
+
h("sqm-user-attribute", { demoData: {
|
|
19270
|
+
loading: false,
|
|
19271
|
+
value: null,
|
|
19272
|
+
} }),
|
|
19273
|
+
h("div", { style: { background: "#e0e0e0", padding: "8px" } }, "Below")));
|
|
19274
|
+
};
|
|
19275
|
+
const Loading$i = () => {
|
|
19276
|
+
return (h("sqm-user-attribute", { demoData: {
|
|
19277
|
+
loading: true,
|
|
19278
|
+
value: "impact.com",
|
|
19279
|
+
} }));
|
|
19280
|
+
};
|
|
19281
|
+
const WithCustomStyles = () => {
|
|
19282
|
+
return (h("sqm-user-attribute", { demoData: {
|
|
19283
|
+
loading: false,
|
|
19284
|
+
value: "impact.com",
|
|
19285
|
+
fontSize: 24,
|
|
19286
|
+
color: "#4CAF50",
|
|
19287
|
+
fontWeight: 700,
|
|
19288
|
+
} }));
|
|
19289
|
+
};
|
|
19290
|
+
|
|
19291
|
+
const UserAttribute = /*#__PURE__*/Object.freeze({
|
|
19292
|
+
__proto__: null,
|
|
19293
|
+
'default': UserAttribute_stories,
|
|
19294
|
+
Default: Default$x,
|
|
19295
|
+
InvalidValue: InvalidValue,
|
|
19296
|
+
Loading: Loading$i,
|
|
19297
|
+
WithCustomStyles: WithCustomStyles
|
|
19298
|
+
});
|
|
19299
|
+
|
|
18913
19300
|
function deepFreeze(obj) {
|
|
18914
19301
|
if (obj instanceof Map) {
|
|
18915
19302
|
obj.clear = obj.delete = obj.set = function () {
|
|
@@ -21605,6 +21992,7 @@ const stories = [
|
|
|
21605
21992
|
TaxAndCashReferralTable$1,
|
|
21606
21993
|
PartnerInfoModal,
|
|
21607
21994
|
WidgetVerification,
|
|
21995
|
+
UserAttribute,
|
|
21608
21996
|
];
|
|
21609
21997
|
const StencilStorybook = class {
|
|
21610
21998
|
constructor(hostRef) {
|