@nanisoft/prism-ui 0.13.0 → 0.16.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 (964) 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 +22 -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 +9 -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 +131 -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 +33 -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 +4 -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 +34 -1
  538. package/dist/blocks/site-footer/site-footer.d.ts.map +1 -1
  539. package/dist/blocks/site-footer/site-footer.js +24 -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/stack-grid-01/stack-grid.d.ts +13 -0
  551. package/dist/blocks/stack-grid-01/stack-grid.d.ts.map +1 -1
  552. package/dist/blocks/stack-grid-01/stack-grid.js +14 -1
  553. package/dist/blocks/story-01/index.d.ts +3 -0
  554. package/dist/blocks/story-01/index.d.ts.map +1 -0
  555. package/dist/blocks/story-01/index.js +1 -0
  556. package/dist/blocks/story-01/story.d.ts +153 -0
  557. package/dist/blocks/story-01/story.d.ts.map +1 -0
  558. package/dist/blocks/story-01/story.js +103 -0
  559. package/dist/blocks/summary-01/index.d.ts +3 -0
  560. package/dist/blocks/summary-01/index.d.ts.map +1 -0
  561. package/dist/blocks/summary-01/index.js +1 -0
  562. package/dist/blocks/summary-01/summary.d.ts +300 -0
  563. package/dist/blocks/summary-01/summary.d.ts.map +1 -0
  564. package/dist/blocks/summary-01/summary.js +174 -0
  565. package/dist/blocks/team-01/index.d.ts +3 -0
  566. package/dist/blocks/team-01/index.d.ts.map +1 -0
  567. package/dist/blocks/team-01/index.js +1 -0
  568. package/dist/blocks/team-01/team.d.ts +176 -0
  569. package/dist/blocks/team-01/team.d.ts.map +1 -0
  570. package/dist/blocks/team-01/team.js +117 -0
  571. package/dist/blocks/testimonial-01/index.d.ts +3 -0
  572. package/dist/blocks/testimonial-01/index.d.ts.map +1 -0
  573. package/dist/blocks/testimonial-01/index.js +1 -0
  574. package/dist/blocks/testimonial-01/testimonial.d.ts +173 -0
  575. package/dist/blocks/testimonial-01/testimonial.d.ts.map +1 -0
  576. package/dist/blocks/testimonial-01/testimonial.js +87 -0
  577. package/dist/blocks/todo-01/index.d.ts +3 -0
  578. package/dist/blocks/todo-01/index.d.ts.map +1 -0
  579. package/dist/blocks/todo-01/index.js +1 -0
  580. package/dist/blocks/todo-01/todo.d.ts +286 -0
  581. package/dist/blocks/todo-01/todo.d.ts.map +1 -0
  582. package/dist/blocks/todo-01/todo.js +149 -0
  583. package/dist/blocks/trend-01/index.d.ts +3 -0
  584. package/dist/blocks/trend-01/index.d.ts.map +1 -0
  585. package/dist/blocks/trend-01/index.js +1 -0
  586. package/dist/blocks/trend-01/trend.d.ts +184 -0
  587. package/dist/blocks/trend-01/trend.d.ts.map +1 -0
  588. package/dist/blocks/trend-01/trend.js +99 -0
  589. package/dist/blocks/trust-strip-01/index.d.ts +3 -0
  590. package/dist/blocks/trust-strip-01/index.d.ts.map +1 -0
  591. package/dist/blocks/trust-strip-01/index.js +1 -0
  592. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts +139 -0
  593. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts.map +1 -0
  594. package/dist/blocks/trust-strip-01/trust-strip-01.js +58 -0
  595. package/dist/blocks/two-factor-01/index.d.ts +3 -0
  596. package/dist/blocks/two-factor-01/index.d.ts.map +1 -0
  597. package/dist/blocks/two-factor-01/index.js +1 -0
  598. package/dist/blocks/two-factor-01/two-factor-01.d.ts +440 -0
  599. package/dist/blocks/two-factor-01/two-factor-01.d.ts.map +1 -0
  600. package/dist/blocks/two-factor-01/two-factor-01.js +273 -0
  601. package/dist/blocks/user-profile-01/index.d.ts +3 -0
  602. package/dist/blocks/user-profile-01/index.d.ts.map +1 -0
  603. package/dist/blocks/user-profile-01/index.js +1 -0
  604. package/dist/blocks/user-profile-01/user-profile-01.d.ts +258 -0
  605. package/dist/blocks/user-profile-01/user-profile-01.d.ts.map +1 -0
  606. package/dist/blocks/user-profile-01/user-profile-01.js +158 -0
  607. package/dist/blocks/verify-email-01/index.d.ts +3 -0
  608. package/dist/blocks/verify-email-01/index.d.ts.map +1 -0
  609. package/dist/blocks/verify-email-01/index.js +1 -0
  610. package/dist/blocks/verify-email-01/verify-email.d.ts +262 -0
  611. package/dist/blocks/verify-email-01/verify-email.d.ts.map +1 -0
  612. package/dist/blocks/verify-email-01/verify-email.js +190 -0
  613. package/dist/blocks/waitlist-01/index.d.ts +3 -0
  614. package/dist/blocks/waitlist-01/index.d.ts.map +1 -0
  615. package/dist/blocks/waitlist-01/index.js +1 -0
  616. package/dist/blocks/waitlist-01/waitlist.d.ts +254 -0
  617. package/dist/blocks/waitlist-01/waitlist.d.ts.map +1 -0
  618. package/dist/blocks/waitlist-01/waitlist.js +75 -0
  619. package/dist/catalog.d.ts.map +1 -1
  620. package/dist/catalog.js +1641 -1
  621. package/dist/components/index.d.ts +114 -0
  622. package/dist/components/index.d.ts.map +1 -1
  623. package/dist/components/index.js +134 -0
  624. package/dist/components/ui/accordion.d.ts.map +1 -1
  625. package/dist/components/ui/accordion.js +9 -2
  626. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  627. package/dist/components/ui/alert-dialog.js +22 -4
  628. package/dist/components/ui/announcement.d.ts +169 -0
  629. package/dist/components/ui/announcement.d.ts.map +1 -0
  630. package/dist/components/ui/announcement.js +123 -0
  631. package/dist/components/ui/avatar-group.d.ts +176 -0
  632. package/dist/components/ui/avatar-group.d.ts.map +1 -0
  633. package/dist/components/ui/avatar-group.js +135 -0
  634. package/dist/components/ui/billing-source.d.ts +293 -0
  635. package/dist/components/ui/billing-source.d.ts.map +1 -0
  636. package/dist/components/ui/billing-source.js +136 -0
  637. package/dist/components/ui/button.d.ts +16 -1
  638. package/dist/components/ui/button.d.ts.map +1 -1
  639. package/dist/components/ui/button.js +17 -2
  640. package/dist/components/ui/calendar.d.ts +9 -0
  641. package/dist/components/ui/calendar.d.ts.map +1 -1
  642. package/dist/components/ui/calendar.js +30 -2
  643. package/dist/components/ui/carousel.d.ts +7 -0
  644. package/dist/components/ui/carousel.d.ts.map +1 -1
  645. package/dist/components/ui/carousel.js +58 -1
  646. package/dist/components/ui/chart.d.ts +334 -0
  647. package/dist/components/ui/chart.d.ts.map +1 -0
  648. package/dist/components/ui/chart.js +369 -0
  649. package/dist/components/ui/checkbox.d.ts +10 -0
  650. package/dist/components/ui/checkbox.d.ts.map +1 -1
  651. package/dist/components/ui/checkbox.js +19 -1
  652. package/dist/components/ui/checklist.d.ts +262 -0
  653. package/dist/components/ui/checklist.d.ts.map +1 -0
  654. package/dist/components/ui/checklist.js +135 -0
  655. package/dist/components/ui/choice-card.d.ts +273 -0
  656. package/dist/components/ui/choice-card.d.ts.map +1 -0
  657. package/dist/components/ui/choice-card.js +138 -0
  658. package/dist/components/ui/code-block.d.ts +182 -0
  659. package/dist/components/ui/code-block.d.ts.map +1 -0
  660. package/dist/components/ui/code-block.js +108 -0
  661. package/dist/components/ui/cohort-grid.d.ts +210 -0
  662. package/dist/components/ui/cohort-grid.d.ts.map +1 -0
  663. package/dist/components/ui/cohort-grid.js +202 -0
  664. package/dist/components/ui/collapsible.d.ts +11 -0
  665. package/dist/components/ui/collapsible.d.ts.map +1 -1
  666. package/dist/components/ui/collapsible.js +13 -2
  667. package/dist/components/ui/combobox.d.ts +4 -1
  668. package/dist/components/ui/combobox.d.ts.map +1 -1
  669. package/dist/components/ui/combobox.js +20 -4
  670. package/dist/components/ui/command-palette.d.ts +11 -0
  671. package/dist/components/ui/command-palette.d.ts.map +1 -1
  672. package/dist/components/ui/command-palette.js +49 -3
  673. package/dist/components/ui/contribution-graph.d.ts +156 -0
  674. package/dist/components/ui/contribution-graph.d.ts.map +1 -0
  675. package/dist/components/ui/contribution-graph.js +170 -0
  676. package/dist/components/ui/creatable-combobox.d.ts +153 -0
  677. package/dist/components/ui/creatable-combobox.d.ts.map +1 -0
  678. package/dist/components/ui/creatable-combobox.js +285 -0
  679. package/dist/components/ui/data-toolbar.d.ts +133 -0
  680. package/dist/components/ui/data-toolbar.d.ts.map +1 -0
  681. package/dist/components/ui/data-toolbar.js +67 -0
  682. package/dist/components/ui/date-picker.d.ts.map +1 -1
  683. package/dist/components/ui/date-picker.js +9 -1
  684. package/dist/components/ui/diagram.d.ts +38 -7
  685. package/dist/components/ui/diagram.d.ts.map +1 -1
  686. package/dist/components/ui/diagram.js +134 -52
  687. package/dist/components/ui/dialog.d.ts +31 -2
  688. package/dist/components/ui/dialog.d.ts.map +1 -1
  689. package/dist/components/ui/dialog.js +40 -6
  690. package/dist/components/ui/drawer.d.ts +270 -0
  691. package/dist/components/ui/drawer.d.ts.map +1 -0
  692. package/dist/components/ui/drawer.js +241 -0
  693. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  694. package/dist/components/ui/dropdown-menu.js +6 -1
  695. package/dist/components/ui/dropzone.d.ts +147 -0
  696. package/dist/components/ui/dropzone.d.ts.map +1 -0
  697. package/dist/components/ui/dropzone.js +141 -0
  698. package/dist/components/ui/emoji-picker.d.ts +328 -0
  699. package/dist/components/ui/emoji-picker.d.ts.map +1 -0
  700. package/dist/components/ui/emoji-picker.js +278 -0
  701. package/dist/components/ui/fact-list.d.ts +17 -0
  702. package/dist/components/ui/fact-list.d.ts.map +1 -1
  703. package/dist/components/ui/fact-list.js +18 -1
  704. package/dist/components/ui/file-upload.d.ts +152 -0
  705. package/dist/components/ui/file-upload.d.ts.map +1 -0
  706. package/dist/components/ui/file-upload.js +101 -0
  707. package/dist/components/ui/filter-panel.d.ts +164 -0
  708. package/dist/components/ui/filter-panel.d.ts.map +1 -0
  709. package/dist/components/ui/filter-panel.js +91 -0
  710. package/dist/components/ui/form-dialog.d.ts +257 -0
  711. package/dist/components/ui/form-dialog.d.ts.map +1 -0
  712. package/dist/components/ui/form-dialog.js +176 -0
  713. package/dist/components/ui/form-wizard.d.ts +251 -0
  714. package/dist/components/ui/form-wizard.d.ts.map +1 -0
  715. package/dist/components/ui/form-wizard.js +151 -0
  716. package/dist/components/ui/image-list-field.d.ts +232 -0
  717. package/dist/components/ui/image-list-field.d.ts.map +1 -0
  718. package/dist/components/ui/image-list-field.js +168 -0
  719. package/dist/components/ui/image-zoom.d.ts +164 -0
  720. package/dist/components/ui/image-zoom.d.ts.map +1 -0
  721. package/dist/components/ui/image-zoom.js +169 -0
  722. package/dist/components/ui/intensity-grid.d.ts +270 -0
  723. package/dist/components/ui/intensity-grid.d.ts.map +1 -0
  724. package/dist/components/ui/intensity-grid.js +211 -0
  725. package/dist/components/ui/lifecycle-button.d.ts +276 -0
  726. package/dist/components/ui/lifecycle-button.d.ts.map +1 -0
  727. package/dist/components/ui/lifecycle-button.js +144 -0
  728. package/dist/components/ui/lightbox.d.ts +165 -0
  729. package/dist/components/ui/lightbox.d.ts.map +1 -0
  730. package/dist/components/ui/lightbox.js +130 -0
  731. package/dist/components/ui/list-panel.d.ts +288 -0
  732. package/dist/components/ui/list-panel.d.ts.map +1 -0
  733. package/dist/components/ui/list-panel.js +139 -0
  734. package/dist/components/ui/mega-menu.d.ts +244 -0
  735. package/dist/components/ui/mega-menu.d.ts.map +1 -0
  736. package/dist/components/ui/mega-menu.js +97 -0
  737. package/dist/components/ui/menubar.d.ts +9 -0
  738. package/dist/components/ui/menubar.d.ts.map +1 -1
  739. package/dist/components/ui/menubar.js +10 -1
  740. package/dist/components/ui/metric.d.ts +123 -0
  741. package/dist/components/ui/metric.d.ts.map +1 -0
  742. package/dist/components/ui/metric.js +68 -0
  743. package/dist/components/ui/mini-calendar.d.ts +143 -0
  744. package/dist/components/ui/mini-calendar.d.ts.map +1 -0
  745. package/dist/components/ui/mini-calendar.js +261 -0
  746. package/dist/components/ui/mode-toggle.d.ts +102 -0
  747. package/dist/components/ui/mode-toggle.d.ts.map +1 -0
  748. package/dist/components/ui/mode-toggle.js +83 -0
  749. package/dist/components/ui/money-field.d.ts +200 -0
  750. package/dist/components/ui/money-field.d.ts.map +1 -0
  751. package/dist/components/ui/money-field.js +215 -0
  752. package/dist/components/ui/multi-combobox.d.ts +181 -0
  753. package/dist/components/ui/multi-combobox.d.ts.map +1 -0
  754. package/dist/components/ui/multi-combobox.js +297 -0
  755. package/dist/components/ui/native-select.d.ts.map +1 -1
  756. package/dist/components/ui/native-select.js +8 -1
  757. package/dist/components/ui/navigation-menu.d.ts +7 -0
  758. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  759. package/dist/components/ui/navigation-menu.js +8 -1
  760. package/dist/components/ui/nested-tabs.d.ts +188 -0
  761. package/dist/components/ui/nested-tabs.d.ts.map +1 -0
  762. package/dist/components/ui/nested-tabs.js +75 -0
  763. package/dist/components/ui/number-field.d.ts +40 -7
  764. package/dist/components/ui/number-field.d.ts.map +1 -1
  765. package/dist/components/ui/number-field.js +37 -7
  766. package/dist/components/ui/overflow-actions.d.ts +169 -0
  767. package/dist/components/ui/overflow-actions.d.ts.map +1 -0
  768. package/dist/components/ui/overflow-actions.js +266 -0
  769. package/dist/components/ui/pack-swatch.d.ts +177 -0
  770. package/dist/components/ui/pack-swatch.d.ts.map +1 -0
  771. package/dist/components/ui/pack-swatch.js +117 -0
  772. package/dist/components/ui/pack-switcher.d.ts +221 -0
  773. package/dist/components/ui/pack-switcher.d.ts.map +1 -0
  774. package/dist/components/ui/pack-switcher.js +94 -0
  775. package/dist/components/ui/pagination.d.ts +22 -0
  776. package/dist/components/ui/pagination.d.ts.map +1 -1
  777. package/dist/components/ui/pagination.js +23 -1
  778. package/dist/components/ui/password-field.d.ts +122 -0
  779. package/dist/components/ui/password-field.d.ts.map +1 -0
  780. package/dist/components/ui/password-field.js +69 -0
  781. package/dist/components/ui/pill.d.ts +172 -0
  782. package/dist/components/ui/pill.d.ts.map +1 -0
  783. package/dist/components/ui/pill.js +102 -0
  784. package/dist/components/ui/platform-modifier-key.d.ts +129 -0
  785. package/dist/components/ui/platform-modifier-key.d.ts.map +1 -0
  786. package/dist/components/ui/platform-modifier-key.js +125 -0
  787. package/dist/components/ui/popover.d.ts.map +1 -1
  788. package/dist/components/ui/popover.js +8 -1
  789. package/dist/components/ui/price.d.ts +144 -0
  790. package/dist/components/ui/price.d.ts.map +1 -0
  791. package/dist/components/ui/price.js +107 -0
  792. package/dist/components/ui/progress.d.ts +55 -1
  793. package/dist/components/ui/progress.d.ts.map +1 -1
  794. package/dist/components/ui/progress.js +110 -2
  795. package/dist/components/ui/prompt-composer.d.ts +302 -0
  796. package/dist/components/ui/prompt-composer.d.ts.map +1 -0
  797. package/dist/components/ui/prompt-composer.js +145 -0
  798. package/dist/components/ui/proportion-list.d.ts +188 -0
  799. package/dist/components/ui/proportion-list.d.ts.map +1 -0
  800. package/dist/components/ui/proportion-list.js +134 -0
  801. package/dist/components/ui/prose.d.ts +34 -0
  802. package/dist/components/ui/prose.d.ts.map +1 -1
  803. package/dist/components/ui/prose.js +41 -1
  804. package/dist/components/ui/pulse-graph.d.ts +36 -4
  805. package/dist/components/ui/pulse-graph.d.ts.map +1 -1
  806. package/dist/components/ui/pulse-graph.js +174 -60
  807. package/dist/components/ui/radio-group.d.ts +7 -0
  808. package/dist/components/ui/radio-group.d.ts.map +1 -1
  809. package/dist/components/ui/radio-group.js +8 -1
  810. package/dist/components/ui/range-field.d.ts +158 -0
  811. package/dist/components/ui/range-field.d.ts.map +1 -0
  812. package/dist/components/ui/range-field.js +208 -0
  813. package/dist/components/ui/relative-time.d.ts +116 -0
  814. package/dist/components/ui/relative-time.d.ts.map +1 -0
  815. package/dist/components/ui/relative-time.js +67 -0
  816. package/dist/components/ui/reorderable-list.d.ts +262 -0
  817. package/dist/components/ui/reorderable-list.d.ts.map +1 -0
  818. package/dist/components/ui/reorderable-list.js +325 -0
  819. package/dist/components/ui/repeatable-rows.d.ts +241 -0
  820. package/dist/components/ui/repeatable-rows.d.ts.map +1 -0
  821. package/dist/components/ui/repeatable-rows.js +221 -0
  822. package/dist/components/ui/repo-stars.d.ts +165 -0
  823. package/dist/components/ui/repo-stars.d.ts.map +1 -0
  824. package/dist/components/ui/repo-stars.js +92 -0
  825. package/dist/components/ui/resizable.d.ts +24 -0
  826. package/dist/components/ui/resizable.d.ts.map +1 -1
  827. package/dist/components/ui/resizable.js +96 -4
  828. package/dist/components/ui/search-dialog.d.ts +40 -5
  829. package/dist/components/ui/search-dialog.d.ts.map +1 -1
  830. package/dist/components/ui/search-dialog.js +94 -16
  831. package/dist/components/ui/search-field.d.ts +159 -0
  832. package/dist/components/ui/search-field.d.ts.map +1 -0
  833. package/dist/components/ui/search-field.js +98 -0
  834. package/dist/components/ui/section.d.ts +110 -1
  835. package/dist/components/ui/section.d.ts.map +1 -1
  836. package/dist/components/ui/section.js +111 -3
  837. package/dist/components/ui/select.d.ts.map +1 -1
  838. package/dist/components/ui/select.js +9 -1
  839. package/dist/components/ui/selection-toolbar.d.ts +166 -0
  840. package/dist/components/ui/selection-toolbar.d.ts.map +1 -0
  841. package/dist/components/ui/selection-toolbar.js +139 -0
  842. package/dist/components/ui/sidebar.d.ts +29 -0
  843. package/dist/components/ui/sidebar.d.ts.map +1 -1
  844. package/dist/components/ui/sidebar.js +35 -2
  845. package/dist/components/ui/signal-field.d.ts.map +1 -1
  846. package/dist/components/ui/signal-field.js +1 -1
  847. package/dist/components/ui/slider.d.ts +7 -0
  848. package/dist/components/ui/slider.d.ts.map +1 -1
  849. package/dist/components/ui/slider.js +32 -1
  850. package/dist/components/ui/sparkline.d.ts +117 -0
  851. package/dist/components/ui/sparkline.d.ts.map +1 -0
  852. package/dist/components/ui/sparkline.js +113 -0
  853. package/dist/components/ui/spinner.d.ts.map +1 -1
  854. package/dist/components/ui/spinner.js +13 -0
  855. package/dist/components/ui/split-button.d.ts +207 -0
  856. package/dist/components/ui/split-button.d.ts.map +1 -0
  857. package/dist/components/ui/split-button.js +75 -0
  858. package/dist/components/ui/stateful-table.d.ts +345 -0
  859. package/dist/components/ui/stateful-table.d.ts.map +1 -0
  860. package/dist/components/ui/stateful-table.js +169 -0
  861. package/dist/components/ui/status.d.ts +99 -0
  862. package/dist/components/ui/status.d.ts.map +1 -0
  863. package/dist/components/ui/status.js +63 -0
  864. package/dist/components/ui/stepper.d.ts +155 -0
  865. package/dist/components/ui/stepper.d.ts.map +1 -0
  866. package/dist/components/ui/stepper.js +83 -0
  867. package/dist/components/ui/steps.d.ts +141 -0
  868. package/dist/components/ui/steps.d.ts.map +1 -0
  869. package/dist/components/ui/steps.js +128 -0
  870. package/dist/components/ui/switch.d.ts +8 -0
  871. package/dist/components/ui/switch.d.ts.map +1 -1
  872. package/dist/components/ui/switch.js +12 -1
  873. package/dist/components/ui/tabs.d.ts +21 -2
  874. package/dist/components/ui/tabs.d.ts.map +1 -1
  875. package/dist/components/ui/tabs.js +23 -4
  876. package/dist/components/ui/tag-group.d.ts +154 -0
  877. package/dist/components/ui/tag-group.d.ts.map +1 -0
  878. package/dist/components/ui/tag-group.js +111 -0
  879. package/dist/components/ui/task-progress.d.ts +149 -0
  880. package/dist/components/ui/task-progress.d.ts.map +1 -0
  881. package/dist/components/ui/task-progress.js +110 -0
  882. package/dist/components/ui/text-format-toolbar.d.ts +211 -0
  883. package/dist/components/ui/text-format-toolbar.d.ts.map +1 -0
  884. package/dist/components/ui/text-format-toolbar.js +186 -0
  885. package/dist/components/ui/timeline.d.ts.map +1 -1
  886. package/dist/components/ui/timeline.js +10 -1
  887. package/dist/components/ui/toast.d.ts +32 -10
  888. package/dist/components/ui/toast.d.ts.map +1 -1
  889. package/dist/components/ui/toast.js +150 -47
  890. package/dist/components/ui/toggle-group.d.ts +14 -5
  891. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  892. package/dist/components/ui/toggle-group.js +15 -1
  893. package/dist/components/ui/toggle.d.ts.map +1 -1
  894. package/dist/components/ui/toggle.js +9 -1
  895. package/dist/components/ui/tree.d.ts +8 -0
  896. package/dist/components/ui/tree.d.ts.map +1 -1
  897. package/dist/components/ui/tree.js +92 -13
  898. package/dist/components/ui/video-player.d.ts +236 -0
  899. package/dist/components/ui/video-player.d.ts.map +1 -0
  900. package/dist/components/ui/video-player.js +72 -0
  901. package/dist/fonts/inter-latin-400-italic.woff2 +0 -0
  902. package/dist/index.d.ts +112 -0
  903. package/dist/index.d.ts.map +1 -1
  904. package/dist/index.js +72 -0
  905. package/dist/lib/figure.d.ts +149 -0
  906. package/dist/lib/figure.d.ts.map +1 -0
  907. package/dist/lib/figure.js +242 -0
  908. package/dist/lib/utils.d.ts +29 -0
  909. package/dist/lib/utils.d.ts.map +1 -1
  910. package/dist/lib/utils.js +35 -0
  911. package/dist/live/index.d.ts +10 -3
  912. package/dist/live/index.d.ts.map +1 -1
  913. package/dist/live/index.js +12 -3
  914. package/dist/live/run-stream-01/run-stream.d.ts.map +1 -1
  915. package/dist/live/run-stream-01/run-stream.js +6 -5
  916. package/dist/live/tool-ledger-01/index.d.ts +3 -0
  917. package/dist/live/tool-ledger-01/index.d.ts.map +1 -0
  918. package/dist/live/tool-ledger-01/index.js +1 -0
  919. package/dist/live/tool-ledger-01/tool-ledger.d.ts +348 -0
  920. package/dist/live/tool-ledger-01/tool-ledger.d.ts.map +1 -0
  921. package/dist/live/tool-ledger-01/tool-ledger.js +245 -0
  922. package/dist/pages/about-page/index.d.ts +306 -0
  923. package/dist/pages/about-page/index.d.ts.map +1 -0
  924. package/dist/pages/about-page/index.js +161 -0
  925. package/dist/pages/blog-post-page/index.d.ts +36 -15
  926. package/dist/pages/blog-post-page/index.d.ts.map +1 -1
  927. package/dist/pages/blog-post-page/index.js +35 -10
  928. package/dist/pages/careers-page/index.d.ts +288 -0
  929. package/dist/pages/careers-page/index.d.ts.map +1 -0
  930. package/dist/pages/careers-page/index.js +182 -0
  931. package/dist/pages/changelog-page/index.d.ts +255 -0
  932. package/dist/pages/changelog-page/index.d.ts.map +1 -0
  933. package/dist/pages/changelog-page/index.js +86 -0
  934. package/dist/pages/contact-page/index.d.ts +261 -0
  935. package/dist/pages/contact-page/index.d.ts.map +1 -0
  936. package/dist/pages/contact-page/index.js +136 -0
  937. package/dist/pages/docs-shell/docs-shell.d.ts +126 -16
  938. package/dist/pages/docs-shell/docs-shell.d.ts.map +1 -1
  939. package/dist/pages/docs-shell/docs-shell.js +229 -28
  940. package/dist/pages/error-page/index.d.ts +188 -0
  941. package/dist/pages/error-page/index.d.ts.map +1 -0
  942. package/dist/pages/error-page/index.js +102 -0
  943. package/dist/pages/index.d.ts +10 -0
  944. package/dist/pages/index.d.ts.map +1 -1
  945. package/dist/pages/index.js +14 -0
  946. package/dist/pages/legal-page/index.d.ts +194 -0
  947. package/dist/pages/legal-page/index.d.ts.map +1 -0
  948. package/dist/pages/legal-page/index.js +99 -0
  949. package/dist/pages/not-found-page/index.d.ts.map +1 -1
  950. package/dist/pages/not-found-page/index.js +4 -3
  951. package/dist/pages/onboarding-page/index.d.ts +199 -0
  952. package/dist/pages/onboarding-page/index.d.ts.map +1 -0
  953. package/dist/pages/onboarding-page/index.js +71 -0
  954. package/dist/pages/pricing-page/index.d.ts +286 -0
  955. package/dist/pages/pricing-page/index.d.ts.map +1 -0
  956. package/dist/pages/pricing-page/index.js +139 -0
  957. package/dist/pages/search-page/index.d.ts +305 -0
  958. package/dist/pages/search-page/index.d.ts.map +1 -0
  959. package/dist/pages/search-page/index.js +142 -0
  960. package/dist/pages/status-page/index.d.ts +366 -0
  961. package/dist/pages/status-page/index.d.ts.map +1 -0
  962. package/dist/pages/status-page/index.js +136 -0
  963. package/dist/styles.css +1105 -62
  964. package/package.json +9 -3
