@saasquatch/mint-components 1.3.1-6 → 1.3.2-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 (344) hide show
  1. package/CHANGELOG.md +23 -31
  2. package/dist/cjs/{ShadowViewAddon-a33867b9.js → ShadowViewAddon-d2fde0a2.js} +1 -1
  3. package/dist/cjs/{global-f4f5e602.js → global-e04d7cde.js} +279 -70
  4. package/dist/cjs/{index.module-e9dac160.js → index.module-07ed6ad2.js} +4 -2
  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-3acba68a.js → re-render-81649c33.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-divided-layout_30.cjs.entry.js} +2607 -168
  11. package/dist/cjs/sqm-graphql-client-provider.cjs.entry.js +1 -1
  12. package/dist/cjs/{sqm-leaderboard-rank-view-54299e38.js → sqm-leaderboard-rank-view-0ba128e2.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-daa9c2e1.js → sqm-navigation-sidebar-item-view-0bad789c.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-395079fe.js → sqm-portal-email-verification-view-3c7d8701.js} +1 -1
  20. package/dist/cjs/sqm-portal-email-verification.cjs.entry.js +4 -4
  21. package/dist/cjs/{sqm-portal-footer-view-c82aedb5.js → sqm-portal-footer-view-8f5d682e.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 +1 -1
  24. package/dist/cjs/sqm-portal-logout.cjs.entry.js +1 -1
  25. package/dist/cjs/{sqm-portal-profile-view-9fa00ccd.js → sqm-portal-profile-view-14866b58.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 +1 -1
  29. package/dist/cjs/sqm-portal-verify-email.cjs.entry.js +1 -1
  30. package/dist/cjs/sqm-referral-table-column.cjs.entry.js +2 -2
  31. package/dist/cjs/sqm-referral-table-date-column.cjs.entry.js +2 -2
  32. package/dist/cjs/sqm-referral-table-rewards-column.cjs.entry.js +2 -2
  33. package/dist/cjs/sqm-referral-table-status-column.cjs.entry.js +2 -2
  34. package/dist/cjs/sqm-referral-table-user-column.cjs.entry.js +2 -2
  35. package/dist/cjs/sqm-share-code.cjs.entry.js +1 -1
  36. package/dist/cjs/{useDemoBigStat-e99cc8a2.js → useDemoBigStat-1692a6a1.js} +119 -22
  37. package/dist/collection/collection-manifest.json +7 -3
  38. package/dist/collection/{stories → components/sqm-asset-card}/AssetCard.stories.js +2 -2
  39. package/dist/collection/{stories → components/sqm-big-stat}/BigStat.stories.js +10 -3
  40. package/dist/collection/{stories → components/sqm-big-stat}/UseBigStat.stories.js +7 -4
  41. package/dist/collection/components/sqm-big-stat/sqm-big-stat.js +1 -21
  42. package/dist/collection/components/sqm-big-stat/useBigStat.js +117 -21
  43. package/dist/collection/components/sqm-big-stat/useDemoBigStat.js +1 -0
  44. package/dist/collection/{stories → components/sqm-divided-layout}/DividedLayout.stories.js +4 -4
  45. package/dist/collection/{stories → components/sqm-edit-profile}/EditProfileForm.stories.js +2 -2
  46. package/dist/collection/{stories → components/sqm-edit-profile}/UseEditProfile.stories.js +1 -1
  47. package/dist/collection/{stories → components/sqm-form-message}/FormMessage.stories.js +1 -1
  48. package/dist/collection/{stories → components/sqm-hero}/Hero.stories.js +2 -2
  49. package/dist/collection/{stories → components/sqm-leaderboard}/Leaderboard.stories.js +2 -2
  50. package/dist/collection/{stories → components/sqm-leaderboard}/UseLeaderboard.stories.js +3 -3
  51. package/dist/collection/{stories → components/sqm-leaderboard-rank}/LeaderboardRank.stories.js +2 -2
  52. package/dist/collection/{stories → components/sqm-name-fields}/NameFields.stories.js +2 -2
  53. package/dist/collection/{stories → components/sqm-navigation-sidebar}/NavigationSidebar.stories.js +3 -3
  54. package/dist/collection/{stories → components/sqm-navigation-sidebar-item}/SidebarItem.stories.js +2 -2
  55. package/dist/collection/{stories → components/sqm-password-field}/PasswordField.stories.js +1 -1
  56. package/dist/collection/{stories → components/sqm-portal-change-password}/ChangePassword.stories.js +3 -3
  57. package/dist/collection/{stories → components/sqm-portal-email-verification}/PortalEmailVerification.stories.js +3 -3
  58. package/dist/collection/{stories → components/sqm-portal-footer}/PortalFooter.stories.js +2 -2
  59. package/dist/collection/{stories → components/sqm-portal-forgot-password}/PortalForgotPassword.stories.js +3 -3
  60. package/dist/collection/{stories → components/sqm-portal-frame}/PortalFrame.stories.js +2 -2
  61. package/dist/collection/{stories → components/sqm-portal-login}/PortalLogin.stories.js +2 -2
  62. package/dist/collection/{stories → components/sqm-portal-profile}/PortalProfile.stories.js +2 -2
  63. package/dist/collection/{stories → components/sqm-portal-register}/PortalRegister.stories.js +2 -2
  64. package/dist/collection/components/sqm-portal-register/sqm-portal-register.js +1 -1
  65. package/dist/collection/{stories → components/sqm-portal-reset-password}/PortalResetPassword.stories.js +3 -3
  66. package/dist/collection/{stories → components/sqm-portal-verify-email}/PortalVerifyEmail.stories.js +3 -3
  67. package/dist/collection/{stories → components/sqm-program-menu}/ProgramMenu.stories.js +2 -2
  68. package/dist/collection/{stories → components/sqm-referral-iframe}/ReferralIframe.stories.js +2 -2
  69. package/dist/collection/{stories → components/sqm-referral-table}/ReferralTable.stories.js +2 -2
  70. package/dist/collection/{stories → components/sqm-referral-table}/ReferralTableCell.stories.js +1 -1
  71. package/dist/collection/{stories → components/sqm-referral-table}/ReferralTableRewardsCell.stories.js +1 -1
  72. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-column.js +1 -1
  73. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-date-column.js +1 -1
  74. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-rewards-column.js +1 -1
  75. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-status-column.js +1 -1
  76. package/dist/collection/components/sqm-referral-table/columns/sqm-referral-table-user-column.js +1 -1
  77. package/dist/collection/components/sqm-referral-table/useReferralTable.js +2 -2
  78. package/dist/collection/components/sqm-reward-exchange-list/RewardExchangeList.stories.js +21 -0
  79. package/dist/collection/components/sqm-reward-exchange-list/RewardExchangeListData.js +218 -0
  80. package/dist/collection/components/sqm-reward-exchange-list/SVGs.js +8 -0
  81. package/dist/collection/components/sqm-reward-exchange-list/UseRewardExchangeList.stories.js +143 -0
  82. package/dist/collection/components/sqm-reward-exchange-list/assets/Reward-icon.png +0 -0
  83. package/dist/collection/components/sqm-reward-exchange-list/progressBar.js +60 -0
  84. package/dist/collection/components/sqm-reward-exchange-list/sqm-reward-exchange-list-view.js +269 -0
  85. package/dist/collection/components/sqm-reward-exchange-list/sqm-reward-exchange-list.js +121 -0
  86. package/dist/collection/components/sqm-reward-exchange-list/useRewardExchangeList.js +198 -0
  87. package/dist/collection/components/sqm-rewards-table/UseRewardsTable.stories.js +53 -0
  88. package/dist/collection/components/sqm-rewards-table/sqm-rewards-table-column.js +120 -0
  89. package/dist/collection/components/sqm-rewards-table/sqm-rewards-table.js +222 -0
  90. package/dist/collection/components/sqm-rewards-table/useRewardsTable.js +190 -0
  91. package/dist/collection/{stories → components/sqm-router}/Router.stories.js +1 -1
  92. package/dist/collection/{stories → components/sqm-share-button}/ShareButton.stories.js +2 -2
  93. package/dist/collection/{stories → components/sqm-share-button}/UseShareButton.stories.js +2 -2
  94. package/dist/collection/components/sqm-share-button/sqm-share-button.js +1 -1
  95. package/dist/collection/{stories → components/sqm-share-link}/ShareLink.stories.js +2 -2
  96. package/dist/collection/{stories → components/sqm-share-link}/UseShareLink.stories.js +3 -3
  97. package/dist/collection/components/sqm-share-link/useShareLink.js +1 -2
  98. package/dist/collection/components/sqm-stencilbook/CucumberAddon.js +3 -1
  99. package/dist/collection/components/sqm-stencilbook/sqm-stencilbook.js +48 -36
  100. package/dist/collection/components/sqm-task-card/Matrix.js +63 -0
  101. package/dist/collection/components/sqm-task-card/SVGs.js +9 -0
  102. package/dist/collection/components/sqm-task-card/TaskCard.stories.js +330 -0
  103. package/dist/collection/components/sqm-task-card/UseTaskCard.stories.js +41 -0
  104. package/dist/collection/components/sqm-task-card/progress-bar/SVGs.js +7 -0
  105. package/dist/collection/components/sqm-task-card/progress-bar/progress-bar-view.js +311 -0
  106. package/dist/collection/components/sqm-task-card/progress-bar/progress-bar.stories.js +53 -0
  107. package/dist/collection/components/sqm-task-card/sqm-task-card-view.js +173 -0
  108. package/dist/collection/components/sqm-task-card/sqm-task-card.js +384 -0
  109. package/dist/collection/{stories → components/sqm-user-name}/UserName.stories.js +3 -3
  110. package/dist/collection/global/styles.js +278 -69
  111. package/dist/collection/global/styles.ts +278 -69
  112. package/dist/collection/stories/NewPortal.stories.js +15 -15
  113. package/dist/collection/tables/GenericTableView.js +51 -0
  114. package/dist/collection/tables/TableSlots.js +22 -0
  115. package/dist/collection/{components/sqm-referral-table → tables}/re-render.js +0 -0
  116. package/dist/collection/{components/sqm-referral-table → tables}/sqm-table-cell.js +0 -0
  117. package/dist/collection/{components/sqm-referral-table → tables}/sqm-table-row.js +0 -0
  118. package/dist/collection/{components/sqm-referral-table → tables}/useChildElements.js +0 -0
  119. package/dist/esm/{ShadowViewAddon-7cbc6390.js → ShadowViewAddon-aa087ef2.js} +1 -1
  120. package/dist/esm/{global-5dfb4fa8.js → global-107bb084.js} +279 -70
  121. package/dist/esm/{index.module-07f3fbb0.js → index.module-1f571929.js} +2 -2
  122. package/dist/esm/loader.js +3 -3
  123. package/dist/esm/mint-components.js +3 -3
  124. package/dist/esm/{re-render-0be5746e.js → re-render-76c9129f.js} +1 -1
  125. package/dist/esm/sqm-asset-card.entry.js +1 -1
  126. package/dist/esm/sqm-big-stat.entry.js +2 -2
  127. package/dist/esm/{sqm-divided-layout_26.entry.js → sqm-divided-layout_30.entry.js} +2605 -170
  128. package/dist/esm/sqm-graphql-client-provider.entry.js +1 -1
  129. package/dist/esm/{sqm-leaderboard-rank-view-04161da4.js → sqm-leaderboard-rank-view-c1aefdd5.js} +2 -2
  130. package/dist/esm/sqm-leaderboard-rank.entry.js +3 -3
  131. package/dist/esm/sqm-leaderboard.entry.js +2 -2
  132. package/dist/esm/sqm-name-fields.entry.js +1 -1
  133. package/dist/esm/{sqm-navigation-sidebar-item-view-78631800.js → sqm-navigation-sidebar-item-view-b3618185.js} +1 -1
  134. package/dist/esm/sqm-navigation-sidebar-item.entry.js +2 -2
  135. package/dist/esm/sqm-popup-container.entry.js +1 -1
  136. package/dist/esm/{sqm-portal-email-verification-view-d6ffe3b8.js → sqm-portal-email-verification-view-df0559b0.js} +1 -1
  137. package/dist/esm/sqm-portal-email-verification.entry.js +4 -4
  138. package/dist/esm/{sqm-portal-footer-view-5aa288c9.js → sqm-portal-footer-view-2b2bfc9e.js} +1 -1
  139. package/dist/esm/sqm-portal-footer.entry.js +3 -3
  140. package/dist/esm/sqm-portal-forgot-password.entry.js +1 -1
  141. package/dist/esm/sqm-portal-logout.entry.js +1 -1
  142. package/dist/esm/{sqm-portal-profile-view-636a8688.js → sqm-portal-profile-view-2fbb0845.js} +1 -1
  143. package/dist/esm/sqm-portal-profile.entry.js +3 -3
  144. package/dist/esm/sqm-portal-protected-route.entry.js +1 -1
  145. package/dist/esm/sqm-portal-reset-password.entry.js +1 -1
  146. package/dist/esm/sqm-portal-verify-email.entry.js +1 -1
  147. package/dist/esm/sqm-referral-table-column.entry.js +2 -2
  148. package/dist/esm/sqm-referral-table-date-column.entry.js +2 -2
  149. package/dist/esm/sqm-referral-table-rewards-column.entry.js +2 -2
  150. package/dist/esm/sqm-referral-table-status-column.entry.js +2 -2
  151. package/dist/esm/sqm-referral-table-user-column.entry.js +2 -2
  152. package/dist/esm/sqm-share-code.entry.js +1 -1
  153. package/dist/esm/{useDemoBigStat-531a4d2a.js → useDemoBigStat-49cdfe32.js} +119 -22
  154. package/dist/esm-es5/{ShadowViewAddon-7cbc6390.js → ShadowViewAddon-aa087ef2.js} +1 -1
  155. package/dist/esm-es5/{global-5dfb4fa8.js → global-107bb084.js} +2 -2
  156. package/dist/esm-es5/{index.module-07f3fbb0.js → index.module-1f571929.js} +1 -1
  157. package/dist/esm-es5/loader.js +1 -1
  158. package/dist/esm-es5/mint-components.js +1 -1
  159. package/dist/esm-es5/{re-render-0be5746e.js → re-render-76c9129f.js} +1 -1
  160. package/dist/esm-es5/sqm-asset-card.entry.js +1 -1
  161. package/dist/esm-es5/sqm-big-stat.entry.js +1 -1
  162. package/dist/esm-es5/sqm-divided-layout_30.entry.js +1 -0
  163. package/dist/esm-es5/sqm-graphql-client-provider.entry.js +1 -1
  164. package/dist/esm-es5/{sqm-leaderboard-rank-view-04161da4.js → sqm-leaderboard-rank-view-c1aefdd5.js} +1 -1
  165. package/dist/esm-es5/sqm-leaderboard-rank.entry.js +1 -1
  166. package/dist/esm-es5/sqm-leaderboard.entry.js +1 -1
  167. package/dist/esm-es5/sqm-name-fields.entry.js +1 -1
  168. package/dist/esm-es5/{sqm-navigation-sidebar-item-view-78631800.js → sqm-navigation-sidebar-item-view-b3618185.js} +1 -1
  169. package/dist/esm-es5/sqm-navigation-sidebar-item.entry.js +1 -1
  170. package/dist/esm-es5/sqm-popup-container.entry.js +1 -1
  171. package/dist/esm-es5/{sqm-portal-email-verification-view-d6ffe3b8.js → sqm-portal-email-verification-view-df0559b0.js} +1 -1
  172. package/dist/esm-es5/sqm-portal-email-verification.entry.js +1 -1
  173. package/dist/esm-es5/{sqm-portal-footer-view-5aa288c9.js → sqm-portal-footer-view-2b2bfc9e.js} +1 -1
  174. package/dist/esm-es5/sqm-portal-footer.entry.js +1 -1
  175. package/dist/esm-es5/sqm-portal-forgot-password.entry.js +1 -1
  176. package/dist/esm-es5/sqm-portal-logout.entry.js +1 -1
  177. package/dist/esm-es5/{sqm-portal-profile-view-636a8688.js → sqm-portal-profile-view-2fbb0845.js} +1 -1
  178. package/dist/esm-es5/sqm-portal-profile.entry.js +1 -1
  179. package/dist/esm-es5/sqm-portal-protected-route.entry.js +1 -1
  180. package/dist/esm-es5/sqm-portal-reset-password.entry.js +1 -1
  181. package/dist/esm-es5/sqm-portal-verify-email.entry.js +1 -1
  182. package/dist/esm-es5/sqm-referral-table-column.entry.js +1 -1
  183. package/dist/esm-es5/sqm-referral-table-date-column.entry.js +1 -1
  184. package/dist/esm-es5/sqm-referral-table-rewards-column.entry.js +1 -1
  185. package/dist/esm-es5/sqm-referral-table-status-column.entry.js +1 -1
  186. package/dist/esm-es5/sqm-referral-table-user-column.entry.js +1 -1
  187. package/dist/esm-es5/sqm-share-code.entry.js +1 -1
  188. package/dist/esm-es5/useDemoBigStat-49cdfe32.js +1 -0
  189. package/dist/mint-components/assets/Reward-icon.png +0 -0
  190. package/dist/mint-components/global/styles.ts +278 -69
  191. package/dist/mint-components/mint-components.esm.js +1 -1
  192. package/dist/mint-components/mint-components.js +1 -1
  193. package/dist/mint-components/{p-cb8a3610.system.entry.js → p-03b7444e.system.entry.js} +1 -1
  194. package/dist/mint-components/{p-b745adaa.system.js → p-0470556b.system.js} +1 -1
  195. package/dist/mint-components/{p-6bbb9d5a.system.entry.js → p-0ca63e9e.system.entry.js} +1 -1
  196. package/dist/mint-components/{p-4ca49eb2.system.entry.js → p-0ddd6063.system.entry.js} +1 -1
  197. package/dist/mint-components/{p-a12e34b0.entry.js → p-0f19ab40.entry.js} +1 -1
  198. package/dist/mint-components/{p-84da6c55.system.entry.js → p-123930ab.system.entry.js} +1 -1
  199. package/dist/mint-components/p-20991bdd.system.entry.js +1 -0
  200. package/dist/mint-components/{p-3f3b81de.system.js → p-22ee65c4.system.js} +1 -1
  201. package/dist/mint-components/{p-f05f6004.system.entry.js → p-2b9a01ce.system.entry.js} +1 -1
  202. package/dist/mint-components/{p-705141c1.entry.js → p-3b9492a8.entry.js} +1 -1
  203. package/dist/mint-components/{p-11fe72bd.entry.js → p-3bbc61af.entry.js} +1 -1
  204. package/dist/mint-components/{p-99f85aae.js → p-3fd9db63.js} +1 -1
  205. package/dist/mint-components/p-458070cf.js +1 -0
  206. package/dist/mint-components/{p-1c69eba7.js → p-4ae9f594.js} +1 -1
  207. package/dist/mint-components/{p-7e6a38d0.system.entry.js → p-57568b23.system.entry.js} +1 -1
  208. package/dist/mint-components/{p-453df041.entry.js → p-57aa7493.entry.js} +1 -1
  209. package/dist/mint-components/p-5986de11.entry.js +1 -0
  210. package/dist/mint-components/p-59fa991d.entry.js +335 -0
  211. package/dist/mint-components/{p-cac1ffd0.entry.js → p-5a1a2b2c.entry.js} +1 -1
  212. package/dist/mint-components/{p-552a99b9.system.js → p-5e681b4b.system.js} +1 -1
  213. package/dist/mint-components/p-62b134cb.system.entry.js +1 -0
  214. package/dist/mint-components/{p-9fb97b00.system.entry.js → p-64299f78.system.entry.js} +1 -1
  215. package/dist/mint-components/p-6466d643.entry.js +1 -0
  216. package/dist/mint-components/{p-91c46672.js → p-70008004.js} +1 -1
  217. package/dist/mint-components/{p-a1029019.system.entry.js → p-70a6f9d9.system.entry.js} +1 -1
  218. package/dist/mint-components/p-719c2664.system.js +1 -0
  219. package/dist/mint-components/p-75924795.system.entry.js +1 -0
  220. package/dist/mint-components/{p-55580223.system.js → p-8155cd07.system.js} +1 -1
  221. package/dist/mint-components/{p-f5333477.system.entry.js → p-86a55c58.system.entry.js} +1 -1
  222. package/dist/mint-components/{p-087571f1.entry.js → p-874e7da3.entry.js} +1 -1
  223. package/dist/mint-components/{p-d9123a4a.system.entry.js → p-8ac0ec83.system.entry.js} +1 -1
  224. package/dist/mint-components/{p-d32ebb2d.system.js → p-91b0d151.system.js} +1 -1
  225. package/dist/mint-components/{p-45befbb8.system.entry.js → p-9ca6142b.system.entry.js} +1 -1
  226. package/dist/mint-components/{p-e3d75555.entry.js → p-a26457cd.entry.js} +1 -1
  227. package/dist/mint-components/{p-ccddec52.js → p-a37fc3cb.js} +1 -1
  228. package/dist/mint-components/p-a48fc54e.system.js +1 -0
  229. package/dist/mint-components/{p-6accffd6.js → p-ab378185.js} +1 -1
  230. package/dist/mint-components/p-ac92b5ea.js +235 -0
  231. package/dist/mint-components/{p-6a9b7f7c.entry.js → p-b0c6f82b.entry.js} +1 -1
  232. package/dist/mint-components/{p-df3a9a38.entry.js → p-b0e9c89c.entry.js} +1 -1
  233. package/dist/mint-components/{p-d98a6a1c.entry.js → p-b3bac2c6.entry.js} +1 -1
  234. package/dist/mint-components/{p-40f1482a.system.entry.js → p-bcb30771.system.entry.js} +1 -1
  235. package/dist/mint-components/{p-6a95537b.system.js → p-bdfdb088.system.js} +1 -1
  236. package/dist/mint-components/{p-7f7f60ea.entry.js → p-beb02af2.entry.js} +1 -1
  237. package/dist/mint-components/{p-77cf28f1.system.js → p-beeeda0c.system.js} +2 -2
  238. package/dist/mint-components/p-bf10c781.system.js +1 -0
  239. package/dist/mint-components/{p-ab551be3.system.entry.js → p-c0e8aaa7.system.entry.js} +1 -1
  240. package/dist/mint-components/{p-24cc7ee3.system.entry.js → p-c35b54e4.system.entry.js} +1 -1
  241. package/dist/mint-components/{p-2818f3a0.entry.js → p-c61c61e7.entry.js} +1 -1
  242. package/dist/mint-components/{p-94c25cfe.entry.js → p-c974b7d4.entry.js} +1 -1
  243. package/dist/mint-components/{p-aeb995ca.entry.js → p-cbf1db2b.entry.js} +1 -1
  244. package/dist/mint-components/{p-0d3f2c66.entry.js → p-d1e28563.entry.js} +1 -1
  245. package/dist/mint-components/{p-b95eaf63.entry.js → p-d37f227e.entry.js} +1 -1
  246. package/dist/mint-components/{p-730785e9.system.js → p-d44e98b8.system.js} +1 -1
  247. package/dist/mint-components/{p-80a40e90.js → p-d73d26ec.js} +2 -2
  248. package/dist/mint-components/{p-ab9ef09d.entry.js → p-dacbf435.entry.js} +1 -1
  249. package/dist/mint-components/{p-1af6d49d.system.entry.js → p-dbc04567.system.entry.js} +1 -1
  250. package/dist/mint-components/{p-4018d7eb.entry.js → p-de0efef2.entry.js} +1 -1
  251. package/dist/mint-components/{p-72420d6b.system.entry.js → p-e01213a2.system.entry.js} +1 -1
  252. package/dist/mint-components/p-e2a855b8.system.entry.js +1 -0
  253. package/dist/mint-components/{p-0996811b.entry.js → p-f0ad9b15.entry.js} +1 -1
  254. package/dist/mint-components/{p-23f0e229.system.entry.js → p-f0cbf76e.system.entry.js} +1 -1
  255. package/dist/mint-components/{p-48b04ef0.entry.js → p-f2db1c3b.entry.js} +1 -1
  256. package/dist/mint-components/{p-e1549548.system.entry.js → p-f538a675.system.entry.js} +1 -1
  257. package/dist/mint-components/{p-8edba448.js → p-f7e2418a.js} +1 -1
  258. package/dist/mint-components/{p-f7118fd5.js → p-f8abbd79.js} +1 -1
  259. package/dist/mint-components/{p-92671ed2.system.entry.js → p-fc90a3fe.system.entry.js} +1 -1
  260. package/dist/types/{stories → components/sqm-asset-card}/AssetCard.stories.d.ts +0 -0
  261. package/dist/types/{stories → components/sqm-big-stat}/BigStat.stories.d.ts +0 -0
  262. package/dist/types/{stories → components/sqm-big-stat}/UseBigStat.stories.d.ts +6 -0
  263. package/dist/types/components/sqm-big-stat/sqm-big-stat-view.d.ts +1 -0
  264. package/dist/types/components/sqm-big-stat/sqm-big-stat.d.ts +0 -6
  265. package/dist/types/components/sqm-big-stat/useBigStat.d.ts +4 -1
  266. package/dist/types/{stories → components/sqm-divided-layout}/DividedLayout.stories.d.ts +0 -0
  267. package/dist/types/{stories → components/sqm-edit-profile}/EditProfileForm.stories.d.ts +0 -0
  268. package/dist/types/{stories → components/sqm-edit-profile}/UseEditProfile.stories.d.ts +0 -0
  269. package/dist/types/{stories → components/sqm-form-message}/FormMessage.stories.d.ts +0 -0
  270. package/dist/types/{stories → components/sqm-hero}/Hero.stories.d.ts +0 -0
  271. package/dist/types/{stories → components/sqm-leaderboard}/Leaderboard.stories.d.ts +0 -0
  272. package/dist/types/{stories → components/sqm-leaderboard}/UseLeaderboard.stories.d.ts +0 -0
  273. package/dist/types/{stories → components/sqm-leaderboard-rank}/LeaderboardRank.stories.d.ts +0 -0
  274. package/dist/types/{stories → components/sqm-name-fields}/NameFields.stories.d.ts +0 -0
  275. package/dist/types/{stories → components/sqm-navigation-sidebar}/NavigationSidebar.stories.d.ts +0 -0
  276. package/dist/types/{stories → components/sqm-navigation-sidebar-item}/SidebarItem.stories.d.ts +0 -0
  277. package/dist/types/{stories → components/sqm-password-field}/PasswordField.stories.d.ts +0 -0
  278. package/dist/types/{stories → components/sqm-portal-change-password}/ChangePassword.stories.d.ts +0 -0
  279. package/dist/types/{stories → components/sqm-portal-email-verification}/PortalEmailVerification.stories.d.ts +0 -0
  280. package/dist/types/{stories → components/sqm-portal-footer}/PortalFooter.stories.d.ts +0 -0
  281. package/dist/types/{stories → components/sqm-portal-forgot-password}/PortalForgotPassword.stories.d.ts +0 -0
  282. package/dist/types/{stories → components/sqm-portal-frame}/PortalFrame.stories.d.ts +0 -0
  283. package/dist/types/{stories → components/sqm-portal-login}/PortalLogin.stories.d.ts +0 -0
  284. package/dist/types/{stories → components/sqm-portal-profile}/PortalProfile.stories.d.ts +0 -0
  285. package/dist/types/{stories → components/sqm-portal-register}/PortalRegister.stories.d.ts +0 -0
  286. package/dist/types/{stories → components/sqm-portal-reset-password}/PortalResetPassword.stories.d.ts +0 -0
  287. package/dist/types/{stories → components/sqm-portal-verify-email}/PortalVerifyEmail.stories.d.ts +0 -0
  288. package/dist/types/{stories → components/sqm-program-menu}/ProgramMenu.stories.d.ts +0 -0
  289. package/dist/types/{stories → components/sqm-referral-iframe}/ReferralIframe.stories.d.ts +0 -0
  290. package/dist/types/{stories → components/sqm-referral-table}/ReferralTable.stories.d.ts +0 -0
  291. package/dist/types/{stories → components/sqm-referral-table}/ReferralTableCell.stories.d.ts +0 -0
  292. package/dist/types/{stories → components/sqm-referral-table}/ReferralTableRewardsCell.stories.d.ts +0 -0
  293. package/dist/types/components/sqm-reward-exchange-list/RewardExchangeList.stories.d.ts +6 -0
  294. package/dist/types/components/sqm-reward-exchange-list/RewardExchangeListData.d.ts +81 -0
  295. package/dist/types/components/sqm-reward-exchange-list/SVGs.d.ts +3 -0
  296. package/dist/types/components/sqm-reward-exchange-list/UseRewardExchangeList.stories.d.ts +28 -0
  297. package/dist/types/components/sqm-reward-exchange-list/progressBar.d.ts +4 -0
  298. package/dist/types/components/sqm-reward-exchange-list/sqm-reward-exchange-list-view.d.ts +25 -0
  299. package/dist/types/components/sqm-reward-exchange-list/sqm-reward-exchange-list.d.ts +20 -0
  300. package/dist/types/components/sqm-reward-exchange-list/useRewardExchangeList.d.ts +43 -0
  301. package/dist/types/components/sqm-rewards-table/UseRewardsTable.stories.d.ts +16 -0
  302. package/dist/types/components/sqm-rewards-table/sqm-rewards-table-column.d.ts +20 -0
  303. package/dist/types/components/sqm-rewards-table/sqm-rewards-table.d.ts +32 -0
  304. package/dist/types/components/sqm-rewards-table/useRewardsTable.d.ts +38 -0
  305. package/dist/types/{stories → components/sqm-router}/Router.stories.d.ts +0 -0
  306. package/dist/types/{stories → components/sqm-share-button}/ShareButton.stories.d.ts +0 -0
  307. package/dist/types/{stories → components/sqm-share-button}/UseShareButton.stories.d.ts +0 -0
  308. package/dist/types/{stories → components/sqm-share-link}/ShareLink.stories.d.ts +0 -0
  309. package/dist/types/{stories → components/sqm-share-link}/UseShareLink.stories.d.ts +0 -0
  310. package/dist/types/components/sqm-task-card/Matrix.d.ts +11 -0
  311. package/dist/types/components/sqm-task-card/SVGs.d.ts +2 -0
  312. package/dist/types/components/sqm-task-card/TaskCard.stories.d.ts +11 -0
  313. package/dist/types/components/sqm-task-card/UseTaskCard.stories.d.ts +10 -0
  314. package/dist/types/components/sqm-task-card/progress-bar/SVGs.d.ts +1 -0
  315. package/dist/types/components/sqm-task-card/progress-bar/progress-bar-view.d.ts +10 -0
  316. package/dist/types/components/sqm-task-card/progress-bar/progress-bar.stories.d.ts +12 -0
  317. package/dist/types/components/sqm-task-card/sqm-task-card-view.d.ts +16 -0
  318. package/dist/types/components/sqm-task-card/sqm-task-card.d.ts +73 -0
  319. package/dist/types/components/sqm-user-name/UserName.stories.d.ts +6 -0
  320. package/dist/types/components.d.ts +269 -10
  321. package/dist/types/global/styles.d.ts +1 -1
  322. package/dist/types/tables/GenericTableView.d.ts +29 -0
  323. package/dist/types/tables/TableSlots.d.ts +8 -0
  324. package/dist/types/{components/sqm-referral-table → tables}/re-render.d.ts +0 -0
  325. package/dist/types/{components/sqm-referral-table → tables}/sqm-table-cell.d.ts +0 -0
  326. package/dist/types/{components/sqm-referral-table → tables}/sqm-table-row.d.ts +0 -0
  327. package/dist/types/{components/sqm-referral-table → tables}/useChildElements.d.ts +0 -0
  328. package/grapesjs/grapesjs.js +1 -1
  329. package/package.json +2 -2
  330. package/dist/esm-es5/sqm-divided-layout_26.entry.js +0 -1
  331. package/dist/esm-es5/useDemoBigStat-531a4d2a.js +0 -1
  332. package/dist/mint-components/p-0ed2de6a.js +0 -1
  333. package/dist/mint-components/p-253d07a3.system.entry.js +0 -1
  334. package/dist/mint-components/p-3ace9bab.entry.js +0 -230
  335. package/dist/mint-components/p-3e5c8dc2.entry.js +0 -1
  336. package/dist/mint-components/p-3fc2b5d4.system.js +0 -1
  337. package/dist/mint-components/p-420e50a8.entry.js +0 -1
  338. package/dist/mint-components/p-44a83e6e.system.js +0 -1
  339. package/dist/mint-components/p-4a9dcc1f.system.js +0 -1
  340. package/dist/mint-components/p-52be0df6.js +0 -227
  341. package/dist/mint-components/p-54d90d9f.system.entry.js +0 -1
  342. package/dist/mint-components/p-a60e8e00.system.entry.js +0 -1
  343. package/dist/mint-components/p-c6f2d1f4.system.entry.js +0 -1
  344. package/dist/types/stories/UserName.stories.d.ts +0 -6
@@ -0,0 +1,311 @@
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, complete = false, } = 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
+ var repetitions = Math.floor(progress / goal);
14
+ if (repeatable) {
15
+ if (steps) {
16
+ addStepsRepeatable();
17
+ }
18
+ else {
19
+ addLinearRepeatable();
20
+ }
21
+ }
22
+ // non repeatable
23
+ else {
24
+ if (steps) {
25
+ addSteps();
26
+ }
27
+ else {
28
+ addLinear();
29
+ }
30
+ }
31
+ const style = {
32
+ ProgressBar: {
33
+ "& .progress-bar": {
34
+ height: "15px",
35
+ marginTop: steps ? "var(--sl-spacing-x-medium)" : "var(--sl-spacing-large)",
36
+ marginBottom: "var(--sl-spacing-xx-large)",
37
+ marginRight: "var(--sl-spacing-x-small)",
38
+ fontSize: "var(--sl-font-size-x-small)",
39
+ display: "grid",
40
+ gridTemplateColumns: columns,
41
+ lineHeight: "45px",
42
+ userSelect: "none",
43
+ },
44
+ "& .progress-bar.repeatable-steps": {
45
+ marginLeft: "var(--sl-spacing-x-small)",
46
+ },
47
+ "& .filled:after": {
48
+ content: '""',
49
+ display: "flex",
50
+ width: "100%",
51
+ height: "4px",
52
+ borderRadius: "4px",
53
+ backgroundColor: complete ? "var(--sl-color-success-500)" : "var(--sl-color-primary-500)",
54
+ },
55
+ "& .progress": {
56
+ display: "block",
57
+ textAlign: "center",
58
+ marginLeft: "-100px",
59
+ marginRight: "-100px",
60
+ },
61
+ "& .progress::after": {
62
+ content: '""',
63
+ width: "12px",
64
+ height: "12px",
65
+ display: "flex",
66
+ backgroundColor: complete ? "var(--sl-color-success-500)" : "var(--sl-color-primary-500)",
67
+ borderRadius: "50%",
68
+ position: "relative",
69
+ left: "47%",
70
+ top: "-85%",
71
+ },
72
+ "& .progress.bg:after": {
73
+ width: "0",
74
+ height: "0",
75
+ border: "none",
76
+ },
77
+ "& .progress.top": {
78
+ position: "relative",
79
+ top: "-40px",
80
+ },
81
+ "& .progress.top:after": {
82
+ top: "-16%",
83
+ },
84
+ "& .empty": {
85
+ display: "block",
86
+ textAlign: "center",
87
+ marginLeft: "-100px",
88
+ marginRight: "-100px",
89
+ },
90
+ "& .empty::after": {
91
+ content: '""',
92
+ width: "12px",
93
+ height: "12px",
94
+ border: "2px solid #E0E0E0",
95
+ margin: "-2px",
96
+ display: "flex",
97
+ backgroundColor: "white",
98
+ borderRadius: "50%",
99
+ position: "relative",
100
+ left: "47%",
101
+ top: "-85%",
102
+ },
103
+ "& .empty.bg:after": {
104
+ width: "0",
105
+ height: "0",
106
+ border: "none",
107
+ },
108
+ "& .remain:after": {
109
+ content: '""',
110
+ display: "flex",
111
+ width: "100%",
112
+ height: "4px",
113
+ borderRadius: "4px",
114
+ backgroundColor: "#E0E0E0",
115
+ },
116
+ "& .gift.bw": {
117
+ filter: "grayscale(100%)",
118
+ },
119
+ "& .gift.start": {
120
+ transform: "scale(80%)",
121
+ top: "-20px",
122
+ },
123
+ "& .gift": {
124
+ textAlign: "center",
125
+ marginLeft: "-100px",
126
+ marginRight: "-100px",
127
+ position: "relative",
128
+ display: "list-item",
129
+ listStyleType: "none",
130
+ top: "-18px",
131
+ filter: goal <= progress ? "" : "grayscale(100%)",
132
+ zIndex: "1",
133
+ },
134
+ },
135
+ };
136
+ jss.setup(preset());
137
+ const sheet = jss.createStyleSheet(style);
138
+ const styleString = sheet.toString();
139
+ return (h("div", { class: sheet.classes.ProgressBar },
140
+ h("style", { type: "text/css" }, styleString),
141
+ h("div", { class: repetitions > 1 ? "progress-bar repeatable-steps" : "progress-bar" }, items)));
142
+ function clamp(x, min, max) {
143
+ return Math.min(Math.max(x, min), max);
144
+ }
145
+ function addLinear() {
146
+ const ratio = progress / goal;
147
+ columns =
148
+ clamp(ratio, 0, 1) + "fr 0fr " + clamp(1 - ratio, 0, 1) + "fr 0fr 0fr";
149
+ items.push(h("div", { class: "filled" }));
150
+ items.push(h("div", { class: clamp(progress, 0, goal) == goal ? "progress top bg" : "progress top" }, clamp(progress, 0, goal) == goal
151
+ ? ""
152
+ : progressBarUnit + clamp(progress, 0, goal)));
153
+ items.push(h("div", { class: "remain" }));
154
+ items.push(h("div", { class: "progress bg" }, goal));
155
+ items.push(h("div", { class: "gift" }, gift1));
156
+ }
157
+ function addSteps() {
158
+ let ratio = 1 / goal;
159
+ for (let i = 1; i < goal; i++) {
160
+ columns += ratio + "fr 0fr ";
161
+ if (i > progress) {
162
+ items.push(h("div", { class: "remain" }));
163
+ items.push(h("div", { class: "empty" }, i));
164
+ }
165
+ else {
166
+ items.push(h("div", { class: "filled" }));
167
+ items.push(h("div", { class: "progress" }, i));
168
+ }
169
+ }
170
+ columns += ratio + "fr 0fr ";
171
+ // reward success
172
+ if (goal <= progress) {
173
+ columns += "0fr ";
174
+ items.push(h("div", { class: "filled" }));
175
+ items.push(h("div", { class: "progress bg" }, goal));
176
+ items.push(h("div", { class: "gift" }, gift1));
177
+ }
178
+ // reward fail
179
+ else {
180
+ columns += "0fr ";
181
+ items.push(h("div", { class: "remain" }));
182
+ items.push(h("div", { class: "empty bg" }, goal));
183
+ items.push(h("div", { class: "gift" }, gift1));
184
+ }
185
+ }
186
+ function addLinearRepeatable() {
187
+ let repetitions = Math.floor(progress / goal);
188
+ let ratio = ((progress % goal) / goal) * 0.5;
189
+ // 0 repetition
190
+ if (repetitions == 0) {
191
+ columns = ratio + "fr 0fr " + (0.5 - ratio) + "fr 0fr 0fr 0.5fr 0fr 0fr";
192
+ items.push(h("div", { class: "filled" }));
193
+ items.push(h("div", { class: progress == goal ? "progress top bg" : "progress top" }, progressBarUnit + progress));
194
+ items.push(h("div", { class: "remain" }));
195
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal));
196
+ items.push(h("div", { class: "gift" }, gift1));
197
+ items.push(h("div", { class: "remain" }));
198
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * 2));
199
+ items.push(h("div", { class: "gift bw" }, gift2));
200
+ }
201
+ // single repetition
202
+ else if (repetitions == 1) {
203
+ columns =
204
+ "0.5fr 0fr 0fr " + ratio + "fr 0fr " + (0.5 - ratio) + "fr 0fr 0fr";
205
+ items.push(h("div", { class: "filled" }));
206
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal));
207
+ items.push(h("div", { class: "gift" }, gift1));
208
+ items.push(h("div", { class: "filled" }));
209
+ items.push(h("div", { class: progress == goal ? "progress top bg" : "progress top" }, progress == goal ? "" : progressBarUnit + progress));
210
+ items.push(h("div", { class: "remain" }));
211
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * 2));
212
+ items.push(h("div", { class: "gift bw" }, gift2));
213
+ }
214
+ // multiple repetitions
215
+ else {
216
+ columns =
217
+ "0fr 0fr 0.5fr 0fr 0fr " +
218
+ ratio +
219
+ "fr 0fr " +
220
+ (0.5 - ratio) +
221
+ "fr 0fr 0fr";
222
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * (repetitions - 1)));
223
+ items.push(h("div", { class: "gift start" }, gift1));
224
+ items.push(h("div", { class: "filled" }));
225
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * repetitions));
226
+ items.push(h("div", { class: "gift" }, gift2));
227
+ items.push(h("div", { class: "filled" }));
228
+ items.push(h("div", { class: progress == goal * repetitions ? "progress top bg" : "progress top" }, progress == goal * repetitions ? "" : progressBarUnit + progress));
229
+ items.push(h("div", { class: "remain" }));
230
+ items.push(h("div", { class: "progress bg" }, progressBarUnit + goal * (repetitions + 1)));
231
+ items.push(h("div", { class: "gift bw" }, gift3));
232
+ }
233
+ }
234
+ function addStepsRepeatable() {
235
+ let repetitions = Math.floor(progress / goal);
236
+ // no or single repetition
237
+ if (repetitions < 2) {
238
+ let ratio = 1 / goal;
239
+ for (let i = 1; i < goal * 2 + 1; i++) {
240
+ columns += ratio + "fr 0fr ";
241
+ if (i > progress) {
242
+ if (i == goal) {
243
+ columns += "0fr ";
244
+ items.push(h("div", { class: "remain" }));
245
+ items.push(h("div", { class: "empty bg" }, goal));
246
+ items.push(h("div", { class: "gift bw" }, gift1));
247
+ }
248
+ else if (i == goal * 2) {
249
+ columns += "0fr 0fr";
250
+ items.push(h("div", { class: "remain" }));
251
+ items.push(h("div", { class: "empty bg" }, goal * 2));
252
+ items.push(h("div", { class: "gift bw" }, gift2));
253
+ }
254
+ else {
255
+ items.push(h("div", { class: "remain" }));
256
+ items.push(h("div", { class: "empty" }, progressBarUnit + i));
257
+ }
258
+ }
259
+ else if (i == goal) {
260
+ columns += "0fr ";
261
+ items.push(h("div", { class: "filled" }));
262
+ items.push(h("div", { class: "progress bg" }, i));
263
+ items.push(h("div", { class: "gift" }, gift3));
264
+ }
265
+ else {
266
+ items.push(h("div", { class: "filled" }));
267
+ items.push(h("div", { class: "progress" }, i));
268
+ }
269
+ }
270
+ }
271
+ // case repetition many
272
+ else {
273
+ let position = (progress % goal) + goal;
274
+ let ratio = 1 / goal;
275
+ columns += "0fr 0fr ";
276
+ items.push(h("div", { class: "progress bg" }, goal * (repetitions - 1)));
277
+ items.push(h("div", { class: "gift start" }, gift1));
278
+ for (let i = 1; i < goal * 2 + 1; i++) {
279
+ columns += ratio + "fr 0fr ";
280
+ if (i <= goal) {
281
+ if (i == goal) {
282
+ columns += "0fr ";
283
+ items.push(h("div", { class: "filled" }));
284
+ items.push(h("div", { class: "progress bg" }, i + goal * (repetitions - 1)));
285
+ items.push(h("div", { class: "gift" }, gift2));
286
+ }
287
+ else {
288
+ items.push(h("div", { class: "filled" }));
289
+ items.push(h("div", { class: "progress" }, i + goal * (repetitions - 1)));
290
+ }
291
+ }
292
+ else if (i > position) {
293
+ if (i == goal * 2) {
294
+ columns += "0fr 0fr";
295
+ items.push(h("div", { class: "remain" }));
296
+ items.push(h("div", { class: "empty bg" }, i + goal * (repetitions - 1)));
297
+ items.push(h("div", { class: "gift bw" }, gift3));
298
+ }
299
+ else {
300
+ items.push(h("div", { class: "remain" }));
301
+ items.push(h("div", { class: "empty" }, i + goal * (repetitions - 1)));
302
+ }
303
+ }
304
+ else {
305
+ items.push(h("div", { class: "filled" }));
306
+ items.push(h("div", { class: "progress" }, i + goal * (repetitions - 1)));
307
+ }
308
+ }
309
+ }
310
+ }
311
+ }
@@ -0,0 +1,53 @@
1
+ import { h } from "@stencil/core";
2
+ import { MatrixStory } from "../Matrix";
3
+ import { ProgressBarView } from "./progress-bar-view";
4
+ import scenario from "./progress-bar.feature";
5
+ export default {
6
+ title: "Components/Task Card Progress Bar",
7
+ parameters: {
8
+ scenario,
9
+ },
10
+ };
11
+ export const Default = () => {
12
+ return h(ProgressBarView, null);
13
+ };
14
+ export const ProgressBar = () => {
15
+ const props = {
16
+ progress: 0,
17
+ goal: 500,
18
+ progressBarUnit: "$",
19
+ };
20
+ return (h("div", null,
21
+ h(MatrixStory, { matrix: { progress: [-100, 0, 100, 500, 1000] }, props: props, Component: ProgressBarView })));
22
+ };
23
+ export const ProgressBarSteps = () => {
24
+ const props = {
25
+ progress: 0,
26
+ steps: true,
27
+ goal: 5,
28
+ progressBarUnit: "$",
29
+ };
30
+ return (h("div", null,
31
+ h(MatrixStory, { matrix: { progress: [-1, 0, 1, 5, 7] }, props: props, Component: ProgressBarView })));
32
+ };
33
+ export const ProgressBarRepeatable = () => {
34
+ const props = {
35
+ progress: 0,
36
+ goal: 500,
37
+ progressBarUnit: "$",
38
+ repeatable: true,
39
+ };
40
+ return (h("div", null,
41
+ h(MatrixStory, { matrix: { progress: [100, 500, 650, 1200] }, props: props, Component: ProgressBarView })));
42
+ };
43
+ export const ProgressBarStepsRepeatable = () => {
44
+ const props = {
45
+ progress: 0,
46
+ steps: true,
47
+ goal: 5,
48
+ progressBarUnit: "$",
49
+ repeatable: true,
50
+ };
51
+ return (h("div", null,
52
+ h(MatrixStory, { matrix: { progress: [1, 5, 7, 12] }, props: props, Component: ProgressBarView })));
53
+ };
@@ -0,0 +1,173 @@
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
+ export function TaskCardView(props) {
8
+ const { rewardAmount, cardTitle, description, showProgressBar, progress = 0, goal, rewardUnit, repeatable, showExpiry, dateExpires, buttonText, buttonLink, loading, } = props;
9
+ console.log({ props });
10
+ const checkmark_circle = SVGs.checkmark_circle();
11
+ const arrow_left_right = SVGs.arrow_left_right();
12
+ const style = {
13
+ HostBlock: HostBlock,
14
+ TaskCard: {
15
+ "& .main > div": {
16
+ margin: "var(--sl-spacing-medium)",
17
+ },
18
+ "& .main": {
19
+ position: "relative",
20
+ boxSizing: "border-box",
21
+ minWidth: "347px",
22
+ background: "var(--sl-color-white)",
23
+ border: "1px solid var(--sl-color-gray-300)",
24
+ borderRadius: "var(--sl-border-radius-medium)",
25
+ fontSize: "var(--sl-font-size-small)",
26
+ lineHeight: "var(--sl-line-height-dense)",
27
+ },
28
+ "& .main.complete": {
29
+ background: "var(--sl-color-success-50)",
30
+ borderColor: "var(--sl-color-success-700)",
31
+ },
32
+ },
33
+ Header: {
34
+ display: "flex",
35
+ "& .icon": {
36
+ alignSelf: "center",
37
+ lineHeight: "0",
38
+ color: "var(--sl-color-success-700)",
39
+ fontSize: "var(--sl-font-size-large)",
40
+ marginRight: "var(--sl-spacing-x-small)",
41
+ },
42
+ "& .value": {
43
+ alignSelf: "center",
44
+ color: "var(--sl-color-black)",
45
+ fontSize: "var(--sl-font-size-x-large)",
46
+ fontWeight: "var(--sl-font-weight-semibold)",
47
+ lineHeight: "100%",
48
+ marginRight: "var(--sl-spacing-xx-small)",
49
+ },
50
+ "& .text": {
51
+ alignSelf: "end",
52
+ textTransform: "uppercase",
53
+ color: "var(--sl-color-gray-600)",
54
+ fontSize: "var(--sl-font-size-x-small)",
55
+ lineHeight: "var(--sl-font-size-medium)",
56
+ marginRight: "var(--sl-spacing-xx-small)",
57
+ },
58
+ },
59
+ Title: {
60
+ color: "var(--sl-color-black)",
61
+ fontSize: "var(--sl-font-size-small)",
62
+ fontWeight: "var(--sl-font-weight-semibold)",
63
+ },
64
+ Footer: {
65
+ display: "flex",
66
+ "& .icon": {
67
+ fontSize: "var(--sl-font-size-xx-small)",
68
+ marginRight: "var(--sl-spacing-xx-small)",
69
+ },
70
+ "& .text": {
71
+ marginTop: "auto",
72
+ verticalAlign: "text-bottom",
73
+ fontSize: "var(--sl-font-size-x-small)",
74
+ color: "var(--sl-color-gray-600)",
75
+ },
76
+ "& .success": {
77
+ color: "var(--sl-color-success-600)!important",
78
+ fontWeight: "var(--sl-font-weight-semibold)",
79
+ },
80
+ "& .action": {
81
+ marginTop: "auto",
82
+ marginLeft: "auto",
83
+ },
84
+ "& sl-button.action::part(base) ": {
85
+ color: "var(--sl-color-white)",
86
+ background: "var(--sl-color-primary-500)",
87
+ border: "1px solid var(--sl-color-primary-500)",
88
+ borderRadius: "var(--sl-border-radius-medium)",
89
+ },
90
+ "& sl-button.action.completed::part(base) ": {
91
+ border: "1px solid var(--sl-color-gray-300)!important",
92
+ background: "var(--sl-color-gray-300)!important",
93
+ },
94
+ },
95
+ };
96
+ jss.setup(preset());
97
+ const sheet = jss.createStyleSheet(style);
98
+ const styleString = sheet.toString();
99
+ const showComplete = progress >= goal;
100
+ const repetitions = showProgressBar ? Math.floor(progress / goal) : progress;
101
+ const taskComplete = showComplete && repeatable === false;
102
+ console.log({ showProgressBar, loading });
103
+ return (h("div", { class: sheet.classes.TaskCard },
104
+ h("div", { class: showComplete ? "main complete" : "main" },
105
+ h("style", { type: "text/css" }, styleString),
106
+ h("div", { class: sheet.classes.Header },
107
+ showComplete && h("span", { class: "icon" }, checkmark_circle),
108
+ h("span", { class: "value" }, rewardAmount),
109
+ h("span", { class: "text" }, rewardUnit)),
110
+ h("div", { class: sheet.classes.Title }, cardTitle),
111
+ h(Details, { description: description }),
112
+ showProgressBar && loading ? (h("sl-skeleton", { style: { width: "98%", margin: "0 auto" } })) : (showProgressBar && h(ProgressBarView, Object.assign({}, props, { complete: taskComplete }))),
113
+ h("div", { class: sheet.classes.Footer },
114
+ h("span", { class: "text" },
115
+ repeatable && (h("div", null,
116
+ h("span", { class: repetitions > 0 ? "icon success" : "icon" }, arrow_left_right),
117
+ h("span", { class: repetitions > 0 ? "success" : "" },
118
+ "Completed ",
119
+ repetitions,
120
+ " times"))),
121
+ showExpiry && (h("span", null,
122
+ "Ends ",
123
+ " ",
124
+ dateExpires))),
125
+ h("sl-button", { class: taskComplete ? "action completed" : "action", size: "small", onClick: () => window.open(buttonLink), disabled: taskComplete }, buttonText)))));
126
+ }
127
+ function Details(props) {
128
+ const style = {
129
+ Description: {
130
+ "& input[type=checkbox]": {
131
+ display: "none",
132
+ },
133
+ "& input:checked ~ .details": {
134
+ transform: "rotate(-180deg)",
135
+ },
136
+ "& .details": {
137
+ position: "absolute",
138
+ top: "var(--sl-spacing-medium)",
139
+ right: "var(--sl-spacing-medium)",
140
+ color: "var(--sl-color-gray-700)",
141
+ fontSize: "var(--sl-font-size-large)",
142
+ "& :hover": {
143
+ color: "var(--sl-color-primary-700)",
144
+ },
145
+ transformOrigin: "50% 37%",
146
+ transition: "transform var(--sl-transition-medium) ease",
147
+ },
148
+ "& input:checked ~ .summary": {
149
+ transition: "max-height var(--sl-transition-medium) ease",
150
+ maxHeight: "300px",
151
+ },
152
+ "& .summary": {
153
+ display: "block",
154
+ overflow: "hidden",
155
+ color: "var(--sl-color-gray-700)",
156
+ fontSize: "var(--sl-font-size-x-small)",
157
+ maxHeight: "0px",
158
+ transition: "max-height var(--sl-transition-fast) ease-out",
159
+ },
160
+ },
161
+ };
162
+ jss.setup(preset());
163
+ const sheet = jss.createStyleSheet(style);
164
+ const styleString = sheet.toString();
165
+ const rid = Math.random().toString(36).slice(2);
166
+ return (h("div", null,
167
+ h("style", { type: "text/css" }, styleString),
168
+ h("span", { class: sheet.classes.Description },
169
+ h("input", { type: "checkbox", id: "details-" + rid }),
170
+ h("label", { class: "details", htmlFor: "details-" + rid },
171
+ h("sl-icon", { name: "chevron-down" })),
172
+ h("span", { class: "summary" }, props.description))));
173
+ }