@livefolio/db 0.1.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/README.md ADDED
@@ -0,0 +1,99 @@
1
+ # @livefolio/db
2
+
3
+ Database management for [Livefolio](https://livefol.io) — Supabase migrations, schemas, edge functions, and shared TypeScript types.
4
+
5
+ ## Setup
6
+
7
+ ```bash
8
+ npm install
9
+ npx supabase start
10
+ ```
11
+
12
+ Copy `.env.example` to `.env` and fill in the values from `npx supabase status`.
13
+
14
+ ## Usage
15
+
16
+ Install in a consuming Node.js project:
17
+
18
+ ```bash
19
+ npm install @livefolio/db
20
+ ```
21
+
22
+ ```typescript
23
+ import type { Tables, Enums } from "@livefolio/db";
24
+
25
+ type Strategy = Tables<"strategies">;
26
+ type Frequency = Enums<"trading_frequency">;
27
+ ```
28
+
29
+ The `Constants` export provides enum values as readonly arrays for runtime use:
30
+
31
+ ```typescript
32
+ import { Constants } from "@livefolio/db";
33
+
34
+ Constants.public.Enums.trading_frequency;
35
+ // ["Daily", "Weekly", "Monthly", "Quarterly", "Semiannually", "Yearly"]
36
+ ```
37
+
38
+ ## Development
39
+
40
+ ```bash
41
+ # Run all migrations and seeds against local DB
42
+ npx supabase db reset
43
+
44
+ # Regenerate TypeScript types after schema changes
45
+ npx supabase gen types typescript --local > src/database.types.ts
46
+
47
+ # Build the npm package (compiles src/ → dist/)
48
+ npm run build
49
+ ```
50
+
51
+ ### Migrations
52
+
53
+ Create a new migration:
54
+
55
+ ```bash
56
+ npx supabase migration new <name>
57
+ ```
58
+
59
+ This creates a timestamped SQL file in `supabase/migrations/`. Write your DDL there, then run `npx supabase db reset` to apply.
60
+
61
+ ### Edge Functions
62
+
63
+ Edge functions live in `supabase/functions/`. Each function has its own `deno.json` for Deno configuration.
64
+
65
+ Serve locally:
66
+
67
+ ```bash
68
+ npx supabase functions serve
69
+ ```
70
+
71
+ ## Releasing
72
+
73
+ This package is published to the public npm registry. CI handles it automatically:
74
+
75
+ 1. **On PR** — migrations are dry-run against the remote DB, and CI verifies the version in `package.json` was bumped
76
+ 2. **On merge to main** — migrations are pushed to the remote DB, and the package is built and published to npm
77
+
78
+ Before merging a PR, bump the version:
79
+
80
+ ```bash
81
+ npm version patch # 0.1.0 → 0.1.1
82
+ npm version minor # 0.1.1 → 0.2.0
83
+ npm version major # 0.2.0 → 1.0.0
84
+ ```
85
+
86
+ ## Project Structure
87
+
88
+ ```
89
+ src/ # TypeScript library (published to npm)
90
+ index.ts # Re-exports types + Constants
91
+ database.types.ts # Auto-generated from Supabase schema
92
+ supabase/
93
+ migrations/ # Timestamped SQL migrations (source of truth)
94
+ schemas/ # Numbered SQL files (human-readable reference)
95
+ seeds/ # Seed data (trading days calendar)
96
+ functions/ # Supabase Edge Functions (Deno)
97
+ templates/ # Email templates (magic link, email change)
98
+ config.toml # Local Supabase configuration
99
+ ```
@@ -0,0 +1,1046 @@
1
+ export type Json = string | number | boolean | null | {
2
+ [key: string]: Json | undefined;
3
+ } | Json[];
4
+ export type Database = {
5
+ graphql_public: {
6
+ Tables: {
7
+ [_ in never]: never;
8
+ };
9
+ Views: {
10
+ [_ in never]: never;
11
+ };
12
+ Functions: {
13
+ graphql: {
14
+ Args: {
15
+ extensions?: Json;
16
+ operationName?: string;
17
+ query?: string;
18
+ variables?: Json;
19
+ };
20
+ Returns: Json;
21
+ };
22
+ };
23
+ Enums: {
24
+ [_ in never]: never;
25
+ };
26
+ CompositeTypes: {
27
+ [_ in never]: never;
28
+ };
29
+ };
30
+ public: {
31
+ Tables: {
32
+ allocations: {
33
+ Row: {
34
+ condition: Json;
35
+ holdings: Json;
36
+ id: number;
37
+ name: string;
38
+ position: number;
39
+ strategy_id: number;
40
+ };
41
+ Insert: {
42
+ condition: Json;
43
+ holdings: Json;
44
+ id?: number;
45
+ name: string;
46
+ position?: number;
47
+ strategy_id: number;
48
+ };
49
+ Update: {
50
+ condition?: Json;
51
+ holdings?: Json;
52
+ id?: number;
53
+ name?: string;
54
+ position?: number;
55
+ strategy_id?: number;
56
+ };
57
+ Relationships: [
58
+ {
59
+ foreignKeyName: "allocations_strategy_id_fkey";
60
+ columns: ["strategy_id"];
61
+ isOneToOne: false;
62
+ referencedRelation: "strategies";
63
+ referencedColumns: ["id"];
64
+ }
65
+ ];
66
+ };
67
+ autodeploy_slots: {
68
+ Row: {
69
+ created_at: string;
70
+ user_id: string;
71
+ };
72
+ Insert: {
73
+ created_at?: string;
74
+ user_id: string;
75
+ };
76
+ Update: {
77
+ created_at?: string;
78
+ user_id?: string;
79
+ };
80
+ Relationships: [];
81
+ };
82
+ brokerage_connections: {
83
+ Row: {
84
+ created_at: string;
85
+ updated_at: string;
86
+ user_id: string;
87
+ user_secret_ciphertext: string;
88
+ };
89
+ Insert: {
90
+ created_at?: string;
91
+ updated_at?: string;
92
+ user_id: string;
93
+ user_secret_ciphertext: string;
94
+ };
95
+ Update: {
96
+ created_at?: string;
97
+ updated_at?: string;
98
+ user_id?: string;
99
+ user_secret_ciphertext?: string;
100
+ };
101
+ Relationships: [];
102
+ };
103
+ evaluations: {
104
+ Row: {
105
+ allocation_id: number;
106
+ evaluated_at: string;
107
+ id: number;
108
+ strategy_id: number;
109
+ trading_day_id: number;
110
+ };
111
+ Insert: {
112
+ allocation_id: number;
113
+ evaluated_at: string;
114
+ id?: number;
115
+ strategy_id: number;
116
+ trading_day_id: number;
117
+ };
118
+ Update: {
119
+ allocation_id?: number;
120
+ evaluated_at?: string;
121
+ id?: number;
122
+ strategy_id?: number;
123
+ trading_day_id?: number;
124
+ };
125
+ Relationships: [
126
+ {
127
+ foreignKeyName: "evaluations_allocation_id_fkey";
128
+ columns: ["allocation_id"];
129
+ isOneToOne: false;
130
+ referencedRelation: "allocations";
131
+ referencedColumns: ["id"];
132
+ },
133
+ {
134
+ foreignKeyName: "evaluations_strategy_id_fkey";
135
+ columns: ["strategy_id"];
136
+ isOneToOne: false;
137
+ referencedRelation: "strategies";
138
+ referencedColumns: ["id"];
139
+ },
140
+ {
141
+ foreignKeyName: "evaluations_trading_day_id_fkey";
142
+ columns: ["trading_day_id"];
143
+ isOneToOne: false;
144
+ referencedRelation: "trading_days";
145
+ referencedColumns: ["id"];
146
+ }
147
+ ];
148
+ };
149
+ indicators: {
150
+ Row: {
151
+ delay: number;
152
+ id: number;
153
+ lookback: number;
154
+ threshold: number | null;
155
+ ticker_id: number | null;
156
+ type: Database["public"]["Enums"]["indicator_type"];
157
+ unit: Database["public"]["Enums"]["unit"] | null;
158
+ };
159
+ Insert: {
160
+ delay: number;
161
+ id?: number;
162
+ lookback: number;
163
+ threshold?: number | null;
164
+ ticker_id?: number | null;
165
+ type: Database["public"]["Enums"]["indicator_type"];
166
+ unit?: Database["public"]["Enums"]["unit"] | null;
167
+ };
168
+ Update: {
169
+ delay?: number;
170
+ id?: number;
171
+ lookback?: number;
172
+ threshold?: number | null;
173
+ ticker_id?: number | null;
174
+ type?: Database["public"]["Enums"]["indicator_type"];
175
+ unit?: Database["public"]["Enums"]["unit"] | null;
176
+ };
177
+ Relationships: [
178
+ {
179
+ foreignKeyName: "indicators_ticker_id_fkey";
180
+ columns: ["ticker_id"];
181
+ isOneToOne: false;
182
+ referencedRelation: "tickers";
183
+ referencedColumns: ["id"];
184
+ }
185
+ ];
186
+ };
187
+ intraday_bars: {
188
+ Row: {
189
+ bars: Json;
190
+ created_at: string;
191
+ date: string;
192
+ id: number;
193
+ symbol: string;
194
+ };
195
+ Insert: {
196
+ bars: Json;
197
+ created_at?: string;
198
+ date: string;
199
+ id?: number;
200
+ symbol: string;
201
+ };
202
+ Update: {
203
+ bars?: Json;
204
+ created_at?: string;
205
+ date?: string;
206
+ id?: number;
207
+ symbol?: string;
208
+ };
209
+ Relationships: [];
210
+ };
211
+ oauth_authorization_codes: {
212
+ Row: {
213
+ client_id: string;
214
+ code_challenge: string;
215
+ code_challenge_method: string;
216
+ code_hash: string;
217
+ consumed_at: string | null;
218
+ created_at: string;
219
+ expires_at: string;
220
+ id: number;
221
+ redirect_uri: string;
222
+ scope: string;
223
+ updated_at: string;
224
+ user_id: string;
225
+ };
226
+ Insert: {
227
+ client_id: string;
228
+ code_challenge: string;
229
+ code_challenge_method: string;
230
+ code_hash: string;
231
+ consumed_at?: string | null;
232
+ created_at?: string;
233
+ expires_at: string;
234
+ id?: number;
235
+ redirect_uri: string;
236
+ scope: string;
237
+ updated_at?: string;
238
+ user_id: string;
239
+ };
240
+ Update: {
241
+ client_id?: string;
242
+ code_challenge?: string;
243
+ code_challenge_method?: string;
244
+ code_hash?: string;
245
+ consumed_at?: string | null;
246
+ created_at?: string;
247
+ expires_at?: string;
248
+ id?: number;
249
+ redirect_uri?: string;
250
+ scope?: string;
251
+ updated_at?: string;
252
+ user_id?: string;
253
+ };
254
+ Relationships: [
255
+ {
256
+ foreignKeyName: "oauth_authorization_codes_client_id_fkey";
257
+ columns: ["client_id"];
258
+ isOneToOne: false;
259
+ referencedRelation: "oauth_clients";
260
+ referencedColumns: ["client_id"];
261
+ }
262
+ ];
263
+ };
264
+ oauth_clients: {
265
+ Row: {
266
+ client_id: string;
267
+ client_secret_hash: string | null;
268
+ created_at: string;
269
+ grants: Json;
270
+ id: number;
271
+ name: string;
272
+ redirect_uris: Json;
273
+ revoked_at: string | null;
274
+ scopes: Json;
275
+ updated_at: string;
276
+ };
277
+ Insert: {
278
+ client_id: string;
279
+ client_secret_hash?: string | null;
280
+ created_at?: string;
281
+ grants?: Json;
282
+ id?: number;
283
+ name: string;
284
+ redirect_uris?: Json;
285
+ revoked_at?: string | null;
286
+ scopes?: Json;
287
+ updated_at?: string;
288
+ };
289
+ Update: {
290
+ client_id?: string;
291
+ client_secret_hash?: string | null;
292
+ created_at?: string;
293
+ grants?: Json;
294
+ id?: number;
295
+ name?: string;
296
+ redirect_uris?: Json;
297
+ revoked_at?: string | null;
298
+ scopes?: Json;
299
+ updated_at?: string;
300
+ };
301
+ Relationships: [];
302
+ };
303
+ oauth_refresh_tokens: {
304
+ Row: {
305
+ client_id: string;
306
+ created_at: string;
307
+ expires_at: string;
308
+ family_id: string | null;
309
+ id: number;
310
+ replaced_by_token_hash: string | null;
311
+ revoked_at: string | null;
312
+ scope: string;
313
+ token_hash: string;
314
+ updated_at: string;
315
+ user_id: string;
316
+ };
317
+ Insert: {
318
+ client_id: string;
319
+ created_at?: string;
320
+ expires_at: string;
321
+ family_id?: string | null;
322
+ id?: number;
323
+ replaced_by_token_hash?: string | null;
324
+ revoked_at?: string | null;
325
+ scope: string;
326
+ token_hash: string;
327
+ updated_at?: string;
328
+ user_id: string;
329
+ };
330
+ Update: {
331
+ client_id?: string;
332
+ created_at?: string;
333
+ expires_at?: string;
334
+ family_id?: string | null;
335
+ id?: number;
336
+ replaced_by_token_hash?: string | null;
337
+ revoked_at?: string | null;
338
+ scope?: string;
339
+ token_hash?: string;
340
+ updated_at?: string;
341
+ user_id?: string;
342
+ };
343
+ Relationships: [
344
+ {
345
+ foreignKeyName: "oauth_refresh_tokens_client_id_fkey";
346
+ columns: ["client_id"];
347
+ isOneToOne: false;
348
+ referencedRelation: "oauth_clients";
349
+ referencedColumns: ["client_id"];
350
+ }
351
+ ];
352
+ };
353
+ orders: {
354
+ Row: {
355
+ account_id: string;
356
+ action: string;
357
+ allocation_name: string;
358
+ batch_id: string;
359
+ confirmed_at: string | null;
360
+ created_at: string;
361
+ error: string | null;
362
+ estimated_price: number | null;
363
+ estimated_value: number | null;
364
+ expires_at: string;
365
+ id: number;
366
+ quantity: number;
367
+ rejected_at: string | null;
368
+ snaptrade_order_id: string | null;
369
+ snaptrade_response: Json | null;
370
+ status: string | null;
371
+ strategy_id: number;
372
+ symbol: string;
373
+ updated_at: string;
374
+ user_id: string;
375
+ };
376
+ Insert: {
377
+ account_id: string;
378
+ action: string;
379
+ allocation_name: string;
380
+ batch_id: string;
381
+ confirmed_at?: string | null;
382
+ created_at?: string;
383
+ error?: string | null;
384
+ estimated_price?: number | null;
385
+ estimated_value?: number | null;
386
+ expires_at: string;
387
+ id?: number;
388
+ quantity: number;
389
+ rejected_at?: string | null;
390
+ snaptrade_order_id?: string | null;
391
+ snaptrade_response?: Json | null;
392
+ status?: string | null;
393
+ strategy_id: number;
394
+ symbol: string;
395
+ updated_at?: string;
396
+ user_id: string;
397
+ };
398
+ Update: {
399
+ account_id?: string;
400
+ action?: string;
401
+ allocation_name?: string;
402
+ batch_id?: string;
403
+ confirmed_at?: string | null;
404
+ created_at?: string;
405
+ error?: string | null;
406
+ estimated_price?: number | null;
407
+ estimated_value?: number | null;
408
+ expires_at?: string;
409
+ id?: number;
410
+ quantity?: number;
411
+ rejected_at?: string | null;
412
+ snaptrade_order_id?: string | null;
413
+ snaptrade_response?: Json | null;
414
+ status?: string | null;
415
+ strategy_id?: number;
416
+ symbol?: string;
417
+ updated_at?: string;
418
+ user_id?: string;
419
+ };
420
+ Relationships: [
421
+ {
422
+ foreignKeyName: "orders_strategy_id_fkey";
423
+ columns: ["strategy_id"];
424
+ isOneToOne: false;
425
+ referencedRelation: "strategies";
426
+ referencedColumns: ["id"];
427
+ }
428
+ ];
429
+ };
430
+ portfolio_cash_flows: {
431
+ Row: {
432
+ account_id: string;
433
+ amount_cents: number;
434
+ created_at: string;
435
+ currency: string;
436
+ description: string | null;
437
+ id: number;
438
+ snaptrade_id: string;
439
+ trade_date: string;
440
+ type: string;
441
+ user_id: string;
442
+ };
443
+ Insert: {
444
+ account_id: string;
445
+ amount_cents: number;
446
+ created_at?: string;
447
+ currency?: string;
448
+ description?: string | null;
449
+ id?: number;
450
+ snaptrade_id: string;
451
+ trade_date: string;
452
+ type: string;
453
+ user_id: string;
454
+ };
455
+ Update: {
456
+ account_id?: string;
457
+ amount_cents?: number;
458
+ created_at?: string;
459
+ currency?: string;
460
+ description?: string | null;
461
+ id?: number;
462
+ snaptrade_id?: string;
463
+ trade_date?: string;
464
+ type?: string;
465
+ user_id?: string;
466
+ };
467
+ Relationships: [];
468
+ };
469
+ portfolio_snapshots: {
470
+ Row: {
471
+ accounts: Json;
472
+ created_at: string;
473
+ currency: string;
474
+ date: string;
475
+ id: number;
476
+ total_balance_cents: number;
477
+ user_id: string;
478
+ };
479
+ Insert: {
480
+ accounts?: Json;
481
+ created_at?: string;
482
+ currency?: string;
483
+ date: string;
484
+ id?: number;
485
+ total_balance_cents: number;
486
+ user_id: string;
487
+ };
488
+ Update: {
489
+ accounts?: Json;
490
+ created_at?: string;
491
+ currency?: string;
492
+ date?: string;
493
+ id?: number;
494
+ total_balance_cents?: number;
495
+ user_id?: string;
496
+ };
497
+ Relationships: [];
498
+ };
499
+ portfolio_state: {
500
+ Row: {
501
+ created_at: string | null;
502
+ date: string;
503
+ id: number;
504
+ strategy_id: number;
505
+ symbol: string;
506
+ updated_at: string | null;
507
+ weight: number;
508
+ };
509
+ Insert: {
510
+ created_at?: string | null;
511
+ date: string;
512
+ id?: number;
513
+ strategy_id: number;
514
+ symbol: string;
515
+ updated_at?: string | null;
516
+ weight: number;
517
+ };
518
+ Update: {
519
+ created_at?: string | null;
520
+ date?: string;
521
+ id?: number;
522
+ strategy_id?: number;
523
+ symbol?: string;
524
+ updated_at?: string | null;
525
+ weight?: number;
526
+ };
527
+ Relationships: [
528
+ {
529
+ foreignKeyName: "portfolio_state_strategy_id_fkey";
530
+ columns: ["strategy_id"];
531
+ isOneToOne: false;
532
+ referencedRelation: "strategies";
533
+ referencedColumns: ["id"];
534
+ }
535
+ ];
536
+ };
537
+ price_observations: {
538
+ Row: {
539
+ created_at: string | null;
540
+ date: string;
541
+ id: number;
542
+ price_330pm_et: number;
543
+ price_400pm_et: number;
544
+ symbol: string;
545
+ timestamp_330pm_et: string | null;
546
+ timestamp_400pm_et: string | null;
547
+ updated_at: string | null;
548
+ };
549
+ Insert: {
550
+ created_at?: string | null;
551
+ date: string;
552
+ id?: number;
553
+ price_330pm_et: number;
554
+ price_400pm_et: number;
555
+ symbol: string;
556
+ timestamp_330pm_et?: string | null;
557
+ timestamp_400pm_et?: string | null;
558
+ updated_at?: string | null;
559
+ };
560
+ Update: {
561
+ created_at?: string | null;
562
+ date?: string;
563
+ id?: number;
564
+ price_330pm_et?: number;
565
+ price_400pm_et?: number;
566
+ symbol?: string;
567
+ timestamp_330pm_et?: string | null;
568
+ timestamp_400pm_et?: string | null;
569
+ updated_at?: string | null;
570
+ };
571
+ Relationships: [];
572
+ };
573
+ signal_evaluations: {
574
+ Row: {
575
+ evaluated_at: string;
576
+ id: number;
577
+ result: boolean;
578
+ signal_id: number;
579
+ trading_day_id: number;
580
+ };
581
+ Insert: {
582
+ evaluated_at: string;
583
+ id?: number;
584
+ result: boolean;
585
+ signal_id: number;
586
+ trading_day_id: number;
587
+ };
588
+ Update: {
589
+ evaluated_at?: string;
590
+ id?: number;
591
+ result?: boolean;
592
+ signal_id?: number;
593
+ trading_day_id?: number;
594
+ };
595
+ Relationships: [
596
+ {
597
+ foreignKeyName: "signal_evaluations_signal_id_fkey";
598
+ columns: ["signal_id"];
599
+ isOneToOne: false;
600
+ referencedRelation: "signals";
601
+ referencedColumns: ["id"];
602
+ },
603
+ {
604
+ foreignKeyName: "signal_evaluations_trading_day_id_fkey";
605
+ columns: ["trading_day_id"];
606
+ isOneToOne: false;
607
+ referencedRelation: "trading_days";
608
+ referencedColumns: ["id"];
609
+ }
610
+ ];
611
+ };
612
+ signals: {
613
+ Row: {
614
+ comparison: Database["public"]["Enums"]["comparison"];
615
+ id: number;
616
+ indicator_id_1: number;
617
+ indicator_id_2: number;
618
+ name: string;
619
+ strategy_id: number;
620
+ tolerance: number;
621
+ };
622
+ Insert: {
623
+ comparison: Database["public"]["Enums"]["comparison"];
624
+ id?: number;
625
+ indicator_id_1: number;
626
+ indicator_id_2: number;
627
+ name: string;
628
+ strategy_id: number;
629
+ tolerance: number;
630
+ };
631
+ Update: {
632
+ comparison?: Database["public"]["Enums"]["comparison"];
633
+ id?: number;
634
+ indicator_id_1?: number;
635
+ indicator_id_2?: number;
636
+ name?: string;
637
+ strategy_id?: number;
638
+ tolerance?: number;
639
+ };
640
+ Relationships: [
641
+ {
642
+ foreignKeyName: "signals_indicator_id_1_fkey";
643
+ columns: ["indicator_id_1"];
644
+ isOneToOne: false;
645
+ referencedRelation: "indicators";
646
+ referencedColumns: ["id"];
647
+ },
648
+ {
649
+ foreignKeyName: "signals_indicator_id_2_fkey";
650
+ columns: ["indicator_id_2"];
651
+ isOneToOne: false;
652
+ referencedRelation: "indicators";
653
+ referencedColumns: ["id"];
654
+ },
655
+ {
656
+ foreignKeyName: "signals_strategy_id_fkey";
657
+ columns: ["strategy_id"];
658
+ isOneToOne: false;
659
+ referencedRelation: "strategies";
660
+ referencedColumns: ["id"];
661
+ }
662
+ ];
663
+ };
664
+ strategies: {
665
+ Row: {
666
+ backtest: Json | null;
667
+ created_at: string;
668
+ definition: Json | null;
669
+ id: number;
670
+ link_id: string;
671
+ name: string;
672
+ narrative: Json | null;
673
+ trading_frequency: Database["public"]["Enums"]["trading_frequency"];
674
+ trading_offset: number;
675
+ updated_at: string | null;
676
+ };
677
+ Insert: {
678
+ backtest?: Json | null;
679
+ created_at?: string;
680
+ definition?: Json | null;
681
+ id?: number;
682
+ link_id: string;
683
+ name: string;
684
+ narrative?: Json | null;
685
+ trading_frequency: Database["public"]["Enums"]["trading_frequency"];
686
+ trading_offset: number;
687
+ updated_at?: string | null;
688
+ };
689
+ Update: {
690
+ backtest?: Json | null;
691
+ created_at?: string;
692
+ definition?: Json | null;
693
+ id?: number;
694
+ link_id?: string;
695
+ name?: string;
696
+ narrative?: Json | null;
697
+ trading_frequency?: Database["public"]["Enums"]["trading_frequency"];
698
+ trading_offset?: number;
699
+ updated_at?: string | null;
700
+ };
701
+ Relationships: [];
702
+ };
703
+ strategy_performance: {
704
+ Row: {
705
+ allocation_name: string;
706
+ created_at: string | null;
707
+ date: string;
708
+ id: number;
709
+ portfolio_value: number;
710
+ strategy_id: number;
711
+ updated_at: string | null;
712
+ };
713
+ Insert: {
714
+ allocation_name: string;
715
+ created_at?: string | null;
716
+ date: string;
717
+ id?: number;
718
+ portfolio_value: number;
719
+ strategy_id: number;
720
+ updated_at?: string | null;
721
+ };
722
+ Update: {
723
+ allocation_name?: string;
724
+ created_at?: string | null;
725
+ date?: string;
726
+ id?: number;
727
+ portfolio_value?: number;
728
+ strategy_id?: number;
729
+ updated_at?: string | null;
730
+ };
731
+ Relationships: [
732
+ {
733
+ foreignKeyName: "strategy_performance_strategy_id_fkey";
734
+ columns: ["strategy_id"];
735
+ isOneToOne: false;
736
+ referencedRelation: "strategies";
737
+ referencedColumns: ["id"];
738
+ }
739
+ ];
740
+ };
741
+ subscriptions: {
742
+ Row: {
743
+ account_id: string | null;
744
+ created_at: string;
745
+ id: number;
746
+ strategy_id: number;
747
+ updated_at: string;
748
+ user_id: string;
749
+ };
750
+ Insert: {
751
+ account_id?: string | null;
752
+ created_at?: string;
753
+ id?: number;
754
+ strategy_id: number;
755
+ updated_at?: string;
756
+ user_id: string;
757
+ };
758
+ Update: {
759
+ account_id?: string | null;
760
+ created_at?: string;
761
+ id?: number;
762
+ strategy_id?: number;
763
+ updated_at?: string;
764
+ user_id?: string;
765
+ };
766
+ Relationships: [
767
+ {
768
+ foreignKeyName: "subscriptions_strategy_id_fkey";
769
+ columns: ["strategy_id"];
770
+ isOneToOne: false;
771
+ referencedRelation: "strategies";
772
+ referencedColumns: ["id"];
773
+ }
774
+ ];
775
+ };
776
+ tickers: {
777
+ Row: {
778
+ id: number;
779
+ leverage: number;
780
+ symbol: string;
781
+ };
782
+ Insert: {
783
+ id?: number;
784
+ leverage: number;
785
+ symbol: string;
786
+ };
787
+ Update: {
788
+ id?: number;
789
+ leverage?: number;
790
+ symbol?: string;
791
+ };
792
+ Relationships: [];
793
+ };
794
+ trading_days: {
795
+ Row: {
796
+ close: string;
797
+ date: string;
798
+ id: number;
799
+ overnight: string;
800
+ post: string;
801
+ pre: string;
802
+ regular: string;
803
+ };
804
+ Insert: {
805
+ close: string;
806
+ date: string;
807
+ id?: number;
808
+ overnight: string;
809
+ post: string;
810
+ pre: string;
811
+ regular: string;
812
+ };
813
+ Update: {
814
+ close?: string;
815
+ date?: string;
816
+ id?: number;
817
+ overnight?: string;
818
+ post?: string;
819
+ pre?: string;
820
+ regular?: string;
821
+ };
822
+ Relationships: [];
823
+ };
824
+ user_activities: {
825
+ Row: {
826
+ created_at: string;
827
+ id: number;
828
+ metadata: Json;
829
+ occurred_at: string;
830
+ type: Database["public"]["Enums"]["activity_type"];
831
+ user_id: string;
832
+ };
833
+ Insert: {
834
+ created_at?: string;
835
+ id?: number;
836
+ metadata?: Json;
837
+ occurred_at?: string;
838
+ type: Database["public"]["Enums"]["activity_type"];
839
+ user_id: string;
840
+ };
841
+ Update: {
842
+ created_at?: string;
843
+ id?: number;
844
+ metadata?: Json;
845
+ occurred_at?: string;
846
+ type?: Database["public"]["Enums"]["activity_type"];
847
+ user_id?: string;
848
+ };
849
+ Relationships: [];
850
+ };
851
+ user_tiers: {
852
+ Row: {
853
+ created_at: string;
854
+ id: number;
855
+ payment_customer_id: string | null;
856
+ payment_subscription_id: string | null;
857
+ tier: string;
858
+ trial_ends_at: string | null;
859
+ updated_at: string;
860
+ user_id: string;
861
+ };
862
+ Insert: {
863
+ created_at?: string;
864
+ id?: number;
865
+ payment_customer_id?: string | null;
866
+ payment_subscription_id?: string | null;
867
+ tier?: string;
868
+ trial_ends_at?: string | null;
869
+ updated_at?: string;
870
+ user_id: string;
871
+ };
872
+ Update: {
873
+ created_at?: string;
874
+ id?: number;
875
+ payment_customer_id?: string | null;
876
+ payment_subscription_id?: string | null;
877
+ tier?: string;
878
+ trial_ends_at?: string | null;
879
+ updated_at?: string;
880
+ user_id?: string;
881
+ };
882
+ Relationships: [];
883
+ };
884
+ };
885
+ Views: {
886
+ orders_with_email: {
887
+ Row: {
888
+ account_id: string | null;
889
+ action: string | null;
890
+ allocation_name: string | null;
891
+ batch_id: string | null;
892
+ confirmed_at: string | null;
893
+ created_at: string | null;
894
+ email: string | null;
895
+ error: string | null;
896
+ estimated_price: number | null;
897
+ estimated_value: number | null;
898
+ expires_at: string | null;
899
+ id: number | null;
900
+ quantity: number | null;
901
+ rejected_at: string | null;
902
+ snaptrade_order_id: string | null;
903
+ snaptrade_response: Json | null;
904
+ status: string | null;
905
+ strategy_id: number | null;
906
+ symbol: string | null;
907
+ updated_at: string | null;
908
+ user_id: string | null;
909
+ };
910
+ Relationships: [
911
+ {
912
+ foreignKeyName: "orders_strategy_id_fkey";
913
+ columns: ["strategy_id"];
914
+ isOneToOne: false;
915
+ referencedRelation: "strategies";
916
+ referencedColumns: ["id"];
917
+ }
918
+ ];
919
+ };
920
+ subscriptions_with_email: {
921
+ Row: {
922
+ account_id: string | null;
923
+ created_at: string | null;
924
+ email: string | null;
925
+ id: number | null;
926
+ strategy_id: number | null;
927
+ updated_at: string | null;
928
+ user_id: string | null;
929
+ };
930
+ Relationships: [
931
+ {
932
+ foreignKeyName: "subscriptions_strategy_id_fkey";
933
+ columns: ["strategy_id"];
934
+ isOneToOne: false;
935
+ referencedRelation: "strategies";
936
+ referencedColumns: ["id"];
937
+ }
938
+ ];
939
+ };
940
+ };
941
+ Functions: {
942
+ claim_autodeploy_slot: {
943
+ Args: {
944
+ p_user_id: string;
945
+ };
946
+ Returns: boolean;
947
+ };
948
+ get_user_id_by_email: {
949
+ Args: {
950
+ lookup_email: string;
951
+ };
952
+ Returns: string;
953
+ };
954
+ upsert_evaluation: {
955
+ Args: {
956
+ p_allocation_name: string;
957
+ p_evaluated_at: string;
958
+ p_link_id: string;
959
+ p_signal_results: Json;
960
+ };
961
+ Returns: undefined;
962
+ };
963
+ upsert_strategy: {
964
+ Args: {
965
+ strategy: Json;
966
+ };
967
+ Returns: Json;
968
+ };
969
+ };
970
+ Enums: {
971
+ activity_type: "subscription_created" | "subscription_removed" | "subscription_changed" | "autodeploy_enabled" | "autodeploy_disabled" | "allocation_switched" | "order_created" | "order_confirmed" | "order_rejected";
972
+ comparison: ">" | "<" | "=";
973
+ indicator_type: "SMA" | "EMA" | "Price" | "Return" | "Volatility" | "Drawdown" | "RSI" | "VIX" | "VIX3M" | "T3M" | "T6M" | "T1Y" | "T2Y" | "T3Y" | "T5Y" | "T7Y" | "T10Y" | "T20Y" | "T30Y" | "Month" | "Day of Week" | "Day of Month" | "Day of Year" | "Threshold";
974
+ trading_frequency: "Daily" | "Weekly" | "Monthly" | "Bi-monthly" | "Quarterly" | "Every 4 Months" | "Semiannually" | "Yearly";
975
+ unit: "%" | "$";
976
+ };
977
+ CompositeTypes: {
978
+ [_ in never]: never;
979
+ };
980
+ };
981
+ };
982
+ type DatabaseWithoutInternals = Omit<Database, "__InternalSupabase">;
983
+ type DefaultSchema = DatabaseWithoutInternals[Extract<keyof Database, "public">];
984
+ export type Tables<DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema["Tables"] & DefaultSchema["Views"]) | {
985
+ schema: keyof DatabaseWithoutInternals;
986
+ }, TableName extends DefaultSchemaTableNameOrOptions extends {
987
+ schema: keyof DatabaseWithoutInternals;
988
+ } ? keyof (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] & DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"]) : never = never> = DefaultSchemaTableNameOrOptions extends {
989
+ schema: keyof DatabaseWithoutInternals;
990
+ } ? (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] & DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"])[TableName] extends {
991
+ Row: infer R;
992
+ } ? R : never : DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema["Tables"] & DefaultSchema["Views"]) ? (DefaultSchema["Tables"] & DefaultSchema["Views"])[DefaultSchemaTableNameOrOptions] extends {
993
+ Row: infer R;
994
+ } ? R : never : never;
995
+ export type TablesInsert<DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"] | {
996
+ schema: keyof DatabaseWithoutInternals;
997
+ }, TableName extends DefaultSchemaTableNameOrOptions extends {
998
+ schema: keyof DatabaseWithoutInternals;
999
+ } ? keyof DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] : never = never> = DefaultSchemaTableNameOrOptions extends {
1000
+ schema: keyof DatabaseWithoutInternals;
1001
+ } ? DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends {
1002
+ Insert: infer I;
1003
+ } ? I : never : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"] ? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends {
1004
+ Insert: infer I;
1005
+ } ? I : never : never;
1006
+ export type TablesUpdate<DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"] | {
1007
+ schema: keyof DatabaseWithoutInternals;
1008
+ }, TableName extends DefaultSchemaTableNameOrOptions extends {
1009
+ schema: keyof DatabaseWithoutInternals;
1010
+ } ? keyof DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] : never = never> = DefaultSchemaTableNameOrOptions extends {
1011
+ schema: keyof DatabaseWithoutInternals;
1012
+ } ? DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends {
1013
+ Update: infer U;
1014
+ } ? U : never : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"] ? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends {
1015
+ Update: infer U;
1016
+ } ? U : never : never;
1017
+ export type Enums<DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema["Enums"] | {
1018
+ schema: keyof DatabaseWithoutInternals;
1019
+ }, EnumName extends DefaultSchemaEnumNameOrOptions extends {
1020
+ schema: keyof DatabaseWithoutInternals;
1021
+ } ? keyof DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"] : never = never> = DefaultSchemaEnumNameOrOptions extends {
1022
+ schema: keyof DatabaseWithoutInternals;
1023
+ } ? DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"][EnumName] : DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema["Enums"] ? DefaultSchema["Enums"][DefaultSchemaEnumNameOrOptions] : never;
1024
+ export type CompositeTypes<PublicCompositeTypeNameOrOptions extends keyof DefaultSchema["CompositeTypes"] | {
1025
+ schema: keyof DatabaseWithoutInternals;
1026
+ }, CompositeTypeName extends PublicCompositeTypeNameOrOptions extends {
1027
+ schema: keyof DatabaseWithoutInternals;
1028
+ } ? keyof DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"] : never = never> = PublicCompositeTypeNameOrOptions extends {
1029
+ schema: keyof DatabaseWithoutInternals;
1030
+ } ? DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName] : PublicCompositeTypeNameOrOptions extends keyof DefaultSchema["CompositeTypes"] ? DefaultSchema["CompositeTypes"][PublicCompositeTypeNameOrOptions] : never;
1031
+ export declare const Constants: {
1032
+ readonly graphql_public: {
1033
+ readonly Enums: {};
1034
+ };
1035
+ readonly public: {
1036
+ readonly Enums: {
1037
+ readonly activity_type: readonly ["subscription_created", "subscription_removed", "subscription_changed", "autodeploy_enabled", "autodeploy_disabled", "allocation_switched", "order_created", "order_confirmed", "order_rejected"];
1038
+ readonly comparison: readonly [">", "<", "="];
1039
+ readonly indicator_type: readonly ["SMA", "EMA", "Price", "Return", "Volatility", "Drawdown", "RSI", "VIX", "VIX3M", "T3M", "T6M", "T1Y", "T2Y", "T3Y", "T5Y", "T7Y", "T10Y", "T20Y", "T30Y", "Month", "Day of Week", "Day of Month", "Day of Year", "Threshold"];
1040
+ readonly trading_frequency: readonly ["Daily", "Weekly", "Monthly", "Bi-monthly", "Quarterly", "Every 4 Months", "Semiannually", "Yearly"];
1041
+ readonly unit: readonly ["%", "$"];
1042
+ };
1043
+ };
1044
+ };
1045
+ export {};
1046
+ //# sourceMappingURL=database.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.types.d.ts","sourceRoot":"","sources":["../src/database.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ export const Constants = {
2
+ graphql_public: {
3
+ Enums: {},
4
+ },
5
+ public: {
6
+ Enums: {
7
+ activity_type: [
8
+ "subscription_created",
9
+ "subscription_removed",
10
+ "subscription_changed",
11
+ "autodeploy_enabled",
12
+ "autodeploy_disabled",
13
+ "allocation_switched",
14
+ "order_created",
15
+ "order_confirmed",
16
+ "order_rejected",
17
+ ],
18
+ comparison: [">", "<", "="],
19
+ indicator_type: [
20
+ "SMA",
21
+ "EMA",
22
+ "Price",
23
+ "Return",
24
+ "Volatility",
25
+ "Drawdown",
26
+ "RSI",
27
+ "VIX",
28
+ "VIX3M",
29
+ "T3M",
30
+ "T6M",
31
+ "T1Y",
32
+ "T2Y",
33
+ "T3Y",
34
+ "T5Y",
35
+ "T7Y",
36
+ "T10Y",
37
+ "T20Y",
38
+ "T30Y",
39
+ "Month",
40
+ "Day of Week",
41
+ "Day of Month",
42
+ "Day of Year",
43
+ "Threshold",
44
+ ],
45
+ trading_frequency: [
46
+ "Daily",
47
+ "Weekly",
48
+ "Monthly",
49
+ "Bi-monthly",
50
+ "Quarterly",
51
+ "Every 4 Months",
52
+ "Semiannually",
53
+ "Yearly",
54
+ ],
55
+ unit: ["%", "$"],
56
+ },
57
+ },
58
+ };
@@ -0,0 +1,3 @@
1
+ export type { Json, Database, Tables, TablesInsert, TablesUpdate, Enums, CompositeTypes } from "./database.types.js";
2
+ export { Constants } from "./database.types.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ export { Constants } from "./database.types.js";
package/package.json ADDED
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "@livefolio/db",
3
+ "version": "0.1.0",
4
+ "description": "Database management library for Livefolio",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ }
13
+ },
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "scripts": {
18
+ "build": "tsc",
19
+ "prepublishOnly": "npm run build"
20
+ },
21
+ "devDependencies": {
22
+ "supabase": "^2.76.15",
23
+ "typescript": "^5.7.0"
24
+ },
25
+ "license": "UNLICENSED"
26
+ }