@cyberismo/backend 0.0.21 → 0.0.22
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/dist/app.d.ts +5 -2
- package/dist/app.js +22 -9
- package/dist/app.js.map +1 -1
- package/dist/auth/index.d.ts +16 -0
- package/dist/auth/index.js +15 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/keycloak.d.ts +27 -0
- package/dist/auth/keycloak.js +81 -0
- package/dist/auth/keycloak.js.map +1 -0
- package/dist/auth/mock.d.ts +23 -0
- package/dist/auth/mock.js +28 -0
- package/dist/auth/mock.js.map +1 -0
- package/dist/auth/types.d.ts +16 -0
- package/dist/auth/types.js +14 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/domain/auth/index.d.ts +14 -0
- package/dist/domain/auth/index.js +30 -0
- package/dist/domain/auth/index.js.map +1 -0
- package/dist/domain/calculations/index.js +3 -1
- package/dist/domain/calculations/index.js.map +1 -1
- package/dist/domain/calculations/service.js +13 -11
- package/dist/domain/calculations/service.js.map +1 -1
- package/dist/domain/cardTypes/index.js +5 -3
- package/dist/domain/cardTypes/index.js.map +1 -1
- package/dist/domain/cardTypes/service.js +24 -72
- package/dist/domain/cardTypes/service.js.map +1 -1
- package/dist/domain/cards/index.js +19 -15
- package/dist/domain/cards/index.js.map +1 -1
- package/dist/domain/cards/lib.js +95 -93
- package/dist/domain/cards/lib.js.map +1 -1
- package/dist/domain/cards/service.d.ts +2 -1
- package/dist/domain/cards/service.js +60 -87
- package/dist/domain/cards/service.js.map +1 -1
- package/dist/domain/fieldTypes/index.js +4 -2
- package/dist/domain/fieldTypes/index.js.map +1 -1
- package/dist/domain/graphModels/index.js +3 -1
- package/dist/domain/graphModels/index.js.map +1 -1
- package/dist/domain/graphViews/index.js +3 -1
- package/dist/domain/graphViews/index.js.map +1 -1
- package/dist/domain/labels/index.js +4 -2
- package/dist/domain/labels/index.js.map +1 -1
- package/dist/domain/labels/service.d.ts +1 -1
- package/dist/domain/labels/service.js +2 -2
- package/dist/domain/labels/service.js.map +1 -1
- package/dist/domain/linkTypes/index.js +4 -2
- package/dist/domain/linkTypes/index.js.map +1 -1
- package/dist/domain/logicPrograms/index.js +3 -1
- package/dist/domain/logicPrograms/index.js.map +1 -1
- package/dist/domain/mcp/index.d.ts +15 -0
- package/dist/domain/mcp/index.js +127 -0
- package/dist/domain/mcp/index.js.map +1 -0
- package/dist/domain/project/index.js +7 -5
- package/dist/domain/project/index.js.map +1 -1
- package/dist/domain/project/service.js +18 -14
- package/dist/domain/project/service.js.map +1 -1
- package/dist/domain/reports/index.js +3 -1
- package/dist/domain/reports/index.js.map +1 -1
- package/dist/domain/resources/index.js +6 -4
- package/dist/domain/resources/index.js.map +1 -1
- package/dist/domain/resources/service.js +66 -64
- package/dist/domain/resources/service.js.map +1 -1
- package/dist/domain/templates/index.js +5 -3
- package/dist/domain/templates/index.js.map +1 -1
- package/dist/domain/tree/index.js +3 -1
- package/dist/domain/tree/index.js.map +1 -1
- package/dist/domain/workflows/index.js +3 -1
- package/dist/domain/workflows/index.js.map +1 -1
- package/dist/export.d.ts +6 -5
- package/dist/export.js +15 -11
- package/dist/export.js.map +1 -1
- package/dist/index.d.ts +8 -2
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/main.js +29 -2
- package/dist/main.js.map +1 -1
- package/dist/middleware/auth.d.ts +40 -0
- package/dist/middleware/auth.js +68 -0
- package/dist/middleware/auth.js.map +1 -0
- package/dist/middleware/commandManager.d.ts +2 -2
- package/dist/middleware/commandManager.js +9 -11
- package/dist/middleware/commandManager.js.map +1 -1
- package/dist/public/THIRD-PARTY.txt +37 -11
- package/dist/public/assets/index-B_lh6qtv.css +1 -0
- package/dist/public/assets/{index-Ca10XaMv.js → index-CEol8Bfi.js} +43823 -43030
- package/dist/public/config.json +1 -0
- package/dist/public/index.html +2 -2
- package/dist/types.d.ts +25 -0
- package/dist/types.js +13 -1
- package/dist/types.js.map +1 -1
- package/package.json +8 -5
- package/src/app.ts +34 -14
- package/src/auth/index.ts +17 -0
- package/src/auth/keycloak.ts +109 -0
- package/src/auth/mock.ts +38 -0
- package/src/auth/types.ts +18 -0
- package/src/domain/auth/index.ts +35 -0
- package/src/domain/calculations/index.ts +13 -6
- package/src/domain/calculations/service.ts +16 -14
- package/src/domain/cardTypes/index.ts +24 -16
- package/src/domain/cardTypes/service.ts +41 -95
- package/src/domain/cards/index.ts +62 -44
- package/src/domain/cards/lib.ts +105 -100
- package/src/domain/cards/service.ts +73 -89
- package/src/domain/fieldTypes/index.ts +23 -16
- package/src/domain/graphModels/index.ts +13 -6
- package/src/domain/graphViews/index.ts +13 -6
- package/src/domain/labels/index.ts +5 -2
- package/src/domain/labels/service.ts +2 -2
- package/src/domain/linkTypes/index.ts +14 -7
- package/src/domain/logicPrograms/index.ts +3 -0
- package/src/domain/mcp/index.ts +159 -0
- package/src/domain/project/index.ts +17 -8
- package/src/domain/project/service.ts +20 -16
- package/src/domain/reports/index.ts +13 -6
- package/src/domain/resources/index.ts +6 -1
- package/src/domain/resources/service.ts +102 -97
- package/src/domain/templates/index.ts +31 -19
- package/src/domain/tree/index.ts +3 -1
- package/src/domain/workflows/index.ts +13 -6
- package/src/export.ts +16 -13
- package/src/index.ts +10 -3
- package/src/main.ts +44 -2
- package/src/middleware/auth.ts +90 -0
- package/src/middleware/commandManager.ts +11 -14
- package/src/types.ts +27 -0
- package/dist/public/assets/index-CRSBseQM.css +0 -1
|
@@ -24,7 +24,7 @@ const resourceTypes = [
|
|
|
24
24
|
];
|
|
25
25
|
async function getModules(commands) {
|
|
26
26
|
try {
|
|
27
|
-
const moduleNames = commands.showCmd.showModules();
|
|
27
|
+
const moduleNames = await commands.showCmd.showModules();
|
|
28
28
|
return Promise.all(moduleNames.map(async (moduleName) => {
|
|
29
29
|
try {
|
|
30
30
|
const module = await commands.showCmd.showModule(moduleName);
|
|
@@ -55,69 +55,71 @@ function sortTemplateCardsByRank(cards) {
|
|
|
55
55
|
}));
|
|
56
56
|
}
|
|
57
57
|
export async function buildResourceTree(commands) {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
(
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
58
|
+
return commands.consistent(async () => {
|
|
59
|
+
const project = await commands.showCmd.showProject();
|
|
60
|
+
const tree = [];
|
|
61
|
+
const sortByDisplayName = (nodes) => nodes.sort((a, b) => (a.data.displayName || a.data.name.split('/')[2] || '').localeCompare(b.data.displayName || b.data.name.split('/')[2] || ''));
|
|
62
|
+
const modules = await getModules(commands);
|
|
63
|
+
// General section first (single node with project + modules metadata)
|
|
64
|
+
tree.push({
|
|
65
|
+
id: 'general-project',
|
|
66
|
+
type: 'general',
|
|
67
|
+
name: 'project',
|
|
68
|
+
data: {
|
|
69
|
+
name: project.name,
|
|
70
|
+
cardKeyPrefix: project.prefix,
|
|
71
|
+
modules,
|
|
72
|
+
},
|
|
73
|
+
readOnly: false,
|
|
74
|
+
});
|
|
75
|
+
// Process each resource type
|
|
76
|
+
for (const resourceType of resourceTypes) {
|
|
77
|
+
let rootResources;
|
|
78
|
+
let moduleResources;
|
|
79
|
+
if (resourceType === 'templates') {
|
|
80
|
+
({ rootResources, moduleResources } = await processTemplates(commands, project.prefix));
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
({ rootResources, moduleResources } = await groupResourcesByPrefix(commands, resourceType, project.prefix));
|
|
84
|
+
}
|
|
85
|
+
// Sort resources by display name if present
|
|
86
|
+
sortByDisplayName(rootResources);
|
|
87
|
+
Object.values(moduleResources).forEach((resources) => sortByDisplayName(resources));
|
|
88
|
+
const projectNode = rootResources.length > 0
|
|
89
|
+
? [
|
|
90
|
+
{
|
|
91
|
+
id: `${resourceType}-project`,
|
|
92
|
+
type: 'module',
|
|
93
|
+
name: 'project',
|
|
94
|
+
children: rootResources,
|
|
95
|
+
readOnly: false,
|
|
96
|
+
},
|
|
97
|
+
]
|
|
98
|
+
: [];
|
|
99
|
+
const moduleNodes = Object.entries(moduleResources)
|
|
100
|
+
.map(([prefix, resources]) => ({
|
|
101
|
+
id: `${resourceType}-module-${prefix}`,
|
|
102
|
+
type: 'module',
|
|
103
|
+
name: modules.find((module) => module.cardKeyPrefix === prefix)?.name ||
|
|
104
|
+
prefix,
|
|
103
105
|
prefix,
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}
|
|
106
|
+
children: resources,
|
|
107
|
+
readOnly: true,
|
|
108
|
+
}))
|
|
109
|
+
.sort((a, b) => a.name.localeCompare(b.name));
|
|
110
|
+
const allResources = [...projectNode, ...moduleNodes];
|
|
111
|
+
// Add combined resources (project + modules nested under module nodes) under the same group
|
|
112
|
+
if (allResources.length > 0) {
|
|
113
|
+
tree.push({
|
|
114
|
+
id: resourceType,
|
|
115
|
+
type: 'resourceGroup',
|
|
116
|
+
name: resourceType,
|
|
117
|
+
children: allResources,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
118
120
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
+
return tree;
|
|
122
|
+
});
|
|
121
123
|
}
|
|
122
124
|
// Helper function to parse resource prefix
|
|
123
125
|
function parseResourcePrefix(resource) {
|
|
@@ -279,7 +281,7 @@ export async function deleteResource(commands, resource) {
|
|
|
279
281
|
* @returns Validation result with errors and validity status.
|
|
280
282
|
*/
|
|
281
283
|
export async function validateResource(commands, resource) {
|
|
282
|
-
const errors = await commands.validateCmd.validateResource(resource, commands.project);
|
|
284
|
+
const errors = await commands.consistent(() => commands.validateCmd.validateResource(resource, commands.project));
|
|
283
285
|
return {
|
|
284
286
|
errors: errors.split('\n\n').filter((error) => error !== ''),
|
|
285
287
|
};
|
|
@@ -290,6 +292,6 @@ export async function validateResource(commands, resource) {
|
|
|
290
292
|
*/
|
|
291
293
|
export async function updateResourceWithOperation(commands, resource, body) {
|
|
292
294
|
const { updateKey, operation } = body;
|
|
293
|
-
await commands.updateCmd.applyResourceOperation(resourceNameToString(resource), updateKey, operation);
|
|
295
|
+
await commands.atomic(() => commands.updateCmd.applyResourceOperation(resourceNameToString(resource), updateKey, operation), `Update ${resource.type} ${resource.identifier}`);
|
|
294
296
|
}
|
|
295
297
|
//# sourceMappingURL=service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/domain/resources/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/domain/resources/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AASF,OAAO,EAEL,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,oBAAoB,GACrB,MAAM,yBAAyB,CAAC;AAIjC,MAAM,aAAa,GAAyB;IAC1C,cAAc;IACd,WAAW;IACX,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,WAAW;IACX,SAAS;IACT,WAAW;IACX,WAAW;CACZ,CAAC;AAEF,KAAK,UAAU,UAAU,CAAC,QAAwB;IAChD,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACzD,OAAO,OAAO,CAAC,GAAG,CAChB,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YACnC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;YACpE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;YACzD,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAA8B;IAE9B,OAAO,CAAC,GAAG,KAAK,CAAC;SACd,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;QACrC,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACpB,OAAO,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,GAAG,IAAI;QACP,aAAa,EAAE,uBAAuB,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;KACjE,CAAC,CAAC,CAAC;AACR,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,QAAwB;IAC9D,OAAO,QAAQ,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE;QACpC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,IAAI,GAAc,EAAE,CAAC;QAE3B,MAAM,iBAAiB,GAAG,CACxB,KAAwD,EACxD,EAAE,CACF,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAClB,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,aAAa,CACnE,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CACtD,CACF,CAAC;QAEJ,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE3C,sEAAsE;QACtE,IAAI,CAAC,IAAI,CAAC;YACR,EAAE,EAAE,iBAAiB;YACrB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,OAAO;aACR;YACD,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QAEH,6BAA6B;QAC7B,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,IAAI,aAAwB,CAAC;YAC7B,IAAI,eAAgD,CAAC;YAErD,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;gBACjC,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,MAAM,gBAAgB,CAC1D,QAAQ,EACR,OAAO,CAAC,MAAM,CACf,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,MAAM,sBAAsB,CAChE,QAAQ,EACR,YAAY,EACZ,OAAO,CAAC,MAAM,CACf,CAAC,CAAC;YACL,CAAC;YAED,4CAA4C;YAC5C,iBAAiB,CACf,aAAkE,CACnE,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CACnD,iBAAiB,CACf,SAA8D,CAC/D,CACF,CAAC;YAEF,MAAM,WAAW,GACf,aAAa,CAAC,MAAM,GAAG,CAAC;gBACtB,CAAC,CAAC;oBACE;wBACE,EAAE,EAAE,GAAG,YAAY,UAAU;wBAC7B,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;wBACf,QAAQ,EAAE,aAAa;wBACvB,QAAQ,EAAE,KAAK;qBAChB;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YAET,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC;iBAChD,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7B,EAAE,EAAE,GAAG,YAAY,WAAW,MAAM,EAAE;gBACtC,IAAI,EAAE,QAAQ;gBACd,IAAI,EACF,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,EAAE,IAAI;oBAC/D,MAAM;gBACR,MAAM;gBACN,QAAQ,EAAE,SAAS;gBACnB,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;iBACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAEhD,MAAM,YAAY,GAAG,CAAC,GAAG,WAAW,EAAE,GAAG,WAAW,CAAC,CAAC;YAEtD,4FAA4F;YAC5F,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC;oBACR,EAAE,EAAE,YAAY;oBAChB,IAAI,EAAE,eAAe;oBACrB,IAAI,EAAE,YAAY;oBAClB,QAAQ,EAAE,YAAY;iBACvB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED,2CAA2C;AAC3C,SAAS,mBAAmB,CAAC,QAAgB;IAI3C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QAChB,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;KACrB,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,gEAAgE;AAChE,KAAK,UAAU,kBAAkB,CAC/B,QAAwB,EACxB,YAAgC,EAChC,IAAY,EACZ,aAAqB,EACrB,QAAoB;IASpB,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,IAAI,GAON;QACF,EAAE,EAAE,GAAG,YAAY,IAAI,IAAI,EAAE;QAC7B,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa;KACtD,CAAC;IAEF,yCAAyC;IACzC,IACE,oBAAoB,CAAC,YAAY,CAAC;QAClC,YAAY,KAAK,WAAW;QAC5B,SAAS,IAAI,YAAa,EAC1B,CAAC;QACD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,CACxD,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxB,EAAE,EAAE,GAAG,YAAY,IAAI,IAAI,IAAI,QAAQ,EAAE;gBACzC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,GAAG,IAAI,IAAI,QAAQ,EAAE;gBAC3B,YAAY,EAAE,IAAI;gBAClB,QAAQ;gBACR,WAAW,EAAE,QAAQ;gBACrB,IAAI,EAAE;oBACJ,OAAO,EACL,OAAO,OAAO,KAAK,QAAQ;wBACzB,CAAC,CAAC,OAAO;wBACT,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;iBACvC;gBACD,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa;aACtD,CAAC,CACH,CAAC;YAEF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,0CAA0C,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,iEAAiE;AACjE,SAAS,cAAc,CACrB,IAA2B,EAC3B,MAAc,EACd,aAAqB;IAErB,wDAAwD;IACxD,MAAM,EAAE,aAAa,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC;IAE5C,MAAM,QAAQ,GAOV;QACF,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE;QACjB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,GAAG,MAAM,UAAU,IAAI,CAAC,GAAG,EAAE;QACnC,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,aAAa;KAC5D,CAAC;IAEF,6CAA6C;IAC7C,IAAI,aAAa,EAAE,MAAM,EAAE,CAAC;QAC1B,MAAM,cAAc,GAAG,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAC9D,QAAQ,CAAC,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC/C,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,CAC7C,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,gEAAgE;AAChE,KAAK,UAAU,gBAAgB,CAC7B,QAAwB,EACxB,aAAqB;IAErB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAEnE,MAAM,aAAa,GAA0C,EAAE,CAAC;IAChE,MAAM,eAAe,GAEjB,EAAE,CAAC;IAEP,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,YAAY,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACnD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;YAE7D,IAAI,MAAM,KAAK,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC;gBACxC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC7C,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC3B,CAAC;gBACD,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC7B,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;gBAC/B,CAAC;gBACD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC7C,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACrC,CAAC;gBACD,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CACrC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,EAAE,CAC1D,kBAAkB,CAChB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,aAAa,EACb,KAAK,CACN,CACF,CACF,CAAC;IAEF,MAAM,eAAe,GAAoC,EAAE,CAAC;IAC5D,KAAK,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QAClE,eAAe,CAAC,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CACzC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,EAAE,CACtD,kBAAkB,CAChB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,aAAa,EACb,KAAK,CACN,CACF,CACF,CAAC;IACJ,CAAC;IAED,gDAAgD;IAChD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC7B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAClE,aAAa,CAAC,IAAI,CAChB,MAAM,kBAAkB,CACtB,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,aAAa,CACd,CACF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAC/B,CAAC;YACD,IACE,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAC3B,CAAC,QAAQ,EAAE,EAAE,CAAE,QAA6B,CAAC,IAAI,KAAK,QAAQ,CAC/D,EACD,CAAC;gBACD,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAC1B,MAAM,kBAAkB,CACtB,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,aAAa,CACd,CACF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;AAC5C,CAAC;AAED,uDAAuD;AACvD,KAAK,UAAU,sBAAsB,CACnC,QAAwB,EACxB,YAAgC,EAChC,aAAqB;IAErB,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CACjC,kBAAkB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,CAAC,CAChE,CACF,CAAC;IAEF,MAAM,aAAa,GAAc,EAAE,CAAC;IACpC,MAAM,eAAe,GAAoC,EAAE,CAAC;IAE5D,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,MAAM,KAAK,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC;YACxC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAC/B,CAAC;YACD,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAAwB,EACxB,QAAwB;IAExB,OAAO,QAAQ,CAAC,SAAS,CAAC,MAAM,CAC9B,QAAQ,CAAC,IAAI,CAAC,SAAS,CACrB,CAAC,EACD,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CACC,EAC3B,oBAAoB,CAAC,QAAQ,CAAC,CAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAwB,EACxB,QAAgC;IAEhC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,CAC5C,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAClE,CAAC;IAEF,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC;KAC7D,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,QAAwB,EACxB,QAAwB,EACxB,IAAyB;IAEzB,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACtC,MAAM,QAAQ,CAAC,MAAM,CACnB,GAAG,EAAE,CACH,QAAQ,CAAC,SAAS,CAAC,sBAAsB,CACvC,oBAAoB,CAAC,QAAQ,CAAC,EAC9B,SAAS,EACT,SAAS,CACV,EACH,UAAU,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,UAAU,EAAE,CACjD,CAAC;AACJ,CAAC"}
|
|
@@ -15,6 +15,8 @@ import * as templateService from './service.js';
|
|
|
15
15
|
import { createTemplateSchema, addTemplateCardSchema } from './schema.js';
|
|
16
16
|
import { zValidator } from '../../middleware/zvalidator.js';
|
|
17
17
|
import { isSSGContext } from 'hono/ssg';
|
|
18
|
+
import { UserRole } from '../../types.js';
|
|
19
|
+
import { requireRole } from '../../middleware/auth.js';
|
|
18
20
|
const router = new Hono();
|
|
19
21
|
/**
|
|
20
22
|
* @swagger
|
|
@@ -30,7 +32,7 @@ const router = new Hono();
|
|
|
30
32
|
* 500:
|
|
31
33
|
* description: project_path not set or other internal error
|
|
32
34
|
*/
|
|
33
|
-
router.get('/', async (c) => {
|
|
35
|
+
router.get('/', requireRole(UserRole.Reader), async (c) => {
|
|
34
36
|
// We do not need templates in ssg context
|
|
35
37
|
if (isSSGContext(c)) {
|
|
36
38
|
return c.json([]);
|
|
@@ -71,7 +73,7 @@ router.get('/', async (c) => {
|
|
|
71
73
|
* 500:
|
|
72
74
|
* description: Server error
|
|
73
75
|
*/
|
|
74
|
-
router.post('/', zValidator('json', createTemplateSchema), async (c) => {
|
|
76
|
+
router.post('/', requireRole(UserRole.Admin), zValidator('json', createTemplateSchema), async (c) => {
|
|
75
77
|
const commands = c.get('commands');
|
|
76
78
|
const { identifier } = c.req.valid('json');
|
|
77
79
|
await templateService.createTemplate(commands, identifier);
|
|
@@ -110,7 +112,7 @@ router.post('/', zValidator('json', createTemplateSchema), async (c) => {
|
|
|
110
112
|
* 500:
|
|
111
113
|
* description: Server error
|
|
112
114
|
*/
|
|
113
|
-
router.post('/card', zValidator('json', addTemplateCardSchema), async (c) => {
|
|
115
|
+
router.post('/card', requireRole(UserRole.Admin), zValidator('json', addTemplateCardSchema), async (c) => {
|
|
114
116
|
const commands = c.get('commands');
|
|
115
117
|
const { template, cardType, parentKey, count } = c.req.valid('json');
|
|
116
118
|
const added = await templateService.addTemplateCard(commands, template, cardType, parentKey, count);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/templates/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,eAAe,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/templates/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,8 @@
|
|
|
13
13
|
import { Hono } from 'hono';
|
|
14
14
|
import * as treeService from './service.js';
|
|
15
15
|
import { isSSGContext } from 'hono/ssg';
|
|
16
|
+
import { UserRole } from '../../types.js';
|
|
17
|
+
import { requireRole } from '../../middleware/auth.js';
|
|
16
18
|
const router = new Hono();
|
|
17
19
|
/**
|
|
18
20
|
* @swagger
|
|
@@ -28,7 +30,7 @@ const router = new Hono();
|
|
|
28
30
|
* 500:
|
|
29
31
|
* description: project_path not set or other internal error
|
|
30
32
|
*/
|
|
31
|
-
router.get('/', async (c) => {
|
|
33
|
+
router.get('/', requireRole(UserRole.Reader), async (c) => {
|
|
32
34
|
const commands = c.get('commands');
|
|
33
35
|
const tree = c.get('tree');
|
|
34
36
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/tree/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/tree/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;AAE1B;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAa,EAAE,EAAE;IACpE,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE3B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAC5C,QAAQ,EACR,YAAY,CAAC,CAAC,CAAC,EACf,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,SAAS,CAChB,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,CAAC,IAAI,CACX;YACE,KAAK,EAAE,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,cAAc,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;SACvG,EACD,GAAG,CACJ,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,eAAe,MAAM,CAAC"}
|
|
@@ -14,6 +14,8 @@ import { Hono } from 'hono';
|
|
|
14
14
|
import * as workflowService from './service.js';
|
|
15
15
|
import { createWorkflowSchema } from './schema.js';
|
|
16
16
|
import { zValidator } from '../../middleware/zvalidator.js';
|
|
17
|
+
import { UserRole } from '../../types.js';
|
|
18
|
+
import { requireRole } from '../../middleware/auth.js';
|
|
17
19
|
const router = new Hono();
|
|
18
20
|
/**
|
|
19
21
|
* @swagger
|
|
@@ -40,7 +42,7 @@ const router = new Hono();
|
|
|
40
42
|
* 500:
|
|
41
43
|
* description: Server error
|
|
42
44
|
*/
|
|
43
|
-
router.post('/', zValidator('json', createWorkflowSchema), async (c) => {
|
|
45
|
+
router.post('/', requireRole(UserRole.Admin), zValidator('json', createWorkflowSchema), async (c) => {
|
|
44
46
|
const commands = c.get('commands');
|
|
45
47
|
const { identifier } = c.req.valid('json');
|
|
46
48
|
await workflowService.createWorkflow(commands, identifier);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/workflows/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,eAAe,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/workflows/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,eAAe,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,IAAI,CACT,GAAG,EACH,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC3B,UAAU,CAAC,MAAM,EAAE,oBAAoB,CAAC,EACxC,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,eAAe,CAAC,cAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC3D,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC,CAAC;AAC9D,CAAC,CACF,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/dist/export.d.ts
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
details. You should have received a copy of the GNU Affero General Public
|
|
11
11
|
License along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
12
12
|
*/
|
|
13
|
+
import type { CommandManager } from '@cyberismo/data-handler';
|
|
13
14
|
import type { QueryResult } from '@cyberismo/data-handler/types/queries';
|
|
14
15
|
import type { TreeOptions } from './types.js';
|
|
15
16
|
/**
|
|
@@ -20,23 +21,23 @@ export declare function reset(): void;
|
|
|
20
21
|
/**
|
|
21
22
|
* Get the card query result for a given card key. Should only be called during
|
|
22
23
|
* static site generation
|
|
23
|
-
* @param
|
|
24
|
+
* @param commands - CommandManager instance for the project.
|
|
24
25
|
* @param cardKey - Key of the card to get the query result for.
|
|
25
26
|
* @returns The card query result for the given card key.
|
|
26
27
|
*/
|
|
27
|
-
export declare function getCardQueryResult(
|
|
28
|
+
export declare function getCardQueryResult(commands: CommandManager, cardKey?: string): Promise<QueryResult<'card'>[]>;
|
|
28
29
|
/**
|
|
29
30
|
* Export the site to a given directory.
|
|
30
31
|
* Note: Do not call this function in parallel.
|
|
31
|
-
* @param
|
|
32
|
+
* @param commands - CommandManager instance for the project.
|
|
33
|
+
* @param exportDir - Directory to export to.
|
|
32
34
|
* @param options - Export options.
|
|
33
35
|
* @param options.recursive - Whether to export cards recursively.
|
|
34
36
|
* @param options.cardKey - Key of the card to export. If not provided, all cards will be exported.
|
|
35
|
-
* @param exportDir - Directory to export to.
|
|
36
37
|
* @param level - Log level for the operation.
|
|
37
38
|
* @param onProgress - Optional progress callback function.
|
|
38
39
|
* @returns An object containing any errors that occurred during export.
|
|
39
40
|
*/
|
|
40
|
-
export declare function exportSite(
|
|
41
|
+
export declare function exportSite(commands: CommandManager, exportDir?: string, options?: TreeOptions, onProgress?: (current: number, total: number) => void): Promise<{
|
|
41
42
|
errors: string[];
|
|
42
43
|
}>;
|
package/dist/export.js
CHANGED
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import path from 'node:path';
|
|
14
14
|
import fs, { readFile } from 'node:fs/promises';
|
|
15
|
-
import { CommandManager } from '@cyberismo/data-handler';
|
|
16
15
|
import { createApp } from './app.js';
|
|
16
|
+
import { MockAuthProvider } from './auth/mock.js';
|
|
17
17
|
import { cp, writeFile } from 'node:fs/promises';
|
|
18
18
|
import { staticFrontendDirRelative } from './utils.js';
|
|
19
19
|
import { toSSG } from 'hono/ssg';
|
|
@@ -30,13 +30,12 @@ export function reset() {
|
|
|
30
30
|
/**
|
|
31
31
|
* Get the card query result for a given card key. Should only be called during
|
|
32
32
|
* static site generation
|
|
33
|
-
* @param
|
|
33
|
+
* @param commands - CommandManager instance for the project.
|
|
34
34
|
* @param cardKey - Key of the card to get the query result for.
|
|
35
35
|
* @returns The card query result for the given card key.
|
|
36
36
|
*/
|
|
37
|
-
export async function getCardQueryResult(
|
|
37
|
+
export async function getCardQueryResult(commands, cardKey) {
|
|
38
38
|
if (!_cardQueryPromise) {
|
|
39
|
-
const commands = await CommandManager.getInstance(projectPath);
|
|
40
39
|
// fetch all cards
|
|
41
40
|
_cardQueryPromise = commands.project.calculationEngine.runQuery('card', 'exportedSite', {});
|
|
42
41
|
}
|
|
@@ -54,23 +53,23 @@ export async function getCardQueryResult(projectPath, cardKey) {
|
|
|
54
53
|
/**
|
|
55
54
|
* Export the site to a given directory.
|
|
56
55
|
* Note: Do not call this function in parallel.
|
|
57
|
-
* @param
|
|
56
|
+
* @param commands - CommandManager instance for the project.
|
|
57
|
+
* @param exportDir - Directory to export to.
|
|
58
58
|
* @param options - Export options.
|
|
59
59
|
* @param options.recursive - Whether to export cards recursively.
|
|
60
60
|
* @param options.cardKey - Key of the card to export. If not provided, all cards will be exported.
|
|
61
|
-
* @param exportDir - Directory to export to.
|
|
62
61
|
* @param level - Log level for the operation.
|
|
63
62
|
* @param onProgress - Optional progress callback function.
|
|
64
63
|
* @returns An object containing any errors that occurred during export.
|
|
65
64
|
*/
|
|
66
|
-
export async function exportSite(
|
|
65
|
+
export async function exportSite(commands, exportDir, options, onProgress) {
|
|
67
66
|
exportDir = exportDir || 'static';
|
|
68
67
|
const opts = {
|
|
69
68
|
recursive: false,
|
|
70
69
|
cardKey: undefined,
|
|
71
70
|
...options,
|
|
72
71
|
};
|
|
73
|
-
const app = createApp(
|
|
72
|
+
const app = createApp(new MockAuthProvider(), commands, opts);
|
|
74
73
|
// copy whole frontend to the same directory
|
|
75
74
|
await cp(staticFrontendDirRelative, exportDir, { recursive: true });
|
|
76
75
|
// read config file and change export to true
|
|
@@ -78,9 +77,6 @@ export async function exportSite(projectPath, exportDir, options, level, onProgr
|
|
|
78
77
|
const configJson = JSON.parse(config);
|
|
79
78
|
configJson.staticMode = true;
|
|
80
79
|
await writeFile(path.join(exportDir, 'config.json'), JSON.stringify(configJson));
|
|
81
|
-
const commands = await CommandManager.getInstance(projectPath, {
|
|
82
|
-
logLevel: level,
|
|
83
|
-
});
|
|
84
80
|
reset();
|
|
85
81
|
await commands.project.calculationEngine.generate();
|
|
86
82
|
// estimate total based on the number of cards to export
|
|
@@ -96,6 +92,14 @@ export async function exportSite(projectPath, exportDir, options, level, onProgr
|
|
|
96
92
|
concurrency: 5,
|
|
97
93
|
plugins: [
|
|
98
94
|
{
|
|
95
|
+
beforeRequestHook: (req) => {
|
|
96
|
+
const url = new URL(req.url);
|
|
97
|
+
// Skip MCP routes — they require session state and are not part of the static site
|
|
98
|
+
if (url.pathname.startsWith('/mcp')) {
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
return req;
|
|
102
|
+
},
|
|
99
103
|
afterResponseHook: async (response) => {
|
|
100
104
|
if (![200, 201, 204].includes(response.status)) {
|
|
101
105
|
const error = await response.json();
|
package/dist/export.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import type { CommandManager } from '@cyberismo/data-handler';
|
|
2
|
+
import type { AuthProvider } from './auth/types.js';
|
|
3
|
+
export { MockAuthProvider } from './auth/mock.js';
|
|
4
|
+
export type { MockUserConfig } from './auth/mock.js';
|
|
5
|
+
export type { AuthProvider } from './auth/types.js';
|
|
1
6
|
export { exportSite } from './export.js';
|
|
2
7
|
/**
|
|
3
8
|
* Preview the exported site
|
|
@@ -7,7 +12,8 @@ export { exportSite } from './export.js';
|
|
|
7
12
|
export declare function previewSite(dir: string, findPort?: boolean): Promise<void>;
|
|
8
13
|
/**
|
|
9
14
|
* Start the server
|
|
10
|
-
* @param
|
|
15
|
+
* @param authProvider - Authentication provider
|
|
16
|
+
* @param commands - CommandManager instance for the project
|
|
11
17
|
* @param findPort - If true, find a free port
|
|
12
18
|
*/
|
|
13
|
-
export declare function startServer(
|
|
19
|
+
export declare function startServer(authProvider: AuthProvider, commands: CommandManager, findPort?: boolean): Promise<void>;
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,7 @@ import path from 'node:path';
|
|
|
17
17
|
import { readFile } from 'node:fs/promises';
|
|
18
18
|
import { findFreePort } from './utils.js';
|
|
19
19
|
import { createApp } from './app.js';
|
|
20
|
+
export { MockAuthProvider } from './auth/mock.js';
|
|
20
21
|
export { exportSite } from './export.js';
|
|
21
22
|
const DEFAULT_PORT = 3000;
|
|
22
23
|
const DEFAULT_MAX_PORT = DEFAULT_PORT + 100;
|
|
@@ -37,15 +38,16 @@ export async function previewSite(dir, findPort = true) {
|
|
|
37
38
|
}
|
|
38
39
|
/**
|
|
39
40
|
* Start the server
|
|
40
|
-
* @param
|
|
41
|
+
* @param authProvider - Authentication provider
|
|
42
|
+
* @param commands - CommandManager instance for the project
|
|
41
43
|
* @param findPort - If true, find a free port
|
|
42
44
|
*/
|
|
43
|
-
export async function startServer(
|
|
45
|
+
export async function startServer(authProvider, commands, findPort = true) {
|
|
44
46
|
let port = parseInt(process.env.PORT || DEFAULT_PORT.toString(), 10);
|
|
45
47
|
if (findPort) {
|
|
46
48
|
port = await findFreePort(port, DEFAULT_MAX_PORT);
|
|
47
49
|
}
|
|
48
|
-
const app = createApp(
|
|
50
|
+
const app = createApp(authProvider, commands);
|
|
49
51
|
startApp(app, port);
|
|
50
52
|
}
|
|
51
53
|
function startApp(app, port) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AACF,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AACF,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,gBAAgB,GAAG,YAAY,GAAG,GAAG,CAAC;AAE5C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAW,EAAE,WAAoB,IAAI;IACrE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IACpC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CACjB,CAAC,CAAC,IAAI,CACJ,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CACvE,CACF,CAAC;IAEF,IAAI,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IAErE,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACpD,CAAC;IACD,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,YAA0B,EAC1B,QAAwB,EACxB,WAAoB,IAAI;IAExB,IAAI,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IAErE,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,GAAG,GAAG,SAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC9C,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,QAAQ,CACf,GAAkB,EAClB,IAAY;IAEZ,KAAK,CACH;QACE,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,IAAI,EAAE,IAAI;KACX,EACD,CAAC,IAAI,EAAE,EAAE;QACP,OAAO,CAAC,GAAG,CAAC,6CAA6C,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAC1C,CAAC,CACF,CAAC;AACJ,CAAC"}
|
package/dist/main.js
CHANGED
|
@@ -10,15 +10,42 @@
|
|
|
10
10
|
details. You should have received a copy of the GNU Affero General Public
|
|
11
11
|
License along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
12
12
|
*/
|
|
13
|
+
import { CommandManager } from '@cyberismo/data-handler';
|
|
13
14
|
import { startServer } from './index.js';
|
|
14
15
|
import { exportSite } from './export.js';
|
|
16
|
+
import { MockAuthProvider } from './auth/mock.js';
|
|
17
|
+
import { KeycloakAuthProvider } from './auth/keycloak.js';
|
|
15
18
|
import dotenv from 'dotenv';
|
|
16
19
|
// Load environment variables from .env file
|
|
17
20
|
dotenv.config();
|
|
21
|
+
function createAuthProvider() {
|
|
22
|
+
const authMode = process.env.AUTH_MODE;
|
|
23
|
+
if (!authMode) {
|
|
24
|
+
console.error('Fatal: AUTH_MODE environment variable is required. Set to "mock" or "idp".');
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
if (authMode === 'mock') {
|
|
28
|
+
return new MockAuthProvider();
|
|
29
|
+
}
|
|
30
|
+
if (authMode === 'idp') {
|
|
31
|
+
const issuer = process.env.OIDC_ISSUER;
|
|
32
|
+
const clientId = process.env.OIDC_CLIENT_ID;
|
|
33
|
+
if (!issuer || !clientId) {
|
|
34
|
+
console.error('Fatal: OIDC_ISSUER and OIDC_CLIENT_ID environment variables are required when AUTH_MODE=idp.');
|
|
35
|
+
process.exit(1);
|
|
36
|
+
}
|
|
37
|
+
return new KeycloakAuthProvider({ issuer, audience: clientId });
|
|
38
|
+
}
|
|
39
|
+
console.error(`Fatal: Unrecognized AUTH_MODE "${authMode}". Must be "mock" or "idp".`);
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
const projectPath = process.env.npm_config_project_path || '';
|
|
43
|
+
const commands = await CommandManager.getInstance(projectPath);
|
|
18
44
|
if (process.argv.includes('--export')) {
|
|
19
|
-
await exportSite(
|
|
45
|
+
await exportSite(commands);
|
|
20
46
|
}
|
|
21
47
|
else {
|
|
22
|
-
|
|
48
|
+
const authProvider = createAuthProvider();
|
|
49
|
+
await startServer(authProvider, commands);
|
|
23
50
|
}
|
|
24
51
|
//# sourceMappingURL=main.js.map
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AACF,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,4CAA4C;AAC5C,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AACF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,4CAA4C;AAC5C,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,SAAS,kBAAkB;IACzB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IAEvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CACX,4EAA4E,CAC7E,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,IAAI,gBAAgB,EAAE,CAAC;IAChC,CAAC;IAED,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;QACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAE5C,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CACX,8FAA8F,CAC/F,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,IAAI,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,CAAC,KAAK,CACX,kCAAkC,QAAQ,6BAA6B,CACxE,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,EAAE,CAAC;AAC9D,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;AAE/D,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;IACtC,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC;KAAM,CAAC;IACN,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;IAC1C,MAAM,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AAC5C,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
Cyberismo
|
|
3
|
+
Copyright © Cyberismo Ltd and contributors 2026
|
|
4
|
+
This program is free software: you can redistribute it and/or modify it under
|
|
5
|
+
the terms of the GNU Affero General Public License version 3 as published by
|
|
6
|
+
the Free Software Foundation. This program is distributed in the hope that it
|
|
7
|
+
will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|
8
|
+
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
9
|
+
See the GNU Affero General Public License for more details.
|
|
10
|
+
You should have received a copy of the GNU Affero General Public
|
|
11
|
+
License along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
12
|
+
*/
|
|
13
|
+
import type { Context, MiddlewareHandler } from 'hono';
|
|
14
|
+
import type { UserInfo } from '../types.js';
|
|
15
|
+
import { UserRole } from '../types.js';
|
|
16
|
+
import type { AuthProvider } from '../auth/types.js';
|
|
17
|
+
declare module 'hono' {
|
|
18
|
+
interface ContextVariableMap {
|
|
19
|
+
user: UserInfo;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Create authentication middleware from an AuthProvider.
|
|
24
|
+
* Validates the user and attaches user info to the context.
|
|
25
|
+
*/
|
|
26
|
+
export declare function createAuthMiddleware(provider: AuthProvider): MiddlewareHandler;
|
|
27
|
+
/**
|
|
28
|
+
* Check if the current user has at least the required role
|
|
29
|
+
*/
|
|
30
|
+
export declare function hasRole(c: Context, minimumRole: UserRole): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Require minimum role middleware factory
|
|
33
|
+
* Returns a middleware that checks if the user has at least the required role
|
|
34
|
+
*/
|
|
35
|
+
export declare function requireRole(minimumRole: UserRole): MiddlewareHandler;
|
|
36
|
+
/**
|
|
37
|
+
* Get current user from context
|
|
38
|
+
* Returns null if not authenticated
|
|
39
|
+
*/
|
|
40
|
+
export declare function getCurrentUser(c: Context): UserInfo | null;
|