admin-ui-starter-kit 0.1.4 → 0.4.3
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/.agents/skills/admin-ui-consumer-migration/SKILL.md +276 -2
- package/.agents/skills/component-library-rules/SKILL.md +15 -9
- package/.agents/skills/component-library-rules/references/audit-followups.md +4 -4
- package/.agents/skills/component-library-rules/references/base-wrapper.md +24 -4
- package/.agents/skills/component-library-rules/references/components/INDEX.json +107 -93
- package/.agents/skills/component-library-rules/references/components/INDEX.md +21 -7
- package/.agents/skills/component-library-rules/references/components/base__accordion.md +78 -9
- package/.agents/skills/component-library-rules/references/components/base__alert.md +156 -0
- package/.agents/skills/component-library-rules/references/components/base__badge.md +8 -1
- package/.agents/skills/component-library-rules/references/components/base__buttons.md +121 -1
- package/.agents/skills/component-library-rules/references/components/base__cards.md +101 -4
- package/.agents/skills/component-library-rules/references/components/base__carousel.md +524 -0
- package/.agents/skills/component-library-rules/references/components/base__chart.md +391 -0
- package/.agents/skills/component-library-rules/references/components/base__combobox.md +212 -3
- package/.agents/skills/component-library-rules/references/components/base__copyable.md +49 -1
- package/.agents/skills/component-library-rules/references/components/base__currency.md +72 -1
- package/.agents/skills/component-library-rules/references/components/base__date-pickers.md +84 -50
- package/.agents/skills/component-library-rules/references/components/base__display.md +186 -39
- package/.agents/skills/component-library-rules/references/components/base__empty-state.md +67 -1
- package/.agents/skills/component-library-rules/references/components/base__event-calendar.md +56 -1
- package/.agents/skills/component-library-rules/references/components/base__forms.md +329 -2
- package/.agents/skills/component-library-rules/references/components/base__frame.md +235 -0
- package/.agents/skills/component-library-rules/references/components/base__item.md +47 -1
- package/.agents/skills/component-library-rules/references/components/base__map.md +37 -1
- package/.agents/skills/component-library-rules/references/components/base__metadata-list.md +99 -7
- package/.agents/skills/component-library-rules/references/components/base__navigation.md +71 -1
- package/.agents/skills/component-library-rules/references/components/base__spinner.md +44 -3
- package/.agents/skills/component-library-rules/references/components/base__table.md +108 -14
- package/.agents/skills/component-library-rules/references/components/base__typography.md +122 -1
- package/.agents/skills/component-library-rules/references/components/base__upload-tray.md +43 -1
- package/.agents/skills/component-library-rules/references/components/common__brand.md +21 -25
- package/.agents/skills/component-library-rules/references/components/composed__admin.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__ai-elements.md +17 -2
- package/.agents/skills/component-library-rules/references/components/composed__ai-new.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__ai.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__api-key-list.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__commerce-extras.md +87 -16
- package/.agents/skills/component-library-rules/references/components/composed__commerce.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__contact-card.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__course-card.md +90 -105
- package/.agents/skills/component-library-rules/references/components/composed__dark-surfaces.md +10 -3
- package/.agents/skills/component-library-rules/references/components/composed__dense-info.md +11 -4
- package/.agents/skills/component-library-rules/references/components/composed__feature-announcement.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__giftcard-cards.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__gradient-card.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__invoice-header.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__invoice-items.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__invoice-mini.md +9 -2
- package/.agents/skills/component-library-rules/references/components/composed__invoice-table.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__navigation-extras.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__navigation.md +12 -5
- package/.agents/skills/component-library-rules/references/components/composed__onboarding-checklist.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__timelines.md +8 -1
- package/.agents/skills/component-library-rules/references/components/composed__vendor-profile.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__activities.md +60 -19
- package/.agents/skills/component-library-rules/references/components/features__ai-chat.md +134 -1
- package/.agents/skills/component-library-rules/references/components/features__card.md +239 -0
- package/.agents/skills/component-library-rules/references/components/features__comments.md +36 -1
- package/.agents/skills/component-library-rules/references/components/features__enhanced-activities.md +19 -4
- package/.agents/skills/component-library-rules/references/components/features__event-log.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__filters.md +21 -1
- package/.agents/skills/component-library-rules/references/components/features__global-search.md +173 -2
- package/.agents/skills/component-library-rules/references/components/features__kanban.md +99 -81
- package/.agents/skills/component-library-rules/references/components/features__media-library.md +796 -0
- package/.agents/skills/component-library-rules/references/components/features__mentions.md +187 -0
- package/.agents/skills/component-library-rules/references/components/features__metrics-analytics-bar.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__metrics-analytics-cards.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__metrics-comparison.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__metrics-heatmap.md +10 -3
- package/.agents/skills/component-library-rules/references/components/features__metrics-inline-badge.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__metrics-kpi-row.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__metrics-micro-grid.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__metrics-overview.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__metrics-stat-cards.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__overlays.md +48 -16
- package/.agents/skills/component-library-rules/references/components/features__products.md +491 -0
- package/.agents/skills/component-library-rules/references/components/features__rich-text-editor.md +8 -1
- package/.agents/skills/component-library-rules/references/components/features__schema-form.md +375 -0
- package/.agents/skills/component-library-rules/references/components/features__suggestions.md +177 -0
- package/.agents/skills/component-library-rules/references/components/features__sync.md +155 -0
- package/.agents/skills/component-library-rules/references/components/layout__layout-app-shell.md +139 -24
- package/.agents/skills/component-library-rules/references/components/layout__layout-auth.md +826 -0
- package/.agents/skills/component-library-rules/references/components/layout__layout-containers.md +15 -3
- package/.agents/skills/component-library-rules/references/components/layout__layout-header.md +8 -1
- package/.agents/skills/component-library-rules/references/components/layout__layout-page.md +8 -1
- package/.agents/skills/component-library-rules/references/components/layout__layout-sidebar.md +9 -2
- package/.agents/skills/component-library-rules/references/components/layout__layout-users.md +51 -30
- package/.agents/skills/component-library-rules/references/components/layout__layout-workspace.md +234 -0
- package/.agents/skills/component-library-rules/references/components/ui__alert.md +6 -2
- package/.agents/skills/component-library-rules/references/components/ui__avatar.md +2 -2
- package/.agents/skills/component-library-rules/references/components/ui__breadcrumb.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__button.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__calendar.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__collapsible.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__empty-item.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__input-group.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__inputs.md +118 -19
- package/.agents/skills/component-library-rules/references/components/ui__layout-primitives.md +71 -0
- package/.agents/skills/component-library-rules/references/components/ui__menus.md +126 -44
- package/.agents/skills/component-library-rules/references/components/ui__overlays.md +118 -43
- package/.agents/skills/component-library-rules/references/components/ui__pagination.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__progress.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__scroll-area.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__separator.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__skeleton.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__sonner.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__spinner.md +2 -2
- package/.agents/skills/component-library-rules/references/components/ui__tabs.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__toggles-group.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__toggles.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__ui-badge.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__ui-card.md +1 -1
- package/.agents/skills/component-library-rules/references/components/ui__ui-table.md +1 -1
- package/.agents/skills/component-library-rules/references/visual-eval.md +1 -1
- package/.agents/skills/component-quality-pass/SKILL.md +47 -0
- package/.agents/skills/component-quality-pass/agents/openai.yaml +4 -0
- package/.agents/skills/component-quality-pass/references/audit-workflow.md +133 -0
- package/.agents/skills/component-quality-pass/scripts/list-preview-routes.mjs +71 -0
- package/.agents/skills/component-quality-pass/scripts/scan-quality-smells.mjs +213 -0
- package/AGENTS.md +7 -4
- package/COMPONENT_SELECTION.md +51 -5
- package/INTEGRATION.md +48 -2
- package/MIGRATION.md +17 -3
- package/PUBLISHING.md +4 -1
- package/README.md +84 -11
- package/dist/_shared/accordion-BWU7zxlO.cjs +2 -0
- package/dist/_shared/accordion-BWU7zxlO.cjs.map +1 -0
- package/dist/_shared/accordion-DTYKGqWD.js +130 -0
- package/dist/_shared/accordion-DTYKGqWD.js.map +1 -0
- package/dist/_shared/action-menu-BoQnI2UF.cjs +2 -0
- package/dist/_shared/action-menu-BoQnI2UF.cjs.map +1 -0
- package/dist/_shared/action-menu-uyg1Phsn.js +96 -0
- package/dist/_shared/action-menu-uyg1Phsn.js.map +1 -0
- package/dist/_shared/ai-artifact-CY1Jf9gM.cjs +3 -0
- package/dist/_shared/ai-artifact-CY1Jf9gM.cjs.map +1 -0
- package/dist/_shared/ai-artifact-DdlK_l56.js +1099 -0
- package/dist/_shared/ai-artifact-DdlK_l56.js.map +1 -0
- package/dist/_shared/alert-CuIIKJC-.cjs +2 -0
- package/dist/_shared/alert-CuIIKJC-.cjs.map +1 -0
- package/dist/_shared/alert-k60OnTtb.js +81 -0
- package/dist/_shared/alert-k60OnTtb.js.map +1 -0
- package/dist/_shared/app-shell-DqDnnKT4.cjs +2 -0
- package/dist/_shared/app-shell-DqDnnKT4.cjs.map +1 -0
- package/dist/_shared/app-shell-w5h0vEKg.js +69 -0
- package/dist/_shared/app-shell-w5h0vEKg.js.map +1 -0
- package/dist/_shared/auth-CDjZFJxy.cjs +2 -0
- package/dist/_shared/auth-CDjZFJxy.cjs.map +1 -0
- package/dist/_shared/auth-_udUdWtn.js +643 -0
- package/dist/_shared/auth-_udUdWtn.js.map +1 -0
- package/dist/_shared/badge--o9wFHB_.cjs +2 -0
- package/dist/_shared/badge--o9wFHB_.cjs.map +1 -0
- package/dist/_shared/badge-yGlx9trX.js +108 -0
- package/dist/_shared/badge-yGlx9trX.js.map +1 -0
- package/dist/_shared/button-C1qc97U1.cjs +2 -0
- package/dist/_shared/button-C1qc97U1.cjs.map +1 -0
- package/dist/_shared/button-SuocMQFT.js +173 -0
- package/dist/_shared/button-SuocMQFT.js.map +1 -0
- package/dist/_shared/buttons-9YBwevkP.cjs +2 -0
- package/dist/_shared/buttons-9YBwevkP.cjs.map +1 -0
- package/dist/_shared/buttons-BR4BGVYf.js +143 -0
- package/dist/_shared/buttons-BR4BGVYf.js.map +1 -0
- package/dist/_shared/card-radio-group-Bna2uZs1.cjs +2 -0
- package/dist/_shared/card-radio-group-Bna2uZs1.cjs.map +1 -0
- package/dist/_shared/card-radio-group-D_CY1HRy.js +158 -0
- package/dist/_shared/card-radio-group-D_CY1HRy.js.map +1 -0
- package/dist/_shared/checkbox-CTqqawIT.js +22 -0
- package/dist/_shared/checkbox-CTqqawIT.js.map +1 -0
- package/dist/_shared/checkbox-D1n-nfLP.cjs +2 -0
- package/dist/_shared/checkbox-D1n-nfLP.cjs.map +1 -0
- package/dist/_shared/combobox-CpSmiPV8.cjs +2 -0
- package/dist/_shared/combobox-CpSmiPV8.cjs.map +1 -0
- package/dist/_shared/combobox-D01JwyFZ.js +810 -0
- package/dist/_shared/combobox-D01JwyFZ.js.map +1 -0
- package/dist/_shared/comments-D9velZAW.js +952 -0
- package/dist/_shared/comments-D9velZAW.js.map +1 -0
- package/dist/_shared/comments-DyUAKSQu.cjs +2 -0
- package/dist/_shared/comments-DyUAKSQu.cjs.map +1 -0
- package/dist/_shared/copyable-Bx4J7fuT.cjs +2 -0
- package/dist/_shared/copyable-Bx4J7fuT.cjs.map +1 -0
- package/dist/_shared/copyable-cfF4gZoT.js +38 -0
- package/dist/_shared/copyable-cfF4gZoT.js.map +1 -0
- package/dist/_shared/date-picker-BnsvBFOZ.cjs +2 -0
- package/dist/_shared/date-picker-BnsvBFOZ.cjs.map +1 -0
- package/dist/_shared/date-picker-TMcjGO26.js +1361 -0
- package/dist/_shared/date-picker-TMcjGO26.js.map +1 -0
- package/dist/_shared/date-pickers-BI4xLjHR.js +330 -0
- package/dist/_shared/date-pickers-BI4xLjHR.js.map +1 -0
- package/dist/_shared/date-pickers-BhaUK5S2.cjs +2 -0
- package/dist/_shared/date-pickers-BhaUK5S2.cjs.map +1 -0
- package/dist/_shared/display-C4n0uuxl.js +1154 -0
- package/dist/_shared/display-C4n0uuxl.js.map +1 -0
- package/dist/_shared/display-oDW0O9yB.cjs +2 -0
- package/dist/_shared/display-oDW0O9yB.cjs.map +1 -0
- package/dist/_shared/form-field-B7taMVbC.js +329 -0
- package/dist/_shared/form-field-B7taMVbC.js.map +1 -0
- package/dist/_shared/form-field-rMGPvHFK.cjs +2 -0
- package/dist/_shared/form-field-rMGPvHFK.cjs.map +1 -0
- package/dist/_shared/form-sizing-D74IS9KG.js.map +1 -1
- package/dist/_shared/form-sizing-aVwVuF-w.cjs.map +1 -1
- package/dist/_shared/forms-CwJci54_.js +3430 -0
- package/dist/_shared/forms-CwJci54_.js.map +1 -0
- package/dist/_shared/forms-E3JkTgcC.cjs +2 -0
- package/dist/_shared/forms-E3JkTgcC.cjs.map +1 -0
- package/dist/_shared/header-CyBTcM-L.js +360 -0
- package/dist/_shared/header-CyBTcM-L.js.map +1 -0
- package/dist/_shared/header-kwvkesfq.cjs +2 -0
- package/dist/_shared/header-kwvkesfq.cjs.map +1 -0
- package/dist/_shared/heading-0DYCOrgC.cjs +2 -0
- package/dist/_shared/heading-0DYCOrgC.cjs.map +1 -0
- package/dist/_shared/heading-HeP06nXG.js +107 -0
- package/dist/_shared/heading-HeP06nXG.js.map +1 -0
- package/dist/_shared/hooks-MW0UTO3q.cjs +2 -0
- package/dist/_shared/hooks-MW0UTO3q.cjs.map +1 -0
- package/dist/_shared/hooks-ZiPIvs0_.js +118 -0
- package/dist/_shared/hooks-ZiPIvs0_.js.map +1 -0
- package/dist/_shared/input-C7t-RHYq.js +182 -0
- package/dist/_shared/input-C7t-RHYq.js.map +1 -0
- package/dist/_shared/input-COMcb1WY.cjs +2 -0
- package/dist/_shared/input-COMcb1WY.cjs.map +1 -0
- package/dist/_shared/item-DAjqQhhj.js +225 -0
- package/dist/_shared/item-DAjqQhhj.js.map +1 -0
- package/dist/_shared/item-DoXXYgPm.cjs +2 -0
- package/dist/_shared/item-DoXXYgPm.cjs.map +1 -0
- package/dist/_shared/mentions-Br-EP9tq.js +506 -0
- package/dist/_shared/mentions-Br-EP9tq.js.map +1 -0
- package/dist/_shared/mentions-DNTsRHJl.cjs +2 -0
- package/dist/_shared/mentions-DNTsRHJl.cjs.map +1 -0
- package/dist/_shared/metadata-CPSQGPJh.cjs +2 -0
- package/dist/_shared/metadata-CPSQGPJh.cjs.map +1 -0
- package/dist/_shared/metadata-qTNAOM7E.js +235 -0
- package/dist/_shared/metadata-qTNAOM7E.js.map +1 -0
- package/dist/_shared/money-display-CFSMUtxS.cjs +2 -0
- package/dist/_shared/money-display-CFSMUtxS.cjs.map +1 -0
- package/dist/_shared/money-display-D4Z3P3f_.js +198 -0
- package/dist/_shared/money-display-D4Z3P3f_.js.map +1 -0
- package/dist/_shared/navigation-HnnA6uSV.js +419 -0
- package/dist/_shared/navigation-HnnA6uSV.js.map +1 -0
- package/dist/_shared/navigation-J2g0Tw9D.cjs +2 -0
- package/dist/_shared/navigation-J2g0Tw9D.cjs.map +1 -0
- package/dist/_shared/overlays-CIeniDjj.js +639 -0
- package/dist/_shared/overlays-CIeniDjj.js.map +1 -0
- package/dist/_shared/overlays-Xc_F_Y-E.cjs +2 -0
- package/dist/_shared/overlays-Xc_F_Y-E.cjs.map +1 -0
- package/dist/_shared/page-BFV-KE8H.js +262 -0
- package/dist/_shared/page-BFV-KE8H.js.map +1 -0
- package/dist/_shared/page-UJfWfw2R.cjs +2 -0
- package/dist/_shared/page-UJfWfw2R.cjs.map +1 -0
- package/dist/_shared/popover-menu-Fz-bvWJF.cjs +2 -0
- package/dist/_shared/popover-menu-Fz-bvWJF.cjs.map +1 -0
- package/dist/_shared/popover-menu-bKQatoYF.js +93 -0
- package/dist/_shared/popover-menu-bKQatoYF.js.map +1 -0
- package/dist/_shared/rich-text-editor-B6WKHUKC.js +620 -0
- package/dist/_shared/rich-text-editor-B6WKHUKC.js.map +1 -0
- package/dist/_shared/rich-text-editor-Dm-6r_xe.cjs +2 -0
- package/dist/_shared/rich-text-editor-Dm-6r_xe.cjs.map +1 -0
- package/dist/_shared/sidebar-B_L_dnAe.cjs +2 -0
- package/dist/_shared/sidebar-B_L_dnAe.cjs.map +1 -0
- package/dist/_shared/sidebar-C5DApiDy.js +389 -0
- package/dist/_shared/sidebar-C5DApiDy.js.map +1 -0
- package/dist/_shared/sidebar-CIlGkVbF.js +538 -0
- package/dist/_shared/sidebar-CIlGkVbF.js.map +1 -0
- package/dist/_shared/sidebar-D3sK9otF.cjs +2 -0
- package/dist/_shared/sidebar-D3sK9otF.cjs.map +1 -0
- package/dist/_shared/smart-card-DYZGY_Su.js +361 -0
- package/dist/_shared/smart-card-DYZGY_Su.js.map +1 -0
- package/dist/_shared/smart-card-Df80VF8x.cjs +2 -0
- package/dist/_shared/smart-card-Df80VF8x.cjs.map +1 -0
- package/dist/_shared/spinner-BfAbXTQ7.js +67 -0
- package/dist/_shared/spinner-BfAbXTQ7.js.map +1 -0
- package/dist/_shared/spinner-DWn3x9Tl.cjs +2 -0
- package/dist/_shared/spinner-DWn3x9Tl.cjs.map +1 -0
- package/dist/_shared/table-CBKDA7ZE.js +1189 -0
- package/dist/_shared/table-CBKDA7ZE.js.map +1 -0
- package/dist/_shared/table-CJoxRCWy.cjs +2 -0
- package/dist/_shared/table-CJoxRCWy.cjs.map +1 -0
- package/dist/_shared/textarea-C4SOrh0z.cjs +2 -0
- package/dist/_shared/textarea-C4SOrh0z.cjs.map +1 -0
- package/dist/_shared/textarea-CsMkelmp.js +119 -0
- package/dist/_shared/textarea-CsMkelmp.js.map +1 -0
- package/dist/_shared/typography-Bzsl7aTu.cjs +2 -0
- package/dist/_shared/typography-Bzsl7aTu.cjs.map +1 -0
- package/dist/_shared/typography-CdxyWB1T.js +102 -0
- package/dist/_shared/typography-CdxyWB1T.js.map +1 -0
- package/dist/_shared/ui-provider-BF4m2cR0.cjs +2 -0
- package/dist/_shared/ui-provider-BF4m2cR0.cjs.map +1 -0
- package/dist/_shared/ui-provider-C8Ot88lS.js +85 -0
- package/dist/_shared/ui-provider-C8Ot88lS.js.map +1 -0
- package/dist/_shared/workspace-CTjIGCE0.cjs +2 -0
- package/dist/_shared/workspace-CTjIGCE0.cjs.map +1 -0
- package/dist/_shared/workspace-WgJgiSUA.js +357 -0
- package/dist/_shared/workspace-WgJgiSUA.js.map +1 -0
- package/dist/components/base/accordion/index.cjs +1 -1
- package/dist/components/base/accordion/index.js +1 -1
- package/dist/components/base/badge/index.cjs +1 -1
- package/dist/components/base/badge/index.js +1 -1
- package/dist/components/base/buttons/base-button.d.ts.map +1 -1
- package/dist/components/base/buttons/index.cjs +1 -1
- package/dist/components/base/buttons/index.js +2 -2
- package/dist/components/base/cards/index.cjs +1 -1
- package/dist/components/base/cards/index.d.ts +1 -1
- package/dist/components/base/cards/index.d.ts.map +1 -1
- package/dist/components/base/cards/index.js +1 -1
- package/dist/components/base/cards/smart-card.d.ts.map +1 -1
- package/dist/components/base/cards/smart-card.types.d.ts +2 -1
- package/dist/components/base/cards/smart-card.types.d.ts.map +1 -1
- package/dist/components/base/carousel/carousel.d.ts +66 -0
- package/dist/components/base/carousel/carousel.d.ts.map +1 -0
- package/dist/components/base/carousel/carousel.strings.d.ts +7 -0
- package/dist/components/base/carousel/carousel.strings.d.ts.map +1 -0
- package/dist/components/base/carousel/index.cjs +2 -0
- package/dist/components/base/carousel/index.cjs.map +1 -0
- package/dist/components/base/carousel/index.d.ts +3 -0
- package/dist/components/base/carousel/index.d.ts.map +1 -0
- package/dist/components/base/carousel/index.js +239 -0
- package/dist/components/base/carousel/index.js.map +1 -0
- package/dist/components/base/combobox/enhanced-combobox.d.ts +2 -2
- package/dist/components/base/combobox/enhanced-combobox.d.ts.map +1 -1
- package/dist/components/base/combobox/hooks/use-debounced-search.d.ts.map +1 -1
- package/dist/components/base/combobox/index.cjs +1 -1
- package/dist/components/base/combobox/index.js +1 -1
- package/dist/components/base/combobox/types.d.ts +4 -1
- package/dist/components/base/combobox/types.d.ts.map +1 -1
- package/dist/components/base/copyable/index.cjs +1 -1
- package/dist/components/base/copyable/index.js +1 -1
- package/dist/components/base/currency/index.cjs +1 -1
- package/dist/components/base/currency/index.js +1 -1
- package/dist/components/base/date-pickers/index.cjs +1 -1
- package/dist/components/base/date-pickers/index.js +2 -2
- package/dist/components/base/display/alert.d.ts +13 -1
- package/dist/components/base/display/alert.d.ts.map +1 -1
- package/dist/components/base/display/chart.cjs +8 -0
- package/dist/components/base/display/chart.cjs.map +1 -0
- package/dist/components/base/display/chart.d.ts +71 -1
- package/dist/components/base/display/chart.d.ts.map +1 -1
- package/dist/components/base/display/chart.js +144 -0
- package/dist/components/base/display/chart.js.map +1 -0
- package/dist/components/base/display/date-block.d.ts +1 -1
- package/dist/components/base/display/date-block.d.ts.map +1 -1
- package/dist/components/base/display/index.cjs +1 -1
- package/dist/components/base/display/index.d.ts +1 -2
- package/dist/components/base/display/index.d.ts.map +1 -1
- package/dist/components/base/display/index.js +10 -10
- package/dist/components/base/display/metadata/index.cjs +1 -1
- package/dist/components/base/display/metadata/index.js +1 -1
- package/dist/components/base/display/notification-banner.d.ts.map +1 -1
- package/dist/components/base/display/stacked-avatars.d.ts +6 -5
- package/dist/components/base/display/stacked-avatars.d.ts.map +1 -1
- package/dist/components/base/event-calendar/event-calendar-event-badge.d.ts.map +1 -1
- package/dist/components/base/event-calendar/event-calendar-event-card.d.ts.map +1 -1
- package/dist/components/base/event-calendar/event-calendar-header.d.ts.map +1 -1
- package/dist/components/base/event-calendar/event-calendar-legend.d.ts.map +1 -1
- package/dist/components/base/event-calendar/event-calendar.d.ts.map +1 -1
- package/dist/components/base/event-calendar/event-calendar.types.d.ts +3 -2
- package/dist/components/base/event-calendar/event-calendar.types.d.ts.map +1 -1
- package/dist/components/base/event-calendar/index.cjs +1 -1
- package/dist/components/base/event-calendar/index.cjs.map +1 -1
- package/dist/components/base/event-calendar/index.js +196 -205
- package/dist/components/base/event-calendar/index.js.map +1 -1
- package/dist/components/base/forms/fields/currency-input.d.ts.map +1 -1
- package/dist/components/base/forms/fields/decimal-input.d.ts.map +1 -1
- package/dist/components/base/forms/fields/index.d.ts +2 -0
- package/dist/components/base/forms/fields/index.d.ts.map +1 -1
- package/dist/components/base/forms/fields/password-input.d.ts +21 -0
- package/dist/components/base/forms/fields/password-input.d.ts.map +1 -0
- package/dist/components/base/forms/fields/select.d.ts +2 -0
- package/dist/components/base/forms/fields/select.d.ts.map +1 -1
- package/dist/components/base/forms/fields/slug-field.d.ts +16 -0
- package/dist/components/base/forms/fields/slug-field.d.ts.map +1 -0
- package/dist/components/base/forms/fields/switch-card.d.ts.map +1 -1
- package/dist/components/base/forms/index.cjs +1 -1
- package/dist/components/base/forms/index.js +8 -7
- package/dist/components/base/frame/frame.d.ts +24 -0
- package/dist/components/base/frame/frame.d.ts.map +1 -0
- package/dist/components/base/frame/index.cjs +2 -0
- package/dist/components/base/frame/index.cjs.map +1 -0
- package/dist/components/base/frame/index.d.ts +2 -0
- package/dist/components/base/frame/index.d.ts.map +1 -0
- package/dist/components/base/frame/index.js +164 -0
- package/dist/components/base/frame/index.js.map +1 -0
- package/dist/components/base/index.d.ts.map +1 -1
- package/dist/components/base/item/index.cjs +1 -1
- package/dist/components/base/item/index.js +1 -1
- package/dist/components/base/item/item.d.ts.map +1 -1
- package/dist/components/base/map/index.cjs +1 -1
- package/dist/components/base/map/index.cjs.map +1 -1
- package/dist/components/base/map/index.js +1 -1
- package/dist/components/base/navigation/index.cjs +1 -1
- package/dist/components/base/navigation/index.js +2 -2
- package/dist/components/base/popover-menu/index.cjs +1 -1
- package/dist/components/base/popover-menu/index.js +1 -1
- package/dist/components/base/popover-menu/popover-menu.d.ts +2 -1
- package/dist/components/base/popover-menu/popover-menu.d.ts.map +1 -1
- package/dist/components/base/sidebar/index.cjs +1 -1
- package/dist/components/base/sidebar/index.js +2 -2
- package/dist/components/base/sidebar/sidebar.d.ts +5 -3
- package/dist/components/base/sidebar/sidebar.d.ts.map +1 -1
- package/dist/components/base/spinner/index.cjs +1 -1
- package/dist/components/base/spinner/index.js +1 -1
- package/dist/components/base/table/data-table.d.ts.map +1 -1
- package/dist/components/base/table/index.cjs +1 -2
- package/dist/components/base/table/index.js +2 -1189
- package/dist/components/base/table/table-body.d.ts.map +1 -1
- package/dist/components/base/table/table-header.d.ts.map +1 -1
- package/dist/components/base/table/table-helpers.d.ts.map +1 -1
- package/dist/components/base/table/table.types.d.ts +6 -1
- package/dist/components/base/table/table.types.d.ts.map +1 -1
- package/dist/components/base/toaster/index.cjs +1 -1
- package/dist/components/base/toaster/index.js +1 -1
- package/dist/components/composed/admin/api-key-list/api-key-list.d.ts.map +1 -1
- package/dist/components/composed/admin/index.cjs +1 -1
- package/dist/components/composed/admin/index.cjs.map +1 -1
- package/dist/components/composed/admin/index.js +18 -13
- package/dist/components/composed/admin/index.js.map +1 -1
- package/dist/components/composed/admin/role-permission/role-permission.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-attachment/ai-attachment.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-citation/ai-citation.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-code-block/ai-code-block.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-file-tree/ai-file-tree.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-inline-citation/ai-inline-citation.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-prompt-suggestions/ai-prompt-suggestions.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-reasoning/ai-reasoning.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-sources/ai-sources.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-task/ai-task.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-task/types.d.ts +2 -0
- package/dist/components/composed/ai/ai-task/types.d.ts.map +1 -1
- package/dist/components/composed/ai/ai-tool-call/ai-tool-call.d.ts.map +1 -1
- package/dist/components/composed/ai/index.cjs +1 -1
- package/dist/components/composed/ai/index.cjs.map +1 -1
- package/dist/components/composed/ai/index.js +87 -83
- package/dist/components/composed/ai/index.js.map +1 -1
- package/dist/components/composed/analytics/chart-card/chart-card.d.ts +22 -0
- package/dist/components/composed/analytics/chart-card/chart-card.d.ts.map +1 -0
- package/dist/components/composed/analytics/chart-card/index.d.ts +2 -0
- package/dist/components/composed/analytics/chart-card/index.d.ts.map +1 -0
- package/dist/components/composed/analytics/format-metric-value.d.ts.map +1 -1
- package/dist/components/composed/analytics/index.cjs +1 -1
- package/dist/components/composed/analytics/index.cjs.map +1 -1
- package/dist/components/composed/analytics/index.d.ts +2 -0
- package/dist/components/composed/analytics/index.d.ts.map +1 -1
- package/dist/components/composed/analytics/index.js +369 -377
- package/dist/components/composed/analytics/index.js.map +1 -1
- package/dist/components/composed/analytics/metric-comparison/metric-comparison.d.ts +2 -1
- package/dist/components/composed/analytics/metric-comparison/metric-comparison.d.ts.map +1 -1
- package/dist/components/composed/analytics/metric-gradient/metric-gradient.d.ts.map +1 -1
- package/dist/components/composed/cards/contact-card/contact-card.d.ts.map +1 -1
- package/dist/components/composed/cards/course-card/course-card.d.ts.map +1 -1
- package/dist/components/composed/cards/giftcard-card/partials/giftcard-compact.d.ts.map +1 -1
- package/dist/components/composed/cards/giftcard-card/partials/giftcard-dark.d.ts.map +1 -1
- package/dist/components/composed/cards/giftcard-card/partials/giftcard-full.d.ts.map +1 -1
- package/dist/components/composed/cards/giftcard-card/partials/giftcard-illustrated.d.ts.map +1 -1
- package/dist/components/composed/cards/giftcard-card/partials/giftcard-minimal.d.ts.map +1 -1
- package/dist/components/composed/cards/index.cjs +1 -1
- package/dist/components/composed/cards/index.cjs.map +1 -1
- package/dist/components/composed/cards/index.js +586 -606
- package/dist/components/composed/cards/index.js.map +1 -1
- package/dist/components/composed/cards/vendor-profile/vendor-profile.d.ts.map +1 -1
- package/dist/components/composed/commerce/cart-summary/cart-summary.d.ts.map +1 -1
- package/dist/components/composed/commerce/cart-summary/types.d.ts +8 -1
- package/dist/components/composed/commerce/cart-summary/types.d.ts.map +1 -1
- package/dist/components/composed/commerce/coupon-input/coupon-input.d.ts.map +1 -1
- package/dist/components/composed/commerce/index.cjs +1 -1
- package/dist/components/composed/commerce/index.cjs.map +1 -1
- package/dist/components/composed/commerce/index.js +580 -486
- package/dist/components/composed/commerce/index.js.map +1 -1
- package/dist/components/composed/commerce/order-status/order-status.d.ts.map +1 -1
- package/dist/components/composed/commerce/order-status/types.d.ts +2 -0
- package/dist/components/composed/commerce/order-status/types.d.ts.map +1 -1
- package/dist/components/composed/commerce/payment-method/payment-method.d.ts.map +1 -1
- package/dist/components/composed/commerce/voucher-entry/types.d.ts +3 -0
- package/dist/components/composed/commerce/voucher-entry/types.d.ts.map +1 -1
- package/dist/components/composed/commerce/voucher-entry/voucher-entry.d.ts.map +1 -1
- package/dist/components/composed/dark-surfaces/booking-receipt/booking-receipt.d.ts.map +1 -1
- package/dist/components/composed/dark-surfaces/index.cjs +1 -1
- package/dist/components/composed/dark-surfaces/index.cjs.map +1 -1
- package/dist/components/composed/dark-surfaces/index.js +23 -16
- package/dist/components/composed/dark-surfaces/index.js.map +1 -1
- package/dist/components/composed/dark-surfaces/order-items/order-items.d.ts.map +1 -1
- package/dist/components/composed/dark-surfaces/order-items/types.d.ts +3 -1
- package/dist/components/composed/dark-surfaces/order-items/types.d.ts.map +1 -1
- package/dist/components/composed/data-display/index.cjs +1 -1
- package/dist/components/composed/data-display/index.cjs.map +1 -1
- package/dist/components/composed/data-display/index.js +18 -17
- package/dist/components/composed/data-display/index.js.map +1 -1
- package/dist/components/composed/data-display/invoice-mini/invoice-mini.d.ts.map +1 -1
- package/dist/components/composed/navigation/breadcrumb-progress/breadcrumb-progress.d.ts.map +1 -1
- package/dist/components/composed/navigation/index.cjs +1 -1
- package/dist/components/composed/navigation/index.cjs.map +1 -1
- package/dist/components/composed/navigation/index.js +90 -72
- package/dist/components/composed/navigation/index.js.map +1 -1
- package/dist/components/composed/navigation/kanban-board/kanban-board.d.ts.map +1 -1
- package/dist/components/composed/navigation/kanban-board/types.d.ts +5 -1
- package/dist/components/composed/navigation/kanban-board/types.d.ts.map +1 -1
- package/dist/components/composed/onboarding/index.cjs +1 -1
- package/dist/components/composed/onboarding/index.cjs.map +1 -1
- package/dist/components/composed/onboarding/index.js +3 -3
- package/dist/components/composed/timelines/index.cjs +1 -1
- package/dist/components/composed/timelines/index.cjs.map +1 -1
- package/dist/components/composed/timelines/index.js +6 -6
- package/dist/components/composed/timelines/index.js.map +1 -1
- package/dist/components/features/activities/activities-feed.d.ts.map +1 -1
- package/dist/components/features/activities/activities.types.d.ts +2 -1
- package/dist/components/features/activities/activities.types.d.ts.map +1 -1
- package/dist/components/features/activities/index.cjs +1 -1
- package/dist/components/features/activities/index.cjs.map +1 -1
- package/dist/components/features/activities/index.js +286 -301
- package/dist/components/features/activities/index.js.map +1 -1
- package/dist/components/features/activities/partials/activities-feed-card.d.ts.map +1 -1
- package/dist/components/features/activities/partials/activity-headline.d.ts.map +1 -1
- package/dist/components/features/activities/partials/activity-resource-tag.d.ts.map +1 -1
- package/dist/components/features/activities/partials/activity-row.d.ts.map +1 -1
- package/dist/components/features/ai-chat/ai-chat.d.ts +2 -1
- package/dist/components/features/ai-chat/ai-chat.d.ts.map +1 -1
- package/dist/components/features/ai-chat/index.cjs +2 -2
- package/dist/components/features/ai-chat/index.cjs.map +1 -1
- package/dist/components/features/ai-chat/index.js +16 -14
- package/dist/components/features/ai-chat/index.js.map +1 -1
- package/dist/components/features/ai-chat/partials/ai-chat-conversation.d.ts +2 -1
- package/dist/components/features/ai-chat/partials/ai-chat-conversation.d.ts.map +1 -1
- package/dist/components/features/ai-chat/partials/ai-chat-message.d.ts +2 -1
- package/dist/components/features/ai-chat/partials/ai-chat-message.d.ts.map +1 -1
- package/dist/components/features/ai-chat/partials/ai-chat-prompt-input.d.ts +2 -1
- package/dist/components/features/ai-chat/partials/ai-chat-prompt-input.d.ts.map +1 -1
- package/dist/components/features/ai-chat/partials/ai-chat-queue.d.ts +2 -1
- package/dist/components/features/ai-chat/partials/ai-chat-queue.d.ts.map +1 -1
- package/dist/components/features/ai-chat/partials/ai-chat-suggestions-row.d.ts +2 -1
- package/dist/components/features/ai-chat/partials/ai-chat-suggestions-row.d.ts.map +1 -1
- package/dist/components/features/card/card.types.d.ts +2 -0
- package/dist/components/features/card/card.types.d.ts.map +1 -1
- package/dist/components/features/card/index.cjs +1 -1
- package/dist/components/features/card/index.cjs.map +1 -1
- package/dist/components/features/card/index.js +37 -43
- package/dist/components/features/card/index.js.map +1 -1
- package/dist/components/features/card/partials/default-shared-resource-partials.d.ts +2 -1
- package/dist/components/features/card/partials/default-shared-resource-partials.d.ts.map +1 -1
- package/dist/components/features/card/shared-resource-card.d.ts.map +1 -1
- package/dist/components/features/comments/comments-provider.d.ts +2 -1
- package/dist/components/features/comments/comments-provider.d.ts.map +1 -1
- package/dist/components/features/comments/comments.types.d.ts +6 -5
- package/dist/components/features/comments/comments.types.d.ts.map +1 -1
- package/dist/components/features/comments/index.cjs +1 -1
- package/dist/components/features/comments/index.js +2 -2
- package/dist/components/features/comments/partials/comment-attachment-chip.d.ts +2 -1
- package/dist/components/features/comments/partials/comment-attachment-chip.d.ts.map +1 -1
- package/dist/components/features/comments/partials/comment-composer.d.ts.map +1 -1
- package/dist/components/features/comments/partials/comment-empty.d.ts +2 -1
- package/dist/components/features/comments/partials/comment-empty.d.ts.map +1 -1
- package/dist/components/features/comments/partials/comment-item.d.ts.map +1 -1
- package/dist/components/features/event-log/event-log.d.ts.map +1 -1
- package/dist/components/features/event-log/event-log.types.d.ts +2 -2
- package/dist/components/features/event-log/event-log.types.d.ts.map +1 -1
- package/dist/components/features/event-log/index.cjs +1 -1
- package/dist/components/features/event-log/index.cjs.map +1 -1
- package/dist/components/features/event-log/index.js +86 -86
- package/dist/components/features/event-log/index.js.map +1 -1
- package/dist/components/features/filters/facets/async-select-facet.d.ts +1 -1
- package/dist/components/features/filters/facets/async-select-facet.d.ts.map +1 -1
- package/dist/components/features/filters/filters.types.d.ts +7 -7
- package/dist/components/features/filters/filters.types.d.ts.map +1 -1
- package/dist/components/features/filters/hooks/use-async-options.d.ts.map +1 -1
- package/dist/components/features/filters/index.cjs +1 -1
- package/dist/components/features/filters/index.cjs.map +1 -1
- package/dist/components/features/filters/index.js +518 -495
- package/dist/components/features/filters/index.js.map +1 -1
- package/dist/components/features/filters/partials/async-filter-content.d.ts +1 -1
- package/dist/components/features/filters/partials/async-filter-content.d.ts.map +1 -1
- package/dist/components/features/filters/partials/filter-pill.d.ts.map +1 -1
- package/dist/components/features/filters/partials/filters-button.d.ts.map +1 -1
- package/dist/components/features/global-search/global-search.d.ts +2 -1
- package/dist/components/features/global-search/global-search.d.ts.map +1 -1
- package/dist/components/features/global-search/index.cjs +1 -1
- package/dist/components/features/global-search/index.cjs.map +1 -1
- package/dist/components/features/global-search/index.js +291 -271
- package/dist/components/features/global-search/index.js.map +1 -1
- package/dist/components/features/global-search/partials/global-search-idle-state.d.ts.map +1 -1
- package/dist/components/features/global-search/partials/global-search-input.d.ts.map +1 -1
- package/dist/components/features/global-search/partials/global-search-result-row.d.ts.map +1 -1
- package/dist/components/features/global-search/partials/global-search-tabs.d.ts.map +1 -1
- package/dist/components/features/index.d.ts.map +1 -1
- package/dist/components/features/kanban/index.cjs +1 -1
- package/dist/components/features/kanban/index.cjs.map +1 -1
- package/dist/components/features/kanban/index.js +133 -124
- package/dist/components/features/kanban/index.js.map +1 -1
- package/dist/components/features/kanban/kanban-context.d.ts +1 -0
- package/dist/components/features/kanban/kanban-context.d.ts.map +1 -1
- package/dist/components/features/kanban/kanban.d.ts.map +1 -1
- package/dist/components/features/media-library/hooks/index.d.ts +2 -0
- package/dist/components/features/media-library/hooks/index.d.ts.map +1 -0
- package/dist/components/features/media-library/hooks/use-media-library.d.ts +6 -0
- package/dist/components/features/media-library/hooks/use-media-library.d.ts.map +1 -0
- package/dist/components/features/media-library/index.cjs +2 -0
- package/dist/components/features/media-library/index.cjs.map +1 -0
- package/dist/components/features/media-library/index.d.ts +7 -0
- package/dist/components/features/media-library/index.d.ts.map +1 -0
- package/dist/components/features/media-library/index.js +1796 -0
- package/dist/components/features/media-library/index.js.map +1 -0
- package/dist/components/features/media-library/media-library.d.ts +4 -0
- package/dist/components/features/media-library/media-library.d.ts.map +1 -0
- package/dist/components/features/media-library/media-library.strings.d.ts +120 -0
- package/dist/components/features/media-library/media-library.strings.d.ts.map +1 -0
- package/dist/components/features/media-library/media-library.types.d.ts +340 -0
- package/dist/components/features/media-library/media-library.types.d.ts.map +1 -0
- package/dist/components/features/media-library/media-resource-gallery.d.ts +3 -0
- package/dist/components/features/media-library/media-resource-gallery.d.ts.map +1 -0
- package/dist/components/features/media-library/partials/index.d.ts +2 -0
- package/dist/components/features/media-library/partials/index.d.ts.map +1 -0
- package/dist/components/features/media-library/partials/media-library-partials.d.ts +11 -0
- package/dist/components/features/media-library/partials/media-library-partials.d.ts.map +1 -0
- package/dist/components/features/mentions/index.cjs +1 -1
- package/dist/components/features/mentions/index.js +1 -1
- package/dist/components/features/mentions/partials/mention-chip.d.ts.map +1 -1
- package/dist/components/features/mentions/partials/mention-inline-suggestions.d.ts.map +1 -1
- package/dist/components/features/mentions/partials/mention-picker.d.ts.map +1 -1
- package/dist/components/features/mentions/utils/build-mention-html.d.ts +3 -3
- package/dist/components/features/overlays/dialog.d.ts +1 -1
- package/dist/components/features/overlays/dialog.d.ts.map +1 -1
- package/dist/components/features/overlays/drawer.d.ts.map +1 -1
- package/dist/components/features/overlays/index.cjs +1 -1
- package/dist/components/features/overlays/index.js +1 -1
- package/dist/components/features/overlays/overlays.types.d.ts +3 -1
- package/dist/components/features/overlays/overlays.types.d.ts.map +1 -1
- package/dist/components/features/products/components/index.d.ts +15 -0
- package/dist/components/features/products/components/index.d.ts.map +1 -0
- package/dist/components/features/products/components/product-contract-overview.d.ts +6 -0
- package/dist/components/features/products/components/product-contract-overview.d.ts.map +1 -0
- package/dist/components/features/products/components/product-details-card.d.ts +6 -0
- package/dist/components/features/products/components/product-details-card.d.ts.map +1 -0
- package/dist/components/features/products/components/product-operations-card.d.ts +6 -0
- package/dist/components/features/products/components/product-operations-card.d.ts.map +1 -0
- package/dist/components/features/products/components/product-option-action-menu.d.ts +6 -0
- package/dist/components/features/products/components/product-option-action-menu.d.ts.map +1 -0
- package/dist/components/features/products/components/product-options-summary.d.ts +6 -0
- package/dist/components/features/products/components/product-options-summary.d.ts.map +1 -0
- package/dist/components/features/products/components/product-overview.d.ts +6 -0
- package/dist/components/features/products/components/product-overview.d.ts.map +1 -0
- package/dist/components/features/products/components/product-policies-card.d.ts +6 -0
- package/dist/components/features/products/components/product-policies-card.d.ts.map +1 -0
- package/dist/components/features/products/components/product-quote-preview-card.d.ts +6 -0
- package/dist/components/features/products/components/product-quote-preview-card.d.ts.map +1 -0
- package/dist/components/features/products/components/product-readiness-card.d.ts +6 -0
- package/dist/components/features/products/components/product-readiness-card.d.ts.map +1 -0
- package/dist/components/features/products/components/product-structure-card.d.ts +6 -0
- package/dist/components/features/products/components/product-structure-card.d.ts.map +1 -0
- package/dist/components/features/products/components/product-variant-action-menu.d.ts +6 -0
- package/dist/components/features/products/components/product-variant-action-menu.d.ts.map +1 -0
- package/dist/components/features/products/components/product-variant-details.d.ts +6 -0
- package/dist/components/features/products/components/product-variant-details.d.ts.map +1 -0
- package/dist/components/features/products/components/product-variant-editor.d.ts +6 -0
- package/dist/components/features/products/components/product-variant-editor.d.ts.map +1 -0
- package/dist/components/features/products/components/product-variants-table.d.ts +6 -0
- package/dist/components/features/products/components/product-variants-table.d.ts.map +1 -0
- package/dist/components/features/products/index.cjs +2 -0
- package/dist/components/features/products/index.cjs.map +1 -0
- package/dist/components/features/products/index.d.ts +6 -0
- package/dist/components/features/products/index.d.ts.map +1 -0
- package/dist/components/features/products/index.js +1749 -0
- package/dist/components/features/products/index.js.map +1 -0
- package/dist/components/features/products/partials/index.d.ts +8 -0
- package/dist/components/features/products/partials/index.d.ts.map +1 -0
- package/dist/components/features/products/partials/product-actions.d.ts +8 -0
- package/dist/components/features/products/partials/product-actions.d.ts.map +1 -0
- package/dist/components/features/products/partials/product-empty-state.d.ts +8 -0
- package/dist/components/features/products/partials/product-empty-state.d.ts.map +1 -0
- package/dist/components/features/products/partials/product-metric-tile.d.ts +5 -0
- package/dist/components/features/products/partials/product-metric-tile.d.ts.map +1 -0
- package/dist/components/features/products/partials/product-rows.d.ts +25 -0
- package/dist/components/features/products/partials/product-rows.d.ts.map +1 -0
- package/dist/components/features/products/partials/product-tone.d.ts +9 -0
- package/dist/components/features/products/partials/product-tone.d.ts.map +1 -0
- package/dist/components/features/products/partials/product-values.d.ts +2 -0
- package/dist/components/features/products/partials/product-values.d.ts.map +1 -0
- package/dist/components/features/products/partials/product-variant-table-parts.d.ts +22 -0
- package/dist/components/features/products/partials/product-variant-table-parts.d.ts.map +1 -0
- package/dist/components/features/products/products.d.ts +7 -0
- package/dist/components/features/products/products.d.ts.map +1 -0
- package/dist/components/features/products/products.strings.d.ts +197 -0
- package/dist/components/features/products/products.strings.d.ts.map +1 -0
- package/dist/components/features/products/products.types.d.ts +372 -0
- package/dist/components/features/products/products.types.d.ts.map +1 -0
- package/dist/components/features/rich-text-editor/index.cjs +1 -1
- package/dist/components/features/rich-text-editor/index.js +1 -1
- package/dist/components/features/rich-text-editor/partials/rich-text-editor-fallback.d.ts.map +1 -1
- package/dist/components/features/rich-text-editor/partials/rich-text-editor-tiptap.d.ts.map +1 -1
- package/dist/components/features/schema-form/hooks/index.d.ts +2 -0
- package/dist/components/features/schema-form/hooks/index.d.ts.map +1 -0
- package/dist/components/features/schema-form/hooks/use-schema-form.d.ts +24 -0
- package/dist/components/features/schema-form/hooks/use-schema-form.d.ts.map +1 -0
- package/dist/components/features/schema-form/index.cjs +2 -0
- package/dist/components/features/schema-form/index.cjs.map +1 -0
- package/dist/components/features/schema-form/index.d.ts +6 -0
- package/dist/components/features/schema-form/index.d.ts.map +1 -0
- package/dist/components/features/schema-form/index.js +721 -0
- package/dist/components/features/schema-form/index.js.map +1 -0
- package/dist/components/features/schema-form/partials/index.d.ts +4 -0
- package/dist/components/features/schema-form/partials/index.d.ts.map +1 -0
- package/dist/components/features/schema-form/partials/schema-form-actions.d.ts +16 -0
- package/dist/components/features/schema-form/partials/schema-form-actions.d.ts.map +1 -0
- package/dist/components/features/schema-form/partials/schema-form-empty.d.ts +10 -0
- package/dist/components/features/schema-form/partials/schema-form-empty.d.ts.map +1 -0
- package/dist/components/features/schema-form/partials/schema-form-field.d.ts +11 -0
- package/dist/components/features/schema-form/partials/schema-form-field.d.ts.map +1 -0
- package/dist/components/features/schema-form/schema-form.d.ts +6 -0
- package/dist/components/features/schema-form/schema-form.d.ts.map +1 -0
- package/dist/components/features/schema-form/schema-form.strings.d.ts +12 -0
- package/dist/components/features/schema-form/schema-form.strings.d.ts.map +1 -0
- package/dist/components/features/schema-form/schema-form.types.d.ts +198 -0
- package/dist/components/features/schema-form/schema-form.types.d.ts.map +1 -0
- package/dist/components/features/schema-form/schema-form.utils.d.ts +19 -0
- package/dist/components/features/schema-form/schema-form.utils.d.ts.map +1 -0
- package/dist/components/features/suggestions/hooks/use-suggestions.d.ts.map +1 -1
- package/dist/components/features/suggestions/index.cjs +1 -1
- package/dist/components/features/suggestions/index.cjs.map +1 -1
- package/dist/components/features/suggestions/index.js +64 -64
- package/dist/components/features/suggestions/index.js.map +1 -1
- package/dist/components/features/suggestions/suggestions.d.ts.map +1 -1
- package/dist/components/features/suggestions/suggestions.types.d.ts +1 -0
- package/dist/components/features/suggestions/suggestions.types.d.ts.map +1 -1
- package/dist/components/features/sync/index.cjs +1 -1
- package/dist/components/features/sync/index.cjs.map +1 -1
- package/dist/components/features/sync/index.js +3 -3
- package/dist/components/layout/app-shell/app-shell.types.d.ts +1 -1
- package/dist/components/layout/app-shell/app-shell.types.d.ts.map +1 -1
- package/dist/components/layout/app-shell/index.cjs +1 -1
- package/dist/components/layout/app-shell/index.js +1 -1
- package/dist/components/layout/app-shell/topbar-sidebar-layout.d.ts.map +1 -1
- package/dist/components/layout/auth/auth-card.d.ts +3 -0
- package/dist/components/layout/auth/auth-card.d.ts.map +1 -0
- package/dist/components/layout/auth/auth-footer-links.d.ts +3 -0
- package/dist/components/layout/auth/auth-footer-links.d.ts.map +1 -0
- package/dist/components/layout/auth/auth-hooks.d.ts +5 -0
- package/dist/components/layout/auth/auth-hooks.d.ts.map +1 -0
- package/dist/components/layout/auth/auth-method-switch.d.ts +5 -0
- package/dist/components/layout/auth/auth-method-switch.d.ts.map +1 -0
- package/dist/components/layout/auth/auth-shell.d.ts +3 -0
- package/dist/components/layout/auth/auth-shell.d.ts.map +1 -0
- package/dist/components/layout/auth/auth-social-providers.d.ts +4 -0
- package/dist/components/layout/auth/auth-social-providers.d.ts.map +1 -0
- package/dist/components/layout/auth/auth-split-panel.d.ts +3 -0
- package/dist/components/layout/auth/auth-split-panel.d.ts.map +1 -0
- package/dist/components/layout/auth/auth.strings.d.ts +22 -0
- package/dist/components/layout/auth/auth.strings.d.ts.map +1 -0
- package/dist/components/layout/auth/auth.types.d.ts +187 -0
- package/dist/components/layout/auth/auth.types.d.ts.map +1 -0
- package/dist/components/layout/auth/index.cjs +1 -0
- package/dist/components/layout/auth/index.d.ts +10 -0
- package/dist/components/layout/auth/index.d.ts.map +1 -0
- package/dist/components/layout/auth/index.js +2 -0
- package/dist/components/layout/header/index.cjs +1 -1
- package/dist/components/layout/header/index.js +1 -1
- package/dist/components/layout/header/partials/header-notifications.d.ts.map +1 -1
- package/dist/components/layout/header/partials/header-search.d.ts.map +1 -1
- package/dist/components/layout/hooks/index.cjs +1 -1
- package/dist/components/layout/hooks/index.js +1 -1
- package/dist/components/layout/index.cjs +1 -1
- package/dist/components/layout/index.d.ts +2 -0
- package/dist/components/layout/index.d.ts.map +1 -1
- package/dist/components/layout/index.js +8 -6
- package/dist/components/layout/page/index.cjs +1 -1
- package/dist/components/layout/page/index.js +1 -1
- package/dist/components/layout/sidebar/components/sidebar-grouped-navigation.d.ts.map +1 -1
- package/dist/components/layout/sidebar/index.cjs +1 -1
- package/dist/components/layout/sidebar/index.js +2 -2
- package/dist/components/layout/workspace/index.cjs +1 -0
- package/dist/components/layout/workspace/index.d.ts +4 -0
- package/dist/components/layout/workspace/index.d.ts.map +1 -0
- package/dist/components/layout/workspace/index.js +2 -0
- package/dist/components/layout/workspace/workspace.d.ts +7 -0
- package/dist/components/layout/workspace/workspace.d.ts.map +1 -0
- package/dist/components/layout/workspace/workspace.strings.d.ts +19 -0
- package/dist/components/layout/workspace/workspace.strings.d.ts.map +1 -0
- package/dist/components/layout/workspace/workspace.types.d.ts +96 -0
- package/dist/components/layout/workspace/workspace.types.d.ts.map +1 -0
- package/dist/components/typography/heading.d.ts +2 -1
- package/dist/components/typography/heading.d.ts.map +1 -1
- package/dist/components/typography/index.cjs +1 -1
- package/dist/components/typography/index.js +2 -3
- package/dist/components/typography/text-link.d.ts.map +1 -1
- package/dist/components/typography/text.d.ts +2 -1
- package/dist/components/typography/text.d.ts.map +1 -1
- package/dist/components/ui/alert-dialog.d.ts +19 -0
- package/dist/components/ui/alert-dialog.d.ts.map +1 -0
- package/dist/components/ui/aspect-ratio.d.ts +5 -0
- package/dist/components/ui/aspect-ratio.d.ts.map +1 -0
- package/dist/components/ui/carousel.d.ts +29 -0
- package/dist/components/ui/carousel.d.ts.map +1 -0
- package/dist/components/ui/direction.d.ts +2 -0
- package/dist/components/ui/direction.d.ts.map +1 -0
- package/dist/components/ui/drawer.d.ts +14 -0
- package/dist/components/ui/drawer.d.ts.map +1 -0
- package/dist/components/ui/field.d.ts +25 -0
- package/dist/components/ui/field.d.ts.map +1 -0
- package/dist/components/ui/input-group.d.ts +1 -1
- package/dist/components/ui/input-otp.d.ts +12 -0
- package/dist/components/ui/input-otp.d.ts.map +1 -0
- package/dist/components/ui/kbd.d.ts +4 -0
- package/dist/components/ui/kbd.d.ts.map +1 -0
- package/dist/components/ui/label.d.ts +4 -0
- package/dist/components/ui/label.d.ts.map +1 -0
- package/dist/components/ui/menubar.d.ts +30 -0
- package/dist/components/ui/menubar.d.ts.map +1 -0
- package/dist/components/ui/native-select.d.ts +9 -0
- package/dist/components/ui/native-select.d.ts.map +1 -0
- package/dist/components/ui/navigation-menu.d.ts +12 -0
- package/dist/components/ui/navigation-menu.d.ts.map +1 -0
- package/dist/components/ui/resizable.d.ts +8 -0
- package/dist/components/ui/resizable.d.ts.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/lib/ui-provider/index.cjs +1 -1
- package/dist/lib/ui-provider/index.js +1 -1
- package/dist/lib/utils.cjs +1 -1
- package/dist/lib/utils.cjs.map +1 -1
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +19 -16
- package/dist/lib/utils.js.map +1 -1
- package/dist/showcase/assets/AreaChart-BkAbL-UV.js +6 -0
- package/dist/showcase/assets/CSPContext-B11tftuK.js +1 -0
- package/dist/showcase/assets/CompositeItem-Dzu0MfUC.js +1 -0
- package/dist/showcase/assets/CompositeRoot-CQvQ_uj2.js +1 -0
- package/dist/showcase/assets/DialogTrigger-BxVhSw4D.js +1 -0
- package/dist/showcase/assets/FieldItemContext-BSFHjS7g.js +1 -0
- package/dist/showcase/assets/LabelableContext-DapqaNeY.js +1 -0
- package/dist/showcase/assets/PreviewLayout-CGEkbS-i.js +1 -0
- package/dist/showcase/assets/RadioGroup-DBA3iBQw.js +1 -0
- package/dist/showcase/assets/Separator-BEMr82IS.js +1 -0
- package/dist/showcase/assets/ToolbarRootContext-xN-ruoGR.js +1 -0
- package/dist/showcase/assets/accordion-B-Iy0jKu.js +171 -0
- package/dist/showcase/assets/accordion-variants-B9GD0oBE.js +1 -0
- package/dist/showcase/assets/action-menu-CMUF6gPp.js +1 -0
- package/dist/showcase/assets/activities-C1P9bsJm.js +501 -0
- package/dist/showcase/assets/activities-feed-card-WZUuGHmT.js +1 -0
- package/dist/showcase/assets/activity-BVP5C805.js +1 -0
- package/dist/showcase/assets/admin-DWOK4sj4.js +80 -0
- package/dist/showcase/assets/ai-Dteb3y6G.js +41 -0
- package/dist/showcase/assets/ai-artifact-B0d7GveY.js +2 -0
- package/dist/showcase/assets/ai-chat-IJ0b2FOw.js +568 -0
- package/dist/showcase/assets/ai-elements-Cr8GgtEV.js +387 -0
- package/dist/showcase/assets/ai-new-BJN9wNvX.js +167 -0
- package/dist/showcase/assets/ai-tool-call-BqlQuR1P.js +1 -0
- package/dist/showcase/assets/alert-2_0J7Vv6.js +1 -0
- package/dist/showcase/assets/alert-7wEOpEor.js +93 -0
- package/dist/showcase/assets/alert-C_FOBilU.js +62 -0
- package/dist/showcase/assets/api-key-list-CGV1k52v.js +73 -0
- package/dist/showcase/assets/app-sidebar-S6oUYO4h.js +1 -0
- package/dist/showcase/assets/arrow-down-VNr82bS3.js +1 -0
- package/dist/showcase/assets/arrow-left-BSVeKWNq.js +1 -0
- package/dist/showcase/assets/arrow-right-D6hTB0Bd.js +1 -0
- package/dist/showcase/assets/arrow-up-p9oA4cIz.js +1 -0
- package/dist/showcase/assets/arrow-up-right-BtlQ62bc.js +1 -0
- package/dist/showcase/assets/avatar-BxcQUuh0.js +57 -0
- package/dist/showcase/assets/avatar-LGWm52rv.js +1 -0
- package/dist/showcase/assets/badge-COn5psy3.js +28 -0
- package/dist/showcase/assets/badge-check-D2C2BPUT.js +1 -0
- package/dist/showcase/assets/bell-C80n9VRl.js +1 -0
- package/dist/showcase/assets/bot-C83bUUi9.js +1 -0
- package/dist/showcase/assets/box-rZ0pA-02.js +1 -0
- package/dist/showcase/assets/brain-BJtktdVu.js +1 -0
- package/dist/showcase/assets/brand-CxdIBpyJ.js +36 -0
- package/dist/showcase/assets/breadcrumb-BZsr_A8k.js +1 -0
- package/dist/showcase/assets/breadcrumb-CSU8FvWB.js +52 -0
- package/dist/showcase/assets/breadcrumbs-BUm4gHzL.js +1 -0
- package/dist/showcase/assets/briefcase-0WhUdLn5.js +1 -0
- package/dist/showcase/assets/building-2-1D6zVdCI.js +1 -0
- package/dist/showcase/assets/button-C22Gs6y0.js +44 -0
- package/dist/showcase/assets/button-group-C0Ts4-x3.js +1 -0
- package/dist/showcase/assets/buttons-Dfn6hmwe.js +270 -0
- package/dist/showcase/assets/calendar-7a4yQlzJ.js +1 -0
- package/dist/showcase/assets/calendar-Bo17POsN.js +1 -0
- package/dist/showcase/assets/calendar-D6XNDRVQ.js +16 -0
- package/dist/showcase/assets/calendar-days-C4mG2tOe.js +1 -0
- package/dist/showcase/assets/camera-C16z6v0m.js +1 -0
- package/dist/showcase/assets/card-BjqRQxxz.js +1 -0
- package/dist/showcase/assets/card-IzYmUTpI.js +188 -0
- package/dist/showcase/assets/card-primitives-BDj4DtS8.js +1 -0
- package/dist/showcase/assets/card-radio-group-7GU9AtWs.js +1 -0
- package/dist/showcase/assets/cards-DAqpr8CM.js +328 -0
- package/dist/showcase/assets/carousel-D1n4Kkoo.js +449 -0
- package/dist/showcase/assets/chart-D2EGeI3b.js +358 -0
- package/dist/showcase/assets/chart-column-DKcP77Dx.js +1 -0
- package/dist/showcase/assets/checkbox-BI3gcjED.js +1 -0
- package/dist/showcase/assets/chevron-down-ByPPEdNm.js +1 -0
- package/dist/showcase/assets/chevron-left-BNByuq3g.js +1 -0
- package/dist/showcase/assets/chevron-right-D4pIMCh9.js +1 -0
- package/dist/showcase/assets/chevron-up-Cha879Nz.js +1 -0
- package/dist/showcase/assets/chevrons-up-down-eAgHau5X.js +1 -0
- package/dist/showcase/assets/circle-V5hdlsIn.js +1 -0
- package/dist/showcase/assets/circle-alert-BW-Btwgh.js +1 -0
- package/dist/showcase/assets/circle-check-1MSds3Vu.js +1 -0
- package/dist/showcase/assets/circle-check-big-vBWkmhCZ.js +1 -0
- package/dist/showcase/assets/circle-dot-CsD5uXwH.js +1 -0
- package/dist/showcase/assets/circle-question-mark-xYn9p1nL.js +1 -0
- package/dist/showcase/assets/circle-x-VSqZOeGt.js +1 -0
- package/dist/showcase/assets/clock-3-CP_t59kW.js +1 -0
- package/dist/showcase/assets/clock-9xbB7EnW.js +1 -0
- package/dist/showcase/assets/code-xml-CeGA85eB.js +1 -0
- package/dist/showcase/assets/collapsible-C2W51-wl.js +27 -0
- package/dist/showcase/assets/collapsible-C4eof15p.js +1 -0
- package/dist/showcase/assets/combobox-i8o4u6Q0.js +696 -0
- package/dist/showcase/assets/command-C4F78Ppy.js +1 -0
- package/dist/showcase/assets/command-wjOXUieO.js +1 -0
- package/dist/showcase/assets/comment-composer-DeURrlgL.js +1 -0
- package/dist/showcase/assets/comment-item-D07Qk-Nt.js +1 -0
- package/dist/showcase/assets/comments-Bo-lZU18.js +357 -0
- package/dist/showcase/assets/commerce-extras-Cio3xn_B.js +189 -0
- package/dist/showcase/assets/commerce-jqA58sCZ.js +79 -0
- package/dist/showcase/assets/composite-BQFpnmS9.js +1 -0
- package/dist/showcase/assets/contact-card-4ajPhcd_.js +65 -0
- package/dist/showcase/assets/content-container-B83BnjFb.js +1 -0
- package/dist/showcase/assets/copyable-DKkroGJ3.js +96 -0
- package/dist/showcase/assets/course-card-DShYl03k.js +77 -0
- package/dist/showcase/assets/cpu-BZTsuaUu.js +1 -0
- package/dist/showcase/assets/credit-card-CAI3F3HB.js +1 -0
- package/dist/showcase/assets/currency-PXgbngHk.js +149 -0
- package/dist/showcase/assets/dark-surfaces-pSCicdm4.js +90 -0
- package/dist/showcase/assets/database-oHsxHUj-.js +1 -0
- package/dist/showcase/assets/date-block-CvCdJr8d.js +1 -0
- package/dist/showcase/assets/date-picker-Cd5vsEEd.js +1 -0
- package/dist/showcase/assets/date-pickers-CBK-zvSB.js +73 -0
- package/dist/showcase/assets/dense-info-zOdJpez6.js +106 -0
- package/dist/showcase/assets/dialog-D9-MRCRg.js +1 -0
- package/dist/showcase/assets/dialog-EDw9DvZs.js +1 -0
- package/dist/showcase/assets/display-CE9JWinr.js +403 -0
- package/dist/showcase/assets/dist-CjZ6RM9v.js +45 -0
- package/dist/showcase/assets/dollar-sign-BXD_x2mP.js +1 -0
- package/dist/showcase/assets/download-D0ur_d_N.js +1 -0
- package/dist/showcase/assets/dropdown-menu-Cto8-yDW.js +1 -0
- package/dist/showcase/assets/dropzone-9Gb4mR4x.js +1 -0
- package/dist/showcase/assets/earth-BN1w3w7h.js +1 -0
- package/dist/showcase/assets/ellipsis-DsrebD1Y.js +1 -0
- package/dist/showcase/assets/ellipsis-vertical-CAiMV7G2.js +1 -0
- package/dist/showcase/assets/empty-DoJF3uif.js +1 -0
- package/dist/showcase/assets/empty-item-zZ85qI6s.js +49 -0
- package/dist/showcase/assets/empty-state-CGfB7sOE.js +1 -0
- package/dist/showcase/assets/empty-state-Y_4qnNWt.js +188 -0
- package/dist/showcase/assets/enhanced-activities-B41hAxhb.js +361 -0
- package/dist/showcase/assets/enhanced-combobox-BOimEW-1.js +1 -0
- package/dist/showcase/assets/event-calendar-BjcfC6fM.js +138 -0
- package/dist/showcase/assets/event-log-BhoMXcix.js +330 -0
- package/dist/showcase/assets/example-Cz_880po.js +1 -0
- package/dist/showcase/assets/external-link-Cy1-PP8k.js +1 -0
- package/dist/showcase/assets/eye-C85PNNdH.js +1 -0
- package/dist/showcase/assets/feature-announcement-_tpahla3.js +34 -0
- package/dist/showcase/assets/file-C8PCBEtY.js +1 -0
- package/dist/showcase/assets/file-text-DwqbUujq.js +1 -0
- package/dist/showcase/assets/filters-ChqGg_1z.js +78 -0
- package/dist/showcase/assets/flag-csHQcBml.js +1 -0
- package/dist/showcase/assets/folder-open-BThTng3d.js +1 -0
- package/dist/showcase/assets/form-field-B5g_5Zjm.js +1 -0
- package/dist/showcase/assets/form-sizing-DHUDpiPA.js +1 -0
- package/dist/showcase/assets/format-DrTwpH65.js +1 -0
- package/dist/showcase/assets/format-metric-value-BTsvOjZQ.js +1 -0
- package/dist/showcase/assets/forms-BukyUSKs.js +862 -0
- package/dist/showcase/assets/frame-BNKhZVlb.js +167 -0
- package/dist/showcase/assets/getPseudoElementBounds-DwyQgIj-.js +1 -0
- package/dist/showcase/assets/gift-CtM--bDo.js +1 -0
- package/dist/showcase/assets/giftcard-cards-imm4Br0H.js +85 -0
- package/dist/showcase/assets/git-branch-Dl3AzbqP.js +1 -0
- package/dist/showcase/assets/global-search-Bhl7z_vN.js +1 -0
- package/dist/showcase/assets/global-search-C4yaPFSW.js +215 -0
- package/dist/showcase/assets/globe-BCikLfKc.js +1 -0
- package/dist/showcase/assets/gradient-card-Dh_5ZYv0.js +58 -0
- package/dist/showcase/assets/hash-C8m0EECO.js +1 -0
- package/dist/showcase/assets/header-BXjw7Lm_.js +1 -0
- package/dist/showcase/assets/header-notifications-CShSQ8kR.js +1 -0
- package/dist/showcase/assets/heart-BJVBFZ-j.js +1 -0
- package/dist/showcase/assets/hero-CLDdwZDr.png +0 -0
- package/dist/showcase/assets/house-C3fXPhlL.js +1 -0
- package/dist/showcase/assets/icon-badge-dwVx3Hxf.js +1 -0
- package/dist/showcase/assets/image-gc4qX_7C.js +1 -0
- package/dist/showcase/assets/inbox-C0GJ1KEC.js +1 -0
- package/dist/showcase/assets/index-BQIv1ffM.js +10 -0
- package/dist/showcase/assets/index-DN3tqopz.css +2 -0
- package/dist/showcase/assets/index.esm-Ducg7a0P.js +1 -0
- package/dist/showcase/assets/inertValue-DeVQ2cCe.js +1 -0
- package/dist/showcase/assets/info-BimmreJ-.js +1 -0
- package/dist/showcase/assets/inline-stat-DcNP6bcO.js +1 -0
- package/dist/showcase/assets/input-DJAWOJEx.js +1 -0
- package/dist/showcase/assets/input-NIgvB9CZ.js +1 -0
- package/dist/showcase/assets/input-group-BmqJ20bA.js +1 -0
- package/dist/showcase/assets/input-group-gOUubhee.js +47 -0
- package/dist/showcase/assets/inputs-Dk8YOVkI.js +155 -0
- package/dist/showcase/assets/invoice-header-BnNpWej2.js +36 -0
- package/dist/showcase/assets/invoice-items-BdPmW10L.js +36 -0
- package/dist/showcase/assets/invoice-mini-CbSYyHIb.js +14 -0
- package/dist/showcase/assets/invoice-table-DjnWG3KF.js +30 -0
- package/dist/showcase/assets/isSameDay-B2KDl_YX.js +1 -0
- package/dist/showcase/assets/isToday-CXNS7ELW.js +1 -0
- package/dist/showcase/assets/italic-BRS-PpYL.js +1 -0
- package/dist/showcase/assets/item--6Hx9AXZ.js +1 -0
- package/dist/showcase/assets/item-BszVRzXj.js +134 -0
- package/dist/showcase/assets/item-YF6wMI9W.js +1 -0
- package/dist/showcase/assets/kanban-BWBbWLVe.js +186 -0
- package/dist/showcase/assets/label-BgpcD3V6.js +1 -0
- package/dist/showcase/assets/languages-DDgmIDFe.js +1 -0
- package/dist/showcase/assets/layers-nkkXRmvA.js +1 -0
- package/dist/showcase/assets/layout-app-shell-D3MbPoGC.js +608 -0
- package/dist/showcase/assets/layout-auth-DIeRtG0B.js +754 -0
- package/dist/showcase/assets/layout-containers-Dc3-IAgV.js +101 -0
- package/dist/showcase/assets/layout-header-Cg6GfMST.js +170 -0
- package/dist/showcase/assets/layout-page-DojPq8S6.js +122 -0
- package/dist/showcase/assets/layout-primitives-JBSQS72B.js +34 -0
- package/dist/showcase/assets/layout-sidebar-C6jUJRhx.js +224 -0
- package/dist/showcase/assets/layout-users-uzPscfo7.js +117 -0
- package/dist/showcase/assets/layout-workspace-B3leaOKl.js +183 -0
- package/dist/showcase/assets/lock-DLIcOBUd.js +1 -0
- package/dist/showcase/assets/lock-keyhole-DY6aV7Mq.js +1 -0
- package/dist/showcase/assets/mail-AES_tOd2.js +1 -0
- package/dist/showcase/assets/mail-check-dJTzg2bD.js +1 -0
- package/dist/showcase/assets/map-CZ2l0iGH.js +124 -0
- package/dist/showcase/assets/map-pin-0O7GD5Dz.js +1 -0
- package/dist/showcase/assets/media-library-CRllxSGQ.js +695 -0
- package/dist/showcase/assets/mention-inline-suggestions-Dx2Z1GHF.js +1 -0
- package/dist/showcase/assets/mentions-CDqqGCE4.js +138 -0
- package/dist/showcase/assets/menus-CDgE79I5.js +165 -0
- package/dist/showcase/assets/message-square-CBNI_sf8.js +1 -0
- package/dist/showcase/assets/metadata-list-BoEVt7cX.js +1 -0
- package/dist/showcase/assets/metadata-list-NtWuY9W8.js +288 -0
- package/dist/showcase/assets/metric-Bx_LWobe.js +1 -0
- package/dist/showcase/assets/metric-bar-BldYHNLQ.js +1 -0
- package/dist/showcase/assets/metric-grid-BDw7w7d2.js +1 -0
- package/dist/showcase/assets/metric-trend-chip-lSjDkUEo.js +1 -0
- package/dist/showcase/assets/metrics-analytics-bar-CCFhTmQZ.js +44 -0
- package/dist/showcase/assets/metrics-analytics-cards-C1AjZqJU.js +50 -0
- package/dist/showcase/assets/metrics-comparison-vEE6BtuW.js +76 -0
- package/dist/showcase/assets/metrics-heatmap-DKkz8ibX.js +27 -0
- package/dist/showcase/assets/metrics-inline-badge-CZmVnReB.js +17 -0
- package/dist/showcase/assets/metrics-kpi-row-s2FYIYB1.js +31 -0
- package/dist/showcase/assets/metrics-micro-grid-DDlCl9Ep.js +42 -0
- package/dist/showcase/assets/metrics-overview-BgliK2L1.js +192 -0
- package/dist/showcase/assets/metrics-stat-cards-Cn5sRZsB.js +54 -0
- package/dist/showcase/assets/minus-DByvcC8K.js +1 -0
- package/dist/showcase/assets/money-display-DG4IaEaA.js +1 -0
- package/dist/showcase/assets/month-year-picker-CVurc9L7.js +1 -0
- package/dist/showcase/assets/navigation-CHYgQTsY.js +90 -0
- package/dist/showcase/assets/navigation-C_6gS4FA.js +230 -0
- package/dist/showcase/assets/navigation-extras-CflOar2P.js +43 -0
- package/dist/showcase/assets/onboarding-checklist-CYiciKwv.js +119 -0
- package/dist/showcase/assets/overlays-HrH2wdTK.js +408 -0
- package/dist/showcase/assets/overlays-cp7VMq3b.js +159 -0
- package/dist/showcase/assets/package-CjcwDJKu.js +1 -0
- package/dist/showcase/assets/package-check-CCH3ax-x.js +1 -0
- package/dist/showcase/assets/page-action-button-Cn5j2_EP.js +1 -0
- package/dist/showcase/assets/page-header-CkvCF1MQ.js +1 -0
- package/dist/showcase/assets/pagination-DM5QGPo2.js +42 -0
- package/dist/showcase/assets/pagination-DUzHnhJ6.js +1 -0
- package/dist/showcase/assets/paperclip-DoqDQQVa.js +1 -0
- package/dist/showcase/assets/password-input-CfS4sfCl.js +1 -0
- package/dist/showcase/assets/pencil-C2OfFQMj.js +1 -0
- package/dist/showcase/assets/phone-CLvml_XI.js +1 -0
- package/dist/showcase/assets/plus-D5swsZCz.js +1 -0
- package/dist/showcase/assets/popover-menu-Bu9q96nE.js +1 -0
- package/dist/showcase/assets/popover-nCGXR4Yd.js +1 -0
- package/dist/showcase/assets/popover-xC8qczvP.js +1 -0
- package/dist/showcase/assets/products-BbSzEFvw.js +407 -0
- package/dist/showcase/assets/progress-DYfoy7pk.js +1 -0
- package/dist/showcase/assets/progress-ENNwjW3X.js +18 -0
- package/dist/showcase/assets/props-table-2pIZzGC-.js +1 -0
- package/dist/showcase/assets/props.generated-DggzG-JL.json +38611 -0
- package/dist/showcase/assets/quote-BO1bufuX.js +1 -0
- package/dist/showcase/assets/receipt-kIVP3kxJ.js +1 -0
- package/dist/showcase/assets/receipt-text-BDQIvI4l.js +1 -0
- package/dist/showcase/assets/refresh-cw-UdL93poQ.js +1 -0
- package/dist/showcase/assets/resolveAriaLabelledBy-iFo8AzEr.js +1 -0
- package/dist/showcase/assets/resolveValueLabel-DfiI3G4i.js +1 -0
- package/dist/showcase/assets/rich-text-editor-CNtfwLC2.js +143 -0
- package/dist/showcase/assets/rich-text-editor-DB4QWptQ.js +124 -0
- package/dist/showcase/assets/rotate-ccw-DQPoMfMY.js +1 -0
- package/dist/showcase/assets/save-Cd0ZM40i.js +1 -0
- package/dist/showcase/assets/schema-form-Cyc6vCVO.js +325 -0
- package/dist/showcase/assets/scroll-area-B5NZsDdi.js +32 -0
- package/dist/showcase/assets/scroll-area-BvTq99pz.js +1 -0
- package/dist/showcase/assets/select-BRbyPtx8.js +1 -0
- package/dist/showcase/assets/select-Dymyvyh6.js +1 -0
- package/dist/showcase/assets/send-BWzI7mwi.js +1 -0
- package/dist/showcase/assets/separator-BsYPzBlF.js +1 -0
- package/dist/showcase/assets/separator-Osp0OJ78.js +28 -0
- package/dist/showcase/assets/serializeValue-B_EucO5O.js +1 -0
- package/dist/showcase/assets/settings-DRmWJILI.js +1 -0
- package/dist/showcase/assets/sheet-BKsjMYMo.js +1 -0
- package/dist/showcase/assets/shield-D1EaWJMG.js +1 -0
- package/dist/showcase/assets/shield-alert-DWsbR2jn.js +1 -0
- package/dist/showcase/assets/shield-check-DUTAPADm.js +1 -0
- package/dist/showcase/assets/shopping-bag-XmeqUqk9.js +1 -0
- package/dist/showcase/assets/sidebar-B5uO9sUB.js +1 -0
- package/dist/showcase/assets/sidebar.context-CRjgeYJL.js +1 -0
- package/dist/showcase/assets/skeleton-BtiPkfxB.js +1 -0
- package/dist/showcase/assets/skeleton-DbybIpkV.js +29 -0
- package/dist/showcase/assets/slider-vuwVVBby.js +1 -0
- package/dist/showcase/assets/sliders-horizontal-BE_cwUn0.js +1 -0
- package/dist/showcase/assets/smart-card-Dhu_1A_u.js +1 -0
- package/dist/showcase/assets/sonner-DZB-G4q5.js +22 -0
- package/dist/showcase/assets/sortable.esm-YOwRw8Hr.js +5 -0
- package/dist/showcase/assets/sparkles-N8rqKQez.js +1 -0
- package/dist/showcase/assets/spinner-B5zKCNXu.js +30 -0
- package/dist/showcase/assets/spinner-BOjRziLu.js +1 -0
- package/dist/showcase/assets/spinner-PIr8y8av.js +49 -0
- package/dist/showcase/assets/square-pen-ImRrVwT8.js +1 -0
- package/dist/showcase/assets/stacked-avatars-DnIAc098.js +1 -0
- package/dist/showcase/assets/star-BaV-UTPq.js +1 -0
- package/dist/showcase/assets/startOfDay-CtTeiGV0.js +1 -0
- package/dist/showcase/assets/stringifyLocale-CkHjdQTJ.js +1 -0
- package/dist/showcase/assets/styles-Bv0pDLVi.js +1 -0
- package/dist/showcase/assets/suggestions-QnLPdgnG.js +126 -0
- package/dist/showcase/assets/switch-DwAS_TXx.js +1 -0
- package/dist/showcase/assets/switch-xzxCDtyg.js +1 -0
- package/dist/showcase/assets/sync-LeYxWAap.js +107 -0
- package/dist/showcase/assets/table-BbEFanNu.js +1 -0
- package/dist/showcase/assets/table-CVVHBty6.js +382 -0
- package/dist/showcase/assets/table-actions-DvI9U67L.js +1 -0
- package/dist/showcase/assets/tabs-CLcyGwLd.js +1 -0
- package/dist/showcase/assets/tabs-ck8y1Bjr.js +19 -0
- package/dist/showcase/assets/tags-input-DmBY2CKI.js +1 -0
- package/dist/showcase/assets/text-button-C54O1rZM.js +1 -0
- package/dist/showcase/assets/text-link-9_mZpq_f.js +1 -0
- package/dist/showcase/assets/textarea-CHvnWHWH.js +1 -0
- package/dist/showcase/assets/textarea-jexcMklP.js +1 -0
- package/dist/showcase/assets/timelines-uvFVjEQv.js +200 -0
- package/dist/showcase/assets/toggle-group-B3fORi8i.js +1 -0
- package/dist/showcase/assets/toggles-Cox6Yk2k.js +71 -0
- package/dist/showcase/assets/toggles-group-CSvSPqCB.js +32 -0
- package/dist/showcase/assets/trash-2-CE9bDw49.js +1 -0
- package/dist/showcase/assets/trending-up-0iJl0XvC.js +1 -0
- package/dist/showcase/assets/truck-DlhOPoCD.js +1 -0
- package/dist/showcase/assets/typography-BotOITw4.js +223 -0
- package/dist/showcase/assets/ui-badge-hfmO1K3-.js +28 -0
- package/dist/showcase/assets/ui-card-Aigzxhn3.js +30 -0
- package/dist/showcase/assets/ui-table-CKif9sNO.js +42 -0
- package/dist/showcase/assets/upload-tray-BnKDNrw9.js +138 -0
- package/dist/showcase/assets/use-form-field-state-Sbo6tfr9.js +1 -0
- package/dist/showcase/assets/use-layout-link-BQ6Y9z__.js +1 -0
- package/dist/showcase/assets/useAnchoredPopupScrollLock-CP1vkwD7.js +1 -0
- package/dist/showcase/assets/useAriaLabelledBy-J_Rvjwx3.js +1 -0
- package/dist/showcase/assets/useCollapsiblePanel-BwUOowW2.js +1 -0
- package/dist/showcase/assets/useCompositeItem-D3XOIML-.js +1 -0
- package/dist/showcase/assets/useCompositeListItem-BWfShNPP.js +1 -0
- package/dist/showcase/assets/useControlled-BF8maje6.js +1 -0
- package/dist/showcase/assets/useLabelableId-DxorZ3YW.js +1 -0
- package/dist/showcase/assets/useOpenInteractionType-DLUX6CcH.js +1 -0
- package/dist/showcase/assets/useRender-B9zzqKA1.js +1 -0
- package/dist/showcase/assets/useTriggerFocusGuards-BSvL8pKg.js +1 -0
- package/dist/showcase/assets/useValueChanged-DSoTBFAJ.js +1 -0
- package/dist/showcase/assets/user-BZog6aIh.js +1 -0
- package/dist/showcase/assets/user-plus-CPxlPoxf.js +1 -0
- package/dist/showcase/assets/users-BgXAp2UO.js +1 -0
- package/dist/showcase/assets/valueToPercent-gleKSaFe.js +1 -0
- package/dist/showcase/assets/vendor-profile-BLYiDIrO.js +37 -0
- package/dist/showcase/assets/video-YBnCbmIb.js +1 -0
- package/dist/showcase/assets/wrench-BFTavxzg.js +1 -0
- package/dist/showcase/assets/x-D8UN9pOu.js +1 -0
- package/dist/showcase/assets/zap-DIJUAJEb.js +1 -0
- package/dist/showcase/index.html +2 -2
- package/dist/style.css +1 -1
- package/package.json +63 -3
- package/scripts/install-skill.mjs +5 -1
- package/src/App.css +9 -388
- package/dist/_shared/accordion-BnxO7Is4.js +0 -130
- package/dist/_shared/accordion-BnxO7Is4.js.map +0 -1
- package/dist/_shared/accordion-RIN0MjPz.cjs +0 -2
- package/dist/_shared/accordion-RIN0MjPz.cjs.map +0 -1
- package/dist/_shared/action-menu-IIO9KtJ2.js +0 -96
- package/dist/_shared/action-menu-IIO9KtJ2.js.map +0 -1
- package/dist/_shared/action-menu-RAyg3cvM.cjs +0 -2
- package/dist/_shared/action-menu-RAyg3cvM.cjs.map +0 -1
- package/dist/_shared/ai-artifact--MqIfP-8.js +0 -1068
- package/dist/_shared/ai-artifact--MqIfP-8.js.map +0 -1
- package/dist/_shared/ai-artifact-D1dBeEz1.cjs +0 -3
- package/dist/_shared/ai-artifact-D1dBeEz1.cjs.map +0 -1
- package/dist/_shared/alert-D3gRd7RK.cjs +0 -2
- package/dist/_shared/alert-D3gRd7RK.cjs.map +0 -1
- package/dist/_shared/alert-DQ-tV8b-.js +0 -48
- package/dist/_shared/alert-DQ-tV8b-.js.map +0 -1
- package/dist/_shared/app-shell-C4d7kCCd.cjs +0 -2
- package/dist/_shared/app-shell-C4d7kCCd.cjs.map +0 -1
- package/dist/_shared/app-shell-CKxcpPTc.js +0 -94
- package/dist/_shared/app-shell-CKxcpPTc.js.map +0 -1
- package/dist/_shared/badge-BK5VvEgg.js +0 -108
- package/dist/_shared/badge-BK5VvEgg.js.map +0 -1
- package/dist/_shared/badge-kS_XtN-z.cjs +0 -2
- package/dist/_shared/badge-kS_XtN-z.cjs.map +0 -1
- package/dist/_shared/button-LZWDn-aU.cjs +0 -2
- package/dist/_shared/button-LZWDn-aU.cjs.map +0 -1
- package/dist/_shared/button-cnkCF8q8.js +0 -177
- package/dist/_shared/button-cnkCF8q8.js.map +0 -1
- package/dist/_shared/buttons-DHV2eZAf.cjs +0 -2
- package/dist/_shared/buttons-DHV2eZAf.cjs.map +0 -1
- package/dist/_shared/buttons-ehfMSkwP.js +0 -143
- package/dist/_shared/buttons-ehfMSkwP.js.map +0 -1
- package/dist/_shared/card-radio-group-Bf03M6c5.js +0 -158
- package/dist/_shared/card-radio-group-Bf03M6c5.js.map +0 -1
- package/dist/_shared/card-radio-group-SqPUL0Je.cjs +0 -2
- package/dist/_shared/card-radio-group-SqPUL0Je.cjs.map +0 -1
- package/dist/_shared/combobox-Cvs70ic4.js +0 -808
- package/dist/_shared/combobox-Cvs70ic4.js.map +0 -1
- package/dist/_shared/combobox-Dos9YWjk.cjs +0 -2
- package/dist/_shared/combobox-Dos9YWjk.cjs.map +0 -1
- package/dist/_shared/comments-DD2aeZVz.js +0 -946
- package/dist/_shared/comments-DD2aeZVz.js.map +0 -1
- package/dist/_shared/comments-DzwU4sNE.cjs +0 -2
- package/dist/_shared/comments-DzwU4sNE.cjs.map +0 -1
- package/dist/_shared/copyable-D7WhgEzJ.js +0 -38
- package/dist/_shared/copyable-D7WhgEzJ.js.map +0 -1
- package/dist/_shared/copyable-DDjT505-.cjs +0 -2
- package/dist/_shared/copyable-DDjT505-.cjs.map +0 -1
- package/dist/_shared/date-picker-3G3C-sIq.cjs +0 -2
- package/dist/_shared/date-picker-3G3C-sIq.cjs.map +0 -1
- package/dist/_shared/date-picker-7yuMHPYs.js +0 -1362
- package/dist/_shared/date-picker-7yuMHPYs.js.map +0 -1
- package/dist/_shared/date-pickers-B_VUgjvY.cjs +0 -2
- package/dist/_shared/date-pickers-B_VUgjvY.cjs.map +0 -1
- package/dist/_shared/date-pickers-DZXi0di0.js +0 -330
- package/dist/_shared/date-pickers-DZXi0di0.js.map +0 -1
- package/dist/_shared/display-Cuj4td-V.js +0 -1237
- package/dist/_shared/display-Cuj4td-V.js.map +0 -1
- package/dist/_shared/display-D2q93jiS.cjs +0 -8
- package/dist/_shared/display-D2q93jiS.cjs.map +0 -1
- package/dist/_shared/form-field-BNuCBym1.js +0 -319
- package/dist/_shared/form-field-BNuCBym1.js.map +0 -1
- package/dist/_shared/form-field-C4fQYsqv.cjs +0 -2
- package/dist/_shared/form-field-C4fQYsqv.cjs.map +0 -1
- package/dist/_shared/forms-BV4fHeRx.cjs +0 -2
- package/dist/_shared/forms-BV4fHeRx.cjs.map +0 -1
- package/dist/_shared/forms-DjAdYxme.js +0 -3378
- package/dist/_shared/forms-DjAdYxme.js.map +0 -1
- package/dist/_shared/header-D4Oz-mCv.cjs +0 -2
- package/dist/_shared/header-D4Oz-mCv.cjs.map +0 -1
- package/dist/_shared/header-X5DZ8vmO.js +0 -360
- package/dist/_shared/header-X5DZ8vmO.js.map +0 -1
- package/dist/_shared/heading-C7mNh03X.cjs +0 -2
- package/dist/_shared/heading-C7mNh03X.cjs.map +0 -1
- package/dist/_shared/heading-CrNpYcUr.js +0 -39
- package/dist/_shared/heading-CrNpYcUr.js.map +0 -1
- package/dist/_shared/hooks-CKXPg30g.js +0 -118
- package/dist/_shared/hooks-CKXPg30g.js.map +0 -1
- package/dist/_shared/hooks-CTiEImZp.cjs +0 -2
- package/dist/_shared/hooks-CTiEImZp.cjs.map +0 -1
- package/dist/_shared/input-Cw2uICc1.cjs +0 -2
- package/dist/_shared/input-Cw2uICc1.cjs.map +0 -1
- package/dist/_shared/input-DJo8d1Rr.js +0 -182
- package/dist/_shared/input-DJo8d1Rr.js.map +0 -1
- package/dist/_shared/item-BxlP5TO3.js +0 -224
- package/dist/_shared/item-BxlP5TO3.js.map +0 -1
- package/dist/_shared/item-X18HIqR7.cjs +0 -2
- package/dist/_shared/item-X18HIqR7.cjs.map +0 -1
- package/dist/_shared/mentions-DE9aDOMu.cjs +0 -2
- package/dist/_shared/mentions-DE9aDOMu.cjs.map +0 -1
- package/dist/_shared/mentions-DjjYmMLc.js +0 -493
- package/dist/_shared/mentions-DjjYmMLc.js.map +0 -1
- package/dist/_shared/metadata-C5MSNo7y.js +0 -236
- package/dist/_shared/metadata-C5MSNo7y.js.map +0 -1
- package/dist/_shared/metadata-Cw3Kj2Ug.cjs +0 -2
- package/dist/_shared/metadata-Cw3Kj2Ug.cjs.map +0 -1
- package/dist/_shared/money-display-B7AKxxNt.js +0 -198
- package/dist/_shared/money-display-B7AKxxNt.js.map +0 -1
- package/dist/_shared/money-display-E22wbM21.cjs +0 -2
- package/dist/_shared/money-display-E22wbM21.cjs.map +0 -1
- package/dist/_shared/navigation-B9VAXqLL.cjs +0 -2
- package/dist/_shared/navigation-B9VAXqLL.cjs.map +0 -1
- package/dist/_shared/navigation-CxoJVgfo.js +0 -420
- package/dist/_shared/navigation-CxoJVgfo.js.map +0 -1
- package/dist/_shared/overlays-C-T8RnJz.cjs +0 -2
- package/dist/_shared/overlays-C-T8RnJz.cjs.map +0 -1
- package/dist/_shared/overlays-DfRsQzD3.js +0 -633
- package/dist/_shared/overlays-DfRsQzD3.js.map +0 -1
- package/dist/_shared/page-C4jEULwi.js +0 -263
- package/dist/_shared/page-C4jEULwi.js.map +0 -1
- package/dist/_shared/page-DX3pA_tJ.cjs +0 -2
- package/dist/_shared/page-DX3pA_tJ.cjs.map +0 -1
- package/dist/_shared/popover-menu-CVAr985u.js +0 -95
- package/dist/_shared/popover-menu-CVAr985u.js.map +0 -1
- package/dist/_shared/popover-menu-Cq-LnAMh.cjs +0 -2
- package/dist/_shared/popover-menu-Cq-LnAMh.cjs.map +0 -1
- package/dist/_shared/rich-text-editor-C3gVBm-v.cjs +0 -2
- package/dist/_shared/rich-text-editor-C3gVBm-v.cjs.map +0 -1
- package/dist/_shared/rich-text-editor-Cylb-lkv.js +0 -616
- package/dist/_shared/rich-text-editor-Cylb-lkv.js.map +0 -1
- package/dist/_shared/sidebar-BeWLjIRR.js +0 -537
- package/dist/_shared/sidebar-BeWLjIRR.js.map +0 -1
- package/dist/_shared/sidebar-Bl_KRk-S.cjs +0 -2
- package/dist/_shared/sidebar-Bl_KRk-S.cjs.map +0 -1
- package/dist/_shared/sidebar-DzzdJ2xk.cjs +0 -2
- package/dist/_shared/sidebar-DzzdJ2xk.cjs.map +0 -1
- package/dist/_shared/sidebar-ux-yk-Ph.js +0 -382
- package/dist/_shared/sidebar-ux-yk-Ph.js.map +0 -1
- package/dist/_shared/smart-card-DL7esK_y.cjs +0 -2
- package/dist/_shared/smart-card-DL7esK_y.cjs.map +0 -1
- package/dist/_shared/smart-card-eBfUvQ9r.js +0 -360
- package/dist/_shared/smart-card-eBfUvQ9r.js.map +0 -1
- package/dist/_shared/spinner-Bvjs1ybK.cjs +0 -2
- package/dist/_shared/spinner-Bvjs1ybK.cjs.map +0 -1
- package/dist/_shared/spinner-XcfVYbbp.js +0 -67
- package/dist/_shared/spinner-XcfVYbbp.js.map +0 -1
- package/dist/_shared/text-DzKt9cyb.cjs +0 -2
- package/dist/_shared/text-DzKt9cyb.cjs.map +0 -1
- package/dist/_shared/text-qsEg5GdP.js +0 -74
- package/dist/_shared/text-qsEg5GdP.js.map +0 -1
- package/dist/_shared/textarea-BAKapsLQ.cjs +0 -2
- package/dist/_shared/textarea-BAKapsLQ.cjs.map +0 -1
- package/dist/_shared/textarea-Bfv1KxBm.js +0 -119
- package/dist/_shared/textarea-Bfv1KxBm.js.map +0 -1
- package/dist/_shared/typography-4CSyoCj9.js +0 -102
- package/dist/_shared/typography-4CSyoCj9.js.map +0 -1
- package/dist/_shared/typography-DKn7P4wX.cjs +0 -2
- package/dist/_shared/typography-DKn7P4wX.cjs.map +0 -1
- package/dist/_shared/ui-provider-CQJ1glwN.js +0 -85
- package/dist/_shared/ui-provider-CQJ1glwN.js.map +0 -1
- package/dist/_shared/ui-provider-RIYE7O_V.cjs +0 -2
- package/dist/_shared/ui-provider-RIYE7O_V.cjs.map +0 -1
- package/dist/components/base/table/index.cjs.map +0 -1
- package/dist/components/base/table/index.js.map +0 -1
- package/dist/showcase/assets/AreaChart-CzBEYPbz.js +0 -6
- package/dist/showcase/assets/CSPContext-ImKusJJ_.js +0 -1
- package/dist/showcase/assets/CompositeItem-C-DIOBdJ.js +0 -1
- package/dist/showcase/assets/CompositeRoot-Ce4ORgG2.js +0 -1
- package/dist/showcase/assets/DialogTrigger-DWvMs7dp.js +0 -1
- package/dist/showcase/assets/FormContext-BeC1MJpT.js +0 -1
- package/dist/showcase/assets/PreviewLayout-N1PTTyZK.js +0 -1
- package/dist/showcase/assets/RadioGroup-DAWaa26D.js +0 -1
- package/dist/showcase/assets/Separator-guDkmky0.js +0 -1
- package/dist/showcase/assets/ToolbarRootContext-BJ7hWga8.js +0 -1
- package/dist/showcase/assets/accordion-CiM9WhkT.js +0 -172
- package/dist/showcase/assets/accordion-variants-C_sHrQ7C.js +0 -1
- package/dist/showcase/assets/action-menu-mlWlGE5P.js +0 -1
- package/dist/showcase/assets/activities-YWR4wh4f.js +0 -501
- package/dist/showcase/assets/activities-feed-card-Cglnf5as.js +0 -1
- package/dist/showcase/assets/admin-BtOtzPd4.js +0 -80
- package/dist/showcase/assets/ai-8iNe0R1M.js +0 -41
- package/dist/showcase/assets/ai-artifact-CQL5krnJ.js +0 -2
- package/dist/showcase/assets/ai-chat-BzCdOOc6.js +0 -568
- package/dist/showcase/assets/ai-elements-CBHy2xWU.js +0 -379
- package/dist/showcase/assets/ai-new-CgL5NeVs.js +0 -167
- package/dist/showcase/assets/ai-tool-call-D9AsaWJF.js +0 -1
- package/dist/showcase/assets/alert-B2BuF4vZ.js +0 -59
- package/dist/showcase/assets/alert-BkVaTONJ.js +0 -1
- package/dist/showcase/assets/api-key-list-C-_59dli.js +0 -73
- package/dist/showcase/assets/app-sidebar-BdOu5rVn.js +0 -1
- package/dist/showcase/assets/arrow-down-BpVaq9-H.js +0 -1
- package/dist/showcase/assets/arrow-left-C40rxfqj.js +0 -1
- package/dist/showcase/assets/arrow-right-BclouSfP.js +0 -1
- package/dist/showcase/assets/arrow-up-BpWEnkdX.js +0 -1
- package/dist/showcase/assets/arrow-up-right-Z5sMa1HH.js +0 -1
- package/dist/showcase/assets/avatar-CDNhh3rv.js +0 -57
- package/dist/showcase/assets/avatar-QBwg3fvR.js +0 -1
- package/dist/showcase/assets/badge-check-DXDQ3SaL.js +0 -1
- package/dist/showcase/assets/badge-tAdYt--9.js +0 -28
- package/dist/showcase/assets/bell-CVEeEWw4.js +0 -1
- package/dist/showcase/assets/bot-Bcx5mNAQ.js +0 -1
- package/dist/showcase/assets/box-Dgy2Xc70.js +0 -1
- package/dist/showcase/assets/brain-DsoOsd7m.js +0 -1
- package/dist/showcase/assets/brand-DAyuXNUz.js +0 -40
- package/dist/showcase/assets/breadcrumb-CC4Z8eMY.js +0 -1
- package/dist/showcase/assets/breadcrumb-DCbAzeMs.js +0 -52
- package/dist/showcase/assets/breadcrumbs-DGZMpIoQ.js +0 -1
- package/dist/showcase/assets/briefcase-2uLXCvAZ.js +0 -1
- package/dist/showcase/assets/button-DhQ6rMPU.js +0 -44
- package/dist/showcase/assets/button-group-Ce9vnZ1H.js +0 -1
- package/dist/showcase/assets/buttons-CHja0LUL.js +0 -270
- package/dist/showcase/assets/calendar-BbiK8AMZ.js +0 -16
- package/dist/showcase/assets/calendar-BhZpIjCo.js +0 -1
- package/dist/showcase/assets/calendar-oKaDsUIy.js +0 -1
- package/dist/showcase/assets/card-DoU1VD79.js +0 -1
- package/dist/showcase/assets/cards-3OgH8m3F.js +0 -328
- package/dist/showcase/assets/chart-column-6Tn3WAT9.js +0 -1
- package/dist/showcase/assets/chevron-down-x7TQsvYY.js +0 -1
- package/dist/showcase/assets/chevron-left-CglzJgA2.js +0 -1
- package/dist/showcase/assets/chevron-right-CDDMIkYP.js +0 -1
- package/dist/showcase/assets/chevron-up-Dc3aAaGH.js +0 -1
- package/dist/showcase/assets/chevrons-up-down-DJNnSBAj.js +0 -1
- package/dist/showcase/assets/circle-BBmNFtO8.js +0 -1
- package/dist/showcase/assets/circle-alert-DJevf3tT.js +0 -1
- package/dist/showcase/assets/circle-check-BCxORlAM.js +0 -1
- package/dist/showcase/assets/circle-check-big-tiuK2w0-.js +0 -1
- package/dist/showcase/assets/circle-dot-BEVVQjgN.js +0 -1
- package/dist/showcase/assets/circle-question-mark-BQrUUiKD.js +0 -1
- package/dist/showcase/assets/circle-x-CoV_AUtZ.js +0 -1
- package/dist/showcase/assets/clock-Bn2R4aDX.js +0 -1
- package/dist/showcase/assets/code-xml-BVYp_JDX.js +0 -1
- package/dist/showcase/assets/collapsible-Co2Y739_.js +0 -27
- package/dist/showcase/assets/collapsible-DPbftgrO.js +0 -1
- package/dist/showcase/assets/combobox-Cm4__LnJ.js +0 -622
- package/dist/showcase/assets/command-DQFIxPN9.js +0 -45
- package/dist/showcase/assets/command-KNncGgZW.js +0 -1
- package/dist/showcase/assets/comment-composer-DTJtqYGP.js +0 -1
- package/dist/showcase/assets/comment-item-DIEYMmV_.js +0 -1
- package/dist/showcase/assets/comments-B0BbDp-3.js +0 -357
- package/dist/showcase/assets/commerce-BOWBCLA-.js +0 -79
- package/dist/showcase/assets/commerce-extras-C6CWYfpC.js +0 -173
- package/dist/showcase/assets/composite-YicTVAO0.js +0 -1
- package/dist/showcase/assets/contact-card-DQPRIlnJ.js +0 -65
- package/dist/showcase/assets/content-container-CHXwWViz.js +0 -1
- package/dist/showcase/assets/copyable-CjTwco9O.js +0 -96
- package/dist/showcase/assets/course-card-CTQScd2C.js +0 -113
- package/dist/showcase/assets/cpu-D52NjUWq.js +0 -1
- package/dist/showcase/assets/credit-card-BoDfW0R8.js +0 -1
- package/dist/showcase/assets/currency-BPREbpDA.js +0 -149
- package/dist/showcase/assets/dark-surfaces-BCG45K2m.js +0 -90
- package/dist/showcase/assets/database-DeGR0hed.js +0 -1
- package/dist/showcase/assets/date-block-Bl1kXJrM.js +0 -1
- package/dist/showcase/assets/date-picker-BHbZa4ML.js +0 -1
- package/dist/showcase/assets/date-pickers-DumwUEXE.js +0 -110
- package/dist/showcase/assets/dense-info-DxfgBw9Z.js +0 -106
- package/dist/showcase/assets/dialog-BYHZvlL8.js +0 -1
- package/dist/showcase/assets/display-BXMGOjL3.js +0 -392
- package/dist/showcase/assets/dollar-sign-BipUTVXC.js +0 -1
- package/dist/showcase/assets/download-CxspQgIc.js +0 -1
- package/dist/showcase/assets/dropdown-menu-Q1BV3wPP.js +0 -1
- package/dist/showcase/assets/dropzone-OivkuTPF.js +0 -1
- package/dist/showcase/assets/ellipsis-Bn-XgoA7.js +0 -1
- package/dist/showcase/assets/ellipsis-vertical-Bcl9HX9k.js +0 -1
- package/dist/showcase/assets/empty-CcafLcw-.js +0 -1
- package/dist/showcase/assets/empty-item-CiJeS8ZV.js +0 -49
- package/dist/showcase/assets/empty-state-B1RYYjUP.js +0 -188
- package/dist/showcase/assets/enhanced-activities-IB811DS6.js +0 -361
- package/dist/showcase/assets/event-calendar-C2VCfcUz.js +0 -138
- package/dist/showcase/assets/event-log-ckmsCPmG.js +0 -330
- package/dist/showcase/assets/example-C6-_Sy6B.js +0 -1
- package/dist/showcase/assets/external-link-Bg-_8Uq7.js +0 -1
- package/dist/showcase/assets/eye-JVsUA85G.js +0 -1
- package/dist/showcase/assets/feature-announcement-C4aRXesF.js +0 -34
- package/dist/showcase/assets/file-4pOq58jl.js +0 -1
- package/dist/showcase/assets/file-text-BIi71mZ1.js +0 -1
- package/dist/showcase/assets/filters-CxrcnmLU.js +0 -78
- package/dist/showcase/assets/flag-DeiJmomk.js +0 -1
- package/dist/showcase/assets/folder-open-zMXBpVNs.js +0 -1
- package/dist/showcase/assets/form-sizing-B8jbL5tL.js +0 -1
- package/dist/showcase/assets/format-BG4laCmp.js +0 -1
- package/dist/showcase/assets/format-metric-value-B94EDo8X.js +0 -1
- package/dist/showcase/assets/forms-PsN5zTLx.js +0 -793
- package/dist/showcase/assets/getPseudoElementBounds-B7wr19E1.js +0 -1
- package/dist/showcase/assets/gift-CKFIh1Wh.js +0 -1
- package/dist/showcase/assets/giftcard-cards-BfOlIHmA.js +0 -85
- package/dist/showcase/assets/git-branch-BO9i8XkJ.js +0 -1
- package/dist/showcase/assets/global-search-CNmUraNa.js +0 -90
- package/dist/showcase/assets/global-search-DkJkQ0Vs.js +0 -1
- package/dist/showcase/assets/globe-47T22W56.js +0 -1
- package/dist/showcase/assets/gradient-card-CXSY29TZ.js +0 -58
- package/dist/showcase/assets/header-eZHN-s6P.js +0 -1
- package/dist/showcase/assets/header-notifications-Caa9i87J.js +0 -1
- package/dist/showcase/assets/heart-DjKkkUsX.js +0 -1
- package/dist/showcase/assets/house-DKxCiHyB.js +0 -1
- package/dist/showcase/assets/icon-badge-Bcm8TlJi.js +0 -1
- package/dist/showcase/assets/image-r-gMI33G.js +0 -1
- package/dist/showcase/assets/inbox-ZxSy1pgX.js +0 -1
- package/dist/showcase/assets/index-B8DVXCmf.js +0 -10
- package/dist/showcase/assets/index-DbLs6mcj.css +0 -2
- package/dist/showcase/assets/inertValue-i0cAMG-0.js +0 -1
- package/dist/showcase/assets/info-B1KV2DkO.js +0 -1
- package/dist/showcase/assets/inline-stat-D0sE-A4C.js +0 -1
- package/dist/showcase/assets/input-25epjsiD.js +0 -1
- package/dist/showcase/assets/input-CnwMt9Sr.js +0 -1
- package/dist/showcase/assets/input-group-DSKyV7we.js +0 -47
- package/dist/showcase/assets/input-group-x5eWeAZg.js +0 -1
- package/dist/showcase/assets/inputs-B2Maxr14.js +0 -49
- package/dist/showcase/assets/invoice-header-Gxl--yFu.js +0 -36
- package/dist/showcase/assets/invoice-items-BtoaGNjE.js +0 -36
- package/dist/showcase/assets/invoice-mini-DHFSZegy.js +0 -14
- package/dist/showcase/assets/invoice-table-6dmU_KrL.js +0 -30
- package/dist/showcase/assets/isSameDay-BrDHfKHm.js +0 -1
- package/dist/showcase/assets/isToday-VtoSc1IH.js +0 -1
- package/dist/showcase/assets/italic-CXkAsf6H.js +0 -1
- package/dist/showcase/assets/item-CGOThKAx.js +0 -1
- package/dist/showcase/assets/item-CMRbW6s-.js +0 -1
- package/dist/showcase/assets/item-sw6fAZcn.js +0 -117
- package/dist/showcase/assets/kanban-CKGYTXji.js +0 -175
- package/dist/showcase/assets/label-BmKD22pm.js +0 -1
- package/dist/showcase/assets/layout-app-shell-CeMHzVNn.js +0 -501
- package/dist/showcase/assets/layout-containers-8Drow5f9.js +0 -96
- package/dist/showcase/assets/layout-header-BlBw4JAV.js +0 -170
- package/dist/showcase/assets/layout-page-BQfgHFau.js +0 -122
- package/dist/showcase/assets/layout-sidebar-DZer5Uuh.js +0 -224
- package/dist/showcase/assets/layout-users-nuioUkeu.js +0 -104
- package/dist/showcase/assets/lock-DQcZ9cEj.js +0 -1
- package/dist/showcase/assets/mail-yNXDtmNr.js +0 -1
- package/dist/showcase/assets/map-JMM1F9VR.js +0 -124
- package/dist/showcase/assets/map-pin-2WS7oVo3.js +0 -1
- package/dist/showcase/assets/menus-mK-FeNki.js +0 -89
- package/dist/showcase/assets/message-square-DGTAjNJG.js +0 -1
- package/dist/showcase/assets/metadata-list-CBxuQjVO.js +0 -278
- package/dist/showcase/assets/metric-BWGrmyD6.js +0 -1
- package/dist/showcase/assets/metric-grid-CewIJQvo.js +0 -1
- package/dist/showcase/assets/metric-trend-chip-kLBN8u5z.js +0 -1
- package/dist/showcase/assets/metrics-analytics-bar-COnc7VN9.js +0 -44
- package/dist/showcase/assets/metrics-analytics-cards-BR83UVqi.js +0 -77
- package/dist/showcase/assets/metrics-comparison-C0SUjdMg.js +0 -76
- package/dist/showcase/assets/metrics-heatmap-Orq1hLk-.js +0 -27
- package/dist/showcase/assets/metrics-inline-badge-C924q2Xx.js +0 -17
- package/dist/showcase/assets/metrics-kpi-row-Cwi05ruK.js +0 -31
- package/dist/showcase/assets/metrics-micro-grid-D97nkrge.js +0 -42
- package/dist/showcase/assets/metrics-overview-BOc8y3QX.js +0 -192
- package/dist/showcase/assets/metrics-stat-cards-Cilh-A5D.js +0 -54
- package/dist/showcase/assets/minus-DvrDGcTv.js +0 -1
- package/dist/showcase/assets/money-display-0egZ_O76.js +0 -1
- package/dist/showcase/assets/month-year-picker-2cWfwnmP.js +0 -1
- package/dist/showcase/assets/navigation-BnYme-Wj.js +0 -90
- package/dist/showcase/assets/navigation-CLQWl32A.js +0 -230
- package/dist/showcase/assets/navigation-extras-BPDoAdXF.js +0 -43
- package/dist/showcase/assets/onboarding-checklist-26XVWgDF.js +0 -119
- package/dist/showcase/assets/overlays-2sVGhanu.js +0 -88
- package/dist/showcase/assets/overlays-BaR6HDwB.js +0 -394
- package/dist/showcase/assets/package-CUNvdlBi.js +0 -1
- package/dist/showcase/assets/page-action-button-DgvZVtzx.js +0 -1
- package/dist/showcase/assets/page-header-4F_iaFPW.js +0 -1
- package/dist/showcase/assets/pagination-CDjZ6jiZ.js +0 -42
- package/dist/showcase/assets/pagination-g1NQaN42.js +0 -1
- package/dist/showcase/assets/paperclip-CDxdf8Os.js +0 -1
- package/dist/showcase/assets/pencil-Ddc5JwBe.js +0 -1
- package/dist/showcase/assets/phone-NIZ5SwgK.js +0 -1
- package/dist/showcase/assets/plus-C9kwz7rW.js +0 -1
- package/dist/showcase/assets/popover-DtnuOBgr.js +0 -1
- package/dist/showcase/assets/popover-T85aV4zW.js +0 -1
- package/dist/showcase/assets/popover-menu-BRGSZe4f.js +0 -1
- package/dist/showcase/assets/progress-CcZjuzK3.js +0 -1
- package/dist/showcase/assets/progress-DbouniUl.js +0 -18
- package/dist/showcase/assets/props-table-CM_1cocj.js +0 -1
- package/dist/showcase/assets/props.generated-Bg627Jai.json +0 -32829
- package/dist/showcase/assets/quote-vjygm2-7.js +0 -1
- package/dist/showcase/assets/receipt-CfMgwFPl.js +0 -1
- package/dist/showcase/assets/refresh-cw-Tu5E_cGA.js +0 -1
- package/dist/showcase/assets/resolveAriaLabelledBy-B6CR9UP2.js +0 -1
- package/dist/showcase/assets/resolveValueLabel-CipUZh6i.js +0 -1
- package/dist/showcase/assets/rich-text-editor-BMZUyuQX.js +0 -143
- package/dist/showcase/assets/rich-text-editor-HwYIeWYW.js +0 -124
- package/dist/showcase/assets/rotate-ccw-B4Wi4ws7.js +0 -1
- package/dist/showcase/assets/scroll-area-CuB_woqF.js +0 -1
- package/dist/showcase/assets/scroll-area-I4mSIpRq.js +0 -32
- package/dist/showcase/assets/select-CF3cKjCo.js +0 -1
- package/dist/showcase/assets/send-Blu_n6xl.js +0 -1
- package/dist/showcase/assets/separator-9mrRf_DZ.js +0 -28
- package/dist/showcase/assets/separator-DUKleOvU.js +0 -1
- package/dist/showcase/assets/settings-DlKX-bZT.js +0 -1
- package/dist/showcase/assets/sheet-CwcLVoF3.js +0 -1
- package/dist/showcase/assets/shield-BD0Y8Jj3.js +0 -1
- package/dist/showcase/assets/shield-alert-DNOTmkwG.js +0 -1
- package/dist/showcase/assets/shield-check-Sbul0dUK.js +0 -1
- package/dist/showcase/assets/shopping-bag-EDVpxI9n.js +0 -1
- package/dist/showcase/assets/sidebar-JWZ88xw5.js +0 -1
- package/dist/showcase/assets/sidebar.context-D3P7qppn.js +0 -1
- package/dist/showcase/assets/skeleton-CIS1Kaas.js +0 -1
- package/dist/showcase/assets/skeleton-CJCJDQFt.js +0 -29
- package/dist/showcase/assets/smart-card-7szg_qSt.js +0 -1
- package/dist/showcase/assets/sonner-DMHXr9Ce.js +0 -22
- package/dist/showcase/assets/sortable.esm-DVuzVA1U.js +0 -5
- package/dist/showcase/assets/sparkles-BEa1AgNq.js +0 -1
- package/dist/showcase/assets/spinner-Bi-T9etI.js +0 -30
- package/dist/showcase/assets/spinner-C77XIUVf.js +0 -1
- package/dist/showcase/assets/spinner-DK9BAT6K.js +0 -49
- package/dist/showcase/assets/square-pen-N0mq-vPu.js +0 -1
- package/dist/showcase/assets/stacked-avatars-DORVEni2.js +0 -1
- package/dist/showcase/assets/star-Dbtxr60S.js +0 -1
- package/dist/showcase/assets/startOfDay-BJgxz4yq.js +0 -1
- package/dist/showcase/assets/styles-CwW4IBUg.js +0 -1
- package/dist/showcase/assets/switch-B4iRxZFU.js +0 -1
- package/dist/showcase/assets/switch-B_rnbXwy.js +0 -1
- package/dist/showcase/assets/table-BJ9HSK6H.js +0 -1
- package/dist/showcase/assets/table-IB0MEYf4.js +0 -389
- package/dist/showcase/assets/tabs-D02JL-Fa.js +0 -1
- package/dist/showcase/assets/tabs-XpsVS3ff.js +0 -19
- package/dist/showcase/assets/text-button-BWCgXGnr.js +0 -1
- package/dist/showcase/assets/text-link-TzuDnSCF.js +0 -1
- package/dist/showcase/assets/textarea-B7DUIiH_.js +0 -1
- package/dist/showcase/assets/textarea-CV5gNzXf.js +0 -1
- package/dist/showcase/assets/timelines-CF0UYhwm.js +0 -200
- package/dist/showcase/assets/toggle-group-CK8mBx6E.js +0 -1
- package/dist/showcase/assets/toggles-CqJSApnF.js +0 -71
- package/dist/showcase/assets/toggles-group-v0JijMzG.js +0 -32
- package/dist/showcase/assets/trash-2-_xF5j-Ya.js +0 -1
- package/dist/showcase/assets/trending-up-BCzmjYzm.js +0 -1
- package/dist/showcase/assets/truck-CryH-5dx.js +0 -1
- package/dist/showcase/assets/typography-D3PFbRpb.js +0 -215
- package/dist/showcase/assets/ui-badge-ByyFPLOB.js +0 -28
- package/dist/showcase/assets/ui-card-DYLLiD89.js +0 -30
- package/dist/showcase/assets/ui-table-DW4QIwxK.js +0 -42
- package/dist/showcase/assets/upload-tray-ZdL_dzc0.js +0 -138
- package/dist/showcase/assets/useAnchoredPopupScrollLock-AFPLx3SZ.js +0 -1
- package/dist/showcase/assets/useCollapsiblePanel-CeHRY8U2.js +0 -1
- package/dist/showcase/assets/useCompositeItem-C-1zP8zD.js +0 -1
- package/dist/showcase/assets/useCompositeListItem-D4ugfKLB.js +0 -1
- package/dist/showcase/assets/useControlled-Cpg8gDqb.js +0 -1
- package/dist/showcase/assets/useLabelableId-CSxAHpU-.js +0 -1
- package/dist/showcase/assets/useOpenInteractionType-BLV8Pa2n.js +0 -1
- package/dist/showcase/assets/useRender-DparzvOu.js +0 -1
- package/dist/showcase/assets/useTriggerFocusGuards-CrYLO2g5.js +0 -1
- package/dist/showcase/assets/useValueChanged-DwgbaueK.js +0 -1
- package/dist/showcase/assets/user-CGcV8Ppb.js +0 -1
- package/dist/showcase/assets/user-plus-iOsntM6P.js +0 -1
- package/dist/showcase/assets/users-DzgXeZbf.js +0 -1
- package/dist/showcase/assets/valueToPercent-B5BHWU68.js +0 -1
- package/dist/showcase/assets/vendor-profile-DbFPkGn9.js +0 -37
- package/dist/showcase/assets/wrench-1Ra9xb3d.js +0 -1
- package/dist/showcase/assets/x-CE8oevyh.js +0 -1
- package/dist/showcase/assets/zap-se3n2YVD.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-_udUdWtn.js","names":[],"sources":["../../src/components/layout/auth/auth-card.tsx","../../src/components/layout/auth/auth-hooks.tsx","../../src/components/layout/auth/auth.strings.ts","../../src/components/layout/auth/auth-footer-links.tsx","../../src/components/layout/auth/auth-social-providers.tsx","../../src/components/layout/auth/auth-split-panel.tsx","../../src/components/layout/auth/auth-shell.tsx","../../src/components/layout/auth/auth-method-switch.tsx"],"sourcesContent":["import {\n\tCardContent,\n\tCardFooter,\n\tCardShell,\n} from '@/components/base/cards';\nimport { Heading, Text } from '@/components/typography';\nimport { cn } from '@/lib/utils';\n\nimport type { AuthCardProps } from './auth.types';\n\nexport function AuthCard({\n\teyebrow,\n\ttitle,\n\tdescription,\n\theaderEnd,\n\tbanner,\n\tmedia,\n\tfooter,\n\tchildren,\n\tclassName,\n\theaderClassName,\n\tmediaClassName,\n\tcontentClassName,\n\tfooterClassName,\n\t...props\n}: AuthCardProps) {\n\tconst hasHeader = Boolean(eyebrow || title || description || headerEnd);\n\n\treturn (\n\t\t<CardShell\n\t\t\tdata-slot=\"auth-card\"\n\t\t\tclassName={cn(\n\t\t\t\t'auth-card--component',\n\t\t\t\t'gap-0 overflow-hidden rounded-lg border border-border/70 bg-card py-0 shadow-sm',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{!!media && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'auth-card--media',\n\t\t\t\t\t\t'min-h-12 border-b border-border/60 bg-muted/50',\n\t\t\t\t\t\tmediaClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{media}\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t{!!hasHeader && (\n\t\t\t\t<header\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'auth-card--header',\n\t\t\t\t\t\t'flex items-start justify-between gap-4 px-6 pt-6 md:px-8 md:pt-8',\n\t\t\t\t\t\theaderClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"min-w-0 space-y-1.5\">\n\t\t\t\t\t\t{!!eyebrow && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\tsize=\"xxs\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\t\t\t\tclassName=\"auth-card--eyebrow uppercase tracking-wide\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{eyebrow}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!title && (\n\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\ttag=\"h1\"\n\t\t\t\t\t\t\t\tcontainerClassName=\"space-y-0\"\n\t\t\t\t\t\t\t\tclassName=\"auth-card--title border-0 pb-0 text-lg leading-tight\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{title}\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!description && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\tlineHeight=\"relaxed\"\n\t\t\t\t\t\t\t\tclassName=\"auth-card--description max-w-prose\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t{!!headerEnd && (\n\t\t\t\t\t\t<div className=\"auth-card--header-end shrink-0\">\n\t\t\t\t\t\t\t{headerEnd}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</header>\n\t\t\t)}\n\n\t\t\t<CardContent\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-card--content',\n\t\t\t\t\t'px-6 pb-6 md:px-8 md:pb-8',\n\t\t\t\t\thasHeader ? 'pt-5' : 'pt-6 md:pt-8',\n\t\t\t\t\tcontentClassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{!!banner && <div className=\"auth-card--banner mb-5\">{banner}</div>}\n\t\t\t\t{children}\n\t\t\t</CardContent>\n\n\t\t\t{!!footer && (\n\t\t\t\t<CardFooter\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'auth-card--footer',\n\t\t\t\t\t\t'border-t border-border/60 px-6 py-4 md:px-8',\n\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{footer}\n\t\t\t\t</CardFooter>\n\t\t\t)}\n\t\t</CardShell>\n\t);\n}\n","import { isValidElement, useMemo } from 'react';\n\nimport { useLayoutLinkRenderer } from '../hooks';\nimport type {\n\tAuthBrand,\n\tAuthBrandConfig,\n\tUseAuthLinksOptions,\n\tUseAuthLinksReturn,\n\tUseAuthShellOptions,\n\tUseAuthShellReturn,\n} from './auth.types';\n\nexport function isAuthBrandConfig(brand: AuthBrand | undefined): brand is AuthBrandConfig {\n\treturn Boolean(\n\t\tbrand &&\n\t\t\ttypeof brand === 'object' &&\n\t\t\t!isValidElement(brand) &&\n\t\t\t('logo' in brand || 'label' in brand || 'description' in brand || 'href' in brand),\n\t);\n}\n\nexport function useAuthLinks({\n\tlinks = [],\n\trenderLink,\n\tLinkComponent,\n}: UseAuthLinksOptions = {}): UseAuthLinksReturn {\n\tconst resolvedRenderLink = useLayoutLinkRenderer({ renderLink, LinkComponent });\n\tconst visibleLinks = useMemo(\n\t\t() => links.filter((link) => link.visible !== false),\n\t\t[links],\n\t);\n\n\treturn {\n\t\tlinks: visibleLinks,\n\t\trenderLink: resolvedRenderLink,\n\t};\n}\n\nexport function useAuthShell({\n\tvariant = 'card',\n\tbrand,\n\tfooter,\n\tfooterLinks = [],\n\tpolicyLinks = [],\n\tlanguageLinks = [],\n\tlanguageSwitcher,\n\tpostCard,\n\tsocialProviders = [],\n\tsplitPanel,\n\trenderLink,\n\tLinkComponent,\n}: UseAuthShellOptions = {}): UseAuthShellReturn {\n\tconst resolvedRenderLink = useLayoutLinkRenderer({ renderLink, LinkComponent });\n\tconst visibleFooterLinks = useMemo(\n\t\t() => footerLinks.filter((link) => link.visible !== false),\n\t\t[footerLinks],\n\t);\n\tconst visiblePolicyLinks = useMemo(\n\t\t() => policyLinks.filter((link) => link.visible !== false),\n\t\t[policyLinks],\n\t);\n\tconst visibleLanguageLinks = useMemo(\n\t\t() => languageLinks.filter((link) => link.visible !== false),\n\t\t[languageLinks],\n\t);\n\tconst visibleSocialProviders = useMemo(\n\t\t() => socialProviders.filter((provider) => provider.visible !== false),\n\t\t[socialProviders],\n\t);\n\tconst hasBrand = Boolean(\n\t\tbrand &&\n\t\t\t(isAuthBrandConfig(brand)\n\t\t\t\t? brand.logo || brand.label || brand.description\n\t\t\t\t: brand),\n\t);\n\tconst hasAfterCard = Boolean(\n\t\tpostCard ||\n\t\t\tfooter ||\n\t\t\tlanguageSwitcher ||\n\t\t\tvisibleFooterLinks.length > 0 ||\n\t\t\tvisiblePolicyLinks.length > 0 ||\n\t\t\tvisibleLanguageLinks.length > 0,\n\t);\n\tconst hasSplitPanel = Boolean(splitPanel);\n\n\treturn {\n\t\tvariant: hasSplitPanel ? variant : 'card',\n\t\thasBrand,\n\t\thasAfterCard,\n\t\thasSplitPanel,\n\t\thasSocialProviders: visibleSocialProviders.length > 0,\n\t\trenderLink: resolvedRenderLink,\n\t\tfooterLinks: visibleFooterLinks,\n\t\tpolicyLinks: visiblePolicyLinks,\n\t\tlanguageLinks: visibleLanguageLinks,\n\t\tsocialProviders: visibleSocialProviders,\n\t};\n}\n","export interface AuthShellStrings {\n\tsocialDivider: string;\n\tsocialProvidersLabel: string;\n\tfooterLinksLabel: string;\n\tpolicyLinksLabel: string;\n\tlanguageLinksLabel: string;\n}\n\nexport const defaultAuthShellStrings: AuthShellStrings = {\n\tsocialDivider: 'or continue with email',\n\tsocialProvidersLabel: 'Social sign-in options',\n\tfooterLinksLabel: 'Authentication links',\n\tpolicyLinksLabel: 'Policies',\n\tlanguageLinksLabel: 'Language options',\n};\n\nexport interface AuthFooterLinksStrings {\n\tlabel: string;\n}\n\nexport const defaultAuthFooterLinksStrings: AuthFooterLinksStrings = {\n\tlabel: 'Authentication links',\n};\n\nexport interface AuthSocialProvidersStrings {\n\tlabel: string;\n}\n\nexport const defaultAuthSocialProvidersStrings: AuthSocialProvidersStrings = {\n\tlabel: 'Social sign-in options',\n};\n\nexport interface AuthMethodSwitchStrings {\n\tlabel: string;\n\tdivider: string;\n}\n\nexport const defaultAuthMethodSwitchStrings: AuthMethodSwitchStrings = {\n\tlabel: 'Authentication method',\n\tdivider: 'or',\n};\n","import { Fragment } from 'react';\n\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { useAuthLinks } from './auth-hooks';\nimport { defaultAuthFooterLinksStrings } from './auth.strings';\nimport type { AuthFooterLinksProps } from './auth.types';\n\nexport function AuthFooterLinks({\n\tlinks,\n\tleadingIcon,\n\tseparator = '·',\n\trenderLink,\n\tLinkComponent,\n\tclassName,\n\tstrings: stringsProp,\n\t...props\n}: AuthFooterLinksProps) {\n\tconst strings = useStrings(defaultAuthFooterLinksStrings, stringsProp);\n\tconst { links: visibleLinks, renderLink: resolvedRenderLink } = useAuthLinks({\n\t\tlinks,\n\t\trenderLink,\n\t\tLinkComponent,\n\t});\n\n\tif (visibleLinks.length === 0) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<nav\n\t\t\taria-label={props['aria-label'] ?? strings.label}\n\t\t\tclassName={cn(\n\t\t\t\t'auth-footer-links--component',\n\t\t\t\t'flex flex-wrap items-center justify-center gap-x-2 gap-y-1 text-center',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{!!leadingIcon && (\n\t\t\t\t<span className=\"auth-footer-links--icon flex shrink-0 items-center text-muted-foreground\" aria-hidden=\"true\">\n\t\t\t\t\t{leadingIcon}\n\t\t\t\t</span>\n\t\t\t)}\n\t\t\t{visibleLinks.map((link, index) => {\n\t\t\t\tconst linkNode = resolvedRenderLink({\n\t\t\t\t\thref: link.href,\n\t\t\t\t\ttarget: link.target,\n\t\t\t\t\trel: link.rel,\n\t\t\t\t\texternal: link.external,\n\t\t\t\t\tdisabled: link.disabled,\n\t\t\t\t\tonClick: link.onClick,\n\t\t\t\t\tclassName: cn(\n\t\t\t\t\t\t'auth-footer-links--item',\n\t\t\t\t\t\t'text-muted-foreground transition-colors hover:text-foreground',\n\t\t\t\t\t\tlink.disabled && 'pointer-events-none opacity-50',\n\t\t\t\t\t),\n\t\t\t\t\tchildren: (\n\t\t\t\t\t\t<Text tag=\"span\" size=\"xs\" className=\"text-inherit\">\n\t\t\t\t\t\t\t{link.label}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t),\n\t\t\t\t});\n\n\t\t\t\treturn (\n\t\t\t\t\t<Fragment key={link.id ?? index}>\n\t\t\t\t\t\t{index > 0 && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"span\"\n\t\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\tclassName=\"auth-footer-links--separator\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{separator}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{linkNode}\n\t\t\t\t\t</Fragment>\n\t\t\t\t);\n\t\t\t})}\n\t\t</nav>\n\t);\n}\n","import { KeyRound } from 'lucide-react';\n\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { useLayoutLinkRenderer } from '../hooks';\nimport { defaultAuthSocialProvidersStrings } from './auth.strings';\nimport type {\n\tAuthSocialProvider,\n\tAuthSocialProviderButtonProps,\n\tAuthSocialProvidersProps,\n} from './auth.types';\n\nconst PROVIDER_BUTTON_CLASS = 'auth-social-provider-button--component inline-flex h-9 w-full items-center justify-center gap-2 rounded-md border border-input bg-background px-3 text-sm font-medium text-foreground shadow-xs transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50';\n\nfunction GoogleMark() {\n\treturn (\n\t\t<svg\n\t\t\taria-hidden=\"true\"\n\t\t\tclassName=\"size-4\"\n\t\t\tviewBox=\"0 0 256 262\"\n\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t>\n\t\t\t<path fill=\"#4285F4\" d=\"M255.878 133.451c0-10.734-.871-18.567-2.756-26.69H130.55v48.448h71.947c-1.45 12.04-9.283 30.172-26.69 42.356l-.244 1.622 38.755 30.023 2.685.268c24.659-22.774 38.875-56.282 38.875-96.027\" />\n\t\t\t<path fill=\"#34A853\" d=\"M130.55 261.1c35.248 0 64.839-11.605 86.453-31.622l-41.196-31.913c-11.024 7.688-25.82 13.055-45.257 13.055-34.523 0-63.824-22.773-74.269-54.25l-1.531.13-40.298 31.187-.527 1.465C35.393 231.798 79.49 261.1 130.55 261.1\" />\n\t\t\t<path fill=\"#FBBC05\" d=\"M56.281 156.37c-2.756-8.123-4.351-16.827-4.351-25.82 0-8.994 1.595-17.697 4.206-25.82l-.073-1.73L15.26 71.312l-1.335.635C5.077 89.644 0 109.517 0 130.55s5.077 40.905 13.925 58.602l42.356-32.782\" />\n\t\t\t<path fill=\"#EB4335\" d=\"M130.55 50.479c24.514 0 41.05 10.589 50.479 19.438l36.844-35.974C195.245 12.91 165.798 0 130.55 0 79.49 0 35.393 29.301 13.925 71.947l42.211 32.783c10.59-31.477 39.891-54.251 74.414-54.251\" />\n\t\t</svg>\n\t);\n}\n\nfunction MicrosoftMark() {\n\treturn (\n\t\t<svg aria-hidden=\"true\" className=\"size-4\" viewBox=\"0 0 23 23\">\n\t\t\t<path fill=\"#f25022\" d=\"M1 1h10v10H1z\" />\n\t\t\t<path fill=\"#7fba00\" d=\"M12 1h10v10H12z\" />\n\t\t\t<path fill=\"#00a4ef\" d=\"M1 12h10v10H1z\" />\n\t\t\t<path fill=\"#ffb900\" d=\"M12 12h10v10H12z\" />\n\t\t</svg>\n\t);\n}\n\nfunction GithubMark() {\n\treturn (\n\t\t<svg aria-hidden=\"true\" className=\"size-4\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\n\t\t\t<path d=\"M12 2C6.48 2 2 6.58 2 12.24c0 4.53 2.87 8.37 6.84 9.73.5.09.68-.22.68-.49 0-.24-.01-.88-.01-1.73-2.78.62-3.37-1.37-3.37-1.37-.45-1.18-1.11-1.5-1.11-1.5-.91-.64.07-.63.07-.63 1 .07 1.53 1.06 1.53 1.06.9 1.57 2.36 1.12 2.93.86.09-.67.35-1.12.64-1.38-2.22-.26-4.56-1.14-4.56-5.07 0-1.12.39-2.04 1.03-2.76-.1-.26-.45-1.31.1-2.72 0 0 .84-.28 2.75 1.05A9.32 9.32 0 0 1 12 6.95c.85 0 1.7.12 2.5.35 1.9-1.33 2.74-1.05 2.74-1.05.55 1.41.2 2.46.1 2.72.64.72 1.03 1.64 1.03 2.76 0 3.94-2.34 4.8-4.57 5.06.36.32.68.95.68 1.91 0 1.38-.01 2.49-.01 2.83 0 .27.18.59.69.49A10.12 10.12 0 0 0 22 12.24C22 6.58 17.52 2 12 2Z\" />\n\t\t</svg>\n\t);\n}\n\nfunction AppleMark() {\n\treturn (\n\t\t<svg aria-hidden=\"true\" className=\"size-4\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\n\t\t\t<path d=\"M16.37 12.05c-.02-2.26 1.85-3.35 1.94-3.4-1.06-1.55-2.69-1.76-3.26-1.78-1.37-.14-2.7.82-3.39.82-.71 0-1.78-.8-2.93-.78-1.5.02-2.9.89-3.67 2.25-1.57 2.72-.4 6.72 1.1 8.92.76 1.08 1.64 2.29 2.79 2.25 1.13-.05 1.55-.72 2.91-.72 1.35 0 1.75.72 2.93.69 1.21-.02 1.98-1.09 2.71-2.18.87-1.24 1.22-2.46 1.23-2.52-.03-.01-2.34-.9-2.36-3.55ZM14.16 5.42c.61-.76 1.03-1.8.91-2.85-.88.04-1.98.61-2.62 1.35-.57.65-1.08 1.73-.95 2.74.99.08 2.02-.5 2.66-1.24Z\" />\n\t\t</svg>\n\t);\n}\n\nfunction ProviderIcon({ provider }: { provider: AuthSocialProvider }) {\n\tif (provider.icon) return <>{provider.icon}</>;\n\tswitch (provider.provider) {\n\t\tcase 'google':\n\t\t\treturn <GoogleMark />;\n\t\tcase 'github':\n\t\t\treturn <GithubMark />;\n\t\tcase 'microsoft':\n\t\t\treturn <MicrosoftMark />;\n\t\tcase 'apple':\n\t\t\treturn <AppleMark />;\n\t\tdefault:\n\t\t\treturn <KeyRound className=\"size-4\" aria-hidden=\"true\" />;\n\t}\n}\n\nexport function AuthSocialProviderButton({\n\tprovider,\n\trenderLink,\n\tLinkComponent,\n\tclassName,\n}: AuthSocialProviderButtonProps) {\n\tconst resolvedRenderLink = useLayoutLinkRenderer({ renderLink, LinkComponent });\n\tconst content = (\n\t\t<>\n\t\t\t<ProviderIcon provider={provider} />\n\t\t\t<Text tag=\"span\" className=\"text-inherit\">\n\t\t\t\t{provider.label}\n\t\t\t</Text>\n\t\t</>\n\t);\n\tconst buttonClassName = cn(\n\t\tPROVIDER_BUTTON_CLASS,\n\t\tprovider.disabled && 'pointer-events-none opacity-50',\n\t\tclassName,\n\t);\n\n\tif (provider.href) {\n\t\treturn resolvedRenderLink({\n\t\t\thref: provider.href,\n\t\t\ttarget: provider.target,\n\t\t\trel: provider.rel,\n\t\t\texternal: provider.external,\n\t\t\tdisabled: provider.disabled,\n\t\t\tonClick: provider.onClick,\n\t\t\tclassName: buttonClassName,\n\t\t\tchildren: content,\n\t\t});\n\t}\n\n\treturn (\n\t\t<Button\n\t\t\ttype=\"button\"\n\t\t\tvariant=\"secondary\"\n\t\t\tbuttonStyle=\"outline\"\n\t\t\tfullWidth\n\t\t\tdisabled={provider.disabled}\n\t\t\tclassName={cn('auth-social-provider-button--component', className)}\n\t\t\tonClick={(event) => provider.onClick?.(event)}\n\t\t>\n\t\t\t{content}\n\t\t</Button>\n\t);\n}\n\nexport function AuthSocialProviders({\n\tproviders,\n\tlayout = 'stack',\n\trenderLink,\n\tLinkComponent,\n\tclassName,\n\tstrings: stringsProp,\n\t...props\n}: AuthSocialProvidersProps) {\n\tconst strings = useStrings(defaultAuthSocialProvidersStrings, stringsProp);\n\tconst visibleProviders = providers?.filter((provider) => provider.visible !== false) ?? [];\n\n\tif (visibleProviders.length === 0) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\trole=\"group\"\n\t\t\taria-label={props['aria-label'] ?? strings.label}\n\t\t\tdata-layout={layout}\n\t\t\tclassName={cn(\n\t\t\t\t'auth-social-providers--component',\n\t\t\t\tlayout === 'grid' ? 'grid gap-2 sm:grid-cols-2' : 'grid gap-2',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{visibleProviders.map((provider) => (\n\t\t\t\t<AuthSocialProviderButton\n\t\t\t\t\tkey={provider.id ?? String(provider.label)}\n\t\t\t\t\tprovider={provider}\n\t\t\t\t\trenderLink={renderLink}\n\t\t\t\t\tLinkComponent={LinkComponent}\n\t\t\t\t/>\n\t\t\t))}\n\t\t</div>\n\t);\n}\n","import {\n\tItem,\n\tItemContent,\n\tItemDescription,\n\tItemGroup,\n\tItemMedia,\n\tItemTitle,\n} from '@/components/base/item';\nimport { Heading, Text } from '@/components/typography';\nimport { cn } from '@/lib/utils';\n\nimport type { AuthSplitPanelProps } from './auth.types';\n\nconst SURFACE_CLASS: Record<NonNullable<AuthSplitPanelProps['surface']>, string> = {\n\tcard: 'border-border/70 bg-card',\n\tmuted: 'border-border/60 bg-muted/40',\n};\n\nexport function AuthSplitPanel({\n\teyebrow,\n\ttitle,\n\tdescription,\n\tmedia,\n\tfeatures,\n\tfooter,\n\tchildren,\n\tsurface = 'muted',\n\tclassName,\n\tcontentClassName,\n\t...props\n}: AuthSplitPanelProps) {\n\tconst hasIntro = Boolean(eyebrow || title || description);\n\tconst visibleFeatures = features?.filter((feature) => feature.title) ?? [];\n\n\treturn (\n\t\t<aside\n\t\t\tdata-slot=\"auth-split-panel\"\n\t\t\tdata-surface={surface}\n\t\t\tclassName={cn(\n\t\t\t\t'auth-split-panel--component',\n\t\t\t\t'flex min-h-full w-full flex-col justify-between overflow-hidden border',\n\t\t\t\tSURFACE_CLASS[surface],\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-split-panel--content',\n\t\t\t\t\t'flex min-h-full flex-col justify-center gap-8 p-6 md:p-8 lg:p-10',\n\t\t\t\t\tcontentClassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{!!media && (\n\t\t\t\t\t<div className=\"auth-split-panel--media overflow-hidden rounded-lg border border-border/60 bg-background/70\">\n\t\t\t\t\t\t{media}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{!!hasIntro && (\n\t\t\t\t\t<div className=\"auth-split-panel--intro max-w-xl space-y-2\">\n\t\t\t\t\t\t{!!eyebrow && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\tsize=\"xxs\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\t\t\t\tclassName=\"auth-split-panel--eyebrow uppercase tracking-wide\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{eyebrow}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!title && (\n\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\ttag=\"h2\"\n\t\t\t\t\t\t\t\tcontainerClassName=\"space-y-0\"\n\t\t\t\t\t\t\t\tclassName=\"auth-split-panel--title border-0 pb-0 text-xl leading-tight\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{title}\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!description && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\tlineHeight=\"relaxed\"\n\t\t\t\t\t\t\t\tclassName=\"auth-split-panel--description max-w-prose\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{visibleFeatures.length > 0 && (\n\t\t\t\t\t<ItemGroup className=\"auth-split-panel--features grid gap-3\">\n\t\t\t\t\t\t{visibleFeatures.map((feature, index) => (\n\t\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\t\tkey={feature.id ?? index}\n\t\t\t\t\t\t\t\tvariant=\"muted\"\n\t\t\t\t\t\t\t\tclassName=\"auth-split-panel--feature bg-background/70\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{!!feature.icon && (\n\t\t\t\t\t\t\t\t\t<ItemMedia variant=\"icon\" className=\"text-muted-foreground\">\n\t\t\t\t\t\t\t\t\t\t{feature.icon}\n\t\t\t\t\t\t\t\t\t</ItemMedia>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<ItemContent className=\"min-w-[min(12rem,100%)]\">\n\t\t\t\t\t\t\t\t\t<ItemTitle>{feature.title}</ItemTitle>\n\t\t\t\t\t\t\t\t\t{!!feature.description && (\n\t\t\t\t\t\t\t\t\t\t<ItemDescription clamp=\"none\">{feature.description}</ItemDescription>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</ItemContent>\n\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</ItemGroup>\n\t\t\t\t)}\n\n\t\t\t\t{children}\n\n\t\t\t\t{!!footer && (\n\t\t\t\t\t<div className=\"auth-split-panel--footer\">\n\t\t\t\t\t\t{footer}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</aside>\n\t);\n}\n","import { Globe2 } from 'lucide-react';\nimport { isValidElement, type ReactNode } from 'react';\n\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { AuthCard } from './auth-card';\nimport { AuthFooterLinks } from './auth-footer-links';\nimport { isAuthBrandConfig, useAuthShell } from './auth-hooks';\nimport { defaultAuthShellStrings } from './auth.strings';\nimport { AuthSocialProviders } from './auth-social-providers';\nimport { AuthSplitPanel } from './auth-split-panel';\nimport type {\n\tAuthBrand,\n\tAuthBrandConfig,\n\tAuthShellProps,\n\tAuthSplitPanelProps,\n} from './auth.types';\n\nconst SIZE_CLASS: Record<NonNullable<AuthShellProps['size']>, string> = {\n\tsm: 'max-w-sm',\n\tmd: 'max-w-md',\n\tlg: 'max-w-lg',\n};\n\nfunction isSplitPanelProps(panel: AuthShellProps['splitPanel']): panel is AuthSplitPanelProps {\n\treturn Boolean(panel && typeof panel === 'object' && !isValidElement(panel));\n}\n\nfunction renderBrandContent(brand: AuthBrandConfig): ReactNode {\n\tconst hasText = Boolean(brand.label || brand.description);\n\n\treturn (\n\t\t<>\n\t\t\t{!!brand.logo && (\n\t\t\t\t<div className=\"auth-shell--brand-logo shrink-0\">\n\t\t\t\t\t{brand.logo}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t\t{!!hasText && (\n\t\t\t\t<div className=\"auth-shell--brand-text min-w-0\">\n\t\t\t\t\t{!!brand.label && (\n\t\t\t\t\t\t<Text tag=\"div\" weight=\"semibold\" className=\"auth-shell--brand-label\">\n\t\t\t\t\t\t\t{brand.label}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t)}\n\t\t\t\t\t{!!brand.description && (\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\tclassName=\"auth-shell--brand-description\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{brand.description}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</>\n\t);\n}\n\nfunction renderBrand({\n\tbrand,\n\trenderLink,\n}: {\n\tbrand?: AuthBrand;\n\trenderLink: NonNullable<AuthShellProps['renderLink']>;\n}) {\n\tif (!brand) return null;\n\n\tif (!isAuthBrandConfig(brand)) {\n\t\treturn (\n\t\t\t<div className=\"auth-shell--brand flex items-center justify-center\">\n\t\t\t\t{brand}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst content = renderBrandContent(brand);\n\tconst className = cn(\n\t\t'auth-shell--brand',\n\t\t'inline-flex items-center justify-center gap-2.5 self-center rounded-md text-foreground',\n\t\tbrand.href && 'transition-opacity hover:opacity-80',\n\t);\n\n\tif (brand.href) {\n\t\treturn renderLink({\n\t\t\thref: brand.href,\n\t\t\t'aria-label': brand.ariaLabel,\n\t\t\tclassName,\n\t\t\tchildren: content,\n\t\t});\n\t}\n\n\treturn <div className={className}>{content}</div>;\n}\n\nfunction renderSplitPanel(panel: AuthShellProps['splitPanel']) {\n\tif (!panel) return null;\n\tif (isValidElement(panel)) return panel;\n\tif (isSplitPanelProps(panel)) return <AuthSplitPanel {...panel} />;\n\treturn null;\n}\n\nexport function AuthShell({\n\tchildren,\n\tvariant: variantProp = 'card',\n\tsize = 'md',\n\talign = 'center',\n\tbrand,\n\teyebrow,\n\ttitle,\n\tdescription,\n\theaderEnd,\n\tbanner,\n\tcardMedia,\n\tcardMediaClassName,\n\tcardFooter,\n\tpostCard,\n\tfooter,\n\tfooterLinks,\n\tpolicyLinks,\n\tlanguageLinks,\n\tlanguageSwitcher,\n\tsocialProviders,\n\tsocialProvidersLayout = 'stack',\n\tsocialDivider,\n\tsplitPanel,\n\tsplitSide = 'left',\n\tsplitMobile = 'hidden',\n\trenderLink,\n\tLinkComponent,\n\tclassName,\n\tmainClassName,\n\tstackClassName,\n\tcardClassName,\n\tcardContentClassName,\n\tsplitGridClassName,\n\tsplitPanelClassName,\n\tfooterClassName,\n\tstrings: stringsProp,\n\t...props\n}: AuthShellProps) {\n\tconst strings = useStrings(defaultAuthShellStrings, stringsProp);\n\tconst {\n\t\tvariant,\n\t\thasBrand,\n\t\thasAfterCard,\n\t\thasSplitPanel,\n\t\thasSocialProviders,\n\t\trenderLink: resolvedRenderLink,\n\t\tfooterLinks: visibleFooterLinks,\n\t\tpolicyLinks: visiblePolicyLinks,\n\t\tlanguageLinks: visibleLanguageLinks,\n\t\tsocialProviders: visibleSocialProviders,\n\t} = useAuthShell({\n\t\tvariant: variantProp,\n\t\tbrand,\n\t\tfooter,\n\t\tfooterLinks,\n\t\tpolicyLinks,\n\t\tlanguageLinks,\n\t\tlanguageSwitcher,\n\t\tpostCard,\n\t\tsocialProviders,\n\t\tsplitPanel,\n\t\trenderLink,\n\t\tLinkComponent,\n\t});\n\tconst isSplit = variant === 'split' && hasSplitPanel;\n\tconst panel = renderSplitPanel(splitPanel);\n\tconst panelFirst = splitSide === 'left';\n\tconst showStackedPanel = splitMobile === 'stacked';\n\tconst brandNode = hasBrand ? renderBrand({ brand, renderLink: resolvedRenderLink }) : null;\n\n\tconst main = (\n\t\t<main\n\t\t\tclassName={cn(\n\t\t\t\t'auth-shell--main',\n\t\t\t\t'flex min-h-svh w-full items-center justify-center px-4 py-8 sm:px-6 md:px-8',\n\t\t\t\talign === 'start' && 'items-start pt-12',\n\t\t\t\tisSplit && 'lg:min-h-svh',\n\t\t\t\tmainClassName,\n\t\t\t)}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-shell--stack',\n\t\t\t\t\t'flex w-full flex-col gap-5',\n\t\t\t\t\tSIZE_CLASS[size],\n\t\t\t\t\tstackClassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{brandNode}\n\n\t\t\t\t<AuthCard\n\t\t\t\t\teyebrow={eyebrow}\n\t\t\t\t\ttitle={title}\n\t\t\t\t\tdescription={description}\n\t\t\t\t\theaderEnd={headerEnd}\n\t\t\t\t\tbanner={banner}\n\t\t\t\t\tmedia={cardMedia}\n\t\t\t\t\tmediaClassName={cardMediaClassName}\n\t\t\t\t\tfooter={cardFooter}\n\t\t\t\t\tclassName={cardClassName}\n\t\t\t\t\tcontentClassName={cardContentClassName}\n\t\t\t\t>\n\t\t\t\t\t{!!hasSocialProviders && (\n\t\t\t\t\t\t<div className=\"auth-shell--social mb-4 grid gap-4\">\n\t\t\t\t\t\t\t<AuthSocialProviders\n\t\t\t\t\t\t\t\tproviders={visibleSocialProviders}\n\t\t\t\t\t\t\t\tlayout={socialProvidersLayout}\n\t\t\t\t\t\t\t\trenderLink={resolvedRenderLink}\n\t\t\t\t\t\t\t\tstrings={{ label: strings.socialProvidersLabel }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<div className=\"auth-shell--social-divider flex items-center gap-3\">\n\t\t\t\t\t\t\t\t<span className=\"h-px min-w-0 flex-1 bg-border\" aria-hidden=\"true\" />\n\t\t\t\t\t\t\t\t<Text tag=\"span\" size=\"xs\" type=\"secondary\">\n\t\t\t\t\t\t\t\t\t{socialDivider ?? strings.socialDivider}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<span className=\"h-px min-w-0 flex-1 bg-border\" aria-hidden=\"true\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t{children}\n\t\t\t\t</AuthCard>\n\n\t\t\t\t{!!hasAfterCard && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'auth-shell--after-card',\n\t\t\t\t\t\t\t'flex flex-col items-center gap-3 text-center',\n\t\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{!!postCard && <div className=\"auth-shell--post-card\">{postCard}</div>}\n\t\t\t\t\t\t{!!languageSwitcher && (\n\t\t\t\t\t\t\t<div className=\"auth-shell--language-switcher\">\n\t\t\t\t\t\t\t\t{languageSwitcher}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{visibleLanguageLinks.length > 0 && (\n\t\t\t\t\t\t\t<AuthFooterLinks\n\t\t\t\t\t\t\t\tclassName=\"auth-shell--language-links\"\n\t\t\t\t\t\t\t\tlinks={visibleLanguageLinks}\n\t\t\t\t\t\t\t\tleadingIcon={<Globe2 className=\"size-3.5\" />}\n\t\t\t\t\t\t\t\trenderLink={resolvedRenderLink}\n\t\t\t\t\t\t\t\tstrings={{ label: strings.languageLinksLabel }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{visibleFooterLinks.length > 0 && (\n\t\t\t\t\t\t\t<AuthFooterLinks\n\t\t\t\t\t\t\t\tclassName=\"auth-shell--footer-links\"\n\t\t\t\t\t\t\t\tlinks={visibleFooterLinks}\n\t\t\t\t\t\t\t\trenderLink={resolvedRenderLink}\n\t\t\t\t\t\t\t\tstrings={{ label: strings.footerLinksLabel }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{visiblePolicyLinks.length > 0 && (\n\t\t\t\t\t\t\t<AuthFooterLinks\n\t\t\t\t\t\t\t\tclassName=\"auth-shell--policy-links\"\n\t\t\t\t\t\t\t\tlinks={visiblePolicyLinks}\n\t\t\t\t\t\t\t\trenderLink={resolvedRenderLink}\n\t\t\t\t\t\t\t\tstrings={{ label: strings.policyLinksLabel }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!footer && <div className=\"auth-shell--footer\">{footer}</div>}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</main>\n\t);\n\n\tif (!isSplit) {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tdata-slot=\"auth-shell\"\n\t\t\t\tdata-variant=\"card\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-shell--component',\n\t\t\t\t\t'min-h-svh bg-background text-foreground',\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{main}\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"auth-shell\"\n\t\t\tdata-variant=\"split\"\n\t\t\tdata-split-side={splitSide}\n\t\t\tdata-split-mobile={splitMobile}\n\t\t\tclassName={cn(\n\t\t\t\t'auth-shell--component',\n\t\t\t\t'min-h-svh bg-background text-foreground',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-shell--split-grid min-h-svh lg:grid',\n\t\t\t\t\tpanelFirst\n\t\t\t\t\t\t? 'lg:grid-cols-[minmax(0,1fr)_minmax(24rem,34rem)]'\n\t\t\t\t\t\t: 'lg:grid-cols-[minmax(24rem,34rem)_minmax(0,1fr)]',\n\t\t\t\t\tsplitGridClassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{!!panelFirst && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'auth-shell--split-panel',\n\t\t\t\t\t\t\tshowStackedPanel ? 'block' : 'hidden lg:block',\n\t\t\t\t\t\t\tsplitPanelClassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{panel}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t{main}\n\t\t\t\t{!panelFirst && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'auth-shell--split-panel',\n\t\t\t\t\t\t\tshowStackedPanel ? 'block' : 'hidden lg:block',\n\t\t\t\t\t\t\tsplitPanelClassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{panel}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import * as React from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { defaultAuthMethodSwitchStrings } from './auth.strings';\nimport type {\n\tAuthMethodOption,\n\tAuthMethodSwitchProps,\n\tUseAuthMethodSwitchOptions,\n\tUseAuthMethodSwitchReturn,\n} from './auth.types';\n\nfunction firstEnabledOption(options: AuthMethodOption[]) {\n\treturn options.find((option) => !option.disabled);\n}\n\nexport function useAuthMethodSwitch({\n\toptions = [],\n\tvalue,\n\tdefaultValue,\n\tonValueChange,\n}: UseAuthMethodSwitchOptions = {}): UseAuthMethodSwitchReturn {\n\tconst visibleOptions = React.useMemo(\n\t\t() => options.filter((option) => option.visible !== false),\n\t\t[options],\n\t);\n\tconst fallbackValue = defaultValue ?? firstEnabledOption(visibleOptions)?.id;\n\tconst [internalValue, setInternalValue] = React.useState<string | undefined>(fallbackValue);\n\tconst isControlled = value !== undefined;\n\tconst selectedValue = isControlled ? value : internalValue;\n\tconst selectedOption = visibleOptions.find((option) => option.id === selectedValue);\n\n\tconst setValue = React.useCallback(\n\t\t(nextValue: string) => {\n\t\t\tconst nextOption = visibleOptions.find((option) => option.id === nextValue);\n\t\t\tif (!nextOption || nextOption.disabled) return;\n\n\t\t\tif (!isControlled) {\n\t\t\t\tsetInternalValue(nextValue);\n\t\t\t}\n\n\t\t\tonValueChange?.(nextValue, nextOption);\n\t\t},\n\t\t[isControlled, onValueChange, visibleOptions],\n\t);\n\n\tReact.useEffect(() => {\n\t\tif (isControlled || selectedOption || visibleOptions.length === 0) return;\n\t\tsetInternalValue(firstEnabledOption(visibleOptions)?.id);\n\t}, [isControlled, selectedOption, visibleOptions]);\n\n\treturn {\n\t\tvalue: selectedValue,\n\t\tselectedOption,\n\t\toptions: visibleOptions,\n\t\tsetValue,\n\t};\n}\n\nexport function AuthMethodSwitch({\n\toptions = [],\n\tvalue,\n\tdefaultValue,\n\tonValueChange,\n\tlayout = 'stack',\n\tdivider,\n\tclassName,\n\tstrings: stringsProp,\n\t...props\n}: AuthMethodSwitchProps) {\n\tconst strings = useStrings(defaultAuthMethodSwitchStrings, stringsProp);\n\tconst { ['aria-label']: ariaLabel, ...rootProps } = props;\n\tconst {\n\t\tvalue: selectedValue,\n\t\toptions: visibleOptions,\n\t\tsetValue,\n\t} = useAuthMethodSwitch({\n\t\toptions,\n\t\tvalue,\n\t\tdefaultValue,\n\t\tonValueChange,\n\t});\n\n\tif (visibleOptions.length === 0) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div className={cn('auth-method-switch--component grid gap-3', className)} {...rootProps}>\n\t\t\t{divider !== null && divider !== false && (\n\t\t\t\t<div className=\"auth-method-switch--divider flex items-center gap-3\">\n\t\t\t\t\t<span className=\"h-px min-w-0 flex-1 bg-border\" aria-hidden=\"true\" />\n\t\t\t\t\t<Text tag=\"span\" size=\"xs\" type=\"secondary\">\n\t\t\t\t\t\t{divider ?? strings.divider}\n\t\t\t\t\t</Text>\n\t\t\t\t\t<span className=\"h-px min-w-0 flex-1 bg-border\" aria-hidden=\"true\" />\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t<div\n\t\t\t\trole=\"group\"\n\t\t\t\taria-label={ariaLabel ?? strings.label}\n\t\t\t\tdata-layout={layout}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-method-switch--options',\n\t\t\t\t\tlayout === 'grid' && 'grid gap-2 sm:grid-cols-2',\n\t\t\t\t\tlayout === 'stack' && 'grid gap-2',\n\t\t\t\t\tlayout === 'segmented' &&\n\t\t\t\t\t\t'grid grid-cols-[repeat(auto-fit,minmax(0,1fr))] gap-1 rounded-lg border border-border bg-muted/40 p-1',\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{visibleOptions.map((option) => {\n\t\t\t\t\tconst selected = option.id === selectedValue;\n\t\t\t\t\tconst segmented = layout === 'segmented';\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={option.id}\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\taria-pressed={selected}\n\t\t\t\t\t\t\tdisabled={option.disabled}\n\t\t\t\t\t\t\tvariant={selected ? 'dark' : 'secondary'}\n\t\t\t\t\t\t\tbuttonStyle={selected ? 'solid' : segmented ? 'ghost' : 'outline'}\n\t\t\t\t\t\t\tfullWidth\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'auth-method-switch--option',\n\t\t\t\t\t\t\t\t'h-auto min-h-10 justify-start rounded-md px-3 py-2.5 text-start',\n\t\t\t\t\t\t\t\tsegmented &&\n\t\t\t\t\t\t\t\t\t'min-h-9 justify-center border-0 px-2 py-2 text-center shadow-none min-[480px]:px-3 min-[480px]:text-start',\n\t\t\t\t\t\t\t\tselected && 'auth-method-switch--option-selected',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\tonClick={() => setValue(option.id)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t'auth-method-switch--option-inner flex min-w-0 items-center gap-2',\n\t\t\t\t\t\t\t\t\tsegmented &&\n\t\t\t\t\t\t\t\t\t\t'w-full flex-col justify-center gap-1 min-[480px]:w-auto min-[480px]:flex-row min-[480px]:justify-start min-[480px]:gap-2',\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{!!option.icon && (\n\t\t\t\t\t\t\t\t\t<span className=\"auth-method-switch--option-icon shrink-0\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t{option.icon}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t'auth-method-switch--option-copy grid min-w-0 gap-0.5',\n\t\t\t\t\t\t\t\t\t\tsegmented && 'justify-items-center min-[480px]:justify-items-start',\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\ttag=\"span\"\n\t\t\t\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t'max-w-full text-inherit leading-tight',\n\t\t\t\t\t\t\t\t\t\t\tsegmented\n\t\t\t\t\t\t\t\t\t\t\t\t? 'text-center min-[480px]:truncate min-[480px]:text-start'\n\t\t\t\t\t\t\t\t\t\t\t\t: 'text-start',\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t{!!option.description && (\n\t\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\t\ttag=\"span\"\n\t\t\t\t\t\t\t\t\t\t\tsize=\"xxs\"\n\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\tsegmented\n\t\t\t\t\t\t\t\t\t\t\t\t\t? 'hidden min-[480px]:block min-[480px]:truncate'\n\t\t\t\t\t\t\t\t\t\t\t\t\t: 'text-start leading-snug',\n\t\t\t\t\t\t\t\t\t\t\t\tselected ? 'text-inherit opacity-75' : 'text-muted-foreground',\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{option.description}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("./chunk-CMqjfN_6.cjs"),t=require("./ui-provider-BF4m2cR0.cjs"),n=require("../lib/utils.cjs");let r=require("react");r=e.t(r,1);let i=require("react/jsx-runtime"),a=require("lucide-react"),o=require("@radix-ui/react-slot");var s=(0,require("class-variance-authority").cva)(`inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive transition-[color,box-shadow] overflow-auto`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90`,secondary:`border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90`,destructive:`border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground`}},defaultVariants:{variant:`default`}});function c({className:e,variant:t,asChild:r=!1,...a}){return(0,i.jsx)(r?o.Slot:`span`,{"data-slot":`badge`,className:n.cn(s({variant:t}),e),...a})}var l={xs:`px-1.5 py-0.5 text-xxs`,sm:`px-2 py-1 text-xs`,md:`px-2.5 py-1.5 text-sm`},u={primary:{color:`text-primary-foreground`,background:`bg-primary`,border:`border-primary-foreground/40`,dot:`bg-primary-foreground`},secondary:{color:`text-foreground`,background:`bg-foreground/8`,border:`border-foreground/15`,dot:`bg-muted-foreground`},success:{color:`text-success`,background:`bg-success/10`,border:`border-success/50`,dot:`bg-success`},info:{color:`text-info`,background:`bg-info/10`,border:`border-info/50`,dot:`bg-info`},warning:{color:`text-warning-foreground`,background:`bg-warning/40`,border:`border-warning/60`,dot:`bg-warning`},error:{color:`text-destructive`,background:`bg-destructive/10`,border:`border-destructive/50`,dot:`bg-destructive`},destructive:{color:`text-destructive`,background:`bg-destructive/10`,border:`border-destructive/50`,dot:`bg-destructive`},main:{color:`text-main-foreground`,background:`bg-main`,border:`border-main-foreground/40`,dot:`bg-main-foreground`}};function d({variant:e=`primary`,className:r,size:o,inline:s=!1,dot:d=!1,pending:p=!1,pulse:m=!1,important:h=!1,children:g,..._}){let{defaultSize:v}=t.t(),y=n.cn(l[o??v??`xs`],`font-semibold gap-1.5`),b=s?`inline-flex h-auto min-h-0 w-auto shrink-0 align-middle rounded-full px-1.5 py-0 text-xxs leading-4 font-medium`:null,x=u[e]??u.primary;return(0,i.jsxs)(c,{variant:`secondary`,className:n.cn(`badge--component`,x.color,x.background,y,b,r),..._,children:[!!d&&(0,i.jsx)(f,{filled:!p,pulse:m,variant:x}),!!h&&!d&&(0,i.jsx)(a.TriangleAlert,{className:n.cn(x.color,`w-6 h-6`)}),(0,i.jsx)(`span`,{className:`inline-flex items-center gap-1 whitespace-nowrap [&>svg]:inline-block [&>svg]:shrink-0`,children:g})]})}function f({filled:e=!1,variant:t,pulse:r=!1}){return(0,i.jsx)(`span`,{className:n.cn(`size-2 rounded-full shrink-0 border-[2px]`,t.border,{"animate-pulse":r},[e?t.dot:`bg-transparent`])})}d.displayName=`Badge`,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return d}});
|
|
2
|
+
//# sourceMappingURL=badge--o9wFHB_.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge--o9wFHB_.cjs","names":[],"sources":["../../src/components/ui/badge.tsx","../../src/components/base/badge/badge.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n\t\"inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive transition-[color,box-shadow] overflow-auto\",\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tdefault:\n\t\t\t\t\t\"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n\t\t\t\tsecondary:\n\t\t\t\t\t\"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n\t\t\t\tdestructive:\n\t\t\t\t\t\"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n\t\t\t\toutline:\n\t\t\t\t\t\"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"default\",\n\t\t},\n\t}\n)\n\nfunction Badge({\n\tclassName,\n\tvariant,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<\"span\"> &\n\tVariantProps<typeof badgeVariants> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : \"span\"\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"badge\"\n\t\t\tclassName={cn(badgeVariants({ variant }), className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nexport { Badge, badgeVariants }\n","/**\n * Badge — composed badge with semantic variants (primary / secondary / success / info /\n * warning / error / destructive / main), three sizes (xs / sm / md), optional dot indicator\n * (with pulse + pending states), inline mode, and an `important` flag that swaps in a warning icon.\n */\nimport { TriangleAlert } from 'lucide-react';\nimport * as React from \"react\"\n\nimport { Badge as BaseBadge } from \"@/components/ui/badge\"\nimport { useBadgeConfig, type BadgeSize } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type ComposedBadgeVariant =\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"info\"\n | \"error\"\n | \"destructive\"\n | \"main\"\n | \"warning\"\n\nexport interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'content'> {\n variant?: ComposedBadgeVariant\n size?: BadgeSize\n inline?: boolean;\n dot?: boolean;\n pulse?: boolean;\n pending?: boolean;\n important?: boolean;\n}\n\ntype BadgeVariantStyle = { color: string; background: string; border: string; dot: string };\n\nconst sizeClassMap: Record<NonNullable<BadgeProps['size']>, string> = {\n\txs: 'px-1.5 py-0.5 text-xxs',\n\tsm: 'px-2 py-1 text-xs',\n\tmd: 'px-2.5 py-1.5 text-sm',\n};\n\nconst variantClassMap: Record<ComposedBadgeVariant, BadgeVariantStyle> = {\n primary: {\n color: 'text-primary-foreground',\n background: 'bg-primary',\n border: 'border-primary-foreground/40',\n dot: 'bg-primary-foreground'\n },\n secondary: {\n color: 'text-foreground',\n background: 'bg-foreground/8',\n border: 'border-foreground/15',\n dot: 'bg-muted-foreground'\n },\n success: {\n color: 'text-success',\n background: 'bg-success/10',\n border: 'border-success/50',\n dot: 'bg-success'\n },\n info: {\n color: 'text-info',\n background: 'bg-info/10',\n border: 'border-info/50',\n dot: 'bg-info'\n },\n warning: {\n color: 'text-warning-foreground',\n background: 'bg-warning/40',\n border: 'border-warning/60',\n dot: 'bg-warning'\n },\n error: {\n color: 'text-destructive',\n background: 'bg-destructive/10',\n border: 'border-destructive/50',\n dot: 'bg-destructive'\n },\n destructive: {\n color: 'text-destructive',\n background: 'bg-destructive/10',\n border: 'border-destructive/50',\n dot: 'bg-destructive'\n },\n main: {\n color: 'text-main-foreground',\n background: 'bg-main',\n border: 'border-main-foreground/40',\n dot: 'bg-main-foreground'\n },\n}\n\n/**\n * Composed Badge using base-ui primitives\n * - Semantic variants using CSS variables: success | info | warning | error.\n * - Primary/secondary with proper theming.\n * - Optional `dot` prop for dot indicator style (colored dot + text, no background).\n */\nexport function Badge({\n variant = \"primary\",\n className,\n size,\n inline = false,\n dot = false,\n pending = false,\n pulse = false,\n important = false,\n children,\n ...props\n}: BadgeProps) {\n const { defaultSize } = useBadgeConfig();\n const resolvedSize: BadgeSize = size ?? defaultSize ?? 'xs';\n const defaultClassNames = cn(sizeClassMap[resolvedSize], \"font-semibold gap-1.5\")\n const inlineClassNames = inline\n ? 'inline-flex h-auto min-h-0 w-auto shrink-0 align-middle rounded-full px-1.5 py-0 text-xxs leading-4 font-medium'\n : null;\n\n const theme = variantClassMap[variant] ?? variantClassMap.primary;\n\n return (\n <BaseBadge\n variant=\"secondary\"\n className={cn('badge--component', \n theme.color,\n theme.background,\n defaultClassNames,\n inlineClassNames,\n className,\n )}\n {...props}\n >\n {!!dot && <Dot filled={!pending} pulse={pulse} variant={theme} />}\n {(!!important && !dot) && <TriangleAlert className={cn(theme.color, 'w-6 h-6')} />}\n <span className=\"inline-flex items-center gap-1 whitespace-nowrap [&>svg]:inline-block [&>svg]:shrink-0\">\n {children}\n </span>\n </BaseBadge>\n )\n}\n\nfunction Dot({ filled = false, variant, pulse = false }: { filled?: boolean; variant: BadgeVariantStyle, pulse?: boolean }) {\n return (\n <span\n className={cn(\"size-2 rounded-full shrink-0 border-[2px]\", variant.border,\n {\n 'animate-pulse': pulse\n },\n [\n filled ? variant.dot : 'bg-transparent'\n ]\n )}\n />\n )\n}\n\nexport default Badge\n\nBadge.displayName = 'Badge';\n"],"mappings":"+OAMA,IAAM,GAAA,oCAAA,EAAA,KACL,yWACA,CACC,SAAU,CACT,QAAS,CACR,QACC,iFACD,UACC,uFACD,YACC,4KACD,QACC,wEACF,CACD,EACA,gBAAiB,CAChB,QAAS,SACV,CACD,CACD,EAEA,SAAS,EAAM,CACd,YACA,UACA,UAAU,GACV,GAAG,GAEyD,CAG5D,OACC,EAAA,EAAA,KAHY,EAAU,EAAA,KAAO,OAG7B,CACC,YAAU,QACV,UAAW,EAAA,GAAG,EAAc,CAAE,SAAQ,CAAC,EAAG,CAAS,EACnD,GAAI,CACJ,CAAA,CAEH,CCTA,IAAM,EAAgE,CACrE,GAAI,yBACJ,GAAI,oBACJ,GAAI,uBACL,EAEM,EAAmE,CACvE,QAAS,CACP,MAAO,0BACP,WAAY,aACZ,OAAQ,+BACR,IAAK,uBACP,EACA,UAAW,CACT,MAAO,kBACP,WAAY,kBACZ,OAAQ,uBACR,IAAK,qBACP,EACA,QAAS,CACP,MAAO,eACP,WAAY,gBACZ,OAAQ,oBACR,IAAK,YACP,EACA,KAAM,CACJ,MAAO,YACP,WAAY,aACZ,OAAQ,iBACR,IAAK,SACP,EACA,QAAS,CACP,MAAO,0BACP,WAAY,gBACZ,OAAQ,oBACR,IAAK,YACP,EACA,MAAO,CACL,MAAO,mBACP,WAAY,oBACZ,OAAQ,wBACR,IAAK,gBACP,EACA,YAAa,CACX,MAAO,mBACP,WAAY,oBACZ,OAAQ,wBACR,IAAK,gBACP,EACA,KAAM,CACJ,MAAO,uBACP,WAAY,UACZ,OAAQ,4BACR,IAAK,oBACP,CACF,EAQA,SAAgB,EAAM,CACpB,UAAU,UACV,YACA,OACA,SAAS,GACT,MAAM,GACN,UAAU,GACV,QAAQ,GACR,YAAY,GACZ,WACA,GAAG,GACU,CACb,GAAM,CAAE,eAAgB,EAAA,EAAe,EAEjC,EAAoB,EAAA,GAAG,EADG,GAAQ,GAAe,MACE,uBAAuB,EAC1E,EAAmB,EACrB,kHACA,KAEE,EAAQ,EAAgB,IAAY,EAAgB,QAE1D,OACE,EAAA,EAAA,MAAC,EAAD,CACE,QAAQ,YACR,UAAW,EAAA,GAAG,mBACZ,EAAM,MACN,EAAM,WACN,EACA,EACA,CACF,EACA,GAAI,WATN,CAWG,CAAC,CAAC,IAAO,EAAA,EAAA,KAAC,EAAD,CAAK,OAAQ,CAAC,EAAgB,QAAO,QAAS,CAAQ,CAAA,EAC9D,CAAC,CAAC,GAAa,CAAC,IAAQ,EAAA,EAAA,KAAC,EAAA,cAAD,CAAe,UAAW,EAAA,GAAG,EAAM,MAAO,SAAS,CAAI,CAAA,GACjF,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,yFACb,UACG,CAAA,CACG,GAEf,CAEA,SAAS,EAAI,CAAE,SAAS,GAAO,UAAS,QAAQ,IAA4E,CAC1H,OACE,EAAA,EAAA,KAAC,OAAD,CACE,UAAW,EAAA,GAAG,4CAA6C,EAAQ,OACjE,CACE,gBAAiB,CACnB,EACA,CACE,EAAS,EAAQ,IAAM,gBACzB,CACF,CACD,CAAA,CAEL,CAIA,EAAM,YAAc"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { t as e } from "./ui-provider-C8Ot88lS.js";
|
|
2
|
+
import { cn as t } from "../lib/utils.js";
|
|
3
|
+
import "react";
|
|
4
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
5
|
+
import { TriangleAlert as i } from "lucide-react";
|
|
6
|
+
import { Slot as a } from "@radix-ui/react-slot";
|
|
7
|
+
import { cva as o } from "class-variance-authority";
|
|
8
|
+
//#region src/components/ui/badge.tsx
|
|
9
|
+
var s = o("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive transition-[color,box-shadow] overflow-auto", {
|
|
10
|
+
variants: { variant: {
|
|
11
|
+
default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
|
|
12
|
+
secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
|
|
13
|
+
destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
|
|
14
|
+
outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
|
|
15
|
+
} },
|
|
16
|
+
defaultVariants: { variant: "default" }
|
|
17
|
+
});
|
|
18
|
+
function c({ className: e, variant: r, asChild: i = !1, ...o }) {
|
|
19
|
+
return /* @__PURE__ */ n(i ? a : "span", {
|
|
20
|
+
"data-slot": "badge",
|
|
21
|
+
className: t(s({ variant: r }), e),
|
|
22
|
+
...o
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
//#region src/components/base/badge/badge.tsx
|
|
27
|
+
var l = {
|
|
28
|
+
xs: "px-1.5 py-0.5 text-xxs",
|
|
29
|
+
sm: "px-2 py-1 text-xs",
|
|
30
|
+
md: "px-2.5 py-1.5 text-sm"
|
|
31
|
+
}, u = {
|
|
32
|
+
primary: {
|
|
33
|
+
color: "text-primary-foreground",
|
|
34
|
+
background: "bg-primary",
|
|
35
|
+
border: "border-primary-foreground/40",
|
|
36
|
+
dot: "bg-primary-foreground"
|
|
37
|
+
},
|
|
38
|
+
secondary: {
|
|
39
|
+
color: "text-foreground",
|
|
40
|
+
background: "bg-foreground/8",
|
|
41
|
+
border: "border-foreground/15",
|
|
42
|
+
dot: "bg-muted-foreground"
|
|
43
|
+
},
|
|
44
|
+
success: {
|
|
45
|
+
color: "text-success",
|
|
46
|
+
background: "bg-success/10",
|
|
47
|
+
border: "border-success/50",
|
|
48
|
+
dot: "bg-success"
|
|
49
|
+
},
|
|
50
|
+
info: {
|
|
51
|
+
color: "text-info",
|
|
52
|
+
background: "bg-info/10",
|
|
53
|
+
border: "border-info/50",
|
|
54
|
+
dot: "bg-info"
|
|
55
|
+
},
|
|
56
|
+
warning: {
|
|
57
|
+
color: "text-warning-foreground",
|
|
58
|
+
background: "bg-warning/40",
|
|
59
|
+
border: "border-warning/60",
|
|
60
|
+
dot: "bg-warning"
|
|
61
|
+
},
|
|
62
|
+
error: {
|
|
63
|
+
color: "text-destructive",
|
|
64
|
+
background: "bg-destructive/10",
|
|
65
|
+
border: "border-destructive/50",
|
|
66
|
+
dot: "bg-destructive"
|
|
67
|
+
},
|
|
68
|
+
destructive: {
|
|
69
|
+
color: "text-destructive",
|
|
70
|
+
background: "bg-destructive/10",
|
|
71
|
+
border: "border-destructive/50",
|
|
72
|
+
dot: "bg-destructive"
|
|
73
|
+
},
|
|
74
|
+
main: {
|
|
75
|
+
color: "text-main-foreground",
|
|
76
|
+
background: "bg-main",
|
|
77
|
+
border: "border-main-foreground/40",
|
|
78
|
+
dot: "bg-main-foreground"
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
function d({ variant: a = "primary", className: o, size: s, inline: d = !1, dot: p = !1, pending: m = !1, pulse: h = !1, important: g = !1, children: _, ...v }) {
|
|
82
|
+
let { defaultSize: y } = e(), b = t(l[s ?? y ?? "xs"], "font-semibold gap-1.5"), x = d ? "inline-flex h-auto min-h-0 w-auto shrink-0 align-middle rounded-full px-1.5 py-0 text-xxs leading-4 font-medium" : null, S = u[a] ?? u.primary;
|
|
83
|
+
return /* @__PURE__ */ r(c, {
|
|
84
|
+
variant: "secondary",
|
|
85
|
+
className: t("badge--component", S.color, S.background, b, x, o),
|
|
86
|
+
...v,
|
|
87
|
+
children: [
|
|
88
|
+
!!p && /* @__PURE__ */ n(f, {
|
|
89
|
+
filled: !m,
|
|
90
|
+
pulse: h,
|
|
91
|
+
variant: S
|
|
92
|
+
}),
|
|
93
|
+
!!g && !p && /* @__PURE__ */ n(i, { className: t(S.color, "w-6 h-6") }),
|
|
94
|
+
/* @__PURE__ */ n("span", {
|
|
95
|
+
className: "inline-flex items-center gap-1 whitespace-nowrap [&>svg]:inline-block [&>svg]:shrink-0",
|
|
96
|
+
children: _
|
|
97
|
+
})
|
|
98
|
+
]
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
function f({ filled: e = !1, variant: r, pulse: i = !1 }) {
|
|
102
|
+
return /* @__PURE__ */ n("span", { className: t("size-2 rounded-full shrink-0 border-[2px]", r.border, { "animate-pulse": i }, [e ? r.dot : "bg-transparent"]) });
|
|
103
|
+
}
|
|
104
|
+
d.displayName = "Badge";
|
|
105
|
+
//#endregion
|
|
106
|
+
export { d as t };
|
|
107
|
+
|
|
108
|
+
//# sourceMappingURL=badge-yGlx9trX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge-yGlx9trX.js","names":[],"sources":["../../src/components/ui/badge.tsx","../../src/components/base/badge/badge.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n\t\"inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive transition-[color,box-shadow] overflow-auto\",\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tdefault:\n\t\t\t\t\t\"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n\t\t\t\tsecondary:\n\t\t\t\t\t\"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n\t\t\t\tdestructive:\n\t\t\t\t\t\"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n\t\t\t\toutline:\n\t\t\t\t\t\"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"default\",\n\t\t},\n\t}\n)\n\nfunction Badge({\n\tclassName,\n\tvariant,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<\"span\"> &\n\tVariantProps<typeof badgeVariants> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : \"span\"\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"badge\"\n\t\t\tclassName={cn(badgeVariants({ variant }), className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nexport { Badge, badgeVariants }\n","/**\n * Badge — composed badge with semantic variants (primary / secondary / success / info /\n * warning / error / destructive / main), three sizes (xs / sm / md), optional dot indicator\n * (with pulse + pending states), inline mode, and an `important` flag that swaps in a warning icon.\n */\nimport { TriangleAlert } from 'lucide-react';\nimport * as React from \"react\"\n\nimport { Badge as BaseBadge } from \"@/components/ui/badge\"\nimport { useBadgeConfig, type BadgeSize } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type ComposedBadgeVariant =\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"info\"\n | \"error\"\n | \"destructive\"\n | \"main\"\n | \"warning\"\n\nexport interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'content'> {\n variant?: ComposedBadgeVariant\n size?: BadgeSize\n inline?: boolean;\n dot?: boolean;\n pulse?: boolean;\n pending?: boolean;\n important?: boolean;\n}\n\ntype BadgeVariantStyle = { color: string; background: string; border: string; dot: string };\n\nconst sizeClassMap: Record<NonNullable<BadgeProps['size']>, string> = {\n\txs: 'px-1.5 py-0.5 text-xxs',\n\tsm: 'px-2 py-1 text-xs',\n\tmd: 'px-2.5 py-1.5 text-sm',\n};\n\nconst variantClassMap: Record<ComposedBadgeVariant, BadgeVariantStyle> = {\n primary: {\n color: 'text-primary-foreground',\n background: 'bg-primary',\n border: 'border-primary-foreground/40',\n dot: 'bg-primary-foreground'\n },\n secondary: {\n color: 'text-foreground',\n background: 'bg-foreground/8',\n border: 'border-foreground/15',\n dot: 'bg-muted-foreground'\n },\n success: {\n color: 'text-success',\n background: 'bg-success/10',\n border: 'border-success/50',\n dot: 'bg-success'\n },\n info: {\n color: 'text-info',\n background: 'bg-info/10',\n border: 'border-info/50',\n dot: 'bg-info'\n },\n warning: {\n color: 'text-warning-foreground',\n background: 'bg-warning/40',\n border: 'border-warning/60',\n dot: 'bg-warning'\n },\n error: {\n color: 'text-destructive',\n background: 'bg-destructive/10',\n border: 'border-destructive/50',\n dot: 'bg-destructive'\n },\n destructive: {\n color: 'text-destructive',\n background: 'bg-destructive/10',\n border: 'border-destructive/50',\n dot: 'bg-destructive'\n },\n main: {\n color: 'text-main-foreground',\n background: 'bg-main',\n border: 'border-main-foreground/40',\n dot: 'bg-main-foreground'\n },\n}\n\n/**\n * Composed Badge using base-ui primitives\n * - Semantic variants using CSS variables: success | info | warning | error.\n * - Primary/secondary with proper theming.\n * - Optional `dot` prop for dot indicator style (colored dot + text, no background).\n */\nexport function Badge({\n variant = \"primary\",\n className,\n size,\n inline = false,\n dot = false,\n pending = false,\n pulse = false,\n important = false,\n children,\n ...props\n}: BadgeProps) {\n const { defaultSize } = useBadgeConfig();\n const resolvedSize: BadgeSize = size ?? defaultSize ?? 'xs';\n const defaultClassNames = cn(sizeClassMap[resolvedSize], \"font-semibold gap-1.5\")\n const inlineClassNames = inline\n ? 'inline-flex h-auto min-h-0 w-auto shrink-0 align-middle rounded-full px-1.5 py-0 text-xxs leading-4 font-medium'\n : null;\n\n const theme = variantClassMap[variant] ?? variantClassMap.primary;\n\n return (\n <BaseBadge\n variant=\"secondary\"\n className={cn('badge--component', \n theme.color,\n theme.background,\n defaultClassNames,\n inlineClassNames,\n className,\n )}\n {...props}\n >\n {!!dot && <Dot filled={!pending} pulse={pulse} variant={theme} />}\n {(!!important && !dot) && <TriangleAlert className={cn(theme.color, 'w-6 h-6')} />}\n <span className=\"inline-flex items-center gap-1 whitespace-nowrap [&>svg]:inline-block [&>svg]:shrink-0\">\n {children}\n </span>\n </BaseBadge>\n )\n}\n\nfunction Dot({ filled = false, variant, pulse = false }: { filled?: boolean; variant: BadgeVariantStyle, pulse?: boolean }) {\n return (\n <span\n className={cn(\"size-2 rounded-full shrink-0 border-[2px]\", variant.border,\n {\n 'animate-pulse': pulse\n },\n [\n filled ? variant.dot : 'bg-transparent'\n ]\n )}\n />\n )\n}\n\nexport default Badge\n\nBadge.displayName = 'Badge';\n"],"mappings":";;;;;;;;AAMA,IAAM,IAAgB,EACrB,0WACA;CACC,UAAU,EACT,SAAS;EACR,SACC;EACD,WACC;EACD,aACC;EACD,SACC;CACF,EACD;CACA,iBAAiB,EAChB,SAAS,UACV;AACD,CACD;AAEA,SAAS,EAAM,EACd,cACA,YACA,aAAU,IACV,GAAG,KAEyD;CAG5D,OACC,kBAHY,IAAU,IAAO,QAG7B;EACC,aAAU;EACV,WAAW,EAAG,EAAc,EAAE,WAAQ,CAAC,GAAG,CAAS;EACnD,GAAI;CACJ,CAAA;AAEH;;;ACTA,IAAM,IAAgE;CACrE,IAAI;CACJ,IAAI;CACJ,IAAI;AACL,GAEM,IAAmE;CACvE,SAAS;EACP,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,WAAW;EACT,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,SAAS;EACP,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,MAAM;EACJ,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,SAAS;EACP,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,OAAO;EACL,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,aAAa;EACX,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,MAAM;EACJ,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;AACF;AAQA,SAAgB,EAAM,EACpB,aAAU,WACV,cACA,SACA,YAAS,IACT,SAAM,IACN,aAAU,IACV,WAAQ,IACR,eAAY,IACZ,aACA,GAAG,KACU;CACb,IAAM,EAAE,mBAAgB,EAAe,GAEjC,IAAoB,EAAG,EADG,KAAQ,KAAe,OACE,uBAAuB,GAC1E,IAAmB,IACrB,oHACA,MAEE,IAAQ,EAAgB,MAAY,EAAgB;CAE1D,OACE,kBAAC,GAAD;EACE,SAAQ;EACR,WAAW,EAAG,oBACZ,EAAM,OACN,EAAM,YACN,GACA,GACA,CACF;EACA,GAAI;YATN;GAWG,CAAC,CAAC,KAAO,kBAAC,GAAD;IAAK,QAAQ,CAAC;IAAgB;IAAO,SAAS;GAAQ,CAAA;GAC9D,CAAC,CAAC,KAAa,CAAC,KAAQ,kBAAC,GAAD,EAAe,WAAW,EAAG,EAAM,OAAO,SAAS,EAAI,CAAA;GACjF,kBAAC,QAAD;IAAM,WAAU;IACb;GACG,CAAA;EACG;;AAEf;AAEA,SAAS,EAAI,EAAE,YAAS,IAAO,YAAS,WAAQ,MAA4E;CAC1H,OACE,kBAAC,QAAD,EACE,WAAW,EAAG,6CAA6C,EAAQ,QACjE,EACE,iBAAiB,EACnB,GACA,CACE,IAAS,EAAQ,MAAM,gBACzB,CACF,EACD,CAAA;AAEL;AAIA,EAAM,cAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("./chunk-CMqjfN_6.cjs"),t=require("../lib/strings.cjs"),n=require("./ui-provider-BF4m2cR0.cjs"),r=require("../lib/utils.cjs"),i=require("./button-CjZrRLzR.cjs"),a=require("./tooltip-mvxZV_Lu.cjs");let o=require("react");o=e.t(o,1);let s=require("react/jsx-runtime"),c=require("lucide-react");var l={dark:{solid:`bg-foreground text-background hover:bg-foreground/90`,outline:`border border-foreground/80 text-foreground hover:bg-foreground/8`,ghost:`text-foreground hover:bg-foreground/8`},primary:{solid:`bg-primary text-primary-foreground hover:bg-primary/90`,outline:`border border-primary/70 text-primary hover:bg-primary/10`,ghost:`text-primary hover:bg-primary/10`},secondary:{solid:`bg-foreground/8 text-foreground hover:bg-foreground/12`,outline:`border border-foreground/15 text-foreground hover:bg-foreground/8`,ghost:`text-foreground hover:bg-foreground/8`},light:{solid:`bg-muted text-muted-foreground hover:bg-muted/80`,outline:`border border-border text-muted-foreground hover:bg-accent hover:text-accent-foreground`,ghost:`text-muted-foreground hover:bg-accent hover:text-accent-foreground`},error:{solid:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-destructive/60 text-destructive hover:bg-destructive/10`,ghost:`text-destructive hover:bg-destructive/10`},warning:{solid:`bg-warning text-warning-foreground hover:bg-warning/90`,outline:`border border-warning/70 text-warning-foreground hover:bg-warning/20`,ghost:`text-warning-foreground hover:bg-warning/20`},success:{solid:`bg-success text-success-foreground hover:bg-success/90`,outline:`border border-success/60 text-success hover:bg-success/10`,ghost:`text-success hover:bg-success/10`},action:{solid:`bg-info text-info-foreground hover:bg-info/90`,outline:`border border-info/60 text-info hover:bg-info/10`,ghost:`text-info hover:bg-info/10`}},u=o.forwardRef(({variant:e=`primary`,buttonStyle:t,size:a,fullWidth:o=!1,icon:c,iconPosition:u=`left`,children:d,className:f,disabled:p,...m},h)=>{let{defaultButtonStyle:g,defaultSize:_}=n.n(),v=t??g??`solid`,y=a??_??`sm`,b=l[e]??l.secondary,x=b[v]??b.solid??l.secondary.solid,S=y===`xs`||y===`icon-xs`?12:y===`sm`||y===`icon-sm`?16:y===`lg`||y===`icon-lg`?20:16;return(0,s.jsxs)(i.t,{ref:h,variant:v===`outline`?`outline`:v===`ghost`?`ghost`:`default`,size:y,className:r.cn(`base-button--component`,x,`inline-flex items-center justify-center rounded-radius`,c&&(y===`xs`?`gap-1`:y===`sm`?`gap-2`:y===`lg`?`gap-2.5`:`gap-2`),o&&`w-full`,f),disabled:p,...m,children:[!!c&&u===`left`&&(0,s.jsx)(c,{size:S,"aria-hidden":`true`}),d,!!c&&u===`right`&&(0,s.jsx)(c,{size:S,"aria-hidden":`true`})]})});u.displayName=`BaseButton`;var d={loading:`Loading...`,completed:`Completed`},f=o.forwardRef(({loading:e=!1,handlesLoading:n,strings:i,loadingLabels:a,icon:l,iconPosition:f=`left`,children:p,disabled:m,...h},g)=>{let _=t.useStrings(d,{...a??{},...i??{}}),[v,y]=(0,o.useState)(e),[,b]=(0,o.useState)(!1);(0,o.useEffect)(()=>{e&&y(!0)},[e]),(0,o.useEffect)(()=>{n&&e&&y(!0)},[e,n]),(0,o.useEffect)(()=>{let t;return!e&&v&&(b(!0),t=setTimeout(()=>{y(!1),b(!1)},300)),()=>{t&&clearTimeout(t)}},[e,v]);let x=e=>e===`xs`?12:e===`sm`?14:e===`lg`?20:16;return(0,s.jsxs)(u,{className:`loader-button--component`,...h,ref:g,disabled:m||v,children:[!!v&&(0,s.jsx)(c.Loader2,{className:`animate-spin mr-2`,size:x(h.size),"aria-hidden":`true`}),!!l&&f===`left`&&!v&&(0,s.jsx)(l,{className:r.cn(`opacity-60`,p&&`-ms-1 me-2`),size:x(h.size),"aria-hidden":`true`}),(0,s.jsxs)(`span`,{children:[!!v&&_.loading,!v&&p]}),!!l&&f===`right`&&!v&&(0,s.jsx)(l,{className:r.cn(`opacity-60`,p&&`-me-1 ms-2`),size:x(h.size),"aria-hidden":`true`})]})});f.displayName=`LoaderButton`;var p=o.forwardRef(({withTooltip:e,...t},n)=>(0,s.jsxs)(a.t,{children:[(0,s.jsx)(a.i,{render:i=>(0,s.jsx)(u,{...t,...i,"aria-label":t[`aria-label`]??e,ref:n,className:r.cn(`tooltip-button--component`,i.className,t.className)})}),(0,s.jsx)(a.n,{className:`px-2 py-1 text-xs`,children:e})]}));p.displayName=`TooltipButton`;var m=o.forwardRef(({href:e,withTooltip:t,loading:n,handlesLoading:i,...a},o)=>{let c=n!==void 0||i?t?(0,s.jsx)(p,{className:`button--component`,ref:o,withTooltip:t,...a,children:(0,s.jsx)(f,{loading:n,handlesLoading:i,...a})}):(0,s.jsx)(f,{ref:o,loading:n,handlesLoading:i,...a}):t?(0,s.jsx)(p,{ref:o,withTooltip:t,...a}):(0,s.jsx)(u,{ref:o,...a});return e?(0,s.jsx)(`a`,{href:e,className:r.cn(`inline-flex`,a.fullWidth&&`w-full`),children:c}):c});m.displayName=`Button`,Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return m}});
|
|
2
|
+
//# sourceMappingURL=button-C1qc97U1.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-C1qc97U1.cjs","names":[],"sources":["../../src/components/base/buttons/base-button.tsx","../../src/components/base/buttons/loader-button.tsx","../../src/components/base/buttons/tooltip-button.tsx","../../src/components/base/buttons/button.tsx"],"sourcesContent":["/**\n * BaseButton — foundational button. Wraps shadcn `Button` with a richer\n * variant × style × size matrix (variants: dark / primary / secondary / error /\n * warning / success / light / action; styles: solid / outline / ghost), plus\n * optional left/right `icon` and `fullWidth`.\n */\nimport type { VariantProps } from 'class-variance-authority';\nimport type { LucideIcon } from 'lucide-react';\nimport * as React from 'react';\nimport {\n Button as PrimitiveButton,\n type buttonVariants\n} from '@/components/ui/button';\nimport {\n useButtonConfig,\n type ButtonSize as ConfiguredButtonSize,\n type ButtonStyle as ConfiguredButtonStyle,\n} from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type ButtonVariant =\n | 'dark'\n | 'primary'\n | 'secondary'\n | 'error'\n | 'warning'\n | 'success'\n | 'light'\n | 'action';\nexport type ButtonStyle = ConfiguredButtonStyle;\nexport type ButtonSize = ConfiguredButtonSize;\nexport type IconPosition = 'left' | 'right';\n\nexport interface BaseButtonProps\n extends Omit<\n React.ComponentPropsWithoutRef<typeof PrimitiveButton>,\n 'children' | 'variant' | 'size'\n >,\n Omit<VariantProps<typeof buttonVariants>, 'variant' | 'size'> {\n variant?: ButtonVariant;\n buttonStyle?: ButtonStyle;\n size?: ButtonSize;\n fullWidth?: boolean;\n icon?: React.ElementType | LucideIcon;\n iconPosition?: IconPosition;\n children: React.ReactNode;\n}\n\nconst variantStyles: Record<ButtonVariant, Record<ButtonStyle, string>> = {\n dark: {\n solid: 'bg-foreground text-background hover:bg-foreground/90',\n outline: 'border border-foreground/80 text-foreground hover:bg-foreground/8',\n ghost: 'text-foreground hover:bg-foreground/8'\n },\n primary: {\n solid: 'bg-primary text-primary-foreground hover:bg-primary/90',\n outline: 'border border-primary/70 text-primary hover:bg-primary/10',\n ghost: 'text-primary hover:bg-primary/10'\n },\n secondary: {\n solid: 'bg-foreground/8 text-foreground hover:bg-foreground/12',\n outline: 'border border-foreground/15 text-foreground hover:bg-foreground/8',\n ghost: 'text-foreground hover:bg-foreground/8'\n },\n light: {\n solid: 'bg-muted text-muted-foreground hover:bg-muted/80',\n outline: 'border border-border text-muted-foreground hover:bg-accent hover:text-accent-foreground',\n ghost: 'text-muted-foreground hover:bg-accent hover:text-accent-foreground'\n },\n error: {\n solid: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\n outline: 'border border-destructive/60 text-destructive hover:bg-destructive/10',\n ghost: 'text-destructive hover:bg-destructive/10'\n },\n warning: {\n solid: 'bg-warning text-warning-foreground hover:bg-warning/90',\n outline: 'border border-warning/70 text-warning-foreground hover:bg-warning/20',\n ghost: 'text-warning-foreground hover:bg-warning/20'\n },\n success: {\n solid: 'bg-success text-success-foreground hover:bg-success/90',\n outline: 'border border-success/60 text-success hover:bg-success/10',\n ghost: 'text-success hover:bg-success/10'\n },\n action: {\n solid: 'bg-info text-info-foreground hover:bg-info/90',\n outline: 'border border-info/60 text-info hover:bg-info/10',\n ghost: 'text-info hover:bg-info/10'\n }\n};\n\nconst BaseButton = React.forwardRef<HTMLButtonElement, BaseButtonProps>(\n (\n {\n variant = 'primary',\n buttonStyle,\n size: sizeProp,\n fullWidth = false,\n icon: Icon,\n iconPosition = 'left',\n children,\n className,\n disabled,\n ...props\n },\n ref\n ) => {\n const { defaultButtonStyle, defaultSize } = useButtonConfig();\n const resolvedButtonStyle: ButtonStyle =\n buttonStyle ?? defaultButtonStyle ?? 'solid';\n const size: ButtonSize = sizeProp ?? defaultSize ?? 'sm';\n const resolvedVariantStyles =\n variantStyles[variant] ?? variantStyles.secondary;\n const resolvedStyleClass =\n resolvedVariantStyles[resolvedButtonStyle] ??\n resolvedVariantStyles.solid ??\n variantStyles.secondary.solid;\n\n const iconSize =\n size === 'xs' || size === 'icon-xs'\n ? 12\n : size === 'sm' || size === 'icon-sm'\n ? 16\n : size === 'lg' || size === 'icon-lg'\n ? 20\n : 16;\n const iconSpacing =\n size === 'xs'\n ? 'gap-1'\n : size === 'sm'\n ? 'gap-2'\n : size === 'lg'\n ? 'gap-2.5'\n : 'gap-2';\n\n const primitiveVariant =\n resolvedButtonStyle === 'outline'\n ? 'outline'\n : resolvedButtonStyle === 'ghost'\n ? 'ghost'\n : 'default';\n\n return (\n <PrimitiveButton\n ref={ref}\n variant={primitiveVariant}\n size={size}\n className={cn('base-button--component',\n resolvedStyleClass,\n 'inline-flex items-center justify-center rounded-radius',\n Icon && iconSpacing,\n fullWidth && 'w-full',\n className\n )}\n disabled={disabled}\n {...props}\n >\n {!!Icon && iconPosition === 'left' && (\n <Icon\n size={iconSize}\n aria-hidden=\"true\"\n />\n )}\n {children}\n {!!Icon && iconPosition === 'right' && (\n <Icon\n size={iconSize}\n aria-hidden=\"true\"\n />\n )}\n </PrimitiveButton>\n );\n }\n);\n\nBaseButton.displayName = 'BaseButton';\n\nexport { BaseButton };\n","import { Loader2 } from 'lucide-react';\nimport * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport { cn } from '@/lib/utils';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { BaseButton, type BaseButtonProps, type ButtonSize } from './base-button';\n\nexport interface LoaderButtonStrings {\n\tloading: string;\n\tcompleted: string;\n}\n\nexport const defaultLoaderButtonStrings: LoaderButtonStrings = {\n\tloading: 'Loading...',\n\tcompleted: 'Completed',\n};\n\n/** @deprecated Use `strings` instead. */\nexport interface LoadingLabels {\n\tloading?: string;\n\tcompleted?: string;\n}\n\nexport interface LoaderButtonProps extends BaseButtonProps {\n\tloading?: boolean;\n\thandlesLoading?: boolean;\n\tstrings?: StringsProp<LoaderButtonStrings>;\n\t/** @deprecated Use `strings` instead. */\n\tloadingLabels?: LoadingLabels;\n}\n\nconst LoaderButton = React.forwardRef<HTMLButtonElement, LoaderButtonProps>(\n\t(\n\t\t{\n\t\t\tloading = false,\n\t\t\thandlesLoading,\n\t\t\tstrings: stringsProp,\n\t\t\tloadingLabels,\n\t\t\ticon: Icon,\n\t\t\ticonPosition = 'left',\n\t\t\tchildren,\n\t\t\tdisabled,\n\t\t\t...props\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst strings = useStrings(defaultLoaderButtonStrings, {\n\t\t\t...(loadingLabels ?? {}),\n\t\t\t...(stringsProp ?? {}),\n\t\t});\n\t\tconst [isLoading, setIsLoading] = useState(loading);\n\t\tconst [, setShowCompletedState] = useState(false);\n\n\t\tuseEffect(() => {\n\t\t\tif (loading) {\n\t\t\t\tsetIsLoading(true);\n\t\t\t}\n\t\t}, [loading]);\n\n\t\tuseEffect(() => {\n\t\t\tif (handlesLoading && loading) {\n\t\t\t\tsetIsLoading(true);\n\t\t\t}\n\t\t}, [loading, handlesLoading]);\n\n\t\tuseEffect(() => {\n\t\t\tlet timeoutId: ReturnType<typeof setTimeout>;\n\t\t\tif (!loading && isLoading) {\n\t\t\t\tsetShowCompletedState(true);\n\t\t\t\ttimeoutId = setTimeout(() => {\n\t\t\t\t\tsetIsLoading(false);\n\t\t\t\t\tsetShowCompletedState(false);\n\t\t\t\t}, 300);\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (timeoutId) clearTimeout(timeoutId);\n\t\t\t};\n\t\t}, [loading, isLoading]);\n\n\t\tconst getIconSize = (size?: ButtonSize) => {\n\t\t\tif (size === 'xs') return 12;\n\t\t\tif (size === 'sm') return 14;\n\t\t\tif (size === 'lg') return 20;\n\t\t\treturn 16;\n\t\t};\n\n\t\treturn (\n\t\t\t<BaseButton className=\"loader-button--component\"\n\t\t\t\t{...props}\n\t\t\t\tref={ref}\n\t\t\t\tdisabled={disabled || isLoading}\n\t\t\t>\n\t\t\t\t{!!isLoading && (\n <Loader2\n\t\t\t\t\t\tclassName=\"animate-spin mr-2\"\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t\t{!!Icon && iconPosition === 'left' && !isLoading && (\n <Icon\n\t\t\t\t\t\tclassName={cn('opacity-60', children && '-ms-1 me-2')}\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t\t<span>\n\t\t\t\t\t{!!isLoading && strings.loading}\n\t\t\t\t\t{!isLoading && children}\n\t\t\t\t</span>\n\t\t\t\t{!!Icon && iconPosition === 'right' && !isLoading && (\n <Icon\n\t\t\t\t\t\tclassName={cn('opacity-60', children && '-me-1 ms-2')}\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t</BaseButton>\n\t\t);\n\t},\n);\n\nLoaderButton.displayName = 'LoaderButton';\n\nexport { LoaderButton };\n","import * as React from 'react';\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from '@/components/base/display/tooltip';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\n\nexport interface TooltipButtonProps extends BaseButtonProps {\n\twithTooltip: string;\n}\n\nconst TooltipButton = React.forwardRef<HTMLButtonElement, TooltipButtonProps>(\n\t({ withTooltip, ...props }, ref) => {\n\t\treturn (\n\t\t\t<Tooltip>\n\t\t\t\t<TooltipTrigger\n\t\t\t\t\trender={(triggerProps) => (\n\t\t\t\t\t\t<BaseButton\n\t\t\t\t\t\t\t{...props}\n\t\t\t\t\t\t\t{...triggerProps}\n\t\t\t\t\t\t\taria-label={props['aria-label'] ?? withTooltip}\n\t\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t\t// `render` merges props, but className needs manual merge.\n\n\t\t\t\t\t\t\tclassName={cn('tooltip-button--component', (triggerProps as { className?: string }).className, props.className)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t\t<TooltipContent className=\"px-2 py-1 text-xs\">\n\t\t\t\t\t{withTooltip}\n\t\t\t\t</TooltipContent>\n\t\t\t</Tooltip>\n\t\t);\n\t},\n);\n\nTooltipButton.displayName = 'TooltipButton';\n\nexport { TooltipButton };\n","/**\n * Button — combo wrapper around BaseButton. Opts in to:\n * - `loading` / `handlesLoading` → wraps in LoaderButton\n * - `withTooltip` → wraps in TooltipButton\n * - `href` → renders an `<a>` around the button\n * Mix freely; only the relevant wrappers are added.\n */\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\nimport { LoaderButton, type LoaderButtonProps } from './loader-button';\nimport { TooltipButton, type TooltipButtonProps } from './tooltip-button';\n\nexport type ButtonProps = BaseButtonProps &\n\tPartial<LoaderButtonProps & TooltipButtonProps> & {\n\t\thref?: string;\n\t};\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(({\n\thref,\n\twithTooltip,\n\tloading,\n\thandlesLoading,\n\t...props\n}, ref) => {\n\tconst inner = (() => {\n\t\tif (loading !== undefined || handlesLoading) {\n\t\t\tif (withTooltip) {\n\t\t\t\treturn (\n\t\t\t\t\t<TooltipButton className=\"button--component\" ref={ref} withTooltip={withTooltip} {...props}>\n\t\t\t\t\t\t<LoaderButton loading={loading} handlesLoading={handlesLoading} {...props} />\n\t\t\t\t\t</TooltipButton>\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn <LoaderButton ref={ref} loading={loading} handlesLoading={handlesLoading} {...props} />;\n\t\t}\n\n\t\tif (withTooltip) {\n\t\t\treturn <TooltipButton ref={ref} withTooltip={withTooltip} {...props} />;\n\t\t}\n\n\t\treturn <BaseButton ref={ref} {...props} />;\n\t})();\n\n\tif (href) {\n\t\treturn (\n\t\t\t<a\n\t\t\t\thref={href}\n\t\t\t\tclassName={cn('inline-flex', props.fullWidth && 'w-full')}\n\t\t\t>\n\t\t\t\t{inner}\n\t\t\t</a>\n\t\t);\n\t}\n\n\treturn inner;\n});\n\nButton.displayName = 'Button';\n\nexport { Button };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { useStrings as e } from "../lib/strings.js";
|
|
2
|
+
import { n as t } from "./ui-provider-C8Ot88lS.js";
|
|
3
|
+
import { cn as n } from "../lib/utils.js";
|
|
4
|
+
import { t as r } from "./button-683R5quQ.js";
|
|
5
|
+
import { i, n as a, t as o } from "./tooltip-CLr_sPX8.js";
|
|
6
|
+
import * as s from "react";
|
|
7
|
+
import { useEffect as c, useState as l } from "react";
|
|
8
|
+
import { jsx as u, jsxs as d } from "react/jsx-runtime";
|
|
9
|
+
import { Loader2 as f } from "lucide-react";
|
|
10
|
+
//#region src/components/base/buttons/base-button.tsx
|
|
11
|
+
var p = {
|
|
12
|
+
dark: {
|
|
13
|
+
solid: "bg-foreground text-background hover:bg-foreground/90",
|
|
14
|
+
outline: "border border-foreground/80 text-foreground hover:bg-foreground/8",
|
|
15
|
+
ghost: "text-foreground hover:bg-foreground/8"
|
|
16
|
+
},
|
|
17
|
+
primary: {
|
|
18
|
+
solid: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
19
|
+
outline: "border border-primary/70 text-primary hover:bg-primary/10",
|
|
20
|
+
ghost: "text-primary hover:bg-primary/10"
|
|
21
|
+
},
|
|
22
|
+
secondary: {
|
|
23
|
+
solid: "bg-foreground/8 text-foreground hover:bg-foreground/12",
|
|
24
|
+
outline: "border border-foreground/15 text-foreground hover:bg-foreground/8",
|
|
25
|
+
ghost: "text-foreground hover:bg-foreground/8"
|
|
26
|
+
},
|
|
27
|
+
light: {
|
|
28
|
+
solid: "bg-muted text-muted-foreground hover:bg-muted/80",
|
|
29
|
+
outline: "border border-border text-muted-foreground hover:bg-accent hover:text-accent-foreground",
|
|
30
|
+
ghost: "text-muted-foreground hover:bg-accent hover:text-accent-foreground"
|
|
31
|
+
},
|
|
32
|
+
error: {
|
|
33
|
+
solid: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
|
|
34
|
+
outline: "border border-destructive/60 text-destructive hover:bg-destructive/10",
|
|
35
|
+
ghost: "text-destructive hover:bg-destructive/10"
|
|
36
|
+
},
|
|
37
|
+
warning: {
|
|
38
|
+
solid: "bg-warning text-warning-foreground hover:bg-warning/90",
|
|
39
|
+
outline: "border border-warning/70 text-warning-foreground hover:bg-warning/20",
|
|
40
|
+
ghost: "text-warning-foreground hover:bg-warning/20"
|
|
41
|
+
},
|
|
42
|
+
success: {
|
|
43
|
+
solid: "bg-success text-success-foreground hover:bg-success/90",
|
|
44
|
+
outline: "border border-success/60 text-success hover:bg-success/10",
|
|
45
|
+
ghost: "text-success hover:bg-success/10"
|
|
46
|
+
},
|
|
47
|
+
action: {
|
|
48
|
+
solid: "bg-info text-info-foreground hover:bg-info/90",
|
|
49
|
+
outline: "border border-info/60 text-info hover:bg-info/10",
|
|
50
|
+
ghost: "text-info hover:bg-info/10"
|
|
51
|
+
}
|
|
52
|
+
}, m = s.forwardRef(({ variant: e = "primary", buttonStyle: i, size: a, fullWidth: o = !1, icon: s, iconPosition: c = "left", children: l, className: f, disabled: m, ...h }, g) => {
|
|
53
|
+
let { defaultButtonStyle: _, defaultSize: v } = t(), y = i ?? _ ?? "solid", b = a ?? v ?? "sm", x = p[e] ?? p.secondary, S = x[y] ?? x.solid ?? p.secondary.solid, C = b === "xs" || b === "icon-xs" ? 12 : b === "sm" || b === "icon-sm" ? 16 : b === "lg" || b === "icon-lg" ? 20 : 16;
|
|
54
|
+
return /* @__PURE__ */ d(r, {
|
|
55
|
+
ref: g,
|
|
56
|
+
variant: y === "outline" ? "outline" : y === "ghost" ? "ghost" : "default",
|
|
57
|
+
size: b,
|
|
58
|
+
className: n("base-button--component", S, "inline-flex items-center justify-center rounded-radius", s && (b === "xs" ? "gap-1" : b === "sm" ? "gap-2" : b === "lg" ? "gap-2.5" : "gap-2"), o && "w-full", f),
|
|
59
|
+
disabled: m,
|
|
60
|
+
...h,
|
|
61
|
+
children: [
|
|
62
|
+
!!s && c === "left" && /* @__PURE__ */ u(s, {
|
|
63
|
+
size: C,
|
|
64
|
+
"aria-hidden": "true"
|
|
65
|
+
}),
|
|
66
|
+
l,
|
|
67
|
+
!!s && c === "right" && /* @__PURE__ */ u(s, {
|
|
68
|
+
size: C,
|
|
69
|
+
"aria-hidden": "true"
|
|
70
|
+
})
|
|
71
|
+
]
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
m.displayName = "BaseButton";
|
|
75
|
+
//#endregion
|
|
76
|
+
//#region src/components/base/buttons/loader-button.tsx
|
|
77
|
+
var h = {
|
|
78
|
+
loading: "Loading...",
|
|
79
|
+
completed: "Completed"
|
|
80
|
+
}, g = s.forwardRef(({ loading: t = !1, handlesLoading: r, strings: i, loadingLabels: a, icon: o, iconPosition: s = "left", children: p, disabled: g, ..._ }, v) => {
|
|
81
|
+
let y = e(h, {
|
|
82
|
+
...a ?? {},
|
|
83
|
+
...i ?? {}
|
|
84
|
+
}), [b, x] = l(t), [, S] = l(!1);
|
|
85
|
+
c(() => {
|
|
86
|
+
t && x(!0);
|
|
87
|
+
}, [t]), c(() => {
|
|
88
|
+
r && t && x(!0);
|
|
89
|
+
}, [t, r]), c(() => {
|
|
90
|
+
let e;
|
|
91
|
+
return !t && b && (S(!0), e = setTimeout(() => {
|
|
92
|
+
x(!1), S(!1);
|
|
93
|
+
}, 300)), () => {
|
|
94
|
+
e && clearTimeout(e);
|
|
95
|
+
};
|
|
96
|
+
}, [t, b]);
|
|
97
|
+
let C = (e) => e === "xs" ? 12 : e === "sm" ? 14 : e === "lg" ? 20 : 16;
|
|
98
|
+
return /* @__PURE__ */ d(m, {
|
|
99
|
+
className: "loader-button--component",
|
|
100
|
+
..._,
|
|
101
|
+
ref: v,
|
|
102
|
+
disabled: g || b,
|
|
103
|
+
children: [
|
|
104
|
+
!!b && /* @__PURE__ */ u(f, {
|
|
105
|
+
className: "animate-spin mr-2",
|
|
106
|
+
size: C(_.size),
|
|
107
|
+
"aria-hidden": "true"
|
|
108
|
+
}),
|
|
109
|
+
!!o && s === "left" && !b && /* @__PURE__ */ u(o, {
|
|
110
|
+
className: n("opacity-60", p && "-ms-1 me-2"),
|
|
111
|
+
size: C(_.size),
|
|
112
|
+
"aria-hidden": "true"
|
|
113
|
+
}),
|
|
114
|
+
/* @__PURE__ */ d("span", { children: [!!b && y.loading, !b && p] }),
|
|
115
|
+
!!o && s === "right" && !b && /* @__PURE__ */ u(o, {
|
|
116
|
+
className: n("opacity-60", p && "-me-1 ms-2"),
|
|
117
|
+
size: C(_.size),
|
|
118
|
+
"aria-hidden": "true"
|
|
119
|
+
})
|
|
120
|
+
]
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
g.displayName = "LoaderButton";
|
|
124
|
+
//#endregion
|
|
125
|
+
//#region src/components/base/buttons/tooltip-button.tsx
|
|
126
|
+
var _ = s.forwardRef(({ withTooltip: e, ...t }, r) => /* @__PURE__ */ d(o, { children: [/* @__PURE__ */ u(i, { render: (i) => /* @__PURE__ */ u(m, {
|
|
127
|
+
...t,
|
|
128
|
+
...i,
|
|
129
|
+
"aria-label": t["aria-label"] ?? e,
|
|
130
|
+
ref: r,
|
|
131
|
+
className: n("tooltip-button--component", i.className, t.className)
|
|
132
|
+
}) }), /* @__PURE__ */ u(a, {
|
|
133
|
+
className: "px-2 py-1 text-xs",
|
|
134
|
+
children: e
|
|
135
|
+
})] }));
|
|
136
|
+
_.displayName = "TooltipButton";
|
|
137
|
+
//#endregion
|
|
138
|
+
//#region src/components/base/buttons/button.tsx
|
|
139
|
+
var v = s.forwardRef(({ href: e, withTooltip: t, loading: r, handlesLoading: i, ...a }, o) => {
|
|
140
|
+
let s = r !== void 0 || i ? t ? /* @__PURE__ */ u(_, {
|
|
141
|
+
className: "button--component",
|
|
142
|
+
ref: o,
|
|
143
|
+
withTooltip: t,
|
|
144
|
+
...a,
|
|
145
|
+
children: /* @__PURE__ */ u(g, {
|
|
146
|
+
loading: r,
|
|
147
|
+
handlesLoading: i,
|
|
148
|
+
...a
|
|
149
|
+
})
|
|
150
|
+
}) : /* @__PURE__ */ u(g, {
|
|
151
|
+
ref: o,
|
|
152
|
+
loading: r,
|
|
153
|
+
handlesLoading: i,
|
|
154
|
+
...a
|
|
155
|
+
}) : t ? /* @__PURE__ */ u(_, {
|
|
156
|
+
ref: o,
|
|
157
|
+
withTooltip: t,
|
|
158
|
+
...a
|
|
159
|
+
}) : /* @__PURE__ */ u(m, {
|
|
160
|
+
ref: o,
|
|
161
|
+
...a
|
|
162
|
+
});
|
|
163
|
+
return e ? /* @__PURE__ */ u("a", {
|
|
164
|
+
href: e,
|
|
165
|
+
className: n("inline-flex", a.fullWidth && "w-full"),
|
|
166
|
+
children: s
|
|
167
|
+
}) : s;
|
|
168
|
+
});
|
|
169
|
+
v.displayName = "Button";
|
|
170
|
+
//#endregion
|
|
171
|
+
export { m as i, _ as n, g as r, v as t };
|
|
172
|
+
|
|
173
|
+
//# sourceMappingURL=button-SuocMQFT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-SuocMQFT.js","names":[],"sources":["../../src/components/base/buttons/base-button.tsx","../../src/components/base/buttons/loader-button.tsx","../../src/components/base/buttons/tooltip-button.tsx","../../src/components/base/buttons/button.tsx"],"sourcesContent":["/**\n * BaseButton — foundational button. Wraps shadcn `Button` with a richer\n * variant × style × size matrix (variants: dark / primary / secondary / error /\n * warning / success / light / action; styles: solid / outline / ghost), plus\n * optional left/right `icon` and `fullWidth`.\n */\nimport type { VariantProps } from 'class-variance-authority';\nimport type { LucideIcon } from 'lucide-react';\nimport * as React from 'react';\nimport {\n Button as PrimitiveButton,\n type buttonVariants\n} from '@/components/ui/button';\nimport {\n useButtonConfig,\n type ButtonSize as ConfiguredButtonSize,\n type ButtonStyle as ConfiguredButtonStyle,\n} from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type ButtonVariant =\n | 'dark'\n | 'primary'\n | 'secondary'\n | 'error'\n | 'warning'\n | 'success'\n | 'light'\n | 'action';\nexport type ButtonStyle = ConfiguredButtonStyle;\nexport type ButtonSize = ConfiguredButtonSize;\nexport type IconPosition = 'left' | 'right';\n\nexport interface BaseButtonProps\n extends Omit<\n React.ComponentPropsWithoutRef<typeof PrimitiveButton>,\n 'children' | 'variant' | 'size'\n >,\n Omit<VariantProps<typeof buttonVariants>, 'variant' | 'size'> {\n variant?: ButtonVariant;\n buttonStyle?: ButtonStyle;\n size?: ButtonSize;\n fullWidth?: boolean;\n icon?: React.ElementType | LucideIcon;\n iconPosition?: IconPosition;\n children: React.ReactNode;\n}\n\nconst variantStyles: Record<ButtonVariant, Record<ButtonStyle, string>> = {\n dark: {\n solid: 'bg-foreground text-background hover:bg-foreground/90',\n outline: 'border border-foreground/80 text-foreground hover:bg-foreground/8',\n ghost: 'text-foreground hover:bg-foreground/8'\n },\n primary: {\n solid: 'bg-primary text-primary-foreground hover:bg-primary/90',\n outline: 'border border-primary/70 text-primary hover:bg-primary/10',\n ghost: 'text-primary hover:bg-primary/10'\n },\n secondary: {\n solid: 'bg-foreground/8 text-foreground hover:bg-foreground/12',\n outline: 'border border-foreground/15 text-foreground hover:bg-foreground/8',\n ghost: 'text-foreground hover:bg-foreground/8'\n },\n light: {\n solid: 'bg-muted text-muted-foreground hover:bg-muted/80',\n outline: 'border border-border text-muted-foreground hover:bg-accent hover:text-accent-foreground',\n ghost: 'text-muted-foreground hover:bg-accent hover:text-accent-foreground'\n },\n error: {\n solid: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\n outline: 'border border-destructive/60 text-destructive hover:bg-destructive/10',\n ghost: 'text-destructive hover:bg-destructive/10'\n },\n warning: {\n solid: 'bg-warning text-warning-foreground hover:bg-warning/90',\n outline: 'border border-warning/70 text-warning-foreground hover:bg-warning/20',\n ghost: 'text-warning-foreground hover:bg-warning/20'\n },\n success: {\n solid: 'bg-success text-success-foreground hover:bg-success/90',\n outline: 'border border-success/60 text-success hover:bg-success/10',\n ghost: 'text-success hover:bg-success/10'\n },\n action: {\n solid: 'bg-info text-info-foreground hover:bg-info/90',\n outline: 'border border-info/60 text-info hover:bg-info/10',\n ghost: 'text-info hover:bg-info/10'\n }\n};\n\nconst BaseButton = React.forwardRef<HTMLButtonElement, BaseButtonProps>(\n (\n {\n variant = 'primary',\n buttonStyle,\n size: sizeProp,\n fullWidth = false,\n icon: Icon,\n iconPosition = 'left',\n children,\n className,\n disabled,\n ...props\n },\n ref\n ) => {\n const { defaultButtonStyle, defaultSize } = useButtonConfig();\n const resolvedButtonStyle: ButtonStyle =\n buttonStyle ?? defaultButtonStyle ?? 'solid';\n const size: ButtonSize = sizeProp ?? defaultSize ?? 'sm';\n const resolvedVariantStyles =\n variantStyles[variant] ?? variantStyles.secondary;\n const resolvedStyleClass =\n resolvedVariantStyles[resolvedButtonStyle] ??\n resolvedVariantStyles.solid ??\n variantStyles.secondary.solid;\n\n const iconSize =\n size === 'xs' || size === 'icon-xs'\n ? 12\n : size === 'sm' || size === 'icon-sm'\n ? 16\n : size === 'lg' || size === 'icon-lg'\n ? 20\n : 16;\n const iconSpacing =\n size === 'xs'\n ? 'gap-1'\n : size === 'sm'\n ? 'gap-2'\n : size === 'lg'\n ? 'gap-2.5'\n : 'gap-2';\n\n const primitiveVariant =\n resolvedButtonStyle === 'outline'\n ? 'outline'\n : resolvedButtonStyle === 'ghost'\n ? 'ghost'\n : 'default';\n\n return (\n <PrimitiveButton\n ref={ref}\n variant={primitiveVariant}\n size={size}\n className={cn('base-button--component',\n resolvedStyleClass,\n 'inline-flex items-center justify-center rounded-radius',\n Icon && iconSpacing,\n fullWidth && 'w-full',\n className\n )}\n disabled={disabled}\n {...props}\n >\n {!!Icon && iconPosition === 'left' && (\n <Icon\n size={iconSize}\n aria-hidden=\"true\"\n />\n )}\n {children}\n {!!Icon && iconPosition === 'right' && (\n <Icon\n size={iconSize}\n aria-hidden=\"true\"\n />\n )}\n </PrimitiveButton>\n );\n }\n);\n\nBaseButton.displayName = 'BaseButton';\n\nexport { BaseButton };\n","import { Loader2 } from 'lucide-react';\nimport * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport { cn } from '@/lib/utils';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { BaseButton, type BaseButtonProps, type ButtonSize } from './base-button';\n\nexport interface LoaderButtonStrings {\n\tloading: string;\n\tcompleted: string;\n}\n\nexport const defaultLoaderButtonStrings: LoaderButtonStrings = {\n\tloading: 'Loading...',\n\tcompleted: 'Completed',\n};\n\n/** @deprecated Use `strings` instead. */\nexport interface LoadingLabels {\n\tloading?: string;\n\tcompleted?: string;\n}\n\nexport interface LoaderButtonProps extends BaseButtonProps {\n\tloading?: boolean;\n\thandlesLoading?: boolean;\n\tstrings?: StringsProp<LoaderButtonStrings>;\n\t/** @deprecated Use `strings` instead. */\n\tloadingLabels?: LoadingLabels;\n}\n\nconst LoaderButton = React.forwardRef<HTMLButtonElement, LoaderButtonProps>(\n\t(\n\t\t{\n\t\t\tloading = false,\n\t\t\thandlesLoading,\n\t\t\tstrings: stringsProp,\n\t\t\tloadingLabels,\n\t\t\ticon: Icon,\n\t\t\ticonPosition = 'left',\n\t\t\tchildren,\n\t\t\tdisabled,\n\t\t\t...props\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst strings = useStrings(defaultLoaderButtonStrings, {\n\t\t\t...(loadingLabels ?? {}),\n\t\t\t...(stringsProp ?? {}),\n\t\t});\n\t\tconst [isLoading, setIsLoading] = useState(loading);\n\t\tconst [, setShowCompletedState] = useState(false);\n\n\t\tuseEffect(() => {\n\t\t\tif (loading) {\n\t\t\t\tsetIsLoading(true);\n\t\t\t}\n\t\t}, [loading]);\n\n\t\tuseEffect(() => {\n\t\t\tif (handlesLoading && loading) {\n\t\t\t\tsetIsLoading(true);\n\t\t\t}\n\t\t}, [loading, handlesLoading]);\n\n\t\tuseEffect(() => {\n\t\t\tlet timeoutId: ReturnType<typeof setTimeout>;\n\t\t\tif (!loading && isLoading) {\n\t\t\t\tsetShowCompletedState(true);\n\t\t\t\ttimeoutId = setTimeout(() => {\n\t\t\t\t\tsetIsLoading(false);\n\t\t\t\t\tsetShowCompletedState(false);\n\t\t\t\t}, 300);\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (timeoutId) clearTimeout(timeoutId);\n\t\t\t};\n\t\t}, [loading, isLoading]);\n\n\t\tconst getIconSize = (size?: ButtonSize) => {\n\t\t\tif (size === 'xs') return 12;\n\t\t\tif (size === 'sm') return 14;\n\t\t\tif (size === 'lg') return 20;\n\t\t\treturn 16;\n\t\t};\n\n\t\treturn (\n\t\t\t<BaseButton className=\"loader-button--component\"\n\t\t\t\t{...props}\n\t\t\t\tref={ref}\n\t\t\t\tdisabled={disabled || isLoading}\n\t\t\t>\n\t\t\t\t{!!isLoading && (\n <Loader2\n\t\t\t\t\t\tclassName=\"animate-spin mr-2\"\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t\t{!!Icon && iconPosition === 'left' && !isLoading && (\n <Icon\n\t\t\t\t\t\tclassName={cn('opacity-60', children && '-ms-1 me-2')}\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t\t<span>\n\t\t\t\t\t{!!isLoading && strings.loading}\n\t\t\t\t\t{!isLoading && children}\n\t\t\t\t</span>\n\t\t\t\t{!!Icon && iconPosition === 'right' && !isLoading && (\n <Icon\n\t\t\t\t\t\tclassName={cn('opacity-60', children && '-me-1 ms-2')}\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t</BaseButton>\n\t\t);\n\t},\n);\n\nLoaderButton.displayName = 'LoaderButton';\n\nexport { LoaderButton };\n","import * as React from 'react';\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from '@/components/base/display/tooltip';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\n\nexport interface TooltipButtonProps extends BaseButtonProps {\n\twithTooltip: string;\n}\n\nconst TooltipButton = React.forwardRef<HTMLButtonElement, TooltipButtonProps>(\n\t({ withTooltip, ...props }, ref) => {\n\t\treturn (\n\t\t\t<Tooltip>\n\t\t\t\t<TooltipTrigger\n\t\t\t\t\trender={(triggerProps) => (\n\t\t\t\t\t\t<BaseButton\n\t\t\t\t\t\t\t{...props}\n\t\t\t\t\t\t\t{...triggerProps}\n\t\t\t\t\t\t\taria-label={props['aria-label'] ?? withTooltip}\n\t\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t\t// `render` merges props, but className needs manual merge.\n\n\t\t\t\t\t\t\tclassName={cn('tooltip-button--component', (triggerProps as { className?: string }).className, props.className)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t\t<TooltipContent className=\"px-2 py-1 text-xs\">\n\t\t\t\t\t{withTooltip}\n\t\t\t\t</TooltipContent>\n\t\t\t</Tooltip>\n\t\t);\n\t},\n);\n\nTooltipButton.displayName = 'TooltipButton';\n\nexport { TooltipButton };\n","/**\n * Button — combo wrapper around BaseButton. Opts in to:\n * - `loading` / `handlesLoading` → wraps in LoaderButton\n * - `withTooltip` → wraps in TooltipButton\n * - `href` → renders an `<a>` around the button\n * Mix freely; only the relevant wrappers are added.\n */\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\nimport { LoaderButton, type LoaderButtonProps } from './loader-button';\nimport { TooltipButton, type TooltipButtonProps } from './tooltip-button';\n\nexport type ButtonProps = BaseButtonProps &\n\tPartial<LoaderButtonProps & TooltipButtonProps> & {\n\t\thref?: string;\n\t};\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(({\n\thref,\n\twithTooltip,\n\tloading,\n\thandlesLoading,\n\t...props\n}, ref) => {\n\tconst inner = (() => {\n\t\tif (loading !== undefined || handlesLoading) {\n\t\t\tif (withTooltip) {\n\t\t\t\treturn (\n\t\t\t\t\t<TooltipButton className=\"button--component\" ref={ref} withTooltip={withTooltip} {...props}>\n\t\t\t\t\t\t<LoaderButton loading={loading} handlesLoading={handlesLoading} {...props} />\n\t\t\t\t\t</TooltipButton>\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn <LoaderButton ref={ref} loading={loading} handlesLoading={handlesLoading} {...props} />;\n\t\t}\n\n\t\tif (withTooltip) {\n\t\t\treturn <TooltipButton ref={ref} withTooltip={withTooltip} {...props} />;\n\t\t}\n\n\t\treturn <BaseButton ref={ref} {...props} />;\n\t})();\n\n\tif (href) {\n\t\treturn (\n\t\t\t<a\n\t\t\t\thref={href}\n\t\t\t\tclassName={cn('inline-flex', props.fullWidth && 'w-full')}\n\t\t\t>\n\t\t\t\t{inner}\n\t\t\t</a>\n\t\t);\n\t}\n\n\treturn inner;\n});\n\nButton.displayName = 'Button';\n\nexport { Button };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("./chunk-CMqjfN_6.cjs"),t=require("./ui-provider-BF4m2cR0.cjs"),n=require("../lib/utils.cjs"),r=require("./button-C1qc97U1.cjs");let i=require("react");i=e.t(i,1);let a=require("react/jsx-runtime"),o=require("lucide-react");var s=()=>(0,a.jsxs)(`svg`,{"aria-hidden":`true`,className:`h-4 w-4`,width:`256`,height:`262`,viewBox:`0 0 256 262`,xmlns:`http://www.w3.org/2000/svg`,preserveAspectRatio:`xMidYMid`,children:[(0,a.jsx)(`path`,{d:`M255.878 133.451c0-10.734-.871-18.567-2.756-26.69H130.55v48.448h71.947c-1.45 12.04-9.283 30.172-26.69 42.356l-.244 1.622 38.755 30.023 2.685.268c24.659-22.774 38.875-56.282 38.875-96.027`,fill:`#4285F4`}),(0,a.jsx)(`path`,{d:`M130.55 261.1c35.248 0 64.839-11.605 86.453-31.622l-41.196-31.913c-11.024 7.688-25.82 13.055-45.257 13.055-34.523 0-63.824-22.773-74.269-54.25l-1.531.13-40.298 31.187-.527 1.465C35.393 231.798 79.49 261.1 130.55 261.1`,fill:`#34A853`}),(0,a.jsx)(`path`,{d:`M56.281 156.37c-2.756-8.123-4.351-16.827-4.351-25.82 0-8.994 1.595-17.697 4.206-25.82l-.073-1.73L15.26 71.312l-1.335.635C5.077 89.644 0 109.517 0 130.55s5.077 40.905 13.925 58.602l42.356-32.782`,fill:`#FBBC05`}),(0,a.jsx)(`path`,{d:`M130.55 50.479c24.514 0 41.05 10.589 50.479 19.438l36.844-35.974C195.245 12.91 165.798 0 130.55 0 79.49 0 35.393 29.301 13.925 71.947l42.211 32.783c10.59-31.477 39.891-54.251 74.414-54.251`,fill:`#EB4335`})]});function c({children:e,className:t,type:i=`button`,href:o,...c}){let l=(0,a.jsx)(r.i,{icon:s,iconPosition:`left`,fullWidth:!0,className:n.cn(`bg-foreground text-background ring-offset-background hover:bg-foreground/85 focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,t),type:i,...c,children:e});return o?(0,a.jsx)(`a`,{href:o,className:n.cn(`google-button--component`,`inline-flex w-full`),children:l}):l}function l(e){let{resource:t,id:n,text:s,fullWidth:c,className:l,adminUrl:u}=e,d={...e};delete d.resource,delete d.id,delete d.text,delete d.fullWidth,delete d.className,delete d.adminUrl;let f=e.resource===`product_variants`?e.productId:null;return e.resource===`product_variants`&&delete d.productId,(0,a.jsx)(`a`,{href:(0,i.useMemo)(()=>{let e=(u??``).replace(/\/$/,``);return{orders:`${e}/orders/${n}`,products:`${e}/products/${n}`,product_variants:f?`${e}/products/${f}/variants/${n}`:`${e}/products/${n}`,customers:`${e}/customers/${n}`,draft_orders:`${e}/draft_orders/${n}`,collections:`${e}/collections/${n}`,discounts:`${e}/discounts/${n}`}[t]},[u,t,n,f]),target:`_blank`,rel:`noopener noreferrer`,className:`flex ${c?`w-full`:``}`,children:(0,a.jsx)(r.i,{...d,className:l,icon:o.ShoppingBag,iconPosition:`left`,children:s})})}l.displayName=`ShopifyButton`;var u={xs:`xs`,sm:`sm`,base:`default`},d={xs:`xs`,sm:`sm`,default:`base`,lg:`base`},f={xs:`text-xs h-auto px-0`,sm:`text-sm h-auto px-0`,base:`text-base h-auto px-0`},p=i.forwardRef(({className:e,type:i=`button`,size:o,disabled:s,...c},l)=>{let{defaultSize:p}=t.n(),m=o??d[p??`sm`]??`xs`;return(0,a.jsx)(r.i,{ref:l,type:i,variant:`primary`,buttonStyle:`ghost`,size:u[m],disabled:s,className:n.cn(`text-button--component`,`inline-flex items-center justify-center underline decoration-neutral-300 underline-offset-4 transition-colors duration-300 ease-out hover:decoration-current`,`text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,`disabled:pointer-events-none disabled:opacity-50`,f[m],e),...c})});p.displayName=`TextButton`;var m={xs:`xs`,sm:`sm`,base:`default`},h={xs:`h-7 px-2.5 text-xs`,sm:`h-8 px-3 text-xs`,base:`h-9 px-3.5 text-sm`},g=i.forwardRef(({variant:e=`secondary`,size:t,className:i,...o},s)=>{let c=e===`error`?`error`:e,l=t??`sm`;return(0,a.jsx)(r.i,{ref:s,variant:c,buttonStyle:`solid`,size:m[l],className:n.cn(`page-action-button--component`,h[l],`shadow-none`,i),...o})});g.displayName=`PageActionButton`,Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return g}});
|
|
2
|
+
//# sourceMappingURL=buttons-9YBwevkP.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buttons-9YBwevkP.cjs","names":[],"sources":["../../src/components/base/buttons/google-button.tsx","../../src/components/base/buttons/shopify-button.tsx","../../src/components/base/buttons/text-button.tsx","../../src/components/base/buttons/page-action-button.tsx"],"sourcesContent":["import { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\n\ntype GoogleButtonProps = Omit<BaseButtonProps, 'icon' | 'iconPosition' | 'fullWidth'> & {\n\thref?: string;\n};\n\n// Google brand mark — colors are dictated by Google's brand guidelines and\n// must not be themed. Do not replace with semantic tokens.\nconst GoogleIcon = () => (\n\t<svg\n\t\taria-hidden=\"true\"\n\t\tclassName=\"h-4 w-4\"\n\t\twidth=\"256\"\n\t\theight=\"262\"\n\t\tviewBox=\"0 0 256 262\"\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tpreserveAspectRatio=\"xMidYMid\"\n\t>\n\t\t<path\n\t\t\td=\"M255.878 133.451c0-10.734-.871-18.567-2.756-26.69H130.55v48.448h71.947c-1.45 12.04-9.283 30.172-26.69 42.356l-.244 1.622 38.755 30.023 2.685.268c24.659-22.774 38.875-56.282 38.875-96.027\"\n\t\t\tfill=\"#4285F4\"\n\t\t/>\n\t\t<path\n\t\t\td=\"M130.55 261.1c35.248 0 64.839-11.605 86.453-31.622l-41.196-31.913c-11.024 7.688-25.82 13.055-45.257 13.055-34.523 0-63.824-22.773-74.269-54.25l-1.531.13-40.298 31.187-.527 1.465C35.393 231.798 79.49 261.1 130.55 261.1\"\n\t\t\tfill=\"#34A853\"\n\t\t/>\n\t\t<path\n\t\t\td=\"M56.281 156.37c-2.756-8.123-4.351-16.827-4.351-25.82 0-8.994 1.595-17.697 4.206-25.82l-.073-1.73L15.26 71.312l-1.335.635C5.077 89.644 0 109.517 0 130.55s5.077 40.905 13.925 58.602l42.356-32.782\"\n\t\t\tfill=\"#FBBC05\"\n\t\t/>\n\t\t<path\n\t\t\td=\"M130.55 50.479c24.514 0 41.05 10.589 50.479 19.438l36.844-35.974C195.245 12.91 165.798 0 130.55 0 79.49 0 35.393 29.301 13.925 71.947l42.211 32.783c10.59-31.477 39.891-54.251 74.414-54.251\"\n\t\t\tfill=\"#EB4335\"\n\t\t/>\n\t</svg>\n);\n\nfunction GoogleButton({ children, className, type = 'button', href, ...props }: GoogleButtonProps) {\n\tconst button = (\n\t\t<BaseButton\n\t\t\ticon={GoogleIcon}\n\t\t\ticonPosition=\"left\"\n\t\t\tfullWidth\n\t\t\tclassName={cn(\n\t\t\t\t'bg-foreground text-background ring-offset-background hover:bg-foreground/85 focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\ttype={type}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</BaseButton>\n\t);\n\n\tif (href) {\n\t\treturn (\n\t\t\t<a href={href} className={cn('google-button--component', 'inline-flex w-full')}>\n\t\t\t\t{button}\n\t\t\t</a>\n\t\t);\n\t}\n\n\treturn button;\n}\n\nexport { GoogleButton };\n","import { useMemo } from 'react';\nimport { ShoppingBag } from 'lucide-react';\nimport { BaseButton, type BaseButtonProps } from './base-button';\n\ntype ShopifyResource =\n\t| 'orders'\n\t| 'products'\n\t| 'product_variants'\n\t| 'customers'\n\t| 'draft_orders'\n\t| 'collections'\n\t| 'discounts';\n\ntype ShopifyButtonProps =\n\t| (Omit<BaseButtonProps, 'children'> & {\n\t\t\tresource: Exclude<ShopifyResource, 'product_variants'>;\n\t\t\tid: string | number;\n\t\t\ttext: string;\n\t\t\tadminUrl?: string;\n\t\t})\n\t| (Omit<BaseButtonProps, 'children'> & {\n\t\t\tresource: 'product_variants';\n\t\t\tproductId: string | number;\n\t\t\tid: string | number;\n\t\t\ttext: string;\n\t\t\tadminUrl?: string;\n\t\t});\n\nexport function ShopifyButton(props: ShopifyButtonProps) {\n\tconst { resource, id, text, fullWidth, className, adminUrl } = props;\n\tconst buttonProps = { ...props };\n\tdelete (buttonProps as Partial<typeof props>).resource;\n\tdelete (buttonProps as Partial<typeof props>).id;\n\tdelete (buttonProps as Partial<typeof props>).text;\n\tdelete (buttonProps as Partial<typeof props>).fullWidth;\n\tdelete (buttonProps as Partial<typeof props>).className;\n\tdelete (buttonProps as { adminUrl?: string }).adminUrl;\n\n\tconst productId = props.resource === 'product_variants' ? props.productId : null;\n\tif (props.resource === 'product_variants') {\n\t\tdelete (buttonProps as { productId?: unknown }).productId;\n\t}\n\n\tconst href = useMemo(() => {\n\t\tconst base = (adminUrl ?? '').replace(/\\/$/, '');\n\t\tconst map: Record<ShopifyResource, string> = {\n\t\t\torders: `${base}/orders/${id}`,\n\t\t\tproducts: `${base}/products/${id}`,\n\t\t\tproduct_variants: productId ? `${base}/products/${productId}/variants/${id}` : `${base}/products/${id}`,\n\t\t\tcustomers: `${base}/customers/${id}`,\n\t\t\tdraft_orders: `${base}/draft_orders/${id}`,\n\t\t\tcollections: `${base}/collections/${id}`,\n\t\t\tdiscounts: `${base}/discounts/${id}`,\n\t\t};\n\t\treturn map[resource];\n\t}, [adminUrl, resource, id, productId]);\n\n\treturn (\n\t\t<a\n\t\t\thref={href}\n\t\t\ttarget=\"_blank\"\n\t\t\trel=\"noopener noreferrer\"\n\t\t\tclassName={`flex ${fullWidth ? 'w-full' : ''}`}\n\t\t>\n\t\t\t<BaseButton\n\t\t\t\t{...buttonProps}\n\t\t\t\tclassName={className}\n\t\t\t\ticon={ShoppingBag}\n\t\t\t\ticonPosition=\"left\"\n\t\t\t>\n\t\t\t\t{text}\n\t\t\t</BaseButton>\n\t\t</a>\n\t);\n}\n\nexport default ShopifyButton;\n\nShopifyButton.displayName = 'ShopifyButton';\n","/**\n * TextButton — link-styled button (underline, primary tint, no padding).\n *\n * Wraps `BaseButton` with `variant=\"primary\" buttonStyle=\"ghost\"`. Sizes map\n * 1:1 onto BaseButton's `xs | sm | default` so the `<UIProvider button>`\n * resolution chain reaches through unchanged. Pass `size` only when you\n * intentionally pin against the provider default; otherwise let\n * `useButtonConfig().defaultSize` flow through.\n */\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport { useButtonConfig } from '@/lib/ui-provider';\nimport { BaseButton } from './base-button';\n\ntype TextButtonSize = 'xs' | 'sm' | 'base';\n\nconst baseButtonSizeMap: Record<TextButtonSize, 'xs' | 'sm' | 'default'> = {\n\txs: 'xs',\n\tsm: 'sm',\n\tbase: 'default',\n};\n\nconst providerSizeMap: Record<string, TextButtonSize> = {\n\txs: 'xs',\n\tsm: 'sm',\n\tdefault: 'base',\n\tlg: 'base',\n};\n\nconst sizeClasses: Record<TextButtonSize, string> = {\n\txs: 'text-xs h-auto px-0',\n\tsm: 'text-sm h-auto px-0',\n\tbase: 'text-base h-auto px-0',\n};\n\nexport type TextButtonProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'size'> & {\n\tsize?: TextButtonSize;\n\tchildren: React.ReactNode;\n};\n\nexport const TextButton = React.forwardRef<HTMLButtonElement, TextButtonProps>(\n\t({ className, type = 'button', size, disabled, ...props }, ref) => {\n\t\tconst { defaultSize: providerDefault } = useButtonConfig();\n\t\tconst resolvedSize: TextButtonSize =\n\t\t\tsize ?? providerSizeMap[providerDefault ?? 'sm'] ?? 'xs';\n\t\treturn (\n\t\t\t<BaseButton\n\t\t\t\tref={ref}\n\t\t\t\ttype={type}\n\t\t\t\tvariant=\"primary\"\n\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\tsize={baseButtonSizeMap[resolvedSize]}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tclassName={cn('text-button--component', \n\t\t\t\t\t'inline-flex items-center justify-center underline decoration-neutral-300 underline-offset-4 transition-colors duration-300 ease-out hover:decoration-current',\n\t\t\t\t\t'text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n\t\t\t\t\t'disabled:pointer-events-none disabled:opacity-50',\n\t\t\t\t\tsizeClasses[resolvedSize],\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t);\n\t},\n);\n\nTextButton.displayName = 'TextButton';\n","import * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type ButtonStyle, type ButtonVariant } from './base-button';\n\nexport type PageActionButtonVariant =\n\t| 'primary'\n\t| 'secondary'\n\t| 'error';\n\ntype PageActionButtonSize = 'xs' | 'sm' | 'base';\nconst baseButtonSizeMap: Record<PageActionButtonSize, 'xs' | 'sm' | 'default'> = {\n\txs: 'xs',\n\tsm: 'sm',\n\tbase: 'default',\n};\n\nexport type PageActionButtonProps = Omit<\n\tReact.ComponentPropsWithoutRef<typeof BaseButton>,\n\t'variant' | 'buttonStyle' | 'size'\n> & {\n\tvariant?: PageActionButtonVariant;\n\tsize?: PageActionButtonSize;\n};\n\nconst sizeClasses: Record<PageActionButtonSize, string> = {\n\txs: 'h-7 px-2.5 text-xs',\n\tsm: 'h-8 px-3 text-xs',\n\tbase: 'h-9 px-3.5 text-sm',\n};\n\nexport const PageActionButton = React.forwardRef<\n\tHTMLButtonElement,\n\tPageActionButtonProps\n>(({ variant = 'secondary', size, className, ...props }, ref) => {\n\tconst resolvedVariant: ButtonVariant = variant === 'error' ? 'error' : variant;\n\tconst resolvedStyle: ButtonStyle = 'solid';\n\tconst resolvedSize: PageActionButtonSize = size ?? 'sm';\n\n\treturn (\n\t\t<BaseButton\n\t\t\tref={ref}\n\t\t\tvariant={resolvedVariant}\n\t\t\tbuttonStyle={resolvedStyle}\n\t\t\tsize={baseButtonSizeMap[resolvedSize]}\n\t\t\tclassName={cn('page-action-button--component', sizeClasses[resolvedSize], 'shadow-none', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n});\n\nPageActionButton.displayName = 'PageActionButton';\n"],"mappings":"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"}
|