@headless-lms/adapter-db 0.4.0 → 0.6.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.
Files changed (94) hide show
  1. package/dist/client.d.ts +8 -2
  2. package/dist/client.js +10 -2
  3. package/dist/client.js.map +1 -1
  4. package/dist/index.d.ts +5 -4
  5. package/dist/index.js +4 -3
  6. package/dist/repositories/admin.d.ts +12 -4
  7. package/dist/repositories/admin.js +164 -22
  8. package/dist/repositories/admin.js.map +1 -1
  9. package/dist/repositories/assets.d.ts +2 -1
  10. package/dist/repositories/assets.js +12 -1
  11. package/dist/repositories/assets.js.map +1 -1
  12. package/dist/repositories/automations.js +1 -1
  13. package/dist/repositories/chats.d.ts +13 -4
  14. package/dist/repositories/chats.js +164 -70
  15. package/dist/repositories/chats.js.map +1 -1
  16. package/dist/repositories/content.d.ts +22 -5
  17. package/dist/repositories/content.js +201 -40
  18. package/dist/repositories/content.js.map +1 -1
  19. package/dist/repositories/credentials.js +1 -1
  20. package/dist/repositories/devices.js +1 -1
  21. package/dist/repositories/digest-runs.js +1 -1
  22. package/dist/repositories/discussion.d.ts +1 -1
  23. package/dist/repositories/discussion.js +9 -3
  24. package/dist/repositories/discussion.js.map +1 -1
  25. package/dist/repositories/entitlements.d.ts +10 -10
  26. package/dist/repositories/entitlements.js +47 -56
  27. package/dist/repositories/entitlements.js.map +1 -1
  28. package/dist/repositories/event-reports.d.ts +16 -0
  29. package/dist/repositories/event-reports.js +199 -0
  30. package/dist/repositories/event-reports.js.map +1 -0
  31. package/dist/repositories/grant-covers.d.ts +4 -3
  32. package/dist/repositories/grant-covers.js +7 -4
  33. package/dist/repositories/grant-covers.js.map +1 -1
  34. package/dist/repositories/identity.js +1 -1
  35. package/dist/repositories/integrations.js +1 -1
  36. package/dist/repositories/member.d.ts +12 -4
  37. package/dist/repositories/member.js +19 -7
  38. package/dist/repositories/member.js.map +1 -1
  39. package/dist/repositories/members.d.ts +2 -5
  40. package/dist/repositories/members.js +39 -94
  41. package/dist/repositories/members.js.map +1 -1
  42. package/dist/repositories/mentions.js +1 -1
  43. package/dist/repositories/notification-settings.js +1 -1
  44. package/dist/repositories/notifications.js +2 -2
  45. package/dist/repositories/notifications.js.map +1 -1
  46. package/dist/repositories/org-user-profile.d.ts +0 -17
  47. package/dist/repositories/org-user-profile.js +0 -1
  48. package/dist/repositories/org-user-profile.js.map +1 -1
  49. package/dist/repositories/organizations.d.ts +4 -4
  50. package/dist/repositories/organizations.js +26 -46
  51. package/dist/repositories/organizations.js.map +1 -1
  52. package/dist/repositories/outbox.d.ts +5 -1
  53. package/dist/repositories/outbox.js +12 -3
  54. package/dist/repositories/outbox.js.map +1 -1
  55. package/dist/repositories/posts.js +1 -1
  56. package/dist/repositories/progress.js +1 -1
  57. package/dist/repositories/roles.d.ts +35 -0
  58. package/dist/repositories/roles.js +244 -0
  59. package/dist/repositories/roles.js.map +1 -0
  60. package/dist/repositories/settings.js +1 -1
  61. package/dist/repositories/subscriptions.js +1 -1
  62. package/dist/schema/assets.d.ts +17 -0
  63. package/dist/schema/assets.js +1 -0
  64. package/dist/schema/assets.js.map +1 -1
  65. package/dist/schema/automations.d.ts +3 -3
  66. package/dist/schema/automations.js +1 -1
  67. package/dist/schema/automations.js.map +1 -1
  68. package/dist/schema/content.d.ts +488 -3
  69. package/dist/schema/content.js +89 -4
  70. package/dist/schema/content.js.map +1 -1
  71. package/dist/schema/discussion.d.ts +17 -0
  72. package/dist/schema/discussion.js +4 -2
  73. package/dist/schema/discussion.js.map +1 -1
  74. package/dist/schema/index.d.ts +4 -3
  75. package/dist/schema/index.js +7 -2
  76. package/dist/schema/index.js.map +1 -1
  77. package/dist/schema/organizations.d.ts +24 -22
  78. package/dist/schema/organizations.js +3 -14
  79. package/dist/schema/organizations.js.map +1 -1
  80. package/dist/schema/roles.d.ts +369 -0
  81. package/dist/schema/roles.js +71 -0
  82. package/dist/schema/roles.js.map +1 -0
  83. package/drizzle/0017_configurable_roles.sql +38 -0
  84. package/drizzle/0018_messages_client_id.sql +2 -0
  85. package/drizzle/0019_events.sql +44 -0
  86. package/drizzle/0020_space_images.sql +9 -0
  87. package/drizzle/0021_org_metadata.sql +1 -0
  88. package/drizzle/meta/0017_snapshot.json +9518 -0
  89. package/drizzle/meta/0018_snapshot.json +9557 -0
  90. package/drizzle/meta/0019_snapshot.json +9919 -0
  91. package/drizzle/meta/0020_snapshot.json +10045 -0
  92. package/drizzle/meta/0021_snapshot.json +10052 -0
  93. package/drizzle/meta/_journal.json +35 -0
  94. package/package.json +2 -2
