jiek 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (106) hide show
  1. package/bin/jiek-dev.js +4 -0
  2. package/bin/jiek.js +2 -0
  3. package/dist/commands/build.esm.js +68 -0
  4. package/dist/commands/build.esm.js.map +1 -0
  5. package/dist/commands/build.esm.min.js +2 -0
  6. package/dist/commands/build.esm.min.js.map +1 -0
  7. package/dist/commands/publish.esm.js +60 -0
  8. package/dist/commands/publish.esm.js.map +1 -0
  9. package/dist/commands/publish.esm.min.js +2 -0
  10. package/dist/commands/publish.esm.min.js.map +1 -0
  11. package/dist/index.d.ts +2 -0
  12. package/dist/index.esm.d.ts +2 -0
  13. package/dist/index.esm.js +6 -0
  14. package/dist/index.esm.js.map +1 -0
  15. package/dist/index.esm.min.js +2 -0
  16. package/dist/index.esm.min.js.map +1 -0
  17. package/dist/index.iife.js +155 -0
  18. package/dist/index.iife.js.map +1 -0
  19. package/dist/index.iife.min.js +2 -0
  20. package/dist/index.iife.min.js.map +1 -0
  21. package/dist/index.umd.js +158 -0
  22. package/dist/index.umd.js.map +1 -0
  23. package/dist/index.umd.min.js +2 -0
  24. package/dist/index.umd.min.js.map +1 -0
  25. package/dist/inner.esm.js +10 -0
  26. package/dist/inner.esm.js.map +1 -0
  27. package/dist/inner.esm.min.js +2 -0
  28. package/dist/inner.esm.min.js.map +1 -0
  29. package/dist/merge-package-json.esm.js +16 -0
  30. package/dist/merge-package-json.esm.js.map +1 -0
  31. package/dist/merge-package-json.esm.min.js +2 -0
  32. package/dist/merge-package-json.esm.min.js.map +1 -0
  33. package/package.json +56 -0
  34. package/src/commands/build.ts +91 -0
  35. package/src/commands/publish.ts +79 -0
  36. package/src/index.ts +6 -0
  37. package/src/inner.ts +11 -0
  38. package/src/merge-package-json.ts +19 -0
  39. package/src/rollup/index.ts +162 -0
  40. package/src/rollup/plugins/globals.ts +34 -0
  41. package/src/rollup/plugins/skip.ts +23 -0
  42. package/src/rollup/utils/commonOptions.ts +9 -0
  43. package/src/rollup/utils/externalResolver.ts +11 -0
  44. package/src/rollup/utils/globalResolver.ts +24 -0
  45. package/src/rollup/utils/withMinify.ts +16 -0
  46. package/tests/build.spec.ts +28 -0
  47. package/tests/fixtures/node_modules/.bin/jiek +17 -0
  48. package/tests/fixtures/node_modules/.jiek/jiek+test-foo.rollup.config.js +31 -0
  49. package/tests/fixtures/node_modules/.modules.yaml +95 -0
  50. package/tests/fixtures/node_modules/.pnpm/@esbuild+darwin-arm64@0.20.2/node_modules/@esbuild/darwin-arm64/README.md +3 -0
  51. package/tests/fixtures/node_modules/.pnpm/@esbuild+darwin-arm64@0.20.2/node_modules/@esbuild/darwin-arm64/bin/esbuild +0 -0
  52. package/tests/fixtures/node_modules/.pnpm/@esbuild+darwin-arm64@0.20.2/node_modules/@esbuild/darwin-arm64/package.json +20 -0
  53. package/tests/fixtures/node_modules/.pnpm/@jiek+loader-esbuild@1.0.0_esbuild@0.20.2/node_modules/@jiek/loader-esbuild/LICENSE +21 -0
  54. package/tests/fixtures/node_modules/.pnpm/@jiek+loader-esbuild@1.0.0_esbuild@0.20.2/node_modules/@jiek/loader-esbuild/loader.js +3 -0
  55. package/tests/fixtures/node_modules/.pnpm/@jiek+loader-esbuild@1.0.0_esbuild@0.20.2/node_modules/@jiek/loader-esbuild/package.json +8 -0
  56. package/tests/fixtures/node_modules/.pnpm/debug@4.3.4/node_modules/debug/LICENSE +20 -0
  57. package/tests/fixtures/node_modules/.pnpm/debug@4.3.4/node_modules/debug/README.md +481 -0
  58. package/tests/fixtures/node_modules/.pnpm/debug@4.3.4/node_modules/debug/package.json +59 -0
  59. package/tests/fixtures/node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/browser.js +269 -0
  60. package/tests/fixtures/node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/common.js +274 -0
  61. package/tests/fixtures/node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/index.js +10 -0
  62. package/tests/fixtures/node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/node.js +263 -0
  63. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/LICENSE +21 -0
  64. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/README.md +50 -0
  65. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/dist/loader.d.ts +3 -0
  66. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/dist/loader.js +15 -0
  67. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/dist/node.d.ts +23 -0
  68. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/dist/node.js +4926 -0
  69. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/loader.js +1 -0
  70. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/node_modules/.bin/esbuild +14 -0
  71. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/package.json +46 -0
  72. package/tests/fixtures/node_modules/.pnpm/esbuild-register@3.5.0_esbuild@0.20.2/node_modules/esbuild-register/register.js +3 -0
  73. package/tests/fixtures/node_modules/.pnpm/esbuild@0.20.2/node_modules/esbuild/LICENSE.md +21 -0
  74. package/tests/fixtures/node_modules/.pnpm/esbuild@0.20.2/node_modules/esbuild/README.md +3 -0
  75. package/tests/fixtures/node_modules/.pnpm/esbuild@0.20.2/node_modules/esbuild/bin/esbuild +0 -0
  76. package/tests/fixtures/node_modules/.pnpm/esbuild@0.20.2/node_modules/esbuild/install.js +288 -0
  77. package/tests/fixtures/node_modules/.pnpm/esbuild@0.20.2/node_modules/esbuild/lib/main.d.ts +703 -0
  78. package/tests/fixtures/node_modules/.pnpm/esbuild@0.20.2/node_modules/esbuild/lib/main.js +2436 -0
  79. package/tests/fixtures/node_modules/.pnpm/esbuild@0.20.2/node_modules/esbuild/node_modules/.bin/esbuild +14 -0
  80. package/tests/fixtures/node_modules/.pnpm/esbuild@0.20.2/node_modules/esbuild/package.json +46 -0
  81. package/tests/fixtures/node_modules/.pnpm/lock.yaml +291 -0
  82. package/tests/fixtures/node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js +162 -0
  83. package/tests/fixtures/node_modules/.pnpm/ms@2.1.2/node_modules/ms/license.md +21 -0
  84. package/tests/fixtures/node_modules/.pnpm/ms@2.1.2/node_modules/ms/package.json +37 -0
  85. package/tests/fixtures/node_modules/.pnpm/ms@2.1.2/node_modules/ms/readme.md +60 -0
  86. package/tests/fixtures/node_modules/.pnpm/node_modules/.bin/esbuild +14 -0
  87. package/tests/fixtures/package.json +8 -0
  88. package/tests/fixtures/packages/bar/package.json +4 -0
  89. package/tests/fixtures/packages/foo/dist/index.d.ts +3 -0
  90. package/tests/fixtures/packages/foo/dist/index.esm.d.ts +3 -0
  91. package/tests/fixtures/packages/foo/dist/index.esm.js +6 -0
  92. package/tests/fixtures/packages/foo/dist/index.esm.js.map +1 -0
  93. package/tests/fixtures/packages/foo/dist/index.esm.min.js +2 -0
  94. package/tests/fixtures/packages/foo/dist/index.esm.min.js.map +1 -0
  95. package/tests/fixtures/packages/foo/dist/index.iife.js +15 -0
  96. package/tests/fixtures/packages/foo/dist/index.iife.js.map +1 -0
  97. package/tests/fixtures/packages/foo/dist/index.iife.min.js +2 -0
  98. package/tests/fixtures/packages/foo/dist/index.iife.min.js.map +1 -0
  99. package/tests/fixtures/packages/foo/dist/index.umd.js +16 -0
  100. package/tests/fixtures/packages/foo/dist/index.umd.js.map +1 -0
  101. package/tests/fixtures/packages/foo/dist/index.umd.min.js +2 -0
  102. package/tests/fixtures/packages/foo/dist/index.umd.min.js.map +1 -0
  103. package/tests/fixtures/packages/foo/package.json +7 -0
  104. package/tests/fixtures/packages/foo/src/index.ts +3 -0
  105. package/tests/fixtures/pnpm-workspace.yaml +2 -0
  106. package/tests/publish.spec.ts +31 -0
