@saasquatch/mint-components 1.11.0 → 1.11.1-1

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 (306) hide show
  1. package/dist/cjs/{ShadowViewAddon-c3e91cee.js → ShadowViewAddon-2c6026c3.js} +137 -212
  2. package/dist/cjs/copy-text-view-a22ad7e7.js +173 -0
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/mint-components.cjs.js +1 -1
  5. package/dist/cjs/sqm-asset-card.cjs.entry.js +1 -1
  6. package/dist/cjs/sqm-banking-info-form_16.cjs.entry.js +3 -3
  7. package/dist/cjs/sqm-big-stat_38.cjs.entry.js +6 -5
  8. package/dist/cjs/sqm-close-button.cjs.entry.js +2 -2
  9. package/dist/cjs/sqm-empty_4.cjs.entry.js +1 -1
  10. package/dist/cjs/sqm-instant-access-registration.cjs.entry.js +2 -2
  11. package/dist/cjs/sqm-logout-current-user.cjs.entry.js +2 -2
  12. package/dist/cjs/sqm-navigation-sidebar-item.cjs.entry.js +3 -3
  13. package/dist/cjs/sqm-pagination_3.cjs.entry.js +316 -0
  14. package/dist/cjs/sqm-password-field.cjs.entry.js +2 -2
  15. package/dist/cjs/sqm-portal-email-verification.cjs.entry.js +2 -2
  16. package/dist/cjs/sqm-portal-forgot-password.cjs.entry.js +2 -2
  17. package/dist/cjs/sqm-portal-profile.cjs.entry.js +2 -2
  18. package/dist/cjs/sqm-portal-registration-form.cjs.entry.js +1 -1
  19. package/dist/cjs/sqm-portal-reset-password.cjs.entry.js +3 -3
  20. package/dist/cjs/sqm-portal-verify-email.cjs.entry.js +3 -3
  21. package/dist/cjs/sqm-referral-table_11.cjs.entry.js +3 -3
  22. package/dist/cjs/sqm-referred-registration.cjs.entry.js +2 -2
  23. package/dist/cjs/sqm-rewards-table_9.cjs.entry.js +3 -3
  24. package/dist/cjs/sqm-stencilbook.cjs.entry.js +241 -84
  25. package/dist/cjs/sqm-tabs.cjs.entry.js +1 -1
  26. package/dist/collection/collection-manifest.json +10 -0
  27. package/dist/collection/components/sqm-coupon-code/sqm-coupon-code.js +1 -1
  28. package/dist/collection/components/sqm-logout-current-user/sqm-logout-current-user.js +1 -1
  29. package/dist/collection/components/sqm-pagination/Pagination.stories.js +12 -0
  30. package/dist/collection/components/sqm-pagination/sqm-pagination-view.js +30 -0
  31. package/dist/collection/components/sqm-pagination/sqm-pagination.js +85 -0
  32. package/dist/collection/components/sqm-pagination/usePagination.js +8 -0
  33. package/dist/collection/components/sqm-referral-card/ReferralCard.stories.js +20 -0
  34. package/dist/collection/components/sqm-referral-code/ReferralCode.stories.js +60 -0
  35. package/dist/collection/components/sqm-referral-code/sqm-referral-code.js +315 -0
  36. package/dist/collection/components/sqm-referral-code/useReferralCode.js +51 -0
  37. package/dist/collection/components/sqm-referral-codes/ReferralCodes.stories.js +35 -0
  38. package/dist/collection/components/sqm-referral-codes/sqm-referral-codes-view.js +59 -0
  39. package/dist/collection/components/sqm-referral-codes/sqm-referral-codes.js +99 -0
  40. package/dist/collection/components/sqm-referral-codes/useReferralCodes.js +75 -0
  41. package/dist/collection/components/sqm-share-button/useShareButton.js +15 -16
  42. package/dist/collection/components/sqm-share-code/sqm-share-code.js +1 -1
  43. package/dist/collection/components/sqm-share-link/sqm-share-link.js +1 -1
  44. package/dist/collection/components/sqm-share-link/useShareLink.js +5 -3
  45. package/dist/collection/components/sqm-stencilbook/sqm-stencilbook.js +6 -0
  46. package/dist/collection/components/views/copy-text-view.js +16 -2
  47. package/dist/esm/{ShadowViewAddon-e012b2aa.js → ShadowViewAddon-5bb2b69a.js} +140 -214
  48. package/dist/esm/copy-text-view-bf55abeb.js +168 -0
  49. package/dist/esm/{global-04c7d3b5.js → global-b89b6edc.js} +1 -1
  50. package/dist/esm/{index.module-def4aec5.js → index.module-f122af7b.js} +1 -1
  51. package/dist/esm/loader.js +3 -3
  52. package/dist/esm/mint-components.js +3 -3
  53. package/dist/esm/{re-render-12fd274a.js → re-render-c64289f3.js} +1 -1
  54. package/dist/esm/sqm-asset-card.entry.js +2 -2
  55. package/dist/esm/sqm-banking-info-form_16.entry.js +9 -9
  56. package/dist/esm/sqm-big-stat_38.entry.js +10 -9
  57. package/dist/esm/sqm-close-button.entry.js +3 -3
  58. package/dist/esm/sqm-context-router.entry.js +1 -1
  59. package/dist/esm/sqm-empty_4.entry.js +3 -3
  60. package/dist/esm/sqm-graphql-client-provider.entry.js +1 -1
  61. package/dist/esm/sqm-instant-access-registration.entry.js +5 -5
  62. package/dist/esm/{sqm-invoice-table-view-6e13a323.js → sqm-invoice-table-view-09cc28d6.js} +1 -1
  63. package/dist/esm/sqm-leaderboard-rank.entry.js +2 -2
  64. package/dist/esm/sqm-logout-current-user.entry.js +3 -3
  65. package/dist/esm/{sqm-navigation-sidebar-item-view-60ef06cc.js → sqm-navigation-sidebar-item-view-14114804.js} +2 -2
  66. package/dist/esm/sqm-navigation-sidebar-item.entry.js +4 -4
  67. package/dist/esm/sqm-navigation-sidebar.entry.js +1 -1
  68. package/dist/esm/sqm-pagination_3.entry.js +310 -0
  69. package/dist/esm/sqm-password-field.entry.js +4 -4
  70. package/dist/esm/sqm-popup-container.entry.js +1 -1
  71. package/dist/esm/{sqm-portal-email-verification-view-4307c992.js → sqm-portal-email-verification-view-ced567c9.js} +2 -2
  72. package/dist/esm/sqm-portal-email-verification.entry.js +4 -4
  73. package/dist/esm/sqm-portal-forgot-password.entry.js +3 -3
  74. package/dist/esm/sqm-portal-logout.entry.js +1 -1
  75. package/dist/esm/{sqm-portal-profile-view-ffe955c8.js → sqm-portal-profile-view-d72dd5ac.js} +1 -1
  76. package/dist/esm/sqm-portal-profile.entry.js +6 -6
  77. package/dist/esm/sqm-portal-protected-route.entry.js +1 -1
  78. package/dist/esm/sqm-portal-registration-form.entry.js +3 -3
  79. package/dist/esm/sqm-portal-reset-password.entry.js +4 -4
  80. package/dist/esm/sqm-portal-verify-email.entry.js +4 -4
  81. package/dist/esm/sqm-referral-table_11.entry.js +8 -8
  82. package/dist/esm/sqm-referred-registration.entry.js +5 -5
  83. package/dist/esm/sqm-rewards-table-customer-note-column.entry.js +2 -2
  84. package/dist/esm/sqm-rewards-table_9.entry.js +8 -8
  85. package/dist/esm/sqm-stencilbook.entry.js +234 -77
  86. package/dist/esm/sqm-tab.entry.js +2 -2
  87. package/dist/esm/sqm-tabs.entry.js +3 -3
  88. package/dist/esm/{useChildElements-32e1bda1.js → useChildElements-37daf533.js} +1 -1
  89. package/dist/esm/{useInstantAccessRegistration-46b89952.js → useInstantAccessRegistration-9d4cb797.js} +2 -2
  90. package/dist/esm/{useReferralTable-f4de0650.js → useReferralTable-42f99ea2.js} +3 -3
  91. package/dist/esm/{useRegistrationFormState-9fc1ac80.js → useRegistrationFormState-53c71782.js} +1 -1
  92. package/dist/esm/{utilities-3f5bba22.js → utilities-18d10876.js} +1 -1
  93. package/dist/esm-es5/{GenericTableView-d59d8ab4.js → GenericTableView-bf154727.js} +1 -1
  94. package/dist/esm-es5/ShadowViewAddon-5bb2b69a.js +1 -0
  95. package/dist/esm-es5/copy-text-view-bf55abeb.js +1 -0
  96. package/dist/esm-es5/{email-registration-view-a89a88bf.js → email-registration-view-12793040.js} +1 -1
  97. package/dist/esm-es5/{global-04c7d3b5.js → global-b89b6edc.js} +1 -1
  98. package/dist/esm-es5/{index.module-def4aec5.js → index.module-f122af7b.js} +1 -1
  99. package/dist/esm-es5/loader.js +1 -1
  100. package/dist/esm-es5/mint-components.js +1 -1
  101. package/dist/esm-es5/{re-render-12fd274a.js → re-render-c64289f3.js} +1 -1
  102. package/dist/esm-es5/sqm-asset-card.entry.js +1 -1
  103. package/dist/esm-es5/sqm-banking-info-form_16.entry.js +1 -1
  104. package/dist/esm-es5/sqm-big-stat_38.entry.js +1 -1
  105. package/dist/esm-es5/{sqm-close-button-view-dc65b4e3.js → sqm-close-button-view-b24c708b.js} +1 -1
  106. package/dist/esm-es5/sqm-close-button.entry.js +1 -1
  107. package/dist/esm-es5/sqm-context-router.entry.js +1 -1
  108. package/dist/esm-es5/sqm-empty_4.entry.js +1 -1
  109. package/dist/esm-es5/sqm-graphql-client-provider.entry.js +1 -1
  110. package/dist/esm-es5/sqm-instant-access-registration.entry.js +1 -1
  111. package/dist/esm-es5/{sqm-invoice-table-view-6e13a323.js → sqm-invoice-table-view-09cc28d6.js} +1 -1
  112. package/dist/esm-es5/sqm-leaderboard-rank.entry.js +1 -1
  113. package/dist/esm-es5/sqm-logout-current-user.entry.js +1 -1
  114. package/dist/esm-es5/sqm-navigation-sidebar-item-view-14114804.js +1 -0
  115. package/dist/esm-es5/sqm-navigation-sidebar-item.entry.js +1 -1
  116. package/dist/esm-es5/sqm-navigation-sidebar.entry.js +1 -1
  117. package/dist/esm-es5/sqm-pagination_3.entry.js +1 -0
  118. package/dist/esm-es5/sqm-password-field.entry.js +1 -1
  119. package/dist/esm-es5/sqm-popup-container.entry.js +1 -1
  120. package/dist/esm-es5/{sqm-portal-email-verification-view-4307c992.js → sqm-portal-email-verification-view-ced567c9.js} +1 -1
  121. package/dist/esm-es5/sqm-portal-email-verification.entry.js +1 -1
  122. package/dist/esm-es5/{sqm-portal-forgot-password-view-c2ed8fed.js → sqm-portal-forgot-password-view-95cd454f.js} +1 -1
  123. package/dist/esm-es5/sqm-portal-forgot-password.entry.js +1 -1
  124. package/dist/esm-es5/sqm-portal-logout.entry.js +1 -1
  125. package/dist/esm-es5/{sqm-portal-profile-view-ffe955c8.js → sqm-portal-profile-view-d72dd5ac.js} +1 -1
  126. package/dist/esm-es5/sqm-portal-profile.entry.js +1 -1
  127. package/dist/esm-es5/sqm-portal-protected-route.entry.js +1 -1
  128. package/dist/esm-es5/sqm-portal-registration-form.entry.js +1 -1
  129. package/dist/esm-es5/{sqm-portal-reset-password-view-79a85e02.js → sqm-portal-reset-password-view-f1454d43.js} +1 -1
  130. package/dist/esm-es5/sqm-portal-reset-password.entry.js +1 -1
  131. package/dist/esm-es5/{sqm-portal-verify-email-view-d7ea2c56.js → sqm-portal-verify-email-view-3739f523.js} +1 -1
  132. package/dist/esm-es5/sqm-portal-verify-email.entry.js +1 -1
  133. package/dist/esm-es5/sqm-referral-table_11.entry.js +1 -1
  134. package/dist/esm-es5/sqm-referred-registration.entry.js +1 -1
  135. package/dist/esm-es5/sqm-rewards-table-customer-note-column.entry.js +1 -1
  136. package/dist/esm-es5/sqm-rewards-table_9.entry.js +1 -1
  137. package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
  138. package/dist/esm-es5/sqm-tab.entry.js +1 -1
  139. package/dist/esm-es5/sqm-tabs.entry.js +1 -1
  140. package/dist/esm-es5/{useChildElements-32e1bda1.js → useChildElements-37daf533.js} +1 -1
  141. package/dist/esm-es5/{useInstantAccessRegistration-46b89952.js → useInstantAccessRegistration-9d4cb797.js} +1 -1
  142. package/dist/esm-es5/{useReferralTable-f4de0650.js → useReferralTable-42f99ea2.js} +1 -1
  143. package/dist/esm-es5/useRegistrationFormState-53c71782.js +1 -0
  144. package/dist/esm-es5/{utilities-3f5bba22.js → utilities-18d10876.js} +1 -1
  145. package/dist/mint-components/mint-components.esm.js +1 -1
  146. package/dist/mint-components/mint-components.js +1 -1
  147. package/dist/mint-components/{p-a8f7cb95.js → p-00be5090.js} +1 -1
  148. package/dist/mint-components/{p-7049e9b0.entry.js → p-01434e4a.entry.js} +1 -1
  149. package/dist/mint-components/p-0161f5da.entry.js +13 -0
  150. package/dist/mint-components/{p-c5d2e4ba.js → p-02f6cda4.js} +1 -1
  151. package/dist/mint-components/{p-4e48267b.system.js → p-03a647c2.system.js} +1 -1
  152. package/dist/mint-components/{p-509e29e6.js → p-0806343b.js} +1 -1
  153. package/dist/mint-components/{p-3d4656bb.system.js → p-0f028514.system.js} +1 -1
  154. package/dist/mint-components/{p-b370fca8.system.js → p-1099290c.system.js} +1 -1
  155. package/dist/mint-components/{p-d8d2de11.entry.js → p-110dddfe.entry.js} +1 -1
  156. package/dist/mint-components/{p-137ea86e.entry.js → p-12c56ba6.entry.js} +1 -1
  157. package/dist/mint-components/{p-5cac90e8.system.entry.js → p-14dac608.system.entry.js} +1 -1
  158. package/dist/mint-components/{p-d49e2f7a.js → p-15dee492.js} +1 -1
  159. package/dist/mint-components/{p-c5577dd7.system.js → p-18a19cb5.system.js} +1 -1
  160. package/dist/mint-components/{p-711ba77e.system.entry.js → p-18a7f543.system.entry.js} +1 -1
  161. package/dist/mint-components/{p-a9050eb0.entry.js → p-1b1d10e5.entry.js} +1 -1
  162. package/dist/mint-components/{p-3ec16698.entry.js → p-1c6e4a5f.entry.js} +2 -2
  163. package/dist/mint-components/{p-32d1d162.entry.js → p-1c710e16.entry.js} +1 -1
  164. package/dist/mint-components/{p-01cfff8a.system.entry.js → p-1ce4fa30.system.entry.js} +1 -1
  165. package/dist/mint-components/{p-eaada4da.js → p-1df19ea2.js} +1 -1
  166. package/dist/mint-components/{p-02424350.system.js → p-21d4f6ce.system.js} +1 -1
  167. package/dist/mint-components/{p-733825fa.system.entry.js → p-22de9f73.system.entry.js} +1 -1
  168. package/dist/mint-components/{p-b4c52c5a.entry.js → p-246a2827.entry.js} +2 -2
  169. package/dist/mint-components/{p-8e907ac7.system.entry.js → p-26306ac4.system.entry.js} +1 -1
  170. package/dist/mint-components/p-2e16db11.entry.js +1 -0
  171. package/dist/mint-components/{p-1b9e6fc6.js → p-32cf8417.js} +1 -1
  172. package/dist/mint-components/{p-ce621bcc.js → p-3373d84e.js} +1 -1
  173. package/dist/mint-components/{p-56f14840.entry.js → p-3cc5474d.entry.js} +1 -1
  174. package/dist/mint-components/{p-7f088154.entry.js → p-41499327.entry.js} +1 -1
  175. package/dist/mint-components/{p-44787d6e.system.js → p-43a990b6.system.js} +1 -1
  176. package/dist/mint-components/{p-59fe4ad1.system.js → p-46ca288c.system.js} +1 -1
  177. package/dist/mint-components/{p-9f0629ba.system.entry.js → p-476182e7.system.entry.js} +1 -1
  178. package/dist/mint-components/p-4856b234.system.entry.js +1 -0
  179. package/dist/mint-components/{p-ec41d6a4.entry.js → p-48b7d703.entry.js} +6 -6
  180. package/dist/mint-components/p-494e407e.entry.js +1 -0
  181. package/dist/mint-components/{p-a51533cb.system.js → p-523ed056.system.js} +1 -1
  182. package/dist/mint-components/{p-eba44835.system.entry.js → p-53ff8bd0.system.entry.js} +1 -1
  183. package/dist/mint-components/{p-0d8c53ac.system.js → p-55588b46.system.js} +1 -1
  184. package/dist/mint-components/{p-3ed71bef.system.js → p-59c141a2.system.js} +1 -1
  185. package/dist/mint-components/p-5b7e2d53.entry.js +1 -0
  186. package/dist/mint-components/p-5c845bc2.system.entry.js +1 -0
  187. package/dist/mint-components/p-5d37482d.entry.js +1 -0
  188. package/dist/mint-components/p-5fc8d87c.system.js +1 -0
  189. package/dist/mint-components/p-646d302a.system.js +1 -0
  190. package/dist/mint-components/p-6628bc0e.system.js +1 -0
  191. package/dist/mint-components/{p-4502ed11.system.entry.js → p-67846dce.system.entry.js} +1 -1
  192. package/dist/mint-components/p-6b0e6a6c.js +1 -0
  193. package/dist/mint-components/{p-6cef104b.entry.js → p-6e62f207.entry.js} +1 -1
  194. package/dist/mint-components/{p-770368bc.system.js → p-6e7e8af6.system.js} +1 -1
  195. package/dist/mint-components/{p-3f385f47.entry.js → p-73c6b26d.entry.js} +9 -9
  196. package/dist/mint-components/{p-c84659a3.system.js → p-73decce7.system.js} +1 -1
  197. package/dist/mint-components/{p-58ef25d3.system.entry.js → p-7962ab58.system.entry.js} +1 -1
  198. package/dist/mint-components/{p-4edde470.entry.js → p-798ed3a2.entry.js} +1 -1
  199. package/dist/mint-components/{p-41a11a7f.js → p-8077e9c6.js} +1 -1
  200. package/dist/mint-components/{p-cf690d55.system.entry.js → p-82e09b8d.system.entry.js} +1 -1
  201. package/dist/mint-components/{p-fb93c962.js → p-855ae1b5.js} +1 -1
  202. package/dist/mint-components/p-89a760ea.js +1 -0
  203. package/dist/mint-components/{p-af062c8f.system.entry.js → p-8c97bfb1.system.entry.js} +1 -1
  204. package/dist/mint-components/{p-a7c2ced2.system.entry.js → p-9288cca6.system.entry.js} +1 -1
  205. package/dist/mint-components/{p-1c857edb.entry.js → p-942d1c22.entry.js} +2 -2
  206. package/dist/mint-components/{p-86990110.entry.js → p-96cb9c17.entry.js} +1 -1
  207. package/dist/mint-components/{p-2ee2ebba.js → p-991c9787.js} +2 -2
  208. package/dist/mint-components/{p-8704937c.js → p-9c3d78e9.js} +1 -1
  209. package/dist/mint-components/{p-674a64fe.system.js → p-9deac406.system.js} +1 -1
  210. package/dist/mint-components/{p-1dd69917.system.entry.js → p-a1150633.system.entry.js} +1 -1
  211. package/dist/mint-components/{p-b5861974.system.entry.js → p-a474b0ec.system.entry.js} +1 -1
  212. package/dist/mint-components/{p-9c310991.system.entry.js → p-acc93caa.system.entry.js} +1 -1
  213. package/dist/mint-components/{p-9df2fe24.entry.js → p-b0ce005d.entry.js} +2 -2
  214. package/dist/mint-components/{p-e5a0c50e.entry.js → p-b334bde8.entry.js} +2 -2
  215. package/dist/mint-components/p-b4eb9c46.entry.js +11 -0
  216. package/dist/mint-components/p-b5176703.entry.js +1 -0
  217. package/dist/mint-components/p-b71c0e2d.system.entry.js +1 -0
  218. package/dist/mint-components/{p-7d5e0645.system.js → p-bb6f6681.system.js} +1 -1
  219. package/dist/mint-components/p-bd4e9c2b.js +1 -0
  220. package/dist/mint-components/{p-ed095674.system.js → p-bf834367.system.js} +1 -1
  221. package/dist/mint-components/{p-07f675ab.system.entry.js → p-c1ba2ad0.system.entry.js} +1 -1
  222. package/dist/mint-components/p-c37137cd.js +2 -0
  223. package/dist/mint-components/{p-be4b748a.system.entry.js → p-c39f9dc1.system.entry.js} +1 -1
  224. package/dist/mint-components/p-c7ce2c1e.system.js +1 -0
  225. package/dist/mint-components/p-ca17d998.entry.js +1 -0
  226. package/dist/mint-components/{p-e8dde8f4.system.js → p-ce746af8.system.js} +1 -1
  227. package/dist/mint-components/{p-2dd67762.entry.js → p-cfbe2f86.entry.js} +1 -1
  228. package/dist/mint-components/{p-3223ba7b.entry.js → p-d3d281ff.entry.js} +1 -1
  229. package/dist/mint-components/p-d666b326.js +1 -0
  230. package/dist/mint-components/{p-a1dba9a1.system.entry.js → p-d68ed4a6.system.entry.js} +1 -1
  231. package/dist/mint-components/{p-4ea58025.system.entry.js → p-daba8cd2.system.entry.js} +1 -1
  232. package/dist/mint-components/p-dc41ff27.entry.js +1 -0
  233. package/dist/mint-components/{p-afd366ae.system.entry.js → p-de2a8fae.system.entry.js} +1 -1
  234. package/dist/mint-components/{p-8679ed9f.system.entry.js → p-e2bb72eb.system.entry.js} +1 -1
  235. package/dist/mint-components/{p-4d233cd4.js → p-e41cb11f.js} +1 -1
  236. package/dist/mint-components/{p-bb00db59.js → p-ea88142c.js} +1 -1
  237. package/dist/mint-components/p-eb4e9efb.system.entry.js +1 -0
  238. package/dist/mint-components/{p-b6fc1227.system.entry.js → p-ec8a9e91.system.entry.js} +1 -1
  239. package/dist/mint-components/{p-5b333fa8.system.entry.js → p-ecefeaa9.system.entry.js} +1 -1
  240. package/dist/mint-components/{p-c8610d0c.js → p-ed161025.js} +1 -1
  241. package/dist/mint-components/p-f1ec1180.entry.js +1 -0
  242. package/dist/mint-components/{p-4df8f1d2.system.js → p-f44d88fa.system.js} +1 -1
  243. package/dist/mint-components/{p-35d84041.system.entry.js → p-f52c3aec.system.entry.js} +1 -1
  244. package/dist/mint-components/{p-aad11a68.entry.js → p-fae82751.entry.js} +1 -1
  245. package/dist/mint-components/{p-fb20eb5e.system.entry.js → p-fb2c0ce4.system.entry.js} +1 -1
  246. package/dist/mint-components/{p-10685090.js → p-fec0ac31.js} +24 -24
  247. package/dist/mint-components/{p-7731f793.system.entry.js → p-ff41c804.system.entry.js} +1 -1
  248. package/dist/types/components/sqm-pagination/Pagination.stories.d.ts +5 -0
  249. package/dist/types/components/sqm-pagination/sqm-pagination-view.d.ts +7 -0
  250. package/dist/types/components/sqm-pagination/sqm-pagination.d.ts +17 -0
  251. package/dist/types/components/sqm-pagination/usePagination.d.ts +15 -0
  252. package/dist/types/components/sqm-referral-card/ReferralCard.stories.d.ts +1 -0
  253. package/dist/types/components/sqm-referral-code/ReferralCode.stories.d.ts +18 -0
  254. package/dist/types/components/sqm-referral-code/sqm-referral-code.d.ts +70 -0
  255. package/dist/types/components/sqm-referral-code/useReferralCode.d.ts +9 -0
  256. package/dist/types/components/sqm-referral-codes/ReferralCodes.stories.d.ts +9 -0
  257. package/dist/types/components/sqm-referral-codes/sqm-referral-codes-view.d.ts +10 -0
  258. package/dist/types/components/sqm-referral-codes/sqm-referral-codes.d.ts +21 -0
  259. package/dist/types/components/sqm-referral-codes/useReferralCodes.d.ts +59 -0
  260. package/dist/types/components/sqm-share-link/useShareLink.d.ts +1 -0
  261. package/dist/types/components/views/copy-text-view.d.ts +2 -0
  262. package/dist/types/components.d.ts +170 -0
  263. package/docs/docs.docx +0 -0
  264. package/docs/raisins.json +1 -1
  265. package/grapesjs/grapesjs.js +1 -1
  266. package/package.json +1 -1
  267. package/dist/esm-es5/ShadowViewAddon-e012b2aa.js +0 -1
  268. package/dist/esm-es5/sqm-navigation-sidebar-item-view-60ef06cc.js +0 -1
  269. package/dist/esm-es5/useRegistrationFormState-9fc1ac80.js +0 -1
  270. package/dist/mint-components/p-021a735d.entry.js +0 -1
  271. package/dist/mint-components/p-03494732.entry.js +0 -1
  272. package/dist/mint-components/p-0b9fa97f.js +0 -1
  273. package/dist/mint-components/p-10e89d0a.entry.js +0 -1
  274. package/dist/mint-components/p-51f517a2.js +0 -1
  275. package/dist/mint-components/p-5be235f9.entry.js +0 -1
  276. package/dist/mint-components/p-5f1c4160.system.entry.js +0 -1
  277. package/dist/mint-components/p-61eab172.js +0 -1
  278. package/dist/mint-components/p-76b2506e.system.entry.js +0 -1
  279. package/dist/mint-components/p-79191f88.entry.js +0 -1
  280. package/dist/mint-components/p-8b5b78ca.entry.js +0 -1
  281. package/dist/mint-components/p-91669312.entry.js +0 -1
  282. package/dist/mint-components/p-95771f79.system.js +0 -1
  283. package/dist/mint-components/p-a6a7dcaa.js +0 -1
  284. package/dist/mint-components/p-ce5afa40.entry.js +0 -1
  285. package/dist/mint-components/p-d495896f.system.entry.js +0 -1
  286. package/dist/mint-components/p-dd7ee007.system.js +0 -1
  287. package/dist/mint-components/p-e3735866.entry.js +0 -11
  288. package/dist/mint-components/p-ed17e637.system.js +0 -1
  289. package/dist/types/global/android.d.ts +0 -7
  290. package/dist/types/global/demo.d.ts +0 -2
  291. package/dist/types/stories/features.d.ts +0 -4
  292. package/dist/types/stories/templates.d.ts +0 -4
  293. package/dist/cjs/{GenericTableView-80d7642e.js → GenericTableView-a3f48e15.js} +1 -1
  294. package/dist/cjs/{email-registration-view-248652bb.js → email-registration-view-4c5d9379.js} +1 -1
  295. package/dist/cjs/{sqm-close-button-view-fd6e8f60.js → sqm-close-button-view-217239b7.js} +1 -1
  296. package/dist/cjs/{sqm-navigation-sidebar-item-view-a125ec5f.js → sqm-navigation-sidebar-item-view-4e90b6f5.js} +1 -1
  297. package/dist/cjs/{sqm-portal-email-verification-view-292b5bf4.js → sqm-portal-email-verification-view-bff9783d.js} +1 -1
  298. package/dist/cjs/{sqm-portal-forgot-password-view-969c49ed.js → sqm-portal-forgot-password-view-3cd69fe7.js} +1 -1
  299. package/dist/cjs/{sqm-portal-reset-password-view-96f329ed.js → sqm-portal-reset-password-view-34771d2c.js} +1 -1
  300. package/dist/cjs/{sqm-portal-verify-email-view-7ffcc0d4.js → sqm-portal-verify-email-view-c8f91506.js} +1 -1
  301. package/dist/esm/{GenericTableView-d59d8ab4.js → GenericTableView-bf154727.js} +1 -1
  302. package/dist/esm/{email-registration-view-a89a88bf.js → email-registration-view-12793040.js} +1 -1
  303. package/dist/esm/{sqm-close-button-view-dc65b4e3.js → sqm-close-button-view-b24c708b.js} +1 -1
  304. package/dist/esm/{sqm-portal-forgot-password-view-c2ed8fed.js → sqm-portal-forgot-password-view-95cd454f.js} +1 -1
  305. package/dist/esm/{sqm-portal-reset-password-view-79a85e02.js → sqm-portal-reset-password-view-f1454d43.js} +1 -1
  306. package/dist/esm/{sqm-portal-verify-email-view-d7ea2c56.js → sqm-portal-verify-email-view-3739f523.js} +1 -1
