@saasquatch/mint-components 1.12.1-0 → 1.12.1-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-c3e91cee.js → ShadowViewAddon-63b78308.js} +48 -118
- 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 +6 -11
- package/dist/cjs/sqm-checkbox-field-view-e0a31f2a.js +66 -0
- package/dist/cjs/sqm-portal-change-marketing.cjs.entry.js +221 -0
- package/dist/cjs/sqm-portal-registration-form.cjs.entry.js +2 -0
- package/dist/cjs/sqm-stencilbook.cjs.entry.js +10 -9
- package/dist/collection/collection-manifest.json +1 -0
- 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-marketing-emails-checkbox/sqm-marketing-emails-checkbox.js +13 -43
- package/dist/collection/components/sqm-portal-change-marketing/sqm-portal-change-marketing-view.js +39 -0
- package/dist/collection/components/sqm-portal-change-marketing/sqm-portal-change-marketing.js +191 -0
- package/dist/collection/components/sqm-portal-change-marketing/usePortalChangeMarketing.js +112 -0
- package/dist/collection/components/sqm-portal-registration-form/usePortalRegistrationForm.js +2 -0
- package/dist/esm/{ShadowViewAddon-e012b2aa.js → ShadowViewAddon-272f75a5.js} +53 -122
- package/dist/esm/{global-04c7d3b5.js → global-62554cef.js} +1 -1
- package/dist/esm/{index.module-def4aec5.js → index.module-48f73e70.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/mint-components.js +3 -3
- package/dist/esm/{re-render-12fd274a.js → re-render-cb4d43dc.js} +1 -1
- package/dist/esm/sqm-asset-card.entry.js +1 -1
- package/dist/esm/sqm-banking-info-form_16.entry.js +6 -6
- package/dist/esm/sqm-big-stat_39.entry.js +10 -15
- package/dist/esm/sqm-checkbox-field-view-0ef58cb3.js +64 -0
- package/dist/esm/sqm-close-button.entry.js +1 -1
- package/dist/esm/sqm-context-router.entry.js +1 -1
- package/dist/esm/sqm-empty_4.entry.js +2 -2
- 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-invoice-table-view-6e13a323.js → sqm-invoice-table-view-41a14ca6.js} +1 -1
- 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-60ef06cc.js → sqm-navigation-sidebar-item-view-af40eedb.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-password-field.entry.js +2 -2
- package/dist/esm/sqm-popup-container.entry.js +1 -1
- package/dist/esm/sqm-portal-change-marketing.entry.js +217 -0
- package/dist/esm/{sqm-portal-email-verification-view-4307c992.js → sqm-portal-email-verification-view-460bac1b.js} +1 -1
- package/dist/esm/sqm-portal-email-verification.entry.js +3 -3
- package/dist/esm/sqm-portal-forgot-password.entry.js +1 -1
- package/dist/esm/sqm-portal-logout.entry.js +1 -1
- package/dist/esm/{sqm-portal-profile-view-ffe955c8.js → sqm-portal-profile-view-4caa9f28.js} +1 -1
- package/dist/esm/sqm-portal-profile.entry.js +4 -4
- package/dist/esm/sqm-portal-protected-route.entry.js +1 -1
- package/dist/esm/sqm-portal-registration-form.entry.js +4 -2
- package/dist/esm/sqm-portal-reset-password.entry.js +1 -1
- package/dist/esm/sqm-portal-verify-email.entry.js +1 -1
- package/dist/esm/sqm-referral-table_11.entry.js +5 -5
- package/dist/esm/sqm-referred-registration.entry.js +3 -3
- package/dist/esm/sqm-rewards-table-customer-note-column.entry.js +2 -2
- package/dist/esm/sqm-rewards-table_9.entry.js +5 -5
- package/dist/esm/sqm-stencilbook.entry.js +13 -12
- package/dist/esm/sqm-tab.entry.js +2 -2
- package/dist/esm/sqm-tabs.entry.js +3 -3
- package/dist/esm/{useChildElements-32e1bda1.js → useChildElements-a6b895dd.js} +1 -1
- package/dist/esm/{useInstantAccessRegistration-46b89952.js → useInstantAccessRegistration-46a98499.js} +2 -2
- package/dist/esm/{useReferralTable-f4de0650.js → useReferralTable-6e8350db.js} +3 -3
- package/dist/esm/{useRegistrationFormState-9fc1ac80.js → useRegistrationFormState-de6b208e.js} +1 -1
- package/dist/esm/{utilities-3f5bba22.js → utilities-e8022681.js} +1 -1
- package/dist/esm-es5/{ShadowViewAddon-e012b2aa.js → ShadowViewAddon-272f75a5.js} +1 -1
- package/dist/esm-es5/{global-04c7d3b5.js → global-62554cef.js} +1 -1
- package/dist/esm-es5/{index.module-def4aec5.js → index.module-48f73e70.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/mint-components.js +1 -1
- package/dist/esm-es5/{re-render-12fd274a.js → re-render-cb4d43dc.js} +1 -1
- package/dist/esm-es5/sqm-asset-card.entry.js +1 -1
- package/dist/esm-es5/sqm-banking-info-form_16.entry.js +1 -1
- package/dist/esm-es5/sqm-big-stat_39.entry.js +1 -1
- package/dist/esm-es5/sqm-checkbox-field-view-0ef58cb3.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-empty_4.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-invoice-table-view-6e13a323.js → sqm-invoice-table-view-41a14ca6.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-af40eedb.js +1 -0
- 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-password-field.entry.js +1 -1
- package/dist/esm-es5/sqm-popup-container.entry.js +1 -1
- package/dist/esm-es5/sqm-portal-change-marketing.entry.js +1 -0
- package/dist/esm-es5/{sqm-portal-email-verification-view-4307c992.js → sqm-portal-email-verification-view-460bac1b.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-logout.entry.js +1 -1
- package/dist/esm-es5/{sqm-portal-profile-view-ffe955c8.js → sqm-portal-profile-view-4caa9f28.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.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-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/{useChildElements-32e1bda1.js → useChildElements-a6b895dd.js} +1 -1
- package/dist/esm-es5/{useInstantAccessRegistration-46b89952.js → useInstantAccessRegistration-46a98499.js} +1 -1
- package/dist/esm-es5/{useReferralTable-f4de0650.js → useReferralTable-6e8350db.js} +1 -1
- package/dist/esm-es5/{useRegistrationFormState-9fc1ac80.js → useRegistrationFormState-de6b208e.js} +1 -1
- package/dist/esm-es5/{utilities-3f5bba22.js → utilities-e8022681.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-ce5afa40.entry.js → p-0068067d.entry.js} +1 -1
- package/dist/mint-components/p-018088cc.entry.js +13 -0
- package/dist/mint-components/{p-7731f793.system.entry.js → p-099c59cc.system.entry.js} +1 -1
- package/dist/mint-components/{p-3d4656bb.system.js → p-0f010c01.system.js} +1 -1
- package/dist/mint-components/{p-a1dba9a1.system.entry.js → p-0f30148d.system.entry.js} +1 -1
- package/dist/mint-components/{p-b5861974.system.entry.js → p-115edc43.system.entry.js} +1 -1
- package/dist/mint-components/{p-5f1c4160.system.entry.js → p-13976be9.system.entry.js} +1 -1
- package/dist/mint-components/p-175075e7.system.js +1 -0
- package/dist/mint-components/{p-b6fc1227.system.entry.js → p-1bb2fd65.system.entry.js} +1 -1
- package/dist/mint-components/{p-137ea86e.entry.js → p-1bdacfcb.entry.js} +1 -1
- package/dist/mint-components/{p-ce621bcc.js → p-1d803c85.js} +1 -1
- package/dist/mint-components/{p-458b2894.entry.js → p-1e0f4667.entry.js} +2 -2
- package/dist/mint-components/{p-c84659a3.system.js → p-1eb21821.system.js} +1 -1
- package/dist/mint-components/{p-eba44835.system.entry.js → p-215d9dce.system.entry.js} +1 -1
- package/dist/mint-components/{p-3223ba7b.entry.js → p-23112de2.entry.js} +1 -1
- package/dist/mint-components/{p-a7c2ced2.system.entry.js → p-2364eb2d.system.entry.js} +1 -1
- package/dist/mint-components/{p-cf690d55.system.entry.js → p-275b2841.system.entry.js} +1 -1
- package/dist/mint-components/{p-5be235f9.entry.js → p-29023a9c.entry.js} +1 -1
- package/dist/mint-components/{p-0d8c53ac.system.js → p-2a2d4343.system.js} +1 -1
- package/dist/mint-components/{p-5b333fa8.system.entry.js → p-30797093.system.entry.js} +1 -1
- package/dist/mint-components/p-30f84f8b.system.js +1 -0
- package/dist/mint-components/p-32642d34.js +1 -0
- package/dist/mint-components/{p-86990110.entry.js → p-3b08cc52.entry.js} +1 -1
- package/dist/mint-components/{p-aee2304a.entry.js → p-3fefb1f4.entry.js} +11 -11
- package/dist/mint-components/{p-afd366ae.system.entry.js → p-44c3791a.system.entry.js} +1 -1
- package/dist/mint-components/{p-b370fca8.system.js → p-481dedf2.system.js} +1 -1
- package/dist/mint-components/p-48b07ec7.system.entry.js +1 -0
- package/dist/mint-components/{p-35d84041.system.entry.js → p-498c4ffd.system.entry.js} +1 -1
- package/dist/mint-components/{p-51f517a2.js → p-4dcdf9b6.js} +1 -1
- package/dist/mint-components/{p-61eab172.js → p-512089bb.js} +1 -1
- package/dist/mint-components/{p-3ec16698.entry.js → p-513f79fb.entry.js} +1 -1
- package/dist/mint-components/p-52553737.system.entry.js +1 -0
- package/dist/mint-components/{p-a9050eb0.entry.js → p-52acd113.entry.js} +1 -1
- package/dist/mint-components/{p-ed095674.system.js → p-57ea9c0b.system.js} +1 -1
- package/dist/mint-components/{p-4edde470.entry.js → p-59111d6c.entry.js} +1 -1
- package/dist/mint-components/p-5ab5131c.entry.js +1 -0
- package/dist/mint-components/{p-674a64fe.system.js → p-5da7c982.system.js} +1 -1
- package/dist/mint-components/{p-ec41d6a4.entry.js → p-5de3473d.entry.js} +1 -1
- package/dist/mint-components/{p-021a735d.entry.js → p-5f20200a.entry.js} +1 -1
- package/dist/mint-components/p-60bf4471.system.entry.js +1 -0
- package/dist/mint-components/{p-32d1d162.entry.js → p-64b25dd9.entry.js} +1 -1
- package/dist/mint-components/{p-dd7ee007.system.js → p-66d09e59.system.js} +1 -1
- package/dist/mint-components/{p-1dd69917.system.entry.js → p-670d441e.system.entry.js} +1 -1
- package/dist/mint-components/{p-5cac90e8.system.entry.js → p-68160d49.system.entry.js} +1 -1
- package/dist/mint-components/{p-eaada4da.js → p-6aed684b.js} +1 -1
- package/dist/mint-components/{p-59fe4ad1.system.js → p-6f980faf.system.js} +1 -1
- package/dist/mint-components/p-711bb8da.entry.js +1 -0
- package/dist/mint-components/{p-4df8f1d2.system.js → p-74609159.system.js} +1 -1
- package/dist/mint-components/{p-d8d2de11.entry.js → p-74d012fc.entry.js} +1 -1
- package/dist/mint-components/p-7624c91a.entry.js +18 -0
- package/dist/mint-components/{p-4502ed11.system.entry.js → p-7726e4ea.system.entry.js} +1 -1
- package/dist/mint-components/{p-7049e9b0.entry.js → p-778b55a5.entry.js} +1 -1
- package/dist/mint-components/p-7ab32670.entry.js +33 -0
- package/dist/mint-components/{p-0b9fa97f.js → p-7eabcffc.js} +1 -1
- package/dist/mint-components/p-804de0cf.system.entry.js +1 -0
- package/dist/mint-components/{p-9f0629ba.system.entry.js → p-83df7db2.system.entry.js} +1 -1
- package/dist/mint-components/{p-7f088154.entry.js → p-8e3390b6.entry.js} +1 -1
- package/dist/mint-components/{p-6cef104b.entry.js → p-902770d7.entry.js} +1 -1
- package/dist/mint-components/{p-01cfff8a.system.entry.js → p-92b08cb2.system.entry.js} +1 -1
- package/dist/mint-components/{p-fb20eb5e.system.entry.js → p-94324315.system.entry.js} +1 -1
- package/dist/mint-components/{p-bb00db59.js → p-98602fa9.js} +1 -1
- package/dist/mint-components/{p-2dd67762.entry.js → p-9982db11.entry.js} +1 -1
- package/dist/mint-components/{p-b4c52c5a.entry.js → p-9a520e94.entry.js} +2 -2
- package/dist/mint-components/{p-07f675ab.system.entry.js → p-9aa177d6.system.entry.js} +1 -1
- package/dist/mint-components/{p-a8f7cb95.js → p-9b4a99c4.js} +1 -1
- package/dist/mint-components/{p-02424350.system.js → p-9bb9a767.system.js} +1 -1
- package/dist/mint-components/p-a178a449.system.js +1 -0
- package/dist/mint-components/p-a6b36268.system.js +1 -0
- package/dist/mint-components/p-b07a88fd.js +1 -0
- package/dist/mint-components/{p-56f14840.entry.js → p-b169229a.entry.js} +1 -1
- package/dist/mint-components/{p-41a11a7f.js → p-b348d95c.js} +1 -1
- package/dist/mint-components/{p-10e89d0a.entry.js → p-b5b9f737.entry.js} +1 -1
- package/dist/mint-components/{p-4ea58025.system.entry.js → p-b7324c0e.system.entry.js} +1 -1
- package/dist/mint-components/{p-8b5b78ca.entry.js → p-b86003f6.entry.js} +1 -1
- package/dist/mint-components/{p-be4b748a.system.entry.js → p-baca1c93.system.entry.js} +1 -1
- package/dist/mint-components/{p-711ba77e.system.entry.js → p-bd6d9d54.system.entry.js} +1 -1
- package/dist/mint-components/{p-2ee2ebba.js → p-bda832b2.js} +2 -2
- package/dist/mint-components/{p-8704937c.js → p-c4719154.js} +1 -1
- package/dist/mint-components/{p-e3735866.entry.js → p-c89c890e.entry.js} +1 -1
- package/dist/mint-components/p-c98cd85a.system.entry.js +1 -0
- package/dist/mint-components/{p-44787d6e.system.js → p-ce5057f7.system.js} +1 -1
- package/dist/mint-components/p-cefffd56.system.entry.js +1 -0
- package/dist/mint-components/{p-58ef25d3.system.entry.js → p-d71ec46e.system.entry.js} +1 -1
- package/dist/mint-components/{p-4d233cd4.js → p-da1e21f2.js} +1 -1
- package/dist/mint-components/{p-10685090.js → p-de0a29b2.js} +2 -2
- package/dist/mint-components/{p-aad11a68.entry.js → p-df2ada74.entry.js} +1 -1
- package/dist/mint-components/{p-03494732.entry.js → p-e169497d.entry.js} +1 -1
- package/dist/mint-components/{p-8679ed9f.system.entry.js → p-f99765fe.system.entry.js} +1 -1
- package/dist/mint-components/{p-af062c8f.system.entry.js → p-fc58dc2f.system.entry.js} +1 -1
- package/dist/types/components/sqm-marketing-emails-checkbox/sqm-marketing-emails-checkbox.d.ts +4 -10
- package/dist/types/components/sqm-portal-change-marketing/sqm-portal-change-marketing-view.d.ts +27 -0
- package/dist/types/components/sqm-portal-change-marketing/sqm-portal-change-marketing.d.ts +35 -0
- package/dist/types/components/sqm-portal-change-marketing/usePortalChangeMarketing.d.ts +3 -0
- package/dist/types/components.d.ts +59 -15
- 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/esm-es5/sqm-navigation-sidebar-item-view-60ef06cc.js +0 -1
- package/dist/mint-components/p-1c857edb.entry.js +0 -33
- package/dist/mint-components/p-770368bc.system.js +0 -1
- package/dist/mint-components/p-79191f88.entry.js +0 -1
- package/dist/mint-components/p-8e907ac7.system.entry.js +0 -1
- package/dist/mint-components/p-91669312.entry.js +0 -1
- package/dist/mint-components/p-95771f79.system.js +0 -1
- package/dist/mint-components/p-96242551.system.entry.js +0 -1
- package/dist/mint-components/p-9c310991.system.entry.js +0 -1
- package/dist/mint-components/p-a6a7dcaa.js +0 -1
- package/dist/mint-components/p-d5de2646.system.entry.js +0 -1
- package/dist/mint-components/p-d8e68e16.entry.js +0 -13
- package/dist/mint-components/p-e6d74386.system.entry.js +0 -1
- package/dist/mint-components/p-ed17e637.system.js +0 -1
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { Component, h, Prop, State } from "@stencil/core";
|
|
2
|
+
import { withHooks } from "@saasquatch/stencil-hooks";
|
|
3
|
+
import { PortalProfileView, } 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
|
+
* @exampleGroup Microsite Components
|
|
11
|
+
* @example Change Marketing Opt-in Status - <sqm-portal-container direction="column" gap="xxx-large"><sqm-portal-change-marketing></sqm-portal-change-marketing></sqm-portal-container>
|
|
12
|
+
*/
|
|
13
|
+
export class PortalChangeMarketing {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.ignored = true;
|
|
16
|
+
/**
|
|
17
|
+
* @uiName Email preferences header
|
|
18
|
+
*/
|
|
19
|
+
this.emailPreferencesHeader = "Email preferences";
|
|
20
|
+
/**
|
|
21
|
+
* @uiName Marketing checkbox label
|
|
22
|
+
*/
|
|
23
|
+
this.marketingCheckboxLabel = "I want to receive marketing emails and promotions for this referral program from impact.com";
|
|
24
|
+
/**
|
|
25
|
+
* @uiName Submit changes button text
|
|
26
|
+
*/
|
|
27
|
+
this.submitChangeButtonText = "Save";
|
|
28
|
+
/**
|
|
29
|
+
* @uiName Network request error message
|
|
30
|
+
* Displayed when the page fails to load due to a network error. The participant can try refreshing the page.
|
|
31
|
+
*/
|
|
32
|
+
this.networkRequestMessage = "An error occurred while loading this page. Please refresh the page.";
|
|
33
|
+
withHooks(this);
|
|
34
|
+
}
|
|
35
|
+
disconnectedCallback() { }
|
|
36
|
+
render() {
|
|
37
|
+
const props = isDemo()
|
|
38
|
+
? usePortalProfileDemo(getProps(this))
|
|
39
|
+
: usePortalProfile(getProps(this));
|
|
40
|
+
return h(PortalProfileView, Object.assign({}, props));
|
|
41
|
+
}
|
|
42
|
+
static get is() { return "sqm-portal-change-marketing"; }
|
|
43
|
+
static get encapsulation() { return "shadow"; }
|
|
44
|
+
static get properties() { return {
|
|
45
|
+
"emailPreferencesHeader": {
|
|
46
|
+
"type": "string",
|
|
47
|
+
"mutable": false,
|
|
48
|
+
"complexType": {
|
|
49
|
+
"original": "string",
|
|
50
|
+
"resolved": "string",
|
|
51
|
+
"references": {}
|
|
52
|
+
},
|
|
53
|
+
"required": false,
|
|
54
|
+
"optional": false,
|
|
55
|
+
"docs": {
|
|
56
|
+
"tags": [{
|
|
57
|
+
"text": "Email preferences header",
|
|
58
|
+
"name": "uiName"
|
|
59
|
+
}],
|
|
60
|
+
"text": ""
|
|
61
|
+
},
|
|
62
|
+
"attribute": "email-preferences-header",
|
|
63
|
+
"reflect": false,
|
|
64
|
+
"defaultValue": "\"Email preferences\""
|
|
65
|
+
},
|
|
66
|
+
"marketingCheckboxLabel": {
|
|
67
|
+
"type": "string",
|
|
68
|
+
"mutable": false,
|
|
69
|
+
"complexType": {
|
|
70
|
+
"original": "string",
|
|
71
|
+
"resolved": "string",
|
|
72
|
+
"references": {}
|
|
73
|
+
},
|
|
74
|
+
"required": false,
|
|
75
|
+
"optional": false,
|
|
76
|
+
"docs": {
|
|
77
|
+
"tags": [{
|
|
78
|
+
"text": "Marketing checkbox label",
|
|
79
|
+
"name": "uiName"
|
|
80
|
+
}],
|
|
81
|
+
"text": ""
|
|
82
|
+
},
|
|
83
|
+
"attribute": "marketing-checkbox-label",
|
|
84
|
+
"reflect": false,
|
|
85
|
+
"defaultValue": "\"I want to receive marketing emails and promotions for this referral program from impact.com\""
|
|
86
|
+
},
|
|
87
|
+
"submitChangeButtonText": {
|
|
88
|
+
"type": "string",
|
|
89
|
+
"mutable": false,
|
|
90
|
+
"complexType": {
|
|
91
|
+
"original": "string",
|
|
92
|
+
"resolved": "string",
|
|
93
|
+
"references": {}
|
|
94
|
+
},
|
|
95
|
+
"required": false,
|
|
96
|
+
"optional": false,
|
|
97
|
+
"docs": {
|
|
98
|
+
"tags": [{
|
|
99
|
+
"text": "Submit changes button text",
|
|
100
|
+
"name": "uiName"
|
|
101
|
+
}],
|
|
102
|
+
"text": ""
|
|
103
|
+
},
|
|
104
|
+
"attribute": "submit-change-button-text",
|
|
105
|
+
"reflect": false,
|
|
106
|
+
"defaultValue": "\"Save\""
|
|
107
|
+
},
|
|
108
|
+
"networkRequestMessage": {
|
|
109
|
+
"type": "string",
|
|
110
|
+
"mutable": false,
|
|
111
|
+
"complexType": {
|
|
112
|
+
"original": "string",
|
|
113
|
+
"resolved": "string",
|
|
114
|
+
"references": {}
|
|
115
|
+
},
|
|
116
|
+
"required": false,
|
|
117
|
+
"optional": false,
|
|
118
|
+
"docs": {
|
|
119
|
+
"tags": [{
|
|
120
|
+
"text": "Network request error message\nDisplayed when the page fails to load due to a network error. The participant can try refreshing the page.",
|
|
121
|
+
"name": "uiName"
|
|
122
|
+
}],
|
|
123
|
+
"text": ""
|
|
124
|
+
},
|
|
125
|
+
"attribute": "network-request-message",
|
|
126
|
+
"reflect": false,
|
|
127
|
+
"defaultValue": "\"An error occurred while loading this page. Please refresh the page.\""
|
|
128
|
+
},
|
|
129
|
+
"demoData": {
|
|
130
|
+
"type": "unknown",
|
|
131
|
+
"mutable": false,
|
|
132
|
+
"complexType": {
|
|
133
|
+
"original": "DemoData<PortalProfileViewProps>",
|
|
134
|
+
"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; }; }; }",
|
|
135
|
+
"references": {
|
|
136
|
+
"DemoData": {
|
|
137
|
+
"location": "import",
|
|
138
|
+
"path": "../../global/demo"
|
|
139
|
+
},
|
|
140
|
+
"PortalProfileViewProps": {
|
|
141
|
+
"location": "import",
|
|
142
|
+
"path": "./sqm-portal-change-marketing-view"
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
"required": false,
|
|
147
|
+
"optional": true,
|
|
148
|
+
"docs": {
|
|
149
|
+
"tags": [{
|
|
150
|
+
"text": undefined,
|
|
151
|
+
"name": "undocumented"
|
|
152
|
+
}, {
|
|
153
|
+
"text": "object",
|
|
154
|
+
"name": "uiType"
|
|
155
|
+
}],
|
|
156
|
+
"text": ""
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}; }
|
|
160
|
+
static get states() { return {
|
|
161
|
+
"ignored": {}
|
|
162
|
+
}; }
|
|
163
|
+
}
|
|
164
|
+
function usePortalProfileDemo(props) {
|
|
165
|
+
return deepmerge({
|
|
166
|
+
states: {
|
|
167
|
+
success: false,
|
|
168
|
+
loading: false,
|
|
169
|
+
submitDisabled: false,
|
|
170
|
+
user: {
|
|
171
|
+
id: "01",
|
|
172
|
+
accountId: "111100000",
|
|
173
|
+
marketingEmailOptIn: false,
|
|
174
|
+
},
|
|
175
|
+
text: {
|
|
176
|
+
emailPreferencesHeader: props.emailPreferencesHeader,
|
|
177
|
+
marketingCheckboxLabel: props.marketingCheckboxLabel,
|
|
178
|
+
submitChangeButtonText: props.submitChangeButtonText,
|
|
179
|
+
},
|
|
180
|
+
formState: {
|
|
181
|
+
marketingEmailOptIn: false,
|
|
182
|
+
errors: null,
|
|
183
|
+
error: "",
|
|
184
|
+
},
|
|
185
|
+
},
|
|
186
|
+
callbacks: {
|
|
187
|
+
onSubmit: (e) => console.log(e),
|
|
188
|
+
setChecked: () => { },
|
|
189
|
+
},
|
|
190
|
+
}, props.demoData || {}, { arrayMerge: (_, a) => a });
|
|
191
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
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
|
+
id: userIdent === null || userIdent === void 0 ? void 0 : userIdent.id,
|
|
88
|
+
accountId: userIdent === null || userIdent === void 0 ? void 0 : userIdent.accountId,
|
|
89
|
+
marketingEmailOptIn: formData.marketingEmailOptIn,
|
|
90
|
+
});
|
|
91
|
+
setFormState((s) => ({ ...s, errors: {}, error: "" }));
|
|
92
|
+
return;
|
|
93
|
+
};
|
|
94
|
+
return {
|
|
95
|
+
states: {
|
|
96
|
+
success,
|
|
97
|
+
loading: (userDataResponse === null || userDataResponse === void 0 ? void 0 : userDataResponse.loading) || upsertUserResponse.loading,
|
|
98
|
+
submitDisabled: false,
|
|
99
|
+
formState,
|
|
100
|
+
user: userData,
|
|
101
|
+
text: {
|
|
102
|
+
emailPreferencesHeader: props.emailPreferencesHeader,
|
|
103
|
+
marketingCheckboxLabel: props.marketingCheckboxLabel,
|
|
104
|
+
submitChangeButtonText: props.submitChangeButtonText,
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
callbacks: {
|
|
108
|
+
onSubmit,
|
|
109
|
+
setChecked: (value) => setFormState({ ...formState, marketingEmailOptIn: value }),
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
}
|
package/dist/collection/components/sqm-portal-registration-form/usePortalRegistrationForm.js
CHANGED
|
@@ -51,6 +51,7 @@ export function usePortalRegistrationForm(props) {
|
|
|
51
51
|
const submit = async (event) => {
|
|
52
52
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
|
53
53
|
let formControls = event.target.getFormControls();
|
|
54
|
+
console.log("Test 123");
|
|
54
55
|
let formData = {};
|
|
55
56
|
let validationErrors = {};
|
|
56
57
|
formControls === null || formControls === void 0 ? void 0 : formControls.forEach((control) => {
|
|
@@ -96,6 +97,7 @@ export function usePortalRegistrationForm(props) {
|
|
|
96
97
|
validationErrors: {},
|
|
97
98
|
});
|
|
98
99
|
const { email, password } = formData;
|
|
100
|
+
console.log("form data is ", formData);
|
|
99
101
|
delete formData.email;
|
|
100
102
|
delete formData.password;
|
|
101
103
|
delete formData.confirmPassword;
|