Home Reference Source Repository

src/roc/config/roc.config.js

const config = {
    settings: {
        runtime: {
            stats: 'build/client/webpack-stats.json',
            applicationName: '',
            meta: [{
                name: 'viewport',
                content: 'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0'
            }],
            link: [{
                rel: 'icon',
                href: 'favicon.png'
            }],
            // ROC_PATH will be replaced with what is defined in build.path
            base: {
                href: 'ROC_PATH',
                target: ''
            },
            script: [],
            ssr: true,
            clientBlocking: false,
            template: {
                path: '',
                name: 'main.html'
            },
            debug: {
                client: 'roc:*'
            },
            configWhitelistProperty: 'DANGEROUSLY_EXPOSE_TO_CLIENT'
        },

        dev: {
            // FIXME Does not play nice with Redux Devtools, a11y
            a11y: false,
            reduxDevtools: {
                enabled: true,
                position: 'right',
                size: 0.3,
                visibilityKey: 'H',
                positionKey: 'Q',
                defaultVisible: false,
                theme: 'ocean'
            },

            reduxLogger: {
                level: 'info',
                collapsed: true,
                duration: true,
                timestamp: true
            },

            yellowbox: {
                enabled: true,
                ignore: ['[HMR]', 'Warning: React attempted to reuse markup in a container']
            }
        },

        build: {
            entry: { client: '', server: ''},

            reducers: 'reducers.js',
            useDefaultReducers: true,

            routes: 'routes.js',
            useDefaultRoutes: true,

            reduxMiddlewares: 'redux-middlewares.js',
            useDefaultReduxMiddlewares: true,

            clientLoading: '',
            assets: ['roc-web-react/styles/base.scss']
        }
    },

    plugins: {
        createBuilder: {
            default: require('../builder')
        }
    }
};

/**
 * Exports the default `roc.config.js`.
 *
 * @return {object} The default `roc.config.js`.
 */
export default config;