@@ -1,32 +1,33 @@
1
1
  import { h, r as registerInstance, c as Host } from './index-17b4da69.js';
2
2
  import { a as commonjsGlobal, u as useMemo, k as useState, f as useEffect, c as createCommonjsModule, n as h$1 } from './stencil-hooks.module-ac12ca1c.js';
3
- import './global-04c7d3b5.js';
4
- import { $ as $n, S as Sn, b as setUserIdentity, d as dist, X as Xe, o as setProgramId } from './index.module-def4aec5.js';
3
+ import './global-b89b6edc.js';
4
+ import { e as $n, S as Sn, b as setUserIdentity, d as dist, X as Xe, o as setProgramId } from './index.module-f122af7b.js';
5
+ import './utils-334c1e34.js';
6
+ import { c as createStyleSheet } from './JSS-67b5cff8.js';
7
+ import { C as CopyTextView } from './copy-text-view-bf55abeb.js';
5
8
  import './cjs-bdfb4486.js';
6
9
  import './mixins-f60a614c.js';
7
- import { c as createStyleSheet } from './JSS-67b5cff8.js';
8
- import { G as GenericTableView } from './GenericTableView-d59d8ab4.js';
9
- import './useChildElements-32e1bda1.js';
10
+ import { G as GenericTableView } from './GenericTableView-bf154727.js';
11
+ import './useChildElements-37daf533.js';
10
12
  import { l as luxon } from './luxon-7600be8d.js';
