@commonpub/schema 0.9.13 → 0.11.0

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.
@@ -0,0 +1,465 @@
1
+ export declare const events: import("drizzle-orm/pg-core").PgTableWithColumns<{
2
+ name: "events";
3
+ schema: undefined;
4
+ columns: {
5
+ id: import("drizzle-orm/pg-core").PgColumn<{
6
+ name: "id";
7
+ tableName: "events";
8
+ dataType: "string";
9
+ columnType: "PgUUID";
10
+ data: string;
11
+ driverParam: string;
12
+ notNull: true;
13
+ hasDefault: true;
14
+ isPrimaryKey: true;
15
+ isAutoincrement: false;
16
+ hasRuntimeDefault: false;
17
+ enumValues: undefined;
18
+ baseColumn: never;
19
+ identity: undefined;
20
+ generated: undefined;
21
+ }, {}, {}>;
22
+ title: import("drizzle-orm/pg-core").PgColumn<{
23
+ name: "title";
24
+ tableName: "events";
25
+ dataType: "string";
26
+ columnType: "PgVarchar";
27
+ data: string;
28
+ driverParam: string;
29
+ notNull: true;
30
+ hasDefault: false;
31
+ isPrimaryKey: false;
32
+ isAutoincrement: false;
33
+ hasRuntimeDefault: false;
34
+ enumValues: [string, ...string[]];
35
+ baseColumn: never;
36
+ identity: undefined;
37
+ generated: undefined;
38
+ }, {}, {
39
+ length: 255;
40
+ }>;
41
+ slug: import("drizzle-orm/pg-core").PgColumn<{
42
+ name: "slug";
43
+ tableName: "events";
44
+ dataType: "string";
45
+ columnType: "PgVarchar";
46
+ data: string;
47
+ driverParam: string;
48
+ notNull: true;
49
+ hasDefault: false;
50
+ isPrimaryKey: false;
51
+ isAutoincrement: false;
52
+ hasRuntimeDefault: false;
53
+ enumValues: [string, ...string[]];
54
+ baseColumn: never;
55
+ identity: undefined;
56
+ generated: undefined;
57
+ }, {}, {
58
+ length: 255;
59
+ }>;
60
+ description: import("drizzle-orm/pg-core").PgColumn<{
61
+ name: "description";
62
+ tableName: "events";
63
+ dataType: "string";
64
+ columnType: "PgText";
65
+ data: string;
66
+ driverParam: string;
67
+ notNull: false;
68
+ hasDefault: false;
69
+ isPrimaryKey: false;
70
+ isAutoincrement: false;
71
+ hasRuntimeDefault: false;
72
+ enumValues: [string, ...string[]];
73
+ baseColumn: never;
74
+ identity: undefined;
75
+ generated: undefined;
76
+ }, {}, {}>;
77
+ coverImage: import("drizzle-orm/pg-core").PgColumn<{
78
+ name: "cover_image";
79
+ tableName: "events";
80
+ dataType: "string";
81
+ columnType: "PgText";
82
+ data: string;
83
+ driverParam: string;
84
+ notNull: false;
85
+ hasDefault: false;
86
+ isPrimaryKey: false;
87
+ isAutoincrement: false;
88
+ hasRuntimeDefault: false;
89
+ enumValues: [string, ...string[]];
90
+ baseColumn: never;
91
+ identity: undefined;
92
+ generated: undefined;
93
+ }, {}, {}>;
94
+ eventType: import("drizzle-orm/pg-core").PgColumn<{
95
+ name: "event_type";
96
+ tableName: "events";
97
+ dataType: "string";
98
+ columnType: "PgEnumColumn";
99
+ data: "in-person" | "online" | "hybrid";
100
+ driverParam: string;
101
+ notNull: true;
102
+ hasDefault: true;
103
+ isPrimaryKey: false;
104
+ isAutoincrement: false;
105
+ hasRuntimeDefault: false;
106
+ enumValues: ["in-person", "online", "hybrid"];
107
+ baseColumn: never;
108
+ identity: undefined;
109
+ generated: undefined;
110
+ }, {}, {}>;
111
+ status: import("drizzle-orm/pg-core").PgColumn<{
112
+ name: "status";
113
+ tableName: "events";
114
+ dataType: "string";
115
+ columnType: "PgEnumColumn";
116
+ data: "active" | "draft" | "published" | "completed" | "cancelled";
117
+ driverParam: string;
118
+ notNull: true;
119
+ hasDefault: true;
120
+ isPrimaryKey: false;
121
+ isAutoincrement: false;
122
+ hasRuntimeDefault: false;
123
+ enumValues: ["draft", "published", "active", "completed", "cancelled"];
124
+ baseColumn: never;
125
+ identity: undefined;
126
+ generated: undefined;
127
+ }, {}, {}>;
128
+ startDate: import("drizzle-orm/pg-core").PgColumn<{
129
+ name: "start_date";
130
+ tableName: "events";
131
+ dataType: "date";
132
+ columnType: "PgTimestamp";
133
+ data: Date;
134
+ driverParam: string;
135
+ notNull: true;
136
+ hasDefault: false;
137
+ isPrimaryKey: false;
138
+ isAutoincrement: false;
139
+ hasRuntimeDefault: false;
140
+ enumValues: undefined;
141
+ baseColumn: never;
142
+ identity: undefined;
143
+ generated: undefined;
144
+ }, {}, {}>;
145
+ endDate: import("drizzle-orm/pg-core").PgColumn<{
146
+ name: "end_date";
147
+ tableName: "events";
148
+ dataType: "date";
149
+ columnType: "PgTimestamp";
150
+ data: Date;
151
+ driverParam: string;
152
+ notNull: true;
153
+ hasDefault: false;
154
+ isPrimaryKey: false;
155
+ isAutoincrement: false;
156
+ hasRuntimeDefault: false;
157
+ enumValues: undefined;
158
+ baseColumn: never;
159
+ identity: undefined;
160
+ generated: undefined;
161
+ }, {}, {}>;
162
+ timezone: import("drizzle-orm/pg-core").PgColumn<{
163
+ name: "timezone";
164
+ tableName: "events";
165
+ dataType: "string";
166
+ columnType: "PgVarchar";
167
+ data: string;
168
+ driverParam: string;
169
+ notNull: true;
170
+ hasDefault: true;
171
+ isPrimaryKey: false;
172
+ isAutoincrement: false;
173
+ hasRuntimeDefault: false;
174
+ enumValues: [string, ...string[]];
175
+ baseColumn: never;
176
+ identity: undefined;
177
+ generated: undefined;
178
+ }, {}, {
179
+ length: 64;
180
+ }>;
181
+ location: import("drizzle-orm/pg-core").PgColumn<{
182
+ name: "location";
183
+ tableName: "events";
184
+ dataType: "string";
185
+ columnType: "PgVarchar";
186
+ data: string;
187
+ driverParam: string;
188
+ notNull: false;
189
+ hasDefault: false;
190
+ isPrimaryKey: false;
191
+ isAutoincrement: false;
192
+ hasRuntimeDefault: false;
193
+ enumValues: [string, ...string[]];
194
+ baseColumn: never;
195
+ identity: undefined;
196
+ generated: undefined;
197
+ }, {}, {
198
+ length: 500;
199
+ }>;
200
+ locationUrl: import("drizzle-orm/pg-core").PgColumn<{
201
+ name: "location_url";
202
+ tableName: "events";
203
+ dataType: "string";
204
+ columnType: "PgVarchar";
205
+ data: string;
206
+ driverParam: string;
207
+ notNull: false;
208
+ hasDefault: false;
209
+ isPrimaryKey: false;
210
+ isAutoincrement: false;
211
+ hasRuntimeDefault: false;
212
+ enumValues: [string, ...string[]];
213
+ baseColumn: never;
214
+ identity: undefined;
215
+ generated: undefined;
216
+ }, {}, {
217
+ length: 500;
218
+ }>;
219
+ onlineUrl: import("drizzle-orm/pg-core").PgColumn<{
220
+ name: "online_url";
221
+ tableName: "events";
222
+ dataType: "string";
223
+ columnType: "PgVarchar";
224
+ data: string;
225
+ driverParam: string;
226
+ notNull: false;
227
+ hasDefault: false;
228
+ isPrimaryKey: false;
229
+ isAutoincrement: false;
230
+ hasRuntimeDefault: false;
231
+ enumValues: [string, ...string[]];
232
+ baseColumn: never;
233
+ identity: undefined;
234
+ generated: undefined;
235
+ }, {}, {
236
+ length: 500;
237
+ }>;
238
+ capacity: import("drizzle-orm/pg-core").PgColumn<{
239
+ name: "capacity";
240
+ tableName: "events";
241
+ dataType: "number";
242
+ columnType: "PgInteger";
243
+ data: number;
244
+ driverParam: string | number;
245
+ notNull: false;
246
+ hasDefault: false;
247
+ isPrimaryKey: false;
248
+ isAutoincrement: false;
249
+ hasRuntimeDefault: false;
250
+ enumValues: undefined;
251
+ baseColumn: never;
252
+ identity: undefined;
253
+ generated: undefined;
254
+ }, {}, {}>;
255
+ attendeeCount: import("drizzle-orm/pg-core").PgColumn<{
256
+ name: "attendee_count";
257
+ tableName: "events";
258
+ dataType: "number";
259
+ columnType: "PgInteger";
260
+ data: number;
261
+ driverParam: string | number;
262
+ notNull: true;
263
+ hasDefault: true;
264
+ isPrimaryKey: false;
265
+ isAutoincrement: false;
266
+ hasRuntimeDefault: false;
267
+ enumValues: undefined;
268
+ baseColumn: never;
269
+ identity: undefined;
270
+ generated: undefined;
271
+ }, {}, {}>;
272
+ isFeatured: import("drizzle-orm/pg-core").PgColumn<{
273
+ name: "is_featured";
274
+ tableName: "events";
275
+ dataType: "boolean";
276
+ columnType: "PgBoolean";
277
+ data: boolean;
278
+ driverParam: boolean;
279
+ notNull: true;
280
+ hasDefault: true;
281
+ isPrimaryKey: false;
282
+ isAutoincrement: false;
283
+ hasRuntimeDefault: false;
284
+ enumValues: undefined;
285
+ baseColumn: never;
286
+ identity: undefined;
287
+ generated: undefined;
288
+ }, {}, {}>;
289
+ hubId: import("drizzle-orm/pg-core").PgColumn<{
290
+ name: "hub_id";
291
+ tableName: "events";
292
+ dataType: "string";
293
+ columnType: "PgUUID";
294
+ data: string;
295
+ driverParam: string;
296
+ notNull: false;
297
+ hasDefault: false;
298
+ isPrimaryKey: false;
299
+ isAutoincrement: false;
300
+ hasRuntimeDefault: false;
301
+ enumValues: undefined;
302
+ baseColumn: never;
303
+ identity: undefined;
304
+ generated: undefined;
305
+ }, {}, {}>;
306
+ createdById: import("drizzle-orm/pg-core").PgColumn<{
307
+ name: "created_by_id";
308
+ tableName: "events";
309
+ dataType: "string";
310
+ columnType: "PgUUID";
311
+ data: string;
312
+ driverParam: string;
313
+ notNull: true;
314
+ hasDefault: false;
315
+ isPrimaryKey: false;
316
+ isAutoincrement: false;
317
+ hasRuntimeDefault: false;
318
+ enumValues: undefined;
319
+ baseColumn: never;
320
+ identity: undefined;
321
+ generated: undefined;
322
+ }, {}, {}>;
323
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
324
+ name: "created_at";
325
+ tableName: "events";
326
+ dataType: "date";
327
+ columnType: "PgTimestamp";
328
+ data: Date;
329
+ driverParam: string;
330
+ notNull: true;
331
+ hasDefault: true;
332
+ isPrimaryKey: false;
333
+ isAutoincrement: false;
334
+ hasRuntimeDefault: false;
335
+ enumValues: undefined;
336
+ baseColumn: never;
337
+ identity: undefined;
338
+ generated: undefined;
339
+ }, {}, {}>;
340
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
341
+ name: "updated_at";
342
+ tableName: "events";
343
+ dataType: "date";
344
+ columnType: "PgTimestamp";
345
+ data: Date;
346
+ driverParam: string;
347
+ notNull: true;
348
+ hasDefault: true;
349
+ isPrimaryKey: false;
350
+ isAutoincrement: false;
351
+ hasRuntimeDefault: false;
352
+ enumValues: undefined;
353
+ baseColumn: never;
354
+ identity: undefined;
355
+ generated: undefined;
356
+ }, {}, {}>;
357
+ };
358
+ dialect: "pg";
359
+ }>;
360
+ export declare const eventAttendees: import("drizzle-orm/pg-core").PgTableWithColumns<{
361
+ name: "event_attendees";
362
+ schema: undefined;
363
+ columns: {
364
+ id: import("drizzle-orm/pg-core").PgColumn<{
365
+ name: "id";
366
+ tableName: "event_attendees";
367
+ dataType: "string";
368
+ columnType: "PgUUID";
369
+ data: string;
370
+ driverParam: string;
371
+ notNull: true;
372
+ hasDefault: true;
373
+ isPrimaryKey: true;
374
+ isAutoincrement: false;
375
+ hasRuntimeDefault: false;
376
+ enumValues: undefined;
377
+ baseColumn: never;
378
+ identity: undefined;
379
+ generated: undefined;
380
+ }, {}, {}>;
381
+ eventId: import("drizzle-orm/pg-core").PgColumn<{
382
+ name: "event_id";
383
+ tableName: "event_attendees";
384
+ dataType: "string";
385
+ columnType: "PgUUID";
386
+ data: string;
387
+ driverParam: string;
388
+ notNull: true;
389
+ hasDefault: false;
390
+ isPrimaryKey: false;
391
+ isAutoincrement: false;
392
+ hasRuntimeDefault: false;
393
+ enumValues: undefined;
394
+ baseColumn: never;
395
+ identity: undefined;
396
+ generated: undefined;
397
+ }, {}, {}>;
398
+ userId: import("drizzle-orm/pg-core").PgColumn<{
399
+ name: "user_id";
400
+ tableName: "event_attendees";
401
+ dataType: "string";
402
+ columnType: "PgUUID";
403
+ data: string;
404
+ driverParam: string;
405
+ notNull: true;
406
+ hasDefault: false;
407
+ isPrimaryKey: false;
408
+ isAutoincrement: false;
409
+ hasRuntimeDefault: false;
410
+ enumValues: undefined;
411
+ baseColumn: never;
412
+ identity: undefined;
413
+ generated: undefined;
414
+ }, {}, {}>;
415
+ status: import("drizzle-orm/pg-core").PgColumn<{
416
+ name: "status";
417
+ tableName: "event_attendees";
418
+ dataType: "string";
419
+ columnType: "PgEnumColumn";
420
+ data: "cancelled" | "registered" | "waitlisted" | "attended";
421
+ driverParam: string;
422
+ notNull: true;
423
+ hasDefault: true;
424
+ isPrimaryKey: false;
425
+ isAutoincrement: false;
426
+ hasRuntimeDefault: false;
427
+ enumValues: ["registered", "waitlisted", "cancelled", "attended"];
428
+ baseColumn: never;
429
+ identity: undefined;
430
+ generated: undefined;
431
+ }, {}, {}>;
432
+ registeredAt: import("drizzle-orm/pg-core").PgColumn<{
433
+ name: "registered_at";
434
+ tableName: "event_attendees";
435
+ dataType: "date";
436
+ columnType: "PgTimestamp";
437
+ data: Date;
438
+ driverParam: string;
439
+ notNull: true;
440
+ hasDefault: true;
441
+ isPrimaryKey: false;
442
+ isAutoincrement: false;
443
+ hasRuntimeDefault: false;
444
+ enumValues: undefined;
445
+ baseColumn: never;
446
+ identity: undefined;
447
+ generated: undefined;
448
+ }, {}, {}>;
449
+ };
450
+ dialect: "pg";
451
+ }>;
452
+ export declare const eventsRelations: import("drizzle-orm").Relations<"events", {
453
+ createdBy: import("drizzle-orm").One<"users", true>;
454
+ hub: import("drizzle-orm").One<"hubs", false>;
455
+ attendees: import("drizzle-orm").Many<"event_attendees">;
456
+ }>;
457
+ export declare const eventAttendeesRelations: import("drizzle-orm").Relations<"event_attendees", {
458
+ event: import("drizzle-orm").One<"events", true>;
459
+ user: import("drizzle-orm").One<"users", true>;
460
+ }>;
461
+ export type EventRow = typeof events.$inferSelect;
462
+ export type NewEventRow = typeof events.$inferInsert;
463
+ export type EventAttendeeRow = typeof eventAttendees.$inferSelect;
464
+ export type NewEventAttendeeRow = typeof eventAttendees.$inferInsert;
465
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BjB,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAazB,CAAC;AAIH,eAAO,MAAM,eAAe;;;;EAIzB,CAAC;AAEJ,eAAO,MAAM,uBAAuB;;;EAGjC,CAAC;AAGJ,MAAM,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC;AAClD,MAAM,MAAM,WAAW,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC;AACrD,MAAM,MAAM,gBAAgB,GAAG,OAAO,cAAc,CAAC,YAAY,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,OAAO,cAAc,CAAC,YAAY,CAAC"}
package/dist/events.js ADDED
@@ -0,0 +1,59 @@
1
+ import { pgTable, uuid, varchar, text, timestamp, integer, boolean, index } from 'drizzle-orm/pg-core';
2
+ import { relations } from 'drizzle-orm';
3
+ import { users } from './auth.js';
4
+ import { hubs } from './hub.js';
5
+ import { eventStatusEnum, eventTypeEnum, eventAttendeeStatusEnum } from './enums.js';
6
+ export const events = pgTable('events', {
7
+ id: uuid('id').defaultRandom().primaryKey(),
8
+ title: varchar('title', { length: 255 }).notNull(),
9
+ slug: varchar('slug', { length: 255 }).notNull().unique(),
10
+ description: text('description'),
11
+ coverImage: text('cover_image'),
12
+ eventType: eventTypeEnum('event_type').default('in-person').notNull(),
13
+ status: eventStatusEnum('status').default('draft').notNull(),
14
+ startDate: timestamp('start_date', { withTimezone: true }).notNull(),
15
+ endDate: timestamp('end_date', { withTimezone: true }).notNull(),
16
+ timezone: varchar('timezone', { length: 64 }).default('UTC').notNull(),
17
+ location: varchar('location', { length: 500 }),
18
+ locationUrl: varchar('location_url', { length: 500 }),
19
+ onlineUrl: varchar('online_url', { length: 500 }),
20
+ capacity: integer('capacity'),
21
+ attendeeCount: integer('attendee_count').default(0).notNull(),
22
+ isFeatured: boolean('is_featured').default(false).notNull(),
23
+ hubId: uuid('hub_id').references(() => hubs.id, { onDelete: 'set null' }),
24
+ createdById: uuid('created_by_id')
25
+ .notNull()
26
+ .references(() => users.id, { onDelete: 'cascade' }),
27
+ createdAt: timestamp('created_at', { withTimezone: true }).defaultNow().notNull(),
28
+ updatedAt: timestamp('updated_at', { withTimezone: true }).defaultNow().notNull(),
29
+ }, (t) => [
30
+ index('idx_events_created_by_id').on(t.createdById),
31
+ index('idx_events_status').on(t.status),
32
+ index('idx_events_start_date').on(t.startDate),
33
+ index('idx_events_hub_id').on(t.hubId),
34
+ ]);
35
+ export const eventAttendees = pgTable('event_attendees', {
36
+ id: uuid('id').defaultRandom().primaryKey(),
37
+ eventId: uuid('event_id')
38
+ .notNull()
39
+ .references(() => events.id, { onDelete: 'cascade' }),
40
+ userId: uuid('user_id')
41
+ .notNull()
42
+ .references(() => users.id, { onDelete: 'cascade' }),
43
+ status: eventAttendeeStatusEnum('status').default('registered').notNull(),
44
+ registeredAt: timestamp('registered_at', { withTimezone: true }).defaultNow().notNull(),
45
+ }, (t) => [
46
+ index('idx_event_attendees_event_id').on(t.eventId),
47
+ index('idx_event_attendees_user_id').on(t.userId),
48
+ ]);
49
+ // --- Relations ---
50
+ export const eventsRelations = relations(events, ({ one, many }) => ({
51
+ createdBy: one(users, { fields: [events.createdById], references: [users.id] }),
52
+ hub: one(hubs, { fields: [events.hubId], references: [hubs.id] }),
53
+ attendees: many(eventAttendees),
54
+ }));
55
+ export const eventAttendeesRelations = relations(eventAttendees, ({ one }) => ({
56
+ event: one(events, { fields: [eventAttendees.eventId], references: [events.id] }),
57
+ user: one(users, { fields: [eventAttendees.userId], references: [users.id] }),
58
+ }));
59
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -8,6 +8,7 @@ export * from './learning.js';
8
8
  export * from './docs.js';
