@cyberismo/data-handler 0.0.15 → 0.0.17
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/card-metadata-updater.js +7 -1
- package/dist/card-metadata-updater.js.map +1 -1
- package/dist/command-handler.d.ts +4 -0
- package/dist/command-handler.js +22 -8
- package/dist/command-handler.js.map +1 -1
- package/dist/command-manager.d.ts +24 -1
- package/dist/command-manager.js +31 -7
- package/dist/command-manager.js.map +1 -1
- package/dist/commands/create.d.ts +1 -1
- package/dist/commands/create.js +34 -36
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/export.d.ts +11 -2
- package/dist/commands/export.js +54 -41
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/fetch.d.ts +8 -0
- package/dist/commands/fetch.js +101 -23
- package/dist/commands/fetch.js.map +1 -1
- package/dist/commands/import.d.ts +14 -3
- package/dist/commands/import.js +27 -10
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/move.js +0 -1
- package/dist/commands/move.js.map +1 -1
- package/dist/commands/remove.d.ts +11 -2
- package/dist/commands/remove.js +15 -5
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/rename.d.ts +4 -9
- package/dist/commands/rename.js +37 -101
- package/dist/commands/rename.js.map +1 -1
- package/dist/commands/show.d.ts +20 -12
- package/dist/commands/show.js +79 -57
- package/dist/commands/show.js.map +1 -1
- package/dist/commands/transition.d.ts +9 -2
- package/dist/commands/transition.js +25 -17
- package/dist/commands/transition.js.map +1 -1
- package/dist/commands/update.d.ts +16 -12
- package/dist/commands/update.js +19 -17
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/validate.d.ts +17 -9
- package/dist/commands/validate.js +94 -35
- package/dist/commands/validate.js.map +1 -1
- package/dist/containers/card-container.d.ts +7 -5
- package/dist/containers/card-container.js +30 -5
- package/dist/containers/card-container.js.map +1 -1
- package/dist/containers/project/calculation-engine.d.ts +7 -4
- package/dist/containers/project/calculation-engine.js +61 -66
- package/dist/containers/project/calculation-engine.js.map +1 -1
- package/dist/containers/project/project-paths.d.ts +7 -4
- package/dist/containers/project/project-paths.js +22 -12
- package/dist/containers/project/project-paths.js.map +1 -1
- package/dist/containers/project/resource-cache.d.ts +169 -0
- package/dist/containers/project/resource-cache.js +509 -0
- package/dist/containers/project/resource-cache.js.map +1 -0
- package/dist/containers/project/resource-handler.d.ts +129 -0
- package/dist/containers/project/resource-handler.js +206 -0
- package/dist/containers/project/resource-handler.js.map +1 -0
- package/dist/containers/project.d.ts +46 -152
- package/dist/containers/project.js +179 -409
- package/dist/containers/project.js.map +1 -1
- package/dist/containers/template.d.ts +8 -2
- package/dist/containers/template.js +24 -19
- package/dist/containers/template.js.map +1 -1
- package/dist/interfaces/command-options.d.ts +3 -1
- package/dist/interfaces/folder-content-interfaces.d.ts +5 -3
- package/dist/interfaces/folder-content-interfaces.js +3 -3
- package/dist/interfaces/folder-content-interfaces.js.map +1 -1
- package/dist/interfaces/project-interfaces.d.ts +7 -9
- package/dist/interfaces/project-interfaces.js.map +1 -1
- package/dist/interfaces/resource-interfaces.d.ts +14 -1
- package/dist/interfaces/resource-interfaces.js.map +1 -1
- package/dist/macros/graph/index.js +12 -26
- package/dist/macros/graph/index.js.map +1 -1
- package/dist/macros/index.d.ts +1 -1
- package/dist/macros/index.js +2 -2
- package/dist/macros/index.js.map +1 -1
- package/dist/macros/report/index.js +3 -6
- package/dist/macros/report/index.js.map +1 -1
- package/dist/module-manager.d.ts +16 -3
- package/dist/module-manager.js +51 -19
- package/dist/module-manager.js.map +1 -1
- package/dist/project-settings.d.ts +21 -3
- package/dist/project-settings.js +91 -14
- package/dist/project-settings.js.map +1 -1
- package/dist/resources/calculation-resource.d.ts +4 -3
- package/dist/resources/calculation-resource.js +11 -5
- package/dist/resources/calculation-resource.js.map +1 -1
- package/dist/resources/card-type-resource.d.ts +6 -1
- package/dist/resources/card-type-resource.js +34 -23
- package/dist/resources/card-type-resource.js.map +1 -1
- package/dist/resources/create-defaults.d.ts +3 -2
- package/dist/resources/create-defaults.js +3 -2
- package/dist/resources/create-defaults.js.map +1 -1
- package/dist/resources/field-type-resource.d.ts +4 -1
- package/dist/resources/field-type-resource.js +22 -23
- package/dist/resources/field-type-resource.js.map +1 -1
- package/dist/resources/file-resource.d.ts +5 -9
- package/dist/resources/file-resource.js +6 -11
- package/dist/resources/file-resource.js.map +1 -1
- package/dist/resources/folder-resource.d.ts +29 -32
- package/dist/resources/folder-resource.js +59 -78
- package/dist/resources/folder-resource.js.map +1 -1
- package/dist/resources/graph-model-resource.d.ts +4 -1
- package/dist/resources/graph-model-resource.js +11 -4
- package/dist/resources/graph-model-resource.js.map +1 -1
- package/dist/resources/graph-view-resource.d.ts +5 -2
- package/dist/resources/graph-view-resource.js +7 -3
- package/dist/resources/graph-view-resource.js.map +1 -1
- package/dist/resources/link-type-resource.d.ts +5 -2
- package/dist/resources/link-type-resource.js +5 -2
- package/dist/resources/link-type-resource.js.map +1 -1
- package/dist/resources/report-resource.d.ts +6 -7
- package/dist/resources/report-resource.js +14 -23
- package/dist/resources/report-resource.js.map +1 -1
- package/dist/resources/resource-object.d.ts +94 -8
- package/dist/resources/resource-object.js +212 -109
- package/dist/resources/resource-object.js.map +1 -1
- package/dist/resources/template-resource.d.ts +7 -3
- package/dist/resources/template-resource.js +10 -3
- package/dist/resources/template-resource.js.map +1 -1
- package/dist/resources/workflow-resource.d.ts +5 -2
- package/dist/resources/workflow-resource.js +18 -22
- package/dist/resources/workflow-resource.js.map +1 -1
- package/dist/utils/card-utils.d.ts +2 -2
- package/dist/utils/card-utils.js +1 -1
- package/dist/utils/clingo-fact-builder.d.ts +25 -14
- package/dist/utils/clingo-fact-builder.js +27 -5
- package/dist/utils/clingo-fact-builder.js.map +1 -1
- package/dist/utils/clingo-facts.js +3 -4
- package/dist/utils/clingo-facts.js.map +1 -1
- package/dist/utils/configuration-logger.d.ts +91 -0
- package/dist/utils/configuration-logger.js +151 -0
- package/dist/utils/configuration-logger.js.map +1 -0
- package/dist/utils/constants.d.ts +1 -1
- package/dist/utils/constants.js +5 -3
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/resource-utils.d.ts +1 -0
- package/dist/utils/resource-utils.js +2 -1
- package/dist/utils/resource-utils.js.map +1 -1
- package/package.json +9 -9
- package/src/card-metadata-updater.ts +6 -2
- package/src/command-handler.ts +39 -12
- package/src/command-manager.ts +33 -21
- package/src/commands/create.ts +43 -78
- package/src/commands/export.ts +63 -52
- package/src/commands/fetch.ts +143 -34
- package/src/commands/import.ts +37 -15
- package/src/commands/move.ts +0 -1
- package/src/commands/remove.ts +20 -7
- package/src/commands/rename.ts +58 -149
- package/src/commands/show.ts +123 -80
- package/src/commands/transition.ts +26 -28
- package/src/commands/update.ts +25 -22
- package/src/commands/validate.ts +104 -67
- package/src/containers/card-container.ts +37 -5
- package/src/containers/project/calculation-engine.ts +61 -93
- package/src/containers/project/project-paths.ts +29 -13
- package/src/containers/project/resource-cache.ts +651 -0
- package/src/containers/project/resource-handler.ts +265 -0
- package/src/containers/project.ts +250 -527
- package/src/containers/template.ts +28 -23
- package/src/interfaces/command-options.ts +3 -1
- package/src/interfaces/folder-content-interfaces.ts +7 -6
- package/src/interfaces/project-interfaces.ts +12 -11
- package/src/interfaces/resource-interfaces.ts +18 -3
- package/src/macros/graph/index.ts +26 -47
- package/src/macros/index.ts +2 -2
- package/src/macros/report/index.ts +3 -9
- package/src/module-manager.ts +74 -17
- package/src/project-settings.ts +96 -14
- package/src/resources/calculation-resource.ts +18 -18
- package/src/resources/card-type-resource.ts +50 -50
- package/src/resources/create-defaults.ts +3 -2
- package/src/resources/field-type-resource.ts +41 -55
- package/src/resources/file-resource.ts +10 -36
- package/src/resources/folder-resource.ts +69 -120
- package/src/resources/graph-model-resource.ts +20 -22
- package/src/resources/graph-view-resource.ts +15 -17
- package/src/resources/link-type-resource.ts +10 -13
- package/src/resources/report-resource.ts +21 -43
- package/src/resources/resource-object.ts +263 -149
- package/src/resources/template-resource.ts +17 -16
- package/src/resources/workflow-resource.ts +25 -44
- package/src/utils/card-utils.ts +2 -2
- package/src/utils/clingo-fact-builder.ts +28 -16
- package/src/utils/clingo-facts.ts +3 -4
- package/src/utils/configuration-logger.ts +206 -0
- package/src/utils/constants.ts +5 -3
- package/src/utils/resource-utils.ts +2 -1
- package/dist/containers/project/resource-collector.d.ts +0 -110
- package/dist/containers/project/resource-collector.js +0 -344
- package/dist/containers/project/resource-collector.js.map +0 -1
- package/src/containers/project/resource-collector.ts +0 -404
|
@@ -17,15 +17,13 @@ import { instance } from '@viz-js/viz';
|
|
|
17
17
|
import ClingoParser from '../../utils/clingo-parser.js';
|
|
18
18
|
import { Mutex } from 'async-mutex';
|
|
19
19
|
import Handlebars from 'handlebars';
|
|
20
|
-
import { ResourcesFrom } from '../../containers/project.js';
|
|
21
20
|
import { getChildLogger } from '../../utils/log-utils.js';
|
|
22
21
|
import { createCardFacts, createCardTypeFacts, createContextFacts, createFieldTypeFacts, createLinkTypeFacts, createModuleFacts, createProjectFacts, createReportFacts, createTemplateFacts, createWorkflowFacts, } from '../../utils/clingo-facts.js';
|
|
23
22
|
import { CardMetadataUpdater } from '../../card-metadata-updater.js';
|
|
24
|
-
import { CalculationResource } from '../../resources/calculation-resource.js';
|
|
25
23
|
import { removeAllPrograms, solve, setProgram, removeProgram, buildProgram, } from '@cyberismo/node-clingo';
|
|
26
24
|
import { generateReportContent } from '../../utils/report.js';
|
|
27
25
|
import { lpFiles, graphvizReport } from '@cyberismo/assets';
|
|
28
|
-
import {
|
|
26
|
+
import { resourceNameToString, } from '../../utils/resource-utils.js';
|
|
29
27
|
// Define the all category that will be used for all programs
|
|
30
28
|
const ALL_CATEGORY = 'all';
|
|
31
29
|
export class CalculationEngine {
|
|
@@ -73,7 +71,7 @@ export class CalculationEngine {
|
|
|
73
71
|
logicProgram += buildProgram('', programs);
|
|
74
72
|
await writeFile(destination, logicProgram);
|
|
75
73
|
}
|
|
76
|
-
//
|
|
74
|
+
// Wrapper to run onCreation query.
|
|
77
75
|
async creationQuery(cardKeys, context) {
|
|
78
76
|
if (!cardKeys)
|
|
79
77
|
return undefined;
|
|
@@ -94,9 +92,9 @@ export class CalculationEngine {
|
|
|
94
92
|
}
|
|
95
93
|
// Generates logic programs related to modules (and project itself).
|
|
96
94
|
async generateModules() {
|
|
97
|
-
const modules =
|
|
95
|
+
const modules = this.project.resources.moduleNames();
|
|
98
96
|
let content = '';
|
|
99
|
-
for (const module of await Promise.all(modules.map((mod) => this.project.module(mod
|
|
97
|
+
for (const module of await Promise.all(modules.map((mod) => this.project.module(mod)))) {
|
|
100
98
|
if (!module)
|
|
101
99
|
continue;
|
|
102
100
|
const moduleContent = createModuleFacts(module);
|
|
@@ -108,88 +106,74 @@ export class CalculationEngine {
|
|
|
108
106
|
}
|
|
109
107
|
// Sets individual CardType programs
|
|
110
108
|
async setCardTypesPrograms() {
|
|
111
|
-
const cardTypes =
|
|
112
|
-
for (const cardType of
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
setProgram(cardType.name, cardTypeContent, [ALL_CATEGORY]);
|
|
109
|
+
const cardTypes = this.project.resources.cardTypes();
|
|
110
|
+
for (const cardType of cardTypes) {
|
|
111
|
+
const ct = cardType.show();
|
|
112
|
+
const cardTypeContent = createCardTypeFacts(ct);
|
|
113
|
+
setProgram(ct.name, cardTypeContent, [ALL_CATEGORY]);
|
|
117
114
|
}
|
|
118
115
|
}
|
|
119
116
|
// Sets individual FieldType programs
|
|
120
117
|
async setFieldTypesPrograms() {
|
|
121
|
-
const fieldTypes =
|
|
122
|
-
for (const fieldType of
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
setProgram(fieldType.name, fieldTypeContent, [ALL_CATEGORY]);
|
|
118
|
+
const fieldTypes = this.project.resources.fieldTypes();
|
|
119
|
+
for (const fieldType of fieldTypes) {
|
|
120
|
+
const ft = fieldType.show();
|
|
121
|
+
const fieldTypeContent = createFieldTypeFacts(ft);
|
|
122
|
+
setProgram(ft.name, fieldTypeContent, [ALL_CATEGORY]);
|
|
127
123
|
}
|
|
128
124
|
}
|
|
129
125
|
// Sets individual LinkType programs
|
|
130
126
|
async setLinkTypesPrograms() {
|
|
131
|
-
const linkTypes =
|
|
132
|
-
for (const linkType of
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
setProgram(linkType.name, linkTypeContent, [ALL_CATEGORY]);
|
|
127
|
+
const linkTypes = this.project.resources.linkTypes();
|
|
128
|
+
for (const linkType of linkTypes) {
|
|
129
|
+
const lt = linkType.show();
|
|
130
|
+
const linkTypeContent = createLinkTypeFacts(lt);
|
|
131
|
+
setProgram(lt.name, linkTypeContent, [ALL_CATEGORY]);
|
|
137
132
|
}
|
|
138
133
|
}
|
|
139
134
|
// Sets individual Workflow programs
|
|
140
135
|
async setWorkflowsPrograms() {
|
|
141
|
-
const workflows =
|
|
142
|
-
for (const workflow of
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
setProgram(workflow.name, workflowContent, [ALL_CATEGORY]);
|
|
136
|
+
const workflows = this.project.resources.workflows();
|
|
137
|
+
for (const workflow of workflows) {
|
|
138
|
+
const wf = workflow.show();
|
|
139
|
+
const workflowContent = createWorkflowFacts(wf);
|
|
140
|
+
setProgram(wf.name, workflowContent, [ALL_CATEGORY]);
|
|
147
141
|
}
|
|
148
142
|
}
|
|
149
143
|
// Sets individual Report programs
|
|
150
144
|
async setReportsPrograms() {
|
|
151
|
-
const reports =
|
|
152
|
-
for (const report of
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
setProgram(report.name, reportContent, [ALL_CATEGORY]);
|
|
145
|
+
const reports = this.project.resources.reports();
|
|
146
|
+
for (const report of reports) {
|
|
147
|
+
const rep = report.show();
|
|
148
|
+
const reportContent = createReportFacts(rep);
|
|
149
|
+
setProgram(rep.name, reportContent, [ALL_CATEGORY]);
|
|
157
150
|
}
|
|
158
151
|
}
|
|
159
152
|
// Sets individual Template programs
|
|
160
153
|
async setTemplatesPrograms() {
|
|
161
|
-
const templates =
|
|
162
|
-
for (const template of
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
const
|
|
166
|
-
const cards = this.getCards(template.name);
|
|
154
|
+
const templates = this.project.resources.templates();
|
|
155
|
+
for (const template of templates) {
|
|
156
|
+
const tem = template.show();
|
|
157
|
+
const templateContent = createTemplateFacts(tem);
|
|
158
|
+
const cards = this.getCards(tem.name);
|
|
167
159
|
for (const card of cards) {
|
|
168
160
|
const cardContent = await createCardFacts(card, this.project);
|
|
169
161
|
setProgram(card.key, cardContent, [ALL_CATEGORY]);
|
|
170
162
|
}
|
|
171
|
-
setProgram(
|
|
163
|
+
setProgram(tem.name, templateContent, [ALL_CATEGORY]);
|
|
172
164
|
}
|
|
173
165
|
}
|
|
174
166
|
// Sets individual Calculation programs
|
|
175
167
|
async setCalculationsPrograms() {
|
|
176
|
-
const calculations =
|
|
177
|
-
for (const
|
|
168
|
+
const calculations = this.project.resources.calculations();
|
|
169
|
+
for (const calculation of calculations) {
|
|
178
170
|
try {
|
|
179
|
-
const
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
if (!resource?.content.calculation) {
|
|
183
|
-
this.logger.info(`Calculation resource '${resource.name}' does not have calculation file`);
|
|
184
|
-
continue;
|
|
185
|
-
}
|
|
186
|
-
setProgram(calculationFile.name, resource.content.calculation, [
|
|
187
|
-
ALL_CATEGORY,
|
|
188
|
-
]);
|
|
189
|
-
}
|
|
171
|
+
const content = calculation.contentData();
|
|
172
|
+
const calc = calculation.show();
|
|
173
|
+
setProgram(calc.name, content.calculation, [ALL_CATEGORY]);
|
|
190
174
|
}
|
|
191
175
|
catch (error) {
|
|
192
|
-
this.logger.warn(error, `Failed to read calculation ${
|
|
176
|
+
this.logger.warn(error, `Failed to read calculation ${calculation.data.name}`);
|
|
193
177
|
}
|
|
194
178
|
}
|
|
195
179
|
}
|
|
@@ -205,6 +189,14 @@ export class CalculationEngine {
|
|
|
205
189
|
const parser = new ClingoParser();
|
|
206
190
|
return parser.parseInput(data.join('\n'));
|
|
207
191
|
}
|
|
192
|
+
//
|
|
193
|
+
queryContent(queryName, options) {
|
|
194
|
+
const content = lpFiles.queries[queryName];
|
|
195
|
+
const handlebars = Handlebars.create();
|
|
196
|
+
const compiled = handlebars.compile(content);
|
|
197
|
+
return compiled(options || {});
|
|
198
|
+
}
|
|
199
|
+
//
|
|
208
200
|
async run(query, context) {
|
|
209
201
|
try {
|
|
210
202
|
const res = await CalculationEngine.mutex.runExclusive(async () => {
|
|
@@ -332,7 +324,13 @@ export class CalculationEngine {
|
|
|
332
324
|
* @returns The logic program content for the resource
|
|
333
325
|
*/
|
|
334
326
|
async resourceLogicProgram(resourceName) {
|
|
335
|
-
|
|
327
|
+
let resource;
|
|
328
|
+
try {
|
|
329
|
+
resource = this.project.resources.byType(resourceName).data;
|
|
330
|
+
}
|
|
331
|
+
catch {
|
|
332
|
+
resource = undefined;
|
|
333
|
+
}
|
|
336
334
|
if (!resource) {
|
|
337
335
|
throw new Error(`Resource '${resourceNameToString(resourceName)}' does not exist in the project`);
|
|
338
336
|
}
|
|
@@ -355,8 +353,9 @@ export class CalculationEngine {
|
|
|
355
353
|
}
|
|
356
354
|
/**
|
|
357
355
|
* Runs given logic program and creates a graph using clingraph
|
|
358
|
-
* @param
|
|
359
|
-
* @param
|
|
356
|
+
* @param model Graph model to use.
|
|
357
|
+
* @param view Graph view to use.
|
|
358
|
+
* @param context In which type of context the query is run.
|
|
360
359
|
* @returns a base64 encoded image as a string
|
|
361
360
|
*/
|
|
362
361
|
async runGraph(model, view, context) {
|
|
@@ -388,21 +387,17 @@ export class CalculationEngine {
|
|
|
388
387
|
/**
|
|
389
388
|
* Runs a logic program using clingo.
|
|
390
389
|
* @param query Logic program to be run
|
|
390
|
+
* @param context In which type of context the query is run.
|
|
391
391
|
* @returns parsed program output
|
|
392
392
|
*/
|
|
393
393
|
async runLogicProgram(query, context = 'localApp') {
|
|
394
394
|
const clingoOutput = await this.run(query, context);
|
|
395
395
|
return this.parseClingoResult(clingoOutput);
|
|
396
396
|
}
|
|
397
|
-
queryContent(queryName, options) {
|
|
398
|
-
const content = lpFiles.queries[queryName];
|
|
399
|
-
const handlebars = Handlebars.create();
|
|
400
|
-
const compiled = handlebars.compile(content);
|
|
401
|
-
return compiled(options || {});
|
|
402
|
-
}
|
|
403
397
|
/**
|
|
404
398
|
* Runs a pre-defined query.
|
|
405
399
|
* @param queryName Name of the query file without extension
|
|
400
|
+
* @param context In which type of context the query is run.
|
|
406
401
|
* @param options Any object that contains state for handlebars
|
|
407
402
|
* @returns parsed program output
|
|
408
403
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculation-engine.js","sourceRoot":"","sources":["../../../src/containers/project/calculation-engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"calculation-engine.js","sourceRoot":"","sources":["../../../src/containers/project/calculation-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,22 +25,25 @@ export declare class ProjectPaths {
|
|
|
25
25
|
get cardRootFolder(): string;
|
|
26
26
|
get cardTypesFolder(): string;
|
|
27
27
|
get configurationFile(): string;
|
|
28
|
+
get configurationChangesLog(): string;
|
|
28
29
|
get fieldTypesFolder(): string;
|
|
29
30
|
get graphModelsFolder(): string;
|
|
30
31
|
get graphViewsFolder(): string;
|
|
31
32
|
get linkTypesFolder(): string;
|
|
32
33
|
get logPath(): string;
|
|
34
|
+
get migrationLogFolder(): string;
|
|
33
35
|
get modulesFolder(): string;
|
|
36
|
+
moduleResourcePath(modulePrefix: string, resourceType: ResourceFolderType): string;
|
|
34
37
|
get resourcesFolder(): string;
|
|
35
38
|
get reportsFolder(): string;
|
|
36
|
-
get tempCardFolder(): string;
|
|
37
|
-
get tempFolder(): string;
|
|
38
|
-
get templatesFolder(): string;
|
|
39
|
-
get workflowsFolder(): string;
|
|
40
39
|
/**
|
|
41
40
|
* Return path to a resource type folder.
|
|
42
41
|
* @param resourceType Type of resource
|
|
43
42
|
* @returns path to a resources folder (e.g. '.cards/local/cardTypes')
|
|
44
43
|
*/
|
|
45
44
|
resourcePath(resourceType: ResourceFolderType): string;
|
|
45
|
+
get tempCardFolder(): string;
|
|
46
|
+
get tempFolder(): string;
|
|
47
|
+
get templatesFolder(): string;
|
|
48
|
+
get workflowsFolder(): string;
|
|
46
49
|
}
|
|
@@ -53,6 +53,9 @@ export class ProjectPaths {
|
|
|
53
53
|
get configurationFile() {
|
|
54
54
|
return join(this.resourcesFolder, 'cardsConfig.json');
|
|
55
55
|
}
|
|
56
|
+
get configurationChangesLog() {
|
|
57
|
+
return join(this.migrationLogFolder, 'current', 'migrationLog.jsonl');
|
|
58
|
+
}
|
|
56
59
|
get fieldTypesFolder() {
|
|
57
60
|
return join(this.resourcesFolder, 'fieldTypes');
|
|
58
61
|
}
|
|
@@ -68,27 +71,22 @@ export class ProjectPaths {
|
|
|
68
71
|
get logPath() {
|
|
69
72
|
return join(this.path, '.logs', 'cyberismo_data-handler.log');
|
|
70
73
|
}
|
|
74
|
+
get migrationLogFolder() {
|
|
75
|
+
return join(this.resourcesFolder, 'migrations');
|
|
76
|
+
}
|
|
71
77
|
get modulesFolder() {
|
|
72
78
|
return join(this.path, '.cards', 'modules');
|
|
73
79
|
}
|
|
80
|
+
moduleResourcePath(modulePrefix, resourceType) {
|
|
81
|
+
const moduleRoot = join(this.modulesFolder, modulePrefix);
|
|
82
|
+
return join(moduleRoot, resourceType);
|
|
83
|
+
}
|
|
74
84
|
get resourcesFolder() {
|
|
75
85
|
return join(this.path, '.cards', 'local');
|
|
76
86
|
}
|
|
77
87
|
get reportsFolder() {
|
|
78
88
|
return join(this.resourcesFolder, 'reports');
|
|
79
89
|
}
|
|
80
|
-
get tempCardFolder() {
|
|
81
|
-
return join(this.tempFolder, 'cards');
|
|
82
|
-
}
|
|
83
|
-
get tempFolder() {
|
|
84
|
-
return join(this.path, '.temp');
|
|
85
|
-
}
|
|
86
|
-
get templatesFolder() {
|
|
87
|
-
return join(this.resourcesFolder, 'templates');
|
|
88
|
-
}
|
|
89
|
-
get workflowsFolder() {
|
|
90
|
-
return join(this.resourcesFolder, 'workflows');
|
|
91
|
-
}
|
|
92
90
|
/**
|
|
93
91
|
* Return path to a resource type folder.
|
|
94
92
|
* @param resourceType Type of resource
|
|
@@ -101,5 +99,17 @@ export class ProjectPaths {
|
|
|
101
99
|
}
|
|
102
100
|
return resourcePath;
|
|
103
101
|
}
|
|
102
|
+
get tempCardFolder() {
|
|
103
|
+
return join(this.tempFolder, 'cards');
|
|
104
|
+
}
|
|
105
|
+
get tempFolder() {
|
|
106
|
+
return join(this.path, '.temp');
|
|
107
|
+
}
|
|
108
|
+
get templatesFolder() {
|
|
109
|
+
return join(this.resourcesFolder, 'templates');
|
|
110
|
+
}
|
|
111
|
+
get workflowsFolder() {
|
|
112
|
+
return join(this.resourcesFolder, 'workflows');
|
|
113
|
+
}
|
|
104
114
|
}
|
|
105
115
|
//# sourceMappingURL=project-paths.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-paths.js","sourceRoot":"","sources":["../../../src/containers/project/project-paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC;;GAEG;AACH,MAAM,OAAO,YAAY;IAGH;IAFZ,OAAO,CAAkC;IAEjD,YAAoB,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,CAAC;YACrB,CAAC,cAAc,EAAE,IAAI,CAAC,wBAAwB,CAAC;YAC/C,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;YACnC,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC;YACrC,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC;YACvC,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC;YACrC,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;YACnC,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC;YAC/B,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC;YAC/B,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;YACnC,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;IAED,IAAW,sBAAsB;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,IAAW,wBAAwB;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IACpD,CAAC;IAED,IAAW,0BAA0B;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IAED,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IACjD,CAAC;IAED,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;IACxD,CAAC;IAED,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IACnD,CAAC;IAED,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IACjD,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,4BAA4B,CAAC,CAAC;IAChE,CAAC;IAED,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"project-paths.js","sourceRoot":"","sources":["../../../src/containers/project/project-paths.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
2
|
+
Cyberismo
|
|
3
|
+
Copyright © Cyberismo Ltd and contributors 2025
|
|
4
|
+
|
|
5
|
+
This program is free software: you can redistribute it and/or modify it under
|
|
6
|
+
the terms of the GNU Affero General Public License version 3 as published by
|
|
7
|
+
the Free Software Foundation. This program is distributed in the hope that it
|
|
8
|
+
will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|
9
|
+
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
10
|
+
See the GNU Affero General Public License for more details.
|
|
11
|
+
You should have received a copy of the GNU Affero General Public
|
|
12
|
+
License along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
13
|
+
*/
|
|
14
|
+
import { CalculationResource } from '../../resources/calculation-resource.js';
|
|
15
|
+
import { CardTypeResource } from '../../resources/card-type-resource.js';
|
|
16
|
+
import { FieldTypeResource } from '../../resources/field-type-resource.js';
|
|
17
|
+
import { GraphModelResource } from '../../resources/graph-model-resource.js';
|
|
18
|
+
import { GraphViewResource } from '../../resources/graph-view-resource.js';
|
|
19
|
+
import { LinkTypeResource } from '../../resources/link-type-resource.js';
|
|
20
|
+
import { ReportResource } from '../../resources/report-resource.js';
|
|
21
|
+
import { TemplateResource } from '../../resources/template-resource.js';
|
|
22
|
+
import { WorkflowResource } from '../../resources/workflow-resource.js';
|
|
23
|
+
import type { Project } from '../project.js';
|
|
24
|
+
import type { ResourceFolderType } from '../../interfaces/project-interfaces.js';
|
|
25
|
+
import type { ResourceName } from '../../utils/resource-utils.js';
|
|
26
|
+
export interface Resource {
|
|
27
|
+
name: string;
|
|
28
|
+
path: string;
|
|
29
|
+
}
|
|
30
|
+
export type ResourceMap = {
|
|
31
|
+
calculations: CalculationResource;
|
|
32
|
+
cardTypes: CardTypeResource;
|
|
33
|
+
fieldTypes: FieldTypeResource;
|
|
34
|
+
graphViews: GraphViewResource;
|
|
35
|
+
graphModels: GraphModelResource;
|
|
36
|
+
linkTypes: LinkTypeResource;
|
|
37
|
+
reports: ReportResource;
|
|
38
|
+
templates: TemplateResource;
|
|
39
|
+
workflows: WorkflowResource;
|
|
40
|
+
};
|
|
41
|
+
export type ExtractResourceType<T extends string> = T extends `${string}/${infer R}/${string}` ? R : never;
|
|
42
|
+
export type SafeExtract<T extends string> = ExtractResourceType<T> extends keyof ResourceMap ? ExtractResourceType<T> : never;
|
|
43
|
+
export declare enum ResourcesFrom {
|
|
44
|
+
all = "all",
|
|
45
|
+
importedOnly = "imported",
|
|
46
|
+
localOnly = "local"
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* ResourceCache handles all resource collecting, caching, and management.
|
|
50
|
+
* Uses a two-layered approach:
|
|
51
|
+
* 1. lightweight registry for collecting items that exist on disk
|
|
52
|
+
* 2. more complex instance cache that contains full instance data of a resource.
|
|
53
|
+
*
|
|
54
|
+
* Resource populates the first layer automatically when created.
|
|
55
|
+
* When new instance of a resource is created by an access function (e.g. resourceByType() or resourceByName()),
|
|
56
|
+
* instance of resource is saved to cache.
|
|
57
|
+
*
|
|
58
|
+
*/
|
|
59
|
+
export declare class ResourceCache {
|
|
60
|
+
private resourceRegistry;
|
|
61
|
+
private instanceCache;
|
|
62
|
+
private project;
|
|
63
|
+
private constructor();
|
|
64
|
+
private initialize;
|
|
65
|
+
private buildResourceName;
|
|
66
|
+
private createResourceObject;
|
|
67
|
+
private collectAllResources;
|
|
68
|
+
private collectLocalResources;
|
|
69
|
+
private collectModuleResources;
|
|
70
|
+
private collectResourceContentFiles;
|
|
71
|
+
private collectResourcesOfType;
|
|
72
|
+
private deleteKey;
|
|
73
|
+
private hasSetContentFiles;
|
|
74
|
+
private static get logger();
|
|
75
|
+
private normalizeResourceName;
|
|
76
|
+
/**
|
|
77
|
+
* Add a resource instance to cache. If using
|
|
78
|
+
* @param name Name of the resource to update
|
|
79
|
+
* @param instance New data for the resource.
|
|
80
|
+
*/
|
|
81
|
+
addResource(name: string | ResourceName, instance: unknown): void;
|
|
82
|
+
/**
|
|
83
|
+
* Refresh local resources in the cache.
|
|
84
|
+
*/
|
|
85
|
+
changed(): void;
|
|
86
|
+
/**
|
|
87
|
+
* Refresh module resources in the cache.
|
|
88
|
+
* @param moduleName Name of the module. If given, will only update this modules resources.
|
|
89
|
+
*/
|
|
90
|
+
changedModules(moduleName?: string): void;
|
|
91
|
+
/**
|
|
92
|
+
* Change resource name in cache, but keep instance information.
|
|
93
|
+
* Cache has to create cache key for new and move the existing instance to it.
|
|
94
|
+
* @param oldName Old name of the resource
|
|
95
|
+
* @param newName New name of the resource
|
|
96
|
+
*/
|
|
97
|
+
changeResourceName(oldName: string, newName: string): void;
|
|
98
|
+
/**
|
|
99
|
+
* Creates and initializes a ResourceCache.
|
|
100
|
+
* This performs filesystem I/O to collect all resources.
|
|
101
|
+
* @param project Project to use
|
|
102
|
+
* @returns Initialized ResourceCache
|
|
103
|
+
*/
|
|
104
|
+
static create(project: Project): ResourceCache;
|
|
105
|
+
/**
|
|
106
|
+
* Handle file system changes
|
|
107
|
+
* This is used by the Watcher in the Project class.
|
|
108
|
+
* @param fileName A changed file in the file system.
|
|
109
|
+
*/
|
|
110
|
+
handleFileSystemChange(fileName: string): void;
|
|
111
|
+
/**
|
|
112
|
+
* Invalidate a resource instance.
|
|
113
|
+
* This forces reload on next access.
|
|
114
|
+
* @param name Name of the resource to invalidate.
|
|
115
|
+
*/
|
|
116
|
+
invalidateResource(name: string | ResourceName): void;
|
|
117
|
+
/**
|
|
118
|
+
* Get module names.
|
|
119
|
+
* @returns Module names.
|
|
120
|
+
*/
|
|
121
|
+
moduleNames(): string[];
|
|
122
|
+
/**
|
|
123
|
+
* Get certain types of resources from a specific module.
|
|
124
|
+
* @param type Type of resource to fetch
|
|
125
|
+
* @param moduleName Name of the module
|
|
126
|
+
* @returns resources names from a specific module.
|
|
127
|
+
*/
|
|
128
|
+
moduleResourceNames(type: ResourceFolderType, moduleName: string): string[];
|
|
129
|
+
/**
|
|
130
|
+
* Invalidate all resources of a specific module.
|
|
131
|
+
* @param moduleName Name of the module.
|
|
132
|
+
*/
|
|
133
|
+
removeModule(moduleName: string): void;
|
|
134
|
+
/**
|
|
135
|
+
* Remove a resource from cache. This includes both registry and instance cache.
|
|
136
|
+
* @param name Resource to remove.
|
|
137
|
+
*/
|
|
138
|
+
removeResource(name: string | ResourceName): void;
|
|
139
|
+
/**
|
|
140
|
+
* Get resource with explicit type parameter
|
|
141
|
+
* @param name Name of the resource
|
|
142
|
+
* @param type Type of the resource
|
|
143
|
+
* @template T Resource type
|
|
144
|
+
* @throws If resource creation fails.
|
|
145
|
+
* @returns Typed resource that matches name and type.
|
|
146
|
+
*/
|
|
147
|
+
resourceByType<T extends keyof ResourceMap>(name: string, type: T): ResourceMap[T];
|
|
148
|
+
/**
|
|
149
|
+
* Get resource by ResourceName object
|
|
150
|
+
* @param name Resource name.
|
|
151
|
+
* @throws If resource creation fails.
|
|
152
|
+
* @returns Typed resource that matches the name.
|
|
153
|
+
*/
|
|
154
|
+
resourceByName<T extends keyof ResourceMap>(name: ResourceName): ResourceMap[T];
|
|
155
|
+
/**
|
|
156
|
+
* Check if a resource exists.
|
|
157
|
+
* @param name Resource name to check.
|
|
158
|
+
* @returns true, if resource is in the cache; false otherwise.
|
|
159
|
+
*/
|
|
160
|
+
has(name: string | ResourceName): boolean;
|
|
161
|
+
/**
|
|
162
|
+
* Get resources with full metadata for a specific type
|
|
163
|
+
* @param type Type of resources to get.
|
|
164
|
+
* @param from Where to return resources from (all, local, imported modules)
|
|
165
|
+
* @template T Resource type
|
|
166
|
+
* @returns Array of resources with metadata.
|
|
167
|
+
*/
|
|
168
|
+
resources<T extends keyof ResourceMap>(type: T, from?: ResourcesFrom): Array<ResourceMap[T]>;
|
|
169
|
+
}
|