@codemonster-ru/vueforge 0.70.0 → 0.71.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -26,6 +26,7 @@ import {
26
26
  VueForge,
27
27
  DefaultTheme,
28
28
  Button,
29
+ ButtonGroup,
29
30
  Input,
30
31
  InputGroup,
31
32
  InputAddon,
@@ -104,6 +105,11 @@ app.use(VueForge, {
104
105
 
105
106
  ```vue
106
107
  <Button label="Hello" severity="primary" />
108
+ <ButtonGroup attached variant="outlined" size="small">
109
+ <Button label="Day" />
110
+ <Button label="Week" />
111
+ <Button label="Month" />
112
+ </ButtonGroup>
107
113
  <Form v-model="formValues" :validate="validateForm" @submit="onSubmit">
108
114
  <template #default="{ values, errors, touched, setFieldValue, setFieldTouched }">
109
115
  <FormField label="Email" :error="touched.email ? errors.email : ''">
@@ -250,6 +256,7 @@ app.use(VueForge, {
250
256
  ## Components
251
257
 
252
258
  - Button
259
+ - ButtonGroup
253
260
  - Card
254
261
  - Checkbox
255
262
  - RadioGroup
@@ -332,6 +339,7 @@ app.use(VueForge, {
332
339
  Input / InputGroup / Search / Password / Textarea (quick API):
333
340
 
334
341
  - `Input`: single-line control, supports `v-model`, `size`, `variant`, `disabled`, `readonly`.
342
+ - `ButtonGroup`: grouped button actions with shared size/variant/severity and attached/stacked layouts.
335
343
  - `InputGroup`: horizontal control combiner for field/addon/button layouts with unified corners and borders.
336
344
  - `EmptyState`: reusable empty-data block with icon/title/description/actions for table/list/search blank states.
337
345
  - `InlineEdit`: inline value editing with view/edit states, save/cancel actions, and text/number modes.
@@ -1508,6 +1516,37 @@ Example:
1508
1516
  </RadioGroup>
1509
1517
  ```
1510
1518
 
1519
+ ## ButtonGroup
1520
+
1521
+ Props:
1522
+
1523
+ - `size?: 'small' | 'normal' | 'large'` (inherits to nested `Button`/`SplitButton` when child props are not set)
1524
+ - `variant?: 'filled' | 'outlined' | 'text'` (inherits to nested `Button`/`SplitButton`)
1525
+ - `severity?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'danger'` (inherits to nested `Button`/`SplitButton`)
1526
+ - `disabled?: boolean` (default `false`)
1527
+ - `orientation?: 'horizontal' | 'vertical'` (default `horizontal`)
1528
+ - `attached?: boolean` (default `false`)
1529
+
1530
+ Slots:
1531
+
1532
+ - `default` - place `Button` / `SplitButton` items
1533
+
1534
+ Example:
1535
+
1536
+ ```vue
1537
+ <ButtonGroup attached size="small" variant="outlined" severity="primary">
1538
+ <Button label="Day" />
1539
+ <Button label="Week" />
1540
+ <Button label="Month" />
1541
+ </ButtonGroup>
1542
+ ```
1543
+
1544
+ ### ButtonGroup tokens
1545
+
1546
+ Component tokens (override via `theme.overrides.components.buttonGroup`):
1547
+
1548
+ - `gap`, `borderRadius`, `disabledOpacity`
1549
+
1511
1550
  ## Breadcrumbs
1512
1551
 
1513
1552
  Props:
@@ -3107,7 +3146,7 @@ VueForge exposes design tokens as CSS variables generated from the theme preset.
3107
3146
  Typed tokens:
3108
3147
 
3109
3148
  - `ThemeTokens`/`ThemeOptions`/`ThemePreset` are exported for type-safe theming in TS.
3110
- - `components.*` accepts component-specific tokens (typed keys: button/card/checkbox/radio/tabs/accordion/toast/alert/emptyState/input/inputGroup/inlineEdit/searchInput/mentionInput/passwordInput/otpInput/colorPicker/maskedInput/numberInput/form/formField/textarea/richTextEditor/link/breadcrumbs/divider/menu/modal/confirmDialog/drawer/popover/dropdown/contextMenu/commandPalette/notificationCenter/appShell/kanbanBoard/tour/select/autocomplete/combobox/multiselect/taginput/datepicker/calendar/daterangepicker/timepicker/datetimepicker/pagination/switch/segmentedControl/tooltip/skeleton/progress/spinner/badge/chip/filterChips/avatar/datatable/slider/splitter/stepper/wizard/rating/tree/treeselect/virtualScroller).
3149
+ - `components.*` accepts component-specific tokens (typed keys: button/buttonGroup/card/checkbox/radio/tabs/accordion/toast/alert/emptyState/input/inputGroup/inlineEdit/searchInput/mentionInput/passwordInput/otpInput/colorPicker/maskedInput/numberInput/form/formField/textarea/richTextEditor/link/breadcrumbs/divider/menu/modal/confirmDialog/drawer/popover/dropdown/contextMenu/commandPalette/notificationCenter/appShell/kanbanBoard/tour/select/autocomplete/combobox/multiselect/taginput/datepicker/calendar/daterangepicker/timepicker/datetimepicker/pagination/switch/segmentedControl/tooltip/skeleton/progress/spinner/badge/chip/filterChips/avatar/datatable/slider/splitter/stepper/wizard/rating/tree/treeselect/virtualScroller).
3111
3150
 
3112
3151
  Default core values (from `DefaultTheme`):
3113
3152