@nanisoft/prism-ui 0.13.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/THIRD-PARTY-NOTICES.md +22 -7
- package/dist/.tsbuildinfo +1 -1
- package/dist/blocks/about-01/about.d.ts +296 -0
- package/dist/blocks/about-01/about.d.ts.map +1 -0
- package/dist/blocks/about-01/about.js +103 -0
- package/dist/blocks/about-01/index.d.ts +3 -0
- package/dist/blocks/about-01/index.d.ts.map +1 -0
- package/dist/blocks/about-01/index.js +1 -0
- package/dist/blocks/accept-invite-01/accept-invite.d.ts +324 -0
- package/dist/blocks/accept-invite-01/accept-invite.d.ts.map +1 -0
- package/dist/blocks/accept-invite-01/accept-invite.js +230 -0
- package/dist/blocks/accept-invite-01/index.d.ts +3 -0
- package/dist/blocks/accept-invite-01/index.d.ts.map +1 -0
- package/dist/blocks/accept-invite-01/index.js +1 -0
- package/dist/blocks/account-01/account-01.d.ts +393 -0
- package/dist/blocks/account-01/account-01.d.ts.map +1 -0
- package/dist/blocks/account-01/account-01.js +215 -0
- package/dist/blocks/account-01/index.d.ts +3 -0
- package/dist/blocks/account-01/index.d.ts.map +1 -0
- package/dist/blocks/account-01/index.js +1 -0
- package/dist/blocks/activity-feed-01/activity-feed-01.d.ts +271 -0
- package/dist/blocks/activity-feed-01/activity-feed-01.d.ts.map +1 -0
- package/dist/blocks/activity-feed-01/activity-feed-01.js +185 -0
- package/dist/blocks/activity-feed-01/index.d.ts +3 -0
- package/dist/blocks/activity-feed-01/index.d.ts.map +1 -0
- package/dist/blocks/activity-feed-01/index.js +1 -0
- package/dist/blocks/address-book-01/address-book-01.d.ts +312 -0
- package/dist/blocks/address-book-01/address-book-01.d.ts.map +1 -0
- package/dist/blocks/address-book-01/address-book-01.js +233 -0
- package/dist/blocks/address-book-01/index.d.ts +3 -0
- package/dist/blocks/address-book-01/index.d.ts.map +1 -0
- package/dist/blocks/address-book-01/index.js +1 -0
- package/dist/blocks/audit-log-01/audit-log-01.d.ts +333 -0
- package/dist/blocks/audit-log-01/audit-log-01.d.ts.map +1 -0
- package/dist/blocks/audit-log-01/audit-log-01.js +211 -0
- package/dist/blocks/audit-log-01/index.d.ts +3 -0
- package/dist/blocks/audit-log-01/index.d.ts.map +1 -0
- package/dist/blocks/audit-log-01/index.js +1 -0
- package/dist/blocks/auth-form-01/auth-form.d.ts +40 -1
- package/dist/blocks/auth-form-01/auth-form.d.ts.map +1 -1
- package/dist/blocks/auth-form-01/auth-form.js +26 -3
- package/dist/blocks/awards-01/awards.d.ts +156 -0
- package/dist/blocks/awards-01/awards.d.ts.map +1 -0
- package/dist/blocks/awards-01/awards.js +102 -0
- package/dist/blocks/awards-01/index.d.ts +3 -0
- package/dist/blocks/awards-01/index.d.ts.map +1 -0
- package/dist/blocks/awards-01/index.js +1 -0
- package/dist/blocks/backdrop-01/backdrop.d.ts +268 -0
- package/dist/blocks/backdrop-01/backdrop.d.ts.map +1 -0
- package/dist/blocks/backdrop-01/backdrop.js +170 -0
- package/dist/blocks/backdrop-01/index.d.ts +3 -0
- package/dist/blocks/backdrop-01/index.d.ts.map +1 -0
- package/dist/blocks/backdrop-01/index.js +1 -0
- package/dist/blocks/bento-01/bento-01.d.ts +136 -0
- package/dist/blocks/bento-01/bento-01.d.ts.map +1 -0
- package/dist/blocks/bento-01/bento-01.js +97 -0
- package/dist/blocks/bento-01/index.d.ts +3 -0
- package/dist/blocks/bento-01/index.d.ts.map +1 -0
- package/dist/blocks/bento-01/index.js +1 -0
- package/dist/blocks/billing-source-01/billing-source-01.d.ts +379 -0
- package/dist/blocks/billing-source-01/billing-source-01.d.ts.map +1 -0
- package/dist/blocks/billing-source-01/billing-source-01.js +222 -0
- package/dist/blocks/billing-source-01/index.d.ts +3 -0
- package/dist/blocks/billing-source-01/index.d.ts.map +1 -0
- package/dist/blocks/billing-source-01/index.js +1 -0
- package/dist/blocks/bundle-01/bundle.d.ts +387 -0
- package/dist/blocks/bundle-01/bundle.d.ts.map +1 -0
- package/dist/blocks/bundle-01/bundle.js +153 -0
- package/dist/blocks/bundle-01/index.d.ts +3 -0
- package/dist/blocks/bundle-01/index.d.ts.map +1 -0
- package/dist/blocks/bundle-01/index.js +1 -0
- package/dist/blocks/calendar-01/calendar.d.ts +251 -0
- package/dist/blocks/calendar-01/calendar.d.ts.map +1 -0
- package/dist/blocks/calendar-01/calendar.js +191 -0
- package/dist/blocks/calendar-01/index.d.ts +3 -0
- package/dist/blocks/calendar-01/index.d.ts.map +1 -0
- package/dist/blocks/calendar-01/index.js +1 -0
- package/dist/blocks/capacity-01/capacity.d.ts +363 -0
- package/dist/blocks/capacity-01/capacity.d.ts.map +1 -0
- package/dist/blocks/capacity-01/capacity.js +208 -0
- package/dist/blocks/capacity-01/index.d.ts +3 -0
- package/dist/blocks/capacity-01/index.d.ts.map +1 -0
- package/dist/blocks/capacity-01/index.js +1 -0
- package/dist/blocks/careers-01/careers.d.ts +186 -0
- package/dist/blocks/careers-01/careers.d.ts.map +1 -0
- package/dist/blocks/careers-01/careers.js +83 -0
- package/dist/blocks/careers-01/index.d.ts +3 -0
- package/dist/blocks/careers-01/index.d.ts.map +1 -0
- package/dist/blocks/careers-01/index.js +1 -0
- package/dist/blocks/case-studies-01/case-studies.d.ts +192 -0
- package/dist/blocks/case-studies-01/case-studies.d.ts.map +1 -0
- package/dist/blocks/case-studies-01/case-studies.js +97 -0
- package/dist/blocks/case-studies-01/index.d.ts +3 -0
- package/dist/blocks/case-studies-01/index.d.ts.map +1 -0
- package/dist/blocks/case-studies-01/index.js +1 -0
- package/dist/blocks/case-study-01/case-study.d.ts +214 -0
- package/dist/blocks/case-study-01/case-study.d.ts.map +1 -0
- package/dist/blocks/case-study-01/case-study.js +79 -0
- package/dist/blocks/case-study-01/index.d.ts +3 -0
- package/dist/blocks/case-study-01/index.d.ts.map +1 -0
- package/dist/blocks/case-study-01/index.js +1 -0
- package/dist/blocks/changelog-01/changelog.d.ts +200 -0
- package/dist/blocks/changelog-01/changelog.d.ts.map +1 -0
- package/dist/blocks/changelog-01/changelog.js +155 -0
- package/dist/blocks/changelog-01/index.d.ts +3 -0
- package/dist/blocks/changelog-01/index.d.ts.map +1 -0
- package/dist/blocks/changelog-01/index.js +1 -0
- package/dist/blocks/chart-card-01/chart-card-01.d.ts +149 -0
- package/dist/blocks/chart-card-01/chart-card-01.d.ts.map +1 -0
- package/dist/blocks/chart-card-01/chart-card-01.js +81 -0
- package/dist/blocks/chart-card-01/index.d.ts +3 -0
- package/dist/blocks/chart-card-01/index.d.ts.map +1 -0
- package/dist/blocks/chart-card-01/index.js +1 -0
- package/dist/blocks/chart-group-01/chart-group-01.d.ts +138 -0
- package/dist/blocks/chart-group-01/chart-group-01.d.ts.map +1 -0
- package/dist/blocks/chart-group-01/chart-group-01.js +74 -0
- package/dist/blocks/chart-group-01/index.d.ts +3 -0
- package/dist/blocks/chart-group-01/index.d.ts.map +1 -0
- package/dist/blocks/chart-group-01/index.js +1 -0
- package/dist/blocks/code-sample-01/code-sample.d.ts +193 -0
- package/dist/blocks/code-sample-01/code-sample.d.ts.map +1 -0
- package/dist/blocks/code-sample-01/code-sample.js +104 -0
- package/dist/blocks/code-sample-01/index.d.ts +3 -0
- package/dist/blocks/code-sample-01/index.d.ts.map +1 -0
- package/dist/blocks/code-sample-01/index.js +1 -0
- package/dist/blocks/community-01/community.d.ts +183 -0
- package/dist/blocks/community-01/community.d.ts.map +1 -0
- package/dist/blocks/community-01/community.js +102 -0
- package/dist/blocks/community-01/index.d.ts +3 -0
- package/dist/blocks/community-01/index.d.ts.map +1 -0
- package/dist/blocks/community-01/index.js +1 -0
- package/dist/blocks/compare-01/compare.d.ts +184 -0
- package/dist/blocks/compare-01/compare.d.ts.map +1 -0
- package/dist/blocks/compare-01/compare.js +106 -0
- package/dist/blocks/compare-01/index.d.ts +3 -0
- package/dist/blocks/compare-01/index.d.ts.map +1 -0
- package/dist/blocks/compare-01/index.js +1 -0
- package/dist/blocks/compliance-01/compliance.d.ts +249 -0
- package/dist/blocks/compliance-01/compliance.d.ts.map +1 -0
- package/dist/blocks/compliance-01/compliance.js +130 -0
- package/dist/blocks/compliance-01/index.d.ts +3 -0
- package/dist/blocks/compliance-01/index.d.ts.map +1 -0
- package/dist/blocks/compliance-01/index.js +1 -0
- package/dist/blocks/consent-01/consent.d.ts +211 -0
- package/dist/blocks/consent-01/consent.d.ts.map +1 -0
- package/dist/blocks/consent-01/consent.js +101 -0
- package/dist/blocks/consent-01/index.d.ts +3 -0
- package/dist/blocks/consent-01/index.d.ts.map +1 -0
- package/dist/blocks/consent-01/index.js +1 -0
- package/dist/blocks/contact-01/contact.d.ts +319 -0
- package/dist/blocks/contact-01/contact.d.ts.map +1 -0
- package/dist/blocks/contact-01/contact.js +211 -0
- package/dist/blocks/contact-01/index.d.ts +3 -0
- package/dist/blocks/contact-01/index.d.ts.map +1 -0
- package/dist/blocks/contact-01/index.js +1 -0
- package/dist/blocks/content-grid-01/content-grid.d.ts +262 -0
- package/dist/blocks/content-grid-01/content-grid.d.ts.map +1 -0
- package/dist/blocks/content-grid-01/content-grid.js +155 -0
- package/dist/blocks/content-grid-01/index.d.ts +3 -0
- package/dist/blocks/content-grid-01/index.d.ts.map +1 -0
- package/dist/blocks/content-grid-01/index.js +1 -0
- package/dist/blocks/cta-01/cta.d.ts +7 -1
- package/dist/blocks/cta-01/cta.d.ts.map +1 -1
- package/dist/blocks/cta-01/cta.js +11 -2
- package/dist/blocks/dashboard-01/dashboard-01.d.ts +247 -0
- package/dist/blocks/dashboard-01/dashboard-01.d.ts.map +1 -0
- package/dist/blocks/dashboard-01/dashboard-01.js +141 -0
- package/dist/blocks/dashboard-01/index.d.ts +3 -0
- package/dist/blocks/dashboard-01/index.d.ts.map +1 -0
- package/dist/blocks/dashboard-01/index.js +1 -0
- package/dist/blocks/data-table-01/data-table.d.ts +22 -1
- package/dist/blocks/data-table-01/data-table.d.ts.map +1 -1
- package/dist/blocks/data-table-01/data-table.js +9 -5
- package/dist/blocks/delivery-01/delivery.d.ts +343 -0
- package/dist/blocks/delivery-01/delivery.d.ts.map +1 -0
- package/dist/blocks/delivery-01/delivery.js +212 -0
- package/dist/blocks/delivery-01/index.d.ts +3 -0
- package/dist/blocks/delivery-01/index.d.ts.map +1 -0
- package/dist/blocks/delivery-01/index.js +1 -0
- package/dist/blocks/directory-01/directory-01.d.ts +316 -0
- package/dist/blocks/directory-01/directory-01.d.ts.map +1 -0
- package/dist/blocks/directory-01/directory-01.js +252 -0
- package/dist/blocks/directory-01/index.d.ts +3 -0
- package/dist/blocks/directory-01/index.d.ts.map +1 -0
- package/dist/blocks/directory-01/index.js +1 -0
- package/dist/blocks/download-01/download.d.ts +261 -0
- package/dist/blocks/download-01/download.d.ts.map +1 -0
- package/dist/blocks/download-01/download.js +115 -0
- package/dist/blocks/download-01/index.d.ts +3 -0
- package/dist/blocks/download-01/index.d.ts.map +1 -0
- package/dist/blocks/download-01/index.js +1 -0
- package/dist/blocks/faq-01/faq.d.ts +128 -0
- package/dist/blocks/faq-01/faq.d.ts.map +1 -0
- package/dist/blocks/faq-01/faq.js +53 -0
- package/dist/blocks/faq-01/index.d.ts +3 -0
- package/dist/blocks/faq-01/index.d.ts.map +1 -0
- package/dist/blocks/faq-01/index.js +1 -0
- package/dist/blocks/feature-rows-01/feature-rows-01.d.ts +158 -0
- package/dist/blocks/feature-rows-01/feature-rows-01.d.ts.map +1 -0
- package/dist/blocks/feature-rows-01/feature-rows-01.js +81 -0
- package/dist/blocks/feature-rows-01/index.d.ts +3 -0
- package/dist/blocks/feature-rows-01/index.d.ts.map +1 -0
- package/dist/blocks/feature-rows-01/index.js +1 -0
- package/dist/blocks/feedback-01/feedback.d.ts +235 -0
- package/dist/blocks/feedback-01/feedback.d.ts.map +1 -0
- package/dist/blocks/feedback-01/feedback.js +113 -0
- package/dist/blocks/feedback-01/index.d.ts +3 -0
- package/dist/blocks/feedback-01/index.d.ts.map +1 -0
- package/dist/blocks/feedback-01/index.js +1 -0
- package/dist/blocks/field-map-01/field-map.d.ts +247 -0
- package/dist/blocks/field-map-01/field-map.d.ts.map +1 -0
- package/dist/blocks/field-map-01/field-map.js +183 -0
- package/dist/blocks/field-map-01/index.d.ts +3 -0
- package/dist/blocks/field-map-01/index.d.ts.map +1 -0
- package/dist/blocks/field-map-01/index.js +1 -0
- package/dist/blocks/forgot-password-01/forgot-password.d.ts +288 -0
- package/dist/blocks/forgot-password-01/forgot-password.d.ts.map +1 -0
- package/dist/blocks/forgot-password-01/forgot-password.js +190 -0
- package/dist/blocks/forgot-password-01/index.d.ts +3 -0
- package/dist/blocks/forgot-password-01/index.d.ts.map +1 -0
- package/dist/blocks/forgot-password-01/index.js +1 -0
- package/dist/blocks/gallery-01/gallery.d.ts +208 -0
- package/dist/blocks/gallery-01/gallery.d.ts.map +1 -0
- package/dist/blocks/gallery-01/gallery.js +174 -0
- package/dist/blocks/gallery-01/index.d.ts +3 -0
- package/dist/blocks/gallery-01/index.d.ts.map +1 -0
- package/dist/blocks/gallery-01/index.js +1 -0
- package/dist/blocks/gantt-01/gantt.d.ts +290 -0
- package/dist/blocks/gantt-01/gantt.d.ts.map +1 -0
- package/dist/blocks/gantt-01/gantt.js +224 -0
- package/dist/blocks/gantt-01/index.d.ts +3 -0
- package/dist/blocks/gantt-01/index.d.ts.map +1 -0
- package/dist/blocks/gantt-01/index.js +1 -0
- package/dist/blocks/handoff-01/handoff-01.d.ts +326 -0
- package/dist/blocks/handoff-01/handoff-01.d.ts.map +1 -0
- package/dist/blocks/handoff-01/handoff-01.js +180 -0
- package/dist/blocks/handoff-01/index.d.ts +3 -0
- package/dist/blocks/handoff-01/index.d.ts.map +1 -0
- package/dist/blocks/handoff-01/index.js +1 -0
- package/dist/blocks/help-01/help.d.ts +254 -0
- package/dist/blocks/help-01/help.d.ts.map +1 -0
- package/dist/blocks/help-01/help.js +188 -0
- package/dist/blocks/help-01/index.d.ts +3 -0
- package/dist/blocks/help-01/index.d.ts.map +1 -0
- package/dist/blocks/help-01/index.js +1 -0
- package/dist/blocks/hero-01/hero.d.ts +105 -34
- package/dist/blocks/hero-01/hero.d.ts.map +1 -1
- package/dist/blocks/hero-01/hero.js +23 -15
- package/dist/blocks/hero-01/index.d.ts +1 -1
- package/dist/blocks/hero-01/index.d.ts.map +1 -1
- package/dist/blocks/hero-02/hero-02.d.ts +244 -0
- package/dist/blocks/hero-02/hero-02.d.ts.map +1 -0
- package/dist/blocks/hero-02/hero-02.js +87 -0
- package/dist/blocks/hero-02/index.d.ts +3 -0
- package/dist/blocks/hero-02/index.d.ts.map +1 -0
- package/dist/blocks/hero-02/index.js +1 -0
- package/dist/blocks/hero-03/hero-03.d.ts +247 -0
- package/dist/blocks/hero-03/hero-03.d.ts.map +1 -0
- package/dist/blocks/hero-03/hero-03.js +93 -0
- package/dist/blocks/hero-03/index.d.ts +3 -0
- package/dist/blocks/hero-03/index.d.ts.map +1 -0
- package/dist/blocks/hero-03/index.js +1 -0
- package/dist/blocks/history-01/history-01.d.ts +414 -0
- package/dist/blocks/history-01/history-01.d.ts.map +1 -0
- package/dist/blocks/history-01/history-01.js +285 -0
- package/dist/blocks/history-01/index.d.ts +3 -0
- package/dist/blocks/history-01/index.d.ts.map +1 -0
- package/dist/blocks/history-01/index.js +1 -0
- package/dist/blocks/inbox-01/inbox.d.ts +349 -0
- package/dist/blocks/inbox-01/inbox.d.ts.map +1 -0
- package/dist/blocks/inbox-01/inbox.js +244 -0
- package/dist/blocks/inbox-01/index.d.ts +3 -0
- package/dist/blocks/inbox-01/index.d.ts.map +1 -0
- package/dist/blocks/inbox-01/index.js +1 -0
- package/dist/blocks/index.d.ts +203 -0
- package/dist/blocks/index.d.ts.map +1 -1
- package/dist/blocks/index.js +118 -0
- package/dist/blocks/industries-01/index.d.ts +3 -0
- package/dist/blocks/industries-01/index.d.ts.map +1 -0
- package/dist/blocks/industries-01/index.js +1 -0
- package/dist/blocks/industries-01/industries.d.ts +164 -0
- package/dist/blocks/industries-01/industries.d.ts.map +1 -0
- package/dist/blocks/industries-01/industries.js +96 -0
- package/dist/blocks/intake-01/index.d.ts +3 -0
- package/dist/blocks/intake-01/index.d.ts.map +1 -0
- package/dist/blocks/intake-01/index.js +1 -0
- package/dist/blocks/intake-01/intake-01.d.ts +305 -0
- package/dist/blocks/intake-01/intake-01.d.ts.map +1 -0
- package/dist/blocks/intake-01/intake-01.js +178 -0
- package/dist/blocks/integration-01/index.d.ts +3 -0
- package/dist/blocks/integration-01/index.d.ts.map +1 -0
- package/dist/blocks/integration-01/index.js +1 -0
- package/dist/blocks/integration-01/integration.d.ts +226 -0
- package/dist/blocks/integration-01/integration.d.ts.map +1 -0
- package/dist/blocks/integration-01/integration.js +170 -0
- package/dist/blocks/invite-user-01/index.d.ts +3 -0
- package/dist/blocks/invite-user-01/index.d.ts.map +1 -0
- package/dist/blocks/invite-user-01/index.js +1 -0
- package/dist/blocks/invite-user-01/invite-user.d.ts +317 -0
- package/dist/blocks/invite-user-01/invite-user.d.ts.map +1 -0
- package/dist/blocks/invite-user-01/invite-user.js +228 -0
- package/dist/blocks/issue-detail-01/index.d.ts +3 -0
- package/dist/blocks/issue-detail-01/index.d.ts.map +1 -0
- package/dist/blocks/issue-detail-01/index.js +1 -0
- package/dist/blocks/issue-detail-01/issue-detail.d.ts +355 -0
- package/dist/blocks/issue-detail-01/issue-detail.d.ts.map +1 -0
- package/dist/blocks/issue-detail-01/issue-detail.js +187 -0
- package/dist/blocks/issue-list-01/index.d.ts +3 -0
- package/dist/blocks/issue-list-01/index.d.ts.map +1 -0
- package/dist/blocks/issue-list-01/index.js +1 -0
- package/dist/blocks/issue-list-01/issue-list.d.ts +298 -0
- package/dist/blocks/issue-list-01/issue-list.d.ts.map +1 -0
- package/dist/blocks/issue-list-01/issue-list.js +284 -0
- package/dist/blocks/kanban-01/index.d.ts +3 -0
- package/dist/blocks/kanban-01/index.d.ts.map +1 -0
- package/dist/blocks/kanban-01/index.js +1 -0
- package/dist/blocks/kanban-01/kanban.d.ts +278 -0
- package/dist/blocks/kanban-01/kanban.d.ts.map +1 -0
- package/dist/blocks/kanban-01/kanban.js +144 -0
- package/dist/blocks/leaderboard-01/index.d.ts +3 -0
- package/dist/blocks/leaderboard-01/index.d.ts.map +1 -0
- package/dist/blocks/leaderboard-01/index.js +1 -0
- package/dist/blocks/leaderboard-01/leaderboard.d.ts +250 -0
- package/dist/blocks/leaderboard-01/leaderboard.d.ts.map +1 -0
- package/dist/blocks/leaderboard-01/leaderboard.js +121 -0
- package/dist/blocks/login-01/index.d.ts +3 -0
- package/dist/blocks/login-01/index.d.ts.map +1 -0
- package/dist/blocks/login-01/index.js +1 -0
- package/dist/blocks/login-01/login-01.d.ts +356 -0
- package/dist/blocks/login-01/login-01.d.ts.map +1 -0
- package/dist/blocks/login-01/login-01.js +249 -0
- package/dist/blocks/logo-cloud-01/index.d.ts +3 -0
- package/dist/blocks/logo-cloud-01/index.d.ts.map +1 -0
- package/dist/blocks/logo-cloud-01/index.js +1 -0
- package/dist/blocks/logo-cloud-01/logo-cloud.d.ts +181 -0
- package/dist/blocks/logo-cloud-01/logo-cloud.d.ts.map +1 -0
- package/dist/blocks/logo-cloud-01/logo-cloud.js +118 -0
- package/dist/blocks/magic-link-01/index.d.ts +3 -0
- package/dist/blocks/magic-link-01/index.d.ts.map +1 -0
- package/dist/blocks/magic-link-01/index.js +1 -0
- package/dist/blocks/magic-link-01/magic-link-01.d.ts +367 -0
- package/dist/blocks/magic-link-01/magic-link-01.d.ts.map +1 -0
- package/dist/blocks/magic-link-01/magic-link-01.js +233 -0
- package/dist/blocks/member-list-01/index.d.ts +3 -0
- package/dist/blocks/member-list-01/index.d.ts.map +1 -0
- package/dist/blocks/member-list-01/index.js +1 -0
- package/dist/blocks/member-list-01/member-list.d.ts +192 -0
- package/dist/blocks/member-list-01/member-list.d.ts.map +1 -0
- package/dist/blocks/member-list-01/member-list.js +142 -0
- package/dist/blocks/milestone-timeline-01/index.d.ts +3 -0
- package/dist/blocks/milestone-timeline-01/index.d.ts.map +1 -0
- package/dist/blocks/milestone-timeline-01/index.js +1 -0
- package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts +217 -0
- package/dist/blocks/milestone-timeline-01/milestone-timeline.d.ts.map +1 -0
- package/dist/blocks/milestone-timeline-01/milestone-timeline.js +173 -0
- package/dist/blocks/newsletter-01/index.d.ts +3 -0
- package/dist/blocks/newsletter-01/index.d.ts.map +1 -0
- package/dist/blocks/newsletter-01/index.js +1 -0
- package/dist/blocks/newsletter-01/newsletter.d.ts +216 -0
- package/dist/blocks/newsletter-01/newsletter.d.ts.map +1 -0
- package/dist/blocks/newsletter-01/newsletter.js +102 -0
- package/dist/blocks/notification-center-01/index.d.ts +3 -0
- package/dist/blocks/notification-center-01/index.d.ts.map +1 -0
- package/dist/blocks/notification-center-01/index.js +1 -0
- package/dist/blocks/notification-center-01/notification-center-01.d.ts +341 -0
- package/dist/blocks/notification-center-01/notification-center-01.d.ts.map +1 -0
- package/dist/blocks/notification-center-01/notification-center-01.js +203 -0
- package/dist/blocks/offer-01/index.d.ts +3 -0
- package/dist/blocks/offer-01/index.d.ts.map +1 -0
- package/dist/blocks/offer-01/index.js +1 -0
- package/dist/blocks/offer-01/offer.d.ts +139 -0
- package/dist/blocks/offer-01/offer.d.ts.map +1 -0
- package/dist/blocks/offer-01/offer.js +81 -0
- package/dist/blocks/offering-01/index.d.ts +3 -0
- package/dist/blocks/offering-01/index.d.ts.map +1 -0
- package/dist/blocks/offering-01/index.js +1 -0
- package/dist/blocks/offering-01/offering.d.ts +245 -0
- package/dist/blocks/offering-01/offering.d.ts.map +1 -0
- package/dist/blocks/offering-01/offering.js +144 -0
- package/dist/blocks/offering-categories-01/index.d.ts +3 -0
- package/dist/blocks/offering-categories-01/index.d.ts.map +1 -0
- package/dist/blocks/offering-categories-01/index.js +1 -0
- package/dist/blocks/offering-categories-01/offering-categories.d.ts +248 -0
- package/dist/blocks/offering-categories-01/offering-categories.d.ts.map +1 -0
- package/dist/blocks/offering-categories-01/offering-categories.js +153 -0
- package/dist/blocks/offering-list-01/index.d.ts +3 -0
- package/dist/blocks/offering-list-01/index.d.ts.map +1 -0
- package/dist/blocks/offering-list-01/index.js +1 -0
- package/dist/blocks/offering-list-01/offering-list.d.ts +362 -0
- package/dist/blocks/offering-list-01/offering-list.d.ts.map +1 -0
- package/dist/blocks/offering-list-01/offering-list.js +366 -0
- package/dist/blocks/onboarding-01/index.d.ts +3 -0
- package/dist/blocks/onboarding-01/index.d.ts.map +1 -0
- package/dist/blocks/onboarding-01/index.js +1 -0
- package/dist/blocks/onboarding-01/onboarding.d.ts +199 -0
- package/dist/blocks/onboarding-01/onboarding.d.ts.map +1 -0
- package/dist/blocks/onboarding-01/onboarding.js +182 -0
- package/dist/blocks/ops-checklist-01/index.d.ts +3 -0
- package/dist/blocks/ops-checklist-01/index.d.ts.map +1 -0
- package/dist/blocks/ops-checklist-01/index.js +1 -0
- package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts +308 -0
- package/dist/blocks/ops-checklist-01/ops-checklist-01.d.ts.map +1 -0
- package/dist/blocks/ops-checklist-01/ops-checklist-01.js +165 -0
- package/dist/blocks/page-header-01/index.d.ts +1 -1
- package/dist/blocks/page-header-01/index.d.ts.map +1 -1
- package/dist/blocks/page-header-01/page-header.d.ts +131 -11
- package/dist/blocks/page-header-01/page-header.d.ts.map +1 -1
- package/dist/blocks/page-header-01/page-header.js +33 -9
- package/dist/blocks/passkey-01/index.d.ts +3 -0
- package/dist/blocks/passkey-01/index.d.ts.map +1 -0
- package/dist/blocks/passkey-01/index.js +1 -0
- package/dist/blocks/passkey-01/passkey-01.d.ts +334 -0
- package/dist/blocks/passkey-01/passkey-01.d.ts.map +1 -0
- package/dist/blocks/passkey-01/passkey-01.js +192 -0
- package/dist/blocks/permission-matrix-01/index.d.ts +3 -0
- package/dist/blocks/permission-matrix-01/index.d.ts.map +1 -0
- package/dist/blocks/permission-matrix-01/index.js +1 -0
- package/dist/blocks/permission-matrix-01/permission-matrix.d.ts +282 -0
- package/dist/blocks/permission-matrix-01/permission-matrix.d.ts.map +1 -0
- package/dist/blocks/permission-matrix-01/permission-matrix.js +173 -0
- package/dist/blocks/pricing-01/index.d.ts +1 -0
- package/dist/blocks/pricing-01/index.d.ts.map +1 -1
- package/dist/blocks/pricing-01/pricing.d.ts +118 -1
- package/dist/blocks/pricing-01/pricing.d.ts.map +1 -1
- package/dist/blocks/pricing-01/pricing.js +9 -2
- package/dist/blocks/pricing-compare-01/index.d.ts +3 -0
- package/dist/blocks/pricing-compare-01/index.d.ts.map +1 -0
- package/dist/blocks/pricing-compare-01/index.js +1 -0
- package/dist/blocks/pricing-compare-01/pricing-compare.d.ts +277 -0
- package/dist/blocks/pricing-compare-01/pricing-compare.d.ts.map +1 -0
- package/dist/blocks/pricing-compare-01/pricing-compare.js +126 -0
- package/dist/blocks/project-01/index.d.ts +3 -0
- package/dist/blocks/project-01/index.d.ts.map +1 -0
- package/dist/blocks/project-01/index.js +1 -0
- package/dist/blocks/project-01/project.d.ts +323 -0
- package/dist/blocks/project-01/project.d.ts.map +1 -0
- package/dist/blocks/project-01/project.js +247 -0
- package/dist/blocks/project-dashboard-01/index.d.ts +3 -0
- package/dist/blocks/project-dashboard-01/index.d.ts.map +1 -0
- package/dist/blocks/project-dashboard-01/index.js +1 -0
- package/dist/blocks/project-dashboard-01/project-dashboard.d.ts +200 -0
- package/dist/blocks/project-dashboard-01/project-dashboard.d.ts.map +1 -0
- package/dist/blocks/project-dashboard-01/project-dashboard.js +124 -0
- package/dist/blocks/project-list-01/index.d.ts +3 -0
- package/dist/blocks/project-list-01/index.d.ts.map +1 -0
- package/dist/blocks/project-list-01/index.js +1 -0
- package/dist/blocks/project-list-01/project-list.d.ts +301 -0
- package/dist/blocks/project-list-01/project-list.d.ts.map +1 -0
- package/dist/blocks/project-list-01/project-list.js +305 -0
- package/dist/blocks/provisioning-01/index.d.ts +3 -0
- package/dist/blocks/provisioning-01/index.d.ts.map +1 -0
- package/dist/blocks/provisioning-01/index.js +1 -0
- package/dist/blocks/provisioning-01/provisioning.d.ts +357 -0
- package/dist/blocks/provisioning-01/provisioning.d.ts.map +1 -0
- package/dist/blocks/provisioning-01/provisioning.js +230 -0
- package/dist/blocks/quick-view-01/index.d.ts +3 -0
- package/dist/blocks/quick-view-01/index.d.ts.map +1 -0
- package/dist/blocks/quick-view-01/index.js +1 -0
- package/dist/blocks/quick-view-01/quick-view.d.ts +215 -0
- package/dist/blocks/quick-view-01/quick-view.d.ts.map +1 -0
- package/dist/blocks/quick-view-01/quick-view.js +136 -0
- package/dist/blocks/rate-card-01/index.d.ts +3 -0
- package/dist/blocks/rate-card-01/index.d.ts.map +1 -0
- package/dist/blocks/rate-card-01/index.js +1 -0
- package/dist/blocks/rate-card-01/rate-card.d.ts +184 -0
- package/dist/blocks/rate-card-01/rate-card.d.ts.map +1 -0
- package/dist/blocks/rate-card-01/rate-card.js +79 -0
- package/dist/blocks/reset-password-01/index.d.ts +3 -0
- package/dist/blocks/reset-password-01/index.d.ts.map +1 -0
- package/dist/blocks/reset-password-01/index.js +1 -0
- package/dist/blocks/reset-password-01/reset-password.d.ts +276 -0
- package/dist/blocks/reset-password-01/reset-password.d.ts.map +1 -0
- package/dist/blocks/reset-password-01/reset-password.js +175 -0
- package/dist/blocks/resource-list-01/index.d.ts +3 -0
- package/dist/blocks/resource-list-01/index.d.ts.map +1 -0
- package/dist/blocks/resource-list-01/index.js +1 -0
- package/dist/blocks/resource-list-01/resource-list.d.ts +237 -0
- package/dist/blocks/resource-list-01/resource-list.d.ts.map +1 -0
- package/dist/blocks/resource-list-01/resource-list.js +154 -0
- package/dist/blocks/retention-01/index.d.ts +3 -0
- package/dist/blocks/retention-01/index.d.ts.map +1 -0
- package/dist/blocks/retention-01/index.js +1 -0
- package/dist/blocks/retention-01/retention.d.ts +255 -0
- package/dist/blocks/retention-01/retention.d.ts.map +1 -0
- package/dist/blocks/retention-01/retention.js +145 -0
- package/dist/blocks/run-console-01/run-console.d.ts +14 -1
- package/dist/blocks/run-console-01/run-console.d.ts.map +1 -1
- package/dist/blocks/run-console-01/run-console.js +4 -2
- package/dist/blocks/services-01/index.d.ts +3 -0
- package/dist/blocks/services-01/index.d.ts.map +1 -0
- package/dist/blocks/services-01/index.js +1 -0
- package/dist/blocks/services-01/services.d.ts +159 -0
- package/dist/blocks/services-01/services.d.ts.map +1 -0
- package/dist/blocks/services-01/services.js +81 -0
- package/dist/blocks/settings-integrations-01/index.d.ts +3 -0
- package/dist/blocks/settings-integrations-01/index.d.ts.map +1 -0
- package/dist/blocks/settings-integrations-01/index.js +1 -0
- package/dist/blocks/settings-integrations-01/settings-integrations.d.ts +246 -0
- package/dist/blocks/settings-integrations-01/settings-integrations.d.ts.map +1 -0
- package/dist/blocks/settings-integrations-01/settings-integrations.js +213 -0
- package/dist/blocks/settings-members-01/index.d.ts +3 -0
- package/dist/blocks/settings-members-01/index.d.ts.map +1 -0
- package/dist/blocks/settings-members-01/index.js +1 -0
- package/dist/blocks/settings-members-01/settings-members.d.ts +396 -0
- package/dist/blocks/settings-members-01/settings-members.d.ts.map +1 -0
- package/dist/blocks/settings-members-01/settings-members.js +255 -0
- package/dist/blocks/settings-notifications-01/index.d.ts +3 -0
- package/dist/blocks/settings-notifications-01/index.d.ts.map +1 -0
- package/dist/blocks/settings-notifications-01/index.js +1 -0
- package/dist/blocks/settings-notifications-01/settings-notifications.d.ts +270 -0
- package/dist/blocks/settings-notifications-01/settings-notifications.d.ts.map +1 -0
- package/dist/blocks/settings-notifications-01/settings-notifications.js +202 -0
- package/dist/blocks/settings-security-01/index.d.ts +3 -0
- package/dist/blocks/settings-security-01/index.d.ts.map +1 -0
- package/dist/blocks/settings-security-01/index.js +1 -0
- package/dist/blocks/settings-security-01/settings-security.d.ts +439 -0
- package/dist/blocks/settings-security-01/settings-security.d.ts.map +1 -0
- package/dist/blocks/settings-security-01/settings-security.js +244 -0
- package/dist/blocks/shortlist-01/index.d.ts +3 -0
- package/dist/blocks/shortlist-01/index.d.ts.map +1 -0
- package/dist/blocks/shortlist-01/index.js +1 -0
- package/dist/blocks/shortlist-01/shortlist-01.d.ts +337 -0
- package/dist/blocks/shortlist-01/shortlist-01.d.ts.map +1 -0
- package/dist/blocks/shortlist-01/shortlist-01.js +191 -0
- package/dist/blocks/showcase-01/index.d.ts +3 -0
- package/dist/blocks/showcase-01/index.d.ts.map +1 -0
- package/dist/blocks/showcase-01/index.js +1 -0
- package/dist/blocks/showcase-01/showcase-01.d.ts +238 -0
- package/dist/blocks/showcase-01/showcase-01.d.ts.map +1 -0
- package/dist/blocks/showcase-01/showcase-01.js +84 -0
- package/dist/blocks/signup-01/index.d.ts +3 -0
- package/dist/blocks/signup-01/index.d.ts.map +1 -0
- package/dist/blocks/signup-01/index.js +1 -0
- package/dist/blocks/signup-01/signup-01.d.ts +405 -0
- package/dist/blocks/signup-01/signup-01.d.ts.map +1 -0
- package/dist/blocks/signup-01/signup-01.js +209 -0
- package/dist/blocks/site-footer/site-footer.d.ts +34 -1
- package/dist/blocks/site-footer/site-footer.d.ts.map +1 -1
- package/dist/blocks/site-footer/site-footer.js +24 -2
- package/dist/blocks/site-header/site-header.js +1 -1
- package/dist/blocks/site-navbar/site-navbar.d.ts +37 -3
- package/dist/blocks/site-navbar/site-navbar.d.ts.map +1 -1
- package/dist/blocks/site-navbar/site-navbar.js +33 -4
- package/dist/blocks/spec-table-01/index.d.ts +3 -0
- package/dist/blocks/spec-table-01/index.d.ts.map +1 -0
- package/dist/blocks/spec-table-01/index.js +1 -0
- package/dist/blocks/spec-table-01/spec-table.d.ts +293 -0
- package/dist/blocks/spec-table-01/spec-table.d.ts.map +1 -0
- package/dist/blocks/spec-table-01/spec-table.js +217 -0
- package/dist/blocks/stack-grid-01/stack-grid.d.ts +13 -0
- package/dist/blocks/stack-grid-01/stack-grid.d.ts.map +1 -1
- package/dist/blocks/stack-grid-01/stack-grid.js +14 -1
- package/dist/blocks/story-01/index.d.ts +3 -0
- package/dist/blocks/story-01/index.d.ts.map +1 -0
- package/dist/blocks/story-01/index.js +1 -0
- package/dist/blocks/story-01/story.d.ts +153 -0
- package/dist/blocks/story-01/story.d.ts.map +1 -0
- package/dist/blocks/story-01/story.js +103 -0
- package/dist/blocks/summary-01/index.d.ts +3 -0
- package/dist/blocks/summary-01/index.d.ts.map +1 -0
- package/dist/blocks/summary-01/index.js +1 -0
- package/dist/blocks/summary-01/summary.d.ts +300 -0
- package/dist/blocks/summary-01/summary.d.ts.map +1 -0
- package/dist/blocks/summary-01/summary.js +174 -0
- package/dist/blocks/team-01/index.d.ts +3 -0
- package/dist/blocks/team-01/index.d.ts.map +1 -0
- package/dist/blocks/team-01/index.js +1 -0
- package/dist/blocks/team-01/team.d.ts +176 -0
- package/dist/blocks/team-01/team.d.ts.map +1 -0
- package/dist/blocks/team-01/team.js +117 -0
- package/dist/blocks/testimonial-01/index.d.ts +3 -0
- package/dist/blocks/testimonial-01/index.d.ts.map +1 -0
- package/dist/blocks/testimonial-01/index.js +1 -0
- package/dist/blocks/testimonial-01/testimonial.d.ts +173 -0
- package/dist/blocks/testimonial-01/testimonial.d.ts.map +1 -0
- package/dist/blocks/testimonial-01/testimonial.js +87 -0
- package/dist/blocks/todo-01/index.d.ts +3 -0
- package/dist/blocks/todo-01/index.d.ts.map +1 -0
- package/dist/blocks/todo-01/index.js +1 -0
- package/dist/blocks/todo-01/todo.d.ts +286 -0
- package/dist/blocks/todo-01/todo.d.ts.map +1 -0
- package/dist/blocks/todo-01/todo.js +149 -0
- package/dist/blocks/trend-01/index.d.ts +3 -0
- package/dist/blocks/trend-01/index.d.ts.map +1 -0
- package/dist/blocks/trend-01/index.js +1 -0
- package/dist/blocks/trend-01/trend.d.ts +184 -0
- package/dist/blocks/trend-01/trend.d.ts.map +1 -0
- package/dist/blocks/trend-01/trend.js +99 -0
- package/dist/blocks/trust-strip-01/index.d.ts +3 -0
- package/dist/blocks/trust-strip-01/index.d.ts.map +1 -0
- package/dist/blocks/trust-strip-01/index.js +1 -0
- package/dist/blocks/trust-strip-01/trust-strip-01.d.ts +139 -0
- package/dist/blocks/trust-strip-01/trust-strip-01.d.ts.map +1 -0
- package/dist/blocks/trust-strip-01/trust-strip-01.js +58 -0
- package/dist/blocks/two-factor-01/index.d.ts +3 -0
- package/dist/blocks/two-factor-01/index.d.ts.map +1 -0
- package/dist/blocks/two-factor-01/index.js +1 -0
- package/dist/blocks/two-factor-01/two-factor-01.d.ts +440 -0
- package/dist/blocks/two-factor-01/two-factor-01.d.ts.map +1 -0
- package/dist/blocks/two-factor-01/two-factor-01.js +273 -0
- package/dist/blocks/user-profile-01/index.d.ts +3 -0
- package/dist/blocks/user-profile-01/index.d.ts.map +1 -0
- package/dist/blocks/user-profile-01/index.js +1 -0
- package/dist/blocks/user-profile-01/user-profile-01.d.ts +258 -0
- package/dist/blocks/user-profile-01/user-profile-01.d.ts.map +1 -0
- package/dist/blocks/user-profile-01/user-profile-01.js +158 -0
- package/dist/blocks/verify-email-01/index.d.ts +3 -0
- package/dist/blocks/verify-email-01/index.d.ts.map +1 -0
- package/dist/blocks/verify-email-01/index.js +1 -0
- package/dist/blocks/verify-email-01/verify-email.d.ts +262 -0
- package/dist/blocks/verify-email-01/verify-email.d.ts.map +1 -0
- package/dist/blocks/verify-email-01/verify-email.js +190 -0
- package/dist/blocks/waitlist-01/index.d.ts +3 -0
- package/dist/blocks/waitlist-01/index.d.ts.map +1 -0
- package/dist/blocks/waitlist-01/index.js +1 -0
- package/dist/blocks/waitlist-01/waitlist.d.ts +254 -0
- package/dist/blocks/waitlist-01/waitlist.d.ts.map +1 -0
- package/dist/blocks/waitlist-01/waitlist.js +75 -0
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.js +1641 -1
- package/dist/components/index.d.ts +114 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +134 -0
- package/dist/components/ui/accordion.d.ts.map +1 -1
- package/dist/components/ui/accordion.js +9 -2
- package/dist/components/ui/alert-dialog.d.ts.map +1 -1
- package/dist/components/ui/alert-dialog.js +22 -4
- package/dist/components/ui/announcement.d.ts +169 -0
- package/dist/components/ui/announcement.d.ts.map +1 -0
- package/dist/components/ui/announcement.js +123 -0
- package/dist/components/ui/avatar-group.d.ts +176 -0
- package/dist/components/ui/avatar-group.d.ts.map +1 -0
- package/dist/components/ui/avatar-group.js +135 -0
- package/dist/components/ui/billing-source.d.ts +293 -0
- package/dist/components/ui/billing-source.d.ts.map +1 -0
- package/dist/components/ui/billing-source.js +136 -0
- package/dist/components/ui/button.d.ts +16 -1
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/button.js +17 -2
- package/dist/components/ui/calendar.d.ts +9 -0
- package/dist/components/ui/calendar.d.ts.map +1 -1
- package/dist/components/ui/calendar.js +30 -2
- package/dist/components/ui/carousel.d.ts +7 -0
- package/dist/components/ui/carousel.d.ts.map +1 -1
- package/dist/components/ui/carousel.js +58 -1
- package/dist/components/ui/chart.d.ts +334 -0
- package/dist/components/ui/chart.d.ts.map +1 -0
- package/dist/components/ui/chart.js +369 -0
- package/dist/components/ui/checkbox.d.ts +10 -0
- package/dist/components/ui/checkbox.d.ts.map +1 -1
- package/dist/components/ui/checkbox.js +19 -1
- package/dist/components/ui/checklist.d.ts +262 -0
- package/dist/components/ui/checklist.d.ts.map +1 -0
- package/dist/components/ui/checklist.js +135 -0
- package/dist/components/ui/choice-card.d.ts +273 -0
- package/dist/components/ui/choice-card.d.ts.map +1 -0
- package/dist/components/ui/choice-card.js +138 -0
- package/dist/components/ui/code-block.d.ts +182 -0
- package/dist/components/ui/code-block.d.ts.map +1 -0
- package/dist/components/ui/code-block.js +108 -0
- package/dist/components/ui/cohort-grid.d.ts +210 -0
- package/dist/components/ui/cohort-grid.d.ts.map +1 -0
- package/dist/components/ui/cohort-grid.js +202 -0
- package/dist/components/ui/collapsible.d.ts +11 -0
- package/dist/components/ui/collapsible.d.ts.map +1 -1
- package/dist/components/ui/collapsible.js +13 -2
- package/dist/components/ui/combobox.d.ts +4 -1
- package/dist/components/ui/combobox.d.ts.map +1 -1
- package/dist/components/ui/combobox.js +20 -4
- package/dist/components/ui/command-palette.d.ts +11 -0
- package/dist/components/ui/command-palette.d.ts.map +1 -1
- package/dist/components/ui/command-palette.js +49 -3
- package/dist/components/ui/contribution-graph.d.ts +156 -0
- package/dist/components/ui/contribution-graph.d.ts.map +1 -0
- package/dist/components/ui/contribution-graph.js +170 -0
- package/dist/components/ui/creatable-combobox.d.ts +153 -0
- package/dist/components/ui/creatable-combobox.d.ts.map +1 -0
- package/dist/components/ui/creatable-combobox.js +285 -0
- package/dist/components/ui/data-toolbar.d.ts +133 -0
- package/dist/components/ui/data-toolbar.d.ts.map +1 -0
- package/dist/components/ui/data-toolbar.js +67 -0
- package/dist/components/ui/date-picker.d.ts.map +1 -1
- package/dist/components/ui/date-picker.js +9 -1
- package/dist/components/ui/diagram.d.ts +38 -7
- package/dist/components/ui/diagram.d.ts.map +1 -1
- package/dist/components/ui/diagram.js +134 -52
- package/dist/components/ui/dialog.d.ts +31 -2
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/dialog.js +40 -6
- package/dist/components/ui/drawer.d.ts +270 -0
- package/dist/components/ui/drawer.d.ts.map +1 -0
- package/dist/components/ui/drawer.js +241 -0
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.js +6 -1
- package/dist/components/ui/dropzone.d.ts +147 -0
- package/dist/components/ui/dropzone.d.ts.map +1 -0
- package/dist/components/ui/dropzone.js +141 -0
- package/dist/components/ui/emoji-picker.d.ts +328 -0
- package/dist/components/ui/emoji-picker.d.ts.map +1 -0
- package/dist/components/ui/emoji-picker.js +278 -0
- package/dist/components/ui/fact-list.d.ts +17 -0
- package/dist/components/ui/fact-list.d.ts.map +1 -1
- package/dist/components/ui/fact-list.js +18 -1
- package/dist/components/ui/file-upload.d.ts +152 -0
- package/dist/components/ui/file-upload.d.ts.map +1 -0
- package/dist/components/ui/file-upload.js +101 -0
- package/dist/components/ui/filter-panel.d.ts +164 -0
- package/dist/components/ui/filter-panel.d.ts.map +1 -0
- package/dist/components/ui/filter-panel.js +91 -0
- package/dist/components/ui/form-dialog.d.ts +257 -0
- package/dist/components/ui/form-dialog.d.ts.map +1 -0
- package/dist/components/ui/form-dialog.js +176 -0
- package/dist/components/ui/form-wizard.d.ts +251 -0
- package/dist/components/ui/form-wizard.d.ts.map +1 -0
- package/dist/components/ui/form-wizard.js +151 -0
- package/dist/components/ui/image-list-field.d.ts +232 -0
- package/dist/components/ui/image-list-field.d.ts.map +1 -0
- package/dist/components/ui/image-list-field.js +168 -0
- package/dist/components/ui/image-zoom.d.ts +164 -0
- package/dist/components/ui/image-zoom.d.ts.map +1 -0
- package/dist/components/ui/image-zoom.js +169 -0
- package/dist/components/ui/intensity-grid.d.ts +270 -0
- package/dist/components/ui/intensity-grid.d.ts.map +1 -0
- package/dist/components/ui/intensity-grid.js +211 -0
- package/dist/components/ui/lifecycle-button.d.ts +276 -0
- package/dist/components/ui/lifecycle-button.d.ts.map +1 -0
- package/dist/components/ui/lifecycle-button.js +144 -0
- package/dist/components/ui/lightbox.d.ts +165 -0
- package/dist/components/ui/lightbox.d.ts.map +1 -0
- package/dist/components/ui/lightbox.js +130 -0
- package/dist/components/ui/list-panel.d.ts +288 -0
- package/dist/components/ui/list-panel.d.ts.map +1 -0
- package/dist/components/ui/list-panel.js +139 -0
- package/dist/components/ui/mega-menu.d.ts +244 -0
- package/dist/components/ui/mega-menu.d.ts.map +1 -0
- package/dist/components/ui/mega-menu.js +97 -0
- package/dist/components/ui/menubar.d.ts +9 -0
- package/dist/components/ui/menubar.d.ts.map +1 -1
- package/dist/components/ui/menubar.js +10 -1
- package/dist/components/ui/metric.d.ts +123 -0
- package/dist/components/ui/metric.d.ts.map +1 -0
- package/dist/components/ui/metric.js +68 -0
- package/dist/components/ui/mini-calendar.d.ts +143 -0
- package/dist/components/ui/mini-calendar.d.ts.map +1 -0
- package/dist/components/ui/mini-calendar.js +261 -0
- package/dist/components/ui/mode-toggle.d.ts +102 -0
- package/dist/components/ui/mode-toggle.d.ts.map +1 -0
- package/dist/components/ui/mode-toggle.js +83 -0
- package/dist/components/ui/money-field.d.ts +200 -0
- package/dist/components/ui/money-field.d.ts.map +1 -0
- package/dist/components/ui/money-field.js +215 -0
- package/dist/components/ui/multi-combobox.d.ts +181 -0
- package/dist/components/ui/multi-combobox.d.ts.map +1 -0
- package/dist/components/ui/multi-combobox.js +297 -0
- package/dist/components/ui/native-select.d.ts.map +1 -1
- package/dist/components/ui/native-select.js +8 -1
- package/dist/components/ui/navigation-menu.d.ts +7 -0
- package/dist/components/ui/navigation-menu.d.ts.map +1 -1
- package/dist/components/ui/navigation-menu.js +8 -1
- package/dist/components/ui/nested-tabs.d.ts +188 -0
- package/dist/components/ui/nested-tabs.d.ts.map +1 -0
- package/dist/components/ui/nested-tabs.js +75 -0
- package/dist/components/ui/number-field.d.ts +40 -7
- package/dist/components/ui/number-field.d.ts.map +1 -1
- package/dist/components/ui/number-field.js +37 -7
- package/dist/components/ui/overflow-actions.d.ts +169 -0
- package/dist/components/ui/overflow-actions.d.ts.map +1 -0
- package/dist/components/ui/overflow-actions.js +266 -0
- package/dist/components/ui/pack-swatch.d.ts +177 -0
- package/dist/components/ui/pack-swatch.d.ts.map +1 -0
- package/dist/components/ui/pack-swatch.js +117 -0
- package/dist/components/ui/pack-switcher.d.ts +221 -0
- package/dist/components/ui/pack-switcher.d.ts.map +1 -0
- package/dist/components/ui/pack-switcher.js +94 -0
- package/dist/components/ui/pagination.d.ts +22 -0
- package/dist/components/ui/pagination.d.ts.map +1 -1
- package/dist/components/ui/pagination.js +23 -1
- package/dist/components/ui/password-field.d.ts +122 -0
- package/dist/components/ui/password-field.d.ts.map +1 -0
- package/dist/components/ui/password-field.js +69 -0
- package/dist/components/ui/pill.d.ts +172 -0
- package/dist/components/ui/pill.d.ts.map +1 -0
- package/dist/components/ui/pill.js +102 -0
- package/dist/components/ui/platform-modifier-key.d.ts +129 -0
- package/dist/components/ui/platform-modifier-key.d.ts.map +1 -0
- package/dist/components/ui/platform-modifier-key.js +125 -0
- package/dist/components/ui/popover.d.ts.map +1 -1
- package/dist/components/ui/popover.js +8 -1
- package/dist/components/ui/price.d.ts +144 -0
- package/dist/components/ui/price.d.ts.map +1 -0
- package/dist/components/ui/price.js +107 -0
- package/dist/components/ui/progress.d.ts +55 -1
- package/dist/components/ui/progress.d.ts.map +1 -1
- package/dist/components/ui/progress.js +110 -2
- package/dist/components/ui/prompt-composer.d.ts +302 -0
- package/dist/components/ui/prompt-composer.d.ts.map +1 -0
- package/dist/components/ui/prompt-composer.js +145 -0
- package/dist/components/ui/proportion-list.d.ts +188 -0
- package/dist/components/ui/proportion-list.d.ts.map +1 -0
- package/dist/components/ui/proportion-list.js +134 -0
- package/dist/components/ui/prose.d.ts +34 -0
- package/dist/components/ui/prose.d.ts.map +1 -1
- package/dist/components/ui/prose.js +41 -1
- package/dist/components/ui/pulse-graph.d.ts +36 -4
- package/dist/components/ui/pulse-graph.d.ts.map +1 -1
- package/dist/components/ui/pulse-graph.js +174 -60
- package/dist/components/ui/radio-group.d.ts +7 -0
- package/dist/components/ui/radio-group.d.ts.map +1 -1
- package/dist/components/ui/radio-group.js +8 -1
- package/dist/components/ui/range-field.d.ts +158 -0
- package/dist/components/ui/range-field.d.ts.map +1 -0
- package/dist/components/ui/range-field.js +208 -0
- package/dist/components/ui/relative-time.d.ts +116 -0
- package/dist/components/ui/relative-time.d.ts.map +1 -0
- package/dist/components/ui/relative-time.js +67 -0
- package/dist/components/ui/reorderable-list.d.ts +262 -0
- package/dist/components/ui/reorderable-list.d.ts.map +1 -0
- package/dist/components/ui/reorderable-list.js +325 -0
- package/dist/components/ui/repeatable-rows.d.ts +241 -0
- package/dist/components/ui/repeatable-rows.d.ts.map +1 -0
- package/dist/components/ui/repeatable-rows.js +221 -0
- package/dist/components/ui/repo-stars.d.ts +165 -0
- package/dist/components/ui/repo-stars.d.ts.map +1 -0
- package/dist/components/ui/repo-stars.js +92 -0
- package/dist/components/ui/resizable.d.ts +24 -0
- package/dist/components/ui/resizable.d.ts.map +1 -1
- package/dist/components/ui/resizable.js +96 -4
- package/dist/components/ui/search-dialog.d.ts +40 -5
- package/dist/components/ui/search-dialog.d.ts.map +1 -1
- package/dist/components/ui/search-dialog.js +94 -16
- package/dist/components/ui/search-field.d.ts +159 -0
- package/dist/components/ui/search-field.d.ts.map +1 -0
- package/dist/components/ui/search-field.js +98 -0
- package/dist/components/ui/section.d.ts +110 -1
- package/dist/components/ui/section.d.ts.map +1 -1
- package/dist/components/ui/section.js +111 -3
- package/dist/components/ui/select.d.ts.map +1 -1
- package/dist/components/ui/select.js +9 -1
- package/dist/components/ui/selection-toolbar.d.ts +166 -0
- package/dist/components/ui/selection-toolbar.d.ts.map +1 -0
- package/dist/components/ui/selection-toolbar.js +139 -0
- package/dist/components/ui/sidebar.d.ts +29 -0
- package/dist/components/ui/sidebar.d.ts.map +1 -1
- package/dist/components/ui/sidebar.js +35 -2
- package/dist/components/ui/signal-field.d.ts.map +1 -1
- package/dist/components/ui/signal-field.js +1 -1
- package/dist/components/ui/slider.d.ts +7 -0
- package/dist/components/ui/slider.d.ts.map +1 -1
- package/dist/components/ui/slider.js +32 -1
- package/dist/components/ui/sparkline.d.ts +117 -0
- package/dist/components/ui/sparkline.d.ts.map +1 -0
- package/dist/components/ui/sparkline.js +113 -0
- package/dist/components/ui/spinner.d.ts.map +1 -1
- package/dist/components/ui/spinner.js +13 -0
- package/dist/components/ui/split-button.d.ts +207 -0
- package/dist/components/ui/split-button.d.ts.map +1 -0
- package/dist/components/ui/split-button.js +75 -0
- package/dist/components/ui/stateful-table.d.ts +345 -0
- package/dist/components/ui/stateful-table.d.ts.map +1 -0
- package/dist/components/ui/stateful-table.js +169 -0
- package/dist/components/ui/status.d.ts +99 -0
- package/dist/components/ui/status.d.ts.map +1 -0
- package/dist/components/ui/status.js +63 -0
- package/dist/components/ui/stepper.d.ts +155 -0
- package/dist/components/ui/stepper.d.ts.map +1 -0
- package/dist/components/ui/stepper.js +83 -0
- package/dist/components/ui/steps.d.ts +141 -0
- package/dist/components/ui/steps.d.ts.map +1 -0
- package/dist/components/ui/steps.js +128 -0
- package/dist/components/ui/switch.d.ts +8 -0
- package/dist/components/ui/switch.d.ts.map +1 -1
- package/dist/components/ui/switch.js +12 -1
- package/dist/components/ui/tabs.d.ts +21 -2
- package/dist/components/ui/tabs.d.ts.map +1 -1
- package/dist/components/ui/tabs.js +23 -4
- package/dist/components/ui/tag-group.d.ts +154 -0
- package/dist/components/ui/tag-group.d.ts.map +1 -0
- package/dist/components/ui/tag-group.js +111 -0
- package/dist/components/ui/task-progress.d.ts +149 -0
- package/dist/components/ui/task-progress.d.ts.map +1 -0
- package/dist/components/ui/task-progress.js +110 -0
- package/dist/components/ui/text-format-toolbar.d.ts +211 -0
- package/dist/components/ui/text-format-toolbar.d.ts.map +1 -0
- package/dist/components/ui/text-format-toolbar.js +186 -0
- package/dist/components/ui/timeline.d.ts.map +1 -1
- package/dist/components/ui/timeline.js +10 -1
- package/dist/components/ui/toast.d.ts +32 -10
- package/dist/components/ui/toast.d.ts.map +1 -1
- package/dist/components/ui/toast.js +150 -47
- package/dist/components/ui/toggle-group.d.ts +14 -5
- package/dist/components/ui/toggle-group.d.ts.map +1 -1
- package/dist/components/ui/toggle-group.js +15 -1
- package/dist/components/ui/toggle.d.ts.map +1 -1
- package/dist/components/ui/toggle.js +9 -1
- package/dist/components/ui/tree.d.ts +8 -0
- package/dist/components/ui/tree.d.ts.map +1 -1
- package/dist/components/ui/tree.js +92 -13
- package/dist/components/ui/video-player.d.ts +236 -0
- package/dist/components/ui/video-player.d.ts.map +1 -0
- package/dist/components/ui/video-player.js +72 -0
- package/dist/fonts/inter-latin-400-italic.woff2 +0 -0
- package/dist/index.d.ts +112 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +72 -0
- package/dist/lib/figure.d.ts +149 -0
- package/dist/lib/figure.d.ts.map +1 -0
- package/dist/lib/figure.js +242 -0
- package/dist/lib/utils.d.ts +29 -0
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +35 -0
- package/dist/live/index.d.ts +10 -3
- package/dist/live/index.d.ts.map +1 -1
- package/dist/live/index.js +12 -3
- package/dist/live/run-stream-01/run-stream.d.ts.map +1 -1
- package/dist/live/run-stream-01/run-stream.js +6 -5
- package/dist/live/tool-ledger-01/index.d.ts +3 -0
- package/dist/live/tool-ledger-01/index.d.ts.map +1 -0
- package/dist/live/tool-ledger-01/index.js +1 -0
- package/dist/live/tool-ledger-01/tool-ledger.d.ts +348 -0
- package/dist/live/tool-ledger-01/tool-ledger.d.ts.map +1 -0
- package/dist/live/tool-ledger-01/tool-ledger.js +245 -0
- package/dist/pages/about-page/index.d.ts +306 -0
- package/dist/pages/about-page/index.d.ts.map +1 -0
- package/dist/pages/about-page/index.js +161 -0
- package/dist/pages/blog-post-page/index.d.ts +36 -15
- package/dist/pages/blog-post-page/index.d.ts.map +1 -1
- package/dist/pages/blog-post-page/index.js +35 -10
- package/dist/pages/careers-page/index.d.ts +288 -0
- package/dist/pages/careers-page/index.d.ts.map +1 -0
- package/dist/pages/careers-page/index.js +182 -0
- package/dist/pages/changelog-page/index.d.ts +255 -0
- package/dist/pages/changelog-page/index.d.ts.map +1 -0
- package/dist/pages/changelog-page/index.js +86 -0
- package/dist/pages/contact-page/index.d.ts +261 -0
- package/dist/pages/contact-page/index.d.ts.map +1 -0
- package/dist/pages/contact-page/index.js +136 -0
- package/dist/pages/docs-shell/docs-shell.d.ts +126 -16
- package/dist/pages/docs-shell/docs-shell.d.ts.map +1 -1
- package/dist/pages/docs-shell/docs-shell.js +229 -28
- package/dist/pages/error-page/index.d.ts +188 -0
- package/dist/pages/error-page/index.d.ts.map +1 -0
- package/dist/pages/error-page/index.js +102 -0
- package/dist/pages/index.d.ts +10 -0
- package/dist/pages/index.d.ts.map +1 -1
- package/dist/pages/index.js +14 -0
- package/dist/pages/legal-page/index.d.ts +194 -0
- package/dist/pages/legal-page/index.d.ts.map +1 -0
- package/dist/pages/legal-page/index.js +99 -0
- package/dist/pages/not-found-page/index.d.ts.map +1 -1
- package/dist/pages/not-found-page/index.js +4 -3
- package/dist/pages/onboarding-page/index.d.ts +199 -0
- package/dist/pages/onboarding-page/index.d.ts.map +1 -0
- package/dist/pages/onboarding-page/index.js +71 -0
- package/dist/pages/pricing-page/index.d.ts +286 -0
- package/dist/pages/pricing-page/index.d.ts.map +1 -0
- package/dist/pages/pricing-page/index.js +139 -0
- package/dist/pages/search-page/index.d.ts +305 -0
- package/dist/pages/search-page/index.d.ts.map +1 -0
- package/dist/pages/search-page/index.js +142 -0
- package/dist/pages/status-page/index.d.ts +366 -0
- package/dist/pages/status-page/index.d.ts.map +1 -0
- package/dist/pages/status-page/index.js +136 -0
- package/dist/styles.css +1105 -62
- package/package.json +9 -3
|
@@ -56,9 +56,28 @@ export interface TabsContentProps extends Omit<ComponentProps<'div'>, 'value'> {
|
|
|
56
56
|
* process.
|
|
57
57
|
*/
|
|
58
58
|
declare function Tabs({ className, ...props }: TabsProps): import("react").JSX.Element;
|
|
59
|
-
/**
|
|
59
|
+
/**
|
|
60
|
+
* The row or column of tab triggers.
|
|
61
|
+
*
|
|
62
|
+
* `pointer-coarse:h-13` is half of the coarse-pointer floor and it is the half that is
|
|
63
|
+
* easy to forget: the list is `h-9 p-1`, so its content box is 28 tall and a trigger
|
|
64
|
+
* grown to 44 would not fit inside it. `h-13` is 52, which is the trigger's 44 plus
|
|
65
|
+
* the list's own `p-1` on each side. The vertical orientation is exempt, because there
|
|
66
|
+
* the list is `h-fit flex-col` and each trigger sizes the row it is in. A band was
|
|
67
|
+
* rejected on condition 1 for the sharpest possible reason: the triggers sit a `gap-1`
|
|
68
|
+
* apart inside one list, so a band on one is a press aimed at its neighbour. See
|
|
69
|
+
* DESIGN.md, The coarse-pointer floor.
|
|
70
|
+
*/
|
|
60
71
|
declare function TabsList({ className, ...props }: TabsListProps): import("react").JSX.Element;
|
|
61
|
-
/**
|
|
72
|
+
/**
|
|
73
|
+
* One trigger in the tab list.
|
|
74
|
+
*
|
|
75
|
+
* `pointer-coarse:h-11` is the other half of the floor. The trigger states its height
|
|
76
|
+
* through `py-1` and its content, so this states it outright rather than growing the
|
|
77
|
+
* padding to an implied 44: twelve pixels of padding either side of a twenty pixel
|
|
78
|
+
* line box is the floor reached by arithmetic, and an arithmetic floor is a number a
|
|
79
|
+
* later edit can change without noticing. See The coarse-pointer floor.
|
|
80
|
+
*/
|
|
62
81
|
declare function TabsTrigger({ className, ...props }: TabsTriggerProps): import("react").JSX.Element;
|
|
63
82
|
/** The panel a trigger reveals. */
|
|
64
83
|
declare function TabsContent({ className, ...props }: TabsContentProps): import("react").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tabs.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3C;;;;;GAKG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IACxE,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,iEAAiE;IACjE,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CACxC;AAED,8CAA8C;AAC9C,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC1D,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC/E,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IACb,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAC5E,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;;;GAQG;AACH,iBAAS,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,+BAQ/C;AAED
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tabs.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3C;;;;;GAKG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IACxE,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,iEAAiE;IACjE,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CACxC;AAED,8CAA8C;AAC9C,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC1D,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC/E,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IACb,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAC5E,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;;;GAQG;AACH,iBAAS,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,+BAQ/C;AAED;;;;;;;;;;;GAWG;AACH,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,+BAavD;AAED;;;;;;;;GAQG;AACH,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,+BAiB7D;AAED,mCAAmC;AACnC,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,+BAQ7D;AAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -14,13 +14,32 @@ import { cn } from '../../lib/utils.js';
|
|
|
14
14
|
function Tabs({ className, ...props }) {
|
|
15
15
|
return (_jsx(TabsPrimitive.Root, { "data-slot": "tabs", className: cn('flex flex-col gap-2', className), ...props }));
|
|
16
16
|
}
|
|
17
|
-
/**
|
|
17
|
+
/**
|
|
18
|
+
* The row or column of tab triggers.
|
|
19
|
+
*
|
|
20
|
+
* `pointer-coarse:h-13` is half of the coarse-pointer floor and it is the half that is
|
|
21
|
+
* easy to forget: the list is `h-9 p-1`, so its content box is 28 tall and a trigger
|
|
22
|
+
* grown to 44 would not fit inside it. `h-13` is 52, which is the trigger's 44 plus
|
|
23
|
+
* the list's own `p-1` on each side. The vertical orientation is exempt, because there
|
|
24
|
+
* the list is `h-fit flex-col` and each trigger sizes the row it is in. A band was
|
|
25
|
+
* rejected on condition 1 for the sharpest possible reason: the triggers sit a `gap-1`
|
|
26
|
+
* apart inside one list, so a band on one is a press aimed at its neighbour. See
|
|
27
|
+
* DESIGN.md, The coarse-pointer floor.
|
|
28
|
+
*/
|
|
18
29
|
function TabsList({ className, ...props }) {
|
|
19
|
-
return (_jsx(TabsPrimitive.List, { "data-slot": "tabs-list", className: cn('bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center gap-1 rounded-lg p-1', 'data-[orientation=vertical]:h-fit data-[orientation=vertical]:flex-col', className), ...props }));
|
|
30
|
+
return (_jsx(TabsPrimitive.List, { "data-slot": "tabs-list", className: cn('bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center gap-1 rounded-lg p-1', 'data-[orientation=vertical]:h-fit data-[orientation=vertical]:flex-col', 'pointer-coarse:h-13', className), ...props }));
|
|
20
31
|
}
|
|
21
|
-
/**
|
|
32
|
+
/**
|
|
33
|
+
* One trigger in the tab list.
|
|
34
|
+
*
|
|
35
|
+
* `pointer-coarse:h-11` is the other half of the floor. The trigger states its height
|
|
36
|
+
* through `py-1` and its content, so this states it outright rather than growing the
|
|
37
|
+
* padding to an implied 44: twelve pixels of padding either side of a twenty pixel
|
|
38
|
+
* line box is the floor reached by arithmetic, and an arithmetic floor is a number a
|
|
39
|
+
* later edit can change without noticing. See The coarse-pointer floor.
|
|
40
|
+
*/
|
|
22
41
|
function TabsTrigger({ className, ...props }) {
|
|
23
|
-
return (_jsx(TabsPrimitive.Tab, { "data-slot": "tabs-trigger", className: cn('text-foreground inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap outline-none', 'transition-[color,box-shadow,background-color] duration-fast ease-out', 'focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'data-[active]:bg-background data-[active]:shadow-xs', 'data-[disabled]:pointer-events-none data-[disabled]:opacity-50', "[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0", className), ...props }));
|
|
42
|
+
return (_jsx(TabsPrimitive.Tab, { "data-slot": "tabs-trigger", className: cn('text-foreground inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap outline-none', 'transition-[color,box-shadow,background-color] duration-fast ease-out', 'focus-visible:border-ring focus-visible:ring-ring focus-visible:ring-[3px]', 'data-[active]:bg-background data-[active]:shadow-xs', 'data-[disabled]:pointer-events-none data-[disabled]:opacity-50', "[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0", 'pointer-coarse:h-11', className), ...props }));
|
|
24
43
|
}
|
|
25
44
|
/** The panel a trigger reveals. */
|
|
26
45
|
function TabsContent({ className, ...props }) {
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* One tag in a group, and the tone it is drawn in.
|
|
4
|
+
*
|
|
5
|
+
* The tone is the caller's because it is a claim about the tag rather than about
|
|
6
|
+
* the design system: a skill, a recipient, a filter, and a licence key are all
|
|
7
|
+
* tags, and which of them deserves the destructive fill is the caller's decision
|
|
8
|
+
* about their own product. `neutral` is the answer when there is nothing to say,
|
|
9
|
+
* and it is the default for that reason.
|
|
10
|
+
*/
|
|
11
|
+
export type TagGroupTag = {
|
|
12
|
+
/**
|
|
13
|
+
* The caller's own identity for the tag, and what the remove control reports.
|
|
14
|
+
*
|
|
15
|
+
* Required, and required as a string rather than as the label: two tags can
|
|
16
|
+
* carry the same label, and a remove control that named the label would
|
|
17
|
+
* announce two identical buttons and leave the reader to guess which one they
|
|
18
|
+
* are on.
|
|
19
|
+
*/
|
|
20
|
+
id: string;
|
|
21
|
+
/** What the chip says. A node, because a tag is often an avatar and a word. */
|
|
22
|
+
label: ReactNode;
|
|
23
|
+
/** The fill the chip is drawn in. */
|
|
24
|
+
tone?: 'neutral' | 'info' | 'success' | 'warning' | 'destructive';
|
|
25
|
+
};
|
|
26
|
+
/** The props a single Tag accepts. */
|
|
27
|
+
export interface TagProps {
|
|
28
|
+
/** What the chip says. */
|
|
29
|
+
label: ReactNode;
|
|
30
|
+
/** The fill the chip is drawn in. */
|
|
31
|
+
tone?: TagGroupTag['tone'];
|
|
32
|
+
/**
|
|
33
|
+
* Called when the reader presses the remove control.
|
|
34
|
+
*
|
|
35
|
+
* Omit it and the chip is read-only, which is a legitimate state rather than a
|
|
36
|
+
* missing prop. See the note on `TagGroup` for the difference between a tag
|
|
37
|
+
* and a badge.
|
|
38
|
+
*/
|
|
39
|
+
onRemove?: () => void;
|
|
40
|
+
/**
|
|
41
|
+
* The accessible name of the remove control, naming the tag it removes.
|
|
42
|
+
*
|
|
43
|
+
* Required whenever `onRemove` is given, and the Component throws without it
|
|
44
|
+
* rather than drawing a button it cannot name.
|
|
45
|
+
*/
|
|
46
|
+
removeLabel?: string;
|
|
47
|
+
/** Layout only. */
|
|
48
|
+
className?: string;
|
|
49
|
+
}
|
|
50
|
+
/** The props a TagGroup accepts. */
|
|
51
|
+
export interface TagGroupProps {
|
|
52
|
+
/**
|
|
53
|
+
* The tags, in the order a reader should meet them.
|
|
54
|
+
*
|
|
55
|
+
* Required, and order is the caller's because it is a claim about importance.
|
|
56
|
+
* The group wraps onto the next line rather than truncating, so a set of
|
|
57
|
+
* thirty tags is thirty tags and not the first eight.
|
|
58
|
+
*/
|
|
59
|
+
tags: TagGroupTag[];
|
|
60
|
+
/**
|
|
61
|
+
* Called with a tag's `id` when the reader removes it.
|
|
62
|
+
*
|
|
63
|
+
* Omit it and the group is read-only, which is a legitimate state rather than a
|
|
64
|
+
* missing prop: a set of tags that were applied for the reader rather than
|
|
65
|
+
* chosen by them is a set of tags nobody can take back, and drawing a remove
|
|
66
|
+
* control there would promise a freedom the field does not have.
|
|
67
|
+
*/
|
|
68
|
+
onRemove?: (id: string) => void;
|
|
69
|
+
/**
|
|
70
|
+
* The accessible name of one tag's remove control, given that tag's label.
|
|
71
|
+
*
|
|
72
|
+
* Required whenever `onRemove` is given, and a function rather than a string
|
|
73
|
+
* for a reason Prism cannot design around: a tag's label is a node, so the
|
|
74
|
+
* name of the control that removes it cannot be composed from it. A tag that
|
|
75
|
+
* shows an avatar and a word has no string to interpolate, and one that shows
|
|
76
|
+
* a word and a count has a count the reader needs to hear in the name of the
|
|
77
|
+
* control that will take it away. The Component refuses rather than guessing,
|
|
78
|
+
* because the guess is a nameless button in every locale but one.
|
|
79
|
+
*/
|
|
80
|
+
removeLabel?: (label: ReactNode) => string;
|
|
81
|
+
/**
|
|
82
|
+
* The group's own name, drawn above the tags and used as its accessible name.
|
|
83
|
+
*
|
|
84
|
+
* A node and not a string, so the same element that a sighted reader reads is
|
|
85
|
+
* the one a screen reader names the group by. Without it the group is
|
|
86
|
+
* announced as an unlabelled group, which tells a reader nothing about why
|
|
87
|
+
* these particular tags are collected together.
|
|
88
|
+
*/
|
|
89
|
+
label?: ReactNode;
|
|
90
|
+
/**
|
|
91
|
+
* What to draw when there are no tags.
|
|
92
|
+
*
|
|
93
|
+
* An empty group with no `empty` renders nothing at all, which is the same
|
|
94
|
+
* choice `FactList` makes: a bordered box with a heading above it and nothing
|
|
95
|
+
* inside it reads as a rendering failure rather than as an absence. Never a
|
|
96
|
+
* placeholder chip: a chip that is not a tag, drawn where tags go, is a thing
|
|
97
|
+
* a reader tries to remove.
|
|
98
|
+
*/
|
|
99
|
+
empty?: ReactNode;
|
|
100
|
+
/** Layout only. */
|
|
101
|
+
className?: string;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* A wrapping row of tags the reader chose, each of which can be taken back.
|
|
105
|
+
*
|
|
106
|
+
* **A Tag is what the reader chose; a Badge is what they are told.** That is the
|
|
107
|
+
* whole difference between this and `badge.tsx`, and the remove control is all
|
|
108
|
+
* of it. A badge carries a status the system decided: a count, a plan name, a
|
|
109
|
+
* licence tier. A tag carries something the reader picked and can un-pick, and
|
|
110
|
+
* the control that un-picks it is the reason the two are different Components.
|
|
111
|
+
* Folding them together would mean either a badge with a remove control on it,
|
|
112
|
+
* which offers the reader a freedom the status does not have, or a tag with no
|
|
113
|
+
* remove control on it, which is a badge that happens to be round.
|
|
114
|
+
*
|
|
115
|
+
* **A group with no `onRemove` is read-only, and that is a legitimate state.**
|
|
116
|
+
* A set of tags applied for the reader, by an import, by a colleague or by a
|
|
117
|
+
* saved filter, is a real thing, and the honest way to draw it is as tags with
|
|
118
|
+
* no way to take one back. What is not honest is drawing the remove control
|
|
119
|
+
* anyway and having it do nothing, so the control is drawn exactly when
|
|
120
|
+
* `onRemove` is given. `TagGroup` throws if it is given one without `removeLabel`
|
|
121
|
+
* rather than shipping a nameless button.
|
|
122
|
+
*
|
|
123
|
+
* **The remove control's name has to name the tag, so it cannot be composed.**
|
|
124
|
+
* A tag's label is a node because a tag is often an avatar and a word, and the
|
|
125
|
+
* accessible name of the control that removes it has to include that word. Prism
|
|
126
|
+
* cannot interpolate a `ReactNode` into a sentence, so it asks for a function of
|
|
127
|
+
* the label instead of a template it fills in. The cost is real: every caller
|
|
128
|
+
* writes the sentence, once, in their own language, and a caller who has four
|
|
129
|
+
* tag groups writes it four times or writes it once and reuses it.
|
|
130
|
+
*
|
|
131
|
+
* **The group wraps and the label sits on its own line.** Tags accumulate, and a
|
|
132
|
+
* row that clipped or scrolled would hide tags a reader had chosen and cannot
|
|
133
|
+
* see. A group that reaches the end of its container starts a new line, so the
|
|
134
|
+
* set stays whole and the layout above it is the caller's to decide.
|
|
135
|
+
*
|
|
136
|
+
* It carries no directive. It holds no state: which tags exist and which one is
|
|
137
|
+
* being removed are the caller's, so the group is the same code whether the
|
|
138
|
+
* caller is a server component rendering a saved filter or a client component
|
|
139
|
+
* holding a form.
|
|
140
|
+
*/
|
|
141
|
+
declare function TagGroup({ tags, onRemove, removeLabel, label, empty, className, }: TagGroupProps): import("react").JSX.Element | null;
|
|
142
|
+
/**
|
|
143
|
+
* One tag on its own, for a caller placing a chip where no group is wanted.
|
|
144
|
+
*
|
|
145
|
+
* Everything said about a tag in `TagGroup` applies here, and the reason it is
|
|
146
|
+
* exported at all is that a chip has uses a group does not cover: the selected
|
|
147
|
+
* option in a combobox row, the one filter a panel is showing on its own, a
|
|
148
|
+
* token in a text field's own row. Each of those is one chip, and wrapping a
|
|
149
|
+
* single chip in a group would draw a label and a role the caller did not ask
|
|
150
|
+
* for.
|
|
151
|
+
*/
|
|
152
|
+
declare function Tag({ label, tone, onRemove, removeLabel, className, }: TagProps): import("react").JSX.Element;
|
|
153
|
+
export { TagGroup, Tag };
|
|
154
|
+
//# sourceMappingURL=tag-group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tag-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tag-group.tsx"],"names":[],"mappings":"AACA,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAI7C;;;;;;;;GAQG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB;;;;;;;OAOG;IACH,EAAE,EAAE,MAAM,CAAA;IACV,+EAA+E;IAC/E,KAAK,EAAE,SAAS,CAAA;IAChB,qCAAqC;IACrC,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAA;CAClE,CAAA;AAED,sCAAsC;AACtC,MAAM,WAAW,QAAQ;IACvB,0BAA0B;IAC1B,KAAK,EAAE,SAAS,CAAA;IAChB,qCAAqC;IACrC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,mBAAmB;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,oCAAoC;AACpC,MAAM,WAAW,aAAa;IAC5B;;;;;;OAMG;IACH,IAAI,EAAE,WAAW,EAAE,CAAA;IACnB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAA;IAC1C;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,mBAAmB;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAmCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,iBAAS,QAAQ,CAAC,EAChB,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,KAAK,EACL,SAAS,GACV,EAAE,aAAa,sCAsDf;AAED;;;;;;;;;GASG;AACH,iBAAS,GAAG,CAAC,EACX,KAAK,EACL,IAAgB,EAChB,QAAQ,EACR,WAAW,EACX,SAAS,GACV,EAAE,QAAQ,+BAmCV;AAED,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAA"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { XIcon } from 'lucide-react';
|
|
3
|
+
import { useId } from 'react';
|
|
4
|
+
import { cn } from '../../lib/utils.js';
|
|
5
|
+
/**
|
|
6
|
+
* The five fills a chip is drawn in, and nothing else.
|
|
7
|
+
*
|
|
8
|
+
* A tone names an intent and every one of them is a semantic utility, so a chip
|
|
9
|
+
* in a scoped pack boundary re-inks with everything around it. `info` is the
|
|
10
|
+
* brand hue at a tenth's strength with a border at four tenths, because the
|
|
11
|
+
* contract publishes no information role and inventing one here would be a
|
|
12
|
+
* second place a new colour gets decided.
|
|
13
|
+
*/
|
|
14
|
+
const TAG_TONE = {
|
|
15
|
+
neutral: 'bg-secondary text-secondary-foreground border-transparent',
|
|
16
|
+
info: 'bg-brand-ink/10 text-foreground border-brand-ink/40',
|
|
17
|
+
success: 'bg-success text-success-foreground border-transparent',
|
|
18
|
+
warning: 'bg-warning text-warning-foreground border-transparent',
|
|
19
|
+
destructive: 'bg-destructive text-destructive-foreground border-transparent',
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* The remove control, drawn once and shared by the group and the lone chip.
|
|
23
|
+
*
|
|
24
|
+
* The ink is left to the chip's tone: the control changes its opacity and its
|
|
25
|
+
* ring and never its colour, because a control that has to know which of five
|
|
26
|
+
* fills it is sitting on is a control whose contrast has to be checked five
|
|
27
|
+
* times and is right in none of them by default.
|
|
28
|
+
*
|
|
29
|
+
* On a coarse pointer the control takes the 44px floor and the chip grows to
|
|
30
|
+
* hold it, so a row of tags on a phone is a row of 44px pills. That is the price
|
|
31
|
+
* of the floor and it is paid visibly: the alternative is a 16px target sitting
|
|
32
|
+
* 4px from a label the reader also wants to press.
|
|
33
|
+
*/
|
|
34
|
+
const REMOVE_CONTROL = 'inline-flex size-4 shrink-0 items-center justify-center rounded-sm opacity-70 outline-none transition-opacity duration-fast ease-out pointer-coarse:size-11 hover:opacity-100 focus-visible:opacity-100 focus-visible:ring-ring focus-visible:ring-[3px]';
|
|
35
|
+
/**
|
|
36
|
+
* A wrapping row of tags the reader chose, each of which can be taken back.
|
|
37
|
+
*
|
|
38
|
+
* **A Tag is what the reader chose; a Badge is what they are told.** That is the
|
|
39
|
+
* whole difference between this and `badge.tsx`, and the remove control is all
|
|
40
|
+
* of it. A badge carries a status the system decided: a count, a plan name, a
|
|
41
|
+
* licence tier. A tag carries something the reader picked and can un-pick, and
|
|
42
|
+
* the control that un-picks it is the reason the two are different Components.
|
|
43
|
+
* Folding them together would mean either a badge with a remove control on it,
|
|
44
|
+
* which offers the reader a freedom the status does not have, or a tag with no
|
|
45
|
+
* remove control on it, which is a badge that happens to be round.
|
|
46
|
+
*
|
|
47
|
+
* **A group with no `onRemove` is read-only, and that is a legitimate state.**
|
|
48
|
+
* A set of tags applied for the reader, by an import, by a colleague or by a
|
|
49
|
+
* saved filter, is a real thing, and the honest way to draw it is as tags with
|
|
50
|
+
* no way to take one back. What is not honest is drawing the remove control
|
|
51
|
+
* anyway and having it do nothing, so the control is drawn exactly when
|
|
52
|
+
* `onRemove` is given. `TagGroup` throws if it is given one without `removeLabel`
|
|
53
|
+
* rather than shipping a nameless button.
|
|
54
|
+
*
|
|
55
|
+
* **The remove control's name has to name the tag, so it cannot be composed.**
|
|
56
|
+
* A tag's label is a node because a tag is often an avatar and a word, and the
|
|
57
|
+
* accessible name of the control that removes it has to include that word. Prism
|
|
58
|
+
* cannot interpolate a `ReactNode` into a sentence, so it asks for a function of
|
|
59
|
+
* the label instead of a template it fills in. The cost is real: every caller
|
|
60
|
+
* writes the sentence, once, in their own language, and a caller who has four
|
|
61
|
+
* tag groups writes it four times or writes it once and reuses it.
|
|
62
|
+
*
|
|
63
|
+
* **The group wraps and the label sits on its own line.** Tags accumulate, and a
|
|
64
|
+
* row that clipped or scrolled would hide tags a reader had chosen and cannot
|
|
65
|
+
* see. A group that reaches the end of its container starts a new line, so the
|
|
66
|
+
* set stays whole and the layout above it is the caller's to decide.
|
|
67
|
+
*
|
|
68
|
+
* It carries no directive. It holds no state: which tags exist and which one is
|
|
69
|
+
* being removed are the caller's, so the group is the same code whether the
|
|
70
|
+
* caller is a server component rendering a saved filter or a client component
|
|
71
|
+
* holding a form.
|
|
72
|
+
*/
|
|
73
|
+
function TagGroup({ tags, onRemove, removeLabel, label, empty, className, }) {
|
|
74
|
+
const generated = useId();
|
|
75
|
+
const labelId = `${generated}-label`;
|
|
76
|
+
if (onRemove !== undefined && removeLabel === undefined) {
|
|
77
|
+
throw new Error('TagGroup: a removable group needs removeLabel, because the accessible name of a remove control has ' +
|
|
78
|
+
'to name the tag it removes and this Component cannot compose a name from a ReactNode. Pass a ' +
|
|
79
|
+
'function of the tag label, or drop onRemove for a group the reader cannot change.');
|
|
80
|
+
}
|
|
81
|
+
if (tags.length === 0 && empty === undefined)
|
|
82
|
+
return null;
|
|
83
|
+
return (_jsxs("div", { "data-slot": "tag-group", role: "group", "aria-labelledby": label === undefined ? undefined : labelId, className: cn('flex flex-wrap items-center gap-1.5', className), children: [label === undefined ? null : (_jsx("span", { id: labelId, "data-slot": "tag-group-label", className: "text-muted-foreground w-full text-xs font-medium tracking-wide uppercase", children: label })), tags.length === 0 ? (_jsx("p", { "data-slot": "tag-group-empty", className: "text-muted-foreground text-sm", children: empty })) : (tags.map((tag) => (_jsx(Tag, { label: tag.label, tone: tag.tone, ...(onRemove === undefined
|
|
84
|
+
? null
|
|
85
|
+
: {
|
|
86
|
+
onRemove: () => onRemove(tag.id),
|
|
87
|
+
// The throw above is what makes this call total. The compiler
|
|
88
|
+
// cannot see it, so the optional call is the shape that is
|
|
89
|
+
// honest at the type level and unreachable at the run level.
|
|
90
|
+
removeLabel: removeLabel?.(tag.label),
|
|
91
|
+
}) }, tag.id))))] }));
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* One tag on its own, for a caller placing a chip where no group is wanted.
|
|
95
|
+
*
|
|
96
|
+
* Everything said about a tag in `TagGroup` applies here, and the reason it is
|
|
97
|
+
* exported at all is that a chip has uses a group does not cover: the selected
|
|
98
|
+
* option in a combobox row, the one filter a panel is showing on its own, a
|
|
99
|
+
* token in a text field's own row. Each of those is one chip, and wrapping a
|
|
100
|
+
* single chip in a group would draw a label and a role the caller did not ask
|
|
101
|
+
* for.
|
|
102
|
+
*/
|
|
103
|
+
function Tag({ label, tone = 'neutral', onRemove, removeLabel, className, }) {
|
|
104
|
+
if (onRemove !== undefined && removeLabel === undefined) {
|
|
105
|
+
throw new Error('Tag: a removable tag needs removeLabel, because a remove control with no accessible name is ' +
|
|
106
|
+
'announced as a button and nothing else. Pass the name for this tag, or drop onRemove for a ' +
|
|
107
|
+
'read-only chip.');
|
|
108
|
+
}
|
|
109
|
+
return (_jsxs("span", { "data-slot": "tag", "data-tone": tone, className: cn('inline-flex max-w-full items-center gap-1 rounded-md border px-2 py-0.5 text-xs font-medium', TAG_TONE[tone], className), children: [_jsx("span", { "data-slot": "tag-label", className: "min-w-0 truncate", children: label }), onRemove === undefined ? null : (_jsx("button", { type: "button", "data-slot": "tag-remove", "aria-label": removeLabel, onClick: onRemove, className: REMOVE_CONTROL, children: _jsx(XIcon, { className: "size-3", "aria-hidden": "true" }) }))] }));
|
|
110
|
+
}
|
|
111
|
+
export { TagGroup, Tag };
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Where a task is, as one value the caller holds.
|
|
4
|
+
*
|
|
5
|
+
* Four positions and a union, for the reason `LifecycleButtonState` states in
|
|
6
|
+
* full: a boolean has two answers, and the two this cannot express are the two
|
|
7
|
+
* that cost the most. A task that failed is not "running: false", and a task
|
|
8
|
+
* whose position is known is not a spinner. Encoding four positions across a
|
|
9
|
+
* boolean and a number puts them in two props that do not know about each other,
|
|
10
|
+
* and every consumer then draws all four combinations itself.
|
|
11
|
+
*
|
|
12
|
+
* `idle` exists so a caller can hold a resting position in the same state it
|
|
13
|
+
* holds the other three, rather than unmounting on the transitions it did not
|
|
14
|
+
* expect. See the JSDoc on the Component for what `idle` draws, which is nothing.
|
|
15
|
+
*/
|
|
16
|
+
export type TaskProgressPhase =
|
|
17
|
+
/** Nothing has been asked, or nothing is running. This Component draws no bar. */
|
|
18
|
+
{
|
|
19
|
+
phase: 'idle';
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* The task is running.
|
|
23
|
+
*
|
|
24
|
+
* `progress` is a real measurement rather than a clock: a byte count, a row
|
|
25
|
+
* count or a completed-step count gives a ratio, and the reader is told the
|
|
26
|
+
* position. Omit it and the work is of unknown length, which is a different
|
|
27
|
+
* fact and is drawn and announced as such.
|
|
28
|
+
*/
|
|
29
|
+
| {
|
|
30
|
+
phase: 'running';
|
|
31
|
+
progress?: number;
|
|
32
|
+
progressText?: string;
|
|
33
|
+
}
|
|
34
|
+
/** The task finished, with the caller's own sentence about what it did. */
|
|
35
|
+
| {
|
|
36
|
+
phase: 'succeeded';
|
|
37
|
+
outcome: ReactNode;
|
|
38
|
+
}
|
|
39
|
+
/** The task did not finish, with the caller's own sentence about why. */
|
|
40
|
+
| {
|
|
41
|
+
phase: 'failed';
|
|
42
|
+
reason: ReactNode;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* The props the Task progress accepts.
|
|
46
|
+
*
|
|
47
|
+
* A declared interface rather than a forwarded native one. There is no single
|
|
48
|
+
* element to forward to, because the Component draws a line, a bar and an
|
|
49
|
+
* announcement, and it takes no callback at all, so there is nothing for a
|
|
50
|
+
* forwarded handler to add.
|
|
51
|
+
*/
|
|
52
|
+
export interface TaskProgressProps {
|
|
53
|
+
/**
|
|
54
|
+
* Where the task is.
|
|
55
|
+
*
|
|
56
|
+
* Required and controlled, and the whole of the Component: the caller owns the
|
|
57
|
+
* request, so the caller owns where the request is. Prism draws the line, the
|
|
58
|
+
* mark, the bar and the announcement that a position implies, and calls nothing.
|
|
59
|
+
* It never moves the position, holds no promise and runs no clock.
|
|
60
|
+
*/
|
|
61
|
+
phase: TaskProgressPhase;
|
|
62
|
+
/**
|
|
63
|
+
* What the task is, read beside the bar and at the outcome.
|
|
64
|
+
*
|
|
65
|
+
* Required, and a `ReactNode` because a caller's task is often more than a
|
|
66
|
+
* word: "Exporting 12 invoices", "Rebuilding the estate index". It is drawn
|
|
67
|
+
* rather than derived, because a Component cannot describe work it has not been
|
|
68
|
+
* told about.
|
|
69
|
+
*/
|
|
70
|
+
label: ReactNode;
|
|
71
|
+
/** Layout only. Changing a Prism-owned visual property from here is prohibited. */
|
|
72
|
+
className?: string;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* One line that follows a pending task from start to resolution, and announces the
|
|
76
|
+
* outcome.
|
|
77
|
+
*
|
|
78
|
+
* **It is the running state and not the control that starts it.**
|
|
79
|
+
* `LifecycleButton` is the button a reader presses to begin a save, a publish or
|
|
80
|
+
* an export, and it carries the label, the mark, the meter, the failure and the
|
|
81
|
+
* retry because all of those belong to a control somebody is looking at. This is
|
|
82
|
+
* the other half: a task the caller started somewhere else, or started on a
|
|
83
|
+
* schedule, or started on another device, whose position the reader has to be able
|
|
84
|
+
* to find without hunting for the control that began it. The difference is not
|
|
85
|
+
* that one has a bar and the other does not; both draw a bar. The difference is
|
|
86
|
+
* that this Component has no `onActivate`, no retry and no idle label, because a
|
|
87
|
+
* line is not something a reader presses, and a control that pressed nothing is a
|
|
88
|
+
* control that lies. A caller who wants both in one place composes the two.
|
|
89
|
+
*
|
|
90
|
+
* **The bar exists only while the task is running, and that is the honest shape.**
|
|
91
|
+
* A bar at one hundred percent is a measurement of nothing, and it would sit on
|
|
92
|
+
* the page until the caller cleared it while the outcome line said what actually
|
|
93
|
+
* happened. So the bar is the running position's own, it leaves with it, and the
|
|
94
|
+
* settled positions draw the caller's sentence and a mark. The cost is that a
|
|
95
|
+
* reader watching a long task sees no completion bar to watch reach the end; the
|
|
96
|
+
* announcement is what tells them, and that is the same arrangement
|
|
97
|
+
* `LifecycleButton` settles at.
|
|
98
|
+
*
|
|
99
|
+
* **`idle` renders nothing, and the reason is the same one `LiveRegion` gives.**
|
|
100
|
+
* A Component holding a task that is not running has nothing to report, and a bar
|
|
101
|
+
* at zero is a claim that work is in progress. So the resting position draws no
|
|
102
|
+
* element, which also means a caller that wants the task's name visible before it
|
|
103
|
+
* starts draws the name themselves. **The cost is that this Component cannot be
|
|
104
|
+
* the only thing on the page**, because a line that vanishes is a line whose
|
|
105
|
+
* arrival shifts the layout around it, and a caller who needs the space held
|
|
106
|
+
* reserves it.
|
|
107
|
+
*
|
|
108
|
+
* **The determinate fill is legal motion, and the reason is that it is bound to a
|
|
109
|
+
* real state transition.** The bar is `Progress`, which eases its width on the
|
|
110
|
+
* base duration; there is no keyframe, no loop and no cycle anywhere in this
|
|
111
|
+
* Component, because a bar that is moving because a number changed is state
|
|
112
|
+
* feedback under the first of the two motion laws in this system and nothing
|
|
113
|
+
* else. A task with no number is drawn and announced as indeterminate, and the
|
|
114
|
+
* Component refuses to fill a bar it has no number for: the refusal is a thrown
|
|
115
|
+
* diagnostic rather than a silently invented position.
|
|
116
|
+
*
|
|
117
|
+
* **`Progress` and `LiveRegion` are composed, not redrawn, and the reason the
|
|
118
|
+
* outcome is announced at all is that the control is not on screen.** A reader who
|
|
119
|
+
* started a task, watched it run and looked away has had no answer, and the
|
|
120
|
+
* settled line is often the only evidence on the page that anything happened. So
|
|
121
|
+
* the outcome goes through a live region, polite for a success because a finished
|
|
122
|
+
* export waits its turn, and assertive for a failure because a refused one does
|
|
123
|
+
* not. The reason line beneath is deliberately not an alert, so a failure is
|
|
124
|
+
* announced once rather than twice in the same commit.
|
|
125
|
+
*
|
|
126
|
+
* **The region is mounted at the outcome rather than held empty, and the cost is
|
|
127
|
+
* real.** `LiveRegion` deliberately renders nothing when it has nothing to say,
|
|
128
|
+
* because a region sitting on the page permanently announces unrelated changes of
|
|
129
|
+
* its ancestors. The consequence is that this region is created at the moment of
|
|
130
|
+
* its content, and a live region created with its content is announced by most
|
|
131
|
+
* screen readers and not by all of them. A caller who needs the guarantee on every
|
|
132
|
+
* transition keeps a `LiveRegion` of their own beside this Component and passes
|
|
133
|
+
* the outcome into it, which is two lines and no override of anything here.
|
|
134
|
+
*
|
|
135
|
+
* **It is a server Component**, and that is a deliberate claim rather than an
|
|
136
|
+
* accident. It holds no state, runs no hook, reads no context and takes no
|
|
137
|
+
* handler: the only callback-shaped thing here is the caller's `phase`, which is
|
|
138
|
+
* data. The two Components it composes carry the client work between them, so
|
|
139
|
+
* `Progress` is a client island inside a server line and `LiveRegion` needs no
|
|
140
|
+
* JavaScript at all, because a live region is announced by the browser's own
|
|
141
|
+
* mutation observer. What that costs is that the caller owns the transition, so a
|
|
142
|
+
* caller who moves the phase from a response handler is already in the client
|
|
143
|
+
* graph and pays for it there; a caller who moves it on a server action gets the
|
|
144
|
+
* line redrawn with no announcement, which is the ordinary case for a page load
|
|
145
|
+
* and the wrong case for a task that finished while the reader was on the page.
|
|
146
|
+
*/
|
|
147
|
+
declare function TaskProgress({ phase, label, className }: TaskProgressProps): import("react").JSX.Element | null;
|
|
148
|
+
export { TaskProgress };
|
|
149
|
+
//# sourceMappingURL=task-progress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-progress.d.ts","sourceRoot":"","sources":["../../../src/components/ui/task-progress.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB;AAC3B,kFAAkF;AAChF;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE;AACnB;;;;;;;GAOG;GACD;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE;AAChE,2EAA2E;GACzE;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,SAAS,CAAA;CAAE;AAC5C,yEAAyE;GACvE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA;AAE1C;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;OAOG;IACH,KAAK,EAAE,iBAAiB,CAAA;IACxB;;;;;;;OAOG;IACH,KAAK,EAAE,SAAS,CAAA;IAChB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AACH,iBAAS,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,iBAAiB,sCAyDnE;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { CircleCheckIcon, TriangleAlertIcon } from 'lucide-react';
|
|
3
|
+
import { LiveRegion } from './live-region.js';
|
|
4
|
+
import { Progress } from './progress.js';
|
|
5
|
+
import { cn } from '../../lib/utils.js';
|
|
6
|
+
/**
|
|
7
|
+
* The mark each settled position carries, and the ink it is drawn in.
|
|
8
|
+
*
|
|
9
|
+
* Two entries and not four, because the running position carries a bar rather
|
|
10
|
+
* than a mark, and a ring beside a line that already says what is happening is a
|
|
11
|
+
* second copy of a sentence the reader can already see. The inks are the semantic
|
|
12
|
+
* state roles rather than a ramp step, and the shapes differ as well as the
|
|
13
|
+
* colours, so a reader who cannot separate them still reads which is which.
|
|
14
|
+
*/
|
|
15
|
+
const SETTLED_MARK = {
|
|
16
|
+
succeeded: { Mark: CircleCheckIcon, ink: 'text-success' },
|
|
17
|
+
failed: { Mark: TriangleAlertIcon, ink: 'text-destructive' },
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* One line that follows a pending task from start to resolution, and announces the
|
|
21
|
+
* outcome.
|
|
22
|
+
*
|
|
23
|
+
* **It is the running state and not the control that starts it.**
|
|
24
|
+
* `LifecycleButton` is the button a reader presses to begin a save, a publish or
|
|
25
|
+
* an export, and it carries the label, the mark, the meter, the failure and the
|
|
26
|
+
* retry because all of those belong to a control somebody is looking at. This is
|
|
27
|
+
* the other half: a task the caller started somewhere else, or started on a
|
|
28
|
+
* schedule, or started on another device, whose position the reader has to be able
|
|
29
|
+
* to find without hunting for the control that began it. The difference is not
|
|
30
|
+
* that one has a bar and the other does not; both draw a bar. The difference is
|
|
31
|
+
* that this Component has no `onActivate`, no retry and no idle label, because a
|
|
32
|
+
* line is not something a reader presses, and a control that pressed nothing is a
|
|
33
|
+
* control that lies. A caller who wants both in one place composes the two.
|
|
34
|
+
*
|
|
35
|
+
* **The bar exists only while the task is running, and that is the honest shape.**
|
|
36
|
+
* A bar at one hundred percent is a measurement of nothing, and it would sit on
|
|
37
|
+
* the page until the caller cleared it while the outcome line said what actually
|
|
38
|
+
* happened. So the bar is the running position's own, it leaves with it, and the
|
|
39
|
+
* settled positions draw the caller's sentence and a mark. The cost is that a
|
|
40
|
+
* reader watching a long task sees no completion bar to watch reach the end; the
|
|
41
|
+
* announcement is what tells them, and that is the same arrangement
|
|
42
|
+
* `LifecycleButton` settles at.
|
|
43
|
+
*
|
|
44
|
+
* **`idle` renders nothing, and the reason is the same one `LiveRegion` gives.**
|
|
45
|
+
* A Component holding a task that is not running has nothing to report, and a bar
|
|
46
|
+
* at zero is a claim that work is in progress. So the resting position draws no
|
|
47
|
+
* element, which also means a caller that wants the task's name visible before it
|
|
48
|
+
* starts draws the name themselves. **The cost is that this Component cannot be
|
|
49
|
+
* the only thing on the page**, because a line that vanishes is a line whose
|
|
50
|
+
* arrival shifts the layout around it, and a caller who needs the space held
|
|
51
|
+
* reserves it.
|
|
52
|
+
*
|
|
53
|
+
* **The determinate fill is legal motion, and the reason is that it is bound to a
|
|
54
|
+
* real state transition.** The bar is `Progress`, which eases its width on the
|
|
55
|
+
* base duration; there is no keyframe, no loop and no cycle anywhere in this
|
|
56
|
+
* Component, because a bar that is moving because a number changed is state
|
|
57
|
+
* feedback under the first of the two motion laws in this system and nothing
|
|
58
|
+
* else. A task with no number is drawn and announced as indeterminate, and the
|
|
59
|
+
* Component refuses to fill a bar it has no number for: the refusal is a thrown
|
|
60
|
+
* diagnostic rather than a silently invented position.
|
|
61
|
+
*
|
|
62
|
+
* **`Progress` and `LiveRegion` are composed, not redrawn, and the reason the
|
|
63
|
+
* outcome is announced at all is that the control is not on screen.** A reader who
|
|
64
|
+
* started a task, watched it run and looked away has had no answer, and the
|
|
65
|
+
* settled line is often the only evidence on the page that anything happened. So
|
|
66
|
+
* the outcome goes through a live region, polite for a success because a finished
|
|
67
|
+
* export waits its turn, and assertive for a failure because a refused one does
|
|
68
|
+
* not. The reason line beneath is deliberately not an alert, so a failure is
|
|
69
|
+
* announced once rather than twice in the same commit.
|
|
70
|
+
*
|
|
71
|
+
* **The region is mounted at the outcome rather than held empty, and the cost is
|
|
72
|
+
* real.** `LiveRegion` deliberately renders nothing when it has nothing to say,
|
|
73
|
+
* because a region sitting on the page permanently announces unrelated changes of
|
|
74
|
+
* its ancestors. The consequence is that this region is created at the moment of
|
|
75
|
+
* its content, and a live region created with its content is announced by most
|
|
76
|
+
* screen readers and not by all of them. A caller who needs the guarantee on every
|
|
77
|
+
* transition keeps a `LiveRegion` of their own beside this Component and passes
|
|
78
|
+
* the outcome into it, which is two lines and no override of anything here.
|
|
79
|
+
*
|
|
80
|
+
* **It is a server Component**, and that is a deliberate claim rather than an
|
|
81
|
+
* accident. It holds no state, runs no hook, reads no context and takes no
|
|
82
|
+
* handler: the only callback-shaped thing here is the caller's `phase`, which is
|
|
83
|
+
* data. The two Components it composes carry the client work between them, so
|
|
84
|
+
* `Progress` is a client island inside a server line and `LiveRegion` needs no
|
|
85
|
+
* JavaScript at all, because a live region is announced by the browser's own
|
|
86
|
+
* mutation observer. What that costs is that the caller owns the transition, so a
|
|
87
|
+
* caller who moves the phase from a response handler is already in the client
|
|
88
|
+
* graph and pays for it there; a caller who moves it on a server action gets the
|
|
89
|
+
* line redrawn with no announcement, which is the ordinary case for a page load
|
|
90
|
+
* and the wrong case for a task that finished while the reader was on the page.
|
|
91
|
+
*/
|
|
92
|
+
function TaskProgress({ phase, label, className }) {
|
|
93
|
+
if (phase.phase === 'idle')
|
|
94
|
+
return null;
|
|
95
|
+
if (phase.phase === 'running' && phase.progress !== undefined && phase.progressText === undefined) {
|
|
96
|
+
throw new Error('TaskProgress: the running phase carries a progress fraction and no progressText, so the bar would be ' +
|
|
97
|
+
'announced as a decimal between zero and one, which is a measurement of nothing a reader can act on. ' +
|
|
98
|
+
'Pass the position in the words the reader would say it, or drop progress and let the bar be indeterminate.');
|
|
99
|
+
}
|
|
100
|
+
const running = phase.phase === 'running';
|
|
101
|
+
const settled = phase.phase === 'succeeded' || phase.phase === 'failed';
|
|
102
|
+
const mark = settled ? SETTLED_MARK[phase.phase] : null;
|
|
103
|
+
const outcome = phase.phase === 'succeeded' ? phase.outcome : phase.phase === 'failed' ? phase.reason : undefined;
|
|
104
|
+
return (_jsxs("div", { "data-slot": "task-progress", className: cn('flex w-full flex-col gap-1.5', className), children: [_jsxs("div", { "data-slot": "task-progress-line", className: "flex items-center gap-2", children: [mark === null ? null : _jsx(mark.Mark, { className: mark.ink, "aria-hidden": "true" }), _jsx("span", { "data-slot": "task-progress-label", className: "text-sm font-medium", children: label })] }), running ? (_jsx(Progress, { "data-slot": "task-progress-bar",
|
|
105
|
+
// The clamped fraction and the same Component with no value, so the two
|
|
106
|
+
// are one question asked with and without an answer rather than a bar
|
|
107
|
+
// and a ring on one line.
|
|
108
|
+
value: phase.progress === undefined ? null : Math.min(1, Math.max(0, phase.progress)), max: 1, valueText: phase.progressText })) : null, outcome === undefined ? null : (_jsx("p", { "data-slot": "task-progress-outcome", className: "text-muted-foreground text-sm", children: outcome })), settled ? (_jsx(LiveRegion, { className: "sr-only", politeness: phase.phase === 'failed' ? 'assertive' : 'polite', children: outcome })) : null] }));
|
|
109
|
+
}
|
|
110
|
+
export { TaskProgress };
|