9
9
  export * from './video.js';
10
10
  export * from './contest.js';
11
+ export * from './events.js';
11
12
  export * from './files.js';
12
13
  export * from './federation.js';
13
14
  export * from './admin.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAG3B,cAAc,WAAW,CAAC;AAG1B,cAAc,cAAc,CAAC;AAG7B,cAAc,aAAa,CAAC;AAG5B,cAAc,UAAU,CAAC;AAGzB,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,cAAc,cAAc,CAAC;AAG7B,cAAc,YAAY,CAAC;AAG3B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,YAAY,CAAC;AAG3B,cAAc,iBAAiB,CAAC;AAGhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAG3B,cAAc,WAAW,CAAC;AAG1B,cAAc,cAAc,CAAC;AAG7B,cAAc,aAAa,CAAC;AAG5B,cAAc,UAAU,CAAC;AAGzB,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,cAAc,cAAc,CAAC;AAG7B,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,YAAY,CAAC;AAG3B,cAAc,iBAAiB,CAAC;AAGhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -18,6 +18,8 @@ export * from './docs.js';
18
18
  export * from './video.js';
19
19
  // Contest
20
20
  export * from './contest.js';
21
+ // Events
22
+ export * from './events.js';
21
23
  // Files
22
24
  export * from './files.js';
