optio-api 0.2.9 → 0.2.11
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 +39 -7
- package/dist/_generated/optio-engine.d.ts +8 -0
- package/dist/_generated/optio-engine.d.ts.map +1 -1
- package/dist/_generated/optio-engine.js +3 -0
- package/dist/_generated/optio-engine.js.map +1 -1
- package/dist/access-scope.d.ts +53 -0
- package/dist/access-scope.d.ts.map +1 -0
- package/dist/access-scope.js +110 -0
- package/dist/access-scope.js.map +1 -0
- package/dist/adapters/express.d.ts +5 -0
- package/dist/adapters/express.d.ts.map +1 -1
- package/dist/adapters/express.js +35 -23
- package/dist/adapters/express.js.map +1 -1
- package/dist/adapters/fastify.d.ts +5 -1
- package/dist/adapters/fastify.d.ts.map +1 -1
- package/dist/adapters/fastify.js +74 -33
- package/dist/adapters/fastify.js.map +1 -1
- package/dist/adapters/nextjs-app.d.ts +5 -0
- package/dist/adapters/nextjs-app.d.ts.map +1 -1
- package/dist/adapters/nextjs-app.js +44 -15
- package/dist/adapters/nextjs-app.js.map +1 -1
- package/dist/adapters/nextjs-pages.d.ts +5 -0
- package/dist/adapters/nextjs-pages.d.ts.map +1 -1
- package/dist/adapters/nextjs-pages.js +41 -15
- package/dist/adapters/nextjs-pages.js.map +1 -1
- package/dist/auth.d.ts +48 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +44 -0
- package/dist/auth.js.map +1 -1
- package/dist/discovery.d.ts +7 -1
- package/dist/discovery.d.ts.map +1 -1
- package/dist/discovery.js +18 -11
- package/dist/discovery.js.map +1 -1
- package/dist/handlers.d.ts +44 -14
- package/dist/handlers.d.ts.map +1 -1
- package/dist/handlers.js +78 -20
- package/dist/handlers.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/process-change-hub.d.ts +87 -0
- package/dist/process-change-hub.d.ts.map +1 -0
- package/dist/process-change-hub.js +268 -0
- package/dist/process-change-hub.js.map +1 -0
- package/dist/process-change-relevance.d.ts +57 -0
- package/dist/process-change-relevance.d.ts.map +1 -0
- package/dist/process-change-relevance.js +101 -0
- package/dist/process-change-relevance.js.map +1 -0
- package/dist/stream-poller.d.ts +13 -1
- package/dist/stream-poller.d.ts.map +1 -1
- package/dist/stream-poller.js +290 -260
- package/dist/stream-poller.js.map +1 -1
- package/package.json +2 -2
|
@@ -8,7 +8,9 @@ import * as handlers from '../handlers.js';
|
|
|
8
8
|
import { createListPoller, createTreePoller, createMultiTreePoller } from '../stream-poller.js';
|
|
9
9
|
import { discoverInstances } from '../discovery.js';
|
|
10
10
|
import { resolveDb } from '../resolve.js';
|
|
11
|
-
import {
|
|
11
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
12
|
+
import { accessFor, checkAuth, UNRESTRICTED, } from '../auth.js';
|
|
13
|
+
import { gateInstances, inScope } from '../access-scope.js';
|
|
12
14
|
import { isWriteMethod } from '../widget-proxy-core.js';
|
|
13
15
|
import { detectLegacyMetadataParams, formatLegacyMetadataMessage, } from '../metadata-filter-query.js';
|
|
14
16
|
import { parseSseOptions, checkLegacyMetadataParams, LegacyMetadataParamError, } from '../sse-options.js';
|
|
@@ -30,50 +32,66 @@ export function createOptioHandler(opts) {
|
|
|
30
32
|
dbOpts = 'mongoClient' in opts && opts.mongoClient ? { mongoClient: opts.mongoClient } : { db: opts.db };
|
|
31
33
|
ctx = createOptioContext({ dbOpts, redis });
|
|
32
34
|
}
|
|
35
|
+
// The request's access travels to the ts-rest routes in an
|
|
36
|
+
// AsyncLocalStorage set around the ts-rest call (as in nextjs-app).
|
|
37
|
+
const hooks = { scope: opts.scope, authorize: opts.authorize };
|
|
38
|
+
const requestAccess = new AsyncLocalStorage();
|
|
39
|
+
function currentAccess() {
|
|
40
|
+
const access = requestAccess.getStore();
|
|
41
|
+
if (access)
|
|
42
|
+
return access;
|
|
43
|
+
if (!hooks.scope && !hooks.authorize)
|
|
44
|
+
return UNRESTRICTED;
|
|
45
|
+
throw new Error('optio-api: route reached without the request\'s access');
|
|
46
|
+
}
|
|
33
47
|
const tsRestHandler = createNextRouter(apiContract.processes, {
|
|
34
48
|
list: async ({ query }) => {
|
|
35
|
-
const result = await handlers.listProcesses(ctx, query);
|
|
49
|
+
const result = await handlers.listProcesses(ctx, query, await currentAccess());
|
|
36
50
|
return { status: 200, body: result };
|
|
37
51
|
},
|
|
38
52
|
get: async ({ params, query }) => {
|
|
39
|
-
const result = await handlers.getProcess(ctx, query, params.id);
|
|
53
|
+
const result = await handlers.getProcess(ctx, query, params.id, await currentAccess());
|
|
40
54
|
if (!result)
|
|
41
55
|
return { status: 404, body: { message: 'Process not found' } };
|
|
42
56
|
return { status: 200, body: result };
|
|
43
57
|
},
|
|
44
58
|
getTree: async ({ params, query }) => {
|
|
45
|
-
const result = await handlers.getProcessTree(ctx, query, params.id);
|
|
59
|
+
const result = await handlers.getProcessTree(ctx, query, params.id, await currentAccess());
|
|
46
60
|
if (!result)
|
|
47
61
|
return { status: 404, body: { message: 'Process not found' } };
|
|
48
62
|
return { status: 200, body: result };
|
|
49
63
|
},
|
|
50
64
|
getLog: async ({ params, query }) => {
|
|
51
|
-
const result = await handlers.getProcessLog(ctx, query, params.id);
|
|
65
|
+
const result = await handlers.getProcessLog(ctx, query, params.id, await currentAccess());
|
|
52
66
|
if (!result)
|
|
53
67
|
return { status: 404, body: { message: 'Process not found' } };
|
|
54
68
|
return { status: 200, body: result };
|
|
55
69
|
},
|
|
56
70
|
getTreeLog: async ({ params, query }) => {
|
|
57
|
-
const result = await handlers.getProcessTreeLog(ctx, query, params.id);
|
|
71
|
+
const result = await handlers.getProcessTreeLog(ctx, query, params.id, await currentAccess());
|
|
58
72
|
if (!result)
|
|
59
73
|
return { status: 404, body: { message: 'Process not found' } };
|
|
60
74
|
return { status: 200, body: result };
|
|
61
75
|
},
|
|
62
76
|
launch: async ({ params, query, body }) => {
|
|
63
|
-
const result = await handlers.launchProcess(ctx, query, params.id, body?.resume === true);
|
|
77
|
+
const result = await handlers.launchProcess(ctx, query, params.id, body?.resume === true, null, await currentAccess());
|
|
64
78
|
return result;
|
|
65
79
|
},
|
|
66
80
|
cancel: async ({ params, query }) => {
|
|
67
|
-
const result = await handlers.cancelProcess(ctx, query, params.id);
|
|
81
|
+
const result = await handlers.cancelProcess(ctx, query, params.id, await currentAccess());
|
|
68
82
|
return result;
|
|
69
83
|
},
|
|
70
84
|
dismiss: async ({ params, query }) => {
|
|
71
|
-
const result = await handlers.dismissProcess(ctx, query, params.id);
|
|
85
|
+
const result = await handlers.dismissProcess(ctx, query, params.id, await currentAccess());
|
|
86
|
+
return result;
|
|
87
|
+
},
|
|
88
|
+
resurrect: async ({ params, query, body }) => {
|
|
89
|
+
const result = await handlers.resurrectProcess(ctx, query, params.id, body?.sessionId ?? null, await currentAccess());
|
|
72
90
|
return result;
|
|
73
91
|
},
|
|
74
92
|
resync: async ({ query, body }) => {
|
|
75
|
-
const result = await handlers.resyncProcesses(ctx, query, body.clean, body.metadataFilter);
|
|
76
|
-
return
|
|
93
|
+
const result = await handlers.resyncProcesses(ctx, query, body.clean, body.metadataFilter, await currentAccess());
|
|
94
|
+
return result;
|
|
77
95
|
},
|
|
78
96
|
});
|
|
79
97
|
const handler = async (req, res) => {
|
|
@@ -82,6 +100,7 @@ export function createOptioHandler(opts) {
|
|
|
82
100
|
res.status(authResult.status).json(authResult.body);
|
|
83
101
|
return;
|
|
84
102
|
}
|
|
103
|
+
const access = await accessFor(req, hooks);
|
|
85
104
|
const url = req.url ?? '';
|
|
86
105
|
const method = req.method ?? '';
|
|
87
106
|
// Strip query string for path comparisons — req.url includes it on Pages Router.
|
|
@@ -96,7 +115,11 @@ export function createOptioHandler(opts) {
|
|
|
96
115
|
}
|
|
97
116
|
// Discovery endpoint: /api/optio/instances
|
|
98
117
|
if (url === '/api/optio/instances' && method === 'GET') {
|
|
99
|
-
|
|
118
|
+
if (!(await gateInstances(access))) {
|
|
119
|
+
res.status(403).json({ message: 'Forbidden' });
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
const instances = await discoverInstances(dbOpts, redis, opts.prefix);
|
|
100
123
|
res.status(200).json({ instances });
|
|
101
124
|
return;
|
|
102
125
|
}
|
|
@@ -114,7 +137,8 @@ export function createOptioHandler(opts) {
|
|
|
114
137
|
}
|
|
115
138
|
const { db, prefix } = resolveDb(dbOpts, sseOpts);
|
|
116
139
|
const col = db.collection(`${prefix}_processes`);
|
|
117
|
-
const
|
|
140
|
+
const found = await col.findOne({ _id: new ObjectId(id) });
|
|
141
|
+
const proc = found && (await inScope(col, found, access.scope)) ? found : null;
|
|
118
142
|
if (!proc) {
|
|
119
143
|
res.status(404).json({ message: 'Process not found' });
|
|
120
144
|
return;
|
|
@@ -167,7 +191,8 @@ export function createOptioHandler(opts) {
|
|
|
167
191
|
const col = db.collection(`${prefix}_processes`);
|
|
168
192
|
async function resolveOne(id) {
|
|
169
193
|
try {
|
|
170
|
-
const
|
|
194
|
+
const found = await col.findOne({ _id: new ObjectId(id) });
|
|
195
|
+
const proc = found && (await inScope(col, found, access.scope)) ? found : null;
|
|
171
196
|
return { id, proc };
|
|
172
197
|
}
|
|
173
198
|
catch {
|
|
@@ -254,13 +279,14 @@ export function createOptioHandler(opts) {
|
|
|
254
279
|
sendEvent,
|
|
255
280
|
onError: () => res.end(),
|
|
256
281
|
metadataFilter: sseOpts.metadataFilter,
|
|
282
|
+
scope: access.scope,
|
|
257
283
|
});
|
|
258
284
|
poller.start();
|
|
259
285
|
req.on('close', () => poller.stop());
|
|
260
286
|
return;
|
|
261
287
|
}
|
|
262
288
|
// Delegate to ts-rest handler for all other routes
|
|
263
|
-
return tsRestHandler(req, res);
|
|
289
|
+
return requestAccess.run(access, () => tsRestHandler(req, res));
|
|
264
290
|
};
|
|
265
291
|
return explicit ? { handler } : { handler, ctx };
|
|
266
292
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nextjs-pages.js","sourceRoot":"","sources":["../../src/adapters/nextjs-pages.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,6EAA6E;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAKpD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAkB,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAqB,MAAM,eAAe,CAAC;AAoBtE,MAAM,CAAC,GAAG,YAAY,EAAE,CAAC;AACzB,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AAEvF,MAAM,UAAU,kBAAkB,CAAC,IAAqB;IACtD,MAAM,QAAQ,GAAG,KAAK,IAAI,IAAI,CAAC;IAC/B,IAAI,GAAiB,CAAC;IACtB,IAAI,KAAY,CAAC;IACjB,IAAI,MAAiB,CAAC;IACtB,IAAI,QAAQ,EAAE,CAAC;QACb,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACf,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QACpB,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IACpB,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACnB,MAAM,GAAG,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAG,EAAE,CAAC;QAC1G,GAAG,GAAG,kBAAkB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,aAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,SAAS,EAAE;QAC5D,IAAI,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YACxB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACxD,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAChD,CAAC;QACD,GAAG,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,EAAE,CAAC;YACrF,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAChD,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YACnC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACpE,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,EAAE,CAAC;YACrF,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAChD,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YAClC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACnE,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,EAAE,CAAC;YACrF,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAChD,CAAC;QACD,UAAU,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YACtC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACvE,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,EAAE,CAAC;YACrF,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAChD,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;YACxC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC;YAC1F,OAAO,MAAa,CAAC;QACvB,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YAClC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACnE,OAAO,MAAa,CAAC;QACvB,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YACnC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACpE,OAAO,MAAa,CAAC;QACvB,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAA8I,EAAE,EAAE;YAC5K,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3F,OAAO,EAAE,MAAM,EAAE,GAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAChD,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,EAAE;QAClE,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC;QAC/F,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACpD,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;QAChC,iFAAiF;QACjF,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/B,sFAAsF;QACtF,IAAI,IAAI,KAAK,gBAAgB,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAClD,MAAM,UAAU,GAAG,0BAA0B,CAAC,GAAG,CAAC,KAAgC,CAAC,CAAC;YACpF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2BAA2B,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBAC3E,OAAO;YACT,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,IAAI,GAAG,KAAK,sBAAsB,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACzD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QAED,qDAAqD;QACrD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAChF,IAAI,eAAe,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACxC,MAAM,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,OAAO,CAAC;YACZ,IAAI,CAAC;gBACH,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,KAAgC,CAAC,CAAC;YAClE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxD,OAAO;YACT,CAAC;YACD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAElD,MAAM,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,MAAM,YAAY,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC;gBACvD,OAAO;YACT,CAAC;YAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,mBAAmB;gBACnC,eAAe,EAAE,UAAU;gBAC3B,YAAY,EAAE,YAAY;aAC3B,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,EAAE;gBAClC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,gBAAgB,CAAC;gBAC9B,EAAE;gBACF,MAAM;gBACN,SAAS;gBACT,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE;gBACxB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;gBAC9B,SAAS,EAAE,IAAI,CAAC,KAAK;gBACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,0DAA0D;QAC1D,wFAAwF;QACxF,yFAAyF;QACzF,wFAAwF;QACxF,yEAAyE;QACzE,IAAI,IAAI,KAAK,kCAAkC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACpE,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAgC,CAAC;YACtD,MAAM,YAAY,GAAI,QAAQ,CAAC,OAA8B,IAAI,EAAE,CAAC;YACpE,MAAM,YAAY,GAAI,QAAQ,CAAC,OAA8B,IAAI,EAAE,CAAC;YACpE,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC,CAAC;gBAC1E,OAAO;YACT,CAAC;YAED,IAAI,OAAO,CAAC;YACZ,IAAI,CAAC;gBACH,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxD,OAAO;YACT,CAAC;YACD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,MAAM,YAAY,CAAC,CAAC;YAEjD,KAAK,UAAU,UAAU,CAAC,EAAU;gBAClC,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC1D,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBAC5B,CAAC;YACH,CAAC;YACD,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;aAC1C,CAAC,CAAC;YAEH,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAyC,EAAE,CAAC;YAC3D,MAAM,eAAe,GAAU,EAAE,CAAC;YAClC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;gBAC7B,IAAI,CAAC,CAAC,CAAC,IAAI;oBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;;oBAC3B,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;gBAC7B,IAAI,CAAC,CAAC,CAAC,IAAI;oBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;;oBAC3B,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxC,CAAC;YAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,mBAAmB;gBACnC,eAAe,EAAE,UAAU;gBAC3B,YAAY,EAAE,YAAY;aAC3B,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,EAAE;gBAClC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC,CAAC;YAEF,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;YAE3C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3D,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,qBAAqB,CAAC;gBACnC,EAAE;gBACF,MAAM;gBACN,SAAS;gBACT,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE;gBACxB,SAAS;gBACT,OAAO,EAAE,eAAe;gBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,sFAAsF;QACtF,IAAI,IAAI,KAAK,uBAAuB,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACzD,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAgC,CAAC;YACtD,IAAI,CAAC;gBACH,yBAAyB,CAAC,QAAQ,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,YAAY,wBAAwB,EAAE,CAAC;oBAC1C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBACD,MAAM,CAAC,CAAC;YACV,CAAC;YACD,IAAI,OAAO,CAAC;YACZ,IAAI,CAAC;gBACH,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxD,OAAO;YACT,CAAC;YACD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAElD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,mBAAmB;gBACnC,eAAe,EAAE,UAAU;gBAC3B,YAAY,EAAE,YAAY;aAC3B,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,EAAE;gBAClC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,gBAAgB,CAAC;gBAC9B,EAAE;gBACF,MAAM;gBACN,SAAS;gBACT,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE;gBACxB,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,mDAAmD;QACnD,OAAO,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AACnD,CAAC"}
|
|
1
|
+
{"version":3,"file":"nextjs-pages.js","sourceRoot":"","sources":["../../src/adapters/nextjs-pages.ts"],"names":[],"mappings":"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"}
|
package/dist/auth.d.ts
CHANGED
|
@@ -7,4 +7,52 @@ export interface AuthResult {
|
|
|
7
7
|
};
|
|
8
8
|
}
|
|
9
9
|
export declare function checkAuth<TRequest>(req: TRequest, authenticate: AuthCallback<TRequest>, isWrite: boolean): Promise<AuthResult | null>;
|
|
10
|
+
/** A flat exact-match metadata map: the tenant boundary a request is confined to. */
|
|
11
|
+
export type ScopeFilter = Record<string, string | number | boolean | null>;
|
|
12
|
+
export type OptioAction = 'read' | 'launch' | 'cancel' | 'dismiss' | 'resurrect' | 'resync' | 'widget' | 'widget-control' | 'widget-upload' | 'instances';
|
|
13
|
+
/** What `authorize` sees of a process. */
|
|
14
|
+
export interface ProcessRef {
|
|
15
|
+
_id: string;
|
|
16
|
+
processId: string;
|
|
17
|
+
name: string;
|
|
18
|
+
parentId?: string;
|
|
19
|
+
rootId: string;
|
|
20
|
+
metadata: Record<string, unknown>;
|
|
21
|
+
}
|
|
22
|
+
export interface AuthorizeInput {
|
|
23
|
+
role: OptioRole;
|
|
24
|
+
action: OptioAction;
|
|
25
|
+
/** The process a single-process action targets. */
|
|
26
|
+
process?: ProcessRef;
|
|
27
|
+
/** resync: the effective (scoped) filter. */
|
|
28
|
+
metadataFilter?: Record<string, unknown>;
|
|
29
|
+
/** resync: whether process records are deleted first. */
|
|
30
|
+
clean?: boolean;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Confines a request to processes whose `metadata` equals every key of the
|
|
34
|
+
* returned map. `null` (or an empty map) leaves the request unscoped.
|
|
35
|
+
*/
|
|
36
|
+
export type ScopeCallback<TRequest> = (req: TRequest) => ScopeFilter | null | Promise<ScopeFilter | null>;
|
|
37
|
+
/** Decides a mutating action (and instance discovery); `false` gives 403. */
|
|
38
|
+
export type AuthorizeCallback<TRequest> = (req: TRequest, input: AuthorizeInput) => boolean | Promise<boolean>;
|
|
39
|
+
export interface AccessHooks<TRequest> {
|
|
40
|
+
scope?: ScopeCallback<TRequest>;
|
|
41
|
+
authorize?: AuthorizeCallback<TRequest>;
|
|
42
|
+
}
|
|
43
|
+
/** Framework-agnostic access for one request; handlers take this. */
|
|
44
|
+
export interface Access {
|
|
45
|
+
/** False when the host passed neither hook: handlers skip every check. */
|
|
46
|
+
restricted: boolean;
|
|
47
|
+
scope: ScopeFilter | null;
|
|
48
|
+
authorize(input: Omit<AuthorizeInput, 'role'>): Promise<boolean>;
|
|
49
|
+
}
|
|
50
|
+
export declare const UNRESTRICTED: Access;
|
|
51
|
+
export declare function resolveAccess<TRequest>(hooks: AccessHooks<TRequest>, req: TRequest, role: OptioRole): Promise<Access>;
|
|
52
|
+
/**
|
|
53
|
+
* The access of a request that already passed `checkAuth`, resolved once per
|
|
54
|
+
* request. Throws (synchronously) for a request `checkAuth` never accepted:
|
|
55
|
+
* that is an adapter wiring bug, and failing loudly beats guessing a role.
|
|
56
|
+
*/
|
|
57
|
+
export declare function accessFor<TRequest extends object>(req: TRequest, hooks: AccessHooks<TRequest>): Promise<Access>;
|
|
10
58
|
//# sourceMappingURL=auth.d.ts.map
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE9C,MAAM,MAAM,YAAY,CAAC,QAAQ,IAC/B,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;AAElE,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC;IAClB,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3B;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/auth.js
CHANGED
|
@@ -1,9 +1,53 @@
|
|
|
1
|
+
// The role each authenticated request was given, for `accessFor`. Keyed by the
|
|
2
|
+
// framework-native request object, so it is collected with the request.
|
|
3
|
+
const requestRoles = new WeakMap();
|
|
1
4
|
export async function checkAuth(req, authenticate, isWrite) {
|
|
2
5
|
const role = await authenticate(req);
|
|
3
6
|
if (role === null)
|
|
4
7
|
return { status: 401, body: { message: 'Unauthorized' } };
|
|
5
8
|
if (isWrite && role === 'viewer')
|
|
6
9
|
return { status: 403, body: { message: 'Forbidden' } };
|
|
10
|
+
if (typeof req === 'object' && req !== null)
|
|
11
|
+
requestRoles.set(req, role);
|
|
7
12
|
return null;
|
|
8
13
|
}
|
|
14
|
+
export const UNRESTRICTED = Object.freeze({
|
|
15
|
+
restricted: false,
|
|
16
|
+
scope: null,
|
|
17
|
+
authorize: async () => true,
|
|
18
|
+
});
|
|
19
|
+
export async function resolveAccess(hooks, req, role) {
|
|
20
|
+
if (!hooks.scope && !hooks.authorize)
|
|
21
|
+
return UNRESTRICTED;
|
|
22
|
+
const raw = hooks.scope ? await hooks.scope(req) : null;
|
|
23
|
+
const scope = raw && Object.keys(raw).length > 0 ? raw : null;
|
|
24
|
+
const authorize = hooks.authorize;
|
|
25
|
+
return {
|
|
26
|
+
restricted: true,
|
|
27
|
+
scope,
|
|
28
|
+
authorize: authorize
|
|
29
|
+
? async (input) => (await authorize(req, { ...input, role })) === true
|
|
30
|
+
: async () => true,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
const requestAccess = new WeakMap();
|
|
34
|
+
/**
|
|
35
|
+
* The access of a request that already passed `checkAuth`, resolved once per
|
|
36
|
+
* request. Throws (synchronously) for a request `checkAuth` never accepted:
|
|
37
|
+
* that is an adapter wiring bug, and failing loudly beats guessing a role.
|
|
38
|
+
*/
|
|
39
|
+
export function accessFor(req, hooks) {
|
|
40
|
+
if (!hooks.scope && !hooks.authorize)
|
|
41
|
+
return Promise.resolve(UNRESTRICTED);
|
|
42
|
+
const cached = requestAccess.get(req);
|
|
43
|
+
if (cached)
|
|
44
|
+
return cached;
|
|
45
|
+
const role = requestRoles.get(req);
|
|
46
|
+
if (role === undefined) {
|
|
47
|
+
throw new Error('optio-api: accessFor called before checkAuth accepted the request');
|
|
48
|
+
}
|
|
49
|
+
const access = resolveAccess(hooks, req, role);
|
|
50
|
+
requestAccess.set(req, access);
|
|
51
|
+
return access;
|
|
52
|
+
}
|
|
9
53
|
//# sourceMappingURL=auth.js.map
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,GAAa,EACb,YAAoC,EACpC,OAAgB;IAEhB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC;IAC7E,IAAI,OAAO,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC;IACzF,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAUA,+EAA+E;AAC/E,wEAAwE;AACxE,MAAM,YAAY,GAAG,IAAI,OAAO,EAAqB,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,GAAa,EACb,YAAoC,EACpC,OAAgB;IAEhB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC;IAC7E,IAAI,OAAO,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC;IACzF,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACzE,OAAO,IAAI,CAAC;AACd,CAAC;AA0DD,MAAM,CAAC,MAAM,YAAY,GAAW,MAAM,CAAC,MAAM,CAAC;IAChD,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;CAC5B,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAA4B,EAC5B,GAAa,EACb,IAAe;IAEf,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS;QAAE,OAAO,YAAY,CAAC;IAC1D,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,MAAM,KAAK,GAAG,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9D,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,OAAO;QACL,UAAU,EAAE,IAAI;QAChB,KAAK;QACL,SAAS,EAAE,SAAS;YAClB,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI;YACtE,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,aAAa,GAAG,IAAI,OAAO,EAA2B,CAAC;AAE7D;;;;GAIG;AACH,MAAM,UAAU,SAAS,CACvB,GAAa,EACb,KAA4B;IAE5B,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3E,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/C,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/discovery.d.ts
CHANGED
|
@@ -5,6 +5,12 @@ interface OptioInstance {
|
|
|
5
5
|
prefix: string;
|
|
6
6
|
live: boolean;
|
|
7
7
|
}
|
|
8
|
-
|
|
8
|
+
/**
|
|
9
|
+
* The optio instances (database + prefix) reachable through `opts`: in its one
|
|
10
|
+
* database (single-db) or in every database on the server (multi-db). With
|
|
11
|
+
* `prefix`, only instances of that prefix (an app pinned to one prefix, e.g.
|
|
12
|
+
* the adapters' `prefix` option).
|
|
13
|
+
*/
|
|
14
|
+
export declare function discoverInstances(opts: DbOptions, redis?: Redis, prefix?: string): Promise<OptioInstance[]>;
|
|
9
15
|
export {};
|
|
10
16
|
//# sourceMappingURL=discovery.d.ts.map
|
package/dist/discovery.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,UAAU,aAAa;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;CACf;
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,UAAU,aAAa;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;CACf;AA6BD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,GAC9C,OAAO,CAAC,aAAa,EAAE,CAAC,CA4B1B"}
|
package/dist/discovery.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
const REQUIRED_FIELDS = ['processId', 'rootId', 'depth'];
|
|
2
|
-
async function discoverPrefixesInDb(db) {
|
|
2
|
+
async function discoverPrefixesInDb(db, only) {
|
|
3
3
|
const collections = await db.listCollections().toArray();
|
|
4
4
|
const candidates = collections
|
|
5
5
|
.map((c) => c.name)
|
|
6
6
|
.filter((name) => name.endsWith('_processes'))
|
|
7
|
-
.map((name) => name.slice(0, -'_processes'.length))
|
|
7
|
+
.map((name) => name.slice(0, -'_processes'.length))
|
|
8
|
+
.filter((prefix) => only === undefined || prefix === only);
|
|
8
9
|
const confirmed = [];
|
|
9
10
|
for (const prefix of candidates) {
|
|
10
11
|
const doc = await db.collection(`${prefix}_processes`).findOne();
|
|
@@ -21,14 +22,20 @@ async function checkLive(redis, database, prefix) {
|
|
|
21
22
|
const result = await redis.exists(key);
|
|
22
23
|
return result === 1;
|
|
23
24
|
}
|
|
24
|
-
|
|
25
|
+
/**
|
|
26
|
+
* The optio instances (database + prefix) reachable through `opts`: in its one
|
|
27
|
+
* database (single-db) or in every database on the server (multi-db). With
|
|
28
|
+
* `prefix`, only instances of that prefix (an app pinned to one prefix, e.g.
|
|
29
|
+
* the adapters' `prefix` option).
|
|
30
|
+
*/
|
|
31
|
+
export async function discoverInstances(opts, redis, prefix) {
|
|
25
32
|
if ('db' in opts && opts.db) {
|
|
26
33
|
const dbName = opts.db.databaseName;
|
|
27
|
-
const prefixes = await discoverPrefixesInDb(opts.db);
|
|
34
|
+
const prefixes = await discoverPrefixesInDb(opts.db, prefix);
|
|
28
35
|
const instances = [];
|
|
29
|
-
for (const
|
|
30
|
-
const live = await checkLive(redis, dbName,
|
|
31
|
-
instances.push({ database: dbName, prefix, live });
|
|
36
|
+
for (const found of prefixes) {
|
|
37
|
+
const live = await checkLive(redis, dbName, found);
|
|
38
|
+
instances.push({ database: dbName, prefix: found, live });
|
|
32
39
|
}
|
|
33
40
|
return instances;
|
|
34
41
|
}
|
|
@@ -37,10 +44,10 @@ export async function discoverInstances(opts, redis) {
|
|
|
37
44
|
const instances = [];
|
|
38
45
|
for (const dbInfo of databases) {
|
|
39
46
|
const db = opts.mongoClient.db(dbInfo.name);
|
|
40
|
-
const prefixes = await discoverPrefixesInDb(db);
|
|
41
|
-
for (const
|
|
42
|
-
const live = await checkLive(redis, dbInfo.name,
|
|
43
|
-
instances.push({ database: dbInfo.name, prefix, live });
|
|
47
|
+
const prefixes = await discoverPrefixesInDb(db, prefix);
|
|
48
|
+
for (const found of prefixes) {
|
|
49
|
+
const live = await checkLive(redis, dbInfo.name, found);
|
|
50
|
+
instances.push({ database: dbInfo.name, prefix: found, live });
|
|
44
51
|
}
|
|
45
52
|
}
|
|
46
53
|
return instances.sort((a, b) => a.database.localeCompare(b.database) || a.prefix.localeCompare(b.prefix));
|
package/dist/discovery.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"AAIA,MAAM,eAAe,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAQzD,KAAK,UAAU,oBAAoB,CAAC,EAAM;
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
|
package/dist/handlers.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ProcessMetadataFilter } from './types.js';
|
|
2
2
|
import type { OptioContext } from './context.js';
|
|
3
|
-
import
|
|
3
|
+
import { type Access } from './auth.js';
|
|
4
|
+
import type { LaunchFailureReason as LaunchFailureReasonType, CancelFailureReason as CancelFailureReasonType, DismissFailureReason as DismissFailureReasonType, ResurrectFailureReason as ResurrectFailureReasonType } from 'optio-contracts';
|
|
4
5
|
export interface ListQuery {
|
|
5
6
|
cursor?: string;
|
|
6
7
|
limit: number;
|
|
@@ -12,7 +13,7 @@ export interface ListProcessesQuery extends ListQuery {
|
|
|
12
13
|
database?: string;
|
|
13
14
|
prefix?: string;
|
|
14
15
|
}
|
|
15
|
-
export declare function listProcesses(ctx: OptioContext, query: ListProcessesQuery): Promise<{
|
|
16
|
+
export declare function listProcesses(ctx: OptioContext, query: ListProcessesQuery, access?: Access): Promise<{
|
|
16
17
|
items: {
|
|
17
18
|
_id: any;
|
|
18
19
|
parentId: any;
|
|
@@ -24,7 +25,7 @@ export declare function listProcesses(ctx: OptioContext, query: ListProcessesQue
|
|
|
24
25
|
export declare function getProcess(ctx: OptioContext, query: {
|
|
25
26
|
database?: string;
|
|
26
27
|
prefix?: string;
|
|
27
|
-
}, id: string): Promise<{
|
|
28
|
+
}, id: string, access?: Access): Promise<{
|
|
28
29
|
_id: any;
|
|
29
30
|
parentId: any;
|
|
30
31
|
rootId: any;
|
|
@@ -33,7 +34,7 @@ export declare function getProcessTree(ctx: OptioContext, query: {
|
|
|
33
34
|
database?: string;
|
|
34
35
|
prefix?: string;
|
|
35
36
|
maxDepth?: number;
|
|
36
|
-
}, id: string): Promise<any>;
|
|
37
|
+
}, id: string, access?: Access): Promise<any>;
|
|
37
38
|
export interface PaginationQuery {
|
|
38
39
|
cursor?: string;
|
|
39
40
|
limit: number;
|
|
@@ -42,7 +43,7 @@ export interface GetProcessLogQuery extends PaginationQuery {
|
|
|
42
43
|
database?: string;
|
|
43
44
|
prefix?: string;
|
|
44
45
|
}
|
|
45
|
-
export declare function getProcessLog(ctx: OptioContext, query: GetProcessLogQuery, id: string): Promise<{
|
|
46
|
+
export declare function getProcessLog(ctx: OptioContext, query: GetProcessLogQuery, id: string, access?: Access): Promise<{
|
|
46
47
|
items: any;
|
|
47
48
|
nextCursor: string | null;
|
|
48
49
|
totalCount: any;
|
|
@@ -54,11 +55,17 @@ export interface GetProcessTreeLogQuery extends TreeLogQuery {
|
|
|
54
55
|
database?: string;
|
|
55
56
|
prefix?: string;
|
|
56
57
|
}
|
|
57
|
-
export declare function getProcessTreeLog(ctx: OptioContext, query: GetProcessTreeLogQuery, id: string): Promise<{
|
|
58
|
+
export declare function getProcessTreeLog(ctx: OptioContext, query: GetProcessTreeLogQuery, id: string, access?: Access): Promise<{
|
|
58
59
|
items: any[];
|
|
59
60
|
nextCursor: string | null;
|
|
60
61
|
totalCount: number;
|
|
61
62
|
} | null>;
|
|
63
|
+
export type ForbiddenResult = {
|
|
64
|
+
status: 403;
|
|
65
|
+
body: {
|
|
66
|
+
message: string;
|
|
67
|
+
};
|
|
68
|
+
};
|
|
62
69
|
export type LaunchCommandResult = {
|
|
63
70
|
status: 200;
|
|
64
71
|
body: any;
|
|
@@ -68,7 +75,7 @@ export type LaunchCommandResult = {
|
|
|
68
75
|
reason: LaunchFailureReasonType;
|
|
69
76
|
message: string;
|
|
70
77
|
};
|
|
71
|
-
};
|
|
78
|
+
} | ForbiddenResult;
|
|
72
79
|
export type CancelCommandResult = {
|
|
73
80
|
status: 200;
|
|
74
81
|
body: any;
|
|
@@ -78,7 +85,7 @@ export type CancelCommandResult = {
|
|
|
78
85
|
reason: CancelFailureReasonType;
|
|
79
86
|
message: string;
|
|
80
87
|
};
|
|
81
|
-
};
|
|
88
|
+
} | ForbiddenResult;
|
|
82
89
|
export type DismissCommandResult = {
|
|
83
90
|
status: 200;
|
|
84
91
|
body: any;
|
|
@@ -88,23 +95,46 @@ export type DismissCommandResult = {
|
|
|
88
95
|
reason: DismissFailureReasonType;
|
|
89
96
|
message: string;
|
|
90
97
|
};
|
|
98
|
+
} | ForbiddenResult;
|
|
99
|
+
export type ResurrectCommandResult = {
|
|
100
|
+
status: 200;
|
|
101
|
+
body: any;
|
|
102
|
+
} | {
|
|
103
|
+
status: 404 | 409;
|
|
104
|
+
body: {
|
|
105
|
+
reason: ResurrectFailureReasonType;
|
|
106
|
+
message: string;
|
|
107
|
+
};
|
|
108
|
+
} | ForbiddenResult;
|
|
109
|
+
export type ResyncCommandResult = {
|
|
110
|
+
status: 202;
|
|
111
|
+
body: {
|
|
112
|
+
message: string;
|
|
113
|
+
};
|
|
114
|
+
} | {
|
|
115
|
+
status: 400 | 403;
|
|
116
|
+
body: {
|
|
117
|
+
message: string;
|
|
118
|
+
};
|
|
91
119
|
};
|
|
92
120
|
export declare function launchProcess(ctx: OptioContext, query: {
|
|
93
121
|
database?: string;
|
|
94
122
|
prefix?: string;
|
|
95
|
-
}, id: string, resume?: boolean, sessionId?: string | null): Promise<LaunchCommandResult>;
|
|
123
|
+
}, id: string, resume?: boolean, sessionId?: string | null, access?: Access): Promise<LaunchCommandResult>;
|
|
96
124
|
export declare function cancelProcess(ctx: OptioContext, query: {
|
|
97
125
|
database?: string;
|
|
98
126
|
prefix?: string;
|
|
99
|
-
}, id: string): Promise<CancelCommandResult>;
|
|
127
|
+
}, id: string, access?: Access): Promise<CancelCommandResult>;
|
|
100
128
|
export declare function dismissProcess(ctx: OptioContext, query: {
|
|
101
129
|
database?: string;
|
|
102
130
|
prefix?: string;
|
|
103
|
-
}, id: string): Promise<DismissCommandResult>;
|
|
131
|
+
}, id: string, access?: Access): Promise<DismissCommandResult>;
|
|
132
|
+
export declare function resurrectProcess(ctx: OptioContext, query: {
|
|
133
|
+
database?: string;
|
|
134
|
+
prefix?: string;
|
|
135
|
+
}, id: string, sessionId?: string | null, access?: Access): Promise<ResurrectCommandResult>;
|
|
104
136
|
export declare function resyncProcesses(ctx: OptioContext, query: {
|
|
105
137
|
database?: string;
|
|
106
138
|
prefix?: string;
|
|
107
|
-
}, clean?: boolean, metadataFilter?: ProcessMetadataFilter): Promise<
|
|
108
|
-
message: string;
|
|
109
|
-
}>;
|
|
139
|
+
}, clean?: boolean, metadataFilter?: ProcessMetadataFilter, access?: Access): Promise<ResyncCommandResult>;
|
|
110
140
|
//# sourceMappingURL=handlers.d.ts.map
|
package/dist/handlers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"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"}
|