Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
module.exports = (env = {}) => {
const config = getWebpackConfig(env);
config.module.rules.push({
// Load worker tests
test: /\.worker\.js$/,
use: {
loader: 'worker-loader'
}
});
// Uncomment to debug config
// console.error(JSON.stringify(config, null, 2));
return [
config,
// For worker tests
// Output bundles to root and can be loaded with `new Worker('/*.worker.js')`
const {
stage, // build stage: ‘develop’, ‘develop-html’, ‘build-javascript’, or ‘build-html’
// rules, // Object (map): set of preconfigured webpack config rules
// plugins, // Object (map): A set of preconfigured webpack config plugins
getConfig, // Function that returns the current webpack config
// loaders, // Object (map): set of preconfigured webpack config loaders
actions
} = opts;
console.log(`App rewriting gatsby webpack config ${stage}`); // eslint-disable-line
const config = getConfig();
config.resolve = config.resolve || {};
config.resolve.alias = config.resolve.alias || {};
const ALIASES = getOcularConfig({root: resolve(__dirname, '..')}).aliases;
// When duplicating example dependencies in website, autogenerate
// aliases to ensure the website version is picked up
// NOTE: module dependencies are automatically injected
// TODO - should this be automatically done by ocular-gatsby?
const dependencyAliases = {};
for (const dependency in DEPENDENCIES) {
dependencyAliases[dependency] = `${__dirname}/node_modules/${dependency}`;
}
Object.assign(config.resolve.alias, ALIASES, dependencyAliases);
// Completely replace the webpack config for the current stage.
// This can be dangerous and break Gatsby if certain configuration options are changed.
// Generally only useful for cases where you need to handle config merging logic yourself,
// in which case consider using webpack-merge.
const {
stage, // build stage: ‘develop’, ‘develop-html’, ‘build-javascript’, or ‘build-html’
// rules, // Object (map): set of preconfigured webpack config rules
// plugins, // Object (map): A set of preconfigured webpack config plugins
getConfig, // Function that returns the current webpack config
// loaders, // Object (map): set of preconfigured webpack config loaders
actions
} = opts;
console.log(`App rewriting gatsby webpack config ${stage}`); // eslint-disable-line
const config = getConfig();
config.resolve = config.resolve || {};
config.resolve.alias = config.resolve.alias || {};
const ALIASES = getOcularConfig({root: resolve(__dirname, '..')}).aliases;
// When duplicating example dependencies in website, autogenerate
// aliases to ensure the website version is picked up
// NOTE: module dependencies are automatically injected
// TODO - should this be automatically done by ocular-gatsby?
const dependencyAliases = {};
for (const dependency in DEPENDENCIES) {
dependencyAliases[dependency] = `${__dirname}/node_modules/${dependency}`;
}
Object.assign(config.resolve.alias, ALIASES, dependencyAliases);
/*
// Recreate it with custom exclude filter
// Called without any arguments, `loaders.js` will return an
// object like:
const resolve = require('path').resolve;
const DOCS = require('../docs/table-of-contents.json');
const DEPENDENCIES = require('./package.json').dependencies;
// eslint-disable-next-line import/no-extraneous-dependencies
const ALIASES = require('ocular-dev-tools/config/ocular.config')({
root: resolve(__dirname, '..')
}).aliases;
// When duplicating example dependencies in website, autogenerate
// aliases to ensure the website version is picked up
// NOTE: module dependencies are automatically injected
// TODO - should this be automatically done by ocular-gatsby?
const dependencyAliases = {};
for (const dependency in DEPENDENCIES) {
dependencyAliases[dependency] = `${__dirname}/node_modules/${dependency}`;
}
module.exports = {
logLevel: 3,
PATH_PREFIX: '/probe.gl',
/* global __dirname, require, module */
const {resolve} = require('path');
// eslint-disable-next-line import/no-extraneous-dependencies
const ALIASES = require('ocular-dev-tools/config/ocular.config')({
root: resolve(__dirname, '../..')
}).aliases;
// const webpack = require('webpack');
const path = require('path');
// eslint-disable-next-line import/no-extraneous-dependencies
const env = require('yargs').argv.env; // use --env with webpack 2
const libraryName = 'fx';
const fileName = 'glfx-es6';
const plugins = [];
let outputFile;
let mode = 'development';
if (env === 'minified') {
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
/* eslint-disable no-process-env */
const {resolve} = require('path');
const webpack = require('webpack');
const ALIASES = require('ocular-dev-tools/config/ocular.config')({
root: resolve(__dirname, '..')
}).aliases;
const ROOT_DIR = resolve(__dirname, '..');
// Otherwise modules imported from outside this directory does not compile.
// Also needed if modules from this directory were imported elsewhere
// Seems to be a Babel bug
// https://github.com/babel/babel-loader/issues/149#issuecomment-191991686
const BABEL_CONFIG = {
presets: ['@babel/preset-env', '@babel/preset-react', '@babel/preset-flow'],
plugins: ['@babel/proposal-class-properties']
};
const CONFIG = {
mode: 'development',
// This file contains webpack configuration settings that allow
// examples to be built against the source code in this repo instead
// of building against their installed version.
//
// This enables using the examples to debug the main library source
// without publishing or npm linking, with conveniences such hot reloading etc.
const webpack = require('webpack');
const resolve = require('path').resolve;
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
const ALIASES = require('ocular-dev-tools/config/ocular.config')({
root: resolve(__dirname, '..')
}).aliases;
const ROOT_DIR = resolve(__dirname, '..');
const LERNA_INFO = require(resolve(ROOT_DIR, 'lerna.json'));
const BABEL_CONFIG = {
presets: ['@babel/env'],
plugins: [
[
'babel-plugin-inline-import',
{
extensions: ['.worker.js']
}
],
['@babel/plugin-transform-runtime', {useESModules: true}],
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Config for bundling workers
const {resolve} = require('path');
const ALIASES = require('ocular-dev-tools/config/ocular.config')({
aliasMode: 'src',
root: resolve(__dirname, '..')
}).aliases;
const BABEL_CONFIG = {
presets: [
// We must transpile to es6 to enable tree shaking
['@babel/preset-env', {modules: false}]
],
plugins: [
['@babel/plugin-transform-runtime', {useESModules: false}],
'version-inline'
]
};
const CONFIG = {
const {resolve} = require('path');
const webpack = require('webpack');
const ALIASES = require('ocular-dev-tools/config/ocular.config')({
aliasMode: 'src',
root: resolve(__dirname, '../..')
}).aliases;
const EXTERNALS = ['@jupyter-widgets/base'];
const PACKAGE_ROOT = resolve('.');
const PACKAGE_INFO = require(resolve(PACKAGE_ROOT, 'package.json'));
const rules = [
{
// Compile ES2015 using babel
test: /\.js$/,
loader: 'babel-loader',
include: /src/,
options: {
babelrc: false,
const resolve = require('path').resolve;
const DOCS = require('../docs/table-of-contents.json');
const DEPENDENCIES = require('./package.json').dependencies;
// eslint-disable-next-line import/no-extraneous-dependencies
const ALIASES = require('ocular-dev-tools/config/ocular.config')({
root: resolve(__dirname, '..')
}).aliases;
// When duplicating example dependencies in website, autogenerate
// aliases to ensure the website version is picked up
// NOTE: module dependencies are automatically injected
// TODO - should this be automatically done by gatsby-theme-ocular?
const dependencyAliases = {};
for (const dependency in DEPENDENCIES) {
dependencyAliases[dependency] = `${__dirname}/node_modules/${dependency}`;
}
module.exports = {
logLevel: 1, // Adjusts amount of debug information from ocular-gatsby
DOC_FOLDER: `${__dirname}/../docs/`,