23
25
  // Federation
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,eAAe;AACf,cAAc,WAAW,CAAC;AAE1B,UAAU;AACV,cAAc,cAAc,CAAC;AAE7B,SAAS;AACT,cAAc,aAAa,CAAC;AAE5B,OAAO;AACP,cAAc,UAAU,CAAC;AAEzB,WAAW;AACX,cAAc,cAAc,CAAC;AAE7B,WAAW;AACX,cAAc,eAAe,CAAC;AAE9B,OAAO;AACP,cAAc,WAAW,CAAC;AAE1B,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,UAAU;AACV,cAAc,cAAc,CAAC;AAE7B,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,aAAa;AACb,cAAc,iBAAiB,CAAC;AAEhC,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,aAAa;AACb,cAAc,iBAAiB,CAAC;AAEhC,UAAU;AACV,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,eAAe;AACf,cAAc,WAAW,CAAC;AAE1B,UAAU;AACV,cAAc,cAAc,CAAC;AAE7B,SAAS;AACT,cAAc,aAAa,CAAC;AAE5B,OAAO;AACP,cAAc,UAAU,CAAC;AAEzB,WAAW;AACX,cAAc,cAAc,CAAC;AAE7B,WAAW;AACX,cAAc,eAAe,CAAC;AAE9B,OAAO;AACP,cAAc,WAAW,CAAC;AAE1B,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,UAAU;AACV,cAAc,cAAc,CAAC;AAE7B,SAAS;AACT,cAAc,aAAa,CAAC;AAE5B,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,aAAa;AACb,cAAc,iBAAiB,CAAC;AAEhC,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,aAAa;AACb,cAAc,iBAAiB,CAAC;AAEhC,UAAU;AACV,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
package/dist/social.d.ts CHANGED
@@ -460,14 +460,14 @@ export declare const notifications: import("drizzle-orm/pg-core").PgTableWithCol
460
460
  tableName: "notifications";
