diff --git a/Configuration/ESBuild.d.ts b/Configuration/ESBuild.d.ts new file mode 100644 index 0000000..e47c394 --- /dev/null +++ b/Configuration/ESBuild.d.ts @@ -0,0 +1,7 @@ +/** + * @module ESBuild + * + */ +declare const _default: BuildOptions; +export default _default; +import type { BuildOptions } from "esbuild"; diff --git a/Configuration/ESBuild.js b/Configuration/ESBuild.js new file mode 100644 index 0000000..7ba9e6b --- /dev/null +++ b/Configuration/ESBuild.js @@ -0,0 +1,46 @@ +/** + * @module ESBuild + * + */ +export default { + color: true, + format: "esm", + metafile: true, + minify: true, + outdir: "Target", + platform: "node", + target: "esnext", + write: true, + logLevel: "debug", + plugins: [ + { + name: "Target", + setup({ onStart, initialOptions: { outdir } }) { + onStart(async () => { + try { + outdir + ? await (await import("fs/promises")).rm(outdir, { + recursive: true, + }) + : {}; + } + catch (_Error) { + console.log(_Error); + } + }); + }, + }, + (await import("esbuild-plugin-copy")).copy({ + resolveFrom: "out", + assets: [ + { + from: "./Source/Stylesheet/Theme.css", + to: "./Stylesheet/", + }, + ], + }), + ], + define: { + "process.env.VERSION_PACKAGE": `'${(await (await import("../Target/Function/JSON.js")).default("package.json"))?.version}'`, + }, +}; diff --git a/Target/Stylesheet/Theme.css b/Target/Stylesheet/Theme.css new file mode 100644 index 0000000..1866722 --- /dev/null +++ b/Target/Stylesheet/Theme.css @@ -0,0 +1,54 @@ +:root { + --dark-color-background: #000; + --dark-color-background-secondary: #000; + --dark-code-background: #040404; + --color-accent: #2463eb; + --light-hl-0: #ffdd00; + --light-hl-1: #ff66ff; + --light-hl-2: #ff4444; + --light-hl-3: #44ffff; + --light-hl-4: #44ff44; + --dark-hl-0: #ffdd00; + --dark-hl-1: #ff66ff; + --dark-hl-2: #ff4444; + --dark-hl-3: #44ffff; + --dark-hl-4: #44ff44; +} + +body #tsd-search .field label { + left: 50%; + margin-left: -20px; + z-index: 1; + text-align: center; +} + +body #tsd-search.has-focus .field label { + display: none; +} + +body #tsd-search .field input { + z-index: 2; +} + +body pre, +body .tsd-page-toolbar, +body .tsd-generator { + border: none; +} + +body .tsd-navigation a, +body .tsd-navigation summary > span, +body .tsd-page-navigation a { + padding: 0.5rem; + border-radius: 8px; +} + +body .tsd-description .tsd-signatures .tsd-signature, +body .tsd-signature, +body .tsd-signatures .tsd-signature, +body .tsd-typography td, +body .tsd-typography th, +body code.tsd-tag { + border-radius: 12px; + border-width: 2px; +}