bitboss-ui 3.0.0-beta.25 → 3.0.0-beta.26
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 +68 -4
- package/bin/bitboss-ui.mjs +1 -1
- package/dist/ai/BbAccordion.md +109 -5
- package/dist/ai/BbAlert.md +74 -1
- package/dist/ai/BbAsterisk.md +28 -1
- package/dist/ai/BbAvatar.md +90 -6
- package/dist/ai/BbBadge.md +168 -20
- package/dist/ai/BbBadgeButton.md +35 -20
- package/dist/ai/BbBaseButton.md +45 -0
- package/dist/ai/BbBaseCheckboxIcon.md +47 -8
- package/dist/ai/BbBaseRadioIcon.md +46 -7
- package/dist/ai/BbBaseSwitchIcon.md +48 -9
- package/dist/ai/BbBreadcrumbs.md +149 -7
- package/dist/ai/BbButton.md +91 -1
- package/dist/ai/BbCheckbox.md +152 -4
- package/dist/ai/BbCheckboxGroup.md +107 -6
- package/dist/ai/BbCollapsible.md +114 -4
- package/dist/ai/BbColorInput.md +202 -7
- package/dist/ai/BbColorPalette.md +171 -4
- package/dist/ai/BbConfirm.md +126 -1
- package/dist/ai/BbDatePicker.md +135 -3
- package/dist/ai/BbDatePickerInput.md +177 -12
- package/dist/ai/BbDialog.md +169 -9
- package/dist/ai/BbDropdown.md +151 -4
- package/dist/ai/BbDropdownButton.md +118 -1
- package/dist/ai/BbDropdownGroup.md +1 -1
- package/dist/ai/BbDropzone.md +91 -2
- package/dist/ai/BbIcon.md +28 -1
- package/dist/ai/BbIndicator.md +35 -1
- package/dist/ai/BbNumberInput.md +138 -15
- package/dist/ai/BbOffCanvas.md +159 -16
- package/dist/ai/BbPagination.md +107 -1
- package/dist/ai/BbPopover.md +132 -0
- package/dist/ai/BbProgress.md +33 -1
- package/dist/ai/BbRadio.md +156 -4
- package/dist/ai/BbRadioGroup.md +138 -15
- package/dist/ai/BbRating.md +87 -3
- package/dist/ai/BbSelect.md +162 -8
- package/dist/ai/BbSelectPopover.md +147 -2
- package/dist/ai/BbSlider.md +153 -14
- package/dist/ai/BbSmoothHeight.md +111 -0
- package/dist/ai/BbSpinner.md +40 -0
- package/dist/ai/BbSwitch.md +143 -4
- package/dist/ai/BbSwitchGroup.md +122 -4
- package/dist/ai/BbTable.md +114 -6
- package/dist/ai/BbTabs.md +141 -3
- package/dist/ai/BbTabsList.md +21 -1
- package/dist/ai/BbTabsPanes.md +1 -1
- package/dist/ai/BbTabsRoot.md +2 -1
- package/dist/ai/BbTag.md +149 -4
- package/dist/ai/BbTextInput.md +287 -17
- package/dist/ai/BbTextarea.md +179 -6
- package/dist/ai/BbTimePicker.md +87 -0
- package/dist/ai/BbTimePickerInput.md +157 -4
- package/dist/ai/BbToast.md +101 -1
- package/dist/ai/BbToastPortal.md +1 -1
- package/dist/ai/BbTooltip.md +108 -1
- package/dist/ai/BbTree.md +155 -1
- package/dist/ai/ChipsBox.md +40 -0
- package/dist/ai/ClearableButton.md +12 -0
- package/dist/ai/CommaBox.md +1 -0
- package/dist/ai/{BbBaseInputContainer.md → CommonField.md} +8 -7
- package/dist/ai/CommonFieldInput.md +90 -0
- package/dist/ai/CommonPopover.md +6 -1
- package/dist/ai/CommonTimeSelector.md +61 -0
- package/dist/ai/ErrorIcon.md +13 -1
- package/dist/ai/FlatListBox.md +27 -0
- package/dist/ai/GroupedListBox.md +27 -0
- package/dist/ai/ListBox.md +31 -0
- package/dist/ai/OptionsContainer.md +3 -2
- package/dist/ai/WarningIcon.md +13 -1
- package/dist/ai/changelog.json +623 -22
- package/dist/ai/components.json +31543 -10433
- package/dist/ai/guides/agent-contract.md +40 -1
- package/dist/ai/guides/ai-router.md +22 -14
- package/dist/ai/guides/design-language.md +21 -20
- package/dist/ai/guides/design-tokens.md +43 -7
- package/dist/ai/guides/installation-and-plugin-setup.md +165 -11
- package/dist/ai/guides/migration/components/bb-accordion.md +29 -0
- package/dist/ai/guides/migration/components/bb-breadcrumbs.md +8 -7
- package/dist/ai/guides/migration/components/bb-button.md +1 -1
- package/dist/ai/guides/migration/components/bb-checkbox-group.md +32 -29
- package/dist/ai/guides/migration/components/bb-checkbox.md +10 -9
- package/dist/ai/guides/migration/components/bb-collapsible.md +5 -5
- package/dist/ai/guides/migration/components/bb-date-picker-input.md +33 -29
- package/dist/ai/guides/migration/components/bb-dropdown.md +10 -9
- package/dist/ai/guides/migration/components/bb-popover.md +12 -11
- package/dist/ai/guides/migration/components/bb-rating.md +23 -19
- package/dist/ai/guides/migration/components/bb-select.md +1 -1
- package/dist/ai/guides/migration/components/bb-tabs.md +2 -2
- package/dist/ai/guides/migration/components/bb-text-input.md +4 -4
- package/dist/ai/guides/migration/v2-to-v3.md +140 -90
- package/dist/ai/guides/passthrough.md +428 -0
- package/dist/ai/index.md +10 -25
- package/dist/ai/recipes/inertia/ownership-atlas.md +11 -9
- package/dist/ai/source/BbAccordion.md +75 -21
- package/dist/ai/source/BbAlert.md +51 -4
- package/dist/ai/source/BbAsterisk.md +50 -4
- package/dist/ai/source/BbAvatar.md +47 -4
- package/dist/ai/source/BbBadge.md +67 -4
- package/dist/ai/source/BbBadgeButton.md +35 -0
- package/dist/ai/source/BbBaseButton.md +81 -5
- package/dist/ai/source/BbBaseCheckboxIcon.md +119 -28
- package/dist/ai/source/BbBaseRadioIcon.md +88 -7
- package/dist/ai/source/BbBaseSwitchIcon.md +103 -12
- package/dist/ai/source/BbBreadcrumbs.md +177 -59
- package/dist/ai/source/BbButton.md +140 -26
- package/dist/ai/source/BbCheckbox.md +399 -60
- package/dist/ai/source/BbCheckboxGroup.md +669 -80
- package/dist/ai/source/BbCollapsible.md +75 -7
- package/dist/ai/source/BbColorInput.md +452 -56
- package/dist/ai/source/BbColorPalette.md +1065 -42
- package/dist/ai/source/BbConfirm.md +112 -2
- package/dist/ai/source/BbConfirmPortal.md +63 -0
- package/dist/ai/source/BbDatePicker.md +1171 -50
- package/dist/ai/source/BbDatePickerInput.md +1887 -99
- package/dist/ai/source/BbDialog.md +124 -8
- package/dist/ai/source/BbDropdown.md +178 -62
- package/dist/ai/source/BbDropdownButton.md +195 -69
- package/dist/ai/source/BbDropdownGroup.md +82 -8
- package/dist/ai/source/BbDropzone.md +68 -9
- package/dist/ai/source/BbIcon.md +48 -6
- package/dist/ai/source/BbIndicator.md +48 -4
- package/dist/ai/source/BbNumberInput.md +538 -71
- package/dist/ai/source/BbOffCanvas.md +100 -11
- package/dist/ai/source/BbPagination.md +74 -8
- package/dist/ai/source/BbPopover.md +160 -65
- package/dist/ai/source/BbProgress.md +42 -2
- package/dist/ai/source/BbRadio.md +335 -53
- package/dist/ai/source/BbRadioGroup.md +653 -94
- package/dist/ai/source/BbRating.md +606 -74
- package/dist/ai/source/BbSelect.md +743 -75
- package/dist/ai/source/BbSelectPopover.md +119 -12
- package/dist/ai/source/BbSlider.md +1145 -81
- package/dist/ai/source/BbSmoothHeight.md +46 -2
- package/dist/ai/source/BbSpinner.md +56 -4
- package/dist/ai/source/BbSwitch.md +243 -56
- package/dist/ai/source/BbSwitchGroup.md +539 -77
- package/dist/ai/source/BbTable.md +258 -39
- package/dist/ai/source/BbTabs.md +114 -82
- package/dist/ai/source/BbTabsList.md +127 -79
- package/dist/ai/source/BbTabsPanes.md +118 -78
- package/dist/ai/source/BbTabsRoot.md +109 -77
- package/dist/ai/source/BbTag.md +625 -74
- package/dist/ai/source/BbTextInput.md +403 -57
- package/dist/ai/source/BbTextarea.md +447 -52
- package/dist/ai/source/BbTimePicker.md +136 -15
- package/dist/ai/source/BbTimePickerInput.md +1033 -86
- package/dist/ai/source/BbToast.md +42 -2
- package/dist/ai/source/BbToastPortal.md +27 -0
- package/dist/ai/source/BbTooltip.md +48 -2
- package/dist/ai/source/BbTree.md +45 -3
- package/dist/ai/source/ChipsBox.md +11 -1
- package/dist/ai/source/CommaBox.md +9 -1
- package/dist/ai/source/{BbBaseInputContainer.md → CommonField.md} +172 -183
- package/dist/ai/source/{CommonInputWrapper.md → CommonFieldInput.md} +140 -79
- package/dist/ai/source/CommonPopover.md +64 -13
- package/dist/ai/source/CommonTimeSelector.md +637 -0
- package/dist/ai/source/FlatListBox.md +61 -4
- package/dist/ai/source/GroupedListBox.md +76 -4
- package/dist/ai/source/ListBox.md +12 -0
- package/dist/ai/source/OptionsContainer.md +134 -26
- package/dist/components/BbAccordion/BbAccordion.vue_vue_type_script_setup_true_lang.js +49 -32
- package/dist/components/BbAccordion/types.d.ts +24 -1
- package/dist/components/BbAccordion/types.js +11 -0
- package/dist/components/BbAlert/BbAlert.vue_vue_type_script_setup_true_lang.js +46 -30
- package/dist/components/BbAlert/types.d.ts +17 -0
- package/dist/components/BbAlert/types.js +13 -0
- package/dist/components/BbAsterisk/BbAsterisk.vue.d.ts +3 -1
- package/dist/components/BbAsterisk/BbAsterisk.vue_vue_type_script_setup_true_lang.js +23 -8
- package/dist/components/BbAsterisk/types.d.ts +14 -0
- package/dist/components/BbAsterisk/types.js +7 -0
- package/dist/components/BbAvatar/BbAvatar.vue_vue_type_script_setup_true_lang.js +57 -44
- package/dist/components/BbAvatar/types.d.ts +17 -0
- package/dist/components/BbAvatar/types.js +7 -0
- package/dist/components/BbBadge/BadgeBodyContent.vue_vue_type_script_setup_true_lang.js +17 -17
- package/dist/components/BbBadge/BbBadge.vue_vue_type_script_setup_true_lang.js +77 -55
- package/dist/components/BbBadge/BbBadgeButton.vue_vue_type_script_setup_true_lang.js +3 -0
- package/dist/components/BbBadge/badgeButtonContext.d.ts +4 -0
- package/dist/components/BbBadge/types.d.ts +26 -0
- package/dist/components/BbBadge/types.js +13 -0
- package/dist/components/BbBaseButton/BbBaseButton.vue_vue_type_script_setup_true_lang.js +110 -97
- package/dist/components/BbBaseButton/RouterComponent.vue_vue_type_script_setup_true_lang.js +7 -7
- package/dist/components/BbBaseButton/types.d.ts +19 -0
- package/dist/components/BbBaseButton/types.js +9 -2
- package/dist/components/BbBaseCheckboxIcon/BbBaseCheckboxIcon.vue_vue_type_script_setup_true_lang.js +50 -18
- package/dist/components/BbBaseCheckboxIcon/types.d.ts +26 -2
- package/dist/components/BbBaseCheckboxIcon/types.js +8 -0
- package/dist/components/BbBaseRadioIcon/BbBaseRadioIcon.vue_vue_type_script_setup_true_lang.js +45 -15
- package/dist/components/BbBaseRadioIcon/types.d.ts +26 -2
- package/dist/components/BbBaseRadioIcon/types.js +8 -0
- package/dist/components/BbBaseSwitchIcon/BbBaseSwitchIcon.vue_vue_type_script_setup_true_lang.js +48 -16
- package/dist/components/BbBaseSwitchIcon/types.d.ts +26 -2
- package/dist/components/BbBaseSwitchIcon/types.js +8 -0
- package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue_vue_type_script_setup_true_lang.js +176 -135
- package/dist/components/BbBreadcrumbs/types.d.ts +19 -0
- package/dist/components/BbBreadcrumbs/types.js +12 -0
- package/dist/components/BbButton/BbButton.vue_vue_type_script_setup_true_lang.js +108 -85
- package/dist/components/BbButton/types.d.ts +27 -0
- package/dist/components/BbButton/types.js +12 -0
- package/dist/components/BbCheckbox/BbCheckbox.vue.d.ts +1 -1
- package/dist/components/BbCheckbox/BbCheckbox.vue_vue_type_script_setup_true_lang.js +190 -69
- package/dist/components/BbCheckbox/types.d.ts +151 -10
- package/dist/components/BbCheckbox/types.js +8 -0
- package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue.d.ts +3 -3
- package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +298 -82
- package/dist/components/BbCheckboxGroup/types.d.ts +118 -10
- package/dist/components/BbCheckboxGroup/types.js +10 -0
- package/dist/components/BbCollapsible/BbCollapsible.vue.d.ts +2 -1
- package/dist/components/BbCollapsible/BbCollapsible.vue_vue_type_script_setup_true_lang.js +41 -19
- package/dist/components/BbCollapsible/types.d.ts +29 -0
- package/dist/components/BbCollapsible/types.js +7 -0
- package/dist/components/BbColorInput/BbColorInput.vue.d.ts +10 -0
- package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +292 -84
- package/dist/components/BbColorInput/types.d.ts +163 -7
- package/dist/components/BbColorInput/types.js +23 -0
- package/dist/components/BbColorPalette/BbColorPalette.vue.d.ts +8 -0
- package/dist/components/BbColorPalette/BbColorPalette.vue_vue_type_script_setup_true_lang.js +495 -101
- package/dist/components/BbColorPalette/types.d.ts +40 -3
- package/dist/components/BbColorPalette/types.js +11 -0
- package/dist/components/BbConfirm/BbConfirm.vue.d.ts +2 -1
- package/dist/components/BbConfirm/BbConfirm.vue_vue_type_script_setup_true_lang.js +115 -76
- package/dist/components/BbConfirm/types.d.ts +29 -0
- package/dist/components/BbConfirm/types.js +17 -0
- package/dist/components/BbDatePicker/BbDatePicker.vue.d.ts +11 -4
- package/dist/components/BbDatePicker/BbDatePicker.vue_vue_type_script_setup_true_lang.js +595 -175
- package/dist/components/BbDatePicker/DatePickerMonthPanel.vue.js +5 -0
- package/dist/components/BbDatePicker/DatePickerMonthPanel.vue_vue_type_script_setup_true_lang.js +124 -0
- package/dist/components/BbDatePicker/DatePickerYearPanel.vue.js +5 -0
- package/dist/components/BbDatePicker/DatePickerYearPanel.vue_vue_type_script_setup_true_lang.js +125 -0
- package/dist/components/BbDatePicker/types.d.ts +45 -4
- package/dist/components/BbDatePicker/types.js +30 -0
- package/dist/components/BbDatePicker/useCalendarGrid.d.ts +208 -0
- package/dist/components/BbDatePicker/useCalendarGrid.js +269 -0
- package/dist/components/{BbBaseDatePicker → BbDatePicker}/useDatePickerContext.d.ts +7 -4
- package/dist/components/BbDatePicker/useDatePickerContext.js +11 -0
- package/dist/components/BbDatePicker/useDayGrid.d.ts +79 -0
- package/dist/components/BbDatePicker/useDayGrid.js +203 -0
- package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.d.ts +14 -2
- package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +1126 -83
- package/dist/components/BbDatePickerInput/types.d.ts +132 -11
- package/dist/components/BbDatePickerInput/types.js +37 -0
- package/dist/components/BbDialog/BbDialog.vue.d.ts +3 -3
- package/dist/components/BbDialog/BbDialog.vue_vue_type_script_setup_true_lang.js +178 -139
- package/dist/components/BbDialog/types.d.ts +19 -0
- package/dist/components/BbDialog/types.js +16 -0
- package/dist/components/BbDropdown/AdaptiveDropdown.vue_vue_type_script_setup_true_lang.js +53 -46
- package/dist/components/BbDropdown/BbDropdown.vue.d.ts +8 -0
- package/dist/components/BbDropdown/BbDropdown.vue_vue_type_script_setup_true_lang.js +225 -173
- package/dist/components/BbDropdown/BbDropdownList.vue_vue_type_script_setup_true_lang.js +213 -216
- package/dist/components/BbDropdown/types.d.ts +35 -1
- package/dist/components/BbDropdown/types.js +19 -2
- package/dist/components/BbDropdown/useDropdownContext.d.ts +7 -1
- package/dist/components/BbDropdownButton/BbDropdownButton.vue.d.ts +13 -3
- package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +118 -35
- package/dist/components/BbDropdownButton/types.d.ts +39 -1
- package/dist/components/BbDropdownButton/types.js +22 -0
- package/dist/components/BbDropzone/BbDropzone.vue_vue_type_script_setup_true_lang.js +167 -136
- package/dist/components/BbDropzone/types.d.ts +20 -1
- package/dist/components/BbDropzone/types.js +16 -0
- package/dist/components/BbIcon/BbIcon.vue_vue_type_script_setup_true_lang.js +54 -42
- package/dist/components/BbIcon/types.d.ts +21 -2
- package/dist/components/BbIcon/types.js +7 -0
- package/dist/components/BbIndicator/BbIndicator.vue_vue_type_script_setup_true_lang.js +33 -20
- package/dist/components/BbIndicator/types.d.ts +17 -0
- package/dist/components/BbIndicator/types.js +7 -0
- package/dist/components/BbNumberInput/BbNumberInput.vue.d.ts +5 -0
- package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +267 -84
- package/dist/components/BbNumberInput/types.d.ts +153 -12
- package/dist/components/BbNumberInput/types.js +8 -0
- package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +3 -3
- package/dist/components/BbOffCanvas/BbOffCanvas.vue_vue_type_script_setup_true_lang.js +215 -192
- package/dist/components/BbOffCanvas/types.d.ts +21 -0
- package/dist/components/BbOffCanvas/types.js +15 -0
- package/dist/components/BbPagination/BbPagination.vue_vue_type_script_setup_true_lang.js +119 -96
- package/dist/components/BbPagination/types.d.ts +19 -0
- package/dist/components/BbPagination/types.js +11 -0
- package/dist/components/BbPopover/BbPopover.vue.d.ts +3 -3
- package/dist/components/BbPopover/BbPopover.vue_vue_type_script_setup_true_lang.js +180 -154
- package/dist/components/BbPopover/types.d.ts +19 -0
- package/dist/components/BbPopover/types.js +14 -0
- package/dist/components/BbProgress/BbProgress.vue_vue_type_script_setup_true_lang.js +27 -15
- package/dist/components/BbProgress/types.d.ts +17 -0
- package/dist/components/BbProgress/types.js +7 -0
- package/dist/components/BbRadio/BbRadio.vue.d.ts +1 -1
- package/dist/components/BbRadio/BbRadio.vue_vue_type_script_setup_true_lang.js +162 -58
- package/dist/components/BbRadio/types.d.ts +124 -10
- package/dist/components/BbRadio/types.js +8 -0
- package/dist/components/BbRadioGroup/BbRadioGroup.vue.d.ts +2 -2
- package/dist/components/BbRadioGroup/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +280 -84
- package/dist/components/BbRadioGroup/types.d.ts +120 -12
- package/dist/components/BbRadioGroup/types.js +10 -0
- package/dist/components/BbRating/BbRating.vue.d.ts +4 -2
- package/dist/components/BbRating/BbRating.vue_vue_type_script_setup_true_lang.js +241 -73
- package/dist/components/BbRating/types.d.ts +117 -7
- package/dist/components/BbRating/types.js +21 -0
- package/dist/components/BbSelect/BbSelect.vue.d.ts +3 -3
- package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +446 -80
- package/dist/components/BbSelect/types.d.ts +48 -7
- package/dist/components/BbSelect/types.js +25 -0
- package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +416 -348
- package/dist/components/BbSelectPopover/types.d.ts +30 -3
- package/dist/components/BbSelectPopover/types.js +22 -0
- package/dist/components/BbSlider/BbSlider.vue.d.ts +9 -3
- package/dist/components/BbSlider/BbSlider.vue_vue_type_script_setup_true_lang.js +392 -92
- package/dist/components/BbSlider/types.d.ts +142 -7
- package/dist/components/BbSlider/types.js +21 -0
- package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.d.ts +1 -1
- package/dist/components/BbSmoothHeight/BbSmoothHeight.vue_vue_type_script_setup_true_lang.js +60 -48
- package/dist/components/BbSmoothHeight/types.d.ts +17 -0
- package/dist/components/BbSmoothHeight/types.js +7 -0
- package/dist/components/BbSpinner/BbSpinner.vue_vue_type_script_setup_true_lang.js +27 -14
- package/dist/components/BbSpinner/types.d.ts +17 -0
- package/dist/components/BbSpinner/types.js +7 -0
- package/dist/components/BbSwitch/BbSwitch.vue.d.ts +1 -1
- package/dist/components/BbSwitch/BbSwitch.vue_vue_type_script_setup_true_lang.js +199 -78
- package/dist/components/BbSwitch/types.d.ts +12 -11
- package/dist/components/BbSwitch/types.js +5 -0
- package/dist/components/BbSwitchGroup/BbSwitchGroup.vue.d.ts +2 -2
- package/dist/components/BbSwitchGroup/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +298 -82
- package/dist/components/BbSwitchGroup/types.d.ts +14 -7
- package/dist/components/BbSwitchGroup/types.js +5 -0
- package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +912 -836
- package/dist/components/BbTable/BbTableDataRow.d.ts +8 -1
- package/dist/components/BbTable/BbTableDataRow.js +70 -73
- package/dist/components/BbTable/BbTableSelectToggle.d.ts +103 -0
- package/dist/components/BbTable/BbTableSelectToggle.js +114 -0
- package/dist/components/BbTable/types.d.ts +19 -0
- package/dist/components/BbTable/types.js +18 -0
- package/dist/components/BbTabs/BbTabs.vue_vue_type_script_setup_true_lang.js +30 -19
- package/dist/components/BbTabs/BbTabsList.vue_vue_type_script_setup_true_lang.js +18 -14
- package/dist/components/BbTabs/BbTabsPanes.vue_vue_type_script_setup_true_lang.js +14 -13
- package/dist/components/BbTabs/BbTabsRoot.vue_vue_type_script_setup_true_lang.js +10 -0
- package/dist/components/BbTabs/types.d.ts +25 -1
- package/dist/components/BbTabs/types.js +11 -0
- package/dist/components/BbTag/BbTag.vue.d.ts +6 -3
- package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +344 -91
- package/dist/components/BbTag/types.d.ts +60 -6
- package/dist/components/BbTag/types.js +8 -0
- package/dist/components/BbTextInput/BbTextInput.vue.d.ts +3 -1
- package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +239 -83
- package/dist/components/BbTextInput/types.d.ts +122 -7
- package/dist/components/BbTextInput/types.js +8 -0
- package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +247 -74
- package/dist/components/BbTextarea/types.d.ts +109 -7
- package/dist/components/BbTextarea/types.js +8 -0
- package/dist/components/BbTimePicker/BbTimePicker.vue.d.ts +9 -1
- package/dist/components/BbTimePicker/BbTimePicker.vue_vue_type_script_setup_true_lang.js +143 -108
- package/dist/components/BbTimePicker/types.d.ts +29 -2
- package/dist/components/BbTimePicker/types.js +11 -0
- package/dist/components/BbTimePickerInput/BbTimePickerInput.vue.d.ts +12 -2
- package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +666 -66
- package/dist/components/BbTimePickerInput/types.d.ts +67 -11
- package/dist/components/BbTimePickerInput/types.js +22 -0
- package/dist/components/BbToast/BbToast.vue_vue_type_script_setup_true_lang.js +51 -28
- package/dist/components/BbToast/BbToastMessage.vue.d.ts +3 -0
- package/dist/components/BbToast/BbToastMessage.vue_vue_type_script_setup_true_lang.js +43 -42
- package/dist/components/BbToast/BbToastRegion.vue.d.ts +3 -0
- package/dist/components/BbToast/BbToastRegion.vue_vue_type_script_setup_true_lang.js +5 -2
- package/dist/components/BbToast/types.d.ts +19 -0
- package/dist/components/BbToast/types.js +13 -0
- package/dist/components/BbTooltip/BbTooltip.vue_vue_type_script_setup_true_lang.js +72 -59
- package/dist/components/BbTooltip/types.d.ts +19 -0
- package/dist/components/BbTooltip/types.js +7 -0
- package/dist/components/BbTree/BbTree.vue.d.ts +11 -1
- package/dist/components/BbTree/BbTree.vue_vue_type_script_setup_true_lang.js +44 -28
- package/dist/components/BbTree/BbTreeLevel.vue_vue_type_script_setup_true_lang.js +13 -12
- package/dist/components/BbTree/context.d.ts +4 -1
- package/dist/components/BbTree/types.d.ts +20 -1
- package/dist/components/BbTree/types.js +7 -0
- package/dist/components/ChipsBox/ChipsBox.vue_vue_type_script_setup_true_lang.js +23 -21
- package/dist/components/ChipsBox/types.d.ts +6 -0
- package/dist/components/CommaBox/CommaBox.vue_vue_type_script_setup_true_lang.js +10 -6
- package/dist/components/CommaBox/types.d.ts +6 -0
- package/dist/components/{BbBaseInputContainer/BbBaseInputContainer.vue.d.ts → CommonField/CommonField.vue.d.ts} +3 -3
- package/dist/components/{BbBaseRadio/BbBaseRadio.vue.js → CommonField/CommonField.vue.js} +2 -2
- package/dist/components/CommonField/CommonField.vue_vue_type_script_setup_true_lang.js +178 -0
- package/dist/components/CommonField/messageHeightMatrix.d.ts +2 -0
- package/dist/components/{BbBaseInputContainer → CommonField}/types.d.ts +20 -11
- package/dist/components/{CommonInputWrapper/CommonInputWrapper.vue.d.ts → CommonFieldInput/CommonFieldInput.vue.d.ts} +4 -4
- package/dist/components/{BbBaseRadioGroup/BbBaseRadioGroup.vue.js → CommonFieldInput/CommonFieldInput.vue.js} +2 -2
- package/dist/components/CommonFieldInput/CommonFieldInput.vue_vue_type_script_setup_true_lang.js +116 -0
- package/dist/components/CommonFieldInput/boxBorderMatrix.d.ts +10 -0
- package/dist/components/{CommonInputWrapper → CommonFieldInput}/types.d.ts +15 -6
- package/dist/components/CommonPopover/CommonPopover.vue.d.ts +11 -2
- package/dist/components/CommonPopover/CommonPopover.vue_vue_type_script_setup_true_lang.js +63 -52
- package/dist/components/CommonPopover/types.d.ts +27 -8
- package/dist/components/{BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue.d.ts → CommonTimeSelector/CommonTimeSelector.vue.d.ts} +4 -1
- package/dist/components/{CommonInputWrapper/CommonInputWrapper.vue.js → CommonTimeSelector/CommonTimeSelector.vue.js} +2 -2
- package/dist/components/CommonTimeSelector/CommonTimeSelector.vue_vue_type_script_setup_true_lang.js +206 -0
- package/dist/components/CommonTimeSelector/types.d.ts +6 -0
- package/dist/components/FlatListBox/FlatListBox.vue_vue_type_script_setup_true_lang.js +100 -74
- package/dist/components/FlatListBox/types.d.ts +6 -0
- package/dist/components/GroupedListBox/GroupedListBox.vue_vue_type_script_setup_true_lang.js +98 -72
- package/dist/components/GroupedListBox/types.d.ts +6 -0
- package/dist/components/ListBox/ListBox.vue_vue_type_script_setup_true_lang.js +5 -0
- package/dist/components/ListBox/types.d.ts +6 -0
- package/dist/components/OptionsContainer/OptionsContainer.vue_vue_type_script_setup_true_lang.js +76 -43
- package/dist/components/OptionsContainer/types.d.ts +24 -5
- package/dist/composables/useBbTabsContext.d.ts +10 -2
- package/dist/composables/useBbTabsContext.js +155 -145
- package/dist/composables/useConfig.d.ts +2 -2
- package/dist/composables/useConfig.js +9 -7
- package/dist/composables/usePassthrough.d.ts +164 -0
- package/dist/composables/usePassthrough.js +182 -0
- package/dist/composables/usePrefill.d.ts +1 -0
- package/dist/composables/usePrefill.js +18 -8
- package/dist/composables/useSegmentedFields.d.ts +2 -2
- package/dist/composables/useToggleInput.d.ts +44 -0
- package/dist/composables/useToggleInput.js +39 -0
- package/dist/deprecation/ai-deprecations.json.d.ts +231 -0
- package/dist/deprecation/ai-deprecations.json.js +1 -1
- package/dist/i18n/locales/cs.json +2 -2
- package/dist/i18n/locales/da.json +2 -2
- package/dist/i18n/locales/de.json +2 -2
- package/dist/i18n/locales/el.json +2 -2
- package/dist/i18n/locales/en.json +2 -2
- package/dist/i18n/locales/es.json +2 -2
- package/dist/i18n/locales/fi.json +2 -2
- package/dist/i18n/locales/fr.json +2 -2
- package/dist/i18n/locales/hu.json +2 -2
- package/dist/i18n/locales/it.json +2 -2
- package/dist/i18n/locales/ja.json +2 -2
- package/dist/i18n/locales/ko.json +2 -2
- package/dist/i18n/locales/nb.json +2 -2
- package/dist/i18n/locales/nl.json +2 -2
- package/dist/i18n/locales/pl.json +2 -2
- package/dist/i18n/locales/pt.json +2 -2
- package/dist/i18n/locales/ro.json +2 -2
- package/dist/i18n/locales/ru.json +2 -2
- package/dist/i18n/locales/sv.json +2 -2
- package/dist/i18n/locales/tr.json +2 -2
- package/dist/i18n/locales/uk.json +2 -2
- package/dist/i18n/locales/zh-cn.json +2 -2
- package/dist/index.d.ts +8 -2
- package/dist/llms-full.txt +7431 -1967
- package/dist/llms-medium.txt +251 -49
- package/dist/llms.txt +4 -2
- package/dist/locale-blueprint.json +2 -2
- package/dist/passthrough-deduper.js +5 -0
- package/dist/plugin.d.ts +2 -2
- package/dist/styles.css +1 -1
- package/dist/types/ColumnName.d.ts +1 -1
- package/dist/types/CommonProps.d.ts +2 -2
- package/dist/types/Config.d.ts +16 -0
- package/dist/types/InputVariant.d.ts +1 -1
- package/dist/types/ItemProps.d.ts +13 -0
- package/dist/types/passthrough.d.ts +200 -0
- package/dist/types/passthrough.js +77 -0
- package/dist/utilities/functions/itemProps.d.ts +1 -1
- package/dist/utilities/functions/slotKey.d.ts +5 -5
- package/dist/utilities/functions/slotKey.js +1 -1
- package/dist/utilities/functions/toggleInput.d.ts +98 -0
- package/dist/utilities/functions/toggleInput.js +56 -0
- package/dist/utils/passthrough.d.ts +26 -0
- package/dist/utils/passthrough.js +76 -0
- package/dist/utils/passthroughDeduper.d.ts +2 -0
- package/dist/utils/passthroughTestKit.d.ts +54 -0
- package/dist/utils/swipeTestKit.d.ts +9 -0
- package/dist/validated/BbCheckbox.vue_vue_type_script_setup_true_lang.js +56 -1
- package/dist/validated/BbCheckboxGroup.vue.d.ts +115 -2
- package/dist/validated/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +77 -1
- package/dist/validated/BbColorInput.vue_vue_type_script_setup_true_lang.js +109 -1
- package/dist/validated/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +370 -1
- package/dist/validated/BbDropzone.vue_vue_type_script_setup_true_lang.js +17 -1
- package/dist/validated/BbNumberInput.vue_vue_type_script_setup_true_lang.js +86 -1
- package/dist/validated/BbRadioGroup.vue.d.ts +114 -2
- package/dist/validated/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +77 -1
- package/dist/validated/BbRating.vue_vue_type_script_setup_true_lang.js +44 -1
- package/dist/validated/BbSelect.vue.d.ts +221 -2
- package/dist/validated/BbSelect.vue_vue_type_script_setup_true_lang.js +164 -1
- package/dist/validated/BbSlider.vue_vue_type_script_setup_true_lang.js +44 -1
- package/dist/validated/BbSwitch.vue_vue_type_script_setup_true_lang.js +56 -1
- package/dist/validated/BbSwitchGroup.vue.d.ts +115 -2
- package/dist/validated/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +77 -1
- package/dist/validated/BbTag.vue_vue_type_script_setup_true_lang.js +93 -1
- package/dist/validated/BbTextInput.vue_vue_type_script_setup_true_lang.js +86 -1
- package/dist/validated/BbTextarea.vue_vue_type_script_setup_true_lang.js +86 -1
- package/dist/validated/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +137 -1
- package/dist/vite-plugin.d.ts +81 -12
- package/dist/vite.js +383 -257
- package/llms.txt +4 -2
- package/package.json +4 -3
- package/scripts/lib/component-tree.ts +611 -0
- package/scripts/lib/eslint-plugin.d.ts +5 -1
- package/scripts/lib/eslint-plugin.mjs +445 -0
- package/scripts/lib/validate-bb-markup.mjs +56 -18
- package/dist/ai/BbBaseCheckbox.md +0 -50
- package/dist/ai/BbBaseCheckboxGroup.md +0 -65
- package/dist/ai/BbBaseColorInput.md +0 -67
- package/dist/ai/BbBaseColorPalette.md +0 -39
- package/dist/ai/BbBaseDatePicker.md +0 -57
- package/dist/ai/BbBaseDatePickerInput.md +0 -84
- package/dist/ai/BbBaseNumberInput.md +0 -73
- package/dist/ai/BbBaseRadio.md +0 -47
- package/dist/ai/BbBaseRadioGroup.md +0 -65
- package/dist/ai/BbBaseRating.md +0 -63
- package/dist/ai/BbBaseSelect.md +0 -99
- package/dist/ai/BbBaseSlider.md +0 -84
- package/dist/ai/BbBaseSwitch.md +0 -50
- package/dist/ai/BbBaseSwitchGroup.md +0 -65
- package/dist/ai/BbBaseTag.md +0 -80
- package/dist/ai/BbBaseTextInput.md +0 -77
- package/dist/ai/BbBaseTextarea.md +0 -74
- package/dist/ai/BbBaseTimePickerInput.md +0 -63
- package/dist/ai/CommonInputWrapper.md +0 -60
- package/dist/ai/source/BbBaseCheckbox.md +0 -466
- package/dist/ai/source/BbBaseCheckboxGroup.md +0 -620
- package/dist/ai/source/BbBaseColorInput.md +0 -453
- package/dist/ai/source/BbBaseColorPalette.md +0 -942
- package/dist/ai/source/BbBaseDatePicker.md +0 -1450
- package/dist/ai/source/BbBaseDatePickerInput.md +0 -1951
- package/dist/ai/source/BbBaseNumberInput.md +0 -629
- package/dist/ai/source/BbBaseRadio.md +0 -386
- package/dist/ai/source/BbBaseRadioGroup.md +0 -605
- package/dist/ai/source/BbBaseRating.md +0 -614
- package/dist/ai/source/BbBaseSelect.md +0 -1035
- package/dist/ai/source/BbBaseSlider.md +0 -1181
- package/dist/ai/source/BbBaseSwitch.md +0 -247
- package/dist/ai/source/BbBaseSwitchGroup.md +0 -347
- package/dist/ai/source/BbBaseTag.md +0 -714
- package/dist/ai/source/BbBaseTextInput.md +0 -523
- package/dist/ai/source/BbBaseTextarea.md +0 -520
- package/dist/ai/source/BbBaseTimePickerInput.md +0 -1048
- package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue.d.ts +0 -40
- package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue.js +0 -6
- package/dist/components/BbBaseCheckbox/BbBaseCheckbox.vue_vue_type_script_setup_true_lang.js +0 -147
- package/dist/components/BbBaseCheckbox/types.d.ts +0 -228
- package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue.d.ts +0 -19
- package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue.js +0 -6
- package/dist/components/BbBaseCheckboxGroup/BbBaseCheckboxGroup.vue_vue_type_script_setup_true_lang.js +0 -197
- package/dist/components/BbBaseCheckboxGroup/types.d.ts +0 -278
- package/dist/components/BbBaseColorInput/BbBaseColorInput.vue.d.ts +0 -43
- package/dist/components/BbBaseColorInput/BbBaseColorInput.vue.js +0 -6
- package/dist/components/BbBaseColorInput/BbBaseColorInput.vue_vue_type_script_setup_true_lang.js +0 -190
- package/dist/components/BbBaseColorInput/types.d.ts +0 -228
- package/dist/components/BbBaseColorPalette/BbBaseColorPalette.vue.d.ts +0 -13
- package/dist/components/BbBaseColorPalette/BbBaseColorPalette.vue.js +0 -6
- package/dist/components/BbBaseColorPalette/BbBaseColorPalette.vue_vue_type_script_setup_true_lang.js +0 -395
- package/dist/components/BbBaseColorPalette/types.d.ts +0 -40
- package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue.d.ts +0 -20
- package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue.js +0 -6
- package/dist/components/BbBaseDatePicker/BbBaseDatePicker.vue_vue_type_script_setup_true_lang.js +0 -407
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue.d.ts +0 -47
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue.js +0 -5
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerInputDaySelector.vue_vue_type_script_setup_true_lang.js +0 -318
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue.js +0 -5
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue_vue_type_script_setup_true_lang.js +0 -115
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerYearSelector.vue.js +0 -5
- package/dist/components/BbBaseDatePicker/BbBaseDatePickerYearSelector.vue_vue_type_script_setup_true_lang.js +0 -116
- package/dist/components/BbBaseDatePicker/types.d.ts +0 -108
- package/dist/components/BbBaseDatePicker/useDatePickerContext.js +0 -11
- package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue.d.ts +0 -31
- package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue.js +0 -6
- package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerInput.vue_vue_type_script_setup_true_lang.js +0 -740
- package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue.js +0 -6
- package/dist/components/BbBaseDatePickerInput/BbBaseDatePickerTimeSelector.vue_vue_type_script_setup_true_lang.js +0 -204
- package/dist/components/BbBaseDatePickerInput/types.d.ts +0 -330
- package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue.js +0 -6
- package/dist/components/BbBaseInputContainer/BbBaseInputContainer.vue_vue_type_script_setup_true_lang.js +0 -199
- package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue.d.ts +0 -52
- package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue.js +0 -6
- package/dist/components/BbBaseNumberInput/BbBaseNumberInput.vue_vue_type_script_setup_true_lang.js +0 -221
- package/dist/components/BbBaseNumberInput/types.d.ts +0 -220
- package/dist/components/BbBaseRadio/BbBaseRadio.vue.d.ts +0 -33
- package/dist/components/BbBaseRadio/BbBaseRadio.vue_vue_type_script_setup_true_lang.js +0 -115
- package/dist/components/BbBaseRadio/types.d.ts +0 -183
- package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue.d.ts +0 -19
- package/dist/components/BbBaseRadioGroup/BbBaseRadioGroup.vue_vue_type_script_setup_true_lang.js +0 -186
- package/dist/components/BbBaseRadioGroup/types.d.ts +0 -244
- package/dist/components/BbBaseRating/BbBaseRating.vue.d.ts +0 -38
- package/dist/components/BbBaseRating/BbBaseRating.vue.js +0 -6
- package/dist/components/BbBaseRating/BbBaseRating.vue_vue_type_script_setup_true_lang.js +0 -192
- package/dist/components/BbBaseRating/types.d.ts +0 -176
- package/dist/components/BbBaseSelect/BbBaseSelect.vue.d.ts +0 -19
- package/dist/components/BbBaseSelect/BbBaseSelect.vue.js +0 -6
- package/dist/components/BbBaseSelect/BbBaseSelect.vue_vue_type_script_setup_true_lang.js +0 -332
- package/dist/components/BbBaseSelect/types.d.ts +0 -348
- package/dist/components/BbBaseSlider/BbBaseSlider.vue.d.ts +0 -35
- package/dist/components/BbBaseSlider/BbBaseSlider.vue.js +0 -6
- package/dist/components/BbBaseSlider/BbBaseSlider.vue_vue_type_script_setup_true_lang.js +0 -340
- package/dist/components/BbBaseSlider/types.d.ts +0 -200
- package/dist/components/BbBaseSwitch/BbBaseSwitch.vue.d.ts +0 -35
- package/dist/components/BbBaseSwitch/BbBaseSwitch.vue.js +0 -6
- package/dist/components/BbBaseSwitch/BbBaseSwitch.vue_vue_type_script_setup_true_lang.js +0 -148
- package/dist/components/BbBaseSwitch/types.d.ts +0 -10
- package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue.d.ts +0 -19
- package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue.js +0 -6
- package/dist/components/BbBaseSwitchGroup/BbBaseSwitchGroup.vue_vue_type_script_setup_true_lang.js +0 -197
- package/dist/components/BbBaseSwitchGroup/types.d.ts +0 -8
- package/dist/components/BbBaseTag/BbBaseTag.vue.d.ts +0 -50
- package/dist/components/BbBaseTag/BbBaseTag.vue.js +0 -6
- package/dist/components/BbBaseTag/BbBaseTag.vue_vue_type_script_setup_true_lang.js +0 -272
- package/dist/components/BbBaseTag/types.d.ts +0 -169
- package/dist/components/BbBaseTextInput/BbBaseTextInput.vue.d.ts +0 -45
- package/dist/components/BbBaseTextInput/BbBaseTextInput.vue.js +0 -6
- package/dist/components/BbBaseTextInput/BbBaseTextInput.vue_vue_type_script_setup_true_lang.js +0 -206
- package/dist/components/BbBaseTextInput/types.d.ts +0 -218
- package/dist/components/BbBaseTextarea/BbBaseTextarea.vue.d.ts +0 -39
- package/dist/components/BbBaseTextarea/BbBaseTextarea.vue.js +0 -6
- package/dist/components/BbBaseTextarea/BbBaseTextarea.vue_vue_type_script_setup_true_lang.js +0 -193
- package/dist/components/BbBaseTextarea/types.d.ts +0 -179
- package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue.d.ts +0 -27
- package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue.js +0 -6
- package/dist/components/BbBaseTimePickerInput/BbBaseTimePickerInput.vue_vue_type_script_setup_true_lang.js +0 -522
- package/dist/components/BbBaseTimePickerInput/types.d.ts +0 -156
- package/dist/components/CommonInputWrapper/CommonInputWrapper.vue_vue_type_script_setup_true_lang.js +0 -109
- /package/dist/components/{BbBaseDatePicker/BbBaseDatePickerMonthSelector.vue.d.ts → BbDatePicker/DatePickerMonthPanel.vue.d.ts} +0 -0
- /package/dist/components/{BbBaseDatePicker/BbBaseDatePickerYearSelector.vue.d.ts → BbDatePicker/DatePickerYearPanel.vue.d.ts} +0 -0
- /package/dist/{components/BbBaseDatePicker/typeahead.d.ts → composables/useTypeahead.d.ts} +0 -0
- /package/dist/{components/BbBaseDatePicker/typeahead.js → composables/useTypeahead.js} +0 -0
package/dist/ai/BbBadge.md
CHANGED
|
@@ -8,6 +8,21 @@
|
|
|
8
8
|
- Usage rule: Prefer this component for consumer-facing implementations.
|
|
9
9
|
- Implementation source (only when the contract below is not enough): [source/BbBadge.md](./source/BbBadge.md)
|
|
10
10
|
|
|
11
|
+
## Reachable through `BbBadge`
|
|
12
|
+
|
|
13
|
+
`BbBadge` mounts other components (all of them: _Component tree_, near the end). These are the parts of its API that land inside them. Use them — never `:deep()` on an inner class, never an import of an internal component.
|
|
14
|
+
|
|
15
|
+
| pt part | Lands on | In |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| `pt:spinner` | the root of `BbSpinner` | `BbSpinner` ([contract](./BbSpinner.md)) |
|
|
18
|
+
| `pt:icon` | the root of `BbIcon` | `BbIcon` ([contract](./BbIcon.md)) |
|
|
19
|
+
|
|
20
|
+
**CSS variables you can set through those parts** — declared deeper in the tree, so set one on the part that reads it (`pt:<part>="[--name:value]"`), never on `BbBadge`'s root:
|
|
21
|
+
|
|
22
|
+
| Variable | Set through | Declared by | What it is |
|
|
23
|
+
| --- | --- | --- | --- |
|
|
24
|
+
| `--w` | `pt:icon` | `BbIcon` | `--w` is set inline by BbIcon from the size prop. The `initial` default seals it: without it an ancestor's `--w` (e.g. a dropdown's width bridge) would inherit in and size the icon. The `--size` indir… |
|
|
25
|
+
|
|
11
26
|
## Usage & Guidelines
|
|
12
27
|
|
|
13
28
|
### When to use
|
|
@@ -651,6 +666,125 @@ glyph. The class hooks above are the supported styling surface —
|
|
|
651
666
|
`.bb-badge__body` and `.bb-badge__trailing` are new, so avoid direct-child
|
|
652
667
|
selectors like `.bb-badge > .bb-badge__content`, which no longer match.
|
|
653
668
|
|
|
669
|
+
### Restyling with passthrough
|
|
670
|
+
|
|
671
|
+
`pt` reaches a named part with a class list — or, in the object form, a
|
|
672
|
+
style and attributes — optionally only while a state is on. Parts: `root`,
|
|
673
|
+
`icon` (every content glyph — the `icon`-mode glyph, `prepend:icon`,
|
|
674
|
+
`append:icon`; a broadcast), `spinner` (the loading glyph, which stands in
|
|
675
|
+
for whichever icon it replaces), `text` (the label span, which owns the
|
|
676
|
+
truncation) and `clear` (the ✕ that removes the badge). The `__body` wrapper
|
|
677
|
+
is layout, not a part. State: `loading`.
|
|
678
|
+
|
|
679
|
+
Invoice API method pills, restyled through those parts: `pt:icon` is a
|
|
680
|
+
broadcast (prepend, append, and the loading spinner all recede),
|
|
681
|
+
`pt:text` is the method label in mono. Soft method hues are status — see
|
|
682
|
+
[design language](./guides/design-language.md) § Using color — not a pt
|
|
683
|
+
costume.
|
|
684
|
+
|
|
685
|
+
**pt:icon — method badges, a broadcast**
|
|
686
|
+
|
|
687
|
+
```vue
|
|
688
|
+
<template>
|
|
689
|
+
<div class="max-w-2xl">
|
|
690
|
+
<ul class="flex flex-col gap-1.5 text-sm">
|
|
691
|
+
<li
|
|
692
|
+
v-for="endpoint in endpoints"
|
|
693
|
+
:key="`${endpoint.method}:${endpoint.path}`"
|
|
694
|
+
class="flex min-w-0 items-center gap-2"
|
|
695
|
+
>
|
|
696
|
+
<BbBadge
|
|
697
|
+
:append:icon="endpoint.append"
|
|
698
|
+
:prepend:icon="endpoint.icon"
|
|
699
|
+
pt:icon="opacity-70"
|
|
700
|
+
pt:text="font-mono"
|
|
701
|
+
size="lg"
|
|
702
|
+
:variant="METHOD_VARIANT[endpoint.method]"
|
|
703
|
+
>{{ endpoint.method }}</BbBadge
|
|
704
|
+
>
|
|
705
|
+
<code class="truncate font-mono text-xs">{{ endpoint.path }}</code>
|
|
706
|
+
</li>
|
|
707
|
+
</ul>
|
|
708
|
+
<div class="mt-3 flex items-center gap-2 text-xs text-(--bb-text-muted)">
|
|
709
|
+
<BbBadge
|
|
710
|
+
loading
|
|
711
|
+
prepend:icon="lucide:plus"
|
|
712
|
+
pt:icon="opacity-40"
|
|
713
|
+
pt:text="font-mono"
|
|
714
|
+
size="lg"
|
|
715
|
+
variant="soft-green"
|
|
716
|
+
>POST</BbBadge
|
|
717
|
+
>
|
|
718
|
+
<span>
|
|
719
|
+
Saving a draft — the spinner takes the prepend slot, same
|
|
720
|
+
<code>pt:icon</code>.
|
|
721
|
+
</span>
|
|
722
|
+
</div>
|
|
723
|
+
</div>
|
|
724
|
+
</template>
|
|
725
|
+
|
|
726
|
+
<script setup lang="ts">
|
|
727
|
+
import { BbBadge } from 'bitboss-ui';
|
|
728
|
+
import type { BbBadgeProps, IconType } from 'bitboss-ui';
|
|
729
|
+
|
|
730
|
+
type Method = 'GET' | 'POST' | 'DELETE';
|
|
731
|
+
|
|
732
|
+
type Endpoint = {
|
|
733
|
+
method: Method;
|
|
734
|
+
path: string;
|
|
735
|
+
icon: IconType;
|
|
736
|
+
append?: IconType;
|
|
737
|
+
};
|
|
738
|
+
|
|
739
|
+
// Soft status palette — method hue, not action intent (no primary/destructive).
|
|
740
|
+
const METHOD_VARIANT: Record<Method, BbBadgeProps['variant']> = {
|
|
741
|
+
GET: 'soft-blue',
|
|
742
|
+
POST: 'soft-green',
|
|
743
|
+
DELETE: 'soft-red',
|
|
744
|
+
};
|
|
745
|
+
|
|
746
|
+
// Invoice API methods, restyled through passthrough: `pt:icon` is a broadcast
|
|
747
|
+
// (prepend, append, and the loading spinner all recede), `pt:text` is the
|
|
748
|
+
// method label in mono. The ✕ of a clearable badge is its own part, `clear`.
|
|
749
|
+
const endpoints: Endpoint[] = [
|
|
750
|
+
{ method: 'GET', path: '/v1/invoices', icon: 'lucide:download' },
|
|
751
|
+
{
|
|
752
|
+
method: 'POST',
|
|
753
|
+
path: '/v1/invoices',
|
|
754
|
+
icon: 'lucide:plus',
|
|
755
|
+
append: 'lucide:arrow-right',
|
|
756
|
+
},
|
|
757
|
+
{ method: 'DELETE', path: '/v1/invoices/:id', icon: 'lucide:trash-2' },
|
|
758
|
+
];
|
|
759
|
+
</script>
|
|
760
|
+
|
|
761
|
+
<!-- Soft status palette — canonical source: ai/guides/design-language.md § Using color.
|
|
762
|
+
Non-scoped so variant classes on the child badge receive the accents. -->
|
|
763
|
+
<style>
|
|
764
|
+
.bb-badge.bb-badge--soft-blue {
|
|
765
|
+
--accent: #2563eb;
|
|
766
|
+
}
|
|
767
|
+
.bb-badge.bb-badge--soft-green {
|
|
768
|
+
--accent: #16a34a;
|
|
769
|
+
}
|
|
770
|
+
.bb-badge.bb-badge--soft-red {
|
|
771
|
+
--accent: #dc2626;
|
|
772
|
+
}
|
|
773
|
+
.bb-badge.bb-badge--soft-blue,
|
|
774
|
+
.bb-badge.bb-badge--soft-green,
|
|
775
|
+
.bb-badge.bb-badge--soft-red {
|
|
776
|
+
--bg: color-mix(in oklab, var(--accent) 15%, var(--bb-panel));
|
|
777
|
+
--color: color-mix(in oklab, var(--accent) 80%, var(--bb-text));
|
|
778
|
+
--border-width: 1px;
|
|
779
|
+
--border-color: color-mix(in oklab, var(--accent) 25%, var(--bb-panel));
|
|
780
|
+
--ring: color-mix(in oklab, var(--accent) 45%, transparent);
|
|
781
|
+
}
|
|
782
|
+
</style>
|
|
783
|
+
```
|
|
784
|
+
|
|
785
|
+
The full grammar, the merge rules and the global map are in the
|
|
786
|
+
[passthrough guide](./guides/passthrough.md).
|
|
787
|
+
|
|
654
788
|
### Works well with
|
|
655
789
|
|
|
656
790
|
- `BbBadgeButton` — the companion that makes the badge body a real button/link.
|
|
@@ -705,6 +839,7 @@ selectors like `.bb-badge > .bb-badge__content`, which no longer match.
|
|
|
705
839
|
|
|
706
840
|
| Prop | Type | Default | Required | Description |
|
|
707
841
|
| --- | --- | --- | --- | --- |
|
|
842
|
+
| `pt:<part>`, `pt:<part>:<state>`, `pt` | `PtValue` | | | Passthrough — a class list, or `{ class, style, attrs }`, bound to one named part of the component; the state form applies only while that state is on. Parts: `clear`, `icon`, `root`, `spinner`, `text`. States: `loading`. `pt` is the object form with the same keys minus the prefix (`{ icon: '…', 'icon:loading': '…' }`). See `guides/passthrough.md`. |
|
|
708
843
|
| `append:icon` | `string \| undefined` | | | Icon rendered after the label. On a `clearable` badge it shares the trailing slot with the clear button: the icon shows at rest and the clear button reveals over it on hover/focus. |
|
|
709
844
|
| `clearable` | `boolean \| undefined` | `false` | | Renders a trailing clear button and emits `click:clear` when pressed — turns the badge into a dismissible token (the pattern formerly served by `BbChip`). |
|
|
710
845
|
| `clearableLabel` | `string \| undefined` | | | Accessible label for the clear button. Rarely needed: unset, the name is **composed** from the localized `badge.clearLabel` verb and the badge's own text — "Remove Italy", not a bare "Remove" — which is already the right name in almost ever… |
|
|
@@ -724,26 +859,39 @@ selectors like `.bb-badge > .bb-badge__content`, which no longer match.
|
|
|
724
859
|
|
|
725
860
|
## CSS custom properties
|
|
726
861
|
|
|
727
|
-
Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals; the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
|
|
728
|
-
|
|
729
|
-
| Property | Default | What it is |
|
|
730
|
-
| --- | --- | --- |
|
|
731
|
-
| `--bg` | `var(--bb-primary)` | pill fill |
|
|
732
|
-
| `--fg` | `var(--bb-primary-fg)` | label, icons and the clear glyph |
|
|
733
|
-
| `--border-width` | `0px` | Pill border. The `border` shorthand is always present, so the width is what turns it on — the filled variants leave it at 0 and the bordered ones (secondary/destructive/outline) step up to `--bb-border-w-sm`. Nothing compensates for it: the… |
|
|
734
|
-
| `--border-color` | `transparent` | |
|
|
735
|
-
| `--ring` | `var(--bb-primary-ring)` | focus ring, per variant |
|
|
736
|
-
| `--min-size-md` | `16px` | The md value. Only the default --min-size below reads it; the size modifiers set --min-size directly. |
|
|
737
|
-
| `--min-size` | `var(--min-size-md)` | pill min height and min width |
|
|
738
|
-
| `--elev` | `var(--bb-elev-sm)` | Resting lift. Invisible while `--bb-elev` is its default transparent layer. A chip is small enough that a theme wanting a different lift here than on a button sets `--elev` on this class. |
|
|
739
|
-
| `--radius` | `calc(var(--bb-radius) * 0.5)` | Pill corners; the body and trailing wrappers round their outer edges to match |
|
|
740
|
-
| `--font-size` | `10px` | label |
|
|
741
|
-
| `--icon-size` | `12px` | leading/append icons (passed to BbIcon as --size) |
|
|
742
|
-
| `--gap` | `3px` | space between label, icons and the trailing side |
|
|
743
|
-
| `--padding-inline` | `6px` | base side padding; the modifiers below scale it per side |
|
|
744
|
-
| `--clear-size` | `12px` | clear button's glyph box (the circle painted on hover is 2px smaller) |
|
|
745
|
-
| `--pad-left` | `var(--padding-inline)` | Side-owned padding: the body and trailing wrappers carry the pill's inline padding (and its radius) so their hit areas run flush to the border. The modifiers below retune these vars instead of the pill's own padding. |
|
|
746
|
-
| `--pad-right` | `var(--padding-inline)` | |
|
|
862
|
+
Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals — a **Set on** of `pt:<part>` means the local lives on that part's element, so set it through that entry (`pt:box="[--border-color:var(--color-green-500)]"`); the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
|
|
863
|
+
|
|
864
|
+
| Property | Set on | Default | What it is |
|
|
865
|
+
| --- | --- | --- | --- |
|
|
866
|
+
| `--bg` | `.bb-badge` | `var(--bb-primary)` | pill fill |
|
|
867
|
+
| `--fg` | `.bb-badge` | `var(--bb-primary-fg)` | label, icons and the clear glyph |
|
|
868
|
+
| `--border-width` | `.bb-badge` | `0px` | Pill border. The `border` shorthand is always present, so the width is what turns it on — the filled variants leave it at 0 and the bordered ones (secondary/destructive/outline) step up to `--bb-border-w-sm`. Nothing compensates for it: the… |
|
|
869
|
+
| `--border-color` | `.bb-badge` | `transparent` | |
|
|
870
|
+
| `--ring` | `.bb-badge` | `var(--bb-primary-ring)` | focus ring, per variant |
|
|
871
|
+
| `--min-size-md` | `.bb-badge` | `16px` | The md value. Only the default --min-size below reads it; the size modifiers set --min-size directly. |
|
|
872
|
+
| `--min-size` | `.bb-badge` | `var(--min-size-md)` | pill min height and min width |
|
|
873
|
+
| `--elev` | `.bb-badge` | `var(--bb-elev-sm)` | Resting lift. Invisible while `--bb-elev` is its default transparent layer. A chip is small enough that a theme wanting a different lift here than on a button sets `--elev` on this class. |
|
|
874
|
+
| `--radius` | `.bb-badge` | `calc(var(--bb-radius) * 0.5)` | Pill corners; the body and trailing wrappers round their outer edges to match |
|
|
875
|
+
| `--font-size` | `.bb-badge` | `10px` | label |
|
|
876
|
+
| `--icon-size` | `.bb-badge` | `12px` | leading/append icons (passed to BbIcon as --size) |
|
|
877
|
+
| `--gap` | `.bb-badge` | `3px` | space between label, icons and the trailing side |
|
|
878
|
+
| `--padding-inline` | `.bb-badge` | `6px` | base side padding; the modifiers below scale it per side |
|
|
879
|
+
| `--clear-size` | `.bb-badge` | `12px` | clear button's glyph box (the circle painted on hover is 2px smaller) |
|
|
880
|
+
| `--pad-left` | `.bb-badge` | `var(--padding-inline)` | Side-owned padding: the body and trailing wrappers carry the pill's inline padding (and its radius) so their hit areas run flush to the border. The modifiers below retune these vars instead of the pill's own padding. |
|
|
881
|
+
| `--pad-right` | `.bb-badge` | `var(--padding-inline)` | |
|
|
882
|
+
| `--size` | `.bb-badge__icon` | `var(--icon-size)` | |
|
|
883
|
+
|
|
884
|
+
## Component tree
|
|
885
|
+
|
|
886
|
+
`BbBadge` is not one component: rendering it mounts every component below, and each one is live inside it. **Read this before styling, theming or debugging `BbBadge`, and before concluding a part, a token or a behaviour does not exist** — it may live on a component further down. How to read it:
|
|
887
|
+
|
|
888
|
+
- **_internal_** nodes are building blocks with no API of their own: you reach them only through `BbBadge`. A pt part listed as landing there is set on `BbBadge` (`pt:<part>`).
|
|
889
|
+
- **_public_** nodes are components with their own contract. `BbBadge` reaches one only through a pt part of its own that lands on it (shown on the parent node as `part → Component`, e.g. `spinner → BbSpinner`) or through a pt map it hands it (shown as "hands … the pt map", in `BbBadge`'s words → the child's). The child's other props and parts are not exposed; its contract explains what it renders.
|
|
890
|
+
- **CSS custom properties** listed on a node are declared on THAT node's root and read by elements inside it. Set one on that node's root or on the element inside it that reads it — the pt part that lands there is how you reach it (`pt:box="[--border-color:…]"` on a text input) — never on `BbBadge`'s root, where the node's own declaration masks it (design-tokens guide, _Overriding one from a consumer app_, rule 0).
|
|
891
|
+
- Listed nodes are the ones `BbBadge`'s API reaches or that declare a documented CSS variable; the rest fold into "also mounts". The complete tree, repeats and undocumented locals included, is the `tree` field of this component in `components.json`.
|
|
892
|
+
|
|
893
|
+
- `BbBadge` _(this component)_ — its own template binds: `spinner` → `BbSpinner`, `icon` → `BbIcon`, `clear` → `button.bb-badge__clear-button`
|
|
894
|
+
- Also mounts `BbIcon`, `BbSpinner`, `BadgeBodyContent`
|
|
747
895
|
|
|
748
896
|
## See Also
|
|
749
897
|
|
package/dist/ai/BbBadgeButton.md
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
| Prop | Type | Default | Required | Description |
|
|
14
14
|
| --- | --- | --- | --- | --- |
|
|
15
|
+
| `pt:<part>`, `pt:<part>:<state>`, `pt` | `PtValue` | | | Passthrough — a class list, or `{ class, style, attrs }`, bound to one named part of the component; the state form applies only while that state is on. Parts: `root`. States: `disabled`. `pt` is the object form with the same keys minus the prefix (`{ icon: '…', 'icon:loading': '…' }`). See `guides/passthrough.md`. |
|
|
15
16
|
| `activeClass` | `string \| undefined` | `'router-link-active'` | | CSS class applied when the component renders as a link and the target of the link is the current route or the url matches partially. Ported for Inertia compatibility. |
|
|
16
17
|
| `ariaCurrentValue` | `"page" \| "step" \| "location" \| "date" \| "time" \| "true" \| "false" \| undefined` | `'page'` | | Value forwarded to the `aria-current` attribute when the component renders as a router link and the target route is an exact match. Use to communicate the current location to assistive technologies. |
|
|
17
18
|
| `async` | `boolean \| undefined` | `false` | | Inertia: runs the visit without blocking — the page stays interactive and several async visits can be in flight at once. |
|
|
@@ -63,26 +64,40 @@
|
|
|
63
64
|
|
|
64
65
|
## CSS custom properties
|
|
65
66
|
|
|
66
|
-
Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals; the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
|
|
67
|
-
|
|
68
|
-
| Property | Default | What it is |
|
|
69
|
-
| --- | --- | --- |
|
|
70
|
-
| `--bg` | `var(--bb-primary)` | pill fill |
|
|
71
|
-
| `--fg` | `var(--bb-primary-fg)` | label, icons and the clear glyph |
|
|
72
|
-
| `--border-width` | `0px` | Pill border. The `border` shorthand is always present, so the width is what turns it on — the filled variants leave it at 0 and the bordered ones (secondary/destructive/outline) step up to `--bb-border-w-sm`. Nothing compensates for it: the… |
|
|
73
|
-
| `--border-color` | `transparent` | |
|
|
74
|
-
| `--ring` | `var(--bb-primary-ring)` | focus ring, per variant |
|
|
75
|
-
| `--min-size-md` | `16px` | The md value. Only the default --min-size below reads it; the size modifiers set --min-size directly. |
|
|
76
|
-
| `--min-size` | `var(--min-size-md)` | pill min height and min width |
|
|
77
|
-
| `--elev` | `var(--bb-elev-sm)` | Resting lift. Invisible while `--bb-elev` is its default transparent layer. A chip is small enough that a theme wanting a different lift here than on a button sets `--elev` on this class. |
|
|
78
|
-
| `--radius` | `calc(var(--bb-radius) * 0.5)` | Pill corners; the body and trailing wrappers round their outer edges to match |
|
|
79
|
-
| `--font-size` | `10px` | label |
|
|
80
|
-
| `--icon-size` | `12px` | leading/append icons (passed to BbIcon as --size) |
|
|
81
|
-
| `--gap` | `3px` | space between label, icons and the trailing side |
|
|
82
|
-
| `--padding-inline` | `6px` | base side padding; the modifiers below scale it per side |
|
|
83
|
-
| `--clear-size` | `12px` | clear button's glyph box (the circle painted on hover is 2px smaller) |
|
|
84
|
-
| `--pad-left` | `var(--padding-inline)` | Side-owned padding: the body and trailing wrappers carry the pill's inline padding (and its radius) so their hit areas run flush to the border. The modifiers below retune these vars instead of the pill's own padding. |
|
|
85
|
-
| `--pad-right` | `var(--padding-inline)` | |
|
|
67
|
+
Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals — a **Set on** of `pt:<part>` means the local lives on that part's element, so set it through that entry (`pt:box="[--border-color:var(--color-green-500)]"`); the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
|
|
68
|
+
|
|
69
|
+
| Property | Set on | Default | What it is |
|
|
70
|
+
| --- | --- | --- | --- |
|
|
71
|
+
| `--bg` | `.bb-badge` | `var(--bb-primary)` | pill fill |
|
|
72
|
+
| `--fg` | `.bb-badge` | `var(--bb-primary-fg)` | label, icons and the clear glyph |
|
|
73
|
+
| `--border-width` | `.bb-badge` | `0px` | Pill border. The `border` shorthand is always present, so the width is what turns it on — the filled variants leave it at 0 and the bordered ones (secondary/destructive/outline) step up to `--bb-border-w-sm`. Nothing compensates for it: the… |
|
|
74
|
+
| `--border-color` | `.bb-badge` | `transparent` | |
|
|
75
|
+
| `--ring` | `.bb-badge` | `var(--bb-primary-ring)` | focus ring, per variant |
|
|
76
|
+
| `--min-size-md` | `.bb-badge` | `16px` | The md value. Only the default --min-size below reads it; the size modifiers set --min-size directly. |
|
|
77
|
+
| `--min-size` | `.bb-badge` | `var(--min-size-md)` | pill min height and min width |
|
|
78
|
+
| `--elev` | `.bb-badge` | `var(--bb-elev-sm)` | Resting lift. Invisible while `--bb-elev` is its default transparent layer. A chip is small enough that a theme wanting a different lift here than on a button sets `--elev` on this class. |
|
|
79
|
+
| `--radius` | `.bb-badge` | `calc(var(--bb-radius) * 0.5)` | Pill corners; the body and trailing wrappers round their outer edges to match |
|
|
80
|
+
| `--font-size` | `.bb-badge` | `10px` | label |
|
|
81
|
+
| `--icon-size` | `.bb-badge` | `12px` | leading/append icons (passed to BbIcon as --size) |
|
|
82
|
+
| `--gap` | `.bb-badge` | `3px` | space between label, icons and the trailing side |
|
|
83
|
+
| `--padding-inline` | `.bb-badge` | `6px` | base side padding; the modifiers below scale it per side |
|
|
84
|
+
| `--clear-size` | `.bb-badge` | `12px` | clear button's glyph box (the circle painted on hover is 2px smaller) |
|
|
85
|
+
| `--pad-left` | `.bb-badge` | `var(--padding-inline)` | Side-owned padding: the body and trailing wrappers carry the pill's inline padding (and its radius) so their hit areas run flush to the border. The modifiers below retune these vars instead of the pill's own padding. |
|
|
86
|
+
| `--pad-right` | `.bb-badge` | `var(--padding-inline)` | |
|
|
87
|
+
| `--size` | `.bb-badge__icon` | `var(--icon-size)` | |
|
|
88
|
+
|
|
89
|
+
## Component tree
|
|
90
|
+
|
|
91
|
+
`BbBadgeButton` is not one component: rendering it mounts every component below, and each one is live inside it. **Read this before styling, theming or debugging `BbBadgeButton`, and before concluding a part, a token or a behaviour does not exist** — it may live on a component further down. How to read it:
|
|
92
|
+
|
|
93
|
+
- **_internal_** nodes are building blocks with no API of their own: you reach them only through `BbBadgeButton`. A pt part listed as landing there is set on `BbBadgeButton` (`pt:<part>`).
|
|
94
|
+
- **_public_** nodes are components with their own contract. `BbBadgeButton` reaches one only through a pt part of its own that lands on it (shown on the parent node as `part → Component`, e.g. `spinner → BbSpinner`) or through a pt map it hands it (shown as "hands … the pt map", in `BbBadgeButton`'s words → the child's). The child's other props and parts are not exposed; its contract explains what it renders.
|
|
95
|
+
- **CSS custom properties** listed on a node are declared on THAT node's root and read by elements inside it. Set one on that node's root or on the element inside it that reads it — the pt part that lands there is how you reach it (`pt:box="[--border-color:…]"` on a text input) — never on `BbBadgeButton`'s root, where the node's own declaration masks it (design-tokens guide, _Overriding one from a consumer app_, rule 0).
|
|
96
|
+
- Listed nodes are the ones `BbBadgeButton`'s API reaches or that declare a documented CSS variable; the rest fold into "also mounts". The complete tree, repeats and undocumented locals included, is the `tree` field of this component in `components.json`.
|
|
97
|
+
|
|
98
|
+
- `BbBadgeButton` _(this component)_
|
|
99
|
+
- `BbBaseButton` _(public — [contract](./BbBaseButton.md))_ — its own pt parts (`BbBaseButton`): `root` → `RouterComponent`, `root` → `a`, `root` → `component`; also mounts `RouterComponent`
|
|
100
|
+
- Also mounts `BadgeBodyContent`
|
|
86
101
|
|
|
87
102
|
## See Also
|
|
88
103
|
|
package/dist/ai/BbBaseButton.md
CHANGED
|
@@ -8,6 +8,14 @@
|
|
|
8
8
|
- Usage rule: Prefer this component for consumer-facing implementations.
|
|
9
9
|
- Implementation source (only when the contract below is not enough): [source/BbBaseButton.md](./source/BbBaseButton.md)
|
|
10
10
|
|
|
11
|
+
## Reachable through `BbBaseButton`
|
|
12
|
+
|
|
13
|
+
`BbBaseButton` mounts other components (all of them: _Component tree_, near the end). These are the parts of its API that land inside them. Use them — never `:deep()` on an inner class, never an import of an internal component.
|
|
14
|
+
|
|
15
|
+
| pt part | Lands on | In |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| `pt:root` | the root of `RouterComponent` | `RouterComponent` _(internal)_ |
|
|
18
|
+
|
|
11
19
|
## Usage & Guidelines
|
|
12
20
|
|
|
13
21
|
### When to use
|
|
@@ -406,6 +414,30 @@ const sent = ref(false);
|
|
|
406
414
|
</script>
|
|
407
415
|
```
|
|
408
416
|
|
|
417
|
+
### Restyling with passthrough
|
|
418
|
+
|
|
419
|
+
`pt` reaches the one part with a class list — or, in the object form, a
|
|
420
|
+
style and attributes — optionally only while a state is on. Part: `root`
|
|
421
|
+
(whichever element renders — the `<button>`, the `<a>` or the router link;
|
|
422
|
+
where a `class` on the component lands too). State: `disabled`. The label is
|
|
423
|
+
your slot markup, so there is no `content`; `BbButton` wraps this component
|
|
424
|
+
and exposes its own vocabulary.
|
|
425
|
+
|
|
426
|
+
The unstyled primitive, branded through those parts: a primary fill on
|
|
427
|
+
`pt:root`, a fade on `pt:root:disabled`, underline on the anchor.
|
|
428
|
+
|
|
429
|
+
**pt:root — a branded button and a branded anchor**
|
|
430
|
+
|
|
431
|
+
```vue
|
|
432
|
+
<div class="flex flex-wrap items-center gap-2 text-sm">
|
|
433
|
+
<BbBaseButton pt:root="rounded-(--bb-radius) bg-(--bb-primary) px-3 py-1.5 text-(--bb-primary-fg) hover:opacity-90" pt:root:disabled="opacity-40">Save draft</BbBaseButton>
|
|
434
|
+
<BbBaseButton href="https://example.com" pt:root="rounded-(--bb-radius) px-3 py-1.5 text-(--bb-primary) underline" target="_blank">Docs ↗</BbBaseButton>
|
|
435
|
+
</div>
|
|
436
|
+
```
|
|
437
|
+
|
|
438
|
+
The full grammar, the merge rules and the global map are in the
|
|
439
|
+
[passthrough guide](./guides/passthrough.md).
|
|
440
|
+
|
|
409
441
|
### Works well with
|
|
410
442
|
|
|
411
443
|
- [`BbButton`](./BbButton.md) — the variant-first sibling built on this
|
|
@@ -453,6 +485,7 @@ const sent = ref(false);
|
|
|
453
485
|
|
|
454
486
|
| Prop | Type | Default | Required | Description |
|
|
455
487
|
| --- | --- | --- | --- | --- |
|
|
488
|
+
| `pt:<part>`, `pt:<part>:<state>`, `pt` | `PtValue` | | | Passthrough — a class list, or `{ class, style, attrs }`, bound to one named part of the component; the state form applies only while that state is on. Parts: `root`. States: `disabled`. `pt` is the object form with the same keys minus the prefix (`{ icon: '…', 'icon:loading': '…' }`). See `guides/passthrough.md`. |
|
|
456
489
|
| `activeClass` | `string \| undefined` | `'router-link-active'` | | CSS class applied when the component renders as a link and the target of the link is the current route or the url matches partially. Ported for Inertia compatibility. |
|
|
457
490
|
| `ariaCurrentValue` | `"page" \| "step" \| "location" \| "date" \| "time" \| "true" \| "false" \| undefined` | `'page'` | | Value forwarded to the `aria-current` attribute when the component renders as a router link and the target route is an exact match. Use to communicate the current location to assistive technologies. |
|
|
458
491
|
| `async` | `boolean \| undefined` | `false` | | Inertia: runs the visit without blocking — the page stays interactive and several async visits can be in flight at once. |
|
|
@@ -504,6 +537,18 @@ const sent = ref(false);
|
|
|
504
537
|
|
|
505
538
|
- `default` — scope: `object` — Primary content rendered inside the button element. Falls back to the `text` prop when empty.
|
|
506
539
|
|
|
540
|
+
## Component tree
|
|
541
|
+
|
|
542
|
+
`BbBaseButton` is not one component: rendering it mounts every component below, and each one is live inside it. **Read this before styling, theming or debugging `BbBaseButton`, and before concluding a part, a token or a behaviour does not exist** — it may live on a component further down. How to read it:
|
|
543
|
+
|
|
544
|
+
- **_internal_** nodes are building blocks with no API of their own: you reach them only through `BbBaseButton`. A pt part listed as landing there is set on `BbBaseButton` (`pt:<part>`).
|
|
545
|
+
- **_public_** nodes are components with their own contract. `BbBaseButton` reaches one only through a pt part of its own that lands on it (shown on the parent node as `part → Component`, e.g. `spinner → BbSpinner`) or through a pt map it hands it (shown as "hands … the pt map", in `BbBaseButton`'s words → the child's). The child's other props and parts are not exposed; its contract explains what it renders.
|
|
546
|
+
- **CSS custom properties** listed on a node are declared on THAT node's root and read by elements inside it. Set one on that node's root or on the element inside it that reads it — the pt part that lands there is how you reach it (`pt:box="[--border-color:…]"` on a text input) — never on `BbBaseButton`'s root, where the node's own declaration masks it (design-tokens guide, _Overriding one from a consumer app_, rule 0).
|
|
547
|
+
- Listed nodes are the ones `BbBaseButton`'s API reaches or that declare a documented CSS variable; the rest fold into "also mounts". The complete tree, repeats and undocumented locals included, is the `tree` field of this component in `components.json`.
|
|
548
|
+
|
|
549
|
+
- `BbBaseButton` _(this component)_ — its own template binds: `root` → `RouterComponent`, `root` → `a`, `root` → `component`
|
|
550
|
+
- Also mounts `RouterComponent`
|
|
551
|
+
|
|
507
552
|
## See Also
|
|
508
553
|
|
|
509
554
|
- [BbButton](./BbButton.md) — Button with loading state, tooltip, and icon support.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
- Safety level: **Consumer API**
|
|
6
6
|
- Group: **Selection**
|
|
7
|
-
- Description: Standalone checkbox glyph (box + checkmark SVG). Presentational only — no input, no events. Compose it into a fully custom checkbox design, or let BbCheckbox
|
|
7
|
+
- Description: Standalone checkbox glyph (box + checkmark SVG). Presentational only — no input, no events. Compose it into a fully custom checkbox design, or let BbCheckbox, BbCheckboxGroup or BbTable render it.
|
|
8
8
|
- Usage rule: Prefer this component for consumer-facing implementations.
|
|
9
9
|
- Implementation source (only when the contract below is not enough): [source/BbBaseCheckboxIcon.md](./source/BbBaseCheckboxIcon.md)
|
|
10
10
|
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
### What this is (and when to reach for it)
|
|
14
14
|
|
|
15
15
|
`BbBaseCheckboxIcon` is **only the visual** — the rounded box, the stroke-animated
|
|
16
|
-
checkmark, and the indeterminate dash —
|
|
16
|
+
checkmark, and the indeterminate dash — the glyph `BbCheckbox` draws. It has
|
|
17
17
|
no native `<input>`, emits no events, and holds no state. You tell it how to
|
|
18
18
|
look through boolean props; it draws that state.
|
|
19
19
|
|
|
@@ -154,6 +154,43 @@ from an ancestor — so `--size` set on a wrapper `div` is simply ignored
|
|
|
154
154
|
- It reflects state, it doesn't manage it: clicking the glyph does nothing by
|
|
155
155
|
itself. Toggle your own state (or the backing input) and pass it back in.
|
|
156
156
|
|
|
157
|
+
### Restyling with passthrough
|
|
158
|
+
|
|
159
|
+
`pt` reaches the one part with a class list — or, in the object form, a
|
|
160
|
+
style and attributes. Part: `root` (the drawn glyph). States: `checked`, `indeterminate`, `readonly`, `disabled`, `warnings`, `errors`, `focused`, `focus-visible` — each
|
|
161
|
+
true exactly while the glyph paints it, so they follow its own rules:
|
|
162
|
+
`warnings` is off while `errors` is on.
|
|
163
|
+
|
|
164
|
+
Restyle by setting the glyph's own tokens (`--accent`, `--size`) on the part, and
|
|
165
|
+
style a state with a state entry instead of a ternary on your own flag —
|
|
166
|
+
the component decides when the state is on, and a global preset can say the
|
|
167
|
+
same thing.
|
|
168
|
+
|
|
169
|
+
The accent is the glyph's text colour, as on any icon: a `text-*` utility or a
|
|
170
|
+
`color` on the part recolours the checked and indeterminate fill, and `--accent` sets the default. A
|
|
171
|
+
state keeps its own paint — an error, a warning or a disabled glyph is never
|
|
172
|
+
recoloured by a text colour, even one in `pt:root:errors` (the
|
|
173
|
+
`bitboss-ui/no-state-text-color` lint says so). Recolour an error or a warning
|
|
174
|
+
through the accent: `pt:root:errors="[--accent:var(--color-red-800)]"`.
|
|
175
|
+
|
|
176
|
+
**pt:root and pt:root:disabled — a token, and a state entry**
|
|
177
|
+
|
|
178
|
+
```vue
|
|
179
|
+
<div class="flex items-center gap-3">
|
|
180
|
+
<BbBaseCheckboxIcon :pt:root="{ style: { '--accent': 'var(--bb-danger)', '--size': '20px' } }" />
|
|
181
|
+
<BbBaseCheckboxIcon checked :pt:root="{ style: { '--accent': 'var(--bb-danger)', '--size': '20px' } }" />
|
|
182
|
+
<BbBaseCheckboxIcon
|
|
183
|
+
checked
|
|
184
|
+
disabled
|
|
185
|
+
:pt:root="{ style: { '--accent': 'var(--bb-danger)', '--size': '20px' } }"
|
|
186
|
+
:pt:root:disabled="{ style: { opacity: '0.45' } }"
|
|
187
|
+
/>
|
|
188
|
+
</div>
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
The full grammar, the merge rules and the global map are in the
|
|
192
|
+
[passthrough guide](./guides/passthrough.md).
|
|
193
|
+
|
|
157
194
|
### Works well with
|
|
158
195
|
|
|
159
196
|
- [`BbCheckbox`](./BbCheckbox.md) — the batteries-included checkbox; prefer it
|
|
@@ -165,11 +202,13 @@ from an ancestor — so `--size` set on a wrapper `div` is simply ignored
|
|
|
165
202
|
|
|
166
203
|
| Prop | Type | Default | Required | Description |
|
|
167
204
|
| --- | --- | --- | --- | --- |
|
|
205
|
+
| `pt:<part>`, `pt:<part>:<state>`, `pt` | `PtValue` | | | Passthrough — a class list, or `{ class, style, attrs }`, bound to one named part of the component; the state form applies only while that state is on. Parts: `root`. States: `checked`, `disabled`, `errors`, `focus-visible`, `focused`, `indeterminate`, `readonly`, `warnings`. `pt` is the object form with the same keys minus the prefix (`{ icon: '…', 'icon:loading': '…' }`). See `guides/passthrough.md`. |
|
|
168
206
|
| `checked` | `boolean \| undefined` | `false` | | Renders the checked state (fills the box and draws the checkmark). |
|
|
169
207
|
| `disabled` | `boolean \| undefined` | `false` | | Disables the glyph (muted fill, not-allowed cursor). Purely visual. |
|
|
208
|
+
| `focused` | `boolean \| undefined` | `false` | | Whether the paired native input has focus — any focus, mouse included. Paints `--focused`, the hook the `focused` passthrough state aliases (T19); draws nothing by itself — the ring stays on `focusVisible`. |
|
|
170
209
|
| `focusVisible` | `boolean \| undefined` | `false` | | Whether keyboard focus is visible (`:focus-visible`). Draws the focus ring. |
|
|
171
210
|
| `hasErrors` | `boolean \| undefined` | `false` | | Puts the glyph into the error state (danger border and ring color). |
|
|
172
|
-
| `
|
|
211
|
+
| `hasWarnings` | `boolean \| undefined` | `false` | | Puts the glyph into the warning state (warn border and ring color). Errors take priority when both are set. |
|
|
173
212
|
| `indeterminate` | `boolean \| undefined` | `false` | | Renders the indeterminate state (filled box with a dash instead of the checkmark). Takes visual precedence over `checked`. |
|
|
174
213
|
| `readonly` | `boolean \| undefined` | `false` | | Renders the read-only affordance (default cursor instead of pointer). |
|
|
175
214
|
|
|
@@ -183,7 +222,7 @@ from an ancestor — so `--size` set on a wrapper `div` is simply ignored
|
|
|
183
222
|
|
|
184
223
|
## CSS custom properties
|
|
185
224
|
|
|
186
|
-
Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals; the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
|
|
225
|
+
Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals — a **Set on** of `pt:<part>` means the local lives on that part's element, so set it through that entry (`pt:box="[--border-color:var(--color-green-500)]"`); the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
|
|
187
226
|
|
|
188
227
|
| Property | Default | What it is |
|
|
189
228
|
| --- | --- | --- |
|
|
@@ -191,7 +230,7 @@ Set these on the element, or on a class you put on it, to retune this component
|
|
|
191
230
|
| `--check-color` | `var(--bb-primary-fg)` | |
|
|
192
231
|
| `--size` | `16px` | |
|
|
193
232
|
| `--r` | `min(4px, var(--bb-radius))` | The checkbox corner, capped by the master radius so a zero- or small-radius theme reaches it. Not `--bb-radius-sm`: that tier is 4.8px at the shipped radius and this glyph ships at 4px. |
|
|
194
|
-
| `--ring-color` | `var(--bb-ring)` |
|
|
233
|
+
| `--ring-color` | `var(--bb-ring)` | The focus ring's colour, re-pointed by errors and warnings. Both ring declarations read it, so a focused glyph grows its ring in its own colour instead of tweening from a different one. |
|
|
195
234
|
| `--elev` | `var(--bb-elev-sm)` | Resting lift; a no-op until a theme pins `--bb-elev`. |
|
|
196
235
|
| `--bg` | `var(--bb-panel)` | The glyph plate. DECLARED here, not consumed bare, because this glyph renders inside surfaces that declare `--bg` themselves — a table row or header cell, a dialog, an off-canvas sheet. Without the declaration it would inherit that surface'… |
|
|
197
236
|
| `--border-color` | `var(--bb-border)` | |
|
|
@@ -199,6 +238,6 @@ Set these on the element, or on a class you put on it, to retune this component
|
|
|
199
238
|
## See Also
|
|
200
239
|
|
|
201
240
|
- [BbCheckbox](./BbCheckbox.md) — Toggles a single boolean option.
|
|
202
|
-
- [
|
|
203
|
-
- [BbBaseRadioIcon](./BbBaseRadioIcon.md) — Standalone radio glyph (ring + dot). Presentational only — no input, no events. Compose it into a fully custom radio design, or let BbRadio
|
|
204
|
-
- [BbBaseSwitchIcon](./BbBaseSwitchIcon.md) — Standalone switch glyph (track + thumb). Presentational only — no input, no events. Compose it into a fully custom switch design, or let BbSwitch
|
|
241
|
+
- [BbCheckboxGroup](./BbCheckboxGroup.md) — Manages multiple checkbox options as a group.
|
|
242
|
+
- [BbBaseRadioIcon](./BbBaseRadioIcon.md) — Standalone radio glyph (ring + dot). Presentational only — no input, no events. Compose it into a fully custom radio design, or let BbRadio, BbRadioGroup or BbTable render it.
|
|
243
|
+
- [BbBaseSwitchIcon](./BbBaseSwitchIcon.md) — Standalone switch glyph (track + thumb). Presentational only — no input, no events. Compose it into a fully custom switch design, or let BbSwitch or BbSwitchGroup render it.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
- Safety level: **Consumer API**
|
|
6
6
|
- Group: **Selection**
|
|
7
|
-
- Description: Standalone radio glyph (ring + dot). Presentational only — no input, no events. Compose it into a fully custom radio design, or let BbRadio
|
|
7
|
+
- Description: Standalone radio glyph (ring + dot). Presentational only — no input, no events. Compose it into a fully custom radio design, or let BbRadio, BbRadioGroup or BbTable render it.
|
|
8
8
|
- Usage rule: Prefer this component for consumer-facing implementations.
|
|
9
9
|
- Implementation source (only when the contract below is not enough): [source/BbBaseRadioIcon.md](./source/BbBaseRadioIcon.md)
|
|
10
10
|
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
### What this is (and when to reach for it)
|
|
14
14
|
|
|
15
15
|
`BbBaseRadioIcon` is **only the visual** — the bordered ring and the scaling inner
|
|
16
|
-
dot —
|
|
16
|
+
dot — the glyph `BbRadio` draws. It has no native `<input>`, emits no events,
|
|
17
17
|
and holds no state. You tell it how to look through boolean props; it draws that
|
|
18
18
|
state.
|
|
19
19
|
|
|
@@ -168,6 +168,43 @@ from an ancestor — so `--size` set on a wrapper `div` is simply ignored
|
|
|
168
168
|
- It reflects state, it doesn't manage it: clicking the glyph does nothing by
|
|
169
169
|
itself. Drive your own state (or the backing inputs) and pass `checked` back.
|
|
170
170
|
|
|
171
|
+
### Restyling with passthrough
|
|
172
|
+
|
|
173
|
+
`pt` reaches the one part with a class list — or, in the object form, a
|
|
174
|
+
style and attributes. Part: `root` (the drawn glyph). States: `checked`, `readonly`, `disabled`, `warnings`, `errors`, `focused`, `focus-visible` — each
|
|
175
|
+
true exactly while the glyph paints it, so they follow its own rules:
|
|
176
|
+
`warnings` is off while `errors` is on.
|
|
177
|
+
|
|
178
|
+
Restyle by setting the glyph's own tokens (`--accent`, `--size`) on the part, and
|
|
179
|
+
style a state with a state entry instead of a ternary on your own flag —
|
|
180
|
+
the component decides when the state is on, and a global preset can say the
|
|
181
|
+
same thing.
|
|
182
|
+
|
|
183
|
+
The accent is the glyph's text colour, as on any icon: a `text-*` utility or a
|
|
184
|
+
`color` on the part recolours the checked dot, and `--accent` sets the default. A
|
|
185
|
+
state keeps its own paint — an error, a warning or a disabled glyph is never
|
|
186
|
+
recoloured by a text colour, even one in `pt:root:errors` (the
|
|
187
|
+
`bitboss-ui/no-state-text-color` lint says so). Recolour an error or a warning
|
|
188
|
+
through the accent: `pt:root:errors="[--accent:var(--color-red-800)]"`.
|
|
189
|
+
|
|
190
|
+
**pt:root and pt:root:disabled — a token, and a state entry**
|
|
191
|
+
|
|
192
|
+
```vue
|
|
193
|
+
<div class="flex items-center gap-3">
|
|
194
|
+
<BbBaseRadioIcon :pt:root="{ style: { '--accent': 'var(--bb-danger)', '--size': '20px' } }" />
|
|
195
|
+
<BbBaseRadioIcon checked :pt:root="{ style: { '--accent': 'var(--bb-danger)', '--size': '20px' } }" />
|
|
196
|
+
<BbBaseRadioIcon
|
|
197
|
+
checked
|
|
198
|
+
disabled
|
|
199
|
+
:pt:root="{ style: { '--accent': 'var(--bb-danger)', '--size': '20px' } }"
|
|
200
|
+
:pt:root:disabled="{ style: { opacity: '0.45' } }"
|
|
201
|
+
/>
|
|
202
|
+
</div>
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
The full grammar, the merge rules and the global map are in the
|
|
206
|
+
[passthrough guide](./guides/passthrough.md).
|
|
207
|
+
|
|
171
208
|
### Works well with
|
|
172
209
|
|
|
173
210
|
- [`BbRadio`](./BbRadio.md) / [`BbRadioGroup`](./BbRadioGroup.md) — the
|
|
@@ -180,11 +217,13 @@ from an ancestor — so `--size` set on a wrapper `div` is simply ignored
|
|
|
180
217
|
|
|
181
218
|
| Prop | Type | Default | Required | Description |
|
|
182
219
|
| --- | --- | --- | --- | --- |
|
|
220
|
+
| `pt:<part>`, `pt:<part>:<state>`, `pt` | `PtValue` | | | Passthrough — a class list, or `{ class, style, attrs }`, bound to one named part of the component; the state form applies only while that state is on. Parts: `root`. States: `checked`, `disabled`, `errors`, `focus-visible`, `focused`, `readonly`, `warnings`. `pt` is the object form with the same keys minus the prefix (`{ icon: '…', 'icon:loading': '…' }`). See `guides/passthrough.md`. |
|
|
183
221
|
| `checked` | `boolean \| undefined` | `false` | | Renders the checked state (grows the inner dot). |
|
|
184
222
|
| `disabled` | `boolean \| undefined` | `false` | | Disables the glyph (muted fill, not-allowed cursor). Purely visual. |
|
|
223
|
+
| `focused` | `boolean \| undefined` | `false` | | Whether the paired native input has focus — any focus, mouse included. Paints `--focused`, the hook the `focused` passthrough state aliases (T19); draws nothing by itself — the ring stays on `focusVisible`. |
|
|
185
224
|
| `focusVisible` | `boolean \| undefined` | `false` | | Whether keyboard focus is visible (`:focus-visible`). Draws the focus ring. |
|
|
186
225
|
| `hasErrors` | `boolean \| undefined` | `false` | | Puts the glyph into the error state (danger border and ring color). |
|
|
187
|
-
| `
|
|
226
|
+
| `hasWarnings` | `boolean \| undefined` | `false` | | Puts the glyph into the warning state (warn border and ring color). Errors take priority when both are set. |
|
|
188
227
|
| `readonly` | `boolean \| undefined` | `false` | | Renders the read-only affordance (default cursor instead of pointer). |
|
|
189
228
|
|
|
190
229
|
## Events
|
|
@@ -197,7 +236,7 @@ from an ancestor — so `--size` set on a wrapper `div` is simply ignored
|
|
|
197
236
|
|
|
198
237
|
## CSS custom properties
|
|
199
238
|
|
|
200
|
-
Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals; the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
|
|
239
|
+
Set these on the element, or on a class you put on it, to retune this component alone — the sanctioned alternative to reaching past the API with `:deep()`. They are this component's own locals — a **Set on** of `pt:<part>` means the local lives on that part's element, so set it through that entry (`pt:box="[--border-color:var(--color-green-500)]"`); the global `--bb-*` theme tokens are a separate tier (see the [design-tokens guide](./guides/design-tokens.md), or the MCP `list_tokens` tool).
|
|
201
240
|
|
|
202
241
|
| Property | Default | What it is |
|
|
203
242
|
| --- | --- | --- |
|
|
@@ -212,6 +251,6 @@ Set these on the element, or on a class you put on it, to retune this component
|
|
|
212
251
|
## See Also
|
|
213
252
|
|
|
214
253
|
- [BbRadio](./BbRadio.md) — Represents a single choice in exclusive options.
|
|
215
|
-
- [
|
|
216
|
-
- [BbBaseCheckboxIcon](./BbBaseCheckboxIcon.md) — Standalone checkbox glyph (box + checkmark SVG). Presentational only — no input, no events. Compose it into a fully custom checkbox design, or let BbCheckbox
|
|
217
|
-
- [BbBaseSwitchIcon](./BbBaseSwitchIcon.md) — Standalone switch glyph (track + thumb). Presentational only — no input, no events. Compose it into a fully custom switch design, or let BbSwitch
|
|
254
|
+
- [BbRadioGroup](./BbRadioGroup.md) — Coordinates exclusive selection among radio options.
|
|
255
|
+
- [BbBaseCheckboxIcon](./BbBaseCheckboxIcon.md) — Standalone checkbox glyph (box + checkmark SVG). Presentational only — no input, no events. Compose it into a fully custom checkbox design, or let BbCheckbox, BbCheckboxGroup or BbTable render it.
|
|
256
|
+
- [BbBaseSwitchIcon](./BbBaseSwitchIcon.md) — Standalone switch glyph (track + thumb). Presentational only — no input, no events. Compose it into a fully custom switch design, or let BbSwitch or BbSwitchGroup render it.
|