@saasquatch/mint-components 1.4.0-0 → 1.5.0-10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. package/CHANGELOG.md +24 -48
  2. package/dist/cjs/{ShadowViewAddon-e9bacad0.js → ShadowViewAddon-475e00d3.js} +1 -1
  3. package/dist/cjs/{global-0c01d88f.js → global-89f66e76.js} +282 -70
  4. package/dist/cjs/{index.module-2925fe3b.js → index.module-c0bf9df0.js} +3 -1
  5. package/dist/cjs/loader.cjs.js +3 -3
  6. package/dist/cjs/mint-components.cjs.js +3 -3
  7. package/dist/cjs/{re-render-b1ad512d.js → re-render-124b56ee.js} +1 -1
  8. package/dist/cjs/sqm-asset-card.cjs.entry.js +1 -1
  9. package/dist/cjs/sqm-big-stat.cjs.entry.js +2 -2
  10. package/dist/cjs/{sqm-divided-layout_26.cjs.entry.js → sqm-brand_38.cjs.entry.js} +4430 -740
  11. package/dist/cjs/sqm-graphql-client-provider.cjs.entry.js +1 -1
  12. package/dist/cjs/{sqm-leaderboard-rank-view-48245b30.js → sqm-leaderboard-rank-view-510f16d3.js} +2 -2
  13. package/dist/cjs/sqm-leaderboard-rank.cjs.entry.js +3 -3
  14. package/dist/cjs/sqm-leaderboard.cjs.entry.js +2 -2
  15. package/dist/cjs/sqm-name-fields.cjs.entry.js +1 -1
  16. package/dist/cjs/{sqm-navigation-sidebar-item-view-1bad646a.js → sqm-navigation-sidebar-item-view-a2bdcf05.js} +1 -1
  17. package/dist/cjs/sqm-navigation-sidebar-item.cjs.entry.js +2 -2
  18. package/dist/cjs/sqm-popup-container.cjs.entry.js +1 -1
  19. package/dist/cjs/{sqm-portal-email-verification-view-68b16f27.js → sqm-portal-email-verification-view-5093ac20.js} +1 -1
  20. package/dist/cjs/sqm-portal-email-verification.cjs.entry.js +4 -11
  21. package/dist/cjs/{sqm-portal-footer-view-edeeebab.js → sqm-portal-footer-view-03408484.js} +1 -1
  22. package/dist/cjs/sqm-portal-footer.cjs.entry.js +3 -3
  23. package/dist/cjs/sqm-portal-forgot-password.cjs.entry.js +5 -17
  24. package/dist/cjs/sqm-portal-logout.cjs.entry.js +1 -1
  25. package/dist/cjs/{sqm-portal-profile-view-2b48529e.js → sqm-portal-profile-view-fa2db439.js} +1 -1
  26. package/dist/cjs/sqm-portal-profile.cjs.entry.js +3 -3
  27. package/dist/cjs/sqm-portal-protected-route.cjs.entry.js +1 -1
  28. package/dist/cjs/sqm-portal-reset-password.cjs.entry.js +2 -10
  29. package/dist/cjs/sqm-portal-verify-email.cjs.entry.js +3 -11
  30. package/dist/cjs/sqm-program-explainer-step-view-f8e1cd12.js +82 -0
  31. package/dist/cjs/sqm-program-explainer-step.cjs.entry.js +22 -0
  32. package/dist/cjs/sqm-program-explainer-view-512737f3.js +51 -0
  33. package/dist/cjs/sqm-program-explainer.cjs.entry.js +23 -0
  34. package/dist/cjs/sqm-referral-table-column.cjs.entry.js +2 -2
  35. package/dist/cjs/sqm-referral-table-date-column.cjs.entry.js +2 -2
  36. package/dist/cjs/sqm-referral-table-rewards-column.cjs.entry.js +2 -2
  37. package/dist/cjs/sqm-referral-table-status-column.cjs.entry.js +2 -2
  38. package/dist/cjs/sqm-referral-table-user-column.cjs.entry.js +2 -2
  39. package/dist/cjs/sqm-share-code.cjs.entry.js +20 -1
  40. package/dist/cjs/{useDemoBigStat-d7a60992.js → useDemoBigStat-5d71bbdf.js} +119 -22
  41. package/dist/collection/collection-manifest.json +17 -3
  42. package/dist/collection/{stories → components/sqm-asset-card}/AssetCard.stories.js +2 -2
  43. package/dist/collection/{stories → components/sqm-big-stat}/BigStat.stories.js +10 -3
  44. package/dist/collection/{stories → components/sqm-big-stat}/UseBigStat.stories.js +7 -4
  45. package/dist/collection/components/sqm-big-stat/sqm-big-stat.js +1 -21
  46. package/dist/collection/components/sqm-big-stat/useBigStat.js +117 -21
  47. package/dist/collection/components/sqm-big-stat/useDemoBigStat.js +1 -0
  48. package/dist/collection/components/sqm-brand/SqmBrand.stories.js +93 -0
  49. package/dist/collection/components/sqm-brand/sqm-brand.js +97 -0
  50. package/dist/collection/{stories → components/sqm-divided-layout}/DividedLayout.stories.js +4 -4
  51. package/dist/collection/{stories → components/sqm-edit-profile}/EditProfileForm.stories.js +2 -2
  52. package/dist/collection/{stories → components/sqm-edit-profile}/UseEditProfile.stories.js +1 -1
  53. package/dist/collection/{stories → components/sqm-form-message}/FormMessage.stories.js +1 -1
  54. package/dist/collection/{stories → components/sqm-hero}/Hero.stories.js +2 -2
  55. package/dist/collection/{stories → components/sqm-leaderboard}/Leaderboard.stories.js +2 -2
  56. package/dist/collection/{stories → components/sqm-leaderboard}/UseLeaderboard.stories.js +3 -3
  57. package/dist/collection/{stories → components/sqm-leaderboard-rank}/LeaderboardRank.stories.js +2 -2
  58. package/dist/collection/{stories → components/sqm-name-fields}/NameFields.stories.js +2 -2
  59. package/dist/collection/{stories → components/sqm-navigation-sidebar}/NavigationSidebar.stories.js +3 -3
  60. package/dist/collection/{stories → components/sqm-navigation-sidebar-item}/SidebarItem.stories.js +2 -2
  61. package/dist/collection/{stories → components/sqm-password-field}/PasswordField.stories.js +1 -1
  62. package/dist/collection/{stories → components/sqm-portal-change-password}/ChangePassword.stories.js +3 -3
  63. package/dist/collection/{stories → components/sqm-portal-email-verification}/PortalEmailVerification.stories.js +3 -3
  64. package/dist/collection/components/sqm-portal-email-verification/sqm-portal-email-verification.js +0 -27
  65. package/dist/collection/components/sqm-portal-email-verification/usePortalEmailVerification.js +1 -2
  66. package/dist/collection/{stories → components/sqm-portal-footer}/PortalFooter.stories.js +2 -2
  67. package/dist/collection/{stories → components/sqm-portal-forgot-password}/PortalForgotPassword.stories.js +3 -7
  68. package/dist/collection/components/sqm-portal-forgot-password/sqm-portal-forgot-password.js +3 -55
  69. package/dist/collection/components/sqm-portal-forgot-password/usePortalForgotPassword.js +2 -4
  70. package/dist/collection/{stories → components/sqm-portal-frame}/PortalFrame.stories.js +2 -2
  71. package/dist/collection/{stories → components/sqm-portal-login}/PortalLogin.stories.js +2 -8
  72. package/dist/collection/components/sqm-portal-login/sqm-portal-login.js +4 -59
  73. package/dist/collection/components/sqm-portal-login/usePortalLogin.js +2 -4
  74. package/dist/collection/{stories → components/sqm-portal-profile}/PortalProfile.stories.js +2 -2
  75. package/dist/collection/{stories → components/sqm-portal-register}/PortalRegister.stories.js +2 -7
  76. package/dist/collection/components/sqm-portal-register/sqm-portal-register.js +2 -55
  77. package/dist/collection/components/sqm-portal-register/usePortalRegister.js +0 -3
  78. package/dist/collection/{stories → components/sqm-portal-reset-password}/PortalResetPassword.stories.js +3 -3
  79. package/dist/collection/components/sqm-portal-reset-password/sqm-portal-reset-password.js +1 -30
  80. package/dist/collection/components/sqm-portal-reset-password/usePortalResetPassword.js +1 -1
  81. package/dist/collection/{stories → components/sqm-portal-verify-email}/PortalVerifyEmail.stories.js +3 -3
  82. package/dist/collection/components/sqm-portal-verify-email/sqm-portal-verify-email.js +1 -30
  83. package/dist/collection/components/sqm-portal-verify-email/usePortalVerifyEmail.js +2 -2
  84. package/dist/collection/components/sqm-program-explainer/ProgramExplainer.stories.js +51 -0
  85. package/dist/collection/components/sqm-program-explainer/sqm-program-explainer-view.js +47 -0
  86. package/dist/collection/components/sqm-program-explainer/sqm-program-explainer.js +177 -0
  87. package/dist/collection/components/sqm-program-explainer-step/ProgramExplainerStep.stories.js +15 -0
  88. package/dist/collection/components/sqm-program-explainer-step/sqm-program-explainer-step-view.js +78 -0
  89. package/dist/collection/components/sqm-program-explainer-step/sqm-program-explainer-step.js +123 -0
  90. package/dist/collection/{stories → components/sqm-program-menu}/ProgramMenu.stories.js +2 -2
  91. package/dist/collection/{stories → components/sqm-referral-iframe}/ReferralIframe.stories.js +2 -2
  92. package/dist/collection/{stories → components/sqm-referral-table}/ReferralTable.stories.js +3 -2
  93. package/dist/collection/{stories → components/sqm-referral-table}/ReferralTableCell.stories.js +2 -1
  94. package/dist/collection/{stories → components/sqm-referral-table}/ReferralTableRewardsCell.stories.js +2 -1
  95. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-column.js +1 -1
  96. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-date-column.js +1 -1
  97. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-rewards-column.js +1 -1
  98. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-status-column.js +1 -1
  99. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-user-column.js +1 -1
  100. package/dist/collection/components/sqm-referral-table/useReferralTable.js +2 -2
  101. package/dist/collection/components/sqm-reward-exchange-list/RewardExchangeList.stories.js +22 -0
  102. package/dist/collection/components/sqm-reward-exchange-list/RewardExchangeListData.js +259 -0
  103. package/dist/collection/components/sqm-reward-exchange-list/SVGs.js +27 -0
  104. package/dist/collection/components/sqm-reward-exchange-list/UseRewardExchangeList.stories.js +143 -0
  105. package/dist/collection/components/sqm-reward-exchange-list/assets/Reward-icon.png +0 -0
  106. package/dist/collection/components/sqm-reward-exchange-list/assets/placeholder.png +0 -0
  107. package/dist/collection/components/sqm-reward-exchange-list/progressBar.js +64 -0
  108. package/dist/collection/components/sqm-reward-exchange-list/sqm-reward-exchange-list-view.js +509 -0
  109. package/dist/collection/components/sqm-reward-exchange-list/sqm-reward-exchange-list.js +490 -0
  110. package/dist/collection/components/sqm-reward-exchange-list/useRewardExchangeList.js +193 -0
  111. package/dist/collection/components/sqm-rewards-table/UseRewardsTable.stories.js +59 -0
  112. package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-date-cell.js +43 -0
  113. package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-rewards-cell.js +160 -0
  114. package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-source-cell.js +81 -0
  115. package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-status-cell.js +84 -0
  116. package/dist/collection/components/sqm-rewards-table/columns/RewardTableColumn.js +1 -0
  117. package/dist/collection/components/sqm-rewards-table/columns/sqm-rewards-table-date-column.js +130 -0
  118. package/dist/collection/components/sqm-rewards-table/columns/sqm-rewards-table-reward-column.js +118 -0
  119. package/dist/collection/components/sqm-rewards-table/columns/sqm-rewards-table-source-column.js +145 -0
  120. package/dist/collection/components/sqm-rewards-table/columns/sqm-rewards-table-status-column.js +117 -0
  121. package/dist/collection/components/sqm-rewards-table/sqm-rewards-table.js +222 -0
  122. package/dist/collection/components/sqm-rewards-table/useRewardsTable.js +215 -0
  123. package/dist/collection/{stories → components/sqm-router}/Router.stories.js +1 -1
  124. package/dist/collection/{stories → components/sqm-share-button}/ShareButton.stories.js +2 -2
  125. package/dist/collection/{stories → components/sqm-share-button}/UseShareButton.stories.js +2 -2
  126. package/dist/collection/components/sqm-share-code/useShareCode.js +20 -1
  127. package/dist/collection/{stories → components/sqm-share-link}/ShareLink.stories.js +2 -2
  128. package/dist/collection/{stories → components/sqm-share-link}/UseShareLink.stories.js +3 -3
  129. package/dist/collection/components/sqm-share-link/useShareLink.js +20 -1
  130. package/dist/collection/components/sqm-stencilbook/AutoColor.js +49 -0
  131. package/dist/collection/components/sqm-stencilbook/CucumberAddon.js +3 -1
  132. package/dist/collection/components/sqm-stencilbook/Matrix.js +66 -0
  133. package/dist/collection/components/sqm-stencilbook/Resizer.js +26 -0
  134. package/dist/collection/components/sqm-stencilbook/Themes.js +45 -0
  135. package/dist/collection/components/sqm-stencilbook/sqm-stencilbook.js +93 -38
  136. package/dist/collection/components/sqm-task-card/SVGs.js +14 -0
  137. package/dist/collection/components/sqm-task-card/TaskCard.stories.js +424 -0
  138. package/dist/collection/components/sqm-task-card/UseTaskCard.stories.js +41 -0
  139. package/dist/collection/components/sqm-task-card/progress-bar/SVGs.js +8 -0
  140. package/dist/collection/components/sqm-task-card/progress-bar/progress-bar-view.js +370 -0
  141. package/dist/collection/components/sqm-task-card/sqm-task-card-view.js +240 -0
  142. package/dist/collection/components/sqm-task-card/sqm-task-card.js +443 -0
  143. package/dist/collection/{stories → components/sqm-user-name}/UserName.stories.js +3 -3
  144. package/dist/collection/components/sqm-user-name/sqm-user-name.js +1 -1
  145. package/dist/collection/fonts/GoogleFonts.js +12 -0
  146. package/dist/collection/global/styles.js +281 -69
  147. package/dist/collection/global/styles.ts +281 -69
  148. package/dist/collection/stories/NewPortal.stories.js +15 -15
  149. package/dist/collection/tables/GenericTableView.js +51 -0
  150. package/dist/collection/tables/TableSlots.js +30 -0
  151. package/dist/collection/{components/sqm-referral-table → tables}/re-render.js +0 -0
  152. package/dist/collection/{components/sqm-referral-table → tables}/sqm-table-cell.js +0 -0
  153. package/dist/collection/{components/sqm-referral-table → tables}/sqm-table-row.js +0 -0
  154. package/dist/collection/{components/sqm-referral-table → tables}/useChildElements.js +0 -0
  155. package/dist/esm/{ShadowViewAddon-5f66de48.js → ShadowViewAddon-558fabb7.js} +1 -1
  156. package/dist/esm/{global-0fcfbedf.js → global-e0e25c22.js} +282 -70
  157. package/dist/esm/{index.module-1e92a7a3.js → index.module-eb50a8d2.js} +2 -2
  158. package/dist/esm/loader.js +3 -3
  159. package/dist/esm/mint-components.js +3 -3
  160. package/dist/esm/{re-render-b8468637.js → re-render-6d5b856e.js} +1 -1
  161. package/dist/esm/sqm-asset-card.entry.js +1 -1
  162. package/dist/esm/sqm-big-stat.entry.js +2 -2
  163. package/dist/esm/{sqm-divided-layout_26.entry.js → sqm-brand_38.entry.js} +5427 -1749
  164. package/dist/esm/sqm-graphql-client-provider.entry.js +1 -1
  165. package/dist/esm/{sqm-leaderboard-rank-view-fd7d7f42.js → sqm-leaderboard-rank-view-cd1e8962.js} +2 -2
  166. package/dist/esm/sqm-leaderboard-rank.entry.js +3 -3
  167. package/dist/esm/sqm-leaderboard.entry.js +2 -2
  168. package/dist/esm/sqm-name-fields.entry.js +1 -1
  169. package/dist/esm/{sqm-navigation-sidebar-item-view-a48bca9b.js → sqm-navigation-sidebar-item-view-2d8c368c.js} +1 -1
  170. package/dist/esm/sqm-navigation-sidebar-item.entry.js +2 -2
  171. package/dist/esm/sqm-popup-container.entry.js +1 -1
  172. package/dist/esm/{sqm-portal-email-verification-view-6cc56c87.js → sqm-portal-email-verification-view-2af31979.js} +1 -1
  173. package/dist/esm/sqm-portal-email-verification.entry.js +4 -11
  174. package/dist/esm/{sqm-portal-footer-view-8a1128d5.js → sqm-portal-footer-view-60cd9ae5.js} +1 -1
  175. package/dist/esm/sqm-portal-footer.entry.js +3 -3
  176. package/dist/esm/sqm-portal-forgot-password.entry.js +5 -17
  177. package/dist/esm/sqm-portal-logout.entry.js +1 -1
  178. package/dist/esm/{sqm-portal-profile-view-4acf74a5.js → sqm-portal-profile-view-f1deea0f.js} +1 -1
  179. package/dist/esm/sqm-portal-profile.entry.js +3 -3
  180. package/dist/esm/sqm-portal-protected-route.entry.js +1 -1
  181. package/dist/esm/sqm-portal-reset-password.entry.js +2 -10
  182. package/dist/esm/sqm-portal-verify-email.entry.js +3 -11
  183. package/dist/esm/sqm-program-explainer-step-view-987e4747.js +80 -0
  184. package/dist/esm/sqm-program-explainer-step.entry.js +18 -0
  185. package/dist/esm/sqm-program-explainer-view-c0cda03a.js +49 -0
  186. package/dist/esm/sqm-program-explainer.entry.js +19 -0
  187. package/dist/esm/sqm-referral-table-column.entry.js +2 -2
  188. package/dist/esm/sqm-referral-table-date-column.entry.js +2 -2
  189. package/dist/esm/sqm-referral-table-rewards-column.entry.js +2 -2
  190. package/dist/esm/sqm-referral-table-status-column.entry.js +2 -2
  191. package/dist/esm/sqm-referral-table-user-column.entry.js +2 -2
  192. package/dist/esm/sqm-share-code.entry.js +20 -1
  193. package/dist/esm/{useDemoBigStat-5557504e.js → useDemoBigStat-d227b2f9.js} +119 -22
  194. package/dist/esm-es5/{ShadowViewAddon-5f66de48.js → ShadowViewAddon-558fabb7.js} +1 -1
  195. package/dist/esm-es5/{global-0fcfbedf.js → global-e0e25c22.js} +2 -2
  196. package/dist/esm-es5/{index.module-1e92a7a3.js → index.module-eb50a8d2.js} +1 -1
  197. package/dist/esm-es5/loader.js +1 -1
  198. package/dist/esm-es5/mint-components.js +1 -1
  199. package/dist/esm-es5/{re-render-b8468637.js → re-render-6d5b856e.js} +1 -1
  200. package/dist/esm-es5/sqm-asset-card.entry.js +1 -1
  201. package/dist/esm-es5/sqm-big-stat.entry.js +1 -1
  202. package/dist/esm-es5/sqm-brand_38.entry.js +1 -0
  203. package/dist/esm-es5/sqm-graphql-client-provider.entry.js +1 -1
  204. package/dist/esm-es5/{sqm-leaderboard-rank-view-fd7d7f42.js → sqm-leaderboard-rank-view-cd1e8962.js} +1 -1
  205. package/dist/esm-es5/sqm-leaderboard-rank.entry.js +1 -1
  206. package/dist/esm-es5/sqm-leaderboard.entry.js +1 -1
  207. package/dist/esm-es5/sqm-name-fields.entry.js +1 -1
  208. package/dist/esm-es5/{sqm-navigation-sidebar-item-view-a48bca9b.js → sqm-navigation-sidebar-item-view-2d8c368c.js} +1 -1
  209. package/dist/esm-es5/sqm-navigation-sidebar-item.entry.js +1 -1
  210. package/dist/esm-es5/sqm-popup-container.entry.js +1 -1
  211. package/dist/esm-es5/{sqm-portal-email-verification-view-6cc56c87.js → sqm-portal-email-verification-view-2af31979.js} +1 -1
  212. package/dist/esm-es5/sqm-portal-email-verification.entry.js +1 -1
  213. package/dist/esm-es5/{sqm-portal-footer-view-8a1128d5.js → sqm-portal-footer-view-60cd9ae5.js} +1 -1
  214. package/dist/esm-es5/sqm-portal-footer.entry.js +1 -1
  215. package/dist/esm-es5/sqm-portal-forgot-password.entry.js +1 -1
  216. package/dist/esm-es5/sqm-portal-logout.entry.js +1 -1
  217. package/dist/esm-es5/{sqm-portal-profile-view-4acf74a5.js → sqm-portal-profile-view-f1deea0f.js} +1 -1
  218. package/dist/esm-es5/sqm-portal-profile.entry.js +1 -1
  219. package/dist/esm-es5/sqm-portal-protected-route.entry.js +1 -1
  220. package/dist/esm-es5/sqm-portal-reset-password.entry.js +1 -1
  221. package/dist/esm-es5/sqm-portal-verify-email.entry.js +1 -1
  222. package/dist/esm-es5/sqm-program-explainer-step-view-987e4747.js +1 -0
  223. package/dist/esm-es5/sqm-program-explainer-step.entry.js +1 -0
  224. package/dist/esm-es5/sqm-program-explainer-view-c0cda03a.js +1 -0
  225. package/dist/esm-es5/sqm-program-explainer.entry.js +1 -0
  226. package/dist/esm-es5/sqm-referral-table-column.entry.js +1 -1
  227. package/dist/esm-es5/sqm-referral-table-date-column.entry.js +1 -1
  228. package/dist/esm-es5/sqm-referral-table-rewards-column.entry.js +1 -1
  229. package/dist/esm-es5/sqm-referral-table-status-column.entry.js +1 -1
  230. package/dist/esm-es5/sqm-referral-table-user-column.entry.js +1 -1
  231. package/dist/esm-es5/sqm-share-code.entry.js +1 -1
  232. package/dist/esm-es5/useDemoBigStat-d227b2f9.js +1 -0
  233. package/dist/mint-components/assets/Reward-icon.png +0 -0
  234. package/dist/mint-components/assets/placeholder.png +0 -0
  235. package/dist/mint-components/global/styles.ts +281 -69
  236. package/dist/mint-components/mint-components.css +1 -0
  237. package/dist/mint-components/mint-components.esm.js +1 -1
  238. package/dist/mint-components/mint-components.js +1 -1
  239. package/dist/mint-components/{p-3452bdae.system.js → p-02dc36a4.system.js} +1 -1
  240. package/dist/mint-components/{p-3e3dad7a.system.js → p-03e93c82.system.js} +1 -1
  241. package/dist/mint-components/p-0d8b2757.system.entry.js +1 -0
  242. package/dist/mint-components/{p-18aa175f.system.js → p-0e8ae7e3.system.js} +2 -2
  243. package/dist/mint-components/{p-965e34ab.entry.js → p-1705e549.entry.js} +1 -1
  244. package/dist/mint-components/{p-51cfdd14.js → p-1f95b411.js} +1 -1
  245. package/dist/mint-components/{p-9ff0425e.system.entry.js → p-2027edc0.system.entry.js} +1 -1
  246. package/dist/mint-components/p-20c95798.entry.js +1 -0
  247. package/dist/mint-components/{p-e50839df.entry.js → p-21b4044a.entry.js} +1 -1
  248. package/dist/mint-components/{p-d513229d.js → p-221bd06e.js} +1 -1
  249. package/dist/mint-components/p-22e6aad3.entry.js +1 -0
  250. package/dist/mint-components/p-2338162a.entry.js +1 -0
  251. package/dist/mint-components/{p-9ff118a2.system.entry.js → p-24fa8920.system.entry.js} +1 -1
  252. package/dist/mint-components/p-29ee7d11.system.entry.js +1 -0
  253. package/dist/mint-components/p-2b2579e3.js +1 -0
  254. package/dist/mint-components/{p-64759dda.system.js → p-2e63dcfd.system.js} +1 -1
  255. package/dist/mint-components/p-2eadaa18.entry.js +1 -0
  256. package/dist/mint-components/p-2f46c8b1.entry.js +372 -0
  257. package/dist/mint-components/{p-743882c6.entry.js → p-3143cce4.entry.js} +1 -1
  258. package/dist/mint-components/{p-4b6c316d.entry.js → p-34112d74.entry.js} +1 -1
  259. package/dist/mint-components/p-40e83a85.system.js +1 -0
  260. package/dist/mint-components/{p-337a3d6b.system.entry.js → p-46493de5.system.entry.js} +1 -1
  261. package/dist/mint-components/p-4658d225.system.entry.js +1 -0
  262. package/dist/mint-components/{p-7d996b49.js → p-4b719313.js} +1 -1
  263. package/dist/mint-components/{p-6cb81b77.entry.js → p-53e51b3f.entry.js} +1 -1
  264. package/dist/mint-components/p-5684a18d.system.entry.js +1 -0
  265. package/dist/mint-components/p-5939212e.system.entry.js +1 -0
  266. package/dist/mint-components/{p-af2d886e.js → p-5d925bb6.js} +1 -1
  267. package/dist/mint-components/{p-27e23808.system.js → p-5e4e7f01.system.js} +1 -1
  268. package/dist/mint-components/{p-af1f8bd3.js → p-61acba7a.js} +1 -1
  269. package/dist/mint-components/{p-13605359.entry.js → p-65c79eec.entry.js} +1 -1
  270. package/dist/mint-components/{p-d55abc13.entry.js → p-759d3800.entry.js} +2 -2
  271. package/dist/mint-components/p-760762d3.entry.js +13 -0
  272. package/dist/mint-components/p-7cdbe82a.entry.js +1 -0
  273. package/dist/mint-components/{p-9a3a0db5.system.entry.js → p-7ff22998.system.entry.js} +1 -1
  274. package/dist/mint-components/p-85efd952.entry.js +1 -0
  275. package/dist/mint-components/p-86255b95.entry.js +1 -0
  276. package/dist/mint-components/{p-b3880833.system.entry.js → p-88fdfd94.system.entry.js} +1 -1
  277. package/dist/mint-components/p-8c77a66a.system.js +1 -0
  278. package/dist/mint-components/{p-d0cad85c.js → p-8fd8682c.js} +2 -2
  279. package/dist/mint-components/p-900d4192.system.js +1 -0
  280. package/dist/mint-components/{p-70ca623f.system.entry.js → p-97b946c2.system.entry.js} +1 -1
  281. package/dist/mint-components/{p-5fcd8687.entry.js → p-9be0cb19.entry.js} +1 -1
  282. package/dist/mint-components/{p-6156a7ac.system.entry.js → p-a0a26fc5.system.entry.js} +1 -1
  283. package/dist/mint-components/{p-8bfebd45.system.entry.js → p-a355eeaf.system.entry.js} +1 -1
  284. package/dist/mint-components/p-a731e752.js +1 -0
  285. package/dist/mint-components/{p-036c5a7e.system.entry.js → p-a8246a50.system.entry.js} +1 -1
  286. package/dist/mint-components/{p-c47b83c3.entry.js → p-a831de18.entry.js} +1 -1
  287. package/dist/mint-components/{p-6ad110d3.js → p-a833dbb3.js} +1 -1
  288. package/dist/mint-components/p-a88a08bb.system.js +1 -0
  289. package/dist/mint-components/p-a9a6f205.entry.js +1 -0
  290. package/dist/mint-components/{p-624c5352.system.entry.js → p-aee83885.system.entry.js} +1 -1
  291. package/dist/mint-components/p-b86cbac3.system.entry.js +1 -0
  292. package/dist/mint-components/{p-602180a2.system.js → p-be3a0cc4.system.js} +1 -1
  293. package/dist/mint-components/{p-05a2640d.entry.js → p-c0f9d0b1.entry.js} +1 -1
  294. package/dist/mint-components/p-c65cfc9d.system.js +1 -0
  295. package/dist/mint-components/p-c6e6c96c.system.entry.js +1 -0
  296. package/dist/mint-components/{p-991bd182.system.entry.js → p-ca40dbaa.system.entry.js} +1 -1
  297. package/dist/mint-components/p-cc189fc4.system.js +1 -0
  298. package/dist/mint-components/{p-cffc23c0.entry.js → p-cc652a53.entry.js} +1 -1
  299. package/dist/mint-components/p-d19d6012.js +235 -0
  300. package/dist/mint-components/p-d3c7dbfc.entry.js +1 -0
  301. package/dist/mint-components/{p-3772bae2.system.entry.js → p-d4a1bce9.system.entry.js} +1 -1
  302. package/dist/mint-components/p-d653e004.system.entry.js +1 -0
  303. package/dist/mint-components/{p-ced568fc.system.entry.js → p-d68f6b64.system.entry.js} +1 -1
  304. package/dist/mint-components/p-e36ff7fa.entry.js +1 -0
  305. package/dist/mint-components/{p-05a86906.entry.js → p-e608f340.entry.js} +1 -1
  306. package/dist/mint-components/{p-4068e47c.system.entry.js → p-e7cb4274.system.entry.js} +1 -1
  307. package/dist/mint-components/p-ef7f70f2.system.entry.js +1 -0
  308. package/dist/mint-components/{p-f16bae7a.system.entry.js → p-f20d9204.system.entry.js} +1 -1
  309. package/dist/mint-components/{p-c84a5b33.js → p-f7f87338.js} +1 -1
  310. package/dist/mint-components/{p-55210498.system.js → p-f9ada3d7.system.js} +1 -1
  311. package/dist/mint-components/{p-eddcf481.js → p-faf66fdb.js} +1 -1
  312. package/dist/mint-components/{p-6305419f.entry.js → p-fcd03042.entry.js} +1 -1
  313. package/dist/mint-components/{p-09afaaac.system.entry.js → p-fd281e6b.system.entry.js} +1 -1
  314. package/dist/types/{stories → components/sqm-asset-card}/AssetCard.stories.d.ts +0 -0
  315. package/dist/types/{stories → components/sqm-big-stat}/BigStat.stories.d.ts +0 -0
  316. package/dist/types/{stories → components/sqm-big-stat}/UseBigStat.stories.d.ts +6 -0
  317. package/dist/types/components/sqm-big-stat/sqm-big-stat-view.d.ts +1 -0
  318. package/dist/types/components/sqm-big-stat/sqm-big-stat.d.ts +0 -6
  319. package/dist/types/components/sqm-big-stat/useBigStat.d.ts +4 -1
  320. package/dist/types/components/sqm-brand/SqmBrand.stories.d.ts +7 -0
  321. package/dist/types/components/sqm-brand/sqm-brand.d.ts +23 -0
  322. package/dist/types/{stories → components/sqm-divided-layout}/DividedLayout.stories.d.ts +0 -0
  323. package/dist/types/{stories → components/sqm-edit-profile}/EditProfileForm.stories.d.ts +0 -0
  324. package/dist/types/{stories → components/sqm-edit-profile}/UseEditProfile.stories.d.ts +0 -0
  325. package/dist/types/{stories → components/sqm-form-message}/FormMessage.stories.d.ts +0 -0
  326. package/dist/types/{stories → components/sqm-hero}/Hero.stories.d.ts +0 -0
  327. package/dist/types/{stories → components/sqm-leaderboard}/Leaderboard.stories.d.ts +0 -0
  328. package/dist/types/{stories → components/sqm-leaderboard}/UseLeaderboard.stories.d.ts +0 -0
  329. package/dist/types/{stories → components/sqm-leaderboard-rank}/LeaderboardRank.stories.d.ts +0 -0
  330. package/dist/types/{stories → components/sqm-name-fields}/NameFields.stories.d.ts +0 -0
  331. package/dist/types/{stories → components/sqm-navigation-sidebar}/NavigationSidebar.stories.d.ts +0 -0
  332. package/dist/types/{stories → components/sqm-navigation-sidebar-item}/SidebarItem.stories.d.ts +0 -0
  333. package/dist/types/{stories → components/sqm-password-field}/PasswordField.stories.d.ts +0 -0
  334. package/dist/types/{stories → components/sqm-portal-change-password}/ChangePassword.stories.d.ts +0 -0
  335. package/dist/types/{stories → components/sqm-portal-email-verification}/PortalEmailVerification.stories.d.ts +0 -0
  336. package/dist/types/components/sqm-portal-email-verification/sqm-portal-email-verification.d.ts +0 -6
  337. package/dist/types/{stories → components/sqm-portal-footer}/PortalFooter.stories.d.ts +0 -0
  338. package/dist/types/{stories → components/sqm-portal-forgot-password}/PortalForgotPassword.stories.d.ts +0 -0
  339. package/dist/types/components/sqm-portal-forgot-password/sqm-portal-forgot-password-view.d.ts +0 -1
  340. package/dist/types/components/sqm-portal-forgot-password/sqm-portal-forgot-password.d.ts +0 -10
  341. package/dist/types/components/sqm-portal-forgot-password/usePortalForgotPassword.d.ts +1 -3
  342. package/dist/types/{stories → components/sqm-portal-frame}/PortalFrame.stories.d.ts +0 -0
  343. package/dist/types/{stories → components/sqm-portal-login}/PortalLogin.stories.d.ts +0 -0
  344. package/dist/types/components/sqm-portal-login/sqm-portal-login-view.d.ts +0 -2
  345. package/dist/types/components/sqm-portal-login/sqm-portal-login.d.ts +0 -8
  346. package/dist/types/components/sqm-portal-login/usePortalLogin.d.ts +3 -3
  347. package/dist/types/{stories → components/sqm-portal-profile}/PortalProfile.stories.d.ts +0 -0
  348. package/dist/types/{stories → components/sqm-portal-register}/PortalRegister.stories.d.ts +0 -0
  349. package/dist/types/components/sqm-portal-register/sqm-portal-register-view.d.ts +0 -1
  350. package/dist/types/components/sqm-portal-register/sqm-portal-register.d.ts +0 -10
  351. package/dist/types/components/sqm-portal-register/usePortalRegister.d.ts +0 -1
  352. package/dist/types/{stories → components/sqm-portal-reset-password}/PortalResetPassword.stories.d.ts +0 -0
  353. package/dist/types/components/sqm-portal-reset-password/sqm-portal-reset-password.d.ts +0 -8
  354. package/dist/types/{stories → components/sqm-portal-verify-email}/PortalVerifyEmail.stories.d.ts +0 -0
  355. package/dist/types/components/sqm-portal-verify-email/sqm-portal-verify-email.d.ts +0 -8
  356. package/dist/types/components/sqm-portal-verify-email/usePortalVerifyEmail.d.ts +1 -2
  357. package/dist/types/components/sqm-program-explainer/ProgramExplainer.stories.d.ts +7 -0
  358. package/dist/types/components/sqm-program-explainer/sqm-program-explainer-view.d.ts +11 -0
  359. package/dist/types/components/sqm-program-explainer/sqm-program-explainer.d.ts +41 -0
  360. package/dist/types/components/sqm-program-explainer-step/ProgramExplainerStep.stories.d.ts +5 -0
  361. package/dist/types/components/sqm-program-explainer-step/sqm-program-explainer-step-view.d.ts +8 -0
  362. package/dist/types/components/sqm-program-explainer-step/sqm-program-explainer-step.d.ts +29 -0
  363. package/dist/types/{stories → components/sqm-program-menu}/ProgramMenu.stories.d.ts +0 -0
  364. package/dist/types/{stories → components/sqm-referral-iframe}/ReferralIframe.stories.d.ts +0 -0
  365. package/dist/types/{stories → components/sqm-referral-table}/ReferralTable.stories.d.ts +0 -0
  366. package/dist/types/{stories → components/sqm-referral-table}/ReferralTableCell.stories.d.ts +0 -0
  367. package/dist/types/{stories → components/sqm-referral-table}/ReferralTableRewardsCell.stories.d.ts +0 -0
  368. package/dist/types/components/sqm-reward-exchange-list/RewardExchangeList.stories.d.ts +15 -0
  369. package/dist/types/components/sqm-reward-exchange-list/RewardExchangeListData.d.ts +451 -0
  370. package/dist/types/components/sqm-reward-exchange-list/SVGs.d.ts +5 -0
  371. package/dist/types/components/sqm-reward-exchange-list/UseRewardExchangeList.stories.d.ts +28 -0
  372. package/dist/types/components/sqm-reward-exchange-list/progressBar.d.ts +4 -0
  373. package/dist/types/components/sqm-reward-exchange-list/sqm-reward-exchange-list-view.d.ts +28 -0
  374. package/dist/types/components/sqm-reward-exchange-list/sqm-reward-exchange-list.d.ts +77 -0
  375. package/dist/types/components/sqm-reward-exchange-list/useRewardExchangeList.d.ts +60 -0
  376. package/dist/types/components/sqm-rewards-table/UseRewardsTable.stories.d.ts +16 -0
  377. package/dist/types/components/sqm-rewards-table/cells/sqm-rewards-table-date-cell.d.ts +7 -0
  378. package/dist/types/components/sqm-rewards-table/cells/sqm-rewards-table-rewards-cell.d.ts +5 -0
  379. package/dist/types/components/sqm-rewards-table/cells/sqm-rewards-table-source-cell.d.ts +4 -0
  380. package/dist/types/components/sqm-rewards-table/cells/sqm-rewards-table-status-cell.d.ts +6 -0
  381. package/dist/types/components/sqm-rewards-table/columns/RewardTableColumn.d.ts +5 -0
  382. package/dist/types/components/sqm-rewards-table/columns/sqm-rewards-table-date-column.d.ts +25 -0
  383. package/dist/types/components/sqm-rewards-table/columns/sqm-rewards-table-reward-column.d.ts +19 -0
  384. package/dist/types/components/sqm-rewards-table/columns/sqm-rewards-table-source-column.d.ts +23 -0
  385. package/dist/types/components/sqm-rewards-table/columns/sqm-rewards-table-status-column.d.ts +19 -0
  386. package/dist/types/components/sqm-rewards-table/sqm-rewards-table.d.ts +32 -0
  387. package/dist/types/components/sqm-rewards-table/useRewardsTable.d.ts +5 -0
  388. package/dist/types/{stories → components/sqm-router}/Router.stories.d.ts +0 -0
  389. package/dist/types/{stories → components/sqm-share-button}/ShareButton.stories.d.ts +0 -0
  390. package/dist/types/{stories → components/sqm-share-button}/UseShareButton.stories.d.ts +0 -0
  391. package/dist/types/{stories → components/sqm-share-link}/ShareLink.stories.d.ts +0 -0
  392. package/dist/types/{stories → components/sqm-share-link}/UseShareLink.stories.d.ts +0 -0
  393. package/dist/types/components/sqm-stencilbook/AutoColor.d.ts +8 -0
  394. package/dist/types/components/sqm-stencilbook/Matrix.d.ts +11 -0
  395. package/dist/types/components/sqm-stencilbook/Resizer.d.ts +3 -0
  396. package/dist/types/components/sqm-stencilbook/Themes.d.ts +17 -0
  397. package/dist/types/components/sqm-task-card/SVGs.d.ts +3 -0
  398. package/dist/types/components/sqm-task-card/TaskCard.stories.d.ts +20 -0
  399. package/dist/types/components/sqm-task-card/UseTaskCard.stories.d.ts +10 -0
  400. package/dist/types/components/sqm-task-card/progress-bar/SVGs.d.ts +1 -0
  401. package/dist/types/components/sqm-task-card/progress-bar/progress-bar-view.d.ts +12 -0
  402. package/dist/types/components/sqm-task-card/sqm-task-card-view.d.ts +18 -0
  403. package/dist/types/components/sqm-task-card/sqm-task-card.d.ts +80 -0
  404. package/dist/types/components/sqm-user-name/UserName.stories.d.ts +6 -0
  405. package/dist/types/components/sqm-user-name/sqm-user-name.d.ts +1 -1
  406. package/dist/types/components.d.ts +736 -96
  407. package/dist/types/fonts/GoogleFonts.d.ts +9 -0
  408. package/dist/types/global/android.d.ts +7 -0
  409. package/dist/types/global/demo.d.ts +1 -0
  410. package/dist/types/global/styles.d.ts +1 -1
  411. package/dist/types/saasquatch.d.ts +34 -0
  412. package/dist/types/stories/features.d.ts +4 -0
  413. package/dist/types/stories/templates.d.ts +4 -0
  414. package/dist/types/tables/GenericTableView.d.ts +29 -0
  415. package/dist/types/tables/TableSlots.d.ts +9 -0
  416. package/dist/types/{components/sqm-referral-table → tables}/re-render.d.ts +0 -0
  417. package/dist/types/{components/sqm-referral-table → tables}/sqm-table-cell.d.ts +0 -0
  418. package/dist/types/{components/sqm-referral-table → tables}/sqm-table-row.d.ts +0 -0
  419. package/dist/types/{components/sqm-referral-table → tables}/useChildElements.d.ts +0 -0
  420. package/grapesjs/grapesjs.js +1 -1
  421. package/package.json +2 -1
  422. package/dist/esm-es5/sqm-divided-layout_26.entry.js +0 -1
  423. package/dist/esm-es5/useDemoBigStat-5557504e.js +0 -1
  424. package/dist/mint-components/p-10a98629.entry.js +0 -1
  425. package/dist/mint-components/p-112d42ab.system.entry.js +0 -1
  426. package/dist/mint-components/p-192539d2.entry.js +0 -1
  427. package/dist/mint-components/p-2f333f89.system.entry.js +0 -1
  428. package/dist/mint-components/p-528aecd1.entry.js +0 -1
  429. package/dist/mint-components/p-54707082.system.js +0 -1
  430. package/dist/mint-components/p-606506d6.system.entry.js +0 -1
  431. package/dist/mint-components/p-6815e7ba.entry.js +0 -1
  432. package/dist/mint-components/p-756a5e6f.system.js +0 -1
  433. package/dist/mint-components/p-768b9014.system.entry.js +0 -1
  434. package/dist/mint-components/p-7cf335a0.entry.js +0 -1
  435. package/dist/mint-components/p-86b66e5c.entry.js +0 -1
  436. package/dist/mint-components/p-86c02069.system.entry.js +0 -1
  437. package/dist/mint-components/p-942723ad.entry.js +0 -1
  438. package/dist/mint-components/p-a646db48.system.entry.js +0 -1
  439. package/dist/mint-components/p-b3cddcca.entry.js +0 -1
  440. package/dist/mint-components/p-b63744fe.js +0 -227
  441. package/dist/mint-components/p-c5c029b8.system.js +0 -1
  442. package/dist/mint-components/p-d1cea1b1.system.js +0 -1
  443. package/dist/mint-components/p-d3171b36.system.entry.js +0 -1
  444. package/dist/mint-components/p-de3311bf.entry.js +0 -9
  445. package/dist/mint-components/p-ef29e060.entry.js +0 -230
  446. package/dist/types/stories/UserName.stories.d.ts +0 -6
