@ttsc/unplugin 0.8.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.
Files changed (58) hide show
  1. package/README.md +286 -0
  2. package/lib/api.d.ts +1 -0
  3. package/lib/api.js +18 -0
  4. package/lib/api.js.map +1 -0
  5. package/lib/bun.d.ts +15 -0
  6. package/lib/bun.js +34 -0
  7. package/lib/bun.js.map +1 -0
  8. package/lib/core/index.d.ts +8 -0
  9. package/lib/core/index.js +44 -0
  10. package/lib/core/index.js.map +1 -0
  11. package/lib/core/options.d.ts +32 -0
  12. package/lib/core/options.js +16 -0
  13. package/lib/core/options.js.map +1 -0
  14. package/lib/core/transform.d.ts +11 -0
  15. package/lib/core/transform.js +307 -0
  16. package/lib/core/transform.js.map +1 -0
  17. package/lib/esbuild.d.ts +3 -0
  18. package/lib/esbuild.js +9 -0
  19. package/lib/esbuild.js.map +1 -0
  20. package/lib/farm.d.ts +3 -0
  21. package/lib/farm.js +9 -0
  22. package/lib/farm.js.map +1 -0
  23. package/lib/index.d.ts +3 -0
  24. package/lib/index.js +8 -0
  25. package/lib/index.js.map +1 -0
  26. package/lib/next.d.ts +8 -0
  27. package/lib/next.js +21 -0
  28. package/lib/next.js.map +1 -0
  29. package/lib/rolldown.d.ts +3 -0
  30. package/lib/rolldown.js +9 -0
  31. package/lib/rolldown.js.map +1 -0
  32. package/lib/rollup.d.ts +3 -0
  33. package/lib/rollup.js +9 -0
  34. package/lib/rollup.js.map +1 -0
  35. package/lib/rspack.d.ts +3 -0
  36. package/lib/rspack.js +9 -0
  37. package/lib/rspack.js.map +1 -0
  38. package/lib/vite.d.ts +3 -0
  39. package/lib/vite.js +9 -0
  40. package/lib/vite.js.map +1 -0
  41. package/lib/webpack.d.ts +3 -0
  42. package/lib/webpack.js +9 -0
  43. package/lib/webpack.js.map +1 -0
  44. package/package.json +106 -0
  45. package/src/api.ts +1 -0
  46. package/src/bun.ts +47 -0
  47. package/src/core/index.ts +61 -0
  48. package/src/core/options.ts +52 -0
  49. package/src/core/transform.ts +357 -0
  50. package/src/esbuild.ts +5 -0
  51. package/src/farm.ts +5 -0
  52. package/src/index.ts +5 -0
  53. package/src/next.ts +27 -0
  54. package/src/rolldown.ts +5 -0
  55. package/src/rollup.ts +5 -0
  56. package/src/rspack.ts +5 -0
  57. package/src/vite.ts +5 -0
  58. package/src/webpack.ts +5 -0
