@orchestrator/ngx-testing
Version:
Testing utilities for Angular projects
70 lines • 8.06 kB
JavaScript
/**
* @internal
*/
export function genHostCompTpl(tag, io, content, bindings) {
if (content === void 0) { content = ''; }
var inputsTpl = genInputsTpl(io.inputs);
var outputsTpl = genOutputsTpl(io.outputs);
var bindingsTpl = bindings
? typeof bindings === 'string'
? "let-" + bindings
: Object.keys(bindings)
.map(function (key) { return "let-" + key + (bindings[key] ? "=\"" + bindings[key] + "\"" : ''); })
.join(' ')
: '';
return "<" + tag + " " + inputsTpl + " " + outputsTpl + " " + bindingsTpl + ">" + content + "</" + tag + ">";
}
/**
* @internal
*/
export function genHostCompTplStar(binding, tag, io, content, bindings) {
if (content === void 0) { content = ''; }
var inputsTpl = genInputsTplStar(binding, io.inputs, bindings);
return "<" + tag + " " + inputsTpl + ">" + content + "</" + tag + ">";
}
/**
* @internal
*/
export function genInputsTplStar(binding, inputs, bindings) {
var inputsTpl = inputs
.filter(function (_a) {
var templateName = _a.templateName;
return templateName !== binding;
})
.map(function (_a) {
var templateName = _a.templateName, propName = _a.propName;
return templateName.replace(binding, '') + ": " + propName;
})
.join('; ');
var bindingsTpl = bindings
? typeof bindings === 'string'
? "let " + bindings
: Object.keys(bindings)
.map(function (key) { return "let " + key + (bindings[key] ? ": " + bindings[key] : ''); })
.join(', ')
: '';
return "*" + binding + "=\"" + binding + "; " + inputsTpl + "; " + bindingsTpl + "\"";
}
/**
* @internal
*/
export function genInputsTpl(inputs) {
return inputs
.map(function (_a) {
var templateName = _a.templateName, propName = _a.propName;
return "[" + templateName + "]=\"" + propName + "\"";
})
.join(' ');
}
/**
* @internal
*/
export function genOutputsTpl(outputs) {
return outputs
.map(function (_a) {
var templateName = _a.templateName, propName = _a.propName;
return "(" + templateName + ")=\"" + propName + "($event)\"";
})
.join(' ');
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtZ2VuLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG9yY2hlc3RyYXRvci9uZ3gtdGVzdGluZy8iLCJzb3VyY2VzIjpbImxpYi90ZW1wbGF0ZS1nZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7O0dBRUc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUM1QixHQUFXLEVBQ1gsRUFBZSxFQUNmLE9BQW9CLEVBQ3BCLFFBQXNCO0lBRHRCLHdCQUFBLEVBQUEsWUFBb0I7SUFHcEIsSUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQyxJQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLElBQU0sV0FBVyxHQUFHLFFBQVE7UUFDMUIsQ0FBQyxDQUFDLE9BQU8sUUFBUSxLQUFLLFFBQVE7WUFDNUIsQ0FBQyxDQUFDLFNBQU8sUUFBVTtZQUNuQixDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQ2xCLEdBQUcsQ0FBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLFNBQU8sR0FBRyxJQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBSyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFFLEVBQXpELENBQXlELENBQUM7aUJBQ3JFLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDaEIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNQLE9BQU8sTUFBSSxHQUFHLFNBQUksU0FBUyxTQUFJLFVBQVUsU0FBSSxXQUFXLFNBQUksT0FBTyxVQUFLLEdBQUcsTUFBRyxDQUFDO0FBQ2pGLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FDaEMsT0FBZSxFQUNmLEdBQVcsRUFDWCxFQUFlLEVBQ2YsT0FBb0IsRUFDcEIsUUFBc0I7SUFEdEIsd0JBQUEsRUFBQSxZQUFvQjtJQUdwQixJQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNqRSxPQUFPLE1BQUksR0FBRyxTQUFJLFNBQVMsU0FBSSxPQUFPLFVBQUssR0FBRyxNQUFHLENBQUM7QUFDcEQsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixPQUFlLEVBQ2YsTUFBd0IsRUFDeEIsUUFBc0I7SUFFdEIsSUFBTSxTQUFTLEdBQUcsTUFBTTtTQUNyQixNQUFNLENBQUMsVUFBQyxFQUFnQjtZQUFkLDhCQUFZO1FBQU8sT0FBQSxZQUFZLEtBQUssT0FBTztJQUF4QixDQUF3QixDQUFDO1NBQ3RELEdBQUcsQ0FDRixVQUFDLEVBQTBCO1lBQXhCLDhCQUFZLEVBQUUsc0JBQVE7UUFDdkIsT0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBSyxRQUFVO0lBQW5ELENBQW1ELENBQ3REO1NBQ0EsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRWQsSUFBTSxXQUFXLEdBQUcsUUFBUTtRQUMxQixDQUFDLENBQUMsT0FBTyxRQUFRLEtBQUssUUFBUTtZQUM1QixDQUFDLENBQUMsU0FBTyxRQUFVO1lBQ25CLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztpQkFDbEIsR0FBRyxDQUFDLFVBQUEsR0FBRyxJQUFJLE9BQUEsU0FBTyxHQUFHLElBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFLLFFBQVEsQ0FBQyxHQUFHLENBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFFLEVBQXhELENBQXdELENBQUM7aUJBQ3BFLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDakIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUVQLE9BQU8sTUFBSSxPQUFPLFdBQUssT0FBTyxVQUFLLFNBQVMsVUFBSyxXQUFXLE9BQUcsQ0FBQztBQUNsRSxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLE1BQXdCO0lBQ25ELE9BQU8sTUFBTTtTQUNWLEdBQUcsQ0FBQyxVQUFDLEVBQTBCO1lBQXhCLDhCQUFZLEVBQUUsc0JBQVE7UUFBTyxPQUFBLE1BQUksWUFBWSxZQUFNLFFBQVEsT0FBRztJQUFqQyxDQUFpQyxDQUFDO1NBQ3RFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNmLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBeUI7SUFDckQsT0FBTyxPQUFPO1NBQ1gsR0FBRyxDQUNGLFVBQUMsRUFBMEI7WUFBeEIsOEJBQVksRUFBRSxzQkFBUTtRQUFPLE9BQUEsTUFBSSxZQUFZLFlBQU0sUUFBUSxlQUFXO0lBQXpDLENBQXlDLENBQzFFO1NBQ0EsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZUlPLCBUZW1wbGF0ZUJpbmRpbmdzIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5Ib3N0Q29tcFRwbChcbiAgdGFnOiBzdHJpbmcsXG4gIGlvOiBEaXJlY3RpdmVJTyxcbiAgY29udGVudDogc3RyaW5nID0gJycsXG4gIGJpbmRpbmdzPzogc3RyaW5nIHwge30sXG4pOiBzdHJpbmcge1xuICBjb25zdCBpbnB1dHNUcGwgPSBnZW5JbnB1dHNUcGwoaW8uaW5wdXRzKTtcbiAgY29uc3Qgb3V0cHV0c1RwbCA9IGdlbk91dHB1dHNUcGwoaW8ub3V0cHV0cyk7XG4gIGNvbnN0IGJpbmRpbmdzVHBsID0gYmluZGluZ3NcbiAgICA/IHR5cGVvZiBiaW5kaW5ncyA9PT0gJ3N0cmluZydcbiAgICAgID8gYGxldC0ke2JpbmRpbmdzfWBcbiAgICAgIDogT2JqZWN0LmtleXMoYmluZGluZ3MpXG4gICAgICAgICAgLm1hcChrZXkgPT4gYGxldC0ke2tleX0ke2JpbmRpbmdzW2tleV0gPyBgPVwiJHtiaW5kaW5nc1trZXldfVwiYCA6ICcnfWApXG4gICAgICAgICAgLmpvaW4oJyAnKVxuICAgIDogJyc7XG4gIHJldHVybiBgPCR7dGFnfSAke2lucHV0c1RwbH0gJHtvdXRwdXRzVHBsfSAke2JpbmRpbmdzVHBsfT4ke2NvbnRlbnR9PC8ke3RhZ30+YDtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlbkhvc3RDb21wVHBsU3RhcihcbiAgYmluZGluZzogc3RyaW5nLFxuICB0YWc6IHN0cmluZyxcbiAgaW86IERpcmVjdGl2ZUlPLFxuICBjb250ZW50OiBzdHJpbmcgPSAnJyxcbiAgYmluZGluZ3M/OiBzdHJpbmcgfCB7fSxcbik6IHN0cmluZyB7XG4gIGNvbnN0IGlucHV0c1RwbCA9IGdlbklucHV0c1RwbFN0YXIoYmluZGluZywgaW8uaW5wdXRzLCBiaW5kaW5ncyk7XG4gIHJldHVybiBgPCR7dGFnfSAke2lucHV0c1RwbH0+JHtjb250ZW50fTwvJHt0YWd9PmA7XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5JbnB1dHNUcGxTdGFyKFxuICBiaW5kaW5nOiBzdHJpbmcsXG4gIGlucHV0czogVGVtcGxhdGVCaW5kaW5ncyxcbiAgYmluZGluZ3M/OiBzdHJpbmcgfCB7fSxcbik6IHN0cmluZyB7XG4gIGNvbnN0IGlucHV0c1RwbCA9IGlucHV0c1xuICAgIC5maWx0ZXIoKHsgdGVtcGxhdGVOYW1lIH0pID0+IHRlbXBsYXRlTmFtZSAhPT0gYmluZGluZylcbiAgICAubWFwKFxuICAgICAgKHsgdGVtcGxhdGVOYW1lLCBwcm9wTmFtZSB9KSA9PlxuICAgICAgICBgJHt0ZW1wbGF0ZU5hbWUucmVwbGFjZShiaW5kaW5nLCAnJyl9OiAke3Byb3BOYW1lfWAsXG4gICAgKVxuICAgIC5qb2luKCc7ICcpO1xuXG4gIGNvbnN0IGJpbmRpbmdzVHBsID0gYmluZGluZ3NcbiAgICA/IHR5cGVvZiBiaW5kaW5ncyA9PT0gJ3N0cmluZydcbiAgICAgID8gYGxldCAke2JpbmRpbmdzfWBcbiAgICAgIDogT2JqZWN0LmtleXMoYmluZGluZ3MpXG4gICAgICAgICAgLm1hcChrZXkgPT4gYGxldCAke2tleX0ke2JpbmRpbmdzW2tleV0gPyBgOiAke2JpbmRpbmdzW2tleV19YCA6ICcnfWApXG4gICAgICAgICAgLmpvaW4oJywgJylcbiAgICA6ICcnO1xuXG4gIHJldHVybiBgKiR7YmluZGluZ309XCIke2JpbmRpbmd9OyAke2lucHV0c1RwbH07ICR7YmluZGluZ3NUcGx9XCJgO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuSW5wdXRzVHBsKGlucHV0czogVGVtcGxhdGVCaW5kaW5ncyk6IHN0cmluZyB7XG4gIHJldHVybiBpbnB1dHNcbiAgICAubWFwKCh7IHRlbXBsYXRlTmFtZSwgcHJvcE5hbWUgfSkgPT4gYFske3RlbXBsYXRlTmFtZX1dPVwiJHtwcm9wTmFtZX1cImApXG4gICAgLmpvaW4oJyAnKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlbk91dHB1dHNUcGwob3V0cHV0czogVGVtcGxhdGVCaW5kaW5ncyk6IHN0cmluZyB7XG4gIHJldHVybiBvdXRwdXRzXG4gICAgLm1hcChcbiAgICAgICh7IHRlbXBsYXRlTmFtZSwgcHJvcE5hbWUgfSkgPT4gYCgke3RlbXBsYXRlTmFtZX0pPVwiJHtwcm9wTmFtZX0oJGV2ZW50KVwiYCxcbiAgICApXG4gICAgLmpvaW4oJyAnKTtcbn1cbiJdfQ==