@fluent-form/core
Version:
An Angular dynamic forms library powered by Fluent API and JSON.
35 lines • 1.43 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = default_1;
const schematics_1 = require("@angular-devkit/schematics");
const tasks_1 = require("@angular-devkit/schematics/tasks");
const utility_1 = require("@schematics/angular/utility");
const dependencies_1 = require("@schematics/angular/utility/dependencies");
const UI_PACKAGE_MAP = new Map([['ng-zorro-antd', '@fluent-form/ui-zorro']]);
function default_1(options) {
return (host, context) => {
return (0, schematics_1.chain)([
installUIPackage(host, context, options),
addProvider(options)
]);
};
}
function installUIPackage(host, context, options) {
return () => {
if (options.ui === 'none')
return;
const fluentFormDep = (0, dependencies_1.getPackageJsonDependency)(host, '@fluent-form/core');
(0, dependencies_1.addPackageJsonDependency)(host, {
type: dependencies_1.NodeDependencyType.Default,
name: UI_PACKAGE_MAP.get(options.ui),
version: fluentFormDep.version
});
context.addTask(new tasks_1.NodePackageInstallTask());
};
}
function addProvider(options) {
return (0, utility_1.addRootProvider)(options.project, ({ code, external }) => {
return code `${external('provideFluentForm', '@fluent-form/core')}(/* TODO */)`;
});
}
//# sourceMappingURL=index.js.map
;