@backendkit-labs/curator-codex-agent 0.2.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/analyzer.d.ts +1 -17
  2. package/dist/analyzer.d.ts.map +1 -1
  3. package/dist/analyzer.js +80 -163
  4. package/dist/analyzer.js.map +1 -1
  5. package/dist/audit.d.ts +27 -0
  6. package/dist/audit.d.ts.map +1 -0
  7. package/dist/audit.js +43 -0
  8. package/dist/audit.js.map +1 -0
  9. package/dist/checksum.d.ts +0 -22
  10. package/dist/checksum.d.ts.map +1 -1
  11. package/dist/checksum.js +14 -103
  12. package/dist/checksum.js.map +1 -1
  13. package/dist/documentation-curator.d.ts +1 -1
  14. package/dist/documentation-curator.d.ts.map +1 -1
  15. package/dist/documentation-curator.js +79 -95
  16. package/dist/documentation-curator.js.map +1 -1
  17. package/dist/index.d.ts +19 -9
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +12 -22
  20. package/dist/index.js.map +1 -1
  21. package/dist/knowledge/embedder-worker.d.ts +2 -0
  22. package/dist/knowledge/embedder-worker.d.ts.map +1 -0
  23. package/dist/knowledge/embedder-worker.js +55 -0
  24. package/dist/knowledge/embedder-worker.js.map +1 -0
  25. package/dist/knowledge/engine.d.ts +10 -56
  26. package/dist/knowledge/engine.d.ts.map +1 -1
  27. package/dist/knowledge/engine.js +42 -153
  28. package/dist/knowledge/engine.js.map +1 -1
  29. package/dist/knowledge/rag-provider.d.ts +14 -56
  30. package/dist/knowledge/rag-provider.d.ts.map +1 -1
  31. package/dist/knowledge/rag-provider.js +63 -154
  32. package/dist/knowledge/rag-provider.js.map +1 -1
  33. package/dist/knowledge/synthesis.d.ts +0 -10
  34. package/dist/knowledge/synthesis.d.ts.map +1 -1
  35. package/dist/knowledge/synthesis.js +32 -77
  36. package/dist/knowledge/synthesis.js.map +1 -1
  37. package/dist/knowledge/transformers-embedder.d.ts +61 -0
  38. package/dist/knowledge/transformers-embedder.d.ts.map +1 -0
  39. package/dist/knowledge/transformers-embedder.js +222 -0
  40. package/dist/knowledge/transformers-embedder.js.map +1 -0
  41. package/dist/pdf-reader.d.ts +11 -0
  42. package/dist/pdf-reader.d.ts.map +1 -0
  43. package/dist/pdf-reader.js +21 -0
  44. package/dist/pdf-reader.js.map +1 -0
  45. package/dist/project.d.ts +28 -0
  46. package/dist/project.d.ts.map +1 -0
  47. package/dist/project.js +88 -0
  48. package/dist/project.js.map +1 -0
  49. package/dist/providers/anthropic-adapter.d.ts +2 -2
  50. package/dist/providers/anthropic-adapter.d.ts.map +1 -1
  51. package/dist/providers/anthropic-adapter.js +7 -13
  52. package/dist/providers/anthropic-adapter.js.map +1 -1
  53. package/dist/providers/index.d.ts +1 -1
  54. package/dist/providers/index.d.ts.map +1 -1
  55. package/dist/providers/index.js +13 -20
  56. package/dist/providers/index.js.map +1 -1
  57. package/dist/providers/openai-adapter.d.ts +2 -2
  58. package/dist/providers/openai-adapter.d.ts.map +1 -1
  59. package/dist/providers/openai-adapter.js +7 -13
  60. package/dist/providers/openai-adapter.js.map +1 -1
  61. package/dist/providers/types.d.ts +8 -1
  62. package/dist/providers/types.d.ts.map +1 -1
  63. package/dist/providers/types.js +1 -2
  64. package/dist/types.d.ts.map +1 -1
  65. package/dist/types.js +1 -3
  66. package/dist/types.js.map +1 -1
  67. package/dist/vault-dedup.d.ts +35 -0
  68. package/dist/vault-dedup.d.ts.map +1 -0
  69. package/dist/vault-dedup.js +130 -0
  70. package/dist/vault-dedup.js.map +1 -0
  71. package/package.json +45 -58
  72. package/AGENT.md +0 -187
  73. package/README.md +0 -475
  74. package/dist/api/config.d.ts +0 -57
  75. package/dist/api/config.d.ts.map +0 -1
  76. package/dist/api/config.js +0 -183
  77. package/dist/api/config.js.map +0 -1
  78. package/dist/api/http-server.d.ts +0 -24
  79. package/dist/api/http-server.d.ts.map +0 -1
  80. package/dist/api/http-server.js +0 -108
  81. package/dist/api/http-server.js.map +0 -1
  82. package/dist/api/routes.d.ts +0 -8
  83. package/dist/api/routes.d.ts.map +0 -1
  84. package/dist/api/routes.js +0 -382
  85. package/dist/api/routes.js.map +0 -1
  86. package/dist/api/security.d.ts +0 -107
  87. package/dist/api/security.d.ts.map +0 -1
  88. package/dist/api/security.js +0 -200
  89. package/dist/api/security.js.map +0 -1
  90. package/dist/http-server-main.d.ts +0 -28
  91. package/dist/http-server-main.d.ts.map +0 -1
  92. package/dist/http-server-main.js +0 -69
  93. package/dist/http-server-main.js.map +0 -1
  94. package/dist/server.d.ts +0 -33
  95. package/dist/server.d.ts.map +0 -1
  96. package/dist/server.js +0 -640
  97. package/dist/server.js.map +0 -1
  98. package/dist/watcher.d.ts +0 -26
  99. package/dist/watcher.d.ts.map +0 -1
  100. package/dist/watcher.js +0 -168
  101. package/dist/watcher.js.map +0 -1
