@codemonster-ru/vueforge 0.53.0 → 0.54.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 +67 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.ts.mjs +2021 -1909
- package/dist/index.ts.umd.js +3 -3
- package/dist/package/components/__tests__/filter-chips.test.d.ts +1 -0
- package/dist/package/components/filter-chips.vue.d.ts +49 -0
- package/dist/package/config/theme-core.d.ts +34 -0
- package/dist/package/themes/default/components/filter-chips.d.ts +34 -0
- package/dist/package/themes/default/index.d.ts +33 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -56,6 +56,7 @@ import {
|
|
|
56
56
|
Progress,
|
|
57
57
|
Badge,
|
|
58
58
|
Chip,
|
|
59
|
+
FilterChips,
|
|
59
60
|
Accordion,
|
|
60
61
|
AccordionItem,
|
|
61
62
|
Slider,
|
|
@@ -121,6 +122,14 @@ app.use(VueForge, {
|
|
|
121
122
|
<Progress :value="64" />
|
|
122
123
|
<Badge label="Beta" />
|
|
123
124
|
<Chip label="New" />
|
|
125
|
+
<FilterChips
|
|
126
|
+
v-model="filters"
|
|
127
|
+
:options="[
|
|
128
|
+
{ label: 'Open', value: 'open' },
|
|
129
|
+
{ label: 'Done', value: 'done' },
|
|
130
|
+
]"
|
|
131
|
+
clearable
|
|
132
|
+
/>
|
|
124
133
|
<Slider v-model="volume" :min="0" :max="100" :step="5" show-value />
|
|
125
134
|
<Stepper v-model="step" :steps="steps" clickable />
|
|
126
135
|
<Rating v-model="rating" allow-half />
|
|
@@ -230,6 +239,7 @@ app.use(VueForge, {
|
|
|
230
239
|
- Progress
|
|
231
240
|
- Badge
|
|
232
241
|
- Chip
|
|
242
|
+
- FilterChips
|
|
233
243
|
- Avatar
|
|
234
244
|
- Slider
|
|
235
245
|
- Stepper
|
|
@@ -249,6 +259,7 @@ Input / Search / Password / Textarea (quick API):
|
|
|
249
259
|
- `NumberInput`: numeric control, supports `v-model`, `min`, `max`, `step`, `precision`, `controls`, `size`, `variant`.
|
|
250
260
|
- `Textarea`: multi-line control, same as Input plus `rows`.
|
|
251
261
|
- `TagInput`: token/tag control, supports `v-model` (array), suggestions, custom tags, `maxTags`, `clearable`, `size`, `variant`.
|
|
262
|
+
- `FilterChips`: compact chip-based filter toggles with single/multiple selection modes and optional clear action.
|
|
252
263
|
- `SearchInput`, `OtpInput`, `ColorPicker`, `MaskedInput`, `Checkbox`, `Select`, `Autocomplete`, `MultiSelect`, `TagInput`, `DatePicker`, `Calendar`, `DateRangePicker`, `DateTimePicker`, `Pagination`, `DataTable`, `SegmentedControl`, and `TreeSelect` also support `variant: 'filled' | 'outlined'`.
|
|
253
264
|
|
|
254
265
|
## FormField
|
|
@@ -1799,6 +1810,61 @@ Component tokens (override via `theme.overrides.components.chip`):
|
|
|
1799
1810
|
- `small.fontSize`, `small.paddingX`, `small.paddingY`
|
|
1800
1811
|
- `large.fontSize`, `large.paddingX`, `large.paddingY`
|
|
1801
1812
|
|
|
1813
|
+
## FilterChips
|
|
1814
|
+
|
|
1815
|
+
Props:
|
|
1816
|
+
|
|
1817
|
+
- `modelValue?: string | number | Array<string | number> | null` (v-model)
|
|
1818
|
+
- `options?: Array<{ label: string; value: string | number; disabled?: boolean; count?: number }>` (default `[]`)
|
|
1819
|
+
- `multiple?: boolean` (default `true`)
|
|
1820
|
+
- `allowEmpty?: boolean` (default `true`, used in single mode)
|
|
1821
|
+
- `clearable?: boolean` (default `false`)
|
|
1822
|
+
- `clearText?: string` (default `Clear`)
|
|
1823
|
+
- `clearLabel?: string` (default `Clear filters`)
|
|
1824
|
+
- `disabled?: boolean`
|
|
1825
|
+
- `wrap?: boolean` (default `true`)
|
|
1826
|
+
- `size?: 'small' | 'normal' | 'large'` (default `normal`)
|
|
1827
|
+
- `variant?: 'soft' | 'outline' | 'solid'` (default `soft`)
|
|
1828
|
+
- `ariaLabel?: string`
|
|
1829
|
+
- `ariaLabelledby?: string`
|
|
1830
|
+
|
|
1831
|
+
Events:
|
|
1832
|
+
|
|
1833
|
+
- `update:modelValue`
|
|
1834
|
+
- `change`
|
|
1835
|
+
- `clear`
|
|
1836
|
+
|
|
1837
|
+
Example:
|
|
1838
|
+
|
|
1839
|
+
```vue
|
|
1840
|
+
<FilterChips
|
|
1841
|
+
v-model="activeFilters"
|
|
1842
|
+
:options="[
|
|
1843
|
+
{ label: 'Open', value: 'open', count: 12 },
|
|
1844
|
+
{ label: 'In progress', value: 'progress', count: 7 },
|
|
1845
|
+
{ label: 'Done', value: 'done', count: 18 },
|
|
1846
|
+
]"
|
|
1847
|
+
clearable
|
|
1848
|
+
/>
|
|
1849
|
+
<FilterChips v-model="activeStatus" :options="statusOptions" :multiple="false" variant="outline" />
|
|
1850
|
+
```
|
|
1851
|
+
|
|
1852
|
+
### FilterChips tokens
|
|
1853
|
+
|
|
1854
|
+
Component tokens (override via `theme.overrides.components.filterChips`):
|
|
1855
|
+
|
|
1856
|
+
- `fontSize`, `gap`
|
|
1857
|
+
- `chipGap`, `chipPadding`, `chipBorderRadius`
|
|
1858
|
+
- `chipBorderColor`, `chipBackgroundColor`, `chipTextColor`
|
|
1859
|
+
- `chipHoverBackgroundColor`, `chipHoverBorderColor`
|
|
1860
|
+
- `chipActiveBackgroundColor`, `chipActiveBorderColor`, `chipActiveTextColor`
|
|
1861
|
+
- `chipSolidActiveBackgroundColor`, `chipSolidActiveBorderColor`, `chipSolidActiveTextColor`
|
|
1862
|
+
- `countPadding`, `countFontSize`, `countBackgroundColor`, `countTextColor`
|
|
1863
|
+
- `countActiveBackgroundColor`, `countActiveTextColor`
|
|
1864
|
+
- `disabledOpacity`
|
|
1865
|
+
- `small.fontSize`, `small.chipPadding`
|
|
1866
|
+
- `large.fontSize`, `large.chipPadding`
|
|
1867
|
+
|
|
1802
1868
|
## Avatar
|
|
1803
1869
|
|
|
1804
1870
|
Props:
|
|
@@ -2154,7 +2220,7 @@ VueForge exposes design tokens as CSS variables generated from the theme preset.
|
|
|
2154
2220
|
Typed tokens:
|
|
2155
2221
|
|
|
2156
2222
|
- `ThemeTokens`/`ThemeOptions`/`ThemePreset` are exported for type-safe theming in TS.
|
|
2157
|
-
- `components.*` accepts component-specific tokens (typed keys: button/card/checkbox/radio/tabs/accordion/toast/alert/input/searchInput/passwordInput/otpInput/colorPicker/maskedInput/numberInput/formField/textarea/link/breadcrumbs/menu/modal/confirmDialog/drawer/popover/dropdown/contextMenu/commandPalette/select/autocomplete/multiselect/taginput/datepicker/calendar/daterangepicker/timepicker/datetimepicker/pagination/switch/segmentedControl/tooltip/skeleton/progress/badge/chip/avatar/datatable/slider/stepper/rating/tree/treeselect/virtualScroller).
|
|
2223
|
+
- `components.*` accepts component-specific tokens (typed keys: button/card/checkbox/radio/tabs/accordion/toast/alert/input/searchInput/passwordInput/otpInput/colorPicker/maskedInput/numberInput/formField/textarea/link/breadcrumbs/menu/modal/confirmDialog/drawer/popover/dropdown/contextMenu/commandPalette/select/autocomplete/multiselect/taginput/datepicker/calendar/daterangepicker/timepicker/datetimepicker/pagination/switch/segmentedControl/tooltip/skeleton/progress/badge/chip/filterChips/avatar/datatable/slider/stepper/rating/tree/treeselect/virtualScroller).
|
|
2158
2224
|
|
|
2159
2225
|
Default core values (from `DefaultTheme`):
|
|
2160
2226
|
|