size-limit-node-esbuild
Advanced tools
Comparing version 0.2.0 to 0.3.0
/// <reference path="../shim.d.ts" /> | ||
import type { BuildOptions } from 'esbuild'; | ||
import { SizeLimitCheck, SizeLimitConfig } from 'size-limit'; | ||
declare const _default: readonly [{ | ||
readonly name: "size-limit-node-esbuild"; | ||
readonly step20: (config: { | ||
configPath: string; | ||
saveBundle: string; | ||
}, check: { | ||
esbuild?: false | undefined; | ||
config?: string | undefined; | ||
esbuildConfig: BuildOptions; | ||
esbuildOutfile: string; | ||
modifyEsbuildConfig?(esbuildConfig: BuildOptions): BuildOptions; | ||
}) => Promise<void>; | ||
readonly step20: (config: SizeLimitConfig, check: SizeLimitCheck) => Promise<void>; | ||
}]; | ||
export default _default; |
import { tmpdir } from 'node:os'; | ||
import { join } from 'node:path'; | ||
import convertConfig from '@size-limit/esbuild/convert-config'; | ||
import getConfig from '@size-limit/esbuild/get-config'; | ||
import { nanoid } from 'nanoid/non-secure'; | ||
import { processImport } from 'size-limit'; | ||
async function getConfig(_config, check, output) { | ||
await processImport(check, output); | ||
return { | ||
allowOverwrite: !!check.import, | ||
bundle: true, | ||
entryPoints: Array.isArray(check.files) ? check.files : [check.files], | ||
external: check.ignore, | ||
metafile: true, | ||
minifyIdentifiers: true, | ||
minifySyntax: true, | ||
minifyWhitespace: true, | ||
outdir: output, | ||
treeShaking: true, | ||
write: true, | ||
}; | ||
} | ||
const setPlatformNode = (esbuildConfig) => { | ||
esbuildConfig.metafile = true; | ||
if (!esbuildConfig.platform) { | ||
@@ -25,6 +41,4 @@ esbuildConfig.platform = 'node'; | ||
const esbuildConfig = (await import(check.config)); | ||
convertConfig(setPlatformNode((check.esbuildConfig = | ||
'default' in esbuildConfig | ||
? esbuildConfig.default | ||
: esbuildConfig)), config.configPath); | ||
setPlatformNode((check.esbuildConfig = | ||
'default' in esbuildConfig ? esbuildConfig.default : esbuildConfig)); | ||
} | ||
@@ -31,0 +45,0 @@ else { |
{ | ||
"name": "size-limit-node-esbuild", | ||
"version": "0.2.0", | ||
"version": "0.3.0", | ||
"type": "module", | ||
@@ -14,8 +14,6 @@ "description": "Node esbuild plugin for Size Limit", | ||
}, | ||
"main": "./lib/index.cjs", | ||
"module": "./lib/index.js", | ||
"main": "./lib/index.js", | ||
"exports": { | ||
"types": "./lib/index.d.ts", | ||
"import": "./lib/index.js", | ||
"require": "./lib/index.cjs" | ||
"default": "./lib/index.js" | ||
}, | ||
@@ -28,5 +26,5 @@ "types": "./lib/index.d.ts", | ||
"dependencies": { | ||
"@size-limit/esbuild": "^8.1.0", | ||
"nanoid": "^3.2.0", | ||
"tslib": "^2.4.0" | ||
"nanoid": "^5.0.3", | ||
"size-limit": "^10.0.2", | ||
"tslib": "^2.6.2" | ||
}, | ||
@@ -33,0 +31,0 @@ "publishConfig": { |
@@ -37,2 +37,4 @@ # size-limit-node-esbuild | ||
[![Backers](https://raw.githubusercontent.com/1stG/static/master/sponsors.svg)](https://github.com/sponsors/JounQin) | ||
| 1stG | RxTS | UnTS | | ||
@@ -39,0 +41,0 @@ | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | |
@@ -1,28 +0,24 @@ | ||
declare module '@size-limit/esbuild/convert-config' { | ||
declare module 'size-limit' { | ||
import { BuildOptions } from 'esbuild' | ||
function convertConfig(esbuildConfig: BuildOptions, configPath: string): void | ||
export interface SizeLimitConfig { | ||
configPath: string | ||
saveBundle: string | ||
} | ||
export = convertConfig | ||
} | ||
export interface SizeLimitCheck { | ||
import?: string | ||
files: string[] | string | ||
ignore?: string[] | ||
esbuild?: false | ||
config?: string | ||
esbuildConfig: BuildOptions | ||
esbuildOutfile: string | ||
modifyEsbuildConfig?(esbuildConfig: BuildOptions): BuildOptions | ||
} | ||
declare module '@size-limit/esbuild/get-config' { | ||
import { BuildOptions } from 'esbuild' | ||
function getConfig( | ||
config: { | ||
configPath: string | ||
saveBundle: string | ||
}, | ||
check: { | ||
esbuild?: false | ||
config?: string | ||
esbuildConfig: BuildOptions | ||
esbuildOutfile: string | ||
modifyEsbuildConfig?(esbuildConfig: BuildOptions): BuildOptions | ||
}, | ||
esbuildOutfile: string, | ||
): Promise<BuildOptions> | ||
export = getConfig | ||
export const processImport: ( | ||
check: SizeLimitCheck, | ||
output: string, | ||
) => Promise<void> | ||
} |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
54
1
9456
7
80
+ Addedsize-limit@^10.0.2
+ Added@sindresorhus/merge-streams@2.3.0(transitive)
+ Addedglobby@14.0.2(transitive)
+ Addednanoid@5.0.7(transitive)
+ Addedpath-type@5.0.0(transitive)
+ Addedsize-limit@10.0.3(transitive)
+ Addedslash@5.1.0(transitive)
+ Addedunicorn-magic@0.1.0(transitive)
- Removed@size-limit/esbuild@^8.1.0
- Removed@esbuild/android-arm@0.18.20(transitive)
- Removed@esbuild/android-arm64@0.18.20(transitive)
- Removed@esbuild/android-x64@0.18.20(transitive)
- Removed@esbuild/darwin-arm64@0.18.20(transitive)
- Removed@esbuild/darwin-x64@0.18.20(transitive)
- Removed@esbuild/freebsd-arm64@0.18.20(transitive)
- Removed@esbuild/freebsd-x64@0.18.20(transitive)
- Removed@esbuild/linux-arm@0.18.20(transitive)
- Removed@esbuild/linux-arm64@0.18.20(transitive)
- Removed@esbuild/linux-ia32@0.18.20(transitive)
- Removed@esbuild/linux-loong64@0.18.20(transitive)
- Removed@esbuild/linux-mips64el@0.18.20(transitive)
- Removed@esbuild/linux-ppc64@0.18.20(transitive)
- Removed@esbuild/linux-riscv64@0.18.20(transitive)
- Removed@esbuild/linux-s390x@0.18.20(transitive)
- Removed@esbuild/linux-x64@0.18.20(transitive)
- Removed@esbuild/netbsd-x64@0.18.20(transitive)
- Removed@esbuild/openbsd-x64@0.18.20(transitive)
- Removed@esbuild/sunos-x64@0.18.20(transitive)
- Removed@esbuild/win32-arm64@0.18.20(transitive)
- Removed@esbuild/win32-ia32@0.18.20(transitive)
- Removed@esbuild/win32-x64@0.18.20(transitive)
- Removed@size-limit/esbuild@8.2.6(transitive)
- Removedarray-union@2.1.0(transitive)
- Removeddir-glob@3.0.1(transitive)
- Removedesbuild@0.18.20(transitive)
- Removedglobby@11.1.0(transitive)
- Removednanoid@3.3.7(transitive)
- Removedpath-type@4.0.0(transitive)
- Removedsize-limit@8.2.6(transitive)
- Removedslash@3.0.0(transitive)
Updatednanoid@^5.0.3
Updatedtslib@^2.6.2