@chatman-media/storage 1.4.1 → 1.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.
package/dist/index.js CHANGED
@@ -70,13 +70,15 @@ __export(exports_schema, {
70
70
  auditLog: () => auditLog,
71
71
  appSettings: () => appSettings,
72
72
  admins: () => admins,
73
+ adminNotifications: () => adminNotifications,
73
74
  adminInvites: () => adminInvites,
74
75
  STAGE_TYPES: () => STAGE_TYPES,
76
+ STAGE_PHASES: () => STAGE_PHASES,
75
77
  STAGE_KINDS: () => STAGE_KINDS,
76
78
  FIELD_TYPES: () => FIELD_TYPES
77
79
  });
78
80
 
79
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/entity.js
81
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/entity.js
80
82
  var entityKind = Symbol.for("drizzle:entityKind");
81
83
  var hasOwnEntityKind = Symbol.for("drizzle:hasOwnEntityKind");
82
84
  function is(value, type) {
@@ -101,7 +103,7 @@ function is(value, type) {
101
103
  return false;
102
104
  }
103
105
 
104
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/column.js
106
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/column.js
105
107
  class Column {
106
108
  constructor(table, config) {
107
109
  this.table = table;
@@ -151,7 +153,7 @@ class Column {
151
153
  }
152
154
  }
153
155
 
154
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/column-builder.js
156
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/column-builder.js
155
157
  class ColumnBuilder {
156
158
  static [entityKind] = "ColumnBuilder";
157
159
  config;
@@ -207,10 +209,10 @@ class ColumnBuilder {
207
209
  }
208
210
  }
209
211
 
210
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/table.utils.js
212
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/table.utils.js
211
213
  var TableName = Symbol.for("drizzle:Name");
212
214
 
213
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/foreign-keys.js
215
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/foreign-keys.js
214
216
  class ForeignKeyBuilder {
215
217
  static [entityKind] = "PgForeignKeyBuilder";
216
218
  reference;
@@ -264,17 +266,17 @@ class ForeignKey {
264
266
  }
265
267
  }
266
268
 
267
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/tracing-utils.js
269
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/tracing-utils.js
268
270
  function iife(fn, ...args) {
269
271
  return fn(...args);
270
272
  }
271
273
 
272
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/unique-constraint.js
274
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/unique-constraint.js
273
275
  function uniqueKeyName(table, columns) {
274
276
  return `${table[TableName]}_${columns.join("_")}_unique`;
275
277
  }
276
278
 
277
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/utils/array.js
279
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/utils/array.js
278
280
  function parsePgArrayValue(arrayString, startFrom, inQuotes) {
279
281
  for (let i = startFrom;i < arrayString.length; i++) {
280
282
  const char = arrayString[i];
@@ -350,7 +352,7 @@ function makePgArray(array) {
350
352
  }).join(",")}}`;
351
353
  }
352
354
 
353
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/common.js
355
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/common.js
354
356
  class PgColumnBuilder extends ColumnBuilder {
355
357
  foreignKeyConfigs = [];
356
358
  static [entityKind] = "PgColumnBuilder";
@@ -498,7 +500,19 @@ class PgArray extends PgColumn {
498
500
  }
499
501
  }
500
502
 
501
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/enum.js
503
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/enum.js
504
+ class PgEnumObjectColumn extends PgColumn {
505
+ static [entityKind] = "PgEnumObjectColumn";
506
+ enum;
507
+ enumValues = this.config.enum.enumValues;
508
+ constructor(table, config) {
509
+ super(table, config);
510
+ this.enum = config.enum;
511
+ }
512
+ getSQLType() {
513
+ return this.enum.enumName;
514
+ }
515
+ }
502
516
  var isPgEnumSym = Symbol.for("drizzle:isPgEnum");
503
517
  function isPgEnum(obj) {
504
518
  return !!obj && typeof obj === "function" && isPgEnumSym in obj && obj[isPgEnumSym] === true;
@@ -516,24 +530,25 @@ class PgEnumColumn extends PgColumn {
516
530
  }
517
531
  }
518
532
 
519
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/subquery.js
533
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/subquery.js
520
534
  class Subquery {
521
535
  static [entityKind] = "Subquery";
522
- constructor(sql, selection, alias, isWith = false) {
536
+ constructor(sql, fields, alias, isWith = false, usedTables = []) {
523
537
  this._ = {
524
538
  brand: "Subquery",
525
539
  sql,
526
- selectedFields: selection,
540
+ selectedFields: fields,
527
541
  alias,
528
- isWith
542
+ isWith,
543
+ usedTables
529
544
  };
530
545
  }
531
546
  }
532
547
 
533
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/version.js
534
- var version = "0.36.4";
548
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/version.js
549
+ var version = "0.45.2";
535
550
 
536
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/tracing.js
551
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/tracing.js
537
552
  var otel;
538
553
  var rawTracer;
539
554
  var tracer = {
@@ -560,10 +575,10 @@ var tracer = {
560
575
  }
561
576
  };
562
577
 
563
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/view-common.js
578
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/view-common.js
564
579
  var ViewBaseConfig = Symbol.for("drizzle:ViewBaseConfig");
565
580
 
566
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/table.js
581
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/table.js
567
582
  var Schema = Symbol.for("drizzle:Schema");
568
583
  var Columns = Symbol.for("drizzle:Columns");
569
584
  var ExtraConfigColumns = Symbol.for("drizzle:ExtraConfigColumns");
@@ -601,7 +616,7 @@ class Table {
601
616
  }
602
617
  }
603
618
 
604
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/sql/sql.js
619
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/sql/sql.js
605
620
  function isSQLWrapper(value) {
606
621
  return value !== null && value !== undefined && typeof value.getSQL === "function";
607
622
  }
@@ -634,10 +649,17 @@ class StringChunk {
634
649
  class SQL {
635
650
  constructor(queryChunks) {
636
651
  this.queryChunks = queryChunks;
652
+ for (const chunk of queryChunks) {
653
+ if (is(chunk, Table)) {
654
+ const schemaName = chunk[Table.Symbol.Schema];
655
+ this.usedTables.push(schemaName === undefined ? chunk[Table.Symbol.Name] : schemaName + "." + chunk[Table.Symbol.Name]);
656
+ }
657
+ }
637
658
  }
638
659
  static [entityKind] = "SQL";
639
660
  decoder = noopDecoder;
640
661
  shouldInlineParams = false;
662
+ usedTables = [];
641
663
  append(query) {
642
664
  this.queryChunks.push(...query.queryChunks);
643
665
  return this;
@@ -696,7 +718,7 @@ class SQL {
696
718
  const schemaName = chunk[Table.Symbol.Schema];
697
719
  const tableName = chunk[Table.Symbol.Name];
698
720
  return {
699
- sql: schemaName === undefined ? escapeName(tableName) : escapeName(schemaName) + "." + escapeName(tableName),
721
+ sql: schemaName === undefined || chunk[IsAlias] ? escapeName(tableName) : escapeName(schemaName) + "." + escapeName(tableName),
700
722
  params: []
701
723
  };
702
724
  }
@@ -715,7 +737,7 @@ class SQL {
715
737
  const schemaName = chunk[ViewBaseConfig].schema;
716
738
  const viewName = chunk[ViewBaseConfig].name;
717
739
  return {
718
- sql: schemaName === undefined ? escapeName(viewName) : escapeName(schemaName) + "." + escapeName(viewName),
740
+ sql: schemaName === undefined || chunk[ViewBaseConfig].isAlias ? escapeName(viewName) : escapeName(schemaName) + "." + escapeName(viewName),
719
741
  params: []
720
742
  };
721
743
  }
@@ -923,9 +945,12 @@ class Placeholder {
923
945
  return new SQL([this]);
924
946
  }
925
947
  }
948
+ var IsDrizzleView = Symbol.for("drizzle:IsDrizzleView");
949
+
926
950
  class View {
927
951
  static [entityKind] = "View";
928
952
  [ViewBaseConfig];
953
+ [IsDrizzleView] = true;
929
954
  constructor({ name: name2, schema, selectedFields, query }) {
930
955
  this[ViewBaseConfig] = {
931
956
  name: name2,
@@ -951,15 +976,16 @@ Subquery.prototype.getSQL = function() {
951
976
  return new SQL([this]);
952
977
  };
953
978
 
954
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/utils.js
979
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/utils.js
955
980
  function getColumnNameAndConfig(a, b) {
956
981
  return {
957
982
  name: typeof a === "string" && a.length > 0 ? a : "",
958
983
  config: typeof a === "object" ? a : b
959
984
  };
960
985
  }
986
+ var textDecoder = typeof TextDecoder === "undefined" ? null : new TextDecoder;
961
987
 
962
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/int.common.js
988
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/int.common.js
963
989
  class PgIntColumnBaseBuilder extends PgColumnBuilder {
964
990
  static [entityKind] = "PgIntColumnBaseBuilder";
965
991
  generatedAlwaysAsIdentity(sequence) {
@@ -998,7 +1024,7 @@ class PgIntColumnBaseBuilder extends PgColumnBuilder {
998
1024
  }
999
1025
  }
1000
1026
 
1001
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/bigint.js
1027
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/bigint.js
1002
1028
  class PgBigInt53Builder extends PgIntColumnBaseBuilder {
1003
1029
  static [entityKind] = "PgBigInt53Builder";
1004
1030
  constructor(name) {
@@ -1049,7 +1075,7 @@ function bigint(a, b) {
1049
1075
  return new PgBigInt64Builder(name);
1050
1076
  }
1051
1077
 
1052
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/bigserial.js
1078
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/bigserial.js
1053
1079
  class PgBigSerial53Builder extends PgColumnBuilder {
1054
1080
  static [entityKind] = "PgBigSerial53Builder";
1055
1081
  constructor(name) {
@@ -1103,7 +1129,7 @@ function bigserial(a, b) {
1103
1129
  return new PgBigSerial64Builder(name);
1104
1130
  }
1105
1131
 
1106
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/boolean.js
1132
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/boolean.js
1107
1133
  class PgBooleanBuilder extends PgColumnBuilder {
1108
1134
  static [entityKind] = "PgBooleanBuilder";
1109
1135
  constructor(name) {
@@ -1124,7 +1150,7 @@ function boolean(name) {
1124
1150
  return new PgBooleanBuilder(name ?? "");
1125
1151
  }
1126
1152
 
1127
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/char.js
1153
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/char.js
1128
1154
  class PgCharBuilder extends PgColumnBuilder {
1129
1155
  static [entityKind] = "PgCharBuilder";
1130
1156
  constructor(name, config) {
@@ -1150,7 +1176,7 @@ function char(a, b = {}) {
1150
1176
  return new PgCharBuilder(name, config);
1151
1177
  }
1152
1178
 
1153
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/cidr.js
1179
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/cidr.js
1154
1180
  class PgCidrBuilder extends PgColumnBuilder {
1155
1181
  static [entityKind] = "PgCidrBuilder";
1156
1182
  constructor(name) {
@@ -1171,7 +1197,7 @@ function cidr(name) {
1171
1197
  return new PgCidrBuilder(name ?? "");
1172
1198
  }
1173
1199
 
1174
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/custom.js
1200
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/custom.js
1175
1201
  class PgCustomColumnBuilder extends PgColumnBuilder {
1176
1202
  static [entityKind] = "PgCustomColumnBuilder";
1177
1203
  constructor(name, fieldConfig, customTypeParams) {
@@ -1212,7 +1238,7 @@ function customType(customTypeParams) {
1212
1238
  };
1213
1239
  }
1214
1240
 
1215
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/date.common.js
1241
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/date.common.js
1216
1242
  class PgDateColumnBaseBuilder extends PgColumnBuilder {
1217
1243
  static [entityKind] = "PgDateColumnBaseBuilder";
1218
1244
  defaultNow() {
@@ -1220,7 +1246,7 @@ class PgDateColumnBaseBuilder extends PgColumnBuilder {
1220
1246
  }
1221
1247
  }
1222
1248
 
1223
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/date.js
1249
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/date.js
1224
1250
  class PgDateBuilder extends PgDateColumnBaseBuilder {
1225
1251
  static [entityKind] = "PgDateBuilder";
1226
1252
  constructor(name) {
@@ -1237,7 +1263,9 @@ class PgDate extends PgColumn {
1237
1263
  return "date";
1238
1264
  }
1239
1265
  mapFromDriverValue(value) {
1240
- return new Date(value);
1266
+ if (typeof value === "string")
1267
+ return new Date(value);
1268
+ return value;
1241
1269
  }
1242
1270
  mapToDriverValue(value) {
1243
1271
  return value.toISOString();
@@ -1259,6 +1287,11 @@ class PgDateString extends PgColumn {
1259
1287
  getSQLType() {
1260
1288
  return "date";
1261
1289
  }
1290
+ mapFromDriverValue(value) {
1291
+ if (typeof value === "string")
1292
+ return value;
1293
+ return value.toISOString().slice(0, -14);
1294
+ }
1262
1295
  }
1263
1296
  function date(a, b) {
1264
1297
  const { name, config } = getColumnNameAndConfig(a, b);
@@ -1268,7 +1301,7 @@ function date(a, b) {
1268
1301
  return new PgDateStringBuilder(name);
1269
1302
  }
1270
1303
 
1271
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/double-precision.js
1304
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/double-precision.js
1272
1305
  class PgDoublePrecisionBuilder extends PgColumnBuilder {
1273
1306
  static [entityKind] = "PgDoublePrecisionBuilder";
1274
1307
  constructor(name) {
@@ -1295,7 +1328,7 @@ function doublePrecision(name) {
1295
1328
  return new PgDoublePrecisionBuilder(name ?? "");
1296
1329
  }
1297
1330
 
1298
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/inet.js
1331
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/inet.js
1299
1332
  class PgInetBuilder extends PgColumnBuilder {
1300
1333
  static [entityKind] = "PgInetBuilder";
1301
1334
  constructor(name) {
@@ -1316,7 +1349,7 @@ function inet(name) {
1316
1349
  return new PgInetBuilder(name ?? "");
1317
1350
  }
1318
1351
 
1319
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/integer.js
1352
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/integer.js
1320
1353
  class PgIntegerBuilder extends PgIntColumnBaseBuilder {
1321
1354
  static [entityKind] = "PgIntegerBuilder";
1322
1355
  constructor(name) {
@@ -1343,7 +1376,7 @@ function integer(name) {
1343
1376
  return new PgIntegerBuilder(name ?? "");
1344
1377
  }
1345
1378
 
1346
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/interval.js
1379
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/interval.js
1347
1380
  class PgIntervalBuilder extends PgColumnBuilder {
1348
1381
  static [entityKind] = "PgIntervalBuilder";
1349
1382
  constructor(name, intervalConfig) {
@@ -1370,7 +1403,7 @@ function interval(a, b = {}) {
1370
1403
  return new PgIntervalBuilder(name, config);
1371
1404
  }
1372
1405
 
1373
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/json.js
1406
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/json.js
1374
1407
  class PgJsonBuilder extends PgColumnBuilder {
1375
1408
  static [entityKind] = "PgJsonBuilder";
1376
1409
  constructor(name) {
@@ -1407,7 +1440,7 @@ function json(name) {
1407
1440
  return new PgJsonBuilder(name ?? "");
1408
1441
  }
1409
1442
 
1410
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/jsonb.js
1443
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/jsonb.js
1411
1444
  class PgJsonbBuilder extends PgColumnBuilder {
1412
1445
  static [entityKind] = "PgJsonbBuilder";
1413
1446
  constructor(name) {
@@ -1444,7 +1477,7 @@ function jsonb(name) {
1444
1477
  return new PgJsonbBuilder(name ?? "");
1445
1478
  }
1446
1479
 
1447
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/line.js
1480
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/line.js
1448
1481
  class PgLineBuilder extends PgColumnBuilder {
1449
1482
  static [entityKind] = "PgLineBuilder";
1450
1483
  constructor(name) {
@@ -1500,7 +1533,7 @@ function line(a, b) {
1500
1533
  return new PgLineABCBuilder(name);
1501
1534
  }
1502
1535
 
1503
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/macaddr.js
1536
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/macaddr.js
1504
1537
  class PgMacaddrBuilder extends PgColumnBuilder {
1505
1538
  static [entityKind] = "PgMacaddrBuilder";
1506
1539
  constructor(name) {
@@ -1521,7 +1554,7 @@ function macaddr(name) {
1521
1554
  return new PgMacaddrBuilder(name ?? "");
1522
1555
  }
1523
1556
 
1524
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/macaddr8.js
1557
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/macaddr8.js
1525
1558
  class PgMacaddr8Builder extends PgColumnBuilder {
1526
1559
  static [entityKind] = "PgMacaddr8Builder";
1527
1560
  constructor(name) {
@@ -1542,7 +1575,7 @@ function macaddr8(name) {
1542
1575
  return new PgMacaddr8Builder(name ?? "");
1543
1576
  }
1544
1577
 
1545
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/numeric.js
1578
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/numeric.js
1546
1579
  class PgNumericBuilder extends PgColumnBuilder {
1547
1580
  static [entityKind] = "PgNumericBuilder";
1548
1581
  constructor(name, precision, scale) {
@@ -1564,6 +1597,83 @@ class PgNumeric extends PgColumn {
1564
1597
  this.precision = config.precision;
1565
1598
  this.scale = config.scale;
1566
1599
  }
1600
+ mapFromDriverValue(value) {
1601
+ if (typeof value === "string")
1602
+ return value;
1603
+ return String(value);
1604
+ }
1605
+ getSQLType() {
1606
+ if (this.precision !== undefined && this.scale !== undefined) {
1607
+ return `numeric(${this.precision}, ${this.scale})`;
1608
+ } else if (this.precision === undefined) {
1609
+ return "numeric";
1610
+ } else {
1611
+ return `numeric(${this.precision})`;
1612
+ }
1613
+ }
1614
+ }
1615
+
1616
+ class PgNumericNumberBuilder extends PgColumnBuilder {
1617
+ static [entityKind] = "PgNumericNumberBuilder";
1618
+ constructor(name, precision, scale) {
1619
+ super(name, "number", "PgNumericNumber");
1620
+ this.config.precision = precision;
1621
+ this.config.scale = scale;
1622
+ }
1623
+ build(table) {
1624
+ return new PgNumericNumber(table, this.config);
1625
+ }
1626
+ }
1627
+
1628
+ class PgNumericNumber extends PgColumn {
1629
+ static [entityKind] = "PgNumericNumber";
1630
+ precision;
1631
+ scale;
1632
+ constructor(table, config) {
1633
+ super(table, config);
1634
+ this.precision = config.precision;
1635
+ this.scale = config.scale;
1636
+ }
1637
+ mapFromDriverValue(value) {
1638
+ if (typeof value === "number")
1639
+ return value;
1640
+ return Number(value);
1641
+ }
1642
+ mapToDriverValue = String;
1643
+ getSQLType() {
1644
+ if (this.precision !== undefined && this.scale !== undefined) {
1645
+ return `numeric(${this.precision}, ${this.scale})`;
1646
+ } else if (this.precision === undefined) {
1647
+ return "numeric";
1648
+ } else {
1649
+ return `numeric(${this.precision})`;
1650
+ }
1651
+ }
1652
+ }
1653
+
1654
+ class PgNumericBigIntBuilder extends PgColumnBuilder {
1655
+ static [entityKind] = "PgNumericBigIntBuilder";
1656
+ constructor(name, precision, scale) {
1657
+ super(name, "bigint", "PgNumericBigInt");
1658
+ this.config.precision = precision;
1659
+ this.config.scale = scale;
1660
+ }
1661
+ build(table) {
1662
+ return new PgNumericBigInt(table, this.config);
1663
+ }
1664
+ }
1665
+
1666
+ class PgNumericBigInt extends PgColumn {
1667
+ static [entityKind] = "PgNumericBigInt";
1668
+ precision;
1669
+ scale;
1670
+ constructor(table, config) {
1671
+ super(table, config);
1672
+ this.precision = config.precision;
1673
+ this.scale = config.scale;
1674
+ }
1675
+ mapFromDriverValue = BigInt;
1676
+ mapToDriverValue = String;
1567
1677
  getSQLType() {
1568
1678
  if (this.precision !== undefined && this.scale !== undefined) {
1569
1679
  return `numeric(${this.precision}, ${this.scale})`;
@@ -1576,10 +1686,11 @@ class PgNumeric extends PgColumn {
1576
1686
  }
1577
1687
  function numeric(a, b) {
1578
1688
  const { name, config } = getColumnNameAndConfig(a, b);
1579
- return new PgNumericBuilder(name, config?.precision, config?.scale);
1689
+ const mode = config?.mode;
1690
+ return mode === "number" ? new PgNumericNumberBuilder(name, config?.precision, config?.scale) : mode === "bigint" ? new PgNumericBigIntBuilder(name, config?.precision, config?.scale) : new PgNumericBuilder(name, config?.precision, config?.scale);
1580
1691
  }
1581
1692
 
1582
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/point.js
1693
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/point.js
1583
1694
  class PgPointTupleBuilder extends PgColumnBuilder {
1584
1695
  static [entityKind] = "PgPointTupleBuilder";
1585
1696
  constructor(name) {
@@ -1641,7 +1752,7 @@ function point(a, b) {
1641
1752
  return new PgPointObjectBuilder(name);
1642
1753
  }
1643
1754
 
1644
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/postgis_extension/utils.js
1755
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/postgis_extension/utils.js
1645
1756
  function hexToBytes(hex) {
1646
1757
  const bytes = [];
1647
1758
  for (let c = 0;c < hex.length; c += 2) {
@@ -1680,7 +1791,7 @@ function parseEWKB(hex) {
1680
1791
  throw new Error("Unsupported geometry type");
1681
1792
  }
1682
1793
 
1683
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/postgis_extension/geometry.js
1794
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/postgis_extension/geometry.js
1684
1795
  class PgGeometryBuilder extends PgColumnBuilder {
1685
1796
  static [entityKind] = "PgGeometryBuilder";
1686
1797
  constructor(name) {
@@ -1735,7 +1846,7 @@ function geometry(a, b) {
1735
1846
  return new PgGeometryObjectBuilder(name);
1736
1847
  }
1737
1848
 
1738
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/real.js
1849
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/real.js
1739
1850
  class PgRealBuilder extends PgColumnBuilder {
1740
1851
  static [entityKind] = "PgRealBuilder";
1741
1852
  constructor(name, length) {
@@ -1766,7 +1877,7 @@ function real(name) {
1766
1877
  return new PgRealBuilder(name ?? "");
1767
1878
  }
1768
1879
 
1769
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/serial.js
1880
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/serial.js
1770
1881
  class PgSerialBuilder extends PgColumnBuilder {
1771
1882
  static [entityKind] = "PgSerialBuilder";
1772
1883
  constructor(name) {
@@ -1789,7 +1900,7 @@ function serial(name) {
1789
1900
  return new PgSerialBuilder(name ?? "");
1790
1901
  }
1791
1902
 
1792
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/smallint.js
1903
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/smallint.js
1793
1904
  class PgSmallIntBuilder extends PgIntColumnBaseBuilder {
1794
1905
  static [entityKind] = "PgSmallIntBuilder";
1795
1906
  constructor(name) {
@@ -1816,7 +1927,7 @@ function smallint(name) {
1816
1927
  return new PgSmallIntBuilder(name ?? "");
1817
1928
  }
1818
1929
 
1819
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/smallserial.js
1930
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/smallserial.js
1820
1931
  class PgSmallSerialBuilder extends PgColumnBuilder {
1821
1932
  static [entityKind] = "PgSmallSerialBuilder";
1822
1933
  constructor(name) {
@@ -1839,7 +1950,7 @@ function smallserial(name) {
1839
1950
  return new PgSmallSerialBuilder(name ?? "");
1840
1951
  }
1841
1952
 
1842
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/text.js
1953
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/text.js
1843
1954
  class PgTextBuilder extends PgColumnBuilder {
1844
1955
  static [entityKind] = "PgTextBuilder";
1845
1956
  constructor(name, config) {
@@ -1863,7 +1974,7 @@ function text(a, b = {}) {
1863
1974
  return new PgTextBuilder(name, config);
1864
1975
  }
1865
1976
 
1866
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/time.js
1977
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/time.js
1867
1978
  class PgTimeBuilder extends PgDateColumnBaseBuilder {
1868
1979
  constructor(name, withTimezone, precision) {
1869
1980
  super(name, "string", "PgTime");
@@ -1897,7 +2008,7 @@ function time(a, b = {}) {
1897
2008
  return new PgTimeBuilder(name, config.withTimezone ?? false, config.precision);
1898
2009
  }
1899
2010
 
1900
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/timestamp.js
2011
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/timestamp.js
1901
2012
  class PgTimestampBuilder extends PgDateColumnBaseBuilder {
1902
2013
  static [entityKind] = "PgTimestampBuilder";
1903
2014
  constructor(name, withTimezone, precision) {
@@ -1923,9 +2034,11 @@ class PgTimestamp extends PgColumn {
1923
2034
  const precision = this.precision === undefined ? "" : ` (${this.precision})`;
1924
2035
  return `timestamp${precision}${this.withTimezone ? " with time zone" : ""}`;
1925
2036
  }
1926
- mapFromDriverValue = (value) => {
1927
- return new Date(this.withTimezone ? value : value + "+0000");
1928
- };
2037
+ mapFromDriverValue(value) {
2038
+ if (typeof value === "string")
2039
+ return new Date(this.withTimezone ? value : value + "+0000");
2040
+ return value;
2041
+ }
1929
2042
  mapToDriverValue = (value) => {
1930
2043
  return value.toISOString();
1931
2044
  };
@@ -1956,6 +2069,17 @@ class PgTimestampString extends PgColumn {
1956
2069
  const precision = this.precision === undefined ? "" : `(${this.precision})`;
1957
2070
  return `timestamp${precision}${this.withTimezone ? " with time zone" : ""}`;
1958
2071
  }
2072
+ mapFromDriverValue(value) {
2073
+ if (typeof value === "string")
2074
+ return value;
2075
+ const shortened = value.toISOString().slice(0, -1).replace("T", " ");
2076
+ if (this.withTimezone) {
2077
+ const offset = value.getTimezoneOffset();
2078
+ const sign = offset <= 0 ? "+" : "-";
2079
+ return `${shortened}${sign}${Math.floor(Math.abs(offset) / 60).toString().padStart(2, "0")}`;
2080
+ }
2081
+ return shortened;
2082
+ }
1959
2083
  }
1960
2084
  function timestamp(a, b = {}) {
1961
2085
  const { name, config } = getColumnNameAndConfig(a, b);
@@ -1965,7 +2089,7 @@ function timestamp(a, b = {}) {
1965
2089
  return new PgTimestampBuilder(name, config?.withTimezone ?? false, config?.precision);
1966
2090
  }
1967
2091
 
1968
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/uuid.js
2092
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/uuid.js
1969
2093
  class PgUUIDBuilder extends PgColumnBuilder {
1970
2094
  static [entityKind] = "PgUUIDBuilder";
1971
2095
  constructor(name) {
@@ -1989,7 +2113,7 @@ function uuid(name) {
1989
2113
  return new PgUUIDBuilder(name ?? "");
1990
2114
  }
1991
2115
 
1992
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/varchar.js
2116
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/varchar.js
1993
2117
  class PgVarcharBuilder extends PgColumnBuilder {
1994
2118
  static [entityKind] = "PgVarcharBuilder";
1995
2119
  constructor(name, config) {
@@ -2015,7 +2139,7 @@ function varchar(a, b = {}) {
2015
2139
  return new PgVarcharBuilder(name, config);
2016
2140
  }
2017
2141
 
2018
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/vector_extension/bit.js
2142
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/vector_extension/bit.js
2019
2143
  class PgBinaryVectorBuilder extends PgColumnBuilder {
2020
2144
  static [entityKind] = "PgBinaryVectorBuilder";
2021
2145
  constructor(name, config) {
@@ -2039,7 +2163,7 @@ function bit(a, b) {
2039
2163
  return new PgBinaryVectorBuilder(name, config);
2040
2164
  }
2041
2165
 
2042
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/vector_extension/halfvec.js
2166
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/vector_extension/halfvec.js
2043
2167
  class PgHalfVectorBuilder extends PgColumnBuilder {
2044
2168
  static [entityKind] = "PgHalfVectorBuilder";
2045
2169
  constructor(name, config) {
@@ -2069,7 +2193,7 @@ function halfvec(a, b) {
2069
2193
  return new PgHalfVectorBuilder(name, config);
2070
2194
  }
2071
2195
 
2072
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/vector_extension/sparsevec.js
2196
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/vector_extension/sparsevec.js
2073
2197
  class PgSparseVectorBuilder extends PgColumnBuilder {
2074
2198
  static [entityKind] = "PgSparseVectorBuilder";
2075
2199
  constructor(name, config) {
@@ -2093,7 +2217,7 @@ function sparsevec(a, b) {
2093
2217
  return new PgSparseVectorBuilder(name, config);
2094
2218
  }
2095
2219
 
2096
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/vector_extension/vector.js
2220
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/vector_extension/vector.js
2097
2221
  class PgVectorBuilder extends PgColumnBuilder {
2098
2222
  static [entityKind] = "PgVectorBuilder";
2099
2223
  constructor(name, config) {
@@ -2123,7 +2247,7 @@ function vector(a, b) {
2123
2247
  return new PgVectorBuilder(name, config);
2124
2248
  }
2125
2249
 
2126
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/columns/all.js
2250
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/columns/all.js
2127
2251
  function getPgColumnBuilders() {
2128
2252
  return {
2129
2253
  bigint,
@@ -2161,7 +2285,7 @@ function getPgColumnBuilders() {
2161
2285
  };
2162
2286
  }
2163
2287
 
2164
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/table.js
2288
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/table.js
2165
2289
  var InlineForeignKeys = Symbol.for("drizzle:PgInlineForeignKeys");
2166
2290
  var EnableRLS = Symbol.for("drizzle:EnableRLS");
2167
2291
 
@@ -2174,6 +2298,7 @@ class PgTable extends Table {
2174
2298
  [InlineForeignKeys] = [];
2175
2299
  [EnableRLS] = false;
2176
2300
  [Table.Symbol.ExtraConfigBuilder] = undefined;
2301
+ [Table.Symbol.ExtraConfigColumns] = {};
2177
2302
  }
2178
2303
  function pgTableWithSchema(name, columns, extraConfig, schema, baseName = name) {
2179
2304
  const rawTable = new PgTable(name, schema, baseName);
@@ -2208,7 +2333,7 @@ var pgTable = (name, columns, extraConfig) => {
2208
2333
  return pgTableWithSchema(name, columns, extraConfig, undefined);
2209
2334
  };
2210
2335
 
2211
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/primary-keys.js
2336
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/primary-keys.js
2212
2337
  function primaryKey(...config) {
2213
2338
  if (config[0].columns) {
2214
2339
  return new PrimaryKeyBuilder(config[0].columns, config[0].name);
@@ -2243,7 +2368,7 @@ class PrimaryKey {
2243
2368
  }
2244
2369
  }
2245
2370
 
2246
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/checks.js
2371
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/checks.js
2247
2372
  class CheckBuilder {
2248
2373
  constructor(name, value) {
2249
2374
  this.name = name;
@@ -2270,7 +2395,7 @@ function check(name, value) {
2270
2395
  return new CheckBuilder(name, value);
2271
2396
  }
2272
2397
 
2273
- // ../../node_modules/.bun/drizzle-orm@0.36.4+841b2de31fc30bc8/node_modules/drizzle-orm/pg-core/indexes.js
2398
+ // ../../node_modules/.bun/drizzle-orm@0.45.2+2b5b916458ad14b9/node_modules/drizzle-orm/pg-core/indexes.js
2274
2399
  class IndexBuilderOn {
2275
2400
  constructor(unique, name) {
2276
2401
  this.unique = unique;
@@ -2489,6 +2614,7 @@ var admins = pgTable("admins", {
2489
2614
  tenantId: integer("tenant_id").notNull().default(1).references(() => tenants.id, { onDelete: "cascade" }),
2490
2615
  email: text("email").notNull().unique(),
2491
2616
  passwordHash: text("password_hash").notNull(),
2617
+ name: text("name"),
2492
2618
  role: text("role").notNull().default("superadmin"),
2493
2619
  createdAt: integer("created_at").notNull().default(epochNow())
2494
2620
  });
@@ -2575,6 +2701,12 @@ var STAGE_KINDS = [
2575
2701
  "terminal_won",
2576
2702
  "terminal_lost"
2577
2703
  ];
2704
+ var STAGE_PHASES = [
2705
+ "qualify",
2706
+ "offer",
2707
+ "clear",
2708
+ "fulfill"
2709
+ ];
2578
2710
  var FIELD_TYPES = [
2579
2711
  "text",
2580
2712
  "textarea",
@@ -2599,6 +2731,7 @@ var stageDefinitions = pgTable("stage_definitions", {
2599
2731
  position: integer("position").notNull().default(0),
2600
2732
  kind: text("kind").notNull().default("active"),
2601
2733
  stageType: text("stage_type").notNull().default("form_fill"),
2734
+ phase: text("phase"),
2602
2735
  configJson: text("config_json").notNull().default("{}"),
2603
2736
  nextStages: text("next_stages").array().notNull().default(sql`'{}'`),
2604
2737
  autoAdvanceCondition: text("auto_advance_condition"),
@@ -2612,6 +2745,7 @@ var stageDefinitions = pgTable("stage_definitions", {
2612
2745
  }, (t) => [
2613
2746
  check("stage_definitions_kind_check", sql`${t.kind} IN ('intake','active','terminal_won','terminal_lost')`),
2614
2747
  check("stage_definitions_type_check", sql`${t.stageType} IN ('form_fill','document_upload','document_signature','rate_confirmation','external_approval','payment','waiting','awaiting_operator','interaction','assessment','milestone')`),
2748
+ check("stage_definitions_phase_check", sql`${t.phase} IS NULL OR ${t.phase} IN ('qualify','offer','clear','fulfill')`),
2615
2749
  uniqueIndex("uniq_stage_def_funnel_slug").on(t.funnelId, t.slug),
2616
2750
  index("idx_stage_def_funnel_pos").on(t.funnelId, t.position)
2617
2751
  ]);
@@ -3012,7 +3146,7 @@ var llmProviderConfigs = pgTable("llm_provider_configs", {
3012
3146
  createdAt: integer("created_at").notNull().default(epochNow()),
3013
3147
  updatedAt: integer("updated_at").notNull().default(epochNow())
3014
3148
  }, (t) => [
3015
- check("llm_configs_purpose_check", sql`${t.purpose} IN ('chat','embed','vision','judge','reranker')`),
3149
+ check("llm_configs_purpose_check", sql`${t.purpose} IN ('chat','embed','vision','judge','reranker','transcribe')`),
3016
3150
  check("llm_configs_provider_check", sql`${t.provider} IN ('openai','openrouter','ollama','anthropic','jina','cohere')`),
3017
3151
  uniqueIndex("uniq_llm_configs_tenant_purpose").on(t.tenantId, t.purpose)
3018
3152
  ]);
@@ -3143,11 +3277,41 @@ var operatorSettings = pgTable("operator_settings", {
3143
3277
  linkToken: text("link_token").unique(),
3144
3278
  linkTokenExpiresAt: integer("link_token_expires_at"),
3145
3279
  notifyOnAssignedOnly: boolean("notify_on_assigned_only").notNull().default(true),
3280
+ informerLevel: text("informer_level").notNull().default("important"),
3281
+ informerTopics: text("informer_topics"),
3282
+ informerDigest: text("informer_digest").notNull().default("daily"),
3283
+ informerDigestHour: integer("informer_digest_hour").notNull().default(9),
3284
+ informerTz: text("informer_tz").notNull().default("UTC"),
3285
+ informerMutedUntil: integer("informer_muted_until"),
3286
+ informerLastDigestAt: integer("informer_last_digest_at"),
3146
3287
  updatedAt: integer("updated_at").notNull().default(epochNow())
3147
3288
  }, (t) => [
3148
3289
  uniqueIndex("uniq_op_settings_admin").on(t.adminId),
3149
3290
  index("idx_op_settings_tenant").on(t.tenantId),
3150
- index("idx_op_settings_link_token").on(t.linkToken)
3291
+ index("idx_op_settings_link_token").on(t.linkToken),
3292
+ check("operator_settings_informer_level_check", sql`${t.informerLevel} IN ('silent','critical','important','all')`),
3293
+ check("operator_settings_informer_digest_check", sql`${t.informerDigest} IN ('off','daily','shift')`)
3294
+ ]);
3295
+ var adminNotifications = pgTable("admin_notifications", {
3296
+ id: serial("id").primaryKey(),
3297
+ tenantId: integer("tenant_id").notNull().references(() => tenants.id, { onDelete: "cascade" }),
3298
+ adminId: integer("admin_id").references(() => admins.id, { onDelete: "set null" }),
3299
+ topic: text("topic").notNull(),
3300
+ severity: text("severity").notNull(),
3301
+ kind: text("kind").notNull(),
3302
+ title: text("title").notNull(),
3303
+ body: text("body").notNull().default(""),
3304
+ dedupKey: text("dedup_key").notNull(),
3305
+ targetChatId: text("target_chat_id"),
3306
+ deliveredAt: integer("delivered_at"),
3307
+ digestBatchId: integer("digest_batch_id"),
3308
+ readAt: integer("read_at"),
3309
+ createdAt: integer("created_at").notNull().default(epochNow())
3310
+ }, (t) => [
3311
+ index("idx_admin_notif_tenant_admin_created").on(t.tenantId, t.adminId, t.createdAt),
3312
+ index("idx_admin_notif_dedup").on(t.tenantId, t.dedupKey, t.createdAt),
3313
+ check("admin_notifications_topic_check", sql`${t.topic} IN ('leads','escalation','orders','system')`),
3314
+ check("admin_notifications_severity_check", sql`${t.severity} IN ('critical','important','info')`)
3151
3315
  ]);
3152
3316
  var exchangeRates = pgTable("exchange_rates", {
3153
3317
  id: serial("id").primaryKey(),
@@ -5316,8 +5480,10 @@ export {
5316
5480
  applyAllMigrations,
5317
5481
  appSettings,
5318
5482
  admins,
5483
+ adminNotifications,
5319
5484
  adminInvites,
5320
5485
  STAGE_TYPES,
5486
+ STAGE_PHASES,
5321
5487
  STAGE_KINDS,
5322
5488
  FIELD_TYPES
5323
5489
  };