@shko.online/componentframework-mock
Version:
Mocking library to help with testing PowerApps Component Framework Components
42 lines (41 loc) • 1.37 kB
JavaScript
/*
Copyright (c) 2024 Betim Beja and Shko Online LLC
Licensed under the MIT license.
*/
import { ComponentFrameworkMockGenerator } from './ComponentFramework-Mock-Generator';
import { ComponentFrameworkMockGeneratorReact } from './ComponentFramework-Mock-Generator-React';
import { MetadataDB } from './Metadata.db';
export class ComponentFrameworkMockOrchestrator {
constructor(controls) {
this.controls = void 0;
this.db = void 0;
this.mockGenerators = void 0;
this.controls = controls;
this.mockGenerators = [];
this.db = undefined;
let overrides;
controls.forEach(element => {
if (element[2] instanceof HTMLDivElement) {
if (!overrides) {
overrides = element[4] ?? {
metadata: new MetadataDB()
};
}
this.db = overrides.metadata;
this.mockGenerators.push(new ComponentFrameworkMockGenerator(element[0], element[1], element[2], element[3], overrides));
} else {
if (!overrides) {
overrides = element[3] ?? {
metadata: new MetadataDB()
};
}
this.mockGenerators.push(new ComponentFrameworkMockGeneratorReact(element[0], element[1], element[2], overrides));
}
});
}
ExecuteInit() {
this.mockGenerators.forEach(mockGenerator => {
mockGenerator.ExecuteInit();
});
}
}