11
- import './utils-334c1e34.js';
12
13
  import './sqm-text-span-view-8d140661.js';
13
14
  import { A as AssetCardView } from './sqm-asset-card-view-9d93fbdd.js';
14
- import { C as CloseButtonView } from './sqm-close-button-view-dc65b4e3.js';
15
+ import { C as CloseButtonView } from './sqm-close-button-view-b24c708b.js';
15
16
  import './index-ffa26b43.js';
16
- import { E as EmailRegistrationView } from './email-registration-view-a89a88bf.js';
17
+ import { E as EmailRegistrationView } from './email-registration-view-12793040.js';
17
18
  import { L as LeaderboardRankView } from './sqm-leaderboard-rank-view-10657658.js';
18
19
  import { L as LogoutCurrentUserView } from './sqm-logout-current-user-view-2c6122cd.js';
19
20
  import { N as NavigationSidebarView } from './sqm-navigation-sidebar-view-0312e073.js';
20
- import { N as NavigationSidebarItemView } from './sqm-navigation-sidebar-item-view-60ef06cc.js';
21
- import { P as PortalEmailVerificationView } from './sqm-portal-email-verification-view-4307c992.js';
22
- import { P as PortalForgotPasswordView } from './sqm-portal-forgot-password-view-c2ed8fed.js';
23
- import { P as PortalProfileView } from './sqm-portal-profile-view-ffe955c8.js';
24
- import './utilities-3f5bba22.js';
25
- import { P as PortalResetPasswordView } from './sqm-portal-reset-password-view-79a85e02.js';
26
- import { P as PortalVerifyEmailView } from './sqm-portal-verify-email-view-d7ea2c56.js';
27
- import { S as ShareButtonView, L as LeaderboardView, C as CopyTextView, B as BigStatView, P as PortalFrameView, E as EditProfileView, u as useShareLink, a as useShareButton, b as useDemoBigStat, c as StatContainerView, d as PortalChangePasswordView, e as PortalLoginView, f as PortalRegisterView, T as TaskCardView, g as ProgressBarView, h as PoweredByImg$1, i as PortalFooterView, H as HeroView, R as ReferralIframeView, N as NameFieldsView, j as CheckboxFieldView, D as DropdownFieldView, I as InputFieldView, k as RewardExchangeView, r as rewardExchangeCustomErrorMsg, l as rewardExchangeLongText, m as rewardExchangeSelected, n as chooseAmountFixed, o as chooseAmountFixedNoDescription, p as chooseAmountVariable, q as chooseAmountVariableNoDescription, s as chooseAmountVariableDisabled, t as chooseAmountVariableUnavailable, v as confirmFixed, w as confirmVariable, x as redemptionError, y as queryError, z as success, A as successVariable, F as loading, G as empty$1, J as rewardExchange, K as CardFeedView, M as CouponCodeView, O as ProgressBar$2, Q as autoColorScaleCss, U as ShadowViewAddon } from './ShadowViewAddon-e012b2aa.js';
21
+ import { N as NavigationSidebarItemView } from './sqm-navigation-sidebar-item-view-14114804.js';
22
+ import { P as PortalEmailVerificationView } from './sqm-portal-email-verification-view-ced567c9.js';
23
+ import { P as PortalForgotPasswordView } from './sqm-portal-forgot-password-view-95cd454f.js';
24
+ import { P as PortalProfileView } from './sqm-portal-profile-view-d72dd5ac.js';
25
+ import './utilities-18d10876.js';
26
+ import { P as PortalResetPasswordView } from './sqm-portal-reset-password-view-f1454d43.js';
27
+ import { P as PortalVerifyEmailView } from './sqm-portal-verify-email-view-3739f523.js';
28
+ import { S as ShareButtonView, L as LeaderboardView, B as BigStatView, P as PortalFrameView, E as EditProfileView, u as useShareLink, a as useShareButton, b as useDemoBigStat, c as StatContainerView, d as PortalChangePasswordView, e as PortalLoginView, f as PortalRegisterView, T as TaskCardView, g as ProgressBarView, h as PoweredByImg$1, i as PortalFooterView, H as HeroView, R as ReferralIframeView, N as NameFieldsView, C as CheckboxFieldView, D as DropdownFieldView, I as InputFieldView, j as RewardExchangeView, r as rewardExchangeCustomErrorMsg, k as rewardExchangeLongText, l as rewardExchangeSelected, m as chooseAmountFixed, n as chooseAmountFixedNoDescription, o as chooseAmountVariable, p as chooseAmountVariableNoDescription, q as chooseAmountVariableDisabled, s as chooseAmountVariableUnavailable, t as confirmFixed, v as confirmVariable, w as redemptionError, x as queryError, y as success, z as successVariable, A as loading, F as empty$1, G as rewardExchange, J as CardFeedView, K as CouponCodeView, M as ProgressBar$2, O as autoColorScaleCss, Q as ShadowViewAddon } from './ShadowViewAddon-5bb2b69a.js';
28
29
  import { P as PortalContainerView, a as PortalSectionView } from './sqm-portal-container-view-6c582684.js';
