node-library-preset/src/index.ts

45 lines
1.0 KiB
TypeScript
Raw Normal View History

import { resolve } from "node:path";
2023-06-25 02:00:40 +00:00
import type { PresetAsset } from "presetter-types";
2023-06-25 20:58:29 +00:00
let DIR: string;
if (typeof __dirname === "undefined") {
DIR = (await import("./path.js")).default();
2023-06-25 20:58:29 +00:00
} else {
DIR = __dirname;
}
2023-06-25 02:00:40 +00:00
// paths to the template directory
const TEMPLATES = resolve(DIR, "..", "templates");
export const DEFAULT_VARIABLE = {
source: "src",
};
/**
* get the list of templates provided by this preset
* @returns list of preset templates
*/
export default async function (): Promise<PresetAsset> {
return {
extends: ["presetter-preset-strict"],
template: {
".github/workflows/ci.yml": resolve(TEMPLATES, "ci.yml.raw"),
2023-06-25 08:59:59 +00:00
".releaserc.json": resolve(TEMPLATES, ".releaserc.json"),
2023-06-25 02:00:40 +00:00
},
2023-06-25 08:28:29 +00:00
noSymlinks: [".github/workflows/ci.yml"],
2023-06-25 02:00:40 +00:00
variable: DEFAULT_VARIABLE,
supplementaryConfig: {
prettier: {
singleQuote: false,
},
2023-06-25 09:24:58 +00:00
gitignore: [".releaserc.json"],
2023-06-25 08:53:56 +00:00
tsconfig: {
compilerOptions: {
2023-06-25 09:19:23 +00:00
lib: ["ES2021", "dom"],
2023-06-25 08:53:56 +00:00
},
},
2023-06-25 02:00:40 +00:00
},
};
}