@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
|
@@ -0,0 +1,355 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import { type HeadingLevel } from '../../components/ui/section.js';
|
|
3
|
+
/**
|
|
4
|
+
* A person, as a tracker shows one: a name and the portrait where there is one.
|
|
5
|
+
*
|
|
6
|
+
* The same shape `Team01` takes, repeated rather than imported for the reason that
|
|
7
|
+
* file gives: a Block that is not a card grid is not a place a person's identity
|
|
8
|
+
* belongs, and a caller who draws a person in a comment thread and the same person
|
|
9
|
+
* on a team page is better served by one field name than by a type exported from
|
|
10
|
+
* whichever Block they found first.
|
|
11
|
+
*/
|
|
12
|
+
export type IssueDetail01Person = {
|
|
13
|
+
/** The person's own name, as they publish it. */
|
|
14
|
+
name: string;
|
|
15
|
+
/**
|
|
16
|
+
* The portrait, with the name the initials come from.
|
|
17
|
+
*
|
|
18
|
+
* A name rather than a string, because an `Avatar` with no fallback is an empty
|
|
19
|
+
* circle for exactly as long as the image takes to arrive and forever if it never
|
|
20
|
+
* does.
|
|
21
|
+
*/
|
|
22
|
+
avatar?: {
|
|
23
|
+
/** The photograph. Omit it, or pass a URL that fails, for the initials. */
|
|
24
|
+
src?: string;
|
|
25
|
+
/** The person's name, which is the initials' source. */
|
|
26
|
+
name: string;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* One fact the reader is entitled to be told about the issue, and what it reads.
|
|
31
|
+
*
|
|
32
|
+
* `label` and `value` are separate because they answer different questions for
|
|
33
|
+
* different readers: the label is what a reader scanning the field list is
|
|
34
|
+
* looking for, and the value is what a reader who has arrived at that field wants.
|
|
35
|
+
* The value is a node because the facts a tracker hangs off an issue are the
|
|
36
|
+
* caller's own and they are not all text: a status word, a date, a link, a chip, a
|
|
37
|
+
* count and a nested list are all things a caller puts in one slot, and a
|
|
38
|
+
* `string` would force a flattening that loses whichever one it could not hold.
|
|
39
|
+
*/
|
|
40
|
+
export type IssueDetail01Field = {
|
|
41
|
+
/** A stable key for the field, so a test and the caller can name one of them. */
|
|
42
|
+
id: string;
|
|
43
|
+
/** What the fact is, in the product's own words. */
|
|
44
|
+
label: string;
|
|
45
|
+
/** What it reads. */
|
|
46
|
+
value: ReactNode;
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* One comment on the issue: who wrote it, when, and what they said.
|
|
50
|
+
*
|
|
51
|
+
* `body` is a node and is not optional, because a comment with no body is not a
|
|
52
|
+
* comment: it is a reaction, and a product that has reactions has somewhere else
|
|
53
|
+
* to put them. `author` is required rather than optional for the same reason a
|
|
54
|
+
* comment thread cannot start with a reading: an unattributed comment is a claim
|
|
55
|
+
* nobody can check, and a tracker that allows one is a tracker whose history is not
|
|
56
|
+
* a record.
|
|
57
|
+
*/
|
|
58
|
+
export type IssueDetail01Comment = {
|
|
59
|
+
/** A stable key for the comment. */
|
|
60
|
+
id: string;
|
|
61
|
+
/** Who wrote it. */
|
|
62
|
+
author: IssueDetail01Person;
|
|
63
|
+
/**
|
|
64
|
+
* When it was written, in whichever of the three forms the caller holds it.
|
|
65
|
+
*
|
|
66
|
+
* Omit it for a comment with no moment, which is a real one: an imported
|
|
67
|
+
* archive and a webhook that posts without a clock both produce comments with
|
|
68
|
+
* no date, and a Block that invented one would be claiming a fact.
|
|
69
|
+
*/
|
|
70
|
+
at?: number | string;
|
|
71
|
+
/**
|
|
72
|
+
* The sentence for that moment, given the moment.
|
|
73
|
+
*
|
|
74
|
+
* Optional rather than required, and the difference from a progress bar is the
|
|
75
|
+
* difference between a number and a date: a bar at forty per cent with no
|
|
76
|
+
* sentence announces a figure meaning whatever the reader assumes, while a date
|
|
77
|
+
* in the reader's own locale is already a complete reading. The sentence is
|
|
78
|
+
* there for the reader who wants to know how stale the thread is rather than
|
|
79
|
+
* when it was written, and the honest cost is that a thread whose comments carry
|
|
80
|
+
* no `at` shows a reading and no age.
|
|
81
|
+
*/
|
|
82
|
+
dateLabel?: (value: number | string) => string;
|
|
83
|
+
/** What they said. */
|
|
84
|
+
body: ReactNode;
|
|
85
|
+
};
|
|
86
|
+
/**
|
|
87
|
+
* The issue itself: the key a machine knows it by, the sentence a person reads,
|
|
88
|
+
* where it stands, who opened it, when, and the facts the caller says a reader may
|
|
89
|
+
* be told.
|
|
90
|
+
*/
|
|
91
|
+
export type IssueDetail01Issue = {
|
|
92
|
+
/**
|
|
93
|
+
* The issue's own key, as its system spells it: `NX-412`, `GH-1180`, a UUID.
|
|
94
|
+
*
|
|
95
|
+
* Drawn in the mono face above the title, and that is the whole reason it is
|
|
96
|
+
* there and the whole reason it is set that way. A key is machine notation: it
|
|
97
|
+
* is what a reader pastes into a search box, quotes in a message and cites in a
|
|
98
|
+
* review, and this repository annotates machine-readable values with the mono
|
|
99
|
+
* stack rather than with anything else. It is a separate field from the title
|
|
100
|
+
* rather than part of it because the two answer different questions and are read
|
|
101
|
+
* at different moments: a reader who has the key wants the issue and ignores the
|
|
102
|
+
* sentence, and a reader who has the sentence has no use for the key.
|
|
103
|
+
*/
|
|
104
|
+
key: string;
|
|
105
|
+
/**
|
|
106
|
+
* The issue's title, in the words its author wrote.
|
|
107
|
+
*
|
|
108
|
+
* It is the section heading rather than a field in the surface, because an issue
|
|
109
|
+
* detail whose title is a line of body text has already lost the outline: a
|
|
110
|
+
* reader navigating by heading would meet the section and then nothing until the
|
|
111
|
+
* fields.
|
|
112
|
+
*/
|
|
113
|
+
title: string;
|
|
114
|
+
/**
|
|
115
|
+
* Where the issue stands, in the tracker's own vocabulary.
|
|
116
|
+
*
|
|
117
|
+
* A string and not a union, because an issue tracker and a task list and a
|
|
118
|
+
* support queue all have a state column and all three disagree about what the
|
|
119
|
+
* values are. The words beside the dot are the caller's and the tone is drawn
|
|
120
|
+
* from the table above, and both halves of the column are the caller's to keep.
|
|
121
|
+
*/
|
|
122
|
+
state: string;
|
|
123
|
+
/**
|
|
124
|
+
* The words for that state.
|
|
125
|
+
*
|
|
126
|
+
* Optional in the type and required in practice, because every issue carries a
|
|
127
|
+
* state, and the run throws without it. A dot with no sentence beside it is the
|
|
128
|
+
* one arrangement every Component in this package refuses to draw, for the same
|
|
129
|
+
* reason each time: a state a reader can only see is a state nobody can act on.
|
|
130
|
+
*/
|
|
131
|
+
stateLabel?: string;
|
|
132
|
+
/** Who opened it. Omit it for an issue imported with no author. */
|
|
133
|
+
author?: IssueDetail01Person;
|
|
134
|
+
/**
|
|
135
|
+
* When it was opened, in whichever of the three forms the caller holds it.
|
|
136
|
+
*
|
|
137
|
+
* Handed to `RelativeTime` untouched, so the reading a reader sees is the
|
|
138
|
+
* platform's in their own locale. See the Block JSDoc for why this Block formats
|
|
139
|
+
* nothing and takes the sentence from the caller instead.
|
|
140
|
+
*/
|
|
141
|
+
openedAt?: number | string;
|
|
142
|
+
/**
|
|
143
|
+
* The sentence for that moment, given the moment.
|
|
144
|
+
*
|
|
145
|
+
* Optional, for the reason `IssueDetail01Comment.dateLabel` gives: a localised
|
|
146
|
+
* date is already a complete reading and the sentence is the caller's addition
|
|
147
|
+
* for a reader who wants the age rather than the date.
|
|
148
|
+
*/
|
|
149
|
+
dateLabel?: (value: number | string) => string;
|
|
150
|
+
/**
|
|
151
|
+
* What the issue says, as a node.
|
|
152
|
+
*
|
|
153
|
+
* The caller's own writing, and it is drawn through `Prose` because an issue body
|
|
154
|
+
* is prose written by a person rather than a field a Block composed: it has
|
|
155
|
+
* paragraphs, it has lists, it has a code block in it, and `Prose` styles a
|
|
156
|
+
* consumer's plain elements as this system without asking the consumer for a
|
|
157
|
+
* class. A Block that set a body as one muted paragraph would flatten the three
|
|
158
|
+
* bodies out of the four that are not one paragraph.
|
|
159
|
+
*/
|
|
160
|
+
body?: ReactNode;
|
|
161
|
+
/**
|
|
162
|
+
* The facts a reader is entitled to be told about this issue, in the order they
|
|
163
|
+
* should be read.
|
|
164
|
+
*
|
|
165
|
+
* The caller's list, and the reason is the argument the whole Block rests on. An
|
|
166
|
+
* issue detail surface with a fixed set of fields is a surface that decides what a
|
|
167
|
+
* reader may be told about an issue, and that decision is invisible in a review
|
|
168
|
+
* because the rendered surface looks complete: four labelled values and a
|
|
169
|
+
* comment thread read as a finished page. A tracker whose issues carry a story
|
|
170
|
+
* point, a sprint, an epic, a customer and a severity has five facts this system
|
|
171
|
+
* knows nothing about, and a surface that named four of them would have to be
|
|
172
|
+
* forked to carry the fifth, in a package whose whole promise is that there is no
|
|
173
|
+
* override path. So Prism names no fields at all and draws the caller's, and the
|
|
174
|
+
* cost is stated rather than hidden: the field list has no heading of its own, so
|
|
175
|
+
* a caller who wants one composes a title into the first field or draws the list
|
|
176
|
+
* themselves.
|
|
177
|
+
*/
|
|
178
|
+
fields?: IssueDetail01Field[];
|
|
179
|
+
/** The caller's own chips for this issue, in the order they should be met. */
|
|
180
|
+
labels?: {
|
|
181
|
+
id: string;
|
|
182
|
+
label: ReactNode;
|
|
183
|
+
}[];
|
|
184
|
+
};
|
|
185
|
+
/**
|
|
186
|
+
* The props an IssueDetail01 takes.
|
|
187
|
+
*
|
|
188
|
+
* Every string and every number is a prop and the Block ships none: no key, no
|
|
189
|
+
* title, no state, no field, no comment, no chip and not one word of the empty
|
|
190
|
+
* thread or the sentence beside a date. The absence of the issue is the sharpest
|
|
191
|
+
* version of the rule, because an issue header drawn with a key in it is the
|
|
192
|
+
* easiest thing in this package to write by accident and the most likely to be
|
|
193
|
+
* somebody else's backlog.
|
|
194
|
+
*/
|
|
195
|
+
export type IssueDetail01Props = {
|
|
196
|
+
/** The issue. */
|
|
197
|
+
issue: IssueDetail01Issue;
|
|
198
|
+
/**
|
|
199
|
+
* The comments, oldest first and newest last, in the caller's order.
|
|
200
|
+
*
|
|
201
|
+
* The Block never sorts them, and the reason is the one `AuditLog01` gives: an
|
|
202
|
+
* order a Block imposed is a claim about which record came first, and a thread
|
|
203
|
+
* sorted the wrong way reads as a conversation in an order nobody had. It is
|
|
204
|
+
* worse than a layout problem for a second reason, which is that the sorting
|
|
205
|
+
* would be invisible: a thread rendered newest first looks exactly like a thread
|
|
206
|
+
* rendered oldest first to a reader who has no reference for which is which, and
|
|
207
|
+
* the only way to notice is to know the truth. So the order is the caller's and
|
|
208
|
+
* this Block never touches it, and a caller whose store returns newest first
|
|
209
|
+
* passes `reverse()`.
|
|
210
|
+
*/
|
|
211
|
+
comments?: IssueDetail01Comment[];
|
|
212
|
+
/**
|
|
213
|
+
* The editor slot, under the thread.
|
|
214
|
+
*
|
|
215
|
+
* A slot and not a textarea, because a comment editor is a product decision and
|
|
216
|
+
* the biggest one on this surface: whether it is a textarea or a rich editor,
|
|
217
|
+
* whether it previews markup, whether it posts on a command or a button, whether
|
|
218
|
+
* it holds a draft across a navigation and where the draft is stored, and what
|
|
219
|
+
* happens when the submit fails. A Block that drew the editor would be drawing
|
|
220
|
+
* all six, and a consumer who wanted a different one would have to replace the
|
|
221
|
+
* Block rather than configure it, which is the one thing this package does not
|
|
222
|
+
* offer. The cost is stated rather than hidden: there is no announce hook here
|
|
223
|
+
* either, so a caller whose product posts optimistically and then reports a
|
|
224
|
+
* failure composes their own `LiveRegion` beside the form.
|
|
225
|
+
*/
|
|
226
|
+
commentForm?: ReactNode;
|
|
227
|
+
/**
|
|
228
|
+
* The controls that act on the issue: assign, close, reopen, subscribe.
|
|
229
|
+
*
|
|
230
|
+
* A slot and not a set of named buttons, because which controls an issue has is
|
|
231
|
+
* the caller's fact, and because a permission is a decision about the reader:
|
|
232
|
+
* a Block that drew a close control would hand every consumer a control its
|
|
233
|
+
* product may not grant the reader who is looking at it. Drawn at the top of the
|
|
234
|
+
* main column, under the facts, because a reader who opened an issue to act on it
|
|
235
|
+
* is looking for the controls before they are looking at the thread.
|
|
236
|
+
*/
|
|
237
|
+
actions?: ReactNode;
|
|
238
|
+
/**
|
|
239
|
+
* The aside: labels, watchers, related issues, a project panel, an activity log.
|
|
240
|
+
*
|
|
241
|
+
* One slot rather than a set of named parts, for the same reason the fields are
|
|
242
|
+
* the caller's list: what belongs beside an issue is a fact about the consumer's
|
|
243
|
+
* model, and a Block that named four of those parts would be deciding what an
|
|
244
|
+
* issue is. The cost is that a caller with six of them composes their own
|
|
245
|
+
* arrangement inside the slot, which is a layout they would have written anyway.
|
|
246
|
+
*/
|
|
247
|
+
sidebar?: ReactNode;
|
|
248
|
+
/**
|
|
249
|
+
* Whether the aside sits beside the body or under it.
|
|
250
|
+
*
|
|
251
|
+
* `split` is the default because an aside is what an aside is for: the labels,
|
|
252
|
+
* the watchers and the related issues are looked at after the body, and a reader
|
|
253
|
+
* who has to scroll past four hundred words of thread to find the labels has been
|
|
254
|
+
* sent to the wrong place. `stacked` is right in a narrow column, where a
|
|
255
|
+
* two-column layout would put the main content at half the measure, and where a
|
|
256
|
+
* reader on a phone would otherwise have to scroll past the whole thread to reach
|
|
257
|
+
* anything in the aside at all.
|
|
258
|
+
*/
|
|
259
|
+
layout?: 'split' | 'stacked';
|
|
260
|
+
/** Heading level for the issue title. See `HeadingLevel`. */
|
|
261
|
+
headingLevel?: HeadingLevel;
|
|
262
|
+
/** Layout only, exactly as on every Block. */
|
|
263
|
+
className?: string;
|
|
264
|
+
};
|
|
265
|
+
/**
|
|
266
|
+
* One issue in full: the key a machine knows it by, the title, the state, the
|
|
267
|
+
* fields the caller says a reader may be told, the body, the thread, and the
|
|
268
|
+
* controls that act on it.
|
|
269
|
+
*
|
|
270
|
+
* **The reader here is looking for one issue, one of the two things they came for
|
|
271
|
+
* being a particular one.** That is the fact the whole arrangement is built on:
|
|
272
|
+
* somebody has a key or a sentence from a colleague, and everything on this surface
|
|
273
|
+
* is arranged so that key and that sentence are the two things a reader meets
|
|
274
|
+
* first, before the body and long before the thread. Scanability and keyboard
|
|
275
|
+
* reach outrank expression at this tier, and a key a reader has to hunt for is a
|
|
276
|
+
* key they will copy from the wrong place.
|
|
277
|
+
*
|
|
278
|
+
* **The fields are the caller's, and that is the argument the whole Block rests
|
|
279
|
+
* on.** An issue detail surface with a fixed set of fields is a surface that
|
|
280
|
+
* decides what a reader may be told about an issue, and the decision is invisible
|
|
281
|
+
* in review because the rendered surface looks complete: four labelled values and
|
|
282
|
+
* a thread read as a finished page, and a reviewer sees no gap. A tracker whose
|
|
283
|
+
* issues carry a story point, a sprint, an epic, a customer and a severity has five
|
|
284
|
+
* facts this system knows nothing about, and a surface that named four of them
|
|
285
|
+
* would have to be forked to carry the fifth, in a package whose whole promise is
|
|
286
|
+
* that there is no override path and no merge. So `fields` is the caller's list and
|
|
287
|
+
* Prism names none: it draws a definition list of whatever the caller declares,
|
|
288
|
+
* which is the same argument `Contact01` makes about a form's fields and reaches
|
|
289
|
+
* the same way, from the same refusal to decide what a record is made of. The cost
|
|
290
|
+
* is stated rather than hidden: the list has no heading of its own, so a caller
|
|
291
|
+
* who wants one either composes a title into their first field or draws the list
|
|
292
|
+
* themselves in the `sidebar` slot, and a caller with twenty fields per issue has a
|
|
293
|
+
* twenty-row definition list where a table would read better.
|
|
294
|
+
*
|
|
295
|
+
* **The key is in the mono face because an identifier is machine notation.** It is
|
|
296
|
+
* the one value on this surface a reader pastes into a search box, quotes in a
|
|
297
|
+
* message and cites in a review, and this repository annotates machine-readable
|
|
298
|
+
* values with the mono stack rather than with anything else. It sits above the
|
|
299
|
+
* title rather than inside it, and the reason is that the two answer different
|
|
300
|
+
* questions and are read at different moments: a reader who has the key wants the
|
|
301
|
+
* issue and ignores the sentence, and a reader who has the sentence has no use for
|
|
302
|
+
* the key. Set in the interface face, the two would read as one string and a reader
|
|
303
|
+
* scanning for either would have to read both.
|
|
304
|
+
*
|
|
305
|
+
* **The thread renders in the order the caller passes it and this Block never
|
|
306
|
+
* sorts, for the reason `AuditLog01` gives.** An order a Block imposed is a claim
|
|
307
|
+
* about which record came first, and a conversation rendered in an order nobody
|
|
308
|
+
* had reads as a conversation in that order: the reply appears above the question
|
|
309
|
+
* it answers and the reader reconstructs the thread from the timestamps. The
|
|
310
|
+
* failure is silent in the way that matters most here, because a thread rendered
|
|
311
|
+
* newest first looks exactly like a thread rendered oldest first to a reader with
|
|
312
|
+
* no reference for which is which, and the only way to catch it is to already know
|
|
313
|
+
* the answer. So `comments` is drawn in the order it arrives, oldest first and
|
|
314
|
+
* newest last is the convention rather than a rule, and a caller whose store
|
|
315
|
+
* returns newest first passes `reverse()` in their own code where the decision
|
|
316
|
+
* about their data belongs.
|
|
317
|
+
*
|
|
318
|
+
* **The body and every comment are drawn through `Prose`, because they are prose
|
|
319
|
+
* written by a person rather than fields this Block composed.** An issue body has
|
|
320
|
+
* paragraphs, lists and a code block in it, and a Block that set it as one muted
|
|
321
|
+
* paragraph would flatten three bodies out of the four that are not one paragraph.
|
|
322
|
+
* `Prose` styles a consumer's plain elements as this system without asking the
|
|
323
|
+
* consumer for a class, which is the whole reason it exists and the reason the two
|
|
324
|
+
* slots are nodes rather than strings. The cost is a real one: `Prose` is a set of
|
|
325
|
+
* descendant selectors over arbitrary children, so a caller who puts an
|
|
326
|
+
* interactive control inside a body inherits styles written for text, and the
|
|
327
|
+
* answer is a plain container in their own node.
|
|
328
|
+
*
|
|
329
|
+
* **The dates are the caller's and the sentence is the caller's.** Both moments on
|
|
330
|
+
* this surface are handed to `RelativeTime` untouched, so the absolute reading a
|
|
331
|
+
* reader sees is the platform's own in the language they have, and `dateLabel`
|
|
332
|
+
* supplies the sentence beside it, which is the one string in the pair that is
|
|
333
|
+
* English by nature: it has a plural, it changes shape past a day, and every
|
|
334
|
+
* language words it differently. A Block that formatted the moment would ship one
|
|
335
|
+
* locale's format into every consumer's backlog. The cost is that `dateLabel` is
|
|
336
|
+
* optional here, unlike `progressLabel` on `Project01`, and the difference is the
|
|
337
|
+
* difference between a figure and a date: a bar at forty per cent with no sentence
|
|
338
|
+
* announces a number meaning whatever the reader assumes, while a localised date is
|
|
339
|
+
* already a complete reading and the sentence is an addition.
|
|
340
|
+
*
|
|
341
|
+
* **Nothing here is interactive and the editor is a slot, which is what makes this
|
|
342
|
+
* a server Component.** An issue's body, its fields and its thread are content, and
|
|
343
|
+
* a Block that owned a comment editor would own six decisions at once: whether the
|
|
344
|
+
* editor is a textarea or a rich editor, whether it previews markup, whether it
|
|
345
|
+
* posts on a command or a button, whether a draft survives a navigation and where
|
|
346
|
+
* it is stored, and what happens when the submit fails. A consumer who wanted a
|
|
347
|
+
* different one of those would have to replace the Block rather than configure it,
|
|
348
|
+
* which is the one thing this package does not offer. The cost is named rather
|
|
349
|
+
* than hidden: there is no announce hook either, so a caller whose product posts
|
|
350
|
+
* optimistically and then reports a failure composes their own `LiveRegion` beside
|
|
351
|
+
* the form.
|
|
352
|
+
*/
|
|
353
|
+
export declare function IssueDetail01({ issue, comments, commentForm, actions, sidebar, layout, headingLevel, className, }: IssueDetail01Props): import("react").JSX.Element;
|
|
354
|
+
export default IssueDetail01;
|
|
355
|
+
//# sourceMappingURL=issue-detail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"issue-detail.d.ts","sourceRoot":"","sources":["../../../src/blocks/issue-detail-01/issue-detail.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,OAAO,EAA2B,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAgDxF;;;;;;;;GAQG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAA;IACZ;;;;;;OAMG;IACH,MAAM,CAAC,EAAE;QACP,2EAA2E;QAC3E,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,wDAAwD;QACxD,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;CACF,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,iFAAiF;IACjF,EAAE,EAAE,MAAM,CAAA;IACV,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAA;IACb,qBAAqB;IACrB,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAA;IACV,oBAAoB;IACpB,MAAM,EAAE,mBAAmB,CAAA;IAC3B;;;;;;OAMG;IACH,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAA;IAC9C,sBAAsB;IACtB,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;;;;;;;;;OAWG;IACH,GAAG,EAAE,MAAM,CAAA;IACX;;;;;;;OAOG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;;;;;;OAOG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mEAAmE;IACnE,MAAM,CAAC,EAAE,mBAAmB,CAAA;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAA;IAC9C;;;;;;;;;OASG;IACH,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAC7B,8EAA8E;IAC9E,MAAM,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,SAAS,CAAA;KAAE,EAAE,CAAA;CAC5C,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,iBAAiB;IACjB,KAAK,EAAE,kBAAkB,CAAA;IACzB;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAA;IACjC;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC5B,6DAA6D;IAC7D,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAqBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuFG;AACH,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,WAAW,EACX,OAAO,EACP,OAAO,EACP,MAAgB,EAChB,YAAmB,EACnB,SAAS,GACV,EAAE,kBAAkB,+BAiLpB;AAED,eAAe,aAAa,CAAA"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Avatar, AvatarFallback, AvatarImage } from '../../components/ui/avatar.js';
|
|
3
|
+
import { Prose } from '../../components/ui/prose.js';
|
|
4
|
+
import { RelativeTime } from '../../components/ui/relative-time.js';
|
|
5
|
+
import { Section, SectionHeading } from '../../components/ui/section.js';
|
|
6
|
+
import { Status } from '../../components/ui/status.js';
|
|
7
|
+
import { Tag } from '../../components/ui/tag-group.js';
|
|
8
|
+
import { cn } from '../../lib/utils.js';
|
|
9
|
+
/**
|
|
10
|
+
* The tone an issue's state is drawn in, from the semantic contract and no other.
|
|
11
|
+
*
|
|
12
|
+
* The state is the caller's own string and the words beside it are the caller's
|
|
13
|
+
* too, and the pair is the whole design for the same reason it is the design in
|
|
14
|
+
* `StatusLedger01`, `FieldMap01` and `Project01`: a tone is a colour, and colour is
|
|
15
|
+
* not information a reader can act on. Four trackers between them use fourteen
|
|
16
|
+
* words for a state column, where "Open", "Active" and "Todo" are one position and
|
|
17
|
+
* "Shipped", "Resolved" and "Done" are another, and a Block that rendered the
|
|
18
|
+
* state key would put one tracker's vocabulary into every consumer's product.
|
|
19
|
+
*
|
|
20
|
+
* So the table below is keyed by the caller's own words rather than by a union, and
|
|
21
|
+
* a state this table has not been taught draws in the supporting ink. The cost is
|
|
22
|
+
* named rather than hidden: a consumer whose states are "needs-triage",
|
|
23
|
+
* "ready-for-agent" and "wontfix" gets three neutral dots and three words, and the
|
|
24
|
+
* words are what carry the column. A caller who wants a triage column to read at a
|
|
25
|
+
* glance extends this map, which is a one-line change in their own file rather than
|
|
26
|
+
* a request to Prism for a state it has no opinion about.
|
|
27
|
+
*/
|
|
28
|
+
const DEFAULT_TONE = {
|
|
29
|
+
planning: 'info',
|
|
30
|
+
active: 'success',
|
|
31
|
+
blocked: 'warning',
|
|
32
|
+
complete: 'success',
|
|
33
|
+
archived: 'neutral',
|
|
34
|
+
open: 'info',
|
|
35
|
+
closed: 'success',
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* The tone a state is drawn in, falling back to the supporting ink.
|
|
39
|
+
*
|
|
40
|
+
* `neutral` for a state this table does not name, and the reason is that an
|
|
41
|
+
* unrecognised state is not an emergency: it is a vocabulary this Block has not
|
|
42
|
+
* been taught, and drawing it in the alarm colour would turn a naming mismatch
|
|
43
|
+
* into a page of red rows. The state value is on the row as `data-state`, so a
|
|
44
|
+
* consumer reading their own page can see which states need mapping rather than
|
|
45
|
+
* guessing which ones are wrong.
|
|
46
|
+
*/
|
|
47
|
+
function toneOf(state) {
|
|
48
|
+
return DEFAULT_TONE[state] ?? 'neutral';
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* The initials a name produces, and the rule that produces them.
|
|
52
|
+
*
|
|
53
|
+
* Two letters from the first and last words, and the first two characters of a
|
|
54
|
+
* single word. It is the same rule `AvatarGroup`, `Team01`, `Project01` and
|
|
55
|
+
* `ProjectList01` apply and it is repeated here for the reason `Team01` states in
|
|
56
|
+
* full: that helper is private to its module and exporting it would make a private
|
|
57
|
+
* derivation part of the published surface of a Component in order to save six
|
|
58
|
+
* lines in a Block. The cost of the repetition is named rather than hidden, because
|
|
59
|
+
* five modules now carry this rule and a change to it is a change in five.
|
|
60
|
+
*/
|
|
61
|
+
function initialsOf(name) {
|
|
62
|
+
const words = name.trim().split(/\s+/).filter(Boolean);
|
|
63
|
+
const first = words[0];
|
|
64
|
+
if (first === undefined)
|
|
65
|
+
return '';
|
|
66
|
+
if (words.length === 1)
|
|
67
|
+
return first.slice(0, 2).toUpperCase();
|
|
68
|
+
return `${first.charAt(0)}$${words[words.length - 1].charAt(0)}`.toUpperCase();
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* One issue in full: the key a machine knows it by, the title, the state, the
|
|
72
|
+
* fields the caller says a reader may be told, the body, the thread, and the
|
|
73
|
+
* controls that act on it.
|
|
74
|
+
*
|
|
75
|
+
* **The reader here is looking for one issue, one of the two things they came for
|
|
76
|
+
* being a particular one.** That is the fact the whole arrangement is built on:
|
|
77
|
+
* somebody has a key or a sentence from a colleague, and everything on this surface
|
|
78
|
+
* is arranged so that key and that sentence are the two things a reader meets
|
|
79
|
+
* first, before the body and long before the thread. Scanability and keyboard
|
|
80
|
+
* reach outrank expression at this tier, and a key a reader has to hunt for is a
|
|
81
|
+
* key they will copy from the wrong place.
|
|
82
|
+
*
|
|
83
|
+
* **The fields are the caller's, and that is the argument the whole Block rests
|
|
84
|
+
* on.** An issue detail surface with a fixed set of fields is a surface that
|
|
85
|
+
* decides what a reader may be told about an issue, and the decision is invisible
|
|
86
|
+
* in review because the rendered surface looks complete: four labelled values and
|
|
87
|
+
* a thread read as a finished page, and a reviewer sees no gap. A tracker whose
|
|
88
|
+
* issues carry a story point, a sprint, an epic, a customer and a severity has five
|
|
89
|
+
* facts this system knows nothing about, and a surface that named four of them
|
|
90
|
+
* would have to be forked to carry the fifth, in a package whose whole promise is
|
|
91
|
+
* that there is no override path and no merge. So `fields` is the caller's list and
|
|
92
|
+
* Prism names none: it draws a definition list of whatever the caller declares,
|
|
93
|
+
* which is the same argument `Contact01` makes about a form's fields and reaches
|
|
94
|
+
* the same way, from the same refusal to decide what a record is made of. The cost
|
|
95
|
+
* is stated rather than hidden: the list has no heading of its own, so a caller
|
|
96
|
+
* who wants one either composes a title into their first field or draws the list
|
|
97
|
+
* themselves in the `sidebar` slot, and a caller with twenty fields per issue has a
|
|
98
|
+
* twenty-row definition list where a table would read better.
|
|
99
|
+
*
|
|
100
|
+
* **The key is in the mono face because an identifier is machine notation.** It is
|
|
101
|
+
* the one value on this surface a reader pastes into a search box, quotes in a
|
|
102
|
+
* message and cites in a review, and this repository annotates machine-readable
|
|
103
|
+
* values with the mono stack rather than with anything else. It sits above the
|
|
104
|
+
* title rather than inside it, and the reason is that the two answer different
|
|
105
|
+
* questions and are read at different moments: a reader who has the key wants the
|
|
106
|
+
* issue and ignores the sentence, and a reader who has the sentence has no use for
|
|
107
|
+
* the key. Set in the interface face, the two would read as one string and a reader
|
|
108
|
+
* scanning for either would have to read both.
|
|
109
|
+
*
|
|
110
|
+
* **The thread renders in the order the caller passes it and this Block never
|
|
111
|
+
* sorts, for the reason `AuditLog01` gives.** An order a Block imposed is a claim
|
|
112
|
+
* about which record came first, and a conversation rendered in an order nobody
|
|
113
|
+
* had reads as a conversation in that order: the reply appears above the question
|
|
114
|
+
* it answers and the reader reconstructs the thread from the timestamps. The
|
|
115
|
+
* failure is silent in the way that matters most here, because a thread rendered
|
|
116
|
+
* newest first looks exactly like a thread rendered oldest first to a reader with
|
|
117
|
+
* no reference for which is which, and the only way to catch it is to already know
|
|
118
|
+
* the answer. So `comments` is drawn in the order it arrives, oldest first and
|
|
119
|
+
* newest last is the convention rather than a rule, and a caller whose store
|
|
120
|
+
* returns newest first passes `reverse()` in their own code where the decision
|
|
121
|
+
* about their data belongs.
|
|
122
|
+
*
|
|
123
|
+
* **The body and every comment are drawn through `Prose`, because they are prose
|
|
124
|
+
* written by a person rather than fields this Block composed.** An issue body has
|
|
125
|
+
* paragraphs, lists and a code block in it, and a Block that set it as one muted
|
|
126
|
+
* paragraph would flatten three bodies out of the four that are not one paragraph.
|
|
127
|
+
* `Prose` styles a consumer's plain elements as this system without asking the
|
|
128
|
+
* consumer for a class, which is the whole reason it exists and the reason the two
|
|
129
|
+
* slots are nodes rather than strings. The cost is a real one: `Prose` is a set of
|
|
130
|
+
* descendant selectors over arbitrary children, so a caller who puts an
|
|
131
|
+
* interactive control inside a body inherits styles written for text, and the
|
|
132
|
+
* answer is a plain container in their own node.
|
|
133
|
+
*
|
|
134
|
+
* **The dates are the caller's and the sentence is the caller's.** Both moments on
|
|
135
|
+
* this surface are handed to `RelativeTime` untouched, so the absolute reading a
|
|
136
|
+
* reader sees is the platform's own in the language they have, and `dateLabel`
|
|
137
|
+
* supplies the sentence beside it, which is the one string in the pair that is
|
|
138
|
+
* English by nature: it has a plural, it changes shape past a day, and every
|
|
139
|
+
* language words it differently. A Block that formatted the moment would ship one
|
|
140
|
+
* locale's format into every consumer's backlog. The cost is that `dateLabel` is
|
|
141
|
+
* optional here, unlike `progressLabel` on `Project01`, and the difference is the
|
|
142
|
+
* difference between a figure and a date: a bar at forty per cent with no sentence
|
|
143
|
+
* announces a number meaning whatever the reader assumes, while a localised date is
|
|
144
|
+
* already a complete reading and the sentence is an addition.
|
|
145
|
+
*
|
|
146
|
+
* **Nothing here is interactive and the editor is a slot, which is what makes this
|
|
147
|
+
* a server Component.** An issue's body, its fields and its thread are content, and
|
|
148
|
+
* a Block that owned a comment editor would own six decisions at once: whether the
|
|
149
|
+
* editor is a textarea or a rich editor, whether it previews markup, whether it
|
|
150
|
+
* posts on a command or a button, whether a draft survives a navigation and where
|
|
151
|
+
* it is stored, and what happens when the submit fails. A consumer who wanted a
|
|
152
|
+
* different one of those would have to replace the Block rather than configure it,
|
|
153
|
+
* which is the one thing this package does not offer. The cost is named rather
|
|
154
|
+
* than hidden: there is no announce hook either, so a caller whose product posts
|
|
155
|
+
* optimistically and then reports a failure composes their own `LiveRegion` beside
|
|
156
|
+
* the form.
|
|
157
|
+
*/
|
|
158
|
+
export function IssueDetail01({ issue, comments, commentForm, actions, sidebar, layout = 'split', headingLevel = 'h2', className, }) {
|
|
159
|
+
if (!issue.stateLabel) {
|
|
160
|
+
throw new Error(`IssueDetail01: the issue "${issue.key}" carries a state and no stateLabel, so its row would be a ` +
|
|
161
|
+
'dot with no sentence beside it, and a state a reader can only see is a state nobody can act on. ' +
|
|
162
|
+
`Pass the words your readers use for that state.`);
|
|
163
|
+
}
|
|
164
|
+
const fields = issue.fields ?? [];
|
|
165
|
+
const labels = issue.labels ?? [];
|
|
166
|
+
const thread = comments ?? [];
|
|
167
|
+
const main = (_jsxs("div", { "data-slot": "issue-detail-main", className: "flex min-w-0 flex-col gap-10", children: [actions === undefined ? null : (_jsx("div", { "data-slot": "issue-detail-actions", className: "flex flex-wrap items-center gap-2", children: actions })), issue.body === undefined ? null : (_jsx(Prose, { "data-slot": "issue-detail-body", children: issue.body })), fields.length === 0 ? null : (
|
|
168
|
+
/*
|
|
169
|
+
The caller's facts as a definition list, and a definition list rather
|
|
170
|
+
than a table because a field list is a set of terms and their answers
|
|
171
|
+
read down a column, which is what a `dl` is for. The label is the term
|
|
172
|
+
and the value is the answer, so a reader who navigates to a term hears
|
|
173
|
+
the label and the value together rather than a value with no statement
|
|
174
|
+
of what it is. `contents` on the pair is what lets the `dl` own the
|
|
175
|
+
grid while each term and its answer stay one pair of elements.
|
|
176
|
+
*/
|
|
177
|
+
_jsx("dl", { "data-slot": "issue-detail-fields", className: "grid gap-x-8 gap-y-3 sm:grid-cols-[auto_minmax(0,1fr)]", children: fields.map((field) => (_jsxs("div", { "data-slot": "issue-detail-field", className: "contents", children: [_jsx("dt", { className: "text-muted-foreground text-sm font-medium", children: field.label }), _jsx("dd", { className: "min-w-0 text-sm", children: field.value })] }, field.id))) })), labels.length === 0 ? null : (_jsx("div", { "data-slot": "issue-detail-labels", className: "flex flex-wrap items-center gap-1.5", children: labels.map((label) => (_jsx(Tag, { label: label.label }, label.id))) })), thread.length === 0 ? null : (_jsx("ol", { "data-slot": "issue-detail-comments", className: "flex flex-col gap-8", children: thread.map((comment) => (_jsxs("li", { "data-slot": "issue-detail-comment", className: "border-border flex flex-col gap-2 border-t pt-5", children: [_jsxs("div", { "data-slot": "issue-detail-comment-head", className: "flex flex-wrap items-center gap-x-3 gap-y-1", children: [comment.author.avatar === undefined ? null : (_jsxs(Avatar, { className: "size-6", children: [comment.author.avatar.src === undefined ? null : (_jsx(AvatarImage, { src: comment.author.avatar.src, alt: "" })), _jsx(AvatarFallback, { className: "text-mono", children: initialsOf(comment.author.avatar.name) })] })), _jsx("span", { className: "text-sm font-medium", children: comment.author.name }), comment.at === undefined ? null : (_jsx(RelativeTime, { className: "text-muted-foreground text-sm", date: comment.at, relative: comment.dateLabel?.(comment.at) }))] }), _jsx(Prose, { "data-slot": "issue-detail-comment-body", children: comment.body })] }, comment.id))) })), commentForm === undefined ? null : (_jsx("div", { "data-slot": "issue-detail-comment-form", className: "max-w-measure", children: commentForm })), " "] }));
|
|
178
|
+
return (_jsx(Section, { "data-slot": "issue-detail-01", "data-layout": layout, className: cn(className), children: _jsxs("div", { className: "flex flex-col gap-8", children: [_jsxs("div", { "data-slot": "issue-detail-head", className: "flex flex-col gap-4", children: [_jsx("span", { "data-slot": "issue-detail-key", className: "text-muted-foreground font-mono text-sm", children: issue.key }), _jsx(SectionHeading, { as: headingLevel, align: "left", title: issue.title, className: "mb-2" }), _jsxs("div", { "data-slot": "issue-detail-facts", className: "flex flex-wrap items-center gap-x-6 gap-y-2", children: [_jsx(Status, { "data-state": issue.state, tone: toneOf(issue.state), label: issue.stateLabel }), issue.author === undefined ? null : (_jsxs("span", { "data-slot": "issue-detail-author", className: "flex min-w-0 items-center gap-2", children: [issue.author.avatar === undefined ? null : (_jsxs(Avatar, { className: "size-6", children: [issue.author.avatar.src === undefined ? null : (_jsx(AvatarImage, { src: issue.author.avatar.src, alt: "" })), _jsx(AvatarFallback, { className: "text-mono", children: initialsOf(issue.author.avatar.name) })] })), _jsx("span", { className: "text-sm", children: issue.author.name })] })), issue.openedAt === undefined ? null : (_jsx(RelativeTime, { "data-slot": "issue-detail-opened", className: "text-muted-foreground text-sm", date: issue.openedAt, relative: issue.dateLabel?.(issue.openedAt) }))] })] }), _jsxs("div", { "data-slot": "issue-detail-body-grid", className: cn(
|
|
179
|
+
// The two arrangements get one display each rather than a base and an
|
|
180
|
+
// override, because `flex` and `grid` are the same property and which
|
|
181
|
+
// one wins is a question about the generated stylesheet rather than
|
|
182
|
+
// about the order of the class names here.
|
|
183
|
+
layout === 'split'
|
|
184
|
+
? 'grid gap-10 lg:grid-cols-[minmax(0,3fr)_minmax(0,2fr)] lg:gap-14'
|
|
185
|
+
: 'flex flex-col gap-10'), children: [main, sidebar === undefined ? null : (_jsx("aside", { "data-slot": "issue-detail-sidebar", className: "flex min-w-0 flex-col gap-6", children: sidebar }))] })] }) }));
|
|
186
|
+
}
|
|
187
|
+
export default IssueDetail01;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/blocks/issue-list-01/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAKnD,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { IssueList01, default } from './issue-list.js';
|