sprof 0.3.3 → 0.4.1

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.
Files changed (29) hide show
  1. package/README.md +16 -13
  2. package/dist/auto-import.d.ts +70 -0
  3. package/dist/auto-import.js +20 -0
  4. package/dist/auto-import.test.d.ts +1 -0
  5. package/dist/core/components/atoms/PDialog/PDialog.stories.d.ts +72 -24
  6. package/dist/core/components/atoms/PDialog/PDialog.vue.d.ts +17 -7
  7. package/dist/core/components/atoms/PInput/PInput.stories.d.ts +30 -0
  8. package/dist/core/components/atoms/PInput/PInput.vue.d.ts +12 -0
  9. package/dist/core/components/atoms/PInputNumber/PInputNumber.stories.d.ts +1 -1
  10. package/dist/core/components/atoms/PInputNumber/PInputNumber.vue.d.ts +1 -1
  11. package/dist/core/components/atoms/PSelect/PSelect.stories.d.ts +54 -8
  12. package/dist/core/components/atoms/PSelect/PSelect.vue.d.ts +20 -3
  13. package/dist/core/components/organisms/PAuthForm/PAuthForm.stories.d.ts +22 -2
  14. package/dist/core/components/organisms/PAuthForm/PAuthForm.vue.d.ts +11 -1
  15. package/dist/core/composables/index.d.ts +16 -0
  16. package/dist/core/composables/useCrud.d.ts +47 -0
  17. package/dist/core/composables/useCrud.test.d.ts +1 -0
  18. package/dist/core/composables/useFilters.d.ts +33 -0
  19. package/dist/core/composables/useFilters.test.d.ts +1 -0
  20. package/dist/core/composables/usePagination.d.ts +45 -0
  21. package/dist/core/composables/usePagination.test.d.ts +1 -0
  22. package/dist/index.d.ts +4 -0
  23. package/dist/modules/schedule/components/ScheduleGridEditor.vue.d.ts +16 -0
  24. package/dist/modules/table/cells/PTableNumber.vue.d.ts +3 -3
  25. package/dist/modules/table/cells/PTableString.vue.d.ts +1 -1
  26. package/dist/sprof.js +4894 -4757
  27. package/dist/sprof.umd.cjs +14 -14
  28. package/dist/style.css +1 -1
  29. package/package.json +9 -3
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
1
  # sprof — UI Kit & Platform Library (PF)
2
2
 
3
3
  Библиотека UI-компонентов и платформенного ядра для проектов на **Vue 3 + Quasar 2**.
4
- Используется в rdkb (map/hr/food/leiter), portal и pros.
4
+ Используется во всех 8 клиентах: rdkb (hr/map/food/leiter/incident), portal, pros, ferma.
5
5
 
6
6
  - **P-компоненты** — обёртки над Quasar (полный проброс props/slots/events)
7
7
  - **PF / PFM** — платформенное ядро: helpers, store (BaseStore), FTSP, UI (Notify/Dialog), auth,
8
- модули (Buildings, Docs, Forms, Pages, Settings, Chats, Extracts, Menus)
8
+ модули (Tabs, Contacts, Schedule, Table, Menus, Forms)
9
9
  - **installSprof** — регистрация всех P-компонентов + Quasar-плагинов одной строкой
10
10
 
11
11
  ---
@@ -61,7 +61,7 @@ import type {} from 'sprof';
61
61
  export {};
