@purpur/library 9.8.1 → 9.9.0

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 (939) hide show
  1. package/CHANGELOG.json +57 -0
  2. package/CHANGELOG.md +23 -1
  3. package/dist/{autocomplete-CcVDJbwS.js → autocomplete-C6FXaaAT.js} +2 -2
  4. package/dist/{autocomplete-CcVDJbwS.js.map → autocomplete-C6FXaaAT.js.map} +1 -1
  5. package/dist/{autocomplete-DF17Zm7Q.mjs → autocomplete-q4ObPRfM.mjs} +2 -2
  6. package/dist/{autocomplete-DF17Zm7Q.mjs.map → autocomplete-q4ObPRfM.mjs.map} +1 -1
  7. package/dist/autocomplete.cjs.js +1 -1
  8. package/dist/autocomplete.es.js +1 -1
  9. package/dist/button-4-yWOgtD.mjs.map +1 -1
  10. package/dist/button-DmybVApa.js.map +1 -1
  11. package/dist/{comparison-table-DQJL1IVC.mjs → comparison-table-D1evE0ri.mjs} +77 -77
  12. package/dist/{comparison-table-DQJL1IVC.mjs.map → comparison-table-D1evE0ri.mjs.map} +1 -1
  13. package/dist/{comparison-table-DHFpydbq.js → comparison-table-Dtqxz8vL.js} +2 -2
  14. package/dist/{comparison-table-DHFpydbq.js.map → comparison-table-Dtqxz8vL.js.map} +1 -1
  15. package/dist/comparison-table.cjs.js +1 -1
  16. package/dist/comparison-table.es.js +1 -1
  17. package/dist/components/button/src/button.d.ts +3 -22
  18. package/dist/components/button/src/button.d.ts.map +1 -1
  19. package/dist/components/counter-badge/src/counter-badge.visual.fixtures.d.ts +13 -0
  20. package/dist/components/counter-badge/src/counter-badge.visual.fixtures.d.ts.map +1 -0
  21. package/dist/components/cta-link/src/cta-link.d.ts +6 -4
  22. package/dist/components/cta-link/src/cta-link.d.ts.map +1 -1
  23. package/dist/components/cta-link/src/cta-link.visual.fixtures.d.ts +14 -0
  24. package/dist/components/cta-link/src/cta-link.visual.fixtures.d.ts.map +1 -0
  25. package/dist/components/date-field/src/date-field.visual.fixtures.d.ts +14 -0
  26. package/dist/components/date-field/src/date-field.visual.fixtures.d.ts.map +1 -0
  27. package/dist/components/icon/src/all-icon-components.d.ts +3 -0
  28. package/dist/components/icon/src/all-icon-components.d.ts.map +1 -1
  29. package/dist/components/icon/src/all-icons.d.ts +3 -0
  30. package/dist/components/icon/src/all-icons.d.ts.map +1 -1
  31. package/dist/components/icon/src/assets/moon.d.ts +7 -0
  32. package/dist/components/icon/src/assets/moon.d.ts.map +1 -0
  33. package/dist/components/icon/src/assets/sun.d.ts +7 -0
  34. package/dist/components/icon/src/assets/sun.d.ts.map +1 -0
  35. package/dist/components/icon/src/assets/unpin.d.ts +7 -0
  36. package/dist/components/icon/src/assets/unpin.d.ts.map +1 -0
  37. package/dist/components/icon/src/components/moon.d.ts +7 -0
  38. package/dist/components/icon/src/components/moon.d.ts.map +1 -0
  39. package/dist/components/icon/src/components/sun.d.ts +7 -0
  40. package/dist/components/icon/src/components/sun.d.ts.map +1 -0
  41. package/dist/components/icon/src/components/unpin.d.ts +7 -0
  42. package/dist/components/icon/src/components/unpin.d.ts.map +1 -0
  43. package/dist/components/icon/src/icon-imports.d.ts +18 -0
  44. package/dist/components/icon/src/icon-imports.d.ts.map +1 -1
  45. package/dist/components/illustrative-icon/src/all-animated-illustrative-icon-components.d.ts +34 -0
  46. package/dist/components/illustrative-icon/src/all-animated-illustrative-icon-components.d.ts.map +1 -1
  47. package/dist/components/illustrative-icon/src/all-static-illustrative-icon-components.d.ts +36 -0
  48. package/dist/components/illustrative-icon/src/all-static-illustrative-icon-components.d.ts.map +1 -1
  49. package/dist/components/illustrative-icon/src/assets/accessories-duocolor-static.d.ts +4 -0
  50. package/dist/components/illustrative-icon/src/assets/accessories-duocolor-static.d.ts.map +1 -0
  51. package/dist/components/illustrative-icon/src/assets/accessories-offblack-static.d.ts +4 -0
  52. package/dist/components/illustrative-icon/src/assets/accessories-offblack-static.d.ts.map +1 -0
  53. package/dist/components/illustrative-icon/src/assets/bag-duocolor-static.d.ts +4 -0
  54. package/dist/components/illustrative-icon/src/assets/bag-duocolor-static.d.ts.map +1 -0
  55. package/dist/components/illustrative-icon/src/assets/bag-offblack-static.d.ts +4 -0
  56. package/dist/components/illustrative-icon/src/assets/bag-offblack-static.d.ts.map +1 -0
  57. package/dist/components/illustrative-icon/src/assets/bag-plus-duocolor-static.d.ts +4 -0
  58. package/dist/components/illustrative-icon/src/assets/bag-plus-duocolor-static.d.ts.map +1 -0
  59. package/dist/components/illustrative-icon/src/assets/bag-plus-offblack-static.d.ts +4 -0
  60. package/dist/components/illustrative-icon/src/assets/bag-plus-offblack-static.d.ts.map +1 -0
  61. package/dist/components/illustrative-icon/src/assets/box-sync-duocolor-static.d.ts +4 -0
  62. package/dist/components/illustrative-icon/src/assets/box-sync-duocolor-static.d.ts.map +1 -0
  63. package/dist/components/illustrative-icon/src/assets/box-sync-offblack-static.d.ts +4 -0
  64. package/dist/components/illustrative-icon/src/assets/box-sync-offblack-static.d.ts.map +1 -0
  65. package/dist/components/illustrative-icon/src/assets/display-protection-duocolor-static.d.ts +4 -0
  66. package/dist/components/illustrative-icon/src/assets/display-protection-duocolor-static.d.ts.map +1 -0
  67. package/dist/components/illustrative-icon/src/assets/display-protection-offblack-static.d.ts +4 -0
  68. package/dist/components/illustrative-icon/src/assets/display-protection-offblack-static.d.ts.map +1 -0
  69. package/dist/components/illustrative-icon/src/assets/enrollment-duocolor-static.d.ts +4 -0
  70. package/dist/components/illustrative-icon/src/assets/enrollment-duocolor-static.d.ts.map +1 -0
  71. package/dist/components/illustrative-icon/src/assets/enrollment-offblack-static.d.ts +4 -0
  72. package/dist/components/illustrative-icon/src/assets/enrollment-offblack-static.d.ts.map +1 -0
  73. package/dist/components/illustrative-icon/src/assets/gift-box-duocolor-static.d.ts +4 -0
  74. package/dist/components/illustrative-icon/src/assets/gift-box-duocolor-static.d.ts.map +1 -0
  75. package/dist/components/illustrative-icon/src/assets/gift-box-offblack-static.d.ts +4 -0
  76. package/dist/components/illustrative-icon/src/assets/gift-box-offblack-static.d.ts.map +1 -0
  77. package/dist/components/illustrative-icon/src/assets/gift-box-plus-duocolor-static.d.ts +4 -0
  78. package/dist/components/illustrative-icon/src/assets/gift-box-plus-duocolor-static.d.ts.map +1 -0
  79. package/dist/components/illustrative-icon/src/assets/gift-box-plus-offblack-static.d.ts +4 -0
  80. package/dist/components/illustrative-icon/src/assets/gift-box-plus-offblack-static.d.ts.map +1 -0
  81. package/dist/components/illustrative-icon/src/assets/info-letter-duocolor-static.d.ts +4 -0
  82. package/dist/components/illustrative-icon/src/assets/info-letter-duocolor-static.d.ts.map +1 -0
  83. package/dist/components/illustrative-icon/src/assets/info-letter-offblack-static.d.ts +4 -0
  84. package/dist/components/illustrative-icon/src/assets/info-letter-offblack-static.d.ts.map +1 -0
  85. package/dist/components/illustrative-icon/src/assets/leaf-duocolor-static.d.ts +4 -0
  86. package/dist/components/illustrative-icon/src/assets/leaf-duocolor-static.d.ts.map +1 -0
  87. package/dist/components/illustrative-icon/src/assets/leaf-offblack-static.d.ts +4 -0
  88. package/dist/components/illustrative-icon/src/assets/leaf-offblack-static.d.ts.map +1 -0
  89. package/dist/components/illustrative-icon/src/assets/number-tranfer-duocolor-static.d.ts +4 -0
  90. package/dist/components/illustrative-icon/src/assets/number-tranfer-duocolor-static.d.ts.map +1 -0
  91. package/dist/components/illustrative-icon/src/assets/number-tranfer-offblack-static.d.ts +4 -0
  92. package/dist/components/illustrative-icon/src/assets/number-tranfer-offblack-static.d.ts.map +1 -0
  93. package/dist/components/illustrative-icon/src/assets/page-duocolor-static.d.ts +4 -0
  94. package/dist/components/illustrative-icon/src/assets/page-duocolor-static.d.ts.map +1 -0
  95. package/dist/components/illustrative-icon/src/assets/page-offblack-static.d.ts +4 -0
  96. package/dist/components/illustrative-icon/src/assets/page-offblack-static.d.ts.map +1 -0
  97. package/dist/components/illustrative-icon/src/assets/phone-repair-duocolor-static.d.ts +4 -0
  98. package/dist/components/illustrative-icon/src/assets/phone-repair-duocolor-static.d.ts.map +1 -0
  99. package/dist/components/illustrative-icon/src/assets/phone-repair-offblack-static.d.ts +4 -0
  100. package/dist/components/illustrative-icon/src/assets/phone-repair-offblack-static.d.ts.map +1 -0
  101. package/dist/components/illustrative-icon/src/assets/phone-settings-duocolor-static.d.ts +4 -0
  102. package/dist/components/illustrative-icon/src/assets/phone-settings-duocolor-static.d.ts.map +1 -0
  103. package/dist/components/illustrative-icon/src/assets/phone-settings-offblack-static.d.ts +4 -0
  104. package/dist/components/illustrative-icon/src/assets/phone-settings-offblack-static.d.ts.map +1 -0
  105. package/dist/components/illustrative-icon/src/assets/return-label-duocolor-static.d.ts +4 -0
  106. package/dist/components/illustrative-icon/src/assets/return-label-duocolor-static.d.ts.map +1 -0
  107. package/dist/components/illustrative-icon/src/assets/return-label-offblack-static.d.ts +4 -0
  108. package/dist/components/illustrative-icon/src/assets/return-label-offblack-static.d.ts.map +1 -0
  109. package/dist/components/illustrative-icon/src/assets/settings-pen-duocolor-static.d.ts +4 -0
  110. package/dist/components/illustrative-icon/src/assets/settings-pen-duocolor-static.d.ts.map +1 -0
  111. package/dist/components/illustrative-icon/src/assets/settings-pen-offblack-static.d.ts +4 -0
  112. package/dist/components/illustrative-icon/src/assets/settings-pen-offblack-static.d.ts.map +1 -0
  113. package/dist/components/illustrative-icon/src/assets/shield-time-duocolor-static.d.ts +4 -0
  114. package/dist/components/illustrative-icon/src/assets/shield-time-duocolor-static.d.ts.map +1 -0
  115. package/dist/components/illustrative-icon/src/assets/shield-time-offblack-static.d.ts +4 -0
  116. package/dist/components/illustrative-icon/src/assets/shield-time-offblack-static.d.ts.map +1 -0
  117. package/dist/components/illustrative-icon/src/assets/user-duocolor-static.d.ts +4 -0
  118. package/dist/components/illustrative-icon/src/assets/user-duocolor-static.d.ts.map +1 -0
  119. package/dist/components/illustrative-icon/src/assets/user-offblack-static.d.ts +4 -0
  120. package/dist/components/illustrative-icon/src/assets/user-offblack-static.d.ts.map +1 -0
  121. package/dist/components/illustrative-icon/src/components/accessories-duocolor-animated.d.ts +7 -0
  122. package/dist/components/illustrative-icon/src/components/accessories-duocolor-animated.d.ts.map +1 -0
  123. package/dist/components/illustrative-icon/src/components/accessories-duocolor-static.d.ts +7 -0
  124. package/dist/components/illustrative-icon/src/components/accessories-duocolor-static.d.ts.map +1 -0
  125. package/dist/components/illustrative-icon/src/components/accessories-offblack-animated.d.ts +7 -0
  126. package/dist/components/illustrative-icon/src/components/accessories-offblack-animated.d.ts.map +1 -0
  127. package/dist/components/illustrative-icon/src/components/accessories-offblack-static.d.ts +7 -0
  128. package/dist/components/illustrative-icon/src/components/accessories-offblack-static.d.ts.map +1 -0
  129. package/dist/components/illustrative-icon/src/components/bag-duocolor-animated.d.ts +7 -0
  130. package/dist/components/illustrative-icon/src/components/bag-duocolor-animated.d.ts.map +1 -0
  131. package/dist/components/illustrative-icon/src/components/bag-duocolor-static.d.ts +7 -0
  132. package/dist/components/illustrative-icon/src/components/bag-duocolor-static.d.ts.map +1 -0
  133. package/dist/components/illustrative-icon/src/components/bag-offblack-animated.d.ts +7 -0
  134. package/dist/components/illustrative-icon/src/components/bag-offblack-animated.d.ts.map +1 -0
  135. package/dist/components/illustrative-icon/src/components/bag-offblack-static.d.ts +7 -0
  136. package/dist/components/illustrative-icon/src/components/bag-offblack-static.d.ts.map +1 -0
  137. package/dist/components/illustrative-icon/src/components/bag-plus-duocolor-animated.d.ts +7 -0
  138. package/dist/components/illustrative-icon/src/components/bag-plus-duocolor-animated.d.ts.map +1 -0
  139. package/dist/components/illustrative-icon/src/components/bag-plus-duocolor-static.d.ts +7 -0
  140. package/dist/components/illustrative-icon/src/components/bag-plus-duocolor-static.d.ts.map +1 -0
  141. package/dist/components/illustrative-icon/src/components/bag-plus-offblack-animated.d.ts +7 -0
  142. package/dist/components/illustrative-icon/src/components/bag-plus-offblack-animated.d.ts.map +1 -0
  143. package/dist/components/illustrative-icon/src/components/bag-plus-offblack-static.d.ts +7 -0
  144. package/dist/components/illustrative-icon/src/components/bag-plus-offblack-static.d.ts.map +1 -0
  145. package/dist/components/illustrative-icon/src/components/box-sync-duocolor-animated.d.ts +7 -0
  146. package/dist/components/illustrative-icon/src/components/box-sync-duocolor-animated.d.ts.map +1 -0
  147. package/dist/components/illustrative-icon/src/components/box-sync-duocolor-static.d.ts +7 -0
  148. package/dist/components/illustrative-icon/src/components/box-sync-duocolor-static.d.ts.map +1 -0
  149. package/dist/components/illustrative-icon/src/components/box-sync-offblack-animated.d.ts +7 -0
  150. package/dist/components/illustrative-icon/src/components/box-sync-offblack-animated.d.ts.map +1 -0
  151. package/dist/components/illustrative-icon/src/components/box-sync-offblack-static.d.ts +7 -0
  152. package/dist/components/illustrative-icon/src/components/box-sync-offblack-static.d.ts.map +1 -0
  153. package/dist/components/illustrative-icon/src/components/display-protection-duocolor-animated.d.ts +7 -0
  154. package/dist/components/illustrative-icon/src/components/display-protection-duocolor-animated.d.ts.map +1 -0
  155. package/dist/components/illustrative-icon/src/components/display-protection-duocolor-static.d.ts +7 -0
  156. package/dist/components/illustrative-icon/src/components/display-protection-duocolor-static.d.ts.map +1 -0
  157. package/dist/components/illustrative-icon/src/components/display-protection-offblack-animated.d.ts +7 -0
  158. package/dist/components/illustrative-icon/src/components/display-protection-offblack-animated.d.ts.map +1 -0
  159. package/dist/components/illustrative-icon/src/components/display-protection-offblack-static.d.ts +7 -0
  160. package/dist/components/illustrative-icon/src/components/display-protection-offblack-static.d.ts.map +1 -0
  161. package/dist/components/illustrative-icon/src/components/enrollment-duocolor-animated.d.ts +7 -0
  162. package/dist/components/illustrative-icon/src/components/enrollment-duocolor-animated.d.ts.map +1 -0
  163. package/dist/components/illustrative-icon/src/components/enrollment-duocolor-static.d.ts +7 -0
  164. package/dist/components/illustrative-icon/src/components/enrollment-duocolor-static.d.ts.map +1 -0
  165. package/dist/components/illustrative-icon/src/components/enrollment-offblack-animated.d.ts +7 -0
  166. package/dist/components/illustrative-icon/src/components/enrollment-offblack-animated.d.ts.map +1 -0
  167. package/dist/components/illustrative-icon/src/components/enrollment-offblack-static.d.ts +7 -0
  168. package/dist/components/illustrative-icon/src/components/enrollment-offblack-static.d.ts.map +1 -0
  169. package/dist/components/illustrative-icon/src/components/gift-box-duocolor-animated.d.ts +7 -0
  170. package/dist/components/illustrative-icon/src/components/gift-box-duocolor-animated.d.ts.map +1 -0
  171. package/dist/components/illustrative-icon/src/components/gift-box-duocolor-static.d.ts +7 -0
  172. package/dist/components/illustrative-icon/src/components/gift-box-duocolor-static.d.ts.map +1 -0
  173. package/dist/components/illustrative-icon/src/components/gift-box-offblack-animated.d.ts +7 -0
  174. package/dist/components/illustrative-icon/src/components/gift-box-offblack-animated.d.ts.map +1 -0
  175. package/dist/components/illustrative-icon/src/components/gift-box-offblack-static.d.ts +7 -0
  176. package/dist/components/illustrative-icon/src/components/gift-box-offblack-static.d.ts.map +1 -0
  177. package/dist/components/illustrative-icon/src/components/gift-box-plus-duocolor-animated.d.ts +7 -0
  178. package/dist/components/illustrative-icon/src/components/gift-box-plus-duocolor-animated.d.ts.map +1 -0
  179. package/dist/components/illustrative-icon/src/components/gift-box-plus-duocolor-static.d.ts +7 -0
  180. package/dist/components/illustrative-icon/src/components/gift-box-plus-duocolor-static.d.ts.map +1 -0
  181. package/dist/components/illustrative-icon/src/components/gift-box-plus-offblack-animated.d.ts +7 -0
  182. package/dist/components/illustrative-icon/src/components/gift-box-plus-offblack-animated.d.ts.map +1 -0
  183. package/dist/components/illustrative-icon/src/components/gift-box-plus-offblack-static.d.ts +7 -0
  184. package/dist/components/illustrative-icon/src/components/gift-box-plus-offblack-static.d.ts.map +1 -0
  185. package/dist/components/illustrative-icon/src/components/info-letter-duocolor-animated.d.ts +7 -0
  186. package/dist/components/illustrative-icon/src/components/info-letter-duocolor-animated.d.ts.map +1 -0
  187. package/dist/components/illustrative-icon/src/components/info-letter-duocolor-static.d.ts +7 -0
  188. package/dist/components/illustrative-icon/src/components/info-letter-duocolor-static.d.ts.map +1 -0
  189. package/dist/components/illustrative-icon/src/components/info-letter-offblack-animated.d.ts +7 -0
  190. package/dist/components/illustrative-icon/src/components/info-letter-offblack-animated.d.ts.map +1 -0
  191. package/dist/components/illustrative-icon/src/components/info-letter-offblack-static.d.ts +7 -0
  192. package/dist/components/illustrative-icon/src/components/info-letter-offblack-static.d.ts.map +1 -0
  193. package/dist/components/illustrative-icon/src/components/leaf-duocolor-animated.d.ts +7 -0
  194. package/dist/components/illustrative-icon/src/components/leaf-duocolor-animated.d.ts.map +1 -0
  195. package/dist/components/illustrative-icon/src/components/leaf-duocolor-static.d.ts +7 -0
  196. package/dist/components/illustrative-icon/src/components/leaf-duocolor-static.d.ts.map +1 -0
  197. package/dist/components/illustrative-icon/src/components/leaf-offblack-animated.d.ts +7 -0
  198. package/dist/components/illustrative-icon/src/components/leaf-offblack-animated.d.ts.map +1 -0
  199. package/dist/components/illustrative-icon/src/components/leaf-offblack-static.d.ts +7 -0
  200. package/dist/components/illustrative-icon/src/components/leaf-offblack-static.d.ts.map +1 -0
  201. package/dist/components/illustrative-icon/src/components/number-tranfer-duocolor-static.d.ts +7 -0
  202. package/dist/components/illustrative-icon/src/components/number-tranfer-duocolor-static.d.ts.map +1 -0
  203. package/dist/components/illustrative-icon/src/components/number-tranfer-offblack-static.d.ts +7 -0
  204. package/dist/components/illustrative-icon/src/components/number-tranfer-offblack-static.d.ts.map +1 -0
  205. package/dist/components/illustrative-icon/src/components/number-transfer-duocolor-animated.d.ts +7 -0
  206. package/dist/components/illustrative-icon/src/components/number-transfer-duocolor-animated.d.ts.map +1 -0
  207. package/dist/components/illustrative-icon/src/components/number-transfer-offblack-animated.d.ts +7 -0
  208. package/dist/components/illustrative-icon/src/components/number-transfer-offblack-animated.d.ts.map +1 -0
  209. package/dist/components/illustrative-icon/src/components/page-duocolor-static.d.ts +7 -0
  210. package/dist/components/illustrative-icon/src/components/page-duocolor-static.d.ts.map +1 -0
  211. package/dist/components/illustrative-icon/src/components/page-offblack-static.d.ts +7 -0
  212. package/dist/components/illustrative-icon/src/components/page-offblack-static.d.ts.map +1 -0
  213. package/dist/components/illustrative-icon/src/components/phone-repair-duocolor-animated.d.ts +7 -0
  214. package/dist/components/illustrative-icon/src/components/phone-repair-duocolor-animated.d.ts.map +1 -0
  215. package/dist/components/illustrative-icon/src/components/phone-repair-duocolor-static.d.ts +7 -0
  216. package/dist/components/illustrative-icon/src/components/phone-repair-duocolor-static.d.ts.map +1 -0
  217. package/dist/components/illustrative-icon/src/components/phone-repair-offblack-animated.d.ts +7 -0
  218. package/dist/components/illustrative-icon/src/components/phone-repair-offblack-animated.d.ts.map +1 -0
  219. package/dist/components/illustrative-icon/src/components/phone-repair-offblack-static.d.ts +7 -0
  220. package/dist/components/illustrative-icon/src/components/phone-repair-offblack-static.d.ts.map +1 -0
  221. package/dist/components/illustrative-icon/src/components/phone-settings-duocolor-animated.d.ts +7 -0
  222. package/dist/components/illustrative-icon/src/components/phone-settings-duocolor-animated.d.ts.map +1 -0
  223. package/dist/components/illustrative-icon/src/components/phone-settings-duocolor-static.d.ts +7 -0
  224. package/dist/components/illustrative-icon/src/components/phone-settings-duocolor-static.d.ts.map +1 -0
  225. package/dist/components/illustrative-icon/src/components/phone-settings-offblack-animated.d.ts +7 -0
  226. package/dist/components/illustrative-icon/src/components/phone-settings-offblack-animated.d.ts.map +1 -0
  227. package/dist/components/illustrative-icon/src/components/phone-settings-offblack-static.d.ts +7 -0
  228. package/dist/components/illustrative-icon/src/components/phone-settings-offblack-static.d.ts.map +1 -0
  229. package/dist/components/illustrative-icon/src/components/return-label-duocolor-animated.d.ts +7 -0
  230. package/dist/components/illustrative-icon/src/components/return-label-duocolor-animated.d.ts.map +1 -0
  231. package/dist/components/illustrative-icon/src/components/return-label-duocolor-static.d.ts +7 -0
  232. package/dist/components/illustrative-icon/src/components/return-label-duocolor-static.d.ts.map +1 -0
  233. package/dist/components/illustrative-icon/src/components/return-label-offblack-animated.d.ts +7 -0
  234. package/dist/components/illustrative-icon/src/components/return-label-offblack-animated.d.ts.map +1 -0
  235. package/dist/components/illustrative-icon/src/components/return-label-offblack-static.d.ts +7 -0
  236. package/dist/components/illustrative-icon/src/components/return-label-offblack-static.d.ts.map +1 -0
  237. package/dist/components/illustrative-icon/src/components/settings-pen-duocolor-animated.d.ts +7 -0
  238. package/dist/components/illustrative-icon/src/components/settings-pen-duocolor-animated.d.ts.map +1 -0
  239. package/dist/components/illustrative-icon/src/components/settings-pen-duocolor-static.d.ts +7 -0
  240. package/dist/components/illustrative-icon/src/components/settings-pen-duocolor-static.d.ts.map +1 -0
  241. package/dist/components/illustrative-icon/src/components/settings-pen-offblack-animated.d.ts +7 -0
  242. package/dist/components/illustrative-icon/src/components/settings-pen-offblack-animated.d.ts.map +1 -0
  243. package/dist/components/illustrative-icon/src/components/settings-pen-offblack-static.d.ts +7 -0
  244. package/dist/components/illustrative-icon/src/components/settings-pen-offblack-static.d.ts.map +1 -0
  245. package/dist/components/illustrative-icon/src/components/shield-time-duocolor-animated.d.ts +7 -0
  246. package/dist/components/illustrative-icon/src/components/shield-time-duocolor-animated.d.ts.map +1 -0
  247. package/dist/components/illustrative-icon/src/components/shield-time-duocolor-static.d.ts +7 -0
  248. package/dist/components/illustrative-icon/src/components/shield-time-duocolor-static.d.ts.map +1 -0
  249. package/dist/components/illustrative-icon/src/components/shield-time-offblack-animated.d.ts +7 -0
  250. package/dist/components/illustrative-icon/src/components/shield-time-offblack-animated.d.ts.map +1 -0
  251. package/dist/components/illustrative-icon/src/components/shield-time-offblack-static.d.ts +7 -0
  252. package/dist/components/illustrative-icon/src/components/shield-time-offblack-static.d.ts.map +1 -0
  253. package/dist/components/illustrative-icon/src/components/user-duocolor-animated.d.ts +7 -0
  254. package/dist/components/illustrative-icon/src/components/user-duocolor-animated.d.ts.map +1 -0
  255. package/dist/components/illustrative-icon/src/components/user-duocolor-static.d.ts +7 -0
  256. package/dist/components/illustrative-icon/src/components/user-duocolor-static.d.ts.map +1 -0
  257. package/dist/components/illustrative-icon/src/components/user-offblack-animated.d.ts +7 -0
  258. package/dist/components/illustrative-icon/src/components/user-offblack-animated.d.ts.map +1 -0
  259. package/dist/components/illustrative-icon/src/components/user-offblack-static.d.ts +7 -0
  260. package/dist/components/illustrative-icon/src/components/user-offblack-static.d.ts.map +1 -0
  261. package/dist/components/label/src/label.visual.fixtures.d.ts +14 -0
  262. package/dist/components/label/src/label.visual.fixtures.d.ts.map +1 -0
  263. package/dist/components/listbox/src/listbox.visual.fixtures.d.ts +13 -0
  264. package/dist/components/listbox/src/listbox.visual.fixtures.d.ts.map +1 -0
  265. package/dist/components/select/src/select.d.ts.map +1 -1
  266. package/dist/components/select/src/select.visual.fixtures.d.ts +14 -0
  267. package/dist/components/select/src/select.visual.fixtures.d.ts.map +1 -0
  268. package/dist/components/table/src/story-utils/column-def.d.ts.map +1 -1
  269. package/dist/components/table/src/table-column-header-cell.d.ts +3 -10
  270. package/dist/components/table/src/table-column-header-cell.d.ts.map +1 -1
  271. package/dist/components/table/src/table-headers.d.ts +2 -4
  272. package/dist/components/table/src/table-headers.d.ts.map +1 -1
  273. package/dist/components/table/src/table-toolbar.d.ts.map +1 -1
  274. package/dist/components/table/src/table.d.ts +2 -2
  275. package/dist/components/table/src/table.d.ts.map +1 -1
  276. package/dist/components/table/src/test-utils/helpers.d.ts +0 -5
  277. package/dist/components/table/src/test-utils/helpers.d.ts.map +1 -1
  278. package/dist/components/table/src/types.d.ts +8 -8
  279. package/dist/components/table/src/types.d.ts.map +1 -1
  280. package/dist/components/table/src/use-drag-handle.hook.d.ts.map +1 -1
  281. package/dist/components/text-field/src/text-field-base.d.ts.map +1 -1
  282. package/dist/components-metadata.js +456 -0
  283. package/dist/{date-field-HEFdHIxk.mjs → date-field-DOCLv_xS.mjs} +2 -2
  284. package/dist/{date-field-HEFdHIxk.mjs.map → date-field-DOCLv_xS.mjs.map} +1 -1
  285. package/dist/{date-field-CKxEWHG3.js → date-field-uN87mgbH.js} +2 -2
  286. package/dist/{date-field-CKxEWHG3.js.map → date-field-uN87mgbH.js.map} +1 -1
  287. package/dist/date-field.cjs.js +1 -1
  288. package/dist/date-field.es.js +1 -1
  289. package/dist/{date-picker-cQewKIMN.mjs → date-picker-BtEuRtAu.mjs} +3 -3
  290. package/dist/{date-picker-cQewKIMN.mjs.map → date-picker-BtEuRtAu.mjs.map} +1 -1
  291. package/dist/{date-picker-CDBwkAJI.js → date-picker-X8b9wDfp.js} +2 -2
  292. package/dist/{date-picker-CDBwkAJI.js.map → date-picker-X8b9wDfp.js.map} +1 -1
  293. package/dist/date-picker.cjs.js +1 -1
  294. package/dist/date-picker.es.js +1 -1
  295. package/dist/{date-range-field-_WctWD29.mjs → date-range-field-B6gP8w2w.mjs} +2 -2
  296. package/dist/{date-range-field-_WctWD29.mjs.map → date-range-field-B6gP8w2w.mjs.map} +1 -1
  297. package/dist/{date-range-field-D7Hn9FGN.js → date-range-field-DLt6q5TQ.js} +2 -2
  298. package/dist/{date-range-field-D7Hn9FGN.js.map → date-range-field-DLt6q5TQ.js.map} +1 -1
  299. package/dist/date-range-field.cjs.js +1 -1
  300. package/dist/date-range-field.es.js +1 -1
  301. package/dist/{footer-CS6ZfztM.js → footer-Cn1-zG1v.js} +2 -2
  302. package/dist/{footer-CS6ZfztM.js.map → footer-Cn1-zG1v.js.map} +1 -1
  303. package/dist/{footer-OJXbTn1e.mjs → footer-D-2b7UIB.mjs} +2 -2
  304. package/dist/{footer-OJXbTn1e.mjs.map → footer-D-2b7UIB.mjs.map} +1 -1
  305. package/dist/footer.cjs.js +1 -1
  306. package/dist/footer.es.js +1 -1
  307. package/dist/icon/all-icon-components.d.ts +3 -0
  308. package/dist/icon/all-icon-components.d.ts.map +1 -1
  309. package/dist/icon/all-icons.cjs.js +1 -1
  310. package/dist/icon/all-icons.cjs.js.map +1 -1
  311. package/dist/icon/all-icons.d.ts +3 -0
  312. package/dist/icon/all-icons.d.ts.map +1 -1
  313. package/dist/icon/all-icons.es.js +395 -377
  314. package/dist/icon/all-icons.es.js.map +1 -1
  315. package/dist/icon/assets/moon.cjs.js +2 -0
  316. package/dist/icon/assets/moon.cjs.js.map +1 -0
  317. package/dist/icon/assets/moon.d.ts +7 -0
  318. package/dist/icon/assets/moon.d.ts.map +1 -0
  319. package/dist/icon/assets/moon.es.js +10 -0
  320. package/dist/icon/assets/moon.es.js.map +1 -0
  321. package/dist/icon/assets/sun.cjs.js +2 -0
  322. package/dist/icon/assets/sun.cjs.js.map +1 -0
  323. package/dist/icon/assets/sun.d.ts +7 -0
  324. package/dist/icon/assets/sun.d.ts.map +1 -0
  325. package/dist/icon/assets/sun.es.js +10 -0
  326. package/dist/icon/assets/sun.es.js.map +1 -0
  327. package/dist/icon/assets/unpin.cjs.js +2 -0
  328. package/dist/icon/assets/unpin.cjs.js.map +1 -0
  329. package/dist/icon/assets/unpin.d.ts +7 -0
  330. package/dist/icon/assets/unpin.d.ts.map +1 -0
  331. package/dist/icon/assets/unpin.es.js +10 -0
  332. package/dist/icon/assets/unpin.es.js.map +1 -0
  333. package/dist/icon/components/moon.cjs.js +2 -0
  334. package/dist/icon/components/moon.cjs.js.map +1 -0
  335. package/dist/icon/components/moon.d.ts +7 -0
  336. package/dist/icon/components/moon.d.ts.map +1 -0
  337. package/dist/icon/components/moon.es.js +13 -0
  338. package/dist/icon/components/moon.es.js.map +1 -0
  339. package/dist/icon/components/sun.cjs.js +2 -0
  340. package/dist/icon/components/sun.cjs.js.map +1 -0
  341. package/dist/icon/components/sun.d.ts +7 -0
  342. package/dist/icon/components/sun.d.ts.map +1 -0
  343. package/dist/icon/components/sun.es.js +13 -0
  344. package/dist/icon/components/sun.es.js.map +1 -0
  345. package/dist/icon/components/unpin.cjs.js +2 -0
  346. package/dist/icon/components/unpin.cjs.js.map +1 -0
  347. package/dist/icon/components/unpin.d.ts +7 -0
  348. package/dist/icon/components/unpin.d.ts.map +1 -0
  349. package/dist/icon/components/unpin.es.js +13 -0
  350. package/dist/icon/components/unpin.es.js.map +1 -0
  351. package/dist/icon/components-metadata.js +24 -0
  352. package/dist/icon/dynamic-icon.cjs.js +1 -1
  353. package/dist/icon/dynamic-icon.cjs.js.map +1 -1
  354. package/dist/icon/dynamic-icon.es.js +1 -1
  355. package/dist/icon/dynamic-icon.es.js.map +1 -1
  356. package/dist/icon/icon-imports.d.ts +18 -0
  357. package/dist/icon/icon-imports.d.ts.map +1 -1
  358. package/dist/icon/moon.svg +1 -0
  359. package/dist/icon/sun.svg +1 -0
  360. package/dist/icon/unpin.svg +1 -0
  361. package/dist/illustrative-icon/all-animated-illustrative-icon-components.d.ts +34 -0
  362. package/dist/illustrative-icon/all-animated-illustrative-icon-components.d.ts.map +1 -1
  363. package/dist/illustrative-icon/all-static-illustrative-icon-components.d.ts +36 -0
  364. package/dist/illustrative-icon/all-static-illustrative-icon-components.d.ts.map +1 -1
  365. package/dist/illustrative-icon/assets/accessories-duocolor-static.d.ts +4 -0
  366. package/dist/illustrative-icon/assets/accessories-duocolor-static.d.ts.map +1 -0
  367. package/dist/illustrative-icon/assets/accessories-offblack-static.d.ts +4 -0
  368. package/dist/illustrative-icon/assets/accessories-offblack-static.d.ts.map +1 -0
  369. package/dist/illustrative-icon/assets/bag-duocolor-static.d.ts +4 -0
  370. package/dist/illustrative-icon/assets/bag-duocolor-static.d.ts.map +1 -0
  371. package/dist/illustrative-icon/assets/bag-offblack-static.d.ts +4 -0
  372. package/dist/illustrative-icon/assets/bag-offblack-static.d.ts.map +1 -0
  373. package/dist/illustrative-icon/assets/bag-plus-duocolor-static.d.ts +4 -0
  374. package/dist/illustrative-icon/assets/bag-plus-duocolor-static.d.ts.map +1 -0
  375. package/dist/illustrative-icon/assets/bag-plus-offblack-static.d.ts +4 -0
  376. package/dist/illustrative-icon/assets/bag-plus-offblack-static.d.ts.map +1 -0
  377. package/dist/illustrative-icon/assets/box-sync-duocolor-static.d.ts +4 -0
  378. package/dist/illustrative-icon/assets/box-sync-duocolor-static.d.ts.map +1 -0
  379. package/dist/illustrative-icon/assets/box-sync-offblack-static.d.ts +4 -0
  380. package/dist/illustrative-icon/assets/box-sync-offblack-static.d.ts.map +1 -0
  381. package/dist/illustrative-icon/assets/display-protection-duocolor-static.d.ts +4 -0
  382. package/dist/illustrative-icon/assets/display-protection-duocolor-static.d.ts.map +1 -0
  383. package/dist/illustrative-icon/assets/display-protection-offblack-static.d.ts +4 -0
  384. package/dist/illustrative-icon/assets/display-protection-offblack-static.d.ts.map +1 -0
  385. package/dist/illustrative-icon/assets/enrollment-duocolor-static.d.ts +4 -0
  386. package/dist/illustrative-icon/assets/enrollment-duocolor-static.d.ts.map +1 -0
  387. package/dist/illustrative-icon/assets/enrollment-offblack-static.d.ts +4 -0
  388. package/dist/illustrative-icon/assets/enrollment-offblack-static.d.ts.map +1 -0
  389. package/dist/illustrative-icon/assets/gift-box-duocolor-static.d.ts +4 -0
  390. package/dist/illustrative-icon/assets/gift-box-duocolor-static.d.ts.map +1 -0
  391. package/dist/illustrative-icon/assets/gift-box-offblack-static.d.ts +4 -0
  392. package/dist/illustrative-icon/assets/gift-box-offblack-static.d.ts.map +1 -0
  393. package/dist/illustrative-icon/assets/gift-box-plus-duocolor-static.d.ts +4 -0
  394. package/dist/illustrative-icon/assets/gift-box-plus-duocolor-static.d.ts.map +1 -0
  395. package/dist/illustrative-icon/assets/gift-box-plus-offblack-static.d.ts +4 -0
  396. package/dist/illustrative-icon/assets/gift-box-plus-offblack-static.d.ts.map +1 -0
  397. package/dist/illustrative-icon/assets/info-letter-duocolor-static.d.ts +4 -0
  398. package/dist/illustrative-icon/assets/info-letter-duocolor-static.d.ts.map +1 -0
  399. package/dist/illustrative-icon/assets/info-letter-offblack-static.d.ts +4 -0
  400. package/dist/illustrative-icon/assets/info-letter-offblack-static.d.ts.map +1 -0
  401. package/dist/illustrative-icon/assets/json/accessories-duocolor-animated.json.d.ts +3 -0
  402. package/dist/illustrative-icon/assets/json/accessories-offblack-animated.json.d.ts +3 -0
  403. package/dist/illustrative-icon/assets/json/bag-duocolor-animated.json.d.ts +3 -0
  404. package/dist/illustrative-icon/assets/json/bag-offblack-animated.json.d.ts +3 -0
  405. package/dist/illustrative-icon/assets/json/bag-plus-duocolor-animated.json.d.ts +3 -0
  406. package/dist/illustrative-icon/assets/json/bag-plus-offblack-animated.json.d.ts +3 -0
  407. package/dist/illustrative-icon/assets/json/box-sync-duocolor-animated.json.d.ts +3 -0
  408. package/dist/illustrative-icon/assets/json/box-sync-offblack-animated.json.d.ts +3 -0
  409. package/dist/illustrative-icon/assets/json/display-protection-duocolor-animated.json.d.ts +3 -0
  410. package/dist/illustrative-icon/assets/json/display-protection-offblack-animated.json.d.ts +3 -0
  411. package/dist/illustrative-icon/assets/json/enrollment-duocolor-animated.json.d.ts +3 -0
  412. package/dist/illustrative-icon/assets/json/enrollment-offblack-animated.json.d.ts +3 -0
  413. package/dist/illustrative-icon/assets/json/gift-box-duocolor-animated.json.d.ts +3 -0
  414. package/dist/illustrative-icon/assets/json/gift-box-offblack-animated.json.d.ts +3 -0
  415. package/dist/illustrative-icon/assets/json/gift-box-plus-duocolor-animated.json.d.ts +3 -0
  416. package/dist/illustrative-icon/assets/json/gift-box-plus-offblack-animated.json.d.ts +3 -0
  417. package/dist/illustrative-icon/assets/json/info-letter-duocolor-animated.json.d.ts +3 -0
  418. package/dist/illustrative-icon/assets/json/info-letter-offblack-animated.json.d.ts +3 -0
  419. package/dist/illustrative-icon/assets/json/leaf-duocolor-animated.json.d.ts +3 -0
  420. package/dist/illustrative-icon/assets/json/leaf-offblack-animated.json.d.ts +3 -0
  421. package/dist/illustrative-icon/assets/json/number-transfer-duocolor-animated.json.d.ts +3 -0
  422. package/dist/illustrative-icon/assets/json/number-transfer-offblack-animated.json.d.ts +3 -0
  423. package/dist/illustrative-icon/assets/json/phone-repair-duocolor-animated.json.d.ts +3 -0
  424. package/dist/illustrative-icon/assets/json/phone-repair-offblack-animated.json.d.ts +3 -0
  425. package/dist/illustrative-icon/assets/json/phone-settings-duocolor-animated.json.d.ts +3 -0
  426. package/dist/illustrative-icon/assets/json/phone-settings-offblack-animated.json.d.ts +3 -0
  427. package/dist/illustrative-icon/assets/json/return-label-duocolor-animated.json.d.ts +3 -0
  428. package/dist/illustrative-icon/assets/json/return-label-offblack-animated.json.d.ts +3 -0
  429. package/dist/illustrative-icon/assets/json/settings-pen-duocolor-animated.json.d.ts +3 -0
  430. package/dist/illustrative-icon/assets/json/settings-pen-offblack-animated.json.d.ts +3 -0
  431. package/dist/illustrative-icon/assets/json/shield-time-duocolor-animated.json.d.ts +3 -0
  432. package/dist/illustrative-icon/assets/json/shield-time-offblack-animated.json.d.ts +3 -0
  433. package/dist/illustrative-icon/assets/json/user-duocolor-animated.json.d.ts +3 -0
  434. package/dist/illustrative-icon/assets/json/user-offblack-animated.json.d.ts +3 -0
  435. package/dist/illustrative-icon/assets/leaf-duocolor-static.d.ts +4 -0
  436. package/dist/illustrative-icon/assets/leaf-duocolor-static.d.ts.map +1 -0
  437. package/dist/illustrative-icon/assets/leaf-offblack-static.d.ts +4 -0
  438. package/dist/illustrative-icon/assets/leaf-offblack-static.d.ts.map +1 -0
  439. package/dist/illustrative-icon/assets/number-tranfer-duocolor-static.d.ts +4 -0
  440. package/dist/illustrative-icon/assets/number-tranfer-duocolor-static.d.ts.map +1 -0
  441. package/dist/illustrative-icon/assets/number-tranfer-offblack-static.d.ts +4 -0
  442. package/dist/illustrative-icon/assets/number-tranfer-offblack-static.d.ts.map +1 -0
  443. package/dist/illustrative-icon/assets/page-duocolor-static.d.ts +4 -0
  444. package/dist/illustrative-icon/assets/page-duocolor-static.d.ts.map +1 -0
  445. package/dist/illustrative-icon/assets/page-offblack-static.d.ts +4 -0
  446. package/dist/illustrative-icon/assets/page-offblack-static.d.ts.map +1 -0
  447. package/dist/illustrative-icon/assets/phone-repair-duocolor-static.d.ts +4 -0
  448. package/dist/illustrative-icon/assets/phone-repair-duocolor-static.d.ts.map +1 -0
  449. package/dist/illustrative-icon/assets/phone-repair-offblack-static.d.ts +4 -0
  450. package/dist/illustrative-icon/assets/phone-repair-offblack-static.d.ts.map +1 -0
  451. package/dist/illustrative-icon/assets/phone-settings-duocolor-static.d.ts +4 -0
  452. package/dist/illustrative-icon/assets/phone-settings-duocolor-static.d.ts.map +1 -0
  453. package/dist/illustrative-icon/assets/phone-settings-offblack-static.d.ts +4 -0
  454. package/dist/illustrative-icon/assets/phone-settings-offblack-static.d.ts.map +1 -0
  455. package/dist/illustrative-icon/assets/return-label-duocolor-static.d.ts +4 -0
  456. package/dist/illustrative-icon/assets/return-label-duocolor-static.d.ts.map +1 -0
  457. package/dist/illustrative-icon/assets/return-label-offblack-static.d.ts +4 -0
  458. package/dist/illustrative-icon/assets/return-label-offblack-static.d.ts.map +1 -0
  459. package/dist/illustrative-icon/assets/settings-pen-duocolor-static.d.ts +4 -0
  460. package/dist/illustrative-icon/assets/settings-pen-duocolor-static.d.ts.map +1 -0
  461. package/dist/illustrative-icon/assets/settings-pen-offblack-static.d.ts +4 -0
  462. package/dist/illustrative-icon/assets/settings-pen-offblack-static.d.ts.map +1 -0
  463. package/dist/illustrative-icon/assets/shield-time-duocolor-static.d.ts +4 -0
  464. package/dist/illustrative-icon/assets/shield-time-duocolor-static.d.ts.map +1 -0
  465. package/dist/illustrative-icon/assets/shield-time-offblack-static.d.ts +4 -0
  466. package/dist/illustrative-icon/assets/shield-time-offblack-static.d.ts.map +1 -0
  467. package/dist/illustrative-icon/assets/user-duocolor-static.d.ts +4 -0
  468. package/dist/illustrative-icon/assets/user-duocolor-static.d.ts.map +1 -0
  469. package/dist/illustrative-icon/assets/user-offblack-static.d.ts +4 -0
  470. package/dist/illustrative-icon/assets/user-offblack-static.d.ts.map +1 -0
  471. package/dist/illustrative-icon/components/accessories-duocolor-animated.cjs.js +2 -0
  472. package/dist/illustrative-icon/components/accessories-duocolor-animated.cjs.js.map +1 -0
  473. package/dist/illustrative-icon/components/accessories-duocolor-animated.d.ts +7 -0
  474. package/dist/illustrative-icon/components/accessories-duocolor-animated.d.ts.map +1 -0
  475. package/dist/illustrative-icon/components/accessories-duocolor-animated.es.js +20 -0
  476. package/dist/illustrative-icon/components/accessories-duocolor-animated.es.js.map +1 -0
  477. package/dist/illustrative-icon/components/accessories-duocolor-static.cjs.js +2 -0
  478. package/dist/illustrative-icon/components/accessories-duocolor-static.cjs.js.map +1 -0
  479. package/dist/illustrative-icon/components/accessories-duocolor-static.d.ts +7 -0
  480. package/dist/illustrative-icon/components/accessories-duocolor-static.d.ts.map +1 -0
  481. package/dist/illustrative-icon/components/accessories-duocolor-static.es.js +10 -0
  482. package/dist/illustrative-icon/components/accessories-duocolor-static.es.js.map +1 -0
  483. package/dist/illustrative-icon/components/accessories-offblack-animated.cjs.js +2 -0
  484. package/dist/illustrative-icon/components/accessories-offblack-animated.cjs.js.map +1 -0
  485. package/dist/illustrative-icon/components/accessories-offblack-animated.d.ts +7 -0
  486. package/dist/illustrative-icon/components/accessories-offblack-animated.d.ts.map +1 -0
  487. package/dist/illustrative-icon/components/accessories-offblack-animated.es.js +20 -0
  488. package/dist/illustrative-icon/components/accessories-offblack-animated.es.js.map +1 -0
  489. package/dist/illustrative-icon/components/accessories-offblack-static.cjs.js +2 -0
  490. package/dist/illustrative-icon/components/accessories-offblack-static.cjs.js.map +1 -0
  491. package/dist/illustrative-icon/components/accessories-offblack-static.d.ts +7 -0
  492. package/dist/illustrative-icon/components/accessories-offblack-static.d.ts.map +1 -0
  493. package/dist/illustrative-icon/components/accessories-offblack-static.es.js +10 -0
  494. package/dist/illustrative-icon/components/accessories-offblack-static.es.js.map +1 -0
  495. package/dist/illustrative-icon/components/bag-duocolor-animated.cjs.js +2 -0
  496. package/dist/illustrative-icon/components/bag-duocolor-animated.cjs.js.map +1 -0
  497. package/dist/illustrative-icon/components/bag-duocolor-animated.d.ts +7 -0
  498. package/dist/illustrative-icon/components/bag-duocolor-animated.d.ts.map +1 -0
  499. package/dist/illustrative-icon/components/bag-duocolor-animated.es.js +20 -0
  500. package/dist/illustrative-icon/components/bag-duocolor-animated.es.js.map +1 -0
  501. package/dist/illustrative-icon/components/bag-duocolor-static.cjs.js +2 -0
  502. package/dist/illustrative-icon/components/bag-duocolor-static.cjs.js.map +1 -0
  503. package/dist/illustrative-icon/components/bag-duocolor-static.d.ts +7 -0
  504. package/dist/illustrative-icon/components/bag-duocolor-static.d.ts.map +1 -0
  505. package/dist/illustrative-icon/components/bag-duocolor-static.es.js +10 -0
  506. package/dist/illustrative-icon/components/bag-duocolor-static.es.js.map +1 -0
  507. package/dist/illustrative-icon/components/bag-offblack-animated.cjs.js +2 -0
  508. package/dist/illustrative-icon/components/bag-offblack-animated.cjs.js.map +1 -0
  509. package/dist/illustrative-icon/components/bag-offblack-animated.d.ts +7 -0
  510. package/dist/illustrative-icon/components/bag-offblack-animated.d.ts.map +1 -0
  511. package/dist/illustrative-icon/components/bag-offblack-animated.es.js +20 -0
  512. package/dist/illustrative-icon/components/bag-offblack-animated.es.js.map +1 -0
  513. package/dist/illustrative-icon/components/bag-offblack-static.cjs.js +2 -0
  514. package/dist/illustrative-icon/components/bag-offblack-static.cjs.js.map +1 -0
  515. package/dist/illustrative-icon/components/bag-offblack-static.d.ts +7 -0
  516. package/dist/illustrative-icon/components/bag-offblack-static.d.ts.map +1 -0
  517. package/dist/illustrative-icon/components/bag-offblack-static.es.js +10 -0
  518. package/dist/illustrative-icon/components/bag-offblack-static.es.js.map +1 -0
  519. package/dist/illustrative-icon/components/bag-plus-duocolor-animated.cjs.js +2 -0
  520. package/dist/illustrative-icon/components/bag-plus-duocolor-animated.cjs.js.map +1 -0
  521. package/dist/illustrative-icon/components/bag-plus-duocolor-animated.d.ts +7 -0
  522. package/dist/illustrative-icon/components/bag-plus-duocolor-animated.d.ts.map +1 -0
  523. package/dist/illustrative-icon/components/bag-plus-duocolor-animated.es.js +20 -0
  524. package/dist/illustrative-icon/components/bag-plus-duocolor-animated.es.js.map +1 -0
  525. package/dist/illustrative-icon/components/bag-plus-duocolor-static.cjs.js +2 -0
  526. package/dist/illustrative-icon/components/bag-plus-duocolor-static.cjs.js.map +1 -0
  527. package/dist/illustrative-icon/components/bag-plus-duocolor-static.d.ts +7 -0
  528. package/dist/illustrative-icon/components/bag-plus-duocolor-static.d.ts.map +1 -0
  529. package/dist/illustrative-icon/components/bag-plus-duocolor-static.es.js +10 -0
  530. package/dist/illustrative-icon/components/bag-plus-duocolor-static.es.js.map +1 -0
  531. package/dist/illustrative-icon/components/bag-plus-offblack-animated.cjs.js +2 -0
  532. package/dist/illustrative-icon/components/bag-plus-offblack-animated.cjs.js.map +1 -0
  533. package/dist/illustrative-icon/components/bag-plus-offblack-animated.d.ts +7 -0
  534. package/dist/illustrative-icon/components/bag-plus-offblack-animated.d.ts.map +1 -0
  535. package/dist/illustrative-icon/components/bag-plus-offblack-animated.es.js +20 -0
  536. package/dist/illustrative-icon/components/bag-plus-offblack-animated.es.js.map +1 -0
  537. package/dist/illustrative-icon/components/bag-plus-offblack-static.cjs.js +2 -0
  538. package/dist/illustrative-icon/components/bag-plus-offblack-static.cjs.js.map +1 -0
  539. package/dist/illustrative-icon/components/bag-plus-offblack-static.d.ts +7 -0
  540. package/dist/illustrative-icon/components/bag-plus-offblack-static.d.ts.map +1 -0
  541. package/dist/illustrative-icon/components/bag-plus-offblack-static.es.js +10 -0
  542. package/dist/illustrative-icon/components/bag-plus-offblack-static.es.js.map +1 -0
  543. package/dist/illustrative-icon/components/box-sync-duocolor-animated.cjs.js +2 -0
  544. package/dist/illustrative-icon/components/box-sync-duocolor-animated.cjs.js.map +1 -0
  545. package/dist/illustrative-icon/components/box-sync-duocolor-animated.d.ts +7 -0
  546. package/dist/illustrative-icon/components/box-sync-duocolor-animated.d.ts.map +1 -0
  547. package/dist/illustrative-icon/components/box-sync-duocolor-animated.es.js +20 -0
  548. package/dist/illustrative-icon/components/box-sync-duocolor-animated.es.js.map +1 -0
  549. package/dist/illustrative-icon/components/box-sync-duocolor-static.cjs.js +2 -0
  550. package/dist/illustrative-icon/components/box-sync-duocolor-static.cjs.js.map +1 -0
  551. package/dist/illustrative-icon/components/box-sync-duocolor-static.d.ts +7 -0
  552. package/dist/illustrative-icon/components/box-sync-duocolor-static.d.ts.map +1 -0
  553. package/dist/illustrative-icon/components/box-sync-duocolor-static.es.js +10 -0
  554. package/dist/illustrative-icon/components/box-sync-duocolor-static.es.js.map +1 -0
  555. package/dist/illustrative-icon/components/box-sync-offblack-animated.cjs.js +2 -0
  556. package/dist/illustrative-icon/components/box-sync-offblack-animated.cjs.js.map +1 -0
  557. package/dist/illustrative-icon/components/box-sync-offblack-animated.d.ts +7 -0
  558. package/dist/illustrative-icon/components/box-sync-offblack-animated.d.ts.map +1 -0
  559. package/dist/illustrative-icon/components/box-sync-offblack-animated.es.js +20 -0
  560. package/dist/illustrative-icon/components/box-sync-offblack-animated.es.js.map +1 -0
  561. package/dist/illustrative-icon/components/box-sync-offblack-static.cjs.js +2 -0
  562. package/dist/illustrative-icon/components/box-sync-offblack-static.cjs.js.map +1 -0
  563. package/dist/illustrative-icon/components/box-sync-offblack-static.d.ts +7 -0
  564. package/dist/illustrative-icon/components/box-sync-offblack-static.d.ts.map +1 -0
  565. package/dist/illustrative-icon/components/box-sync-offblack-static.es.js +10 -0
  566. package/dist/illustrative-icon/components/box-sync-offblack-static.es.js.map +1 -0
  567. package/dist/illustrative-icon/components/display-protection-duocolor-animated.cjs.js +2 -0
  568. package/dist/illustrative-icon/components/display-protection-duocolor-animated.cjs.js.map +1 -0
  569. package/dist/illustrative-icon/components/display-protection-duocolor-animated.d.ts +7 -0
  570. package/dist/illustrative-icon/components/display-protection-duocolor-animated.d.ts.map +1 -0
  571. package/dist/illustrative-icon/components/display-protection-duocolor-animated.es.js +20 -0
  572. package/dist/illustrative-icon/components/display-protection-duocolor-animated.es.js.map +1 -0
  573. package/dist/illustrative-icon/components/display-protection-duocolor-static.cjs.js +2 -0
  574. package/dist/illustrative-icon/components/display-protection-duocolor-static.cjs.js.map +1 -0
  575. package/dist/illustrative-icon/components/display-protection-duocolor-static.d.ts +7 -0
  576. package/dist/illustrative-icon/components/display-protection-duocolor-static.d.ts.map +1 -0
  577. package/dist/illustrative-icon/components/display-protection-duocolor-static.es.js +10 -0
  578. package/dist/illustrative-icon/components/display-protection-duocolor-static.es.js.map +1 -0
  579. package/dist/illustrative-icon/components/display-protection-offblack-animated.cjs.js +2 -0
  580. package/dist/illustrative-icon/components/display-protection-offblack-animated.cjs.js.map +1 -0
  581. package/dist/illustrative-icon/components/display-protection-offblack-animated.d.ts +7 -0
  582. package/dist/illustrative-icon/components/display-protection-offblack-animated.d.ts.map +1 -0
  583. package/dist/illustrative-icon/components/display-protection-offblack-animated.es.js +20 -0
  584. package/dist/illustrative-icon/components/display-protection-offblack-animated.es.js.map +1 -0
  585. package/dist/illustrative-icon/components/display-protection-offblack-static.cjs.js +2 -0
  586. package/dist/illustrative-icon/components/display-protection-offblack-static.cjs.js.map +1 -0
  587. package/dist/illustrative-icon/components/display-protection-offblack-static.d.ts +7 -0
  588. package/dist/illustrative-icon/components/display-protection-offblack-static.d.ts.map +1 -0
  589. package/dist/illustrative-icon/components/display-protection-offblack-static.es.js +10 -0
  590. package/dist/illustrative-icon/components/display-protection-offblack-static.es.js.map +1 -0
  591. package/dist/illustrative-icon/components/enrollment-duocolor-animated.cjs.js +2 -0
  592. package/dist/illustrative-icon/components/enrollment-duocolor-animated.cjs.js.map +1 -0
  593. package/dist/illustrative-icon/components/enrollment-duocolor-animated.d.ts +7 -0
  594. package/dist/illustrative-icon/components/enrollment-duocolor-animated.d.ts.map +1 -0
  595. package/dist/illustrative-icon/components/enrollment-duocolor-animated.es.js +20 -0
  596. package/dist/illustrative-icon/components/enrollment-duocolor-animated.es.js.map +1 -0
  597. package/dist/illustrative-icon/components/enrollment-duocolor-static.cjs.js +2 -0
  598. package/dist/illustrative-icon/components/enrollment-duocolor-static.cjs.js.map +1 -0
  599. package/dist/illustrative-icon/components/enrollment-duocolor-static.d.ts +7 -0
  600. package/dist/illustrative-icon/components/enrollment-duocolor-static.d.ts.map +1 -0
  601. package/dist/illustrative-icon/components/enrollment-duocolor-static.es.js +10 -0
  602. package/dist/illustrative-icon/components/enrollment-duocolor-static.es.js.map +1 -0
  603. package/dist/illustrative-icon/components/enrollment-offblack-animated.cjs.js +2 -0
  604. package/dist/illustrative-icon/components/enrollment-offblack-animated.cjs.js.map +1 -0
  605. package/dist/illustrative-icon/components/enrollment-offblack-animated.d.ts +7 -0
  606. package/dist/illustrative-icon/components/enrollment-offblack-animated.d.ts.map +1 -0
  607. package/dist/illustrative-icon/components/enrollment-offblack-animated.es.js +20 -0
  608. package/dist/illustrative-icon/components/enrollment-offblack-animated.es.js.map +1 -0
  609. package/dist/illustrative-icon/components/enrollment-offblack-static.cjs.js +2 -0
  610. package/dist/illustrative-icon/components/enrollment-offblack-static.cjs.js.map +1 -0
  611. package/dist/illustrative-icon/components/enrollment-offblack-static.d.ts +7 -0
  612. package/dist/illustrative-icon/components/enrollment-offblack-static.d.ts.map +1 -0
  613. package/dist/illustrative-icon/components/enrollment-offblack-static.es.js +10 -0
  614. package/dist/illustrative-icon/components/enrollment-offblack-static.es.js.map +1 -0
  615. package/dist/illustrative-icon/components/gift-box-duocolor-animated.cjs.js +2 -0
  616. package/dist/illustrative-icon/components/gift-box-duocolor-animated.cjs.js.map +1 -0
  617. package/dist/illustrative-icon/components/gift-box-duocolor-animated.d.ts +7 -0
  618. package/dist/illustrative-icon/components/gift-box-duocolor-animated.d.ts.map +1 -0
  619. package/dist/illustrative-icon/components/gift-box-duocolor-animated.es.js +20 -0
  620. package/dist/illustrative-icon/components/gift-box-duocolor-animated.es.js.map +1 -0
  621. package/dist/illustrative-icon/components/gift-box-duocolor-static.cjs.js +2 -0
  622. package/dist/illustrative-icon/components/gift-box-duocolor-static.cjs.js.map +1 -0
  623. package/dist/illustrative-icon/components/gift-box-duocolor-static.d.ts +7 -0
  624. package/dist/illustrative-icon/components/gift-box-duocolor-static.d.ts.map +1 -0
  625. package/dist/illustrative-icon/components/gift-box-duocolor-static.es.js +10 -0
  626. package/dist/illustrative-icon/components/gift-box-duocolor-static.es.js.map +1 -0
  627. package/dist/illustrative-icon/components/gift-box-offblack-animated.cjs.js +2 -0
  628. package/dist/illustrative-icon/components/gift-box-offblack-animated.cjs.js.map +1 -0
  629. package/dist/illustrative-icon/components/gift-box-offblack-animated.d.ts +7 -0
  630. package/dist/illustrative-icon/components/gift-box-offblack-animated.d.ts.map +1 -0
  631. package/dist/illustrative-icon/components/gift-box-offblack-animated.es.js +20 -0
  632. package/dist/illustrative-icon/components/gift-box-offblack-animated.es.js.map +1 -0
  633. package/dist/illustrative-icon/components/gift-box-offblack-static.cjs.js +2 -0
  634. package/dist/illustrative-icon/components/gift-box-offblack-static.cjs.js.map +1 -0
  635. package/dist/illustrative-icon/components/gift-box-offblack-static.d.ts +7 -0
  636. package/dist/illustrative-icon/components/gift-box-offblack-static.d.ts.map +1 -0
  637. package/dist/illustrative-icon/components/gift-box-offblack-static.es.js +10 -0
  638. package/dist/illustrative-icon/components/gift-box-offblack-static.es.js.map +1 -0
  639. package/dist/illustrative-icon/components/gift-box-plus-duocolor-animated.cjs.js +2 -0
  640. package/dist/illustrative-icon/components/gift-box-plus-duocolor-animated.cjs.js.map +1 -0
  641. package/dist/illustrative-icon/components/gift-box-plus-duocolor-animated.d.ts +7 -0
  642. package/dist/illustrative-icon/components/gift-box-plus-duocolor-animated.d.ts.map +1 -0
  643. package/dist/illustrative-icon/components/gift-box-plus-duocolor-animated.es.js +20 -0
  644. package/dist/illustrative-icon/components/gift-box-plus-duocolor-animated.es.js.map +1 -0
  645. package/dist/illustrative-icon/components/gift-box-plus-duocolor-static.cjs.js +2 -0
  646. package/dist/illustrative-icon/components/gift-box-plus-duocolor-static.cjs.js.map +1 -0
  647. package/dist/illustrative-icon/components/gift-box-plus-duocolor-static.d.ts +7 -0
  648. package/dist/illustrative-icon/components/gift-box-plus-duocolor-static.d.ts.map +1 -0
  649. package/dist/illustrative-icon/components/gift-box-plus-duocolor-static.es.js +10 -0
  650. package/dist/illustrative-icon/components/gift-box-plus-duocolor-static.es.js.map +1 -0
  651. package/dist/illustrative-icon/components/gift-box-plus-offblack-animated.cjs.js +2 -0
  652. package/dist/illustrative-icon/components/gift-box-plus-offblack-animated.cjs.js.map +1 -0
  653. package/dist/illustrative-icon/components/gift-box-plus-offblack-animated.d.ts +7 -0
  654. package/dist/illustrative-icon/components/gift-box-plus-offblack-animated.d.ts.map +1 -0
  655. package/dist/illustrative-icon/components/gift-box-plus-offblack-animated.es.js +20 -0
  656. package/dist/illustrative-icon/components/gift-box-plus-offblack-animated.es.js.map +1 -0
  657. package/dist/illustrative-icon/components/gift-box-plus-offblack-static.cjs.js +2 -0
  658. package/dist/illustrative-icon/components/gift-box-plus-offblack-static.cjs.js.map +1 -0
  659. package/dist/illustrative-icon/components/gift-box-plus-offblack-static.d.ts +7 -0
  660. package/dist/illustrative-icon/components/gift-box-plus-offblack-static.d.ts.map +1 -0
  661. package/dist/illustrative-icon/components/gift-box-plus-offblack-static.es.js +10 -0
  662. package/dist/illustrative-icon/components/gift-box-plus-offblack-static.es.js.map +1 -0
  663. package/dist/illustrative-icon/components/info-letter-duocolor-animated.cjs.js +2 -0
  664. package/dist/illustrative-icon/components/info-letter-duocolor-animated.cjs.js.map +1 -0
  665. package/dist/illustrative-icon/components/info-letter-duocolor-animated.d.ts +7 -0
  666. package/dist/illustrative-icon/components/info-letter-duocolor-animated.d.ts.map +1 -0
  667. package/dist/illustrative-icon/components/info-letter-duocolor-animated.es.js +20 -0
  668. package/dist/illustrative-icon/components/info-letter-duocolor-animated.es.js.map +1 -0
  669. package/dist/illustrative-icon/components/info-letter-duocolor-static.cjs.js +2 -0
  670. package/dist/illustrative-icon/components/info-letter-duocolor-static.cjs.js.map +1 -0
  671. package/dist/illustrative-icon/components/info-letter-duocolor-static.d.ts +7 -0
  672. package/dist/illustrative-icon/components/info-letter-duocolor-static.d.ts.map +1 -0
  673. package/dist/illustrative-icon/components/info-letter-duocolor-static.es.js +10 -0
  674. package/dist/illustrative-icon/components/info-letter-duocolor-static.es.js.map +1 -0
  675. package/dist/illustrative-icon/components/info-letter-offblack-animated.cjs.js +2 -0
  676. package/dist/illustrative-icon/components/info-letter-offblack-animated.cjs.js.map +1 -0
  677. package/dist/illustrative-icon/components/info-letter-offblack-animated.d.ts +7 -0
  678. package/dist/illustrative-icon/components/info-letter-offblack-animated.d.ts.map +1 -0
  679. package/dist/illustrative-icon/components/info-letter-offblack-animated.es.js +20 -0
  680. package/dist/illustrative-icon/components/info-letter-offblack-animated.es.js.map +1 -0
  681. package/dist/illustrative-icon/components/info-letter-offblack-static.cjs.js +2 -0
  682. package/dist/illustrative-icon/components/info-letter-offblack-static.cjs.js.map +1 -0
  683. package/dist/illustrative-icon/components/info-letter-offblack-static.d.ts +7 -0
  684. package/dist/illustrative-icon/components/info-letter-offblack-static.d.ts.map +1 -0
  685. package/dist/illustrative-icon/components/info-letter-offblack-static.es.js +10 -0
  686. package/dist/illustrative-icon/components/info-letter-offblack-static.es.js.map +1 -0
  687. package/dist/illustrative-icon/components/leaf-duocolor-animated.cjs.js +2 -0
  688. package/dist/illustrative-icon/components/leaf-duocolor-animated.cjs.js.map +1 -0
  689. package/dist/illustrative-icon/components/leaf-duocolor-animated.d.ts +7 -0
  690. package/dist/illustrative-icon/components/leaf-duocolor-animated.d.ts.map +1 -0
  691. package/dist/illustrative-icon/components/leaf-duocolor-animated.es.js +20 -0
  692. package/dist/illustrative-icon/components/leaf-duocolor-animated.es.js.map +1 -0
  693. package/dist/illustrative-icon/components/leaf-duocolor-static.cjs.js +2 -0
  694. package/dist/illustrative-icon/components/leaf-duocolor-static.cjs.js.map +1 -0
  695. package/dist/illustrative-icon/components/leaf-duocolor-static.d.ts +7 -0
  696. package/dist/illustrative-icon/components/leaf-duocolor-static.d.ts.map +1 -0
  697. package/dist/illustrative-icon/components/leaf-duocolor-static.es.js +10 -0
  698. package/dist/illustrative-icon/components/leaf-duocolor-static.es.js.map +1 -0
  699. package/dist/illustrative-icon/components/leaf-offblack-animated.cjs.js +2 -0
  700. package/dist/illustrative-icon/components/leaf-offblack-animated.cjs.js.map +1 -0
  701. package/dist/illustrative-icon/components/leaf-offblack-animated.d.ts +7 -0
  702. package/dist/illustrative-icon/components/leaf-offblack-animated.d.ts.map +1 -0
  703. package/dist/illustrative-icon/components/leaf-offblack-animated.es.js +20 -0
  704. package/dist/illustrative-icon/components/leaf-offblack-animated.es.js.map +1 -0
  705. package/dist/illustrative-icon/components/leaf-offblack-static.cjs.js +2 -0
  706. package/dist/illustrative-icon/components/leaf-offblack-static.cjs.js.map +1 -0
  707. package/dist/illustrative-icon/components/leaf-offblack-static.d.ts +7 -0
  708. package/dist/illustrative-icon/components/leaf-offblack-static.d.ts.map +1 -0
  709. package/dist/illustrative-icon/components/leaf-offblack-static.es.js +10 -0
  710. package/dist/illustrative-icon/components/leaf-offblack-static.es.js.map +1 -0
  711. package/dist/illustrative-icon/components/number-tranfer-duocolor-static.cjs.js +2 -0
  712. package/dist/illustrative-icon/components/number-tranfer-duocolor-static.cjs.js.map +1 -0
  713. package/dist/illustrative-icon/components/number-tranfer-duocolor-static.d.ts +7 -0
  714. package/dist/illustrative-icon/components/number-tranfer-duocolor-static.d.ts.map +1 -0
  715. package/dist/illustrative-icon/components/number-tranfer-duocolor-static.es.js +10 -0
  716. package/dist/illustrative-icon/components/number-tranfer-duocolor-static.es.js.map +1 -0
  717. package/dist/illustrative-icon/components/number-tranfer-offblack-static.cjs.js +2 -0
  718. package/dist/illustrative-icon/components/number-tranfer-offblack-static.cjs.js.map +1 -0
  719. package/dist/illustrative-icon/components/number-tranfer-offblack-static.d.ts +7 -0
  720. package/dist/illustrative-icon/components/number-tranfer-offblack-static.d.ts.map +1 -0
  721. package/dist/illustrative-icon/components/number-tranfer-offblack-static.es.js +10 -0
  722. package/dist/illustrative-icon/components/number-tranfer-offblack-static.es.js.map +1 -0
  723. package/dist/illustrative-icon/components/number-transfer-duocolor-animated.cjs.js +2 -0
  724. package/dist/illustrative-icon/components/number-transfer-duocolor-animated.cjs.js.map +1 -0
  725. package/dist/illustrative-icon/components/number-transfer-duocolor-animated.d.ts +7 -0
  726. package/dist/illustrative-icon/components/number-transfer-duocolor-animated.d.ts.map +1 -0
  727. package/dist/illustrative-icon/components/number-transfer-duocolor-animated.es.js +20 -0
  728. package/dist/illustrative-icon/components/number-transfer-duocolor-animated.es.js.map +1 -0
  729. package/dist/illustrative-icon/components/number-transfer-offblack-animated.cjs.js +2 -0
  730. package/dist/illustrative-icon/components/number-transfer-offblack-animated.cjs.js.map +1 -0
  731. package/dist/illustrative-icon/components/number-transfer-offblack-animated.d.ts +7 -0
  732. package/dist/illustrative-icon/components/number-transfer-offblack-animated.d.ts.map +1 -0
  733. package/dist/illustrative-icon/components/number-transfer-offblack-animated.es.js +20 -0
  734. package/dist/illustrative-icon/components/number-transfer-offblack-animated.es.js.map +1 -0
  735. package/dist/illustrative-icon/components/page-duocolor-static.cjs.js +2 -0
  736. package/dist/illustrative-icon/components/page-duocolor-static.cjs.js.map +1 -0
  737. package/dist/illustrative-icon/components/page-duocolor-static.d.ts +7 -0
  738. package/dist/illustrative-icon/components/page-duocolor-static.d.ts.map +1 -0
  739. package/dist/illustrative-icon/components/page-duocolor-static.es.js +10 -0
  740. package/dist/illustrative-icon/components/page-duocolor-static.es.js.map +1 -0
  741. package/dist/illustrative-icon/components/page-offblack-static.cjs.js +2 -0
  742. package/dist/illustrative-icon/components/page-offblack-static.cjs.js.map +1 -0
  743. package/dist/illustrative-icon/components/page-offblack-static.d.ts +7 -0
  744. package/dist/illustrative-icon/components/page-offblack-static.d.ts.map +1 -0
  745. package/dist/illustrative-icon/components/page-offblack-static.es.js +10 -0
  746. package/dist/illustrative-icon/components/page-offblack-static.es.js.map +1 -0
  747. package/dist/illustrative-icon/components/phone-repair-duocolor-animated.cjs.js +2 -0
  748. package/dist/illustrative-icon/components/phone-repair-duocolor-animated.cjs.js.map +1 -0
  749. package/dist/illustrative-icon/components/phone-repair-duocolor-animated.d.ts +7 -0
  750. package/dist/illustrative-icon/components/phone-repair-duocolor-animated.d.ts.map +1 -0
  751. package/dist/illustrative-icon/components/phone-repair-duocolor-animated.es.js +20 -0
  752. package/dist/illustrative-icon/components/phone-repair-duocolor-animated.es.js.map +1 -0
  753. package/dist/illustrative-icon/components/phone-repair-duocolor-static.cjs.js +2 -0
  754. package/dist/illustrative-icon/components/phone-repair-duocolor-static.cjs.js.map +1 -0
  755. package/dist/illustrative-icon/components/phone-repair-duocolor-static.d.ts +7 -0
  756. package/dist/illustrative-icon/components/phone-repair-duocolor-static.d.ts.map +1 -0
  757. package/dist/illustrative-icon/components/phone-repair-duocolor-static.es.js +10 -0
  758. package/dist/illustrative-icon/components/phone-repair-duocolor-static.es.js.map +1 -0
  759. package/dist/illustrative-icon/components/phone-repair-offblack-animated.cjs.js +2 -0
  760. package/dist/illustrative-icon/components/phone-repair-offblack-animated.cjs.js.map +1 -0
  761. package/dist/illustrative-icon/components/phone-repair-offblack-animated.d.ts +7 -0
  762. package/dist/illustrative-icon/components/phone-repair-offblack-animated.d.ts.map +1 -0
  763. package/dist/illustrative-icon/components/phone-repair-offblack-animated.es.js +20 -0
  764. package/dist/illustrative-icon/components/phone-repair-offblack-animated.es.js.map +1 -0
  765. package/dist/illustrative-icon/components/phone-repair-offblack-static.cjs.js +2 -0
  766. package/dist/illustrative-icon/components/phone-repair-offblack-static.cjs.js.map +1 -0
  767. package/dist/illustrative-icon/components/phone-repair-offblack-static.d.ts +7 -0
  768. package/dist/illustrative-icon/components/phone-repair-offblack-static.d.ts.map +1 -0
  769. package/dist/illustrative-icon/components/phone-repair-offblack-static.es.js +10 -0
  770. package/dist/illustrative-icon/components/phone-repair-offblack-static.es.js.map +1 -0
  771. package/dist/illustrative-icon/components/phone-settings-duocolor-animated.cjs.js +2 -0
  772. package/dist/illustrative-icon/components/phone-settings-duocolor-animated.cjs.js.map +1 -0
  773. package/dist/illustrative-icon/components/phone-settings-duocolor-animated.d.ts +7 -0
  774. package/dist/illustrative-icon/components/phone-settings-duocolor-animated.d.ts.map +1 -0
  775. package/dist/illustrative-icon/components/phone-settings-duocolor-animated.es.js +20 -0
  776. package/dist/illustrative-icon/components/phone-settings-duocolor-animated.es.js.map +1 -0
  777. package/dist/illustrative-icon/components/phone-settings-duocolor-static.cjs.js +2 -0
  778. package/dist/illustrative-icon/components/phone-settings-duocolor-static.cjs.js.map +1 -0
  779. package/dist/illustrative-icon/components/phone-settings-duocolor-static.d.ts +7 -0
  780. package/dist/illustrative-icon/components/phone-settings-duocolor-static.d.ts.map +1 -0
  781. package/dist/illustrative-icon/components/phone-settings-duocolor-static.es.js +10 -0
  782. package/dist/illustrative-icon/components/phone-settings-duocolor-static.es.js.map +1 -0
  783. package/dist/illustrative-icon/components/phone-settings-offblack-animated.cjs.js +2 -0
  784. package/dist/illustrative-icon/components/phone-settings-offblack-animated.cjs.js.map +1 -0
  785. package/dist/illustrative-icon/components/phone-settings-offblack-animated.d.ts +7 -0
  786. package/dist/illustrative-icon/components/phone-settings-offblack-animated.d.ts.map +1 -0
  787. package/dist/illustrative-icon/components/phone-settings-offblack-animated.es.js +20 -0
  788. package/dist/illustrative-icon/components/phone-settings-offblack-animated.es.js.map +1 -0
  789. package/dist/illustrative-icon/components/phone-settings-offblack-static.cjs.js +2 -0
  790. package/dist/illustrative-icon/components/phone-settings-offblack-static.cjs.js.map +1 -0
  791. package/dist/illustrative-icon/components/phone-settings-offblack-static.d.ts +7 -0
  792. package/dist/illustrative-icon/components/phone-settings-offblack-static.d.ts.map +1 -0
  793. package/dist/illustrative-icon/components/phone-settings-offblack-static.es.js +10 -0
  794. package/dist/illustrative-icon/components/phone-settings-offblack-static.es.js.map +1 -0
  795. package/dist/illustrative-icon/components/return-label-duocolor-animated.cjs.js +2 -0
  796. package/dist/illustrative-icon/components/return-label-duocolor-animated.cjs.js.map +1 -0
  797. package/dist/illustrative-icon/components/return-label-duocolor-animated.d.ts +7 -0
  798. package/dist/illustrative-icon/components/return-label-duocolor-animated.d.ts.map +1 -0
  799. package/dist/illustrative-icon/components/return-label-duocolor-animated.es.js +20 -0
  800. package/dist/illustrative-icon/components/return-label-duocolor-animated.es.js.map +1 -0
  801. package/dist/illustrative-icon/components/return-label-duocolor-static.cjs.js +2 -0
  802. package/dist/illustrative-icon/components/return-label-duocolor-static.cjs.js.map +1 -0
  803. package/dist/illustrative-icon/components/return-label-duocolor-static.d.ts +7 -0
  804. package/dist/illustrative-icon/components/return-label-duocolor-static.d.ts.map +1 -0
  805. package/dist/illustrative-icon/components/return-label-duocolor-static.es.js +10 -0
  806. package/dist/illustrative-icon/components/return-label-duocolor-static.es.js.map +1 -0
  807. package/dist/illustrative-icon/components/return-label-offblack-animated.cjs.js +2 -0
  808. package/dist/illustrative-icon/components/return-label-offblack-animated.cjs.js.map +1 -0
  809. package/dist/illustrative-icon/components/return-label-offblack-animated.d.ts +7 -0
  810. package/dist/illustrative-icon/components/return-label-offblack-animated.d.ts.map +1 -0
  811. package/dist/illustrative-icon/components/return-label-offblack-animated.es.js +20 -0
  812. package/dist/illustrative-icon/components/return-label-offblack-animated.es.js.map +1 -0
  813. package/dist/illustrative-icon/components/return-label-offblack-static.cjs.js +2 -0
  814. package/dist/illustrative-icon/components/return-label-offblack-static.cjs.js.map +1 -0
  815. package/dist/illustrative-icon/components/return-label-offblack-static.d.ts +7 -0
  816. package/dist/illustrative-icon/components/return-label-offblack-static.d.ts.map +1 -0
  817. package/dist/illustrative-icon/components/return-label-offblack-static.es.js +10 -0
  818. package/dist/illustrative-icon/components/return-label-offblack-static.es.js.map +1 -0
  819. package/dist/illustrative-icon/components/settings-pen-duocolor-animated.cjs.js +2 -0
  820. package/dist/illustrative-icon/components/settings-pen-duocolor-animated.cjs.js.map +1 -0
  821. package/dist/illustrative-icon/components/settings-pen-duocolor-animated.d.ts +7 -0
  822. package/dist/illustrative-icon/components/settings-pen-duocolor-animated.d.ts.map +1 -0
  823. package/dist/illustrative-icon/components/settings-pen-duocolor-animated.es.js +20 -0
  824. package/dist/illustrative-icon/components/settings-pen-duocolor-animated.es.js.map +1 -0
  825. package/dist/illustrative-icon/components/settings-pen-duocolor-static.cjs.js +2 -0
  826. package/dist/illustrative-icon/components/settings-pen-duocolor-static.cjs.js.map +1 -0
  827. package/dist/illustrative-icon/components/settings-pen-duocolor-static.d.ts +7 -0
  828. package/dist/illustrative-icon/components/settings-pen-duocolor-static.d.ts.map +1 -0
  829. package/dist/illustrative-icon/components/settings-pen-duocolor-static.es.js +10 -0
  830. package/dist/illustrative-icon/components/settings-pen-duocolor-static.es.js.map +1 -0
  831. package/dist/illustrative-icon/components/settings-pen-offblack-animated.cjs.js +2 -0
  832. package/dist/illustrative-icon/components/settings-pen-offblack-animated.cjs.js.map +1 -0
  833. package/dist/illustrative-icon/components/settings-pen-offblack-animated.d.ts +7 -0
  834. package/dist/illustrative-icon/components/settings-pen-offblack-animated.d.ts.map +1 -0
  835. package/dist/illustrative-icon/components/settings-pen-offblack-animated.es.js +20 -0
  836. package/dist/illustrative-icon/components/settings-pen-offblack-animated.es.js.map +1 -0
  837. package/dist/illustrative-icon/components/settings-pen-offblack-static.cjs.js +2 -0
  838. package/dist/illustrative-icon/components/settings-pen-offblack-static.cjs.js.map +1 -0
  839. package/dist/illustrative-icon/components/settings-pen-offblack-static.d.ts +7 -0
  840. package/dist/illustrative-icon/components/settings-pen-offblack-static.d.ts.map +1 -0
  841. package/dist/illustrative-icon/components/settings-pen-offblack-static.es.js +10 -0
  842. package/dist/illustrative-icon/components/settings-pen-offblack-static.es.js.map +1 -0
  843. package/dist/illustrative-icon/components/shield-time-duocolor-animated.cjs.js +2 -0
  844. package/dist/illustrative-icon/components/shield-time-duocolor-animated.cjs.js.map +1 -0
  845. package/dist/illustrative-icon/components/shield-time-duocolor-animated.d.ts +7 -0
  846. package/dist/illustrative-icon/components/shield-time-duocolor-animated.d.ts.map +1 -0
  847. package/dist/illustrative-icon/components/shield-time-duocolor-animated.es.js +20 -0
  848. package/dist/illustrative-icon/components/shield-time-duocolor-animated.es.js.map +1 -0
  849. package/dist/illustrative-icon/components/shield-time-duocolor-static.cjs.js +2 -0
  850. package/dist/illustrative-icon/components/shield-time-duocolor-static.cjs.js.map +1 -0
  851. package/dist/illustrative-icon/components/shield-time-duocolor-static.d.ts +7 -0
  852. package/dist/illustrative-icon/components/shield-time-duocolor-static.d.ts.map +1 -0
  853. package/dist/illustrative-icon/components/shield-time-duocolor-static.es.js +10 -0
  854. package/dist/illustrative-icon/components/shield-time-duocolor-static.es.js.map +1 -0
  855. package/dist/illustrative-icon/components/shield-time-offblack-animated.cjs.js +2 -0
  856. package/dist/illustrative-icon/components/shield-time-offblack-animated.cjs.js.map +1 -0
  857. package/dist/illustrative-icon/components/shield-time-offblack-animated.d.ts +7 -0
  858. package/dist/illustrative-icon/components/shield-time-offblack-animated.d.ts.map +1 -0
  859. package/dist/illustrative-icon/components/shield-time-offblack-animated.es.js +20 -0
  860. package/dist/illustrative-icon/components/shield-time-offblack-animated.es.js.map +1 -0
  861. package/dist/illustrative-icon/components/shield-time-offblack-static.cjs.js +2 -0
  862. package/dist/illustrative-icon/components/shield-time-offblack-static.cjs.js.map +1 -0
  863. package/dist/illustrative-icon/components/shield-time-offblack-static.d.ts +7 -0
  864. package/dist/illustrative-icon/components/shield-time-offblack-static.d.ts.map +1 -0
  865. package/dist/illustrative-icon/components/shield-time-offblack-static.es.js +10 -0
  866. package/dist/illustrative-icon/components/shield-time-offblack-static.es.js.map +1 -0
  867. package/dist/illustrative-icon/components/user-duocolor-animated.cjs.js +2 -0
  868. package/dist/illustrative-icon/components/user-duocolor-animated.cjs.js.map +1 -0
  869. package/dist/illustrative-icon/components/user-duocolor-animated.d.ts +7 -0
  870. package/dist/illustrative-icon/components/user-duocolor-animated.d.ts.map +1 -0
  871. package/dist/illustrative-icon/components/user-duocolor-animated.es.js +20 -0
  872. package/dist/illustrative-icon/components/user-duocolor-animated.es.js.map +1 -0
  873. package/dist/illustrative-icon/components/user-duocolor-static.cjs.js +2 -0
  874. package/dist/illustrative-icon/components/user-duocolor-static.cjs.js.map +1 -0
  875. package/dist/illustrative-icon/components/user-duocolor-static.d.ts +7 -0
  876. package/dist/illustrative-icon/components/user-duocolor-static.d.ts.map +1 -0
  877. package/dist/illustrative-icon/components/user-duocolor-static.es.js +10 -0
  878. package/dist/illustrative-icon/components/user-duocolor-static.es.js.map +1 -0
  879. package/dist/illustrative-icon/components/user-offblack-animated.cjs.js +2 -0
  880. package/dist/illustrative-icon/components/user-offblack-animated.cjs.js.map +1 -0
  881. package/dist/illustrative-icon/components/user-offblack-animated.d.ts +7 -0
  882. package/dist/illustrative-icon/components/user-offblack-animated.d.ts.map +1 -0
  883. package/dist/illustrative-icon/components/user-offblack-animated.es.js +20 -0
  884. package/dist/illustrative-icon/components/user-offblack-animated.es.js.map +1 -0
  885. package/dist/illustrative-icon/components/user-offblack-static.cjs.js +2 -0
  886. package/dist/illustrative-icon/components/user-offblack-static.cjs.js.map +1 -0
  887. package/dist/illustrative-icon/components/user-offblack-static.d.ts +7 -0
  888. package/dist/illustrative-icon/components/user-offblack-static.d.ts.map +1 -0
  889. package/dist/illustrative-icon/components/user-offblack-static.es.js +10 -0
  890. package/dist/illustrative-icon/components/user-offblack-static.es.js.map +1 -0
  891. package/dist/illustrative-icon/components-metadata.js +280 -0
  892. package/dist/libraries/action/src/action.d.ts +2 -1
  893. package/dist/libraries/action/src/action.d.ts.map +1 -1
  894. package/dist/library.cjs.js +1 -1
  895. package/dist/library.es.js +12 -12
  896. package/dist/{pagination-BDfaybj3.js → pagination-C1rYXq9I.js} +2 -2
  897. package/dist/{pagination-BDfaybj3.js.map → pagination-C1rYXq9I.js.map} +1 -1
  898. package/dist/{pagination-Bm38GKga.mjs → pagination-CS1AMyBl.mjs} +2 -2
  899. package/dist/{pagination-Bm38GKga.mjs.map → pagination-CS1AMyBl.mjs.map} +1 -1
  900. package/dist/pagination.cjs.js +1 -1
  901. package/dist/pagination.es.js +1 -1
  902. package/dist/purpur.css +1 -1
  903. package/dist/{quantity-selector-B4YnfmNb.mjs → quantity-selector-COtqc-Iy.mjs} +2 -2
  904. package/dist/{quantity-selector-B4YnfmNb.mjs.map → quantity-selector-COtqc-Iy.mjs.map} +1 -1
  905. package/dist/{quantity-selector-CTBoxiPO.js → quantity-selector-CwxuBsVC.js} +2 -2
  906. package/dist/{quantity-selector-CTBoxiPO.js.map → quantity-selector-CwxuBsVC.js.map} +1 -1
  907. package/dist/quantity-selector.cjs.js +1 -1
  908. package/dist/quantity-selector.es.js +1 -1
  909. package/dist/{search-field-BPLzy3RR.mjs → search-field-BMC3WG2H.mjs} +2 -2
  910. package/dist/{search-field-BPLzy3RR.mjs.map → search-field-BMC3WG2H.mjs.map} +1 -1
  911. package/dist/{search-field-Dx4qCcrh.js → search-field-b1_QCs3U.js} +2 -2
  912. package/dist/{search-field-Dx4qCcrh.js.map → search-field-b1_QCs3U.js.map} +1 -1
  913. package/dist/search-field.cjs.js +1 -1
  914. package/dist/search-field.es.js +1 -1
  915. package/dist/select-D6R7I5b5.js +2 -0
  916. package/dist/select-D6R7I5b5.js.map +1 -0
  917. package/dist/{select-BEmu_fh9.mjs → select-XNPtpZhh.mjs} +59 -63
  918. package/dist/select-XNPtpZhh.mjs.map +1 -0
  919. package/dist/select.cjs.js +1 -1
  920. package/dist/select.es.js +1 -1
  921. package/dist/table-CR2Wj-O9.js +9 -0
  922. package/dist/{table-rS3hITtj.js.map → table-CR2Wj-O9.js.map} +1 -1
  923. package/dist/{table-D9MKkbPO.mjs → table-jvrz_ulj.mjs} +2315 -2337
  924. package/dist/{table-D9MKkbPO.mjs.map → table-jvrz_ulj.mjs.map} +1 -1
  925. package/dist/table.cjs.js +1 -1
  926. package/dist/table.es.js +1 -1
  927. package/dist/{text-field-D8MMa6ij.mjs → text-field-AsvqJh6P.mjs} +135 -135
  928. package/dist/text-field-AsvqJh6P.mjs.map +1 -0
  929. package/dist/{text-field-C2W13n15.js → text-field-CthxpKsp.js} +2 -2
  930. package/dist/text-field-CthxpKsp.js.map +1 -0
  931. package/dist/text-field.cjs.js +1 -1
  932. package/dist/text-field.es.js +1 -1
  933. package/package.json +25 -25
  934. package/dist/select-BEmu_fh9.mjs.map +0 -1
  935. package/dist/select-DOqTJgTj.js +0 -2
  936. package/dist/select-DOqTJgTj.js.map +0 -1
  937. package/dist/table-rS3hITtj.js +0 -9
  938. package/dist/text-field-C2W13n15.js.map +0 -1
  939. package/dist/text-field-D8MMa6ij.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { jsx as r, jsxs as d } from "react/jsx-runtime";