461
461
  dataType: "string";
462
462
  columnType: "PgEnumColumn";
463
- data: "comment" | "like" | "follow" | "mention" | "contest" | "certificate" | "hub" | "system" | "fork" | "build";
463
+ data: "comment" | "like" | "follow" | "mention" | "contest" | "event" | "certificate" | "hub" | "system" | "fork" | "build";
464
464
  driverParam: string;
465
465
  notNull: true;
466
466
  hasDefault: false;
467
467
  isPrimaryKey: false;
468
468
  isAutoincrement: false;
469
469
  hasRuntimeDefault: false;
470
- enumValues: ["like", "comment", "follow", "mention", "contest", "certificate", "hub", "system", "fork", "build"];
470
+ enumValues: ["like", "comment", "follow", "mention", "contest", "event", "certificate", "hub", "system", "fork", "build"];
471
471
  baseColumn: never;
472
472
  identity: undefined;
473
473
  generated: undefined;
@@ -111,6 +111,7 @@ export declare const createContentSchema: z.ZodObject<{
111
111
  series: z.ZodOptional<z.ZodString>;
112
112
  sections: z.ZodOptional<z.ZodUnknown>;
113
113
  tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
114
+ categoryId: z.ZodOptional<z.ZodString>;
114
115
  }, z.core.$strip>;
