translate-maker
Version:
Lightweight translation module. Internationalize your great project.
136 lines (108 loc) • 3.85 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.defaultResolvePath = defaultResolvePath;
exports.default = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
var _Adapter2 = _interopRequireDefault(require("./Adapter"));
function defaultResolvePath(locale, namespace, options) {
var ext = options.ext,
path = options.path;
var fileName = ext ? "" + locale + ext : locale;
var namespacePath = namespace ? "/" + namespace.replace('.', '/') : '';
var namespaceFilePath = namespacePath ? namespacePath + "/" + fileName : fileName;
return path ? path + "/" + namespaceFilePath : namespaceFilePath;
}
var File =
/*#__PURE__*/
function (_Adapter) {
(0, _inheritsLoose2.default)(File, _Adapter);
function File(options) {
if (options === void 0) {
options = {};
}
if (!options.getData) {
throw new Error('You need to set getData');
}
return _Adapter.call(this, (0, _extends2.default)({
path: undefined,
ext: undefined,
getData: undefined,
setData: undefined,
resolvePath: defaultResolvePath
}, options)) || this;
}
var _proto = File.prototype;
_proto.get =
/*#__PURE__*/
function () {
var _get = (0, _asyncToGenerator2.default)(
/*#__PURE__*/
_regenerator.default.mark(function _callee(locale, namespace) {
var options, resolvePath, getData, path;
return _regenerator.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
options = this.getOptions();
resolvePath = options.resolvePath, getData = options.getData;
path = resolvePath(locale, namespace, options);
return _context.abrupt("return", getData(path));
case 4:
case "end":
return _context.stop();
}
}
}, _callee, this);
}));
function get(_x, _x2) {
return _get.apply(this, arguments);
}
return get;
}();
_proto.set =
/*#__PURE__*/
function () {
var _set = (0, _asyncToGenerator2.default)(
/*#__PURE__*/
_regenerator.default.mark(function _callee2(locale, value, namespace) {
var options, resolvePath, setData, path;
return _regenerator.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
if (!(typeof namespace === 'function')) {
_context2.next = 2;
break;
}
return _context2.abrupt("return", this.set(locale, value, null, namespace));
case 2:
options = this.getOptions();
resolvePath = options.resolvePath, setData = options.setData;
if (setData) {
_context2.next = 6;
break;
}
throw new Error('You need to set option setData');
case 6:
path = resolvePath(locale, namespace, options);
return _context2.abrupt("return", setData(path, value));
case 8:
case "end":
return _context2.stop();
}
}
}, _callee2, this);
}));
function set(_x3, _x4, _x5) {
return _set.apply(this, arguments);
}
return set;
}();
return File;
}(_Adapter2.default);
exports.default = File;
//# sourceMappingURL=File.js.map