nb-js-client 0.0.34 → 0.0.35

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 (57) hide show
  1. package/dist/api/auth-api.service.d.ts +20 -0
  2. package/dist/api/connections-api.service.d.ts +20 -0
  3. package/dist/api/discovery-api.service.d.ts +8 -0
  4. package/dist/api/divide-api.service.d.ts +19 -0
  5. package/dist/api/extensions-api.service.d.ts +33 -0
  6. package/dist/api/extensions-external-api.service.d.ts +14 -0
  7. package/dist/api/fca-api.service.d.ts +21 -0
  8. package/dist/api/gateway-api.service.d.ts +25 -0
  9. package/dist/api/group-api.service.d.ts +20 -0
  10. package/dist/api/index.d.ts +22 -0
  11. package/dist/api/license-api.service.d.ts +13 -0
  12. package/dist/api/links-api.service.d.ts +18 -0
  13. package/dist/api/logstash-api.service.d.ts +15 -0
  14. package/dist/api/notification-api.service.d.ts +25 -0
  15. package/dist/api/role-api.service.d.ts +20 -0
  16. package/dist/api/share-api.service.d.ts +15 -0
  17. package/dist/api/storage-element-api.service.d.ts +62 -0
  18. package/dist/api/storage-files-api.service.d.ts +23 -0
  19. package/dist/api/storage-instance-api.service.d.ts +7 -0
  20. package/dist/api/storage-share-api.service.d.ts +11 -0
  21. package/dist/api/storage-trash-api.service.d.ts +11 -0
  22. package/dist/api/user-api.service.d.ts +57 -0
  23. package/dist/api/version-api.service.d.ts +19 -0
  24. package/dist/bundle.cjs.js +1 -0
  25. package/dist/bundle.esm.js +1 -0
  26. package/dist/classes/client.d.ts +41 -0
  27. package/dist/classes/index.d.ts +3 -0
  28. package/dist/classes/rest.d.ts +24 -0
  29. package/dist/classes/token-update.d.ts +10 -0
  30. package/dist/index.d.ts +1313 -0
  31. package/dist/tools/apply-interceptors.d.ts +4 -0
  32. package/dist/tools/get-cookie-value.d.ts +1 -0
  33. package/dist/tools/index.d.ts +4 -0
  34. package/dist/tools/make-url-params.d.ts +1 -0
  35. package/dist/tools/normalize-headers.d.ts +1 -0
  36. package/dist/types/access-rights.d.ts +36 -0
  37. package/dist/types/access-token.d.ts +15 -0
  38. package/dist/types/auth.d.ts +9 -0
  39. package/dist/types/base.d.ts +48 -0
  40. package/dist/types/connection.d.ts +36 -0
  41. package/dist/types/discovery.d.ts +15 -0
  42. package/dist/types/divide.d.ts +82 -0
  43. package/dist/types/extension.d.ts +80 -0
  44. package/dist/types/index.d.ts +19 -0
  45. package/dist/types/interceptor.d.ts +4 -0
  46. package/dist/types/license.d.ts +23 -0
  47. package/dist/types/lock-screen.d.ts +4 -0
  48. package/dist/types/notification.d.ts +90 -0
  49. package/dist/types/permission.d.ts +10 -0
  50. package/dist/types/request.d.ts +44 -0
  51. package/dist/types/restriction.d.ts +9 -0
  52. package/dist/types/setting.d.ts +58 -0
  53. package/dist/types/storage-trash.d.ts +25 -0
  54. package/dist/types/storage.d.ts +114 -0
  55. package/dist/types/user-log.d.ts +9 -0
  56. package/dist/types/user.d.ts +74 -0
  57. package/package.json +3 -2
