@endge/utils 0.24.13 → 0.24.14
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/dist/collection/RingBuffer.d.ts +12 -0
- package/dist/collection/collection.d.ts +51 -0
- package/dist/collection/collection.types.d.ts +35 -0
- package/dist/collection/indexed-collection.d.ts +140 -0
- package/dist/composable/useCookie.d.ts +1 -0
- package/dist/database/PayloadHttpClient.d.ts +13 -0
- package/dist/events/EventBus.d.ts +117 -0
- package/dist/events/Subscribable.d.ts +31 -0
- package/dist/execute/NamedExecutor.d.ts +39 -0
- package/dist/execute/delay-executor.d.ts +31 -0
- package/dist/index.d.ts +42 -1320
- package/dist/serialize/Serialize.d.ts +14 -0
- package/dist/serialize/decorators/json.d.ts +10 -0
- package/dist/serialize/decorators/jsonString.d.ts +1 -0
- package/dist/serialize/decorators/onDeserialized.d.ts +2 -0
- package/dist/serialize/decorators/script.d.ts +10 -0
- package/dist/serialize/decorators/typeMap.d.ts +55 -0
- package/dist/serialize/decorators/typeRecord.d.ts +59 -0
- package/dist/serialize/useStorageDebounced.d.ts +2 -0
- package/dist/shared/serialize/decorator.d.ts +15 -0
- package/dist/shared/serialize/parse.d.ts +3 -0
- package/dist/shared/types/getter-fn.d.ts +3 -0
- package/dist/shared/types/maybe.d.ts +2 -0
- package/dist/shared/utils/compare.d.ts +1 -0
- package/dist/shared/utils/generate.d.ts +2 -0
- package/dist/shared/utils/keyboard.d.ts +9 -0
- package/dist/shared/utils/text.d.ts +1 -0
- package/dist/shared/utils/time.d.ts +41 -0
- package/dist/tools/compare.d.ts +1 -0
- package/dist/tools/console.d.ts +4 -0
- package/dist/tools/debug.d.ts +2 -0
- package/dist/tools/generate.d.ts +1 -0
- package/dist/tools/geometry.d.ts +15 -0
- package/dist/tools/hotkeys.d.ts +56 -0
- package/dist/tools/keyboard.d.ts +21 -0
- package/dist/tools/logs.d.ts +176 -0
- package/dist/tools/reflect.d.ts +12 -0
- package/dist/tools/state.d.ts +1 -0
- package/dist/tools/system-clock.d.ts +14 -0
- package/dist/tools/text.d.ts +1 -0
- package/dist/tools/time.d.ts +1 -0
- package/dist/tools/tools.types.d.ts +101 -0
- package/dist/tooltip/TooltipRegistrator.d.ts +15 -0
- package/dist/tooltip/store.d.ts +29 -0
- package/dist/tooltip/tooltip.types.d.ts +10 -0
- package/dist/ui/tree.types.d.ts +7 -0
- package/dist/updates/SSEManager.d.ts +26 -0
- package/dist/updates/UPSMeter_Service.d.ts +8 -0
- package/package.json +6 -5
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Тип, обозначающий возможное отсутствие значения.
|
|
3
|
+
* Аналог Maybe<P> из функционального программирования.
|
|
4
|
+
*/
|
|
5
|
+
export type Maybe<T> = T | null | undefined;
|
|
6
|
+
/**
|
|
7
|
+
* Тип, обозначающий возможное значение null.
|
|
8
|
+
*/
|
|
9
|
+
export type Nullable<T> = T | null;
|
|
10
|
+
/**
|
|
11
|
+
* Тип, обозначающий возможное значение undefined.
|
|
12
|
+
*/
|
|
13
|
+
export type Undefinable<T> = T | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* Тип конструктора для класса.
|
|
16
|
+
* Используется, например, в DI-контейнерах или фабриках.
|
|
17
|
+
*/
|
|
18
|
+
export type Constructor<T = any> = new (...args: Array<any>) => T;
|
|
19
|
+
/**
|
|
20
|
+
* Частичный рекурсивный тип.
|
|
21
|
+
* Делает все поля и вложенные поля необязательными.
|
|
22
|
+
*/
|
|
23
|
+
export type DeepPartial<T> = {
|
|
24
|
+
[P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Тип, исключающий null и undefined.
|
|
28
|
+
*/
|
|
29
|
+
export type NonNullableStrict<T> = T extends null | undefined ? never : T;
|
|
30
|
+
/**
|
|
31
|
+
* Тип, позволяющий переопределить свойства в типе.
|
|
32
|
+
* Аналог расширения типов с заменой полей.
|
|
33
|
+
*/
|
|
34
|
+
export type Override<Base, Overrides> = Omit<Base, keyof Overrides> & Overrides;
|
|
35
|
+
/**
|
|
36
|
+
* Тип для асинхронной функции.
|
|
37
|
+
*/
|
|
38
|
+
export type AsyncFn<Args extends Array<any> = Array<any>, R = any> = (...args: Args) => Promise<R>;
|
|
39
|
+
/**
|
|
40
|
+
* Тип, представляющий значение или промис значения.
|
|
41
|
+
*/
|
|
42
|
+
export type Awaitable<T> = T | Promise<T>;
|
|
43
|
+
/**
|
|
44
|
+
* Тип, представляющий функцию без аргументов и без возвращаемого значения.
|
|
45
|
+
*/
|
|
46
|
+
export type VoidFn = () => void;
|
|
47
|
+
/**
|
|
48
|
+
* Backward-compatible alias used by legacy packages.
|
|
49
|
+
*/
|
|
50
|
+
export type VoidFunction = VoidFn;
|
|
51
|
+
/**
|
|
52
|
+
* Тип, обозначающий словарь значений.
|
|
53
|
+
*/
|
|
54
|
+
export type Dictionary<T = any> = Record<string, T>;
|
|
55
|
+
/**
|
|
56
|
+
* Backward-compatible loose object record.
|
|
57
|
+
*/
|
|
58
|
+
export type AnyRecord = Record<string, any>;
|
|
59
|
+
/**
|
|
60
|
+
* Тип, обозначающий функцию обратного вызова (callback).
|
|
61
|
+
*/
|
|
62
|
+
export type Callback<T = void> = (arg: T) => void;
|
|
63
|
+
/**
|
|
64
|
+
* Тип с возможностью `null`, `undefined` или любого значения.
|
|
65
|
+
*/
|
|
66
|
+
export type Falsy = false | '' | 0 | null | undefined;
|
|
67
|
+
/**
|
|
68
|
+
* Тип, исключающий falsy-значения.
|
|
69
|
+
*/
|
|
70
|
+
export type Truthy<T> = T extends Falsy ? never : T;
|
|
71
|
+
/**
|
|
72
|
+
* Тип, объединяющий `P` или массив `P`.
|
|
73
|
+
*/
|
|
74
|
+
export type MaybeArray<T> = T | Array<T>;
|
|
75
|
+
/**
|
|
76
|
+
* Тип, возвращающий все ключи объекта, значения которых равны заданному типу.
|
|
77
|
+
*/
|
|
78
|
+
export type KeysWithType<T, U> = {
|
|
79
|
+
[K in keyof T]: T[K] extends U ? K : never;
|
|
80
|
+
}[keyof T];
|
|
81
|
+
/**
|
|
82
|
+
* Тип, помечающий, что значение может быть `never` или `void`, и его можно проигнорировать.
|
|
83
|
+
*/
|
|
84
|
+
export type Ignored = never | void;
|
|
85
|
+
/**
|
|
86
|
+
* Универсальный тип для одного или нескольких объектов.
|
|
87
|
+
*/
|
|
88
|
+
export type OneOrMany<T> = T | Array<T>;
|
|
89
|
+
/**
|
|
90
|
+
* Тип для активного состояния с вычисляемым значением.
|
|
91
|
+
*/
|
|
92
|
+
export type ActiveState<T> = {
|
|
93
|
+
value: T;
|
|
94
|
+
computed: T;
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Тип для глубокой частичной рекурсии.
|
|
98
|
+
*/
|
|
99
|
+
export type PartialDeep<T> = T extends (...args: Array<any>) => any ? T : T extends Array<infer U> ? Array<PartialDeep<U>> : T extends object ? {
|
|
100
|
+
[K in keyof T]?: PartialDeep<T[K]>;
|
|
101
|
+
} : T;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface TooltipRegistratorProps {
|
|
2
|
+
id?: string;
|
|
3
|
+
data?: unknown;
|
|
4
|
+
template?: unknown;
|
|
5
|
+
location?: unknown;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
maxWidth?: string;
|
|
8
|
+
customClass?: string;
|
|
9
|
+
justifyClass?: string;
|
|
10
|
+
slots?: {
|
|
11
|
+
default?: () => any;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export type TooltipRenderFunction = (tag: string, props?: Record<string, unknown>, children?: any) => any;
|
|
15
|
+
export declare function TooltipRegistrator(h: TooltipRenderFunction, props: TooltipRegistratorProps): any;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { TooltipInstance } from './tooltip.types';
|
|
2
|
+
export declare const useTooltipStore: import('pinia').StoreDefinition<"tooltip", Pick<{
|
|
3
|
+
tooltips: Record<string, TooltipInstance>;
|
|
4
|
+
activeId: import('vue').Ref<string | null, string | null>;
|
|
5
|
+
registerTooltip: (tt: Omit<TooltipInstance, "visible">) => void;
|
|
6
|
+
unregisterTooltip: (id: string) => void;
|
|
7
|
+
showTooltip: (id: string) => void;
|
|
8
|
+
hideTooltip: (id: string) => void;
|
|
9
|
+
setActiveTooltipId: (id: string) => void;
|
|
10
|
+
clearActiveTooltipId: () => void;
|
|
11
|
+
}, "tooltips" | "activeId">, Pick<{
|
|
12
|
+
tooltips: Record<string, TooltipInstance>;
|
|
13
|
+
activeId: import('vue').Ref<string | null, string | null>;
|
|
14
|
+
registerTooltip: (tt: Omit<TooltipInstance, "visible">) => void;
|
|
15
|
+
unregisterTooltip: (id: string) => void;
|
|
16
|
+
showTooltip: (id: string) => void;
|
|
17
|
+
hideTooltip: (id: string) => void;
|
|
18
|
+
setActiveTooltipId: (id: string) => void;
|
|
19
|
+
clearActiveTooltipId: () => void;
|
|
20
|
+
}, never>, Pick<{
|
|
21
|
+
tooltips: Record<string, TooltipInstance>;
|
|
22
|
+
activeId: import('vue').Ref<string | null, string | null>;
|
|
23
|
+
registerTooltip: (tt: Omit<TooltipInstance, "visible">) => void;
|
|
24
|
+
unregisterTooltip: (id: string) => void;
|
|
25
|
+
showTooltip: (id: string) => void;
|
|
26
|
+
hideTooltip: (id: string) => void;
|
|
27
|
+
setActiveTooltipId: (id: string) => void;
|
|
28
|
+
clearActiveTooltipId: () => void;
|
|
29
|
+
}, "registerTooltip" | "unregisterTooltip" | "showTooltip" | "hideTooltip" | "setActiveTooltipId" | "clearActiveTooltipId">>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface TooltipInstance {
|
|
2
|
+
id: string;
|
|
3
|
+
content: string | (() => any);
|
|
4
|
+
activator: string;
|
|
5
|
+
visible: boolean;
|
|
6
|
+
active?: boolean;
|
|
7
|
+
position?: 'top' | 'bottom' | 'left' | 'right';
|
|
8
|
+
maxWidth?: string | number;
|
|
9
|
+
}
|
|
10
|
+
export declare const TooltipAttribute = "x-collection-tooltip-id";
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface SSEManagerOptions {
|
|
2
|
+
url: string;
|
|
3
|
+
retryInterval?: number;
|
|
4
|
+
headers?: Record<string, string>;
|
|
5
|
+
getToken?: () => string | undefined | Promise<string | undefined>;
|
|
6
|
+
onEvent: (data: any) => void;
|
|
7
|
+
onError?: (error: Error) => void;
|
|
8
|
+
onOpen?: () => void;
|
|
9
|
+
onClose?: () => void;
|
|
10
|
+
}
|
|
11
|
+
export declare class SSEManager {
|
|
12
|
+
private readonly _url;
|
|
13
|
+
private readonly _retryInterval;
|
|
14
|
+
private _abortController;
|
|
15
|
+
private _isConnected;
|
|
16
|
+
private _reconnectTimeout;
|
|
17
|
+
private readonly _options;
|
|
18
|
+
constructor(options: SSEManagerOptions);
|
|
19
|
+
start(): void;
|
|
20
|
+
stop(): void;
|
|
21
|
+
private _scheduleReconnect;
|
|
22
|
+
private _clearReconnect;
|
|
23
|
+
private _buildHeaders;
|
|
24
|
+
private _connect;
|
|
25
|
+
get isConnected(): boolean;
|
|
26
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@endge/utils",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.24.
|
|
4
|
+
"version": "0.24.14",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "./dist/utils.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
@@ -40,12 +40,13 @@
|
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@vitejs/plugin-vue": "^5.2.1",
|
|
43
|
-
"@vue/
|
|
43
|
+
"@vue/language-core": "^3.3.11",
|
|
44
|
+
"@vue/tsconfig": "^0.9.1",
|
|
44
45
|
"rimraf": "^6.0.1",
|
|
45
|
-
"typescript": "~
|
|
46
|
+
"typescript": "~6.0.3",
|
|
47
|
+
"unplugin-dts": "^1.0.3",
|
|
46
48
|
"vite": "^6.1.0",
|
|
47
|
-
"vite-plugin-dts": "^4.5.0",
|
|
48
49
|
"vitest": "^3.2.4",
|
|
49
|
-
"vue-tsc": "^
|
|
50
|
+
"vue-tsc": "^3.3.11"
|
|
50
51
|
}
|
|
51
52
|
}
|