world/book/node_modules/honkit/lib/api/encodeConfig.js
2025-05-12 05:38:44 +09:00

27 lines
1.3 KiB
JavaScript

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const object_path_1 = __importDefault(require("object-path"));
const deprecate_1 = __importDefault(require("./deprecate"));
/**
Encode a config object into a JS config api
*/
function encodeConfig(output, config) {
const result = {
values: config.getValues().toJS(),
get: function (key, defaultValue) {
return object_path_1.default.get(result.values, key, defaultValue);
},
set: function (key, value) {
return object_path_1.default.set(result.values, key, value);
}
};
deprecate_1.default.field(output, "config.options", result, "options", result.values, '"config.options" property is deprecated, use "config.get(key)" instead');
deprecate_1.default.field(output, "config.options.generator", result.values, "generator", output.getGenerator(), '"options.generator" property is deprecated, use "output.name" instead');
deprecate_1.default.field(output, "config.options.generator", result.values, "output", output.getRoot(), '"options.output" property is deprecated, use "output.root()" instead');
return result;
}
exports.default = encodeConfig;