@nanisoft/prism-ui 0.13.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (964) hide show
  1. package/THIRD-PARTY-NOTICES.md +22 -7
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/blocks/about-01/about.d.ts +296 -0
  4. package/dist/blocks/about-01/about.d.ts.map +1 -0
  5. package/dist/blocks/about-01/about.js +103 -0
  6. package/dist/blocks/about-01/index.d.ts +3 -0
  7. package/dist/blocks/about-01/index.d.ts.map +1 -0
  8. package/dist/blocks/about-01/index.js +1 -0
  9. package/dist/blocks/accept-invite-01/accept-invite.d.ts +324 -0
  10. package/dist/blocks/accept-invite-01/accept-invite.d.ts.map +1 -0
  11. package/dist/blocks/accept-invite-01/accept-invite.js +230 -0
  12. package/dist/blocks/accept-invite-01/index.d.ts +3 -0
  13. package/dist/blocks/accept-invite-01/index.d.ts.map +1 -0
  14. package/dist/blocks/accept-invite-01/index.js +1 -0
  15. package/dist/blocks/account-01/account-01.d.ts +393 -0
  16. package/dist/blocks/account-01/account-01.d.ts.map +1 -0
  17. package/dist/blocks/account-01/account-01.js +215 -0
  18. package/dist/blocks/account-01/index.d.ts +3 -0
  19. package/dist/blocks/account-01/index.d.ts.map +1 -0
  20. package/dist/blocks/account-01/index.js +1 -0
  21. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts +271 -0
  22. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts.map +1 -0
  23. package/dist/blocks/activity-feed-01/activity-feed-01.js +185 -0
  24. package/dist/blocks/activity-feed-01/index.d.ts +3 -0
  25. package/dist/blocks/activity-feed-01/index.d.ts.map +1 -0
  26. package/dist/blocks/activity-feed-01/index.js +1 -0
  27. package/dist/blocks/address-book-01/address-book-01.d.ts +312 -0
  28. package/dist/blocks/address-book-01/address-book-01.d.ts.map +1 -0
  29. package/dist/blocks/address-book-01/address-book-01.js +233 -0
  30. package/dist/blocks/address-book-01/index.d.ts +3 -0
  31. package/dist/blocks/address-book-01/index.d.ts.map +1 -0
  32. package/dist/blocks/address-book-01/index.js +1 -0
  33. package/dist/blocks/audit-log-01/audit-log-01.d.ts +333 -0
  34. package/dist/blocks/audit-log-01/audit-log-01.d.ts.map +1 -0
  35. package/dist/blocks/audit-log-01/audit-log-01.js +211 -0
  36. package/dist/blocks/audit-log-01/index.d.ts +3 -0
  37. package/dist/blocks/audit-log-01/index.d.ts.map +1 -0
  38. package/dist/blocks/audit-log-01/index.js +1 -0
  39. package/dist/blocks/auth-form-01/auth-form.d.ts +40 -1
  40. package/dist/blocks/auth-form-01/auth-form.d.ts.map +1 -1
  41. package/dist/blocks/auth-form-01/auth-form.js +26 -3
  42. package/dist/blocks/awards-01/awards.d.ts +156 -0
  43. package/dist/blocks/awards-01/awards.d.ts.map +1 -0
  44. package/dist/blocks/awards-01/awards.js +102 -0
  45. package/dist/blocks/awards-01/index.d.ts +3 -0
  46. package/dist/blocks/awards-01/index.d.ts.map +1 -0
  47. package/dist/blocks/awards-01/index.js +1 -0
  48. package/dist/blocks/backdrop-01/backdrop.d.ts +268 -0
  49. package/dist/blocks/backdrop-01/backdrop.d.ts.map +1 -0
  50. package/dist/blocks/backdrop-01/backdrop.js +170 -0
  51. package/dist/blocks/backdrop-01/index.d.ts +3 -0
  52. package/dist/blocks/backdrop-01/index.d.ts.map +1 -0
  53. package/dist/blocks/backdrop-01/index.js +1 -0
  54. package/dist/blocks/bento-01/bento-01.d.ts +136 -0
  55. package/dist/blocks/bento-01/bento-01.d.ts.map +1 -0
  56. package/dist/blocks/bento-01/bento-01.js +97 -0
  57. package/dist/blocks/bento-01/index.d.ts +3 -0
  58. package/dist/blocks/bento-01/index.d.ts.map +1 -0
  59. package/dist/blocks/bento-01/index.js +1 -0
  60. package/dist/blocks/billing-source-01/billing-source-01.d.ts +379 -0
  61. package/dist/blocks/billing-source-01/billing-source-01.d.ts.map +1 -0
  62. package/dist/blocks/billing-source-01/billing-source-01.js +222 -0
  63. package/dist/blocks/billing-source-01/index.d.ts +3 -0
  64. package/dist/blocks/billing-source-01/index.d.ts.map +1 -0
  65. package/dist/blocks/billing-source-01/index.js +1 -0
  66. package/dist/blocks/bundle-01/bundle.d.ts +387 -0
  67. package/dist/blocks/bundle-01/bundle.d.ts.map +1 -0
  68. package/dist/blocks/bundle-01/bundle.js +153 -0
  69. package/dist/blocks/bundle-01/index.d.ts +3 -0
  70. package/dist/blocks/bundle-01/index.d.ts.map +1 -0
  71. package/dist/blocks/bundle-01/index.js +1 -0
  72. package/dist/blocks/calendar-01/calendar.d.ts +251 -0
  73. package/dist/blocks/calendar-01/calendar.d.ts.map +1 -0
  74. package/dist/blocks/calendar-01/calendar.js +191 -0
  75. package/dist/blocks/calendar-01/index.d.ts +3 -0
  76. package/dist/blocks/calendar-01/index.d.ts.map +1 -0
  77. package/dist/blocks/calendar-01/index.js +1 -0
  78. package/dist/blocks/capacity-01/capacity.d.ts +363 -0
  79. package/dist/blocks/capacity-01/capacity.d.ts.map +1 -0
  80. package/dist/blocks/capacity-01/capacity.js +208 -0
  81. package/dist/blocks/capacity-01/index.d.ts +3 -0
  82. package/dist/blocks/capacity-01/index.d.ts.map +1 -0
  83. package/dist/blocks/capacity-01/index.js +1 -0
  84. package/dist/blocks/careers-01/careers.d.ts +186 -0
  85. package/dist/blocks/careers-01/careers.d.ts.map +1 -0
  86. package/dist/blocks/careers-01/careers.js +83 -0
  87. package/dist/blocks/careers-01/index.d.ts +3 -0
  88. package/dist/blocks/careers-01/index.d.ts.map +1 -0
  89. package/dist/blocks/careers-01/index.js +1 -0
  90. package/dist/blocks/case-studies-01/case-studies.d.ts +192 -0
  91. package/dist/blocks/case-studies-01/case-studies.d.ts.map +1 -0
  92. package/dist/blocks/case-studies-01/case-studies.js +97 -0
  93. package/dist/blocks/case-studies-01/index.d.ts +3 -0
  94. package/dist/blocks/case-studies-01/index.d.ts.map +1 -0
  95. package/dist/blocks/case-studies-01/index.js +1 -0
  96. package/dist/blocks/case-study-01/case-study.d.ts +214 -0
  97. package/dist/blocks/case-study-01/case-study.d.ts.map +1 -0
  98. package/dist/blocks/case-study-01/case-study.js +79 -0
  99. package/dist/blocks/case-study-01/index.d.ts +3 -0
  100. package/dist/blocks/case-study-01/index.d.ts.map +1 -0
  101. package/dist/blocks/case-study-01/index.js +1 -0
  102. package/dist/blocks/changelog-01/changelog.d.ts +200 -0
  103. package/dist/blocks/changelog-01/changelog.d.ts.map +1 -0
  104. package/dist/blocks/changelog-01/changelog.js +155 -0
  105. package/dist/blocks/changelog-01/index.d.ts +3 -0
  106. package/dist/blocks/changelog-01/index.d.ts.map +1 -0
  107. package/dist/blocks/changelog-01/index.js +1 -0
  108. package/dist/blocks/chart-card-01/chart-card-01.d.ts +149 -0
  109. package/dist/blocks/chart-card-01/chart-card-01.d.ts.map +1 -0
  110. package/dist/blocks/chart-card-01/chart-card-01.js +81 -0
  111. package/dist/blocks/chart-card-01/index.d.ts +3 -0
  112. package/dist/blocks/chart-card-01/index.d.ts.map +1 -0
  113. package/dist/blocks/chart-card-01/index.js +1 -0
  114. package/dist/blocks/chart-group-01/chart-group-01.d.ts +138 -0
  115. package/dist/blocks/chart-group-01/chart-group-01.d.ts.map +1 -0
  116. package/dist/blocks/chart-group-01/chart-group-01.js +74 -0
  117. package/dist/blocks/chart-group-01/index.d.ts +3 -0
  118. package/dist/blocks/chart-group-01/index.d.ts.map +1 -0
  119. package/dist/blocks/chart-group-01/index.js +1 -0
  120. package/dist/blocks/code-sample-01/code-sample.d.ts +193 -0
  121. package/dist/blocks/code-sample-01/code-sample.d.ts.map +1 -0
  122. package/dist/blocks/code-sample-01/code-sample.js +104 -0
  123. package/dist/blocks/code-sample-01/index.d.ts +3 -0
  124. package/dist/blocks/code-sample-01/index.d.ts.map +1 -0
  125. package/dist/blocks/code-sample-01/index.js +1 -0
  126. package/dist/blocks/community-01/community.d.ts +183 -0
  127. package/dist/blocks/community-01/community.d.ts.map +1 -0
  128. package/dist/blocks/community-01/community.js +102 -0
  129. package/dist/blocks/community-01/index.d.ts +3 -0
  130. package/dist/blocks/community-01/index.d.ts.map +1 -0
  131. package/dist/blocks/community-01/index.js +1 -0
  132. package/dist/blocks/compare-01/compare.d.ts +184 -0
  133. package/dist/blocks/compare-01/compare.d.ts.map +1 -0
  134. package/dist/blocks/compare-01/compare.js +106 -0
  135. package/dist/blocks/compare-01/index.d.ts +3 -0
  136. package/dist/blocks/compare-01/index.d.ts.map +1 -0
  137. package/dist/blocks/compare-01/index.js +1 -0
  138. package/dist/blocks/compliance-01/compliance.d.ts +249 -0
  139. package/dist/blocks/compliance-01/compliance.d.ts.map +1 -0
  140. package/dist/blocks/compliance-01/compliance.js +130 -0
  141. package/dist/blocks/compliance-01/index.d.ts +3 -0
  142. package/dist/blocks/compliance-01/index.d.ts.map +1 -0
  143. package/dist/blocks/compliance-01/index.js +1 -0
  144. package/dist/blocks/consent-01/consent.d.ts +211 -0
  145. package/dist/blocks/consent-01/consent.d.ts.map +1 -0
  146. package/dist/blocks/consent-01/consent.js +101 -0
  147. package/dist/blocks/consent-01/index.d.ts +3 -0
  148. package/dist/blocks/consent-01/index.d.ts.map +1 -0
  149. package/dist/blocks/consent-01/index.js +1 -0
  150. package/dist/blocks/contact-01/contact.d.ts +319 -0
  151. package/dist/blocks/contact-01/contact.d.ts.map +1 -0
  152. package/dist/blocks/contact-01/contact.js +211 -0
  153. package/dist/blocks/contact-01/index.d.ts +3 -0
  154. package/dist/blocks/contact-01/index.d.ts.map +1 -0
  155. package/dist/blocks/contact-01/index.js +1 -0
  156. package/dist/blocks/content-grid-01/content-grid.d.ts +262 -0
  157. package/dist/blocks/content-grid-01/content-grid.d.ts.map +1 -0
  158. package/dist/blocks/content-grid-01/content-grid.js +155 -0
  159. package/dist/blocks/content-grid-01/index.d.ts +3 -0
  160. package/dist/blocks/content-grid-01/index.d.ts.map +1 -0
  161. package/dist/blocks/content-grid-01/index.js +1 -0
  162. package/dist/blocks/cta-01/cta.d.ts +7 -1
  163. package/dist/blocks/cta-01/cta.d.ts.map +1 -1
  164. package/dist/blocks/cta-01/cta.js +11 -2
  165. package/dist/blocks/dashboard-01/dashboard-01.d.ts +247 -0
  166. package/dist/blocks/dashboard-01/dashboard-01.d.ts.map +1 -0
  167. package/dist/blocks/dashboard-01/dashboard-01.js +141 -0
  168. package/dist/blocks/dashboard-01/index.d.ts +3 -0
  169. package/dist/blocks/dashboard-01/index.d.ts.map +1 -0
  170. package/dist/blocks/dashboard-01/index.js +1 -0
  171. package/dist/blocks/data-table-01/data-table.d.ts +22 -1
  172. package/dist/blocks/data-table-01/data-table.d.ts.map +1 -1
  173. package/dist/blocks/data-table-01/data-table.js +9 -5
  174. package/dist/blocks/delivery-01/delivery.d.ts +343 -0
  175. package/dist/blocks/delivery-01/delivery.d.ts.map +1 -0
  176. package/dist/blocks/delivery-01/delivery.js +212 -0
  177. package/dist/blocks/delivery-01/index.d.ts +3 -0
  178. package/dist/blocks/delivery-01/index.d.ts.map +1 -0
  179. package/dist/blocks/delivery-01/index.js +1 -0
  180. package/dist/blocks/directory-01/directory-01.d.ts +316 -0
  181. package/dist/blocks/directory-01/directory-01.d.ts.map +1 -0
  182. package/dist/blocks/directory-01/directory-01.js +252 -0
  183. package/dist/blocks/directory-01/index.d.ts +3 -0
  184. package/dist/blocks/directory-01/index.d.ts.map +1 -0
  185. package/dist/blocks/directory-01/index.js +1 -0
  186. package/dist/blocks/download-01/download.d.ts +261 -0
  187. package/dist/blocks/download-01/download.d.ts.map +1 -0
  188. package/dist/blocks/download-01/download.js +115 -0
  189. package/dist/blocks/download-01/index.d.ts +3 -0
  190. package/dist/blocks/download-01/index.d.ts.map +1 -0
  191. package/dist/blocks/download-01/index.js +1 -0
  192. package/dist/blocks/faq-01/faq.d.ts +128 -0
  193. package/dist/blocks/faq-01/faq.d.ts.map +1 -0
  194. package/dist/blocks/faq-01/faq.js +53 -0
  195. package/dist/blocks/faq-01/index.d.ts +3 -0
  196. package/dist/blocks/faq-01/index.d.ts.map +1 -0
  197. package/dist/blocks/faq-01/index.js +1 -0
  198. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts +158 -0
  199. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts.map +1 -0
  200. package/dist/blocks/feature-rows-01/feature-rows-01.js +81 -0
  201. package/dist/blocks/feature-rows-01/index.d.ts +3 -0
  202. package/dist/blocks/feature-rows-01/index.d.ts.map +1 -0
  203. package/dist/blocks/feature-rows-01/index.js +1 -0
  204. package/dist/blocks/feedback-01/feedback.d.ts +235 -0
  205. package/dist/blocks/feedback-01/feedback.d.ts.map +1 -0
  206. package/dist/blocks/feedback-01/feedback.js +113 -0
  207. package/dist/blocks/feedback-01/index.d.ts +3 -0
  208. package/dist/blocks/feedback-01/index.d.ts.map +1 -0
  209. package/dist/blocks/feedback-01/index.js +1 -0
  210. package/dist/blocks/field-map-01/field-map.d.ts +247 -0
  211. package/dist/blocks/field-map-01/field-map.d.ts.map +1 -0
  212. package/dist/blocks/field-map-01/field-map.js +183 -0
  213. package/dist/blocks/field-map-01/index.d.ts +3 -0
  214. package/dist/blocks/field-map-01/index.d.ts.map +1 -0
  215. package/dist/blocks/field-map-01/index.js +1 -0
  216. package/dist/blocks/forgot-password-01/forgot-password.d.ts +288 -0
  217. package/dist/blocks/forgot-password-01/forgot-password.d.ts.map +1 -0
  218. package/dist/blocks/forgot-password-01/forgot-password.js +190 -0
  219. package/dist/blocks/forgot-password-01/index.d.ts +3 -0
  220. package/dist/blocks/forgot-password-01/index.d.ts.map +1 -0
  221. package/dist/blocks/forgot-password-01/index.js +1 -0
  222. package/dist/blocks/gallery-01/gallery.d.ts +208 -0
  223. package/dist/blocks/gallery-01/gallery.d.ts.map +1 -0
  224. package/dist/blocks/gallery-01/gallery.js +174 -0
  225. package/dist/blocks/gallery-01/index.d.ts +3 -0
  226. package/dist/blocks/gallery-01/index.d.ts.map +1 -0
  227. package/dist/blocks/gallery-01/index.js +1 -0
  228. package/dist/blocks/gantt-01/gantt.d.ts +290 -0
  229. package/dist/blocks/gantt-01/gantt.d.ts.map +1 -0
  230. package/dist/blocks/gantt-01/gantt.js +224 -0
  231. package/dist/blocks/gantt-01/index.d.ts +3 -0
  232. package/dist/blocks/gantt-01/index.d.ts.map +1 -0
  233. package/dist/blocks/gantt-01/index.js +1 -0
  234. package/dist/blocks/handoff-01/handoff-01.d.ts +326 -0
  235. package/dist/blocks/handoff-01/handoff-01.d.ts.map +1 -0
  236. package/dist/blocks/handoff-01/handoff-01.js +180 -0
  237. package/dist/blocks/handoff-01/index.d.ts +3 -0
  238. package/dist/blocks/handoff-01/index.d.ts.map +1 -0
  239. package/dist/blocks/handoff-01/index.js +1 -0
  240. package/dist/blocks/help-01/help.d.ts +254 -0
  241. package/dist/blocks/help-01/help.d.ts.map +1 -0
  242. package/dist/blocks/help-01/help.js +188 -0
  243. package/dist/blocks/help-01/index.d.ts +3 -0
  244. package/dist/blocks/help-01/index.d.ts.map +1 -0
  245. package/dist/blocks/help-01/index.js +1 -0
  246. package/dist/blocks/hero-01/hero.d.ts +105 -34
  247. package/dist/blocks/hero-01/hero.d.ts.map +1 -1
  248. package/dist/blocks/hero-01/hero.js +23 -15
  249. package/dist/blocks/hero-01/index.d.ts +1 -1
  250. package/dist/blocks/hero-01/index.d.ts.map +1 -1
  251. package/dist/blocks/hero-02/hero-02.d.ts +244 -0
  252. package/dist/blocks/hero-02/hero-02.d.ts.map +1 -0
  253. package/dist/blocks/hero-02/hero-02.js +87 -0
  254. package/dist/blocks/hero-02/index.d.ts +3 -0
  255. package/dist/blocks/hero-02/index.d.ts.map +1 -0
  256. package/dist/blocks/hero-02/index.js +1 -0
  257. package/dist/blocks/hero-03/hero-03.d.ts +247 -0
  258. package/dist/blocks/hero-03/hero-03.d.ts.map +1 -0
  259. package/dist/blocks/hero-03/hero-03.js +93 -0
  260. package/dist/blocks/hero-03/index.d.ts +3 -0
  261. package/dist/blocks/hero-03/index.d.ts.map +1 -0
  262. package/dist/blocks/hero-03/index.js +1 -0
  263. package/dist/blocks/history-01/history-01.d.ts +414 -0
  264. package/dist/blocks/history-01/history-01.d.ts.map +1 -0
  265. package/dist/blocks/history-01/history-01.js +285 -0
  266. package/dist/blocks/history-01/index.d.ts +3 -0
  267. package/dist/blocks/history-01/index.d.ts.map +1 -0
  268. package/dist/blocks/history-01/index.js +1 -0
  269. package/dist/blocks/inbox-01/inbox.d.ts +349 -0
  270. package/dist/blocks/inbox-01/inbox.d.ts.map +1 -0
  271. package/dist/blocks/inbox-01/inbox.js +244 -0
  272. package/dist/blocks/inbox-01/index.d.ts +3 -0
  273. package/dist/blocks/inbox-01/index.d.ts.map +1 -0
  274. package/dist/blocks/inbox-01/index.js +1 -0
  275. package/dist/blocks/index.d.ts +203 -0
  276. package/dist/blocks/index.d.ts.map +1 -1
  277. package/dist/blocks/index.js +118 -0
  278. package/dist/blocks/industries-01/index.d.ts +3 -0
  279. package/dist/blocks/industries-01/index.d.ts.map +1 -0
  280. package/dist/blocks/industries-01/index.js +1 -0
  281. package/dist/blocks/industries-01/industries.d.ts +164 -0
  282. package/dist/blocks/industries-01/industries.d.ts.map +1 -0
  283. package/dist/blocks/industries-01/industries.js +96 -0
  284. package/dist/blocks/intake-01/index.d.ts +3 -0
  285. package/dist/blocks/intake-01/index.d.ts.map +1 -0
  286. package/dist/blocks/intake-01/index.js +1 -0
  287. package/dist/blocks/intake-01/intake-01.d.ts +305 -0
  288. package/dist/blocks/intake-01/intake-01.d.ts.map +1 -0
  289. package/dist/blocks/intake-01/intake-01.js +178 -0
  290. package/dist/blocks/integration-01/index.d.ts +3 -0
  291. package/dist/blocks/integration-01/index.d.ts.map +1 -0
  292. package/dist/blocks/integration-01/index.js +1 -0
  293. package/dist/blocks/integration-01/integration.d.ts +226 -0
  294. package/dist/blocks/integration-01/integration.d.ts.map +1 -0
  295. package/dist/blocks/integration-01/integration.js +170 -0
  296. package/dist/blocks/invite-user-01/index.d.ts +3 -0
  297. package/dist/blocks/invite-user-01/index.d.ts.map +1 -0
  298. package/dist/blocks/invite-user-01/index.js +1 -0
  299. package/dist/blocks/invite-user-01/invite-user.d.ts +317 -0
  300. package/dist/blocks/invite-user-01/invite-user.d.ts.map +1 -0
  301. package/dist/blocks/invite-user-01/invite-user.js +228 -0
  302. package/dist/blocks/issue-detail-01/index.d.ts +3 -0
  303. package/dist/blocks/issue-detail-01/index.d.ts.map +1 -0
  304. package/dist/blocks/issue-detail-01/index.js +1 -0
  305. package/dist/blocks/issue-detail-01/issue-detail.d.ts +355 -0
  306. package/dist/blocks/issue-detail-01/issue-detail.d.ts.map +1 -0
  307. package/dist/blocks/issue-detail-01/issue-detail.js +187 -0
  308. package/dist/blocks/issue-list-01/index.d.ts +3 -0
  309. package/dist/blocks/issue-list-01/index.d.ts.map +1 -0
  310. package/dist/blocks/issue-list-01/index.js +1 -0
  311. package/dist/blocks/issue-list-01/issue-list.d.ts +298 -0
  312. package/dist/blocks/issue-list-01/issue-list.d.ts.map +1 -0
  313. package/dist/blocks/issue-list-01/issue-list.js +284 -0
  314. package/dist/blocks/kanban-01/index.d.ts +3 -0
  315. package/dist/blocks/kanban-01/index.d.ts.map +1 -0
  316. package/dist/blocks/kanban-01/index.js +1 -0
  317. package/dist/blocks/kanban-01/kanban.d.ts +278 -0
  318. package/dist/blocks/kanban-01/kanban.d.ts.map +1 -0
  319. package/dist/blocks/kanban-01/kanban.js +144 -0
  320. package/dist/blocks/leaderboard-01/index.d.ts +3 -0
  321. package/dist/blocks/leaderboard-01/index.d.ts.map +1 -0
  322. package/dist/blocks/leaderboard-01/index.js +1 -0
  323. package/dist/blocks/leaderboard-01/leaderboard.d.ts +250 -0
  324. package/dist/blocks/leaderboard-01/leaderboard.d.ts.map +1 -0
  325. package/dist/blocks/leaderboard-01/leaderboard.js +121 -0
  326. package/dist/blocks/login-01/index.d.ts +3 -0
  327. package/dist/blocks/login-01/index.d.ts.map +1 -0
  328. package/dist/blocks/login-01/index.js +1 -0
  329. package/dist/blocks/login-01/login-01.d.ts +356 -0
  330. package/dist/blocks/login-01/login-01.d.ts.map +1 -0
  331. package/dist/blocks/login-01/login-01.js +249 -0
  332. package/dist/blocks/logo-cloud-01/index.d.ts +3 -0
  333. package/dist/blocks/logo-cloud-01/index.d.ts.map +1 -0
  334. package/dist/blocks/logo-cloud-01/index.js +1 -0
  335. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts +181 -0
  336. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts.map +1 -0
  337. package/dist/blocks/logo-cloud-01/logo-cloud.js +118 -0
  338. package/dist/blocks/magic-link-01/index.d.ts +3 -0
  339. package/dist/blocks/magic-link-01/index.d.ts.map +1 -0
  340. package/dist/blocks/magic-link-01/index.js +1 -0
  341. package/dist/blocks/magic-link-01/magic-link-01.d.ts +367 -0
  342. package/dist/blocks/magic-link-01/magic-link-01.d.ts.map +1 -0
  343. package/dist/blocks/magic-link-01/magic-link-01.js +233 -0
  344. package/dist/blocks/member-list-01/index.d.ts +3 -0
  345. package/dist/blocks/member-list-01/index.d.ts.map +1 -0
  346. package/dist/blocks/member-list-01/index.js +1 -0
  347. package/dist/blocks/member-list-01/member-list.d.ts +192 -0
  348. package/dist/blocks/member-list-01/member-list.d.ts.map +1 -0
  349. package/dist/blocks/member-list-01/member-list.js +142 -0
  350. package/dist/blocks/milestone-timeline-01/index.d.ts +3 -0
  351. package/dist/blocks/milestone-timeline-01/index.d.ts.map +1 -0
  352. package/dist/blocks/milestone-timeline-01/index.js +1 -0
  353. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts +217 -0
  354. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts.map +1 -0
  355. package/dist/blocks/milestone-timeline-01/milestone-timeline.js +173 -0
  356. package/dist/blocks/newsletter-01/index.d.ts +3 -0
  357. package/dist/blocks/newsletter-01/index.d.ts.map +1 -0
  358. package/dist/blocks/newsletter-01/index.js +1 -0
  359. package/dist/blocks/newsletter-01/newsletter.d.ts +216 -0
  360. package/dist/blocks/newsletter-01/newsletter.d.ts.map +1 -0
  361. package/dist/blocks/newsletter-01/newsletter.js +102 -0
  362. package/dist/blocks/notification-center-01/index.d.ts +3 -0
  363. package/dist/blocks/notification-center-01/index.d.ts.map +1 -0
  364. package/dist/blocks/notification-center-01/index.js +1 -0
  365. package/dist/blocks/notification-center-01/notification-center-01.d.ts +341 -0
  366. package/dist/blocks/notification-center-01/notification-center-01.d.ts.map +1 -0
  367. package/dist/blocks/notification-center-01/notification-center-01.js +203 -0
  368. package/dist/blocks/offer-01/index.d.ts +3 -0
  369. package/dist/blocks/offer-01/index.d.ts.map +1 -0
  370. package/dist/blocks/offer-01/index.js +1 -0
  371. package/dist/blocks/offer-01/offer.d.ts +139 -0
  372. package/dist/blocks/offer-01/offer.d.ts.map +1 -0
  373. package/dist/blocks/offer-01/offer.js +81 -0
  374. package/dist/blocks/offering-01/index.d.ts +3 -0
  375. package/dist/blocks/offering-01/index.d.ts.map +1 -0
  376. package/dist/blocks/offering-01/index.js +1 -0
  377. package/dist/blocks/offering-01/offering.d.ts +245 -0
  378. package/dist/blocks/offering-01/offering.d.ts.map +1 -0
  379. package/dist/blocks/offering-01/offering.js +144 -0
  380. package/dist/blocks/offering-categories-01/index.d.ts +3 -0
  381. package/dist/blocks/offering-categories-01/index.d.ts.map +1 -0
  382. package/dist/blocks/offering-categories-01/index.js +1 -0
  383. package/dist/blocks/offering-categories-01/offering-categories.d.ts +248 -0
  384. package/dist/blocks/offering-categories-01/offering-categories.d.ts.map +1 -0
  385. package/dist/blocks/offering-categories-01/offering-categories.js +153 -0
  386. package/dist/blocks/offering-list-01/index.d.ts +3 -0
  387. package/dist/blocks/offering-list-01/index.d.ts.map +1 -0
  388. package/dist/blocks/offering-list-01/index.js +1 -0
  389. package/dist/blocks/offering-list-01/offering-list.d.ts +362 -0
  390. package/dist/blocks/offering-list-01/offering-list.d.ts.map +1 -0
  391. package/dist/blocks/offering-list-01/offering-list.js +366 -0
  392. package/dist/blocks/onboarding-01/index.d.ts +3 -0
  393. package/dist/blocks/onboarding-01/index.d.ts.map +1 -0
  394. package/dist/blocks/onboarding-01/index.js +1 -0
  395. package/dist/blocks/onboarding-01/onboarding.d.ts +199 -0
  396. package/dist/blocks/onboarding-01/onboarding.d.ts.map +1 -0
  397. package/dist/blocks/onboarding-01/onboarding.js +182 -0
  398. package/dist/blocks/ops-checklist-01/index.d.ts +3 -0
  399. package/dist/blocks/ops-checklist-01/index.d.ts.map +1 -0
  400. package/dist/blocks/ops-checklist-01/index.js +1 -0
  401. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts +308 -0
  402. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts.map +1 -0
  403. package/dist/blocks/ops-checklist-01/ops-checklist-01.js +165 -0
  404. package/dist/blocks/page-header-01/index.d.ts +1 -1
  405. package/dist/blocks/page-header-01/index.d.ts.map +1 -1
  406. package/dist/blocks/page-header-01/page-header.d.ts +131 -11
  407. package/dist/blocks/page-header-01/page-header.d.ts.map +1 -1
  408. package/dist/blocks/page-header-01/page-header.js +33 -9
  409. package/dist/blocks/passkey-01/index.d.ts +3 -0
  410. package/dist/blocks/passkey-01/index.d.ts.map +1 -0
  411. package/dist/blocks/passkey-01/index.js +1 -0
  412. package/dist/blocks/passkey-01/passkey-01.d.ts +334 -0
  413. package/dist/blocks/passkey-01/passkey-01.d.ts.map +1 -0
  414. package/dist/blocks/passkey-01/passkey-01.js +192 -0
  415. package/dist/blocks/permission-matrix-01/index.d.ts +3 -0
  416. package/dist/blocks/permission-matrix-01/index.d.ts.map +1 -0
  417. package/dist/blocks/permission-matrix-01/index.js +1 -0
  418. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts +282 -0
  419. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts.map +1 -0
  420. package/dist/blocks/permission-matrix-01/permission-matrix.js +173 -0
  421. package/dist/blocks/pricing-01/index.d.ts +1 -0
  422. package/dist/blocks/pricing-01/index.d.ts.map +1 -1
  423. package/dist/blocks/pricing-01/pricing.d.ts +118 -1
  424. package/dist/blocks/pricing-01/pricing.d.ts.map +1 -1
  425. package/dist/blocks/pricing-01/pricing.js +9 -2
  426. package/dist/blocks/pricing-compare-01/index.d.ts +3 -0
  427. package/dist/blocks/pricing-compare-01/index.d.ts.map +1 -0
  428. package/dist/blocks/pricing-compare-01/index.js +1 -0
  429. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts +277 -0
  430. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts.map +1 -0
  431. package/dist/blocks/pricing-compare-01/pricing-compare.js +126 -0
  432. package/dist/blocks/project-01/index.d.ts +3 -0
  433. package/dist/blocks/project-01/index.d.ts.map +1 -0
  434. package/dist/blocks/project-01/index.js +1 -0
  435. package/dist/blocks/project-01/project.d.ts +323 -0
  436. package/dist/blocks/project-01/project.d.ts.map +1 -0
  437. package/dist/blocks/project-01/project.js +247 -0
  438. package/dist/blocks/project-dashboard-01/index.d.ts +3 -0
  439. package/dist/blocks/project-dashboard-01/index.d.ts.map +1 -0
  440. package/dist/blocks/project-dashboard-01/index.js +1 -0
  441. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts +200 -0
  442. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts.map +1 -0
  443. package/dist/blocks/project-dashboard-01/project-dashboard.js +124 -0
  444. package/dist/blocks/project-list-01/index.d.ts +3 -0
  445. package/dist/blocks/project-list-01/index.d.ts.map +1 -0
  446. package/dist/blocks/project-list-01/index.js +1 -0
  447. package/dist/blocks/project-list-01/project-list.d.ts +301 -0
  448. package/dist/blocks/project-list-01/project-list.d.ts.map +1 -0
  449. package/dist/blocks/project-list-01/project-list.js +305 -0
  450. package/dist/blocks/provisioning-01/index.d.ts +3 -0
  451. package/dist/blocks/provisioning-01/index.d.ts.map +1 -0
  452. package/dist/blocks/provisioning-01/index.js +1 -0
  453. package/dist/blocks/provisioning-01/provisioning.d.ts +357 -0
  454. package/dist/blocks/provisioning-01/provisioning.d.ts.map +1 -0
  455. package/dist/blocks/provisioning-01/provisioning.js +230 -0
  456. package/dist/blocks/quick-view-01/index.d.ts +3 -0
  457. package/dist/blocks/quick-view-01/index.d.ts.map +1 -0
  458. package/dist/blocks/quick-view-01/index.js +1 -0
  459. package/dist/blocks/quick-view-01/quick-view.d.ts +215 -0
  460. package/dist/blocks/quick-view-01/quick-view.d.ts.map +1 -0
  461. package/dist/blocks/quick-view-01/quick-view.js +136 -0
  462. package/dist/blocks/rate-card-01/index.d.ts +3 -0
  463. package/dist/blocks/rate-card-01/index.d.ts.map +1 -0
  464. package/dist/blocks/rate-card-01/index.js +1 -0
  465. package/dist/blocks/rate-card-01/rate-card.d.ts +184 -0
  466. package/dist/blocks/rate-card-01/rate-card.d.ts.map +1 -0
  467. package/dist/blocks/rate-card-01/rate-card.js +79 -0
  468. package/dist/blocks/reset-password-01/index.d.ts +3 -0
  469. package/dist/blocks/reset-password-01/index.d.ts.map +1 -0
  470. package/dist/blocks/reset-password-01/index.js +1 -0
  471. package/dist/blocks/reset-password-01/reset-password.d.ts +276 -0
  472. package/dist/blocks/reset-password-01/reset-password.d.ts.map +1 -0
  473. package/dist/blocks/reset-password-01/reset-password.js +175 -0
  474. package/dist/blocks/resource-list-01/index.d.ts +3 -0
  475. package/dist/blocks/resource-list-01/index.d.ts.map +1 -0
  476. package/dist/blocks/resource-list-01/index.js +1 -0
  477. package/dist/blocks/resource-list-01/resource-list.d.ts +237 -0
  478. package/dist/blocks/resource-list-01/resource-list.d.ts.map +1 -0
  479. package/dist/blocks/resource-list-01/resource-list.js +154 -0
  480. package/dist/blocks/retention-01/index.d.ts +3 -0
  481. package/dist/blocks/retention-01/index.d.ts.map +1 -0
  482. package/dist/blocks/retention-01/index.js +1 -0
  483. package/dist/blocks/retention-01/retention.d.ts +255 -0
  484. package/dist/blocks/retention-01/retention.d.ts.map +1 -0
  485. package/dist/blocks/retention-01/retention.js +145 -0
  486. package/dist/blocks/run-console-01/run-console.d.ts +14 -1
  487. package/dist/blocks/run-console-01/run-console.d.ts.map +1 -1
  488. package/dist/blocks/run-console-01/run-console.js +4 -2
  489. package/dist/blocks/services-01/index.d.ts +3 -0
  490. package/dist/blocks/services-01/index.d.ts.map +1 -0
  491. package/dist/blocks/services-01/index.js +1 -0
  492. package/dist/blocks/services-01/services.d.ts +159 -0
  493. package/dist/blocks/services-01/services.d.ts.map +1 -0
  494. package/dist/blocks/services-01/services.js +81 -0
  495. package/dist/blocks/settings-integrations-01/index.d.ts +3 -0
  496. package/dist/blocks/settings-integrations-01/index.d.ts.map +1 -0
  497. package/dist/blocks/settings-integrations-01/index.js +1 -0
  498. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts +246 -0
  499. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts.map +1 -0
  500. package/dist/blocks/settings-integrations-01/settings-integrations.js +213 -0
  501. package/dist/blocks/settings-members-01/index.d.ts +3 -0
  502. package/dist/blocks/settings-members-01/index.d.ts.map +1 -0
  503. package/dist/blocks/settings-members-01/index.js +1 -0
  504. package/dist/blocks/settings-members-01/settings-members.d.ts +396 -0
  505. package/dist/blocks/settings-members-01/settings-members.d.ts.map +1 -0
  506. package/dist/blocks/settings-members-01/settings-members.js +255 -0
  507. package/dist/blocks/settings-notifications-01/index.d.ts +3 -0
  508. package/dist/blocks/settings-notifications-01/index.d.ts.map +1 -0
  509. package/dist/blocks/settings-notifications-01/index.js +1 -0
  510. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts +270 -0
  511. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts.map +1 -0
  512. package/dist/blocks/settings-notifications-01/settings-notifications.js +202 -0
  513. package/dist/blocks/settings-security-01/index.d.ts +3 -0
  514. package/dist/blocks/settings-security-01/index.d.ts.map +1 -0
  515. package/dist/blocks/settings-security-01/index.js +1 -0
  516. package/dist/blocks/settings-security-01/settings-security.d.ts +439 -0
  517. package/dist/blocks/settings-security-01/settings-security.d.ts.map +1 -0
  518. package/dist/blocks/settings-security-01/settings-security.js +244 -0
  519. package/dist/blocks/shortlist-01/index.d.ts +3 -0
  520. package/dist/blocks/shortlist-01/index.d.ts.map +1 -0
  521. package/dist/blocks/shortlist-01/index.js +1 -0
  522. package/dist/blocks/shortlist-01/shortlist-01.d.ts +337 -0
  523. package/dist/blocks/shortlist-01/shortlist-01.d.ts.map +1 -0
  524. package/dist/blocks/shortlist-01/shortlist-01.js +191 -0
  525. package/dist/blocks/showcase-01/index.d.ts +3 -0
  526. package/dist/blocks/showcase-01/index.d.ts.map +1 -0
  527. package/dist/blocks/showcase-01/index.js +1 -0
  528. package/dist/blocks/showcase-01/showcase-01.d.ts +238 -0
  529. package/dist/blocks/showcase-01/showcase-01.d.ts.map +1 -0
  530. package/dist/blocks/showcase-01/showcase-01.js +84 -0
  531. package/dist/blocks/signup-01/index.d.ts +3 -0
  532. package/dist/blocks/signup-01/index.d.ts.map +1 -0
  533. package/dist/blocks/signup-01/index.js +1 -0
  534. package/dist/blocks/signup-01/signup-01.d.ts +405 -0
  535. package/dist/blocks/signup-01/signup-01.d.ts.map +1 -0
  536. package/dist/blocks/signup-01/signup-01.js +209 -0
  537. package/dist/blocks/site-footer/site-footer.d.ts +34 -1
  538. package/dist/blocks/site-footer/site-footer.d.ts.map +1 -1
  539. package/dist/blocks/site-footer/site-footer.js +24 -2
  540. package/dist/blocks/site-header/site-header.js +1 -1
  541. package/dist/blocks/site-navbar/site-navbar.d.ts +37 -3
  542. package/dist/blocks/site-navbar/site-navbar.d.ts.map +1 -1
  543. package/dist/blocks/site-navbar/site-navbar.js +33 -4
  544. package/dist/blocks/spec-table-01/index.d.ts +3 -0
  545. package/dist/blocks/spec-table-01/index.d.ts.map +1 -0
  546. package/dist/blocks/spec-table-01/index.js +1 -0
  547. package/dist/blocks/spec-table-01/spec-table.d.ts +293 -0
  548. package/dist/blocks/spec-table-01/spec-table.d.ts.map +1 -0
  549. package/dist/blocks/spec-table-01/spec-table.js +217 -0
  550. package/dist/blocks/stack-grid-01/stack-grid.d.ts +13 -0
  551. package/dist/blocks/stack-grid-01/stack-grid.d.ts.map +1 -1
  552. package/dist/blocks/stack-grid-01/stack-grid.js +14 -1
  553. package/dist/blocks/story-01/index.d.ts +3 -0
  554. package/dist/blocks/story-01/index.d.ts.map +1 -0
  555. package/dist/blocks/story-01/index.js +1 -0
  556. package/dist/blocks/story-01/story.d.ts +153 -0
  557. package/dist/blocks/story-01/story.d.ts.map +1 -0
  558. package/dist/blocks/story-01/story.js +103 -0
  559. package/dist/blocks/summary-01/index.d.ts +3 -0
  560. package/dist/blocks/summary-01/index.d.ts.map +1 -0
  561. package/dist/blocks/summary-01/index.js +1 -0
  562. package/dist/blocks/summary-01/summary.d.ts +300 -0
  563. package/dist/blocks/summary-01/summary.d.ts.map +1 -0
  564. package/dist/blocks/summary-01/summary.js +174 -0
  565. package/dist/blocks/team-01/index.d.ts +3 -0
  566. package/dist/blocks/team-01/index.d.ts.map +1 -0
  567. package/dist/blocks/team-01/index.js +1 -0
  568. package/dist/blocks/team-01/team.d.ts +176 -0
  569. package/dist/blocks/team-01/team.d.ts.map +1 -0
  570. package/dist/blocks/team-01/team.js +117 -0
  571. package/dist/blocks/testimonial-01/index.d.ts +3 -0
  572. package/dist/blocks/testimonial-01/index.d.ts.map +1 -0
  573. package/dist/blocks/testimonial-01/index.js +1 -0
  574. package/dist/blocks/testimonial-01/testimonial.d.ts +173 -0
  575. package/dist/blocks/testimonial-01/testimonial.d.ts.map +1 -0
  576. package/dist/blocks/testimonial-01/testimonial.js +87 -0
  577. package/dist/blocks/todo-01/index.d.ts +3 -0
  578. package/dist/blocks/todo-01/index.d.ts.map +1 -0
  579. package/dist/blocks/todo-01/index.js +1 -0
  580. package/dist/blocks/todo-01/todo.d.ts +286 -0
  581. package/dist/blocks/todo-01/todo.d.ts.map +1 -0
  582. package/dist/blocks/todo-01/todo.js +149 -0
  583. package/dist/blocks/trend-01/index.d.ts +3 -0
  584. package/dist/blocks/trend-01/index.d.ts.map +1 -0
  585. package/dist/blocks/trend-01/index.js +1 -0
  586. package/dist/blocks/trend-01/trend.d.ts +184 -0
  587. package/dist/blocks/trend-01/trend.d.ts.map +1 -0
  588. package/dist/blocks/trend-01/trend.js +99 -0
  589. package/dist/blocks/trust-strip-01/index.d.ts +3 -0
  590. package/dist/blocks/trust-strip-01/index.d.ts.map +1 -0
  591. package/dist/blocks/trust-strip-01/index.js +1 -0
  592. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts +139 -0
  593. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts.map +1 -0
  594. package/dist/blocks/trust-strip-01/trust-strip-01.js +58 -0
  595. package/dist/blocks/two-factor-01/index.d.ts +3 -0
  596. package/dist/blocks/two-factor-01/index.d.ts.map +1 -0
  597. package/dist/blocks/two-factor-01/index.js +1 -0
  598. package/dist/blocks/two-factor-01/two-factor-01.d.ts +440 -0
  599. package/dist/blocks/two-factor-01/two-factor-01.d.ts.map +1 -0
  600. package/dist/blocks/two-factor-01/two-factor-01.js +273 -0
  601. package/dist/blocks/user-profile-01/index.d.ts +3 -0
  602. package/dist/blocks/user-profile-01/index.d.ts.map +1 -0
  603. package/dist/blocks/user-profile-01/index.js +1 -0
  604. package/dist/blocks/user-profile-01/user-profile-01.d.ts +258 -0
  605. package/dist/blocks/user-profile-01/user-profile-01.d.ts.map +1 -0
  606. package/dist/blocks/user-profile-01/user-profile-01.js +158 -0
  607. package/dist/blocks/verify-email-01/index.d.ts +3 -0
  608. package/dist/blocks/verify-email-01/index.d.ts.map +1 -0
  609. package/dist/blocks/verify-email-01/index.js +1 -0
  610. package/dist/blocks/verify-email-01/verify-email.d.ts +262 -0
  611. package/dist/blocks/verify-email-01/verify-email.d.ts.map +1 -0
  612. package/dist/blocks/verify-email-01/verify-email.js +190 -0
  613. package/dist/blocks/waitlist-01/index.d.ts +3 -0
  614. package/dist/blocks/waitlist-01/index.d.ts.map +1 -0
  615. package/dist/blocks/waitlist-01/index.js +1 -0
  616. package/dist/blocks/waitlist-01/waitlist.d.ts +254 -0
  617. package/dist/blocks/waitlist-01/waitlist.d.ts.map +1 -0
  618. package/dist/blocks/waitlist-01/waitlist.js +75 -0
  619. package/dist/catalog.d.ts.map +1 -1
  620. package/dist/catalog.js +1641 -1
  621. package/dist/components/index.d.ts +114 -0
  622. package/dist/components/index.d.ts.map +1 -1
  623. package/dist/components/index.js +134 -0
  624. package/dist/components/ui/accordion.d.ts.map +1 -1
  625. package/dist/components/ui/accordion.js +9 -2
  626. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  627. package/dist/components/ui/alert-dialog.js +22 -4
  628. package/dist/components/ui/announcement.d.ts +169 -0
  629. package/dist/components/ui/announcement.d.ts.map +1 -0
  630. package/dist/components/ui/announcement.js +123 -0
  631. package/dist/components/ui/avatar-group.d.ts +176 -0
  632. package/dist/components/ui/avatar-group.d.ts.map +1 -0
  633. package/dist/components/ui/avatar-group.js +135 -0
  634. package/dist/components/ui/billing-source.d.ts +293 -0
  635. package/dist/components/ui/billing-source.d.ts.map +1 -0
  636. package/dist/components/ui/billing-source.js +136 -0
  637. package/dist/components/ui/button.d.ts +16 -1
  638. package/dist/components/ui/button.d.ts.map +1 -1
  639. package/dist/components/ui/button.js +17 -2
  640. package/dist/components/ui/calendar.d.ts +9 -0
  641. package/dist/components/ui/calendar.d.ts.map +1 -1
  642. package/dist/components/ui/calendar.js +30 -2
  643. package/dist/components/ui/carousel.d.ts +7 -0
  644. package/dist/components/ui/carousel.d.ts.map +1 -1
  645. package/dist/components/ui/carousel.js +58 -1
  646. package/dist/components/ui/chart.d.ts +334 -0
  647. package/dist/components/ui/chart.d.ts.map +1 -0
  648. package/dist/components/ui/chart.js +369 -0
  649. package/dist/components/ui/checkbox.d.ts +10 -0
  650. package/dist/components/ui/checkbox.d.ts.map +1 -1
  651. package/dist/components/ui/checkbox.js +19 -1
  652. package/dist/components/ui/checklist.d.ts +262 -0
  653. package/dist/components/ui/checklist.d.ts.map +1 -0
  654. package/dist/components/ui/checklist.js +135 -0
  655. package/dist/components/ui/choice-card.d.ts +273 -0
  656. package/dist/components/ui/choice-card.d.ts.map +1 -0
  657. package/dist/components/ui/choice-card.js +138 -0
  658. package/dist/components/ui/code-block.d.ts +182 -0
  659. package/dist/components/ui/code-block.d.ts.map +1 -0
  660. package/dist/components/ui/code-block.js +108 -0
  661. package/dist/components/ui/cohort-grid.d.ts +210 -0
  662. package/dist/components/ui/cohort-grid.d.ts.map +1 -0
  663. package/dist/components/ui/cohort-grid.js +202 -0
  664. package/dist/components/ui/collapsible.d.ts +11 -0
  665. package/dist/components/ui/collapsible.d.ts.map +1 -1
  666. package/dist/components/ui/collapsible.js +13 -2
  667. package/dist/components/ui/combobox.d.ts +4 -1
  668. package/dist/components/ui/combobox.d.ts.map +1 -1
  669. package/dist/components/ui/combobox.js +20 -4
  670. package/dist/components/ui/command-palette.d.ts +11 -0
  671. package/dist/components/ui/command-palette.d.ts.map +1 -1
  672. package/dist/components/ui/command-palette.js +49 -3
  673. package/dist/components/ui/contribution-graph.d.ts +156 -0
  674. package/dist/components/ui/contribution-graph.d.ts.map +1 -0
  675. package/dist/components/ui/contribution-graph.js +170 -0
  676. package/dist/components/ui/creatable-combobox.d.ts +153 -0
  677. package/dist/components/ui/creatable-combobox.d.ts.map +1 -0
  678. package/dist/components/ui/creatable-combobox.js +285 -0
  679. package/dist/components/ui/data-toolbar.d.ts +133 -0
  680. package/dist/components/ui/data-toolbar.d.ts.map +1 -0
  681. package/dist/components/ui/data-toolbar.js +67 -0
  682. package/dist/components/ui/date-picker.d.ts.map +1 -1
  683. package/dist/components/ui/date-picker.js +9 -1
  684. package/dist/components/ui/diagram.d.ts +38 -7
  685. package/dist/components/ui/diagram.d.ts.map +1 -1
  686. package/dist/components/ui/diagram.js +134 -52
  687. package/dist/components/ui/dialog.d.ts +31 -2
  688. package/dist/components/ui/dialog.d.ts.map +1 -1
  689. package/dist/components/ui/dialog.js +40 -6
  690. package/dist/components/ui/drawer.d.ts +270 -0
  691. package/dist/components/ui/drawer.d.ts.map +1 -0
  692. package/dist/components/ui/drawer.js +241 -0
  693. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  694. package/dist/components/ui/dropdown-menu.js +6 -1
  695. package/dist/components/ui/dropzone.d.ts +147 -0
  696. package/dist/components/ui/dropzone.d.ts.map +1 -0
  697. package/dist/components/ui/dropzone.js +141 -0
  698. package/dist/components/ui/emoji-picker.d.ts +328 -0
  699. package/dist/components/ui/emoji-picker.d.ts.map +1 -0
  700. package/dist/components/ui/emoji-picker.js +278 -0
  701. package/dist/components/ui/fact-list.d.ts +17 -0
  702. package/dist/components/ui/fact-list.d.ts.map +1 -1
  703. package/dist/components/ui/fact-list.js +18 -1
  704. package/dist/components/ui/file-upload.d.ts +152 -0
  705. package/dist/components/ui/file-upload.d.ts.map +1 -0
  706. package/dist/components/ui/file-upload.js +101 -0
  707. package/dist/components/ui/filter-panel.d.ts +164 -0
  708. package/dist/components/ui/filter-panel.d.ts.map +1 -0
  709. package/dist/components/ui/filter-panel.js +91 -0
  710. package/dist/components/ui/form-dialog.d.ts +257 -0
  711. package/dist/components/ui/form-dialog.d.ts.map +1 -0
  712. package/dist/components/ui/form-dialog.js +176 -0
  713. package/dist/components/ui/form-wizard.d.ts +251 -0
  714. package/dist/components/ui/form-wizard.d.ts.map +1 -0
  715. package/dist/components/ui/form-wizard.js +151 -0
  716. package/dist/components/ui/image-list-field.d.ts +232 -0
  717. package/dist/components/ui/image-list-field.d.ts.map +1 -0
  718. package/dist/components/ui/image-list-field.js +168 -0
  719. package/dist/components/ui/image-zoom.d.ts +164 -0
  720. package/dist/components/ui/image-zoom.d.ts.map +1 -0
  721. package/dist/components/ui/image-zoom.js +169 -0
  722. package/dist/components/ui/intensity-grid.d.ts +270 -0
  723. package/dist/components/ui/intensity-grid.d.ts.map +1 -0
  724. package/dist/components/ui/intensity-grid.js +211 -0
  725. package/dist/components/ui/lifecycle-button.d.ts +276 -0
  726. package/dist/components/ui/lifecycle-button.d.ts.map +1 -0
  727. package/dist/components/ui/lifecycle-button.js +144 -0
  728. package/dist/components/ui/lightbox.d.ts +165 -0
  729. package/dist/components/ui/lightbox.d.ts.map +1 -0
  730. package/dist/components/ui/lightbox.js +130 -0
  731. package/dist/components/ui/list-panel.d.ts +288 -0
  732. package/dist/components/ui/list-panel.d.ts.map +1 -0
  733. package/dist/components/ui/list-panel.js +139 -0
  734. package/dist/components/ui/mega-menu.d.ts +244 -0
  735. package/dist/components/ui/mega-menu.d.ts.map +1 -0
  736. package/dist/components/ui/mega-menu.js +97 -0
  737. package/dist/components/ui/menubar.d.ts +9 -0
  738. package/dist/components/ui/menubar.d.ts.map +1 -1
  739. package/dist/components/ui/menubar.js +10 -1
  740. package/dist/components/ui/metric.d.ts +123 -0
  741. package/dist/components/ui/metric.d.ts.map +1 -0
  742. package/dist/components/ui/metric.js +68 -0
  743. package/dist/components/ui/mini-calendar.d.ts +143 -0
  744. package/dist/components/ui/mini-calendar.d.ts.map +1 -0
  745. package/dist/components/ui/mini-calendar.js +261 -0
  746. package/dist/components/ui/mode-toggle.d.ts +102 -0
  747. package/dist/components/ui/mode-toggle.d.ts.map +1 -0
  748. package/dist/components/ui/mode-toggle.js +83 -0
  749. package/dist/components/ui/money-field.d.ts +200 -0
  750. package/dist/components/ui/money-field.d.ts.map +1 -0
  751. package/dist/components/ui/money-field.js +215 -0
  752. package/dist/components/ui/multi-combobox.d.ts +181 -0
  753. package/dist/components/ui/multi-combobox.d.ts.map +1 -0
  754. package/dist/components/ui/multi-combobox.js +297 -0
  755. package/dist/components/ui/native-select.d.ts.map +1 -1
  756. package/dist/components/ui/native-select.js +8 -1
  757. package/dist/components/ui/navigation-menu.d.ts +7 -0
  758. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  759. package/dist/components/ui/navigation-menu.js +8 -1
  760. package/dist/components/ui/nested-tabs.d.ts +188 -0
  761. package/dist/components/ui/nested-tabs.d.ts.map +1 -0
  762. package/dist/components/ui/nested-tabs.js +75 -0
  763. package/dist/components/ui/number-field.d.ts +40 -7
  764. package/dist/components/ui/number-field.d.ts.map +1 -1
  765. package/dist/components/ui/number-field.js +37 -7
  766. package/dist/components/ui/overflow-actions.d.ts +169 -0
  767. package/dist/components/ui/overflow-actions.d.ts.map +1 -0
  768. package/dist/components/ui/overflow-actions.js +266 -0
  769. package/dist/components/ui/pack-swatch.d.ts +177 -0
  770. package/dist/components/ui/pack-swatch.d.ts.map +1 -0
  771. package/dist/components/ui/pack-swatch.js +117 -0
  772. package/dist/components/ui/pack-switcher.d.ts +221 -0
  773. package/dist/components/ui/pack-switcher.d.ts.map +1 -0
  774. package/dist/components/ui/pack-switcher.js +94 -0
  775. package/dist/components/ui/pagination.d.ts +22 -0
  776. package/dist/components/ui/pagination.d.ts.map +1 -1
  777. package/dist/components/ui/pagination.js +23 -1
  778. package/dist/components/ui/password-field.d.ts +122 -0
  779. package/dist/components/ui/password-field.d.ts.map +1 -0
  780. package/dist/components/ui/password-field.js +69 -0
  781. package/dist/components/ui/pill.d.ts +172 -0
  782. package/dist/components/ui/pill.d.ts.map +1 -0
  783. package/dist/components/ui/pill.js +102 -0
  784. package/dist/components/ui/platform-modifier-key.d.ts +129 -0
  785. package/dist/components/ui/platform-modifier-key.d.ts.map +1 -0
  786. package/dist/components/ui/platform-modifier-key.js +125 -0
  787. package/dist/components/ui/popover.d.ts.map +1 -1
  788. package/dist/components/ui/popover.js +8 -1
  789. package/dist/components/ui/price.d.ts +144 -0
  790. package/dist/components/ui/price.d.ts.map +1 -0
  791. package/dist/components/ui/price.js +107 -0
  792. package/dist/components/ui/progress.d.ts +55 -1
  793. package/dist/components/ui/progress.d.ts.map +1 -1
  794. package/dist/components/ui/progress.js +110 -2
  795. package/dist/components/ui/prompt-composer.d.ts +302 -0
  796. package/dist/components/ui/prompt-composer.d.ts.map +1 -0
  797. package/dist/components/ui/prompt-composer.js +145 -0
  798. package/dist/components/ui/proportion-list.d.ts +188 -0
  799. package/dist/components/ui/proportion-list.d.ts.map +1 -0
  800. package/dist/components/ui/proportion-list.js +134 -0
  801. package/dist/components/ui/prose.d.ts +34 -0
  802. package/dist/components/ui/prose.d.ts.map +1 -1
  803. package/dist/components/ui/prose.js +41 -1
  804. package/dist/components/ui/pulse-graph.d.ts +36 -4
  805. package/dist/components/ui/pulse-graph.d.ts.map +1 -1
  806. package/dist/components/ui/pulse-graph.js +174 -60
  807. package/dist/components/ui/radio-group.d.ts +7 -0
  808. package/dist/components/ui/radio-group.d.ts.map +1 -1
  809. package/dist/components/ui/radio-group.js +8 -1
  810. package/dist/components/ui/range-field.d.ts +158 -0
  811. package/dist/components/ui/range-field.d.ts.map +1 -0
  812. package/dist/components/ui/range-field.js +208 -0
  813. package/dist/components/ui/relative-time.d.ts +116 -0
  814. package/dist/components/ui/relative-time.d.ts.map +1 -0
  815. package/dist/components/ui/relative-time.js +67 -0
  816. package/dist/components/ui/reorderable-list.d.ts +262 -0
  817. package/dist/components/ui/reorderable-list.d.ts.map +1 -0
  818. package/dist/components/ui/reorderable-list.js +325 -0
  819. package/dist/components/ui/repeatable-rows.d.ts +241 -0
  820. package/dist/components/ui/repeatable-rows.d.ts.map +1 -0
  821. package/dist/components/ui/repeatable-rows.js +221 -0
  822. package/dist/components/ui/repo-stars.d.ts +165 -0
  823. package/dist/components/ui/repo-stars.d.ts.map +1 -0
  824. package/dist/components/ui/repo-stars.js +92 -0
  825. package/dist/components/ui/resizable.d.ts +24 -0
  826. package/dist/components/ui/resizable.d.ts.map +1 -1
  827. package/dist/components/ui/resizable.js +96 -4
  828. package/dist/components/ui/search-dialog.d.ts +40 -5
  829. package/dist/components/ui/search-dialog.d.ts.map +1 -1
  830. package/dist/components/ui/search-dialog.js +94 -16
  831. package/dist/components/ui/search-field.d.ts +159 -0
  832. package/dist/components/ui/search-field.d.ts.map +1 -0
  833. package/dist/components/ui/search-field.js +98 -0
  834. package/dist/components/ui/section.d.ts +110 -1
  835. package/dist/components/ui/section.d.ts.map +1 -1
  836. package/dist/components/ui/section.js +111 -3
  837. package/dist/components/ui/select.d.ts.map +1 -1
  838. package/dist/components/ui/select.js +9 -1
  839. package/dist/components/ui/selection-toolbar.d.ts +166 -0
  840. package/dist/components/ui/selection-toolbar.d.ts.map +1 -0
  841. package/dist/components/ui/selection-toolbar.js +139 -0
  842. package/dist/components/ui/sidebar.d.ts +29 -0
  843. package/dist/components/ui/sidebar.d.ts.map +1 -1
  844. package/dist/components/ui/sidebar.js +35 -2
  845. package/dist/components/ui/signal-field.d.ts.map +1 -1
  846. package/dist/components/ui/signal-field.js +1 -1
  847. package/dist/components/ui/slider.d.ts +7 -0
  848. package/dist/components/ui/slider.d.ts.map +1 -1
  849. package/dist/components/ui/slider.js +32 -1
  850. package/dist/components/ui/sparkline.d.ts +117 -0
  851. package/dist/components/ui/sparkline.d.ts.map +1 -0
  852. package/dist/components/ui/sparkline.js +113 -0
  853. package/dist/components/ui/spinner.d.ts.map +1 -1
  854. package/dist/components/ui/spinner.js +13 -0
  855. package/dist/components/ui/split-button.d.ts +207 -0
  856. package/dist/components/ui/split-button.d.ts.map +1 -0
  857. package/dist/components/ui/split-button.js +75 -0
  858. package/dist/components/ui/stateful-table.d.ts +345 -0
  859. package/dist/components/ui/stateful-table.d.ts.map +1 -0
  860. package/dist/components/ui/stateful-table.js +169 -0
  861. package/dist/components/ui/status.d.ts +99 -0
  862. package/dist/components/ui/status.d.ts.map +1 -0
  863. package/dist/components/ui/status.js +63 -0
  864. package/dist/components/ui/stepper.d.ts +155 -0
  865. package/dist/components/ui/stepper.d.ts.map +1 -0
  866. package/dist/components/ui/stepper.js +83 -0
  867. package/dist/components/ui/steps.d.ts +141 -0
  868. package/dist/components/ui/steps.d.ts.map +1 -0
  869. package/dist/components/ui/steps.js +128 -0
  870. package/dist/components/ui/switch.d.ts +8 -0
  871. package/dist/components/ui/switch.d.ts.map +1 -1
  872. package/dist/components/ui/switch.js +12 -1
  873. package/dist/components/ui/tabs.d.ts +21 -2
  874. package/dist/components/ui/tabs.d.ts.map +1 -1
  875. package/dist/components/ui/tabs.js +23 -4
  876. package/dist/components/ui/tag-group.d.ts +154 -0
  877. package/dist/components/ui/tag-group.d.ts.map +1 -0
  878. package/dist/components/ui/tag-group.js +111 -0
  879. package/dist/components/ui/task-progress.d.ts +149 -0
  880. package/dist/components/ui/task-progress.d.ts.map +1 -0
  881. package/dist/components/ui/task-progress.js +110 -0
  882. package/dist/components/ui/text-format-toolbar.d.ts +211 -0
  883. package/dist/components/ui/text-format-toolbar.d.ts.map +1 -0
  884. package/dist/components/ui/text-format-toolbar.js +186 -0
  885. package/dist/components/ui/timeline.d.ts.map +1 -1
  886. package/dist/components/ui/timeline.js +10 -1
  887. package/dist/components/ui/toast.d.ts +32 -10
  888. package/dist/components/ui/toast.d.ts.map +1 -1
  889. package/dist/components/ui/toast.js +150 -47
  890. package/dist/components/ui/toggle-group.d.ts +14 -5
  891. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  892. package/dist/components/ui/toggle-group.js +15 -1
  893. package/dist/components/ui/toggle.d.ts.map +1 -1
  894. package/dist/components/ui/toggle.js +9 -1
  895. package/dist/components/ui/tree.d.ts +8 -0
  896. package/dist/components/ui/tree.d.ts.map +1 -1
  897. package/dist/components/ui/tree.js +92 -13
  898. package/dist/components/ui/video-player.d.ts +236 -0
  899. package/dist/components/ui/video-player.d.ts.map +1 -0
  900. package/dist/components/ui/video-player.js +72 -0
  901. package/dist/fonts/inter-latin-400-italic.woff2 +0 -0
  902. package/dist/index.d.ts +112 -0
  903. package/dist/index.d.ts.map +1 -1
  904. package/dist/index.js +72 -0
  905. package/dist/lib/figure.d.ts +149 -0
  906. package/dist/lib/figure.d.ts.map +1 -0
  907. package/dist/lib/figure.js +242 -0
  908. package/dist/lib/utils.d.ts +29 -0
  909. package/dist/lib/utils.d.ts.map +1 -1
  910. package/dist/lib/utils.js +35 -0
  911. package/dist/live/index.d.ts +10 -3
  912. package/dist/live/index.d.ts.map +1 -1
  913. package/dist/live/index.js +12 -3
  914. package/dist/live/run-stream-01/run-stream.d.ts.map +1 -1
  915. package/dist/live/run-stream-01/run-stream.js +6 -5
  916. package/dist/live/tool-ledger-01/index.d.ts +3 -0
  917. package/dist/live/tool-ledger-01/index.d.ts.map +1 -0
  918. package/dist/live/tool-ledger-01/index.js +1 -0
  919. package/dist/live/tool-ledger-01/tool-ledger.d.ts +348 -0
  920. package/dist/live/tool-ledger-01/tool-ledger.d.ts.map +1 -0
  921. package/dist/live/tool-ledger-01/tool-ledger.js +245 -0
  922. package/dist/pages/about-page/index.d.ts +306 -0
  923. package/dist/pages/about-page/index.d.ts.map +1 -0
  924. package/dist/pages/about-page/index.js +161 -0
  925. package/dist/pages/blog-post-page/index.d.ts +36 -15
  926. package/dist/pages/blog-post-page/index.d.ts.map +1 -1
  927. package/dist/pages/blog-post-page/index.js +35 -10
  928. package/dist/pages/careers-page/index.d.ts +288 -0
  929. package/dist/pages/careers-page/index.d.ts.map +1 -0
  930. package/dist/pages/careers-page/index.js +182 -0
  931. package/dist/pages/changelog-page/index.d.ts +255 -0
  932. package/dist/pages/changelog-page/index.d.ts.map +1 -0
  933. package/dist/pages/changelog-page/index.js +86 -0
  934. package/dist/pages/contact-page/index.d.ts +261 -0
  935. package/dist/pages/contact-page/index.d.ts.map +1 -0
  936. package/dist/pages/contact-page/index.js +136 -0
  937. package/dist/pages/docs-shell/docs-shell.d.ts +126 -16
  938. package/dist/pages/docs-shell/docs-shell.d.ts.map +1 -1
  939. package/dist/pages/docs-shell/docs-shell.js +229 -28
  940. package/dist/pages/error-page/index.d.ts +188 -0
  941. package/dist/pages/error-page/index.d.ts.map +1 -0
  942. package/dist/pages/error-page/index.js +102 -0
  943. package/dist/pages/index.d.ts +10 -0
  944. package/dist/pages/index.d.ts.map +1 -1
  945. package/dist/pages/index.js +14 -0
  946. package/dist/pages/legal-page/index.d.ts +194 -0
  947. package/dist/pages/legal-page/index.d.ts.map +1 -0
  948. package/dist/pages/legal-page/index.js +99 -0
  949. package/dist/pages/not-found-page/index.d.ts.map +1 -1
  950. package/dist/pages/not-found-page/index.js +4 -3
  951. package/dist/pages/onboarding-page/index.d.ts +199 -0
  952. package/dist/pages/onboarding-page/index.d.ts.map +1 -0
  953. package/dist/pages/onboarding-page/index.js +71 -0
  954. package/dist/pages/pricing-page/index.d.ts +286 -0
  955. package/dist/pages/pricing-page/index.d.ts.map +1 -0
  956. package/dist/pages/pricing-page/index.js +139 -0
  957. package/dist/pages/search-page/index.d.ts +305 -0
  958. package/dist/pages/search-page/index.d.ts.map +1 -0
  959. package/dist/pages/search-page/index.js +142 -0
  960. package/dist/pages/status-page/index.d.ts +366 -0
  961. package/dist/pages/status-page/index.d.ts.map +1 -0
  962. package/dist/pages/status-page/index.js +136 -0
  963. package/dist/styles.css +1105 -62
  964. package/package.json +9 -3
