@nx-dart/nx-dart
Version:
A Nx plugin, that adds support for developing Dart and Flutter packages in a Nx workspace
60 lines • 2.41 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.removeDependencyFromPackage = exports.addHostedDependencyToPackage = exports.isFlutterPlugin = exports.isFlutterPackage = exports.loadPubspec = exports.pubspecPath = void 0;
const tslib_1 = require("tslib");
const devkit_1 = require("@nrwl/devkit");
const path = require("path");
const pkg = require("path");
const YAML = require("yaml");
const execute_command_1 = require("./execute-command");
const fs_1 = require("./fs");
function pubspecPath(packageRoot) {
return pkg.join(packageRoot, 'pubspec.yaml');
}
exports.pubspecPath = pubspecPath;
function loadPubspec(packageRoot) {
const contents = (0, fs_1.readFile)(pubspecPath(packageRoot));
if (contents === undefined) {
return undefined;
}
return YAML.parse(contents);
}
exports.loadPubspec = loadPubspec;
function isFlutterPackage(pubspec) {
var _a, _b;
return ('flutter' in ((_a = pubspec.environment) !== null && _a !== void 0 ? _a : {}) ||
'flutter' in ((_b = pubspec.dependencies) !== null && _b !== void 0 ? _b : {}));
}
exports.isFlutterPackage = isFlutterPackage;
function isFlutterPlugin(pubspec) {
var _a;
return ((_a = pubspec === null || pubspec === void 0 ? void 0 : pubspec.flutter) === null || _a === void 0 ? void 0 : _a.plugin) !== undefined;
}
exports.isFlutterPlugin = isFlutterPlugin;
function addHostedDependencyToPackage(packageRoot, name, { dev } = {}) {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
const args = ['pub', 'add'];
if (dev) {
args.push('--dev');
}
args.push(name);
yield (0, execute_command_1.executeCommand)({
executable: 'dart',
arguments: args,
cwd: path.resolve(devkit_1.workspaceRoot, packageRoot),
});
});
}
exports.addHostedDependencyToPackage = addHostedDependencyToPackage;
function removeDependencyFromPackage(packageRoot, name) {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
const args = ['pub', 'remove', name];
yield (0, execute_command_1.executeCommand)({
executable: 'dart',
arguments: args,
cwd: path.resolve(devkit_1.workspaceRoot, packageRoot),
});
});
}
exports.removeDependencyFromPackage = removeDependencyFromPackage;
//# sourceMappingURL=package.js.map