UNPKG

@lotto24-angular/imports-orchestrator

Version:

Orchestrate dynamically imported components in Angular applications

15 lines 2.91 kB
import { isESModule } from './module'; export function isAssumedESModuleContainingAngularComponentsOrModules(type) { return typeof type === 'object' && Object.keys(type).some(key => key.includes('Module') || key.includes('Component')); } export function resolveConstructorsFromESModule(esm) { if (isESModule(esm) || isAssumedESModuleContainingAngularComponentsOrModules(esm)) { const constructors = Object.values(esm).filter((v) => typeof v === 'function'); if (!constructors) { throw new Error('Class not found'); } return constructors; } return [esm]; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZS1jb25zdHJ1Y3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvaW1wb3J0cy1vcmNoZXN0cmF0b3Ivc3JjL2xpYi9yZXNvbHZlL3V0aWwvcmVzb2x2ZS1jb25zdHJ1Y3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVksVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBSWhELE1BQU0sVUFBVSxxREFBcUQsQ0FBQyxJQUFTO0lBQzdFLE9BQU8sT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7QUFDeEgsQ0FBQztBQUVELE1BQU0sVUFBVSwrQkFBK0IsQ0FDN0MsR0FBMkI7SUFFM0IsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUkscURBQXFELENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNsRixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUNoQyxHQUFrRCxDQUNuRCxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssVUFBVSxDQUFDLENBQUM7UUFFekMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2xCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNyQyxDQUFDO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFU01vZHVsZSwgaXNFU01vZHVsZSB9IGZyb20gJy4vbW9kdWxlJztcblxuZXhwb3J0IHR5cGUgQ29uc3RydWN0b3IgPSBUeXBlPHVua25vd24+O1xuXG5leHBvcnQgZnVuY3Rpb24gaXNBc3N1bWVkRVNNb2R1bGVDb250YWluaW5nQW5ndWxhckNvbXBvbmVudHNPck1vZHVsZXModHlwZTogYW55KSB7XG4gIHJldHVybiB0eXBlb2YgdHlwZSA9PT0gJ29iamVjdCcgJiYgT2JqZWN0LmtleXModHlwZSkuc29tZShrZXkgPT4ga2V5LmluY2x1ZGVzKCdNb2R1bGUnKSB8fCBrZXkuaW5jbHVkZXMoJ0NvbXBvbmVudCcpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDb25zdHJ1Y3RvcnNGcm9tRVNNb2R1bGUoXG4gIGVzbTogRVNNb2R1bGUgfCBDb25zdHJ1Y3RvclxuKTogQ29uc3RydWN0b3JbXSB7XG4gIGlmIChpc0VTTW9kdWxlKGVzbSkgfHwgaXNBc3N1bWVkRVNNb2R1bGVDb250YWluaW5nQW5ndWxhckNvbXBvbmVudHNPck1vZHVsZXMoZXNtKSkge1xuICAgIGNvbnN0IGNvbnN0cnVjdG9ycyA9IE9iamVjdC52YWx1ZXM8Q29uc3RydWN0b3I+KFxuICAgICAgZXNtIGFzIHVua25vd24gYXMgeyBbaW5kZXg6IHN0cmluZ106IENvbnN0cnVjdG9yIH1cbiAgICApLmZpbHRlcigodikgPT4gdHlwZW9mIHYgPT09ICdmdW5jdGlvbicpO1xuXG4gICAgaWYgKCFjb25zdHJ1Y3RvcnMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2xhc3Mgbm90IGZvdW5kJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbnN0cnVjdG9ycztcbiAgfVxuXG4gIHJldHVybiBbZXNtXTtcbn1cblxuIl19