@codemonster-ru/vueforge 0.69.0 → 0.70.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
@@ -63,6 +63,7 @@ import {
63
63
  EmptyState,
64
64
  Skeleton,
65
65
  Progress,
66
+ Spinner,
66
67
  Badge,
67
68
  Chip,
68
69
  FilterChips,
@@ -163,6 +164,7 @@ app.use(VueForge, {
163
164
  <EmptyState title="No projects yet" description="Create your first project to get started." icon="📂" />
164
165
  <Skeleton height="12px" width="140px" />
165
166
  <Progress :value="64" />
167
+ <Spinner label="Loading..." />
166
168
  <Badge label="Beta" />
167
169
  <Chip label="New" />
168
170
  <FilterChips
@@ -310,6 +312,7 @@ app.use(VueForge, {
310
312
  - Tooltip
311
313
  - Skeleton
312
314
  - Progress
315
+ - Spinner
313
316
  - Badge
314
317
  - Chip
315
318
  - FilterChips
@@ -346,6 +349,7 @@ Input / InputGroup / Search / Password / Textarea (quick API):
346
349
  - `KanbanBoard`: task board with draggable cards, customizable column/card slots, and move events.
347
350
  - `RichTextEditor`: formatting editor with toolbar actions and Markdown/HTML output.
348
351
  - `Divider`: horizontal/vertical visual separator with optional label and style variants.
352
+ - `Spinner`: lightweight loading indicator with inline/overlay variants and severity colors.
349
353
  - `Wizard`: multi-step flow container with linear navigation, per-step validation, and completion events.
350
354
  - `Textarea`: multi-line control, same as Input plus `rows`.
351
355
  - `TagInput`: token/tag control, supports `v-model` (array), suggestions, custom tags, `maxTags`, `clearable`, `size`, `variant`.
@@ -2632,6 +2636,40 @@ Component tokens (override via `theme.overrides.components.progress`):
2632
2636
  - `small.height`, `small.labelFontSize`, `small.circularSize`, `small.circularThickness`
2633
2637
  - `large.height`, `large.labelFontSize`, `large.circularSize`, `large.circularThickness`
2634
2638
 
2639
+ ## Spinner
2640
+
2641
+ Props:
2642
+
2643
+ - `variant?: 'inline' | 'overlay'` (default `inline`)
2644
+ - `size?: 'small' | 'normal' | 'large'` (default `normal`)
2645
+ - `severity?: 'neutral' | 'info' | 'success' | 'warn' | 'danger'` (default `neutral`)
2646
+ - `label?: string`
2647
+ - `ariaLabel?: string` (default `Loading`)
2648
+
2649
+ Slots:
2650
+
2651
+ - `default` (optional) - custom label content
2652
+
2653
+ Example:
2654
+
2655
+ ```vue
2656
+ <Spinner />
2657
+ <Spinner label="Loading users..." size="small" />
2658
+ <Spinner variant="overlay" severity="info" label="Sync in progress" />
2659
+ ```
2660
+
2661
+ ### Spinner tokens
2662
+
2663
+ Component tokens (override via `theme.overrides.components.spinner`):
2664
+
2665
+ - `size`, `thickness`, `color`, `trackColor`
2666
+ - `gap`, `labelColor`, `labelFontSize`
2667
+ - `animationDuration`
2668
+ - `overlayMinHeight`, `overlayPadding`, `overlayBorderRadius`, `overlayBackgroundColor`
2669
+ - `info.color`, `success.color`, `warn.color`, `danger.color`
2670
+ - `small.size`, `small.thickness`, `small.labelFontSize`
2671
+ - `large.size`, `large.thickness`, `large.labelFontSize`
2672
+
2635
2673
  ## Slider
2636
2674
 
2637
2675
  Props:
@@ -3069,7 +3107,7 @@ VueForge exposes design tokens as CSS variables generated from the theme preset.
3069
3107
  Typed tokens:
3070
3108
 
3071
3109
  - `ThemeTokens`/`ThemeOptions`/`ThemePreset` are exported for type-safe theming in TS.
3072
- - `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/badge/chip/filterChips/avatar/datatable/slider/splitter/stepper/wizard/rating/tree/treeselect/virtualScroller).
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).
3073
3111
 
3074
3112
  Default core values (from `DefaultTheme`):
3075
3113