@@ -0,0 +1,370 @@
1
+ import { h } from "@stencil/core";
2
+ import jss from "jss";
3
+ import preset from "jss-preset-default";
4
+ import * as SVGs from "./SVGs";
5
+ export function ProgressBarView(props) {
6
+ const { progress = 0, goal = 1, steps = false, progressBarUnit = "", repeatable = false, expired = false, finite = 0, } = props;
7
+ // console.log("progress bar props", props);
8
+ const gift1 = SVGs.gift();
9
+ const gift2 = SVGs.gift();
10
+ const gift3 = SVGs.gift();
11
+ var items = [];
12
+ var columns = "";
13
+ if (repeatable) {
14
+ if (steps) {
15
+ addStepsRepeatable();
16
+ }
17
+ else {
18
+ addLinearRepeatable();
19
+ }
20
+ }
21
+ // non repeatable
22
+ else {
23
+ if (steps) {
24
+ addSteps();
25
+ }
26
+ else {
27
+ addLinear();
28
+ }
29
+ }
30
+ const style = {
31
+ ProgressBar: {
32
+ marginTop: steps ? "calc(-1*var(--sl-spacing-x-small))" : "",
33
+ "& .progress-bar": {
34
+ height: "0",
35
+ marginTop: steps
36
+ ? "var(--sl-spacing-medium)"
37
+ : "var(--sl-spacing-large)",
38
+ filter: expired ? "grayscale(1)" : "",
39
+ marginBottom: "var(--sl-spacing-xxx-large)",
40
+ marginRight: "var(--sl-spacing-x-small)",
41
+ fontSize: "var(--sl-font-size-x-small)",
42
+ display: "grid",
43
+ gridTemplateColumns: columns,
44
+ lineHeight: "45px",
45
+ userSelect: "none",
46
+ },
47
+ "& .progress-bar.repeatable-steps": {
48
+ marginLeft: "var(--sl-spacing-x-small)",
49
+ },
50
+ "& .filled:after": {
51
+ content: '""',
52
+ display: "flex",
53
+ width: "100%",
54
+ height: "4px",
55
+ borderRadius: "4px",
56
+ backgroundColor: "var(--sl-color-primary-300)",
57
+ },
58
+ "& .progress": {
59
+ display: "block",
60
+ textAlign: "center",
61
+ marginLeft: "-100px",
62
+ marginRight: "-100px",
63
+ },
64
+ "& .progress::after": {
65
+ content: '""',
66
+ width: "12px",
67
+ height: "12px",
68
+ display: "flex",
69
+ backgroundColor: "var(--sl-color-primary-300)",
70
+ borderRadius: "50%",
71
+ position: "relative",
72
+ left: "47%",
73
+ top: "-85%",
74
+ },
75
+ "& .progress.bg:after": {
76
+ width: "0",
77
+ height: "0",
78
+ border: "none",
79
+ },
80
+ "& .progress.top": {
81
+ position: "relative",
82
+ top: "-40px",
83
+ },
84
+ "& .progress.top:after": {
85
+ top: "-16%",
86
+ },
87
+ "& .empty": {
88
+ display: "block",
89
+ textAlign: "center",
90
+ marginLeft: "-100px",
91
+ marginRight: "-100px",
92
+ },
93
+ "& .empty::after": {
94
+ content: '""',
95
+ width: "12px",
96
+ height: "12px",
97
+ border: "2px solid #E0E0E0",
98
+ margin: "-2px",
99
+ display: "flex",
100
+ backgroundColor: "white",
101
+ borderRadius: "50%",
102
+ position: "relative",
103
+ left: "47%",
104
+ top: "-85%",
105
+ },
106
+ "& .empty.bg:after": {
107
+ width: "0",
108
+ height: "0",
109
+ border: "none",
110
+ },
111
+ "& .remain:after": {
112
+ content: '""',
113
+ display: "flex",
114
+ width: "100%",
115
+ height: "4px",
116
+ borderRadius: "4px",
117
+ backgroundColor: "#E0E0E0",
118
+ },
119
+ "& .gift.bw": {
120
+ filter: "grayscale(100%)",
121
+ },
122
+ "& .gift.start": {
123
+ transform: "scale(80%)",
124
+ top: "-20px",
125
+ },
126
+ "& .gift": {
127
+ textAlign: "center",
128
+ marginLeft: "-100px",
129
+ marginRight: "-100px",
130
+ position: "relative",
131
+ display: "list-item",
132
+ listStyleType: "none",
133
+ top: "-18px",
134
+ filter: goal <= progress ? "" : "grayscale(100%)",
135
+ zIndex: "1",
136
+ },
137
+ },
138
+ };
139
+ jss.setup(preset());
140
+ const sheet = jss.createStyleSheet(style);
141
+ const styleString = sheet.toString();
142
+ return (h("div", { class: sheet.classes.ProgressBar },
143
+ h("style", { type: "text/css" }, styleString),
144
+ h("div", { class: (!Boolean(finite) && progress >= 2 * goal) ||
145
+ (Boolean(finite) && progress > 2 * goal)
146
+ ? "progress-bar repeatable-steps"
147
+ : "progress-bar" }, items)));
148
+ function clamp(x, min, max) {
149
+ return Math.min(Math.max(x, min), max);
150
+ }
151
+ function addLinear() {
152
+ const ratio = progress / goal;
153
+ columns =
154
+ clamp(ratio, 0, 1) + "fr 0fr " + clamp(1 - ratio, 0, 1) + "fr 0fr 0fr";
155
+ items.push(h("div", { class: "filled" }));
156
+ items.push(h("div", { class: clamp(progress, 0, goal) == goal ? "progress top bg" : "progress top" }, clamp(progress, 0, goal) == goal
157
+ ? ""
158
+ : progressBarUnit + clamp(progress, 0, goal)));
159
+ items.push(h("div", { class: "remain" }));
160
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal));
161
+ items.push(h("div", { class: "gift" }, gift1));
162
+ }
163
+ function addSteps() {
164
+ let ratio = 1 / goal;
165
+ for (let i = 1; i < goal; i++) {
166
+ columns += ratio + "fr 0fr ";
167
+ if (i > progress) {
168
+ items.push(h("div", { class: "remain" }));
169
+ items.push(h("div", { class: "empty" }, i));
170
+ }
171
+ else {
172
+ items.push(h("div", { class: "filled" }));
173
+ items.push(h("div", { class: "progress" }, i));
174
+ }
175
+ }
176
+ columns += ratio + "fr 0fr ";
177
+ // reward success
178
+ if (goal <= progress) {
179
+ columns += "0fr ";
180
+ items.push(h("div", { class: "filled" }));
181
+ items.push(h("div", { class: "progress bg" }, goal));
182
+ items.push(h("div", { class: "gift" }, gift1));
183
+ }
184
+ // reward fail
185
+ else {
186
+ columns += "0fr ";
187
+ items.push(h("div", { class: "remain" }));
188
+ items.push(h("div", { class: "empty bg" }, goal));
189
+ items.push(h("div", { class: "gift" }, gift1));
190
+ }
191
+ }
192
+ function addLinearRepeatable() {
193
+ let repetitions = Math.floor(progress / goal);
194
+ let ratio = ((progress % goal) / goal) * 0.5;
195
+ // 0 repetition
196
+ if (repetitions == 0) {
197
+ columns = ratio + "fr 0fr " + (0.5 - ratio) + "fr 0fr 0fr 0.5fr 0fr 0fr";
198
+ items.push(h("div", { class: "filled" }));
199
+ items.push(h("div", { class: progress == goal ? "progress top bg" : "progress top" }, progressBarUnit + progress));
200
+ items.push(h("div", { class: "remain" }));
201
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal));
202
+ items.push(h("div", { class: "gift" }, gift1));
203
+ items.push(h("div", { class: "remain" }));
204
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * 2));
205
+ items.push(h("div", { class: "gift bw" }, gift2));
206
+ }
207
+ // single repetition
208
+ else if (repetitions == 1) {
209
+ columns =
210
+ "0.5fr 0fr 0fr " + ratio + "fr 0fr " + (0.5 - ratio) + "fr 0fr 0fr";
211
+ items.push(h("div", { class: "filled" }));
212
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal));
213
+ items.push(h("div", { class: "gift" }, gift1));
214
+ items.push(h("div", { class: "filled" }));
215
+ items.push(h("div", { class: progress == goal ? "progress top bg" : "progress top" }, progress == goal ? "" : progressBarUnit + progress));
216
+ items.push(h("div", { class: "remain" }));
217
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * 2));
218
+ items.push(h("div", { class: "gift bw" }, gift2));
219
+ }
220
+ // finite repetition hit
221
+ else if (finite && repetitions >= finite) {
222
+ if (repetitions > 2) {
223
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * (finite - 2)));
224
+ items.push(h("div", { class: "gift start" }, gift1));
225
+ columns = "0fr 0fr 0.5fr 0fr 0fr 0.5fr 0fr 0fr";
226
+ }
227
+ else {
228
+ columns = "0.5fr 0fr 0fr 0.5fr 0fr 0fr";
229
+ }
230
+ items.push(h("div", { class: "filled" }));
231
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * (finite - 1)));
232
+ items.push(h("div", { class: "gift" }, gift2));
233
+ items.push(h("div", { class: "filled" }));
234
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * finite));
235
+ items.push(h("div", { class: "gift" }, gift3));
236
+ }
237
+ // multiple repetitions
238
+ else {
239
+ columns =
240
+ "0fr 0fr 0.5fr 0fr 0fr " +
241
+ ratio +
242
+ "fr 0fr " +
243
+ (0.5 - ratio) +
244
+ "fr 0fr 0fr";
245
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * (repetitions - 1)));
246
+ items.push(h("div", { class: "gift start" }, gift1));
247
+ items.push(h("div", { class: "filled" }));
248
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * repetitions));
249
+ items.push(h("div", { class: "gift" }, gift2));
250
+ items.push(h("div", { class: "filled" }));
251
+ items.push(h("div", { class: progress == goal * repetitions ? "progress top bg" : "progress top" }, progress == goal * repetitions ? "" : progressBarUnit + progress));
252
+ items.push(h("div", { class: "remain" }));
253
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * (repetitions + 1)));
254
+ items.push(h("div", { class: "gift bw" }, gift3));
255
+ }
256
+ }
257
+ function addStepsRepeatable() {
258
+ let repetitions = Math.floor(progress / goal);
259
+ // no or single repetition
260
+ if (repetitions < 2) {
261
+ let ratio = 1 / goal;
262
+ for (let i = 1; i < goal * 2 + 1; i++) {
263
+ columns += ratio + "fr 0fr ";
264
+ if (i > progress) {
265
+ if (i == goal) {
266
+ columns += "0fr ";
267
+ items.push(h("div", { class: "remain" }));
268
+ items.push(h("div", { class: "empty bg" }, goal));
269
+ items.push(h("div", { class: "gift bw" }, gift1));
270
+ }
271
+ else if (i == goal * 2) {
272
+ columns += "0fr 0fr";
273
+ items.push(h("div", { class: "remain" }));
274
+ items.push(h("div", { class: "empty bg" }, goal * 2));
275
+ items.push(h("div", { class: "gift bw" }, gift2));
276
+ }
277
+ else {
278
+ items.push(h("div", { class: "remain" }));
279
+ items.push(h("div", { class: "empty" }, i));
280
+ }
281
+ }
282
+ else if (i == goal) {
283
+ columns += "0fr ";
284
+ items.push(h("div", { class: "filled" }));
285
+ items.push(h("div", { class: "progress bg" }, i));
286
+ items.push(h("div", { class: "gift" }, gift3));
287
+ }
288
+ else {
289
+ items.push(h("div", { class: "filled" }));
290
+ items.push(h("div", { class: "progress" }, i));
291
+ }
292
+ }
293
+ }
294
+ // finite repetition hit
295
+ else if (finite && repetitions >= finite) {
296
+ let ratio = 1 / goal;
297
+ if (repetitions > 2) {
298
+ columns += "0fr 0fr ";
299
+ items.push(h("div", { class: "progress bg" }, goal * (finite - 2)));
300
+ items.push(h("div", { class: "gift start" }, gift1));
301
+ }
302
+ for (let i = 1; i < goal * 2 + 1; i++) {
303
+ columns += ratio + "fr 0fr ";
304
+ if (i > progress) {
305
+ if (i == goal) {
306
+ columns += "0fr ";
307
+ items.push(h("div", { class: "remain" }));
308
+ items.push(h("div", { class: "progress bg" }, goal * (finite - 1)));
309
+ items.push(h("div", { class: "gift bw" }, gift1));
310
+ }
311
+ }
312
+ else if (i == goal) {
313
+ columns += "0fr ";
314
+ items.push(h("div", { class: "filled" }));
315
+ items.push(h("div", { class: "progress bg" }, goal * (finite - 1)));
316
+ items.push(h("div", { class: "gift" }, gift2));
317
+ }
318
+ else if (i == goal * 2) {
319
+ columns += "0fr 0fr";
320
+ items.push(h("div", { class: "filled" }));
321
+ items.push(h("div", { class: "progress bg" }, goal * finite));
322
+ items.push(h("div", { class: "gift" }, gift3));
323
+ }
324
+ else {
325
+ items.push(h("div", { class: "filled" }));
326
+ items.push(h("div", { class: "progress" }, i + goal * (finite - 2)));
327
+ }
328
+ }
329
+ }
330
+ // case repetition many
331
+ else {
332
+ let position = (progress % goal) + goal;
333
+ let ratio = 1 / goal;
334
+ columns += "0fr 0fr ";
335
+ items.push(h("div", { class: "progress bg" }, goal * (repetitions - 1)));
336
+ items.push(h("div", { class: "gift start" }, gift1));
337
+ for (let i = 1; i < goal * 2 + 1; i++) {
338
+ columns += ratio + "fr 0fr ";
339
+ if (i <= goal) {
340
+ if (i == goal) {
341
+ columns += "0fr ";
342
+ items.push(h("div", { class: "filled" }));
343
+ items.push(h("div", { class: "progress bg" }, i + goal * (repetitions - 1)));
344
+ items.push(h("div", { class: "gift" }, gift2));
345
+ }
346
+ else {
347
+ items.push(h("div", { class: "filled" }));
348
+ items.push(h("div", { class: "progress" }, i + goal * (repetitions - 1)));
349
+ }
350
+ }
351
+ else if (i > position) {
352
+ if (i == goal * 2) {
353
+ columns += "0fr 0fr";
354
+ items.push(h("div", { class: "remain" }));
355
+ items.push(h("div", { class: "empty bg" }, i + goal * (repetitions - 1)));
356
+ items.push(h("div", { class: "gift bw" }, gift3));
357
+ }
358
+ else {
359
+ items.push(h("div", { class: "remain" }));
360
+ items.push(h("div", { class: "empty" }, i + goal * (repetitions - 1)));
361
+ }
362
+ }
363
+ else {
364
+ items.push(h("div", { class: "filled" }));
365
+ items.push(h("div", { class: "progress" }, i + goal * (repetitions - 1)));
366
+ }
367
+ }
368
+ }
369
+ }
370
+ }
@@ -0,0 +1,240 @@
1
+ import { h } from "@stencil/core";
2
+ import jss from "jss";
3
+ import preset from "jss-preset-default";
4
+ import { HostBlock } from "../../global/mixins";
5
+ import * as SVGs from "./SVGs";
6
+ import { ProgressBarView, } from "./progress-bar/progress-bar-view";
7
+ import { DateTime } from "luxon";
8
+ export function TaskCardView(props) {
9
+ // console.log({ props });
10
+ const checkmark_circle = SVGs.checkmark_circle();
11
+ const checkmark_filled = SVGs.checkmark_filled();
12
+ const arrow_left_right = SVGs.arrow_left_right();
13
+ const style = {
14
+ HostBlock: HostBlock,
15
+ TaskCard: {
16
+ "& .main": {
17
+ position: "relative",
18
+ boxSizing: "border-box",
19
+ minWidth: "347px",
20
+ background: "var(--sl-color-neutral-0)",
21
+ border: "1px solid var(--sl-color-neutral-200)",
22
+ borderRadius: "var(--sl-border-radius-medium)",
23
+ fontSize: "var(--sl-font-size-small)",
24
+ lineHeight: "var(--sl-line-height-dense)",
25
+ color: "var(--sl-color-neutral-600)",
26
+ },
27
+ "& .main.complete": {
28
+ background: "var(--sl-color-primary-50)",
29
+ borderColor: "var(--sl-color-primary-500)",
30
+ },
31
+ "& .main.expired": {
32
+ color: "var(--sl-color-neutral-400)",
33
+ background: "var(--sl-color-neutral-50)",
34
+ },
35
+ "& .title": {
36
+ fontSize: "var(--sl-font-size-medium)",
37
+ fontWeight: "var(--sl-font-weight-semibold)",
38
+ color: "var(--sl-color-neutral-950)",
39
+ },
40
+ "& .container": {
41
+ margin: "var(--sl-spacing-medium)",
42
+ },
43
+ "& .container.subdued": {
44
+ opacity: "0.66",
45
+ },
46
+ "& .container > div": {
47
+ margin: "var(--sl-spacing-medium) 0",
48
+ },
49
+ },
50
+ Expired: {
51
+ margin: "var(--sl-spacing-medium)",
52
+ marginBottom: "calc(var(--sl-spacing-x-small)*-1)",
53
+ color: "var(--sl-color-warning-600)",
54
+ fontWeight: "var(--sl-font-weight-semibold)",
55
+ },
56
+ Header: {
57
+ display: "flex",
58
+ "& .icon": {
59
+ position: "relative",
60
+ top: "5%",
61
+ alignSelf: "center",
62
+ lineHeight: "0",
63
+ color: "var(--sl-color-primary-400)",
64
+ fontSize: "var(--sl-font-size-large)",
65
+ marginRight: "var(--sl-spacing-x-small)",
66
+ },
67
+ "& .value": {
68
+ alignSelf: "center",
69
+ fontSize: "var(--sl-font-size-x-large)",
70
+ fontWeight: "var(--sl-font-weight-semibold)",
71
+ color: "var(--sl-color-neutral-950)",
72
+ lineHeight: "100%",
73
+ marginRight: "var(--sl-spacing-xx-small)",
74
+ },
75
+ "& .text": {
76
+ alignSelf: "end",
77
+ textTransform: "uppercase",
78
+ fontSize: "var(--sl-font-size-x-small)",
79
+ color: "var(--sl-color-neutral-950)",
80
+ lineHeight: "var(--sl-font-size-medium)",
81
+ marginRight: "var(--sl-spacing-xx-small)",
82
+ },
83
+ "& .end": {
84
+ color: "var(--sl-color-warning-500)",
85
+ fontWeight: "var(--sl-font-weight-semibold)",
86
+ marginBottom: "var(--sl-spacing-xx-small)",
87
+ },
88
+ "& .neutral": {
89
+ color: "var(--sl-color-neutral-400)",
90
+ },
91
+ },
92
+ Footer: {
93
+ display: "flex",
94
+ "& .icon": {
95
+ fontSize: "var(--sl-font-size-xx-small)",
96
+ marginRight: "var(--sl-spacing-xx-small)",
97
+ verticalAlign: "middle",
98
+ },
99
+ "& .text": {
100
+ marginTop: "auto",
101
+ verticalAlign: "text-bottom",
102
+ fontSize: "var(--sl-font-size-x-small)",
103
+ },
104
+ "& .success": {
105
+ color: "var(--sl-color-primary-500)",
106
+ fontWeight: "var(--sl-font-weight-semibold)",
107
+ },
108
+ "& .action": {
109
+ marginTop: "auto",
110
+ marginLeft: "auto",
111
+ "&::part(base)": {
112
+ color: "var(--sl-color-neutral-0)",
113
+ borderRadius: "var(--sl-border-radius-medium)",
114
+ },
115
+ "&.disabled::part(base)": {
116
+ border: "1px solid var(--sl-color-primary-400)",
117
+ background: "var(--sl-color-primary-400)",
118
+ },
119
+ "&.neutral::part(base)": {
120
+ border: "1px solid var(--sl-color-neutral-400)",
121
+ background: "var(--sl-color-neutral-400)",
122
+ },
123
+ },
124
+ "& .neutral": {
125
+ color: "var(--sl-color-neutral-400)",
126
+ },
127
+ },
128
+ };
129
+ jss.setup(preset());
130
+ const sheet = jss.createStyleSheet(style);
131
+ const styleString = sheet.toString();
132
+ const showComplete = props.progress >= props.goal;
133
+ const repetitions = props.showProgressBar
134
+ ? Math.floor(props.progress / props.goal)
135
+ : props.progress;
136
+ const dateStart = props.showExpiry && DateTime.fromISO(props.rewardDuration.split("/")[0]);
137
+ const dateEnd = props.showExpiry && DateTime.fromISO(props.rewardDuration.split("/")[1]);
138
+ const dateToday = DateTime.now();
139
+ const taskComplete = (showComplete && props.repeatable === false) ||
140
+ (props.finite && props.progress >= props.finite * props.goal);
141
+ const taskEnded = props.showExpiry && dateEnd <= dateToday;
142
+ const taskNotStarted = props.showExpiry && dateToday <= dateStart;
143
+ const taskUnavailable = taskEnded || taskNotStarted;
144
+ return (h("div", { class: sheet.classes.TaskCard },
145
+ h("div", { class: taskUnavailable
146
+ ? "main expired"
147
+ : taskComplete
148
+ ? "main complete"
149
+ : "main" },
150
+ h("style", { type: "text/css" }, styleString),
151
+ taskUnavailable && (h("div", { class: sheet.classes.Expired }, taskEnded
152
+ ? "Ended " + dateEnd.toLocaleString(DateTime.DATE_MED)
153
+ : "Starts " + dateStart.toLocaleString(DateTime.DATE_MED))),
154
+ h("div", { class: taskComplete || taskUnavailable ? "container subdued" : "container" },
155
+ h("div", { class: sheet.classes.Header }, props.loading ? (h("sl-skeleton", { style: { width: "22%", margin: "0" } })) : (h("div", null,
156
+ showComplete && (h("span", { class: taskUnavailable ? "icon neutral" : "icon" }, taskComplete ? checkmark_filled : checkmark_circle)),
157
+ h("span", { class: "value" }, props.rewardAmount),
158
+ h("span", { class: "text" }, props.rewardUnit)))),
159
+ props.loading ? (h("sl-skeleton", { style: { width: "42%", margin: "var(--sl-spacing-medium) 0" } })) : (h("div", { class: "title" }, props.cardTitle)),
160
+ props.loading ? (h("sl-skeleton", { style: { margin: "var(--sl-spacing-medium) 0" } })) : (h(Details, Object.assign({}, props))),
161
+ props.showProgressBar && props.loading ? (h("sl-skeleton", { style: { margin: "var(--sl-spacing-medium) 0" } })) : (props.showProgressBar && (h(ProgressBarView, Object.assign({}, props, { complete: taskComplete, expired: taskUnavailable })))),
162
+ h("div", { class: sheet.classes.Footer }, props.loading ? (h("sl-skeleton", { style: { width: "25%", marginLeft: "auto" } })) : (h("div", { style: { display: "contents" } },
163
+ h("span", { class: "text" },
164
+ props.repeatable && (h("div", null,
165
+ h("span", { class: repetitions > 0
166
+ ? taskUnavailable
167
+ ? "icon neutral"
168
+ : "icon success"
169
+ : "icon" }, arrow_left_right),
170
+ h("span", { class: repetitions > 0
171
+ ? taskUnavailable
172
+ ? "neutral"
173
+ : "success"
174
+ : "" }, "Completed " +
175
+ (props.finite
176
+ ? Math.min(repetitions, props.finite)
177
+ : repetitions) +
178
+ (props.finite ? "/" + props.finite : "") +
179
+ " times"))),
180
+ props.showExpiry && !taskUnavailable && (h("span", null, "Ends " + dateEnd.toLocaleString(DateTime.DATE_FULL)))),
181
+ h("sl-button", { class: taskUnavailable
182
+ ? "action neutral"
183
+ : taskComplete
184
+ ? "action disabled"
185
+ : "action", type: "primary", size: "small", onClick: () => props.openNewTab
186
+ ? window.open(props.buttonLink)
187
+ : window.open(props.buttonLink, "_parent"), disabled: taskComplete || taskUnavailable }, props.buttonText))))))));
188
+ }
189
+ function Details(props) {
190
+ const style = {
191
+ Description: {
192
+ "& input[type=checkbox]": {
193
+ display: "none",
194
+ },
195
+ "& input:checked ~ .details": {
196
+ transform: "rotate(-180deg)",
197
+ },
198
+ "& .details": {
199
+ position: "absolute",
200
+ top: "var(--sl-spacing-medium)",
201
+ right: "var(--sl-spacing-medium)",
202
+ color: "var(--sl-color-neutral-700)",
203
+ fontSize: "var(--sl-font-size-large)",
204
+ "& :hover": {
205
+ color: "var(--sl-color-primary-700)",
206
+ },
207
+ transformOrigin: "50% 37%",
208
+ transition: "transform var(--sl-transition-medium) ease",
209
+ },
210
+ "& input:checked ~ .summary": {
211
+ transition: "all var(--sl-transition-medium) ease",
212
+ maxHeight: "300px",
213
+ marginBottom: props.steps
214
+ ? "var(--sl-spacing-x-large)"
215
+ : props.showProgressBar
216
+ ? "var(--sl-spacing-xx-large)"
217
+ : "var(--sl-spacing-x-large)",
218
+ },
219
+ "& .summary": {
220
+ display: "block",
221
+ overflow: "hidden",
222
+ fontSize: "var(--sl-font-size-small)",
223
+ maxHeight: "0px",
224
+ transition: "all var(--sl-transition-fast) ease-out",
225
+ marginBottom: "var(--sl-spacing-medium)",
226
+ },
227
+ },
228
+ };
229
+ jss.setup(preset());
230
+ const sheet = jss.createStyleSheet(style);
231
+ const styleString = sheet.toString();
232
+ const rid = Math.random().toString(36).slice(2);
233
+ return (h("div", null,
234
+ h("style", { type: "text/css" }, styleString),
235
+ h("span", { class: sheet.classes.Description },
236
+ h("input", { type: "checkbox", id: "details-" + rid }),
237
+ h("label", { class: "details", htmlFor: "details-" + rid },
238
+ h("sl-icon", { name: "chevron-down" })),
239
+ h("span", { class: "summary" }, props.description))));
240
+ }