@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.
Files changed (222) hide show
  1. package/dist/cjs/{ShadowViewAddon-c3e91cee.js → ShadowViewAddon-63b78308.js} +48 -118
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/mint-components.cjs.js +1 -1
  4. package/dist/cjs/sqm-big-stat_39.cjs.entry.js +6 -11
  5. package/dist/cjs/sqm-checkbox-field-view-e0a31f2a.js +66 -0
  6. package/dist/cjs/sqm-portal-change-marketing.cjs.entry.js +221 -0
  7. package/dist/cjs/sqm-portal-registration-form.cjs.entry.js +2 -0
  8. package/dist/cjs/sqm-stencilbook.cjs.entry.js +10 -9
  9. package/dist/collection/collection-manifest.json +1 -0
  10. package/dist/collection/components/sqm-checkbox-field/CheckboxField.stories.js +1 -1
  11. package/dist/collection/components/sqm-checkbox-field/sqm-checkbox-field-view.js +6 -15
  12. package/dist/collection/components/sqm-marketing-emails-checkbox/sqm-marketing-emails-checkbox.js +13 -43
  13. package/dist/collection/components/sqm-portal-change-marketing/sqm-portal-change-marketing-view.js +39 -0
  14. package/dist/collection/components/sqm-portal-change-marketing/sqm-portal-change-marketing.js +191 -0
  15. package/dist/collection/components/sqm-portal-change-marketing/usePortalChangeMarketing.js +112 -0
  16. package/dist/collection/components/sqm-portal-registration-form/usePortalRegistrationForm.js +2 -0
  17. package/dist/esm/{ShadowViewAddon-e012b2aa.js → ShadowViewAddon-272f75a5.js} +53 -122
  18. package/dist/esm/{global-04c7d3b5.js → global-62554cef.js} +1 -1
  19. package/dist/esm/{index.module-def4aec5.js → index.module-48f73e70.js} +1 -1
  20. package/dist/esm/loader.js +3 -3
  21. package/dist/esm/mint-components.js +3 -3
  22. package/dist/esm/{re-render-12fd274a.js → re-render-cb4d43dc.js} +1 -1
  23. package/dist/esm/sqm-asset-card.entry.js +1 -1
  24. package/dist/esm/sqm-banking-info-form_16.entry.js +6 -6
  25. package/dist/esm/sqm-big-stat_39.entry.js +10 -15
  26. package/dist/esm/sqm-checkbox-field-view-0ef58cb3.js +64 -0
  27. package/dist/esm/sqm-close-button.entry.js +1 -1
  28. package/dist/esm/sqm-context-router.entry.js +1 -1
  29. package/dist/esm/sqm-empty_4.entry.js +2 -2
  30. package/dist/esm/sqm-graphql-client-provider.entry.js +1 -1
  31. package/dist/esm/sqm-instant-access-registration.entry.js +3 -3
  32. package/dist/esm/{sqm-invoice-table-view-6e13a323.js → sqm-invoice-table-view-41a14ca6.js} +1 -1
  33. package/dist/esm/sqm-leaderboard-rank.entry.js +2 -2
  34. package/dist/esm/sqm-logout-current-user.entry.js +1 -1
  35. package/dist/esm/{sqm-navigation-sidebar-item-view-60ef06cc.js → sqm-navigation-sidebar-item-view-af40eedb.js} +1 -1
  36. package/dist/esm/sqm-navigation-sidebar-item.entry.js +2 -2
  37. package/dist/esm/sqm-navigation-sidebar.entry.js +1 -1
  38. package/dist/esm/sqm-password-field.entry.js +2 -2
  39. package/dist/esm/sqm-popup-container.entry.js +1 -1
  40. package/dist/esm/sqm-portal-change-marketing.entry.js +217 -0
  41. package/dist/esm/{sqm-portal-email-verification-view-4307c992.js → sqm-portal-email-verification-view-460bac1b.js} +1 -1
  42. package/dist/esm/sqm-portal-email-verification.entry.js +3 -3
  43. package/dist/esm/sqm-portal-forgot-password.entry.js +1 -1
  44. package/dist/esm/sqm-portal-logout.entry.js +1 -1
  45. package/dist/esm/{sqm-portal-profile-view-ffe955c8.js → sqm-portal-profile-view-4caa9f28.js} +1 -1
  46. package/dist/esm/sqm-portal-profile.entry.js +4 -4
  47. package/dist/esm/sqm-portal-protected-route.entry.js +1 -1
  48. package/dist/esm/sqm-portal-registration-form.entry.js +4 -2
  49. package/dist/esm/sqm-portal-reset-password.entry.js +1 -1
  50. package/dist/esm/sqm-portal-verify-email.entry.js +1 -1
  51. package/dist/esm/sqm-referral-table_11.entry.js +5 -5
  52. package/dist/esm/sqm-referred-registration.entry.js +3 -3
  53. package/dist/esm/sqm-rewards-table-customer-note-column.entry.js +2 -2
  54. package/dist/esm/sqm-rewards-table_9.entry.js +5 -5
  55. package/dist/esm/sqm-stencilbook.entry.js +13 -12
  56. package/dist/esm/sqm-tab.entry.js +2 -2
  57. package/dist/esm/sqm-tabs.entry.js +3 -3
  58. package/dist/esm/{useChildElements-32e1bda1.js → useChildElements-a6b895dd.js} +1 -1
  59. package/dist/esm/{useInstantAccessRegistration-46b89952.js → useInstantAccessRegistration-46a98499.js} +2 -2
  60. package/dist/esm/{useReferralTable-f4de0650.js → useReferralTable-6e8350db.js} +3 -3
  61. package/dist/esm/{useRegistrationFormState-9fc1ac80.js → useRegistrationFormState-de6b208e.js} +1 -1
  62. package/dist/esm/{utilities-3f5bba22.js → utilities-e8022681.js} +1 -1
  63. package/dist/esm-es5/{ShadowViewAddon-e012b2aa.js → ShadowViewAddon-272f75a5.js} +1 -1
  64. package/dist/esm-es5/{global-04c7d3b5.js → global-62554cef.js} +1 -1
  65. package/dist/esm-es5/{index.module-def4aec5.js → index.module-48f73e70.js} +1 -1
  66. package/dist/esm-es5/loader.js +1 -1
  67. package/dist/esm-es5/mint-components.js +1 -1
  68. package/dist/esm-es5/{re-render-12fd274a.js → re-render-cb4d43dc.js} +1 -1
  69. package/dist/esm-es5/sqm-asset-card.entry.js +1 -1
  70. package/dist/esm-es5/sqm-banking-info-form_16.entry.js +1 -1
  71. package/dist/esm-es5/sqm-big-stat_39.entry.js +1 -1
  72. package/dist/esm-es5/sqm-checkbox-field-view-0ef58cb3.js +1 -0
  73. package/dist/esm-es5/sqm-close-button.entry.js +1 -1
  74. package/dist/esm-es5/sqm-context-router.entry.js +1 -1
  75. package/dist/esm-es5/sqm-empty_4.entry.js +1 -1
  76. package/dist/esm-es5/sqm-graphql-client-provider.entry.js +1 -1
  77. package/dist/esm-es5/sqm-instant-access-registration.entry.js +1 -1
  78. package/dist/esm-es5/{sqm-invoice-table-view-6e13a323.js → sqm-invoice-table-view-41a14ca6.js} +1 -1
  79. package/dist/esm-es5/sqm-leaderboard-rank.entry.js +1 -1
  80. package/dist/esm-es5/sqm-logout-current-user.entry.js +1 -1
  81. package/dist/esm-es5/sqm-navigation-sidebar-item-view-af40eedb.js +1 -0
  82. package/dist/esm-es5/sqm-navigation-sidebar-item.entry.js +1 -1
  83. package/dist/esm-es5/sqm-navigation-sidebar.entry.js +1 -1
  84. package/dist/esm-es5/sqm-password-field.entry.js +1 -1
  85. package/dist/esm-es5/sqm-popup-container.entry.js +1 -1
  86. package/dist/esm-es5/sqm-portal-change-marketing.entry.js +1 -0
  87. package/dist/esm-es5/{sqm-portal-email-verification-view-4307c992.js → sqm-portal-email-verification-view-460bac1b.js} +1 -1
  88. package/dist/esm-es5/sqm-portal-email-verification.entry.js +1 -1
  89. package/dist/esm-es5/sqm-portal-forgot-password.entry.js +1 -1
  90. package/dist/esm-es5/sqm-portal-logout.entry.js +1 -1
  91. package/dist/esm-es5/{sqm-portal-profile-view-ffe955c8.js → sqm-portal-profile-view-4caa9f28.js} +1 -1
  92. package/dist/esm-es5/sqm-portal-profile.entry.js +1 -1
  93. package/dist/esm-es5/sqm-portal-protected-route.entry.js +1 -1
  94. package/dist/esm-es5/sqm-portal-registration-form.entry.js +1 -1
  95. package/dist/esm-es5/sqm-portal-reset-password.entry.js +1 -1
  96. package/dist/esm-es5/sqm-portal-verify-email.entry.js +1 -1
  97. package/dist/esm-es5/sqm-referral-table_11.entry.js +1 -1
  98. package/dist/esm-es5/sqm-referred-registration.entry.js +1 -1
  99. package/dist/esm-es5/sqm-rewards-table-customer-note-column.entry.js +1 -1
  100. package/dist/esm-es5/sqm-rewards-table_9.entry.js +1 -1
  101. package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
  102. package/dist/esm-es5/sqm-tab.entry.js +1 -1
  103. package/dist/esm-es5/sqm-tabs.entry.js +1 -1
  104. package/dist/esm-es5/{useChildElements-32e1bda1.js → useChildElements-a6b895dd.js} +1 -1
  105. package/dist/esm-es5/{useInstantAccessRegistration-46b89952.js → useInstantAccessRegistration-46a98499.js} +1 -1
  106. package/dist/esm-es5/{useReferralTable-f4de0650.js → useReferralTable-6e8350db.js} +1 -1
  107. package/dist/esm-es5/{useRegistrationFormState-9fc1ac80.js → useRegistrationFormState-de6b208e.js} +1 -1
  108. package/dist/esm-es5/{utilities-3f5bba22.js → utilities-e8022681.js} +1 -1
  109. package/dist/mint-components/mint-components.esm.js +1 -1
  110. package/dist/mint-components/mint-components.js +1 -1
  111. package/dist/mint-components/{p-ce5afa40.entry.js → p-0068067d.entry.js} +1 -1
  112. package/dist/mint-components/p-018088cc.entry.js +13 -0
  113. package/dist/mint-components/{p-7731f793.system.entry.js → p-099c59cc.system.entry.js} +1 -1
  114. package/dist/mint-components/{p-3d4656bb.system.js → p-0f010c01.system.js} +1 -1
  115. package/dist/mint-components/{p-a1dba9a1.system.entry.js → p-0f30148d.system.entry.js} +1 -1
  116. package/dist/mint-components/{p-b5861974.system.entry.js → p-115edc43.system.entry.js} +1 -1
  117. package/dist/mint-components/{p-5f1c4160.system.entry.js → p-13976be9.system.entry.js} +1 -1
  118. package/dist/mint-components/p-175075e7.system.js +1 -0
  119. package/dist/mint-components/{p-b6fc1227.system.entry.js → p-1bb2fd65.system.entry.js} +1 -1
  120. package/dist/mint-components/{p-137ea86e.entry.js → p-1bdacfcb.entry.js} +1 -1
  121. package/dist/mint-components/{p-ce621bcc.js → p-1d803c85.js} +1 -1
  122. package/dist/mint-components/{p-458b2894.entry.js → p-1e0f4667.entry.js} +2 -2
  123. package/dist/mint-components/{p-c84659a3.system.js → p-1eb21821.system.js} +1 -1
  124. package/dist/mint-components/{p-eba44835.system.entry.js → p-215d9dce.system.entry.js} +1 -1
  125. package/dist/mint-components/{p-3223ba7b.entry.js → p-23112de2.entry.js} +1 -1
  126. package/dist/mint-components/{p-a7c2ced2.system.entry.js → p-2364eb2d.system.entry.js} +1 -1
  127. package/dist/mint-components/{p-cf690d55.system.entry.js → p-275b2841.system.entry.js} +1 -1
  128. package/dist/mint-components/{p-5be235f9.entry.js → p-29023a9c.entry.js} +1 -1
  129. package/dist/mint-components/{p-0d8c53ac.system.js → p-2a2d4343.system.js} +1 -1
  130. package/dist/mint-components/{p-5b333fa8.system.entry.js → p-30797093.system.entry.js} +1 -1
  131. package/dist/mint-components/p-30f84f8b.system.js +1 -0
  132. package/dist/mint-components/p-32642d34.js +1 -0
  133. package/dist/mint-components/{p-86990110.entry.js → p-3b08cc52.entry.js} +1 -1
  134. package/dist/mint-components/{p-aee2304a.entry.js → p-3fefb1f4.entry.js} +11 -11
  135. package/dist/mint-components/{p-afd366ae.system.entry.js → p-44c3791a.system.entry.js} +1 -1
  136. package/dist/mint-components/{p-b370fca8.system.js → p-481dedf2.system.js} +1 -1
  137. package/dist/mint-components/p-48b07ec7.system.entry.js +1 -0
  138. package/dist/mint-components/{p-35d84041.system.entry.js → p-498c4ffd.system.entry.js} +1 -1
  139. package/dist/mint-components/{p-51f517a2.js → p-4dcdf9b6.js} +1 -1
  140. package/dist/mint-components/{p-61eab172.js → p-512089bb.js} +1 -1
  141. package/dist/mint-components/{p-3ec16698.entry.js → p-513f79fb.entry.js} +1 -1
  142. package/dist/mint-components/p-52553737.system.entry.js +1 -0
  143. package/dist/mint-components/{p-a9050eb0.entry.js → p-52acd113.entry.js} +1 -1
  144. package/dist/mint-components/{p-ed095674.system.js → p-57ea9c0b.system.js} +1 -1
  145. package/dist/mint-components/{p-4edde470.entry.js → p-59111d6c.entry.js} +1 -1
  146. package/dist/mint-components/p-5ab5131c.entry.js +1 -0
  147. package/dist/mint-components/{p-674a64fe.system.js → p-5da7c982.system.js} +1 -1
  148. package/dist/mint-components/{p-ec41d6a4.entry.js → p-5de3473d.entry.js} +1 -1
  149. package/dist/mint-components/{p-021a735d.entry.js → p-5f20200a.entry.js} +1 -1
  150. package/dist/mint-components/p-60bf4471.system.entry.js +1 -0
  151. package/dist/mint-components/{p-32d1d162.entry.js → p-64b25dd9.entry.js} +1 -1
  152. package/dist/mint-components/{p-dd7ee007.system.js → p-66d09e59.system.js} +1 -1
  153. package/dist/mint-components/{p-1dd69917.system.entry.js → p-670d441e.system.entry.js} +1 -1
  154. package/dist/mint-components/{p-5cac90e8.system.entry.js → p-68160d49.system.entry.js} +1 -1
  155. package/dist/mint-components/{p-eaada4da.js → p-6aed684b.js} +1 -1
  156. package/dist/mint-components/{p-59fe4ad1.system.js → p-6f980faf.system.js} +1 -1
  157. package/dist/mint-components/p-711bb8da.entry.js +1 -0
  158. package/dist/mint-components/{p-4df8f1d2.system.js → p-74609159.system.js} +1 -1
  159. package/dist/mint-components/{p-d8d2de11.entry.js → p-74d012fc.entry.js} +1 -1
  160. package/dist/mint-components/p-7624c91a.entry.js +18 -0
  161. package/dist/mint-components/{p-4502ed11.system.entry.js → p-7726e4ea.system.entry.js} +1 -1
  162. package/dist/mint-components/{p-7049e9b0.entry.js → p-778b55a5.entry.js} +1 -1
  163. package/dist/mint-components/p-7ab32670.entry.js +33 -0
  164. package/dist/mint-components/{p-0b9fa97f.js → p-7eabcffc.js} +1 -1
  165. package/dist/mint-components/p-804de0cf.system.entry.js +1 -0
  166. package/dist/mint-components/{p-9f0629ba.system.entry.js → p-83df7db2.system.entry.js} +1 -1
  167. package/dist/mint-components/{p-7f088154.entry.js → p-8e3390b6.entry.js} +1 -1
  168. package/dist/mint-components/{p-6cef104b.entry.js → p-902770d7.entry.js} +1 -1
  169. package/dist/mint-components/{p-01cfff8a.system.entry.js → p-92b08cb2.system.entry.js} +1 -1
  170. package/dist/mint-components/{p-fb20eb5e.system.entry.js → p-94324315.system.entry.js} +1 -1
  171. package/dist/mint-components/{p-bb00db59.js → p-98602fa9.js} +1 -1
  172. package/dist/mint-components/{p-2dd67762.entry.js → p-9982db11.entry.js} +1 -1
  173. package/dist/mint-components/{p-b4c52c5a.entry.js → p-9a520e94.entry.js} +2 -2
  174. package/dist/mint-components/{p-07f675ab.system.entry.js → p-9aa177d6.system.entry.js} +1 -1
  175. package/dist/mint-components/{p-a8f7cb95.js → p-9b4a99c4.js} +1 -1
  176. package/dist/mint-components/{p-02424350.system.js → p-9bb9a767.system.js} +1 -1
  177. package/dist/mint-components/p-a178a449.system.js +1 -0
  178. package/dist/mint-components/p-a6b36268.system.js +1 -0
  179. package/dist/mint-components/p-b07a88fd.js +1 -0
  180. package/dist/mint-components/{p-56f14840.entry.js → p-b169229a.entry.js} +1 -1
  181. package/dist/mint-components/{p-41a11a7f.js → p-b348d95c.js} +1 -1
  182. package/dist/mint-components/{p-10e89d0a.entry.js → p-b5b9f737.entry.js} +1 -1
  183. package/dist/mint-components/{p-4ea58025.system.entry.js → p-b7324c0e.system.entry.js} +1 -1
  184. package/dist/mint-components/{p-8b5b78ca.entry.js → p-b86003f6.entry.js} +1 -1
  185. package/dist/mint-components/{p-be4b748a.system.entry.js → p-baca1c93.system.entry.js} +1 -1
  186. package/dist/mint-components/{p-711ba77e.system.entry.js → p-bd6d9d54.system.entry.js} +1 -1
  187. package/dist/mint-components/{p-2ee2ebba.js → p-bda832b2.js} +2 -2
  188. package/dist/mint-components/{p-8704937c.js → p-c4719154.js} +1 -1
  189. package/dist/mint-components/{p-e3735866.entry.js → p-c89c890e.entry.js} +1 -1
  190. package/dist/mint-components/p-c98cd85a.system.entry.js +1 -0
  191. package/dist/mint-components/{p-44787d6e.system.js → p-ce5057f7.system.js} +1 -1
  192. package/dist/mint-components/p-cefffd56.system.entry.js +1 -0
  193. package/dist/mint-components/{p-58ef25d3.system.entry.js → p-d71ec46e.system.entry.js} +1 -1
  194. package/dist/mint-components/{p-4d233cd4.js → p-da1e21f2.js} +1 -1
  195. package/dist/mint-components/{p-10685090.js → p-de0a29b2.js} +2 -2
  196. package/dist/mint-components/{p-aad11a68.entry.js → p-df2ada74.entry.js} +1 -1
  197. package/dist/mint-components/{p-03494732.entry.js → p-e169497d.entry.js} +1 -1
  198. package/dist/mint-components/{p-8679ed9f.system.entry.js → p-f99765fe.system.entry.js} +1 -1
  199. package/dist/mint-components/{p-af062c8f.system.entry.js → p-fc58dc2f.system.entry.js} +1 -1
  200. package/dist/types/components/sqm-marketing-emails-checkbox/sqm-marketing-emails-checkbox.d.ts +4 -10
  201. package/dist/types/components/sqm-portal-change-marketing/sqm-portal-change-marketing-view.d.ts +27 -0
  202. package/dist/types/components/sqm-portal-change-marketing/sqm-portal-change-marketing.d.ts +35 -0
  203. package/dist/types/components/sqm-portal-change-marketing/usePortalChangeMarketing.d.ts +3 -0
  204. package/dist/types/components.d.ts +59 -15
  205. package/docs/docs.docx +0 -0
  206. package/docs/raisins.json +1 -1
  207. package/grapesjs/grapesjs.js +1 -1
  208. package/package.json +1 -1
  209. package/dist/esm-es5/sqm-navigation-sidebar-item-view-60ef06cc.js +0 -1
  210. package/dist/mint-components/p-1c857edb.entry.js +0 -33
  211. package/dist/mint-components/p-770368bc.system.js +0 -1
  212. package/dist/mint-components/p-79191f88.entry.js +0 -1
  213. package/dist/mint-components/p-8e907ac7.system.entry.js +0 -1
  214. package/dist/mint-components/p-91669312.entry.js +0 -1
  215. package/dist/mint-components/p-95771f79.system.js +0 -1
  216. package/dist/mint-components/p-96242551.system.entry.js +0 -1
  217. package/dist/mint-components/p-9c310991.system.entry.js +0 -1
  218. package/dist/mint-components/p-a6a7dcaa.js +0 -1
  219. package/dist/mint-components/p-d5de2646.system.entry.js +0 -1
  220. package/dist/mint-components/p-d8e68e16.entry.js +0 -13
  221. package/dist/mint-components/p-e6d74386.system.entry.js +0 -1
  222. package/dist/mint-components/p-ed17e637.system.js +0 -1