@@ -0,0 +1,307 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.transformTtsc = transformTtsc;
40
+ exports.stripQuery = stripQuery;
41
+ exports.isDeclarationFile = isDeclarationFile;
42
+ exports.createTransformResult = createTransformResult;
43
+ const Diff = __importStar(require("diff-match-patch-es"));
44
+ const node_fs_1 = __importDefault(require("node:fs"));
45
+ const node_path_1 = __importDefault(require("node:path"));
46
+ const magic_string_1 = __importDefault(require("magic-string"));
47
+ const ttsc_1 = require("ttsc");
48
+ async function transformTtsc(id, source, options, aliases) {
49
+ const file = node_path_1.default.resolve(stripQuery(id));
50
+ if (isDeclarationFile(file)) {
51
+ return undefined;
52
+ }
53
+ const tsconfig = resolveTsconfig(file, options.project);
54
+ const tsconfigDir = node_path_1.default.dirname(tsconfig);
55
+ const baseUrl = resolveBaseUrl(tsconfigDir, options.compilerOptions);
56
+ const aliasPaths = createAliasPaths(baseUrl, aliases);
57
+ const configured = createTransformTsconfig({
58
+ aliasPaths,
59
+ baseUrl,
60
+ compilerOptions: options.compilerOptions,
61
+ tsconfig,
62
+ });
63
+ try {
64
+ const effectiveTsconfig = configured.path;
65
+ const result = new ttsc_1.TtscCompiler({
66
+ cwd: node_path_1.default.dirname(effectiveTsconfig),
67
+ plugins: options.plugins,
68
+ tsconfig: effectiveTsconfig,
69
+ }).transform();
70
+ const code = selectTransformedSource({
71
+ file,
72
+ projectRoot: node_path_1.default.dirname(effectiveTsconfig),
73
+ result,
74
+ });
75
+ return createTransformResult(source, code, file);
76
+ }
77
+ finally {
78
+ configured.dispose();
79
+ }
80
+ }
81
+ function stripQuery(id) {
82
+ const query = id.search(/[?#]/);
83
+ const clean = query === -1 ? id : id.slice(0, query);
84
+ return clean.endsWith("?__rslib_entry__")
85
+ ? clean.slice(0, -"?__rslib_entry__".length)
86
+ : clean;
87
+ }
88
+ function isDeclarationFile(id) {
89
+ return id.endsWith(".d.ts") || id.endsWith(".d.mts") || id.endsWith(".d.cts");
90
+ }
91
+ function createTransformResult(source, code, id) {
92
+ if (source === code) {
93
+ return undefined;
94
+ }
95
+ const magic = new magic_string_1.default(source);
96
+ const diff = Diff.diff(source, code);
97
+ Diff.diffCleanupSemantic(diff);
98
+ let offset = 0;
99
+ for (let index = 0; index < diff.length; index += 1) {
100
+ const [type, text] = diff[index];
101
+ if (type === 0) {
102
+ offset += text.length;
103
+ continue;
104
+ }
105
+ if (type === 1) {
106
+ magic.prependLeft(offset, text);
107
+ continue;
108
+ }
109
+ const next = diff[index + 1];
110
+ if (next?.[0] === 1) {
111
+ magic.update(offset, offset + text.length, next[1]);
112
+ index += 1;
113
+ }
114
+ else {
115
+ magic.remove(offset, offset + text.length);
116
+ }
117
+ offset += text.length;
118
+ }
119
+ if (!magic.hasChanged()) {
120
+ return undefined;
121
+ }
122
+ return {
123
+ code: magic.toString(),
124
+ map: magic.generateMap({
125
+ file: `${id}.map`,
126
+ includeContent: true,
127
+ source: id,
128
+ }),
129
+ };
130
+ }
131
+ function createTransformTsconfig(props) {
132
+ const compilerOptions = {
133
+ ...props.compilerOptions,
134
+ ...createAliasCompilerOptions(props),
135
+ };
136
+ if (Object.keys(compilerOptions).length === 0) {
137
+ return {
138
+ path: props.tsconfig,
139
+ dispose: () => undefined,
140
+ };
141
+ }
142
+ const directory = node_path_1.default.dirname(props.tsconfig);
143
+ const file = node_path_1.default.join(directory, `.ttsc-unplugin-${process.pid}-${Date.now()}-${Math.random()
144
+ .toString(36)
145
+ .slice(2)}.json`);
146
+ node_fs_1.default.writeFileSync(file, JSON.stringify({
147
+ extends: `./${node_path_1.default.basename(props.tsconfig)}`,
148
+ compilerOptions,
149
+ }, null, 2), "utf8");
150
+ return {
151
+ path: file,
152
+ dispose: () => node_fs_1.default.rmSync(file, { force: true }),
153
+ };
154
+ }
155
+ function createAliasCompilerOptions(props) {
156
+ if (Object.keys(props.aliasPaths).length === 0) {
157
+ return {};
158
+ }
159
+ return {
160
+ baseUrl: toCompilerPath(props.baseUrl, props.compilerOptions),
161
+ paths: {
162
+ ...readPaths(props.compilerOptions.paths),
163
+ ...props.aliasPaths,
164
+ },
165
+ };
166
+ }
167
+ function readPaths(value) {
168
+ if (typeof value !== "object" || value === null || Array.isArray(value)) {
169
+ return {};
170
+ }
171
+ const output = {};
172
+ for (const [key, paths] of Object.entries(value)) {
173
+ if (!Array.isArray(paths)) {
174
+ continue;
175
+ }
176
+ const filtered = paths.filter((entry) => typeof entry === "string");
177
+ if (filtered.length !== 0) {
178
+ output[key] = filtered;
179
+ }
180
+ }
181
+ return output;
182
+ }
183
+ function resolveBaseUrl(tsconfigDir, compilerOptions) {
184
+ return typeof compilerOptions.baseUrl === "string"
185
+ ? node_path_1.default.resolve(tsconfigDir, compilerOptions.baseUrl)
186
+ : tsconfigDir;
187
+ }
188
+ function toCompilerPath(absoluteBaseUrl, compilerOptions) {
189
+ return typeof compilerOptions.baseUrl === "string"
190
+ ? compilerOptions.baseUrl
191
+ : absoluteBaseUrl;
192
+ }
193
+ function createAliasPaths(baseUrl, aliases) {
194
+ const paths = {};
195
+ for (const alias of normalizeAliases(aliases)) {
196
+ if (typeof alias.find !== "string" || alias.find.length === 0) {
197
+ continue;
198
+ }
199
+ if (alias.find.includes("*")) {
200
+ continue;
201
+ }
202
+ const key = alias.find.replace(/\/+$/, "");
203
+ if (key.length === 0) {
204
+ continue;
205
+ }
206
+ const replacement = node_path_1.default.isAbsolute(alias.replacement)
207
+ ? alias.replacement
208
+ : node_path_1.default.resolve(process.cwd(), alias.replacement);
209
+ const target = normalizePath(node_path_1.default.relative(baseUrl, replacement) || ".");
210
+ paths[key] = [target];
211
+ paths[`${key}/*`] = [`${target}/*`];
212
+ }
213
+ return paths;
214
+ }
215
+ function normalizeAliases(aliases) {
216
+ if (Array.isArray(aliases)) {
217
+ return aliases.filter(isAlias);
218
+ }
219
+ if (typeof aliases === "object" && aliases !== null) {
220
+ return Object.entries(aliases)
221
+ .filter((entry) => typeof entry[1] === "string")
222
+ .map(([find, replacement]) => ({ find, replacement }));
223
+ }
224
+ return [];
225
+ }
226
+ function isAlias(value) {
227
+ return (typeof value === "object" &&
228
+ value !== null &&
229
+ "find" in value &&
230
+ "replacement" in value &&
231
+ (typeof value.find === "string" || value.find instanceof RegExp) &&
232
+ typeof value.replacement === "string");
233
+ }
234
+ function selectTransformedSource(props) {
235
+ if (props.result.type === "exception") {
236
+ throw new Error(formatUnknownError(props.result.error));
237
+ }
238
+ if (props.result.type === "failure") {
239
+ throw new Error(formatDiagnostics(props.result.diagnostics));
240
+ }
241
+ const key = toProjectKey(props.projectRoot, props.file);
242
+ const direct = props.result.typescript[key];
243
+ if (direct !== undefined) {
244
+ return direct;
245
+ }
246
+ for (const [candidate, source] of Object.entries(props.result.typescript)) {
247
+ if (node_path_1.default.resolve(props.projectRoot, candidate) === props.file) {
248
+ return source;
249
+ }
250
+ }
251
+ throw new Error(`ttsc transform did not return output for ${props.file}`);
252
+ }
253
+ function formatDiagnostics(diagnostics) {
254
+ if (diagnostics.length === 0) {
255
+ return "ttsc transform failed";
256
+ }
257
+ return diagnostics
258
+ .map((diag) => [
259
+ diag.file ?? "ttsc",
260
+ diag.line === undefined
261
+ ? undefined
262
+ : `${diag.line}:${diag.character ?? 1}`,
263
+ diag.messageText,
264
+ ]
265
+ .filter((part) => part !== undefined && part !== "")
266
+ .join(": "))
267
+ .join("\n");
268
+ }
269
+ function formatUnknownError(error) {
270
+ if (error instanceof Error) {
271
+ return error.message;
272
+ }
273
+ if (typeof error === "object" &&
274
+ error !== null &&
275
+ "message" in error &&
276
+ typeof error.message === "string") {
277
+ return error.message;
278
+ }
279
+ return String(error);
280
+ }
281
+ function resolveTsconfig(file, tsconfig) {
282
+ if (tsconfig !== undefined) {
283
+ return node_path_1.default.isAbsolute(tsconfig)
284
+ ? tsconfig
285
+ : node_path_1.default.resolve(process.cwd(), tsconfig);
286
+ }
287
+ let current = node_path_1.default.dirname(file);
288
+ while (true) {
289
+ const candidate = node_path_1.default.join(current, "tsconfig.json");
290
+ if (node_fs_1.default.existsSync(candidate)) {
291
+ return candidate;
292
+ }
293
+ const parent = node_path_1.default.dirname(current);
294
+ if (parent === current) {
295
+ break;
296
+ }
297
+ current = parent;
298
+ }
299
+ return node_path_1.default.resolve(process.cwd(), "tsconfig.json");
300
+ }
301
+ function toProjectKey(root, file) {
302
+ return normalizePath(node_path_1.default.relative(root, file));
303
+ }
304
+ function normalizePath(file) {
305
+ return file.replace(/\\/g, "/");
306
+ }
307
+ //# sourceMappingURL=transform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/core/transform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import unplugin from "./core/index";
2
+ declare const esbuild: typeof unplugin.esbuild;
3
+ export default esbuild;
package/lib/esbuild.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./core/index"));
7
+ const esbuild = index_1.default.esbuild;
8
+ exports.default = esbuild;
9
+ //# sourceMappingURL=esbuild.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"esbuild.js","sourceRoot":"","sources":["../src/esbuild.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoC;AAEpC,MAAM,OAAO,GAA4B,eAAQ,CAAC,OAAO,CAAC;kBAE3C,OAAO"}
package/lib/farm.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import unplugin from "./core/index";
2
+ declare const farm: typeof unplugin.farm;
3
+ export default farm;
package/lib/farm.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./core/index"));
7
+ const farm = index_1.default.farm;
8
+ exports.default = farm;
9
+ //# sourceMappingURL=farm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"farm.js","sourceRoot":"","sources":["../src/farm.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoC;AAEpC,MAAM,IAAI,GAAyB,eAAQ,CAAC,IAAI,CAAC;kBAElC,IAAI"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import unplugin from "./core/index";
2
+ export type { TtscUnpluginOptions } from "./core/options";
3
+ export default unplugin;
package/lib/index.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./core/index"));
7
+ exports.default = index_1.default;
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoC;kBAIrB,eAAQ"}
package/lib/next.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ import type { TtscUnpluginOptions } from "./core/options";
2
+ export type NextLikeConfig = Record<string, unknown> & {
3
+ webpack?: (config: WebpackLikeConfig, options: unknown) => WebpackLikeConfig;
4
+ };
5
+ export type WebpackLikeConfig = Record<string, unknown> & {
6
+ plugins?: unknown[];
7
+ };
8
+ export default function next(nextConfig?: NextLikeConfig, options?: TtscUnpluginOptions): NextLikeConfig;
package/lib/next.js ADDED
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = next;
7
+ const webpack_1 = __importDefault(require("./webpack"));
8
+ function next(nextConfig = {}, options) {
9
+ return {
10
+ ...nextConfig,
11
+ webpack(config, webpackOptions) {
12
+ config.plugins = Array.isArray(config.plugins) ? config.plugins : [];
13
+ config.plugins.unshift((0, webpack_1.default)(options));
14
+ if (typeof nextConfig.webpack === "function") {
15
+ return nextConfig.webpack(config, webpackOptions);
16
+ }
17
+ return config;
18
+ },
19
+ };
20
+ }
21
+ //# sourceMappingURL=next.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next.js","sourceRoot":"","sources":["../src/next.ts"],"names":[],"mappings":";;;;;;AACA,wDAAgC;AAUhC,cACE,UAAU,GAAmB,EAAE,EAC/B,OAA6B;IAE7B,OAAO;QACL,GAAG,UAAU;QACb,OAAO,CAAC,MAAyB,EAAE,cAAuB;YACxD,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAA,iBAAO,EAAC,OAAO,CAAC,CAAC,CAAC;YACzC,IAAI,OAAO,UAAU,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBAC7C,OAAO,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import unplugin from "./core/index";
2
+ declare const rolldown: typeof unplugin.rolldown;
3
+ export default rolldown;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./core/index"));
7
+ const rolldown = index_1.default.rolldown;
8
+ exports.default = rolldown;
9
+ //# sourceMappingURL=rolldown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rolldown.js","sourceRoot":"","sources":["../src/rolldown.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoC;AAEpC,MAAM,QAAQ,GAA6B,eAAQ,CAAC,QAAQ,CAAC;kBAE9C,QAAQ"}
@@ -0,0 +1,3 @@
1
+ import unplugin from "./core/index";
2
+ declare const rollup: typeof unplugin.rollup;
3
+ export default rollup;
package/lib/rollup.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./core/index"));
7
+ const rollup = index_1.default.rollup;
8
+ exports.default = rollup;
9
+ //# sourceMappingURL=rollup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rollup.js","sourceRoot":"","sources":["../src/rollup.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoC;AAEpC,MAAM,MAAM,GAA2B,eAAQ,CAAC,MAAM,CAAC;kBAExC,MAAM"}
@@ -0,0 +1,3 @@
1
+ import unplugin from "./core/index";
2
+ declare const rspack: typeof unplugin.rspack;
3
+ export default rspack;
package/lib/rspack.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./core/index"));
7
+ const rspack = index_1.default.rspack;
8
+ exports.default = rspack;
9
+ //# sourceMappingURL=rspack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rspack.js","sourceRoot":"","sources":["../src/rspack.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoC;AAEpC,MAAM,MAAM,GAA2B,eAAQ,CAAC,MAAM,CAAC;kBAExC,MAAM"}
package/lib/vite.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import unplugin from "./core/index";
2
+ declare const vite: typeof unplugin.vite;
3
+ export default vite;
package/lib/vite.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./core/index"));
7
+ const vite = index_1.default.vite;
8
+ exports.default = vite;
9
+ //# sourceMappingURL=vite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.js","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoC;AAEpC,MAAM,IAAI,GAAyB,eAAQ,CAAC,IAAI,CAAC;kBAElC,IAAI"}
@@ -0,0 +1,3 @@
1
+ import unplugin from "./core/index";
2
+ declare const webpack: typeof unplugin.webpack;
3
+ export default webpack;
package/lib/webpack.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_1 = __importDefault(require("./core/index"));
7
+ const webpack = index_1.default.webpack;
8
+ exports.default = webpack;
9
+ //# sourceMappingURL=webpack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webpack.js","sourceRoot":"","sources":["../src/webpack.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoC;AAEpC,MAAM,OAAO,GAA4B,eAAQ,CAAC,OAAO,CAAC;kBAE3C,OAAO"}
package/package.json ADDED
@@ -0,0 +1,106 @@
1
+ {
2
+ "name": "@ttsc/unplugin",
3
+ "version": "0.8.0",
4
+ "description": "Bundler adapters for ttsc plugins.",
5
+ "main": "lib/index.js",
6
+ "types": "lib/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./lib/index.d.ts",
10
+ "default": "./lib/index.js"
11
+ },
12
+ "./api": {
13
+ "types": "./lib/api.d.ts",
14
+ "default": "./lib/api.js"
15
+ },
16
+ "./bun": {
17
+ "types": "./lib/bun.d.ts",
18
+ "default": "./lib/bun.js"
19
+ },
20
+ "./esbuild": {
21
+ "types": "./lib/esbuild.d.ts",
22
+ "default": "./lib/esbuild.js"
23
+ },
24
+ "./farm": {
25
+ "types": "./lib/farm.d.ts",
26
+ "default": "./lib/farm.js"
27
+ },
28
+ "./next": {
29
+ "types": "./lib/next.d.ts",
30
+ "default": "./lib/next.js"
31
+ },
32
+ "./rolldown": {
33
+ "types": "./lib/rolldown.d.ts",
34
+ "default": "./lib/rolldown.js"
35
+ },
36
+ "./rollup": {
37
+ "types": "./lib/rollup.d.ts",
38
+ "default": "./lib/rollup.js"
39
+ },
40
+ "./rspack": {
41
+ "types": "./lib/rspack.d.ts",
42
+ "default": "./lib/rspack.js"
43
+ },
44
+ "./vite": {
45
+ "types": "./lib/vite.d.ts",
46
+ "default": "./lib/vite.js"
47
+ },
48
+ "./webpack": {
49
+ "types": "./lib/webpack.d.ts",
50
+ "default": "./lib/webpack.js"
51
+ },
52
+ "./package.json": "./package.json"
53
+ },
54
+ "publishConfig": {
55
+ "access": "public"
56
+ },
57
+ "scripts": {
58
+ "build": "rimraf lib && tsgo",
59
+ "test": "pnpm run build && node --test --test-reporter=spec ../../tests/unplugin/**/*.test.cjs"
60
+ },
61
+ "keywords": [
62
+ "ttsc",
63
+ "unplugin",
64
+ "vite",
65
+ "esbuild",
66
+ "rollup",
67
+ "webpack",
68
+ "typescript",
69
+ "tsgo"
70
+ ],
71
+ "files": [
72
+ "README.md",
73
+ "lib",
74
+ "src"
75
+ ],
76
+ "dependencies": {
77
+ "diff-match-patch-es": "^1.0.1",
78
+ "magic-string": "^0.30.21",
79
+ "unplugin": "^2.3.11"
80
+ },
81
+ "peerDependencies": {
82
+ "@typescript/native-preview": ">=7.0.0-dev.0",
83
+ "ttsc": "^0.8.0"
84
+ },
85
+ "devDependencies": {
86
+ "@types/node": "catalog:utils",
87
+ "@typescript/native-preview": "catalog:tsgo",
88
+ "esbuild": "^0.25.12",
89
+ "rimraf": "catalog:utils",
90
+ "rollup": "^4.60.3",
91
+ "ttsc": "workspace:*",
92
+ "vite": "^7.1.12"
93
+ },
94
+ "repository": {
95
+ "type": "git",
96
+ "url": "https://github.com/samchon/ttsc"
97
+ },
98
+ "author": "Jeongho Nam",
99
+ "license": "MIT",
100
+ "bugs": {
101
+ "url": "https://github.com/samchon/ttsc/issues"
102
+ },
103
+ "homepage": "https://github.com/samchon/ttsc/tree/master/packages/unplugin#readme",
104
+ "sideEffects": false,
105
+ "packageManager": "pnpm@10.6.4"
106
+ }
package/src/api.ts ADDED
@@ -0,0 +1 @@
1
+ export * from "./core/index";