2020-07-01 17:11:45 +02:00
|
|
|
const path = require('path')
|
|
|
|
const axios = require('axios')
|
|
|
|
// const { config } = require('./src/config/ocean')
|
|
|
|
|
2020-06-30 13:32:16 +02:00
|
|
|
exports.onCreateWebpackConfig = ({ actions }) => {
|
|
|
|
actions.setWebpackConfig({
|
|
|
|
node: {
|
|
|
|
// 'fs' fix for squid.js
|
|
|
|
fs: 'empty'
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
2020-07-01 17:11:45 +02:00
|
|
|
|
|
|
|
exports.createPages = async ({ actions, reporter }) => {
|
|
|
|
const { createPage } = actions
|
2020-07-06 11:28:33 +02:00
|
|
|
// Query for all assets to use in creating pages.
|
2020-07-01 17:11:45 +02:00
|
|
|
const result = await axios(
|
|
|
|
`https://aquarius.marketplace.oceanprotocol.com/api/v1/aquarius/assets`
|
|
|
|
)
|
|
|
|
const assets = result.data.ids
|
|
|
|
|
|
|
|
// Handle errors
|
|
|
|
if (result.errors) {
|
|
|
|
reporter.panicOnBuild(`Error while querying Aquarius for all assets.`)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
// Create pages for each DID
|
|
|
|
const assetDetailsTemplate = path.resolve(
|
|
|
|
`src/components/templates/AssetDetails/index.tsx`
|
|
|
|
)
|
|
|
|
assets.forEach((did) => {
|
|
|
|
const path = `/asset/${did}`
|
|
|
|
|
|
|
|
createPage({
|
|
|
|
path,
|
|
|
|
component: assetDetailsTemplate,
|
|
|
|
context: { did }
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|