@cyberismo/data-handler 0.0.14 → 0.0.16
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 +8 -4
- package/dist/card-metadata-updater.js.map +1 -1
- package/dist/command-handler.d.ts +4 -0
- package/dist/command-handler.js +29 -19
- package/dist/command-handler.js.map +1 -1
- package/dist/command-manager.d.ts +25 -2
- package/dist/command-manager.js +30 -5
- package/dist/command-manager.js.map +1 -1
- package/dist/commands/create.d.ts +1 -1
- package/dist/commands/create.js +45 -93
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/edit.d.ts +1 -15
- package/dist/commands/edit.js +15 -89
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/export.d.ts +11 -2
- package/dist/commands/export.js +58 -58
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/import.d.ts +9 -1
- package/dist/commands/import.js +17 -11
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/move.d.ts +1 -2
- package/dist/commands/move.js +107 -146
- package/dist/commands/move.js.map +1 -1
- package/dist/commands/remove.d.ts +8 -1
- package/dist/commands/remove.js +17 -48
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/rename.d.ts +4 -9
- package/dist/commands/rename.js +34 -108
- package/dist/commands/rename.js.map +1 -1
- package/dist/commands/show.d.ts +22 -34
- package/dist/commands/show.js +103 -151
- package/dist/commands/show.js.map +1 -1
- package/dist/commands/transition.d.ts +9 -2
- package/dist/commands/transition.js +49 -44
- package/dist/commands/transition.js.map +1 -1
- package/dist/commands/update.d.ts +18 -12
- package/dist/commands/update.js +34 -18
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/validate.d.ts +18 -10
- package/dist/commands/validate.js +101 -47
- package/dist/commands/validate.js.map +1 -1
- package/dist/containers/card-container.d.ts +87 -24
- package/dist/containers/card-container.js +183 -279
- package/dist/containers/card-container.js.map +1 -1
- package/dist/containers/project/calculation-engine.d.ts +13 -4
- package/dist/containers/project/calculation-engine.js +79 -77
- package/dist/containers/project/calculation-engine.js.map +1 -1
- package/dist/containers/project/card-cache.d.ts +146 -0
- package/dist/containers/project/card-cache.js +411 -0
- package/dist/containers/project/card-cache.js.map +1 -0
- package/dist/containers/project/project-paths.d.ts +5 -4
- package/dist/containers/project/project-paths.js +16 -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 +507 -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 +114 -195
- package/dist/containers/project.js +425 -535
- package/dist/containers/project.js.map +1 -1
- package/dist/containers/template.d.ts +22 -32
- package/dist/containers/template.js +113 -115
- package/dist/containers/template.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces/folder-content-interfaces.d.ts +7 -4
- package/dist/interfaces/folder-content-interfaces.js +3 -3
- package/dist/interfaces/folder-content-interfaces.js.map +1 -1
- package/dist/interfaces/macros.d.ts +1 -0
- package/dist/interfaces/macros.js +1 -1
- package/dist/interfaces/macros.js.map +1 -1
- package/dist/interfaces/project-interfaces.d.ts +7 -5
- package/dist/interfaces/project-interfaces.js.map +1 -1
- package/dist/interfaces/resource-interfaces.d.ts +25 -22
- package/dist/interfaces/resource-interfaces.js +3 -0
- package/dist/interfaces/resource-interfaces.js.map +1 -1
- package/dist/macros/common.d.ts +10 -10
- package/dist/macros/createCards/index.d.ts +0 -13
- package/dist/macros/createCards/index.js.map +1 -1
- package/dist/macros/createCards/types.d.ts +44 -0
- package/dist/macros/createCards/types.js +15 -0
- package/dist/macros/createCards/types.js.map +1 -0
- package/dist/macros/graph/index.d.ts +2 -6
- package/dist/macros/graph/index.js +14 -28
- package/dist/macros/graph/index.js.map +1 -1
- package/dist/macros/graph/types.d.ts +23 -0
- package/dist/macros/graph/types.js +15 -0
- package/dist/macros/graph/types.js.map +1 -0
- package/dist/macros/image/index.d.ts +8 -16
- package/dist/macros/image/index.js +36 -33
- package/dist/macros/image/index.js.map +1 -1
- package/dist/macros/image/types.d.ts +38 -0
- package/dist/macros/image/types.js +15 -0
- package/dist/macros/image/types.js.map +1 -0
- package/dist/macros/include/index.d.ts +1 -6
- package/dist/macros/include/index.js +4 -7
- package/dist/macros/include/index.js.map +1 -1
- package/dist/macros/include/types.d.ts +31 -0
- package/dist/macros/include/types.js +15 -0
- package/dist/macros/include/types.js.map +1 -0
- 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/percentage/index.d.ts +0 -6
- package/dist/macros/percentage/index.js.map +1 -1
- package/dist/macros/percentage/types.d.ts +31 -0
- package/dist/macros/percentage/types.js +15 -0
- package/dist/macros/percentage/types.js.map +1 -0
- package/dist/macros/report/index.d.ts +0 -3
- package/dist/macros/report/index.js +3 -6
- package/dist/macros/report/index.js.map +1 -1
- package/dist/macros/report/types.d.ts +19 -0
- package/dist/macros/report/types.js +15 -0
- package/dist/macros/report/types.js.map +1 -0
- package/dist/macros/scoreCard/index.d.ts +0 -6
- package/dist/macros/scoreCard/index.js.map +1 -1
- package/dist/macros/scoreCard/types.d.ts +31 -0
- package/dist/macros/scoreCard/types.js +15 -0
- package/dist/macros/scoreCard/types.js.map +1 -0
- package/dist/macros/types.d.ts +25 -0
- package/dist/macros/types.js +2 -0
- package/dist/macros/types.js.map +1 -0
- package/dist/macros/vega/index.d.ts +0 -4
- package/dist/macros/vega/index.js.map +1 -1
- package/dist/macros/vega/types.d.ts +20 -0
- package/dist/macros/vega/types.js +2 -0
- package/dist/macros/vega/types.js.map +1 -0
- package/dist/macros/vegalite/index.d.ts +0 -4
- package/dist/macros/vegalite/index.js.map +1 -1
- package/dist/macros/vegalite/types.d.ts +20 -0
- package/dist/macros/vegalite/types.js +15 -0
- package/dist/macros/vegalite/types.js.map +1 -0
- package/dist/macros/xref/index.d.ts +0 -3
- package/dist/macros/xref/index.js +5 -14
- package/dist/macros/xref/index.js.map +1 -1
- package/dist/macros/xref/types.d.ts +19 -0
- package/dist/macros/xref/types.js +15 -0
- package/dist/macros/xref/types.js.map +1 -0
- package/dist/module-manager.d.ts +16 -3
- package/dist/module-manager.js +55 -23
- package/dist/module-manager.js.map +1 -1
- package/dist/project-settings.d.ts +16 -3
- package/dist/project-settings.js +79 -14
- package/dist/project-settings.js.map +1 -1
- package/dist/resources/calculation-resource.d.ts +6 -33
- package/dist/resources/calculation-resource.js +11 -60
- package/dist/resources/calculation-resource.js.map +1 -1
- package/dist/resources/card-type-resource.d.ts +10 -22
- package/dist/resources/card-type-resource.js +46 -66
- 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 +8 -22
- package/dist/resources/field-type-resource.js +35 -60
- package/dist/resources/field-type-resource.js.map +1 -1
- package/dist/resources/file-resource.d.ts +14 -35
- package/dist/resources/file-resource.js +22 -301
- package/dist/resources/file-resource.js.map +1 -1
- package/dist/resources/folder-resource.d.ts +44 -66
- package/dist/resources/folder-resource.js +102 -149
- package/dist/resources/folder-resource.js.map +1 -1
- package/dist/resources/graph-model-resource.d.ts +9 -34
- package/dist/resources/graph-model-resource.js +18 -64
- package/dist/resources/graph-model-resource.js.map +1 -1
- package/dist/resources/graph-view-resource.d.ts +9 -29
- package/dist/resources/graph-view-resource.js +13 -48
- package/dist/resources/graph-view-resource.js.map +1 -1
- package/dist/resources/link-type-resource.d.ts +9 -23
- package/dist/resources/link-type-resource.js +11 -33
- package/dist/resources/link-type-resource.js.map +1 -1
- package/dist/resources/report-resource.d.ts +10 -23
- package/dist/resources/report-resource.js +20 -67
- package/dist/resources/report-resource.js.map +1 -1
- package/dist/resources/resource-object.d.ts +143 -23
- package/dist/resources/resource-object.js +369 -48
- package/dist/resources/resource-object.js.map +1 -1
- package/dist/resources/template-resource.d.ts +10 -17
- package/dist/resources/template-resource.js +19 -27
- package/dist/resources/template-resource.js.map +1 -1
- package/dist/resources/workflow-resource.d.ts +9 -25
- package/dist/resources/workflow-resource.js +25 -55
- package/dist/resources/workflow-resource.js.map +1 -1
- package/dist/utils/card-utils.d.ts +69 -19
- package/dist/utils/card-utils.js +179 -30
- package/dist/utils/card-utils.js.map +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 +14 -7
- package/dist/utils/clingo-facts.js.map +1 -1
- package/dist/utils/clingo-parser.js +1 -1
- package/dist/utils/clingo-parser.js.map +1 -1
- package/dist/utils/constants.d.ts +2 -0
- package/dist/utils/constants.js +4 -0
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/csv.js +1 -1
- package/dist/utils/csv.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 +11 -11
- package/src/card-metadata-updater.ts +9 -7
- package/src/command-handler.ts +35 -23
- package/src/command-manager.ts +32 -19
- package/src/commands/create.ts +59 -160
- package/src/commands/edit.ts +16 -132
- package/src/commands/export.ts +71 -81
- package/src/commands/import.ts +26 -18
- package/src/commands/move.ts +143 -179
- package/src/commands/remove.ts +20 -59
- package/src/commands/rename.ts +45 -156
- package/src/commands/show.ts +153 -211
- package/src/commands/transition.ts +53 -58
- package/src/commands/update.ts +44 -23
- package/src/commands/validate.ts +108 -82
- package/src/containers/card-container.ts +200 -360
- package/src/containers/project/calculation-engine.ts +81 -105
- package/src/containers/project/card-cache.ts +497 -0
- package/src/containers/project/project-paths.ts +21 -13
- package/src/containers/project/resource-cache.ts +648 -0
- package/src/containers/project/resource-handler.ts +265 -0
- package/src/containers/project.ts +551 -693
- package/src/containers/template.ts +129 -142
- package/src/index.ts +1 -0
- package/src/interfaces/folder-content-interfaces.ts +14 -7
- package/src/interfaces/macros.ts +2 -0
- package/src/interfaces/project-interfaces.ts +14 -7
- package/src/interfaces/resource-interfaces.ts +30 -27
- package/src/macros/createCards/index.ts +1 -12
- package/src/macros/createCards/types.ts +46 -0
- package/src/macros/graph/index.ts +27 -52
- package/src/macros/graph/types.ts +24 -0
- package/src/macros/image/index.ts +50 -61
- package/src/macros/image/types.ts +39 -0
- package/src/macros/include/index.ts +6 -15
- package/src/macros/include/types.ts +32 -0
- package/src/macros/index.ts +2 -2
- package/src/macros/percentage/index.ts +1 -7
- package/src/macros/percentage/types.ts +32 -0
- package/src/macros/report/index.ts +4 -13
- package/src/macros/report/types.ts +20 -0
- package/src/macros/scoreCard/index.ts +1 -7
- package/src/macros/scoreCard/types.ts +32 -0
- package/src/macros/types.ts +48 -0
- package/src/macros/vega/index.ts +1 -4
- package/src/macros/vega/types.ts +21 -0
- package/src/macros/vegalite/index.ts +1 -4
- package/src/macros/vegalite/types.ts +22 -0
- package/src/macros/xref/index.ts +6 -20
- package/src/macros/xref/types.ts +20 -0
- package/src/module-manager.ts +79 -22
- package/src/project-settings.ts +84 -15
- package/src/resources/calculation-resource.ts +21 -91
- package/src/resources/card-type-resource.ts +74 -109
- package/src/resources/create-defaults.ts +3 -2
- package/src/resources/field-type-resource.ts +61 -104
- package/src/resources/file-resource.ts +33 -441
- package/src/resources/folder-resource.ts +130 -207
- package/src/resources/graph-model-resource.ts +36 -95
- package/src/resources/graph-view-resource.ts +28 -70
- package/src/resources/link-type-resource.ts +23 -53
- package/src/resources/report-resource.ts +34 -96
- package/src/resources/resource-object.ts +511 -66
- package/src/resources/template-resource.ts +32 -44
- package/src/resources/workflow-resource.ts +42 -85
- package/src/utils/card-utils.ts +217 -31
- package/src/utils/clingo-fact-builder.ts +28 -16
- package/src/utils/clingo-facts.ts +16 -7
- package/src/utils/clingo-parser.ts +1 -1
- package/src/utils/constants.ts +6 -0
- package/src/utils/csv.ts +1 -1
- package/src/utils/resource-utils.ts +2 -1
- package/dist/containers/project/resource-collector.d.ts +0 -87
- package/dist/containers/project/resource-collector.js +0 -337
- package/dist/containers/project/resource-collector.js.map +0 -1
- package/src/containers/project/resource-collector.ts +0 -396
package/dist/commands/show.js
CHANGED
|
@@ -11,48 +11,61 @@
|
|
|
11
11
|
License along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
12
12
|
*/
|
|
13
13
|
// node
|
|
14
|
-
import {
|
|
14
|
+
import { readFileSync } from 'node:fs';
|
|
15
15
|
import { homedir } from 'node:os';
|
|
16
16
|
import { join, resolve } from 'node:path';
|
|
17
17
|
import { spawn } from 'node:child_process';
|
|
18
18
|
import { writeFile } from 'node:fs/promises';
|
|
19
19
|
import { MODULE_LIST_FULL_PATH } from './fetch.js';
|
|
20
|
-
import mime from 'mime-types';
|
|
21
|
-
import { Project } from '../containers/project.js';
|
|
22
|
-
import { resourceName, resourceNameToString, } from '../utils/resource-utils.js';
|
|
23
|
-
import { TemplateResource } from '../resources/template-resource.js';
|
|
24
20
|
import { UserPreferences } from '../utils/user-preferences.js';
|
|
25
21
|
import ReportMacro from '../macros/report/index.js';
|
|
26
22
|
import TaskQueue from '../macros/task-queue.js';
|
|
27
23
|
import { evaluateMacros } from '../macros/index.js';
|
|
28
|
-
import { FolderResource } from '../resources/folder-resource.js';
|
|
29
24
|
import { readJsonFile } from '../utils/json.js';
|
|
30
25
|
import { getChildLogger } from '../utils/log-utils.js';
|
|
26
|
+
import { buildCardHierarchy, flattenCardArray } from '../utils/card-utils.js';
|
|
31
27
|
/**
|
|
32
28
|
* Show command.
|
|
33
29
|
*/
|
|
34
30
|
export class Show {
|
|
35
31
|
project;
|
|
36
|
-
|
|
32
|
+
resourceFunctions = {
|
|
33
|
+
calculations: (from) => this.resourceNames('calculations', from),
|
|
34
|
+
cardTypes: (from) => this.resourceNames('cardTypes', from),
|
|
35
|
+
fieldTypes: (from) => this.resourceNames('fieldTypes', from),
|
|
36
|
+
graphModels: (from) => this.resourceNames('graphModels', from),
|
|
37
|
+
graphViews: (from) => this.resourceNames('graphViews', from),
|
|
38
|
+
linkTypes: (from) => this.resourceNames('linkTypes', from),
|
|
39
|
+
reports: (from) => this.resourceNames('reports', from),
|
|
40
|
+
templates: (from) => this.resourceNames('templates', from),
|
|
41
|
+
workflows: (from) => this.resourceNames('workflows', from),
|
|
42
|
+
};
|
|
37
43
|
constructor(project) {
|
|
38
44
|
this.project = project;
|
|
39
|
-
this.resourceFunction = new Map([
|
|
40
|
-
['calculations', this.project.calculations.bind(this.project)],
|
|
41
|
-
['cardTypes', this.project.cardTypes.bind(this.project)],
|
|
42
|
-
['fieldTypes', this.project.fieldTypes.bind(this.project)],
|
|
43
|
-
['graphModels', this.project.graphModels.bind(this.project)],
|
|
44
|
-
['graphViews', this.project.graphViews.bind(this.project)],
|
|
45
|
-
['linkTypes', this.project.linkTypes.bind(this.project)],
|
|
46
|
-
['reports', this.project.reports.bind(this.project)],
|
|
47
|
-
['templates', this.project.templates.bind(this.project)],
|
|
48
|
-
['workflows', this.project.workflows.bind(this.project)],
|
|
49
|
-
]);
|
|
50
45
|
}
|
|
51
46
|
get logger() {
|
|
52
47
|
return getChildLogger({
|
|
53
48
|
module: 'show',
|
|
54
49
|
});
|
|
55
50
|
}
|
|
51
|
+
// Gets all template attachments
|
|
52
|
+
async attachmentsFromTemplates() {
|
|
53
|
+
const templateAttachments = [];
|
|
54
|
+
const templates = this.project.resources.templates();
|
|
55
|
+
for (const template of templates) {
|
|
56
|
+
const templateObject = template.templateObject();
|
|
57
|
+
if (templateObject) {
|
|
58
|
+
templateAttachments.push(...templateObject.attachments());
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return templateAttachments;
|
|
62
|
+
}
|
|
63
|
+
// Fetch resource names as a list
|
|
64
|
+
resourceNames(resourceType, from) {
|
|
65
|
+
return this.project.resources
|
|
66
|
+
.resourceTypes(resourceType, from)
|
|
67
|
+
.map((item) => item.data?.name || '');
|
|
68
|
+
}
|
|
56
69
|
// Collect all labels from cards.
|
|
57
70
|
collectLabels = (cards) => {
|
|
58
71
|
return cards.reduce((labels, card) => {
|
|
@@ -60,26 +73,12 @@ export class Show {
|
|
|
60
73
|
if (card.metadata?.labels) {
|
|
61
74
|
labels.push(...card.metadata.labels);
|
|
62
75
|
}
|
|
63
|
-
// Recursively collect labels from subcards, if they exist
|
|
64
|
-
if (card.children) {
|
|
65
|
-
labels.push(...this.collectLabels(card.children));
|
|
66
|
-
}
|
|
67
76
|
return labels;
|
|
68
77
|
}, []);
|
|
69
78
|
};
|
|
70
79
|
// Returns attachment details
|
|
71
|
-
|
|
72
|
-
const
|
|
73
|
-
content: false,
|
|
74
|
-
metadata: true,
|
|
75
|
-
children: false,
|
|
76
|
-
parent: false,
|
|
77
|
-
attachments: true,
|
|
78
|
-
};
|
|
79
|
-
const card = await this.project.cardDetailsById(cardKey, details);
|
|
80
|
-
if (card === undefined) {
|
|
81
|
-
throw new Error(`Card '${cardKey}' does not exist in the project`);
|
|
82
|
-
}
|
|
80
|
+
getAttachment(cardKey, filename) {
|
|
81
|
+
const card = this.project.findCard(cardKey);
|
|
83
82
|
const attachment = card.attachments?.find((a) => a.fileName === filename) ?? undefined;
|
|
84
83
|
return attachment;
|
|
85
84
|
}
|
|
@@ -103,30 +102,23 @@ export class Show {
|
|
|
103
102
|
* Shows all template cards in a project.
|
|
104
103
|
* @returns all template cards in a project.
|
|
105
104
|
*/
|
|
106
|
-
|
|
107
|
-
return
|
|
108
|
-
const
|
|
105
|
+
showAllTemplateCards() {
|
|
106
|
+
return this.project.resources.templates().map((template) => {
|
|
107
|
+
const cards = template.templateObject().listCards();
|
|
108
|
+
const buildCards = buildCardHierarchy(cards);
|
|
109
109
|
return {
|
|
110
|
-
name: template.name,
|
|
111
|
-
cards:
|
|
110
|
+
name: template.data?.name || '',
|
|
111
|
+
cards: buildCards,
|
|
112
112
|
};
|
|
113
|
-
})
|
|
113
|
+
});
|
|
114
114
|
}
|
|
115
115
|
/**
|
|
116
116
|
* Shows all attachments (either template or project attachments) from a project.
|
|
117
117
|
* @returns array of card attachments
|
|
118
118
|
*/
|
|
119
119
|
async showAttachments() {
|
|
120
|
-
const attachments =
|
|
121
|
-
const templateAttachments =
|
|
122
|
-
const templates = await this.project.templates();
|
|
123
|
-
for (const template of templates) {
|
|
124
|
-
const templateResource = new TemplateResource(this.project, resourceName(template.name));
|
|
125
|
-
const templateObject = templateResource.templateObject();
|
|
126
|
-
if (templateObject) {
|
|
127
|
-
templateAttachments.push(...(await templateObject.attachments()));
|
|
128
|
-
}
|
|
129
|
-
}
|
|
120
|
+
const attachments = this.project.attachments();
|
|
121
|
+
const templateAttachments = await this.attachmentsFromTemplates();
|
|
130
122
|
attachments.push(...templateAttachments);
|
|
131
123
|
return attachments;
|
|
132
124
|
}
|
|
@@ -136,27 +128,19 @@ export class Show {
|
|
|
136
128
|
* @param filename attachment filename
|
|
137
129
|
* @returns attachment details
|
|
138
130
|
*/
|
|
139
|
-
|
|
131
|
+
showAttachment(cardKey, filename) {
|
|
140
132
|
if (!cardKey) {
|
|
141
133
|
throw new Error(`Mandatory parameter 'cardKey' missing`);
|
|
142
134
|
}
|
|
143
|
-
const attachment =
|
|
144
|
-
|
|
145
|
-
if (attachment) {
|
|
146
|
-
attachmentPath = `${attachment.path}/${attachment.fileName}`;
|
|
147
|
-
}
|
|
148
|
-
if (!attachment || !existsSync(attachmentPath)) {
|
|
135
|
+
const attachment = this.getAttachment(cardKey, filename);
|
|
136
|
+
if (!attachment) {
|
|
149
137
|
throw new Error(`Attachment '${filename}' not found for card ${cardKey}`);
|
|
150
138
|
}
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
}
|
|
157
|
-
const payload = { fileBuffer, mimeType };
|
|
158
|
-
return payload;
|
|
159
|
-
}
|
|
139
|
+
const attachmentPath = `${attachment.path}/${attachment.fileName}`;
|
|
140
|
+
const fileBuffer = readFileSync(attachmentPath);
|
|
141
|
+
const mimeType = attachment.mimeType || 'application/octet-stream';
|
|
142
|
+
const payload = { fileBuffer, mimeType };
|
|
143
|
+
return payload;
|
|
160
144
|
}
|
|
161
145
|
/**
|
|
162
146
|
* Opens an attachment using a configured application or the operating system's default application.
|
|
@@ -166,7 +150,7 @@ export class Show {
|
|
|
166
150
|
* @todo: Move away from Show.
|
|
167
151
|
*/
|
|
168
152
|
async openAttachment(cardKey, filename, waitDelay = 1000) {
|
|
169
|
-
const attachment =
|
|
153
|
+
const attachment = this.getAttachment(cardKey, filename);
|
|
170
154
|
if (!attachment) {
|
|
171
155
|
throw new Error(`Attachment '${filename}' not found for card ${cardKey}`);
|
|
172
156
|
}
|
|
@@ -195,19 +179,26 @@ export class Show {
|
|
|
195
179
|
/**
|
|
196
180
|
* Shows details of a particular card (template card, or project card)
|
|
197
181
|
* @note Note that parameter 'cardKey' is optional due to technical limitations of class calling this class. It must be defined to get valid results.
|
|
198
|
-
* @param details card details to show
|
|
199
182
|
* @param cardKey card key to find
|
|
183
|
+
* @param contentType Content format in which content is to be shown
|
|
200
184
|
* @returns card details
|
|
201
185
|
*/
|
|
202
|
-
|
|
186
|
+
showCardDetails(cardKey, contentType) {
|
|
203
187
|
if (!cardKey) {
|
|
204
188
|
throw new Error(`Mandatory parameter 'cardKey' missing`);
|
|
205
189
|
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
190
|
+
// todo: Make a constant about this
|
|
191
|
+
const details = {
|
|
192
|
+
parent: true,
|
|
193
|
+
metadata: true,
|
|
194
|
+
children: true,
|
|
195
|
+
attachments: true,
|
|
196
|
+
content: true,
|
|
197
|
+
};
|
|
198
|
+
if (contentType) {
|
|
199
|
+
details.contentType = contentType;
|
|
209
200
|
}
|
|
210
|
-
return
|
|
201
|
+
return this.project.findCard(cardKey, details);
|
|
211
202
|
}
|
|
212
203
|
/**
|
|
213
204
|
* Shows all cards (either template or project cards) from a project.
|
|
@@ -230,52 +221,13 @@ export class Show {
|
|
|
230
221
|
* @returns array of card type details
|
|
231
222
|
*/
|
|
232
223
|
async showCardTypesWithDetails() {
|
|
233
|
-
const
|
|
234
|
-
for (const cardType of
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
promiseContainer.push(cardTypeDetails);
|
|
224
|
+
const container = [];
|
|
225
|
+
for (const cardType of this.project.resources.cardTypes()) {
|
|
226
|
+
if (cardType.data) {
|
|
227
|
+
container.push(cardType.data);
|
|
238
228
|
}
|
|
239
229
|
}
|
|
240
|
-
|
|
241
|
-
return results.filter((item) => item);
|
|
242
|
-
}
|
|
243
|
-
/**
|
|
244
|
-
* Shows the content of a file in a resource.
|
|
245
|
-
* TODO: To be removed
|
|
246
|
-
* @deprecated
|
|
247
|
-
* @param resourceName Name of the resource.
|
|
248
|
-
* @param fileName Name of the file to show.
|
|
249
|
-
* @returns the content of the file.
|
|
250
|
-
*/
|
|
251
|
-
async showFile(resourceName, fileName) {
|
|
252
|
-
const resourceNameStr = resourceNameToString(resourceName);
|
|
253
|
-
if (!(await this.project.resourceExists(resourceName.type, resourceNameStr))) {
|
|
254
|
-
throw new Error(`Resource '${resourceNameStr}' does not exist in the project`);
|
|
255
|
-
}
|
|
256
|
-
const resource = Project.resourceObject(this.project, resourceName);
|
|
257
|
-
if (!(resource instanceof FolderResource)) {
|
|
258
|
-
throw new Error(`Resource '${resourceNameStr}' is not a folder resource`);
|
|
259
|
-
}
|
|
260
|
-
return resource.showFile(fileName);
|
|
261
|
-
}
|
|
262
|
-
/**
|
|
263
|
-
* Shows all file names in a folder resource.
|
|
264
|
-
* TODO: To be removed
|
|
265
|
-
* @deprecated
|
|
266
|
-
* @param resourceName Name of the resource.
|
|
267
|
-
* @returns all file names in the resource.
|
|
268
|
-
*/
|
|
269
|
-
async showFileNames(resourceName) {
|
|
270
|
-
const resourceNameStr = resourceNameToString(resourceName);
|
|
271
|
-
if (!(await this.project.resourceExists(resourceName.type, resourceNameStr))) {
|
|
272
|
-
throw new Error(`Resource '${resourceNameStr}' does not exist in the project`);
|
|
273
|
-
}
|
|
274
|
-
const resource = Project.resourceObject(this.project, resourceName);
|
|
275
|
-
if (!(resource instanceof FolderResource)) {
|
|
276
|
-
throw new Error(`Resource '${resourceNameStr}' is not a folder resource`);
|
|
277
|
-
}
|
|
278
|
-
return resource.showFileNames();
|
|
230
|
+
return container;
|
|
279
231
|
}
|
|
280
232
|
/**
|
|
281
233
|
* Shows importable modules.
|
|
@@ -290,9 +242,9 @@ export class Show {
|
|
|
290
242
|
async showImportableModules(showAll, showDetails) {
|
|
291
243
|
try {
|
|
292
244
|
const moduleList = (await readJsonFile(resolve(this.project.basePath, MODULE_LIST_FULL_PATH))).modules;
|
|
293
|
-
const currentModules =
|
|
245
|
+
const currentModules = this.project.resources.moduleNames();
|
|
294
246
|
const nonImportedModules = moduleList.filter((item) => {
|
|
295
|
-
return !currentModules.some((module) => item.name === module
|
|
247
|
+
return !currentModules.some((module) => item.name === module);
|
|
296
248
|
});
|
|
297
249
|
if (showAll && showDetails) {
|
|
298
250
|
return moduleList;
|
|
@@ -318,12 +270,9 @@ export class Show {
|
|
|
318
270
|
* Returns all unique labels in a project
|
|
319
271
|
* @returns labels in a list
|
|
320
272
|
*/
|
|
321
|
-
|
|
322
|
-
const cards =
|
|
323
|
-
const templateCards =
|
|
324
|
-
metadata: true,
|
|
325
|
-
children: true,
|
|
326
|
-
});
|
|
273
|
+
showLabels() {
|
|
274
|
+
const cards = flattenCardArray(this.project.showProjectCards(), this.project);
|
|
275
|
+
const templateCards = this.project.allTemplateCards();
|
|
327
276
|
const labels = this.collectLabels([...cards, ...templateCards]);
|
|
328
277
|
return Array.from(new Set(labels));
|
|
329
278
|
}
|
|
@@ -356,19 +305,17 @@ export class Show {
|
|
|
356
305
|
}
|
|
357
306
|
/**
|
|
358
307
|
* Returns all project cards in the project. Cards don't have content and nor metadata.
|
|
359
|
-
* @note AppUi uses this method.
|
|
360
308
|
* @returns array of cards
|
|
361
309
|
*/
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
return projectCards;
|
|
310
|
+
showProjectCards() {
|
|
311
|
+
return this.project.showProjectCards();
|
|
365
312
|
}
|
|
366
313
|
/**
|
|
367
314
|
* Shows all modules (if any) in a project.
|
|
368
315
|
* @returns all modules in a project.
|
|
369
316
|
*/
|
|
370
|
-
|
|
371
|
-
return
|
|
317
|
+
showModules() {
|
|
318
|
+
return this.project.resources.moduleNames().sort();
|
|
372
319
|
}
|
|
373
320
|
/**
|
|
374
321
|
* Shows details of a particular project.
|
|
@@ -382,12 +329,15 @@ export class Show {
|
|
|
382
329
|
* @param reportName Name of the report to show
|
|
383
330
|
* @param cardKey Card key to use for the report
|
|
384
331
|
* @param parameters Additional parameters for the report
|
|
332
|
+
* @param context Context for resource (includes a project instance)
|
|
385
333
|
* @param outputPath Optional output path for the report
|
|
386
334
|
* @returns Report results as a string
|
|
387
335
|
* @throws Error if the report does not exist
|
|
388
336
|
*/
|
|
389
337
|
async showReportResults(reportName, cardKey, parameters, context, outputPath) {
|
|
390
|
-
if (!
|
|
338
|
+
if (!this.project.resources
|
|
339
|
+
.reports()
|
|
340
|
+
.some((report) => report.data?.name === reportName)) {
|
|
391
341
|
throw new Error(`Report '${reportName}' does not exist`);
|
|
392
342
|
}
|
|
393
343
|
await this.project.calculationEngine.generate();
|
|
@@ -417,14 +367,15 @@ export class Show {
|
|
|
417
367
|
}
|
|
418
368
|
return outputPath ? '' : (result ?? '');
|
|
419
369
|
}
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
370
|
+
async showResource(name, arg2, arg3) {
|
|
371
|
+
const hasResourceType = typeof arg2 === 'string';
|
|
372
|
+
const resourceType = hasResourceType ? arg2 : null;
|
|
373
|
+
const showUse = hasResourceType ? arg3 : arg2;
|
|
374
|
+
const type = this.project.resources.extractType(name);
|
|
375
|
+
if (resourceType !== null && resourceType !== type) {
|
|
376
|
+
throw new Error(`While fetching '${name}': Expected type '${resourceType}', but got '${type}' instead`);
|
|
377
|
+
}
|
|
378
|
+
const resource = this.project.resources.byType(name, type);
|
|
428
379
|
const [details, usage] = await Promise.all([
|
|
429
380
|
resource?.show(),
|
|
430
381
|
showUse ? resource?.usage() : [],
|
|
@@ -445,31 +396,32 @@ export class Show {
|
|
|
445
396
|
* @returns sorted array of resources
|
|
446
397
|
*/
|
|
447
398
|
async showResources(type) {
|
|
448
|
-
const func = this.
|
|
399
|
+
const func = this.resourceFunctions[type];
|
|
449
400
|
if (!func)
|
|
450
401
|
return [];
|
|
451
|
-
return
|
|
402
|
+
return func().sort();
|
|
452
403
|
}
|
|
453
404
|
/**
|
|
454
405
|
* Shows all templates with full details in a project.
|
|
455
406
|
* @returns all templates in a project.
|
|
456
407
|
*/
|
|
457
408
|
async showTemplatesWithDetails() {
|
|
458
|
-
const
|
|
459
|
-
const
|
|
460
|
-
|
|
409
|
+
const templates = [];
|
|
410
|
+
for (const template of this.project.resources.templates()) {
|
|
411
|
+
templates.push(template.show());
|
|
412
|
+
}
|
|
413
|
+
return templates;
|
|
461
414
|
}
|
|
462
415
|
/**
|
|
463
416
|
* Shows all workflows with full details in a project.
|
|
464
417
|
* @returns workflows with full details
|
|
465
418
|
*/
|
|
466
|
-
|
|
467
|
-
const
|
|
468
|
-
for (const workflow of
|
|
469
|
-
|
|
419
|
+
showWorkflowsWithDetails() {
|
|
420
|
+
const workflows = [];
|
|
421
|
+
for (const workflow of this.project.resources.workflows()) {
|
|
422
|
+
workflows.push(workflow.data);
|
|
470
423
|
}
|
|
471
|
-
|
|
472
|
-
return results.filter((item) => item);
|
|
424
|
+
return workflows;
|
|
473
425
|
}
|
|
474
426
|
}
|
|
475
427
|
//# sourceMappingURL=show.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,16 +10,23 @@
|
|
|
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 { WorkflowState } from '../interfaces/resource-interfaces.js';
|
|
14
13
|
import type { Project } from '../containers/project.js';
|
|
14
|
+
import type { WorkflowState } from '../interfaces/resource-interfaces.js';
|
|
15
|
+
/**
|
|
16
|
+
* Handles transitions.
|
|
17
|
+
*/
|
|
15
18
|
export declare class Transition {
|
|
16
19
|
private project;
|
|
20
|
+
/**
|
|
21
|
+
* Creates an instance of Transition command.
|
|
22
|
+
* @param project Project to use.
|
|
23
|
+
*/
|
|
17
24
|
constructor(project: Project);
|
|
25
|
+
private transitionChangesQuery;
|
|
18
26
|
/**
|
|
19
27
|
* Transitions a card from its current state to a new state.
|
|
20
28
|
* @param cardKey card key
|
|
21
29
|
* @param transition which transition to do
|
|
22
30
|
*/
|
|
23
31
|
cardTransition(cardKey: string, transition: WorkflowState): Promise<void>;
|
|
24
|
-
private transitionChangesQuery;
|
|
25
32
|
}
|
|
@@ -12,40 +12,51 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import { ActionGuard } from '../permissions/action-guard.js';
|
|
14
14
|
import { CardMetadataUpdater } from '../card-metadata-updater.js';
|
|
15
|
+
/**
|
|
16
|
+
* Handles transitions.
|
|
17
|
+
*/
|
|
15
18
|
export class Transition {
|
|
16
19
|
project;
|
|
20
|
+
/**
|
|
21
|
+
* Creates an instance of Transition command.
|
|
22
|
+
* @param project Project to use.
|
|
23
|
+
*/
|
|
17
24
|
constructor(project) {
|
|
18
25
|
this.project = project;
|
|
19
26
|
}
|
|
27
|
+
// Wrapper to run onTransition query.
|
|
28
|
+
async transitionChangesQuery(cardKey, transition) {
|
|
29
|
+
if (!cardKey || !transition)
|
|
30
|
+
return undefined;
|
|
31
|
+
return this.project.calculationEngine.runQuery('onTransition', 'localApp', {
|
|
32
|
+
cardKey,
|
|
33
|
+
transition,
|
|
34
|
+
});
|
|
35
|
+
}
|
|
20
36
|
/**
|
|
21
37
|
* Transitions a card from its current state to a new state.
|
|
22
38
|
* @param cardKey card key
|
|
23
39
|
* @param transition which transition to do
|
|
24
40
|
*/
|
|
25
41
|
async cardTransition(cardKey, transition) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
});
|
|
30
|
-
if (!details || !details.metadata) {
|
|
31
|
-
throw new Error(`Card ${cardKey} does not exist in the project`);
|
|
42
|
+
const card = this.project.findCard(cardKey);
|
|
43
|
+
if (!card.metadata?.cardType) {
|
|
44
|
+
throw new Error(`Card does not have card type`);
|
|
32
45
|
}
|
|
33
46
|
// Card type
|
|
34
|
-
const cardType =
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
47
|
+
const cardType = this.project.resources
|
|
48
|
+
.byType(card.metadata?.cardType, 'cardTypes')
|
|
49
|
+
.show();
|
|
38
50
|
// Workflow
|
|
39
|
-
const workflow =
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}
|
|
51
|
+
const workflow = this.project.resources
|
|
52
|
+
.byType(cardType.workflow, 'workflows')
|
|
53
|
+
.show();
|
|
43
54
|
// Check that the state transition can be made "from".
|
|
44
|
-
const foundFrom = workflow.transitions.find((item) => (
|
|
45
|
-
item.fromState.includes(
|
|
55
|
+
const foundFrom = workflow.transitions.find((item) => (card.metadata &&
|
|
56
|
+
item.fromState.includes(card.metadata?.workflowState)) ||
|
|
46
57
|
item.fromState.includes('*'));
|
|
47
58
|
if (!foundFrom) {
|
|
48
|
-
throw new Error(`Card's workflow '${cardType.workflow}' does not contain transition from card's current state '${
|
|
59
|
+
throw new Error(`Card's workflow '${cardType.workflow}' does not contain transition from card's current state '${card.metadata?.workflowState}'`);
|
|
49
60
|
}
|
|
50
61
|
// Check that the state transition can be made "to".
|
|
51
62
|
const found = workflow.transitions.find((item) => item.name === transition.name);
|
|
@@ -54,37 +65,31 @@ export class Transition {
|
|
|
54
65
|
throw new Error(`Card's workflow '${cardType.workflow}' does not contain state transition '${transition.name}'.
|
|
55
66
|
\nThe available transitions are: ${transitionNames.join(', ')}`);
|
|
56
67
|
}
|
|
57
|
-
if (!(
|
|
68
|
+
if (!((card.metadata?.workflowState &&
|
|
69
|
+
found.fromState.includes(card.metadata.workflowState)) ||
|
|
58
70
|
found.fromState.includes('*'))) {
|
|
59
|
-
throw new Error(`Card's workflow '${cardType.workflow}' does not contain state transition from state '${
|
|
71
|
+
throw new Error(`Card's workflow '${cardType.workflow}' does not contain state transition from state '${card.metadata?.workflowState}' for '${transition.name}`);
|
|
60
72
|
}
|
|
61
73
|
const actionGuard = new ActionGuard(this.project.calculationEngine);
|
|
62
74
|
await actionGuard.checkPermission('transition', cardKey, transition.name);
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
queryResult
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
async transitionChangesQuery(cardKey, transition) {
|
|
82
|
-
if (!cardKey || !transition)
|
|
83
|
-
return undefined;
|
|
84
|
-
return this.project.calculationEngine.runQuery('onTransition', 'localApp', {
|
|
85
|
-
cardKey,
|
|
86
|
-
transition,
|
|
87
|
-
});
|
|
75
|
+
if (card.metadata) {
|
|
76
|
+
card.metadata.workflowState = found.toState;
|
|
77
|
+
card.metadata.lastUpdated = new Date().toISOString();
|
|
78
|
+
card.metadata.lastTransitioned = new Date().toISOString();
|
|
79
|
+
return this.project
|
|
80
|
+
.updateCardMetadata(card, card.metadata)
|
|
81
|
+
.then(async () => this.transitionChangesQuery(cardKey, transition.name))
|
|
82
|
+
.then(async (queryResult) => {
|
|
83
|
+
if (!queryResult ||
|
|
84
|
+
queryResult.at(0) === undefined ||
|
|
85
|
+
queryResult.at(0)?.updateFields === undefined) {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
const fieldsToUpdate = queryResult.at(0).updateFields;
|
|
89
|
+
return CardMetadataUpdater.apply(this.project, fieldsToUpdate);
|
|
90
|
+
})
|
|
91
|
+
.catch((error) => console.error(error));
|
|
92
|
+
}
|
|
88
93
|
}
|
|
89
94
|
}
|
|
90
95
|
//# sourceMappingURL=transition.js.map
|