bitboss-ui 3.0.0-beta.41 → 3.0.0-beta.42
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 +53 -5
- package/bin/bitboss-ui-mcp.mjs +999 -64
- package/bin/bitboss-ui.mjs +15 -2
- package/dist/ai/BbAccordion.md +3 -3
- package/dist/ai/BbAlert.md +3 -3
- package/dist/ai/BbAsterisk.md +11 -7
- package/dist/ai/BbAvatar.md +1 -1
- package/dist/ai/BbBadge.md +6 -3
- package/dist/ai/BbBadgeButton.md +3 -0
- package/dist/ai/BbBaseButton.md +1 -1
- package/dist/ai/BbBreadcrumbs.md +21 -15
- package/dist/ai/BbButton.md +2 -2
- package/dist/ai/BbCalendar.md +11 -3
- package/dist/ai/BbCheckbox.md +10 -2
- package/dist/ai/BbCheckboxGroup.md +1 -1
- package/dist/ai/BbColorInput.md +3 -2
- package/dist/ai/BbColorPalette.md +12 -6
- package/dist/ai/BbConfirm.md +1 -1
- package/dist/ai/BbDatePicker.md +3 -3
- package/dist/ai/BbDatePickerInput.md +12 -6
- package/dist/ai/BbDialog.md +1 -1
- package/dist/ai/BbDropdown.md +11 -7
- package/dist/ai/BbDropdownButton.md +8 -7
- package/dist/ai/BbForm.md +59 -37
- package/dist/ai/BbIcon.md +3 -1
- package/dist/ai/BbNumberInput.md +9 -6
- package/dist/ai/BbOffCanvas.md +2 -2
- package/dist/ai/BbPagination.md +4 -1
- package/dist/ai/BbPopover.md +3 -2
- package/dist/ai/BbRadio.md +2 -2
- package/dist/ai/BbRadioGroup.md +1 -1
- package/dist/ai/BbRating.md +11 -8
- package/dist/ai/BbSelect.md +29 -16
- package/dist/ai/BbSelectPopover.md +11 -5
- package/dist/ai/BbSlider.md +3 -3
- package/dist/ai/BbSmoothHeight.md +3 -2
- package/dist/ai/BbSwitch.md +9 -3
- package/dist/ai/BbSwitchGroup.md +1 -1
- package/dist/ai/BbTable.md +143 -57
- package/dist/ai/BbTabs.md +8 -6
- package/dist/ai/BbTabsList.md +2 -2
- package/dist/ai/BbTabsPanels.md +1 -1
- package/dist/ai/BbTabsRoot.md +1 -1
- package/dist/ai/BbTag.md +13 -7
- package/dist/ai/BbTextInput.md +6 -2
- package/dist/ai/BbTextarea.md +11 -7
- package/dist/ai/BbTimePicker.md +6 -3
- package/dist/ai/BbTimePickerInput.md +7 -3
- package/dist/ai/BbToast.md +1 -1
- package/dist/ai/BbTooltip.md +1 -1
- package/dist/ai/ChipsBox.md +5 -2
- package/dist/ai/CommonField.md +1 -0
- package/dist/ai/CommonFieldInput.md +2 -1
- package/dist/ai/CommonTimeSelector.md +1 -1
- package/dist/ai/FlatListBox.md +2 -2
- package/dist/ai/GroupedListBox.md +2 -2
- package/dist/ai/ListBox.md +2 -2
- package/dist/ai/changelog.json +1059 -8
- package/dist/ai/components.json +546 -66
- package/dist/ai/composables/useBbFormField.md +14 -3
- package/dist/ai/design-tokens.json +22 -15
- package/dist/ai/design-tokens.manifest.yaml +5 -5
- package/dist/ai/guides/agent-contract.md +10 -0
- package/dist/ai/guides/ai-router.md +20 -20
- package/dist/ai/guides/design-language.md +13 -10
- package/dist/ai/guides/design-tokens.md +44 -34
- package/dist/ai/guides/icons-policy.md +3 -5
- package/dist/ai/guides/installation-and-plugin-setup.md +9 -5
- package/dist/ai/guides/migration/components/bb-breadcrumbs.md +1 -0
- package/dist/ai/guides/migration/components/bb-slider.md +5 -0
- package/dist/ai/guides/migration/v2-to-v3.md +40 -17
- package/dist/ai/guides/migration/v3-beta-tooling.md +35 -5
- package/dist/ai/guides/passthrough.md +17 -7
- package/dist/ai/guides/preset-components.md +6 -3
- package/dist/ai/guides/ssr-prefill.md +27 -4
- package/dist/ai/guides/validated-forms.md +21 -16
- package/dist/ai/index.md +1 -1
- package/dist/ai/recipes/inertia/inline-edit-workspace.md +1 -1
- package/dist/ai/recipes/inertia/settings-workspace.md +15 -9
- package/dist/ai/recipes/nuxt/inline-edit-workspace.md +1 -1
- package/dist/ai/recipes/nuxt/settings-workspace.md +15 -9
- package/dist/ai/recipes/vue/inline-edit-workspace.md +1 -1
- package/dist/ai/recipes/vue/settings-workspace.md +15 -9
- package/dist/ai/source/BbBadge.md +34 -0
- package/dist/ai/source/BbBadgeButton.md +34 -0
- package/dist/ai/source/BbBaseCheckboxIcon.md +3 -1
- package/dist/ai/source/BbBaseRadioIcon.md +2 -1
- package/dist/ai/source/BbBaseSwitchIcon.md +7 -5
- package/dist/ai/source/BbBreadcrumbs.md +44 -17
- package/dist/ai/source/BbButton.md +15 -0
- package/dist/ai/source/BbCalendar.md +117 -6
- package/dist/ai/source/BbCheckbox.md +24 -5
- package/dist/ai/source/BbCheckboxGroup.md +9 -1
- package/dist/ai/source/BbColorInput.md +30 -0
- package/dist/ai/source/BbColorPalette.md +54 -7
- package/dist/ai/source/BbDatePickerInput.md +91 -29
- package/dist/ai/source/BbDropdownButton.md +29 -1
- package/dist/ai/source/BbForm.md +25 -23
- package/dist/ai/source/BbIcon.md +5 -2
- package/dist/ai/source/BbNumberInput.md +25 -8
- package/dist/ai/source/BbPagination.md +18 -0
- package/dist/ai/source/BbPopover.md +12 -0
- package/dist/ai/source/BbRadio.md +2 -2
- package/dist/ai/source/BbRadioGroup.md +11 -1
- package/dist/ai/source/BbRating.md +11 -5
- package/dist/ai/source/BbSelect.md +17 -5
- package/dist/ai/source/BbSelectPopover.md +72 -2
- package/dist/ai/source/BbSlider.md +10 -9
- package/dist/ai/source/BbSmoothHeight.md +6 -2
- package/dist/ai/source/BbSwitch.md +22 -3
- package/dist/ai/source/BbSwitchGroup.md +9 -1
- package/dist/ai/source/BbTable.md +181 -2
- package/dist/ai/source/BbTag.md +73 -29
- package/dist/ai/source/BbTextInput.md +32 -1
- package/dist/ai/source/BbTextarea.md +26 -40
- package/dist/ai/source/BbTimePickerInput.md +40 -2
- package/dist/ai/source/BbTree.md +15 -3
- package/dist/ai/source/CommonField.md +29 -0
- package/dist/ai/source/CommonFieldInput.md +26 -5
- package/dist/ai/source/CommonTimeSelector.md +10 -0
- package/dist/ai/source/FlatListBox.md +4 -0
- package/dist/ai/source/GroupedListBox.md +4 -0
- package/dist/ai/source/ListBox.md +4 -0
- package/dist/components/BbBreadcrumbs/BbBreadcrumbs.vue_vue_type_script_setup_true_lang.js +109 -107
- package/dist/components/BbBreadcrumbs/types.d.ts +1 -1
- package/dist/components/BbCalendar/BbCalendar.vue_vue_type_script_setup_true_lang.js +151 -149
- package/dist/components/BbCalendar/CalendarYearPanel.vue_vue_type_script_setup_true_lang.js +51 -48
- package/dist/components/BbCalendar/types.d.ts +5 -1
- package/dist/components/BbCheckbox/BbCheckbox.vue_vue_type_script_setup_true_lang.js +61 -57
- package/dist/components/BbCheckbox/types.d.ts +2 -2
- package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue_vue_type_script_setup_true_lang.js +43 -38
- package/dist/components/BbColorInput/BbColorInput.vue_vue_type_script_setup_true_lang.js +53 -51
- package/dist/components/BbColorPalette/BbColorPalette.vue_vue_type_script_setup_true_lang.js +257 -242
- package/dist/components/BbColorPalette/types.d.ts +10 -3
- package/dist/components/BbDatePickerInput/BbDatePickerInput.vue_vue_type_script_setup_true_lang.js +320 -305
- package/dist/components/BbDatePickerInput/types.d.ts +3 -3
- package/dist/components/BbDropdownButton/BbDropdownButton.vue_vue_type_script_setup_true_lang.js +64 -57
- package/dist/components/BbForm/BbForm.vue.d.ts +14 -12
- package/dist/components/BbForm/BbForm.vue_vue_type_script_setup_true_lang.js +139 -142
- package/dist/components/BbForm/BbFormCustomField.js +28 -28
- package/dist/components/BbForm/bindFormField.d.ts +27 -0
- package/dist/components/BbForm/bindFormField.js +8 -7
- package/dist/components/BbForm/formFields.d.ts +1 -1
- package/dist/components/BbIcon/BbIcon.vue_vue_type_script_setup_true_lang.js +24 -23
- package/dist/components/BbNumberInput/BbNumberInput.vue_vue_type_script_setup_true_lang.js +72 -67
- package/dist/components/BbNumberInput/types.d.ts +3 -2
- package/dist/components/BbRadio/types.d.ts +2 -2
- package/dist/components/BbRadioGroup/BbRadioGroup.vue_vue_type_script_setup_true_lang.js +36 -29
- package/dist/components/BbRating/BbRating.vue_vue_type_script_setup_true_lang.js +24 -22
- package/dist/components/BbSelect/BbSelect.vue_vue_type_script_setup_true_lang.js +108 -104
- package/dist/components/BbSelect/types.d.ts +9 -3
- package/dist/components/BbSelectPopover/BbSelectPopover.vue_vue_type_script_setup_true_lang.js +376 -357
- package/dist/components/BbSelectPopover/sheetChipAttrs.d.ts +18 -0
- package/dist/components/BbSelectPopover/sheetChipAttrs.js +5 -0
- package/dist/components/BbSelectPopover/types.d.ts +3 -1
- package/dist/components/BbSlider/BbSlider.vue_vue_type_script_setup_true_lang.js +99 -102
- package/dist/components/BbSlider/types.d.ts +0 -4
- package/dist/components/BbSwitch/BbSwitch.vue_vue_type_script_setup_true_lang.js +71 -67
- package/dist/components/BbSwitchGroup/BbSwitchGroup.vue_vue_type_script_setup_true_lang.js +75 -70
- package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +803 -765
- package/dist/components/BbTag/BbTag.vue_vue_type_script_setup_true_lang.js +138 -124
- package/dist/components/BbTag/types.d.ts +2 -1
- package/dist/components/BbTextInput/BbTextInput.vue_vue_type_script_setup_true_lang.js +88 -80
- package/dist/components/BbTextarea/BbTextarea.vue_vue_type_script_setup_true_lang.js +70 -64
- package/dist/components/BbTimePickerInput/BbTimePickerInput.vue_vue_type_script_setup_true_lang.js +216 -203
- package/dist/components/BbTree/BbTree.vue_vue_type_script_setup_true_lang.js +2 -4
- package/dist/components/CommonField/CommonField.vue_vue_type_script_setup_true_lang.js +92 -86
- package/dist/components/CommonField/types.d.ts +7 -0
- package/dist/components/CommonTimeSelector/CommonTimeSelector.vue_vue_type_script_setup_true_lang.js +4 -0
- package/dist/components/FlatListBox/types.d.ts +4 -0
- package/dist/components/GroupedListBox/types.d.ts +4 -0
- package/dist/components/ListBox/types.d.ts +4 -0
- package/dist/composables/ssrMarker.d.ts +15 -0
- package/dist/composables/ssrMarker.js +19 -0
- package/dist/composables/useBaseOptions.js +7 -1
- package/dist/composables/useBbFormField.d.ts +13 -2
- package/dist/composables/useBbFormField.js +40 -24
- package/dist/composables/useFormBinding.d.ts +11 -3
- package/dist/composables/useFormBinding.js +31 -21
- package/dist/composables/useItemsGetter.d.ts +28 -0
- package/dist/composables/useItemsGetter.js +45 -33
- package/dist/composables/usePrefill.js +9 -8
- package/dist/composables/useServerPrefetch.d.ts +28 -0
- package/dist/composables/useServerPrefetch.js +9 -0
- package/dist/composables/useSsrState.d.ts +9 -1
- package/dist/deprecation/ai-deprecations.json.d.ts +35 -0
- package/dist/deprecation/ai-deprecations.json.js +1 -1
- package/dist/deprecation/removedProps.js +2 -2
- package/dist/llms-full.txt +803 -425
- package/dist/llms-medium.txt +53 -36
- package/dist/styles.css +2 -2
- package/dist/utilities/functions/toggleInput.d.ts +16 -0
- package/dist/utilities/functions/toggleInput.js +7 -2
- package/dist/utilities/functions/warnRemovedAttrs.d.ts +1 -1
- package/dist/utilities/functions/warnRemovedAttrs.js +11 -1
- package/dist/utilities/misc/ssrStateInjectionKey.d.ts +8 -3
- package/dist/utilities/misc/ssrValue.d.ts +20 -0
- package/dist/utilities/misc/ssrValue.js +7 -0
- package/dist/utils/versionCheck.js +1 -1
- package/dist/vite.js +175 -168
- package/package.json +3 -2
- package/scripts/lib/doc-sections.mjs +5 -3
- package/scripts/lib/eslint-disable.mjs +5 -0
- package/scripts/lib/eslint-plugin.d.ts +5 -1
- package/scripts/lib/eslint-plugin.mjs +240 -0
- package/scripts/lib/form-v-model.mjs +190 -0
- package/scripts/lib/project-variant-dts.mjs +25 -3
- package/scripts/lib/reactive-v-model.mjs +221 -0
- package/scripts/lib/validate-bb-markup.mjs +116 -8
package/README.md
CHANGED
|
@@ -318,10 +318,12 @@ Restart your agent harness once after either path so it picks up the new server.
|
|
|
318
318
|
|
|
319
319
|
The server's tools: `search_docs` (the section that answers a "how do I…"
|
|
320
320
|
question, across every guide and component), `search_components` (empty query
|
|
321
|
-
= the catalogue), `get_component` (
|
|
322
|
-
|
|
323
|
-
beta names that were renamed), `get_guide`, `get_composable`,
|
|
324
|
-
`get_recipe`, `list_tokens`, `list_changes`
|
|
321
|
+
= the catalogue), `get_component` (one line per prop, event and slot; whole
|
|
322
|
+
rows with `members`, guide prose with `sections`; also answers for type names
|
|
323
|
+
and for v2 / beta names that were renamed), `get_guide`, `get_composable`,
|
|
324
|
+
`list_recipes` / `get_recipe`, `list_tokens`, `list_changes` (counts, then one
|
|
325
|
+
line per change) and `validate`. Every answer is small by default: ask for the
|
|
326
|
+
part you need.
|
|
325
327
|
|
|
326
328
|
### CLI commands
|
|
327
329
|
|
|
@@ -475,13 +477,59 @@ a `BbProgress` with no `label`: all three render with no accessible name. Put th
|
|
|
475
477
|
still name the button:
|
|
476
478
|
|
|
477
479
|
```vue
|
|
478
|
-
<BbButton icon="lucide:trash">
|
|
480
|
+
<BbButton icon="lucide:trash">Delete</BbButton>
|
|
479
481
|
<BbProgress label="Upload" :model-value="progress" />
|
|
480
482
|
```
|
|
481
483
|
|
|
482
484
|
`BbSpinner` is not covered: without `label` it is decorative, which is correct.
|
|
483
485
|
For raw HTML controls, use `eslint-plugin-vuejs-accessibility`.
|
|
484
486
|
|
|
487
|
+
#### v-model on a const reactive(): `no-reactive-v-model`
|
|
488
|
+
|
|
489
|
+
`bitboss-ui/no-reactive-v-model` flags a `v-model` (or `v-model:arg`) bound to
|
|
490
|
+
a `<script setup>` `const x = reactive(…)`. Dev runs it fine; a production
|
|
491
|
+
build compiles the write-back to `x = $event`, an assignment to a `const`, and
|
|
492
|
+
the bundler stops. Hold the object in a `ref()` and read `.value` in script; the
|
|
493
|
+
template does not change:
|
|
494
|
+
|
|
495
|
+
```vue
|
|
496
|
+
<script setup lang="ts">
|
|
497
|
+
import { ref } from 'vue';
|
|
498
|
+
const values = ref({ name: '' }); // not: const values = reactive({ name: '' })
|
|
499
|
+
</script>
|
|
500
|
+
|
|
501
|
+
<template>
|
|
502
|
+
<ProfileEditor v-model="values" />
|
|
503
|
+
</template>
|
|
504
|
+
```
|
|
505
|
+
|
|
506
|
+
A `let`, a member expression (`v-model="form.name"`) and Inertia's
|
|
507
|
+
`useForm()` are fine. `<BbForm>` is left to `form-model`: it takes its object
|
|
508
|
+
one way, so `:model` is the fix there, not a `ref()`. `bitboss-ui check`
|
|
509
|
+
reports the same as `reactive-v-model`.
|
|
510
|
+
|
|
511
|
+
#### The object a form fills: `form-model`
|
|
512
|
+
|
|
513
|
+
`<BbForm>` takes the object it fills one way, `:model="draft"`: any reactive
|
|
514
|
+
object — `reactive()`, `ref`, Pinia state, Inertia `useForm()` — written in
|
|
515
|
+
place. `bitboss-ui/form-model` fixes `v-model="…"` and `:model-value="…"` on
|
|
516
|
+
`<BbForm>` to `:model="…"`, and reports an `@update:model-value` listener (the
|
|
517
|
+
form emits none: watch the object deep) and a writable `computed` bound as the
|
|
518
|
+
model (its setter is never called):
|
|
519
|
+
|
|
520
|
+
```vue
|
|
521
|
+
<script setup lang="ts">
|
|
522
|
+
import { reactive } from 'vue';
|
|
523
|
+
const draft = reactive({ name: '' });
|
|
524
|
+
</script>
|
|
525
|
+
|
|
526
|
+
<template>
|
|
527
|
+
<BbForm :model="draft">…</BbForm>
|
|
528
|
+
</template>
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
`bitboss-ui check` reports the same as `form-v-model`.
|
|
532
|
+
|
|
485
533
|
#### Rating star colours: `no-star-color`
|
|
486
534
|
|
|
487
535
|
`bitboss-ui/no-star-color` flags any colour utility in `BbRating`'s `pt:item`,
|