@nanisoft/prism-ui 0.13.0 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (943) hide show
  1. package/THIRD-PARTY-NOTICES.md +22 -7
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/blocks/about-01/about.d.ts +296 -0
  4. package/dist/blocks/about-01/about.d.ts.map +1 -0
  5. package/dist/blocks/about-01/about.js +103 -0
  6. package/dist/blocks/about-01/index.d.ts +3 -0
  7. package/dist/blocks/about-01/index.d.ts.map +1 -0
  8. package/dist/blocks/about-01/index.js +1 -0
  9. package/dist/blocks/accept-invite-01/accept-invite.d.ts +324 -0
  10. package/dist/blocks/accept-invite-01/accept-invite.d.ts.map +1 -0
  11. package/dist/blocks/accept-invite-01/accept-invite.js +230 -0
  12. package/dist/blocks/accept-invite-01/index.d.ts +3 -0
  13. package/dist/blocks/accept-invite-01/index.d.ts.map +1 -0
  14. package/dist/blocks/accept-invite-01/index.js +1 -0
  15. package/dist/blocks/account-01/account-01.d.ts +393 -0
  16. package/dist/blocks/account-01/account-01.d.ts.map +1 -0
  17. package/dist/blocks/account-01/account-01.js +215 -0
  18. package/dist/blocks/account-01/index.d.ts +3 -0
  19. package/dist/blocks/account-01/index.d.ts.map +1 -0
  20. package/dist/blocks/account-01/index.js +1 -0
  21. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts +271 -0
  22. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts.map +1 -0
  23. package/dist/blocks/activity-feed-01/activity-feed-01.js +185 -0
  24. package/dist/blocks/activity-feed-01/index.d.ts +3 -0
  25. package/dist/blocks/activity-feed-01/index.d.ts.map +1 -0
  26. package/dist/blocks/activity-feed-01/index.js +1 -0
  27. package/dist/blocks/address-book-01/address-book-01.d.ts +312 -0
  28. package/dist/blocks/address-book-01/address-book-01.d.ts.map +1 -0
  29. package/dist/blocks/address-book-01/address-book-01.js +233 -0
  30. package/dist/blocks/address-book-01/index.d.ts +3 -0
  31. package/dist/blocks/address-book-01/index.d.ts.map +1 -0
  32. package/dist/blocks/address-book-01/index.js +1 -0
  33. package/dist/blocks/audit-log-01/audit-log-01.d.ts +333 -0
  34. package/dist/blocks/audit-log-01/audit-log-01.d.ts.map +1 -0
  35. package/dist/blocks/audit-log-01/audit-log-01.js +211 -0
  36. package/dist/blocks/audit-log-01/index.d.ts +3 -0
  37. package/dist/blocks/audit-log-01/index.d.ts.map +1 -0
  38. package/dist/blocks/audit-log-01/index.js +1 -0
  39. package/dist/blocks/auth-form-01/auth-form.d.ts +40 -1
  40. package/dist/blocks/auth-form-01/auth-form.d.ts.map +1 -1
  41. package/dist/blocks/auth-form-01/auth-form.js +26 -3
  42. package/dist/blocks/awards-01/awards.d.ts +156 -0
  43. package/dist/blocks/awards-01/awards.d.ts.map +1 -0
  44. package/dist/blocks/awards-01/awards.js +102 -0
  45. package/dist/blocks/awards-01/index.d.ts +3 -0
  46. package/dist/blocks/awards-01/index.d.ts.map +1 -0
  47. package/dist/blocks/awards-01/index.js +1 -0
  48. package/dist/blocks/backdrop-01/backdrop.d.ts +268 -0
  49. package/dist/blocks/backdrop-01/backdrop.d.ts.map +1 -0
  50. package/dist/blocks/backdrop-01/backdrop.js +170 -0
  51. package/dist/blocks/backdrop-01/index.d.ts +3 -0
  52. package/dist/blocks/backdrop-01/index.d.ts.map +1 -0
  53. package/dist/blocks/backdrop-01/index.js +1 -0
  54. package/dist/blocks/bento-01/bento-01.d.ts +136 -0
  55. package/dist/blocks/bento-01/bento-01.d.ts.map +1 -0
  56. package/dist/blocks/bento-01/bento-01.js +97 -0
  57. package/dist/blocks/bento-01/index.d.ts +3 -0
  58. package/dist/blocks/bento-01/index.d.ts.map +1 -0
  59. package/dist/blocks/bento-01/index.js +1 -0
  60. package/dist/blocks/billing-source-01/billing-source-01.d.ts +379 -0
  61. package/dist/blocks/billing-source-01/billing-source-01.d.ts.map +1 -0
  62. package/dist/blocks/billing-source-01/billing-source-01.js +222 -0
  63. package/dist/blocks/billing-source-01/index.d.ts +3 -0
  64. package/dist/blocks/billing-source-01/index.d.ts.map +1 -0
  65. package/dist/blocks/billing-source-01/index.js +1 -0
  66. package/dist/blocks/bundle-01/bundle.d.ts +387 -0
  67. package/dist/blocks/bundle-01/bundle.d.ts.map +1 -0
  68. package/dist/blocks/bundle-01/bundle.js +153 -0
  69. package/dist/blocks/bundle-01/index.d.ts +3 -0
  70. package/dist/blocks/bundle-01/index.d.ts.map +1 -0
  71. package/dist/blocks/bundle-01/index.js +1 -0
  72. package/dist/blocks/calendar-01/calendar.d.ts +251 -0
  73. package/dist/blocks/calendar-01/calendar.d.ts.map +1 -0
  74. package/dist/blocks/calendar-01/calendar.js +191 -0
  75. package/dist/blocks/calendar-01/index.d.ts +3 -0
  76. package/dist/blocks/calendar-01/index.d.ts.map +1 -0
  77. package/dist/blocks/calendar-01/index.js +1 -0
  78. package/dist/blocks/capacity-01/capacity.d.ts +363 -0
  79. package/dist/blocks/capacity-01/capacity.d.ts.map +1 -0
  80. package/dist/blocks/capacity-01/capacity.js +208 -0
  81. package/dist/blocks/capacity-01/index.d.ts +3 -0
  82. package/dist/blocks/capacity-01/index.d.ts.map +1 -0
  83. package/dist/blocks/capacity-01/index.js +1 -0
  84. package/dist/blocks/careers-01/careers.d.ts +186 -0
  85. package/dist/blocks/careers-01/careers.d.ts.map +1 -0
  86. package/dist/blocks/careers-01/careers.js +83 -0
  87. package/dist/blocks/careers-01/index.d.ts +3 -0
  88. package/dist/blocks/careers-01/index.d.ts.map +1 -0
  89. package/dist/blocks/careers-01/index.js +1 -0
  90. package/dist/blocks/case-studies-01/case-studies.d.ts +192 -0
  91. package/dist/blocks/case-studies-01/case-studies.d.ts.map +1 -0
  92. package/dist/blocks/case-studies-01/case-studies.js +97 -0
  93. package/dist/blocks/case-studies-01/index.d.ts +3 -0
  94. package/dist/blocks/case-studies-01/index.d.ts.map +1 -0
  95. package/dist/blocks/case-studies-01/index.js +1 -0
  96. package/dist/blocks/case-study-01/case-study.d.ts +214 -0
  97. package/dist/blocks/case-study-01/case-study.d.ts.map +1 -0
  98. package/dist/blocks/case-study-01/case-study.js +79 -0
  99. package/dist/blocks/case-study-01/index.d.ts +3 -0
  100. package/dist/blocks/case-study-01/index.d.ts.map +1 -0
  101. package/dist/blocks/case-study-01/index.js +1 -0
  102. package/dist/blocks/changelog-01/changelog.d.ts +200 -0
  103. package/dist/blocks/changelog-01/changelog.d.ts.map +1 -0
  104. package/dist/blocks/changelog-01/changelog.js +155 -0
  105. package/dist/blocks/changelog-01/index.d.ts +3 -0
  106. package/dist/blocks/changelog-01/index.d.ts.map +1 -0
  107. package/dist/blocks/changelog-01/index.js +1 -0
  108. package/dist/blocks/chart-card-01/chart-card-01.d.ts +149 -0
  109. package/dist/blocks/chart-card-01/chart-card-01.d.ts.map +1 -0
  110. package/dist/blocks/chart-card-01/chart-card-01.js +81 -0
  111. package/dist/blocks/chart-card-01/index.d.ts +3 -0
  112. package/dist/blocks/chart-card-01/index.d.ts.map +1 -0
  113. package/dist/blocks/chart-card-01/index.js +1 -0
  114. package/dist/blocks/chart-group-01/chart-group-01.d.ts +138 -0
  115. package/dist/blocks/chart-group-01/chart-group-01.d.ts.map +1 -0
  116. package/dist/blocks/chart-group-01/chart-group-01.js +74 -0
  117. package/dist/blocks/chart-group-01/index.d.ts +3 -0
  118. package/dist/blocks/chart-group-01/index.d.ts.map +1 -0
  119. package/dist/blocks/chart-group-01/index.js +1 -0
  120. package/dist/blocks/code-sample-01/code-sample.d.ts +193 -0
  121. package/dist/blocks/code-sample-01/code-sample.d.ts.map +1 -0
  122. package/dist/blocks/code-sample-01/code-sample.js +104 -0
  123. package/dist/blocks/code-sample-01/index.d.ts +3 -0
  124. package/dist/blocks/code-sample-01/index.d.ts.map +1 -0
  125. package/dist/blocks/code-sample-01/index.js +1 -0
  126. package/dist/blocks/community-01/community.d.ts +183 -0
  127. package/dist/blocks/community-01/community.d.ts.map +1 -0
  128. package/dist/blocks/community-01/community.js +102 -0
  129. package/dist/blocks/community-01/index.d.ts +3 -0
  130. package/dist/blocks/community-01/index.d.ts.map +1 -0
  131. package/dist/blocks/community-01/index.js +1 -0
  132. package/dist/blocks/compare-01/compare.d.ts +184 -0
  133. package/dist/blocks/compare-01/compare.d.ts.map +1 -0
  134. package/dist/blocks/compare-01/compare.js +106 -0
  135. package/dist/blocks/compare-01/index.d.ts +3 -0
  136. package/dist/blocks/compare-01/index.d.ts.map +1 -0
  137. package/dist/blocks/compare-01/index.js +1 -0
  138. package/dist/blocks/compliance-01/compliance.d.ts +249 -0
  139. package/dist/blocks/compliance-01/compliance.d.ts.map +1 -0
  140. package/dist/blocks/compliance-01/compliance.js +130 -0
  141. package/dist/blocks/compliance-01/index.d.ts +3 -0
  142. package/dist/blocks/compliance-01/index.d.ts.map +1 -0
  143. package/dist/blocks/compliance-01/index.js +1 -0
  144. package/dist/blocks/consent-01/consent.d.ts +211 -0
  145. package/dist/blocks/consent-01/consent.d.ts.map +1 -0
  146. package/dist/blocks/consent-01/consent.js +101 -0
  147. package/dist/blocks/consent-01/index.d.ts +3 -0
  148. package/dist/blocks/consent-01/index.d.ts.map +1 -0
  149. package/dist/blocks/consent-01/index.js +1 -0
  150. package/dist/blocks/contact-01/contact.d.ts +319 -0
  151. package/dist/blocks/contact-01/contact.d.ts.map +1 -0
  152. package/dist/blocks/contact-01/contact.js +211 -0
  153. package/dist/blocks/contact-01/index.d.ts +3 -0
  154. package/dist/blocks/contact-01/index.d.ts.map +1 -0
  155. package/dist/blocks/contact-01/index.js +1 -0
  156. package/dist/blocks/content-grid-01/content-grid.d.ts +262 -0
  157. package/dist/blocks/content-grid-01/content-grid.d.ts.map +1 -0
  158. package/dist/blocks/content-grid-01/content-grid.js +155 -0
  159. package/dist/blocks/content-grid-01/index.d.ts +3 -0
  160. package/dist/blocks/content-grid-01/index.d.ts.map +1 -0
  161. package/dist/blocks/content-grid-01/index.js +1 -0
  162. package/dist/blocks/cta-01/cta.d.ts +7 -1
  163. package/dist/blocks/cta-01/cta.d.ts.map +1 -1
  164. package/dist/blocks/cta-01/cta.js +11 -2
  165. package/dist/blocks/dashboard-01/dashboard-01.d.ts +247 -0
  166. package/dist/blocks/dashboard-01/dashboard-01.d.ts.map +1 -0
  167. package/dist/blocks/dashboard-01/dashboard-01.js +141 -0
  168. package/dist/blocks/dashboard-01/index.d.ts +3 -0
  169. package/dist/blocks/dashboard-01/index.d.ts.map +1 -0
  170. package/dist/blocks/dashboard-01/index.js +1 -0
  171. package/dist/blocks/data-table-01/data-table.d.ts +12 -1
  172. package/dist/blocks/data-table-01/data-table.d.ts.map +1 -1
  173. package/dist/blocks/data-table-01/data-table.js +8 -5
  174. package/dist/blocks/delivery-01/delivery.d.ts +343 -0
  175. package/dist/blocks/delivery-01/delivery.d.ts.map +1 -0
  176. package/dist/blocks/delivery-01/delivery.js +212 -0
  177. package/dist/blocks/delivery-01/index.d.ts +3 -0
  178. package/dist/blocks/delivery-01/index.d.ts.map +1 -0
  179. package/dist/blocks/delivery-01/index.js +1 -0
  180. package/dist/blocks/directory-01/directory-01.d.ts +316 -0
  181. package/dist/blocks/directory-01/directory-01.d.ts.map +1 -0
  182. package/dist/blocks/directory-01/directory-01.js +252 -0
  183. package/dist/blocks/directory-01/index.d.ts +3 -0
  184. package/dist/blocks/directory-01/index.d.ts.map +1 -0
  185. package/dist/blocks/directory-01/index.js +1 -0
  186. package/dist/blocks/download-01/download.d.ts +261 -0
  187. package/dist/blocks/download-01/download.d.ts.map +1 -0
  188. package/dist/blocks/download-01/download.js +115 -0
  189. package/dist/blocks/download-01/index.d.ts +3 -0
  190. package/dist/blocks/download-01/index.d.ts.map +1 -0
  191. package/dist/blocks/download-01/index.js +1 -0
  192. package/dist/blocks/faq-01/faq.d.ts +128 -0
  193. package/dist/blocks/faq-01/faq.d.ts.map +1 -0
  194. package/dist/blocks/faq-01/faq.js +53 -0
  195. package/dist/blocks/faq-01/index.d.ts +3 -0
  196. package/dist/blocks/faq-01/index.d.ts.map +1 -0
  197. package/dist/blocks/faq-01/index.js +1 -0
  198. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts +158 -0
  199. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts.map +1 -0
  200. package/dist/blocks/feature-rows-01/feature-rows-01.js +81 -0
  201. package/dist/blocks/feature-rows-01/index.d.ts +3 -0
  202. package/dist/blocks/feature-rows-01/index.d.ts.map +1 -0
  203. package/dist/blocks/feature-rows-01/index.js +1 -0
  204. package/dist/blocks/feedback-01/feedback.d.ts +235 -0
  205. package/dist/blocks/feedback-01/feedback.d.ts.map +1 -0
  206. package/dist/blocks/feedback-01/feedback.js +113 -0
  207. package/dist/blocks/feedback-01/index.d.ts +3 -0
  208. package/dist/blocks/feedback-01/index.d.ts.map +1 -0
  209. package/dist/blocks/feedback-01/index.js +1 -0
  210. package/dist/blocks/field-map-01/field-map.d.ts +247 -0
  211. package/dist/blocks/field-map-01/field-map.d.ts.map +1 -0
  212. package/dist/blocks/field-map-01/field-map.js +183 -0
  213. package/dist/blocks/field-map-01/index.d.ts +3 -0
  214. package/dist/blocks/field-map-01/index.d.ts.map +1 -0
  215. package/dist/blocks/field-map-01/index.js +1 -0
  216. package/dist/blocks/forgot-password-01/forgot-password.d.ts +288 -0
  217. package/dist/blocks/forgot-password-01/forgot-password.d.ts.map +1 -0
  218. package/dist/blocks/forgot-password-01/forgot-password.js +190 -0
  219. package/dist/blocks/forgot-password-01/index.d.ts +3 -0
  220. package/dist/blocks/forgot-password-01/index.d.ts.map +1 -0
  221. package/dist/blocks/forgot-password-01/index.js +1 -0
  222. package/dist/blocks/gallery-01/gallery.d.ts +208 -0
  223. package/dist/blocks/gallery-01/gallery.d.ts.map +1 -0
  224. package/dist/blocks/gallery-01/gallery.js +174 -0
  225. package/dist/blocks/gallery-01/index.d.ts +3 -0
  226. package/dist/blocks/gallery-01/index.d.ts.map +1 -0
  227. package/dist/blocks/gallery-01/index.js +1 -0
  228. package/dist/blocks/gantt-01/gantt.d.ts +290 -0
  229. package/dist/blocks/gantt-01/gantt.d.ts.map +1 -0
  230. package/dist/blocks/gantt-01/gantt.js +224 -0
  231. package/dist/blocks/gantt-01/index.d.ts +3 -0
  232. package/dist/blocks/gantt-01/index.d.ts.map +1 -0
  233. package/dist/blocks/gantt-01/index.js +1 -0
  234. package/dist/blocks/handoff-01/handoff-01.d.ts +326 -0
  235. package/dist/blocks/handoff-01/handoff-01.d.ts.map +1 -0
  236. package/dist/blocks/handoff-01/handoff-01.js +180 -0
  237. package/dist/blocks/handoff-01/index.d.ts +3 -0
  238. package/dist/blocks/handoff-01/index.d.ts.map +1 -0
  239. package/dist/blocks/handoff-01/index.js +1 -0
  240. package/dist/blocks/help-01/help.d.ts +254 -0
  241. package/dist/blocks/help-01/help.d.ts.map +1 -0
  242. package/dist/blocks/help-01/help.js +188 -0
  243. package/dist/blocks/help-01/index.d.ts +3 -0
  244. package/dist/blocks/help-01/index.d.ts.map +1 -0
  245. package/dist/blocks/help-01/index.js +1 -0
  246. package/dist/blocks/hero-01/hero.d.ts +105 -34
  247. package/dist/blocks/hero-01/hero.d.ts.map +1 -1
  248. package/dist/blocks/hero-01/hero.js +23 -15
  249. package/dist/blocks/hero-01/index.d.ts +1 -1
  250. package/dist/blocks/hero-01/index.d.ts.map +1 -1
  251. package/dist/blocks/hero-02/hero-02.d.ts +244 -0
  252. package/dist/blocks/hero-02/hero-02.d.ts.map +1 -0
  253. package/dist/blocks/hero-02/hero-02.js +87 -0
  254. package/dist/blocks/hero-02/index.d.ts +3 -0
  255. package/dist/blocks/hero-02/index.d.ts.map +1 -0
  256. package/dist/blocks/hero-02/index.js +1 -0
  257. package/dist/blocks/hero-03/hero-03.d.ts +247 -0
  258. package/dist/blocks/hero-03/hero-03.d.ts.map +1 -0
  259. package/dist/blocks/hero-03/hero-03.js +93 -0
  260. package/dist/blocks/hero-03/index.d.ts +3 -0
  261. package/dist/blocks/hero-03/index.d.ts.map +1 -0
  262. package/dist/blocks/hero-03/index.js +1 -0
  263. package/dist/blocks/history-01/history-01.d.ts +414 -0
  264. package/dist/blocks/history-01/history-01.d.ts.map +1 -0
  265. package/dist/blocks/history-01/history-01.js +285 -0
  266. package/dist/blocks/history-01/index.d.ts +3 -0
  267. package/dist/blocks/history-01/index.d.ts.map +1 -0
  268. package/dist/blocks/history-01/index.js +1 -0
  269. package/dist/blocks/inbox-01/inbox.d.ts +349 -0
  270. package/dist/blocks/inbox-01/inbox.d.ts.map +1 -0
  271. package/dist/blocks/inbox-01/inbox.js +244 -0
  272. package/dist/blocks/inbox-01/index.d.ts +3 -0
  273. package/dist/blocks/inbox-01/index.d.ts.map +1 -0
  274. package/dist/blocks/inbox-01/index.js +1 -0
  275. package/dist/blocks/index.d.ts +203 -0
  276. package/dist/blocks/index.d.ts.map +1 -1
  277. package/dist/blocks/index.js +118 -0
  278. package/dist/blocks/industries-01/index.d.ts +3 -0
  279. package/dist/blocks/industries-01/index.d.ts.map +1 -0
  280. package/dist/blocks/industries-01/index.js +1 -0
  281. package/dist/blocks/industries-01/industries.d.ts +164 -0
  282. package/dist/blocks/industries-01/industries.d.ts.map +1 -0
  283. package/dist/blocks/industries-01/industries.js +96 -0
  284. package/dist/blocks/intake-01/index.d.ts +3 -0
  285. package/dist/blocks/intake-01/index.d.ts.map +1 -0
  286. package/dist/blocks/intake-01/index.js +1 -0
  287. package/dist/blocks/intake-01/intake-01.d.ts +305 -0
  288. package/dist/blocks/intake-01/intake-01.d.ts.map +1 -0
  289. package/dist/blocks/intake-01/intake-01.js +178 -0
  290. package/dist/blocks/integration-01/index.d.ts +3 -0
  291. package/dist/blocks/integration-01/index.d.ts.map +1 -0
  292. package/dist/blocks/integration-01/index.js +1 -0
  293. package/dist/blocks/integration-01/integration.d.ts +226 -0
  294. package/dist/blocks/integration-01/integration.d.ts.map +1 -0
  295. package/dist/blocks/integration-01/integration.js +170 -0
  296. package/dist/blocks/invite-user-01/index.d.ts +3 -0
  297. package/dist/blocks/invite-user-01/index.d.ts.map +1 -0
  298. package/dist/blocks/invite-user-01/index.js +1 -0
  299. package/dist/blocks/invite-user-01/invite-user.d.ts +317 -0
  300. package/dist/blocks/invite-user-01/invite-user.d.ts.map +1 -0
  301. package/dist/blocks/invite-user-01/invite-user.js +228 -0
  302. package/dist/blocks/issue-detail-01/index.d.ts +3 -0
  303. package/dist/blocks/issue-detail-01/index.d.ts.map +1 -0
  304. package/dist/blocks/issue-detail-01/index.js +1 -0
  305. package/dist/blocks/issue-detail-01/issue-detail.d.ts +355 -0
  306. package/dist/blocks/issue-detail-01/issue-detail.d.ts.map +1 -0
  307. package/dist/blocks/issue-detail-01/issue-detail.js +187 -0
  308. package/dist/blocks/issue-list-01/index.d.ts +3 -0
  309. package/dist/blocks/issue-list-01/index.d.ts.map +1 -0
  310. package/dist/blocks/issue-list-01/index.js +1 -0
  311. package/dist/blocks/issue-list-01/issue-list.d.ts +298 -0
  312. package/dist/blocks/issue-list-01/issue-list.d.ts.map +1 -0
  313. package/dist/blocks/issue-list-01/issue-list.js +284 -0
  314. package/dist/blocks/kanban-01/index.d.ts +3 -0
  315. package/dist/blocks/kanban-01/index.d.ts.map +1 -0
  316. package/dist/blocks/kanban-01/index.js +1 -0
  317. package/dist/blocks/kanban-01/kanban.d.ts +278 -0
  318. package/dist/blocks/kanban-01/kanban.d.ts.map +1 -0
  319. package/dist/blocks/kanban-01/kanban.js +144 -0
  320. package/dist/blocks/leaderboard-01/index.d.ts +3 -0
  321. package/dist/blocks/leaderboard-01/index.d.ts.map +1 -0
  322. package/dist/blocks/leaderboard-01/index.js +1 -0
  323. package/dist/blocks/leaderboard-01/leaderboard.d.ts +250 -0
  324. package/dist/blocks/leaderboard-01/leaderboard.d.ts.map +1 -0
  325. package/dist/blocks/leaderboard-01/leaderboard.js +121 -0
  326. package/dist/blocks/login-01/index.d.ts +3 -0
  327. package/dist/blocks/login-01/index.d.ts.map +1 -0
  328. package/dist/blocks/login-01/index.js +1 -0
  329. package/dist/blocks/login-01/login-01.d.ts +356 -0
  330. package/dist/blocks/login-01/login-01.d.ts.map +1 -0
  331. package/dist/blocks/login-01/login-01.js +249 -0
  332. package/dist/blocks/logo-cloud-01/index.d.ts +3 -0
  333. package/dist/blocks/logo-cloud-01/index.d.ts.map +1 -0
  334. package/dist/blocks/logo-cloud-01/index.js +1 -0
  335. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts +181 -0
  336. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts.map +1 -0
  337. package/dist/blocks/logo-cloud-01/logo-cloud.js +118 -0
  338. package/dist/blocks/magic-link-01/index.d.ts +3 -0
  339. package/dist/blocks/magic-link-01/index.d.ts.map +1 -0
  340. package/dist/blocks/magic-link-01/index.js +1 -0
  341. package/dist/blocks/magic-link-01/magic-link-01.d.ts +367 -0
  342. package/dist/blocks/magic-link-01/magic-link-01.d.ts.map +1 -0
  343. package/dist/blocks/magic-link-01/magic-link-01.js +233 -0
  344. package/dist/blocks/member-list-01/index.d.ts +3 -0
  345. package/dist/blocks/member-list-01/index.d.ts.map +1 -0
  346. package/dist/blocks/member-list-01/index.js +1 -0
  347. package/dist/blocks/member-list-01/member-list.d.ts +192 -0
  348. package/dist/blocks/member-list-01/member-list.d.ts.map +1 -0
  349. package/dist/blocks/member-list-01/member-list.js +142 -0
  350. package/dist/blocks/milestone-timeline-01/index.d.ts +3 -0
  351. package/dist/blocks/milestone-timeline-01/index.d.ts.map +1 -0
  352. package/dist/blocks/milestone-timeline-01/index.js +1 -0
  353. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts +217 -0
  354. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts.map +1 -0
  355. package/dist/blocks/milestone-timeline-01/milestone-timeline.js +173 -0
  356. package/dist/blocks/newsletter-01/index.d.ts +3 -0
  357. package/dist/blocks/newsletter-01/index.d.ts.map +1 -0
  358. package/dist/blocks/newsletter-01/index.js +1 -0
  359. package/dist/blocks/newsletter-01/newsletter.d.ts +216 -0
  360. package/dist/blocks/newsletter-01/newsletter.d.ts.map +1 -0
  361. package/dist/blocks/newsletter-01/newsletter.js +102 -0
  362. package/dist/blocks/notification-center-01/index.d.ts +3 -0
  363. package/dist/blocks/notification-center-01/index.d.ts.map +1 -0
  364. package/dist/blocks/notification-center-01/index.js +1 -0
  365. package/dist/blocks/notification-center-01/notification-center-01.d.ts +341 -0
  366. package/dist/blocks/notification-center-01/notification-center-01.d.ts.map +1 -0
  367. package/dist/blocks/notification-center-01/notification-center-01.js +203 -0
  368. package/dist/blocks/offer-01/index.d.ts +3 -0
  369. package/dist/blocks/offer-01/index.d.ts.map +1 -0
  370. package/dist/blocks/offer-01/index.js +1 -0
  371. package/dist/blocks/offer-01/offer.d.ts +139 -0
  372. package/dist/blocks/offer-01/offer.d.ts.map +1 -0
  373. package/dist/blocks/offer-01/offer.js +81 -0
  374. package/dist/blocks/offering-01/index.d.ts +3 -0
  375. package/dist/blocks/offering-01/index.d.ts.map +1 -0
  376. package/dist/blocks/offering-01/index.js +1 -0
  377. package/dist/blocks/offering-01/offering.d.ts +245 -0
  378. package/dist/blocks/offering-01/offering.d.ts.map +1 -0
  379. package/dist/blocks/offering-01/offering.js +144 -0
  380. package/dist/blocks/offering-categories-01/index.d.ts +3 -0
  381. package/dist/blocks/offering-categories-01/index.d.ts.map +1 -0
  382. package/dist/blocks/offering-categories-01/index.js +1 -0
  383. package/dist/blocks/offering-categories-01/offering-categories.d.ts +248 -0
  384. package/dist/blocks/offering-categories-01/offering-categories.d.ts.map +1 -0
  385. package/dist/blocks/offering-categories-01/offering-categories.js +153 -0
  386. package/dist/blocks/offering-list-01/index.d.ts +3 -0
  387. package/dist/blocks/offering-list-01/index.d.ts.map +1 -0
  388. package/dist/blocks/offering-list-01/index.js +1 -0
  389. package/dist/blocks/offering-list-01/offering-list.d.ts +362 -0
  390. package/dist/blocks/offering-list-01/offering-list.d.ts.map +1 -0
  391. package/dist/blocks/offering-list-01/offering-list.js +366 -0
  392. package/dist/blocks/onboarding-01/index.d.ts +3 -0
  393. package/dist/blocks/onboarding-01/index.d.ts.map +1 -0
  394. package/dist/blocks/onboarding-01/index.js +1 -0
  395. package/dist/blocks/onboarding-01/onboarding.d.ts +199 -0
  396. package/dist/blocks/onboarding-01/onboarding.d.ts.map +1 -0
  397. package/dist/blocks/onboarding-01/onboarding.js +182 -0
  398. package/dist/blocks/ops-checklist-01/index.d.ts +3 -0
  399. package/dist/blocks/ops-checklist-01/index.d.ts.map +1 -0
  400. package/dist/blocks/ops-checklist-01/index.js +1 -0
  401. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts +308 -0
  402. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts.map +1 -0
  403. package/dist/blocks/ops-checklist-01/ops-checklist-01.js +165 -0
  404. package/dist/blocks/page-header-01/index.d.ts +1 -1
  405. package/dist/blocks/page-header-01/index.d.ts.map +1 -1
  406. package/dist/blocks/page-header-01/page-header.d.ts +124 -11
  407. package/dist/blocks/page-header-01/page-header.d.ts.map +1 -1
  408. package/dist/blocks/page-header-01/page-header.js +25 -9
  409. package/dist/blocks/passkey-01/index.d.ts +3 -0
  410. package/dist/blocks/passkey-01/index.d.ts.map +1 -0
  411. package/dist/blocks/passkey-01/index.js +1 -0
  412. package/dist/blocks/passkey-01/passkey-01.d.ts +334 -0
  413. package/dist/blocks/passkey-01/passkey-01.d.ts.map +1 -0
  414. package/dist/blocks/passkey-01/passkey-01.js +192 -0
  415. package/dist/blocks/permission-matrix-01/index.d.ts +3 -0
  416. package/dist/blocks/permission-matrix-01/index.d.ts.map +1 -0
  417. package/dist/blocks/permission-matrix-01/index.js +1 -0
  418. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts +282 -0
  419. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts.map +1 -0
  420. package/dist/blocks/permission-matrix-01/permission-matrix.js +173 -0
  421. package/dist/blocks/pricing-01/index.d.ts +1 -0
  422. package/dist/blocks/pricing-01/index.d.ts.map +1 -1
  423. package/dist/blocks/pricing-01/pricing.d.ts +118 -1
  424. package/dist/blocks/pricing-01/pricing.d.ts.map +1 -1
  425. package/dist/blocks/pricing-01/pricing.js +9 -2
  426. package/dist/blocks/pricing-compare-01/index.d.ts +3 -0
  427. package/dist/blocks/pricing-compare-01/index.d.ts.map +1 -0
  428. package/dist/blocks/pricing-compare-01/index.js +1 -0
  429. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts +277 -0
  430. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts.map +1 -0
  431. package/dist/blocks/pricing-compare-01/pricing-compare.js +126 -0
  432. package/dist/blocks/project-01/index.d.ts +3 -0
  433. package/dist/blocks/project-01/index.d.ts.map +1 -0
  434. package/dist/blocks/project-01/index.js +1 -0
  435. package/dist/blocks/project-01/project.d.ts +323 -0
  436. package/dist/blocks/project-01/project.d.ts.map +1 -0
  437. package/dist/blocks/project-01/project.js +247 -0
  438. package/dist/blocks/project-dashboard-01/index.d.ts +3 -0
  439. package/dist/blocks/project-dashboard-01/index.d.ts.map +1 -0
  440. package/dist/blocks/project-dashboard-01/index.js +1 -0
  441. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts +200 -0
  442. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts.map +1 -0
  443. package/dist/blocks/project-dashboard-01/project-dashboard.js +124 -0
  444. package/dist/blocks/project-list-01/index.d.ts +3 -0
  445. package/dist/blocks/project-list-01/index.d.ts.map +1 -0
  446. package/dist/blocks/project-list-01/index.js +1 -0
  447. package/dist/blocks/project-list-01/project-list.d.ts +301 -0
  448. package/dist/blocks/project-list-01/project-list.d.ts.map +1 -0
  449. package/dist/blocks/project-list-01/project-list.js +305 -0
  450. package/dist/blocks/provisioning-01/index.d.ts +3 -0
  451. package/dist/blocks/provisioning-01/index.d.ts.map +1 -0
  452. package/dist/blocks/provisioning-01/index.js +1 -0
  453. package/dist/blocks/provisioning-01/provisioning.d.ts +357 -0
  454. package/dist/blocks/provisioning-01/provisioning.d.ts.map +1 -0
  455. package/dist/blocks/provisioning-01/provisioning.js +230 -0
  456. package/dist/blocks/quick-view-01/index.d.ts +3 -0
  457. package/dist/blocks/quick-view-01/index.d.ts.map +1 -0
  458. package/dist/blocks/quick-view-01/index.js +1 -0
  459. package/dist/blocks/quick-view-01/quick-view.d.ts +215 -0
  460. package/dist/blocks/quick-view-01/quick-view.d.ts.map +1 -0
  461. package/dist/blocks/quick-view-01/quick-view.js +136 -0
  462. package/dist/blocks/rate-card-01/index.d.ts +3 -0
  463. package/dist/blocks/rate-card-01/index.d.ts.map +1 -0
  464. package/dist/blocks/rate-card-01/index.js +1 -0
  465. package/dist/blocks/rate-card-01/rate-card.d.ts +184 -0
  466. package/dist/blocks/rate-card-01/rate-card.d.ts.map +1 -0
  467. package/dist/blocks/rate-card-01/rate-card.js +79 -0
  468. package/dist/blocks/reset-password-01/index.d.ts +3 -0
  469. package/dist/blocks/reset-password-01/index.d.ts.map +1 -0
  470. package/dist/blocks/reset-password-01/index.js +1 -0
  471. package/dist/blocks/reset-password-01/reset-password.d.ts +276 -0
  472. package/dist/blocks/reset-password-01/reset-password.d.ts.map +1 -0
  473. package/dist/blocks/reset-password-01/reset-password.js +175 -0
  474. package/dist/blocks/resource-list-01/index.d.ts +3 -0
  475. package/dist/blocks/resource-list-01/index.d.ts.map +1 -0
  476. package/dist/blocks/resource-list-01/index.js +1 -0
  477. package/dist/blocks/resource-list-01/resource-list.d.ts +237 -0
  478. package/dist/blocks/resource-list-01/resource-list.d.ts.map +1 -0
  479. package/dist/blocks/resource-list-01/resource-list.js +154 -0
  480. package/dist/blocks/retention-01/index.d.ts +3 -0
  481. package/dist/blocks/retention-01/index.d.ts.map +1 -0
  482. package/dist/blocks/retention-01/index.js +1 -0
  483. package/dist/blocks/retention-01/retention.d.ts +255 -0
  484. package/dist/blocks/retention-01/retention.d.ts.map +1 -0
  485. package/dist/blocks/retention-01/retention.js +145 -0
  486. package/dist/blocks/run-console-01/run-console.d.ts +14 -1
  487. package/dist/blocks/run-console-01/run-console.d.ts.map +1 -1
  488. package/dist/blocks/run-console-01/run-console.js +3 -2
  489. package/dist/blocks/services-01/index.d.ts +3 -0
  490. package/dist/blocks/services-01/index.d.ts.map +1 -0
  491. package/dist/blocks/services-01/index.js +1 -0
  492. package/dist/blocks/services-01/services.d.ts +159 -0
  493. package/dist/blocks/services-01/services.d.ts.map +1 -0
  494. package/dist/blocks/services-01/services.js +81 -0
  495. package/dist/blocks/settings-integrations-01/index.d.ts +3 -0
  496. package/dist/blocks/settings-integrations-01/index.d.ts.map +1 -0
  497. package/dist/blocks/settings-integrations-01/index.js +1 -0
  498. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts +246 -0
  499. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts.map +1 -0
  500. package/dist/blocks/settings-integrations-01/settings-integrations.js +213 -0
  501. package/dist/blocks/settings-members-01/index.d.ts +3 -0
  502. package/dist/blocks/settings-members-01/index.d.ts.map +1 -0
  503. package/dist/blocks/settings-members-01/index.js +1 -0
  504. package/dist/blocks/settings-members-01/settings-members.d.ts +396 -0
  505. package/dist/blocks/settings-members-01/settings-members.d.ts.map +1 -0
  506. package/dist/blocks/settings-members-01/settings-members.js +255 -0
  507. package/dist/blocks/settings-notifications-01/index.d.ts +3 -0
  508. package/dist/blocks/settings-notifications-01/index.d.ts.map +1 -0
  509. package/dist/blocks/settings-notifications-01/index.js +1 -0
  510. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts +270 -0
  511. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts.map +1 -0
  512. package/dist/blocks/settings-notifications-01/settings-notifications.js +202 -0
  513. package/dist/blocks/settings-security-01/index.d.ts +3 -0
  514. package/dist/blocks/settings-security-01/index.d.ts.map +1 -0
  515. package/dist/blocks/settings-security-01/index.js +1 -0
  516. package/dist/blocks/settings-security-01/settings-security.d.ts +439 -0
  517. package/dist/blocks/settings-security-01/settings-security.d.ts.map +1 -0
  518. package/dist/blocks/settings-security-01/settings-security.js +244 -0
  519. package/dist/blocks/shortlist-01/index.d.ts +3 -0
  520. package/dist/blocks/shortlist-01/index.d.ts.map +1 -0
  521. package/dist/blocks/shortlist-01/index.js +1 -0
  522. package/dist/blocks/shortlist-01/shortlist-01.d.ts +337 -0
  523. package/dist/blocks/shortlist-01/shortlist-01.d.ts.map +1 -0
  524. package/dist/blocks/shortlist-01/shortlist-01.js +191 -0
  525. package/dist/blocks/showcase-01/index.d.ts +3 -0
  526. package/dist/blocks/showcase-01/index.d.ts.map +1 -0
  527. package/dist/blocks/showcase-01/index.js +1 -0
  528. package/dist/blocks/showcase-01/showcase-01.d.ts +238 -0
  529. package/dist/blocks/showcase-01/showcase-01.d.ts.map +1 -0
  530. package/dist/blocks/showcase-01/showcase-01.js +84 -0
  531. package/dist/blocks/signup-01/index.d.ts +3 -0
  532. package/dist/blocks/signup-01/index.d.ts.map +1 -0
  533. package/dist/blocks/signup-01/index.js +1 -0
  534. package/dist/blocks/signup-01/signup-01.d.ts +405 -0
  535. package/dist/blocks/signup-01/signup-01.d.ts.map +1 -0
  536. package/dist/blocks/signup-01/signup-01.js +209 -0
  537. package/dist/blocks/site-footer/site-footer.d.ts +18 -1
  538. package/dist/blocks/site-footer/site-footer.d.ts.map +1 -1
  539. package/dist/blocks/site-footer/site-footer.js +8 -2
  540. package/dist/blocks/site-header/site-header.js +1 -1
  541. package/dist/blocks/site-navbar/site-navbar.d.ts +37 -3
  542. package/dist/blocks/site-navbar/site-navbar.d.ts.map +1 -1
  543. package/dist/blocks/site-navbar/site-navbar.js +33 -4
  544. package/dist/blocks/spec-table-01/index.d.ts +3 -0
  545. package/dist/blocks/spec-table-01/index.d.ts.map +1 -0
  546. package/dist/blocks/spec-table-01/index.js +1 -0
  547. package/dist/blocks/spec-table-01/spec-table.d.ts +293 -0
  548. package/dist/blocks/spec-table-01/spec-table.d.ts.map +1 -0
  549. package/dist/blocks/spec-table-01/spec-table.js +217 -0
  550. package/dist/blocks/story-01/index.d.ts +3 -0
  551. package/dist/blocks/story-01/index.d.ts.map +1 -0
  552. package/dist/blocks/story-01/index.js +1 -0
  553. package/dist/blocks/story-01/story.d.ts +153 -0
  554. package/dist/blocks/story-01/story.d.ts.map +1 -0
  555. package/dist/blocks/story-01/story.js +103 -0
  556. package/dist/blocks/summary-01/index.d.ts +3 -0
  557. package/dist/blocks/summary-01/index.d.ts.map +1 -0
  558. package/dist/blocks/summary-01/index.js +1 -0
  559. package/dist/blocks/summary-01/summary.d.ts +300 -0
  560. package/dist/blocks/summary-01/summary.d.ts.map +1 -0
  561. package/dist/blocks/summary-01/summary.js +174 -0
  562. package/dist/blocks/team-01/index.d.ts +3 -0
  563. package/dist/blocks/team-01/index.d.ts.map +1 -0
  564. package/dist/blocks/team-01/index.js +1 -0
  565. package/dist/blocks/team-01/team.d.ts +176 -0
  566. package/dist/blocks/team-01/team.d.ts.map +1 -0
  567. package/dist/blocks/team-01/team.js +117 -0
  568. package/dist/blocks/testimonial-01/index.d.ts +3 -0
  569. package/dist/blocks/testimonial-01/index.d.ts.map +1 -0
  570. package/dist/blocks/testimonial-01/index.js +1 -0
  571. package/dist/blocks/testimonial-01/testimonial.d.ts +173 -0
  572. package/dist/blocks/testimonial-01/testimonial.d.ts.map +1 -0
  573. package/dist/blocks/testimonial-01/testimonial.js +87 -0
  574. package/dist/blocks/todo-01/index.d.ts +3 -0
  575. package/dist/blocks/todo-01/index.d.ts.map +1 -0
  576. package/dist/blocks/todo-01/index.js +1 -0
  577. package/dist/blocks/todo-01/todo.d.ts +286 -0
  578. package/dist/blocks/todo-01/todo.d.ts.map +1 -0
  579. package/dist/blocks/todo-01/todo.js +149 -0
  580. package/dist/blocks/trend-01/index.d.ts +3 -0
  581. package/dist/blocks/trend-01/index.d.ts.map +1 -0
  582. package/dist/blocks/trend-01/index.js +1 -0
  583. package/dist/blocks/trend-01/trend.d.ts +184 -0
  584. package/dist/blocks/trend-01/trend.d.ts.map +1 -0
  585. package/dist/blocks/trend-01/trend.js +99 -0
  586. package/dist/blocks/trust-strip-01/index.d.ts +3 -0
  587. package/dist/blocks/trust-strip-01/index.d.ts.map +1 -0
  588. package/dist/blocks/trust-strip-01/index.js +1 -0
  589. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts +139 -0
  590. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts.map +1 -0
  591. package/dist/blocks/trust-strip-01/trust-strip-01.js +58 -0
  592. package/dist/blocks/two-factor-01/index.d.ts +3 -0
  593. package/dist/blocks/two-factor-01/index.d.ts.map +1 -0
  594. package/dist/blocks/two-factor-01/index.js +1 -0
  595. package/dist/blocks/two-factor-01/two-factor-01.d.ts +440 -0
  596. package/dist/blocks/two-factor-01/two-factor-01.d.ts.map +1 -0
  597. package/dist/blocks/two-factor-01/two-factor-01.js +273 -0
  598. package/dist/blocks/user-profile-01/index.d.ts +3 -0
  599. package/dist/blocks/user-profile-01/index.d.ts.map +1 -0
  600. package/dist/blocks/user-profile-01/index.js +1 -0
  601. package/dist/blocks/user-profile-01/user-profile-01.d.ts +258 -0
  602. package/dist/blocks/user-profile-01/user-profile-01.d.ts.map +1 -0
  603. package/dist/blocks/user-profile-01/user-profile-01.js +158 -0
  604. package/dist/blocks/verify-email-01/index.d.ts +3 -0
  605. package/dist/blocks/verify-email-01/index.d.ts.map +1 -0
  606. package/dist/blocks/verify-email-01/index.js +1 -0
  607. package/dist/blocks/verify-email-01/verify-email.d.ts +262 -0
  608. package/dist/blocks/verify-email-01/verify-email.d.ts.map +1 -0
  609. package/dist/blocks/verify-email-01/verify-email.js +190 -0
  610. package/dist/blocks/waitlist-01/index.d.ts +3 -0
  611. package/dist/blocks/waitlist-01/index.d.ts.map +1 -0
  612. package/dist/blocks/waitlist-01/index.js +1 -0
  613. package/dist/blocks/waitlist-01/waitlist.d.ts +254 -0
  614. package/dist/blocks/waitlist-01/waitlist.d.ts.map +1 -0
  615. package/dist/blocks/waitlist-01/waitlist.js +75 -0
  616. package/dist/catalog.d.ts.map +1 -1
  617. package/dist/catalog.js +1641 -1
  618. package/dist/components/index.d.ts +114 -0
  619. package/dist/components/index.d.ts.map +1 -1
  620. package/dist/components/index.js +134 -0
  621. package/dist/components/ui/accordion.d.ts.map +1 -1
  622. package/dist/components/ui/accordion.js +9 -2
  623. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  624. package/dist/components/ui/alert-dialog.js +22 -4
  625. package/dist/components/ui/announcement.d.ts +169 -0
  626. package/dist/components/ui/announcement.d.ts.map +1 -0
  627. package/dist/components/ui/announcement.js +123 -0
  628. package/dist/components/ui/avatar-group.d.ts +176 -0
  629. package/dist/components/ui/avatar-group.d.ts.map +1 -0
  630. package/dist/components/ui/avatar-group.js +135 -0
  631. package/dist/components/ui/billing-source.d.ts +293 -0
  632. package/dist/components/ui/billing-source.d.ts.map +1 -0
  633. package/dist/components/ui/billing-source.js +136 -0
  634. package/dist/components/ui/button.d.ts +16 -1
  635. package/dist/components/ui/button.d.ts.map +1 -1
  636. package/dist/components/ui/button.js +17 -2
  637. package/dist/components/ui/calendar.d.ts +9 -0
  638. package/dist/components/ui/calendar.d.ts.map +1 -1
  639. package/dist/components/ui/calendar.js +30 -2
  640. package/dist/components/ui/carousel.d.ts +7 -0
  641. package/dist/components/ui/carousel.d.ts.map +1 -1
  642. package/dist/components/ui/carousel.js +58 -1
  643. package/dist/components/ui/chart.d.ts +334 -0
  644. package/dist/components/ui/chart.d.ts.map +1 -0
  645. package/dist/components/ui/chart.js +369 -0
  646. package/dist/components/ui/checkbox.d.ts +10 -0
  647. package/dist/components/ui/checkbox.d.ts.map +1 -1
  648. package/dist/components/ui/checkbox.js +19 -1
  649. package/dist/components/ui/checklist.d.ts +262 -0
  650. package/dist/components/ui/checklist.d.ts.map +1 -0
  651. package/dist/components/ui/checklist.js +135 -0
  652. package/dist/components/ui/choice-card.d.ts +273 -0
  653. package/dist/components/ui/choice-card.d.ts.map +1 -0
  654. package/dist/components/ui/choice-card.js +138 -0
  655. package/dist/components/ui/code-block.d.ts +182 -0
  656. package/dist/components/ui/code-block.d.ts.map +1 -0
  657. package/dist/components/ui/code-block.js +108 -0
  658. package/dist/components/ui/cohort-grid.d.ts +210 -0
  659. package/dist/components/ui/cohort-grid.d.ts.map +1 -0
  660. package/dist/components/ui/cohort-grid.js +202 -0
  661. package/dist/components/ui/collapsible.d.ts +11 -0
  662. package/dist/components/ui/collapsible.d.ts.map +1 -1
  663. package/dist/components/ui/collapsible.js +13 -2
  664. package/dist/components/ui/combobox.d.ts +4 -1
  665. package/dist/components/ui/combobox.d.ts.map +1 -1
  666. package/dist/components/ui/combobox.js +20 -4
  667. package/dist/components/ui/command-palette.d.ts +11 -0
  668. package/dist/components/ui/command-palette.d.ts.map +1 -1
  669. package/dist/components/ui/command-palette.js +49 -3
  670. package/dist/components/ui/contribution-graph.d.ts +156 -0
  671. package/dist/components/ui/contribution-graph.d.ts.map +1 -0
  672. package/dist/components/ui/contribution-graph.js +170 -0
  673. package/dist/components/ui/creatable-combobox.d.ts +153 -0
  674. package/dist/components/ui/creatable-combobox.d.ts.map +1 -0
  675. package/dist/components/ui/creatable-combobox.js +285 -0
  676. package/dist/components/ui/data-toolbar.d.ts +133 -0
  677. package/dist/components/ui/data-toolbar.d.ts.map +1 -0
  678. package/dist/components/ui/data-toolbar.js +67 -0
  679. package/dist/components/ui/date-picker.d.ts.map +1 -1
  680. package/dist/components/ui/date-picker.js +9 -1
  681. package/dist/components/ui/dialog.d.ts +31 -2
  682. package/dist/components/ui/dialog.d.ts.map +1 -1
  683. package/dist/components/ui/dialog.js +40 -6
  684. package/dist/components/ui/drawer.d.ts +270 -0
  685. package/dist/components/ui/drawer.d.ts.map +1 -0
  686. package/dist/components/ui/drawer.js +241 -0
  687. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  688. package/dist/components/ui/dropdown-menu.js +6 -1
  689. package/dist/components/ui/dropzone.d.ts +147 -0
  690. package/dist/components/ui/dropzone.d.ts.map +1 -0
  691. package/dist/components/ui/dropzone.js +141 -0
  692. package/dist/components/ui/emoji-picker.d.ts +328 -0
  693. package/dist/components/ui/emoji-picker.d.ts.map +1 -0
  694. package/dist/components/ui/emoji-picker.js +278 -0
  695. package/dist/components/ui/file-upload.d.ts +152 -0
  696. package/dist/components/ui/file-upload.d.ts.map +1 -0
  697. package/dist/components/ui/file-upload.js +101 -0
  698. package/dist/components/ui/filter-panel.d.ts +164 -0
  699. package/dist/components/ui/filter-panel.d.ts.map +1 -0
  700. package/dist/components/ui/filter-panel.js +91 -0
  701. package/dist/components/ui/form-dialog.d.ts +257 -0
  702. package/dist/components/ui/form-dialog.d.ts.map +1 -0
  703. package/dist/components/ui/form-dialog.js +176 -0
  704. package/dist/components/ui/form-wizard.d.ts +251 -0
  705. package/dist/components/ui/form-wizard.d.ts.map +1 -0
  706. package/dist/components/ui/form-wizard.js +151 -0
  707. package/dist/components/ui/image-list-field.d.ts +232 -0
  708. package/dist/components/ui/image-list-field.d.ts.map +1 -0
  709. package/dist/components/ui/image-list-field.js +168 -0
  710. package/dist/components/ui/image-zoom.d.ts +164 -0
  711. package/dist/components/ui/image-zoom.d.ts.map +1 -0
  712. package/dist/components/ui/image-zoom.js +169 -0
  713. package/dist/components/ui/intensity-grid.d.ts +270 -0
  714. package/dist/components/ui/intensity-grid.d.ts.map +1 -0
  715. package/dist/components/ui/intensity-grid.js +211 -0
  716. package/dist/components/ui/lifecycle-button.d.ts +276 -0
  717. package/dist/components/ui/lifecycle-button.d.ts.map +1 -0
  718. package/dist/components/ui/lifecycle-button.js +144 -0
  719. package/dist/components/ui/lightbox.d.ts +165 -0
  720. package/dist/components/ui/lightbox.d.ts.map +1 -0
  721. package/dist/components/ui/lightbox.js +130 -0
  722. package/dist/components/ui/list-panel.d.ts +288 -0
  723. package/dist/components/ui/list-panel.d.ts.map +1 -0
  724. package/dist/components/ui/list-panel.js +139 -0
  725. package/dist/components/ui/mega-menu.d.ts +244 -0
  726. package/dist/components/ui/mega-menu.d.ts.map +1 -0
  727. package/dist/components/ui/mega-menu.js +97 -0
  728. package/dist/components/ui/menubar.d.ts +9 -0
  729. package/dist/components/ui/menubar.d.ts.map +1 -1
  730. package/dist/components/ui/menubar.js +10 -1
  731. package/dist/components/ui/metric.d.ts +123 -0
  732. package/dist/components/ui/metric.d.ts.map +1 -0
  733. package/dist/components/ui/metric.js +68 -0
  734. package/dist/components/ui/mini-calendar.d.ts +143 -0
  735. package/dist/components/ui/mini-calendar.d.ts.map +1 -0
  736. package/dist/components/ui/mini-calendar.js +261 -0
  737. package/dist/components/ui/mode-toggle.d.ts +102 -0
  738. package/dist/components/ui/mode-toggle.d.ts.map +1 -0
  739. package/dist/components/ui/mode-toggle.js +83 -0
  740. package/dist/components/ui/money-field.d.ts +200 -0
  741. package/dist/components/ui/money-field.d.ts.map +1 -0
  742. package/dist/components/ui/money-field.js +215 -0
  743. package/dist/components/ui/multi-combobox.d.ts +181 -0
  744. package/dist/components/ui/multi-combobox.d.ts.map +1 -0
  745. package/dist/components/ui/multi-combobox.js +297 -0
  746. package/dist/components/ui/native-select.d.ts.map +1 -1
  747. package/dist/components/ui/native-select.js +8 -1
  748. package/dist/components/ui/navigation-menu.d.ts +7 -0
  749. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  750. package/dist/components/ui/navigation-menu.js +8 -1
  751. package/dist/components/ui/nested-tabs.d.ts +188 -0
  752. package/dist/components/ui/nested-tabs.d.ts.map +1 -0
  753. package/dist/components/ui/nested-tabs.js +75 -0
  754. package/dist/components/ui/number-field.d.ts +40 -7
  755. package/dist/components/ui/number-field.d.ts.map +1 -1
  756. package/dist/components/ui/number-field.js +37 -7
  757. package/dist/components/ui/overflow-actions.d.ts +169 -0
  758. package/dist/components/ui/overflow-actions.d.ts.map +1 -0
  759. package/dist/components/ui/overflow-actions.js +266 -0
  760. package/dist/components/ui/pack-swatch.d.ts +177 -0
  761. package/dist/components/ui/pack-swatch.d.ts.map +1 -0
  762. package/dist/components/ui/pack-swatch.js +117 -0
  763. package/dist/components/ui/pack-switcher.d.ts +221 -0
  764. package/dist/components/ui/pack-switcher.d.ts.map +1 -0
  765. package/dist/components/ui/pack-switcher.js +94 -0
  766. package/dist/components/ui/pagination.d.ts +22 -0
  767. package/dist/components/ui/pagination.d.ts.map +1 -1
  768. package/dist/components/ui/pagination.js +23 -1
  769. package/dist/components/ui/password-field.d.ts +122 -0
  770. package/dist/components/ui/password-field.d.ts.map +1 -0
  771. package/dist/components/ui/password-field.js +69 -0
  772. package/dist/components/ui/pill.d.ts +172 -0
  773. package/dist/components/ui/pill.d.ts.map +1 -0
  774. package/dist/components/ui/pill.js +102 -0
  775. package/dist/components/ui/platform-modifier-key.d.ts +129 -0
  776. package/dist/components/ui/platform-modifier-key.d.ts.map +1 -0
  777. package/dist/components/ui/platform-modifier-key.js +125 -0
  778. package/dist/components/ui/popover.d.ts.map +1 -1
  779. package/dist/components/ui/popover.js +8 -1
  780. package/dist/components/ui/price.d.ts +144 -0
  781. package/dist/components/ui/price.d.ts.map +1 -0
  782. package/dist/components/ui/price.js +107 -0
  783. package/dist/components/ui/progress.d.ts +55 -1
  784. package/dist/components/ui/progress.d.ts.map +1 -1
  785. package/dist/components/ui/progress.js +110 -2
  786. package/dist/components/ui/prompt-composer.d.ts +302 -0
  787. package/dist/components/ui/prompt-composer.d.ts.map +1 -0
  788. package/dist/components/ui/prompt-composer.js +145 -0
  789. package/dist/components/ui/proportion-list.d.ts +188 -0
  790. package/dist/components/ui/proportion-list.d.ts.map +1 -0
  791. package/dist/components/ui/proportion-list.js +134 -0
  792. package/dist/components/ui/prose.d.ts +23 -0
  793. package/dist/components/ui/prose.d.ts.map +1 -1
  794. package/dist/components/ui/prose.js +30 -1
  795. package/dist/components/ui/radio-group.d.ts +7 -0
  796. package/dist/components/ui/radio-group.d.ts.map +1 -1
  797. package/dist/components/ui/radio-group.js +8 -1
  798. package/dist/components/ui/range-field.d.ts +158 -0
  799. package/dist/components/ui/range-field.d.ts.map +1 -0
  800. package/dist/components/ui/range-field.js +208 -0
  801. package/dist/components/ui/relative-time.d.ts +116 -0
  802. package/dist/components/ui/relative-time.d.ts.map +1 -0
  803. package/dist/components/ui/relative-time.js +67 -0
  804. package/dist/components/ui/reorderable-list.d.ts +262 -0
  805. package/dist/components/ui/reorderable-list.d.ts.map +1 -0
  806. package/dist/components/ui/reorderable-list.js +325 -0
  807. package/dist/components/ui/repeatable-rows.d.ts +241 -0
  808. package/dist/components/ui/repeatable-rows.d.ts.map +1 -0
  809. package/dist/components/ui/repeatable-rows.js +221 -0
  810. package/dist/components/ui/repo-stars.d.ts +165 -0
  811. package/dist/components/ui/repo-stars.d.ts.map +1 -0
  812. package/dist/components/ui/repo-stars.js +92 -0
  813. package/dist/components/ui/resizable.d.ts +24 -0
  814. package/dist/components/ui/resizable.d.ts.map +1 -1
  815. package/dist/components/ui/resizable.js +96 -4
  816. package/dist/components/ui/search-dialog.d.ts +40 -5
  817. package/dist/components/ui/search-dialog.d.ts.map +1 -1
  818. package/dist/components/ui/search-dialog.js +94 -16
  819. package/dist/components/ui/search-field.d.ts +159 -0
  820. package/dist/components/ui/search-field.d.ts.map +1 -0
  821. package/dist/components/ui/search-field.js +98 -0
  822. package/dist/components/ui/section.d.ts +108 -1
  823. package/dist/components/ui/section.d.ts.map +1 -1
  824. package/dist/components/ui/section.js +109 -3
  825. package/dist/components/ui/select.d.ts.map +1 -1
  826. package/dist/components/ui/select.js +9 -1
  827. package/dist/components/ui/selection-toolbar.d.ts +166 -0
  828. package/dist/components/ui/selection-toolbar.d.ts.map +1 -0
  829. package/dist/components/ui/selection-toolbar.js +139 -0
  830. package/dist/components/ui/sidebar.d.ts +29 -0
  831. package/dist/components/ui/sidebar.d.ts.map +1 -1
  832. package/dist/components/ui/sidebar.js +35 -2
  833. package/dist/components/ui/signal-field.d.ts.map +1 -1
  834. package/dist/components/ui/signal-field.js +1 -1
  835. package/dist/components/ui/slider.d.ts +7 -0
  836. package/dist/components/ui/slider.d.ts.map +1 -1
  837. package/dist/components/ui/slider.js +32 -1
  838. package/dist/components/ui/sparkline.d.ts +117 -0
  839. package/dist/components/ui/sparkline.d.ts.map +1 -0
  840. package/dist/components/ui/sparkline.js +113 -0
  841. package/dist/components/ui/spinner.d.ts.map +1 -1
  842. package/dist/components/ui/spinner.js +13 -0
  843. package/dist/components/ui/split-button.d.ts +207 -0
  844. package/dist/components/ui/split-button.d.ts.map +1 -0
  845. package/dist/components/ui/split-button.js +75 -0
  846. package/dist/components/ui/stateful-table.d.ts +345 -0
  847. package/dist/components/ui/stateful-table.d.ts.map +1 -0
  848. package/dist/components/ui/stateful-table.js +169 -0
  849. package/dist/components/ui/status.d.ts +99 -0
  850. package/dist/components/ui/status.d.ts.map +1 -0
  851. package/dist/components/ui/status.js +63 -0
  852. package/dist/components/ui/stepper.d.ts +155 -0
  853. package/dist/components/ui/stepper.d.ts.map +1 -0
  854. package/dist/components/ui/stepper.js +83 -0
  855. package/dist/components/ui/steps.d.ts +141 -0
  856. package/dist/components/ui/steps.d.ts.map +1 -0
  857. package/dist/components/ui/steps.js +128 -0
  858. package/dist/components/ui/switch.d.ts +8 -0
  859. package/dist/components/ui/switch.d.ts.map +1 -1
  860. package/dist/components/ui/switch.js +12 -1
  861. package/dist/components/ui/tabs.d.ts +21 -2
  862. package/dist/components/ui/tabs.d.ts.map +1 -1
  863. package/dist/components/ui/tabs.js +23 -4
  864. package/dist/components/ui/tag-group.d.ts +154 -0
  865. package/dist/components/ui/tag-group.d.ts.map +1 -0
  866. package/dist/components/ui/tag-group.js +111 -0
  867. package/dist/components/ui/task-progress.d.ts +149 -0
  868. package/dist/components/ui/task-progress.d.ts.map +1 -0
  869. package/dist/components/ui/task-progress.js +110 -0
  870. package/dist/components/ui/text-format-toolbar.d.ts +211 -0
  871. package/dist/components/ui/text-format-toolbar.d.ts.map +1 -0
  872. package/dist/components/ui/text-format-toolbar.js +186 -0
  873. package/dist/components/ui/timeline.d.ts.map +1 -1
  874. package/dist/components/ui/timeline.js +10 -1
  875. package/dist/components/ui/toast.d.ts +32 -10
  876. package/dist/components/ui/toast.d.ts.map +1 -1
  877. package/dist/components/ui/toast.js +150 -47
  878. package/dist/components/ui/toggle-group.d.ts +14 -5
  879. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  880. package/dist/components/ui/toggle-group.js +15 -1
  881. package/dist/components/ui/toggle.d.ts.map +1 -1
  882. package/dist/components/ui/toggle.js +9 -1
  883. package/dist/components/ui/tree.d.ts +8 -0
  884. package/dist/components/ui/tree.d.ts.map +1 -1
  885. package/dist/components/ui/tree.js +92 -13
  886. package/dist/components/ui/video-player.d.ts +236 -0
  887. package/dist/components/ui/video-player.d.ts.map +1 -0
  888. package/dist/components/ui/video-player.js +72 -0
  889. package/dist/fonts/inter-latin-400-italic.woff2 +0 -0
  890. package/dist/index.d.ts +112 -0
  891. package/dist/index.d.ts.map +1 -1
  892. package/dist/index.js +72 -0
  893. package/dist/lib/utils.d.ts +29 -0
  894. package/dist/lib/utils.d.ts.map +1 -1
  895. package/dist/lib/utils.js +35 -0
  896. package/dist/live/index.d.ts +10 -3
  897. package/dist/live/index.d.ts.map +1 -1
  898. package/dist/live/index.js +12 -3
  899. package/dist/live/run-stream-01/run-stream.js +4 -4
  900. package/dist/live/tool-ledger-01/index.d.ts +3 -0
  901. package/dist/live/tool-ledger-01/index.d.ts.map +1 -0
  902. package/dist/live/tool-ledger-01/index.js +1 -0
  903. package/dist/live/tool-ledger-01/tool-ledger.d.ts +348 -0
  904. package/dist/live/tool-ledger-01/tool-ledger.d.ts.map +1 -0
  905. package/dist/live/tool-ledger-01/tool-ledger.js +245 -0
  906. package/dist/pages/about-page/index.d.ts +306 -0
  907. package/dist/pages/about-page/index.d.ts.map +1 -0
  908. package/dist/pages/about-page/index.js +161 -0
  909. package/dist/pages/careers-page/index.d.ts +288 -0
  910. package/dist/pages/careers-page/index.d.ts.map +1 -0
  911. package/dist/pages/careers-page/index.js +182 -0
  912. package/dist/pages/changelog-page/index.d.ts +255 -0
  913. package/dist/pages/changelog-page/index.d.ts.map +1 -0
  914. package/dist/pages/changelog-page/index.js +86 -0
  915. package/dist/pages/contact-page/index.d.ts +261 -0
  916. package/dist/pages/contact-page/index.d.ts.map +1 -0
  917. package/dist/pages/contact-page/index.js +136 -0
  918. package/dist/pages/docs-shell/docs-shell.d.ts +8 -0
  919. package/dist/pages/docs-shell/docs-shell.d.ts.map +1 -1
  920. package/dist/pages/docs-shell/docs-shell.js +24 -7
  921. package/dist/pages/error-page/index.d.ts +188 -0
  922. package/dist/pages/error-page/index.d.ts.map +1 -0
  923. package/dist/pages/error-page/index.js +98 -0
  924. package/dist/pages/index.d.ts +10 -0
  925. package/dist/pages/index.d.ts.map +1 -1
  926. package/dist/pages/index.js +14 -0
  927. package/dist/pages/legal-page/index.d.ts +194 -0
  928. package/dist/pages/legal-page/index.d.ts.map +1 -0
  929. package/dist/pages/legal-page/index.js +99 -0
  930. package/dist/pages/onboarding-page/index.d.ts +199 -0
  931. package/dist/pages/onboarding-page/index.d.ts.map +1 -0
  932. package/dist/pages/onboarding-page/index.js +71 -0
  933. package/dist/pages/pricing-page/index.d.ts +286 -0
  934. package/dist/pages/pricing-page/index.d.ts.map +1 -0
  935. package/dist/pages/pricing-page/index.js +139 -0
  936. package/dist/pages/search-page/index.d.ts +305 -0
  937. package/dist/pages/search-page/index.d.ts.map +1 -0
  938. package/dist/pages/search-page/index.js +142 -0
  939. package/dist/pages/status-page/index.d.ts +366 -0
  940. package/dist/pages/status-page/index.d.ts.map +1 -0
  941. package/dist/pages/status-page/index.js +136 -0
  942. package/dist/styles.css +1003 -55
  943. package/package.json +9 -3
