@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.
@@ -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("src/**/*.*", { ignore: ["**/*.spec.*", "**/*.stories.*", "**/spec/**/*"] });
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('src/**/*.*', { 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,MAAM;AACjC,SAAO,iBAAK,KAAK,cAAc,EAAE,QAAQ,CAAC,eAAe,kBAAkB,cAAc,EAAE,CAAC;AAC9F;","names":[]}
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("src/**/*.*", { ignore: ["**/*.spec.*", "**/*.stories.*", "**/spec/**/*"] });
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('src/**/*.*', { 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,MAAM;AACjC,SAAO,KAAK,KAAK,cAAc,EAAE,QAAQ,CAAC,eAAe,kBAAkB,cAAc,EAAE,CAAC;AAC9F;","names":[]}
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 compileFolder = async (options, _verbose) => {
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
- return (0, import_tscNoEmit.packageCompileTscNoEmit)({ verbose }) || await compileFolder({ ...((_a = compile == null ? void 0 : compile.tsup) == null ? void 0 : _a.options) ?? {}, outDir: "dist/node", platform: "node" }, verbose) || await compileFolder(
65
- {
66
- ...((_b = compile == null ? void 0 : compile.tsup) == null ? void 0 : _b.options) ?? {},
67
- format: ["esm", "cjs"],
68
- outDir: "dist/browser",
69
- outExtension: ({ format }) => format === "esm" ? { js: ".js" } : { js: ".cjs" },
70
- platform: "browser"
71
- },
72
- verbose
73
- ) || await (0, import_tscTypes.packageCompileTscTypes)({ verbose }, { outDir: "dist/node" }) || await (0, import_tscTypes.packageCompileTscTypes)({ verbose }, { outDir: "dist/browser" }) || (publint ? await (0, import_publint.packagePublint)() : 0);
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' }, verbose)) ||\n (await compileFolder(\n {\n ...(compile?.tsup?.options ?? {}),\n format: ['esm', 'cjs'],\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n },\n verbose,\n )) ||\n (await packageCompileTscTypes({ verbose }, { outDir: 'dist/node' })) ||\n (await packageCompileTscTypes({ verbose }, { outDir: 'dist/browser' })) ||\n (publint ? await packagePublint() : 0)\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA6C;AAE7C,iBAA2B;AAC3B,qBAA+B;AAE/B,oBAA8B;AAC9B,uBAAwC;AACxC,sBAAuC;AAYvC,MAAM,gBAAgB,OAAO,SAAmB,aAAuB;AACrE,QAAM,UAAS,mCAAS,WAAU;AAClC,QAAM,YAAQ,6BAAc,EAAE,OAAO,CAACA,WAAU,CAACA,OAAM,SAAS,QAAQ,KAAK,CAACA,OAAM,SAAS,SAAS,CAAC;AACvG,QAAM,oBAAgB,0BAAa;AAAA,IACjC,QAAQ;AAAA,IACR,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,KAAK;AAAA,IACL;AAAA,IACA,QAAQ,CAAC,OAAO,KAAK;AAAA,IACrB,QAAQ,EAAE,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,OAAO;AAAA,IAC3G;AAAA,IACA,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,WAAW;AAAA,IACX,UAAU;AAAA,IACV,GAAG;AAAA,EACL,CAAC;AACD,QAAM,eACJ,MAAM,QAAQ;AAAA,KACX,MAAM,QAAQ,aAAa,IAAI,gBAAgB,CAAC,aAAa,GAC3D,IAAwB,OAAOC,aAAY;AAC1C,YAAM,SAAS,OAAOA,aAAY,aAAa,MAAMA,SAAQ,CAAC,CAAC,IAAI,CAACA,QAAO;AAC3E,aAAO,MAAM,QAAQ,MAAM,IAAI,SAAS,CAAC,MAAM;AAAA,IACjD,CAAC,EACA,KAAK;AAAA,EACV,GACA,KAAK;AACP,QAAM,QAAQ,IAAI,YAAY,IAAI,CAACA,iBAAY,mBAAMA,QAAO,CAAC,CAAC;AAE9D,SAAO;AACT;AAEO,MAAM,sBAAsB,OAAO,WAAuC;AApDjF;AAqDE,QAAM,EAAE,SAAS,QAAQ,IAAI,UAAM,uBAAW,MAAM;AACpD,QAAM,WAAU,mCAAS,YAAW;AACpC,MAAI,SAAS;AACX,YAAQ,IAAI,+BAA+B,mCAAS,KAAK,GAAG;AAAA,EAC9D;AAEA,aACE,0CAAwB,EAAE,QAAQ,CAAC,KAClC,MAAM,cAAc,EAAE,KAAI,wCAAS,SAAT,mBAAe,YAAW,CAAC,GAAI,QAAQ,aAAa,UAAU,OAAO,GAAG,OAAO,KACzG,MAAM;AAAA,IACL;AAAA,MACE,KAAI,wCAAS,SAAT,mBAAe,YAAW,CAAC;AAAA,MAC/B,QAAQ,CAAC,OAAO,KAAK;AAAA,MACrB,QAAQ;AAAA,MACR,cAAc,CAAC,EAAE,OAAO,MAAO,WAAW,QAAQ,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,OAAO;AAAA,MAC/E,UAAU;AAAA,IACZ;AAAA,IACA;AAAA,EACF,KACC,UAAM,wCAAuB,EAAE,QAAQ,GAAG,EAAE,QAAQ,YAAY,CAAC,KACjE,UAAM,wCAAuB,EAAE,QAAQ,GAAG,EAAE,QAAQ,eAAe,CAAC,MACpE,UAAU,UAAM,+BAAe,IAAI;AAExC;","names":["entry","options"]}
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 compileFolder = async (options, _verbose) => {
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
- return packageCompileTscNoEmit({ verbose }) || await compileFolder({ ...((_a = compile == null ? void 0 : compile.tsup) == null ? void 0 : _a.options) ?? {}, outDir: "dist/node", platform: "node" }, verbose) || await compileFolder(
42
- {
43
- ...((_b = compile == null ? void 0 : compile.tsup) == null ? void 0 : _b.options) ?? {},
44
- format: ["esm", "cjs"],
45
- outDir: "dist/browser",
46
- outExtension: ({ format }) => format === "esm" ? { js: ".js" } : { js: ".cjs" },
47
- platform: "browser"
48
- },
49
- verbose
50
- ) || await packageCompileTscTypes({ verbose }, { outDir: "dist/node" }) || await packageCompileTscTypes({ verbose }, { outDir: "dist/browser" }) || (publint ? await packagePublint() : 0);
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' }, verbose)) ||\n (await compileFolder(\n {\n ...(compile?.tsup?.options ?? {}),\n format: ['esm', 'cjs'],\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n },\n verbose,\n )) ||\n (await packageCompileTscTypes({ verbose }, { outDir: 'dist/node' })) ||\n (await packageCompileTscTypes({ verbose }, { outDir: 'dist/browser' })) ||\n (publint ? await packagePublint() : 0)\n )\n}\n"],"mappings":"AAAA,SAAS,OAAO,oBAA6B;AAE7C,SAAS,kBAAkB;AAC3B,SAAS,sBAAsB;AAE/B,SAAS,qBAAqB;AAC9B,SAAS,+BAA+B;AACxC,SAAS,8BAA8B;AAYvC,MAAM,gBAAgB,OAAO,SAAmB,aAAuB;AACrE,QAAM,UAAS,mCAAS,WAAU;AAClC,QAAM,QAAQ,cAAc,EAAE,OAAO,CAACA,WAAU,CAACA,OAAM,SAAS,QAAQ,KAAK,CAACA,OAAM,SAAS,SAAS,CAAC;AACvG,QAAM,gBAAgB,aAAa;AAAA,IACjC,QAAQ;AAAA,IACR,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,KAAK;AAAA,IACL;AAAA,IACA,QAAQ,CAAC,OAAO,KAAK;AAAA,IACrB,QAAQ,EAAE,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,OAAO;AAAA,IAC3G;AAAA,IACA,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,WAAW;AAAA,IACX,UAAU;AAAA,IACV,GAAG;AAAA,EACL,CAAC;AACD,QAAM,eACJ,MAAM,QAAQ;AAAA,KACX,MAAM,QAAQ,aAAa,IAAI,gBAAgB,CAAC,aAAa,GAC3D,IAAwB,OAAOC,aAAY;AAC1C,YAAM,SAAS,OAAOA,aAAY,aAAa,MAAMA,SAAQ,CAAC,CAAC,IAAI,CAACA,QAAO;AAC3E,aAAO,MAAM,QAAQ,MAAM,IAAI,SAAS,CAAC,MAAM;AAAA,IACjD,CAAC,EACA,KAAK;AAAA,EACV,GACA,KAAK;AACP,QAAM,QAAQ,IAAI,YAAY,IAAI,CAACA,aAAY,MAAMA,QAAO,CAAC,CAAC;AAE9D,SAAO;AACT;AAEO,MAAM,sBAAsB,OAAO,WAAuC;AApDjF;AAqDE,QAAM,EAAE,SAAS,QAAQ,IAAI,MAAM,WAAW,MAAM;AACpD,QAAM,WAAU,mCAAS,YAAW;AACpC,MAAI,SAAS;AACX,YAAQ,IAAI,+BAA+B,mCAAS,KAAK,GAAG;AAAA,EAC9D;AAEA,SACE,wBAAwB,EAAE,QAAQ,CAAC,KAClC,MAAM,cAAc,EAAE,KAAI,wCAAS,SAAT,mBAAe,YAAW,CAAC,GAAI,QAAQ,aAAa,UAAU,OAAO,GAAG,OAAO,KACzG,MAAM;AAAA,IACL;AAAA,MACE,KAAI,wCAAS,SAAT,mBAAe,YAAW,CAAC;AAAA,MAC/B,QAAQ,CAAC,OAAO,KAAK;AAAA,MACrB,QAAQ;AAAA,MACR,cAAc,CAAC,EAAE,OAAO,MAAO,WAAW,QAAQ,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,OAAO;AAAA,MAC/E,UAAU;AAAA,IACZ;AAAA,IACA;AAAA,EACF,KACC,MAAM,uBAAuB,EAAE,QAAQ,GAAG,EAAE,QAAQ,YAAY,CAAC,KACjE,MAAM,uBAAuB,EAAE,QAAQ,GAAG,EAAE,QAAQ,eAAe,CAAC,MACpE,UAAU,MAAM,eAAe,IAAI;AAExC;","names":["entry","options"]}
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.68",
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.68",
114
- "@xylabs/tsconfig": "^3.0.68",
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.68"
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('src/**/*.*', { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'] })
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 compileFolder = async (options?: Options, _verbose?: boolean) => {
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
- (await compileFolder({ ...(compile?.tsup?.options ?? {}), outDir: 'dist/node', platform: 'node' }, verbose)) ||
63
- (await compileFolder(
64
- {
65
- ...(compile?.tsup?.options ?? {}),
66
- format: ['esm', 'cjs'],
67
- outDir: 'dist/browser',
68
- outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),
69
- platform: 'browser',
70
- },
71
- verbose,
72
- )) ||
73
- (await packageCompileTscTypes({ verbose }, { outDir: 'dist/node' })) ||
74
- (await packageCompileTscTypes({ verbose }, { outDir: 'dist/browser' })) ||
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
  }