29
- import { O as OtherRegionSlotView, I as InvoiceTableView, T as TaxForm } from './sqm-invoice-table-view-6e13a323.js';
30
+ import { O as OtherRegionSlotView, I as InvoiceTableView, T as TaxForm } from './sqm-invoice-table-view-09cc28d6.js';
30
31
 
31
32
  /**
32
33
  * lodash (Custom Build) <https://lodash.com/>
@@ -1624,6 +1625,19 @@ const EmptyState = /*#__PURE__*/Object.freeze({
1624
1625
  SlottedIntoComponent: SlottedIntoComponent
1625
1626
  });
1626
1627
 
1628
+ const Pagination_stories = {
1629
+ title: "Components/Link Button",
1630
+ };
1631
+ const Default = () => {
1632
+ return h("sqm-pagination", null);
1633
+ };
1634
+
1635
+ const Pagination = /*#__PURE__*/Object.freeze({
1636
+ __proto__: null,
1637
+ 'default': Pagination_stories,
1638
+ Default: Default
1639
+ });
1640
+
1627
1641
  const scenario$2 = "@author:johan\n@owner:johan\nFeature: Share Link\n\n The share link component is a box that allows users to see and copy their share link for a given program\n\n Background: Environment\n Given there is a valid program ID in the environment\n And there is a valid user ID and account ID in the environment\n\n @motivating\n Scenario: A Users sharelink can be copied to their clipboard\n Given tooltipText is \"hello tooltip\"\n When the component renders\n Then there is a textbox with the user's share link\n When the clipboard icon is clicked\n Then the link is copied to clipboard\n And a tooltip appears for ~1 second\n\n @minutia\n Scenario: Tooltip lifespan defaults to 2000\n Given the tooltip's lifespan is set to 2000\n And there is tooltip text\n When the component renders\n And the clipboard icon is clicked\n Then a tooltip appears for ~2 seconds\n\n @minutia\n Scenario: Demo\n Given isDemo() returns true\n Then the share link is \"https://www.example.com/sharelink/abc\"\n And the component won't be interactive\n And the tooltip is hidden\n\n @minutia\n Scenario: Program ID can be sourced from prop\n Given the programId prop is set to \"program-a\"\n And window.widgetIdent.programId is set to \"program-b\"\n When the component renders\n Then the share link is for \"program-a\"\n\n @minutia\n Scenario: Program ID can be sourced from window\n Given the programId prop is unset\n And window.widgetIdent.programId is set to \"program-b\"\n When the component renders\n Then the share link is for \"program-b\"\n\n @minutia\n Scenario: An analytic event is fired when a user copies their sharelink\n Given a user viewing the share link component\n And the component is rendered for \"program-a\"\n When they click to copy their link\n Then an \"USER_REFERRAL_PROGRAM_ENGAGEMENT_EVENT\" analytic event is fired\n And it is for \"program-a\"\n And it has share medium \"DIRECT\"\n\n\n @ui\n Scenario Outline: user can edit the alignment of the share link text\n Given a user is editing the share link component\n Then they see \"Align text\" props\n And the default value is \"left\"\n When they change the option to <option>\n Then they see the text in <position>\n Examples:\n | option | position |\n | left | left |\n | center | center |\n | right | right |\n\n @ui\n Scenario Outline: The position of the copy button can be changed\n Given a user is editing the share link component\n Then they see \"Style\" props\n And the default value is \"icon\"\n When they change the option to <option>\n Then they see the copy button in <position>\n Examples:\n | option | position |\n | button outside | outside the input, on the right |\n | button below | outside the input, below |\n | icon | inside the input as an icon |\n";
1628
1642
 
1629
1643
  const ShareLink_stories = {
@@ -1632,7 +1646,7 @@ const ShareLink_stories = {
1632
1646
  scenario: scenario$2,
1633
1647
  },
1634
1648
  };
