@visulima/packem 2.0.0-alpha.4 → 2.0.0-alpha.43

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.
Files changed (85) hide show
  1. package/CHANGELOG.md +480 -1
  2. package/LICENSE.md +6393 -1445
  3. package/README.md +16 -12
  4. package/dist/builder/typedoc/index.d.ts +3 -26
  5. package/dist/builder/typedoc/index.js +160 -3
  6. package/dist/cli/index.d.ts +1 -0
  7. package/dist/cli/index.js +1379 -43
  8. package/dist/config/index.d.ts +48 -28
  9. package/dist/config/index.js +4 -1
  10. package/dist/config/preset/react.d.ts +59 -0
  11. package/dist/config/preset/react.js +43 -0
  12. package/dist/config/preset/solid.d.ts +101 -0
  13. package/dist/config/preset/solid.js +72 -0
  14. package/dist/config/preset/svelte.d.ts +71 -0
  15. package/dist/config/preset/svelte.js +44 -0
  16. package/dist/config/preset/vue.d.ts +53 -0
  17. package/dist/config/preset/vue.js +33 -0
  18. package/dist/index.d.ts +45 -32
  19. package/dist/index.js +30 -1
  20. package/dist/packem/node10-compatibility.d.ts +7 -0
  21. package/dist/packem_shared/create-or-update-key-storage-Dd7b8-t1.js +36 -0
  22. package/dist/packem_shared/default-79SPobLI.js +12 -0
  23. package/dist/packem_shared/default-DWBYeUSC.js +210 -0
  24. package/dist/packem_shared/default-DaU6CQEi.js +28 -0
  25. package/dist/packem_shared/default-DavaZMwC.js +32 -0
  26. package/dist/packem_shared/default-DeYZ934H.js +32 -0
  27. package/dist/packem_shared/default-tUOOZ8w7.js +42 -0
  28. package/dist/packem_shared/default-wScAfTaq.js +27 -0
  29. package/dist/packem_shared/index-CTIRxV2x.js +63 -0
  30. package/dist/packem_shared/index-DzTDn4ad.js +9521 -0
  31. package/dist/rollup/plugins/css/loaders/less.d.ts +1 -1
  32. package/dist/rollup/plugins/css/loaders/less.js +1 -1
  33. package/dist/rollup/plugins/css/loaders/lightningcss.d.ts +1 -1
  34. package/dist/rollup/plugins/css/loaders/lightningcss.js +1 -1
  35. package/dist/rollup/plugins/css/loaders/postcss.d.ts +1 -1
  36. package/dist/rollup/plugins/css/loaders/postcss.js +1 -1
  37. package/dist/rollup/plugins/css/loaders/sass.d.ts +1 -1
  38. package/dist/rollup/plugins/css/loaders/sass.js +1 -1
  39. package/dist/rollup/plugins/css/loaders/sourcemap.d.ts +1 -8
  40. package/dist/rollup/plugins/css/loaders/sourcemap.js +1 -1
  41. package/dist/rollup/plugins/css/loaders/stylus.d.ts +1 -1
  42. package/dist/rollup/plugins/css/loaders/stylus.js +1 -1
  43. package/dist/rollup/plugins/css/loaders/tailwindcss.d.ts +1 -0
  44. package/dist/rollup/plugins/css/loaders/tailwindcss.js +1 -0
  45. package/dist/rollup/plugins/css/minifiers/cssnano.d.ts +1 -1
  46. package/dist/rollup/plugins/css/minifiers/cssnano.js +1 -1
  47. package/dist/rollup/plugins/css/minifiers/lightningcss.d.ts +1 -1
  48. package/dist/rollup/plugins/css/minifiers/lightningcss.js +1 -1
  49. package/dist/rollup/plugins/esbuild/index.d.ts +2 -24
  50. package/dist/rollup/plugins/esbuild/index.js +1 -1
  51. package/dist/rollup/plugins/oxc/isolated-declarations-oxc-transformer.d.ts +1 -25
  52. package/dist/rollup/plugins/oxc/isolated-declarations-oxc-transformer.js +1 -1
  53. package/dist/rollup/plugins/oxc/oxc-transformer.d.ts +2 -20
  54. package/dist/rollup/plugins/oxc/oxc-transformer.js +1 -1
  55. package/dist/rollup/plugins/resolve-externals-plugin.d.ts +60 -0
  56. package/dist/rollup/plugins/sucrase/index.d.ts +2 -19
  57. package/dist/rollup/plugins/sucrase/index.js +1 -1
  58. package/dist/rollup/plugins/swc/isolated-declarations-swc-transformer.d.ts +1 -20
  59. package/dist/rollup/plugins/swc/isolated-declarations-swc-transformer.js +1 -1
  60. package/dist/rollup/plugins/swc/swc-plugin.d.ts +2 -26
  61. package/dist/rollup/plugins/swc/swc-plugin.js +1 -1
  62. package/dist/rollup/plugins/typescript/isolated-declarations-typescript-transformer.d.ts +1 -24
  63. package/dist/rollup/plugins/typescript/isolated-declarations-typescript-transformer.js +1 -1
  64. package/dist/types.d.ts +329 -0
  65. package/files.d.ts +37 -0
  66. package/package.json +190 -29
  67. package/dist/packem_shared/browserslistToEsbuild-C0IWmbNe-C6xPL1oW.js +0 -1
  68. package/dist/packem_shared/create-or-update-key-storage-GwAIWW7R.js +0 -3
  69. package/dist/packem_shared/default-B6X7-Lx3.js +0 -1
  70. package/dist/packem_shared/default-B_dUKZ_J.js +0 -1
  71. package/dist/packem_shared/default-C3sdXf4G.js +0 -1
  72. package/dist/packem_shared/default-DR5Fia_R.js +0 -1
  73. package/dist/packem_shared/default-DqRcOUe1.js +0 -1
  74. package/dist/packem_shared/esbuildPlugin-BAwyhG6L-yty60jMl.js +0 -3
  75. package/dist/packem_shared/index-CUp9WuCG.js +0 -1
  76. package/dist/packem_shared/index-DySckW0r.d.ts +0 -5227
  77. package/dist/packem_shared/index-VKZ7e6tb.js +0 -138
  78. package/dist/packem_shared/isolatedDeclarationsOxcTransformer-WbfE6cGu-NeZOx2Y7.js +0 -1
  79. package/dist/packem_shared/isolatedDeclarationsSwcTransformer-Ch2AgtWC-B-0lOgFf.js +0 -1
  80. package/dist/packem_shared/isolatedDeclarationsTypescriptTransformer-DkuEkofo-Cwe3ODMG.js +0 -3
  81. package/dist/packem_shared/oxcResolvePlugin-BJpi-eSG-BsYx9cDO.js +0 -1
  82. package/dist/packem_shared/oxcTransformPlugin-DfVQouIB-Cpfv95eA.js +0 -4
  83. package/dist/packem_shared/resolveTypescriptMjsCtsPlugin-DcZrZTmM-BEkYWTsH.js +0 -6
  84. package/dist/packem_shared/swcPlugin-Boip4lWG-CwJ-HVJc.js +0 -1
  85. package/dist/packem_shared/types-CaBbG-vU.d.ts +0 -163
