@neuralinnovations/dataisland-sdk 0.5.1 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/package.json +1 -1
- package/dist/src/dto/invitesResponse.d.ts +3 -0
- package/dist/src/dto/invitesResponse.d.ts.map +1 -1
- package/dist/src/dto/workspacesResponse.d.ts +3 -0
- package/dist/src/dto/workspacesResponse.d.ts.map +1 -1
- package/dist/src/services/statistics.d.ts +3 -0
- package/dist/src/services/statistics.d.ts.map +1 -1
- package/dist/src/services/statistics.js +5 -0
- package/dist/src/services/statistics.js.map +1 -1
- package/dist/src/storages/administration/administration.d.ts +2 -0
- package/dist/src/storages/administration/administration.d.ts.map +1 -1
- package/dist/src/storages/administration/administration.js.map +1 -1
- package/dist/src/storages/administration/cheats.administration.d.ts +41 -0
- package/dist/src/storages/administration/cheats.administration.d.ts.map +1 -0
- package/dist/src/storages/administration/cheats.administration.impl.d.ts +17 -0
- package/dist/src/storages/administration/cheats.administration.impl.d.ts.map +1 -0
- package/dist/src/storages/administration/cheats.administration.impl.js +109 -0
- package/dist/src/storages/administration/cheats.administration.impl.js.map +1 -0
- package/dist/src/storages/administration/cheats.administration.js +7 -0
- package/dist/src/storages/administration/cheats.administration.js.map +1 -0
- package/package.json +1 -1
- package/src/dto/invitesResponse.ts +4 -0
- package/src/dto/workspacesResponse.ts +4 -0
- package/src/services/statistics.ts +9 -0
- package/src/storages/administration/administration.ts +3 -0
- package/src/storages/administration/cheats.administration.impl.ts +155 -0
- package/src/storages/administration/cheats.administration.ts +48 -0
package/dist/package.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"invitesResponse.d.ts","sourceRoot":"","sources":["../../../src/dto/invitesResponse.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,UAAU,EAAE,CAAA;IACzB,KAAK,EAAE,cAAc,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,CAAC,CAAA;IACX,MAAM,EAAE,CAAC,CAAA;CACV;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd"}
|
1
|
+
{"version":3,"file":"invitesResponse.d.ts","sourceRoot":"","sources":["../../../src/dto/invitesResponse.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,UAAU,EAAE,CAAA;IACzB,KAAK,EAAE,cAAc,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,CAAC,CAAA;IACX,MAAM,EAAE,CAAC,CAAA;CACV;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"workspacesResponse.d.ts","sourceRoot":"","sources":["../../../src/dto/workspacesResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAA;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAE/C,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,WAAW,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,mBAAmB,CAAA;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,YAAY,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,oBAAY,mBAAmB;IAC7B,IAAI,IAAI;IACR,kBAAkB,KAAK;IACvB,UAAU,KAAK;IACf,kBAAkB,KAAK;IACvB,UAAU,KAAK;IACf,KAAK,KAAK;IACV,IAAI,MAAM;CACX;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,mBAAmB,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,mBAAmB,CAAA;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,eAAe,EAAE,CAAA;CAC5B;AAED,qBAAa,WAAW;IACf,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;gBAER,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CAIvC;AAGD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,EAAE,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,oBAAY,YAAY;IACtB,IAAI,IAAI;IACR,YAAY,IAAI;IAChB,SAAS,IAAI;IACb,IAAI,IAAI;IACR,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;CACT"}
|
1
|
+
{"version":3,"file":"workspacesResponse.d.ts","sourceRoot":"","sources":["../../../src/dto/workspacesResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAA;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAE/C,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,WAAW,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,mBAAmB,CAAA;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,YAAY,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,oBAAY,mBAAmB;IAC7B,IAAI,IAAI;IACR,kBAAkB,KAAK;IACvB,UAAU,KAAK;IACf,kBAAkB,KAAK;IACvB,UAAU,KAAK;IACf,KAAK,KAAK;IACV,IAAI,MAAM;CACX;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,mBAAmB,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,mBAAmB,CAAA;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,eAAe,EAAE,CAAA;CAC5B;AAED,qBAAa,WAAW;IACf,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;gBAER,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CAIvC;AAGD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,EAAE,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,oBAAY,YAAY;IACtB,IAAI,IAAI;IACR,YAAY,IAAI;IAChB,SAAS,IAAI;IACb,IAAI,IAAI;IACR,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;CACT;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB"}
|
@@ -3,13 +3,16 @@ import { LibraryAdministration } from "../storages/administration/library.admini
|
|
3
3
|
import { StatisticAdministrationImpl } from "../storages/administration/statistics.administration.impl";
|
4
4
|
import { Administration } from "../storages/administration/administration";
|
5
5
|
import { UsersAdministrationImpl } from "../storages/administration/users.administration.impl";
|
6
|
+
import { CheatsAdministrationImpl } from "../storages/administration/cheats.administration.impl";
|
6
7
|
export declare class AdministrationService extends Service implements Administration {
|
7
8
|
private readonly _libraries;
|
8
9
|
private readonly _statistic;
|
9
10
|
private readonly _users;
|
11
|
+
private readonly _cheats;
|
10
12
|
constructor(context: ServiceContext);
|
11
13
|
get libraries(): LibraryAdministration;
|
12
14
|
get statistic(): StatisticAdministrationImpl;
|
13
15
|
get users(): UsersAdministrationImpl;
|
16
|
+
get cheats(): CheatsAdministrationImpl;
|
14
17
|
}
|
15
18
|
//# sourceMappingURL=statistics.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"statistics.d.ts","sourceRoot":"","sources":["../../../src/services/statistics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAInD,OAAO,EACL,qBAAqB,EACtB,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EACL,2BAA2B,EAC5B,MAAM,2DAA2D,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAA;AAC1E,OAAO,EACL,uBAAuB,EACxB,MAAM,sDAAsD,CAAA;
|
1
|
+
{"version":3,"file":"statistics.d.ts","sourceRoot":"","sources":["../../../src/services/statistics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAInD,OAAO,EACL,qBAAqB,EACtB,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EACL,2BAA2B,EAC5B,MAAM,2DAA2D,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAA;AAC1E,OAAO,EACL,uBAAuB,EACxB,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EACL,wBAAwB,EACzB,MAAM,uDAAuD,CAAA;AAE9D,qBAAa,qBAAsB,SAAQ,OAAQ,YAAW,cAAc;IAC1E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2B;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IACxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;gBAEtC,OAAO,EAAE,cAAc;IASnC,IAAI,SAAS,IAAI,qBAAqB,CAErC;IAED,IAAI,SAAS,IAAI,2BAA2B,CAE3C;IAED,IAAI,KAAK,IAAI,uBAAuB,CAEnC;IAED,IAAI,MAAM,IAAI,wBAAwB,CAErC;CACF"}
|
@@ -5,12 +5,14 @@ const service_1 = require("./service");
|
|
5
5
|
const library_administration_impl_1 = require("../storages/administration/library.administration.impl");
|
6
6
|
const statistics_administration_impl_1 = require("../storages/administration/statistics.administration.impl");
|
7
7
|
const users_administration_impl_1 = require("../storages/administration/users.administration.impl");
|
8
|
+
const cheats_administration_impl_1 = require("../storages/administration/cheats.administration.impl");
|
8
9
|
class AdministrationService extends service_1.Service {
|
9
10
|
constructor(context) {
|
10
11
|
super(context);
|
11
12
|
this._libraries = new library_administration_impl_1.LibraryAdministrationImpl(context.context);
|
12
13
|
this._statistic = new statistics_administration_impl_1.StatisticAdministrationImpl(context.context);
|
13
14
|
this._users = new users_administration_impl_1.UsersAdministrationImpl(context.context);
|
15
|
+
this._cheats = new cheats_administration_impl_1.CheatsAdministrationImpl(context.context);
|
14
16
|
}
|
15
17
|
get libraries() {
|
16
18
|
return this._libraries;
|
@@ -21,6 +23,9 @@ class AdministrationService extends service_1.Service {
|
|
21
23
|
get users() {
|
22
24
|
return this._users;
|
23
25
|
}
|
26
|
+
get cheats() {
|
27
|
+
return this._cheats;
|
28
|
+
}
|
24
29
|
}
|
25
30
|
exports.AdministrationService = AdministrationService;
|
26
31
|
//# sourceMappingURL=statistics.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"statistics.js","sourceRoot":"","sources":["../../../src/services/statistics.ts"],"names":[],"mappings":";;;AAAA,uCAAmD;AACnD,wGAE+D;AAI/D,8GAEkE;AAElE,oGAE6D;
|
1
|
+
{"version":3,"file":"statistics.js","sourceRoot":"","sources":["../../../src/services/statistics.ts"],"names":[],"mappings":";;;AAAA,uCAAmD;AACnD,wGAE+D;AAI/D,8GAEkE;AAElE,oGAE6D;AAC7D,sGAE8D;AAE9D,MAAa,qBAAsB,SAAQ,iBAAO;IAMhD,YAAY,OAAuB;QACjC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEd,IAAI,CAAC,UAAU,GAAG,IAAI,uDAAyB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAChE,IAAI,CAAC,UAAU,GAAG,IAAI,4DAA2B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAClE,IAAI,CAAC,MAAM,GAAG,IAAI,mDAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,qDAAwB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC9D,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF;AA9BD,sDA8BC"}
|
@@ -1,9 +1,11 @@
|
|
1
1
|
import { LibraryAdministration } from "./library.administration";
|
2
2
|
import { StatisticAdministration } from "./statistics.administration";
|
3
3
|
import { UsersAdministration } from "./users.administration";
|
4
|
+
import { CheatsAdministration } from "./cheats.administration";
|
4
5
|
export declare abstract class Administration {
|
5
6
|
abstract get libraries(): LibraryAdministration;
|
6
7
|
abstract get statistic(): StatisticAdministration;
|
7
8
|
abstract get users(): UsersAdministration;
|
9
|
+
abstract get cheats(): CheatsAdministration;
|
8
10
|
}
|
9
11
|
//# sourceMappingURL=administration.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"administration.d.ts","sourceRoot":"","sources":["../../../../src/storages/administration/administration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,EAAC,mBAAmB,EAAC,MAAM,wBAAwB,CAAA;
|
1
|
+
{"version":3,"file":"administration.d.ts","sourceRoot":"","sources":["../../../../src/storages/administration/administration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,EAAC,mBAAmB,EAAC,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAC,oBAAoB,EAAC,MAAM,yBAAyB,CAAA;AAE5D,8BAAsB,cAAc;IAClC,QAAQ,KAAK,SAAS,IAAI,qBAAqB,CAAE;IAEjD,QAAQ,KAAK,SAAS,IAAI,uBAAuB,CAAC;IAElD,QAAQ,KAAK,KAAK,IAAI,mBAAmB,CAAC;IAE1C,QAAQ,KAAK,MAAM,IAAI,oBAAoB,CAAA;CAC5C"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"administration.js","sourceRoot":"","sources":["../../../../src/storages/administration/administration.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"administration.js","sourceRoot":"","sources":["../../../../src/storages/administration/administration.ts"],"names":[],"mappings":";;;AAKA,MAAsB,cAAc;CAQnC;AARD,wCAQC"}
|
@@ -0,0 +1,41 @@
|
|
1
|
+
import { OrganizationId } from "../organizations/organizations";
|
2
|
+
import { WorkspaceId } from "../workspaces/workspaces";
|
3
|
+
import { BrokenFilesResponse } from "../../dto/workspacesResponse";
|
4
|
+
import { EmailsWhitelistResponse } from "../../dto/invitesResponse";
|
5
|
+
export declare abstract class CheatsAdministration {
|
6
|
+
/**
|
7
|
+
* Cleans redis cache on server
|
8
|
+
* @param cleanCache
|
9
|
+
*/
|
10
|
+
abstract cleanRedisCache(cleanCache: boolean): Promise<void>;
|
11
|
+
/**
|
12
|
+
* Get info about broken files on server
|
13
|
+
* @param organizationId
|
14
|
+
* @param workspaceId
|
15
|
+
*/
|
16
|
+
abstract getBrokenFilesInfo(organizationId: OrganizationId, workspaceId: WorkspaceId): Promise<BrokenFilesResponse>;
|
17
|
+
/**
|
18
|
+
* Delete broken files on server
|
19
|
+
* @param organizationId
|
20
|
+
* @param workspaceId
|
21
|
+
* @param isRemoveFromDb
|
22
|
+
* @param isRemoveFromService
|
23
|
+
*/
|
24
|
+
abstract deleteBrokenFiles(organizationId: OrganizationId, workspaceId: WorkspaceId, isRemoveFromDb: boolean, isRemoveFromService: boolean): Promise<BrokenFilesResponse>;
|
25
|
+
/**
|
26
|
+
* Adds email to server whitelist
|
27
|
+
* @param email
|
28
|
+
* @param expiredDays
|
29
|
+
*/
|
30
|
+
abstract addEmailToWhitelist(email: string, expiredDays: number): Promise<void>;
|
31
|
+
/**
|
32
|
+
* Deletes email from whitelist
|
33
|
+
* @param email
|
34
|
+
*/
|
35
|
+
abstract removeEmailFromWhitelist(email: string): Promise<void>;
|
36
|
+
/**
|
37
|
+
* Get all emails from whitelise
|
38
|
+
*/
|
39
|
+
abstract getWhitelistEmails(): Promise<EmailsWhitelistResponse>;
|
40
|
+
}
|
41
|
+
//# sourceMappingURL=cheats.administration.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cheats.administration.d.ts","sourceRoot":"","sources":["../../../../src/storages/administration/cheats.administration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAC,WAAW,EAAC,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAC,uBAAuB,EAAC,MAAM,2BAA2B,CAAA;AAGjE,8BAAsB,oBAAoB;IAExC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAE5D;;;;OAIG;IACH,QAAQ,CAAC,kBAAkB,CAAC,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAEnH;;;;;;OAMG;IACH,QAAQ,CAAC,iBAAiB,CAAC,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAEzK;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAE/E;;;OAGG;IACH,QAAQ,CAAC,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAE/D;;OAEG;IACH,QAAQ,CAAC,kBAAkB,IAAI,OAAO,CAAC,uBAAuB,CAAC;CAChE"}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { CheatsAdministration } from "./cheats.administration";
|
2
|
+
import { Context } from "../../context";
|
3
|
+
import { OrganizationId } from "../organizations/organizations";
|
4
|
+
import { WorkspaceId } from "../workspaces/workspaces";
|
5
|
+
import { BrokenFilesResponse } from "../../dto/workspacesResponse";
|
6
|
+
import { EmailsWhitelistResponse } from "../../dto/invitesResponse";
|
7
|
+
export declare class CheatsAdministrationImpl extends CheatsAdministration {
|
8
|
+
private context;
|
9
|
+
constructor(context: Context);
|
10
|
+
cleanRedisCache(cleanCache: boolean): Promise<void>;
|
11
|
+
deleteBrokenFiles(organizationId: OrganizationId, workspaceId: WorkspaceId, isRemoveFromDb: boolean, isRemoveFromService: boolean): Promise<BrokenFilesResponse>;
|
12
|
+
getBrokenFilesInfo(organizationId: OrganizationId, workspaceId: WorkspaceId): Promise<BrokenFilesResponse>;
|
13
|
+
getWhitelistEmails(): Promise<EmailsWhitelistResponse>;
|
14
|
+
addEmailToWhitelist(email: string, expiredDays: number): Promise<void>;
|
15
|
+
removeEmailFromWhitelist(email: string): Promise<void>;
|
16
|
+
}
|
17
|
+
//# sourceMappingURL=cheats.administration.impl.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cheats.administration.impl.d.ts","sourceRoot":"","sources":["../../../../src/storages/administration/cheats.administration.impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAA;AACrC,OAAO,EAAC,cAAc,EAAC,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAC,WAAW,EAAC,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAC,uBAAuB,EAAC,MAAM,2BAA2B,CAAA;AAKjE,qBAAa,wBAAyB,SAAQ,oBAAoB;IAChE,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,OAAO;IAKtB,eAAe,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBnD,iBAAiB,CAAC,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAoChK,kBAAkB,CAAC,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmB1G,kBAAkB,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAiBtD,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBtE,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAqB7D"}
|
@@ -0,0 +1,109 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.CheatsAdministrationImpl = void 0;
|
4
|
+
const cheats_administration_1 = require("./cheats.administration");
|
5
|
+
const rpcService_1 = require("../../services/rpcService");
|
6
|
+
const responseUtils_1 = require("../../services/responseUtils");
|
7
|
+
class CheatsAdministrationImpl extends cheats_administration_1.CheatsAdministration {
|
8
|
+
constructor(context) {
|
9
|
+
super();
|
10
|
+
this.context = context;
|
11
|
+
}
|
12
|
+
async cleanRedisCache(cleanCache) {
|
13
|
+
var _a;
|
14
|
+
if (cleanCache === undefined || cleanCache === null) {
|
15
|
+
throw new Error("cleanCache is required, must be not empty");
|
16
|
+
}
|
17
|
+
// send create request to the server
|
18
|
+
const response = await ((_a = this.context
|
19
|
+
.resolve(rpcService_1.RpcService)) === null || _a === void 0 ? void 0 : _a.requestBuilder("api/v1/Cheats/clean/cache").sendPostJson({
|
20
|
+
cleanCache: cleanCache
|
21
|
+
}));
|
22
|
+
// check response status
|
23
|
+
if (responseUtils_1.ResponseUtils.isFail(response)) {
|
24
|
+
await responseUtils_1.ResponseUtils.throwError("Failed to clean redis cache", response);
|
25
|
+
}
|
26
|
+
}
|
27
|
+
async deleteBrokenFiles(organizationId, workspaceId, isRemoveFromDb, isRemoveFromService) {
|
28
|
+
var _a;
|
29
|
+
if (organizationId === undefined || organizationId === null || organizationId.trim() === "") {
|
30
|
+
throw new Error("organizationId is required, must be not empty");
|
31
|
+
}
|
32
|
+
if (workspaceId === undefined || workspaceId === null || workspaceId.trim() === "") {
|
33
|
+
throw new Error("workspaceId is required, must be not empty");
|
34
|
+
}
|
35
|
+
if (isRemoveFromDb === undefined || isRemoveFromDb === null) {
|
36
|
+
throw new Error("isRemoveFromDb is required, must be not empty");
|
37
|
+
}
|
38
|
+
if (isRemoveFromService === undefined || isRemoveFromService === null) {
|
39
|
+
throw new Error("isRemoveFromService is required, must be not empty");
|
40
|
+
}
|
41
|
+
// send create request to the server
|
42
|
+
const response = await ((_a = this.context
|
43
|
+
.resolve(rpcService_1.RpcService)) === null || _a === void 0 ? void 0 : _a.requestBuilder("api/v1/Cheats/files/broken/clean").sendPostJson({
|
44
|
+
organizationId: organizationId,
|
45
|
+
workspaceId: workspaceId,
|
46
|
+
isRemoveFromDb: isRemoveFromDb,
|
47
|
+
isRemoveFromService: isRemoveFromService
|
48
|
+
}));
|
49
|
+
// check response status
|
50
|
+
if (responseUtils_1.ResponseUtils.isFail(response)) {
|
51
|
+
await responseUtils_1.ResponseUtils.throwError(`Failed to clean broken files for ${organizationId}, workspace ${workspaceId}`, response);
|
52
|
+
}
|
53
|
+
return (await response.json());
|
54
|
+
}
|
55
|
+
async getBrokenFilesInfo(organizationId, workspaceId) {
|
56
|
+
var _a;
|
57
|
+
const response = await ((_a = this.context
|
58
|
+
.resolve(rpcService_1.RpcService)) === null || _a === void 0 ? void 0 : _a.requestBuilder("api/v1/Cheats/files/broken/info").searchParam("organizationId", organizationId).searchParam("workspaceId", workspaceId).sendGet());
|
59
|
+
// check response status
|
60
|
+
if (responseUtils_1.ResponseUtils.isFail(response)) {
|
61
|
+
await responseUtils_1.ResponseUtils.throwError("Can not get broken files info", response);
|
62
|
+
}
|
63
|
+
return (await response.json());
|
64
|
+
}
|
65
|
+
async getWhitelistEmails() {
|
66
|
+
var _a;
|
67
|
+
const response = await ((_a = this.context
|
68
|
+
.resolve(rpcService_1.RpcService)) === null || _a === void 0 ? void 0 : _a.requestBuilder("api/v1/Cheats/invites/white_list").sendGet());
|
69
|
+
// check response status
|
70
|
+
if (responseUtils_1.ResponseUtils.isFail(response)) {
|
71
|
+
await responseUtils_1.ResponseUtils.throwError("Can not get emails whitelist", response);
|
72
|
+
}
|
73
|
+
return (await response.json());
|
74
|
+
}
|
75
|
+
async addEmailToWhitelist(email, expiredDays) {
|
76
|
+
var _a;
|
77
|
+
if (email === undefined || email === null || email.trim() === "") {
|
78
|
+
throw new Error("email is required, must be not empty");
|
79
|
+
}
|
80
|
+
if (expiredDays === undefined || expiredDays === null || expiredDays === 0) {
|
81
|
+
throw new Error("expiredDays is required, must be not empty and grater than 0");
|
82
|
+
}
|
83
|
+
// send create request to the server
|
84
|
+
const response = await ((_a = this.context
|
85
|
+
.resolve(rpcService_1.RpcService)) === null || _a === void 0 ? void 0 : _a.requestBuilder("api/v1/Cheats/invites/white_list").sendPostJson({
|
86
|
+
email: email,
|
87
|
+
expiredDays: expiredDays
|
88
|
+
}));
|
89
|
+
// check response status
|
90
|
+
if (responseUtils_1.ResponseUtils.isFail(response)) {
|
91
|
+
await responseUtils_1.ResponseUtils.throwError(`Failed to add email ${email} to whitelist`, response);
|
92
|
+
}
|
93
|
+
}
|
94
|
+
async removeEmailFromWhitelist(email) {
|
95
|
+
var _a;
|
96
|
+
if (email === null || email === undefined || email.length === 0 || email.trim().length === 0) {
|
97
|
+
throw new Error("Email delete from whitelist, email is empty");
|
98
|
+
}
|
99
|
+
// send request to the server
|
100
|
+
const response = await ((_a = this.context
|
101
|
+
.resolve(rpcService_1.RpcService)) === null || _a === void 0 ? void 0 : _a.requestBuilder("/api/v1/Cheats/invites/white_list").searchParam("email", email).sendDelete());
|
102
|
+
// check response status
|
103
|
+
if (responseUtils_1.ResponseUtils.isFail(response)) {
|
104
|
+
await responseUtils_1.ResponseUtils.throwError(`Email ${email} delete from whitelist failed`, response);
|
105
|
+
}
|
106
|
+
}
|
107
|
+
}
|
108
|
+
exports.CheatsAdministrationImpl = CheatsAdministrationImpl;
|
109
|
+
//# sourceMappingURL=cheats.administration.impl.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cheats.administration.impl.js","sourceRoot":"","sources":["../../../../src/storages/administration/cheats.administration.impl.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cheats.administration.js","sourceRoot":"","sources":["../../../../src/storages/administration/cheats.administration.ts"],"names":[],"mappings":";;;AAMA,MAAsB,oBAAoB;CAyCzC;AAzCD,oDAyCC"}
|
package/package.json
CHANGED
@@ -12,11 +12,15 @@ import { Administration } from "../storages/administration/administration"
|
|
12
12
|
import {
|
13
13
|
UsersAdministrationImpl
|
14
14
|
} from "../storages/administration/users.administration.impl"
|
15
|
+
import {
|
16
|
+
CheatsAdministrationImpl
|
17
|
+
} from "../storages/administration/cheats.administration.impl"
|
15
18
|
|
16
19
|
export class AdministrationService extends Service implements Administration {
|
17
20
|
private readonly _libraries: LibraryAdministrationImpl
|
18
21
|
private readonly _statistic: StatisticAdministrationImpl
|
19
22
|
private readonly _users: UsersAdministrationImpl
|
23
|
+
private readonly _cheats: CheatsAdministrationImpl
|
20
24
|
|
21
25
|
constructor(context: ServiceContext) {
|
22
26
|
super(context)
|
@@ -24,6 +28,7 @@ export class AdministrationService extends Service implements Administration {
|
|
24
28
|
this._libraries = new LibraryAdministrationImpl(context.context)
|
25
29
|
this._statistic = new StatisticAdministrationImpl(context.context)
|
26
30
|
this._users = new UsersAdministrationImpl(context.context)
|
31
|
+
this._cheats = new CheatsAdministrationImpl(context.context)
|
27
32
|
}
|
28
33
|
|
29
34
|
get libraries(): LibraryAdministration {
|
@@ -37,4 +42,8 @@ export class AdministrationService extends Service implements Administration {
|
|
37
42
|
get users(): UsersAdministrationImpl {
|
38
43
|
return this._users
|
39
44
|
}
|
45
|
+
|
46
|
+
get cheats(): CheatsAdministrationImpl {
|
47
|
+
return this._cheats
|
48
|
+
}
|
40
49
|
}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { LibraryAdministration } from "./library.administration"
|
2
2
|
import { StatisticAdministration } from "./statistics.administration"
|
3
3
|
import {UsersAdministration} from "./users.administration"
|
4
|
+
import {CheatsAdministration} from "./cheats.administration"
|
4
5
|
|
5
6
|
export abstract class Administration {
|
6
7
|
abstract get libraries(): LibraryAdministration ;
|
@@ -8,4 +9,6 @@ export abstract class Administration {
|
|
8
9
|
abstract get statistic(): StatisticAdministration;
|
9
10
|
|
10
11
|
abstract get users(): UsersAdministration;
|
12
|
+
|
13
|
+
abstract get cheats(): CheatsAdministration
|
11
14
|
}
|
@@ -0,0 +1,155 @@
|
|
1
|
+
import {CheatsAdministration} from "./cheats.administration"
|
2
|
+
import {Context} from "../../context"
|
3
|
+
import {OrganizationId} from "../organizations/organizations"
|
4
|
+
import {WorkspaceId} from "../workspaces/workspaces"
|
5
|
+
import {BrokenFilesResponse} from "../../dto/workspacesResponse"
|
6
|
+
import {EmailsWhitelistResponse} from "../../dto/invitesResponse"
|
7
|
+
import {RpcService} from "../../services/rpcService"
|
8
|
+
import {ResponseUtils} from "../../services/responseUtils"
|
9
|
+
|
10
|
+
|
11
|
+
export class CheatsAdministrationImpl extends CheatsAdministration {
|
12
|
+
private context: Context
|
13
|
+
|
14
|
+
constructor(context: Context) {
|
15
|
+
super()
|
16
|
+
this.context = context
|
17
|
+
}
|
18
|
+
|
19
|
+
async cleanRedisCache(cleanCache: boolean): Promise<void> {
|
20
|
+
if (cleanCache === undefined ||cleanCache === null) {
|
21
|
+
throw new Error("cleanCache is required, must be not empty")
|
22
|
+
}
|
23
|
+
|
24
|
+
// send create request to the server
|
25
|
+
const response = await this.context
|
26
|
+
.resolve(RpcService)
|
27
|
+
?.requestBuilder("api/v1/Cheats/clean/cache")
|
28
|
+
.sendPostJson({
|
29
|
+
cleanCache: cleanCache
|
30
|
+
})
|
31
|
+
|
32
|
+
// check response status
|
33
|
+
if (ResponseUtils.isFail(response)) {
|
34
|
+
await ResponseUtils.throwError("Failed to clean redis cache", response)
|
35
|
+
}
|
36
|
+
}
|
37
|
+
|
38
|
+
async deleteBrokenFiles(organizationId: OrganizationId, workspaceId: WorkspaceId, isRemoveFromDb: boolean, isRemoveFromService: boolean): Promise<BrokenFilesResponse> {
|
39
|
+
if (organizationId === undefined || organizationId === null || organizationId.trim() === "") {
|
40
|
+
throw new Error("organizationId is required, must be not empty")
|
41
|
+
}
|
42
|
+
|
43
|
+
if (workspaceId === undefined || workspaceId === null || workspaceId.trim() === "") {
|
44
|
+
throw new Error("workspaceId is required, must be not empty")
|
45
|
+
}
|
46
|
+
|
47
|
+
if (isRemoveFromDb === undefined || isRemoveFromDb === null) {
|
48
|
+
throw new Error("isRemoveFromDb is required, must be not empty")
|
49
|
+
}
|
50
|
+
|
51
|
+
if (isRemoveFromService === undefined || isRemoveFromService === null) {
|
52
|
+
throw new Error("isRemoveFromService is required, must be not empty")
|
53
|
+
}
|
54
|
+
|
55
|
+
// send create request to the server
|
56
|
+
const response = await this.context
|
57
|
+
.resolve(RpcService)
|
58
|
+
?.requestBuilder("api/v1/Cheats/files/broken/clean")
|
59
|
+
.sendPostJson({
|
60
|
+
organizationId: organizationId,
|
61
|
+
workspaceId: workspaceId,
|
62
|
+
isRemoveFromDb: isRemoveFromDb,
|
63
|
+
isRemoveFromService: isRemoveFromService
|
64
|
+
})
|
65
|
+
|
66
|
+
// check response status
|
67
|
+
if (ResponseUtils.isFail(response)) {
|
68
|
+
await ResponseUtils.throwError(`Failed to clean broken files for ${organizationId}, workspace ${workspaceId}`, response)
|
69
|
+
}
|
70
|
+
|
71
|
+
return (await response!.json()) as BrokenFilesResponse
|
72
|
+
}
|
73
|
+
|
74
|
+
async getBrokenFilesInfo(organizationId: OrganizationId, workspaceId: WorkspaceId): Promise<BrokenFilesResponse> {
|
75
|
+
const response = await this.context
|
76
|
+
.resolve(RpcService)
|
77
|
+
?.requestBuilder("api/v1/Cheats/files/broken/info")
|
78
|
+
.searchParam("organizationId", organizationId)
|
79
|
+
.searchParam("workspaceId", workspaceId)
|
80
|
+
.sendGet()
|
81
|
+
|
82
|
+
// check response status
|
83
|
+
if (ResponseUtils.isFail(response)) {
|
84
|
+
await ResponseUtils.throwError(
|
85
|
+
"Can not get broken files info",
|
86
|
+
response
|
87
|
+
)
|
88
|
+
}
|
89
|
+
|
90
|
+
return (await response!.json()) as BrokenFilesResponse
|
91
|
+
}
|
92
|
+
|
93
|
+
async getWhitelistEmails(): Promise<EmailsWhitelistResponse> {
|
94
|
+
const response = await this.context
|
95
|
+
.resolve(RpcService)
|
96
|
+
?.requestBuilder("api/v1/Cheats/invites/white_list")
|
97
|
+
.sendGet()
|
98
|
+
|
99
|
+
// check response status
|
100
|
+
if (ResponseUtils.isFail(response)) {
|
101
|
+
await ResponseUtils.throwError(
|
102
|
+
"Can not get emails whitelist",
|
103
|
+
response
|
104
|
+
)
|
105
|
+
}
|
106
|
+
|
107
|
+
return (await response!.json()) as EmailsWhitelistResponse
|
108
|
+
}
|
109
|
+
|
110
|
+
async addEmailToWhitelist(email: string, expiredDays: number): Promise<void> {
|
111
|
+
if (email === undefined || email === null || email.trim() === "") {
|
112
|
+
throw new Error("email is required, must be not empty")
|
113
|
+
}
|
114
|
+
|
115
|
+
if (expiredDays === undefined || expiredDays === null || expiredDays === 0) {
|
116
|
+
throw new Error("expiredDays is required, must be not empty and grater than 0")
|
117
|
+
}
|
118
|
+
|
119
|
+
// send create request to the server
|
120
|
+
const response = await this.context
|
121
|
+
.resolve(RpcService)
|
122
|
+
?.requestBuilder("api/v1/Cheats/invites/white_list")
|
123
|
+
.sendPostJson({
|
124
|
+
email: email,
|
125
|
+
expiredDays: expiredDays
|
126
|
+
})
|
127
|
+
|
128
|
+
// check response status
|
129
|
+
if (ResponseUtils.isFail(response)) {
|
130
|
+
await ResponseUtils.throwError(`Failed to add email ${email} to whitelist`, response)
|
131
|
+
}
|
132
|
+
}
|
133
|
+
|
134
|
+
async removeEmailFromWhitelist(email: string): Promise<void> {
|
135
|
+
if (email === null || email === undefined || email.length === 0 || email.trim().length === 0) {
|
136
|
+
throw new Error("Email delete from whitelist, email is empty")
|
137
|
+
}
|
138
|
+
|
139
|
+
// send request to the server
|
140
|
+
const response = await this.context
|
141
|
+
.resolve(RpcService)
|
142
|
+
?.requestBuilder("/api/v1/Cheats/invites/white_list")
|
143
|
+
.searchParam("email", email)
|
144
|
+
.sendDelete()
|
145
|
+
|
146
|
+
// check response status
|
147
|
+
if (ResponseUtils.isFail(response)) {
|
148
|
+
await ResponseUtils.throwError(
|
149
|
+
`Email ${email} delete from whitelist failed`,
|
150
|
+
response
|
151
|
+
)
|
152
|
+
}
|
153
|
+
}
|
154
|
+
|
155
|
+
}
|
@@ -0,0 +1,48 @@
|
|
1
|
+
import {OrganizationId} from "../organizations/organizations"
|
2
|
+
import {WorkspaceId} from "../workspaces/workspaces"
|
3
|
+
import {BrokenFilesResponse} from "../../dto/workspacesResponse"
|
4
|
+
import {EmailsWhitelistResponse} from "../../dto/invitesResponse"
|
5
|
+
|
6
|
+
|
7
|
+
export abstract class CheatsAdministration {
|
8
|
+
|
9
|
+
/**
|
10
|
+
* Cleans redis cache on server
|
11
|
+
* @param cleanCache
|
12
|
+
*/
|
13
|
+
abstract cleanRedisCache(cleanCache: boolean): Promise<void>
|
14
|
+
|
15
|
+
/**
|
16
|
+
* Get info about broken files on server
|
17
|
+
* @param organizationId
|
18
|
+
* @param workspaceId
|
19
|
+
*/
|
20
|
+
abstract getBrokenFilesInfo(organizationId: OrganizationId, workspaceId: WorkspaceId): Promise<BrokenFilesResponse>
|
21
|
+
|
22
|
+
/**
|
23
|
+
* Delete broken files on server
|
24
|
+
* @param organizationId
|
25
|
+
* @param workspaceId
|
26
|
+
* @param isRemoveFromDb
|
27
|
+
* @param isRemoveFromService
|
28
|
+
*/
|
29
|
+
abstract deleteBrokenFiles(organizationId: OrganizationId, workspaceId: WorkspaceId, isRemoveFromDb: boolean, isRemoveFromService: boolean): Promise<BrokenFilesResponse>
|
30
|
+
|
31
|
+
/**
|
32
|
+
* Adds email to server whitelist
|
33
|
+
* @param email
|
34
|
+
* @param expiredDays
|
35
|
+
*/
|
36
|
+
abstract addEmailToWhitelist(email: string, expiredDays: number): Promise<void>
|
37
|
+
|
38
|
+
/**
|
39
|
+
* Deletes email from whitelist
|
40
|
+
* @param email
|
41
|
+
*/
|
42
|
+
abstract removeEmailFromWhitelist(email: string): Promise<void>
|
43
|
+
|
44
|
+
/**
|
45
|
+
* Get all emails from whitelise
|
46
|
+
*/
|
47
|
+
abstract getWhitelistEmails(): Promise<EmailsWhitelistResponse>
|
48
|
+
}
|