UNPKG

gatsby-plugin-prodo

Version:
49 lines (41 loc) 1.55 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var path = require("path"); // Add Babel plugin try { require.resolve("@prodo/babel-plugin"); } catch (e) { throw new Error("'@prodo/babel-plugin' is not installed which is needed by plugin 'gatsby-plugin-prodo'"); } exports.onCreateBabelConfig = function (_ref, pluginOptions) { var stage = _ref.stage, actions = _ref.actions; actions.setBabelPlugin({ name: "@prodo/babel-plugin", stage: stage }); }; exports.onCreateWebpackConfig = function (_ref2, pluginOptions) { var stage = _ref2.stage, loaders = _ref2.loaders, actions = _ref2.actions, plugins = _ref2.plugins, cache = _ref2.cache, other = (0, _objectWithoutPropertiesLoose2["default"])(_ref2, ["stage", "loaders", "actions", "plugins", "cache"]); var ssr = stage === "build-html" || stage === "build-javascript" || "develop-html"; actions.setWebpackConfig({ module: { rules: [{ test: /model\.js$/, include: path.dirname(require.resolve("gatsby-plugin-prodo")), use: [loaders.js(), { loader: path.join("gatsby-plugin-prodo", "loaders", "model"), options: (0, _extends2["default"])({ ssr: ssr }, pluginOptions) }] }] } }); };