@saasquatch/mint-components 1.13.3-0 → 1.13.3
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-3ddee92b.js → ShadowViewAddon-14a02da4.js} +138 -104
- package/dist/cjs/{useReferralCodes-82e8797b.js → copy-text-view-a5524c20.js} +93 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/mint-components.cjs.js +1 -1
- package/dist/cjs/{sqm-big-stat_39.cjs.entry.js → sqm-big-stat_41.cjs.entry.js} +221 -4
- package/dist/cjs/sqm-pagination_3.cjs.entry.js +5 -6
- package/dist/cjs/sqm-portal-email-verification.cjs.entry.js +1 -1
- package/dist/cjs/sqm-portal-forgot-password.cjs.entry.js +1 -1
- package/dist/cjs/sqm-portal-google-registration-form.cjs.entry.js +1 -1
- package/dist/cjs/{sqm-portal-registration-form-view-ebf355a6.js → sqm-portal-registration-form-view-637a4bf4.js} +1 -0
- package/dist/cjs/sqm-portal-registration-form.cjs.entry.js +2 -1
- package/dist/cjs/sqm-portal-reset-password.cjs.entry.js +1 -1
- package/dist/cjs/sqm-portal-verify-email.cjs.entry.js +1 -1
- package/dist/cjs/sqm-stencilbook.cjs.entry.js +469 -382
- package/dist/collection/collection-manifest.json +2 -1
- package/dist/collection/components/sqm-checkbox-field/CheckboxField.stories.js +1 -1
- package/dist/collection/components/sqm-checkbox-field/sqm-checkbox-field-view.js +6 -15
- package/dist/collection/components/sqm-checkbox-field/sqm-checkbox-field.js +5 -5
- package/dist/collection/components/sqm-marketing-emails-checkbox/MarketingEmailsCheckbox.stories.js +11 -0
- package/dist/collection/components/sqm-marketing-emails-checkbox/sqm-marketing-emails-checkbox.js +129 -0
- package/dist/collection/components/sqm-portal-change-marketing/ChangeMarketing.stories.js +54 -0
- package/dist/collection/components/sqm-portal-change-marketing/sqm-portal-change-marketing-view.js +47 -0
- package/dist/collection/components/sqm-portal-change-marketing/sqm-portal-change-marketing.js +217 -0
- package/dist/collection/components/sqm-portal-change-marketing/usePortalChangeMarketing.js +115 -0
- package/dist/collection/components/sqm-portal-email-verification/sqm-portal-email-verification.js +3 -3
- package/dist/collection/components/sqm-portal-forgot-password/sqm-portal-forgot-password.js +3 -3
- package/dist/collection/components/sqm-portal-google-registration-form/sqm-portal-google-registration-form.js +2 -2
- package/dist/collection/components/sqm-portal-login/sqm-portal-login.js +3 -3
- package/dist/collection/components/sqm-portal-registration-form/PortalRegistrationForm.stories.js +4 -0
- package/dist/collection/components/sqm-portal-registration-form/sqm-portal-registration-form-view.js +1 -0
- package/dist/collection/components/sqm-portal-registration-form/sqm-portal-registration-form.js +3 -2
- package/dist/collection/components/sqm-portal-reset-password/sqm-portal-reset-password.js +3 -3
- package/dist/collection/components/sqm-portal-verify-email/sqm-portal-verify-email.js +3 -3
- package/dist/collection/components/sqm-stencilbook/sqm-stencilbook.js +6 -0
- package/dist/esm/{ShadowViewAddon-d3c11480.js → ShadowViewAddon-23a6afab.js} +140 -107
- package/dist/esm/{useReferralCodes-1fdb0d92.js → copy-text-view-459a2e35.js} +95 -3
- package/dist/esm/{global-19d115b9.js → global-be1f9992.js} +2 -2
- package/dist/esm/{index.module-8553586f.js → index.module-89a79f66.js} +1 -1
- package/dist/esm/loader.js +4 -4
- package/dist/esm/{luxon-94dbc741.js → luxon-8d51c92b.js} +1 -1
- package/dist/esm/mint-components.js +4 -4
- package/dist/esm/{mockRewardData-cc9b3ada.js → mockRewardData-8bd1b356.js} +1 -1
- package/dist/esm/{re-render-bc2b60fe.js → re-render-cc945f38.js} +2 -2
- package/dist/esm/sqm-asset-card.entry.js +2 -2
- package/dist/esm/sqm-banking-info-form_17.entry.js +10 -10
- package/dist/esm/{sqm-big-stat_39.entry.js → sqm-big-stat_41.entry.js} +230 -15
- package/dist/esm/sqm-close-button.entry.js +2 -2
- package/dist/esm/sqm-context-router.entry.js +2 -2
- package/dist/esm/sqm-email-verification.entry.js +4 -4
- package/dist/esm/sqm-empty_4.entry.js +3 -3
- package/dist/esm/sqm-form-message.entry.js +1 -1
- package/dist/esm/sqm-google-sign-in.entry.js +2 -2
- package/dist/esm/sqm-graphql-client-provider.entry.js +2 -2
- package/dist/esm/sqm-header-logo.entry.js +1 -1
- package/dist/esm/sqm-instant-access-registration.entry.js +4 -4
- package/dist/esm/{sqm-invoice-table-view-eb07d994.js → sqm-invoice-table-view-af69cd33.js} +1 -1
- package/dist/esm/sqm-leaderboard-rank.entry.js +3 -3
- package/dist/esm/sqm-logout-current-user.entry.js +2 -2
- package/dist/esm/{sqm-navigation-sidebar-item-view-70b65660.js → sqm-navigation-sidebar-item-view-8f1c72bc.js} +1 -1
- package/dist/esm/sqm-navigation-sidebar-item.entry.js +3 -3
- package/dist/esm/sqm-navigation-sidebar.entry.js +2 -2
- package/dist/esm/sqm-pagination_3.entry.js +4 -5
- package/dist/esm/sqm-password-field.entry.js +3 -3
- package/dist/esm/sqm-popup-container.entry.js +2 -2
- package/dist/esm/{sqm-portal-email-verification-view-84867a42.js → sqm-portal-email-verification-view-35b4353b.js} +1 -1
- package/dist/esm/sqm-portal-email-verification.entry.js +5 -5
- package/dist/esm/sqm-portal-forgot-password.entry.js +3 -3
- package/dist/esm/sqm-portal-google-login.entry.js +3 -3
- package/dist/esm/sqm-portal-google-registration-form.entry.js +5 -5
- package/dist/esm/sqm-portal-logout.entry.js +2 -2
- package/dist/esm/{sqm-portal-profile-view-32088a59.js → sqm-portal-profile-view-93003974.js} +1 -1
- package/dist/esm/sqm-portal-profile.entry.js +5 -5
- package/dist/esm/sqm-portal-protected-route.entry.js +2 -2
- package/dist/esm/{sqm-portal-registration-form-view-32c4b488.js → sqm-portal-registration-form-view-3c1f6000.js} +1 -0
- package/dist/esm/sqm-portal-registration-form.entry.js +6 -5
- package/dist/esm/sqm-portal-reset-password.entry.js +3 -3
- package/dist/esm/sqm-portal-verify-email.entry.js +3 -3
- package/dist/esm/sqm-referral-table_11.entry.js +8 -8
- package/dist/esm/sqm-referred-registration.entry.js +4 -4
- package/dist/esm/sqm-rewards-table-customer-note-cell.entry.js +1 -1
- package/dist/esm/sqm-rewards-table-customer-note-column.entry.js +3 -3
- package/dist/esm/sqm-rewards-table_9.entry.js +8 -8
- package/dist/esm/sqm-scroll.entry.js +1 -1
- package/dist/esm/sqm-stencilbook.entry.js +479 -392
- package/dist/esm/sqm-tab.entry.js +3 -3
- package/dist/esm/sqm-tabs.entry.js +4 -4
- package/dist/esm/sqm-text-span.entry.js +1 -1
- package/dist/esm/sqm-widget-verification-controller.entry.js +2 -2
- package/dist/esm/sqm-widget-verification.entry.js +2 -2
- package/dist/esm/{stencil-hooks.module-c643ef4a.js → stencil-hooks.module-4bc38af4.js} +1 -1
- package/dist/esm/{useChildElements-cbd0fedf.js → useChildElements-7945ae56.js} +2 -2
- package/dist/esm/{useInstantAccessRegistration-06e94ce3.js → useInstantAccessRegistration-dc4ad9f2.js} +3 -3
- package/dist/esm/{usePayoutStatus-6701d491.js → usePayoutStatus-58aa56b4.js} +2 -2
- package/dist/esm/{usePortalLogin-e6f1ebd1.js → usePortalLogin-ef647a50.js} +2 -2
- package/dist/esm/{usePortalRegistrationForm-6f22d7d7.js → usePortalRegistrationForm-4b35a357.js} +3 -3
- package/dist/esm/{useReferralTable-055a8849.js → useReferralTable-b3876ed6.js} +4 -4
- package/dist/esm/{useRegistrationFormState-7229b088.js → useRegistrationFormState-d6f33135.js} +2 -2
- package/dist/esm/{useVerificationEmail-a142db0c.js → useVerificationEmail-edc318cb.js} +2 -2
- package/dist/esm/{utilities-559f8273.js → utilities-5b0ca040.js} +2 -2
- package/dist/esm-es5/ShadowViewAddon-23a6afab.js +1 -0
- package/dist/esm-es5/copy-text-view-459a2e35.js +1 -0
- package/dist/esm-es5/{global-19d115b9.js → global-be1f9992.js} +1 -1
- package/dist/esm-es5/{index.module-8553586f.js → index.module-89a79f66.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/{luxon-94dbc741.js → luxon-8d51c92b.js} +1 -1
- package/dist/esm-es5/mint-components.js +1 -1
- package/dist/esm-es5/{mockRewardData-cc9b3ada.js → mockRewardData-8bd1b356.js} +1 -1
- package/dist/esm-es5/{re-render-bc2b60fe.js → re-render-cc945f38.js} +1 -1
- package/dist/esm-es5/sqm-asset-card.entry.js +1 -1
- package/dist/esm-es5/sqm-banking-info-form_17.entry.js +1 -1
- package/dist/esm-es5/sqm-big-stat_41.entry.js +1 -0
- package/dist/esm-es5/sqm-close-button.entry.js +1 -1
- package/dist/esm-es5/sqm-context-router.entry.js +1 -1
- package/dist/esm-es5/sqm-email-verification.entry.js +1 -1
- package/dist/esm-es5/sqm-empty_4.entry.js +1 -1
- package/dist/esm-es5/sqm-form-message.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-header-logo.entry.js +1 -1
- package/dist/esm-es5/sqm-instant-access-registration.entry.js +1 -1
- package/dist/esm-es5/{sqm-invoice-table-view-eb07d994.js → sqm-invoice-table-view-af69cd33.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-70b65660.js → sqm-navigation-sidebar-item-view-8f1c72bc.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-password-field.entry.js +1 -1
- package/dist/esm-es5/sqm-popup-container.entry.js +1 -1
- package/dist/esm-es5/{sqm-portal-email-verification-view-84867a42.js → sqm-portal-email-verification-view-35b4353b.js} +1 -1
- package/dist/esm-es5/sqm-portal-email-verification.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-forgot-password.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-google-login.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-google-registration-form.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-logout.entry.js +1 -1
- package/dist/esm-es5/{sqm-portal-profile-view-32088a59.js → sqm-portal-profile-view-93003974.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-32c4b488.js → sqm-portal-registration-form-view-3c1f6000.js} +1 -1
- package/dist/esm-es5/sqm-portal-registration-form.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-reset-password.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-verify-email.entry.js +1 -1
- package/dist/esm-es5/sqm-referral-table_11.entry.js +1 -1
- package/dist/esm-es5/sqm-referred-registration.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-scroll.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.entry.js +1 -1
- package/dist/esm-es5/sqm-widget-verification-controller.entry.js +1 -1
- package/dist/esm-es5/sqm-widget-verification.entry.js +1 -1
- package/dist/esm-es5/{stencil-hooks.module-c643ef4a.js → stencil-hooks.module-4bc38af4.js} +1 -1
- package/dist/esm-es5/useChildElements-7945ae56.js +1 -0
- package/dist/esm-es5/{useInstantAccessRegistration-06e94ce3.js → useInstantAccessRegistration-dc4ad9f2.js} +1 -1
- package/dist/esm-es5/{usePayoutStatus-6701d491.js → usePayoutStatus-58aa56b4.js} +1 -1
- package/dist/esm-es5/{usePortalLogin-e6f1ebd1.js → usePortalLogin-ef647a50.js} +1 -1
- package/dist/esm-es5/{usePortalRegistrationForm-6f22d7d7.js → usePortalRegistrationForm-4b35a357.js} +1 -1
- package/dist/esm-es5/{useReferralTable-055a8849.js → useReferralTable-b3876ed6.js} +1 -1
- package/dist/esm-es5/{useRegistrationFormState-7229b088.js → useRegistrationFormState-d6f33135.js} +1 -1
- package/dist/esm-es5/{useVerificationEmail-a142db0c.js → useVerificationEmail-edc318cb.js} +1 -1
- package/dist/esm-es5/{utilities-559f8273.js → utilities-5b0ca040.js} +1 -1
- package/dist/mint-components/mint-components.esm.js +1 -1
- package/dist/mint-components/mint-components.js +1 -1
- package/dist/mint-components/{p-afbe1fab.entry.js → p-00ed4c2e.entry.js} +1 -1
- package/dist/mint-components/{p-8052a165.entry.js → p-01010af0.entry.js} +34 -17
- package/dist/mint-components/{p-4d4c3fda.entry.js → p-04a6e457.entry.js} +1 -1
- package/dist/mint-components/{p-46361336.js → p-05f29f64.js} +1 -1
- package/dist/mint-components/{p-b509682c.system.js → p-0d182dc1.system.js} +1 -1
- package/dist/mint-components/{p-d270c7a9.entry.js → p-0d2d0b6d.entry.js} +1 -1
- package/dist/mint-components/{p-ff45a502.entry.js → p-10d17989.entry.js} +1 -1
- package/dist/mint-components/{p-05910568.system.js → p-13ed8586.system.js} +1 -1
- package/dist/mint-components/p-141bf5c1.system.entry.js +1 -0
- package/dist/mint-components/p-1513309d.entry.js +1 -0
- package/dist/mint-components/{p-4a332d4a.system.entry.js → p-164a9103.system.entry.js} +1 -1
- package/dist/mint-components/{p-7edd349f.system.entry.js → p-18425f38.system.entry.js} +1 -1
- package/dist/mint-components/{p-dd5380e7.system.entry.js → p-19bc3406.system.entry.js} +1 -1
- package/dist/mint-components/p-19ccb4ce.js +1 -0
- package/dist/mint-components/{p-b8c8a7a2.entry.js → p-1a6b7d2a.entry.js} +1 -1
- package/dist/mint-components/{p-019a9a23.system.entry.js → p-1b3ab15a.system.entry.js} +1 -1
- package/dist/mint-components/p-1fa9ed0d.system.entry.js +1 -0
- package/dist/mint-components/{p-b8c2452e.system.entry.js → p-21620f81.system.entry.js} +1 -1
- package/dist/mint-components/p-275b4767.entry.js +1 -0
- package/dist/mint-components/{p-f4b9d88e.entry.js → p-284e4ed5.entry.js} +1 -1
- package/dist/mint-components/{p-3107ff75.entry.js → p-2ae0e06a.entry.js} +1 -1
- package/dist/mint-components/{p-fea93ffb.entry.js → p-2bbff88f.entry.js} +1 -1
- package/dist/mint-components/{p-e0b16d7d.system.js → p-2d52e2d7.system.js} +1 -1
- package/dist/mint-components/{p-6b2b1f57.entry.js → p-2da21ba4.entry.js} +1 -1
- package/dist/mint-components/{p-35a1395e.entry.js → p-2f101bae.entry.js} +1 -1
- package/dist/mint-components/p-301ddcaa.system.entry.js +1 -0
- package/dist/mint-components/{p-206d5653.entry.js → p-33c96e14.entry.js} +1 -1
- package/dist/mint-components/p-33ed6f1c.system.entry.js +1 -0
- package/dist/mint-components/{p-793d3aa3.system.entry.js → p-36ffebd8.system.entry.js} +1 -1
- package/dist/mint-components/p-37996351.system.js +1 -0
- package/dist/mint-components/{p-a8e635c8.entry.js → p-380bfde1.entry.js} +1 -1
- package/dist/mint-components/p-38b5f028.system.entry.js +1 -0
- package/dist/mint-components/p-38fc919b.entry.js +1 -0
- package/dist/mint-components/{p-5b65ad93.js → p-3db34d68.js} +1 -1
- package/dist/mint-components/{p-113a3397.system.entry.js → p-3f6e0197.system.entry.js} +1 -1
- package/dist/mint-components/{p-24168eeb.system.entry.js → p-420554af.system.entry.js} +1 -1
- package/dist/mint-components/{p-76734619.system.entry.js → p-42187319.system.entry.js} +1 -1
- package/dist/mint-components/{p-ebdf4e46.entry.js → p-4428294b.entry.js} +1 -1
- package/dist/mint-components/{p-568239eb.entry.js → p-44891949.entry.js} +1 -1
- package/dist/mint-components/{p-78a1029d.js → p-480e08e9.js} +1 -1
- package/dist/mint-components/{p-c9246591.system.js → p-48135f99.system.js} +1 -1
- package/dist/mint-components/{p-32e46793.js → p-4e451f75.js} +1 -1
- package/dist/mint-components/{p-3197b1e1.js → p-4e526a94.js} +1 -1
- package/dist/mint-components/{p-bebdae4a.system.entry.js → p-50c902ca.system.entry.js} +1 -1
- package/dist/mint-components/{p-84ebf29b.system.js → p-527216de.system.js} +1 -1
- package/dist/mint-components/{p-073cc02e.system.js → p-5488fdd9.system.js} +1 -1
- package/dist/mint-components/{p-00af0a40.system.js → p-59274a91.system.js} +1 -1
- package/dist/mint-components/{p-8b5a132d.js → p-5bedb58c.js} +1 -1
- package/dist/mint-components/{p-b885bf6a.system.entry.js → p-5c28406d.system.entry.js} +1 -1
- package/dist/mint-components/{p-c123040c.system.entry.js → p-5d7e308c.system.entry.js} +1 -1
- package/dist/mint-components/{p-2147f338.system.js → p-635d5ef2.system.js} +1 -1
- package/dist/mint-components/{p-f831af31.js → p-63a75798.js} +1 -1
- package/dist/mint-components/{p-2c521ce3.entry.js → p-6427e963.entry.js} +1 -1
- package/dist/mint-components/{p-a1ace139.js → p-65069b66.js} +1 -1
- package/dist/mint-components/{p-a1d63380.entry.js → p-653f963f.entry.js} +2 -2
- package/dist/mint-components/{p-b017802f.entry.js → p-693942df.entry.js} +2 -2
- package/dist/mint-components/{p-1d761b72.system.js → p-6b7a595f.system.js} +1 -1
- package/dist/mint-components/{p-9b01c219.system.js → p-6cd4f2b1.system.js} +1 -1
- package/dist/mint-components/{p-4831eb49.js → p-6d2f5a1d.js} +2 -2
- package/dist/mint-components/{p-2bcc52ff.system.js → p-6d9e52c7.system.js} +1 -1
- package/dist/mint-components/p-6eaf9c57.entry.js +1 -0
- package/dist/mint-components/p-717cc8ac.system.js +1 -0
- package/dist/mint-components/p-71bc04d2.system.entry.js +1 -0
- package/dist/mint-components/{p-f4125c66.js → p-726a9924.js} +1 -1
- package/dist/mint-components/{p-fb1f75dc.entry.js → p-775f3ded.entry.js} +1 -1
- package/dist/mint-components/{p-84a0679b.entry.js → p-7ab21e4d.entry.js} +1 -1
- package/dist/mint-components/{p-8d60f98e.system.js → p-7c2b9fe4.system.js} +1 -1
- package/dist/mint-components/{p-bfe3fc89.system.entry.js → p-7dabdca6.system.entry.js} +1 -1
- package/dist/mint-components/p-7e7cbccf.system.js +1 -0
- package/dist/mint-components/p-7f2d4212.js +52 -0
- package/dist/mint-components/{p-9966e72f.entry.js → p-7f80a9d7.entry.js} +1 -1
- package/dist/mint-components/{p-1881b80d.system.js → p-8175e85f.system.js} +1 -1
- package/dist/mint-components/{p-f78ecf4d.system.entry.js → p-8362cb4c.system.entry.js} +1 -1
- package/dist/mint-components/{p-feaa7733.system.js → p-8413ade9.system.js} +1 -1
- package/dist/mint-components/{p-f59a57a9.system.entry.js → p-85671c3d.system.entry.js} +1 -1
- package/dist/mint-components/p-8abfeff8.entry.js +1 -0
- package/dist/mint-components/p-8c23d1b8.js +1 -0
- package/dist/mint-components/{p-0cb94e55.system.entry.js → p-8d9d04b7.system.entry.js} +1 -1
- package/dist/mint-components/{p-7875a307.system.entry.js → p-90fc6774.system.entry.js} +1 -1
- package/dist/mint-components/{p-793d2130.js → p-91ab3da1.js} +1 -1
- package/dist/mint-components/{p-4a9f4710.system.js → p-9320582e.system.js} +1 -1
- package/dist/mint-components/{p-1f6203f6.system.entry.js → p-9386ad84.system.entry.js} +1 -1
- package/dist/mint-components/{p-134884eb.js → p-94a876b9.js} +1 -1
- package/dist/mint-components/{p-8e7dbf3d.js → p-962f3200.js} +1 -1
- package/dist/mint-components/p-98698131.js +1 -0
- package/dist/mint-components/{p-de97f736.system.entry.js → p-9b6a0152.system.entry.js} +1 -1
- package/dist/mint-components/{p-153fe35e.system.entry.js → p-9bfd9bed.system.entry.js} +1 -1
- package/dist/mint-components/{p-a4bed343.system.entry.js → p-9cf80e85.system.entry.js} +1 -1
- package/dist/mint-components/{p-4d62fce5.entry.js → p-a2fde301.entry.js} +1 -1
- package/dist/mint-components/{p-9bbe1a0a.system.js → p-a71b9154.system.js} +1 -1
- package/dist/mint-components/p-b207beeb.entry.js +1 -0
- package/dist/mint-components/{p-889ac146.system.entry.js → p-b287833c.system.entry.js} +1 -1
- package/dist/mint-components/{p-adbde540.entry.js → p-b51e79b3.entry.js} +3 -3
- package/dist/mint-components/{p-3af19e46.system.entry.js → p-b7d1469d.system.entry.js} +1 -1
- package/dist/mint-components/{p-a0f61b8d.system.entry.js → p-b82e1935.system.entry.js} +1 -1
- package/dist/mint-components/{p-9b37f5cb.system.entry.js → p-b93fd99c.system.entry.js} +1 -1
- package/dist/mint-components/{p-283588d9.js → p-bbcd824a.js} +1 -1
- package/dist/mint-components/{p-4edcc7dd.system.js → p-bdb7d451.system.js} +1 -1
- package/dist/mint-components/{p-f33a2774.system.entry.js → p-c060f770.system.entry.js} +1 -1
- package/dist/mint-components/{p-bc12e9a4.js → p-c0f19490.js} +2 -2
- package/dist/mint-components/{p-949c8454.system.entry.js → p-c2fdd608.system.entry.js} +1 -1
- package/dist/mint-components/{p-86685076.system.entry.js → p-c36506f6.system.entry.js} +1 -1
- package/dist/mint-components/{p-2858d87a.entry.js → p-cb7bdbe4.entry.js} +1 -1
- package/dist/mint-components/{p-03b8a4b6.entry.js → p-cbbfac66.entry.js} +1 -1
- package/dist/mint-components/{p-e868baa2.system.js → p-cc7af682.system.js} +1 -1
- package/dist/mint-components/{p-033f460e.system.js → p-cd569259.system.js} +1 -1
- package/dist/mint-components/{p-f561fbbe.js → p-cd651f81.js} +1 -1
- package/dist/mint-components/{p-65ab288b.entry.js → p-d07f3090.entry.js} +1 -1
- package/dist/mint-components/p-d3d74266.js +394 -0
- package/dist/mint-components/{p-e75be0ce.js → p-d6831af5.js} +2 -2
- package/dist/mint-components/{p-c876e133.entry.js → p-da7708a7.entry.js} +1 -1
- package/dist/mint-components/{p-1e5685b1.entry.js → p-dcc81e90.entry.js} +1 -1
- package/dist/mint-components/{p-45df37c4.system.entry.js → p-de8e9981.system.entry.js} +1 -1
- package/dist/mint-components/{p-e1e8ce01.system.entry.js → p-e5a5ae7f.system.entry.js} +1 -1
- package/dist/mint-components/{p-bb0f585c.system.js → p-e5d0375e.system.js} +1 -1
- package/dist/mint-components/{p-5bd1129c.entry.js → p-e6f50ffd.entry.js} +1 -1
- package/dist/mint-components/{p-917daa81.entry.js → p-e8ffcc68.entry.js} +2 -2
- package/dist/mint-components/{p-6bc6b98a.system.entry.js → p-f0772618.system.entry.js} +1 -1
- package/dist/mint-components/{p-9ba03826.entry.js → p-f29eda2f.entry.js} +1 -1
- package/dist/mint-components/p-f2cc6a6f.entry.js +9 -0
- package/dist/mint-components/{p-1a9efc82.system.entry.js → p-f2d8d3d3.system.entry.js} +1 -1
- package/dist/mint-components/{p-945fc728.system.entry.js → p-f4a72903.system.entry.js} +1 -1
- package/dist/mint-components/{p-4d744c56.system.entry.js → p-f4a8ee29.system.entry.js} +1 -1
- package/dist/mint-components/{p-46411968.system.entry.js → p-fa37513e.system.entry.js} +1 -1
- package/dist/mint-components/{p-6c962bcd.entry.js → p-faba3198.entry.js} +1 -1
- package/dist/mint-components/{p-acb16e2d.entry.js → p-fe2e2f4a.entry.js} +1 -1
- package/dist/mint-components/p-ff8b8067.entry.js +33 -0
- package/dist/types/components/sqm-checkbox-field/sqm-checkbox-field-view.d.ts +1 -1
- package/dist/types/components/sqm-checkbox-field/sqm-checkbox-field.d.ts +4 -4
- package/dist/types/components/sqm-marketing-emails-checkbox/MarketingEmailsCheckbox.stories.d.ts +8 -0
- package/dist/types/components/sqm-marketing-emails-checkbox/sqm-marketing-emails-checkbox.d.ts +27 -0
- package/dist/types/components/sqm-portal-change-marketing/ChangeMarketing.stories.d.ts +8 -0
- package/dist/types/components/sqm-portal-change-marketing/sqm-portal-change-marketing-view.d.ts +28 -0
- package/dist/types/components/sqm-portal-change-marketing/sqm-portal-change-marketing.d.ts +39 -0
- package/dist/types/components/sqm-portal-change-marketing/usePortalChangeMarketing.d.ts +3 -0
- package/dist/types/components/sqm-portal-email-verification/sqm-portal-email-verification.d.ts +1 -1
- package/dist/types/components/sqm-portal-forgot-password/sqm-portal-forgot-password.d.ts +1 -1
- package/dist/types/components/sqm-portal-login/sqm-portal-login.d.ts +1 -1
- package/dist/types/components/sqm-portal-registration-form/PortalRegistrationForm.stories.d.ts +1 -0
- package/dist/types/components/sqm-portal-registration-form/sqm-portal-registration-form-view.d.ts +1 -0
- package/dist/types/components/sqm-portal-registration-form/sqm-portal-registration-form.d.ts +1 -1
- package/dist/types/components/sqm-portal-reset-password/sqm-portal-reset-password.d.ts +1 -1
- package/dist/types/components/sqm-portal-verify-email/sqm-portal-verify-email.d.ts +1 -1
- package/dist/types/components.d.ts +130 -26
- package/docs/docs.docx +0 -0
- package/docs/raisins.json +1 -1
- package/grapesjs/grapesjs.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/copy-text-view-c85acaaa.js +0 -96
- package/dist/cjs/sqm-qr-code.cjs.entry.js +0 -66
- package/dist/collection/components/sqm-qr-code/sqm-qr-code.js +0 -67
- package/dist/esm/copy-text-view-782137ba.js +0 -94
- package/dist/esm/sqm-qr-code.entry.js +0 -62
- package/dist/esm-es5/ShadowViewAddon-d3c11480.js +0 -1
- package/dist/esm-es5/copy-text-view-782137ba.js +0 -1
- package/dist/esm-es5/sqm-big-stat_39.entry.js +0 -1
- package/dist/esm-es5/sqm-qr-code.entry.js +0 -1
- package/dist/esm-es5/useChildElements-cbd0fedf.js +0 -1
- package/dist/esm-es5/useReferralCodes-1fdb0d92.js +0 -1
- package/dist/mint-components/p-04eda48e.entry.js +0 -1
- package/dist/mint-components/p-0b00b770.system.entry.js +0 -1
- package/dist/mint-components/p-13ed46c5.entry.js +0 -9
- package/dist/mint-components/p-2175e4c3.js +0 -1
- package/dist/mint-components/p-27f35214.system.entry.js +0 -1
- package/dist/mint-components/p-2c16f513.system.js +0 -1
- package/dist/mint-components/p-2cae23f1.system.js +0 -1
- package/dist/mint-components/p-30efd193.js +0 -52
- package/dist/mint-components/p-31015791.js +0 -1
- package/dist/mint-components/p-3b0d6e3d.system.js +0 -1
- package/dist/mint-components/p-3b90e01b.system.js +0 -1
- package/dist/mint-components/p-5800426e.system.entry.js +0 -1
- package/dist/mint-components/p-5fc6c6eb.js +0 -394
- package/dist/mint-components/p-621092ee.js +0 -1
- package/dist/mint-components/p-786d3e9a.entry.js +0 -1
- package/dist/mint-components/p-95e8f60d.entry.js +0 -1
- package/dist/mint-components/p-9b0c175c.entry.js +0 -1
- package/dist/mint-components/p-a18b8466.entry.js +0 -33
- package/dist/mint-components/p-a6d84577.system.entry.js +0 -1
- package/dist/mint-components/p-b7991001.entry.js +0 -1
- package/dist/mint-components/p-bdbf5f74.entry.js +0 -13
- package/dist/mint-components/p-d5cceea8.entry.js +0 -1
- package/dist/mint-components/p-d9b93305.system.entry.js +0 -1
- package/dist/mint-components/p-e847a6f5.system.entry.js +0 -1
- package/dist/mint-components/p-e9a14ca4.system.entry.js +0 -1
- package/dist/mint-components/p-fe268f9d.js +0 -1
- package/dist/types/components/sqm-qr-code/sqm-qr-code.d.ts +0 -5
- package/dist/types/global/android.d.ts +0 -7
- package/dist/types/global/demo.d.ts +0 -2
- package/dist/types/stories/features.d.ts +0 -4
- package/dist/types/stories/templates.d.ts +0 -4
|
@@ -46,12 +46,14 @@
|
|
|
46
46
|
"./components/sqm-leaderboard-rank/sqm-leaderboard-rank.js",
|
|
47
47
|
"./components/sqm-link-button/sqm-link-button.js",
|
|
48
48
|
"./components/sqm-logout-current-user/sqm-logout-current-user.js",
|
|
49
|
+
"./components/sqm-marketing-emails-checkbox/sqm-marketing-emails-checkbox.js",
|
|
49
50
|
"./components/sqm-name-fields/sqm-name-fields.js",
|
|
50
51
|
"./components/sqm-navigation-menu/sqm-navigation-menu.js",
|
|
51
52
|
"./components/sqm-navigation-sidebar/sqm-navigation-sidebar.js",
|
|
52
53
|
"./components/sqm-navigation-sidebar-item/sqm-navigation-sidebar-item.js",
|
|
53
54
|
"./components/sqm-payout-button-scroll/sqm-payout-button-scroll.js",
|
|
54
55
|
"./components/sqm-popup-container/sqm-popup-container.js",
|
|
56
|
+
"./components/sqm-portal-change-marketing/sqm-portal-change-marketing.js",
|
|
55
57
|
"./components/sqm-portal-change-password/sqm-portal-change-password.js",
|
|
56
58
|
"./components/sqm-portal-container/sqm-portal-container.js",
|
|
57
59
|
"./components/sqm-portal-email-verification/sqm-portal-email-verification.js",
|
|
@@ -70,7 +72,6 @@
|
|
|
70
72
|
"./components/sqm-program-explainer/sqm-program-explainer.js",
|
|
71
73
|
"./components/sqm-program-explainer-step/sqm-program-explainer-step.js",
|
|
72
74
|
"./components/sqm-program-menu/sqm-program-menu.js",
|
|
73
|
-
"./components/sqm-qr-code/sqm-qr-code.js",
|
|
74
75
|
"./components/sqm-referral-card/sqm-referral-card.js",
|
|
75
76
|
"./components/sqm-referral-code/sqm-referral-code.js",
|
|
76
77
|
"./components/sqm-referral-iframe/sqm-referral-iframe.js",
|
|
@@ -17,7 +17,7 @@ const defaultProps = {
|
|
|
17
17
|
checked: false,
|
|
18
18
|
},
|
|
19
19
|
content: {
|
|
20
|
-
checkboxName: "
|
|
20
|
+
checkboxName: "terms",
|
|
21
21
|
checkboxLabel: "By signing up you agree to the {labelLink}",
|
|
22
22
|
checkboxLabelLink: "https://example.com",
|
|
23
23
|
checkboxLabelLinkText: "Terms and Conditions",
|
|
@@ -54,19 +54,10 @@ export function CheckboxFieldView(props) {
|
|
|
54
54
|
h("sl-checkbox", Object.assign({ exportparts: "label: input-label, base: input-base", name: `/${content.checkboxName}`, checked: states.checked, "onSl-change": (e) => {
|
|
55
55
|
e.target.value = e.target.checked;
|
|
56
56
|
callbacks.setChecked(e.target.value);
|
|
57
|
-
} }, (!content.checkboxOptional ? { required:
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
:
|
|
62
|
-
|
|
63
|
-
id: content.checkboxName + "-message",
|
|
64
|
-
defaultMessage: content.checkboxLabel,
|
|
65
|
-
}, {
|
|
66
|
-
labelLink: (h("a", { href: content.checkboxLabelLink, target: "_blank" }, content.checkboxLabelLinkText || content.checkboxLabelLink)),
|
|
67
|
-
}),
|
|
68
|
-
!states.checked && (validationErrors === null || validationErrors === void 0 ? void 0 : validationErrors[content.checkboxName]) && (h("p", { class: sheet.classes.ErrorMessageStyle }, intl.formatMessage({
|
|
69
|
-
id: `errorMessage-${content.checkboxName}`,
|
|
70
|
-
defaultMessage: content.errorMessage,
|
|
71
|
-
}))))));
|
|
57
|
+
} }, (!content.checkboxOptional ? { required: false } : []), { disabled: ((_b = states.registrationFormState) === null || _b === void 0 ? void 0 : _b.loading) || ((_c = states.registrationFormState) === null || _c === void 0 ? void 0 : _c.disabled), required: false }), intl.formatMessage({
|
|
58
|
+
id: content.checkboxName + "-message",
|
|
59
|
+
defaultMessage: content.checkboxLabel,
|
|
60
|
+
}, {
|
|
61
|
+
labelLink: (h("a", { href: content.checkboxLabelLink, target: "_blank" }, content.checkboxLabelLinkText || content.checkboxLabelLink)),
|
|
62
|
+
}))));
|
|
72
63
|
}
|
|
@@ -10,7 +10,7 @@ import { useCheckboxField } from "./useCheckboxField";
|
|
|
10
10
|
* @uiName Form Checkbox Field
|
|
11
11
|
* @validParents ["sqm-portal-register","sqm-portal-registration-form"]
|
|
12
12
|
* @exampleGroup Microsite Components
|
|
13
|
-
* @example Form Checkbox Field - <sqm-checkbox-field checkbox-label="By signing up you agree to the {labelLink}" checkbox-label-link="https://example.com" checkbox-label-link-text="Terms and Conditions" error-message="Must be checked" ></sqm-checkbox-field>
|
|
13
|
+
* @example Form Checkbox Field - <sqm-checkbox-field checkbox-name="terms" checkbox-label="By signing up you agree to the {labelLink}" checkbox-label-link="https://example.com" checkbox-label-link-text="Terms and Conditions" error-message="Must be checked" ></sqm-checkbox-field>
|
|
14
14
|
*/
|
|
15
15
|
export class CheckboxField {
|
|
16
16
|
constructor() {
|
|
@@ -117,7 +117,7 @@ export class CheckboxField {
|
|
|
117
117
|
"references": {}
|
|
118
118
|
},
|
|
119
119
|
"required": false,
|
|
120
|
-
"optional":
|
|
120
|
+
"optional": true,
|
|
121
121
|
"docs": {
|
|
122
122
|
"tags": [{
|
|
123
123
|
"text": "Checkbox label link",
|
|
@@ -138,7 +138,7 @@ export class CheckboxField {
|
|
|
138
138
|
"references": {}
|
|
139
139
|
},
|
|
140
140
|
"required": false,
|
|
141
|
-
"optional":
|
|
141
|
+
"optional": true,
|
|
142
142
|
"docs": {
|
|
143
143
|
"tags": [{
|
|
144
144
|
"text": "Checkbox label link lext",
|
|
@@ -159,7 +159,7 @@ export class CheckboxField {
|
|
|
159
159
|
"references": {}
|
|
160
160
|
},
|
|
161
161
|
"required": false,
|
|
162
|
-
"optional":
|
|
162
|
+
"optional": true,
|
|
163
163
|
"docs": {
|
|
164
164
|
"tags": [{
|
|
165
165
|
"text": "Unchecked error message",
|
|
@@ -197,7 +197,7 @@ export class CheckboxField {
|
|
|
197
197
|
"mutable": false,
|
|
198
198
|
"complexType": {
|
|
199
199
|
"original": "DemoData<CheckboxFieldViewProps>",
|
|
200
|
-
"resolved": "{ states?: { registrationFormState?: RegistrationFormState; checked: boolean; }; content?: { checkboxName: string; checkboxLabel: string; checkboxLabelLink?: string; checkboxLabelLinkText?: string; checkboxOptional?: boolean; errorMessage
|
|
200
|
+
"resolved": "{ states?: { registrationFormState?: RegistrationFormState; checked: boolean; }; content?: { checkboxName: string; checkboxLabel: string; checkboxLabelLink?: string; checkboxLabelLinkText?: string; checkboxOptional?: boolean; errorMessage?: string; }; }",
|
|
201
201
|
"references": {
|
|
202
202
|
"DemoData": {
|
|
203
203
|
"location": "import",
|
package/dist/collection/components/sqm-marketing-emails-checkbox/MarketingEmailsCheckbox.stories.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import scenario from "./sqm-marketing-emails-checkbox.feature";
|
|
3
|
+
export default {
|
|
4
|
+
title: "Components/Marketing Emails Checkbox",
|
|
5
|
+
parameters: {
|
|
6
|
+
scenario,
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
export const Default = () => {
|
|
10
|
+
return h("sqm-marketing-emails-checkbox", null);
|
|
11
|
+
};
|
package/dist/collection/components/sqm-marketing-emails-checkbox/sqm-marketing-emails-checkbox.js
ADDED
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { isDemo } from "@saasquatch/component-boilerplate";
|
|
2
|
+
import { withHooks } from "@saasquatch/stencil-hooks";
|
|
3
|
+
import { Component, h, Prop, State } from "@stencil/core";
|
|
4
|
+
import deepmerge from "deepmerge";
|
|
5
|
+
import { getProps } from "../../utils/utils";
|
|
6
|
+
import { CheckboxFieldView, } from "../sqm-checkbox-field/sqm-checkbox-field-view";
|
|
7
|
+
import { useCheckboxField } from "../sqm-checkbox-field/useCheckboxField";
|
|
8
|
+
/**
|
|
9
|
+
* @uiName Marketing Emails Checkbox Field
|
|
10
|
+
* @validParents ["sqm-portal-register","sqm-portal-registration-form"]
|
|
11
|
+
* @requiredFeatures ["MARKETING_EMAILS"]
|
|
12
|
+
*/
|
|
13
|
+
export class MarketingEmailsCheckbox {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.ignored = true;
|
|
16
|
+
/**
|
|
17
|
+
* @uiName Checkbox label
|
|
18
|
+
* @uiWidget textArea
|
|
19
|
+
*/
|
|
20
|
+
this.checkboxLabel = "I would like to receive marketing and promotional emails for this referral program";
|
|
21
|
+
/**
|
|
22
|
+
* @undocumented
|
|
23
|
+
*/
|
|
24
|
+
this.checkboxName = "marketingEmailOptIn";
|
|
25
|
+
withHooks(this);
|
|
26
|
+
}
|
|
27
|
+
disconnectedCallback() { }
|
|
28
|
+
render() {
|
|
29
|
+
const content = {
|
|
30
|
+
...getProps(this),
|
|
31
|
+
};
|
|
32
|
+
const { states, callbacks } = isDemo()
|
|
33
|
+
? useCheckboxFieldDemo(this)
|
|
34
|
+
: useCheckboxField(this);
|
|
35
|
+
return (h(CheckboxFieldView, { states: states, content: content, callbacks: callbacks }));
|
|
36
|
+
}
|
|
37
|
+
static get is() { return "sqm-marketing-emails-checkbox"; }
|
|
38
|
+
static get properties() { return {
|
|
39
|
+
"checkboxLabel": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"mutable": false,
|
|
42
|
+
"complexType": {
|
|
43
|
+
"original": "string",
|
|
44
|
+
"resolved": "string",
|
|
45
|
+
"references": {}
|
|
46
|
+
},
|
|
47
|
+
"required": false,
|
|
48
|
+
"optional": false,
|
|
49
|
+
"docs": {
|
|
50
|
+
"tags": [{
|
|
51
|
+
"text": "Checkbox label",
|
|
52
|
+
"name": "uiName"
|
|
53
|
+
}, {
|
|
54
|
+
"text": "textArea",
|
|
55
|
+
"name": "uiWidget"
|
|
56
|
+
}],
|
|
57
|
+
"text": ""
|
|
58
|
+
},
|
|
59
|
+
"attribute": "checkbox-label",
|
|
60
|
+
"reflect": false,
|
|
61
|
+
"defaultValue": "\"I would like to receive marketing and promotional emails for this referral program\""
|
|
62
|
+
},
|
|
63
|
+
"checkboxName": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"mutable": false,
|
|
66
|
+
"complexType": {
|
|
67
|
+
"original": "string",
|
|
68
|
+
"resolved": "string",
|
|
69
|
+
"references": {}
|
|
70
|
+
},
|
|
71
|
+
"required": false,
|
|
72
|
+
"optional": false,
|
|
73
|
+
"docs": {
|
|
74
|
+
"tags": [{
|
|
75
|
+
"text": undefined,
|
|
76
|
+
"name": "undocumented"
|
|
77
|
+
}],
|
|
78
|
+
"text": ""
|
|
79
|
+
},
|
|
80
|
+
"attribute": "checkbox-name",
|
|
81
|
+
"reflect": false,
|
|
82
|
+
"defaultValue": "\"marketingEmailOptIn\""
|
|
83
|
+
},
|
|
84
|
+
"demoData": {
|
|
85
|
+
"type": "unknown",
|
|
86
|
+
"mutable": false,
|
|
87
|
+
"complexType": {
|
|
88
|
+
"original": "DemoData<CheckboxFieldViewProps>",
|
|
89
|
+
"resolved": "{ states?: { registrationFormState?: RegistrationFormState; checked: boolean; }; content?: { checkboxName: string; checkboxLabel: string; checkboxLabelLink?: string; checkboxLabelLinkText?: string; checkboxOptional?: boolean; errorMessage?: string; }; }",
|
|
90
|
+
"references": {
|
|
91
|
+
"DemoData": {
|
|
92
|
+
"location": "import",
|
|
93
|
+
"path": "../../global/demo"
|
|
94
|
+
},
|
|
95
|
+
"CheckboxFieldViewProps": {
|
|
96
|
+
"location": "import",
|
|
97
|
+
"path": "../sqm-checkbox-field/sqm-checkbox-field-view"
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
"required": false,
|
|
102
|
+
"optional": true,
|
|
103
|
+
"docs": {
|
|
104
|
+
"tags": [{
|
|
105
|
+
"text": undefined,
|
|
106
|
+
"name": "undocumented"
|
|
107
|
+
}, {
|
|
108
|
+
"text": "object",
|
|
109
|
+
"name": "uiType"
|
|
110
|
+
}],
|
|
111
|
+
"text": ""
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}; }
|
|
115
|
+
static get states() { return {
|
|
116
|
+
"ignored": {}
|
|
117
|
+
}; }
|
|
118
|
+
}
|
|
119
|
+
function useCheckboxFieldDemo(props) {
|
|
120
|
+
return deepmerge({
|
|
121
|
+
states: {
|
|
122
|
+
registrationFormState: {},
|
|
123
|
+
checked: false,
|
|
124
|
+
},
|
|
125
|
+
callbacks: {
|
|
126
|
+
setChecked: () => { },
|
|
127
|
+
},
|
|
128
|
+
}, props.demoData || {}, { arrayMerge: (_, a) => a });
|
|
129
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { ChangeMarktingView } from "./sqm-portal-change-marketing-view";
|
|
3
|
+
export default {
|
|
4
|
+
title: "Components/Change Marketing Emails Status",
|
|
5
|
+
};
|
|
6
|
+
const defaultProps = {
|
|
7
|
+
states: {
|
|
8
|
+
success: false,
|
|
9
|
+
loading: false,
|
|
10
|
+
submitDisabled: false,
|
|
11
|
+
formState: {
|
|
12
|
+
marketingEmailOptIn: false,
|
|
13
|
+
errors: null,
|
|
14
|
+
error: "",
|
|
15
|
+
},
|
|
16
|
+
user: {
|
|
17
|
+
id: "zach",
|
|
18
|
+
accountId: "zach",
|
|
19
|
+
marketingEmailOptIn: false,
|
|
20
|
+
},
|
|
21
|
+
text: {
|
|
22
|
+
emailPreferencesHeader: "Email preferences",
|
|
23
|
+
marketingCheckboxLabel: "I want to receive marketing emails and promotions for this referral program from impact.com",
|
|
24
|
+
submitChangeButtonText: "Save",
|
|
25
|
+
successMessage: "Opt-in preference has been changed.",
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
callbacks: {
|
|
29
|
+
onSubmit: (props) => console.log(props),
|
|
30
|
+
setChecked: (value) => console.log(value),
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
export const Default = () => {
|
|
34
|
+
return h("sqm-portal-change-marketing", null);
|
|
35
|
+
};
|
|
36
|
+
export const Loading = () => {
|
|
37
|
+
return (h(ChangeMarktingView, Object.assign({}, defaultProps, { states: { ...defaultProps.states, loading: true } })));
|
|
38
|
+
};
|
|
39
|
+
export const Error = () => {
|
|
40
|
+
return (h(ChangeMarktingView, Object.assign({}, defaultProps, { states: {
|
|
41
|
+
...defaultProps.states,
|
|
42
|
+
formState: {
|
|
43
|
+
...defaultProps.states.formState,
|
|
44
|
+
errors: { error: true },
|
|
45
|
+
error: "An error string",
|
|
46
|
+
},
|
|
47
|
+
} })));
|
|
48
|
+
};
|
|
49
|
+
export const Success = () => {
|
|
50
|
+
return (h(ChangeMarktingView, Object.assign({}, defaultProps, { states: {
|
|
51
|
+
...defaultProps.states,
|
|
52
|
+
success: true,
|
|
53
|
+
} })));
|
|
54
|
+
};
|
package/dist/collection/components/sqm-portal-change-marketing/sqm-portal-change-marketing-view.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { createStyleSheet } from "../../styling/JSS";
|
|
3
|
+
import { CheckboxFieldView } from "../sqm-checkbox-field/sqm-checkbox-field-view";
|
|
4
|
+
import { TextSpanView } from "../sqm-text-span/sqm-text-span-view";
|
|
5
|
+
export function ChangeMarktingView(props) {
|
|
6
|
+
const { states, callbacks } = props;
|
|
7
|
+
const { text, formState } = states;
|
|
8
|
+
const { error } = formState;
|
|
9
|
+
const style = {
|
|
10
|
+
Container: {
|
|
11
|
+
display: "flex",
|
|
12
|
+
flexDirection: "column",
|
|
13
|
+
gap: "var(--sl-spacing-x-small)",
|
|
14
|
+
padding: "0 var(--sl-spacing-xxx-large) var(--sl-spacing-xxx-large)",
|
|
15
|
+
},
|
|
16
|
+
SubmitButton: { marginBottom: "var(--sl-spacing-medium)" },
|
|
17
|
+
Error: {
|
|
18
|
+
"&::part(erroralert-base)": {
|
|
19
|
+
"margin-bottom": "15px",
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
Success: {
|
|
23
|
+
"&::part(successalert-base)": {
|
|
24
|
+
"margin-bottom": "15px",
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
const sheet = createStyleSheet(style);
|
|
29
|
+
const styleString = sheet.toString();
|
|
30
|
+
return (h("div", { class: sheet.classes.Container, part: "sqm-base" },
|
|
31
|
+
h("style", { type: "text/css" }, styleString),
|
|
32
|
+
h(TextSpanView, Object.assign({}, { type: "h2" }), text.emailPreferencesHeader),
|
|
33
|
+
h("sl-form", { "onSl-submit": callbacks.onSubmit },
|
|
34
|
+
h(CheckboxFieldView, { states: {
|
|
35
|
+
checked: states.formState.marketingEmailOptIn,
|
|
36
|
+
}, content: {
|
|
37
|
+
checkboxLabel: text.marketingCheckboxLabel,
|
|
38
|
+
checkboxName: "marketingEmailOptIn",
|
|
39
|
+
}, callbacks: {
|
|
40
|
+
setChecked: callbacks.setChecked,
|
|
41
|
+
} }),
|
|
42
|
+
h("sl-button", { class: sheet.classes.SubmitButton, type: "primary", submit: true, loading: states.loading, disabled: states.submitDisabled }, text.submitChangeButtonText),
|
|
43
|
+
error && (h("sqm-form-message", { class: sheet.classes.Error, type: "error", exportparts: "erroralert-icon" },
|
|
44
|
+
h("div", { part: "erroralert-text" }, error))),
|
|
45
|
+
states.success && (h("sqm-form-message", { class: sheet.classes.Success, type: "success", exportparts: "successalert-icon" },
|
|
46
|
+
h("div", { part: "successalert-text" }, states.text.successMessage))))));
|
|
47
|
+
}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { Component, h, Prop, State } from "@stencil/core";
|
|
2
|
+
import { withHooks } from "@saasquatch/stencil-hooks";
|
|
3
|
+
import { ChangeMarktingView, } from "./sqm-portal-change-marketing-view";
|
|
4
|
+
import { usePortalProfile } from "./usePortalChangeMarketing";
|
|
5
|
+
import { getProps } from "../../utils/utils";
|
|
6
|
+
import { isDemo } from "@saasquatch/component-boilerplate";
|
|
7
|
+
import deepmerge from "deepmerge";
|
|
8
|
+
/**
|
|
9
|
+
* @uiName Change Marketing Opt in Status
|
|
10
|
+
* @requiredFeatures ["MARKETING_EMAILS"]
|
|
11
|
+
*/
|
|
12
|
+
export class PortalChangeMarketing {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.ignored = true;
|
|
15
|
+
/**
|
|
16
|
+
* @uiName Email preferences header
|
|
17
|
+
*/
|
|
18
|
+
this.emailPreferencesHeader = "Email preferences";
|
|
19
|
+
/**
|
|
20
|
+
* @uiName Marketing checkbox label
|
|
21
|
+
*/
|
|
22
|
+
this.marketingCheckboxLabel = "I want to receive marketing emails and promotions for this referral program from impact.com";
|
|
23
|
+
/**
|
|
24
|
+
* @uiName Submit changes button text
|
|
25
|
+
*/
|
|
26
|
+
this.submitChangeButtonText = "Save";
|
|
27
|
+
/**
|
|
28
|
+
* Displayed when the page fails to load due to a network error. The participant can try refreshing the page.
|
|
29
|
+
*
|
|
30
|
+
* @uiName Network request error message
|
|
31
|
+
*/
|
|
32
|
+
this.networkRequestMessage = "An error occurred while loading this page. Please refresh the page.";
|
|
33
|
+
/**
|
|
34
|
+
* @uiName Successful update message
|
|
35
|
+
*/
|
|
36
|
+
this.successMessage = "Opt-in preference has been changed.";
|
|
37
|
+
withHooks(this);
|
|
38
|
+
}
|
|
39
|
+
disconnectedCallback() { }
|
|
40
|
+
render() {
|
|
41
|
+
const props = isDemo()
|
|
42
|
+
? usePortalProfileDemo(getProps(this))
|
|
43
|
+
: usePortalProfile(getProps(this));
|
|
44
|
+
return h(ChangeMarktingView, Object.assign({}, props));
|
|
45
|
+
}
|
|
46
|
+
static get is() { return "sqm-portal-change-marketing"; }
|
|
47
|
+
static get encapsulation() { return "shadow"; }
|
|
48
|
+
static get properties() { return {
|
|
49
|
+
"emailPreferencesHeader": {
|
|
50
|
+
"type": "string",
|
|
51
|
+
"mutable": false,
|
|
52
|
+
"complexType": {
|
|
53
|
+
"original": "string",
|
|
54
|
+
"resolved": "string",
|
|
55
|
+
"references": {}
|
|
56
|
+
},
|
|
57
|
+
"required": false,
|
|
58
|
+
"optional": false,
|
|
59
|
+
"docs": {
|
|
60
|
+
"tags": [{
|
|
61
|
+
"text": "Email preferences header",
|
|
62
|
+
"name": "uiName"
|
|
63
|
+
}],
|
|
64
|
+
"text": ""
|
|
65
|
+
},
|
|
66
|
+
"attribute": "email-preferences-header",
|
|
67
|
+
"reflect": false,
|
|
68
|
+
"defaultValue": "\"Email preferences\""
|
|
69
|
+
},
|
|
70
|
+
"marketingCheckboxLabel": {
|
|
71
|
+
"type": "string",
|
|
72
|
+
"mutable": false,
|
|
73
|
+
"complexType": {
|
|
74
|
+
"original": "string",
|
|
75
|
+
"resolved": "string",
|
|
76
|
+
"references": {}
|
|
77
|
+
},
|
|
78
|
+
"required": false,
|
|
79
|
+
"optional": false,
|
|
80
|
+
"docs": {
|
|
81
|
+
"tags": [{
|
|
82
|
+
"text": "Marketing checkbox label",
|
|
83
|
+
"name": "uiName"
|
|
84
|
+
}],
|
|
85
|
+
"text": ""
|
|
86
|
+
},
|
|
87
|
+
"attribute": "marketing-checkbox-label",
|
|
88
|
+
"reflect": false,
|
|
89
|
+
"defaultValue": "\"I want to receive marketing emails and promotions for this referral program from impact.com\""
|
|
90
|
+
},
|
|
91
|
+
"submitChangeButtonText": {
|
|
92
|
+
"type": "string",
|
|
93
|
+
"mutable": false,
|
|
94
|
+
"complexType": {
|
|
95
|
+
"original": "string",
|
|
96
|
+
"resolved": "string",
|
|
97
|
+
"references": {}
|
|
98
|
+
},
|
|
99
|
+
"required": false,
|
|
100
|
+
"optional": false,
|
|
101
|
+
"docs": {
|
|
102
|
+
"tags": [{
|
|
103
|
+
"text": "Submit changes button text",
|
|
104
|
+
"name": "uiName"
|
|
105
|
+
}],
|
|
106
|
+
"text": ""
|
|
107
|
+
},
|
|
108
|
+
"attribute": "submit-change-button-text",
|
|
109
|
+
"reflect": false,
|
|
110
|
+
"defaultValue": "\"Save\""
|
|
111
|
+
},
|
|
112
|
+
"networkRequestMessage": {
|
|
113
|
+
"type": "string",
|
|
114
|
+
"mutable": false,
|
|
115
|
+
"complexType": {
|
|
116
|
+
"original": "string",
|
|
117
|
+
"resolved": "string",
|
|
118
|
+
"references": {}
|
|
119
|
+
},
|
|
120
|
+
"required": false,
|
|
121
|
+
"optional": false,
|
|
122
|
+
"docs": {
|
|
123
|
+
"tags": [{
|
|
124
|
+
"text": "Network request error message",
|
|
125
|
+
"name": "uiName"
|
|
126
|
+
}],
|
|
127
|
+
"text": "Displayed when the page fails to load due to a network error. The participant can try refreshing the page."
|
|
128
|
+
},
|
|
129
|
+
"attribute": "network-request-message",
|
|
130
|
+
"reflect": false,
|
|
131
|
+
"defaultValue": "\"An error occurred while loading this page. Please refresh the page.\""
|
|
132
|
+
},
|
|
133
|
+
"successMessage": {
|
|
134
|
+
"type": "string",
|
|
135
|
+
"mutable": false,
|
|
136
|
+
"complexType": {
|
|
137
|
+
"original": "string",
|
|
138
|
+
"resolved": "string",
|
|
139
|
+
"references": {}
|
|
140
|
+
},
|
|
141
|
+
"required": false,
|
|
142
|
+
"optional": false,
|
|
143
|
+
"docs": {
|
|
144
|
+
"tags": [{
|
|
145
|
+
"text": "Successful update message",
|
|
146
|
+
"name": "uiName"
|
|
147
|
+
}],
|
|
148
|
+
"text": ""
|
|
149
|
+
},
|
|
150
|
+
"attribute": "success-message",
|
|
151
|
+
"reflect": false,
|
|
152
|
+
"defaultValue": "\"Opt-in preference has been changed.\""
|
|
153
|
+
},
|
|
154
|
+
"demoData": {
|
|
155
|
+
"type": "unknown",
|
|
156
|
+
"mutable": false,
|
|
157
|
+
"complexType": {
|
|
158
|
+
"original": "DemoData<ChangeMarketingViewProps>",
|
|
159
|
+
"resolved": "{ states?: { success: boolean; loading: boolean; submitDisabled: boolean; formState: { marketingEmailOptIn: boolean; errors: any; error: string; }; user: { id: string; accountId: string; marketingEmailOptIn: boolean; }; text: { emailPreferencesHeader: string; marketingCheckboxLabel: string; submitChangeButtonText: string; successMessage: string; }; }; }",
|
|
160
|
+
"references": {
|
|
161
|
+
"DemoData": {
|
|
162
|
+
"location": "import",
|
|
163
|
+
"path": "../../global/demo"
|
|
164
|
+
},
|
|
165
|
+
"ChangeMarketingViewProps": {
|
|
166
|
+
"location": "import",
|
|
167
|
+
"path": "./sqm-portal-change-marketing-view"
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
},
|
|
171
|
+
"required": false,
|
|
172
|
+
"optional": true,
|
|
173
|
+
"docs": {
|
|
174
|
+
"tags": [{
|
|
175
|
+
"text": undefined,
|
|
176
|
+
"name": "undocumented"
|
|
177
|
+
}, {
|
|
178
|
+
"text": "object",
|
|
179
|
+
"name": "uiType"
|
|
180
|
+
}],
|
|
181
|
+
"text": ""
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}; }
|
|
185
|
+
static get states() { return {
|
|
186
|
+
"ignored": {}
|
|
187
|
+
}; }
|
|
188
|
+
}
|
|
189
|
+
function usePortalProfileDemo(props) {
|
|
190
|
+
return deepmerge({
|
|
191
|
+
states: {
|
|
192
|
+
success: false,
|
|
193
|
+
loading: false,
|
|
194
|
+
submitDisabled: false,
|
|
195
|
+
user: {
|
|
196
|
+
id: "01",
|
|
197
|
+
accountId: "111100000",
|
|
198
|
+
marketingEmailOptIn: false,
|
|
199
|
+
},
|
|
200
|
+
text: {
|
|
201
|
+
emailPreferencesHeader: props.emailPreferencesHeader,
|
|
202
|
+
marketingCheckboxLabel: props.marketingCheckboxLabel,
|
|
203
|
+
submitChangeButtonText: props.submitChangeButtonText,
|
|
204
|
+
successMessage: props.successMessage,
|
|
205
|
+
},
|
|
206
|
+
formState: {
|
|
207
|
+
marketingEmailOptIn: false,
|
|
208
|
+
errors: null,
|
|
209
|
+
error: "",
|
|
210
|
+
},
|
|
211
|
+
},
|
|
212
|
+
callbacks: {
|
|
213
|
+
onSubmit: (e) => console.log(e),
|
|
214
|
+
setChecked: () => { },
|
|
215
|
+
},
|
|
216
|
+
}, props.demoData || {}, { arrayMerge: (_, a) => a });
|
|
217
|
+
}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { useMutation, useQuery, useUserIdentity, } from "@saasquatch/component-boilerplate";
|
|
2
|
+
import { useEffect, useState } from "@saasquatch/universal-hooks";
|
|
3
|
+
import { gql } from "graphql-request";
|
|
4
|
+
import jsonpointer from "jsonpointer";
|
|
5
|
+
const GET_USER = gql `
|
|
6
|
+
query {
|
|
7
|
+
viewer {
|
|
8
|
+
... on User {
|
|
9
|
+
id
|
|
10
|
+
accountId
|
|
11
|
+
marketingEmailOptIn
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
const UPSERT_USER = gql `
|
|
17
|
+
mutation ($userInput: UserInput!) {
|
|
18
|
+
upsertUser(userInput: $userInput) {
|
|
19
|
+
id
|
|
20
|
+
marketingEmailOptIn
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
`;
|
|
24
|
+
// view doesn't tolerate undefined, even when we're loading
|
|
25
|
+
const defaultFormState = {
|
|
26
|
+
marketingEmailOptIn: false,
|
|
27
|
+
errors: {},
|
|
28
|
+
error: "",
|
|
29
|
+
};
|
|
30
|
+
export function usePortalProfile(props) {
|
|
31
|
+
const userIdent = useUserIdentity();
|
|
32
|
+
const [success, setSuccess] = useState(false);
|
|
33
|
+
const [userData, setUserData] = useState(undefined);
|
|
34
|
+
const [formState, setFormState] = useState(defaultFormState);
|
|
35
|
+
const userDataResponse = useQuery(GET_USER, {}, !(userIdent === null || userIdent === void 0 ? void 0 : userIdent.jwt));
|
|
36
|
+
const [upsertUser, upsertUserResponse] = useMutation(UPSERT_USER);
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
if (upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.loading)
|
|
39
|
+
return;
|
|
40
|
+
if (upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.errors) {
|
|
41
|
+
setFormState((state) => {
|
|
42
|
+
var _a, _b, _c;
|
|
43
|
+
return ({
|
|
44
|
+
...state,
|
|
45
|
+
error: (_c = (_b = (_a = upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.errors) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.errors) === null || _c === void 0 ? void 0 : _c[0].message,
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
setUserData((state) => {
|
|
51
|
+
var _a;
|
|
52
|
+
return ({
|
|
53
|
+
...state,
|
|
54
|
+
...(_a = upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.data) === null || _a === void 0 ? void 0 : _a.upsertUser,
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
if (upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.data)
|
|
58
|
+
setSuccess(true);
|
|
59
|
+
}
|
|
60
|
+
}, [upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.loading]);
|
|
61
|
+
useEffect(() => {
|
|
62
|
+
var _a, _b;
|
|
63
|
+
setUserData((data) => { var _a; return ({ ...data, ...(_a = userDataResponse === null || userDataResponse === void 0 ? void 0 : userDataResponse.data) === null || _a === void 0 ? void 0 : _a.viewer }); });
|
|
64
|
+
setFormState({
|
|
65
|
+
...defaultFormState,
|
|
66
|
+
...(_a = userDataResponse.data) === null || _a === void 0 ? void 0 : _a.viewer,
|
|
67
|
+
...(_b = upsertUserResponse.data) === null || _b === void 0 ? void 0 : _b.upsertUser,
|
|
68
|
+
});
|
|
69
|
+
}, [userDataResponse === null || userDataResponse === void 0 ? void 0 : userDataResponse.data]);
|
|
70
|
+
useEffect(() => {
|
|
71
|
+
var _a, _b;
|
|
72
|
+
if ((_a = upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.errors) === null || _a === void 0 ? void 0 : _a.message) {
|
|
73
|
+
setFormState({
|
|
74
|
+
...(_b = userDataResponse.data) === null || _b === void 0 ? void 0 : _b.viewer,
|
|
75
|
+
error: props.networkRequestMessage,
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
}, [upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.errors]);
|
|
79
|
+
const onSubmit = (event) => {
|
|
80
|
+
var _a;
|
|
81
|
+
setSuccess(false);
|
|
82
|
+
const formData = (_a = event.detail) === null || _a === void 0 ? void 0 : _a.formData;
|
|
83
|
+
formData === null || formData === void 0 ? void 0 : formData.forEach((value, key) => {
|
|
84
|
+
jsonpointer.set(formData, key, value);
|
|
85
|
+
});
|
|
86
|
+
upsertUser({
|
|
87
|
+
userInput: {
|
|
88
|
+
id: userIdent === null || userIdent === void 0 ? void 0 : userIdent.id,
|
|
89
|
+
accountId: userIdent === null || userIdent === void 0 ? void 0 : userIdent.accountId,
|
|
90
|
+
marketingEmailOptIn: Boolean(formData.marketingEmailOptIn),
|
|
91
|
+
},
|
|
92
|
+
});
|
|
93
|
+
setFormState((s) => ({ ...s, errors: {}, error: "" }));
|
|
94
|
+
return;
|
|
95
|
+
};
|
|
96
|
+
return {
|
|
97
|
+
states: {
|
|
98
|
+
success,
|
|
99
|
+
loading: (userDataResponse === null || userDataResponse === void 0 ? void 0 : userDataResponse.loading) || upsertUserResponse.loading,
|
|
100
|
+
submitDisabled: false,
|
|
101
|
+
formState,
|
|
102
|
+
user: userData,
|
|
103
|
+
text: {
|
|
104
|
+
emailPreferencesHeader: props.emailPreferencesHeader,
|
|
105
|
+
marketingCheckboxLabel: props.marketingCheckboxLabel,
|
|
106
|
+
submitChangeButtonText: props.submitChangeButtonText,
|
|
107
|
+
successMessage: props.successMessage,
|
|
108
|
+
},
|
|
109
|
+
},
|
|
110
|
+
callbacks: {
|
|
111
|
+
onSubmit,
|
|
112
|
+
setChecked: (value) => setFormState({ ...formState, marketingEmailOptIn: value }),
|
|
113
|
+
},
|
|
114
|
+
};
|
|
115
|
+
}
|