62
62
  ```
63
63
 
64
- Ничего вручную дописывать не нужно — все 69 P-компонентов (атомы, молекулы, организмы)
64
+ Ничего вручную дописывать не нужно — все 96 P-компонентов (атомы, молекулы, организмы)
65
65
  типизируются в шаблонах автоматически.
66
66
 
67
67
  ---
@@ -85,8 +85,8 @@ export {};
85
85
  | `PBadge` | QBadge | label/color/outline/rounded/floating/multiLine |
86
86
  | `PRadio` | QRadio | v-model, label, size |
87
87
  | `PInputNumber` | QInput + QBtn | step/min/max, кнопки +/− |
88
- | `PDatePicker` | QInput | дата (legacy, см. PInputDate) |
89
- | `PInputDate` | QInput | дата |
88
+ | `PDateInput` | QInput + QDate | универсальное поле даты: mask ДД.ММ.ГГГГ + popup, модель `Date \| string` |
89
+ | `PDatePicker` / `PInputDate` | | legacy-алиасы PDateInput (удаление — TECH_DEBT Т2) |
90
90
  | `PTextarea` | QInput | resize, mask |
91
91
  | `PTooltip` | QTooltip | timeout, позиционирование, typeStyle |
92
92
  | `PString` | QItemLabel | текст с цветом/размером, isHtml |
@@ -95,14 +95,14 @@ export {};
95
95
  | `PList` / `PListItem` | QList / QItem | списки |
96
96
  | `PLeftSlider` / `PRightSlider` / `PTopSlider` | QBtn | выдвижные панели |
97
97
  | `PSticky` | div | sticky-обёртка |
98
- | `PTable` | table (HTML) | простая таблица со слотами |
98
+ | `PTableToggle` | QBtn | переключатель режима таблицы (используется в PTable модуля Table) |
99
99
 
100
100
  ### Молекулы/организмы (основные)
101
101
 
102
102
  `PAdd`, `PDel`, `PModal`, `PContainer`, `PContainerStickyHead`, `PTabs`, `PUploaderFile`,
103
- `PUploaderImage`, `PAuthForm`, `PAuthModal`, `PNameEdit`, `PNotify`, `PLoader`, `PPagination`,
104
- `PAutocomplete`, `PhoneForm`, `DateInputRange`, `FilterSelect`, `SortList`, `ThemeWrapper`
105
- и др. — полный список в реестрах `src/core/components/*/index.ts`.
103
+ `PUploaderImage`, `PAuthForm`, `PAuthModal`, `PPagination`, `PAutocomplete`,
104
+ `PContactForm*`, `PTable*`, `PCrudList`, `POptionsListMany` и др. — полный список
105
+ в реестрах `src/core/components/*/index.ts`.
106
106
 
107
107
  ---
108
108
 
@@ -111,7 +111,7 @@ export {};
111
111
  | Объект | Описание |
112
112
  | --- | --- |
113
113
  | `PF` | helpers, store (BaseStore), FTSP, UI (Notify/Dialog), auth, types |
114
- | `PFM` | модули: Buildings, Docs, Forms, Pages, Settings, Chats, Extracts, Menus |
114
+ | `PFM` | модули: Tabs, Contacts, Schedule, Table, Menus, Forms |
115
115
 
116
116
  ```ts
117
117
  import { PF, PFM } from 'sprof';
@@ -146,11 +146,13 @@ import { PF, PFM } from 'sprof';
146
146
  ## 🧪 Разработка
147
147
 
148
148
  ```bash
149
- npm run test # vitest (234 теста, 35 файлов)
149
+ npm run test # vitest (66 файлов, 458 тестов)
150
150
  npm run lint # eslint src --fix
151
151
  npm run lint:check # eslint src (без мутаций, для CI)
152
152
  npm run build # сборка dist (ESM + UMD + d.ts)
153
153
  npm run check:dist # проверка бандла: нет resolveComponent("Q…")
154
+ npm run check:size # size-limit (бюджеты бандла)
155
+ npm run test:e2e # Playwright-смоук (e2e/app)
154
156
  npm run storybook # Storybook (документация компонентов)
155
157
  ```
156
158
 
@@ -163,8 +165,9 @@ npm run storybook # Storybook (документация компонентов
163
165
 
164
166
  Либо GitHub Actions `publish.yml` (workflow_dispatch, OTP-инпут).
165
167
 
166
- После публикации обновить клиентов: `npm i sprof@<версия> --save` в каждом клиенте
167
- (rdkb ×4, portal, pros), `quasar build` ×6, `make deploy` ×3.
168
+ После публикации обновить клиентов: `npm run update:clients`
169
+ `scripts/update-clients-sprof.sh` (npm ×8 + пересборка dev-контейнеров; rdkb ×5,
170
+ portal, pros, ferma).
168
171
 
169
172
  ### Генерация типов GlobalComponents
170
173
 
