@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
@@ -0,0 +1,276 @@
1
+ import type { ReactNode } from 'react';
2
+ /**
3
+ * The four points a button's work can be at.
4
+ *
5
+ * A closed set of four, and the fourth is the one that makes it a lifecycle. A
6
+ * control that is idle, one that is working and one that has finished are three
7
+ * states, and every system that stops at three has folded success and failure
8
+ * into a single "done" and then had to choose which of the two words to print. The
9
+ * answer is a flag, and a flag that says `done` when the request was refused tells
10
+ * a reader their work was saved, which is the most expensive sentence a control
11
+ * can get wrong.
12
+ */
13
+ export type LifecycleButtonPhase = 'idle' | 'in-flight' | 'succeeded' | 'failed';
14
+ /**
15
+ * Where the work is, as a value the caller holds.
16
+ *
17
+ * A union rather than a `loading` boolean beside an `error` message, and the reason
18
+ * is the pair. A boolean has two answers and this has four, and the two answers
19
+ * nobody can express with a boolean are the two that matter: a request that
20
+ * failed, and a request whose position is known. A caller holding `loading` plus a
21
+ * string has to encode four states across two props that do not know about each
22
+ * other, and every one of those four combinations has to be drawn.
23
+ */
24
+ export type LifecycleButtonState =
25
+ /** Nothing has been asked. The control is the caller's primary action. */
26
+ {
27
+ phase: 'idle';
28
+ }
29
+ /**
30
+ * The work is running.
31
+ *
32
+ * `progress` is a fraction between zero and one and it is a real measurement, not
33
+ * a timer: a caller that has a byte count, a row count or a completed-step count
34
+ * passes the ratio and the reader is told the position. Omit it and the work is
35
+ * of unknown length, which is a different fact and is drawn and announced as
36
+ * such. It is never defaulted, because a bar that fills on its own is a
37
+ * measurement of nothing.
38
+ */
39
+ | {
40
+ phase: 'in-flight';
41
+ progress?: number;
42
+ progressText?: string;
43
+ }
44
+ /** The work finished. */
45
+ | {
46
+ phase: 'succeeded';
47
+ }
48
+ /** The work did not finish, with the caller's own sentence about why. */
49
+ | {
50
+ phase: 'failed';
51
+ reason?: ReactNode;
52
+ };
53
+ /**
54
+ * The props the Lifecycle button accepts.
55
+ *
56
+ * A declared interface rather than a forwarded native one, and the reason is the
57
+ * gate on the surface: a forwarded `onClick` would be a second way to say what the
58
+ * control does, and a forwarded `children` would be a second way to say what it
59
+ * says. Both are decided here. The five words are five props rather than one
60
+ * `labels` record because a record's keys are a second list of the lifecycle, and
61
+ * the lifecycle is already stated in the type of `state`; two lists of the same
62
+ * four states is two lists that can disagree.
63
+ */
64
+ export interface LifecycleButtonProps {
65
+ /**
66
+ * Where the work is.
67
+ *
68
+ * Required and controlled, and the whole of the Component: the caller owns the
69
+ * request, so the caller owns where the request is. Prism draws the label, the
70
+ * mark, the meter and the retry that a position implies, and calls back. It
71
+ * never moves the position, and it holds no promise, no transport and no timer.
72
+ */
73
+ state: LifecycleButtonState;
74
+ /**
75
+ * Called when the reader presses the control while it is idle.
76
+ *
77
+ * Required, and it is called only from `idle`. A control that accepts presses
78
+ * while its work is running would let a reader queue a second request without
79
+ * knowing whether the first had finished, and a control that accepts presses
80
+ * after a failure would be a second way of retrying with a different meaning.
81
+ * The caller moves the position to `in-flight`; nothing here does.
82
+ */
83
+ onActivate: () => void;
84
+ /** The label in the idle position, in the product's own words. */
85
+ idleLabel: ReactNode;
86
+ /** The label while the work is running, in the product's own words. */
87
+ inFlightLabel: ReactNode;
88
+ /**
89
+ * The label after the work finished.
90
+ *
91
+ * Required rather than derived from the icon, because a check mark is a
92
+ * drawing and a control whose outcome is a drawing is a control whose outcome a
93
+ * screen reader never hears. Write the outcome: "Saved", "Published",
94
+ * "Enqueued".
95
+ */
96
+ succeededLabel: ReactNode;
97
+ /**
98
+ * The label after the work failed.
99
+ *
100
+ * Required, and it is the label a reader sees on a control they already pressed
101
+ * and already believe worked, so it has to be the sentence that tells them
102
+ * otherwise. "Not saved" is a control that is still the same control and now
103
+ * says the opposite; "Try again" is a different action and belongs on the retry
104
+ * beside it.
105
+ */
106
+ failedLabel: ReactNode;
107
+ /**
108
+ * The label of the retry control, which exists only in the failed position.
109
+ *
110
+ * Required, and the same word for every product's "try this again" is not
111
+ * something this package may choose: "Retry", "Save again" and "Reintentar" are
112
+ * three products' answers.
113
+ */
114
+ retryLabel: ReactNode;
115
+ /**
116
+ * The fill the control is drawn in.
117
+ *
118
+ * The four fills that make no claim about the outcome, and the reason the other
119
+ * two are absent is the Stated Ink Rule read from the other side. The failed
120
+ * position is not drawn destructive: destructive is for an action that cannot be
121
+ * undone, and a failed save is not that. Nor is it drawn `link`, which is a
122
+ * control inside a sentence and a lifecycle control is a sentence of its own.
123
+ * Nor is the failed position left as `default`, because a filled primary beside a
124
+ * failure is a control inviting a press that has already been shown not to work.
125
+ * The failure is carried by the label, the mark and the line beneath, and those
126
+ * are enough.
127
+ *
128
+ * @defaultValue 'default'
129
+ */
130
+ variant?: 'default' | 'secondary' | 'outline' | 'ghost';
131
+ /**
132
+ * The control's height. @defaultValue 'default'
133
+ *
134
+ * The four authored steps including `icon` are not offered, because a lifecycle
135
+ * control that has collapsed to a glyph has thrown away the one thing the
136
+ * lifecycle adds, which is the words that change as it runs.
137
+ */
138
+ size?: 'sm' | 'default' | 'lg';
139
+ /**
140
+ * Whether the control submits the form it sits in.
141
+ *
142
+ * Passed through rather than drawn, so a lifecycle control can be a form's submit
143
+ * button. Note what the Component does with it: a press from `in-flight` or
144
+ * `failed` is still refused, so a submit control here will not submit twice
145
+ * because the first submit is still running.
146
+ *
147
+ * @defaultValue 'button'
148
+ */
149
+ type?: 'button' | 'submit' | 'reset';
150
+ /**
151
+ * The name the control submits under, when it submits.
152
+ *
153
+ * A native attribute the Component forwards untouched, because a submit button's
154
+ * name is a fact about the caller's form and about nothing in this Component.
155
+ */
156
+ name?: string;
157
+ /**
158
+ * The form the control submits, when it is not inside one.
159
+ *
160
+ * Forwarded for the same reason as `name`, and it is the one native attribute
161
+ * worth forwarding on a control that can submit: a lifecycle button placed in a
162
+ * dialog's footer is outside the form it acts on.
163
+ */
164
+ form?: string;
165
+ /**
166
+ * Whether the control is unavailable for a reason of the caller's own.
167
+ *
168
+ * Drawn and not set, for the reason `Dropzone` states in full: a natively
169
+ * disabled control is out of the tab order, so a keyboard reader tabs onto where
170
+ * it was, presses Enter, and nothing happens with no announcement to explain it.
171
+ * This one keeps its place, keeps its ring and announces itself as unavailable.
172
+ * The cost is a tab stop that does nothing, which is the price every disabled
173
+ * control pays and the reason disabled controls are drawn rather than omitted.
174
+ */
175
+ disabled?: boolean;
176
+ /** Layout only. Changing a Prism-owned visual property from here is prohibited. */
177
+ className?: string;
178
+ }
179
+ /**
180
+ * A button whose label, mark and meter follow an asynchronous outcome: idle, in
181
+ * flight, succeeded or failed, with a retry beside it after a failure.
182
+ *
183
+ * **It is a state machine and not a loading flag, and the difference from
184
+ * `Button` is larger than it first looks.** `Button` has no `loading` prop and no
185
+ * loading state of any kind: it renders a native `<button>` and takes `variant`
186
+ * and `size`, and that is the whole of its interface. So there is no overlap to
187
+ * argue about, and the honest reason this Item is not a `Button` with one more
188
+ * boolean is that the boolean was never there. What a caller does today is write
189
+ * three controls: a `Button` whose label swaps while a request runs, a second
190
+ * `Button` that appears when it fails, and a `Progress` or a `Spinner` beside the
191
+ * first. This is those three, and the reason they were three is that they are
192
+ * three positions of one line and `Button` is a control rather than a line. If a
193
+ * `loading` boolean is ever added to `Button`, the honest response is to narrow
194
+ * this Item to the two positions a boolean cannot express, the failure and the
195
+ * fraction, rather than to delete it.
196
+ *
197
+ * **A boolean has two answers and a lifecycle has four, and the two it cannot
198
+ * express are the two that cost the most.** A request that failed is not
199
+ * `loading: false`: it is a control the reader already pressed, which is now
200
+ * telling them their work was not saved, and it needs different words, a
201
+ * different mark and a different next action from a control that has never been
202
+ * pressed. Encoding that as a boolean plus a string puts four states across two
203
+ * props that do not know about each other, and every consumer redraws the
204
+ * combinations. The union puts them in one value, and adding a sixth state later
205
+ * is a compile error at every place that switches over it.
206
+ *
207
+ * **The determinate bar is legal motion and the reason is that it is bound to a
208
+ * real state transition.** The fill is `Progress`, which animates its width on the
209
+ * base duration and eases out; there is no keyframe, no loop and no cycle, because
210
+ * a bar that is moving because a number changed is state feedback under the first
211
+ * of the two motion laws and nothing else. A bar with no number is not drawn as a
212
+ * moving one: a caller that passes no `progress` gets the same component with
213
+ * `value={null}`, which is announced as indeterminate and is the truth about work
214
+ * of unknown length. The Component refuses to fill a bar it has no number for, and
215
+ * the refusal is a thrown diagnostic rather than a silently invented position.
216
+ *
217
+ * **`Progress` is composed and not drawn, and that is why the in-flight position
218
+ * has one indicator rather than two.** A determinate fraction and an indeterminate
219
+ * request are the same question asked with and without an answer, so they are the
220
+ * same Component, and the alternative is a bar in one position and a ring in the
221
+ * other, which is two answers to how far along a task is on one button. The width
222
+ * is bounded by `className` because width is layout, and everything else about the
223
+ * bar is Prism's.
224
+ *
225
+ * **A fraction is announced in the caller's words or not at all.** `Progress`
226
+ * exposes its value, minimum and maximum through ARIA, so a fraction between zero
227
+ * and one is announced as a decimal, and "0.42" is a measurement of nothing a
228
+ * reader can act on. So a state carrying `progress` must carry `progressText`, and
229
+ * the Component throws without it rather than letting a number through as an
230
+ * accessible name. Write the position as the reader would say it: "Uploading,
231
+ * 42 percent", "3 of 8 steps".
232
+ *
233
+ * **The outcome is announced, and the announcement is the transition rather than
234
+ * the control.** A reader who pressed a control and watched its label change has
235
+ * been answered; a reader who pressed it and looked away has not, and the
236
+ * succeeded position is the one that arrives with no other evidence on the page
237
+ * when the control that caused it has scrolled out of view. So the Component
238
+ * composes `LiveRegion` with the settled label in it, polite for a success and
239
+ * assertive for a failure, which is the politeness rule `LiveRegion` states and
240
+ * for its reasons: a save that landed waits its turn, and a save that was refused
241
+ * interrupts. The reason line beneath the control is deliberately not an alert, so
242
+ * the failure is announced once rather than twice in the same commit.
243
+ *
244
+ * **The region is mounted at the outcome rather than held empty, and the cost is
245
+ * real.** `LiveRegion` deliberately renders nothing when it has nothing to say,
246
+ * because a live region sitting on the page permanently announces unrelated
247
+ * changes of its ancestors, which is the noise the Component exists to avoid as
248
+ * well as to cause. The consequence is that this region is created at the moment
249
+ * of its content, and a live region created with its content is announced by most
250
+ * screen readers and not by all of them. A caller who needs the guarantee on every
251
+ * transition keeps a `LiveRegion` of their own beside this Component and passes
252
+ * the outcome into it, which is two lines and no override of anything here.
253
+ *
254
+ * **The retry is a second control and not a state of the first, because the two
255
+ * actions are not the same.** Pressing the control again after a failure is a
256
+ * claim that the same request is worth making again, and the caller may well have
257
+ * changed their mind; a control that quietly became the retry would make a reader
258
+ * who wants to send something different press it twice to find out. So the failed
259
+ * position draws the control, still labelled as the failed outcome, with a second
260
+ * control beside it. The cost is a row that is two controls wide in one position
261
+ * out of four, and a caller who has nowhere to put it composes the retry in their
262
+ * own layout rather than dropping the affordance.
263
+ *
264
+ * **It is a client Component**, because `Progress` is one, because the outcome is
265
+ * announced through a region whose behaviour the browser's mutation observer
266
+ * provides and whose mounting is React's, and because the only callback it takes
267
+ * is one the caller has to be in the client graph to supply. What that costs is
268
+ * the price of every client control, and it is worth naming because the surface
269
+ * invites a server render: a server Component can render the idle position and it
270
+ * will look right, and what it cannot do is move the position, show a fraction, or
271
+ * announce an outcome, because those are facts about what happens after the reader
272
+ * acts.
273
+ */
274
+ declare function LifecycleButton({ state, onActivate, idleLabel, inFlightLabel, succeededLabel, failedLabel, retryLabel, variant, size, type, name, form, disabled, className, }: LifecycleButtonProps): import("react").JSX.Element;
275
+ export { LifecycleButton };
276
+ //# sourceMappingURL=lifecycle-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle-button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/lifecycle-button.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOtC;;;;;;;;;;GAUG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAA;AAEhF;;;;;;;;;GASG;AACH,MAAM,MAAM,oBAAoB;AAC9B,0EAA0E;AACxE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE;AACnB;;;;;;;;;GASG;GACD;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE;AAClE,yBAAyB;GACvB;IAAE,KAAK,EAAE,WAAW,CAAA;CAAE;AACxB,yEAAyE;GACvE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,CAAA;CAAE,CAAA;AAE3C;;;;;;;;;;GAUG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;;;OAOG;IACH,KAAK,EAAE,oBAAoB,CAAA;IAC3B;;;;;;;;OAQG;IACH,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,kEAAkE;IAClE,SAAS,EAAE,SAAS,CAAA;IACpB,uEAAuE;IACvE,aAAa,EAAE,SAAS,CAAA;IACxB;;;;;;;OAOG;IACH,cAAc,EAAE,SAAS,CAAA;IACzB;;;;;;;;OAQG;IACH,WAAW,EAAE,SAAS,CAAA;IACtB;;;;;;OAMG;IACH,UAAU,EAAE,SAAS,CAAA;IACrB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAA;IACvD;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,CAAA;IAC9B;;;;;;;;;OASG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;IACpC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAmBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8FG;AACH,iBAAS,eAAe,CAAC,EACvB,KAAK,EACL,UAAU,EACV,SAAS,EACT,aAAa,EACb,cAAc,EACd,WAAW,EACX,UAAU,EACV,OAAmB,EACnB,IAAgB,EAChB,IAAe,EACf,IAAI,EACJ,IAAI,EACJ,QAAgB,EAChB,SAAS,GACV,EAAE,oBAAoB,+BAsGtB;AAED,OAAO,EAAE,eAAe,EAAE,CAAA"}
@@ -0,0 +1,144 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { CircleCheckIcon, RefreshCwIcon, TriangleAlertIcon } from 'lucide-react';
4
+ import { Button } from './button.js';
5
+ import { LiveRegion } from './live-region.js';
6
+ import { Progress } from './progress.js';
7
+ import { cn } from '../../lib/utils.js';
8
+ /**
9
+ * The mark each settled position carries, and the ink it is drawn in.
10
+ *
11
+ * Two entries and not four, because the idle and in-flight positions carry the
12
+ * meter or nothing rather than a mark, and a ring or a bar beside a label that
13
+ * already says what is happening is a second copy of a sentence the reader can
14
+ * already see. Both marks are `aria-hidden` at the call site and the label carries
15
+ * the meaning, which is the order the whole package keeps: the attribute is the
16
+ * fact and the drawing is the reminder. The inks are the semantic state roles and
17
+ * not a ramp step, and the shapes differ as well as the colours so a reader who
18
+ * cannot separate them still reads which is which.
19
+ */
20
+ const SETTLED_MARK = {
21
+ succeeded: { Mark: CircleCheckIcon, ink: 'text-success' },
22
+ failed: { Mark: TriangleAlertIcon, ink: 'text-destructive' },
23
+ };
24
+ /**
25
+ * A button whose label, mark and meter follow an asynchronous outcome: idle, in
26
+ * flight, succeeded or failed, with a retry beside it after a failure.
27
+ *
28
+ * **It is a state machine and not a loading flag, and the difference from
29
+ * `Button` is larger than it first looks.** `Button` has no `loading` prop and no
30
+ * loading state of any kind: it renders a native `<button>` and takes `variant`
31
+ * and `size`, and that is the whole of its interface. So there is no overlap to
32
+ * argue about, and the honest reason this Item is not a `Button` with one more
33
+ * boolean is that the boolean was never there. What a caller does today is write
34
+ * three controls: a `Button` whose label swaps while a request runs, a second
35
+ * `Button` that appears when it fails, and a `Progress` or a `Spinner` beside the
36
+ * first. This is those three, and the reason they were three is that they are
37
+ * three positions of one line and `Button` is a control rather than a line. If a
38
+ * `loading` boolean is ever added to `Button`, the honest response is to narrow
39
+ * this Item to the two positions a boolean cannot express, the failure and the
40
+ * fraction, rather than to delete it.
41
+ *
42
+ * **A boolean has two answers and a lifecycle has four, and the two it cannot
43
+ * express are the two that cost the most.** A request that failed is not
44
+ * `loading: false`: it is a control the reader already pressed, which is now
45
+ * telling them their work was not saved, and it needs different words, a
46
+ * different mark and a different next action from a control that has never been
47
+ * pressed. Encoding that as a boolean plus a string puts four states across two
48
+ * props that do not know about each other, and every consumer redraws the
49
+ * combinations. The union puts them in one value, and adding a sixth state later
50
+ * is a compile error at every place that switches over it.
51
+ *
52
+ * **The determinate bar is legal motion and the reason is that it is bound to a
53
+ * real state transition.** The fill is `Progress`, which animates its width on the
54
+ * base duration and eases out; there is no keyframe, no loop and no cycle, because
55
+ * a bar that is moving because a number changed is state feedback under the first
56
+ * of the two motion laws and nothing else. A bar with no number is not drawn as a
57
+ * moving one: a caller that passes no `progress` gets the same component with
58
+ * `value={null}`, which is announced as indeterminate and is the truth about work
59
+ * of unknown length. The Component refuses to fill a bar it has no number for, and
60
+ * the refusal is a thrown diagnostic rather than a silently invented position.
61
+ *
62
+ * **`Progress` is composed and not drawn, and that is why the in-flight position
63
+ * has one indicator rather than two.** A determinate fraction and an indeterminate
64
+ * request are the same question asked with and without an answer, so they are the
65
+ * same Component, and the alternative is a bar in one position and a ring in the
66
+ * other, which is two answers to how far along a task is on one button. The width
67
+ * is bounded by `className` because width is layout, and everything else about the
68
+ * bar is Prism's.
69
+ *
70
+ * **A fraction is announced in the caller's words or not at all.** `Progress`
71
+ * exposes its value, minimum and maximum through ARIA, so a fraction between zero
72
+ * and one is announced as a decimal, and "0.42" is a measurement of nothing a
73
+ * reader can act on. So a state carrying `progress` must carry `progressText`, and
74
+ * the Component throws without it rather than letting a number through as an
75
+ * accessible name. Write the position as the reader would say it: "Uploading,
76
+ * 42 percent", "3 of 8 steps".
77
+ *
78
+ * **The outcome is announced, and the announcement is the transition rather than
79
+ * the control.** A reader who pressed a control and watched its label change has
80
+ * been answered; a reader who pressed it and looked away has not, and the
81
+ * succeeded position is the one that arrives with no other evidence on the page
82
+ * when the control that caused it has scrolled out of view. So the Component
83
+ * composes `LiveRegion` with the settled label in it, polite for a success and
84
+ * assertive for a failure, which is the politeness rule `LiveRegion` states and
85
+ * for its reasons: a save that landed waits its turn, and a save that was refused
86
+ * interrupts. The reason line beneath the control is deliberately not an alert, so
87
+ * the failure is announced once rather than twice in the same commit.
88
+ *
89
+ * **The region is mounted at the outcome rather than held empty, and the cost is
90
+ * real.** `LiveRegion` deliberately renders nothing when it has nothing to say,
91
+ * because a live region sitting on the page permanently announces unrelated
92
+ * changes of its ancestors, which is the noise the Component exists to avoid as
93
+ * well as to cause. The consequence is that this region is created at the moment
94
+ * of its content, and a live region created with its content is announced by most
95
+ * screen readers and not by all of them. A caller who needs the guarantee on every
96
+ * transition keeps a `LiveRegion` of their own beside this Component and passes
97
+ * the outcome into it, which is two lines and no override of anything here.
98
+ *
99
+ * **The retry is a second control and not a state of the first, because the two
100
+ * actions are not the same.** Pressing the control again after a failure is a
101
+ * claim that the same request is worth making again, and the caller may well have
102
+ * changed their mind; a control that quietly became the retry would make a reader
103
+ * who wants to send something different press it twice to find out. So the failed
104
+ * position draws the control, still labelled as the failed outcome, with a second
105
+ * control beside it. The cost is a row that is two controls wide in one position
106
+ * out of four, and a caller who has nowhere to put it composes the retry in their
107
+ * own layout rather than dropping the affordance.
108
+ *
109
+ * **It is a client Component**, because `Progress` is one, because the outcome is
110
+ * announced through a region whose behaviour the browser's mutation observer
111
+ * provides and whose mounting is React's, and because the only callback it takes
112
+ * is one the caller has to be in the client graph to supply. What that costs is
113
+ * the price of every client control, and it is worth naming because the surface
114
+ * invites a server render: a server Component can render the idle position and it
115
+ * will look right, and what it cannot do is move the position, show a fraction, or
116
+ * announce an outcome, because those are facts about what happens after the reader
117
+ * acts.
118
+ */
119
+ function LifecycleButton({ state, onActivate, idleLabel, inFlightLabel, succeededLabel, failedLabel, retryLabel, variant = 'default', size = 'default', type = 'button', name, form, disabled = false, className, }) {
120
+ const inFlight = state.phase === 'in-flight';
121
+ const failed = state.phase === 'failed';
122
+ const succeeded = state.phase === 'succeeded';
123
+ const unavailable = inFlight || disabled;
124
+ if (inFlight && state.progress !== undefined && state.progressText === undefined) {
125
+ throw new Error('LifecycleButton: the in-flight state carries a progress fraction and no progressText, so the bar would be ' +
126
+ 'announced as a decimal between zero and one, which is a measurement of nothing a reader can act on. Pass ' +
127
+ 'the position in the words the reader would say it, or drop progress and let the bar be indeterminate.');
128
+ }
129
+ const label = state.phase === 'idle'
130
+ ? idleLabel
131
+ : inFlight
132
+ ? inFlightLabel
133
+ : succeeded
134
+ ? succeededLabel
135
+ : failedLabel;
136
+ const settled = succeeded || failed;
137
+ const mark = settled ? SETTLED_MARK[state.phase] : null;
138
+ return (_jsxs("div", { "data-slot": "lifecycle-button", className: cn('inline-flex flex-col items-start gap-1.5', className), children: [_jsxs("div", { "data-slot": "lifecycle-button-actions", className: "flex items-center gap-2", children: [_jsxs(Button, { "data-slot": "lifecycle-button-control", type: type, variant: variant, size: size, name: name, form: form, "aria-disabled": unavailable || undefined, onClick: unavailable ? () => undefined : onActivate, children: [mark === null ? null : _jsx(mark.Mark, { className: mark.ink, "aria-hidden": "true" }), _jsx("span", { "data-slot": "lifecycle-button-label", children: label }), inFlight ? (_jsx(Progress, { "data-slot": "lifecycle-button-progress",
139
+ // The clamped fraction and the same component with no value, so the
140
+ // two are one question asked with and without an answer rather than
141
+ // a bar and a ring on one button.
142
+ value: state.progress === undefined ? null : Math.min(1, Math.max(0, state.progress)), max: 1, valueText: state.progressText, className: "w-16" })) : null] }), failed ? (_jsxs(Button, { "data-slot": "lifecycle-button-retry", type: "button", variant: "outline", size: size, onClick: onActivate, children: [_jsx(RefreshCwIcon, { "aria-hidden": "true" }), retryLabel] })) : null] }), failed && state.reason !== undefined && state.reason !== null && state.reason !== false ? (_jsx("p", { "data-slot": "lifecycle-button-message", className: "text-destructive text-sm", children: state.reason })) : null, settled ? (_jsx(LiveRegion, { className: "sr-only", politeness: failed ? 'assertive' : 'polite', children: label })) : null] }));
143
+ }
144
+ export { LifecycleButton };
@@ -0,0 +1,165 @@
1
+ import { type ReactNode } from 'react';
2
+ /** One image in the rail, and the words that describe it. */
3
+ type LightboxThumbnail = {
4
+ /** The image, at the size a thumbnail is drawn. */
5
+ src: string;
6
+ /** The caller's description of it, and the button's accessible name. */
7
+ alt: string;
8
+ };
9
+ /** The props the Lightbox accepts. */
10
+ export interface LightboxProps {
11
+ /** Whether the dialog is open. */
12
+ open: boolean;
13
+ /** Called when the reader closes the dialog, by any route. */
14
+ onOpenChange: (open: boolean) => void;
15
+ /** The image being shown, at the size it should be shown at. */
16
+ src: string;
17
+ /**
18
+ * The image's description, and required.
19
+ *
20
+ * Required because an enlarged image is the whole point of this Component and
21
+ * an unnamed one is not enlarged, it is merely bigger: a lightbox with no
22
+ * description is a picture a reader can see more of and still not read, and the
23
+ * reader has paid a modal, a focus trap and an Escape key for it. It is also
24
+ * the name the dialog falls back to when the caller passes a caption this
25
+ * Component cannot turn into a title, so it is load bearing twice.
26
+ */
27
+ alt: string;
28
+ /**
29
+ * The sentence under the image, in the caller's words.
30
+ *
31
+ * A string here becomes the dialog's visible name as well as its caption,
32
+ * because one sentence naming a figure is better than the same sentence twice
33
+ * in two places. A node is drawn under the image and the dialog is named by
34
+ * `alt` instead, which is the cost of a node: a node may be an image, a list
35
+ * or a piece of formatting, and a dialog's name has to be a string.
36
+ */
37
+ caption?: ReactNode;
38
+ /**
39
+ * The other images, in order, and the rail of buttons that reaches them.
40
+ *
41
+ * The rail is drawn only when this is given and holds more than one, because a
42
+ * rail of one is a picture of the picture you are already looking at. When it
43
+ * is given, `src` and `alt` are expected to be the entry at the current index,
44
+ * and moving the rail asks for a new index rather than moving the image: the
45
+ * caller owns the data and this Component owns the words a reader hears.
46
+ */
47
+ thumbnails?: readonly LightboxThumbnail[];
48
+ /**
49
+ * Which image is showing, zero based. Omit it for an uncontrolled lightbox
50
+ * that remembers where it was.
51
+ *
52
+ * A number and not a required prop, matching `Carousel`: a lightbox with one
53
+ * image has nothing to move between, and a caller who passes `thumbnails`
54
+ * should pass this too, which is the arrangement the type cannot enforce and
55
+ * the documentation has to.
56
+ */
57
+ index?: number;
58
+ /** Called with the image the reader asked for. */
59
+ onIndexChange?: (index: number) => void;
60
+ /**
61
+ * The accessible name of the zoom control. Required.
62
+ *
63
+ * A prop and not a word, because this package ships no string a consumer
64
+ * cannot localise, and a control is the clearest case of one: a button whose
65
+ * label reads "Zoom" in a product whose interface says something else is a
66
+ * control the consumer cannot fix without patching the library. The same
67
+ * reasoning as `check-block-copy`'s account of the dialog's close button, which
68
+ * is the finding that made this a rule rather than a preference.
69
+ *
70
+ * One name for a two state control, and the state is announced with
71
+ * `aria-pressed`, so a reader hears the name and then whether the image is
72
+ * currently at actual size. That has a consequence for the word: it should be
73
+ * a noun for the thing being changed, such as "Image size", rather than a verb
74
+ * for one of the two directions, because a verb is a claim about what the
75
+ * press will do and the press does whichever of the two the state is not. A
76
+ * caller who wants two distinct names has to own the state to get them, which
77
+ * the two index props already let them do.
78
+ */
79
+ zoomLabel: string;
80
+ /** The accessible name of the control that shows the previous image. Required, for the same reason. */
81
+ previousLabel: string;
82
+ /** The accessible name of the control that shows the next image. Required, for the same reason. */
83
+ nextLabel: string;
84
+ /** The accessible name of the control that closes the dialog. Required, for the same reason. */
85
+ closeLabel: string;
86
+ /** Layout only, exactly as on every Component. */
87
+ className?: string;
88
+ }
89
+ /**
90
+ * An image at full size, in a dialog, with its own words and its own way out.
91
+ *
92
+ * **This Item exists because an image the reader cannot enlarge is an image the
93
+ * reader cannot read.** That is the whole argument, and it is not a small one,
94
+ * because an image carries text for a great many products: a chart exported as
95
+ * a picture, a screenshot of a console, a diagram, a photograph of a receipt, a
96
+ * logo lockup with a wordmark in it. At 320 pixels wide none of that is
97
+ * readable, and a reader who cannot read it has been shown a thumbnail and told
98
+ * it was the thing. Zooming in the browser is the alternative every consumer
99
+ * reaches for, and it is a poor one for a reader who is not using a mouse, one
100
+ * for a touch device where the gesture is not discoverable, and one that leaves
101
+ * the page's own focus, Escape key and scroll position behind, so the reader
102
+ * comes back to a different place than they left. A dialog is the whole of that
103
+ * and it comes free from a component library.
104
+ *
105
+ * **The dialog is `Dialog`, not a re-derivation of it.** The focus trap, the
106
+ * restore of focus to whatever opened it, the Escape key, the outside press, the
107
+ * scroll lock and the portal are all already solved and all of them are solved
108
+ * badly twice as often as they are solved well. An image overlay built on
109
+ * `<div>` and a `keydown` listener gets the Escape key and no focus trap, so a
110
+ * keyboard reader tabs behind the image into a page they cannot see; and every
111
+ * one of those defects is invisible in review because the overlay works for the
112
+ * person writing it. So this Component composes `Dialog` and spends its own
113
+ * surface on the three things `Dialog` does not know about: the rail, the
114
+ * controls and the zoom.
115
+ *
116
+ * **The four labels are props because Prism does not ship the words.** That is
117
+ * `check-block-copy`'s finding about `Dialog`'s close button, and it is a
118
+ * finding about this Component too: a hardcoded label is copy a consumer cannot
119
+ * localise, so a product in any language but English inherits an English
120
+ * control in the middle of its own interface, and the only fix is a fork. They
121
+ * are required rather than optional even though a lightbox with no rail draws
122
+ * no previous and no next control, and the reasoning is worth stating because it
123
+ * looks like friction. A required prop is a question asked at build time; an
124
+ * optional one is a question nobody asks, and the lightbox that grew a rail
125
+ * later would be the release where the two missing labels are discovered. It
126
+ * also keeps the prop set stable, so adding thumbnails is not a breaking change
127
+ * to the type.
128
+ *
129
+ * **The zoom is a state, not a gesture.** It toggles between fitted and actual
130
+ * size and the frame scrolls once the image is larger than it is, so the reader
131
+ * pans with the scroll keys and the arrow keys the way they pan anywhere else.
132
+ * There is no pinch, no drag to pan and no double tap, and the reason is that
133
+ * each of those is a bespoke pointer model that has to be discovered, whereas a
134
+ * scrollable frame is a thing every reader already knows. The transition on the
135
+ * image is a state change the reader caused, which is the first motion law's own
136
+ * case, and it carries no `motion-safe:` guard because it does not need one:
137
+ * `packages/ui/src/styles.css` ends with one unlayered `prefers-reduced-motion`
138
+ * rule that stops every transition, so a reader who has asked for less motion
139
+ * gets the new size immediately and loses only the travel between the two.
140
+ *
141
+ * **The rail is a list of real buttons and the current one is named, not
142
+ * coloured.** A rail of thumbnails is the one place a lightbox most often gets
143
+ * this wrong: the selected thumbnail gets a border and nothing else, so a
144
+ * screen reader user is read six identical buttons and a reader in greyscale is
145
+ * shown a difference of one pixel. Here each button is named by its own `alt`,
146
+ * which is a description of that image rather than of the position, and the
147
+ * current one carries `aria-current`. The inner image is marked decorative with
148
+ * an empty `alt`, so the button's name is the description and not a doubled
149
+ * reading of the same pixels.
150
+ *
151
+ * **The current image is the caller's.** `src` and `alt` are props, so this
152
+ * Component cannot move the image, and every control here asks for an index
153
+ * rather than setting one. That is a real constraint on a caller who wants the
154
+ * lightbox to own the sequence, and the reason for it is the same as everywhere
155
+ * else in this package: the images are application data, and a Component that
156
+ * held them would be a Component every consumer whose gallery is not this shape
157
+ * had to reimplement. A caller that wants an uncontrolled lightbox passes
158
+ * `index` and `onIndexChange` and keeps the state; one that wants the lightbox
159
+ * to remember where it was omits both and gets the local one.
160
+ *
161
+ * It is a client Component, and only because `Dialog` is one.
162
+ */
163
+ declare function Lightbox({ open, onOpenChange, src, alt, caption, thumbnails, index, onIndexChange, zoomLabel, previousLabel, nextLabel, closeLabel, className, }: LightboxProps): import("react").JSX.Element;
164
+ export { Lightbox };
165
+ //# sourceMappingURL=lightbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lightbox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/lightbox.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAuB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAK3D,6DAA6D;AAC7D,KAAK,iBAAiB,GAAG;IACvB,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAA;IACX,wEAAwE;IACxE,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,sCAAsC;AACtC,MAAM,WAAW,aAAa;IAC5B,kCAAkC;IAClC,IAAI,EAAE,OAAO,CAAA;IACb,8DAA8D;IAC9D,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,gEAAgE;IAChE,GAAG,EAAE,MAAM,CAAA;IACX;;;;;;;;;OASG;IACH,GAAG,EAAE,MAAM,CAAA;IACX;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAA;IACzC;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB,uGAAuG;IACvG,aAAa,EAAE,MAAM,CAAA;IACrB,mGAAmG;IACnG,SAAS,EAAE,MAAM,CAAA;IACjB,gGAAgG;IAChG,UAAU,EAAE,MAAM,CAAA;IAClB,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyEG;AACH,iBAAS,QAAQ,CAAC,EAChB,IAAI,EACJ,YAAY,EACZ,GAAG,EACH,GAAG,EACH,OAAO,EACP,UAAU,EACV,KAAK,EACL,aAAa,EACb,SAAS,EACT,aAAa,EACb,SAAS,EACT,UAAU,EACV,SAAS,GACV,EAAE,aAAa,+BA+Kf;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}