@nanisoft/prism-ui 0.13.0 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (943) hide show
  1. package/THIRD-PARTY-NOTICES.md +22 -7
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/blocks/about-01/about.d.ts +296 -0
  4. package/dist/blocks/about-01/about.d.ts.map +1 -0
  5. package/dist/blocks/about-01/about.js +103 -0
  6. package/dist/blocks/about-01/index.d.ts +3 -0
  7. package/dist/blocks/about-01/index.d.ts.map +1 -0
  8. package/dist/blocks/about-01/index.js +1 -0
  9. package/dist/blocks/accept-invite-01/accept-invite.d.ts +324 -0
  10. package/dist/blocks/accept-invite-01/accept-invite.d.ts.map +1 -0
  11. package/dist/blocks/accept-invite-01/accept-invite.js +230 -0
  12. package/dist/blocks/accept-invite-01/index.d.ts +3 -0
  13. package/dist/blocks/accept-invite-01/index.d.ts.map +1 -0
  14. package/dist/blocks/accept-invite-01/index.js +1 -0
  15. package/dist/blocks/account-01/account-01.d.ts +393 -0
  16. package/dist/blocks/account-01/account-01.d.ts.map +1 -0
  17. package/dist/blocks/account-01/account-01.js +215 -0
  18. package/dist/blocks/account-01/index.d.ts +3 -0
  19. package/dist/blocks/account-01/index.d.ts.map +1 -0
  20. package/dist/blocks/account-01/index.js +1 -0
  21. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts +271 -0
  22. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts.map +1 -0
  23. package/dist/blocks/activity-feed-01/activity-feed-01.js +185 -0
  24. package/dist/blocks/activity-feed-01/index.d.ts +3 -0
  25. package/dist/blocks/activity-feed-01/index.d.ts.map +1 -0
  26. package/dist/blocks/activity-feed-01/index.js +1 -0
  27. package/dist/blocks/address-book-01/address-book-01.d.ts +312 -0
  28. package/dist/blocks/address-book-01/address-book-01.d.ts.map +1 -0
  29. package/dist/blocks/address-book-01/address-book-01.js +233 -0
  30. package/dist/blocks/address-book-01/index.d.ts +3 -0
  31. package/dist/blocks/address-book-01/index.d.ts.map +1 -0
  32. package/dist/blocks/address-book-01/index.js +1 -0
  33. package/dist/blocks/audit-log-01/audit-log-01.d.ts +333 -0
  34. package/dist/blocks/audit-log-01/audit-log-01.d.ts.map +1 -0
  35. package/dist/blocks/audit-log-01/audit-log-01.js +211 -0
  36. package/dist/blocks/audit-log-01/index.d.ts +3 -0
  37. package/dist/blocks/audit-log-01/index.d.ts.map +1 -0
  38. package/dist/blocks/audit-log-01/index.js +1 -0
  39. package/dist/blocks/auth-form-01/auth-form.d.ts +40 -1
  40. package/dist/blocks/auth-form-01/auth-form.d.ts.map +1 -1
  41. package/dist/blocks/auth-form-01/auth-form.js +26 -3
  42. package/dist/blocks/awards-01/awards.d.ts +156 -0
  43. package/dist/blocks/awards-01/awards.d.ts.map +1 -0
  44. package/dist/blocks/awards-01/awards.js +102 -0
  45. package/dist/blocks/awards-01/index.d.ts +3 -0
  46. package/dist/blocks/awards-01/index.d.ts.map +1 -0
  47. package/dist/blocks/awards-01/index.js +1 -0
  48. package/dist/blocks/backdrop-01/backdrop.d.ts +268 -0
  49. package/dist/blocks/backdrop-01/backdrop.d.ts.map +1 -0
  50. package/dist/blocks/backdrop-01/backdrop.js +170 -0
  51. package/dist/blocks/backdrop-01/index.d.ts +3 -0
  52. package/dist/blocks/backdrop-01/index.d.ts.map +1 -0
  53. package/dist/blocks/backdrop-01/index.js +1 -0
  54. package/dist/blocks/bento-01/bento-01.d.ts +136 -0
  55. package/dist/blocks/bento-01/bento-01.d.ts.map +1 -0
  56. package/dist/blocks/bento-01/bento-01.js +97 -0
  57. package/dist/blocks/bento-01/index.d.ts +3 -0
  58. package/dist/blocks/bento-01/index.d.ts.map +1 -0
  59. package/dist/blocks/bento-01/index.js +1 -0
  60. package/dist/blocks/billing-source-01/billing-source-01.d.ts +379 -0
  61. package/dist/blocks/billing-source-01/billing-source-01.d.ts.map +1 -0
  62. package/dist/blocks/billing-source-01/billing-source-01.js +222 -0
  63. package/dist/blocks/billing-source-01/index.d.ts +3 -0
  64. package/dist/blocks/billing-source-01/index.d.ts.map +1 -0
  65. package/dist/blocks/billing-source-01/index.js +1 -0
  66. package/dist/blocks/bundle-01/bundle.d.ts +387 -0
  67. package/dist/blocks/bundle-01/bundle.d.ts.map +1 -0
  68. package/dist/blocks/bundle-01/bundle.js +153 -0
  69. package/dist/blocks/bundle-01/index.d.ts +3 -0
  70. package/dist/blocks/bundle-01/index.d.ts.map +1 -0
  71. package/dist/blocks/bundle-01/index.js +1 -0
  72. package/dist/blocks/calendar-01/calendar.d.ts +251 -0
  73. package/dist/blocks/calendar-01/calendar.d.ts.map +1 -0
  74. package/dist/blocks/calendar-01/calendar.js +191 -0
  75. package/dist/blocks/calendar-01/index.d.ts +3 -0
  76. package/dist/blocks/calendar-01/index.d.ts.map +1 -0
  77. package/dist/blocks/calendar-01/index.js +1 -0
  78. package/dist/blocks/capacity-01/capacity.d.ts +363 -0
  79. package/dist/blocks/capacity-01/capacity.d.ts.map +1 -0
  80. package/dist/blocks/capacity-01/capacity.js +208 -0
  81. package/dist/blocks/capacity-01/index.d.ts +3 -0
  82. package/dist/blocks/capacity-01/index.d.ts.map +1 -0
  83. package/dist/blocks/capacity-01/index.js +1 -0
  84. package/dist/blocks/careers-01/careers.d.ts +186 -0
  85. package/dist/blocks/careers-01/careers.d.ts.map +1 -0
  86. package/dist/blocks/careers-01/careers.js +83 -0
  87. package/dist/blocks/careers-01/index.d.ts +3 -0
  88. package/dist/blocks/careers-01/index.d.ts.map +1 -0
  89. package/dist/blocks/careers-01/index.js +1 -0
  90. package/dist/blocks/case-studies-01/case-studies.d.ts +192 -0
  91. package/dist/blocks/case-studies-01/case-studies.d.ts.map +1 -0
  92. package/dist/blocks/case-studies-01/case-studies.js +97 -0
  93. package/dist/blocks/case-studies-01/index.d.ts +3 -0
  94. package/dist/blocks/case-studies-01/index.d.ts.map +1 -0
  95. package/dist/blocks/case-studies-01/index.js +1 -0
  96. package/dist/blocks/case-study-01/case-study.d.ts +214 -0
  97. package/dist/blocks/case-study-01/case-study.d.ts.map +1 -0
  98. package/dist/blocks/case-study-01/case-study.js +79 -0
  99. package/dist/blocks/case-study-01/index.d.ts +3 -0
  100. package/dist/blocks/case-study-01/index.d.ts.map +1 -0
  101. package/dist/blocks/case-study-01/index.js +1 -0
  102. package/dist/blocks/changelog-01/changelog.d.ts +200 -0
  103. package/dist/blocks/changelog-01/changelog.d.ts.map +1 -0
  104. package/dist/blocks/changelog-01/changelog.js +155 -0
  105. package/dist/blocks/changelog-01/index.d.ts +3 -0
  106. package/dist/blocks/changelog-01/index.d.ts.map +1 -0
  107. package/dist/blocks/changelog-01/index.js +1 -0
  108. package/dist/blocks/chart-card-01/chart-card-01.d.ts +149 -0
  109. package/dist/blocks/chart-card-01/chart-card-01.d.ts.map +1 -0
  110. package/dist/blocks/chart-card-01/chart-card-01.js +81 -0
  111. package/dist/blocks/chart-card-01/index.d.ts +3 -0
  112. package/dist/blocks/chart-card-01/index.d.ts.map +1 -0
  113. package/dist/blocks/chart-card-01/index.js +1 -0
  114. package/dist/blocks/chart-group-01/chart-group-01.d.ts +138 -0
  115. package/dist/blocks/chart-group-01/chart-group-01.d.ts.map +1 -0
  116. package/dist/blocks/chart-group-01/chart-group-01.js +74 -0
  117. package/dist/blocks/chart-group-01/index.d.ts +3 -0
  118. package/dist/blocks/chart-group-01/index.d.ts.map +1 -0
  119. package/dist/blocks/chart-group-01/index.js +1 -0
  120. package/dist/blocks/code-sample-01/code-sample.d.ts +193 -0
  121. package/dist/blocks/code-sample-01/code-sample.d.ts.map +1 -0
  122. package/dist/blocks/code-sample-01/code-sample.js +104 -0
  123. package/dist/blocks/code-sample-01/index.d.ts +3 -0
  124. package/dist/blocks/code-sample-01/index.d.ts.map +1 -0
  125. package/dist/blocks/code-sample-01/index.js +1 -0
  126. package/dist/blocks/community-01/community.d.ts +183 -0
  127. package/dist/blocks/community-01/community.d.ts.map +1 -0
  128. package/dist/blocks/community-01/community.js +102 -0
  129. package/dist/blocks/community-01/index.d.ts +3 -0
  130. package/dist/blocks/community-01/index.d.ts.map +1 -0
  131. package/dist/blocks/community-01/index.js +1 -0
  132. package/dist/blocks/compare-01/compare.d.ts +184 -0
  133. package/dist/blocks/compare-01/compare.d.ts.map +1 -0
  134. package/dist/blocks/compare-01/compare.js +106 -0
  135. package/dist/blocks/compare-01/index.d.ts +3 -0
  136. package/dist/blocks/compare-01/index.d.ts.map +1 -0
  137. package/dist/blocks/compare-01/index.js +1 -0
  138. package/dist/blocks/compliance-01/compliance.d.ts +249 -0
  139. package/dist/blocks/compliance-01/compliance.d.ts.map +1 -0
  140. package/dist/blocks/compliance-01/compliance.js +130 -0
  141. package/dist/blocks/compliance-01/index.d.ts +3 -0
  142. package/dist/blocks/compliance-01/index.d.ts.map +1 -0
  143. package/dist/blocks/compliance-01/index.js +1 -0
  144. package/dist/blocks/consent-01/consent.d.ts +211 -0
  145. package/dist/blocks/consent-01/consent.d.ts.map +1 -0
  146. package/dist/blocks/consent-01/consent.js +101 -0
  147. package/dist/blocks/consent-01/index.d.ts +3 -0
  148. package/dist/blocks/consent-01/index.d.ts.map +1 -0
  149. package/dist/blocks/consent-01/index.js +1 -0
  150. package/dist/blocks/contact-01/contact.d.ts +319 -0
  151. package/dist/blocks/contact-01/contact.d.ts.map +1 -0
  152. package/dist/blocks/contact-01/contact.js +211 -0
  153. package/dist/blocks/contact-01/index.d.ts +3 -0
  154. package/dist/blocks/contact-01/index.d.ts.map +1 -0
  155. package/dist/blocks/contact-01/index.js +1 -0
  156. package/dist/blocks/content-grid-01/content-grid.d.ts +262 -0
  157. package/dist/blocks/content-grid-01/content-grid.d.ts.map +1 -0
  158. package/dist/blocks/content-grid-01/content-grid.js +155 -0
  159. package/dist/blocks/content-grid-01/index.d.ts +3 -0
  160. package/dist/blocks/content-grid-01/index.d.ts.map +1 -0
  161. package/dist/blocks/content-grid-01/index.js +1 -0
  162. package/dist/blocks/cta-01/cta.d.ts +7 -1
  163. package/dist/blocks/cta-01/cta.d.ts.map +1 -1
  164. package/dist/blocks/cta-01/cta.js +11 -2
  165. package/dist/blocks/dashboard-01/dashboard-01.d.ts +247 -0
  166. package/dist/blocks/dashboard-01/dashboard-01.d.ts.map +1 -0
  167. package/dist/blocks/dashboard-01/dashboard-01.js +141 -0
  168. package/dist/blocks/dashboard-01/index.d.ts +3 -0
  169. package/dist/blocks/dashboard-01/index.d.ts.map +1 -0
  170. package/dist/blocks/dashboard-01/index.js +1 -0
  171. package/dist/blocks/data-table-01/data-table.d.ts +12 -1
  172. package/dist/blocks/data-table-01/data-table.d.ts.map +1 -1
  173. package/dist/blocks/data-table-01/data-table.js +8 -5
  174. package/dist/blocks/delivery-01/delivery.d.ts +343 -0
  175. package/dist/blocks/delivery-01/delivery.d.ts.map +1 -0
  176. package/dist/blocks/delivery-01/delivery.js +212 -0
  177. package/dist/blocks/delivery-01/index.d.ts +3 -0
  178. package/dist/blocks/delivery-01/index.d.ts.map +1 -0
  179. package/dist/blocks/delivery-01/index.js +1 -0
  180. package/dist/blocks/directory-01/directory-01.d.ts +316 -0
  181. package/dist/blocks/directory-01/directory-01.d.ts.map +1 -0
  182. package/dist/blocks/directory-01/directory-01.js +252 -0
  183. package/dist/blocks/directory-01/index.d.ts +3 -0
  184. package/dist/blocks/directory-01/index.d.ts.map +1 -0
  185. package/dist/blocks/directory-01/index.js +1 -0
  186. package/dist/blocks/download-01/download.d.ts +261 -0
  187. package/dist/blocks/download-01/download.d.ts.map +1 -0
  188. package/dist/blocks/download-01/download.js +115 -0
  189. package/dist/blocks/download-01/index.d.ts +3 -0
  190. package/dist/blocks/download-01/index.d.ts.map +1 -0
  191. package/dist/blocks/download-01/index.js +1 -0
  192. package/dist/blocks/faq-01/faq.d.ts +128 -0
  193. package/dist/blocks/faq-01/faq.d.ts.map +1 -0
  194. package/dist/blocks/faq-01/faq.js +53 -0
  195. package/dist/blocks/faq-01/index.d.ts +3 -0
  196. package/dist/blocks/faq-01/index.d.ts.map +1 -0
  197. package/dist/blocks/faq-01/index.js +1 -0
  198. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts +158 -0
  199. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts.map +1 -0
  200. package/dist/blocks/feature-rows-01/feature-rows-01.js +81 -0
  201. package/dist/blocks/feature-rows-01/index.d.ts +3 -0
  202. package/dist/blocks/feature-rows-01/index.d.ts.map +1 -0
  203. package/dist/blocks/feature-rows-01/index.js +1 -0
  204. package/dist/blocks/feedback-01/feedback.d.ts +235 -0
  205. package/dist/blocks/feedback-01/feedback.d.ts.map +1 -0
  206. package/dist/blocks/feedback-01/feedback.js +113 -0
  207. package/dist/blocks/feedback-01/index.d.ts +3 -0
  208. package/dist/blocks/feedback-01/index.d.ts.map +1 -0
  209. package/dist/blocks/feedback-01/index.js +1 -0
  210. package/dist/blocks/field-map-01/field-map.d.ts +247 -0
  211. package/dist/blocks/field-map-01/field-map.d.ts.map +1 -0
  212. package/dist/blocks/field-map-01/field-map.js +183 -0
  213. package/dist/blocks/field-map-01/index.d.ts +3 -0
  214. package/dist/blocks/field-map-01/index.d.ts.map +1 -0
  215. package/dist/blocks/field-map-01/index.js +1 -0
  216. package/dist/blocks/forgot-password-01/forgot-password.d.ts +288 -0
  217. package/dist/blocks/forgot-password-01/forgot-password.d.ts.map +1 -0
  218. package/dist/blocks/forgot-password-01/forgot-password.js +190 -0
  219. package/dist/blocks/forgot-password-01/index.d.ts +3 -0
  220. package/dist/blocks/forgot-password-01/index.d.ts.map +1 -0
  221. package/dist/blocks/forgot-password-01/index.js +1 -0
  222. package/dist/blocks/gallery-01/gallery.d.ts +208 -0
  223. package/dist/blocks/gallery-01/gallery.d.ts.map +1 -0
  224. package/dist/blocks/gallery-01/gallery.js +174 -0
  225. package/dist/blocks/gallery-01/index.d.ts +3 -0
  226. package/dist/blocks/gallery-01/index.d.ts.map +1 -0
  227. package/dist/blocks/gallery-01/index.js +1 -0
  228. package/dist/blocks/gantt-01/gantt.d.ts +290 -0
  229. package/dist/blocks/gantt-01/gantt.d.ts.map +1 -0
  230. package/dist/blocks/gantt-01/gantt.js +224 -0
  231. package/dist/blocks/gantt-01/index.d.ts +3 -0
  232. package/dist/blocks/gantt-01/index.d.ts.map +1 -0
  233. package/dist/blocks/gantt-01/index.js +1 -0
  234. package/dist/blocks/handoff-01/handoff-01.d.ts +326 -0
  235. package/dist/blocks/handoff-01/handoff-01.d.ts.map +1 -0
  236. package/dist/blocks/handoff-01/handoff-01.js +180 -0
  237. package/dist/blocks/handoff-01/index.d.ts +3 -0
  238. package/dist/blocks/handoff-01/index.d.ts.map +1 -0
  239. package/dist/blocks/handoff-01/index.js +1 -0
  240. package/dist/blocks/help-01/help.d.ts +254 -0
  241. package/dist/blocks/help-01/help.d.ts.map +1 -0
  242. package/dist/blocks/help-01/help.js +188 -0
  243. package/dist/blocks/help-01/index.d.ts +3 -0
  244. package/dist/blocks/help-01/index.d.ts.map +1 -0
  245. package/dist/blocks/help-01/index.js +1 -0
  246. package/dist/blocks/hero-01/hero.d.ts +105 -34
  247. package/dist/blocks/hero-01/hero.d.ts.map +1 -1
  248. package/dist/blocks/hero-01/hero.js +23 -15
  249. package/dist/blocks/hero-01/index.d.ts +1 -1
  250. package/dist/blocks/hero-01/index.d.ts.map +1 -1
  251. package/dist/blocks/hero-02/hero-02.d.ts +244 -0
  252. package/dist/blocks/hero-02/hero-02.d.ts.map +1 -0
  253. package/dist/blocks/hero-02/hero-02.js +87 -0
  254. package/dist/blocks/hero-02/index.d.ts +3 -0
  255. package/dist/blocks/hero-02/index.d.ts.map +1 -0
  256. package/dist/blocks/hero-02/index.js +1 -0
  257. package/dist/blocks/hero-03/hero-03.d.ts +247 -0
  258. package/dist/blocks/hero-03/hero-03.d.ts.map +1 -0
  259. package/dist/blocks/hero-03/hero-03.js +93 -0
  260. package/dist/blocks/hero-03/index.d.ts +3 -0
  261. package/dist/blocks/hero-03/index.d.ts.map +1 -0
  262. package/dist/blocks/hero-03/index.js +1 -0
  263. package/dist/blocks/history-01/history-01.d.ts +414 -0
  264. package/dist/blocks/history-01/history-01.d.ts.map +1 -0
  265. package/dist/blocks/history-01/history-01.js +285 -0
  266. package/dist/blocks/history-01/index.d.ts +3 -0
  267. package/dist/blocks/history-01/index.d.ts.map +1 -0
  268. package/dist/blocks/history-01/index.js +1 -0
  269. package/dist/blocks/inbox-01/inbox.d.ts +349 -0
  270. package/dist/blocks/inbox-01/inbox.d.ts.map +1 -0
  271. package/dist/blocks/inbox-01/inbox.js +244 -0
  272. package/dist/blocks/inbox-01/index.d.ts +3 -0
  273. package/dist/blocks/inbox-01/index.d.ts.map +1 -0
  274. package/dist/blocks/inbox-01/index.js +1 -0
  275. package/dist/blocks/index.d.ts +203 -0
  276. package/dist/blocks/index.d.ts.map +1 -1
  277. package/dist/blocks/index.js +118 -0
  278. package/dist/blocks/industries-01/index.d.ts +3 -0
  279. package/dist/blocks/industries-01/index.d.ts.map +1 -0
  280. package/dist/blocks/industries-01/index.js +1 -0
  281. package/dist/blocks/industries-01/industries.d.ts +164 -0
  282. package/dist/blocks/industries-01/industries.d.ts.map +1 -0
  283. package/dist/blocks/industries-01/industries.js +96 -0
  284. package/dist/blocks/intake-01/index.d.ts +3 -0
  285. package/dist/blocks/intake-01/index.d.ts.map +1 -0
  286. package/dist/blocks/intake-01/index.js +1 -0
  287. package/dist/blocks/intake-01/intake-01.d.ts +305 -0
  288. package/dist/blocks/intake-01/intake-01.d.ts.map +1 -0
  289. package/dist/blocks/intake-01/intake-01.js +178 -0
  290. package/dist/blocks/integration-01/index.d.ts +3 -0
  291. package/dist/blocks/integration-01/index.d.ts.map +1 -0
  292. package/dist/blocks/integration-01/index.js +1 -0
  293. package/dist/blocks/integration-01/integration.d.ts +226 -0
  294. package/dist/blocks/integration-01/integration.d.ts.map +1 -0
  295. package/dist/blocks/integration-01/integration.js +170 -0
  296. package/dist/blocks/invite-user-01/index.d.ts +3 -0
  297. package/dist/blocks/invite-user-01/index.d.ts.map +1 -0
  298. package/dist/blocks/invite-user-01/index.js +1 -0
  299. package/dist/blocks/invite-user-01/invite-user.d.ts +317 -0
  300. package/dist/blocks/invite-user-01/invite-user.d.ts.map +1 -0
  301. package/dist/blocks/invite-user-01/invite-user.js +228 -0
  302. package/dist/blocks/issue-detail-01/index.d.ts +3 -0
  303. package/dist/blocks/issue-detail-01/index.d.ts.map +1 -0
  304. package/dist/blocks/issue-detail-01/index.js +1 -0
  305. package/dist/blocks/issue-detail-01/issue-detail.d.ts +355 -0
  306. package/dist/blocks/issue-detail-01/issue-detail.d.ts.map +1 -0
  307. package/dist/blocks/issue-detail-01/issue-detail.js +187 -0
  308. package/dist/blocks/issue-list-01/index.d.ts +3 -0
  309. package/dist/blocks/issue-list-01/index.d.ts.map +1 -0
  310. package/dist/blocks/issue-list-01/index.js +1 -0
  311. package/dist/blocks/issue-list-01/issue-list.d.ts +298 -0
  312. package/dist/blocks/issue-list-01/issue-list.d.ts.map +1 -0
  313. package/dist/blocks/issue-list-01/issue-list.js +284 -0
  314. package/dist/blocks/kanban-01/index.d.ts +3 -0
  315. package/dist/blocks/kanban-01/index.d.ts.map +1 -0
  316. package/dist/blocks/kanban-01/index.js +1 -0
  317. package/dist/blocks/kanban-01/kanban.d.ts +278 -0
  318. package/dist/blocks/kanban-01/kanban.d.ts.map +1 -0
  319. package/dist/blocks/kanban-01/kanban.js +144 -0
  320. package/dist/blocks/leaderboard-01/index.d.ts +3 -0
  321. package/dist/blocks/leaderboard-01/index.d.ts.map +1 -0
  322. package/dist/blocks/leaderboard-01/index.js +1 -0
  323. package/dist/blocks/leaderboard-01/leaderboard.d.ts +250 -0
  324. package/dist/blocks/leaderboard-01/leaderboard.d.ts.map +1 -0
  325. package/dist/blocks/leaderboard-01/leaderboard.js +121 -0
  326. package/dist/blocks/login-01/index.d.ts +3 -0
  327. package/dist/blocks/login-01/index.d.ts.map +1 -0
  328. package/dist/blocks/login-01/index.js +1 -0
  329. package/dist/blocks/login-01/login-01.d.ts +356 -0
  330. package/dist/blocks/login-01/login-01.d.ts.map +1 -0
  331. package/dist/blocks/login-01/login-01.js +249 -0
  332. package/dist/blocks/logo-cloud-01/index.d.ts +3 -0
  333. package/dist/blocks/logo-cloud-01/index.d.ts.map +1 -0
  334. package/dist/blocks/logo-cloud-01/index.js +1 -0
  335. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts +181 -0
  336. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts.map +1 -0
  337. package/dist/blocks/logo-cloud-01/logo-cloud.js +118 -0
  338. package/dist/blocks/magic-link-01/index.d.ts +3 -0
  339. package/dist/blocks/magic-link-01/index.d.ts.map +1 -0
  340. package/dist/blocks/magic-link-01/index.js +1 -0
  341. package/dist/blocks/magic-link-01/magic-link-01.d.ts +367 -0
  342. package/dist/blocks/magic-link-01/magic-link-01.d.ts.map +1 -0
  343. package/dist/blocks/magic-link-01/magic-link-01.js +233 -0
  344. package/dist/blocks/member-list-01/index.d.ts +3 -0
  345. package/dist/blocks/member-list-01/index.d.ts.map +1 -0
  346. package/dist/blocks/member-list-01/index.js +1 -0
  347. package/dist/blocks/member-list-01/member-list.d.ts +192 -0
  348. package/dist/blocks/member-list-01/member-list.d.ts.map +1 -0
  349. package/dist/blocks/member-list-01/member-list.js +142 -0
  350. package/dist/blocks/milestone-timeline-01/index.d.ts +3 -0
  351. package/dist/blocks/milestone-timeline-01/index.d.ts.map +1 -0
  352. package/dist/blocks/milestone-timeline-01/index.js +1 -0
  353. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts +217 -0
  354. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts.map +1 -0
  355. package/dist/blocks/milestone-timeline-01/milestone-timeline.js +173 -0
  356. package/dist/blocks/newsletter-01/index.d.ts +3 -0
  357. package/dist/blocks/newsletter-01/index.d.ts.map +1 -0
  358. package/dist/blocks/newsletter-01/index.js +1 -0
  359. package/dist/blocks/newsletter-01/newsletter.d.ts +216 -0
  360. package/dist/blocks/newsletter-01/newsletter.d.ts.map +1 -0
  361. package/dist/blocks/newsletter-01/newsletter.js +102 -0
  362. package/dist/blocks/notification-center-01/index.d.ts +3 -0
  363. package/dist/blocks/notification-center-01/index.d.ts.map +1 -0
  364. package/dist/blocks/notification-center-01/index.js +1 -0
  365. package/dist/blocks/notification-center-01/notification-center-01.d.ts +341 -0
  366. package/dist/blocks/notification-center-01/notification-center-01.d.ts.map +1 -0
  367. package/dist/blocks/notification-center-01/notification-center-01.js +203 -0
  368. package/dist/blocks/offer-01/index.d.ts +3 -0
  369. package/dist/blocks/offer-01/index.d.ts.map +1 -0
  370. package/dist/blocks/offer-01/index.js +1 -0
  371. package/dist/blocks/offer-01/offer.d.ts +139 -0
  372. package/dist/blocks/offer-01/offer.d.ts.map +1 -0
  373. package/dist/blocks/offer-01/offer.js +81 -0
  374. package/dist/blocks/offering-01/index.d.ts +3 -0
  375. package/dist/blocks/offering-01/index.d.ts.map +1 -0
  376. package/dist/blocks/offering-01/index.js +1 -0
  377. package/dist/blocks/offering-01/offering.d.ts +245 -0
  378. package/dist/blocks/offering-01/offering.d.ts.map +1 -0
  379. package/dist/blocks/offering-01/offering.js +144 -0
  380. package/dist/blocks/offering-categories-01/index.d.ts +3 -0
  381. package/dist/blocks/offering-categories-01/index.d.ts.map +1 -0
  382. package/dist/blocks/offering-categories-01/index.js +1 -0
  383. package/dist/blocks/offering-categories-01/offering-categories.d.ts +248 -0
  384. package/dist/blocks/offering-categories-01/offering-categories.d.ts.map +1 -0
  385. package/dist/blocks/offering-categories-01/offering-categories.js +153 -0
  386. package/dist/blocks/offering-list-01/index.d.ts +3 -0
  387. package/dist/blocks/offering-list-01/index.d.ts.map +1 -0
  388. package/dist/blocks/offering-list-01/index.js +1 -0
  389. package/dist/blocks/offering-list-01/offering-list.d.ts +362 -0
  390. package/dist/blocks/offering-list-01/offering-list.d.ts.map +1 -0
  391. package/dist/blocks/offering-list-01/offering-list.js +366 -0
  392. package/dist/blocks/onboarding-01/index.d.ts +3 -0
  393. package/dist/blocks/onboarding-01/index.d.ts.map +1 -0
  394. package/dist/blocks/onboarding-01/index.js +1 -0
  395. package/dist/blocks/onboarding-01/onboarding.d.ts +199 -0
  396. package/dist/blocks/onboarding-01/onboarding.d.ts.map +1 -0
  397. package/dist/blocks/onboarding-01/onboarding.js +182 -0
  398. package/dist/blocks/ops-checklist-01/index.d.ts +3 -0
  399. package/dist/blocks/ops-checklist-01/index.d.ts.map +1 -0
  400. package/dist/blocks/ops-checklist-01/index.js +1 -0
  401. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts +308 -0
  402. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts.map +1 -0
  403. package/dist/blocks/ops-checklist-01/ops-checklist-01.js +165 -0
  404. package/dist/blocks/page-header-01/index.d.ts +1 -1
  405. package/dist/blocks/page-header-01/index.d.ts.map +1 -1
  406. package/dist/blocks/page-header-01/page-header.d.ts +124 -11
  407. package/dist/blocks/page-header-01/page-header.d.ts.map +1 -1
  408. package/dist/blocks/page-header-01/page-header.js +25 -9
  409. package/dist/blocks/passkey-01/index.d.ts +3 -0
  410. package/dist/blocks/passkey-01/index.d.ts.map +1 -0
  411. package/dist/blocks/passkey-01/index.js +1 -0
  412. package/dist/blocks/passkey-01/passkey-01.d.ts +334 -0
  413. package/dist/blocks/passkey-01/passkey-01.d.ts.map +1 -0
  414. package/dist/blocks/passkey-01/passkey-01.js +192 -0
  415. package/dist/blocks/permission-matrix-01/index.d.ts +3 -0
  416. package/dist/blocks/permission-matrix-01/index.d.ts.map +1 -0
  417. package/dist/blocks/permission-matrix-01/index.js +1 -0
  418. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts +282 -0
  419. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts.map +1 -0
  420. package/dist/blocks/permission-matrix-01/permission-matrix.js +173 -0
  421. package/dist/blocks/pricing-01/index.d.ts +1 -0
  422. package/dist/blocks/pricing-01/index.d.ts.map +1 -1
  423. package/dist/blocks/pricing-01/pricing.d.ts +118 -1
  424. package/dist/blocks/pricing-01/pricing.d.ts.map +1 -1
  425. package/dist/blocks/pricing-01/pricing.js +9 -2
  426. package/dist/blocks/pricing-compare-01/index.d.ts +3 -0
  427. package/dist/blocks/pricing-compare-01/index.d.ts.map +1 -0
  428. package/dist/blocks/pricing-compare-01/index.js +1 -0
  429. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts +277 -0
  430. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts.map +1 -0
  431. package/dist/blocks/pricing-compare-01/pricing-compare.js +126 -0
  432. package/dist/blocks/project-01/index.d.ts +3 -0
  433. package/dist/blocks/project-01/index.d.ts.map +1 -0
  434. package/dist/blocks/project-01/index.js +1 -0
  435. package/dist/blocks/project-01/project.d.ts +323 -0
  436. package/dist/blocks/project-01/project.d.ts.map +1 -0
  437. package/dist/blocks/project-01/project.js +247 -0
  438. package/dist/blocks/project-dashboard-01/index.d.ts +3 -0
  439. package/dist/blocks/project-dashboard-01/index.d.ts.map +1 -0
  440. package/dist/blocks/project-dashboard-01/index.js +1 -0
  441. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts +200 -0
  442. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts.map +1 -0
  443. package/dist/blocks/project-dashboard-01/project-dashboard.js +124 -0
  444. package/dist/blocks/project-list-01/index.d.ts +3 -0
  445. package/dist/blocks/project-list-01/index.d.ts.map +1 -0
  446. package/dist/blocks/project-list-01/index.js +1 -0
  447. package/dist/blocks/project-list-01/project-list.d.ts +301 -0
  448. package/dist/blocks/project-list-01/project-list.d.ts.map +1 -0
  449. package/dist/blocks/project-list-01/project-list.js +305 -0
  450. package/dist/blocks/provisioning-01/index.d.ts +3 -0
  451. package/dist/blocks/provisioning-01/index.d.ts.map +1 -0
  452. package/dist/blocks/provisioning-01/index.js +1 -0
  453. package/dist/blocks/provisioning-01/provisioning.d.ts +357 -0
  454. package/dist/blocks/provisioning-01/provisioning.d.ts.map +1 -0
  455. package/dist/blocks/provisioning-01/provisioning.js +230 -0
  456. package/dist/blocks/quick-view-01/index.d.ts +3 -0
  457. package/dist/blocks/quick-view-01/index.d.ts.map +1 -0
  458. package/dist/blocks/quick-view-01/index.js +1 -0
  459. package/dist/blocks/quick-view-01/quick-view.d.ts +215 -0
  460. package/dist/blocks/quick-view-01/quick-view.d.ts.map +1 -0
  461. package/dist/blocks/quick-view-01/quick-view.js +136 -0
  462. package/dist/blocks/rate-card-01/index.d.ts +3 -0
  463. package/dist/blocks/rate-card-01/index.d.ts.map +1 -0
  464. package/dist/blocks/rate-card-01/index.js +1 -0
  465. package/dist/blocks/rate-card-01/rate-card.d.ts +184 -0
  466. package/dist/blocks/rate-card-01/rate-card.d.ts.map +1 -0
  467. package/dist/blocks/rate-card-01/rate-card.js +79 -0
  468. package/dist/blocks/reset-password-01/index.d.ts +3 -0
  469. package/dist/blocks/reset-password-01/index.d.ts.map +1 -0
  470. package/dist/blocks/reset-password-01/index.js +1 -0
  471. package/dist/blocks/reset-password-01/reset-password.d.ts +276 -0
  472. package/dist/blocks/reset-password-01/reset-password.d.ts.map +1 -0
  473. package/dist/blocks/reset-password-01/reset-password.js +175 -0
  474. package/dist/blocks/resource-list-01/index.d.ts +3 -0
  475. package/dist/blocks/resource-list-01/index.d.ts.map +1 -0
  476. package/dist/blocks/resource-list-01/index.js +1 -0
  477. package/dist/blocks/resource-list-01/resource-list.d.ts +237 -0
  478. package/dist/blocks/resource-list-01/resource-list.d.ts.map +1 -0
  479. package/dist/blocks/resource-list-01/resource-list.js +154 -0
  480. package/dist/blocks/retention-01/index.d.ts +3 -0
  481. package/dist/blocks/retention-01/index.d.ts.map +1 -0
  482. package/dist/blocks/retention-01/index.js +1 -0
  483. package/dist/blocks/retention-01/retention.d.ts +255 -0
  484. package/dist/blocks/retention-01/retention.d.ts.map +1 -0
  485. package/dist/blocks/retention-01/retention.js +145 -0
  486. package/dist/blocks/run-console-01/run-console.d.ts +14 -1
  487. package/dist/blocks/run-console-01/run-console.d.ts.map +1 -1
  488. package/dist/blocks/run-console-01/run-console.js +3 -2
  489. package/dist/blocks/services-01/index.d.ts +3 -0
  490. package/dist/blocks/services-01/index.d.ts.map +1 -0
  491. package/dist/blocks/services-01/index.js +1 -0
  492. package/dist/blocks/services-01/services.d.ts +159 -0
  493. package/dist/blocks/services-01/services.d.ts.map +1 -0
  494. package/dist/blocks/services-01/services.js +81 -0
  495. package/dist/blocks/settings-integrations-01/index.d.ts +3 -0
  496. package/dist/blocks/settings-integrations-01/index.d.ts.map +1 -0
  497. package/dist/blocks/settings-integrations-01/index.js +1 -0
  498. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts +246 -0
  499. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts.map +1 -0
  500. package/dist/blocks/settings-integrations-01/settings-integrations.js +213 -0
  501. package/dist/blocks/settings-members-01/index.d.ts +3 -0
  502. package/dist/blocks/settings-members-01/index.d.ts.map +1 -0
  503. package/dist/blocks/settings-members-01/index.js +1 -0
  504. package/dist/blocks/settings-members-01/settings-members.d.ts +396 -0
  505. package/dist/blocks/settings-members-01/settings-members.d.ts.map +1 -0
  506. package/dist/blocks/settings-members-01/settings-members.js +255 -0
  507. package/dist/blocks/settings-notifications-01/index.d.ts +3 -0
  508. package/dist/blocks/settings-notifications-01/index.d.ts.map +1 -0
  509. package/dist/blocks/settings-notifications-01/index.js +1 -0
  510. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts +270 -0
  511. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts.map +1 -0
  512. package/dist/blocks/settings-notifications-01/settings-notifications.js +202 -0
  513. package/dist/blocks/settings-security-01/index.d.ts +3 -0
  514. package/dist/blocks/settings-security-01/index.d.ts.map +1 -0
  515. package/dist/blocks/settings-security-01/index.js +1 -0
  516. package/dist/blocks/settings-security-01/settings-security.d.ts +439 -0
  517. package/dist/blocks/settings-security-01/settings-security.d.ts.map +1 -0
  518. package/dist/blocks/settings-security-01/settings-security.js +244 -0
  519. package/dist/blocks/shortlist-01/index.d.ts +3 -0
  520. package/dist/blocks/shortlist-01/index.d.ts.map +1 -0
  521. package/dist/blocks/shortlist-01/index.js +1 -0
  522. package/dist/blocks/shortlist-01/shortlist-01.d.ts +337 -0
  523. package/dist/blocks/shortlist-01/shortlist-01.d.ts.map +1 -0
  524. package/dist/blocks/shortlist-01/shortlist-01.js +191 -0
  525. package/dist/blocks/showcase-01/index.d.ts +3 -0
  526. package/dist/blocks/showcase-01/index.d.ts.map +1 -0
  527. package/dist/blocks/showcase-01/index.js +1 -0
  528. package/dist/blocks/showcase-01/showcase-01.d.ts +238 -0
  529. package/dist/blocks/showcase-01/showcase-01.d.ts.map +1 -0
  530. package/dist/blocks/showcase-01/showcase-01.js +84 -0
  531. package/dist/blocks/signup-01/index.d.ts +3 -0
  532. package/dist/blocks/signup-01/index.d.ts.map +1 -0
  533. package/dist/blocks/signup-01/index.js +1 -0
  534. package/dist/blocks/signup-01/signup-01.d.ts +405 -0
  535. package/dist/blocks/signup-01/signup-01.d.ts.map +1 -0
  536. package/dist/blocks/signup-01/signup-01.js +209 -0
  537. package/dist/blocks/site-footer/site-footer.d.ts +18 -1
  538. package/dist/blocks/site-footer/site-footer.d.ts.map +1 -1
  539. package/dist/blocks/site-footer/site-footer.js +8 -2
  540. package/dist/blocks/site-header/site-header.js +1 -1
  541. package/dist/blocks/site-navbar/site-navbar.d.ts +37 -3
  542. package/dist/blocks/site-navbar/site-navbar.d.ts.map +1 -1
  543. package/dist/blocks/site-navbar/site-navbar.js +33 -4
  544. package/dist/blocks/spec-table-01/index.d.ts +3 -0
  545. package/dist/blocks/spec-table-01/index.d.ts.map +1 -0
  546. package/dist/blocks/spec-table-01/index.js +1 -0
  547. package/dist/blocks/spec-table-01/spec-table.d.ts +293 -0
  548. package/dist/blocks/spec-table-01/spec-table.d.ts.map +1 -0
  549. package/dist/blocks/spec-table-01/spec-table.js +217 -0
  550. package/dist/blocks/story-01/index.d.ts +3 -0
  551. package/dist/blocks/story-01/index.d.ts.map +1 -0
  552. package/dist/blocks/story-01/index.js +1 -0
  553. package/dist/blocks/story-01/story.d.ts +153 -0
  554. package/dist/blocks/story-01/story.d.ts.map +1 -0
  555. package/dist/blocks/story-01/story.js +103 -0
  556. package/dist/blocks/summary-01/index.d.ts +3 -0
  557. package/dist/blocks/summary-01/index.d.ts.map +1 -0
  558. package/dist/blocks/summary-01/index.js +1 -0
  559. package/dist/blocks/summary-01/summary.d.ts +300 -0
  560. package/dist/blocks/summary-01/summary.d.ts.map +1 -0
  561. package/dist/blocks/summary-01/summary.js +174 -0
  562. package/dist/blocks/team-01/index.d.ts +3 -0
  563. package/dist/blocks/team-01/index.d.ts.map +1 -0
  564. package/dist/blocks/team-01/index.js +1 -0
  565. package/dist/blocks/team-01/team.d.ts +176 -0
  566. package/dist/blocks/team-01/team.d.ts.map +1 -0
  567. package/dist/blocks/team-01/team.js +117 -0
  568. package/dist/blocks/testimonial-01/index.d.ts +3 -0
  569. package/dist/blocks/testimonial-01/index.d.ts.map +1 -0
  570. package/dist/blocks/testimonial-01/index.js +1 -0
  571. package/dist/blocks/testimonial-01/testimonial.d.ts +173 -0
  572. package/dist/blocks/testimonial-01/testimonial.d.ts.map +1 -0
  573. package/dist/blocks/testimonial-01/testimonial.js +87 -0
  574. package/dist/blocks/todo-01/index.d.ts +3 -0
  575. package/dist/blocks/todo-01/index.d.ts.map +1 -0
  576. package/dist/blocks/todo-01/index.js +1 -0
  577. package/dist/blocks/todo-01/todo.d.ts +286 -0
  578. package/dist/blocks/todo-01/todo.d.ts.map +1 -0
  579. package/dist/blocks/todo-01/todo.js +149 -0
  580. package/dist/blocks/trend-01/index.d.ts +3 -0
  581. package/dist/blocks/trend-01/index.d.ts.map +1 -0
  582. package/dist/blocks/trend-01/index.js +1 -0
  583. package/dist/blocks/trend-01/trend.d.ts +184 -0
  584. package/dist/blocks/trend-01/trend.d.ts.map +1 -0
  585. package/dist/blocks/trend-01/trend.js +99 -0
  586. package/dist/blocks/trust-strip-01/index.d.ts +3 -0
  587. package/dist/blocks/trust-strip-01/index.d.ts.map +1 -0
  588. package/dist/blocks/trust-strip-01/index.js +1 -0
  589. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts +139 -0
  590. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts.map +1 -0
  591. package/dist/blocks/trust-strip-01/trust-strip-01.js +58 -0
  592. package/dist/blocks/two-factor-01/index.d.ts +3 -0
  593. package/dist/blocks/two-factor-01/index.d.ts.map +1 -0
  594. package/dist/blocks/two-factor-01/index.js +1 -0
  595. package/dist/blocks/two-factor-01/two-factor-01.d.ts +440 -0
  596. package/dist/blocks/two-factor-01/two-factor-01.d.ts.map +1 -0
  597. package/dist/blocks/two-factor-01/two-factor-01.js +273 -0
  598. package/dist/blocks/user-profile-01/index.d.ts +3 -0
  599. package/dist/blocks/user-profile-01/index.d.ts.map +1 -0
  600. package/dist/blocks/user-profile-01/index.js +1 -0
  601. package/dist/blocks/user-profile-01/user-profile-01.d.ts +258 -0
  602. package/dist/blocks/user-profile-01/user-profile-01.d.ts.map +1 -0
  603. package/dist/blocks/user-profile-01/user-profile-01.js +158 -0
  604. package/dist/blocks/verify-email-01/index.d.ts +3 -0
  605. package/dist/blocks/verify-email-01/index.d.ts.map +1 -0
  606. package/dist/blocks/verify-email-01/index.js +1 -0
  607. package/dist/blocks/verify-email-01/verify-email.d.ts +262 -0
  608. package/dist/blocks/verify-email-01/verify-email.d.ts.map +1 -0
  609. package/dist/blocks/verify-email-01/verify-email.js +190 -0
  610. package/dist/blocks/waitlist-01/index.d.ts +3 -0
  611. package/dist/blocks/waitlist-01/index.d.ts.map +1 -0
  612. package/dist/blocks/waitlist-01/index.js +1 -0
  613. package/dist/blocks/waitlist-01/waitlist.d.ts +254 -0
  614. package/dist/blocks/waitlist-01/waitlist.d.ts.map +1 -0
  615. package/dist/blocks/waitlist-01/waitlist.js +75 -0
  616. package/dist/catalog.d.ts.map +1 -1
  617. package/dist/catalog.js +1641 -1
  618. package/dist/components/index.d.ts +114 -0
  619. package/dist/components/index.d.ts.map +1 -1
  620. package/dist/components/index.js +134 -0
  621. package/dist/components/ui/accordion.d.ts.map +1 -1
  622. package/dist/components/ui/accordion.js +9 -2
  623. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  624. package/dist/components/ui/alert-dialog.js +22 -4
  625. package/dist/components/ui/announcement.d.ts +169 -0
  626. package/dist/components/ui/announcement.d.ts.map +1 -0
  627. package/dist/components/ui/announcement.js +123 -0
  628. package/dist/components/ui/avatar-group.d.ts +176 -0
  629. package/dist/components/ui/avatar-group.d.ts.map +1 -0
  630. package/dist/components/ui/avatar-group.js +135 -0
  631. package/dist/components/ui/billing-source.d.ts +293 -0
  632. package/dist/components/ui/billing-source.d.ts.map +1 -0
  633. package/dist/components/ui/billing-source.js +136 -0
  634. package/dist/components/ui/button.d.ts +16 -1
  635. package/dist/components/ui/button.d.ts.map +1 -1
  636. package/dist/components/ui/button.js +17 -2
  637. package/dist/components/ui/calendar.d.ts +9 -0
  638. package/dist/components/ui/calendar.d.ts.map +1 -1
  639. package/dist/components/ui/calendar.js +30 -2
  640. package/dist/components/ui/carousel.d.ts +7 -0
  641. package/dist/components/ui/carousel.d.ts.map +1 -1
  642. package/dist/components/ui/carousel.js +58 -1
  643. package/dist/components/ui/chart.d.ts +334 -0
  644. package/dist/components/ui/chart.d.ts.map +1 -0
  645. package/dist/components/ui/chart.js +369 -0
  646. package/dist/components/ui/checkbox.d.ts +10 -0
  647. package/dist/components/ui/checkbox.d.ts.map +1 -1
  648. package/dist/components/ui/checkbox.js +19 -1
  649. package/dist/components/ui/checklist.d.ts +262 -0
  650. package/dist/components/ui/checklist.d.ts.map +1 -0
  651. package/dist/components/ui/checklist.js +135 -0
  652. package/dist/components/ui/choice-card.d.ts +273 -0
  653. package/dist/components/ui/choice-card.d.ts.map +1 -0
  654. package/dist/components/ui/choice-card.js +138 -0
  655. package/dist/components/ui/code-block.d.ts +182 -0
  656. package/dist/components/ui/code-block.d.ts.map +1 -0
  657. package/dist/components/ui/code-block.js +108 -0
  658. package/dist/components/ui/cohort-grid.d.ts +210 -0
  659. package/dist/components/ui/cohort-grid.d.ts.map +1 -0
  660. package/dist/components/ui/cohort-grid.js +202 -0
  661. package/dist/components/ui/collapsible.d.ts +11 -0
  662. package/dist/components/ui/collapsible.d.ts.map +1 -1
  663. package/dist/components/ui/collapsible.js +13 -2
  664. package/dist/components/ui/combobox.d.ts +4 -1
  665. package/dist/components/ui/combobox.d.ts.map +1 -1
  666. package/dist/components/ui/combobox.js +20 -4
  667. package/dist/components/ui/command-palette.d.ts +11 -0
  668. package/dist/components/ui/command-palette.d.ts.map +1 -1
  669. package/dist/components/ui/command-palette.js +49 -3
  670. package/dist/components/ui/contribution-graph.d.ts +156 -0
  671. package/dist/components/ui/contribution-graph.d.ts.map +1 -0
  672. package/dist/components/ui/contribution-graph.js +170 -0
  673. package/dist/components/ui/creatable-combobox.d.ts +153 -0
  674. package/dist/components/ui/creatable-combobox.d.ts.map +1 -0
  675. package/dist/components/ui/creatable-combobox.js +285 -0
  676. package/dist/components/ui/data-toolbar.d.ts +133 -0
  677. package/dist/components/ui/data-toolbar.d.ts.map +1 -0
  678. package/dist/components/ui/data-toolbar.js +67 -0
  679. package/dist/components/ui/date-picker.d.ts.map +1 -1
  680. package/dist/components/ui/date-picker.js +9 -1
  681. package/dist/components/ui/dialog.d.ts +31 -2
  682. package/dist/components/ui/dialog.d.ts.map +1 -1
  683. package/dist/components/ui/dialog.js +40 -6
  684. package/dist/components/ui/drawer.d.ts +270 -0
  685. package/dist/components/ui/drawer.d.ts.map +1 -0
  686. package/dist/components/ui/drawer.js +241 -0
  687. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  688. package/dist/components/ui/dropdown-menu.js +6 -1
  689. package/dist/components/ui/dropzone.d.ts +147 -0
  690. package/dist/components/ui/dropzone.d.ts.map +1 -0
  691. package/dist/components/ui/dropzone.js +141 -0
  692. package/dist/components/ui/emoji-picker.d.ts +328 -0
  693. package/dist/components/ui/emoji-picker.d.ts.map +1 -0
  694. package/dist/components/ui/emoji-picker.js +278 -0
  695. package/dist/components/ui/file-upload.d.ts +152 -0
  696. package/dist/components/ui/file-upload.d.ts.map +1 -0
  697. package/dist/components/ui/file-upload.js +101 -0
  698. package/dist/components/ui/filter-panel.d.ts +164 -0
  699. package/dist/components/ui/filter-panel.d.ts.map +1 -0
  700. package/dist/components/ui/filter-panel.js +91 -0
  701. package/dist/components/ui/form-dialog.d.ts +257 -0
  702. package/dist/components/ui/form-dialog.d.ts.map +1 -0
  703. package/dist/components/ui/form-dialog.js +176 -0
  704. package/dist/components/ui/form-wizard.d.ts +251 -0
  705. package/dist/components/ui/form-wizard.d.ts.map +1 -0
  706. package/dist/components/ui/form-wizard.js +151 -0
  707. package/dist/components/ui/image-list-field.d.ts +232 -0
  708. package/dist/components/ui/image-list-field.d.ts.map +1 -0
  709. package/dist/components/ui/image-list-field.js +168 -0
  710. package/dist/components/ui/image-zoom.d.ts +164 -0
  711. package/dist/components/ui/image-zoom.d.ts.map +1 -0
  712. package/dist/components/ui/image-zoom.js +169 -0
  713. package/dist/components/ui/intensity-grid.d.ts +270 -0
  714. package/dist/components/ui/intensity-grid.d.ts.map +1 -0
  715. package/dist/components/ui/intensity-grid.js +211 -0
  716. package/dist/components/ui/lifecycle-button.d.ts +276 -0
  717. package/dist/components/ui/lifecycle-button.d.ts.map +1 -0
  718. package/dist/components/ui/lifecycle-button.js +144 -0
  719. package/dist/components/ui/lightbox.d.ts +165 -0
  720. package/dist/components/ui/lightbox.d.ts.map +1 -0
  721. package/dist/components/ui/lightbox.js +130 -0
  722. package/dist/components/ui/list-panel.d.ts +288 -0
  723. package/dist/components/ui/list-panel.d.ts.map +1 -0
  724. package/dist/components/ui/list-panel.js +139 -0
  725. package/dist/components/ui/mega-menu.d.ts +244 -0
  726. package/dist/components/ui/mega-menu.d.ts.map +1 -0
  727. package/dist/components/ui/mega-menu.js +97 -0
  728. package/dist/components/ui/menubar.d.ts +9 -0
  729. package/dist/components/ui/menubar.d.ts.map +1 -1
  730. package/dist/components/ui/menubar.js +10 -1
  731. package/dist/components/ui/metric.d.ts +123 -0
  732. package/dist/components/ui/metric.d.ts.map +1 -0
  733. package/dist/components/ui/metric.js +68 -0
  734. package/dist/components/ui/mini-calendar.d.ts +143 -0
  735. package/dist/components/ui/mini-calendar.d.ts.map +1 -0
  736. package/dist/components/ui/mini-calendar.js +261 -0
  737. package/dist/components/ui/mode-toggle.d.ts +102 -0
  738. package/dist/components/ui/mode-toggle.d.ts.map +1 -0
  739. package/dist/components/ui/mode-toggle.js +83 -0
  740. package/dist/components/ui/money-field.d.ts +200 -0
  741. package/dist/components/ui/money-field.d.ts.map +1 -0
  742. package/dist/components/ui/money-field.js +215 -0
  743. package/dist/components/ui/multi-combobox.d.ts +181 -0
  744. package/dist/components/ui/multi-combobox.d.ts.map +1 -0
  745. package/dist/components/ui/multi-combobox.js +297 -0
  746. package/dist/components/ui/native-select.d.ts.map +1 -1
  747. package/dist/components/ui/native-select.js +8 -1
  748. package/dist/components/ui/navigation-menu.d.ts +7 -0
  749. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  750. package/dist/components/ui/navigation-menu.js +8 -1
  751. package/dist/components/ui/nested-tabs.d.ts +188 -0
  752. package/dist/components/ui/nested-tabs.d.ts.map +1 -0
  753. package/dist/components/ui/nested-tabs.js +75 -0
  754. package/dist/components/ui/number-field.d.ts +40 -7
  755. package/dist/components/ui/number-field.d.ts.map +1 -1
  756. package/dist/components/ui/number-field.js +37 -7
  757. package/dist/components/ui/overflow-actions.d.ts +169 -0
  758. package/dist/components/ui/overflow-actions.d.ts.map +1 -0
  759. package/dist/components/ui/overflow-actions.js +266 -0
  760. package/dist/components/ui/pack-swatch.d.ts +177 -0
  761. package/dist/components/ui/pack-swatch.d.ts.map +1 -0
  762. package/dist/components/ui/pack-swatch.js +117 -0
  763. package/dist/components/ui/pack-switcher.d.ts +221 -0
  764. package/dist/components/ui/pack-switcher.d.ts.map +1 -0
  765. package/dist/components/ui/pack-switcher.js +94 -0
  766. package/dist/components/ui/pagination.d.ts +22 -0
  767. package/dist/components/ui/pagination.d.ts.map +1 -1
  768. package/dist/components/ui/pagination.js +23 -1
  769. package/dist/components/ui/password-field.d.ts +122 -0
  770. package/dist/components/ui/password-field.d.ts.map +1 -0
  771. package/dist/components/ui/password-field.js +69 -0
  772. package/dist/components/ui/pill.d.ts +172 -0
  773. package/dist/components/ui/pill.d.ts.map +1 -0
  774. package/dist/components/ui/pill.js +102 -0
  775. package/dist/components/ui/platform-modifier-key.d.ts +129 -0
  776. package/dist/components/ui/platform-modifier-key.d.ts.map +1 -0
  777. package/dist/components/ui/platform-modifier-key.js +125 -0
  778. package/dist/components/ui/popover.d.ts.map +1 -1
  779. package/dist/components/ui/popover.js +8 -1
  780. package/dist/components/ui/price.d.ts +144 -0
  781. package/dist/components/ui/price.d.ts.map +1 -0
  782. package/dist/components/ui/price.js +107 -0
  783. package/dist/components/ui/progress.d.ts +55 -1
  784. package/dist/components/ui/progress.d.ts.map +1 -1
  785. package/dist/components/ui/progress.js +110 -2
  786. package/dist/components/ui/prompt-composer.d.ts +302 -0
  787. package/dist/components/ui/prompt-composer.d.ts.map +1 -0
  788. package/dist/components/ui/prompt-composer.js +145 -0
  789. package/dist/components/ui/proportion-list.d.ts +188 -0
  790. package/dist/components/ui/proportion-list.d.ts.map +1 -0
  791. package/dist/components/ui/proportion-list.js +134 -0
  792. package/dist/components/ui/prose.d.ts +23 -0
  793. package/dist/components/ui/prose.d.ts.map +1 -1
  794. package/dist/components/ui/prose.js +30 -1
  795. package/dist/components/ui/radio-group.d.ts +7 -0
  796. package/dist/components/ui/radio-group.d.ts.map +1 -1
  797. package/dist/components/ui/radio-group.js +8 -1
  798. package/dist/components/ui/range-field.d.ts +158 -0
  799. package/dist/components/ui/range-field.d.ts.map +1 -0
  800. package/dist/components/ui/range-field.js +208 -0
  801. package/dist/components/ui/relative-time.d.ts +116 -0
  802. package/dist/components/ui/relative-time.d.ts.map +1 -0
  803. package/dist/components/ui/relative-time.js +67 -0
  804. package/dist/components/ui/reorderable-list.d.ts +262 -0
  805. package/dist/components/ui/reorderable-list.d.ts.map +1 -0
  806. package/dist/components/ui/reorderable-list.js +325 -0
  807. package/dist/components/ui/repeatable-rows.d.ts +241 -0
  808. package/dist/components/ui/repeatable-rows.d.ts.map +1 -0
  809. package/dist/components/ui/repeatable-rows.js +221 -0
  810. package/dist/components/ui/repo-stars.d.ts +165 -0
  811. package/dist/components/ui/repo-stars.d.ts.map +1 -0
  812. package/dist/components/ui/repo-stars.js +92 -0
  813. package/dist/components/ui/resizable.d.ts +24 -0
  814. package/dist/components/ui/resizable.d.ts.map +1 -1
  815. package/dist/components/ui/resizable.js +96 -4
  816. package/dist/components/ui/search-dialog.d.ts +40 -5
  817. package/dist/components/ui/search-dialog.d.ts.map +1 -1
  818. package/dist/components/ui/search-dialog.js +94 -16
  819. package/dist/components/ui/search-field.d.ts +159 -0
  820. package/dist/components/ui/search-field.d.ts.map +1 -0
  821. package/dist/components/ui/search-field.js +98 -0
  822. package/dist/components/ui/section.d.ts +108 -1
  823. package/dist/components/ui/section.d.ts.map +1 -1
  824. package/dist/components/ui/section.js +109 -3
  825. package/dist/components/ui/select.d.ts.map +1 -1
  826. package/dist/components/ui/select.js +9 -1
  827. package/dist/components/ui/selection-toolbar.d.ts +166 -0
  828. package/dist/components/ui/selection-toolbar.d.ts.map +1 -0
  829. package/dist/components/ui/selection-toolbar.js +139 -0
  830. package/dist/components/ui/sidebar.d.ts +29 -0
  831. package/dist/components/ui/sidebar.d.ts.map +1 -1
  832. package/dist/components/ui/sidebar.js +35 -2
  833. package/dist/components/ui/signal-field.d.ts.map +1 -1
  834. package/dist/components/ui/signal-field.js +1 -1
  835. package/dist/components/ui/slider.d.ts +7 -0
  836. package/dist/components/ui/slider.d.ts.map +1 -1
  837. package/dist/components/ui/slider.js +32 -1
  838. package/dist/components/ui/sparkline.d.ts +117 -0
  839. package/dist/components/ui/sparkline.d.ts.map +1 -0
  840. package/dist/components/ui/sparkline.js +113 -0
  841. package/dist/components/ui/spinner.d.ts.map +1 -1
  842. package/dist/components/ui/spinner.js +13 -0
  843. package/dist/components/ui/split-button.d.ts +207 -0
  844. package/dist/components/ui/split-button.d.ts.map +1 -0
  845. package/dist/components/ui/split-button.js +75 -0
  846. package/dist/components/ui/stateful-table.d.ts +345 -0
  847. package/dist/components/ui/stateful-table.d.ts.map +1 -0
  848. package/dist/components/ui/stateful-table.js +169 -0
  849. package/dist/components/ui/status.d.ts +99 -0
  850. package/dist/components/ui/status.d.ts.map +1 -0
  851. package/dist/components/ui/status.js +63 -0
  852. package/dist/components/ui/stepper.d.ts +155 -0
  853. package/dist/components/ui/stepper.d.ts.map +1 -0
  854. package/dist/components/ui/stepper.js +83 -0
  855. package/dist/components/ui/steps.d.ts +141 -0
  856. package/dist/components/ui/steps.d.ts.map +1 -0
  857. package/dist/components/ui/steps.js +128 -0
  858. package/dist/components/ui/switch.d.ts +8 -0
  859. package/dist/components/ui/switch.d.ts.map +1 -1
  860. package/dist/components/ui/switch.js +12 -1
  861. package/dist/components/ui/tabs.d.ts +21 -2
  862. package/dist/components/ui/tabs.d.ts.map +1 -1
  863. package/dist/components/ui/tabs.js +23 -4
  864. package/dist/components/ui/tag-group.d.ts +154 -0
  865. package/dist/components/ui/tag-group.d.ts.map +1 -0
  866. package/dist/components/ui/tag-group.js +111 -0
  867. package/dist/components/ui/task-progress.d.ts +149 -0
  868. package/dist/components/ui/task-progress.d.ts.map +1 -0
  869. package/dist/components/ui/task-progress.js +110 -0
  870. package/dist/components/ui/text-format-toolbar.d.ts +211 -0
  871. package/dist/components/ui/text-format-toolbar.d.ts.map +1 -0
  872. package/dist/components/ui/text-format-toolbar.js +186 -0
  873. package/dist/components/ui/timeline.d.ts.map +1 -1
  874. package/dist/components/ui/timeline.js +10 -1
  875. package/dist/components/ui/toast.d.ts +32 -10
  876. package/dist/components/ui/toast.d.ts.map +1 -1
  877. package/dist/components/ui/toast.js +150 -47
  878. package/dist/components/ui/toggle-group.d.ts +14 -5
  879. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  880. package/dist/components/ui/toggle-group.js +15 -1
  881. package/dist/components/ui/toggle.d.ts.map +1 -1
  882. package/dist/components/ui/toggle.js +9 -1
  883. package/dist/components/ui/tree.d.ts +8 -0
  884. package/dist/components/ui/tree.d.ts.map +1 -1
  885. package/dist/components/ui/tree.js +92 -13
  886. package/dist/components/ui/video-player.d.ts +236 -0
  887. package/dist/components/ui/video-player.d.ts.map +1 -0
  888. package/dist/components/ui/video-player.js +72 -0
  889. package/dist/fonts/inter-latin-400-italic.woff2 +0 -0
  890. package/dist/index.d.ts +112 -0
  891. package/dist/index.d.ts.map +1 -1
  892. package/dist/index.js +72 -0
  893. package/dist/lib/utils.d.ts +29 -0
  894. package/dist/lib/utils.d.ts.map +1 -1
  895. package/dist/lib/utils.js +35 -0
  896. package/dist/live/index.d.ts +10 -3
  897. package/dist/live/index.d.ts.map +1 -1
  898. package/dist/live/index.js +12 -3
  899. package/dist/live/run-stream-01/run-stream.js +4 -4
  900. package/dist/live/tool-ledger-01/index.d.ts +3 -0
  901. package/dist/live/tool-ledger-01/index.d.ts.map +1 -0
  902. package/dist/live/tool-ledger-01/index.js +1 -0
  903. package/dist/live/tool-ledger-01/tool-ledger.d.ts +348 -0
  904. package/dist/live/tool-ledger-01/tool-ledger.d.ts.map +1 -0
  905. package/dist/live/tool-ledger-01/tool-ledger.js +245 -0
  906. package/dist/pages/about-page/index.d.ts +306 -0
  907. package/dist/pages/about-page/index.d.ts.map +1 -0
  908. package/dist/pages/about-page/index.js +161 -0
  909. package/dist/pages/careers-page/index.d.ts +288 -0
  910. package/dist/pages/careers-page/index.d.ts.map +1 -0
  911. package/dist/pages/careers-page/index.js +182 -0
  912. package/dist/pages/changelog-page/index.d.ts +255 -0
  913. package/dist/pages/changelog-page/index.d.ts.map +1 -0
  914. package/dist/pages/changelog-page/index.js +86 -0
  915. package/dist/pages/contact-page/index.d.ts +261 -0
  916. package/dist/pages/contact-page/index.d.ts.map +1 -0
  917. package/dist/pages/contact-page/index.js +136 -0
  918. package/dist/pages/docs-shell/docs-shell.d.ts +8 -0
  919. package/dist/pages/docs-shell/docs-shell.d.ts.map +1 -1
  920. package/dist/pages/docs-shell/docs-shell.js +24 -7
  921. package/dist/pages/error-page/index.d.ts +188 -0
  922. package/dist/pages/error-page/index.d.ts.map +1 -0
  923. package/dist/pages/error-page/index.js +98 -0
  924. package/dist/pages/index.d.ts +10 -0
  925. package/dist/pages/index.d.ts.map +1 -1
  926. package/dist/pages/index.js +14 -0
  927. package/dist/pages/legal-page/index.d.ts +194 -0
  928. package/dist/pages/legal-page/index.d.ts.map +1 -0
  929. package/dist/pages/legal-page/index.js +99 -0
  930. package/dist/pages/onboarding-page/index.d.ts +199 -0
  931. package/dist/pages/onboarding-page/index.d.ts.map +1 -0
  932. package/dist/pages/onboarding-page/index.js +71 -0
  933. package/dist/pages/pricing-page/index.d.ts +286 -0
  934. package/dist/pages/pricing-page/index.d.ts.map +1 -0
  935. package/dist/pages/pricing-page/index.js +139 -0
  936. package/dist/pages/search-page/index.d.ts +305 -0
  937. package/dist/pages/search-page/index.d.ts.map +1 -0
  938. package/dist/pages/search-page/index.js +142 -0
  939. package/dist/pages/status-page/index.d.ts +366 -0
  940. package/dist/pages/status-page/index.d.ts.map +1 -0
  941. package/dist/pages/status-page/index.js +136 -0
  942. package/dist/styles.css +1003 -55
  943. package/package.json +9 -3
