@xylabs/ts-scripts-yarn3 3.0.68 → 3.0.70
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/package/compile/inputs.js +2 -2
- package/dist/actions/package/compile/inputs.js.map +1 -1
- package/dist/actions/package/compile/inputs.mjs +2 -2
- package/dist/actions/package/compile/inputs.mjs.map +1 -1
- package/dist/actions/package/compile/tsup2.js +41 -13
- package/dist/actions/package/compile/tsup2.js.map +1 -1
- package/dist/actions/package/compile/tsup2.mjs +41 -13
- package/dist/actions/package/compile/tsup2.mjs.map +1 -1
- package/package.json +4 -4
- package/src/actions/package/compile/inputs.ts +2 -2
- package/src/actions/package/compile/tsup2.ts +54 -15
|
@@ -54,8 +54,8 @@ const getAllInputs = async (depth = 100) => {
|
|
|
54
54
|
const dirs = await getInputDirs(depth);
|
|
55
55
|
return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat();
|
|
56
56
|
};
|
|
57
|
-
const getAllInputs2 = () => {
|
|
58
|
-
return import_glob.glob.sync(
|
|
57
|
+
const getAllInputs2 = (folder) => {
|
|
58
|
+
return import_glob.glob.sync(`${folder}/**/*.*`, { ignore: ["**/*.spec.*", "**/*.stories.*", "**/spec/**/*"] });
|
|
59
59
|
};
|
|
60
60
|
// Annotate the CommonJS export names for ESM import in node:
|
|
61
61
|
0 && (module.exports = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/actions/package/compile/inputs.ts"],"sourcesContent":["import { readdir } from 'fs/promises'\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = () => {\n return glob.sync(
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/inputs.ts"],"sourcesContent":["import { readdir } from 'fs/promises'\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'] })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAwB;AACxB,kBAAqB;AAEd,MAAM,YAAY,OAAO,WAAoB;AAClD,UAAQ,UAAM,yBAAQ,SAAS,OAAO,MAAM,KAAK,OAAO,EAAE,WAAW,MAAM,CAAC,GACzE;AAAA,IACC,CAAC,UAAU,KAAK,SAAS,KAAK,KAAK,KAAK,SAAS,MAAM,MAAM,CAAC,KAAK,SAAS,MAAM,KAAK,CAAC,KAAK,SAAS,QAAQ,KAAK,CAAC,KAAK,SAAS,WAAW;AAAA,EAC/I,EACC,IAAI,CAAC,SAAU,SAAS,GAAG,MAAM,IAAI,IAAI,KAAK,IAAK;AACxD;AAEO,MAAM,eAAe,OAAO,QAAgB,MAAM;AACvD,MAAI,UAAU,GAAG;AACf,WAAO,CAAC;AAAA,EACV;AACA,SAAO;AAAA,IACL;AAAA,IACA,IAAI,UAAM,yBAAQ,OAAO,EAAE,WAAW,MAAM,eAAe,KAAK,CAAC,GAC9D,OAAO,CAAC,SAAS,KAAK,YAAY,CAAC,EACnC,IAAI,CAAC,SAAS;AAnBrB;AAoBQ,YAAM,cAAY,UAAK,SAAL,mBAAW,MAAM,SAAQ,CAAC;AAC5C,gBAAU,MAAM;AAChB,UAAI,UAAU,QAAQ;AACpB,cAAM,OAAO,UAAU,KAAK,GAAG;AAC/B,eAAO,GAAG,IAAI,IAAI,KAAK,IAAI;AAAA,MAC7B,OAAO;AACL,eAAO,KAAK;AAAA,MACd;AAAA,IACF,CAAC;AAAA,EACL;AACF;AAEO,MAAM,eAAe,OAAO,QAAQ,QAAQ;AACjD,QAAM,OAAO,MAAM,aAAa,KAAK;AACrC,UAAQ,MAAM,QAAQ,IAAI,KAAK,IAAI,OAAO,QAAQ,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,KAAK;AACjF;AAEO,MAAM,gBAAgB,CAAC,WAAmB;AAC/C,SAAO,iBAAK,KAAK,GAAG,MAAM,WAAW,EAAE,QAAQ,CAAC,eAAe,kBAAkB,cAAc,EAAE,CAAC;AACpG;","names":[]}
|
|
@@ -28,8 +28,8 @@ const getAllInputs = async (depth = 100) => {
|
|
|
28
28
|
const dirs = await getInputDirs(depth);
|
|
29
29
|
return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat();
|
|
30
30
|
};
|
|
31
|
-
const getAllInputs2 = () => {
|
|
32
|
-
return glob.sync(
|
|
31
|
+
const getAllInputs2 = (folder) => {
|
|
32
|
+
return glob.sync(`${folder}/**/*.*`, { ignore: ["**/*.spec.*", "**/*.stories.*", "**/spec/**/*"] });
|
|
33
33
|
};
|
|
34
34
|
export {
|
|
35
35
|
getAllInputs,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/actions/package/compile/inputs.ts"],"sourcesContent":["import { readdir } from 'fs/promises'\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = () => {\n return glob.sync(
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/inputs.ts"],"sourcesContent":["import { readdir } from 'fs/promises'\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'] })\n}\n"],"mappings":"AAAA,SAAS,eAAe;AACxB,SAAS,YAAY;AAEd,MAAM,YAAY,OAAO,WAAoB;AAClD,UAAQ,MAAM,QAAQ,SAAS,OAAO,MAAM,KAAK,OAAO,EAAE,WAAW,MAAM,CAAC,GACzE;AAAA,IACC,CAAC,UAAU,KAAK,SAAS,KAAK,KAAK,KAAK,SAAS,MAAM,MAAM,CAAC,KAAK,SAAS,MAAM,KAAK,CAAC,KAAK,SAAS,QAAQ,KAAK,CAAC,KAAK,SAAS,WAAW;AAAA,EAC/I,EACC,IAAI,CAAC,SAAU,SAAS,GAAG,MAAM,IAAI,IAAI,KAAK,IAAK;AACxD;AAEO,MAAM,eAAe,OAAO,QAAgB,MAAM;AACvD,MAAI,UAAU,GAAG;AACf,WAAO,CAAC;AAAA,EACV;AACA,SAAO;AAAA,IACL;AAAA,IACA,IAAI,MAAM,QAAQ,OAAO,EAAE,WAAW,MAAM,eAAe,KAAK,CAAC,GAC9D,OAAO,CAAC,SAAS,KAAK,YAAY,CAAC,EACnC,IAAI,CAAC,SAAS;AAnBrB;AAoBQ,YAAM,cAAY,UAAK,SAAL,mBAAW,MAAM,SAAQ,CAAC;AAC5C,gBAAU,MAAM;AAChB,UAAI,UAAU,QAAQ;AACpB,cAAM,OAAO,UAAU,KAAK,GAAG;AAC/B,eAAO,GAAG,IAAI,IAAI,KAAK,IAAI;AAAA,MAC7B,OAAO;AACL,eAAO,KAAK;AAAA,MACd;AAAA,IACF,CAAC;AAAA,EACL;AACF;AAEO,MAAM,eAAe,OAAO,QAAQ,QAAQ;AACjD,QAAM,OAAO,MAAM,aAAa,KAAK;AACrC,UAAQ,MAAM,QAAQ,IAAI,KAAK,IAAI,OAAO,QAAQ,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,KAAK;AACjF;AAEO,MAAM,gBAAgB,CAAC,WAAmB;AAC/C,SAAO,KAAK,KAAK,GAAG,MAAM,WAAW,EAAE,QAAQ,CAAC,eAAe,kBAAkB,cAAc,EAAE,CAAC;AACpG;","names":[]}
|
|
@@ -27,9 +27,19 @@ var import_publint = require("../publint");
|
|
|
27
27
|
var import_inputs = require("./inputs");
|
|
28
28
|
var import_tscNoEmit = require("./tscNoEmit");
|
|
29
29
|
var import_tscTypes = require("./tscTypes");
|
|
30
|
-
const
|
|
30
|
+
const stringOrArray = (value) => {
|
|
31
|
+
if (value === void 0) {
|
|
32
|
+
return void 0;
|
|
33
|
+
}
|
|
34
|
+
if (Array.isArray(value)) {
|
|
35
|
+
return value;
|
|
36
|
+
} else {
|
|
37
|
+
return [value];
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
const compileFolder = async (folder, options, _verbose) => {
|
|
31
41
|
const outDir = (options == null ? void 0 : options.outDir) ?? "dist";
|
|
32
|
-
const entry = (0, import_inputs.getAllInputs2)().filter((entry2) => !entry2.includes(".spec.") && !entry2.includes(".story."));
|
|
42
|
+
const entry = (0, import_inputs.getAllInputs2)(folder).filter((entry2) => !entry2.includes(".spec.") && !entry2.includes(".story."));
|
|
33
43
|
const optionsResult = (0, import_tsup.defineConfig)({
|
|
34
44
|
bundle: false,
|
|
35
45
|
cjsInterop: true,
|
|
@@ -55,22 +65,40 @@ const compileFolder = async (options, _verbose) => {
|
|
|
55
65
|
return 0;
|
|
56
66
|
};
|
|
57
67
|
const packageCompileTsup2 = async (params) => {
|
|
58
|
-
var _a, _b;
|
|
59
68
|
const { verbose, compile } = await (0, import_lib.loadConfig)(params);
|
|
60
69
|
const publint = (compile == null ? void 0 : compile.publint) ?? true;
|
|
61
70
|
if (verbose) {
|
|
62
71
|
console.log(`Compiling with TSUP [Depth: ${compile == null ? void 0 : compile.depth}]`);
|
|
63
72
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
73
|
+
const compileForNode = (compile == null ? void 0 : compile.node) ?? { src: {} };
|
|
74
|
+
const compileForBrowser = (compile == null ? void 0 : compile.browser) ?? { src: {} };
|
|
75
|
+
return (0, import_tscNoEmit.packageCompileTscNoEmit)({ verbose }) || (await Promise.all(
|
|
76
|
+
Object.entries(compileForNode).map(async ([folder, options]) => {
|
|
77
|
+
var _a;
|
|
78
|
+
return folder ? await compileFolder(
|
|
79
|
+
folder,
|
|
80
|
+
{ ...((_a = compile == null ? void 0 : compile.tsup) == null ? void 0 : _a.options) ?? {}, outDir: "dist/node", platform: "node", ...typeof options === "object" ? options : {} },
|
|
81
|
+
verbose
|
|
82
|
+
) : 0;
|
|
83
|
+
})
|
|
84
|
+
)).reduce((prev, value) => prev + value, 0) || (await Promise.all(
|
|
85
|
+
Object.entries(compileForBrowser).map(async ([folder, options]) => {
|
|
86
|
+
var _a;
|
|
87
|
+
return folder ? await compileFolder(
|
|
88
|
+
folder,
|
|
89
|
+
{
|
|
90
|
+
...((_a = compile == null ? void 0 : compile.tsup) == null ? void 0 : _a.options) ?? {},
|
|
91
|
+
bundle: true,
|
|
92
|
+
format: ["esm", "cjs"],
|
|
93
|
+
outDir: "dist/browser",
|
|
94
|
+
outExtension: ({ format }) => format === "esm" ? { js: ".js" } : { js: ".cjs" },
|
|
95
|
+
platform: "browser",
|
|
96
|
+
...typeof options === "object" ? options : {}
|
|
97
|
+
},
|
|
98
|
+
verbose
|
|
99
|
+
) : 0;
|
|
100
|
+
})
|
|
101
|
+
)).reduce((prev, value) => prev + value, 0) || (compileForNode ? await (0, import_tscTypes.packageCompileTscTypes)({ verbose }, { outDir: "dist/node" }) : 0) || (compileForBrowser ? await (0, import_tscTypes.packageCompileTscTypes)({ verbose }, { outDir: "dist/browser" }) : 0) || (publint ? await (0, import_publint.packagePublint)() : 0);
|
|
74
102
|
};
|
|
75
103
|
// Annotate the CommonJS export names for ESM import in node:
|
|
76
104
|
0 && (module.exports = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/actions/package/compile/tsup2.ts"],"sourcesContent":["import { build, defineConfig, Options } from 'tsup'\n\nimport { loadConfig } from '../../../lib'\nimport { packagePublint } from '../publint'\nimport { CompileParams } from './CompileParams'\nimport { getAllInputs2 } from './inputs'\nimport { packageCompileTscNoEmit } from './tscNoEmit'\nimport { packageCompileTscTypes } from './tscTypes'\n\nexport type PackageCompileTsup2Params = Partial<\n CompileParams & {\n compile?: {\n tsup?: {\n options?: Options\n }\n }\n }\n>\n\nconst compileFolder = async (options?: Options, _verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = getAllInputs2().filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n const optionsResult = defineConfig({\n bundle: false,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n loader: { '.gif': 'copy', '.jpg': 'copy', '.json': 'copy', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult])\n .map<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n })\n .flat(),\n )\n ).flat()\n await Promise.all(optionsList.map((options) => build(options)))\n\n return 0\n}\n\nexport const packageCompileTsup2 = async (params?: PackageCompileTsup2Params) => {\n const { verbose, compile } = await loadConfig(params)\n const publint = compile?.publint ?? true\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n return (\n packageCompileTscNoEmit({ verbose }) ||\n (await compileFolder({ ...(compile?.tsup?.options ?? {}), outDir: 'dist/node', platform: 'node' }
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/tsup2.ts"],"sourcesContent":["import { build, defineConfig, Options } from 'tsup'\n\nimport { loadConfig } from '../../../lib'\nimport { packagePublint } from '../publint'\nimport { CompileParams } from './CompileParams'\nimport { getAllInputs2 } from './inputs'\nimport { packageCompileTscNoEmit } from './tscNoEmit'\nimport { packageCompileTscTypes } from './tscTypes'\n\nexport type PackageCompileTsup2Params = Partial<\n CompileParams & {\n compile?: {\n browser?: Record<string, Options | boolean>\n node?: Record<string, Options | boolean>\n tsup?: {\n options?: Options\n }\n }\n }\n>\n\nconst stringOrArray = (value: string[] | string | undefined) => {\n if (value === undefined) {\n return undefined\n }\n if (Array.isArray(value)) {\n return value\n } else {\n return [value]\n }\n}\n\nconst compileFolder = async (folder: string, options?: Options, _verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n const optionsResult = defineConfig({\n bundle: false,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n loader: { '.gif': 'copy', '.jpg': 'copy', '.json': 'copy', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult])\n .map<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n })\n .flat(),\n )\n ).flat()\n await Promise.all(optionsList.map((options) => build(options)))\n\n return 0\n}\n\nexport const packageCompileTsup2 = async (params?: PackageCompileTsup2Params) => {\n const { verbose, compile } = await loadConfig(params)\n const publint = compile?.publint ?? true\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n\n return (\n packageCompileTscNoEmit({ verbose }) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n return folder\n ? await compileFolder(\n folder,\n { ...(compile?.tsup?.options ?? {}), outDir: 'dist/node', platform: 'node', ...(typeof options === 'object' ? options : {}) },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n return folder\n ? await compileFolder(\n folder,\n {\n ...(compile?.tsup?.options ?? {}),\n bundle: true,\n format: ['esm', 'cjs'],\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (compileForNode ? await packageCompileTscTypes({ verbose }, { outDir: 'dist/node' }) : 0) ||\n (compileForBrowser ? await packageCompileTscTypes({ verbose }, { outDir: 'dist/browser' }) : 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n"],"mappings":"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","names":["entry","options"]}
|
|
@@ -4,9 +4,19 @@ import { packagePublint } from "../publint";
|
|
|
4
4
|
import { getAllInputs2 } from "./inputs";
|
|
5
5
|
import { packageCompileTscNoEmit } from "./tscNoEmit";
|
|
6
6
|
import { packageCompileTscTypes } from "./tscTypes";
|
|
7
|
-
const
|
|
7
|
+
const stringOrArray = (value) => {
|
|
8
|
+
if (value === void 0) {
|
|
9
|
+
return void 0;
|
|
10
|
+
}
|
|
11
|
+
if (Array.isArray(value)) {
|
|
12
|
+
return value;
|
|
13
|
+
} else {
|
|
14
|
+
return [value];
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
const compileFolder = async (folder, options, _verbose) => {
|
|
8
18
|
const outDir = (options == null ? void 0 : options.outDir) ?? "dist";
|
|
9
|
-
const entry = getAllInputs2().filter((entry2) => !entry2.includes(".spec.") && !entry2.includes(".story."));
|
|
19
|
+
const entry = getAllInputs2(folder).filter((entry2) => !entry2.includes(".spec.") && !entry2.includes(".story."));
|
|
10
20
|
const optionsResult = defineConfig({
|
|
11
21
|
bundle: false,
|
|
12
22
|
cjsInterop: true,
|
|
@@ -32,22 +42,40 @@ const compileFolder = async (options, _verbose) => {
|
|
|
32
42
|
return 0;
|
|
33
43
|
};
|
|
34
44
|
const packageCompileTsup2 = async (params) => {
|
|
35
|
-
var _a, _b;
|
|
36
45
|
const { verbose, compile } = await loadConfig(params);
|
|
37
46
|
const publint = (compile == null ? void 0 : compile.publint) ?? true;
|
|
38
47
|
if (verbose) {
|
|
39
48
|
console.log(`Compiling with TSUP [Depth: ${compile == null ? void 0 : compile.depth}]`);
|
|
40
49
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
const compileForNode = (compile == null ? void 0 : compile.node) ?? { src: {} };
|
|
51
|
+
const compileForBrowser = (compile == null ? void 0 : compile.browser) ?? { src: {} };
|
|
52
|
+
return packageCompileTscNoEmit({ verbose }) || (await Promise.all(
|
|
53
|
+
Object.entries(compileForNode).map(async ([folder, options]) => {
|
|
54
|
+
var _a;
|
|
55
|
+
return folder ? await compileFolder(
|
|
56
|
+
folder,
|
|
57
|
+
{ ...((_a = compile == null ? void 0 : compile.tsup) == null ? void 0 : _a.options) ?? {}, outDir: "dist/node", platform: "node", ...typeof options === "object" ? options : {} },
|
|
58
|
+
verbose
|
|
59
|
+
) : 0;
|
|
60
|
+
})
|
|
61
|
+
)).reduce((prev, value) => prev + value, 0) || (await Promise.all(
|
|
62
|
+
Object.entries(compileForBrowser).map(async ([folder, options]) => {
|
|
63
|
+
var _a;
|
|
64
|
+
return folder ? await compileFolder(
|
|
65
|
+
folder,
|
|
66
|
+
{
|
|
67
|
+
...((_a = compile == null ? void 0 : compile.tsup) == null ? void 0 : _a.options) ?? {},
|
|
68
|
+
bundle: true,
|
|
69
|
+
format: ["esm", "cjs"],
|
|
70
|
+
outDir: "dist/browser",
|
|
71
|
+
outExtension: ({ format }) => format === "esm" ? { js: ".js" } : { js: ".cjs" },
|
|
72
|
+
platform: "browser",
|
|
73
|
+
...typeof options === "object" ? options : {}
|
|
74
|
+
},
|
|
75
|
+
verbose
|
|
76
|
+
) : 0;
|
|
77
|
+
})
|
|
78
|
+
)).reduce((prev, value) => prev + value, 0) || (compileForNode ? await packageCompileTscTypes({ verbose }, { outDir: "dist/node" }) : 0) || (compileForBrowser ? await packageCompileTscTypes({ verbose }, { outDir: "dist/browser" }) : 0) || (publint ? await packagePublint() : 0);
|
|
51
79
|
};
|
|
52
80
|
export {
|
|
53
81
|
packageCompileTsup2
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/actions/package/compile/tsup2.ts"],"sourcesContent":["import { build, defineConfig, Options } from 'tsup'\n\nimport { loadConfig } from '../../../lib'\nimport { packagePublint } from '../publint'\nimport { CompileParams } from './CompileParams'\nimport { getAllInputs2 } from './inputs'\nimport { packageCompileTscNoEmit } from './tscNoEmit'\nimport { packageCompileTscTypes } from './tscTypes'\n\nexport type PackageCompileTsup2Params = Partial<\n CompileParams & {\n compile?: {\n tsup?: {\n options?: Options\n }\n }\n }\n>\n\nconst compileFolder = async (options?: Options, _verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = getAllInputs2().filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n const optionsResult = defineConfig({\n bundle: false,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n loader: { '.gif': 'copy', '.jpg': 'copy', '.json': 'copy', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult])\n .map<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n })\n .flat(),\n )\n ).flat()\n await Promise.all(optionsList.map((options) => build(options)))\n\n return 0\n}\n\nexport const packageCompileTsup2 = async (params?: PackageCompileTsup2Params) => {\n const { verbose, compile } = await loadConfig(params)\n const publint = compile?.publint ?? true\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n return (\n packageCompileTscNoEmit({ verbose }) ||\n (await compileFolder({ ...(compile?.tsup?.options ?? {}), outDir: 'dist/node', platform: 'node' }
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/tsup2.ts"],"sourcesContent":["import { build, defineConfig, Options } from 'tsup'\n\nimport { loadConfig } from '../../../lib'\nimport { packagePublint } from '../publint'\nimport { CompileParams } from './CompileParams'\nimport { getAllInputs2 } from './inputs'\nimport { packageCompileTscNoEmit } from './tscNoEmit'\nimport { packageCompileTscTypes } from './tscTypes'\n\nexport type PackageCompileTsup2Params = Partial<\n CompileParams & {\n compile?: {\n browser?: Record<string, Options | boolean>\n node?: Record<string, Options | boolean>\n tsup?: {\n options?: Options\n }\n }\n }\n>\n\nconst stringOrArray = (value: string[] | string | undefined) => {\n if (value === undefined) {\n return undefined\n }\n if (Array.isArray(value)) {\n return value\n } else {\n return [value]\n }\n}\n\nconst compileFolder = async (folder: string, options?: Options, _verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n const optionsResult = defineConfig({\n bundle: false,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n loader: { '.gif': 'copy', '.jpg': 'copy', '.json': 'copy', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult])\n .map<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n })\n .flat(),\n )\n ).flat()\n await Promise.all(optionsList.map((options) => build(options)))\n\n return 0\n}\n\nexport const packageCompileTsup2 = async (params?: PackageCompileTsup2Params) => {\n const { verbose, compile } = await loadConfig(params)\n const publint = compile?.publint ?? true\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n\n return (\n packageCompileTscNoEmit({ verbose }) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n return folder\n ? await compileFolder(\n folder,\n { ...(compile?.tsup?.options ?? {}), outDir: 'dist/node', platform: 'node', ...(typeof options === 'object' ? options : {}) },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n return folder\n ? await compileFolder(\n folder,\n {\n ...(compile?.tsup?.options ?? {}),\n bundle: true,\n format: ['esm', 'cjs'],\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (compileForNode ? await packageCompileTscTypes({ verbose }, { outDir: 'dist/node' }) : 0) ||\n (compileForBrowser ? await packageCompileTscTypes({ verbose }, { outDir: 'dist/browser' }) : 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n"],"mappings":"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","names":["entry","options"]}
|
package/package.json
CHANGED
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"@types/yargs": "^17.0.25",
|
|
67
67
|
"@typescript-eslint/eslint-plugin": "^6.7.3",
|
|
68
68
|
"@typescript-eslint/parser": "^6.7.3",
|
|
69
|
-
"@xylabs/tsconfig": "~3.0.
|
|
69
|
+
"@xylabs/tsconfig": "~3.0.70",
|
|
70
70
|
"chalk": "^4.1.2",
|
|
71
71
|
"cosmiconfig": "^8.3.6",
|
|
72
72
|
"cpy": "^8.1.2",
|
|
@@ -110,8 +110,8 @@
|
|
|
110
110
|
"@types/license-checker": "^25.0.4",
|
|
111
111
|
"@types/lodash": "^4.14.199",
|
|
112
112
|
"@types/parse-git-config": "^3.0.2",
|
|
113
|
-
"@xylabs/eslint-config": "^3.0.
|
|
114
|
-
"@xylabs/tsconfig": "^3.0.
|
|
113
|
+
"@xylabs/eslint-config": "^3.0.70",
|
|
114
|
+
"@xylabs/tsconfig": "^3.0.70",
|
|
115
115
|
"publint": "^0.2.2",
|
|
116
116
|
"typescript": "^5.2.2"
|
|
117
117
|
},
|
|
@@ -169,5 +169,5 @@
|
|
|
169
169
|
"package-clean": "echo Not cleaning..."
|
|
170
170
|
},
|
|
171
171
|
"sideEffects": false,
|
|
172
|
-
"version": "3.0.
|
|
172
|
+
"version": "3.0.70"
|
|
173
173
|
}
|
|
@@ -35,6 +35,6 @@ export const getAllInputs = async (depth = 100) => {
|
|
|
35
35
|
return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
export const getAllInputs2 = () => {
|
|
39
|
-
return glob.sync(
|
|
38
|
+
export const getAllInputs2 = (folder: string) => {
|
|
39
|
+
return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'] })
|
|
40
40
|
}
|
|
@@ -10,6 +10,8 @@ import { packageCompileTscTypes } from './tscTypes'
|
|
|
10
10
|
export type PackageCompileTsup2Params = Partial<
|
|
11
11
|
CompileParams & {
|
|
12
12
|
compile?: {
|
|
13
|
+
browser?: Record<string, Options | boolean>
|
|
14
|
+
node?: Record<string, Options | boolean>
|
|
13
15
|
tsup?: {
|
|
14
16
|
options?: Options
|
|
15
17
|
}
|
|
@@ -17,9 +19,20 @@ export type PackageCompileTsup2Params = Partial<
|
|
|
17
19
|
}
|
|
18
20
|
>
|
|
19
21
|
|
|
20
|
-
const
|
|
22
|
+
const stringOrArray = (value: string[] | string | undefined) => {
|
|
23
|
+
if (value === undefined) {
|
|
24
|
+
return undefined
|
|
25
|
+
}
|
|
26
|
+
if (Array.isArray(value)) {
|
|
27
|
+
return value
|
|
28
|
+
} else {
|
|
29
|
+
return [value]
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const compileFolder = async (folder: string, options?: Options, _verbose?: boolean) => {
|
|
21
34
|
const outDir = options?.outDir ?? 'dist'
|
|
22
|
-
const entry = getAllInputs2().filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))
|
|
35
|
+
const entry = getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))
|
|
23
36
|
const optionsResult = defineConfig({
|
|
24
37
|
bundle: false,
|
|
25
38
|
cjsInterop: true,
|
|
@@ -57,21 +70,47 @@ export const packageCompileTsup2 = async (params?: PackageCompileTsup2Params) =>
|
|
|
57
70
|
console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)
|
|
58
71
|
}
|
|
59
72
|
|
|
73
|
+
const compileForNode = compile?.node ?? { src: {} }
|
|
74
|
+
const compileForBrowser = compile?.browser ?? { src: {} }
|
|
75
|
+
|
|
60
76
|
return (
|
|
61
77
|
packageCompileTscNoEmit({ verbose }) ||
|
|
62
|
-
(
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
(
|
|
78
|
+
(
|
|
79
|
+
await Promise.all(
|
|
80
|
+
Object.entries(compileForNode).map(async ([folder, options]) => {
|
|
81
|
+
return folder
|
|
82
|
+
? await compileFolder(
|
|
83
|
+
folder,
|
|
84
|
+
{ ...(compile?.tsup?.options ?? {}), outDir: 'dist/node', platform: 'node', ...(typeof options === 'object' ? options : {}) },
|
|
85
|
+
verbose,
|
|
86
|
+
)
|
|
87
|
+
: 0
|
|
88
|
+
}),
|
|
89
|
+
)
|
|
90
|
+
).reduce((prev, value) => prev + value, 0) ||
|
|
91
|
+
(
|
|
92
|
+
await Promise.all(
|
|
93
|
+
Object.entries(compileForBrowser).map(async ([folder, options]) => {
|
|
94
|
+
return folder
|
|
95
|
+
? await compileFolder(
|
|
96
|
+
folder,
|
|
97
|
+
{
|
|
98
|
+
...(compile?.tsup?.options ?? {}),
|
|
99
|
+
bundle: true,
|
|
100
|
+
format: ['esm', 'cjs'],
|
|
101
|
+
outDir: 'dist/browser',
|
|
102
|
+
outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),
|
|
103
|
+
platform: 'browser',
|
|
104
|
+
...(typeof options === 'object' ? options : {}),
|
|
105
|
+
},
|
|
106
|
+
verbose,
|
|
107
|
+
)
|
|
108
|
+
: 0
|
|
109
|
+
}),
|
|
110
|
+
)
|
|
111
|
+
).reduce((prev, value) => prev + value, 0) ||
|
|
112
|
+
(compileForNode ? await packageCompileTscTypes({ verbose }, { outDir: 'dist/node' }) : 0) ||
|
|
113
|
+
(compileForBrowser ? await packageCompileTscTypes({ verbose }, { outDir: 'dist/browser' }) : 0) ||
|
|
75
114
|
(publint ? await packagePublint() : 0)
|
|
76
115
|
)
|
|
77
116
|
}
|