@@ -0,0 +1,70 @@
1
+ /**
2
+ * C3.3 (0.4.0): конфигурация auto-import для клиентов.
3
+ *
4
+ * Подключается через подпуть `sprof/auto-import`:
5
+ *
6
+ * ```ts
7
+ * // vite.config.ts клиента
8
+ * import AutoImport from 'unplugin-auto-import/vite';
9
+ * import Components from 'unplugin-vue-components/vite';
10
+ * import { SprofResolver, sprofAutoImports } from 'sprof/auto-import';
11
+ *
12
+ * export default defineConfig({
13
+ * plugins: [
14
+ * AutoImport({
15
+ * // PF/PFM/useCrud/useFilters/usePagination — без ручных импортов
16
+ * imports: [sprofAutoImports],
17
+ * }),
18
+ * Components({
19
+ * // <PButton>, <PSelect>, ... — named-импорты из 'sprof'
20
+ * resolvers: [SprofResolver()],
21
+ * }),
22
+ * ],
23
+ * });
24
+ * ```
25
+ *
26
+ * ⚠️ Модуль намеренно не импортирует ничего в рантайме (только строки) —
27
+ * его можно использовать в любом vite-конфиге без бандла sprof.
28
+ */
29
+ /** Идентификаторы, которые инжектит unplugin-auto-import */
30
+ export declare const sprofAutoImportNames: readonly ["PF", "PFM", "useCrud", "useFilters", "usePagination"];
31
+ export interface SprofAutoImportsPreset {
32
+ from: string;
33
+ imports: string[];
34
+ }
35
+ /**
36
+ * Inline-пресет для unplugin-auto-import (`imports`): PF/PFM (ядерные
37
+ * namespace'ы) и композаблы useCrud/useFilters/usePagination.
38
+ *
39
+ * ```ts
40
+ * AutoImport({ imports: [sprofAutoImports] })
41
+ * ```
42
+ */
43
+ export declare const sprofAutoImports: SprofAutoImportsPreset;
44
+ export interface SprofResolverOptions {
45
+ /** Префикс компонентов (по умолчанию 'P' — все атомы/молекулы P-*) */
46
+ prefix?: string;
47
+ /** Откуда импортировать (по умолчанию 'sprof' — корневые экспорты) */
48
+ from?: string;
49
+ }
50
+ export interface SprofResolveResult {
51
+ name: string;
52
+ from: string;
53
+ }
54
+ export interface SprofComponentResolver {
55
+ type: 'component';
56
+ resolve: (name: string) => SprofResolveResult | undefined;
57
+ }
58
+ /**
59
+ * Resolver для unplugin-vue-components: `<P*>` → named-импорт из 'sprof'.
60
+ * Все P-компоненты экспортируются из корня пакета, поэтому резолвер
61
+ * тривиален — но избавляет клиентов от глобальной регистрации
62
+ * (servicesComponents.install) и от конфликтов имён с локальными
63
+ * компонентами (unplugin резолвит явный импорт вместо fallback-тегов).
64
+ *
65
+ * ```ts
66
+ * Components({ resolvers: [SprofResolver()] })
67
+ * ```
68
+ */
69
+ export declare function SprofResolver(options?: SprofResolverOptions): SprofComponentResolver;
70
+ export default sprofAutoImports;
@@ -0,0 +1,20 @@
1
+ const e = ["PF", "PFM", "useCrud", "useFilters", "usePagination"], f = {
2
+ from: "sprof",
3
+ imports: [...e]
4
+ };
5
+ function p(r = {}) {
6
+ const t = r.prefix ?? "P", s = r.from ?? "sprof";
7
+ return {
8
+ type: "component",
9
+ resolve: (o) => {
10
+ if (o.startsWith(t))
11
+ return { name: o, from: s };
12
+ }
13
+ };
14
+ }
15
+ export {
16
+ p as SprofResolver,
17
+ f as default,
18
+ e as sprofAutoImportNames,
19
+ f as sprofAutoImports
20
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -3,6 +3,11 @@ declare const _default: {
3
3
  title: string;
4
4
  component: {
5
5
  new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<globalThis.ExtractPropTypes<{
6
+ modelValue: {
7
+ type: BooleanConstructor;
8
+ default: boolean;
9
+ required: false;
10
+ };
6
11
  persistent: {
7
12
  type: BooleanConstructor;
8
13
  default: boolean;
@@ -19,17 +24,20 @@ declare const _default: {
19
24
  type: StringConstructor;
20
25
  default: string;
21
26
  };
22
- modelValue: {
23
- type: globalThis.PropType<boolean>;
24
- };
25
27
  }>> & Readonly<{
26
28
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
27
- }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
29
+ }>, {
30
+ show: () => void;
31
+ hide: () => void;
32
+ toggle: () => void;
33
+ opened: globalThis.Ref<boolean, boolean>;
34
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
28
35
  "update:modelValue": (value: boolean) => any;
29
36
  }, import('vue').PublicProps, {
30
37
  persistent: boolean;
31
38
  transitionShow: string;
32
39
  transitionHide: string;
40
+ modelValue: boolean;
33
41
  maximized: boolean;
34
42
  }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
35
43
  P: {};
@@ -39,6 +47,11 @@ declare const _default: {
39
47
  M: {};
40
48
  Defaults: {};
41
49
  }, Readonly<globalThis.ExtractPropTypes<{
50
+ modelValue: {
51
+ type: BooleanConstructor;
52
+ default: boolean;
53
+ required: false;
54
+ };
42
55
  persistent: {
43
56
  type: BooleanConstructor;
44
57
  default: boolean;
@@ -55,21 +68,29 @@ declare const _default: {
55
68
  type: StringConstructor;
56
69
  default: string;
57
70
  };
58
- modelValue: {
59
- type: globalThis.PropType<boolean>;
60
- };
61
71
  }>> & Readonly<{
62
72
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
63
- }>, {}, {}, {}, {}, {
73
+ }>, {
74
+ show: () => void;
75
+ hide: () => void;
76
+ toggle: () => void;
77
+ opened: globalThis.Ref<boolean, boolean>;
78
+ }, {}, {}, {}, {
64
79
  persistent: boolean;
65
80
  transitionShow: string;
66
81
  transitionHide: string;
82
+ modelValue: boolean;
67
83
  maximized: boolean;
68
84
  }>;
69
85
  __isFragment?: undefined;
70
86
  __isTeleport?: undefined;
71
87
  __isSuspense?: undefined;
72
88
  } & import('vue').ComponentOptionsBase<Readonly<globalThis.ExtractPropTypes<{
89
+ modelValue: {
90
+ type: BooleanConstructor;
91
+ default: boolean;
92
+ required: false;
93
+ };
73
94
  persistent: {
74
95
  type: BooleanConstructor;
75
96
  default: boolean;
@@ -86,17 +107,20 @@ declare const _default: {
86
107
  type: StringConstructor;
87
108
  default: string;
88
109
  };
89
- modelValue: {
90
- type: globalThis.PropType<boolean>;
91
- };
92
110
  }>> & Readonly<{
93
111
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
94
- }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
112
+ }>, {
113
+ show: () => void;
114
+ hide: () => void;
115
+ toggle: () => void;
116
+ opened: globalThis.Ref<boolean, boolean>;
117
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
95
118
  "update:modelValue": (value: boolean) => any;
96
119
  }, string, {
97
120
  persistent: boolean;
98
121
  transitionShow: string;
99
122
  transitionHide: string;
123
+ modelValue: boolean;
100
124
  maximized: boolean;
101
125
  }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
102
126
  $slots: {
@@ -129,6 +153,11 @@ declare const _default: {
129
153
  export default _default;
130
154
  export declare const Default: StoryFn<{
131
155
  new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<globalThis.ExtractPropTypes<{
156
+ modelValue: {
157
+ type: BooleanConstructor;
158
+ default: boolean;
159
+ required: false;
160
+ };
132
161
  persistent: {
133
162
  type: BooleanConstructor;
134
163
  default: boolean;
@@ -145,17 +174,20 @@ export declare const Default: StoryFn<{
145
174
  type: StringConstructor;
146
175
  default: string;
147
176
  };
148
- modelValue: {
149
- type: globalThis.PropType<boolean>;
150
- };
151
177
  }>> & Readonly<{
152
178
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
153
- }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
179
+ }>, {
180
+ show: () => void;
181
+ hide: () => void;
182
+ toggle: () => void;
183
+ opened: globalThis.Ref<boolean, boolean>;
184
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
154
185
  "update:modelValue": (value: boolean) => any;
155
186
  }, import('vue').PublicProps, {
156
187
  persistent: boolean;
157
188
  transitionShow: string;
158
189
  transitionHide: string;
190
+ modelValue: boolean;
159
191
  maximized: boolean;
160
192
  }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
161
193
  P: {};
@@ -165,6 +197,11 @@ export declare const Default: StoryFn<{
165
197
  M: {};
166
198
  Defaults: {};
167
199
  }, Readonly<globalThis.ExtractPropTypes<{
200
+ modelValue: {
201
+ type: BooleanConstructor;
202
+ default: boolean;
203
+ required: false;
204
+ };
168
205
  persistent: {
169
206
  type: BooleanConstructor;
170
207
  default: boolean;
@@ -181,21 +218,29 @@ export declare const Default: StoryFn<{
181
218
  type: StringConstructor;
182
219
  default: string;
183
220
  };
184
- modelValue: {
185
- type: globalThis.PropType<boolean>;
186
- };
187
221
  }>> & Readonly<{
188
222
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
189
- }>, {}, {}, {}, {}, {
223
+ }>, {
224
+ show: () => void;
225
+ hide: () => void;
226
+ toggle: () => void;
227
+ opened: globalThis.Ref<boolean, boolean>;
228
+ }, {}, {}, {}, {
190
229
  persistent: boolean;
191
230
  transitionShow: string;
192
231
  transitionHide: string;
232
+ modelValue: boolean;
193
233
  maximized: boolean;
194
234
  }>;
195
235
  __isFragment?: undefined;
196
236
  __isTeleport?: undefined;
197
237
  __isSuspense?: undefined;
198
238
  } & import('vue').ComponentOptionsBase<Readonly<globalThis.ExtractPropTypes<{
239
+ modelValue: {
240
+ type: BooleanConstructor;
241
+ default: boolean;
242
+ required: false;
243
+ };
199
244
  persistent: {
200
245
  type: BooleanConstructor;
201
246
  default: boolean;
@@ -212,17 +257,20 @@ export declare const Default: StoryFn<{
212
257
  type: StringConstructor;
213
258
  default: string;
214
259
  };
215
- modelValue: {
216
- type: globalThis.PropType<boolean>;
217
- };
218
260
  }>> & Readonly<{
219
261
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
220
- }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
262
+ }>, {
263
+ show: () => void;
264
+ hide: () => void;
265
+ toggle: () => void;
266
+ opened: globalThis.Ref<boolean, boolean>;
267
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
221
268
  "update:modelValue": (value: boolean) => any;
222
269
  }, string, {
223
270
  persistent: boolean;
224
271
  transitionShow: string;
225
272
  transitionHide: string;
273
+ modelValue: boolean;
226
274
  maximized: boolean;
227
275
  }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
228
276
  $slots: {
@@ -1,4 +1,9 @@
1
1
  declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<globalThis.ExtractPropTypes<{
2
+ modelValue: {
3
+ type: BooleanConstructor;
4
+ default: boolean;
5
+ required: false;
6
+ };
2
7
  persistent: {
3
8
  type: BooleanConstructor;
4
9
  default: boolean;
@@ -15,12 +20,19 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<gl
15
20
  type: StringConstructor;
16
21
  default: string;
17
22
  };
18
- modelValue: {
19
- type: globalThis.PropType<boolean>;
20
- };
21
- }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
23
+ }>, {
24
+ show: () => void;
25
+ hide: () => void;
26
+ toggle: () => void;
27
+ opened: globalThis.Ref<boolean, boolean>;
28
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
22
29
  "update:modelValue": (value: boolean) => any;
23
30
  }, string, import('vue').PublicProps, Readonly<globalThis.ExtractPropTypes<{
31
+ modelValue: {
32
+ type: BooleanConstructor;
33
+ default: boolean;
34
+ required: false;
35
+ };
24
36
  persistent: {
25
37
  type: BooleanConstructor;
26
38
  default: boolean;
@@ -37,15 +49,13 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<gl
37
49
  type: StringConstructor;
38
50
  default: string;
39
51
  };
40
- modelValue: {
41
- type: globalThis.PropType<boolean>;
42
- };
43
52
  }>> & Readonly<{
44
53
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
45
54
  }>, {
46
55
  persistent: boolean;
47
56
  transitionShow: string;
48
57
  transitionHide: string;
58
+ modelValue: boolean;
49
59
  maximized: boolean;
50
60
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>, {
51
61
  default?(_: {}): any;
@@ -60,6 +60,11 @@ declare const _default: {
60
60
  "onUpdate:modelValue"?: ((value: string | number | null | undefined) => any) | undefined;
61
61
  }>, {
62
62
  focus: () => void;
63
+ blur: () => void;
64
+ select: () => void;
65
+ getNativeElement: () => HTMLInputElement | undefined;
66
+ validate: () => Promise<boolean>;
67
+ resetValidation: () => void;
63
68
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
64
69
  clear: (...args: any[]) => void;
65
70
  input: (...args: any[]) => void;
@@ -142,6 +147,11 @@ declare const _default: {
142
147
  "onUpdate:modelValue"?: ((value: string | number | null | undefined) => any) | undefined;
143
148
  }>, {
144
149
  focus: () => void;
150
+ blur: () => void;
151
+ select: () => void;
152
+ getNativeElement: () => HTMLInputElement | undefined;
153
+ validate: () => Promise<boolean>;
154
+ resetValidation: () => void;
145
155
  }, {}, {}, {}, {
146
156
  color: string;
147
157
  label: string;
@@ -213,6 +223,11 @@ declare const _default: {
213
223
  "onUpdate:modelValue"?: ((value: string | number | null | undefined) => any) | undefined;
214
224
  }>, {
215
225
  focus: () => void;
226
+ blur: () => void;
227
+ select: () => void;
228
+ getNativeElement: () => HTMLInputElement | undefined;
229
+ validate: () => Promise<boolean>;
230
+ resetValidation: () => void;
216
231
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
217
232
  clear: (...args: any[]) => void;
218
233
  input: (...args: any[]) => void;
@@ -363,6 +378,11 @@ export declare const Default: StoryFn<{
363
378
  "onUpdate:modelValue"?: ((value: string | number | null | undefined) => any) | undefined;
364
379
  }>, {
365
380
  focus: () => void;
381
+ blur: () => void;
382
+ select: () => void;
383
+ getNativeElement: () => HTMLInputElement | undefined;
384
+ validate: () => Promise<boolean>;
385
+ resetValidation: () => void;
366
386
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
367
387
  clear: (...args: any[]) => void;
368
388
  input: (...args: any[]) => void;
@@ -445,6 +465,11 @@ export declare const Default: StoryFn<{
445
465
  "onUpdate:modelValue"?: ((value: string | number | null | undefined) => any) | undefined;
446
466
  }>, {
447
467
  focus: () => void;
468
+ blur: () => void;
469
+ select: () => void;
470
+ getNativeElement: () => HTMLInputElement | undefined;
471
+ validate: () => Promise<boolean>;
472
+ resetValidation: () => void;
448
473
  }, {}, {}, {}, {
449
474
  color: string;
450
475
  label: string;
@@ -516,6 +541,11 @@ export declare const Default: StoryFn<{
516
541
  "onUpdate:modelValue"?: ((value: string | number | null | undefined) => any) | undefined;
517
542
  }>, {
518
543
  focus: () => void;
544
+ blur: () => void;
545
+ select: () => void;
546
+ getNativeElement: () => HTMLInputElement | undefined;
547
+ validate: () => Promise<boolean>;
548
+ resetValidation: () => void;
519
549
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
520
550
  clear: (...args: any[]) => void;
521
551
  input: (...args: any[]) => void;
@@ -1,5 +1,12 @@
1
1
  import { QInput as QInputType, ValidationRule } from 'quasar';
2
2
  declare function focus(): void;
3
+ declare function blur(): void;
4
+ declare function select(): void;
5
+ declare function getNativeElement(): HTMLInputElement | undefined;
6
+ /** Прогнать правила поля (defineExpose-API, 0.4.0); true — валидно */
7
+ declare function validate(): Promise<boolean>;
8
+ /** Сбросить состояние валидации поля */
9
+ declare function resetValidation(): void;
3
10
  declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<globalThis.ExtractPropTypes<{
4
11
  label: {
5
12
  type: StringConstructor;
@@ -51,6 +58,11 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<gl
51
58
  };
52
59
  }>, {
53
60
  focus: typeof focus;
61
+ blur: typeof blur;
62
+ select: typeof select;
63
+ getNativeElement: typeof getNativeElement;
64
+ validate: typeof validate;
65
+ resetValidation: typeof resetValidation;
54
66
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
55
67
  clear: (...args: any[]) => void;
56
68
  input: (...args: any[]) => void;
@@ -115,8 +115,8 @@ declare const _default: {
115
115
  margin: string;
116
116
  disabled: boolean;
117
117
  rules: import('quasar').ValidationRule[];
118
- min: number;
119
118
  max: number;
119
+ min: number;
120
120
  step: number;
121
121
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
122
122
  tags: string[];
@@ -114,8 +114,8 @@ declare const _default: import('vue').DefineComponent<globalThis.ExtractPropType
114
114
  margin: string;
115
115
  disabled: boolean;
116
116
  rules: ValidationRule[];
117
- min: number;
118
117
  max: number;
118
+ min: number;
119
119
  step: number;
120
120
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
121
121
  export default _default;