@nanisoft/prism-ui 0.10.2 → 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 (1156) hide show
  1. package/LICENSE +21 -21
  2. package/THIRD-PARTY-NOTICES.md +22 -7
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/blocks/about-01/about.d.ts +296 -0
  5. package/dist/blocks/about-01/about.d.ts.map +1 -0
  6. package/dist/blocks/about-01/about.js +103 -0
  7. package/dist/blocks/about-01/index.d.ts +3 -0
  8. package/dist/blocks/about-01/index.d.ts.map +1 -0
  9. package/dist/blocks/about-01/index.js +1 -0
  10. package/dist/blocks/accept-invite-01/accept-invite.d.ts +324 -0
  11. package/dist/blocks/accept-invite-01/accept-invite.d.ts.map +1 -0
  12. package/dist/blocks/accept-invite-01/accept-invite.js +230 -0
  13. package/dist/blocks/accept-invite-01/index.d.ts +3 -0
  14. package/dist/blocks/accept-invite-01/index.d.ts.map +1 -0
  15. package/dist/blocks/accept-invite-01/index.js +1 -0
  16. package/dist/blocks/account-01/account-01.d.ts +393 -0
  17. package/dist/blocks/account-01/account-01.d.ts.map +1 -0
  18. package/dist/blocks/account-01/account-01.js +215 -0
  19. package/dist/blocks/account-01/index.d.ts +3 -0
  20. package/dist/blocks/account-01/index.d.ts.map +1 -0
  21. package/dist/blocks/account-01/index.js +1 -0
  22. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts +271 -0
  23. package/dist/blocks/activity-feed-01/activity-feed-01.d.ts.map +1 -0
  24. package/dist/blocks/activity-feed-01/activity-feed-01.js +185 -0
  25. package/dist/blocks/activity-feed-01/index.d.ts +3 -0
  26. package/dist/blocks/activity-feed-01/index.d.ts.map +1 -0
  27. package/dist/blocks/activity-feed-01/index.js +1 -0
  28. package/dist/blocks/address-book-01/address-book-01.d.ts +312 -0
  29. package/dist/blocks/address-book-01/address-book-01.d.ts.map +1 -0
  30. package/dist/blocks/address-book-01/address-book-01.js +233 -0
  31. package/dist/blocks/address-book-01/index.d.ts +3 -0
  32. package/dist/blocks/address-book-01/index.d.ts.map +1 -0
  33. package/dist/blocks/address-book-01/index.js +1 -0
  34. package/dist/blocks/app-shell-01/app-shell.js +4 -4
  35. package/dist/blocks/app-shell-01/index.d.ts +2 -2
  36. package/dist/blocks/app-shell-01/index.js +1 -1
  37. package/dist/blocks/audit-log-01/audit-log-01.d.ts +333 -0
  38. package/dist/blocks/audit-log-01/audit-log-01.d.ts.map +1 -0
  39. package/dist/blocks/audit-log-01/audit-log-01.js +211 -0
  40. package/dist/blocks/audit-log-01/index.d.ts +3 -0
  41. package/dist/blocks/audit-log-01/index.d.ts.map +1 -0
  42. package/dist/blocks/audit-log-01/index.js +1 -0
  43. package/dist/blocks/auth-form-01/auth-form.d.ts +51 -2
  44. package/dist/blocks/auth-form-01/auth-form.d.ts.map +1 -1
  45. package/dist/blocks/auth-form-01/auth-form.js +36 -10
  46. package/dist/blocks/auth-form-01/index.d.ts +2 -2
  47. package/dist/blocks/auth-form-01/index.js +1 -1
  48. package/dist/blocks/awards-01/awards.d.ts +156 -0
  49. package/dist/blocks/awards-01/awards.d.ts.map +1 -0
  50. package/dist/blocks/awards-01/awards.js +102 -0
  51. package/dist/blocks/awards-01/index.d.ts +3 -0
  52. package/dist/blocks/awards-01/index.d.ts.map +1 -0
  53. package/dist/blocks/awards-01/index.js +1 -0
  54. package/dist/blocks/backdrop-01/backdrop.d.ts +268 -0
  55. package/dist/blocks/backdrop-01/backdrop.d.ts.map +1 -0
  56. package/dist/blocks/backdrop-01/backdrop.js +170 -0
  57. package/dist/blocks/backdrop-01/index.d.ts +3 -0
  58. package/dist/blocks/backdrop-01/index.d.ts.map +1 -0
  59. package/dist/blocks/backdrop-01/index.js +1 -0
  60. package/dist/blocks/bento-01/bento-01.d.ts +136 -0
  61. package/dist/blocks/bento-01/bento-01.d.ts.map +1 -0
  62. package/dist/blocks/bento-01/bento-01.js +97 -0
  63. package/dist/blocks/bento-01/index.d.ts +3 -0
  64. package/dist/blocks/bento-01/index.d.ts.map +1 -0
  65. package/dist/blocks/bento-01/index.js +1 -0
  66. package/dist/blocks/billing-source-01/billing-source-01.d.ts +379 -0
  67. package/dist/blocks/billing-source-01/billing-source-01.d.ts.map +1 -0
  68. package/dist/blocks/billing-source-01/billing-source-01.js +222 -0
  69. package/dist/blocks/billing-source-01/index.d.ts +3 -0
  70. package/dist/blocks/billing-source-01/index.d.ts.map +1 -0
  71. package/dist/blocks/billing-source-01/index.js +1 -0
  72. package/dist/blocks/bundle-01/bundle.d.ts +387 -0
  73. package/dist/blocks/bundle-01/bundle.d.ts.map +1 -0
  74. package/dist/blocks/bundle-01/bundle.js +153 -0
  75. package/dist/blocks/bundle-01/index.d.ts +3 -0
  76. package/dist/blocks/bundle-01/index.d.ts.map +1 -0
  77. package/dist/blocks/bundle-01/index.js +1 -0
  78. package/dist/blocks/calendar-01/calendar.d.ts +251 -0
  79. package/dist/blocks/calendar-01/calendar.d.ts.map +1 -0
  80. package/dist/blocks/calendar-01/calendar.js +191 -0
  81. package/dist/blocks/calendar-01/index.d.ts +3 -0
  82. package/dist/blocks/calendar-01/index.d.ts.map +1 -0
  83. package/dist/blocks/calendar-01/index.js +1 -0
  84. package/dist/blocks/capacity-01/capacity.d.ts +363 -0
  85. package/dist/blocks/capacity-01/capacity.d.ts.map +1 -0
  86. package/dist/blocks/capacity-01/capacity.js +208 -0
  87. package/dist/blocks/capacity-01/index.d.ts +3 -0
  88. package/dist/blocks/capacity-01/index.d.ts.map +1 -0
  89. package/dist/blocks/capacity-01/index.js +1 -0
  90. package/dist/blocks/careers-01/careers.d.ts +186 -0
  91. package/dist/blocks/careers-01/careers.d.ts.map +1 -0
  92. package/dist/blocks/careers-01/careers.js +83 -0
  93. package/dist/blocks/careers-01/index.d.ts +3 -0
  94. package/dist/blocks/careers-01/index.d.ts.map +1 -0
  95. package/dist/blocks/careers-01/index.js +1 -0
  96. package/dist/blocks/case-studies-01/case-studies.d.ts +192 -0
  97. package/dist/blocks/case-studies-01/case-studies.d.ts.map +1 -0
  98. package/dist/blocks/case-studies-01/case-studies.js +97 -0
  99. package/dist/blocks/case-studies-01/index.d.ts +3 -0
  100. package/dist/blocks/case-studies-01/index.d.ts.map +1 -0
  101. package/dist/blocks/case-studies-01/index.js +1 -0
  102. package/dist/blocks/case-study-01/case-study.d.ts +214 -0
  103. package/dist/blocks/case-study-01/case-study.d.ts.map +1 -0
  104. package/dist/blocks/case-study-01/case-study.js +79 -0
  105. package/dist/blocks/case-study-01/index.d.ts +3 -0
  106. package/dist/blocks/case-study-01/index.d.ts.map +1 -0
  107. package/dist/blocks/case-study-01/index.js +1 -0
  108. package/dist/blocks/changelog-01/changelog.d.ts +200 -0
  109. package/dist/blocks/changelog-01/changelog.d.ts.map +1 -0
  110. package/dist/blocks/changelog-01/changelog.js +155 -0
  111. package/dist/blocks/changelog-01/index.d.ts +3 -0
  112. package/dist/blocks/changelog-01/index.d.ts.map +1 -0
  113. package/dist/blocks/changelog-01/index.js +1 -0
  114. package/dist/blocks/chart-card-01/chart-card-01.d.ts +149 -0
  115. package/dist/blocks/chart-card-01/chart-card-01.d.ts.map +1 -0
  116. package/dist/blocks/chart-card-01/chart-card-01.js +81 -0
  117. package/dist/blocks/chart-card-01/index.d.ts +3 -0
  118. package/dist/blocks/chart-card-01/index.d.ts.map +1 -0
  119. package/dist/blocks/chart-card-01/index.js +1 -0
  120. package/dist/blocks/chart-group-01/chart-group-01.d.ts +138 -0
  121. package/dist/blocks/chart-group-01/chart-group-01.d.ts.map +1 -0
  122. package/dist/blocks/chart-group-01/chart-group-01.js +74 -0
  123. package/dist/blocks/chart-group-01/index.d.ts +3 -0
  124. package/dist/blocks/chart-group-01/index.d.ts.map +1 -0
  125. package/dist/blocks/chart-group-01/index.js +1 -0
  126. package/dist/blocks/code-sample-01/code-sample.d.ts +193 -0
  127. package/dist/blocks/code-sample-01/code-sample.d.ts.map +1 -0
  128. package/dist/blocks/code-sample-01/code-sample.js +104 -0
  129. package/dist/blocks/code-sample-01/index.d.ts +3 -0
  130. package/dist/blocks/code-sample-01/index.d.ts.map +1 -0
  131. package/dist/blocks/code-sample-01/index.js +1 -0
  132. package/dist/blocks/community-01/community.d.ts +183 -0
  133. package/dist/blocks/community-01/community.d.ts.map +1 -0
  134. package/dist/blocks/community-01/community.js +102 -0
  135. package/dist/blocks/community-01/index.d.ts +3 -0
  136. package/dist/blocks/community-01/index.d.ts.map +1 -0
  137. package/dist/blocks/community-01/index.js +1 -0
  138. package/dist/blocks/compare-01/compare.d.ts +184 -0
  139. package/dist/blocks/compare-01/compare.d.ts.map +1 -0
  140. package/dist/blocks/compare-01/compare.js +106 -0
  141. package/dist/blocks/compare-01/index.d.ts +3 -0
  142. package/dist/blocks/compare-01/index.d.ts.map +1 -0
  143. package/dist/blocks/compare-01/index.js +1 -0
  144. package/dist/blocks/compliance-01/compliance.d.ts +249 -0
  145. package/dist/blocks/compliance-01/compliance.d.ts.map +1 -0
  146. package/dist/blocks/compliance-01/compliance.js +130 -0
  147. package/dist/blocks/compliance-01/index.d.ts +3 -0
  148. package/dist/blocks/compliance-01/index.d.ts.map +1 -0
  149. package/dist/blocks/compliance-01/index.js +1 -0
  150. package/dist/blocks/consent-01/consent.d.ts +211 -0
  151. package/dist/blocks/consent-01/consent.d.ts.map +1 -0
  152. package/dist/blocks/consent-01/consent.js +101 -0
  153. package/dist/blocks/consent-01/index.d.ts +3 -0
  154. package/dist/blocks/consent-01/index.d.ts.map +1 -0
  155. package/dist/blocks/consent-01/index.js +1 -0
  156. package/dist/blocks/contact-01/contact.d.ts +319 -0
  157. package/dist/blocks/contact-01/contact.d.ts.map +1 -0
  158. package/dist/blocks/contact-01/contact.js +211 -0
  159. package/dist/blocks/contact-01/index.d.ts +3 -0
  160. package/dist/blocks/contact-01/index.d.ts.map +1 -0
  161. package/dist/blocks/contact-01/index.js +1 -0
  162. package/dist/blocks/content-grid-01/content-grid.d.ts +262 -0
  163. package/dist/blocks/content-grid-01/content-grid.d.ts.map +1 -0
  164. package/dist/blocks/content-grid-01/content-grid.js +155 -0
  165. package/dist/blocks/content-grid-01/index.d.ts +3 -0
  166. package/dist/blocks/content-grid-01/index.d.ts.map +1 -0
  167. package/dist/blocks/content-grid-01/index.js +1 -0
  168. package/dist/blocks/cta-01/cta.d.ts +33 -22
  169. package/dist/blocks/cta-01/cta.d.ts.map +1 -1
  170. package/dist/blocks/cta-01/cta.js +12 -3
  171. package/dist/blocks/cta-01/index.d.ts +2 -2
  172. package/dist/blocks/cta-01/index.js +1 -1
  173. package/dist/blocks/dashboard-01/dashboard-01.d.ts +247 -0
  174. package/dist/blocks/dashboard-01/dashboard-01.d.ts.map +1 -0
  175. package/dist/blocks/dashboard-01/dashboard-01.js +141 -0
  176. package/dist/blocks/dashboard-01/index.d.ts +3 -0
  177. package/dist/blocks/dashboard-01/index.d.ts.map +1 -0
  178. package/dist/blocks/dashboard-01/index.js +1 -0
  179. package/dist/blocks/data-table-01/data-table.d.ts +12 -1
  180. package/dist/blocks/data-table-01/data-table.d.ts.map +1 -1
  181. package/dist/blocks/data-table-01/data-table.js +15 -12
  182. package/dist/blocks/data-table-01/index.d.ts +2 -2
  183. package/dist/blocks/data-table-01/index.js +1 -1
  184. package/dist/blocks/delivery-01/delivery.d.ts +343 -0
  185. package/dist/blocks/delivery-01/delivery.d.ts.map +1 -0
  186. package/dist/blocks/delivery-01/delivery.js +212 -0
  187. package/dist/blocks/delivery-01/index.d.ts +3 -0
  188. package/dist/blocks/delivery-01/index.d.ts.map +1 -0
  189. package/dist/blocks/delivery-01/index.js +1 -0
  190. package/dist/blocks/directory-01/directory-01.d.ts +316 -0
  191. package/dist/blocks/directory-01/directory-01.d.ts.map +1 -0
  192. package/dist/blocks/directory-01/directory-01.js +252 -0
  193. package/dist/blocks/directory-01/index.d.ts +3 -0
  194. package/dist/blocks/directory-01/index.d.ts.map +1 -0
  195. package/dist/blocks/directory-01/index.js +1 -0
  196. package/dist/blocks/download-01/download.d.ts +261 -0
  197. package/dist/blocks/download-01/download.d.ts.map +1 -0
  198. package/dist/blocks/download-01/download.js +115 -0
  199. package/dist/blocks/download-01/index.d.ts +3 -0
  200. package/dist/blocks/download-01/index.d.ts.map +1 -0
  201. package/dist/blocks/download-01/index.js +1 -0
  202. package/dist/blocks/empty-state-01/empty-state.d.ts +143 -0
  203. package/dist/blocks/empty-state-01/empty-state.d.ts.map +1 -0
  204. package/dist/blocks/empty-state-01/empty-state.js +104 -0
  205. package/dist/blocks/empty-state-01/index.d.ts +3 -0
  206. package/dist/blocks/empty-state-01/index.d.ts.map +1 -0
  207. package/dist/blocks/empty-state-01/index.js +1 -0
  208. package/dist/blocks/faq-01/faq.d.ts +128 -0
  209. package/dist/blocks/faq-01/faq.d.ts.map +1 -0
  210. package/dist/blocks/faq-01/faq.js +53 -0
  211. package/dist/blocks/faq-01/index.d.ts +3 -0
  212. package/dist/blocks/faq-01/index.d.ts.map +1 -0
  213. package/dist/blocks/faq-01/index.js +1 -0
  214. package/dist/blocks/feature-grid-01/feature-grid.d.ts +28 -1
  215. package/dist/blocks/feature-grid-01/feature-grid.d.ts.map +1 -1
  216. package/dist/blocks/feature-grid-01/feature-grid.js +34 -3
  217. package/dist/blocks/feature-grid-01/index.d.ts +2 -2
  218. package/dist/blocks/feature-grid-01/index.js +1 -1
  219. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts +158 -0
  220. package/dist/blocks/feature-rows-01/feature-rows-01.d.ts.map +1 -0
  221. package/dist/blocks/feature-rows-01/feature-rows-01.js +81 -0
  222. package/dist/blocks/feature-rows-01/index.d.ts +3 -0
  223. package/dist/blocks/feature-rows-01/index.d.ts.map +1 -0
  224. package/dist/blocks/feature-rows-01/index.js +1 -0
  225. package/dist/blocks/feedback-01/feedback.d.ts +235 -0
  226. package/dist/blocks/feedback-01/feedback.d.ts.map +1 -0
  227. package/dist/blocks/feedback-01/feedback.js +113 -0
  228. package/dist/blocks/feedback-01/index.d.ts +3 -0
  229. package/dist/blocks/feedback-01/index.d.ts.map +1 -0
  230. package/dist/blocks/feedback-01/index.js +1 -0
  231. package/dist/blocks/field-map-01/field-map.d.ts +247 -0
  232. package/dist/blocks/field-map-01/field-map.d.ts.map +1 -0
  233. package/dist/blocks/field-map-01/field-map.js +183 -0
  234. package/dist/blocks/field-map-01/index.d.ts +3 -0
  235. package/dist/blocks/field-map-01/index.d.ts.map +1 -0
  236. package/dist/blocks/field-map-01/index.js +1 -0
  237. package/dist/blocks/forgot-password-01/forgot-password.d.ts +288 -0
  238. package/dist/blocks/forgot-password-01/forgot-password.d.ts.map +1 -0
  239. package/dist/blocks/forgot-password-01/forgot-password.js +190 -0
  240. package/dist/blocks/forgot-password-01/index.d.ts +3 -0
  241. package/dist/blocks/forgot-password-01/index.d.ts.map +1 -0
  242. package/dist/blocks/forgot-password-01/index.js +1 -0
  243. package/dist/blocks/gallery-01/gallery.d.ts +208 -0
  244. package/dist/blocks/gallery-01/gallery.d.ts.map +1 -0
  245. package/dist/blocks/gallery-01/gallery.js +174 -0
  246. package/dist/blocks/gallery-01/index.d.ts +3 -0
  247. package/dist/blocks/gallery-01/index.d.ts.map +1 -0
  248. package/dist/blocks/gallery-01/index.js +1 -0
  249. package/dist/blocks/gantt-01/gantt.d.ts +290 -0
  250. package/dist/blocks/gantt-01/gantt.d.ts.map +1 -0
  251. package/dist/blocks/gantt-01/gantt.js +224 -0
  252. package/dist/blocks/gantt-01/index.d.ts +3 -0
  253. package/dist/blocks/gantt-01/index.d.ts.map +1 -0
  254. package/dist/blocks/gantt-01/index.js +1 -0
  255. package/dist/blocks/handoff-01/handoff-01.d.ts +326 -0
  256. package/dist/blocks/handoff-01/handoff-01.d.ts.map +1 -0
  257. package/dist/blocks/handoff-01/handoff-01.js +180 -0
  258. package/dist/blocks/handoff-01/index.d.ts +3 -0
  259. package/dist/blocks/handoff-01/index.d.ts.map +1 -0
  260. package/dist/blocks/handoff-01/index.js +1 -0
  261. package/dist/blocks/help-01/help.d.ts +254 -0
  262. package/dist/blocks/help-01/help.d.ts.map +1 -0
  263. package/dist/blocks/help-01/help.js +188 -0
  264. package/dist/blocks/help-01/index.d.ts +3 -0
  265. package/dist/blocks/help-01/index.d.ts.map +1 -0
  266. package/dist/blocks/help-01/index.js +1 -0
  267. package/dist/blocks/hero-01/hero.d.ts +112 -21
  268. package/dist/blocks/hero-01/hero.d.ts.map +1 -1
  269. package/dist/blocks/hero-01/hero.js +29 -16
  270. package/dist/blocks/hero-01/index.d.ts +2 -1
  271. package/dist/blocks/hero-01/index.d.ts.map +1 -1
  272. package/dist/blocks/hero-01/index.js +1 -1
  273. package/dist/blocks/hero-02/hero-02.d.ts +244 -0
  274. package/dist/blocks/hero-02/hero-02.d.ts.map +1 -0
  275. package/dist/blocks/hero-02/hero-02.js +87 -0
  276. package/dist/blocks/hero-02/index.d.ts +3 -0
  277. package/dist/blocks/hero-02/index.d.ts.map +1 -0
  278. package/dist/blocks/hero-02/index.js +1 -0
  279. package/dist/blocks/hero-03/hero-03.d.ts +247 -0
  280. package/dist/blocks/hero-03/hero-03.d.ts.map +1 -0
  281. package/dist/blocks/hero-03/hero-03.js +93 -0
  282. package/dist/blocks/hero-03/index.d.ts +3 -0
  283. package/dist/blocks/hero-03/index.d.ts.map +1 -0
  284. package/dist/blocks/hero-03/index.js +1 -0
  285. package/dist/blocks/history-01/history-01.d.ts +414 -0
  286. package/dist/blocks/history-01/history-01.d.ts.map +1 -0
  287. package/dist/blocks/history-01/history-01.js +285 -0
  288. package/dist/blocks/history-01/index.d.ts +3 -0
  289. package/dist/blocks/history-01/index.d.ts.map +1 -0
  290. package/dist/blocks/history-01/index.js +1 -0
  291. package/dist/blocks/inbox-01/inbox.d.ts +349 -0
  292. package/dist/blocks/inbox-01/inbox.d.ts.map +1 -0
  293. package/dist/blocks/inbox-01/inbox.js +244 -0
  294. package/dist/blocks/inbox-01/index.d.ts +3 -0
  295. package/dist/blocks/inbox-01/index.d.ts.map +1 -0
  296. package/dist/blocks/inbox-01/index.js +1 -0
  297. package/dist/blocks/index.d.ts +223 -20
  298. package/dist/blocks/index.d.ts.map +1 -1
  299. package/dist/blocks/index.js +137 -19
  300. package/dist/blocks/industries-01/index.d.ts +3 -0
  301. package/dist/blocks/industries-01/index.d.ts.map +1 -0
  302. package/dist/blocks/industries-01/index.js +1 -0
  303. package/dist/blocks/industries-01/industries.d.ts +164 -0
  304. package/dist/blocks/industries-01/industries.d.ts.map +1 -0
  305. package/dist/blocks/industries-01/industries.js +96 -0
  306. package/dist/blocks/instrument-panel-01/index.d.ts +2 -2
  307. package/dist/blocks/instrument-panel-01/index.js +1 -1
  308. package/dist/blocks/instrument-panel-01/instrument-panel.js +1 -1
  309. package/dist/blocks/intake-01/index.d.ts +3 -0
  310. package/dist/blocks/intake-01/index.d.ts.map +1 -0
  311. package/dist/blocks/intake-01/index.js +1 -0
  312. package/dist/blocks/intake-01/intake-01.d.ts +305 -0
  313. package/dist/blocks/intake-01/intake-01.d.ts.map +1 -0
  314. package/dist/blocks/intake-01/intake-01.js +178 -0
  315. package/dist/blocks/integration-01/index.d.ts +3 -0
  316. package/dist/blocks/integration-01/index.d.ts.map +1 -0
  317. package/dist/blocks/integration-01/index.js +1 -0
  318. package/dist/blocks/integration-01/integration.d.ts +226 -0
  319. package/dist/blocks/integration-01/integration.d.ts.map +1 -0
  320. package/dist/blocks/integration-01/integration.js +170 -0
  321. package/dist/blocks/invite-user-01/index.d.ts +3 -0
  322. package/dist/blocks/invite-user-01/index.d.ts.map +1 -0
  323. package/dist/blocks/invite-user-01/index.js +1 -0
  324. package/dist/blocks/invite-user-01/invite-user.d.ts +317 -0
  325. package/dist/blocks/invite-user-01/invite-user.d.ts.map +1 -0
  326. package/dist/blocks/invite-user-01/invite-user.js +228 -0
  327. package/dist/blocks/issue-detail-01/index.d.ts +3 -0
  328. package/dist/blocks/issue-detail-01/index.d.ts.map +1 -0
  329. package/dist/blocks/issue-detail-01/index.js +1 -0
  330. package/dist/blocks/issue-detail-01/issue-detail.d.ts +355 -0
  331. package/dist/blocks/issue-detail-01/issue-detail.d.ts.map +1 -0
  332. package/dist/blocks/issue-detail-01/issue-detail.js +187 -0
  333. package/dist/blocks/issue-list-01/index.d.ts +3 -0
  334. package/dist/blocks/issue-list-01/index.d.ts.map +1 -0
  335. package/dist/blocks/issue-list-01/index.js +1 -0
  336. package/dist/blocks/issue-list-01/issue-list.d.ts +298 -0
  337. package/dist/blocks/issue-list-01/issue-list.d.ts.map +1 -0
  338. package/dist/blocks/issue-list-01/issue-list.js +284 -0
  339. package/dist/blocks/kanban-01/index.d.ts +3 -0
  340. package/dist/blocks/kanban-01/index.d.ts.map +1 -0
  341. package/dist/blocks/kanban-01/index.js +1 -0
  342. package/dist/blocks/kanban-01/kanban.d.ts +278 -0
  343. package/dist/blocks/kanban-01/kanban.d.ts.map +1 -0
  344. package/dist/blocks/kanban-01/kanban.js +144 -0
  345. package/dist/blocks/leaderboard-01/index.d.ts +3 -0
  346. package/dist/blocks/leaderboard-01/index.d.ts.map +1 -0
  347. package/dist/blocks/leaderboard-01/index.js +1 -0
  348. package/dist/blocks/leaderboard-01/leaderboard.d.ts +250 -0
  349. package/dist/blocks/leaderboard-01/leaderboard.d.ts.map +1 -0
  350. package/dist/blocks/leaderboard-01/leaderboard.js +121 -0
  351. package/dist/blocks/login-01/index.d.ts +3 -0
  352. package/dist/blocks/login-01/index.d.ts.map +1 -0
  353. package/dist/blocks/login-01/index.js +1 -0
  354. package/dist/blocks/login-01/login-01.d.ts +356 -0
  355. package/dist/blocks/login-01/login-01.d.ts.map +1 -0
  356. package/dist/blocks/login-01/login-01.js +249 -0
  357. package/dist/blocks/logo-cloud-01/index.d.ts +3 -0
  358. package/dist/blocks/logo-cloud-01/index.d.ts.map +1 -0
  359. package/dist/blocks/logo-cloud-01/index.js +1 -0
  360. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts +181 -0
  361. package/dist/blocks/logo-cloud-01/logo-cloud.d.ts.map +1 -0
  362. package/dist/blocks/logo-cloud-01/logo-cloud.js +118 -0
  363. package/dist/blocks/logo-strip-01/index.d.ts +2 -2
  364. package/dist/blocks/logo-strip-01/index.js +1 -1
  365. package/dist/blocks/logo-strip-01/logo-strip.d.ts +1 -1
  366. package/dist/blocks/logo-strip-01/logo-strip.js +2 -2
  367. package/dist/blocks/magic-link-01/index.d.ts +3 -0
  368. package/dist/blocks/magic-link-01/index.d.ts.map +1 -0
  369. package/dist/blocks/magic-link-01/index.js +1 -0
  370. package/dist/blocks/magic-link-01/magic-link-01.d.ts +367 -0
  371. package/dist/blocks/magic-link-01/magic-link-01.d.ts.map +1 -0
  372. package/dist/blocks/magic-link-01/magic-link-01.js +233 -0
  373. package/dist/blocks/member-list-01/index.d.ts +3 -0
  374. package/dist/blocks/member-list-01/index.d.ts.map +1 -0
  375. package/dist/blocks/member-list-01/index.js +1 -0
  376. package/dist/blocks/member-list-01/member-list.d.ts +192 -0
  377. package/dist/blocks/member-list-01/member-list.d.ts.map +1 -0
  378. package/dist/blocks/member-list-01/member-list.js +142 -0
  379. package/dist/blocks/milestone-timeline-01/index.d.ts +3 -0
  380. package/dist/blocks/milestone-timeline-01/index.d.ts.map +1 -0
  381. package/dist/blocks/milestone-timeline-01/index.js +1 -0
  382. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts +217 -0
  383. package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts.map +1 -0
  384. package/dist/blocks/milestone-timeline-01/milestone-timeline.js +173 -0
  385. package/dist/blocks/newsletter-01/index.d.ts +3 -0
  386. package/dist/blocks/newsletter-01/index.d.ts.map +1 -0
  387. package/dist/blocks/newsletter-01/index.js +1 -0
  388. package/dist/blocks/newsletter-01/newsletter.d.ts +216 -0
  389. package/dist/blocks/newsletter-01/newsletter.d.ts.map +1 -0
  390. package/dist/blocks/newsletter-01/newsletter.js +102 -0
  391. package/dist/blocks/note-grid-01/index.d.ts +2 -2
  392. package/dist/blocks/note-grid-01/index.js +1 -1
  393. package/dist/blocks/note-grid-01/note-grid.d.ts +1 -1
  394. package/dist/blocks/note-grid-01/note-grid.js +1 -1
  395. package/dist/blocks/notification-center-01/index.d.ts +3 -0
  396. package/dist/blocks/notification-center-01/index.d.ts.map +1 -0
  397. package/dist/blocks/notification-center-01/index.js +1 -0
  398. package/dist/blocks/notification-center-01/notification-center-01.d.ts +341 -0
  399. package/dist/blocks/notification-center-01/notification-center-01.d.ts.map +1 -0
  400. package/dist/blocks/notification-center-01/notification-center-01.js +203 -0
  401. package/dist/blocks/offer-01/index.d.ts +3 -0
  402. package/dist/blocks/offer-01/index.d.ts.map +1 -0
  403. package/dist/blocks/offer-01/index.js +1 -0
  404. package/dist/blocks/offer-01/offer.d.ts +139 -0
  405. package/dist/blocks/offer-01/offer.d.ts.map +1 -0
  406. package/dist/blocks/offer-01/offer.js +81 -0
  407. package/dist/blocks/offering-01/index.d.ts +3 -0
  408. package/dist/blocks/offering-01/index.d.ts.map +1 -0
  409. package/dist/blocks/offering-01/index.js +1 -0
  410. package/dist/blocks/offering-01/offering.d.ts +245 -0
  411. package/dist/blocks/offering-01/offering.d.ts.map +1 -0
  412. package/dist/blocks/offering-01/offering.js +144 -0
  413. package/dist/blocks/offering-categories-01/index.d.ts +3 -0
  414. package/dist/blocks/offering-categories-01/index.d.ts.map +1 -0
  415. package/dist/blocks/offering-categories-01/index.js +1 -0
  416. package/dist/blocks/offering-categories-01/offering-categories.d.ts +248 -0
  417. package/dist/blocks/offering-categories-01/offering-categories.d.ts.map +1 -0
  418. package/dist/blocks/offering-categories-01/offering-categories.js +153 -0
  419. package/dist/blocks/offering-list-01/index.d.ts +3 -0
  420. package/dist/blocks/offering-list-01/index.d.ts.map +1 -0
  421. package/dist/blocks/offering-list-01/index.js +1 -0
  422. package/dist/blocks/offering-list-01/offering-list.d.ts +362 -0
  423. package/dist/blocks/offering-list-01/offering-list.d.ts.map +1 -0
  424. package/dist/blocks/offering-list-01/offering-list.js +366 -0
  425. package/dist/blocks/onboarding-01/index.d.ts +3 -0
  426. package/dist/blocks/onboarding-01/index.d.ts.map +1 -0
  427. package/dist/blocks/onboarding-01/index.js +1 -0
  428. package/dist/blocks/onboarding-01/onboarding.d.ts +199 -0
  429. package/dist/blocks/onboarding-01/onboarding.d.ts.map +1 -0
  430. package/dist/blocks/onboarding-01/onboarding.js +182 -0
  431. package/dist/blocks/ops-checklist-01/index.d.ts +3 -0
  432. package/dist/blocks/ops-checklist-01/index.d.ts.map +1 -0
  433. package/dist/blocks/ops-checklist-01/index.js +1 -0
  434. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts +308 -0
  435. package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts.map +1 -0
  436. package/dist/blocks/ops-checklist-01/ops-checklist-01.js +165 -0
  437. package/dist/blocks/page-header-01/index.d.ts +2 -2
  438. package/dist/blocks/page-header-01/index.d.ts.map +1 -1
  439. package/dist/blocks/page-header-01/index.js +1 -1
  440. package/dist/blocks/page-header-01/page-header.d.ts +125 -12
  441. package/dist/blocks/page-header-01/page-header.d.ts.map +1 -1
  442. package/dist/blocks/page-header-01/page-header.js +28 -12
  443. package/dist/blocks/passkey-01/index.d.ts +3 -0
  444. package/dist/blocks/passkey-01/index.d.ts.map +1 -0
  445. package/dist/blocks/passkey-01/index.js +1 -0
  446. package/dist/blocks/passkey-01/passkey-01.d.ts +334 -0
  447. package/dist/blocks/passkey-01/passkey-01.d.ts.map +1 -0
  448. package/dist/blocks/passkey-01/passkey-01.js +192 -0
  449. package/dist/blocks/permission-matrix-01/index.d.ts +3 -0
  450. package/dist/blocks/permission-matrix-01/index.d.ts.map +1 -0
  451. package/dist/blocks/permission-matrix-01/index.js +1 -0
  452. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts +282 -0
  453. package/dist/blocks/permission-matrix-01/permission-matrix.d.ts.map +1 -0
  454. package/dist/blocks/permission-matrix-01/permission-matrix.js +173 -0
  455. package/dist/blocks/pricing-01/index.d.ts +2 -1
  456. package/dist/blocks/pricing-01/index.d.ts.map +1 -1
  457. package/dist/blocks/pricing-01/index.js +1 -1
  458. package/dist/blocks/pricing-01/pricing.d.ts +126 -2
  459. package/dist/blocks/pricing-01/pricing.d.ts.map +1 -1
  460. package/dist/blocks/pricing-01/pricing.js +22 -5
  461. package/dist/blocks/pricing-compare-01/index.d.ts +3 -0
  462. package/dist/blocks/pricing-compare-01/index.d.ts.map +1 -0
  463. package/dist/blocks/pricing-compare-01/index.js +1 -0
  464. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts +277 -0
  465. package/dist/blocks/pricing-compare-01/pricing-compare.d.ts.map +1 -0
  466. package/dist/blocks/pricing-compare-01/pricing-compare.js +126 -0
  467. package/dist/blocks/process-flow-01/index.d.ts +3 -0
  468. package/dist/blocks/process-flow-01/index.d.ts.map +1 -0
  469. package/dist/blocks/process-flow-01/index.js +1 -0
  470. package/dist/blocks/process-flow-01/process-flow.d.ts +118 -0
  471. package/dist/blocks/process-flow-01/process-flow.d.ts.map +1 -0
  472. package/dist/blocks/process-flow-01/process-flow.js +71 -0
  473. package/dist/blocks/process-rail-01/index.d.ts +2 -2
  474. package/dist/blocks/process-rail-01/index.js +1 -1
  475. package/dist/blocks/process-rail-01/process-rail.d.ts +1 -1
  476. package/dist/blocks/process-rail-01/process-rail.js +2 -2
  477. package/dist/blocks/product-grid-01/index.d.ts +2 -2
  478. package/dist/blocks/product-grid-01/index.js +1 -1
  479. package/dist/blocks/product-grid-01/product-grid.d.ts +37 -5
  480. package/dist/blocks/product-grid-01/product-grid.d.ts.map +1 -1
  481. package/dist/blocks/product-grid-01/product-grid.js +20 -6
  482. package/dist/blocks/project-01/index.d.ts +3 -0
  483. package/dist/blocks/project-01/index.d.ts.map +1 -0
  484. package/dist/blocks/project-01/index.js +1 -0
  485. package/dist/blocks/project-01/project.d.ts +323 -0
  486. package/dist/blocks/project-01/project.d.ts.map +1 -0
  487. package/dist/blocks/project-01/project.js +247 -0
  488. package/dist/blocks/project-dashboard-01/index.d.ts +3 -0
  489. package/dist/blocks/project-dashboard-01/index.d.ts.map +1 -0
  490. package/dist/blocks/project-dashboard-01/index.js +1 -0
  491. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts +200 -0
  492. package/dist/blocks/project-dashboard-01/project-dashboard.d.ts.map +1 -0
  493. package/dist/blocks/project-dashboard-01/project-dashboard.js +124 -0
  494. package/dist/blocks/project-list-01/index.d.ts +3 -0
  495. package/dist/blocks/project-list-01/index.d.ts.map +1 -0
  496. package/dist/blocks/project-list-01/index.js +1 -0
  497. package/dist/blocks/project-list-01/project-list.d.ts +301 -0
  498. package/dist/blocks/project-list-01/project-list.d.ts.map +1 -0
  499. package/dist/blocks/project-list-01/project-list.js +305 -0
  500. package/dist/blocks/provisioning-01/index.d.ts +3 -0
  501. package/dist/blocks/provisioning-01/index.d.ts.map +1 -0
  502. package/dist/blocks/provisioning-01/index.js +1 -0
  503. package/dist/blocks/provisioning-01/provisioning.d.ts +357 -0
  504. package/dist/blocks/provisioning-01/provisioning.d.ts.map +1 -0
  505. package/dist/blocks/provisioning-01/provisioning.js +230 -0
  506. package/dist/blocks/quick-view-01/index.d.ts +3 -0
  507. package/dist/blocks/quick-view-01/index.d.ts.map +1 -0
  508. package/dist/blocks/quick-view-01/index.js +1 -0
  509. package/dist/blocks/quick-view-01/quick-view.d.ts +215 -0
  510. package/dist/blocks/quick-view-01/quick-view.d.ts.map +1 -0
  511. package/dist/blocks/quick-view-01/quick-view.js +136 -0
  512. package/dist/blocks/rate-card-01/index.d.ts +3 -0
  513. package/dist/blocks/rate-card-01/index.d.ts.map +1 -0
  514. package/dist/blocks/rate-card-01/index.js +1 -0
  515. package/dist/blocks/rate-card-01/rate-card.d.ts +184 -0
  516. package/dist/blocks/rate-card-01/rate-card.d.ts.map +1 -0
  517. package/dist/blocks/rate-card-01/rate-card.js +79 -0
  518. package/dist/blocks/reset-password-01/index.d.ts +3 -0
  519. package/dist/blocks/reset-password-01/index.d.ts.map +1 -0
  520. package/dist/blocks/reset-password-01/index.js +1 -0
  521. package/dist/blocks/reset-password-01/reset-password.d.ts +276 -0
  522. package/dist/blocks/reset-password-01/reset-password.d.ts.map +1 -0
  523. package/dist/blocks/reset-password-01/reset-password.js +175 -0
  524. package/dist/blocks/resource-list-01/index.d.ts +3 -0
  525. package/dist/blocks/resource-list-01/index.d.ts.map +1 -0
  526. package/dist/blocks/resource-list-01/index.js +1 -0
  527. package/dist/blocks/resource-list-01/resource-list.d.ts +237 -0
  528. package/dist/blocks/resource-list-01/resource-list.d.ts.map +1 -0
  529. package/dist/blocks/resource-list-01/resource-list.js +154 -0
  530. package/dist/blocks/retention-01/index.d.ts +3 -0
  531. package/dist/blocks/retention-01/index.d.ts.map +1 -0
  532. package/dist/blocks/retention-01/index.js +1 -0
  533. package/dist/blocks/retention-01/retention.d.ts +255 -0
  534. package/dist/blocks/retention-01/retention.d.ts.map +1 -0
  535. package/dist/blocks/retention-01/retention.js +145 -0
  536. package/dist/blocks/run-console-01/index.d.ts +3 -0
  537. package/dist/blocks/run-console-01/index.d.ts.map +1 -0
  538. package/dist/blocks/run-console-01/index.js +1 -0
  539. package/dist/blocks/run-console-01/run-console.d.ts +124 -0
  540. package/dist/blocks/run-console-01/run-console.d.ts.map +1 -0
  541. package/dist/blocks/run-console-01/run-console.js +49 -0
  542. package/dist/blocks/services-01/index.d.ts +3 -0
  543. package/dist/blocks/services-01/index.d.ts.map +1 -0
  544. package/dist/blocks/services-01/index.js +1 -0
  545. package/dist/blocks/services-01/services.d.ts +159 -0
  546. package/dist/blocks/services-01/services.d.ts.map +1 -0
  547. package/dist/blocks/services-01/services.js +81 -0
  548. package/dist/blocks/settings-integrations-01/index.d.ts +3 -0
  549. package/dist/blocks/settings-integrations-01/index.d.ts.map +1 -0
  550. package/dist/blocks/settings-integrations-01/index.js +1 -0
  551. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts +246 -0
  552. package/dist/blocks/settings-integrations-01/settings-integrations.d.ts.map +1 -0
  553. package/dist/blocks/settings-integrations-01/settings-integrations.js +213 -0
  554. package/dist/blocks/settings-members-01/index.d.ts +3 -0
  555. package/dist/blocks/settings-members-01/index.d.ts.map +1 -0
  556. package/dist/blocks/settings-members-01/index.js +1 -0
  557. package/dist/blocks/settings-members-01/settings-members.d.ts +396 -0
  558. package/dist/blocks/settings-members-01/settings-members.d.ts.map +1 -0
  559. package/dist/blocks/settings-members-01/settings-members.js +255 -0
  560. package/dist/blocks/settings-notifications-01/index.d.ts +3 -0
  561. package/dist/blocks/settings-notifications-01/index.d.ts.map +1 -0
  562. package/dist/blocks/settings-notifications-01/index.js +1 -0
  563. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts +270 -0
  564. package/dist/blocks/settings-notifications-01/settings-notifications.d.ts.map +1 -0
  565. package/dist/blocks/settings-notifications-01/settings-notifications.js +202 -0
  566. package/dist/blocks/settings-panel-01/index.d.ts +2 -2
  567. package/dist/blocks/settings-panel-01/index.js +1 -1
  568. package/dist/blocks/settings-panel-01/settings-panel.d.ts +11 -1
  569. package/dist/blocks/settings-panel-01/settings-panel.d.ts.map +1 -1
  570. package/dist/blocks/settings-panel-01/settings-panel.js +15 -10
  571. package/dist/blocks/settings-security-01/index.d.ts +3 -0
  572. package/dist/blocks/settings-security-01/index.d.ts.map +1 -0
  573. package/dist/blocks/settings-security-01/index.js +1 -0
  574. package/dist/blocks/settings-security-01/settings-security.d.ts +439 -0
  575. package/dist/blocks/settings-security-01/settings-security.d.ts.map +1 -0
  576. package/dist/blocks/settings-security-01/settings-security.js +244 -0
  577. package/dist/blocks/shortlist-01/index.d.ts +3 -0
  578. package/dist/blocks/shortlist-01/index.d.ts.map +1 -0
  579. package/dist/blocks/shortlist-01/index.js +1 -0
  580. package/dist/blocks/shortlist-01/shortlist-01.d.ts +337 -0
  581. package/dist/blocks/shortlist-01/shortlist-01.d.ts.map +1 -0
  582. package/dist/blocks/shortlist-01/shortlist-01.js +191 -0
  583. package/dist/blocks/showcase-01/index.d.ts +3 -0
  584. package/dist/blocks/showcase-01/index.d.ts.map +1 -0
  585. package/dist/blocks/showcase-01/index.js +1 -0
  586. package/dist/blocks/showcase-01/showcase-01.d.ts +238 -0
  587. package/dist/blocks/showcase-01/showcase-01.d.ts.map +1 -0
  588. package/dist/blocks/showcase-01/showcase-01.js +84 -0
  589. package/dist/blocks/signup-01/index.d.ts +3 -0
  590. package/dist/blocks/signup-01/index.d.ts.map +1 -0
  591. package/dist/blocks/signup-01/index.js +1 -0
  592. package/dist/blocks/signup-01/signup-01.d.ts +405 -0
  593. package/dist/blocks/signup-01/signup-01.d.ts.map +1 -0
  594. package/dist/blocks/signup-01/signup-01.js +209 -0
  595. package/dist/blocks/site-footer/index.d.ts +2 -2
  596. package/dist/blocks/site-footer/index.js +1 -1
  597. package/dist/blocks/site-footer/site-footer.d.ts +19 -2
  598. package/dist/blocks/site-footer/site-footer.d.ts.map +1 -1
  599. package/dist/blocks/site-footer/site-footer.js +10 -4
  600. package/dist/blocks/site-header/index.d.ts +2 -2
  601. package/dist/blocks/site-header/index.js +1 -1
  602. package/dist/blocks/site-header/site-header.d.ts +2 -2
  603. package/dist/blocks/site-header/site-header.js +4 -4
  604. package/dist/blocks/site-navbar/index.d.ts +3 -0
  605. package/dist/blocks/site-navbar/index.d.ts.map +1 -0
  606. package/dist/blocks/site-navbar/index.js +1 -0
  607. package/dist/blocks/site-navbar/mobile-nav.d.ts +48 -0
  608. package/dist/blocks/site-navbar/mobile-nav.d.ts.map +1 -0
  609. package/dist/blocks/site-navbar/mobile-nav.js +35 -0
  610. package/dist/blocks/site-navbar/mode-toggle.d.ts +39 -0
  611. package/dist/blocks/site-navbar/mode-toggle.d.ts.map +1 -0
  612. package/dist/blocks/site-navbar/mode-toggle.js +39 -0
  613. package/dist/blocks/site-navbar/navbar-controls.d.ts +79 -0
  614. package/dist/blocks/site-navbar/navbar-controls.d.ts.map +1 -0
  615. package/dist/blocks/site-navbar/navbar-controls.js +40 -0
  616. package/dist/blocks/site-navbar/search-entry.d.ts +29 -0
  617. package/dist/blocks/site-navbar/search-entry.d.ts.map +1 -0
  618. package/dist/blocks/site-navbar/search-entry.js +52 -0
  619. package/dist/blocks/site-navbar/site-navbar.d.ts +246 -0
  620. package/dist/blocks/site-navbar/site-navbar.d.ts.map +1 -0
  621. package/dist/blocks/site-navbar/site-navbar.js +90 -0
  622. package/dist/blocks/site-navbar/sites-menu.d.ts +40 -0
  623. package/dist/blocks/site-navbar/sites-menu.d.ts.map +1 -0
  624. package/dist/blocks/site-navbar/sites-menu.js +48 -0
  625. package/dist/blocks/site-navbar/theme-menu.d.ts +47 -0
  626. package/dist/blocks/site-navbar/theme-menu.d.ts.map +1 -0
  627. package/dist/blocks/site-navbar/theme-menu.js +55 -0
  628. package/dist/blocks/spec-table-01/index.d.ts +3 -0
  629. package/dist/blocks/spec-table-01/index.d.ts.map +1 -0
  630. package/dist/blocks/spec-table-01/index.js +1 -0
  631. package/dist/blocks/spec-table-01/spec-table.d.ts +293 -0
  632. package/dist/blocks/spec-table-01/spec-table.d.ts.map +1 -0
  633. package/dist/blocks/spec-table-01/spec-table.js +217 -0
  634. package/dist/blocks/stack-grid-01/index.d.ts +2 -2
  635. package/dist/blocks/stack-grid-01/index.js +1 -1
  636. package/dist/blocks/stack-grid-01/stack-grid.d.ts +42 -11
  637. package/dist/blocks/stack-grid-01/stack-grid.d.ts.map +1 -1
  638. package/dist/blocks/stack-grid-01/stack-grid.js +15 -7
  639. package/dist/blocks/stats-01/index.d.ts +9 -1
  640. package/dist/blocks/stats-01/index.d.ts.map +1 -1
  641. package/dist/blocks/stats-01/index.js +8 -1
  642. package/dist/blocks/stats-01/stats.d.ts +1 -1
  643. package/dist/blocks/stats-01/stats.js +2 -2
  644. package/dist/blocks/status-ledger-01/index.d.ts +2 -2
  645. package/dist/blocks/status-ledger-01/index.js +1 -1
  646. package/dist/blocks/status-ledger-01/status-ledger.d.ts +1 -1
  647. package/dist/blocks/status-ledger-01/status-ledger.js +2 -2
  648. package/dist/blocks/story-01/index.d.ts +3 -0
  649. package/dist/blocks/story-01/index.d.ts.map +1 -0
  650. package/dist/blocks/story-01/index.js +1 -0
  651. package/dist/blocks/story-01/story.d.ts +153 -0
  652. package/dist/blocks/story-01/story.d.ts.map +1 -0
  653. package/dist/blocks/story-01/story.js +103 -0
  654. package/dist/blocks/summary-01/index.d.ts +3 -0
  655. package/dist/blocks/summary-01/index.d.ts.map +1 -0
  656. package/dist/blocks/summary-01/index.js +1 -0
  657. package/dist/blocks/summary-01/summary.d.ts +300 -0
  658. package/dist/blocks/summary-01/summary.d.ts.map +1 -0
  659. package/dist/blocks/summary-01/summary.js +174 -0
  660. package/dist/blocks/team-01/index.d.ts +3 -0
  661. package/dist/blocks/team-01/index.d.ts.map +1 -0
  662. package/dist/blocks/team-01/index.js +1 -0
  663. package/dist/blocks/team-01/team.d.ts +176 -0
  664. package/dist/blocks/team-01/team.d.ts.map +1 -0
  665. package/dist/blocks/team-01/team.js +117 -0
  666. package/dist/blocks/testimonial-01/index.d.ts +3 -0
  667. package/dist/blocks/testimonial-01/index.d.ts.map +1 -0
  668. package/dist/blocks/testimonial-01/index.js +1 -0
  669. package/dist/blocks/testimonial-01/testimonial.d.ts +173 -0
  670. package/dist/blocks/testimonial-01/testimonial.d.ts.map +1 -0
  671. package/dist/blocks/testimonial-01/testimonial.js +87 -0
  672. package/dist/blocks/todo-01/index.d.ts +3 -0
  673. package/dist/blocks/todo-01/index.d.ts.map +1 -0
  674. package/dist/blocks/todo-01/index.js +1 -0
  675. package/dist/blocks/todo-01/todo.d.ts +286 -0
  676. package/dist/blocks/todo-01/todo.d.ts.map +1 -0
  677. package/dist/blocks/todo-01/todo.js +149 -0
  678. package/dist/blocks/trend-01/index.d.ts +3 -0
  679. package/dist/blocks/trend-01/index.d.ts.map +1 -0
  680. package/dist/blocks/trend-01/index.js +1 -0
  681. package/dist/blocks/trend-01/trend.d.ts +184 -0
  682. package/dist/blocks/trend-01/trend.d.ts.map +1 -0
  683. package/dist/blocks/trend-01/trend.js +99 -0
  684. package/dist/blocks/trust-strip-01/index.d.ts +3 -0
  685. package/dist/blocks/trust-strip-01/index.d.ts.map +1 -0
  686. package/dist/blocks/trust-strip-01/index.js +1 -0
  687. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts +139 -0
  688. package/dist/blocks/trust-strip-01/trust-strip-01.d.ts.map +1 -0
  689. package/dist/blocks/trust-strip-01/trust-strip-01.js +58 -0
  690. package/dist/blocks/two-factor-01/index.d.ts +3 -0
  691. package/dist/blocks/two-factor-01/index.d.ts.map +1 -0
  692. package/dist/blocks/two-factor-01/index.js +1 -0
  693. package/dist/blocks/two-factor-01/two-factor-01.d.ts +440 -0
  694. package/dist/blocks/two-factor-01/two-factor-01.d.ts.map +1 -0
  695. package/dist/blocks/two-factor-01/two-factor-01.js +273 -0
  696. package/dist/blocks/user-profile-01/index.d.ts +3 -0
  697. package/dist/blocks/user-profile-01/index.d.ts.map +1 -0
  698. package/dist/blocks/user-profile-01/index.js +1 -0
  699. package/dist/blocks/user-profile-01/user-profile-01.d.ts +258 -0
  700. package/dist/blocks/user-profile-01/user-profile-01.d.ts.map +1 -0
  701. package/dist/blocks/user-profile-01/user-profile-01.js +158 -0
  702. package/dist/blocks/verify-email-01/index.d.ts +3 -0
  703. package/dist/blocks/verify-email-01/index.d.ts.map +1 -0
  704. package/dist/blocks/verify-email-01/index.js +1 -0
  705. package/dist/blocks/verify-email-01/verify-email.d.ts +262 -0
  706. package/dist/blocks/verify-email-01/verify-email.d.ts.map +1 -0
  707. package/dist/blocks/verify-email-01/verify-email.js +190 -0
  708. package/dist/blocks/waitlist-01/index.d.ts +3 -0
  709. package/dist/blocks/waitlist-01/index.d.ts.map +1 -0
  710. package/dist/blocks/waitlist-01/index.js +1 -0
  711. package/dist/blocks/waitlist-01/waitlist.d.ts +254 -0
  712. package/dist/blocks/waitlist-01/waitlist.d.ts.map +1 -0
  713. package/dist/blocks/waitlist-01/waitlist.js +75 -0
  714. package/dist/catalog.d.ts +1 -1
  715. package/dist/catalog.d.ts.map +1 -1
  716. package/dist/catalog.js +2114 -2
  717. package/dist/components/index.d.ts +218 -66
  718. package/dist/components/index.d.ts.map +1 -1
  719. package/dist/components/index.js +208 -40
  720. package/dist/components/ui/accordion.d.ts.map +1 -1
  721. package/dist/components/ui/accordion.js +10 -3
  722. package/dist/components/ui/alert-dialog.d.ts +119 -0
  723. package/dist/components/ui/alert-dialog.d.ts.map +1 -0
  724. package/dist/components/ui/alert-dialog.js +100 -0
  725. package/dist/components/ui/alert.js +1 -1
  726. package/dist/components/ui/announcement.d.ts +169 -0
  727. package/dist/components/ui/announcement.d.ts.map +1 -0
  728. package/dist/components/ui/announcement.js +123 -0
  729. package/dist/components/ui/aspect-ratio.d.ts +60 -0
  730. package/dist/components/ui/aspect-ratio.d.ts.map +1 -0
  731. package/dist/components/ui/aspect-ratio.js +61 -0
  732. package/dist/components/ui/avatar-group.d.ts +176 -0
  733. package/dist/components/ui/avatar-group.d.ts.map +1 -0
  734. package/dist/components/ui/avatar-group.js +135 -0
  735. package/dist/components/ui/avatar.js +1 -1
  736. package/dist/components/ui/badge.js +1 -1
  737. package/dist/components/ui/billing-source.d.ts +293 -0
  738. package/dist/components/ui/billing-source.d.ts.map +1 -0
  739. package/dist/components/ui/billing-source.js +136 -0
  740. package/dist/components/ui/breadcrumb.js +1 -1
  741. package/dist/components/ui/button-group.d.ts +68 -0
  742. package/dist/components/ui/button-group.d.ts.map +1 -0
  743. package/dist/components/ui/button-group.js +54 -0
  744. package/dist/components/ui/button.d.ts +16 -1
  745. package/dist/components/ui/button.d.ts.map +1 -1
  746. package/dist/components/ui/button.js +18 -3
  747. package/dist/components/ui/calendar.d.ts +167 -0
  748. package/dist/components/ui/calendar.d.ts.map +1 -0
  749. package/dist/components/ui/calendar.js +244 -0
  750. package/dist/components/ui/card.d.ts +18 -6
  751. package/dist/components/ui/card.d.ts.map +1 -1
  752. package/dist/components/ui/card.js +23 -8
  753. package/dist/components/ui/carousel.d.ts +125 -0
  754. package/dist/components/ui/carousel.d.ts.map +1 -0
  755. package/dist/components/ui/carousel.js +209 -0
  756. package/dist/components/ui/chart-frame.d.ts +216 -0
  757. package/dist/components/ui/chart-frame.d.ts.map +1 -0
  758. package/dist/components/ui/chart-frame.js +286 -0
  759. package/dist/components/ui/chart.d.ts +334 -0
  760. package/dist/components/ui/chart.d.ts.map +1 -0
  761. package/dist/components/ui/chart.js +369 -0
  762. package/dist/components/ui/checkbox.d.ts +10 -0
  763. package/dist/components/ui/checkbox.d.ts.map +1 -1
  764. package/dist/components/ui/checkbox.js +20 -2
  765. package/dist/components/ui/checklist.d.ts +262 -0
  766. package/dist/components/ui/checklist.d.ts.map +1 -0
  767. package/dist/components/ui/checklist.js +135 -0
  768. package/dist/components/ui/choice-card.d.ts +273 -0
  769. package/dist/components/ui/choice-card.d.ts.map +1 -0
  770. package/dist/components/ui/choice-card.js +138 -0
  771. package/dist/components/ui/code-block.d.ts +182 -0
  772. package/dist/components/ui/code-block.d.ts.map +1 -0
  773. package/dist/components/ui/code-block.js +108 -0
  774. package/dist/components/ui/cohort-grid.d.ts +210 -0
  775. package/dist/components/ui/cohort-grid.d.ts.map +1 -0
  776. package/dist/components/ui/cohort-grid.js +202 -0
  777. package/dist/components/ui/collapsible.d.ts +108 -0
  778. package/dist/components/ui/collapsible.d.ts.map +1 -0
  779. package/dist/components/ui/collapsible.js +65 -0
  780. package/dist/components/ui/combobox.d.ts +144 -0
  781. package/dist/components/ui/combobox.d.ts.map +1 -0
  782. package/dist/components/ui/combobox.js +259 -0
  783. package/dist/components/ui/command-palette.d.ts +117 -0
  784. package/dist/components/ui/command-palette.d.ts.map +1 -0
  785. package/dist/components/ui/command-palette.js +222 -0
  786. package/dist/components/ui/command.d.ts +82 -0
  787. package/dist/components/ui/command.d.ts.map +1 -0
  788. package/dist/components/ui/command.js +37 -0
  789. package/dist/components/ui/context-menu.d.ts +151 -0
  790. package/dist/components/ui/context-menu.d.ts.map +1 -0
  791. package/dist/components/ui/context-menu.js +97 -0
  792. package/dist/components/ui/contribution-graph.d.ts +156 -0
  793. package/dist/components/ui/contribution-graph.d.ts.map +1 -0
  794. package/dist/components/ui/contribution-graph.js +170 -0
  795. package/dist/components/ui/creatable-combobox.d.ts +153 -0
  796. package/dist/components/ui/creatable-combobox.d.ts.map +1 -0
  797. package/dist/components/ui/creatable-combobox.js +285 -0
  798. package/dist/components/ui/cta-link.js +1 -1
  799. package/dist/components/ui/data-toolbar.d.ts +133 -0
  800. package/dist/components/ui/data-toolbar.d.ts.map +1 -0
  801. package/dist/components/ui/data-toolbar.js +67 -0
  802. package/dist/components/ui/date-picker.d.ts +111 -0
  803. package/dist/components/ui/date-picker.d.ts.map +1 -0
  804. package/dist/components/ui/date-picker.js +82 -0
  805. package/dist/components/ui/diagram.d.ts +84 -15
  806. package/dist/components/ui/diagram.d.ts.map +1 -1
  807. package/dist/components/ui/diagram.js +77 -7
  808. package/dist/components/ui/dialog.d.ts +31 -2
  809. package/dist/components/ui/dialog.d.ts.map +1 -1
  810. package/dist/components/ui/dialog.js +41 -7
  811. package/dist/components/ui/diff.d.ts +105 -0
  812. package/dist/components/ui/diff.d.ts.map +1 -0
  813. package/dist/components/ui/diff.js +113 -0
  814. package/dist/components/ui/drawer.d.ts +270 -0
  815. package/dist/components/ui/drawer.d.ts.map +1 -0
  816. package/dist/components/ui/drawer.js +241 -0
  817. package/dist/components/ui/dropdown-menu.d.ts +18 -0
  818. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  819. package/dist/components/ui/dropdown-menu.js +7 -2
  820. package/dist/components/ui/dropzone.d.ts +147 -0
  821. package/dist/components/ui/dropzone.d.ts.map +1 -0
  822. package/dist/components/ui/dropzone.js +141 -0
  823. package/dist/components/ui/emoji-picker.d.ts +328 -0
  824. package/dist/components/ui/emoji-picker.d.ts.map +1 -0
  825. package/dist/components/ui/emoji-picker.js +278 -0
  826. package/dist/components/ui/fact-list.js +1 -1
  827. package/dist/components/ui/field.js +1 -1
  828. package/dist/components/ui/file-upload.d.ts +152 -0
  829. package/dist/components/ui/file-upload.d.ts.map +1 -0
  830. package/dist/components/ui/file-upload.js +101 -0
  831. package/dist/components/ui/filter-panel.d.ts +164 -0
  832. package/dist/components/ui/filter-panel.d.ts.map +1 -0
  833. package/dist/components/ui/filter-panel.js +91 -0
  834. package/dist/components/ui/form-dialog.d.ts +257 -0
  835. package/dist/components/ui/form-dialog.d.ts.map +1 -0
  836. package/dist/components/ui/form-dialog.js +176 -0
  837. package/dist/components/ui/form-wizard.d.ts +251 -0
  838. package/dist/components/ui/form-wizard.d.ts.map +1 -0
  839. package/dist/components/ui/form-wizard.js +151 -0
  840. package/dist/components/ui/form.d.ts +151 -0
  841. package/dist/components/ui/form.d.ts.map +1 -0
  842. package/dist/components/ui/form.js +73 -0
  843. package/dist/components/ui/hover-card.d.ts +105 -0
  844. package/dist/components/ui/hover-card.d.ts.map +1 -0
  845. package/dist/components/ui/hover-card.js +49 -0
  846. package/dist/components/ui/image-list-field.d.ts +232 -0
  847. package/dist/components/ui/image-list-field.d.ts.map +1 -0
  848. package/dist/components/ui/image-list-field.js +168 -0
  849. package/dist/components/ui/image-zoom.d.ts +164 -0
  850. package/dist/components/ui/image-zoom.d.ts.map +1 -0
  851. package/dist/components/ui/image-zoom.js +169 -0
  852. package/dist/components/ui/input-group.d.ts +99 -0
  853. package/dist/components/ui/input-group.d.ts.map +1 -0
  854. package/dist/components/ui/input-group.js +83 -0
  855. package/dist/components/ui/input.js +1 -1
  856. package/dist/components/ui/intensity-grid.d.ts +270 -0
  857. package/dist/components/ui/intensity-grid.d.ts.map +1 -0
  858. package/dist/components/ui/intensity-grid.js +211 -0
  859. package/dist/components/ui/item.d.ts +113 -0
  860. package/dist/components/ui/item.d.ts.map +1 -0
  861. package/dist/components/ui/item.js +61 -0
  862. package/dist/components/ui/kbd.js +1 -1
  863. package/dist/components/ui/label.d.ts +58 -0
  864. package/dist/components/ui/label.d.ts.map +1 -0
  865. package/dist/components/ui/label.js +29 -0
  866. package/dist/components/ui/lifecycle-button.d.ts +276 -0
  867. package/dist/components/ui/lifecycle-button.d.ts.map +1 -0
  868. package/dist/components/ui/lifecycle-button.js +144 -0
  869. package/dist/components/ui/lightbox.d.ts +165 -0
  870. package/dist/components/ui/lightbox.d.ts.map +1 -0
  871. package/dist/components/ui/lightbox.js +130 -0
  872. package/dist/components/ui/list-panel.d.ts +288 -0
  873. package/dist/components/ui/list-panel.d.ts.map +1 -0
  874. package/dist/components/ui/list-panel.js +139 -0
  875. package/dist/components/ui/live-region.d.ts +9 -0
  876. package/dist/components/ui/live-region.d.ts.map +1 -1
  877. package/dist/components/ui/live-region.js +10 -2
  878. package/dist/components/ui/mark.js +1 -1
  879. package/dist/components/ui/mega-menu.d.ts +244 -0
  880. package/dist/components/ui/mega-menu.d.ts.map +1 -0
  881. package/dist/components/ui/mega-menu.js +97 -0
  882. package/dist/components/ui/menubar.d.ts +206 -0
  883. package/dist/components/ui/menubar.d.ts.map +1 -0
  884. package/dist/components/ui/menubar.js +118 -0
  885. package/dist/components/ui/meter.d.ts +121 -0
  886. package/dist/components/ui/meter.d.ts.map +1 -0
  887. package/dist/components/ui/meter.js +82 -0
  888. package/dist/components/ui/metric.d.ts +123 -0
  889. package/dist/components/ui/metric.d.ts.map +1 -0
  890. package/dist/components/ui/metric.js +68 -0
  891. package/dist/components/ui/mini-calendar.d.ts +143 -0
  892. package/dist/components/ui/mini-calendar.d.ts.map +1 -0
  893. package/dist/components/ui/mini-calendar.js +261 -0
  894. package/dist/components/ui/mode-toggle.d.ts +102 -0
  895. package/dist/components/ui/mode-toggle.d.ts.map +1 -0
  896. package/dist/components/ui/mode-toggle.js +83 -0
  897. package/dist/components/ui/money-field.d.ts +200 -0
  898. package/dist/components/ui/money-field.d.ts.map +1 -0
  899. package/dist/components/ui/money-field.js +215 -0
  900. package/dist/components/ui/multi-combobox.d.ts +181 -0
  901. package/dist/components/ui/multi-combobox.d.ts.map +1 -0
  902. package/dist/components/ui/multi-combobox.js +297 -0
  903. package/dist/components/ui/native-select.d.ts +72 -0
  904. package/dist/components/ui/native-select.d.ts.map +1 -0
  905. package/dist/components/ui/native-select.js +62 -0
  906. package/dist/components/ui/navigation-menu.d.ts +193 -0
  907. package/dist/components/ui/navigation-menu.d.ts.map +1 -0
  908. package/dist/components/ui/navigation-menu.js +101 -0
  909. package/dist/components/ui/nested-tabs.d.ts +188 -0
  910. package/dist/components/ui/nested-tabs.d.ts.map +1 -0
  911. package/dist/components/ui/nested-tabs.js +75 -0
  912. package/dist/components/ui/number-field.d.ts +144 -0
  913. package/dist/components/ui/number-field.d.ts.map +1 -0
  914. package/dist/components/ui/number-field.js +114 -0
  915. package/dist/components/ui/one-time-code.d.ts +127 -0
  916. package/dist/components/ui/one-time-code.d.ts.map +1 -0
  917. package/dist/components/ui/one-time-code.js +57 -0
  918. package/dist/components/ui/overflow-actions.d.ts +169 -0
  919. package/dist/components/ui/overflow-actions.d.ts.map +1 -0
  920. package/dist/components/ui/overflow-actions.js +266 -0
  921. package/dist/components/ui/pack-swatch.d.ts +177 -0
  922. package/dist/components/ui/pack-swatch.d.ts.map +1 -0
  923. package/dist/components/ui/pack-swatch.js +117 -0
  924. package/dist/components/ui/pack-switcher.d.ts +221 -0
  925. package/dist/components/ui/pack-switcher.d.ts.map +1 -0
  926. package/dist/components/ui/pack-switcher.js +94 -0
  927. package/dist/components/ui/pagination.d.ts +22 -0
  928. package/dist/components/ui/pagination.d.ts.map +1 -1
  929. package/dist/components/ui/pagination.js +24 -2
  930. package/dist/components/ui/password-field.d.ts +122 -0
  931. package/dist/components/ui/password-field.d.ts.map +1 -0
  932. package/dist/components/ui/password-field.js +69 -0
  933. package/dist/components/ui/pill.d.ts +172 -0
  934. package/dist/components/ui/pill.d.ts.map +1 -0
  935. package/dist/components/ui/pill.js +102 -0
  936. package/dist/components/ui/platform-modifier-key.d.ts +129 -0
  937. package/dist/components/ui/platform-modifier-key.d.ts.map +1 -0
  938. package/dist/components/ui/platform-modifier-key.js +125 -0
  939. package/dist/components/ui/popover.d.ts.map +1 -1
  940. package/dist/components/ui/popover.js +9 -2
  941. package/dist/components/ui/price.d.ts +144 -0
  942. package/dist/components/ui/price.d.ts.map +1 -0
  943. package/dist/components/ui/price.js +107 -0
  944. package/dist/components/ui/product-mark.d.ts +1 -1
  945. package/dist/components/ui/product-mark.js +1 -1
  946. package/dist/components/ui/product-switcher.d.ts +1 -1
  947. package/dist/components/ui/product-switcher.js +2 -2
  948. package/dist/components/ui/progress.d.ts +55 -1
  949. package/dist/components/ui/progress.d.ts.map +1 -1
  950. package/dist/components/ui/progress.js +111 -3
  951. package/dist/components/ui/prompt-composer.d.ts +302 -0
  952. package/dist/components/ui/prompt-composer.d.ts.map +1 -0
  953. package/dist/components/ui/prompt-composer.js +145 -0
  954. package/dist/components/ui/proportion-list.d.ts +188 -0
  955. package/dist/components/ui/proportion-list.d.ts.map +1 -0
  956. package/dist/components/ui/proportion-list.js +134 -0
  957. package/dist/components/ui/prose.d.ts +23 -0
  958. package/dist/components/ui/prose.d.ts.map +1 -1
  959. package/dist/components/ui/prose.js +31 -2
  960. package/dist/components/ui/pulse-graph.js +1 -1
  961. package/dist/components/ui/pulse-series.js +1 -1
  962. package/dist/components/ui/radio-group.d.ts +7 -0
  963. package/dist/components/ui/radio-group.d.ts.map +1 -1
  964. package/dist/components/ui/radio-group.js +9 -2
  965. package/dist/components/ui/range-field.d.ts +158 -0
  966. package/dist/components/ui/range-field.d.ts.map +1 -0
  967. package/dist/components/ui/range-field.js +208 -0
  968. package/dist/components/ui/relative-time.d.ts +116 -0
  969. package/dist/components/ui/relative-time.d.ts.map +1 -0
  970. package/dist/components/ui/relative-time.js +67 -0
  971. package/dist/components/ui/reorderable-list.d.ts +262 -0
  972. package/dist/components/ui/reorderable-list.d.ts.map +1 -0
  973. package/dist/components/ui/reorderable-list.js +325 -0
  974. package/dist/components/ui/repeatable-rows.d.ts +241 -0
  975. package/dist/components/ui/repeatable-rows.d.ts.map +1 -0
  976. package/dist/components/ui/repeatable-rows.js +221 -0
  977. package/dist/components/ui/repo-stars.d.ts +165 -0
  978. package/dist/components/ui/repo-stars.d.ts.map +1 -0
  979. package/dist/components/ui/repo-stars.js +92 -0
  980. package/dist/components/ui/resizable.d.ts +153 -0
  981. package/dist/components/ui/resizable.d.ts.map +1 -0
  982. package/dist/components/ui/resizable.js +297 -0
  983. package/dist/components/ui/scroll-area.d.ts +97 -0
  984. package/dist/components/ui/scroll-area.d.ts.map +1 -0
  985. package/dist/components/ui/scroll-area.js +68 -0
  986. package/dist/components/ui/search-dialog.d.ts +174 -0
  987. package/dist/components/ui/search-dialog.d.ts.map +1 -0
  988. package/dist/components/ui/search-dialog.js +256 -0
  989. package/dist/components/ui/search-field.d.ts +159 -0
  990. package/dist/components/ui/search-field.d.ts.map +1 -0
  991. package/dist/components/ui/search-field.js +98 -0
  992. package/dist/components/ui/section.d.ts +134 -1
  993. package/dist/components/ui/section.d.ts.map +1 -1
  994. package/dist/components/ui/section.js +141 -4
  995. package/dist/components/ui/select.d.ts.map +1 -1
  996. package/dist/components/ui/select.js +10 -2
  997. package/dist/components/ui/selection-toolbar.d.ts +166 -0
  998. package/dist/components/ui/selection-toolbar.d.ts.map +1 -0
  999. package/dist/components/ui/selection-toolbar.js +139 -0
  1000. package/dist/components/ui/separator.js +1 -1
  1001. package/dist/components/ui/sheet.d.ts +103 -0
  1002. package/dist/components/ui/sheet.d.ts.map +1 -0
  1003. package/dist/components/ui/sheet.js +58 -0
  1004. package/dist/components/ui/sidebar.d.ts +257 -0
  1005. package/dist/components/ui/sidebar.d.ts.map +1 -0
  1006. package/dist/components/ui/sidebar.js +205 -0
  1007. package/dist/components/ui/signal-field.d.ts.map +1 -1
  1008. package/dist/components/ui/signal-field.js +2 -2
  1009. package/dist/components/ui/skeleton.js +1 -1
  1010. package/dist/components/ui/slider.d.ts +7 -0
  1011. package/dist/components/ui/slider.d.ts.map +1 -1
  1012. package/dist/components/ui/slider.js +33 -2
  1013. package/dist/components/ui/sparkline.d.ts +117 -0
  1014. package/dist/components/ui/sparkline.d.ts.map +1 -0
  1015. package/dist/components/ui/sparkline.js +113 -0
  1016. package/dist/components/ui/spinner.d.ts +79 -0
  1017. package/dist/components/ui/spinner.d.ts.map +1 -0
  1018. package/dist/components/ui/spinner.js +92 -0
  1019. package/dist/components/ui/split-button.d.ts +207 -0
  1020. package/dist/components/ui/split-button.d.ts.map +1 -0
  1021. package/dist/components/ui/split-button.js +75 -0
  1022. package/dist/components/ui/stateful-table.d.ts +345 -0
  1023. package/dist/components/ui/stateful-table.d.ts.map +1 -0
  1024. package/dist/components/ui/stateful-table.js +169 -0
  1025. package/dist/components/ui/status.d.ts +99 -0
  1026. package/dist/components/ui/status.d.ts.map +1 -0
  1027. package/dist/components/ui/status.js +63 -0
  1028. package/dist/components/ui/stepper.d.ts +155 -0
  1029. package/dist/components/ui/stepper.d.ts.map +1 -0
  1030. package/dist/components/ui/stepper.js +83 -0
  1031. package/dist/components/ui/steps.d.ts +141 -0
  1032. package/dist/components/ui/steps.d.ts.map +1 -0
  1033. package/dist/components/ui/steps.js +128 -0
  1034. package/dist/components/ui/switch.d.ts +8 -0
  1035. package/dist/components/ui/switch.d.ts.map +1 -1
  1036. package/dist/components/ui/switch.js +13 -2
  1037. package/dist/components/ui/table-sort.d.ts +97 -0
  1038. package/dist/components/ui/table-sort.d.ts.map +1 -0
  1039. package/dist/components/ui/table-sort.js +102 -0
  1040. package/dist/components/ui/table.js +1 -1
  1041. package/dist/components/ui/tabs.d.ts +21 -2
  1042. package/dist/components/ui/tabs.d.ts.map +1 -1
  1043. package/dist/components/ui/tabs.js +24 -5
  1044. package/dist/components/ui/tag-group.d.ts +154 -0
  1045. package/dist/components/ui/tag-group.d.ts.map +1 -0
  1046. package/dist/components/ui/tag-group.js +111 -0
  1047. package/dist/components/ui/task-progress.d.ts +149 -0
  1048. package/dist/components/ui/task-progress.d.ts.map +1 -0
  1049. package/dist/components/ui/task-progress.js +110 -0
  1050. package/dist/components/ui/text-format-toolbar.d.ts +211 -0
  1051. package/dist/components/ui/text-format-toolbar.d.ts.map +1 -0
  1052. package/dist/components/ui/text-format-toolbar.js +186 -0
  1053. package/dist/components/ui/textarea.js +1 -1
  1054. package/dist/components/ui/timeline.d.ts +106 -0
  1055. package/dist/components/ui/timeline.d.ts.map +1 -0
  1056. package/dist/components/ui/timeline.js +120 -0
  1057. package/dist/components/ui/toast.d.ts +241 -0
  1058. package/dist/components/ui/toast.d.ts.map +1 -0
  1059. package/dist/components/ui/toast.js +373 -0
  1060. package/dist/components/ui/toggle-group.d.ts +127 -0
  1061. package/dist/components/ui/toggle-group.d.ts.map +1 -0
  1062. package/dist/components/ui/toggle-group.js +208 -0
  1063. package/dist/components/ui/toggle.d.ts +73 -0
  1064. package/dist/components/ui/toggle.d.ts.map +1 -0
  1065. package/dist/components/ui/toggle.js +52 -0
  1066. package/dist/components/ui/tooltip.js +1 -1
  1067. package/dist/components/ui/tree.d.ts +8 -0
  1068. package/dist/components/ui/tree.d.ts.map +1 -1
  1069. package/dist/components/ui/tree.js +93 -14
  1070. package/dist/components/ui/typography.js +1 -1
  1071. package/dist/components/ui/video-player.d.ts +236 -0
  1072. package/dist/components/ui/video-player.d.ts.map +1 -0
  1073. package/dist/components/ui/video-player.js +72 -0
  1074. package/dist/fonts/Inter-OFL.txt +93 -93
  1075. package/dist/fonts/inter-latin-400-italic.woff2 +0 -0
  1076. package/dist/index.d.ts +184 -70
  1077. package/dist/index.d.ts.map +1 -1
  1078. package/dist/index.js +133 -60
  1079. package/dist/lib/rank.d.ts +69 -0
  1080. package/dist/lib/rank.d.ts.map +1 -0
  1081. package/dist/lib/rank.js +77 -0
  1082. package/dist/lib/utils.d.ts +29 -0
  1083. package/dist/lib/utils.d.ts.map +1 -1
  1084. package/dist/lib/utils.js +35 -0
  1085. package/dist/live/index.d.ts +29 -0
  1086. package/dist/live/index.d.ts.map +1 -0
  1087. package/dist/live/index.js +29 -0
  1088. package/dist/live/run-stream-01/index.d.ts +3 -0
  1089. package/dist/live/run-stream-01/index.d.ts.map +1 -0
  1090. package/dist/live/run-stream-01/index.js +1 -0
  1091. package/dist/live/run-stream-01/run-stream.d.ts +125 -0
  1092. package/dist/live/run-stream-01/run-stream.d.ts.map +1 -0
  1093. package/dist/live/run-stream-01/run-stream.js +111 -0
  1094. package/dist/live/tool-ledger-01/index.d.ts +3 -0
  1095. package/dist/live/tool-ledger-01/index.d.ts.map +1 -0
  1096. package/dist/live/tool-ledger-01/index.js +1 -0
  1097. package/dist/live/tool-ledger-01/tool-ledger.d.ts +348 -0
  1098. package/dist/live/tool-ledger-01/tool-ledger.d.ts.map +1 -0
  1099. package/dist/live/tool-ledger-01/tool-ledger.js +245 -0
  1100. package/dist/pages/about-page/index.d.ts +306 -0
  1101. package/dist/pages/about-page/index.d.ts.map +1 -0
  1102. package/dist/pages/about-page/index.js +161 -0
  1103. package/dist/pages/auth-page/index.d.ts +15 -2
  1104. package/dist/pages/auth-page/index.d.ts.map +1 -1
  1105. package/dist/pages/auth-page/index.js +8 -4
  1106. package/dist/pages/blog-post-page/index.js +5 -5
  1107. package/dist/pages/careers-page/index.d.ts +288 -0
  1108. package/dist/pages/careers-page/index.d.ts.map +1 -0
  1109. package/dist/pages/careers-page/index.js +182 -0
  1110. package/dist/pages/changelog-page/index.d.ts +255 -0
  1111. package/dist/pages/changelog-page/index.d.ts.map +1 -0
  1112. package/dist/pages/changelog-page/index.js +86 -0
  1113. package/dist/pages/contact-page/index.d.ts +261 -0
  1114. package/dist/pages/contact-page/index.d.ts.map +1 -0
  1115. package/dist/pages/contact-page/index.js +136 -0
  1116. package/dist/pages/dashboard-page/index.d.ts +4 -4
  1117. package/dist/pages/dashboard-page/index.js +4 -4
  1118. package/dist/pages/docs-shell/docs-shell.d.ts +45 -4
  1119. package/dist/pages/docs-shell/docs-shell.d.ts.map +1 -1
  1120. package/dist/pages/docs-shell/docs-shell.js +131 -23
  1121. package/dist/pages/docs-shell/index.d.ts +2 -2
  1122. package/dist/pages/docs-shell/index.js +1 -1
  1123. package/dist/pages/error-page/index.d.ts +188 -0
  1124. package/dist/pages/error-page/index.d.ts.map +1 -0
  1125. package/dist/pages/error-page/index.js +98 -0
  1126. package/dist/pages/index.d.ts +24 -14
  1127. package/dist/pages/index.d.ts.map +1 -1
  1128. package/dist/pages/index.js +21 -7
  1129. package/dist/pages/legal-page/index.d.ts +194 -0
  1130. package/dist/pages/legal-page/index.d.ts.map +1 -0
  1131. package/dist/pages/legal-page/index.js +99 -0
  1132. package/dist/pages/marketing-page/index.d.ts +6 -6
  1133. package/dist/pages/marketing-page/index.js +5 -5
  1134. package/dist/pages/not-found-page/index.js +4 -4
  1135. package/dist/pages/onboarding-page/index.d.ts +199 -0
  1136. package/dist/pages/onboarding-page/index.d.ts.map +1 -0
  1137. package/dist/pages/onboarding-page/index.js +71 -0
  1138. package/dist/pages/pricing-page/index.d.ts +286 -0
  1139. package/dist/pages/pricing-page/index.d.ts.map +1 -0
  1140. package/dist/pages/pricing-page/index.js +139 -0
  1141. package/dist/pages/search-page/index.d.ts +305 -0
  1142. package/dist/pages/search-page/index.d.ts.map +1 -0
  1143. package/dist/pages/search-page/index.js +142 -0
  1144. package/dist/pages/settings-page/index.d.ts +3 -3
  1145. package/dist/pages/settings-page/index.js +4 -4
  1146. package/dist/pages/status-page/index.d.ts +366 -0
  1147. package/dist/pages/status-page/index.d.ts.map +1 -0
  1148. package/dist/pages/status-page/index.js +136 -0
  1149. package/dist/provider/index.d.ts +4 -4
  1150. package/dist/provider/index.js +2 -2
  1151. package/dist/provider/provider.d.ts +1 -1
  1152. package/dist/provider/provider.js +1 -1
  1153. package/dist/provider/theme-script.d.ts +1 -1
  1154. package/dist/provider/theme-script.js +1 -1
  1155. package/dist/styles.css +1669 -32
  1156. package/package.json +17 -3