@@ -0,0 +1,316 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type HeadingLevel } from '../../components/ui/section.js';
3
+ /**
4
+ * One person in a directory, and everything a reader needs to decide whether to
5
+ * follow: a name, a role, a portrait where there is one, the caller's own tags, and
6
+ * a destination.
7
+ *
8
+ * **`href` and `hrefLabel` are both required, and the second one is the whole of the
9
+ * argument.** A person's name is a name, and the sentence that says following it is
10
+ * a thing you do is the caller's, not this Block's. A directory of forty members
11
+ * whose links all read the member's own name is forty links a screen reader user
12
+ * hears as forty names and a mouse reader cannot tell apart, and the destination is
13
+ * in the status bar for exactly one of them at a time. `community-01` and
14
+ * `careers-01` make the same argument about their own links, and it is worth making a
15
+ * third time because it is the rule and not a preference: the words that say what
16
+ * activating a link does describe the caller's own destination, and a design system
17
+ * that supplied them would be supplying a claim about a route it cannot see. The
18
+ * alternatives were all worse. A default of "View profile" would be one English
19
+ * sentence in every product that installs this Block, inside a design system rather
20
+ * than inside a product's copy. Deriving the label from the name would produce "Priya
21
+ * Raman" twice, once visible and once announced, and the visible one would be the
22
+ * accessible name's tail rather than a sentence about the action. Making the name
23
+ * itself the link would put the whole row behind one control and lose the tags. So the
24
+ * label is a required prop and the run throws without it, and the type makes the pair
25
+ * a union so a TypeScript caller cannot build a member with one and not the other.
26
+ */
27
+ export type Directory01Member = {
28
+ /** The member's stable key within the set. */
29
+ id: string;
30
+ /** The person's own name, as they publish it. */
31
+ name: string;
32
+ /** What they do, in the words the caller uses. Omit it rather than passing an empty string. */
33
+ role?: string;
34
+ /**
35
+ * Where this member's own record goes.
36
+ *
37
+ * Required, because a directory of people whose entries go nowhere is a list of
38
+ * names and the reader arrived to reach one of them.
39
+ */
40
+ href: string;
41
+ /**
42
+ * The words on the link, and required whenever `href` is.
43
+ *
44
+ * **A person's name is a name, and the sentence that says following it is a thing
45
+ * you do is the caller's.** See this type's JSDoc for the whole argument, which is
46
+ * the same one `community-01` and `careers-01` make and which is worth making a third
47
+ * time because it is the rule and not a preference: the words that say what
48
+ * activating a link does describe a destination in the caller's own application, and
49
+ * a design system that supplied them would be supplying a claim about a route it
50
+ * cannot see. "Message Priya", "Open the settlement run" and "See who is on call"
51
+ * are three different offers and the Block knows which one you meant.
52
+ */
53
+ hrefLabel: string;
54
+ /**
55
+ * The portrait, with the name the initials come from.
56
+ *
57
+ * A name rather than a string, because an `Avatar` without a fallback is an empty
58
+ * circle for exactly as long as the image takes to arrive and forever if it never
59
+ * does. Omit the whole field for a member the caller has no photograph of: the
60
+ * `cards` arrangement then draws a card with a name and no mark, which is honest, and
61
+ * the `rows` arrangement draws no disc at all.
62
+ */
63
+ avatar?: {
64
+ /** The photograph. Omit it, or pass a URL that fails, for the initials. */
65
+ src?: string;
66
+ /** The person's name, which is the initials' source. */
67
+ name: string;
68
+ };
69
+ /**
70
+ * The caller's own short words for what this person is: a skill, a team, a place.
71
+ *
72
+ * Drawn as badges, never searched away, and they are the field a reader filters by,
73
+ * which is why they are in the haystack. A caller with a fifth and sixth
74
+ * classification composes them into the `hrefLabel` slot or their own control
75
+ * beside the card rather than growing this list, because a card of eight badges is a
76
+ * card a reader cannot read.
77
+ */
78
+ tags?: readonly {
79
+ id: string;
80
+ label: string;
81
+ }[];
82
+ };
83
+ /**
84
+ * One group of members, and the caller's own name for the group.
85
+ *
86
+ * A category is a place a reader navigates to rather than a result they read, and that
87
+ * fact is what the search is built on: a token that matches a category's own title
88
+ * carries every member under it. A directory whose categories were only labels would
89
+ * make searching for a team's name return the team's heading and nothing else, which is
90
+ * the least useful thing a filter can do.
91
+ */
92
+ export type Directory01Category = {
93
+ /** The category's stable key. The route is the usual choice and needs no coordination. */
94
+ id: string;
95
+ /** The category's own name, which is also its card title. */
96
+ title: string;
97
+ /**
98
+ * One line under the category's name.
99
+ *
100
+ * A node and not a string, because a directory's groups are named differently by
101
+ * different products and the line under a group is sometimes a sentence and sometimes
102
+ * a list of the three things in it. It is drawn rather than searched; see the note on
103
+ * `Directory01Member` for why this Block reads strings only.
104
+ */
105
+ description?: ReactNode;
106
+ /** The members under it, in the order the reader should meet them. */
107
+ members: Directory01Member[];
108
+ };
109
+ /**
110
+ * How the directory is drawn: a grid of cards or a list of full-width rows.
111
+ *
112
+ * The type is `Directory01Form` and the prop is `variant`, and the two names differing
113
+ * is the surface gate working rather than a slip: `check-surface.mjs` refuses a public
114
+ * entry export whose name ends in `Variant`, because in this package that shape names a
115
+ * cva map. This union is the two arrangements the Block can draw and it is named for the
116
+ * arrangement.
117
+ */
118
+ export type Directory01Form = 'cards' | 'rows';
119
+ /**
120
+ * The props a Directory01 takes.
121
+ *
122
+ * Every string is a prop and the Block ships none: no member name, no role, no tag, no
123
+ * category name, no link label and not one word of the two sentences the search field
124
+ * needs. A directory with Prism's words in it would be a list of Prism's colleagues.
125
+ */
126
+ export type Directory01Props = {
127
+ /** The short line above the title, usually what this directory is for. */
128
+ eyebrow?: ReactNode;
129
+ /** The heading. Required, because an index with no heading is a list in a page. */
130
+ title: ReactNode;
131
+ /** One supporting line under the heading, for the part the title cannot carry. */
132
+ description?: ReactNode;
133
+ /**
134
+ * The query, as the caller holds it.
135
+ *
136
+ * Required and controlled, for the reason `SearchField` gives in full: a search
137
+ * field that owns its own text cannot be emptied from outside itself, and a
138
+ * directory whose field cannot be cleared is a field a reader has to select and
139
+ * delete one character at a time. It is also what this Block is for, so the two are
140
+ * the same prop rather than one of them being derived.
141
+ */
142
+ value: string;
143
+ /**
144
+ * Called with the query as the reader changes it, and with an empty string when the
145
+ * clear control is pressed.
146
+ */
147
+ onValueChange: (value: string) => void;
148
+ /**
149
+ * The field's visible name and its accessible name.
150
+ *
151
+ * Required and a `string`, because a field has one name and that name is the
152
+ * caller's. A control with no name is announced as a search box, which is the one
153
+ * name every other field of its kind on the page shares.
154
+ */
155
+ label: string;
156
+ /**
157
+ * The accessible name of the control that empties the field.
158
+ *
159
+ * Required, and it is what makes the control exist rather than a name for something
160
+ * already on screen: `SearchField` draws the clear control whenever this is passed
161
+ * and draws nothing when it is not. The words are the caller's because a screen
162
+ * reader reads them.
163
+ */
164
+ clearLabel: string;
165
+ /**
166
+ * The categories, in the order a reader should meet them.
167
+ *
168
+ * The caller holds the whole directory, because this Block searches nothing: see the
169
+ * JSDoc on the Block for why that is a law and not a limitation.
170
+ */
171
+ categories: Directory01Category[];
172
+ /**
173
+ * The caller's own sentence for a query that matched nothing.
174
+ *
175
+ * Required, and the reason is the one `Help01` states: a reader who has typed
176
+ * something and got nothing is reading exactly one line, and a Block that wrote it
177
+ * would write it in this package's language, in every product that installs it,
178
+ * inside a design system rather than inside a product's copy, which is where a
179
+ * translation tool is least likely to look. It is a node because the honest
180
+ * no-results line is sometimes a sentence and sometimes a link to the caller's own
181
+ * support address.
182
+ */
183
+ empty: ReactNode;
184
+ /**
185
+ * The caller's own line about what the query found.
186
+ *
187
+ * A function and not a node, because the count a reader reads is a sentence whose
188
+ * word order and noun inflection belong to their language, and a Block that composed
189
+ * it would compose the English one. A function is also what lets a caller say
190
+ * nothing before the reader has typed anything, by returning null for a count they
191
+ * do not want to announce, which is the case every results line has on its first
192
+ * paint.
193
+ */
194
+ summary?: (matches: number) => ReactNode;
195
+ /**
196
+ * How the set is drawn.
197
+ *
198
+ * @defaultValue 'cards'
199
+ *
200
+ * `cards` is right for a directory a reader scans for a face they recognise, which
201
+ * is the common case for a set of people under about forty. `rows` is right for a
202
+ * long list or a narrow column, where the portrait belongs at the leading edge of a
203
+ * line rather than above a name in a grid.
204
+ */
205
+ variant?: Directory01Form;
206
+ /** Heading level for the section heading. See `HeadingLevel`. */
207
+ headingLevel?: HeadingLevel;
208
+ /**
209
+ * Layout only, exactly as on every Block. Changing a Prism-owned visual property
210
+ * from here is prohibited.
211
+ */
212
+ className?: string;
213
+ };
214
+ /**
215
+ * A directory of people or things a reader can search, browse and follow: a search
216
+ * field, a set of categories, and the members under them.
217
+ *
218
+ * **This Block filters what it was given and it searches nothing. It holds no
219
+ * directory, it fetches no directory, and there is no prop that points at one.** That
220
+ * is a law and not a limitation, and the gate that holds it is
221
+ * `packages/ui/scripts/check-block-imports.mjs`, which fails a Block that imports a
222
+ * router or a data client or calls a network function. A Block that fetched a
223
+ * directory would be a Block every consumer whose people live in its own identity
224
+ * provider has to rewrite, and the corpus publishes it as a product-agnostic section,
225
+ * so an agent composing a page from it composes a request the consumer never asked
226
+ * for.
227
+ *
228
+ * **Every member's link carries the caller's sentence, and that is the rule rather
229
+ * than a preference, which is why it is worth the third time it is being argued.** A
230
+ * person's name is a name, and the sentence that says following it is a thing you do
231
+ * is the caller's. `community-01` argues it for a channel join and `careers-01` for
232
+ * an application; this is the same argument for a colleague's record, and repeating it
233
+ * is the point, because a rule nobody states three times is a rule one Block happens
234
+ * to follow. The failure is specific: forty members whose links all read the member's
235
+ * own name is forty links a screen reader user hears as forty names, and a mouse
236
+ * reader cannot tell them apart either because the words are identical. The
237
+ * alternatives were all worse. A default would be one English sentence in every
238
+ * product that installs this Block, inside a design system rather than inside a
239
+ * product's copy, which is where a translation tool is least likely to look. Making
240
+ * the name the link would put the row behind one control and lose the tags. So
241
+ * `hrefLabel` is required, the type makes the pair a union, and the run throws for the
242
+ * JavaScript caller and for a value that came out of a directory service with the
243
+ * type's guarantee already gone.
244
+ *
245
+ * **This differs from `help-01` in what a member is, and the difference is in the
246
+ * link affordance rather than in the layout.** An article is something to read: the
247
+ * reader opens it, reads it, and comes back, so the article's own name is a perfectly
248
+ * good label and the link beside it is a small quiet control under a title. A person
249
+ * is something to reach: the reader wants to send a message, open a run, or ask a
250
+ * question, so the member's name is an identity and the offer beside it is a
251
+ * different sentence every time. That is why this Block's link is drawn as an
252
+ * `outline` control at the card's trailing edge and why its label is required, while
253
+ * `Help01` draws a `ghost` control under the article's title and requires the label
254
+ * for the same underlying reason. The two Blocks share the field-search shape and
255
+ * differ in the one fact that matters: an article is read in place and a person is
256
+ * reached somewhere else.
257
+ *
258
+ * **A token that matches a category's own title carries every member under it, and
259
+ * that is a decision about what a category is.** A category is a place a reader
260
+ * navigates to rather than a result they read, so a reader who types a team's name
261
+ * wants the team. Without the rule, searching for a category's name returns the
262
+ * category's card with nothing in it, which is the least useful thing a filter can do
263
+ * and looks like a broken one. The cost is the opposite one and it is real: a token
264
+ * appearing in a category's name is a broad match, and a category called Platform
265
+ * matches more than a reader typing platform meant. That is a cost the caller
266
+ * controls by naming their categories, and it is named here rather than left to be
267
+ * discovered.
268
+ *
269
+ * **Only strings are searched, and the two things a directory holds that are not
270
+ * strings are deliberately excluded.** `description` is a `ReactNode`, and matching
271
+ * it would mean walking the caller's markup for words, which is a Block reading
272
+ * somebody else's content. `href` is a route in the caller's own application, and
273
+ * matching against it would let a reader find a person by a URL, which is not a thing
274
+ * a reader remembers about a colleague. Both are drawn. Neither is searched, and a
275
+ * consumer who wants a description searched passes strings they have chosen to put in
276
+ * the tags.
277
+ *
278
+ * **The category title is a heading one step below the section and the member's name
279
+ * is a heading one step below that, because a directory has two levels of outline and
280
+ * both of them are used.** A reader who searches a directory and then navigates by
281
+ * heading wants the team and then the person, and a directory flattened onto one
282
+ * level of forty member names is an outline a reader scrolls rather than navigates. So
283
+ * the categories are headings at `childLevel(headingLevel)` and the member names at
284
+ * `childLevel(childLevel(headingLevel))`, both derived and both used in both
285
+ * arrangements, so a member is the same heading whether it is on a card or a row. A
286
+ * card title whose element depended on a layout prop would make the outline depend on
287
+ * a layout prop, which is the one thing `headingLevel` exists to prevent. This is the
288
+ * same answer `Changelog01` gives for the same shape, a group and the records inside
289
+ * it. The cost is two hundred extra outline entries in a directory that size, and
290
+ * the answer for one that size is a list the reader searches rather than a grid they
291
+ * scan.
292
+ *
293
+ * **The field composes `SearchField`, so the clear control, the polite result region
294
+ * and the one tab stop are that Component's rather than a second implementation
295
+ * here.** The result line is where `summary` goes: `SearchField` draws it as a polite
296
+ * live region and announces it when the count changes, which is the only thing on the
297
+ * page reporting the consequence of typing and the only place a screen reader user
298
+ * learns that a search ran. A caller who starts passing a summary after the first
299
+ * render brings the region into the document together with its content, which
300
+ * `SearchField` says is the one case a live region is least reliable about, so pass an
301
+ * empty summary on the first paint.
302
+ *
303
+ * **This Block does not own the search landmark, for the reason `SearchField` gives.**
304
+ * A `<search>` element names a region of the page rather than a control, and a page
305
+ * has two real search regions only when its two fields answer two different questions,
306
+ * so put the landmark on the container if the page really does have one search.
307
+ *
308
+ * It is a client Component, and the reason is the filtering rather than the field: the
309
+ * query is a prop the caller holds, the set that results is derived from it on every
310
+ * keystroke, and a server component cannot re-render its own children. The filtering
311
+ * itself is a substring test per member and holds no index of its own, so the client
312
+ * cost is the derivation and not a running loop.
313
+ */
314
+ export declare function Directory01({ eyebrow, title, description, value, onValueChange, label, clearLabel, categories, empty, summary, variant, headingLevel, className, }: Directory01Props): import("react").JSX.Element;
315
+ export default Directory01;
316
+ //# sourceMappingURL=directory-01.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory-01.d.ts","sourceRoot":"","sources":["../../../src/blocks/directory-01/directory-01.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAQtC,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,6BAA6B,CAAA;AA4EpC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,8CAA8C;IAC9C,EAAE,EAAE,MAAM,CAAA;IACV,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAA;IACZ,+FAA+F;IAC/F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;;;;;;;;;;OAWG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE;QACP,2EAA2E;QAC3E,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,wDAAwD;QACxD,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,SAAS;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAChD,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,0FAA0F;IAC1F,EAAE,EAAE,MAAM,CAAA;IACV,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAA;IACb;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,sEAAsE;IACtE,OAAO,EAAE,iBAAiB,EAAE,CAAA;CAC7B,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,CAAA;AAE9C;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,0EAA0E;IAC1E,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,mFAAmF;IACnF,KAAK,EAAE,SAAS,CAAA;IAChB,kFAAkF;IAClF,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB;;;;;;;;OAQG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;;;;;;OAOG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;;;;OAKG;IACH,UAAU,EAAE,mBAAmB,EAAE,CAAA;IACjC;;;;;;;;;;OAUG;IACH,KAAK,EAAE,SAAS,CAAA;IAChB;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,CAAA;IACxC;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,iEAAiE;IACjE,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAuBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,WAAW,EACX,KAAK,EACL,aAAa,EACb,KAAK,EACL,UAAU,EACV,UAAU,EACV,KAAK,EACL,OAAO,EACP,OAAiB,EACjB,YAAmB,EACnB,SAAS,GACV,EAAE,gBAAgB,+BAgSlB;AAED,eAAe,WAAW,CAAA"}
@@ -0,0 +1,252 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useMemo } from 'react';
4
+ import { Avatar, AvatarFallback, AvatarImage } from '../../components/ui/avatar.js';
5
+ import { Badge } from '../../components/ui/badge.js';
6
+ import { Card, CardFooter, CardHeader, CardTitle } from '../../components/ui/card.js';
7
+ import { CtaLink } from '../../components/ui/cta-link.js';
8
+ import { SearchField } from '../../components/ui/search-field.js';
9
+ import { Section, SectionHeading, childLevel, } from '../../components/ui/section.js';
10
+ import { cn } from '../../lib/utils.js';
11
+ /**
12
+ * The initials a name produces, and the rule that produces them.
13
+ *
14
+ * Two letters from the first and last words, and the first two characters of a
15
+ * single word. It is the same rule `AvatarGroup` applies, repeated rather than
16
+ * imported, and the boundary is the reason: that helper is private to its module and
17
+ * exporting it would make a private derivation part of a published surface in order to
18
+ * save six lines in a Block. The cost is stated rather than hidden: two modules carry
19
+ * this rule, so a change to it is a change in both, and a caller who needs a case the
20
+ * rule does not cover composes `Avatar` themselves and passes their own node.
21
+ */
22
+ function initialsOf(name) {
23
+ const words = name.trim().split(/\s+/).filter(Boolean);
24
+ const first = words[0];
25
+ if (first === undefined)
26
+ return '';
27
+ if (words.length === 1)
28
+ return first.slice(0, 2).toUpperCase();
29
+ return `${first.charAt(0)}${words[words.length - 1].charAt(0)}`.toUpperCase();
30
+ }
31
+ /**
32
+ * The query in the form the match reads it: case folded, split on whitespace, with
33
+ * the empty tokens dropped.
34
+ *
35
+ * The tokens are AND rather than OR, and the reason is the one `SearchDialog` and
36
+ * `Help01` each state: a reader who types two words is narrowing, and with OR a
37
+ * directory returns nearly every member of it, which is not a result but a list the
38
+ * reader has to work through themselves.
39
+ */
40
+ function tokensOf(query) {
41
+ return query.toLowerCase().split(/\s+/).filter((token) => token.length > 0);
42
+ }
43
+ /**
44
+ * Whether every token appears somewhere in one case-folded string.
45
+ *
46
+ * A substring test with no stemming and no typo tolerance, which is the same
47
+ * downgrade `Help01` takes and for the same reason: a fuzzy engine is a large
48
+ * dependency whose ranking a consumer cannot restyle, audit against this package's
49
+ * gates or replace without forking the Block.
50
+ */
51
+ function containsAll(haystack, tokens) {
52
+ return tokens.every((token) => haystack.includes(token));
53
+ }
54
+ /**
55
+ * The words a member can be found by, as one case-folded string.
56
+ *
57
+ * The name, the role and the tags, and not the `href`, for the reason the tags are
58
+ * there: a tag is the one field that classifies a person rather than identifying them,
59
+ * and a reader who filters a directory by a skill is filtering by something they can
60
+ * see on the card. A destination is a route in the caller's own application and
61
+ * matching against it would let a reader find a person by a URL, which is not a thing
62
+ * a reader remembers about a colleague.
63
+ */
64
+ function haystackOf(member) {
65
+ return [member.name, member.role ?? '', ...(member.tags ?? []).map((tag) => tag.label)]
66
+ .join(` `)
67
+ .toLowerCase();
68
+ }
69
+ /**
70
+ * How many members the filter left on the page, which is what the caller's summary is
71
+ * built from.
72
+ *
73
+ * A separate step rather than a value in the same pass so the number cannot drift from
74
+ * the rows: it is counted from the array that was rendered, so a caller whose summary
75
+ * disagrees with the page has a bug in their own function rather than a Block that
76
+ * passed one number and drew another.
77
+ */
78
+ function countMembers(categories) {
79
+ return categories.reduce((total, category) => total + category.members.length, 0);
80
+ }
81
+ /**
82
+ * The refusal, checked before anything is drawn so a caller's mistake is one
83
+ * diagnostic in a console rather than a link a reader cannot follow on a page.
84
+ *
85
+ * One, and it is the one this Block is built around: a member with a destination and
86
+ * no sentence. Each message names the member, because a caller with two hundred
87
+ * members needs to know which one and not which number.
88
+ */
89
+ function assertMembers(members) {
90
+ for (const member of members) {
91
+ if (member.hrefLabel.trim() === '') {
92
+ throw new Error(`Directory01: the member "${member.name}" has no hrefLabel, so the control would be a link announced ` +
93
+ 'by a name, which tells a screen reader nothing about what activating it does. A person name is a ' +
94
+ 'name, and the sentence saying that following it is a thing you can do belongs to the caller. Pass ' +
95
+ 'the words for the action.');
96
+ }
97
+ }
98
+ }
99
+ /**
100
+ * A directory of people or things a reader can search, browse and follow: a search
101
+ * field, a set of categories, and the members under them.
102
+ *
103
+ * **This Block filters what it was given and it searches nothing. It holds no
104
+ * directory, it fetches no directory, and there is no prop that points at one.** That
105
+ * is a law and not a limitation, and the gate that holds it is
106
+ * `packages/ui/scripts/check-block-imports.mjs`, which fails a Block that imports a
107
+ * router or a data client or calls a network function. A Block that fetched a
108
+ * directory would be a Block every consumer whose people live in its own identity
109
+ * provider has to rewrite, and the corpus publishes it as a product-agnostic section,
110
+ * so an agent composing a page from it composes a request the consumer never asked
111
+ * for.
112
+ *
113
+ * **Every member's link carries the caller's sentence, and that is the rule rather
114
+ * than a preference, which is why it is worth the third time it is being argued.** A
115
+ * person's name is a name, and the sentence that says following it is a thing you do
116
+ * is the caller's. `community-01` argues it for a channel join and `careers-01` for
117
+ * an application; this is the same argument for a colleague's record, and repeating it
118
+ * is the point, because a rule nobody states three times is a rule one Block happens
119
+ * to follow. The failure is specific: forty members whose links all read the member's
120
+ * own name is forty links a screen reader user hears as forty names, and a mouse
121
+ * reader cannot tell them apart either because the words are identical. The
122
+ * alternatives were all worse. A default would be one English sentence in every
123
+ * product that installs this Block, inside a design system rather than inside a
124
+ * product's copy, which is where a translation tool is least likely to look. Making
125
+ * the name the link would put the row behind one control and lose the tags. So
126
+ * `hrefLabel` is required, the type makes the pair a union, and the run throws for the
127
+ * JavaScript caller and for a value that came out of a directory service with the
128
+ * type's guarantee already gone.
129
+ *
130
+ * **This differs from `help-01` in what a member is, and the difference is in the
131
+ * link affordance rather than in the layout.** An article is something to read: the
132
+ * reader opens it, reads it, and comes back, so the article's own name is a perfectly
133
+ * good label and the link beside it is a small quiet control under a title. A person
134
+ * is something to reach: the reader wants to send a message, open a run, or ask a
135
+ * question, so the member's name is an identity and the offer beside it is a
136
+ * different sentence every time. That is why this Block's link is drawn as an
137
+ * `outline` control at the card's trailing edge and why its label is required, while
138
+ * `Help01` draws a `ghost` control under the article's title and requires the label
139
+ * for the same underlying reason. The two Blocks share the field-search shape and
140
+ * differ in the one fact that matters: an article is read in place and a person is
141
+ * reached somewhere else.
142
+ *
143
+ * **A token that matches a category's own title carries every member under it, and
144
+ * that is a decision about what a category is.** A category is a place a reader
145
+ * navigates to rather than a result they read, so a reader who types a team's name
146
+ * wants the team. Without the rule, searching for a category's name returns the
147
+ * category's card with nothing in it, which is the least useful thing a filter can do
148
+ * and looks like a broken one. The cost is the opposite one and it is real: a token
149
+ * appearing in a category's name is a broad match, and a category called Platform
150
+ * matches more than a reader typing platform meant. That is a cost the caller
151
+ * controls by naming their categories, and it is named here rather than left to be
152
+ * discovered.
153
+ *
154
+ * **Only strings are searched, and the two things a directory holds that are not
155
+ * strings are deliberately excluded.** `description` is a `ReactNode`, and matching
156
+ * it would mean walking the caller's markup for words, which is a Block reading
157
+ * somebody else's content. `href` is a route in the caller's own application, and
158
+ * matching against it would let a reader find a person by a URL, which is not a thing
159
+ * a reader remembers about a colleague. Both are drawn. Neither is searched, and a
160
+ * consumer who wants a description searched passes strings they have chosen to put in
161
+ * the tags.
162
+ *
163
+ * **The category title is a heading one step below the section and the member's name
164
+ * is a heading one step below that, because a directory has two levels of outline and
165
+ * both of them are used.** A reader who searches a directory and then navigates by
166
+ * heading wants the team and then the person, and a directory flattened onto one
167
+ * level of forty member names is an outline a reader scrolls rather than navigates. So
168
+ * the categories are headings at `childLevel(headingLevel)` and the member names at
169
+ * `childLevel(childLevel(headingLevel))`, both derived and both used in both
170
+ * arrangements, so a member is the same heading whether it is on a card or a row. A
171
+ * card title whose element depended on a layout prop would make the outline depend on
172
+ * a layout prop, which is the one thing `headingLevel` exists to prevent. This is the
173
+ * same answer `Changelog01` gives for the same shape, a group and the records inside
174
+ * it. The cost is two hundred extra outline entries in a directory that size, and
175
+ * the answer for one that size is a list the reader searches rather than a grid they
176
+ * scan.
177
+ *
178
+ * **The field composes `SearchField`, so the clear control, the polite result region
179
+ * and the one tab stop are that Component's rather than a second implementation
180
+ * here.** The result line is where `summary` goes: `SearchField` draws it as a polite
181
+ * live region and announces it when the count changes, which is the only thing on the
182
+ * page reporting the consequence of typing and the only place a screen reader user
183
+ * learns that a search ran. A caller who starts passing a summary after the first
184
+ * render brings the region into the document together with its content, which
185
+ * `SearchField` says is the one case a live region is least reliable about, so pass an
186
+ * empty summary on the first paint.
187
+ *
188
+ * **This Block does not own the search landmark, for the reason `SearchField` gives.**
189
+ * A `<search>` element names a region of the page rather than a control, and a page
190
+ * has two real search regions only when its two fields answer two different questions,
191
+ * so put the landmark on the container if the page really does have one search.
192
+ *
193
+ * It is a client Component, and the reason is the filtering rather than the field: the
194
+ * query is a prop the caller holds, the set that results is derived from it on every
195
+ * keystroke, and a server component cannot re-render its own children. The filtering
196
+ * itself is a substring test per member and holds no index of its own, so the client
197
+ * cost is the derivation and not a running loop.
198
+ */
199
+ export function Directory01({ eyebrow, title, description, value, onValueChange, label, clearLabel, categories, empty, summary, variant = 'cards', headingLevel = 'h2', className, }) {
200
+ // A category's title is a heading one step below the section that introduces the
201
+ // set, and a member's name is a step below that, so a reader who searches a
202
+ // directory and then navigates by heading lands on the team and then on the person
203
+ // rather than on forty sibling names. A hardcoded level would be right exactly once.
204
+ const Title = childLevel(headingLevel);
205
+ const Member = childLevel(Title);
206
+ const asCards = variant === 'cards';
207
+ const tokens = useMemo(() => tokensOf(value), [value]);
208
+ const visible = useMemo(() => {
209
+ // An empty query draws the whole directory, which is the resting state of a
210
+ // directory and not a special case: a reader who has typed nothing is browsing.
211
+ if (tokens.length === 0)
212
+ return categories;
213
+ const kept = [];
214
+ for (const category of categories) {
215
+ if (containsAll(category.title.toLowerCase(), tokens)) {
216
+ kept.push(category);
217
+ continue;
218
+ }
219
+ const members = category.members.filter((member) => containsAll(haystackOf(member), tokens));
220
+ if (members.length > 0)
221
+ kept.push({ ...category, members });
222
+ }
223
+ return kept;
224
+ }, [categories, tokens]);
225
+ for (const category of categories)
226
+ assertMembers(category.members);
227
+ const shown = countMembers(visible);
228
+ return (_jsx(Section, { "data-slot": "directory-01", className: cn(className), children: _jsxs("div", { "data-slot": "directory-01-body", className: "flex flex-col gap-10", children: [_jsx(SectionHeading, { eyebrow: eyebrow, title: title, description: description, align: "left", as: headingLevel }), _jsx("div", { "data-slot": "directory-01-search", className: "w-full max-w-measure-narrow", children: _jsx(SearchField, { value: value, onValueChange: onValueChange, label: label, clearLabel: clearLabel, ...(summary === undefined ? null : { resultSummary: summary(shown) }) }) }), visible.length === 0 ? (
229
+ /*
230
+ * The caller's own sentence, drawn where the categories would have been
231
+ * rather than above them, so the reader is not told there is nothing at the
232
+ * foot of a page that shows a directory. A `text-pretty` wrapper is here
233
+ * because the honest no-results line is sometimes a paragraph and
234
+ * `text-balance` would leave a one-word last line in it.
235
+ */
236
+ _jsx("p", { "data-slot": "directory-01-empty", className: "text-muted-foreground max-w-measure-narrow text-pretty", children: empty })) : (_jsx("div", { "data-slot": "directory-01-categories", "data-variant": variant, className: cn('flex flex-col gap-10',
237
+ // The card arrangement is a grid and the row arrangement is a stack, and
238
+ // the difference is the grid template rather than two trees, so a member
239
+ // is one set of elements whichever arrangement is drawn and a consumer
240
+ // who switches `variant` at render time gets one list in the
241
+ // accessibility tree rather than two.
242
+ asCards ? 'grid items-start gap-6 md:grid-cols-2 lg:grid-cols-3' : null), children: visible.map((category) => (_jsxs("section", { "data-slot": "directory-01-category", "data-category": category.id, "aria-labelledby": `${category.id}-heading`, className: "flex min-w-0 flex-col gap-4", children: [_jsxs("div", { "data-slot": "directory-01-category-head", className: "flex flex-col gap-1.5", children: [_jsx(Title, { id: `${category.id}-heading`, "data-slot": "directory-01-category-title", className: "text-lg font-semibold tracking-tight", children: category.title }), category.description === undefined ? null : (_jsx("p", { "data-slot": "directory-01-category-description", className: "text-muted-foreground text-pretty text-sm", children: category.description }))] }), asCards ? (_jsx("ul", { "data-slot": "directory-01-members", className: "grid gap-4 sm:grid-cols-2", children: category.members.map((member) => (_jsx("li", { "data-slot": "directory-01-card", "data-member": member.id, className: "flex", children: _jsxs(Card, { "data-slot": "directory-01-card-surface", className: "w-full gap-4 py-5", children: [_jsxs(CardHeader, { className: "gap-3", children: [_jsxs("div", { "data-slot": "directory-01-identity", className: "flex min-w-0 gap-3", children: [member.avatar === undefined ? null : (_jsxs(Avatar, { className: "size-10 shrink-0", children: [member.avatar.src === undefined ? null : (_jsx(AvatarImage, { src: member.avatar.src, alt: "" })), _jsx(AvatarFallback, { className: "text-mono", children: initialsOf(member.avatar.name) })] })), _jsxs("div", { className: "flex min-w-0 flex-col gap-0.5", children: [_jsx(CardTitle, { as: Member, "data-slot": "directory-01-name", className: "truncate text-sm leading-snug", children: member.name }), member.role === undefined ? null : (_jsx("span", { "data-slot": "directory-01-role", className: "text-muted-foreground text-xs", children: member.role }))] })] }), member.tags === undefined || member.tags.length === 0 ? null : (_jsx("div", { "data-slot": "directory-01-tags", className: "flex flex-wrap items-center gap-1.5", children: member.tags.map((tag) => (_jsx(Badge, { variant: "secondary", children: tag.label }, tag.id))) }))] }), _jsx(CardFooter, { children: _jsx(CtaLink, { href: member.href, variant: "outline", size: "sm", children: member.hrefLabel }) })] }) }, member.id))) })) : (
243
+ /*
244
+ * A list rather than a grid of cards, because in this arrangement
245
+ * the portrait belongs at the leading edge of a line and the badges
246
+ * belong beside the name, not above it. The rule between rows is a
247
+ * border rather than a gap alone, so the boundary survives at any
248
+ * zoom level where the gap stops being visible.
249
+ */
250
+ _jsx("ul", { "data-slot": "directory-01-members", className: "border-border flex flex-col border-t", children: category.members.map((member) => (_jsxs("li", { "data-slot": "directory-01-row", "data-member": member.id, className: "border-border flex flex-wrap items-center gap-x-4 gap-y-2 border-b py-4 last:border-b-0", children: [member.avatar === undefined ? null : (_jsxs(Avatar, { className: "size-8 shrink-0", children: [member.avatar.src === undefined ? null : (_jsx(AvatarImage, { src: member.avatar.src, alt: "" })), _jsx(AvatarFallback, { className: "text-mono", children: initialsOf(member.avatar.name) })] })), _jsx(Member, { "data-slot": "directory-01-name", className: "min-w-0 truncate text-sm font-medium", children: member.name }), member.role === undefined ? null : (_jsx("span", { "data-slot": "directory-01-role", className: "text-muted-foreground min-w-0 flex-1 truncate text-sm", children: member.role })), member.tags === undefined || member.tags.length === 0 ? null : (_jsx("span", { "data-slot": "directory-01-tags", className: "flex flex-wrap items-center gap-1.5", children: member.tags.map((tag) => (_jsx(Badge, { variant: "secondary", children: tag.label }, tag.id))) })), _jsx(CtaLink, { href: member.href, variant: "outline", size: "sm", className: "ms-auto shrink-0", children: member.hrefLabel })] }, member.id))) }))] }, category.id))) }))] }) }));
251
+ }
252
+ export default Directory01;
@@ -0,0 +1,3 @@
1
+ export { Directory01, default } from './directory-01.js';
2
+ export type { Directory01Category, Directory01Form, Directory01Member, Directory01Props, } from './directory-01.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/blocks/directory-01/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAMrD,YAAY,EACV,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,gBAAgB,CAAA"}
@@ -0,0 +1 @@
1
+ export { Directory01, default } from './directory-01.js';