@xylabs/ts-scripts-yarn3 3.9.0 → 3.10.0
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/clean.js.map +1 -1
- package/dist/actions/clean.mjs.map +1 -1
- package/dist/actions/package/compile/XyConfig.js.map +1 -1
- package/dist/actions/package/compile/packageCompileTsup.js +50 -0
- package/dist/actions/package/compile/packageCompileTsup.js.map +1 -1
- package/dist/actions/package/compile/packageCompileTsup.mjs +50 -0
- package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/package.json +18 -17
- package/src/actions/clean.ts +0 -1
- package/src/actions/package/compile/XyConfig.ts +1 -0
- package/src/actions/package/compile/packageCompileTsup.ts +56 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/actions/clean.ts"],"sourcesContent":["import { runStepsAsync } from '../lib'\n\
|
|
1
|
+
{"version":3,"sources":["../../src/actions/clean.ts"],"sourcesContent":["import { runStepsAsync } from '../lib'\n\nexport interface CleanParams {\n pkg?: string\n verbose?: boolean\n}\n\nexport interface CleanPackageParams {\n pkg: string\n verbose?: boolean\n}\n\nexport const clean = async ({ verbose, pkg }: CleanParams) => {\n return pkg ? await cleanPackage({ pkg, verbose }) : cleanAll({ verbose })\n}\n\nexport const cleanPackage = ({ pkg }: CleanPackageParams) => {\n return runStepsAsync(`Clean [${pkg}]`, [['yarn', ['workspace', pkg, 'run', 'package-clean']]])\n}\n\nexport const cleanAll = ({ verbose }: CleanParams) => {\n const verboseOptions = verbose ? ['--verbose'] : ['--no-verbose']\n return runStepsAsync('Clean', [['yarn', ['workspaces foreach', '-pA', '--jobs 64', ...verboseOptions, 'run', 'package-clean']]])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAA8B;AAYvB,MAAM,QAAQ,OAAO,EAAE,SAAS,IAAI,MAAmB;AAC5D,SAAO,MAAM,MAAM,aAAa,EAAE,KAAK,QAAQ,CAAC,IAAI,SAAS,EAAE,QAAQ,CAAC;AAC1E;AAEO,MAAM,eAAe,CAAC,EAAE,IAAI,MAA0B;AAC3D,aAAO,0BAAc,UAAU,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,aAAa,KAAK,OAAO,eAAe,CAAC,CAAC,CAAC;AAC/F;AAEO,MAAM,WAAW,CAAC,EAAE,QAAQ,MAAmB;AACpD,QAAM,iBAAiB,UAAU,CAAC,WAAW,IAAI,CAAC,cAAc;AAChE,aAAO,0BAAc,SAAS,CAAC,CAAC,QAAQ,CAAC,sBAAsB,OAAO,aAAa,GAAG,gBAAgB,OAAO,eAAe,CAAC,CAAC,CAAC;AACjI;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/actions/clean.ts"],"sourcesContent":["import { runStepsAsync } from '../lib'\n\
|
|
1
|
+
{"version":3,"sources":["../../src/actions/clean.ts"],"sourcesContent":["import { runStepsAsync } from '../lib'\n\nexport interface CleanParams {\n pkg?: string\n verbose?: boolean\n}\n\nexport interface CleanPackageParams {\n pkg: string\n verbose?: boolean\n}\n\nexport const clean = async ({ verbose, pkg }: CleanParams) => {\n return pkg ? await cleanPackage({ pkg, verbose }) : cleanAll({ verbose })\n}\n\nexport const cleanPackage = ({ pkg }: CleanPackageParams) => {\n return runStepsAsync(`Clean [${pkg}]`, [['yarn', ['workspace', pkg, 'run', 'package-clean']]])\n}\n\nexport const cleanAll = ({ verbose }: CleanParams) => {\n const verboseOptions = verbose ? ['--verbose'] : ['--no-verbose']\n return runStepsAsync('Clean', [['yarn', ['workspaces foreach', '-pA', '--jobs 64', ...verboseOptions, 'run', 'package-clean']]])\n}\n"],"mappings":"AAAA,SAAS,qBAAqB;AAYvB,MAAM,QAAQ,OAAO,EAAE,SAAS,IAAI,MAAmB;AAC5D,SAAO,MAAM,MAAM,aAAa,EAAE,KAAK,QAAQ,CAAC,IAAI,SAAS,EAAE,QAAQ,CAAC;AAC1E;AAEO,MAAM,eAAe,CAAC,EAAE,IAAI,MAA0B;AAC3D,SAAO,cAAc,UAAU,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,aAAa,KAAK,OAAO,eAAe,CAAC,CAAC,CAAC;AAC/F;AAEO,MAAM,WAAW,CAAC,EAAE,QAAQ,MAAmB;AACpD,QAAM,iBAAiB,UAAU,CAAC,WAAW,IAAI,CAAC,cAAc;AAChE,SAAO,cAAc,SAAS,CAAC,CAAC,QAAQ,CAAC,sBAAsB,OAAO,aAAa,GAAG,gBAAgB,OAAO,eAAe,CAAC,CAAC,CAAC;AACjI;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/actions/package/compile/XyConfig.ts"],"sourcesContent":["import { Options } from 'tsup'\n\nexport type EntryMode = 'all' | 'single' | 'auto' | 'platform'\n\nexport type CompileMode = 'tsup' | 'tsc'\n\nexport interface LiveShareConfig {\n exclude?: string[]\n include?: string[]\n}\n\nexport interface CompileConfig {\n depth?: number\n /** @param entryMode all, single, platform, or auto */\n entryMode?: EntryMode\n /** @param files Manually specify the files to be compiled */\n files?: string[]\n mode?: CompileMode\n}\n\nexport type PackageCompileTsupConfig = CompileConfig & {\n browser?: Record<string, Options | boolean>\n mode?: 'tsup'\n node?: Record<string, Options | boolean>\n tsup?: {\n options?: Options\n }\n}\n\nexport type PackageCompileTscConfig = CompileConfig & {\n mode: 'tsc'\n}\n\nexport interface XyConfigBase {\n compile?: CompileConfig\n liveShare?: LiveShareConfig\n publint?: boolean\n verbose?: boolean\n}\n\nexport interface XyTsupConfig extends XyConfigBase {\n compile?: PackageCompileTsupConfig\n}\n\nexport interface XyTscConfig extends XyConfigBase {\n compile?: PackageCompileTscConfig\n}\n\nexport type XyConfig = XyTsupConfig | XyTscConfig\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/XyConfig.ts"],"sourcesContent":["import { Options } from 'tsup'\n\nexport type EntryMode = 'all' | 'single' | 'auto' | 'platform'\n\nexport type CompileMode = 'tsup' | 'tsc'\n\nexport interface LiveShareConfig {\n exclude?: string[]\n include?: string[]\n}\n\nexport interface CompileConfig {\n depth?: number\n /** @param entryMode all, single, platform, or auto */\n entryMode?: EntryMode\n /** @param files Manually specify the files to be compiled */\n files?: string[]\n mode?: CompileMode\n}\n\nexport type PackageCompileTsupConfig = CompileConfig & {\n browser?: Record<string, Options | boolean>\n mode?: 'tsup'\n neutral?: Record<string, Options | boolean>\n node?: Record<string, Options | boolean>\n tsup?: {\n options?: Options\n }\n}\n\nexport type PackageCompileTscConfig = CompileConfig & {\n mode: 'tsc'\n}\n\nexport interface XyConfigBase {\n compile?: CompileConfig\n liveShare?: LiveShareConfig\n publint?: boolean\n verbose?: boolean\n}\n\nexport interface XyTsupConfig extends XyConfigBase {\n compile?: PackageCompileTsupConfig\n}\n\nexport interface XyTscConfig extends XyConfigBase {\n compile?: PackageCompileTscConfig\n}\n\nexport type XyConfig = XyTsupConfig | XyTscConfig\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
|
|
@@ -63,6 +63,7 @@ const packageCompileTsup = async (config) => {
|
|
|
63
63
|
}
|
|
64
64
|
const compileForNode = (compile == null ? void 0 : compile.node) ?? { src: {} };
|
|
65
65
|
const compileForBrowser = (compile == null ? void 0 : compile.browser) ?? { src: {} };
|
|
66
|
+
const compileForNeutral = (compile == null ? void 0 : compile.neutral) ?? { src: {} };
|
|
66
67
|
return await (0, import_packageCompileTsc.packageCompileTsc)(true, { publint: false, verbose }) || (await Promise.all(
|
|
67
68
|
Object.entries(compileForNode).map(async ([folder, options]) => {
|
|
68
69
|
var _a, _b, _c;
|
|
@@ -137,6 +138,55 @@ const packageCompileTsup = async (config) => {
|
|
|
137
138
|
)
|
|
138
139
|
])).reduce((prev, value) => prev + value, 0) : 0;
|
|
139
140
|
})
|
|
141
|
+
)).reduce((prev, value) => prev + value, 0) || (await Promise.all(
|
|
142
|
+
Object.entries(compileForNeutral).map(async ([folder, options]) => {
|
|
143
|
+
var _a, _b, _c, _d;
|
|
144
|
+
const inEsBuildOptions = typeof ((_a = compile == null ? void 0 : compile.neutral) == null ? void 0 : _a.esbuildOptions) === "object" ? (_b = compile == null ? void 0 : compile.neutral) == null ? void 0 : _b.esbuildOptions : {};
|
|
145
|
+
return folder ? (await Promise.all([
|
|
146
|
+
compileFolder(
|
|
147
|
+
folder,
|
|
148
|
+
compile == null ? void 0 : compile.entryMode,
|
|
149
|
+
{
|
|
150
|
+
bundle: true,
|
|
151
|
+
format: ["cjs"],
|
|
152
|
+
loader: (0, import_lodash.merge)(
|
|
153
|
+
{},
|
|
154
|
+
{ ".gif": "copy", ".html": "copy", ".jpg": "copy", ".json": "json", ".png": "copy", ".svg": "copy", ".webp": "copy" },
|
|
155
|
+
inEsBuildOptions == null ? void 0 : inEsBuildOptions.loader
|
|
156
|
+
),
|
|
157
|
+
outDir: "dist/neutral",
|
|
158
|
+
outExtension: ({ format }) => format === "esm" ? { js: ".js" } : { js: ".cjs" },
|
|
159
|
+
platform: "neutral",
|
|
160
|
+
skipNodeModulesBundle: true,
|
|
161
|
+
target: "esnext",
|
|
162
|
+
...(_c = compile == null ? void 0 : compile.tsup) == null ? void 0 : _c.options,
|
|
163
|
+
...typeof options === "object" ? options : {}
|
|
164
|
+
},
|
|
165
|
+
verbose
|
|
166
|
+
),
|
|
167
|
+
compileFolder(
|
|
168
|
+
folder,
|
|
169
|
+
compile == null ? void 0 : compile.entryMode,
|
|
170
|
+
{
|
|
171
|
+
bundle: true,
|
|
172
|
+
format: ["esm"],
|
|
173
|
+
loader: (0, import_lodash.merge)(
|
|
174
|
+
{},
|
|
175
|
+
{ ".gif": "copy", ".html": "copy", ".jpg": "copy", ".json": "json", ".png": "copy", ".svg": "copy", ".webp": "copy" },
|
|
176
|
+
inEsBuildOptions == null ? void 0 : inEsBuildOptions.loader
|
|
177
|
+
),
|
|
178
|
+
outDir: "dist/neutral",
|
|
179
|
+
outExtension: ({ format }) => format === "esm" ? { js: ".js" } : { js: ".cjs" },
|
|
180
|
+
platform: "neutral",
|
|
181
|
+
skipNodeModulesBundle: true,
|
|
182
|
+
target: "esnext",
|
|
183
|
+
...(_d = compile == null ? void 0 : compile.tsup) == null ? void 0 : _d.options,
|
|
184
|
+
...typeof options === "object" ? options : {}
|
|
185
|
+
},
|
|
186
|
+
verbose
|
|
187
|
+
)
|
|
188
|
+
])).reduce((prev, value) => prev + value, 0) : 0;
|
|
189
|
+
})
|
|
140
190
|
)).reduce((prev, value) => prev + value, 0) || (publint ? await (0, import_publint.packagePublint)() : 0);
|
|
141
191
|
};
|
|
142
192
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTsup.ts"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport { merge } from 'lodash'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint'\nimport { buildEntries } from './buildEntries'\nimport { packageCompileTsc } from './packageCompileTsc'\nimport { packageCompileTscTypes } from './packageCompileTscTypes'\nimport { EntryMode, XyTsupConfig } from './XyConfig'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\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]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\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 (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n target: 'node16',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\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 const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n"],"mappings":"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","names":["options"]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTsup.ts"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport { merge } from 'lodash'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint'\nimport { buildEntries } from './buildEntries'\nimport { packageCompileTsc } from './packageCompileTsc'\nimport { packageCompileTscTypes } from './packageCompileTscTypes'\nimport { EntryMode, XyTsupConfig } from './XyConfig'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\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]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\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 const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n target: 'node16',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\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 const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n"],"mappings":"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","names":["options"]}
|
|
@@ -40,6 +40,7 @@ const packageCompileTsup = async (config) => {
|
|
|
40
40
|
}
|
|
41
41
|
const compileForNode = (compile == null ? void 0 : compile.node) ?? { src: {} };
|
|
42
42
|
const compileForBrowser = (compile == null ? void 0 : compile.browser) ?? { src: {} };
|
|
43
|
+
const compileForNeutral = (compile == null ? void 0 : compile.neutral) ?? { src: {} };
|
|
43
44
|
return await packageCompileTsc(true, { publint: false, verbose }) || (await Promise.all(
|
|
44
45
|
Object.entries(compileForNode).map(async ([folder, options]) => {
|
|
45
46
|
var _a, _b, _c;
|
|
@@ -114,6 +115,55 @@ const packageCompileTsup = async (config) => {
|
|
|
114
115
|
)
|
|
115
116
|
])).reduce((prev, value) => prev + value, 0) : 0;
|
|
116
117
|
})
|
|
118
|
+
)).reduce((prev, value) => prev + value, 0) || (await Promise.all(
|
|
119
|
+
Object.entries(compileForNeutral).map(async ([folder, options]) => {
|
|
120
|
+
var _a, _b, _c, _d;
|
|
121
|
+
const inEsBuildOptions = typeof ((_a = compile == null ? void 0 : compile.neutral) == null ? void 0 : _a.esbuildOptions) === "object" ? (_b = compile == null ? void 0 : compile.neutral) == null ? void 0 : _b.esbuildOptions : {};
|
|
122
|
+
return folder ? (await Promise.all([
|
|
123
|
+
compileFolder(
|
|
124
|
+
folder,
|
|
125
|
+
compile == null ? void 0 : compile.entryMode,
|
|
126
|
+
{
|
|
127
|
+
bundle: true,
|
|
128
|
+
format: ["cjs"],
|
|
129
|
+
loader: merge(
|
|
130
|
+
{},
|
|
131
|
+
{ ".gif": "copy", ".html": "copy", ".jpg": "copy", ".json": "json", ".png": "copy", ".svg": "copy", ".webp": "copy" },
|
|
132
|
+
inEsBuildOptions == null ? void 0 : inEsBuildOptions.loader
|
|
133
|
+
),
|
|
134
|
+
outDir: "dist/neutral",
|
|
135
|
+
outExtension: ({ format }) => format === "esm" ? { js: ".js" } : { js: ".cjs" },
|
|
136
|
+
platform: "neutral",
|
|
137
|
+
skipNodeModulesBundle: true,
|
|
138
|
+
target: "esnext",
|
|
139
|
+
...(_c = compile == null ? void 0 : compile.tsup) == null ? void 0 : _c.options,
|
|
140
|
+
...typeof options === "object" ? options : {}
|
|
141
|
+
},
|
|
142
|
+
verbose
|
|
143
|
+
),
|
|
144
|
+
compileFolder(
|
|
145
|
+
folder,
|
|
146
|
+
compile == null ? void 0 : compile.entryMode,
|
|
147
|
+
{
|
|
148
|
+
bundle: true,
|
|
149
|
+
format: ["esm"],
|
|
150
|
+
loader: merge(
|
|
151
|
+
{},
|
|
152
|
+
{ ".gif": "copy", ".html": "copy", ".jpg": "copy", ".json": "json", ".png": "copy", ".svg": "copy", ".webp": "copy" },
|
|
153
|
+
inEsBuildOptions == null ? void 0 : inEsBuildOptions.loader
|
|
154
|
+
),
|
|
155
|
+
outDir: "dist/neutral",
|
|
156
|
+
outExtension: ({ format }) => format === "esm" ? { js: ".js" } : { js: ".cjs" },
|
|
157
|
+
platform: "neutral",
|
|
158
|
+
skipNodeModulesBundle: true,
|
|
159
|
+
target: "esnext",
|
|
160
|
+
...(_d = compile == null ? void 0 : compile.tsup) == null ? void 0 : _d.options,
|
|
161
|
+
...typeof options === "object" ? options : {}
|
|
162
|
+
},
|
|
163
|
+
verbose
|
|
164
|
+
)
|
|
165
|
+
])).reduce((prev, value) => prev + value, 0) : 0;
|
|
166
|
+
})
|
|
117
167
|
)).reduce((prev, value) => prev + value, 0) || (publint ? await packagePublint() : 0);
|
|
118
168
|
};
|
|
119
169
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTsup.ts"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport { merge } from 'lodash'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint'\nimport { buildEntries } from './buildEntries'\nimport { packageCompileTsc } from './packageCompileTsc'\nimport { packageCompileTscTypes } from './packageCompileTscTypes'\nimport { EntryMode, XyTsupConfig } from './XyConfig'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\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]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\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 (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n target: 'node16',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\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 const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n"],"mappings":"AACA,SAAS,aAAa;AACtB,SAAS,OAAO,oBAA6B;AAE7C,SAAS,sBAAsB;AAC/B,SAAS,oBAAoB;AAC7B,SAAS,yBAAyB;AAClC,SAAS,8BAA8B;AAGvC,MAAM,gBAAgB,OAAO,QAAgB,YAAuB,UAAU,SAAmB,YAAsB;AACrH,QAAM,UAAS,mCAAS,WAAU;AAClC,QAAM,QAAQ,aAAa,QAAQ,SAAS;AAC5C,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;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,GAAG,QAA4B,OAAOA,aAAY;AAC9G,YAAM,SAAS,OAAOA,aAAY,aAAa,MAAMA,SAAQ,CAAC,CAAC,IAAI,CAACA,QAAO;AAC3E,aAAO,MAAM,QAAQ,MAAM,IAAI,SAAS,CAAC,MAAM;AAAA,IACjD,CAAC;AAAA,EACH,GACA,KAAK;AAEP,QAAM,QAAQ,IAAI,YAAY,IAAI,CAACA,aAAY,MAAMA,QAAO,CAAC,CAAC;AAC9D,QAAM,uBAAuB,QAAQ,EAAE,QAAQ,GAAG,EAAE,OAAO,CAAC;AAE5D,SAAO;AACT;AAEO,MAAM,qBAAqB,OAAO,WAA0B;AACjE,QAAM,UAAU,iCAAQ;AACxB,QAAM,WAAU,iCAAQ,YAAW;AACnC,QAAM,WAAU,iCAAQ,YAAW;AACnC,MAAI,SAAS;AACX,YAAQ,IAAI,+BAA+B,mCAAS,KAAK,GAAG;AAAA,EAC9D;AAEA,QAAM,kBAAiB,mCAAS,SAAQ,EAAE,KAAK,CAAC,EAAE;AAClD,QAAM,qBAAoB,mCAAS,YAAW,EAAE,KAAK,CAAC,EAAE;AAExD,SACG,MAAM,kBAAkB,MAAM,EAAE,SAAS,OAAO,QAAQ,CAAC,MAExD,MAAM,QAAQ;AAAA,IACZ,OAAO,QAAQ,cAAc,EAAE,IAAI,OAAO,CAAC,QAAQ,OAAO,MAAM;AAzDxE;AA0DU,YAAM,mBAAmB,SAAO,wCAAS,SAAT,mBAAe,oBAAmB,YAAW,wCAAS,SAAT,mBAAe,iBAAiB,CAAC;AAC9G,aAAO,SACH,MAAM;AAAA,QACJ;AAAA,QACA,mCAAS;AAAA,QACT;AAAA,UACE,QAAQ;AAAA,UACR,QAAQ,CAAC,OAAO,KAAK;AAAA,UACrB,QAAQ;AAAA,YACN,CAAC;AAAA,YACD,EAAE,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,OAAO;AAAA,YACpH,qDAAkB;AAAA,UACpB;AAAA,UACA,QAAQ;AAAA,UACR,UAAU;AAAA,UACV,uBAAuB;AAAA,UACvB,QAAQ;AAAA,UACR,IAAG,wCAAS,SAAT,mBAAe;AAAA,UAClB,GAAI,OAAO,YAAY,WAAW,UAAU,CAAC;AAAA,QAC/C;AAAA,QACA;AAAA,MACF,IACA;AAAA,IACN,CAAC;AAAA,EACH,GACA,OAAO,CAAC,MAAM,UAAU,OAAO,OAAO,CAAC,MAEvC,MAAM,QAAQ;AAAA,IACZ,OAAO,QAAQ,iBAAiB,EAAE,IAAI,OAAO,CAAC,QAAQ,OAAO,MAAM;AAtF3E;AAuFU,YAAM,mBAAmB,SAAO,wCAAS,YAAT,mBAAkB,oBAAmB,YAAW,wCAAS,YAAT,mBAAkB,iBAAiB,CAAC;AACpH,aAAO,UAED,MAAM,QAAQ,IAAI;AAAA,QAChB;AAAA,UACE;AAAA,UACA,mCAAS;AAAA,UACT;AAAA,YACE,QAAQ;AAAA,YACR,QAAQ,CAAC,KAAK;AAAA,YACd,QAAQ;AAAA,cACN,CAAC;AAAA,cACD,EAAE,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,OAAO;AAAA,cACpH,qDAAkB;AAAA,YACpB;AAAA,YACA,QAAQ;AAAA,YACR,cAAc,CAAC,EAAE,OAAO,MAAO,WAAW,QAAQ,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,OAAO;AAAA,YAC/E,UAAU;AAAA,YACV,uBAAuB;AAAA,YACvB,QAAQ;AAAA,YACR,IAAG,wCAAS,SAAT,mBAAe;AAAA,YAClB,GAAI,OAAO,YAAY,WAAW,UAAU,CAAC;AAAA,UAC/C;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,UACE;AAAA,UACA,mCAAS;AAAA,UACT;AAAA,YACE,QAAQ;AAAA,YACR,QAAQ,CAAC,KAAK;AAAA,YACd,QAAQ;AAAA,cACN,CAAC;AAAA,cACD,EAAE,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,OAAO;AAAA,cACpH,qDAAkB;AAAA,YACpB;AAAA,YACA,QAAQ;AAAA,YACR,cAAc,CAAC,EAAE,OAAO,MAAO,WAAW,QAAQ,EAAE,IAAI,MAAM,IAAI,EAAE,IAAI,OAAO;AAAA,YAC/E,UAAU;AAAA,YACV,uBAAuB;AAAA,YACvB,QAAQ;AAAA,YACR,IAAG,wCAAS,SAAT,mBAAe;AAAA,YAClB,GAAI,OAAO,YAAY,WAAW,UAAU,CAAC;AAAA,UAC/C;AAAA,UACA;AAAA,QACF;AAAA,MACF,CAAC,GACD,OAAO,CAAC,MAAM,UAAU,OAAO,OAAO,CAAC,IACzC;AAAA,IACN,CAAC;AAAA,EACH,GACA,OAAO,CAAC,MAAM,UAAU,OAAO,OAAO,CAAC,MACxC,UAAU,MAAM,eAAe,IAAI;AAExC;","names":["options"]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTsup.ts"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport { merge } from 'lodash'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint'\nimport { buildEntries } from './buildEntries'\nimport { packageCompileTsc } from './packageCompileTsc'\nimport { packageCompileTscTypes } from './packageCompileTscTypes'\nimport { EntryMode, XyTsupConfig } from './XyConfig'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\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]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\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 const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n target: 'node16',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\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 const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n target: 'esnext',\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n"],"mappings":"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","names":["options"]}
|
package/dist/index.d.mts
CHANGED
|
@@ -141,6 +141,7 @@ interface CompileConfig {
|
|
|
141
141
|
type PackageCompileTsupConfig = CompileConfig & {
|
|
142
142
|
browser?: Record<string, Options | boolean>;
|
|
143
143
|
mode?: 'tsup';
|
|
144
|
+
neutral?: Record<string, Options | boolean>;
|
|
144
145
|
node?: Record<string, Options | boolean>;
|
|
145
146
|
tsup?: {
|
|
146
147
|
options?: Options;
|
package/dist/index.d.ts
CHANGED
|
@@ -141,6 +141,7 @@ interface CompileConfig {
|
|
|
141
141
|
type PackageCompileTsupConfig = CompileConfig & {
|
|
142
142
|
browser?: Record<string, Options | boolean>;
|
|
143
143
|
mode?: 'tsup';
|
|
144
|
+
neutral?: Record<string, Options | boolean>;
|
|
144
145
|
node?: Record<string, Options | boolean>;
|
|
145
146
|
tsup?: {
|
|
146
147
|
options?: Options;
|
package/package.json
CHANGED
|
@@ -60,31 +60,32 @@
|
|
|
60
60
|
"@rollup/plugin-commonjs": "^25.0.7",
|
|
61
61
|
"@rollup/plugin-json": "^6.1.0",
|
|
62
62
|
"@rollup/plugin-typescript": "^11.1.6",
|
|
63
|
-
"@types/node": "^20.12.
|
|
63
|
+
"@types/node": "^20.12.7",
|
|
64
64
|
"@types/yargs": "^17.0.32",
|
|
65
|
-
"@typescript-eslint/eslint-plugin": "^7.
|
|
66
|
-
"@typescript-eslint/parser": "^7.
|
|
67
|
-
"@xylabs/tsconfig": "~3.
|
|
65
|
+
"@typescript-eslint/eslint-plugin": "^7.8.0",
|
|
66
|
+
"@typescript-eslint/parser": "^7.8.0",
|
|
67
|
+
"@xylabs/tsconfig": "~3.10.0",
|
|
68
|
+
"@xylabs/tsconfig-dom": "~3.10.0",
|
|
68
69
|
"async-mutex": "^0.5.0",
|
|
69
70
|
"chalk": "^4.1.2",
|
|
70
71
|
"cosmiconfig": "^9.0.0",
|
|
71
72
|
"cosmiconfig-typescript-loader": "^5.0.0",
|
|
72
73
|
"cpy": "^8.1.2",
|
|
73
74
|
"depcheck": "^1.4.7",
|
|
74
|
-
"eslint": "^
|
|
75
|
+
"eslint": "^9.1.1",
|
|
75
76
|
"eslint-config-prettier": "^9.1.0",
|
|
76
77
|
"eslint-plugin-prettier": "^5.1.3",
|
|
77
|
-
"eslint-plugin-sonarjs": "^0.25.
|
|
78
|
+
"eslint-plugin-sonarjs": "^0.25.1",
|
|
78
79
|
"glob": "^10.3.12",
|
|
79
80
|
"jest": "^29.7.0",
|
|
80
81
|
"jest-extended": "^4.0.2",
|
|
81
|
-
"jest-mock-extended": "^3.0.
|
|
82
|
+
"jest-mock-extended": "^3.0.6",
|
|
82
83
|
"jest-sorted": "^1.0.15",
|
|
83
84
|
"jsonc-eslint-parser": "^2.4.0",
|
|
84
85
|
"license-checker": "^25.0.1",
|
|
85
86
|
"lodash": "^4.17.21",
|
|
86
87
|
"node-cmd": "^5.0.0",
|
|
87
|
-
"npm-check-updates": "^16.14.
|
|
88
|
+
"npm-check-updates": "^16.14.20",
|
|
88
89
|
"npm-package-json-lint": "^7.1.0",
|
|
89
90
|
"npm-package-json-lint-config-default": "^6.0.0",
|
|
90
91
|
"parse-git-config": "^3.0.0",
|
|
@@ -92,30 +93,30 @@
|
|
|
92
93
|
"publint": "^0.2.7",
|
|
93
94
|
"reflect-metadata": "^0.2.2",
|
|
94
95
|
"rimraf": "^4.4.1",
|
|
95
|
-
"rollup": "^4.
|
|
96
|
+
"rollup": "^4.17.1",
|
|
96
97
|
"rollup-plugin-exclude-dependencies-from-bundle": "^1.1.23",
|
|
97
|
-
"rollup-plugin-node-externals": "^7.1.
|
|
98
|
-
"supertest": "^
|
|
98
|
+
"rollup-plugin-node-externals": "^7.1.2",
|
|
99
|
+
"supertest": "^7.0.0",
|
|
99
100
|
"ts-jest": "^29.1.2",
|
|
100
101
|
"ts-node": "^10.9.2",
|
|
101
102
|
"ts-prune": "^0.10.3",
|
|
102
103
|
"tsc-prog": "^2.3.0",
|
|
103
104
|
"tslib": "^2.6.2",
|
|
104
105
|
"tsup": "^8.0.2",
|
|
105
|
-
"typedoc": "^0.25.
|
|
106
|
+
"typedoc": "^0.25.13",
|
|
106
107
|
"types-package-json": "^2.0.39",
|
|
107
108
|
"yargs": "^17.7.2"
|
|
108
109
|
},
|
|
109
110
|
"description": "TypeScript project scripts",
|
|
110
111
|
"devDependencies": {
|
|
111
|
-
"@types/eslint": "^8.56.
|
|
112
|
+
"@types/eslint": "^8.56.10",
|
|
112
113
|
"@types/license-checker": "^25.0.6",
|
|
113
114
|
"@types/lodash": "^4.17.0",
|
|
114
115
|
"@types/parse-git-config": "^3.0.4",
|
|
115
|
-
"@xylabs/eslint-config": "~3.
|
|
116
|
-
"@xylabs/tsconfig": "~3.
|
|
116
|
+
"@xylabs/eslint-config": "~3.10.0",
|
|
117
|
+
"@xylabs/tsconfig": "~3.10.0",
|
|
117
118
|
"publint": "^0.2.7",
|
|
118
|
-
"typescript": "^5.4.
|
|
119
|
+
"typescript": "^5.4.5"
|
|
119
120
|
},
|
|
120
121
|
"peerDependencies": {
|
|
121
122
|
"typescript": "^5"
|
|
@@ -169,6 +170,6 @@
|
|
|
169
170
|
"package-clean": "echo Not cleaning..."
|
|
170
171
|
},
|
|
171
172
|
"sideEffects": false,
|
|
172
|
-
"version": "3.
|
|
173
|
+
"version": "3.10.0",
|
|
173
174
|
"type": "commonjs"
|
|
174
175
|
}
|
package/src/actions/clean.ts
CHANGED
|
@@ -21,6 +21,7 @@ export interface CompileConfig {
|
|
|
21
21
|
export type PackageCompileTsupConfig = CompileConfig & {
|
|
22
22
|
browser?: Record<string, Options | boolean>
|
|
23
23
|
mode?: 'tsup'
|
|
24
|
+
neutral?: Record<string, Options | boolean>
|
|
24
25
|
node?: Record<string, Options | boolean>
|
|
25
26
|
tsup?: {
|
|
26
27
|
options?: Options
|
|
@@ -50,6 +50,7 @@ export const packageCompileTsup = async (config?: XyTsupConfig) => {
|
|
|
50
50
|
|
|
51
51
|
const compileForNode = compile?.node ?? { src: {} }
|
|
52
52
|
const compileForBrowser = compile?.browser ?? { src: {} }
|
|
53
|
+
const compileForNeutral = compile?.neutral ?? { src: {} }
|
|
53
54
|
|
|
54
55
|
return (
|
|
55
56
|
(await packageCompileTsc(true, { publint: false, verbose })) ||
|
|
@@ -137,6 +138,61 @@ export const packageCompileTsup = async (config?: XyTsupConfig) => {
|
|
|
137
138
|
}),
|
|
138
139
|
)
|
|
139
140
|
).reduce((prev, value) => prev + value, 0) ||
|
|
141
|
+
(
|
|
142
|
+
await Promise.all(
|
|
143
|
+
Object.entries(compileForNeutral).map(async ([folder, options]) => {
|
|
144
|
+
const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}
|
|
145
|
+
return folder ?
|
|
146
|
+
(
|
|
147
|
+
await Promise.all([
|
|
148
|
+
compileFolder(
|
|
149
|
+
folder,
|
|
150
|
+
compile?.entryMode,
|
|
151
|
+
{
|
|
152
|
+
bundle: true,
|
|
153
|
+
format: ['cjs'],
|
|
154
|
+
loader: merge(
|
|
155
|
+
{},
|
|
156
|
+
{ '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },
|
|
157
|
+
inEsBuildOptions?.loader,
|
|
158
|
+
),
|
|
159
|
+
outDir: 'dist/neutral',
|
|
160
|
+
outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),
|
|
161
|
+
platform: 'neutral',
|
|
162
|
+
skipNodeModulesBundle: true,
|
|
163
|
+
target: 'esnext',
|
|
164
|
+
...compile?.tsup?.options,
|
|
165
|
+
...(typeof options === 'object' ? options : {}),
|
|
166
|
+
},
|
|
167
|
+
verbose,
|
|
168
|
+
),
|
|
169
|
+
compileFolder(
|
|
170
|
+
folder,
|
|
171
|
+
compile?.entryMode,
|
|
172
|
+
{
|
|
173
|
+
bundle: true,
|
|
174
|
+
format: ['esm'],
|
|
175
|
+
loader: merge(
|
|
176
|
+
{},
|
|
177
|
+
{ '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },
|
|
178
|
+
inEsBuildOptions?.loader,
|
|
179
|
+
),
|
|
180
|
+
outDir: 'dist/neutral',
|
|
181
|
+
outExtension: ({ format }) => (format === 'esm' ? { js: '.js' } : { js: '.cjs' }),
|
|
182
|
+
platform: 'neutral',
|
|
183
|
+
skipNodeModulesBundle: true,
|
|
184
|
+
target: 'esnext',
|
|
185
|
+
...compile?.tsup?.options,
|
|
186
|
+
...(typeof options === 'object' ? options : {}),
|
|
187
|
+
},
|
|
188
|
+
verbose,
|
|
189
|
+
),
|
|
190
|
+
])
|
|
191
|
+
).reduce((prev, value) => prev + value, 0)
|
|
192
|
+
: 0
|
|
193
|
+
}),
|
|
194
|
+
)
|
|
195
|
+
).reduce((prev, value) => prev + value, 0) ||
|
|
140
196
|
(publint ? await packagePublint() : 0)
|
|
141
197
|
)
|
|
142
198
|
}
|