@nanisoft/prism-ui 0.13.0 → 0.15.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 (943) hide show
  1. package/THIRD-PARTY-NOTICES.md +22 -7
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/blocks/about-01/about.d.ts +296 -0
  4. package/dist/blocks/about-01/about.d.ts.map +1 -0
  5. package/dist/blocks/about-01/about.js +103 -0
  6. package/dist/blocks/about-01/index.d.ts +3 -0
  7. package/dist/blocks/about-01/index.d.ts.map +1 -0
  8. package/dist/blocks/about-01/index.js +1 -0
  9. package/dist/blocks/accept-invite-01/accept-invite.d.ts +324 -0
  10. package/dist/blocks/accept-invite-01/accept-invite.d.ts.map +1 -0
  11. package/dist/blocks/accept-invite-01/accept-invite.js +230 -0
  12. package/dist/blocks/accept-invite-01/index.d.ts +3 -0
  13. package/dist/blocks/accept-invite-01/index.d.ts.map +1 -0
  14. package/dist/blocks/accept-invite-01/index.js +1 -0
  15. package/dist/blocks/account-01/account-01.d.ts +393 -0
  16. package/dist/blocks/account-01/account-01.d.ts.map +1 -0
  17. package/dist/blocks/account-01/account-01.js +215 -0
  18. package/dist/blocks/account-01/index.d.ts +3 -0
  19. package/dist/blocks/account-01/index.d.ts.map +1 -0
  20. package/dist/blocks/account-01/index.js +1 -0
  21. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts +271 -0
  22. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts.map +1 -0
  23. package/dist/blocks/activity-feed-01/activity-feed-01.js +185 -0
  24. package/dist/blocks/activity-feed-01/index.d.ts +3 -0
  25. package/dist/blocks/activity-feed-01/index.d.ts.map +1 -0
  26. package/dist/blocks/activity-feed-01/index.js +1 -0
  27. package/dist/blocks/address-book-01/address-book-01.d.ts +312 -0
  28. package/dist/blocks/address-book-01/address-book-01.d.ts.map +1 -0
  29. package/dist/blocks/address-book-01/address-book-01.js +233 -0
  30. package/dist/blocks/address-book-01/index.d.ts +3 -0
  31. package/dist/blocks/address-book-01/index.d.ts.map +1 -0
  32. package/dist/blocks/address-book-01/index.js +1 -0
  33. package/dist/blocks/audit-log-01/audit-log-01.d.ts +333 -0
  34. package/dist/blocks/audit-log-01/audit-log-01.d.ts.map +1 -0
  35. package/dist/blocks/audit-log-01/audit-log-01.js +211 -0
  36. package/dist/blocks/audit-log-01/index.d.ts +3 -0
  37. package/dist/blocks/audit-log-01/index.d.ts.map +1 -0
  38. package/dist/blocks/audit-log-01/index.js +1 -0
  39. package/dist/blocks/auth-form-01/auth-form.d.ts +40 -1
  40. package/dist/blocks/auth-form-01/auth-form.d.ts.map +1 -1
  41. package/dist/blocks/auth-form-01/auth-form.js +26 -3
  42. package/dist/blocks/awards-01/awards.d.ts +156 -0
  43. package/dist/blocks/awards-01/awards.d.ts.map +1 -0
  44. package/dist/blocks/awards-01/awards.js +102 -0
  45. package/dist/blocks/awards-01/index.d.ts +3 -0
  46. package/dist/blocks/awards-01/index.d.ts.map +1 -0
  47. package/dist/blocks/awards-01/index.js +1 -0
  48. package/dist/blocks/backdrop-01/backdrop.d.ts +268 -0
  49. package/dist/blocks/backdrop-01/backdrop.d.ts.map +1 -0
  50. package/dist/blocks/backdrop-01/backdrop.js +170 -0
  51. package/dist/blocks/backdrop-01/index.d.ts +3 -0
  52. package/dist/blocks/backdrop-01/index.d.ts.map +1 -0
  53. package/dist/blocks/backdrop-01/index.js +1 -0
  54. package/dist/blocks/bento-01/bento-01.d.ts +136 -0
  55. package/dist/blocks/bento-01/bento-01.d.ts.map +1 -0
  56. package/dist/blocks/bento-01/bento-01.js +97 -0
  57. package/dist/blocks/bento-01/index.d.ts +3 -0
  58. package/dist/blocks/bento-01/index.d.ts.map +1 -0
  59. package/dist/blocks/bento-01/index.js +1 -0
  60. package/dist/blocks/billing-source-01/billing-source-01.d.ts +379 -0
  61. package/dist/blocks/billing-source-01/billing-source-01.d.ts.map +1 -0
  62. package/dist/blocks/billing-source-01/billing-source-01.js +222 -0
  63. package/dist/blocks/billing-source-01/index.d.ts +3 -0
  64. package/dist/blocks/billing-source-01/index.d.ts.map +1 -0
  65. package/dist/blocks/billing-source-01/index.js +1 -0
  66. package/dist/blocks/bundle-01/bundle.d.ts +387 -0
  67. package/dist/blocks/bundle-01/bundle.d.ts.map +1 -0
  68. package/dist/blocks/bundle-01/bundle.js +153 -0
  69. package/dist/blocks/bundle-01/index.d.ts +3 -0
  70. package/dist/blocks/bundle-01/index.d.ts.map +1 -0
  71. package/dist/blocks/bundle-01/index.js +1 -0
  72. package/dist/blocks/calendar-01/calendar.d.ts +251 -0
  73. package/dist/blocks/calendar-01/calendar.d.ts.map +1 -0
  74. package/dist/blocks/calendar-01/calendar.js +191 -0
  75. package/dist/blocks/calendar-01/index.d.ts +3 -0
  76. package/dist/blocks/calendar-01/index.d.ts.map +1 -0
  77. package/dist/blocks/calendar-01/index.js +1 -0
  78. package/dist/blocks/capacity-01/capacity.d.ts +363 -0
  79. package/dist/blocks/capacity-01/capacity.d.ts.map +1 -0
  80. package/dist/blocks/capacity-01/capacity.js +208 -0
  81. package/dist/blocks/capacity-01/index.d.ts +3 -0
  82. package/dist/blocks/capacity-01/index.d.ts.map +1 -0
  83. package/dist/blocks/capacity-01/index.js +1 -0
  84. package/dist/blocks/careers-01/careers.d.ts +186 -0
  85. package/dist/blocks/careers-01/careers.d.ts.map +1 -0
  86. package/dist/blocks/careers-01/careers.js +83 -0
  87. package/dist/blocks/careers-01/index.d.ts +3 -0
  88. package/dist/blocks/careers-01/index.d.ts.map +1 -0
  89. package/dist/blocks/careers-01/index.js +1 -0
  90. package/dist/blocks/case-studies-01/case-studies.d.ts +192 -0
  91. package/dist/blocks/case-studies-01/case-studies.d.ts.map +1 -0
  92. package/dist/blocks/case-studies-01/case-studies.js +97 -0
  93. package/dist/blocks/case-studies-01/index.d.ts +3 -0
  94. package/dist/blocks/case-studies-01/index.d.ts.map +1 -0
  95. package/dist/blocks/case-studies-01/index.js +1 -0
  96. package/dist/blocks/case-study-01/case-study.d.ts +214 -0
  97. package/dist/blocks/case-study-01/case-study.d.ts.map +1 -0
  98. package/dist/blocks/case-study-01/case-study.js +79 -0
  99. package/dist/blocks/case-study-01/index.d.ts +3 -0
  100. package/dist/blocks/case-study-01/index.d.ts.map +1 -0
  101. package/dist/blocks/case-study-01/index.js +1 -0
  102. package/dist/blocks/changelog-01/changelog.d.ts +200 -0
  103. package/dist/blocks/changelog-01/changelog.d.ts.map +1 -0
  104. package/dist/blocks/changelog-01/changelog.js +155 -0
  105. package/dist/blocks/changelog-01/index.d.ts +3 -0
  106. package/dist/blocks/changelog-01/index.d.ts.map +1 -0
  107. package/dist/blocks/changelog-01/index.js +1 -0
  108. package/dist/blocks/chart-card-01/chart-card-01.d.ts +149 -0
  109. package/dist/blocks/chart-card-01/chart-card-01.d.ts.map +1 -0
  110. package/dist/blocks/chart-card-01/chart-card-01.js +81 -0
  111. package/dist/blocks/chart-card-01/index.d.ts +3 -0
  112. package/dist/blocks/chart-card-01/index.d.ts.map +1 -0
  113. package/dist/blocks/chart-card-01/index.js +1 -0
  114. package/dist/blocks/chart-group-01/chart-group-01.d.ts +138 -0
  115. package/dist/blocks/chart-group-01/chart-group-01.d.ts.map +1 -0
  116. package/dist/blocks/chart-group-01/chart-group-01.js +74 -0
  117. package/dist/blocks/chart-group-01/index.d.ts +3 -0
  118. package/dist/blocks/chart-group-01/index.d.ts.map +1 -0
  119. package/dist/blocks/chart-group-01/index.js +1 -0
  120. package/dist/blocks/code-sample-01/code-sample.d.ts +193 -0
  121. package/dist/blocks/code-sample-01/code-sample.d.ts.map +1 -0
  122. package/dist/blocks/code-sample-01/code-sample.js +104 -0
  123. package/dist/blocks/code-sample-01/index.d.ts +3 -0
  124. package/dist/blocks/code-sample-01/index.d.ts.map +1 -0
  125. package/dist/blocks/code-sample-01/index.js +1 -0
  126. package/dist/blocks/community-01/community.d.ts +183 -0
  127. package/dist/blocks/community-01/community.d.ts.map +1 -0
  128. package/dist/blocks/community-01/community.js +102 -0
  129. package/dist/blocks/community-01/index.d.ts +3 -0
  130. package/dist/blocks/community-01/index.d.ts.map +1 -0
  131. package/dist/blocks/community-01/index.js +1 -0
  132. package/dist/blocks/compare-01/compare.d.ts +184 -0
  133. package/dist/blocks/compare-01/compare.d.ts.map +1 -0
  134. package/dist/blocks/compare-01/compare.js +106 -0
  135. package/dist/blocks/compare-01/index.d.ts +3 -0
  136. package/dist/blocks/compare-01/index.d.ts.map +1 -0
  137. package/dist/blocks/compare-01/index.js +1 -0
  138. package/dist/blocks/compliance-01/compliance.d.ts +249 -0
  139. package/dist/blocks/compliance-01/compliance.d.ts.map +1 -0
  140. package/dist/blocks/compliance-01/compliance.js +130 -0
  141. package/dist/blocks/compliance-01/index.d.ts +3 -0
  142. package/dist/blocks/compliance-01/index.d.ts.map +1 -0
  143. package/dist/blocks/compliance-01/index.js +1 -0
  144. package/dist/blocks/consent-01/consent.d.ts +211 -0
  145. package/dist/blocks/consent-01/consent.d.ts.map +1 -0
  146. package/dist/blocks/consent-01/consent.js +101 -0
  147. package/dist/blocks/consent-01/index.d.ts +3 -0
  148. package/dist/blocks/consent-01/index.d.ts.map +1 -0
  149. package/dist/blocks/consent-01/index.js +1 -0
  150. package/dist/blocks/contact-01/contact.d.ts +319 -0
  151. package/dist/blocks/contact-01/contact.d.ts.map +1 -0
  152. package/dist/blocks/contact-01/contact.js +211 -0
  153. package/dist/blocks/contact-01/index.d.ts +3 -0
  154. package/dist/blocks/contact-01/index.d.ts.map +1 -0
  155. package/dist/blocks/contact-01/index.js +1 -0
  156. package/dist/blocks/content-grid-01/content-grid.d.ts +262 -0
  157. package/dist/blocks/content-grid-01/content-grid.d.ts.map +1 -0
  158. package/dist/blocks/content-grid-01/content-grid.js +155 -0
  159. package/dist/blocks/content-grid-01/index.d.ts +3 -0
  160. package/dist/blocks/content-grid-01/index.d.ts.map +1 -0
  161. package/dist/blocks/content-grid-01/index.js +1 -0
  162. package/dist/blocks/cta-01/cta.d.ts +7 -1
  163. package/dist/blocks/cta-01/cta.d.ts.map +1 -1
  164. package/dist/blocks/cta-01/cta.js +11 -2
  165. package/dist/blocks/dashboard-01/dashboard-01.d.ts +247 -0
  166. package/dist/blocks/dashboard-01/dashboard-01.d.ts.map +1 -0
  167. package/dist/blocks/dashboard-01/dashboard-01.js +141 -0
  168. package/dist/blocks/dashboard-01/index.d.ts +3 -0
  169. package/dist/blocks/dashboard-01/index.d.ts.map +1 -0
  170. package/dist/blocks/dashboard-01/index.js +1 -0
  171. package/dist/blocks/data-table-01/data-table.d.ts +12 -1
  172. package/dist/blocks/data-table-01/data-table.d.ts.map +1 -1
  173. package/dist/blocks/data-table-01/data-table.js +8 -5
  174. package/dist/blocks/delivery-01/delivery.d.ts +343 -0
  175. package/dist/blocks/delivery-01/delivery.d.ts.map +1 -0
  176. package/dist/blocks/delivery-01/delivery.js +212 -0
  177. package/dist/blocks/delivery-01/index.d.ts +3 -0
  178. package/dist/blocks/delivery-01/index.d.ts.map +1 -0
  179. package/dist/blocks/delivery-01/index.js +1 -0
  180. package/dist/blocks/directory-01/directory-01.d.ts +316 -0
  181. package/dist/blocks/directory-01/directory-01.d.ts.map +1 -0
  182. package/dist/blocks/directory-01/directory-01.js +252 -0
  183. package/dist/blocks/directory-01/index.d.ts +3 -0
  184. package/dist/blocks/directory-01/index.d.ts.map +1 -0
  185. package/dist/blocks/directory-01/index.js +1 -0
  186. package/dist/blocks/download-01/download.d.ts +261 -0
  187. package/dist/blocks/download-01/download.d.ts.map +1 -0
  188. package/dist/blocks/download-01/download.js +115 -0
  189. package/dist/blocks/download-01/index.d.ts +3 -0
  190. package/dist/blocks/download-01/index.d.ts.map +1 -0
  191. package/dist/blocks/download-01/index.js +1 -0
  192. package/dist/blocks/faq-01/faq.d.ts +128 -0
  193. package/dist/blocks/faq-01/faq.d.ts.map +1 -0
  194. package/dist/blocks/faq-01/faq.js +53 -0
  195. package/dist/blocks/faq-01/index.d.ts +3 -0
  196. package/dist/blocks/faq-01/index.d.ts.map +1 -0
  197. package/dist/blocks/faq-01/index.js +1 -0
  198. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts +158 -0
  199. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts.map +1 -0
  200. package/dist/blocks/feature-rows-01/feature-rows-01.js +81 -0
  201. package/dist/blocks/feature-rows-01/index.d.ts +3 -0
  202. package/dist/blocks/feature-rows-01/index.d.ts.map +1 -0
  203. package/dist/blocks/feature-rows-01/index.js +1 -0
  204. package/dist/blocks/feedback-01/feedback.d.ts +235 -0
  205. package/dist/blocks/feedback-01/feedback.d.ts.map +1 -0
  206. package/dist/blocks/feedback-01/feedback.js +113 -0
  207. package/dist/blocks/feedback-01/index.d.ts +3 -0
  208. package/dist/blocks/feedback-01/index.d.ts.map +1 -0
  209. package/dist/blocks/feedback-01/index.js +1 -0
  210. package/dist/blocks/field-map-01/field-map.d.ts +247 -0
  211. package/dist/blocks/field-map-01/field-map.d.ts.map +1 -0
  212. package/dist/blocks/field-map-01/field-map.js +183 -0
  213. package/dist/blocks/field-map-01/index.d.ts +3 -0
  214. package/dist/blocks/field-map-01/index.d.ts.map +1 -0
  215. package/dist/blocks/field-map-01/index.js +1 -0
  216. package/dist/blocks/forgot-password-01/forgot-password.d.ts +288 -0
  217. package/dist/blocks/forgot-password-01/forgot-password.d.ts.map +1 -0
  218. package/dist/blocks/forgot-password-01/forgot-password.js +190 -0
  219. package/dist/blocks/forgot-password-01/index.d.ts +3 -0
  220. package/dist/blocks/forgot-password-01/index.d.ts.map +1 -0
  221. package/dist/blocks/forgot-password-01/index.js +1 -0
  222. package/dist/blocks/gallery-01/gallery.d.ts +208 -0
  223. package/dist/blocks/gallery-01/gallery.d.ts.map +1 -0
  224. package/dist/blocks/gallery-01/gallery.js +174 -0
  225. package/dist/blocks/gallery-01/index.d.ts +3 -0
  226. package/dist/blocks/gallery-01/index.d.ts.map +1 -0
  227. package/dist/blocks/gallery-01/index.js +1 -0
  228. package/dist/blocks/gantt-01/gantt.d.ts +290 -0
  229. package/dist/blocks/gantt-01/gantt.d.ts.map +1 -0
  230. package/dist/blocks/gantt-01/gantt.js +224 -0
  231. package/dist/blocks/gantt-01/index.d.ts +3 -0
  232. package/dist/blocks/gantt-01/index.d.ts.map +1 -0
  233. package/dist/blocks/gantt-01/index.js +1 -0
  234. package/dist/blocks/handoff-01/handoff-01.d.ts +326 -0
  235. package/dist/blocks/handoff-01/handoff-01.d.ts.map +1 -0
  236. package/dist/blocks/handoff-01/handoff-01.js +180 -0
  237. package/dist/blocks/handoff-01/index.d.ts +3 -0
  238. package/dist/blocks/handoff-01/index.d.ts.map +1 -0
  239. package/dist/blocks/handoff-01/index.js +1 -0
  240. package/dist/blocks/help-01/help.d.ts +254 -0
  241. package/dist/blocks/help-01/help.d.ts.map +1 -0
  242. package/dist/blocks/help-01/help.js +188 -0
  243. package/dist/blocks/help-01/index.d.ts +3 -0
  244. package/dist/blocks/help-01/index.d.ts.map +1 -0
  245. package/dist/blocks/help-01/index.js +1 -0
  246. package/dist/blocks/hero-01/hero.d.ts +105 -34
  247. package/dist/blocks/hero-01/hero.d.ts.map +1 -1
  248. package/dist/blocks/hero-01/hero.js +23 -15
  249. package/dist/blocks/hero-01/index.d.ts +1 -1
  250. package/dist/blocks/hero-01/index.d.ts.map +1 -1
  251. package/dist/blocks/hero-02/hero-02.d.ts +244 -0
  252. package/dist/blocks/hero-02/hero-02.d.ts.map +1 -0
  253. package/dist/blocks/hero-02/hero-02.js +87 -0
  254. package/dist/blocks/hero-02/index.d.ts +3 -0
  255. package/dist/blocks/hero-02/index.d.ts.map +1 -0
  256. package/dist/blocks/hero-02/index.js +1 -0
  257. package/dist/blocks/hero-03/hero-03.d.ts +247 -0
  258. package/dist/blocks/hero-03/hero-03.d.ts.map +1 -0
  259. package/dist/blocks/hero-03/hero-03.js +93 -0
  260. package/dist/blocks/hero-03/index.d.ts +3 -0
  261. package/dist/blocks/hero-03/index.d.ts.map +1 -0
  262. package/dist/blocks/hero-03/index.js +1 -0
  263. package/dist/blocks/history-01/history-01.d.ts +414 -0
  264. package/dist/blocks/history-01/history-01.d.ts.map +1 -0
  265. package/dist/blocks/history-01/history-01.js +285 -0
  266. package/dist/blocks/history-01/index.d.ts +3 -0
  267. package/dist/blocks/history-01/index.d.ts.map +1 -0
  268. package/dist/blocks/history-01/index.js +1 -0
  269. package/dist/blocks/inbox-01/inbox.d.ts +349 -0
  270. package/dist/blocks/inbox-01/inbox.d.ts.map +1 -0
  271. package/dist/blocks/inbox-01/inbox.js +244 -0
  272. package/dist/blocks/inbox-01/index.d.ts +3 -0
  273. package/dist/blocks/inbox-01/index.d.ts.map +1 -0
  274. package/dist/blocks/inbox-01/index.js +1 -0
  275. package/dist/blocks/index.d.ts +203 -0
  276. package/dist/blocks/index.d.ts.map +1 -1
  277. package/dist/blocks/index.js +118 -0
  278. package/dist/blocks/industries-01/index.d.ts +3 -0
  279. package/dist/blocks/industries-01/index.d.ts.map +1 -0
  280. package/dist/blocks/industries-01/index.js +1 -0
  281. package/dist/blocks/industries-01/industries.d.ts +164 -0
  282. package/dist/blocks/industries-01/industries.d.ts.map +1 -0
  283. package/dist/blocks/industries-01/industries.js +96 -0
  284. package/dist/blocks/intake-01/index.d.ts +3 -0
  285. package/dist/blocks/intake-01/index.d.ts.map +1 -0
  286. package/dist/blocks/intake-01/index.js +1 -0
  287. package/dist/blocks/intake-01/intake-01.d.ts +305 -0
  288. package/dist/blocks/intake-01/intake-01.d.ts.map +1 -0
  289. package/dist/blocks/intake-01/intake-01.js +178 -0
  290. package/dist/blocks/integration-01/index.d.ts +3 -0
  291. package/dist/blocks/integration-01/index.d.ts.map +1 -0
  292. package/dist/blocks/integration-01/index.js +1 -0
  293. package/dist/blocks/integration-01/integration.d.ts +226 -0
  294. package/dist/blocks/integration-01/integration.d.ts.map +1 -0
  295. package/dist/blocks/integration-01/integration.js +170 -0
  296. package/dist/blocks/invite-user-01/index.d.ts +3 -0
  297. package/dist/blocks/invite-user-01/index.d.ts.map +1 -0
  298. package/dist/blocks/invite-user-01/index.js +1 -0
  299. package/dist/blocks/invite-user-01/invite-user.d.ts +317 -0
  300. package/dist/blocks/invite-user-01/invite-user.d.ts.map +1 -0
  301. package/dist/blocks/invite-user-01/invite-user.js +228 -0
  302. package/dist/blocks/issue-detail-01/index.d.ts +3 -0
  303. package/dist/blocks/issue-detail-01/index.d.ts.map +1 -0
  304. package/dist/blocks/issue-detail-01/index.js +1 -0
  305. package/dist/blocks/issue-detail-01/issue-detail.d.ts +355 -0
  306. package/dist/blocks/issue-detail-01/issue-detail.d.ts.map +1 -0
  307. package/dist/blocks/issue-detail-01/issue-detail.js +187 -0
  308. package/dist/blocks/issue-list-01/index.d.ts +3 -0
  309. package/dist/blocks/issue-list-01/index.d.ts.map +1 -0
  310. package/dist/blocks/issue-list-01/index.js +1 -0
  311. package/dist/blocks/issue-list-01/issue-list.d.ts +298 -0
  312. package/dist/blocks/issue-list-01/issue-list.d.ts.map +1 -0
  313. package/dist/blocks/issue-list-01/issue-list.js +284 -0
  314. package/dist/blocks/kanban-01/index.d.ts +3 -0
  315. package/dist/blocks/kanban-01/index.d.ts.map +1 -0
  316. package/dist/blocks/kanban-01/index.js +1 -0
  317. package/dist/blocks/kanban-01/kanban.d.ts +278 -0
  318. package/dist/blocks/kanban-01/kanban.d.ts.map +1 -0
  319. package/dist/blocks/kanban-01/kanban.js +144 -0
  320. package/dist/blocks/leaderboard-01/index.d.ts +3 -0
  321. package/dist/blocks/leaderboard-01/index.d.ts.map +1 -0
  322. package/dist/blocks/leaderboard-01/index.js +1 -0
  323. package/dist/blocks/leaderboard-01/leaderboard.d.ts +250 -0
  324. package/dist/blocks/leaderboard-01/leaderboard.d.ts.map +1 -0
  325. package/dist/blocks/leaderboard-01/leaderboard.js +121 -0
  326. package/dist/blocks/login-01/index.d.ts +3 -0
  327. package/dist/blocks/login-01/index.d.ts.map +1 -0
  328. package/dist/blocks/login-01/index.js +1 -0
  329. package/dist/blocks/login-01/login-01.d.ts +356 -0
  330. package/dist/blocks/login-01/login-01.d.ts.map +1 -0
  331. package/dist/blocks/login-01/login-01.js +249 -0
  332. package/dist/blocks/logo-cloud-01/index.d.ts +3 -0
  333. package/dist/blocks/logo-cloud-01/index.d.ts.map +1 -0
  334. package/dist/blocks/logo-cloud-01/index.js +1 -0
  335. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts +181 -0
  336. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts.map +1 -0
  337. package/dist/blocks/logo-cloud-01/logo-cloud.js +118 -0
  338. package/dist/blocks/magic-link-01/index.d.ts +3 -0
  339. package/dist/blocks/magic-link-01/index.d.ts.map +1 -0
  340. package/dist/blocks/magic-link-01/index.js +1 -0
  341. package/dist/blocks/magic-link-01/magic-link-01.d.ts +367 -0
  342. package/dist/blocks/magic-link-01/magic-link-01.d.ts.map +1 -0
  343. package/dist/blocks/magic-link-01/magic-link-01.js +233 -0
  344. package/dist/blocks/member-list-01/index.d.ts +3 -0
  345. package/dist/blocks/member-list-01/index.d.ts.map +1 -0
  346. package/dist/blocks/member-list-01/index.js +1 -0
  347. package/dist/blocks/member-list-01/member-list.d.ts +192 -0
  348. package/dist/blocks/member-list-01/member-list.d.ts.map +1 -0
  349. package/dist/blocks/member-list-01/member-list.js +142 -0
  350. package/dist/blocks/milestone-timeline-01/index.d.ts +3 -0
  351. package/dist/blocks/milestone-timeline-01/index.d.ts.map +1 -0
  352. package/dist/blocks/milestone-timeline-01/index.js +1 -0
  353. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts +217 -0
  354. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts.map +1 -0
  355. package/dist/blocks/milestone-timeline-01/milestone-timeline.js +173 -0
  356. package/dist/blocks/newsletter-01/index.d.ts +3 -0
  357. package/dist/blocks/newsletter-01/index.d.ts.map +1 -0
  358. package/dist/blocks/newsletter-01/index.js +1 -0
  359. package/dist/blocks/newsletter-01/newsletter.d.ts +216 -0
  360. package/dist/blocks/newsletter-01/newsletter.d.ts.map +1 -0
  361. package/dist/blocks/newsletter-01/newsletter.js +102 -0
  362. package/dist/blocks/notification-center-01/index.d.ts +3 -0
  363. package/dist/blocks/notification-center-01/index.d.ts.map +1 -0
  364. package/dist/blocks/notification-center-01/index.js +1 -0
  365. package/dist/blocks/notification-center-01/notification-center-01.d.ts +341 -0
  366. package/dist/blocks/notification-center-01/notification-center-01.d.ts.map +1 -0
  367. package/dist/blocks/notification-center-01/notification-center-01.js +203 -0
  368. package/dist/blocks/offer-01/index.d.ts +3 -0
  369. package/dist/blocks/offer-01/index.d.ts.map +1 -0
  370. package/dist/blocks/offer-01/index.js +1 -0
  371. package/dist/blocks/offer-01/offer.d.ts +139 -0
  372. package/dist/blocks/offer-01/offer.d.ts.map +1 -0
  373. package/dist/blocks/offer-01/offer.js +81 -0
  374. package/dist/blocks/offering-01/index.d.ts +3 -0
  375. package/dist/blocks/offering-01/index.d.ts.map +1 -0
  376. package/dist/blocks/offering-01/index.js +1 -0
  377. package/dist/blocks/offering-01/offering.d.ts +245 -0
  378. package/dist/blocks/offering-01/offering.d.ts.map +1 -0
  379. package/dist/blocks/offering-01/offering.js +144 -0
  380. package/dist/blocks/offering-categories-01/index.d.ts +3 -0
  381. package/dist/blocks/offering-categories-01/index.d.ts.map +1 -0
  382. package/dist/blocks/offering-categories-01/index.js +1 -0
  383. package/dist/blocks/offering-categories-01/offering-categories.d.ts +248 -0
  384. package/dist/blocks/offering-categories-01/offering-categories.d.ts.map +1 -0
  385. package/dist/blocks/offering-categories-01/offering-categories.js +153 -0
  386. package/dist/blocks/offering-list-01/index.d.ts +3 -0
  387. package/dist/blocks/offering-list-01/index.d.ts.map +1 -0
  388. package/dist/blocks/offering-list-01/index.js +1 -0
  389. package/dist/blocks/offering-list-01/offering-list.d.ts +362 -0
  390. package/dist/blocks/offering-list-01/offering-list.d.ts.map +1 -0
  391. package/dist/blocks/offering-list-01/offering-list.js +366 -0
  392. package/dist/blocks/onboarding-01/index.d.ts +3 -0
  393. package/dist/blocks/onboarding-01/index.d.ts.map +1 -0
  394. package/dist/blocks/onboarding-01/index.js +1 -0
  395. package/dist/blocks/onboarding-01/onboarding.d.ts +199 -0
  396. package/dist/blocks/onboarding-01/onboarding.d.ts.map +1 -0
  397. package/dist/blocks/onboarding-01/onboarding.js +182 -0
  398. package/dist/blocks/ops-checklist-01/index.d.ts +3 -0
  399. package/dist/blocks/ops-checklist-01/index.d.ts.map +1 -0
  400. package/dist/blocks/ops-checklist-01/index.js +1 -0
  401. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts +308 -0
  402. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts.map +1 -0
  403. package/dist/blocks/ops-checklist-01/ops-checklist-01.js +165 -0
  404. package/dist/blocks/page-header-01/index.d.ts +1 -1
  405. package/dist/blocks/page-header-01/index.d.ts.map +1 -1
  406. package/dist/blocks/page-header-01/page-header.d.ts +124 -11
  407. package/dist/blocks/page-header-01/page-header.d.ts.map +1 -1
  408. package/dist/blocks/page-header-01/page-header.js +25 -9
  409. package/dist/blocks/passkey-01/index.d.ts +3 -0
  410. package/dist/blocks/passkey-01/index.d.ts.map +1 -0
  411. package/dist/blocks/passkey-01/index.js +1 -0
  412. package/dist/blocks/passkey-01/passkey-01.d.ts +334 -0
  413. package/dist/blocks/passkey-01/passkey-01.d.ts.map +1 -0
  414. package/dist/blocks/passkey-01/passkey-01.js +192 -0
  415. package/dist/blocks/permission-matrix-01/index.d.ts +3 -0
  416. package/dist/blocks/permission-matrix-01/index.d.ts.map +1 -0
  417. package/dist/blocks/permission-matrix-01/index.js +1 -0
  418. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts +282 -0
  419. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts.map +1 -0
  420. package/dist/blocks/permission-matrix-01/permission-matrix.js +173 -0
  421. package/dist/blocks/pricing-01/index.d.ts +1 -0
  422. package/dist/blocks/pricing-01/index.d.ts.map +1 -1
  423. package/dist/blocks/pricing-01/pricing.d.ts +118 -1
  424. package/dist/blocks/pricing-01/pricing.d.ts.map +1 -1
  425. package/dist/blocks/pricing-01/pricing.js +9 -2
  426. package/dist/blocks/pricing-compare-01/index.d.ts +3 -0
  427. package/dist/blocks/pricing-compare-01/index.d.ts.map +1 -0
  428. package/dist/blocks/pricing-compare-01/index.js +1 -0
  429. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts +277 -0
  430. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts.map +1 -0
  431. package/dist/blocks/pricing-compare-01/pricing-compare.js +126 -0
  432. package/dist/blocks/project-01/index.d.ts +3 -0
  433. package/dist/blocks/project-01/index.d.ts.map +1 -0
  434. package/dist/blocks/project-01/index.js +1 -0
  435. package/dist/blocks/project-01/project.d.ts +323 -0
  436. package/dist/blocks/project-01/project.d.ts.map +1 -0
  437. package/dist/blocks/project-01/project.js +247 -0
  438. package/dist/blocks/project-dashboard-01/index.d.ts +3 -0
  439. package/dist/blocks/project-dashboard-01/index.d.ts.map +1 -0
  440. package/dist/blocks/project-dashboard-01/index.js +1 -0
  441. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts +200 -0
  442. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts.map +1 -0
  443. package/dist/blocks/project-dashboard-01/project-dashboard.js +124 -0
  444. package/dist/blocks/project-list-01/index.d.ts +3 -0
  445. package/dist/blocks/project-list-01/index.d.ts.map +1 -0
  446. package/dist/blocks/project-list-01/index.js +1 -0
  447. package/dist/blocks/project-list-01/project-list.d.ts +301 -0
  448. package/dist/blocks/project-list-01/project-list.d.ts.map +1 -0
  449. package/dist/blocks/project-list-01/project-list.js +305 -0
  450. package/dist/blocks/provisioning-01/index.d.ts +3 -0
  451. package/dist/blocks/provisioning-01/index.d.ts.map +1 -0
  452. package/dist/blocks/provisioning-01/index.js +1 -0
  453. package/dist/blocks/provisioning-01/provisioning.d.ts +357 -0
  454. package/dist/blocks/provisioning-01/provisioning.d.ts.map +1 -0
  455. package/dist/blocks/provisioning-01/provisioning.js +230 -0
  456. package/dist/blocks/quick-view-01/index.d.ts +3 -0
  457. package/dist/blocks/quick-view-01/index.d.ts.map +1 -0
  458. package/dist/blocks/quick-view-01/index.js +1 -0
  459. package/dist/blocks/quick-view-01/quick-view.d.ts +215 -0
  460. package/dist/blocks/quick-view-01/quick-view.d.ts.map +1 -0
  461. package/dist/blocks/quick-view-01/quick-view.js +136 -0
  462. package/dist/blocks/rate-card-01/index.d.ts +3 -0
  463. package/dist/blocks/rate-card-01/index.d.ts.map +1 -0
  464. package/dist/blocks/rate-card-01/index.js +1 -0
  465. package/dist/blocks/rate-card-01/rate-card.d.ts +184 -0
  466. package/dist/blocks/rate-card-01/rate-card.d.ts.map +1 -0
  467. package/dist/blocks/rate-card-01/rate-card.js +79 -0
  468. package/dist/blocks/reset-password-01/index.d.ts +3 -0
  469. package/dist/blocks/reset-password-01/index.d.ts.map +1 -0
  470. package/dist/blocks/reset-password-01/index.js +1 -0
  471. package/dist/blocks/reset-password-01/reset-password.d.ts +276 -0
  472. package/dist/blocks/reset-password-01/reset-password.d.ts.map +1 -0
  473. package/dist/blocks/reset-password-01/reset-password.js +175 -0
  474. package/dist/blocks/resource-list-01/index.d.ts +3 -0
  475. package/dist/blocks/resource-list-01/index.d.ts.map +1 -0
  476. package/dist/blocks/resource-list-01/index.js +1 -0
  477. package/dist/blocks/resource-list-01/resource-list.d.ts +237 -0
  478. package/dist/blocks/resource-list-01/resource-list.d.ts.map +1 -0
  479. package/dist/blocks/resource-list-01/resource-list.js +154 -0
  480. package/dist/blocks/retention-01/index.d.ts +3 -0
  481. package/dist/blocks/retention-01/index.d.ts.map +1 -0
  482. package/dist/blocks/retention-01/index.js +1 -0
  483. package/dist/blocks/retention-01/retention.d.ts +255 -0
  484. package/dist/blocks/retention-01/retention.d.ts.map +1 -0
  485. package/dist/blocks/retention-01/retention.js +145 -0
  486. package/dist/blocks/run-console-01/run-console.d.ts +14 -1
  487. package/dist/blocks/run-console-01/run-console.d.ts.map +1 -1
  488. package/dist/blocks/run-console-01/run-console.js +3 -2
  489. package/dist/blocks/services-01/index.d.ts +3 -0
  490. package/dist/blocks/services-01/index.d.ts.map +1 -0
  491. package/dist/blocks/services-01/index.js +1 -0
  492. package/dist/blocks/services-01/services.d.ts +159 -0
  493. package/dist/blocks/services-01/services.d.ts.map +1 -0
  494. package/dist/blocks/services-01/services.js +81 -0
  495. package/dist/blocks/settings-integrations-01/index.d.ts +3 -0
  496. package/dist/blocks/settings-integrations-01/index.d.ts.map +1 -0
  497. package/dist/blocks/settings-integrations-01/index.js +1 -0
  498. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts +246 -0
  499. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts.map +1 -0
  500. package/dist/blocks/settings-integrations-01/settings-integrations.js +213 -0
  501. package/dist/blocks/settings-members-01/index.d.ts +3 -0
  502. package/dist/blocks/settings-members-01/index.d.ts.map +1 -0
  503. package/dist/blocks/settings-members-01/index.js +1 -0
  504. package/dist/blocks/settings-members-01/settings-members.d.ts +396 -0
  505. package/dist/blocks/settings-members-01/settings-members.d.ts.map +1 -0
  506. package/dist/blocks/settings-members-01/settings-members.js +255 -0
  507. package/dist/blocks/settings-notifications-01/index.d.ts +3 -0
  508. package/dist/blocks/settings-notifications-01/index.d.ts.map +1 -0
  509. package/dist/blocks/settings-notifications-01/index.js +1 -0
  510. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts +270 -0
  511. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts.map +1 -0
  512. package/dist/blocks/settings-notifications-01/settings-notifications.js +202 -0
  513. package/dist/blocks/settings-security-01/index.d.ts +3 -0
  514. package/dist/blocks/settings-security-01/index.d.ts.map +1 -0
  515. package/dist/blocks/settings-security-01/index.js +1 -0
  516. package/dist/blocks/settings-security-01/settings-security.d.ts +439 -0
  517. package/dist/blocks/settings-security-01/settings-security.d.ts.map +1 -0
  518. package/dist/blocks/settings-security-01/settings-security.js +244 -0
  519. package/dist/blocks/shortlist-01/index.d.ts +3 -0
  520. package/dist/blocks/shortlist-01/index.d.ts.map +1 -0
  521. package/dist/blocks/shortlist-01/index.js +1 -0
  522. package/dist/blocks/shortlist-01/shortlist-01.d.ts +337 -0
  523. package/dist/blocks/shortlist-01/shortlist-01.d.ts.map +1 -0
  524. package/dist/blocks/shortlist-01/shortlist-01.js +191 -0
  525. package/dist/blocks/showcase-01/index.d.ts +3 -0
  526. package/dist/blocks/showcase-01/index.d.ts.map +1 -0
  527. package/dist/blocks/showcase-01/index.js +1 -0
  528. package/dist/blocks/showcase-01/showcase-01.d.ts +238 -0
  529. package/dist/blocks/showcase-01/showcase-01.d.ts.map +1 -0
  530. package/dist/blocks/showcase-01/showcase-01.js +84 -0
  531. package/dist/blocks/signup-01/index.d.ts +3 -0
  532. package/dist/blocks/signup-01/index.d.ts.map +1 -0
  533. package/dist/blocks/signup-01/index.js +1 -0
  534. package/dist/blocks/signup-01/signup-01.d.ts +405 -0
  535. package/dist/blocks/signup-01/signup-01.d.ts.map +1 -0
  536. package/dist/blocks/signup-01/signup-01.js +209 -0
  537. package/dist/blocks/site-footer/site-footer.d.ts +18 -1
  538. package/dist/blocks/site-footer/site-footer.d.ts.map +1 -1
  539. package/dist/blocks/site-footer/site-footer.js +8 -2
  540. package/dist/blocks/site-header/site-header.js +1 -1
  541. package/dist/blocks/site-navbar/site-navbar.d.ts +37 -3
  542. package/dist/blocks/site-navbar/site-navbar.d.ts.map +1 -1
  543. package/dist/blocks/site-navbar/site-navbar.js +33 -4
  544. package/dist/blocks/spec-table-01/index.d.ts +3 -0
  545. package/dist/blocks/spec-table-01/index.d.ts.map +1 -0
  546. package/dist/blocks/spec-table-01/index.js +1 -0
  547. package/dist/blocks/spec-table-01/spec-table.d.ts +293 -0
  548. package/dist/blocks/spec-table-01/spec-table.d.ts.map +1 -0
  549. package/dist/blocks/spec-table-01/spec-table.js +217 -0
  550. package/dist/blocks/story-01/index.d.ts +3 -0
  551. package/dist/blocks/story-01/index.d.ts.map +1 -0
  552. package/dist/blocks/story-01/index.js +1 -0
  553. package/dist/blocks/story-01/story.d.ts +153 -0
  554. package/dist/blocks/story-01/story.d.ts.map +1 -0
  555. package/dist/blocks/story-01/story.js +103 -0
  556. package/dist/blocks/summary-01/index.d.ts +3 -0
  557. package/dist/blocks/summary-01/index.d.ts.map +1 -0
  558. package/dist/blocks/summary-01/index.js +1 -0
  559. package/dist/blocks/summary-01/summary.d.ts +300 -0
  560. package/dist/blocks/summary-01/summary.d.ts.map +1 -0
  561. package/dist/blocks/summary-01/summary.js +174 -0
  562. package/dist/blocks/team-01/index.d.ts +3 -0
  563. package/dist/blocks/team-01/index.d.ts.map +1 -0
  564. package/dist/blocks/team-01/index.js +1 -0
  565. package/dist/blocks/team-01/team.d.ts +176 -0
  566. package/dist/blocks/team-01/team.d.ts.map +1 -0
  567. package/dist/blocks/team-01/team.js +117 -0
  568. package/dist/blocks/testimonial-01/index.d.ts +3 -0
  569. package/dist/blocks/testimonial-01/index.d.ts.map +1 -0
  570. package/dist/blocks/testimonial-01/index.js +1 -0
  571. package/dist/blocks/testimonial-01/testimonial.d.ts +173 -0
  572. package/dist/blocks/testimonial-01/testimonial.d.ts.map +1 -0
  573. package/dist/blocks/testimonial-01/testimonial.js +87 -0
  574. package/dist/blocks/todo-01/index.d.ts +3 -0
  575. package/dist/blocks/todo-01/index.d.ts.map +1 -0
  576. package/dist/blocks/todo-01/index.js +1 -0
  577. package/dist/blocks/todo-01/todo.d.ts +286 -0
  578. package/dist/blocks/todo-01/todo.d.ts.map +1 -0
  579. package/dist/blocks/todo-01/todo.js +149 -0
  580. package/dist/blocks/trend-01/index.d.ts +3 -0
  581. package/dist/blocks/trend-01/index.d.ts.map +1 -0
  582. package/dist/blocks/trend-01/index.js +1 -0
  583. package/dist/blocks/trend-01/trend.d.ts +184 -0
  584. package/dist/blocks/trend-01/trend.d.ts.map +1 -0
  585. package/dist/blocks/trend-01/trend.js +99 -0
  586. package/dist/blocks/trust-strip-01/index.d.ts +3 -0
  587. package/dist/blocks/trust-strip-01/index.d.ts.map +1 -0
  588. package/dist/blocks/trust-strip-01/index.js +1 -0
  589. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts +139 -0
  590. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts.map +1 -0
  591. package/dist/blocks/trust-strip-01/trust-strip-01.js +58 -0
  592. package/dist/blocks/two-factor-01/index.d.ts +3 -0
  593. package/dist/blocks/two-factor-01/index.d.ts.map +1 -0
  594. package/dist/blocks/two-factor-01/index.js +1 -0
  595. package/dist/blocks/two-factor-01/two-factor-01.d.ts +440 -0
  596. package/dist/blocks/two-factor-01/two-factor-01.d.ts.map +1 -0
  597. package/dist/blocks/two-factor-01/two-factor-01.js +273 -0
  598. package/dist/blocks/user-profile-01/index.d.ts +3 -0
  599. package/dist/blocks/user-profile-01/index.d.ts.map +1 -0
  600. package/dist/blocks/user-profile-01/index.js +1 -0
  601. package/dist/blocks/user-profile-01/user-profile-01.d.ts +258 -0
  602. package/dist/blocks/user-profile-01/user-profile-01.d.ts.map +1 -0
  603. package/dist/blocks/user-profile-01/user-profile-01.js +158 -0
  604. package/dist/blocks/verify-email-01/index.d.ts +3 -0
  605. package/dist/blocks/verify-email-01/index.d.ts.map +1 -0
  606. package/dist/blocks/verify-email-01/index.js +1 -0
  607. package/dist/blocks/verify-email-01/verify-email.d.ts +262 -0
  608. package/dist/blocks/verify-email-01/verify-email.d.ts.map +1 -0
  609. package/dist/blocks/verify-email-01/verify-email.js +190 -0
  610. package/dist/blocks/waitlist-01/index.d.ts +3 -0
  611. package/dist/blocks/waitlist-01/index.d.ts.map +1 -0
  612. package/dist/blocks/waitlist-01/index.js +1 -0
  613. package/dist/blocks/waitlist-01/waitlist.d.ts +254 -0
  614. package/dist/blocks/waitlist-01/waitlist.d.ts.map +1 -0
  615. package/dist/blocks/waitlist-01/waitlist.js +75 -0
  616. package/dist/catalog.d.ts.map +1 -1
  617. package/dist/catalog.js +1641 -1
  618. package/dist/components/index.d.ts +114 -0
  619. package/dist/components/index.d.ts.map +1 -1
  620. package/dist/components/index.js +134 -0
  621. package/dist/components/ui/accordion.d.ts.map +1 -1
  622. package/dist/components/ui/accordion.js +9 -2
  623. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  624. package/dist/components/ui/alert-dialog.js +22 -4
  625. package/dist/components/ui/announcement.d.ts +169 -0
  626. package/dist/components/ui/announcement.d.ts.map +1 -0
  627. package/dist/components/ui/announcement.js +123 -0
  628. package/dist/components/ui/avatar-group.d.ts +176 -0
  629. package/dist/components/ui/avatar-group.d.ts.map +1 -0
  630. package/dist/components/ui/avatar-group.js +135 -0
  631. package/dist/components/ui/billing-source.d.ts +293 -0
  632. package/dist/components/ui/billing-source.d.ts.map +1 -0
  633. package/dist/components/ui/billing-source.js +136 -0
  634. package/dist/components/ui/button.d.ts +16 -1
  635. package/dist/components/ui/button.d.ts.map +1 -1
  636. package/dist/components/ui/button.js +17 -2
  637. package/dist/components/ui/calendar.d.ts +9 -0
  638. package/dist/components/ui/calendar.d.ts.map +1 -1
  639. package/dist/components/ui/calendar.js +30 -2
  640. package/dist/components/ui/carousel.d.ts +7 -0
  641. package/dist/components/ui/carousel.d.ts.map +1 -1
  642. package/dist/components/ui/carousel.js +58 -1
  643. package/dist/components/ui/chart.d.ts +334 -0
  644. package/dist/components/ui/chart.d.ts.map +1 -0
  645. package/dist/components/ui/chart.js +369 -0
  646. package/dist/components/ui/checkbox.d.ts +10 -0
  647. package/dist/components/ui/checkbox.d.ts.map +1 -1
  648. package/dist/components/ui/checkbox.js +19 -1
  649. package/dist/components/ui/checklist.d.ts +262 -0
  650. package/dist/components/ui/checklist.d.ts.map +1 -0
  651. package/dist/components/ui/checklist.js +135 -0
  652. package/dist/components/ui/choice-card.d.ts +273 -0
  653. package/dist/components/ui/choice-card.d.ts.map +1 -0
  654. package/dist/components/ui/choice-card.js +138 -0
  655. package/dist/components/ui/code-block.d.ts +182 -0
  656. package/dist/components/ui/code-block.d.ts.map +1 -0
  657. package/dist/components/ui/code-block.js +108 -0
  658. package/dist/components/ui/cohort-grid.d.ts +210 -0
  659. package/dist/components/ui/cohort-grid.d.ts.map +1 -0
  660. package/dist/components/ui/cohort-grid.js +202 -0
  661. package/dist/components/ui/collapsible.d.ts +11 -0
  662. package/dist/components/ui/collapsible.d.ts.map +1 -1
  663. package/dist/components/ui/collapsible.js +13 -2
  664. package/dist/components/ui/combobox.d.ts +4 -1
  665. package/dist/components/ui/combobox.d.ts.map +1 -1
  666. package/dist/components/ui/combobox.js +20 -4
  667. package/dist/components/ui/command-palette.d.ts +11 -0
  668. package/dist/components/ui/command-palette.d.ts.map +1 -1
  669. package/dist/components/ui/command-palette.js +49 -3
  670. package/dist/components/ui/contribution-graph.d.ts +156 -0
  671. package/dist/components/ui/contribution-graph.d.ts.map +1 -0
  672. package/dist/components/ui/contribution-graph.js +170 -0
  673. package/dist/components/ui/creatable-combobox.d.ts +153 -0
  674. package/dist/components/ui/creatable-combobox.d.ts.map +1 -0
  675. package/dist/components/ui/creatable-combobox.js +285 -0
  676. package/dist/components/ui/data-toolbar.d.ts +133 -0
  677. package/dist/components/ui/data-toolbar.d.ts.map +1 -0
  678. package/dist/components/ui/data-toolbar.js +67 -0
  679. package/dist/components/ui/date-picker.d.ts.map +1 -1
  680. package/dist/components/ui/date-picker.js +9 -1
  681. package/dist/components/ui/dialog.d.ts +31 -2
  682. package/dist/components/ui/dialog.d.ts.map +1 -1
  683. package/dist/components/ui/dialog.js +40 -6
  684. package/dist/components/ui/drawer.d.ts +270 -0
  685. package/dist/components/ui/drawer.d.ts.map +1 -0
  686. package/dist/components/ui/drawer.js +241 -0
  687. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  688. package/dist/components/ui/dropdown-menu.js +6 -1
  689. package/dist/components/ui/dropzone.d.ts +147 -0
  690. package/dist/components/ui/dropzone.d.ts.map +1 -0
  691. package/dist/components/ui/dropzone.js +141 -0
  692. package/dist/components/ui/emoji-picker.d.ts +328 -0
  693. package/dist/components/ui/emoji-picker.d.ts.map +1 -0
  694. package/dist/components/ui/emoji-picker.js +278 -0
  695. package/dist/components/ui/file-upload.d.ts +152 -0
  696. package/dist/components/ui/file-upload.d.ts.map +1 -0
  697. package/dist/components/ui/file-upload.js +101 -0
  698. package/dist/components/ui/filter-panel.d.ts +164 -0
  699. package/dist/components/ui/filter-panel.d.ts.map +1 -0
  700. package/dist/components/ui/filter-panel.js +91 -0
  701. package/dist/components/ui/form-dialog.d.ts +257 -0
  702. package/dist/components/ui/form-dialog.d.ts.map +1 -0
  703. package/dist/components/ui/form-dialog.js +176 -0
  704. package/dist/components/ui/form-wizard.d.ts +251 -0
  705. package/dist/components/ui/form-wizard.d.ts.map +1 -0
  706. package/dist/components/ui/form-wizard.js +151 -0
  707. package/dist/components/ui/image-list-field.d.ts +232 -0
  708. package/dist/components/ui/image-list-field.d.ts.map +1 -0
  709. package/dist/components/ui/image-list-field.js +168 -0
  710. package/dist/components/ui/image-zoom.d.ts +164 -0
  711. package/dist/components/ui/image-zoom.d.ts.map +1 -0
  712. package/dist/components/ui/image-zoom.js +169 -0
  713. package/dist/components/ui/intensity-grid.d.ts +270 -0
  714. package/dist/components/ui/intensity-grid.d.ts.map +1 -0
  715. package/dist/components/ui/intensity-grid.js +211 -0
  716. package/dist/components/ui/lifecycle-button.d.ts +276 -0
  717. package/dist/components/ui/lifecycle-button.d.ts.map +1 -0
  718. package/dist/components/ui/lifecycle-button.js +144 -0
  719. package/dist/components/ui/lightbox.d.ts +165 -0
  720. package/dist/components/ui/lightbox.d.ts.map +1 -0
  721. package/dist/components/ui/lightbox.js +130 -0
  722. package/dist/components/ui/list-panel.d.ts +288 -0
  723. package/dist/components/ui/list-panel.d.ts.map +1 -0
  724. package/dist/components/ui/list-panel.js +139 -0
  725. package/dist/components/ui/mega-menu.d.ts +244 -0
  726. package/dist/components/ui/mega-menu.d.ts.map +1 -0
  727. package/dist/components/ui/mega-menu.js +97 -0
  728. package/dist/components/ui/menubar.d.ts +9 -0
  729. package/dist/components/ui/menubar.d.ts.map +1 -1
  730. package/dist/components/ui/menubar.js +10 -1
  731. package/dist/components/ui/metric.d.ts +123 -0
  732. package/dist/components/ui/metric.d.ts.map +1 -0
  733. package/dist/components/ui/metric.js +68 -0
  734. package/dist/components/ui/mini-calendar.d.ts +143 -0
  735. package/dist/components/ui/mini-calendar.d.ts.map +1 -0
  736. package/dist/components/ui/mini-calendar.js +261 -0
  737. package/dist/components/ui/mode-toggle.d.ts +102 -0
  738. package/dist/components/ui/mode-toggle.d.ts.map +1 -0
  739. package/dist/components/ui/mode-toggle.js +83 -0
  740. package/dist/components/ui/money-field.d.ts +200 -0
  741. package/dist/components/ui/money-field.d.ts.map +1 -0
  742. package/dist/components/ui/money-field.js +215 -0
  743. package/dist/components/ui/multi-combobox.d.ts +181 -0
  744. package/dist/components/ui/multi-combobox.d.ts.map +1 -0
  745. package/dist/components/ui/multi-combobox.js +297 -0
  746. package/dist/components/ui/native-select.d.ts.map +1 -1
  747. package/dist/components/ui/native-select.js +8 -1
  748. package/dist/components/ui/navigation-menu.d.ts +7 -0
  749. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  750. package/dist/components/ui/navigation-menu.js +8 -1
  751. package/dist/components/ui/nested-tabs.d.ts +188 -0
  752. package/dist/components/ui/nested-tabs.d.ts.map +1 -0
  753. package/dist/components/ui/nested-tabs.js +75 -0
  754. package/dist/components/ui/number-field.d.ts +40 -7
  755. package/dist/components/ui/number-field.d.ts.map +1 -1
  756. package/dist/components/ui/number-field.js +37 -7
  757. package/dist/components/ui/overflow-actions.d.ts +169 -0
  758. package/dist/components/ui/overflow-actions.d.ts.map +1 -0
  759. package/dist/components/ui/overflow-actions.js +266 -0
  760. package/dist/components/ui/pack-swatch.d.ts +177 -0
  761. package/dist/components/ui/pack-swatch.d.ts.map +1 -0
  762. package/dist/components/ui/pack-swatch.js +117 -0
  763. package/dist/components/ui/pack-switcher.d.ts +221 -0
  764. package/dist/components/ui/pack-switcher.d.ts.map +1 -0
  765. package/dist/components/ui/pack-switcher.js +94 -0
  766. package/dist/components/ui/pagination.d.ts +22 -0
  767. package/dist/components/ui/pagination.d.ts.map +1 -1
  768. package/dist/components/ui/pagination.js +23 -1
  769. package/dist/components/ui/password-field.d.ts +122 -0
  770. package/dist/components/ui/password-field.d.ts.map +1 -0
  771. package/dist/components/ui/password-field.js +69 -0
  772. package/dist/components/ui/pill.d.ts +172 -0
  773. package/dist/components/ui/pill.d.ts.map +1 -0
  774. package/dist/components/ui/pill.js +102 -0
  775. package/dist/components/ui/platform-modifier-key.d.ts +129 -0
  776. package/dist/components/ui/platform-modifier-key.d.ts.map +1 -0
  777. package/dist/components/ui/platform-modifier-key.js +125 -0
  778. package/dist/components/ui/popover.d.ts.map +1 -1
  779. package/dist/components/ui/popover.js +8 -1
  780. package/dist/components/ui/price.d.ts +144 -0
  781. package/dist/components/ui/price.d.ts.map +1 -0
  782. package/dist/components/ui/price.js +107 -0
  783. package/dist/components/ui/progress.d.ts +55 -1
  784. package/dist/components/ui/progress.d.ts.map +1 -1
  785. package/dist/components/ui/progress.js +110 -2
  786. package/dist/components/ui/prompt-composer.d.ts +302 -0
  787. package/dist/components/ui/prompt-composer.d.ts.map +1 -0
  788. package/dist/components/ui/prompt-composer.js +145 -0
  789. package/dist/components/ui/proportion-list.d.ts +188 -0
  790. package/dist/components/ui/proportion-list.d.ts.map +1 -0
  791. package/dist/components/ui/proportion-list.js +134 -0
  792. package/dist/components/ui/prose.d.ts +23 -0
  793. package/dist/components/ui/prose.d.ts.map +1 -1
  794. package/dist/components/ui/prose.js +30 -1
  795. package/dist/components/ui/radio-group.d.ts +7 -0
  796. package/dist/components/ui/radio-group.d.ts.map +1 -1
  797. package/dist/components/ui/radio-group.js +8 -1
  798. package/dist/components/ui/range-field.d.ts +158 -0
  799. package/dist/components/ui/range-field.d.ts.map +1 -0
  800. package/dist/components/ui/range-field.js +208 -0
  801. package/dist/components/ui/relative-time.d.ts +116 -0
  802. package/dist/components/ui/relative-time.d.ts.map +1 -0
  803. package/dist/components/ui/relative-time.js +67 -0
  804. package/dist/components/ui/reorderable-list.d.ts +262 -0
  805. package/dist/components/ui/reorderable-list.d.ts.map +1 -0
  806. package/dist/components/ui/reorderable-list.js +325 -0
  807. package/dist/components/ui/repeatable-rows.d.ts +241 -0
  808. package/dist/components/ui/repeatable-rows.d.ts.map +1 -0
  809. package/dist/components/ui/repeatable-rows.js +221 -0
  810. package/dist/components/ui/repo-stars.d.ts +165 -0
  811. package/dist/components/ui/repo-stars.d.ts.map +1 -0
  812. package/dist/components/ui/repo-stars.js +92 -0
  813. package/dist/components/ui/resizable.d.ts +24 -0
  814. package/dist/components/ui/resizable.d.ts.map +1 -1
  815. package/dist/components/ui/resizable.js +96 -4
  816. package/dist/components/ui/search-dialog.d.ts +40 -5
  817. package/dist/components/ui/search-dialog.d.ts.map +1 -1
  818. package/dist/components/ui/search-dialog.js +94 -16
  819. package/dist/components/ui/search-field.d.ts +159 -0
  820. package/dist/components/ui/search-field.d.ts.map +1 -0
  821. package/dist/components/ui/search-field.js +98 -0
  822. package/dist/components/ui/section.d.ts +108 -1
  823. package/dist/components/ui/section.d.ts.map +1 -1
  824. package/dist/components/ui/section.js +109 -3
  825. package/dist/components/ui/select.d.ts.map +1 -1
  826. package/dist/components/ui/select.js +9 -1
  827. package/dist/components/ui/selection-toolbar.d.ts +166 -0
  828. package/dist/components/ui/selection-toolbar.d.ts.map +1 -0
  829. package/dist/components/ui/selection-toolbar.js +139 -0
  830. package/dist/components/ui/sidebar.d.ts +29 -0
  831. package/dist/components/ui/sidebar.d.ts.map +1 -1
  832. package/dist/components/ui/sidebar.js +35 -2
  833. package/dist/components/ui/signal-field.d.ts.map +1 -1
  834. package/dist/components/ui/signal-field.js +1 -1
  835. package/dist/components/ui/slider.d.ts +7 -0
  836. package/dist/components/ui/slider.d.ts.map +1 -1
  837. package/dist/components/ui/slider.js +32 -1
  838. package/dist/components/ui/sparkline.d.ts +117 -0
  839. package/dist/components/ui/sparkline.d.ts.map +1 -0
  840. package/dist/components/ui/sparkline.js +113 -0
  841. package/dist/components/ui/spinner.d.ts.map +1 -1
  842. package/dist/components/ui/spinner.js +13 -0
  843. package/dist/components/ui/split-button.d.ts +207 -0
  844. package/dist/components/ui/split-button.d.ts.map +1 -0
  845. package/dist/components/ui/split-button.js +75 -0
  846. package/dist/components/ui/stateful-table.d.ts +345 -0
  847. package/dist/components/ui/stateful-table.d.ts.map +1 -0
  848. package/dist/components/ui/stateful-table.js +169 -0
  849. package/dist/components/ui/status.d.ts +99 -0
  850. package/dist/components/ui/status.d.ts.map +1 -0
  851. package/dist/components/ui/status.js +63 -0
  852. package/dist/components/ui/stepper.d.ts +155 -0
  853. package/dist/components/ui/stepper.d.ts.map +1 -0
  854. package/dist/components/ui/stepper.js +83 -0
  855. package/dist/components/ui/steps.d.ts +141 -0
  856. package/dist/components/ui/steps.d.ts.map +1 -0
  857. package/dist/components/ui/steps.js +128 -0
  858. package/dist/components/ui/switch.d.ts +8 -0
  859. package/dist/components/ui/switch.d.ts.map +1 -1
  860. package/dist/components/ui/switch.js +12 -1
  861. package/dist/components/ui/tabs.d.ts +21 -2
  862. package/dist/components/ui/tabs.d.ts.map +1 -1
  863. package/dist/components/ui/tabs.js +23 -4
  864. package/dist/components/ui/tag-group.d.ts +154 -0
  865. package/dist/components/ui/tag-group.d.ts.map +1 -0
  866. package/dist/components/ui/tag-group.js +111 -0
  867. package/dist/components/ui/task-progress.d.ts +149 -0
  868. package/dist/components/ui/task-progress.d.ts.map +1 -0
  869. package/dist/components/ui/task-progress.js +110 -0
  870. package/dist/components/ui/text-format-toolbar.d.ts +211 -0
  871. package/dist/components/ui/text-format-toolbar.d.ts.map +1 -0
  872. package/dist/components/ui/text-format-toolbar.js +186 -0
  873. package/dist/components/ui/timeline.d.ts.map +1 -1
  874. package/dist/components/ui/timeline.js +10 -1
  875. package/dist/components/ui/toast.d.ts +32 -10
  876. package/dist/components/ui/toast.d.ts.map +1 -1
  877. package/dist/components/ui/toast.js +150 -47
  878. package/dist/components/ui/toggle-group.d.ts +14 -5
  879. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  880. package/dist/components/ui/toggle-group.js +15 -1
  881. package/dist/components/ui/toggle.d.ts.map +1 -1
  882. package/dist/components/ui/toggle.js +9 -1
  883. package/dist/components/ui/tree.d.ts +8 -0
  884. package/dist/components/ui/tree.d.ts.map +1 -1
  885. package/dist/components/ui/tree.js +92 -13
  886. package/dist/components/ui/video-player.d.ts +236 -0
  887. package/dist/components/ui/video-player.d.ts.map +1 -0
  888. package/dist/components/ui/video-player.js +72 -0
  889. package/dist/fonts/inter-latin-400-italic.woff2 +0 -0
  890. package/dist/index.d.ts +112 -0
  891. package/dist/index.d.ts.map +1 -1
  892. package/dist/index.js +72 -0
  893. package/dist/lib/utils.d.ts +29 -0
  894. package/dist/lib/utils.d.ts.map +1 -1
  895. package/dist/lib/utils.js +35 -0
  896. package/dist/live/index.d.ts +10 -3
  897. package/dist/live/index.d.ts.map +1 -1
  898. package/dist/live/index.js +12 -3
  899. package/dist/live/run-stream-01/run-stream.js +4 -4
  900. package/dist/live/tool-ledger-01/index.d.ts +3 -0
  901. package/dist/live/tool-ledger-01/index.d.ts.map +1 -0
  902. package/dist/live/tool-ledger-01/index.js +1 -0
  903. package/dist/live/tool-ledger-01/tool-ledger.d.ts +348 -0
  904. package/dist/live/tool-ledger-01/tool-ledger.d.ts.map +1 -0
  905. package/dist/live/tool-ledger-01/tool-ledger.js +245 -0
  906. package/dist/pages/about-page/index.d.ts +306 -0
  907. package/dist/pages/about-page/index.d.ts.map +1 -0
  908. package/dist/pages/about-page/index.js +161 -0
  909. package/dist/pages/careers-page/index.d.ts +288 -0
  910. package/dist/pages/careers-page/index.d.ts.map +1 -0
  911. package/dist/pages/careers-page/index.js +182 -0
  912. package/dist/pages/changelog-page/index.d.ts +255 -0
  913. package/dist/pages/changelog-page/index.d.ts.map +1 -0
  914. package/dist/pages/changelog-page/index.js +86 -0
  915. package/dist/pages/contact-page/index.d.ts +261 -0
  916. package/dist/pages/contact-page/index.d.ts.map +1 -0
  917. package/dist/pages/contact-page/index.js +136 -0
  918. package/dist/pages/docs-shell/docs-shell.d.ts +8 -0
  919. package/dist/pages/docs-shell/docs-shell.d.ts.map +1 -1
  920. package/dist/pages/docs-shell/docs-shell.js +24 -7
  921. package/dist/pages/error-page/index.d.ts +188 -0
  922. package/dist/pages/error-page/index.d.ts.map +1 -0
  923. package/dist/pages/error-page/index.js +98 -0
  924. package/dist/pages/index.d.ts +10 -0
  925. package/dist/pages/index.d.ts.map +1 -1
  926. package/dist/pages/index.js +14 -0
  927. package/dist/pages/legal-page/index.d.ts +194 -0
  928. package/dist/pages/legal-page/index.d.ts.map +1 -0
  929. package/dist/pages/legal-page/index.js +99 -0
  930. package/dist/pages/onboarding-page/index.d.ts +199 -0
  931. package/dist/pages/onboarding-page/index.d.ts.map +1 -0
  932. package/dist/pages/onboarding-page/index.js +71 -0
  933. package/dist/pages/pricing-page/index.d.ts +286 -0
  934. package/dist/pages/pricing-page/index.d.ts.map +1 -0
  935. package/dist/pages/pricing-page/index.js +139 -0
  936. package/dist/pages/search-page/index.d.ts +305 -0
  937. package/dist/pages/search-page/index.d.ts.map +1 -0
  938. package/dist/pages/search-page/index.js +142 -0
  939. package/dist/pages/status-page/index.d.ts +366 -0
  940. package/dist/pages/status-page/index.d.ts.map +1 -0
  941. package/dist/pages/status-page/index.js +136 -0
  942. package/dist/styles.css +1003 -55
  943. package/package.json +9 -3
