@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,202 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId } from 'react';
4
+ import { Field, FieldDescription, FieldLabel } from '../../components/ui/field.js';
5
+ import { Section, SectionHeading, childLevel, } from '../../components/ui/section.js';
6
+ import { Switch } from '../../components/ui/switch.js';
7
+ /**
8
+ * The refusals, so that a preferences surface never renders a control it cannot
9
+ * explain.
10
+ *
11
+ * A switch that moves and reports nothing, a switch that reports a move and
12
+ * cannot move, an event marked as one the product cannot work without and no
13
+ * words for the reader on either side of that, and a required set with no note
14
+ * saying so anywhere on the page. Each is a caller's mistake rather than a
15
+ * request, so each throws in a console rather than rendering the quiet version of
16
+ * itself.
17
+ */
18
+ function assertProps(props) {
19
+ const { channels, onToggle, updateLabel, disabledLabel } = props;
20
+ if (onToggle !== undefined && updateLabel === undefined) {
21
+ throw new Error('SettingsNotifications01: onToggle was passed with no updateLabel, so every switch would be announced ' +
22
+ 'by the name of the event alone. That name says what the control is, not what pressing it does, and ' +
23
+ 'a reader who cannot tell those two things apart has to press the control to find out.');
24
+ }
25
+ if (onToggle === undefined && updateLabel !== undefined) {
26
+ throw new Error('SettingsNotifications01: updateLabel was passed with no onToggle, so the sentences would be composed ' +
27
+ 'and then discarded, which is a caller who believes they have named the switches on a surface that ' +
28
+ 'has none.');
29
+ }
30
+ for (const channel of channels) {
31
+ if (channel.events.length === 0) {
32
+ throw new Error(`SettingsNotifications01: the channel ${JSON.stringify(channel.name)} carries no events, so the group ` +
33
+ 'would be a heading with a line under it and nothing to decide. Omit the channel, or give it the ' +
34
+ 'events it is for.');
35
+ }
36
+ for (const event of channel.events) {
37
+ if (event.required === true &&
38
+ (event.requiredLabel === undefined || event.requiredLabel.trim() === '')) {
39
+ throw new Error('SettingsNotifications01: an event is marked required and passed no requiredLabel, so the control ' +
40
+ 'that will not move would say nothing about why. Pass the mark, and the note on the section.');
41
+ }
42
+ }
43
+ }
44
+ const anyRequired = channels.some((channel) => channel.events.some((event) => event.required === true));
45
+ if (anyRequired && (disabledLabel === undefined || disabledLabel.trim() === '')) {
46
+ throw new Error('SettingsNotifications01: an event is marked required and no disabledLabel was passed, so a reader ' +
47
+ 'would meet a control that will not move with no sentence anywhere on the page explaining that a ' +
48
+ 'product decision is what stopped them. Pass the note.');
49
+ }
50
+ }
51
+ /**
52
+ * Per-channel notification preferences: a channel, a line about it, a set of
53
+ * switches for the events on it, and a note where the product has a standing
54
+ * requirement of its own.
55
+ *
56
+ * **This is the Block where a design system's care is most visible and least
57
+ * appreciated, because the reader came to change one thing and leave.** A
58
+ * preferences surface is the densest set of controls a product puts in front of a
59
+ * reader, and it is the one they visit least often and trust most. They are not
60
+ * reading it, they are hunting. They want the switch for the one event and they
61
+ * want to be sure of three things when they find it: that this is the right
62
+ * event, that pressing it does what they think, and that it did what they wanted.
63
+ * Everything below is in service of the third of those, which is the one a
64
+ * surface usually gets wrong, usually by being optimistic.
65
+ *
66
+ * **The `required` flag is the load-bearing decision, and the set is a prop
67
+ * because a design system that fixed the list would be deciding for every
68
+ * product which of its events are load-bearing.** The argument has two halves and
69
+ * both matter. A preference surface where every control is optional is a surface
70
+ * that will let a reader turn off something the product cannot work without: the
71
+ * reader is told the switch is theirs, presses it, the product stores the answer,
72
+ * and the failure arrives days later in a different part of the product with
73
+ * nothing on this page to point at. The reader is right that the switch was
74
+ * there and the product is right that the event was needed, and neither of them
75
+ * is wrong, which is the worst possible place for a disagreement to live. So a
76
+ * required set has to exist. And the fixed-list alternative is worse than the
77
+ * problem: this package does not know what any product cannot work without. A
78
+ * product whose password reset email is load-bearing and a product that mails
79
+ * nothing at all are both real, and a Block that shipped the first product's list
80
+ * would install it into the second, where a reader could turn off a notification
81
+ * that does not exist and a support ticket would arrive with no cause anyone can
82
+ * find. So the flag is on the event, the note is the caller's, and the
83
+ * consequence is that a consumer wiring this Block up has to decide which of their
84
+ * own events are load-bearing. That is a sentence worth naming rather than
85
+ * hiding: it is a decision, and it is theirs.
86
+ *
87
+ * **A required control is drawn read-only rather than disabled, and the reason is
88
+ * that a disabled control is not in the tab order.** A keyboard reader who tabs
89
+ * across a preferences surface with three required events meets three holes where
90
+ * three controls used to be. They cannot find the setting, they cannot come back
91
+ * to it, and there is nothing in the document to tell them the setting exists at
92
+ * all, so the most likely reading is that the page is broken or that the product
93
+ * has hidden something from them. Both are worse than the truth, which is that a
94
+ * decision has been made on their behalf. So the control keeps its place in the
95
+ * order, keeps its state announced, and takes the note as its description: the
96
+ * reader meets it, hears that it will not move, and hears why. The cost is
97
+ * stated rather than hidden, because it is real: a read-only control is drawn in
98
+ * the same ink as a live one, so the mark beside it and the note under the title
99
+ * are what carry the fact, and there is no flag on this package that dims it. A
100
+ * caller who wants the visual weight of a disabled control has to choose between
101
+ * that and the focus hole, and the focus hole is the worse of the two, so the
102
+ * decision here is not that read-only is better but that it is less bad.
103
+ *
104
+ * **The switch's accessible name says what pressing it will do, and the sentence
105
+ * is the caller's.** A switch announces its state, so a reader who meets a
106
+ * control named "Deploys" with the state off knows the current answer and has to
107
+ * work out the consequence themselves, which is the one step a switch exists to
108
+ * remove. So the name is composed from the state the control would move to, and
109
+ * it is a function rather than a record of strings because the honest sentence
110
+ * names the event, the channel and sometimes a qualification, and because a
111
+ * consumer in three languages has the sentence in three languages and Prism has
112
+ * none of them. The name is not consulted for a required event, and that is a
113
+ * consequence rather than an omission: a sentence describing what pressing a
114
+ * read-only control would do is a claim about a thing that cannot happen, and a
115
+ * Block that printed one would be the defect it exists to prevent.
116
+ *
117
+ * **The note is described once and repeated by reference, so every read-only
118
+ * control on the page carries it.** It is drawn at the top rather than repeated on
119
+ * each row, for the reason `list-panel` states for a count: it is the product's
120
+ * standing reason for the whole set, so a reader who meets it once has met it. The
121
+ * `aria-describedby` is what makes it true per control, and that is a real
122
+ * difference rather than a nicety: a sentence a reader has to go and find is a
123
+ * sentence most readers do not go and find, and a control that will not move with
124
+ * an unfound reason behind it is exactly the control a reader reports as broken.
125
+ * The same attribute carries the event's own description, which was drawn and never
126
+ * referred to, so the two are assembled rather than chosen between: a read-only
127
+ * event has both, and a reader who meets one without the other has to work out
128
+ * which half they are missing.
129
+ *
130
+ * **A switch is the control, and not a checkbox and not a button.** `Switch` is
131
+ * composed for all three reasons the Component's own JSDoc gives, and the third
132
+ * is the one that matters on this surface: a switch takes effect immediately, so
133
+ * there is no save control on the page for a reader to press and no state in which
134
+ * the page is holding changes the reader has not committed. That is the whole
135
+ * reason a preferences surface is drawn as switches rather than as a form, and
136
+ * re-deriving it here would mean a hand-written checkbox with no keyboard model, a
137
+ * hidden input that may not submit, and a page where a reader has to look for a
138
+ * button to find out whether they pressed the right thing.
139
+ *
140
+ * **The Block holds no preference state, so a failed change is the caller's to
141
+ * show.** `event.on` is the truth, the switch is controlled from it, and
142
+ * `onToggle` is a request. A Block that moved the switch and rolled it back would
143
+ * show a reader a preference the product rejected, and a reader who left the page
144
+ * in the moment between would leave believing they had turned something off that
145
+ * was still on. The arrangement is the one a server action wants, and it is
146
+ * stated rather than hidden: with a slow network the switch does not move until
147
+ * the product answers, which is slower than the alternative and the only version
148
+ * of it that is not lying.
149
+ *
150
+ * It is a client Component, and the directive is unconditional: a surface that
151
+ * attaches a handler owns the JavaScript that carries it, and the directive is on
152
+ * the module rather than in a leaf so a consumer composing a server page gets the
153
+ * boundary in one place they can see. `Switch` is the only client leaf it draws,
154
+ * and it is a client leaf for the same reason.
155
+ */
156
+ export function SettingsNotifications01({ eyebrow, title, description, channels, onToggle, updateLabel, disabledLabel, empty, headingLevel = 'h2', className, }) {
157
+ assertProps({ channels, onToggle, updateLabel, disabledLabel });
158
+ // A channel is a group inside the section, so its name is one level below the
159
+ // section's own heading and travels with it when the Block is composed deeper.
160
+ const ChannelTitle = childLevel(headingLevel);
161
+ const base = useId();
162
+ const noteId = disabledLabel === undefined ? undefined : `${base}-note`;
163
+ // Whether there is anything at all to decide, which is a fact about the data
164
+ // rather than a prop a caller has to keep in step with the channels.
165
+ const hasEvents = channels.some((channel) => channel.events.length > 0);
166
+ if (!hasEvents) {
167
+ return (_jsxs(Section, { className: className, "data-slot": "settings-notifications", children: [_jsx(SectionHeading, { as: headingLevel, align: "left", eyebrow: eyebrow, title: title, description: description }), _jsx("p", { "data-slot": "settings-notifications-empty", className: "text-muted-foreground text-pretty text-sm", children: empty })] }));
168
+ }
169
+ return (_jsxs(Section, { className: className, "data-slot": "settings-notifications", children: [_jsx(SectionHeading, { as: headingLevel, align: "left", eyebrow: eyebrow, title: title, description: description, className: "mb-8" }), noteId === undefined ? null : (_jsx("p", { id: noteId, "data-slot": "settings-notifications-note", className: "text-muted-foreground mb-8 text-pretty text-sm", children: disabledLabel })), _jsx("div", { "data-slot": "settings-notifications-channels", className: "flex flex-col gap-10", children: channels.map((channel) => {
170
+ if (channel.events.length === 0)
171
+ return null;
172
+ return (_jsxs("section", { "data-slot": "settings-notifications-channel", "data-channel": channel.id, className: "flex flex-col gap-5", children: [_jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx(ChannelTitle, { "data-slot": "settings-notifications-channel-name", className: "text-lg font-semibold tracking-tight", children: channel.name }), channel.description === undefined ? null : (_jsx("p", { className: "text-muted-foreground text-pretty text-sm", children: channel.description }))] }), _jsx("ul", { "data-slot": "settings-notifications-events", className: "flex flex-col", children: channel.events.map((event) => {
173
+ const controlId = `${base}-${channel.id}-${event.id}`;
174
+ const required = event.required === true;
175
+ const descriptionId = event.description === undefined ? undefined : `${controlId}-description`;
176
+ /*
177
+ * Up to two referrers, one attribute, assembled rather than chosen
178
+ * between. The event's own description says what the event is and
179
+ * what it carries, and the note says why a control will not move; a
180
+ * read-only event has both, and a reader who meets one without the
181
+ * other has to guess which half they are missing. Assembled from
182
+ * templates rather than from a `join`, for the reason
183
+ * `MultiCombobox` gives for its own pair: a bare separator literal
184
+ * is a string the copy gate reads as a space somebody typed.
185
+ */
186
+ const describedBy = descriptionId === undefined
187
+ ? required
188
+ ? noteId
189
+ : undefined
190
+ : required && noteId !== undefined
191
+ ? `${descriptionId} ${noteId}`
192
+ : descriptionId;
193
+ const describedByIds = describedBy === '' ? undefined : describedBy;
194
+ return (_jsxs("li", { "data-slot": "settings-notifications-event", "data-event": event.id, "data-required": required ? 'true' : undefined, className: "border-border flex flex-col gap-3 border-b py-4 last:border-b-0 sm:flex-row sm:items-start sm:justify-between sm:gap-6", children: [_jsxs(Field, { className: "min-w-0 gap-1", children: [_jsx(FieldLabel, { htmlFor: controlId, className: "text-base", children: event.label }), event.description === undefined ? null : (_jsx(FieldDescription, { id: descriptionId, children: event.description }))] }), _jsxs("div", { "data-slot": "settings-notifications-control", className: "flex shrink-0 items-center gap-3 pt-0.5 sm:pt-1", children: [required && event.requiredLabel === undefined ? null : (_jsx("span", { "data-slot": "settings-notifications-required", className: "text-muted-foreground text-xs font-medium", children: event.requiredLabel })), _jsx(Switch, { id: controlId, checked: event.on, readOnly: required, "aria-label": required || updateLabel === undefined
195
+ ? undefined
196
+ : updateLabel(channel, event, !event.on), "aria-describedby": describedByIds, onCheckedChange: onToggle === undefined
197
+ ? undefined
198
+ : (next) => onToggle(channel.id, event.id, next) })] })] }, event.id));
199
+ }) })] }, channel.id));
200
+ }) })] }));
201
+ }
202
+ export default SettingsNotifications01;
@@ -0,0 +1,3 @@
1
+ export { SettingsSecurity01, default } from './settings-security.js';
2
+ export type { SettingsSecurity01Props, SettingsSecurityChangePassword, SettingsSecurityLabels, SettingsSecurityMethod, SettingsSecurityMethodState, SettingsSecurityPasswordField, SettingsSecuritySession, SettingsSecurityTwoFactor, SettingsSecurityTwoFactorState, } from './settings-security.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/blocks/settings-security-01/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAMjE,YAAY,EACV,uBAAuB,EACvB,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,EAC7B,uBAAuB,EACvB,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAA"}
@@ -0,0 +1 @@
1
+ export { SettingsSecurity01, default } from './settings-security.js';
@@ -0,0 +1,439 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type HeadingLevel } from '../../components/ui/section.js';
3
+ /**
4
+ * Where a sign-in method stands.
5
+ *
6
+ * `pending` is the member that is not a binary, and the Block's JSDoc says what
7
+ * it does with it: a setup that is half finished is not a setting that is on, and
8
+ * a control drawn on it would let a reader turn off something that was never on.
9
+ */
10
+ export type SettingsSecurityMethodState = 'enabled' | 'disabled' | 'pending';
11
+ /**
12
+ * Where a second factor stands.
13
+ *
14
+ * `enrolled` is the third answer and it is the one a two-state surface cannot
15
+ * give: a secret has been generated and the reader has not yet confirmed it, so
16
+ * the account is neither protected nor unprotected and the honest word is neither
17
+ * on nor off.
18
+ */
19
+ export type SettingsSecurityTwoFactorState = 'on' | 'off' | 'enrolled';
20
+ /**
21
+ * One way a reader can prove who they are.
22
+ *
23
+ * A method and not a credential: the Block never sees a secret, and the words in
24
+ * every field here are the product's statements about its own authentication.
25
+ */
26
+ export type SettingsSecurityMethod = {
27
+ /** A stable key for the row, passed back to `onMethodChange`, and carried as `data-method`. */
28
+ id: string;
29
+ /** The method's own name, as the product writes it: a passkey, a phrase, a code. */
30
+ name: string;
31
+ /** Where the method stands. Required, because a row with no state cannot be acted on. */
32
+ state: SettingsSecurityMethodState;
33
+ /**
34
+ * The words for the state, in the product's own vocabulary.
35
+ *
36
+ * Required whenever `state` is given, which is always, and a thrown diagnostic
37
+ * rather than a silent absence, for the reason `Status` states in full: the tone
38
+ * is a colour and the words are the information.
39
+ */
40
+ stateLabel?: string;
41
+ /**
42
+ * The line under the method's name: where the secret is kept, when it was last
43
+ * used, what turning it on will ask for.
44
+ *
45
+ * A node because half of the useful sentences in this position carry a link to
46
+ * the document that explains the method, and a caller who has to flatten theirs
47
+ * to a string loses it.
48
+ */
49
+ detail?: ReactNode;
50
+ /**
51
+ * The line naming when this method was added, already written as it should be
52
+ * read.
53
+ *
54
+ * A string rather than a moment and a formatter for the reason the other Blocks
55
+ * in this wave take it: a Block that formatted the moment would be choosing a
56
+ * locale and a granularity on a reader's behalf. A caller who wants "three months
57
+ * ago" composes `relative-time` and passes the reading.
58
+ */
59
+ addedLabel?: string;
60
+ };
61
+ /**
62
+ * One field of the change-password form, and which of the three it is.
63
+ *
64
+ * The union of three is what lets the Block make the reveal decision per field,
65
+ * which is the decision this Block's JSDoc argues for at length.
66
+ */
67
+ export type SettingsSecurityPasswordField = {
68
+ /** A stable key for the field, and the element's `id`. */
69
+ id: string;
70
+ /** The field's own label, as the product writes it. */
71
+ label: string;
72
+ /**
73
+ * Which of the three fields this is.
74
+ *
75
+ * The name is a machine value and the arrangement is the whole of it: a `current`
76
+ * field is the one a reader is proving they know a secret, and a `new` or
77
+ * `confirm` field is the one they are about to retype. The Block draws a reveal
78
+ * control on the second kind and not on the first, and the Block's JSDoc gives
79
+ * the reason in full.
80
+ */
81
+ type: 'current' | 'new' | 'confirm';
82
+ /**
83
+ * The form field name the platform's password manager offers to save.
84
+ *
85
+ * Defaults to the right hint for the field's own kind, which is the arrangement
86
+ * `PasswordField` insists on and the reason this prop exists at all: a
87
+ * `current` field wants `current-password` and the other two want `new-password`,
88
+ * and getting it wrong on a new password produces an account the browser will
89
+ * not offer to sign in with.
90
+ */
91
+ autoComplete?: string;
92
+ };
93
+ /**
94
+ * The change-password form, and everything the caller has to say about it.
95
+ *
96
+ * `revealLabel` and `hideLabel` are here rather than being defaulted because they
97
+ * cannot be defaulted: a reveal control that says one sentence in a product whose
98
+ * interface is in another language is the defect the Component's own JSDoc was
99
+ * written against, and a Block that filled them in would be shipping English into
100
+ * every consumer's password field.
101
+ */
102
+ export type SettingsSecurityChangePassword = {
103
+ /** The three fields, in the order a reader should meet them. */
104
+ fields: readonly SettingsSecurityPasswordField[];
105
+ /**
106
+ * Called with the three entries when the reader submits the form.
107
+ *
108
+ * The Block holds the values only long enough to hand them over, and it hands
109
+ * over all three whatever the form is missing, so a caller that renders two
110
+ * fields still receives a `confirm` of the empty string rather than `undefined`.
111
+ */
112
+ onSubmit: (value: {
113
+ current: string;
114
+ next: string;
115
+ confirm: string;
116
+ }) => void;
117
+ /** The words on the submit control. */
118
+ submitLabel: string;
119
+ /**
120
+ * The accessible name of a reveal control while the password is hidden.
121
+ *
122
+ * Required, and a prop rather than a default for the reason
123
+ * `PasswordField.revealLabel` gives in full.
124
+ */
125
+ revealLabel: string;
126
+ /**
127
+ * The accessible name of a reveal control while the password is showing.
128
+ *
129
+ * Required as a second sentence rather than as a state flag, because the name
130
+ * has to describe what pressing the control will do rather than what is
131
+ * currently true.
132
+ */
133
+ hideLabel: string;
134
+ /**
135
+ * What the product has to say about the change, after the reader pressed the
136
+ * control.
137
+ *
138
+ * The state is the caller's, so a form that shows a failure is showing a truth
139
+ * the Block cannot know, and the `error` state takes `role="alert"` so the
140
+ * message is announced when it appears rather than when the reader finds it.
141
+ */
142
+ status?: {
143
+ state: 'idle' | 'sending' | 'done' | 'error';
144
+ message: ReactNode;
145
+ };
146
+ };
147
+ /**
148
+ * One place a session is signed in from.
149
+ *
150
+ * A device and not a browser, and no address, because a security surface that
151
+ * shows a reader their own IP addresses is showing them something they cannot act
152
+ * on and did not ask for.
153
+ */
154
+ export type SettingsSecuritySession = {
155
+ /** A stable key for the row, passed back to `onRevokeSession`, and carried as `data-session`. */
156
+ id: string;
157
+ /** The device, as the product describes it. */
158
+ device: string;
159
+ /** Where the session was opened, in the product's own terms. */
160
+ location?: string;
161
+ /**
162
+ * When the session began, in whichever of the two forms the caller already has
163
+ * it. Printed exactly as passed.
164
+ */
165
+ startedAt?: number | string;
166
+ /**
167
+ * The words for the start, given the moment. A function because the honest
168
+ * reading is a localised sentence.
169
+ */
170
+ startedAtLabel?: (value: number | string) => string;
171
+ /**
172
+ * Marks the session the reader is currently signed in through.
173
+ *
174
+ * The mark changes no control. See the Block's JSDoc for why revocation is
175
+ * offered on this row anyway, which is the part of this Block most likely to be
176
+ * got wrong.
177
+ */
178
+ isCurrent?: boolean;
179
+ /**
180
+ * The words that mark the reader's own session.
181
+ *
182
+ * Required whenever `isCurrent` is set, and a thrown diagnostic rather than a
183
+ * silent absence: a row the Block has decided is the reader's own, marked by
184
+ * nothing a reader can see, is a claim with no document to check it against.
185
+ */
186
+ currentLabel?: string;
187
+ /**
188
+ * The caller's own control for this row, in place of the Block's revoke
189
+ * control.
190
+ *
191
+ * A slot because revoking a session is an action a product usually confirms, and
192
+ * the confirmation is the product's: a sheet on some surfaces, a toast on
193
+ * others, and on a security surface a bare click is not a confirmation.
194
+ */
195
+ revoke?: ReactNode;
196
+ };
197
+ /**
198
+ * The second factor's state, and the caller's own control for it.
199
+ *
200
+ * A named type and not an inline object, for the ordinary reason: a consumer
201
+ * assembling a security surface in its own module has to be able to declare this
202
+ * shape once and hand the same object to the Block.
203
+ */
204
+ export type SettingsSecurityTwoFactor = {
205
+ /** Where the second factor stands. */
206
+ state: SettingsSecurityTwoFactorState;
207
+ /**
208
+ * The words for the state, in the product's own vocabulary.
209
+ *
210
+ * Required whenever `state` is given, which is always, and a thrown diagnostic
211
+ * rather than a silent absence: this is the most load-bearing control on the page
212
+ * and a coloured dot with nothing beside it is a claim about the reader's account
213
+ * that nothing in the document backs up.
214
+ */
215
+ stateLabel?: string;
216
+ /**
217
+ * The control that moves the second factor, because it is a different control in
218
+ * each of the three states: enroll, turn on, turn off. A Block that chose would be
219
+ * choosing for every product that has one.
220
+ */
221
+ action?: ReactNode;
222
+ };
223
+ /**
224
+ * The four group names, all optional, and the reason they are optional is the
225
+ * Block's JSDoc.
226
+ *
227
+ * A caller who names a group gets a real heading one level below the section; a
228
+ * caller who names none gets a section of rows under the section heading, which
229
+ * is the right arrangement for the common case of a product with one group.
230
+ */
231
+ export type SettingsSecurityLabels = {
232
+ /** Above the sign-in methods. */
233
+ methods?: ReactNode;
234
+ /** The card's title, on the change-password form. */
235
+ password?: ReactNode;
236
+ /** Above the sessions list. */
237
+ sessions?: ReactNode;
238
+ /** Above the second-factor row. */
239
+ twoFactor?: ReactNode;
240
+ };
241
+ /**
242
+ * The props a SettingsSecurity01 takes.
243
+ *
244
+ * Every string is a prop and the Block ships none. There is no method list, no
245
+ * session list, no device vocabulary, no state word, no field label, no submit
246
+ * sentence, no reveal sentence and not one of the sentences a security surface is
247
+ * most tempted to ship. A security surface is where a hardcoded word is least
248
+ * excusable and most likely, because the reader is reading about their own
249
+ * account and assumes every word on the page was chosen for them.
250
+ */
251
+ export type SettingsSecurity01Props = {
252
+ /** Optional label above the section title. See the No-Default-Eyebrow Rule. */
253
+ eyebrow?: ReactNode;
254
+ /** The section title. Required, because a security surface with no heading is a fragment. */
255
+ title: ReactNode;
256
+ /** One or two sentences under the title. */
257
+ description?: ReactNode;
258
+ /**
259
+ * The names of the four groups this surface can draw.
260
+ *
261
+ * All four optional, and the reason is in the Block's JSDoc: a group with no name
262
+ * is not a mystery, and four required names would be four sentences a consumer
263
+ * writes for groups they may not have. A group whose name is passed becomes a
264
+ * real heading at `childLevel(headingLevel)`; a group whose name is not passed
265
+ * draws no heading and is a set of rows under the section's own.
266
+ */
267
+ labels?: SettingsSecurityLabels;
268
+ /** The sign-in methods, in the order a reader should meet them. */
269
+ methods: readonly SettingsSecurityMethod[];
270
+ /**
271
+ * Called when a reader turns a method on or off.
272
+ *
273
+ * A request and not a mutation, for the same reason as the other Blocks in this
274
+ * wave: the row's state comes from the data, so a control that moved and rolled
275
+ * back would show a reader a method state the product did not change.
276
+ */
277
+ onMethodChange?: (id: string) => void;
278
+ /**
279
+ * The accessible name of a method's control, given the method and the state the
280
+ * control would move to.
281
+ *
282
+ * Required whenever `onMethodChange` is set, and a function for the reasons
283
+ * `SettingsNotifications01.updateLabel` is one: a control's accessible name has
284
+ * to say what pressing it does, and the sentence has to contain the method's own
285
+ * name because that is the visible label of the control and the WCAG rule that a
286
+ * visible label must be inside the accessible name is what lets a reader using
287
+ * voice control act on the words they can see.
288
+ *
289
+ * It is not consulted for a method in the `pending` state, which draws no
290
+ * control at all, for the reason the Block's JSDoc gives.
291
+ */
292
+ methodToggleLabel?: (method: {
293
+ id: string;
294
+ name: string;
295
+ }, on: boolean) => string;
296
+ /**
297
+ * The change-password form. Omit it and the card is not drawn, which is right
298
+ * for a product that authenticates entirely by a method this Block already
299
+ * lists.
300
+ */
301
+ changePassword?: SettingsSecurityChangePassword;
302
+ /**
303
+ * The sessions this workspace is signed in from. Omit the group and it is not
304
+ * drawn.
305
+ */
306
+ sessions?: readonly SettingsSecuritySession[];
307
+ /**
308
+ * Called when a reader revokes a session.
309
+ *
310
+ * Offered on every row, including the reader's own. See the Block's JSDoc.
311
+ */
312
+ onRevokeSession?: (id: string) => void;
313
+ /**
314
+ * The words on a revoke control, given the session.
315
+ *
316
+ * Required whenever `onRevokeSession` is set, and a function because a column of
317
+ * controls all announced as "Revoke" is a column a screen reader user cannot act
318
+ * on, and because the honest sentence names the device: "Revoke the session on a
319
+ * work laptop" and "Revoke the session on a phone" are different consequences.
320
+ */
321
+ revokeLabel?: (session: {
322
+ id: string;
323
+ device: string;
324
+ }) => string;
325
+ /**
326
+ * The second factor's state, and the caller's own control for it.
327
+ *
328
+ * Omit it and the row is not drawn, which is right for a product with no second
329
+ * factor at all.
330
+ */
331
+ twoFactor?: SettingsSecurityTwoFactor;
332
+ /**
333
+ * What the surface shows when there are no methods.
334
+ *
335
+ * Required, and the reason is the one the other Blocks in this wave take: a
336
+ * workspace with no way to sign in and a workspace whose methods failed to load
337
+ * are not the same page.
338
+ */
339
+ empty: ReactNode;
340
+ /** Heading level for the section title. @defaultValue 'h2' */
341
+ headingLevel?: HeadingLevel;
342
+ /**
343
+ * Layout only, exactly as on every Block. Changing a Prism-owned visual
344
+ * property from here is prohibited.
345
+ */
346
+ className?: string;
347
+ };
348
+ /**
349
+ * The security surface of a workspace: the ways in, the form that changes the one
350
+ * secret a reader is most likely to have forgotten, the places it is signed in
351
+ * from, and whether there is a second factor.
352
+ *
353
+ * **A settings surface is where a design system's care is most visible and least
354
+ * appreciated, and this is the one where the stakes of a small mistake are
355
+ * highest.** The reader came to change one thing and leave. They came because
356
+ * something worried them: a login they do not recognise, a device they do not
357
+ * own, a warning they read somewhere else. They are not reading this page, they
358
+ * are checking it, and the two or three questions they arrived with are answered
359
+ * somewhere in it. Everything below is arranged so that those questions are
360
+ * answerable without reading anything twice and without finding that the page
361
+ * moved while they were on it.
362
+ *
363
+ * **The reveal control is on the new password and the confirmation, and not on
364
+ * the current one, and the reason is what each field is for.** A reader retyping
365
+ * a password they have just chosen needs to see the characters, because they are
366
+ * checking their own memory of what they typed and the failure they are guarding
367
+ * against is a single wrong character in a string they cannot read. A reader
368
+ * typing the password they set six months ago is doing the opposite: they are
369
+ * proving they know a secret, and a reveal control on that field turns the proof
370
+ * into a lookup. Put it there and the field stops being a check, it becomes a
371
+ * read, and a password change is exactly the moment at which an observer over a
372
+ * reader's shoulder is most likely to be looking. The arrangement also matches
373
+ * what the platform already knows: the current field is the one a password manager
374
+ * can fill, and the other two are the ones it must offer to save.
375
+ *
376
+ * **A method that is pending draws no control, because a half-finished setup is
377
+ * not a setting that is on.** The three states are not a boolean with an extra
378
+ * case, and a switch drawn on a pending method would be a control offering to turn
379
+ * off something that was never on, in a panel whose whole job is to tell a reader
380
+ * what is protecting their account. A pending method is a device that asked to be
381
+ * added and has not been confirmed, and the only honest thing to draw beside it
382
+ * is the caller's words about that, and the reader's own control for finishing it.
383
+ *
384
+ * **The revoke control is offered on the session the reader is in, and that is the
385
+ * decision most likely to be got wrong.** Every instinct on a security page is to
386
+ * withhold the dangerous control from the row the reader is sitting on, and the
387
+ * instinct is wrong for a reason that has nothing to do with the interface: a
388
+ * reader who wants to end the session they are in is a reader who will find
389
+ * another way. They will ask an administrator, or they will sign out everywhere and
390
+ * guess, or they will simply carry on, and the third is the common one and the one
391
+ * that leaves the thing they were worried about open. Withholding the control does
392
+ * not remove the wish, it removes the honest route to it, and what it leaves behind
393
+ * is a support ticket and a still-open session. So the control is drawn on every
394
+ * row, and the mark on the reader's own row says which one they are in, so the
395
+ * consequence is legible rather than surprising. What the Block does not do is
396
+ * confirm: a bare click that signs the reader out of the page they are reading is
397
+ * not a confirmation, and the caller's `revoke` slot is where that belongs.
398
+ *
399
+ * **The three entries are handed over together whatever the form contains, and the
400
+ * form holds them only long enough to hand them over.** A caller who renders two
401
+ * fields receives a `confirm` of the empty string rather than `undefined`, because
402
+ * a value that is sometimes a string and sometimes absent is a value every caller
403
+ * has to narrow before it can use, and a password is not a value to narrow. The
404
+ * Block clears the three entries when the caller's status becomes `done`, which is
405
+ * the one piece of state it keeps about them, and that is a decision rather than an
406
+ * omission: a new password sitting in a form on a page about the reader's security
407
+ * is a worse thing than a caller who wanted to keep it, and the caller's `status`
408
+ * prop is exactly where the truth about the change lives.
409
+ *
410
+ * **The second factor has three states, and the third is the one a two-state
411
+ * surface cannot give.** A secret has been generated and the reader has not
412
+ * confirmed it, so the account is neither protected nor unprotected, and a surface
413
+ * offering only on and off makes a consumer draw an enrolled account as one of the
414
+ * two, which is either a false claim of protection or a false claim of exposure.
415
+ * The tone for it is `info` and for an off factor `neutral`, because turning a
416
+ * second factor off is a decision a reader is allowed to make on an account they
417
+ * control, and a page that alarms about it is a page that nags about something
418
+ * legal.
419
+ *
420
+ * **The four group names are optional, and the reason is that a group with no name
421
+ * is not a mystery.** A caller who names a group gets a real heading one level
422
+ * below the section's own, and a caller who names none gets a section of rows
423
+ * under the section heading, which is the right arrangement for the common case of
424
+ * a product with one group and no second factor. The alternative, four required
425
+ * names, is four sentences a consumer writes for a page they may not have: a
426
+ * product with no second factor would have to name that group's heading to satisfy
427
+ * a type, and the name would then sit in their source describing something they do
428
+ * not render. The cost is stated rather than hidden: a Block with four groups and
429
+ * no names is four lists under one heading, and a reader navigating by heading
430
+ * finds one entry where there are four regions. That is the caller's arrangement
431
+ * to make and easy to correct by passing four words.
432
+ *
433
+ * It is a client Component, and the directive is unconditional: the form holds
434
+ * state, the controls attach handlers, and a surface that owns either owns the
435
+ * JavaScript that carries it.
436
+ */
437
+ export declare function SettingsSecurity01({ eyebrow, title, description, labels, methods, onMethodChange, methodToggleLabel, changePassword, sessions, onRevokeSession, revokeLabel, twoFactor, empty, headingLevel, className, }: SettingsSecurity01Props): import("react").JSX.Element;
438
+ export default SettingsSecurity01;
439
+ //# sourceMappingURL=settings-security.d.ts.map