1
0
mirror of https://github.com/oceanprotocol/market.git synced 2024-12-02 05:57:29 +01:00
market/next.config.js
EnzoVezzaro 6a6f1acd84
add steps back history to publish (#1342)
* added step route to publish

* moved hooks to navigation

* handle back history and load on refresh

* clean up

* changed to nested routes in publish

* fix warning code climate (similar blocks)

* fix header publish link

* moved scrollIntoView() after routing change

* fix `Type 'string[]' is not assignable to type 'string'.` error

* Revert "fix header publish link"

This reverts commit 82e00398c0.

* serverside redirect from `/publish`

* client side redirect from `/publish`

* fix issue with redirect on publish

- remove index publish (redirect taken care server side)
- change link in menu to step 1
- refactor router push on navigation

* simplify handleStepClick function
2022-04-26 12:09:51 +02:00

70 lines
1.9 KiB
JavaScript

module.exports = (phase, { defaultConfig }) => {
/**
* @type {import('next').NextConfig}
*/
const nextConfig = {
webpack: (config, options) => {
config.module.rules.push(
{
test: /\.svg$/,
issuer: /\.(tsx|ts)$/,
use: [{ loader: '@svgr/webpack', options: { icon: true } }]
},
{
test: /\.gif$/,
// yay for webpack 5
// https://webpack.js.org/guides/asset-management/#loading-images
type: 'asset/resource'
}
)
// for old ocean.js, most likely can be removed later on
config.plugins.push(
new options.webpack.IgnorePlugin({
resourceRegExp: /^electron$/
})
)
const fallback = config.resolve.fallback || {}
Object.assign(fallback, {
// crypto: require.resolve('crypto-browserify'),
// stream: require.resolve('stream-browserify'),
// assert: require.resolve('assert'),
// os: require.resolve('os-browserify'),
// url: require.resolve('url'),
http: require.resolve('stream-http'),
https: require.resolve('https-browserify'),
fs: false,
crypto: false,
os: false,
stream: false,
assert: false
})
config.resolve.fallback = fallback
config.plugins = (config.plugins || []).concat([
new options.webpack.ProvidePlugin({
process: 'process/browser',
Buffer: ['buffer', 'Buffer']
})
])
return typeof defaultConfig.webpack === 'function'
? defaultConfig.webpack(config, options)
: config
},
async redirects() {
return [
{
source: '/publish',
destination: '/publish/1',
permanent: true
}
]
}
// Prefer loading of ES Modules over CommonJS
// https://nextjs.org/blog/next-11-1#es-modules-support
// experimental: { esmExternals: true }
}
return nextConfig
}