115
116
  export type CreateContentInput = z.infer<typeof createContentSchema>;
116
117
  export declare const updateContentSchema: z.ZodObject<{
@@ -133,6 +134,7 @@ export declare const updateContentSchema: z.ZodObject<{
133
134
  members: "members";
134
135
  private: "private";
135
136
  }>>>;
137
+ categoryId: z.ZodOptional<z.ZodOptional<z.ZodString>>;
136
138
  seoDescription: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>>;
137
139
  sections: z.ZodOptional<z.ZodOptional<z.ZodUnknown>>;
138
140
  licenseType: z.ZodOptional<z.ZodOptional<z.ZodString>>;
@@ -146,6 +148,26 @@ export declare const updateContentSchema: z.ZodObject<{
146
148
  }>>;
147
149
  }, z.core.$strip>;
148
150
  export type UpdateContentInput = z.infer<typeof updateContentSchema>;
151
+ export declare const createContentCategorySchema: z.ZodObject<{
152
+ name: z.ZodString;
153
+ slug: z.ZodString;
154
+ description: z.ZodOptional<z.ZodString>;
155
+ color: z.ZodOptional<z.ZodString>;
156
+ icon: z.ZodOptional<z.ZodString>;
157
+ sortOrder: z.ZodOptional<z.ZodNumber>;
158
+ isSystem: z.ZodOptional<z.ZodBoolean>;
159
+ }, z.core.$strip>;
160
+ export type CreateContentCategoryInput = z.infer<typeof createContentCategorySchema>;
161
+ export declare const updateContentCategorySchema: z.ZodObject<{
162
+ name: z.ZodOptional<z.ZodString>;
163
+ slug: z.ZodOptional<z.ZodString>;
164
+ description: z.ZodOptional<z.ZodOptional<z.ZodString>>;
165
+ color: z.ZodOptional<z.ZodOptional<z.ZodString>>;
166
+ icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
167
+ sortOrder: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
168
+ isSystem: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
169
+ }, z.core.$strip>;
170
+ export type UpdateContentCategoryInput = z.infer<typeof updateContentCategorySchema>;
149
171
  export declare const likeTargetTypeSchema: z.ZodEnum<{
150
172
  project: "project";
151
173
  article: "article";
@@ -782,6 +804,8 @@ export declare const contentFiltersSchema: z.ZodObject<{
782
804
  authorId: z.ZodOptional<z.ZodString>;
783
805
  followedBy: z.ZodOptional<z.ZodString>;
784
806
  featured: z.ZodOptional<z.ZodCoercedBoolean<unknown>>;
807
+ editorial: z.ZodOptional<z.ZodCoercedBoolean<unknown>>;
808
+ categoryId: z.ZodOptional<z.ZodString>;
785
809
  difficulty: z.ZodOptional<z.ZodEnum<{
786
810
  beginner: "beginner";
787
811
  intermediate: "intermediate";
@@ -791,6 +815,7 @@ export declare const contentFiltersSchema: z.ZodObject<{
791
815
  tag: z.ZodOptional<z.ZodString>;
792
816
  sort: z.ZodOptional<z.ZodEnum<{
793
817
  featured: "featured";
818
+ editorial: "editorial";
794
819
  recent: "recent";
795
820
  popular: "popular";
796
821
  }>>;