@soulbatical/tetra-core 0.1.18 → 0.1.20

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,96 @@
1
+ # @soulbatical/tetra-core
2
+
3
+ The foundation framework for Tetra platform projects (Soulbatical BV) — config-driven Express + Supabase + TypeScript.
4
+
5
+ ## Authentication Middleware
6
+
7
+ Provides universal JWT authentication via Supabase with pluggable user enrichment.
8
+
9
+ ### Setup
10
+
11
+ ```typescript
12
+ import { configureAuth } from '@soulbatical/tetra-core';
13
+
14
+ configureAuth({
15
+ loadUserContext: async (supabaseUser, token) => {
16
+ // Anonymous users (Supabase Anonymous Sign-Ins)
17
+ if (supabaseUser.is_anonymous) {
18
+ return {
19
+ id: supabaseUser.id,
20
+ is_anonymous: true,
21
+ };
22
+ }
23
+
24
+ // Regular users: enrich from database
25
+ const session = await sessionService.getUserSession(supabaseUser.id);
26
+ if (!session) return null; // reject
27
+ return {
28
+ email: session.email,
29
+ organizationId: session.active_organization_id,
30
+ is_superadmin: session.is_superadmin,
31
+ role: session.role,
32
+ };
33
+ },
34
+ roleHierarchy: { viewer: 1, member: 2, admin: 3 },
35
+ orgAccessExemptPaths: ['/current/organization'],
36
+ });
37
+ ```
38
+
39
+ ### Middleware
40
+
41
+ | Middleware | Purpose |
42
+ |-----------|---------|
43
+ | `authenticateToken` | Verify JWT, reject if missing/invalid |
44
+ | `authenticateTokenOnly` | Verify JWT if present, continue without user if not (alias: `optionalAuth`) |
45
+ | `requireSuperAdmin` | Require superadmin flag |
46
+ | `requireOrgAdmin` | Require admin/owner role in active org |
47
+ | `requireRole(...roles)` | Require specific role(s) |
48
+ | `validateOrganizationAccess` | Block org ID override attacks |
49
+
50
+ ### AuthenticatedUser Interface
51
+
52
+ ```typescript
53
+ interface AuthenticatedUser {
54
+ id: string;
55
+ email?: string;
56
+ organizationId?: string;
57
+ active_organization_id?: string;
58
+ organizationIds: string[];
59
+ role?: string;
60
+ is_superadmin?: boolean;
61
+ is_anonymous?: boolean; // true for Supabase Anonymous Sign-In users
62
+ [key: string]: any;
63
+ }
64
+ ```
65
+
66
+ ### Anonymous Users (v0.1.18+)
67
+
68
+ Supabase Anonymous Sign-Ins create real authenticated users with `is_anonymous: true` in the JWT. This enables:
69
+
70
+ - Guest shopping carts with proper RLS (no session_id workarounds)
71
+ - Seamless upgrade to real accounts (UUID stays the same)
72
+ - All `authenticated` role RLS policies work for anonymous users
73
+
74
+ **Pattern in `loadUserContext`:**
75
+ ```typescript
76
+ if (supabaseUser.is_anonymous) {
77
+ return { id: supabaseUser.id, is_anonymous: true };
78
+ }
79
+ ```
80
+
81
+ Anonymous users skip the database profile lookup (they don't have one). The `is_anonymous` flag is available on `req.user` for controllers that need to differentiate.
82
+
83
+ ### Usage in Routes
84
+
85
+ ```typescript
86
+ import { authenticateToken, authenticateTokenOnly, requireSuperAdmin } from '@soulbatical/tetra-core';
87
+
88
+ // Public route with optional auth (anonymous + real users get JWT validated)
89
+ router.get('/cart', authenticateTokenOnly, cartController.getCart);
90
+
91
+ // Protected route (must be authenticated)
92
+ router.get('/profile', authenticateToken, profileController.get);
93
+
94
+ // Admin route
95
+ router.get('/admin/orders', authenticateToken, requireOrgAdmin, adminController.list);
96
+ ```
@@ -12,7 +12,7 @@
12
12
  * E. Data exposure — Realtime, storage, schema leaks
13
13
  * F. Migration verification — Tetra standards applied correctly
14
14
  *
15
- * Total: 22 checks (was 10 in v1.0)
15
+ * Total: 23 checks (was 22 in v2.0, was 10 in v1.0)
16
16
  */
17
17
  export interface AuditCheck {
18
18
  /** Short identifier */
@@ -1 +1 @@
1
- {"version":3,"file":"rls-auditor.d.ts","sourceRoot":"","sources":["../../src/generators/rls-auditor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,UAAU;IACzB,uBAAuB;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,QAAQ,EAAE,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,CAAC;IACjF,mEAAmE;IACnE,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IACpC,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,UAAU,EAAE,CAic7C;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CA4CzC"}
1
+ {"version":3,"file":"rls-auditor.d.ts","sourceRoot":"","sources":["../../src/generators/rls-auditor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,UAAU;IACzB,uBAAuB;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,QAAQ,EAAE,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,CAAC;IACjF,mEAAmE;IACnE,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IACpC,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,UAAU,EAAE,CAud7C;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CA4CzC"}
@@ -12,7 +12,7 @@
12
12
  * E. Data exposure — Realtime, storage, schema leaks
13
13
  * F. Migration verification — Tetra standards applied correctly
14
14
  *
15
- * Total: 22 checks (was 10 in v1.0)
15
+ * Total: 23 checks (was 22 in v2.0, was 10 in v1.0)
16
16
  */
17
17
  /**
18
18
  * Get all audit checks.
@@ -423,6 +423,28 @@ WHERE n.nspname = 'public'
423
423
  AND ic.column_name = 'organization_id'
424
424
  )
425
425
  ORDER BY c.relname;`,
426
+ },
427
+ {
428
+ id: 'exec-sql-insecure',
429
+ name: 'exec_sql function security (SECURITY DEFINER or callable by anon/authenticated)',
430
+ category: 'bypass',
431
+ severity: 'error',
432
+ sql: `
433
+ SELECT p.proname as table_name,
434
+ CASE
435
+ WHEN p.prosecdef = true THEN 'CRITICAL: exec_sql is SECURITY DEFINER — should be SECURITY INVOKER'
436
+ WHEN has_function_privilege('anon', p.oid, 'EXECUTE') THEN 'CRITICAL: anon can call exec_sql — arbitrary SQL execution by unauthenticated users'
437
+ WHEN has_function_privilege('authenticated', p.oid, 'EXECUTE') THEN 'CRITICAL: authenticated can call exec_sql — arbitrary SQL execution by any logged-in user'
438
+ END as issue
439
+ FROM pg_proc p
440
+ JOIN pg_namespace n ON n.oid = p.pronamespace
441
+ WHERE n.nspname = 'public'
442
+ AND p.proname = 'exec_sql'
443
+ AND (
444
+ p.prosecdef = true
445
+ OR has_function_privilege('anon', p.oid, 'EXECUTE')
446
+ OR has_function_privilege('authenticated', p.oid, 'EXECUTE')
447
+ );`,
426
448
  },
427
449
  {
428
450
  id: 'org-members-table',
@@ -1 +1 @@
1
- {"version":3,"file":"rls-auditor.js","sourceRoot":"","sources":["../../src/generators/rls-auditor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rls-auditor.js","sourceRoot":"","sources":["../../src/generators/rls-auditor.ts"],"names":[],"mappings":"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"}
@@ -151,15 +151,30 @@ function buildReport(results) {
151
151
  };
152
152
  }
153
153
  async function executeSQL(supabase, sql) {
154
- // Try common RPC function names for raw SQL execution
154
+ // exec_sql returns JSONB (array), execute_sql may return rows directly
155
155
  for (const fnName of ['exec_sql', 'execute_sql']) {
156
156
  const { data, error } = await supabase.rpc(fnName, { query: sql });
157
- if (!error && Array.isArray(data))
157
+ if (error)
158
+ continue;
159
+ // exec_sql returns JSONB array directly
160
+ if (Array.isArray(data))
158
161
  return data;
159
- if (!error && data === null)
162
+ // If data is null/empty, the query returned no violations (pass)
163
+ if (data === null || data === undefined)
160
164
  return [];
165
+ // Some implementations return JSONB string
166
+ if (typeof data === 'string') {
167
+ try {
168
+ const parsed = JSON.parse(data);
169
+ return Array.isArray(parsed) ? parsed : [];
170
+ }
171
+ catch {
172
+ continue;
173
+ }
174
+ }
175
+ return [];
161
176
  }
162
- return [{ table_name: '_rls_checker', issue: 'No exec_sql or execute_sql function found. Create one to run the checker.' }];
177
+ return [{ table_name: '_rls_checker', issue: 'No exec_sql function found. Deploy the Tetra exec_sql migration first. See: rls-exec-sql.sql in @soulbatical/tetra-core' }];
163
178
  }
164
179
  function formatTextReport(results, categories, summary, passed) {
165
180
  const w = 64;
@@ -1 +1 @@
1
- {"version":3,"file":"rls-checker.js","sourceRoot":"","sources":["../../src/generators/rls-checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rls-checker.js","sourceRoot":"","sources":["../../src/generators/rls-checker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,cAAc,EAAmB,MAAM,kBAAkB,CAAC;AAyDnE,MAAM,eAAe,GAA2B;IAC9C,UAAU,EAAE,6CAA6C;IACzD,MAAM,EAAE,wCAAwC;IAChD,IAAI,EAAE,mCAAmC;IACzC,MAAM,EAAE,yCAAyC;IACjD,QAAQ,EAAE,qCAAqC;IAC/C,SAAS,EAAE,6CAA6C;CACzD,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AAE3F;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAA0B,EAC1B,OAOC;IAED,MAAM,SAAS,GAAG,cAAc,EAAE,CAAC;IACnC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAElE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;QACtC,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;QACjE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,oDAAoD;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpD,OAAO,SAAS,CAAC;YACT,KAAK,CAAC,EAAE;UACV,QAAQ;EAChB,CAAC;IACD,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACtF,MAAM,WAAW,GAAG,SAAS,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,MAAM,kCAAkC,CAAC;IAE7F,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAErD,+BAA+B;IAC/B,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC5D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAI,GAA8B,CAAC,QAAQ,CAAC;QACzD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxE,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,OAAO,GAAqB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACnD,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACzD,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,MAAM,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;YAC/B,cAAc,EAAE,UAAU,CAAC,MAAM;YACjC,UAAU;SACX,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAA0B;IAE1B,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,MAAM,OAAO,GAAqB,EAAE,CAAC;IAErC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC;YACX,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,MAAM,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;YAC/B,cAAc,EAAE,UAAU,CAAC,MAAM;YACjC,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,+DAA+D;AAE/D,SAAS,WAAW,CAAC,OAAyB;IAC5C,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;IACnF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACjF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACjF,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IACzD,MAAM,MAAM,GAAG,UAAU,KAAK,CAAC,CAAC;IAEhC,2BAA2B;IAC3B,MAAM,UAAU,GAAyB,cAAc;SACpD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC;SACpD,GAAG,CAAC,GAAG,CAAC,EAAE;QACT,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;QACpF,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;QAClF,OAAO;YACL,QAAQ,EAAE,GAAG;YACb,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,IAAI,GAAG;YAClC,WAAW,EAAE,SAAS,CAAC,MAAM;YAC7B,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM;YACpD,UAAU,EAAE,SAAS;YACrB,SAAS,EAAE,QAAQ;YACnB,MAAM,EAAE,SAAS,KAAK,CAAC;SACxB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,UAAU,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,SAAS,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClF,IAAI,SAAS,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,WAAW,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjF,IAAI,SAAS,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,OAAO,CAAC,CAAC;IAEnD,MAAM,OAAO,GAAG,MAAM;QACpB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAChB,CAAC,CAAC,SAAS,WAAW,IAAI,OAAO,CAAC,MAAM,mBAAmB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAC9E,CAAC,CAAC,SAAS,WAAW,IAAI,OAAO,CAAC,MAAM,4BAA4B;QACtE,CAAC,CAAC,SAAS,WAAW,IAAI,OAAO,CAAC,MAAM,mBAAmB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAEjF,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAEpE,OAAO;QACL,MAAM;QACN,OAAO;QACP,WAAW,EAAE,OAAO,CAAC,MAAM;QAC3B,WAAW;QACX,UAAU;QACV,SAAS;QACT,SAAS;QACT,UAAU;QACV,MAAM,EAAE,OAAO;QACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,IAAI;KACL,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,QAA0B,EAAE,GAAW;IAC/D,uEAAuE;IACvE,KAAK,MAAM,MAAM,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,CAAC;QACjD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QACnE,IAAI,KAAK;YAAE,SAAS;QACpB,wCAAwC;QACxC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACrC,iEAAiE;QACjE,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACnD,2CAA2C;QAC3C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC;gBAAC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAAC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,SAAS;YAAC,CAAC;QAC1G,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,yHAAyH,EAAE,CAAC,CAAC;AAC5K,CAAC;AAED,SAAS,gBAAgB,CACvB,OAAyB,EACzB,UAAgC,EAChC,OAAe,EACf,MAAe;IAEf,MAAM,CAAC,GAAG,EAAE,CAAC;IACb,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE3B,MAAM,KAAK,GAAa;QACtB,IAAI;QACJ,kCAAkC;QAClC,IAAI;QACJ,EAAE;QACF,aAAa,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,EAAE;QAC/C,KAAK,OAAO,EAAE;QACd,EAAE;KACH,CAAC;IAEF,oBAAoB;IACpB,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACnC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACtC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM;YACvB,CAAC,CAAC,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,WAAW,SAAS;YACjD,CAAC,CAAC,GAAG,GAAG,CAAC,UAAU,YAAY,GAAG,CAAC,SAAS,WAAW,CAAC;QAC1D,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,gCAAgC;IAChC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjB,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;YAC1E,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAEpC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBAC3E,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC,CAAC;gBACnD,CAAC;gBACD,IAAI,CAAC,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,cAAc,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Tetra exec_sql migration generator
3
+ *
4
+ * Generates the SQL to create a secure exec_sql function in Supabase.
5
+ * This function is REQUIRED for runRLSCheck() to work.
6
+ *
7
+ * Security model:
8
+ * - SECURITY INVOKER (not definer) — no privilege escalation
9
+ * - Only service_role and postgres can call it
10
+ * - anon and authenticated are explicitly REVOKED
11
+ *
12
+ * Usage:
13
+ * import { generateExecSQL } from '@soulbatical/tetra-core';
14
+ * const sql = generateExecSQL();
15
+ * // Apply as a Supabase migration
16
+ */
17
+ /**
18
+ * Get the exec_sql migration SQL.
19
+ * Inline to avoid file system dependencies at runtime.
20
+ */
21
+ export declare function generateExecSQL(): string;
22
+ /**
23
+ * Check if exec_sql function exists in a Supabase project and verify security.
24
+ * Uses the same SupabaseExecutor interface as runRLSCheck.
25
+ */
26
+ export declare function checkExecSQLExists(supabase: {
27
+ rpc: (fn: string, params: Record<string, unknown>) => Promise<{
28
+ data: unknown;
29
+ error: unknown;
30
+ }>;
31
+ }): Promise<{
32
+ exists: boolean;
33
+ secure: boolean;
34
+ issues: string[];
35
+ }>;
36
+ //# sourceMappingURL=rls-exec-sql.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rls-exec-sql.d.ts","sourceRoot":"","sources":["../../src/generators/rls-exec-sql.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH;;;GAGG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAoDxC;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE;IAAE,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CAAE,GAC7G,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CA0DjE"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Tetra exec_sql migration generator
3
+ *
4
+ * Generates the SQL to create a secure exec_sql function in Supabase.
5
+ * This function is REQUIRED for runRLSCheck() to work.
6
+ *
7
+ * Security model:
8
+ * - SECURITY INVOKER (not definer) — no privilege escalation
9
+ * - Only service_role and postgres can call it
10
+ * - anon and authenticated are explicitly REVOKED
11
+ *
12
+ * Usage:
13
+ * import { generateExecSQL } from '@soulbatical/tetra-core';
14
+ * const sql = generateExecSQL();
15
+ * // Apply as a Supabase migration
16
+ */
17
+ /**
18
+ * Get the exec_sql migration SQL.
19
+ * Inline to avoid file system dependencies at runtime.
20
+ */
21
+ export function generateExecSQL() {
22
+ return `-- ============================================================================
23
+ -- Tetra Core: exec_sql — Secure SQL Execution for RLS Checker
24
+ -- ============================================================================
25
+ -- SECURITY MODEL:
26
+ -- - SECURITY INVOKER (NOT definer) — runs as the calling role
27
+ -- - Only service_role should call this (via backend service client)
28
+ -- - anon and authenticated are explicitly REVOKED from EXECUTE
29
+ -- - search_path set to '' to prevent search_path injection
30
+ --
31
+ -- WHY THIS IS SAFE:
32
+ -- 1. service_role already bypasses RLS — this adds no new capability
33
+ -- 2. anon/authenticated CANNOT call it (REVOKE + no GRANT)
34
+ -- 3. Even if somehow called by authenticated, it runs as THAT role
35
+ -- (SECURITY INVOKER), so RLS still applies to their queries
36
+ -- 4. The function is just a thin wrapper around EXECUTE — it doesn't
37
+ -- escalate privileges
38
+ -- ============================================================================
39
+
40
+ -- Drop old versions if they exist
41
+ DROP FUNCTION IF EXISTS public.exec_sql(text);
42
+ DROP FUNCTION IF EXISTS public.execute_sql(text);
43
+
44
+ -- Create the function
45
+ CREATE OR REPLACE FUNCTION public.exec_sql(query text)
46
+ RETURNS jsonb
47
+ LANGUAGE plpgsql
48
+ VOLATILE
49
+ SECURITY INVOKER
50
+ SET search_path = ''
51
+ AS $$
52
+ DECLARE
53
+ result jsonb;
54
+ BEGIN
55
+ EXECUTE 'SELECT COALESCE(jsonb_agg(row_to_json(t)), ''[]''::jsonb) FROM (' || query || ') t'
56
+ INTO result;
57
+ RETURN result;
58
+ END;
59
+ $$;
60
+
61
+ -- CRITICAL: Revoke from all public-facing roles
62
+ REVOKE ALL ON FUNCTION public.exec_sql(text) FROM PUBLIC;
63
+ REVOKE ALL ON FUNCTION public.exec_sql(text) FROM anon;
64
+ REVOKE ALL ON FUNCTION public.exec_sql(text) FROM authenticated;
65
+
66
+ -- Only service_role (backend) and postgres (migrations) can use it
67
+ GRANT EXECUTE ON FUNCTION public.exec_sql(text) TO service_role;
68
+ GRANT EXECUTE ON FUNCTION public.exec_sql(text) TO postgres;
69
+
70
+ COMMENT ON FUNCTION public.exec_sql(text) IS
71
+ 'Tetra RLS Checker: executes audit SQL. SECURITY INVOKER + only service_role can call. '
72
+ 'anon/authenticated are explicitly revoked. Does NOT escalate privileges.';`;
73
+ }
74
+ /**
75
+ * Check if exec_sql function exists in a Supabase project and verify security.
76
+ * Uses the same SupabaseExecutor interface as runRLSCheck.
77
+ */
78
+ export async function checkExecSQLExists(supabase) {
79
+ const issues = [];
80
+ // Try calling exec_sql with a harmless query
81
+ const { data, error } = await supabase.rpc('exec_sql', { query: 'SELECT 1 as ok' });
82
+ if (error) {
83
+ return { exists: false, secure: false, issues: ['exec_sql function not found — deploy the Tetra exec_sql migration'] };
84
+ }
85
+ // Function exists — check security properties
86
+ const securityCheck = await supabase.rpc('exec_sql', {
87
+ query: `
88
+ SELECT
89
+ p.prosecdef as is_security_definer,
90
+ p.provolatile as volatility,
91
+ COALESCE(
92
+ (SELECT option_value FROM pg_options_to_table(p.proconfig) WHERE option_name = 'search_path'),
93
+ '(not set)'
94
+ ) as search_path,
95
+ has_function_privilege('anon', p.oid, 'EXECUTE') as anon_can_execute,
96
+ has_function_privilege('authenticated', p.oid, 'EXECUTE') as authenticated_can_execute
97
+ FROM pg_proc p
98
+ JOIN pg_namespace n ON n.oid = p.pronamespace
99
+ WHERE n.nspname = 'public' AND p.proname = 'exec_sql'
100
+ LIMIT 1;
101
+ `,
102
+ });
103
+ if (securityCheck.error || !securityCheck.data) {
104
+ return { exists: true, secure: false, issues: ['Could not verify exec_sql security properties'] };
105
+ }
106
+ const rows = Array.isArray(securityCheck.data) ? securityCheck.data : [];
107
+ if (rows.length === 0) {
108
+ return { exists: true, secure: false, issues: ['Could not find exec_sql in pg_proc'] };
109
+ }
110
+ const fn = rows[0];
111
+ if (fn.is_security_definer === true) {
112
+ issues.push('CRITICAL: exec_sql is SECURITY DEFINER — it should be SECURITY INVOKER. Redeploy the Tetra version.');
113
+ }
114
+ if (fn.anon_can_execute === true) {
115
+ issues.push('CRITICAL: anon can call exec_sql — REVOKE EXECUTE ON FUNCTION public.exec_sql(text) FROM anon;');
116
+ }
117
+ if (fn.authenticated_can_execute === true) {
118
+ issues.push('CRITICAL: authenticated can call exec_sql — REVOKE EXECUTE ON FUNCTION public.exec_sql(text) FROM authenticated;');
119
+ }
120
+ if (fn.search_path !== '') {
121
+ issues.push(`WARNING: search_path is "${fn.search_path}", should be empty string`);
122
+ }
123
+ return {
124
+ exists: true,
125
+ secure: issues.length === 0,
126
+ issues,
127
+ };
128
+ }
129
+ //# sourceMappingURL=rls-exec-sql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rls-exec-sql.js","sourceRoot":"","sources":["../../src/generators/rls-exec-sql.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8EAkDqE,CAAC;AAC/E,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAA8G;IAE9G,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,6CAA6C;IAC7C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEpF,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,mEAAmE,CAAC,EAAE,CAAC;IACzH,CAAC;IAED,8CAA8C;IAC9C,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE;QACnD,KAAK,EAAE;;;;;;;;;;;;;;KAcN;KACF,CAAC,CAAC;IAEH,IAAI,aAAa,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC/C,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,+CAA+C,CAAC,EAAE,CAAC;IACpG,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,oCAAoC,CAAC,EAAE,CAAC;IACzF,CAAC;IAED,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAA4B,CAAC;IAE9C,IAAI,EAAE,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,qGAAqG,CAAC,CAAC;IACrH,CAAC;IACD,IAAI,EAAE,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,gGAAgG,CAAC,CAAC;IAChH,CAAC;IACD,IAAI,EAAE,CAAC,yBAAyB,KAAK,IAAI,EAAE,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC,kHAAkH,CAAC,CAAC;IAClI,CAAC;IACD,IAAI,EAAE,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,CAAC,WAAW,2BAA2B,CAAC,CAAC;IACrF,CAAC;IAED,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC3B,MAAM;KACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,57 @@
1
+ -- ============================================================================
2
+ -- Tetra Core: exec_sql — Secure SQL Execution for RLS Checker
3
+ -- ============================================================================
4
+ -- This function allows the RLS checker to run audit queries against the DB.
5
+ --
6
+ -- SECURITY MODEL:
7
+ -- - SECURITY INVOKER (NOT definer) — runs as the calling role
8
+ -- - Only service_role should call this (via backend service client)
9
+ -- - anon and authenticated are explicitly REVOKED from EXECUTE
10
+ -- - search_path set to '' to prevent search_path injection
11
+ -- - Returns JSONB array so it works with any query shape
12
+ --
13
+ -- WHY THIS IS SAFE:
14
+ -- 1. service_role already bypasses RLS — this adds no new capability
15
+ -- 2. anon/authenticated CANNOT call it (REVOKE + no GRANT)
16
+ -- 3. Even if somehow called by authenticated, it runs as THAT role
17
+ -- (SECURITY INVOKER), so RLS still applies to their queries
18
+ -- 4. The function is just a thin wrapper around EXECUTE — it doesn't
19
+ -- escalate privileges
20
+ --
21
+ -- PREREQUISITE: Must be deployed BEFORE runRLSCheck() can work.
22
+ -- ============================================================================
23
+
24
+ -- Drop old versions if they exist
25
+ DROP FUNCTION IF EXISTS public.exec_sql(text);
26
+ DROP FUNCTION IF EXISTS public.execute_sql(text);
27
+
28
+ -- Create the function
29
+ CREATE OR REPLACE FUNCTION public.exec_sql(query text)
30
+ RETURNS jsonb
31
+ LANGUAGE plpgsql
32
+ VOLATILE
33
+ SECURITY INVOKER
34
+ SET search_path = ''
35
+ AS $$
36
+ DECLARE
37
+ result jsonb;
38
+ BEGIN
39
+ EXECUTE 'SELECT COALESCE(jsonb_agg(row_to_json(t)), ''[]''::jsonb) FROM (' || query || ') t'
40
+ INTO result;
41
+ RETURN result;
42
+ END;
43
+ $$;
44
+
45
+ -- CRITICAL: Revoke from all public-facing roles
46
+ REVOKE ALL ON FUNCTION public.exec_sql(text) FROM PUBLIC;
47
+ REVOKE ALL ON FUNCTION public.exec_sql(text) FROM anon;
48
+ REVOKE ALL ON FUNCTION public.exec_sql(text) FROM authenticated;
49
+
50
+ -- Only service_role (backend) and postgres (migrations) can use it
51
+ GRANT EXECUTE ON FUNCTION public.exec_sql(text) TO service_role;
52
+ GRANT EXECUTE ON FUNCTION public.exec_sql(text) TO postgres;
53
+
54
+ -- Add a comment explaining the security model
55
+ COMMENT ON FUNCTION public.exec_sql(text) IS
56
+ 'Tetra RLS Checker: executes audit SQL. SECURITY INVOKER + only service_role can call. '
57
+ 'anon/authenticated are explicitly revoked. Does NOT escalate privileges.';
package/dist/index.d.ts CHANGED
@@ -91,6 +91,7 @@ export { getAuditChecks, generateAuditSQL } from './generators/rls-auditor.js';
91
91
  export type { AuditCheck } from './generators/rls-auditor.js';
92
92
  export { runRLSCheck, runRLSCheckDebug } from './generators/rls-checker.js';
93
93
  export type { RLSReport, RLSCheckResult, RLSViolation, RLSCategorySummary } from './generators/rls-checker.js';
94
+ export { generateExecSQL, checkExecSQLExists } from './generators/rls-exec-sql.js';
94
95
  export { RPCGenerator, DetailRPCGenerator, validateConfig as validateRPCConfig, generateAuthCheck, generateAuthWhereClause, generateAuthDeclarations, generateTimestamp, getTableAlias, escapeIdentifier } from './generators/rpc/index.js';
95
96
  export type { GeneratedSQL, FilterDefinition, RPCGeneratorOptions, DetailRPCGeneratorOptions, ValidationResult as RPCValidationResult, ValidationError as RPCValidationError, AccessLevel, CreatorVisibilityConfig as RPCCreatorVisibilityConfig } from './generators/rpc/index.js';
96
97
  export { EmailService, sendMailgunEmail, escapeHtml } from './shared/email/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -85,6 +85,7 @@ export { addPublicAuthRoutes } from './shared/auth/routes.js';
85
85
  export { generateRLS, generateRLSBatch } from './generators/rls-generator.js';
86
86
  export { getAuditChecks, generateAuditSQL } from './generators/rls-auditor.js';
87
87
  export { runRLSCheck, runRLSCheckDebug } from './generators/rls-checker.js';
88
+ export { generateExecSQL, checkExecSQLExists } from './generators/rls-exec-sql.js';
88
89
  // RPC Generator (SQL Generator v3.17)
89
90
  export { RPCGenerator, DetailRPCGenerator, validateConfig as validateRPCConfig, generateAuthCheck, generateAuthWhereClause, generateAuthDeclarations, generateTimestamp, getTableAlias, escapeIdentifier } from './generators/rpc/index.js';
90
91
  // ─── Email Module ───────────────────────────────────────────
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,21 @@ export interface FeatureConfig<TItem = any> extends QueryConfig<TItem> {
24
24
  countsRpcName?: string;
25
25
  resultsRpcName?: string;
26
26
  detailRpcName?: string;
27
+ /**
28
+ * REST API base path (v4.1 — REST adapter for useFeature)
29
+ * When set, useFeature can fetch data from Express REST endpoints
30
+ * instead of Supabase RPC functions.
31
+ *
32
+ * List endpoint: GET {restBasePath}?limit=20&offset=0&sortBy=created_at&sortOrder=desc&status=active
33
+ * Counts endpoint: GET {restBasePath}/counts?status=active
34
+ *
35
+ * Expected response format:
36
+ * - List: { success: true, data: [...], meta: { total, limit, offset, hasNextPage } }
37
+ * - Counts: { success: true, data: { total: N, byStatus: { ... } } }
38
+ *
39
+ * @example restBasePath: '/api/admin/orders'
40
+ */
41
+ restBasePath?: string;
27
42
  /**
28
43
  * Filter definitions
29
44
  * Auto-registers filters in QueryServiceFactory
@@ -1 +1 @@
1
- {"version":3,"file":"feature-config.d.ts","sourceRoot":"","sources":["../../../src/shared/types/feature-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-config.d.ts","sourceRoot":"","sources":["../../../src/shared/types/feature-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,KAAK,GAAG,GAAG,CAAE,SAAQ,WAAW,CAAC,KAAK,CAAC;IACpE;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IAEzB;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB;;;OAGG;IACH,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAE/B;;;OAGG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B;;;OAGG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAE7C;;;;OAIG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IAEzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAE/B;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAEjE;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;CAC7C;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;;;OAOG;IACH,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IAEb,kEAAkE;IAClE,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IAErI,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB,uDAAuD;IACvD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1B,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,+FAA+F;IAC/F,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,qDAAqD;IACrD,EAAE,CAAC,EAAE,cAAc,CAAC;IAEpB,qFAAqF;IACrF,aAAa,CAAC,EAAE;QACd,wDAAwD;QACxD,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B,wCAAwC;QACxC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QAExB,mDAAmD;QACnD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,IAAI,GAAG,GAAG,CAAA;SAAE,CAAC,CAAC;QAEzE,uDAAuD;QACvD,KAAK,CAAC,EAAE,KAAK,CAAC;YACZ,KAAK,EAAE,MAAM,CAAC;YACd,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;SAClC,CAAC,CAAC;QAEH,6FAA6F;QAC7F,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEzC,qFAAqF;QACrF,aAAa,CAAC,EAAE,OAAO,CAAC;QAExB,oDAAoD;QACpD,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B,+FAA+F;QAC/F,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;KACjC,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,6CAA6C;IAC7C,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;IAEH,0BAA0B;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sDAAsD;IACtD,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,iBAAiB;IACjB,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;IAE9D,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1B,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAEpC,uDAAuD;IACvD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IAEb,0CAA0C;IAC1C,YAAY,EAAE,MAAM,EAAE,CAAC;IAEvB,oCAAoC;IACpC,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,sBAAsB;IACrC,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IAEb,yDAAyD;IACzD,GAAG,EAAE,MAAM,CAAC;IAEZ,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IAEjB,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IAEf,qDAAqD;IACrD,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;IAEhH,gDAAgD;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,kCAAkC;IAClC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAEvB,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEzC,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;IAE7C,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,oDAAoD;IACpD,UAAU,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAE3C,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IAEb,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,8DAA8D;IAC9D,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GACpE,QAAQ,GAAG,aAAa,GAAG,UAAU,GACrC,MAAM,GAAG,UAAU,GAAG,WAAW,GACjC,SAAS,GAAG,QAAQ,GAAG,UAAU,GACjC,MAAM,GAAG,OAAO,GAChB,OAAO,GAAG,KAAK,GAAG,OAAO,GACzB,UAAU,GAAG,YAAY,GACzB,QAAQ,GAAG,QAAQ,CAAC;IAExB,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,oCAAoC;IACpC,YAAY,CAAC,EAAE,GAAG,CAAC;IAEnB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,sDAAsD;IACtD,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;IAEH,6DAA6D;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,mDAAmD;IACnD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExB,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,mDAAmD;IACnD,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IAEpC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,GAAG,CAAC;QACX,QAAQ,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAC;KACtD,CAAC;IAEF,kEAAkE;IAClE,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC;AAEnE;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IAEd,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IAEd,6BAA6B;IAC7B,gBAAgB,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAElC,oCAAoC;IACpC,EAAE,CAAC,EAAE;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qDAAqD;IACrD,KAAK,CAAC,EAAE;QACN,0CAA0C;QAC1C,WAAW,EAAE,MAAM,CAAC;QAEpB,oDAAoD;QACpD,OAAO,EAAE,GAAG,CAAC;QAEb,qCAAqC;QACrC,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IAEF,kCAAkC;IAClC,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;KAC/B,CAAC,CAAC;CACJ;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,gBAAgB,CAoE1E;AAMD;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,uBAAuB,CAAC,EAAE,KAAK,CAAC;QAC9B,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC,CAAC;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,CAAC,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;QACjD,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,OAAO,GAAG;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,YAAY,CAAC;YAC9C,KAAK,CAAC,EAAE,GAAG,CAAC;SACb,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;QAC5C,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACvC,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE;YACP,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,CAAC;YAC7D,KAAK,CAAC,EAAE,GAAG,CAAC;YACZ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;SAClB,CAAC;KACH,CAAC,CAAC;IACH,cAAc,CAAC,EAAE,KAAK,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE;YACP,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,CAAC;YAC7D,KAAK,CAAC,EAAE,GAAG,CAAC;YACZ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;SAClB,CAAC;KACH,CAAC,CAAC;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE;YACP,KAAK,EAAE,MAAM,CAAC;YACd,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,CAAC;YAC5D,KAAK,CAAC,EAAE,GAAG,CAAC;SACb,CAAC;QACF,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,cAAc,CAAC,EAAE;QACf,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE;YACN,KAAK,EAAE,MAAM,CAAC;YACd,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,CAAC;IACF,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,kBAAkB,GAAG,eAAe,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,eAAe,CAAC;IACtG,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,CAAC;IACxD,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,MAAM,CAAC,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,GAAG,iBAAiB,CAAC;QAClF,KAAK,CAAC,EAAE,GAAG,CAAC;KACb,CAAC;IAGF,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -1 +1 @@
1
- {"version":3,"file":"feature-config.js","sourceRoot":"","sources":["../../../src/shared/types/feature-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-config.js","sourceRoot":"","sources":["../../../src/shared/types/feature-config.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soulbatical/tetra-core",
3
- "version": "0.1.18",
3
+ "version": "0.1.20",
4
4
  "publishConfig": {
5
5
  "access": "restricted"
6
6
  },