@@ -0,0 +1,329 @@
1
+ import type { CheckPackageOptions } from "@arethetypeswrong/core";
2
+ import type { IsolatedDeclarationsTransformer, PackemRollupOptions, TransformerFn, TransformerName } from "@visulima/packem-rollup";
3
+ import type { InternalOXCTransformPluginConfig } from "@visulima/packem-rollup/oxc";
4
+ import type { NativeModulesOptions } from "@visulima/packem-rollup/plugin/native-modules";
5
+ import type { BuildContext, BuildHooks, Environment, Format, Mode, Runtime } from "@visulima/packem-share/types";
6
+ import type { FileCache } from "@visulima/packem-share/utils";
7
+ import type { StyleOptions } from "@visulima/rollup-plugin-css";
8
+ import type { JitiOptions } from "jiti";
9
+ import type { Plugin } from "rollup";
10
+ import type { TypeDocOptions as BaseTypeDocumentOptions } from "typedoc";
11
+ import type { Node10CompatibilityOptions } from './packem/node10-compatibility.d.ts';
12
+ import type { ResolveExternalsPluginOptions } from './rollup/plugins/resolve-externals-plugin.d.ts';
13
+ type DeepPartial<T> = {
14
+ [P in keyof T]?: DeepPartial<T[P]>;
15
+ };
16
+ export interface AttwOptions extends CheckPackageOptions {
17
+ /**
18
+ * Ignore the scripts on pack
19
+ * @default false
20
+ */
21
+ ignoreScripts?: boolean;
22
+ /**
23
+ * The level of the check.
24
+ *
25
+ * The available levels are:
26
+ * - `error`: fails the build
27
+ * - `warn`: warns the build
28
+ * @default 'warn'
29
+ */
30
+ level?: "error" | "warn";
31
+ /**
32
+ * Specify the package manager to use for --pack
33
+ * Bun does not support --json option on the pack command, if you choose bun you will get a error.
34
+ * @default 'auto'
35
+ */
36
+ pm?: "pnpm" | "yarn" | "npm" | "bun" | "auto";
37
+ /**
38
+ * Profiles select a set of resolution modes to require/ignore. All are evaluated but failures outside
39
+ * of those required are ignored.
40
+ *
41
+ * The available profiles are:
42
+ * - `strict`: requires all resolutions
43
+ * - `node16`: ignores node10 resolution failures
44
+ * - `esmOnly`: ignores CJS resolution failures
45
+ * @default 'strict'
46
+ */
47
+ profile?: "strict" | "node16" | "esmOnly";
48
+ }
49
+ /**
50
+ * In addition to basic `entries`, `presets`, and `hooks`,
51
+ * there are also all the properties of `BuildOptions` except for BuildOption's `entries`.
52
+ */
53
+ export interface BuildConfig extends DeepPartial<Omit<BuildOptions, "entries">> {
54
+ entries?: (BuildEntry | string)[];
55
+ hooks?: Partial<BuildHooks<InternalBuildOptions>>;
56
+ preset?: BuildPreset | "none" | (NonNullable<unknown> & string);
57
+ }
58
+ export type BuildPreset = BuildConfig | (() => BuildConfig);
59
+ /**
60
+ * Function type for dynamic build configuration.
61
+ * Allows configuration to be generated based on environment and mode.
62
+ * @param environment The build environment (development/production)
63
+ * @param mode The build mode (build/watch)
64
+ * @returns Build configuration object or Promise resolving to one
65
+ * @public
66
+ */
67
+ export type BuildConfigFunction = (environment: Environment, mode: Mode) => BuildConfig | Promise<BuildConfig>;
68
+ export type BuildEntry = {
69
+ /** Whether to generate CommonJS output for this entry */
70
+ cjs?: boolean;
71
+ /** TypeScript declaration file generation mode */
72
+ declaration?: boolean | "compatible" | "node16";
73
+ /** Build environment for this entry */
74
+ environment?: Environment;
75
+ /** Whether to generate ESM output for this entry */
76
+ esm?: boolean;
77
+ /** Whether this entry should be marked as executable */
78
+ executable?: true;
79
+ /** Set of export keys to include for this entry */
80
+ exportKey?: Set<string>;
81
+ /** Alternative filename for the output file */
82
+ fileAlias?: string;
83
+ /** Input file path for this entry */
84
+ input: string;
85
+ /** Whether the input is a glob pattern */
86
+ isGlob?: boolean;
87
+ /** Name identifier for this entry */
88
+ name?: string;
89
+ /** Output directory for this entry */
90
+ outDir?: string;
91
+ /** Runtime environment for this entry */
92
+ runtime?: Runtime;
93
+ };
94
+ export type InferEntriesResult = {
95
+ /** Inferred build entries */
96
+ entries: BuildEntry[];
97
+ /** Warning messages from the inference process */
98
+ warnings: string[];
99
+ };
100
+ export interface BuildOptions {
101
+ /** Path alias mappings for module resolution */
102
+ alias: Record<string, string>;
103
+ /** Whether to analyze bundle size and dependencies */
104
+ analyze?: boolean;
105
+ /** Browser targets for transpilation (e.g., ['chrome 58', 'firefox 57']) */
106
+ browserTargets?: string[];
107
+ /** Custom builder functions for different build types */
108
+ builder?: Record<string, (context: BuildContext<BuildOptions>, cachePath: string | undefined, fileCache: FileCache, logged: boolean) => Promise<void>>;
109
+ /** Whether to enable CommonJS interop for ESM modules */
110
+ cjsInterop?: boolean;
111
+ /** Whether to clean the output directory before building */
112
+ clean: boolean;
113
+ /** Whether to enable debug mode with verbose logging */
114
+ debug: boolean;
115
+ /**
116
+ * `compatible` means "src/gather.ts" will generate "dist/index.d.mts", "dist/index.d.cts" and "dist/index.d.ts".
117
+ * `node16` means "src/gather.ts" will generate "dist/index.d.mts" and "dist/index.d.cts".
118
+ * `true` is equivalent to `compatible`.
119
+ * `false` will disable declaration generation.
120
+ * `undefined` will auto-detect based on "package.json". If "package.json" has "types" field, it will be `"compatible"`, otherwise `false`.
121
+ */
122
+ declaration?: boolean | "compatible" | "node16" | undefined;
123
+ /**
124
+ * If `true`, only generate declaration files.
125
+ * If `false` or `undefined`, generate both declaration and source files.
126
+ */
127
+ dtsOnly?: boolean;
128
+ /** Whether to emit CommonJS output */
129
+ emitCJS?: boolean;
130
+ /** Whether to emit ESM output */
131
+ emitESM?: boolean;
132
+ /** Build entry points */
133
+ entries: BuildEntry[];
134
+ /** Experimental features configuration */
135
+ experimental?: {
136
+ /**
137
+ * If `true`, the `oxc resolve` plugin will be used instead of the default `@rollup/plugin-node-resolve` and `@rollup/plugin-alias`.
138
+ */
139
+ oxcResolve?: boolean;
140
+ };
141
+ /** External dependencies that should not be bundled */
142
+ externals: (RegExp | string)[];
143
+ /** Whether to fail the build on warnings */
144
+ failOnWarn?: boolean;
145
+ /** Whether to enable file caching for faster rebuilds */
146
+ fileCache?: boolean;
147
+ /**
148
+ * Array of export keys to ignore during entry inference.
149
+ * Useful for excluding exports that only contain images or other non-JavaScript assets.
150
+ * @example ["images", "assets", "icons"]
151
+ */
152
+ ignoreExportKeys?: string[];
153
+ /**
154
+ * Isolated declaration transformer for TypeScript declaration generation
155
+ * @experimental
156
+ */
157
+ isolatedDeclarationTransformer?: IsolatedDeclarationsTransformer;
158
+ /**
159
+ * Jiti options, where [jiti](https://github.com/unjs/jiti) is used to load the entry files.
160
+ * @default { alias: {}, debug: false, interopDefault: true }
161
+ */
162
+ jiti: Omit<JitiOptions & {
163
+ absoluteJitiPath?: boolean;
164
+ }, "onError" | "transform">;
165
+ /** Signal to use when killing child processes */
166
+ killSignal?: KillSignal;
167
+ /** Whether to minify the output */
168
+ minify?: boolean | undefined;
169
+ /** Name of the build */
170
+ name: string;
171
+ /** Node.js 10 compatibility options */
172
+ node10Compatibility?: Node10CompatibilityOptions | false;
173
+ /** Command to run or function to execute after successful build */
174
+ onSuccess?: string | (() => Promise<(() => Promise<void> | void) | undefined | void>);
175
+ /** Timeout for the onSuccess command in milliseconds */
176
+ onSuccessTimeout?: number;
177
+ /** Output directory for build artifacts */
178
+ outDir: string;
179
+ /** Custom file extensions for different output formats */
180
+ outputExtensionMap?: Record<Format, string>;
181
+ /** Rollup-specific build options */
182
+ rollup: RollupBuildOptions;
183
+ /** Root directory of the project */
184
+ rootDir: string;
185
+ /** Target runtime environment */
186
+ runtime?: "browser" | "node";
187
+ /** Source directory containing the source files */
188
+ sourceDir: string;
189
+ /** Whether to generate source maps */
190
+ sourcemap: boolean;
191
+ /** Transformer function for processing source files */
192
+ transformer: TransformerFn;
193
+ /** TypeDoc configuration for generating documentation */
194
+ typedoc: TypeDocumentOptions | false;
195
+ /**
196
+ * If `true`, enables unbundle mode which preserves the source file structure.
197
+ * Instead of bundling everything into a single file, each module is output as a separate file
198
+ * maintaining the original directory structure.
199
+ * @default false
200
+ * @example
201
+ * ```typescript
202
+ * // With unbundle: true
203
+ * // src/index.ts exports from './a/indexA', '.d.ts';
204
+ * // Output: dist/index.js, dist/a/indexA.js, dist/b/indexB.js
205
+ * ```
206
+ */
207
+ unbundle?: boolean;
208
+ /** Validation options for the build */
209
+ validation?: ValidationOptions | false;
210
+ }
211
+ export interface InternalBuildOptions extends BuildOptions {
212
+ /** Rollup options with internal OXC configuration */
213
+ rollup: BuildOptions["rollup"] & {
214
+ nativeModules?: NativeModulesOptions | false;
215
+ oxc?: InternalOXCTransformPluginConfig;
216
+ };
217
+ /** Name of the transformer being used */
218
+ transformerName: TransformerName | undefined;
219
+ }
220
+ /** Valid kill signals for terminating child processes */
221
+ export type KillSignal = "SIGKILL" | "SIGTERM";
222
+ export interface RollupBuildOptions extends PackemRollupOptions {
223
+ /** CSS processing options or false to disable */
224
+ css?: StyleOptions | false;
225
+ /** External dependency resolution plugin options */
226
+ resolveExternals?: ResolveExternalsPluginOptions;
227
+ }
228
+ export type RollupPlugins = {
229
+ /** Plugin enforcement order ('pre' or 'post') */
230
+ enforce?: "post" | "pre";
231
+ /** The Rollup plugin instance */
232
+ plugin: Plugin;
233
+ /** Type of build this plugin applies to */
234
+ type?: "build" | "dts";
235
+ }[];
236
+ export type TypeDocumentOptions = Partial<Omit<BaseTypeDocumentOptions, "entryPoints" | "hideGenerator" | "out" | "preserveWatchOutput" | "watch">> & {
237
+ /**
238
+ * The format of the output.
239
+ * @default "html"
240
+ */
241
+ format?: "html" | "inline" | "json" | "markdown";
242
+ /**
243
+ * The name of the JSON file.
244
+ */
245
+ jsonFileName?: string;
246
+ /**
247
+ * A marker to replace the content within the file on the correct location.
248
+ * @default "TYPEDOC" This marker need to be placed in the readme &lt;!-- TYPEDOC -->&lt;!-- TYPEDOC -->
249
+ */
250
+ marker?: string;
251
+ /**
252
+ * The path of the output directory.
253
+ */
254
+ output?: string;
255
+ /**
256
+ * The path of the README file.
257
+ */
258
+ readmePath?: string;
259
+ };
260
+ export type ValidationOptions = {
261
+ /**
262
+ * Run `arethetypeswrong` after bundling.
263
+ * Requires `@arethetypeswrong/core` to be installed.
264
+ * @default false
265
+ * @see https://github.com/arethetypeswrong/arethetypeswrong.github.io
266
+ */
267
+ attw?: boolean | AttwOptions;
268
+ /** Bundle size validation options */
269
+ bundleLimit?: {
270
+ /** Allow the build to succeed even if limits are exceeded */
271
+ allowFail?: boolean;
272
+ /**
273
+ * Bundle size limit in bytes, or string with unit (e.g., "1MB", "500KB")
274
+ * @example
275
+ * - "1MB"
276
+ * - "500KB"
277
+ * - 1048576 // 1MB in bytes
278
+ */
279
+ limit?: number | `${number}${"B" | "GB" | "KB" | "MB" | "TB"}`;
280
+ /** Size limits for specific files or globs */
281
+ limits?: Record<string, number | `${number}${"B" | "GB" | "KB" | "MB" | "TB"}`>;
282
+ };
283
+ /** Dependency validation options */
284
+ dependencies: {
285
+ /** Hoisted dependency validation with exclusions */
286
+ hoisted: {
287
+ exclude: string[];
288
+ } | false;
289
+ /** Unused dependency validation with exclusions */
290
+ unused: {
291
+ exclude: string[];
292
+ } | false;
293
+ } | false;
294
+ /** Package.json validation options */
295
+ packageJson?: {
296
+ /** Allowed file extensions in exports field */
297
+ allowedExportExtensions?: string[];
298
+ /** Whether to validate the bin field */
299
+ bin?: boolean;
300
+ /** Whether to validate dependencies */
301
+ dependencies?: boolean;
302
+ /** Whether to validate the engines field */
303
+ engines?: boolean;
304
+ /** Whether to validate the exports field */
305
+ exports?: boolean;
306
+ /**
307
+ * Additional custom conditions to consider valid in exports field validation.
308
+ * These will be added to the standard and community conditions.
309
+ * @example ["custom", "my-bundler"]
310
+ */
311
+ extraConditions?: string[];
312
+ /** Whether to validate the files field */
313
+ files?: boolean;
314
+ /** Whether to validate the main field */
315
+ main?: boolean;
316
+ /** Whether to validate the module field */
317
+ module?: boolean;
318
+ /** Whether to validate the name field */
319
+ name?: boolean;
320
+ /** Whether to validate the sideEffects field */
321
+ sideEffects?: boolean;
322
+ /** Whether to validate the types field */
323
+ types?: boolean;
324
+ /** Whether to validate the typesVersions field */
325
+ typesVersions?: boolean;
326
+ };
327
+ };
328
+ export type { Environment, Format, Mode, Runtime } from "@visulima/packem-share/types";
329
+ export type { InjectOptions, StyleOptions } from "@visulima/rollup-plugin-css";
package/files.d.ts CHANGED
@@ -223,3 +223,40 @@ declare module "*?raw" {
223
223
 
224
224
  export default source;
225
225
  }
