const slash = require('slash2'); const proxy = require('./proxy'); const defaultSetting = require('./defaultSetting'); const pkgName = require('../package.json').name; // eslint-disable-next-line import/order const { NODE_ENV } = process.env; // eslint-disable-next-line import/order const path = require('path'); const CESIUM_BASE_URL = `/${pkgName}`; module.exports = { // mfsu: {}, esbuild: {}, webpack5: {}, base: '/civbase', title: '熊猫智慧城市监控管理解决方案', hash: true, layout: { siderWidth: '145px', locale: true, ...defaultSetting, }, fastRefresh: true, useHash: true, locale: { default: 'zh-CN', antd: true, baseNavigator: true, }, dynamicImport: { loading: '@wisdom-utils/components/lib/AppLayout/components/PageLoading', }, // theme: { // '@primary-color': '#ff9600', // }, ignoreMomentLocale: true, nodeModulesTransform: { type: 'none', exclude: ['@wisdom-map/arcgismap', '@wisdom-map/amap', '@wisdom-map/basemap', 'swagger-ui-react', 'Cesium'], }, proxy: proxy[NODE_ENV], theme: { 'root-entry-name': 'variable', }, // openAPI: { // requestLibPath: "import { request } from '@wisdom-utils/utils'", // schemaPath: 'http://192.168.10.150:8777/Publish/OMS/swagger/v1/swagger.json', // mock: false, // }, postcssLoader: {}, // styleLoader: {}, cssLoader: { modules: { getLocalIdent: (context, _, localName) => { if (/@wisdom-cesium/.test(context.resourcePath)) { const matchRule = slash(context.resourcePath).match(/@wisdom-cesium\/(krpano)(.*).less$/); if (matchRule && matchRule[2]) { if (/rc-slider/.test(matchRule[0])) { return localName; } const className = matchRule[2] .split('/') .map(a => a.replace(/([A-Z])/g, '-$1')) .map(a => a.toLowerCase()) .join('-'); return `panda-krpano-${className}-${localName}`.replace(/--/g, '-'); } return localName; } if ( context.resourcePath.includes('node_modules') || context.resourcePath.includes('ant.design.pro.less') || context.resourcePath.includes('global.less') || context.resourcePath.includes('ThemeColor.less') ) { return localName; } const match = context.resourcePath.match(/(src(.*))/); if (match && match[1]) { const antdProPath = match[1].replace('.less', ''); const arr = slash(antdProPath) .split('/') .map(a => a.replace(/([A-Z])/g, '-$1')) .map(a => a.toLowerCase()); return `panda-console-base${arr.join('-')}-${localName}`.replace(/--/g, '-'); } return localName; }, }, }, lessLoader: { modifyVars: { // hack: `true; @import "~@/global.less";`, '@ant-prefix': 'panda-console-base', // '@iconPrefixCls': 'panda-console-base-icon', }, javascriptEnabled: true, }, alias: { '@esri/arcgis-html-sanitizer': path.resolve( __dirname, '../node_modules/@esri/arcgis-html-sanitizer/dist/esm/index.js', ), }, // esbuild: {} };