bitboss-ui 3.0.0-beta.63 → 3.0.0-beta.64
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 +25 -20
- package/bin/bitboss-ui.mjs +73 -7
- package/dist/ai/BbAlert.md +10 -1
- package/dist/ai/BbBadge.md +35 -3
- package/dist/ai/BbBadgeButton.md +4 -2
- package/dist/ai/BbBaseButton.md +9 -3
- package/dist/ai/BbBreadcrumbs.md +2 -2
- package/dist/ai/BbButton.md +113 -8
- package/dist/ai/BbCheckbox.md +1 -1
- package/dist/ai/BbCheckboxGroup.md +94 -6
- package/dist/ai/BbColorInput.md +4 -1
- package/dist/ai/BbColorPalette.md +2 -1
- package/dist/ai/BbConfirm.md +7 -3
- package/dist/ai/BbDatePicker.md +2 -1
- package/dist/ai/BbDatePickerInput.md +4 -1
- package/dist/ai/BbDialog.md +12 -11
- package/dist/ai/BbDropdown.md +189 -38
- package/dist/ai/BbDropdownButton.md +27 -7
- package/dist/ai/BbForm.md +55 -22
- package/dist/ai/BbHost.md +2 -2
- package/dist/ai/BbHoverCard.md +7 -3
- package/dist/ai/BbIcon.md +12 -6
- package/dist/ai/BbIndicator.md +11 -1
- package/dist/ai/BbNumberInput.md +4 -1
- package/dist/ai/BbOffCanvas.md +37 -3
- package/dist/ai/BbPopover.md +2 -1
- package/dist/ai/BbRadio.md +1 -1
- package/dist/ai/BbRadioGroup.md +102 -10
- package/dist/ai/BbSelect.md +52 -17
- package/dist/ai/BbSelectPopover.md +93 -26
- package/dist/ai/BbSwitch.md +1 -1
- package/dist/ai/BbSwitchGroup.md +30 -3
- package/dist/ai/BbTable.md +17 -10
- package/dist/ai/BbTabs.md +8 -3
- package/dist/ai/BbTabsList.md +4 -1
- package/dist/ai/BbTag.md +5 -2
- package/dist/ai/BbTextInput.md +4 -1
- package/dist/ai/BbTextarea.md +4 -1
- package/dist/ai/BbTimePicker.md +2 -1
- package/dist/ai/BbTimePickerInput.md +4 -1
- package/dist/ai/BbToast.md +9 -3
- package/dist/ai/BbTooltip.md +71 -9
- package/dist/ai/ChipsBox.md +1 -1
- package/dist/ai/CommonField.md +1 -1
- package/dist/ai/OptionsContainer.md +42 -0
- package/dist/ai/changelog.json +416 -6
- package/dist/ai/components.json +50 -48
- package/dist/ai/composables/useConfirm.md +39 -1
- package/dist/ai/design-tokens.json +6 -6
- package/dist/ai/guides/agent-contract.md +2 -2
- package/dist/ai/guides/ai-router.md +24 -23
- package/dist/ai/guides/app-layout.md +5 -0
- package/dist/ai/guides/component-picker.md +9 -2
- package/dist/ai/guides/design-language.md +24 -24
- package/dist/ai/guides/design-tokens.md +15 -8
- package/dist/ai/guides/icons-policy.md +9 -2
- package/dist/ai/guides/inertia-helpers.md +79 -49
- package/dist/ai/guides/installation-and-plugin-setup.md +12 -2
- package/dist/ai/guides/migration/adoption-checklist.md +235 -0
- package/dist/ai/guides/migration/components/bb-checkbox-group.md +16 -15
- package/dist/ai/guides/migration/components/bb-dialog.md +9 -9
- package/dist/ai/guides/migration/components/bb-dropdown.md +7 -2
- package/dist/ai/guides/migration/components/bb-popover.md +4 -2
- package/dist/ai/guides/migration/components/bb-select.md +19 -0
- package/dist/ai/guides/migration/components/bb-table.md +1 -0
- package/dist/ai/guides/migration/components/bb-toast.md +4 -0
- package/dist/ai/guides/migration/components/bb-tooltip.md +15 -12
- package/dist/ai/guides/migration/components/use-confirm.md +25 -2
- package/dist/ai/guides/migration/v2-to-v3.md +163 -9
- package/dist/ai/guides/migration/v3-beta-css-classes.md +7 -3
- package/dist/ai/guides/options-items-playbook.md +2 -1
- package/dist/ai/guides/passthrough.md +147 -85
- package/dist/ai/guides/preset-components.md +140 -15
- package/dist/ai/helpers/definePreset.json +7 -0
- package/dist/ai/helpers/definePreset.ts +123 -11
- package/dist/ai/helpers/inertia/manifest.json +15 -9
- package/dist/ai/helpers/inertia/useConfirmOnRouteLeave.ts +4 -4
- package/dist/ai/helpers/inertia/usePaginatedResponseContext.ts +39 -24
- package/dist/ai/helpers/inertia/useRouteQuery.ts +10 -4
- package/dist/ai/index.md +1 -0
- package/dist/ai/manifest/common.json +0 -1
- package/dist/ai/manifest/components/BbAlert.json +7 -2
- package/dist/ai/manifest/components/BbBadge.json +13 -4
- package/dist/ai/manifest/components/BbBadge.tree.json +2 -0
- package/dist/ai/manifest/components/BbBadgeButton.json +4 -2
- package/dist/ai/manifest/components/BbBaseButton.json +4 -2
- package/dist/ai/manifest/components/BbBreadcrumbs.tree.json +1 -1
- package/dist/ai/manifest/components/BbButton.json +14 -3
- package/dist/ai/manifest/components/BbButton.tree.json +5 -1
- package/dist/ai/manifest/components/BbCheckboxGroup.json +13 -8
- package/dist/ai/manifest/components/BbCheckboxGroup.tree.json +11 -1
- package/dist/ai/manifest/components/BbColorInput.json +18 -15
- package/dist/ai/manifest/components/BbColorPalette.json +1 -1
- package/dist/ai/manifest/components/BbConfirm.json +4 -2
- package/dist/ai/manifest/components/BbConfirm.tree.json +1 -1
- package/dist/ai/manifest/components/BbDatePicker.json +1 -1
- package/dist/ai/manifest/components/BbDatePickerInput.json +17 -14
- package/dist/ai/manifest/components/BbDialog.tree.json +2 -1
- package/dist/ai/manifest/components/BbDropdown.json +24 -19
- package/dist/ai/manifest/components/BbDropdown.tree.json +9 -2
- package/dist/ai/manifest/components/BbDropdownButton.json +33 -20
- package/dist/ai/manifest/components/BbDropdownButton.tree.json +2 -2
- package/dist/ai/manifest/components/BbForm.json +2 -2
- package/dist/ai/manifest/components/BbHost.tree.json +1 -1
- package/dist/ai/manifest/components/BbHoverCard.json +1 -1
- package/dist/ai/manifest/components/BbIndicator.json +8 -2
- package/dist/ai/manifest/components/BbNumberInput.json +5 -2
- package/dist/ai/manifest/components/BbOffCanvas.json +2 -2
- package/dist/ai/manifest/components/BbOffCanvas.tree.json +1 -1
- package/dist/ai/manifest/components/BbPopover.json +1 -1
- package/dist/ai/manifest/components/BbRadioGroup.json +17 -12
- package/dist/ai/manifest/components/BbRadioGroup.tree.json +8 -1
- package/dist/ai/manifest/components/BbSelect.json +21 -18
- package/dist/ai/manifest/components/BbSelect.tree.json +2 -2
- package/dist/ai/manifest/components/BbSelectPopover.json +10 -10
- package/dist/ai/manifest/components/BbSelectPopover.tree.json +3 -2
- package/dist/ai/manifest/components/BbSwitchGroup.json +1 -1
- package/dist/ai/manifest/components/BbSwitchGroup.tree.json +3 -1
- package/dist/ai/manifest/components/BbTable.tree.json +14 -1
- package/dist/ai/manifest/components/BbTabs.json +9 -6
- package/dist/ai/manifest/components/BbTabs.tree.json +1 -1
- package/dist/ai/manifest/components/BbTabsList.json +6 -3
- package/dist/ai/manifest/components/BbTag.json +19 -16
- package/dist/ai/manifest/components/BbTag.tree.json +1 -1
- package/dist/ai/manifest/components/BbTextInput.json +6 -3
- package/dist/ai/manifest/components/BbTextarea.json +6 -3
- package/dist/ai/manifest/components/BbTimePicker.json +1 -1
- package/dist/ai/manifest/components/BbTimePickerInput.json +10 -7
- package/dist/ai/manifest/components/BbToast.json +7 -2
- package/dist/ai/manifest/components/BbToast.tree.json +4 -2
- package/dist/ai/manifest/components/BbTooltip.json +6 -5
- package/dist/ai/manifest/components/ChipsBox.tree.json +1 -1
- package/dist/ai/manifest/components/CommonField.json +1 -1
- package/dist/ai/manifest/components/OptionsContainer.json +3 -1
- package/dist/ai/manifest/components/OptionsContainer.tree.json +38 -0
- package/dist/ai/manifest/index.json +3 -3
- package/dist/ai/manifest/meta.json +5 -3
- package/dist/ai/manifest/types.advanced.json +5 -2
- package/dist/ai/manifest/types.api.json +9 -7
- package/dist/ai/recipes/inertia/layout-scaffold.md +19 -6
- package/dist/ai/recipes/inertia/records-workspace.md +49 -13
- package/dist/ai/recipes/nuxt/layout-scaffold.md +19 -6
- package/dist/ai/recipes/nuxt/records-workspace.md +42 -12
- package/dist/ai/recipes/vue/layout-scaffold.md +19 -6
- package/dist/ai/recipes/vue/records-workspace.md +42 -12
- package/dist/ai/source/BbAlert.md +94 -76
- package/dist/ai/source/BbBadge.md +174 -72
- package/dist/ai/source/BbBadgeButton.md +130 -65
- package/dist/ai/source/BbBaseButton.md +46 -124
- package/dist/ai/source/BbBaseCheckboxIcon.md +38 -0
- package/dist/ai/source/BbBaseRadioIcon.md +18 -0
- package/dist/ai/source/BbBaseSwitchIcon.md +51 -0
- package/dist/ai/source/BbButton.md +153 -36
- package/dist/ai/source/BbCheckboxGroup.md +142 -18
- package/dist/ai/source/BbColorInput.md +240 -204
- package/dist/ai/source/BbColorPalette.md +7 -4
- package/dist/ai/source/BbConfirm.md +34 -11
- package/dist/ai/source/BbConfirmPortal.md +24 -9
- package/dist/ai/source/BbDatePicker.md +11 -7
- package/dist/ai/source/BbDatePickerInput.md +306 -269
- package/dist/ai/source/BbDialog.md +49 -14
- package/dist/ai/source/BbDropdown.md +314 -197
- package/dist/ai/source/BbDropdownButton.md +197 -31
- package/dist/ai/source/BbDropdownGroup.md +274 -176
- package/dist/ai/source/BbForm.md +50 -6
- package/dist/ai/source/BbHoverCard.md +12 -5
- package/dist/ai/source/BbIcon.md +4 -3
- package/dist/ai/source/BbIndicator.md +73 -52
- package/dist/ai/source/BbNumberInput.md +293 -257
- package/dist/ai/source/BbOffCanvas.md +55 -29
- package/dist/ai/source/BbPopover.md +14 -10
- package/dist/ai/source/BbRadioGroup.md +413 -297
- package/dist/ai/source/BbSelect.md +549 -435
- package/dist/ai/source/BbSelectPopover.md +128 -33
- package/dist/ai/source/BbSwitchGroup.md +70 -10
- package/dist/ai/source/BbTable.md +369 -37
- package/dist/ai/source/BbTabs.md +115 -39
- package/dist/ai/source/BbTabsList.md +106 -38
- package/dist/ai/source/BbTabsPanels.md +96 -36
- package/dist/ai/source/BbTabsRoot.md +96 -36
- package/dist/ai/source/BbTag.md +267 -233
- package/dist/ai/source/BbTextInput.md +261 -225
- package/dist/ai/source/BbTextarea.md +251 -215
- package/dist/ai/source/BbTimePicker.md +11 -7
- package/dist/ai/source/BbTimePickerInput.md +257 -220
- package/dist/ai/source/BbToast.md +73 -32
- package/dist/ai/source/BbToastPortal.md +65 -30
- package/dist/ai/source/BbTooltip.md +148 -113
- package/dist/ai/source/CommonPopover.md +6 -1
- package/dist/ai/source/FlatListBox.md +19 -9
- package/dist/ai/source/GroupedListBox.md +19 -9
- package/dist/ai/source/OptionsContainer.md +25 -9
- package/dist/components/BbAlert/BbAlert.vue_vue_type_script_setup_true_lang.js +61 -36
- package/dist/components/BbAlert/types.d.ts +9 -5
- package/dist/components/BbAlert/types.js +8 -3
- package/dist/components/BbBadge/BadgeBodyContent.vue.d.ts +3 -3
- package/dist/components/BbBadge/BadgeBodyContent.vue_vue_type_script_setup_true_lang.js +26 -17
- package/dist/components/BbBadge/BbBadge.vue_vue_type_script_setup_true_lang.js +103 -50
- package/dist/components/BbBadge/BbBadgeButton.vue_vue_type_script_setup_true_lang.js +20 -15
- package/dist/components/BbBadge/badgeButtonContext.d.ts +12 -1
- package/dist/components/BbBadge/types.d.ts +45 -15
- package/dist/components/BbBadge/types.js +12 -3
- package/dist/components/BbBaseButton/BbBaseButton.vue_vue_type_script_setup_true_lang.js +89 -126
- package/dist/components/BbBaseButton/types.d.ts +23 -4
- package/dist/components/BbBaseButton/types.js +7 -1
- package/dist/components/BbBaseButton/useLinkState.d.ts +41 -0
- package/dist/components/BbBaseButton/useLinkState.js +70 -0
- package/dist/components/BbButton/BbButton.vue_vue_type_script_setup_true_lang.js +130 -74
- package/dist/components/BbButton/types.d.ts +50 -13
- package/dist/components/BbButton/types.js +10 -3
- package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +148 -95
- package/dist/components/BbCheckboxGroup/types.d.ts +34 -11
- package/dist/components/BbCheckboxGroup/types.js +9 -4
- package/dist/components/BbCollapsible/BbCollapsible.vue.d.ts +1 -1
- package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +134 -93
- package/dist/components/BbColorInput/types.d.ts +11 -4
- package/dist/components/BbColorInput/types.js +9 -3
- package/dist/components/BbConfirm/BbConfirm.vue_vue_type_script_setup_true_lang.js +82 -59
- package/dist/components/BbConfirm/types.d.ts +9 -4
- package/dist/components/BbConfirm/types.js +8 -3
- package/dist/components/BbDatePicker/BbDatePicker.vue.d.ts +1 -1
- package/dist/components/BbDatePicker/BbDatePicker.vue_vue_type_script_setup_true_lang.js +68 -67
- package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.d.ts +1 -1
- package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +259 -215
- package/dist/components/BbDatePickerInput/types.d.ts +12 -5
- package/dist/components/BbDatePickerInput/types.js +9 -3
- package/dist/components/BbDialog/BbDialog.vue_vue_type_script_setup_true_lang.js +223 -219
- package/dist/components/BbDialog/useDialogStack.d.ts +1 -1
- package/dist/components/BbDropdown/AdaptiveDropdown.vue_vue_type_script_setup_true_lang.js +104 -89
- package/dist/components/BbDropdown/BbDropdown.vue.d.ts +1 -0
- package/dist/components/BbDropdown/BbDropdown.vue_vue_type_script_setup_true_lang.js +323 -285
- package/dist/components/BbDropdown/BbDropdownList.vue.d.ts +1 -0
- package/dist/components/BbDropdown/BbDropdownList.vue_vue_type_script_setup_true_lang.js +411 -319
- package/dist/components/BbDropdown/DropdownPipelineResolver.vue_vue_type_script_setup_true_lang.js +100 -98
- package/dist/components/BbDropdown/DropdownRow.vue.d.ts +4 -3
- package/dist/components/BbDropdown/DropdownRow.vue_vue_type_script_setup_true_lang.js +49 -28
- package/dist/components/BbDropdown/normalizeGroups.d.ts +6 -0
- package/dist/components/BbDropdown/normalizeGroups.js +21 -15
- package/dist/components/BbDropdown/types.d.ts +59 -12
- package/dist/components/BbDropdown/types.js +16 -3
- package/dist/components/BbDropdown/useDropdownContext.d.ts +6 -0
- package/dist/components/BbDropdownButton/BbDropdownButton.vue.d.ts +2 -1
- package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +179 -68
- package/dist/components/BbDropdownButton/types.d.ts +44 -16
- package/dist/components/BbDropdownButton/types.js +28 -3
- package/dist/components/BbForm/BbForm.vue_vue_type_script_setup_true_lang.js +111 -89
- package/dist/components/BbForm/formSchema.d.ts +13 -0
- package/dist/components/BbHoverCard/BbHoverCard.vue_vue_type_script_setup_true_lang.js +100 -100
- package/dist/components/BbIndicator/BbIndicator.vue_vue_type_script_setup_true_lang.js +40 -25
- package/dist/components/BbIndicator/types.d.ts +9 -5
- package/dist/components/BbIndicator/types.js +8 -3
- package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +243 -202
- package/dist/components/BbNumberInput/types.d.ts +12 -5
- package/dist/components/BbNumberInput/types.js +9 -3
- package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +1 -1
- package/dist/components/BbOffCanvas/BbOffCanvas.vue_vue_type_script_setup_true_lang.js +401 -399
- package/dist/components/BbOffCanvas/types.d.ts +6 -2
- package/dist/components/BbPopover/BbPopover.vue_vue_type_script_setup_true_lang.js +81 -80
- package/dist/components/BbRadioGroup/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +158 -105
- package/dist/components/BbRadioGroup/types.d.ts +21 -7
- package/dist/components/BbRadioGroup/types.js +9 -4
- package/dist/components/BbSelect/BbSelect.vue.d.ts +4 -3
- package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +181 -137
- package/dist/components/BbSelect/types.d.ts +36 -22
- package/dist/components/BbSelect/types.js +22 -3
- package/dist/components/BbSelectPopover/BbSelectPopover.vue.d.ts +4 -4
- package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +543 -532
- package/dist/components/BbSelectPopover/knownItems.d.ts +5 -0
- package/dist/components/BbSelectPopover/types.d.ts +46 -12
- package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.d.ts +1 -1
- package/dist/components/BbSwitchGroup/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/BbSwitchGroup/types.d.ts +14 -4
- package/dist/components/BbSwitchGroup/types.js +8 -3
- package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +1102 -995
- package/dist/components/BbTable/estimatedFloors.golden.d.ts +25 -0
- package/dist/components/BbTable/measuredFloors.d.ts +46 -0
- package/dist/components/BbTable/measuredFloors.js +322 -0
- package/dist/components/BbTable/measuredFloorsTestKit.d.ts +27 -0
- package/dist/components/BbTable/textRuler.d.ts +71 -0
- package/dist/components/BbTable/textRuler.js +121 -0
- package/dist/components/BbTable/utils.d.ts +113 -6
- package/dist/components/BbTable/utils.js +118 -65
- package/dist/components/BbTabs/BbTabs.vue_vue_type_script_setup_true_lang.js +53 -35
- package/dist/components/BbTabs/BbTabsList.vue_vue_type_script_setup_true_lang.js +62 -45
- package/dist/components/BbTabs/types.d.ts +26 -11
- package/dist/components/BbTabs/types.js +23 -8
- package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +205 -164
- package/dist/components/BbTag/types.d.ts +11 -4
- package/dist/components/BbTag/types.js +9 -3
- package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +98 -57
- package/dist/components/BbTextInput/types.d.ts +12 -5
- package/dist/components/BbTextInput/types.js +9 -3
- package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +137 -96
- package/dist/components/BbTextarea/types.d.ts +12 -5
- package/dist/components/BbTextarea/types.js +9 -3
- package/dist/components/BbTimePicker/BbTimePicker.vue_vue_type_script_setup_true_lang.js +105 -104
- package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +241 -197
- package/dist/components/BbTimePickerInput/types.d.ts +12 -5
- package/dist/components/BbTimePickerInput/types.js +9 -3
- package/dist/components/BbToast/BbToast.vue_vue_type_script_setup_true_lang.js +74 -32
- package/dist/components/BbToast/BbToastMessage.vue_vue_type_script_setup_true_lang.js +47 -47
- package/dist/components/BbToast/types.d.ts +10 -5
- package/dist/components/BbToast/types.js +18 -3
- package/dist/components/BbTooltip/BbTooltip.vue_vue_type_script_setup_true_lang.js +85 -71
- package/dist/components/BbTooltip/types.d.ts +13 -8
- package/dist/components/BbTooltip/types.js +8 -3
- package/dist/components/CommonField/CommonField.vue.d.ts +1 -1
- package/dist/components/CommonPopover/CommonPopover.vue.d.ts +1 -1
- package/dist/components/CommonPopover/CommonPopover.vue_vue_type_script_setup_true_lang.js +69 -69
- package/dist/components/FlatListBox/FlatListBox.vue_vue_type_script_setup_true_lang.js +53 -50
- package/dist/components/GroupedListBox/GroupedListBox.vue_vue_type_script_setup_true_lang.js +146 -143
- package/dist/components/OptionsContainer/OptionsContainer.vue_vue_type_script_setup_true_lang.js +7 -2
- package/dist/components/OptionsContainer/types.d.ts +14 -3
- package/dist/composables/useBbFormContext.d.ts +4 -3
- package/dist/composables/useBbTabsContext.js +99 -85
- package/dist/composables/useChoiceIndicator.d.ts +58 -0
- package/dist/composables/useChoiceIndicator.js +197 -0
- package/dist/composables/useConfirm.d.ts +4 -4
- package/dist/composables/usePassthrough.d.ts +54 -1
- package/dist/composables/usePassthrough.js +100 -71
- package/dist/directives/bbTooltip.d.ts +12 -6
- package/dist/directives/createPopoverDirective.js +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/llms-full.txt +2300 -543
- package/dist/llms-medium.txt +71 -53
- package/dist/llms.txt +2 -1
- package/dist/passthrough-deduper.js +6 -3
- package/dist/project-dts.d.ts +24 -0
- package/dist/project-dts.js +43 -17
- package/dist/styles.css +2 -2
- package/dist/types/AlertVariant.d.ts +14 -0
- package/dist/types/AlertVariant.js +9 -0
- package/dist/types/BadgeVariant.d.ts +14 -0
- package/dist/types/BadgeVariant.js +9 -0
- package/dist/types/ButtonVariant.d.ts +16 -0
- package/dist/types/ButtonVariant.js +11 -0
- package/dist/types/CheckboxVariant.d.ts +38 -0
- package/dist/types/CheckboxVariant.js +4 -0
- package/dist/types/CommonProps.d.ts +4 -3
- package/dist/types/Config.d.ts +7 -0
- package/dist/types/ConfirmVariant.d.ts +12 -0
- package/dist/types/ConfirmVariant.js +4 -0
- package/dist/types/DropdownItemVariant.d.ts +12 -0
- package/dist/types/DropdownItemVariant.js +4 -0
- package/dist/types/IndicatorVariant.d.ts +15 -0
- package/dist/types/IndicatorVariant.js +10 -0
- package/dist/types/InputVariant.d.ts +13 -0
- package/dist/types/InputVariant.js +8 -0
- package/dist/types/RadioVariant.d.ts +38 -0
- package/dist/types/RadioVariant.js +4 -0
- package/dist/types/TabsVariant.d.ts +13 -0
- package/dist/types/TabsVariant.js +8 -0
- package/dist/types/ToastVariant.d.ts +15 -0
- package/dist/types/ToastVariant.js +10 -0
- package/dist/types/TooltipVariant.d.ts +12 -0
- package/dist/types/TooltipVariant.js +4 -0
- package/dist/types/passthrough.d.ts +83 -15
- package/dist/types/passthrough.js +2 -2
- package/dist/types/ptComponentMap.d.ts +35 -23
- package/dist/utilities/functions/extractDomContainer.d.ts +20 -1
- package/dist/utilities/functions/extractDomContainer.js +8 -3
- package/dist/utils/focusVisibility.d.ts +6 -0
- package/dist/utils/focusVisibility.js +4 -1
- package/dist/utils/passthroughDeduper.d.ts +14 -0
- package/dist/utils/versionCheck.js +1 -1
- package/dist/vite-plugin.d.ts +64 -7
- package/dist/vite.js +385 -259
- package/llms.txt +2 -1
- package/package.json +3 -3
- package/scripts/lib/adoption-checklist.json +312 -0
- package/scripts/lib/eslint-plugin.d.ts +13 -0
- package/scripts/lib/eslint-plugin.mjs +75 -11
- package/scripts/lib/idiom-scan.mjs +65 -0
- package/scripts/lib/mcp-config.mjs +203 -9
- package/scripts/lib/migrate-fix.mjs +42 -1
- package/scripts/lib/project-variant-dts.mjs +18 -0
- package/scripts/lib/validate-bb-markup.mjs +99 -2
package/dist/ai/changelog.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 3,
|
|
3
3
|
"library": "bitboss-ui",
|
|
4
|
-
"version": "3.0.0-beta.
|
|
4
|
+
"version": "3.0.0-beta.64",
|
|
5
5
|
"upgrade": "v2-to-v3",
|
|
6
6
|
"guide": "ai/guides/migration/v2-to-v3.md",
|
|
7
7
|
"legend": {
|
|
@@ -73,7 +73,8 @@
|
|
|
73
73
|
"3.0.0-beta.60",
|
|
74
74
|
"3.0.0-beta.61",
|
|
75
75
|
"3.0.0-beta.62",
|
|
76
|
-
"3.0.0-beta.63"
|
|
76
|
+
"3.0.0-beta.63",
|
|
77
|
+
"3.0.0-beta.64"
|
|
77
78
|
],
|
|
78
79
|
"unpublished": [
|
|
79
80
|
"3.0.0-alpha.2",
|
|
@@ -95,8 +96,8 @@
|
|
|
95
96
|
"3.0.0-beta.55"
|
|
96
97
|
],
|
|
97
98
|
"summary": {
|
|
98
|
-
"renames":
|
|
99
|
-
"behaviourBreaks":
|
|
99
|
+
"renames": 222,
|
|
100
|
+
"behaviourBreaks": 250,
|
|
100
101
|
"bySurface": {
|
|
101
102
|
"prop": 15,
|
|
102
103
|
"option": 1,
|
|
@@ -104,10 +105,10 @@
|
|
|
104
105
|
"slot": 14,
|
|
105
106
|
"item": 6,
|
|
106
107
|
"cssVar": 32,
|
|
107
|
-
"class":
|
|
108
|
+
"class": 140
|
|
108
109
|
},
|
|
109
110
|
"unreleased": 0,
|
|
110
|
-
"added":
|
|
111
|
+
"added": 441
|
|
111
112
|
},
|
|
112
113
|
"added": {
|
|
113
114
|
"3.0.0-alpha.1": [
|
|
@@ -2096,6 +2097,124 @@
|
|
|
2096
2097
|
"BbPtScope"
|
|
2097
2098
|
]
|
|
2098
2099
|
}
|
|
2100
|
+
],
|
|
2101
|
+
"3.0.0-beta.64": [
|
|
2102
|
+
{
|
|
2103
|
+
"text": "select · known rows tell themselves apart in slots",
|
|
2104
|
+
"components": [
|
|
2105
|
+
"BbSelectPopover"
|
|
2106
|
+
]
|
|
2107
|
+
},
|
|
2108
|
+
{
|
|
2109
|
+
"text": "passthrough · a component's variant is a pt state",
|
|
2110
|
+
"components": [
|
|
2111
|
+
"BbAlert",
|
|
2112
|
+
"BbBadge",
|
|
2113
|
+
"BbButton",
|
|
2114
|
+
"BbColorInput",
|
|
2115
|
+
"BbConfirm",
|
|
2116
|
+
"BbDatePickerInput",
|
|
2117
|
+
"BbDropdown",
|
|
2118
|
+
"BbDropdownButton",
|
|
2119
|
+
"BbIndicator",
|
|
2120
|
+
"BbNumberInput",
|
|
2121
|
+
"BbSelect",
|
|
2122
|
+
"BbTabs",
|
|
2123
|
+
"BbTag",
|
|
2124
|
+
"BbTextInput",
|
|
2125
|
+
"BbTextarea",
|
|
2126
|
+
"BbTimePickerInput",
|
|
2127
|
+
"BbToast",
|
|
2128
|
+
"BbTooltip"
|
|
2129
|
+
]
|
|
2130
|
+
},
|
|
2131
|
+
"offcanvas · a side per breakpoint, frozen at open",
|
|
2132
|
+
{
|
|
2133
|
+
"text": "passthrough · an app's own variants in the attribute form",
|
|
2134
|
+
"components": [
|
|
2135
|
+
"BbAlert",
|
|
2136
|
+
"BbBadge",
|
|
2137
|
+
"BbButton",
|
|
2138
|
+
"BbColorInput",
|
|
2139
|
+
"BbConfirm",
|
|
2140
|
+
"BbDatePickerInput",
|
|
2141
|
+
"BbDropdown",
|
|
2142
|
+
"BbDropdownButton",
|
|
2143
|
+
"BbIndicator",
|
|
2144
|
+
"BbNumberInput",
|
|
2145
|
+
"BbSelect",
|
|
2146
|
+
"BbTabs",
|
|
2147
|
+
"BbTag",
|
|
2148
|
+
"BbTextInput",
|
|
2149
|
+
"BbTextarea",
|
|
2150
|
+
"BbTimePickerInput",
|
|
2151
|
+
"BbToast",
|
|
2152
|
+
"BbTooltip"
|
|
2153
|
+
]
|
|
2154
|
+
},
|
|
2155
|
+
{
|
|
2156
|
+
"text": "check · adoption checklist and check --idioms",
|
|
2157
|
+
"components": [
|
|
2158
|
+
"BbRadioGroup",
|
|
2159
|
+
"BbTabs"
|
|
2160
|
+
]
|
|
2161
|
+
},
|
|
2162
|
+
"table · measured reservations, cell roles and hold levels in the fit",
|
|
2163
|
+
"table · held cells floor their own track at the fit's hold level",
|
|
2164
|
+
"table · a text ruler that measures values in their rendered type",
|
|
2165
|
+
"table · measure held values and headings after mount, guard the plan",
|
|
2166
|
+
"table · a column padded wider than its header reserves the padding",
|
|
2167
|
+
{
|
|
2168
|
+
"text": "select · known in pt per-item functions and through definepreset",
|
|
2169
|
+
"components": [
|
|
2170
|
+
"BbSelectPopover"
|
|
2171
|
+
]
|
|
2172
|
+
},
|
|
2173
|
+
"ai-init · register the mcp server for zed",
|
|
2174
|
+
"dropdown · query in the empty and loading slot scope",
|
|
2175
|
+
"dropdown · escape on a sheet level goes back one level",
|
|
2176
|
+
"dropdown · --fs and --icon-size size the desktop rows",
|
|
2177
|
+
"dropdown · items stop forwarding data and aria keys to the row",
|
|
2178
|
+
"button · icon slots with the button states as scope",
|
|
2179
|
+
{
|
|
2180
|
+
"text": "dropdown-button · the main button's icon slots",
|
|
2181
|
+
"components": [
|
|
2182
|
+
"BbDropdownButton"
|
|
2183
|
+
]
|
|
2184
|
+
},
|
|
2185
|
+
"badge · icon slots, and the link state in the badge button slot",
|
|
2186
|
+
{
|
|
2187
|
+
"text": "choice-groups · own registries, vertical strips, liquid runs",
|
|
2188
|
+
"components": [
|
|
2189
|
+
"BbCheckboxGroup",
|
|
2190
|
+
"BbRadioGroup",
|
|
2191
|
+
"BbSwitchGroup",
|
|
2192
|
+
"BbTabs",
|
|
2193
|
+
"OptionsContainer"
|
|
2194
|
+
]
|
|
2195
|
+
},
|
|
2196
|
+
{
|
|
2197
|
+
"text": "choice-groups · persistent checkbox pills, seamless contacts",
|
|
2198
|
+
"components": [
|
|
2199
|
+
"BbCheckboxGroup",
|
|
2200
|
+
"OptionsContainer"
|
|
2201
|
+
]
|
|
2202
|
+
},
|
|
2203
|
+
"dropdown · groupby sections inside one group (att-15 prototype)",
|
|
2204
|
+
{
|
|
2205
|
+
"text": "dropdown · groupby lists untitled rows first, as select now does",
|
|
2206
|
+
"components": [
|
|
2207
|
+
"BbSelect",
|
|
2208
|
+
"BbSelectPopover"
|
|
2209
|
+
]
|
|
2210
|
+
},
|
|
2211
|
+
"form · emit invalid when server errors land",
|
|
2212
|
+
{
|
|
2213
|
+
"text": "dropdown · close on select by choice kind, not group count",
|
|
2214
|
+
"components": [
|
|
2215
|
+
"BbDropdownButton"
|
|
2216
|
+
]
|
|
2217
|
+
}
|
|
2099
2218
|
]
|
|
2100
2219
|
},
|
|
2101
2220
|
"breaking": [
|
|
@@ -5244,6 +5363,34 @@
|
|
|
5244
5363
|
"firstReleasedIn": "3.0.0-beta.41",
|
|
5245
5364
|
"guide": "ai/guides/migration/v3-beta-css-classes.md"
|
|
5246
5365
|
},
|
|
5366
|
+
{
|
|
5367
|
+
"id": "css:bb-dialog--stacked",
|
|
5368
|
+
"kind": "rename",
|
|
5369
|
+
"surface": "class",
|
|
5370
|
+
"components": [
|
|
5371
|
+
".bb-dialog"
|
|
5372
|
+
],
|
|
5373
|
+
"from": ".bb-dialog--stacked",
|
|
5374
|
+
"to": ".bb-dialog--above",
|
|
5375
|
+
"since": "",
|
|
5376
|
+
"default": "",
|
|
5377
|
+
"firstReleasedIn": "3.0.0-beta.64",
|
|
5378
|
+
"guide": "ai/guides/migration/v3-beta-css-classes.md"
|
|
5379
|
+
},
|
|
5380
|
+
{
|
|
5381
|
+
"id": "css:bb-offcanvas--stacked",
|
|
5382
|
+
"kind": "rename",
|
|
5383
|
+
"surface": "class",
|
|
5384
|
+
"components": [
|
|
5385
|
+
".bb-offcanvas"
|
|
5386
|
+
],
|
|
5387
|
+
"from": ".bb-offcanvas--stacked",
|
|
5388
|
+
"to": ".bb-offcanvas--above",
|
|
5389
|
+
"since": "",
|
|
5390
|
+
"default": "",
|
|
5391
|
+
"firstReleasedIn": "3.0.0-beta.64",
|
|
5392
|
+
"guide": "ai/guides/migration/v3-beta-css-classes.md"
|
|
5393
|
+
},
|
|
5247
5394
|
{
|
|
5248
5395
|
"id": "f099",
|
|
5249
5396
|
"kind": "behaviour",
|
|
@@ -8511,6 +8658,269 @@
|
|
|
8511
8658
|
"ruling": "owner 2026-10-22 (Q75.9)",
|
|
8512
8659
|
"guide": "v2-to-v3.md § 6 item 97 + components/use-confirm.md + components/bb-host.md + BbConfirm.md § Several confirms at once + useConfirm.md",
|
|
8513
8660
|
"firstReleasedIn": "3.0.0-beta.63"
|
|
8661
|
+
},
|
|
8662
|
+
{
|
|
8663
|
+
"id": "f371",
|
|
8664
|
+
"kind": "behaviour",
|
|
8665
|
+
"summary": "BbDialog: a member over one of its own stack paints no second dim; the covered member's backdrop stays, no handoff",
|
|
8666
|
+
"components": [
|
|
8667
|
+
"BbDialog",
|
|
8668
|
+
"BbConfirm"
|
|
8669
|
+
],
|
|
8670
|
+
"description": "BbDialog: a member opened over an earlier member of its own stack (a drill-in step, a confirm given its dialog's stack) paints NO dim of its own (new class bb-dialog--covering, the pair of --covered): the covered member's backdrop stays the one on screen, so the page is as dark as under one dialog and nothing hands off when the top one closes. It used to add the stacked dim over a hidden box, darkening the page twice. Dialogs over a VISIBLE dialog (another stack name, or none) keep the stacked dim",
|
|
8671
|
+
"ruling": "owner 2026-10-23",
|
|
8672
|
+
"guide": "v2-to-v3.md § 6 item 98 + BbDialog.md § Stacked dialogs + design-tokens.md",
|
|
8673
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8674
|
+
},
|
|
8675
|
+
{
|
|
8676
|
+
"id": "f372",
|
|
8677
|
+
"kind": "behaviour",
|
|
8678
|
+
"summary": "bb-dialog--stacked / bb-offcanvas--stacked are now --above, and --bb-overlay-stacked is --bb-overlay-above",
|
|
8679
|
+
"components": [
|
|
8680
|
+
"BbDialog",
|
|
8681
|
+
"BbOffCanvas"
|
|
8682
|
+
],
|
|
8683
|
+
"description": "Renamed so the word stack only names a replace group: the class a dialog / off-canvas opened above another open one carries, bb-dialog--stacked → bb-dialog--above and bb-offcanvas--stacked → bb-offcanvas--above, and its dim token --bb-overlay-stacked → --bb-overlay-above. Hard rename, no alias: CSS that targets the old class or sets the old token stops applying (bitboss-ui check reports the classes)",
|
|
8684
|
+
"ruling": "owner 2026-10-23",
|
|
8685
|
+
"guide": "v2-to-v3.md § 6 item 98 + v3-beta-css-classes.md + design-tokens.md",
|
|
8686
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8687
|
+
},
|
|
8688
|
+
{
|
|
8689
|
+
"id": "f373",
|
|
8690
|
+
"kind": "behaviour",
|
|
8691
|
+
"summary": "BbSelect/BbSelectPopover known-items: slots, pt item fns, presets get `known`; `item` is `T | BbSelectKnownItem`. `BbSelectProps<T>` alone is bound (`<T, undefined>` opts out)",
|
|
8692
|
+
"components": [
|
|
8693
|
+
"BbSelect",
|
|
8694
|
+
"BbSelectPopover"
|
|
8695
|
+
],
|
|
8696
|
+
"description": "BbSelect / BbSelectPopover: on a select that binds known-items, the option and chip slots (the popover's option) get known, and item is typed T | BbSelectKnownItem (a discriminated union on known): a slot reading an option field off item without checking known is a TYPE ERROR (it rendered blank until the list loaded); a pt per-item function on the option parts gets the same { item, known }, and the type alone (BbSelectProps<T>, BbSelectPopoverProps<T>: a wrapper's props, a pt const) is the bound case (<T, undefined> opts out); with definePreset rev 4 a select preset narrows like the select, and its own default slots always get known. New public type BbSelectSlotRow<T>; a second generic Known inferred from known-items. Selects without known-items keep item: T (plus known: false)",
|
|
8697
|
+
"ruling": "owner 2026-10-23",
|
|
8698
|
+
"guide": "v2-to-v3.md § 6 item 99 + BbSelect.md § known-items + BbSelectPopover.md",
|
|
8699
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8700
|
+
},
|
|
8701
|
+
{
|
|
8702
|
+
"id": "f374",
|
|
8703
|
+
"kind": "behaviour",
|
|
8704
|
+
"summary": "Build plugin: a custom variant named like a passthrough state of a component it styles fails the build; variants are now pt states (pt:<part>:<variant>)",
|
|
8705
|
+
"components": [
|
|
8706
|
+
"BbAlert",
|
|
8707
|
+
"BbBadge",
|
|
8708
|
+
"BbButton",
|
|
8709
|
+
"BbColorInput",
|
|
8710
|
+
"BbConfirm",
|
|
8711
|
+
"BbDatePickerInput",
|
|
8712
|
+
"BbDropdown",
|
|
8713
|
+
"BbDropdownButton",
|
|
8714
|
+
"BbIndicator",
|
|
8715
|
+
"BbNumberInput",
|
|
8716
|
+
"BbSelect",
|
|
8717
|
+
"BbTabs",
|
|
8718
|
+
"BbTag",
|
|
8719
|
+
"BbTextInput",
|
|
8720
|
+
"BbTextarea",
|
|
8721
|
+
"BbTimePickerInput",
|
|
8722
|
+
"BbToast",
|
|
8723
|
+
"BbTooltip"
|
|
8724
|
+
],
|
|
8725
|
+
"description": "Build plugin: a custom variant registered under the name of a passthrough state of a component it styles (buttonVariants: ['loading'], dropdownItemVariants: ['selected'], tabsVariants: ['active']) FAILS THE BUILD (Q76.7: a component's variant is a pt state, pt:<part>:<variant>, so the two names would collide). Rename the variant. The variant states themselves are additive.",
|
|
8726
|
+
"ruling": "owner 2026-10-23",
|
|
8727
|
+
"guide": "v2-to-v3.md § 6 item 100 + passthrough.md",
|
|
8728
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8729
|
+
},
|
|
8730
|
+
{
|
|
8731
|
+
"id": "f375",
|
|
8732
|
+
"kind": "behaviour",
|
|
8733
|
+
"summary": "BbDropdown submenus (APG): Escape closes one level and refocuses its row; Enter/Space/click open a submenu with focus inside; focus returns to the row when a submenu closes; rtl swaps arrows",
|
|
8734
|
+
"components": [
|
|
8735
|
+
"BbDropdown",
|
|
8736
|
+
"BbDropdownButton"
|
|
8737
|
+
],
|
|
8738
|
+
"description": "BbDropdown submenus follow the APG menu pattern (desktop flyout): Escape in a submenu closes that level and refocuses its opener (was: the whole menu); Enter / Space / click open a submenu with focus inside (search box first), like ArrowRight; focus returns to the opener when a submenu closes under it; searchable submenu openers say aria-haspopup=\"dialog\", open ones get aria-controls, every submenu is named after its opener; dir=\"rtl\" swaps the inline arrows and opens flyouts to the left. Silent for apps that hand-rolled per-level Escape or focus() into submenus.",
|
|
8739
|
+
"ruling": "owner 2026-10-26 (ATT-07)",
|
|
8740
|
+
"guide": "v2-to-v3.md § 6 item 101 + BbDropdown.md § Keyboard",
|
|
8741
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8742
|
+
},
|
|
8743
|
+
{
|
|
8744
|
+
"id": "f376",
|
|
8745
|
+
"kind": "behaviour",
|
|
8746
|
+
"summary": "Inertia helpers: `usePaginatedResponseContext` `page`/`perPage` read the server answer, not the URL; no write-back after a visit (one visit on a redirect); `items` reset when the prop changes",
|
|
8747
|
+
"components": [
|
|
8748
|
+
"usePaginatedResponseContext",
|
|
8749
|
+
"useTableContext",
|
|
8750
|
+
"useRouteQuery"
|
|
8751
|
+
],
|
|
8752
|
+
"description": "Inertia helpers (usePaginatedResponseContext / useTableContext, after npx bitboss-ui helpers update): page and perPage read the server's answer (a clamped ?page=99, a capped ?per_page=500, a redirect to the bare URL), not the URL, and nothing writes them back after a visit, so a redirect is one visit, not two. ?page leaves the URL at page 1; ?per_page only at the server's default, once an answer to a URL without it has shown it. items resets when the prop changes (also Back / Forward), not on every successful visit. useRouteQuery's default may be a ref or a getter.",
|
|
8753
|
+
"ruling": "owner 2026-10-26 (Q81.1(b), ATT-05)",
|
|
8754
|
+
"guide": "v2-to-v3.md § 6 item 102 + inertia-helpers.md",
|
|
8755
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8756
|
+
},
|
|
8757
|
+
{
|
|
8758
|
+
"id": "f377",
|
|
8759
|
+
"kind": "behaviour",
|
|
8760
|
+
"summary": "BbToast: the card edge is a `border`, not an inset ring in `box-shadow`; `--bb-shadow: none` or a `box-shadow` override keeps the edge",
|
|
8761
|
+
"components": [
|
|
8762
|
+
"BbToast"
|
|
8763
|
+
],
|
|
8764
|
+
"description": "BbToast: the card edge is a real border (--bw = --bb-border-w), no longer an inset ring inside box-shadow. box-shadow is --bb-shadow alone, so --bb-shadow: none or a box-shadow override keeps the edge; a border set on .bb-toast__panel replaces it. Same card size.",
|
|
8765
|
+
"ruling": "owner 2026-10-26 (Q81.2(c), ATT-06)",
|
|
8766
|
+
"guide": "v2-to-v3.md § 6 item 103 + migration/components/bb-toast.md + design-tokens.md",
|
|
8767
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8768
|
+
},
|
|
8769
|
+
{
|
|
8770
|
+
"id": "f378",
|
|
8771
|
+
"kind": "behaviour",
|
|
8772
|
+
"summary": "BbBadge: a set `clearableLabel` is the whole name of the ✕ on any body; a text body no longer appends its text (unset still composes \"Remove <text>\")",
|
|
8773
|
+
"components": [
|
|
8774
|
+
"BbBadge"
|
|
8775
|
+
],
|
|
8776
|
+
"description": "BbBadge: a set clearableLabel is the ✕'s WHOLE accessible name on any body. With a text body the badge used to append its text (aria-labelledby = the ✕ + the body), so clearable-label=\"Remove the filter Deleted\" read \"Remove the filter Deleted Deleted\"; with a BbBadgeButton body it was already whole. Unset keeps the composed \"Remove <text>\" (the bare verb on a BbBadgeButton body). An app that passed only a verb to get the composition: drop the prop, or pass the whole name",
|
|
8777
|
+
"ruling": "owner 2026-10-26 (Q81.1(d), ATT-08)",
|
|
8778
|
+
"guide": "v2-to-v3.md § 6 item 104 + BbBadge.md § clearable",
|
|
8779
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8780
|
+
},
|
|
8781
|
+
{
|
|
8782
|
+
"id": "f382",
|
|
8783
|
+
"kind": "behaviour",
|
|
8784
|
+
"summary": "BbTooltip / v-bb-tooltip: the visible bubble is `aria-hidden`; its text stays the activator's description, so a tooltip inside a `<label>` no longer joins the control's name",
|
|
8785
|
+
"components": [
|
|
8786
|
+
"BbTooltip"
|
|
8787
|
+
],
|
|
8788
|
+
"description": "BbTooltip / v-bb-tooltip: the visible bubble is aria-hidden (no role=tooltip in the accessibility tree); its text stays the activator's description through the hidden describedby node, so a tooltip inside a <label> no longer joins the control's name. Apps that queried the bubble by role in tests query the description instead",
|
|
8789
|
+
"ruling": "owner 2026-10-26 (ATT-11 (a))",
|
|
8790
|
+
"guide": "v2-to-v3.md § 6 item 105 + BbTooltip.md § Accessibility",
|
|
8791
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8792
|
+
},
|
|
8793
|
+
{
|
|
8794
|
+
"id": "f383",
|
|
8795
|
+
"kind": "behaviour",
|
|
8796
|
+
"summary": "BbTooltip `activator` accepts a CSS selector string, looked up once the tooltip mounts (the component only, not v-bb-tooltip)",
|
|
8797
|
+
"components": [
|
|
8798
|
+
"BbTooltip"
|
|
8799
|
+
],
|
|
8800
|
+
"description": "BbTooltip activator also accepts a CSS selector string, looked up once the tooltip mounts and again when the prop changes (the component only; v-bb-tooltip always uses its host). Additive",
|
|
8801
|
+
"ruling": "owner 2026-10-26 (ATT-11 (b))",
|
|
8802
|
+
"guide": "BbTooltip.md § activator",
|
|
8803
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8804
|
+
},
|
|
8805
|
+
{
|
|
8806
|
+
"id": "f384",
|
|
8807
|
+
"kind": "behaviour",
|
|
8808
|
+
"summary": "BbRadioGroup / BbCheckboxGroup / BbSwitchGroup `tiles`: the native input covers the whole tile; links / buttons inside stay clickable; tile text is no longer selectable",
|
|
8809
|
+
"components": [
|
|
8810
|
+
"BbRadioGroup",
|
|
8811
|
+
"BbCheckboxGroup",
|
|
8812
|
+
"BbSwitchGroup"
|
|
8813
|
+
],
|
|
8814
|
+
"description": "BbRadioGroup / BbCheckboxGroup / BbSwitchGroup list-layout=\"tiles\": the native input covers the whole tile (padding included), links / buttons inside a tile stay clickable above it, tile text is not selectable, clicks on inner non-interactive elements reach the input; list rows unchanged (Q65.4)",
|
|
8815
|
+
"ruling": "owner 2026-10-26 (ATT-11 (d))",
|
|
8816
|
+
"guide": "v2-to-v3.md § 6 item 106 + the three group guides § tiles",
|
|
8817
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8818
|
+
},
|
|
8819
|
+
{
|
|
8820
|
+
"id": "f385",
|
|
8821
|
+
"kind": "behaviour",
|
|
8822
|
+
"summary": "BbDropdown mobile sheet: Escape on a drilled-in level goes back one level (focus on its opener row), closing only at the top; the back control also refocuses the opener",
|
|
8823
|
+
"components": [
|
|
8824
|
+
"BbDropdown",
|
|
8825
|
+
"BbDropdownButton"
|
|
8826
|
+
],
|
|
8827
|
+
"description": "BbDropdown adaptive sheet: Escape on a drilled-in level goes back one level (focus on its opener row), closing only at the top; the back control and ArrowLeft also refocus the opener row (was: the first row)",
|
|
8828
|
+
"ruling": "owner 2026-10-26 (ATT-07 follow-up)",
|
|
8829
|
+
"guide": "v2-to-v3.md § 6 item 107 + BbDropdown.md § Mobile",
|
|
8830
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8831
|
+
},
|
|
8832
|
+
{
|
|
8833
|
+
"id": "f386",
|
|
8834
|
+
"kind": "behaviour",
|
|
8835
|
+
"summary": "BbDropdown items no longer forward `data-*` / `aria-*` keys to the row; set them through `pt:item` (function form per row)",
|
|
8836
|
+
"components": [
|
|
8837
|
+
"BbDropdown",
|
|
8838
|
+
"BbDropdownButton"
|
|
8839
|
+
],
|
|
8840
|
+
"description": "BbDropdown items no longer forward data-* / aria-* keys from the item descriptor to the row; set them through pt:item (function form per row). A row's own label / description fold in an aria-label / aria-labelledby / aria-describedby set that way",
|
|
8841
|
+
"ruling": "owner 2026-10-26 (ATT-07k)",
|
|
8842
|
+
"guide": "v2-to-v3.md § 6 item 108 + BbDropdown.md",
|
|
8843
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8844
|
+
},
|
|
8845
|
+
{
|
|
8846
|
+
"id": "f387",
|
|
8847
|
+
"kind": "behaviour",
|
|
8848
|
+
"summary": "Icon slots `#icon` / `#prepend:icon` / `#append:icon` on BbButton, BbDropdownButton and BbBadge, scoped with the pt states; BbBadgeButton's slot gets `activeLink`",
|
|
8849
|
+
"components": [
|
|
8850
|
+
"BbButton",
|
|
8851
|
+
"BbDropdownButton",
|
|
8852
|
+
"BbBadge",
|
|
8853
|
+
"BbBadgeButton"
|
|
8854
|
+
],
|
|
8855
|
+
"description": "Icon slots #icon / #prepend:icon / #append:icon on BbButton, BbDropdownButton (main button) and BbBadge, scoped with the pt states (activeLink, exactActiveLink, pressed, loading, disabled), rendered inside the icon part (pt:icon, --icon-size, the spinner swap keep working); BbBadgeButton's default slot gets { activeLink, exactActiveLink }. Additive",
|
|
8856
|
+
"ruling": "owner 2026-10-26 (Q81.4)",
|
|
8857
|
+
"guide": "the three component guides",
|
|
8858
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8859
|
+
},
|
|
8860
|
+
{
|
|
8861
|
+
"id": "f388",
|
|
8862
|
+
"kind": "behaviour",
|
|
8863
|
+
"summary": "BbRadioGroup / BbCheckboxGroup `variant=\"pill\" | \"line\"` (registries `radioVariants` / `checkboxVariants`): BbTabs' strip look on a choice group, vertical too. Additive",
|
|
8864
|
+
"components": [
|
|
8865
|
+
"BbRadioGroup",
|
|
8866
|
+
"BbCheckboxGroup"
|
|
8867
|
+
],
|
|
8868
|
+
"description": "BbRadioGroup / BbCheckboxGroup variant (pill, line; registries radioVariants / checkboxVariants, class hooks bb-*-group__list--<name>): the group as a tab strip with its own tokens (BbTabs' values), a sliding indicator; checkbox pill = persistent pills (stretch / shorten / split, touching pills drawn as one shape); vertical with list-layout=\"vertical\"; pt:indicator, pt:<part>:<variant>. Additive",
|
|
8869
|
+
"ruling": "owner 2026-10-26 (Q76.11 (d))",
|
|
8870
|
+
"guide": "both group guides + component-picker",
|
|
8871
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8872
|
+
},
|
|
8873
|
+
{
|
|
8874
|
+
"id": "f389",
|
|
8875
|
+
"kind": "behaviour",
|
|
8876
|
+
"summary": "`v-bb-tooltip` object value: `activator` is no longer accepted (a type error); the directive always used its host element and ignored it",
|
|
8877
|
+
"components": [
|
|
8878
|
+
"BbTooltip"
|
|
8879
|
+
],
|
|
8880
|
+
"description": "v-bb-tooltip object value no longer types activator (the directive always used its host element; an activator was silently ignored). Types only: a TS app that passed one now fails to compile, remove it. BbTooltip's own activator prop is unchanged",
|
|
8881
|
+
"ruling": "owner 2026-10-26 (Q82.8 (b))",
|
|
8882
|
+
"guide": "v2-to-v3.md § 6 item 109 + migration/components/bb-tooltip.md",
|
|
8883
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8884
|
+
},
|
|
8885
|
+
{
|
|
8886
|
+
"id": "f379",
|
|
8887
|
+
"kind": "behaviour",
|
|
8888
|
+
"summary": "BbSelect/BbSelectPopover group-by: ungrouped rows (nullish group, known rows) are listed first, before every header; BbDropdown groups gain groupBy (path or getter, one v-model, one search, same rule)",
|
|
8889
|
+
"components": [
|
|
8890
|
+
"BbSelect",
|
|
8891
|
+
"BbSelectPopover",
|
|
8892
|
+
"BbDropdown",
|
|
8893
|
+
"BbDropdownButton"
|
|
8894
|
+
],
|
|
8895
|
+
"description": "BbSelect / BbSelectPopover group-by: rows whose group is null / undefined (and known rows) are listed FIRST, before every header (was: at the place of their first row, where they read as part of the group above). Silent order change; a row.team ?? 'Other' fallback kept only to separate them can go. BbDropdown groups gain the same groupBy (path or getter, one v-model, one search, headings skipped by keyboard, additive)",
|
|
8896
|
+
"ruling": "owner 2026-10-26 (ATT-15)",
|
|
8897
|
+
"guide": "v2-to-v3.md § 6 item 110 + BbSelect.md § Group related options + BbDropdown.md § Titled sections",
|
|
8898
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8899
|
+
},
|
|
8900
|
+
{
|
|
8901
|
+
"id": "f380",
|
|
8902
|
+
"kind": "behaviour",
|
|
8903
|
+
"summary": "BbDropdown: a change in any single-choice group closes the menu (submenus, multi-group menus, a clearable untick included); new `closeOnSelect` (true/false) overrides",
|
|
8904
|
+
"components": [
|
|
8905
|
+
"BbDropdown",
|
|
8906
|
+
"BbDropdownButton"
|
|
8907
|
+
],
|
|
8908
|
+
"description": "BbDropdown / BbDropdownButton: a change in any single-choice group closes the menu (in submenus and multi-group menus too, a clearable untick included); a multiple group stays open; new closeOnSelect?: boolean overrides (true = every selection closes, false = none). A pointer pick returns focus to the activator",
|
|
8909
|
+
"ruling": "owner 2026-10-26 (ATT-03)",
|
|
8910
|
+
"guide": "v2-to-v3.md § 6 item 112 + BbDropdown.md § Selectable groups",
|
|
8911
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8912
|
+
},
|
|
8913
|
+
{
|
|
8914
|
+
"id": "f381",
|
|
8915
|
+
"kind": "behaviour",
|
|
8916
|
+
"summary": "BbForm `invalid` also fires for server errors (`setErrors`, a new `field-errors` message) with `source: 'server'`, before focus; payload gains `unmatched` and `source`",
|
|
8917
|
+
"components": [
|
|
8918
|
+
"BbForm"
|
|
8919
|
+
],
|
|
8920
|
+
"description": "BbForm invalid also fires when server errors land (setErrors, a new field-errors value), payload { errors, values, unmatched, source: 'submit' | 'server' }, emitted before BbForm's own focus and even when BbForm doesn't focus; apps listening to @invalid now get server errors too",
|
|
8921
|
+
"ruling": "owner 2026-10-26 (ATT-13)",
|
|
8922
|
+
"guide": "v2-to-v3.md § 6 item 111 + BbForm.md § A failed submit",
|
|
8923
|
+
"firstReleasedIn": "3.0.0-beta.64"
|
|
8514
8924
|
}
|
|
8515
8925
|
]
|
|
8516
8926
|
}
|