@lucasbernardosn/react-ui 0.3.0 → 0.5.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 +2 -1
- package/dist/components/buttons/button/button-variants.d.ts +1 -1
- package/dist/components/buttons/button/button-variants.js +119 -119
- package/dist/components/buttons/button/button-variants.js.map +1 -1
- package/dist/components/buttons/button/button.d.ts +1 -1
- package/dist/components/buttons/button/button.js +1 -1
- package/dist/components/buttons/button/button.js.map +1 -1
- package/dist/components/buttons/icon-button/icon-button-variants.d.ts +3 -0
- package/dist/components/buttons/icon-button/icon-button-variants.js +3 -0
- package/dist/components/buttons/icon-button/icon-button-variants.js.map +1 -1
- package/dist/components/buttons/responsive-button/responsive-button.d.ts +2 -1
- package/dist/components/buttons/responsive-button/responsive-button.js +2 -1
- package/dist/components/buttons/responsive-button/responsive-button.js.map +1 -1
- package/dist/components/buttons/toggle/index.d.ts +3 -0
- package/dist/components/buttons/toggle/index.js +2 -0
- package/dist/components/buttons/toggle/toggle-variants.d.ts +47 -0
- package/dist/components/buttons/toggle/toggle-variants.js +97 -0
- package/dist/components/buttons/toggle/toggle-variants.js.map +1 -0
- package/dist/components/buttons/toggle/toggle.d.ts +61 -0
- package/dist/components/buttons/toggle/toggle.js +69 -0
- package/dist/components/buttons/toggle/toggle.js.map +1 -0
- package/dist/components/collections/async-select/async-select-variants.js +7 -8
- package/dist/components/collections/async-select/async-select-variants.js.map +1 -1
- package/dist/components/collections/autocomplete/autocomplete-backdrop.d.ts +1 -2
- package/dist/components/collections/autocomplete/autocomplete-backdrop.js +1 -2
- package/dist/components/collections/autocomplete/autocomplete-backdrop.js.map +1 -1
- package/dist/components/collections/autocomplete/autocomplete-group-label-variants.d.ts +4 -4
- package/dist/components/collections/autocomplete/autocomplete-group-label-variants.js +4 -4
- package/dist/components/collections/autocomplete/autocomplete-group-label-variants.js.map +1 -1
- package/dist/components/collections/autocomplete/autocomplete-input-variants.d.ts +5 -5
- package/dist/components/collections/autocomplete/autocomplete-input-variants.js +8 -8
- package/dist/components/collections/autocomplete/autocomplete-input-variants.js.map +1 -1
- package/dist/components/collections/autocomplete/autocomplete-item-variants.d.ts +1 -1
- package/dist/components/collections/autocomplete/autocomplete-item-variants.js +1 -1
- package/dist/components/collections/autocomplete/autocomplete-item-variants.js.map +1 -1
- package/dist/components/collections/autocomplete/autocomplete-popup-variants.d.ts +4 -2
- package/dist/components/collections/autocomplete/autocomplete-popup-variants.js +4 -2
- package/dist/components/collections/autocomplete/autocomplete-popup-variants.js.map +1 -1
- package/dist/components/collections/autocomplete/autocomplete-separator.d.ts +1 -2
- package/dist/components/collections/autocomplete/autocomplete-separator.js +1 -2
- package/dist/components/collections/autocomplete/autocomplete-separator.js.map +1 -1
- package/dist/components/collections/command/command-collection.d.ts +14 -0
- package/dist/components/collections/command/command-collection.js +15 -0
- package/dist/components/collections/command/command-collection.js.map +1 -0
- package/dist/components/collections/command/command-empty.d.ts +14 -0
- package/dist/components/collections/command/command-empty.js +28 -0
- package/dist/components/collections/command/command-empty.js.map +1 -0
- package/dist/components/collections/command/command-footer.d.ts +12 -0
- package/dist/components/collections/command/command-footer.js +33 -0
- package/dist/components/collections/command/command-footer.js.map +1 -0
- package/dist/components/collections/command/command-group-label.d.ts +15 -0
- package/dist/components/collections/command/command-group-label.js +31 -0
- package/dist/components/collections/command/command-group-label.js.map +1 -0
- package/dist/components/collections/command/command-group.d.ts +15 -0
- package/dist/components/collections/command/command-group.js +19 -0
- package/dist/components/collections/command/command-group.js.map +1 -0
- package/dist/components/collections/command/command-input.d.ts +20 -0
- package/dist/components/collections/command/command-input.js +75 -0
- package/dist/components/collections/command/command-input.js.map +1 -0
- package/dist/components/collections/command/command-item-text.d.ts +19 -0
- package/dist/components/collections/command/command-item-text.js +32 -0
- package/dist/components/collections/command/command-item-text.js.map +1 -0
- package/dist/components/collections/command/command-item-variants.d.ts +12 -0
- package/dist/components/collections/command/command-item-variants.js +39 -0
- package/dist/components/collections/command/command-item-variants.js.map +1 -0
- package/dist/components/collections/command/command-item.d.ts +17 -0
- package/dist/components/collections/command/command-item.js +25 -0
- package/dist/components/collections/command/command-item.js.map +1 -0
- package/dist/components/collections/command/command-list.d.ts +14 -0
- package/dist/components/collections/command/command-list.js +31 -0
- package/dist/components/collections/command/command-list.js.map +1 -0
- package/dist/components/collections/command/command-loading.d.ts +17 -0
- package/dist/components/collections/command/command-loading.js +30 -0
- package/dist/components/collections/command/command-loading.js.map +1 -0
- package/dist/components/collections/command/command-root.d.ts +91 -0
- package/dist/components/collections/command/command-root.js +50 -0
- package/dist/components/collections/command/command-root.js.map +1 -0
- package/dist/components/collections/command/command-separator.d.ts +15 -0
- package/dist/components/collections/command/command-separator.js +27 -0
- package/dist/components/collections/command/command-separator.js.map +1 -0
- package/dist/components/collections/command/index.d.ts +2 -0
- package/dist/components/collections/command/index.js +2 -0
- package/dist/components/collections/command/index.parts.d.ts +19 -0
- package/dist/components/collections/command/index.parts.js +35 -0
- package/dist/components/collections/command/index.parts.js.map +1 -0
- package/dist/components/collections/command/use-command-context.d.ts +10 -0
- package/dist/components/collections/command/use-command-context.js +10 -0
- package/dist/components/collections/command/use-command-context.js.map +1 -0
- package/dist/components/collections/command/use-command-filter.d.ts +27 -0
- package/dist/components/collections/command/use-command-filter.js +32 -0
- package/dist/components/collections/command/use-command-filter.js.map +1 -0
- package/dist/components/collections/select/select-backdrop.d.ts +1 -2
- package/dist/components/collections/select/select-backdrop.js +1 -2
- package/dist/components/collections/select/select-backdrop.js.map +1 -1
- package/dist/components/collections/select/select-group-label-variants.d.ts +2 -2
- package/dist/components/collections/select/select-group-label-variants.js +2 -2
- package/dist/components/collections/select/select-group-label-variants.js.map +1 -1
- package/dist/components/collections/select/select-item-variants.d.ts +3 -2
- package/dist/components/collections/select/select-item-variants.js +3 -2
- package/dist/components/collections/select/select-item-variants.js.map +1 -1
- package/dist/components/collections/select/select-popup-variants.d.ts +1 -1
- package/dist/components/collections/select/select-popup-variants.js +1 -1
- package/dist/components/collections/select/select-popup-variants.js.map +1 -1
- package/dist/components/collections/select/select-separator.d.ts +1 -1
- package/dist/components/collections/select/select-separator.js +1 -1
- package/dist/components/collections/select/select-separator.js.map +1 -1
- package/dist/components/collections/select/select-trigger-variants.d.ts +2 -2
- package/dist/components/collections/select/select-trigger-variants.js +5 -5
- package/dist/components/collections/select/select-trigger-variants.js.map +1 -1
- package/dist/components/collections/tree-view/tree-view-node-checkbox.js +1 -1
- package/dist/components/collections/tree-view/tree-view-node-checkbox.js.map +1 -1
- package/dist/components/collections/tree-view/tree-view-node-variants.d.ts +1 -1
- package/dist/components/collections/tree-view/tree-view-node-variants.js +6 -6
- package/dist/components/collections/tree-view/tree-view-node-variants.js.map +1 -1
- package/dist/components/collections/tree-view/tree-view-root.d.ts +1 -1
- package/dist/components/collections/tree-view/tree-view-root.js +1 -1
- package/dist/components/collections/tree-view/tree-view-root.js.map +1 -1
- package/dist/components/disclosure/collapsible/collapsible-panel-variants.d.ts +1 -1
- package/dist/components/disclosure/tabs/tabs-indicator-variants.d.ts +5 -0
- package/dist/components/disclosure/tabs/tabs-indicator-variants.js +7 -2
- package/dist/components/disclosure/tabs/tabs-indicator-variants.js.map +1 -1
- package/dist/components/disclosure/tabs/tabs-list-variants.d.ts +5 -0
- package/dist/components/disclosure/tabs/tabs-list-variants.js +7 -2
- package/dist/components/disclosure/tabs/tabs-list-variants.js.map +1 -1
- package/dist/components/disclosure/tabs/tabs-root-variants.d.ts +1 -1
- package/dist/components/disclosure/tabs/tabs-root-variants.js +10 -8
- package/dist/components/disclosure/tabs/tabs-root-variants.js.map +1 -1
- package/dist/components/disclosure/tabs/tabs-root.d.ts +1 -1
- package/dist/components/disclosure/tabs/tabs-root.js +1 -1
- package/dist/components/disclosure/tabs/tabs-root.js.map +1 -1
- package/dist/components/disclosure/tabs/tabs-tab-variants.d.ts +4 -0
- package/dist/components/disclosure/tabs/tabs-tab-variants.js +6 -2
- package/dist/components/disclosure/tabs/tabs-tab-variants.js.map +1 -1
- package/dist/components/display/avatar/avatar-root-variants.d.ts +1 -1
- package/dist/components/display/avatar/avatar-root-variants.js +162 -162
- package/dist/components/display/avatar/avatar-root-variants.js.map +1 -1
- package/dist/components/display/badge/badge-variants.d.ts +8 -5
- package/dist/components/display/badge/badge-variants.js +171 -166
- package/dist/components/display/badge/badge-variants.js.map +1 -1
- package/dist/components/display/badge/badge.d.ts +10 -1
- package/dist/components/display/badge/badge.js +40 -2
- package/dist/components/display/badge/badge.js.map +1 -1
- package/dist/components/display/card/card-body.d.ts +2 -2
- package/dist/components/display/card/card-body.js +3 -2
- package/dist/components/display/card/card-body.js.map +1 -1
- package/dist/components/display/card/card-description.d.ts +1 -2
- package/dist/components/display/card/card-description.js +1 -2
- package/dist/components/display/card/card-description.js.map +1 -1
- package/dist/components/display/card/card-footer.d.ts +1 -1
- package/dist/components/display/card/card-footer.js +1 -1
- package/dist/components/display/card/card-footer.js.map +1 -1
- package/dist/components/display/card/card-header.d.ts +1 -2
- package/dist/components/display/card/card-header.js +1 -2
- package/dist/components/display/card/card-header.js.map +1 -1
- package/dist/components/display/card/card-title.d.ts +1 -2
- package/dist/components/display/card/card-title.js +1 -2
- package/dist/components/display/card/card-title.js.map +1 -1
- package/dist/components/display/clipboard/clipboard-indicator.js +2 -2
- package/dist/components/display/clipboard/clipboard-indicator.js.map +1 -1
- package/dist/components/display/data-list/data-list-item-label-variants.d.ts +7 -0
- package/dist/components/display/data-list/data-list-item-label-variants.js +27 -0
- package/dist/components/display/data-list/data-list-item-label-variants.js.map +1 -0
- package/dist/components/display/data-list/data-list-item-label.d.ts +2 -1
- package/dist/components/display/data-list/data-list-item-label.js +9 -2
- package/dist/components/display/data-list/data-list-item-label.js.map +1 -1
- package/dist/components/display/data-list/data-list-item-value-variants.d.ts +1 -1
- package/dist/components/display/data-list/data-list-item-value-variants.js +9 -5
- package/dist/components/display/data-list/data-list-item-value-variants.js.map +1 -1
- package/dist/components/display/data-list/data-list-item-value.d.ts +2 -1
- package/dist/components/display/data-list/data-list-item-value.js +4 -3
- package/dist/components/display/data-list/data-list-item-value.js.map +1 -1
- package/dist/components/display/data-list/data-list-item-variants.d.ts +2 -6
- package/dist/components/display/data-list/data-list-item-variants.js +24 -26
- package/dist/components/display/data-list/data-list-item-variants.js.map +1 -1
- package/dist/components/display/data-list/data-list-item.d.ts +2 -1
- package/dist/components/display/data-list/data-list-item.js +7 -3
- package/dist/components/display/data-list/data-list-item.js.map +1 -1
- package/dist/components/display/data-list/data-list-root-variants.d.ts +1 -2
- package/dist/components/display/data-list/data-list-root-variants.js +7 -24
- package/dist/components/display/data-list/data-list-root-variants.js.map +1 -1
- package/dist/components/display/data-list/data-list-root.d.ts +3 -2
- package/dist/components/display/data-list/data-list-root.js +8 -3
- package/dist/components/display/data-list/data-list-root.js.map +1 -1
- package/dist/components/display/data-list/use-data-list-context.d.ts +18 -7
- package/dist/components/display/data-list/use-data-list-context.js +3 -2
- package/dist/components/display/data-list/use-data-list-context.js.map +1 -1
- package/dist/components/display/status/status-variants.d.ts +2 -2
- package/dist/components/display/status/status-variants.js +6 -6
- package/dist/components/display/status/status-variants.js.map +1 -1
- package/dist/components/display/tag/tag-root-variants.d.ts +2 -3
- package/dist/components/display/tag/tag-root-variants.js +163 -164
- package/dist/components/display/tag/tag-root-variants.js.map +1 -1
- package/dist/components/feedback/alert/alert-description.d.ts +1 -2
- package/dist/components/feedback/alert/alert-description.js +2 -3
- package/dist/components/feedback/alert/alert-description.js.map +1 -1
- package/dist/components/feedback/alert/alert-indicator.d.ts +2 -2
- package/dist/components/feedback/alert/alert-indicator.js +2 -2
- package/dist/components/feedback/alert/alert-indicator.js.map +1 -1
- package/dist/components/feedback/alert/alert-root-variants.d.ts +3 -3
- package/dist/components/feedback/alert/alert-root-variants.js +28 -28
- package/dist/components/feedback/alert/alert-root-variants.js.map +1 -1
- package/dist/components/feedback/alert/alert-title.d.ts +1 -2
- package/dist/components/feedback/alert/alert-title.js +2 -3
- package/dist/components/feedback/alert/alert-title.js.map +1 -1
- package/dist/components/feedback/meter/index.d.ts +2 -0
- package/dist/components/feedback/meter/index.js +2 -0
- package/dist/components/feedback/meter/index.parts.d.ts +12 -0
- package/dist/components/feedback/meter/index.parts.js +18 -0
- package/dist/components/feedback/meter/index.parts.js.map +1 -0
- package/dist/components/feedback/meter/meter-indicator.d.ts +17 -0
- package/dist/components/feedback/meter/meter-indicator.js +31 -0
- package/dist/components/feedback/meter/meter-indicator.js.map +1 -0
- package/dist/components/feedback/meter/meter-label.d.ts +13 -0
- package/dist/components/feedback/meter/meter-label.js +20 -0
- package/dist/components/feedback/meter/meter-label.js.map +1 -0
- package/dist/components/feedback/meter/meter-root-variants.d.ts +14 -0
- package/dist/components/feedback/meter/meter-root-variants.js +42 -0
- package/dist/components/feedback/meter/meter-root-variants.js.map +1 -0
- package/dist/components/feedback/meter/meter-root.d.ts +37 -0
- package/dist/components/feedback/meter/meter-root.js +51 -0
- package/dist/components/feedback/meter/meter-root.js.map +1 -0
- package/dist/components/feedback/meter/meter-track-variants.d.ts +6 -0
- package/dist/components/feedback/meter/meter-track-variants.js +22 -0
- package/dist/components/feedback/meter/meter-track-variants.js.map +1 -0
- package/dist/components/feedback/meter/meter-track.d.ts +13 -0
- package/dist/components/feedback/meter/meter-track.js +23 -0
- package/dist/components/feedback/meter/meter-track.js.map +1 -0
- package/dist/components/feedback/meter/meter-value.d.ts +14 -0
- package/dist/components/feedback/meter/meter-value.js +25 -0
- package/dist/components/feedback/meter/meter-value.js.map +1 -0
- package/dist/components/feedback/meter/use-meter-context.d.ts +23 -0
- package/dist/components/feedback/meter/use-meter-context.js +14 -0
- package/dist/components/feedback/meter/use-meter-context.js.map +1 -0
- package/dist/components/feedback/progress/index.d.ts +2 -0
- package/dist/components/feedback/progress/index.js +2 -0
- package/dist/components/feedback/progress/index.parts.d.ts +12 -0
- package/dist/components/feedback/progress/index.parts.js +18 -0
- package/dist/components/feedback/progress/index.parts.js.map +1 -0
- package/dist/components/feedback/progress/progress-indicator.d.ts +16 -0
- package/dist/components/feedback/progress/progress-indicator.js +34 -0
- package/dist/components/feedback/progress/progress-indicator.js.map +1 -0
- package/dist/components/feedback/progress/progress-label.d.ts +13 -0
- package/dist/components/feedback/progress/progress-label.js +20 -0
- package/dist/components/feedback/progress/progress-label.js.map +1 -0
- package/dist/components/feedback/progress/progress-root-variants.d.ts +15 -0
- package/dist/components/feedback/progress/progress-root-variants.js +43 -0
- package/dist/components/feedback/progress/progress-root-variants.js.map +1 -0
- package/dist/components/feedback/progress/progress-root.d.ts +34 -0
- package/dist/components/feedback/progress/progress-root.js +48 -0
- package/dist/components/feedback/progress/progress-root.js.map +1 -0
- package/dist/components/feedback/progress/progress-track-variants.d.ts +6 -0
- package/dist/components/feedback/progress/progress-track-variants.js +22 -0
- package/dist/components/feedback/progress/progress-track-variants.js.map +1 -0
- package/dist/components/feedback/progress/progress-track.d.ts +13 -0
- package/dist/components/feedback/progress/progress-track.js +23 -0
- package/dist/components/feedback/progress/progress-track.js.map +1 -0
- package/dist/components/feedback/progress/progress-value.d.ts +14 -0
- package/dist/components/feedback/progress/progress-value.js +25 -0
- package/dist/components/feedback/progress/progress-value.js.map +1 -0
- package/dist/components/feedback/progress/use-progress-context.d.ts +23 -0
- package/dist/components/feedback/progress/use-progress-context.js +14 -0
- package/dist/components/feedback/progress/use-progress-context.js.map +1 -0
- package/dist/components/feedback/spinner/spinner-variants.d.ts +1 -1
- package/dist/components/feedback/spinner/spinner-variants.js +1 -1
- package/dist/components/feedback/spinner/spinner-variants.js.map +1 -1
- package/dist/components/feedback/spinner/spinner.d.ts +1 -1
- package/dist/components/feedback/spinner/spinner.js +1 -1
- package/dist/components/feedback/spinner/spinner.js.map +1 -1
- package/dist/components/feedback/toast/toast-description.d.ts +2 -2
- package/dist/components/feedback/toast/toast-description.js +3 -3
- package/dist/components/feedback/toast/toast-description.js.map +1 -1
- package/dist/components/feedback/toast/toast-indicator.d.ts +4 -4
- package/dist/components/feedback/toast/toast-indicator.js +4 -4
- package/dist/components/feedback/toast/toast-indicator.js.map +1 -1
- package/dist/components/feedback/toast/toast-root-variants.d.ts +1 -1
- package/dist/components/feedback/toast/toast-root-variants.js +15 -15
- package/dist/components/feedback/toast/toast-root-variants.js.map +1 -1
- package/dist/components/feedback/toast/toast-title.d.ts +3 -3
- package/dist/components/feedback/toast/toast-title.js +4 -4
- package/dist/components/feedback/toast/toast-title.js.map +1 -1
- package/dist/components/feedback/toast/toast-viewport-variants.d.ts +1 -1
- package/dist/components/fields/checkbox/checkbox-root-variants.d.ts +3 -1
- package/dist/components/fields/checkbox/checkbox-root-variants.js +11 -9
- package/dist/components/fields/checkbox/checkbox-root-variants.js.map +1 -1
- package/dist/components/fields/currency-brl-input/currency-brl-input-variants.js +3 -3
- package/dist/components/fields/currency-brl-input/currency-brl-input-variants.js.map +1 -1
- package/dist/components/fields/field/field-root.d.ts +2 -1
- package/dist/components/fields/field/field-root.js +2 -1
- package/dist/components/fields/field/field-root.js.map +1 -1
- package/dist/components/fields/input/input-variants.d.ts +4 -3
- package/dist/components/fields/input/input-variants.js +7 -6
- package/dist/components/fields/input/input-variants.js.map +1 -1
- package/dist/components/fields/input-group/index.d.ts +3 -0
- package/dist/components/fields/input-group/index.js +2 -0
- package/dist/components/fields/input-group/input-group-variants.d.ts +81 -0
- package/dist/components/fields/input-group/input-group-variants.js +212 -0
- package/dist/components/fields/input-group/input-group-variants.js.map +1 -0
- package/dist/components/fields/input-group/input-group.d.ts +88 -0
- package/dist/components/fields/input-group/input-group.js +164 -0
- package/dist/components/fields/input-group/input-group.js.map +1 -0
- package/dist/components/fields/number-input/number-input-variants.js +3 -3
- package/dist/components/fields/number-input/number-input-variants.js.map +1 -1
- package/dist/components/fields/pattern-input/pattern-input-variants.js +3 -3
- package/dist/components/fields/pattern-input/pattern-input-variants.js.map +1 -1
- package/dist/components/fields/radio/index.d.ts +2 -0
- package/dist/components/fields/radio/index.js +2 -0
- package/dist/components/fields/radio/index.parts.d.ts +10 -0
- package/dist/components/fields/radio/index.parts.js +14 -0
- package/dist/components/fields/radio/index.parts.js.map +1 -0
- package/dist/components/fields/radio/radio-group.d.ts +40 -0
- package/dist/components/fields/radio/radio-group.js +45 -0
- package/dist/components/fields/radio/radio-group.js.map +1 -0
- package/dist/components/fields/radio/radio-indicator.d.ts +14 -0
- package/dist/components/fields/radio/radio-indicator.js +33 -0
- package/dist/components/fields/radio/radio-indicator.js.map +1 -0
- package/dist/components/fields/radio/radio-root-variants.d.ts +41 -0
- package/dist/components/fields/radio/radio-root-variants.js +93 -0
- package/dist/components/fields/radio/radio-root-variants.js.map +1 -0
- package/dist/components/fields/radio/radio-root.d.ts +27 -0
- package/dist/components/fields/radio/radio-root.js +40 -0
- package/dist/components/fields/radio/radio-root.js.map +1 -0
- package/dist/components/fields/radio-card/index.d.ts +2 -0
- package/dist/components/fields/radio-card/index.js +2 -0
- package/dist/components/fields/radio-card/index.parts.d.ts +12 -0
- package/dist/components/fields/radio-card/index.parts.js +18 -0
- package/dist/components/fields/radio-card/index.parts.js.map +1 -0
- package/dist/components/fields/radio-card/radio-card-description.d.ts +14 -0
- package/dist/components/fields/radio-card/radio-card-description.js +34 -0
- package/dist/components/fields/radio-card/radio-card-description.js.map +1 -0
- package/dist/components/fields/radio-card/radio-card-group.d.ts +41 -0
- package/dist/components/fields/radio-card/radio-card-group.js +51 -0
- package/dist/components/fields/radio-card/radio-card-group.js.map +1 -0
- package/dist/components/fields/radio-card/radio-card-indicator.d.ts +24 -0
- package/dist/components/fields/radio-card/radio-card-indicator.js +67 -0
- package/dist/components/fields/radio-card/radio-card-indicator.js.map +1 -0
- package/dist/components/fields/radio-card/radio-card-item-variants.d.ts +25 -0
- package/dist/components/fields/radio-card/radio-card-item-variants.js +83 -0
- package/dist/components/fields/radio-card/radio-card-item-variants.js.map +1 -0
- package/dist/components/fields/radio-card/radio-card-item.d.ts +33 -0
- package/dist/components/fields/radio-card/radio-card-item.js +60 -0
- package/dist/components/fields/radio-card/radio-card-item.js.map +1 -0
- package/dist/components/fields/radio-card/radio-card-title.d.ts +14 -0
- package/dist/components/fields/radio-card/radio-card-title.js +34 -0
- package/dist/components/fields/radio-card/radio-card-title.js.map +1 -0
- package/dist/components/fields/radio-card/use-radio-card-context.d.ts +25 -0
- package/dist/components/fields/radio-card/use-radio-card-context.js +14 -0
- package/dist/components/fields/radio-card/use-radio-card-context.js.map +1 -0
- package/dist/components/fields/radio-card/use-radio-card-item-context.d.ts +12 -0
- package/dist/components/fields/radio-card/use-radio-card-item-context.js +10 -0
- package/dist/components/fields/radio-card/use-radio-card-item-context.js.map +1 -0
- package/dist/components/fields/segmented-control/index.d.ts +2 -0
- package/dist/components/fields/segmented-control/index.js +2 -0
- package/dist/components/fields/segmented-control/index.parts.d.ts +10 -0
- package/dist/components/fields/segmented-control/index.parts.js +14 -0
- package/dist/components/fields/segmented-control/index.parts.js.map +1 -0
- package/dist/components/fields/segmented-control/segmented-control-indicator.d.ts +21 -0
- package/dist/components/fields/segmented-control/segmented-control-indicator.js +50 -0
- package/dist/components/fields/segmented-control/segmented-control-indicator.js.map +1 -0
- package/dist/components/fields/segmented-control/segmented-control-item-variants.d.ts +16 -0
- package/dist/components/fields/segmented-control/segmented-control-item-variants.js +72 -0
- package/dist/components/fields/segmented-control/segmented-control-item-variants.js.map +1 -0
- package/dist/components/fields/segmented-control/segmented-control-item.d.ts +17 -0
- package/dist/components/fields/segmented-control/segmented-control-item.js +29 -0
- package/dist/components/fields/segmented-control/segmented-control-item.js.map +1 -0
- package/dist/components/fields/segmented-control/segmented-control-root-variants.d.ts +21 -0
- package/dist/components/fields/segmented-control/segmented-control-root-variants.js +66 -0
- package/dist/components/fields/segmented-control/segmented-control-root-variants.js.map +1 -0
- package/dist/components/fields/segmented-control/segmented-control-root.d.ts +41 -0
- package/dist/components/fields/segmented-control/segmented-control-root.js +65 -0
- package/dist/components/fields/segmented-control/segmented-control-root.js.map +1 -0
- package/dist/components/fields/segmented-control/use-segmented-control-context.d.ts +33 -0
- package/dist/components/fields/segmented-control/use-segmented-control-context.js +15 -0
- package/dist/components/fields/segmented-control/use-segmented-control-context.js.map +1 -0
- package/dist/components/fields/segmented-control/use-segmented-control-indicator.d.ts +22 -0
- package/dist/components/fields/segmented-control/use-segmented-control-indicator.js +67 -0
- package/dist/components/fields/segmented-control/use-segmented-control-indicator.js.map +1 -0
- package/dist/components/fields/switch/switch-root-variants.d.ts +1 -1
- package/dist/components/fields/switch/switch-root-variants.js +3 -3
- package/dist/components/fields/switch/switch-root-variants.js.map +1 -1
- package/dist/components/fields/textarea/textarea-variants.js +3 -3
- package/dist/components/fields/textarea/textarea-variants.js.map +1 -1
- package/dist/components/layout/center-absolute/center-absolute-variants.d.ts +1 -1
- package/dist/components/layout/group/group-variants.d.ts +43 -0
- package/dist/components/layout/group/group-variants.js +72 -0
- package/dist/components/layout/group/group-variants.js.map +1 -0
- package/dist/components/layout/group/group.d.ts +38 -0
- package/dist/components/layout/group/group.js +55 -0
- package/dist/components/layout/group/group.js.map +1 -0
- package/dist/components/layout/group/index.d.ts +3 -0
- package/dist/components/layout/group/index.js +2 -0
- package/dist/components/layout/scroll-area/scroll-area-root.d.ts +16 -3
- package/dist/components/layout/scroll-area/scroll-area-root.js +6 -3
- package/dist/components/layout/scroll-area/scroll-area-root.js.map +1 -1
- package/dist/components/layout/scroll-area/scroll-area-scrollbar.d.ts +3 -0
- package/dist/components/layout/scroll-area/scroll-area-scrollbar.js +9 -2
- package/dist/components/layout/scroll-area/scroll-area-scrollbar.js.map +1 -1
- package/dist/components/layout/scroll-area/scroll-area-thumb.d.ts +5 -1
- package/dist/components/layout/scroll-area/scroll-area-thumb.js +15 -5
- package/dist/components/layout/scroll-area/scroll-area-thumb.js.map +1 -1
- package/dist/components/layout/scroll-area/scroll-area-viewport-variants.d.ts +1 -1
- package/dist/components/layout/separator/separator-variants.d.ts +1 -1
- package/dist/components/layout/separator/separator-variants.js +1 -1
- package/dist/components/layout/separator/separator-variants.js.map +1 -1
- package/dist/components/overlays/action-bar/action-bar-selection-trigger.js +2 -2
- package/dist/components/overlays/action-bar/action-bar-selection-trigger.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-backdrop.d.ts +1 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-backdrop.js +1 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-backdrop.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-body.d.ts +5 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-body.js +8 -3
- package/dist/components/overlays/alert-dialog/alert-dialog-body.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-description.d.ts +1 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-description.js +1 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-description.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-footer.d.ts +6 -3
- package/dist/components/overlays/alert-dialog/alert-dialog-footer.js +9 -5
- package/dist/components/overlays/alert-dialog/alert-dialog-footer.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-header.d.ts +9 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-header.js +19 -5
- package/dist/components/overlays/alert-dialog/alert-dialog-header.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-imperative.d.ts +87 -28
- package/dist/components/overlays/alert-dialog/alert-dialog-imperative.js +120 -55
- package/dist/components/overlays/alert-dialog/alert-dialog-imperative.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-indicator-variants.d.ts +24 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-indicator-variants.js +31 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-indicator-variants.js.map +1 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-indicator.d.ts +25 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-indicator.js +51 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-indicator.js.map +1 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-outlet.d.ts +4 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-outlet.js +13 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-outlet.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.d.ts +4 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.js +7 -6
- package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-popup.d.ts +2 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-popup.js +2 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-popup.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-store.d.ts +20 -4
- package/dist/components/overlays/alert-dialog/alert-dialog-store.js +48 -5
- package/dist/components/overlays/alert-dialog/alert-dialog-store.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-title.d.ts +3 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-title.js +4 -3
- package/dist/components/overlays/alert-dialog/alert-dialog-title.js.map +1 -1
- package/dist/components/overlays/alert-dialog/alert-dialog-viewport.d.ts +1 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-viewport.js +1 -2
- package/dist/components/overlays/alert-dialog/alert-dialog-viewport.js.map +1 -1
- package/dist/components/overlays/alert-dialog/index.parts.d.ts +4 -3
- package/dist/components/overlays/alert-dialog/index.parts.js +3 -1
- package/dist/components/overlays/alert-dialog/index.parts.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-backdrop.d.ts +1 -2
- package/dist/components/overlays/dialog/dialog-backdrop.js +1 -2
- package/dist/components/overlays/dialog/dialog-backdrop.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-body.d.ts +5 -5
- package/dist/components/overlays/dialog/dialog-body.js +6 -5
- package/dist/components/overlays/dialog/dialog-body.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-description.d.ts +4 -4
- package/dist/components/overlays/dialog/dialog-description.js +4 -4
- package/dist/components/overlays/dialog/dialog-description.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-footer.d.ts +5 -6
- package/dist/components/overlays/dialog/dialog-footer.js +5 -6
- package/dist/components/overlays/dialog/dialog-footer.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-header.d.ts +5 -6
- package/dist/components/overlays/dialog/dialog-header.js +5 -6
- package/dist/components/overlays/dialog/dialog-header.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-popup-variants.d.ts +5 -5
- package/dist/components/overlays/dialog/dialog-popup-variants.js +6 -7
- package/dist/components/overlays/dialog/dialog-popup-variants.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-title.d.ts +5 -5
- package/dist/components/overlays/dialog/dialog-title.js +5 -5
- package/dist/components/overlays/dialog/dialog-title.js.map +1 -1
- package/dist/components/overlays/dialog/dialog-viewport.d.ts +2 -2
- package/dist/components/overlays/dialog/dialog-viewport.js +2 -2
- package/dist/components/overlays/dialog/dialog-viewport.js.map +1 -1
- package/dist/components/overlays/drawer/drawer-backdrop.d.ts +1 -1
- package/dist/components/overlays/drawer/drawer-backdrop.js +1 -1
- package/dist/components/overlays/drawer/drawer-backdrop.js.map +1 -1
- package/dist/components/overlays/drawer/drawer-body.d.ts +3 -3
- package/dist/components/overlays/drawer/drawer-body.js +4 -3
- package/dist/components/overlays/drawer/drawer-body.js.map +1 -1
- package/dist/components/overlays/drawer/drawer-description.d.ts +1 -2
- package/dist/components/overlays/drawer/drawer-description.js +1 -2
- package/dist/components/overlays/drawer/drawer-description.js.map +1 -1
- package/dist/components/overlays/drawer/drawer-footer.d.ts +1 -2
- package/dist/components/overlays/drawer/drawer-footer.js +1 -2
- package/dist/components/overlays/drawer/drawer-footer.js.map +1 -1
- package/dist/components/overlays/drawer/drawer-header.d.ts +1 -2
- package/dist/components/overlays/drawer/drawer-header.js +1 -2
- package/dist/components/overlays/drawer/drawer-header.js.map +1 -1
- package/dist/components/overlays/drawer/drawer-popup-variants.d.ts +1 -1
- package/dist/components/overlays/drawer/drawer-popup-variants.js +1 -2
- package/dist/components/overlays/drawer/drawer-popup-variants.js.map +1 -1
- package/dist/components/overlays/drawer/drawer-title.d.ts +1 -2
- package/dist/components/overlays/drawer/drawer-title.js +1 -2
- package/dist/components/overlays/drawer/drawer-title.js.map +1 -1
- package/dist/components/overlays/menu/create-handle.d.ts +10 -0
- package/dist/components/overlays/menu/create-handle.js +11 -0
- package/dist/components/overlays/menu/create-handle.js.map +1 -0
- package/dist/components/overlays/menu/index.parts.d.ts +21 -3
- package/dist/components/overlays/menu/index.parts.js +38 -2
- package/dist/components/overlays/menu/index.parts.js.map +1 -1
- package/dist/components/overlays/menu/menu-arrow.d.ts +17 -0
- package/dist/components/overlays/menu/menu-arrow.js +48 -0
- package/dist/components/overlays/menu/menu-arrow.js.map +1 -0
- package/dist/components/overlays/menu/menu-backdrop.d.ts +16 -0
- package/dist/components/overlays/menu/menu-backdrop.js +36 -0
- package/dist/components/overlays/menu/menu-backdrop.js.map +1 -0
- package/dist/components/overlays/menu/menu-checkbox-item-indicator.d.ts +16 -0
- package/dist/components/overlays/menu/menu-checkbox-item-indicator.js +27 -0
- package/dist/components/overlays/menu/menu-checkbox-item-indicator.js.map +1 -0
- package/dist/components/overlays/menu/menu-checkbox-item.d.ts +24 -0
- package/dist/components/overlays/menu/menu-checkbox-item.js +31 -0
- package/dist/components/overlays/menu/menu-checkbox-item.js.map +1 -0
- package/dist/components/overlays/menu/menu-clear.d.ts +20 -0
- package/dist/components/overlays/menu/menu-clear.js +45 -0
- package/dist/components/overlays/menu/menu-clear.js.map +1 -0
- package/dist/components/overlays/menu/menu-empty.d.ts +18 -0
- package/dist/components/overlays/menu/menu-empty.js +32 -0
- package/dist/components/overlays/menu/menu-empty.js.map +1 -0
- package/dist/components/overlays/menu/menu-filter-provider.d.ts +43 -0
- package/dist/components/overlays/menu/menu-filter-provider.js +42 -0
- package/dist/components/overlays/menu/menu-filter-provider.js.map +1 -0
- package/dist/components/overlays/menu/menu-group-label.d.ts +1 -1
- package/dist/components/overlays/menu/menu-group-label.js +1 -1
- package/dist/components/overlays/menu/menu-group-label.js.map +1 -1
- package/dist/components/overlays/menu/menu-input.d.ts +22 -0
- package/dist/components/overlays/menu/menu-input.js +58 -0
- package/dist/components/overlays/menu/menu-input.js.map +1 -0
- package/dist/components/overlays/menu/menu-item-variants.d.ts +2 -2
- package/dist/components/overlays/menu/menu-item-variants.js +7 -7
- package/dist/components/overlays/menu/menu-item-variants.js.map +1 -1
- package/dist/components/overlays/menu/menu-link-item.d.ts +19 -0
- package/dist/components/overlays/menu/menu-link-item.js +28 -0
- package/dist/components/overlays/menu/menu-link-item.js.map +1 -0
- package/dist/components/overlays/menu/menu-list.d.ts +25 -0
- package/dist/components/overlays/menu/menu-list.js +43 -0
- package/dist/components/overlays/menu/menu-list.js.map +1 -0
- package/dist/components/overlays/menu/menu-popup.d.ts +7 -6
- package/dist/components/overlays/menu/menu-popup.js +9 -9
- package/dist/components/overlays/menu/menu-popup.js.map +1 -1
- package/dist/components/overlays/menu/menu-positioner.d.ts +5 -1
- package/dist/components/overlays/menu/menu-positioner.js +11 -2
- package/dist/components/overlays/menu/menu-positioner.js.map +1 -1
- package/dist/components/overlays/menu/menu-radio-group.d.ts +17 -0
- package/dist/components/overlays/menu/menu-radio-group.js +22 -0
- package/dist/components/overlays/menu/menu-radio-group.js.map +1 -0
- package/dist/components/overlays/menu/menu-radio-item-indicator.d.ts +16 -0
- package/dist/components/overlays/menu/menu-radio-item-indicator.js +34 -0
- package/dist/components/overlays/menu/menu-radio-item-indicator.js.map +1 -0
- package/dist/components/overlays/menu/menu-radio-item.d.ts +21 -0
- package/dist/components/overlays/menu/menu-radio-item.js +30 -0
- package/dist/components/overlays/menu/menu-radio-item.js.map +1 -0
- package/dist/components/overlays/menu/menu-root.d.ts +15 -6
- package/dist/components/overlays/menu/menu-root.js +15 -6
- package/dist/components/overlays/menu/menu-root.js.map +1 -1
- package/dist/components/overlays/menu/menu-separator.d.ts +6 -1
- package/dist/components/overlays/menu/menu-separator.js +6 -1
- package/dist/components/overlays/menu/menu-separator.js.map +1 -1
- package/dist/components/overlays/menu/menu-submenu-root.d.ts +39 -0
- package/dist/components/overlays/menu/menu-submenu-root.js +42 -0
- package/dist/components/overlays/menu/menu-submenu-root.js.map +1 -0
- package/dist/components/overlays/menu/menu-submenu-trigger.d.ts +21 -0
- package/dist/components/overlays/menu/menu-submenu-trigger.js +40 -0
- package/dist/components/overlays/menu/menu-submenu-trigger.js.map +1 -0
- package/dist/components/overlays/menu/menu-viewport.d.ts +19 -0
- package/dist/components/overlays/menu/menu-viewport.js +51 -0
- package/dist/components/overlays/menu/menu-viewport.js.map +1 -0
- package/dist/components/overlays/menu/use-filter.d.ts +19 -0
- package/dist/components/overlays/menu/use-filter.js +19 -0
- package/dist/components/overlays/menu/use-filter.js.map +1 -0
- package/dist/components/overlays/menu/use-menu-submenu-context.d.ts +9 -0
- package/dist/components/overlays/menu/use-menu-submenu-context.js +12 -0
- package/dist/components/overlays/menu/use-menu-submenu-context.js.map +1 -0
- package/dist/components/overlays/popover/popover-arrow.d.ts +2 -2
- package/dist/components/overlays/popover/popover-arrow.js +2 -2
- package/dist/components/overlays/popover/popover-arrow.js.map +1 -1
- package/dist/components/overlays/popover/popover-backdrop.d.ts +5 -4
- package/dist/components/overlays/popover/popover-backdrop.js +5 -4
- package/dist/components/overlays/popover/popover-backdrop.js.map +1 -1
- package/dist/components/overlays/popover/popover-popup-variants.d.ts +3 -2
- package/dist/components/overlays/popover/popover-popup-variants.js +3 -2
- package/dist/components/overlays/popover/popover-popup-variants.js.map +1 -1
- package/dist/components/overlays/popover/popover-positioner.d.ts +4 -3
- package/dist/components/overlays/popover/popover-positioner.js +4 -3
- package/dist/components/overlays/popover/popover-positioner.js.map +1 -1
- package/dist/components/overlays/popover/popover-viewport.d.ts +4 -4
- package/dist/components/overlays/popover/popover-viewport.js +4 -4
- package/dist/components/overlays/popover/popover-viewport.js.map +1 -1
- package/dist/components/typography/highlight/highlight.d.ts +35 -0
- package/dist/components/typography/highlight/highlight.js +43 -0
- package/dist/components/typography/highlight/highlight.js.map +1 -0
- package/dist/components/typography/highlight/index.d.ts +2 -0
- package/dist/components/typography/highlight/index.js +2 -0
- package/dist/components/typography/kbd/kbd-variants.d.ts +1 -1
- package/dist/components/typography/kbd/kbd-variants.js +9 -9
- package/dist/components/typography/kbd/kbd-variants.js.map +1 -1
- package/dist/components/typography/link/index.d.ts +3 -0
- package/dist/components/typography/link/index.js +2 -0
- package/dist/components/typography/link/link-variants.d.ts +33 -0
- package/dist/components/typography/link/link-variants.js +91 -0
- package/dist/components/typography/link/link-variants.js.map +1 -0
- package/dist/components/typography/link/link.d.ts +50 -0
- package/dist/components/typography/link/link.js +74 -0
- package/dist/components/typography/link/link.js.map +1 -0
- package/dist/components/typography/mark/mark-variants.d.ts +8 -2
- package/dist/components/typography/mark/mark-variants.js +25 -21
- package/dist/components/typography/mark/mark-variants.js.map +1 -1
- package/dist/components/typography/pre/pre-variants.d.ts +1 -1
- package/dist/components/typography/pre/pre-variants.js +25 -25
- package/dist/components/typography/pre/pre-variants.js.map +1 -1
- package/dist/types/color-scheme.d.ts +2 -2
- package/package.json +17 -5
- package/src/theme/theme.css +1268 -1228
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ColorSchemeCore } from "../../../types/color-scheme.js";
|
|
2
|
+
//#region src/components/fields/segmented-control/use-segmented-control-context.d.ts
|
|
3
|
+
/**
|
|
4
|
+
* Variantes do SegmentedControl. Informadas no `SegmentedControl.Root` e repassadas aos itens por
|
|
5
|
+
* contexto.
|
|
6
|
+
*/
|
|
7
|
+
export type SegmentedControlVariants = {
|
|
8
|
+
/**
|
|
9
|
+
* Cor do item marcado, que é o `solid` do `Button`: preto ou branco no `gray`, `accent-9` no
|
|
10
|
+
* `accent`. A trilha é neutra nas duas.
|
|
11
|
+
*
|
|
12
|
+
* @default 'gray'
|
|
13
|
+
*/
|
|
14
|
+
colorScheme?: ColorSchemeCore;
|
|
15
|
+
/**
|
|
16
|
+
* Disposição dos itens. O `RadioGroup` do Base UI não tem orientação: as setas andam entre os
|
|
17
|
+
* itens nas duas direções, qualquer que seja o valor.
|
|
18
|
+
*
|
|
19
|
+
* @default 'horizontal'
|
|
20
|
+
*/
|
|
21
|
+
orientation?: 'horizontal' | 'vertical';
|
|
22
|
+
/**
|
|
23
|
+
* Altura total do controle, padding, tamanho do texto e do ícone. Segue a altura dos campos de
|
|
24
|
+
* formulário: `xs` = `h-8`, `sm` = `h-9`, `md` = `h-10`, `lg` = `h-11`.
|
|
25
|
+
*
|
|
26
|
+
* @default 'sm'
|
|
27
|
+
*/
|
|
28
|
+
size?: 'xs' | 'sm' | 'md' | 'lg';
|
|
29
|
+
};
|
|
30
|
+
export declare const segmentedControlDefaultVariants: Required<SegmentedControlVariants>;
|
|
31
|
+
export declare const SegmentedControlContextProvider: import("react").Provider<SegmentedControlVariants>, useSegmentedControlContext: () => SegmentedControlVariants;
|
|
32
|
+
//#endregion
|
|
33
|
+
//# sourceMappingURL=use-segmented-control-context.d.ts.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createContext } from "@lucasbernardosn/react-utils";
|
|
2
|
+
//#region src/components/fields/segmented-control/use-segmented-control-context.ts
|
|
3
|
+
const segmentedControlDefaultVariants = {
|
|
4
|
+
colorScheme: "gray",
|
|
5
|
+
orientation: "horizontal",
|
|
6
|
+
size: "sm"
|
|
7
|
+
};
|
|
8
|
+
const [SegmentedControlContextProvider, useSegmentedControlContext] = createContext({
|
|
9
|
+
name: "SegmentedControlContext",
|
|
10
|
+
providers: ["SegmentedControl.Root"]
|
|
11
|
+
});
|
|
12
|
+
//#endregion
|
|
13
|
+
export { SegmentedControlContextProvider, segmentedControlDefaultVariants, useSegmentedControlContext };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=use-segmented-control-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-segmented-control-context.js","names":[],"sources":["../../../../src/components/fields/segmented-control/use-segmented-control-context.ts"],"sourcesContent":["import { createContext } from '@lucasbernardosn/react-utils';\nimport type { ColorSchemeCore } from '#types';\n\n/**\n * Variantes do SegmentedControl. Informadas no `SegmentedControl.Root` e repassadas aos itens por\n * contexto.\n */\nexport type SegmentedControlVariants = {\n /**\n * Cor do item marcado, que é o `solid` do `Button`: preto ou branco no `gray`, `accent-9` no\n * `accent`. A trilha é neutra nas duas.\n *\n * @default 'gray'\n */\n colorScheme?: ColorSchemeCore;\n /**\n * Disposição dos itens. O `RadioGroup` do Base UI não tem orientação: as setas andam entre os\n * itens nas duas direções, qualquer que seja o valor.\n *\n * @default 'horizontal'\n */\n orientation?: 'horizontal' | 'vertical';\n /**\n * Altura total do controle, padding, tamanho do texto e do ícone. Segue a altura dos campos de\n * formulário: `xs` = `h-8`, `sm` = `h-9`, `md` = `h-10`, `lg` = `h-11`.\n *\n * @default 'sm'\n */\n size?: 'xs' | 'sm' | 'md' | 'lg';\n};\n\nexport const segmentedControlDefaultVariants: Required<SegmentedControlVariants> =\n {\n colorScheme: 'gray',\n orientation: 'horizontal',\n size: 'sm',\n };\n\nexport const [SegmentedControlContextProvider, useSegmentedControlContext] =\n createContext<SegmentedControlVariants>({\n name: 'SegmentedControlContext',\n providers: ['SegmentedControl.Root'],\n });\n"],"mappings":";;AA+BA,MAAa,kCACX;CACE,aAAa;CACb,aAAa;CACb,MAAM;AACR;AAEF,MAAa,CAAC,iCAAiC,8BAC7C,cAAwC;CACtC,MAAM;CACN,WAAW,CAAC,uBAAuB;AACrC,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
//#region src/components/fields/segmented-control/use-segmented-control-indicator.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Mede o item marcado e escreve a posição do `SegmentedControl.Indicator` no próprio `Root`, nas
|
|
4
|
+
* variáveis `--segmented-control-indicator-left`, `-top`, `-width` e `-height` (o
|
|
5
|
+
* `offsetLeft`, `offsetTop`, `offsetWidth` e `offsetHeight` do item, em px). O `Root` é o
|
|
6
|
+
* ancestral posicionado do indicador e dos itens, então os dois medem a partir da mesma origem.
|
|
7
|
+
*
|
|
8
|
+
* A medida é refeita quando o item marcado muda (`data-checked`, seja o valor controlado ou não),
|
|
9
|
+
* quando um item entra ou sai e quando o `Root` ou um item muda de tamanho (fonte que carrega,
|
|
10
|
+
* texto que muda, largura que muda). Sem item marcado, as variáveis ficam como estavam e o CSS
|
|
11
|
+
* esconde o indicador. Um controle sem layout (`display: none`) não é medido.
|
|
12
|
+
*
|
|
13
|
+
* `isMeasured` vira `true` na primeira medida e não volta: até lá o `Root` não tem
|
|
14
|
+
* `data-measured`, o indicador fica escondido, o item marcado se pinta e a transição do indicador
|
|
15
|
+
* está desligada. Assim o primeiro desenho não tem o salto do indicador chegando da origem.
|
|
16
|
+
*/
|
|
17
|
+
export declare const useSegmentedControlIndicator: () => {
|
|
18
|
+
rootRef: import("react").RefObject<HTMLDivElement | null>;
|
|
19
|
+
isMeasured: boolean;
|
|
20
|
+
};
|
|
21
|
+
//#endregion
|
|
22
|
+
//# sourceMappingURL=use-segmented-control-indicator.d.ts.map
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { useRef, useState } from "react";
|
|
2
|
+
import { useIsoLayoutEffect } from "@base-ui/utils/useIsoLayoutEffect";
|
|
3
|
+
//#region src/components/fields/segmented-control/use-segmented-control-indicator.ts
|
|
4
|
+
const itemSelector = "[data-component=\"SegmentedControl.Item\"]";
|
|
5
|
+
const checkedItemSelector = `${itemSelector}[data-checked]`;
|
|
6
|
+
/**
|
|
7
|
+
* Mede o item marcado e escreve a posição do `SegmentedControl.Indicator` no próprio `Root`, nas
|
|
8
|
+
* variáveis `--segmented-control-indicator-left`, `-top`, `-width` e `-height` (o
|
|
9
|
+
* `offsetLeft`, `offsetTop`, `offsetWidth` e `offsetHeight` do item, em px). O `Root` é o
|
|
10
|
+
* ancestral posicionado do indicador e dos itens, então os dois medem a partir da mesma origem.
|
|
11
|
+
*
|
|
12
|
+
* A medida é refeita quando o item marcado muda (`data-checked`, seja o valor controlado ou não),
|
|
13
|
+
* quando um item entra ou sai e quando o `Root` ou um item muda de tamanho (fonte que carrega,
|
|
14
|
+
* texto que muda, largura que muda). Sem item marcado, as variáveis ficam como estavam e o CSS
|
|
15
|
+
* esconde o indicador. Um controle sem layout (`display: none`) não é medido.
|
|
16
|
+
*
|
|
17
|
+
* `isMeasured` vira `true` na primeira medida e não volta: até lá o `Root` não tem
|
|
18
|
+
* `data-measured`, o indicador fica escondido, o item marcado se pinta e a transição do indicador
|
|
19
|
+
* está desligada. Assim o primeiro desenho não tem o salto do indicador chegando da origem.
|
|
20
|
+
*/
|
|
21
|
+
const useSegmentedControlIndicator = () => {
|
|
22
|
+
const rootRef = useRef(null);
|
|
23
|
+
const [isMeasured, setIsMeasured] = useState(false);
|
|
24
|
+
useIsoLayoutEffect(() => {
|
|
25
|
+
const root = rootRef.current;
|
|
26
|
+
if (!root) return;
|
|
27
|
+
const measure = () => {
|
|
28
|
+
const item = root.querySelector(checkedItemSelector);
|
|
29
|
+
if (!item || item.offsetWidth === 0 && item.offsetHeight === 0) return;
|
|
30
|
+
root.style.setProperty("--segmented-control-indicator-left", `${item.offsetLeft}px`);
|
|
31
|
+
root.style.setProperty("--segmented-control-indicator-top", `${item.offsetTop}px`);
|
|
32
|
+
root.style.setProperty("--segmented-control-indicator-width", `${item.offsetWidth}px`);
|
|
33
|
+
root.style.setProperty("--segmented-control-indicator-height", `${item.offsetHeight}px`);
|
|
34
|
+
setIsMeasured(true);
|
|
35
|
+
};
|
|
36
|
+
const resizeObserver = new ResizeObserver(measure);
|
|
37
|
+
const observeSizes = () => {
|
|
38
|
+
resizeObserver.disconnect();
|
|
39
|
+
resizeObserver.observe(root);
|
|
40
|
+
for (const item of root.querySelectorAll(itemSelector)) resizeObserver.observe(item);
|
|
41
|
+
};
|
|
42
|
+
const mutationObserver = new MutationObserver((records) => {
|
|
43
|
+
if (records.some((record) => record.type === "childList")) observeSizes();
|
|
44
|
+
measure();
|
|
45
|
+
});
|
|
46
|
+
mutationObserver.observe(root, {
|
|
47
|
+
attributes: true,
|
|
48
|
+
attributeFilter: ["data-checked"],
|
|
49
|
+
childList: true,
|
|
50
|
+
subtree: true
|
|
51
|
+
});
|
|
52
|
+
observeSizes();
|
|
53
|
+
measure();
|
|
54
|
+
return () => {
|
|
55
|
+
resizeObserver.disconnect();
|
|
56
|
+
mutationObserver.disconnect();
|
|
57
|
+
};
|
|
58
|
+
}, []);
|
|
59
|
+
return {
|
|
60
|
+
rootRef,
|
|
61
|
+
isMeasured
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
//#endregion
|
|
65
|
+
export { useSegmentedControlIndicator };
|
|
66
|
+
|
|
67
|
+
//# sourceMappingURL=use-segmented-control-indicator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-segmented-control-indicator.js","names":[],"sources":["../../../../src/components/fields/segmented-control/use-segmented-control-indicator.ts"],"sourcesContent":["import { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useRef, useState } from 'react';\n\nconst itemSelector = '[data-component=\"SegmentedControl.Item\"]';\n\nconst checkedItemSelector = `${itemSelector}[data-checked]`;\n\n/**\n * Mede o item marcado e escreve a posição do `SegmentedControl.Indicator` no próprio `Root`, nas\n * variáveis `--segmented-control-indicator-left`, `-top`, `-width` e `-height` (o\n * `offsetLeft`, `offsetTop`, `offsetWidth` e `offsetHeight` do item, em px). O `Root` é o\n * ancestral posicionado do indicador e dos itens, então os dois medem a partir da mesma origem.\n *\n * A medida é refeita quando o item marcado muda (`data-checked`, seja o valor controlado ou não),\n * quando um item entra ou sai e quando o `Root` ou um item muda de tamanho (fonte que carrega,\n * texto que muda, largura que muda). Sem item marcado, as variáveis ficam como estavam e o CSS\n * esconde o indicador. Um controle sem layout (`display: none`) não é medido.\n *\n * `isMeasured` vira `true` na primeira medida e não volta: até lá o `Root` não tem\n * `data-measured`, o indicador fica escondido, o item marcado se pinta e a transição do indicador\n * está desligada. Assim o primeiro desenho não tem o salto do indicador chegando da origem.\n */\nexport const useSegmentedControlIndicator = () => {\n const rootRef = useRef<HTMLDivElement>(null);\n\n const [isMeasured, setIsMeasured] = useState(false);\n\n useIsoLayoutEffect(() => {\n const root = rootRef.current;\n\n if (!root) {\n return;\n }\n\n const measure = () => {\n const item = root.querySelector<HTMLElement>(checkedItemSelector);\n\n if (!item || (item.offsetWidth === 0 && item.offsetHeight === 0)) {\n return;\n }\n\n root.style.setProperty(\n '--segmented-control-indicator-left',\n `${item.offsetLeft}px`,\n );\n root.style.setProperty(\n '--segmented-control-indicator-top',\n `${item.offsetTop}px`,\n );\n root.style.setProperty(\n '--segmented-control-indicator-width',\n `${item.offsetWidth}px`,\n );\n root.style.setProperty(\n '--segmented-control-indicator-height',\n `${item.offsetHeight}px`,\n );\n\n setIsMeasured(true);\n };\n\n const resizeObserver = new ResizeObserver(measure);\n\n const observeSizes = () => {\n resizeObserver.disconnect();\n resizeObserver.observe(root);\n\n for (const item of root.querySelectorAll(itemSelector)) {\n resizeObserver.observe(item);\n }\n };\n\n const mutationObserver = new MutationObserver((records) => {\n if (records.some((record) => record.type === 'childList')) {\n observeSizes();\n }\n\n measure();\n });\n\n mutationObserver.observe(root, {\n attributes: true,\n attributeFilter: ['data-checked'],\n childList: true,\n subtree: true,\n });\n\n observeSizes();\n measure();\n\n return () => {\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n };\n }, []);\n\n return { rootRef, isMeasured };\n};\n"],"mappings":";;;AAGA,MAAM,eAAe;AAErB,MAAM,sBAAsB,GAAG,aAAa;;;;;;;;;;;;;;;;AAiB5C,MAAa,qCAAqC;CAChD,MAAM,UAAU,OAAuB,IAAI;CAE3C,MAAM,CAAC,YAAY,iBAAiB,SAAS,KAAK;CAElD,yBAAyB;EACvB,MAAM,OAAO,QAAQ;EAErB,IAAI,CAAC,MACH;EAGF,MAAM,gBAAgB;GACpB,MAAM,OAAO,KAAK,cAA2B,mBAAmB;GAEhE,IAAI,CAAC,QAAS,KAAK,gBAAgB,KAAK,KAAK,iBAAiB,GAC5D;GAGF,KAAK,MAAM,YACT,sCACA,GAAG,KAAK,WAAW,GACrB;GACA,KAAK,MAAM,YACT,qCACA,GAAG,KAAK,UAAU,GACpB;GACA,KAAK,MAAM,YACT,uCACA,GAAG,KAAK,YAAY,GACtB;GACA,KAAK,MAAM,YACT,wCACA,GAAG,KAAK,aAAa,GACvB;GAEA,cAAc,IAAI;EACpB;EAEA,MAAM,iBAAiB,IAAI,eAAe,OAAO;EAEjD,MAAM,qBAAqB;GACzB,eAAe,WAAW;GAC1B,eAAe,QAAQ,IAAI;GAE3B,KAAK,MAAM,QAAQ,KAAK,iBAAiB,YAAY,GACnD,eAAe,QAAQ,IAAI;EAE/B;EAEA,MAAM,mBAAmB,IAAI,kBAAkB,YAAY;GACzD,IAAI,QAAQ,MAAM,WAAW,OAAO,SAAS,WAAW,GACtD,aAAa;GAGf,QAAQ;EACV,CAAC;EAED,iBAAiB,QAAQ,MAAM;GAC7B,YAAY;GACZ,iBAAiB,CAAC,cAAc;GAChC,WAAW;GACX,SAAS;EACX,CAAC;EAED,aAAa;EACb,QAAQ;EAER,aAAa;GACX,eAAe,WAAW;GAC1B,iBAAiB,WAAW;EAC9B;CACF,GAAG,CAAC,CAAC;CAEL,OAAO;EAAE;EAAS;CAAW;AAC/B"}
|
|
@@ -26,7 +26,7 @@ export declare const switchRootDefaultVariants: Required<SwitchRootVariants>;
|
|
|
26
26
|
* de foco também fica vermelho.
|
|
27
27
|
*/
|
|
28
28
|
export declare const switchRootVariants: (props?: ({
|
|
29
|
-
colorScheme?: "gray" | "
|
|
29
|
+
colorScheme?: "gray" | "accent" | null | undefined;
|
|
30
30
|
size?: "xs" | "sm" | "md" | "lg" | null | undefined;
|
|
31
31
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
32
32
|
//#endregion
|
|
@@ -54,10 +54,10 @@ const switchRootVariants = cva([
|
|
|
54
54
|
"dark:[--switch-thumb-checked-bg:var(--color-black)]",
|
|
55
55
|
"ring-gray-9"
|
|
56
56
|
],
|
|
57
|
-
|
|
58
|
-
"[--switch-checked-bg:var(--
|
|
57
|
+
accent: [
|
|
58
|
+
"[--switch-checked-bg:var(--accent-9)]",
|
|
59
59
|
"[--switch-thumb-checked-bg:var(--color-white)]",
|
|
60
|
-
"ring-
|
|
60
|
+
"ring-accent-9"
|
|
61
61
|
]
|
|
62
62
|
},
|
|
63
63
|
size: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch-root-variants.js","names":[],"sources":["../../../../src/components/fields/switch/switch-root-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport type { ColorSchemeCore } from '#types';\n\nexport type SwitchRootVariants = {\n /**\n * Cor do trilho ligado, da bolinha ligada e do anel de foco.\n *\n * @default 'gray'\n */\n colorScheme?: ColorSchemeCore;\n /**\n * Tamanho do trilho. A bolinha do `Switch.Thumb` acompanha.\n *\n * @default 'md'\n */\n size?: 'xs' | 'sm' | 'md' | 'lg';\n};\n\nexport const switchRootDefaultVariants: Required<SwitchRootVariants> = {\n colorScheme: 'gray',\n size: 'md',\n};\n\n/**\n * O trilho declara as medidas e as cores em CSS variables, e o `Switch.Thumb` as lê:\n * - `--switch-width` e `--switch-height` vêm do `size`, e a bolinha mede a altura do trilho;\n * - `--switch-x` é o deslocamento da bolinha ligada (a largura menos a altura), negativo em RTL;\n * - `--switch-checked-bg` e `--switch-thumb-checked-bg` vêm do `colorScheme`.\n *\n * Inválido (`data-invalid` do `Field` ou `aria-invalid`) contorna o trilho desligado de vermelho,\n * como a caixa desmarcada do `Checkbox`: o erro de um switch quase sempre é \"não ligado\". O anel\n * de foco também fica vermelho.\n */\nexport const switchRootVariants = cva(\n [\n 'relative',\n 'inline-flex',\n 'shrink-0',\n 'align-middle',\n\n 'w-(--switch-width)',\n 'h-(--switch-height)',\n\n '[--switch-x:calc(var(--switch-width)-var(--switch-height))]',\n 'rtl:[--switch-x:calc((var(--switch-width)-var(--switch-height))*-1)]',\n\n 'rounded-full',\n\n 'bg-gray-6',\n 'data-checked:bg-(--switch-checked-bg)',\n 'inset-shadow-sm',\n\n 'transition-[background-color]', // O `transition-colors` animaria também a cor do anel de foco\n\n 'cursor-pointer',\n 'select-none',\n\n 'focus-ring-outside',\n\n 'data-disabled:opacity-50',\n 'data-disabled:cursor-not-allowed',\n\n 'data-readonly:cursor-default',\n\n 'data-invalid:not-data-checked:outline-2',\n 'data-invalid:not-data-checked:outline-offset-2',\n 'data-invalid:not-data-checked:outline-solid',\n 'data-invalid:not-data-checked:outline-red-9',\n 'aria-invalid:not-data-checked:outline-2',\n 'aria-invalid:not-data-checked:outline-offset-2',\n 'aria-invalid:not-data-checked:outline-solid',\n 'aria-invalid:not-data-checked:outline-red-9',\n 'data-invalid:ring-red-9',\n 'aria-invalid:ring-red-9',\n ],\n {\n variants: {\n colorScheme: {\n gray: [\n '[--switch-checked-bg:var(--color-black)]',\n 'dark:[--switch-checked-bg:var(--color-white)]',\n '[--switch-thumb-checked-bg:var(--color-white)]',\n 'dark:[--switch-thumb-checked-bg:var(--color-black)]',\n 'ring-gray-9',\n ],\n
|
|
1
|
+
{"version":3,"file":"switch-root-variants.js","names":[],"sources":["../../../../src/components/fields/switch/switch-root-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport type { ColorSchemeCore } from '#types';\n\nexport type SwitchRootVariants = {\n /**\n * Cor do trilho ligado, da bolinha ligada e do anel de foco.\n *\n * @default 'gray'\n */\n colorScheme?: ColorSchemeCore;\n /**\n * Tamanho do trilho. A bolinha do `Switch.Thumb` acompanha.\n *\n * @default 'md'\n */\n size?: 'xs' | 'sm' | 'md' | 'lg';\n};\n\nexport const switchRootDefaultVariants: Required<SwitchRootVariants> = {\n colorScheme: 'gray',\n size: 'md',\n};\n\n/**\n * O trilho declara as medidas e as cores em CSS variables, e o `Switch.Thumb` as lê:\n * - `--switch-width` e `--switch-height` vêm do `size`, e a bolinha mede a altura do trilho;\n * - `--switch-x` é o deslocamento da bolinha ligada (a largura menos a altura), negativo em RTL;\n * - `--switch-checked-bg` e `--switch-thumb-checked-bg` vêm do `colorScheme`.\n *\n * Inválido (`data-invalid` do `Field` ou `aria-invalid`) contorna o trilho desligado de vermelho,\n * como a caixa desmarcada do `Checkbox`: o erro de um switch quase sempre é \"não ligado\". O anel\n * de foco também fica vermelho.\n */\nexport const switchRootVariants = cva(\n [\n 'relative',\n 'inline-flex',\n 'shrink-0',\n 'align-middle',\n\n 'w-(--switch-width)',\n 'h-(--switch-height)',\n\n '[--switch-x:calc(var(--switch-width)-var(--switch-height))]',\n 'rtl:[--switch-x:calc((var(--switch-width)-var(--switch-height))*-1)]',\n\n 'rounded-full',\n\n 'bg-gray-6',\n 'data-checked:bg-(--switch-checked-bg)',\n 'inset-shadow-sm',\n\n 'transition-[background-color]', // O `transition-colors` animaria também a cor do anel de foco\n\n 'cursor-pointer',\n 'select-none',\n\n 'focus-ring-outside',\n\n 'data-disabled:opacity-50',\n 'data-disabled:cursor-not-allowed',\n\n 'data-readonly:cursor-default',\n\n 'data-invalid:not-data-checked:outline-2',\n 'data-invalid:not-data-checked:outline-offset-2',\n 'data-invalid:not-data-checked:outline-solid',\n 'data-invalid:not-data-checked:outline-red-9',\n 'aria-invalid:not-data-checked:outline-2',\n 'aria-invalid:not-data-checked:outline-offset-2',\n 'aria-invalid:not-data-checked:outline-solid',\n 'aria-invalid:not-data-checked:outline-red-9',\n 'data-invalid:ring-red-9',\n 'aria-invalid:ring-red-9',\n ],\n {\n variants: {\n colorScheme: {\n gray: [\n '[--switch-checked-bg:var(--color-black)]',\n 'dark:[--switch-checked-bg:var(--color-white)]',\n '[--switch-thumb-checked-bg:var(--color-white)]',\n 'dark:[--switch-thumb-checked-bg:var(--color-black)]',\n 'ring-gray-9',\n ],\n accent: [\n '[--switch-checked-bg:var(--accent-9)]',\n '[--switch-thumb-checked-bg:var(--color-white)]',\n 'ring-accent-9',\n ],\n },\n size: {\n xs: ['[--switch-width:--spacing(6)]', '[--switch-height:--spacing(3)]'],\n sm: ['[--switch-width:--spacing(8)]', '[--switch-height:--spacing(4)]'],\n md: [\n '[--switch-width:--spacing(10)]',\n '[--switch-height:--spacing(5)]',\n ],\n lg: [\n '[--switch-width:--spacing(12)]',\n '[--switch-height:--spacing(6)]',\n ],\n },\n },\n defaultVariants: {\n colorScheme: switchRootDefaultVariants.colorScheme,\n size: switchRootDefaultVariants.size,\n },\n },\n);\n"],"mappings":";;AAkBA,MAAa,4BAA0D;CACrE,aAAa;CACb,MAAM;AACR;;;;;;;;;;;AAYA,MAAa,qBAAqB,IAChC;CACE;CACA;CACA;CACA;CAEA;CACA;CAEA;CACA;CAEA;CAEA;CACA;CACA;CAEA;CAEA;CACA;CAEA;CAEA;CACA;CAEA;CAEA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF,GACA;CACE,UAAU;EACR,aAAa;GACX,MAAM;IACJ;IACA;IACA;IACA;IACA;GACF;GACA,QAAQ;IACN;IACA;IACA;GACF;EACF;EACA,MAAM;GACJ,IAAI,CAAC,iCAAiC,gCAAgC;GACtE,IAAI,CAAC,iCAAiC,gCAAgC;GACtE,IAAI,CACF,kCACA,gCACF;GACA,IAAI,CACF,kCACA,gCACF;EACF;CACF;CACA,iBAAiB;EACf,aAAa,0BAA0B;EACvC,MAAM,0BAA0B;CAClC;AACF,CACF"}
|
|
@@ -52,16 +52,16 @@ const textareaVariants = cva([
|
|
|
52
52
|
"data-disabled:opacity-50",
|
|
53
53
|
"data-disabled:cursor-not-allowed",
|
|
54
54
|
"data-invalid:border-red-9",
|
|
55
|
-
"data-invalid:[--textarea-focus-color:var(--
|
|
55
|
+
"data-invalid:[--textarea-focus-color:var(--red-9)]",
|
|
56
56
|
"aria-invalid:border-red-9",
|
|
57
|
-
"aria-invalid:[--textarea-focus-color:var(--
|
|
57
|
+
"aria-invalid:[--textarea-focus-color:var(--red-9)]"
|
|
58
58
|
], {
|
|
59
59
|
variants: {
|
|
60
60
|
variant: {
|
|
61
61
|
outline: [
|
|
62
62
|
"bg-white/90",
|
|
63
63
|
"dark:bg-black/90",
|
|
64
|
-
"border-gray-
|
|
64
|
+
"border-gray-7"
|
|
65
65
|
],
|
|
66
66
|
subtle: ["bg-gray-4", "border-transparent"]
|
|
67
67
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea-variants.js","names":[],"sources":["../../../../src/components/fields/textarea/textarea-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\n\nexport type TextareaVariants = {\n /**\n * Padding e tamanho do texto, com os nomes do `Input`. Sem altura fixa: ela vem de `rows` ou,\n * com `field-sizing-content`, do conteúdo. Em tela de toque, do `2xs` ao `md` o texto sobe para\n * 16px, para o iPhone não dar zoom no foco.\n *\n * @default 'sm'\n */\n size?: '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';\n /**\n * Fundo e borda do campo.\n *\n * @default 'outline'\n */\n variant?: 'outline' | 'subtle';\n};\n\nexport const textareaDefaultVariants: Required<TextareaVariants> = {\n size: 'sm',\n variant: 'outline',\n};\n\n/**\n * Cópia de `inputVariants`, a origem do visual dos campos: o anel de foco e o inválido funcionam do\n * mesmo jeito, explicados lá. As diferenças:\n * - sem `data-placeholder` nem altura fixa: a altura vem de `rows` ou, com `field-sizing-content`,\n * do conteúdo;\n * - `block`, `resize-y` e o padding vertical em `--textarea-py`.\n *\n * Cada tamanho declara o padding vertical em `--textarea-py`, que três classes da base leem:\n * - `py`;\n * - `scroll-pb`: ao digitar na última linha de um textarea com rolagem, o navegador rola até o\n * cursor; sem ele, a linha fica colada na borda de baixo, sem o padding;\n * - `min-h`: uma linha (`1lh`, que acompanha o texto, inclusive em tela de toque), mais o padding e\n * a borda. Arrastando a alça, o campo não encolhe a ponto de cortar o texto.\n */\nexport const textareaVariants = cva(\n [\n 'relative',\n 'block', // Como `inline-block`, o padrão, deixa um vão embaixo, na linha de base do texto em volta\n 'w-full',\n 'min-h-[calc(1lh+var(--textarea-py)*2+2px)]',\n\n 'py-(--textarea-py)',\n 'scroll-pb-(--textarea-py)',\n\n 'appearance-none',\n 'outline-none',\n\n 'resize-y',\n\n 'text-start',\n 'font-normal', // Sem isto, herda o peso do `<label>` em volta\n 'text-gray-12',\n\n 'placeholder:text-gray-11/80',\n\n 'border',\n 'rounded-md',\n 'corner-squircle',\n\n '[--textarea-focus-color:var(--color-black)]',\n 'dark:[--textarea-focus-color:var(--color-white)]',\n\n 'focus-visible:outline-1',\n 'focus-visible:outline-solid',\n 'focus-visible:-outline-offset-2', // Offset = borda + anel: o campo não cresce no foco\n 'focus-visible:outline-(--textarea-focus-color)',\n 'focus-visible:border-(--textarea-focus-color)',\n\n 'data-focused:outline-1',\n 'data-focused:outline-solid',\n 'data-focused:-outline-offset-2',\n 'data-focused:outline-(--textarea-focus-color)',\n 'data-focused:border-(--textarea-focus-color)',\n\n 'disabled:opacity-50',\n 'disabled:cursor-not-allowed',\n\n 'data-disabled:opacity-50',\n 'data-disabled:cursor-not-allowed',\n\n 'data-invalid:border-red-9',\n 'data-invalid:[--textarea-focus-color:var(--
|
|
1
|
+
{"version":3,"file":"textarea-variants.js","names":[],"sources":["../../../../src/components/fields/textarea/textarea-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\n\nexport type TextareaVariants = {\n /**\n * Padding e tamanho do texto, com os nomes do `Input`. Sem altura fixa: ela vem de `rows` ou,\n * com `field-sizing-content`, do conteúdo. Em tela de toque, do `2xs` ao `md` o texto sobe para\n * 16px, para o iPhone não dar zoom no foco.\n *\n * @default 'sm'\n */\n size?: '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';\n /**\n * Fundo e borda do campo.\n *\n * @default 'outline'\n */\n variant?: 'outline' | 'subtle';\n};\n\nexport const textareaDefaultVariants: Required<TextareaVariants> = {\n size: 'sm',\n variant: 'outline',\n};\n\n/**\n * Cópia de `inputVariants`, a origem do visual dos campos: o anel de foco e o inválido funcionam do\n * mesmo jeito, explicados lá. As diferenças:\n * - sem `data-placeholder` nem altura fixa: a altura vem de `rows` ou, com `field-sizing-content`,\n * do conteúdo;\n * - `block`, `resize-y` e o padding vertical em `--textarea-py`.\n *\n * Cada tamanho declara o padding vertical em `--textarea-py`, que três classes da base leem:\n * - `py`;\n * - `scroll-pb`: ao digitar na última linha de um textarea com rolagem, o navegador rola até o\n * cursor; sem ele, a linha fica colada na borda de baixo, sem o padding;\n * - `min-h`: uma linha (`1lh`, que acompanha o texto, inclusive em tela de toque), mais o padding e\n * a borda. Arrastando a alça, o campo não encolhe a ponto de cortar o texto.\n */\nexport const textareaVariants = cva(\n [\n 'relative',\n 'block', // Como `inline-block`, o padrão, deixa um vão embaixo, na linha de base do texto em volta\n 'w-full',\n 'min-h-[calc(1lh+var(--textarea-py)*2+2px)]',\n\n 'py-(--textarea-py)',\n 'scroll-pb-(--textarea-py)',\n\n 'appearance-none',\n 'outline-none',\n\n 'resize-y',\n\n 'text-start',\n 'font-normal', // Sem isto, herda o peso do `<label>` em volta\n 'text-gray-12',\n\n 'placeholder:text-gray-11/80',\n\n 'border',\n 'rounded-md',\n 'corner-squircle',\n\n '[--textarea-focus-color:var(--color-black)]',\n 'dark:[--textarea-focus-color:var(--color-white)]',\n\n 'focus-visible:outline-1',\n 'focus-visible:outline-solid',\n 'focus-visible:-outline-offset-2', // Offset = borda + anel: o campo não cresce no foco\n 'focus-visible:outline-(--textarea-focus-color)',\n 'focus-visible:border-(--textarea-focus-color)',\n\n 'data-focused:outline-1',\n 'data-focused:outline-solid',\n 'data-focused:-outline-offset-2',\n 'data-focused:outline-(--textarea-focus-color)',\n 'data-focused:border-(--textarea-focus-color)',\n\n 'disabled:opacity-50',\n 'disabled:cursor-not-allowed',\n\n 'data-disabled:opacity-50',\n 'data-disabled:cursor-not-allowed',\n\n 'data-invalid:border-red-9',\n 'data-invalid:[--textarea-focus-color:var(--red-9)]',\n 'aria-invalid:border-red-9',\n 'aria-invalid:[--textarea-focus-color:var(--red-9)]',\n ],\n {\n variants: {\n variant: {\n outline: [\n 'bg-white/90',\n 'dark:bg-black/90',\n\n 'border-gray-7',\n ],\n subtle: [\n 'bg-gray-4',\n\n 'border-transparent',\n ],\n },\n size: {\n '2xs': [\n 'px-2',\n '[--textarea-py:--spacing(1)]',\n\n 'text-xs',\n // Em tela de toque, 16px: abaixo disso o Safari do iPhone dá zoom ao focar o campo.\n 'any-pointer-coarse:text-base',\n ],\n xs: [\n 'px-2',\n '[--textarea-py:--spacing(2)]',\n\n 'text-xs',\n 'any-pointer-coarse:text-base',\n ],\n sm: [\n 'px-2.5',\n '[--textarea-py:--spacing(2)]',\n\n 'text-sm',\n 'any-pointer-coarse:text-base',\n ],\n md: [\n 'px-3',\n '[--textarea-py:--spacing(2)]',\n\n 'text-sm',\n 'any-pointer-coarse:text-base',\n ],\n lg: [\n 'px-4',\n '[--textarea-py:--spacing(3)]',\n\n 'text-base',\n ],\n xl: [\n 'px-4.5',\n '[--textarea-py:--spacing(4)]',\n\n 'text-base',\n ],\n '2xl': [\n 'px-5',\n '[--textarea-py:--spacing(4)]',\n\n 'text-lg',\n ],\n },\n },\n defaultVariants: {\n size: textareaDefaultVariants.size,\n variant: textareaDefaultVariants.variant,\n },\n },\n);\n"],"mappings":";;AAmBA,MAAa,0BAAsD;CACjE,MAAM;CACN,SAAS;AACX;;;;;;;;;;;;;;;AAgBA,MAAa,mBAAmB,IAC9B;CACE;CACA;CACA;CACA;CAEA;CACA;CAEA;CACA;CAEA;CAEA;CACA;CACA;CAEA;CAEA;CACA;CACA;CAEA;CACA;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CAEA;CACA;CAEA;CACA;CACA;CACA;AACF,GACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;IACP;IACA;IAEA;GACF;GACA,QAAQ,CACN,aAEA,oBACF;EACF;EACA,MAAM;GACJ,OAAO;IACL;IACA;IAEA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IACA;GACF;GACA,IAAI;IACF;IACA;IAEA;IACA;GACF;GACA,IAAI;IACF;IACA;IAEA;IACA;GACF;GACA,IAAI;IACF;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;GACF;GACA,OAAO;IACL;IACA;IAEA;GACF;EACF;CACF;CACA,iBAAiB;EACf,MAAM,wBAAwB;EAC9B,SAAS,wBAAwB;CACnC;AACF,CACF"}
|
|
@@ -9,7 +9,7 @@ export type CenterAbsoluteVariants = {
|
|
|
9
9
|
};
|
|
10
10
|
export declare const centerAbsoluteDefaultVariants: Required<CenterAbsoluteVariants>;
|
|
11
11
|
export declare const centerAbsoluteVariants: (props?: ({
|
|
12
|
-
axis?: "
|
|
12
|
+
axis?: "both" | "horizontal" | "vertical" | null | undefined;
|
|
13
13
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
14
14
|
//#endregion
|
|
15
15
|
//# sourceMappingURL=center-absolute-variants.d.ts.map
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
//#region src/components/layout/group/group-variants.d.ts
|
|
2
|
+
export type GroupVariants = {
|
|
3
|
+
/**
|
|
4
|
+
* Cola os filhos, sem espaço entre eles: os cantos de dentro ficam retos e as bordas de dois
|
|
5
|
+
* vizinhos se sobrepõem numa só.
|
|
6
|
+
*
|
|
7
|
+
* @default false
|
|
8
|
+
*/
|
|
9
|
+
attached?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Direção em que os filhos ficam.
|
|
12
|
+
*
|
|
13
|
+
* @default 'horizontal'
|
|
14
|
+
*/
|
|
15
|
+
orientation?: 'horizontal' | 'vertical';
|
|
16
|
+
/**
|
|
17
|
+
* Ocupa a largura toda e divide o espaço em partes iguais entre os filhos.
|
|
18
|
+
*
|
|
19
|
+
* @default false
|
|
20
|
+
*/
|
|
21
|
+
grow?: boolean;
|
|
22
|
+
};
|
|
23
|
+
export declare const groupDefaultVariants: Required<GroupVariants>;
|
|
24
|
+
/**
|
|
25
|
+
* Com `attached`, o grupo tira os cantos de dentro dos filhos diretos e sobrepõe as bordas, só por
|
|
26
|
+
* CSS, sem clonar os filhos nem marcá-los. Cada regra do grupo (`.group > *:not(:first-child)`,
|
|
27
|
+
* 0,2,0) vence o `rounded-md` do filho (`.filho`, 0,1,0). Um filho que desenha a própria borda
|
|
28
|
+
* dentro de outro elemento (um `InputGroup` com addon, cuja caixa está um nível abaixo) não tem os
|
|
29
|
+
* cantos ajustados.
|
|
30
|
+
*
|
|
31
|
+
* A sobreposição de 1px (`-ms-px`, `-mt-px`) faz a borda de dois vizinhos coincidir. O filho com
|
|
32
|
+
* foco ou hover sobe, dentro do `isolate` do grupo, para a borda dele aparecer inteira por cima da
|
|
33
|
+
* vizinha; o `has()` cobre o filho que contém o elemento focado (um campo dentro de uma caixa) e o
|
|
34
|
+
* `data-focused` do `Field`. O foco (`z-2`) fica acima do hover (`z-1`): sem isso, passar o mouse
|
|
35
|
+
* no vizinho cobriria a borda do filho focado.
|
|
36
|
+
*/
|
|
37
|
+
export declare const groupVariants: (props?: ({
|
|
38
|
+
attached?: boolean | null | undefined;
|
|
39
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
40
|
+
grow?: boolean | null | undefined;
|
|
41
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
42
|
+
//#endregion
|
|
43
|
+
//# sourceMappingURL=group-variants.d.ts.map
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { cva } from "class-variance-authority";
|
|
2
|
+
//#region src/components/layout/group/group-variants.ts
|
|
3
|
+
const groupDefaultVariants = {
|
|
4
|
+
attached: false,
|
|
5
|
+
orientation: "horizontal",
|
|
6
|
+
grow: false
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Com `attached`, o grupo tira os cantos de dentro dos filhos diretos e sobrepõe as bordas, só por
|
|
10
|
+
* CSS, sem clonar os filhos nem marcá-los. Cada regra do grupo (`.group > *:not(:first-child)`,
|
|
11
|
+
* 0,2,0) vence o `rounded-md` do filho (`.filho`, 0,1,0). Um filho que desenha a própria borda
|
|
12
|
+
* dentro de outro elemento (um `InputGroup` com addon, cuja caixa está um nível abaixo) não tem os
|
|
13
|
+
* cantos ajustados.
|
|
14
|
+
*
|
|
15
|
+
* A sobreposição de 1px (`-ms-px`, `-mt-px`) faz a borda de dois vizinhos coincidir. O filho com
|
|
16
|
+
* foco ou hover sobe, dentro do `isolate` do grupo, para a borda dele aparecer inteira por cima da
|
|
17
|
+
* vizinha; o `has()` cobre o filho que contém o elemento focado (um campo dentro de uma caixa) e o
|
|
18
|
+
* `data-focused` do `Field`. O foco (`z-2`) fica acima do hover (`z-1`): sem isso, passar o mouse
|
|
19
|
+
* no vizinho cobriria a borda do filho focado.
|
|
20
|
+
*/
|
|
21
|
+
const groupVariants = cva(["relative", "isolate"], {
|
|
22
|
+
variants: {
|
|
23
|
+
attached: {
|
|
24
|
+
true: [
|
|
25
|
+
"gap-0",
|
|
26
|
+
"[&>*:focus-visible]:z-2",
|
|
27
|
+
"[&>*:has(:focus-visible)]:z-2",
|
|
28
|
+
"[&>*:has([data-focused])]:z-2",
|
|
29
|
+
"[&>*:hover]:z-1"
|
|
30
|
+
],
|
|
31
|
+
false: ["gap-2"]
|
|
32
|
+
},
|
|
33
|
+
orientation: {
|
|
34
|
+
horizontal: ["flex-row"],
|
|
35
|
+
vertical: ["flex-col"]
|
|
36
|
+
},
|
|
37
|
+
grow: {
|
|
38
|
+
true: [
|
|
39
|
+
"flex",
|
|
40
|
+
"w-full",
|
|
41
|
+
"*:flex-1"
|
|
42
|
+
],
|
|
43
|
+
false: ["inline-flex"]
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
compoundVariants: [{
|
|
47
|
+
attached: true,
|
|
48
|
+
orientation: "horizontal",
|
|
49
|
+
className: [
|
|
50
|
+
"[&>*:not(:first-child)]:rounded-s-none",
|
|
51
|
+
"[&>*:not(:last-child)]:rounded-e-none",
|
|
52
|
+
"[&>*:not(:first-child)]:-ms-px"
|
|
53
|
+
]
|
|
54
|
+
}, {
|
|
55
|
+
attached: true,
|
|
56
|
+
orientation: "vertical",
|
|
57
|
+
className: [
|
|
58
|
+
"[&>*:not(:first-child)]:rounded-t-none",
|
|
59
|
+
"[&>*:not(:last-child)]:rounded-b-none",
|
|
60
|
+
"[&>*:not(:first-child)]:-mt-px"
|
|
61
|
+
]
|
|
62
|
+
}],
|
|
63
|
+
defaultVariants: {
|
|
64
|
+
attached: groupDefaultVariants.attached,
|
|
65
|
+
orientation: groupDefaultVariants.orientation,
|
|
66
|
+
grow: groupDefaultVariants.grow
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
//#endregion
|
|
70
|
+
export { groupDefaultVariants, groupVariants };
|
|
71
|
+
|
|
72
|
+
//# sourceMappingURL=group-variants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"group-variants.js","names":[],"sources":["../../../../src/components/layout/group/group-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\n\nexport type GroupVariants = {\n /**\n * Cola os filhos, sem espaço entre eles: os cantos de dentro ficam retos e as bordas de dois\n * vizinhos se sobrepõem numa só.\n *\n * @default false\n */\n attached?: boolean;\n /**\n * Direção em que os filhos ficam.\n *\n * @default 'horizontal'\n */\n orientation?: 'horizontal' | 'vertical';\n /**\n * Ocupa a largura toda e divide o espaço em partes iguais entre os filhos.\n *\n * @default false\n */\n grow?: boolean;\n};\n\nexport const groupDefaultVariants: Required<GroupVariants> = {\n attached: false,\n orientation: 'horizontal',\n grow: false,\n};\n\n/**\n * Com `attached`, o grupo tira os cantos de dentro dos filhos diretos e sobrepõe as bordas, só por\n * CSS, sem clonar os filhos nem marcá-los. Cada regra do grupo (`.group > *:not(:first-child)`,\n * 0,2,0) vence o `rounded-md` do filho (`.filho`, 0,1,0). Um filho que desenha a própria borda\n * dentro de outro elemento (um `InputGroup` com addon, cuja caixa está um nível abaixo) não tem os\n * cantos ajustados.\n *\n * A sobreposição de 1px (`-ms-px`, `-mt-px`) faz a borda de dois vizinhos coincidir. O filho com\n * foco ou hover sobe, dentro do `isolate` do grupo, para a borda dele aparecer inteira por cima da\n * vizinha; o `has()` cobre o filho que contém o elemento focado (um campo dentro de uma caixa) e o\n * `data-focused` do `Field`. O foco (`z-2`) fica acima do hover (`z-1`): sem isso, passar o mouse\n * no vizinho cobriria a borda do filho focado.\n */\nexport const groupVariants = cva(['relative', 'isolate'], {\n variants: {\n attached: {\n true: [\n 'gap-0',\n\n '[&>*:focus-visible]:z-2',\n '[&>*:has(:focus-visible)]:z-2',\n '[&>*:has([data-focused])]:z-2',\n '[&>*:hover]:z-1',\n ],\n false: ['gap-2'],\n },\n orientation: {\n horizontal: ['flex-row'],\n vertical: ['flex-col'],\n },\n grow: {\n true: ['flex', 'w-full', '*:flex-1'],\n false: ['inline-flex'],\n },\n },\n compoundVariants: [\n {\n attached: true,\n orientation: 'horizontal',\n className: [\n '[&>*:not(:first-child)]:rounded-s-none',\n '[&>*:not(:last-child)]:rounded-e-none',\n '[&>*:not(:first-child)]:-ms-px',\n ],\n },\n {\n attached: true,\n orientation: 'vertical',\n className: [\n '[&>*:not(:first-child)]:rounded-t-none',\n '[&>*:not(:last-child)]:rounded-b-none',\n '[&>*:not(:first-child)]:-mt-px',\n ],\n },\n ],\n defaultVariants: {\n attached: groupDefaultVariants.attached,\n orientation: groupDefaultVariants.orientation,\n grow: groupDefaultVariants.grow,\n },\n});\n"],"mappings":";;AAwBA,MAAa,uBAAgD;CAC3D,UAAU;CACV,aAAa;CACb,MAAM;AACR;;;;;;;;;;;;;;AAeA,MAAa,gBAAgB,IAAI,CAAC,YAAY,SAAS,GAAG;CACxD,UAAU;EACR,UAAU;GACR,MAAM;IACJ;IAEA;IACA;IACA;IACA;GACF;GACA,OAAO,CAAC,OAAO;EACjB;EACA,aAAa;GACX,YAAY,CAAC,UAAU;GACvB,UAAU,CAAC,UAAU;EACvB;EACA,MAAM;GACJ,MAAM;IAAC;IAAQ;IAAU;GAAU;GACnC,OAAO,CAAC,aAAa;EACvB;CACF;CACA,kBAAkB,CAChB;EACE,UAAU;EACV,aAAa;EACb,WAAW;GACT;GACA;GACA;EACF;CACF,GACA;EACE,UAAU;EACV,aAAa;EACb,WAAW;GACT;GACA;GACA;EACF;CACF,CACF;CACA,iBAAiB;EACf,UAAU,qBAAqB;EAC/B,aAAa,qBAAqB;EAClC,MAAM,qBAAqB;CAC7B;AACF,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { GroupVariants } from "./group-variants.js";
|
|
2
|
+
import { MergeOverride } from "@lucasbernardosn/ts-utils";
|
|
3
|
+
import { useRender } from "@base-ui/react";
|
|
4
|
+
//#region src/components/layout/group/group.d.ts
|
|
5
|
+
export type GroupProps = MergeOverride<useRender.ComponentProps<'div'>, GroupVariants>;
|
|
6
|
+
/**
|
|
7
|
+
* Agrupa elementos lado a lado ou em coluna, com espaço entre eles ou colados: botões
|
|
8
|
+
* relacionados, um campo com um botão, o addon de um `InputGroup`. Os filhos esticam na altura
|
|
9
|
+
* (ou na largura, em coluna) do maior.
|
|
10
|
+
*
|
|
11
|
+
* - Com `attached`, o grupo tira os cantos de dentro dos filhos diretos e sobrepõe as bordas
|
|
12
|
+
* (o mecanismo está no `groupVariants`). Um filho que desenha a borda um nível abaixo dele
|
|
13
|
+
* (um `InputGroup` com addon) não tem os cantos de dentro ajustados.
|
|
14
|
+
* - O `grow` ocupa a linha toda e divide a largura em partes iguais.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* <Group attached>
|
|
19
|
+
* <Button variant="outline">Dia</Button>
|
|
20
|
+
* <Button variant="outline">Semana</Button>
|
|
21
|
+
* <Button variant="outline">Mês</Button>
|
|
22
|
+
* </Group>
|
|
23
|
+
*
|
|
24
|
+
* <Group attached>
|
|
25
|
+
* <InputGroup>
|
|
26
|
+
* <Input aria-label="Cupom" />
|
|
27
|
+
* </InputGroup>
|
|
28
|
+
*
|
|
29
|
+
* <Button>Aplicar</Button>
|
|
30
|
+
* </Group>
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export declare const Group: {
|
|
34
|
+
(props: GroupProps): import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
|
|
35
|
+
displayName: string;
|
|
36
|
+
};
|
|
37
|
+
//#endregion
|
|
38
|
+
//# sourceMappingURL=group.d.ts.map
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { mergeTwClassNames } from "../../../utils/merge-class-names.js";
|
|
2
|
+
import { groupVariants } from "./group-variants.js";
|
|
3
|
+
import { createSplitProps } from "@lucasbernardosn/ts-utils";
|
|
4
|
+
import { mergeProps, useRender } from "@base-ui/react";
|
|
5
|
+
//#region src/components/layout/group/group.tsx
|
|
6
|
+
const splitVariantProps = createSplitProps();
|
|
7
|
+
/**
|
|
8
|
+
* Agrupa elementos lado a lado ou em coluna, com espaço entre eles ou colados: botões
|
|
9
|
+
* relacionados, um campo com um botão, o addon de um `InputGroup`. Os filhos esticam na altura
|
|
10
|
+
* (ou na largura, em coluna) do maior.
|
|
11
|
+
*
|
|
12
|
+
* - Com `attached`, o grupo tira os cantos de dentro dos filhos diretos e sobrepõe as bordas
|
|
13
|
+
* (o mecanismo está no `groupVariants`). Um filho que desenha a borda um nível abaixo dele
|
|
14
|
+
* (um `InputGroup` com addon) não tem os cantos de dentro ajustados.
|
|
15
|
+
* - O `grow` ocupa a linha toda e divide a largura em partes iguais.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* <Group attached>
|
|
20
|
+
* <Button variant="outline">Dia</Button>
|
|
21
|
+
* <Button variant="outline">Semana</Button>
|
|
22
|
+
* <Button variant="outline">Mês</Button>
|
|
23
|
+
* </Group>
|
|
24
|
+
*
|
|
25
|
+
* <Group attached>
|
|
26
|
+
* <InputGroup>
|
|
27
|
+
* <Input aria-label="Cupom" />
|
|
28
|
+
* </InputGroup>
|
|
29
|
+
*
|
|
30
|
+
* <Button>Aplicar</Button>
|
|
31
|
+
* </Group>
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
const Group = (props) => {
|
|
35
|
+
const [variantProps, elementProps] = splitVariantProps(props, [
|
|
36
|
+
"attached",
|
|
37
|
+
"orientation",
|
|
38
|
+
"grow"
|
|
39
|
+
]);
|
|
40
|
+
const { render, className, ...rest } = elementProps;
|
|
41
|
+
const baseProps = {
|
|
42
|
+
"data-component": "Group",
|
|
43
|
+
className: mergeTwClassNames(groupVariants(variantProps), className)
|
|
44
|
+
};
|
|
45
|
+
return useRender({
|
|
46
|
+
render,
|
|
47
|
+
defaultTagName: "div",
|
|
48
|
+
props: mergeProps(baseProps, rest)
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
Group.displayName = "Group";
|
|
52
|
+
//#endregion
|
|
53
|
+
export { Group };
|
|
54
|
+
|
|
55
|
+
//# sourceMappingURL=group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"group.js","names":[],"sources":["../../../../src/components/layout/group/group.tsx"],"sourcesContent":["import { mergeProps, useRender } from '@base-ui/react';\nimport {\n createSplitProps,\n type MergeOverride,\n} from '@lucasbernardosn/ts-utils';\nimport { mergeTwClassNames } from '#utils';\nimport { type GroupVariants, groupVariants } from './group-variants';\n\nexport type GroupProps = MergeOverride<\n useRender.ComponentProps<'div'>,\n GroupVariants\n>;\n\nconst splitVariantProps = createSplitProps<GroupVariants>();\n\n/**\n * Agrupa elementos lado a lado ou em coluna, com espaço entre eles ou colados: botões\n * relacionados, um campo com um botão, o addon de um `InputGroup`. Os filhos esticam na altura\n * (ou na largura, em coluna) do maior.\n *\n * - Com `attached`, o grupo tira os cantos de dentro dos filhos diretos e sobrepõe as bordas\n * (o mecanismo está no `groupVariants`). Um filho que desenha a borda um nível abaixo dele\n * (um `InputGroup` com addon) não tem os cantos de dentro ajustados.\n * - O `grow` ocupa a linha toda e divide a largura em partes iguais.\n *\n * @example\n * ```tsx\n * <Group attached>\n * <Button variant=\"outline\">Dia</Button>\n * <Button variant=\"outline\">Semana</Button>\n * <Button variant=\"outline\">Mês</Button>\n * </Group>\n *\n * <Group attached>\n * <InputGroup>\n * <Input aria-label=\"Cupom\" />\n * </InputGroup>\n *\n * <Button>Aplicar</Button>\n * </Group>\n * ```\n */\nexport const Group = (props: GroupProps) => {\n const [variantProps, elementProps] = splitVariantProps(props, [\n 'attached',\n 'orientation',\n 'grow',\n ]);\n\n const { render, className, ...rest } = elementProps;\n\n const baseProps = {\n 'data-component': 'Group',\n className: mergeTwClassNames(groupVariants(variantProps), className),\n };\n\n return useRender({\n render,\n defaultTagName: 'div',\n props: mergeProps(baseProps, rest),\n });\n};\n\nGroup.displayName = 'Group';\n"],"mappings":";;;;;AAaA,MAAM,oBAAoB,iBAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6B1D,MAAa,SAAS,UAAsB;CAC1C,MAAM,CAAC,cAAc,gBAAgB,kBAAkB,OAAO;EAC5D;EACA;EACA;CACF,CAAC;CAED,MAAM,EAAE,QAAQ,WAAW,GAAG,SAAS;CAEvC,MAAM,YAAY;EAChB,kBAAkB;EAClB,WAAW,kBAAkB,cAAc,YAAY,GAAG,SAAS;CACrE;CAEA,OAAO,UAAU;EACf;EACA,gBAAgB;EAChB,OAAO,WAAW,WAAW,IAAI;CACnC,CAAC;AACH;AAEA,MAAM,cAAc"}
|
|
@@ -1,6 +1,17 @@
|
|
|
1
|
+
import { MergeOverride } from "@lucasbernardosn/ts-utils";
|
|
1
2
|
import { ScrollArea } from "@base-ui/react/scroll-area";
|
|
2
3
|
//#region src/components/layout/scroll-area/scroll-area-root.d.ts
|
|
3
|
-
export type ScrollAreaRootProps = ScrollArea.Root.Props
|
|
4
|
+
export type ScrollAreaRootProps = MergeOverride<ScrollArea.Root.Props, {
|
|
5
|
+
/**
|
|
6
|
+
* Quando as barras aparecem. Com `'auto'`, no hover e na rolagem. Com `'always'`, ficam sempre
|
|
7
|
+
* visíveis com mouse, com a trilha de 16px; no toque, continuam sumindo. Serve a uma área de
|
|
8
|
+
* dados, em que a barra mostra a posição e que há mais conteúdo ao lado. Vale para as barras
|
|
9
|
+
* filhas diretas do `Root`, não para as de um `ScrollArea` aninhado.
|
|
10
|
+
*
|
|
11
|
+
* @default 'auto'
|
|
12
|
+
*/
|
|
13
|
+
scrollbars?: 'auto' | 'always';
|
|
14
|
+
}>;
|
|
4
15
|
export type ScrollAreaRootState = ScrollArea.Root.State;
|
|
5
16
|
/**
|
|
6
17
|
* Agrupa as partes e serve de referência de posição para as barras. **Não declara tamanho**:
|
|
@@ -14,9 +25,11 @@ export type ScrollAreaRootState = ScrollArea.Root.State;
|
|
|
14
25
|
*
|
|
15
26
|
* | Variável | Controla | Padrão |
|
|
16
27
|
* | --- | --- | --- |
|
|
17
|
-
* | `--scroll-area-scrollbar-size` | espessura da trilha | 4px no toque,
|
|
28
|
+
* | `--scroll-area-scrollbar-size` | espessura da trilha | 4px no toque, 12px com mouse, 16px com mouse e `scrollbars="always"` |
|
|
18
29
|
* | `--scroll-area-scrollbar-inset` | recuo da trilha até a borda | 2px |
|
|
19
|
-
* | `--scroll-area-thumb-size` | espessura do polegar na trilha | a trilha toda |
|
|
30
|
+
* | `--scroll-area-thumb-size` | espessura do polegar na trilha | a trilha toda no toque, 6px com mouse |
|
|
31
|
+
*
|
|
32
|
+
* A visibilidade e a espessura de `scrollbars="always"` são explicadas no `Scrollbar`.
|
|
20
33
|
*
|
|
21
34
|
* Como funciona:
|
|
22
35
|
* 1. o `Root` zera as três com `initial` — assim um `ScrollArea` aninhado não herda os valores
|
|
@@ -14,9 +14,11 @@ import { ScrollArea } from "@base-ui/react/scroll-area";
|
|
|
14
14
|
*
|
|
15
15
|
* | Variável | Controla | Padrão |
|
|
16
16
|
* | --- | --- | --- |
|
|
17
|
-
* | `--scroll-area-scrollbar-size` | espessura da trilha | 4px no toque,
|
|
17
|
+
* | `--scroll-area-scrollbar-size` | espessura da trilha | 4px no toque, 12px com mouse, 16px com mouse e `scrollbars="always"` |
|
|
18
18
|
* | `--scroll-area-scrollbar-inset` | recuo da trilha até a borda | 2px |
|
|
19
|
-
* | `--scroll-area-thumb-size` | espessura do polegar na trilha | a trilha toda |
|
|
19
|
+
* | `--scroll-area-thumb-size` | espessura do polegar na trilha | a trilha toda no toque, 6px com mouse |
|
|
20
|
+
*
|
|
21
|
+
* A visibilidade e a espessura de `scrollbars="always"` são explicadas no `Scrollbar`.
|
|
20
22
|
*
|
|
21
23
|
* Como funciona:
|
|
22
24
|
* 1. o `Root` zera as três com `initial` — assim um `ScrollArea` aninhado não herda os valores
|
|
@@ -32,9 +34,10 @@ import { ScrollArea } from "@base-ui/react/scroll-area";
|
|
|
32
34
|
* ```
|
|
33
35
|
*/
|
|
34
36
|
const ScrollAreaRoot = (props) => {
|
|
35
|
-
const { className, ...rest } = props;
|
|
37
|
+
const { className, scrollbars, ...rest } = props;
|
|
36
38
|
return /* @__PURE__ */ jsx(ScrollArea.Root, {
|
|
37
39
|
"data-component": "ScrollArea.Root",
|
|
40
|
+
"data-scrollbars": scrollbars === "always" ? "always" : void 0,
|
|
38
41
|
className: mergeStateClassNames([
|
|
39
42
|
"overflow-hidden",
|
|
40
43
|
"[--scroll-area-scrollbar-size:initial]",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-area-root.js","names":["BaseScrollArea"],"sources":["../../../../src/components/layout/scroll-area/scroll-area-root.tsx"],"sourcesContent":["import { ScrollArea as BaseScrollArea } from '@base-ui/react/scroll-area';\nimport { mergeStateClassNames } from '#utils';\n\nexport type ScrollAreaRootProps = BaseScrollArea.Root.Props;\n\nexport type ScrollAreaRootState = BaseScrollArea.Root.State;\n\n/**\n * Agrupa as partes e serve de referência de posição para as barras. **Não declara tamanho**:\n * com altura definida a área rola; sem altura ela cresce com o conteúdo e quem rola é o\n * contêiner de cima. Altura e largura (`h-72`, `flex-1`, `md:h-52`) ficam com quem usa.\n *\n * #### Personalização das barras\n *\n * Por variável CSS na `className` do `Root`. As barras herdam — inclusive as de\n * `ScrollArea.Bars`, que não recebe props.\n *\n * | Variável | Controla | Padrão |\n * | --- | --- | --- |\n * | `--scroll-area-scrollbar-size` | espessura da trilha | 4px no toque,
|
|
1
|
+
{"version":3,"file":"scroll-area-root.js","names":["BaseScrollArea"],"sources":["../../../../src/components/layout/scroll-area/scroll-area-root.tsx"],"sourcesContent":["import { ScrollArea as BaseScrollArea } from '@base-ui/react/scroll-area';\nimport type { MergeOverride } from '@lucasbernardosn/ts-utils';\nimport { mergeStateClassNames } from '#utils';\n\nexport type ScrollAreaRootProps = MergeOverride<\n BaseScrollArea.Root.Props,\n {\n /**\n * Quando as barras aparecem. Com `'auto'`, no hover e na rolagem. Com `'always'`, ficam sempre\n * visíveis com mouse, com a trilha de 16px; no toque, continuam sumindo. Serve a uma área de\n * dados, em que a barra mostra a posição e que há mais conteúdo ao lado. Vale para as barras\n * filhas diretas do `Root`, não para as de um `ScrollArea` aninhado.\n *\n * @default 'auto'\n */\n scrollbars?: 'auto' | 'always';\n }\n>;\n\nexport type ScrollAreaRootState = BaseScrollArea.Root.State;\n\n/**\n * Agrupa as partes e serve de referência de posição para as barras. **Não declara tamanho**:\n * com altura definida a área rola; sem altura ela cresce com o conteúdo e quem rola é o\n * contêiner de cima. Altura e largura (`h-72`, `flex-1`, `md:h-52`) ficam com quem usa.\n *\n * #### Personalização das barras\n *\n * Por variável CSS na `className` do `Root`. As barras herdam — inclusive as de\n * `ScrollArea.Bars`, que não recebe props.\n *\n * | Variável | Controla | Padrão |\n * | --- | --- | --- |\n * | `--scroll-area-scrollbar-size` | espessura da trilha | 4px no toque, 12px com mouse, 16px com mouse e `scrollbars=\"always\"` |\n * | `--scroll-area-scrollbar-inset` | recuo da trilha até a borda | 2px |\n * | `--scroll-area-thumb-size` | espessura do polegar na trilha | a trilha toda no toque, 6px com mouse |\n *\n * A visibilidade e a espessura de `scrollbars=\"always\"` são explicadas no `Scrollbar`.\n *\n * Como funciona:\n * 1. o `Root` zera as três com `initial` — assim um `ScrollArea` aninhado não herda os valores\n * do de fora;\n * 2. `Scrollbar` e `Thumb` leem cada uma com um padrão no `var()`: é ali que os valores padrão\n * moram, e eles valem enquanto a variável estiver zerada;\n * 3. a classe de quem usa substitui o `initial`, porque o `mergeTwClassNames` descarta a classe\n * conflitante anterior.\n *\n * @example\n * ```tsx\n * <ScrollArea.Root className=\"h-72 [--scroll-area-scrollbar-size:--spacing(2.5)]\">\n * ```\n */\nexport const ScrollAreaRoot = (props: ScrollAreaRootProps) => {\n const { className, scrollbars, ...rest } = props;\n\n return (\n <BaseScrollArea.Root\n data-component=\"ScrollArea.Root\"\n data-scrollbars={scrollbars === 'always' ? 'always' : undefined}\n className={mergeStateClassNames(\n [\n // Zera o piso automático de item flex/grid: `flex-1` basta para encolher e rolar, sem\n // `min-h-0`/`min-w-0`. Também recorta os cantos do `rounded-*` e impede que um\n // decorativo vazado dê scroll à página (no Chrome Android, a barra de endereço passa a\n // recolher). `overflow-clip` recortaria, mas não zera o piso.\n //\n // Custo: sem altura, numa coluna flex que não comporta os filhos, o `Root` encolhe e\n // rola em vez de crescer. `shrink-0` devolve o crescimento.\n 'overflow-hidden',\n\n // Ver \"Personalização das barras\" acima.\n '[--scroll-area-scrollbar-size:initial]',\n '[--scroll-area-scrollbar-inset:initial]',\n '[--scroll-area-thumb-size:initial]',\n\n // Anel do `Viewport` (`focusRing`), pintado aqui porque a máscara do `fade` apagaria o\n // que o viewport pintasse. A utility dispara pelo `data-focus-ring` do filho.\n 'focus-ring-inside',\n 'ring-gray-12',\n ],\n className,\n )}\n {...rest}\n />\n );\n};\n\nScrollAreaRoot.displayName = 'ScrollArea.Root';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDA,MAAa,kBAAkB,UAA+B;CAC5D,MAAM,EAAE,WAAW,YAAY,GAAG,SAAS;CAE3C,OACE,oBAACA,WAAe,MAAhB;EACE,kBAAe;EACf,mBAAiB,eAAe,WAAW,WAAW,KAAA;EACtD,WAAW,qBACT;GAQE;GAGA;GACA;GACA;GAIA;GACA;EACF,GACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,eAAe,cAAc"}
|
|
@@ -8,6 +8,9 @@ export type ScrollAreaScrollbarState = ScrollArea.Scrollbar.State;
|
|
|
8
8
|
*
|
|
9
9
|
* Espessura e recuo se ajustam pelas variáveis do `Root`, não por classe: um `w-*` passado aqui
|
|
10
10
|
* perde para as regras `data-[orientation=…]:`, que têm especificidade maior.
|
|
11
|
+
*
|
|
12
|
+
* Com `scrollbars="always"` no `Root`, as barras filhas diretas dele ficam sempre visíveis com
|
|
13
|
+
* mouse, com a trilha de 16px; no toque, seguem o comportamento padrão.
|
|
11
14
|
*/
|
|
12
15
|
export declare const ScrollAreaScrollbar: {
|
|
13
16
|
(props: ScrollAreaScrollbarProps): import("react").JSX.Element;
|