@wirecat/cli-core 0.584.0 → 0.585.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/CHANGELOG.md +11 -0
- package/dist/cli/messenger/store-maintenance-command.d.ts +1 -1
- package/dist/domain/deals.d.ts +20 -0
- package/dist/domain/deals.js +15 -0
- package/dist/domain/ref-summaries.js +1 -0
- package/dist/domain/references.d.ts +1 -1
- package/dist/domain/references.js +1 -0
- package/dist/errors/reasons.js +8 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/meetings/mcp/index.d.ts +15 -15
- package/dist/services/proposals/kinds/deals.d.ts +4 -0
- package/dist/services/proposals/kinds/deals.js +32 -0
- package/dist/services/proposals/registry.js +2 -0
- package/dist/store/index.d.ts +1 -0
- package/dist/store/sqlite/deals.d.ts +104 -0
- package/dist/store/sqlite/deals.js +264 -0
- package/dist/store/sqlite/entity-types.d.ts +1 -0
- package/dist/store/sqlite/entity-types.js +1 -0
- package/dist/store/sqlite/finance.d.ts +3 -3
- package/dist/store/sqlite/knowledge.js +2 -1
- package/dist/store/sqlite/manifest.js +2 -0
- package/dist/store/sqlite/migrations.generated.js +21 -0
- package/dist/store/sqlite/ref-summaries.js +10 -0
- package/dist/store/sqlite/schema.d.ts +554 -0
- package/dist/store/sqlite/schema.js +52 -0
- package/dist/store/sqlite/things.js +1 -0
- package/dist/store/store.d.ts +3 -0
- package/dist/store/store.js +5 -0
- package/package.json +1 -1
|
@@ -15394,6 +15394,560 @@ export declare const orders: import("drizzle-orm/sqlite-core").SQLiteTableWithCo
|
|
|
15394
15394
|
dialect: 'sqlite';
|
|
15395
15395
|
isAlias: false;
|
|
15396
15396
|
}>;
|
|
15397
|
+
/** A sales pipeline of the owner's: the stages a deal goes through, in order. */
|
|
15398
|
+
export declare const pipelines: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
15399
|
+
name: "pipelines";
|
|
15400
|
+
schema: undefined;
|
|
15401
|
+
columns: {
|
|
15402
|
+
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15403
|
+
name: string;
|
|
15404
|
+
tableName: "pipelines";
|
|
15405
|
+
dataType: "number int53";
|
|
15406
|
+
data: number;
|
|
15407
|
+
driverParam: number;
|
|
15408
|
+
notNull: true;
|
|
15409
|
+
hasDefault: true;
|
|
15410
|
+
isPrimaryKey: true;
|
|
15411
|
+
isAutoincrement: false;
|
|
15412
|
+
hasRuntimeDefault: false;
|
|
15413
|
+
enumValues: undefined;
|
|
15414
|
+
baseColumn: never;
|
|
15415
|
+
identity: undefined;
|
|
15416
|
+
generated: undefined;
|
|
15417
|
+
}, {}>;
|
|
15418
|
+
name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15419
|
+
name: string;
|
|
15420
|
+
tableName: "pipelines";
|
|
15421
|
+
dataType: "string";
|
|
15422
|
+
data: string;
|
|
15423
|
+
driverParam: string;
|
|
15424
|
+
notNull: true;
|
|
15425
|
+
hasDefault: false;
|
|
15426
|
+
isPrimaryKey: false;
|
|
15427
|
+
isAutoincrement: false;
|
|
15428
|
+
hasRuntimeDefault: false;
|
|
15429
|
+
enumValues: [string, ...string[]];
|
|
15430
|
+
baseColumn: never;
|
|
15431
|
+
identity: undefined;
|
|
15432
|
+
generated: undefined;
|
|
15433
|
+
}, {}>;
|
|
15434
|
+
nameFolded: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15435
|
+
name: string;
|
|
15436
|
+
tableName: "pipelines";
|
|
15437
|
+
dataType: "string";
|
|
15438
|
+
data: string;
|
|
15439
|
+
driverParam: string;
|
|
15440
|
+
notNull: true;
|
|
15441
|
+
hasDefault: false;
|
|
15442
|
+
isPrimaryKey: false;
|
|
15443
|
+
isAutoincrement: false;
|
|
15444
|
+
hasRuntimeDefault: false;
|
|
15445
|
+
enumValues: [string, ...string[]];
|
|
15446
|
+
baseColumn: never;
|
|
15447
|
+
identity: undefined;
|
|
15448
|
+
generated: undefined;
|
|
15449
|
+
}, {}>;
|
|
15450
|
+
createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15451
|
+
name: string;
|
|
15452
|
+
tableName: "pipelines";
|
|
15453
|
+
dataType: "number int53";
|
|
15454
|
+
data: number;
|
|
15455
|
+
driverParam: number;
|
|
15456
|
+
notNull: true;
|
|
15457
|
+
hasDefault: false;
|
|
15458
|
+
isPrimaryKey: false;
|
|
15459
|
+
isAutoincrement: false;
|
|
15460
|
+
hasRuntimeDefault: false;
|
|
15461
|
+
enumValues: undefined;
|
|
15462
|
+
baseColumn: never;
|
|
15463
|
+
identity: undefined;
|
|
15464
|
+
generated: undefined;
|
|
15465
|
+
}, {}>;
|
|
15466
|
+
updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15467
|
+
name: string;
|
|
15468
|
+
tableName: "pipelines";
|
|
15469
|
+
dataType: "number int53";
|
|
15470
|
+
data: number;
|
|
15471
|
+
driverParam: number;
|
|
15472
|
+
notNull: true;
|
|
15473
|
+
hasDefault: false;
|
|
15474
|
+
isPrimaryKey: false;
|
|
15475
|
+
isAutoincrement: false;
|
|
15476
|
+
hasRuntimeDefault: false;
|
|
15477
|
+
enumValues: undefined;
|
|
15478
|
+
baseColumn: never;
|
|
15479
|
+
identity: undefined;
|
|
15480
|
+
generated: undefined;
|
|
15481
|
+
}, {}>;
|
|
15482
|
+
};
|
|
15483
|
+
dialect: 'sqlite';
|
|
15484
|
+
isAlias: false;
|
|
15485
|
+
}>;
|
|
15486
|
+
export declare const pipelineStages: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
15487
|
+
name: "pipeline_stages";
|
|
15488
|
+
schema: undefined;
|
|
15489
|
+
columns: {
|
|
15490
|
+
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15491
|
+
name: string;
|
|
15492
|
+
tableName: "pipeline_stages";
|
|
15493
|
+
dataType: "number int53";
|
|
15494
|
+
data: number;
|
|
15495
|
+
driverParam: number;
|
|
15496
|
+
notNull: true;
|
|
15497
|
+
hasDefault: true;
|
|
15498
|
+
isPrimaryKey: true;
|
|
15499
|
+
isAutoincrement: false;
|
|
15500
|
+
hasRuntimeDefault: false;
|
|
15501
|
+
enumValues: undefined;
|
|
15502
|
+
baseColumn: never;
|
|
15503
|
+
identity: undefined;
|
|
15504
|
+
generated: undefined;
|
|
15505
|
+
}, {}>;
|
|
15506
|
+
pipelineId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15507
|
+
name: string;
|
|
15508
|
+
tableName: "pipeline_stages";
|
|
15509
|
+
dataType: "number int53";
|
|
15510
|
+
data: number;
|
|
15511
|
+
driverParam: number;
|
|
15512
|
+
notNull: true;
|
|
15513
|
+
hasDefault: false;
|
|
15514
|
+
isPrimaryKey: false;
|
|
15515
|
+
isAutoincrement: false;
|
|
15516
|
+
hasRuntimeDefault: false;
|
|
15517
|
+
enumValues: undefined;
|
|
15518
|
+
baseColumn: never;
|
|
15519
|
+
identity: undefined;
|
|
15520
|
+
generated: undefined;
|
|
15521
|
+
}, {}>;
|
|
15522
|
+
name: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15523
|
+
name: string;
|
|
15524
|
+
tableName: "pipeline_stages";
|
|
15525
|
+
dataType: "string";
|
|
15526
|
+
data: string;
|
|
15527
|
+
driverParam: string;
|
|
15528
|
+
notNull: true;
|
|
15529
|
+
hasDefault: false;
|
|
15530
|
+
isPrimaryKey: false;
|
|
15531
|
+
isAutoincrement: false;
|
|
15532
|
+
hasRuntimeDefault: false;
|
|
15533
|
+
enumValues: [string, ...string[]];
|
|
15534
|
+
baseColumn: never;
|
|
15535
|
+
identity: undefined;
|
|
15536
|
+
generated: undefined;
|
|
15537
|
+
}, {}>;
|
|
15538
|
+
nameFolded: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15539
|
+
name: string;
|
|
15540
|
+
tableName: "pipeline_stages";
|
|
15541
|
+
dataType: "string";
|
|
15542
|
+
data: string;
|
|
15543
|
+
driverParam: string;
|
|
15544
|
+
notNull: true;
|
|
15545
|
+
hasDefault: false;
|
|
15546
|
+
isPrimaryKey: false;
|
|
15547
|
+
isAutoincrement: false;
|
|
15548
|
+
hasRuntimeDefault: false;
|
|
15549
|
+
enumValues: [string, ...string[]];
|
|
15550
|
+
baseColumn: never;
|
|
15551
|
+
identity: undefined;
|
|
15552
|
+
generated: undefined;
|
|
15553
|
+
}, {}>;
|
|
15554
|
+
position: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15555
|
+
name: string;
|
|
15556
|
+
tableName: "pipeline_stages";
|
|
15557
|
+
dataType: "number int53";
|
|
15558
|
+
data: number;
|
|
15559
|
+
driverParam: number;
|
|
15560
|
+
notNull: true;
|
|
15561
|
+
hasDefault: false;
|
|
15562
|
+
isPrimaryKey: false;
|
|
15563
|
+
isAutoincrement: false;
|
|
15564
|
+
hasRuntimeDefault: false;
|
|
15565
|
+
enumValues: undefined;
|
|
15566
|
+
baseColumn: never;
|
|
15567
|
+
identity: undefined;
|
|
15568
|
+
generated: undefined;
|
|
15569
|
+
}, {}>;
|
|
15570
|
+
createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15571
|
+
name: string;
|
|
15572
|
+
tableName: "pipeline_stages";
|
|
15573
|
+
dataType: "number int53";
|
|
15574
|
+
data: number;
|
|
15575
|
+
driverParam: number;
|
|
15576
|
+
notNull: true;
|
|
15577
|
+
hasDefault: false;
|
|
15578
|
+
isPrimaryKey: false;
|
|
15579
|
+
isAutoincrement: false;
|
|
15580
|
+
hasRuntimeDefault: false;
|
|
15581
|
+
enumValues: undefined;
|
|
15582
|
+
baseColumn: never;
|
|
15583
|
+
identity: undefined;
|
|
15584
|
+
generated: undefined;
|
|
15585
|
+
}, {}>;
|
|
15586
|
+
updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15587
|
+
name: string;
|
|
15588
|
+
tableName: "pipeline_stages";
|
|
15589
|
+
dataType: "number int53";
|
|
15590
|
+
data: number;
|
|
15591
|
+
driverParam: number;
|
|
15592
|
+
notNull: true;
|
|
15593
|
+
hasDefault: false;
|
|
15594
|
+
isPrimaryKey: false;
|
|
15595
|
+
isAutoincrement: false;
|
|
15596
|
+
hasRuntimeDefault: false;
|
|
15597
|
+
enumValues: undefined;
|
|
15598
|
+
baseColumn: never;
|
|
15599
|
+
identity: undefined;
|
|
15600
|
+
generated: undefined;
|
|
15601
|
+
}, {}>;
|
|
15602
|
+
};
|
|
15603
|
+
dialect: 'sqlite';
|
|
15604
|
+
isAlias: false;
|
|
15605
|
+
}>;
|
|
15606
|
+
/** A deal: what the owner hopes to sell, where it stands in its pipeline, and whether it ended. */
|
|
15607
|
+
export declare const opportunities: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
15608
|
+
name: "opportunities";
|
|
15609
|
+
schema: undefined;
|
|
15610
|
+
columns: {
|
|
15611
|
+
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15612
|
+
name: string;
|
|
15613
|
+
tableName: "opportunities";
|
|
15614
|
+
dataType: "number int53";
|
|
15615
|
+
data: number;
|
|
15616
|
+
driverParam: number;
|
|
15617
|
+
notNull: true;
|
|
15618
|
+
hasDefault: true;
|
|
15619
|
+
isPrimaryKey: true;
|
|
15620
|
+
isAutoincrement: false;
|
|
15621
|
+
hasRuntimeDefault: false;
|
|
15622
|
+
enumValues: undefined;
|
|
15623
|
+
baseColumn: never;
|
|
15624
|
+
identity: undefined;
|
|
15625
|
+
generated: undefined;
|
|
15626
|
+
}, {}>;
|
|
15627
|
+
title: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15628
|
+
name: string;
|
|
15629
|
+
tableName: "opportunities";
|
|
15630
|
+
dataType: "string";
|
|
15631
|
+
data: string;
|
|
15632
|
+
driverParam: string;
|
|
15633
|
+
notNull: true;
|
|
15634
|
+
hasDefault: false;
|
|
15635
|
+
isPrimaryKey: false;
|
|
15636
|
+
isAutoincrement: false;
|
|
15637
|
+
hasRuntimeDefault: false;
|
|
15638
|
+
enumValues: [string, ...string[]];
|
|
15639
|
+
baseColumn: never;
|
|
15640
|
+
identity: undefined;
|
|
15641
|
+
generated: undefined;
|
|
15642
|
+
}, {}>;
|
|
15643
|
+
organizationId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15644
|
+
name: string;
|
|
15645
|
+
tableName: "opportunities";
|
|
15646
|
+
dataType: "number int53";
|
|
15647
|
+
data: number;
|
|
15648
|
+
driverParam: number;
|
|
15649
|
+
notNull: false;
|
|
15650
|
+
hasDefault: false;
|
|
15651
|
+
isPrimaryKey: false;
|
|
15652
|
+
isAutoincrement: false;
|
|
15653
|
+
hasRuntimeDefault: false;
|
|
15654
|
+
enumValues: undefined;
|
|
15655
|
+
baseColumn: never;
|
|
15656
|
+
identity: undefined;
|
|
15657
|
+
generated: undefined;
|
|
15658
|
+
}, {}>;
|
|
15659
|
+
projectId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15660
|
+
name: string;
|
|
15661
|
+
tableName: "opportunities";
|
|
15662
|
+
dataType: "number int53";
|
|
15663
|
+
data: number;
|
|
15664
|
+
driverParam: number;
|
|
15665
|
+
notNull: false;
|
|
15666
|
+
hasDefault: false;
|
|
15667
|
+
isPrimaryKey: false;
|
|
15668
|
+
isAutoincrement: false;
|
|
15669
|
+
hasRuntimeDefault: false;
|
|
15670
|
+
enumValues: undefined;
|
|
15671
|
+
baseColumn: never;
|
|
15672
|
+
identity: undefined;
|
|
15673
|
+
generated: undefined;
|
|
15674
|
+
}, {}>;
|
|
15675
|
+
stageId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15676
|
+
name: string;
|
|
15677
|
+
tableName: "opportunities";
|
|
15678
|
+
dataType: "number int53";
|
|
15679
|
+
data: number;
|
|
15680
|
+
driverParam: number;
|
|
15681
|
+
notNull: true;
|
|
15682
|
+
hasDefault: false;
|
|
15683
|
+
isPrimaryKey: false;
|
|
15684
|
+
isAutoincrement: false;
|
|
15685
|
+
hasRuntimeDefault: false;
|
|
15686
|
+
enumValues: undefined;
|
|
15687
|
+
baseColumn: never;
|
|
15688
|
+
identity: undefined;
|
|
15689
|
+
generated: undefined;
|
|
15690
|
+
}, {}>;
|
|
15691
|
+
status: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15692
|
+
name: string;
|
|
15693
|
+
tableName: "opportunities";
|
|
15694
|
+
dataType: "string";
|
|
15695
|
+
data: string;
|
|
15696
|
+
driverParam: string;
|
|
15697
|
+
notNull: true;
|
|
15698
|
+
hasDefault: false;
|
|
15699
|
+
isPrimaryKey: false;
|
|
15700
|
+
isAutoincrement: false;
|
|
15701
|
+
hasRuntimeDefault: false;
|
|
15702
|
+
enumValues: [string, ...string[]];
|
|
15703
|
+
baseColumn: never;
|
|
15704
|
+
identity: undefined;
|
|
15705
|
+
generated: undefined;
|
|
15706
|
+
}, {}>;
|
|
15707
|
+
currency: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15708
|
+
name: string;
|
|
15709
|
+
tableName: "opportunities";
|
|
15710
|
+
dataType: "string";
|
|
15711
|
+
data: string;
|
|
15712
|
+
driverParam: string;
|
|
15713
|
+
notNull: false;
|
|
15714
|
+
hasDefault: false;
|
|
15715
|
+
isPrimaryKey: false;
|
|
15716
|
+
isAutoincrement: false;
|
|
15717
|
+
hasRuntimeDefault: false;
|
|
15718
|
+
enumValues: [string, ...string[]];
|
|
15719
|
+
baseColumn: never;
|
|
15720
|
+
identity: undefined;
|
|
15721
|
+
generated: undefined;
|
|
15722
|
+
}, {}>;
|
|
15723
|
+
amount: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15724
|
+
name: string;
|
|
15725
|
+
tableName: "opportunities";
|
|
15726
|
+
dataType: "number int53";
|
|
15727
|
+
data: number;
|
|
15728
|
+
driverParam: number;
|
|
15729
|
+
notNull: false;
|
|
15730
|
+
hasDefault: false;
|
|
15731
|
+
isPrimaryKey: false;
|
|
15732
|
+
isAutoincrement: false;
|
|
15733
|
+
hasRuntimeDefault: false;
|
|
15734
|
+
enumValues: undefined;
|
|
15735
|
+
baseColumn: never;
|
|
15736
|
+
identity: undefined;
|
|
15737
|
+
generated: undefined;
|
|
15738
|
+
}, {}>;
|
|
15739
|
+
closeDate: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15740
|
+
name: string;
|
|
15741
|
+
tableName: "opportunities";
|
|
15742
|
+
dataType: "string";
|
|
15743
|
+
data: string;
|
|
15744
|
+
driverParam: string;
|
|
15745
|
+
notNull: false;
|
|
15746
|
+
hasDefault: false;
|
|
15747
|
+
isPrimaryKey: false;
|
|
15748
|
+
isAutoincrement: false;
|
|
15749
|
+
hasRuntimeDefault: false;
|
|
15750
|
+
enumValues: [string, ...string[]];
|
|
15751
|
+
baseColumn: never;
|
|
15752
|
+
identity: undefined;
|
|
15753
|
+
generated: undefined;
|
|
15754
|
+
}, {}>;
|
|
15755
|
+
closedDate: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15756
|
+
name: string;
|
|
15757
|
+
tableName: "opportunities";
|
|
15758
|
+
dataType: "string";
|
|
15759
|
+
data: string;
|
|
15760
|
+
driverParam: string;
|
|
15761
|
+
notNull: false;
|
|
15762
|
+
hasDefault: false;
|
|
15763
|
+
isPrimaryKey: false;
|
|
15764
|
+
isAutoincrement: false;
|
|
15765
|
+
hasRuntimeDefault: false;
|
|
15766
|
+
enumValues: [string, ...string[]];
|
|
15767
|
+
baseColumn: never;
|
|
15768
|
+
identity: undefined;
|
|
15769
|
+
generated: undefined;
|
|
15770
|
+
}, {}>;
|
|
15771
|
+
review: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15772
|
+
name: string;
|
|
15773
|
+
tableName: "opportunities";
|
|
15774
|
+
dataType: "string";
|
|
15775
|
+
data: string;
|
|
15776
|
+
driverParam: string;
|
|
15777
|
+
notNull: true;
|
|
15778
|
+
hasDefault: false;
|
|
15779
|
+
isPrimaryKey: false;
|
|
15780
|
+
isAutoincrement: false;
|
|
15781
|
+
hasRuntimeDefault: false;
|
|
15782
|
+
enumValues: [string, ...string[]];
|
|
15783
|
+
baseColumn: never;
|
|
15784
|
+
identity: undefined;
|
|
15785
|
+
generated: undefined;
|
|
15786
|
+
}, {}>;
|
|
15787
|
+
authorType: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15788
|
+
name: string;
|
|
15789
|
+
tableName: "opportunities";
|
|
15790
|
+
dataType: "string";
|
|
15791
|
+
data: string;
|
|
15792
|
+
driverParam: string;
|
|
15793
|
+
notNull: true;
|
|
15794
|
+
hasDefault: false;
|
|
15795
|
+
isPrimaryKey: false;
|
|
15796
|
+
isAutoincrement: false;
|
|
15797
|
+
hasRuntimeDefault: false;
|
|
15798
|
+
enumValues: [string, ...string[]];
|
|
15799
|
+
baseColumn: never;
|
|
15800
|
+
identity: undefined;
|
|
15801
|
+
generated: undefined;
|
|
15802
|
+
}, {}>;
|
|
15803
|
+
authorId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15804
|
+
name: string;
|
|
15805
|
+
tableName: "opportunities";
|
|
15806
|
+
dataType: "number int53";
|
|
15807
|
+
data: number;
|
|
15808
|
+
driverParam: number;
|
|
15809
|
+
notNull: true;
|
|
15810
|
+
hasDefault: false;
|
|
15811
|
+
isPrimaryKey: false;
|
|
15812
|
+
isAutoincrement: false;
|
|
15813
|
+
hasRuntimeDefault: false;
|
|
15814
|
+
enumValues: undefined;
|
|
15815
|
+
baseColumn: never;
|
|
15816
|
+
identity: undefined;
|
|
15817
|
+
generated: undefined;
|
|
15818
|
+
}, {}>;
|
|
15819
|
+
model: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15820
|
+
name: string;
|
|
15821
|
+
tableName: "opportunities";
|
|
15822
|
+
dataType: "string";
|
|
15823
|
+
data: string;
|
|
15824
|
+
driverParam: string;
|
|
15825
|
+
notNull: false;
|
|
15826
|
+
hasDefault: false;
|
|
15827
|
+
isPrimaryKey: false;
|
|
15828
|
+
isAutoincrement: false;
|
|
15829
|
+
hasRuntimeDefault: false;
|
|
15830
|
+
enumValues: [string, ...string[]];
|
|
15831
|
+
baseColumn: never;
|
|
15832
|
+
identity: undefined;
|
|
15833
|
+
generated: undefined;
|
|
15834
|
+
}, {}>;
|
|
15835
|
+
confirmedByType: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15836
|
+
name: string;
|
|
15837
|
+
tableName: "opportunities";
|
|
15838
|
+
dataType: "string";
|
|
15839
|
+
data: string;
|
|
15840
|
+
driverParam: string;
|
|
15841
|
+
notNull: false;
|
|
15842
|
+
hasDefault: false;
|
|
15843
|
+
isPrimaryKey: false;
|
|
15844
|
+
isAutoincrement: false;
|
|
15845
|
+
hasRuntimeDefault: false;
|
|
15846
|
+
enumValues: [string, ...string[]];
|
|
15847
|
+
baseColumn: never;
|
|
15848
|
+
identity: undefined;
|
|
15849
|
+
generated: undefined;
|
|
15850
|
+
}, {}>;
|
|
15851
|
+
confirmedById: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15852
|
+
name: string;
|
|
15853
|
+
tableName: "opportunities";
|
|
15854
|
+
dataType: "number int53";
|
|
15855
|
+
data: number;
|
|
15856
|
+
driverParam: number;
|
|
15857
|
+
notNull: false;
|
|
15858
|
+
hasDefault: false;
|
|
15859
|
+
isPrimaryKey: false;
|
|
15860
|
+
isAutoincrement: false;
|
|
15861
|
+
hasRuntimeDefault: false;
|
|
15862
|
+
enumValues: undefined;
|
|
15863
|
+
baseColumn: never;
|
|
15864
|
+
identity: undefined;
|
|
15865
|
+
generated: undefined;
|
|
15866
|
+
}, {}>;
|
|
15867
|
+
source: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15868
|
+
name: string;
|
|
15869
|
+
tableName: "opportunities";
|
|
15870
|
+
dataType: "string";
|
|
15871
|
+
data: string;
|
|
15872
|
+
driverParam: string;
|
|
15873
|
+
notNull: true;
|
|
15874
|
+
hasDefault: false;
|
|
15875
|
+
isPrimaryKey: false;
|
|
15876
|
+
isAutoincrement: false;
|
|
15877
|
+
hasRuntimeDefault: false;
|
|
15878
|
+
enumValues: [string, ...string[]];
|
|
15879
|
+
baseColumn: never;
|
|
15880
|
+
identity: undefined;
|
|
15881
|
+
generated: undefined;
|
|
15882
|
+
}, {}>;
|
|
15883
|
+
metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15884
|
+
name: string;
|
|
15885
|
+
tableName: "opportunities";
|
|
15886
|
+
dataType: "string";
|
|
15887
|
+
data: string;
|
|
15888
|
+
driverParam: string;
|
|
15889
|
+
notNull: false;
|
|
15890
|
+
hasDefault: false;
|
|
15891
|
+
isPrimaryKey: false;
|
|
15892
|
+
isAutoincrement: false;
|
|
15893
|
+
hasRuntimeDefault: false;
|
|
15894
|
+
enumValues: [string, ...string[]];
|
|
15895
|
+
baseColumn: never;
|
|
15896
|
+
identity: undefined;
|
|
15897
|
+
generated: undefined;
|
|
15898
|
+
}, {}>;
|
|
15899
|
+
createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15900
|
+
name: string;
|
|
15901
|
+
tableName: "opportunities";
|
|
15902
|
+
dataType: "number int53";
|
|
15903
|
+
data: number;
|
|
15904
|
+
driverParam: number;
|
|
15905
|
+
notNull: true;
|
|
15906
|
+
hasDefault: false;
|
|
15907
|
+
isPrimaryKey: false;
|
|
15908
|
+
isAutoincrement: false;
|
|
15909
|
+
hasRuntimeDefault: false;
|
|
15910
|
+
enumValues: undefined;
|
|
15911
|
+
baseColumn: never;
|
|
15912
|
+
identity: undefined;
|
|
15913
|
+
generated: undefined;
|
|
15914
|
+
}, {}>;
|
|
15915
|
+
updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15916
|
+
name: string;
|
|
15917
|
+
tableName: "opportunities";
|
|
15918
|
+
dataType: "number int53";
|
|
15919
|
+
data: number;
|
|
15920
|
+
driverParam: number;
|
|
15921
|
+
notNull: true;
|
|
15922
|
+
hasDefault: false;
|
|
15923
|
+
isPrimaryKey: false;
|
|
15924
|
+
isAutoincrement: false;
|
|
15925
|
+
hasRuntimeDefault: false;
|
|
15926
|
+
enumValues: undefined;
|
|
15927
|
+
baseColumn: never;
|
|
15928
|
+
identity: undefined;
|
|
15929
|
+
generated: undefined;
|
|
15930
|
+
}, {}>;
|
|
15931
|
+
deletedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
15932
|
+
name: string;
|
|
15933
|
+
tableName: "opportunities";
|
|
15934
|
+
dataType: "number int53";
|
|
15935
|
+
data: number;
|
|
15936
|
+
driverParam: number;
|
|
15937
|
+
notNull: false;
|
|
15938
|
+
hasDefault: false;
|
|
15939
|
+
isPrimaryKey: false;
|
|
15940
|
+
isAutoincrement: false;
|
|
15941
|
+
hasRuntimeDefault: false;
|
|
15942
|
+
enumValues: undefined;
|
|
15943
|
+
baseColumn: never;
|
|
15944
|
+
identity: undefined;
|
|
15945
|
+
generated: undefined;
|
|
15946
|
+
}, {}>;
|
|
15947
|
+
};
|
|
15948
|
+
dialect: 'sqlite';
|
|
15949
|
+
isAlias: false;
|
|
15950
|
+
}>;
|
|
15397
15951
|
/** What a source said about one of its records, as it said it: the layer under the entity an import makes. */
|
|
15398
15952
|
export declare const records: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
15399
15953
|
name: "records";
|
|
@@ -1535,6 +1535,58 @@ export const orders = sqliteTable("orders", {
|
|
|
1535
1535
|
index("orders_by_author_type_author_id").on(table.authorType, table.authorId),
|
|
1536
1536
|
index("orders_by_confirmed_by_type_confirmed_by_id").on(table.confirmedByType, table.confirmedById),
|
|
1537
1537
|
]);
|
|
1538
|
+
/** A sales pipeline of the owner's: the stages a deal goes through, in order. */
|
|
1539
|
+
export const pipelines = sqliteTable("pipelines", {
|
|
1540
|
+
id: integer("id").primaryKey(),
|
|
1541
|
+
name: text("name").notNull(),
|
|
1542
|
+
nameFolded: text("name_folded").notNull().unique(),
|
|
1543
|
+
createdAt: integer("created_at").notNull(),
|
|
1544
|
+
updatedAt: integer("updated_at").notNull(),
|
|
1545
|
+
});
|
|
1546
|
+
export const pipelineStages = sqliteTable("pipeline_stages", {
|
|
1547
|
+
id: integer("id").primaryKey(),
|
|
1548
|
+
pipelineId: integer("pipeline_id")
|
|
1549
|
+
.notNull()
|
|
1550
|
+
.references(() => pipelines.id),
|
|
1551
|
+
name: text("name").notNull(),
|
|
1552
|
+
nameFolded: text("name_folded").notNull(),
|
|
1553
|
+
position: integer("position").notNull(),
|
|
1554
|
+
createdAt: integer("created_at").notNull(),
|
|
1555
|
+
updatedAt: integer("updated_at").notNull(),
|
|
1556
|
+
}, (table) => [unique().on(table.pipelineId, table.nameFolded), unique().on(table.pipelineId, table.position)]);
|
|
1557
|
+
/** A deal: what the owner hopes to sell, where it stands in its pipeline, and whether it ended. */
|
|
1558
|
+
export const opportunities = sqliteTable("opportunities", {
|
|
1559
|
+
id: integer("id").primaryKey(),
|
|
1560
|
+
title: text("title").notNull(),
|
|
1561
|
+
organizationId: integer("organization_id").references(() => organizations.id),
|
|
1562
|
+
projectId: integer("project_id").references(() => projects.id),
|
|
1563
|
+
stageId: integer("stage_id")
|
|
1564
|
+
.notNull()
|
|
1565
|
+
.references(() => pipelineStages.id),
|
|
1566
|
+
status: text("status").notNull(),
|
|
1567
|
+
currency: text("currency"),
|
|
1568
|
+
/** Minor units of `currency`. */
|
|
1569
|
+
amount: integer("amount"),
|
|
1570
|
+
closeDate: text("close_date"),
|
|
1571
|
+
closedDate: text("closed_date"),
|
|
1572
|
+
review: text("review").notNull(),
|
|
1573
|
+
authorType: text("author_type").notNull(),
|
|
1574
|
+
authorId: integer("author_id").notNull(),
|
|
1575
|
+
model: text("model"),
|
|
1576
|
+
confirmedByType: text("confirmed_by_type"),
|
|
1577
|
+
confirmedById: integer("confirmed_by_id"),
|
|
1578
|
+
source: text("source").notNull(),
|
|
1579
|
+
metadata: text("metadata"),
|
|
1580
|
+
createdAt: integer("created_at").notNull(),
|
|
1581
|
+
updatedAt: integer("updated_at").notNull(),
|
|
1582
|
+
deletedAt: integer("deleted_at"),
|
|
1583
|
+
}, (table) => [
|
|
1584
|
+
index("opportunities_by_organization_id").on(table.organizationId),
|
|
1585
|
+
index("opportunities_by_project_id").on(table.projectId),
|
|
1586
|
+
index("opportunities_by_stage_id").on(table.stageId),
|
|
1587
|
+
index("opportunities_by_author_type_author_id").on(table.authorType, table.authorId),
|
|
1588
|
+
index("opportunities_by_confirmed_by_type_confirmed_by_id").on(table.confirmedByType, table.confirmedById),
|
|
1589
|
+
]);
|
|
1538
1590
|
/** What a source said about one of its records, as it said it: the layer under the entity an import makes. */
|
|
1539
1591
|
export const records = sqliteTable("records", {
|
|
1540
1592
|
id: integer("id").primaryKey(),
|
package/dist/store/store.d.ts
CHANGED
|
@@ -22,6 +22,7 @@ import { type SearchesStore } from "./searches.js";
|
|
|
22
22
|
import { type AgentActionsStore } from "./sqlite/agent-actions.js";
|
|
23
23
|
import { type BotUpdateStore } from "./sqlite/bot-updates.js";
|
|
24
24
|
import { type CatalogStore } from "./sqlite/catalog.js";
|
|
25
|
+
import { type DealsStore } from "./sqlite/deals.js";
|
|
25
26
|
import { type MailStore } from "./sqlite/emails.js";
|
|
26
27
|
import { type EventSearch } from "./sqlite/event-search.js";
|
|
27
28
|
import { type FactsStore } from "./sqlite/facts.js";
|
|
@@ -105,6 +106,8 @@ export interface MessageStore {
|
|
|
105
106
|
readonly finance: FinanceStore;
|
|
106
107
|
/** What the owner, his business or a client ordered and how far delivery got; an agent's wait for the owner. */
|
|
107
108
|
readonly orders: OrdersStore;
|
|
109
|
+
/** The owner's sales pipelines and the deals in them; an agent's deal waits for the owner. */
|
|
110
|
+
readonly deals: DealsStore;
|
|
108
111
|
/** What each import said, by the source's identity; `ingest` (services) is the way in. */
|
|
109
112
|
readonly records: RecordStore;
|
|
110
113
|
/** What agents concluded: summaries, digests, facts, preferences, each with evidence and a scope. */
|
package/dist/store/store.js
CHANGED
|
@@ -19,6 +19,7 @@ import { botUpdateStoreOver } from "./sqlite/bot-updates.js";
|
|
|
19
19
|
import { eventStoreOver } from "./sqlite/calendar.js";
|
|
20
20
|
import { catalogStoreOver } from "./sqlite/catalog.js";
|
|
21
21
|
import { contextEvidenceOver, contextIndexOver, contextRecordsOver } from "./sqlite/context-evidence.js";
|
|
22
|
+
import { dealsStoreOver } from "./sqlite/deals.js";
|
|
22
23
|
import { mailStoreOver } from "./sqlite/emails.js";
|
|
23
24
|
import { eventSearchOver } from "./sqlite/event-search.js";
|
|
24
25
|
import { evidenceFindingsStoreOver } from "./sqlite/evidence-findings.js";
|
|
@@ -117,6 +118,7 @@ const storeOver = (context) => {
|
|
|
117
118
|
const facts = once(() => factsStoreOver(context));
|
|
118
119
|
const finance = once(() => financeStoreOver(context));
|
|
119
120
|
const orders = once(() => ordersStoreOver(context));
|
|
121
|
+
const deals = once(() => dealsStoreOver(context));
|
|
120
122
|
const records = once(() => recordStoreOver(context));
|
|
121
123
|
const memories = once(() => memoriesStoreOver(context));
|
|
122
124
|
const proposedActions = once(() => proposedActionsStoreOver(context));
|
|
@@ -227,6 +229,9 @@ const storeOver = (context) => {
|
|
|
227
229
|
get orders() {
|
|
228
230
|
return orders();
|
|
229
231
|
},
|
|
232
|
+
get deals() {
|
|
233
|
+
return deals();
|
|
234
|
+
},
|
|
230
235
|
get records() {
|
|
231
236
|
return records();
|
|
232
237
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wirecat/cli-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.585.0",
|
|
4
4
|
"description": "The messenger-neutral half of a messaging CLI: domain model, message locators, rendering, name resolution, the SQLite seam, the command skeleton and shared read commands, the send guard, run records and the message store",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Viacheslav Ptsarev",
|