@breadstone-tools/cem-core 0.0.12-beta.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/Ast/Ast.d.ts +224 -0
- package/Ast/Ast.d.ts.map +1 -0
- package/Ast/Ast.js +557 -0
- package/Ast/Ast.js.map +1 -0
- package/Ast/Builder/BuildArrowFunction.d.ts +14 -0
- package/Ast/Builder/BuildArrowFunction.d.ts.map +1 -0
- package/Ast/Builder/BuildArrowFunction.js +29 -0
- package/Ast/Builder/BuildArrowFunction.js.map +1 -0
- package/Ast/Builder/BuildAttribute.d.ts +16 -0
- package/Ast/Builder/BuildAttribute.d.ts.map +1 -0
- package/Ast/Builder/BuildAttribute.js +36 -0
- package/Ast/Builder/BuildAttribute.js.map +1 -0
- package/Ast/Builder/BuildClass.d.ts +24 -0
- package/Ast/Builder/BuildClass.d.ts.map +1 -0
- package/Ast/Builder/BuildClass.js +251 -0
- package/Ast/Builder/BuildClass.js.map +1 -0
- package/Ast/Builder/BuildClassField.d.ts +14 -0
- package/Ast/Builder/BuildClassField.d.ts.map +1 -0
- package/Ast/Builder/BuildClassField.js +34 -0
- package/Ast/Builder/BuildClassField.js.map +1 -0
- package/Ast/Builder/BuildFunctionLike.d.ts +41 -0
- package/Ast/Builder/BuildFunctionLike.d.ts.map +1 -0
- package/Ast/Builder/BuildFunctionLike.js +80 -0
- package/Ast/Builder/BuildFunctionLike.js.map +1 -0
- package/Ast/Builder/BuildMixin.d.ts +19 -0
- package/Ast/Builder/BuildMixin.d.ts.map +1 -0
- package/Ast/Builder/BuildMixin.js +50 -0
- package/Ast/Builder/BuildMixin.js.map +1 -0
- package/Ast/Builder/BuildVariable.d.ts +15 -0
- package/Ast/Builder/BuildVariable.d.ts.map +1 -0
- package/Ast/Builder/BuildVariable.js +29 -0
- package/Ast/Builder/BuildVariable.js.map +1 -0
- package/Ast/Handler/HandleAttrJsDoc.d.ts +10 -0
- package/Ast/Handler/HandleAttrJsDoc.d.ts.map +1 -0
- package/Ast/Handler/HandleAttrJsDoc.js +43 -0
- package/Ast/Handler/HandleAttrJsDoc.js.map +1 -0
- package/Ast/Handler/HandleCollectMixins.d.ts +10 -0
- package/Ast/Handler/HandleCollectMixins.d.ts.map +1 -0
- package/Ast/Handler/HandleCollectMixins.js +27 -0
- package/Ast/Handler/HandleCollectMixins.js.map +1 -0
- package/Ast/Handler/HandleCreateClassDeclarationMixin.d.ts +9 -0
- package/Ast/Handler/HandleCreateClassDeclarationMixin.d.ts.map +1 -0
- package/Ast/Handler/HandleCreateClassDeclarationMixin.js +38 -0
- package/Ast/Handler/HandleCreateClassDeclarationMixin.js.map +1 -0
- package/Ast/Handler/HandleCustomJsDocTags.d.ts +8 -0
- package/Ast/Handler/HandleCustomJsDocTags.d.ts.map +1 -0
- package/Ast/Handler/HandleCustomJsDocTags.js +31 -0
- package/Ast/Handler/HandleCustomJsDocTags.js.map +1 -0
- package/Ast/Handler/HandleDefaultValue.d.ts +10 -0
- package/Ast/Handler/HandleDefaultValue.d.ts.map +1 -0
- package/Ast/Handler/HandleDefaultValue.js +48 -0
- package/Ast/Handler/HandleDefaultValue.js.map +1 -0
- package/Ast/Handler/HandleExplicitType.d.ts +10 -0
- package/Ast/Handler/HandleExplicitType.d.ts.map +1 -0
- package/Ast/Handler/HandleExplicitType.js +28 -0
- package/Ast/Handler/HandleExplicitType.js.map +1 -0
- package/Ast/Handler/HandleHeritage.d.ts +11 -0
- package/Ast/Handler/HandleHeritage.d.ts.map +1 -0
- package/Ast/Handler/HandleHeritage.js +67 -0
- package/Ast/Handler/HandleHeritage.js.map +1 -0
- package/Ast/Handler/HandleJsDoc.d.ts +9 -0
- package/Ast/Handler/HandleJsDoc.d.ts.map +1 -0
- package/Ast/Handler/HandleJsDoc.js +90 -0
- package/Ast/Handler/HandleJsDoc.js.map +1 -0
- package/Ast/Handler/HandleJsDocParameterTag.d.ts +8 -0
- package/Ast/Handler/HandleJsDocParameterTag.d.ts.map +1 -0
- package/Ast/Handler/HandleJsDocParameterTag.js +59 -0
- package/Ast/Handler/HandleJsDocParameterTag.js.map +1 -0
- package/Ast/Handler/HandleModifiers.d.ts +13 -0
- package/Ast/Handler/HandleModifiers.d.ts.map +1 -0
- package/Ast/Handler/HandleModifiers.js +49 -0
- package/Ast/Handler/HandleModifiers.js.map +1 -0
- package/Ast/Handler/HandlePrivateMember.d.ts +10 -0
- package/Ast/Handler/HandlePrivateMember.d.ts.map +1 -0
- package/Ast/Handler/HandlePrivateMember.js +25 -0
- package/Ast/Handler/HandlePrivateMember.js.map +1 -0
- package/Ast/Handler/HandleTypeInference.d.ts +9 -0
- package/Ast/Handler/HandleTypeInference.d.ts.map +1 -0
- package/Ast/Handler/HandleTypeInference.js +46 -0
- package/Ast/Handler/HandleTypeInference.js.map +1 -0
- package/Ast/Handler/HandleWellKnownTypes.d.ts +11 -0
- package/Ast/Handler/HandleWellKnownTypes.d.ts.map +1 -0
- package/Ast/Handler/HandleWellKnownTypes.js +28 -0
- package/Ast/Handler/HandleWellKnownTypes.js.map +1 -0
- package/Ast/Manifest.d.ts +47 -0
- package/Ast/Manifest.d.ts.map +1 -0
- package/Ast/Manifest.js +209 -0
- package/Ast/Manifest.js.map +1 -0
- package/Index.d.ts +9 -0
- package/Index.d.ts.map +1 -0
- package/Index.js +8 -0
- package/Index.js.map +1 -0
- package/LICENSE +21 -0
- package/Plugins/Analyse/ArrowFunctionPlugin.d.ts +13 -0
- package/Plugins/Analyse/ArrowFunctionPlugin.d.ts.map +1 -0
- package/Plugins/Analyse/ArrowFunctionPlugin.js +37 -0
- package/Plugins/Analyse/ArrowFunctionPlugin.js.map +1 -0
- package/Plugins/Analyse/ClassJsDocPlugin.d.ts +25 -0
- package/Plugins/Analyse/ClassJsDocPlugin.d.ts.map +1 -0
- package/Plugins/Analyse/ClassJsDocPlugin.js +200 -0
- package/Plugins/Analyse/ClassJsDocPlugin.js.map +1 -0
- package/Plugins/Analyse/ClassPlugin.d.ts +13 -0
- package/Plugins/Analyse/ClassPlugin.d.ts.map +1 -0
- package/Plugins/Analyse/ClassPlugin.js +32 -0
- package/Plugins/Analyse/ClassPlugin.js.map +1 -0
- package/Plugins/Analyse/CustomElementsDefineCallsPlugin.d.ts +15 -0
- package/Plugins/Analyse/CustomElementsDefineCallsPlugin.d.ts.map +1 -0
- package/Plugins/Analyse/CustomElementsDefineCallsPlugin.js +112 -0
- package/Plugins/Analyse/CustomElementsDefineCallsPlugin.js.map +1 -0
- package/Plugins/Analyse/ExportsPlugin.d.ts +18 -0
- package/Plugins/Analyse/ExportsPlugin.d.ts.map +1 -0
- package/Plugins/Analyse/ExportsPlugin.js +154 -0
- package/Plugins/Analyse/ExportsPlugin.js.map +1 -0
- package/Plugins/Analyse/FunctionLikePlugin.d.ts +14 -0
- package/Plugins/Analyse/FunctionLikePlugin.d.ts.map +1 -0
- package/Plugins/Analyse/FunctionLikePlugin.js +36 -0
- package/Plugins/Analyse/FunctionLikePlugin.js.map +1 -0
- package/Plugins/Analyse/MixinPlugin.d.ts +13 -0
- package/Plugins/Analyse/MixinPlugin.d.ts.map +1 -0
- package/Plugins/Analyse/MixinPlugin.js +36 -0
- package/Plugins/Analyse/MixinPlugin.js.map +1 -0
- package/Plugins/Analyse/ReexportedWrappedMixinExportsPlugin.d.ts +15 -0
- package/Plugins/Analyse/ReexportedWrappedMixinExportsPlugin.d.ts.map +1 -0
- package/Plugins/Analyse/ReexportedWrappedMixinExportsPlugin.js +56 -0
- package/Plugins/Analyse/ReexportedWrappedMixinExportsPlugin.js.map +1 -0
- package/Plugins/Analyse/VariablePlugin.d.ts +13 -0
- package/Plugins/Analyse/VariablePlugin.d.ts.map +1 -0
- package/Plugins/Analyse/VariablePlugin.js +40 -0
- package/Plugins/Analyse/VariablePlugin.js.map +1 -0
- package/Plugins/Collect/CollectImportsPlugin.d.ts +6 -0
- package/Plugins/Collect/CollectImportsPlugin.d.ts.map +1 -0
- package/Plugins/Collect/CollectImportsPlugin.js +100 -0
- package/Plugins/Collect/CollectImportsPlugin.js.map +1 -0
- package/Plugins/Framework/Catalyst/Catalyst.d.ts +3 -0
- package/Plugins/Framework/Catalyst/Catalyst.d.ts.map +1 -0
- package/Plugins/Framework/Catalyst/Catalyst.js +9 -0
- package/Plugins/Framework/Catalyst/Catalyst.js.map +1 -0
- package/Plugins/Framework/Fast/Fast.d.ts +3 -0
- package/Plugins/Framework/Fast/Fast.d.ts.map +1 -0
- package/Plugins/Framework/Fast/Fast.js +9 -0
- package/Plugins/Framework/Fast/Fast.js.map +1 -0
- package/Plugins/Framework/Lit/Lit.d.ts +8 -0
- package/Plugins/Framework/Lit/Lit.d.ts.map +1 -0
- package/Plugins/Framework/Lit/Lit.js +25 -0
- package/Plugins/Framework/Lit/Lit.js.map +1 -0
- package/Plugins/Framework/Lit/MemberDenyListPlugin.d.ts +16 -0
- package/Plugins/Framework/Lit/MemberDenyListPlugin.d.ts.map +1 -0
- package/Plugins/Framework/Lit/MemberDenyListPlugin.js +37 -0
- package/Plugins/Framework/Lit/MemberDenyListPlugin.js.map +1 -0
- package/Plugins/Framework/Lit/MethodDenyListPlugin.d.ts +24 -0
- package/Plugins/Framework/Lit/MethodDenyListPlugin.d.ts.map +1 -0
- package/Plugins/Framework/Lit/MethodDenyListPlugin.js +51 -0
- package/Plugins/Framework/Lit/MethodDenyListPlugin.js.map +1 -0
- package/Plugins/Framework/Lit/PropertyDecoratorPlugin.d.ts +16 -0
- package/Plugins/Framework/Lit/PropertyDecoratorPlugin.d.ts.map +1 -0
- package/Plugins/Framework/Lit/PropertyDecoratorPlugin.js +100 -0
- package/Plugins/Framework/Lit/PropertyDecoratorPlugin.js.map +1 -0
- package/Plugins/Framework/Lit/StaticPropertiesPlugin.d.ts +17 -0
- package/Plugins/Framework/Lit/StaticPropertiesPlugin.d.ts.map +1 -0
- package/Plugins/Framework/Lit/StaticPropertiesPlugin.js +126 -0
- package/Plugins/Framework/Lit/StaticPropertiesPlugin.js.map +1 -0
- package/Plugins/Framework/Lwc/Lwc.d.ts +3 -0
- package/Plugins/Framework/Lwc/Lwc.d.ts.map +1 -0
- package/Plugins/Framework/Lwc/Lwc.js +9 -0
- package/Plugins/Framework/Lwc/Lwc.js.map +1 -0
- package/Plugins/Framework/Shared/AttrDecoratorPlugin.d.ts +18 -0
- package/Plugins/Framework/Shared/AttrDecoratorPlugin.d.ts.map +1 -0
- package/Plugins/Framework/Shared/AttrDecoratorPlugin.js +80 -0
- package/Plugins/Framework/Shared/AttrDecoratorPlugin.js.map +1 -0
- package/Plugins/Framework/Shared/CustomElementDecoratorPlugin.d.ts +14 -0
- package/Plugins/Framework/Shared/CustomElementDecoratorPlugin.d.ts.map +1 -0
- package/Plugins/Framework/Shared/CustomElementDecoratorPlugin.js +67 -0
- package/Plugins/Framework/Shared/CustomElementDecoratorPlugin.js.map +1 -0
- package/Plugins/Framework/Stencil/Stencil.d.ts +3 -0
- package/Plugins/Framework/Stencil/Stencil.d.ts.map +1 -0
- package/Plugins/Framework/Stencil/Stencil.js +9 -0
- package/Plugins/Framework/Stencil/Stencil.js.map +1 -0
- package/Plugins/Link/CleanupClassesPlugin.d.ts +6 -0
- package/Plugins/Link/CleanupClassesPlugin.d.ts.map +1 -0
- package/Plugins/Link/CleanupClassesPlugin.js +24 -0
- package/Plugins/Link/CleanupClassesPlugin.js.map +1 -0
- package/Plugins/Link/FieldDenyListPlugin.d.ts +6 -0
- package/Plugins/Link/FieldDenyListPlugin.d.ts.map +1 -0
- package/Plugins/Link/FieldDenyListPlugin.js +23 -0
- package/Plugins/Link/FieldDenyListPlugin.js.map +1 -0
- package/Plugins/Link/MethodDenyListPlugin.d.ts +6 -0
- package/Plugins/Link/MethodDenyListPlugin.d.ts.map +1 -0
- package/Plugins/Link/MethodDenyListPlugin.js +26 -0
- package/Plugins/Link/MethodDenyListPlugin.js.map +1 -0
- package/Plugins/PostProcessing/ApplyInheritancePlugin.d.ts +6 -0
- package/Plugins/PostProcessing/ApplyInheritancePlugin.d.ts.map +1 -0
- package/Plugins/PostProcessing/ApplyInheritancePlugin.js +87 -0
- package/Plugins/PostProcessing/ApplyInheritancePlugin.js.map +1 -0
- package/Plugins/PostProcessing/IsCustomElementPlugin.d.ts +6 -0
- package/Plugins/PostProcessing/IsCustomElementPlugin.d.ts.map +1 -0
- package/Plugins/PostProcessing/IsCustomElementPlugin.js +35 -0
- package/Plugins/PostProcessing/IsCustomElementPlugin.js.map +1 -0
- package/Plugins/PostProcessing/LinkClassToTagnamePlugin.d.ts +6 -0
- package/Plugins/PostProcessing/LinkClassToTagnamePlugin.d.ts.map +1 -0
- package/Plugins/PostProcessing/LinkClassToTagnamePlugin.js +28 -0
- package/Plugins/PostProcessing/LinkClassToTagnamePlugin.js.map +1 -0
- package/Plugins/PostProcessing/RemoveUnexportedDeclarationsPlugin.d.ts +6 -0
- package/Plugins/PostProcessing/RemoveUnexportedDeclarationsPlugin.d.ts.map +1 -0
- package/Plugins/PostProcessing/RemoveUnexportedDeclarationsPlugin.js +21 -0
- package/Plugins/PostProcessing/RemoveUnexportedDeclarationsPlugin.js.map +1 -0
- package/Plugins/PostProcessing/ResolveInitializersPlugin.d.ts +6 -0
- package/Plugins/PostProcessing/ResolveInitializersPlugin.d.ts.map +1 -0
- package/Plugins/PostProcessing/ResolveInitializersPlugin.js +59 -0
- package/Plugins/PostProcessing/ResolveInitializersPlugin.js.map +1 -0
- package/Services/DependencyService.d.ts +1 -0
- package/Services/DependencyService.d.ts.map +1 -0
- package/Services/DependencyService.js +112 -0
- package/Services/DependencyService.js.map +1 -0
- package/Services/Interfaces/IDependencyService.d.ts +12 -0
- package/Services/Interfaces/IDependencyService.d.ts.map +1 -0
- package/Services/Interfaces/IDependencyService.js +4 -0
- package/Services/Interfaces/IDependencyService.js.map +1 -0
- package/Services/Interfaces/IManifestBuilder.d.ts +16 -0
- package/Services/Interfaces/IManifestBuilder.d.ts.map +1 -0
- package/Services/Interfaces/IManifestBuilder.js +4 -0
- package/Services/Interfaces/IManifestBuilder.js.map +1 -0
- package/Services/Interfaces/IManifestEngine.d.ts +16 -0
- package/Services/Interfaces/IManifestEngine.d.ts.map +1 -0
- package/Services/Interfaces/IManifestEngine.js +4 -0
- package/Services/Interfaces/IManifestEngine.js.map +1 -0
- package/Services/ManifestBuilder.d.ts +47 -0
- package/Services/ManifestBuilder.d.ts.map +1 -0
- package/Services/ManifestBuilder.js +49 -0
- package/Services/ManifestBuilder.js.map +1 -0
- package/Services/ManifestEngine.d.ts +62 -0
- package/Services/ManifestEngine.d.ts.map +1 -0
- package/Services/ManifestEngine.js +283 -0
- package/Services/ManifestEngine.js.map +1 -0
- package/Types/Framework.d.ts +2 -0
- package/Types/Framework.d.ts.map +1 -0
- package/Types/Framework.js +3 -0
- package/Types/Framework.js.map +1 -0
- package/Types.d.ts +1 -0
- package/Types.d.ts.map +1 -0
- package/Types.js +45 -0
- package/Types.js.map +1 -0
- package/Utils.d.ts +50 -0
- package/Utils.d.ts.map +1 -0
- package/Utils.js +147 -0
- package/Utils.js.map +1 -0
- package/package.json +23 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//#region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.methodDenyListPlugin = methodDenyListPlugin;
|
|
5
|
+
//#endregion
|
|
6
|
+
/**
|
|
7
|
+
* Method Deny List Plugin - Excludes methods from the manifest.
|
|
8
|
+
*/
|
|
9
|
+
function methodDenyListPlugin() {
|
|
10
|
+
const METHOD_DENY_LIST = [
|
|
11
|
+
'connectedCallback',
|
|
12
|
+
'disconnectedCallback',
|
|
13
|
+
'attributeChangedCallback',
|
|
14
|
+
'adoptedCallback'
|
|
15
|
+
];
|
|
16
|
+
return {
|
|
17
|
+
name: 'CORE - METHOD-DENYLIST',
|
|
18
|
+
onModuleLink: (parmas) => {
|
|
19
|
+
const classes = parmas.moduleDoc.declarations?.filter((declaration) => declaration.kind === 'class' || declaration.kind === 'mixin');
|
|
20
|
+
classes?.forEach((klass) => {
|
|
21
|
+
klass.members = klass?.members?.filter((member) => !METHOD_DENY_LIST.includes(member.name));
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=MethodDenyListPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MethodDenyListPlugin.js","sourceRoot":"","sources":["../../../src/Plugins/Link/MethodDenyListPlugin.ts"],"names":[],"mappings":";AAAA,iBAAiB;;AASjB,oDAkBC;AAvBD,YAAY;AAEZ;;GAEG;AACH,SAAgB,oBAAoB;IAChC,MAAM,gBAAgB,GAAG;QACrB,mBAAmB;QACnB,sBAAsB;QACtB,0BAA0B;QAC1B,iBAAiB;KACpB,CAAC;IAEF,OAAO;QACH,IAAI,EAAE,wBAAwB;QAC9B,YAAY,EAAE,CAAC,MAA8B,EAAE,EAAE;YAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,WAAgB,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAE1I,OAAO,EAAE,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;gBAC5B,KAAK,CAAC,OAAO,GAAG,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACrG,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { IPlugin } from '@breadstone-tools/cem-plugin';
|
|
2
|
+
/**
|
|
3
|
+
* Apply Inheritance Plugin - Applies inheritance for all classes in the manifest.
|
|
4
|
+
*/
|
|
5
|
+
export declare function applyInheritancePlugin(): IPlugin;
|
|
6
|
+
//# sourceMappingURL=ApplyInheritancePlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApplyInheritancePlugin.d.ts","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/ApplyInheritancePlugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA2B,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAKrF;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAkEhD"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//#region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.applyInheritancePlugin = applyInheritancePlugin;
|
|
5
|
+
const Manifest_js_1 = require("../../Ast/Manifest.js");
|
|
6
|
+
//#endregion
|
|
7
|
+
/**
|
|
8
|
+
* Apply Inheritance Plugin - Applies inheritance for all classes in the manifest.
|
|
9
|
+
*/
|
|
10
|
+
function applyInheritancePlugin() {
|
|
11
|
+
return {
|
|
12
|
+
name: 'CORE - APPLY-INHERITANCE',
|
|
13
|
+
onPackageLink: (params) => {
|
|
14
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
15
|
+
// @ts-ignore
|
|
16
|
+
const allManifests = [params.customElementsManifest, ...(params.context.thirdPartyCEMs || [])];
|
|
17
|
+
const classLikes = [];
|
|
18
|
+
allManifests.forEach(manifest => {
|
|
19
|
+
const classes = (0, Manifest_js_1.getAllDeclarationsOfKind)(manifest, 'class');
|
|
20
|
+
const mixins = (0, Manifest_js_1.getAllDeclarationsOfKind)(manifest, 'mixin');
|
|
21
|
+
classLikes.push(...classes, ...mixins);
|
|
22
|
+
});
|
|
23
|
+
classLikes.forEach(customElement => {
|
|
24
|
+
const inheritanceChain = (0, Manifest_js_1.getInheritanceTree)(allManifests, customElement.name);
|
|
25
|
+
inheritanceChain.forEach((klass) => {
|
|
26
|
+
if (klass?.name === customElement.name) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
['slots', 'cssParts', 'cssProperties', 'attributes', 'members', 'events', 'cssStates'].forEach(type => {
|
|
30
|
+
klass?.[type]?.forEach((currItem) => {
|
|
31
|
+
const containingModulePath = (0, Manifest_js_1.getModuleForClassLike)(allManifests, klass.name);
|
|
32
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
const containingModule = (0, Manifest_js_1.getModuleFromManifests)(allManifests, containingModulePath);
|
|
35
|
+
const newItem = { ...currItem };
|
|
36
|
+
const existing = customElement?.[type]?.find((item) => newItem.name === item.name);
|
|
37
|
+
if (existing) {
|
|
38
|
+
existing.inheritedFrom = {
|
|
39
|
+
name: klass.name,
|
|
40
|
+
...resolveModuleOrPackageSpecifier(containingModule, params.context, klass.name)
|
|
41
|
+
};
|
|
42
|
+
customElement[type] = customElement?.[type]?.map((item) => item.name === existing.name
|
|
43
|
+
? {
|
|
44
|
+
...newItem,
|
|
45
|
+
...existing,
|
|
46
|
+
...{
|
|
47
|
+
...(newItem.type ? { type: newItem.type } : {}),
|
|
48
|
+
...(newItem.privacy ? { privacy: newItem.privacy } : {})
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
: item);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
newItem.inheritedFrom = {
|
|
55
|
+
name: klass.name,
|
|
56
|
+
...resolveModuleOrPackageSpecifier(containingModule, params.context, klass.name)
|
|
57
|
+
};
|
|
58
|
+
customElement[type] = [...(customElement[type] || []), newItem];
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Resolves the module or package specifier for a given name.
|
|
69
|
+
* @param moduleDoc - The module documentation object.
|
|
70
|
+
* @param context - The context object containing imports.
|
|
71
|
+
* @param name - The name to resolve the specifier for.
|
|
72
|
+
* @returns An object with the resolved module or package specifier.
|
|
73
|
+
*/
|
|
74
|
+
function resolveModuleOrPackageSpecifier(moduleDoc, context, name) {
|
|
75
|
+
const foundImport = context?.imports?.find((i) => i.name === name);
|
|
76
|
+
if (foundImport) {
|
|
77
|
+
if (foundImport.isBareModuleSpecifier) {
|
|
78
|
+
// Import is from a 3rd party package
|
|
79
|
+
return { package: foundImport.importPath };
|
|
80
|
+
}
|
|
81
|
+
// Import is from a local module
|
|
82
|
+
return { module: new URL(foundImport.importPath, `file:///${moduleDoc.path}`).pathname };
|
|
83
|
+
}
|
|
84
|
+
// Item is in the current module
|
|
85
|
+
return { module: moduleDoc.path };
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=ApplyInheritancePlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApplyInheritancePlugin.js","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/ApplyInheritancePlugin.ts"],"names":[],"mappings":";AAAA,iBAAiB;;AAUjB,wDAkEC;AAzED,uDAAoI;AAEpI,YAAY;AAEZ;;GAEG;AACH,SAAgB,sBAAsB;IAClC,OAAO;QACH,IAAI,EAAE,0BAA0B;QAChC,aAAa,EAAE,CAAC,MAA+B,EAAE,EAAE;YAC/C,6DAA6D;YAC7D,aAAa;YACb,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;YAC/F,MAAM,UAAU,GAAe,EAAE,CAAC;YAElC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAC5B,MAAM,OAAO,GAAG,IAAA,sCAAwB,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC5D,MAAM,MAAM,GAAG,IAAA,sCAAwB,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC3D,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;YAEH,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;gBAC/B,MAAM,gBAAgB,GAAG,IAAA,gCAAkB,EAAC,YAAY,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;gBAE9E,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;oBACpC,IAAI,KAAK,EAAE,IAAI,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;wBACrC,OAAO;oBACX,CAAC;oBAED,CAAC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;wBAClG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,QAAa,EAAE,EAAE;4BACrC,MAAM,oBAAoB,GAAG,IAAA,mCAAqB,EAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;4BAC7E,6DAA6D;4BAC7D,aAAa;4BACb,MAAM,gBAAgB,GAAG,IAAA,oCAAsB,EAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;4BAEpF,MAAM,OAAO,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;4BAEhC,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;4BAExF,IAAI,QAAQ,EAAE,CAAC;gCACX,QAAQ,CAAC,aAAa,GAAG;oCACrB,IAAI,EAAE,KAAK,CAAC,IAAI;oCAChB,GAAG,+BAA+B,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC;iCACnF,CAAC;gCAEF,aAAa,CAAC,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAC3D,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;oCACvB,CAAC,CAAC;wCACE,GAAG,OAAO;wCACV,GAAG,QAAQ;wCACX,GAAG;4CACC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4CAC/C,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yCAC3D;qCACJ;oCACD,CAAC,CAAC,IAAI,CACb,CAAC;4BACN,CAAC;iCAAM,CAAC;gCACJ,OAAO,CAAC,aAAa,GAAG;oCACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oCAChB,GAAG,+BAA+B,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC;iCACnF,CAAC;gCAEF,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;4BACpE,CAAC;wBACL,CAAC,CAAC,CAAC;oBACP,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,SAAS,+BAA+B,CAAC,SAAc,EAAE,OAAY,EAAE,IAAY;IAC/E,MAAM,WAAW,GAAG,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAExE,IAAI,WAAW,EAAE,CAAC;QACd,IAAI,WAAW,CAAC,qBAAqB,EAAE,CAAC;YACpC,qCAAqC;YACrC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC;QAC/C,CAAC;QAED,gCAAgC;QAChC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7F,CAAC;IAED,gCAAgC;IAChC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { IPlugin } from '@breadstone-tools/cem-plugin';
|
|
2
|
+
/**
|
|
3
|
+
* Is Custom Element Plugin - Heuristic to see whether or not a class is a custom element.
|
|
4
|
+
*/
|
|
5
|
+
export declare function isCustomElementPlugin(): IPlugin;
|
|
6
|
+
//# sourceMappingURL=IsCustomElementPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IsCustomElementPlugin.d.ts","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/IsCustomElementPlugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA2B,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAIrF;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CA4B/C"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//#region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.isCustomElementPlugin = isCustomElementPlugin;
|
|
5
|
+
//#endregion
|
|
6
|
+
/**
|
|
7
|
+
* Is Custom Element Plugin - Heuristic to see whether or not a class is a custom element.
|
|
8
|
+
*/
|
|
9
|
+
function isCustomElementPlugin() {
|
|
10
|
+
const BASECLASSES = [
|
|
11
|
+
'htmlelement',
|
|
12
|
+
'litelement',
|
|
13
|
+
'fastelement'
|
|
14
|
+
];
|
|
15
|
+
return {
|
|
16
|
+
name: 'CORE - IS-CUSTOM-ELEMENT',
|
|
17
|
+
onPackageLink: (params) => {
|
|
18
|
+
params.customElementsManifest.modules.forEach((_module) => {
|
|
19
|
+
_module?.declarations?.forEach((declaration) => {
|
|
20
|
+
if (declaration?.kind === 'class') {
|
|
21
|
+
/** If a class has a tagName, that means it's been defined, and is a custom element */
|
|
22
|
+
if (declaration?.tagName) {
|
|
23
|
+
declaration.customElement = true;
|
|
24
|
+
}
|
|
25
|
+
/** If a class extends from any of these, it's a custom element */
|
|
26
|
+
if (BASECLASSES.includes(declaration?.superclass?.name?.toLowerCase())) {
|
|
27
|
+
declaration.customElement = true;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=IsCustomElementPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IsCustomElementPlugin.js","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/IsCustomElementPlugin.ts"],"names":[],"mappings":";AAAA,iBAAiB;;AASjB,sDA4BC;AAjCD,YAAY;AAEZ;;GAEG;AACH,SAAgB,qBAAqB;IACjC,MAAM,WAAW,GAAG;QAChB,aAAa;QACb,YAAY;QACZ,aAAa;KAChB,CAAC;IAEF,OAAO;QACH,IAAI,EAAE,0BAA0B;QAChC,aAAa,EAAE,CAAC,MAA+B,EAAE,EAAE;YAC/C,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE;gBAC3D,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC,WAAgB,EAAE,EAAE;oBAChD,IAAI,WAAW,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;wBAEhC,sFAAsF;wBACtF,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;4BACvB,WAAW,CAAC,aAAa,GAAG,IAAI,CAAC;wBACrC,CAAC;wBAED,kEAAkE;wBAClE,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;4BACrE,WAAW,CAAC,aAAa,GAAG,IAAI,CAAC;wBACrC,CAAC;oBACL,CAAC;gBACL,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { IPlugin } from '@breadstone-tools/cem-plugin';
|
|
2
|
+
/**
|
|
3
|
+
* Link Class To Tagname Plugin - Links a custom element definition to its corresponding class.
|
|
4
|
+
*/
|
|
5
|
+
export declare function linkClassToTagnamePlugin(): IPlugin;
|
|
6
|
+
//# sourceMappingURL=LinkClassToTagnamePlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkClassToTagnamePlugin.d.ts","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/LinkClassToTagnamePlugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA2B,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAKrF;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,OAAO,CAmBlD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//#region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.linkClassToTagnamePlugin = linkClassToTagnamePlugin;
|
|
5
|
+
const Manifest_js_1 = require("../../Ast/Manifest.js");
|
|
6
|
+
//#endregion
|
|
7
|
+
/**
|
|
8
|
+
* Link Class To Tagname Plugin - Links a custom element definition to its corresponding class.
|
|
9
|
+
*/
|
|
10
|
+
function linkClassToTagnamePlugin() {
|
|
11
|
+
return {
|
|
12
|
+
name: 'CORE - LINK-CLASS-TO-TAGNAME',
|
|
13
|
+
onPackageLink: (params) => {
|
|
14
|
+
// Get all class declarations and custom element definitions in the manifest
|
|
15
|
+
const classes = (0, Manifest_js_1.getAllDeclarationsOfKind)(params.customElementsManifest, 'class');
|
|
16
|
+
const definitions = (0, Manifest_js_1.getAllExportsOfKind)(params.customElementsManifest, 'custom-element-definition');
|
|
17
|
+
// Loop through all classes, and try to find their corresponding custom element definition
|
|
18
|
+
classes.forEach((klass) => {
|
|
19
|
+
const tagName = definitions.find((def) => def?.declaration?.name === klass?.name)?.name;
|
|
20
|
+
// If there's a match, we can link the custom element definition to the class
|
|
21
|
+
if (tagName && !klass.tagName) {
|
|
22
|
+
klass.tagName = tagName;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=LinkClassToTagnamePlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkClassToTagnamePlugin.js","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/LinkClassToTagnamePlugin.ts"],"names":[],"mappings":";AAAA,iBAAiB;;AAUjB,4DAmBC;AA1BD,uDAAsF;AAEtF,YAAY;AAEZ;;GAEG;AACH,SAAgB,wBAAwB;IACpC,OAAO;QACH,IAAI,EAAE,8BAA8B;QACpC,aAAa,EAAE,CAAC,MAA+B,EAAE,EAAE;YAC/C,4EAA4E;YAC5E,MAAM,OAAO,GAAG,IAAA,sCAAwB,EAAC,MAAM,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;YACjF,MAAM,WAAW,GAAG,IAAA,iCAAmB,EAAC,MAAM,CAAC,sBAAsB,EAAE,2BAA2B,CAAC,CAAC;YAEpG,0FAA0F;YAC1F,OAAO,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;gBAC3B,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,KAAK,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC;gBAE7F,6EAA6E;gBAC7E,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBAC5B,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC5B,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { IPlugin } from '@breadstone-tools/cem-plugin';
|
|
2
|
+
/**
|
|
3
|
+
* Remove Unexported Declarations Plugin - If a module has declarations that are _not_ exported, that means those declarations are considered 'private' to that module, and they shouldn't be present in the manifest, so we remove them.
|
|
4
|
+
*/
|
|
5
|
+
export declare function removeUnexportedDeclarationsPlugin(): IPlugin;
|
|
6
|
+
//# sourceMappingURL=RemoveUnexportedDeclarationsPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoveUnexportedDeclarationsPlugin.d.ts","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/RemoveUnexportedDeclarationsPlugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA2B,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAIrF;;GAEG;AACH,wBAAgB,kCAAkC,IAAI,OAAO,CAW5D"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//#region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.removeUnexportedDeclarationsPlugin = removeUnexportedDeclarationsPlugin;
|
|
5
|
+
//#endregion
|
|
6
|
+
/**
|
|
7
|
+
* Remove Unexported Declarations Plugin - If a module has declarations that are _not_ exported, that means those declarations are considered 'private' to that module, and they shouldn't be present in the manifest, so we remove them.
|
|
8
|
+
*/
|
|
9
|
+
function removeUnexportedDeclarationsPlugin() {
|
|
10
|
+
return {
|
|
11
|
+
name: 'CORE - REMOVE-UNEXPORTED-DECLARATIONS',
|
|
12
|
+
onPackageLink: (params) => {
|
|
13
|
+
params.customElementsManifest.modules.forEach((mod) => {
|
|
14
|
+
if (Array.isArray(mod?.declarations)) {
|
|
15
|
+
mod.declarations = mod?.declarations?.filter((declaration) => mod?.exports?.some((_export) => declaration?.name === _export?.name || declaration?.name === _export?.declaration?.name));
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=RemoveUnexportedDeclarationsPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoveUnexportedDeclarationsPlugin.js","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/RemoveUnexportedDeclarationsPlugin.ts"],"names":[],"mappings":";AAAA,iBAAiB;;AASjB,gFAWC;AAhBD,YAAY;AAEZ;;GAEG;AACH,SAAgB,kCAAkC;IAC9C,OAAO;QACH,IAAI,EAAE,uCAAuC;QAC7C,aAAa,EAAE,CAAC,MAA+B,EAAE,EAAE;YAC/C,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAQ,EAAE,EAAE;gBACvD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,CAAC;oBACnC,GAAG,CAAC,YAAY,GAAG,GAAG,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,WAAgB,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,WAAW,EAAE,IAAI,KAAK,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,IAAI,KAAK,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;gBACtM,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { IPlugin } from '@breadstone-tools/cem-plugin';
|
|
2
|
+
/**
|
|
3
|
+
* Resolve Initializers Plugin - Resolves initializers for class fields that have a `resolveInitializer` property.
|
|
4
|
+
*/
|
|
5
|
+
export declare function resolveInitializersPlugin(): IPlugin;
|
|
6
|
+
//# sourceMappingURL=ResolveInitializersPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResolveInitializersPlugin.d.ts","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/ResolveInitializersPlugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA2B,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAIrF;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,OAAO,CAyDnD"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//#region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.resolveInitializersPlugin = resolveInitializersPlugin;
|
|
5
|
+
//#endregion
|
|
6
|
+
/**
|
|
7
|
+
* Resolve Initializers Plugin - Resolves initializers for class fields that have a `resolveInitializer` property.
|
|
8
|
+
*/
|
|
9
|
+
function resolveInitializersPlugin() {
|
|
10
|
+
return {
|
|
11
|
+
name: 'CORE - RESOLVE-INITIALIZERS',
|
|
12
|
+
onPackageLink: (params) => {
|
|
13
|
+
params.customElementsManifest.modules.forEach((mod) => {
|
|
14
|
+
mod?.declarations?.forEach((declaration) => {
|
|
15
|
+
declaration?.members
|
|
16
|
+
?.filter(({ resolveInitializer }) => resolveInitializer)
|
|
17
|
+
?.forEach((member) => {
|
|
18
|
+
/** We ignore variables imported from a third party package */
|
|
19
|
+
if ('package' in member.resolveInitializer) {
|
|
20
|
+
delete member.resolveInitializer;
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
/** Find the module */
|
|
24
|
+
const foundModule = params.customElementsManifest.modules.find(({ path }) => {
|
|
25
|
+
let toResolve = url(member?.resolveInitializer?.module);
|
|
26
|
+
const modulePath = url(path);
|
|
27
|
+
if (!toResolve.endsWith('.js') && !toResolve.endsWith('.ts')) {
|
|
28
|
+
toResolve += '.ts';
|
|
29
|
+
}
|
|
30
|
+
return toResolve === modulePath;
|
|
31
|
+
});
|
|
32
|
+
if (foundModule) {
|
|
33
|
+
/** Find the declaration */
|
|
34
|
+
const foundReference = foundModule.declarations?.find((decl) => decl?.name === member?.default);
|
|
35
|
+
/** Overwrite the type with the type of the reference we found */
|
|
36
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
37
|
+
// @ts-ignore
|
|
38
|
+
if (foundReference?.type && !member?.type) {
|
|
39
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
40
|
+
// @ts-ignore
|
|
41
|
+
member.type = foundReference.type;
|
|
42
|
+
}
|
|
43
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
44
|
+
// @ts-ignore
|
|
45
|
+
if (foundReference?.default) {
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
47
|
+
// @ts-ignore
|
|
48
|
+
member.default = foundReference.default;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
delete member.resolveInitializer;
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
const url = (path) => new URL('', `file:///${path}`).pathname;
|
|
59
|
+
//# sourceMappingURL=ResolveInitializersPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResolveInitializersPlugin.js","sourceRoot":"","sources":["../../../src/Plugins/PostProcessing/ResolveInitializersPlugin.ts"],"names":[],"mappings":";AAAA,iBAAiB;;AASjB,8DAyDC;AA9DD,YAAY;AAEZ;;GAEG;AACH,SAAgB,yBAAyB;IACrC,OAAO;QACH,IAAI,EAAE,6BAA6B;QACnC,aAAa,EAAE,CAAC,MAA+B,EAAE,EAAE;YAC/C,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAQ,EAAE,EAAE;gBACvD,GAAG,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC,WAAgB,EAAE,EAAE;oBAC5C,WAAW,EAAE,OAAO;wBAChB,EAAE,MAAM,CAAC,CAAC,EAAE,kBAAkB,EAA+B,EAAE,EAAE,CAAC,kBAAkB,CAAC;wBACrF,EAAE,OAAO,CAAC,CAAC,MAAW,EAAE,EAAE;wBAEtB,8DAA8D;wBAC9D,IAAI,SAAS,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;4BACzC,OAAO,MAAM,CAAC,kBAAkB,CAAC;4BACjC,OAAO;wBACX,CAAC;wBAED,sBAAsB;wBACtB,MAAM,WAAW,GAAG,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;4BAC1F,IAAI,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;4BACxD,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;4BAE7B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gCAC3D,SAAS,IAAI,KAAK,CAAC;4BACvB,CAAC;4BAED,OAAO,SAAS,KAAK,UAAU,CAAC;wBACpC,CAAC,CAAC,CAAC;wBAEH,IAAI,WAAW,EAAE,CAAC;4BAEd,2BAA2B;4BAC3B,MAAM,cAAc,GAAG,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,EAAE,OAAO,CAAC,CAAC;4BAErG,iEAAiE;4BACjE,6DAA6D;4BAC7D,aAAa;4BACb,IAAI,cAAc,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;gCACxC,6DAA6D;gCAC7D,aAAa;gCACb,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;4BACtC,CAAC;4BAED,6DAA6D;4BAC7D,aAAa;4BACb,IAAI,cAAc,EAAE,OAAO,EAAE,CAAC;gCAC1B,6DAA6D;gCAC7D,aAAa;gCACb,MAAM,CAAC,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC;4BAC5C,CAAC;wBACL,CAAC;wBAED,OAAO,MAAM,CAAC,kBAAkB,CAAC;oBACrC,CAAC,CAAC,CAAC;gBACX,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC;AAED,MAAM,GAAG,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,GAAG,CAAC,EAAE,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=DependencyService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DependencyService.d.ts","sourceRoot":"","sources":["../../src/Services/DependencyService.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// //#region Imports
|
|
3
|
+
// import { type Logger } from '@breadstone-infrastructure/utilities';
|
|
4
|
+
// import { init, parse } from 'es-module-lexer';
|
|
5
|
+
// import fs from 'fs';
|
|
6
|
+
// import { builtinModules, createRequire } from 'module';
|
|
7
|
+
// import path from 'path';
|
|
8
|
+
// import { isBareModuleSpecifier, splitPath, traverseUp } from '../Utils.js';
|
|
9
|
+
// import { type IDependencyService } from './Interfaces/IDependencyService';
|
|
10
|
+
// //#endregion
|
|
11
|
+
// const require = createRequire(import.meta.url);
|
|
12
|
+
// /**
|
|
13
|
+
// * The `DependencyService` class.
|
|
14
|
+
// *
|
|
15
|
+
// * @public
|
|
16
|
+
// */
|
|
17
|
+
// export class DependencyService implements IDependencyService {
|
|
18
|
+
// //#region Fields
|
|
19
|
+
// private readonly _logger: Logger;
|
|
20
|
+
// //#endregion
|
|
21
|
+
// //#region Ctor
|
|
22
|
+
// /**
|
|
23
|
+
// * Constructs a new instance of the `DependencyService` class.
|
|
24
|
+
// *
|
|
25
|
+
// * @public
|
|
26
|
+
// */
|
|
27
|
+
// public constructor(logger: Logger) {
|
|
28
|
+
// this._logger = logger;
|
|
29
|
+
// }
|
|
30
|
+
// //#endregion
|
|
31
|
+
// //#region Properties
|
|
32
|
+
// //#endregion
|
|
33
|
+
// //#region Methods
|
|
34
|
+
// /**
|
|
35
|
+
// * Finds dependencies for the given paths.
|
|
36
|
+
// *
|
|
37
|
+
// * @param paths - The array of paths to scan for dependencies.
|
|
38
|
+
// * @param options - Optional parameters for nodeModulesDepth and basePath.
|
|
39
|
+
// * @returns A promise that resolves to an array of found dependencies.
|
|
40
|
+
// * @public
|
|
41
|
+
// */
|
|
42
|
+
// public async findDependencies(paths: Array<string>, options: { nodeModulesDepth?: number; basePath?: string } = {}): Promise<Array<string>> {
|
|
43
|
+
// const importsToScan: Set<string> = new Set();
|
|
44
|
+
// const dependencies: Set<string> = new Set();
|
|
45
|
+
// const nodeModulesDepth: number = options.nodeModulesDepth ?? 3;
|
|
46
|
+
// const basePath: string = options.basePath ?? process.cwd();
|
|
47
|
+
// // Init es-module-lexer wasm
|
|
48
|
+
// await init;
|
|
49
|
+
// for (const filePath of paths) {
|
|
50
|
+
// const source: string = fs.readFileSync(filePath, 'utf8');
|
|
51
|
+
// const imports = parse(source)[0];
|
|
52
|
+
// for (const i of imports) {
|
|
53
|
+
// // Skip built-in modules like fs, path, etc.
|
|
54
|
+
// if (builtinModules.includes(i.n ?? '')) {
|
|
55
|
+
// continue;
|
|
56
|
+
// }
|
|
57
|
+
// try {
|
|
58
|
+
// const pathToDependency: string = require.resolve(i.n ?? '', {
|
|
59
|
+
// paths: [
|
|
60
|
+
// // Current project's node_modules
|
|
61
|
+
// basePath,
|
|
62
|
+
// // Monorepo, look upwards in filetree n times
|
|
63
|
+
// ...traverseUp(nodeModulesDepth, { cwd: basePath })
|
|
64
|
+
// ]
|
|
65
|
+
// });
|
|
66
|
+
// importsToScan.add(pathToDependency);
|
|
67
|
+
// dependencies.add(pathToDependency);
|
|
68
|
+
// } catch {
|
|
69
|
+
// this._logger.logError(`Failed to resolve dependency "${i.n}".`);
|
|
70
|
+
// }
|
|
71
|
+
// }
|
|
72
|
+
// }
|
|
73
|
+
// while (importsToScan.size) {
|
|
74
|
+
// for (const dep of importsToScan) {
|
|
75
|
+
// importsToScan.delete(dep);
|
|
76
|
+
// const source: string = fs.readFileSync(dep, 'utf8');
|
|
77
|
+
// const imports = parse(source)[0];
|
|
78
|
+
// for (const i of imports) {
|
|
79
|
+
// // Skip built-in modules like fs, path, etc.
|
|
80
|
+
// if (builtinModules.includes(i.n ?? '')) {
|
|
81
|
+
// continue;
|
|
82
|
+
// }
|
|
83
|
+
// const packageRoot = splitPath(dep).packageRoot;
|
|
84
|
+
// const fileToFind = isBareModuleSpecifier(i.n ?? '') ? (i.n ?? '') : path.join(path.dirname(dep), i.n ?? '');
|
|
85
|
+
// try {
|
|
86
|
+
// // First check in the dependencies' node_modules, then in the project's node_modules, then up, and up, and up
|
|
87
|
+
// const pathToDependency: string = require.resolve(fileToFind, {
|
|
88
|
+
// paths: [
|
|
89
|
+
// // Nested node_modules
|
|
90
|
+
// packageRoot,
|
|
91
|
+
// // Current project's node_modules
|
|
92
|
+
// basePath,
|
|
93
|
+
// // Monorepo, look upwards in filetree n times
|
|
94
|
+
// ...traverseUp(nodeModulesDepth, { cwd: basePath })
|
|
95
|
+
// ]
|
|
96
|
+
// });
|
|
97
|
+
// // Don't add dependencies we've already scanned, also avoids circular dependencies and multiple modules importing from the same module
|
|
98
|
+
// if (!dependencies.has(pathToDependency)) {
|
|
99
|
+
// importsToScan.add(pathToDependency);
|
|
100
|
+
// dependencies.add(pathToDependency);
|
|
101
|
+
// }
|
|
102
|
+
// } catch {
|
|
103
|
+
// this._logger.logError(`Failed to resolve dependency "${i.n}".`);
|
|
104
|
+
// }
|
|
105
|
+
// }
|
|
106
|
+
// }
|
|
107
|
+
// }
|
|
108
|
+
// return Array.from(dependencies);
|
|
109
|
+
// }
|
|
110
|
+
// //#endregion
|
|
111
|
+
// }
|
|
112
|
+
//# sourceMappingURL=DependencyService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DependencyService.js","sourceRoot":"","sources":["../../src/Services/DependencyService.ts"],"names":[],"mappings":";AAAA,oBAAoB;AAEpB,sEAAsE;AACtE,iDAAiD;AACjD,uBAAuB;AACvB,0DAA0D;AAC1D,2BAA2B;AAC3B,8EAA8E;AAC9E,6EAA6E;AAE7E,eAAe;AAEf,kDAAkD;AAElD,MAAM;AACN,oCAAoC;AACpC,KAAK;AACL,aAAa;AACb,MAAM;AACN,iEAAiE;AAEjE,uBAAuB;AAEvB,wCAAwC;AAExC,mBAAmB;AAEnB,qBAAqB;AAErB,UAAU;AACV,qEAAqE;AACrE,SAAS;AACT,iBAAiB;AACjB,UAAU;AACV,2CAA2C;AAC3C,iCAAiC;AACjC,QAAQ;AAER,mBAAmB;AAEnB,2BAA2B;AAC3B,mBAAmB;AAEnB,wBAAwB;AAExB,UAAU;AACV,iDAAiD;AACjD,SAAS;AACT,qEAAqE;AACrE,iFAAiF;AACjF,6EAA6E;AAC7E,iBAAiB;AACjB,UAAU;AACV,oJAAoJ;AACpJ,wDAAwD;AACxD,uDAAuD;AAEvD,0EAA0E;AAC1E,sEAAsE;AAEtE,uCAAuC;AACvC,sBAAsB;AAEtB,0CAA0C;AAC1C,wEAAwE;AACxE,gDAAgD;AAEhD,yCAAyC;AACzC,+DAA+D;AAC/D,4DAA4D;AAC5D,gCAAgC;AAChC,oBAAoB;AAEpB,wBAAwB;AACxB,oFAAoF;AACpF,mCAAmC;AACnC,gEAAgE;AAChE,wCAAwC;AACxC,4EAA4E;AAC5E,iFAAiF;AACjF,4BAA4B;AAC5B,0BAA0B;AAE1B,2DAA2D;AAC3D,0DAA0D;AAC1D,4BAA4B;AAC5B,uFAAuF;AACvF,oBAAoB;AACpB,gBAAgB;AAChB,YAAY;AAEZ,uCAAuC;AACvC,iDAAiD;AACjD,6CAA6C;AAE7C,uEAAuE;AACvE,oDAAoD;AAEpD,6CAA6C;AAC7C,mEAAmE;AACnE,gEAAgE;AAChE,oCAAoC;AACpC,wBAAwB;AACxB,sEAAsE;AACtE,mIAAmI;AACnI,4BAA4B;AAC5B,wIAAwI;AACxI,yFAAyF;AACzF,uCAAuC;AACvC,yDAAyD;AACzD,+CAA+C;AAC/C,oEAAoE;AACpE,4CAA4C;AAC5C,gFAAgF;AAChF,qFAAqF;AACrF,gCAAgC;AAChC,8BAA8B;AAE9B,iKAAiK;AACjK,qEAAqE;AACrE,mEAAmE;AACnE,kEAAkE;AAClE,4BAA4B;AAC5B,gCAAgC;AAChC,2FAA2F;AAC3F,wBAAwB;AACxB,oBAAoB;AACpB,gBAAgB;AAChB,YAAY;AAEZ,2CAA2C;AAC3C,QAAQ;AAER,mBAAmB;AAEnB,IAAI"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents the `IDependencyService` interface.
|
|
3
|
+
*
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export interface IDependencyService {
|
|
7
|
+
findDependencies(paths: Array<string>, options: {
|
|
8
|
+
nodeModulesDepth?: number;
|
|
9
|
+
basePath?: string;
|
|
10
|
+
}): Promise<Array<string>>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=IDependencyService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDependencyService.d.ts","sourceRoot":"","sources":["../../../src/Services/Interfaces/IDependencyService.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAM/B,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;CAI7H"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDependencyService.js","sourceRoot":"","sources":["../../../src/Services/Interfaces/IDependencyService.ts"],"names":[],"mappings":";AAAA,iBAAiB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { IPlugin } from '@breadstone-tools/cem-plugin';
|
|
2
|
+
import type ts from 'typescript';
|
|
3
|
+
export interface IManifestBuilderCreateResult {
|
|
4
|
+
schemaVersion: string;
|
|
5
|
+
readme: string;
|
|
6
|
+
modules: Array<any>;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Represents the `IManifestBuilder` interface.
|
|
10
|
+
*
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
export interface IManifestBuilder {
|
|
14
|
+
create(sources: Array<ts.SourceFile>, plugins?: Array<IPlugin>): IManifestBuilderCreateResult;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=IManifestBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IManifestBuilder.d.ts","sourceRoot":"","sources":["../../../src/Services/Interfaces/IManifestBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAIjC,MAAM,WAAW,4BAA4B;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAI7B,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,4BAA4B,CAAC;CAIjG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IManifestBuilder.js","sourceRoot":"","sources":["../../../src/Services/Interfaces/IManifestBuilder.ts"],"names":[],"mappings":";AAAA,iBAAiB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { IPlugin } from '@breadstone-tools/cem-plugin';
|
|
2
|
+
import type ts from 'typescript';
|
|
3
|
+
export interface IManifestEngineRunResult {
|
|
4
|
+
schemaVersion: string;
|
|
5
|
+
readme: string;
|
|
6
|
+
modules: Array<any>;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Represents the `IManifestEngine` interface.
|
|
10
|
+
*
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
export interface IManifestEngine {
|
|
14
|
+
run(sources: Array<ts.SourceFile>, plugins?: Array<IPlugin>): IManifestEngineRunResult;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=IManifestEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IManifestEngine.d.ts","sourceRoot":"","sources":["../../../src/Services/Interfaces/IManifestEngine.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAIjC,MAAM,WAAW,wBAAwB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAI5B,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,wBAAwB,CAAC;CAI1F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IManifestEngine.js","sourceRoot":"","sources":["../../../src/Services/Interfaces/IManifestEngine.ts"],"names":[],"mappings":";AAAA,iBAAiB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { IPlugin } from '@breadstone-tools/cem-plugin';
|
|
2
|
+
import type ts from 'typescript';
|
|
3
|
+
import type { Framework } from '../Types/Framework.js';
|
|
4
|
+
import type { IManifestBuilder, IManifestBuilderCreateResult } from './Interfaces/IManifestBuilder.js';
|
|
5
|
+
import type { IManifestEngine } from './Interfaces/IManifestEngine.js';
|
|
6
|
+
import type { ILogger } from '@breadstone-infrastructure/utilities';
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export interface IManifestBuilderConfig {
|
|
11
|
+
compiler: {
|
|
12
|
+
program: ts.Program;
|
|
13
|
+
typeChecker: ts.TypeChecker;
|
|
14
|
+
};
|
|
15
|
+
debug?: boolean;
|
|
16
|
+
quiet?: boolean;
|
|
17
|
+
verbose?: boolean;
|
|
18
|
+
logger: ILogger;
|
|
19
|
+
engine?: IManifestEngine;
|
|
20
|
+
framework?: Framework;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The `ManifestBuilder` class.
|
|
24
|
+
*
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
export declare class ManifestBuilder implements IManifestBuilder {
|
|
28
|
+
private readonly _logger;
|
|
29
|
+
private readonly _engine;
|
|
30
|
+
/**
|
|
31
|
+
* Constructs a new instance of the `ManifestBuilder` class.
|
|
32
|
+
*
|
|
33
|
+
* @public
|
|
34
|
+
*/
|
|
35
|
+
constructor(config: IManifestBuilderConfig);
|
|
36
|
+
/**
|
|
37
|
+
* Creates a manifest.
|
|
38
|
+
*
|
|
39
|
+
* @param sources - The sources to include in the manifest.
|
|
40
|
+
* @param plugins - The plugins to use when creating the manifest.
|
|
41
|
+
* @returns The manifest.
|
|
42
|
+
*
|
|
43
|
+
* @public
|
|
44
|
+
*/
|
|
45
|
+
create(sources: Array<ts.SourceFile>, plugins?: Array<IPlugin>): IManifestBuilderCreateResult;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=ManifestBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ManifestBuilder.d.ts","sourceRoot":"","sources":["../../src/Services/ManifestBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AACvG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAIpE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE;QACN,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;QACpB,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC;KAC/B,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;CACzB;AAED;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,gBAAgB;IAIpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAM1C;;;;OAIG;gBACgB,MAAM,EAAE,sBAAsB;IAgBjD;;;;;;;;OAQG;IACI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,4BAA4B;CAMvG"}
|