@codemonster-ru/vueforge 0.70.0 → 0.72.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 +96 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.ts.mjs +4267 -4137
- package/dist/index.ts.umd.js +10 -10
- package/dist/package/components/__tests__/button-group.test.d.ts +1 -0
- package/dist/package/components/__tests__/page-header.test.d.ts +1 -0
- package/dist/package/components/button-group-context.d.ts +8 -0
- package/dist/package/components/button-group.vue.d.ts +36 -0
- package/dist/package/components/page-header.vue.d.ts +34 -0
- package/dist/package/config/theme-core.d.ts +35 -0
- package/dist/package/themes/default/components/button-group.d.ts +6 -0
- package/dist/package/themes/default/components/page-header.d.ts +29 -0
- package/dist/package/themes/default/index.d.ts +33 -0
- package/package.json +1 -1
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,
|
|
@@ -44,6 +45,7 @@ import {
|
|
|
44
45
|
FileUpload,
|
|
45
46
|
Breadcrumbs,
|
|
46
47
|
Divider,
|
|
48
|
+
PageHeader,
|
|
47
49
|
Select,
|
|
48
50
|
Autocomplete,
|
|
49
51
|
Combobox,
|
|
@@ -104,6 +106,11 @@ app.use(VueForge, {
|
|
|
104
106
|
|
|
105
107
|
```vue
|
|
106
108
|
<Button label="Hello" severity="primary" />
|
|
109
|
+
<ButtonGroup attached variant="outlined" size="small">
|
|
110
|
+
<Button label="Day" />
|
|
111
|
+
<Button label="Week" />
|
|
112
|
+
<Button label="Month" />
|
|
113
|
+
</ButtonGroup>
|
|
107
114
|
<Form v-model="formValues" :validate="validateForm" @submit="onSubmit">
|
|
108
115
|
<template #default="{ values, errors, touched, setFieldValue, setFieldTouched }">
|
|
109
116
|
<FormField label="Email" :error="touched.email ? errors.email : ''">
|
|
@@ -139,6 +146,12 @@ app.use(VueForge, {
|
|
|
139
146
|
<FileUpload v-model="resume" accept=".pdf,.doc,.docx" />
|
|
140
147
|
<Breadcrumbs :items="breadcrumbItems" />
|
|
141
148
|
<Divider label="OR" />
|
|
149
|
+
<PageHeader title="Projects" subtitle="Manage active projects and team workload.">
|
|
150
|
+
<template #actions>
|
|
151
|
+
<Button label="Import" variant="outlined" severity="secondary" />
|
|
152
|
+
<Button label="New project" icon="plus" />
|
|
153
|
+
</template>
|
|
154
|
+
</PageHeader>
|
|
142
155
|
<Select v-model="role" :options="roles" placeholder="Choose role" />
|
|
143
156
|
<Autocomplete v-model="country" :options="countries" placeholder="Find country" />
|
|
144
157
|
<Combobox v-model="countryId" :options="countries" placeholder="Pick country" clearable />
|
|
@@ -250,6 +263,7 @@ app.use(VueForge, {
|
|
|
250
263
|
## Components
|
|
251
264
|
|
|
252
265
|
- Button
|
|
266
|
+
- ButtonGroup
|
|
253
267
|
- Card
|
|
254
268
|
- Checkbox
|
|
255
269
|
- RadioGroup
|
|
@@ -283,6 +297,7 @@ app.use(VueForge, {
|
|
|
283
297
|
- Link
|
|
284
298
|
- Breadcrumbs
|
|
285
299
|
- Divider
|
|
300
|
+
- PageHeader
|
|
286
301
|
- Menu
|
|
287
302
|
- Modal
|
|
288
303
|
- ConfirmDialog
|
|
@@ -332,6 +347,7 @@ app.use(VueForge, {
|
|
|
332
347
|
Input / InputGroup / Search / Password / Textarea (quick API):
|
|
333
348
|
|
|
334
349
|
- `Input`: single-line control, supports `v-model`, `size`, `variant`, `disabled`, `readonly`.
|
|
350
|
+
- `ButtonGroup`: grouped button actions with shared size/variant/severity and attached/stacked layouts.
|
|
335
351
|
- `InputGroup`: horizontal control combiner for field/addon/button layouts with unified corners and borders.
|
|
336
352
|
- `EmptyState`: reusable empty-data block with icon/title/description/actions for table/list/search blank states.
|
|
337
353
|
- `InlineEdit`: inline value editing with view/edit states, save/cancel actions, and text/number modes.
|
|
@@ -350,6 +366,7 @@ Input / InputGroup / Search / Password / Textarea (quick API):
|
|
|
350
366
|
- `RichTextEditor`: formatting editor with toolbar actions and Markdown/HTML output.
|
|
351
367
|
- `Divider`: horizontal/vertical visual separator with optional label and style variants.
|
|
352
368
|
- `Spinner`: lightweight loading indicator with inline/overlay variants and severity colors.
|
|
369
|
+
- `PageHeader`: page-level heading block with breadcrumbs/meta/actions slots for dashboard screens.
|
|
353
370
|
- `Wizard`: multi-step flow container with linear navigation, per-step validation, and completion events.
|
|
354
371
|
- `Textarea`: multi-line control, same as Input plus `rows`.
|
|
355
372
|
- `TagInput`: token/tag control, supports `v-model` (array), suggestions, custom tags, `maxTags`, `clearable`, `size`, `variant`.
|
|
@@ -1508,6 +1525,37 @@ Example:
|
|
|
1508
1525
|
</RadioGroup>
|
|
1509
1526
|
```
|
|
1510
1527
|
|
|
1528
|
+
## ButtonGroup
|
|
1529
|
+
|
|
1530
|
+
Props:
|
|
1531
|
+
|
|
1532
|
+
- `size?: 'small' | 'normal' | 'large'` (inherits to nested `Button`/`SplitButton` when child props are not set)
|
|
1533
|
+
- `variant?: 'filled' | 'outlined' | 'text'` (inherits to nested `Button`/`SplitButton`)
|
|
1534
|
+
- `severity?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'danger'` (inherits to nested `Button`/`SplitButton`)
|
|
1535
|
+
- `disabled?: boolean` (default `false`)
|
|
1536
|
+
- `orientation?: 'horizontal' | 'vertical'` (default `horizontal`)
|
|
1537
|
+
- `attached?: boolean` (default `false`)
|
|
1538
|
+
|
|
1539
|
+
Slots:
|
|
1540
|
+
|
|
1541
|
+
- `default` - place `Button` / `SplitButton` items
|
|
1542
|
+
|
|
1543
|
+
Example:
|
|
1544
|
+
|
|
1545
|
+
```vue
|
|
1546
|
+
<ButtonGroup attached size="small" variant="outlined" severity="primary">
|
|
1547
|
+
<Button label="Day" />
|
|
1548
|
+
<Button label="Week" />
|
|
1549
|
+
<Button label="Month" />
|
|
1550
|
+
</ButtonGroup>
|
|
1551
|
+
```
|
|
1552
|
+
|
|
1553
|
+
### ButtonGroup tokens
|
|
1554
|
+
|
|
1555
|
+
Component tokens (override via `theme.overrides.components.buttonGroup`):
|
|
1556
|
+
|
|
1557
|
+
- `gap`, `borderRadius`, `disabledOpacity`
|
|
1558
|
+
|
|
1511
1559
|
## Breadcrumbs
|
|
1512
1560
|
|
|
1513
1561
|
Props:
|
|
@@ -1574,6 +1622,53 @@ Component tokens (override via `theme.overrides.components.divider`):
|
|
|
1574
1622
|
- `gap`, `inset`
|
|
1575
1623
|
- `labelPadding`, `labelFontSize`
|
|
1576
1624
|
|
|
1625
|
+
## PageHeader
|
|
1626
|
+
|
|
1627
|
+
Props:
|
|
1628
|
+
|
|
1629
|
+
- `title?: string`
|
|
1630
|
+
- `subtitle?: string`
|
|
1631
|
+
- `size?: 'small' | 'normal' | 'large'` (default `normal`)
|
|
1632
|
+
- `divider?: boolean` (default `false`)
|
|
1633
|
+
|
|
1634
|
+
Slots:
|
|
1635
|
+
|
|
1636
|
+
- `breadcrumbs` (optional)
|
|
1637
|
+
- `title` (optional) - replaces `title` prop rendering
|
|
1638
|
+
- `subtitle` (optional) - replaces `subtitle` prop rendering
|
|
1639
|
+
- `meta` (optional)
|
|
1640
|
+
- `actions` (optional)
|
|
1641
|
+
- `default` (optional) - additional body content
|
|
1642
|
+
|
|
1643
|
+
Example:
|
|
1644
|
+
|
|
1645
|
+
```vue
|
|
1646
|
+
<PageHeader title="Projects" subtitle="Manage active projects and team workload.">
|
|
1647
|
+
<template #breadcrumbs>
|
|
1648
|
+
<Breadcrumbs :items="breadcrumbItems" />
|
|
1649
|
+
</template>
|
|
1650
|
+
<template #meta>
|
|
1651
|
+
<Badge severity="info" variant="soft">24 active</Badge>
|
|
1652
|
+
<Chip label="Last sync: 2m ago" />
|
|
1653
|
+
</template>
|
|
1654
|
+
<template #actions>
|
|
1655
|
+
<Button label="Import" variant="outlined" severity="secondary" />
|
|
1656
|
+
<Button label="New project" icon="plus" />
|
|
1657
|
+
</template>
|
|
1658
|
+
</PageHeader>
|
|
1659
|
+
```
|
|
1660
|
+
|
|
1661
|
+
### PageHeader tokens
|
|
1662
|
+
|
|
1663
|
+
Component tokens (override via `theme.overrides.components.pageHeader`):
|
|
1664
|
+
|
|
1665
|
+
- `gap`, `contentGap`, `breadcrumbGap`, `actionsGap`, `metaGap`
|
|
1666
|
+
- `padding`, `borderRadius`, `borderColor`, `backgroundColor`, `textColor`, `dividerColor`
|
|
1667
|
+
- `titleFontSize`, `titleLineHeight`, `titleFontWeight`
|
|
1668
|
+
- `subtitleFontSize`, `subtitleColor`
|
|
1669
|
+
- `small.padding`, `small.titleFontSize`, `small.subtitleFontSize`
|
|
1670
|
+
- `large.padding`, `large.titleFontSize`, `large.subtitleFontSize`
|
|
1671
|
+
|
|
1577
1672
|
## SegmentedControl
|
|
1578
1673
|
|
|
1579
1674
|
Props:
|
|
@@ -3107,7 +3202,7 @@ VueForge exposes design tokens as CSS variables generated from the theme preset.
|
|
|
3107
3202
|
Typed tokens:
|
|
3108
3203
|
|
|
3109
3204
|
- `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).
|
|
3205
|
+
- `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/pageHeader/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
3206
|
|
|
3112
3207
|
Default core values (from `DefaultTheme`):
|
|
3113
3208
|
|