1635
- const Default = () => {
1649
+ const Default$1 = () => {
1636
1650
  const props = {
1637
1651
  copyString: "https://noah.example.com",
1638
1652
  open: false,
@@ -1696,7 +1710,7 @@ const FullStack = () => {
1696
1710
  const ShareLink = /*#__PURE__*/Object.freeze({
1697
1711
  __proto__: null,
1698
1712
  'default': ShareLink_stories,
1699
- Default: Default,
1713
+ Default: Default$1,
1700
1714
  Tooltip: Tooltip,
1701
1715
  Disabled: Disabled,
1702
1716
  Error: Error$1,
@@ -1715,7 +1729,7 @@ const BigStat_stories = {
1715
1729
  scenario: scenario$3,
1716
1730
  },
1717
1731
  };
1718
- const Default$1 = () => {
1732
+ const Default$2 = () => {
1719
1733
  const props = { value: 990000, statvalue: "9.900,00", loading: false };
1720
1734
  return h(BigStatView, Object.assign({}, props), "Big stat");
1721
1735
  };
@@ -1798,7 +1812,7 @@ const MultipleStats = () => {
1798
1812
  const BigStat = /*#__PURE__*/Object.freeze({
1799
1813
  __proto__: null,
1800
1814
  'default': BigStat_stories,
1801
- Default: Default$1,
1815
+ Default: Default$2,
1802
1816
  LeftAlign: LeftAlign,
1803
1817
  RightAlign: RightAlign,
1804
1818
  FlexReverse: FlexReverse,
@@ -7272,14 +7286,14 @@ const loadingProps = {
7272
7286
  },
7273
7287
  content: { pageLabel: "Sign in to your account" },
7274
7288
  };
7275
- const Default$2 = () => h(PortalLoginView, Object.assign({}, defaultProps$2));
7289
+ const Default$3 = () => h(PortalLoginView, Object.assign({}, defaultProps$2));
7276
7290
  const LoginWithError = () => h(PortalLoginView, Object.assign({}, errorProps));
7277
7291
  const LoginLoading = () => h(PortalLoginView, Object.assign({}, loadingProps));
7278
7292
 
7279
7293
  const PortalLogin = /*#__PURE__*/Object.freeze({
7280
7294
  __proto__: null,
7281
7295
  'default': PortalLogin_stories,
7282
- Default: Default$2,
7296
+ Default: Default$3,
7283
7297
  LoginWithError: LoginWithError,
7284
7298
  LoginLoading: LoginLoading
7285
7299
  });
@@ -7382,7 +7396,7 @@ const slottedProps = {
7382
7396
  h("sl-input", { exportparts: "label: input-label, base: input-base", label: "Slotted Input 2", required: true }))),
7383
7397
  },
7384
7398
  };
7385
- const Default$3 = () => h(PortalRegisterView, Object.assign({}, defaultProps$3));
7399
+ const Default$4 = () => h(PortalRegisterView, Object.assign({}, defaultProps$3));
7386
7400
  const RegisterWithError = () => h(PortalRegisterView, Object.assign({}, errorProps$1));
7387
7401
  const RegisterLoading = () => h(PortalRegisterView, Object.assign({}, loadingProps$1));
7388
7402
  const FieldsHidden = () => {
@@ -7409,7 +7423,7 @@ const TermsAndConditions = () => (h(PortalRegisterView, Object.assign({}, defaul
7409
7423
  const PortalRegister = /*#__PURE__*/Object.freeze({
7410
7424
  __proto__: null,
7411
7425
  'default': PortalRegister_stories,
7412
- Default: Default$3,
7426
+ Default: Default$4,
7413
7427
  RegisterWithError: RegisterWithError,
7414
7428
  RegisterLoading: RegisterLoading,
7415
7429
  FieldsHidden: FieldsHidden,
@@ -7485,7 +7499,7 @@ const successProps = {
7485
7499
  messageSlot: "Enter your email below to receive a password reset link.",
7486
7500
  },
7487
7501
  };
7488
- const Default$4 = () => h(PortalForgotPasswordView, Object.assign({}, defaultProps$4));
7502
+ const Default$5 = () => h(PortalForgotPasswordView, Object.assign({}, defaultProps$4));
7489
7503
  const ForgotPasswordWithError = () => (h(PortalForgotPasswordView, Object.assign({}, errorProps$2)));
7490
7504
  const ForgotPasswordLoading = () => (h(PortalForgotPasswordView, Object.assign({}, loadingProps$2)));
7491
7505
  const ForgotPasswordSuccess = () => (h(PortalForgotPasswordView, Object.assign({}, successProps)));
@@ -7493,7 +7507,7 @@ const ForgotPasswordSuccess = () => (h(PortalForgotPasswordView, Object.assign({
7493
7507
  const PortalForgotPassword = /*#__PURE__*/Object.freeze({
7494
7508
  __proto__: null,
7495
7509
  'default': PortalForgotPassword_stories,
7496
- Default: Default$4,
7510
+ Default: Default$5,
7497
7511
  ForgotPasswordWithError: ForgotPasswordWithError,
7498
7512
  ForgotPasswordLoading: ForgotPasswordLoading,
7499
7513
  ForgotPasswordSuccess: ForgotPasswordSuccess
@@ -7564,7 +7578,7 @@ const loadingVerificationProps = {
7564
7578
  callbacks: defaultCallbacks,
7565
7579
  content: defaultContent,
7566
7580
  };
7567
- const Default$5 = () => h(PortalEmailVerificationView, Object.assign({}, defaultProps$5));
7581
+ const Default$6 = () => h(PortalEmailVerificationView, Object.assign({}, defaultProps$5));
7568
7582
  const EmailVerificationWithError = () => (h(PortalEmailVerificationView, Object.assign({}, errorProps$3)));
7569
7583
  const EmailVerificationLoading = () => (h(PortalEmailVerificationView, Object.assign({}, loadingProps$3)));
7570
7584
  const EmailVerificationCheckingVerification = () => (h(PortalEmailVerificationView, Object.assign({}, loadingVerificationProps)));
@@ -7573,7 +7587,7 @@ const EmailVerificationSuccess = () => (h(PortalEmailVerificationView, Object.as
7573
7587
  const PortalEmailVerification = /*#__PURE__*/Object.freeze({
7574
7588
  __proto__: null,
7575
7589
  'default': PortalEmailVerification_stories,
7576
- Default: Default$5,
7590
+ Default: Default$6,
7577
7591
  EmailVerificationWithError: EmailVerificationWithError,
7578
7592
  EmailVerificationLoading: EmailVerificationLoading,
7579
7593
  EmailVerificationCheckingVerification: EmailVerificationCheckingVerification,
@@ -7726,7 +7740,7 @@ const validatingCodeProps = {
7726
7740
  failed: () => console.log("failed"),
7727
7741
  },
7728
7742
  };
7729
- const Default$6 = () => h(PortalResetPasswordView, Object.assign({}, defaultProps$6));
7743
+ const Default$7 = () => h(PortalResetPasswordView, Object.assign({}, defaultProps$6));
7730
7744
  const DefaultWithoutConfirmField = () => (h(PortalResetPasswordView, Object.assign({}, defaultPropsNoConfirm)));
7731
7745
  const ResetPasswordWithError = () => (h(PortalResetPasswordView, Object.assign({}, errorProps$4)));
7732
7746
  const ResetPasswordLoading = () => (h(PortalResetPasswordView, Object.assign({}, loadingProps$4)));
@@ -7736,7 +7750,7 @@ const CodeValidating = () => (h(PortalResetPasswordView, Object.assign({}, valid
7736
7750
  const PortalResetPassword = /*#__PURE__*/Object.freeze({
7737
7751
  __proto__: null,
7738
7752
  'default': PortalResetPassword_stories,
7739
- Default: Default$6,
7753
+ Default: Default$7,
7740
7754
  DefaultWithoutConfirmField: DefaultWithoutConfirmField,
7741
7755
  ResetPasswordWithError: ResetPasswordWithError,
7742
7756
  ResetPasswordLoading: ResetPasswordLoading,
@@ -7799,7 +7813,7 @@ const PortalVerifyEmail = /*#__PURE__*/Object.freeze({
7799
7813
  const AssetCard_stories = {
7800
7814
  title: "Components/Asset Card",
7801
7815
  };
7802
- const Default$7 = () => {
7816
+ const Default$8 = () => {
7803
7817
  const props = {
7804
7818
  text: { titleText: "Marketing Banner" },
7805
7819
  imgUrl: "https://res.cloudinary.com/saasquatch/image/upload/v1634255445/squatch-assets/Copy_of_saasquatch-logo-tree-large-horizontal.png",
@@ -7827,7 +7841,7 @@ const CardWithNoImg = () => {
7827
7841
  const AssetCard = /*#__PURE__*/Object.freeze({
7828
7842
  __proto__: null,
7829
7843
  'default': AssetCard_stories,
7830
- Default: Default$7,
7844
+ Default: Default$8,
7831
7845
  CardWithLongText: CardWithLongText,
7832
7846
  CardWithNoImg: CardWithNoImg
7833
7847
  });
@@ -8048,7 +8062,7 @@ const successProps$3 = {
8048
8062
  submit: (e) => console.log("Submit", e),
8049
8063
  },
8050
8064
  };
8051
- const Default$8 = () => h(PortalChangePasswordView, Object.assign({}, defaultProps$7));
8065
+ const Default$9 = () => h(PortalChangePasswordView, Object.assign({}, defaultProps$7));
8052
8066
  const Open = () => h(PortalChangePasswordView, Object.assign({}, openProps));
8053
8067
  const Error$2 = () => h(PortalChangePasswordView, Object.assign({}, errorProps$6));
8054
8068
  const PaswordError = () => (h(PortalChangePasswordView, Object.assign({}, passwordErrorProps)));
@@ -8058,7 +8072,7 @@ const Success = () => h(PortalChangePasswordView, Object.assign({}, successProps
8058
8072
  const ChangePassword = /*#__PURE__*/Object.freeze({
8059
8073
  __proto__: null,
8060
8074
  'default': ChangePassword_stories,
8061
- Default: Default$8,
8075
+ Default: Default$9,
8062
8076
  Open: Open,
8063
8077
  Error: Error$2,
8064
8078
  PaswordError: PaswordError,
@@ -8285,7 +8299,7 @@ const successProps$4 = {
8285
8299
  onChange: (e) => console.log(e),
8286
8300
  },
8287
8301
  };
8288
- const Default$9 = () => h(PortalProfileView, Object.assign({}, defaultProps$8));
8302
+ const Default$a = () => h(PortalProfileView, Object.assign({}, defaultProps$8));
8289
8303
  const DefaultNoCountry = () => h(PortalProfileView, Object.assign({}, noCountry));
8290
8304
  const Loading$2 = () => h(PortalProfileView, Object.assign({}, loadingProps$6));
8291
8305
  const Disabled$1 = () => h(PortalProfileView, Object.assign({}, disabledProps));
@@ -8295,7 +8309,7 @@ const Success$1 = () => h(PortalProfileView, Object.assign({}, successProps$4));
8295
8309
  const PortalProfile = /*#__PURE__*/Object.freeze({
8296
8310
  __proto__: null,
8297
8311
  'default': PortalProfile_stories,
8298
- Default: Default$9,
8312
+ Default: Default$a,
8299
8313
  DefaultNoCountry: DefaultNoCountry,
8300
8314
  Loading: Loading$2,
8301
8315
  Disabled: Disabled$1,
@@ -10255,7 +10269,7 @@ const ProgramMenu = /*#__PURE__*/Object.freeze({
10255
10269
  const PoweredByImg_stories = {
10256
10270
  title: "Powered By",
10257
10271
  };
10258
- const Default$a = () => {
10272
+ const Default$b = () => {
10259
10273
  return h(PoweredByImg$1, null);
10260
10274
  };
10261
10275
  const CustomColor = () => {
@@ -10268,7 +10282,7 @@ const CustomWidthAndHeight = () => {
10268
10282
  const PoweredByImg = /*#__PURE__*/Object.freeze({
10269
10283
  __proto__: null,
10270
10284
  'default': PoweredByImg_stories,
10271
- Default: Default$a,
10285
+ Default: Default$b,
10272
10286
  CustomColor: CustomColor,
10273
10287
  CustomWidthAndHeight: CustomWidthAndHeight
10274
10288
  });
@@ -10655,7 +10669,7 @@ const defaultRegisterProps = {
10655
10669
  invalidEmailErrorMessage: "Must be a valid email address",
10656
10670
  },
10657
10671
  };
10658
- const Default$b = createHookStory(() => (h(CheckboxFieldView, Object.assign({}, defaultProps$a))));
10672
+ const Default$c = createHookStory(() => (h(CheckboxFieldView, Object.assign({}, defaultProps$a))));
10659
10673
  const DefaultChecked = createHookStory(() => (h(CheckboxFieldView, Object.assign({}, defaultProps$a, { states: {
10660
10674
  ...defaultProps$a.states,
10661
10675
  checked: true,
@@ -10710,7 +10724,7 @@ const TermsAndConditionsLongCustomLabel = createHookStory(() => (h(PortalRegiste
10710
10724
  const CheckboxField = /*#__PURE__*/Object.freeze({
10711
10725
  __proto__: null,
10712
10726
  'default': CheckboxField_stories,
10713
- Default: Default$b,
10727
+ Default: Default$c,
10714
10728
  DefaultChecked: DefaultChecked,
10715
10729
  CustomLabel: CustomLabel,
10716
10730
  Error: Error$4,
@@ -10812,7 +10826,7 @@ const defaultProps$b = {
10812
10826
  ],
10813
10827
  },
10814
10828
  };
10815
- const Default$c = createHookStory(() => (h(DropdownFieldView, Object.assign({}, defaultProps$b))));
10829
+ const Default$d = createHookStory(() => (h(DropdownFieldView, Object.assign({}, defaultProps$b))));
10816
10830
  const CustomLabel$1 = createHookStory(() => (h(DropdownFieldView, Object.assign({}, defaultProps$b, { content: {
10817
10831
  ...defaultProps$b.content,
10818
10832
  dropdownLabel: "Pick your favorite",
@@ -10840,7 +10854,7 @@ const CustomError$1 = createHookStory(() => (h(DropdownFieldView, Object.assign(
10840
10854
  const DropdownField = /*#__PURE__*/Object.freeze({
10841
10855
  __proto__: null,
10842
10856
  'default': DropdownField_stories,
10843
- Default: Default$c,
10857
+ Default: Default$d,
10844
10858
  CustomLabel: CustomLabel$1,
10845
10859
  Error: Error$5,
10846
10860
  CustomError: CustomError$1
@@ -10950,7 +10964,7 @@ const defaultRegisterProps$1 = {
10950
10964
  invalidEmailErrorMessage: "Must be a valid email address",
10951
10965
  },
10952
10966
  };
10953
- const Default$d = () => h(InputFieldView, Object.assign({}, defaultProps$c));
10967
+ const Default$e = () => h(InputFieldView, Object.assign({}, defaultProps$c));
10954
10968
  const CustomLabel$2 = () => (h(InputFieldView, Object.assign({}, defaultProps$c, { content: { ...defaultProps$c.content, fieldLabel: "My Label" } })));
10955
10969
  const Error$6 = () => (h(InputFieldView, Object.assign({}, defaultProps$c, { states: {
10956
10970
  ...defaultProps$c.states,
@@ -11000,7 +11014,7 @@ const RegistrationFieldCustomLabel = () => (h(PortalRegisterView, Object.assign(
11000
11014
  const InputField = /*#__PURE__*/Object.freeze({
11001
11015
  __proto__: null,
11002
11016
  'default': InputField_stories,
11003
- Default: Default$d,
11017
+ Default: Default$e,
11004
11018
  CustomLabel: CustomLabel$2,
11005
11019
  Error: Error$6,
11006
11020
  CustomError: CustomError$2,
@@ -12623,6 +12637,21 @@ const sharebutton = (slot) => {
12623
12637
  h("sqm-share-button", { medium: "facebook" }, "Share on Facebook"),
12624
12638
  h("sqm-share-button", { medium: "twitter" }, "Post about us on X"))));
12625
12639
  };
12640
+ const shareButtonsWithPromoCodes = (slot) => {
12641
+ return (h("sqm-portal-container", { gap: "large", slot: slot },
12642
+ h("sqm-text", null, "Choose how you want to share:"),
12643
+ h("sqm-text", null,
12644
+ h("sub", null, "Share with your friends:"),
12645
+ h("sqm-share-code", null),
12646
+ h("sqm-share-link", null)),
12647
+ h("sqm-portal-container", { gap: "x-small" },
12648
+ h("sqm-share-button", { medium: "email" }, "Share via email"),
12649
+ h("sqm-share-button", { medium: "facebook" }, "Share on Facebook"),
12650
+ h("sqm-share-button", { medium: "twitter" }, "Post about us on X"),
12651
+ h("sqm-portal-container", { gap: "x-small" },
12652
+ h("span", { style: { textAlign: "center", color: "var(--sl-color-gray-500)" } }, "You have copied this code before"),
12653
+ h("sqm-pagination", null)))));
12654
+ };
12626
12655
  const timeline = (slot, count) => {
12627
12656
  return (h("sqm-timeline", { slot: slot, icon: "circle" },
12628
12657
  count > 0 && (h("sqm-timeline-entry", { reward: "75", unit: "points", desc: "Your friends signs up for a free trial" })),
@@ -12645,6 +12674,11 @@ const TimelineAndShareButtons = () => {
12645
12674
  timeline("left", 3),
12646
12675
  sharebutton("right")));
12647
12676
  };
12677
+ const OneTimeUsePromoCodes = () => {
12678
+ return (h("sqm-referral-card", null,
12679
+ timeline("left", 4),
12680
+ shareButtonsWithPromoCodes("right")));
12681
+ };
12648
12682
  const StartAlignment = () => {
12649
12683
  return (h("sqm-referral-card", { "vertical-alignment": "start" },
12650
12684
  timeline("left", 4),
@@ -12721,6 +12755,7 @@ const ReferralCard = /*#__PURE__*/Object.freeze({
12721
12755
  ImageAndShareButtons: ImageAndShareButtons,
12722
12756
  LimitWidth: LimitWidth,
12723
12757
  TimelineAndShareButtons: TimelineAndShareButtons,
12758
+ OneTimeUsePromoCodes: OneTimeUsePromoCodes,
12724
12759
  StartAlignment: StartAlignment,
12725
12760
  CenterAlignment: CenterAlignment,
12726
12761
  EndAlignment: EndAlignment,
@@ -13822,6 +13857,82 @@ const ShareCode$1 = /*#__PURE__*/Object.freeze({
13822
13857
  Error: Error$7
13823
13858
  });
13824
13859
 
13860
+ const scenario$A = "@author:sam\n@owner:sam\nFeature: Referral Code\n\n The referral code component is a box that allows users to see and copy their referral promo code for a given program\n\n Background: Environment\n Given there is a valid program ID in the environment\n And there is a valid user ID and account ID in the environment\n\n @motivating\n Scenario: A Users referral code can be copied to their clipboard\n Given tooltiptext is \"hello tooltip\"\n When the component renders\n Then there is a textbox with the user's referral code\n When the clipboard icon is clicked\n Then the code is copied to clipboard\n And a tooltip will appear for ~1 second\n\n @minutia\n Scenario: Tooltip lifespan defaults to 2000\n Given the tooltip's lifespan is set to 2000\n And there is tooltip text\n When the component renders\n And the clipboard icon is clicked\n Then a tooltip will appear for ~2 seconds\n\n @minutia\n Scenario: Demo\n Given isDemo() returns true\n Then the share code is \"SHARECODE001\"\n And the component won't be interactive\n And the tooltip is hidden\n\n @minutia\n Scenario: Program ID can be sourced from prop\n Given the programId prop is set to \"program-a\"\n And window.widgetIdent.programId is set to \"program-b\"\n When the component renders\n Then the share code is for \"program-a\"\n\n @minutia\n Scenario: Program ID can be sourced from window\n Given the programId prop is unset\n And window.widgetIdent.programId is set to \"program-b\"\n When the component renders\n Then the share code is for \"program-b\"\n\n @minutia\n Scenario: An analytic event is fired when a user copies their code\n Given a user viewing the referral code component\n And the component is rendered for \"program-a\"\n When they click to copy their code\n Then an \"USER_REFERRAL_PROGRAM_ENGAGEMENT_EVENT\" analytic event is fired\n And it is for \"program-a\"\n And it has share medium \"DIRECT\"\n\n\n @ui\n Scenario Outline: user can edit the alignment of the share code text\n Given a user is editing the referral code component\n Then they see \"Align text\" props\n And the default value is \"left\"\n When they change the option to <option>\n Then they see the text in <position>\n Examples:\n | option | position |\n | left | left |\n | center | center |\n | right | right |\n\n @ui\n Scenario Outline: The position of the copy button can be changed\n Given a user is editing the referral code component\n Then they see \"Style\" props\n And the default value is \"icon\"\n When they change the option to <option>\n Then they see the copy button in <position>\n Examples:\n | option | position |\n | button outside | outside the input, on the right |\n | button below | outside the input, below |\n | icon | inside the input as an icon |\n";
13861
+
13862
+ const ReferralCode_stories = {
13863
+ title: "Components/Referral Code",
13864
+ parameters: {
13865
+ scenario: scenario$A,
13866
+ },
13867
+ };
13868
+ const ReferralCode = () => {
13869
+ return (h("sqm-referral-code", { tooltiptext: "Copied to Clipboard" }));
13870
+ };
13871
+ const ShowNotificationText = () => {
13872
+ return (h("sqm-referral-code", { showNotificationText: true, notificationText: "You've copied this code before" }));
13873
+ };
13874
+ const ShowNotificationTextWithButton = () => {
13875
+ return (h("sqm-referral-code", { showNotificationText: true, notificationText: "You've copied this code before", buttonStyle: "button-outside" }));
13876
+ };
13877
+ const ShowNotificationTextWithButtonBelow = () => {
13878
+ return (h("sqm-referral-code", { showNotificationText: true, notificationText: "You've copied this code before", buttonStyle: "button-below" }));
13879
+ };
13880
+ const CustomTooltipText$1 = () => {
13881
+ return (h("sqm-referral-code", { tooltiptext: "CUSTOM TOOLTIP TEXT" }));
13882
+ };
13883
+ const TextAlignCenter$2 = () => {
13884
+ return h("sqm-referral-code", { textAlign: "center" });
13885
+ };
13886
+ const TextAlignRight$2 = () => {
13887
+ return h("sqm-referral-code", { textAlign: "right" });
13888
+ };
13889
+ const CustomTooltipDuration$1 = () => {
13890
+ return (h("sqm-referral-code", { tooltiplifespan: 5000, tooltiptext: "CUSTOM TOOLTIP TEXT" }));
13891
+ };
13892
+ const CopyButton$2 = () => {
13893
+ return (h(CopyTextView, Object.assign({}, {
13894
+ copyString: "https://noah.example.com",
13895
+ open: false,
13896
+ tooltiptext: "Copied!",
13897
+ isCopyIcon: false,
13898
+ buttonStyle: "button-outside",
13899
+ })));
13900
+ };
13901
+ const CopyButtonBelow$2 = () => {
13902
+ return (h(CopyTextView, Object.assign({}, {
13903
+ copyString: "https://noah.example.com",
13904
+ open: false,
13905
+ tooltiptext: "Copied!",
13906
+ buttonStyle: "button-below",
13907
+ })));
13908
+ };
13909
+ const Error$8 = () => {
13910
+ const props = {
13911
+ copyString: "https://noah.example.com",
13912
+ disabled: true,
13913
+ open: true,
13914
+ tooltiptext: "Copied!",
13915
+ error: true,
13916
+ };
13917
+ return h(CopyTextView, Object.assign({}, props));
13918
+ };
13919
+
13920
+ const ReferralCode$1 = /*#__PURE__*/Object.freeze({
13921
+ __proto__: null,
13922
+ 'default': ReferralCode_stories,
13923
+ ReferralCode: ReferralCode,
13924
+ ShowNotificationText: ShowNotificationText,
13925
+ ShowNotificationTextWithButton: ShowNotificationTextWithButton,
13926
+ ShowNotificationTextWithButtonBelow: ShowNotificationTextWithButtonBelow,
13927
+ CustomTooltipText: CustomTooltipText$1,
13928
+ TextAlignCenter: TextAlignCenter$2,
13929
+ TextAlignRight: TextAlignRight$2,
13930
+ CustomTooltipDuration: CustomTooltipDuration$1,
13931
+ CopyButton: CopyButton$2,
13932
+ CopyButtonBelow: CopyButtonBelow$2,
13933
+ Error: Error$8
13934
+ });
13935
+
13825
13936
  // import scenario from "./ShareCode.feature";
13826
13937
  const EmailRegistration_stories = {
13827
13938
  title: "Components/Email Registration",
@@ -13848,7 +13959,7 @@ const defaultProps$d = {
13848
13959
  fraudErrorMessageTitle: "Looks like you tried referring yourself",
13849
13960
  },
13850
13961
  };
13851
- const Default$e = () => h(EmailRegistrationView, Object.assign({}, defaultProps$d));
13962
+ const Default$f = () => h(EmailRegistrationView, Object.assign({}, defaultProps$d));
13852
13963
  const HasFirstNameLastName = () => (h(EmailRegistrationView, Object.assign({}, {
13853
13964
  ...defaultProps$d,
13854
13965
  content: {
@@ -13885,7 +13996,7 @@ const Loading$4 = () => (h(EmailRegistrationView, Object.assign({}, {
13885
13996
  loading: true,
13886
13997
  },
13887
13998
  })));
13888
- const Error$8 = () => (h(EmailRegistrationView, Object.assign({}, {
13999
+ const Error$9 = () => (h(EmailRegistrationView, Object.assign({}, {
13889
14000
  ...defaultProps$d,
13890
14001
  states: {
13891
14002
  error: "Something went wrong. Please try again.",
@@ -13913,23 +14024,23 @@ const EmptyEmailError = () => (h(EmailRegistrationView, Object.assign({}, {
13913
14024
  const EmailRegistration = /*#__PURE__*/Object.freeze({
13914
14025
  __proto__: null,
13915
14026
  'default': EmailRegistration_stories,
13916
- Default: Default$e,
14027
+ Default: Default$f,
13917
14028
  HasFirstNameLastName: HasFirstNameLastName,
13918
14029
  WithSlots: WithSlots,
13919
14030
  NoBorder: NoBorder$1,
13920
14031
  BackgroundColor: BackgroundColor$2,
13921
14032
  Loading: Loading$4,
13922
- Error: Error$8,
14033
+ Error: Error$9,
13923
14034
  FraudError: FraudError,
13924
14035
  EmptyEmailError: EmptyEmailError
13925
14036
  });
13926
14037
 
13927
- const scenario$A = "@author:truman\n@owner:truman\nFeature: Coupon Code\n\n The coupon code component is a box that allows users to see and copy their coupon code for a given program\n\n @motivating\n Scenario: Component only fetches codes from current program\n Given a user has multiple rewards from various programs\n When the component is loaded\n Then it fetches the user's rewards from only the program associated with the widget\n\n @motivating\n Scenario: Component only looks at fueltank rewards\n Given a user has multiple rewards of different types\n When the component is loaded\n Then it filters the user's reward to only return FUELTANK rewards\n\n\n @motivating\n Scenario: The first (i.e. most recently received) reward is the reward that is displayed\n Given a user has at least one fueltank reward\n And the fueltank reward is available\n Then the coupon code component shows the first reward returned\n And this reward is the most recently received reward by the user\n\n @motivating\n Scenario Outline: Coupon code has multiple states depending on reward status\n Given a user has at least one fueltank reward\n And the reward has most recent status <status>\n And the dateScheduledFor field is <dateScheduledFor>\n Then the component's status is set to <componentStatus>\n And the <errorMessageTextProp> is displayed under the input field\n\n Examples:\n | status | dateScheduledFor | componentStatus | errorMessageTextProp |\n | AVAILABLE | null | AVAILABLE | N/A |\n | EXPIRED | null | EXPIRED | expiredErrorMessage |\n | REDEEMED | null | REDEEMED | redeemedMessage |\n | CANCELLED | null | CANCELLED | cancelledErrorMessage |\n | PENDING | null | EMPTY_TANK | fullfillmentErrorMessage |\n | PENDING | 123412341234 | PENDING | pendingErrorMessage |\n | null | null | ERROR | genericErrorMessage |\n\n Scenario Outline: Coupon code's error message text props are grouped\n Given an end user is viewing the coupon code component in the widget editor\n And they are looking at the component's properties\n Then they see <prop>\n And <prop> is grouped under \"Coupon code error\"\n Examples:\n | prop |\n | N/A |\n | expiredErrorMessage |\n | redeemedMessage |\n | cancelledErrorMessage |\n | fullfillmentErrorMessage |\n | pendingErrorMessage |\n | genericErrorMessage |\n\n @minutia\n Scenario: Tooltip lifespan defaults to 2000\n Given the tooltip's lifespan is set to 2000\n And there is tooltip text\n When the component renders\n And the clipboard icon is clicked\n Then a tooltip appears for ~2 seconds\n\n @ui\n Scenario: Component shows an error state when there is an error\n Given a user is viewing the coupon code component\n When there is an error in the coupon code\n Then in place of the coupon code is an alert banner\n And the alert banner gives information about the error to the user\n\n @ui\n Scenario: Component shows an loading state\n Given a user is viewing the coupon code component\n When the coupon code is loading in\n Then the text inside the input is \"Loading...\"\n And the coupon code input box has a gray background\n And the cursor is set to \"default\"\n And the user cannot copy the text\n\n @ui\n Scenario Outline: User can edit the alignment of the coupon code text\n Given a user is editing the coupon code component\n Then they see \"Align text\" props\n And the default value is \"left\"\n When they change the option to <option>\n Then they see the text in <position>\n Examples:\n | option | position |\n | left | left |\n | center | center |\n | right | right |\n\n @ui\n Scenario Outline: The position of the copy button can be changed\n Given a user is editing the coupon code component\n Then they see \"Style\" props\n And the default value is \"icon\"\n When they change the option to <option>\n Then they see the copy button in <position>\n Examples:\n | option | position |\n | button outside | outside the input, on the right |\n | button below | outside the input, below |\n | icon | inside the input as an icon |\n\n @minutia\n Scenario: ICU string converts to a date\n Given a user is viewing a live coupon code code component\n And the \"pendingErrorText\" has the \"{unpendDate}\" ICU string\n And the program is configured for rewards to be pending\n Then the user will see an info alert banner\n And the ICU string is converted to the unpend date\n";
14038
+ const scenario$B = "@author:truman\n@owner:truman\nFeature: Coupon Code\n\n The coupon code component is a box that allows users to see and copy their coupon code for a given program\n\n @motivating\n Scenario: Component only fetches codes from current program\n Given a user has multiple rewards from various programs\n When the component is loaded\n Then it fetches the user's rewards from only the program associated with the widget\n\n @motivating\n Scenario: Component only looks at fueltank rewards\n Given a user has multiple rewards of different types\n When the component is loaded\n Then it filters the user's reward to only return FUELTANK rewards\n\n\n @motivating\n Scenario: The first (i.e. most recently received) reward is the reward that is displayed\n Given a user has at least one fueltank reward\n And the fueltank reward is available\n Then the coupon code component shows the first reward returned\n And this reward is the most recently received reward by the user\n\n @motivating\n Scenario Outline: Coupon code has multiple states depending on reward status\n Given a user has at least one fueltank reward\n And the reward has most recent status <status>\n And the dateScheduledFor field is <dateScheduledFor>\n Then the component's status is set to <componentStatus>\n And the <errorMessageTextProp> is displayed under the input field\n\n Examples:\n | status | dateScheduledFor | componentStatus | errorMessageTextProp |\n | AVAILABLE | null | AVAILABLE | N/A |\n | EXPIRED | null | EXPIRED | expiredErrorMessage |\n | REDEEMED | null | REDEEMED | redeemedMessage |\n | CANCELLED | null | CANCELLED | cancelledErrorMessage |\n | PENDING | null | EMPTY_TANK | fullfillmentErrorMessage |\n | PENDING | 123412341234 | PENDING | pendingErrorMessage |\n | null | null | ERROR | genericErrorMessage |\n\n Scenario Outline: Coupon code's error message text props are grouped\n Given an end user is viewing the coupon code component in the widget editor\n And they are looking at the component's properties\n Then they see <prop>\n And <prop> is grouped under \"Coupon code error\"\n Examples:\n | prop |\n | N/A |\n | expiredErrorMessage |\n | redeemedMessage |\n | cancelledErrorMessage |\n | fullfillmentErrorMessage |\n | pendingErrorMessage |\n | genericErrorMessage |\n\n @minutia\n Scenario: Tooltip lifespan defaults to 2000\n Given the tooltip's lifespan is set to 2000\n And there is tooltip text\n When the component renders\n And the clipboard icon is clicked\n Then a tooltip appears for ~2 seconds\n\n @ui\n Scenario: Component shows an error state when there is an error\n Given a user is viewing the coupon code component\n When there is an error in the coupon code\n Then in place of the coupon code is an alert banner\n And the alert banner gives information about the error to the user\n\n @ui\n Scenario: Component shows an loading state\n Given a user is viewing the coupon code component\n When the coupon code is loading in\n Then the text inside the input is \"Loading...\"\n And the coupon code input box has a gray background\n And the cursor is set to \"default\"\n And the user cannot copy the text\n\n @ui\n Scenario Outline: User can edit the alignment of the coupon code text\n Given a user is editing the coupon code component\n Then they see \"Align text\" props\n And the default value is \"left\"\n When they change the option to <option>\n Then they see the text in <position>\n Examples:\n | option | position |\n | left | left |\n | center | center |\n | right | right |\n\n @ui\n Scenario Outline: The position of the copy button can be changed\n Given a user is editing the coupon code component\n Then they see \"Style\" props\n And the default value is \"icon\"\n When they change the option to <option>\n Then they see the copy button in <position>\n Examples:\n | option | position |\n | button outside | outside the input, on the right |\n | button below | outside the input, below |\n | icon | inside the input as an icon |\n\n @minutia\n Scenario: ICU string converts to a date\n Given a user is viewing a live coupon code code component\n And the \"pendingErrorText\" has the \"{unpendDate}\" ICU string\n And the program is configured for rewards to be pending\n Then the user will see an info alert banner\n And the ICU string is converted to the unpend date\n";
13928
14039
 
13929
14040
  const CouponCode_stories = {
13930
14041
  title: "Components/Coupon Code",
13931
14042
  parameters: {
13932
- scenario: scenario$A,
14043
+ scenario: scenario$B,
13933
14044
  },
13934
14045
  };
13935
14046
  const defaultProps$e = {
@@ -13944,25 +14055,25 @@ const defaultProps$e = {
13944
14055
  const CouponCode = () => {
13945
14056
  return h("sqm-coupon-code", { tooltiptext: "Copied to Clipboard" });
13946
14057
  };
13947
- const CustomTooltipText$1 = () => {
14058
+ const CustomTooltipText$2 = () => {
13948
14059
  return h("sqm-coupon-code", { tooltiptext: "CUSTOM TOOLTIP TEXT" });
13949
14060
  };
13950
- const CustomTooltipDuration$1 = () => {
14061
+ const CustomTooltipDuration$2 = () => {
13951
14062
  return (h("sqm-coupon-code", { tooltiplifespan: 5000, tooltiptext: "CUSTOM TOOLTIP TEXT" }));
13952
14063
  };
13953
- const TextAlignCenter$2 = () => {
14064
+ const TextAlignCenter$3 = () => {
13954
14065
  return h("sqm-coupon-code", { textAlign: "center" });
13955
14066
  };
13956
- const TextAlignRight$2 = () => {
14067
+ const TextAlignRight$3 = () => {
13957
14068
  return h("sqm-coupon-code", { textAlign: "right" });
13958
14069
  };
13959
- const CopyButton$2 = () => {
14070
+ const CopyButton$3 = () => {
13960
14071
  return (h("sqm-coupon-code", Object.assign({}, defaultProps$e, { buttonStyle: "button-outside" })));
13961
14072
  };
13962
14073
  const CopyButtonCustomLabel = () => {
13963
14074
  return (h("sqm-coupon-code", Object.assign({}, defaultProps$e, { buttonStyle: "button-outside", "copy-button-label": "test long custom label" })));
13964
14075
  };
13965
- const CopyButtonBelow$2 = () => {
14076
+ const CopyButtonBelow$3 = () => {
13966
14077
  return (h("sqm-coupon-code", Object.assign({}, defaultProps$e, { buttonStyle: "button-below" })));
13967
14078
  };
13968
14079
  const CopyButtonBelowCustomLabel = () => {
@@ -14000,13 +14111,13 @@ const CouponCode$1 = /*#__PURE__*/Object.freeze({
14000
14111
  __proto__: null,
14001
14112
  'default': CouponCode_stories,
14002
14113
  CouponCode: CouponCode,
14003
- CustomTooltipText: CustomTooltipText$1,
14004
- CustomTooltipDuration: CustomTooltipDuration$1,
14005
- TextAlignCenter: TextAlignCenter$2,
14006
- TextAlignRight: TextAlignRight$2,
14007
- CopyButton: CopyButton$2,
14114
+ CustomTooltipText: CustomTooltipText$2,
14115
+ CustomTooltipDuration: CustomTooltipDuration$2,
14116
+ TextAlignCenter: TextAlignCenter$3,
14117
+ TextAlignRight: TextAlignRight$3,
14118
+ CopyButton: CopyButton$3,
14008
14119
  CopyButtonCustomLabel: CopyButtonCustomLabel,
14009
- CopyButtonBelow: CopyButtonBelow$2,
14120
+ CopyButtonBelow: CopyButtonBelow$3,
14010
14121
  CopyButtonBelowCustomLabel: CopyButtonBelowCustomLabel,
14011
14122
  Loading: Loading$5,
14012
14123
  CopyButtonLoading: CopyButtonLoading,
@@ -14019,12 +14130,12 @@ const CouponCode$1 = /*#__PURE__*/Object.freeze({
14019
14130
  ErrorRedeemed: ErrorRedeemed
14020
14131
  });
14021
14132
 
14022
- const scenario$B = "@author:noah\n@owner:noah\n\nFeature: Logout Current User\n\n Background:\n Given a user viewing an instant access widget\n\n @motivating\n @ui\n Scenario: A user on an instant access widget\n Given the user is identified\n And the user is logged in\n Then the component identifies the user by displaying their email in an ICU string\n And the users email displayed in the ICU string using hte \"{email}\" variable\n\n @motivating\n @ui\n Scenario: Users can switch who they are identified as through a link\n Given the user is identified\n And the user is logged in\n When the user clicks the link in the component\n Then the saved user identity is emptied\n And they are sent back to the registration form to re-identify themselves\n\n @minutia\n Scenario: Logout link empties the saved User Identity\n Given a valid user identity\n And the user is viewing the \"logged-in\" template\n When they click the logout link\n Then the user identity is set to \"undefined\"\n And the user is returned to the \"logged-out\" template";
14133
+ const scenario$C = "@author:noah\n@owner:noah\n\nFeature: Logout Current User\n\n Background:\n Given a user viewing an instant access widget\n\n @motivating\n @ui\n Scenario: A user on an instant access widget\n Given the user is identified\n And the user is logged in\n Then the component identifies the user by displaying their email in an ICU string\n And the users email displayed in the ICU string using hte \"{email}\" variable\n\n @motivating\n @ui\n Scenario: Users can switch who they are identified as through a link\n Given the user is identified\n And the user is logged in\n When the user clicks the link in the component\n Then the saved user identity is emptied\n And they are sent back to the registration form to re-identify themselves\n\n @minutia\n Scenario: Logout link empties the saved User Identity\n Given a valid user identity\n And the user is viewing the \"logged-in\" template\n When they click the logout link\n Then the user identity is set to \"undefined\"\n And the user is returned to the \"logged-out\" template";
14023
14134
 
14024
14135
  const LogoutCurrentUser_stories = {
14025
14136
  title: "Components/Logout Current User",
14026
14137
  parameters: {
14027
- scenario: scenario$B,
14138
+ scenario: scenario$C,
14028
14139
  },
14029
14140
  };
14030
14141
  const defaultProps$f = {
@@ -14034,22 +14145,22 @@ const defaultProps$f = {
14034
14145
  loading: false,
14035
14146
  emailErrorText: "Error fetching email",
14036
14147
  };
14037
- const Default$f = () => {
14148
+ const Default$g = () => {
14038
14149
  return h(LogoutCurrentUserView, Object.assign({}, defaultProps$f));
14039
14150
  };
14040
14151
 
14041
14152
  const LogoutCurrentUser = /*#__PURE__*/Object.freeze({
14042
14153
  __proto__: null,
14043
14154
  'default': LogoutCurrentUser_stories,
14044
- Default: Default$f
14155
+ Default: Default$g
14045
14156
  });
14046
14157
 
14047
- const scenario$C = "@author:noah\n@owner:noah\n\nFeature: Link Button\n\n\t@ui\n\tScenario: Links can be opened in the same tab\n\t\tWhen a user clicks the button\n\t\tThen a link opens in the same tab\n\t\tAnd if the component is in an iFrame then the link is opened in the parent window not the iFrame\n\n\t@ui\n\tScenario: Links can be opened in a new tab\n\t\tWhen a user clicks the button\n\t\tThen a link opens in a new tab\n\t\tAnd if the component is in an iFrame then the link is still opened in a new tab\n\n\n\t@ui\n\tScenario: Props control the link and button text\n\t\tGiven the \"link\" prop is set to \"https://www.example.com\"\n\t\tAnd the \"buttonText\" prop is set to \"Click me!\"\n\t\tThen a button is shown with the text \"Click me!\"\n\t\tAnd when clicked the button opens https://www.example.com\n\n\t@ui\n\tScenario Outline: The button type can be set\n\t\tGiven the button type is set to <value>\n\t\tThen a <buttonType> is shown\n\t\tExamples:\n\t\t\t| value | buttonType |\n\t\t\t| <null> | primary |\n\t\t\t| default | default |\n\t\t\t| primary | primary |\n\t\t\t| success | success |\n\t\t\t| neutral | neutral |\n\t\t\t| warning | warning |\n\t\t\t| danger | danger |";
14158
+ const scenario$D = "@author:noah\n@owner:noah\n\nFeature: Link Button\n\n\t@ui\n\tScenario: Links can be opened in the same tab\n\t\tWhen a user clicks the button\n\t\tThen a link opens in the same tab\n\t\tAnd if the component is in an iFrame then the link is opened in the parent window not the iFrame\n\n\t@ui\n\tScenario: Links can be opened in a new tab\n\t\tWhen a user clicks the button\n\t\tThen a link opens in a new tab\n\t\tAnd if the component is in an iFrame then the link is still opened in a new tab\n\n\n\t@ui\n\tScenario: Props control the link and button text\n\t\tGiven the \"link\" prop is set to \"https://www.example.com\"\n\t\tAnd the \"buttonText\" prop is set to \"Click me!\"\n\t\tThen a button is shown with the text \"Click me!\"\n\t\tAnd when clicked the button opens https://www.example.com\n\n\t@ui\n\tScenario Outline: The button type can be set\n\t\tGiven the button type is set to <value>\n\t\tThen a <buttonType> is shown\n\t\tExamples:\n\t\t\t| value | buttonType |\n\t\t\t| <null> | primary |\n\t\t\t| default | default |\n\t\t\t| primary | primary |\n\t\t\t| success | success |\n\t\t\t| neutral | neutral |\n\t\t\t| warning | warning |\n\t\t\t| danger | danger |";
14048
14159
 
14049
14160
  const LinkButton_stories = {
14050
14161
  title: "Components/Link Button",
14051
14162
  parameters: {
14052
- scenario: scenario$C,
14163
+ scenario: scenario$D,
14053
14164
  },
14054
14165
  };
14055
14166
  const defaultProps$g = {
@@ -14057,7 +14168,7 @@ const defaultProps$g = {
14057
14168
  openInNewTab: false,
14058
14169
  buttonText: "Button Text",
14059
14170
  };
14060
- const Default$g = () => {
14171
+ const Default$h = () => {
14061
14172
  return h("sqm-link-button", Object.assign({}, defaultProps$g));
14062
14173
  };
14063
14174
  const OpenInNewTab = () => {
@@ -14067,7 +14178,7 @@ const OpenInNewTab = () => {
14067
14178
  const LinkButton = /*#__PURE__*/Object.freeze({
14068
14179
  __proto__: null,
14069
14180
  'default': LinkButton_stories,
14070
- Default: Default$g,
14181
+ Default: Default$h,
14071
14182
  OpenInNewTab: OpenInNewTab
14072
14183
  });
14073
14184
 
@@ -14085,7 +14196,7 @@ const containerStyles = {
14085
14196
  border: "1px solid black",
14086
14197
  padding: "25px",
14087
14198
  };
14088
- const Default$h = () => {
14199
+ const Default$i = () => {
14089
14200
  return h(CloseButtonView, Object.assign({}, defaultProps$h));
14090
14201
  };
14091
14202
  const InAContainer = () => {
@@ -14100,7 +14211,7 @@ const CustomColor$1 = () => {
14100
14211
  const CloseButton = /*#__PURE__*/Object.freeze({
14101
14212
  __proto__: null,
14102
14213
  'default': CloseButton_stories,
14103
- Default: Default$h,
14214
+ Default: Default$i,
14104
14215
  InAContainer: InAContainer,
14105
14216
  CustomColor: CustomColor$1
14106
14217
  });
@@ -14338,7 +14449,7 @@ const Loading$6 = () => {
14338
14449
  },
14339
14450
  } }));
14340
14451
  };
14341
- const Error$9 = () => {
14452
+ const Error$a = () => {
14342
14453
  return (h("sqm-payout-details-card", { demoData: {
14343
14454
  states: {
14344
14455
  error: true,
@@ -14379,7 +14490,7 @@ const PayoutDetailsCard = /*#__PURE__*/Object.freeze({
14379
14490
  __proto__: null,
14380
14491
  'default': PayoutDetailsCard_stories,
14381
14492
  Loading: Loading$6,
14382
- Error: Error$9,
14493
+ Error: Error$a,
14383
14494
  NextPayout: NextPayout,
14384
14495
  PayoutToday: PayoutToday,
14385
14496
  ThresholdPayout: ThresholdPayout,
@@ -14989,6 +15100,49 @@ const UseInvoiceTableCells = /*#__PURE__*/Object.freeze({
14989
15100
  InvoiceTableDemoHook: InvoiceTableDemoHook
14990
15101
  });
14991
15102
 
15103
+ const scenario$E = "@author: sam\n@owner: sam\n\nFeature: Referral Codes Component\n\n A paginated display of available and used promo codes for the user to share with others\n\n @motivating\n Scenario: Promo code can be shared using various share mediums\n Given an authenticated user\n And the program has promo codes configured\n When the promo code section is loaded\n Then the promo code can be copied directly\n And the promo code can be shared using <shareMedium>\n\n Examples:\n | shareMedium |\n | DIRECT |\n | EMAIL |\n | FBMESSENGER |\n | WHATSAPP |\n\n @minutia\n Scenario: User is notified if the currently viewed promo code has been used already\n Given an authenticated user\n And the program has promo codes configured\n When the promo code section is loaded\n And the code has not been used already\n Then no notification text is displayed\n When the code is changed to one that has been used\n Then the notification text is displayed\n\n @minutia\n Scenario Outline: Share mediums can be optionally displayed\n Given an authenticated user\n And the program has promo codes configured\n And <propName> is true\n Then the <shareMedium> is hidden\n Examples:\n | propName | shareMedium |\n | hideSharelink | DIRECT |\n | hideEmail | EMAIL |\n | hideFbMessenger | FBMESSENGER |\n | hideWhatsApp | WHATSAPP |\n\n @minutia\n Scenario Outline: Number of codes is displayed in the pagination component\n Given an authenticated user\n And the program has promo codes configured\n When the promo code section is loaded\n And the user has <numCodes> available\n And the user is on <currentPage>\n Then the pagination text is <paginationText>\n Examples:\n | numCodes | currentPage | paginationText |\n | 5 | 1 | 1 of 5 |\n | 5 | 2 | 2 of 5 |\n | 5 | 3 | 3 of 5 |\n | 5 | 4 | 4 of 5 |\n | 5 | 5 | 5 of 5 |\n | 1 | 1 | 1 of 1 |\n | 0 | 0 | 0 of 0 |\n\n";
15104
+
15105
+ const ReferralCodes_stories = {
15106
+ title: "Components/Referral Codes",
15107
+ parameters: {
15108
+ scenario: scenario$E,
15109
+ },
15110
+ };
15111
+ const pagination = (slot) => {
15112
+ return h("sqm-pagination", { slot: slot });
15113
+ };
15114
+ const shareButtons = (slot) => {
15115
+ return (h("sqm-portal-container", { gap: "small", slot: slot },
15116
+ h("sqm-share-button", { medium: "email" }, "Share via email"),
15117
+ h("sqm-share-button", { medium: "facebook" }, "Share on Facebook"),
15118
+ h("sqm-share-button", { medium: "whatsapp" }, "Share on WhatsApp")));
15119
+ };
15120
+ const shareCodes = (slot) => {
15121
+ return h("sqm-referral-code", { slot: slot });
15122
+ };
15123
+ const shareCodeWithPreviouslyCopied = (slot) => {
15124
+ return (h("sqm-referral-code", { slot: slot, showNotificationText: true, notificationText: "You\u2019ve copied this before." }));
15125
+ };
15126
+ const ReferralCodes = () => {
15127
+ return (h("sqm-referral-codes", null,
15128
+ pagination("pagination"),
15129
+ shareCodes("shareCodes"),
15130
+ shareButtons("shareButtons")));
15131
+ };
15132
+ const WithPreviouslyCopiedCode = () => {
15133
+ return (h("sqm-referral-codes", null,
15134
+ pagination("pagination"),
15135
+ shareCodeWithPreviouslyCopied("shareCodes"),
15136
+ shareButtons("shareButtons")));
15137
+ };
15138
+
15139
+ const ReferralCodes$1 = /*#__PURE__*/Object.freeze({
15140
+ __proto__: null,
15141
+ 'default': ReferralCodes_stories,
15142
+ ReferralCodes: ReferralCodes,
15143
+ WithPreviouslyCopiedCode: WithPreviouslyCopiedCode
15144
+ });
15145
+
14992
15146
  /**
14993
15147
  *
14994
15148
  * Themes
@@ -15001,7 +15155,7 @@ const UseInvoiceTableCells = /*#__PURE__*/Object.freeze({
15001
15155
  *
15002
15156
  */
15003
15157
  //
15004
- const Default$i = `
15158
+ const Default$j = `
15005
15159
  // No CSS
15006
15160
  `;
15007
15161
  const Orangey = `
@@ -15035,7 +15189,7 @@ const Klip = `
15035
15189
 
15036
15190
  const Themes = /*#__PURE__*/Object.freeze({
15037
15191
  __proto__: null,
15038
- Default: Default$i,
15192
+ Default: Default$j,
15039
15193
  Orangey: Orangey,
15040
15194
  Netflix: Netflix,
15041
15195
  SaaSquatchCorporate: SaaSquatchCorporate,
@@ -17634,6 +17788,7 @@ const stories = [
17634
17788
  InvoiceTableCells,
17635
17789
  UseInvoiceTableCells,
17636
17790
  ShareButton,
17791
+ Pagination,
17637
17792
  ShareLink,
17638
17793
  BigStat,
17639
17794
  Leaderboard,
@@ -17702,6 +17857,8 @@ const stories = [
17702
17857
  Tabs,
17703
17858
  ShareCode$1,
17704
17859
  CouponCode$1,
17860
+ ReferralCode$1,
17861
+ ReferralCodes$1,
17705
17862
  LogoutCurrentUser,
17706
17863
  LinkButton,
17707
17864
  EmailRegistration,