@pilotdev/pilot-web-sdk 26.10.0 → 26.11.0
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/esm2022/lib/base/disposable.mjs +14 -0
- package/esm2022/lib/base/index.mjs +3 -0
- package/esm2022/lib/base/initializable.mjs +14 -0
- package/esm2022/lib/commands/command-builder.mjs +2 -0
- package/esm2022/lib/commands/index.mjs +2 -0
- package/esm2022/lib/contexts/bim-element-panel-context.mjs +16 -0
- package/esm2022/lib/contexts/bim-right-panel-context.mjs +16 -0
- package/esm2022/lib/contexts/context.mjs +32 -0
- package/esm2022/lib/contexts/dialog-context.mjs +10 -0
- package/esm2022/lib/contexts/document-annotations-list-context.mjs +16 -0
- package/esm2022/lib/contexts/index.mjs +10 -0
- package/esm2022/lib/contexts/object-card-context.mjs +63 -0
- package/esm2022/lib/contexts/page-context.mjs +3 -0
- package/esm2022/lib/contexts/render-context.mjs +24 -0
- package/esm2022/lib/contexts/settings-feature-context.mjs +21 -0
- package/esm2022/lib/data/access.mjs +26 -0
- package/esm2022/lib/data/annotations.mjs +34 -0
- package/esm2022/lib/data/attribute.mjs +17 -0
- package/esm2022/lib/data/bim-features/bim-compare-diff.mjs +9 -0
- package/esm2022/lib/data/bim-features/bim-search-set.mjs +2 -0
- package/esm2022/lib/data/bim-features/index.mjs +3 -0
- package/esm2022/lib/data/cades-type.mjs +13 -0
- package/esm2022/lib/data/certificate.mjs +2 -0
- package/esm2022/lib/data/data-object.mjs +19 -0
- package/esm2022/lib/data/expected-error.mjs +9 -0
- package/esm2022/lib/data/file.mjs +2 -0
- package/esm2022/lib/data/files-snapshot.mjs +2 -0
- package/esm2022/lib/data/index.mjs +21 -0
- package/esm2022/lib/data/organisation-unit.mjs +7 -0
- package/esm2022/lib/data/person.mjs +2 -0
- package/esm2022/lib/data/relation.mjs +2 -0
- package/esm2022/lib/data/signature-custom-state.mjs +2 -0
- package/esm2022/lib/data/signature-verification-result.mjs +2 -0
- package/esm2022/lib/data/signature-verification-status.mjs +11 -0
- package/esm2022/lib/data/subscription-type.mjs +6 -0
- package/esm2022/lib/data/theme.mjs +6 -0
- package/esm2022/lib/data/user-state-machine.mjs +2 -0
- package/esm2022/lib/data/user-state.mjs +12 -0
- package/esm2022/lib/icrypto-provider.mjs +96 -0
- package/esm2022/lib/idata.plugin.mjs +11 -0
- package/esm2022/lib/injectable/bim-features/bim-compare-diff-service.mjs +2 -0
- package/esm2022/lib/injectable/bim-features/bim-features.mjs +2 -0
- package/esm2022/lib/injectable/bim-features/bim-search-set-service.mjs +2 -0
- package/esm2022/lib/injectable/bim-features/index.mjs +4 -0
- package/esm2022/lib/injectable/command-builder-provider.mjs +2 -0
- package/esm2022/lib/injectable/dialog-service.mjs +2 -0
- package/esm2022/lib/injectable/index.mjs +12 -0
- package/esm2022/lib/injectable/injection-source.mjs +55 -0
- package/esm2022/lib/injectable/ipersonal-settings.mjs +2 -0
- package/esm2022/lib/injectable/modifier-provider.mjs +2 -0
- package/esm2022/lib/injectable/objects-repository.mjs +2 -0
- package/esm2022/lib/injectable/progress-service.mjs +8 -0
- package/esm2022/lib/injectable/render-context-provider.mjs +2 -0
- package/esm2022/lib/injectable/repository-events.mjs +2 -0
- package/esm2022/lib/injectable/theme-service.mjs +2 -0
- package/esm2022/lib/menu/checkable-menu.builder.mjs +14 -0
- package/esm2022/lib/menu/index.mjs +5 -0
- package/esm2022/lib/menu/menu-item.builder.mjs +39 -0
- package/esm2022/lib/menu/menu.builder.mjs +68 -0
- package/esm2022/lib/menu/menu.mjs +23 -0
- package/esm2022/lib/modifier/attribute-modifier.mjs +2 -0
- package/esm2022/lib/modifier/index.mjs +5 -0
- package/esm2022/lib/modifier/modifier.mjs +2 -0
- package/esm2022/lib/modifier/object-builder.mjs +2 -0
- package/esm2022/lib/modifier/signature-modifier.mjs +2 -0
- package/esm2022/lib/object-card/attribute-value-changed-event-args.mjs +20 -0
- package/esm2022/lib/object-card/index.mjs +3 -0
- package/esm2022/lib/object-card/object-card-handler.mjs +30 -0
- package/esm2022/lib/openspace/index.mjs +2 -0
- package/esm2022/lib/openspace/openspace-view.mjs +29 -0
- package/esm2022/lib/page-navigation/index.mjs +5 -0
- package/esm2022/lib/page-navigation/page-navigation-section-element.builder.mjs +42 -0
- package/esm2022/lib/page-navigation/page-navigation-section.builder.mjs +47 -0
- package/esm2022/lib/page-navigation/page-navigation.builder.mjs +40 -0
- package/esm2022/lib/page-navigation/page-navigation.mjs +15 -0
- package/esm2022/lib/personal-settings/index.mjs +4 -0
- package/esm2022/lib/personal-settings/isettings-feature.mjs +42 -0
- package/esm2022/lib/personal-settings/isettings-value-provider.mjs +27 -0
- package/esm2022/lib/personal-settings/system-settings-keys.mjs +83 -0
- package/esm2022/lib/tabs/index.mjs +4 -0
- package/esm2022/lib/tabs/tab-item.builder.mjs +35 -0
- package/esm2022/lib/tabs/tabs.builder.mjs +40 -0
- package/esm2022/lib/tabs/tabs.mjs +15 -0
- package/esm2022/lib/toolbar/index.mjs +7 -0
- package/esm2022/lib/toolbar/toolbar-item-submenu.handler.mjs +11 -0
- package/esm2022/lib/toolbar/toolbar-item.builder.mjs +41 -0
- package/esm2022/lib/toolbar/toolbar-menu-item.builder.mjs +15 -0
- package/esm2022/lib/toolbar/toolbar-toggle-item.builder.mjs +14 -0
- package/esm2022/lib/toolbar/toolbar.builder.mjs +88 -0
- package/esm2022/lib/toolbar/toolbar.mjs +28 -0
- package/esm2022/lib/tools/attribute-permission.info.mjs +45 -0
- package/esm2022/lib/tools/guid.mjs +53 -0
- package/esm2022/lib/tools/index.mjs +4 -0
- package/esm2022/lib/tools/utils.mjs +8 -0
- package/esm2022/pilotdev-pilot-web-sdk.mjs +5 -0
- package/esm2022/public-api.mjs +20 -0
- package/extensions.config.schema.json +171 -132
- package/fesm2022/pilotdev-pilot-web-sdk.mjs +1487 -0
- package/fesm2022/pilotdev-pilot-web-sdk.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/base/disposable.d.ts +7 -0
- package/{src/lib/base/index.ts → lib/base/index.d.ts} +2 -2
- package/lib/base/initializable.d.ts +8 -0
- package/lib/commands/command-builder.d.ts +15 -0
- package/lib/commands/index.d.ts +1 -0
- package/lib/contexts/bim-element-panel-context.d.ts +8 -0
- package/lib/contexts/bim-right-panel-context.d.ts +8 -0
- package/lib/contexts/context.d.ts +22 -0
- package/lib/contexts/dialog-context.d.ts +5 -0
- package/lib/contexts/document-annotations-list-context.d.ts +12 -0
- package/{src/lib/contexts/index.ts → lib/contexts/index.d.ts} +1 -1
- package/lib/contexts/object-card-context.d.ts +41 -0
- package/lib/contexts/page-context.d.ts +2 -0
- package/lib/contexts/render-context.d.ts +17 -0
- package/lib/contexts/settings-feature-context.d.ts +11 -0
- package/lib/data/access.d.ts +35 -0
- package/lib/data/annotations.d.ts +113 -0
- package/lib/data/attribute.d.ts +30 -0
- package/lib/data/bim-features/bim-compare-diff.d.ts +15 -0
- package/lib/data/bim-features/bim-search-set.d.ts +13 -0
- package/lib/data/cades-type.d.ts +11 -0
- package/lib/data/certificate.d.ts +29 -0
- package/lib/data/data-object.d.ts +77 -0
- package/lib/data/expected-error.d.ts +5 -0
- package/lib/data/file.d.ts +30 -0
- package/lib/data/files-snapshot.d.ts +8 -0
- package/lib/data/organisation-unit.d.ts +20 -0
- package/lib/data/person.d.ts +17 -0
- package/lib/data/relation.d.ts +8 -0
- package/{src/lib/data/signature-custom-state.ts → lib/data/signature-custom-state.d.ts} +4 -4
- package/{src/lib/data/signature-verification-result.ts → lib/data/signature-verification-result.d.ts} +9 -13
- package/lib/data/signature-verification-status.d.ts +9 -0
- package/lib/data/subscription-type.d.ts +4 -0
- package/lib/data/theme.d.ts +7 -0
- package/lib/data/user-state-machine.d.ts +10 -0
- package/lib/data/user-state.d.ts +20 -0
- package/lib/icrypto-provider.d.ts +82 -0
- package/lib/idata.plugin.d.ts +6 -0
- package/lib/injectable/bim-features/bim-compare-diff-service.d.ts +4 -0
- package/{src/lib/injectable/bim-features/bim-features.ts → lib/injectable/bim-features/bim-features.d.ts} +6 -8
- package/lib/injectable/bim-features/bim-search-set-service.d.ts +39 -0
- package/{src/lib/injectable/bim-features/index.ts → lib/injectable/bim-features/index.d.ts} +3 -3
- package/{src/lib/injectable/command-builder-provider.ts → lib/injectable/command-builder-provider.d.ts} +6 -7
- package/{src/lib/injectable/dialog-service.ts → lib/injectable/dialog-service.d.ts} +1 -2
- package/lib/injectable/injection-source.d.ts +26 -0
- package/lib/injectable/ipersonal-settings.d.ts +48 -0
- package/{src/lib/injectable/modifier-provider.ts → lib/injectable/modifier-provider.d.ts} +5 -6
- package/lib/injectable/objects-repository.d.ts +87 -0
- package/lib/injectable/progress-service.d.ts +18 -0
- package/lib/injectable/render-context-provider.d.ts +10 -0
- package/lib/injectable/repository-events.d.ts +31 -0
- package/{src/lib/injectable/theme-service.ts → lib/injectable/theme-service.d.ts} +3 -4
- package/lib/menu/checkable-menu.builder.d.ts +11 -0
- package/{src/lib/menu/index.ts → lib/menu/index.d.ts} +1 -2
- package/lib/menu/menu-item.builder.d.ts +27 -0
- package/lib/menu/menu.builder.d.ts +49 -0
- package/lib/menu/menu.d.ts +20 -0
- package/lib/modifier/attribute-modifier.d.ts +9 -0
- package/{src/lib/modifier/index.ts → lib/modifier/index.d.ts} +1 -1
- package/lib/modifier/modifier.d.ts +30 -0
- package/lib/modifier/object-builder.d.ts +140 -0
- package/lib/modifier/signature-modifier.d.ts +87 -0
- package/lib/object-card/attribute-value-changed-event-args.d.ts +10 -0
- package/{src/lib/object-card/index.ts → lib/object-card/index.d.ts} +2 -2
- package/lib/object-card/object-card-handler.d.ts +25 -0
- package/lib/openspace/openspace-view.d.ts +20 -0
- package/{src/lib/page-navigation/index.ts → lib/page-navigation/index.d.ts} +4 -4
- package/lib/page-navigation/page-navigation-section-element.builder.d.ts +29 -0
- package/lib/page-navigation/page-navigation-section.builder.d.ts +33 -0
- package/lib/page-navigation/page-navigation.builder.d.ts +28 -0
- package/lib/page-navigation/page-navigation.d.ts +9 -0
- package/lib/personal-settings/isettings-feature.d.ts +31 -0
- package/lib/personal-settings/isettings-value-provider.d.ts +17 -0
- package/lib/personal-settings/system-settings-keys.d.ts +82 -0
- package/lib/tabs/tab-item.builder.d.ts +24 -0
- package/lib/tabs/tabs.builder.d.ts +28 -0
- package/lib/tabs/tabs.d.ts +14 -0
- package/{src/lib/toolbar/index.ts → lib/toolbar/index.d.ts} +1 -2
- package/lib/toolbar/toolbar-item-submenu.handler.d.ts +9 -0
- package/lib/toolbar/toolbar-item.builder.d.ts +28 -0
- package/lib/toolbar/toolbar-menu-item.builder.d.ts +13 -0
- package/lib/toolbar/toolbar-toggle-item.builder.d.ts +11 -0
- package/lib/toolbar/toolbar.builder.d.ts +65 -0
- package/lib/toolbar/toolbar.d.ts +21 -0
- package/lib/tools/attribute-permission.info.d.ts +9 -0
- package/lib/tools/guid.d.ts +7 -0
- package/lib/tools/index.d.ts +3 -0
- package/lib/tools/utils.d.ts +3 -0
- package/package.json +17 -4
- package/{src/public-api.ts → public-api.d.ts} +0 -3
- package/.eslintrc.json +0 -31
- package/ng-package.json +0 -10
- package/src/lib/base/disposable.ts +0 -14
- package/src/lib/base/initializable.ts +0 -16
- package/src/lib/commands/command-builder.ts +0 -19
- package/src/lib/commands/index.ts +0 -1
- package/src/lib/contexts/bim-element-panel-context.ts +0 -22
- package/src/lib/contexts/bim-right-panel-context.ts +0 -22
- package/src/lib/contexts/context.ts +0 -38
- package/src/lib/contexts/dialog-context.ts +0 -10
- package/src/lib/contexts/document-annotations-list-context.ts +0 -21
- package/src/lib/contexts/object-card-context.ts +0 -81
- package/src/lib/contexts/page-context.ts +0 -1
- package/src/lib/contexts/render-context.ts +0 -28
- package/src/lib/contexts/settings-feature-context.ts +0 -26
- package/src/lib/data/access.ts +0 -40
- package/src/lib/data/annotations.ts +0 -160
- package/src/lib/data/attribute.ts +0 -33
- package/src/lib/data/bim-features/bim-compare-diff.ts +0 -16
- package/src/lib/data/bim-features/bim-search-set.ts +0 -16
- package/src/lib/data/cades-type.ts +0 -11
- package/src/lib/data/certificate.ts +0 -34
- package/src/lib/data/data-object.ts +0 -83
- package/src/lib/data/expected-error.ts +0 -10
- package/src/lib/data/file.ts +0 -33
- package/src/lib/data/files-snapshot.ts +0 -9
- package/src/lib/data/organisation-unit.ts +0 -22
- package/src/lib/data/person.ts +0 -17
- package/src/lib/data/relation.ts +0 -9
- package/src/lib/data/signature-verification-status.ts +0 -10
- package/src/lib/data/subscription-type.ts +0 -5
- package/src/lib/data/theme.ts +0 -9
- package/src/lib/data/user-state-machine.ts +0 -11
- package/src/lib/data/user-state.ts +0 -21
- package/src/lib/icrypto-provider.ts +0 -106
- package/src/lib/idata.plugin.ts +0 -10
- package/src/lib/injectable/bim-features/bim-compare-diff-service.ts +0 -5
- package/src/lib/injectable/bim-features/bim-search-set-service.ts +0 -44
- package/src/lib/injectable/injection-source.ts +0 -66
- package/src/lib/injectable/ipersonal-settings.ts +0 -53
- package/src/lib/injectable/objects-repository.ts +0 -88
- package/src/lib/injectable/progress-service.ts +0 -20
- package/src/lib/injectable/render-context-provider.ts +0 -11
- package/src/lib/injectable/repository-events.ts +0 -33
- package/src/lib/menu/checkable-menu.builder.ts +0 -15
- package/src/lib/menu/menu-item.builder.ts +0 -45
- package/src/lib/menu/menu.builder.ts +0 -79
- package/src/lib/menu/menu.ts +0 -26
- package/src/lib/modifier/attribute-modifier.ts +0 -9
- package/src/lib/modifier/modifier.ts +0 -31
- package/src/lib/modifier/object-builder.ts +0 -143
- package/src/lib/modifier/signature-modifier.ts +0 -99
- package/src/lib/object-card/attribute-value-changed-event-args.ts +0 -25
- package/src/lib/object-card/object-card-handler.ts +0 -36
- package/src/lib/openspace/openspace-view.ts +0 -32
- package/src/lib/page-navigation/page-navigation-section-element.builder.ts +0 -45
- package/src/lib/page-navigation/page-navigation-section.builder.ts +0 -53
- package/src/lib/page-navigation/page-navigation.builder.ts +0 -45
- package/src/lib/page-navigation/page-navigation.ts +0 -17
- package/src/lib/personal-settings/isettings-feature.ts +0 -43
- package/src/lib/personal-settings/isettings-value-provider.ts +0 -28
- package/src/lib/personal-settings/system-settings-keys.ts +0 -101
- package/src/lib/tabs/tab-item.builder.ts +0 -37
- package/src/lib/tabs/tabs.builder.ts +0 -45
- package/src/lib/tabs/tabs.ts +0 -17
- package/src/lib/toolbar/toolbar-item-submenu.handler.ts +0 -12
- package/src/lib/toolbar/toolbar-item.builder.ts +0 -45
- package/src/lib/toolbar/toolbar-menu-item.builder.ts +0 -16
- package/src/lib/toolbar/toolbar-toggle-item.builder.ts +0 -15
- package/src/lib/toolbar/toolbar.builder.ts +0 -104
- package/src/lib/toolbar/toolbar.ts +0 -33
- package/src/lib/tools/attribute-permission.info.ts +0 -54
- package/src/lib/tools/guid.ts +0 -63
- package/src/lib/tools/index.ts +0 -3
- package/src/lib/tools/utils.ts +0 -8
- package/src/typegen.ts +0 -149
- package/tsconfig.lib.json +0 -15
- package/tsconfig.lib.prod.json +0 -10
- /package/{src/lib/data/bim-features/index.ts → lib/data/bim-features/index.d.ts} +0 -0
- /package/{src/lib/data/index.ts → lib/data/index.d.ts} +0 -0
- /package/{src/lib/injectable/index.ts → lib/injectable/index.d.ts} +0 -0
- /package/{src/lib/openspace/index.ts → lib/openspace/index.d.ts} +0 -0
- /package/{src/lib/personal-settings/index.ts → lib/personal-settings/index.d.ts} +0 -0
- /package/{src/lib/tabs/index.ts → lib/tabs/index.d.ts} +0 -0
package/src/typegen.ts
DELETED
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
import * as ts from "typescript";
|
|
2
|
-
import * as fs from "fs";
|
|
3
|
-
|
|
4
|
-
const EXPOSED_TOKEN = "@exposedInterface" as const;
|
|
5
|
-
|
|
6
|
-
interface SchemaConfig {
|
|
7
|
-
definitions: {
|
|
8
|
-
extensionModule: {
|
|
9
|
-
properties: {
|
|
10
|
-
exposedInterface: {
|
|
11
|
-
enum: string[];
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
class ExposedClassesInfo {
|
|
19
|
-
exposedInterfaces: string[];
|
|
20
|
-
availableContexts: string[];
|
|
21
|
-
interfaceContextMap: { [key: string] : string[]};
|
|
22
|
-
compoundVariants: string[] = [];
|
|
23
|
-
|
|
24
|
-
constructor(
|
|
25
|
-
exposedInterfaces: Set<string>,
|
|
26
|
-
availableContexts: Set<string>,
|
|
27
|
-
interfaceContextMap: Map<string, string[]>
|
|
28
|
-
) {
|
|
29
|
-
this.exposedInterfaces = Array.from(exposedInterfaces);
|
|
30
|
-
this.availableContexts = Array.from(availableContexts);
|
|
31
|
-
this.interfaceContextMap = Object.fromEntries(interfaceContextMap);
|
|
32
|
-
|
|
33
|
-
interfaceContextMap.forEach((contexts, key) => {
|
|
34
|
-
if (contexts.length > 0) {
|
|
35
|
-
contexts.forEach((ctx) => this.compoundVariants.push(`${key}<${ctx}>`));
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
this.compoundVariants.push(key);
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
function isAbstractClass(node: ts.ClassDeclaration): boolean {
|
|
45
|
-
return !!node.modifiers?.some(m => m.kind === ts.SyntaxKind.AbstractKeyword);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
function isExposedInterface(node: ts.Node): boolean {
|
|
49
|
-
const nodeText = node.getFullText();
|
|
50
|
-
const commentRanges = ts.getLeadingCommentRanges(nodeText, 0);
|
|
51
|
-
|
|
52
|
-
if (!commentRanges)
|
|
53
|
-
return false;
|
|
54
|
-
|
|
55
|
-
for (const range of commentRanges) {
|
|
56
|
-
const comment = nodeText.substring(range.pos, range.end);
|
|
57
|
-
|
|
58
|
-
if (comment.includes(EXPOSED_TOKEN))
|
|
59
|
-
return true;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
function isNodeExported(node: ts.Node): boolean {
|
|
66
|
-
return (
|
|
67
|
-
(ts.getCombinedModifierFlags(node as ts.Declaration) & ts.ModifierFlags.Export) !== 0 ||
|
|
68
|
-
(!!node.parent && node.parent.kind === ts.SyntaxKind.SourceFile)
|
|
69
|
-
);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
function analyzeExposedClasses(fileName: string): ExposedClassesInfo {
|
|
73
|
-
const program = ts.createProgram([fileName], {});
|
|
74
|
-
const checker = program.getTypeChecker();
|
|
75
|
-
|
|
76
|
-
const exposedInterfaces = new Set<string>();
|
|
77
|
-
const availableContexts = new Set<string>();
|
|
78
|
-
const interfaceContextMap: Map<string, string[]> = new Map();
|
|
79
|
-
|
|
80
|
-
const visit = (node: ts.Node) => {
|
|
81
|
-
if (!isNodeExported(node)) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
if ((ts.isClassDeclaration(node) && isAbstractClass(node))) {
|
|
86
|
-
|
|
87
|
-
if (!isExposedInterface(node))
|
|
88
|
-
return;
|
|
89
|
-
|
|
90
|
-
const nodeName = node.name.getText();
|
|
91
|
-
exposedInterfaces.add(nodeName);
|
|
92
|
-
|
|
93
|
-
let classValues = interfaceContextMap.get(nodeName);
|
|
94
|
-
|
|
95
|
-
if (!classValues) {
|
|
96
|
-
classValues = [];
|
|
97
|
-
interfaceContextMap.set(nodeName, classValues);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
const typeParameters = node.typeParameters || <ts.TypeParameterDeclaration[]>[];
|
|
101
|
-
|
|
102
|
-
typeParameters.forEach(param => {
|
|
103
|
-
const constraintType = param.constraint
|
|
104
|
-
? checker.typeToString(checker.getTypeAtLocation(param.constraint))
|
|
105
|
-
: 'unknown';
|
|
106
|
-
|
|
107
|
-
if (constraintType === "unknown") {
|
|
108
|
-
console.warn(`${nodeName} has type parameter <${param.getText()}>, but does not specify constraints!`);
|
|
109
|
-
|
|
110
|
-
const sourceFile = node.getSourceFile();
|
|
111
|
-
const paramPosition = sourceFile.getLineAndCharacterOfPosition(param.getStart());
|
|
112
|
-
console.warn(`^ ${sourceFile.fileName}:${paramPosition.line + 1}:${paramPosition.character + 1}`);
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
constraintType.split("|").map(c => c.trim()).forEach((constraint) => {
|
|
117
|
-
availableContexts.add(constraint);
|
|
118
|
-
classValues.push(constraint);
|
|
119
|
-
})
|
|
120
|
-
});
|
|
121
|
-
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
ts.forEachChild(node, visit);
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
for (const sourceFile of program.getSourceFiles()) {
|
|
128
|
-
if (!sourceFile.isDeclarationFile) {
|
|
129
|
-
// Walk the tree to search for classes
|
|
130
|
-
ts.forEachChild(sourceFile, visit);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
return new ExposedClassesInfo(exposedInterfaces, availableContexts, interfaceContextMap);
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
const [programFile, schemaFile] = process.argv.slice(2);
|
|
138
|
-
|
|
139
|
-
const result = analyzeExposedClasses(programFile);
|
|
140
|
-
|
|
141
|
-
const obj = JSON.parse(fs.readFileSync(schemaFile).toString()) as SchemaConfig;
|
|
142
|
-
|
|
143
|
-
obj.definitions.extensionModule.properties.exposedInterface.enum = result.compoundVariants;
|
|
144
|
-
|
|
145
|
-
fs.writeFileSync(schemaFile, JSON.stringify(obj, undefined, 2));
|
|
146
|
-
console.info(`✔ Schema generation complete! Processed:`);
|
|
147
|
-
console.info(`${result.exposedInterfaces.length} exposed interface(s)`);
|
|
148
|
-
console.info(`${result.availableContexts.length} available context(s)`);
|
|
149
|
-
console.info(`Total: ${result.compoundVariants.length} variant(s)`);
|
package/tsconfig.lib.json
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/* To learn more about this file see: https://angular.io/config/tsconfig. */
|
|
2
|
-
{
|
|
3
|
-
"extends": "../../tsconfig.json",
|
|
4
|
-
"compilerOptions": {
|
|
5
|
-
"outDir": "../../out-tsc/lib",
|
|
6
|
-
"declaration": true,
|
|
7
|
-
"declarationMap": true,
|
|
8
|
-
"inlineSources": true,
|
|
9
|
-
"types": [],
|
|
10
|
-
"strict": true
|
|
11
|
-
},
|
|
12
|
-
"exclude": [
|
|
13
|
-
"**/*.spec.ts"
|
|
14
|
-
]
|
|
15
|
-
}
|
package/tsconfig.lib.prod.json
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|