@excali-boards/boards-api-client 1.1.10 → 1.1.12
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/calendar.d.ts +60 -0
- package/dist/classes/calendar.js +40 -0
- package/dist/core/manager.d.ts +2 -0
- package/dist/core/manager.js +2 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/prisma/schema/boards.prisma +1 -0
- package/prisma/schema/events.prisma +26 -0
- package/prisma/schema/schema.prisma +0 -1
- package/prisma/schema/user.prisma +2 -1
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { BoardsManager } from '../core/manager';
|
|
2
|
+
export declare class APICalendar {
|
|
3
|
+
private web;
|
|
4
|
+
constructor(web: BoardsManager);
|
|
5
|
+
getCalendar({ auth, groupId }: CalendarFunctionsInput['getCalendar']): Promise<import("..").WebResponse<GetCalendarResponse>>;
|
|
6
|
+
createEvent({ auth, groupId, event }: CalendarFunctionsInput['createEvent']): Promise<import("..").WebResponse<string>>;
|
|
7
|
+
updateEvent({ auth, groupId, eventId, event }: CalendarFunctionsInput['updateEvent']): Promise<import("..").WebResponse<string>>;
|
|
8
|
+
deleteEvent({ auth, groupId, eventId }: CalendarFunctionsInput['deleteEvent']): Promise<import("..").WebResponse<string>>;
|
|
9
|
+
}
|
|
10
|
+
export type CalendarFunctionsInput = {
|
|
11
|
+
'getCalendar': {
|
|
12
|
+
auth: string;
|
|
13
|
+
groupId: string;
|
|
14
|
+
};
|
|
15
|
+
'createEvent': {
|
|
16
|
+
auth: string;
|
|
17
|
+
groupId: string;
|
|
18
|
+
event: EventObject;
|
|
19
|
+
};
|
|
20
|
+
'updateEvent': {
|
|
21
|
+
auth: string;
|
|
22
|
+
groupId: string;
|
|
23
|
+
eventId: string;
|
|
24
|
+
event: Partial<EventObject>;
|
|
25
|
+
};
|
|
26
|
+
'deleteEvent': {
|
|
27
|
+
auth: string;
|
|
28
|
+
groupId: string;
|
|
29
|
+
eventId: string;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export type EventObject = {
|
|
33
|
+
title: string;
|
|
34
|
+
start: Date;
|
|
35
|
+
end: Date;
|
|
36
|
+
description?: string;
|
|
37
|
+
color: string;
|
|
38
|
+
};
|
|
39
|
+
export type GetCalendarResponse = {
|
|
40
|
+
group: {
|
|
41
|
+
id: string;
|
|
42
|
+
name: string;
|
|
43
|
+
index: number;
|
|
44
|
+
accessLevel: string;
|
|
45
|
+
};
|
|
46
|
+
events: {
|
|
47
|
+
id: string;
|
|
48
|
+
title: string;
|
|
49
|
+
color: string;
|
|
50
|
+
description: string | null;
|
|
51
|
+
start: Date;
|
|
52
|
+
end: Date;
|
|
53
|
+
createdAt: Date;
|
|
54
|
+
updatedAt: Date;
|
|
55
|
+
createdBy: {
|
|
56
|
+
displayName: string;
|
|
57
|
+
avatarUrl: string | null;
|
|
58
|
+
};
|
|
59
|
+
}[];
|
|
60
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.APICalendar = void 0;
|
|
4
|
+
class APICalendar {
|
|
5
|
+
web;
|
|
6
|
+
constructor(web) {
|
|
7
|
+
this.web = web;
|
|
8
|
+
}
|
|
9
|
+
async getCalendar({ auth, groupId }) {
|
|
10
|
+
return await this.web.request({
|
|
11
|
+
method: 'GET',
|
|
12
|
+
auth,
|
|
13
|
+
endpoint: `/groups/${groupId}/calendar`,
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
async createEvent({ auth, groupId, event }) {
|
|
17
|
+
return await this.web.request({
|
|
18
|
+
method: 'POST',
|
|
19
|
+
auth,
|
|
20
|
+
endpoint: `/groups/${groupId}/calendar`,
|
|
21
|
+
body: event,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
async updateEvent({ auth, groupId, eventId, event }) {
|
|
25
|
+
return await this.web.request({
|
|
26
|
+
method: 'PATCH',
|
|
27
|
+
auth,
|
|
28
|
+
endpoint: `/groups/${groupId}/calendar/${eventId}`,
|
|
29
|
+
body: event,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
async deleteEvent({ auth, groupId, eventId }) {
|
|
33
|
+
return await this.web.request({
|
|
34
|
+
method: 'DELETE',
|
|
35
|
+
auth,
|
|
36
|
+
endpoint: `/groups/${groupId}/calendar/${eventId}`,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.APICalendar = APICalendar;
|
package/dist/core/manager.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { AxiosResponse, ResponseType } from 'axios';
|
|
|
3
3
|
import { APIPermissions } from '../classes/permissions';
|
|
4
4
|
import { APICategories } from '../classes/categories';
|
|
5
5
|
import { APISessions } from '../classes/sessions';
|
|
6
|
+
import { APICalendar } from '../classes/calendar';
|
|
6
7
|
import { APIMetrics } from '../classes/metrics';
|
|
7
8
|
import { APIInvites } from '../classes/invites';
|
|
8
9
|
import { APIGroups } from '../classes/groups';
|
|
@@ -15,6 +16,7 @@ export declare class BoardsManager {
|
|
|
15
16
|
url: string;
|
|
16
17
|
readonly permissions: APIPermissions;
|
|
17
18
|
readonly categories: APICategories;
|
|
19
|
+
readonly calendar: APICalendar;
|
|
18
20
|
readonly sessions: APISessions;
|
|
19
21
|
readonly invites: APIInvites;
|
|
20
22
|
readonly metrics: APIMetrics;
|
package/dist/core/manager.js
CHANGED
|
@@ -8,6 +8,7 @@ const axios_1 = __importDefault(require("axios"));
|
|
|
8
8
|
const permissions_1 = require("../classes/permissions");
|
|
9
9
|
const categories_1 = require("../classes/categories");
|
|
10
10
|
const sessions_1 = require("../classes/sessions");
|
|
11
|
+
const calendar_1 = require("../classes/calendar");
|
|
11
12
|
const metrics_1 = require("../classes/metrics");
|
|
12
13
|
const invites_1 = require("../classes/invites");
|
|
13
14
|
const groups_1 = require("../classes/groups");
|
|
@@ -21,6 +22,7 @@ class BoardsManager {
|
|
|
21
22
|
url;
|
|
22
23
|
permissions = new permissions_1.APIPermissions(this);
|
|
23
24
|
categories = new categories_1.APICategories(this);
|
|
25
|
+
calendar = new calendar_1.APICalendar(this);
|
|
24
26
|
sessions = new sessions_1.APISessions(this);
|
|
25
27
|
invites = new invites_1.APIInvites(this);
|
|
26
28
|
metrics = new metrics_1.APIMetrics(this);
|
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export * from './external/types';
|
|
|
4
4
|
export * from './external/vars';
|
|
5
5
|
export * from './classes/permissions';
|
|
6
6
|
export * from './classes/categories';
|
|
7
|
+
export * from './classes/calendar';
|
|
7
8
|
export * from './classes/sessions';
|
|
8
9
|
export * from './classes/invites';
|
|
9
10
|
export * from './classes/metrics';
|
package/dist/index.js
CHANGED
|
@@ -20,6 +20,7 @@ __exportStar(require("./external/types"), exports);
|
|
|
20
20
|
__exportStar(require("./external/vars"), exports);
|
|
21
21
|
__exportStar(require("./classes/permissions"), exports);
|
|
22
22
|
__exportStar(require("./classes/categories"), exports);
|
|
23
|
+
__exportStar(require("./classes/calendar"), exports);
|
|
23
24
|
__exportStar(require("./classes/sessions"), exports);
|
|
24
25
|
__exportStar(require("./classes/invites"), exports);
|
|
25
26
|
__exportStar(require("./classes/metrics"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/index.ts","../src/types.ts","../src/classes/admin.ts","../src/classes/boards.ts","../src/classes/categories.ts","../src/classes/files.ts","../src/classes/groups.ts","../src/classes/invites.ts","../src/classes/metrics.ts","../src/classes/permissions.ts","../src/classes/sessions.ts","../src/classes/users.ts","../src/classes/utils.ts","../src/core/manager.ts","../src/core/utils.ts","../src/external/types.ts","../src/external/vars.ts"],"version":"5.9.2"}
|
|
1
|
+
{"root":["../src/index.ts","../src/types.ts","../src/classes/admin.ts","../src/classes/boards.ts","../src/classes/calendar.ts","../src/classes/categories.ts","../src/classes/files.ts","../src/classes/groups.ts","../src/classes/invites.ts","../src/classes/metrics.ts","../src/classes/permissions.ts","../src/classes/sessions.ts","../src/classes/users.ts","../src/classes/utils.ts","../src/core/manager.ts","../src/core/utils.ts","../src/external/types.ts","../src/external/vars.ts"],"version":"5.9.2"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
model Event {
|
|
2
|
+
dbId String @id @default(uuid())
|
|
3
|
+
eventId String @unique
|
|
4
|
+
|
|
5
|
+
title String
|
|
6
|
+
start DateTime
|
|
7
|
+
end DateTime
|
|
8
|
+
color String @default("#9676ca")
|
|
9
|
+
|
|
10
|
+
where String?
|
|
11
|
+
description String?
|
|
12
|
+
|
|
13
|
+
createdAt DateTime @default(now())
|
|
14
|
+
updatedAt DateTime @updatedAt
|
|
15
|
+
|
|
16
|
+
groupId String
|
|
17
|
+
group Group @relation(fields: [groupId], references: [groupId], onDelete: Cascade)
|
|
18
|
+
|
|
19
|
+
createdBy String
|
|
20
|
+
creator User @relation(fields: [createdBy], references: [userId], onDelete: Cascade)
|
|
21
|
+
|
|
22
|
+
@@index([createdBy])
|
|
23
|
+
@@index([groupId])
|
|
24
|
+
@@index([start])
|
|
25
|
+
@@index([end])
|
|
26
|
+
}
|