@remit/drizzle-sqlite-schema 0.0.19 → 0.0.21

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/schema.d.ts CHANGED
@@ -5514,6 +5514,389 @@ export declare const messageReferences: import("drizzle-orm/sqlite-core").SQLite
5514
5514
  };
5515
5515
  dialect: "sqlite";
5516
5516
  }>;
5517
+ export declare const calendarSuggestions: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
5518
+ name: "calendar_suggestion";
5519
+ schema: undefined;
5520
+ columns: {
5521
+ suggestionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5522
+ name: "suggestion_id";
5523
+ tableName: "calendar_suggestion";
5524
+ dataType: "string";
5525
+ columnType: "SQLiteText";
5526
+ data: string;
5527
+ driverParam: string;
5528
+ notNull: true;
5529
+ hasDefault: false;
5530
+ isPrimaryKey: false;
5531
+ isAutoincrement: false;
5532
+ hasRuntimeDefault: false;
5533
+ enumValues: [string, ...string[]];
5534
+ baseColumn: never;
5535
+ identity: undefined;
5536
+ generated: undefined;
5537
+ }, {}, {
5538
+ length: number;
5539
+ }>;
5540
+ accountConfigId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5541
+ name: "account_config_id";
5542
+ tableName: "calendar_suggestion";
5543
+ dataType: "string";
5544
+ columnType: "SQLiteText";
5545
+ data: string;
5546
+ driverParam: string;
5547
+ notNull: true;
5548
+ hasDefault: false;
5549
+ isPrimaryKey: false;
5550
+ isAutoincrement: false;
5551
+ hasRuntimeDefault: false;
5552
+ enumValues: [string, ...string[]];
5553
+ baseColumn: never;
5554
+ identity: undefined;
5555
+ generated: undefined;
5556
+ }, {}, {
5557
+ length: number;
5558
+ }>;
5559
+ messageId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5560
+ name: "message_id";
5561
+ tableName: "calendar_suggestion";
5562
+ dataType: "string";
5563
+ columnType: "SQLiteText";
5564
+ data: string;
5565
+ driverParam: string;
5566
+ notNull: true;
5567
+ hasDefault: false;
5568
+ isPrimaryKey: false;
5569
+ isAutoincrement: false;
5570
+ hasRuntimeDefault: false;
5571
+ enumValues: [string, ...string[]];
5572
+ baseColumn: never;
5573
+ identity: undefined;
5574
+ generated: undefined;
5575
+ }, {}, {
5576
+ length: number;
5577
+ }>;
5578
+ bodyPartId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5579
+ name: "body_part_id";
5580
+ tableName: "calendar_suggestion";
5581
+ dataType: "string";
5582
+ columnType: "SQLiteText";
5583
+ data: string;
5584
+ driverParam: string;
5585
+ notNull: true;
5586
+ hasDefault: false;
5587
+ isPrimaryKey: false;
5588
+ isAutoincrement: false;
5589
+ hasRuntimeDefault: false;
5590
+ enumValues: [string, ...string[]];
5591
+ baseColumn: never;
5592
+ identity: undefined;
5593
+ generated: undefined;
5594
+ }, {}, {
5595
+ length: number;
5596
+ }>;
5597
+ icalUid: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5598
+ name: "ical_uid";
5599
+ tableName: "calendar_suggestion";
5600
+ dataType: "string";
5601
+ columnType: "SQLiteText";
5602
+ data: string;
5603
+ driverParam: string;
5604
+ notNull: true;
5605
+ hasDefault: false;
5606
+ isPrimaryKey: false;
5607
+ isAutoincrement: false;
5608
+ hasRuntimeDefault: false;
5609
+ enumValues: [string, ...string[]];
5610
+ baseColumn: never;
5611
+ identity: undefined;
5612
+ generated: undefined;
5613
+ }, {}, {
5614
+ length: number;
5615
+ }>;
5616
+ sequence: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5617
+ name: "sequence";
5618
+ tableName: "calendar_suggestion";
5619
+ dataType: "number";
5620
+ columnType: "SQLiteInteger";
5621
+ data: number;
5622
+ driverParam: number;
5623
+ notNull: true;
5624
+ hasDefault: true;
5625
+ isPrimaryKey: false;
5626
+ isAutoincrement: false;
5627
+ hasRuntimeDefault: false;
5628
+ enumValues: undefined;
5629
+ baseColumn: never;
5630
+ identity: undefined;
5631
+ generated: undefined;
5632
+ }, {}, {}>;
5633
+ method: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5634
+ name: "method";
5635
+ tableName: "calendar_suggestion";
5636
+ dataType: "string";
5637
+ columnType: "SQLiteText";
5638
+ data: "None" | "Request" | "Reply" | "Cancel" | "Counter" | "Publish";
5639
+ driverParam: string;
5640
+ notNull: true;
5641
+ hasDefault: true;
5642
+ isPrimaryKey: false;
5643
+ isAutoincrement: false;
5644
+ hasRuntimeDefault: false;
5645
+ enumValues: [string, ...string[]];
5646
+ baseColumn: never;
5647
+ identity: undefined;
5648
+ generated: undefined;
5649
+ }, {}, {
5650
+ length: number;
5651
+ $type: "None" | "Request" | "Reply" | "Cancel" | "Counter" | "Publish";
5652
+ }>;
5653
+ source: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5654
+ name: "source";
5655
+ tableName: "calendar_suggestion";
5656
+ dataType: "string";
5657
+ columnType: "SQLiteText";
5658
+ data: "IcalendarPart" | "IcalendarAttachment" | "TextHeuristic";
5659
+ driverParam: string;
5660
+ notNull: true;
5661
+ hasDefault: true;
5662
+ isPrimaryKey: false;
5663
+ isAutoincrement: false;
5664
+ hasRuntimeDefault: false;
5665
+ enumValues: [string, ...string[]];
5666
+ baseColumn: never;
5667
+ identity: undefined;
5668
+ generated: undefined;
5669
+ }, {}, {
5670
+ length: number;
5671
+ $type: "IcalendarPart" | "IcalendarAttachment" | "TextHeuristic";
5672
+ }>;
5673
+ state: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5674
+ name: "state";
5675
+ tableName: "calendar_suggestion";
5676
+ dataType: "string";
5677
+ columnType: "SQLiteText";
5678
+ data: "Pending" | "Tentative" | "Accepted" | "Declined" | "Dismissed" | "Superseded";
5679
+ driverParam: string;
5680
+ notNull: true;
5681
+ hasDefault: true;
5682
+ isPrimaryKey: false;
5683
+ isAutoincrement: false;
5684
+ hasRuntimeDefault: false;
5685
+ enumValues: [string, ...string[]];
5686
+ baseColumn: never;
5687
+ identity: undefined;
5688
+ generated: undefined;
5689
+ }, {}, {
5690
+ length: number;
5691
+ $type: "Pending" | "Tentative" | "Accepted" | "Declined" | "Dismissed" | "Superseded";
5692
+ }>;
5693
+ summary: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5694
+ name: "summary";
5695
+ tableName: "calendar_suggestion";
5696
+ dataType: "string";
5697
+ columnType: "SQLiteText";
5698
+ data: string;
5699
+ driverParam: string;
5700
+ notNull: true;
5701
+ hasDefault: false;
5702
+ isPrimaryKey: false;
5703
+ isAutoincrement: false;
5704
+ hasRuntimeDefault: false;
5705
+ enumValues: [string, ...string[]];
5706
+ baseColumn: never;
5707
+ identity: undefined;
5708
+ generated: undefined;
5709
+ }, {}, {
5710
+ length: number;
5711
+ }>;
5712
+ dtStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5713
+ name: "dt_start";
5714
+ tableName: "calendar_suggestion";
5715
+ dataType: "string";
5716
+ columnType: "SQLiteText";
5717
+ data: string;
5718
+ driverParam: string;
5719
+ notNull: true;
5720
+ hasDefault: false;
5721
+ isPrimaryKey: false;
5722
+ isAutoincrement: false;
5723
+ hasRuntimeDefault: false;
5724
+ enumValues: [string, ...string[]];
5725
+ baseColumn: never;
5726
+ identity: undefined;
5727
+ generated: undefined;
5728
+ }, {}, {
5729
+ length: number;
5730
+ }>;
5731
+ dtEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5732
+ name: "dt_end";
5733
+ tableName: "calendar_suggestion";
5734
+ dataType: "string";
5735
+ columnType: "SQLiteText";
5736
+ data: string;
5737
+ driverParam: string;
5738
+ notNull: true;
5739
+ hasDefault: false;
5740
+ isPrimaryKey: false;
5741
+ isAutoincrement: false;
5742
+ hasRuntimeDefault: false;
5743
+ enumValues: [string, ...string[]];
5744
+ baseColumn: never;
5745
+ identity: undefined;
5746
+ generated: undefined;
5747
+ }, {}, {
5748
+ length: number;
5749
+ }>;
5750
+ allDay: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5751
+ name: "all_day";
5752
+ tableName: "calendar_suggestion";
5753
+ dataType: "boolean";
5754
+ columnType: "SQLiteBoolean";
5755
+ data: boolean;
5756
+ driverParam: number;
5757
+ notNull: true;
5758
+ hasDefault: true;
5759
+ isPrimaryKey: false;
5760
+ isAutoincrement: false;
5761
+ hasRuntimeDefault: false;
5762
+ enumValues: undefined;
5763
+ baseColumn: never;
5764
+ identity: undefined;
5765
+ generated: undefined;
5766
+ }, {}, {}>;
5767
+ location: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5768
+ name: "location";
5769
+ tableName: "calendar_suggestion";
5770
+ dataType: "string";
5771
+ columnType: "SQLiteText";
5772
+ data: string;
5773
+ driverParam: string;
5774
+ notNull: true;
5775
+ hasDefault: true;
5776
+ isPrimaryKey: false;
5777
+ isAutoincrement: false;
5778
+ hasRuntimeDefault: false;
5779
+ enumValues: [string, ...string[]];
5780
+ baseColumn: never;
5781
+ identity: undefined;
5782
+ generated: undefined;
5783
+ }, {}, {
5784
+ length: number;
5785
+ }>;
5786
+ organizer: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5787
+ name: "organizer";
5788
+ tableName: "calendar_suggestion";
5789
+ dataType: "string";
5790
+ columnType: "SQLiteText";
5791
+ data: string;
5792
+ driverParam: string;
5793
+ notNull: true;
5794
+ hasDefault: true;
5795
+ isPrimaryKey: false;
5796
+ isAutoincrement: false;
5797
+ hasRuntimeDefault: false;
5798
+ enumValues: [string, ...string[]];
5799
+ baseColumn: never;
5800
+ identity: undefined;
5801
+ generated: undefined;
5802
+ }, {}, {
5803
+ length: number;
5804
+ }>;
5805
+ zoneCertainty: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5806
+ name: "zone_certainty";
5807
+ tableName: "calendar_suggestion";
5808
+ dataType: "string";
5809
+ columnType: "SQLiteText";
5810
+ data: "Local" | "Explicit" | "Ambiguous";
5811
+ driverParam: string;
5812
+ notNull: true;
5813
+ hasDefault: true;
5814
+ isPrimaryKey: false;
5815
+ isAutoincrement: false;
5816
+ hasRuntimeDefault: false;
5817
+ enumValues: [string, ...string[]];
5818
+ baseColumn: never;
5819
+ identity: undefined;
5820
+ generated: undefined;
5821
+ }, {}, {
5822
+ length: number;
5823
+ $type: "Local" | "Explicit" | "Ambiguous";
5824
+ }>;
5825
+ icalData: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5826
+ name: "ical_data";
5827
+ tableName: "calendar_suggestion";
5828
+ dataType: "string";
5829
+ columnType: "SQLiteText";
5830
+ data: string;
5831
+ driverParam: string;
5832
+ notNull: true;
5833
+ hasDefault: true;
5834
+ isPrimaryKey: false;
5835
+ isAutoincrement: false;
5836
+ hasRuntimeDefault: false;
5837
+ enumValues: [string, ...string[]];
5838
+ baseColumn: never;
5839
+ identity: undefined;
5840
+ generated: undefined;
5841
+ }, {}, {
5842
+ length: number;
5843
+ }>;
5844
+ acceptedCalendarObjectId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5845
+ name: "accepted_calendar_object_id";
5846
+ tableName: "calendar_suggestion";
5847
+ dataType: "string";
5848
+ columnType: "SQLiteText";
5849
+ data: string;
5850
+ driverParam: string;
5851
+ notNull: true;
5852
+ hasDefault: true;
5853
+ isPrimaryKey: false;
5854
+ isAutoincrement: false;
5855
+ hasRuntimeDefault: false;
5856
+ enumValues: [string, ...string[]];
5857
+ baseColumn: never;
5858
+ identity: undefined;
5859
+ generated: undefined;
5860
+ }, {}, {
5861
+ length: number;
5862
+ }>;
5863
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5864
+ name: "created_at";
5865
+ tableName: "calendar_suggestion";
5866
+ dataType: "number";
5867
+ columnType: "SQLiteInteger";
5868
+ data: number;
5869
+ driverParam: number;
5870
+ notNull: true;
5871
+ hasDefault: false;
5872
+ isPrimaryKey: false;
5873
+ isAutoincrement: false;
5874
+ hasRuntimeDefault: false;
5875
+ enumValues: undefined;
5876
+ baseColumn: never;
5877
+ identity: undefined;
5878
+ generated: undefined;
5879
+ }, {}, {}>;
5880
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
5881
+ name: "updated_at";
5882
+ tableName: "calendar_suggestion";
5883
+ dataType: "number";
5884
+ columnType: "SQLiteInteger";
5885
+ data: number;
5886
+ driverParam: number;
5887
+ notNull: true;
5888
+ hasDefault: false;
5889
+ isPrimaryKey: false;
5890
+ isAutoincrement: false;
5891
+ hasRuntimeDefault: false;
5892
+ enumValues: undefined;
5893
+ baseColumn: never;
5894
+ identity: undefined;
5895
+ generated: undefined;
5896
+ }, {}, {}>;
5897
+ };
5898
+ dialect: "sqlite";
5899
+ }>;
5517
5900
  export declare const envelopeAddresses: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
