@glissandoo/lib 1.102.21 → 1.103.1

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.
@@ -44,6 +44,15 @@ export declare namespace GroupRepertoryFbFunctionsTypes {
44
44
  path: string;
45
45
  filename: string;
46
46
  }
47
+ export interface DownloadThemeBySectionsParams {
48
+ groupId: string;
49
+ themeId: string;
50
+ sectionIds: FileSectionId[];
51
+ }
52
+ export interface DownloadThemeBySectionsResult {
53
+ path: string;
54
+ filename: string;
55
+ }
47
56
  export interface DownloadFileType {
48
57
  id: string;
49
58
  tagId: string | null;
@@ -86,6 +86,7 @@ export declare enum FbFunctionName {
86
86
  GroupRepertoryCloneBetweenGroups = "groupRepertory-cloneBetweenGroups",
87
87
  GroupRepertoryDownloadFilesBySection = "groupRepertory-downloadFilesBySection",
88
88
  GroupRepertoryDownloadThemeFiles = "groupRepertory-downloadThemeFiles",
89
+ GroupRepertoryDownloadThemeBySections = "groupRepertory-downloadFilesBySections",
89
90
  GroupRepertoryEdit = "groupRepertory-edit",
90
91
  GroupRepertoryIdentifyInstruments = "groupRepertory-identifyInstruments",
91
92
  GroupRepertoryIdentifyInstrumentsFromFileNames = "groupRepertory-identifyInstrumentsFromFileNames",
@@ -90,6 +90,7 @@ var FbFunctionName;
90
90
  FbFunctionName["GroupRepertoryCloneBetweenGroups"] = "groupRepertory-cloneBetweenGroups";
91
91
  FbFunctionName["GroupRepertoryDownloadFilesBySection"] = "groupRepertory-downloadFilesBySection";
92
92
  FbFunctionName["GroupRepertoryDownloadThemeFiles"] = "groupRepertory-downloadThemeFiles";
93
+ FbFunctionName["GroupRepertoryDownloadThemeBySections"] = "groupRepertory-downloadFilesBySections";
93
94
  FbFunctionName["GroupRepertoryEdit"] = "groupRepertory-edit";
94
95
  FbFunctionName["GroupRepertoryIdentifyInstruments"] = "groupRepertory-identifyInstruments";
95
96
  FbFunctionName["GroupRepertoryIdentifyInstrumentsFromFileNames"] = "groupRepertory-identifyInstrumentsFromFileNames";
@@ -96,6 +96,7 @@ const regionByFunctions = {
96
96
  [index_1.FbFunctionName.GroupRepertoryClaimMusicSheet]: GCloudRegions.UsCentral1,
97
97
  [index_1.FbFunctionName.GroupRepertoryCloneBetweenGroups]: GCloudRegions.EuropeWest6,
98
98
  [index_1.FbFunctionName.GroupRepertoryDownloadFilesBySection]: GCloudRegions.EuropeWest6,
99
+ [index_1.FbFunctionName.GroupRepertoryDownloadThemeBySections]: GCloudRegions.EuropeWest6,
99
100
  [index_1.FbFunctionName.GroupRepertoryDownloadThemeFiles]: GCloudRegions.UsCentral1,
100
101
  [index_1.FbFunctionName.GroupRepertoryEdit]: GCloudRegions.UsCentral1,
101
102
  [index_1.FbFunctionName.GroupRepertoryIdentifyInstruments]: GCloudRegions.UsCentral1,
@@ -3,7 +3,7 @@ import { PlansGroup } from '../../helpers/plans';
3
3
  import { LanguagesTypes } from '../../lang';
4
4
  import { DocumentModel } from '../Model';
5
5
  import GroupBasic from './basic';
6
- import { GroupConfigShowAttendanceToMembers, GroupData, GroupStatus, SocialNetwork } from './types';
6
+ import { CustomGroupInstrument, GroupConfigShowAttendanceToMembers, GroupData, GroupStatus, SocialNetwork } from './types';
7
7
  export default class Group extends GroupBasic<GroupData> {
8
8
  constructor(doc: DocumentModel, lang?: LanguagesTypes);
9
9
  get owner(): DocumentReference;
@@ -82,13 +82,18 @@ export default class Group extends GroupBasic<GroupData> {
82
82
  get trialEndAt(): Date;
83
83
  get glissandooAdminUrl(): string;
84
84
  get createdOn(): import("../../helpers/types").CreatedOn;
85
- get instruments(): Partial<Record<import("../../helpers/instruments").DefaultInstrumentId, import("./types").DefaultGroupInstrument>> & Record<`customInstrument-${string}`, import("./types").CustomGroupInstrument>;
85
+ get instruments(): Partial<Record<import("../../helpers/instruments").DefaultInstrumentId, import("./types").DefaultGroupInstrument>> & Record<`customInstrument-${string}`, CustomGroupInstrument>;
86
86
  get instrumentsList(): Pick<(import("./types").DefaultGroupInstrument & {
87
87
  id: import("../../helpers/instruments").DefaultInstrumentId | `customInstrument-${string}`;
88
- }) | (import("./types").CustomGroupInstrument & {
88
+ }) | (CustomGroupInstrument & {
89
89
  id: import("../../helpers/instruments").DefaultInstrumentId | `customInstrument-${string}`;
90
90
  }), "id">[];
91
91
  get instrumentsIds(): (import("../../helpers/instruments").DefaultInstrumentId | `customInstrument-${string}`)[];
92
+ get customInstruments(): Record<`customInstrument-${string}`, CustomGroupInstrument>;
93
+ get customInstrumentsList(): Pick<CustomGroupInstrument & {
94
+ id: `customInstrument-${string}`;
95
+ }, "name" | "id" | "icon" | "basedOnInstrument">[];
96
+ get customInstrumentsIds(): `customInstrument-${string}`[];
92
97
  get visitedDashboardAt(): Record<string, FirebaseFirestore.Timestamp>;
93
98
  get onboardingMessages(): import("./types").GroupOnboardingMessage[];
94
99
  get rollcallLink(): string | null;
@@ -232,6 +232,15 @@ class Group extends basic_1.default {
232
232
  get instrumentsIds() {
233
233
  return this.instrumentsList.map(({ id }) => id);
234
234
  }
235
+ get customInstruments() {
236
+ return Object.fromEntries(Object.entries(this.instruments).filter(([key]) => key.startsWith('customInstrument-')));
237
+ }
238
+ get customInstrumentsList() {
239
+ return (0, objects_1.orderedMapToArray)(this.customInstruments);
240
+ }
241
+ get customInstrumentsIds() {
242
+ return this.customInstrumentsList.map(({ id }) => id);
243
+ }
235
244
  get visitedDashboardAt() {
236
245
  return this.data.visitedDashboardAt || null;
237
246
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@glissandoo/lib",
3
- "version": "1.102.21",
3
+ "version": "1.103.1",
4
4
  "description": "Glissandoo library js",
5
5
  "main": "./index.js",
6
6
  "types": "./index.d.ts",
@@ -18,7 +18,16 @@
18
18
  "preversion": "npm run lint",
19
19
  "publish:beta": "npm publish --tag beta",
20
20
  "set-husky": "node scripts/setHusky.js",
21
- "supabase:types": "supabase gen types typescript --local > src/types/supabase/generated.ts; prettier --write src/types/supabase/generated.ts",
21
+ "supabase:dev:env:update": "firebase --project=dev functions:secrets:set SUPABASE_ENV --data-file supabase/.dev.env",
22
+ "supabase:dev:env:download": "firebase --project=dev functions:secrets:access SUPABASE_ENV > supabase/.dev.env",
23
+ "supabase:prod:env:update": "firebase --project=production functions:secrets:set SUPABASE_ENV --data-file supabase/.prod.env",
24
+ "supabase:prod:env:download": "firebase --project=production functions:secrets:access SUPABASE_ENV > supabase/.prod.env",
25
+ "runtimeconfig:download": "firebase functions:secrets:access RUNTIMECONFIG > .runtimeconfig.json",
26
+ "supabase:dev:link": "export $(grep -v '^#' supabase/.dev.env | xargs) && supabase link --project-ref=$SUPABASE_PROJECT_REF",
27
+ "supabase:prod:link": "export $(grep -v '^#' supabase/.prod.env | xargs) && supabase link --project-ref=$SUPABASE_PROJECT_REF",
28
+ "supabase:dev": "export $(grep -v '^#' supabase/.dev.env | xargs) && LINKED_REF=$(supabase projects list | grep '●' | awk -F '|' '{print $3}' | xargs) && [ \"$LINKED_REF\" != \"$SUPABASE_PROJECT_REF\" ] && npm run supabase:dev:link; supabase",
29
+ "supabase:prod": "export $(grep -v '^#' supabase/.prod.env | xargs) && LINKED_REF=$(supabase projects list | grep '●' | awk -F '|' '{print $3}' | xargs) && [ \"$LINKED_REF\" != \"$SUPABASE_PROJECT_REF\" ] && npm run supabase:prod:link; supabase",
30
+ "supabase:local:types": "supabase gen types typescript --local > src/types/supabase/generated.ts; prettier --write src/types/supabase/generated.ts",
22
31
  "test": "echo \"Error: no test specified\" && exit 1",
23
32
  "translation:download": "localazy download",
24
33
  "translation:upload": "localazy upload",
@@ -40,12 +49,13 @@
40
49
  "@types/node": "^14.18.42",
41
50
  "@typescript-eslint/eslint-plugin": "^5.48.0",
42
51
  "@typescript-eslint/parser": "^5.48.0",
52
+ "dotenv-cli": "^8.0.0",
43
53
  "eslint": "^7.24.0",
44
54
  "eslint-config-prettier": "^8.2.0",
45
55
  "husky": "^8.0.1",
46
56
  "lint-staged": "^12.4.1",
47
57
  "prettier": "^2.2.1",
48
- "supabase": "^1.110.3",
58
+ "supabase": "^2.20.12",
49
59
  "typescript": "^4.9.4"
50
60
  },
51
61
  "lint-staged": {
@@ -1,7 +1,7 @@
1
1
  export type Json = string | number | boolean | null | {
2
2
  [key: string]: Json | undefined;
3
3
  } | Json[];
4
- export interface Database {
4
+ export type Database = {
5
5
  graphql_public: {
6
6
  Tables: {
7
7
  [_ in never]: never;
@@ -31,50 +31,7 @@ export interface Database {
31
31
  Tables: {
32
32
  event: {
33
33
  Row: {
34
- activeInvitationLink: boolean;
35
- coverURL: string | null;
36
- createdAt: string;
37
- createdOn: Database['public']['Enums']['created_on'];
38
- datetime: string;
39
- datetimeEnd: string;
40
- deletedAt: string | null;
41
- deletedBy: string | null;
42
- description: string | null;
43
- descriptionSlate: Json[];
44
- displayName: string | null;
45
- id: string;
46
- invitationLink: string | null;
47
- locality: string | null;
48
- location: unknown;
49
- location_lonlat: Database['public']['CompositeTypes']['lonlat'];
50
- maxAttendance: number | null;
51
- notifyAt: string;
52
- online: boolean;
53
- owner: string | null;
54
- playerIds: string[];
55
- players: Json;
56
34
  promoter: string | null;
57
- relEvents: string[];
58
- repeat: Json | null;
59
- repertory: Json;
60
- repertoryIds: string[];
61
- responseDeadline: Json;
62
- responseDeadlineAt: string;
63
- rollCalledAt: string | null;
64
- rollCalledBy: string | null;
65
- rollCallHistory: Json[];
66
- rollCallReminderAt: string | null;
67
- selectionMode: Database['public']['Enums']['event_selection_mode'] | null;
68
- selectionModeClosedAt: string | null;
69
- shortDynamicLink: string | null;
70
- sites: boolean;
71
- stage: Json | null;
72
- stageTemplateId: string | null;
73
- templateId: string | null;
74
- timezone: string;
75
- type: Database['public']['Enums']['event_type'];
76
- updatedAt: string;
77
- videoURL: string | null;
78
35
  };
79
36
  Insert: {
80
37
  activeInvitationLink: boolean;
@@ -172,6 +129,7 @@ export interface Database {
172
129
  {
173
130
  foreignKeyName: 'event_promoter_group_id_fkey';
174
131
  columns: ['promoter'];
132
+ isOneToOne: false;
175
133
  referencedRelation: 'group';
176
134
  referencedColumns: ['id'];
177
135
  }
@@ -179,48 +137,7 @@ export interface Database {
179
137
  };
180
138
  group: {
181
139
  Row: {
182
- activeInvitationLink: boolean;
183
- addresses: Json[];
184
- administrators: string[];
185
- config: Json;
186
- configSites: Json;
187
- country: string;
188
- createdAt: string;
189
- createdOn: Database['public']['Enums']['created_on'];
190
- customerId: string | null;
191
- deletedAt: string | null;
192
- deletedBy: string | null;
193
- description: string | null;
194
- displayName: string;
195
140
  id: string;
196
- instruments: Json;
197
- intercomId: string | null;
198
- invitationEmails: string[];
199
- invitationLink: string | null;
200
- locality: string;
201
- location: unknown;
202
- location_lonlat: Database['public']['CompositeTypes']['lonlat'];
203
- metadata: Json;
204
- musicStyle: string;
205
- onboardingMessages: Json[];
206
- owner: string | null;
207
- partnershipId: string | null;
208
- photoURL: string;
209
- planId: Database['public']['Enums']['group_plan'];
210
- playerIds: string[];
211
- players: Json;
212
- repertoireTags: Json;
213
- rollcallLink: string | null;
214
- satisfactionIndex: Json;
215
- shortDynamicLink: string | null;
216
- socialNetworks: Json | null;
217
- status: Database['public']['Enums']['group_status'];
218
- subscriptionId: string | null;
219
- templates: Json;
220
- trialEndAt: string | null;
221
- updatedAt: string;
222
- username: string;
223
- visitedDashboardAt: Json;
224
141
  };
225
142
  Insert: {
226
143
  activeInvitationLink: boolean;
@@ -398,12 +315,14 @@ export interface Database {
398
315
  {
399
316
  foreignKeyName: 'public_offer_eventId_fkey';
400
317
  columns: ['eventId'];
318
+ isOneToOne: false;
401
319
  referencedRelation: 'event';
402
320
  referencedColumns: ['id'];
403
321
  },
404
322
  {
405
323
  foreignKeyName: 'public_offer_groupId_fkey';
406
324
  columns: ['groupId'];
325
+ isOneToOne: false;
407
326
  referencedRelation: 'group';
408
327
  referencedColumns: ['id'];
409
328
  }
@@ -428,8 +347,8 @@ export interface Database {
428
347
  };
429
348
  CompositeTypes: {
430
349
  lonlat: {
431
- longitude: number;
432
- latitude: number;
350
+ longitude: number | null;
351
+ latitude: number | null;
433
352
  };
434
353
  };
435
354
  };
@@ -507,6 +426,7 @@ export interface Database {
507
426
  owner_id: string | null;
508
427
  path_tokens: string[] | null;
509
428
  updated_at: string | null;
429
+ user_metadata: Json | null;
510
430
  version: string | null;
511
431
  };
512
432
  Insert: {
@@ -520,6 +440,7 @@ export interface Database {
520
440
  owner_id?: string | null;
521
441
  path_tokens?: string[] | null;
522
442
  updated_at?: string | null;
443
+ user_metadata?: Json | null;
523
444
  version?: string | null;
524
445
  };
525
446
  Update: {
@@ -533,12 +454,14 @@ export interface Database {
533
454
  owner_id?: string | null;
534
455
  path_tokens?: string[] | null;
535
456
  updated_at?: string | null;
457
+ user_metadata?: Json | null;
536
458
  version?: string | null;
537
459
  };
538
460
  Relationships: [
539
461
  {
540
462
  foreignKeyName: 'objects_bucketId_fkey';
541
463
  columns: ['bucket_id'];
464
+ isOneToOne: false;
542
465
  referencedRelation: 'buckets';
543
466
  referencedColumns: ['id'];
544
467
  }
@@ -553,6 +476,7 @@ export interface Database {
553
476
  key: string;
554
477
  owner_id: string | null;
555
478
  upload_signature: string;
479
+ user_metadata: Json | null;
556
480
  version: string;
557
481
  };
558
482
  Insert: {
@@ -563,6 +487,7 @@ export interface Database {
563
487
  key: string;
564
488
  owner_id?: string | null;
565
489
  upload_signature: string;
490
+ user_metadata?: Json | null;
566
491
  version: string;
567
492
  };
568
493
  Update: {
@@ -573,12 +498,14 @@ export interface Database {
573
498
  key?: string;
574
499
  owner_id?: string | null;
575
500
  upload_signature?: string;
501
+ user_metadata?: Json | null;
576
502
  version?: string;
577
503
  };
578
504
  Relationships: [
579
505
  {
580
506
  foreignKeyName: 's3_multipart_uploads_bucket_id_fkey';
581
507
  columns: ['bucket_id'];
508
+ isOneToOne: false;
582
509
  referencedRelation: 'buckets';
583
510
  referencedColumns: ['id'];
584
511
  }
@@ -625,12 +552,14 @@ export interface Database {
625
552
  {
626
553
  foreignKeyName: 's3_multipart_uploads_parts_bucket_id_fkey';
627
554
  columns: ['bucket_id'];
555
+ isOneToOne: false;
628
556
  referencedRelation: 'buckets';
629
557
  referencedColumns: ['id'];
630
558
  },
631
559
  {
632
560
  foreignKeyName: 's3_multipart_uploads_parts_upload_id_fkey';
633
561
  columns: ['upload_id'];
562
+ isOneToOne: false;
634
563
  referencedRelation: 's3_multipart_uploads';
635
564
  referencedColumns: ['id'];
636
565
  }
@@ -666,7 +595,7 @@ export interface Database {
666
595
  Args: {
667
596
  name: string;
668
597
  };
669
- Returns: unknown;
598
+ Returns: string[];
670
599
  };
671
600
  get_size_by_bucket: {
672
601
  Args: Record<PropertyKey, never>;
@@ -706,6 +635,10 @@ export interface Database {
706
635
  updated_at: string;
707
636
  }[];
708
637
  };
638
+ operation: {
639
+ Args: Record<PropertyKey, never>;
640
+ Returns: string;
641
+ };
709
642
  search: {
710
643
  Args: {
711
644
  prefix: string;
@@ -734,4 +667,73 @@ export interface Database {
734
667
  [_ in never]: never;
735
668
  };
736
669
  };
737
- }
670
+ };
671
+ type DefaultSchema = Database[Extract<keyof Database, 'public'>];
672
+ export type Tables<DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema['Tables'] & DefaultSchema['Views']) | {
673
+ schema: keyof Database;
674
+ }, TableName extends DefaultSchemaTableNameOrOptions extends {
675
+ schema: keyof Database;
676
+ } ? keyof (Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'] & Database[DefaultSchemaTableNameOrOptions['schema']]['Views']) : never = never> = DefaultSchemaTableNameOrOptions extends {
677
+ schema: keyof Database;
678
+ } ? (Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'] & Database[DefaultSchemaTableNameOrOptions['schema']]['Views'])[TableName] extends {
679
+ Row: infer R;
680
+ } ? R : never : DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema['Tables'] & DefaultSchema['Views']) ? (DefaultSchema['Tables'] & DefaultSchema['Views'])[DefaultSchemaTableNameOrOptions] extends {
681
+ Row: infer R;
682
+ } ? R : never : never;
683
+ export type TablesInsert<DefaultSchemaTableNameOrOptions extends keyof DefaultSchema['Tables'] | {
684
+ schema: keyof Database;
685
+ }, TableName extends DefaultSchemaTableNameOrOptions extends {
686
+ schema: keyof Database;
687
+ } ? keyof Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'] : never = never> = DefaultSchemaTableNameOrOptions extends {
688
+ schema: keyof Database;
689
+ } ? Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'][TableName] extends {
690
+ Insert: infer I;
691
+ } ? I : never : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema['Tables'] ? DefaultSchema['Tables'][DefaultSchemaTableNameOrOptions] extends {
692
+ Insert: infer I;
693
+ } ? I : never : never;
694
+ export type TablesUpdate<DefaultSchemaTableNameOrOptions extends keyof DefaultSchema['Tables'] | {
695
+ schema: keyof Database;
696
+ }, TableName extends DefaultSchemaTableNameOrOptions extends {
697
+ schema: keyof Database;
698
+ } ? keyof Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'] : never = never> = DefaultSchemaTableNameOrOptions extends {
699
+ schema: keyof Database;
700
+ } ? Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'][TableName] extends {
701
+ Update: infer U;
702
+ } ? U : never : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema['Tables'] ? DefaultSchema['Tables'][DefaultSchemaTableNameOrOptions] extends {
703
+ Update: infer U;
704
+ } ? U : never : never;
705
+ export type Enums<DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema['Enums'] | {
706
+ schema: keyof Database;
707
+ }, EnumName extends DefaultSchemaEnumNameOrOptions extends {
708
+ schema: keyof Database;
709
+ } ? keyof Database[DefaultSchemaEnumNameOrOptions['schema']]['Enums'] : never = never> = DefaultSchemaEnumNameOrOptions extends {
710
+ schema: keyof Database;
711
+ } ? Database[DefaultSchemaEnumNameOrOptions['schema']]['Enums'][EnumName] : DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema['Enums'] ? DefaultSchema['Enums'][DefaultSchemaEnumNameOrOptions] : never;
712
+ export type CompositeTypes<PublicCompositeTypeNameOrOptions extends keyof DefaultSchema['CompositeTypes'] | {
713
+ schema: keyof Database;
714
+ }, CompositeTypeName extends PublicCompositeTypeNameOrOptions extends {
715
+ schema: keyof Database;
716
+ } ? keyof Database[PublicCompositeTypeNameOrOptions['schema']]['CompositeTypes'] : never = never> = PublicCompositeTypeNameOrOptions extends {
717
+ schema: keyof Database;
718
+ } ? Database[PublicCompositeTypeNameOrOptions['schema']]['CompositeTypes'][CompositeTypeName] : PublicCompositeTypeNameOrOptions extends keyof DefaultSchema['CompositeTypes'] ? DefaultSchema['CompositeTypes'][PublicCompositeTypeNameOrOptions] : never;
719
+ export declare const Constants: {
720
+ readonly graphql_public: {
721
+ readonly Enums: {};
722
+ };
723
+ readonly public: {
724
+ readonly Enums: {
725
+ readonly created_on: readonly ["app", "dashboard", "auth", "web"];
726
+ readonly event_selection_mode: readonly ["open", "closed"];
727
+ readonly event_type: readonly ["practice", "performance"];
728
+ readonly group_plan: readonly ["piano", "mezzopiano", "mezzoforte", "forte", "fortissimo", "tutti"];
729
+ readonly group_plan_period: readonly ["yearly", "monthly"];
730
+ readonly group_status: readonly ["premium", "trial", "inactive", "deleted"];
731
+ readonly offer_type: readonly ["group", "event"];
732
+ readonly social_network: readonly ["facebook", "twitter", "instagram", "youtube"];
733
+ };
734
+ };
735
+ readonly storage: {
736
+ readonly Enums: {};
737
+ };
738
+ };
739
+ export {};
@@ -1,2 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Constants = void 0;
4
+ exports.Constants = {
5
+ graphql_public: {
6
+ Enums: {},
7
+ },
8
+ public: {
9
+ Enums: {
10
+ created_on: ['app', 'dashboard', 'auth', 'web'],
11
+ event_selection_mode: ['open', 'closed'],
12
+ event_type: ['practice', 'performance'],
13
+ group_plan: ['piano', 'mezzopiano', 'mezzoforte', 'forte', 'fortissimo', 'tutti'],
14
+ group_plan_period: ['yearly', 'monthly'],
15
+ group_status: ['premium', 'trial', 'inactive', 'deleted'],
16
+ offer_type: ['group', 'event'],
17
+ social_network: ['facebook', 'twitter', 'instagram', 'youtube'],
18
+ },
19
+ },
20
+ storage: {
21
+ Enums: {},
22
+ },
23
+ };
@@ -1,6 +1,6 @@
1
1
  export type Json = string | number | boolean | null | { [key: string]: Json | undefined } | Json[];
2
2
 
3
- export interface Database {
3
+ export type Database = {
4
4
  graphql_public: {
5
5
  Tables: {
6
6
  [_ in never]: never;
@@ -30,50 +30,51 @@ export interface Database {
30
30
  Tables: {
31
31
  event: {
32
32
  Row: {
33
- activeInvitationLink: boolean;
34
- coverURL: string | null;
35
- createdAt: string;
36
- createdOn: Database['public']['Enums']['created_on'];
37
- datetime: string;
38
- datetimeEnd: string;
39
- deletedAt: string | null;
40
- deletedBy: string | null;
41
- description: string | null;
42
- descriptionSlate: Json[];
43
- displayName: string | null;
44
- id: string;
45
- invitationLink: string | null;
46
- locality: string | null;
47
- location: unknown;
48
- location_lonlat: Database['public']['CompositeTypes']['lonlat'];
49
- maxAttendance: number | null;
50
- notifyAt: string;
51
- online: boolean;
52
- owner: string | null;
53
- playerIds: string[];
54
- players: Json;
33
+ // activeInvitationLink: boolean;
34
+ // coverURL: string | null;
35
+ // createdAt: string;
36
+ // createdOn: Database['public']['Enums']['created_on'];
37
+ // datetime: string;
38
+ // datetimeEnd: string;
39
+ // deletedAt: string | null;
40
+ // deletedBy: string | null;
41
+ // description: string | null;
42
+ // descriptionSlate: Json[];
43
+ // displayName: string | null;
44
+ // id: string;
45
+ // invitationLink: string | null;
46
+ // locality: string | null;
47
+ // location: unknown;
48
+ // location_lonlat: Database['public']['CompositeTypes']['lonlat'];
49
+ // maxAttendance: number | null;
50
+ // notifyAt: string;
51
+ // online: boolean;
52
+ // owner: string | null;
53
+ // playerIds: string[];
54
+ // players: Json;
55
+
56
+ // relEvents: string[];
57
+ // repeat: Json | null;
58
+ // repertory: Json;
59
+ // repertoryIds: string[];
60
+ // responseDeadline: Json;
61
+ // responseDeadlineAt: string;
62
+ // rollCalledAt: string | null;
63
+ // rollCalledBy: string | null;
64
+ // rollCallHistory: Json[];
65
+ // rollCallReminderAt: string | null;
66
+ // selectionMode: Database['public']['Enums']['event_selection_mode'] | null;
67
+ // selectionModeClosedAt: string | null;
68
+ // shortDynamicLink: string | null;
69
+ // sites: boolean;
70
+ // stage: Json | null;
71
+ // stageTemplateId: string | null;
72
+ // templateId: string | null;
73
+ // timezone: string;
74
+ // type: Database['public']['Enums']['event_type'];
75
+ // updatedAt: string;
76
+ // videoURL: string | null;
55
77
  promoter: string | null;
56
- relEvents: string[];
57
- repeat: Json | null;
58
- repertory: Json;
59
- repertoryIds: string[];
60
- responseDeadline: Json;
61
- responseDeadlineAt: string;
62
- rollCalledAt: string | null;
63
- rollCalledBy: string | null;
64
- rollCallHistory: Json[];
65
- rollCallReminderAt: string | null;
66
- selectionMode: Database['public']['Enums']['event_selection_mode'] | null;
67
- selectionModeClosedAt: string | null;
68
- shortDynamicLink: string | null;
69
- sites: boolean;
70
- stage: Json | null;
71
- stageTemplateId: string | null;
72
- templateId: string | null;
73
- timezone: string;
74
- type: Database['public']['Enums']['event_type'];
75
- updatedAt: string;
76
- videoURL: string | null;
77
78
  };
78
79
  Insert: {
79
80
  activeInvitationLink: boolean;
@@ -171,6 +172,7 @@ export interface Database {
171
172
  {
172
173
  foreignKeyName: 'event_promoter_group_id_fkey';
173
174
  columns: ['promoter'];
175
+ isOneToOne: false;
174
176
  referencedRelation: 'group';
175
177
  referencedColumns: ['id'];
176
178
  }
@@ -178,48 +180,49 @@ export interface Database {
178
180
  };
179
181
  group: {
180
182
  Row: {
181
- activeInvitationLink: boolean;
182
- addresses: Json[];
183
- administrators: string[];
184
- config: Json;
185
- configSites: Json;
186
- country: string;
187
- createdAt: string;
188
- createdOn: Database['public']['Enums']['created_on'];
189
- customerId: string | null;
190
- deletedAt: string | null;
191
- deletedBy: string | null;
192
- description: string | null;
193
- displayName: string;
183
+ // activeInvitationLink: boolean;
184
+ // addresses: Json[];
185
+ // administrators: string[];
186
+ // config: Json;
187
+ // configSites: Json;
188
+ // country: string;
189
+ // createdAt: string;
190
+ // createdOn: Database['public']['Enums']['created_on'];
191
+ // customerId: string | null;
192
+ // deletedAt: string | null;
193
+ // deletedBy: string | null;
194
+ // description: string | null;
195
+ // displayName: string;
196
+
197
+ // instruments: Json;
198
+ // intercomId: string | null;
199
+ // invitationEmails: string[];
200
+ // invitationLink: string | null;
201
+ // locality: string;
202
+ // location: unknown;
203
+ // location_lonlat: Database['public']['CompositeTypes']['lonlat'];
204
+ // metadata: Json;
205
+ // musicStyle: string;
206
+ // onboardingMessages: Json[];
207
+ // owner: string | null;
208
+ // partnershipId: string | null;
209
+ // photoURL: string;
210
+ // planId: Database['public']['Enums']['group_plan'];
211
+ // playerIds: string[];
212
+ // players: Json;
213
+ // repertoireTags: Json;
214
+ // rollcallLink: string | null;
215
+ // satisfactionIndex: Json;
216
+ // shortDynamicLink: string | null;
217
+ // socialNetworks: Json | null;
218
+ // status: Database['public']['Enums']['group_status'];
219
+ // subscriptionId: string | null;
220
+ // templates: Json;
221
+ // trialEndAt: string | null;
222
+ // updatedAt: string;
223
+ // username: string;
224
+ // visitedDashboardAt: Json;
194
225
  id: string;
195
- instruments: Json;
196
- intercomId: string | null;
197
- invitationEmails: string[];
198
- invitationLink: string | null;
199
- locality: string;
200
- location: unknown;
201
- location_lonlat: Database['public']['CompositeTypes']['lonlat'];
202
- metadata: Json;
203
- musicStyle: string;
204
- onboardingMessages: Json[];
205
- owner: string | null;
206
- partnershipId: string | null;
207
- photoURL: string;
208
- planId: Database['public']['Enums']['group_plan'];
209
- playerIds: string[];
210
- players: Json;
211
- repertoireTags: Json;
212
- rollcallLink: string | null;
213
- satisfactionIndex: Json;
214
- shortDynamicLink: string | null;
215
- socialNetworks: Json | null;
216
- status: Database['public']['Enums']['group_status'];
217
- subscriptionId: string | null;
218
- templates: Json;
219
- trialEndAt: string | null;
220
- updatedAt: string;
221
- username: string;
222
- visitedDashboardAt: Json;
223
226
  };
224
227
  Insert: {
225
228
  activeInvitationLink: boolean;
@@ -397,12 +400,14 @@ export interface Database {
397
400
  {
398
401
  foreignKeyName: 'public_offer_eventId_fkey';
399
402
  columns: ['eventId'];
403
+ isOneToOne: false;
400
404
  referencedRelation: 'event';
401
405
  referencedColumns: ['id'];
402
406
  },
403
407
  {
404
408
  foreignKeyName: 'public_offer_groupId_fkey';
405
409
  columns: ['groupId'];
410
+ isOneToOne: false;
406
411
  referencedRelation: 'group';
407
412
  referencedColumns: ['id'];
408
413
  }
@@ -427,8 +432,8 @@ export interface Database {
427
432
  };
428
433
  CompositeTypes: {
429
434
  lonlat: {
430
- longitude: number;
431
- latitude: number;
435
+ longitude: number | null;
436
+ latitude: number | null;
432
437
  };
433
438
  };
434
439
  };
@@ -506,6 +511,7 @@ export interface Database {
506
511
  owner_id: string | null;
507
512
  path_tokens: string[] | null;
508
513
  updated_at: string | null;
514
+ user_metadata: Json | null;
509
515
  version: string | null;
510
516
  };
511
517
  Insert: {
@@ -519,6 +525,7 @@ export interface Database {
519
525
  owner_id?: string | null;
520
526
  path_tokens?: string[] | null;
521
527
  updated_at?: string | null;
528
+ user_metadata?: Json | null;
522
529
  version?: string | null;
523
530
  };
524
531
  Update: {
@@ -532,12 +539,14 @@ export interface Database {
532
539
  owner_id?: string | null;
533
540
  path_tokens?: string[] | null;
534
541
  updated_at?: string | null;
542
+ user_metadata?: Json | null;
535
543
  version?: string | null;
536
544
  };
537
545
  Relationships: [
538
546
  {
539
547
  foreignKeyName: 'objects_bucketId_fkey';
540
548
  columns: ['bucket_id'];
549
+ isOneToOne: false;
541
550
  referencedRelation: 'buckets';
542
551
  referencedColumns: ['id'];
543
552
  }
@@ -552,6 +561,7 @@ export interface Database {
552
561
  key: string;
553
562
  owner_id: string | null;
554
563
  upload_signature: string;
564
+ user_metadata: Json | null;
555
565
  version: string;
556
566
  };
557
567
  Insert: {
@@ -562,6 +572,7 @@ export interface Database {
562
572
  key: string;
563
573
  owner_id?: string | null;
564
574
  upload_signature: string;
575
+ user_metadata?: Json | null;
565
576
  version: string;
566
577
  };
567
578
  Update: {
@@ -572,12 +583,14 @@ export interface Database {
572
583
  key?: string;
573
584
  owner_id?: string | null;
574
585
  upload_signature?: string;
586
+ user_metadata?: Json | null;
575
587
  version?: string;
576
588
  };
577
589
  Relationships: [
578
590
  {
579
591
  foreignKeyName: 's3_multipart_uploads_bucket_id_fkey';
580
592
  columns: ['bucket_id'];
593
+ isOneToOne: false;
581
594
  referencedRelation: 'buckets';
582
595
  referencedColumns: ['id'];
583
596
  }
@@ -624,12 +637,14 @@ export interface Database {
624
637
  {
625
638
  foreignKeyName: 's3_multipart_uploads_parts_bucket_id_fkey';
626
639
  columns: ['bucket_id'];
640
+ isOneToOne: false;
627
641
  referencedRelation: 'buckets';
628
642
  referencedColumns: ['id'];
629
643
  },
630
644
  {
631
645
  foreignKeyName: 's3_multipart_uploads_parts_upload_id_fkey';
632
646
  columns: ['upload_id'];
647
+ isOneToOne: false;
633
648
  referencedRelation: 's3_multipart_uploads';
634
649
  referencedColumns: ['id'];
635
650
  }
@@ -641,31 +656,20 @@ export interface Database {
641
656
  };
642
657
  Functions: {
643
658
  can_insert_object: {
644
- Args: {
645
- bucketid: string;
646
- name: string;
647
- owner: string;
648
- metadata: Json;
649
- };
659
+ Args: { bucketid: string; name: string; owner: string; metadata: Json };
650
660
  Returns: undefined;
651
661
  };
652
662
  extension: {
653
- Args: {
654
- name: string;
655
- };
663
+ Args: { name: string };
656
664
  Returns: string;
657
665
  };
658
666
  filename: {
659
- Args: {
660
- name: string;
661
- };
667
+ Args: { name: string };
662
668
  Returns: string;
663
669
  };
664
670
  foldername: {
665
- Args: {
666
- name: string;
667
- };
668
- Returns: unknown;
671
+ Args: { name: string };
672
+ Returns: string[];
669
673
  };
670
674
  get_size_by_bucket: {
671
675
  Args: Record<PropertyKey, never>;
@@ -705,6 +709,10 @@ export interface Database {
705
709
  updated_at: string;
706
710
  }[];
707
711
  };
712
+ operation: {
713
+ Args: Record<PropertyKey, never>;
714
+ Returns: string;
715
+ };
708
716
  search: {
709
717
  Args: {
710
718
  prefix: string;
@@ -733,4 +741,129 @@ export interface Database {
733
741
  [_ in never]: never;
734
742
  };
735
743
  };
736
- }
744
+ };
745
+
746
+ type DefaultSchema = Database[Extract<keyof Database, 'public'>];
747
+
748
+ export type Tables<
749
+ DefaultSchemaTableNameOrOptions extends
750
+ | keyof (DefaultSchema['Tables'] & DefaultSchema['Views'])
751
+ | { schema: keyof Database },
752
+ TableName extends DefaultSchemaTableNameOrOptions extends {
753
+ schema: keyof Database;
754
+ }
755
+ ? keyof (Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'] &
756
+ Database[DefaultSchemaTableNameOrOptions['schema']]['Views'])
757
+ : never = never
758
+ > = DefaultSchemaTableNameOrOptions extends { schema: keyof Database }
759
+ ? (Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'] &
760
+ Database[DefaultSchemaTableNameOrOptions['schema']]['Views'])[TableName] extends {
761
+ Row: infer R;
762
+ }
763
+ ? R
764
+ : never
765
+ : DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema['Tables'] &
766
+ DefaultSchema['Views'])
767
+ ? (DefaultSchema['Tables'] & DefaultSchema['Views'])[DefaultSchemaTableNameOrOptions] extends {
768
+ Row: infer R;
769
+ }
770
+ ? R
771
+ : never
772
+ : never;
773
+
774
+ export type TablesInsert<
775
+ DefaultSchemaTableNameOrOptions extends
776
+ | keyof DefaultSchema['Tables']
777
+ | { schema: keyof Database },
778
+ TableName extends DefaultSchemaTableNameOrOptions extends {
779
+ schema: keyof Database;
780
+ }
781
+ ? keyof Database[DefaultSchemaTableNameOrOptions['schema']]['Tables']
782
+ : never = never
783
+ > = DefaultSchemaTableNameOrOptions extends { schema: keyof Database }
784
+ ? Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'][TableName] extends {
785
+ Insert: infer I;
786
+ }
787
+ ? I
788
+ : never
789
+ : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema['Tables']
790
+ ? DefaultSchema['Tables'][DefaultSchemaTableNameOrOptions] extends {
791
+ Insert: infer I;
792
+ }
793
+ ? I
794
+ : never
795
+ : never;
796
+
797
+ export type TablesUpdate<
798
+ DefaultSchemaTableNameOrOptions extends
799
+ | keyof DefaultSchema['Tables']
800
+ | { schema: keyof Database },
801
+ TableName extends DefaultSchemaTableNameOrOptions extends {
802
+ schema: keyof Database;
803
+ }
804
+ ? keyof Database[DefaultSchemaTableNameOrOptions['schema']]['Tables']
805
+ : never = never
806
+ > = DefaultSchemaTableNameOrOptions extends { schema: keyof Database }
807
+ ? Database[DefaultSchemaTableNameOrOptions['schema']]['Tables'][TableName] extends {
808
+ Update: infer U;
809
+ }
810
+ ? U
811
+ : never
812
+ : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema['Tables']
813
+ ? DefaultSchema['Tables'][DefaultSchemaTableNameOrOptions] extends {
814
+ Update: infer U;
815
+ }
816
+ ? U
817
+ : never
818
+ : never;
819
+
820
+ export type Enums<
821
+ DefaultSchemaEnumNameOrOptions extends
822
+ | keyof DefaultSchema['Enums']
823
+ | { schema: keyof Database },
824
+ EnumName extends DefaultSchemaEnumNameOrOptions extends {
825
+ schema: keyof Database;
826
+ }
827
+ ? keyof Database[DefaultSchemaEnumNameOrOptions['schema']]['Enums']
828
+ : never = never
829
+ > = DefaultSchemaEnumNameOrOptions extends { schema: keyof Database }
830
+ ? Database[DefaultSchemaEnumNameOrOptions['schema']]['Enums'][EnumName]
831
+ : DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema['Enums']
832
+ ? DefaultSchema['Enums'][DefaultSchemaEnumNameOrOptions]
833
+ : never;
834
+
835
+ export type CompositeTypes<
836
+ PublicCompositeTypeNameOrOptions extends
837
+ | keyof DefaultSchema['CompositeTypes']
838
+ | { schema: keyof Database },
839
+ CompositeTypeName extends PublicCompositeTypeNameOrOptions extends {
840
+ schema: keyof Database;
841
+ }
842
+ ? keyof Database[PublicCompositeTypeNameOrOptions['schema']]['CompositeTypes']
843
+ : never = never
844
+ > = PublicCompositeTypeNameOrOptions extends { schema: keyof Database }
845
+ ? Database[PublicCompositeTypeNameOrOptions['schema']]['CompositeTypes'][CompositeTypeName]
846
+ : PublicCompositeTypeNameOrOptions extends keyof DefaultSchema['CompositeTypes']
847
+ ? DefaultSchema['CompositeTypes'][PublicCompositeTypeNameOrOptions]
848
+ : never;
849
+
850
+ export const Constants = {
851
+ graphql_public: {
852
+ Enums: {},
853
+ },
854
+ public: {
855
+ Enums: {
856
+ created_on: ['app', 'dashboard', 'auth', 'web'],
857
+ event_selection_mode: ['open', 'closed'],
858
+ event_type: ['practice', 'performance'],
859
+ group_plan: ['piano', 'mezzopiano', 'mezzoforte', 'forte', 'fortissimo', 'tutti'],
860
+ group_plan_period: ['yearly', 'monthly'],
861
+ group_status: ['premium', 'trial', 'inactive', 'deleted'],
862
+ offer_type: ['group', 'event'],
863
+ social_network: ['facebook', 'twitter', 'instagram', 'youtube'],
864
+ },
865
+ },
866
+ storage: {
867
+ Enums: {},
868
+ },
869
+ } as const;