Files
2023-08-01 13:49:46 +02:00

41 lines
1.3 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = buildExpressionTemplate;
var _babelTemplate = require("babel-template");
var _babelTemplate2 = _interopRequireDefault(_babelTemplate);
var _invariant = require("../invariant.js");
var _invariant2 = _interopRequireDefault(_invariant);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* Copyright (c) 2017-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
function buildExpressionTemplate(code) {
var template = void 0;
return function (preludeGenerator) {
return function (obj) {
if (template === undefined) template = (0, _babelTemplate2.default)(code);
if (preludeGenerator !== undefined && code.includes("global")) obj = Object.assign({
global: preludeGenerator.memoizeReference("global")
}, obj);
var result = template(obj).expression;
(0, _invariant2.default)(result !== undefined, "Code does not represent an expression: " + code);
return result;
};
};
}
//# sourceMappingURL=builder.js.map