@@ -0,0 +1,221 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-b0129cd6.js');
6
+ const stencilHooks_module = require('./stencil-hooks.module-72742a0b.js');
7
+ require('./global-02e50f09.js');
8
+ const index_module = require('./index.module-df530553.js');
9
+ const jsonpointer = require('./jsonpointer-11327262.js');
10
+ const cjs = require('./cjs-1066ec21.js');
11
+ const JSS = require('./JSS-8503a151.js');
12
+ const utils = require('./utils-6847bc06.js');
13
+ const sqmTextSpanView = require('./sqm-text-span-view-e1cd9bd3.js');
14
+ const sqmCheckboxFieldView = require('./sqm-checkbox-field-view-e0a31f2a.js');
15
+
16
+ function PortalProfileView(props) {
17
+ const { states, callbacks } = props;
18
+ const { text, formState } = states;
19
+ const { error } = formState;
20
+ const style = {
21
+ Container: {
22
+ display: "flex",
23
+ flexDirection: "column",
24
+ gap: "var(--sl-spacing-xxx-large)",
25
+ padding: "var(--sl-spacing-xxx-large)",
26
+ },
27
+ Error: {
28
+ "&::part(erroralert-base)": {
29
+ "margin-bottom": "15px",
30
+ },
31
+ },
32
+ };
33
+ const sheet = JSS.createStyleSheet(style);
34
+ const styleString = sheet.toString();
35
+ return (index.h("div", { class: sheet.classes.Container, part: "sqm-base" },
36
+ index.h("style", { type: "text/css" }, styleString),
37
+ index.h(sqmTextSpanView.TextSpanView, Object.assign({}, { type: "h2" }), text.emailPreferencesHeader),
38
+ index.h("sl-form", { "onSl-submit": callbacks.onSubmit },
39
+ index.h(sqmCheckboxFieldView.CheckboxFieldView, { states: {
40
+ checked: states.formState.marketingEmailOptIn,
41
+ }, content: {
42
+ checkboxLabel: text.marketingCheckboxLabel,
43
+ checkboxName: "marketingEmailOptIn",
44
+ }, callbacks: {
45
+ setChecked: callbacks.setChecked,
46
+ } }),
47
+ index.h("sl-button", { type: "primary", submit: true, loading: states.loading, disabled: states.submitDisabled }, text.submitChangeButtonText),
48
+ error && (index.h("sqm-form-message", { class: sheet.classes.Error, type: "error", exportparts: "erroralert-icon" },
49
+ index.h("div", { part: "erroralert-text" }, error))))));
50
+ }
51
+
52
+ const GET_USER = index_module.dist.gql `
53
+ query {
54
+ viewer {
55
+ ... on User {
56
+ id
57
+ accountId
58
+ marketingEmailOptIn
59
+ }
60
+ }
61
+ }
62
+ `;
63
+ const UPSERT_USER = index_module.dist.gql `
64
+ mutation ($userInput: UserInput!) {
65
+ upsertUser(userInput: $userInput) {
66
+ id
67
+ marketingEmailOptIn
68
+ }
69
+ }
70
+ `;
71
+ // view doesn't tolerate undefined, even when we're loading
72
+ const defaultFormState = {
73
+ marketingEmailOptIn: false,
74
+ errors: {},
75
+ error: "",
76
+ };
77
+ function usePortalProfile(props) {
78
+ const userIdent = index_module.Q();
79
+ const [success, setSuccess] = stencilHooks_module.useState(false);
80
+ const [userData, setUserData] = stencilHooks_module.useState(undefined);
81
+ const [formState, setFormState] = stencilHooks_module.useState(defaultFormState);
82
+ const userDataResponse = index_module.yn(GET_USER, {}, !(userIdent === null || userIdent === void 0 ? void 0 : userIdent.jwt));
83
+ const [upsertUser, upsertUserResponse] = index_module.$e(UPSERT_USER);
84
+ stencilHooks_module.useEffect(() => {
85
+ if (upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.loading)
86
+ return;
87
+ if (upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.errors) {
88
+ setFormState((state) => {
89
+ var _a, _b, _c;
90
+ return ({
91
+ ...state,
92
+ 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,
93
+ });
94
+ });
95
+ }
96
+ else {
97
+ setUserData((state) => {
98
+ var _a;
99
+ return ({
100
+ ...state,
101
+ ...(_a = upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.data) === null || _a === void 0 ? void 0 : _a.upsertUser,
102
+ });
103
+ });
104
+ if (upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.data)
105
+ setSuccess(true);
106
+ }
107
+ }, [upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.loading]);
108
+ stencilHooks_module.useEffect(() => {
109
+ var _a, _b;
110
+ setUserData((data) => { var _a; return ({ ...data, ...(_a = userDataResponse === null || userDataResponse === void 0 ? void 0 : userDataResponse.data) === null || _a === void 0 ? void 0 : _a.viewer }); });
111
+ setFormState({
112
+ ...defaultFormState,
113
+ ...(_a = userDataResponse.data) === null || _a === void 0 ? void 0 : _a.viewer,
114
+ ...(_b = upsertUserResponse.data) === null || _b === void 0 ? void 0 : _b.upsertUser,
115
+ });
116
+ }, [userDataResponse === null || userDataResponse === void 0 ? void 0 : userDataResponse.data]);
117
+ stencilHooks_module.useEffect(() => {
118
+ var _a, _b;
119
+ if ((_a = upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.errors) === null || _a === void 0 ? void 0 : _a.message) {
120
+ setFormState({
121
+ ...(_b = userDataResponse.data) === null || _b === void 0 ? void 0 : _b.viewer,
122
+ error: props.networkRequestMessage,
123
+ });
124
+ }
125
+ }, [upsertUserResponse === null || upsertUserResponse === void 0 ? void 0 : upsertUserResponse.errors]);
126
+ const onSubmit = (event) => {
127
+ var _a;
128
+ setSuccess(false);
129
+ const formData = (_a = event.detail) === null || _a === void 0 ? void 0 : _a.formData;
130
+ formData === null || formData === void 0 ? void 0 : formData.forEach((value, key) => {
131
+ jsonpointer.jsonpointer.set(formData, key, value);
132
+ });
133
+ upsertUser({
134
+ id: userIdent === null || userIdent === void 0 ? void 0 : userIdent.id,
135
+ accountId: userIdent === null || userIdent === void 0 ? void 0 : userIdent.accountId,
136
+ marketingEmailOptIn: formData.marketingEmailOptIn,
137
+ });
138
+ setFormState((s) => ({ ...s, errors: {}, error: "" }));
139
+ return;
140
+ };
141
+ return {
142
+ states: {
143
+ success,
144
+ loading: (userDataResponse === null || userDataResponse === void 0 ? void 0 : userDataResponse.loading) || upsertUserResponse.loading,
145
+ submitDisabled: false,
146
+ formState,
147
+ user: userData,
148
+ text: {
149
+ emailPreferencesHeader: props.emailPreferencesHeader,
150
+ marketingCheckboxLabel: props.marketingCheckboxLabel,
151
+ submitChangeButtonText: props.submitChangeButtonText,
152
+ },
153
+ },
154
+ callbacks: {
155
+ onSubmit,
156
+ setChecked: (value) => setFormState({ ...formState, marketingEmailOptIn: value }),
157
+ },
158
+ };
159
+ }
160
+
161
+ const PortalChangeMarketing = class {
162
+ constructor(hostRef) {
163
+ index.registerInstance(this, hostRef);
164
+ this.ignored = true;
165
+ /**
166
+ * @uiName Email preferences header
167
+ */
168
+ this.emailPreferencesHeader = "Email preferences";
169
+ /**
170
+ * @uiName Marketing checkbox label
171
+ */
172
+ this.marketingCheckboxLabel = "I want to receive marketing emails and promotions for this referral program from impact.com";
173
+ /**
174
+ * @uiName Submit changes button text
175
+ */
176
+ this.submitChangeButtonText = "Save";
177
+ /**
178
+ * @uiName Network request error message
179
+ * Displayed when the page fails to load due to a network error. The participant can try refreshing the page.
180
+ */
181
+ this.networkRequestMessage = "An error occurred while loading this page. Please refresh the page.";
182
+ stencilHooks_module.h$1(this);
183
+ }
184
+ disconnectedCallback() { }
185
+ render() {
186
+ const props = index_module.isDemo()
187
+ ? usePortalProfileDemo(utils.getProps(this))
188
+ : usePortalProfile(utils.getProps(this));
189
+ return index.h(PortalProfileView, Object.assign({}, props));
190
+ }
191
+ };
192
+ function usePortalProfileDemo(props) {
193
+ return cjs.cjs({
194
+ states: {
195
+ success: false,
196
+ loading: false,
197
+ submitDisabled: false,
198
+ user: {
199
+ id: "01",
200
+ accountId: "111100000",
201
+ marketingEmailOptIn: false,
202
+ },
203
+ text: {
204
+ emailPreferencesHeader: props.emailPreferencesHeader,
205
+ marketingCheckboxLabel: props.marketingCheckboxLabel,
206
+ submitChangeButtonText: props.submitChangeButtonText,
207
+ },
208
+ formState: {
209
+ marketingEmailOptIn: false,
210
+ errors: null,
211
+ error: "",
212
+ },
213
+ },
214
+ callbacks: {
215
+ onSubmit: (e) => console.log(e),
216
+ setChecked: () => { },
217
+ },
218
+ }, props.demoData || {}, { arrayMerge: (_, a) => a });
219
+ }
220
+
221
+ exports.sqm_portal_change_marketing = PortalChangeMarketing;
@@ -61,6 +61,7 @@ function usePortalRegistrationForm(props) {
61
61
  const submit = async (event) => {
62
62
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
63
63
  let formControls = event.target.getFormControls();
64
+ console.log("Test 123");
64
65
  let formData = {};
65
66
  let validationErrors = {};
66
67
  formControls === null || formControls === void 0 ? void 0 : formControls.forEach((control) => {
@@ -106,6 +107,7 @@ function usePortalRegistrationForm(props) {
106
107
  validationErrors: {},
107
108
  });
108
109
  const { email, password } = formData;
110
+ console.log("form data is ", formData);
109
111
  delete formData.email;
110
112
  delete formData.password;
111
113
  delete formData.confirmPassword;
@@ -22,6 +22,7 @@ const sqmLeaderboardRankView = require('./sqm-leaderboard-rank-view-5a3d4a88.js'
22
22
  const sqmLogoutCurrentUserView = require('./sqm-logout-current-user-view-c9f18d96.js');
23
23
  const sqmNavigationSidebarView = require('./sqm-navigation-sidebar-view-921704fb.js');
24
24
  const sqmNavigationSidebarItemView = require('./sqm-navigation-sidebar-item-view-a125ec5f.js');
25
+ const sqmCheckboxFieldView = require('./sqm-checkbox-field-view-e0a31f2a.js');
25
26
  const sqmPortalEmailVerificationView = require('./sqm-portal-email-verification-view-292b5bf4.js');
26
27
  const sqmPortalForgotPasswordView = require('./sqm-portal-forgot-password-view-969c49ed.js');
27
28
  const sqmPortalProfileView = require('./sqm-portal-profile-view-fde54e35.js');
@@ -29,7 +30,7 @@ require('./utilities-cec9dd36.js');
29
30
  const sqmPortalRegistrationFormView = require('./sqm-portal-registration-form-view-621348a6.js');
30
31
  const sqmPortalResetPasswordView = require('./sqm-portal-reset-password-view-96f329ed.js');
31
32
  const sqmPortalVerifyEmailView = require('./sqm-portal-verify-email-view-7ffcc0d4.js');
32
- const ShadowViewAddon = require('./ShadowViewAddon-c3e91cee.js');
33
+ const ShadowViewAddon = require('./ShadowViewAddon-63b78308.js');
33
34
  const sqmPortalContainerView = require('./sqm-portal-container-view-990a85a3.js');
34
35
  const sqmInvoiceTableView = require('./sqm-invoice-table-view-e3b03a00.js');
35
36
 
@@ -10183,7 +10184,7 @@ const dashboardTemplate = "<sqm-portal-container direction=\"column\" padding=\"
10183
10184
 
10184
10185
  const leadSubmitTemplate = "<sqm-referral-iframe></sqm-referral-iframe>\n";
10185
10186
 
10186
- const editProfileTemplate = "<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";
10187
+ const editProfileTemplate = "<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<sqm-portal-container direction=\"column\" gap=\"xxx-large\">\n <sqm-portal-change-marketing></sqm-portal-change-marketing>\n</sqm-portal-container>\n";
10187
10188
 
10188
10189
  const activityTemplate = "<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\" padding=\"xxx-large\" gap=\"xxx-large\">\n <sqm-text> <h1>Activity</h1></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><p>Referrals</p></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><p>Rewards Earned</p></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><p>Reward Balance</p></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";
10189
10190
 
@@ -10747,7 +10748,7 @@ const defaultProps$b = {
10747
10748
  checked: false,
10748
10749
  },
10749
10750
  content: {
10750
- checkboxName: "agree",
10751
+ checkboxName: "terms",
10751
10752
  checkboxLabel: "By signing up you agree to the {labelLink}",
10752
10753
  checkboxLabelLink: "https://example.com",
10753
10754
  checkboxLabelLinkText: "Terms and Conditions",
@@ -10780,16 +10781,16 @@ const defaultRegisterProps = {
10780
10781
  invalidEmailErrorMessage: "Must be a valid email address",
10781
10782
  },
10782
10783
  };
10783
- const Default$c = createHookStory(() => (index.h(ShadowViewAddon.CheckboxFieldView, Object.assign({}, defaultProps$b))));
10784
- const DefaultChecked = createHookStory(() => (index.h(ShadowViewAddon.CheckboxFieldView, Object.assign({}, defaultProps$b, { states: {
10784
+ const Default$c = createHookStory(() => (index.h(sqmCheckboxFieldView.CheckboxFieldView, Object.assign({}, defaultProps$b))));
10785
+ const DefaultChecked = createHookStory(() => (index.h(sqmCheckboxFieldView.CheckboxFieldView, Object.assign({}, defaultProps$b, { states: {
10785
10786
  ...defaultProps$b.states,
10786
10787
  checked: true,
10787
10788
  } }))));
10788
- const CustomLabel = createHookStory(() => (index.h(ShadowViewAddon.CheckboxFieldView, Object.assign({}, defaultProps$b, { content: {
10789
+ const CustomLabel = createHookStory(() => (index.h(sqmCheckboxFieldView.CheckboxFieldView, Object.assign({}, defaultProps$b, { content: {
10789
10790
  ...defaultProps$b.content,
10790
10791
  checkboxLabel: "I Agree",
10791
10792
  } }))));
10792
- const Error$4 = createHookStory(() => (index.h(ShadowViewAddon.CheckboxFieldView, Object.assign({}, defaultProps$b, { states: {
10793
+ const Error$4 = createHookStory(() => (index.h(sqmCheckboxFieldView.CheckboxFieldView, Object.assign({}, defaultProps$b, { states: {
10793
10794
  ...defaultProps$b.states,
10794
10795
  registrationFormState: {
10795
10796
  validationErrors: {
@@ -10797,7 +10798,7 @@ const Error$4 = createHookStory(() => (index.h(ShadowViewAddon.CheckboxFieldView
10797
10798
  },
10798
10799
  },
10799
10800
  } }))));
10800
- const CustomError = createHookStory(() => (index.h(ShadowViewAddon.CheckboxFieldView, Object.assign({}, defaultProps$b, { states: {
10801
+ const CustomError = createHookStory(() => (index.h(sqmCheckboxFieldView.CheckboxFieldView, Object.assign({}, defaultProps$b, { states: {
10801
10802
  ...defaultProps$b.states,
10802
10803
  registrationFormState: {
10803
10804
  validationErrors: {
@@ -10845,7 +10846,7 @@ const CheckboxField = /*#__PURE__*/Object.freeze({
10845
10846
  TermsAndConditionsLongCustomLabel: TermsAndConditionsLongCustomLabel
10846
10847
  });
10847
10848
 
10848
- const scenario$k = "@owner:zach\n@author:zach\nFeature: Marketing Emails Checkbox\n\n A checkbox that is used to opt in for referral program marketing emails.\n\n Background: A user is on the portal registration page\n Given a user is viewing the \"/register\"\n And \"/register\" contains the registration form\n And the registration form has the following fields\n | fields |\n | first name |\n | last name |\n | email |\n | password |\n | Marketing Emails Checkbox |\n \n @motivating\n Scenario: Checkbox is optional by default\n Given the user is filling out the registration form\n And the name fields have valid input\n And the email field has valid input\n And the password field has valid input\n And the checkbox is not checked\n When they try to register\n Then the form is submitted\n And there is no error for the checkbox\n\n Scenario: The form field name is provided by default\n Given the customer has added a marketing emails checkbox to their registration form\n Then the field name is automatically set to \"marketing-emails\"\n And the name is configurable \n\n\n\n ";
10849
+ const scenario$k = "@owner:zach\n@author:zach\nFeature: Marketing Emails Checkbox\n\n A checkbox that is used to opt in for referral program marketing emails.\n\n Background: A user is on the portal registration page\n Given a user is viewing the \"/register\"\n And \"/register\" contains the registration form\n And the registration form has the following fields\n | fields |\n | first name |\n | last name |\n | email |\n | password |\n | Marketing Emails Checkbox |\n\n @motivating\n Scenario: Checkbox is optional by default\n Given the user is filling out the registration form\n And the name fields have valid input\n And the email field has valid input\n And the password field has valid input\n And the checkbox is not checked\n When they try to register\n Then the form is submitted\n And there is no error for the checkbox\n\n Scenario: The form field name is provided by default\n Given the customer has added a marketing emails checkbox to their registration form\n Then the field name is automatically set to \"marketingEmailOptIn\"\n And the name is not configurable";
10849
10850
 
10850
10851
  const MarketingEmailsCheckbox_stories = {
10851
10852
  title: "Components/Marketing Emails Checkbox",
@@ -48,6 +48,7 @@
48
48
  "./components/sqm-navigation-sidebar/sqm-navigation-sidebar.js",
49
49
  "./components/sqm-navigation-sidebar-item/sqm-navigation-sidebar-item.js",
50
50
  "./components/sqm-popup-container/sqm-popup-container.js",
51
+ "./components/sqm-portal-change-marketing/sqm-portal-change-marketing.js",
51
52
  "./components/sqm-portal-change-password/sqm-portal-change-password.js",
52
53
  "./components/sqm-portal-container/sqm-portal-container.js",
53
54
  "./components/sqm-portal-email-verification/sqm-portal-email-verification.js",
@@ -17,7 +17,7 @@ const defaultProps = {
17
17
  checked: false,
18
18
  },
19
19
  content: {
20
- checkboxName: "agree",
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: true } : []), { disabled: ((_b = states.registrationFormState) === null || _b === void 0 ? void 0 : _b.loading) || ((_c = states.registrationFormState) === null || _c === void 0 ? void 0 : _c.disabled) }, (!states.checked && (validationErrors === null || validationErrors === void 0 ? void 0 : validationErrors[content.checkboxName])
58
- ? {
59
- class: sheet.classes.ErrorStyle,
60
- }
61
- : [])),
62
- intl.formatMessage({
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
  }
@@ -6,29 +6,23 @@ import { getProps } from "../../utils/utils";
6
6
  import { CheckboxFieldView, } from "../sqm-checkbox-field/sqm-checkbox-field-view";
7
7
  import { useCheckboxField } from "../sqm-checkbox-field/useCheckboxField";
8
8
  /**
9
- * @uiName Form Checkbox Field
9
+ * @uiName Marketing Emails Checkbox Field
10
10
  * @validParents ["sqm-portal-register","sqm-portal-registration-form"]
11
11
  * @exampleGroup Microsite Components
12
- * @example Form Checkbox Field - <sqm-marketing-emails-checkbox checkbox-label="I would like to receive marketing and promotional emails for this referral program" required="false" name="marketing-emails" ></sqm-marketing-emails-checkbox>
12
+ * @example Marketing Emails Checkbox - <sqm-marketing-emails-checkbox slot="emailOptIn" name="marketingEmails" checkbox-label="I would like to receive marketing and promotional emails for this referral program" required="false" name="marketing-emails" required="false" ></sqm-marketing-emails-checkbox>
13
13
  */
14
14
  export class MarketingEmailsCheckbox {
15
15
  constructor() {
16
16
  this.ignored = true;
17
- /**
18
- * This name is used as the key for this form field on submission. The name must be unique within this specific form.
19
- * @uiName Checkbox name attribute
20
- * @required
21
- */
22
- this.checkboxName = "marketing-emails";
23
17
  /**
24
18
  * @uiName Checkbox label
25
19
  * @uiWidget textArea
26
20
  */
27
21
  this.checkboxLabel = "I would like to receive marketing and promotional emails for this referral program";
28
22
  /**
29
- * @uiName Required
23
+ * @undocumented
30
24
  */
31
- this.checkboxRequired = false;
25
+ this.checkboxName = "marketingEmailOptIn";
32
26
  withHooks(this);
33
27
  }
34
28
  disconnectedCallback() { }
@@ -43,30 +37,6 @@ export class MarketingEmailsCheckbox {
43
37
  }
44
38
  static get is() { return "sqm-marketing-emails-checkbox"; }
45
39
  static get properties() { return {
46
- "checkboxName": {
47
- "type": "string",
48
- "mutable": false,
49
- "complexType": {
50
- "original": "string",
51
- "resolved": "string",
52
- "references": {}
53
- },
54
- "required": false,
55
- "optional": false,
56
- "docs": {
57
- "tags": [{
58
- "text": "Checkbox name attribute",
59
- "name": "uiName"
60
- }, {
61
- "text": undefined,
62
- "name": "required"
63
- }],
64
- "text": "This name is used as the key for this form field on submission. The name must be unique within this specific form."
65
- },
66
- "attribute": "checkbox-name",
67
- "reflect": false,
68
- "defaultValue": "\"marketing-emails\""
69
- },
70
40
  "checkboxLabel": {
71
41
  "type": "string",
72
42
  "mutable": false,
@@ -91,26 +61,26 @@ export class MarketingEmailsCheckbox {
91
61
  "reflect": false,
92
62
  "defaultValue": "\"I would like to receive marketing and promotional emails for this referral program\""
93
63
  },
94
- "checkboxRequired": {
95
- "type": "boolean",
64
+ "checkboxName": {
65
+ "type": "string",
96
66
  "mutable": false,
97
67
  "complexType": {
98
- "original": "boolean",
99
- "resolved": "boolean",
68
+ "original": "string",
69
+ "resolved": "string",
100
70
  "references": {}
101
71
  },
102
72
  "required": false,
103
- "optional": true,
73
+ "optional": false,
104
74
  "docs": {
105
75
  "tags": [{
106
- "text": "Required",
107
- "name": "uiName"
76
+ "text": undefined,
77
+ "name": "undocumented"
108
78
  }],
109
79
  "text": ""
110
80
  },
111
- "attribute": "checkbox-required",
81
+ "attribute": "checkbox-name",
112
82
  "reflect": false,
113
- "defaultValue": "false"
83
+ "defaultValue": "\"marketingEmailOptIn\""
114
84
  },
115
85
  "demoData": {
116
86
  "type": "unknown",
@@ -0,0 +1,39 @@
1
+ import { h } from "@stencil/core";
2
+ import { createStyleSheet } from "../../styling/JSS";
3
+ import { TextSpanView } from "../sqm-text-span/sqm-text-span-view";
4
+ import { CheckboxFieldView } from "../sqm-checkbox-field/sqm-checkbox-field-view";
5
+ export function PortalProfileView(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-xxx-large)",
14
+ padding: "var(--sl-spacing-xxx-large)",
15
+ },
16
+ Error: {
17
+ "&::part(erroralert-base)": {
18
+ "margin-bottom": "15px",
19
+ },
20
+ },
21
+ };
22
+ const sheet = createStyleSheet(style);
23
+ const styleString = sheet.toString();
24
+ return (h("div", { class: sheet.classes.Container, part: "sqm-base" },
25
+ h("style", { type: "text/css" }, styleString),
26
+ h(TextSpanView, Object.assign({}, { type: "h2" }), text.emailPreferencesHeader),
27
+ h("sl-form", { "onSl-submit": callbacks.onSubmit },
28
+ h(CheckboxFieldView, { states: {
29
+ checked: states.formState.marketingEmailOptIn,
30
+ }, content: {
31
+ checkboxLabel: text.marketingCheckboxLabel,
32
+ checkboxName: "marketingEmailOptIn",
33
+ }, callbacks: {
34
+ setChecked: callbacks.setChecked,
35
+ } }),
36
+ h("sl-button", { type: "primary", submit: true, loading: states.loading, disabled: states.submitDisabled }, text.submitChangeButtonText),
37
+ error && (h("sqm-form-message", { class: sheet.classes.Error, type: "error", exportparts: "erroralert-icon" },
38
+ h("div", { part: "erroralert-text" }, error))))));
39
+ }