@@ -0,0 +1,162 @@
1
+ import { resolve } from 'node:path'
2
+
3
+ import { getWorkspaceDir } from '@jiek/utils/getWorkspaceDir'
4
+ import autoprefixer from 'autoprefixer'
5
+ import type { InputPluginOption, RollupOptions } from 'rollup'
6
+ import { dts } from 'rollup-plugin-dts'
7
+ import esbuild from 'rollup-plugin-esbuild'
8
+ import postcss from 'rollup-plugin-postcss'
9
+
10
+ import { createGlobalsLinkage } from './plugins/globals'
11
+ import skip from './plugins/skip'
12
+ import { commonOutputOptions } from './utils/commonOptions'
13
+ import externalResolver from './utils/externalResolver'
14
+ import withMinify from './utils/withMinify'
15
+
16
+ const workspaceRoot = getWorkspaceDir()
17
+ function resolveWorkspacePath(p: string) {
18
+ return resolve(workspaceRoot, p)
19
+ }
20
+
21
+ export const template = (
22
+ {
23
+ styled = false,
24
+ plugins: {
25
+ index: indexPlugins = [],
26
+ entry: entryPlugins = [],
27
+ dts: dtsPlugins = []
28
+ } = {}
29
+ }: {
30
+ /**
31
+ * include styles files
32
+ */
33
+ styled?: boolean
34
+ plugins?: {
35
+ index?: InputPluginOption
36
+ entry?: InputPluginOption
37
+ dts?: InputPluginOption
38
+ }
39
+ } = {},
40
+ pkg: {
41
+ name?: string
42
+ exports?: Record<string, string | {
43
+ import: string
44
+ 'inner-src': string
45
+ }>
46
+ }
47
+ ) => {
48
+ if (!pkg.name) {
49
+ throw new Error('pkg.name is required')
50
+ }
51
+ const namePrefix = pkg
52
+ .name
53
+ .replace(/[@|/-](\w)/g, (_, $1) => $1.toUpperCase())
54
+ const exportsEntries = Object.fromEntries(
55
+ Object.entries(pkg.exports ?? {})
56
+ // filter static files
57
+ .filter(([key]) => !/\.(json|css|scss)$/.test(key))
58
+ // filter no `inner-src` or `import` field entries
59
+ .filter(([, value]) => typeof value === 'object' && value['inner-src'] && value['import'])
60
+ .map(([key, value]) => [
61
+ key
62
+ .replace(/^\.$/, 'index')
63
+ .replace(/^\.\//, ''),
64
+ typeof value === 'string' ? value : value['inner-src']
65
+ ])
66
+ )
67
+
68
+ const [globalsRegister, globalsOutput] = createGlobalsLinkage()
69
+ const external = externalResolver()
70
+
71
+ return [
72
+ {
73
+ input: exportsEntries,
74
+ output: [
75
+ ...withMinify({
76
+ ...commonOutputOptions,
77
+ format: 'esm',
78
+ entryFileNames: '[name].esm.js',
79
+ preserveModules: true
80
+ })
81
+ ],
82
+ plugins: [
83
+ globalsRegister({ external }),
84
+ styled && skip({ patterns: [/\.s?css$/] }),
85
+ esbuild(),
86
+ indexPlugins
87
+ ]
88
+ },
89
+ ...Object.entries(exportsEntries).map(([name, input]) => {
90
+ const outputName = namePrefix + (
91
+ name === 'index' ? '' : (
92
+ name[0].toUpperCase() + name.slice(1)
93
+ )
94
+ )
95
+ return {
96
+ input: input,
97
+ output: [
98
+ ...withMinify({
99
+ ...commonOutputOptions,
100
+ name: outputName,
101
+ format: 'iife',
102
+ entryFileNames: `${name}.iife.js`
103
+ }),
104
+ ...withMinify({
105
+ ...commonOutputOptions,
106
+ name: outputName,
107
+ format: 'umd',
108
+ entryFileNames: `${name}.umd.js`
109
+ })
110
+ ],
111
+ plugins: [
112
+ globalsOutput,
113
+ styled && postcss({
114
+ plugins: [autoprefixer],
115
+ minimize: true,
116
+ sourceMap: true,
117
+ extract: `${name}.css`
118
+ }),
119
+ esbuild(),
120
+ entryPlugins
121
+ ],
122
+ external
123
+ }
124
+ }),
125
+ {
126
+ input: exportsEntries,
127
+ output: [
128
+ {
129
+ dir: 'dist',
130
+ entryFileNames: ({ name }) => `${name.replace(/^src\//, '')}.esm.d.ts`,
131
+ preserveModules: true
132
+ },
133
+ {
134
+ dir: 'dist'
135
+ }
136
+ ],
137
+ plugins: [
138
+ styled && skip({ patterns: [/\.s?css$/] }),
139
+ dts({ tsconfig: resolveWorkspacePath('tsconfig.dts.json') }),
140
+ {
141
+ name: 'rollup-plugin-declare-module-replacer',
142
+ /**
143
+ * replace relative path `declare module './xxx'` to `declare module '{{package name}}'`
144
+ * in output file generated
145
+ */
146
+ generateBundle(_, bundle) {
147
+ for (const file of Object.values(bundle)) {
148
+ if (!('code' in file)) continue
149
+
150
+ file.code = file.code.replace(
151
+ /declare module ['|"]\..*['|"]/g,
152
+ `declare module '${pkg.name}'`
153
+ )
154
+ }
155
+ }
156
+ },
157
+ dtsPlugins
158
+ ],
159
+ external
160
+ }
161
+ ] as RollupOptions[]
162
+ }
@@ -0,0 +1,34 @@
1
+ import type { Plugin, PluginImpl } from 'rollup'
2
+
3
+ import globalResolver from '../utils/globalResolver'
4
+
5
+ interface GlobalsOptions {
6
+ external?: (string | RegExp)[]
7
+ }
8
+
9
+ export function createGlobalsLinkage() {
10
+ let globals = {}
11
+ const dependencies = new Set<string>([])
12
+ return [
13
+ (({ external } = {}) => {
14
+ return {
15
+ name: 'globals',
16
+ resolveId(id) {
17
+ if (external?.some(dep => dep instanceof RegExp ? dep.test(id) : dep === id)) {
18
+ dependencies.add(id)
19
+ return { id, external: true }
20
+ }
21
+ return null
22
+ },
23
+ outputOptions(options) {
24
+ globals = [...dependencies].reduce((acc, value) => ({
25
+ ...acc,
26
+ [value]: globalResolver(value)
27
+ }), {})
28
+ return { ...options, globals }
29
+ }
30
+ }
31
+ }) as PluginImpl<GlobalsOptions>,
32
+ { outputOptions: options => ({ ...options, globals }) } as Plugin
33
+ ] as const
34
+ }
@@ -0,0 +1,23 @@
1
+ import type { PluginImpl } from 'rollup'
2
+
3
+ interface Options {
4
+ patterns?: (string | RegExp)[]
5
+ }
6
+
7
+ export default ((options = {}) => {
8
+ return {
9
+ name: 'skip',
10
+ // skip the specified files by `options.patterns`
11
+ load(id) {
12
+ if (
13
+ options.patterns?.some((pattern) =>
14
+ typeof pattern === 'string'
15
+ ? id.includes(pattern)
16
+ : pattern.test(id)
17
+ )
18
+ ) {
19
+ return ''
20
+ }
21
+ }
22
+ }
23
+ }) as PluginImpl<Options>
@@ -0,0 +1,9 @@
1
+ import type { OutputOptions } from 'rollup'
2
+
3
+ const defineOutput = <O extends OutputOptions>(output: O) => output
4
+
5
+ export const commonOutputOptions = defineOutput({
6
+ dir: 'dist',
7
+ exports: 'named',
8
+ sourcemap: true
9
+ })
@@ -0,0 +1,11 @@
1
+ export default function () {
2
+ const cwd = process.cwd()
3
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
4
+ const pkg = require(`${cwd}/package.json`)
5
+ const { dependencies = {}, peerDependencies = {} } = pkg
6
+ const external = <(string | RegExp)[]>Object
7
+ .keys(dependencies)
8
+ .concat(Object.keys(peerDependencies))
9
+ return external
10
+ .map(dep => new RegExp(`^${dep}(/.*)?$`))
11
+ }
@@ -0,0 +1,24 @@
1
+ export default function (external: string) {
2
+ if (external.startsWith('@zodui/')) {
3
+ return external
4
+ .replace(/[@/-](\w)/g, (_, c) => c.toUpperCase())
5
+ }
6
+ return {
7
+ react: 'React',
8
+ // TODO `react/jsx-runtime` is not supported `umd`
9
+ 'react/jsx-runtime': 'ReactJSXRuntime',
10
+ // https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.development.js
11
+ 'react-dom': 'ReactDOM',
12
+ // https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.development.js
13
+ // TODO make the library use the global variable `TDesignReact` replace `TDesign`
14
+ 'tdesign-react/esm': 'TDesign',
15
+ // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.js
16
+ // https://cdn.jsdelivr.net/npm/tdesign-react@1.4.0/dist/tdesign.css
17
+ 'tdesign-icons-react': 'TDesignIconReact',
18
+ // https://cdn.jsdelivr.net/npm/tdesign-icons-react@1.4.0/dist/index.js
19
+ zod: 'Zod',
20
+ '@zodui/core': 'ZodUICore',
21
+ '@zodui/core/utils': 'ZodUICoreUtils',
22
+ '@zodui/react': 'ZodUIReact'
23
+ }[external]
24
+ }
@@ -0,0 +1,16 @@
1
+ import terser from '@rollup/plugin-terser'
2
+ import type { OutputOptions, OutputPlugin } from 'rollup'
3
+
4
+ export default function (output: OutputOptions & {
5
+ entryFileNames?: string
6
+ plugins?: OutputPlugin[]
7
+ }): OutputOptions[] {
8
+ return [
9
+ output,
10
+ {
11
+ ...output,
12
+ entryFileNames: output.entryFileNames?.replace(/(\.js)$/, '.min$1'),
13
+ plugins: [...(output.plugins ?? []), terser()]
14
+ }
15
+ ]
16
+ }
@@ -0,0 +1,28 @@
1
+ import '../src/commands/build'
2
+
3
+ import path from 'node:path'
4
+
5
+ import * as childProcess from 'child_process'
6
+ import { program } from 'commander'
7
+ import { beforeAll, describe, test } from 'vitest'
8
+
9
+ import { actionFuture } from '../src/inner'
10
+
11
+ const ROOT = path.resolve(__dirname, 'fixtures')
12
+
13
+ beforeAll(() => {
14
+ childProcess.execSync('pnpm i', {
15
+ cwd: ROOT,
16
+ stdio: 'inherit'
17
+ })
18
+ })
19
+
20
+ const prefixes = ['node', 'jiek', 'build', '--root', ROOT]
21
+ describe('build', () => {
22
+ test('base', () => {
23
+ process.env.WORKSPACE_DIR = ROOT
24
+ process.argv = [...prefixes, '--filter', 'test-foo']
25
+ program.parse(process.argv)
26
+ return actionFuture
27
+ })
28
+ })
@@ -0,0 +1,17 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
6
+ esac
7
+
8
+ if [ -z "$NODE_PATH" ]; then
9
+ export NODE_PATH="/Users/yijie/codes/projects/jiek/packages/jiek/bin/node_modules:/Users/yijie/codes/projects/jiek/packages/jiek/node_modules:/Users/yijie/codes/projects/jiek/packages/node_modules:/Users/yijie/codes/projects/jiek/node_modules:/Users/yijie/codes/projects/node_modules:/Users/yijie/codes/node_modules:/Users/yijie/node_modules:/Users/node_modules:/node_modules:/Users/yijie/codes/projects/jiek/packages/jiek/tests/fixtures/node_modules/.pnpm/node_modules"
10
+ else
11
+ export NODE_PATH="/Users/yijie/codes/projects/jiek/packages/jiek/bin/node_modules:/Users/yijie/codes/projects/jiek/packages/jiek/node_modules:/Users/yijie/codes/projects/jiek/packages/node_modules:/Users/yijie/codes/projects/jiek/node_modules:/Users/yijie/codes/projects/node_modules:/Users/yijie/codes/node_modules:/Users/yijie/node_modules:/Users/node_modules:/node_modules:/Users/yijie/codes/projects/jiek/packages/jiek/tests/fixtures/node_modules/.pnpm/node_modules:$NODE_PATH"
12
+ fi
13
+ if [ -x "$basedir/node" ]; then
14
+ exec "$basedir/node" "$basedir/../jiek/bin/jiek.js" "$@"
15
+ else
16
+ exec node "$basedir/../jiek/bin/jiek.js" "$@"
17
+ fi
@@ -0,0 +1,31 @@
1
+ // import { template } from 'jiek/src/rollup'
2
+ module.exports = require('jiek/src/rollup/index.ts').template({ }, {
3
+ "name": "@jiek/test-foo",
4
+ "version": "0.1.2",
5
+ "dependencies": {
6
+ "@jiek/test-bar": "workspace:^*"
7
+ },
8
+ "types": "dist/index.d.ts",
9
+ "main": "dist/index.umd.js",
10
+ "module": "dist/index.esm.js",
11
+ "unpkg": "dist/index.umd.min.js",
12
+ "jsdelivr": "dist/index.umd.min.js",
13
+ "browser": "dist/index.umd.min.js",
14
+ "typesVersions": {
15
+ "<5.0": [
16
+ "*",
17
+ "dist/*",
18
+ "dist/*/index.esm.d.ts"
19
+ ]
20
+ },
21
+ "exports": {
22
+ "package.json": "package.json",
23
+ ".": {
24
+ "types": "dist/index.d.ts",
25
+ "import": "dist/index.esm.js",
26
+ "default": "dist/index.esm.js",
27
+ "require": "dist/index.umd.js",
28
+ "inner-src": "src/index.ts"
29
+ }
30
+ }
31
+ })
@@ -0,0 +1,95 @@
1
+ hoistPattern:
2
+ - '*'
3
+ hoistedDependencies:
4
+ /@esbuild/aix-ppc64/0.20.2:
5
+ '@esbuild/aix-ppc64': private
6
+ /@esbuild/android-arm/0.20.2:
7
+ '@esbuild/android-arm': private
8
+ /@esbuild/android-arm64/0.20.2:
9
+ '@esbuild/android-arm64': private
10
+ /@esbuild/android-x64/0.20.2:
11
+ '@esbuild/android-x64': private
12
+ /@esbuild/darwin-arm64/0.20.2:
13
+ '@esbuild/darwin-arm64': private
14
+ /@esbuild/darwin-x64/0.20.2:
15
+ '@esbuild/darwin-x64': private
16
+ /@esbuild/freebsd-arm64/0.20.2:
17
+ '@esbuild/freebsd-arm64': private
18
+ /@esbuild/freebsd-x64/0.20.2:
19
+ '@esbuild/freebsd-x64': private
20
+ /@esbuild/linux-arm/0.20.2:
21
+ '@esbuild/linux-arm': private
22
+ /@esbuild/linux-arm64/0.20.2:
23
+ '@esbuild/linux-arm64': private
24
+ /@esbuild/linux-ia32/0.20.2:
25
+ '@esbuild/linux-ia32': private
26
+ /@esbuild/linux-loong64/0.20.2:
27
+ '@esbuild/linux-loong64': private
28
+ /@esbuild/linux-mips64el/0.20.2:
29
+ '@esbuild/linux-mips64el': private
30
+ /@esbuild/linux-ppc64/0.20.2:
31
+ '@esbuild/linux-ppc64': private
32
+ /@esbuild/linux-riscv64/0.20.2:
33
+ '@esbuild/linux-riscv64': private
34
+ /@esbuild/linux-s390x/0.20.2:
35
+ '@esbuild/linux-s390x': private
36
+ /@esbuild/linux-x64/0.20.2:
37
+ '@esbuild/linux-x64': private
38
+ /@esbuild/netbsd-x64/0.20.2:
39
+ '@esbuild/netbsd-x64': private
40
+ /@esbuild/openbsd-x64/0.20.2:
41
+ '@esbuild/openbsd-x64': private
42
+ /@esbuild/sunos-x64/0.20.2:
43
+ '@esbuild/sunos-x64': private
44
+ /@esbuild/win32-arm64/0.20.2:
45
+ '@esbuild/win32-arm64': private
46
+ /@esbuild/win32-ia32/0.20.2:
47
+ '@esbuild/win32-ia32': private
48
+ /@esbuild/win32-x64/0.20.2:
49
+ '@esbuild/win32-x64': private
50
+ /debug/4.3.4:
51
+ debug: private
52
+ /esbuild/0.20.2:
53
+ esbuild: private
54
+ /ms/2.1.2:
55
+ ms: private
56
+ included:
57
+ dependencies: true
58
+ devDependencies: true
59
+ optionalDependencies: true
60
+ injectedDeps: {}
61
+ layoutVersion: 5
62
+ nodeLinker: isolated
63
+ packageManager: pnpm@8.12.1
64
+ pendingBuilds: []
65
+ prunedAt: Sun, 31 Mar 2024 13:55:30 GMT
66
+ publicHoistPattern:
67
+ - '*eslint*'
68
+ - '*prettier*'
69
+ registries:
70
+ default: https://registry.npmjs.org/
71
+ skipped:
72
+ - /@esbuild/aix-ppc64/0.20.2
73
+ - /@esbuild/android-arm/0.20.2
74
+ - /@esbuild/android-arm64/0.20.2
75
+ - /@esbuild/android-x64/0.20.2
76
+ - /@esbuild/darwin-x64/0.20.2
77
+ - /@esbuild/freebsd-arm64/0.20.2
78
+ - /@esbuild/freebsd-x64/0.20.2
79
+ - /@esbuild/linux-arm/0.20.2
80
+ - /@esbuild/linux-arm64/0.20.2
81
+ - /@esbuild/linux-ia32/0.20.2
82
+ - /@esbuild/linux-loong64/0.20.2
83
+ - /@esbuild/linux-mips64el/0.20.2
84
+ - /@esbuild/linux-ppc64/0.20.2
85
+ - /@esbuild/linux-riscv64/0.20.2
86
+ - /@esbuild/linux-s390x/0.20.2
87
+ - /@esbuild/linux-x64/0.20.2
88
+ - /@esbuild/netbsd-x64/0.20.2
89
+ - /@esbuild/openbsd-x64/0.20.2
90
+ - /@esbuild/sunos-x64/0.20.2
91
+ - /@esbuild/win32-arm64/0.20.2
92
+ - /@esbuild/win32-ia32/0.20.2
93
+ - /@esbuild/win32-x64/0.20.2
94
+ storeDir: /Users/yijie/Library/pnpm/store/v3
95
+ virtualStoreDir: .pnpm
@@ -0,0 +1,3 @@
1
+ # esbuild
2
+
3
+ This is the macOS ARM 64-bit binary for esbuild, a JavaScript bundler and minifier. See https://github.com/evanw/esbuild for details.
@@ -0,0 +1,20 @@
1
+ {
2
+ "name": "@esbuild/darwin-arm64",
3
+ "version": "0.20.2",
4
+ "description": "The macOS ARM 64-bit binary for esbuild, a JavaScript bundler.",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "git+https://github.com/evanw/esbuild.git"
8
+ },
9
+ "license": "MIT",
10
+ "preferUnplugged": true,
11
+ "engines": {
12
+ "node": ">=12"
13
+ },
14
+ "os": [
15
+ "darwin"
16
+ ],
17
+ "cpu": [
18
+ "arm64"
19
+ ]
20
+ }
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023-present Typp
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,3 @@
1
+ import { register } from 'node:module'
2
+
3
+ register('esbuild-register/loader')
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "@jiek/loader-esbuild",
3
+ "version": "1.0.0",
4
+ "module": "index.js",
5
+ "dependencies": {
6
+ "esbuild-register": "^3.5.0"
7
+ }
8
+ }
@@ -0,0 +1,20 @@
1
+ (The MIT License)
2
+
3
+ Copyright (c) 2014-2017 TJ Holowaychuk <tj@vision-media.ca>
4
+ Copyright (c) 2018-2021 Josh Junon
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
7
+ and associated documentation files (the 'Software'), to deal in the Software without restriction,
8
+ including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
9
+ and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
10
+ subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all copies or substantial
13
+ portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
16
+ LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
18
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
19
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20
+