2021-12-10 16:03:17 +01:00
|
|
|
const cssvariables = require("postcss-css-variables");
|
|
|
|
const flexbugsFixes = require("postcss-flexbugs-fixes");
|
2022-04-11 12:55:28 +02:00
|
|
|
const compileVariables = require("./scripts/postcss/css-compile-variables");
|
|
|
|
const urlVariables = require("./scripts/postcss/css-url-to-variables");
|
|
|
|
const urlProcessor = require("./scripts/postcss/css-url-processor");
|
2021-12-10 16:03:17 +01:00
|
|
|
const fs = require("fs");
|
|
|
|
const path = require("path");
|
2021-12-17 16:13:26 +01:00
|
|
|
const manifest = require("./package.json");
|
|
|
|
const version = manifest.version;
|
2022-04-11 12:55:28 +02:00
|
|
|
const compiledVariables = new Map();
|
2022-07-11 08:47:33 +02:00
|
|
|
import {buildColorizedSVG as replacer} from "./scripts/postcss/svg-colorizer.mjs";
|
2022-07-11 08:33:07 +02:00
|
|
|
import {derive} from "./scripts/postcss/color.mjs";
|
2021-12-10 16:03:17 +01:00
|
|
|
|
|
|
|
const commonOptions = {
|
2021-12-22 16:25:09 +01:00
|
|
|
logLevel: "warn",
|
2021-12-20 19:17:31 +01:00
|
|
|
publicDir: false,
|
2021-12-10 16:03:17 +01:00
|
|
|
server: {
|
|
|
|
hmr: false
|
|
|
|
},
|
2021-12-21 15:28:55 +01:00
|
|
|
resolve: {
|
|
|
|
alias: {
|
|
|
|
// these should only be imported by the base-x package in any runtime code
|
|
|
|
// and works in the browser with a Uint8Array shim,
|
|
|
|
// rather than including a ton of polyfill code
|
|
|
|
"safe-buffer": "./scripts/package-overrides/safe-buffer/index.js",
|
|
|
|
"buffer": "./scripts/package-overrides/buffer/index.js",
|
|
|
|
}
|
|
|
|
},
|
2021-12-10 16:03:17 +01:00
|
|
|
build: {
|
|
|
|
emptyOutDir: true,
|
|
|
|
assetsInlineLimit: 0,
|
|
|
|
polyfillModulePreload: false,
|
|
|
|
},
|
2022-04-20 08:55:23 +02:00
|
|
|
assetsInclude: ['**/config.json'],
|
2021-12-10 16:03:17 +01:00
|
|
|
define: {
|
|
|
|
DEFINE_VERSION: JSON.stringify(version),
|
|
|
|
DEFINE_GLOBAL_HASH: JSON.stringify(null),
|
|
|
|
},
|
|
|
|
css: {
|
|
|
|
postcss: {
|
|
|
|
plugins: [
|
2022-04-11 12:55:28 +02:00
|
|
|
compileVariables({derive, compiledVariables}),
|
2022-06-16 17:56:16 +02:00
|
|
|
urlVariables({compiledVariables}),
|
2022-04-11 12:55:28 +02:00
|
|
|
urlProcessor({replacer}),
|
|
|
|
// cssvariables({
|
|
|
|
// preserve: (declaration) => {
|
|
|
|
// return declaration.value.indexOf("var(--ios-") == 0;
|
|
|
|
// }
|
|
|
|
// }),
|
2021-12-10 16:03:17 +01:00
|
|
|
// the grid option creates some source fragment that causes the vite warning reporter to crash because
|
|
|
|
// it wants to log a warning on a line that does not exist in the source fragment.
|
|
|
|
// autoprefixer({overrideBrowserslist: ["IE 11"], grid: "no-autoplace"}),
|
|
|
|
flexbugsFixes()
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2022-04-11 12:55:28 +02:00
|
|
|
module.exports = { commonOptions, compiledVariables };
|