@@ -0,0 +1,379 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type HeadingLevel } from '../../components/ui/section.js';
3
+ /**
4
+ * One billing source a workspace has on file, and everything a reader needs to
5
+ * tell it from the others and to act on it.
6
+ *
7
+ * **`name` is the caller's and not a card network's.** A source on file is a card,
8
+ * a direct debit mandate, an invoice account or a credit note, and the way a
9
+ * product names those is its own: one writes "Visa ending 4417" and another writes
10
+ * "Corporate card". Prism cannot know which, so `name` is required and there is
11
+ * no default, no fallback and no generated label anywhere in this module. A
12
+ * billing surface that shipped Prism's own name for a source would be shipping a
13
+ * claim about somebody else's payment method.
14
+ *
15
+ * `kind` is the machine value beside it and `kindLabel` the words when the two
16
+ * differ, for the reason every Block in this package gives: a value a product
17
+ * stores and a sentence a reader reads are two facts, and only the product knows
18
+ * both.
19
+ */
20
+ export type BillingSource01Source = {
21
+ /**
22
+ * A stable key for the row, passed back to `onSetDefault` and `onRemove`, and
23
+ * carried on the markup as `data-source` so a test can name one row rather than
24
+ * the first.
25
+ */
26
+ id: string;
27
+ /**
28
+ * How the caller's product names this source, in the words a reader would use
29
+ * about it.
30
+ *
31
+ * Required, and a `string` rather than a node for the same reason
32
+ * `Shortlist01Item.name` is one: this value is interpolated into the accessible
33
+ * name of the controls below, and a name Prism cannot compose is a name its
34
+ * controls cannot announce. The type exists partly to hold that cost.
35
+ */
36
+ name: string;
37
+ /**
38
+ * What kind of source it is, in the product's own machine words.
39
+ *
40
+ * A short noun phrase drawn in the muted ink, and a `string` rather than a node
41
+ * because it is a column a reader scans rather than one they read. A kind that
42
+ * wraps to two lines costs every other row its alignment.
43
+ */
44
+ kind: string;
45
+ /**
46
+ * The words for the kind, when the machine value is not the sentence a reader
47
+ * should read.
48
+ *
49
+ * Optional, and its absence is not a fault: `kind` is already a caller's string
50
+ * and a product whose kind is a code has a reason to print the code.
51
+ */
52
+ kindLabel?: string;
53
+ /**
54
+ * The mark that identifies the source, which is a slot and never a mark this
55
+ * Block draws.
56
+ *
57
+ * **A design system does not ship payment card marks, and the reason is three
58
+ * facts rather than one.** Prism's icon lane is Lucide, and a card network's
59
+ * mark is a licensed asset with brand rules governing its size, its clear space,
60
+ * its colour and its use on a third party's surface, which this repository has
61
+ * no business restating in a JSDoc. And a set of them in a design system is a
62
+ * set that is out of date within a year, because the networks add and retire
63
+ * programmes and a component package cannot follow them. So the space is here,
64
+ * it is the caller's own licensed asset, and this Block renders no brand set of
65
+ * its own and no placeholder in its place. A source with no mark draws no frame,
66
+ * which is the honest state for an invoice account that has no logo to show.
67
+ */
68
+ mark?: ReactNode;
69
+ /**
70
+ * When this source expires, in whichever of the two forms the caller already has
71
+ * it.
72
+ *
73
+ * Printed exactly as passed, which is honest and almost never what was wanted.
74
+ * The reason is the one `SettingsMembersMember.joined` gives: a Block that
75
+ * formatted the moment would be choosing a locale, a calendar and a granularity
76
+ * on a reader's behalf, and would put `Intl` into every consumer's bundle for a
77
+ * rendering Prism has no stake in. The reading is `expiresLabel`, and a caller
78
+ * who wants "expires in March" composes their own formatter.
79
+ */
80
+ expiresAt?: number | string;
81
+ /**
82
+ * The words for the expiry, given the moment and the source it belongs to.
83
+ *
84
+ * A function rather than a string because the honest reading of an expiry is a
85
+ * localised sentence, and because two sources on the same page rarely expire on
86
+ * the same day, so a single string would be either wrong or a template Prism
87
+ * filled in. The source is in the argument for the same reason the shortlist
88
+ * passes its item: a row with an expiry reading and no name beside it is a date
89
+ * floating on its own.
90
+ */
91
+ expiresLabel?: (value: number | string, source: {
92
+ id: string;
93
+ name: string;
94
+ }) => string;
95
+ /**
96
+ * Marks the source the charges fall to when nobody says otherwise.
97
+ *
98
+ * The Block draws a mark beside the caller's sentence and nothing else, and
99
+ * exactly one source may declare it. Two is a thrown diagnostic rather than a
100
+ * rendering detail, and the Block's JSDoc says why at length: a default a
101
+ * reader cannot find is a fact about a reader's money that nobody in the
102
+ * document can check, and a Block that drew a default on both of two rows would
103
+ * be drawing a page where the question has two answers.
104
+ */
105
+ isDefault?: boolean;
106
+ /**
107
+ * The words that mark the default source.
108
+ *
109
+ * Required whenever `isDefault` is set, and a thrown diagnostic rather than a
110
+ * silent absence, for the reason `Status` gives for its own label and
111
+ * `SettingsMembersMember.selfLabel` restates: a row the Block has decided is the
112
+ * default, marked by nothing a reader can see, is a claim with no document to
113
+ * check it against. This is the last place in a product where a silent claim is
114
+ * the wrong one.
115
+ */
116
+ defaultLabel?: string;
117
+ /**
118
+ * Where the full record for this source is kept. Its presence makes the row
119
+ * carry a link.
120
+ *
121
+ * A link and not a control, because a reader looking at a card on file is
122
+ * looking at a record and not asking for a transaction, and the destination is a
123
+ * route in the caller's own application that only the caller knows what is
124
+ * behind.
125
+ */
126
+ href?: string;
127
+ /**
128
+ * The words on the link, and required whenever `href` is.
129
+ *
130
+ * A link whose only words are the source's own name tells a reader nothing
131
+ * about what activating it does, which is the same defect `ResourceList01`
132
+ * refuses and for the same reason.
133
+ */
134
+ hrefLabel?: string;
135
+ /**
136
+ * The caller's own controls for this one source: update, replace, verify, view
137
+ * the charges on it.
138
+ *
139
+ * A slot, because which controls a source has is the caller's fact, and the two
140
+ * this Block draws are not the whole of what a product can do with a billing
141
+ * source. Each control inside is the caller's own Component.
142
+ */
143
+ actions?: ReactNode;
144
+ };
145
+ /**
146
+ * The props a BillingSource01 takes.
147
+ *
148
+ * Every string is a prop and the Block ships none: no source, no name, no kind, no
149
+ * mark, no expiry reading, no default sentence, no link and not one of the
150
+ * sentences a billing surface is most tempted to ship. The absence of the sources
151
+ * themselves is the sharpest version of the rule, because a row drawn with a card
152
+ * on it is the single easiest thing in this package to write by accident and the
153
+ * single most likely to be somebody else's card.
154
+ */
155
+ export type BillingSource01Props = {
156
+ /** Optional label above the section title. See the No-Default-Eyebrow Rule. */
157
+ eyebrow?: string;
158
+ /**
159
+ * The section title, and required.
160
+ *
161
+ * Required because a set of sources with no statement of whose they are reads as
162
+ * a checkout form rather than as a record, and the difference between the two is
163
+ * whether the reader is deciding or paying.
164
+ */
165
+ title: ReactNode;
166
+ /** One or two sentences under the title. */
167
+ description?: ReactNode;
168
+ /**
169
+ * The sources on file, in the order a reader should meet them.
170
+ *
171
+ * Order is the caller's and the Block does not sort. A caller who wants the
172
+ * default first moves it first, because "which one is the default" is a claim
173
+ * about what matters most on this page and it is the caller's to make.
174
+ */
175
+ sources: readonly BillingSource01Source[];
176
+ /**
177
+ * Called with a source's `id` when the reader asks to make it the default.
178
+ *
179
+ * A request and not a mutation, for the reason every other Block in this package
180
+ * takes one: which source is the default is the caller's state, so a control
181
+ * that moved the mark and put it back when the request failed would be a
182
+ * control that lied about where a reader's money goes.
183
+ */
184
+ onSetDefault?: (id: string) => void;
185
+ /**
186
+ * The accessible name of the set-as-default control, given the source it acts
187
+ * on.
188
+ *
189
+ * Required whenever `onSetDefault` is set, and a function rather than a string
190
+ * for the reason `tag-group` gives about its own remove control: a column of
191
+ * controls all announced as "Make default" is a column a screen reader user
192
+ * cannot act on, and a reader using voice control has to be able to say the
193
+ * words they can see. The cost is real and is named rather than hidden: every
194
+ * caller writes the sentence, once, in their own language.
195
+ */
196
+ setDefaultLabel?: (source: {
197
+ id: string;
198
+ name: string;
199
+ }) => string;
200
+ /**
201
+ * Called with a source's `id` when the reader takes it off file.
202
+ *
203
+ * Offered on every row, and a request. Whether removing a source with charges
204
+ * against it is even permitted is the caller's fact and not this Block's, and
205
+ * the answer is a caller's `actions` slot that confirms rather than a control
206
+ * the Block withholds: see the Block's JSDoc.
207
+ */
208
+ onRemove?: (id: string) => void;
209
+ /**
210
+ * The accessible name of the remove control, given the source it removes.
211
+ *
212
+ * Required whenever `onRemove` is set, and a function rather than a string for
213
+ * the argument `tag-group` makes about its own remove control: a remove control
214
+ * that announced only "Remove" gives a screen reader one identical button per
215
+ * source and leaves the reader guessing which one they are on. The cost of
216
+ * that on this surface is higher than on a tag group, because the consequence
217
+ * of pressing the wrong one is a card a reader meant to keep no longer being
218
+ * charged to, so the name has to carry the source's own name and the caller
219
+ * writes it in their own language.
220
+ */
221
+ removeLabel?: (source: {
222
+ id: string;
223
+ name: string;
224
+ }) => string;
225
+ /**
226
+ * The words on the control that adds a source.
227
+ *
228
+ * Required whenever `onAdd` is set, and a `string` rather than a function
229
+ * because it names one control rather than one per row. The Block draws no
230
+ * default for it, which is the same refusal every other control in this package
231
+ * takes: "Add payment method" is a sentence this package is not entitled to
232
+ * write into a consumer's billing page. Omit it and no control is drawn, which
233
+ * is right for a workspace whose sources are added by an administrator.
234
+ */
235
+ addLabel?: string;
236
+ /**
237
+ * Called when the reader asks to add a source.
238
+ *
239
+ * The Block opens nothing. What "add a source" means is a route, a dialog, a
240
+ * hosted form or a redirect to a payment provider, and a Block that chose would
241
+ * be choosing for four products at once, which is the same reason every
242
+ * toolbar slot in this package is a slot.
243
+ */
244
+ onAdd?: () => void;
245
+ /**
246
+ * What the Block draws in place of the set when there is nothing on file.
247
+ *
248
+ * Required, and the reason is the sharpest one on this surface: a reader who
249
+ * came to look at what their workspace is charged to and found nothing is
250
+ * reading one line, and that line has to distinguish a workspace nobody has
251
+ * added a source for from a query that failed. Only the caller knows which one
252
+ * is on screen.
253
+ */
254
+ empty: ReactNode;
255
+ /**
256
+ * Heading level for the section title. @defaultValue 'h2'
257
+ *
258
+ * See `HeadingLevel`.
259
+ */
260
+ headingLevel?: HeadingLevel;
261
+ /**
262
+ * Layout only, exactly as on every Block. Changing a Prism-owned visual property
263
+ * from here is prohibited.
264
+ */
265
+ className?: string;
266
+ };
267
+ /**
268
+ * The billing sources a workspace has on file: a name, a kind, a mark slot, an
269
+ * expiry reading, a default mark, a link, and a set of per-source controls, inside
270
+ * a bounded panel with an add control at its trailing edge.
271
+ *
272
+ * **The storefront version of this pattern is saved payment methods, and the shape
273
+ * is familiar.** A shop shows a reader the cards they have on file, each with a
274
+ * brand mark, a masked number, an expiry, a default tick and a remove control.
275
+ * What changes here is whose money it is and what the controls do. A workspace's
276
+ * billing sources are a record a reader checks, and the two controls this Block
277
+ * draws are not "buy with this" and "edit this": they are "charge to this one" and
278
+ * "stop charging to this one", which is why the caller writes the name of each
279
+ * control rather than this Block supplying one. A reader who has used both will
280
+ * recognise the rows, and the difference is that nothing here can be spent.
281
+ *
282
+ * **`mark` is a slot and this Block ships no card marks at all, and the refusal is
283
+ * the point of the field.** Prism's icon lane is Lucide, and a card network's mark
284
+ * is a licensed asset with brand rules governing its size, its clear space, its
285
+ * colour and its use on a third party's surface. Restating those rules in a design
286
+ * system's JSDoc is exactly the thing this repository has no business doing, and a
287
+ * set of them shipped as a component would be a set that is out of date within a
288
+ * year, because the networks add and retire programmes and a component package
289
+ * cannot follow them. So the mark is the caller's own licensed asset, the frame
290
+ * around it is a size and a clip and nothing else, and a source with no mark draws
291
+ * no frame rather than a grey disc, which is the honest state for an invoice
292
+ * account that has no logo to show. The cost is stated rather than hidden: a
293
+ * consumer assembling four sources has four assets to license, where a design
294
+ * system that shipped them would have handed over four marks it was not entitled
295
+ * to.
296
+ *
297
+ * **Two sources marked as the default throws, and that is a finding rather than a
298
+ * rendering detail.** The mark beside the caller's sentence is the only thing on
299
+ * the page saying where the charges fall, so a second one is a page where the
300
+ * reader's most consequential question has two answers and neither is checkable
301
+ * against anything in the document. A Block that resolved the disagreement by
302
+ * drawing the first row and ignoring the second would be making a claim about a
303
+ * reader's money on the strength of an array's order, and a Block that drew both
304
+ * would be handing the reader a page that looks deliberate and says nothing. So
305
+ * the run fails with a message naming both sources, and the caller goes and looks
306
+ * at the data. The cost is stated rather than hidden: a consumer whose store
307
+ * genuinely holds two default rows has a bug, and this is where it is found rather
308
+ * than on an invoice three weeks later.
309
+ *
310
+ * **Both control names are functions, and the reason is the one `tag-group` gives
311
+ * about its own remove control.** A remove control announced only as "Remove"
312
+ * gives a screen reader one identical button per source and leaves the reader
313
+ * guessing which one they are on. On a tag group that is an annoyance. On a
314
+ * billing page it is worse, because the consequence of pressing the wrong one is a
315
+ * card a reader meant to keep no longer being charged to, and a reader who cannot
316
+ * tell the buttons apart is a reader who will press the wrong one deliberately
317
+ * rather than by accident. So the name has to carry the source's own name, the
318
+ * source's name is a `string` rather than a node precisely so Prism can hand it to
319
+ * a function rather than trying to interpolate a node into a sentence, and the
320
+ * sentence is the caller's because it is a sentence in their language. The move
321
+ * control on a shortlist argues the same thing for the same reason.
322
+ *
323
+ * **The remove control is offered on every row, including the default, and the
324
+ * confirmation is the caller's.** Every instinct on a billing page is to withhold
325
+ * the dangerous control from the row the charges are actually falling to, and the
326
+ * instinct is wrong for a reason that has nothing to do with the interface: a
327
+ * reader who wants to stop charging to the source in use is a reader who will find
328
+ * another way. They will add a new source and change the default, or they will ask
329
+ * an administrator, and withholding the control does not remove the wish, it
330
+ * removes the honest route to it. So the control is drawn on every row and the
331
+ * default is marked, so the consequence is legible rather than surprising. What the
332
+ * Block does not do is confirm, because a bare click that takes a card off file is
333
+ * not a confirmation, and a dialog on three sources and a toast on a fourth are
334
+ * two products' facts. The `actions` slot is where that belongs.
335
+ *
336
+ * **The set is a `ListPanel` and the panel is named by the Block's own heading.**
337
+ * A workspace has a handful of sources and the handful is bounded, so the list
338
+ * needs a place to end and a boundary that says "these and no others". The panel
339
+ * carries no title of its own, because the section heading above it already names
340
+ * the set and a second name in a second element is a second thing that can
341
+ * disagree with the first; `ListPanel` draws an unnamed region honestly rather than
342
+ * inventing one, which is what its own JSDoc says it is for. The cost is that the
343
+ * region is anonymous in the landmark list, and the answer is that a reader walking
344
+ * past a panel of four rows has nothing to navigate to inside it anyway.
345
+ *
346
+ * **The source's name is a `span` and not a heading, and that is the one
347
+ * arrangement this Block shares with a members list rather than with an address
348
+ * book.** A shortlist puts a heading on each item because a reader who has built a
349
+ * list and then navigates by heading wants to land on one of the things they were
350
+ * considering. A source on file is a record rather than a candidate: the reader
351
+ * arrives with two questions, which one is the default and which expires soon,
352
+ * and both are answered by scanning two columns. There is no subsection of this
353
+ * panel a reader would want to jump to, so a heading per source would be entries
354
+ * in the outline that lead nowhere, and the cost of that is a document whose
355
+ * outline says there is more structure here than there is. The name is still the
356
+ * first thing read and it is still the value interpolated into the two control
357
+ * names, so the identity of the row is not in doubt anywhere a reader needs it.
358
+ *
359
+ * **The expiry prints exactly as passed and the words are the caller's.** A Block
360
+ * that formatted the moment would be choosing a locale, a calendar and a
361
+ * granularity on a reader's behalf, and would put `Intl` into every consumer's
362
+ * bundle for a rendering Prism has no stake in. The cost is named rather than
363
+ * hidden: a caller who passes epoch milliseconds and no formatter gets a raw
364
+ * timestamp beside a card a reader recognises, which is honest and almost never
365
+ * what was wanted, and the fix is a formatter in the caller, which is where the
366
+ * knowledge lives anyway.
367
+ *
368
+ * It is a client Component, and the directive is unconditional. The rule this
369
+ * follows is the one `AddressBook01` states in full: a surface that attaches a
370
+ * handler is a client Component, and the directive is on the module rather than in
371
+ * a leaf so that a consumer composing a server page gets the boundary in one place
372
+ * they can see. The cost is that with all three handlers omitted the whole module
373
+ * is still in the client graph, where a static record would have shipped no
374
+ * JavaScript at all; the price was judged worth paying for one boundary rather
375
+ * than three arrangements of the same surface.
376
+ */
377
+ export declare function BillingSource01({ eyebrow, title, description, sources, onSetDefault, setDefaultLabel, onRemove, removeLabel, addLabel, onAdd, empty, headingLevel, className, }: BillingSource01Props): import("react").JSX.Element;
378
+ export default BillingSource01;
379
+ //# sourceMappingURL=billing-source-01.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing-source-01.d.ts","sourceRoot":"","sources":["../../../src/blocks/billing-source-01/billing-source-01.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,6BAA6B,CAAA;AAGpC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;OAIG;IACH,EAAE,EAAE,MAAM,CAAA;IACV;;;;;;;;OAQG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;;;;;OAMG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;;;;;;;;OAcG;IACH,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC3B;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAA;IACvF;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;;OAMG;IACH,KAAK,EAAE,SAAS,CAAA;IAChB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB;;;;;;OAMG;IACH,OAAO,EAAE,SAAS,qBAAqB,EAAE,CAAA;IACzC;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAA;IAClE;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAA;IAC9D;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;IAClB;;;;;;;;OAQG;IACH,KAAK,EAAE,SAAS,CAAA;IAChB;;;;OAIG;IACH,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAqGD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6GG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,KAAK,EACL,WAAW,EACX,OAAO,EACP,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,KAAK,EACL,KAAK,EACL,YAAmB,EACnB,SAAS,GACV,EAAE,oBAAoB,+BAmKtB;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,222 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Plus } from 'lucide-react';
4
+ import { Badge } from '../../components/ui/badge.js';
5
+ import { Button } from '../../components/ui/button.js';
6
+ import { CtaLink } from '../../components/ui/cta-link.js';
7
+ import { ListPanel } from '../../components/ui/list-panel.js';
8
+ import { Section, SectionHeading, } from '../../components/ui/section.js';
9
+ import { cn } from '../../lib/utils.js';
10
+ /**
11
+ * The refusals, checked before anything is drawn so a caller's mistake is one
12
+ * diagnostic in a console rather than a page where a reader's money has two answers.
13
+ *
14
+ * Nine, and the last one is the one this Block exists partly to catch. Two sources
15
+ * marked as the default is not a rendering detail, because the mark is the only
16
+ * thing on the page saying where the charges go, and two of them is a page where
17
+ * the reader's most consequential question has two answers and neither of them is
18
+ * checkable against the document. The rest are the house pair rules and the
19
+ * control-naming rules: a state with no words, a link with no words, a control with
20
+ * no name, and a name with no control.
21
+ */
22
+ function assertSources(props) {
23
+ const { sources, onSetDefault, setDefaultLabel, onRemove, removeLabel, addLabel, onAdd } = props;
24
+ if (onSetDefault !== undefined && setDefaultLabel === undefined) {
25
+ throw new Error('BillingSource01: onSetDefault was passed with no setDefaultLabel, so every control would be announced by ' +
26
+ 'the same word and a reader would be told which source to make the default by nothing. Pass the function ' +
27
+ 'that names the source.');
28
+ }
29
+ if (setDefaultLabel !== undefined && onSetDefault === undefined) {
30
+ throw new Error('BillingSource01: setDefaultLabel was passed with no onSetDefault, so the sentences would be composed ' +
31
+ 'and then discarded, which is a caller who believes they have named the controls on a surface that has ' +
32
+ 'none.');
33
+ }
34
+ if (onRemove !== undefined && removeLabel === undefined) {
35
+ throw new Error('BillingSource01: onRemove was passed with no removeLabel, so every control would be announced by the same ' +
36
+ 'word and a reader would be guessing which source they were on, which on this surface is a card they ' +
37
+ 'meant to keep. Pass the function that names the source.');
38
+ }
39
+ if (removeLabel !== undefined && onRemove === undefined) {
40
+ throw new Error('BillingSource01: removeLabel was passed with no onRemove, so the sentences would be composed and then ' +
41
+ 'discarded, which is a caller who believes they have named the controls on a surface that has none.');
42
+ }
43
+ if (onAdd !== undefined && addLabel === undefined) {
44
+ throw new Error('BillingSource01: onAdd was passed with no addLabel, so the control would carry no words of its own, and ' +
45
+ 'the sentence naming it belongs to the product rather than to this package. Pass the words, or drop the ' +
46
+ 'handler.');
47
+ }
48
+ if (addLabel !== undefined && onAdd === undefined) {
49
+ throw new Error('BillingSource01: addLabel was passed with no onAdd, so the control would be drawn and would do nothing, ' +
50
+ 'which is a promise this Block does not keep. Pass the handler, or drop the words.');
51
+ }
52
+ const defaults = sources.filter((source) => source.isDefault === true);
53
+ if (defaults.length > 1) {
54
+ throw new Error(`BillingSource01: ${defaults.length} sources are marked as the default, including ` +
55
+ `${JSON.stringify(defaults[0]?.name)} and ${JSON.stringify(defaults[1]?.name)}, so the page says the ` +
56
+ 'charges fall to more than one place. That is a finding about the caller data rather than a rendering ' +
57
+ 'detail: the mark is the only thing on this page saying where the money goes, and two of them is a ' +
58
+ "question a reader cannot answer. Mark one, and the Block's refusal to draw it twice is the reason it " +
59
+ 'reaches a developer.');
60
+ }
61
+ for (const source of sources) {
62
+ if (source.isDefault === true && (source.defaultLabel === undefined || source.defaultLabel.trim() === '')) {
63
+ throw new Error(`BillingSource01: the source ${JSON.stringify(source.name)} is marked as the default and passed no ` +
64
+ 'defaultLabel, so the row the Block has decided is the one charges fall to would be marked by nothing ' +
65
+ 'a reader can see. Pass the words that say so.');
66
+ }
67
+ if ((source.href === undefined) !== (source.hrefLabel === undefined)) {
68
+ throw new Error(`BillingSource01: the source ${JSON.stringify(source.name)} declares one of href and hrefLabel without ` +
69
+ 'the other, so the row would carry a link with no words on it, or a name with no link beside it. Pass ' +
70
+ 'both, or neither.');
71
+ }
72
+ }
73
+ }
74
+ /**
75
+ * The billing sources a workspace has on file: a name, a kind, a mark slot, an
76
+ * expiry reading, a default mark, a link, and a set of per-source controls, inside
77
+ * a bounded panel with an add control at its trailing edge.
78
+ *
79
+ * **The storefront version of this pattern is saved payment methods, and the shape
80
+ * is familiar.** A shop shows a reader the cards they have on file, each with a
81
+ * brand mark, a masked number, an expiry, a default tick and a remove control.
82
+ * What changes here is whose money it is and what the controls do. A workspace's
83
+ * billing sources are a record a reader checks, and the two controls this Block
84
+ * draws are not "buy with this" and "edit this": they are "charge to this one" and
85
+ * "stop charging to this one", which is why the caller writes the name of each
86
+ * control rather than this Block supplying one. A reader who has used both will
87
+ * recognise the rows, and the difference is that nothing here can be spent.
88
+ *
89
+ * **`mark` is a slot and this Block ships no card marks at all, and the refusal is
90
+ * the point of the field.** Prism's icon lane is Lucide, and a card network's mark
91
+ * is a licensed asset with brand rules governing its size, its clear space, its
92
+ * colour and its use on a third party's surface. Restating those rules in a design
93
+ * system's JSDoc is exactly the thing this repository has no business doing, and a
94
+ * set of them shipped as a component would be a set that is out of date within a
95
+ * year, because the networks add and retire programmes and a component package
96
+ * cannot follow them. So the mark is the caller's own licensed asset, the frame
97
+ * around it is a size and a clip and nothing else, and a source with no mark draws
98
+ * no frame rather than a grey disc, which is the honest state for an invoice
99
+ * account that has no logo to show. The cost is stated rather than hidden: a
100
+ * consumer assembling four sources has four assets to license, where a design
101
+ * system that shipped them would have handed over four marks it was not entitled
102
+ * to.
103
+ *
104
+ * **Two sources marked as the default throws, and that is a finding rather than a
105
+ * rendering detail.** The mark beside the caller's sentence is the only thing on
106
+ * the page saying where the charges fall, so a second one is a page where the
107
+ * reader's most consequential question has two answers and neither is checkable
108
+ * against anything in the document. A Block that resolved the disagreement by
109
+ * drawing the first row and ignoring the second would be making a claim about a
110
+ * reader's money on the strength of an array's order, and a Block that drew both
111
+ * would be handing the reader a page that looks deliberate and says nothing. So
112
+ * the run fails with a message naming both sources, and the caller goes and looks
113
+ * at the data. The cost is stated rather than hidden: a consumer whose store
114
+ * genuinely holds two default rows has a bug, and this is where it is found rather
115
+ * than on an invoice three weeks later.
116
+ *
117
+ * **Both control names are functions, and the reason is the one `tag-group` gives
118
+ * about its own remove control.** A remove control announced only as "Remove"
119
+ * gives a screen reader one identical button per source and leaves the reader
120
+ * guessing which one they are on. On a tag group that is an annoyance. On a
121
+ * billing page it is worse, because the consequence of pressing the wrong one is a
122
+ * card a reader meant to keep no longer being charged to, and a reader who cannot
123
+ * tell the buttons apart is a reader who will press the wrong one deliberately
124
+ * rather than by accident. So the name has to carry the source's own name, the
125
+ * source's name is a `string` rather than a node precisely so Prism can hand it to
126
+ * a function rather than trying to interpolate a node into a sentence, and the
127
+ * sentence is the caller's because it is a sentence in their language. The move
128
+ * control on a shortlist argues the same thing for the same reason.
129
+ *
130
+ * **The remove control is offered on every row, including the default, and the
131
+ * confirmation is the caller's.** Every instinct on a billing page is to withhold
132
+ * the dangerous control from the row the charges are actually falling to, and the
133
+ * instinct is wrong for a reason that has nothing to do with the interface: a
134
+ * reader who wants to stop charging to the source in use is a reader who will find
135
+ * another way. They will add a new source and change the default, or they will ask
136
+ * an administrator, and withholding the control does not remove the wish, it
137
+ * removes the honest route to it. So the control is drawn on every row and the
138
+ * default is marked, so the consequence is legible rather than surprising. What the
139
+ * Block does not do is confirm, because a bare click that takes a card off file is
140
+ * not a confirmation, and a dialog on three sources and a toast on a fourth are
141
+ * two products' facts. The `actions` slot is where that belongs.
142
+ *
143
+ * **The set is a `ListPanel` and the panel is named by the Block's own heading.**
144
+ * A workspace has a handful of sources and the handful is bounded, so the list
145
+ * needs a place to end and a boundary that says "these and no others". The panel
146
+ * carries no title of its own, because the section heading above it already names
147
+ * the set and a second name in a second element is a second thing that can
148
+ * disagree with the first; `ListPanel` draws an unnamed region honestly rather than
149
+ * inventing one, which is what its own JSDoc says it is for. The cost is that the
150
+ * region is anonymous in the landmark list, and the answer is that a reader walking
151
+ * past a panel of four rows has nothing to navigate to inside it anyway.
152
+ *
153
+ * **The source's name is a `span` and not a heading, and that is the one
154
+ * arrangement this Block shares with a members list rather than with an address
155
+ * book.** A shortlist puts a heading on each item because a reader who has built a
156
+ * list and then navigates by heading wants to land on one of the things they were
157
+ * considering. A source on file is a record rather than a candidate: the reader
158
+ * arrives with two questions, which one is the default and which expires soon,
159
+ * and both are answered by scanning two columns. There is no subsection of this
160
+ * panel a reader would want to jump to, so a heading per source would be entries
161
+ * in the outline that lead nowhere, and the cost of that is a document whose
162
+ * outline says there is more structure here than there is. The name is still the
163
+ * first thing read and it is still the value interpolated into the two control
164
+ * names, so the identity of the row is not in doubt anywhere a reader needs it.
165
+ *
166
+ * **The expiry prints exactly as passed and the words are the caller's.** A Block
167
+ * that formatted the moment would be choosing a locale, a calendar and a
168
+ * granularity on a reader's behalf, and would put `Intl` into every consumer's
169
+ * bundle for a rendering Prism has no stake in. The cost is named rather than
170
+ * hidden: a caller who passes epoch milliseconds and no formatter gets a raw
171
+ * timestamp beside a card a reader recognises, which is honest and almost never
172
+ * what was wanted, and the fix is a formatter in the caller, which is where the
173
+ * knowledge lives anyway.
174
+ *
175
+ * It is a client Component, and the directive is unconditional. The rule this
176
+ * follows is the one `AddressBook01` states in full: a surface that attaches a
177
+ * handler is a client Component, and the directive is on the module rather than in
178
+ * a leaf so that a consumer composing a server page gets the boundary in one place
179
+ * they can see. The cost is that with all three handlers omitted the whole module
180
+ * is still in the client graph, where a static record would have shipped no
181
+ * JavaScript at all; the price was judged worth paying for one boundary rather
182
+ * than three arrangements of the same surface.
183
+ */
184
+ export function BillingSource01({ eyebrow, title, description, sources, onSetDefault, setDefaultLabel, onRemove, removeLabel, addLabel, onAdd, empty, headingLevel = 'h2', className, }) {
185
+ assertSources({
186
+ sources,
187
+ onSetDefault,
188
+ setDefaultLabel,
189
+ onRemove,
190
+ removeLabel,
191
+ addLabel,
192
+ onAdd,
193
+ });
194
+ return (_jsxs(Section, { "data-slot": "billing-source-01", className: cn(className), children: [_jsx(SectionHeading, { as: headingLevel, align: "left", eyebrow: eyebrow, title: title, description: description, className: "mb-10" }), sources.length === 0 ? (_jsx("p", { "data-slot": "billing-source-01-empty", className: "text-muted-foreground max-w-measure-narrow text-pretty text-sm", children: empty })) : (_jsx(ListPanel, { "data-slot": "billing-source-01-panel", scroll: false, actions: addLabel === undefined || onAdd === undefined ? undefined : (_jsxs(Button, { "data-slot": "billing-source-01-add", type: "button", size: "sm", onClick: onAdd, children: [_jsx(Plus, { "aria-hidden": "true" }), addLabel] })), children: _jsx("ul", { "data-slot": "billing-source-01-list", className: "flex flex-col", children: sources.map((source) => (_jsxs("li", { "data-slot": "billing-source-01-source", "data-source": source.id, "data-default": source.isDefault === true ? 'true' : undefined, className: "border-border flex flex-wrap items-center gap-x-4 gap-y-2 border-b px-4 py-3 last:border-b-0", children: [source.mark === undefined ? null : (
195
+ /*
196
+ The caller's own licensed asset in a fixed frame. The frame is a
197
+ size and a clip and nothing else, so a network's mark and a
198
+ caller's monogram are the same height whichever they pass, and a
199
+ source with no mark draws no frame rather than a grey disc where
200
+ a logo would be.
201
+ */
202
+ _jsx("span", { "data-slot": "billing-source-01-mark", className: "bg-muted flex size-9 shrink-0 items-center justify-center overflow-hidden rounded-md [&_img]:size-full [&_img]:object-cover", children: source.mark })), _jsxs("div", { "data-slot": "billing-source-01-body", className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [_jsx("span", { className: "text-sm font-medium", children: source.name }), _jsxs("span", { className: "text-muted-foreground flex flex-wrap items-baseline gap-x-2 text-xs", children: [_jsx("span", { children: source.kindLabel ?? source.kind }), source.expiresAt === undefined ? null : (_jsx("span", { "data-slot": "billing-source-01-expires", className: "tabular-nums", children: source.expiresLabel === undefined
203
+ ? source.expiresAt
204
+ : source.expiresLabel(source.expiresAt, {
205
+ id: source.id,
206
+ name: source.name,
207
+ }) }))] })] }), source.isDefault === true && source.defaultLabel !== undefined ? (
208
+ /*
209
+ The default mark, which is a `Badge` and not a `Status` because a
210
+ default is not a state: nothing is wrong, nothing is pending, and
211
+ a tinted dot beside it would be drawing a judgement about the
212
+ source that the caller has not made. The caller's own words are
213
+ inside the mark, which is the same split `Status` holds with the
214
+ sentence beside the dot, arranged the other way round because a
215
+ mark that already says what it is does not need a sentence next
216
+ to it.
217
+ */
218
+ _jsx(Badge, { "data-slot": "billing-source-01-default", variant: "outline", children: source.defaultLabel })) : null, source.href === undefined || source.hrefLabel === undefined ? null : (_jsx(CtaLink, { "data-slot": "billing-source-01-link", href: source.href, variant: "ghost", size: "sm", className: "shrink-0", children: source.hrefLabel })), source.actions === undefined ? null : (_jsx("span", { "data-slot": "billing-source-01-source-actions", className: "shrink-0", children: source.actions })), _jsxs("div", { "data-slot": "billing-source-01-controls", className: "flex shrink-0 items-center gap-1", children: [onSetDefault !== undefined &&
219
+ setDefaultLabel !== undefined &&
220
+ source.isDefault !== true ? (_jsx(Button, { "data-slot": "billing-source-01-set-default", type: "button", variant: "ghost", size: "sm", onClick: () => onSetDefault(source.id), children: setDefaultLabel({ id: source.id, name: source.name }) })) : null, onRemove !== undefined && removeLabel !== undefined ? (_jsx(Button, { "data-slot": "billing-source-01-remove", type: "button", variant: "ghost", size: "sm", onClick: () => onRemove(source.id), children: removeLabel({ id: source.id, name: source.name }) })) : null] })] }, source.id))) }) }))] }));
221
+ }
222
+ export default BillingSource01;
@@ -0,0 +1,3 @@
1
+ export { BillingSource01, default } from './billing-source-01.js';
2
+ export type { BillingSource01Props, BillingSource01Source } from './billing-source-01.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/blocks/billing-source-01/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAK9D,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA"}
@@ -0,0 +1 @@
1
+ export { BillingSource01, default } from './billing-source-01.js';