@codemonster-ru/vueforge 0.50.0 → 0.51.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
@@ -27,6 +27,7 @@ import {
27
27
  DefaultTheme,
28
28
  Button,
29
29
  Input,
30
+ SearchInput,
30
31
  PasswordInput,
31
32
  OtpInput,
32
33
  ColorPicker,
@@ -84,6 +85,7 @@ app.use(VueForge, {
84
85
  <FormField label="Name" hint="Required field">
85
86
  <Input v-model="name" placeholder="Your name" />
86
87
  </FormField>
88
+ <SearchInput v-model="query" placeholder="Search components" clearable />
87
89
  <PasswordInput v-model="password" placeholder="Enter password" show-strength />
88
90
  <OtpInput v-model="otp" :length="6" />
89
91
  <ColorPicker v-model="brandColor" :presets="['#2b6cb0', '#0cbc87', '#d6293e']" />
@@ -180,6 +182,7 @@ app.use(VueForge, {
180
182
  - ToastContainer
181
183
  - Alert
182
184
  - Input
185
+ - SearchInput
183
186
  - PasswordInput
184
187
  - OtpInput
185
188
  - ColorPicker
@@ -223,9 +226,10 @@ app.use(VueForge, {
223
226
  - TreeSelect
224
227
  - VirtualScroller
225
228
 
226
- Input / Password / Textarea (quick API):
229
+ Input / Search / Password / Textarea (quick API):
227
230
 
228
231
  - `Input`: single-line control, supports `v-model`, `size`, `variant`, `disabled`, `readonly`.
232
+ - `SearchInput`: search-focused control with `debounce`, `clearable`, `loading`, `size`, and `variant`.
229
233
  - `PasswordInput`: password control, supports visibility toggle, strength meter, CapsLock hint, `size`, and `variant`.
230
234
  - `OtpInput`: one-time code control, supports fixed length, paste handling, numeric/alphanumeric modes, `size`, and `variant`.
231
235
  - `ColorPicker`: color control with presets, optional alpha channel, and output formats (`hex`/`rgb`/`hsl`).
@@ -233,7 +237,7 @@ Input / Password / Textarea (quick API):
233
237
  - `NumberInput`: numeric control, supports `v-model`, `min`, `max`, `step`, `precision`, `controls`, `size`, `variant`.
234
238
  - `Textarea`: multi-line control, same as Input plus `rows`.
235
239
  - `TagInput`: token/tag control, supports `v-model` (array), suggestions, custom tags, `maxTags`, `clearable`, `size`, `variant`.
236
- - `OtpInput`, `ColorPicker`, `MaskedInput`, `Checkbox`, `Select`, `Autocomplete`, `MultiSelect`, `TagInput`, `DatePicker`, `DateRangePicker`, `DateTimePicker`, `Pagination`, `DataTable`, and `TreeSelect` also support `variant: 'filled' | 'outlined'`.
240
+ - `SearchInput`, `OtpInput`, `ColorPicker`, `MaskedInput`, `Checkbox`, `Select`, `Autocomplete`, `MultiSelect`, `TagInput`, `DatePicker`, `DateRangePicker`, `DateTimePicker`, `Pagination`, `DataTable`, and `TreeSelect` also support `variant: 'filled' | 'outlined'`.
237
241
 
238
242
  ## FormField
239
243
 
@@ -758,6 +762,53 @@ Component tokens (override via `theme.overrides.components.fileUpload`):
758
762
  - `small.fontSize`, `small.padding`, `small.buttonPadding`
759
763
  - `large.fontSize`, `large.padding`, `large.buttonPadding`
760
764
 
765
+ ## SearchInput
766
+
767
+ Props:
768
+
769
+ - `modelValue?: string` (v-model)
770
+ - `placeholder?: string`
771
+ - `disabled?: boolean`
772
+ - `readonly?: boolean`
773
+ - `debounce?: number` (default `300`)
774
+ - `loading?: boolean` (default `false`)
775
+ - `clearable?: boolean` (default `false`)
776
+ - `size?: 'small' | 'normal' | 'large'` (default `normal`)
777
+ - `variant?: 'filled' | 'outlined'` (default `filled`)
778
+ - `ariaLabel?: string` (default `Search input`)
779
+
780
+ Events:
781
+
782
+ - `update:modelValue`
783
+ - `input`
784
+ - `change`
785
+ - `search`
786
+ - `clear`
787
+ - `focus`
788
+ - `blur`
789
+
790
+ Example:
791
+
792
+ ```vue
793
+ <SearchInput v-model="query" placeholder="Search..." clearable />
794
+ <SearchInput v-model="query" placeholder="Search..." :debounce="500" loading variant="outlined" />
795
+ ```
796
+
797
+ ### SearchInput tokens
798
+
799
+ Component tokens (override via `theme.overrides.components.searchInput`):
800
+
801
+ - `gap`, `fontSize`, `padding`
802
+ - `borderRadius`, `borderColor`
803
+ - `backgroundColor`, `textColor`, `placeholderColor`
804
+ - `focusBorderColor`, `focusRingShadow`, `hoverBorderColor`
805
+ - `disabledOpacity`
806
+ - `iconSize`, `iconColor`
807
+ - `clearSize`, `clearRadius`, `clearHoverBackgroundColor`
808
+ - `loadingSize`, `loadingBorderColor`, `loadingTopBorderColor`
809
+ - `small.fontSize`, `small.padding`, `small.iconSize`, `small.clearSize`
810
+ - `large.fontSize`, `large.padding`, `large.iconSize`, `large.clearSize`
811
+
761
812
  ## NumberInput
762
813
 
763
814
  Props:
@@ -2004,7 +2055,7 @@ VueForge exposes design tokens as CSS variables generated from the theme preset.
2004
2055
  Typed tokens:
2005
2056
 
2006
2057
  - `ThemeTokens`/`ThemeOptions`/`ThemePreset` are exported for type-safe theming in TS.
2007
- - `components.*` accepts component-specific tokens (typed keys: button/card/checkbox/radio/tabs/accordion/toast/alert/input/passwordInput/otpInput/colorPicker/maskedInput/numberInput/formField/textarea/link/breadcrumbs/menu/modal/confirmDialog/drawer/popover/dropdown/contextMenu/commandPalette/select/autocomplete/multiselect/taginput/datepicker/daterangepicker/timepicker/datetimepicker/pagination/switch/tooltip/skeleton/progress/badge/chip/avatar/datatable/slider/stepper/rating/tree/treeselect/virtualScroller).
2058
+ - `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/daterangepicker/timepicker/datetimepicker/pagination/switch/tooltip/skeleton/progress/badge/chip/avatar/datatable/slider/stepper/rating/tree/treeselect/virtualScroller).
2008
2059
 
2009
2060
  Default core values (from `DefaultTheme`):
2010
2061