1234567891011121314151617181920212223242526272829303132333435363738394041 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = void 0;
- var _helperPluginUtils = require("@babel/helper-plugin-utils");
- var _core = require("@babel/core");
- var _default = (0, _helperPluginUtils.declare)((api, options) => {
- api.assertVersion(7);
- const {
- helperVersion = "7.0.0-beta.0",
- whitelist = false
- } = options;
- if (whitelist !== false && (!Array.isArray(whitelist) || whitelist.some(w => typeof w !== "string"))) {
- throw new Error(".whitelist must be undefined, false, or an array of strings");
- }
- const helperWhitelist = whitelist ? new Set(whitelist) : null;
- return {
- name: "external-helpers",
- pre(file) {
- file.set("helperGenerator", name => {
- if (file.availableHelper && !file.availableHelper(name, helperVersion)) {
- return;
- }
- if (helperWhitelist && !helperWhitelist.has(name)) return;
- return _core.types.memberExpression(_core.types.identifier("babelHelpers"), _core.types.identifier(name));
- });
- }
- };
- });
- exports.default = _default;
|