"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const webpack_1 = require("webpack");
const config_1 = require("@expo/config");
const createClientEnvironment_1 = __importDefault(require("../createClientEnvironment"));
/**
* Required for `expo-constants` https://docs.expo.io/versions/latest/sdk/constants/
* This surfaces the `app.json` (config) as an environment variable which is then parsed by `expo-constants`.
*/
class ExpoDefinePlugin extends webpack_1.DefinePlugin {
constructor({ mode, publicUrl, productionManifestPath, config, }) {
const publicAppManifest = config_1.createEnvironmentConstants(config, productionManifestPath);
const environmentVariables = createClientEnvironment_1.default(mode, publicUrl, publicAppManifest);
super(environmentVariables);
}
}
exports.default = ExpoDefinePlugin;
//# sourceMappingURL=ExpoDefinePlugin.js.map