226
+
227
+ // Data URI plugin support
228
+ declare module "*?data-uri" {
229
+ const dataUri: string;
230
+
231
+ export default dataUri;
232
+ }
233
+
234
+ declare module "*?data-uri&encoding=css" {
235
+ const dataUri: string;
236
+
237
+ export default dataUri;
238
+ }
239
+
240
+ declare module "*?data-uri&encoding=tiny" {
241
+ const dataUri: string;
242
+
243
+ export default dataUri;
244
+ }
245
+
246
+ declare module "*?data-uri&srcset" {
247
+ const dataUri: string;
248
+
249
+ export default dataUri;
250
+ }
251
+
252
+ declare module "*?data-uri&encoding=css&srcset" {
253
+ const dataUri: string;
254
+
255
+ export default dataUri;
256
+ }
257
+
258
+ declare module "*?data-uri&encoding=tiny&srcset" {
259
+ const dataUri: string;
260
+
261
+ export default dataUri;
262
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visulima/packem",
3
- "version": "2.0.0-alpha.4",
3
+ "version": "2.0.0-alpha.43",
4
4
  "description": "A fast and modern bundler for Node.js and TypeScript.",
5
5
  "keywords": [
6
6
  "anolilab",
@@ -78,6 +78,22 @@
78
78
  "types": "./dist/config/index.d.ts",
79
79
  "default": "./dist/config/index.js"
80
80
  },
81
+ "./config/preset/react": {
82
+ "types": "./dist/config/preset/react.d.ts",
83
+ "default": "./dist/config/preset/react.js"
84
+ },
85
+ "./config/preset/solid": {
86
+ "types": "./dist/config/preset/solid.d.ts",
87
+ "default": "./dist/config/preset/solid.js"
88
+ },
89
+ "./config/preset/svelte": {
90
+ "types": "./dist/config/preset/svelte.d.ts",
91
+ "default": "./dist/config/preset/svelte.js"
92
+ },
93
+ "./config/preset/vue": {
94
+ "types": "./dist/config/preset/vue.d.ts",
95
+ "default": "./dist/config/preset/vue.js"
96
+ },
81
97
  "./css/loader/sourcemap": {
82
98
  "types": "./dist/rollup/plugins/css/loaders/sourcemap.d.ts",
83
99
  "default": "./dist/rollup/plugins/css/loaders/sourcemap.js"
@@ -102,6 +118,10 @@
102
118
  "types": "./dist/rollup/plugins/css/loaders/lightningcss.d.ts",
103
119
  "default": "./dist/rollup/plugins/css/loaders/lightningcss.js"
104
120
  },
121
+ "./css/loader/tailwindcss": {
122
+ "types": "./dist/rollup/plugins/css/loaders/tailwindcss.d.ts",
123
+ "default": "./dist/rollup/plugins/css/loaders/tailwindcss.js"
124
+ },
105
125
  "./css/minifier/cssnano": {
106
126
  "types": "./dist/rollup/plugins/css/minifiers/cssnano.d.ts",
107
127
  "default": "./dist/rollup/plugins/css/minifiers/cssnano.js"
@@ -110,14 +130,6 @@
110
130
  "types": "./dist/rollup/plugins/css/minifiers/lightningcss.d.ts",
111
131
  "default": "./dist/rollup/plugins/css/minifiers/lightningcss.js"
112
132
  },
113
- "./transformer/esbuild": {
114
- "types": "./dist/rollup/plugins/esbuild/index.d.ts",
115
- "default": "./dist/rollup/plugins/esbuild/index.js"
116
- },
117
- "./transformer/swc": {
118
- "types": "./dist/rollup/plugins/swc/swc-plugin.d.ts",
119
- "default": "./dist/rollup/plugins/swc/swc-plugin.js"
120
- },
121
133
  "./dts/isolated/transformer/swc": {
122
134
  "types": "./dist/rollup/plugins/swc/isolated-declarations-swc-transformer.d.ts",
123
135
  "default": "./dist/rollup/plugins/swc/isolated-declarations-swc-transformer.js"
@@ -130,6 +142,14 @@
130
142
  "types": "./dist/rollup/plugins/typescript/isolated-declarations-typescript-transformer.d.ts",
131
143
  "default": "./dist/rollup/plugins/typescript/isolated-declarations-typescript-transformer.js"
132
144
  },
145
+ "./transformer/esbuild": {
146
+ "types": "./dist/rollup/plugins/esbuild/index.d.ts",
147
+ "default": "./dist/rollup/plugins/esbuild/index.js"
148
+ },
149
+ "./transformer/swc": {
150
+ "types": "./dist/rollup/plugins/swc/swc-plugin.d.ts",
151
+ "default": "./dist/rollup/plugins/swc/swc-plugin.js"
152
+ },
133
153
  "./transformer/sucrase": {
134
154
  "types": "./dist/rollup/plugins/sucrase/index.d.ts",
135
155
  "default": "./dist/rollup/plugins/sucrase/index.js"
@@ -160,41 +180,142 @@
160
180
  "dependencies": {
161
181
  "@antfu/install-pkg": "1.1.0",
162
182
  "@clack/prompts": "0.11.0",
163
- "@rollup/pluginutils": "5.2.0",
164
- "@visulima/cerebro": "1.1.46",
165
- "@visulima/colorize": "1.4.23",
166
- "@visulima/find-cache-dir": "1.0.31",
167
- "@visulima/fs": "3.1.5",
168
- "@visulima/humanizer": "1.2.2",
169
- "@visulima/package": "3.5.8",
170
- "@visulima/packem-rollup": "1.0.0-alpha.4",
171
- "@visulima/packem-share": "1.0.0-alpha.4",
172
- "@visulima/pail": "2.1.25",
183
+ "@rollup/pluginutils": "5.3.0",
184
+ "@visulima/cerebro": "2.1.3",
185
+ "@visulima/colorize": "1.4.27",
186
+ "@visulima/find-cache-dir": "2.0.4",
187
+ "@visulima/fs": "4.0.4",
188
+ "@visulima/humanizer": "2.0.3",
189
+ "@visulima/package": "4.1.4",
190
+ "@visulima/packem-rollup": "1.0.0-alpha.32",
191
+ "@visulima/packem-share": "1.0.0-alpha.15",
192
+ "@visulima/pail": "3.2.0",
173
193
  "@visulima/path": "1.4.0",
174
- "@visulima/rollup-css-plugin": "1.0.0-alpha.4",
175
- "@visulima/source-map": "1.0.20",
176
- "@visulima/tsconfig": "1.1.19",
177
- "browserslist": "4.25.1",
194
+ "@visulima/rollup-plugin-css": "1.0.0-alpha.12",
195
+ "@visulima/source-map": "2.0.3",
196
+ "@visulima/tabular": "^3.1.3",
197
+ "@visulima/tsconfig": "2.1.0",
198
+ "browserslist": "4.26.2",
199
+ "cjs-module-lexer": "^2.1.1",
200
+ "clean-css": "^5.3.3",
178
201
  "defu": "6.1.4",
179
202
  "fastest-levenshtein": "1.0.16",
180
203
  "hookable": "5.5.3",
181
- "jiti": "2.5.1",
182
- "magic-string": "0.30.17",
183
- "mlly": "1.7.4",
204
+ "html-minifier-next": "^4.7.0",
205
+ "jiti": "2.6.0",
206
+ "magic-string": "0.30.19",
207
+ "mlly": "1.8.0",
184
208
  "picomatch": "4.0.3",
185
- "rollup": "4.46.2",
209
+ "rollup": "^4.53.3",
186
210
  "semver": "7.7.2",
187
211
  "tinyexec": "1.0.1",
188
- "tinyglobby": "0.2.14"
212
+ "tinyglobby": "0.2.15"
213
+ },
214
+ "devDependencies": {
215
+ "@anolilab/eslint-config": "^16.4.4",
216
+ "@anolilab/prettier-config": "^6.0.8",
217
+ "@anolilab/semantic-release-pnpm": "2.0.4",
218
+ "@anolilab/semantic-release-preset": "^12.1.2",
219
+ "@arethetypeswrong/cli": "^0.18.2",
220
+ "@arethetypeswrong/core": "^0.18.2",
221
+ "@babel/core": "^7.28.5",
222
+ "@babel/parser": "7.28.4",
223
+ "@csstools/css-parser-algorithms": "3.0.5",
224
+ "@csstools/css-tokenizer": "3.0.4",
225
+ "@csstools/postcss-slow-plugins": "^2.0.0",
226
+ "@oxc-transform/binding-linux-x64-gnu": "*",
227
+ "@rollup/plugin-alias": "5.1.1",
228
+ "@rollup/plugin-commonjs": "29.0.0",
229
+ "@rollup/plugin-dynamic-import-vars": "2.1.5",
230
+ "@rollup/plugin-inject": "5.0.5",
231
+ "@rollup/plugin-json": "6.1.0",
232
+ "@rollup/plugin-node-resolve": "16.0.1",
233
+ "@rollup/plugin-replace": "6.0.2",
234
+ "@rollup/plugin-wasm": "6.2.2",
235
+ "@secretlint/secretlint-rule-preset-recommend": "^11.2.5",
236
+ "@svgr/core": "^8.1.0",
237
+ "@swc/core": "^1.15.3",
238
+ "@swc/types": "0.1.25",
239
+ "@tailwindcss/node": "^4.1.17",
240
+ "@tailwindcss/oxide": "^4.1.17",
241
+ "@total-typescript/ts-reset": "^0.6.1",
242
+ "@types/babel__core": "^7.20.5",
243
+ "@types/node": "24.5.2",
244
+ "@types/picomatch": "^4.0.2",
245
+ "@types/react-dom": "^19.2.3",
246
+ "@types/semver": "^7.7.1",
247
+ "@vitest/coverage-v8": "^4.0.15",
248
+ "@vitest/ui": "^4.0.15",
249
+ "conventional-changelog-conventionalcommits": "9.1.0",
250
+ "cross-env": "^10.1.0",
251
+ "cssnano": "^7.1.2",
252
+ "deeks": "^3.2.0",
253
+ "detect-indent": "^7.0.2",
254
+ "esbuild": "^0.27.1",
255
+ "eslint": "^9.36.0",
256
+ "execa": "^9.6.1",
257
+ "glob-parent": "6.0.2",
258
+ "icss-utils": "^5.1.0",
259
+ "less": "^4.4.2",
260
+ "lightningcss": "^1.30.2",
261
+ "lit": "^3.3.1",
262
+ "lucide-static": "^0.556.0",
263
+ "minireset.css": "0.0.7",
264
+ "oxc-parser": "0.99.0",
265
+ "oxc-resolver": "11.14.0",
266
+ "oxc-transform": "0.99.0",
267
+ "package-manager-detector": "^1.6.0",
268
+ "postcss": "^8.5.6",
269
+ "postcss-custom-properties": "14.0.6",
270
+ "postcss-load-config": "^6.0.1",
271
+ "postcss-modules-extract-imports": "^3.1.0",
272
+ "postcss-modules-local-by-default": "^4.2.0",
273
+ "postcss-modules-scope": "^3.2.1",
274
+ "postcss-modules-values": "^4.0.0",
275
+ "postcss-value-parser": "^4.2.0",
276
+ "prettier": "^3.7.4",
277
+ "publint": "^0.3.15",
278
+ "react": "^19.2.1",
279
+ "react-dom": "^19.2.1",
280
+ "rimraf": "^6.1.2",
281
+ "rollup-plugin-dts": "6.2.3",
282
+ "rollup-plugin-license": "3.6.0",
283
+ "rollup-plugin-lit-css": "^6.0.0",
284
+ "rollup-plugin-polyfill-node": "0.13.0",
285
+ "rollup-plugin-pure": "^0.4.0",
286
+ "rollup-plugin-visualizer": "6.0.3",
287
+ "rs-module-lexer": "^2.6.0",
288
+ "sass": "^1.95.0",
289
+ "sass-embedded": "^1.93.3",
290
+ "secretlint": "^11.2.5",
291
+ "semantic-release": "^25.0.2",
292
+ "sort-package-json": "3.4.0",
293
+ "stylus": "^0.64.0",
294
+ "sucrase": "^3.35.1",
295
+ "sugarss": "5.0.1",
296
+ "tailwindcss": "^4.1.17",
297
+ "tempy": "^3.1.0",
298
+ "tree-kill": "^1.2.2",
299
+ "typedoc": "0.28.13",
300
+ "typedoc-plugin-markdown": "4.9.0",
301
+ "typedoc-plugin-rename-defaults": "0.7.3",
302
+ "typescript": "^5.9.3",
303
+ "unplugin-vue": "^7.1.0",
304
+ "rollup-plugin-svelte": "^7.2.3",
305
+ "vitest": "^4.0.15"
189
306
  },
190
307
  "peerDependencies": {
308
+ "@arethetypeswrong/core": ">=0.18.2",
191
309
  "@swc/core": ">=1.11.29",
310
+ "@tailwindcss/node": "^4.1.17",
311
+ "@tailwindcss/oxide": "^4.1.17",
192
312
  "cssnano": ">=7.0.6",
193
313
  "esbuild": ">=0.20.2",
194
314
  "icss-utils": ">=5.1.0",
195
315
  "less": ">=4.2.0",
196
316
  "lightningcss": ">=1.27.0",
197
317
  "oxc-transform": ">=0.20.0",
318
+ "package-manager-detector": "^1.6.0",
198
319
  "postcss": ">=8.4.47",
199
320
  "postcss-load-config": ">=6.0.1",
200
321
  "postcss-modules-extract-imports": ">=3.1.0",
@@ -205,6 +326,8 @@
205
326
  "sass": ">=1.43.4",
206
327
  "sass-embedded": ">=1.79.4",
207
328
  "stylus": ">=0.63.0",
329
+ "unplugin-vue": ">=7",
330
+ "rollup-plugin-svelte": ">=7",
208
331
  "sucrase": ">=3.35.0",
209
332
  "typedoc": ">=0.26.0",
210
333
  "typedoc-plugin-markdown": ">=4.2.0",
@@ -212,12 +335,24 @@
212
335
  "typescript": ">=4.5 || >=5.0"
213
336
  },
214
337
  "peerDependenciesMeta": {
338
+ "@arethetypeswrong/core": {
339
+ "optional": true
340
+ },
341
+ "@babel/core": {
342
+ "optional": true
343
+ },
215
344
  "@ckeditor/typedoc-plugins": {
216
345
  "optional": true
217
346
  },
218
347
  "@swc/core": {
219
348
  "optional": true
220
349
  },
350
+ "@tailwindcss/node": {
351
+ "optional": true
352
+ },
353
+ "@tailwindcss/oxide": {
354
+ "optional": true
355
+ },
221
356
  "cssnano": {
222
357
  "optional": true
223
358
  },
@@ -257,6 +392,9 @@
257
392
  "postcss-value-parser": {
258
393
  "optional": true
259
394
  },
395
+ "rollup-plugin-svelte": {
396
+ "optional": true
397
+ },
260
398
  "sass": {
261
399
  "optional": true
262
400
  },
@@ -280,13 +418,36 @@
280
418
  },
281
419
  "typescript": {
282
420
  "optional": true
421
+ },
422
+ "unplugin-vue": {
423
+ "optional": true
424
+ },
425
+ "which-pm-runs": {
426
+ "optional": true
283
427
  }
284
428
  },
285
429
  "engines": {
286
- "node": ">=20.* <=24.*"
430
+ "node": ">=20.19 <=25.*"
287
431
  },
288
432
  "publishConfig": {
289
433
  "access": "public",
290
434
  "provenance": true
435
+ },
436
+ "scripts": {
437
+ "build": "cross-env INTERNAL_PACKEM_BUILD=1 JITI_INTEROP_DEFAULT=1 jiti src/cli/index.ts build --development",
438
+ "build:prod": "cross-env INTERNAL_PACKEM_BUILD=1 JITI_INTEROP_DEFAULT=1 jiti src/cli/index.ts build --production",
439
+ "clean": "rimraf node_modules dist .eslintcache",
440
+ "dev": "pnpm run build",
441
+ "lint:attw": "attw --pack",
442
+ "lint:eslint": "eslint ./src",
443
+ "lint:eslint:fix": "eslint . --cache --concurrency auto --fix,",
444
+ "lint:package-json": "publint --strict",
445
+ "lint:prettier": "prettier --config=.prettierrc.cjs --check .",
446
+ "lint:prettier:fix": "prettier --config=.prettierrc.cjs --write .",
447
+ "lint:types": "tsc --noEmit",
448
+ "test": "vitest run --cache",
449
+ "test:coverage": "vitest run --cache --coverage",
450
+ "test:ui": "vitest --cache --ui --coverage.enabled=true",
451
+ "test:watch": "vitest"
291
452
  }
292
453
  }