nb-js-client 0.0.33 → 0.0.34
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/package.json +2 -2
- package/dist/api/auth-api.service.d.ts +0 -20
- package/dist/api/connections-api.service.d.ts +0 -20
- package/dist/api/discovery-api.service.d.ts +0 -8
- package/dist/api/divide-api.service.d.ts +0 -19
- package/dist/api/extensions-api.service.d.ts +0 -33
- package/dist/api/extensions-external-api.service.d.ts +0 -14
- package/dist/api/fca-api.service.d.ts +0 -21
- package/dist/api/gateway-api.service.d.ts +0 -25
- package/dist/api/group-api.service.d.ts +0 -20
- package/dist/api/index.d.ts +0 -22
- package/dist/api/license-api.service.d.ts +0 -13
- package/dist/api/links-api.service.d.ts +0 -18
- package/dist/api/logstash-api.service.d.ts +0 -15
- package/dist/api/notification-api.service.d.ts +0 -25
- package/dist/api/role-api.service.d.ts +0 -20
- package/dist/api/share-api.service.d.ts +0 -15
- package/dist/api/storage-element-api.service.d.ts +0 -62
- package/dist/api/storage-files-api.service.d.ts +0 -23
- package/dist/api/storage-instance-api.service.d.ts +0 -7
- package/dist/api/storage-share-api.service.d.ts +0 -11
- package/dist/api/storage-trash-api.service.d.ts +0 -11
- package/dist/api/user-api.service.d.ts +0 -57
- package/dist/api/version-api.service.d.ts +0 -19
- package/dist/bundle.cjs.js +0 -1
- package/dist/bundle.esm.js +0 -1
- package/dist/classes/client.d.ts +0 -41
- package/dist/classes/index.d.ts +0 -3
- package/dist/classes/rest.d.ts +0 -24
- package/dist/classes/token-update.d.ts +0 -10
- package/dist/index.d.ts +0 -1306
- package/dist/tools/apply-interceptors.d.ts +0 -4
- package/dist/tools/get-cookie-value.d.ts +0 -1
- package/dist/tools/index.d.ts +0 -4
- package/dist/tools/make-url-params.d.ts +0 -1
- package/dist/tools/normalize-headers.d.ts +0 -1
- package/dist/types/access-rights.d.ts +0 -36
- package/dist/types/access-token.d.ts +0 -15
- package/dist/types/auth.d.ts +0 -9
- package/dist/types/base.d.ts +0 -48
- package/dist/types/connection.d.ts +0 -36
- package/dist/types/discovery.d.ts +0 -15
- package/dist/types/divide.d.ts +0 -82
- package/dist/types/extension.d.ts +0 -80
- package/dist/types/index.d.ts +0 -19
- package/dist/types/interceptor.d.ts +0 -4
- package/dist/types/license.d.ts +0 -23
- package/dist/types/lock-screen.d.ts +0 -4
- package/dist/types/notification.d.ts +0 -90
- package/dist/types/permission.d.ts +0 -10
- package/dist/types/request.d.ts +0 -44
- package/dist/types/restriction.d.ts +0 -9
- package/dist/types/setting.d.ts +0 -58
- package/dist/types/storage-trash.d.ts +0 -25
- package/dist/types/storage.d.ts +0 -107
- package/dist/types/user-log.d.ts +0 -9
- package/dist/types/user.d.ts +0 -74
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nb-js-client",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.34",
|
|
4
4
|
"main": "dist/bundle.cjs.js",
|
|
5
5
|
"module": "dist/bundle.esm.js",
|
|
6
6
|
"files": [
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"@rollup/plugin-babel": "^6.0.4",
|
|
21
21
|
"@rollup/plugin-commonjs": "^28.0.1",
|
|
22
|
-
"@rollup/plugin-node-resolve": "^15.3.
|
|
22
|
+
"@rollup/plugin-node-resolve": "^15.3.0",
|
|
23
23
|
"@rollup/plugin-terser": "^0.4.4",
|
|
24
24
|
"@rollup/plugin-typescript": "^12.1.1",
|
|
25
25
|
"@types/node": "^22.10.0",
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { AuthToken, AuthType } from '../types';
|
|
3
|
-
export declare class AuthApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
info(): Promise<AuthType>;
|
|
7
|
-
login(data: RequestAuthSettingsParams): Promise<AuthToken>;
|
|
8
|
-
ldapLogin(data: RequestAuthSettingsParams): Promise<AuthToken>;
|
|
9
|
-
updateToken(data: RequestAuthTokenParams): Promise<AuthToken>;
|
|
10
|
-
logout(): Promise<void>;
|
|
11
|
-
}
|
|
12
|
-
export interface RequestAuthSettingsParams {
|
|
13
|
-
login: string;
|
|
14
|
-
password: string;
|
|
15
|
-
is_remember: boolean;
|
|
16
|
-
}
|
|
17
|
-
export interface RequestAuthTokenParams extends AuthToken {
|
|
18
|
-
with_cookie?: boolean;
|
|
19
|
-
path?: string;
|
|
20
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { Connection, ConnectionGroup, RequestBaseParams, ResponseItem, ResponseList } from '../types';
|
|
3
|
-
export declare class ConnectionsApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
list(params: RequestConnectionParams): Promise<ResponseList<Connection>>;
|
|
7
|
-
get(id: number): Promise<ResponseItem<Connection>>;
|
|
8
|
-
update(id: number, data: ConnectionCreateParams): Promise<ResponseItem<Connection>>;
|
|
9
|
-
delete(id: number): Promise<void>;
|
|
10
|
-
create(data: ConnectionCreateParams): Promise<ResponseItem<Connection>>;
|
|
11
|
-
dashboard(params: RequestConnectionParams): Promise<ResponseList<Connection>>;
|
|
12
|
-
}
|
|
13
|
-
export interface RequestConnectionParams extends RequestBaseParams {
|
|
14
|
-
id?: number[];
|
|
15
|
-
name?: string | null;
|
|
16
|
-
group_name?: ConnectionGroup;
|
|
17
|
-
is_divided?: boolean;
|
|
18
|
-
type?: string;
|
|
19
|
-
}
|
|
20
|
-
export type ConnectionCreateParams = Omit<Connection, 'group_name'>;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { ResponseList } from '../types';
|
|
3
|
-
import { Discovery } from '../types/discovery';
|
|
4
|
-
export declare class DiscoveryApiService {
|
|
5
|
-
private client;
|
|
6
|
-
constructor(client: Client);
|
|
7
|
-
discovery(params?: any): Promise<ResponseList<Discovery>>;
|
|
8
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { DivideMode, DivideResourceType, DivideResponseList, DivideScope, PermissionType, RequestUserDivideParams, ResponseItem, ResponseList, RestrictionModeKey, UnionRestriction, UserDivide } from '../types';
|
|
3
|
-
export declare class DivideApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
divideDelete(service: DivideScope, id: number): Promise<void>;
|
|
7
|
-
divideDeleteAll(service: DivideScope, resource: DivideResourceType, access_mode: PermissionType, is_to_user_group: boolean): Promise<void>;
|
|
8
|
-
divideChange(service: DivideScope, id: number, access_mode: PermissionType): Promise<UserDivide>;
|
|
9
|
-
divideCreate(service: DivideScope, resource: DivideResourceType, id: number, access_mode: PermissionType, key: DivideMode): Promise<ResponseItem<UserDivide>>;
|
|
10
|
-
divideUsers(service: DivideScope, resource: DivideResourceType, params: RequestUserDivideParams): Promise<DivideResponseList>;
|
|
11
|
-
getRestriction(id: number): Promise<UnionRestriction>;
|
|
12
|
-
restrictionSize(key: string | number, modeKey: RestrictionModeKey): Promise<number>;
|
|
13
|
-
restrictions(params?: any): Promise<ResponseList<UserDivide>>;
|
|
14
|
-
restrictionsChange(token: number, data: {
|
|
15
|
-
status: any;
|
|
16
|
-
comment: string;
|
|
17
|
-
}): Promise<ResponseList<UserDivide>>;
|
|
18
|
-
private makeParam;
|
|
19
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { Extension, ExtensionDefault, ExtensionFileMode, HttpEvent, OnUploadProgress, RequestBaseParams, ResponseItem, ResponseList, SettingValue, StorageElementType } from '../types';
|
|
3
|
-
export declare class ExtensionsApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
getSetting(uniqKey: string): Promise<SettingValue[]>;
|
|
7
|
-
setSetting(uniqKey: string, params: SettingValue[]): Promise<void>;
|
|
8
|
-
deleteSetting(uniqKey: string): Promise<void>;
|
|
9
|
-
get(id: number): Promise<ResponseItem<Extension>>;
|
|
10
|
-
getByKey(uniqKey: string): Promise<ResponseItem<Extension | null>>;
|
|
11
|
-
getDefault(ext_code?: string[]): Promise<ResponseList<ExtensionDefault>>;
|
|
12
|
-
setDefault(ext_code: string, ext_uniq_key: string): Promise<ExtensionDefault>;
|
|
13
|
-
checkUpdates(): Promise<void>;
|
|
14
|
-
updateVersion(id: number, version: string): Promise<Extension>;
|
|
15
|
-
list(params?: ExtensionListParams): Promise<ResponseList<Extension & {
|
|
16
|
-
with_settings: boolean;
|
|
17
|
-
}>>;
|
|
18
|
-
delete(id: number, name: string): Promise<void>;
|
|
19
|
-
upload(onProgress: OnUploadProgress, file: File): {
|
|
20
|
-
promise: Promise<HttpEvent<ResponseItem<Extension>>>;
|
|
21
|
-
abort: () => void;
|
|
22
|
-
};
|
|
23
|
-
install(uniq_key: string, version: string): Promise<any>;
|
|
24
|
-
}
|
|
25
|
-
export interface ExtensionListParams extends RequestBaseParams {
|
|
26
|
-
search?: string | null;
|
|
27
|
-
uniq_key?: string[];
|
|
28
|
-
file_name_ext?: string;
|
|
29
|
-
type?: StorageElementType[];
|
|
30
|
-
ext_value?: string | null;
|
|
31
|
-
file_mode?: ExtensionFileMode[];
|
|
32
|
-
lang?: string;
|
|
33
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { ExtensionExternal, ExtensionExternalInList, RequestBaseParams, ResponseList, ResponseType } from '../types';
|
|
3
|
-
export declare class ExtensionsExternalApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
listExtensionsSite(params: ExtensionExternalListParams): Promise<ResponseList<ExtensionExternalInList>>;
|
|
7
|
-
extensionDetailSite(uniqKey: string): Promise<ExtensionExternal>;
|
|
8
|
-
extensionMarkdown(uniqKey: string, config: {
|
|
9
|
-
responseType: ResponseType;
|
|
10
|
-
}): Promise<string>;
|
|
11
|
-
}
|
|
12
|
-
export interface ExtensionExternalListParams extends RequestBaseParams {
|
|
13
|
-
search_field?: string;
|
|
14
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { HttpEvent, OnUploadProgress, ResponseItem, ResponseList, StorageElement } from '../types';
|
|
3
|
-
import { ConnectionCreateParams } from './connections-api.service';
|
|
4
|
-
import { CreateStorageElementParams, RequestStorageListParams } from './storage-element-api.service';
|
|
5
|
-
import { UploadNetRequestParams } from './storage-files-api.service';
|
|
6
|
-
export declare class FcaApiService {
|
|
7
|
-
private client;
|
|
8
|
-
constructor(client: Client);
|
|
9
|
-
info(rootID: number, path: string): Promise<StorageElement>;
|
|
10
|
-
list(rootID: number, params?: RequestStorageListParams): Promise<ResponseList<StorageElement>>;
|
|
11
|
-
create(rootID: number, data: CreateStorageElementParams): Promise<any>;
|
|
12
|
-
replace(rootID: number, path: string, data: any): Promise<ResponseItem<StorageElement>>;
|
|
13
|
-
read(id: number, path: string): Promise<ResponseItem<any>>;
|
|
14
|
-
upload(onProgress: OnUploadProgress, rootID: number, file: File, path?: string): {
|
|
15
|
-
promise: Promise<HttpEvent<ResponseItem<StorageElement>>>;
|
|
16
|
-
abort: () => void;
|
|
17
|
-
};
|
|
18
|
-
uploadNet(rootID: number, params: UploadNetRequestParams): Promise<ResponseItem<StorageElement>>;
|
|
19
|
-
delete(rootID: number, path: string): Promise<void>;
|
|
20
|
-
check(data: ConnectionCreateParams): Promise<void>;
|
|
21
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { Extension, ExtensionDefault, License, LockScreen, ResponseList, Restriction, Setting, SettingValue, User, UserNotification } from '../types';
|
|
3
|
-
export declare class GatewayApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
settings(): Promise<Setting[]>;
|
|
7
|
-
changeSettings(data: SettingValue[]): Promise<void>;
|
|
8
|
-
queryInit(): Promise<QueryInitResponse>;
|
|
9
|
-
}
|
|
10
|
-
export interface QueryInitResponse {
|
|
11
|
-
license?: License;
|
|
12
|
-
unread_notifications?: ResponseList<UserNotification> & {
|
|
13
|
-
total_all: number;
|
|
14
|
-
};
|
|
15
|
-
extensions_apps?: ResponseList<Extension>;
|
|
16
|
-
extensions_defaults: ResponseList<ExtensionDefault>;
|
|
17
|
-
me?: User;
|
|
18
|
-
cache_users: User[];
|
|
19
|
-
lock_screen: LockScreen;
|
|
20
|
-
restrictions?: Restriction;
|
|
21
|
-
open_in_desktop_settings: {
|
|
22
|
-
open_in_desktop_enabled: boolean;
|
|
23
|
-
};
|
|
24
|
-
inject_scripts?: string[];
|
|
25
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { RequestBaseParams, ResponseItem, ResponseList, User, UserGroup } from '../types';
|
|
3
|
-
export declare class GroupApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
list(params: RequestUserGroupListParams): Promise<ResponseList<UserGroup>>;
|
|
7
|
-
listUsers(id: number): Promise<ResponseList<User>>;
|
|
8
|
-
create(data: CreateUserGroupParams): Promise<ResponseItem<UserGroup>>;
|
|
9
|
-
update(id: number, data: CreateUserGroupParams): Promise<ResponseItem<UserGroup>>;
|
|
10
|
-
delete(id: number): Promise<void>;
|
|
11
|
-
}
|
|
12
|
-
export interface RequestUserGroupListParams extends RequestBaseParams {
|
|
13
|
-
id?: number[];
|
|
14
|
-
name?: string;
|
|
15
|
-
description?: string;
|
|
16
|
-
search_field?: string;
|
|
17
|
-
}
|
|
18
|
-
export type CreateUserGroupParams = Pick<UserGroup, 'name' | 'description'> & {
|
|
19
|
-
users?: number[];
|
|
20
|
-
};
|
package/dist/api/index.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
export * from './auth-api.service';
|
|
2
|
-
export * from './connections-api.service';
|
|
3
|
-
export * from './discovery-api.service';
|
|
4
|
-
export * from './divide-api.service';
|
|
5
|
-
export * from './extensions-api.service';
|
|
6
|
-
export * from './extensions-external-api.service';
|
|
7
|
-
export * from './fca-api.service';
|
|
8
|
-
export * from './gateway-api.service';
|
|
9
|
-
export * from './group-api.service';
|
|
10
|
-
export * from './license-api.service';
|
|
11
|
-
export * from './links-api.service';
|
|
12
|
-
export * from './logstash-api.service';
|
|
13
|
-
export * from './notification-api.service';
|
|
14
|
-
export * from './role-api.service';
|
|
15
|
-
export * from './share-api.service';
|
|
16
|
-
export * from './storage-element-api.service';
|
|
17
|
-
export * from './storage-files-api.service';
|
|
18
|
-
export * from './storage-instance-api.service';
|
|
19
|
-
export * from './storage-share-api.service';
|
|
20
|
-
export * from './storage-trash-api.service';
|
|
21
|
-
export * from './user-api.service';
|
|
22
|
-
export * from './version-api.service';
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { ChangeLicenseParams, License } from '../types';
|
|
3
|
-
export declare class LicenseApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
info(): Promise<License>;
|
|
7
|
-
create(data: ChangeLicenseParams): Promise<License>;
|
|
8
|
-
check(): Promise<License>;
|
|
9
|
-
delete(): Promise<void>;
|
|
10
|
-
getHash(): Promise<{
|
|
11
|
-
hash: string;
|
|
12
|
-
}>;
|
|
13
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
export declare class LinksApiService {
|
|
3
|
-
private client;
|
|
4
|
-
constructor(client: Client);
|
|
5
|
-
createShortLink(params: CutLinkRequest): Promise<CutLinkResponse>;
|
|
6
|
-
updateShortLink(params: CutLinkRequest): Promise<CutLinkResponse>;
|
|
7
|
-
}
|
|
8
|
-
export interface CutLinkRequest {
|
|
9
|
-
entity_id: number;
|
|
10
|
-
entity_type: string;
|
|
11
|
-
full_url: string;
|
|
12
|
-
reload_short_url?: boolean;
|
|
13
|
-
}
|
|
14
|
-
interface CutLinkResponse extends CutLinkRequest {
|
|
15
|
-
full_url: string;
|
|
16
|
-
short_url: string;
|
|
17
|
-
}
|
|
18
|
-
export {};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { HttpResponse, RequestBaseParams, ResponseList, UsersLog } from '../types';
|
|
3
|
-
export declare class LogstashApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
getUsersLogs(params: RequestUsersLogParams): Promise<ResponseList<UsersLog>>;
|
|
7
|
-
getSystemLogs(path: string, start: number, end: number): Promise<HttpResponse<string>>;
|
|
8
|
-
}
|
|
9
|
-
export interface RequestUsersLogParams extends RequestBaseParams {
|
|
10
|
-
user_id?: string;
|
|
11
|
-
search_field?: string;
|
|
12
|
-
from_date?: string;
|
|
13
|
-
to_date?: string;
|
|
14
|
-
with_me?: boolean;
|
|
15
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { NotificationActionGroup, NotificationRowAction, RequestBaseParams, ResponseList, UserNotification } from '../types';
|
|
3
|
-
export declare class NotificationApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
list(params?: RequestNotificationListParams): Promise<ResponseListNotification>;
|
|
7
|
-
toggleStatus(ids: number[], to_status: NotificationRowAction): Promise<void>;
|
|
8
|
-
toggleAllStatus(to_status: NotificationRowAction): Promise<void>;
|
|
9
|
-
delete(id: number[]): Promise<void>;
|
|
10
|
-
deleteAll(): Promise<void>;
|
|
11
|
-
getPermission(): Promise<{
|
|
12
|
-
enabled: boolean;
|
|
13
|
-
}>;
|
|
14
|
-
setPermission(permission: boolean): Promise<void>;
|
|
15
|
-
getSubscription(): Promise<NotificationActionGroup>;
|
|
16
|
-
setSubscription(data: NotificationActionGroup): Promise<void>;
|
|
17
|
-
}
|
|
18
|
-
export interface RequestNotificationListParams extends RequestBaseParams {
|
|
19
|
-
read?: boolean;
|
|
20
|
-
search?: string;
|
|
21
|
-
lang?: string;
|
|
22
|
-
}
|
|
23
|
-
export type ResponseListNotification = ResponseList<UserNotification> & {
|
|
24
|
-
total_all: number;
|
|
25
|
-
};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { ResponseItem, ResponseList, UserRole, Permission, RequestBaseParams } from '../types';
|
|
3
|
-
export declare class RoleApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
list(params?: RequestUserRoleListParams): Promise<ResponseList<UserRole>>;
|
|
7
|
-
get(id: number): Promise<ResponseItem<UserRole>>;
|
|
8
|
-
getDefault(): Promise<ResponseItem<UserRole>>;
|
|
9
|
-
create(data: CreateUserRoleParams): Promise<ResponseItem<UserRole>>;
|
|
10
|
-
update(id: number, data: Partial<CreateUserRoleParams>): Promise<ResponseItem<UserRole>>;
|
|
11
|
-
delete(id: number): Promise<void>;
|
|
12
|
-
permissionList(): Promise<ResponseList<Permission>>;
|
|
13
|
-
addPermission(id: number, ids: number[]): Promise<void>;
|
|
14
|
-
deletePermission(id: number, ids: number[]): Promise<void>;
|
|
15
|
-
}
|
|
16
|
-
export interface RequestUserRoleListParams extends RequestBaseParams {
|
|
17
|
-
id?: number[];
|
|
18
|
-
search_field?: string;
|
|
19
|
-
}
|
|
20
|
-
export type CreateUserRoleParams = Pick<UserRole, 'name' | 'description' | 'grant_access_all' | 'is_default'>;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { RequestBaseParams, ResponseList, RestrictionStatus, ShareInfo, UnionRestriction } from '../types';
|
|
3
|
-
export declare class ShareApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
info(path: string, share_token: string): Promise<ShareInfo>;
|
|
7
|
-
checkPassword(password: string, share_token: string): Promise<any>;
|
|
8
|
-
checkToken(share_token: string): Promise<any>;
|
|
9
|
-
getRestriction(token: string): Promise<UnionRestriction>;
|
|
10
|
-
restrictions(params?: RequestBaseParams): Promise<ResponseList<ShareInfo>>;
|
|
11
|
-
restrictionsChange(token: string, data: {
|
|
12
|
-
status: RestrictionStatus;
|
|
13
|
-
comment: string;
|
|
14
|
-
}): Promise<ResponseList<ShareInfo>>;
|
|
15
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { ResponseItem, ResponseList, StorageElementPaste, StorageRoot, RequestBaseParams, StorageElementType, StorageRouteData, SizeBySection } from '../types';
|
|
3
|
-
import { StorageElement } from '../types';
|
|
4
|
-
import { FcaApiService } from './fca-api.service';
|
|
5
|
-
export declare class StorageElementApiService {
|
|
6
|
-
private client;
|
|
7
|
-
private fcaApiService;
|
|
8
|
-
constructor(client: Client, fcaApiService: FcaApiService);
|
|
9
|
-
list(params?: RequestStorageListParams): Promise<ResponseList<StorageElement>>;
|
|
10
|
-
info(params: {
|
|
11
|
-
path: string;
|
|
12
|
-
divide_id?: number;
|
|
13
|
-
file_version_id?: string;
|
|
14
|
-
}): Promise<StorageElement>;
|
|
15
|
-
combineInfo({ root, rootId, path, file_version_id, }: StorageRouteData): Promise<StorageElement>;
|
|
16
|
-
size(data: StorageItemSizeParams): Promise<number>;
|
|
17
|
-
move(params: StorageElementPasteParams, to: StorageRoot, from: StorageRoot): Promise<void>;
|
|
18
|
-
copy(params: StorageElementPasteParams, from: StorageRoot, to: StorageRoot): Promise<void>;
|
|
19
|
-
pasteFromShared(from_sharing_token: string, paths: StorageElementPaste[], from_sharing_password?: string): Promise<void>;
|
|
20
|
-
create(data: CreateStorageElementParams): Promise<ResponseItem<StorageElement>>;
|
|
21
|
-
delete(path: string, divide_id?: number): Promise<void>;
|
|
22
|
-
favorite(path: string): Promise<void>;
|
|
23
|
-
removeFavorite(path: string): Promise<void>;
|
|
24
|
-
createItem(data: CreateStorageElementParams): Promise<ResponseItem<StorageElement>>;
|
|
25
|
-
createWorkDir(data: CreateStorageElementParams): Promise<ResponseItem<StorageElement>>;
|
|
26
|
-
sizeWithSection(params?: {
|
|
27
|
-
owner_id: number;
|
|
28
|
-
with_trash: boolean;
|
|
29
|
-
}): Promise<SizeBySection[] | null>;
|
|
30
|
-
}
|
|
31
|
-
export interface RequestStorageListParams extends RequestBaseParams {
|
|
32
|
-
search?: string;
|
|
33
|
-
is_favorite?: boolean;
|
|
34
|
-
is_divided?: boolean;
|
|
35
|
-
divide_id?: number | null;
|
|
36
|
-
path?: string;
|
|
37
|
-
min_size?: number | null;
|
|
38
|
-
max_size?: number | null;
|
|
39
|
-
type?: StorageElementType;
|
|
40
|
-
file_name_ext?: string[];
|
|
41
|
-
from_sharing_token?: string;
|
|
42
|
-
from_path?: string;
|
|
43
|
-
from_sharing_password?: string;
|
|
44
|
-
}
|
|
45
|
-
export interface StorageElementPasteParams {
|
|
46
|
-
paths: StorageElementPaste[];
|
|
47
|
-
overwrite: boolean;
|
|
48
|
-
from_divide_id?: number | null;
|
|
49
|
-
to_divide_id?: number | null;
|
|
50
|
-
}
|
|
51
|
-
export type CreateStorageElementParams = Pick<StorageElement, 'created_by_extension' | 'divide_id' | 'name' | 'type' | 'path'> & {
|
|
52
|
-
is_work_dir?: boolean;
|
|
53
|
-
};
|
|
54
|
-
export interface StorageItemSizeParams {
|
|
55
|
-
paths: StorageItemSizePathParams[];
|
|
56
|
-
is_divided?: boolean;
|
|
57
|
-
is_favorite?: boolean;
|
|
58
|
-
}
|
|
59
|
-
export interface StorageItemSizePathParams {
|
|
60
|
-
path: string;
|
|
61
|
-
divide_id?: number;
|
|
62
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { HttpEvent, OnUploadProgress, ResponseItem, StorageElement } from '../types';
|
|
3
|
-
export declare class StorageFilesApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
read(path: string, params: any): Promise<ResponseItem<any>>;
|
|
7
|
-
replace(params: {
|
|
8
|
-
path: string;
|
|
9
|
-
divide_id?: number;
|
|
10
|
-
}, data: any): Promise<ResponseItem<StorageElement>>;
|
|
11
|
-
upload(onProgress: OnUploadProgress, file: File, path: string, divide_id?: number): {
|
|
12
|
-
promise: Promise<HttpEvent<ResponseItem<StorageElement>>>;
|
|
13
|
-
abort: () => void;
|
|
14
|
-
};
|
|
15
|
-
uploadNet(data: UploadNetRequestParams): Promise<ResponseItem<StorageElement>>;
|
|
16
|
-
}
|
|
17
|
-
export interface UploadNetRequestParams {
|
|
18
|
-
path: string;
|
|
19
|
-
url: string;
|
|
20
|
-
overwrite?: boolean;
|
|
21
|
-
divide_id?: number;
|
|
22
|
-
connection_divide_id?: number;
|
|
23
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { PermissionType, ShareInfo, ShareModel } from '../types';
|
|
3
|
-
export declare class StorageShareApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
info(path: string): Promise<ShareInfo>;
|
|
7
|
-
create(path: string, permissions_type: PermissionType): Promise<ShareInfo>;
|
|
8
|
-
change(data: ShareModel): Promise<ShareInfo>;
|
|
9
|
-
delete(path: string): Promise<void>;
|
|
10
|
-
refresh(token: string): Promise<ShareInfo>;
|
|
11
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { ResponseList, StorageTrashElement, StorageTrashItem } from '../types';
|
|
3
|
-
import { RequestStorageListParams } from './storage-element-api.service';
|
|
4
|
-
export declare class StorageTrashApiService {
|
|
5
|
-
private client;
|
|
6
|
-
constructor(client: Client);
|
|
7
|
-
list(params: RequestStorageListParams): Promise<ResponseList<StorageTrashElement>>;
|
|
8
|
-
clear(item: StorageTrashItem): Promise<void>;
|
|
9
|
-
clearAll(): Promise<void>;
|
|
10
|
-
restore(del_groups: StorageTrashItem[]): Promise<void>;
|
|
11
|
-
}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { RequestBaseParams, ResponseItem, ResponseList, User, UserSession, UserStatus, UserToken, UserType } from '../types';
|
|
3
|
-
export declare class UserApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
list(params: RequestUserListParams): Promise<ResponseList<User>>;
|
|
7
|
-
get(id: number): Promise<ResponseItem<User>>;
|
|
8
|
-
create(data: CreateUserParams): Promise<ResponseItem<User>>;
|
|
9
|
-
update(id: number, data: CreateUserParams): Promise<ResponseItem<User>>;
|
|
10
|
-
delete(id: number, params?: {
|
|
11
|
-
hard: boolean;
|
|
12
|
-
}): Promise<void>;
|
|
13
|
-
restore(id: number): Promise<void>;
|
|
14
|
-
me(): Promise<ResponseItem<User>>;
|
|
15
|
-
updateMe(data: CreateUserParams): Promise<ResponseItem<User>>;
|
|
16
|
-
createToken(data: {
|
|
17
|
-
name: string;
|
|
18
|
-
expire_in: string | null;
|
|
19
|
-
}): Promise<UserToken>;
|
|
20
|
-
listToken(params: RequestBaseParams): Promise<ResponseList<UserToken>>;
|
|
21
|
-
deleteToken(id: number): Promise<void>;
|
|
22
|
-
changeMyPassword(data: {
|
|
23
|
-
new_password: string;
|
|
24
|
-
old_password: string;
|
|
25
|
-
}): Promise<{
|
|
26
|
-
success: boolean;
|
|
27
|
-
}>;
|
|
28
|
-
changeUsersPassword(id: number, data: {
|
|
29
|
-
new_password: string;
|
|
30
|
-
}): Promise<{
|
|
31
|
-
success: boolean;
|
|
32
|
-
}>;
|
|
33
|
-
meUploadAvatar(file: Blob, fileName: string): Promise<{
|
|
34
|
-
file_path: string;
|
|
35
|
-
}>;
|
|
36
|
-
meDeleteAvatar(): Promise<void>;
|
|
37
|
-
meListSession(params: RequestBaseParams): Promise<ResponseList<UserSession>>;
|
|
38
|
-
meDeleteSession(id?: number): Promise<void>;
|
|
39
|
-
setRole(id: number, role_id?: number | null): Promise<void>;
|
|
40
|
-
}
|
|
41
|
-
export interface RequestUserListParams extends RequestBaseParams {
|
|
42
|
-
email?: string;
|
|
43
|
-
first_name?: string;
|
|
44
|
-
middle_name?: string;
|
|
45
|
-
last_name?: string;
|
|
46
|
-
login?: string;
|
|
47
|
-
is_admin?: boolean;
|
|
48
|
-
id?: number[];
|
|
49
|
-
role_ids?: number[];
|
|
50
|
-
statuses?: UserStatus[];
|
|
51
|
-
search_field?: string;
|
|
52
|
-
with_me?: boolean;
|
|
53
|
-
type?: UserType;
|
|
54
|
-
exclude_type?: UserType;
|
|
55
|
-
exclude_ids?: number[];
|
|
56
|
-
}
|
|
57
|
-
export type CreateUserParams = Pick<User, 'first_name' | 'last_name' | 'middle_name' | 'email' | 'home_path' | 'password' | 'role_id'>;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Client } from '../classes';
|
|
2
|
-
import { HistoryNote, RequestBaseParams, ResponseItem, ResponseList, StorageElementHistory, StorageElementVersion } from '../types';
|
|
3
|
-
export declare class VersionApiService {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Client);
|
|
6
|
-
history(params: HistoryRequestParams): Promise<ResponseList<StorageElementHistory>>;
|
|
7
|
-
versions(params: HistoryListRequestParams): Promise<ResponseList<StorageElementVersion>>;
|
|
8
|
-
create(params: HistoryNote): Promise<ResponseItem<StorageElementVersion>>;
|
|
9
|
-
edit(params: HistoryNote): Promise<ResponseItem<StorageElementVersion>>;
|
|
10
|
-
delete(params: HistoryRequestParams): Promise<void>;
|
|
11
|
-
size(params: HistoryRequestParams): Promise<number>;
|
|
12
|
-
makeCurrent(params: HistoryRequestParams): Promise<void>;
|
|
13
|
-
}
|
|
14
|
-
export type HistoryListRequestParams = HistoryRequestParams & RequestBaseParams;
|
|
15
|
-
export interface HistoryRequestParams {
|
|
16
|
-
path: string;
|
|
17
|
-
divide_id?: number | null;
|
|
18
|
-
file_version_id?: string;
|
|
19
|
-
}
|
package/dist/bundle.cjs.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const e="/login",t=`${e}/ldap`,s=`${e}/update`;class i{constructor(e){this.client=e}info(){return this.client.rest.get(e)}login(t){return this.client.rest.post(e,JSON.stringify(t))}ldapLogin(e){return this.client.rest.post(t,JSON.stringify(e))}updateToken(e){const t=e.path?`${e.path}/${s}`:s;return e.path&&delete e.path,this.client.rest.post(t,JSON.stringify(e))}logout(){return this.client.rest.post("/logout")}}var r;exports.AccessRights=void 0,(r=exports.AccessRights||(exports.AccessRights={})).LicenseRead="license_read",r.LicenseManage="license_edit",r.UsersRead="users_read",r.UsersCreate="users_create",r.UsersActivate="users_activate",r.GroupsRead="groups_read",r.GroupsCreate="groups_create",r.RolesRead="roles_read",r.RolesCreate="roles_create",r.Share="share",r.Divide="divide",r.ExtensionsRead="extensions_read",r.ExtensionsManage="extensions_write",r.RestrictionShareRead="restriction_share_read",r.RestrictionShareWrite="restriction_share_write",r.RestrictionDivideRead="restriction_divide_read",r.RestrictionDivideWrite="restriction_divide_write",r.ReadUserLogs="read_user_logs",r.ReadSystemLogs="read_system_logs",r.ConnectionsRead="connections_read",r.ConnectionsDividing="connections_dividing",r.ConnectionsYandexDisk="connections_yandex_disk",r.ConnectionsSsh="connections_ssh",r.ConnectionsMail="connections_mail",r.ConnectionsS3="connections_s3",r.ConnectionsDiscord="connections_discord",r.ConnectionsWebdav="connections_webdav",r.ConnectionsNextcloud="connections_nextcloud",r.ConnectionsNextbox="connections_nextbox",r.ConnectionsHttpProxy="connections_http_proxy",r.SystemInfoServiceList="system_info_service_list",r.SettingsRead="settings_read",r.SettingsWrite="settings_write";const n=[exports.AccessRights.ConnectionsYandexDisk,exports.AccessRights.ConnectionsSsh,exports.AccessRights.ConnectionsMail,exports.AccessRights.ConnectionsS3,exports.AccessRights.ConnectionsS3,exports.AccessRights.ConnectionsDiscord,exports.AccessRights.ConnectionsWebdav,exports.AccessRights.ConnectionsNextcloud,exports.AccessRights.ConnectionsNextbox,exports.AccessRights.ConnectionsHttpProxy];var o,c,a,l,p,d,h,u,g,x,v,S,_,f,y,$,m,k,w,A,R,O,T,b,N,C,E,U,D,J;exports.OrderDirection=void 0,(o=exports.OrderDirection||(exports.OrderDirection={})).DEFAULT="",o.ASC="asc",o.DESC="desc",exports.EngineType=void 0,(c=exports.EngineType||(exports.EngineType={})).WebSocket="websocket",c.PostMessage="postmessage",c.Empty="",exports.ConnectionGroup=void 0,(a=exports.ConnectionGroup||(exports.ConnectionGroup={})).Storages="storages_connections_group",a.Webhooks="webhooks_connections_group",a.Unknown="unknown_connections_group",a.Proxy="proxy_connections_group",exports.ConnectionType=void 0,(l=exports.ConnectionType||(exports.ConnectionType={})).SSH="ssh_connection",l.YandexDisk="yandex_disk",l.Mail="mail",l.Discord="discord",l.Webdav="webdav_connection",l.Nextcloud="nextcloud_connection",l.NextBox="nextbox_connection",l.HttpProxy="http_proxy_connection",l.S3="s3_connection",exports.ExtensionType=void 0,(p=exports.ExtensionType||(exports.ExtensionType={})).App="app",p.File="file",p.WorkDir="work_dir",exports.ExtensionFileMode=void 0,(d=exports.ExtensionFileMode||(exports.ExtensionFileMode={})).Read="read",d.ReadAndWrite="read_and_write",d.Write="write",exports.DivideScope=void 0,(h=exports.DivideScope||(exports.DivideScope={})).Storage="/storage/element",h.Connection="/connections",exports.PermissionType=void 0,(u=exports.PermissionType||(exports.PermissionType={})).CLOSE="",u.READ="r",u.WRITE="rw",exports.RestrictionStatus=void 0,(g=exports.RestrictionStatus||(exports.RestrictionStatus={})).WAITING="waiting",g.APPROVED="approved",g.REJECTED="rejected",exports.RestrictionBooleanStatus=void 0,(x=exports.RestrictionBooleanStatus||(exports.RestrictionBooleanStatus={})).TRUE="true",x.FALSE="false",exports.DivideMode=void 0,(v=exports.DivideMode||(exports.DivideMode={})).User="to_user_id",v.Group="to_user_group_id",exports.RestrictionModeKey=void 0,(S=exports.RestrictionModeKey||(exports.RestrictionModeKey={})).Divide="divide",S.Share="share",exports.Tariff=void 0,(_=exports.Tariff||(exports.Tariff={})).Free="free",_.Business="business",_.Enterprise="enterprise",exports.LicenseError=void 0,(f=exports.LicenseError||(exports.LicenseError={})).NotActivated="License not activated",f.Blocked="License blocked",f.Expired="License has been expired",f.NotValid="License not valid",f.NotFound="license file not found",exports.NotificationEntityType=void 0,(y=exports.NotificationEntityType||(exports.NotificationEntityType={})).Dir="dir",y.File="file",y.User="user",y.Other="other",y.WorkDir="work_dir",y.License="license",y.Extension="extension",y.Connection="connection",exports.NotificationAction=void 0,($=exports.NotificationAction||(exports.NotificationAction={})).OpenSharing="open_sharing",$.ChangeSharing="change_sharing",$.CancelSharing="cancel_sharing",$.DivideDirAddFileToOwner="divide_dir_add_file_to_owner",$.DivideDirAddDirToOwner="divide_dir_add_dir_to_owner",$.DivideDirAddWorkDirToOwner="divide_dir_add_work_dir_to_owner",$.DivideConnectionAddFileToOwner="divide_connection_add_file_to_owner",$.DivideConnectionAddDirToOwner="divide_connection_add_dir_to_owner",$.CancelDivideDir="cancel_divide_dir",$.CancelDivideFile="cancel_divide_file",$.CancelDivideWorkDir="cancel_divide_work_dir",$.CancelDivideConnection="cancel_divide_connection",$.DeleteExtension="delete_extension",$.NewVersionExtension="new_version_extension",$.TransferData="transfer_data",$.AllowInternalAccessUser="allow_internal_access_to_user",$.BlockInternalAccessUser="block_internal_access_to_user",$.WaitInternalAccessUser="wait_internal_access_to_user",$.WaitInternalAccessUserCreate="wait_internal_access_to_user_create",$.AllowInternalAccessGroup="allow_internal_access_to_group",$.BlockInternalAccessGroup="block_internal_access_to_group",$.WaitInternalAccessGroup="wait_internal_access_to_group",$.WaitInternalAccessGroupCreate="wait_internal_access_to_group_create",$.AllowSharing="allow_sharing",$.BlockSharing="block_sharing",$.WaitSharing="wait_sharing",$.WaitSharingCreate="wait_sharing_create",$.Other="other",exports.NotificationRowAction=void 0,(m=exports.NotificationRowAction||(exports.NotificationRowAction={})).Read="read",m.Unread="unread",m.Delete="delete",exports.NotificationStyle=void 0,(k=exports.NotificationStyle||(exports.NotificationStyle={})).Plain="plain",k.Success="success",k.Info="info",k.Warning="warning",k.Error="error",exports.ResponseType=void 0,(w=exports.ResponseType||(exports.ResponseType={})).ArrayBuffer="arraybuffer",w.Blob="blob",w.Json="json",w.Text="text",exports.RequestMethod=void 0,(A=exports.RequestMethod||(exports.RequestMethod={})).GET="GET",A.POST="POST",A.PUT="PUT",A.PATCH="PATCH",A.DELETE="DELETE",exports.RequestObserve=void 0,(R=exports.RequestObserve||(exports.RequestObserve={})).Body="body",R.Response="response",exports.RestrictionSharing=void 0,(O=exports.RestrictionSharing||(exports.RestrictionSharing={})).NONE="none",O.SOFT="soft",O.HARD="hard",exports.UserAuthType=void 0,(T=exports.UserAuthType||(exports.UserAuthType={})).Native="native",T.Ldap="ldap",T.Vk="vk",exports.UserStatus=void 0,(b=exports.UserStatus||(exports.UserStatus={})).Registering="registering",b.Activated="activated",b.Blocked="blocked",b.BlockedByLicense="blocked_by_license",exports.UserType=void 0,(N=exports.UserType||(exports.UserType={})).User="user",N.Guest="guest",N.Emperor="emperor",N.Anonymous="anonymous",exports.SettingControlType=void 0,(C=exports.SettingControlType||(exports.SettingControlType={})).Text="text",C.String="string",C.Number="number",C.CheckBox="checkbox",C.Select="select",C.RadioList="radio_list",C.ConnectionChoose="connection_choose",C.MultiConnectionChoose="multi_connection_choose",exports.StorageElementType=void 0,(E=exports.StorageElementType||(exports.StorageElementType={})).Dir="dir",E.File="file",E.WorkDir="work_dir",exports.StorageElementContentType=void 0,(U=exports.StorageElementContentType||(exports.StorageElementContentType={})).Any="any",U.Dir="dir",U.Code="code",U.Image="image",U.Audio="audio",U.Video="video",U.Text="text",U.Doc="doc",U.Xls="xls",U.Ppt="ppt",exports.StorageRoot=void 0,(D=exports.StorageRoot||(exports.StorageRoot={})).my="my",D.fca="fca",D.divide="divide",D.share="share",D.favorite="favorite",exports.StorageElementHistoryAction=void 0,(J=exports.StorageElementHistoryAction||(exports.StorageElementHistoryAction={})).Create="create",J.Update="update",J.Move="move";const P="/connections",I=`${P}/dashboard`;class L{constructor(e){this.client=e}list(e){return this.client.rest.get(P,e)}get(e){return this.client.rest.get(`${P}/${e}`)}update(e,t){return this.client.rest.put(`${P}/${e}`,JSON.stringify(t))}delete(e){return this.client.rest.delete(`${P}/${e}`)}create(e){const t={[exports.ConnectionType.SSH]:"/disk/ssh",[exports.ConnectionType.Webdav]:"/disk/webdav",[exports.ConnectionType.Nextcloud]:"/disk/nextcloud",[exports.ConnectionType.NextBox]:"/disk/nextbox",[exports.ConnectionType.Discord]:"/webhooks/discord",[exports.ConnectionType.Mail]:"/webhooks/mail",[exports.ConnectionType.HttpProxy]:"/http_proxy",[exports.ConnectionType.S3]:"/disk/s3"};return this.client.rest.post(t[e.type]||P,JSON.stringify(e))}dashboard(e){return this.client.rest.get(I,e)}}class q{constructor(e){this.client=e}discovery(e){return this.client.rest.get("/discovery",e)}}const j="/divide",M=`${j}/restrictions`;class F{constructor(e){this.client=e}divideDelete(e,t){return this.client.rest.delete(`${e}/${j}/${t}`)}divideDeleteAll(e,t,s,i){return this.client.rest.delete(`${e}/${j}`,Object.assign(Object.assign({},this.makeParam(e,t)),{is_to_user_group:i,access_mode:s}))}divideChange(e,t,s){return this.client.rest.put(`${e}/divide/${t}`,JSON.stringify({access_mode:s}))}divideCreate(e,t,s,i,r){const n=Object.assign(Object.assign({},this.makeParam(e,t)),{[r]:s,access_mode:i});return this.client.rest.post(`${e}/${j}`,JSON.stringify(n))}divideUsers(e,t,s){return this.client.rest.get(`${e}/${j}/users`,Object.assign(Object.assign({},this.makeParam(e,t)),s))}getRestriction(e){return this.client.rest.get(`${M}/${e}`)}restrictionSize(e,t){return this.client.rest.get(`/${t}/restrictions/${e}/size`)}restrictions(e){return this.client.rest.get(`${M}`,e)}restrictionsChange(e,t){return this.client.rest.put(`${M}/${e}`,JSON.stringify(t))}makeParam(e,t){const s={};return e===exports.DivideScope.Connection?s.connection_id=t:s.path=t,s}}function H(e,t,s,i){return new(s||(s=Promise))((function(r,n){function o(e){try{a(i.next(e))}catch(e){n(e)}}function c(e){try{a(i.throw(e))}catch(e){n(e)}}function a(e){var t;e.done?r(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,c)}a((i=i.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class W extends Error{}function B(e){let t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw new Error("base64 string is not of the correct length")}try{return function(e){return decodeURIComponent(atob(e).replace(/(.)/g,((e,t)=>{let s=t.charCodeAt(0).toString(16).toUpperCase();return s.length<2&&(s="0"+s),"%"+s})))}(t)}catch(e){return atob(t)}}function G(e,t){if("string"!=typeof e)throw new W("Invalid token specified: must be a string");t||(t={});const s=!0===t.header?0:1,i=e.split(".")[s];if("string"!=typeof i)throw new W(`Invalid token specified: missing part #${s+1}`);let r;try{r=B(i)}catch(e){throw new W(`Invalid token specified: invalid base64 for part #${s+1} (${e.message})`)}try{return JSON.parse(r)}catch(e){throw new W(`Invalid token specified: invalid json for part #${s+1} (${e.message})`)}}W.prototype.name="InvalidTokenError";const V=(e,t)=>H(void 0,void 0,void 0,(function*(){let s=t;for(const t of e)try{s=yield t.fulfilled(s)}catch(e){if(!t.rejected)throw e;s=yield t.rejected(e)}return s}));function z(e){var t;return null!==(t=Object.fromEntries(document.cookie.split(";").map((e=>e.split("="))).map((([e,t])=>[e.trim(),decodeURIComponent(t||"")])))[e])&&void 0!==t?t:null}const K=e=>{const t=new URLSearchParams;return Object.keys(e).forEach((s=>{Array.isArray(e[s])?e[s].forEach((e=>{t.append(s,e)})):t.append(s,e[s])})),t};function X(e){return e instanceof Headers?Object.fromEntries(e.entries()):Array.isArray(e)?Object.fromEntries(e):e}const Y="/api/v1",Q="/api/v2",Z=`${window.location.protocol}//${window.location.host}`;class ee{constructor(e,t){this.client=e,this.tokenUpdate=t}get state(){return this.client.state}get(e,t,s){return this.request(exports.RequestMethod.GET,e,Object.assign({params:t,cache:"no-cache"},s))}post(e,t,s){return this.request(exports.RequestMethod.POST,e,Object.assign({body:t},s))}put(e,t,s){return this.request(exports.RequestMethod.PUT,e,Object.assign({body:t,cache:"no-cache"},s))}patch(e,t,s){return this.request(exports.RequestMethod.PATCH,e,Object.assign({body:t},s))}delete(e,t,s){return this.request(exports.RequestMethod.DELETE,e,Object.assign({params:t},s))}upload(e,t,s){const i=new AbortController,r=i.signal;return{promise:this.request(exports.RequestMethod.POST,e,Object.assign({body:t,signal:r},s)),abort:()=>i.abort()}}request(e,t,s){return H(this,void 0,void 0,(function*(){return new Promise(((i,r)=>H(this,void 0,void 0,(function*(){var n,o;const c=null!==(n=this.state.skipInterceptors)&&void 0!==n&&n;this.state.skipInterceptors=!1;let a=Object.assign({method:e},s);if((null==s?void 0:s.signal)&&(a.signal=s.signal),c||(s=yield V(this.client.requestInterceptors,a)),this.state.authToken)for(const[e,i]of this.state.authToken.entries()){const r=G(i.access_token);if(r&&r.is_remember&&this.tokenUpdate.isTokenExpire(r.exp)&&!t.includes("/login")&&!t.includes("/assets")){const t=yield this.tokenUpdate.refreshToken(i);t&&(this.state.authToken.set(e,t),s=yield V(this.client.requestInterceptors,a))}}const l=new XMLHttpRequest;(null==s?void 0:s.params)&&0!==Object.keys(s.params).length&&(t+="?"+K(s.params));const p=`${this.state.clientParams.host}${this.state.clientParams.version}${t}`;if(l.open(e,p,!0),null==s?void 0:s.headers){const e=X(s.headers);for(const[t,s]of Object.entries(e))(this.state.clientParams.host===Z||"content-type"!==t.toLowerCase())&&l.setRequestHeader(t,s)}(null==s?void 0:s.responseType)&&(l.responseType=s.responseType),(null==s?void 0:s.signal)&&s.signal.addEventListener("abort",(()=>{l.abort(),r(new Error("Upload aborted"))})),l.upload&&[exports.RequestMethod.POST,exports.RequestMethod.PUT,exports.RequestMethod.PATCH].includes(e)&&(l.upload.onprogress=e=>{e.lengthComputable&&(null==s?void 0:s.onUploadProgress)&&s.onUploadProgress(e)}),l.onload=()=>H(this,void 0,void 0,(function*(){if((null==s?void 0:s.signal)&&s.signal.aborted)return;let e;switch(null==s?void 0:s.responseType){case exports.ResponseType.Text:e=l.responseText;break;case exports.ResponseType.Blob:case exports.ResponseType.ArrayBuffer:e=l.response;break;default:try{e=JSON.parse(l.responseText)}catch(t){e=l.responseText}}const t=new Headers;l.getAllResponseHeaders().split("\r\n").forEach((e=>{const[s,i]=e.split(": ");s&&i&&t.append(s,i)}));let n={status:l.status,statusText:l.statusText,headers:t,url:l.responseURL};l.status>=200&&l.status<300?(null==s?void 0:s.observe)===exports.RequestObserve.Response?i(Object.assign(Object.assign({},n),{body:e})):i(e):r(Object.assign(Object.assign({},n),{error:e})),n=yield V(this.client.responseInterceptors,n)})),l.onerror=()=>{r({status:l.status,statusText:l.statusText,url:l.responseURL,error:"Network error"})},l.send(null!==(o=null==s?void 0:s.body)&&void 0!==o?o:null)}))))}))}changeBaseUrlVersion(e,t){return H(this,void 0,void 0,(function*(){const s=this.state.clientParams.version;this.state.clientParams.version=e;try{return yield t()}finally{this.state.clientParams.version=s}}))}changeHost(e,t){return H(this,void 0,void 0,(function*(){this.state.clientParams.host=e,this.state.requestParams.headers={};try{return yield t()}finally{this.state.clientParams.host=Z}}))}}class te{constructor(e){this.authApiService=e,this.isUpdating=!1,this.tokenUpdateResolve=null}isTokenExpire(e){if(!e)return!1;return 1e3*e<=(new Date).getTime()+3e3}refreshToken(e){return H(this,void 0,void 0,(function*(){const{access_token:t,refresh_token:s}=e;return t&&s?this.isUpdating?this.waitForTokenUpdate():(this.isUpdating=!0,new Promise(((e,i)=>{const r=new XMLHttpRequest,n=`${Z}${Y}/login/update`;r.open("POST",n,!0),r.setRequestHeader("Content-Type","application/json"),r.send(JSON.stringify({access_token:t,refresh_token:s})),r.onload=()=>{if(r.status>=200&&r.status<300)try{const t=JSON.parse(r.responseText);if(t&&t.access_token&&t.refresh_token){const s={access_token:t.access_token,refresh_token:t.refresh_token};z("access_token")===s.access_token&&localStorage.setItem("refresh-token",s.refresh_token),this.tokenUpdateResolve&&(this.tokenUpdateResolve(s),this.tokenUpdateResolve=null),e(s)}else e(null)}catch(e){i(new Error("Failed to parse response JSON."))}else i(new Error(`Request failed with status: ${r.status}`))},r.onerror=()=>{i(new Error("Network error occurred"))},r.onloadend=()=>{this.isUpdating=!1}}))):null}))}waitForTokenUpdate(){return H(this,void 0,void 0,(function*(){return new Promise((e=>{const t=setInterval((()=>{this.isUpdating||(clearInterval(t),e())}),100)}))}))}}const se="/static/extensions",ie="/extensions/defaults";class re{constructor(e){this.client=e}getSetting(e){return this.client.rest.get(`${se}/${e}/settings`)}setSetting(e,t){return this.client.rest.post(`${se}/${e}/settings`,JSON.stringify(t))}deleteSetting(e){return this.client.rest.delete(`${se}/${e}/settings`)}get(e){return this.client.rest.get(`${se}/${e}`)}getByKey(e){return this.client.rest.get(`${se}/${e}`)}getDefault(e=[]){return this.client.rest.get(ie,{ext_code:e})}setDefault(e,t){return this.client.rest.post(ie,JSON.stringify({ext_code:e,ext_uniq_key:t}))}checkUpdates(){return this.client.rest.post(`${se}/check_updates`)}updateVersion(e,t){return this.client.rest.put(`${se}/${e}`,JSON.stringify({version:t}))}list(e){return this.client.rest.get(se,e)}delete(e,t){return this.client.rest.delete(`${se}/${e}`)}upload(e,t){const s=new FormData;s.set("file",t);const{promise:i,abort:r}=this.client.rest.upload(se,s,{onUploadProgress:t=>{e(t)}});return{promise:this.client.rest.changeBaseUrlVersion(Q,(()=>i)),abort:r}}install(e,t){return this.client.rest.changeBaseUrlVersion(Q,(()=>this.client.rest.post(`${se}/site`,JSON.stringify({uniq_key:e,version:t}))))}}const ne="/anons_ext/extensions";class oe{constructor(e){this.client=e}listExtensionsSite(e){return this.client.rest.changeHost("https://next-box.ru",(()=>this.client.rest.get(ne,e)))}extensionDetailSite(e){return this.client.rest.changeHost("https://next-box.ru",(()=>this.client.rest.get(`${ne}/${e}`)))}extensionMarkdown(e,t){return this.client.rest.changeHost("https://next-box.ru",(()=>this.client.rest.get(`${ne}/${e}/readme`,{},t)))}}const ce="/disk",ae=`${ce}/check`;class le{constructor(e){this.client=e}info(e,t){return this.client.rest.get(`${ce}/${e}/element`,{path:t})}list(e,t){return this.client.rest.get(`${ce}/${e}`,t)}create(e,t){return this.client.rest.post(`${ce}/${e}/element`,JSON.stringify(t))}replace(e,t,s){return this.client.rest.put(`${ce}/${e}/files?path=${t}`,s)}read(e,t){return this.client.rest.get(`${ce}/${e}/files?path=${t}`)}upload(e,t,s,i=""){const r=new FormData;r.set("path",i),r.set("file",s);const{promise:n,abort:o}=this.client.rest.upload(`${ce}/${t}/files`,r,{onUploadProgress:t=>{e(t)}});return{promise:n,abort:o}}uploadNet(e,t){return this.client.rest.post(`${ce}/${e}/files/net`,JSON.stringify(t))}delete(e,t){return this.client.rest.delete(`${ce}/${e}/trash/element`,{path:t})}check(e){return this.client.rest.post(ae,JSON.stringify(e))}}const pe="/settings";class de{constructor(e){this.client=e}settings(){return this.client.rest.get(pe)}changeSettings(e){return this.client.rest.post(pe,JSON.stringify(e))}queryInit(){return this.client.rest.get("/query/init")}}const he="/groups";class ue{constructor(e){this.client=e}list(e){return this.client.rest.get(he,e)}listUsers(e){return this.client.rest.get(`${he}/${e}/users`)}create(e){return this.client.rest.post(he,JSON.stringify(e))}update(e,t){return this.client.rest.put(`${he}/${e}`,JSON.stringify(t))}delete(e){return this.client.rest.delete(`${he}/${e}`)}}const ge="/license",xe=`${ge}/manual-check`,ve=`${ge}/hardware/hash`;class Se{constructor(e){this.client=e}info(){return this.client.rest.get(ge)}create(e){return this.client.rest.post(ge,JSON.stringify(e))}check(){return this.client.rest.post(xe)}delete(){return this.client.rest.delete(ge)}getHash(){return this.client.rest.get(ve)}}const _e="/links";class fe{constructor(e){this.client=e}createShortLink(e){return this.client.rest.post(_e,JSON.stringify(e))}updateShortLink(e){return this.client.rest.put(_e,JSON.stringify(e))}}const ye="/logs";class $e{constructor(e){this.client=e}getUsersLogs(e){return this.client.rest.get(`${ye}/users`,e)}getSystemLogs(e,t,s){return this.client.rest.get(`${ye}/${e}`,{},{observe:exports.RequestObserve.Response,responseType:exports.ResponseType.Text,headers:{Range:`bytes=${t}-${s}`}})}}const me="/notifications",ke=`${me}/all`,we=`${me}/subscription`,Ae=`${me}/permission`;class Re{constructor(e){this.client=e}list(e){return this.client.rest.get(me,e)}toggleStatus(e,t){return this.client.rest.put(me,JSON.stringify({ids:e,to_status:t}))}toggleAllStatus(e){return this.client.rest.put(ke,JSON.stringify({to_status:e}))}delete(e){return this.client.rest.delete(me,{id:e})}deleteAll(){return this.client.rest.delete(ke)}getPermission(){return this.client.rest.get(Ae)}setPermission(e){return this.client.rest.post(Ae,JSON.stringify({enabled:e}))}getSubscription(){return this.client.rest.get(we)}setSubscription(e){const t={action_groups:Object.assign({},e)};return this.client.rest.post(we,JSON.stringify(t))}}const Oe="/roles",Te=`${Oe}/default`,be="/permissions";class Ne{constructor(e){this.client=e}list(e){return this.client.rest.get(Oe,e)}get(e){return this.client.rest.get(`${Oe}/${e}`)}getDefault(){return this.client.rest.get(`${Te}`)}create(e){return this.client.rest.post(Oe,JSON.stringify(e))}update(e,t){return this.client.rest.put(`${Oe}/${e}`,JSON.stringify(t))}delete(e){return this.client.rest.delete(`${Oe}/${e}`)}permissionList(){return this.client.rest.get(be)}addPermission(e,t){return this.client.rest.put(`${Oe}/${e}/permissions`,JSON.stringify({ids:t}))}deletePermission(e,t){return this.client.rest.delete(`${Oe}/${e}/${be}`,{ids:t})}}const Ce="/share",Ee=`${Ce}/restrictions`;class Ue{constructor(e){this.client=e}info(e,t){const s=new URLSearchParams({path:e,share_token:t});return this.client.rest.get(`${Ce}?${s.toString()}`)}checkPassword(e,t){const s=encodeURIComponent(e);return this.client.rest.get(`${Ce}/password?share_token=${t}&share_pass=${s}`)}checkToken(e){return this.client.rest.get(`${Ce}?share_token=${e}`)}getRestriction(e){return this.client.rest.get(`${Ee}/${e}`)}restrictions(e){return this.client.rest.get(Ee,e)}restrictionsChange(e,t){return this.client.rest.put(`${Ee}/${e}`,JSON.stringify(t))}}const De="/storage",Je=`${De}/element`,Pe=`${Je}/move`,Ie=`${Je}/copy`,Le=`${Je}/content_type_size`,qe="/disk";class je{constructor(e,t){this.client=e,this.fcaApiService=t}list(e){return this.client.rest.get(De,e)}info(e){var t;return parseInt((null===(t=e.divide_id)||void 0===t?void 0:t.toString())||"")||delete e.divide_id,e.file_version_id||delete e.file_version_id,this.client.rest.get(Je,e)}combineInfo({root:e,rootId:t,path:s,file_version_id:i}){return e===exports.StorageRoot.fca&&t?this.fcaApiService.info(t,s):this.info({path:s,divide_id:t,file_version_id:i})}size(e){return this.client.rest.post(`${Je}/size`,JSON.stringify(e))}move(e,t,s){const{from_divide_id:i,to_divide_id:r}=e;let n=Object.assign(Object.assign({},e),{from_divide_id:null,to_divide_id:null});return t===exports.StorageRoot.fca&&s===exports.StorageRoot.fca?this.client.rest.post(`${qe}/${i}/files/move${qe}/${r}`,JSON.stringify(n)):t===exports.StorageRoot.fca?(i&&(n.from_divide_id=i),this.client.rest.put(`${qe}/${r}/files/from/box`,JSON.stringify(n))):s===exports.StorageRoot.fca?(r&&(n.to_divide_id=r),this.client.rest.put(`${qe}/${i}/files/to/box`,JSON.stringify(n))):this.client.rest.post(Pe,JSON.stringify(e))}copy(e,t,s){const{from_divide_id:i,to_divide_id:r}=e;let n=Object.assign(Object.assign({},e),{from_divide_id:null,to_divide_id:null});return s===exports.StorageRoot.fca&&t===exports.StorageRoot.fca?this.client.rest.post(`${qe}/${i}/files/copy${qe}/${r}`,JSON.stringify(n)):s===exports.StorageRoot.fca?(i&&(n.from_divide_id=i),this.client.rest.post(`${qe}/${r}/files/from/box`,JSON.stringify(n))):t===exports.StorageRoot.fca?(r&&(n.to_divide_id=r),this.client.rest.post(`${qe}/${i}/files/to/box`,JSON.stringify(n))):this.client.rest.post(Ie,JSON.stringify(e))}pasteFromShared(e,t,s){const i={from_sharing_token:e,from_sharing_password:s,paths:t};return this.client.rest.post(`${Je}/copy`,JSON.stringify(i))}create(e){return this.client.rest.post(Je,JSON.stringify(e))}delete(e,t){const s={path:e};return t&&(s.divide_id=t),this.client.rest.delete(Je,s)}favorite(e){return this.client.rest.put(`${Je}?path=${encodeURIComponent(e)}`,JSON.stringify({is_favorite:!0}))}removeFavorite(e){return this.client.rest.put(`${Je}?path=${encodeURIComponent(e)}`,JSON.stringify({is_favorite:!1}))}createItem(e){return this.client.rest.post(Je,JSON.stringify(e))}createWorkDir(e){return this.client.rest.post(Je,JSON.stringify(e))}sizeWithSection(e){return this.client.rest.get(Le,e)}}const Me="/storage/files",Fe=`${Me}/net`;class He{constructor(e){this.client=e}read(e,t){return t.path=e,this.client.rest.get(Me,t)}replace(e,t){const s=new URLSearchParams;return Object.keys(e).forEach((t=>{e[t]&&s.append(t,e[t])})),this.client.rest.put(`${Me}?${s.toString()}`,t)}upload(e,t,s,i){const r=new FormData;r.set("path",s),i&&r.set("divide_id",i.toString()),r.set("file",t);const{promise:n,abort:o}=this.client.rest.upload(Me,r,{onUploadProgress:t=>{e(t)}});return{promise:n,abort:o}}uploadNet(e){return this.client.rest.post(Fe,JSON.stringify(e))}}class We{constructor(e){this.client=e}instance(){return this.client.rest.get("/storage/instance")}}const Be="/storage/element/share";class Ge{constructor(e){this.client=e}info(e){return this.client.rest.get(Be,{path:e})}create(e,t){const s={path:e,permissions_type:t};return this.client.rest.post(Be,JSON.stringify(s))}change(e){return this.client.rest.put(`${Be}/${e.token}`,JSON.stringify(e))}delete(e){return this.client.rest.delete(Be,{path:e})}refresh(e){return this.client.rest.put(`${Be}/${e}/refresh`)}}const Ve="/storage/trash",ze=`${Ve}/element`,Ke=`${ze}/all`;class Xe{constructor(e){this.client=e}list(e){return this.client.rest.get(Ve,e)}clear(e){return this.client.rest.delete(ze,e)}clearAll(){return this.client.rest.delete(Ke)}restore(e){return this.client.rest.patch(ze,JSON.stringify({del_groups:e}))}}const Ye="/users",Qe=`${Ye}/me`,Ze=`${Qe}/avatars`,et=`${Qe}/sessions`,tt=`${Qe}/tokens`,st=`${Qe}/change-password`;class it{constructor(e){this.client=e}list(e){return this.client.rest.get(Ye,e)}get(e){return this.client.rest.get(Ye+`/${e}`)}create(e){return this.client.rest.post(Ye,JSON.stringify(e))}update(e,t){return this.client.rest.put(Ye+`/${e}`,JSON.stringify(t))}delete(e,t){return this.client.rest.delete(`${Ye}/${e}`,t)}restore(e){return this.client.rest.post(`${Ye}/${e}/restore`)}me(){return this.client.rest.get(Qe)}updateMe(e){return this.client.rest.put(Qe,JSON.stringify(e))}createToken(e){return this.client.rest.post(tt,JSON.stringify(e))}listToken(e){return this.client.rest.get(tt,e)}deleteToken(e){return this.client.rest.delete(`${tt}/${e}`)}changeMyPassword(e){return this.client.rest.put(st,JSON.stringify(e))}changeUsersPassword(e,t){return this.client.rest.put(`${Ye}/${e}/change-password`,JSON.stringify(t))}meUploadAvatar(e,t){const s=new FormData;return s.append("file",e,t),this.client.rest.post(Ze,s)}meDeleteAvatar(){return this.client.rest.delete(Ze)}meListSession(e){return this.client.rest.get(et,e)}meDeleteSession(e){let t=et;return e&&(t+=`/${e}`),this.client.rest.delete(t)}setRole(e,t=null){return this.client.rest.put(`${Ye}/${e}/roles`,JSON.stringify({role_id:t}))}}const rt="/storage/element",nt=`${rt}/history`,ot=`${rt}/version`,ct=`${ot}/current`,at=`${ot}/size`;class lt{constructor(e){this.client=e}history(e){return this.client.rest.get(nt,e)}versions(e){return this.client.rest.get(ot,e)}create(e){return this.client.rest.post(ot,JSON.stringify(e))}edit(e){return this.client.rest.put(ot,JSON.stringify(e))}delete(e){return this.client.rest.delete(ot,e)}size(e){return this.client.rest.get(at,e)}makeCurrent(e){return this.client.rest.post(ct,JSON.stringify(e))}}exports.AuthApiService=i,exports.BASE_URL_V1=Y,exports.BASE_URL_V2=Q,exports.CONNECTIONS_PERMISSION=n,exports.Client=class{constructor(e){this.AuthApiService=new i(this),this.ConnectionsApiService=new L(this),this.DiscoveryApiService=new q(this),this.DivideApiService=new F(this),this.ExtensionsApiService=new re(this),this.ExtensionsExternalApiService=new oe(this),this.FcaApiService=new le(this),this.GatewayApiService=new de(this),this.GroupApiService=new ue(this),this.LicenseApiService=new Se(this),this.LinksApiService=new fe(this),this.LogstashApiService=new $e(this),this.NotificationApiService=new Re(this),this.RoleApiService=new Ne(this),this.ShareApiService=new Ue(this),this.StorageElementApiService=new je(this,this.FcaApiService),this.StorageFilesApiService=new He(this),this.StorageInstanceApiService=new We(this),this.StorageShareApiService=new Ge(this),this.StorageTrashApiService=new Xe(this),this.UserApiService=new it(this),this.VersionApiService=new lt(this),this.tokenUpdate=new te(this.AuthApiService),this.rest=new ee(this,this.tokenUpdate),this.requestInterceptors=[],this.responseInterceptors=[],this.request={use:(e,t)=>{this.requestInterceptors.push({fulfilled:e,rejected:t})}},this.response={use:(e,t)=>{this.responseInterceptors.push({fulfilled:e,rejected:t})}},this.state={clientParams:{host:(null==e?void 0:e.host)||`${window.location.protocol}//${window.location.host}`,version:(null==e?void 0:e.version)||"/api/v1"},requestParams:{path:"",headers:{},query:{},body:null,cache:"no-cache"},authToken:null,skipInterceptors:!1}}},exports.ConnectionsApiService=L,exports.DiscoveryApiService=q,exports.DivideApiService=F,exports.ExtensionsApiService=re,exports.ExtensionsExternalApiService=oe,exports.FcaApiService=le,exports.GatewayApiService=de,exports.GroupApiService=ue,exports.HOST=Z,exports.LicenseApiService=Se,exports.LinksApiService=fe,exports.LogstashApiService=$e,exports.NotificationApiService=Re,exports.Rest=ee,exports.RoleApiService=Ne,exports.ShareApiService=Ue,exports.StorageElementApiService=je,exports.StorageFilesApiService=He,exports.StorageInstanceApiService=We,exports.StorageShareApiService=Ge,exports.StorageTrashApiService=Xe,exports.TokenUpdate=te,exports.UserApiService=it,exports.VersionApiService=lt,exports.applyInterceptors=V,exports.getCookieValue=z,exports.makeUrlParams=K,exports.normalizeHeaders=X;
|