sprof 1.13.0 → 1.15.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.
|
@@ -1,5 +1,21 @@
|
|
|
1
|
-
import { NavigationGuardNext } from 'vue-router';
|
|
1
|
+
import { NavigationGuard, NavigationGuardNext } from 'vue-router';
|
|
2
|
+
/**
|
|
3
|
+
* Минимальный контракт Keycloak-хелпера клиента (`src/helpers/auth`).
|
|
4
|
+
* Структурный тип — чтобы библиотека не зависела от конкретной реализации.
|
|
5
|
+
*/
|
|
6
|
+
export interface KeycloakAuth {
|
|
7
|
+
isReady: () => boolean;
|
|
8
|
+
init: () => Promise<unknown>;
|
|
9
|
+
isAuth: () => boolean;
|
|
10
|
+
login: (redirectUri: string) => Promise<unknown>;
|
|
11
|
+
}
|
|
2
12
|
export default abstract class RouterGuard {
|
|
3
|
-
|
|
4
|
-
static
|
|
13
|
+
/** Пропускающий guard: актуализирует статус и передаёт навигацию дальше. */
|
|
14
|
+
static Auth(next?: NavigationGuardNext): void;
|
|
15
|
+
/**
|
|
16
|
+
* Реальный Keycloak-guard: неавторизованного уводит на форму входа,
|
|
17
|
+
* запоминая исходный маршрут в `sessionStorage.auth_redirect`.
|
|
18
|
+
* Регистрируется в `router/index.ts` через `beforeEach`.
|
|
19
|
+
*/
|
|
20
|
+
static Keycloak(auth: KeycloakAuth): NavigationGuard;
|
|
5
21
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -19,6 +19,16 @@ interface Props {
|
|
|
19
19
|
saving?: boolean;
|
|
20
20
|
/** Для `select`/`enum` — варианты выбора. */
|
|
21
21
|
options?: IOption[];
|
|
22
|
+
/**
|
|
23
|
+
* Для `select`/`enum` с ТЯЖЁЛЫМ справочником (К3/Т8): серверный поиск.
|
|
24
|
+
* Если задан — пикер НЕ фильтрует `options` в клиенте, а зовёт `search(query)`
|
|
25
|
+
* (с дебаунсом), а `options` — результат запроса. Без него поведение прежнее.
|
|
26
|
+
*/
|
|
27
|
+
search?: (query: string) => void | Promise<void>;
|
|
28
|
+
/** Идёт загрузка вариантов (для `search`) — пикер показывает спиннер. */
|
|
29
|
+
optionsLoading?: boolean;
|
|
30
|
+
/** Задержка дебаунса `search`, мс. */
|
|
31
|
+
searchDebounce?: number;
|
|
22
32
|
/** Текст, когда значение пустое. */
|
|
23
33
|
emptyText?: string;
|
|
24
34
|
/** Оконный редактор текста — многострочный (`textarea`). */
|
|
@@ -38,6 +48,7 @@ declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, imp
|
|
|
38
48
|
}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
|
|
39
49
|
onCommit?: ((value: unknown) => any) | undefined;
|
|
40
50
|
}>, {
|
|
51
|
+
search: (query: string) => void | Promise<void>;
|
|
41
52
|
label: string;
|
|
42
53
|
options: IOption[];
|
|
43
54
|
mask: string;
|
|
@@ -50,6 +61,8 @@ declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, imp
|
|
|
50
61
|
saving: boolean;
|
|
51
62
|
displayValue: string | null;
|
|
52
63
|
editable: boolean;
|
|
64
|
+
optionsLoading: boolean;
|
|
65
|
+
searchDebounce: number;
|
|
53
66
|
emptyText: string;
|
|
54
67
|
unit: string;
|
|
55
68
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|