@@ -0,0 +1,20 @@
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
+ }
@@ -0,0 +1,20 @@
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'>;
@@ -0,0 +1,8 @@
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
+ }
@@ -0,0 +1,19 @@
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
+ }
@@ -0,0 +1,33 @@
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
+ }
@@ -0,0 +1,14 @@
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
+ }
@@ -0,0 +1,21 @@
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
+ }
@@ -0,0 +1,25 @@
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
+ }
@@ -0,0 +1,20 @@
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
+ };
@@ -0,0 +1,22 @@
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';
@@ -0,0 +1,13 @@
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
+ }
@@ -0,0 +1,18 @@
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 {};
@@ -0,0 +1,15 @@
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
+ }
@@ -0,0 +1,25 @@
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
+ };
@@ -0,0 +1,20 @@
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'>;
@@ -0,0 +1,15 @@
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
+ }
@@ -0,0 +1,62 @@
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
+ }
@@ -0,0 +1,23 @@
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
+ }
@@ -0,0 +1,7 @@
1
+ import { Client } from '../classes';
2
+ import { ResponseList, StorageInstance } from '../types';
3
+ export declare class StorageInstanceApiService {
4
+ private client;
5
+ constructor(client: Client);
6
+ instance(): Promise<ResponseList<StorageInstance>>;
7
+ }
@@ -0,0 +1,11 @@
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
+ }
@@ -0,0 +1,11 @@
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
+ }
@@ -0,0 +1,57 @@
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'>;
@@ -0,0 +1,19 @@
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
+ }
@@ -0,0 +1 @@
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,C,N,E,U,D,P,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,(C=exports.UserType||(exports.UserType={})).User="user",C.Guest="guest",C.Emperor="emperor",C.Anonymous="anonymous",exports.SettingControlType=void 0,(N=exports.SettingControlType||(exports.SettingControlType={})).Text="text",N.String="string",N.Number="number",N.CheckBox="checkbox",N.Select="select",N.RadioList="radio_list",N.ConnectionChoose="connection_choose",N.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,(P=exports.StorageElementHistoryAction||(exports.StorageElementHistoryAction={})).Create="create",P.Update="update",P.Move="move",exports.StorageElementCheckStatus=void 0,(J=exports.StorageElementCheckStatus||(exports.StorageElementCheckStatus={}))[J.CheckNull=0]="CheckNull",J[J.CheckInProgress=1]="CheckInProgress",J[J.CheckPositive=2]="CheckPositive",J[J.CheckNegative=3]="CheckNegative";const I="/connections",L=`${I}/dashboard`;class q{constructor(e){this.client=e}list(e){return this.client.rest.get(I,e)}get(e){return this.client.rest.get(`${I}/${e}`)}update(e,t){return this.client.rest.put(`${I}/${e}`,JSON.stringify(t))}delete(e){return this.client.rest.delete(`${I}/${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]||I,JSON.stringify(e))}dashboard(e){return this.client.rest.get(L,e)}}class j{constructor(e){this.client=e}discovery(e){return this.client.rest.get("/discovery",e)}}const M="/divide",F=`${M}/restrictions`;class H{constructor(e){this.client=e}divideDelete(e,t){return this.client.rest.delete(`${e}/${M}/${t}`)}divideDeleteAll(e,t,s,i){return this.client.rest.delete(`${e}/${M}`,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}/${M}`,JSON.stringify(n))}divideUsers(e,t,s){return this.client.rest.get(`${e}/${M}/users`,Object.assign(Object.assign({},this.makeParam(e,t)),s))}getRestriction(e){return this.client.rest.get(`${F}/${e}`)}restrictionSize(e,t){return this.client.rest.get(`/${t}/restrictions/${e}/size`)}restrictions(e){return this.client.rest.get(`${F}`,e)}restrictionsChange(e,t){return this.client.rest.put(`${F}/${e}`,JSON.stringify(t))}makeParam(e,t){const s={};return e===exports.DivideScope.Connection?s.connection_id=t:s.path=t,s}}function W(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 B extends Error{}function G(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 V(e,t){if("string"!=typeof e)throw new B("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 B(`Invalid token specified: missing part #${s+1}`);let r;try{r=G(i)}catch(e){throw new B(`Invalid token specified: invalid base64 for part #${s+1} (${e.message})`)}try{return JSON.parse(r)}catch(e){throw new B(`Invalid token specified: invalid json for part #${s+1} (${e.message})`)}}B.prototype.name="InvalidTokenError";const z=(e,t)=>W(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 K(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 X=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 Y(e){return e instanceof Headers?Object.fromEntries(e.entries()):Array.isArray(e)?Object.fromEntries(e):e}const Q="/api/v1",Z="/api/v2",ee=`${window.location.protocol}//${window.location.host}`;class te{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 W(this,void 0,void 0,(function*(){return new Promise(((i,r)=>W(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 z(this.client.requestInterceptors,a)),this.state.authToken)for(const[e,i]of this.state.authToken.entries()){const r=V(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 z(this.client.requestInterceptors,a))}}const l=new XMLHttpRequest;(null==s?void 0:s.params)&&0!==Object.keys(s.params).length&&(t+="?"+X(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=Y(s.headers);for(const[t,s]of Object.entries(e))(this.state.clientParams.host===ee||"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=()=>W(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 z(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 W(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 W(this,void 0,void 0,(function*(){this.state.clientParams.host=e,this.state.requestParams.headers={};try{return yield t()}finally{this.state.clientParams.host=ee}}))}}class se{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 W(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=`${ee}${Q}/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};K("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 W(this,void 0,void 0,(function*(){return new Promise((e=>{const t=setInterval((()=>{this.isUpdating||(clearInterval(t),e())}),100)}))}))}}const ie="/static/extensions",re="/extensions/defaults";class ne{constructor(e){this.client=e}getSetting(e){return this.client.rest.get(`${ie}/${e}/settings`)}setSetting(e,t){return this.client.rest.post(`${ie}/${e}/settings`,JSON.stringify(t))}deleteSetting(e){return this.client.rest.delete(`${ie}/${e}/settings`)}get(e){return this.client.rest.get(`${ie}/${e}`)}getByKey(e){return this.client.rest.get(`${ie}/${e}`)}getDefault(e=[]){return this.client.rest.get(re,{ext_code:e})}setDefault(e,t){return this.client.rest.post(re,JSON.stringify({ext_code:e,ext_uniq_key:t}))}checkUpdates(){return this.client.rest.post(`${ie}/check_updates`)}updateVersion(e,t){return this.client.rest.put(`${ie}/${e}`,JSON.stringify({version:t}))}list(e){return this.client.rest.get(ie,e)}delete(e,t){return this.client.rest.delete(`${ie}/${e}`)}upload(e,t){const s=new FormData;s.set("file",t);const{promise:i,abort:r}=this.client.rest.upload(ie,s,{onUploadProgress:t=>{e(t)}});return{promise:this.client.rest.changeBaseUrlVersion(Z,(()=>i)),abort:r}}install(e,t){return this.client.rest.changeBaseUrlVersion(Z,(()=>this.client.rest.post(`${ie}/site`,JSON.stringify({uniq_key:e,version:t}))))}}const oe="/anons_ext/extensions";class ce{constructor(e){this.client=e}listExtensionsSite(e){return this.client.rest.changeHost("https://next-box.ru",(()=>this.client.rest.get(oe,e)))}extensionDetailSite(e){return this.client.rest.changeHost("https://next-box.ru",(()=>this.client.rest.get(`${oe}/${e}`)))}extensionMarkdown(e,t){return this.client.rest.changeHost("https://next-box.ru",(()=>this.client.rest.get(`${oe}/${e}/readme`,{},t)))}}const ae="/disk",le=`${ae}/check`;class pe{constructor(e){this.client=e}info(e,t){return this.client.rest.get(`${ae}/${e}/element`,{path:t})}list(e,t){return this.client.rest.get(`${ae}/${e}`,t)}create(e,t){return this.client.rest.post(`${ae}/${e}/element`,JSON.stringify(t))}replace(e,t,s){return this.client.rest.put(`${ae}/${e}/files?path=${t}`,s)}read(e,t){return this.client.rest.get(`${ae}/${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(`${ae}/${t}/files`,r,{onUploadProgress:t=>{e(t)}});return{promise:n,abort:o}}uploadNet(e,t){return this.client.rest.post(`${ae}/${e}/files/net`,JSON.stringify(t))}delete(e,t){return this.client.rest.delete(`${ae}/${e}/trash/element`,{path:t})}check(e){return this.client.rest.post(le,JSON.stringify(e))}}const de="/settings";class he{constructor(e){this.client=e}settings(){return this.client.rest.get(de)}changeSettings(e){return this.client.rest.post(de,JSON.stringify(e))}queryInit(){return this.client.rest.get("/query/init")}}const ue="/groups";class ge{constructor(e){this.client=e}list(e){return this.client.rest.get(ue,e)}listUsers(e){return this.client.rest.get(`${ue}/${e}/users`)}create(e){return this.client.rest.post(ue,JSON.stringify(e))}update(e,t){return this.client.rest.put(`${ue}/${e}`,JSON.stringify(t))}delete(e){return this.client.rest.delete(`${ue}/${e}`)}}const xe="/license",ve=`${xe}/manual-check`,Se=`${xe}/hardware/hash`;class _e{constructor(e){this.client=e}info(){return this.client.rest.get(xe)}create(e){return this.client.rest.post(xe,JSON.stringify(e))}check(){return this.client.rest.post(ve)}delete(){return this.client.rest.delete(xe)}getHash(){return this.client.rest.get(Se)}}const fe="/links";class ye{constructor(e){this.client=e}createShortLink(e){return this.client.rest.post(fe,JSON.stringify(e))}updateShortLink(e){return this.client.rest.put(fe,JSON.stringify(e))}}const $e="/logs";class me{constructor(e){this.client=e}getUsersLogs(e){return this.client.rest.get(`${$e}/users`,e)}getSystemLogs(e,t,s){return this.client.rest.get(`${$e}/${e}`,{},{observe:exports.RequestObserve.Response,responseType:exports.ResponseType.Text,headers:{Range:`bytes=${t}-${s}`}})}}const ke="/notifications",we=`${ke}/all`,Ae=`${ke}/subscription`,Re=`${ke}/permission`;class Oe{constructor(e){this.client=e}list(e){return this.client.rest.get(ke,e)}toggleStatus(e,t){return this.client.rest.put(ke,JSON.stringify({ids:e,to_status:t}))}toggleAllStatus(e){return this.client.rest.put(we,JSON.stringify({to_status:e}))}delete(e){return this.client.rest.delete(ke,{id:e})}deleteAll(){return this.client.rest.delete(we)}getPermission(){return this.client.rest.get(Re)}setPermission(e){return this.client.rest.post(Re,JSON.stringify({enabled:e}))}getSubscription(){return this.client.rest.get(Ae)}setSubscription(e){const t={action_groups:Object.assign({},e)};return this.client.rest.post(Ae,JSON.stringify(t))}}const Te="/roles",be=`${Te}/default`,Ce="/permissions";class Ne{constructor(e){this.client=e}list(e){return this.client.rest.get(Te,e)}get(e){return this.client.rest.get(`${Te}/${e}`)}getDefault(){return this.client.rest.get(`${be}`)}create(e){return this.client.rest.post(Te,JSON.stringify(e))}update(e,t){return this.client.rest.put(`${Te}/${e}`,JSON.stringify(t))}delete(e){return this.client.rest.delete(`${Te}/${e}`)}permissionList(){return this.client.rest.get(Ce)}addPermission(e,t){return this.client.rest.put(`${Te}/${e}/permissions`,JSON.stringify({ids:t}))}deletePermission(e,t){return this.client.rest.delete(`${Te}/${e}/${Ce}`,{ids:t})}}const Ee="/share",Ue=`${Ee}/restrictions`;class De{constructor(e){this.client=e}info(e,t){const s=new URLSearchParams({path:e,share_token:t});return this.client.rest.get(`${Ee}?${s.toString()}`)}checkPassword(e,t){const s=encodeURIComponent(e);return this.client.rest.get(`${Ee}/password?share_token=${t}&share_pass=${s}`)}checkToken(e){return this.client.rest.get(`${Ee}?share_token=${e}`)}getRestriction(e){return this.client.rest.get(`${Ue}/${e}`)}restrictions(e){return this.client.rest.get(Ue,e)}restrictionsChange(e,t){return this.client.rest.put(`${Ue}/${e}`,JSON.stringify(t))}}const Pe="/storage",Je=`${Pe}/element`,Ie=`${Je}/move`,Le=`${Je}/copy`,qe=`${Je}/content_type_size`,je="/disk";class Me{constructor(e,t){this.client=e,this.fcaApiService=t}list(e){return this.client.rest.get(Pe,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(`${je}/${i}/files/move${je}/${r}`,JSON.stringify(n)):t===exports.StorageRoot.fca?(i&&(n.from_divide_id=i),this.client.rest.put(`${je}/${r}/files/from/box`,JSON.stringify(n))):s===exports.StorageRoot.fca?(r&&(n.to_divide_id=r),this.client.rest.put(`${je}/${i}/files/to/box`,JSON.stringify(n))):this.client.rest.post(Ie,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(`${je}/${i}/files/copy${je}/${r}`,JSON.stringify(n)):s===exports.StorageRoot.fca?(i&&(n.from_divide_id=i),this.client.rest.post(`${je}/${r}/files/from/box`,JSON.stringify(n))):t===exports.StorageRoot.fca?(r&&(n.to_divide_id=r),this.client.rest.post(`${je}/${i}/files/to/box`,JSON.stringify(n))):this.client.rest.post(Le,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(qe,e)}}const Fe="/storage/files",He=`${Fe}/net`;class We{constructor(e){this.client=e}read(e,t){return t.path=e,this.client.rest.get(Fe,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(`${Fe}?${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(Fe,r,{onUploadProgress:t=>{e(t)}});return{promise:n,abort:o}}uploadNet(e){return this.client.rest.post(He,JSON.stringify(e))}}class Be{constructor(e){this.client=e}instance(){return this.client.rest.get("/storage/instance")}}const Ge="/storage/element/share";class Ve{constructor(e){this.client=e}info(e){return this.client.rest.get(Ge,{path:e})}create(e,t){const s={path:e,permissions_type:t};return this.client.rest.post(Ge,JSON.stringify(s))}change(e){return this.client.rest.put(`${Ge}/${e.token}`,JSON.stringify(e))}delete(e){return this.client.rest.delete(Ge,{path:e})}refresh(e){return this.client.rest.put(`${Ge}/${e}/refresh`)}}const ze="/storage/trash",Ke=`${ze}/element`,Xe=`${Ke}/all`;class Ye{constructor(e){this.client=e}list(e){return this.client.rest.get(ze,e)}clear(e){return this.client.rest.delete(Ke,e)}clearAll(){return this.client.rest.delete(Xe)}restore(e){return this.client.rest.patch(Ke,JSON.stringify({del_groups:e}))}}const Qe="/users",Ze=`${Qe}/me`,et=`${Ze}/avatars`,tt=`${Ze}/sessions`,st=`${Ze}/tokens`,it=`${Ze}/change-password`;class rt{constructor(e){this.client=e}list(e){return this.client.rest.get(Qe,e)}get(e){return this.client.rest.get(Qe+`/${e}`)}create(e){return this.client.rest.post(Qe,JSON.stringify(e))}update(e,t){return this.client.rest.put(Qe+`/${e}`,JSON.stringify(t))}delete(e,t){return this.client.rest.delete(`${Qe}/${e}`,t)}restore(e){return this.client.rest.post(`${Qe}/${e}/restore`)}me(){return this.client.rest.get(Ze)}updateMe(e){return this.client.rest.put(Ze,JSON.stringify(e))}createToken(e){return this.client.rest.post(st,JSON.stringify(e))}listToken(e){return this.client.rest.get(st,e)}deleteToken(e){return this.client.rest.delete(`${st}/${e}`)}changeMyPassword(e){return this.client.rest.put(it,JSON.stringify(e))}changeUsersPassword(e,t){return this.client.rest.put(`${Qe}/${e}/change-password`,JSON.stringify(t))}meUploadAvatar(e,t){const s=new FormData;return s.append("file",e,t),this.client.rest.post(et,s)}meDeleteAvatar(){return this.client.rest.delete(et)}meListSession(e){return this.client.rest.get(tt,e)}meDeleteSession(e){let t=tt;return e&&(t+=`/${e}`),this.client.rest.delete(t)}setRole(e,t=null){return this.client.rest.put(`${Qe}/${e}/roles`,JSON.stringify({role_id:t}))}}const nt="/storage/element",ot=`${nt}/history`,ct=`${nt}/version`,at=`${ct}/current`,lt=`${ct}/size`;class pt{constructor(e){this.client=e}history(e){return this.client.rest.get(ot,e)}versions(e){return this.client.rest.get(ct,e)}create(e){return this.client.rest.post(ct,JSON.stringify(e))}edit(e){return this.client.rest.put(ct,JSON.stringify(e))}delete(e){return this.client.rest.delete(ct,e)}size(e){return this.client.rest.get(lt,e)}makeCurrent(e){return this.client.rest.post(at,JSON.stringify(e))}}exports.AuthApiService=i,exports.BASE_URL_V1=Q,exports.BASE_URL_V2=Z,exports.CONNECTIONS_PERMISSION=n,exports.Client=class{constructor(e){this.AuthApiService=new i(this),this.ConnectionsApiService=new q(this),this.DiscoveryApiService=new j(this),this.DivideApiService=new H(this),this.ExtensionsApiService=new ne(this),this.ExtensionsExternalApiService=new ce(this),this.FcaApiService=new pe(this),this.GatewayApiService=new he(this),this.GroupApiService=new ge(this),this.LicenseApiService=new _e(this),this.LinksApiService=new ye(this),this.LogstashApiService=new me(this),this.NotificationApiService=new Oe(this),this.RoleApiService=new Ne(this),this.ShareApiService=new De(this),this.StorageElementApiService=new Me(this,this.FcaApiService),this.StorageFilesApiService=new We(this),this.StorageInstanceApiService=new Be(this),this.StorageShareApiService=new Ve(this),this.StorageTrashApiService=new Ye(this),this.UserApiService=new rt(this),this.VersionApiService=new pt(this),this.tokenUpdate=new se(this.AuthApiService),this.rest=new te(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=q,exports.DiscoveryApiService=j,exports.DivideApiService=H,exports.ExtensionsApiService=ne,exports.ExtensionsExternalApiService=ce,exports.FcaApiService=pe,exports.GatewayApiService=he,exports.GroupApiService=ge,exports.HOST=ee,exports.LicenseApiService=_e,exports.LinksApiService=ye,exports.LogstashApiService=me,exports.NotificationApiService=Oe,exports.Rest=te,exports.RoleApiService=Ne,exports.ShareApiService=De,exports.StorageElementApiService=Me,exports.StorageFilesApiService=We,exports.StorageInstanceApiService=Be,exports.StorageShareApiService=Ve,exports.StorageTrashApiService=Ye,exports.TokenUpdate=se,exports.UserApiService=rt,exports.VersionApiService=pt,exports.applyInterceptors=z,exports.getCookieValue=K,exports.makeUrlParams=X,exports.normalizeHeaders=Y;