@@ -0,0 +1,341 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { LucideIcon } from 'lucide-react';
3
+ import { type HeadingLevel } from '../../components/ui/section.js';
4
+ import { type StatusTone } from '../../components/ui/status.js';
5
+ /**
6
+ * One notification: a mark, a title, a body, a moment, a read state, and a slot for
7
+ * the caller's own controls.
8
+ *
9
+ * `title` and `at` are the two that make a notification a notification. Everything
10
+ * else is annotation, and a notification with no body draws its title and its moment
11
+ * rather than a card with two empty lines where the annotation would have been, which
12
+ * is the rule every optional field on this type follows.
13
+ *
14
+ * `body` is a node and not a `string` because a notification's body is the one place
15
+ * on this surface that routinely holds something other than prose: a diff summary, a
16
+ * list of what changed, a `CodeBlock`, a composer's own link. A `string` would make
17
+ * each of those a second notification.
18
+ */
19
+ export type NotificationCenter01Notification = {
20
+ /** A key unique within the set, carried on the markup as `data-notification`. */
21
+ id: string;
22
+ /**
23
+ * The one line that says what happened, in the product's own words.
24
+ *
25
+ * The anchor of the row and the accessible name of the control a reader activates
26
+ * to mark it read, so it is a phrase and not a sentence with a full stop.
27
+ */
28
+ title: string;
29
+ /** The detail under the title. A node, so it may hold a table or a code block. */
30
+ body?: ReactNode;
31
+ /**
32
+ * When it arrived, printed exactly as passed.
33
+ *
34
+ * A `number` or a `string` and never a `Date`, and the reason is the one
35
+ * `ContentGrid01Entry`'s `at` gives: a Block ships no formatting, so the reading a
36
+ * reader should see is the caller's own. A number is epoch milliseconds and is
37
+ * printed as a number, which is honest and almost never what was wanted; a string
38
+ * is printed as written. The machine value is still on the `time` element's
39
+ * `dateTime`, so a crawler and a screen reader get a timestamp whatever the visible
40
+ * reading says.
41
+ *
42
+ * A caller who wants a localised reading with a relative phrase composes
43
+ * `relative-time` and passes the node in `body`, beside the moment.
44
+ */
45
+ at: number | string;
46
+ /**
47
+ * Whether the reader has seen it.
48
+ *
49
+ * Read from the item's own field and never from the count, which is the decision
50
+ * this Block's JSDoc argues in full. A `false` carries the mark; absent and `true`
51
+ * both mean read, so a caller that never thinks about the field ships every
52
+ * notification marked as unread, which is the honest reading of a list a reader has
53
+ * not looked at.
54
+ */
55
+ read?: boolean;
56
+ /**
57
+ * The mark beside the title, in the caller's own icon set.
58
+ *
59
+ * A `LucideIcon` and not a `ReactNode`, because the shape on screen is a
60
+ * fixed-size square and a node would have to be told what to be. The icon is
61
+ * `aria-hidden`, because it is decoration beside a title that already says what the
62
+ * notification is, and announcing an icon name would replace the title with
63
+ * something less useful. An icon with no `tone` is a kind; a `tone` with no icon is
64
+ * an urgency; the two can both be there because they say different things.
65
+ */
66
+ icon?: LucideIcon;
67
+ /**
68
+ * The urgency of the notification, drawn as a `Status` in the row's meta line.
69
+ *
70
+ * See the Block's JSDoc for why a tone arrives without a label: the label this
71
+ * Block draws is the machine value itself, which is what `Changelog01` does with a
72
+ * change's kind, and the alternative is a coloured dot with nothing beside it.
73
+ */
74
+ tone?: StatusTone;
75
+ /** Where the thing the notification is about lives. */
76
+ href?: string;
77
+ /**
78
+ * The words on the link, and required whenever `href` is.
79
+ *
80
+ * A link whose only words are the notification's own title tells a reader nothing
81
+ * about what following it does, and a column of links all reading "Open" is a
82
+ * column of identical controls.
83
+ */
84
+ hrefLabel?: string;
85
+ /**
86
+ * The caller's own controls for this notification: dismiss, snooze, assign.
87
+ *
88
+ * A slot and not a set of named controls, because which controls a notification
89
+ * has is the consumer's fact. A panel that drew a dismiss button would be assuming
90
+ * every notification is dismissible, which is true of a marketing one and false of
91
+ * a security one.
92
+ */
93
+ actions?: ReactNode;
94
+ };
95
+ /**
96
+ * The mark-all control, as a pair that is either present or absent.
97
+ *
98
+ * A union rather than an optional `onMarkAllRead` beside an optional `markAllLabel`,
99
+ * for the reason `HeroAction` is the reference: the two are required together, and two
100
+ * independent optionals produce three states, of which the one that compiles is a
101
+ * control that marks everything and is announced as nothing.
102
+ */
103
+ type MarkAll = {
104
+ /** Marks every notification read, in one call with the caller's own ids. */
105
+ onMarkAllRead: () => void;
106
+ /**
107
+ * The words on that control, and the accessible name a screen reader reads
108
+ * before the reader presses it.
109
+ *
110
+ * "Mark all as read" and "Clear" are both ordinary and they are not the same
111
+ * sentence, and a control a reader cannot name is a control they press with no
112
+ * confidence.
113
+ */
114
+ markAllLabel: string;
115
+ } | {
116
+ /** Forbidden in this arm, so a control with no words cannot be typed. */
117
+ onMarkAllRead?: never;
118
+ markAllLabel?: never;
119
+ };
120
+ /**
121
+ * The per-item handler, as a pair that is either present or absent.
122
+ *
123
+ * There is no label beside it because there is no control: the notification's own
124
+ * title is the control, and its accessible name is the caller's own phrase. A
125
+ * separate "mark read" button on every row would be a column of identical controls,
126
+ * which is the arrangement this Block refuses for the very same reason it requires
127
+ * words on a link.
128
+ */
129
+ type MarkOne = {
130
+ onMarkRead: (id: string) => void;
131
+ } | {
132
+ onMarkRead?: never;
133
+ };
134
+ /**
135
+ * The shape of the surface, as a pair that is either a page section or a bounded
136
+ * panel.
137
+ *
138
+ * A union rather than a `variant` and a `listLabel` beside it, for the reason the
139
+ * other two pairs give: `listLabel` is required in the panel arm and meaningless in
140
+ * the section arm, and two independent optionals would let a caller write
141
+ * `variant="panel"` with no name for the scroll region, which is the one control on
142
+ * that surface that owes an accessible name by construction.
143
+ */
144
+ type Shape = {
145
+ /**
146
+ * A bounded, scrollable panel, for a notification centre that lives in a shell
147
+ * beside the content rather than on a page of its own.
148
+ *
149
+ * This arm draws no `Section`, no section heading and no eyebrow, and that is
150
+ * what `ListPanel` is for: a `Section` owns the container and 4rem of vertical
151
+ * padding at the top and 6rem at the bottom, and a popover 24rem wide with 10rem
152
+ * of air above it is a panel with padding, not a notification centre. The title
153
+ * becomes the panel's own title, the count its count, and the mark-all control
154
+ * its toolbar, so a caller reading a shell sees one surface rather than a
155
+ * section inside a drawer. A panel's title is a `span` and not a heading for
156
+ * the reason `ListPanel` gives, which is that four panels in a grid are four
157
+ * titles under one section heading, and `headingLevel` and `eyebrow` are the
158
+ * section heading's fields and are not drawn in this arm. A caller who wants a
159
+ * heading over the panel composes it above, which is the arrangement
160
+ * `headingLevel` exists for everywhere else in this package.
161
+ */
162
+ variant: 'panel';
163
+ /**
164
+ * The accessible name of the scrolling region, and the panel's when the panel
165
+ * has no title.
166
+ *
167
+ * Required in this arm because the body scrolls, and a scroll region is a tab
168
+ * stop. A tab stop with no name is a thing a reader lands on and cannot say
169
+ * where they are, and this package took over the scrollbar itself precisely so
170
+ * that the control a reader meets here is one it recognises.
171
+ */
172
+ listLabel: string;
173
+ /**
174
+ * The height the panel stops at, in pixels, once the list is longer than that.
175
+ *
176
+ * A number and not a Tailwind class, because the bound is data rather than
177
+ * layout: the same panel is a short one in a shell and a tall one on a page, and
178
+ * a caller who could only say `max-h-80` would be picking one of those for the
179
+ * other.
180
+ */
181
+ maxHeight?: number;
182
+ } | {
183
+ /** A page section: a heading, a count, the mark-all control, and the list. */
184
+ variant?: 'list';
185
+ /** Forbidden in this arm, because a page section is not a scroll region. */
186
+ listLabel?: never;
187
+ maxHeight?: never;
188
+ };
189
+ /**
190
+ * The props a NotificationCenter01 takes, and the three pairs every one of them
191
+ * carries.
192
+ *
193
+ * The base holds the content and the optional strings; the three unions hold the
194
+ * decisions. They are separate types so that a reader can see which facts are
195
+ * independent, and they are intersected so that none of them can be half applied.
196
+ */
197
+ export type NotificationCenter01Props = {
198
+ /** Optional label above the section title. See the No-Default-Eyebrow Rule. */
199
+ eyebrow?: string;
200
+ /** The section title, or the panel's title. */
201
+ title?: string;
202
+ /**
203
+ * The notifications, newest first unless the product says otherwise.
204
+ *
205
+ * The Block does not sort, for the reason `ActivityFeed01` gives in full: order is a
206
+ * claim about what the reader missed first, and a centre that reordered its own
207
+ * unread items would be moving the thing a reader is most likely to want.
208
+ */
209
+ notifications: NotificationCenter01Notification[];
210
+ /**
211
+ * The unread count, in the reader's own words.
212
+ *
213
+ * Optional, and its absence is a decision rather than a gap: a product that shows
214
+ * the mark on each item and no count at all has said the same thing with a mark
215
+ * rather than a number, and some of them prefer it.
216
+ *
217
+ * A function and not a `string` for the reason `waitlist-01` gives for a position,
218
+ * which is the same argument about a different sentence: "3 unread", "3 new" and
219
+ * "3 since Monday" are three sentences, they differ in word order, in the noun and
220
+ * in whether the number comes first, and a Block that composed one of them would
221
+ * compose the English one and ship it into every consumer's product where a reader
222
+ * in any other language would be shown a count in a language they did not choose.
223
+ * So Prism counts, which is a fact, and hands the sentence back.
224
+ */
225
+ countLabel?: (count: number) => string;
226
+ /**
227
+ * The words for the mark on an unread notification.
228
+ *
229
+ * Optional in the type and required in practice, and the mismatch is deliberate: a
230
+ * consumer whose notifications are all read should not have to invent a word for a
231
+ * mark nothing carries, and the alternative, making the prop required, is a prop
232
+ * every consumer has to fill with a guess. So a notification with no `unreadLabel`
233
+ * and no words for its unread state throws, which is the same enforcement
234
+ * `StatusLedger01` uses for `statusLabel` and `Compliance01` uses for
235
+ * `stateLabel`: the state is a mark and the words are the information, and a mark
236
+ * with nothing beside it is invisible to a reader who cannot see it and unreadable
237
+ * to a screen reader whatever it is.
238
+ */
239
+ unreadLabel?: string;
240
+ /**
241
+ * What a reader is told when the centre has nothing in it.
242
+ *
243
+ * Required, and it is the sentence Prism is least entitled to write. "You are all
244
+ * caught up" is a claim about a product and a moment, and both are the caller's.
245
+ */
246
+ empty: ReactNode;
247
+ /** Heading level for the section title. See `HeadingLevel`. */
248
+ headingLevel?: HeadingLevel;
249
+ /**
250
+ * Layout only, exactly as on every Block. Changing a Prism-owned visual property
251
+ * from here is prohibited.
252
+ */
253
+ className?: string;
254
+ } & MarkAll & MarkOne & Shape;
255
+ /**
256
+ * A list of notifications with an unread count and a mark-all control.
257
+ *
258
+ * **The unread count is a number beside a noun, and the noun is the caller's through
259
+ * `countLabel`.** The argument is the one `waitlist-01` makes about a position, applied
260
+ * to a different sentence: "3 unread", "3 new" and "3 since Monday" are three
261
+ * sentences, they differ in word order, in the noun, in the plural and in whether the
262
+ * number comes first at all, and a Block that composed one of them would compose the
263
+ * English one and ship it into every consumer's product, where a reader in any other
264
+ * language is shown a count in a language they did not choose. So Prism counts, which
265
+ * is a fact, and hands the sentence back. The cost is stated rather than hidden: a
266
+ * caller who passes no `countLabel` gets no count, and a reader who relies on the
267
+ * number has to look for the marks instead.
268
+ *
269
+ * **Read is derived from each item's own field and never from the count, and that is
270
+ * what lets the count mean something else without anything being a mismatch.** The
271
+ * count is computed from the notifications this Block was handed, and it is about
272
+ * those notifications. A caller whose badge means something wider, every workspace
273
+ * rather than this one, or everything since Monday, renders that badge in their own
274
+ * header and this Block's count is the one about the list in front of the reader, and
275
+ * the two are not in conflict because they are not about the same set. What would be
276
+ * a mismatch is deriving the marks from the count: four unread items under a count of
277
+ * zero would then be four items whose own fields say read, and the reader would be
278
+ * told the opposite thing by the same Block from two places. So the mark comes from
279
+ * `read` and only from `read`, and a caller who filters a hundred notifications down
280
+ * to the four unread ones gets four marks and a count of four, each true of the list
281
+ * as given.
282
+ *
283
+ * **The unread mark is a filled dot plus an accessible name, and the second half is
284
+ * the point.** A colour is not a state a screen reader can be told about: a `<span>`
285
+ * with a background and no role announces nothing, and a reader who cannot separate
286
+ * the ink from the card sees no mark at all. So the dot is `role="img"` with the
287
+ * caller's required `unreadLabel` as its name, and the title is set at a heavier
288
+ * weight on an unread row so the difference survives even where the ink is a tint.
289
+ * The rejected alternatives are both in this package already and both were refused
290
+ * somewhere: a bare dot beside words that are not about the state, and a word beside
291
+ * the dot, which would put a sentence in the row that the caller's own title already
292
+ * fills.
293
+ *
294
+ * **A row is a control only when the caller gave it something to do.** With
295
+ * `onMarkRead` the title is a `button` whose accessible name is the caller's own
296
+ * phrase, so a reader marks one read with one activation and no words to learn. The
297
+ * destination is a separate control carrying the caller's own words, and that is the
298
+ * arrangement `activity-feed-01` takes for the same reason: a link whose only words
299
+ * are the record's own title tells a reader nothing, and a control that both navigates
300
+ * and marks read is a control no reader can predict. A centre with no handlers is a
301
+ * list, which is a record a reader reads and not a set of tab stops.
302
+ *
303
+ * **The two shapes are a page section and a bounded panel, and the panel arm draws
304
+ * no `Section`.** A `Section` owns the container and 4rem of vertical padding at the
305
+ * top and 6rem at the bottom, and a popover 24rem wide with 10rem of air above it is
306
+ * not a notification centre. So `variant="panel"` composes `ListPanel` with the title
307
+ * as its title, the count as its count and the mark-all control as its toolbar, which
308
+ * is exactly the set of slots that Component already has, and the scroll region is
309
+ * named by the caller's required `listLabel` because a scroll region is a tab stop and
310
+ * a tab stop owes a name. The cost is that the two arms are not one surface, so a
311
+ * caller moving a centre from a page into a shell restyles the frame by choosing an
312
+ * arm rather than by passing a prop.
313
+ *
314
+ * **The moment is printed exactly as passed, and the Block formats none.** A Block
315
+ * that formatted one would have to pick a locale, a calendar and a granularity, and
316
+ * `relative-time` already holds that decision and holds it well: it formats the
317
+ * absolute reading with the platform and hands the sentence back rather than writing
318
+ * it, which is the only arrangement a shared package can offer a product shipping in
319
+ * more than one language. So the ISO form goes on the `time` element's `dateTime` and
320
+ * the caller's own string goes in the text, and a caller who wants "four minutes ago"
321
+ * composes the node into `body`. The cost is named rather than hidden: a caller who
322
+ * passes epoch milliseconds gets epoch milliseconds, which is honest and almost never
323
+ * what was wanted.
324
+ *
325
+ * **The tone is a mark with a machine word beside it, and the cost is that word.** The
326
+ * same split `activity-feed-01` and `changelog-01` make: a tone is a judgement about
327
+ * urgency that only the caller can make, and a mark that is colour alone is invisible
328
+ * to a reader who cannot separate the tones and unreadable to a screen reader whatever
329
+ * the tones are. So the tone is drawn by `Status` with the machine value as its label,
330
+ * and a caller whose product words these states differently composes its own mark and
331
+ * leaves `tone` unset.
332
+ *
333
+ * It is a client Component, and the reason is the handlers rather than the state, as
334
+ * in `data-table-01`: a function is a piece of state, and state is a client module.
335
+ * The cost is stated rather than implied: a centre with no handler on any row ships
336
+ * this file's client runtime for nothing, and the fix for a consumer who needs that
337
+ * surface to be static is a `ReactNode` slot of their own.
338
+ */
339
+ export declare function NotificationCenter01({ eyebrow, title, notifications, countLabel, unreadLabel, empty, onMarkRead, onMarkAllRead, markAllLabel, variant, listLabel, maxHeight, headingLevel, className, }: NotificationCenter01Props): import("react").JSX.Element;
340
+ export default NotificationCenter01;
341
+ //# sourceMappingURL=notification-center-01.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notification-center-01.d.ts","sourceRoot":"","sources":["../../../src/blocks/notification-center-01/notification-center-01.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAK9C,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAU,KAAK,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAGpE;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,gCAAgC,GAAG;IAC7C,iFAAiF;IACjF,EAAE,EAAE,MAAM,CAAA;IACV;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAA;IACb,kFAAkF;IAClF,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;;;;;;;;;;;OAaG;IACH,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;IACd;;;;;;;;;OASG;IACH,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB,CAAA;AAED;;;;;;;GAOG;AACH,KAAK,OAAO,GACR;IACE,4EAA4E;IAC5E,aAAa,EAAE,MAAM,IAAI,CAAA;IACzB;;;;;;;OAOG;IACH,YAAY,EAAE,MAAM,CAAA;CACrB,GACD;IACE,yEAAyE;IACzE,aAAa,CAAC,EAAE,KAAK,CAAA;IACrB,YAAY,CAAC,EAAE,KAAK,CAAA;CACrB,CAAA;AAEL;;;;;;;;GAQG;AACH,KAAK,OAAO,GAAG;IAAE,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GAAG;IAAE,UAAU,CAAC,EAAE,KAAK,CAAA;CAAE,CAAA;AAE5E;;;;;;;;;GASG;AACH,KAAK,KAAK,GACN;IACE;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,EAAE,OAAO,CAAA;IAChB;;;;;;;;OAQG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GACD;IACE,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,KAAK,CAAA;IACjB,SAAS,CAAC,EAAE,KAAK,CAAA;CAClB,CAAA;AAEL;;;;;;;GAOG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;;;OAMG;IACH,aAAa,EAAE,gCAAgC,EAAE,CAAA;IACjD;;;;;;;;;;;;;;OAcG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IACtC;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,KAAK,EAAE,SAAS,CAAA;IAChB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,OAAO,GACT,OAAO,GACP,KAAK,CAAA;AAoOP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmFG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,OAAO,EACP,KAAK,EACL,aAAa,EACb,UAAU,EACV,WAAW,EACX,KAAK,EACL,UAAU,EACV,aAAa,EACb,YAAY,EACZ,OAAgB,EAChB,SAAS,EACT,SAAS,EACT,YAAmB,EACnB,SAAS,GACV,EAAE,yBAAyB,+BAgH3B;AAED,eAAe,oBAAoB,CAAA"}
@@ -0,0 +1,203 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Button } from '../../components/ui/button.js';
4
+ import { CtaLink } from '../../components/ui/cta-link.js';
5
+ import { ListPanel } from '../../components/ui/list-panel.js';
6
+ import { Section, SectionHeading, } from '../../components/ui/section.js';
7
+ import { Status } from '../../components/ui/status.js';
8
+ import { cn } from '../../lib/utils.js';
9
+ /**
10
+ * The refusals, as checks, so a row that would render a link nobody can name, a
11
+ * moment with no machine value, or a mark with no words is a diagnostic in a console
12
+ * rather than a rendered control.
13
+ *
14
+ * All three are the house pair rules and each one names the field, so a caller knows
15
+ * which of their own props to add. The unread rule is the one that earns its place
16
+ * here: a filled dot is a colour, and a colour is not a state a screen reader can be
17
+ * told about, so the mark has to arrive with words or the run has to fail.
18
+ */
19
+ function assertNotification(notification, unreadLabel) {
20
+ if ((notification.href === undefined) !== (notification.hrefLabel === undefined)) {
21
+ throw new Error(`NotificationCenter01: the notification "${notification.title}" declares one of href and hrefLabel without the ` +
22
+ 'other, so the row would carry a link with no words on it, or a name with no link beside it. Pass the words ' +
23
+ 'that say what following it does, or omit the href.');
24
+ }
25
+ if (!Number.isFinite(new Date(notification.at).getTime())) {
26
+ throw new Error(`NotificationCenter01: the notification "${notification.title}" passes an at the platform cannot read, so there ` +
27
+ 'is no value to put in the time element and the row would claim to be a moment it cannot name. Pass epoch ' +
28
+ 'milliseconds, or a string the platform parses.');
29
+ }
30
+ if (notification.read !== true && unreadLabel === undefined) {
31
+ throw new Error(`NotificationCenter01: the notification "${notification.title}" is unread and no unreadLabel was passed, so the ` +
32
+ 'mark would be a filled dot with no words, which is a colour rather than a state. Pass the words this ' +
33
+ 'product uses for an unread notification, which are not this Block choice.');
34
+ }
35
+ }
36
+ /**
37
+ * The unread mark: a filled dot that is also a graphic with a name.
38
+ *
39
+ * **The mark is a filled dot plus an accessible name, and the reason is that a
40
+ * colour is not a state a screen reader can be told about.** A dot in the brand ink
41
+ * is visible to a sighted reader who knows what it means and to nobody else: it is
42
+ * invisible to a reader who cannot see the ink against the surface, and a screen
43
+ * reader given a `<span>` with no role reads nothing at all, because a filled shape
44
+ * carries no text. So the dot is `role="img"` with the caller's `unreadLabel` as its
45
+ * name, which is the one arrangement where a graphic announces what it is. The
46
+ * rejected alternatives are both in this package already: a bare dot beside words
47
+ * that are not about the state, which is a mark only a sighted reader decodes, and a
48
+ * word beside the dot, which would put a sentence in the row that the caller has
49
+ * already written the title for.
50
+ *
51
+ * **It is a filled dot and not a ring, and that is a measurement rather than a
52
+ * preference.** `status.tsx` and `timeline.tsx` both draw an unfilled ring, and the
53
+ * reason they give is that a filled pastel dot fails contrast against a light card,
54
+ * which is a real argument for a mark that has to be found in a row of things. This
55
+ * mark has the opposite requirement: it is the thing a reader is looking for, and it
56
+ * is found by contrast against the row rather than by contrast of its own edge, so it
57
+ * is drawn in the full `primary` ink on the card, which is the strongest pair the
58
+ * token contract publishes. The cost is stated rather than hidden: on a surface where
59
+ * `primary` is close to `card`, the mark is a tint rather than a dot, and the
60
+ * difference between read and unread is then carried by the title's weight, which is
61
+ * why the title is set at a heavier weight on an unread row rather than relying on
62
+ * the dot alone.
63
+ */
64
+ function UnreadMark({ label }) {
65
+ return (_jsx("span", { "data-slot": "notification-center-01-unread", role: "img", "aria-label": label, className: "bg-primary mt-2 inline-block size-2 shrink-0 rounded-full" }));
66
+ }
67
+ /**
68
+ * The shared class list for one notification, so the list and the panel arms cannot
69
+ * drift apart.
70
+ *
71
+ * One constant rather than two, and the two arms call this in the same order. The
72
+ * reason they share it is that a notification in a panel and a notification on a page
73
+ * are the same notification, and a reader who moves one from a drawer to a page
74
+ * should not find a different border or a different gap.
75
+ */
76
+ const ROW = 'flex w-full gap-3 border-b px-4 py-3 last:border-b-0';
77
+ /**
78
+ * One notification, in whichever of the two forms the caller chose.
79
+ *
80
+ * **The title is the control when the caller gave the rows something to do, and it is
81
+ * never a link.** An `onMarkRead` makes the title a `button` whose accessible name is
82
+ * the caller's own phrase, so marking a notification read costs a reader one
83
+ * activation and no words they have to learn. The destination is a separate control
84
+ * with the caller's words on it, which is the same arrangement `activity-feed-01`
85
+ * takes and the same reason: a link whose only words are the notification's own title
86
+ * tells a reader nothing about what following it does, and a control that both
87
+ * navigates and acts is a control no reader can predict.
88
+ *
89
+ * **The body is phrasing content, because it can sit inside a button.** A `button` may
90
+ * contain phrasing content and nothing else, so the body is a `span` and the column
91
+ * arrangement is a flex `span` rather than the row's own layout. That is the one place
92
+ * this Block is shaped by what an element is allowed to contain rather than by what it
93
+ * looks like, and it is why the two forms are the same height.
94
+ */
95
+ function NotificationRow({ notification, onMarkRead, unreadLabel, }) {
96
+ const unread = notification.read !== true;
97
+ const Icon = notification.icon;
98
+ const title = (_jsx("span", { "data-slot": "notification-center-01-title", className: cn('text-sm', unread ? 'font-semibold' : 'font-medium'), children: notification.title }));
99
+ return (_jsxs("li", { "data-slot": "notification-center-01-item", "data-notification": notification.id, "data-read": unread ? undefined : 'true', className: ROW, children: [_jsxs("span", { "data-slot": "notification-center-01-marks", className: "flex shrink-0 items-start gap-2", children: [unread && unreadLabel !== undefined ? _jsx(UnreadMark, { label: unreadLabel }) : null, Icon === undefined ? null : (_jsx("span", { "data-slot": "notification-center-01-icon", className: "bg-muted text-muted-foreground inline-flex size-6 items-center justify-center rounded-md", children: _jsx(Icon, { className: "size-3.5", "aria-hidden": "true" }) }))] }), _jsxs("span", { "data-slot": "notification-center-01-body", className: "flex min-w-0 flex-1 flex-col gap-1", children: [onMarkRead === undefined ? (title) : (_jsx("button", { type: "button", "data-slot": "notification-center-01-select", onClick: () => onMarkRead(notification.id), className: "self-start rounded-sm text-left focus-visible:ring-ring focus-visible:ring-[3px] focus-visible:outline-none", children: title })), notification.body === undefined ? null : (_jsx("span", { "data-slot": "notification-center-01-detail", className: "text-muted-foreground text-pretty text-sm", children: notification.body })), _jsxs("span", { "data-slot": "notification-center-01-meta", className: "text-muted-foreground flex flex-wrap items-center gap-x-3 gap-y-1 text-xs", children: [_jsx("span", { className: "font-mono", children: _jsx("time", { dateTime: new Date(notification.at).toISOString(), children: notification.at }) }), notification.tone === undefined ? null : (_jsx(Status, { "data-slot": "notification-center-01-tone", tone: notification.tone, label: notification.tone, size: "sm" }))] })] }), _jsxs("span", { "data-slot": "notification-center-01-actions", className: "flex shrink-0 items-start gap-2", children: [notification.actions, notification.href === undefined ? null : (_jsx(CtaLink, { href: notification.href, variant: "ghost", size: "sm", children: notification.hrefLabel }))] })] }));
100
+ }
101
+ /**
102
+ * A list of notifications with an unread count and a mark-all control.
103
+ *
104
+ * **The unread count is a number beside a noun, and the noun is the caller's through
105
+ * `countLabel`.** The argument is the one `waitlist-01` makes about a position, applied
106
+ * to a different sentence: "3 unread", "3 new" and "3 since Monday" are three
107
+ * sentences, they differ in word order, in the noun, in the plural and in whether the
108
+ * number comes first at all, and a Block that composed one of them would compose the
109
+ * English one and ship it into every consumer's product, where a reader in any other
110
+ * language is shown a count in a language they did not choose. So Prism counts, which
111
+ * is a fact, and hands the sentence back. The cost is stated rather than hidden: a
112
+ * caller who passes no `countLabel` gets no count, and a reader who relies on the
113
+ * number has to look for the marks instead.
114
+ *
115
+ * **Read is derived from each item's own field and never from the count, and that is
116
+ * what lets the count mean something else without anything being a mismatch.** The
117
+ * count is computed from the notifications this Block was handed, and it is about
118
+ * those notifications. A caller whose badge means something wider, every workspace
119
+ * rather than this one, or everything since Monday, renders that badge in their own
120
+ * header and this Block's count is the one about the list in front of the reader, and
121
+ * the two are not in conflict because they are not about the same set. What would be
122
+ * a mismatch is deriving the marks from the count: four unread items under a count of
123
+ * zero would then be four items whose own fields say read, and the reader would be
124
+ * told the opposite thing by the same Block from two places. So the mark comes from
125
+ * `read` and only from `read`, and a caller who filters a hundred notifications down
126
+ * to the four unread ones gets four marks and a count of four, each true of the list
127
+ * as given.
128
+ *
129
+ * **The unread mark is a filled dot plus an accessible name, and the second half is
130
+ * the point.** A colour is not a state a screen reader can be told about: a `<span>`
131
+ * with a background and no role announces nothing, and a reader who cannot separate
132
+ * the ink from the card sees no mark at all. So the dot is `role="img"` with the
133
+ * caller's required `unreadLabel` as its name, and the title is set at a heavier
134
+ * weight on an unread row so the difference survives even where the ink is a tint.
135
+ * The rejected alternatives are both in this package already and both were refused
136
+ * somewhere: a bare dot beside words that are not about the state, and a word beside
137
+ * the dot, which would put a sentence in the row that the caller's own title already
138
+ * fills.
139
+ *
140
+ * **A row is a control only when the caller gave it something to do.** With
141
+ * `onMarkRead` the title is a `button` whose accessible name is the caller's own
142
+ * phrase, so a reader marks one read with one activation and no words to learn. The
143
+ * destination is a separate control carrying the caller's own words, and that is the
144
+ * arrangement `activity-feed-01` takes for the same reason: a link whose only words
145
+ * are the record's own title tells a reader nothing, and a control that both navigates
146
+ * and marks read is a control no reader can predict. A centre with no handlers is a
147
+ * list, which is a record a reader reads and not a set of tab stops.
148
+ *
149
+ * **The two shapes are a page section and a bounded panel, and the panel arm draws
150
+ * no `Section`.** A `Section` owns the container and 4rem of vertical padding at the
151
+ * top and 6rem at the bottom, and a popover 24rem wide with 10rem of air above it is
152
+ * not a notification centre. So `variant="panel"` composes `ListPanel` with the title
153
+ * as its title, the count as its count and the mark-all control as its toolbar, which
154
+ * is exactly the set of slots that Component already has, and the scroll region is
155
+ * named by the caller's required `listLabel` because a scroll region is a tab stop and
156
+ * a tab stop owes a name. The cost is that the two arms are not one surface, so a
157
+ * caller moving a centre from a page into a shell restyles the frame by choosing an
158
+ * arm rather than by passing a prop.
159
+ *
160
+ * **The moment is printed exactly as passed, and the Block formats none.** A Block
161
+ * that formatted one would have to pick a locale, a calendar and a granularity, and
162
+ * `relative-time` already holds that decision and holds it well: it formats the
163
+ * absolute reading with the platform and hands the sentence back rather than writing
164
+ * it, which is the only arrangement a shared package can offer a product shipping in
165
+ * more than one language. So the ISO form goes on the `time` element's `dateTime` and
166
+ * the caller's own string goes in the text, and a caller who wants "four minutes ago"
167
+ * composes the node into `body`. The cost is named rather than hidden: a caller who
168
+ * passes epoch milliseconds gets epoch milliseconds, which is honest and almost never
169
+ * what was wanted.
170
+ *
171
+ * **The tone is a mark with a machine word beside it, and the cost is that word.** The
172
+ * same split `activity-feed-01` and `changelog-01` make: a tone is a judgement about
173
+ * urgency that only the caller can make, and a mark that is colour alone is invisible
174
+ * to a reader who cannot separate the tones and unreadable to a screen reader whatever
175
+ * the tones are. So the tone is drawn by `Status` with the machine value as its label,
176
+ * and a caller whose product words these states differently composes its own mark and
177
+ * leaves `tone` unset.
178
+ *
179
+ * It is a client Component, and the reason is the handlers rather than the state, as
180
+ * in `data-table-01`: a function is a piece of state, and state is a client module.
181
+ * The cost is stated rather than implied: a centre with no handler on any row ships
182
+ * this file's client runtime for nothing, and the fix for a consumer who needs that
183
+ * surface to be static is a `ReactNode` slot of their own.
184
+ */
185
+ export function NotificationCenter01({ eyebrow, title, notifications, countLabel, unreadLabel, empty, onMarkRead, onMarkAllRead, markAllLabel, variant = 'list', listLabel, maxHeight, headingLevel = 'h2', className, }) {
186
+ for (const notification of notifications) {
187
+ assertNotification(notification, unreadLabel);
188
+ }
189
+ // Counted from the items themselves rather than passed, because the count is a fact
190
+ // about the list in front of the reader and a passed count could disagree with it.
191
+ // The mark on each item comes from that item's own field and never from this
192
+ // number, which is what lets a caller's wider badge sit beside it without a
193
+ // mismatch. See the JSDoc above.
194
+ const unread = notifications.filter((notification) => notification.read !== true).length;
195
+ const count = countLabel === undefined ? null : countLabel(unread);
196
+ const markAll = onMarkAllRead === undefined || markAllLabel === undefined ? null : (_jsx(Button, { "data-slot": "notification-center-01-mark-all", type: "button", variant: "ghost", size: "sm", onClick: onMarkAllRead, children: markAllLabel }));
197
+ const rows = notifications.map((notification) => (_jsx(NotificationRow, { notification: notification, onMarkRead: onMarkRead, unreadLabel: unreadLabel }, notification.id)));
198
+ if (variant === 'panel' && listLabel !== undefined) {
199
+ return (_jsx("div", { "data-slot": "notification-center-01", "data-variant": "panel", className: cn('min-w-0', className), children: _jsx(ListPanel, { label: listLabel, maxHeight: maxHeight, title: title, count: count ?? undefined, actions: markAll, children: notifications.length === 0 ? (_jsx("div", { "data-slot": "notification-center-01-empty", className: "text-muted-foreground px-4 py-6 text-sm", children: empty })) : (_jsx("ul", { "data-slot": "notification-center-01-list", className: "flex flex-col", children: rows })) }) }));
200
+ }
201
+ return (_jsxs(Section, { "data-slot": "notification-center-01", "data-variant": "list", className: className, children: [title ? (_jsx(SectionHeading, { as: headingLevel, align: "left", eyebrow: eyebrow, title: title, className: "mb-6" })) : null, count === null && markAll === null ? null : (_jsxs("div", { "data-slot": "notification-center-01-header", className: "mb-4 flex flex-wrap items-center justify-between gap-3", children: [count === null ? (_jsx("span", {})) : (_jsx("span", { "data-slot": "notification-center-01-count", className: "text-muted-foreground text-sm tabular-nums", children: count })), markAll] })), notifications.length === 0 ? (_jsx("div", { "data-slot": "notification-center-01-empty", className: "text-muted-foreground text-sm", children: empty })) : (_jsx("ul", { "data-slot": "notification-center-01-list", className: "border-border flex flex-col border-b", children: rows }))] }));
202
+ }
203
+ export default NotificationCenter01;
@@ -0,0 +1,3 @@
1
+ export { Offer01, default } from './offer.js';
2
+ export type { Offer01Props, Offer01Tone } from './offer.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/blocks/offer-01/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAI1C,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA"}
@@ -0,0 +1 @@
1
+ export { Offer01, default } from './offer.js';