@@ -0,0 +1,262 @@
1
+ import { type ReactNode } from 'react';
2
+ /**
3
+ * What a move reports to the sentence that is read out after it.
4
+ *
5
+ * The id and the two positions, and nothing else. The id is there because a
6
+ * caller with two reorderable lists on one page needs to say which list moved,
7
+ * and the positions are there because "moved" without a destination is a sentence
8
+ * that has told the reader nothing they can check.
9
+ */
10
+ export type ReorderableMove = {
11
+ /** The row that moved, named by the caller's own key for it. */
12
+ id: string;
13
+ /** Its position before the move, counting from zero. */
14
+ from: number;
15
+ /** Its position after the move, counting from zero. */
16
+ to: number;
17
+ /** How many rows the list holds in total, after the move. */
18
+ total: number;
19
+ };
20
+ /**
21
+ * The two facts a row's render prop is handed beside the row itself.
22
+ *
23
+ * `index` is the position in the caller's array and it renumbers on every move,
24
+ * which is the number a caller needs to index their own array with. `locked` is
25
+ * the row's own answer to the rule the Component enforces, handed back so a row
26
+ * that cannot move can say so in its own words rather than being silently inert.
27
+ */
28
+ export type ReorderableRowInfo = {
29
+ /** The row's position, counting from zero. */
30
+ index: number;
31
+ /** Whether this row holds its position and can be neither picked up nor crossed. */
32
+ locked: boolean;
33
+ };
34
+ /**
35
+ * The props a ReorderableList accepts.
36
+ *
37
+ * The props interface is generic over the row type rather than typed as `object`,
38
+ * for the reason `RepeatableRows` states in full: a row is the caller's own domain
39
+ * value, a line item or a pipeline stage, and a Component that took a shape of its
40
+ * own would make every caller restate their type to satisfy a form. The row type
41
+ * is a parameter of this interface and not of the function, which costs the
42
+ * caller the inference on the render prop's row and buys the Component an
43
+ * interface the corpus can read.
44
+ */
45
+ export interface ReorderableListProps<TRow> {
46
+ /**
47
+ * The rows, in the order they are shown.
48
+ *
49
+ * Required, and the objects must be the same objects across renders for the
50
+ * same reason `RepeatableRows` says it: the Component keys each row by its
51
+ * identity rather than by its position, which is what lets a row that stays put
52
+ * keep its element, its controls and its caret however many rows move around it,
53
+ * and an identity is only stable if the caller holds the rows somewhere rather
54
+ * than rebuilding them on every render.
55
+ */
56
+ rows: readonly TRow[];
57
+ /**
58
+ * The caller's key for a row.
59
+ *
60
+ * Required, because a row needs an identity that survives the move and the
61
+ * Component will not read one off a position. It is also the id a move is
62
+ * announced under, so a caller with two lists on a page can tell the reader which
63
+ * one moved.
64
+ */
65
+ getRowId: (row: TRow) => string;
66
+ /**
67
+ * Whether a row holds its position.
68
+ *
69
+ * Optional, and the rule it selects is stated on `ReorderableList` at length
70
+ * because it is the one piece of policy here a caller cannot read off the prop's
71
+ * type. A locked row can be neither picked up nor crossed, and a move that would
72
+ * put a row on the far side of one is clamped to the locked row's own slot.
73
+ * Omitted, every row moves.
74
+ */
75
+ isLocked?: (row: TRow) => boolean;
76
+ /**
77
+ * Called with the whole new order whenever a row moves, and once when a cancelled
78
+ * keyboard move is restored.
79
+ *
80
+ * The order rather than a pair of positions, and the reason is cancellation. A
81
+ * keyboard reader who picks a row up, moves it three places and presses Escape has
82
+ * to get the original arrangement back in one step, and a callback taking
83
+ * `(from, to)` would make that three calls and three announcements of a move the
84
+ * reader has just undone. It is also why this Component owns the locked-row clamp:
85
+ * the caller's array comes back whole and in the order the reader can see, rather
86
+ * than as a set of edits the caller has to replay and keep true.
87
+ *
88
+ * A mutable array rather than a `readonly` one, because the array is one this
89
+ * Component built for this call and nothing about it requires the caller to treat
90
+ * it as immutable. That is what lets the ordinary caller write
91
+ * `onOrderChange={setRows}` and hand the result straight to a state setter, which
92
+ * is the case almost every caller is.
93
+ */
94
+ onOrderChange: (order: TRow[]) => void;
95
+ /**
96
+ * The accessible name of one row's grab control, given the row's position.
97
+ *
98
+ * Required, and a function of the position rather than of the row for the same
99
+ * reason `RepeatableRows` requires it: the sentence has to be true after a move,
100
+ * and a sentence written from the row's own fields goes stale exactly when a
101
+ * reader is reading it. Written as the action and the position, the way a reader
102
+ * counts: "Reorder Billing, position 2 of 5".
103
+ */
104
+ handleLabel: (index: number) => string;
105
+ /**
106
+ * The words for this list's keyboard model, read once when the reader lands on
107
+ * a grab control.
108
+ *
109
+ * Required, and required because a keyboard reorder with no stated model is a
110
+ * control that does nothing a reader can discover: pick up, move, put down and
111
+ * put back are four behaviours, and none of them is guessable from the shape of
112
+ * a handle with dots on it. It is one sentence for the whole list rather than one
113
+ * per row, because it is the same sentence every time and a reader who has read
114
+ * it once does not need it again on row nine.
115
+ */
116
+ instructionsLabel: string;
117
+ /**
118
+ * The words read after a row has moved, given what moved.
119
+ *
120
+ * Required, and it is the sentence this Component most needs from its caller: a
121
+ * reorder is invisible to a screen reader apart from this, because nothing in
122
+ * the DOM says a row changed places.
123
+ */
124
+ announce: (move: ReorderableMove) => string;
125
+ /**
126
+ * The words read when a move is refused because a locked row is in the way,
127
+ * given the locked row's position.
128
+ *
129
+ * Required, and required rather than defaulted because a refusal with no
130
+ * sentence is a key press that produces silence, which a reader takes to mean
131
+ * the control is broken. It is also what a press on a locked row's own handle
132
+ * says. A caller with no locked rows writes a function that is never called.
133
+ */
134
+ blockedLabel: (index: number) => string;
135
+ /**
136
+ * The words read after Escape has put a picked-up row back where it started.
137
+ *
138
+ * Required, and it is a fourth reader-facing string rather than a reuse of
139
+ * `blockedLabel` because the two events are not the same one: a blocked move
140
+ * found an obstacle and a cancelled move undid the reader's own work, and
141
+ * announcing them with one sentence tells a reader who cancelled that something
142
+ * in the list is wrong with it.
143
+ */
144
+ cancelLabel: string;
145
+ /**
146
+ * The row's own content, given the row and its facts.
147
+ *
148
+ * A render prop rather than a slot, for the reason the other two in this package
149
+ * give: a slot receives the row and nothing else, and a caller who then mints an
150
+ * id per row to label it has reintroduced the arrangement this Component exists
151
+ * to hold still.
152
+ */
153
+ children: (row: TRow, info: ReorderableRowInfo) => ReactNode;
154
+ /**
155
+ * The list's own name, drawn above it.
156
+ *
157
+ * Optional, and the omission is the same decision `ListPanel` and
158
+ * `RepeatableRows` make: this is one of the places in the package where a region
159
+ * may arrive anonymous, because "Rows" is a claim that is wrong in every
160
+ * consumer's product and an anonymous region is honestly absent from the
161
+ * landmark list rather than announced as something it is not.
162
+ */
163
+ label?: ReactNode;
164
+ /** Layout only. Changing a Prism-owned visual property from here is prohibited. */
165
+ className?: string;
166
+ }
167
+ /**
168
+ * A list of rows the reader can put in a different order with a pointer or with
169
+ * the keyboard, where the two arrangements have to agree.
170
+ *
171
+ * **The two input models are one function, and that is the whole Component.** A
172
+ * pointer drag measures where the finger is and computes a destination; a keyboard
173
+ * reorder computes one destination per arrow key. Both call the same `commit`,
174
+ * which is the only place in this module where a row changes places, which emits
175
+ * the announcement, and which applies the locked-row clamp. The alternative, one
176
+ * handler per model, is the arrangement that produced the defects this Component
177
+ * exists to end: a pointer model that let a row cross a locked one, and a keyboard
178
+ * model whose announcement named a position the pointer would never have produced.
179
+ * The cost is stated rather than hidden: a caller who wants the pointer to feel
180
+ * different from the keyboard cannot have it, because the difference would be
181
+ * exactly the disagreement this Component refuses to permit.
182
+ *
183
+ * **A locked row is an obstacle and not a wall, and that distinction is the rule
184
+ * the keyboard model turns on.** A locked row can be neither picked up nor
185
+ * crossed: it holds its position, and a move that would put another row on the far
186
+ * side of it is clamped to the locked row's own slot. The second half matters more
187
+ * than it looks. If a locked row were a wall rather than an obstacle, a keyboard
188
+ * reader below it pressing the down arrow would stop at the wall and have no way
189
+ * past it, because an arrow key moves one position at a time and the reader would
190
+ * have to know to press it twice to clear a row that is not going anywhere. The
191
+ * clamped move is what a pointer drag produces when a finger crosses a locked row,
192
+ * which is the agreement the first paragraph is about. The cost is real and named:
193
+ * a locked row does not partition the list, so a row above one can still be moved
194
+ * below it in a single gesture, and a consumer whose locked rows are meant to be
195
+ * hard boundaries partitions into two lists instead.
196
+ *
197
+ * **The keyboard model is four behaviours, and three of them happen with no
198
+ * visible control in a different state.** Space or Enter picks the focused row up,
199
+ * the arrow keys move it one position at a time and announce every one of them,
200
+ * Space or Enter puts it down, and Escape restores the arrangement the list had
201
+ * when the row was picked up. Only the picked-up state is drawn, and it is drawn
202
+ * as `aria-pressed` on the handle rather than as a lifted row, because the
203
+ * alternative is a row that looks like it is being dragged when it is not and a
204
+ * reader with two of them on a screen cannot tell which is which. The instructions
205
+ * are a prop because the sequence is a sentence in the consumer's language and
206
+ * because a reader who has not been told it cannot guess any of it from a handle
207
+ * with dots on it. The honest limit is the announcement rather than the handle:
208
+ * nothing in the DOM says a row changed places, so a caller who renders this
209
+ * without `announce` gets a reordering surface a screen reader cannot follow,
210
+ * which is the failure the whole Component is built to prevent.
211
+ *
212
+ * **The arrow keys are the browser's until a row is picked up, and that is
213
+ * deliberate.** A list that swallowed the arrow keys would take them away from
214
+ * every control inside its own rows, and the cost of that is a reader who cannot
215
+ * move through a row's own fields. So nothing is a roving tab stop here: the
216
+ * handles are ordinary tab stops in DOM order, the arrows scroll the page or move
217
+ * a caret inside a control as they always do, and a reader who wants to reorder
218
+ * picks the row up first, which is what tells the Component the arrows are about
219
+ * the row. The price is one extra key press before a keyboard reorder begins, and
220
+ * it buys back every arrow key inside a row.
221
+ *
222
+ * **Escape restores the arrangement rather than unwinding it, and the shape of the
223
+ * callback is why.** The order is snapshotted when the row is picked up and handed
224
+ * back whole on Escape, so a cancelled move is one call and one announcement rather
225
+ * than one per position the row travelled. A caller who took `(from, to)` would
226
+ * have to replay the moves in reverse and would announce a sequence of movements
227
+ * the reader has just undone, which is the opposite of what Escape means.
228
+ *
229
+ * **Focus follows the row, because the row is keyed by identity.** A move reorders
230
+ * the caller's array and React moves the element that already held focus rather
231
+ * than making a new one, so a keyboard reader's cursor stays on the row they are
232
+ * moving without a line of focus code. After a pointer drop the focus is moved to
233
+ * the moved row's handle deliberately, because a pointer reader has no cursor to
234
+ * follow and would otherwise be left wherever the drop happened to leave them.
235
+ *
236
+ * **The drag overlay is the caller's own row and not a picture of it.** The
237
+ * render prop is drawn a second time inside it, so a row holding a chart, an
238
+ * avatar and three badges is lifted as that and not as a grey box approximating
239
+ * it. The overlay carries no transition on its transform, which is the one place
240
+ * in this package where a token duration would be wrong: it is tracking a finger,
241
+ * and an eased follow is lag between the finger and the thing the finger is
242
+ * holding. The motion that is here is the drop target changing, on `duration-fast`.
243
+ *
244
+ * **It does not compose `ListPanel`, and the refusal is worth stating.** A panel
245
+ * would bring a title band, a toolbar slot, a bounded height and a scroll region,
246
+ * and a reorderable list wants none of them by default: the reader has to see the
247
+ * whole arrangement to reorder it, a bounded body hides the row they are about to
248
+ * drop onto, and the panel's toolbar has nothing to say about moving rows. A
249
+ * caller who does want a bounded frame puts this inside `ListPanel`'s body, which
250
+ * is one line and costs nothing.
251
+ *
252
+ * **It is a client Component**, because a drag is a stream of pointer events and a
253
+ * keyboard reorder is a key handler, and because every one of its value props is a
254
+ * function the caller hands it, which is a client-to-client boundary wherever it is
255
+ * written. What that costs is the price of every client control: a server
256
+ * Component may render this list once with its rows already in place, and what it
257
+ * may not do is offer the two reorder models, because both are facts about what
258
+ * happens after the reader acts.
259
+ */
260
+ declare function ReorderableList({ rows, getRowId, isLocked, onOrderChange, handleLabel, instructionsLabel, announce, blockedLabel, cancelLabel, children, label, className, }: ReorderableListProps<any>): import("react").JSX.Element;
261
+ export { ReorderableList };
262
+ //# sourceMappingURL=reorderable-list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reorderable-list.d.ts","sourceRoot":"","sources":["../../../src/components/ui/reorderable-list.tsx"],"names":[],"mappings":"AAGA,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAKd;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,gEAAgE;IAChE,EAAE,EAAE,MAAM,CAAA;IACV,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAA;IACZ,uDAAuD;IACvD,EAAE,EAAE,MAAM,CAAA;IACV,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAA;IACb,oFAAoF;IACpF,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,oBAAoB,CAAC,IAAI;IACxC;;;;;;;;;OASG;IACH,IAAI,EAAE,SAAS,IAAI,EAAE,CAAA;IACrB;;;;;;;OAOG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAA;IAC/B;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAA;IACjC;;;;;;;;;;;;;;;;;OAiBG;IACH,aAAa,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAA;IACtC;;;;;;;;OAQG;IACH,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IACtC;;;;;;;;;;OAUG;IACH,iBAAiB,EAAE,MAAM,CAAA;IACzB;;;;;;OAMG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,MAAM,CAAA;IAC3C;;;;;;;;OAQG;IACH,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IACvC;;;;;;;;OAQG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;;;;;;OAOG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,KAAK,SAAS,CAAA;IAC5D;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAoCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4FG;AACH,iBAAS,eAAe,CAAC,EACvB,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,KAAK,EACL,SAAS,GACV,EAAE,oBAAoB,CAAC,GAAG,CAAC,+BAkT3B;AAED,OAAO,EAAE,eAAe,EAAE,CAAA"}
@@ -0,0 +1,325 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { GripVerticalIcon } from 'lucide-react';
4
+ import { useCallback, useEffect, useId, useRef, useState, } from 'react';
5
+ import { LiveRegion } from './live-region.js';
6
+ import { cn } from '../../lib/utils.js';
7
+ /**
8
+ * The grab control, drawn once and used by every row.
9
+ *
10
+ * The coarse-pointer floor is here for the reason it is on every other control in
11
+ * this package that a thumb has to hit: five rows on a phone are five rows, and a
12
+ * 20px target is a target that picks up the wrong one. `touch-none` is what stops
13
+ * the browser scrolling the page out from under a drag that started on a handle.
14
+ * Duplicated as a constant rather than imported because each module draws its own
15
+ * row geometry, and a design system that published one class string as an API
16
+ * would be publishing a styling hook.
17
+ */
18
+ const HANDLE = 'text-muted-foreground hover:text-foreground inline-flex size-8 shrink-0 touch-none cursor-grab items-center justify-center rounded-sm outline-none transition-colors duration-fast ease-out pointer-coarse:size-11 focus-visible:ring-ring focus-visible:ring-[3px]';
19
+ /**
20
+ * One row's frame.
21
+ *
22
+ * The card surface rather than a bare line, because a row that is being picked up
23
+ * or dropped onto needs a boundary the reader can see, and a list of bare lines
24
+ * gives them nothing to aim at. The drop target changes both the border's ink and
25
+ * the fill: the ink alone is a one-pixel difference between two colours that are
26
+ * close in every pack, and the fill alone is a change the reader has to interpret.
27
+ */
28
+ const ROW = 'border-border bg-card flex items-center gap-2 rounded-md border px-2 py-1.5 transition-colors duration-fast ease-out';
29
+ /**
30
+ * A list of rows the reader can put in a different order with a pointer or with
31
+ * the keyboard, where the two arrangements have to agree.
32
+ *
33
+ * **The two input models are one function, and that is the whole Component.** A
34
+ * pointer drag measures where the finger is and computes a destination; a keyboard
35
+ * reorder computes one destination per arrow key. Both call the same `commit`,
36
+ * which is the only place in this module where a row changes places, which emits
37
+ * the announcement, and which applies the locked-row clamp. The alternative, one
38
+ * handler per model, is the arrangement that produced the defects this Component
39
+ * exists to end: a pointer model that let a row cross a locked one, and a keyboard
40
+ * model whose announcement named a position the pointer would never have produced.
41
+ * The cost is stated rather than hidden: a caller who wants the pointer to feel
42
+ * different from the keyboard cannot have it, because the difference would be
43
+ * exactly the disagreement this Component refuses to permit.
44
+ *
45
+ * **A locked row is an obstacle and not a wall, and that distinction is the rule
46
+ * the keyboard model turns on.** A locked row can be neither picked up nor
47
+ * crossed: it holds its position, and a move that would put another row on the far
48
+ * side of it is clamped to the locked row's own slot. The second half matters more
49
+ * than it looks. If a locked row were a wall rather than an obstacle, a keyboard
50
+ * reader below it pressing the down arrow would stop at the wall and have no way
51
+ * past it, because an arrow key moves one position at a time and the reader would
52
+ * have to know to press it twice to clear a row that is not going anywhere. The
53
+ * clamped move is what a pointer drag produces when a finger crosses a locked row,
54
+ * which is the agreement the first paragraph is about. The cost is real and named:
55
+ * a locked row does not partition the list, so a row above one can still be moved
56
+ * below it in a single gesture, and a consumer whose locked rows are meant to be
57
+ * hard boundaries partitions into two lists instead.
58
+ *
59
+ * **The keyboard model is four behaviours, and three of them happen with no
60
+ * visible control in a different state.** Space or Enter picks the focused row up,
61
+ * the arrow keys move it one position at a time and announce every one of them,
62
+ * Space or Enter puts it down, and Escape restores the arrangement the list had
63
+ * when the row was picked up. Only the picked-up state is drawn, and it is drawn
64
+ * as `aria-pressed` on the handle rather than as a lifted row, because the
65
+ * alternative is a row that looks like it is being dragged when it is not and a
66
+ * reader with two of them on a screen cannot tell which is which. The instructions
67
+ * are a prop because the sequence is a sentence in the consumer's language and
68
+ * because a reader who has not been told it cannot guess any of it from a handle
69
+ * with dots on it. The honest limit is the announcement rather than the handle:
70
+ * nothing in the DOM says a row changed places, so a caller who renders this
71
+ * without `announce` gets a reordering surface a screen reader cannot follow,
72
+ * which is the failure the whole Component is built to prevent.
73
+ *
74
+ * **The arrow keys are the browser's until a row is picked up, and that is
75
+ * deliberate.** A list that swallowed the arrow keys would take them away from
76
+ * every control inside its own rows, and the cost of that is a reader who cannot
77
+ * move through a row's own fields. So nothing is a roving tab stop here: the
78
+ * handles are ordinary tab stops in DOM order, the arrows scroll the page or move
79
+ * a caret inside a control as they always do, and a reader who wants to reorder
80
+ * picks the row up first, which is what tells the Component the arrows are about
81
+ * the row. The price is one extra key press before a keyboard reorder begins, and
82
+ * it buys back every arrow key inside a row.
83
+ *
84
+ * **Escape restores the arrangement rather than unwinding it, and the shape of the
85
+ * callback is why.** The order is snapshotted when the row is picked up and handed
86
+ * back whole on Escape, so a cancelled move is one call and one announcement rather
87
+ * than one per position the row travelled. A caller who took `(from, to)` would
88
+ * have to replay the moves in reverse and would announce a sequence of movements
89
+ * the reader has just undone, which is the opposite of what Escape means.
90
+ *
91
+ * **Focus follows the row, because the row is keyed by identity.** A move reorders
92
+ * the caller's array and React moves the element that already held focus rather
93
+ * than making a new one, so a keyboard reader's cursor stays on the row they are
94
+ * moving without a line of focus code. After a pointer drop the focus is moved to
95
+ * the moved row's handle deliberately, because a pointer reader has no cursor to
96
+ * follow and would otherwise be left wherever the drop happened to leave them.
97
+ *
98
+ * **The drag overlay is the caller's own row and not a picture of it.** The
99
+ * render prop is drawn a second time inside it, so a row holding a chart, an
100
+ * avatar and three badges is lifted as that and not as a grey box approximating
101
+ * it. The overlay carries no transition on its transform, which is the one place
102
+ * in this package where a token duration would be wrong: it is tracking a finger,
103
+ * and an eased follow is lag between the finger and the thing the finger is
104
+ * holding. The motion that is here is the drop target changing, on `duration-fast`.
105
+ *
106
+ * **It does not compose `ListPanel`, and the refusal is worth stating.** A panel
107
+ * would bring a title band, a toolbar slot, a bounded height and a scroll region,
108
+ * and a reorderable list wants none of them by default: the reader has to see the
109
+ * whole arrangement to reorder it, a bounded body hides the row they are about to
110
+ * drop onto, and the panel's toolbar has nothing to say about moving rows. A
111
+ * caller who does want a bounded frame puts this inside `ListPanel`'s body, which
112
+ * is one line and costs nothing.
113
+ *
114
+ * **It is a client Component**, because a drag is a stream of pointer events and a
115
+ * keyboard reorder is a key handler, and because every one of its value props is a
116
+ * function the caller hands it, which is a client-to-client boundary wherever it is
117
+ * written. What that costs is the price of every client control: a server
118
+ * Component may render this list once with its rows already in place, and what it
119
+ * may not do is offer the two reorder models, because both are facts about what
120
+ * happens after the reader acts.
121
+ */
122
+ function ReorderableList({ rows, getRowId, isLocked, onOrderChange, handleLabel, instructionsLabel, announce, blockedLabel, cancelLabel, children, label, className, }) {
123
+ const instructionsId = useId();
124
+ const listRef = useRef(null);
125
+ // The row geometry, measured once when a drag begins. The list does not reorder
126
+ // while a drag is in progress, so the rectangles read at the start stay true
127
+ // until it ends, and the pointer handler never forces a layout on every move.
128
+ const boxes = useRef([]);
129
+ // How far into the lifted row the pointer took hold, so the overlay leaves by the
130
+ // edge the reader grabbed rather than snapping to the pointer's own coordinates.
131
+ const grab = useRef(0);
132
+ // The row to hand focus to once the caller's array has caught up with a drop.
133
+ // Armed before the callback runs, because the row that will hold it does not
134
+ // exist until the caller has applied the order the callback was given.
135
+ const focusAfter = useRef(null);
136
+ // The arrangement as it stood when the keyboard reader picked a row up.
137
+ const pickedUp = useRef(null);
138
+ const [picked, setPicked] = useState(null);
139
+ const [drag, setDrag] = useState(null);
140
+ const [said, setSaid] = useState('');
141
+ const lockedAt = useCallback((index) => (isLocked === undefined ? false : isLocked(rows[index])), [isLocked, rows]);
142
+ /**
143
+ * The one place a row changes places.
144
+ *
145
+ * `destination` is clamped by walking towards the row's own slot one candidate
146
+ * at a time and taking the first arrangement in which every locked row is
147
+ * exactly where it was. Walking rather than computing is the decision: a move
148
+ * that crosses two locked rows has to stop at the first one, and there is no
149
+ * arithmetic that says which without checking each candidate against the rule.
150
+ * `null` means the row cannot move at all from here, which happens when the row
151
+ * itself is locked or when it already sits against the locked row beside it, and
152
+ * both are reported to the reader rather than swallowed.
153
+ */
154
+ const commit = useCallback((id, from, destination) => {
155
+ if (from < 0 || from >= rows.length)
156
+ return false;
157
+ if (lockedAt(from)) {
158
+ setSaid(blockedLabel(from));
159
+ return false;
160
+ }
161
+ const step = destination > from ? 1 : -1;
162
+ for (let to = destination; to !== from; to -= step) {
163
+ const order = [...rows];
164
+ const moved = order.splice(from, 1);
165
+ order.splice(to, 0, ...moved);
166
+ if (rows.every((row, at) => !lockedAt(at) || order[at] === row)) {
167
+ setSaid(announce({ id, from, to, total: rows.length }));
168
+ onOrderChange(order);
169
+ return true;
170
+ }
171
+ }
172
+ // Everything between here and the locked row beside it is taken, so the
173
+ // refusal is reported against the locked row the reader ran into.
174
+ const blocked = destination > from ? from + 1 : from - 1;
175
+ setSaid(blocked >= 0 && blocked < rows.length && lockedAt(blocked) ? blockedLabel(blocked) : '');
176
+ return false;
177
+ }, [announce, blockedLabel, lockedAt, onOrderChange, rows]);
178
+ // A drop hands focus to the row that moved, and that row only exists once the
179
+ // caller has applied the order, so the focus waits for the render rather than
180
+ // racing it. A keyboard move needs none of this: the element the reader was on is
181
+ // moved rather than remounted, so their cursor is already where it belongs.
182
+ useEffect(() => {
183
+ const wanted = focusAfter.current;
184
+ if (wanted === null)
185
+ return;
186
+ const root = listRef.current;
187
+ if (root === null)
188
+ return;
189
+ const handle = root.querySelector(`[data-reorder-handle="${wanted}"]`);
190
+ if (handle === null)
191
+ return;
192
+ focusAfter.current = null;
193
+ handle.focus();
194
+ });
195
+ const measure = () => {
196
+ const root = listRef.current;
197
+ if (root === null)
198
+ return false;
199
+ boxes.current = [...root.children].map((row) => {
200
+ const rect = row.getBoundingClientRect();
201
+ return { top: rect.top, middle: rect.top + rect.height / 2, left: rect.left, width: rect.width };
202
+ });
203
+ return true;
204
+ };
205
+ /**
206
+ * The index a pointer at `clientY` is asking for: the number of row middles it
207
+ * has passed. A finger between two rows is asking for the lower of the two, which
208
+ * is what makes the last few pixels above a row's centre feel like they belong
209
+ * to the row above rather than producing a dead band that moves nothing.
210
+ */
211
+ const indexAt = (clientY) => {
212
+ let at = 0;
213
+ while (at < boxes.current.length && boxes.current[at].middle < clientY)
214
+ at += 1;
215
+ return at;
216
+ };
217
+ const onPointerDown = (event, id, index) => {
218
+ if (lockedAt(index)) {
219
+ // A handle that cannot be grabbed would otherwise accept a press and do
220
+ // nothing at all, which is the state `Dropzone` and `LifecycleButton` both
221
+ // refuse to leave a control in.
222
+ event.preventDefault();
223
+ setSaid(blockedLabel(index));
224
+ return;
225
+ }
226
+ if (!measure())
227
+ return;
228
+ const box = boxes.current[index];
229
+ if (box === undefined)
230
+ return;
231
+ // Where in the row the pointer took hold, so the overlay is lifted by the same
232
+ // edge and does not jump out from under the finger that is holding it.
233
+ grab.current = event.clientY - box.top;
234
+ event.currentTarget.setPointerCapture(event.pointerId);
235
+ setDrag({
236
+ id,
237
+ from: index,
238
+ pointerId: event.pointerId,
239
+ clientX: event.clientX,
240
+ clientY: event.clientY,
241
+ target: index,
242
+ });
243
+ };
244
+ const onPointerMove = (event) => {
245
+ setDrag((current) => current === null || current.pointerId !== event.pointerId
246
+ ? current
247
+ : { ...current, clientX: event.clientX, clientY: event.clientY, target: indexAt(event.clientY) });
248
+ };
249
+ const onPointerUp = (event) => {
250
+ if (drag === null || drag.pointerId !== event.pointerId)
251
+ return;
252
+ if (commit(drag.id, drag.from, drag.target))
253
+ focusAfter.current = drag.id;
254
+ setDrag(null);
255
+ };
256
+ const onKeyDown = (event, index) => {
257
+ // `Enter` is read from `key` and the spacebar from `code`, and the asymmetry is
258
+ // deliberate rather than an inconsistency. `event.key` for the spacebar is a
259
+ // literal space character, which is not a name any reader of this file could
260
+ // recognise as a key, while `event.code` names it `Space` and is unambiguous
261
+ // about which physical key was pressed. `Enter` has no such problem: its `key` is
262
+ // already the word, and `code` would fail to match the numeric keypad's.
263
+ if (event.key === 'Enter' || event.code === 'Space') {
264
+ event.preventDefault();
265
+ if (picked === null) {
266
+ // The snapshot is taken on pickup rather than on mount, because the
267
+ // arrangement a reader wants back is the one they started from, not the
268
+ // one the list happened to be rendered with.
269
+ pickedUp.current = rows;
270
+ setPicked(ids[index]);
271
+ return;
272
+ }
273
+ pickedUp.current = null;
274
+ setPicked(null);
275
+ return;
276
+ }
277
+ if (event.key === 'Escape' && picked !== null) {
278
+ event.preventDefault();
279
+ const restore = pickedUp.current;
280
+ pickedUp.current = null;
281
+ setPicked(null);
282
+ // Copied rather than handed over as it stands, because the snapshot is a
283
+ // `readonly` view of an array the caller gave this Component and the callback
284
+ // asks for one the caller may put straight into their own state.
285
+ if (restore !== null)
286
+ onOrderChange([...restore]);
287
+ setSaid(cancelLabel);
288
+ return;
289
+ }
290
+ const key = event.key;
291
+ if (key !== 'ArrowUp' && key !== 'ArrowDown')
292
+ return;
293
+ // The arrows do nothing until a row is picked up, because they are the
294
+ // browser's for every control inside a row until then.
295
+ if (picked === null)
296
+ return;
297
+ event.preventDefault();
298
+ const destination = key === 'ArrowUp' ? index - 1 : index + 1;
299
+ if (destination < 0 || destination >= rows.length)
300
+ return;
301
+ commit(picked, index, destination);
302
+ };
303
+ const ids = rows.map(getRowId);
304
+ const lifted = drag === null ? null : drag;
305
+ return (_jsxs("div", { "data-slot": "reorderable-list", className: cn('flex w-full flex-col gap-2', className), children: [label === undefined ? null : (_jsx("span", { className: "text-muted-foreground text-xs font-medium tracking-wide uppercase", children: label })), _jsx("span", { id: instructionsId, "data-slot": "reorderable-list-instructions", className: "sr-only", children: instructionsLabel }), _jsx("ol", { ref: listRef, "data-slot": "reorderable-list-list", className: "flex w-full flex-col gap-2", children: rows.map((row, index) => {
306
+ const id = getRowId(row);
307
+ const locked = lockedAt(index);
308
+ const dragging = lifted !== null && lifted.id === id;
309
+ const target = lifted !== null && !dragging && lifted.target === index;
310
+ return (_jsxs("li", { "data-slot": "reorderable-list-row", "data-reorder-id": id, className: cn(ROW,
311
+ // The drop target changes its border's ink and its fill together,
312
+ // and the row being lifted fades rather than disappearing, so the
313
+ // reader can see both the hole it came from and the place it is
314
+ // about to land.
315
+ target && 'border-primary bg-accent', dragging && 'opacity-40'), children: [_jsx("button", { type: "button", "data-slot": "reorderable-list-handle", "data-reorder-handle": id, "aria-pressed": picked === id, "aria-describedby": instructionsId, "aria-label": handleLabel(index), onPointerDown: (event) => onPointerDown(event, id, index), onPointerMove: onPointerMove, onPointerUp: onPointerUp, onPointerCancel: () => setDrag(null), onKeyDown: (event) => onKeyDown(event, index), className: cn(HANDLE, locked
316
+ ? 'cursor-not-allowed opacity-50'
317
+ : picked === id
318
+ ? 'cursor-grabbing text-foreground'
319
+ : ''), children: _jsx(GripVerticalIcon, { className: "size-4", "aria-hidden": "true" }) }), _jsx("div", { "data-slot": "reorderable-list-content", className: "min-w-0 flex-1", children: children(row, { index, locked }) })] }, id));
320
+ }) }), lifted === null ? null : (_jsx("div", { "data-slot": "reorderable-list-overlay", "aria-hidden": "true", style: {
321
+ width: boxes.current[lifted.from]?.width,
322
+ transform: `translate3d(${boxes.current[lifted.from]?.left ?? 0}px, ${Math.round(lifted.clientY - grab.current)}px, 0)`,
323
+ }, className: "bg-popover text-popover-foreground pointer-events-none fixed z-50 rounded-md border p-2 shadow-md", children: children(rows[lifted.from], { index: lifted.from, locked: lockedAt(lifted.from) }) })), _jsx(LiveRegion, { className: "sr-only", politeness: "assertive", children: said })] }));
324
+ }
325
+ export { ReorderableList };