@@ -1,382 +0,0 @@
1
- "use strict";
2
- /**
3
- * HTTP API Routes for Curator-Codex
4
- * Handles curation and knowledge management endpoints
5
- */
6
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
- if (k2 === undefined) k2 = k;
8
- var desc = Object.getOwnPropertyDescriptor(m, k);
9
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
- desc = { enumerable: true, get: function() { return m[k]; } };
11
- }
12
- Object.defineProperty(o, k2, desc);
13
- }) : (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- o[k2] = m[k];
16
- }));
17
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
- Object.defineProperty(o, "default", { enumerable: true, value: v });
19
- }) : function(o, v) {
20
- o["default"] = v;
21
- });
22
- var __importStar = (this && this.__importStar) || (function () {
23
- var ownKeys = function(o) {
24
- ownKeys = Object.getOwnPropertyNames || function (o) {
25
- var ar = [];
26
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
27
- return ar;
28
- };
29
- return ownKeys(o);
30
- };
31
- return function (mod) {
32
- if (mod && mod.__esModule) return mod;
33
- var result = {};
34
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
35
- __setModuleDefault(result, mod);
36
- return result;
37
- };
38
- })();
39
- Object.defineProperty(exports, "__esModule", { value: true });
40
- exports.createRoutes = createRoutes;
41
- const express_1 = require("express");
42
- const fsp = __importStar(require("node:fs/promises"));
43
- const os = __importStar(require("node:os"));
44
- const path = __importStar(require("node:path"));
45
- const analyzer_js_1 = require("../analyzer.js");
46
- const engine_js_1 = require("../knowledge/engine.js");
47
- const index_js_1 = require("../providers/index.js");
48
- const checksum_js_1 = require("../checksum.js");
49
- const security_js_1 = require("./security.js");
50
- // Module-level cache: one KnowledgeEngine per vault path, persists for process lifetime
51
- const engineCache = new Map();
52
- async function getEngine(vaultPath) {
53
- if (!engineCache.has(vaultPath)) {
54
- const engine = new engine_js_1.KnowledgeEngine((0, index_js_1.createProvider)(), vaultPath);
55
- await engine.initialize();
56
- engineCache.set(vaultPath, engine);
57
- }
58
- return engineCache.get(vaultPath);
59
- }
60
- function createRoutes(configManager) {
61
- const router = (0, express_1.Router)();
62
- // ── Curator Endpoints ────────────────────────────────────────────────────
63
- /**
64
- * POST /curator/config
65
- * Set curator input and output paths
66
- */
67
- router.post('/curator/config', (0, security_js_1.validateBody)(security_js_1.CuratorConfigSchema), (req, res) => {
68
- try {
69
- const { inputPath, outputPath } = req.validatedBody;
70
- configManager.setInputPath(inputPath);
71
- configManager.setOutputPath(outputPath);
72
- const config = configManager.getConfig();
73
- res.status(200).json({
74
- success: true,
75
- config: {
76
- inputPath: config.inputPath,
77
- outputPath: config.outputPath,
78
- provider: config.provider,
79
- model: config.model,
80
- },
81
- meta: {
82
- userId: req.user?.id,
83
- timestamp: new Date().toISOString(),
84
- },
85
- });
86
- }
87
- catch (err) {
88
- res.status(500).json({
89
- error: 'Failed to set config',
90
- message: err.message,
91
- });
92
- }
93
- });
94
- /**
95
- * GET /curator/config
96
- * Get current configuration and workspace info
97
- */
98
- router.get('/curator/config', (req, res) => {
99
- try {
100
- const config = configManager.getConfig();
101
- const wsInfo = configManager.getWorkspaceInfo();
102
- res.json({
103
- inputPath: config.inputPath,
104
- outputPath: config.outputPath,
105
- provider: config.provider,
106
- model: config.model,
107
- port: config.port,
108
- workspace: {
109
- current: wsInfo.current,
110
- available: wsInfo.available.map(w => ({
111
- name: w.name,
112
- description: w.description,
113
- })),
114
- },
115
- });
116
- }
117
- catch (err) {
118
- res.status(500).json({ error: err.message });
119
- }
120
- });
121
- /**
122
- * POST /curator/workspace/:name
123
- * Switch to a specific workspace
124
- */
125
- router.post('/curator/workspace/:name', (req, res) => {
126
- try {
127
- const workspaceName = req.params.name;
128
- const result = configManager.switchWorkspace(workspaceName);
129
- if (!result.success) {
130
- res.status(400).json({
131
- error: 'Workspace switch failed',
132
- message: result.error,
133
- });
134
- return;
135
- }
136
- const config = configManager.getConfig();
137
- res.json({
138
- success: true,
139
- workspace: workspaceName,
140
- config: {
141
- inputPath: config.inputPath,
142
- outputPath: config.outputPath,
143
- provider: config.provider,
144
- model: config.model,
145
- },
146
- });
147
- }
148
- catch (err) {
149
- res.status(500).json({
150
- error: 'Failed to switch workspace',
151
- message: err.message,
152
- });
153
- }
154
- });
155
- /**
156
- * GET /curator/workspaces
157
- * List all available workspaces
158
- */
159
- router.get('/curator/workspaces', (req, res) => {
160
- try {
161
- const workspaces = configManager.listWorkspaces();
162
- const current = configManager.getCurrentWorkspace();
163
- res.json({
164
- current,
165
- workspaces: workspaces.map(w => ({
166
- name: w.name,
167
- inputPath: w.inputPath,
168
- outputPath: w.outputPath,
169
- description: w.description,
170
- })),
171
- });
172
- }
173
- catch (err) {
174
- res.status(500).json({ error: err.message });
175
- }
176
- });
177
- /**
178
- * POST /curator/process
179
- * Curate files from input path into vault
180
- */
181
- router.post('/curator/process', async (req, res) => {
182
- try {
183
- const inputPath = req.body.inputPath || configManager.getInputPath();
184
- const outputPath = req.body.outputPath || configManager.getOutputPath();
185
- if (!inputPath || !outputPath) {
186
- res.status(400).json({
187
- error: 'inputPath and outputPath must be set (via POST body or config)',
188
- });
189
- return;
190
- }
191
- // Find all files
192
- let files;
193
- try {
194
- files = await (0, checksum_js_1.findAllFiles)(inputPath);
195
- files.sort((a, b) => a.relativePath.localeCompare(b.relativePath));
196
- }
197
- catch (err) {
198
- res.status(400).json({
199
- error: `Failed to scan input path: ${err.message}`,
200
- });
201
- return;
202
- }
203
- if (files.length === 0) {
204
- res.json({
205
- notesWritten: [],
206
- notesSkipped: [],
207
- errors: ['No files found in input path'],
208
- filesAnalyzed: [],
209
- totalFiles: 0,
210
- });
211
- return;
212
- }
213
- // Create analyzer
214
- const analyzer = new analyzer_js_1.CodeAnalyzer({
215
- provider: (0, index_js_1.createProvider)(),
216
- vaultPath: outputPath,
217
- });
218
- // Process files
219
- const results = {
220
- notesWritten: [],
221
- notesSkipped: [],
222
- errors: [],
223
- filesAnalyzed: [],
224
- totalFiles: files.length,
225
- codeFiles: files.filter(f => (0, checksum_js_1.isCodeFile)(f.fullPath)).length,
226
- docFiles: files.filter(f => (0, checksum_js_1.isDocFile)(f.fullPath)).length,
227
- durationMs: 0,
228
- };
229
- const start = Date.now();
230
- for (let i = 0; i < files.length; i++) {
231
- const { fullPath, relativePath } = files[i];
232
- try {
233
- const analyzed = await analyzer.analyzeFile(fullPath, relativePath, files);
234
- results.notesWritten.push(...analyzed.notesWritten);
235
- results.notesSkipped.push(...analyzed.notesSkipped);
236
- results.errors.push(...analyzed.errors);
237
- results.filesAnalyzed.push(...(analyzed.filesAnalyzed || []));
238
- }
239
- catch (err) {
240
- results.errors.push(`${relativePath}: ${err.message}`);
241
- }
242
- }
243
- results.durationMs = Date.now() - start;
244
- res.json(results);
245
- }
246
- catch (err) {
247
- res.status(500).json({
248
- error: err.message,
249
- });
250
- }
251
- });
252
- // ── Status Endpoints ─────────────────────────────────────────────────────
253
- /**
254
- * GET /status
255
- * Get overall system status
256
- */
257
- router.get('/status', (req, res) => {
258
- try {
259
- const config = configManager.getConfig();
260
- res.json({
261
- status: 'ready',
262
- curator: {
263
- inputPath: config.inputPath || 'not set',
264
- outputPath: config.outputPath,
265
- provider: config.provider,
266
- model: config.model,
267
- },
268
- server: {
269
- port: config.port,
270
- timestamp: new Date().toISOString(),
271
- },
272
- });
273
- }
274
- catch (err) {
275
- res.status(500).json({
276
- error: err.message,
277
- });
278
- }
279
- });
280
- /**
281
- * GET /health
282
- * Health check (for load balancers, monitoring)
283
- */
284
- router.get('/health', (req, res) => {
285
- res.json({ status: 'ok', timestamp: new Date().toISOString() });
286
- });
287
- // ── Knowledge / RAG Endpoints ────────────────────────────────────────────
288
- /**
289
- * POST /knowledge/search
290
- * Semantic search across a vault
291
- * Body: { vaultPath, query, topK? }
292
- */
293
- router.post('/knowledge/search', (0, security_js_1.validateBody)(security_js_1.KnowledgeSearchWithVaultSchema), async (req, res) => {
294
- try {
295
- const { vaultPath, query, topK } = req.validatedBody;
296
- const engine = await getEngine(vaultPath);
297
- const result = await engine.search(query, { topK, autoSynthesize: false });
298
- res.json(result);
299
- }
300
- catch (err) {
301
- res.status(500).json({ error: 'Search failed', message: err.message });
302
- }
303
- });
304
- /**
305
- * POST /knowledge/reindex
306
- * Rebuild the RAG index for a vault
307
- * Body: { vaultPath }
308
- */
309
- router.post('/knowledge/reindex', (0, security_js_1.validateBody)(security_js_1.KnowledgeReindexSchema), async (req, res) => {
310
- try {
311
- const { vaultPath } = req.validatedBody;
312
- const engine = engineCache.get(vaultPath) ?? new engine_js_1.KnowledgeEngine((0, index_js_1.createProvider)(), vaultPath);
313
- const result = await engine.reload();
314
- engineCache.set(vaultPath, engine);
315
- res.json(result);
316
- }
317
- catch (err) {
318
- res.status(500).json({ error: 'Reindex failed', message: err.message });
319
- }
320
- });
321
- /**
322
- * POST /curator/file
323
- * Curate a single file and write the result to a vault
324
- * Body: { vaultPath, fileName, content }
325
- */
326
- router.post('/curator/file', (0, security_js_1.validateBody)(security_js_1.CuratorFileSchema), async (req, res) => {
327
- const { vaultPath, fileName, content } = req.validatedBody;
328
- const tmpDir = await fsp.mkdtemp(path.join(os.tmpdir(), 'curator-file-'));
329
- try {
330
- const tmpFile = path.join(tmpDir, fileName);
331
- await fsp.writeFile(tmpFile, content, 'utf-8');
332
- const analyzer = new analyzer_js_1.CodeAnalyzer({ provider: (0, index_js_1.createProvider)(), vaultPath });
333
- const result = await analyzer.analyzeFile(tmpFile, fileName);
334
- let generatedContent = null;
335
- let generatedTitle = null;
336
- let tags = [];
337
- let area = 'general';
338
- if (result.notesWritten.length > 0) {
339
- const notePath = result.notesWritten[0];
340
- generatedContent = await fsp.readFile(notePath, 'utf-8').catch(() => null);
341
- generatedTitle = path.basename(notePath, '.md')
342
- .replace(/^\d{4}-\d{2}-\d{2}-/, '')
343
- .replace(/-/g, ' ');
344
- const rel = path.relative(vaultPath, notePath);
345
- const parts = rel.split(path.sep);
346
- area = parts.length > 1 ? parts[0] : 'general';
347
- if (generatedContent) {
348
- const fmMatch = generatedContent.match(/^---\n([\s\S]*?)\n---/);
349
- const tagsLine = fmMatch?.[1].match(/^tags:\s*\[([^\]]*)\]/m);
350
- if (tagsLine) {
351
- tags = tagsLine[1].split(',').map(t => t.trim().replace(/^['"]|['"]$/g, '')).filter(Boolean);
352
- }
353
- }
354
- }
355
- res.json({ ...result, generatedContent, generatedTitle, tags, area });
356
- }
357
- catch (err) {
358
- res.status(500).json({ error: 'Curation failed', message: err.message });
359
- }
360
- finally {
361
- await fsp.rm(tmpDir, { recursive: true }).catch(() => { });
362
- }
363
- });
364
- // ── Error Handler ────────────────────────────────────────────────────────
365
- router.use((req, res) => {
366
- res.status(404).json({
367
- error: `Route not found: ${req.method} ${req.path}`,
368
- availableRoutes: [
369
- 'GET /health',
370
- 'GET /status',
371
- 'GET /curator/config',
372
- 'POST /curator/config',
373
- 'POST /curator/process',
374
- 'POST /curator/file',
375
- 'POST /knowledge/search',
376
- 'POST /knowledge/reindex',
377
- ],
378
- });
379
- });
380
- return router;
381
- }
382
- //# sourceMappingURL=routes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/api/routes.ts"],"names":[],"mappings":"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"}
@@ -1,107 +0,0 @@
1
- /**
2
- * Security middleware for Curator-Codex HTTP API
3
- * Handles authentication, rate limiting, and input validation
4
- */
5
- import { Request, Response, NextFunction } from 'express';
6
- import { z } from 'zod';
7
- export interface AuthenticatedRequest extends Request {
8
- user?: {
9
- id: string;
10
- key: string;
11
- rateLimit: number;
12
- };
13
- }
14
- /**
15
- * Bearer token authentication middleware
16
- * Validates API key from Authorization header
17
- */
18
- export declare function createAuthMiddleware(apiKeys?: Map<string, {
19
- rateLimit: number;
20
- }>): (req: AuthenticatedRequest, res: Response, next: NextFunction) => any;
21
- export declare function createRateLimiter(windowMs?: number, max?: number): any;
22
- export declare const CuratorConfigSchema: z.ZodObject<{
23
- inputPath: z.ZodString;
24
- outputPath: z.ZodString;
25
- }, "strip", z.ZodTypeAny, {
26
- inputPath: string;
27
- outputPath: string;
28
- }, {
29
- inputPath: string;
30
- outputPath: string;
31
- }>;
32
- export declare const CuratorProcessSchema: z.ZodObject<{
33
- inputPath: z.ZodOptional<z.ZodString>;
34
- outputPath: z.ZodOptional<z.ZodString>;
35
- }, "strip", z.ZodTypeAny, {
36
- inputPath?: string | undefined;
37
- outputPath?: string | undefined;
38
- }, {
39
- inputPath?: string | undefined;
40
- outputPath?: string | undefined;
41
- }>;
42
- export declare const KnowledgeSearchSchema: z.ZodObject<{
43
- query: z.ZodString;
44
- topK: z.ZodOptional<z.ZodNumber>;
45
- autoSynthesize: z.ZodOptional<z.ZodBoolean>;
46
- }, "strip", z.ZodTypeAny, {
47
- query: string;
48
- topK?: number | undefined;
49
- autoSynthesize?: boolean | undefined;
50
- }, {
51
- query: string;
52
- topK?: number | undefined;
53
- autoSynthesize?: boolean | undefined;
54
- }>;
55
- export declare const KnowledgeSearchWithVaultSchema: z.ZodObject<{
56
- vaultPath: z.ZodString;
57
- query: z.ZodString;
58
- topK: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
59
- }, "strip", z.ZodTypeAny, {
60
- query: string;
61
- topK: number;
62
- vaultPath: string;
63
- }, {
64
- query: string;
65
- vaultPath: string;
66
- topK?: number | undefined;
67
- }>;
68
- export declare const KnowledgeReindexSchema: z.ZodObject<{
69
- vaultPath: z.ZodString;
70
- }, "strip", z.ZodTypeAny, {
71
- vaultPath: string;
72
- }, {
73
- vaultPath: string;
74
- }>;
75
- export declare const CuratorFileSchema: z.ZodObject<{
76
- vaultPath: z.ZodString;
77
- fileName: z.ZodString;
78
- content: z.ZodString;
79
- }, "strip", z.ZodTypeAny, {
80
- content: string;
81
- vaultPath: string;
82
- fileName: string;
83
- }, {
84
- content: string;
85
- vaultPath: string;
86
- fileName: string;
87
- }>;
88
- export type CuratorConfig = z.infer<typeof CuratorConfigSchema>;
89
- export type CuratorProcess = z.infer<typeof CuratorProcessSchema>;
90
- export type KnowledgeSearch = z.infer<typeof KnowledgeSearchSchema>;
91
- export type KnowledgeSearchWithVault = z.infer<typeof KnowledgeSearchWithVaultSchema>;
92
- export type KnowledgeReindex = z.infer<typeof KnowledgeReindexSchema>;
93
- export type CuratorFile = z.infer<typeof CuratorFileSchema>;
94
- /**
95
- * Validate request body against schema
96
- */
97
- export declare function validateBody<T>(schema: z.ZodSchema): (req: Request, res: Response, next: NextFunction) => any;
98
- export declare function createRequestLogger(): (req: AuthenticatedRequest, res: Response, next: NextFunction) => void;
99
- export declare function errorHandler(err: Error | any, req: Request, res: Response, next: NextFunction): void;
100
- export interface RequestContext {
101
- userId: string;
102
- requestId: string;
103
- startTime: number;
104
- ip: string;
105
- }
106
- export declare function createRequestContext(req: AuthenticatedRequest): RequestContext;
107
- //# sourceMappingURL=security.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/api/security.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,MAAM,WAAW,oBAAqB,SAAQ,OAAO;IACjD,IAAI,CAAC,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,GAAG,EAAE,MAAM,CAAC;QACZ,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC;CACL;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,GAAG,CAAC,MAAM,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAa,IAChF,KAAK,oBAAoB,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,SAoCvE;AAQD,wBAAgB,iBAAiB,CAAC,QAAQ,GAAE,MAAuB,EAAE,GAAG,GAAE,MAAY,OAerF;AAID,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;EAG/B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAIhC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;EAIzC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;EAEjC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAI5B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAU,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACvE,MAAM,MAAM,cAAc,GAAS,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACxE,MAAM,MAAM,eAAe,GAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACzE,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACtF,MAAM,MAAM,gBAAgB,GAAO,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC1E,MAAM,MAAM,WAAW,GAAY,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAErE;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,IACvC,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,SAsB1D;AAID,wBAAgB,mBAAmB,KACvB,KAAK,oBAAoB,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UAmBvE;AAID,wBAAgB,YAAY,CACxB,GAAG,EAAE,KAAK,GAAG,GAAG,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,QAerB;AAID,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,oBAAoB,GAAG,cAAc,CAO9E"}