@pgpmjs/export 0.20.1 → 0.21.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.
@@ -3,6 +3,7 @@ import { sync as glob } from 'glob';
3
3
  import { toSnakeCase } from 'inflekt';
4
4
  import path from 'path';
5
5
  import { PgpmPackage, getMissingInstallableModules, parseAuthor } from '@pgpmjs/core';
6
+ import { lookupByPgUdt } from './type-map';
6
7
  // =============================================================================
7
8
  // Shared constants
8
9
  // =============================================================================
@@ -25,6 +26,8 @@ export const DB_REQUIRED_EXTENSIONS = [
25
26
  'ltree',
26
27
  'metaschema-schema',
27
28
  'pgpm-inflection',
29
+ 'inflection-db',
30
+ 'pgpm-uuid',
28
31
  'pgpm-utils',
29
32
  'pgpm-database-jobs',
30
33
  'pgpm-jwt-claims',
@@ -38,41 +41,11 @@ export const DB_REQUIRED_EXTENSIONS = [
38
41
  /**
39
42
  * Map PostgreSQL data types to FieldType values.
40
43
  * Uses udt_name from information_schema which gives the base type name.
44
+ * Delegates to the canonical PG_TYPE_MAP in type-map.ts.
41
45
  */
42
- const mapPgTypeToFieldType = (udtName) => {
43
- switch (udtName) {
44
- case 'uuid':
45
- return 'uuid';
46
- case '_uuid':
47
- return 'uuid[]';
48
- case 'text':
49
- case 'varchar':
50
- case 'bpchar':
51
- case 'name':
52
- return 'text';
53
- case '_text':
54
- case '_varchar':
55
- return 'text[]';
56
- case 'bool':
57
- return 'boolean';
58
- case 'jsonb':
59
- case 'json':
60
- return 'jsonb';
61
- case '_jsonb':
62
- return 'jsonb[]';
63
- case 'int4':
64
- case 'int8':
65
- case 'int2':
66
- case 'numeric':
67
- return 'int';
68
- case 'interval':
69
- return 'interval';
70
- case 'timestamptz':
71
- case 'timestamp':
72
- return 'timestamptz';
73
- default:
74
- return 'text';
75
- }
46
+ export const mapPgTypeToFieldType = (udtName) => {
47
+ const entry = lookupByPgUdt(udtName);
48
+ return entry?.fieldType ?? 'text';
76
49
  };
77
50
  /**
78
51
  * Required extensions for service/meta exports.
@@ -153,6 +126,7 @@ export const META_TABLE_ORDER = [
153
126
  'memberships_module',
154
127
  'permissions_module',
155
128
  'limits_module',
129
+ 'levels_module',
156
130
  'events_module',
157
131
  'users_module',
158
132
  'hierarchy_module',
@@ -163,6 +137,8 @@ export const META_TABLE_ORDER = [
163
137
  'user_state_module',
164
138
  'profiles_module',
165
139
  'config_secrets_user_module',
140
+ 'user_credentials_module',
141
+ 'user_settings_module',
166
142
  'connected_accounts_module',
167
143
  'phone_numbers_module',
168
144
  'crypto_addresses_module',
@@ -188,6 +164,17 @@ export const META_TABLE_ORDER = [
188
164
  'realtime_module',
189
165
  'session_secrets_module',
190
166
  'config_secrets_org_module',
167
+ 'config_secrets_module',
168
+ 'i18n_module',
169
+ 'agent_module',
170
+ 'function_module',
171
+ 'namespace_module',
172
+ 'merkle_store_module',
173
+ 'graph_module',
174
+ 'compute_log_module',
175
+ 'db_usage_module',
176
+ 'storage_log_module',
177
+ 'transfer_log_module',
191
178
  'webauthn_auth_module',
192
179
  'webauthn_credentials_module',
193
180
  'inference_log_module',
@@ -196,13 +183,13 @@ export const META_TABLE_ORDER = [
196
183
  /**
197
184
  * Shared metadata table configuration.
198
185
  *
199
- * This is the **superset** of fields needed by both the SQL export flow
200
- * (export-meta.ts) and the GraphQL export flow (export-graphql-meta.ts).
201
- * Each flow dynamically filters to only the fields that actually exist:
202
- * - SQL flow: uses buildDynamicFields() to intersect with information_schema
203
- * - GraphQL flow: filters to fields present in the returned data
186
+ * Fields are discovered dynamically at runtime via introspection:
187
+ * - SQL flow: uses information_schema.columns + mapPgTypeToFieldType()
188
+ * - GraphQL flow: uses __type introspection + mapGraphQLTypeToFieldType()
189
+ *
190
+ * Only `typeOverrides` are hardcoded for special types (image, upload, url)
191
+ * that cannot be inferred from database/GraphQL types alone.
204
192
  *
205
- * Adding a field here that doesn't exist in a particular environment is safe.
206
193
  */
207
194
  export const META_TABLE_CONFIG = {
208
195
  // =============================================================================
@@ -210,261 +197,88 @@ export const META_TABLE_CONFIG = {
210
197
  // =============================================================================
211
198
  database: {
212
199
  schema: 'metaschema_public',
213
- table: 'database',
214
- fields: {
215
- id: 'uuid',
216
- owner_id: 'uuid',
217
- name: 'text',
218
- hash: 'uuid'
219
- }
200
+ table: 'database'
220
201
  },
221
202
  schema: {
222
203
  schema: 'metaschema_public',
223
- table: 'schema',
224
- fields: {
225
- id: 'uuid',
226
- database_id: 'uuid',
227
- name: 'text',
228
- schema_name: 'text',
229
- description: 'text',
230
- is_public: 'boolean'
231
- }
204
+ table: 'schema'
232
205
  },
233
206
  function: {
234
207
  schema: 'metaschema_public',
235
- table: 'function',
236
- fields: {
237
- id: 'uuid',
238
- database_id: 'uuid',
239
- schema_id: 'uuid',
240
- name: 'text'
241
- }
208
+ table: 'function'
242
209
  },
243
210
  table: {
244
211
  schema: 'metaschema_public',
245
- table: 'table',
246
- fields: {
247
- id: 'uuid',
248
- database_id: 'uuid',
249
- schema_id: 'uuid',
250
- name: 'text',
251
- description: 'text'
252
- }
212
+ table: 'table'
253
213
  },
254
214
  field: {
255
215
  schema: 'metaschema_public',
256
216
  table: 'field',
257
- // Use ON CONFLICT DO NOTHING to handle the unique constraint (databases_field_uniq_names_idx)
258
- // which normalizes UUID field names by stripping suffixes like _id, _uuid, etc.
259
- // This causes collisions when tables have both 'foo' (text) and 'foo_id' (uuid) columns.
260
- conflictDoNothing: true,
261
- fields: {
262
- id: 'uuid',
263
- database_id: 'uuid',
264
- table_id: 'uuid',
265
- name: 'text',
266
- type: 'jsonb',
267
- description: 'text'
268
- }
217
+ conflictDoNothing: true
269
218
  },
270
219
  policy: {
271
220
  schema: 'metaschema_public',
272
- table: 'policy',
273
- fields: {
274
- id: 'uuid',
275
- database_id: 'uuid',
276
- table_id: 'uuid',
277
- name: 'text',
278
- grantee_name: 'text',
279
- privilege: 'text',
280
- permissive: 'boolean',
281
- disabled: 'boolean',
282
- policy_type: 'text',
283
- data: 'jsonb'
284
- }
221
+ table: 'policy'
285
222
  },
286
223
  index: {
287
224
  schema: 'metaschema_public',
288
- table: 'index',
289
- fields: {
290
- id: 'uuid',
291
- database_id: 'uuid',
292
- table_id: 'uuid',
293
- name: 'text',
294
- field_ids: 'uuid[]',
295
- include_field_ids: 'uuid[]',
296
- access_method: 'text',
297
- index_params: 'jsonb',
298
- where_clause: 'jsonb',
299
- is_unique: 'boolean'
300
- }
225
+ table: 'index'
301
226
  },
302
227
  trigger: {
303
228
  schema: 'metaschema_public',
304
- table: 'trigger',
305
- fields: {
306
- id: 'uuid',
307
- database_id: 'uuid',
308
- table_id: 'uuid',
309
- name: 'text',
310
- event: 'text',
311
- function_name: 'text'
312
- }
229
+ table: 'trigger'
313
230
  },
314
231
  trigger_function: {
315
232
  schema: 'metaschema_public',
316
- table: 'trigger_function',
317
- fields: {
318
- id: 'uuid',
319
- database_id: 'uuid',
320
- name: 'text',
321
- code: 'text'
322
- }
233
+ table: 'trigger_function'
323
234
  },
324
235
  rls_function: {
325
236
  schema: 'metaschema_public',
326
- table: 'rls_function',
327
- fields: {
328
- id: 'uuid',
329
- database_id: 'uuid',
330
- table_id: 'uuid',
331
- name: 'text',
332
- label: 'text',
333
- description: 'text',
334
- data: 'jsonb',
335
- inline: 'boolean',
336
- security: 'int'
337
- }
237
+ table: 'rls_function'
338
238
  },
339
239
  foreign_key_constraint: {
340
240
  schema: 'metaschema_public',
341
- table: 'foreign_key_constraint',
342
- fields: {
343
- id: 'uuid',
344
- database_id: 'uuid',
345
- table_id: 'uuid',
346
- name: 'text',
347
- description: 'text',
348
- smart_tags: 'jsonb',
349
- type: 'text',
350
- field_ids: 'uuid[]',
351
- ref_table_id: 'uuid',
352
- ref_field_ids: 'uuid[]',
353
- delete_action: 'text',
354
- update_action: 'text'
355
- }
241
+ table: 'foreign_key_constraint'
356
242
  },
357
243
  primary_key_constraint: {
358
244
  schema: 'metaschema_public',
359
- table: 'primary_key_constraint',
360
- fields: {
361
- id: 'uuid',
362
- database_id: 'uuid',
363
- table_id: 'uuid',
364
- name: 'text',
365
- type: 'text',
366
- field_ids: 'uuid[]'
367
- }
245
+ table: 'primary_key_constraint'
368
246
  },
369
247
  unique_constraint: {
370
248
  schema: 'metaschema_public',
371
- table: 'unique_constraint',
372
- fields: {
373
- id: 'uuid',
374
- database_id: 'uuid',
375
- table_id: 'uuid',
376
- name: 'text',
377
- description: 'text',
378
- smart_tags: 'jsonb',
379
- type: 'text',
380
- field_ids: 'uuid[]'
381
- }
249
+ table: 'unique_constraint'
382
250
  },
383
251
  check_constraint: {
384
252
  schema: 'metaschema_public',
385
- table: 'check_constraint',
386
- fields: {
387
- id: 'uuid',
388
- database_id: 'uuid',
389
- table_id: 'uuid',
390
- name: 'text',
391
- type: 'text',
392
- field_ids: 'uuid[]',
393
- expr: 'jsonb'
394
- }
253
+ table: 'check_constraint'
395
254
  },
396
255
  full_text_search: {
397
256
  schema: 'metaschema_public',
398
- table: 'full_text_search',
399
- fields: {
400
- id: 'uuid',
401
- database_id: 'uuid',
402
- table_id: 'uuid',
403
- field_id: 'uuid',
404
- field_ids: 'uuid[]',
405
- weights: 'text[]',
406
- langs: 'text[]'
407
- }
257
+ table: 'full_text_search'
408
258
  },
409
259
  schema_grant: {
410
260
  schema: 'metaschema_public',
411
- table: 'schema_grant',
412
- fields: {
413
- id: 'uuid',
414
- database_id: 'uuid',
415
- schema_id: 'uuid',
416
- grantee_name: 'text'
417
- }
261
+ table: 'schema_grant'
418
262
  },
419
263
  table_grant: {
420
264
  schema: 'metaschema_public',
421
- table: 'table_grant',
422
- fields: {
423
- id: 'uuid',
424
- database_id: 'uuid',
425
- table_id: 'uuid',
426
- privilege: 'text',
427
- grantee_name: 'text',
428
- field_ids: 'uuid[]',
429
- is_grant: 'boolean'
430
- }
265
+ table: 'table_grant'
431
266
  },
432
267
  default_privilege: {
433
268
  schema: 'metaschema_public',
434
- table: 'default_privilege',
435
- fields: {
436
- id: 'uuid',
437
- database_id: 'uuid',
438
- schema_id: 'uuid',
439
- object_type: 'text',
440
- privilege: 'text',
441
- grantee_name: 'text',
442
- is_grant: 'boolean'
443
- }
269
+ table: 'default_privilege'
444
270
  },
445
271
  // =============================================================================
446
272
  // services_public tables
447
273
  // =============================================================================
448
274
  domains: {
449
275
  schema: 'services_public',
450
- table: 'domains',
451
- fields: {
452
- id: 'uuid',
453
- database_id: 'uuid',
454
- site_id: 'uuid',
455
- api_id: 'uuid',
456
- domain: 'text',
457
- subdomain: 'text'
458
- }
276
+ table: 'domains'
459
277
  },
460
278
  sites: {
461
279
  schema: 'services_public',
462
280
  table: 'sites',
463
- fields: {
464
- id: 'uuid',
465
- database_id: 'uuid',
466
- title: 'text',
467
- description: 'text',
281
+ typeOverrides: {
468
282
  og_image: 'image',
469
283
  favicon: 'upload',
470
284
  apple_touch_icon: 'image',
@@ -473,1022 +287,300 @@ export const META_TABLE_CONFIG = {
473
287
  },
474
288
  apis: {
475
289
  schema: 'services_public',
476
- table: 'apis',
477
- fields: {
478
- id: 'uuid',
479
- database_id: 'uuid',
480
- name: 'text',
481
- is_public: 'boolean',
482
- role_name: 'text',
483
- anon_role: 'text'
484
- }
290
+ table: 'apis'
485
291
  },
486
292
  apps: {
487
293
  schema: 'services_public',
488
294
  table: 'apps',
489
- fields: {
490
- id: 'uuid',
491
- database_id: 'uuid',
492
- site_id: 'uuid',
493
- name: 'text',
295
+ typeOverrides: {
494
296
  app_image: 'image',
495
297
  app_store_link: 'url',
496
- app_store_id: 'text',
497
- app_id_prefix: 'text',
498
298
  play_store_link: 'url'
499
299
  }
500
300
  },
501
301
  site_modules: {
502
302
  schema: 'services_public',
503
- table: 'site_modules',
504
- fields: {
505
- id: 'uuid',
506
- database_id: 'uuid',
507
- site_id: 'uuid',
508
- name: 'text',
509
- data: 'jsonb'
510
- }
303
+ table: 'site_modules'
511
304
  },
512
305
  site_themes: {
513
306
  schema: 'services_public',
514
- table: 'site_themes',
515
- fields: {
516
- id: 'uuid',
517
- database_id: 'uuid',
518
- site_id: 'uuid',
519
- theme: 'jsonb'
520
- }
307
+ table: 'site_themes'
521
308
  },
522
309
  site_metadata: {
523
310
  schema: 'services_public',
524
311
  table: 'site_metadata',
525
- fields: {
526
- id: 'uuid',
527
- database_id: 'uuid',
528
- site_id: 'uuid',
529
- title: 'text',
530
- description: 'text',
312
+ typeOverrides: {
531
313
  og_image: 'image'
532
314
  }
533
315
  },
534
316
  api_modules: {
535
317
  schema: 'services_public',
536
- table: 'api_modules',
537
- fields: {
538
- id: 'uuid',
539
- database_id: 'uuid',
540
- api_id: 'uuid',
541
- name: 'text',
542
- data: 'jsonb'
543
- }
318
+ table: 'api_modules'
544
319
  },
545
320
  api_extensions: {
546
321
  schema: 'services_public',
547
- table: 'api_extensions',
548
- fields: {
549
- id: 'uuid',
550
- database_id: 'uuid',
551
- api_id: 'uuid',
552
- name: 'text'
553
- }
322
+ table: 'api_extensions'
554
323
  },
555
324
  api_schemas: {
556
325
  schema: 'services_public',
557
- table: 'api_schemas',
558
- fields: {
559
- id: 'uuid',
560
- database_id: 'uuid',
561
- schema_id: 'uuid',
562
- api_id: 'uuid'
563
- }
326
+ table: 'api_schemas'
564
327
  },
565
328
  database_settings: {
566
329
  schema: 'services_public',
567
- table: 'database_settings',
568
- fields: {
569
- id: 'uuid',
570
- database_id: 'uuid',
571
- enable_aggregates: 'boolean',
572
- enable_postgis: 'boolean',
573
- enable_search: 'boolean',
574
- enable_direct_uploads: 'boolean',
575
- enable_presigned_uploads: 'boolean',
576
- enable_many_to_many: 'boolean',
577
- enable_connection_filter: 'boolean',
578
- enable_ltree: 'boolean',
579
- enable_llm: 'boolean',
580
- enable_bulk: 'boolean',
581
- options: 'jsonb'
582
- }
330
+ table: 'database_settings'
583
331
  },
584
332
  api_settings: {
585
333
  schema: 'services_public',
586
- table: 'api_settings',
587
- fields: {
588
- id: 'uuid',
589
- database_id: 'uuid',
590
- api_id: 'uuid',
591
- enable_aggregates: 'boolean',
592
- enable_postgis: 'boolean',
593
- enable_search: 'boolean',
594
- enable_direct_uploads: 'boolean',
595
- enable_presigned_uploads: 'boolean',
596
- enable_many_to_many: 'boolean',
597
- enable_connection_filter: 'boolean',
598
- enable_ltree: 'boolean',
599
- enable_llm: 'boolean',
600
- enable_bulk: 'boolean',
601
- options: 'jsonb'
602
- }
334
+ table: 'api_settings'
603
335
  },
604
336
  rls_settings: {
605
337
  schema: 'services_public',
606
- table: 'rls_settings',
607
- fields: {
608
- id: 'uuid',
609
- database_id: 'uuid',
610
- authenticate_schema_id: 'uuid',
611
- role_schema_id: 'uuid',
612
- authenticate_function_id: 'uuid',
613
- authenticate_strict_function_id: 'uuid',
614
- current_role_function_id: 'uuid',
615
- current_role_id_function_id: 'uuid',
616
- current_user_agent_function_id: 'uuid',
617
- current_ip_address_function_id: 'uuid'
618
- }
338
+ table: 'rls_settings'
619
339
  },
620
340
  cors_settings: {
621
341
  schema: 'services_public',
622
- table: 'cors_settings',
623
- fields: {
624
- id: 'uuid',
625
- database_id: 'uuid',
626
- api_id: 'uuid',
627
- allowed_origins: 'text[]'
628
- }
342
+ table: 'cors_settings'
629
343
  },
630
344
  pubkey_settings: {
631
345
  schema: 'services_public',
632
- table: 'pubkey_settings',
633
- fields: {
634
- id: 'uuid',
635
- database_id: 'uuid',
636
- schema_id: 'uuid',
637
- crypto_network: 'text',
638
- user_field: 'text',
639
- sign_up_with_key_function_id: 'uuid',
640
- sign_in_request_challenge_function_id: 'uuid',
641
- sign_in_record_failure_function_id: 'uuid',
642
- sign_in_with_challenge_function_id: 'uuid'
643
- }
346
+ table: 'pubkey_settings'
644
347
  },
645
348
  webauthn_settings: {
646
349
  schema: 'services_public',
647
- table: 'webauthn_settings',
648
- fields: {
649
- id: 'uuid',
650
- database_id: 'uuid',
651
- schema_id: 'uuid',
652
- credentials_schema_id: 'uuid',
653
- sessions_schema_id: 'uuid',
654
- session_secrets_schema_id: 'uuid',
655
- credentials_table_id: 'uuid',
656
- sessions_table_id: 'uuid',
657
- session_credentials_table_id: 'uuid',
658
- session_secrets_table_id: 'uuid',
659
- user_field_id: 'uuid',
660
- rp_id: 'text',
661
- rp_name: 'text',
662
- origin_allowlist: 'text[]',
663
- attestation_type: 'text',
664
- require_user_verification: 'boolean',
665
- resident_key: 'text',
666
- challenge_expiry_seconds: 'int'
667
- }
350
+ table: 'webauthn_settings'
668
351
  },
669
352
  // =============================================================================
670
353
  // metaschema_modules_public tables
671
354
  // =============================================================================
672
355
  rls_module: {
673
356
  schema: 'metaschema_modules_public',
674
- table: 'rls_module',
675
- fields: {
676
- id: 'uuid',
677
- database_id: 'uuid',
678
- schema_id: 'uuid',
679
- private_schema_id: 'uuid',
680
- session_credentials_table_id: 'uuid',
681
- sessions_table_id: 'uuid',
682
- users_table_id: 'uuid',
683
- authenticate: 'text',
684
- authenticate_strict: 'text',
685
- current_role: 'text',
686
- current_role_id: 'text'
687
- }
357
+ table: 'rls_module'
688
358
  },
689
359
  user_auth_module: {
690
360
  schema: 'metaschema_modules_public',
691
- table: 'user_auth_module',
692
- fields: {
693
- id: 'uuid',
694
- database_id: 'uuid',
695
- schema_id: 'uuid',
696
- emails_table_id: 'uuid',
697
- users_table_id: 'uuid',
698
- secrets_table_id: 'uuid',
699
- encrypted_table_id: 'uuid',
700
- sessions_table_id: 'uuid',
701
- session_credentials_table_id: 'uuid',
702
- audits_table_id: 'uuid',
703
- audits_table_name: 'text',
704
- sign_in_function: 'text',
705
- sign_up_function: 'text',
706
- sign_out_function: 'text',
707
- sign_in_cross_origin_function: 'text',
708
- request_cross_origin_token_function: 'text',
709
- extend_token_expires: 'text',
710
- send_account_deletion_email_function: 'text',
711
- delete_account_function: 'text',
712
- set_password_function: 'text',
713
- reset_password_function: 'text',
714
- forgot_password_function: 'text',
715
- send_verification_email_function: 'text',
716
- verify_email_function: 'text',
717
- verify_password_function: 'text',
718
- check_password_function: 'text'
719
- }
361
+ table: 'user_auth_module'
720
362
  },
721
363
  memberships_module: {
722
364
  schema: 'metaschema_modules_public',
723
- table: 'memberships_module',
724
- fields: {
725
- id: 'uuid',
726
- database_id: 'uuid',
727
- schema_id: 'uuid',
728
- private_schema_id: 'uuid',
729
- memberships_table_id: 'uuid',
730
- memberships_table_name: 'text',
731
- members_table_id: 'uuid',
732
- members_table_name: 'text',
733
- membership_defaults_table_id: 'uuid',
734
- membership_defaults_table_name: 'text',
735
- grants_table_id: 'uuid',
736
- grants_table_name: 'text',
737
- actor_table_id: 'uuid',
738
- limits_table_id: 'uuid',
739
- default_limits_table_id: 'uuid',
740
- permissions_table_id: 'uuid',
741
- default_permissions_table_id: 'uuid',
742
- sprt_table_id: 'uuid',
743
- admin_grants_table_id: 'uuid',
744
- admin_grants_table_name: 'text',
745
- owner_grants_table_id: 'uuid',
746
- owner_grants_table_name: 'text',
747
- membership_type: 'int',
748
- entity_table_id: 'uuid',
749
- entity_table_owner_id: 'uuid',
750
- prefix: 'text',
751
- actor_mask_check: 'text',
752
- actor_perm_check: 'text',
753
- entity_ids_by_mask: 'text',
754
- entity_ids_by_perm: 'text',
755
- entity_ids_function: 'text'
756
- }
365
+ table: 'memberships_module'
757
366
  },
758
367
  permissions_module: {
759
368
  schema: 'metaschema_modules_public',
760
- table: 'permissions_module',
761
- fields: {
762
- id: 'uuid',
763
- database_id: 'uuid',
764
- schema_id: 'uuid',
765
- private_schema_id: 'uuid',
766
- table_id: 'uuid',
767
- table_name: 'text',
768
- default_table_id: 'uuid',
769
- default_table_name: 'text',
770
- bitlen: 'int',
771
- membership_type: 'int',
772
- entity_table_id: 'uuid',
773
- actor_table_id: 'uuid',
774
- prefix: 'text',
775
- get_padded_mask: 'text',
776
- get_mask: 'text',
777
- get_by_mask: 'text',
778
- get_mask_by_name: 'text'
779
- }
369
+ table: 'permissions_module'
780
370
  },
781
371
  limits_module: {
782
372
  schema: 'metaschema_modules_public',
783
- table: 'limits_module',
784
- fields: {
785
- id: 'uuid',
786
- database_id: 'uuid',
787
- schema_id: 'uuid',
788
- private_schema_id: 'uuid',
789
- table_id: 'uuid',
790
- table_name: 'text',
791
- default_table_id: 'uuid',
792
- default_table_name: 'text',
793
- limit_increment_function: 'text',
794
- limit_decrement_function: 'text',
795
- limit_increment_trigger: 'text',
796
- limit_decrement_trigger: 'text',
797
- limit_update_trigger: 'text',
798
- limit_check_function: 'text',
799
- prefix: 'text',
800
- membership_type: 'int',
801
- entity_table_id: 'uuid',
802
- actor_table_id: 'uuid'
803
- }
373
+ table: 'limits_module'
374
+ },
375
+ levels_module: {
376
+ schema: 'metaschema_modules_public',
377
+ table: 'levels_module'
804
378
  },
805
379
  events_module: {
806
380
  schema: 'metaschema_modules_public',
807
- table: 'events_module',
808
- fields: {
809
- id: 'uuid',
810
- database_id: 'uuid',
811
- schema_id: 'uuid',
812
- private_schema_id: 'uuid',
813
- events_table_id: 'uuid',
814
- events_table_name: 'text',
815
- event_aggregates_table_id: 'uuid',
816
- event_aggregates_table_name: 'text',
817
- event_types_table_id: 'uuid',
818
- event_types_table_name: 'text',
819
- levels_table_id: 'uuid',
820
- levels_table_name: 'text',
821
- level_requirements_table_id: 'uuid',
822
- level_requirements_table_name: 'text',
823
- level_grants_table_id: 'uuid',
824
- level_grants_table_name: 'text',
825
- achievement_rewards_table_id: 'uuid',
826
- achievement_rewards_table_name: 'text',
827
- record_event: 'text',
828
- remove_event: 'text',
829
- tg_event: 'text',
830
- tg_event_toggle: 'text',
831
- tg_event_toggle_bool: 'text',
832
- tg_event_bool: 'text',
833
- upsert_aggregate: 'text',
834
- tg_update_aggregates: 'text',
835
- prune_events: 'text',
836
- steps_required: 'text',
837
- level_achieved: 'text',
838
- tg_check_achievements: 'text',
839
- grant_achievement: 'text',
840
- tg_achievement_reward: 'text',
841
- interval: 'text',
842
- retention: 'text',
843
- premake: 'int',
844
- prefix: 'text',
845
- membership_type: 'int',
846
- entity_table_id: 'uuid',
847
- actor_table_id: 'uuid'
848
- }
381
+ table: 'events_module'
849
382
  },
850
383
  users_module: {
851
384
  schema: 'metaschema_modules_public',
852
- table: 'users_module',
853
- fields: {
854
- id: 'uuid',
855
- database_id: 'uuid',
856
- schema_id: 'uuid',
857
- table_id: 'uuid',
858
- table_name: 'text',
859
- type_table_id: 'uuid',
860
- type_table_name: 'text'
861
- }
385
+ table: 'users_module'
862
386
  },
863
387
  hierarchy_module: {
864
388
  schema: 'metaschema_modules_public',
865
- table: 'hierarchy_module',
866
- fields: {
867
- id: 'uuid',
868
- database_id: 'uuid',
869
- schema_id: 'uuid',
870
- private_schema_id: 'uuid',
871
- chart_edges_table_id: 'uuid',
872
- chart_edges_table_name: 'text',
873
- hierarchy_sprt_table_id: 'uuid',
874
- hierarchy_sprt_table_name: 'text',
875
- chart_edge_grants_table_id: 'uuid',
876
- chart_edge_grants_table_name: 'text',
877
- entity_table_id: 'uuid',
878
- users_table_id: 'uuid',
879
- prefix: 'text',
880
- private_schema_name: 'text',
881
- sprt_table_name: 'text',
882
- rebuild_hierarchy_function: 'text',
883
- get_subordinates_function: 'text',
884
- get_managers_function: 'text',
885
- is_manager_of_function: 'text'
886
- }
389
+ table: 'hierarchy_module'
887
390
  },
888
391
  membership_types_module: {
889
392
  schema: 'metaschema_modules_public',
890
- table: 'membership_types_module',
891
- fields: {
892
- id: 'uuid',
893
- database_id: 'uuid',
894
- schema_id: 'uuid',
895
- table_id: 'uuid',
896
- table_name: 'text'
897
- }
393
+ table: 'membership_types_module'
898
394
  },
899
395
  invites_module: {
900
396
  schema: 'metaschema_modules_public',
901
- table: 'invites_module',
902
- fields: {
903
- id: 'uuid',
904
- database_id: 'uuid',
905
- schema_id: 'uuid',
906
- private_schema_id: 'uuid',
907
- emails_table_id: 'uuid',
908
- users_table_id: 'uuid',
909
- invites_table_id: 'uuid',
910
- claimed_invites_table_id: 'uuid',
911
- invites_table_name: 'text',
912
- claimed_invites_table_name: 'text',
913
- submit_invite_code_function: 'text',
914
- prefix: 'text',
915
- membership_type: 'int',
916
- entity_table_id: 'uuid'
917
- }
397
+ table: 'invites_module'
918
398
  },
919
399
  emails_module: {
920
400
  schema: 'metaschema_modules_public',
921
- table: 'emails_module',
922
- fields: {
923
- id: 'uuid',
924
- database_id: 'uuid',
925
- schema_id: 'uuid',
926
- private_schema_id: 'uuid',
927
- table_id: 'uuid',
928
- owner_table_id: 'uuid',
929
- table_name: 'text'
930
- }
401
+ table: 'emails_module'
931
402
  },
932
403
  sessions_module: {
933
404
  schema: 'metaschema_modules_public',
934
- table: 'sessions_module',
935
- fields: {
936
- id: 'uuid',
937
- database_id: 'uuid',
938
- schema_id: 'uuid',
939
- sessions_table_id: 'uuid',
940
- session_credentials_table_id: 'uuid',
941
- auth_settings_table_id: 'uuid',
942
- users_table_id: 'uuid',
943
- sessions_default_expiration: 'interval',
944
- sessions_table: 'text',
945
- session_credentials_table: 'text',
946
- auth_settings_table: 'text'
947
- }
405
+ table: 'sessions_module'
948
406
  },
949
407
  user_state_module: {
950
408
  schema: 'metaschema_modules_public',
951
- table: 'user_state_module',
952
- fields: {
953
- id: 'uuid',
954
- database_id: 'uuid',
955
- schema_id: 'uuid',
956
- table_id: 'uuid',
957
- table_name: 'text'
958
- }
409
+ table: 'user_state_module'
959
410
  },
960
411
  profiles_module: {
961
412
  schema: 'metaschema_modules_public',
962
- table: 'profiles_module',
963
- fields: {
964
- id: 'uuid',
965
- database_id: 'uuid',
966
- schema_id: 'uuid',
967
- private_schema_id: 'uuid',
968
- table_id: 'uuid',
969
- table_name: 'text',
970
- profile_permissions_table_id: 'uuid',
971
- profile_permissions_table_name: 'text',
972
- profile_grants_table_id: 'uuid',
973
- profile_grants_table_name: 'text',
974
- profile_definition_grants_table_id: 'uuid',
975
- profile_definition_grants_table_name: 'text',
976
- membership_type: 'int',
977
- entity_table_id: 'uuid',
978
- actor_table_id: 'uuid',
979
- permissions_table_id: 'uuid',
980
- memberships_table_id: 'uuid',
981
- prefix: 'text'
982
- }
413
+ table: 'profiles_module'
983
414
  },
984
415
  config_secrets_user_module: {
985
416
  schema: 'metaschema_modules_public',
986
- table: 'config_secrets_user_module',
987
- fields: {
988
- id: 'uuid',
989
- database_id: 'uuid',
990
- schema_id: 'uuid',
991
- table_id: 'uuid',
992
- table_name: 'text'
993
- }
417
+ table: 'config_secrets_user_module'
418
+ },
419
+ user_credentials_module: {
420
+ schema: 'metaschema_modules_public',
421
+ table: 'user_credentials_module'
422
+ },
423
+ user_settings_module: {
424
+ schema: 'metaschema_modules_public',
425
+ table: 'user_settings_module'
994
426
  },
995
427
  connected_accounts_module: {
996
428
  schema: 'metaschema_modules_public',
997
- table: 'connected_accounts_module',
998
- fields: {
999
- id: 'uuid',
1000
- database_id: 'uuid',
1001
- schema_id: 'uuid',
1002
- private_schema_id: 'uuid',
1003
- table_id: 'uuid',
1004
- owner_table_id: 'uuid',
1005
- table_name: 'text'
1006
- }
429
+ table: 'connected_accounts_module'
1007
430
  },
1008
431
  phone_numbers_module: {
1009
432
  schema: 'metaschema_modules_public',
1010
- table: 'phone_numbers_module',
1011
- fields: {
1012
- id: 'uuid',
1013
- database_id: 'uuid',
1014
- schema_id: 'uuid',
1015
- private_schema_id: 'uuid',
1016
- table_id: 'uuid',
1017
- owner_table_id: 'uuid',
1018
- table_name: 'text'
1019
- }
433
+ table: 'phone_numbers_module'
1020
434
  },
1021
435
  crypto_addresses_module: {
1022
436
  schema: 'metaschema_modules_public',
1023
- table: 'crypto_addresses_module',
1024
- fields: {
1025
- id: 'uuid',
1026
- database_id: 'uuid',
1027
- schema_id: 'uuid',
1028
- private_schema_id: 'uuid',
1029
- table_id: 'uuid',
1030
- owner_table_id: 'uuid',
1031
- table_name: 'text',
1032
- crypto_network: 'text'
1033
- }
437
+ table: 'crypto_addresses_module'
1034
438
  },
1035
439
  crypto_auth_module: {
1036
440
  schema: 'metaschema_modules_public',
1037
- table: 'crypto_auth_module',
1038
- fields: {
1039
- id: 'uuid',
1040
- database_id: 'uuid',
1041
- schema_id: 'uuid',
1042
- users_table_id: 'uuid',
1043
- sessions_table_id: 'uuid',
1044
- session_credentials_table_id: 'uuid',
1045
- secrets_table_id: 'uuid',
1046
- addresses_table_id: 'uuid',
1047
- user_field: 'text',
1048
- crypto_network: 'text',
1049
- sign_in_request_challenge: 'text',
1050
- sign_in_record_failure: 'text',
1051
- sign_up_with_key: 'text',
1052
- sign_in_with_challenge: 'text'
1053
- }
441
+ table: 'crypto_auth_module'
1054
442
  },
1055
443
  field_module: {
1056
444
  schema: 'metaschema_modules_public',
1057
- table: 'field_module',
1058
- fields: {
1059
- id: 'uuid',
1060
- database_id: 'uuid',
1061
- private_schema_id: 'uuid',
1062
- table_id: 'uuid',
1063
- field_id: 'uuid',
1064
- node_type: 'text',
1065
- data: 'jsonb',
1066
- triggers: 'text[]',
1067
- functions: 'text[]'
1068
- }
445
+ table: 'field_module'
1069
446
  },
1070
447
  table_module: {
1071
448
  schema: 'metaschema_modules_public',
1072
- table: 'table_module',
1073
- fields: {
1074
- id: 'uuid',
1075
- database_id: 'uuid',
1076
- private_schema_id: 'uuid',
1077
- table_id: 'uuid',
1078
- node_type: 'text',
1079
- data: 'jsonb',
1080
- fields: 'uuid[]'
1081
- }
449
+ table: 'table_module'
1082
450
  },
1083
451
  // NOTE: table_template_module has been removed from pgpm-modules (superseded by blueprints)
1084
452
  secure_table_provision: {
1085
453
  schema: 'metaschema_modules_public',
1086
- table: 'secure_table_provision',
1087
- fields: {
1088
- id: 'uuid',
1089
- database_id: 'uuid',
1090
- schema_id: 'uuid',
1091
- table_id: 'uuid',
1092
- table_name: 'text',
1093
- nodes: 'jsonb',
1094
- use_rls: 'boolean',
1095
- fields: 'jsonb[]',
1096
- grants: 'jsonb',
1097
- policies: 'jsonb',
1098
- out_fields: 'uuid[]'
1099
- }
454
+ table: 'secure_table_provision'
1100
455
  },
1101
456
  uuid_module: {
1102
457
  schema: 'metaschema_modules_public',
1103
- table: 'uuid_module',
1104
- fields: {
1105
- id: 'uuid',
1106
- database_id: 'uuid',
1107
- schema_id: 'uuid',
1108
- uuid_function: 'text',
1109
- uuid_seed: 'text'
1110
- }
458
+ table: 'uuid_module'
1111
459
  },
1112
460
  default_ids_module: {
1113
461
  schema: 'metaschema_modules_public',
1114
- table: 'default_ids_module',
1115
- fields: {
1116
- id: 'uuid',
1117
- database_id: 'uuid'
1118
- }
462
+ table: 'default_ids_module'
1119
463
  },
1120
464
  denormalized_table_field: {
1121
465
  schema: 'metaschema_modules_public',
1122
- table: 'denormalized_table_field',
1123
- fields: {
1124
- id: 'uuid',
1125
- database_id: 'uuid',
1126
- table_id: 'uuid',
1127
- field_id: 'uuid',
1128
- set_ids: 'uuid[]',
1129
- ref_table_id: 'uuid',
1130
- ref_field_id: 'uuid',
1131
- ref_ids: 'uuid[]',
1132
- use_updates: 'boolean',
1133
- update_defaults: 'boolean',
1134
- func_name: 'text',
1135
- func_order: 'int'
1136
- }
466
+ table: 'denormalized_table_field'
1137
467
  },
1138
468
  relation_provision: {
1139
469
  schema: 'metaschema_modules_public',
1140
- table: 'relation_provision',
1141
- fields: {
1142
- id: 'uuid',
1143
- database_id: 'uuid',
1144
- relation_type: 'text',
1145
- source_table_id: 'uuid',
1146
- target_table_id: 'uuid',
1147
- field_name: 'text',
1148
- delete_action: 'text',
1149
- is_required: 'boolean',
1150
- api_required: 'boolean',
1151
- junction_table_id: 'uuid',
1152
- junction_table_name: 'text',
1153
- junction_schema_id: 'uuid',
1154
- source_field_name: 'text',
1155
- target_field_name: 'text',
1156
- use_composite_key: 'boolean',
1157
- create_index: 'boolean',
1158
- expose_in_api: 'boolean',
1159
- nodes: 'jsonb',
1160
- grants: 'jsonb',
1161
- policies: 'jsonb',
1162
- out_field_id: 'uuid',
1163
- out_junction_table_id: 'uuid',
1164
- out_source_field_id: 'uuid',
1165
- out_target_field_id: 'uuid'
1166
- }
470
+ table: 'relation_provision'
1167
471
  },
1168
- rate_limits_module: {
472
+ entity_type_provision: {
1169
473
  schema: 'metaschema_modules_public',
1170
- table: 'rate_limits_module',
1171
- fields: {
1172
- id: 'uuid',
1173
- database_id: 'uuid',
1174
- schema_id: 'uuid',
1175
- rate_limit_settings_table_id: 'uuid',
1176
- ip_rate_limits_table_id: 'uuid',
1177
- rate_limits_table_id: 'uuid',
1178
- rate_limit_settings_table: 'text',
1179
- ip_rate_limits_table: 'text',
1180
- rate_limits_table: 'text'
1181
- }
474
+ table: 'entity_type_provision'
1182
475
  },
1183
- storage_module: {
476
+ rate_limits_module: {
1184
477
  schema: 'metaschema_modules_public',
1185
- table: 'storage_module',
1186
- fields: {
1187
- id: 'uuid',
1188
- database_id: 'uuid',
1189
- schema_id: 'uuid',
1190
- private_schema_id: 'uuid',
1191
- buckets_table_id: 'uuid',
1192
- files_table_id: 'uuid',
1193
- buckets_table_name: 'text',
1194
- files_table_name: 'text',
1195
- membership_type: 'int',
1196
- policies: 'jsonb',
1197
- skip_default_policy_tables: 'text[]',
1198
- entity_table_id: 'uuid',
1199
- endpoint: 'text',
1200
- public_url_prefix: 'text',
1201
- provider: 'text',
1202
- allowed_origins: 'text[]',
1203
- restrict_reads: 'boolean',
1204
- has_path_shares: 'boolean',
1205
- path_shares_table_id: 'uuid',
1206
- upload_url_expiry_seconds: 'int',
1207
- download_url_expiry_seconds: 'int',
1208
- max_filename_length: 'int',
1209
- cache_ttl_seconds: 'int',
1210
- max_bulk_files: 'int',
1211
- has_versioning: 'boolean',
1212
- has_content_hash: 'boolean',
1213
- has_custom_keys: 'boolean',
1214
- has_audit_log: 'boolean',
1215
- file_events_table_id: 'uuid'
1216
- }
478
+ table: 'rate_limits_module'
1217
479
  },
1218
- entity_type_provision: {
480
+ storage_module: {
1219
481
  schema: 'metaschema_modules_public',
1220
- table: 'entity_type_provision',
1221
- fields: {
1222
- id: 'uuid',
1223
- database_id: 'uuid',
1224
- name: 'text',
1225
- prefix: 'text',
1226
- description: 'text',
1227
- parent_entity: 'text',
1228
- table_name: 'text',
1229
- is_visible: 'boolean',
1230
- has_limits: 'boolean',
1231
- has_profiles: 'boolean',
1232
- has_levels: 'boolean',
1233
- has_storage: 'boolean',
1234
- has_invites: 'boolean',
1235
- storage_config: 'jsonb',
1236
- skip_entity_policies: 'boolean',
1237
- table_provision: 'jsonb',
1238
- out_membership_type: 'int',
1239
- out_entity_table_id: 'uuid',
1240
- out_entity_table_name: 'text',
1241
- out_installed_modules: 'text[]',
1242
- out_storage_module_id: 'uuid',
1243
- out_buckets_table_id: 'uuid',
1244
- out_files_table_id: 'uuid',
1245
- out_path_shares_table_id: 'uuid',
1246
- out_invites_module_id: 'uuid'
1247
- }
482
+ table: 'storage_module'
1248
483
  },
1249
484
  billing_module: {
1250
485
  schema: 'metaschema_modules_public',
1251
- table: 'billing_module',
1252
- fields: {
1253
- id: 'uuid',
1254
- database_id: 'uuid',
1255
- schema_id: 'uuid',
1256
- private_schema_id: 'uuid',
1257
- meters_table_id: 'uuid',
1258
- meters_table_name: 'text',
1259
- plan_subscriptions_table_id: 'uuid',
1260
- plan_subscriptions_table_name: 'text',
1261
- ledger_table_id: 'uuid',
1262
- ledger_table_name: 'text',
1263
- balances_table_id: 'uuid',
1264
- balances_table_name: 'text',
1265
- record_usage_function: 'text',
1266
- prefix: 'text'
1267
- }
486
+ table: 'billing_module'
1268
487
  },
1269
488
  billing_provider_module: {
1270
489
  schema: 'metaschema_modules_public',
1271
- table: 'billing_provider_module',
1272
- fields: {
1273
- id: 'uuid',
1274
- database_id: 'uuid',
1275
- schema_id: 'uuid',
1276
- private_schema_id: 'uuid',
1277
- provider: 'text',
1278
- products_table_id: 'uuid',
1279
- prices_table_id: 'uuid',
1280
- subscriptions_table_id: 'uuid',
1281
- billing_customers_table_id: 'uuid',
1282
- billing_customers_table_name: 'text',
1283
- billing_products_table_id: 'uuid',
1284
- billing_products_table_name: 'text',
1285
- billing_prices_table_id: 'uuid',
1286
- billing_prices_table_name: 'text',
1287
- billing_subscriptions_table_id: 'uuid',
1288
- billing_subscriptions_table_name: 'text',
1289
- billing_webhook_events_table_id: 'uuid',
1290
- billing_webhook_events_table_name: 'text',
1291
- process_billing_event_function: 'text',
1292
- prefix: 'text'
1293
- }
490
+ table: 'billing_provider_module'
1294
491
  },
1295
492
  devices_module: {
1296
493
  schema: 'metaschema_modules_public',
1297
- table: 'devices_module',
1298
- fields: {
1299
- id: 'uuid',
1300
- database_id: 'uuid',
1301
- schema_id: 'uuid',
1302
- user_devices_table_id: 'uuid',
1303
- device_settings_table_id: 'uuid',
1304
- user_devices_table: 'text',
1305
- device_settings_table: 'text'
1306
- }
494
+ table: 'devices_module'
1307
495
  },
1308
496
  identity_providers_module: {
1309
497
  schema: 'metaschema_modules_public',
1310
- table: 'identity_providers_module',
1311
- fields: {
1312
- id: 'uuid',
1313
- database_id: 'uuid',
1314
- schema_id: 'uuid',
1315
- private_schema_id: 'uuid',
1316
- table_id: 'uuid',
1317
- table_name: 'text'
1318
- }
498
+ table: 'identity_providers_module'
1319
499
  },
1320
500
  notifications_module: {
1321
501
  schema: 'metaschema_modules_public',
1322
- table: 'notifications_module',
1323
- fields: {
1324
- id: 'uuid',
1325
- database_id: 'uuid',
1326
- schema_id: 'uuid',
1327
- private_schema_id: 'uuid',
1328
- notifications_table_id: 'uuid',
1329
- read_state_table_id: 'uuid',
1330
- preferences_table_id: 'uuid',
1331
- channels_table_id: 'uuid',
1332
- delivery_log_table_id: 'uuid',
1333
- owner_table_id: 'uuid',
1334
- user_settings_table_id: 'uuid',
1335
- organization_settings_table_id: 'uuid',
1336
- has_channels: 'boolean',
1337
- has_preferences: 'boolean',
1338
- has_settings_extension: 'boolean',
1339
- has_digest_metadata: 'boolean',
1340
- has_subscriptions: 'boolean'
1341
- }
502
+ table: 'notifications_module'
1342
503
  },
1343
504
  plans_module: {
1344
505
  schema: 'metaschema_modules_public',
1345
- table: 'plans_module',
1346
- fields: {
1347
- id: 'uuid',
1348
- database_id: 'uuid',
1349
- schema_id: 'uuid',
1350
- private_schema_id: 'uuid',
1351
- plans_table_id: 'uuid',
1352
- plans_table_name: 'text',
1353
- plan_limits_table_id: 'uuid',
1354
- plan_limits_table_name: 'text',
1355
- plan_pricing_table_id: 'uuid',
1356
- plan_overrides_table_id: 'uuid',
1357
- apply_plan_function: 'text',
1358
- apply_plan_aggregate_function: 'text',
1359
- prefix: 'text'
1360
- }
506
+ table: 'plans_module'
1361
507
  },
1362
508
  realtime_module: {
1363
509
  schema: 'metaschema_modules_public',
1364
- table: 'realtime_module',
1365
- fields: {
1366
- id: 'uuid',
1367
- database_id: 'uuid',
1368
- schema_id: 'uuid',
1369
- private_schema_id: 'uuid',
1370
- subscriptions_schema_id: 'uuid',
1371
- change_log_table_id: 'uuid',
1372
- listener_node_table_id: 'uuid',
1373
- source_registry_table_id: 'uuid',
1374
- retention_hours: 'int',
1375
- lookahead_hours: 'int',
1376
- partition_interval: 'text',
1377
- notify_channel: 'text'
1378
- }
510
+ table: 'realtime_module'
1379
511
  },
1380
512
  session_secrets_module: {
1381
513
  schema: 'metaschema_modules_public',
1382
- table: 'session_secrets_module',
1383
- fields: {
1384
- id: 'uuid',
1385
- database_id: 'uuid',
1386
- schema_id: 'uuid',
1387
- table_id: 'uuid',
1388
- table_name: 'text',
1389
- sessions_table_id: 'uuid'
1390
- }
514
+ table: 'session_secrets_module'
1391
515
  },
1392
516
  config_secrets_org_module: {
1393
517
  schema: 'metaschema_modules_public',
1394
- table: 'config_secrets_org_module',
1395
- fields: {
1396
- id: 'uuid',
1397
- database_id: 'uuid',
1398
- schema_id: 'uuid',
1399
- table_id: 'uuid',
1400
- table_name: 'text'
1401
- }
518
+ table: 'config_secrets_org_module'
519
+ },
520
+ config_secrets_module: {
521
+ schema: 'metaschema_modules_public',
522
+ table: 'config_secrets_module'
523
+ },
524
+ i18n_module: {
525
+ schema: 'metaschema_modules_public',
526
+ table: 'i18n_module',
527
+ gqlTypeName: 'I18NModule' // i18n is a well-known abbreviation; PostGraphile inflector capitalizes the N
528
+ },
529
+ agent_module: {
530
+ schema: 'metaschema_modules_public',
531
+ table: 'agent_module'
532
+ },
533
+ function_module: {
534
+ schema: 'metaschema_modules_public',
535
+ table: 'function_module'
536
+ },
537
+ namespace_module: {
538
+ schema: 'metaschema_modules_public',
539
+ table: 'namespace_module'
540
+ },
541
+ merkle_store_module: {
542
+ schema: 'metaschema_modules_public',
543
+ table: 'merkle_store_module'
544
+ },
545
+ graph_module: {
546
+ schema: 'metaschema_modules_public',
547
+ table: 'graph_module'
548
+ },
549
+ compute_log_module: {
550
+ schema: 'metaschema_modules_public',
551
+ table: 'compute_log_module'
552
+ },
553
+ db_usage_module: {
554
+ schema: 'metaschema_modules_public',
555
+ table: 'db_usage_module'
556
+ },
557
+ storage_log_module: {
558
+ schema: 'metaschema_modules_public',
559
+ table: 'storage_log_module'
560
+ },
561
+ transfer_log_module: {
562
+ schema: 'metaschema_modules_public',
563
+ table: 'transfer_log_module'
1402
564
  },
1403
565
  webauthn_auth_module: {
1404
566
  schema: 'metaschema_modules_public',
1405
- table: 'webauthn_auth_module',
1406
- fields: {
1407
- id: 'uuid',
1408
- database_id: 'uuid',
1409
- schema_id: 'uuid',
1410
- users_table_id: 'uuid',
1411
- credentials_table_id: 'uuid',
1412
- sessions_table_id: 'uuid',
1413
- session_credentials_table_id: 'uuid',
1414
- session_secrets_table_id: 'uuid',
1415
- auth_settings_table_id: 'uuid',
1416
- rp_id: 'text',
1417
- rp_name: 'text',
1418
- origin_allowlist: 'text[]',
1419
- attestation_type: 'text',
1420
- require_user_verification: 'boolean',
1421
- resident_key: 'text',
1422
- challenge_expiry: 'interval'
1423
- }
567
+ table: 'webauthn_auth_module'
1424
568
  },
1425
569
  webauthn_credentials_module: {
1426
570
  schema: 'metaschema_modules_public',
1427
- table: 'webauthn_credentials_module',
1428
- fields: {
1429
- id: 'uuid',
1430
- database_id: 'uuid',
1431
- schema_id: 'uuid',
1432
- private_schema_id: 'uuid',
1433
- table_id: 'uuid',
1434
- owner_table_id: 'uuid',
1435
- table_name: 'text'
1436
- }
571
+ table: 'webauthn_credentials_module'
1437
572
  },
1438
573
  inference_log_module: {
1439
574
  schema: 'metaschema_modules_public',
1440
575
  table: 'inference_log_module',
1441
- fields: {
1442
- id: 'uuid',
1443
- database_id: 'uuid',
1444
- schema_id: 'uuid',
1445
- private_schema_id: 'uuid',
1446
- inference_log_table_id: 'uuid',
1447
- inference_log_table_name: 'text',
1448
- usage_daily_table_id: 'uuid',
1449
- usage_daily_table_name: 'text',
1450
- interval: 'text',
1451
- retention: 'text',
1452
- premake: 'int',
1453
- prefix: 'text'
1454
- }
1455
576
  },
1456
577
  rate_limit_meters_module: {
1457
578
  schema: 'metaschema_modules_public',
1458
579
  table: 'rate_limit_meters_module',
1459
- fields: {
1460
- id: 'uuid',
1461
- database_id: 'uuid',
1462
- schema_id: 'uuid',
1463
- private_schema_id: 'uuid',
1464
- rate_limit_state_table_id: 'uuid',
1465
- rate_limit_state_table_name: 'text',
1466
- rate_limit_overrides_table_id: 'uuid',
1467
- rate_limit_overrides_table_name: 'text',
1468
- rate_window_limits_table_id: 'uuid',
1469
- rate_window_limits_table_name: 'text',
1470
- check_rate_limit_function: 'text',
1471
- prefix: 'text'
1472
- }
1473
580
  },
1474
581
  spatial_relation: {
1475
582
  schema: 'metaschema_public',
1476
- table: 'spatial_relation',
1477
- fields: {
1478
- id: 'uuid',
1479
- database_id: 'uuid',
1480
- table_id: 'uuid',
1481
- field_id: 'uuid',
1482
- ref_table_id: 'uuid',
1483
- ref_field_id: 'uuid',
1484
- name: 'text',
1485
- operator: 'text',
1486
- param_name: 'text',
1487
- category: 'text',
1488
- module: 'text',
1489
- scope: 'int',
1490
- tags: 'text[]'
1491
- }
583
+ table: 'spatial_relation'
1492
584
  }
1493
585
  };
1494
586
  // =============================================================================