2
- import { isValidElement as W, useRef as A, useState as V, useEffect as M, useCallback as C, useId as G, createElement as J } from "react";
2
+ import { isValidElement as W, useRef as A, useState as V, useEffect as M, useCallback as k, useId as G, createElement as J } from "react";
3
3
  import { c as D } from "./bind-CU-R61T-.mjs";
4
4
  import { a as Q } from "./checkmark.es-DdgIZN2R.mjs";
5
5
  import { e as U } from "./minus.es-BK9qA9iJ.mjs";
@@ -24,8 +24,8 @@ const er = {
24
24
  "purpur-comparison-table-cell--minus": "_purpur-comparison-table-cell--minus_glb5z_20",
25
25
  "purpur-comparison-table-cell__icon": "_purpur-comparison-table-cell__icon_glb5z_23"
26
26
  }, H = D.bind(or), L = "purpur-comparison-table-cell", ar = ({ value: a }) => {
27
- const c = W(a) || ["string", "number"].includes(typeof a), t = H(L, [c ? "" : `${L}--${a ? "check" : "minus"}`]), w = a ? Q : U;
28
- return /* @__PURE__ */ r("span", { className: H(t), children: c ? a : /* @__PURE__ */ r(w, { size: "xs", className: H(`${L}__icon`) }) });
27
+ const c = W(a) || ["string", "number"].includes(typeof a), t = H(L, [c ? "" : `${L}--${a ? "check" : "minus"}`]), y = a ? Q : U;
28
+ return /* @__PURE__ */ r("span", { className: H(t), children: c ? a : /* @__PURE__ */ r(y, { size: "xs", className: H(`${L}__icon`) }) });
29
29
  }, tr = {
30
30
  "purpur-comparison-table-lead-cell": "_purpur-comparison-table-lead-cell_rqs9w_1",
31
31
  "purpur-comparison-table-lead-cell__description": "_purpur-comparison-table-lead-cell__description_rqs9w_5",
@@ -42,56 +42,56 @@ const er = {
42
42
  c && /* @__PURE__ */ r(q, { variant: "paragraph-100", className: O(`${j}__description`), children: c })
43
43
  ] });
