@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 +54 -3
- package/dist/index.css +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.ts.mjs +2345 -2222
- package/dist/index.ts.umd.js +3 -3
- package/dist/package/components/__tests__/search-input.test.d.ts +1 -0
- package/dist/package/components/multi-select.vue.d.ts +1 -1
- package/dist/package/components/otp-input.vue.d.ts +1 -1
- package/dist/package/components/password-input.vue.d.ts +1 -1
- package/dist/package/components/search-input.vue.d.ts +45 -0
- package/dist/package/components/tag-input.vue.d.ts +1 -1
- package/dist/package/components/tree-select.vue.d.ts +1 -1
- package/dist/package/config/theme-core.d.ts +35 -0
- package/dist/package/themes/default/components/search-input.d.ts +35 -0
- package/dist/package/themes/default/index.d.ts +34 -0
- package/package.json +1 -1
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
|
|