@@ -56,9 +56,28 @@ export interface TabsContentProps extends Omit<ComponentProps<'div'>, 'value'> {
56
56
  * process.
57
57
  */
58
58
  declare function Tabs({ className, ...props }: TabsProps): import("react").JSX.Element;
59
- /** The row or column of tab triggers. */
59
+ /**
60
+ * The row or column of tab triggers.
61
+ *
62
+ * `pointer-coarse:h-13` is half of the coarse-pointer floor and it is the half that is
63
+ * easy to forget: the list is `h-9 p-1`, so its content box is 28 tall and a trigger
64
+ * grown to 44 would not fit inside it. `h-13` is 52, which is the trigger's 44 plus
65
+ * the list's own `p-1` on each side. The vertical orientation is exempt, because there
66
+ * the list is `h-fit flex-col` and each trigger sizes the row it is in. A band was
67
+ * rejected on condition 1 for the sharpest possible reason: the triggers sit a `gap-1`
68
+ * apart inside one list, so a band on one is a press aimed at its neighbour. See
69
+ * DESIGN.md, The coarse-pointer floor.
70
+ */
60
71
  declare function TabsList({ className, ...props }: TabsListProps): import("react").JSX.Element;
61
- /** One trigger in the tab list. */
72
+ /**
73
+ * One trigger in the tab list.
74
+ *
75
+ * `pointer-coarse:h-11` is the other half of the floor. The trigger states its height
76
+ * through `py-1` and its content, so this states it outright rather than growing the
77
+ * padding to an implied 44: twelve pixels of padding either side of a twenty pixel
78
+ * line box is the floor reached by arithmetic, and an arithmetic floor is a number a
79
+ * later edit can change without noticing. See The coarse-pointer floor.
80
+ */
62
81
  declare function TabsTrigger({ className, ...props }: TabsTriggerProps): import("react").JSX.Element;
63
82
  /** The panel a trigger reveals. */
64
83
  declare function TabsContent({ className, ...props }: TabsContentProps): import("react").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tabs.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3C;;;;;GAKG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IACxE,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,iEAAiE;IACjE,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CACxC;AAED,8CAA8C;AAC9C,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC1D,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC/E,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IACb,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAC5E,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;;;GAQG;AACH,iBAAS,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,+BAQ/C;AAED,yCAAyC;AACzC,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,+BAYvD;AAED,mCAAmC;AACnC,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,+BAgB7D;AAED,mCAAmC;AACnC,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,+BAQ7D;AAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tabs.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3C;;;;;GAKG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IACxE,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,iEAAiE;IACjE,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CACxC;AAED,8CAA8C;AAC9C,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC1D,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC/E,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IACb,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAC5E,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;;;GAQG;AACH,iBAAS,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,+BAQ/C;AAED;;;;;;;;;;;GAWG;AACH,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,+BAavD;AAED;;;;;;;;GAQG;AACH,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,+BAiB7D;AAED,mCAAmC;AACnC,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,+BAQ7D;AAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,CAAA"}
@@ -14,13 +14,32 @@ import { cn } from '../../lib/utils.js';
14
14
  function Tabs({ className, ...props }) {
15
15
  return (_jsx(TabsPrimitive.Root, { "data-slot": "tabs", className: cn('flex flex-col gap-2', className), ...props }));
16
16
  }
17
- /** The row or column of tab triggers. */
17
+ /**
18
+ * The row or column of tab triggers.
19
+ *
20
+ * `pointer-coarse:h-13` is half of the coarse-pointer floor and it is the half that is
21
+ * easy to forget: the list is `h-9 p-1`, so its content box is 28 tall and a trigger
22
+ * grown to 44 would not fit inside it. `h-13` is 52, which is the trigger's 44 plus
23
+ * the list's own `p-1` on each side. The vertical orientation is exempt, because there
24
+ * the list is `h-fit flex-col` and each trigger sizes the row it is in. A band was
25
+ * rejected on condition 1 for the sharpest possible reason: the triggers sit a `gap-1`
26
+ * apart inside one list, so a band on one is a press aimed at its neighbour. See
27
+ * DESIGN.md, The coarse-pointer floor.
28
+ */
18
29
  function TabsList({ className, ...props }) {
19
- return (_jsx(TabsPrimitive.List, { "data-slot": "tabs-list", className: cn('bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center gap-1 rounded-lg p-1', 'data-[orientation=vertical]:h-fit data-[orientation=vertical]:flex-col', className), ...props }));
30
+ return (_jsx(TabsPrimitive.List, { "data-slot": "tabs-list", className: cn('bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center gap-1 rounded-lg p-1', 'data-[orientation=vertical]:h-fit data-[orientation=vertical]:flex-col', 'pointer-coarse:h-13', className), ...props }));
20
31
  }
21
- /** One trigger in the tab list. */
32
+ /**
33
+ * One trigger in the tab list.
34
+ *
35
+ * `pointer-coarse:h-11` is the other half of the floor. The trigger states its height
36
+ * through `py-1` and its content, so this states it outright rather than growing the
37
+ * padding to an implied 44: twelve pixels of padding either side of a twenty pixel
38
+ * line box is the floor reached by arithmetic, and an arithmetic floor is a number a
39
+ * later edit can change without noticing. See The coarse-pointer floor.
40
+ */
22
41
  function TabsTrigger({ className, ...props }) {
23
- return (_jsx(TabsPrimitive.Tab, { "data-slot": "tabs-trigger", className: cn('text-foreground inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap outline-none', 'transition-[color,box-shadow,background-color] duration-fast ease-out', 'focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'data-[active]:bg-background data-[active]:shadow-xs', 'data-[disabled]:pointer-events-none data-[disabled]:opacity-50', "[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0", className), ...props }));
42
+ return (_jsx(TabsPrimitive.Tab, { "data-slot": "tabs-trigger", className: cn('text-foreground inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap outline-none', 'transition-[color,box-shadow,background-color] duration-fast ease-out', 'focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'data-[active]:bg-background data-[active]:shadow-xs', 'data-[disabled]:pointer-events-none data-[disabled]:opacity-50', "[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0", 'pointer-coarse:h-11', className), ...props }));
24
43
  }
25
44
  /** The panel a trigger reveals. */
26
45
  function TabsContent({ className, ...props }) {
@@ -0,0 +1,154 @@
1
+ import { type ReactNode } from 'react';
2
+ /**
3
+ * One tag in a group, and the tone it is drawn in.
4
+ *
5
+ * The tone is the caller's because it is a claim about the tag rather than about
6
+ * the design system: a skill, a recipient, a filter, and a licence key are all
7
+ * tags, and which of them deserves the destructive fill is the caller's decision
8
+ * about their own product. `neutral` is the answer when there is nothing to say,
9
+ * and it is the default for that reason.
10
+ */
11
+ export type TagGroupTag = {
12
+ /**
13
+ * The caller's own identity for the tag, and what the remove control reports.
14
+ *
15
+ * Required, and required as a string rather than as the label: two tags can
16
+ * carry the same label, and a remove control that named the label would
17
+ * announce two identical buttons and leave the reader to guess which one they
18
+ * are on.
19
+ */
20
+ id: string;
21
+ /** What the chip says. A node, because a tag is often an avatar and a word. */
22
+ label: ReactNode;
23
+ /** The fill the chip is drawn in. */
24
+ tone?: 'neutral' | 'info' | 'success' | 'warning' | 'destructive';
25
+ };
26
+ /** The props a single Tag accepts. */
27
+ export interface TagProps {
28
+ /** What the chip says. */
29
+ label: ReactNode;
30
+ /** The fill the chip is drawn in. */
31
+ tone?: TagGroupTag['tone'];
32
+ /**
33
+ * Called when the reader presses the remove control.
34
+ *
35
+ * Omit it and the chip is read-only, which is a legitimate state rather than a
36
+ * missing prop. See the note on `TagGroup` for the difference between a tag
37
+ * and a badge.
38
+ */
39
+ onRemove?: () => void;
40
+ /**
41
+ * The accessible name of the remove control, naming the tag it removes.
42
+ *
43
+ * Required whenever `onRemove` is given, and the Component throws without it
44
+ * rather than drawing a button it cannot name.
45
+ */
46
+ removeLabel?: string;
47
+ /** Layout only. */
48
+ className?: string;
49
+ }
50
+ /** The props a TagGroup accepts. */
51
+ export interface TagGroupProps {
52
+ /**
53
+ * The tags, in the order a reader should meet them.
54
+ *
55
+ * Required, and order is the caller's because it is a claim about importance.
56
+ * The group wraps onto the next line rather than truncating, so a set of
57
+ * thirty tags is thirty tags and not the first eight.
58
+ */
59
+ tags: TagGroupTag[];
60
+ /**
61
+ * Called with a tag's `id` when the reader removes it.
62
+ *
63
+ * Omit it and the group is read-only, which is a legitimate state rather than a
64
+ * missing prop: a set of tags that were applied for the reader rather than
65
+ * chosen by them is a set of tags nobody can take back, and drawing a remove
66
+ * control there would promise a freedom the field does not have.
67
+ */
68
+ onRemove?: (id: string) => void;
69
+ /**
70
+ * The accessible name of one tag's remove control, given that tag's label.
71
+ *
72
+ * Required whenever `onRemove` is given, and a function rather than a string
73
+ * for a reason Prism cannot design around: a tag's label is a node, so the
74
+ * name of the control that removes it cannot be composed from it. A tag that
75
+ * shows an avatar and a word has no string to interpolate, and one that shows
76
+ * a word and a count has a count the reader needs to hear in the name of the
77
+ * control that will take it away. The Component refuses rather than guessing,
78
+ * because the guess is a nameless button in every locale but one.
79
+ */
80
+ removeLabel?: (label: ReactNode) => string;
81
+ /**
82
+ * The group's own name, drawn above the tags and used as its accessible name.
83
+ *
84
+ * A node and not a string, so the same element that a sighted reader reads is
85
+ * the one a screen reader names the group by. Without it the group is
86
+ * announced as an unlabelled group, which tells a reader nothing about why
87
+ * these particular tags are collected together.
88
+ */
89
+ label?: ReactNode;
90
+ /**
91
+ * What to draw when there are no tags.
92
+ *
93
+ * An empty group with no `empty` renders nothing at all, which is the same
94
+ * choice `FactList` makes: a bordered box with a heading above it and nothing
95
+ * inside it reads as a rendering failure rather than as an absence. Never a
96
+ * placeholder chip: a chip that is not a tag, drawn where tags go, is a thing
97
+ * a reader tries to remove.
98
+ */
99
+ empty?: ReactNode;
100
+ /** Layout only. */
101
+ className?: string;
102
+ }
103
+ /**
104
+ * A wrapping row of tags the reader chose, each of which can be taken back.
105
+ *
106
+ * **A Tag is what the reader chose; a Badge is what they are told.** That is the
107
+ * whole difference between this and `badge.tsx`, and the remove control is all
108
+ * of it. A badge carries a status the system decided: a count, a plan name, a
109
+ * licence tier. A tag carries something the reader picked and can un-pick, and
110
+ * the control that un-picks it is the reason the two are different Components.
111
+ * Folding them together would mean either a badge with a remove control on it,
112
+ * which offers the reader a freedom the status does not have, or a tag with no
113
+ * remove control on it, which is a badge that happens to be round.
114
+ *
115
+ * **A group with no `onRemove` is read-only, and that is a legitimate state.**
116
+ * A set of tags applied for the reader, by an import, by a colleague or by a
117
+ * saved filter, is a real thing, and the honest way to draw it is as tags with
118
+ * no way to take one back. What is not honest is drawing the remove control
119
+ * anyway and having it do nothing, so the control is drawn exactly when
120
+ * `onRemove` is given. `TagGroup` throws if it is given one without `removeLabel`
121
+ * rather than shipping a nameless button.
122
+ *
123
+ * **The remove control's name has to name the tag, so it cannot be composed.**
124
+ * A tag's label is a node because a tag is often an avatar and a word, and the
125
+ * accessible name of the control that removes it has to include that word. Prism
126
+ * cannot interpolate a `ReactNode` into a sentence, so it asks for a function of
127
+ * the label instead of a template it fills in. The cost is real: every caller
128
+ * writes the sentence, once, in their own language, and a caller who has four
129
+ * tag groups writes it four times or writes it once and reuses it.
130
+ *
131
+ * **The group wraps and the label sits on its own line.** Tags accumulate, and a
132
+ * row that clipped or scrolled would hide tags a reader had chosen and cannot
133
+ * see. A group that reaches the end of its container starts a new line, so the
134
+ * set stays whole and the layout above it is the caller's to decide.
135
+ *
136
+ * It carries no directive. It holds no state: which tags exist and which one is
137
+ * being removed are the caller's, so the group is the same code whether the
138
+ * caller is a server component rendering a saved filter or a client component
139
+ * holding a form.
140
+ */
141
+ declare function TagGroup({ tags, onRemove, removeLabel, label, empty, className, }: TagGroupProps): import("react").JSX.Element | null;
142
+ /**
143
+ * One tag on its own, for a caller placing a chip where no group is wanted.
144
+ *
145
+ * Everything said about a tag in `TagGroup` applies here, and the reason it is
146
+ * exported at all is that a chip has uses a group does not cover: the selected
147
+ * option in a combobox row, the one filter a panel is showing on its own, a
148
+ * token in a text field's own row. Each of those is one chip, and wrapping a
149
+ * single chip in a group would draw a label and a role the caller did not ask
150
+ * for.
151
+ */
152
+ declare function Tag({ label, tone, onRemove, removeLabel, className, }: TagProps): import("react").JSX.Element;
153
+ export { TagGroup, Tag };
154
+ //# sourceMappingURL=tag-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tag-group.tsx"],"names":[],"mappings":"AACA,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAI7C;;;;;;;;GAQG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB;;;;;;;OAOG;IACH,EAAE,EAAE,MAAM,CAAA;IACV,+EAA+E;IAC/E,KAAK,EAAE,SAAS,CAAA;IAChB,qCAAqC;IACrC,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAA;CAClE,CAAA;AAED,sCAAsC;AACtC,MAAM,WAAW,QAAQ;IACvB,0BAA0B;IAC1B,KAAK,EAAE,SAAS,CAAA;IAChB,qCAAqC;IACrC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,mBAAmB;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,oCAAoC;AACpC,MAAM,WAAW,aAAa;IAC5B;;;;;;OAMG;IACH,IAAI,EAAE,WAAW,EAAE,CAAA;IACnB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAA;IAC1C;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mBAAmB;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAmCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,iBAAS,QAAQ,CAAC,EAChB,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,KAAK,EACL,SAAS,GACV,EAAE,aAAa,sCAsDf;AAED;;;;;;;;;GASG;AACH,iBAAS,GAAG,CAAC,EACX,KAAK,EACL,IAAgB,EAChB,QAAQ,EACR,WAAW,EACX,SAAS,GACV,EAAE,QAAQ,+BAmCV;AAED,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAA"}
@@ -0,0 +1,111 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { XIcon } from 'lucide-react';
3
+ import { useId } from 'react';
4
+ import { cn } from '../../lib/utils.js';
5
+ /**
6
+ * The five fills a chip is drawn in, and nothing else.
7
+ *
8
+ * A tone names an intent and every one of them is a semantic utility, so a chip
9
+ * in a scoped pack boundary re-inks with everything around it. `info` is the
10
+ * brand hue at a tenth's strength with a border at four tenths, because the
11
+ * contract publishes no information role and inventing one here would be a
12
+ * second place a new colour gets decided.
13
+ */
14
+ const TAG_TONE = {
15
+ neutral: 'bg-secondary text-secondary-foreground border-transparent',
16
+ info: 'bg-brand-ink/10 text-foreground border-brand-ink/40',
17
+ success: 'bg-success text-success-foreground border-transparent',
18
+ warning: 'bg-warning text-warning-foreground border-transparent',
19
+ destructive: 'bg-destructive text-destructive-foreground border-transparent',
20
+ };
21
+ /**
22
+ * The remove control, drawn once and shared by the group and the lone chip.
23
+ *
24
+ * The ink is left to the chip's tone: the control changes its opacity and its
25
+ * ring and never its colour, because a control that has to know which of five
26
+ * fills it is sitting on is a control whose contrast has to be checked five
27
+ * times and is right in none of them by default.
28
+ *
29
+ * On a coarse pointer the control takes the 44px floor and the chip grows to
30
+ * hold it, so a row of tags on a phone is a row of 44px pills. That is the price
31
+ * of the floor and it is paid visibly: the alternative is a 16px target sitting
32
+ * 4px from a label the reader also wants to press.
33
+ */
34
+ const REMOVE_CONTROL = 'inline-flex size-4 shrink-0 items-center justify-center rounded-sm opacity-70 outline-none transition-opacity duration-fast ease-out pointer-coarse:size-11 hover:opacity-100 focus-visible:opacity-100 focus-visible:ring-ring focus-visible:ring-[3px]';
35
+ /**
36
+ * A wrapping row of tags the reader chose, each of which can be taken back.
37
+ *
38
+ * **A Tag is what the reader chose; a Badge is what they are told.** That is the
39
+ * whole difference between this and `badge.tsx`, and the remove control is all
40
+ * of it. A badge carries a status the system decided: a count, a plan name, a
41
+ * licence tier. A tag carries something the reader picked and can un-pick, and
42
+ * the control that un-picks it is the reason the two are different Components.
43
+ * Folding them together would mean either a badge with a remove control on it,
44
+ * which offers the reader a freedom the status does not have, or a tag with no
45
+ * remove control on it, which is a badge that happens to be round.
46
+ *
47
+ * **A group with no `onRemove` is read-only, and that is a legitimate state.**
48
+ * A set of tags applied for the reader, by an import, by a colleague or by a
49
+ * saved filter, is a real thing, and the honest way to draw it is as tags with
50
+ * no way to take one back. What is not honest is drawing the remove control
51
+ * anyway and having it do nothing, so the control is drawn exactly when
52
+ * `onRemove` is given. `TagGroup` throws if it is given one without `removeLabel`
53
+ * rather than shipping a nameless button.
54
+ *
55
+ * **The remove control's name has to name the tag, so it cannot be composed.**
56
+ * A tag's label is a node because a tag is often an avatar and a word, and the
57
+ * accessible name of the control that removes it has to include that word. Prism
58
+ * cannot interpolate a `ReactNode` into a sentence, so it asks for a function of
59
+ * the label instead of a template it fills in. The cost is real: every caller
60
+ * writes the sentence, once, in their own language, and a caller who has four
61
+ * tag groups writes it four times or writes it once and reuses it.
62
+ *
63
+ * **The group wraps and the label sits on its own line.** Tags accumulate, and a
64
+ * row that clipped or scrolled would hide tags a reader had chosen and cannot
65
+ * see. A group that reaches the end of its container starts a new line, so the
66
+ * set stays whole and the layout above it is the caller's to decide.
67
+ *
68
+ * It carries no directive. It holds no state: which tags exist and which one is
69
+ * being removed are the caller's, so the group is the same code whether the
70
+ * caller is a server component rendering a saved filter or a client component
71
+ * holding a form.
72
+ */
73
+ function TagGroup({ tags, onRemove, removeLabel, label, empty, className, }) {
74
+ const generated = useId();
75
+ const labelId = `${generated}-label`;
76
+ if (onRemove !== undefined && removeLabel === undefined) {
77
+ throw new Error('TagGroup: a removable group needs removeLabel, because the accessible name of a remove control has ' +
78
+ 'to name the tag it removes and this Component cannot compose a name from a ReactNode. Pass a ' +
79
+ 'function of the tag label, or drop onRemove for a group the reader cannot change.');
80
+ }
81
+ if (tags.length === 0 && empty === undefined)
82
+ return null;
83
+ return (_jsxs("div", { "data-slot": "tag-group", role: "group", "aria-labelledby": label === undefined ? undefined : labelId, className: cn('flex flex-wrap items-center gap-1.5', className), children: [label === undefined ? null : (_jsx("span", { id: labelId, "data-slot": "tag-group-label", className: "text-muted-foreground w-full text-xs font-medium tracking-wide uppercase", children: label })), tags.length === 0 ? (_jsx("p", { "data-slot": "tag-group-empty", className: "text-muted-foreground text-sm", children: empty })) : (tags.map((tag) => (_jsx(Tag, { label: tag.label, tone: tag.tone, ...(onRemove === undefined
84
+ ? null
85
+ : {
86
+ onRemove: () => onRemove(tag.id),
87
+ // The throw above is what makes this call total. The compiler
88
+ // cannot see it, so the optional call is the shape that is
89
+ // honest at the type level and unreachable at the run level.
90
+ removeLabel: removeLabel?.(tag.label),
91
+ }) }, tag.id))))] }));
92
+ }
93
+ /**
94
+ * One tag on its own, for a caller placing a chip where no group is wanted.
95
+ *
96
+ * Everything said about a tag in `TagGroup` applies here, and the reason it is
97
+ * exported at all is that a chip has uses a group does not cover: the selected
98
+ * option in a combobox row, the one filter a panel is showing on its own, a
99
+ * token in a text field's own row. Each of those is one chip, and wrapping a
100
+ * single chip in a group would draw a label and a role the caller did not ask
101
+ * for.
102
+ */
103
+ function Tag({ label, tone = 'neutral', onRemove, removeLabel, className, }) {
104
+ if (onRemove !== undefined && removeLabel === undefined) {
105
+ throw new Error('Tag: a removable tag needs removeLabel, because a remove control with no accessible name is ' +
106
+ 'announced as a button and nothing else. Pass the name for this tag, or drop onRemove for a ' +
107
+ 'read-only chip.');
108
+ }
109
+ return (_jsxs("span", { "data-slot": "tag", "data-tone": tone, className: cn('inline-flex max-w-full items-center gap-1 rounded-md border px-2 py-0.5 text-xs font-medium', TAG_TONE[tone], className), children: [_jsx("span", { "data-slot": "tag-label", className: "min-w-0 truncate", children: label }), onRemove === undefined ? null : (_jsx("button", { type: "button", "data-slot": "tag-remove", "aria-label": removeLabel, onClick: onRemove, className: REMOVE_CONTROL, children: _jsx(XIcon, { className: "size-3", "aria-hidden": "true" }) }))] }));
110
+ }
111
+ export { TagGroup, Tag };
@@ -0,0 +1,149 @@
1
+ import type { ReactNode } from 'react';
2
+ /**
3
+ * Where a task is, as one value the caller holds.
4
+ *
5
+ * Four positions and a union, for the reason `LifecycleButtonState` states in
6
+ * full: a boolean has two answers, and the two this cannot express are the two
7
+ * that cost the most. A task that failed is not "running: false", and a task
8
+ * whose position is known is not a spinner. Encoding four positions across a
9
+ * boolean and a number puts them in two props that do not know about each other,
10
+ * and every consumer then draws all four combinations itself.
11
+ *
12
+ * `idle` exists so a caller can hold a resting position in the same state it
13
+ * holds the other three, rather than unmounting on the transitions it did not
14
+ * expect. See the JSDoc on the Component for what `idle` draws, which is nothing.
15
+ */
16
+ export type TaskProgressPhase =
17
+ /** Nothing has been asked, or nothing is running. This Component draws no bar. */
18
+ {
19
+ phase: 'idle';
20
+ }
21
+ /**
22
+ * The task is running.
23
+ *
24
+ * `progress` is a real measurement rather than a clock: a byte count, a row
25
+ * count or a completed-step count gives a ratio, and the reader is told the
26
+ * position. Omit it and the work is of unknown length, which is a different
27
+ * fact and is drawn and announced as such.
28
+ */
29
+ | {
30
+ phase: 'running';
31
+ progress?: number;
32
+ progressText?: string;
33
+ }
34
+ /** The task finished, with the caller's own sentence about what it did. */
35
+ | {
36
+ phase: 'succeeded';
37
+ outcome: ReactNode;
38
+ }
39
+ /** The task did not finish, with the caller's own sentence about why. */
40
+ | {
41
+ phase: 'failed';
42
+ reason: ReactNode;
43
+ };
44
+ /**
45
+ * The props the Task progress accepts.
46
+ *
47
+ * A declared interface rather than a forwarded native one. There is no single
48
+ * element to forward to, because the Component draws a line, a bar and an
49
+ * announcement, and it takes no callback at all, so there is nothing for a
50
+ * forwarded handler to add.
51
+ */
52
+ export interface TaskProgressProps {
53
+ /**
54
+ * Where the task is.
55
+ *
56
+ * Required and controlled, and the whole of the Component: the caller owns the
57
+ * request, so the caller owns where the request is. Prism draws the line, the
58
+ * mark, the bar and the announcement that a position implies, and calls nothing.
59
+ * It never moves the position, holds no promise and runs no clock.
60
+ */
61
+ phase: TaskProgressPhase;
62
+ /**
63
+ * What the task is, read beside the bar and at the outcome.
64
+ *
65
+ * Required, and a `ReactNode` because a caller's task is often more than a
66
+ * word: "Exporting 12 invoices", "Rebuilding the estate index". It is drawn
67
+ * rather than derived, because a Component cannot describe work it has not been
68
+ * told about.
69
+ */
70
+ label: ReactNode;
71
+ /** Layout only. Changing a Prism-owned visual property from here is prohibited. */
72
+ className?: string;
73
+ }
74
+ /**
75
+ * One line that follows a pending task from start to resolution, and announces the
76
+ * outcome.
77
+ *
78
+ * **It is the running state and not the control that starts it.**
79
+ * `LifecycleButton` is the button a reader presses to begin a save, a publish or
80
+ * an export, and it carries the label, the mark, the meter, the failure and the
81
+ * retry because all of those belong to a control somebody is looking at. This is
82
+ * the other half: a task the caller started somewhere else, or started on a
83
+ * schedule, or started on another device, whose position the reader has to be able
84
+ * to find without hunting for the control that began it. The difference is not
85
+ * that one has a bar and the other does not; both draw a bar. The difference is
86
+ * that this Component has no `onActivate`, no retry and no idle label, because a
87
+ * line is not something a reader presses, and a control that pressed nothing is a
88
+ * control that lies. A caller who wants both in one place composes the two.
89
+ *
90
+ * **The bar exists only while the task is running, and that is the honest shape.**
91
+ * A bar at one hundred percent is a measurement of nothing, and it would sit on
92
+ * the page until the caller cleared it while the outcome line said what actually
93
+ * happened. So the bar is the running position's own, it leaves with it, and the
94
+ * settled positions draw the caller's sentence and a mark. The cost is that a
95
+ * reader watching a long task sees no completion bar to watch reach the end; the
96
+ * announcement is what tells them, and that is the same arrangement
97
+ * `LifecycleButton` settles at.
98
+ *
99
+ * **`idle` renders nothing, and the reason is the same one `LiveRegion` gives.**
100
+ * A Component holding a task that is not running has nothing to report, and a bar
101
+ * at zero is a claim that work is in progress. So the resting position draws no
102
+ * element, which also means a caller that wants the task's name visible before it
103
+ * starts draws the name themselves. **The cost is that this Component cannot be
104
+ * the only thing on the page**, because a line that vanishes is a line whose
105
+ * arrival shifts the layout around it, and a caller who needs the space held
106
+ * reserves it.
107
+ *
108
+ * **The determinate fill is legal motion, and the reason is that it is bound to a
109
+ * real state transition.** The bar is `Progress`, which eases its width on the
110
+ * base duration; there is no keyframe, no loop and no cycle anywhere in this
111
+ * Component, because a bar that is moving because a number changed is state
112
+ * feedback under the first of the two motion laws in this system and nothing
113
+ * else. A task with no number is drawn and announced as indeterminate, and the
114
+ * Component refuses to fill a bar it has no number for: the refusal is a thrown
115
+ * diagnostic rather than a silently invented position.
116
+ *
117
+ * **`Progress` and `LiveRegion` are composed, not redrawn, and the reason the
118
+ * outcome is announced at all is that the control is not on screen.** A reader who
119
+ * started a task, watched it run and looked away has had no answer, and the
120
+ * settled line is often the only evidence on the page that anything happened. So
121
+ * the outcome goes through a live region, polite for a success because a finished
122
+ * export waits its turn, and assertive for a failure because a refused one does
123
+ * not. The reason line beneath is deliberately not an alert, so a failure is
124
+ * announced once rather than twice in the same commit.
125
+ *
126
+ * **The region is mounted at the outcome rather than held empty, and the cost is
127
+ * real.** `LiveRegion` deliberately renders nothing when it has nothing to say,
128
+ * because a region sitting on the page permanently announces unrelated changes of
129
+ * its ancestors. The consequence is that this region is created at the moment of
130
+ * its content, and a live region created with its content is announced by most
131
+ * screen readers and not by all of them. A caller who needs the guarantee on every
132
+ * transition keeps a `LiveRegion` of their own beside this Component and passes
133
+ * the outcome into it, which is two lines and no override of anything here.
134
+ *
135
+ * **It is a server Component**, and that is a deliberate claim rather than an
136
+ * accident. It holds no state, runs no hook, reads no context and takes no
137
+ * handler: the only callback-shaped thing here is the caller's `phase`, which is
138
+ * data. The two Components it composes carry the client work between them, so
139
+ * `Progress` is a client island inside a server line and `LiveRegion` needs no
140
+ * JavaScript at all, because a live region is announced by the browser's own
141
+ * mutation observer. What that costs is that the caller owns the transition, so a
142
+ * caller who moves the phase from a response handler is already in the client
143
+ * graph and pays for it there; a caller who moves it on a server action gets the
144
+ * line redrawn with no announcement, which is the ordinary case for a page load
145
+ * and the wrong case for a task that finished while the reader was on the page.
146
+ */
147
+ declare function TaskProgress({ phase, label, className }: TaskProgressProps): import("react").JSX.Element | null;
148
+ export { TaskProgress };
149
+ //# sourceMappingURL=task-progress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-progress.d.ts","sourceRoot":"","sources":["../../../src/components/ui/task-progress.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB;AAC3B,kFAAkF;AAChF;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE;AACnB;;;;;;;GAOG;GACD;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE;AAChE,2EAA2E;GACzE;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,SAAS,CAAA;CAAE;AAC5C,yEAAyE;GACvE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA;AAE1C;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;OAOG;IACH,KAAK,EAAE,iBAAiB,CAAA;IACxB;;;;;;;OAOG;IACH,KAAK,EAAE,SAAS,CAAA;IAChB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AACH,iBAAS,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,iBAAiB,sCAyDnE;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
@@ -0,0 +1,110 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { CircleCheckIcon, TriangleAlertIcon } from 'lucide-react';
3
+ import { LiveRegion } from './live-region.js';
4
+ import { Progress } from './progress.js';
5
+ import { cn } from '../../lib/utils.js';
6
+ /**
7
+ * The mark each settled position carries, and the ink it is drawn in.
8
+ *
9
+ * Two entries and not four, because the running position carries a bar rather
10
+ * than a mark, and a ring beside a line that already says what is happening is a
11
+ * second copy of a sentence the reader can already see. The inks are the semantic
12
+ * state roles rather than a ramp step, and the shapes differ as well as the
13
+ * colours, so a reader who cannot separate them still reads which is which.
14
+ */
15
+ const SETTLED_MARK = {
16
+ succeeded: { Mark: CircleCheckIcon, ink: 'text-success' },
17
+ failed: { Mark: TriangleAlertIcon, ink: 'text-destructive' },
18
+ };
19
+ /**
20
+ * One line that follows a pending task from start to resolution, and announces the
21
+ * outcome.
22
+ *
23
+ * **It is the running state and not the control that starts it.**
24
+ * `LifecycleButton` is the button a reader presses to begin a save, a publish or
25
+ * an export, and it carries the label, the mark, the meter, the failure and the
26
+ * retry because all of those belong to a control somebody is looking at. This is
27
+ * the other half: a task the caller started somewhere else, or started on a
28
+ * schedule, or started on another device, whose position the reader has to be able
29
+ * to find without hunting for the control that began it. The difference is not
30
+ * that one has a bar and the other does not; both draw a bar. The difference is
31
+ * that this Component has no `onActivate`, no retry and no idle label, because a
32
+ * line is not something a reader presses, and a control that pressed nothing is a
33
+ * control that lies. A caller who wants both in one place composes the two.
34
+ *
35
+ * **The bar exists only while the task is running, and that is the honest shape.**
36
+ * A bar at one hundred percent is a measurement of nothing, and it would sit on
37
+ * the page until the caller cleared it while the outcome line said what actually
38
+ * happened. So the bar is the running position's own, it leaves with it, and the
39
+ * settled positions draw the caller's sentence and a mark. The cost is that a
40
+ * reader watching a long task sees no completion bar to watch reach the end; the
41
+ * announcement is what tells them, and that is the same arrangement
42
+ * `LifecycleButton` settles at.
43
+ *
44
+ * **`idle` renders nothing, and the reason is the same one `LiveRegion` gives.**
45
+ * A Component holding a task that is not running has nothing to report, and a bar
46
+ * at zero is a claim that work is in progress. So the resting position draws no
47
+ * element, which also means a caller that wants the task's name visible before it
48
+ * starts draws the name themselves. **The cost is that this Component cannot be
49
+ * the only thing on the page**, because a line that vanishes is a line whose
50
+ * arrival shifts the layout around it, and a caller who needs the space held
51
+ * reserves it.
52
+ *
53
+ * **The determinate fill is legal motion, and the reason is that it is bound to a
54
+ * real state transition.** The bar is `Progress`, which eases its width on the
55
+ * base duration; there is no keyframe, no loop and no cycle anywhere in this
56
+ * Component, because a bar that is moving because a number changed is state
57
+ * feedback under the first of the two motion laws in this system and nothing
58
+ * else. A task with no number is drawn and announced as indeterminate, and the
59
+ * Component refuses to fill a bar it has no number for: the refusal is a thrown
60
+ * diagnostic rather than a silently invented position.
61
+ *
62
+ * **`Progress` and `LiveRegion` are composed, not redrawn, and the reason the
63
+ * outcome is announced at all is that the control is not on screen.** A reader who
64
+ * started a task, watched it run and looked away has had no answer, and the
65
+ * settled line is often the only evidence on the page that anything happened. So
66
+ * the outcome goes through a live region, polite for a success because a finished
67
+ * export waits its turn, and assertive for a failure because a refused one does
68
+ * not. The reason line beneath is deliberately not an alert, so a failure is
69
+ * announced once rather than twice in the same commit.
70
+ *
71
+ * **The region is mounted at the outcome rather than held empty, and the cost is
72
+ * real.** `LiveRegion` deliberately renders nothing when it has nothing to say,
73
+ * because a region sitting on the page permanently announces unrelated changes of
74
+ * its ancestors. The consequence is that this region is created at the moment of
75
+ * its content, and a live region created with its content is announced by most
76
+ * screen readers and not by all of them. A caller who needs the guarantee on every
77
+ * transition keeps a `LiveRegion` of their own beside this Component and passes
78
+ * the outcome into it, which is two lines and no override of anything here.
79
+ *
80
+ * **It is a server Component**, and that is a deliberate claim rather than an
81
+ * accident. It holds no state, runs no hook, reads no context and takes no
82
+ * handler: the only callback-shaped thing here is the caller's `phase`, which is
83
+ * data. The two Components it composes carry the client work between them, so
84
+ * `Progress` is a client island inside a server line and `LiveRegion` needs no
85
+ * JavaScript at all, because a live region is announced by the browser's own
86
+ * mutation observer. What that costs is that the caller owns the transition, so a
87
+ * caller who moves the phase from a response handler is already in the client
88
+ * graph and pays for it there; a caller who moves it on a server action gets the
89
+ * line redrawn with no announcement, which is the ordinary case for a page load
90
+ * and the wrong case for a task that finished while the reader was on the page.
91
+ */
92
+ function TaskProgress({ phase, label, className }) {
93
+ if (phase.phase === 'idle')
94
+ return null;
95
+ if (phase.phase === 'running' && phase.progress !== undefined && phase.progressText === undefined) {
96
+ throw new Error('TaskProgress: the running phase carries a progress fraction and no progressText, so the bar would be ' +
97
+ 'announced as a decimal between zero and one, which is a measurement of nothing a reader can act on. ' +
98
+ 'Pass the position in the words the reader would say it, or drop progress and let the bar be indeterminate.');
99
+ }
100
+ const running = phase.phase === 'running';
101
+ const settled = phase.phase === 'succeeded' || phase.phase === 'failed';
102
+ const mark = settled ? SETTLED_MARK[phase.phase] : null;
103
+ const outcome = phase.phase === 'succeeded' ? phase.outcome : phase.phase === 'failed' ? phase.reason : undefined;
104
+ return (_jsxs("div", { "data-slot": "task-progress", className: cn('flex w-full flex-col gap-1.5', className), children: [_jsxs("div", { "data-slot": "task-progress-line", className: "flex items-center gap-2", children: [mark === null ? null : _jsx(mark.Mark, { className: mark.ink, "aria-hidden": "true" }), _jsx("span", { "data-slot": "task-progress-label", className: "text-sm font-medium", children: label })] }), running ? (_jsx(Progress, { "data-slot": "task-progress-bar",
105
+ // The clamped fraction and the same Component with no value, so the two
106
+ // are one question asked with and without an answer rather than a bar
107
+ // and a ring on one line.
108
+ value: phase.progress === undefined ? null : Math.min(1, Math.max(0, phase.progress)), max: 1, valueText: phase.progressText })) : null, outcome === undefined ? null : (_jsx("p", { "data-slot": "task-progress-outcome", className: "text-muted-foreground text-sm", children: outcome })), settled ? (_jsx(LiveRegion, { className: "sr-only", politeness: phase.phase === 'failed' ? 'assertive' : 'polite', children: outcome })) : null] }));
109
+ }
110
+ export { TaskProgress };