@@ -0,0 +1,181 @@
1
+ import type { ComboboxItem } from './combobox.js';
2
+ /** The props the Multi combobox accepts. */
3
+ export interface MultiComboboxProps {
4
+ /**
5
+ * The accessible name of the field.
6
+ *
7
+ * Required, and required as a name rather than as a placeholder, for the reason
8
+ * `Combobox` requires it: a placeholder disappears the moment the reader types,
9
+ * which leaves a field holding a row of chips with no name at exactly the moment
10
+ * the reader most needs to know what they are filtering.
11
+ */
12
+ label: string;
13
+ /**
14
+ * The options.
15
+ *
16
+ * `ComboboxItem` rather than a second option type, because the shape is one fact
17
+ * about an option and not one fact about the number of options it appears in. A
18
+ * copy would drift the first time a field grew a `keywords` member.
19
+ */
20
+ items: readonly ComboboxItem[];
21
+ /** The chosen values, when the field is controlled. */
22
+ value?: readonly string[];
23
+ /** The values chosen initially, for an uncontrolled field. */
24
+ defaultValue?: readonly string[];
25
+ /**
26
+ * Called with every chosen value, in the order they were chosen.
27
+ *
28
+ * The whole set rather than the one value that changed, because there is no one
29
+ * value: a toggle is an edit of a set and the caller is the only party that can
30
+ * decide whether the form submits an array or a joined string.
31
+ */
32
+ onValueChange?: (value: readonly string[]) => void;
33
+ /**
34
+ * The accessible name of one chip's remove control, given that chip's label.
35
+ *
36
+ * Required rather than optional, which is the one place this Component is less
37
+ * forgiving than `TagGroup`. A multi combobox that cannot deselect is not a
38
+ * multi combobox, so the remove control is always drawn, so its name is always
39
+ * needed, and an optional prop would be a prop whose absence is always a mistake.
40
+ */
41
+ removeLabel: (label: string) => string;
42
+ /** What a reader is told when the query matches nothing. */
43
+ empty: {
44
+ message: (query: string) => string;
45
+ hint?: string;
46
+ };
47
+ /**
48
+ * The most values that may be chosen at once.
49
+ *
50
+ * Omit it and the set is unbounded. Given one, an option that is not yet chosen
51
+ * becomes `aria-disabled` and the arrows step over it once the cap is reached,
52
+ * and the select-all control announces itself as unavailable rather than
53
+ * quietly choosing fewer than it says it will.
54
+ */
55
+ max?: number;
56
+ /**
57
+ * Draws a control that chooses every option the query currently matches, and
58
+ * returns its accessible name given how many match.
59
+ *
60
+ * A function of a count rather than a string because the count is the whole
61
+ * content of the name, and it is a count of the caller's options rather than one
62
+ * this Component holds.
63
+ */
64
+ selectAll?: (matching: number) => string;
65
+ /**
66
+ * Draws a control that drops every chosen value, and returns its accessible name
67
+ * given how many are chosen.
68
+ */
69
+ clearAll?: (chosen: number) => string;
70
+ /**
71
+ * Whether the trigger shows how many values are chosen.
72
+ *
73
+ * A number and not a sentence, and it is hidden from assistive technology. The
74
+ * chosen values are already announced, one chip at a time, through the field's
75
+ * description, so a bare number adds a figure with no noun to read out loud.
76
+ */
77
+ showCount?: boolean;
78
+ /** The placeholder in the search field. The caller's word. */
79
+ placeholder?: string;
80
+ /** Whether the list is open, when the field is controlled. */
81
+ open?: boolean;
82
+ /** Whether the list starts open, for an uncontrolled field. */
83
+ defaultOpen?: boolean;
84
+ /** Called when the list opens or closes. */
85
+ onOpenChange?: (open: boolean) => void;
86
+ /** Whether the field ignores interaction. */
87
+ disabled?: boolean;
88
+ /** Whether at least one value must be chosen before the form submits. */
89
+ required?: boolean;
90
+ /**
91
+ * The form field name each chosen value is submitted under.
92
+ *
93
+ * One hidden input per value, all carrying this name, because a form has no way
94
+ * to submit an array and a joined string is a decision the caller makes.
95
+ */
96
+ name?: string;
97
+ /** Identifies the form that owns the hidden inputs. */
98
+ form?: string;
99
+ /** The field's own id, so a label elsewhere can point at it. */
100
+ id?: string;
101
+ /** Identifies the element that describes the field. */
102
+ 'aria-describedby'?: string;
103
+ /** Layout only. */
104
+ className?: string;
105
+ }
106
+ /**
107
+ * A field that searches one list and toggles as many of its options as the reader
108
+ * wants, with the chosen ones visible as chips in the trigger.
109
+ *
110
+ * **The value is an array, and that is not a prop combination.** Every sibling in
111
+ * this family commits one value: `Combobox` closes on a choice, `Select` closes on
112
+ * a choice, `NativeSelect` submits one value. Turning one of those into this one
113
+ * is not a boolean. A single-value control closes on commit because the answer is
114
+ * finished; here the answer is a set that keeps growing after every commit, so
115
+ * closing on commit makes the second choice a re-open, and a reader choosing six
116
+ * regions opens the field six times and retypes the query five of them. The state
117
+ * machine is different, not configured differently, which is the test
118
+ * `DESIGN.md` states: a member of a family that differs from its siblings only by a
119
+ * prop every one of them already takes is a call site.
120
+ *
121
+ * **Space and Enter toggle, and the list stays open.** This inverts the commit
122
+ * contract the single-select siblings are built on, and the inversion is the whole
123
+ * reason the two surfaces feel nothing alike. In a combobox, Enter ends the
124
+ * interaction; here it is one more toggle, and closing the list on it would make
125
+ * choosing a second value a two-keystroke act for no reason a reader can see. So
126
+ * the keys that close a single-select field are the keys that add to the set, and
127
+ * Escape, a blur and Tab are the ways out. The honest cost is on the typeahead:
128
+ * **a query cannot contain a space typed with the Space key**, because Space is
129
+ * spoken for. An option is found by the words in its label and in its keywords, so
130
+ * the space in a query buys nothing a reader would miss, and the alternative is a
131
+ * control where the primary key for selecting cannot also type.
132
+ *
133
+ * **Backspace in the trigger removes the last chip, and only then edits text.**
134
+ * Backspace with a caret in the search field is a text edit like any other. Backspace
135
+ * in an empty one is a gesture at the set, and it takes the last chip chosen, which
136
+ * is the one nearest where the caret was. This is the second gesture every token
137
+ * field has and the one a hand-rolled multi select gets wrong by having no second
138
+ * path out of the chips at all.
139
+ *
140
+ * **The chips are `TagGroup` and the frame is `InputGroup`, not a reimplementation
141
+ * of either.** A chip is a thing the reader chose and can un-pick, which is the
142
+ * definition `TagGroup` already states and the reason its remove control exists.
143
+ * Drawing a second chip here would be a second answer to what a chip is, and it
144
+ * would be the one that quietly diverges on the coarse-pointer target size. The
145
+ * frame is borrowed for the same reason: a bordered group with one border and one
146
+ * focus colour is the thing a row of chips inside a search field has to be, and
147
+ * `InputGroup` already turns its border to the ring token when anything inside it
148
+ * has focus.
149
+ *
150
+ * **The listbox is `aria-multiselectable`, because a reader who cannot see that
151
+ * many of its rows may be chosen does not know what Space will do.** The attribute
152
+ * is the whole announcement difference between this list and a single-select one,
153
+ * and omitting it leaves a reader guessing whether the next Space replaces or adds.
154
+ *
155
+ * **A cap is visible rather than silent.** With `max`, an unchosen option past the
156
+ * cap is drawn and announced as unavailable and the arrows step over it, so the
157
+ * limit is discoverable before the reader hits it. The select-all control is the
158
+ * case where silence would be worst: it says it will choose everything and then
159
+ * chooses fewer, so it announces itself as unavailable instead, at the cost of a
160
+ * reader who wanted all of it having to add the rest one at a time.
161
+ *
162
+ * **Ordering is the reader's.** Values are appended in the order they were chosen
163
+ * and a removal closes the gap rather than re-sorting, because a chip row that
164
+ * reorders under the pointer is a chip row a reader cannot aim at. The list itself
165
+ * is ranked by the scorer imported from `lib/rank`, so a query that floats one
166
+ * option to the top floats it in the command palette too.
167
+ *
168
+ * **The chosen values are announced through the field's description, not through
169
+ * the query.** The search field holds a query and nothing else, so a screen reader
170
+ * focused on it hears the query and the chosen values are silent. Pointing
171
+ * `aria-describedby` at the chip row costs one generated id and makes every chosen
172
+ * label read out after the value. `showCount` is deliberately outside that: a bare
173
+ * figure has no noun, so it is drawn and not announced.
174
+ *
175
+ * The list is anchored to the field rather than portalled, for the trade
176
+ * `Combobox` states: put the field near the top of any scroll container it lives
177
+ * in.
178
+ */
179
+ declare function MultiCombobox({ label, items, value, defaultValue, onValueChange, removeLabel, empty, max, selectAll, clearAll, showCount, placeholder, open, defaultOpen, onOpenChange, disabled, required, name, form, id, 'aria-describedby': describedBy, className, }: MultiComboboxProps): import("react").JSX.Element;
180
+ export { MultiCombobox };
181
+ //# sourceMappingURL=multi-combobox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-combobox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/multi-combobox.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAM9C,4CAA4C;AAC5C,MAAM,WAAW,kBAAkB;IACjC;;;;;;;OAOG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;;;;;OAMG;IACH,KAAK,EAAE,SAAS,YAAY,EAAE,CAAA;IAC9B,uDAAuD;IACvD,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACzB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAChC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAA;IAClD;;;;;;;OAOG;IACH,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IACtC,4DAA4D;IAC5D,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5D;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IACxC;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAA;IACrC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,+DAA+D;IAC/D,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gEAAgE;IAChE,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,uDAAuD;IACvD,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,mBAAmB;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAiBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AACH,iBAAS,aAAa,CAAC,EACrB,KAAK,EACL,KAAK,EACL,KAAK,EACL,YAAiB,EACjB,aAAa,EACb,WAAW,EACX,KAAK,EACL,GAAG,EACH,SAAS,EACT,QAAQ,EACR,SAAiB,EACjB,WAAW,EACX,IAAI,EACJ,WAAmB,EACnB,YAAY,EACZ,QAAgB,EAChB,QAAgB,EAChB,IAAI,EACJ,IAAI,EACJ,EAAE,EACF,kBAAkB,EAAE,WAAW,EAC/B,SAAS,GACV,EAAE,kBAAkB,+BA6ZpB;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -0,0 +1,297 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { CheckIcon } from 'lucide-react';
4
+ import { useCallback, useEffect, useId, useMemo, useRef, useState } from 'react';
5
+ import { InputGroup, InputGroupInput } from './input-group.js';
6
+ import { TagGroup } from './tag-group.js';
7
+ import { RANKS, locate } from '../../lib/rank.js';
8
+ import { cn } from '../../lib/utils.js';
9
+ /**
10
+ * The whole-list control in the popup's toolbar.
11
+ *
12
+ * `aria-disabled` rather than `disabled`, because a control that vanishes when it
13
+ * stops applying moves the other control under the reader's pointer. Kept out of an
14
+ * object map of class strings because this gate's own readers treat a `bg-` fill
15
+ * with no ink of its own as a variant that inherits its colour from whatever
16
+ * surface it lands on, and this string states both.
17
+ */
18
+ const ACTION = 'text-muted-foreground hover:bg-accent hover:text-accent-foreground aria-disabled:pointer-events-none aria-disabled:opacity-50 inline-flex items-center rounded-sm px-2 py-1 text-xs outline-none transition-[color,background-color] duration-fast ease-out focus-visible:ring-ring focus-visible:ring-[3px]';
19
+ /**
20
+ * A field that searches one list and toggles as many of its options as the reader
21
+ * wants, with the chosen ones visible as chips in the trigger.
22
+ *
23
+ * **The value is an array, and that is not a prop combination.** Every sibling in
24
+ * this family commits one value: `Combobox` closes on a choice, `Select` closes on
25
+ * a choice, `NativeSelect` submits one value. Turning one of those into this one
26
+ * is not a boolean. A single-value control closes on commit because the answer is
27
+ * finished; here the answer is a set that keeps growing after every commit, so
28
+ * closing on commit makes the second choice a re-open, and a reader choosing six
29
+ * regions opens the field six times and retypes the query five of them. The state
30
+ * machine is different, not configured differently, which is the test
31
+ * `DESIGN.md` states: a member of a family that differs from its siblings only by a
32
+ * prop every one of them already takes is a call site.
33
+ *
34
+ * **Space and Enter toggle, and the list stays open.** This inverts the commit
35
+ * contract the single-select siblings are built on, and the inversion is the whole
36
+ * reason the two surfaces feel nothing alike. In a combobox, Enter ends the
37
+ * interaction; here it is one more toggle, and closing the list on it would make
38
+ * choosing a second value a two-keystroke act for no reason a reader can see. So
39
+ * the keys that close a single-select field are the keys that add to the set, and
40
+ * Escape, a blur and Tab are the ways out. The honest cost is on the typeahead:
41
+ * **a query cannot contain a space typed with the Space key**, because Space is
42
+ * spoken for. An option is found by the words in its label and in its keywords, so
43
+ * the space in a query buys nothing a reader would miss, and the alternative is a
44
+ * control where the primary key for selecting cannot also type.
45
+ *
46
+ * **Backspace in the trigger removes the last chip, and only then edits text.**
47
+ * Backspace with a caret in the search field is a text edit like any other. Backspace
48
+ * in an empty one is a gesture at the set, and it takes the last chip chosen, which
49
+ * is the one nearest where the caret was. This is the second gesture every token
50
+ * field has and the one a hand-rolled multi select gets wrong by having no second
51
+ * path out of the chips at all.
52
+ *
53
+ * **The chips are `TagGroup` and the frame is `InputGroup`, not a reimplementation
54
+ * of either.** A chip is a thing the reader chose and can un-pick, which is the
55
+ * definition `TagGroup` already states and the reason its remove control exists.
56
+ * Drawing a second chip here would be a second answer to what a chip is, and it
57
+ * would be the one that quietly diverges on the coarse-pointer target size. The
58
+ * frame is borrowed for the same reason: a bordered group with one border and one
59
+ * focus colour is the thing a row of chips inside a search field has to be, and
60
+ * `InputGroup` already turns its border to the ring token when anything inside it
61
+ * has focus.
62
+ *
63
+ * **The listbox is `aria-multiselectable`, because a reader who cannot see that
64
+ * many of its rows may be chosen does not know what Space will do.** The attribute
65
+ * is the whole announcement difference between this list and a single-select one,
66
+ * and omitting it leaves a reader guessing whether the next Space replaces or adds.
67
+ *
68
+ * **A cap is visible rather than silent.** With `max`, an unchosen option past the
69
+ * cap is drawn and announced as unavailable and the arrows step over it, so the
70
+ * limit is discoverable before the reader hits it. The select-all control is the
71
+ * case where silence would be worst: it says it will choose everything and then
72
+ * chooses fewer, so it announces itself as unavailable instead, at the cost of a
73
+ * reader who wanted all of it having to add the rest one at a time.
74
+ *
75
+ * **Ordering is the reader's.** Values are appended in the order they were chosen
76
+ * and a removal closes the gap rather than re-sorting, because a chip row that
77
+ * reorders under the pointer is a chip row a reader cannot aim at. The list itself
78
+ * is ranked by the scorer imported from `lib/rank`, so a query that floats one
79
+ * option to the top floats it in the command palette too.
80
+ *
81
+ * **The chosen values are announced through the field's description, not through
82
+ * the query.** The search field holds a query and nothing else, so a screen reader
83
+ * focused on it hears the query and the chosen values are silent. Pointing
84
+ * `aria-describedby` at the chip row costs one generated id and makes every chosen
85
+ * label read out after the value. `showCount` is deliberately outside that: a bare
86
+ * figure has no noun, so it is drawn and not announced.
87
+ *
88
+ * The list is anchored to the field rather than portalled, for the trade
89
+ * `Combobox` states: put the field near the top of any scroll container it lives
90
+ * in.
91
+ */
92
+ function MultiCombobox({ label, items, value, defaultValue = [], onValueChange, removeLabel, empty, max, selectAll, clearAll, showCount = false, placeholder, open, defaultOpen = false, onOpenChange, disabled = false, required = false, name, form, id, 'aria-describedby': describedBy, className, }) {
93
+ const [ownValue, setOwnValue] = useState(defaultValue);
94
+ const [ownOpen, setOwnOpen] = useState(defaultOpen);
95
+ const [query, setQuery] = useState('');
96
+ const [active, setActive] = useState(0);
97
+ const listRef = useRef(null);
98
+ const inputRef = useRef(null);
99
+ const generated = useId();
100
+ const inputId = id ?? generated;
101
+ const listId = `${generated}-list`;
102
+ // The popup the field controls. Separate from the listbox id because the listbox is
103
+ // not rendered at all when nothing matched, and `aria-controls` is a required
104
+ // attribute on an expanded combobox.
105
+ const popupId = `${generated}-popup`;
106
+ const chipsId = `${generated}-chips`;
107
+ const chosen = value === undefined ? ownValue : value;
108
+ const isOpen = (open ?? ownOpen) && !disabled;
109
+ const setOpen = useCallback((next) => {
110
+ if (open === undefined)
111
+ setOwnOpen(next);
112
+ onOpenChange?.(next);
113
+ }, [onOpenChange, open]);
114
+ const commit = useCallback((next) => {
115
+ if (value === undefined)
116
+ setOwnValue(next);
117
+ onValueChange?.(next);
118
+ }, [onValueChange, value]);
119
+ const chosenSet = useMemo(() => new Set(chosen), [chosen]);
120
+ const atCap = max !== undefined && chosen.length >= max;
121
+ const labelOf = useCallback((v) => items.find((item) => item.value === v)?.label ?? v, [items]);
122
+ const ranked = useMemo(() => {
123
+ const trimmed = query.trim();
124
+ if (trimmed === '')
125
+ return items.map((item) => ({ item, rank: RANKS.prefix }));
126
+ return items
127
+ .map((item) => {
128
+ const inLabel = locate(item.label, trimmed);
129
+ if (inLabel.rank < RANKS.keyword)
130
+ return { item, rank: inLabel.rank, range: inLabel.range };
131
+ const keywordHit = (item.keywords ?? []).some((word) => word.toLowerCase().includes(trimmed.toLowerCase()));
132
+ return keywordHit ? { item, rank: RANKS.keyword } : null;
133
+ })
134
+ .filter((hit) => hit !== null)
135
+ .sort((a, b) => a.rank - b.rank);
136
+ }, [items, query]);
137
+ // Clamped rather than reset on every keystroke, for the reason `Combobox` states:
138
+ // a reader who moved the highlight and then typed is choosing from a list that
139
+ // just changed under them.
140
+ const activeIndex = Math.min(active, Math.max(ranked.length - 1, 0));
141
+ /** Whether an option may be added right now. */
142
+ const locked = useCallback((item) => item.disabled === true || (atCap && !chosenSet.has(item.value)), [atCap, chosenSet]);
143
+ /**
144
+ * Moves the highlight by `delta` rows, stepping over options that cannot be
145
+ * added. It stops on the row it started from rather than spinning, so a list of
146
+ * nothing but unavailable options cannot cycle.
147
+ */
148
+ const step = (from, delta) => {
149
+ if (ranked.length === 0)
150
+ return 0;
151
+ let next = from;
152
+ for (let moved = 0; moved < ranked.length; moved += 1) {
153
+ next += delta;
154
+ if (next >= ranked.length)
155
+ next = 0;
156
+ if (next < 0)
157
+ next = ranked.length - 1;
158
+ const hit = ranked[next];
159
+ if (hit !== undefined && !locked(hit.item))
160
+ return next;
161
+ }
162
+ return from;
163
+ };
164
+ const toggle = (item) => {
165
+ if (chosenSet.has(item.value)) {
166
+ commit(chosen.filter((v) => v !== item.value));
167
+ return;
168
+ }
169
+ if (locked(item))
170
+ return;
171
+ commit([...chosen, item.value]);
172
+ };
173
+ const openAt = (from) => {
174
+ setOpen(true);
175
+ setActive(from);
176
+ };
177
+ const onKeyDown = (event) => {
178
+ if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {
179
+ event.preventDefault();
180
+ if (!isOpen) {
181
+ openAt(0);
182
+ return;
183
+ }
184
+ setActive((index) => step(Math.min(index, Math.max(ranked.length - 1, 0)), event.key === 'ArrowDown' ? 1 : -1));
185
+ return;
186
+ }
187
+ if (event.key === 'Enter' || event.code === 'Space') {
188
+ const hit = ranked[activeIndex];
189
+ // Both keys do nothing with nothing to toggle, which is the same refusal
190
+ // `Combobox` makes: an action the reader did not point at is not one they
191
+ // asked for.
192
+ if (hit === undefined || locked(hit.item))
193
+ return;
194
+ // The caret never moves and the list never closes. Both keys are consumed so
195
+ // Space does not type a space and Enter does not submit the form mid-choice.
196
+ event.preventDefault();
197
+ toggle(hit.item);
198
+ return;
199
+ }
200
+ if (event.key === 'Escape') {
201
+ // Escape gets the list out of the way and touches nothing else. Every chosen
202
+ // value is an act, so discarding them here would take back work the reader
203
+ // did, and a field that emptied itself on Escape submits nothing they asked
204
+ // for.
205
+ if (!isOpen)
206
+ return;
207
+ event.preventDefault();
208
+ setOpen(false);
209
+ return;
210
+ }
211
+ if (event.key === 'Backspace' && query === '' && chosen.length > 0) {
212
+ event.preventDefault();
213
+ commit(chosen.slice(0, -1));
214
+ return;
215
+ }
216
+ if (event.key === 'Tab')
217
+ setOpen(false);
218
+ };
219
+ useEffect(() => {
220
+ const list = listRef.current;
221
+ if (list === null)
222
+ return;
223
+ list.querySelector('[data-active="true"]')?.scrollIntoView({ block: 'nearest' });
224
+ }, [activeIndex, isOpen]);
225
+ const chips = useMemo(() => chosen.map((v) => ({ id: v, label: labelOf(v) })), [chosen, labelOf]);
226
+ const activeRow = isOpen ? ranked[activeIndex] : undefined;
227
+ // Two possible referrers, one attribute. Assembled from a template rather than a
228
+ // join so the separator is never a bare string literal, which is the shape a copy
229
+ // scan reads as a space somebody typed.
230
+ const describedByIds = chips.length === 0
231
+ ? describedBy
232
+ : describedBy === undefined
233
+ ? chipsId
234
+ : `${chipsId} ${describedBy}`;
235
+ const room = max === undefined ? ranked.length : max - chosen.length;
236
+ return (_jsxs("div", { "data-slot": "multi-combobox", className: cn('relative w-full', className), children: [_jsxs(InputGroup, { "data-slot": "multi-combobox-trigger", disabled: disabled, className: "flex-wrap gap-x-1.5 gap-y-1 py-1", children: [chips.length === 0 ? null : (_jsx("div", { id: chipsId, "data-slot": "multi-combobox-chips", onMouseDown: (event) => {
237
+ // Two gestures, one handler, both about where the caret ends up. A
238
+ // press on a chip's remove control must not blur the search field,
239
+ // because the blur is the path that closes the list, so the press is
240
+ // swallowed and the click still lands. A press on the chip itself
241
+ // brings the caret to the field, which is also what opens the list.
242
+ if (event.target.closest('[data-slot="tag-remove"]') !== null) {
243
+ event.preventDefault();
244
+ return;
245
+ }
246
+ inputRef.current?.focus();
247
+ }, className: "flex w-full shrink-0 flex-wrap items-center", children: _jsx(TagGroup, { tags: chips, onRemove: (removed) => {
248
+ commit(chosen.filter((v) => v !== removed));
249
+ },
250
+ // `TagGroup` types a tag label as a node because a tag is often an
251
+ // avatar and a word. Every chip drawn here is a string taken from the
252
+ // caller's own option, so the node it hands back is that string and
253
+ // the coercion is total rather than a guess.
254
+ removeLabel: (chip) => removeLabel(String(chip)) }) })), _jsx(InputGroupInput, { ref: inputRef, id: inputId, type: "text", role: "combobox", autoComplete: "off", "aria-expanded": isOpen, "aria-controls": isOpen ? popupId : undefined, "aria-haspopup": "listbox", "aria-autocomplete": "list", "aria-label": label, "aria-required": required || undefined, "aria-activedescendant": activeRow === undefined ? undefined : `${listId}-option-${activeIndex}`, ...(describedByIds === '' ? null : { 'aria-describedby': describedByIds }), ...(placeholder === undefined ? null : { placeholder }), value: query, disabled: disabled, onChange: (event) => {
255
+ const next = event.target.value;
256
+ setQuery(next);
257
+ setActive(0);
258
+ if (!isOpen)
259
+ setOpen(true);
260
+ }, onFocus: () => {
261
+ openAt(0);
262
+ }, onClick: () => {
263
+ if (!isOpen)
264
+ openAt(0);
265
+ }, onBlur: () => {
266
+ setOpen(false);
267
+ }, onKeyDown: onKeyDown }), showCount ? (_jsx("span", { "data-slot": "multi-combobox-count", "aria-hidden": "true", className: "text-muted-foreground shrink-0 self-center pr-1 text-xs tabular-nums", children: chosen.length })) : null] }), name === undefined
268
+ ? null
269
+ : chosen.map((v) => (_jsx("input", { type: "hidden", name: name, ...(form === undefined ? null : { form }), value: v, readOnly: true }, v))), isOpen ? (_jsxs("div", { id: popupId, "data-slot": "multi-combobox-popup", className: "bg-popover text-popover-foreground absolute z-50 mt-1 w-full min-w-(--anchor-width) rounded-md border p-1 shadow-md", children: [selectAll === undefined && clearAll === undefined ? null : (_jsxs("div", { "data-slot": "multi-combobox-actions", className: "border-border flex items-center gap-1 border-b p-1 pb-2", children: [selectAll === undefined ? null : (_jsx("button", { type: "button", "data-slot": "multi-combobox-select-all", "aria-disabled": atCap || undefined, onClick: () => {
270
+ if (atCap)
271
+ return;
272
+ const added = ranked
273
+ .filter((hit) => !chosenSet.has(hit.item.value))
274
+ .slice(0, room)
275
+ .map((hit) => hit.item.value);
276
+ commit([...chosen, ...added]);
277
+ }, className: ACTION, children: selectAll(ranked.length) })), clearAll === undefined ? null : (_jsx("button", { type: "button", "data-slot": "multi-combobox-clear-all", "aria-disabled": chosen.length === 0 || undefined, onClick: () => {
278
+ if (chosen.length === 0)
279
+ return;
280
+ commit([]);
281
+ }, className: ACTION, children: clearAll(chosen.length) }))] })), ranked.length === 0 ? (_jsxs("p", { "data-slot": "multi-combobox-empty", role: "status", className: "text-muted-foreground px-3 py-6 text-center text-sm", children: [empty.message(query.trim()), empty.hint === undefined ? null : (_jsx("span", { className: "mt-1 block text-xs", children: empty.hint }))] })) : (_jsx("div", { "data-slot": "multi-combobox-list", id: listId, ref: listRef, role: "listbox", "aria-label": label, "aria-multiselectable": "true", className: "max-h-72 overflow-y-auto", children: ranked.map((hit, index) => {
282
+ const isActive = index === activeIndex;
283
+ const isChosen = chosenSet.has(hit.item.value);
284
+ const isLocked = locked(hit.item);
285
+ return (_jsxs("div", { id: `${listId}-option-${index}`, "data-slot": "multi-combobox-option", "data-active": isActive, "data-selected": isChosen || undefined, role: "option", "aria-selected": isChosen, "aria-disabled": isLocked || undefined, onMouseEnter: () => {
286
+ if (!isLocked)
287
+ setActive(index);
288
+ },
289
+ // Swallowed for the reason `Combobox` swallows it: without it a
290
+ // pointer choice is a blur, and the blur is the path that closes
291
+ // the list under the reader's own click.
292
+ onMouseDown: (event) => event.preventDefault(), onClick: () => {
293
+ toggle(hit.item);
294
+ }, className: cn('flex cursor-pointer items-center gap-2 rounded-sm px-3 py-2 text-sm', isLocked && 'text-muted-foreground cursor-not-allowed opacity-50', !isLocked && isActive && 'bg-accent text-accent-foreground', !isLocked && !isActive && 'text-muted-foreground hover:text-foreground'), children: [_jsx("span", { "data-slot": "multi-combobox-option-mark", className: "w-4 shrink-0", children: isChosen ? _jsx(CheckIcon, { className: "size-4", "aria-hidden": "true" }) : null }), _jsx("span", { className: "min-w-0 flex-1 truncate", children: hit.range === undefined ? (hit.item.label) : (_jsxs(_Fragment, { children: [hit.item.label.slice(0, hit.range[0]), _jsx("strong", { className: "font-semibold", children: hit.item.label.slice(hit.range[0], hit.range[1]) }), hit.item.label.slice(hit.range[1])] })) }), hit.item.hint === undefined ? null : (_jsx("span", { className: "shrink-0 text-xs", children: hit.item.hint }))] }, hit.item.value));
295
+ }) }))] })) : null] }));
296
+ }
297
+ export { MultiCombobox };
@@ -0,0 +1,72 @@
1
+ import type { ComponentProps, ReactNode } from 'react';
2
+ /** The props the NativeSelect accepts. */
3
+ /**
4
+ * The props the NativeSelect accepts.
5
+ *
6
+ * `size` is this Component's own height in the package's scale, which is why the
7
+ * native `size` attribute is omitted from the props it forwards. The two mean
8
+ * different things: the native one is how many rows of the list the platform shows
9
+ * at once, which on a single-selection select is a way of drawing a taller control,
10
+ * and a single prop cannot be both without lying about which one a caller is
11
+ * setting. A list box several rows tall is `Select`, or a `NativeSelect` inside a
12
+ * `ScrollArea`.
13
+ */
14
+ export interface NativeSelectProps extends Omit<ComponentProps<'select'>, 'children' | 'size'> {
15
+ /** The options, as `option` or `optgroup` elements. */
16
+ children?: ReactNode;
17
+ /**
18
+ * The control's accessible name, when no visible label is used.
19
+ *
20
+ * A native select takes its name from an associated `label` like any other form
21
+ * control, and Prism's `Field` puts one there. This is for the case where there
22
+ * is no `Field` around it, and it is a prop for the reason every accessible name
23
+ * in this package is one.
24
+ */
25
+ 'aria-label'?: string;
26
+ /** The control's height. @defaultValue 'default' */
27
+ size?: 'sm' | 'default';
28
+ /** Layout only. */
29
+ className?: string;
30
+ }
31
+ /**
32
+ * A native `<select>`, styled to match the rest of this package.
33
+ *
34
+ * **This is not a second Select, and the difference is which element is on the
35
+ * page.** The `Select` in this package is Base UI's: a `<button>` carrying
36
+ * `role="combobox"` and a popup list Base UI positions, types into and manages the
37
+ * keyboard for. It is a custom control, and everything it offers over the platform
38
+ * is the price of being one: it needs JavaScript to open, it cannot be operated by
39
+ * the mobile picker a reader expects when they tap a select on a phone, it is
40
+ * invisible to a right-click menu that offers "Save as", and it is a set of `div`s
41
+ * where the browser's own is one element with thirty years of platform behaviour
42
+ * behind it.
43
+ *
44
+ * So this Component renders the platform element. Everything the browser does with
45
+ * a `<select>` it still does: the wheel on Windows, the wheel on macOS and iOS,
46
+ * type-ahead on the first letter, the mobile picker, the form submission, and the
47
+ * context menu. The styling is the package's, so the control looks like its
48
+ * neighbours, and the appearance is suppressed so the drawn chevron is Prism's
49
+ * rather than the platform's.
50
+ *
51
+ * **When this is the right answer rather than the compromise it sounds like.** A
52
+ * native select is right when the platform's picker is better than anything this
53
+ * package could draw: a long list of plain strings on a phone, a form that must
54
+ * submit without JavaScript, a control inside a page that is already a form and
55
+ * gains nothing from a popup that is portalled and dismissed. It is wrong when the
56
+ * option needs to be more than a string, because an `<option>` holds text and
57
+ * nothing else: no description, no count, no state, no nested markup. That is the
58
+ * line, and the `Select` is on the other side of it.
59
+ *
60
+ * **The chevron is decoration and says so.** It is `aria-hidden` and it is not
61
+ * focusable, because the value is already announced by the platform control and a
62
+ * reader hearing "graphic" after every option set is a reader being told something
63
+ * about the drawing rather than about the value. The control is one tab stop and
64
+ * the browser owns its key handling entirely, which is the point.
65
+ *
66
+ * It is a server Component. A native select holds no state, runs no effect and
67
+ * attaches no handler, so a form of twenty of them costs no JavaScript at all,
68
+ * which is a real answer to the argument above rather than a footnote to it.
69
+ */
70
+ declare function NativeSelect({ className, size, children, ...props }: NativeSelectProps): import("react").JSX.Element;
71
+ export { NativeSelect };
72
+ //# sourceMappingURL=native-select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-select.d.ts","sourceRoot":"","sources":["../../../src/components/ui/native-select.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAItD,0CAA0C;AAC1C;;;;;;;;;;GAUG;AACH,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC5F,uDAAuD;IACvD,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,oDAAoD;IACpD,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;IACvB,mBAAmB;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,IAAgB,EAChB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,iBAAiB,+BAuDnB;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
@@ -0,0 +1,62 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ChevronDownIcon } from 'lucide-react';
3
+ import { cn } from '../../lib/utils.js';
4
+ /**
5
+ * A native `<select>`, styled to match the rest of this package.
6
+ *
7
+ * **This is not a second Select, and the difference is which element is on the
8
+ * page.** The `Select` in this package is Base UI's: a `<button>` carrying
9
+ * `role="combobox"` and a popup list Base UI positions, types into and manages the
10
+ * keyboard for. It is a custom control, and everything it offers over the platform
11
+ * is the price of being one: it needs JavaScript to open, it cannot be operated by
12
+ * the mobile picker a reader expects when they tap a select on a phone, it is
13
+ * invisible to a right-click menu that offers "Save as", and it is a set of `div`s
14
+ * where the browser's own is one element with thirty years of platform behaviour
15
+ * behind it.
16
+ *
17
+ * So this Component renders the platform element. Everything the browser does with
18
+ * a `<select>` it still does: the wheel on Windows, the wheel on macOS and iOS,
19
+ * type-ahead on the first letter, the mobile picker, the form submission, and the
20
+ * context menu. The styling is the package's, so the control looks like its
21
+ * neighbours, and the appearance is suppressed so the drawn chevron is Prism's
22
+ * rather than the platform's.
23
+ *
24
+ * **When this is the right answer rather than the compromise it sounds like.** A
25
+ * native select is right when the platform's picker is better than anything this
26
+ * package could draw: a long list of plain strings on a phone, a form that must
27
+ * submit without JavaScript, a control inside a page that is already a form and
28
+ * gains nothing from a popup that is portalled and dismissed. It is wrong when the
29
+ * option needs to be more than a string, because an `<option>` holds text and
30
+ * nothing else: no description, no count, no state, no nested markup. That is the
31
+ * line, and the `Select` is on the other side of it.
32
+ *
33
+ * **The chevron is decoration and says so.** It is `aria-hidden` and it is not
34
+ * focusable, because the value is already announced by the platform control and a
35
+ * reader hearing "graphic" after every option set is a reader being told something
36
+ * about the drawing rather than about the value. The control is one tab stop and
37
+ * the browser owns its key handling entirely, which is the point.
38
+ *
39
+ * It is a server Component. A native select holds no state, runs no effect and
40
+ * attaches no handler, so a form of twenty of them costs no JavaScript at all,
41
+ * which is a real answer to the argument above rather than a footnote to it.
42
+ */
43
+ function NativeSelect({ className, size = 'default', children, ...props }) {
44
+ return (_jsxs("div", { "data-slot": "native-select", className: "relative w-full", children: [_jsx("select", { "data-slot": "native-select-control", className: cn(
45
+ // `appearance-none` is what lets the chevron be drawn rather than
46
+ // inherited: the platform's own arrow is the one piece of this control
47
+ // that would otherwise belong to no design system, and the whole reason
48
+ // this Component exists is to take that over.
49
+ 'border-input bg-background text-foreground w-full appearance-none rounded-md border ps-3 pe-9 text-sm outline-none', 'transition-[color,box-shadow,border-color] duration-fast ease-out', 'focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'aria-invalid:border-destructive aria-invalid:ring-destructive/20', 'disabled:cursor-not-allowed disabled:opacity-50',
50
+ // The font is inherited explicitly, because a `<select>` does not
51
+ // inherit one in every engine and a control in the platform's face
52
+ // beside text in Inter is a control nobody designed.
53
+ 'font-inherit',
54
+ // The coarse-pointer floor, as a step, and the same string `select.tsx` puts on
55
+ // its trigger. This Component exists to take over the platform's own arrow, so
56
+ // its metrics are Prism's to state rather than the browser's, and the argument
57
+ // is the trigger's: a select is a control a finger presses to open a list, not a
58
+ // field a finger types into, so its height belongs on the floor. It is `w-full`,
59
+ // so only the height was short. See DESIGN.md, The coarse-pointer floor.
60
+ 'pointer-coarse:h-11', size === 'sm' ? 'h-8' : 'h-9', className), ...props, children: children }), _jsx("span", { "data-slot": "native-select-icon", "aria-hidden": "true", className: "text-muted-foreground pointer-events-none absolute top-1/2 right-3 flex size-4 -translate-y-1/2 items-center justify-center", children: _jsx(ChevronDownIcon, { className: "size-4" }) })] }));
61
+ }
62
+ export { NativeSelect };