@snksergio/design-system 0.5.1 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +345 -293
- package/dist-lib/chunks/{app-shell-BdVam01i.cjs → app-shell-CPx9X7zP.cjs} +417 -307
- package/dist-lib/chunks/app-shell-CPx9X7zP.cjs.map +1 -0
- package/dist-lib/chunks/{app-shell-C_enrPD8.mjs → app-shell-Cy9be0Zx.mjs} +449 -340
- package/dist-lib/chunks/app-shell-Cy9be0Zx.mjs.map +1 -0
- package/dist-lib/chunks/app-shell-mocks-kWIVSzLs.mjs.map +1 -1
- package/dist-lib/chunks/app-shell-mocks-oO_IV3Gw.cjs.map +1 -1
- package/dist-lib/chunks/{badge-B0D_PRxn.mjs → badge-DBdk74KN.mjs} +89 -46
- package/dist-lib/chunks/badge-DBdk74KN.mjs.map +1 -0
- package/dist-lib/chunks/{badge-CUttkO1X.cjs → badge-gU2wtxrn.cjs} +88 -45
- package/dist-lib/chunks/badge-gU2wtxrn.cjs.map +1 -0
- package/dist-lib/chunks/chat-v2-mocks-BV9Wha_Z.cjs.map +1 -1
- package/dist-lib/chunks/chat-v2-mocks-DvZRkhmz.mjs.map +1 -1
- package/dist-lib/chunks/chip-group-2-f_Yo7Y.cjs.map +1 -1
- package/dist-lib/chunks/chip-group-_e-yh1Zq.mjs.map +1 -1
- package/dist-lib/chunks/{clientes-showcase-mocks-CPNOhx1G.cjs → clientes-showcase-mocks-DygUqkkh.cjs} +2 -2
- package/dist-lib/chunks/clientes-showcase-mocks-DygUqkkh.cjs.map +1 -0
- package/dist-lib/chunks/{clientes-showcase-mocks-DEHCKxMK.mjs → clientes-showcase-mocks-ayU1SDOA.mjs} +2 -2
- package/dist-lib/chunks/clientes-showcase-mocks-ayU1SDOA.mjs.map +1 -0
- package/dist-lib/chunks/{page-header-qOywgRWy.cjs → page-header-BZ-WrxV2.cjs} +4 -2
- package/dist-lib/chunks/page-header-BZ-WrxV2.cjs.map +1 -0
- package/dist-lib/chunks/{page-header-DM2G1mdi.mjs → page-header-CQbTGWQ8.mjs} +4 -2
- package/dist-lib/chunks/page-header-CQbTGWQ8.mjs.map +1 -0
- package/dist-lib/chunks/{panel-CCYNbXJR.mjs → panel-DZvENJfF.mjs} +6663 -4978
- package/dist-lib/chunks/panel-DZvENJfF.mjs.map +1 -0
- package/dist-lib/chunks/{panel-CSuFQHMl.cjs → panel-awQFDYLz.cjs} +6644 -4960
- package/dist-lib/chunks/panel-awQFDYLz.cjs.map +1 -0
- package/dist-lib/chunks/useTheme-BUPLZBMs.mjs.map +1 -1
- package/dist-lib/chunks/useTheme-Dee4mo-A.cjs.map +1 -1
- package/dist-lib/index.cjs +3592 -626
- package/dist-lib/index.cjs.map +1 -1
- package/dist-lib/index.mjs +3667 -717
- package/dist-lib/index.mjs.map +1 -1
- package/dist-lib/preview/chat.cjs +1 -1
- package/dist-lib/preview/chat.cjs.map +1 -1
- package/dist-lib/preview/chat.mjs +1 -1
- package/dist-lib/preview/chat.mjs.map +1 -1
- package/dist-lib/preview/clientes.cjs +10 -9
- package/dist-lib/preview/clientes.cjs.map +1 -1
- package/dist-lib/preview/clientes.mjs +10 -9
- package/dist-lib/preview/clientes.mjs.map +1 -1
- package/dist-lib/preview/dashboard.cjs +4 -4
- package/dist-lib/preview/dashboard.cjs.map +1 -1
- package/dist-lib/preview/dashboard.mjs +4 -4
- package/dist-lib/preview/dashboard.mjs.map +1 -1
- package/dist-lib/preview/mocks.cjs +1 -1
- package/dist-lib/preview/mocks.mjs +1 -1
- package/dist-lib/src/components/index.d.ts +13 -7
- package/dist-lib/src/components/index.d.ts.map +1 -1
- package/dist-lib/src/components/shadcn/aspect-ratio.d.ts +4 -0
- package/dist-lib/src/components/shadcn/aspect-ratio.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/calendar.d.ts.map +1 -1
- package/dist-lib/src/components/shadcn/carousel.d.ts +19 -0
- package/dist-lib/src/components/shadcn/carousel.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/collapsible.d.ts +6 -0
- package/dist-lib/src/components/shadcn/collapsible.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/context-menu.d.ts +28 -0
- package/dist-lib/src/components/shadcn/context-menu.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/drawer.d.ts +23 -0
- package/dist-lib/src/components/shadcn/drawer.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/dropdown-menu.d.ts +8 -1
- package/dist-lib/src/components/shadcn/dropdown-menu.d.ts.map +1 -1
- package/dist-lib/src/components/shadcn/hover-card.d.ts +8 -0
- package/dist-lib/src/components/shadcn/hover-card.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/input-otp.d.ts +40 -0
- package/dist-lib/src/components/shadcn/input-otp.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/menubar.d.ts +29 -0
- package/dist-lib/src/components/shadcn/menubar.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/navigation-menu.d.ts +13 -0
- package/dist-lib/src/components/shadcn/navigation-menu.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/popover.d.ts +7 -0
- package/dist-lib/src/components/shadcn/popover.d.ts.map +1 -1
- package/dist-lib/src/components/shadcn/scroll-area.d.ts +11 -0
- package/dist-lib/src/components/shadcn/scroll-area.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/skeleton.d.ts +9 -0
- package/dist-lib/src/components/shadcn/skeleton.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/sonner.d.ts +15 -0
- package/dist-lib/src/components/shadcn/sonner.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/toggle-group.d.ts +13 -0
- package/dist-lib/src/components/shadcn/toggle-group.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/toggle.d.ts +13 -0
- package/dist-lib/src/components/shadcn/toggle.d.ts.map +1 -0
- package/dist-lib/src/components/shadcn/tooltip.d.ts +14 -0
- package/dist-lib/src/components/shadcn/tooltip.d.ts.map +1 -0
- package/dist-lib/src/components/ui/AppShell/app-shell.d.ts.map +1 -1
- package/dist-lib/src/components/ui/AppShell/app-shell.types.d.ts +1 -1
- package/dist-lib/src/components/ui/AppShell/app-shell.types.d.ts.map +1 -1
- package/dist-lib/src/components/ui/AppShell/user-menu.d.ts.map +1 -1
- package/dist-lib/src/components/ui/ButtonGroup/button-group.d.ts +10 -0
- package/dist-lib/src/components/ui/ButtonGroup/button-group.d.ts.map +1 -0
- package/dist-lib/src/components/ui/ButtonGroup/button-group.styles.d.ts +77 -0
- package/dist-lib/src/components/ui/ButtonGroup/button-group.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/ButtonGroup/button-group.types.d.ts +43 -0
- package/dist-lib/src/components/ui/ButtonGroup/button-group.types.d.ts.map +1 -0
- package/dist-lib/src/components/ui/ButtonGroup/index.d.ts +3 -0
- package/dist-lib/src/components/ui/ButtonGroup/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/CardCheckbox/card-checkbox.d.ts +42 -0
- package/dist-lib/src/components/ui/CardCheckbox/card-checkbox.d.ts.map +1 -0
- package/dist-lib/src/components/ui/CardCheckbox/card-checkbox.styles.d.ts +72 -0
- package/dist-lib/src/components/ui/CardCheckbox/card-checkbox.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/CardCheckbox/index.d.ts +5 -0
- package/dist-lib/src/components/ui/CardCheckbox/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Chart/chart.d.ts +80 -0
- package/dist-lib/src/components/ui/Chart/chart.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Chart/index.d.ts +3 -0
- package/dist-lib/src/components/ui/Chart/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Combobox/combobox.d.ts +15 -0
- package/dist-lib/src/components/ui/Combobox/combobox.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Combobox/combobox.styles.d.ts +62 -0
- package/dist-lib/src/components/ui/Combobox/combobox.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Combobox/combobox.types.d.ts +36 -0
- package/dist-lib/src/components/ui/Combobox/combobox.types.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Combobox/index.d.ts +3 -0
- package/dist-lib/src/components/ui/Combobox/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataList/data-list.d.ts +9 -0
- package/dist-lib/src/components/ui/DataList/data-list.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataList/data-list.types.d.ts +106 -0
- package/dist-lib/src/components/ui/DataList/data-list.types.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataList/hooks/use-data-list.d.ts +36 -0
- package/dist-lib/src/components/ui/DataList/hooks/use-data-list.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataList/index.d.ts +3 -0
- package/dist-lib/src/components/ui/DataList/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataList/parts/data-list-infinite.d.ts +16 -0
- package/dist-lib/src/components/ui/DataList/parts/data-list-infinite.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataList/parts/data-list-toolbar.d.ts +32 -0
- package/dist-lib/src/components/ui/DataList/parts/data-list-toolbar.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataList/parts/data-list-virtualized.d.ts +23 -0
- package/dist-lib/src/components/ui/DataList/parts/data-list-virtualized.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataList/utils/apply-filter-model.d.ts +12 -0
- package/dist-lib/src/components/ui/DataList/utils/apply-filter-model.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/builders/column-builders.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/_filter-field.d.ts +19 -0
- package/dist-lib/src/components/ui/DataTable/column-types/_filter-field.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/_shared.d.ts +24 -0
- package/dist-lib/src/components/ui/DataTable/column-types/_shared.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/column-types/column-type-registry.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/badge-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/boolean-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/currency-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/date-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/datetime-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/multi-select-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/number-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/percentage-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/select-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/tags-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/text-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/column-types/definitions/user-column-type.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/data-table.constants.d.ts +21 -0
- package/dist-lib/src/components/ui/DataTable/data-table.constants.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/data-table.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/data-table.styles.d.ts +30 -36
- package/dist-lib/src/components/ui/DataTable/data-table.styles.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/data-table.types.d.ts +163 -15
- package/dist-lib/src/components/ui/DataTable/data-table.types.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/hooks/use-data-table-columns.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/hooks/use-data-table-controller.d.ts +7 -1
- package/dist-lib/src/components/ui/DataTable/hooks/use-data-table-controller.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/hooks/use-data-table-export.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/hooks/use-data-table-query.d.ts +10 -1
- package/dist-lib/src/components/ui/DataTable/hooks/use-data-table-query.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/hooks/use-filter-popover-adapter.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/hooks/use-grab-to-scroll.d.ts +24 -0
- package/dist-lib/src/components/ui/DataTable/hooks/use-grab-to-scroll.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/parts/data-table-cell-addons.d.ts +41 -0
- package/dist-lib/src/components/ui/DataTable/parts/data-table-cell-addons.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/parts/data-table-cell-addons.styles.d.ts +81 -0
- package/dist-lib/src/components/ui/DataTable/parts/data-table-cell-addons.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/parts/data-table-group-header-row.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/parts/data-table-row.d.ts +76 -0
- package/dist-lib/src/components/ui/DataTable/parts/data-table-row.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/parts/data-table-totalizer-row.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/parts/data-table-tree-toggle.d.ts +35 -0
- package/dist-lib/src/components/ui/DataTable/parts/data-table-tree-toggle.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/utils/aggregate.d.ts +23 -0
- package/dist-lib/src/components/ui/DataTable/utils/aggregate.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/utils/calculate-column-widths.d.ts.map +1 -1
- package/dist-lib/src/components/ui/DataTable/utils/filter-ops.d.ts +41 -0
- package/dist-lib/src/components/ui/DataTable/utils/filter-ops.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DataTable/utils/tree-rows.d.ts +75 -0
- package/dist-lib/src/components/ui/DataTable/utils/tree-rows.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DatePicker/datepicker.d.ts +22 -0
- package/dist-lib/src/components/ui/DatePicker/datepicker.d.ts.map +1 -0
- package/dist-lib/src/components/ui/DatePicker/index.d.ts +3 -0
- package/dist-lib/src/components/ui/DatePicker/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/FloatingPanel/floating-panel-parts.d.ts +18 -0
- package/dist-lib/src/components/ui/FloatingPanel/floating-panel-parts.d.ts.map +1 -0
- package/dist-lib/src/components/ui/FloatingPanel/floating-panel.d.ts +7 -5
- package/dist-lib/src/components/ui/FloatingPanel/floating-panel.d.ts.map +1 -1
- package/dist-lib/src/components/ui/FloatingPanel/floating-panel.styles.d.ts +21 -0
- package/dist-lib/src/components/ui/FloatingPanel/floating-panel.styles.d.ts.map +1 -1
- package/dist-lib/src/components/ui/FloatingPanel/floating-panel.types.d.ts +8 -1
- package/dist-lib/src/components/ui/FloatingPanel/floating-panel.types.d.ts.map +1 -1
- package/dist-lib/src/components/ui/FloatingPanel/index.d.ts +2 -0
- package/dist-lib/src/components/ui/FloatingPanel/index.d.ts.map +1 -1
- package/dist-lib/src/components/ui/FormField/form-field-input.d.ts.map +1 -1
- package/dist-lib/src/components/ui/FormField/form-field-textarea.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Header/header-messages.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Header/header-notifications.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Header/header.types.d.ts +1 -1
- package/dist-lib/src/components/ui/Header/header.types.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Icon/icon.d.ts +11 -0
- package/dist-lib/src/components/ui/Icon/icon.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Icon/icon.styles.d.ts +60 -0
- package/dist-lib/src/components/ui/Icon/icon.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Icon/icon.types.d.ts +21 -0
- package/dist-lib/src/components/ui/Icon/icon.types.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Icon/icons.d.ts +2407 -0
- package/dist-lib/src/components/ui/Icon/icons.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Icon/index.d.ts +5 -0
- package/dist-lib/src/components/ui/Icon/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Kpi/index.d.ts +5 -0
- package/dist-lib/src/components/ui/Kpi/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Kpi/kpi-delta.d.ts +11 -0
- package/dist-lib/src/components/ui/Kpi/kpi-delta.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Kpi/kpi-group.d.ts +12 -0
- package/dist-lib/src/components/ui/Kpi/kpi-group.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Kpi/kpi.d.ts +11 -0
- package/dist-lib/src/components/ui/Kpi/kpi.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Kpi/kpi.styles.d.ts +159 -0
- package/dist-lib/src/components/ui/Kpi/kpi.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Kpi/kpi.types.d.ts +46 -0
- package/dist-lib/src/components/ui/Kpi/kpi.types.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/hooks/use-disclosure-set.d.ts +17 -0
- package/dist-lib/src/components/ui/List/hooks/use-disclosure-set.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/hooks/use-selection-set.d.ts +18 -0
- package/dist-lib/src/components/ui/List/hooks/use-selection-set.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/index.d.ts +4 -0
- package/dist-lib/src/components/ui/List/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/layouts/_sortable-item.d.ts +24 -0
- package/dist-lib/src/components/ui/List/layouts/_sortable-item.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/layouts/grouped-layout.d.ts +24 -0
- package/dist-lib/src/components/ui/List/layouts/grouped-layout.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/layouts/hierarchical-layout.d.ts +28 -0
- package/dist-lib/src/components/ui/List/layouts/hierarchical-layout.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/layouts/standard-layout.d.ts +19 -0
- package/dist-lib/src/components/ui/List/layouts/standard-layout.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/list-item.d.ts +29 -0
- package/dist-lib/src/components/ui/List/list-item.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/list.d.ts +15 -0
- package/dist-lib/src/components/ui/List/list.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/list.styles.d.ts +207 -0
- package/dist-lib/src/components/ui/List/list.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/list.types.d.ts +126 -0
- package/dist-lib/src/components/ui/List/list.types.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/utils/flatten-tree.d.ts +23 -0
- package/dist-lib/src/components/ui/List/utils/flatten-tree.d.ts.map +1 -0
- package/dist-lib/src/components/ui/List/utils/group-items.d.ts +13 -0
- package/dist-lib/src/components/ui/List/utils/group-items.d.ts.map +1 -0
- package/dist-lib/src/components/ui/MenuSidebar/menu-sidebar.d.ts.map +1 -1
- package/dist-lib/src/components/ui/MenuSidebar/sidebar-panel.d.ts +3 -1
- package/dist-lib/src/components/ui/MenuSidebar/sidebar-panel.d.ts.map +1 -1
- package/dist-lib/src/components/ui/MenuSidebar/sidebar.styles.d.ts +12 -0
- package/dist-lib/src/components/ui/MenuSidebar/sidebar.styles.d.ts.map +1 -1
- package/dist-lib/src/components/ui/MenuSidebar/sidebar.types.d.ts +1 -1
- package/dist-lib/src/components/ui/MenuSidebar/sidebar.types.d.ts.map +1 -1
- package/dist-lib/src/components/ui/PageHeader/page-header.styles.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Panel/index.d.ts +2 -1
- package/dist-lib/src/components/ui/Panel/index.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Panel/panel-header.d.ts +1 -1
- package/dist-lib/src/components/ui/Panel/panel-header.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Panel/panel.d.ts +2 -1
- package/dist-lib/src/components/ui/Panel/panel.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Panel/panel.styles.d.ts +12 -12
- package/dist-lib/src/components/ui/Panel/panel.styles.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Panel/panel.types.d.ts +1 -1
- package/dist-lib/src/components/ui/Panel/panel.types.d.ts.map +1 -1
- package/dist-lib/src/components/ui/SingleMenuSidebar/category.d.ts +6 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/category.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/command.d.ts +23 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/command.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/footer.d.ts +6 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/footer.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/header.d.ts +6 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/header.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/index.d.ts +3 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/menu-item.d.ts +6 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/menu-item.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/module-selector.d.ts +6 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/module-selector.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/search.d.ts +15 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/search.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.d.ts +6 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.styles.d.ts +204 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.types.d.ts +181 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/single-menu-sidebar.types.d.ts.map +1 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/use-single-menu-sidebar.d.ts +22 -0
- package/dist-lib/src/components/ui/SingleMenuSidebar/use-single-menu-sidebar.d.ts.map +1 -0
- package/dist-lib/src/components/ui/TabelaTeste/mock-data.d.ts +1 -1
- package/dist-lib/src/components/ui/TabelaTeste/mock-data.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Table/table-card-row.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Table/table.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Table/table.styles.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/hooks/use-toolbar-filter-control.d.ts +40 -0
- package/dist-lib/src/components/ui/TableToolbar/hooks/use-toolbar-filter-control.d.ts.map +1 -0
- package/dist-lib/src/components/ui/TableToolbar/hooks/use-toolbar-filters.d.ts +20 -13
- package/dist-lib/src/components/ui/TableToolbar/hooks/use-toolbar-filters.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/hooks/use-toolbar-sort.d.ts +17 -11
- package/dist-lib/src/components/ui/TableToolbar/hooks/use-toolbar-sort.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/index.d.ts +20 -8
- package/dist-lib/src/components/ui/TableToolbar/index.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/parts/table-toolbar-views.d.ts +9 -1
- package/dist-lib/src/components/ui/TableToolbar/parts/table-toolbar-views.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-actions.d.ts +60 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-actions.d.ts.map +1 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-applied.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-filter-button.d.ts +18 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-filter-button.d.ts.map +1 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-filter-control.d.ts +63 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-filter-control.d.ts.map +1 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-mobile-sheet.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-settings-menu.d.ts +54 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-settings-menu.d.ts.map +1 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-simple-filter-drawer.d.ts +47 -0
- package/dist-lib/src/components/ui/TableToolbar/parts/toolbar-simple-filter-drawer.d.ts.map +1 -0
- package/dist-lib/src/components/ui/TableToolbar/popovers/add-view-modal.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/popovers/cols-popover.d.ts +10 -13
- package/dist-lib/src/components/ui/TableToolbar/popovers/cols-popover.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/popovers/filter-popover.d.ts +26 -26
- package/dist-lib/src/components/ui/TableToolbar/popovers/filter-popover.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/popovers/filter-sql-parser.d.ts +18 -22
- package/dist-lib/src/components/ui/TableToolbar/popovers/filter-sql-parser.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/popovers/more-menu.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/popovers/sort-popover.d.ts +10 -16
- package/dist-lib/src/components/ui/TableToolbar/popovers/sort-popover.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/table-toolbar.d.ts +33 -22
- package/dist-lib/src/components/ui/TableToolbar/table-toolbar.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/table-toolbar.styles.d.ts +2 -2
- package/dist-lib/src/components/ui/TableToolbar/table-toolbar.styles.d.ts.map +1 -1
- package/dist-lib/src/components/ui/TableToolbar/table-toolbar.types.d.ts +16 -3
- package/dist-lib/src/components/ui/TableToolbar/table-toolbar.types.d.ts.map +1 -1
- package/dist-lib/src/components/ui/Toast/index.d.ts +4 -0
- package/dist-lib/src/components/ui/Toast/index.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Toast/toast-card.d.ts +35 -0
- package/dist-lib/src/components/ui/Toast/toast-card.d.ts.map +1 -0
- package/dist-lib/src/components/ui/Toast/toast.styles.d.ts +102 -0
- package/dist-lib/src/components/ui/Toast/toast.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/avatar-ig/avatar.d.ts +23 -0
- package/dist-lib/src/components/ui/avatar-ig/avatar.d.ts.map +1 -0
- package/dist-lib/src/components/ui/avatar-ig/avatar.styles.d.ts.map +1 -0
- package/dist-lib/src/components/ui/avatar-ig/avatar.types.d.ts.map +1 -0
- package/dist-lib/src/components/ui/avatar-ig/index.d.ts.map +1 -0
- package/dist-lib/src/lib/lucide-types.d.ts +9 -0
- package/dist-lib/src/lib/lucide-types.d.ts.map +1 -0
- package/dist-lib/src/preview/pages/ChatV2/chat-v2.types.d.ts +1 -1
- package/dist-lib/src/preview/pages/ChatV2/chat-v2.types.d.ts.map +1 -1
- package/dist-lib/src/preview/pages/ClientesShowcase/ClientesShowcase.d.ts.map +1 -1
- package/dist-lib/src/preview/pages/ClientesShowcase/clientes-showcase.styles.d.ts +1 -6
- package/dist-lib/src/preview/pages/ClientesShowcase/clientes-showcase.styles.d.ts.map +1 -1
- package/dist-lib/src/preview/pages/ClientesShowcase/components/DetailDrawer/detail-drawer.d.ts.map +1 -1
- package/dist-lib/src/preview/pages/ClientesShowcase/components/DetailDrawer/detail-drawer.styles.d.ts +3 -3
- package/dist-lib/src/utils/color-contrast.d.ts +48 -0
- package/dist-lib/src/utils/color-contrast.d.ts.map +1 -0
- package/dist-lib/theme.css +61 -24
- package/dist-lib/tokens/brands/default/components/spacing.d.ts +22 -0
- package/dist-lib/tokens/brands/default/components/spacing.d.ts.map +1 -1
- package/dist-lib/tokens/brands/default/semantic/color-dark.d.ts +20 -0
- package/dist-lib/tokens/brands/default/semantic/color-dark.d.ts.map +1 -1
- package/dist-lib/tokens/brands/default/semantic/color-light.d.ts +20 -0
- package/dist-lib/tokens/brands/default/semantic/color-light.d.ts.map +1 -1
- package/dist-lib/tokens/brands/default/semantic/elevation.d.ts +4 -4
- package/dist-lib/tokens/brands/default/semantic/elevation.d.ts.map +1 -1
- package/dist-lib/tokens.cjs +49 -4
- package/dist-lib/tokens.cjs.map +1 -1
- package/dist-lib/tokens.mjs +49 -4
- package/dist-lib/tokens.mjs.map +1 -1
- package/package.json +30 -9
- package/dist-lib/chunks/app-shell-BdVam01i.cjs.map +0 -1
- package/dist-lib/chunks/app-shell-C_enrPD8.mjs.map +0 -1
- package/dist-lib/chunks/badge-B0D_PRxn.mjs.map +0 -1
- package/dist-lib/chunks/badge-CUttkO1X.cjs.map +0 -1
- package/dist-lib/chunks/clientes-showcase-mocks-CPNOhx1G.cjs.map +0 -1
- package/dist-lib/chunks/clientes-showcase-mocks-DEHCKxMK.mjs.map +0 -1
- package/dist-lib/chunks/page-header-DM2G1mdi.mjs.map +0 -1
- package/dist-lib/chunks/page-header-qOywgRWy.cjs.map +0 -1
- package/dist-lib/chunks/panel-CCYNbXJR.mjs.map +0 -1
- package/dist-lib/chunks/panel-CSuFQHMl.cjs.map +0 -1
- package/dist-lib/src/components/ui/Avatar/avatar.d.ts +0 -16
- package/dist-lib/src/components/ui/Avatar/avatar.d.ts.map +0 -1
- package/dist-lib/src/components/ui/Avatar/avatar.styles.d.ts.map +0 -1
- package/dist-lib/src/components/ui/Avatar/avatar.types.d.ts.map +0 -1
- package/dist-lib/src/components/ui/Avatar/index.d.ts.map +0 -1
- package/dist-lib/src/components/ui/DataTable/utils/operator-mapping.d.ts +0 -6
- package/dist-lib/src/components/ui/DataTable/utils/operator-mapping.d.ts.map +0 -1
- /package/dist-lib/src/components/ui/{Avatar → avatar-ig}/avatar.styles.d.ts +0 -0
- /package/dist-lib/src/components/ui/{Avatar → avatar-ig}/avatar.types.d.ts +0 -0
- /package/dist-lib/src/components/ui/{Avatar → avatar-ig}/index.d.ts +0 -0
|
@@ -5,6 +5,7 @@ const chipGroup = require("./chip-group-2-f_Yo7Y.cjs");
|
|
|
5
5
|
const lucideReact = require("lucide-react");
|
|
6
6
|
const cmdk = require("cmdk");
|
|
7
7
|
const SheetPrimitive = require("@radix-ui/react-dialog");
|
|
8
|
+
const PopoverPrimitive = require("@radix-ui/react-popover");
|
|
8
9
|
const classVarianceAuthority = require("class-variance-authority");
|
|
9
10
|
const DropdownMenuPrimitive = require("@radix-ui/react-dropdown-menu");
|
|
10
11
|
const AvatarPrimitive = require("@radix-ui/react-avatar");
|
|
@@ -26,6 +27,7 @@ function _interopNamespaceDefault(e) {
|
|
|
26
27
|
}
|
|
27
28
|
const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
|
|
28
29
|
const SheetPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(SheetPrimitive);
|
|
30
|
+
const PopoverPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(PopoverPrimitive);
|
|
29
31
|
const DropdownMenuPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(DropdownMenuPrimitive);
|
|
30
32
|
const AvatarPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(AvatarPrimitive);
|
|
31
33
|
const headerRoot = chipGroup.tv({
|
|
@@ -116,10 +118,10 @@ const searchFakeInputKbd = chipGroup.tv({
|
|
|
116
118
|
"text-caption-xs font-semibold text-fg-muted tabular-nums shrink-0"
|
|
117
119
|
]
|
|
118
120
|
});
|
|
119
|
-
|
|
121
|
+
chipGroup.tv({
|
|
120
122
|
base: "relative inline-flex"
|
|
121
123
|
});
|
|
122
|
-
|
|
124
|
+
chipGroup.tv({
|
|
123
125
|
base: [
|
|
124
126
|
"absolute top-[calc(100%+8px)] right-0 z-50",
|
|
125
127
|
"w-[380px] max-w-[calc(100vw-32px)] max-h-[520px] flex flex-col",
|
|
@@ -646,6 +648,71 @@ function CommandGroupBlock({
|
|
|
646
648
|
!isLast && /* @__PURE__ */ jsxRuntime.jsx(CommandSeparator, {})
|
|
647
649
|
] });
|
|
648
650
|
}
|
|
651
|
+
const Popover = PopoverPrimitive__namespace.Root;
|
|
652
|
+
const PopoverTrigger = PopoverPrimitive__namespace.Trigger;
|
|
653
|
+
const PopoverAnchor = PopoverPrimitive__namespace.Anchor;
|
|
654
|
+
const POPOVER_MOBILE_SHEET = [
|
|
655
|
+
"max-md:w-full max-md:min-w-0 max-md:max-w-none",
|
|
656
|
+
"max-md:!max-h-[92vh]",
|
|
657
|
+
"max-md:rounded-b-none max-md:rounded-t-[12px]",
|
|
658
|
+
"max-md:border-x-0 max-md:border-b-0",
|
|
659
|
+
"max-md:outline-none max-md:shadow-none",
|
|
660
|
+
// Respiro de 20px (pad-3xl) no rodapé pra o conteúdo (footer/última seção)
|
|
661
|
+
// não colar na borda inferior do device quando vira sheet.
|
|
662
|
+
"max-md:pb-pad-3xl",
|
|
663
|
+
"max-md:data-[state=open]:zoom-in-100 max-md:data-[state=closed]:zoom-out-100",
|
|
664
|
+
"max-md:data-[state=open]:slide-in-from-bottom-12 max-md:data-[state=closed]:slide-out-to-bottom-12"
|
|
665
|
+
].join(" ");
|
|
666
|
+
const PopoverSheetBackdrop = () => /* @__PURE__ */ jsxRuntime.jsx(
|
|
667
|
+
"div",
|
|
668
|
+
{
|
|
669
|
+
"aria-hidden": "true",
|
|
670
|
+
className: "fixed inset-0 z-[55] bg-overlay-scrim pointer-events-auto md:hidden animate-in fade-in-0 duration-150"
|
|
671
|
+
}
|
|
672
|
+
);
|
|
673
|
+
const PopoverContent = React__namespace.forwardRef(
|
|
674
|
+
({ className, align = "center", sideOffset = 6, disablePortal, mobileSheet = true, ...props }, ref) => {
|
|
675
|
+
const content = /* @__PURE__ */ jsxRuntime.jsx(
|
|
676
|
+
PopoverPrimitive__namespace.Content,
|
|
677
|
+
{
|
|
678
|
+
ref,
|
|
679
|
+
align,
|
|
680
|
+
sideOffset,
|
|
681
|
+
"data-mobile-sheet": mobileSheet ? "" : void 0,
|
|
682
|
+
className: chipGroup.cn(
|
|
683
|
+
"relative z-50",
|
|
684
|
+
// Unificado com DropdownMenu/Select: bg-bg-dropdown (frosted no dark)
|
|
685
|
+
// + border-border-default + outline-float. O `before` pseudo-element
|
|
686
|
+
// aplica o blur backdrop (necessário pra bg-bg-dropdown semi-transparente
|
|
687
|
+
// render correto no dark mode).
|
|
688
|
+
"bg-bg-dropdown",
|
|
689
|
+
"border border-border-default rounded-[12px] shadow-sh-lg outline-float",
|
|
690
|
+
"before:pointer-events-none before:absolute before:inset-0 before:-z-10 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150",
|
|
691
|
+
"text-fg-default",
|
|
692
|
+
"data-[state=open]:animate-in data-[state=closed]:animate-out",
|
|
693
|
+
"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
694
|
+
"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",
|
|
695
|
+
"data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2",
|
|
696
|
+
"data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
697
|
+
mobileSheet && POPOVER_MOBILE_SHEET,
|
|
698
|
+
className
|
|
699
|
+
),
|
|
700
|
+
...props
|
|
701
|
+
}
|
|
702
|
+
);
|
|
703
|
+
if (disablePortal) {
|
|
704
|
+
return mobileSheet ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
705
|
+
/* @__PURE__ */ jsxRuntime.jsx(PopoverSheetBackdrop, {}),
|
|
706
|
+
content
|
|
707
|
+
] }) : content;
|
|
708
|
+
}
|
|
709
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
710
|
+
mobileSheet && /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(PopoverSheetBackdrop, {}) }),
|
|
711
|
+
/* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: content })
|
|
712
|
+
] });
|
|
713
|
+
}
|
|
714
|
+
);
|
|
715
|
+
PopoverContent.displayName = PopoverPrimitive__namespace.Content.displayName;
|
|
649
716
|
const DEFAULT_FILTERS$1 = [
|
|
650
717
|
{ id: "all", label: "Todas", predicate: () => true },
|
|
651
718
|
{ id: "unread", label: "Não lidas", predicate: (n) => !!n.unread },
|
|
@@ -663,28 +730,12 @@ function HeaderNotifications({ config, className }) {
|
|
|
663
730
|
} = config;
|
|
664
731
|
const [open, setOpen] = React.useState(false);
|
|
665
732
|
const [activeFilter, setActiveFilter] = React.useState(filters[0]?.id ?? "all");
|
|
666
|
-
const wrapRef = React.useRef(null);
|
|
667
733
|
const unreadCount = items.filter((n) => n.unread).length;
|
|
668
|
-
React.useEffect(() => {
|
|
669
|
-
if (!open) return;
|
|
670
|
-
const onClick = (e) => {
|
|
671
|
-
if (!wrapRef.current?.contains(e.target)) setOpen(false);
|
|
672
|
-
};
|
|
673
|
-
const onEsc = (e) => {
|
|
674
|
-
if (e.key === "Escape") setOpen(false);
|
|
675
|
-
};
|
|
676
|
-
document.addEventListener("mousedown", onClick);
|
|
677
|
-
document.addEventListener("keydown", onEsc);
|
|
678
|
-
return () => {
|
|
679
|
-
document.removeEventListener("mousedown", onClick);
|
|
680
|
-
document.removeEventListener("keydown", onEsc);
|
|
681
|
-
};
|
|
682
|
-
}, [open]);
|
|
683
734
|
const filtered = items.filter(
|
|
684
735
|
filters.find((f) => f.id === activeFilter)?.predicate ?? (() => true)
|
|
685
736
|
);
|
|
686
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
687
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
737
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Popover, { open, onOpenChange: setOpen, children: [
|
|
738
|
+
/* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
688
739
|
chipGroup.Button,
|
|
689
740
|
{
|
|
690
741
|
color: "secondary",
|
|
@@ -693,84 +744,93 @@ function HeaderNotifications({ config, className }) {
|
|
|
693
744
|
className: "rounded-radius-md relative",
|
|
694
745
|
"aria-label": "Notificações",
|
|
695
746
|
title: "Notificações",
|
|
696
|
-
"aria-expanded": open,
|
|
697
|
-
onClick: () => setOpen((o) => !o),
|
|
698
747
|
children: [
|
|
699
748
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.Bell, {}),
|
|
700
749
|
unreadCount > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: headerIconBtnBadge({ kind: "danger" }), "aria-hidden": "true" })
|
|
701
750
|
]
|
|
702
751
|
}
|
|
703
|
-
),
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
752
|
+
) }),
|
|
753
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
754
|
+
PopoverContent,
|
|
755
|
+
{
|
|
756
|
+
align: "end",
|
|
757
|
+
className: chipGroup.cn(
|
|
758
|
+
"w-[380px] max-w-[calc(100vw-32px)] max-h-[520px] p-0 flex flex-col overflow-hidden",
|
|
759
|
+
className
|
|
760
|
+
),
|
|
761
|
+
"aria-label": "Notificações",
|
|
762
|
+
children: [
|
|
763
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdTop(), children: [
|
|
764
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdHeader(), children: [
|
|
765
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdTitle(), children: [
|
|
766
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: "Notificações" }),
|
|
767
|
+
unreadCount > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: hdTitleCount(), children: unreadCount })
|
|
768
|
+
] }),
|
|
769
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdHeaderActions(), children: [
|
|
770
|
+
onMarkAllRead && /* @__PURE__ */ jsxRuntime.jsx(
|
|
771
|
+
chipGroup.Button,
|
|
772
|
+
{
|
|
773
|
+
color: "secondary",
|
|
774
|
+
variant: "ghost",
|
|
775
|
+
size: "icon-2xs",
|
|
776
|
+
className: "rounded-radius-sm",
|
|
777
|
+
title: "Marcar todas como lidas",
|
|
778
|
+
onClick: onMarkAllRead,
|
|
779
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CheckCheck, {})
|
|
780
|
+
}
|
|
781
|
+
),
|
|
782
|
+
onMoreActions && /* @__PURE__ */ jsxRuntime.jsx(
|
|
783
|
+
chipGroup.Button,
|
|
784
|
+
{
|
|
785
|
+
color: "secondary",
|
|
786
|
+
variant: "ghost",
|
|
787
|
+
size: "icon-2xs",
|
|
788
|
+
className: "rounded-radius-sm",
|
|
789
|
+
title: "Mais ações",
|
|
790
|
+
onClick: onMoreActions,
|
|
791
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.MoreHorizontal, {})
|
|
792
|
+
}
|
|
793
|
+
)
|
|
794
|
+
] })
|
|
795
|
+
] }),
|
|
796
|
+
filters.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
797
|
+
chipGroup.ChipGroup,
|
|
726
798
|
{
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
799
|
+
type: "single",
|
|
800
|
+
value: activeFilter,
|
|
801
|
+
onValueChange: (v) => v && setActiveFilter(v),
|
|
802
|
+
size: "lg",
|
|
803
|
+
ariaLabel: "Filtrar notificações",
|
|
804
|
+
children: filters.map((f) => {
|
|
805
|
+
const count = items.filter(f.predicate ?? (() => true)).length;
|
|
806
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(chipGroup.ChipGroupItem, { value: f.id, children: [
|
|
807
|
+
f.label,
|
|
808
|
+
count > 0 && ` (${count})`
|
|
809
|
+
] }, f.id);
|
|
810
|
+
})
|
|
734
811
|
}
|
|
735
812
|
)
|
|
736
|
-
] })
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
{
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
}
|
|
753
|
-
}
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.Bell, { size: 28, strokeWidth: 1.4 }),
|
|
758
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: hdEmptyText(), children: emptyMessage })
|
|
759
|
-
] }) : filtered.map((n) => /* @__PURE__ */ jsxRuntime.jsx(NotificationRow, { item: n }, n.id)) }),
|
|
760
|
-
onViewAll && /* @__PURE__ */ jsxRuntime.jsx("div", { className: hdFooter(), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
761
|
-
"a",
|
|
762
|
-
{
|
|
763
|
-
href: "#",
|
|
764
|
-
className: hdFooterLink(),
|
|
765
|
-
onClick: (e) => {
|
|
766
|
-
e.preventDefault();
|
|
767
|
-
onViewAll();
|
|
768
|
-
setOpen(false);
|
|
769
|
-
},
|
|
770
|
-
children: viewAllLabel
|
|
771
|
-
}
|
|
772
|
-
) })
|
|
773
|
-
] })
|
|
813
|
+
] }),
|
|
814
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: hdBody(), children: filtered.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdEmpty(), children: [
|
|
815
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.Bell, { size: 28, strokeWidth: 1.4 }),
|
|
816
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: hdEmptyText(), children: emptyMessage })
|
|
817
|
+
] }) : filtered.map((n) => /* @__PURE__ */ jsxRuntime.jsx(NotificationRow, { item: n }, n.id)) }),
|
|
818
|
+
onViewAll && /* @__PURE__ */ jsxRuntime.jsx("div", { className: hdFooter(), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
819
|
+
"a",
|
|
820
|
+
{
|
|
821
|
+
href: "#",
|
|
822
|
+
className: hdFooterLink(),
|
|
823
|
+
onClick: (e) => {
|
|
824
|
+
e.preventDefault();
|
|
825
|
+
onViewAll();
|
|
826
|
+
setOpen(false);
|
|
827
|
+
},
|
|
828
|
+
children: viewAllLabel
|
|
829
|
+
}
|
|
830
|
+
) })
|
|
831
|
+
]
|
|
832
|
+
}
|
|
833
|
+
)
|
|
774
834
|
] });
|
|
775
835
|
}
|
|
776
836
|
function NotificationRow({ item }) {
|
|
@@ -984,28 +1044,12 @@ function HeaderMessages({ config, className }) {
|
|
|
984
1044
|
const [open, setOpen] = React.useState(false);
|
|
985
1045
|
const [activeFilter, setActiveFilter] = React.useState(filters[0]?.id ?? "all");
|
|
986
1046
|
const [search, setSearch] = React.useState("");
|
|
987
|
-
const wrapRef = React.useRef(null);
|
|
988
1047
|
const unreadCount = items.filter((m) => m.unread).length;
|
|
989
|
-
React.useEffect(() => {
|
|
990
|
-
if (!open) return;
|
|
991
|
-
const onClick = (e) => {
|
|
992
|
-
if (!wrapRef.current?.contains(e.target)) setOpen(false);
|
|
993
|
-
};
|
|
994
|
-
const onEsc = (e) => {
|
|
995
|
-
if (e.key === "Escape") setOpen(false);
|
|
996
|
-
};
|
|
997
|
-
document.addEventListener("mousedown", onClick);
|
|
998
|
-
document.addEventListener("keydown", onEsc);
|
|
999
|
-
return () => {
|
|
1000
|
-
document.removeEventListener("mousedown", onClick);
|
|
1001
|
-
document.removeEventListener("keydown", onEsc);
|
|
1002
|
-
};
|
|
1003
|
-
}, [open]);
|
|
1004
1048
|
const filtered = items.filter(filters.find((f) => f.id === activeFilter)?.predicate ?? (() => true)).filter(
|
|
1005
1049
|
(m) => search ? m.name.toLowerCase().includes(search.toLowerCase()) : true
|
|
1006
1050
|
);
|
|
1007
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1008
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1051
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(Popover, { open, onOpenChange: setOpen, children: [
|
|
1052
|
+
/* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1009
1053
|
chipGroup.Button,
|
|
1010
1054
|
{
|
|
1011
1055
|
color: "secondary",
|
|
@@ -1014,96 +1058,105 @@ function HeaderMessages({ config, className }) {
|
|
|
1014
1058
|
className: "rounded-radius-md relative",
|
|
1015
1059
|
"aria-label": "Mensagens",
|
|
1016
1060
|
title: "Mensagens",
|
|
1017
|
-
"aria-expanded": open,
|
|
1018
|
-
onClick: () => setOpen((o) => !o),
|
|
1019
1061
|
children: [
|
|
1020
1062
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessageSquare, {}),
|
|
1021
1063
|
unreadCount > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: headerIconBtnBadge({ kind: "brand" }), "aria-hidden": "true" })
|
|
1022
1064
|
]
|
|
1023
1065
|
}
|
|
1024
|
-
),
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1066
|
+
) }),
|
|
1067
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1068
|
+
PopoverContent,
|
|
1069
|
+
{
|
|
1070
|
+
align: "end",
|
|
1071
|
+
className: chipGroup.cn(
|
|
1072
|
+
"w-[380px] max-w-[calc(100vw-32px)] max-h-[520px] p-0 flex flex-col overflow-hidden",
|
|
1073
|
+
className
|
|
1074
|
+
),
|
|
1075
|
+
"aria-label": "Mensagens",
|
|
1076
|
+
children: [
|
|
1077
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdTop(), children: [
|
|
1078
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdHeader(), children: [
|
|
1079
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdTitle(), children: [
|
|
1080
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: "Conversas" }),
|
|
1081
|
+
unreadCount > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: hdTitleCount(), children: unreadCount })
|
|
1082
|
+
] }),
|
|
1083
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdHeaderActions(), children: [
|
|
1084
|
+
onNewMessage && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1085
|
+
chipGroup.Button,
|
|
1086
|
+
{
|
|
1087
|
+
color: "secondary",
|
|
1088
|
+
variant: "ghost",
|
|
1089
|
+
size: "icon-2xs",
|
|
1090
|
+
className: "rounded-radius-sm",
|
|
1091
|
+
title: "Nova mensagem",
|
|
1092
|
+
onClick: onNewMessage,
|
|
1093
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.PenLine, {})
|
|
1094
|
+
}
|
|
1095
|
+
),
|
|
1096
|
+
onExpand && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1097
|
+
chipGroup.Button,
|
|
1098
|
+
{
|
|
1099
|
+
color: "secondary",
|
|
1100
|
+
variant: "ghost",
|
|
1101
|
+
size: "icon-2xs",
|
|
1102
|
+
className: "rounded-radius-sm",
|
|
1103
|
+
title: "Expandir",
|
|
1104
|
+
onClick: onExpand,
|
|
1105
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Maximize2, {})
|
|
1106
|
+
}
|
|
1107
|
+
)
|
|
1108
|
+
] })
|
|
1109
|
+
] }),
|
|
1110
|
+
showSearch && /* @__PURE__ */ jsxRuntime.jsxs(InputGroup, { size: "sm", children: [
|
|
1111
|
+
/* @__PURE__ */ jsxRuntime.jsx(InputGroupAddon, { align: "inline-start", children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Search, { strokeWidth: 1.8 }) }),
|
|
1112
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1113
|
+
InputGroupInput,
|
|
1114
|
+
{
|
|
1115
|
+
type: "text",
|
|
1116
|
+
placeholder: searchPlaceholder,
|
|
1117
|
+
value: search,
|
|
1118
|
+
onChange: (e) => setSearch(e.target.value)
|
|
1119
|
+
}
|
|
1120
|
+
)
|
|
1121
|
+
] }),
|
|
1122
|
+
filters.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1123
|
+
chipGroup.ChipGroup,
|
|
1047
1124
|
{
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1125
|
+
type: "single",
|
|
1126
|
+
value: activeFilter,
|
|
1127
|
+
onValueChange: (v) => v && setActiveFilter(v),
|
|
1128
|
+
size: "lg",
|
|
1129
|
+
ariaLabel: "Filtrar mensagens",
|
|
1130
|
+
children: filters.map((f) => {
|
|
1131
|
+
const count = items.filter(f.predicate ?? (() => true)).length;
|
|
1132
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(chipGroup.ChipGroupItem, { value: f.id, children: [
|
|
1133
|
+
f.label,
|
|
1134
|
+
count > 0 && ` (${count})`
|
|
1135
|
+
] }, f.id);
|
|
1136
|
+
})
|
|
1055
1137
|
}
|
|
1056
1138
|
)
|
|
1057
|
-
] })
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1062
|
-
|
|
1139
|
+
] }),
|
|
1140
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: hdBody(), children: filtered.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdEmpty(), children: [
|
|
1141
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessageSquare, { size: 28, strokeWidth: 1.4 }),
|
|
1142
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: hdEmptyText(), children: emptyMessage })
|
|
1143
|
+
] }) : filtered.map((m) => /* @__PURE__ */ jsxRuntime.jsx(MessageRow, { item: m }, m.id)) }),
|
|
1144
|
+
onViewAll && /* @__PURE__ */ jsxRuntime.jsx("div", { className: hdFooter(), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1145
|
+
"a",
|
|
1063
1146
|
{
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1147
|
+
href: "#",
|
|
1148
|
+
className: hdFooterLink(),
|
|
1149
|
+
onClick: (e) => {
|
|
1150
|
+
e.preventDefault();
|
|
1151
|
+
onViewAll();
|
|
1152
|
+
setOpen(false);
|
|
1153
|
+
},
|
|
1154
|
+
children: viewAllLabel
|
|
1068
1155
|
}
|
|
1069
|
-
)
|
|
1070
|
-
]
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
{
|
|
1074
|
-
type: "single",
|
|
1075
|
-
value: activeFilter,
|
|
1076
|
-
onValueChange: (v) => v && setActiveFilter(v),
|
|
1077
|
-
size: "lg",
|
|
1078
|
-
ariaLabel: "Filtrar mensagens",
|
|
1079
|
-
children: filters.map((f) => {
|
|
1080
|
-
const count = items.filter(f.predicate ?? (() => true)).length;
|
|
1081
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(chipGroup.ChipGroupItem, { value: f.id, children: [
|
|
1082
|
-
f.label,
|
|
1083
|
-
count > 0 && ` (${count})`
|
|
1084
|
-
] }, f.id);
|
|
1085
|
-
})
|
|
1086
|
-
}
|
|
1087
|
-
)
|
|
1088
|
-
] }),
|
|
1089
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: hdBody(), children: filtered.length === 0 ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: hdEmpty(), children: [
|
|
1090
|
-
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessageSquare, { size: 28, strokeWidth: 1.4 }),
|
|
1091
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: hdEmptyText(), children: emptyMessage })
|
|
1092
|
-
] }) : filtered.map((m) => /* @__PURE__ */ jsxRuntime.jsx(MessageRow, { item: m }, m.id)) }),
|
|
1093
|
-
onViewAll && /* @__PURE__ */ jsxRuntime.jsx("div", { className: hdFooter(), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1094
|
-
"a",
|
|
1095
|
-
{
|
|
1096
|
-
href: "#",
|
|
1097
|
-
className: hdFooterLink(),
|
|
1098
|
-
onClick: (e) => {
|
|
1099
|
-
e.preventDefault();
|
|
1100
|
-
onViewAll();
|
|
1101
|
-
setOpen(false);
|
|
1102
|
-
},
|
|
1103
|
-
children: viewAllLabel
|
|
1104
|
-
}
|
|
1105
|
-
) })
|
|
1106
|
-
] })
|
|
1156
|
+
) })
|
|
1157
|
+
]
|
|
1158
|
+
}
|
|
1159
|
+
)
|
|
1107
1160
|
] });
|
|
1108
1161
|
}
|
|
1109
1162
|
function MessageRow({ item }) {
|
|
@@ -1139,6 +1192,7 @@ function MessageRow({ item }) {
|
|
|
1139
1192
|
}
|
|
1140
1193
|
const DropdownMenu = DropdownMenuPrimitive__namespace.Root;
|
|
1141
1194
|
const DropdownMenuTrigger = DropdownMenuPrimitive__namespace.Trigger;
|
|
1195
|
+
const DropdownMenuGroup = DropdownMenuPrimitive__namespace.Group;
|
|
1142
1196
|
const DropdownMenuSub = DropdownMenuPrimitive__namespace.Sub;
|
|
1143
1197
|
const DropdownMenuRadioGroup = DropdownMenuPrimitive__namespace.RadioGroup;
|
|
1144
1198
|
const CONTAINER_CLASSES = [
|
|
@@ -1159,6 +1213,15 @@ const CONTAINER_CLASSES = [
|
|
|
1159
1213
|
"data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
1160
1214
|
"origin-[--radix-dropdown-menu-content-transform-origin]"
|
|
1161
1215
|
].join(" ");
|
|
1216
|
+
const MOBILE_SHEET_CLASSES = [
|
|
1217
|
+
"max-md:w-full max-md:min-w-0 max-md:max-w-none",
|
|
1218
|
+
"max-md:!max-h-[92vh]",
|
|
1219
|
+
"max-md:rounded-b-none max-md:rounded-t-[12px]",
|
|
1220
|
+
"max-md:border-x-0 max-md:border-b-0",
|
|
1221
|
+
"max-md:outline-none max-md:shadow-none",
|
|
1222
|
+
"max-md:data-[state=open]:zoom-in-100 max-md:data-[state=closed]:zoom-out-100",
|
|
1223
|
+
"max-md:data-[state=open]:slide-in-from-bottom-12 max-md:data-[state=closed]:slide-out-to-bottom-12"
|
|
1224
|
+
].join(" ");
|
|
1162
1225
|
const ITEM_BASE = [
|
|
1163
1226
|
"relative flex cursor-default select-none items-center",
|
|
1164
1227
|
"gap-pad-lg px-pad-lg py-pad-md rounded-radius-sm",
|
|
@@ -1203,19 +1266,30 @@ const DropdownMenuSubContent = React__namespace.forwardRef(({ className, ...prop
|
|
|
1203
1266
|
}
|
|
1204
1267
|
));
|
|
1205
1268
|
DropdownMenuSubContent.displayName = DropdownMenuPrimitive__namespace.SubContent.displayName;
|
|
1206
|
-
const DropdownMenuContent = React__namespace.forwardRef(({ className, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ jsxRuntime.
|
|
1207
|
-
DropdownMenuPrimitive__namespace.
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1269
|
+
const DropdownMenuContent = React__namespace.forwardRef(({ className, sideOffset = 8, mobileSheet = true, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1270
|
+
mobileSheet && /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1271
|
+
"div",
|
|
1272
|
+
{
|
|
1273
|
+
"aria-hidden": "true",
|
|
1274
|
+
className: "fixed inset-0 z-[55] bg-overlay-scrim pointer-events-none md:hidden animate-in fade-in-0 duration-150"
|
|
1275
|
+
}
|
|
1276
|
+
) }),
|
|
1277
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1278
|
+
DropdownMenuPrimitive__namespace.Content,
|
|
1279
|
+
{
|
|
1280
|
+
ref,
|
|
1281
|
+
sideOffset,
|
|
1282
|
+
"data-mobile-sheet": mobileSheet ? "" : void 0,
|
|
1283
|
+
className: chipGroup.cn(
|
|
1284
|
+
CONTAINER_CLASSES,
|
|
1285
|
+
"max-h-[var(--radix-dropdown-menu-content-available-height)] overflow-y-auto overflow-x-hidden",
|
|
1286
|
+
mobileSheet && MOBILE_SHEET_CLASSES,
|
|
1287
|
+
className
|
|
1288
|
+
),
|
|
1289
|
+
...props
|
|
1290
|
+
}
|
|
1291
|
+
) })
|
|
1292
|
+
] }));
|
|
1219
1293
|
DropdownMenuContent.displayName = DropdownMenuPrimitive__namespace.Content.displayName;
|
|
1220
1294
|
const DropdownMenuItem = React__namespace.forwardRef(({ className, inset, variant = "default", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1221
1295
|
DropdownMenuPrimitive__namespace.Item,
|
|
@@ -1431,7 +1505,8 @@ const sidebarRoot = chipGroup.tv({
|
|
|
1431
1505
|
base: "relative flex h-screen w-fit bg-bg-sidebar text-fg-default font-sans",
|
|
1432
1506
|
variants: {
|
|
1433
1507
|
mobile: {
|
|
1434
|
-
|
|
1508
|
+
// w-screen: drawer ocupa 100vw (rail + panel preenchendo) e h-screen (100vh).
|
|
1509
|
+
true: "fixed inset-y-0 left-0 z-50 h-screen w-screen max-w-full transition-transform duration-200 ease-out",
|
|
1435
1510
|
false: ""
|
|
1436
1511
|
},
|
|
1437
1512
|
mobileOpen: {
|
|
@@ -1545,6 +1620,10 @@ const sidebarPanel = chipGroup.tv({
|
|
|
1545
1620
|
/** Quando true: overlay absoluto sobre o conteúdo (hover-to-expand). */
|
|
1546
1621
|
floating: {
|
|
1547
1622
|
true: "absolute left-[64px] top-0 h-full z-40"
|
|
1623
|
+
},
|
|
1624
|
+
/** Mobile: panel preenche o resto do drawer (100vw - rail) em vez de 264px fixo. */
|
|
1625
|
+
mobile: {
|
|
1626
|
+
true: "!w-auto flex-1"
|
|
1548
1627
|
}
|
|
1549
1628
|
}
|
|
1550
1629
|
});
|
|
@@ -2071,6 +2150,7 @@ function SidebarPanel({
|
|
|
2071
2150
|
context,
|
|
2072
2151
|
collapsed,
|
|
2073
2152
|
floating,
|
|
2153
|
+
mobile,
|
|
2074
2154
|
activeItemHref,
|
|
2075
2155
|
onItemClick,
|
|
2076
2156
|
contexts,
|
|
@@ -2083,7 +2163,7 @@ function SidebarPanel({
|
|
|
2083
2163
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2084
2164
|
"aside",
|
|
2085
2165
|
{
|
|
2086
|
-
className: chipGroup.cn(sidebarPanel({ collapsed, floating }), className),
|
|
2166
|
+
className: chipGroup.cn(sidebarPanel({ collapsed, floating, mobile }), className),
|
|
2087
2167
|
"aria-hidden": collapsed,
|
|
2088
2168
|
children: [
|
|
2089
2169
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: sidebarPanelHeader(), children: hasSwitcher ? /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenu, { children: [
|
|
@@ -2300,6 +2380,7 @@ function MenuSidebar({
|
|
|
2300
2380
|
context: activeContext,
|
|
2301
2381
|
collapsed: isMobile ? false : hoverExpanded ? false : collapsed,
|
|
2302
2382
|
floating: shouldFloat,
|
|
2383
|
+
mobile: isMobile,
|
|
2303
2384
|
activeItemHref: itemHref,
|
|
2304
2385
|
onItemClick: handleItemClick,
|
|
2305
2386
|
contexts,
|
|
@@ -2375,110 +2456,117 @@ function UserMenu({
|
|
|
2375
2456
|
const hasGroups = hasLayout || hasTheme || !!onSettings;
|
|
2376
2457
|
const currentLayoutLabel = hasLayout && layout ? layoutOptions.find((o) => o.id === layout)?.label : void 0;
|
|
2377
2458
|
const currentThemeLabel = hasTheme && theme ? themeOptions.find((o) => o.id === theme)?.label : void 0;
|
|
2378
|
-
return
|
|
2379
|
-
|
|
2380
|
-
|
|
2381
|
-
|
|
2382
|
-
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2386
|
-
|
|
2387
|
-
|
|
2388
|
-
|
|
2389
|
-
"
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2397
|
-
|
|
2398
|
-
|
|
2399
|
-
|
|
2400
|
-
|
|
2401
|
-
|
|
2402
|
-
|
|
2403
|
-
|
|
2404
|
-
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
2408
|
-
|
|
2409
|
-
|
|
2410
|
-
|
|
2411
|
-
|
|
2412
|
-
|
|
2413
|
-
|
|
2414
|
-
|
|
2415
|
-
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
|
-
|
|
2419
|
-
|
|
2420
|
-
|
|
2421
|
-
|
|
2422
|
-
|
|
2423
|
-
|
|
2424
|
-
|
|
2425
|
-
|
|
2426
|
-
|
|
2427
|
-
|
|
2428
|
-
|
|
2429
|
-
currentLayoutLabel && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1 text-right text-caption-sm text-fg-subtle", children: currentLayoutLabel })
|
|
2459
|
+
return (
|
|
2460
|
+
// modal={false}: dentro do drawer mobile (overlay próprio), o modo modal do
|
|
2461
|
+
// Radix injeta um dismiss/scroll-lock que entra em corrida com o gesto de
|
|
2462
|
+
// abertura → o menu abre no pointerdown e fecha no click/pointerup do mesmo
|
|
2463
|
+
// toque ("aparece e some", precisa 2-3 toques). Sem modal, o dismiss por
|
|
2464
|
+
// toque-fora continua via DismissableLayer, sem a corrida.
|
|
2465
|
+
/* @__PURE__ */ jsxRuntime.jsxs(DropdownMenu, { modal: false, children: [
|
|
2466
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2467
|
+
"button",
|
|
2468
|
+
{
|
|
2469
|
+
type: "button",
|
|
2470
|
+
"aria-label": `Menu do usuário (${user.name})`,
|
|
2471
|
+
className: [
|
|
2472
|
+
"grid place-items-center w-9 h-9 rounded-full shrink-0",
|
|
2473
|
+
"bg-bg-brand text-fg-on-brand text-caption-sm font-bold uppercase tracking-[0.02em]",
|
|
2474
|
+
"cursor-pointer transition-opacity duration-150",
|
|
2475
|
+
"hover:opacity-90",
|
|
2476
|
+
"focus-visible:outline-none focus-visible:ring-4 focus-visible:ring-ring-secondary",
|
|
2477
|
+
"data-[state=open]:ring-4 data-[state=open]:ring-ring-secondary"
|
|
2478
|
+
].join(" "),
|
|
2479
|
+
style: user.avatarColor ? { background: user.avatarColor } : void 0,
|
|
2480
|
+
children: user.avatarSrc ? /* @__PURE__ */ jsxRuntime.jsxs(Avatar, { className: "size-9", children: [
|
|
2481
|
+
/* @__PURE__ */ jsxRuntime.jsx(AvatarImage, { src: user.avatarSrc, alt: user.name }),
|
|
2482
|
+
/* @__PURE__ */ jsxRuntime.jsx(AvatarFallback, { className: "bg-transparent text-fg-on-brand", children: initials })
|
|
2483
|
+
] }) : /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": true, children: initials })
|
|
2484
|
+
}
|
|
2485
|
+
) }),
|
|
2486
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2487
|
+
DropdownMenuContent,
|
|
2488
|
+
{
|
|
2489
|
+
side: "right",
|
|
2490
|
+
align: "end",
|
|
2491
|
+
sideOffset: 12,
|
|
2492
|
+
className: "min-w-[240px]",
|
|
2493
|
+
children: [
|
|
2494
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-gp-md px-pad-lg py-pad-md", children: [
|
|
2495
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2496
|
+
Avatar,
|
|
2497
|
+
{
|
|
2498
|
+
className: "size-9 shrink-0",
|
|
2499
|
+
style: user.avatarColor ? { background: user.avatarColor } : void 0,
|
|
2500
|
+
children: [
|
|
2501
|
+
user.avatarSrc && /* @__PURE__ */ jsxRuntime.jsx(AvatarImage, { src: user.avatarSrc, alt: user.name }),
|
|
2502
|
+
/* @__PURE__ */ jsxRuntime.jsx(AvatarFallback, { className: "bg-bg-brand text-fg-on-brand text-body-xs font-bold uppercase", children: initials })
|
|
2503
|
+
]
|
|
2504
|
+
}
|
|
2505
|
+
),
|
|
2506
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col min-w-0 flex-1", children: [
|
|
2507
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-body-sm font-medium text-fg-default truncate", children: user.name }),
|
|
2508
|
+
user.email && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-caption-sm text-fg-muted truncate", children: user.email })
|
|
2509
|
+
] })
|
|
2430
2510
|
] }),
|
|
2431
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2432
|
-
|
|
2433
|
-
{
|
|
2434
|
-
|
|
2435
|
-
|
|
2436
|
-
|
|
2437
|
-
|
|
2438
|
-
|
|
2439
|
-
|
|
2440
|
-
|
|
2441
|
-
|
|
2442
|
-
|
|
2443
|
-
|
|
2444
|
-
|
|
2445
|
-
|
|
2446
|
-
|
|
2447
|
-
|
|
2448
|
-
|
|
2449
|
-
|
|
2450
|
-
|
|
2511
|
+
hasGroups && /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuSeparator, {}),
|
|
2512
|
+
hasLayout && /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuSub, { children: [
|
|
2513
|
+
/* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuSubTrigger, { children: [
|
|
2514
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.LayoutGrid, {}),
|
|
2515
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: "Layout" }),
|
|
2516
|
+
currentLayoutLabel && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1 text-right text-caption-sm text-fg-subtle", children: currentLayoutLabel })
|
|
2517
|
+
] }),
|
|
2518
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuSubContent, { sideOffset: 4, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2519
|
+
DropdownMenuRadioGroup,
|
|
2520
|
+
{
|
|
2521
|
+
value: layout,
|
|
2522
|
+
onValueChange: onLayoutChange,
|
|
2523
|
+
children: layoutOptions.map((opt) => {
|
|
2524
|
+
const Icon = opt.icon;
|
|
2525
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuRadioItem, { value: opt.id, children: [
|
|
2526
|
+
/* @__PURE__ */ jsxRuntime.jsx(Icon, {}),
|
|
2527
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: opt.label })
|
|
2528
|
+
] }, opt.id);
|
|
2529
|
+
})
|
|
2530
|
+
}
|
|
2531
|
+
) })
|
|
2451
2532
|
] }),
|
|
2452
|
-
/* @__PURE__ */ jsxRuntime.
|
|
2453
|
-
|
|
2454
|
-
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
|
|
2458
|
-
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2473
|
-
/* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuItem, { onSelect:
|
|
2474
|
-
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.
|
|
2475
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { children: "
|
|
2533
|
+
hasTheme && /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuSub, { children: [
|
|
2534
|
+
/* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuSubTrigger, { children: [
|
|
2535
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.SunMoon, {}),
|
|
2536
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: "Tema" }),
|
|
2537
|
+
currentThemeLabel && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex-1 text-right text-caption-sm text-fg-subtle", children: currentThemeLabel })
|
|
2538
|
+
] }),
|
|
2539
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuSubContent, { sideOffset: 4, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2540
|
+
DropdownMenuRadioGroup,
|
|
2541
|
+
{
|
|
2542
|
+
value: theme,
|
|
2543
|
+
onValueChange: onThemeChange,
|
|
2544
|
+
children: themeOptions.map((opt) => {
|
|
2545
|
+
const Icon = opt.icon;
|
|
2546
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuRadioItem, { value: opt.id, children: [
|
|
2547
|
+
/* @__PURE__ */ jsxRuntime.jsx(Icon, {}),
|
|
2548
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: opt.label })
|
|
2549
|
+
] }, opt.id);
|
|
2550
|
+
})
|
|
2551
|
+
}
|
|
2552
|
+
) })
|
|
2553
|
+
] }),
|
|
2554
|
+
onSettings && /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuItem, { onSelect: onSettings, children: [
|
|
2555
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.Settings, {}),
|
|
2556
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: "Configurações" })
|
|
2557
|
+
] }),
|
|
2558
|
+
onLogout && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
2559
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuSeparator, {}),
|
|
2560
|
+
/* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuItem, { onSelect: onLogout, children: [
|
|
2561
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.LogOut, {}),
|
|
2562
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: "Sair" })
|
|
2563
|
+
] })
|
|
2476
2564
|
] })
|
|
2477
|
-
]
|
|
2478
|
-
|
|
2479
|
-
|
|
2480
|
-
)
|
|
2481
|
-
|
|
2565
|
+
]
|
|
2566
|
+
}
|
|
2567
|
+
)
|
|
2568
|
+
] })
|
|
2569
|
+
);
|
|
2482
2570
|
}
|
|
2483
2571
|
const root = chipGroup.tv({
|
|
2484
2572
|
base: [
|
|
@@ -2567,11 +2655,17 @@ function AppShell({
|
|
|
2567
2655
|
}) {
|
|
2568
2656
|
const [internalCollapsed, setInternalCollapsed] = React.useState(defaultMenuCollapsed);
|
|
2569
2657
|
const menuCollapsed = controlledCollapsed ?? internalCollapsed;
|
|
2658
|
+
const isMobile = useMediaQuery("(max-width: 767px)");
|
|
2659
|
+
const [mobileMenuOpen, setMobileMenuOpen] = React.useState(false);
|
|
2570
2660
|
const toggleMenuCollapsed = React.useCallback(() => {
|
|
2571
2661
|
const next = !menuCollapsed;
|
|
2572
2662
|
if (controlledCollapsed === void 0) setInternalCollapsed(next);
|
|
2573
2663
|
onMenuCollapseChange?.(next);
|
|
2574
2664
|
}, [menuCollapsed, controlledCollapsed, onMenuCollapseChange]);
|
|
2665
|
+
const handleToggleMenu = React.useCallback(() => {
|
|
2666
|
+
if (isMobile) setMobileMenuOpen((o) => !o);
|
|
2667
|
+
else toggleMenuCollapsed();
|
|
2668
|
+
}, [isMobile, toggleMenuCollapsed]);
|
|
2575
2669
|
const userNode = user ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2576
2670
|
UserMenu,
|
|
2577
2671
|
{
|
|
@@ -2602,7 +2696,9 @@ function AppShell({
|
|
|
2602
2696
|
onPanelCollapseChange: (next) => {
|
|
2603
2697
|
if (controlledCollapsed === void 0) setInternalCollapsed(next);
|
|
2604
2698
|
onMenuCollapseChange?.(next);
|
|
2605
|
-
}
|
|
2699
|
+
},
|
|
2700
|
+
mobileOpen: mobileMenuOpen,
|
|
2701
|
+
onMobileOpenChange: setMobileMenuOpen
|
|
2606
2702
|
}
|
|
2607
2703
|
),
|
|
2608
2704
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: main(), children: [
|
|
@@ -2610,7 +2706,7 @@ function AppShell({
|
|
|
2610
2706
|
Header,
|
|
2611
2707
|
{
|
|
2612
2708
|
breadcrumb,
|
|
2613
|
-
onCollapseMenu:
|
|
2709
|
+
onCollapseMenu: handleToggleMenu,
|
|
2614
2710
|
menuCollapsed,
|
|
2615
2711
|
commandGroups,
|
|
2616
2712
|
commandPlaceholder,
|
|
@@ -2641,14 +2737,23 @@ AppShell.displayName = "AppShell";
|
|
|
2641
2737
|
exports.AppShell = AppShell;
|
|
2642
2738
|
exports.Avatar = Avatar;
|
|
2643
2739
|
exports.AvatarFallback = AvatarFallback;
|
|
2740
|
+
exports.Command = Command;
|
|
2741
|
+
exports.CommandDialog = CommandDialog;
|
|
2742
|
+
exports.CommandEmpty = CommandEmpty;
|
|
2743
|
+
exports.CommandGroup = CommandGroup;
|
|
2744
|
+
exports.CommandInput = CommandInput;
|
|
2745
|
+
exports.CommandItem = CommandItem;
|
|
2746
|
+
exports.CommandList = CommandList;
|
|
2644
2747
|
exports.Dialog = Dialog;
|
|
2645
2748
|
exports.DialogClose = DialogClose;
|
|
2646
2749
|
exports.DialogContent = DialogContent;
|
|
2750
|
+
exports.DialogDescription = DialogDescription;
|
|
2647
2751
|
exports.DialogTitle = DialogTitle;
|
|
2648
2752
|
exports.DialogTrigger = DialogTrigger;
|
|
2649
2753
|
exports.DropdownMenu = DropdownMenu;
|
|
2650
2754
|
exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem;
|
|
2651
2755
|
exports.DropdownMenuContent = DropdownMenuContent;
|
|
2756
|
+
exports.DropdownMenuGroup = DropdownMenuGroup;
|
|
2652
2757
|
exports.DropdownMenuItem = DropdownMenuItem;
|
|
2653
2758
|
exports.DropdownMenuLabel = DropdownMenuLabel;
|
|
2654
2759
|
exports.DropdownMenuRadioGroup = DropdownMenuRadioGroup;
|
|
@@ -2668,6 +2773,10 @@ exports.InputGroupInput = InputGroupInput;
|
|
|
2668
2773
|
exports.InputGroupText = InputGroupText;
|
|
2669
2774
|
exports.InputGroupTextarea = InputGroupTextarea;
|
|
2670
2775
|
exports.MenuSidebar = MenuSidebar;
|
|
2776
|
+
exports.Popover = Popover;
|
|
2777
|
+
exports.PopoverAnchor = PopoverAnchor;
|
|
2778
|
+
exports.PopoverContent = PopoverContent;
|
|
2779
|
+
exports.PopoverTrigger = PopoverTrigger;
|
|
2671
2780
|
exports.SidebarBrandIcon = SidebarBrandIcon;
|
|
2672
2781
|
exports.SidebarItem = SidebarItem;
|
|
2673
2782
|
exports.SidebarPanel = SidebarPanel;
|
|
@@ -2676,6 +2785,7 @@ exports.SidebarRail = SidebarRail;
|
|
|
2676
2785
|
exports.SidebarSection = SidebarSection;
|
|
2677
2786
|
exports.SidebarSubgroup = SidebarSubgroup;
|
|
2678
2787
|
exports.UserMenu = UserMenu;
|
|
2788
|
+
exports.inputGroupVariants = inputGroupVariants;
|
|
2679
2789
|
exports.useControllable = useControllable;
|
|
2680
2790
|
exports.useMediaQuery = useMediaQuery;
|
|
2681
|
-
//# sourceMappingURL=app-shell-
|
|
2791
|
+
//# sourceMappingURL=app-shell-CPx9X7zP.cjs.map
|