UNPKG

@tableau/taco-toolkit

Version:
104 lines 6.25 kB
"use strict"; var __values = (this && this.__values) || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: function () { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; } }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; var __read = (this && this.__read) || function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error: error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.fillConnectorJson = exports.fillPackageJson = void 0; var fs_extra_1 = __importDefault(require("fs-extra")); var path_1 = __importDefault(require("path")); var connector_1 = require("../utils/connector"); var package_json_1 = require("../utils/package-json"); var tableau_product_1 = require("../utils/tableau-product"); function fillPackageJson(tacoRootPath, projectName, skipToolkit) { var connectorFolder = (0, connector_1.getConnectorFolderPath)(tacoRootPath); var packageJsonPath = path_1.default.join(connectorFolder, 'package.json'); var props = { name: projectName, }; if (!skipToolkit) { Object.assign(props, { dependencies: { '@tableau/taco-toolkit': package_json_1.PACKAGE_INFO.version, }, scripts: { build: 'taco-scripts build', clean: 'taco-scripts clean', start: 'taco-scripts start', }, }); } fillInfoToJson(packageJsonPath, props); } exports.fillPackageJson = fillPackageJson; function fillConnectorJson(tacoRootPath, projectName) { var connectorJsonPath = (0, connector_1.getConnectorJsonPath)(tacoRootPath); // automatically put tableau min version into connector json fillInfoToJson(connectorJsonPath, { name: projectName, version: '1.0.0', 'tableau-version': { min: (0, tableau_product_1.getTableauMajorVersion)(package_json_1.PACKAGE_INFO.tableau.version), }, }); } exports.fillConnectorJson = fillConnectorJson; function fillInfoToJson(filePath, info) { var json = fs_extra_1.default.readJsonSync(filePath); mergeJsonObject(json, info); fs_extra_1.default.writeJSONSync(filePath, json, { spaces: 2, flag: 'w+', }); } function mergeJsonObject(target, source) { var e_1, _a; try { for (var _b = __values(Object.entries(source)), _c = _b.next(); !_c.done; _c = _b.next()) { var _d = __read(_c.value, 2), key = _d[0], value = _d[1]; if (typeof value === 'object' && value !== null && !Array.isArray(value)) { if (!target[key]) { target[key] = {}; } mergeJsonObject(target[key], source[key]); } else { target[key] = source[key]; } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) _a.call(_b); } finally { if (e_1) throw e_1.error; } } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1maWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbGkvdGFjby1jb21tYW5kcy9jcmVhdGUvanNvbi1maWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzREFBMEI7QUFDMUIsOENBQXVCO0FBRXZCLGdEQUFpRjtBQUNqRixzREFBb0Q7QUFDcEQsNERBQWlFO0FBRWpFLFNBQWdCLGVBQWUsQ0FBQyxZQUFvQixFQUFFLFdBQW1CLEVBQUUsV0FBb0I7SUFDN0YsSUFBTSxlQUFlLEdBQUcsSUFBQSxrQ0FBc0IsRUFBQyxZQUFZLENBQUMsQ0FBQTtJQUM1RCxJQUFNLGVBQWUsR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxjQUFjLENBQUMsQ0FBQTtJQUNsRSxJQUFNLEtBQUssR0FBNEI7UUFDckMsSUFBSSxFQUFFLFdBQVc7S0FDbEIsQ0FBQTtJQUVELElBQUksQ0FBQyxXQUFXLEVBQUU7UUFDaEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUU7WUFDbkIsWUFBWSxFQUFFO2dCQUNaLHVCQUF1QixFQUFFLDJCQUFZLENBQUMsT0FBTzthQUM5QztZQUNELE9BQU8sRUFBRTtnQkFDUCxLQUFLLEVBQUUsb0JBQW9CO2dCQUMzQixLQUFLLEVBQUUsb0JBQW9CO2dCQUMzQixLQUFLLEVBQUUsb0JBQW9CO2FBQzVCO1NBQ0YsQ0FBQyxDQUFBO0tBQ0g7SUFFRCxjQUFjLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFBO0FBQ3hDLENBQUM7QUFyQkQsMENBcUJDO0FBRUQsU0FBZ0IsaUJBQWlCLENBQUMsWUFBb0IsRUFBRSxXQUFtQjtJQUN6RSxJQUFNLGlCQUFpQixHQUFHLElBQUEsZ0NBQW9CLEVBQUMsWUFBWSxDQUFDLENBQUE7SUFFNUQsNERBQTREO0lBRTVELGNBQWMsQ0FBQyxpQkFBaUIsRUFBRTtRQUNoQyxJQUFJLEVBQUUsV0FBVztRQUNqQixPQUFPLEVBQUUsT0FBTztRQUNoQixpQkFBaUIsRUFBRTtZQUNqQixHQUFHLEVBQUUsSUFBQSx3Q0FBc0IsRUFBQywyQkFBWSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7U0FDMUQ7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDO0FBWkQsOENBWUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxRQUFnQixFQUFFLElBQTZCO0lBQ3JFLElBQU0sSUFBSSxHQUFHLGtCQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ3ZDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFFM0Isa0JBQUcsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRTtRQUNoQyxNQUFNLEVBQUUsQ0FBQztRQUNULElBQUksRUFBRSxJQUFJO0tBQ1gsQ0FBQyxDQUFBO0FBQ0osQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLE1BQStCLEVBQUUsTUFBK0I7OztRQUN2RixLQUEyQixJQUFBLEtBQUEsU0FBQSxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBLGdCQUFBLDRCQUFFO1lBQXhDLElBQUEsS0FBQSxtQkFBWSxFQUFYLEdBQUcsUUFBQSxFQUFFLEtBQUssUUFBQTtZQUNwQixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDeEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDaEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtpQkFDakI7Z0JBRUQsZUFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQTRCLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBNEIsQ0FBQyxDQUFBO2FBQ2hHO2lCQUFNO2dCQUNMLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7YUFDMUI7U0FDRjs7Ozs7Ozs7O0FBQ0gsQ0FBQyJ9