@cyberismo/data-handler 0.0.6 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/card-metadata-updater.d.ts +1 -0
- package/dist/card-metadata-updater.js +7 -2
- package/dist/card-metadata-updater.js.map +1 -1
- package/dist/command-handler.d.ts +6 -1
- package/dist/command-handler.js +16 -15
- package/dist/command-handler.js.map +1 -1
- package/dist/command-manager.d.ts +15 -4
- package/dist/command-manager.js +41 -9
- package/dist/command-manager.js.map +1 -1
- package/dist/commands/calculate.d.ts +4 -10
- package/dist/commands/calculate.js +67 -78
- package/dist/commands/calculate.js.map +1 -1
- package/dist/commands/create.d.ts +1 -1
- package/dist/commands/create.js +15 -10
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/export.js +3 -3
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/import.d.ts +3 -8
- package/dist/commands/import.js +17 -15
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/index.d.ts +1 -2
- package/dist/commands/index.js +1 -2
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/remove.d.ts +1 -1
- package/dist/commands/remove.js +4 -10
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/show.d.ts +6 -3
- package/dist/commands/show.js +8 -5
- package/dist/commands/show.js.map +1 -1
- package/dist/commands/validate.d.ts +0 -8
- package/dist/commands/validate.js +6 -36
- package/dist/commands/validate.js.map +1 -1
- package/dist/containers/project/project-content-watcher.d.ts +28 -0
- package/dist/containers/project/project-content-watcher.js +54 -0
- package/dist/containers/project/project-content-watcher.js.map +1 -0
- package/dist/containers/project/project-paths.js +1 -1
- package/dist/containers/project/project-paths.js.map +1 -1
- package/dist/containers/project/resource-collector.d.ts +2 -1
- package/dist/containers/project/resource-collector.js +33 -23
- package/dist/containers/project/resource-collector.js.map +1 -1
- package/dist/containers/project.d.ts +9 -7
- package/dist/containers/project.js +58 -18
- package/dist/containers/project.js.map +1 -1
- package/dist/containers/template.d.ts +1 -0
- package/dist/containers/template.js +7 -2
- package/dist/containers/template.js.map +1 -1
- package/dist/exceptions/index.d.ts +20 -0
- package/dist/exceptions/index.js +16 -0
- package/dist/exceptions/index.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js.map +1 -1
- package/dist/interfaces/macros.d.ts +5 -1
- package/dist/interfaces/project-interfaces.d.ts +5 -0
- package/dist/interfaces/project-interfaces.js.map +1 -1
- package/dist/interfaces/resource-interfaces.d.ts +14 -22
- package/dist/interfaces/resource-interfaces.js +10 -9
- package/dist/interfaces/resource-interfaces.js.map +1 -1
- package/dist/macros/base-macro.d.ts +2 -0
- package/dist/macros/base-macro.js +66 -19
- package/dist/macros/base-macro.js.map +1 -1
- package/dist/macros/graph/index.d.ts +0 -1
- package/dist/macros/graph/index.js +16 -12
- package/dist/macros/graph/index.js.map +1 -1
- package/dist/macros/index.d.ts +30 -3
- package/dist/macros/index.js +36 -6
- package/dist/macros/index.js.map +1 -1
- package/dist/macros/report/index.d.ts +13 -10
- package/dist/macros/report/index.js +35 -38
- package/dist/macros/report/index.js.map +1 -1
- package/dist/module-manager.d.ts +32 -11
- package/dist/module-manager.js +301 -147
- package/dist/module-manager.js.map +1 -1
- package/dist/project-settings.js +8 -8
- package/dist/project-settings.js.map +1 -1
- package/dist/resources/array-handler.js +6 -1
- package/dist/resources/array-handler.js.map +1 -1
- package/dist/resources/card-type-resource.d.ts +13 -9
- package/dist/resources/card-type-resource.js +47 -23
- package/dist/resources/card-type-resource.js.map +1 -1
- package/dist/resources/create-defaults.d.ts +10 -9
- package/dist/resources/create-defaults.js +15 -12
- package/dist/resources/create-defaults.js.map +1 -1
- package/dist/resources/field-type-resource.d.ts +0 -1
- package/dist/resources/field-type-resource.js +2 -10
- package/dist/resources/field-type-resource.js.map +1 -1
- package/dist/resources/file-resource.d.ts +7 -7
- package/dist/resources/file-resource.js +32 -7
- package/dist/resources/file-resource.js.map +1 -1
- package/dist/resources/folder-resource.d.ts +10 -9
- package/dist/resources/folder-resource.js +10 -9
- package/dist/resources/folder-resource.js.map +1 -1
- package/dist/resources/report-resource.d.ts +5 -6
- package/dist/resources/report-resource.js +16 -7
- package/dist/resources/report-resource.js.map +1 -1
- package/dist/resources/template-resource.d.ts +5 -6
- package/dist/resources/template-resource.js +7 -6
- package/dist/resources/template-resource.js.map +1 -1
- package/dist/resources/workflow-resource.d.ts +15 -8
- package/dist/resources/workflow-resource.js +124 -8
- package/dist/resources/workflow-resource.js.map +1 -1
- package/dist/types/queries.d.ts +11 -10
- package/dist/types/queries.js +10 -9
- package/dist/types/queries.js.map +1 -1
- package/dist/utils/clingo-fact-builder.d.ts +1 -0
- package/dist/utils/clingo-fact-builder.js +8 -3
- package/dist/utils/clingo-fact-builder.js.map +1 -1
- package/dist/utils/clingo-facts.js +15 -11
- package/dist/utils/clingo-facts.js.map +1 -1
- package/dist/utils/constants.d.ts +18 -12
- package/dist/utils/constants.js +18 -11
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/log-utils.d.ts +15 -2
- package/dist/utils/log-utils.js +20 -37
- package/dist/utils/log-utils.js.map +1 -1
- package/dist/utils/report.d.ts +27 -0
- package/dist/utils/report.js +60 -0
- package/dist/utils/report.js.map +1 -0
- package/dist/utils/resource-utils.js +3 -0
- package/dist/utils/resource-utils.js.map +1 -1
- package/dist/utils/sanitize-svg.d.ts +3 -4
- package/dist/utils/sanitize-svg.js +4 -7
- package/dist/utils/sanitize-svg.js.map +1 -1
- package/dist/utils/validate.js +2 -1
- package/dist/utils/validate.js.map +1 -1
- package/package.json +9 -11
- package/src/card-metadata-updater.ts +7 -2
- package/src/command-handler.ts +23 -13
- package/src/command-manager.ts +54 -13
- package/src/commands/calculate.ts +90 -106
- package/src/commands/create.ts +18 -10
- package/src/commands/export.ts +3 -2
- package/src/commands/import.ts +30 -17
- package/src/commands/index.ts +0 -2
- package/src/commands/remove.ts +7 -12
- package/src/commands/show.ts +13 -5
- package/src/commands/validate.ts +14 -44
- package/src/containers/project/project-content-watcher.ts +65 -0
- package/src/containers/project/project-paths.ts +1 -1
- package/src/containers/project/resource-collector.ts +33 -14
- package/src/containers/project.ts +96 -19
- package/src/containers/template.ts +7 -2
- package/src/exceptions/index.ts +36 -0
- package/src/index.ts +2 -0
- package/src/interfaces/macros.ts +5 -1
- package/src/interfaces/project-interfaces.ts +8 -0
- package/src/interfaces/resource-interfaces.ts +15 -22
- package/src/macros/base-macro.ts +89 -25
- package/src/macros/graph/index.ts +22 -12
- package/src/macros/index.ts +61 -8
- package/src/macros/report/index.ts +42 -43
- package/src/module-manager.ts +383 -177
- package/src/project-settings.ts +9 -11
- package/src/resources/array-handler.ts +7 -2
- package/src/resources/card-type-resource.ts +61 -46
- package/src/resources/create-defaults.ts +15 -12
- package/src/resources/field-type-resource.ts +2 -17
- package/src/resources/file-resource.ts +46 -8
- package/src/resources/folder-resource.ts +11 -10
- package/src/resources/report-resource.ts +19 -7
- package/src/resources/template-resource.ts +7 -6
- package/src/resources/workflow-resource.ts +155 -8
- package/src/types/queries.ts +11 -10
- package/src/utils/clingo-fact-builder.ts +8 -3
- package/src/utils/clingo-facts.ts +18 -12
- package/src/utils/constants.ts +20 -12
- package/src/utils/log-utils.ts +24 -45
- package/src/utils/report.ts +86 -0
- package/src/utils/resource-utils.ts +4 -0
- package/src/utils/sanitize-svg.ts +4 -9
- package/src/utils/validate.ts +3 -2
- package/dist/commands/export-site.d.ts +0 -45
- package/dist/commands/export-site.js +0 -301
- package/dist/commands/export-site.js.map +0 -1
- package/src/commands/export-site.ts +0 -356
|
@@ -1,26 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
2
|
+
Cyberismo
|
|
3
|
+
Copyright © Cyberismo Ltd and contributors 2024
|
|
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/>.
|
|
11
12
|
*/
|
|
12
|
-
import {
|
|
13
|
+
import { validateMacroContent } from '../index.js';
|
|
13
14
|
import macroMetadata from './metadata.js';
|
|
14
|
-
import { Project } from '../../containers/project.js';
|
|
15
|
-
import { Calculate } from '../../commands/index.js';
|
|
16
|
-
import Handlebars from 'handlebars';
|
|
17
15
|
import BaseMacro from '../base-macro.js';
|
|
18
16
|
import { validateJson } from '../../utils/validate.js';
|
|
19
17
|
import { ReportResource } from '../../resources/report-resource.js';
|
|
20
18
|
import { resourceName } from '../../utils/resource-utils.js';
|
|
19
|
+
import { generateReportContent } from '../../utils/report.js';
|
|
20
|
+
import { ClingoError } from '@cyberismo/node-clingo';
|
|
21
21
|
class ReportMacro extends BaseMacro {
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
calculate;
|
|
23
|
+
constructor(tasks, calculate) {
|
|
24
|
+
super(macroMetadata, tasks);
|
|
25
|
+
this.calculate = calculate;
|
|
24
26
|
}
|
|
25
27
|
handleValidate = (input) => {
|
|
26
28
|
this.validate(input);
|
|
@@ -30,37 +32,32 @@ class ReportMacro extends BaseMacro {
|
|
|
30
32
|
};
|
|
31
33
|
handleInject = async (context, data) => {
|
|
32
34
|
const options = this.validate(data);
|
|
33
|
-
const
|
|
34
|
-
const resource = new ReportResource(project, resourceName(options.name));
|
|
35
|
+
const resource = new ReportResource(context.project, resourceName(options.name));
|
|
35
36
|
const report = await resource.show();
|
|
36
37
|
if (!report)
|
|
37
|
-
throw new Error(`Report ${options} does not exist`);
|
|
38
|
+
throw new Error(`Report ${options.name} does not exist`);
|
|
38
39
|
if (report.schema) {
|
|
39
40
|
validateJson(options, {
|
|
40
41
|
schema: report.schema,
|
|
41
42
|
});
|
|
42
43
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
44
|
+
try {
|
|
45
|
+
return await generateReportContent({
|
|
46
|
+
calculate: this.calculate,
|
|
47
|
+
contentTemplate: report.contentTemplate,
|
|
48
|
+
queryTemplate: report.queryTemplate,
|
|
49
|
+
options: {
|
|
50
|
+
cardKey: context.cardKey,
|
|
51
|
+
...options,
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
if (error instanceof ClingoError) {
|
|
57
|
+
throw new Error(`Error running logic program in report '${options.name}':${error.details.errors.join('\n')}`);
|
|
58
|
+
}
|
|
59
|
+
throw error;
|
|
57
60
|
}
|
|
58
|
-
// register empty macros so that other macros aren't touched yet
|
|
59
|
-
registerEmptyMacros(handlebars);
|
|
60
|
-
return handlebars.compile(report.contentTemplate)({
|
|
61
|
-
...handlebarsContext,
|
|
62
|
-
...result,
|
|
63
|
-
});
|
|
64
61
|
};
|
|
65
62
|
validate(data) {
|
|
66
63
|
return validateMacroContent(this.metadata, data);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/macros/report/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/macros/report/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAInD,OAAO,aAAa,MAAM,eAAe,CAAC;AAE1C,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAMrD,MAAM,WAAY,SAAQ,SAAS;IAGd;IAFnB,YACE,KAAgB,EACC,SAAoB;QAErC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAFX,cAAS,GAAT,SAAS,CAAW;IAGvC,CAAC;IACD,cAAc,GAAG,CAAC,KAAc,EAAE,EAAE;QAClC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,YAAY,GAAG,KAAK,EAAE,OAA+B,EAAE,IAAa,EAAE,EAAE;QACtE,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,YAAY,GAAG,KAAK,EAAE,OAA+B,EAAE,IAAa,EAAE,EAAE;QACtE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,cAAc,CACjC,OAAO,CAAC,OAAO,EACf,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAC3B,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAErC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,UAAU,OAAO,CAAC,IAAI,iBAAiB,CAAC,CAAC;QAEtE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,YAAY,CAAC,OAAO,EAAE;gBACpB,MAAM,EAAE,MAAM,CAAC,MAAM;aACtB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC;YACH,OAAO,MAAM,qBAAqB,CAAC;gBACjC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,eAAe,EAAE,MAAM,CAAC,eAAe;gBACvC,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,OAAO,EAAE;oBACP,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,GAAG,OAAO;iBACX;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,0CAA0C,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC7F,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC;IAEM,QAAQ,CAAC,IAAa;QAC5B,OAAO,oBAAoB,CAAgB,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;CACF;AAED,eAAe,WAAW,CAAC"}
|
package/dist/module-manager.d.ts
CHANGED
|
@@ -10,37 +10,42 @@
|
|
|
10
10
|
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 {
|
|
14
|
-
import type { ModuleSettingOptions } from './interfaces/project-interfaces.js';
|
|
13
|
+
import type { Credentials, ModuleSetting, ModuleSettingOptions } from './interfaces/project-interfaces.js';
|
|
15
14
|
import { Project } from './containers/project.js';
|
|
16
15
|
/**
|
|
17
16
|
* Class that handles module updates and imports.
|
|
18
17
|
*/
|
|
19
18
|
export declare class ModuleManager {
|
|
20
19
|
private project;
|
|
21
|
-
private importCmd;
|
|
22
20
|
private modules;
|
|
23
21
|
private tempModulesDir;
|
|
24
|
-
|
|
22
|
+
private defaultBranchCache;
|
|
23
|
+
constructor(project: Project);
|
|
25
24
|
private addFileContents;
|
|
26
|
-
private
|
|
25
|
+
private buildDependencyGraph;
|
|
26
|
+
private canBeRemoved;
|
|
27
27
|
private clone;
|
|
28
28
|
private collectModulePrefixes;
|
|
29
29
|
private configuration;
|
|
30
|
+
private defaultBranch;
|
|
31
|
+
private dependencies;
|
|
30
32
|
private doCollectModulePrefix;
|
|
31
33
|
private handleFileModule;
|
|
32
34
|
private handleGitModule;
|
|
33
35
|
private handleModule;
|
|
34
36
|
private importFromFolder;
|
|
35
|
-
private importFromTemp;
|
|
36
37
|
private isFileModule;
|
|
38
|
+
private isGitModule;
|
|
39
|
+
private orphanedModules;
|
|
37
40
|
private prepare;
|
|
38
|
-
private protocol;
|
|
39
41
|
private remove;
|
|
40
|
-
private removeModuleFiles;
|
|
41
|
-
private removeProtocolFromLocation;
|
|
42
42
|
private removeDuplicates;
|
|
43
|
+
private removeModuleFiles;
|
|
43
44
|
private repositoryName;
|
|
45
|
+
private setCloneOptions;
|
|
46
|
+
private stripProtocolFromLocation;
|
|
47
|
+
private transientDependencies;
|
|
48
|
+
private update;
|
|
44
49
|
private validatePrefix;
|
|
45
50
|
/**
|
|
46
51
|
* Imports module from local file path.
|
|
@@ -52,11 +57,27 @@ export declare class ModuleManager {
|
|
|
52
57
|
* Imports module from gitUrl.
|
|
53
58
|
* @param source Git URL to import from.
|
|
54
59
|
* @param options Modules setting options.
|
|
60
|
+
* @param credentials Credentials for private repositories.
|
|
55
61
|
* @returns module prefix as defined in its CardsConfig.json
|
|
56
62
|
*/
|
|
57
|
-
importGitModule(source: string, options?: ModuleSettingOptions): Promise<string>;
|
|
63
|
+
importGitModule(source: string, options?: ModuleSettingOptions, credentials?: Credentials): Promise<string>;
|
|
64
|
+
/**
|
|
65
|
+
* Removed module from project.
|
|
66
|
+
* If module is not used by any other modules, then will remove the module from disk as well.
|
|
67
|
+
* Otherwise, only updates project configuration.
|
|
68
|
+
* @param moduleName Name of the module to remove
|
|
69
|
+
*/
|
|
70
|
+
removeModule(moduleName: string): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* Imports module from a local file path or a git URL.
|
|
73
|
+
* @param module Module to update. If not provided, updates all modules.
|
|
74
|
+
* @param credentials Optional credentials for private repositories.
|
|
75
|
+
* @returns Module prefix as defined in its CardsConfig.json
|
|
76
|
+
*/
|
|
77
|
+
updateModule(module: ModuleSetting, credentials?: Credentials): Promise<void>;
|
|
58
78
|
/**
|
|
59
79
|
* Updates all imported modules.
|
|
80
|
+
* @param credentials Optional credentials for private modules.
|
|
60
81
|
*/
|
|
61
|
-
|
|
82
|
+
updateModules(credentials?: Credentials): Promise<void>;
|
|
62
83
|
}
|