bitboss-ui 3.0.0-beta.63 → 3.0.0-beta.65
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 +494 -6
- package/dist/ai/components.json +50 -48
- package/dist/ai/composables/useBbConfig.md +8 -1
- 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 +1183 -301
- 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 +211 -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 +149 -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 +151 -62
- package/dist/ai/helpers/inertia/messages.ts +33 -0
- package/dist/ai/helpers/inertia/useConfirmOnRouteLeave.ts +120 -20
- package/dist/ai/helpers/inertia/useHasChanged.ts +34 -16
- package/dist/ai/helpers/inertia/useLazyProp.ts +102 -36
- package/dist/ai/helpers/inertia/useLazyPropGetter.ts +3 -1
- package/dist/ai/helpers/inertia/usePaginatedResponseContext.ts +154 -34
- package/dist/ai/helpers/inertia/usePromiseForm.ts +121 -14
- package/dist/ai/helpers/inertia/useQuery.ts +133 -11
- package/dist/ai/helpers/inertia/useQueryObject.ts +74 -67
- package/dist/ai/helpers/inertia/useResourceContext.ts +60 -14
- package/dist/ai/helpers/inertia/useRouteQuery.ts +38 -27
- package/dist/ai/helpers/inertia/useScreenSizes.ts +9 -7
- package/dist/ai/helpers/inertia/useTableContext.ts +5 -2
- package/dist/ai/helpers/inertia/utils.ts +14 -0
- 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/approvals-inbox.md +1 -1
- package/dist/ai/recipes/inertia/inline-edit-workspace.md +1 -1
- package/dist/ai/recipes/inertia/layout-scaffold.md +19 -6
- package/dist/ai/recipes/inertia/ownership-atlas.md +1 -1
- package/dist/ai/recipes/inertia/records-workspace.md +50 -14
- package/dist/ai/recipes/inertia/upload-center.md +1 -1
- 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 +153 -34
- 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 +600 -577
- 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/useBbConfig.d.ts +1 -0
- package/dist/composables/useBbConfig.js +11 -7
- 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 +3467 -801
- 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 +5 -4
- 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/helpers-add.mjs +26 -2
- 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
|
@@ -1,4 +1,16 @@
|
|
|
1
|
-
import { PtDataMap } from './passthrough';
|
|
1
|
+
import { PtDataMap, PtVariantDataMap } from './passthrough';
|
|
2
|
+
import { AlertVariantRegistry } from './AlertVariant';
|
|
3
|
+
import { BadgeVariantRegistry } from './BadgeVariant';
|
|
4
|
+
import { ButtonVariantRegistry } from './ButtonVariant';
|
|
5
|
+
import { CheckboxVariantRegistry } from './CheckboxVariant';
|
|
6
|
+
import { ConfirmVariantRegistry } from './ConfirmVariant';
|
|
7
|
+
import { DropdownItemVariantRegistry } from './DropdownItemVariant';
|
|
8
|
+
import { IndicatorVariantRegistry } from './IndicatorVariant';
|
|
9
|
+
import { InputVariantRegistry } from './InputVariant';
|
|
10
|
+
import { RadioVariantRegistry } from './RadioVariant';
|
|
11
|
+
import { TabsVariantRegistry } from './TabsVariant';
|
|
12
|
+
import { ToastVariantRegistry } from './ToastVariant';
|
|
13
|
+
import { TooltipVariantRegistry } from './TooltipVariant';
|
|
2
14
|
/**
|
|
3
15
|
* A build-time `pt` map with every component name and every `part` /
|
|
4
16
|
* `part:state` key typed: what `definePt` and the plugin's `pt` /
|
|
@@ -7,41 +19,41 @@ import { PtDataMap } from './passthrough';
|
|
|
7
19
|
*/
|
|
8
20
|
export interface BbPtComponentMap {
|
|
9
21
|
BbAccordion?: PtDataMap<'root' | 'header' | 'title' | 'icon' | 'panel', 'open'>;
|
|
10
|
-
BbAlert?: PtDataMap<'root' | 'icon' | 'title' | 'text' | 'close', never>;
|
|
22
|
+
BbAlert?: PtDataMap<'root' | 'icon' | 'title' | 'text' | 'close', never> & PtVariantDataMap<'root' | 'icon' | 'title' | 'text' | 'close', keyof AlertVariantRegistry>;
|
|
11
23
|
BbAsterisk?: PtDataMap<'root', never>;
|
|
12
24
|
BbAvatar?: PtDataMap<'root' | 'icon', never>;
|
|
13
|
-
BbBadge?: PtDataMap<'root' | 'icon' | 'spinner' | 'text' | 'clear', 'loading'>;
|
|
14
|
-
BbBaseButton?: PtDataMap<'root', 'disabled'>;
|
|
25
|
+
BbBadge?: PtDataMap<'root' | 'icon' | 'spinner' | 'text' | 'clear', 'activeLink' | 'exactActiveLink' | 'loading'> & PtVariantDataMap<'root' | 'icon' | 'spinner' | 'text' | 'clear', keyof BadgeVariantRegistry>;
|
|
26
|
+
BbBaseButton?: PtDataMap<'root', 'activeLink' | 'exactActiveLink' | 'disabled'>;
|
|
15
27
|
BbBaseCheckboxIcon?: PtDataMap<'root', 'checked' | 'indeterminate' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible'>;
|
|
16
28
|
BbBaseRadioIcon?: PtDataMap<'root', 'checked' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible'>;
|
|
17
29
|
BbBaseSwitchIcon?: PtDataMap<'root', 'checked' | 'indeterminate' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible'>;
|
|
18
30
|
BbBreadcrumbs?: PtDataMap<'root' | 'item' | 'icon' | 'text', 'disabled' | 'active'>;
|
|
19
|
-
BbButton?: PtDataMap<'root' | 'icon' | 'spinner' | 'text', 'pressed' | 'disabled' | 'loading'>;
|
|
31
|
+
BbButton?: PtDataMap<'root' | 'icon' | 'spinner' | 'text', 'activeLink' | 'exactActiveLink' | 'pressed' | 'disabled' | 'loading'> & PtVariantDataMap<'root' | 'icon' | 'spinner' | 'text', keyof ButtonVariantRegistry>;
|
|
20
32
|
BbCalendar?: PtDataMap<'root' | 'header' | 'arrow' | 'month' | 'year' | 'cellColumnHeader' | 'day' | 'dayButton' | 'monthItem' | 'yearItem' | 'item', 'outside' | 'today' | 'inRange' | 'selected' | 'rangeStart' | 'rangeEnd' | 'disabled' | 'active' | 'highlighted'>;
|
|
21
33
|
BbCheckbox?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'icon', 'checked' | 'indeterminate' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible'>;
|
|
22
|
-
BbCheckboxGroup?: PtDataMap<'root' | 'legend' | 'description' | 'message' | 'hint' | 'list' | 'item' | 'icon' | 'label' | 'itemDescription', 'hasValue' | 'checked' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible' | 'loading'>;
|
|
34
|
+
BbCheckboxGroup?: PtDataMap<'root' | 'legend' | 'description' | 'message' | 'hint' | 'list' | 'item' | 'icon' | 'label' | 'itemDescription' | 'indicator', 'hasValue' | 'checked' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible' | 'loading'> & PtVariantDataMap<'root' | 'legend' | 'description' | 'message' | 'hint' | 'list' | 'item' | 'icon' | 'label' | 'itemDescription' | 'indicator', keyof CheckboxVariantRegistry>;
|
|
23
35
|
BbCollapsible?: PtDataMap<'root' | 'content', 'open'>;
|
|
24
|
-
BbColorInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'indicator' | 'panel' | 'sheet' | 'swatch', 'hasValue' | 'selected' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'loading'>;
|
|
36
|
+
BbColorInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'indicator' | 'panel' | 'sheet' | 'swatch', 'hasValue' | 'selected' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'loading'> & PtVariantDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear', keyof InputVariantRegistry>;
|
|
25
37
|
BbColorPalette?: PtDataMap<'root' | 'panel' | 'sheet' | 'swatch', 'selected' | 'open'>;
|
|
26
|
-
BbConfirm?: PtDataMap<'root' | 'sheet' | 'header' | 'title' | 'content' | 'text' | 'footer' | 'close' | 'action', 'open'>;
|
|
38
|
+
BbConfirm?: PtDataMap<'root' | 'sheet' | 'header' | 'title' | 'content' | 'text' | 'footer' | 'close' | 'action', 'open'> & PtVariantDataMap<'root' | 'sheet' | 'header' | 'title' | 'content' | 'text' | 'footer' | 'close' | 'action', keyof ConfirmVariantRegistry>;
|
|
27
39
|
BbDatePicker?: PtDataMap<'root' | 'panel' | 'sheet' | 'header' | 'arrow' | 'month' | 'year' | 'cellColumnHeader' | 'day' | 'dayButton' | 'monthItem' | 'yearItem' | 'item', 'outside' | 'today' | 'inRange' | 'selected' | 'rangeStart' | 'rangeEnd' | 'disabled' | 'active' | 'open' | 'highlighted'>;
|
|
28
|
-
BbDatePickerInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'activator' | 'panel' | 'sheet' | 'header' | 'arrow' | 'month' | 'year' | 'cellColumnHeader' | 'day' | 'dayButton' | 'monthItem' | 'yearItem' | 'item', 'hasValue' | 'outside' | 'today' | 'inRange' | 'selected' | 'rangeStart' | 'rangeEnd' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'active' | 'open' | 'highlighted' | 'loading'>;
|
|
40
|
+
BbDatePickerInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'activator' | 'panel' | 'sheet' | 'header' | 'arrow' | 'month' | 'year' | 'cellColumnHeader' | 'day' | 'dayButton' | 'monthItem' | 'yearItem' | 'item', 'hasValue' | 'outside' | 'today' | 'inRange' | 'selected' | 'rangeStart' | 'rangeEnd' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'active' | 'open' | 'highlighted' | 'loading'> & PtVariantDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'activator', keyof InputVariantRegistry>;
|
|
29
41
|
BbDialog?: PtDataMap<'root' | 'sheet' | 'header' | 'title' | 'description' | 'content' | 'footer' | 'close', 'open' | 'fullscreen'>;
|
|
30
|
-
BbDropdown?: PtDataMap<'root' | 'panel' | 'sheet' | 'header' | 'footer' | 'input' | 'list' | 'item' | 'itemText' | 'itemIcon' | 'itemDescription', 'selected' | 'disabled' | 'open'>;
|
|
31
|
-
BbDropdownButton?: PtDataMap<'root' | 'main' | 'toggle' | 'icon' | 'spinner' | 'text' | 'panel' | 'sheet' | 'header' | 'footer' | 'input' | 'item' | 'itemText' | 'itemIcon' | 'itemDescription', 'selected' | 'disabled' | 'open' | 'loading'>;
|
|
42
|
+
BbDropdown?: PtDataMap<'root' | 'panel' | 'sheet' | 'header' | 'footer' | 'input' | 'list' | 'item' | 'itemText' | 'itemIcon' | 'itemDescription', 'activeLink' | 'exactActiveLink' | 'selected' | 'disabled' | 'open'> & PtVariantDataMap<'item' | 'itemText' | 'itemIcon' | 'itemDescription', keyof DropdownItemVariantRegistry>;
|
|
43
|
+
BbDropdownButton?: PtDataMap<'root' | 'main' | 'toggle' | 'icon' | 'spinner' | 'text' | 'panel' | 'sheet' | 'header' | 'footer' | 'input' | 'item' | 'itemText' | 'itemIcon' | 'itemDescription', 'activeLink' | 'exactActiveLink' | 'selected' | 'disabled' | 'open' | 'loading'> & PtVariantDataMap<'root' | 'main' | 'toggle' | 'icon' | 'spinner' | 'text', keyof ButtonVariantRegistry> & PtVariantDataMap<'item' | 'itemText' | 'itemIcon' | 'itemDescription', keyof DropdownItemVariantRegistry>;
|
|
32
44
|
BbDropzone?: PtDataMap<'root' | 'content' | 'message', 'readonly' | 'disabled' | 'warnings' | 'errors' | 'active'>;
|
|
33
45
|
BbHoverCard?: PtDataMap<'root' | 'panel' | 'header' | 'content' | 'footer', 'open'>;
|
|
34
46
|
BbIcon?: PtDataMap<'root', never>;
|
|
35
|
-
BbIndicator?: PtDataMap<'root' | 'bubble', never>;
|
|
36
|
-
BbNumberInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear', 'hasValue' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'loading'>;
|
|
47
|
+
BbIndicator?: PtDataMap<'root' | 'bubble', never> & PtVariantDataMap<'root' | 'bubble', keyof IndicatorVariantRegistry>;
|
|
48
|
+
BbNumberInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear', 'hasValue' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'loading'> & PtVariantDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear', keyof InputVariantRegistry>;
|
|
37
49
|
BbOffCanvas?: PtDataMap<'root' | 'header' | 'title' | 'description' | 'content' | 'footer' | 'close', 'open' | 'fullscreen'>;
|
|
38
50
|
BbPagination?: PtDataMap<'root' | 'item' | 'arrow' | 'ellipsis' | 'icon', 'disabled' | 'active'>;
|
|
39
51
|
BbPopover?: PtDataMap<'root' | 'panel' | 'sheet' | 'header' | 'content' | 'footer', 'open'>;
|
|
40
52
|
BbProgress?: PtDataMap<'root' | 'bar', 'indeterminate'>;
|
|
41
53
|
BbRadio?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'icon', 'checked' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible'>;
|
|
42
|
-
BbRadioGroup?: PtDataMap<'root' | 'legend' | 'description' | 'message' | 'hint' | 'list' | 'item' | 'icon' | 'label' | 'itemDescription', 'hasValue' | 'checked' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible' | 'loading'>;
|
|
54
|
+
BbRadioGroup?: PtDataMap<'root' | 'legend' | 'description' | 'message' | 'hint' | 'list' | 'item' | 'icon' | 'label' | 'itemDescription' | 'indicator', 'hasValue' | 'checked' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible' | 'loading'> & PtVariantDataMap<'root' | 'legend' | 'description' | 'message' | 'hint' | 'list' | 'item' | 'icon' | 'label' | 'itemDescription' | 'indicator', keyof RadioVariantRegistry>;
|
|
43
55
|
BbRating?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'item', 'hasValue' | 'selected' | 'readonly' | 'disabled' | 'warnings' | 'errors'>;
|
|
44
|
-
BbSelect?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'activator' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'panel' | 'sheet' | 'header' | 'footer' | 'list' | 'option' | 'itemText' | 'itemIcon' | 'itemDescription' | 'badge' | 'comma', 'hasValue' | 'selected' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'open' | 'loading'>;
|
|
56
|
+
BbSelect?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'activator' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'panel' | 'sheet' | 'header' | 'footer' | 'list' | 'option' | 'itemText' | 'itemIcon' | 'itemDescription' | 'badge' | 'comma', 'hasValue' | 'selected' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'open' | 'loading'> & PtVariantDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'activator' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear', keyof InputVariantRegistry>;
|
|
45
57
|
BbSelectPopover?: PtDataMap<'root' | 'panel' | 'sheet' | 'input' | 'clear' | 'list' | 'option' | 'itemText' | 'itemIcon' | 'itemDescription' | 'header' | 'footer', 'selected' | 'disabled' | 'open'>;
|
|
46
58
|
BbSlider?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'track' | 'bar' | 'ticks' | 'tick' | 'thumb', 'inRange' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'active'>;
|
|
47
59
|
BbSmoothHeight?: PtDataMap<'root', never>;
|
|
@@ -49,15 +61,15 @@ export interface BbPtComponentMap {
|
|
|
49
61
|
BbSwitch?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'icon', 'checked' | 'indeterminate' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible'>;
|
|
50
62
|
BbSwitchGroup?: PtDataMap<'root' | 'legend' | 'description' | 'message' | 'hint' | 'list' | 'item' | 'icon' | 'label' | 'itemDescription', 'hasValue' | 'checked' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'focused' | 'focusVisible' | 'loading'>;
|
|
51
63
|
BbTable?: PtDataMap<'root' | 'caption' | 'table' | 'head' | 'headerRow' | 'cellColumnHeader' | 'sortIcon' | 'body' | 'row' | 'cell' | 'expand' | 'firstRow' | 'lastRow' | 'selectIcon' | 'dragIcon' | 'dragHandle' | 'foot', 'value' | 'placeholder' | 'empty' | 'sorted' | 'sortedDesc' | 'selected' | 'indeterminate' | 'disabled' | 'expanded' | 'highlighted' | 'loading'>;
|
|
52
|
-
BbTabs?: PtDataMap<'root' | 'wrapper' | 'list' | 'item' | 'indicator' | 'panels' | 'panel', 'disabled' | 'active'>;
|
|
53
|
-
BbTabsList?: PtDataMap<'root' | 'list' | 'item' | 'indicator', 'disabled' | 'active'>;
|
|
64
|
+
BbTabs?: PtDataMap<'root' | 'wrapper' | 'list' | 'item' | 'indicator' | 'panels' | 'panel', 'disabled' | 'active'> & PtVariantDataMap<'wrapper' | 'list' | 'item' | 'indicator', keyof TabsVariantRegistry>;
|
|
65
|
+
BbTabsList?: PtDataMap<'root' | 'list' | 'item' | 'indicator', 'disabled' | 'active'> & PtVariantDataMap<'root' | 'list' | 'item' | 'indicator', keyof TabsVariantRegistry>;
|
|
54
66
|
BbTabsPanels?: PtDataMap<'root' | 'panel', 'disabled' | 'active'>;
|
|
55
|
-
BbTag?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'badge' | 'comma', 'hasValue' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'highlighted' | 'loading'>;
|
|
56
|
-
BbTextInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'counter', 'hasValue' | 'nearLimit' | 'atLimit' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'loading'>;
|
|
57
|
-
BbTextarea?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'counter', 'hasValue' | 'nearLimit' | 'atLimit' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'loading'>;
|
|
67
|
+
BbTag?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'badge' | 'comma', 'hasValue' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'highlighted' | 'loading'> & PtVariantDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear', keyof InputVariantRegistry>;
|
|
68
|
+
BbTextInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'counter', 'hasValue' | 'nearLimit' | 'atLimit' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'loading'> & PtVariantDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear', keyof InputVariantRegistry>;
|
|
69
|
+
BbTextarea?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'counter', 'hasValue' | 'nearLimit' | 'atLimit' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'loading'> & PtVariantDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear', keyof InputVariantRegistry>;
|
|
58
70
|
BbTimePicker?: PtDataMap<'root' | 'panel' | 'sheet' | 'header' | 'cellColumnHeader' | 'item', 'selected' | 'disabled' | 'open'>;
|
|
59
|
-
BbTimePickerInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'activator' | 'panel' | 'sheet' | 'header' | 'cellColumnHeader' | 'item', 'hasValue' | 'selected' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'open' | 'loading'>;
|
|
60
|
-
BbToast?: PtDataMap<'root' | 'panel' | 'icon' | 'content' | 'title' | 'text' | 'footer' | 'action' | 'close', 'loading'>;
|
|
61
|
-
BbTooltip?: PtDataMap<'root' | 'panel', 'open'>;
|
|
71
|
+
BbTimePickerInput?: PtDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'activator' | 'panel' | 'sheet' | 'header' | 'cellColumnHeader' | 'item', 'hasValue' | 'selected' | 'readonly' | 'disabled' | 'warnings' | 'errors' | 'open' | 'loading'> & PtVariantDataMap<'root' | 'label' | 'description' | 'message' | 'hint' | 'box' | 'input' | 'icon' | 'spinner' | 'prefix' | 'suffix' | 'clear' | 'activator', keyof InputVariantRegistry>;
|
|
72
|
+
BbToast?: PtDataMap<'root' | 'panel' | 'icon' | 'content' | 'title' | 'text' | 'footer' | 'action' | 'close', 'loading'> & PtVariantDataMap<'panel' | 'icon' | 'content' | 'title' | 'text' | 'footer' | 'action' | 'close', keyof ToastVariantRegistry>;
|
|
73
|
+
BbTooltip?: PtDataMap<'root' | 'panel', 'open'> & PtVariantDataMap<'root' | 'panel', keyof TooltipVariantRegistry>;
|
|
62
74
|
BbTree?: PtDataMap<'root' | 'item', 'expanded'>;
|
|
63
75
|
}
|
|
@@ -1 +1,20 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* What a floating surface can hang on: an HTML element, or an svg one (a raw
|
|
3
|
+
* `<svg>`, or a component whose root is one, like BbIcon — Q76.15). Spelled
|
|
4
|
+
* as the members both share rather than `HTMLElement | SVGElement`, whose
|
|
5
|
+
* overloaded `addEventListener` no typed handler can satisfy.
|
|
6
|
+
*/
|
|
7
|
+
export interface DomHost extends Element, HTMLOrSVGElement, ElementCSSInlineStyle {
|
|
8
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: DomHost, ev: HTMLElementEventMap[K]) => unknown, options?: boolean | AddEventListenerOptions): void;
|
|
9
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
10
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: DomHost, ev: HTMLElementEventMap[K]) => unknown, options?: boolean | EventListenerOptions): void;
|
|
11
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* A host as the element it really is, for APIs typed on the DOM classes
|
|
15
|
+
* (VueUse's observers); every DomHost is one of the two.
|
|
16
|
+
*/
|
|
17
|
+
export declare const domElement: (el: DomHost | null | undefined) => HTMLElement | SVGElement | undefined;
|
|
18
|
+
export declare function extractDomContainer(target: unknown): DomHost | null;
|
|
19
|
+
/** {@link extractDomContainer} for a library-owned container that is always HTML (a panel, a row, a button root). */
|
|
20
|
+
export declare const extractHtmlContainer: (target: unknown) => HTMLElement | null;
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
//#region src/utilities/functions/extractDomContainer.ts
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
var e = (e) => e ?? void 0, t = (e) => e instanceof HTMLElement || e instanceof SVGElement;
|
|
3
|
+
function n(e) {
|
|
4
|
+
return e ? t(e) ? e : typeof e == "object" && "$el" in e && t(e.$el) ? e.$el : typeof e == "object" && "el" in e && t(e.el) ? e.el : null : null;
|
|
4
5
|
}
|
|
6
|
+
var r = (e) => {
|
|
7
|
+
let t = n(e);
|
|
8
|
+
return t instanceof HTMLElement ? t : null;
|
|
9
|
+
};
|
|
5
10
|
//#endregion
|
|
6
|
-
export { e as extractDomContainer };
|
|
11
|
+
export { e as domElement, n as extractDomContainer, r as extractHtmlContainer };
|
|
@@ -7,3 +7,9 @@ export declare const focusVisibly: (el: HTMLElement | null | undefined, options?
|
|
|
7
7
|
* on the focused element changes nothing.
|
|
8
8
|
*/
|
|
9
9
|
export declare const focusQuietly: (el: HTMLElement | null | undefined, options?: FocusOptions) => void;
|
|
10
|
+
/**
|
|
11
|
+
* The first match of `selector` inside `root` that a script `focus()` can
|
|
12
|
+
* land on: an HTMLElement that is not disabled. A focusable `<svg>` (or a
|
|
13
|
+
* disabled button) first in line is passed over, not a dead end (Q76.16).
|
|
14
|
+
*/
|
|
15
|
+
export declare const firstFocusableMatch: (root: ParentNode | null | undefined, selector: string) => HTMLElement | null;
|
|
@@ -7,6 +7,9 @@ var e = (e, t) => e?.focus({
|
|
|
7
7
|
...t,
|
|
8
8
|
focusVisible: !1
|
|
9
9
|
}));
|
|
10
|
+
}, n = (e, t) => {
|
|
11
|
+
for (let n of e?.querySelectorAll(t) ?? []) if (n instanceof HTMLElement && !n.matches(":disabled")) return n;
|
|
12
|
+
return null;
|
|
10
13
|
};
|
|
11
14
|
//#endregion
|
|
12
|
-
export { t as focusQuietly, e as focusVisibly };
|
|
15
|
+
export { n as firstFocusableMatch, t as focusQuietly, e as focusVisibly };
|
|
@@ -1,2 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The app's own `@theme` names per tailwind-merge theme key (`text` for
|
|
3
|
+
* `--text-*` font sizes, `color` for `--color-*`, …), read by the build
|
|
4
|
+
* plugin from the app's CSS.
|
|
5
|
+
*/
|
|
6
|
+
export type PassthroughDeduperTheme = Partial<Record<string, string[]>>;
|
|
7
|
+
/**
|
|
8
|
+
* A deduper that knows the app's theme (Q76.7 e): each of the app's token
|
|
9
|
+
* classes resolves to the property its `@theme` namespace sets, so
|
|
10
|
+
* `text-h2 text-ink` (a font size and a colour) keeps both, while two font
|
|
11
|
+
* sizes or two colours still dedupe. Without the names, tailwind-merge reads
|
|
12
|
+
* an unknown `text-*` as a colour.
|
|
13
|
+
*/
|
|
14
|
+
export declare const createPassthroughDeduper: (theme?: PassthroughDeduperTheme) => ((className: string) => string);
|
|
1
15
|
declare const passthroughDeduper: (className: string) => string;
|
|
2
16
|
export default passthroughDeduper;
|
|
@@ -9,7 +9,7 @@ function r() {
|
|
|
9
9
|
if (process.env.NODE_ENV === "production" || n || typeof window > "u") return;
|
|
10
10
|
n = !0;
|
|
11
11
|
let r = () => {
|
|
12
|
-
let n = t("3.0.0-beta.
|
|
12
|
+
let n = t("3.0.0-beta.65", getComputedStyle(document.documentElement).getPropertyValue(e));
|
|
13
13
|
n && console.warn(n);
|
|
14
14
|
};
|
|
15
15
|
document.readyState === "complete" ? setTimeout(r, 0) : window.addEventListener("load", r, { once: !0 });
|
package/dist/vite-plugin.d.ts
CHANGED
|
@@ -31,6 +31,14 @@ export declare function expandIconWhitelist(whitelist: readonly string[], provid
|
|
|
31
31
|
* silent. Best effort: an unwritable cache only loses the hint.
|
|
32
32
|
*/
|
|
33
33
|
export declare function upgradeHint(root: string, version: string): string | null;
|
|
34
|
+
/**
|
|
35
|
+
* Q76.7: an app's own variant name must not be a passthrough state of a
|
|
36
|
+
* component it styles: `pt:root:loading` could not say whether it means the
|
|
37
|
+
* `loading` state or a `loading` variant. Returns an error message, or `null`.
|
|
38
|
+
* The component's states are its declared `pt:<part>:<word>` words that are
|
|
39
|
+
* not built-in variant names.
|
|
40
|
+
*/
|
|
41
|
+
export declare function validateVariantNames(options: Partial<Record<string, unknown>>, path?: string | null): string | null;
|
|
34
42
|
/**
|
|
35
43
|
* Build-time check of the global `pt` map's component names and keys against
|
|
36
44
|
* the manifest. Returns an error message, or `null` when every key names a
|
|
@@ -40,7 +48,9 @@ export declare function upgradeHint(root: string, version: string): string | nul
|
|
|
40
48
|
*/
|
|
41
49
|
export declare function validatePtGlobalMapNames(pt: Record<string, Record<string, unknown>> | undefined, path?: string | null,
|
|
42
50
|
/** Where the map sits in the plugin options: `pt`, `ptScopes.webapp`. */
|
|
43
|
-
label?: string
|
|
51
|
+
label?: string,
|
|
52
|
+
/** The plugin options, for the app's own variant names (Q76.7). */
|
|
53
|
+
options?: Partial<Record<string, unknown>>): string | null;
|
|
44
54
|
export { BUILTIN_LOCALE_KEYS };
|
|
45
55
|
/**
|
|
46
56
|
* Resolves the built-in locales that actually ship in the consumer bundle,
|
|
@@ -99,7 +109,30 @@ export declare function generateDayjsLocalesModule(found: ReadonlyArray<{
|
|
|
99
109
|
* A consumer path is resolved against the project root; a bare specifier is
|
|
100
110
|
* left for Vite to resolve like any import.
|
|
101
111
|
*/
|
|
102
|
-
export declare function generatePassthroughDeduperModule(option: false | string | undefined, root: string, libraryDir?: string): string;
|
|
112
|
+
export declare function generatePassthroughDeduperModule(option: false | string | undefined, root: string, libraryDir?: string, themeNames?: ThemeNames): string;
|
|
113
|
+
/** Theme names per tailwind-merge theme key: `{ text: ['h2'], color: ['ink'] }`. */
|
|
114
|
+
type ThemeNames = Record<string, string[]>;
|
|
115
|
+
/**
|
|
116
|
+
* The `@theme` names one CSS file declares (`--text-h2` → `text: ['h2']`,
|
|
117
|
+
* `--color-ink` → `color: ['ink']`). A sub-property (`--text-h2--line-height`)
|
|
118
|
+
* and a reset (`--color-*`) are not names.
|
|
119
|
+
*/
|
|
120
|
+
export declare function themeNamesInCss(css: string): ThemeNames;
|
|
121
|
+
/** Several files' names as one, sorted (a stable module source). */
|
|
122
|
+
export declare function mergeThemeNames(all: Iterable<ThemeNames>): ThemeNames;
|
|
123
|
+
/** Is `path` an app CSS file the theme scan reads (under `root`, not skipped)? */
|
|
124
|
+
export declare function isAppThemeCss(root: string, path: string): boolean;
|
|
125
|
+
/**
|
|
126
|
+
* The app's own CSS files that declare `@theme` names, each with its names,
|
|
127
|
+
* read from the project's folders only, a few levels deep.
|
|
128
|
+
*/
|
|
129
|
+
export declare function scanThemeFiles(root: string): Map<string, ThemeNames>;
|
|
130
|
+
/**
|
|
131
|
+
* The app's own Tailwind `@theme` names per tailwind-merge theme key, from
|
|
132
|
+
* every CSS file of the project (see `scanThemeFiles`). In dev the plugin
|
|
133
|
+
* keeps them live: a CSS edit that changes them reloads the deduper module.
|
|
134
|
+
*/
|
|
135
|
+
export declare function collectThemeNames(root: string): ThemeNames;
|
|
103
136
|
/** Build-time check of `passthroughDeduper`; an error message or `null`. */
|
|
104
137
|
export declare function validatePassthroughDeduper(value: unknown): string | null;
|
|
105
138
|
/**
|
|
@@ -204,10 +237,10 @@ export interface BitbossUiOptions extends Partial<Omit<EditableConfig, 'formCont
|
|
|
204
237
|
/**
|
|
205
238
|
* When `true`, the dev server registers the bitboss-ui MCP server in each
|
|
206
239
|
* project-scoped agent-harness config on boot (`.mcp.json` for Claude Code,
|
|
207
|
-
* `.cursor/mcp.json`, `.vscode/mcp.json`), so agents
|
|
208
|
-
* knowledge base with no manual setup. The write
|
|
209
|
-
* idempotent (it leaves any other servers alone and only
|
|
210
|
-
* actually changes a file).
|
|
240
|
+
* `.cursor/mcp.json`, `.vscode/mcp.json`, `.zed/settings.json`), so agents
|
|
241
|
+
* can query the component knowledge base with no manual setup. The write
|
|
242
|
+
* is merge-safe and idempotent (it leaves any other servers alone and only
|
|
243
|
+
* logs when it actually changes a file).
|
|
211
244
|
*
|
|
212
245
|
* The same project-scoped registration `npx bitboss-ui ai-init` performs
|
|
213
246
|
* (which also installs the server's optional peers; a dev-server boot never
|
|
@@ -332,7 +365,10 @@ export interface BitbossUiOptions extends Partial<Omit<EditableConfig, 'formCont
|
|
|
332
365
|
* `pt:icon="text-slate-400"` + `pt:icon:loading="text-red-500"` keeps only
|
|
333
366
|
* `text-red-500` while loading.
|
|
334
367
|
*
|
|
335
|
-
* - unset — the bundled `tailwind-merge` v3 (Tailwind v4)
|
|
368
|
+
* - unset — the bundled `tailwind-merge` v3 (Tailwind v4), taught the
|
|
369
|
+
* `@theme` token names in the project's own CSS (live in dev), so each
|
|
370
|
+
* dedupes by the property it sets (`text-h2` a size, `text-ink` a
|
|
371
|
+
* colour);
|
|
336
372
|
* - `false` — off: classes append, and stylesheet order decides conflicts;
|
|
337
373
|
* - a module path (relative to the project root) or package name whose
|
|
338
374
|
* default export is `(className: string) => string` — pure and
|
|
@@ -477,6 +513,27 @@ export interface BitbossUiOptions extends Partial<Omit<EditableConfig, 'formCont
|
|
|
477
513
|
* @defaultValue `['pill', 'line', 'none']`
|
|
478
514
|
*/
|
|
479
515
|
tabsVariants?: string[];
|
|
516
|
+
/**
|
|
517
|
+
* List of radio-group variants to register as a typed union — the
|
|
518
|
+
* `variant` prop of `BbRadioGroup`, its tab-strip looks (Q76.11 d).
|
|
519
|
+
* Appends to the default set when provided. A custom name is styled
|
|
520
|
+
* through its class hook `bb-radio-group__list--<name>` by setting the
|
|
521
|
+
* strip's tokens (`--list-bg`, `--indicator-bg`, `--indicator-h`,
|
|
522
|
+
* `--active-fg`, …); the shipped variants are the same token presets.
|
|
523
|
+
*
|
|
524
|
+
* @defaultValue `['pill', 'line']`
|
|
525
|
+
*/
|
|
526
|
+
radioVariants?: string[];
|
|
527
|
+
/**
|
|
528
|
+
* List of checkbox-group variants to register as a typed union — the
|
|
529
|
+
* `variant` prop of `BbCheckboxGroup`, its tab-strip looks (Q76.11 d).
|
|
530
|
+
* Appends to the default set when provided. A custom name is styled
|
|
531
|
+
* through its class hook `bb-checkbox-group__list--<name>` by setting the
|
|
532
|
+
* strip's tokens; a custom look draws pills per run, as `pill` does.
|
|
533
|
+
*
|
|
534
|
+
* @defaultValue `['pill', 'line']`
|
|
535
|
+
*/
|
|
536
|
+
checkboxVariants?: string[];
|
|
480
537
|
}
|
|
481
538
|
export declare const REQUIRED_OPTIMIZE_DEPS_INCLUDE: string[];
|
|
482
539
|
export declare const REQUIRED_OPTIMIZE_DEPS_EXCLUDE: string[];
|