mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2024-11-05 09:36:19 +00:00
895bc7721a
This adds SPDX license headers to all source code files, following the REUSE[1] specification. This does not include any asset files (such as generated JSON files, or textures). While REUSE does support doing so with ".license" files, for now we define these licences using the .reuse/dep5 file. [1]: https://reuse.software/
66 lines
1.8 KiB
JavaScript
66 lines
1.8 KiB
JavaScript
// SPDX-FileCopyrightText: 2022 The CC: Tweaked Developers
|
|
//
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
import { readFileSync } from "fs";
|
|
import path from "path";
|
|
|
|
import typescript from "@rollup/plugin-typescript";
|
|
import url from '@rollup/plugin-url';
|
|
import terser from "@rollup/plugin-terser";
|
|
|
|
const input = "src";
|
|
const requirejs = readFileSync("../../node_modules/requirejs/require.js");
|
|
|
|
export default {
|
|
input: [`${input}/index.tsx`],
|
|
output: {
|
|
// Also defined in build.gradle.kts
|
|
dir: "build/rollup/",
|
|
|
|
// We bundle requirejs (and config) into the header. It's rather gross
|
|
// but also works reasonably well.
|
|
// Also suffix a ?v=${date} onto the end in the event we need to require a specific copy-cat version.
|
|
banner: `
|
|
${requirejs}
|
|
require.config({
|
|
paths: { copycat: "https://copy-cat.squiddev.cc" },
|
|
urlArgs: function(id) { return id == "copycat/embed" ? "?v=20211221" : ""; }
|
|
});
|
|
`,
|
|
format: "amd",
|
|
generatedCode: {
|
|
preset: "es2015",
|
|
constBindings: true,
|
|
},
|
|
amd: {
|
|
define: "require",
|
|
}
|
|
},
|
|
context: "window",
|
|
external: ["copycat/embed"],
|
|
|
|
plugins: [
|
|
typescript(),
|
|
|
|
url({
|
|
include: "**/*.dfpwm",
|
|
fileName: "[name]-[hash][extname]",
|
|
publicPath: "/",
|
|
}),
|
|
|
|
{
|
|
name: "cc-tweaked",
|
|
async transform(code, file) {
|
|
// Allow loading files in /mount.
|
|
const ext = path.extname(file);
|
|
return ext != '.dfpwm' && path.dirname(file) === path.resolve(`${input}/mount`)
|
|
? `export default ${JSON.stringify(code)};\n`
|
|
: null;
|
|
},
|
|
},
|
|
|
|
terser(),
|
|
],
|
|
};
|