@@ -134,14 +134,14 @@ declare const contentItems: import("drizzle-orm/pg-core").PgTableWithColumns<{
134
134
  tableName: "content_items";
135
135
  dataType: "string";
136
136
  columnType: "PgText";
137
- data: "course" | "download" | "community";
137
+ data: "course" | "download" | "event" | "community";
138
138
  driverParam: string;
139
139
  notNull: true;
140
140
  hasDefault: false;
141
141
  isPrimaryKey: false;
142
142
  isAutoincrement: false;
143
143
  hasRuntimeDefault: false;
144
- enumValues: ["course", "download", "community"];
144
+ enumValues: ["course", "download", "community", "event"];
145
145
  baseColumn: never;
146
146
  identity: undefined;
147
147
  generated: undefined;
@@ -1211,6 +1211,440 @@ declare const downloadAssets: import("drizzle-orm/pg-core").PgTableWithColumns<{
1211
1211
  };
1212
1212
  dialect: "pg";
1213
1213
  }>;
1214
+ declare const events: import("drizzle-orm/pg-core").PgTableWithColumns<{
1215
+ name: "events";
1216
+ schema: undefined;
1217
+ columns: {
1218
+ orgId: import("drizzle-orm/pg-core").PgColumn<{
1219
+ name: "org_id";
1220
+ tableName: "events";
1221
+ dataType: "string";
1222
+ columnType: "PgText";
1223
+ data: string;
1224
+ driverParam: string;
1225
+ notNull: true;
1226
+ hasDefault: false;
1227
+ isPrimaryKey: false;
1228
+ isAutoincrement: false;
1229
+ hasRuntimeDefault: false;
1230
+ enumValues: [string, ...string[]];
1231
+ baseColumn: never;
1232
+ identity: undefined;
1233
+ generated: undefined;
1234
+ }, {}, {}>;
1235
+ id: import("drizzle-orm/pg-core").PgColumn<{
1236
+ name: "id";
1237
+ tableName: "events";
1238
+ dataType: "string";
1239
+ columnType: "PgText";
1240
+ data: string;
1241
+ driverParam: string;
1242
+ notNull: true;
1243
+ hasDefault: true;
1244
+ isPrimaryKey: false;
1245
+ isAutoincrement: false;
1246
+ hasRuntimeDefault: true;
1247
+ enumValues: [string, ...string[]];
1248
+ baseColumn: never;
1249
+ identity: undefined;
1250
+ generated: undefined;
1251
+ }, {}, {}>;
1252
+ type: import("drizzle-orm/pg-core").PgColumn<{
1253
+ name: "type";
1254
+ tableName: "events";
1255
+ dataType: "string";
1256
+ columnType: "PgText";
1257
+ data: "event";
1258
+ driverParam: string;
1259
+ notNull: true;
1260
+ hasDefault: true;
1261
+ isPrimaryKey: false;
1262
+ isAutoincrement: false;
1263
+ hasRuntimeDefault: false;
1264
+ enumValues: [string, ...string[]];
1265
+ baseColumn: never;
1266
+ identity: undefined;
1267
+ generated: {
1268
+ type: "always";
1269
+ };
1270
+ }, {}, {
1271
+ $type: "event";
1272
+ }>;
1273
+ title: import("drizzle-orm/pg-core").PgColumn<{
1274
+ name: "title";
1275
+ tableName: "events";
1276
+ dataType: "string";
1277
+ columnType: "PgText";
1278
+ data: string;
1279
+ driverParam: string;
1280
+ notNull: true;
1281
+ hasDefault: false;
1282
+ isPrimaryKey: false;
1283
+ isAutoincrement: false;
1284
+ hasRuntimeDefault: false;
1285
+ enumValues: [string, ...string[]];
1286
+ baseColumn: never;
1287
+ identity: undefined;
1288
+ generated: undefined;
1289
+ }, {}, {}>;
1290
+ description: import("drizzle-orm/pg-core").PgColumn<{
1291
+ name: "description";
1292
+ tableName: "events";
1293
+ dataType: "string";
1294
+ columnType: "PgText";
1295
+ data: string;
1296
+ driverParam: string;
1297
+ notNull: true;
1298
+ hasDefault: true;
1299
+ isPrimaryKey: false;
1300
+ isAutoincrement: false;
1301
+ hasRuntimeDefault: false;
1302
+ enumValues: [string, ...string[]];
1303
+ baseColumn: never;
1304
+ identity: undefined;
1305
+ generated: undefined;
1306
+ }, {}, {}>;
1307
+ thumbnailAssetId: import("drizzle-orm/pg-core").PgColumn<{
1308
+ name: "thumbnail_asset_id";
1309
+ tableName: "events";
1310
+ dataType: "string";
1311
+ columnType: "PgText";
1312
+ data: string;
1313
+ driverParam: string;
1314
+ notNull: false;
1315
+ hasDefault: false;
1316
+ isPrimaryKey: false;
1317
+ isAutoincrement: false;
1318
+ hasRuntimeDefault: false;
1319
+ enumValues: [string, ...string[]];
1320
+ baseColumn: never;
1321
+ identity: undefined;
1322
+ generated: undefined;
1323
+ }, {}, {}>;
1324
+ status: import("drizzle-orm/pg-core").PgColumn<{
1325
+ name: "status";
1326
+ tableName: "events";
1327
+ dataType: "string";
1328
+ columnType: "PgText";
1329
+ data: "draft" | "published" | "canceled";
1330
+ driverParam: string;
1331
+ notNull: true;
1332
+ hasDefault: true;
1333
+ isPrimaryKey: false;
1334
+ isAutoincrement: false;
1335
+ hasRuntimeDefault: false;
1336
+ enumValues: ["draft", "published", "canceled"];
1337
+ baseColumn: never;
1338
+ identity: undefined;
1339
+ generated: undefined;
1340
+ }, {}, {}>;
1341
+ startsAt: import("drizzle-orm/pg-core").PgColumn<{
1342
+ name: "starts_at";
1343
+ tableName: "events";
1344
+ dataType: "date";
1345
+ columnType: "PgTimestamp";
1346
+ data: Date;
1347
+ driverParam: string;
1348
+ notNull: true;
1349
+ hasDefault: false;
1350
+ isPrimaryKey: false;
1351
+ isAutoincrement: false;
1352
+ hasRuntimeDefault: false;
1353
+ enumValues: undefined;
1354
+ baseColumn: never;
1355
+ identity: undefined;
1356
+ generated: undefined;
1357
+ }, {}, {}>;
1358
+ endsAt: import("drizzle-orm/pg-core").PgColumn<{
1359
+ name: "ends_at";
1360
+ tableName: "events";
1361
+ dataType: "date";
1362
+ columnType: "PgTimestamp";
1363
+ data: Date;
1364
+ driverParam: string;
1365
+ notNull: true;
1366
+ hasDefault: false;
1367
+ isPrimaryKey: false;
1368
+ isAutoincrement: false;
1369
+ hasRuntimeDefault: false;
1370
+ enumValues: undefined;
1371
+ baseColumn: never;
1372
+ identity: undefined;
1373
+ generated: undefined;
1374
+ }, {}, {}>;
1375
+ timeZone: import("drizzle-orm/pg-core").PgColumn<{
1376
+ name: "time_zone";
1377
+ tableName: "events";
1378
+ dataType: "string";
1379
+ columnType: "PgText";
1380
+ data: string;
1381
+ driverParam: string;
1382
+ notNull: true;
1383
+ hasDefault: false;
1384
+ isPrimaryKey: false;
1385
+ isAutoincrement: false;
1386
+ hasRuntimeDefault: false;
1387
+ enumValues: [string, ...string[]];
1388
+ baseColumn: never;
1389
+ identity: undefined;
1390
+ generated: undefined;
1391
+ }, {}, {}>;
1392
+ location: import("drizzle-orm/pg-core").PgColumn<{
1393
+ name: "location";
1394
+ tableName: "events";
1395
+ dataType: "json";
1396
+ columnType: "PgJsonb";
1397
+ data: {
1398
+ venue: {
1399
+ name: string;
1400
+ address: {
1401
+ line1: string | null;
1402
+ line2: string | null;
1403
+ city: string | null;
1404
+ region: string | null;
1405
+ postalCode: string | null;
1406
+ country: string | null;
1407
+ } | null;
1408
+ } | null;
1409
+ online: {
1410
+ url: string;
1411
+ details: string | null;
1412
+ } | null;
1413
+ };
1414
+ driverParam: unknown;
1415
+ notNull: true;
1416
+ hasDefault: true;
1417
+ isPrimaryKey: false;
1418
+ isAutoincrement: false;
1419
+ hasRuntimeDefault: false;
1420
+ enumValues: undefined;
1421
+ baseColumn: never;
1422
+ identity: undefined;
1423
+ generated: undefined;
1424
+ }, {}, {
1425
+ $type: {
1426
+ venue: {
1427
+ name: string;
1428
+ address: {
1429
+ line1: string | null;
1430
+ line2: string | null;
1431
+ city: string | null;
1432
+ region: string | null;
1433
+ postalCode: string | null;
1434
+ country: string | null;
1435
+ } | null;
1436
+ } | null;
1437
+ online: {
1438
+ url: string;
1439
+ details: string | null;
1440
+ } | null;
1441
+ };
1442
+ }>;
1443
+ recording: import("drizzle-orm/pg-core").PgColumn<{
1444
+ name: "recording";
1445
+ tableName: "events";
1446
+ dataType: "json";
1447
+ columnType: "PgJsonb";
1448
+ data: {
1449
+ url: string;
1450
+ details: string | null;
1451
+ } | null;
1452
+ driverParam: unknown;
1453
+ notNull: false;
1454
+ hasDefault: false;
1455
+ isPrimaryKey: false;
1456
+ isAutoincrement: false;
1457
+ hasRuntimeDefault: false;
1458
+ enumValues: undefined;
1459
+ baseColumn: never;
1460
+ identity: undefined;
1461
+ generated: undefined;
1462
+ }, {}, {
1463
+ $type: {
1464
+ url: string;
1465
+ details: string | null;
1466
+ } | null;
1467
+ }>;
1468
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1469
+ name: "created_at";
1470
+ tableName: "events";
1471
+ dataType: "date";
1472
+ columnType: "PgTimestamp";
1473
+ data: Date;
1474
+ driverParam: string;
1475
+ notNull: true;
1476
+ hasDefault: true;
1477
+ isPrimaryKey: false;
1478
+ isAutoincrement: false;
1479
+ hasRuntimeDefault: false;
1480
+ enumValues: undefined;
1481
+ baseColumn: never;
1482
+ identity: undefined;
1483
+ generated: undefined;
1484
+ }, {}, {}>;
1485
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1486
+ name: "updated_at";
1487
+ tableName: "events";
1488
+ dataType: "date";
1489
+ columnType: "PgTimestamp";
1490
+ data: Date;
1491
+ driverParam: string;
1492
+ notNull: true;
1493
+ hasDefault: true;
1494
+ isPrimaryKey: false;
1495
+ isAutoincrement: false;
1496
+ hasRuntimeDefault: false;
1497
+ enumValues: undefined;
1498
+ baseColumn: never;
1499
+ identity: undefined;
1500
+ generated: undefined;
1501
+ }, {}, {}>;
1502
+ };
1503
+ dialect: "pg";
1504
+ }>;
1505
+ declare const eventAssets: import("drizzle-orm/pg-core").PgTableWithColumns<{
1506
+ name: "event_assets";
1507
+ schema: undefined;
1508
+ columns: {
1509
+ orgId: import("drizzle-orm/pg-core").PgColumn<{
1510
+ name: "org_id";
1511
+ tableName: "event_assets";
1512
+ dataType: "string";
1513
+ columnType: "PgText";
1514
+ data: string;
1515
+ driverParam: string;
1516
+ notNull: true;
1517
+ hasDefault: false;
1518
+ isPrimaryKey: false;
1519
+ isAutoincrement: false;
1520
+ hasRuntimeDefault: false;
1521
+ enumValues: [string, ...string[]];
1522
+ baseColumn: never;
1523
+ identity: undefined;
1524
+ generated: undefined;
1525
+ }, {}, {}>;
1526
+ id: import("drizzle-orm/pg-core").PgColumn<{
1527
+ name: "id";
1528
+ tableName: "event_assets";
1529
+ dataType: "string";
1530
+ columnType: "PgText";
1531
+ data: string;
1532
+ driverParam: string;
1533
+ notNull: true;
1534
+ hasDefault: true;
1535
+ isPrimaryKey: false;
1536
+ isAutoincrement: false;
1537
+ hasRuntimeDefault: true;
1538
+ enumValues: [string, ...string[]];
1539
+ baseColumn: never;
1540
+ identity: undefined;
1541
+ generated: undefined;
1542
+ }, {}, {}>;
1543
+ eventId: import("drizzle-orm/pg-core").PgColumn<{
1544
+ name: "event_id";
1545
+ tableName: "event_assets";
1546
+ dataType: "string";
1547
+ columnType: "PgText";
1548
+ data: string;
1549
+ driverParam: string;
1550
+ notNull: true;
1551
+ hasDefault: false;
1552
+ isPrimaryKey: false;
1553
+ isAutoincrement: false;
1554
+ hasRuntimeDefault: false;
1555
+ enumValues: [string, ...string[]];
1556
+ baseColumn: never;
1557
+ identity: undefined;
1558
+ generated: undefined;
1559
+ }, {}, {}>;
1560
+ assetId: import("drizzle-orm/pg-core").PgColumn<{
1561
+ name: "asset_id";
1562
+ tableName: "event_assets";
1563
+ dataType: "string";
1564
+ columnType: "PgText";
1565
+ data: string;
1566
+ driverParam: string;
1567
+ notNull: true;
1568
+ hasDefault: false;
1569
+ isPrimaryKey: false;
1570
+ isAutoincrement: false;
1571
+ hasRuntimeDefault: false;
1572
+ enumValues: [string, ...string[]];
1573
+ baseColumn: never;
1574
+ identity: undefined;
1575
+ generated: undefined;
1576
+ }, {}, {}>;
1577
+ seq: import("drizzle-orm/pg-core").PgColumn<{
1578
+ name: "seq";
1579
+ tableName: "event_assets";
1580
+ dataType: "number";
1581
+ columnType: "PgInteger";
1582
+ data: number;
1583
+ driverParam: string | number;
1584
+ notNull: true;
1585
+ hasDefault: true;
1586
+ isPrimaryKey: false;
1587
+ isAutoincrement: false;
1588
+ hasRuntimeDefault: false;
1589
+ enumValues: undefined;
1590
+ baseColumn: never;
1591
+ identity: undefined;
1592
+ generated: undefined;
1593
+ }, {}, {}>;
1594
+ displayName: import("drizzle-orm/pg-core").PgColumn<{
1595
+ name: "display_name";
1596
+ tableName: "event_assets";
1597
+ dataType: "string";
1598
+ columnType: "PgText";
1599
+ data: string;
1600
+ driverParam: string;
1601
+ notNull: false;
1602
+ hasDefault: false;
1603
+ isPrimaryKey: false;
1604
+ isAutoincrement: false;
1605
+ hasRuntimeDefault: false;
1606
+ enumValues: [string, ...string[]];
1607
+ baseColumn: never;
1608
+ identity: undefined;
1609
+ generated: undefined;
1610
+ }, {}, {}>;
1611
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1612
+ name: "created_at";
1613
+ tableName: "event_assets";
1614
+ dataType: "date";
1615
+ columnType: "PgTimestamp";
1616
+ data: Date;
1617
+ driverParam: string;
1618
+ notNull: true;
1619
+ hasDefault: true;
1620
+ isPrimaryKey: false;
1621
+ isAutoincrement: false;
1622
+ hasRuntimeDefault: false;
1623
+ enumValues: undefined;
1624
+ baseColumn: never;
1625
+ identity: undefined;
1626
+ generated: undefined;
1627
+ }, {}, {}>;
1628
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1629
+ name: "updated_at";
1630
+ tableName: "event_assets";
1631
+ dataType: "date";
1632
+ columnType: "PgTimestamp";
1633
+ data: Date;
1634
+ driverParam: string;
1635
+ notNull: true;
1636
+ hasDefault: true;
1637
+ isPrimaryKey: false;
1638
+ isAutoincrement: false;
1639
+ hasRuntimeDefault: false;
1640
+ enumValues: undefined;
1641
+ baseColumn: never;
1642
+ identity: undefined;
1643
+ generated: undefined;
1644
+ }, {}, {}>;
1645
+ };
1646
+ dialect: "pg";
1647
+ }>;
1214
1648
  declare const communities: import("drizzle-orm/pg-core").PgTableWithColumns<{
1215
1649
  name: "communities";
1216
1650
  schema: undefined;
@@ -1559,6 +1993,57 @@ declare const spaces: import("drizzle-orm/pg-core").PgTableWithColumns<{
1559
1993
  requireReview: boolean;
1560
1994
  };
1561
1995
  }>;
