@pallasoft/ps-internal-components 1.0.0 → 1.0.1
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/dist/components/ps-alert-description.js +41 -5
- package/dist/components/ps-alert-dialog-action.js +43 -7
- package/dist/components/ps-alert-dialog-cancel.js +43 -7
- package/dist/components/ps-alert-dialog-content.js +44 -8
- package/dist/components/ps-alert-dialog-description.js +42 -6
- package/dist/components/ps-alert-dialog-footer.js +8 -4
- package/dist/components/ps-alert-dialog-header.js +8 -4
- package/dist/components/ps-alert-dialog-overlay.js +42 -6
- package/dist/components/ps-alert-dialog-portal.js +38 -2
- package/dist/components/ps-alert-dialog-title.js +42 -6
- package/dist/components/ps-alert-dialog-trigger.js +38 -2
- package/dist/components/ps-alert-dialog.js +38 -2
- package/dist/components/ps-alert-title.js +41 -5
- package/dist/components/ps-alert.js +42 -6
- package/dist/components/ps-app-header.js +56 -19
- package/dist/components/ps-app-switcher-section.js +7 -3
- package/dist/components/ps-app-switcher-tile.js +44 -7
- package/dist/components/ps-app-switcher.js +52 -15
- package/dist/components/ps-avatar-fallback.js +42 -6
- package/dist/components/ps-avatar-image.js +42 -6
- package/dist/components/ps-avatar.js +43 -7
- package/dist/components/ps-badge.js +11 -7
- package/dist/components/ps-breadcrumb-ellipsis.js +9 -5
- package/dist/components/ps-breadcrumb-item.js +41 -5
- package/dist/components/ps-breadcrumb-link.js +44 -8
- package/dist/components/ps-breadcrumb-list.js +41 -5
- package/dist/components/ps-breadcrumb-page.js +41 -5
- package/dist/components/ps-breadcrumb-separator.js +9 -5
- package/dist/components/ps-breadcrumb.js +40 -4
- package/dist/components/ps-button.js +45 -9
- package/dist/components/ps-calendar.js +16 -12
- package/dist/components/ps-card-content.js +41 -5
- package/dist/components/ps-card-description.js +41 -5
- package/dist/components/ps-card-footer.js +41 -5
- package/dist/components/ps-card-header.js +41 -5
- package/dist/components/ps-card-title.js +41 -5
- package/dist/components/ps-card.js +42 -6
- package/dist/components/ps-chart-container.js +47 -10
- package/dist/components/ps-chart-legend-content.js +15 -11
- package/dist/components/ps-chart-legend.js +38 -2
- package/dist/components/ps-chart-primitives.js +50 -14
- package/dist/components/ps-chart-style.js +9 -5
- package/dist/components/ps-chart-tooltip-content.js +55 -18
- package/dist/components/ps-chart-tooltip.js +38 -2
- package/dist/components/ps-checkbox.js +43 -7
- package/dist/components/ps-combobox.js +55 -18
- package/dist/components/ps-command-dialog.js +10 -6
- package/dist/components/ps-command-empty.js +41 -5
- package/dist/components/ps-command-group.js +42 -6
- package/dist/components/ps-command-input.js +43 -7
- package/dist/components/ps-command-item.js +42 -6
- package/dist/components/ps-command-list.js +42 -6
- package/dist/components/ps-command-separator.js +42 -6
- package/dist/components/ps-command-shortcut.js +9 -5
- package/dist/components/ps-command.js +42 -6
- package/dist/components/ps-date-picker.js +54 -17
- package/dist/components/ps-dialog-close.js +38 -2
- package/dist/components/ps-dialog-content.js +45 -9
- package/dist/components/ps-dialog-description.js +42 -6
- package/dist/components/ps-dialog-footer.js +8 -4
- package/dist/components/ps-dialog-header.js +8 -4
- package/dist/components/ps-dialog-overlay.js +42 -6
- package/dist/components/ps-dialog-portal.js +38 -2
- package/dist/components/ps-dialog-title.js +42 -6
- package/dist/components/ps-dialog-trigger.js +38 -2
- package/dist/components/ps-dialog.js +38 -2
- package/dist/components/ps-dropdown-menu-checkbox-item.js +43 -7
- package/dist/components/ps-dropdown-menu-content.js +42 -6
- package/dist/components/ps-dropdown-menu-group.js +38 -2
- package/dist/components/ps-dropdown-menu-item.js +42 -6
- package/dist/components/ps-dropdown-menu-label.js +42 -6
- package/dist/components/ps-dropdown-menu-portal.js +38 -2
- package/dist/components/ps-dropdown-menu-radio-group.js +38 -2
- package/dist/components/ps-dropdown-menu-radio-item.js +43 -7
- package/dist/components/ps-dropdown-menu-separator.js +42 -6
- package/dist/components/ps-dropdown-menu-shortcut.js +9 -5
- package/dist/components/ps-dropdown-menu-sub-content.js +42 -6
- package/dist/components/ps-dropdown-menu-sub-trigger.js +43 -7
- package/dist/components/ps-dropdown-menu-sub.js +38 -2
- package/dist/components/ps-dropdown-menu-trigger.js +38 -2
- package/dist/components/ps-dropdown-menu.js +38 -2
- package/dist/components/ps-email-input.js +46 -10
- package/dist/components/ps-empty-content.js +41 -5
- package/dist/components/ps-empty-description.js +41 -5
- package/dist/components/ps-empty-media.js +41 -5
- package/dist/components/ps-empty-panel.js +41 -5
- package/dist/components/ps-empty-title.js +41 -5
- package/dist/components/ps-empty.js +41 -5
- package/dist/components/ps-field-content.js +41 -5
- package/dist/components/ps-field-description.js +41 -5
- package/dist/components/ps-field-error.js +41 -5
- package/dist/components/ps-field-group.js +41 -5
- package/dist/components/ps-field-label.js +42 -6
- package/dist/components/ps-field.js +42 -6
- package/dist/components/ps-file-picker.js +48 -11
- package/dist/components/ps-input-group.js +7 -3
- package/dist/components/ps-input.js +44 -8
- package/dist/components/ps-kbd.js +41 -5
- package/dist/components/ps-label.js +43 -7
- package/dist/components/ps-money-input.js +48 -12
- package/dist/components/ps-navigation-progress.js +53 -16
- package/dist/components/ps-not-found.js +8 -4
- package/dist/components/ps-option-select.js +14 -10
- package/dist/components/ps-password-input.js +47 -11
- package/dist/components/ps-percent-input.js +46 -10
- package/dist/components/ps-phone-input.js +64 -27
- package/dist/components/ps-popover-anchor.js +38 -2
- package/dist/components/ps-popover-content.js +42 -6
- package/dist/components/ps-popover-trigger.js +38 -2
- package/dist/components/ps-popover.js +38 -2
- package/dist/components/ps-progress.js +42 -6
- package/dist/components/ps-radio-group-item.js +44 -8
- package/dist/components/ps-radio-group.js +43 -7
- package/dist/components/ps-root-error.js +8 -4
- package/dist/components/ps-scroll-area.js +43 -7
- package/dist/components/ps-scroll-bar.js +42 -6
- package/dist/components/ps-select-content.js +46 -10
- package/dist/components/ps-select-group.js +38 -2
- package/dist/components/ps-select-item.js +43 -7
- package/dist/components/ps-select-label.js +42 -6
- package/dist/components/ps-select-scroll-down-button.js +43 -7
- package/dist/components/ps-select-scroll-up-button.js +43 -7
- package/dist/components/ps-select-separator.js +42 -6
- package/dist/components/ps-select-trigger.js +44 -8
- package/dist/components/ps-select-value.js +38 -2
- package/dist/components/ps-select.js +38 -2
- package/dist/components/ps-separator.js +42 -6
- package/dist/components/ps-sheet-close.js +38 -2
- package/dist/components/ps-sheet-content.js +46 -10
- package/dist/components/ps-sheet-description.js +42 -6
- package/dist/components/ps-sheet-footer.js +8 -4
- package/dist/components/ps-sheet-header.js +8 -4
- package/dist/components/ps-sheet-overlay.js +42 -6
- package/dist/components/ps-sheet-portal.js +38 -2
- package/dist/components/ps-sheet-title.js +42 -6
- package/dist/components/ps-sheet-trigger.js +38 -2
- package/dist/components/ps-sheet.js +38 -2
- package/dist/components/ps-skeleton.js +8 -4
- package/dist/components/ps-spinner.js +42 -6
- package/dist/components/ps-status-panel.js +41 -5
- package/dist/components/ps-switch.js +42 -6
- package/dist/components/ps-table-body.js +41 -5
- package/dist/components/ps-table-caption.js +41 -5
- package/dist/components/ps-table-cell.js +41 -5
- package/dist/components/ps-table-footer.js +41 -5
- package/dist/components/ps-table-head.js +41 -5
- package/dist/components/ps-table-header.js +41 -5
- package/dist/components/ps-table-row.js +41 -5
- package/dist/components/ps-table.js +41 -5
- package/dist/components/ps-tabs-content.js +42 -6
- package/dist/components/ps-tabs-list.js +42 -6
- package/dist/components/ps-tabs-trigger.js +42 -6
- package/dist/components/ps-tabs.js +38 -2
- package/dist/components/ps-textarea.js +42 -6
- package/dist/components/ps-toggle-group-item.js +46 -10
- package/dist/components/ps-toggle-group.js +43 -7
- package/dist/components/ps-toggle.js +43 -7
- package/dist/components/ps-tooltip-content.js +42 -6
- package/dist/components/ps-tooltip-provider.js +38 -2
- package/dist/components/ps-tooltip-trigger.js +38 -2
- package/dist/components/ps-tooltip.js +38 -2
- package/dist/components/ps-url-input.js +48 -12
- package/dist/components/ps-workspace-badge.js +9 -5
- package/dist/components/ps-workspace-switcher.js +18 -14
- package/dist/constants/pallasoft-font-size.js +4 -1
- package/dist/constants/pallasoft-motion.js +4 -1
- package/dist/constants/pallasoft-screens.js +4 -1
- package/dist/constants/pallasoft-shared-scale.js +4 -1
- package/dist/constants/ps-alert-variants.d.ts +1 -1
- package/dist/constants/ps-alert-variants.js +5 -2
- package/dist/constants/ps-app-category-labels.js +10 -7
- package/dist/constants/ps-app-category.js +5 -2
- package/dist/constants/ps-app-key.js +5 -2
- package/dist/constants/ps-app-switcher-config.js +7 -4
- package/dist/constants/ps-badge-variants.d.ts +1 -1
- package/dist/constants/ps-badge-variants.js +5 -2
- package/dist/constants/ps-button-variants.d.ts +1 -1
- package/dist/constants/ps-button-variants.js +5 -2
- package/dist/constants/ps-chart-defaults.js +4 -1
- package/dist/constants/ps-chart-themes.js +4 -1
- package/dist/constants/ps-date-picker-config.js +4 -1
- package/dist/constants/ps-external-apps.js +23 -20
- package/dist/constants/ps-field-input-config.js +4 -1
- package/dist/constants/ps-field-orientation.js +5 -2
- package/dist/constants/ps-file-picker-config.js +4 -1
- package/dist/constants/ps-label-variants.d.ts +1 -1
- package/dist/constants/ps-label-variants.js +5 -2
- package/dist/constants/ps-navigation-progress-config.js +4 -1
- package/dist/constants/ps-navigation-state.js +5 -2
- package/dist/constants/ps-option-select-config.js +4 -1
- package/dist/constants/ps-pallasoft-app-url-field.js +5 -2
- package/dist/constants/ps-pallasoft-apps.js +19 -16
- package/dist/constants/ps-password-input-config.js +4 -1
- package/dist/constants/ps-phone-input-config.js +4 -1
- package/dist/constants/ps-root-status-messages.js +4 -1
- package/dist/constants/ps-sheet-variants.d.ts +1 -1
- package/dist/constants/ps-sheet-variants.js +5 -2
- package/dist/constants/ps-toggle-variants.d.ts +1 -1
- package/dist/constants/ps-toggle-variants.js +5 -2
- package/dist/contexts/ps-chart-context.js +38 -2
- package/dist/contexts/ps-toggle-group-context.js +38 -2
- package/dist/esm/components/ps-alert-description.js +5 -0
- package/dist/esm/components/ps-alert-dialog-action.js +8 -0
- package/dist/esm/components/ps-alert-dialog-cancel.js +8 -0
- package/dist/esm/components/ps-alert-dialog-content.js +9 -0
- package/dist/esm/components/ps-alert-dialog-description.js +7 -0
- package/dist/esm/components/ps-alert-dialog-footer.js +5 -0
- package/dist/esm/components/ps-alert-dialog-header.js +5 -0
- package/dist/esm/components/ps-alert-dialog-overlay.js +7 -0
- package/dist/esm/components/ps-alert-dialog-portal.js +3 -0
- package/dist/esm/components/ps-alert-dialog-title.js +7 -0
- package/dist/esm/components/ps-alert-dialog-trigger.js +3 -0
- package/dist/esm/components/ps-alert-dialog.js +3 -0
- package/dist/esm/components/ps-alert-title.js +5 -0
- package/dist/esm/components/ps-alert.js +6 -0
- package/dist/esm/components/ps-app-header.js +22 -0
- package/dist/esm/components/ps-app-switcher-section.js +3 -0
- package/dist/esm/components/ps-app-switcher-tile.js +11 -0
- package/dist/esm/components/ps-app-switcher.js +16 -0
- package/dist/esm/components/ps-avatar-fallback.js +6 -0
- package/dist/esm/components/ps-avatar-image.js +6 -0
- package/dist/esm/components/ps-avatar.js +7 -0
- package/dist/esm/components/ps-badge.js +9 -0
- package/dist/esm/components/ps-breadcrumb-ellipsis.js +5 -0
- package/dist/esm/components/ps-breadcrumb-item.js +5 -0
- package/dist/esm/components/ps-breadcrumb-link.js +9 -0
- package/dist/esm/components/ps-breadcrumb-list.js +5 -0
- package/dist/esm/components/ps-breadcrumb-page.js +5 -0
- package/dist/esm/components/ps-breadcrumb-separator.js +5 -0
- package/dist/esm/components/ps-breadcrumb.js +4 -0
- package/dist/esm/components/ps-button.js +10 -0
- package/dist/esm/components/ps-calendar.js +39 -0
- package/dist/esm/components/ps-card-content.js +5 -0
- package/dist/esm/components/ps-card-description.js +5 -0
- package/dist/esm/components/ps-card-footer.js +5 -0
- package/dist/esm/components/ps-card-header.js +5 -0
- package/dist/esm/components/ps-card-title.js +5 -0
- package/dist/esm/components/ps-card.js +6 -0
- package/dist/esm/components/ps-chart-container.js +13 -0
- package/dist/esm/components/ps-chart-legend-content.js +15 -0
- package/dist/esm/components/ps-chart-legend.js +2 -0
- package/dist/esm/components/ps-chart-primitives.js +14 -0
- package/dist/esm/components/ps-chart-style.js +8 -0
- package/dist/esm/components/ps-chart-tooltip-content.js +45 -0
- package/dist/esm/components/ps-chart-tooltip.js +2 -0
- package/dist/esm/components/ps-checkbox.js +7 -0
- package/dist/esm/components/ps-combobox.js +23 -0
- package/dist/esm/components/ps-command-dialog.js +8 -0
- package/dist/esm/components/ps-command-empty.js +6 -0
- package/dist/esm/components/ps-command-group.js +7 -0
- package/dist/esm/components/ps-command-input.js +8 -0
- package/dist/esm/components/ps-command-item.js +7 -0
- package/dist/esm/components/ps-command-list.js +7 -0
- package/dist/esm/components/ps-command-separator.js +7 -0
- package/dist/esm/components/ps-command-shortcut.js +7 -0
- package/dist/esm/components/ps-command.js +7 -0
- package/dist/esm/components/ps-date-picker.js +24 -0
- package/dist/esm/components/ps-dialog-close.js +3 -0
- package/dist/esm/components/ps-dialog-content.js +10 -0
- package/dist/esm/components/ps-dialog-description.js +7 -0
- package/dist/esm/components/ps-dialog-footer.js +5 -0
- package/dist/esm/components/ps-dialog-header.js +5 -0
- package/dist/esm/components/ps-dialog-overlay.js +7 -0
- package/dist/esm/components/ps-dialog-portal.js +3 -0
- package/dist/esm/components/ps-dialog-title.js +7 -0
- package/dist/esm/components/ps-dialog-trigger.js +3 -0
- package/dist/esm/components/ps-dialog.js +3 -0
- package/dist/esm/components/ps-dropdown-menu-checkbox-item.js +7 -0
- package/dist/esm/components/ps-dropdown-menu-content.js +6 -0
- package/dist/esm/components/ps-dropdown-menu-group.js +2 -0
- package/dist/esm/components/ps-dropdown-menu-item.js +6 -0
- package/dist/esm/components/ps-dropdown-menu-label.js +6 -0
- package/dist/esm/components/ps-dropdown-menu-portal.js +2 -0
- package/dist/esm/components/ps-dropdown-menu-radio-group.js +2 -0
- package/dist/esm/components/ps-dropdown-menu-radio-item.js +7 -0
- package/dist/esm/components/ps-dropdown-menu-separator.js +6 -0
- package/dist/esm/components/ps-dropdown-menu-shortcut.js +6 -0
- package/dist/esm/components/ps-dropdown-menu-sub-content.js +6 -0
- package/dist/esm/components/ps-dropdown-menu-sub-trigger.js +7 -0
- package/dist/esm/components/ps-dropdown-menu-sub.js +2 -0
- package/dist/esm/components/ps-dropdown-menu-trigger.js +2 -0
- package/dist/esm/components/ps-dropdown-menu.js +2 -0
- package/dist/esm/components/ps-email-input.js +12 -0
- package/dist/esm/components/ps-empty-content.js +5 -0
- package/dist/esm/components/ps-empty-description.js +5 -0
- package/dist/esm/components/ps-empty-media.js +5 -0
- package/dist/esm/components/ps-empty-panel.js +5 -0
- package/dist/esm/components/ps-empty-title.js +5 -0
- package/dist/esm/components/ps-empty.js +5 -0
- package/dist/esm/components/ps-field-content.js +5 -0
- package/dist/esm/components/ps-field-description.js +5 -0
- package/dist/esm/components/ps-field-error.js +5 -0
- package/dist/esm/components/ps-field-group.js +5 -0
- package/dist/esm/components/ps-field-label.js +6 -0
- package/dist/esm/components/ps-field.js +8 -0
- package/dist/esm/components/ps-file-picker.js +32 -0
- package/dist/esm/components/ps-input-group.js +3 -0
- package/dist/esm/components/ps-input.js +10 -0
- package/dist/esm/components/ps-kbd.js +5 -0
- package/dist/esm/components/ps-label.js +7 -0
- package/dist/esm/components/ps-money-input.js +27 -0
- package/dist/esm/components/ps-navigation-progress.js +28 -0
- package/dist/esm/components/ps-not-found.js +4 -0
- package/dist/esm/components/ps-option-select.js +12 -0
- package/dist/esm/components/ps-password-input.js +14 -0
- package/dist/esm/components/ps-percent-input.js +12 -0
- package/dist/esm/components/ps-phone-input.js +40 -0
- package/dist/esm/components/ps-popover-anchor.js +3 -0
- package/dist/esm/components/ps-popover-content.js +7 -0
- package/dist/esm/components/ps-popover-trigger.js +3 -0
- package/dist/esm/components/ps-popover.js +3 -0
- package/dist/esm/components/ps-progress.js +6 -0
- package/dist/esm/components/ps-radio-group-item.js +10 -0
- package/dist/esm/components/ps-radio-group.js +9 -0
- package/dist/esm/components/ps-root-error.js +4 -0
- package/dist/esm/components/ps-scroll-area.js +7 -0
- package/dist/esm/components/ps-scroll-bar.js +6 -0
- package/dist/esm/components/ps-select-content.js +10 -0
- package/dist/esm/components/ps-select-group.js +2 -0
- package/dist/esm/components/ps-select-item.js +7 -0
- package/dist/esm/components/ps-select-label.js +6 -0
- package/dist/esm/components/ps-select-scroll-down-button.js +7 -0
- package/dist/esm/components/ps-select-scroll-up-button.js +7 -0
- package/dist/esm/components/ps-select-separator.js +6 -0
- package/dist/esm/components/ps-select-trigger.js +8 -0
- package/dist/esm/components/ps-select-value.js +2 -0
- package/dist/esm/components/ps-select.js +2 -0
- package/dist/esm/components/ps-separator.js +7 -0
- package/dist/esm/components/ps-sheet-close.js +2 -0
- package/dist/esm/components/ps-sheet-content.js +10 -0
- package/dist/esm/components/ps-sheet-description.js +6 -0
- package/dist/esm/components/ps-sheet-footer.js +4 -0
- package/dist/esm/components/ps-sheet-header.js +4 -0
- package/dist/esm/components/ps-sheet-overlay.js +6 -0
- package/dist/esm/components/ps-sheet-portal.js +2 -0
- package/dist/esm/components/ps-sheet-title.js +6 -0
- package/dist/esm/components/ps-sheet-trigger.js +2 -0
- package/dist/esm/components/ps-sheet.js +2 -0
- package/dist/esm/components/ps-skeleton.js +5 -0
- package/dist/esm/components/ps-spinner.js +6 -0
- package/dist/esm/components/ps-status-panel.js +5 -0
- package/dist/esm/components/ps-switch.js +6 -0
- package/dist/esm/components/ps-table-body.js +5 -0
- package/dist/esm/components/ps-table-caption.js +5 -0
- package/dist/esm/components/ps-table-cell.js +5 -0
- package/dist/esm/components/ps-table-footer.js +5 -0
- package/dist/esm/components/ps-table-head.js +5 -0
- package/dist/esm/components/ps-table-header.js +5 -0
- package/dist/esm/components/ps-table-row.js +5 -0
- package/dist/esm/components/ps-table.js +5 -0
- package/dist/esm/components/ps-tabs-content.js +6 -0
- package/dist/esm/components/ps-tabs-list.js +6 -0
- package/dist/esm/components/ps-tabs-trigger.js +6 -0
- package/dist/esm/components/ps-tabs.js +2 -0
- package/dist/esm/components/ps-textarea.js +7 -0
- package/dist/esm/components/ps-toggle-group-item.js +15 -0
- package/dist/esm/components/ps-toggle-group.js +8 -0
- package/dist/esm/components/ps-toggle.js +7 -0
- package/dist/esm/components/ps-tooltip-content.js +6 -0
- package/dist/esm/components/ps-tooltip-provider.js +2 -0
- package/dist/esm/components/ps-tooltip-trigger.js +2 -0
- package/dist/esm/components/ps-tooltip.js +2 -0
- package/dist/esm/components/ps-url-input.js +22 -0
- package/dist/esm/components/ps-workspace-badge.js +8 -0
- package/dist/esm/components/ps-workspace-switcher.js +18 -0
- package/dist/esm/constants/pallasoft-font-size.js +16 -0
- package/dist/esm/constants/pallasoft-motion.js +62 -0
- package/dist/esm/constants/pallasoft-screens.js +8 -0
- package/dist/esm/constants/pallasoft-shared-scale.js +9 -0
- package/dist/esm/constants/ps-alert-variants.js +14 -0
- package/dist/esm/constants/ps-app-category-labels.js +8 -0
- package/dist/esm/constants/ps-app-category.js +8 -0
- package/dist/esm/constants/ps-app-key.js +16 -0
- package/dist/esm/constants/ps-app-switcher-config.js +11 -0
- package/dist/esm/constants/ps-badge-variants.js +16 -0
- package/dist/esm/constants/ps-button-variants.js +23 -0
- package/dist/esm/constants/ps-chart-defaults.js +7 -0
- package/dist/esm/constants/ps-chart-themes.js +4 -0
- package/dist/esm/constants/ps-date-picker-config.js +6 -0
- package/dist/esm/constants/ps-external-apps.js +60 -0
- package/dist/esm/constants/ps-field-input-config.js +6 -0
- package/dist/esm/constants/ps-field-orientation.js +5 -0
- package/dist/esm/constants/ps-file-picker-config.js +5 -0
- package/dist/esm/constants/ps-label-variants.js +2 -0
- package/dist/esm/constants/ps-navigation-progress-config.js +8 -0
- package/dist/esm/constants/ps-navigation-state.js +6 -0
- package/dist/esm/constants/ps-option-select-config.js +5 -0
- package/dist/esm/constants/ps-pallasoft-app-url-field.js +8 -0
- package/dist/esm/constants/ps-pallasoft-apps.js +37 -0
- package/dist/esm/constants/ps-password-input-config.js +4 -0
- package/dist/esm/constants/ps-phone-input-config.js +6 -0
- package/dist/esm/constants/ps-root-status-messages.js +11 -0
- package/dist/esm/constants/ps-sheet-variants.js +14 -0
- package/dist/esm/constants/ps-toggle-variants.js +18 -0
- package/dist/esm/contexts/ps-chart-context.js +2 -0
- package/dist/esm/contexts/ps-toggle-group-context.js +5 -0
- package/dist/esm/hooks/use-ps-chart.js +9 -0
- package/dist/esm/index.js +348 -0
- package/dist/esm/models/ps-alert-description-props.js +1 -0
- package/dist/esm/models/ps-alert-dialog-action-props.js +1 -0
- package/dist/esm/models/ps-alert-dialog-cancel-props.js +1 -0
- package/dist/esm/models/ps-alert-dialog-content-props.js +1 -0
- package/dist/esm/models/ps-alert-dialog-description-props.js +1 -0
- package/dist/esm/models/ps-alert-dialog-footer-props.js +1 -0
- package/dist/esm/models/ps-alert-dialog-header-props.js +1 -0
- package/dist/esm/models/ps-alert-dialog-overlay-props.js +1 -0
- package/dist/esm/models/ps-alert-dialog-title-props.js +1 -0
- package/dist/esm/models/ps-alert-props.js +1 -0
- package/dist/esm/models/ps-alert-title-props.js +1 -0
- package/dist/esm/models/ps-app-header-link-data.js +1 -0
- package/dist/esm/models/ps-app-header-nav-item-data.js +1 -0
- package/dist/esm/models/ps-app-header-props.js +1 -0
- package/dist/esm/models/ps-app-header-user-data.js +1 -0
- package/dist/esm/models/ps-app-switcher-link-data.js +1 -0
- package/dist/esm/models/ps-app-switcher-props.js +1 -0
- package/dist/esm/models/ps-app-switcher-section-data.js +1 -0
- package/dist/esm/models/ps-app-switcher-section-props.js +1 -0
- package/dist/esm/models/ps-app-switcher-tile-props.js +1 -0
- package/dist/esm/models/ps-avatar-fallback-props.js +1 -0
- package/dist/esm/models/ps-avatar-image-props.js +1 -0
- package/dist/esm/models/ps-avatar-props.js +1 -0
- package/dist/esm/models/ps-badge-props.js +1 -0
- package/dist/esm/models/ps-breadcrumb-ellipsis-props.js +1 -0
- package/dist/esm/models/ps-breadcrumb-item-props.js +1 -0
- package/dist/esm/models/ps-breadcrumb-link-props.js +1 -0
- package/dist/esm/models/ps-breadcrumb-list-props.js +1 -0
- package/dist/esm/models/ps-breadcrumb-page-props.js +1 -0
- package/dist/esm/models/ps-breadcrumb-props.js +1 -0
- package/dist/esm/models/ps-breadcrumb-separator-props.js +1 -0
- package/dist/esm/models/ps-button-props.js +1 -0
- package/dist/esm/models/ps-card-content-props.js +1 -0
- package/dist/esm/models/ps-card-description-props.js +1 -0
- package/dist/esm/models/ps-card-footer-props.js +1 -0
- package/dist/esm/models/ps-card-header-props.js +1 -0
- package/dist/esm/models/ps-card-props.js +1 -0
- package/dist/esm/models/ps-card-title-props.js +1 -0
- package/dist/esm/models/ps-chart-config-item.js +1 -0
- package/dist/esm/models/ps-chart-config.js +1 -0
- package/dist/esm/models/ps-chart-container-props.js +1 -0
- package/dist/esm/models/ps-chart-context-data.js +1 -0
- package/dist/esm/models/ps-chart-legend-content-props.js +1 -0
- package/dist/esm/models/ps-chart-style-props.js +1 -0
- package/dist/esm/models/ps-chart-tooltip-content-props.js +1 -0
- package/dist/esm/models/ps-checkbox-props.js +1 -0
- package/dist/esm/models/ps-combobox-props.js +1 -0
- package/dist/esm/models/ps-command-dialog-props.js +1 -0
- package/dist/esm/models/ps-command-empty-props.js +1 -0
- package/dist/esm/models/ps-command-group-props.js +1 -0
- package/dist/esm/models/ps-command-input-props.js +1 -0
- package/dist/esm/models/ps-command-item-props.js +1 -0
- package/dist/esm/models/ps-command-list-props.js +1 -0
- package/dist/esm/models/ps-command-props.js +1 -0
- package/dist/esm/models/ps-command-separator-props.js +1 -0
- package/dist/esm/models/ps-command-shortcut-props.js +1 -0
- package/dist/esm/models/ps-date-picker-props.js +1 -0
- package/dist/esm/models/ps-dialog-content-props.js +1 -0
- package/dist/esm/models/ps-dialog-description-props.js +1 -0
- package/dist/esm/models/ps-dialog-footer-props.js +1 -0
- package/dist/esm/models/ps-dialog-header-props.js +1 -0
- package/dist/esm/models/ps-dialog-overlay-props.js +1 -0
- package/dist/esm/models/ps-dialog-title-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-checkbox-item-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-content-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-item-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-label-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-radio-item-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-separator-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-shortcut-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-sub-content-props.js +1 -0
- package/dist/esm/models/ps-dropdown-menu-sub-trigger-props.js +1 -0
- package/dist/esm/models/ps-empty-content-props.js +1 -0
- package/dist/esm/models/ps-empty-description-props.js +1 -0
- package/dist/esm/models/ps-empty-media-props.js +1 -0
- package/dist/esm/models/ps-empty-panel-props.js +1 -0
- package/dist/esm/models/ps-empty-props.js +1 -0
- package/dist/esm/models/ps-empty-title-props.js +1 -0
- package/dist/esm/models/ps-external-app-data.js +1 -0
- package/dist/esm/models/ps-field-content-props.js +1 -0
- package/dist/esm/models/ps-field-description-props.js +1 -0
- package/dist/esm/models/ps-field-error-props.js +1 -0
- package/dist/esm/models/ps-field-group-props.js +1 -0
- package/dist/esm/models/ps-field-input-props.js +1 -0
- package/dist/esm/models/ps-field-label-props.js +1 -0
- package/dist/esm/models/ps-field-props.js +1 -0
- package/dist/esm/models/ps-file-picker-props.js +1 -0
- package/dist/esm/models/ps-input-group-props.js +1 -0
- package/dist/esm/models/ps-input-props.js +1 -0
- package/dist/esm/models/ps-kbd-props.js +1 -0
- package/dist/esm/models/ps-label-props.js +1 -0
- package/dist/esm/models/ps-money-input-props.js +1 -0
- package/dist/esm/models/ps-navigation-progress-props.js +1 -0
- package/dist/esm/models/ps-not-found-props.js +1 -0
- package/dist/esm/models/ps-option-data.js +1 -0
- package/dist/esm/models/ps-option-select-props.js +1 -0
- package/dist/esm/models/ps-pallasoft-app-data.js +1 -0
- package/dist/esm/models/ps-pallasoft-app-urls-data.js +1 -0
- package/dist/esm/models/ps-phone-input-props.js +1 -0
- package/dist/esm/models/ps-popover-content-props.js +1 -0
- package/dist/esm/models/ps-progress-props.js +1 -0
- package/dist/esm/models/ps-radio-group-item-props.js +1 -0
- package/dist/esm/models/ps-radio-group-props.js +1 -0
- package/dist/esm/models/ps-root-error-props.js +1 -0
- package/dist/esm/models/ps-scroll-area-props.js +1 -0
- package/dist/esm/models/ps-scroll-bar-props.js +1 -0
- package/dist/esm/models/ps-select-content-props.js +1 -0
- package/dist/esm/models/ps-select-item-props.js +1 -0
- package/dist/esm/models/ps-select-label-props.js +1 -0
- package/dist/esm/models/ps-select-scroll-down-button-props.js +1 -0
- package/dist/esm/models/ps-select-scroll-up-button-props.js +1 -0
- package/dist/esm/models/ps-select-separator-props.js +1 -0
- package/dist/esm/models/ps-select-trigger-props.js +1 -0
- package/dist/esm/models/ps-separator-props.js +1 -0
- package/dist/esm/models/ps-sheet-content-props.js +1 -0
- package/dist/esm/models/ps-sheet-description-props.js +1 -0
- package/dist/esm/models/ps-sheet-footer-props.js +1 -0
- package/dist/esm/models/ps-sheet-header-props.js +1 -0
- package/dist/esm/models/ps-sheet-overlay-props.js +1 -0
- package/dist/esm/models/ps-sheet-title-props.js +1 -0
- package/dist/esm/models/ps-skeleton-props.js +1 -0
- package/dist/esm/models/ps-spinner-props.js +1 -0
- package/dist/esm/models/ps-status-panel-props.js +1 -0
- package/dist/esm/models/ps-switch-props.js +1 -0
- package/dist/esm/models/ps-table-body-props.js +1 -0
- package/dist/esm/models/ps-table-caption-props.js +1 -0
- package/dist/esm/models/ps-table-cell-props.js +1 -0
- package/dist/esm/models/ps-table-footer-props.js +1 -0
- package/dist/esm/models/ps-table-head-props.js +1 -0
- package/dist/esm/models/ps-table-header-props.js +1 -0
- package/dist/esm/models/ps-table-props.js +1 -0
- package/dist/esm/models/ps-table-row-props.js +1 -0
- package/dist/esm/models/ps-tabs-content-props.js +1 -0
- package/dist/esm/models/ps-tabs-list-props.js +1 -0
- package/dist/esm/models/ps-tabs-trigger-props.js +1 -0
- package/dist/esm/models/ps-textarea-props.js +1 -0
- package/dist/esm/models/ps-toggle-group-context-data.js +1 -0
- package/dist/esm/models/ps-toggle-group-item-props.js +1 -0
- package/dist/esm/models/ps-toggle-group-multiple-props.js +1 -0
- package/dist/esm/models/ps-toggle-group-single-props.js +1 -0
- package/dist/esm/models/ps-toggle-props.js +1 -0
- package/dist/esm/models/ps-tooltip-content-props.js +1 -0
- package/dist/esm/models/ps-workspace-badge-props.js +1 -0
- package/dist/esm/models/ps-workspace-item-data.js +1 -0
- package/dist/esm/models/ps-workspace-switcher-data.js +1 -0
- package/dist/esm/models/ps-workspace-switcher-props.js +1 -0
- package/dist/esm/pallasoft-internal-tailwind-preset.js +90 -0
- package/dist/esm/services/ps-app-switcher-service.js +56 -0
- package/dist/esm/services/ps-chart-service.js +42 -0
- package/dist/esm/services/ps-class-name-service.js +7 -0
- package/dist/esm/services/ps-field-format-service.js +31 -0
- package/dist/esm/services/ps-file-size-service.js +6 -0
- package/dist/hooks/use-ps-chart.js +43 -6
- package/dist/index.js +364 -348
- package/dist/models/ps-alert-description-props.js +2 -1
- package/dist/models/ps-alert-dialog-action-props.js +2 -1
- package/dist/models/ps-alert-dialog-cancel-props.js +2 -1
- package/dist/models/ps-alert-dialog-content-props.js +2 -1
- package/dist/models/ps-alert-dialog-description-props.js +2 -1
- package/dist/models/ps-alert-dialog-footer-props.js +2 -1
- package/dist/models/ps-alert-dialog-header-props.js +2 -1
- package/dist/models/ps-alert-dialog-overlay-props.js +2 -1
- package/dist/models/ps-alert-dialog-title-props.js +2 -1
- package/dist/models/ps-alert-props.js +2 -1
- package/dist/models/ps-alert-title-props.js +2 -1
- package/dist/models/ps-app-header-link-data.js +2 -1
- package/dist/models/ps-app-header-nav-item-data.js +2 -1
- package/dist/models/ps-app-header-props.js +2 -1
- package/dist/models/ps-app-header-user-data.js +2 -1
- package/dist/models/ps-app-switcher-link-data.js +2 -1
- package/dist/models/ps-app-switcher-props.js +2 -1
- package/dist/models/ps-app-switcher-section-data.js +2 -1
- package/dist/models/ps-app-switcher-section-props.js +2 -1
- package/dist/models/ps-app-switcher-tile-props.js +2 -1
- package/dist/models/ps-avatar-fallback-props.js +2 -1
- package/dist/models/ps-avatar-image-props.js +2 -1
- package/dist/models/ps-avatar-props.js +2 -1
- package/dist/models/ps-badge-props.js +2 -1
- package/dist/models/ps-breadcrumb-ellipsis-props.js +2 -1
- package/dist/models/ps-breadcrumb-item-props.js +2 -1
- package/dist/models/ps-breadcrumb-link-props.js +2 -1
- package/dist/models/ps-breadcrumb-list-props.js +2 -1
- package/dist/models/ps-breadcrumb-page-props.js +2 -1
- package/dist/models/ps-breadcrumb-props.js +2 -1
- package/dist/models/ps-breadcrumb-separator-props.js +2 -1
- package/dist/models/ps-button-props.js +2 -1
- package/dist/models/ps-card-content-props.js +2 -1
- package/dist/models/ps-card-description-props.js +2 -1
- package/dist/models/ps-card-footer-props.js +2 -1
- package/dist/models/ps-card-header-props.js +2 -1
- package/dist/models/ps-card-props.js +2 -1
- package/dist/models/ps-card-title-props.js +2 -1
- package/dist/models/ps-chart-config-item.js +2 -1
- package/dist/models/ps-chart-config.js +2 -1
- package/dist/models/ps-chart-container-props.js +2 -1
- package/dist/models/ps-chart-context-data.js +2 -1
- package/dist/models/ps-chart-legend-content-props.js +2 -1
- package/dist/models/ps-chart-style-props.js +2 -1
- package/dist/models/ps-chart-tooltip-content-props.js +2 -1
- package/dist/models/ps-checkbox-props.js +2 -1
- package/dist/models/ps-combobox-props.js +2 -1
- package/dist/models/ps-command-dialog-props.js +2 -1
- package/dist/models/ps-command-empty-props.js +2 -1
- package/dist/models/ps-command-group-props.js +2 -1
- package/dist/models/ps-command-input-props.js +2 -1
- package/dist/models/ps-command-item-props.js +2 -1
- package/dist/models/ps-command-list-props.js +2 -1
- package/dist/models/ps-command-props.js +2 -1
- package/dist/models/ps-command-separator-props.js +2 -1
- package/dist/models/ps-command-shortcut-props.js +2 -1
- package/dist/models/ps-date-picker-props.js +2 -1
- package/dist/models/ps-dialog-content-props.js +2 -1
- package/dist/models/ps-dialog-description-props.js +2 -1
- package/dist/models/ps-dialog-footer-props.js +2 -1
- package/dist/models/ps-dialog-header-props.js +2 -1
- package/dist/models/ps-dialog-overlay-props.js +2 -1
- package/dist/models/ps-dialog-title-props.js +2 -1
- package/dist/models/ps-dropdown-menu-checkbox-item-props.js +2 -1
- package/dist/models/ps-dropdown-menu-content-props.js +2 -1
- package/dist/models/ps-dropdown-menu-item-props.js +2 -1
- package/dist/models/ps-dropdown-menu-label-props.js +2 -1
- package/dist/models/ps-dropdown-menu-radio-item-props.js +2 -1
- package/dist/models/ps-dropdown-menu-separator-props.js +2 -1
- package/dist/models/ps-dropdown-menu-shortcut-props.js +2 -1
- package/dist/models/ps-dropdown-menu-sub-content-props.js +2 -1
- package/dist/models/ps-dropdown-menu-sub-trigger-props.js +2 -1
- package/dist/models/ps-empty-content-props.js +2 -1
- package/dist/models/ps-empty-description-props.js +2 -1
- package/dist/models/ps-empty-media-props.js +2 -1
- package/dist/models/ps-empty-panel-props.js +2 -1
- package/dist/models/ps-empty-props.js +2 -1
- package/dist/models/ps-empty-title-props.js +2 -1
- package/dist/models/ps-external-app-data.js +2 -1
- package/dist/models/ps-field-content-props.js +2 -1
- package/dist/models/ps-field-description-props.js +2 -1
- package/dist/models/ps-field-error-props.js +2 -1
- package/dist/models/ps-field-group-props.js +2 -1
- package/dist/models/ps-field-input-props.js +2 -1
- package/dist/models/ps-field-label-props.js +2 -1
- package/dist/models/ps-field-props.js +2 -1
- package/dist/models/ps-file-picker-props.js +2 -1
- package/dist/models/ps-input-group-props.js +2 -1
- package/dist/models/ps-input-props.js +2 -1
- package/dist/models/ps-kbd-props.js +2 -1
- package/dist/models/ps-label-props.js +2 -1
- package/dist/models/ps-money-input-props.js +2 -1
- package/dist/models/ps-navigation-progress-props.js +2 -1
- package/dist/models/ps-not-found-props.js +2 -1
- package/dist/models/ps-option-data.js +2 -1
- package/dist/models/ps-option-select-props.js +2 -1
- package/dist/models/ps-pallasoft-app-data.js +2 -1
- package/dist/models/ps-pallasoft-app-urls-data.js +2 -1
- package/dist/models/ps-phone-input-props.js +2 -1
- package/dist/models/ps-popover-content-props.js +2 -1
- package/dist/models/ps-progress-props.js +2 -1
- package/dist/models/ps-radio-group-item-props.js +2 -1
- package/dist/models/ps-radio-group-props.js +2 -1
- package/dist/models/ps-root-error-props.js +2 -1
- package/dist/models/ps-scroll-area-props.js +2 -1
- package/dist/models/ps-scroll-bar-props.js +2 -1
- package/dist/models/ps-select-content-props.js +2 -1
- package/dist/models/ps-select-item-props.js +2 -1
- package/dist/models/ps-select-label-props.js +2 -1
- package/dist/models/ps-select-scroll-down-button-props.js +2 -1
- package/dist/models/ps-select-scroll-up-button-props.js +2 -1
- package/dist/models/ps-select-separator-props.js +2 -1
- package/dist/models/ps-select-trigger-props.js +2 -1
- package/dist/models/ps-separator-props.js +2 -1
- package/dist/models/ps-sheet-content-props.js +2 -1
- package/dist/models/ps-sheet-description-props.js +2 -1
- package/dist/models/ps-sheet-footer-props.js +2 -1
- package/dist/models/ps-sheet-header-props.js +2 -1
- package/dist/models/ps-sheet-overlay-props.js +2 -1
- package/dist/models/ps-sheet-title-props.js +2 -1
- package/dist/models/ps-skeleton-props.js +2 -1
- package/dist/models/ps-spinner-props.js +2 -1
- package/dist/models/ps-status-panel-props.js +2 -1
- package/dist/models/ps-switch-props.js +2 -1
- package/dist/models/ps-table-body-props.js +2 -1
- package/dist/models/ps-table-caption-props.js +2 -1
- package/dist/models/ps-table-cell-props.js +2 -1
- package/dist/models/ps-table-footer-props.js +2 -1
- package/dist/models/ps-table-head-props.js +2 -1
- package/dist/models/ps-table-header-props.js +2 -1
- package/dist/models/ps-table-props.js +2 -1
- package/dist/models/ps-table-row-props.js +2 -1
- package/dist/models/ps-tabs-content-props.js +2 -1
- package/dist/models/ps-tabs-list-props.js +2 -1
- package/dist/models/ps-tabs-trigger-props.js +2 -1
- package/dist/models/ps-textarea-props.js +2 -1
- package/dist/models/ps-toggle-group-context-data.js +2 -1
- package/dist/models/ps-toggle-group-item-props.js +2 -1
- package/dist/models/ps-toggle-group-multiple-props.js +2 -1
- package/dist/models/ps-toggle-group-single-props.js +2 -1
- package/dist/models/ps-toggle-props.js +2 -1
- package/dist/models/ps-tooltip-content-props.js +2 -1
- package/dist/models/ps-workspace-badge-props.js +2 -1
- package/dist/models/ps-workspace-item-data.js +2 -1
- package/dist/models/ps-workspace-switcher-data.js +2 -1
- package/dist/models/ps-workspace-switcher-props.js +2 -1
- package/dist/pallasoft-internal-tailwind-preset.js +17 -11
- package/dist/services/ps-app-switcher-service.js +16 -12
- package/dist/services/ps-chart-service.js +10 -6
- package/dist/services/ps-class-name-service.js +8 -4
- package/dist/services/ps-field-format-service.js +12 -8
- package/dist/services/ps-file-size-service.js +7 -3
- package/package.json +12 -7
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
import { PsAlertDialogOverlay } from './ps-alert-dialog-overlay.js';
|
|
7
|
+
import { PsAlertDialogPortal } from './ps-alert-dialog-portal.js';
|
|
8
|
+
export const PsAlertDialogContent = React.forwardRef(({ className, ...props }, ref) => (_jsxs(PsAlertDialogPortal, { children: [_jsx(PsAlertDialogOverlay, {}), _jsx(AlertDialogPrimitive.Content, { ref: ref, className: PsClassNameService.merge('fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg', className), ...props })] })));
|
|
9
|
+
PsAlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsAlertDialogDescription = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Description, { ref: ref, className: PsClassNameService.merge('text-sm text-muted-foreground', className), ...props })));
|
|
7
|
+
PsAlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsAlertDialogFooter = ({ className, ...props }) => (_jsx("div", { className: PsClassNameService.merge('flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2', className), ...props }));
|
|
5
|
+
PsAlertDialogFooter.displayName = 'PsAlertDialogFooter';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsAlertDialogHeader = ({ className, ...props }) => (_jsx("div", { className: PsClassNameService.merge('flex flex-col space-y-2 text-center sm:text-left', className), ...props }));
|
|
5
|
+
PsAlertDialogHeader.displayName = 'PsAlertDialogHeader';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsAlertDialogOverlay = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Overlay, { className: PsClassNameService.merge('fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0', className), ...props, ref: ref })));
|
|
7
|
+
PsAlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsAlertDialogTitle = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Title, { ref: ref, className: PsClassNameService.merge('text-lg font-semibold', className), ...props })));
|
|
7
|
+
PsAlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsAlertTitle = React.forwardRef(({ className, ...props }, ref) => (_jsx("h5", { ref: ref, className: PsClassNameService.merge('mb-1 font-medium leading-none tracking-tight', className), ...props })));
|
|
5
|
+
PsAlertTitle.displayName = 'PsAlertTitle';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsAlertVariants } from '../constants/ps-alert-variants.js';
|
|
4
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
5
|
+
export const PsAlert = React.forwardRef(({ className, variant, ...props }, ref) => (_jsx("div", { ref: ref, role: 'alert', className: PsClassNameService.merge(PsAlertVariants({ variant }), className), ...props })));
|
|
6
|
+
PsAlert.displayName = 'PsAlert';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { LogOut } from 'lucide-react';
|
|
4
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
5
|
+
import { PsAppSwitcher } from './ps-app-switcher.js';
|
|
6
|
+
import { PsAvatarFallback } from './ps-avatar-fallback.js';
|
|
7
|
+
import { PsAvatarImage } from './ps-avatar-image.js';
|
|
8
|
+
import { PsAvatar } from './ps-avatar.js';
|
|
9
|
+
import { PsButton } from './ps-button.js';
|
|
10
|
+
import { PsDropdownMenuContent } from './ps-dropdown-menu-content.js';
|
|
11
|
+
import { PsDropdownMenuItem } from './ps-dropdown-menu-item.js';
|
|
12
|
+
import { PsDropdownMenuLabel } from './ps-dropdown-menu-label.js';
|
|
13
|
+
import { PsDropdownMenuSeparator } from './ps-dropdown-menu-separator.js';
|
|
14
|
+
import { PsDropdownMenuTrigger } from './ps-dropdown-menu-trigger.js';
|
|
15
|
+
import { PsDropdownMenu } from './ps-dropdown-menu.js';
|
|
16
|
+
import { PsWorkspaceSwitcher } from './ps-workspace-switcher.js';
|
|
17
|
+
export const PsAppHeader = ({ appSwitcher, appTitle, logoAlt = 'Pallasoft logo', logoSrc, logoutHref, navItems = [], renderLink, user, workspaceSwitcher, }) => {
|
|
18
|
+
const link = (href, className, children, active) => renderLink ? (renderLink({ href, className, children, active })) : (_jsx("a", { href: href, className: className, "aria-current": active ? 'page' : undefined, children: children }));
|
|
19
|
+
return (_jsx("header", { className: 'sticky top-0 z-40 border-b bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/80', children: _jsxs("div", { className: 'mx-auto flex w-full max-w-screen-2xl flex-col gap-3 px-4 py-3 sm:px-6', children: [_jsxs("div", { className: 'flex min-w-0 items-center justify-between gap-3', children: [_jsxs("div", { className: 'flex min-w-0 flex-1 items-center gap-2.5', children: [_jsx("div", { className: 'flex size-9 shrink-0 items-center justify-center rounded-lg border bg-muted', children: _jsx("img", { alt: logoAlt, className: 'size-5 object-contain', src: logoSrc }) }), _jsx("h1", { className: 'shrink-0 truncate text-sm font-semibold text-foreground', children: appTitle }), workspaceSwitcher ? (_jsxs(_Fragment, { children: [_jsx("span", { "aria-hidden": 'true', className: 'text-muted-foreground/60', children: "/" }), _jsx(PsWorkspaceSwitcher, { switcher: workspaceSwitcher, renderLink: renderLink })] })) : null] }), _jsxs("div", { className: 'flex shrink-0 items-center gap-1.5', children: [appSwitcher ? _jsx(PsAppSwitcher, { ...appSwitcher }) : null, user ? (_jsxs(PsDropdownMenu, { children: [_jsx(PsDropdownMenuTrigger, { asChild: true, children: _jsxs(PsButton, { variant: 'outline', className: 'h-9 max-w-[min(14rem,56vw)] gap-2 px-1.5 sm:pl-1.5 sm:pr-3', children: [_jsxs(PsAvatar, { className: 'size-6', children: [user.avatarUrl ? (_jsx(PsAvatarImage, { alt: user.displayName, src: user.avatarUrl })) : null, _jsx(PsAvatarFallback, { className: 'text-xs', children: user.displayName.slice(0, 1).toUpperCase() })] }), _jsx("span", { className: 'hidden min-w-0 truncate sm:inline', children: user.displayName })] }) }), _jsxs(PsDropdownMenuContent, { align: 'end', className: 'w-56', children: [_jsxs(PsDropdownMenuLabel, { className: 'flex flex-col gap-0.5', children: [_jsx("span", { children: "Account" }), _jsx("span", { className: 'truncate text-xs font-normal text-muted-foreground', children: user.displayName })] }), _jsx(PsDropdownMenuSeparator, {}), _jsx("form", { action: logoutHref, method: 'post', children: _jsx(PsDropdownMenuItem, { asChild: true, children: _jsxs("button", { className: 'flex w-full cursor-pointer items-center gap-2', type: 'submit', children: [_jsx(LogOut, {}), "Sign out"] }) }) })] })] })) : null] })] }), navItems.length ? (_jsx("nav", { "aria-label": 'Primary', className: '-mb-px flex max-w-full gap-1 overflow-x-auto', children: navItems.map((item) => (_jsx(React.Fragment, { children: link(item.href, PsClassNameService.merge('inline-flex h-9 shrink-0 items-center rounded-md px-3 text-sm font-medium transition-colors', item.active
|
|
20
|
+
? 'bg-secondary text-secondary-foreground'
|
|
21
|
+
: 'text-muted-foreground hover:bg-accent hover:text-accent-foreground'), item.label, item.active) }, item.id))) })) : null] }) }));
|
|
22
|
+
};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { PsAppSwitcherTile } from './ps-app-switcher-tile.js';
|
|
3
|
+
export const PsAppSwitcherSection = ({ section }) => (_jsxs("section", { className: 'flex flex-col gap-1', children: [_jsx("h3", { className: 'px-2 text-xs font-medium text-muted-foreground', children: section.label }), _jsx("div", { className: 'grid grid-cols-3 gap-1', children: section.links.map((link) => (_jsx(PsAppSwitcherTile, { link: link }, `${section.category}-${link.key}`))) })] }));
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsAppSwitcherConfig } from '../constants/ps-app-switcher-config.js';
|
|
4
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
5
|
+
export const PsAppSwitcherTile = ({ link }) => {
|
|
6
|
+
const [iconIndex, setIconIndex] = React.useState(0);
|
|
7
|
+
const iconUrls = [link.iconUrl, link.fallbackIconUrl].filter((url) => Boolean(url));
|
|
8
|
+
const iconUrl = iconIndex < iconUrls.length ? iconUrls[iconIndex] : null;
|
|
9
|
+
return (_jsxs("a", { href: link.url, target: link.external ? PsAppSwitcherConfig.externalTarget : undefined, rel: link.external ? PsAppSwitcherConfig.externalRel : undefined, "aria-current": link.current ? 'page' : undefined, title: link.name, className: PsClassNameService.merge('group flex min-w-0 flex-col items-center gap-2 rounded-lg px-1 py-2.5 text-center transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring', link.current && 'hover:bg-transparent'), children: [_jsx("span", { className: PsClassNameService.merge('flex size-10 items-center justify-center overflow-hidden rounded-full border bg-background text-xs font-semibold text-foreground transition-shadow', link.current &&
|
|
10
|
+
'border-primary ring-2 ring-primary/30 ring-offset-2 ring-offset-background'), children: iconUrl ? (_jsx("img", { alt: '', className: 'size-6 object-contain', loading: 'lazy', onError: () => setIconIndex((current) => current + 1), src: iconUrl })) : (link.initials) }), _jsx("span", { className: PsClassNameService.merge('line-clamp-2 w-full text-xs leading-tight text-foreground', link.current && 'font-medium text-primary'), children: link.name })] }));
|
|
11
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { LayoutGrid } from 'lucide-react';
|
|
4
|
+
import { PsAppSwitcherConfig } from '../constants/ps-app-switcher-config.js';
|
|
5
|
+
import { PsAppSwitcherService } from '../services/ps-app-switcher-service.js';
|
|
6
|
+
import { PsAppSwitcherSection } from './ps-app-switcher-section.js';
|
|
7
|
+
import { PsButton } from './ps-button.js';
|
|
8
|
+
import { PsPopoverContent } from './ps-popover-content.js';
|
|
9
|
+
import { PsPopoverTrigger } from './ps-popover-trigger.js';
|
|
10
|
+
import { PsPopover } from './ps-popover.js';
|
|
11
|
+
import { PsScrollArea } from './ps-scroll-area.js';
|
|
12
|
+
import { PsSeparator } from './ps-separator.js';
|
|
13
|
+
export const PsAppSwitcher = ({ currentAppKey, appUrls }) => {
|
|
14
|
+
const sections = React.useMemo(() => PsAppSwitcherService.sections(appUrls, currentAppKey), [appUrls, currentAppKey]);
|
|
15
|
+
return (_jsxs(PsPopover, { children: [_jsx(PsPopoverTrigger, { asChild: true, children: _jsx(PsButton, { variant: 'ghost', size: 'icon', "aria-label": PsAppSwitcherConfig.triggerLabel, title: PsAppSwitcherConfig.title, children: _jsx(LayoutGrid, {}) }) }), _jsx(PsPopoverContent, { align: 'end', sideOffset: 8, className: 'w-[min(22rem,calc(100vw-2rem))] p-0', children: _jsx(PsScrollArea, { className: 'h-[min(32rem,calc(100vh-6rem))]', children: _jsx("div", { className: 'flex flex-col gap-3 p-3', children: sections.map((section, index) => (_jsxs(React.Fragment, { children: [index > 0 ? _jsx(PsSeparator, {}) : null, _jsx(PsAppSwitcherSection, { section: section })] }, section.category))) }) }) })] }));
|
|
16
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
4
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
5
|
+
export const PsAvatarFallback = React.forwardRef(({ className, ...props }, ref) => (_jsx(AvatarPrimitive.Fallback, { ref: ref, className: PsClassNameService.merge('flex h-full w-full items-center justify-center rounded-full bg-muted', className), ...props })));
|
|
6
|
+
PsAvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
4
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
5
|
+
export const PsAvatarImage = React.forwardRef(({ className, ...props }, ref) => (_jsx(AvatarPrimitive.Image, { ref: ref, className: PsClassNameService.merge('aspect-square h-full w-full', className), ...props })));
|
|
6
|
+
PsAvatarImage.displayName = AvatarPrimitive.Image.displayName;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
4
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
5
|
+
import { PsSkeleton } from './ps-skeleton.js';
|
|
6
|
+
export const PsAvatar = React.forwardRef(({ className, isLoading = false, ...props }, ref) => isLoading ? (_jsx(PsSkeleton, { className: PsClassNameService.merge('h-10 w-10 shrink-0 rounded-full', className) })) : (_jsx(AvatarPrimitive.Root, { ref: ref, className: PsClassNameService.merge('relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full', className), ...props })));
|
|
7
|
+
PsAvatar.displayName = AvatarPrimitive.Root.displayName;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { PsBadgeVariants } from '../constants/ps-badge-variants.js';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
import { PsSkeleton } from './ps-skeleton.js';
|
|
5
|
+
export const PsBadge = ({ className, isLoading = false, variant, ...props }) => {
|
|
6
|
+
if (isLoading)
|
|
7
|
+
return _jsx(PsSkeleton, { className: PsClassNameService.merge('h-5 w-16 rounded-full', className) });
|
|
8
|
+
return (_jsx("div", { className: PsClassNameService.merge(PsBadgeVariants({ variant }), className), ...props }));
|
|
9
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { MoreHorizontal } from 'lucide-react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsBreadcrumbEllipsis = ({ className, ...props }) => (_jsxs("span", { role: 'presentation', "aria-hidden": 'true', className: PsClassNameService.merge('flex h-9 w-9 items-center justify-center', className), ...props, children: [_jsx(MoreHorizontal, { className: 'h-4 w-4' }), _jsx("span", { className: 'sr-only', children: "More" })] }));
|
|
5
|
+
PsBreadcrumbEllipsis.displayName = 'BreadcrumbElipssis';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsBreadcrumbItem = React.forwardRef(({ className, ...props }, ref) => (_jsx("li", { ref: ref, className: PsClassNameService.merge('inline-flex items-center gap-1.5', className), ...props })));
|
|
5
|
+
PsBreadcrumbItem.displayName = 'PsBreadcrumbItem';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Slot } from '@radix-ui/react-slot';
|
|
4
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
5
|
+
export const PsBreadcrumbLink = React.forwardRef(({ asChild, className, ...props }, ref) => {
|
|
6
|
+
const Comp = asChild ? Slot : 'a';
|
|
7
|
+
return (_jsx(Comp, { ref: ref, className: PsClassNameService.merge('transition-colors hover:text-foreground', className), ...props }));
|
|
8
|
+
});
|
|
9
|
+
PsBreadcrumbLink.displayName = 'PsBreadcrumbLink';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsBreadcrumbList = React.forwardRef(({ className, ...props }, ref) => (_jsx("ol", { ref: ref, className: PsClassNameService.merge('flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5', className), ...props })));
|
|
5
|
+
PsBreadcrumbList.displayName = 'PsBreadcrumbList';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsBreadcrumbPage = React.forwardRef(({ className, ...props }, ref) => (_jsx("span", { ref: ref, role: 'link', "aria-disabled": 'true', "aria-current": 'page', className: PsClassNameService.merge('font-normal text-foreground', className), ...props })));
|
|
5
|
+
PsBreadcrumbPage.displayName = 'PsBreadcrumbPage';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronRight } from 'lucide-react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsBreadcrumbSeparator = ({ children, className, ...props }) => (_jsx("li", { role: 'presentation', "aria-hidden": 'true', className: PsClassNameService.merge('[&>svg]:w-3.5 [&>svg]:h-3.5', className), ...props, children: children !== null && children !== undefined ? children : _jsx(ChevronRight, {}) }));
|
|
5
|
+
PsBreadcrumbSeparator.displayName = 'PsBreadcrumbSeparator';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Slot } from '@radix-ui/react-slot';
|
|
4
|
+
import { PsButtonVariants } from '../constants/ps-button-variants.js';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsButton = React.forwardRef(({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
7
|
+
const Comp = asChild ? Slot : 'button';
|
|
8
|
+
return (_jsx(Comp, { className: PsClassNameService.merge(PsButtonVariants({ variant, size, className })), ref: ref, ...props }));
|
|
9
|
+
});
|
|
10
|
+
PsButton.displayName = 'PsButton';
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronDown, ChevronLeft, ChevronRight } from 'lucide-react';
|
|
3
|
+
import { DayPicker } from 'react-day-picker';
|
|
4
|
+
import { PsButtonVariants } from '../constants/ps-button-variants.js';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsCalendar = ({ className, classNames, showOutsideDays = true, ...props }) => (_jsx(DayPicker, { className: PsClassNameService.merge('p-3', className), classNames: {
|
|
7
|
+
months: 'relative flex flex-col gap-4 sm:flex-row',
|
|
8
|
+
month: 'flex w-full flex-col gap-4',
|
|
9
|
+
nav: 'absolute inset-x-0 top-0 flex w-full items-center justify-between',
|
|
10
|
+
button_previous: PsClassNameService.merge(PsButtonVariants({ variant: 'ghost', size: 'icon' }), 'size-8 p-0 aria-disabled:opacity-50'),
|
|
11
|
+
button_next: PsClassNameService.merge(PsButtonVariants({ variant: 'ghost', size: 'icon' }), 'size-8 p-0 aria-disabled:opacity-50'),
|
|
12
|
+
month_caption: 'flex h-8 w-full items-center justify-center px-8',
|
|
13
|
+
caption_label: props.captionLayout === 'dropdown'
|
|
14
|
+
? 'flex h-8 items-center gap-1 rounded-md pl-2 pr-1 text-sm font-medium [&>svg]:size-3.5 [&>svg]:text-muted-foreground'
|
|
15
|
+
: 'text-sm font-medium',
|
|
16
|
+
dropdowns: 'flex h-8 w-full items-center justify-center gap-1.5 text-sm font-medium',
|
|
17
|
+
dropdown_root: 'relative rounded-md border border-input shadow-sm has-[:focus]:border-ring has-[:focus]:ring-1 has-[:focus]:ring-ring',
|
|
18
|
+
dropdown: 'absolute inset-0 cursor-pointer opacity-0',
|
|
19
|
+
month_grid: 'w-full border-collapse',
|
|
20
|
+
weekdays: 'flex',
|
|
21
|
+
weekday: 'flex-1 select-none text-[0.8rem] font-normal text-muted-foreground',
|
|
22
|
+
week: 'mt-2 flex w-full',
|
|
23
|
+
day: 'relative aspect-square w-full select-none p-0 text-center text-sm',
|
|
24
|
+
day_button: PsClassNameService.merge(PsButtonVariants({ variant: 'ghost', size: 'icon' }), 'size-8 w-full p-0 font-normal aria-selected:opacity-100'),
|
|
25
|
+
selected: '[&>button]:bg-primary [&>button]:text-primary-foreground [&>button]:hover:bg-primary [&>button]:hover:text-primary-foreground',
|
|
26
|
+
today: '[&>button]:bg-accent [&>button]:text-accent-foreground',
|
|
27
|
+
outside: 'text-muted-foreground opacity-50',
|
|
28
|
+
disabled: 'text-muted-foreground opacity-50',
|
|
29
|
+
hidden: 'invisible',
|
|
30
|
+
...classNames,
|
|
31
|
+
}, components: {
|
|
32
|
+
Chevron: ({ orientation }) => {
|
|
33
|
+
if (orientation === 'left')
|
|
34
|
+
return _jsx(ChevronLeft, { className: 'size-4' });
|
|
35
|
+
if (orientation === 'right')
|
|
36
|
+
return _jsx(ChevronRight, { className: 'size-4' });
|
|
37
|
+
return _jsx(ChevronDown, { className: 'size-3.5' });
|
|
38
|
+
},
|
|
39
|
+
}, showOutsideDays: showOutsideDays, ...props }));
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsCardContent = React.forwardRef(({ className, ...props }, ref) => (_jsx("div", { ref: ref, className: PsClassNameService.merge('p-6 pt-0', className), ...props })));
|
|
5
|
+
PsCardContent.displayName = 'PsCardContent';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsCardDescription = React.forwardRef(({ className, ...props }, ref) => (_jsx("div", { ref: ref, className: PsClassNameService.merge('text-sm text-muted-foreground', className), ...props })));
|
|
5
|
+
PsCardDescription.displayName = 'PsCardDescription';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsCardFooter = React.forwardRef(({ className, ...props }, ref) => (_jsx("div", { ref: ref, className: PsClassNameService.merge('flex items-center p-6 pt-0', className), ...props })));
|
|
5
|
+
PsCardFooter.displayName = 'PsCardFooter';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsCardHeader = React.forwardRef(({ className, ...props }, ref) => (_jsx("div", { ref: ref, className: PsClassNameService.merge('flex flex-col space-y-1.5 p-6', className), ...props })));
|
|
5
|
+
PsCardHeader.displayName = 'PsCardHeader';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsCardTitle = React.forwardRef(({ className, ...props }, ref) => (_jsx("div", { ref: ref, className: PsClassNameService.merge('font-semibold leading-none tracking-tight', className), ...props })));
|
|
5
|
+
PsCardTitle.displayName = 'PsCardTitle';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
import { PsSkeleton } from './ps-skeleton.js';
|
|
5
|
+
export const PsCard = React.forwardRef(({ className, isLoading = false, ...props }, ref) => isLoading ? (_jsx(PsSkeleton, { className: PsClassNameService.merge('h-40 w-full rounded-xl', className) })) : (_jsx("div", { ref: ref, className: PsClassNameService.merge('rounded-xl border bg-card text-card-foreground shadow', className), ...props })));
|
|
6
|
+
PsCard.displayName = 'PsCard';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import * as RechartsPrimitive from 'recharts';
|
|
4
|
+
import { PsChartContext } from '../contexts/ps-chart-context.js';
|
|
5
|
+
import { PsChartService } from '../services/ps-chart-service.js';
|
|
6
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
7
|
+
import { PsChartStyle } from './ps-chart-style.js';
|
|
8
|
+
export const PsChartContainer = ({ id, className, children, config, ...props }) => {
|
|
9
|
+
const generated = React.useId();
|
|
10
|
+
const chartId = PsChartService.chartId(id, generated);
|
|
11
|
+
const value = React.useMemo(() => ({ config }), [config]);
|
|
12
|
+
return (_jsx(PsChartContext.Provider, { value: value, children: _jsxs("div", { "data-chart": chartId, "data-slot": 'chart', className: PsClassNameService.merge("flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-none [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-sector]:outline-none [&_.recharts-surface]:outline-none", className), ...props, children: [_jsx(PsChartStyle, { config: config, id: chartId }), _jsx(RechartsPrimitive.ResponsiveContainer, { children: children })] }) }));
|
|
13
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { PsChartDefaults } from '../constants/ps-chart-defaults.js';
|
|
3
|
+
import { usePsChart } from '../hooks/use-ps-chart.js';
|
|
4
|
+
import { PsChartService } from '../services/ps-chart-service.js';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsChartLegendContent = ({ className, hideIcon = false, payload, verticalAlign = 'bottom', nameKey, }) => {
|
|
7
|
+
const { config } = usePsChart();
|
|
8
|
+
if (payload === undefined || payload.length === 0)
|
|
9
|
+
return null;
|
|
10
|
+
return (_jsx("div", { className: PsClassNameService.merge('flex items-center justify-center gap-4', verticalAlign === 'top' ? 'pb-3' : 'pt-3', className), children: payload.map((item) => {
|
|
11
|
+
const key = `${nameKey !== undefined ? nameKey : item.dataKey !== undefined ? String(item.dataKey) : PsChartDefaults.valueKey}`;
|
|
12
|
+
const itemConfig = PsChartService.itemFor(config, item, key);
|
|
13
|
+
return (_jsxs("div", { className: 'flex items-center gap-1.5 [&>svg]:size-3 [&>svg]:text-muted-foreground', children: [itemConfig !== undefined && itemConfig.icon !== undefined && !hideIcon ? (_jsx(itemConfig.icon, {})) : (_jsx("div", { className: 'size-2 shrink-0 rounded-[2px]', style: { backgroundColor: item.color } })), itemConfig !== undefined ? itemConfig.label : null] }, String(item.value)));
|
|
14
|
+
}) }));
|
|
15
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as RechartsPrimitive from 'recharts';
|
|
2
|
+
export const PsBarChart = RechartsPrimitive.BarChart;
|
|
3
|
+
export const PsBar = RechartsPrimitive.Bar;
|
|
4
|
+
export const PsLineChart = RechartsPrimitive.LineChart;
|
|
5
|
+
export const PsLine = RechartsPrimitive.Line;
|
|
6
|
+
export const PsAreaChart = RechartsPrimitive.AreaChart;
|
|
7
|
+
export const PsArea = RechartsPrimitive.Area;
|
|
8
|
+
export const PsPieChart = RechartsPrimitive.PieChart;
|
|
9
|
+
export const PsPie = RechartsPrimitive.Pie;
|
|
10
|
+
export const PsCell = RechartsPrimitive.Cell;
|
|
11
|
+
export const PsXAxis = RechartsPrimitive.XAxis;
|
|
12
|
+
export const PsYAxis = RechartsPrimitive.YAxis;
|
|
13
|
+
export const PsCartesianGrid = RechartsPrimitive.CartesianGrid;
|
|
14
|
+
export const PsLabelList = RechartsPrimitive.LabelList;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { PsChartService } from '../services/ps-chart-service.js';
|
|
3
|
+
export const PsChartStyle = ({ id, config }) => {
|
|
4
|
+
const css = PsChartService.css(id, config);
|
|
5
|
+
if (css === '')
|
|
6
|
+
return null;
|
|
7
|
+
return _jsx("style", { dangerouslySetInnerHTML: { __html: css } });
|
|
8
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PsChartDefaults } from '../constants/ps-chart-defaults.js';
|
|
4
|
+
import { usePsChart } from '../hooks/use-ps-chart.js';
|
|
5
|
+
import { PsChartService } from '../services/ps-chart-service.js';
|
|
6
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
7
|
+
export const PsChartTooltipContent = ({ active, payload, className, indicator = 'dot', hideLabel = false, hideIndicator = false, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }) => {
|
|
8
|
+
const { config } = usePsChart();
|
|
9
|
+
const tooltipLabel = React.useMemo(() => {
|
|
10
|
+
if (hideLabel || payload === undefined || payload.length === 0)
|
|
11
|
+
return null;
|
|
12
|
+
const [item] = payload;
|
|
13
|
+
const key = `${labelKey !== undefined ? labelKey : item.dataKey !== undefined ? String(item.dataKey) : item.name !== undefined ? String(item.name) : PsChartDefaults.valueKey}`;
|
|
14
|
+
const itemConfig = PsChartService.itemFor(config, item, key);
|
|
15
|
+
const value = labelKey === undefined && typeof label === 'string' && label in config
|
|
16
|
+
? config[label].label
|
|
17
|
+
: itemConfig !== undefined
|
|
18
|
+
? itemConfig.label
|
|
19
|
+
: undefined;
|
|
20
|
+
if (labelFormatter !== undefined)
|
|
21
|
+
return (_jsx("div", { className: PsClassNameService.merge('font-medium', labelClassName), children: labelFormatter(value !== undefined ? value : label, payload) }));
|
|
22
|
+
if (value === undefined && label === undefined)
|
|
23
|
+
return null;
|
|
24
|
+
return (_jsx("div", { className: PsClassNameService.merge('font-medium', labelClassName), children: value !== undefined ? value : label }));
|
|
25
|
+
}, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);
|
|
26
|
+
if (active !== true || payload === undefined || payload.length === 0)
|
|
27
|
+
return null;
|
|
28
|
+
const nestLabel = payload.length === 1 && indicator !== 'dot';
|
|
29
|
+
return (_jsxs("div", { className: PsClassNameService.merge('grid min-w-32 items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl', className), children: [nestLabel ? null : tooltipLabel, _jsx("div", { className: 'grid gap-1.5', children: payload.map((item, index) => {
|
|
30
|
+
const key = `${nameKey !== undefined ? nameKey : item.name !== undefined ? String(item.name) : item.dataKey !== undefined ? String(item.dataKey) : PsChartDefaults.valueKey}`;
|
|
31
|
+
const itemConfig = PsChartService.itemFor(config, item, key);
|
|
32
|
+
const payloadFill = typeof item.payload === 'object' && item.payload !== null && 'fill' in item.payload
|
|
33
|
+
? String(item.payload.fill)
|
|
34
|
+
: undefined;
|
|
35
|
+
const indicatorColor = color !== undefined ? color : payloadFill !== undefined ? payloadFill : item.color;
|
|
36
|
+
return (_jsx("div", { className: PsClassNameService.merge('flex w-full flex-wrap items-stretch gap-2 [&>svg]:size-2.5 [&>svg]:text-muted-foreground', indicator === 'dot' && 'items-center'), children: formatter !== undefined && item.value !== undefined && item.name !== undefined ? (formatter(item.value, item.name, item, index, payload)) : (_jsxs(_Fragment, { children: [itemConfig !== undefined && itemConfig.icon !== undefined ? (_jsx(itemConfig.icon, {})) : hideIndicator ? null : (_jsx("div", { className: PsClassNameService.merge('shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]', indicator === 'dot' && 'size-2.5', indicator === 'line' && 'w-1', indicator === 'dashed' && 'w-0 border-[1.5px] border-dashed bg-transparent', nestLabel && indicator === 'dashed' && 'my-0.5'), style: {
|
|
37
|
+
'--color-bg': indicatorColor,
|
|
38
|
+
'--color-border': indicatorColor,
|
|
39
|
+
} })), _jsxs("div", { className: PsClassNameService.merge('flex flex-1 justify-between leading-none', nestLabel ? 'items-end' : 'items-center'), children: [_jsxs("div", { className: 'grid gap-1.5', children: [nestLabel ? tooltipLabel : null, _jsx("span", { className: 'text-muted-foreground', children: itemConfig !== undefined && itemConfig.label !== undefined
|
|
40
|
+
? itemConfig.label
|
|
41
|
+
: item.name })] }), item.value !== undefined ? (_jsx("span", { className: 'font-mono font-medium tabular-nums text-foreground', children: typeof item.value === 'number'
|
|
42
|
+
? item.value.toLocaleString()
|
|
43
|
+
: String(item.value) })) : null] })] })) }, String(item.dataKey)));
|
|
44
|
+
}) })] }));
|
|
45
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
4
|
+
import { Check } from 'lucide-react';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsCheckbox = React.forwardRef(({ className, ...props }, ref) => (_jsx(CheckboxPrimitive.Root, { ref: ref, className: PsClassNameService.merge('grid place-content-center peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground', className), ...props, children: _jsx(CheckboxPrimitive.Indicator, { className: PsClassNameService.merge('grid place-content-center text-current'), children: _jsx(Check, { className: 'h-4 w-4' }) }) })));
|
|
7
|
+
PsCheckbox.displayName = CheckboxPrimitive.Root.displayName;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Check, ChevronsUpDown } from 'lucide-react';
|
|
4
|
+
import { PsOptionSelectConfig } from '../constants/ps-option-select-config.js';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
import { PsButton } from './ps-button.js';
|
|
7
|
+
import { PsCommandEmpty } from './ps-command-empty.js';
|
|
8
|
+
import { PsCommandGroup } from './ps-command-group.js';
|
|
9
|
+
import { PsCommandInput } from './ps-command-input.js';
|
|
10
|
+
import { PsCommandItem } from './ps-command-item.js';
|
|
11
|
+
import { PsCommandList } from './ps-command-list.js';
|
|
12
|
+
import { PsCommand } from './ps-command.js';
|
|
13
|
+
import { PsPopoverContent } from './ps-popover-content.js';
|
|
14
|
+
import { PsPopoverTrigger } from './ps-popover-trigger.js';
|
|
15
|
+
import { PsPopover } from './ps-popover.js';
|
|
16
|
+
export const PsCombobox = ({ id, options, value, onValueChange, placeholder, searchPlaceholder = PsOptionSelectConfig.searchPlaceholder, noResults = PsOptionSelectConfig.noResults, disabled = false, invalid = false, className, }) => {
|
|
17
|
+
const [open, setOpen] = React.useState(false);
|
|
18
|
+
const selected = options.find((option) => option.value === value);
|
|
19
|
+
return (_jsxs(PsPopover, { open: open, onOpenChange: setOpen, children: [_jsx(PsPopoverTrigger, { asChild: true, children: _jsxs(PsButton, { "aria-expanded": open, "aria-invalid": invalid, className: PsClassNameService.merge('h-10 w-full justify-between px-3 font-normal aria-[invalid=true]:border-destructive', selected === undefined && 'text-muted-foreground', className), disabled: disabled, id: id, role: 'combobox', type: 'button', variant: 'outline', children: [_jsx("span", { className: 'truncate', children: selected === undefined ? placeholder : selected.label }), _jsx(ChevronsUpDown, { className: 'size-4 shrink-0 opacity-50' })] }) }), _jsx(PsPopoverContent, { align: 'start', className: 'w-[--radix-popover-trigger-width] p-0', children: _jsxs(PsCommand, { children: [_jsx(PsCommandInput, { placeholder: searchPlaceholder }), _jsxs(PsCommandList, { children: [_jsx(PsCommandEmpty, { children: noResults }), _jsx(PsCommandGroup, { children: options.map((option) => (_jsxs(PsCommandItem, { keywords: option.description !== undefined ? [option.description] : undefined, onSelect: () => {
|
|
20
|
+
onValueChange(option.value);
|
|
21
|
+
setOpen(false);
|
|
22
|
+
}, value: `${option.label} ${option.value}`, children: [_jsx(Check, { className: PsClassNameService.merge('size-4', option.value === value ? 'opacity-100' : 'opacity-0') }), _jsxs("span", { className: 'flex min-w-0 flex-col', children: [_jsx("span", { className: 'truncate', children: option.label }), option.description !== undefined ? (_jsx("span", { className: 'truncate text-xs text-muted-foreground', children: option.description })) : null] })] }, option.value))) })] })] }) })] }));
|
|
23
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { PsCommand } from './ps-command.js';
|
|
4
|
+
import { PsDialogContent } from './ps-dialog-content.js';
|
|
5
|
+
import { PsDialog } from './ps-dialog.js';
|
|
6
|
+
export const PsCommandDialog = ({ children, ...props }) => {
|
|
7
|
+
return (_jsx(PsDialog, { ...props, children: _jsx(PsDialogContent, { className: 'overflow-hidden p-0', children: _jsx(PsCommand, { className: '[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5', children: children }) }) }));
|
|
8
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Command as CommandPrimitive } from 'cmdk';
|
|
5
|
+
export const PsCommandEmpty = React.forwardRef((props, ref) => (_jsx(CommandPrimitive.Empty, { ref: ref, className: 'py-6 text-center text-sm', ...props })));
|
|
6
|
+
PsCommandEmpty.displayName = CommandPrimitive.Empty.displayName;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Command as CommandPrimitive } from 'cmdk';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsCommandGroup = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Group, { ref: ref, className: PsClassNameService.merge('overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground', className), ...props })));
|
|
7
|
+
PsCommandGroup.displayName = CommandPrimitive.Group.displayName;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Command as CommandPrimitive } from 'cmdk';
|
|
5
|
+
import { Search } from 'lucide-react';
|
|
6
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
7
|
+
export const PsCommandInput = React.forwardRef(({ className, ...props }, ref) => (_jsxs("div", { className: 'flex items-center border-b px-3', "cmdk-input-wrapper": '', children: [_jsx(Search, { className: 'mr-2 h-4 w-4 shrink-0 opacity-50' }), _jsx(CommandPrimitive.Input, { ref: ref, className: PsClassNameService.merge('flex h-10 w-full rounded-none border-0 bg-transparent px-0 py-3 shadow-none focus-visible:ring-0 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50', className), ...props })] })));
|
|
8
|
+
PsCommandInput.displayName = CommandPrimitive.Input.displayName;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Command as CommandPrimitive } from 'cmdk';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsCommandItem = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Item, { ref: ref, className: PsClassNameService.merge('relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0', className), ...props })));
|
|
7
|
+
PsCommandItem.displayName = CommandPrimitive.Item.displayName;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Command as CommandPrimitive } from 'cmdk';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsCommandList = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.List, { ref: ref, className: PsClassNameService.merge('max-h-[300px] overflow-y-auto overflow-x-hidden', className), ...props })));
|
|
7
|
+
PsCommandList.displayName = CommandPrimitive.List.displayName;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Command as CommandPrimitive } from 'cmdk';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsCommandSeparator = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Separator, { ref: ref, className: PsClassNameService.merge('-mx-1 h-px bg-border', className), ...props })));
|
|
7
|
+
PsCommandSeparator.displayName = CommandPrimitive.Separator.displayName;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
4
|
+
export const PsCommandShortcut = ({ className, ...props }) => {
|
|
5
|
+
return (_jsx("span", { className: PsClassNameService.merge('ml-auto text-xs tracking-widest text-muted-foreground', className), ...props }));
|
|
6
|
+
};
|
|
7
|
+
PsCommandShortcut.displayName = 'PsCommandShortcut';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Command as CommandPrimitive } from 'cmdk';
|
|
5
|
+
import { PsClassNameService } from '../services/ps-class-name-service.js';
|
|
6
|
+
export const PsCommand = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive, { ref: ref, className: PsClassNameService.merge('flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground', className), ...props })));
|
|
7
|
+
PsCommand.displayName = CommandPrimitive.displayName;
|