5518
5901
  name: "envelope_address";
5519
5902
  schema: undefined;
@@ -8056,6 +8439,140 @@ export declare const calendarEventIndexes: import("drizzle-orm/sqlite-core").SQL
8056
8439
  };
8057
8440
  dialect: "sqlite";
8058
8441
  }>;
8442
+ export declare const calendarFeedTokens: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
8443
+ name: "calendar_feed_token";
8444
+ schema: undefined;
8445
+ columns: {
8446
+ feedTokenId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
8447
+ name: "feed_token_id";
8448
+ tableName: "calendar_feed_token";
8449
+ dataType: "string";
8450
+ columnType: "SQLiteText";
8451
+ data: string;
8452
+ driverParam: string;
8453
+ notNull: true;
8454
+ hasDefault: false;
8455
+ isPrimaryKey: false;
8456
+ isAutoincrement: false;
8457
+ hasRuntimeDefault: false;
8458
+ enumValues: [string, ...string[]];
8459
+ baseColumn: never;
8460
+ identity: undefined;
8461
+ generated: undefined;
8462
+ }, {}, {
8463
+ length: number;
8464
+ }>;
8465
+ accountConfigId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
8466
+ name: "account_config_id";
8467
+ tableName: "calendar_feed_token";
8468
+ dataType: "string";
8469
+ columnType: "SQLiteText";
8470
+ data: string;
8471
+ driverParam: string;
8472
+ notNull: true;
8473
+ hasDefault: false;
8474
+ isPrimaryKey: false;
8475
+ isAutoincrement: false;
8476
+ hasRuntimeDefault: false;
8477
+ enumValues: [string, ...string[]];
8478
+ baseColumn: never;
8479
+ identity: undefined;
8480
+ generated: undefined;
8481
+ }, {}, {
8482
+ length: number;
8483
+ }>;
8484
+ calendarId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
8485
+ name: "calendar_id";
8486
+ tableName: "calendar_feed_token";
8487
+ dataType: "string";
8488
+ columnType: "SQLiteText";
8489
+ data: string;
8490
+ driverParam: string;
8491
+ notNull: true;
8492
+ hasDefault: false;
8493
+ isPrimaryKey: false;
8494
+ isAutoincrement: false;
8495
+ hasRuntimeDefault: false;
8496
+ enumValues: [string, ...string[]];
8497
+ baseColumn: never;
8498
+ identity: undefined;
8499
+ generated: undefined;
8500
+ }, {}, {
8501
+ length: number;
8502
+ }>;
8503
+ tokenHash: import("drizzle-orm/sqlite-core").SQLiteColumn<{
8504
+ name: "token_hash";
8505
+ tableName: "calendar_feed_token";
8506
+ dataType: "string";
8507
+ columnType: "SQLiteText";
8508
+ data: string;
8509
+ driverParam: string;
8510
+ notNull: true;
8511
+ hasDefault: false;
8512
+ isPrimaryKey: false;
8513
+ isAutoincrement: false;
8514
+ hasRuntimeDefault: false;
8515
+ enumValues: [string, ...string[]];
8516
+ baseColumn: never;
8517
+ identity: undefined;
8518
+ generated: undefined;
8519
+ }, {}, {
8520
+ length: number;
8521
+ }>;
8522
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
8523
+ name: "created_at";
8524
+ tableName: "calendar_feed_token";
8525
+ dataType: "number";
8526
+ columnType: "SQLiteInteger";
8527
+ data: number;
8528
+ driverParam: number;
8529
+ notNull: true;
8530
+ hasDefault: false;
8531
+ isPrimaryKey: false;
8532
+ isAutoincrement: false;
8533
+ hasRuntimeDefault: false;
8534
+ enumValues: undefined;
8535
+ baseColumn: never;
8536
+ identity: undefined;
8537
+ generated: undefined;
8538
+ }, {}, {}>;
8539
+ rotatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
8540
+ name: "rotated_at";
8541
+ tableName: "calendar_feed_token";
8542
+ dataType: "number";
8543
+ columnType: "SQLiteInteger";
8544
+ data: number;
8545
+ driverParam: number;
8546
+ notNull: true;
8547
+ hasDefault: true;
8548
+ isPrimaryKey: false;
8549
+ isAutoincrement: false;
8550
+ hasRuntimeDefault: false;
8551
+ enumValues: undefined;
8552
+ baseColumn: never;
8553
+ identity: undefined;
8554
+ generated: undefined;
8555
+ }, {}, {}>;
8556
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
8557
+ name: "updated_at";
8558
+ tableName: "calendar_feed_token";
8559
+ dataType: "number";
8560
+ columnType: "SQLiteInteger";
8561
+ data: number;
8562
+ driverParam: number;
8563
+ notNull: true;
8564
+ hasDefault: false;
8565
+ isPrimaryKey: false;
8566
+ isAutoincrement: false;
8567
+ hasRuntimeDefault: false;
8568
+ enumValues: undefined;
8569
+ baseColumn: never;
8570
+ identity: undefined;
8571
+ generated: undefined;
8572
+ }, {}, {}>;
8573
+ };
8574
+ dialect: "sqlite";
8575
+ }>;
8059
8576
  export declare const messageLabels: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