1996
+ coverAssetId: import("drizzle-orm/pg-core").PgColumn<{
1997
+ name: "cover_asset_id";
1998
+ tableName: "spaces";
1999
+ dataType: "string";
2000
+ columnType: "PgText";
2001
+ data: string;
2002
+ driverParam: string;
2003
+ notNull: false;
2004
+ hasDefault: false;
2005
+ isPrimaryKey: false;
2006
+ isAutoincrement: false;
2007
+ hasRuntimeDefault: false;
2008
+ enumValues: [string, ...string[]];
2009
+ baseColumn: never;
2010
+ identity: undefined;
2011
+ generated: undefined;
2012
+ }, {}, {}>;
2013
+ backgroundAssetId: import("drizzle-orm/pg-core").PgColumn<{
2014
+ name: "background_asset_id";
2015
+ tableName: "spaces";
2016
+ dataType: "string";
2017
+ columnType: "PgText";
2018
+ data: string;
2019
+ driverParam: string;
2020
+ notNull: false;
2021
+ hasDefault: false;
2022
+ isPrimaryKey: false;
2023
+ isAutoincrement: false;
2024
+ hasRuntimeDefault: false;
2025
+ enumValues: [string, ...string[]];
2026
+ baseColumn: never;
2027
+ identity: undefined;
2028
+ generated: undefined;
2029
+ }, {}, {}>;
2030
+ iconAssetId: import("drizzle-orm/pg-core").PgColumn<{
2031
+ name: "icon_asset_id";
2032
+ tableName: "spaces";
2033
+ dataType: "string";
2034
+ columnType: "PgText";
2035
+ data: string;
2036
+ driverParam: string;
2037
+ notNull: false;
2038
+ hasDefault: false;
2039
+ isPrimaryKey: false;
2040
+ isAutoincrement: false;
2041
+ hasRuntimeDefault: false;
2042
+ enumValues: [string, ...string[]];
2043
+ baseColumn: never;
2044
+ identity: undefined;
2045
+ generated: undefined;
2046
+ }, {}, {}>;
1562
2047
  createdAt: import("drizzle-orm/pg-core").PgColumn<{
1563
2048
  name: "created_at";
1564
2049
  tableName: "spaces";
@@ -1849,5 +2334,5 @@ declare const spaceLinks: import("drizzle-orm/pg-core").PgTableWithColumns<{
1849
2334
  dialect: "pg";
1850
2335
  }>;
1851
2336
  //#endregion
1852
- export { activities, activityAssets, bundleItems, bundles, communities, contentItems, courses, downloadAssets, downloads, modules, spaceLinks, spaceTopics, spaces };
2337
+ export { activities, activityAssets, bundleItems, bundles, communities, contentItems, courses, downloadAssets, downloads, eventAssets, events, modules, spaceLinks, spaceTopics, spaces };
1853
2338
  //# sourceMappingURL=content.d.ts.map
@@ -20,14 +20,15 @@ const contentItems = pgTable("content_items", {
20
20
  type: text("type", { enum: [
21
21
  "course",
22
22
  "download",
23
- "community"
23
+ "community",
24
+ "event"
24
25
  ] }).notNull(),
25
26
  createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow(),
26
27
  updatedAt: timestamp("updated_at", { withTimezone: true }).notNull().defaultNow().$onUpdate(() => /* @__PURE__ */ new Date())
27
28
  }, (t) => ({
28
29
  pk: primaryKey({ columns: [t.orgId, t.id] }),
29
30
  typeUq: unique().on(t.orgId, t.id, t.type),
30
- typeCk: check("content_items_type_check", sql`${t.type} in ('course', 'download', 'community')`)
31
+ typeCk: check("content_items_type_check", sql`${t.type} in ('course', 'download', 'community', 'event')`)
31
32
  }));
32
33
  const bundleItems = pgTable("bundle_items", {
33
34
  orgId: text("org_id").notNull().references(() => organizations.id),
@@ -201,6 +202,72 @@ const downloadAssets = pgTable("download_assets", {
201
202
  downloadAssetUq: unique().on(t.orgId, t.downloadId, t.assetId),
202
203
  assetIdx: index("download_assets_asset_idx").on(t.orgId, t.assetId)
203
204
  }));
205
+ const events = pgTable("events", {
206
+ orgId: text("org_id").notNull().references(() => organizations.id),
207
+ id: text("id").notNull().$defaultFn(() => genId("contentEvent")),
208
+ type: text("type").$type().notNull().generatedAlwaysAs(sql`'event'`),
209
+ title: text("title").notNull(),
210
+ description: text("description").notNull().default(""),
211
+ thumbnailAssetId: text("thumbnail_asset_id"),
212
+ status: text("status", { enum: [
213
+ "draft",
214
+ "published",
215
+ "canceled"
216
+ ] }).notNull().default("draft"),
217
+ startsAt: timestamp("starts_at", { withTimezone: true }).notNull(),
218
+ endsAt: timestamp("ends_at", { withTimezone: true }).notNull(),
219
+ timeZone: text("time_zone").notNull(),
220
+ location: jsonb("location").$type().notNull().default({
221
+ venue: null,
222
+ online: null
223
+ }),
224
+ recording: jsonb("recording").$type(),
225
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow(),
226
+ updatedAt: timestamp("updated_at", { withTimezone: true }).notNull().defaultNow().$onUpdate(() => /* @__PURE__ */ new Date())
227
+ }, (t) => ({
228
+ pk: primaryKey({ columns: [t.orgId, t.id] }),
229
+ contentItemFk: foreignKey({
230
+ columns: [
231
+ t.orgId,
232
+ t.id,
233
+ t.type
234
+ ],
235
+ foreignColumns: [
236
+ contentItems.orgId,
237
+ contentItems.id,
238
+ contentItems.type
239
+ ]
240
+ }).onDelete("cascade"),
241
+ thumbnailAssetFk: foreignKey({
242
+ columns: [t.orgId, t.thumbnailAssetId],
243
+ foreignColumns: [assets.orgId, assets.id]
244
+ }),
245
+ thumbnailIdx: index("events_thumbnail_idx").on(t.orgId, t.thumbnailAssetId),
246
+ startsIdx: index("events_status_starts_idx").on(t.orgId, t.status, t.startsAt),
247
+ timesCk: check("events_times_check", sql`${t.endsAt} > ${t.startsAt}`)
248
+ }));
249
+ const eventAssets = pgTable("event_assets", {
250
+ orgId: text("org_id").notNull().references(() => organizations.id),
251
+ id: text("id").notNull().$defaultFn(() => genId("eventAsset")),
252
+ eventId: text("event_id").notNull(),
253
+ assetId: text("asset_id").notNull(),
254
+ seq: integer("seq").notNull().default(0),
255
+ displayName: text("display_name"),
256
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow(),
257
+ updatedAt: timestamp("updated_at", { withTimezone: true }).notNull().defaultNow().$onUpdate(() => /* @__PURE__ */ new Date())
258
+ }, (t) => ({
259
+ pk: primaryKey({ columns: [t.orgId, t.id] }),
260
+ eventFk: foreignKey({
261
+ columns: [t.orgId, t.eventId],
262
+ foreignColumns: [events.orgId, events.id]
263
+ }).onDelete("cascade"),
264
+ assetFk: foreignKey({
265
+ columns: [t.orgId, t.assetId],
266
+ foreignColumns: [assets.orgId, assets.id]
267
+ }),
268
+ eventAssetUq: unique().on(t.orgId, t.eventId, t.assetId),
269
+ assetIdx: index("event_assets_asset_idx").on(t.orgId, t.assetId)
270
+ }));
204
271
  const communities = pgTable("communities", {
205
272
  orgId: text("org_id").notNull().references(() => organizations.id),
206
273
  id: text("id").notNull().$defaultFn(() => genId("community")),
@@ -251,6 +318,9 @@ const spaces = pgTable("spaces", {
251
318
  reactions: true,
252
319
  requireReview: false
253
320
  }),
321
+ coverAssetId: text("cover_asset_id"),
322
+ backgroundAssetId: text("background_asset_id"),
323
+ iconAssetId: text("icon_asset_id"),
254
324
  createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow(),
255
325
  updatedAt: timestamp("updated_at", { withTimezone: true }).notNull().defaultNow().$onUpdate(() => /* @__PURE__ */ new Date())
256
326
  }, (t) => ({
@@ -261,7 +331,22 @@ const spaces = pgTable("spaces", {
261
331
  foreignColumns: [communities.orgId, communities.id]
262
332
  }).onDelete("cascade"),
263
333
  capacityCk: check("spaces_capacity_check", sql`${t.capacity} is null or ${t.accessRule} <> 'all_members'`),
264
- orderIdx: index("spaces_order_idx").on(t.orgId, t.communityId, t.seq)
334
+ orderIdx: index("spaces_order_idx").on(t.orgId, t.communityId, t.seq),
335
+ coverAssetFk: foreignKey({
336
+ columns: [t.orgId, t.coverAssetId],
337
+ foreignColumns: [assets.orgId, assets.id]
338
+ }),
339
+ backgroundAssetFk: foreignKey({
340
+ columns: [t.orgId, t.backgroundAssetId],
341
+ foreignColumns: [assets.orgId, assets.id]
342
+ }),
343
+ iconAssetFk: foreignKey({
344
+ columns: [t.orgId, t.iconAssetId],
345
+ foreignColumns: [assets.orgId, assets.id]
346
+ }),
347
+ coverIdx: index("spaces_cover_idx").on(t.orgId, t.coverAssetId),
348
+ backgroundIdx: index("spaces_background_idx").on(t.orgId, t.backgroundAssetId),
349
+ iconIdx: index("spaces_icon_idx").on(t.orgId, t.iconAssetId)
265
350
  }));
266
351
  const spaceTopics = pgTable("space_topics", {
267
352
  orgId: text("org_id").notNull().references(() => organizations.id),
@@ -302,6 +387,6 @@ const spaceLinks = pgTable("space_links", {
302
387
  contentIdx: index("space_links_content_idx").on(t.orgId, t.contentId)
303
388
  }));
304
389
  //#endregion
305
- export { activities, activityAssets, bundleItems, bundles, communities, contentItems, courses, downloadAssets, downloads, modules, spaceLinks, spaceTopics, spaces };
390
+ export { activities, activityAssets, bundleItems, bundles, communities, contentItems, courses, downloadAssets, downloads, eventAssets, events, modules, spaceLinks, spaceTopics, spaces };
306
391
 
307
392
  //# sourceMappingURL=content.js.map