@excali-boards/boards-api-client 1.1.51 → 1.1.53
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/classes/admin.d.ts +9 -6
- package/dist/classes/admin.js +1 -5
- package/dist/classes/analytics.d.ts +7 -7
- package/dist/classes/analytics.js +1 -5
- package/dist/classes/auth.d.ts +48 -0
- package/dist/classes/auth.js +12 -0
- package/dist/classes/boards.d.ts +13 -13
- package/dist/classes/boards.js +1 -5
- package/dist/classes/calendar.d.ts +9 -9
- package/dist/classes/calendar.js +1 -5
- package/dist/classes/categories.d.ts +14 -12
- package/dist/classes/categories.js +1 -5
- package/dist/classes/files.d.ts +5 -5
- package/dist/classes/files.js +1 -5
- package/dist/classes/flashcards.d.ts +13 -13
- package/dist/classes/flashcards.js +1 -5
- package/dist/classes/groups.d.ts +18 -14
- package/dist/classes/groups.js +1 -5
- package/dist/classes/invites.d.ts +11 -11
- package/dist/classes/invites.js +1 -5
- package/dist/classes/metrics.d.ts +4 -4
- package/dist/classes/metrics.js +1 -5
- package/dist/classes/permissions.d.ts +8 -8
- package/dist/classes/permissions.js +1 -5
- package/dist/classes/sessions.d.ts +9 -8
- package/dist/classes/sessions.js +1 -5
- package/dist/classes/users.d.ts +7 -7
- package/dist/classes/users.js +1 -5
- package/dist/classes/utils.d.ts +3 -3
- package/dist/classes/utils.js +1 -5
- package/dist/core/manager.d.ts +17 -15
- package/dist/core/manager.js +35 -40
- package/dist/core/utils.d.ts +1 -1
- package/dist/core/utils.js +4 -10
- package/dist/external/types.d.ts +13 -2
- package/dist/external/types.js +2 -5
- package/dist/external/vars.d.ts +2 -2
- package/dist/external/vars.js +15 -18
- package/dist/index.d.ts +20 -19
- package/dist/index.js +20 -35
- package/dist/src/classes/admin.d.ts +23 -0
- package/dist/src/classes/admin.js +20 -0
- package/dist/src/classes/analytics.d.ts +62 -0
- package/dist/src/classes/analytics.js +38 -0
- package/dist/src/classes/auth.d.ts +48 -0
- package/dist/src/classes/auth.js +12 -0
- package/dist/src/classes/boards.d.ts +99 -0
- package/dist/src/classes/boards.js +62 -0
- package/dist/src/classes/calendar.d.ts +84 -0
- package/dist/src/classes/calendar.js +45 -0
- package/dist/src/classes/categories.d.ts +75 -0
- package/dist/src/classes/categories.js +50 -0
- package/dist/src/classes/files.d.ts +45 -0
- package/dist/src/classes/files.js +31 -0
- package/dist/src/classes/flashcards.d.ts +120 -0
- package/dist/src/classes/flashcards.js +68 -0
- package/dist/src/classes/groups.d.ts +80 -0
- package/dist/src/classes/groups.js +62 -0
- package/dist/src/classes/invites.d.ts +116 -0
- package/dist/src/classes/invites.js +50 -0
- package/dist/src/classes/metrics.d.ts +31 -0
- package/dist/src/classes/metrics.js +20 -0
- package/dist/src/classes/permissions.d.ts +48 -0
- package/dist/src/classes/permissions.js +32 -0
- package/dist/src/classes/sessions.d.ts +61 -0
- package/dist/src/classes/sessions.js +38 -0
- package/dist/src/classes/users.d.ts +37 -0
- package/dist/src/classes/users.js +26 -0
- package/dist/src/classes/utils.d.ts +19 -0
- package/dist/src/classes/utils.js +16 -0
- package/dist/src/core/manager.d.ts +44 -0
- package/dist/src/core/manager.js +92 -0
- package/dist/src/core/utils.d.ts +9 -0
- package/dist/src/core/utils.js +52 -0
- package/dist/src/external/types.d.ts +87 -0
- package/dist/src/external/types.js +4 -0
- package/dist/src/external/vars.d.ts +99 -0
- package/dist/src/external/vars.js +65 -0
- package/dist/src/index.d.ts +20 -0
- package/dist/src/index.js +20 -0
- package/dist/src/types.d.ts +61 -0
- package/dist/src/types.js +1 -0
- package/dist/types.js +1 -2
- package/package.json +2 -9
- package/dist/tsconfig.tsbuildinfo +0 -1
package/dist/classes/users.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { Platforms } from '../../prisma/generated/default';
|
|
2
|
-
import { DBUserPartialType } from '../external/vars';
|
|
3
|
-
import { BoardsManager } from '../core/manager';
|
|
4
|
-
import { WithHeaders } from '../types';
|
|
1
|
+
import { Platforms } from '../../prisma/generated/default.js';
|
|
2
|
+
import { DBUserPartialType } from '../external/vars.js';
|
|
3
|
+
import { BoardsManager } from '../core/manager.js';
|
|
4
|
+
import { WithHeaders } from '../types.js';
|
|
5
5
|
export declare class APIUsers {
|
|
6
6
|
private web;
|
|
7
7
|
constructor(web: BoardsManager);
|
|
8
|
-
getUser({ auth, userId, ...rest }: UsersFunctionsInput['getCurrentUser']): Promise<import("../types").WebResponse<GetUsersOutput>>;
|
|
9
|
-
updateUser({ auth, userId, body, ...rest }: UsersFunctionsInput['updateUser']): Promise<import("../types").WebResponse<string>>;
|
|
10
|
-
deleteAccount({ auth, userId, ...rest }: UsersFunctionsInput['deleteAccount']): Promise<import("../types").WebResponse<void>>;
|
|
8
|
+
getUser({ auth, userId, ...rest }: UsersFunctionsInput['getCurrentUser']): Promise<import("../types.js").WebResponse<GetUsersOutput>>;
|
|
9
|
+
updateUser({ auth, userId, body, ...rest }: UsersFunctionsInput['updateUser']): Promise<import("../types.js").WebResponse<string>>;
|
|
10
|
+
deleteAccount({ auth, userId, ...rest }: UsersFunctionsInput['deleteAccount']): Promise<import("../types.js").WebResponse<void>>;
|
|
11
11
|
}
|
|
12
12
|
export type UsersFunctionsInput = WithHeaders<{
|
|
13
13
|
'getCurrentUser': {
|
package/dist/classes/users.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.APIUsers = void 0;
|
|
4
1
|
// Data.
|
|
5
|
-
class APIUsers {
|
|
2
|
+
export class APIUsers {
|
|
6
3
|
web;
|
|
7
4
|
constructor(web) {
|
|
8
5
|
this.web = web;
|
|
@@ -27,4 +24,3 @@ class APIUsers {
|
|
|
27
24
|
});
|
|
28
25
|
}
|
|
29
26
|
}
|
|
30
|
-
exports.APIUsers = APIUsers;
|
package/dist/classes/utils.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BoardsManager } from '../core/manager';
|
|
2
|
-
import { WithHeaders } from '../types';
|
|
1
|
+
import { BoardsManager } from '../core/manager.js';
|
|
2
|
+
import { WithHeaders } from '../types.js';
|
|
3
3
|
export declare class APIUtils {
|
|
4
4
|
private web;
|
|
5
5
|
constructor(web: BoardsManager);
|
|
6
|
-
unfurlUrl({ auth, url, ...rest }: UtilsFunctionsInput['unfurlUrl']): Promise<import("../types").WebResponse<Partial<UnfurlOutput>>>;
|
|
6
|
+
unfurlUrl({ auth, url, ...rest }: UtilsFunctionsInput['unfurlUrl']): Promise<import("../types.js").WebResponse<Partial<UnfurlOutput>>>;
|
|
7
7
|
}
|
|
8
8
|
export type UtilsFunctionsInput = WithHeaders<{
|
|
9
9
|
'unfurlUrl': {
|
package/dist/classes/utils.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.APIUtils = void 0;
|
|
4
1
|
// Data.
|
|
5
|
-
class APIUtils {
|
|
2
|
+
export class APIUtils {
|
|
6
3
|
web;
|
|
7
4
|
constructor(web) {
|
|
8
5
|
this.web = web;
|
|
@@ -17,4 +14,3 @@ class APIUtils {
|
|
|
17
14
|
});
|
|
18
15
|
}
|
|
19
16
|
}
|
|
20
|
-
exports.APIUtils = APIUtils;
|
package/dist/core/manager.d.ts
CHANGED
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import { APIPermissions } from '../classes/permissions';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
1
|
+
import { APIPermissions } from '../classes/permissions.js';
|
|
2
|
+
import { APIFlashcards } from '../classes/flashcards.js';
|
|
3
|
+
import { APICategories } from '../classes/categories.js';
|
|
4
|
+
import { APIAnalytics } from '../classes/analytics.js';
|
|
5
|
+
import { APISessions } from '../classes/sessions.js';
|
|
6
|
+
import { APICalendar } from '../classes/calendar.js';
|
|
7
|
+
import { APIMetrics } from '../classes/metrics.js';
|
|
8
|
+
import { APIInvites } from '../classes/invites.js';
|
|
9
|
+
import { APIGroups } from '../classes/groups.js';
|
|
10
|
+
import { APIBoards } from '../classes/boards.js';
|
|
11
|
+
import { APIUtils } from '../classes/utils.js';
|
|
12
|
+
import { APIUsers } from '../classes/users.js';
|
|
13
|
+
import { APIFiles } from '../classes/files.js';
|
|
14
|
+
import { APIAdmin } from '../classes/admin.js';
|
|
15
|
+
import { APIAuth } from '../classes/auth.js';
|
|
16
|
+
import { RequestMethod, WebResponse } from '../types.js';
|
|
16
17
|
export declare class BoardsManager {
|
|
17
18
|
url: string;
|
|
18
19
|
readonly permissions: APIPermissions;
|
|
@@ -29,6 +30,7 @@ export declare class BoardsManager {
|
|
|
29
30
|
readonly users: APIUsers;
|
|
30
31
|
readonly utils: APIUtils;
|
|
31
32
|
readonly files: APIFiles;
|
|
33
|
+
readonly auth: APIAuth;
|
|
32
34
|
constructor(url: string);
|
|
33
35
|
request<O, T = unknown>(data: {
|
|
34
36
|
endpoint: string;
|
package/dist/core/manager.js
CHANGED
|
@@ -1,47 +1,43 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const files_1 = require("../classes/files");
|
|
20
|
-
const admin_1 = require("../classes/admin");
|
|
21
|
-
const axios_1 = __importDefault(require("axios"));
|
|
22
|
-
const utils_2 = require("./utils");
|
|
23
|
-
class BoardsManager {
|
|
1
|
+
import { APIPermissions } from '../classes/permissions.js';
|
|
2
|
+
import { APIFlashcards } from '../classes/flashcards.js';
|
|
3
|
+
import { APICategories } from '../classes/categories.js';
|
|
4
|
+
import { APIAnalytics } from '../classes/analytics.js';
|
|
5
|
+
import { APISessions } from '../classes/sessions.js';
|
|
6
|
+
import { APICalendar } from '../classes/calendar.js';
|
|
7
|
+
import { APIMetrics } from '../classes/metrics.js';
|
|
8
|
+
import { APIInvites } from '../classes/invites.js';
|
|
9
|
+
import { APIGroups } from '../classes/groups.js';
|
|
10
|
+
import { APIBoards } from '../classes/boards.js';
|
|
11
|
+
import { APIUtils } from '../classes/utils.js';
|
|
12
|
+
import { APIUsers } from '../classes/users.js';
|
|
13
|
+
import { APIFiles } from '../classes/files.js';
|
|
14
|
+
import { APIAdmin } from '../classes/admin.js';
|
|
15
|
+
import { APIAuth } from '../classes/auth.js';
|
|
16
|
+
import axios from 'axios';
|
|
17
|
+
import { transformDates } from './utils.js';
|
|
18
|
+
export class BoardsManager {
|
|
24
19
|
url;
|
|
25
|
-
permissions = new
|
|
26
|
-
categories = new
|
|
27
|
-
flashcards = new
|
|
28
|
-
analytics = new
|
|
29
|
-
calendar = new
|
|
30
|
-
sessions = new
|
|
31
|
-
invites = new
|
|
32
|
-
metrics = new
|
|
33
|
-
groups = new
|
|
34
|
-
boards = new
|
|
35
|
-
admin = new
|
|
36
|
-
users = new
|
|
37
|
-
utils = new
|
|
38
|
-
files = new
|
|
20
|
+
permissions = new APIPermissions(this);
|
|
21
|
+
categories = new APICategories(this);
|
|
22
|
+
flashcards = new APIFlashcards(this);
|
|
23
|
+
analytics = new APIAnalytics(this);
|
|
24
|
+
calendar = new APICalendar(this);
|
|
25
|
+
sessions = new APISessions(this);
|
|
26
|
+
invites = new APIInvites(this);
|
|
27
|
+
metrics = new APIMetrics(this);
|
|
28
|
+
groups = new APIGroups(this);
|
|
29
|
+
boards = new APIBoards(this);
|
|
30
|
+
admin = new APIAdmin(this);
|
|
31
|
+
users = new APIUsers(this);
|
|
32
|
+
utils = new APIUtils(this);
|
|
33
|
+
files = new APIFiles(this);
|
|
34
|
+
auth = new APIAuth(this);
|
|
39
35
|
constructor(url) {
|
|
40
36
|
this.url = url;
|
|
41
37
|
}
|
|
42
38
|
async request(data) {
|
|
43
39
|
try {
|
|
44
|
-
|
|
40
|
+
axios.interceptors.response.use(transformDates);
|
|
45
41
|
let requestData;
|
|
46
42
|
let contentType;
|
|
47
43
|
if (data.body instanceof FormData) {
|
|
@@ -56,7 +52,7 @@ class BoardsManager {
|
|
|
56
52
|
requestData = undefined;
|
|
57
53
|
contentType = undefined;
|
|
58
54
|
}
|
|
59
|
-
const res = await (
|
|
55
|
+
const res = await axios(this.url + data.endpoint, {
|
|
60
56
|
method: data.method,
|
|
61
57
|
data: requestData,
|
|
62
58
|
headers: {
|
|
@@ -94,4 +90,3 @@ class BoardsManager {
|
|
|
94
90
|
return (obj && typeof obj === 'object' && 'status' in obj);
|
|
95
91
|
}
|
|
96
92
|
}
|
|
97
|
-
exports.BoardsManager = BoardsManager;
|
package/dist/core/utils.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Paginated, PaginatedWebResponse, WebResponse } from '../types';
|
|
1
|
+
import { Paginated, PaginatedWebResponse, WebResponse } from '../types.js';
|
|
2
2
|
import { AxiosResponse } from 'axios';
|
|
3
3
|
export declare function isDateStringRegex(value: unknown): value is string;
|
|
4
4
|
export declare function recursiveDateConversion<T>(data: T): T;
|
package/dist/core/utils.js
CHANGED
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isDateStringRegex = isDateStringRegex;
|
|
4
|
-
exports.recursiveDateConversion = recursiveDateConversion;
|
|
5
|
-
exports.transformDates = transformDates;
|
|
6
|
-
exports.getAll = getAll;
|
|
7
|
-
function isDateStringRegex(value) {
|
|
1
|
+
export function isDateStringRegex(value) {
|
|
8
2
|
const isoPattern = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?Z$/;
|
|
9
3
|
return typeof value === 'string' && isoPattern.test(value);
|
|
10
4
|
}
|
|
11
|
-
function recursiveDateConversion(data) {
|
|
5
|
+
export function recursiveDateConversion(data) {
|
|
12
6
|
if (data instanceof Date)
|
|
13
7
|
return new Date(data);
|
|
14
8
|
if (Array.isArray(data))
|
|
@@ -20,12 +14,12 @@ function recursiveDateConversion(data) {
|
|
|
20
14
|
}
|
|
21
15
|
return isDateStringRegex(data) ? new Date(data) : data;
|
|
22
16
|
}
|
|
23
|
-
function transformDates(response) {
|
|
17
|
+
export function transformDates(response) {
|
|
24
18
|
if (response.data)
|
|
25
19
|
response.data = recursiveDateConversion(response.data);
|
|
26
20
|
return response;
|
|
27
21
|
}
|
|
28
|
-
async function getAll(fetcher, options) {
|
|
22
|
+
export async function getAll(fetcher, options) {
|
|
29
23
|
const limit = options?.limit ?? 50;
|
|
30
24
|
const maxItems = options?.maxItems ?? Infinity;
|
|
31
25
|
const allItems = [];
|
package/dist/external/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BoardRole, CategoryRole, GroupRole } from './vars';
|
|
2
|
-
import { BoardType } from '../../prisma/generated/default';
|
|
1
|
+
import { BoardRole, CategoryRole, GroupRole } from './vars.js';
|
|
2
|
+
import { BoardType } from '../../prisma/generated/default.js';
|
|
3
3
|
export type UserRole = BoardRole | CategoryRole | GroupRole | GlobalRole;
|
|
4
4
|
export declare enum GlobalRole {
|
|
5
5
|
Developer = "Developer"
|
|
@@ -68,6 +68,17 @@ export type AllRooms = {
|
|
|
68
68
|
type: BoardType;
|
|
69
69
|
collaborators: CollabUser[];
|
|
70
70
|
}[];
|
|
71
|
+
export type RecentlyActiveRoom = {
|
|
72
|
+
boardId: string;
|
|
73
|
+
elements: number;
|
|
74
|
+
type: BoardType;
|
|
75
|
+
lastCollaborators: CollabUser[];
|
|
76
|
+
lastActiveAt: number;
|
|
77
|
+
};
|
|
78
|
+
export type GetActiveRoomsResponse = {
|
|
79
|
+
rooms: AllRooms;
|
|
80
|
+
recentlyActiveRooms: RecentlyActiveRoom[];
|
|
81
|
+
};
|
|
71
82
|
export type CollabUser = {
|
|
72
83
|
id: string;
|
|
73
84
|
socketId: string;
|
package/dist/external/types.js
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GlobalRole = void 0;
|
|
4
|
-
var GlobalRole;
|
|
1
|
+
export var GlobalRole;
|
|
5
2
|
(function (GlobalRole) {
|
|
6
3
|
GlobalRole["Developer"] = "Developer";
|
|
7
|
-
})(GlobalRole || (
|
|
4
|
+
})(GlobalRole || (GlobalRole = {}));
|
package/dist/external/vars.d.ts
CHANGED
package/dist/external/vars.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const default_1 = require("../../prisma/generated/default");
|
|
5
|
-
const types_1 = require("./types");
|
|
6
|
-
exports.DBUserSelectArgs = {
|
|
1
|
+
import { Prisma } from '../../prisma/generated/default.js';
|
|
2
|
+
import { GlobalRole } from './types.js';
|
|
3
|
+
export const DBUserSelectArgs = {
|
|
7
4
|
select: {
|
|
8
5
|
email: true,
|
|
9
6
|
userId: true,
|
|
@@ -19,41 +16,41 @@ exports.DBUserSelectArgs = {
|
|
|
19
16
|
loginMethods: { select: { platform: true, platformEmail: true } },
|
|
20
17
|
},
|
|
21
18
|
};
|
|
22
|
-
|
|
23
|
-
var Platforms;
|
|
19
|
+
export const DBUserPartial = Prisma.validator()(DBUserSelectArgs);
|
|
20
|
+
export var Platforms;
|
|
24
21
|
(function (Platforms) {
|
|
25
22
|
Platforms["Google"] = "Google";
|
|
26
23
|
Platforms["GitHub"] = "GitHub";
|
|
27
24
|
Platforms["Discord"] = "Discord";
|
|
28
25
|
Platforms["Microsoft"] = "Microsoft";
|
|
29
|
-
})(Platforms || (
|
|
30
|
-
var BoardRole;
|
|
26
|
+
})(Platforms || (Platforms = {}));
|
|
27
|
+
export var BoardRole;
|
|
31
28
|
(function (BoardRole) {
|
|
32
29
|
BoardRole["BoardViewer"] = "BoardViewer";
|
|
33
30
|
BoardRole["BoardCollaborator"] = "BoardCollaborator";
|
|
34
|
-
})(BoardRole || (
|
|
35
|
-
var CategoryRole;
|
|
31
|
+
})(BoardRole || (BoardRole = {}));
|
|
32
|
+
export var CategoryRole;
|
|
36
33
|
(function (CategoryRole) {
|
|
37
34
|
CategoryRole["CategoryViewer"] = "CategoryViewer";
|
|
38
35
|
CategoryRole["CategoryCollaborator"] = "CategoryCollaborator";
|
|
39
36
|
CategoryRole["CategoryManager"] = "CategoryManager";
|
|
40
37
|
CategoryRole["CategoryAdmin"] = "CategoryAdmin";
|
|
41
|
-
})(CategoryRole || (
|
|
42
|
-
var GroupRole;
|
|
38
|
+
})(CategoryRole || (CategoryRole = {}));
|
|
39
|
+
export var GroupRole;
|
|
43
40
|
(function (GroupRole) {
|
|
44
41
|
GroupRole["GroupViewer"] = "GroupViewer";
|
|
45
42
|
GroupRole["GroupCollaborator"] = "GroupCollaborator";
|
|
46
43
|
GroupRole["GroupManager"] = "GroupManager";
|
|
47
44
|
GroupRole["GroupAdmin"] = "GroupAdmin";
|
|
48
|
-
})(GroupRole || (
|
|
45
|
+
})(GroupRole || (GroupRole = {}));
|
|
49
46
|
// Variables.
|
|
50
|
-
|
|
47
|
+
export const SimplePermissionHierarchy = {
|
|
51
48
|
Viewer: 1,
|
|
52
49
|
Collaborator: 2,
|
|
53
50
|
Manager: 3,
|
|
54
51
|
Admin: 4,
|
|
55
52
|
};
|
|
56
|
-
|
|
53
|
+
export const PermissionHierarchy = {
|
|
57
54
|
[BoardRole.BoardViewer]: 1,
|
|
58
55
|
[BoardRole.BoardCollaborator]: 2,
|
|
59
56
|
[CategoryRole.CategoryViewer]: 3,
|
|
@@ -64,5 +61,5 @@ exports.PermissionHierarchy = {
|
|
|
64
61
|
[GroupRole.GroupCollaborator]: 8,
|
|
65
62
|
[GroupRole.GroupManager]: 9,
|
|
66
63
|
[GroupRole.GroupAdmin]: 10,
|
|
67
|
-
[
|
|
64
|
+
[GlobalRole.Developer]: 11,
|
|
68
65
|
};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
export * from './core/manager';
|
|
2
|
-
export * from './core/utils';
|
|
3
|
-
export * from './types';
|
|
4
|
-
export * from './external/types';
|
|
5
|
-
export * from './external/vars';
|
|
6
|
-
export * from './classes/permissions';
|
|
7
|
-
export * from './classes/categories';
|
|
8
|
-
export * from './classes/flashcards';
|
|
9
|
-
export * from './classes/analytics';
|
|
10
|
-
export * from './classes/calendar';
|
|
11
|
-
export * from './classes/sessions';
|
|
12
|
-
export * from './classes/invites';
|
|
13
|
-
export * from './classes/metrics';
|
|
14
|
-
export * from './classes/groups';
|
|
15
|
-
export * from './classes/boards';
|
|
16
|
-
export * from './classes/utils';
|
|
17
|
-
export * from './classes/admin';
|
|
18
|
-
export * from './classes/users';
|
|
19
|
-
export * from './classes/files';
|
|
1
|
+
export * from './core/manager.js';
|
|
2
|
+
export * from './core/utils.js';
|
|
3
|
+
export * from './types.js';
|
|
4
|
+
export * from './external/types.js';
|
|
5
|
+
export * from './external/vars.js';
|
|
6
|
+
export * from './classes/permissions.js';
|
|
7
|
+
export * from './classes/categories.js';
|
|
8
|
+
export * from './classes/flashcards.js';
|
|
9
|
+
export * from './classes/analytics.js';
|
|
10
|
+
export * from './classes/calendar.js';
|
|
11
|
+
export * from './classes/sessions.js';
|
|
12
|
+
export * from './classes/invites.js';
|
|
13
|
+
export * from './classes/metrics.js';
|
|
14
|
+
export * from './classes/groups.js';
|
|
15
|
+
export * from './classes/boards.js';
|
|
16
|
+
export * from './classes/utils.js';
|
|
17
|
+
export * from './classes/admin.js';
|
|
18
|
+
export * from './classes/users.js';
|
|
19
|
+
export * from './classes/files.js';
|
|
20
|
+
export * from './classes/auth.js';
|
package/dist/index.js
CHANGED
|
@@ -1,35 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
__exportStar(require("./external/vars"), exports);
|
|
22
|
-
__exportStar(require("./classes/permissions"), exports);
|
|
23
|
-
__exportStar(require("./classes/categories"), exports);
|
|
24
|
-
__exportStar(require("./classes/flashcards"), exports);
|
|
25
|
-
__exportStar(require("./classes/analytics"), exports);
|
|
26
|
-
__exportStar(require("./classes/calendar"), exports);
|
|
27
|
-
__exportStar(require("./classes/sessions"), exports);
|
|
28
|
-
__exportStar(require("./classes/invites"), exports);
|
|
29
|
-
__exportStar(require("./classes/metrics"), exports);
|
|
30
|
-
__exportStar(require("./classes/groups"), exports);
|
|
31
|
-
__exportStar(require("./classes/boards"), exports);
|
|
32
|
-
__exportStar(require("./classes/utils"), exports);
|
|
33
|
-
__exportStar(require("./classes/admin"), exports);
|
|
34
|
-
__exportStar(require("./classes/users"), exports);
|
|
35
|
-
__exportStar(require("./classes/files"), exports);
|
|
1
|
+
export * from './core/manager.js';
|
|
2
|
+
export * from './core/utils.js';
|
|
3
|
+
export * from './types.js';
|
|
4
|
+
export * from './external/types.js';
|
|
5
|
+
export * from './external/vars.js';
|
|
6
|
+
export * from './classes/permissions.js';
|
|
7
|
+
export * from './classes/categories.js';
|
|
8
|
+
export * from './classes/flashcards.js';
|
|
9
|
+
export * from './classes/analytics.js';
|
|
10
|
+
export * from './classes/calendar.js';
|
|
11
|
+
export * from './classes/sessions.js';
|
|
12
|
+
export * from './classes/invites.js';
|
|
13
|
+
export * from './classes/metrics.js';
|
|
14
|
+
export * from './classes/groups.js';
|
|
15
|
+
export * from './classes/boards.js';
|
|
16
|
+
export * from './classes/utils.js';
|
|
17
|
+
export * from './classes/admin.js';
|
|
18
|
+
export * from './classes/users.js';
|
|
19
|
+
export * from './classes/files.js';
|
|
20
|
+
export * from './classes/auth.js';
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Paginated, WithHeaders } from '../types';
|
|
2
|
+
import { BoardsManager } from '../core/manager';
|
|
3
|
+
import { AllRooms, RecentlyActiveRoom } from '../external/types';
|
|
4
|
+
import { GetUsersOutput } from './users';
|
|
5
|
+
export declare class APIAdmin {
|
|
6
|
+
private web;
|
|
7
|
+
constructor(web: BoardsManager);
|
|
8
|
+
getUsers({ auth, page, limit, ...rest }: AdminFunctionsInput['getUsers']): Promise<import("..").WebResponse<Paginated<GetUsersOutput>>>;
|
|
9
|
+
getActiveRooms({ auth, ...rest }: AdminFunctionsInput['getActiveRooms']): Promise<import("..").WebResponse<{
|
|
10
|
+
rooms: AllRooms;
|
|
11
|
+
recentlyActiveRooms: RecentlyActiveRoom[];
|
|
12
|
+
}>>;
|
|
13
|
+
}
|
|
14
|
+
export type AdminFunctionsInput = WithHeaders<{
|
|
15
|
+
'getUsers': {
|
|
16
|
+
auth: string;
|
|
17
|
+
page?: number;
|
|
18
|
+
limit?: number;
|
|
19
|
+
};
|
|
20
|
+
'getActiveRooms': {
|
|
21
|
+
auth: string;
|
|
22
|
+
};
|
|
23
|
+
}>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Data.
|
|
2
|
+
export class APIAdmin {
|
|
3
|
+
web;
|
|
4
|
+
constructor(web) {
|
|
5
|
+
this.web = web;
|
|
6
|
+
}
|
|
7
|
+
// Methods.
|
|
8
|
+
async getUsers({ auth, page, limit, ...rest }) {
|
|
9
|
+
return await this.web.request({
|
|
10
|
+
method: 'GET', auth, ...rest,
|
|
11
|
+
endpoint: this.web.qp('/admin/users', { page, limit }),
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
async getActiveRooms({ auth, ...rest }) {
|
|
15
|
+
return await this.web.request({
|
|
16
|
+
method: 'GET', auth, ...rest,
|
|
17
|
+
endpoint: this.web.qp('/admin/rooms'),
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { BoardsManager } from '../core/manager';
|
|
2
|
+
import { WithHeaders } from '../types';
|
|
3
|
+
export declare class APIAnalytics {
|
|
4
|
+
private web;
|
|
5
|
+
constructor(web: BoardsManager);
|
|
6
|
+
getGlobalAnalytics({ auth, ...rest }: AnalyticsFunctionsInput['getGlobalAnalytics']): Promise<import("..").WebResponse<UserBoardActivityWithUser[]>>;
|
|
7
|
+
getUserAnalytics({ auth, ...rest }: AnalyticsFunctionsInput['getUserAnalytics']): Promise<import("..").WebResponse<UserBoardActivityWithBoard[]>>;
|
|
8
|
+
getBoardAnalytics({ auth, boardId, categoryId, groupId, ...rest }: AnalyticsFunctionsInput['getBoardAnalytics']): Promise<import("..").WebResponse<UserBoardActivityWithUser[]>>;
|
|
9
|
+
getCategoryAnalytics({ auth, categoryId, groupId, ...rest }: AnalyticsFunctionsInput['getCategoryAnalytics']): Promise<import("..").WebResponse<UserBoardActivityWithUser[]>>;
|
|
10
|
+
getGroupAnalytics({ auth, groupId, ...rest }: AnalyticsFunctionsInput['getGroupAnalytics']): Promise<import("..").WebResponse<UserBoardActivityWithUser[]>>;
|
|
11
|
+
}
|
|
12
|
+
export type AnalyticsFunctionsInput = WithHeaders<{
|
|
13
|
+
'getGlobalAnalytics': {
|
|
14
|
+
auth: string;
|
|
15
|
+
};
|
|
16
|
+
'getUserAnalytics': {
|
|
17
|
+
auth: string;
|
|
18
|
+
};
|
|
19
|
+
'getBoardAnalytics': {
|
|
20
|
+
auth: string;
|
|
21
|
+
boardId: string;
|
|
22
|
+
categoryId: string;
|
|
23
|
+
groupId: string;
|
|
24
|
+
};
|
|
25
|
+
'getCategoryAnalytics': {
|
|
26
|
+
auth: string;
|
|
27
|
+
categoryId: string;
|
|
28
|
+
groupId: string;
|
|
29
|
+
};
|
|
30
|
+
'getGroupAnalytics': {
|
|
31
|
+
auth: string;
|
|
32
|
+
groupId: string;
|
|
33
|
+
};
|
|
34
|
+
}>;
|
|
35
|
+
export type ActivityAnalytics = {
|
|
36
|
+
totalSessions: number;
|
|
37
|
+
totalActiveSeconds: number;
|
|
38
|
+
lastActivityAt: Date;
|
|
39
|
+
};
|
|
40
|
+
export type BoardData = {
|
|
41
|
+
name: string;
|
|
42
|
+
boardId: string;
|
|
43
|
+
category: {
|
|
44
|
+
categoryId: string;
|
|
45
|
+
name: string;
|
|
46
|
+
group: {
|
|
47
|
+
groupId: string;
|
|
48
|
+
name: string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
export type UserBoardActivityWithBoard = ActivityAnalytics & {
|
|
53
|
+
board: BoardData;
|
|
54
|
+
};
|
|
55
|
+
export type UserBoardActivityWithUser = ActivityAnalytics & {
|
|
56
|
+
board: BoardData;
|
|
57
|
+
user: {
|
|
58
|
+
userId: string;
|
|
59
|
+
displayName: string;
|
|
60
|
+
avatarUrl: string | null;
|
|
61
|
+
};
|
|
62
|
+
};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
// Data.
|
|
2
|
+
export class APIAnalytics {
|
|
3
|
+
web;
|
|
4
|
+
constructor(web) {
|
|
5
|
+
this.web = web;
|
|
6
|
+
}
|
|
7
|
+
// Methods.
|
|
8
|
+
async getGlobalAnalytics({ auth, ...rest }) {
|
|
9
|
+
return await this.web.request({
|
|
10
|
+
method: 'GET', auth, ...rest,
|
|
11
|
+
endpoint: this.web.qp('/analytics'),
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
async getUserAnalytics({ auth, ...rest }) {
|
|
15
|
+
return await this.web.request({
|
|
16
|
+
method: 'GET', auth, ...rest,
|
|
17
|
+
endpoint: this.web.qp('/analytics/user'),
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
async getBoardAnalytics({ auth, boardId, categoryId, groupId, ...rest }) {
|
|
21
|
+
return await this.web.request({
|
|
22
|
+
method: 'GET', auth, ...rest,
|
|
23
|
+
endpoint: this.web.qp(`/groups/${groupId}/categories/${categoryId}/boards/${boardId}/analytics`),
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
async getCategoryAnalytics({ auth, categoryId, groupId, ...rest }) {
|
|
27
|
+
return await this.web.request({
|
|
28
|
+
method: 'GET', auth, ...rest,
|
|
29
|
+
endpoint: this.web.qp(`/groups/${groupId}/categories/${categoryId}/analytics`),
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
async getGroupAnalytics({ auth, groupId, ...rest }) {
|
|
33
|
+
return await this.web.request({
|
|
34
|
+
method: 'GET', auth, ...rest,
|
|
35
|
+
endpoint: this.web.qp(`/groups/${groupId}/analytics`),
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
}
|