@tekdi/sunbird-quml-player
Version:
The QuML player library components are powered by Angular. This player is primarily designed to be used on Sunbird consumption platforms (mobile app, web portal, offline desktop app) to drive reusability and maintainability, hence reducing the redundant d
54 lines • 2.6 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ngAdd = void 0;
const schematics_1 = require("@angular-devkit/schematics");
const tasks_1 = require("@angular-devkit/schematics/tasks");
const workspace_1 = require("@schematics/angular/utility/workspace");
const package_config_1 = require("../utils/package-config");
const messages = require("./messages");
const VERSIONS = {
// These required peer-dependency will get installed on build time if not exist
'@project-sunbird/client-services': '^5.1.2',
'@project-sunbird/sb-styles': '0.0.16',
'bootstrap': '^5.3.3',
'jquery': '^3.7.1',
'lodash-es': '^4.17.21',
"katex": "^0.16.10",
'ngx-bootstrap': '^11.0.0'
};
/**
* This is executed when `ng add @project-sunbird/sunbird-quml-player` is run.
* It installs all dependencies in the 'package.json' and runs 'ng-add-setup-project' schematic.
*/
function ngAdd(options) {
return (tree, context) => __awaiter(this, void 0, void 0, function* () {
context.logger.info("Setting up quml-player...");
// Checking that project exists
const { project } = options;
if (project) {
const workspace = yield (0, workspace_1.getWorkspace)(tree);
const projectWorkspace = workspace.projects.get(project);
if (!projectWorkspace) {
throw new schematics_1.SchematicsException(messages.noProject(project));
}
}
context.logger.info('Installing dependencies...');
for (const modulePackage in VERSIONS) {
(0, package_config_1.addPackageToPackageJson)(tree, modulePackage, VERSIONS[modulePackage]);
}
context.addTask(new tasks_1.RunSchematicTask('ng-add-setup-project', options), [
context.addTask(new tasks_1.NodePackageInstallTask()),
]);
});
}
exports.ngAdd = ngAdd;
//# sourceMappingURL=index.js.map