44
44
  }, nr = {
45
- "purpur-comparison-table-option-card": "_purpur-comparison-table-option-card_xxwrc_1",
46
- "purpur-comparison-table-option-card--highlighted": "_purpur-comparison-table-option-card--highlighted_xxwrc_11",
47
- "purpur-comparison-table-option-card__badge": "_purpur-comparison-table-option-card__badge_xxwrc_14",
48
- "purpur-comparison-table-option-card__main-content": "_purpur-comparison-table-option-card__main-content_xxwrc_19",
49
- "purpur-comparison-table-option-card__image": "_purpur-comparison-table-option-card__image_xxwrc_25",
50
- "purpur-comparison-table-option-card__body": "_purpur-comparison-table-option-card__body_xxwrc_31",
51
- "purpur-comparison-table-option-card__description": "_purpur-comparison-table-option-card__description_xxwrc_36",
52
- "purpur-comparison-table-option-card__description-text": "_purpur-comparison-table-option-card__description-text_xxwrc_41",
53
- "purpur-comparison-table-option-card__description-inner": "_purpur-comparison-table-option-card__description-inner_xxwrc_50",
54
- "purpur-comparison-table-option-card__read-more": "_purpur-comparison-table-option-card__read-more_xxwrc_53",
55
- "purpur-comparison-table-option-card__read-more--hidden": "_purpur-comparison-table-option-card__read-more--hidden_xxwrc_57",
56
- "purpur-comparison-table-option-card__read-more-icon": "_purpur-comparison-table-option-card__read-more-icon_xxwrc_60",
57
- "purpur-comparison-table-option-card__footer": "_purpur-comparison-table-option-card__footer_xxwrc_68",
58
- "purpur-comparison-table-option-card__price": "_purpur-comparison-table-option-card__price_xxwrc_73",
59
- "purpur-comparison-table-option-card--show-full-descriptions": "_purpur-comparison-table-option-card--show-full-descriptions_xxwrc_80",
60
- "purpur-comparison-table-option-card--first-card": "_purpur-comparison-table-option-card--first-card_xxwrc_118"
45
+ "purpur-comparison-table-option-card": "_purpur-comparison-table-option-card_zggg8_1",
46
+ "purpur-comparison-table-option-card--highlighted": "_purpur-comparison-table-option-card--highlighted_zggg8_11",
47
+ "purpur-comparison-table-option-card__badge": "_purpur-comparison-table-option-card__badge_zggg8_14",
48
+ "purpur-comparison-table-option-card__main-content": "_purpur-comparison-table-option-card__main-content_zggg8_19",
49
+ "purpur-comparison-table-option-card__image": "_purpur-comparison-table-option-card__image_zggg8_25",
50
+ "purpur-comparison-table-option-card__body": "_purpur-comparison-table-option-card__body_zggg8_31",
51
+ "purpur-comparison-table-option-card__description": "_purpur-comparison-table-option-card__description_zggg8_36",
52
+ "purpur-comparison-table-option-card__description-text": "_purpur-comparison-table-option-card__description-text_zggg8_41",
53
+ "purpur-comparison-table-option-card__description-inner": "_purpur-comparison-table-option-card__description-inner_zggg8_50",
54
+ "purpur-comparison-table-option-card__read-more": "_purpur-comparison-table-option-card__read-more_zggg8_56",
55
+ "purpur-comparison-table-option-card__read-more--hidden": "_purpur-comparison-table-option-card__read-more--hidden_zggg8_60",
56
+ "purpur-comparison-table-option-card__read-more-icon": "_purpur-comparison-table-option-card__read-more-icon_zggg8_63",
57
+ "purpur-comparison-table-option-card__footer": "_purpur-comparison-table-option-card__footer_zggg8_71",
58
+ "purpur-comparison-table-option-card__price": "_purpur-comparison-table-option-card__price_zggg8_76",
59
+ "purpur-comparison-table-option-card--show-full-descriptions": "_purpur-comparison-table-option-card--show-full-descriptions_zggg8_83",
60
+ "purpur-comparison-table-option-card--first-card": "_purpur-comparison-table-option-card--first-card_zggg8_126"
61
61
  }, _ = D.bind(nr), n = "purpur-comparison-table-option-card", cr = ({
62
62
  id: a,
63
63
  cardIndex: c,
64
64
  description: i,
65
65
  variablePriceText: t,
66
- price: w,
67
- isHighlighted: h,
68
- ariaLabels: g,
69
- badge: f,
70
- actions: v,
71
- isFirstCard: z,
66
+ price: y,
67
+ isHighlighted: g,
68
+ ariaLabels: f,
69
+ badge: h,
70
+ actions: N,
71
+ isFirstCard: C,
72
72
  image: e,
73
73
  title: p,
74
74
  showFullDescriptions: u,
75
75
  toggleShowFullDescriptions: m
76
76
  }) => {
77
- const l = A(null), s = A(null), o = A(u), [b, y] = V(!1), k = _(n, {
78
- [`${n}--highlighted`]: h,
79
- [`${n}--first-card`]: z,
77
+ const l = A(null), s = A(null), o = A(u), [b, x] = V(!1), z = _(n, {
78
+ [`${n}--highlighted`]: g,
79
+ [`${n}--first-card`]: C,
80
80
  [`${n}--show-full-descriptions`]: u
81
81
  });
82
82
  M(() => {
83
83
  o.current = u;
84
84
  }, [u]);
85
- const I = C(() => {
85
+ const I = k(() => {
86
86
  if (o.current)
87
87
  return;
88
88
  const S = l.current, E = s.current;
89
89
  if (!S || !E) {
90
- y(!1);
90
+ x(!1);
91
91
  return;
92
92
  }
93
93
  const B = S.clientHeight, K = E.offsetHeight;
94
- y(K > B + 1);
94
+ x(K > B + 1);
95
95
  }, []);
96
96
  M(() => {
97
97
  const S = l.current;
@@ -116,14 +116,14 @@ const er = {
116
116
  "aria-hidden": !b,
117
117
  tabIndex: b ? void 0 : -1,
118
118
  children: [
119
- /* @__PURE__ */ r("span", { className: _(`${n}__read-more-text`), children: u ? g.readLess : g.readMore }),
119
+ /* @__PURE__ */ r("span", { className: _(`${n}__read-more-text`), children: u ? f.readLess : f.readMore }),
120
120
  /* @__PURE__ */ r(F, { className: _(`${n}__read-more-icon`), size: "xs" })
121
121
  ]
122
122
  }
123
123
  )
124
124
  ] }) : null;
125
- return /* @__PURE__ */ d("article", { className: k, "data-card-id": a, "data-card-index": c, children: [
126
- f && /* @__PURE__ */ r(X, { ...f, className: _(`${n}__badge`) }),
125
+ return /* @__PURE__ */ d("article", { className: z, "data-card-id": a, "data-card-index": c, children: [
126
+ h && /* @__PURE__ */ r(X, { ...h, className: _(`${n}__badge`) }),
127
127
  /* @__PURE__ */ d("section", { className: _(`${n}__main-content`), children: [
128
128
  /* @__PURE__ */ r("img", { src: e.src, alt: e.alt, className: _(`${n}__image`) }),
129
129
  /* @__PURE__ */ d("div", { className: _(`${n}__body`), children: [
@@ -134,9 +134,9 @@ const er = {
134
134
  /* @__PURE__ */ d("footer", { className: _(`${n}__footer`), children: [
135
135
  /* @__PURE__ */ d("span", { className: _(`${n}__price`), id: a, children: [
136
136
  /* @__PURE__ */ r(q, { variant: "paragraph-100", children: t }),
137
- /* @__PURE__ */ r(q, { variant: "paragraph-100-bold", children: w })
137
+ /* @__PURE__ */ r(q, { variant: "paragraph-100-bold", children: y })
138
138
  ] }),
139
- v
139
+ N
140
140
  ] })
141
141
  ] });
142
142
  }, ir = "_active_kvsnm_44", pr = {
@@ -147,8 +147,8 @@ const er = {
147
147
  "purpur-comparison-table-scroll-progress__buttons": "_purpur-comparison-table-scroll-progress__buttons_kvsnm_48",
148
148
  "purpur-comparison-table-scroll-progress__button": "_purpur-comparison-table-scroll-progress__button_kvsnm_48",
149
149
  "purpur-comparison-table-scroll-progress__button-icon": "_purpur-comparison-table-scroll-progress__button-icon_kvsnm_57"
150
- }, x = D.bind(pr), $ = "purpur-comparison-table-scroll-progress", lr = ({ items: a, container: c, ariaLabels: i }) => {
151
- const [t, w] = V(/* @__PURE__ */ new Set()), h = C(
150
+ }, $ = D.bind(pr), v = "purpur-comparison-table-scroll-progress", lr = ({ items: a, container: c, ariaLabels: i }) => {
151
+ const [t, y] = V(/* @__PURE__ */ new Set()), g = k(
152
152
  (e) => {
153
153
  const p = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
154
154
  c.current?.querySelector(
@@ -156,26 +156,26 @@ const er = {
156
156
  )?.scrollIntoView({ behavior: p ? "instant" : "smooth", block: "nearest" });
157
157
  },
158
158
  [c]
159
- ), g = C(() => {
159
+ ), f = k(() => {
160
160
  if (t.size === 0) return;
161
161
  const p = Math.min(...Array.from(t)) - 1;
162
- p < 0 || h(p);
163
- }, [t, h]), f = C(() => {
162
+ p < 0 || g(p);
163
+ }, [t, g]), h = k(() => {
164
164
  if (t.size === 0) return;
165
165
  const p = Math.max(...Array.from(t)) + 1;
166
- p >= a.length || h(p);
167
- }, [t, a.length, h]), v = C(
166
+ p >= a.length || g(p);
167
+ }, [t, a.length, g]), N = k(
168
168
  (e) => {
169
- (e.key === "ArrowRight" || e.key === "ArrowLeft") && (e.preventDefault(), e.key === "ArrowRight" ? f() : e.key === "ArrowLeft" && g());
169
+ (e.key === "ArrowRight" || e.key === "ArrowLeft") && (e.preventDefault(), e.key === "ArrowRight" ? h() : e.key === "ArrowLeft" && f());
170
170
  },
171
- [f, g]
171
+ [h, f]
172
172
  );
173
173
  M(() => {
174
174
  const e = c.current;
175
175
  if (!e) return;
176
176
  const p = new IntersectionObserver(
177
177
  (u) => {
178
- w((m) => {
178
+ y((m) => {
179
179
  const l = new Set(m);
180
180
  return u.forEach((s) => {
181
181
  const o = Number(s.target.getAttribute("data-card-index"));
@@ -192,9 +192,9 @@ const er = {
192
192
  }, [c, a]), M(() => {
193
193
  const e = c.current;
194
194
  if (e)
195
- return e.addEventListener("keydown", v), () => e.removeEventListener("keydown", v);
196
- }, [c, v]);
197
- const z = () => {
195
+ return e.addEventListener("keydown", N), () => e.removeEventListener("keydown", N);
196
+ }, [c, N]);
197
+ const C = () => {
198
198
  if (t.size === 0) return;
199
199
  const e = [], p = t.size, u = Math.min(...Array.from(t)), m = a.slice(0, u).length, l = a.slice(u + p).length;
200
200
  let s = 0;
@@ -202,24 +202,24 @@ const er = {
202
202
  if (m + 1 !== o && m <= o && o < a.length - l) continue;
203
203
  let b = "active";
204
204
  (o < m || o > a.length - 1 - l) && (b = ""), e.push(
205
- /* @__PURE__ */ r("li", { className: x(`${$}__indicator`, b) }, `indicator-${s++}`)
205
+ /* @__PURE__ */ r("li", { className: $(`${v}__indicator`, b) }, `indicator-${s++}`)
206
206
  );
207
207
  }
208
208
  return e.length < 2 ? null : e;
209
209
  };
210
- return /* @__PURE__ */ d("li", { className: x($), children: [
211
- /* @__PURE__ */ r("ul", { className: x(`${$}__indicators`), children: z() }),
212
- /* @__PURE__ */ d("div", { className: x(`${$}__buttons`), children: [
210
+ return /* @__PURE__ */ d("li", { className: $(v), children: [
211
+ /* @__PURE__ */ r("ul", { className: $(`${v}__indicators`), children: C() }),
212
+ /* @__PURE__ */ d("div", { className: $(`${v}__buttons`), children: [
213
213
  /* @__PURE__ */ r(
214
214
  P,
215
215
  {
216
216
  "aria-label": i.previous,
217
217
  variant: "secondary",
218
218
  iconOnly: !0,
219
- className: x(`${$}__button`),
219
+ className: $(`${v}__button`),
220
220
  disabled: t.has(0),
221
- onClick: g,
222
- children: /* @__PURE__ */ r(Z, { className: x(`${$}__button-icon`), size: "xs" })
221
+ onClick: f,
222
+ children: /* @__PURE__ */ r(Z, { className: $(`${v}__button-icon`), size: "xs" })
223
223
  }
224
224
  ),
225
225
  /* @__PURE__ */ r(
@@ -228,58 +228,58 @@ const er = {
228
228
  "aria-label": i.next,
229
229
  variant: "secondary",
230
230
  iconOnly: !0,
231
- className: x(`${$}__button`),
231
+ className: $(`${v}__button`),
232
232
  disabled: t.has(a.length - 1),
233
- onClick: f,
234
- children: /* @__PURE__ */ r(rr, { className: x(`${$}__button-icon`), size: "xs" })
233
+ onClick: h,
234
+ children: /* @__PURE__ */ r(rr, { className: $(`${v}__button-icon`), size: "xs" })
235
235
  }
236
236
  )
237
237
  ] })
238
238
  ] });
239
- }, R = D.bind(er), N = "purpur-comparison-table", _r = ({
239
+ }, R = D.bind(er), w = "purpur-comparison-table", _r = ({
240
240
  classname: a,
241
241
  features: c,
242
242
  items: i,
243
243
  ariaLabels: t,
244
- variant: w = "primary"
244
+ variant: y = "primary"
245
245
  }) => {
246
- const h = G(), g = R(a, N, `${N}--${w}`), f = A(null), [v, z] = V(!1), e = C(() => {
247
- z((s) => !s);
248
- }, []), p = () => /* @__PURE__ */ d("li", { className: R(`${N}__cards`), children: [
249
- /* @__PURE__ */ r("div", { className: R(`${N}__separator`) }),
246
+ const g = G(), f = R(a, w, `${w}--${y}`), h = A(null), [N, C] = V(!1), e = k(() => {
247
+ C((s) => !s);
248
+ }, []), p = () => /* @__PURE__ */ d("li", { className: R(`${w}__cards`), children: [
249
+ /* @__PURE__ */ r("div", { className: R(`${w}__separator`) }),
250
250
  i.map((s, o) => /* @__PURE__ */ J(
251
251
  cr,
252
252
  {
253
253
  ...s,
254
- showFullDescriptions: v,
254
+ showFullDescriptions: N,
255
255
  toggleShowFullDescriptions: e,
256
256
  key: o,
257
257
  isFirstCard: o === 0,
258
258
  ariaLabels: t,
259
259
  cardIndex: o,
260
- id: `${o}-${h}`
260
+ id: `${o}-${g}`
261
261
  }
262
262
  ))
263
- ] }), u = () => Object.entries(c).map(([s, o], b) => /* @__PURE__ */ d("li", { className: R(`${N}__feature-row`), children: [
263
+ ] }), u = () => Object.entries(c).map(([s, o], b) => /* @__PURE__ */ d("li", { className: R(`${w}__feature-row`), children: [
264
264
  /* @__PURE__ */ r(sr, { title: s, description: o }),
265
- i.map((y, k) => /* @__PURE__ */ r(ar, { value: y.features[s] ?? !1 }, k))
265
+ i.map((x, z) => /* @__PURE__ */ r(ar, { value: x.features[s] ?? !1 }, z))
266
266
  ] }, b)), m = A(0), l = (s) => {
267
- const o = s.currentTarget, b = o.querySelector("[data-card-id]")?.clientWidth ?? 0, y = Math.round(o.scrollLeft / b), k = y * b + y, I = s.timeStamp - m.current, T = Math.abs(o.scrollLeft - k);
268
- m.current && I < 200 || T < 10 || (m.current = s.timeStamp, o.scrollTo({ left: k, behavior: "smooth" }));
267
+ const o = s.currentTarget, b = o.querySelector("[data-card-id]")?.clientWidth ?? 0, x = Math.round(o.scrollLeft / b), z = x * b + x, I = s.timeStamp - m.current, T = Math.abs(o.scrollLeft - z);
268
+ m.current && I < 200 || T < 10 || (m.current = s.timeStamp, o.scrollTo({ left: z, behavior: "smooth" }));
269
269
  };
270
- return /* @__PURE__ */ r("div", { className: R(N + "__wrapper"), children: /* @__PURE__ */ d(
270
+ return /* @__PURE__ */ r("div", { className: R(w + "__wrapper"), children: /* @__PURE__ */ d(
271
271
  "ul",
272
272
  {
273
- id: N + `-${h}`,
274
- ref: f,
275
- className: g,
273
+ id: w + `-${g}`,
274
+ ref: h,
275
+ className: f,
276
276
  onScrollEnd: l,
277
277
  style: {
278
278
  // @ts-expect-error | Typescript doesn't recognize the CSS variable, but it works as intended
279
279
  "--initial-columns": i.length + 1
280
280
  },
281
281
  children: [
282
- /* @__PURE__ */ r(lr, { items: i, container: f, ariaLabels: t }),
282
+ /* @__PURE__ */ r(lr, { items: i, container: h, ariaLabels: t }),
283
283
  p(),
284
284
  u()
285
285
  ]
@@ -290,4 +290,4 @@ _r.displayName = "ComparisonTable";
290
290
  export {
291
291
  _r as C
292
292
  };
293
- //# sourceMappingURL=comparison-table-DQJL1IVC.mjs.map
293
+ //# sourceMappingURL=comparison-table-D1evE0ri.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"comparison-table-DQJL1IVC.mjs","sources":["../../../components/comparison-table/src/components/Cell/cell.tsx","../../../components/comparison-table/src/components/LeadCell/lead-cell.tsx","../../../components/comparison-table/src/components/OptionCard/option-card.tsx","../../../components/comparison-table/src/components/ScrollProgress/scroll-progress.tsx","../../../components/comparison-table/src/comparison-table.tsx"],"sourcesContent":["import React, { isValidElement, type ReactNode } from \"react\";\nimport { IconCheckmark } from \"@purpur/icon/checkmark\";\nimport { IconMinus } from \"@purpur/icon/minus\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./cell.module.scss\";\n\ntype CellProps = {\n value: boolean | ReactNode;\n};\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-comparison-table-cell\";\n\nexport const Cell = ({ value }: CellProps) => {\n const isReactNode = isValidElement(value) || [\"string\", \"number\"].includes(typeof value);\n\n const getClassName = () => {\n if (isReactNode) return \"\";\n return `${rootClassName}--${value ? \"check\" : \"minus\"}`;\n };\n\n const classes = cx(rootClassName, [getClassName()]);\n\n const Icon = value ? IconCheckmark : IconMinus;\n\n return (\n <span className={cx(classes)}>\n {isReactNode ? value : <Icon size=\"xs\" className={cx(`${rootClassName}__icon`)} />}\n </span>\n );\n};\n","import React, { type ReactNode } from \"react\";\nimport { IconChevronDown } from \"@purpur/icon/chevron-down\";\nimport { Paragraph } from \"@purpur/paragraph\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./lead-cell.module.scss\";\n\ntype LeadCellProps = {\n title: string;\n description?: ReactNode;\n};\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-comparison-table-lead-cell\";\n\nexport const LeadCell = ({ title, description }: LeadCellProps) => {\n const isExpandable = typeof description === \"string\";\n const classes = cx(rootClassName);\n\n return (\n <details className={classes} data-is-expandable={isExpandable}>\n <summary className={cx(`${rootClassName}__summary`)} tabIndex={isExpandable ? 0 : -1}>\n <Paragraph className={cx(`${rootClassName}__summary-title`)} variant=\"paragraph-100-bold\">\n {title}\n </Paragraph>\n <IconChevronDown className={cx(`${rootClassName}__summary-icon`)} size=\"sm\" />\n </summary>\n {description && (\n <Paragraph variant=\"paragraph-100\" className={cx(`${rootClassName}__description`)}>\n {description}\n </Paragraph>\n )}\n </details>\n );\n};\n","import React, { type ReactNode, useCallback, useEffect, useRef, useState } from \"react\";\nimport { Badge, type BadgeProps } from \"@purpur/badge\";\nimport { Button } from \"@purpur/button\";\nimport { Heading } from \"@purpur/heading\";\nimport { IconChevronDown } from \"@purpur/icon/chevron-down\";\nimport { Paragraph } from \"@purpur/paragraph\";\nimport c from \"classnames/bind\";\n\nimport { type ComparisonTableProps } from \"../../comparison-table\";\nimport styles from \"./option-card.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-comparison-table-option-card\";\n\nexport type OptionCardProps = {\n image: {\n src: string;\n alt: string;\n };\n\n title: string;\n description: ReactNode;\n variablePriceText: string;\n price: string;\n\n actions: ReactNode;\n\n badge?: BadgeProps;\n isHighlighted?: boolean;\n};\n\ntype OptionCardPropsAdditions = {\n id: string;\n cardIndex: number;\n isFirstCard: boolean;\n ariaLabels: ComparisonTableProps[\"ariaLabels\"];\n\n showFullDescriptions: boolean;\n toggleShowFullDescriptions: () => void;\n};\n\nexport const OptionCard = ({\n id,\n cardIndex,\n description,\n variablePriceText,\n price,\n isHighlighted,\n ariaLabels,\n badge,\n actions,\n isFirstCard,\n image,\n title,\n showFullDescriptions,\n toggleShowFullDescriptions,\n}: OptionCardProps & OptionCardPropsAdditions) => {\n const descriptionRef = useRef<HTMLDivElement | HTMLParagraphElement>(null);\n const descriptionContentRef = useRef<HTMLDivElement | null>(null);\n const showFullDescriptionsRef = useRef(showFullDescriptions);\n const [descriptionOverflows, setDescriptionOverflows] = useState(false);\n\n const classes = cx(rootClassName, {\n [`${rootClassName}--highlighted`]: isHighlighted,\n [`${rootClassName}--first-card`]: isFirstCard,\n [`${rootClassName}--show-full-descriptions`]: showFullDescriptions,\n });\n\n useEffect(() => {\n showFullDescriptionsRef.current = showFullDescriptions;\n }, [showFullDescriptions]);\n\n const checkDescriptionOverflow = useCallback(() => {\n if (showFullDescriptionsRef.current) {\n return;\n }\n\n const description = descriptionRef.current;\n const descriptionContent = descriptionContentRef.current;\n\n if (!description || !descriptionContent) {\n setDescriptionOverflows(false);\n return;\n }\n\n const descriptionHeight = description.clientHeight;\n const contentHeight = descriptionContent.offsetHeight;\n\n setDescriptionOverflows(contentHeight > descriptionHeight + 1);\n }, []);\n\n useEffect(() => {\n const descriptionElement = descriptionRef.current;\n\n checkDescriptionOverflow();\n\n if (!descriptionElement || typeof ResizeObserver === \"undefined\") {\n return undefined;\n }\n\n const resizeObserver = new ResizeObserver(checkDescriptionOverflow);\n resizeObserver.observe(descriptionElement);\n\n return () => {\n resizeObserver.disconnect();\n };\n }, [checkDescriptionOverflow, description]);\n\n const renderDescription = () => {\n if (!description) return null;\n\n return (\n <div className={cx(`${rootClassName}__description`)}>\n {typeof description === \"string\" ? (\n <Paragraph ref={descriptionRef} className={cx(`${rootClassName}__description-text`)}>\n <span ref={descriptionContentRef}>{description}</span>\n </Paragraph>\n ) : (\n <div ref={descriptionRef} className={cx(`${rootClassName}__description-text`)}>\n <div ref={descriptionContentRef} className={cx(`${rootClassName}__description-inner`)}>\n {description}\n </div>\n </div>\n )}\n <Button\n variant=\"text\"\n size=\"xs\"\n className={cx(`${rootClassName}__read-more`, {\n [`${rootClassName}__read-more--hidden`]: !descriptionOverflows,\n })}\n onClick={toggleShowFullDescriptions}\n aria-hidden={!descriptionOverflows}\n tabIndex={descriptionOverflows ? undefined : -1}\n >\n <span className={cx(`${rootClassName}__read-more-text`)}>\n {showFullDescriptions ? ariaLabels.readLess : ariaLabels.readMore}\n </span>\n <IconChevronDown className={cx(`${rootClassName}__read-more-icon`)} size=\"xs\" />\n </Button>\n </div>\n );\n };\n\n return (\n <article className={classes} data-card-id={id} data-card-index={cardIndex}>\n {badge && <Badge {...badge} className={cx(`${rootClassName}__badge`)} />}\n\n <section className={cx(`${rootClassName}__main-content`)}>\n <img src={image.src} alt={image.alt} className={cx(`${rootClassName}__image`)} />\n\n <div className={cx(`${rootClassName}__body`)}>\n <Heading tag=\"h3\" variant=\"title-200\" className={cx(`${rootClassName}__title`)}>\n {title}\n </Heading>\n {renderDescription()}\n </div>\n </section>\n\n <footer className={cx(`${rootClassName}__footer`)}>\n <span className={cx(`${rootClassName}__price`)} id={id}>\n <Paragraph variant=\"paragraph-100\">{variablePriceText}</Paragraph>\n <Paragraph variant=\"paragraph-100-bold\">{price}</Paragraph>\n </span>\n\n {actions}\n </footer>\n </article>\n );\n};\n","import React, { type RefObject, useCallback, useEffect, useState } from \"react\";\nimport { Button } from \"@purpur/button\";\nimport { IconArrowLeft } from \"@purpur/icon/arrow-left\";\nimport { IconArrowRight } from \"@purpur/icon/arrow-right\";\nimport c from \"classnames/bind\";\n\nimport { type ComparisonTableProps, type Features, type Item } from \"../../comparison-table\";\nimport styles from \"./scroll-progress.module.scss\";\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-comparison-table-scroll-progress\";\n\ntype ScrollProgressProps = {\n items: Array<Item<Features>>;\n container: RefObject<HTMLUListElement | null>;\n ariaLabels: ComparisonTableProps[\"ariaLabels\"];\n};\n\nexport const ScrollProgress = ({ items, container, ariaLabels }: ScrollProgressProps) => {\n const [inViewSet, setInViewSet] = useState<Set<number>>(new Set());\n\n const scrollToCard = useCallback(\n (index: number) => {\n const reduceMotion = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n\n const card = container.current?.querySelector(\n `[data-card-index=\"${index}\"]`\n ) as HTMLElement | null;\n card?.scrollIntoView({ behavior: reduceMotion ? \"instant\" : \"smooth\", block: \"nearest\" });\n },\n [container]\n );\n\n const previousCard = useCallback(() => {\n if (inViewSet.size === 0) return;\n\n const leftmostactiveIndex = Math.min(...Array.from(inViewSet));\n const targetIndex = leftmostactiveIndex - 1;\n\n if (targetIndex < 0) return;\n\n scrollToCard(targetIndex);\n }, [inViewSet, scrollToCard]);\n\n const nextCard = useCallback(() => {\n if (inViewSet.size === 0) return;\n\n const rightmostactiveIndex = Math.max(...Array.from(inViewSet));\n const targetIndex = rightmostactiveIndex + 1;\n\n if (targetIndex >= items.length) return;\n\n scrollToCard(targetIndex);\n }, [inViewSet, items.length, scrollToCard]);\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (e.key === \"ArrowRight\" || e.key === \"ArrowLeft\") {\n e.preventDefault();\n\n if (e.key === \"ArrowRight\") nextCard();\n else if (e.key === \"ArrowLeft\") previousCard();\n }\n },\n [nextCard, previousCard]\n );\n\n useEffect(() => {\n const root = container.current;\n\n if (!root) return;\n\n const observer = new IntersectionObserver(\n (entries) => {\n setInViewSet((prev) => {\n const next = new Set(prev);\n\n entries.forEach((entry) => {\n const index = Number(entry.target.getAttribute(\"data-card-index\"));\n\n if (Number.isNaN(index)) return;\n\n if (entry.isIntersecting) {\n next.add(index);\n } else {\n next.delete(index);\n }\n });\n return next;\n });\n },\n { root, threshold: 0.5 }\n );\n\n items.forEach((_, index) => {\n const card = root.querySelector(`[data-card-index=\"${index}\"]`) as HTMLElement | null;\n\n if (card) observer.observe(card);\n });\n\n return () => observer.disconnect();\n }, [container, items]);\n\n useEffect(() => {\n const root = container.current;\n\n if (!root) return;\n\n root.addEventListener(\"keydown\", handleKeyDown);\n\n return () => root.removeEventListener(\"keydown\", handleKeyDown);\n }, [container, handleKeyDown]);\n\n const renderIndicators = () => {\n if (inViewSet.size === 0) return;\n\n const indicators = [];\n const viewCapacity = inViewSet.size;\n const leftmostActiveIndex = Math.min(...Array.from(inViewSet));\n const head = items.slice(0, leftmostActiveIndex).length;\n const trail = items.slice(leftmostActiveIndex + viewCapacity).length;\n\n let key = 0;\n\n for (let i = 0; i < items.length; i++) {\n if (head + 1 !== i && head <= i && i < items.length - trail) continue;\n\n let status = \"active\";\n\n if (i < head || i > items.length - 1 - trail) status = \"\";\n\n indicators.push(\n <li key={`indicator-${key++}`} className={cx(`${rootClassName}__indicator`, status)} />\n );\n }\n\n if (indicators.length < 2) return null;\n\n return indicators;\n };\n\n return (\n <li className={cx(rootClassName)}>\n <ul className={cx(`${rootClassName}__indicators`)}>{renderIndicators()}</ul>\n\n <div className={cx(`${rootClassName}__buttons`)}>\n <Button\n aria-label={ariaLabels.previous}\n variant=\"secondary\"\n iconOnly\n className={cx(`${rootClassName}__button`)}\n disabled={inViewSet.has(0)}\n onClick={previousCard}\n >\n <IconArrowLeft className={cx(`${rootClassName}__button-icon`)} size=\"xs\" />\n </Button>\n <Button\n aria-label={ariaLabels.next}\n variant=\"secondary\"\n iconOnly\n className={cx(`${rootClassName}__button`)}\n disabled={inViewSet.has(items.length - 1)}\n onClick={nextCard}\n >\n <IconArrowRight className={cx(`${rootClassName}__button-icon`)} size=\"xs\" />\n </Button>\n </div>\n </li>\n );\n};\n","import React, { type ReactNode, type UIEvent, useCallback, useId, useRef, useState } from \"react\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./comparison-table.module.scss\";\nimport { Cell } from \"./components/Cell/cell\";\nimport { LeadCell } from \"./components/LeadCell/lead-cell\";\nimport { OptionCard, type OptionCardProps } from \"./components/OptionCard/option-card\";\nimport { ScrollProgress } from \"./components/ScrollProgress/scroll-progress\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-comparison-table\";\n\nexport type Features = Record<string, ReactNode | null>;\n\nexport type Item<TFeatures extends Features = Features> = OptionCardProps & {\n features: Partial<Record<keyof TFeatures, ReactNode | string | boolean>>;\n};\n\nexport type ComparisonTableProps<TFeatures extends Features = Features> = {\n /** List of features that can be supported by the comparison table\n *\n * string = description of the feature that can be viewed by expanding cell.\n *\n * null = no description\n *\n {\n [featureName]: ReactNode | null\n }\n */\n features: TFeatures;\n\n /** List of items to be displayed in the comparison table\n *\n *\n Item = {\n image: {\n src: string;\n alt: string;\n };\n\n title: string;\n description: string;\n variablePriceText: string;\n price: string;\n actions: ReactNode;\n badge?: BadgeProps;\n isHighlighted?: boolean;\n\n features: {\n [featureName in keyof Features]?: string | boolean;\n };\n }\n */\n items: Array<Item<TFeatures>>;\n\n /** Aria labels for the comparison table and various components\n *\n {\n previous: string;\n next: string;\n readMore: string;\n readLess: string;\n }\n */\n ariaLabels: {\n previous: string;\n next: string;\n readMore: string;\n readLess: string;\n };\n variant?: \"primary\" | \"secondary\";\n classname?: string;\n};\n\nexport const ComparisonTable = <TFeatures extends Features>({\n classname,\n features,\n items,\n ariaLabels,\n variant = \"primary\",\n}: ComparisonTableProps<TFeatures>) => {\n const id = useId();\n const classes = cx(classname, rootClassName, `${rootClassName}--${variant}`);\n const containerRef = useRef<HTMLUListElement>(null);\n const [showFullDescriptions, setShowFullDescriptions] = useState(false);\n\n const handleToggleShowFullDescriptions = useCallback(() => {\n setShowFullDescriptions((prev) => !prev);\n }, []);\n\n const renderCards = () => {\n return (\n <li className={cx(`${rootClassName}__cards`)}>\n <div className={cx(`${rootClassName}__separator`)} />\n {items.map((item, index) => (\n <OptionCard\n {...item}\n showFullDescriptions={showFullDescriptions}\n toggleShowFullDescriptions={handleToggleShowFullDescriptions}\n key={index}\n isFirstCard={index === 0}\n ariaLabels={ariaLabels}\n cardIndex={index}\n id={`${index}-${id}`}\n />\n ))}\n </li>\n );\n };\n\n const renderFeatures = () => {\n return Object.entries(features).map(([title, description], i) => (\n <li key={i} className={cx(`${rootClassName}__feature-row`)}>\n <LeadCell title={title} description={description} />\n {items.map((item, index) => (\n <Cell key={index} value={item.features[title as keyof TFeatures] ?? false} />\n ))}\n </li>\n ));\n };\n\n const deltaTime = useRef(0);\n\n const handleScrollEnd = (e: UIEvent<HTMLUListElement>) => {\n /**\n * This function makes sure that the scroll position is never stuck between two cards, since scroll snap is not fully reliable.\n */\n\n const target = e.currentTarget;\n const cardwidth = target.querySelector(\"[data-card-id]\")?.clientWidth ?? 0;\n const cardPos = Math.round(target.scrollLeft / cardwidth);\n const scrollTarget = cardPos * cardwidth + cardPos;\n const timeDiff = e.timeStamp - deltaTime.current;\n const scrollDiff = Math.abs(target.scrollLeft - scrollTarget);\n\n if (deltaTime.current && timeDiff < 200) return;\n if (scrollDiff < 10) return;\n\n deltaTime.current = e.timeStamp;\n\n target.scrollTo({ left: scrollTarget, behavior: \"smooth\" });\n };\n\n return (\n <div className={cx(rootClassName + \"__wrapper\")}>\n <ul\n id={rootClassName + `-${id}`}\n ref={containerRef}\n className={classes}\n // eslint-disable-next-line react/no-unknown-property\n onScrollEnd={handleScrollEnd}\n style={{\n // @ts-expect-error | Typescript doesn't recognize the CSS variable, but it works as intended\n [\"--initial-columns\"]: items.length + 1,\n }}\n >\n <ScrollProgress items={items} container={containerRef} ariaLabels={ariaLabels} />\n {renderCards()}\n {renderFeatures()}\n </ul>\n </div>\n );\n};\n\nComparisonTable.displayName = \"ComparisonTable\";\n"],"names":["cx","c","styles","rootClassName","Cell","value","isReactNode","isValidElement","classes","Icon","IconCheckmark","IconMinus","jsx","LeadCell","title","description","isExpandable","jsxs","Paragraph","IconChevronDown","OptionCard","id","cardIndex","variablePriceText","price","isHighlighted","ariaLabels","badge","actions","isFirstCard","image","showFullDescriptions","toggleShowFullDescriptions","descriptionRef","useRef","descriptionContentRef","showFullDescriptionsRef","descriptionOverflows","setDescriptionOverflows","useState","useEffect","checkDescriptionOverflow","useCallback","descriptionContent","descriptionHeight","contentHeight","descriptionElement","resizeObserver","renderDescription","Button","Badge","Heading","ScrollProgress","items","container","inViewSet","setInViewSet","scrollToCard","index","reduceMotion","previousCard","targetIndex","nextCard","handleKeyDown","root","observer","entries","prev","next","entry","_","card","renderIndicators","indicators","viewCapacity","leftmostActiveIndex","head","trail","key","i","status","IconArrowLeft","IconArrowRight","ComparisonTable","classname","features","variant","useId","containerRef","setShowFullDescriptions","handleToggleShowFullDescriptions","renderCards","item","createElement","renderFeatures","deltaTime","handleScrollEnd","e","target","cardwidth","cardPos","scrollTarget","timeDiff","scrollDiff"],"mappings":"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"}
1
+ {"version":3,"file":"comparison-table-D1evE0ri.mjs","sources":["../../../components/comparison-table/src/components/Cell/cell.tsx","../../../components/comparison-table/src/components/LeadCell/lead-cell.tsx","../../../components/comparison-table/src/components/OptionCard/option-card.tsx","../../../components/comparison-table/src/components/ScrollProgress/scroll-progress.tsx","../../../components/comparison-table/src/comparison-table.tsx"],"sourcesContent":["import React, { isValidElement, type ReactNode } from \"react\";\nimport { IconCheckmark } from \"@purpur/icon/checkmark\";\nimport { IconMinus } from \"@purpur/icon/minus\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./cell.module.scss\";\n\ntype CellProps = {\n value: boolean | ReactNode;\n};\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-comparison-table-cell\";\n\nexport const Cell = ({ value }: CellProps) => {\n const isReactNode = isValidElement(value) || [\"string\", \"number\"].includes(typeof value);\n\n const getClassName = () => {\n if (isReactNode) return \"\";\n return `${rootClassName}--${value ? \"check\" : \"minus\"}`;\n };\n\n const classes = cx(rootClassName, [getClassName()]);\n\n const Icon = value ? IconCheckmark : IconMinus;\n\n return (\n <span className={cx(classes)}>\n {isReactNode ? value : <Icon size=\"xs\" className={cx(`${rootClassName}__icon`)} />}\n </span>\n );\n};\n","import React, { type ReactNode } from \"react\";\nimport { IconChevronDown } from \"@purpur/icon/chevron-down\";\nimport { Paragraph } from \"@purpur/paragraph\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./lead-cell.module.scss\";\n\ntype LeadCellProps = {\n title: string;\n description?: ReactNode;\n};\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-comparison-table-lead-cell\";\n\nexport const LeadCell = ({ title, description }: LeadCellProps) => {\n const isExpandable = typeof description === \"string\";\n const classes = cx(rootClassName);\n\n return (\n <details className={classes} data-is-expandable={isExpandable}>\n <summary className={cx(`${rootClassName}__summary`)} tabIndex={isExpandable ? 0 : -1}>\n <Paragraph className={cx(`${rootClassName}__summary-title`)} variant=\"paragraph-100-bold\">\n {title}\n </Paragraph>\n <IconChevronDown className={cx(`${rootClassName}__summary-icon`)} size=\"sm\" />\n </summary>\n {description && (\n <Paragraph variant=\"paragraph-100\" className={cx(`${rootClassName}__description`)}>\n {description}\n </Paragraph>\n )}\n </details>\n );\n};\n","import React, { type ReactNode, useCallback, useEffect, useRef, useState } from \"react\";\nimport { Badge, type BadgeProps } from \"@purpur/badge\";\nimport { Button } from \"@purpur/button\";\nimport { Heading } from \"@purpur/heading\";\nimport { IconChevronDown } from \"@purpur/icon/chevron-down\";\nimport { Paragraph } from \"@purpur/paragraph\";\nimport c from \"classnames/bind\";\n\nimport { type ComparisonTableProps } from \"../../comparison-table\";\nimport styles from \"./option-card.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-comparison-table-option-card\";\n\nexport type OptionCardProps = {\n image: {\n src: string;\n alt: string;\n };\n\n title: string;\n description: ReactNode;\n variablePriceText: string;\n price: string;\n\n actions: ReactNode;\n\n badge?: BadgeProps;\n isHighlighted?: boolean;\n};\n\ntype OptionCardPropsAdditions = {\n id: string;\n cardIndex: number;\n isFirstCard: boolean;\n ariaLabels: ComparisonTableProps[\"ariaLabels\"];\n\n showFullDescriptions: boolean;\n toggleShowFullDescriptions: () => void;\n};\n\nexport const OptionCard = ({\n id,\n cardIndex,\n description,\n variablePriceText,\n price,\n isHighlighted,\n ariaLabels,\n badge,\n actions,\n isFirstCard,\n image,\n title,\n showFullDescriptions,\n toggleShowFullDescriptions,\n}: OptionCardProps & OptionCardPropsAdditions) => {\n const descriptionRef = useRef<HTMLDivElement | HTMLParagraphElement>(null);\n const descriptionContentRef = useRef<HTMLDivElement | null>(null);\n const showFullDescriptionsRef = useRef(showFullDescriptions);\n const [descriptionOverflows, setDescriptionOverflows] = useState(false);\n\n const classes = cx(rootClassName, {\n [`${rootClassName}--highlighted`]: isHighlighted,\n [`${rootClassName}--first-card`]: isFirstCard,\n [`${rootClassName}--show-full-descriptions`]: showFullDescriptions,\n });\n\n useEffect(() => {\n showFullDescriptionsRef.current = showFullDescriptions;\n }, [showFullDescriptions]);\n\n const checkDescriptionOverflow = useCallback(() => {\n if (showFullDescriptionsRef.current) {\n return;\n }\n\n const description = descriptionRef.current;\n const descriptionContent = descriptionContentRef.current;\n\n if (!description || !descriptionContent) {\n setDescriptionOverflows(false);\n return;\n }\n\n const descriptionHeight = description.clientHeight;\n const contentHeight = descriptionContent.offsetHeight;\n\n setDescriptionOverflows(contentHeight > descriptionHeight + 1);\n }, []);\n\n useEffect(() => {\n const descriptionElement = descriptionRef.current;\n\n checkDescriptionOverflow();\n\n if (!descriptionElement || typeof ResizeObserver === \"undefined\") {\n return undefined;\n }\n\n const resizeObserver = new ResizeObserver(checkDescriptionOverflow);\n resizeObserver.observe(descriptionElement);\n\n return () => {\n resizeObserver.disconnect();\n };\n }, [checkDescriptionOverflow, description]);\n\n const renderDescription = () => {\n if (!description) return null;\n\n return (\n <div className={cx(`${rootClassName}__description`)}>\n {typeof description === \"string\" ? (\n <Paragraph ref={descriptionRef} className={cx(`${rootClassName}__description-text`)}>\n <span ref={descriptionContentRef}>{description}</span>\n </Paragraph>\n ) : (\n <div ref={descriptionRef} className={cx(`${rootClassName}__description-text`)}>\n <div ref={descriptionContentRef} className={cx(`${rootClassName}__description-inner`)}>\n {description}\n </div>\n </div>\n )}\n <Button\n variant=\"text\"\n size=\"xs\"\n className={cx(`${rootClassName}__read-more`, {\n [`${rootClassName}__read-more--hidden`]: !descriptionOverflows,\n })}\n onClick={toggleShowFullDescriptions}\n aria-hidden={!descriptionOverflows}\n tabIndex={descriptionOverflows ? undefined : -1}\n >\n <span className={cx(`${rootClassName}__read-more-text`)}>\n {showFullDescriptions ? ariaLabels.readLess : ariaLabels.readMore}\n </span>\n <IconChevronDown className={cx(`${rootClassName}__read-more-icon`)} size=\"xs\" />\n </Button>\n </div>\n );\n };\n\n return (\n <article className={classes} data-card-id={id} data-card-index={cardIndex}>\n {badge && <Badge {...badge} className={cx(`${rootClassName}__badge`)} />}\n\n <section className={cx(`${rootClassName}__main-content`)}>\n <img src={image.src} alt={image.alt} className={cx(`${rootClassName}__image`)} />\n\n <div className={cx(`${rootClassName}__body`)}>\n <Heading tag=\"h3\" variant=\"title-200\" className={cx(`${rootClassName}__title`)}>\n {title}\n </Heading>\n {renderDescription()}\n </div>\n </section>\n\n <footer className={cx(`${rootClassName}__footer`)}>\n <span className={cx(`${rootClassName}__price`)} id={id}>\n <Paragraph variant=\"paragraph-100\">{variablePriceText}</Paragraph>\n <Paragraph variant=\"paragraph-100-bold\">{price}</Paragraph>\n </span>\n\n {actions}\n </footer>\n </article>\n );\n};\n","import React, { type RefObject, useCallback, useEffect, useState } from \"react\";\nimport { Button } from \"@purpur/button\";\nimport { IconArrowLeft } from \"@purpur/icon/arrow-left\";\nimport { IconArrowRight } from \"@purpur/icon/arrow-right\";\nimport c from \"classnames/bind\";\n\nimport { type ComparisonTableProps, type Features, type Item } from \"../../comparison-table\";\nimport styles from \"./scroll-progress.module.scss\";\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-comparison-table-scroll-progress\";\n\ntype ScrollProgressProps = {\n items: Array<Item<Features>>;\n container: RefObject<HTMLUListElement | null>;\n ariaLabels: ComparisonTableProps[\"ariaLabels\"];\n};\n\nexport const ScrollProgress = ({ items, container, ariaLabels }: ScrollProgressProps) => {\n const [inViewSet, setInViewSet] = useState<Set<number>>(new Set());\n\n const scrollToCard = useCallback(\n (index: number) => {\n const reduceMotion = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n\n const card = container.current?.querySelector(\n `[data-card-index=\"${index}\"]`\n ) as HTMLElement | null;\n card?.scrollIntoView({ behavior: reduceMotion ? \"instant\" : \"smooth\", block: \"nearest\" });\n },\n [container]\n );\n\n const previousCard = useCallback(() => {\n if (inViewSet.size === 0) return;\n\n const leftmostactiveIndex = Math.min(...Array.from(inViewSet));\n const targetIndex = leftmostactiveIndex - 1;\n\n if (targetIndex < 0) return;\n\n scrollToCard(targetIndex);\n }, [inViewSet, scrollToCard]);\n\n const nextCard = useCallback(() => {\n if (inViewSet.size === 0) return;\n\n const rightmostactiveIndex = Math.max(...Array.from(inViewSet));\n const targetIndex = rightmostactiveIndex + 1;\n\n if (targetIndex >= items.length) return;\n\n scrollToCard(targetIndex);\n }, [inViewSet, items.length, scrollToCard]);\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (e.key === \"ArrowRight\" || e.key === \"ArrowLeft\") {\n e.preventDefault();\n\n if (e.key === \"ArrowRight\") nextCard();\n else if (e.key === \"ArrowLeft\") previousCard();\n }\n },\n [nextCard, previousCard]\n );\n\n useEffect(() => {\n const root = container.current;\n\n if (!root) return;\n\n const observer = new IntersectionObserver(\n (entries) => {\n setInViewSet((prev) => {\n const next = new Set(prev);\n\n entries.forEach((entry) => {\n const index = Number(entry.target.getAttribute(\"data-card-index\"));\n\n if (Number.isNaN(index)) return;\n\n if (entry.isIntersecting) {\n next.add(index);\n } else {\n next.delete(index);\n }\n });\n return next;\n });\n },\n { root, threshold: 0.5 }\n );\n\n items.forEach((_, index) => {\n const card = root.querySelector(`[data-card-index=\"${index}\"]`) as HTMLElement | null;\n\n if (card) observer.observe(card);\n });\n\n return () => observer.disconnect();\n }, [container, items]);\n\n useEffect(() => {\n const root = container.current;\n\n if (!root) return;\n\n root.addEventListener(\"keydown\", handleKeyDown);\n\n return () => root.removeEventListener(\"keydown\", handleKeyDown);\n }, [container, handleKeyDown]);\n\n const renderIndicators = () => {\n if (inViewSet.size === 0) return;\n\n const indicators = [];\n const viewCapacity = inViewSet.size;\n const leftmostActiveIndex = Math.min(...Array.from(inViewSet));\n const head = items.slice(0, leftmostActiveIndex).length;\n const trail = items.slice(leftmostActiveIndex + viewCapacity).length;\n\n let key = 0;\n\n for (let i = 0; i < items.length; i++) {\n if (head + 1 !== i && head <= i && i < items.length - trail) continue;\n\n let status = \"active\";\n\n if (i < head || i > items.length - 1 - trail) status = \"\";\n\n indicators.push(\n <li key={`indicator-${key++}`} className={cx(`${rootClassName}__indicator`, status)} />\n );\n }\n\n if (indicators.length < 2) return null;\n\n return indicators;\n };\n\n return (\n <li className={cx(rootClassName)}>\n <ul className={cx(`${rootClassName}__indicators`)}>{renderIndicators()}</ul>\n\n <div className={cx(`${rootClassName}__buttons`)}>\n <Button\n aria-label={ariaLabels.previous}\n variant=\"secondary\"\n iconOnly\n className={cx(`${rootClassName}__button`)}\n disabled={inViewSet.has(0)}\n onClick={previousCard}\n >\n <IconArrowLeft className={cx(`${rootClassName}__button-icon`)} size=\"xs\" />\n </Button>\n <Button\n aria-label={ariaLabels.next}\n variant=\"secondary\"\n iconOnly\n className={cx(`${rootClassName}__button`)}\n disabled={inViewSet.has(items.length - 1)}\n onClick={nextCard}\n >\n <IconArrowRight className={cx(`${rootClassName}__button-icon`)} size=\"xs\" />\n </Button>\n </div>\n </li>\n );\n};\n","import React, { type ReactNode, type UIEvent, useCallback, useId, useRef, useState } from \"react\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./comparison-table.module.scss\";\nimport { Cell } from \"./components/Cell/cell\";\nimport { LeadCell } from \"./components/LeadCell/lead-cell\";\nimport { OptionCard, type OptionCardProps } from \"./components/OptionCard/option-card\";\nimport { ScrollProgress } from \"./components/ScrollProgress/scroll-progress\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-comparison-table\";\n\nexport type Features = Record<string, ReactNode | null>;\n\nexport type Item<TFeatures extends Features = Features> = OptionCardProps & {\n features: Partial<Record<keyof TFeatures, ReactNode | string | boolean>>;\n};\n\nexport type ComparisonTableProps<TFeatures extends Features = Features> = {\n /** List of features that can be supported by the comparison table\n *\n * string = description of the feature that can be viewed by expanding cell.\n *\n * null = no description\n *\n {\n [featureName]: ReactNode | null\n }\n */\n features: TFeatures;\n\n /** List of items to be displayed in the comparison table\n *\n *\n Item = {\n image: {\n src: string;\n alt: string;\n };\n\n title: string;\n description: string;\n variablePriceText: string;\n price: string;\n actions: ReactNode;\n badge?: BadgeProps;\n isHighlighted?: boolean;\n\n features: {\n [featureName in keyof Features]?: string | boolean;\n };\n }\n */\n items: Array<Item<TFeatures>>;\n\n /** Aria labels for the comparison table and various components\n *\n {\n previous: string;\n next: string;\n readMore: string;\n readLess: string;\n }\n */\n ariaLabels: {\n previous: string;\n next: string;\n readMore: string;\n readLess: string;\n };\n variant?: \"primary\" | \"secondary\";\n classname?: string;\n};\n\nexport const ComparisonTable = <TFeatures extends Features>({\n classname,\n features,\n items,\n ariaLabels,\n variant = \"primary\",\n}: ComparisonTableProps<TFeatures>) => {\n const id = useId();\n const classes = cx(classname, rootClassName, `${rootClassName}--${variant}`);\n const containerRef = useRef<HTMLUListElement>(null);\n const [showFullDescriptions, setShowFullDescriptions] = useState(false);\n\n const handleToggleShowFullDescriptions = useCallback(() => {\n setShowFullDescriptions((prev) => !prev);\n }, []);\n\n const renderCards = () => {\n return (\n <li className={cx(`${rootClassName}__cards`)}>\n <div className={cx(`${rootClassName}__separator`)} />\n {items.map((item, index) => (\n <OptionCard\n {...item}\n showFullDescriptions={showFullDescriptions}\n toggleShowFullDescriptions={handleToggleShowFullDescriptions}\n key={index}\n isFirstCard={index === 0}\n ariaLabels={ariaLabels}\n cardIndex={index}\n id={`${index}-${id}`}\n />\n ))}\n </li>\n );\n };\n\n const renderFeatures = () => {\n return Object.entries(features).map(([title, description], i) => (\n <li key={i} className={cx(`${rootClassName}__feature-row`)}>\n <LeadCell title={title} description={description} />\n {items.map((item, index) => (\n <Cell key={index} value={item.features[title as keyof TFeatures] ?? false} />\n ))}\n </li>\n ));\n };\n\n const deltaTime = useRef(0);\n\n const handleScrollEnd = (e: UIEvent<HTMLUListElement>) => {\n /**\n * This function makes sure that the scroll position is never stuck between two cards, since scroll snap is not fully reliable.\n */\n\n const target = e.currentTarget;\n const cardwidth = target.querySelector(\"[data-card-id]\")?.clientWidth ?? 0;\n const cardPos = Math.round(target.scrollLeft / cardwidth);\n const scrollTarget = cardPos * cardwidth + cardPos;\n const timeDiff = e.timeStamp - deltaTime.current;\n const scrollDiff = Math.abs(target.scrollLeft - scrollTarget);\n\n if (deltaTime.current && timeDiff < 200) return;\n if (scrollDiff < 10) return;\n\n deltaTime.current = e.timeStamp;\n\n target.scrollTo({ left: scrollTarget, behavior: \"smooth\" });\n };\n\n return (\n <div className={cx(rootClassName + \"__wrapper\")}>\n <ul\n id={rootClassName + `-${id}`}\n ref={containerRef}\n className={classes}\n // eslint-disable-next-line react/no-unknown-property\n onScrollEnd={handleScrollEnd}\n style={{\n // @ts-expect-error | Typescript doesn't recognize the CSS variable, but it works as intended\n [\"--initial-columns\"]: items.length + 1,\n }}\n >\n <ScrollProgress items={items} container={containerRef} ariaLabels={ariaLabels} />\n {renderCards()}\n {renderFeatures()}\n </ul>\n </div>\n );\n};\n\nComparisonTable.displayName = \"ComparisonTable\";\n"],"names":["cx","c","styles","rootClassName","Cell","value","isReactNode","isValidElement","classes","Icon","IconCheckmark","IconMinus","jsx","LeadCell","title","description","isExpandable","jsxs","Paragraph","IconChevronDown","OptionCard","id","cardIndex","variablePriceText","price","isHighlighted","ariaLabels","badge","actions","isFirstCard","image","showFullDescriptions","toggleShowFullDescriptions","descriptionRef","useRef","descriptionContentRef","showFullDescriptionsRef","descriptionOverflows","setDescriptionOverflows","useState","useEffect","checkDescriptionOverflow","useCallback","descriptionContent","descriptionHeight","contentHeight","descriptionElement","resizeObserver","renderDescription","Button","Badge","Heading","ScrollProgress","items","container","inViewSet","setInViewSet","scrollToCard","index","reduceMotion","previousCard","targetIndex","nextCard","handleKeyDown","root","observer","entries","prev","next","entry","_","card","renderIndicators","indicators","viewCapacity","leftmostActiveIndex","head","trail","key","i","status","IconArrowLeft","IconArrowRight","ComparisonTable","classname","features","variant","useId","containerRef","setShowFullDescriptions","handleToggleShowFullDescriptions","renderCards","item","createElement","renderFeatures","deltaTime","handleScrollEnd","e","target","cardwidth","cardPos","scrollTarget","timeDiff","scrollDiff"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const r=require("react/jsx-runtime"),a=require("react"),O=require("./bind-DeUYJ6m9.js"),V=require("./checkmark.es-lYntWFA3.js"),F=require("./minus.es-DtXArdKK.js"),P=require("./chevron-down.es-BMjgiS3F.js"),E=require("./paragraph-B8HFdNne.js"),K=require("./badge-CQ0SS_t8.js"),M=require("./button-DmybVApa.js"),W=require("./heading-drD5ugCC.js"),G=require("./arrow-left.es-CCWJyrcQ.js"),J=require("./arrow-right.es-eH-IgGi9.js"),Q={"purpur-comparison-table__wrapper":"_purpur-comparison-table__wrapper_1udkj_1","purpur-comparison-table":"_purpur-comparison-table_1udkj_1","purpur-comparison-table--primary":"_purpur-comparison-table--primary_1udkj_11","purpur-comparison-table--secondary":"_purpur-comparison-table--secondary_1udkj_15","purpur-comparison-table__feature-row":"_purpur-comparison-table__feature-row_1udkj_32","purpur-comparison-table__cards":"_purpur-comparison-table__cards_1udkj_32","purpur-comparison-table__separator":"_purpur-comparison-table__separator_1udkj_49"},U={"purpur-comparison-table-cell":"_purpur-comparison-table-cell_glb5z_1","purpur-comparison-table-cell--check":"_purpur-comparison-table-cell--check_glb5z_17","purpur-comparison-table-cell--minus":"_purpur-comparison-table-cell--minus_glb5z_20","purpur-comparison-table-cell__icon":"_purpur-comparison-table-cell__icon_glb5z_23"},D=O.c.bind(U),T="purpur-comparison-table-cell",X=({value:o})=>{const i=a.isValidElement(o)||["string","number"].includes(typeof o),t=D(T,[i?"":`${T}--${o?"check":"minus"}`]),$=o?V.a:F.e;return r.jsx("span",{className:D(t),children:i?o:r.jsx($,{size:"xs",className:D(`${T}__icon`)})})},Y={"purpur-comparison-table-lead-cell":"_purpur-comparison-table-lead-cell_rqs9w_1","purpur-comparison-table-lead-cell__description":"_purpur-comparison-table-lead-cell__description_rqs9w_5","purpur-comparison-table-lead-cell__summary":"_purpur-comparison-table-lead-cell__summary_rqs9w_40","purpur-comparison-table-lead-cell__summary-title":"_purpur-comparison-table-lead-cell__summary-title_rqs9w_48","purpur-comparison-table-lead-cell__summary-icon":"_purpur-comparison-table-lead-cell__summary-icon_rqs9w_51"},z=O.c.bind(Y),I="purpur-comparison-table-lead-cell",Z=({title:o,description:i})=>{const l=typeof i=="string",t=z(I);return r.jsxs("details",{className:t,"data-is-expandable":l,children:[r.jsxs("summary",{className:z(`${I}__summary`),tabIndex:l?0:-1,children:[r.jsx(E.Paragraph,{className:z(`${I}__summary-title`),variant:"paragraph-100-bold",children:o}),r.jsx(P.l,{className:z(`${I}__summary-icon`),size:"sm"})]}),i&&r.jsx(E.Paragraph,{variant:"paragraph-100",className:z(`${I}__description`),children:i})]})},rr={"purpur-comparison-table-option-card":"_purpur-comparison-table-option-card_xxwrc_1","purpur-comparison-table-option-card--highlighted":"_purpur-comparison-table-option-card--highlighted_xxwrc_11","purpur-comparison-table-option-card__badge":"_purpur-comparison-table-option-card__badge_xxwrc_14","purpur-comparison-table-option-card__main-content":"_purpur-comparison-table-option-card__main-content_xxwrc_19","purpur-comparison-table-option-card__image":"_purpur-comparison-table-option-card__image_xxwrc_25","purpur-comparison-table-option-card__body":"_purpur-comparison-table-option-card__body_xxwrc_31","purpur-comparison-table-option-card__description":"_purpur-comparison-table-option-card__description_xxwrc_36","purpur-comparison-table-option-card__description-text":"_purpur-comparison-table-option-card__description-text_xxwrc_41","purpur-comparison-table-option-card__description-inner":"_purpur-comparison-table-option-card__description-inner_xxwrc_50","purpur-comparison-table-option-card__read-more":"_purpur-comparison-table-option-card__read-more_xxwrc_53","purpur-comparison-table-option-card__read-more--hidden":"_purpur-comparison-table-option-card__read-more--hidden_xxwrc_57","purpur-comparison-table-option-card__read-more-icon":"_purpur-comparison-table-option-card__read-more-icon_xxwrc_60","purpur-comparison-table-option-card__footer":"_purpur-comparison-table-option-card__footer_xxwrc_68","purpur-comparison-table-option-card__price":"_purpur-comparison-table-option-card__price_xxwrc_73","purpur-comparison-table-option-card--show-full-descriptions":"_purpur-comparison-table-option-card--show-full-descriptions_xxwrc_80","purpur-comparison-table-option-card--first-card":"_purpur-comparison-table-option-card--first-card_xxwrc_118"},_=O.c.bind(rr),c="purpur-comparison-table-option-card",er=({id:o,cardIndex:i,description:l,variablePriceText:t,price:$,isHighlighted:x,ariaLabels:f,badge:h,actions:j,isFirstCard:k,image:e,title:p,showFullDescriptions:d,toggleShowFullDescriptions:m})=>{const u=a.useRef(null),n=a.useRef(null),s=a.useRef(d),[b,v]=a.useState(!1),N=_(c,{[`${c}--highlighted`]:x,[`${c}--first-card`]:k,[`${c}--show-full-descriptions`]:d});a.useEffect(()=>{s.current=d},[d]);const C=a.useCallback(()=>{if(s.current)return;const q=u.current,S=n.current;if(!q||!S){v(!1);return}const H=q.clientHeight,B=S.offsetHeight;v(B>H+1)},[]);a.useEffect(()=>{const q=u.current;if(C(),!q||typeof ResizeObserver>"u")return;const S=new ResizeObserver(C);return S.observe(q),()=>{S.disconnect()}},[C,l]);const A=()=>l?r.jsxs("div",{className:_(`${c}__description`),children:[typeof l=="string"?r.jsx(E.Paragraph,{ref:u,className:_(`${c}__description-text`),children:r.jsx("span",{ref:n,children:l})}):r.jsx("div",{ref:u,className:_(`${c}__description-text`),children:r.jsx("div",{ref:n,className:_(`${c}__description-inner`),children:l})}),r.jsxs(M.Button,{variant:"text",size:"xs",className:_(`${c}__read-more`,{[`${c}__read-more--hidden`]:!b}),onClick:m,"aria-hidden":!b,tabIndex:b?void 0:-1,children:[r.jsx("span",{className:_(`${c}__read-more-text`),children:d?f.readLess:f.readMore}),r.jsx(P.l,{className:_(`${c}__read-more-icon`),size:"xs"})]})]}):null;return r.jsxs("article",{className:N,"data-card-id":o,"data-card-index":i,children:[h&&r.jsx(K.Badge,{...h,className:_(`${c}__badge`)}),r.jsxs("section",{className:_(`${c}__main-content`),children:[r.jsx("img",{src:e.src,alt:e.alt,className:_(`${c}__image`)}),r.jsxs("div",{className:_(`${c}__body`),children:[r.jsx(W.Heading,{tag:"h3",variant:"title-200",className:_(`${c}__title`),children:p}),A()]})]}),r.jsxs("footer",{className:_(`${c}__footer`),children:[r.jsxs("span",{className:_(`${c}__price`),id:o,children:[r.jsx(E.Paragraph,{variant:"paragraph-100",children:t}),r.jsx(E.Paragraph,{variant:"paragraph-100-bold",children:$})]}),j]})]})},sr="_active_kvsnm_44",or={"purpur-comparison-table-scroll-progress":"_purpur-comparison-table-scroll-progress_kvsnm_1","purpur-comparison-table-scroll-progress__indicators":"_purpur-comparison-table-scroll-progress__indicators_kvsnm_15","purpur-comparison-table-scroll-progress__indicator":"_purpur-comparison-table-scroll-progress__indicator_kvsnm_15",active:sr,"purpur-comparison-table-scroll-progress__buttons":"_purpur-comparison-table-scroll-progress__buttons_kvsnm_48","purpur-comparison-table-scroll-progress__button":"_purpur-comparison-table-scroll-progress__button_kvsnm_48","purpur-comparison-table-scroll-progress__button-icon":"_purpur-comparison-table-scroll-progress__button-icon_kvsnm_57"},g=O.c.bind(or),w="purpur-comparison-table-scroll-progress",ar=({items:o,container:i,ariaLabels:l})=>{const[t,$]=a.useState(new Set),x=a.useCallback(e=>{const p=window.matchMedia("(prefers-reduced-motion: reduce)").matches;i.current?.querySelector(`[data-card-index="${e}"]`)?.scrollIntoView({behavior:p?"instant":"smooth",block:"nearest"})},[i]),f=a.useCallback(()=>{if(t.size===0)return;const p=Math.min(...Array.from(t))-1;p<0||x(p)},[t,x]),h=a.useCallback(()=>{if(t.size===0)return;const p=Math.max(...Array.from(t))+1;p>=o.length||x(p)},[t,o.length,x]),j=a.useCallback(e=>{(e.key==="ArrowRight"||e.key==="ArrowLeft")&&(e.preventDefault(),e.key==="ArrowRight"?h():e.key==="ArrowLeft"&&f())},[h,f]);a.useEffect(()=>{const e=i.current;if(!e)return;const p=new IntersectionObserver(d=>{$(m=>{const u=new Set(m);return d.forEach(n=>{const s=Number(n.target.getAttribute("data-card-index"));Number.isNaN(s)||(n.isIntersecting?u.add(s):u.delete(s))}),u})},{root:e,threshold:.5});return o.forEach((d,m)=>{const u=e.querySelector(`[data-card-index="${m}"]`);u&&p.observe(u)}),()=>p.disconnect()},[i,o]),a.useEffect(()=>{const e=i.current;if(e)return e.addEventListener("keydown",j),()=>e.removeEventListener("keydown",j)},[i,j]);const k=()=>{if(t.size===0)return;const e=[],p=t.size,d=Math.min(...Array.from(t)),m=o.slice(0,d).length,u=o.slice(d+p).length;let n=0;for(let s=0;s<o.length;s++){if(m+1!==s&&m<=s&&s<o.length-u)continue;let b="active";(s<m||s>o.length-1-u)&&(b=""),e.push(r.jsx("li",{className:g(`${w}__indicator`,b)},`indicator-${n++}`))}return e.length<2?null:e};return r.jsxs("li",{className:g(w),children:[r.jsx("ul",{className:g(`${w}__indicators`),children:k()}),r.jsxs("div",{className:g(`${w}__buttons`),children:[r.jsx(M.Button,{"aria-label":l.previous,variant:"secondary",iconOnly:!0,className:g(`${w}__button`),disabled:t.has(0),onClick:f,children:r.jsx(G.l,{className:g(`${w}__button-icon`),size:"xs"})}),r.jsx(M.Button,{"aria-label":l.next,variant:"secondary",iconOnly:!0,className:g(`${w}__button`),disabled:t.has(o.length-1),onClick:h,children:r.jsx(J.i,{className:g(`${w}__button-icon`),size:"xs"})})]})]})},R=O.c.bind(Q),y="purpur-comparison-table",L=({classname:o,features:i,items:l,ariaLabels:t,variant:$="primary"})=>{const x=a.useId(),f=R(o,y,`${y}--${$}`),h=a.useRef(null),[j,k]=a.useState(!1),e=a.useCallback(()=>{k(n=>!n)},[]),p=()=>r.jsxs("li",{className:R(`${y}__cards`),children:[r.jsx("div",{className:R(`${y}__separator`)}),l.map((n,s)=>a.createElement(er,{...n,showFullDescriptions:j,toggleShowFullDescriptions:e,key:s,isFirstCard:s===0,ariaLabels:t,cardIndex:s,id:`${s}-${x}`}))]}),d=()=>Object.entries(i).map(([n,s],b)=>r.jsxs("li",{className:R(`${y}__feature-row`),children:[r.jsx(Z,{title:n,description:s}),l.map((v,N)=>r.jsx(X,{value:v.features[n]??!1},N))]},b)),m=a.useRef(0),u=n=>{const s=n.currentTarget,b=s.querySelector("[data-card-id]")?.clientWidth??0,v=Math.round(s.scrollLeft/b),N=v*b+v,C=n.timeStamp-m.current,A=Math.abs(s.scrollLeft-N);m.current&&C<200||A<10||(m.current=n.timeStamp,s.scrollTo({left:N,behavior:"smooth"}))};return r.jsx("div",{className:R(y+"__wrapper"),children:r.jsxs("ul",{id:y+`-${x}`,ref:h,className:f,onScrollEnd:u,style:{"--initial-columns":l.length+1},children:[r.jsx(ar,{items:l,container:h,ariaLabels:t}),p(),d()]})})};L.displayName="ComparisonTable";exports.ComparisonTable=L;
2
- //# sourceMappingURL=comparison-table-DHFpydbq.js.map
1
+ "use strict";const r=require("react/jsx-runtime"),a=require("react"),O=require("./bind-DeUYJ6m9.js"),V=require("./checkmark.es-lYntWFA3.js"),F=require("./minus.es-DtXArdKK.js"),P=require("./chevron-down.es-BMjgiS3F.js"),E=require("./paragraph-B8HFdNne.js"),K=require("./badge-CQ0SS_t8.js"),M=require("./button-DmybVApa.js"),W=require("./heading-drD5ugCC.js"),G=require("./arrow-left.es-CCWJyrcQ.js"),J=require("./arrow-right.es-eH-IgGi9.js"),Q={"purpur-comparison-table__wrapper":"_purpur-comparison-table__wrapper_1udkj_1","purpur-comparison-table":"_purpur-comparison-table_1udkj_1","purpur-comparison-table--primary":"_purpur-comparison-table--primary_1udkj_11","purpur-comparison-table--secondary":"_purpur-comparison-table--secondary_1udkj_15","purpur-comparison-table__feature-row":"_purpur-comparison-table__feature-row_1udkj_32","purpur-comparison-table__cards":"_purpur-comparison-table__cards_1udkj_32","purpur-comparison-table__separator":"_purpur-comparison-table__separator_1udkj_49"},U={"purpur-comparison-table-cell":"_purpur-comparison-table-cell_glb5z_1","purpur-comparison-table-cell--check":"_purpur-comparison-table-cell--check_glb5z_17","purpur-comparison-table-cell--minus":"_purpur-comparison-table-cell--minus_glb5z_20","purpur-comparison-table-cell__icon":"_purpur-comparison-table-cell__icon_glb5z_23"},D=O.c.bind(U),T="purpur-comparison-table-cell",X=({value:o})=>{const i=a.isValidElement(o)||["string","number"].includes(typeof o),t=D(T,[i?"":`${T}--${o?"check":"minus"}`]),j=o?V.a:F.e;return r.jsx("span",{className:D(t),children:i?o:r.jsx(j,{size:"xs",className:D(`${T}__icon`)})})},Y={"purpur-comparison-table-lead-cell":"_purpur-comparison-table-lead-cell_rqs9w_1","purpur-comparison-table-lead-cell__description":"_purpur-comparison-table-lead-cell__description_rqs9w_5","purpur-comparison-table-lead-cell__summary":"_purpur-comparison-table-lead-cell__summary_rqs9w_40","purpur-comparison-table-lead-cell__summary-title":"_purpur-comparison-table-lead-cell__summary-title_rqs9w_48","purpur-comparison-table-lead-cell__summary-icon":"_purpur-comparison-table-lead-cell__summary-icon_rqs9w_51"},S=O.c.bind(Y),I="purpur-comparison-table-lead-cell",Z=({title:o,description:i})=>{const l=typeof i=="string",t=S(I);return r.jsxs("details",{className:t,"data-is-expandable":l,children:[r.jsxs("summary",{className:S(`${I}__summary`),tabIndex:l?0:-1,children:[r.jsx(E.Paragraph,{className:S(`${I}__summary-title`),variant:"paragraph-100-bold",children:o}),r.jsx(P.l,{className:S(`${I}__summary-icon`),size:"sm"})]}),i&&r.jsx(E.Paragraph,{variant:"paragraph-100",className:S(`${I}__description`),children:i})]})},rr={"purpur-comparison-table-option-card":"_purpur-comparison-table-option-card_zggg8_1","purpur-comparison-table-option-card--highlighted":"_purpur-comparison-table-option-card--highlighted_zggg8_11","purpur-comparison-table-option-card__badge":"_purpur-comparison-table-option-card__badge_zggg8_14","purpur-comparison-table-option-card__main-content":"_purpur-comparison-table-option-card__main-content_zggg8_19","purpur-comparison-table-option-card__image":"_purpur-comparison-table-option-card__image_zggg8_25","purpur-comparison-table-option-card__body":"_purpur-comparison-table-option-card__body_zggg8_31","purpur-comparison-table-option-card__description":"_purpur-comparison-table-option-card__description_zggg8_36","purpur-comparison-table-option-card__description-text":"_purpur-comparison-table-option-card__description-text_zggg8_41","purpur-comparison-table-option-card__description-inner":"_purpur-comparison-table-option-card__description-inner_zggg8_50","purpur-comparison-table-option-card__read-more":"_purpur-comparison-table-option-card__read-more_zggg8_56","purpur-comparison-table-option-card__read-more--hidden":"_purpur-comparison-table-option-card__read-more--hidden_zggg8_60","purpur-comparison-table-option-card__read-more-icon":"_purpur-comparison-table-option-card__read-more-icon_zggg8_63","purpur-comparison-table-option-card__footer":"_purpur-comparison-table-option-card__footer_zggg8_71","purpur-comparison-table-option-card__price":"_purpur-comparison-table-option-card__price_zggg8_76","purpur-comparison-table-option-card--show-full-descriptions":"_purpur-comparison-table-option-card--show-full-descriptions_zggg8_83","purpur-comparison-table-option-card--first-card":"_purpur-comparison-table-option-card--first-card_zggg8_126"},_=O.c.bind(rr),c="purpur-comparison-table-option-card",er=({id:o,cardIndex:i,description:l,variablePriceText:t,price:j,isHighlighted:g,ariaLabels:f,badge:h,actions:v,isFirstCard:k,image:e,title:p,showFullDescriptions:d,toggleShowFullDescriptions:m})=>{const u=a.useRef(null),n=a.useRef(null),s=a.useRef(d),[b,y]=a.useState(!1),w=_(c,{[`${c}--highlighted`]:g,[`${c}--first-card`]:k,[`${c}--show-full-descriptions`]:d});a.useEffect(()=>{s.current=d},[d]);const z=a.useCallback(()=>{if(s.current)return;const C=u.current,q=n.current;if(!C||!q){y(!1);return}const H=C.clientHeight,B=q.offsetHeight;y(B>H+1)},[]);a.useEffect(()=>{const C=u.current;if(z(),!C||typeof ResizeObserver>"u")return;const q=new ResizeObserver(z);return q.observe(C),()=>{q.disconnect()}},[z,l]);const A=()=>l?r.jsxs("div",{className:_(`${c}__description`),children:[typeof l=="string"?r.jsx(E.Paragraph,{ref:u,className:_(`${c}__description-text`),children:r.jsx("span",{ref:n,children:l})}):r.jsx("div",{ref:u,className:_(`${c}__description-text`),children:r.jsx("div",{ref:n,className:_(`${c}__description-inner`),children:l})}),r.jsxs(M.Button,{variant:"text",size:"xs",className:_(`${c}__read-more`,{[`${c}__read-more--hidden`]:!b}),onClick:m,"aria-hidden":!b,tabIndex:b?void 0:-1,children:[r.jsx("span",{className:_(`${c}__read-more-text`),children:d?f.readLess:f.readMore}),r.jsx(P.l,{className:_(`${c}__read-more-icon`),size:"xs"})]})]}):null;return r.jsxs("article",{className:w,"data-card-id":o,"data-card-index":i,children:[h&&r.jsx(K.Badge,{...h,className:_(`${c}__badge`)}),r.jsxs("section",{className:_(`${c}__main-content`),children:[r.jsx("img",{src:e.src,alt:e.alt,className:_(`${c}__image`)}),r.jsxs("div",{className:_(`${c}__body`),children:[r.jsx(W.Heading,{tag:"h3",variant:"title-200",className:_(`${c}__title`),children:p}),A()]})]}),r.jsxs("footer",{className:_(`${c}__footer`),children:[r.jsxs("span",{className:_(`${c}__price`),id:o,children:[r.jsx(E.Paragraph,{variant:"paragraph-100",children:t}),r.jsx(E.Paragraph,{variant:"paragraph-100-bold",children:j})]}),v]})]})},sr="_active_kvsnm_44",or={"purpur-comparison-table-scroll-progress":"_purpur-comparison-table-scroll-progress_kvsnm_1","purpur-comparison-table-scroll-progress__indicators":"_purpur-comparison-table-scroll-progress__indicators_kvsnm_15","purpur-comparison-table-scroll-progress__indicator":"_purpur-comparison-table-scroll-progress__indicator_kvsnm_15",active:sr,"purpur-comparison-table-scroll-progress__buttons":"_purpur-comparison-table-scroll-progress__buttons_kvsnm_48","purpur-comparison-table-scroll-progress__button":"_purpur-comparison-table-scroll-progress__button_kvsnm_48","purpur-comparison-table-scroll-progress__button-icon":"_purpur-comparison-table-scroll-progress__button-icon_kvsnm_57"},x=O.c.bind(or),$="purpur-comparison-table-scroll-progress",ar=({items:o,container:i,ariaLabels:l})=>{const[t,j]=a.useState(new Set),g=a.useCallback(e=>{const p=window.matchMedia("(prefers-reduced-motion: reduce)").matches;i.current?.querySelector(`[data-card-index="${e}"]`)?.scrollIntoView({behavior:p?"instant":"smooth",block:"nearest"})},[i]),f=a.useCallback(()=>{if(t.size===0)return;const p=Math.min(...Array.from(t))-1;p<0||g(p)},[t,g]),h=a.useCallback(()=>{if(t.size===0)return;const p=Math.max(...Array.from(t))+1;p>=o.length||g(p)},[t,o.length,g]),v=a.useCallback(e=>{(e.key==="ArrowRight"||e.key==="ArrowLeft")&&(e.preventDefault(),e.key==="ArrowRight"?h():e.key==="ArrowLeft"&&f())},[h,f]);a.useEffect(()=>{const e=i.current;if(!e)return;const p=new IntersectionObserver(d=>{j(m=>{const u=new Set(m);return d.forEach(n=>{const s=Number(n.target.getAttribute("data-card-index"));Number.isNaN(s)||(n.isIntersecting?u.add(s):u.delete(s))}),u})},{root:e,threshold:.5});return o.forEach((d,m)=>{const u=e.querySelector(`[data-card-index="${m}"]`);u&&p.observe(u)}),()=>p.disconnect()},[i,o]),a.useEffect(()=>{const e=i.current;if(e)return e.addEventListener("keydown",v),()=>e.removeEventListener("keydown",v)},[i,v]);const k=()=>{if(t.size===0)return;const e=[],p=t.size,d=Math.min(...Array.from(t)),m=o.slice(0,d).length,u=o.slice(d+p).length;let n=0;for(let s=0;s<o.length;s++){if(m+1!==s&&m<=s&&s<o.length-u)continue;let b="active";(s<m||s>o.length-1-u)&&(b=""),e.push(r.jsx("li",{className:x(`${$}__indicator`,b)},`indicator-${n++}`))}return e.length<2?null:e};return r.jsxs("li",{className:x($),children:[r.jsx("ul",{className:x(`${$}__indicators`),children:k()}),r.jsxs("div",{className:x(`${$}__buttons`),children:[r.jsx(M.Button,{"aria-label":l.previous,variant:"secondary",iconOnly:!0,className:x(`${$}__button`),disabled:t.has(0),onClick:f,children:r.jsx(G.l,{className:x(`${$}__button-icon`),size:"xs"})}),r.jsx(M.Button,{"aria-label":l.next,variant:"secondary",iconOnly:!0,className:x(`${$}__button`),disabled:t.has(o.length-1),onClick:h,children:r.jsx(J.i,{className:x(`${$}__button-icon`),size:"xs"})})]})]})},R=O.c.bind(Q),N="purpur-comparison-table",L=({classname:o,features:i,items:l,ariaLabels:t,variant:j="primary"})=>{const g=a.useId(),f=R(o,N,`${N}--${j}`),h=a.useRef(null),[v,k]=a.useState(!1),e=a.useCallback(()=>{k(n=>!n)},[]),p=()=>r.jsxs("li",{className:R(`${N}__cards`),children:[r.jsx("div",{className:R(`${N}__separator`)}),l.map((n,s)=>a.createElement(er,{...n,showFullDescriptions:v,toggleShowFullDescriptions:e,key:s,isFirstCard:s===0,ariaLabels:t,cardIndex:s,id:`${s}-${g}`}))]}),d=()=>Object.entries(i).map(([n,s],b)=>r.jsxs("li",{className:R(`${N}__feature-row`),children:[r.jsx(Z,{title:n,description:s}),l.map((y,w)=>r.jsx(X,{value:y.features[n]??!1},w))]},b)),m=a.useRef(0),u=n=>{const s=n.currentTarget,b=s.querySelector("[data-card-id]")?.clientWidth??0,y=Math.round(s.scrollLeft/b),w=y*b+y,z=n.timeStamp-m.current,A=Math.abs(s.scrollLeft-w);m.current&&z<200||A<10||(m.current=n.timeStamp,s.scrollTo({left:w,behavior:"smooth"}))};return r.jsx("div",{className:R(N+"__wrapper"),children:r.jsxs("ul",{id:N+`-${g}`,ref:h,className:f,onScrollEnd:u,style:{"--initial-columns":l.length+1},children:[r.jsx(ar,{items:l,container:h,ariaLabels:t}),p(),d()]})})};L.displayName="ComparisonTable";exports.ComparisonTable=L;
2
+ //# sourceMappingURL=comparison-table-Dtqxz8vL.js.map