@soulbatical/tetra-core 0.1.2 → 0.1.4
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.
Potentially problematic release.
This version of @soulbatical/tetra-core might be problematic. Click here for more details.
- package/dist/core/SupabaseUserClient.d.ts.map +1 -1
- package/dist/core/SupabaseUserClient.js +12 -2
- package/dist/core/SupabaseUserClient.js.map +1 -1
- package/dist/core/adminDb.d.ts.map +1 -1
- package/dist/core/adminDb.js +8 -9
- package/dist/core/adminDb.js.map +1 -1
- package/dist/core/createApp.d.ts +4 -0
- package/dist/core/createApp.d.ts.map +1 -1
- package/dist/core/createApp.js +23 -6
- package/dist/core/createApp.js.map +1 -1
- package/dist/core/publicDb.d.ts.map +1 -1
- package/dist/core/publicDb.js +7 -1
- package/dist/core/publicDb.js.map +1 -1
- package/dist/core/superadminDb.d.ts.map +1 -1
- package/dist/core/superadminDb.js +9 -3
- package/dist/core/superadminDb.js.map +1 -1
- package/dist/core/userDb.d.ts.map +1 -1
- package/dist/core/userDb.js +8 -2
- package/dist/core/userDb.js.map +1 -1
- package/dist/frontend/hooks/useFeature.d.ts.map +1 -1
- package/dist/frontend/hooks/useFeature.js +10 -2
- package/dist/frontend/hooks/useFeature.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/middleware/authMiddleware.d.ts +6 -6
- package/dist/middleware/authMiddleware.d.ts.map +1 -1
- package/dist/middleware/authMiddleware.js +52 -51
- package/dist/middleware/authMiddleware.js.map +1 -1
- package/dist/middleware/securityMiddleware.d.ts.map +1 -1
- package/dist/middleware/securityMiddleware.js +10 -6
- package/dist/middleware/securityMiddleware.js.map +1 -1
- package/dist/middleware/validateQueryParams.d.ts.map +1 -1
- package/dist/middleware/validateQueryParams.js +9 -24
- package/dist/middleware/validateQueryParams.js.map +1 -1
- package/dist/shared/factories/QueryRouteFactory.d.ts.map +1 -1
- package/dist/shared/factories/QueryRouteFactory.js +0 -8
- package/dist/shared/factories/QueryRouteFactory.js.map +1 -1
- package/dist/shared/rfc7807ErrorResponse.d.ts +28 -4
- package/dist/shared/rfc7807ErrorResponse.d.ts.map +1 -1
- package/dist/shared/rfc7807ErrorResponse.js +38 -5
- package/dist/shared/rfc7807ErrorResponse.js.map +1 -1
- package/dist/shared/validators/organizationValidator.d.ts.map +1 -1
- package/dist/shared/validators/organizationValidator.js +4 -4
- package/dist/shared/validators/organizationValidator.js.map +1 -1
- package/dist/utils/validateEnvironment.d.ts +25 -0
- package/dist/utils/validateEnvironment.d.ts.map +1 -0
- package/dist/utils/validateEnvironment.js +133 -0
- package/dist/utils/validateEnvironment.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SupabaseUserClient.d.ts","sourceRoot":"","sources":["../../src/core/SupabaseUserClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAKrE,qBAAa,kBAAkB;IAC7B;;;OAGG;IACH,MAAM,CAAC,eAAe,IAAI,cAAc;
|
|
1
|
+
{"version":3,"file":"SupabaseUserClient.d.ts","sourceRoot":"","sources":["../../src/core/SupabaseUserClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAKrE,qBAAa,kBAAkB;IAC7B;;;OAGG;IACH,MAAM,CAAC,eAAe,IAAI,cAAc;IA0BxC;;;OAGG;WACU,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;CAmCvE"}
|
|
@@ -9,8 +9,13 @@ export class SupabaseUserClient {
|
|
|
9
9
|
static getPublicClient() {
|
|
10
10
|
const supabaseUrl = process.env.SUPABASE_URL;
|
|
11
11
|
const supabaseAnonKey = process.env.SUPABASE_ANON_KEY;
|
|
12
|
+
if (!supabaseUrl) {
|
|
13
|
+
throw new Error('SUPABASE_URL not found in environment. ' +
|
|
14
|
+
'Set it in your Doppler config or ensure it is available at runtime.');
|
|
15
|
+
}
|
|
12
16
|
if (!supabaseAnonKey) {
|
|
13
|
-
throw new Error('SUPABASE_ANON_KEY not found in environment'
|
|
17
|
+
throw new Error('SUPABASE_ANON_KEY not found in environment. ' +
|
|
18
|
+
'Set it in your Doppler config or ensure it is available at runtime.');
|
|
14
19
|
}
|
|
15
20
|
return createClient(supabaseUrl, supabaseAnonKey, {
|
|
16
21
|
auth: {
|
|
@@ -26,8 +31,13 @@ export class SupabaseUserClient {
|
|
|
26
31
|
static async createForUser(userToken) {
|
|
27
32
|
const supabaseUrl = process.env.SUPABASE_URL;
|
|
28
33
|
const supabaseAnonKey = process.env.SUPABASE_ANON_KEY;
|
|
34
|
+
if (!supabaseUrl) {
|
|
35
|
+
throw new Error('SUPABASE_URL not found in environment. ' +
|
|
36
|
+
'Set it in your Doppler config or ensure it is available at runtime.');
|
|
37
|
+
}
|
|
29
38
|
if (!supabaseAnonKey) {
|
|
30
|
-
throw new Error('SUPABASE_ANON_KEY not found in environment'
|
|
39
|
+
throw new Error('SUPABASE_ANON_KEY not found in environment. ' +
|
|
40
|
+
'Set it in your Doppler config or ensure it is available at runtime.');
|
|
31
41
|
}
|
|
32
42
|
if (!userToken) {
|
|
33
43
|
logger.error('No user token provided for authenticated client');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SupabaseUserClient.js","sourceRoot":"","sources":["../../src/core/SupabaseUserClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAkB,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;AAEpD,MAAM,OAAO,kBAAkB;IAC7B;;;OAGG;IACH,MAAM,CAAC,eAAe;QACpB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"SupabaseUserClient.js","sourceRoot":"","sources":["../../src/core/SupabaseUserClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAkB,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;AAEpD,MAAM,OAAO,kBAAkB;IAC7B;;;OAGG;IACH,MAAM,CAAC,eAAe;QACpB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QAC7C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAEtD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,yCAAyC;gBACzC,qEAAqE,CACtE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,8CAA8C;gBAC9C,qEAAqE,CACtE,CAAC;QACJ,CAAC;QAED,OAAO,YAAY,CAAC,WAAW,EAAE,eAAe,EAAE;YAChD,IAAI,EAAE;gBACJ,cAAc,EAAE,KAAK;gBACrB,gBAAgB,EAAE,KAAK;aACxB;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,SAAiB;QAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QAC7C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAEtD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,yCAAyC;gBACzC,qEAAqE,CACtE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,8CAA8C;gBAC9C,qEAAqE,CACtE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO,YAAY,CAAC,WAAW,EAAE,eAAe,EAAE;YAChD,MAAM,EAAE;gBACN,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,SAAS,EAAE;iBACrC;aACF;YACD,IAAI,EAAE;gBACJ,cAAc,EAAE,KAAK;gBACrB,gBAAgB,EAAE,KAAK;aACxB;SACF,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adminDb.d.ts","sourceRoot":"","sources":["../../src/core/adminDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAMvE;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,OAAO,CAAC,GAAG,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"adminDb.d.ts","sourceRoot":"","sources":["../../src/core/adminDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAMvE;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,OAAO,CAAC,GAAG,EAAE,oBAAoB,8FA0BtD"}
|
package/dist/core/adminDb.js
CHANGED
|
@@ -21,19 +21,18 @@ const logger = createLogger('security:db:admin');
|
|
|
21
21
|
*/
|
|
22
22
|
export async function adminDB(req) {
|
|
23
23
|
if (!req.userToken) {
|
|
24
|
-
|
|
24
|
+
// Hint: authenticateToken middleware moet VOOR adminDB aangeroepen worden
|
|
25
|
+
throw new Error('Unauthorized: No user token on request. ' +
|
|
26
|
+
'Ensure authenticateToken middleware runs before calling adminDB(req). ' +
|
|
27
|
+
'Route setup: router.use(authenticateToken, yourHandler)');
|
|
25
28
|
}
|
|
26
29
|
// Check if user has admin privileges (either org admin or superadmin)
|
|
27
30
|
if (!req.user?.organizationId && !req.user?.is_superadmin) {
|
|
28
31
|
logger.error(`Admin access denied - no organization for user ${req.user?.id}`);
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const isAdmin = req.user?.is_superadmin || req.user?.organizationId;
|
|
34
|
-
if (!isAdmin) {
|
|
35
|
-
logger.error(`Admin access denied for user ${req.user?.id}`);
|
|
36
|
-
throw new Error('Forbidden: Admin access required');
|
|
32
|
+
// Hint: User heeft geen active_organization_id — check loadUserContext hook
|
|
33
|
+
throw new Error('Forbidden: No active organization. ' +
|
|
34
|
+
'User has no organizationId set. Check your loadUserContext hook in auth-config.ts — ' +
|
|
35
|
+
'it should return { organizationId: user.active_organization_id }.');
|
|
37
36
|
}
|
|
38
37
|
// Admin calls are expected and common - only log at debug level
|
|
39
38
|
logger.debug(`Admin database access: user=${req.user.id} org=${req.user.organizationId || 'superadmin'}`);
|
package/dist/core/adminDb.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adminDb.js","sourceRoot":"","sources":["../../src/core/adminDb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAC;AAEjD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAyB;IACrD,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,
|
|
1
|
+
{"version":3,"file":"adminDb.js","sourceRoot":"","sources":["../../src/core/adminDb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAC;AAEjD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAyB;IACrD,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACnB,0EAA0E;QAC1E,MAAM,IAAI,KAAK,CACb,0CAA0C;YAC1C,wEAAwE;YACxE,yDAAyD,CAC1D,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,kDAAkD,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/E,4EAA4E;QAC5E,MAAM,IAAI,KAAK,CACb,qCAAqC;YACrC,sFAAsF;YACtF,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,gEAAgE;IAChE,MAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,YAAY,EAAE,CAAC,CAAC;IAE1G,8DAA8D;IAC9D,OAAO,kBAAkB,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACzD,CAAC"}
|
package/dist/core/createApp.d.ts
CHANGED
|
@@ -49,6 +49,10 @@ export interface CreateAppConfig {
|
|
|
49
49
|
skipCookieParser?: boolean;
|
|
50
50
|
/** Custom error handler (default: logs + returns 500) */
|
|
51
51
|
errorHandler?: (err: Error, req: Request, res: Response, next: NextFunction) => void;
|
|
52
|
+
/** Additional required environment variables to validate at startup */
|
|
53
|
+
requiredEnvVars?: string[];
|
|
54
|
+
/** Skip environment validation (default: false) */
|
|
55
|
+
skipValidation?: boolean;
|
|
52
56
|
}
|
|
53
57
|
export declare function createApp(config: CreateAppConfig): {
|
|
54
58
|
app: import("express-serve-static-core").Express;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createApp.d.ts","sourceRoot":"","sources":["../../src/core/createApp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;
|
|
1
|
+
{"version":3,"file":"createApp.d.ts","sourceRoot":"","sources":["../../src/core/createApp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5E,OAAO,EAAqB,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAIxF,MAAM,WAAW,eAAe;IAC9B,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,2CAA2C;IAC3C,WAAW,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACvC,wFAAwF;IACxF,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yDAAyD;IACzD,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACrF,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,mDAAmD;IACnD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,eAAe;;;;;;6GAiHzC,CAAP;;;;;;6CAYyuB,YAAY,EAAC,aAAc,EAAC,kBAAmB;;;;EADxxB"}
|
package/dist/core/createApp.js
CHANGED
|
@@ -22,16 +22,35 @@
|
|
|
22
22
|
* start();
|
|
23
23
|
* ```
|
|
24
24
|
*/
|
|
25
|
+
import crypto from 'node:crypto';
|
|
25
26
|
import express from 'express';
|
|
26
27
|
import cookieParser from 'cookie-parser';
|
|
27
28
|
import { createLogger } from '../utils/logger.js';
|
|
28
29
|
import { configureSecurity } from '../middleware/securityMiddleware.js';
|
|
30
|
+
import { validateEnvironment } from '../utils/validateEnvironment.js';
|
|
31
|
+
import { RFC7807ErrorResponse } from '../shared/rfc7807ErrorResponse.js';
|
|
29
32
|
export function createApp(config) {
|
|
30
33
|
const logger = createLogger(`system:app:${config.projectName}`);
|
|
34
|
+
// Validate environment before anything else
|
|
35
|
+
if (!config.skipValidation) {
|
|
36
|
+
validateEnvironment({
|
|
37
|
+
projectName: config.projectName,
|
|
38
|
+
requiredEnvVars: config.requiredEnvVars,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
31
41
|
const app = express();
|
|
32
42
|
const port = config.port || parseInt(process.env.PORT || '3000', 10);
|
|
33
43
|
// Trust proxy
|
|
34
44
|
app.set('trust proxy', config.trustProxy ?? 1);
|
|
45
|
+
// Request correlation ID — genereer als er geen binnenkomt
|
|
46
|
+
// Hint: Dit ID verschijnt in alle RFC7807 error responses (requestId field)
|
|
47
|
+
// en kan gebruikt worden om requests te tracen door logs heen.
|
|
48
|
+
app.use((req, _res, next) => {
|
|
49
|
+
if (!req.headers['x-request-id']) {
|
|
50
|
+
req.headers['x-request-id'] = crypto.randomUUID();
|
|
51
|
+
}
|
|
52
|
+
next();
|
|
53
|
+
});
|
|
35
54
|
// Security middleware
|
|
36
55
|
const security = configureSecurity({
|
|
37
56
|
bodyLimit: config.bodyLimit || '50mb',
|
|
@@ -66,13 +85,11 @@ export function createApp(config) {
|
|
|
66
85
|
});
|
|
67
86
|
// Routes
|
|
68
87
|
config.setupRoutes(app);
|
|
69
|
-
// Error handler
|
|
88
|
+
// Error handler (RFC7807 compliant via RFC7807ErrorResponse)
|
|
89
|
+
// Hint: Custom errorHandler in CreateAppConfig overschrijft dit. Anders gebruikt Tetra RFC7807.
|
|
70
90
|
const errorHandler = config.errorHandler || ((err, _req, res, _next) => {
|
|
71
|
-
logger.error({ error: err }, 'Global error handler triggered');
|
|
72
|
-
|
|
73
|
-
message: 'Internal server error',
|
|
74
|
-
error: process.env.NODE_ENV !== 'production' ? err.message : 'Something went wrong'
|
|
75
|
-
});
|
|
91
|
+
logger.error({ error: err, requestId: _req.headers['x-request-id'] }, 'Global error handler triggered');
|
|
92
|
+
RFC7807ErrorResponse.internalError(res, err);
|
|
76
93
|
});
|
|
77
94
|
app.use(errorHandler);
|
|
78
95
|
// Server instance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createApp.js","sourceRoot":"","sources":["../../src/core/createApp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,OAAqD,MAAM,SAAS,CAAC;AAC5E,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAkB,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"createApp.js","sourceRoot":"","sources":["../../src/core/createApp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publicDb.d.ts","sourceRoot":"","sources":["../../src/core/publicDb.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,QAAQ,
|
|
1
|
+
{"version":3,"file":"publicDb.d.ts","sourceRoot":"","sources":["../../src/core/publicDb.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,QAAQ,sFAkBvB"}
|
package/dist/core/publicDb.js
CHANGED
|
@@ -20,7 +20,13 @@ export function publicDB() {
|
|
|
20
20
|
const supabaseUrl = process.env.SUPABASE_URL;
|
|
21
21
|
const supabaseAnonKey = process.env.SUPABASE_ANON_KEY;
|
|
22
22
|
if (!supabaseUrl || !supabaseAnonKey) {
|
|
23
|
-
|
|
23
|
+
// Hint: Noem specifiek welke env var(s) ontbreken, net als systemDb
|
|
24
|
+
const missing = [
|
|
25
|
+
!supabaseUrl && 'SUPABASE_URL',
|
|
26
|
+
!supabaseAnonKey && 'SUPABASE_ANON_KEY',
|
|
27
|
+
].filter(Boolean).join(' and ');
|
|
28
|
+
throw new Error(`Missing ${missing} environment variable(s). ` +
|
|
29
|
+
'Set these in your Doppler config or .env file for local development.');
|
|
24
30
|
}
|
|
25
31
|
// Create client with anon key - respects RLS policies
|
|
26
32
|
return createClient(supabaseUrl, supabaseAnonKey);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publicDb.js","sourceRoot":"","sources":["../../src/core/publicDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,QAAQ;IACtB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAC7C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAEtD,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"publicDb.js","sourceRoot":"","sources":["../../src/core/publicDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,QAAQ;IACtB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAC7C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAEtD,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,oEAAoE;QACpE,MAAM,OAAO,GAAG;YACd,CAAC,WAAW,IAAI,cAAc;YAC9B,CAAC,eAAe,IAAI,mBAAmB;SACxC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,MAAM,IAAI,KAAK,CACb,WAAW,OAAO,4BAA4B;YAC9C,sEAAsE,CACvE,CAAC;IACJ,CAAC;IAED,sDAAsD;IACtD,OAAO,YAAY,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AACpD,CAAC;AAED,4BAA4B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superadminDb.d.ts","sourceRoot":"","sources":["../../src/core/superadminDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAMvE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"superadminDb.d.ts","sourceRoot":"","sources":["../../src/core/superadminDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAMvE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,oBAAoB,8FAmC3D"}
|
|
@@ -29,11 +29,17 @@ const logger = createLogger('security:db:superadmin');
|
|
|
29
29
|
*/
|
|
30
30
|
export async function superadminDB(req) {
|
|
31
31
|
if (!req.user) {
|
|
32
|
-
|
|
32
|
+
// Hint: authenticateToken middleware moet VOOR superadminDB staan
|
|
33
|
+
throw new Error('Unauthorized: No authenticated user. ' +
|
|
34
|
+
'Ensure authenticateToken middleware runs before calling superadminDB(req).');
|
|
33
35
|
}
|
|
34
36
|
if (!req.user?.isSuperAdmin) {
|
|
35
|
-
logger.error(
|
|
36
|
-
|
|
37
|
+
logger.error(`Superadmin access denied for user ${req.user?.id}`);
|
|
38
|
+
// Hint: Superadmin status komt uit is_superadmin in users_public of app_metadata
|
|
39
|
+
throw new Error('Forbidden: Superadmin access required. ' +
|
|
40
|
+
'User is_superadmin flag is not set. This flag is determined by: ' +
|
|
41
|
+
'1) Supabase app_metadata.is_superadmin, or ' +
|
|
42
|
+
'2) loadUserContext returning { is_superadmin: true }.');
|
|
37
43
|
}
|
|
38
44
|
const context = `superadmin:${req.user.id}:${req.method}:${req.path}`;
|
|
39
45
|
logger.warn(`👑 Superadmin database access: ${context}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superadminDb.js","sourceRoot":"","sources":["../../src/core/superadminDb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,wBAAwB,CAAC,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAyB;IAC1D,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,
|
|
1
|
+
{"version":3,"file":"superadminDb.js","sourceRoot":"","sources":["../../src/core/superadminDb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,wBAAwB,CAAC,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAyB;IAC1D,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,kEAAkE;QAClE,MAAM,IAAI,KAAK,CACb,uCAAuC;YACvC,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC;QAC5B,MAAM,CAAC,KAAK,CAAC,qCAAqC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAClE,iFAAiF;QACjF,MAAM,IAAI,KAAK,CACb,yCAAyC;YACzC,kEAAkE;YAClE,6CAA6C;YAC7C,uDAAuD,CACxD,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;IACtE,MAAM,CAAC,IAAI,CAAC,kCAAkC,OAAO,EAAE,CAAC,CAAC;IAEzD,yCAAyC;IACzC,MAAM,CAAC,IAAI,CAAC;QACV,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE;QACnB,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK;QACrB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,EAAE,+BAA+B,CAAC,CAAC;IAEpC,sDAAsD;IACtD,wDAAwD;IACxD,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAED,4BAA4B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userDb.d.ts","sourceRoot":"","sources":["../../src/core/userDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAMvE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,MAAM,CAAC,GAAG,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"userDb.d.ts","sourceRoot":"","sources":["../../src/core/userDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAMvE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,MAAM,CAAC,GAAG,EAAE,oBAAoB,8FAyBrD"}
|
package/dist/core/userDb.js
CHANGED
|
@@ -23,11 +23,17 @@ const logger = createLogger('security:db:user');
|
|
|
23
23
|
export async function userDB(req) {
|
|
24
24
|
if (!req.userToken) {
|
|
25
25
|
logger.error('No user token in request!');
|
|
26
|
-
|
|
26
|
+
// Hint: authenticateToken middleware moet VOOR userDB aangeroepen worden
|
|
27
|
+
throw new Error('Unauthorized: No user token on request. ' +
|
|
28
|
+
'Ensure authenticateToken middleware runs before calling userDB(req). ' +
|
|
29
|
+
'Route setup: router.use(authenticateToken, yourHandler)');
|
|
27
30
|
}
|
|
28
31
|
if (!req.user?.id) {
|
|
29
32
|
logger.error('No user context in request!');
|
|
30
|
-
|
|
33
|
+
// Hint: Token was geldig maar user object mist — check loadUserContext
|
|
34
|
+
throw new Error('Unauthorized: No user context on request. ' +
|
|
35
|
+
'Token exists but req.user is missing. Check your loadUserContext hook in auth-config.ts — ' +
|
|
36
|
+
'it should return at least { id: supabaseUser.id }.');
|
|
31
37
|
}
|
|
32
38
|
logger.debug(`User database access: user=${req.user.id} org=${req.user.organizationId || 'none'}`);
|
|
33
39
|
// Use user client - RLS will filter to user's own data
|
package/dist/core/userDb.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userDb.js","sourceRoot":"","sources":["../../src/core/userDb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAC;AAEhD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,GAAyB;IACpD,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC1C,MAAM,IAAI,KAAK,
|
|
1
|
+
{"version":3,"file":"userDb.js","sourceRoot":"","sources":["../../src/core/userDb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAC;AAEhD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,GAAyB;IACpD,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC1C,yEAAyE;QACzE,MAAM,IAAI,KAAK,CACb,0CAA0C;YAC1C,uEAAuE;YACvE,yDAAyD,CAC1D,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC5C,uEAAuE;QACvE,MAAM,IAAI,KAAK,CACb,4CAA4C;YAC5C,4FAA4F;YAC5F,oDAAoD,CACrD,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,8BAA8B,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,MAAM,EAAE,CAAC,CAAC;IAEnG,uDAAuD;IACvD,OAAO,kBAAkB,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFeature.d.ts","sourceRoot":"","sources":["../../../src/frontend/hooks/useFeature.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"useFeature.d.ts","sourceRoot":"","sources":["../../../src/frontend/hooks/useFeature.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,sCAAsC,CAAC;AAIxF,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,wDAAwD;IACxD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAE/D,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,+CAA+C;IAC/C,oBAAoB,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAEtC,2DAA2D;IAC3D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,2DAA2D;IAC3D,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/D,iCAAiC;IACjC,IAAI,EAAE,KAAK,EAAE,CAAC;IAEd,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAC;IAEnB,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAExD,6BAA6B;IAC7B,OAAO,EAAE,OAAO,CAAC;IAEjB,+BAA+B;IAC/B,aAAa,EAAE,OAAO,CAAC;IAEvB,2BAA2B;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAEvD,gCAAgC;IAChC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,KAAK,IAAI,CAAC;IAExE,mCAAmC;IACnC,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,KAAK,IAAI,CAAC;IAE7E,oCAAoC;IACpC,YAAY,EAAE,MAAM,IAAI,CAAC;IAEzB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IAEb,uBAAuB;IACvB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAEhC,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAElB,6BAA6B;IAC7B,aAAa,EAAE,KAAK,GAAG,MAAM,CAAC;IAE9B,mCAAmC;IACnC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC;IAE7D,8BAA8B;IAC9B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAElB,wBAAwB;IACxB,eAAe,EAAE,OAAO,CAAC;IAEzB,oBAAoB;IACpB,WAAW,EAAE,OAAO,CAAC;IAErB,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AA2JD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxD,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,EAC5B,QAAQ,EAAE,cAAc,EACxB,OAAO,GAAE,iBAAsB,GAC9B,gBAAgB,CAAC,KAAK,CAAC,CA8OzB"}
|
|
@@ -201,7 +201,11 @@ export function useFeature(config, supabase, options = {}) {
|
|
|
201
201
|
if (!mountedRef.current)
|
|
202
202
|
return;
|
|
203
203
|
if (rpcError) {
|
|
204
|
-
|
|
204
|
+
// Hint: Maak Supabase RPC errors leesbaar voor developers
|
|
205
|
+
const readableError = rpcError.message.includes('Could not find the function')
|
|
206
|
+
? `RPC function '${config.resultsRpcName}' not found in database. Did you run the migration?`
|
|
207
|
+
: rpcError.message;
|
|
208
|
+
setError(readableError);
|
|
205
209
|
setData([]);
|
|
206
210
|
setTotalCount(0);
|
|
207
211
|
return;
|
|
@@ -255,6 +259,8 @@ export function useFeature(config, supabase, options = {}) {
|
|
|
255
259
|
if (!mountedRef.current)
|
|
256
260
|
return;
|
|
257
261
|
if (rpcError) {
|
|
262
|
+
// Hint: Log counts errors zodat developers ze zien ipv stilzwijgend slikken
|
|
263
|
+
console.error(`[useFeature] Counts RPC '${config.countsRpcName}' failed:`, rpcError.message);
|
|
258
264
|
setCounts({});
|
|
259
265
|
return;
|
|
260
266
|
}
|
|
@@ -277,7 +283,9 @@ export function useFeature(config, supabase, options = {}) {
|
|
|
277
283
|
setCounts({});
|
|
278
284
|
}
|
|
279
285
|
}
|
|
280
|
-
catch {
|
|
286
|
+
catch (err) {
|
|
287
|
+
// Hint: Log catch errors — stille failures zijn moeilijk te debuggen
|
|
288
|
+
console.error(`[useFeature] Counts fetch error for '${config.countsRpcName}':`, err instanceof Error ? err.message : err);
|
|
281
289
|
if (mountedRef.current) {
|
|
282
290
|
setCounts({});
|
|
283
291
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFeature.js","sourceRoot":"","sources":["../../../src/frontend/hooks/useFeature.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AA8F1E,+DAA+D;AAE/D,SAAS,mBAAmB,CAAC,MAAqB;IAChD,MAAM,QAAQ,GAAkD,EAAE,CAAC;IAEnE,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,EAAE,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;YAC1C,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAChC,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,+DAA+D;AAE/D,SAAS,cAAc,CACrB,OAAsD,EACtD,MAAqB,EACrB,OAQC;IAED,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,kBAAkB;IAClB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC;IAC3C,CAAC;IAED,aAAa;IACb,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;IAC/B,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjC,UAAU;IACV,MAAM,CAAC,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC;IACxC,MAAM,CAAC,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IAEhD,mDAAmD;IACnD,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,IAAK,OAAO,CAAC,MAAiB,CAAC;IAC1E,IAAI,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QACxE,MAAM,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IACzB,CAAC;IAED,8BAA8B;IAC9B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;YAAE,SAAS,CAAC,gBAAgB;QAExD,yCAAyC;QACzC,IAAI,MAAM,CAAC,WAAW;YAAE,SAAS;QAEjC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC;QACpD,MAAM,QAAQ,GAAG,KAAK,YAAY,EAAE,CAAC;QAErC,eAAe;QACf,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YACxB,SAAS;QACX,CAAC;QAED,mBAAmB;QACnB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YACxB,SAAS;QACX,CAAC;QAED,eAAe;QACf,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YACnD,SAAS;QACX,CAAC;QAED,eAAe;QACf,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAAsD,EACtD,MAAqB,EACrB,OAIC;IAED,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC;IAC3C,CAAC;IAED,SAAS;IACT,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,IAAK,OAAO,CAAC,MAAiB,CAAC;IAC1E,IAAI,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QACxE,MAAM,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IACzB,CAAC;IAED,+DAA+D;IAC/D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;YAAE,SAAS;QACvC,IAAI,MAAM,CAAC,WAAW;YAAE,SAAS;QAEjC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC;QACpD,MAAM,QAAQ,GAAG,KAAK,YAAY,EAAE,CAAC;QAErC,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC3C,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YACxB,SAAS;QACX,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YACnD,SAAS;QACX,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,+DAA+D;AAE/D,SAAS,WAAW,CAAI,KAAQ,EAAE,KAAa;IAC7C,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAI,KAAK,CAAC,CAAC;IAE/D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;QAChE,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnB,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,+DAA+D;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,UAAU,CACxB,MAA4B,EAC5B,QAAwB,EACxB,UAA6B,EAAE;IAE/B,MAAM,EACJ,OAAO,GAAG,IAAI,EACd,QAAQ,EAAE,eAAe,EACzB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,GAAG,MAAM,EAC7B,gBAAgB,GAAG,GAAG,EACtB,eAAe,GAAG,CAAC,EACnB,cAAc,GACf,GAAG,OAAO,CAAC;IAEZ,qDAAqD;IACrD,MAAM,eAAe,GAAG,eAAe,IAAI,MAAM,CAAC,UAAU,EAAE,YAAY,IAAI,EAAE,CAAC;IACjF,MAAM,gBAAgB,GAAG,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,IAAI,YAAY,CAAC;IACrF,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACpC,GAAG,mBAAmB,CAAC,MAAM,CAAC;QAC9B,GAAG,cAAc;KAClB,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAE9B,qDAAqD;IACrD,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgD,cAAc,CAAC,CAAC;IAC3G,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC7D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAiB,oBAAoB,CAAC,CAAC;IAEzF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAU,EAAE,CAAC,CAAC;IAC9C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAkD,EAAE,CAAC,CAAC;IAC1F,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAExD,uCAAuC;IACvC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1B,OAAO,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,kBAAkB;IAClB,MAAM,WAAW,GAAI,OAAO,CAAC,MAAiB,IAAI,EAAE,CAAC;IACrD,MAAM,eAAe,GAAG,WAAW,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IAEnE,qDAAqD;IACrD,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACvC,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc;YAAE,OAAO;QAE/C,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE;gBAChD,cAAc;gBACd,KAAK,EAAE,QAAQ;gBACf,MAAM,EAAE,IAAI,GAAG,QAAQ;gBACvB,SAAS;gBACT,aAAa;gBACb,eAAe;gBACf,eAAe;aAChB,CAAC,CAAC;YAEH,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,GAAG,CAC1D,MAAM,CAAC,cAAc,EACrB,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,UAAU,CAAC,OAAO;gBAAE,OAAO;YAEhC,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC3B,OAAO,CAAC,EAAE,CAAC,CAAC;gBACZ,aAAa,CAAC,CAAC,CAAC,CAAC;gBACjB,OAAO;YACT,CAAC;YAED,yEAAyE;YACzE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,MAAiB,CAAC,CAAC;gBAC3B,8EAA8E;gBAC9E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,IAAK,MAAM,CAAC,CAAC,CAAS,EAAE,CAAC;oBAC7D,aAAa,CAAE,MAAM,CAAC,CAAC,CAAS,CAAC,WAAW,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;iBAAM,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAChD,2CAA2C;gBAC3C,MAAM,KAAK,GAAI,MAAc,CAAC,KAAK,IAAK,MAAc,CAAC,IAAI,IAAI,EAAE,CAAC;gBAClE,OAAO,CAAC,KAAgB,CAAC,CAAC;gBAC1B,aAAa,CAAE,MAAc,CAAC,KAAK,IAAK,MAAc,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,EAAE,CAAC,CAAC;gBACZ,aAAa,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,UAAU,CAAC,OAAO;gBAAE,OAAO;YAChC,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;YACtE,OAAO,CAAC,EAAE,CAAC,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,UAAU,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC,EAAE;QACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc;QAClD,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe;KAC3E,CAAC,CAAC;IAEH,qDAAqD;IACrD,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACzC,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,OAAO;QAE9C,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE;gBACtD,cAAc;gBACd,eAAe;gBACf,eAAe;aAChB,CAAC,CAAC;YAEH,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,GAAG,CAC1D,MAAM,CAAC,aAAa,EACpB,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,UAAU,CAAC,OAAO;gBAAE,OAAO;YAEhC,IAAI,QAAQ,EAAE,CAAC;gBACb,SAAS,CAAC,EAAE,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YAED,uEAAuE;YACvE,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnE,SAAS,CAAC,MAAyD,CAAC,CAAC;gBACrE,kDAAkD;gBAClD,IAAI,OAAO,IAAK,MAAc,EAAE,CAAC;oBAC/B,aAAa,CAAE,MAAc,CAAC,KAAK,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxD,oCAAoC;gBACpC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAoD,CAAC,CAAC;gBACxE,IAAI,OAAO,IAAK,MAAM,CAAC,CAAC,CAAS,EAAE,CAAC;oBAClC,aAAa,CAAE,MAAM,CAAC,CAAC,CAAS,CAAC,KAAK,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,SAAS,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;IAE3F,qDAAqD;IACrD,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,EAAE,CAAC;IAChB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,qDAAqD;IACrD,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,IAAY,EAAE,KAAoC,EAAE,EAAE;QACnF,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,uCAAuC;IACrD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,UAAyD,EAAE,EAAE;QAC3F,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,CAAC,CAAC,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,eAAe,CAAC,cAAc,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC,CAAC,CAAC;IACb,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,qDAAqD;IACrD,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,SAA0B,EAAE,EAAE;QACxE,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,SAAS,EAAE,CAAC;YACd,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,gEAAgE;YAChE,gBAAgB,CAAC,IAAI,CAAC,EAAE,CACtB,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CACjE,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,CAAC,CAAC,CAAC;IACb,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,qDAAqD;IACrD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACrC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;IAE7B,qDAAqD;IACrD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC;IAChE,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC;IACjC,MAAM,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC;IAEzC,OAAO;QACL,IAAI;QACJ,UAAU;QACV,MAAM;QACN,OAAO;QACP,aAAa;QACb,KAAK;QACL,OAAO;QACP,SAAS;QACT,UAAU;QACV,YAAY;QACZ,IAAI;QACJ,OAAO;QACP,SAAS;QACT,aAAa;QACb,OAAO;QACP,OAAO;QACP,SAAS;QACT,eAAe;QACf,WAAW;QACX,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"useFeature.js","sourceRoot":"","sources":["../../../src/frontend/hooks/useFeature.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -54,6 +54,7 @@ export { configureSecurity } from './middleware/securityMiddleware.js';
|
|
|
54
54
|
export type { SecurityConfig } from './middleware/securityMiddleware.js';
|
|
55
55
|
export { createLogger, rootLogger } from './utils/logger.js';
|
|
56
56
|
export type { Logger } from './utils/logger.js';
|
|
57
|
+
export { validateEnvironment } from './utils/validateEnvironment.js';
|
|
57
58
|
export { RFC7807ErrorResponse } from './shared/rfc7807ErrorResponse.js';
|
|
58
59
|
export { parseQueryFromConfig, parseFiltersFromConfig, mapFiltersToRPC, validateFilters, getFilterDefaults, parsePaginationParams, parseSortingFromConfig, parseIncludesFromConfig } from './shared/utils/config-driven-filters.js';
|
|
59
60
|
export type { ParsedFilters, PaginationParams, SortingParams, ParsedQuery, GenerateFiltersFromConfig } from './shared/utils/config-driven-filters.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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
|
@@ -48,6 +48,7 @@ export { registerFeatureValidators, batchRegisterValidators } from './middleware
|
|
|
48
48
|
export { configureSecurity } from './middleware/securityMiddleware.js';
|
|
49
49
|
// ─── Utils ──────────────────────────────────────────────────
|
|
50
50
|
export { createLogger, rootLogger } from './utils/logger.js';
|
|
51
|
+
export { validateEnvironment } from './utils/validateEnvironment.js';
|
|
51
52
|
export { RFC7807ErrorResponse } from './shared/rfc7807ErrorResponse.js';
|
|
52
53
|
export { parseQueryFromConfig, parseFiltersFromConfig, mapFiltersToRPC, validateFilters, getFilterDefaults, parsePaginationParams, parseSortingFromConfig, parseIncludesFromConfig } from './shared/utils/config-driven-filters.js';
|
|
53
54
|
export { handleControllerError, withErrorHandling } from './shared/utils/controllerErrorHandler.js';
|
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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"}
|
|
@@ -98,25 +98,25 @@ export declare function configureAuth(authConfig: AuthConfig): void;
|
|
|
98
98
|
* Verify JWT and attach enriched user to request.
|
|
99
99
|
* Uses loadUserContext hook if configured.
|
|
100
100
|
*/
|
|
101
|
-
export declare function authenticateToken(req:
|
|
101
|
+
export declare function authenticateToken(req: Request, res: Response, next: NextFunction): Promise<void>;
|
|
102
102
|
/**
|
|
103
103
|
* Verify JWT but don't reject if missing or invalid.
|
|
104
104
|
* Attaches user if token is valid, continues without user if not.
|
|
105
105
|
* Uses loadUserContext hook if configured.
|
|
106
106
|
*/
|
|
107
|
-
export declare function authenticateTokenOnly(req:
|
|
107
|
+
export declare function authenticateTokenOnly(req: Request, _res: Response, next: NextFunction): Promise<void>;
|
|
108
108
|
/** Alias for authenticateTokenOnly */
|
|
109
109
|
export declare const optionalAuth: typeof authenticateTokenOnly;
|
|
110
110
|
/**
|
|
111
111
|
* Require superadmin flag on user.
|
|
112
112
|
* Checks is_superadmin, isSuperAdmin, and isSuperadmin for compatibility.
|
|
113
113
|
*/
|
|
114
|
-
export declare function requireSuperAdmin(req:
|
|
114
|
+
export declare function requireSuperAdmin(req: Request, res: Response, next: NextFunction): void;
|
|
115
115
|
/**
|
|
116
116
|
* Require admin or owner role in the active organization.
|
|
117
117
|
* Superadmins bypass. Uses systemDB for DB lookup.
|
|
118
118
|
*/
|
|
119
|
-
export declare function requireOrgAdmin(req:
|
|
119
|
+
export declare function requireOrgAdmin(req: Request, res: Response, next: NextFunction): Promise<void>;
|
|
120
120
|
/** Alias for requireOrgAdmin */
|
|
121
121
|
export declare const requireOrganizationAdmin: typeof requireOrgAdmin;
|
|
122
122
|
/**
|
|
@@ -127,11 +127,11 @@ export declare const requireOrganizationAdmin: typeof requireOrgAdmin;
|
|
|
127
127
|
* router.use('/admin', authenticateToken, requireRole('admin'));
|
|
128
128
|
* router.use('/coach', authenticateToken, requireRole('coach', 'admin'));
|
|
129
129
|
*/
|
|
130
|
-
export declare function requireRole(...roles: string[]): (req:
|
|
130
|
+
export declare function requireRole(...roles: string[]): (req: Request, res: Response, next: NextFunction) => void;
|
|
131
131
|
/**
|
|
132
132
|
* Prevent organization ID override attacks.
|
|
133
133
|
* Blocks requests that specify a different org than the user's.
|
|
134
134
|
* Superadmins bypass. Configurable exempt paths for org-switch endpoints.
|
|
135
135
|
*/
|
|
136
|
-
export declare function validateOrganizationAccess(req:
|
|
136
|
+
export declare function validateOrganizationAccess(req: Request, res: Response, next: NextFunction): void;
|
|
137
137
|
//# sourceMappingURL=authMiddleware.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authMiddleware.d.ts","sourceRoot":"","sources":["../../src/middleware/authMiddleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAgB,cAAc,EAAE,IAAI,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"authMiddleware.d.ts","sourceRoot":"","sources":["../../src/middleware/authMiddleware.ts"],"names":[],"mappings":"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"}
|