8060
8577
  name: "message_label";
8061
8578
  schema: undefined;
package/dist/schema.js CHANGED
@@ -377,6 +377,32 @@ export const messageReferences = sqliteTable("message_reference", {
377
377
  }, (table) => [
378
378
  index("message_reference_by_message_id").on(table.messageId, table.messageReferenceId),
379
379
  ]);
380
+ export const calendarSuggestions = sqliteTable("calendar_suggestion", {
381
+ suggestionId: text("suggestion_id").notNull(),
382
+ accountConfigId: text("account_config_id").notNull(),
383
+ messageId: text("message_id").notNull(),
384
+ bodyPartId: text("body_part_id").notNull(),
385
+ icalUid: text("ical_uid").notNull(),
386
+ sequence: integer("sequence").notNull().default(0),
387
+ method: text("method").$type().notNull().default("None"),
388
+ source: text("source").$type().notNull().default("IcalendarPart"),
389
+ state: text("state").$type().notNull().default("Pending"),
390
+ summary: text("summary").notNull(),
391
+ dtStart: text("dt_start").notNull(),
392
+ dtEnd: text("dt_end").notNull(),
393
+ allDay: integer("all_day", { mode: "boolean" }).notNull().default(false),
394
+ location: text("location").notNull().default(""),
395
+ organizer: text("organizer").notNull().default(""),
396
+ zoneCertainty: text("zone_certainty").$type().notNull().default("Explicit"),
397
+ icalData: text("ical_data").notNull().default(""),
398
+ acceptedCalendarObjectId: text("accepted_calendar_object_id").notNull().default(""),
399
+ createdAt: integer("created_at", { mode: "number" }).notNull(),
400
+ updatedAt: integer("updated_at", { mode: "number" }).notNull(),
401
+ }, (table) => [
402
+ primaryKey({ name: "calendar_suggestion_pk", columns: [table.accountConfigId, table.suggestionId] }),
403
+ index("calendar_suggestion_by_state").on(table.accountConfigId, table.state, table.createdAt, table.suggestionId),
404
+ index("calendar_suggestion_by_message").on(table.accountConfigId, table.messageId, table.suggestionId),
405
+ ]);
380
406
  export const envelopeAddresses = sqliteTable("envelope_address", {
381
407
  envelopeAddressId: text("envelope_address_id").primaryKey().$defaultFn(() => generateBase36Id()),
382
408
  messageId: text("message_id").notNull(),
@@ -582,6 +608,18 @@ export const calendarEventIndexes = sqliteTable("calendar_event_index", {
582
608
  primaryKey({ name: "calendar_event_index_pk", columns: [table.calendarId, table.calendarObjectId, table.recurrenceId] }),
583
609
  index("calendar_event_index_by_start").on(table.calendarId, table.startAt),
584
610
  ]);
611
+ export const calendarFeedTokens = sqliteTable("calendar_feed_token", {
612
+ feedTokenId: text("feed_token_id").notNull(),
613
+ accountConfigId: text("account_config_id").notNull(),
614
+ calendarId: text("calendar_id").notNull(),
615
+ tokenHash: text("token_hash").notNull(),
616
+ createdAt: integer("created_at", { mode: "number" }).notNull(),
617
+ rotatedAt: integer("rotated_at", { mode: "number" }).notNull().default(0),
618
+ updatedAt: integer("updated_at", { mode: "number" }).notNull(),
619
+ }, (table) => [
620
+ primaryKey({ name: "calendar_feed_token_pk", columns: [table.accountConfigId, table.feedTokenId] }),
621
+ index("calendar_feed_token_by_token_hash").on(table.tokenHash),
622
+ ]);
585
623
  export const messageLabels = sqliteTable("message_label", {
586
624
  messageLabelId: text("message_label_id").primaryKey().$defaultFn(() => generateBase36Id()),
587
625
  messageId: text("message_id").notNull(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remit/drizzle-sqlite-schema",
3
- "version": "0.0.19",
3
+ "version": "0.0.21",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/schema.ts CHANGED
@@ -463,6 +463,37 @@ export const messageReferences = sqliteTable(
463
463
  ],
464
464
  );
465
465
 
466
+ export const calendarSuggestions = sqliteTable(
467
+ "calendar_suggestion",
468
+ {
469
+ suggestionId: text("suggestion_id").notNull(),
470
+ accountConfigId: text("account_config_id").notNull(),
471
+ messageId: text("message_id").notNull(),
472
+ bodyPartId: text("body_part_id").notNull(),
473
+ icalUid: text("ical_uid").notNull(),
474
+ sequence: integer("sequence").notNull().default(0),
475
+ method: text("method").$type<"Request" | "Reply" | "Cancel" | "Counter" | "Publish" | "None">().notNull().default("None"),
476
+ source: text("source").$type<"IcalendarPart" | "IcalendarAttachment" | "TextHeuristic">().notNull().default("IcalendarPart"),
477
+ state: text("state").$type<"Pending" | "Accepted" | "Declined" | "Tentative" | "Dismissed" | "Superseded">().notNull().default("Pending"),
478
+ summary: text("summary").notNull(),
479
+ dtStart: text("dt_start").notNull(),
480
+ dtEnd: text("dt_end").notNull(),
481
+ allDay: integer("all_day", { mode: "boolean" }).notNull().default(false),
482
+ location: text("location").notNull().default(""),
483
+ organizer: text("organizer").notNull().default(""),
484
+ zoneCertainty: text("zone_certainty").$type<"Local" | "Explicit" | "Ambiguous">().notNull().default("Explicit"),
485
+ icalData: text("ical_data").notNull().default(""),
486
+ acceptedCalendarObjectId: text("accepted_calendar_object_id").notNull().default(""),
487
+ createdAt: integer("created_at", { mode: "number" }).notNull(),
488
+ updatedAt: integer("updated_at", { mode: "number" }).notNull(),
489
+ },
490
+ (table) => [
491
+ primaryKey({ name: "calendar_suggestion_pk", columns: [table.accountConfigId, table.suggestionId] }),
492
+ index("calendar_suggestion_by_state").on(table.accountConfigId, table.state, table.createdAt, table.suggestionId),
493
+ index("calendar_suggestion_by_message").on(table.accountConfigId, table.messageId, table.suggestionId),
494
+ ],
495
+ );
496
+
466
497
  export const envelopeAddresses = sqliteTable(
467
498
  "envelope_address",
468
499
  {
@@ -753,6 +784,23 @@ export const calendarEventIndexes = sqliteTable(
753
784
  ],
754
785
  );
755
786
 
787
+ export const calendarFeedTokens = sqliteTable(
788
+ "calendar_feed_token",
789
+ {
790
+ feedTokenId: text("feed_token_id").notNull(),
791
+ accountConfigId: text("account_config_id").notNull(),
792
+ calendarId: text("calendar_id").notNull(),
793
+ tokenHash: text("token_hash").notNull(),
794
+ createdAt: integer("created_at", { mode: "number" }).notNull(),
795
+ rotatedAt: integer("rotated_at", { mode: "number" }).notNull().default(0),
796
+ updatedAt: integer("updated_at", { mode: "number" }).notNull(),
797
+ },
798
+ (table) => [
799
+ primaryKey({ name: "calendar_feed_token_pk", columns: [table.accountConfigId, table.feedTokenId] }),
800
+ index("calendar_feed_token_by_token_hash").on(table.tokenHash),
801
+ ],
802
+ );
803
+
756
804
  export const messageLabels = sqliteTable(
757
805
  "message_label",
758
806
  {