@codepress/codepress-engine 0.6.0-dev.hmr-no-unsafe.20251119054000 → 0.6.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.
@@ -0,0 +1,443 @@
1
+ "use strict";
2
+ /**
3
+ * Provenance Tracking for Babel Plugin
4
+ * Ported from SWC plugin (lib.rs lines 1203-1283, 553-904)
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ProvenanceTracker = void 0;
8
+ class ProvenanceTracker {
9
+ constructor(filename) {
10
+ this.bindings = new Map();
11
+ this.filename = filename;
12
+ }
13
+ // Port of collect_bindings (lib.rs:555-560)
14
+ collectBindings(program) {
15
+ program.traverse({
16
+ VariableDeclarator: (path) => {
17
+ var _a;
18
+ if (path.node.id.type === 'Identifier') {
19
+ this.bindings.set(path.node.id.name, {
20
+ defSpan: this.makeSpan(path.node.id.loc),
21
+ init: (_a = path.node.init) !== null && _a !== void 0 ? _a : undefined,
22
+ });
23
+ }
24
+ },
25
+ FunctionDeclaration: (path) => {
26
+ if (path.node.id) {
27
+ this.bindings.set(path.node.id.name, {
28
+ defSpan: this.makeSpan(path.node.id.loc),
29
+ fnBodySpan: this.makeSpan(path.node.body.loc),
30
+ });
31
+ }
32
+ },
33
+ ImportDeclaration: (path) => {
34
+ for (const spec of path.node.specifiers) {
35
+ let imported;
36
+ if (spec.type === 'ImportSpecifier') {
37
+ imported = spec.imported.type === 'Identifier'
38
+ ? spec.imported.name
39
+ : spec.local.name;
40
+ }
41
+ else if (spec.type === 'ImportDefaultSpecifier') {
42
+ imported = 'default';
43
+ }
44
+ else {
45
+ imported = '*';
46
+ }
47
+ this.bindings.set(spec.local.name, {
48
+ defSpan: this.makeSpan(spec.local.loc),
49
+ import: {
50
+ source: path.node.source.value,
51
+ imported,
52
+ },
53
+ });
54
+ }
55
+ },
56
+ });
57
+ }
58
+ // Port of trace_expr (lib.rs:562-765)
59
+ traceExpression(expr, chain, depth = 0, seen = new Set()) {
60
+ if (depth > 8 || chain.length > 128)
61
+ return;
62
+ switch (expr.type) {
63
+ case 'NumericLiteral':
64
+ chain.push({
65
+ kind: 'Literal',
66
+ span: this.makeSpan(expr.loc),
67
+ value_kind: 'number',
68
+ });
69
+ break;
70
+ case 'StringLiteral':
71
+ chain.push({
72
+ kind: 'Literal',
73
+ span: this.makeSpan(expr.loc),
74
+ value_kind: 'string',
75
+ });
76
+ break;
77
+ case 'BooleanLiteral':
78
+ case 'NullLiteral':
79
+ chain.push({
80
+ kind: 'Literal',
81
+ span: this.makeSpan(expr.loc),
82
+ value_kind: 'other',
83
+ });
84
+ break;
85
+ case 'Identifier':
86
+ chain.push({
87
+ kind: 'Ident',
88
+ name: expr.name,
89
+ span: this.makeSpan(expr.loc),
90
+ });
91
+ if (seen.has(expr.name))
92
+ return;
93
+ seen.add(expr.name);
94
+ const binding = this.bindings.get(expr.name);
95
+ if (binding) {
96
+ if (binding.init) {
97
+ chain.push({ kind: 'Init', span: this.makeSpan(binding.init.loc) });
98
+ this.traceExpression(binding.init, chain, depth + 1, seen);
99
+ }
100
+ if (binding.import) {
101
+ chain.push({
102
+ kind: 'Import',
103
+ source: binding.import.source,
104
+ imported: binding.import.imported,
105
+ span: binding.defSpan,
106
+ });
107
+ }
108
+ }
109
+ break;
110
+ case 'MemberExpression':
111
+ const envKey = this.detectEnvMember(expr);
112
+ if (envKey) {
113
+ chain.push({
114
+ kind: 'Env',
115
+ key: envKey,
116
+ span: this.makeSpan(expr.loc),
117
+ });
118
+ return;
119
+ }
120
+ chain.push({ kind: 'Member', span: this.makeSpan(expr.loc) });
121
+ this.traceExpression(expr.object, chain, depth + 1, seen);
122
+ if (expr.computed && expr.property.type !== 'PrivateName') {
123
+ this.traceExpression(expr.property, chain, depth + 1, seen);
124
+ }
125
+ break;
126
+ case 'CallExpression':
127
+ let calleeName = '<expr>';
128
+ let calleeSpan = this.makeSpan(expr.loc);
129
+ let fnDefSpan;
130
+ if (expr.callee.type === 'Identifier') {
131
+ calleeName = expr.callee.name;
132
+ calleeSpan = this.makeSpan(expr.callee.loc);
133
+ const binding = this.bindings.get(expr.callee.name);
134
+ fnDefSpan = (binding === null || binding === void 0 ? void 0 : binding.fnBodySpan) || (binding === null || binding === void 0 ? void 0 : binding.defSpan);
135
+ }
136
+ else if (expr.callee.type === 'MemberExpression') {
137
+ calleeName = '<member>';
138
+ calleeSpan = this.makeSpan(expr.callee.loc);
139
+ }
140
+ chain.push({
141
+ kind: 'Call',
142
+ callee: calleeName,
143
+ callsite: this.makeSpan(expr.loc),
144
+ callee_span: calleeSpan,
145
+ fn_def_span: fnDefSpan,
146
+ });
147
+ for (const arg of expr.arguments) {
148
+ if (arg.type !== 'SpreadElement' && arg.type !== 'ArgumentPlaceholder') {
149
+ this.traceExpression(arg, chain, depth + 1, seen);
150
+ }
151
+ }
152
+ break;
153
+ case 'NewExpression':
154
+ const ctorName = expr.callee.type === 'Identifier'
155
+ ? expr.callee.name
156
+ : '<expr>';
157
+ chain.push({
158
+ kind: 'Ctor',
159
+ callee: ctorName,
160
+ span: this.makeSpan(expr.loc),
161
+ });
162
+ if (expr.arguments) {
163
+ for (const arg of expr.arguments) {
164
+ if (arg.type !== 'SpreadElement' && arg.type !== 'ArgumentPlaceholder') {
165
+ this.traceExpression(arg, chain, depth + 1, seen);
166
+ }
167
+ }
168
+ }
169
+ break;
170
+ case 'TemplateLiteral':
171
+ chain.push({
172
+ kind: 'Op',
173
+ op: 'template',
174
+ span: this.makeSpan(expr.loc),
175
+ });
176
+ for (const elem of expr.expressions) {
177
+ this.traceExpression(elem, chain, depth + 1, seen);
178
+ }
179
+ break;
180
+ case 'BinaryExpression':
181
+ chain.push({
182
+ kind: 'Op',
183
+ op: `binary:${expr.operator}`,
184
+ span: this.makeSpan(expr.loc),
185
+ });
186
+ this.traceExpression(expr.left, chain, depth + 1, seen);
187
+ this.traceExpression(expr.right, chain, depth + 1, seen);
188
+ break;
189
+ case 'ConditionalExpression':
190
+ chain.push({
191
+ kind: 'Op',
192
+ op: 'cond',
193
+ span: this.makeSpan(expr.loc),
194
+ });
195
+ this.traceExpression(expr.test, chain, depth + 1, seen);
196
+ this.traceExpression(expr.consequent, chain, depth + 1, seen);
197
+ this.traceExpression(expr.alternate, chain, depth + 1, seen);
198
+ break;
199
+ case 'UnaryExpression':
200
+ chain.push({
201
+ kind: 'Op',
202
+ op: `unary:${expr.operator}`,
203
+ span: this.makeSpan(expr.loc),
204
+ });
205
+ this.traceExpression(expr.argument, chain, depth + 1, seen);
206
+ break;
207
+ case 'UpdateExpression':
208
+ chain.push({
209
+ kind: 'Op',
210
+ op: 'update',
211
+ span: this.makeSpan(expr.loc),
212
+ });
213
+ this.traceExpression(expr.argument, chain, depth + 1, seen);
214
+ break;
215
+ case 'ObjectExpression':
216
+ for (const prop of expr.properties) {
217
+ if (prop.type === 'ObjectProperty') {
218
+ let key;
219
+ if (prop.key.type === 'Identifier') {
220
+ key = prop.key.name;
221
+ }
222
+ else if (prop.key.type === 'StringLiteral') {
223
+ key = prop.key.value;
224
+ }
225
+ else {
226
+ key = '<computed>';
227
+ }
228
+ chain.push({
229
+ kind: 'ObjectProp',
230
+ key,
231
+ span: this.makeSpan(prop.key.loc),
232
+ });
233
+ this.traceExpression(prop.value, chain, depth + 1, seen);
234
+ }
235
+ }
236
+ break;
237
+ case 'ArrayExpression':
238
+ expr.elements.forEach((el, idx) => {
239
+ if (el && el.type !== 'SpreadElement') {
240
+ chain.push({
241
+ kind: 'ArrayElem',
242
+ index: idx,
243
+ span: this.makeSpan(el.loc),
244
+ });
245
+ this.traceExpression(el, chain, depth + 1, seen);
246
+ }
247
+ });
248
+ break;
249
+ default:
250
+ chain.push({
251
+ kind: 'Unknown',
252
+ span: this.makeSpan(expr.loc),
253
+ });
254
+ }
255
+ }
256
+ // Port of rank_candidates (lib.rs:767-829)
257
+ rankCandidates(chain) {
258
+ const candidates = [];
259
+ const seen = new Set();
260
+ for (const node of chain) {
261
+ switch (node.kind) {
262
+ case 'Literal':
263
+ candidates.push({ target: node.span, reason: 'literal' });
264
+ break;
265
+ case 'Init':
266
+ candidates.push({ target: node.span, reason: 'const-init' });
267
+ break;
268
+ case 'Member':
269
+ candidates.push({ target: node.span, reason: 'member' });
270
+ break;
271
+ case 'ObjectProp':
272
+ case 'ArrayElem':
273
+ candidates.push({ target: node.span, reason: 'structural' });
274
+ break;
275
+ case 'Call':
276
+ candidates.push({ target: node.callsite, reason: 'callsite' });
277
+ if (node.fn_def_span) {
278
+ candidates.push({ target: node.fn_def_span, reason: 'fn-def' });
279
+ }
280
+ break;
281
+ case 'Ctor':
282
+ candidates.push({ target: node.span, reason: 'constructor' });
283
+ break;
284
+ case 'Import':
285
+ candidates.push({ target: node.span, reason: 'import' });
286
+ break;
287
+ case 'Env':
288
+ candidates.push({ target: node.span, reason: 'env' });
289
+ break;
290
+ }
291
+ }
292
+ // Dedup
293
+ return candidates.filter(c => {
294
+ const key = `${c.reason}#${c.target}`;
295
+ if (seen.has(key))
296
+ return false;
297
+ seen.add(key);
298
+ return true;
299
+ });
300
+ }
301
+ // Port of aggregate_kinds (lib.rs:881-904)
302
+ aggregateKinds(chain) {
303
+ const kinds = new Set();
304
+ for (const node of chain) {
305
+ switch (node.kind) {
306
+ case 'Literal':
307
+ kinds.add('literal');
308
+ break;
309
+ case 'Ident':
310
+ kinds.add('ident');
311
+ break;
312
+ case 'Init':
313
+ kinds.add('init');
314
+ break;
315
+ case 'Import':
316
+ kinds.add('import');
317
+ break;
318
+ case 'Member':
319
+ kinds.add('member');
320
+ break;
321
+ case 'ObjectProp':
322
+ kinds.add('object');
323
+ break;
324
+ case 'ArrayElem':
325
+ kinds.add('array');
326
+ break;
327
+ case 'Call':
328
+ kinds.add('call');
329
+ break;
330
+ case 'Ctor':
331
+ kinds.add('ctor');
332
+ break;
333
+ case 'Op':
334
+ kinds.add('op');
335
+ break;
336
+ case 'Env':
337
+ kinds.add('env');
338
+ break;
339
+ case 'Unknown':
340
+ kinds.add('unknown');
341
+ break;
342
+ }
343
+ }
344
+ return Array.from(kinds).sort();
345
+ }
346
+ // Port of collect_symbol_refs_from_expr (lib.rs:830-879)
347
+ collectSymbolRefs(expr, refs) {
348
+ if (expr.type === 'Identifier') {
349
+ refs.push({
350
+ file: this.filename,
351
+ local: expr.name,
352
+ path: '',
353
+ span: this.makeSpan(expr.loc),
354
+ });
355
+ // Chase initializer
356
+ const binding = this.bindings.get(expr.name);
357
+ if (binding === null || binding === void 0 ? void 0 : binding.init) {
358
+ this.collectSymbolRefs(binding.init, refs);
359
+ }
360
+ }
361
+ else if (expr.type === 'MemberExpression') {
362
+ const memberPath = this.staticMemberPath(expr);
363
+ if (memberPath) {
364
+ refs.push({
365
+ file: this.filename,
366
+ local: memberPath.root,
367
+ path: memberPath.path,
368
+ span: this.makeSpan(expr.loc),
369
+ });
370
+ }
371
+ // Descend
372
+ this.collectSymbolRefs(expr.object, refs);
373
+ if (expr.computed && expr.property.type !== 'PrivateName') {
374
+ this.collectSymbolRefs(expr.property, refs);
375
+ }
376
+ }
377
+ else if (expr.type === 'CallExpression') {
378
+ if (expr.callee.type !== 'Super' && expr.callee.type !== 'V8IntrinsicIdentifier') {
379
+ this.collectSymbolRefs(expr.callee, refs);
380
+ }
381
+ for (const arg of expr.arguments) {
382
+ if (arg.type !== 'SpreadElement' && arg.type !== 'ArgumentPlaceholder') {
383
+ this.collectSymbolRefs(arg, refs);
384
+ }
385
+ }
386
+ }
387
+ }
388
+ // Port of detect_env_member (lib.rs:1388-1413)
389
+ detectEnvMember(expr) {
390
+ // process.env.X
391
+ if (expr.object.type === 'MemberExpression' &&
392
+ expr.object.object.type === 'Identifier' &&
393
+ expr.object.object.name === 'process' &&
394
+ expr.object.property.type === 'Identifier' &&
395
+ expr.object.property.name === 'env' &&
396
+ expr.property.type === 'Identifier') {
397
+ return expr.property.name;
398
+ }
399
+ // import.meta.env.X
400
+ if (expr.object.type === 'MemberExpression' &&
401
+ expr.object.object.type === 'MetaProperty' &&
402
+ expr.object.object.meta.name === 'import' &&
403
+ expr.object.object.property.name === 'meta' &&
404
+ expr.object.property.type === 'Identifier' &&
405
+ expr.object.property.name === 'env' &&
406
+ expr.property.type === 'Identifier') {
407
+ return expr.property.name;
408
+ }
409
+ return null;
410
+ }
411
+ staticMemberPath(expr) {
412
+ const parts = [];
413
+ let current = expr;
414
+ while (current.type === 'MemberExpression') {
415
+ if (current.property.type === 'Identifier' && !current.computed) {
416
+ parts.unshift(`.${current.property.name}`);
417
+ }
418
+ else if (current.computed) {
419
+ if (current.property.type === 'StringLiteral') {
420
+ parts.unshift(`["${current.property.value}"]`);
421
+ }
422
+ else if (current.property.type === 'NumericLiteral') {
423
+ parts.unshift(`[${current.property.value}]`);
424
+ }
425
+ else {
426
+ return null;
427
+ }
428
+ }
429
+ current = current.object;
430
+ }
431
+ if (current.type === 'Identifier') {
432
+ return { root: current.name, path: parts.join('') };
433
+ }
434
+ return null;
435
+ }
436
+ makeSpan(loc) {
437
+ if (!loc)
438
+ return `${this.filename}:0`;
439
+ return `${this.filename}:${loc.start.line}`;
440
+ }
441
+ }
442
+ exports.ProvenanceTracker = ProvenanceTracker;
443
+ //# sourceMappingURL=provenance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provenance.js","sourceRoot":"","sources":["../../src/babel/provenance.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * CodePress esbuild plugin - Injects tracking attributes and provider wrappers into JSX
3
3
  * Replaces the Rust SWC plugin with a pure JavaScript implementation
4
4
  */
5
- import type { Plugin } from "esbuild";
5
+ import type { Plugin } from 'esbuild';
6
6
  interface CodePressPluginOptions {
7
7
  repo_name?: string;
8
8
  branch_name?: string;
@@ -40,27 +40,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
40
40
  exports.createCodePressPlugin = createCodePressPlugin;
41
41
  const fs = __importStar(require("fs"));
42
42
  const path = __importStar(require("path"));
43
- const SECRET = Buffer.from("codepress-file-obfuscation");
43
+ const SECRET = Buffer.from('codepress-file-obfuscation');
44
44
  function xorEncodePath(input) {
45
45
  if (!input)
46
- return "";
47
- const normalized = input.replace(/\\/g, "/");
48
- const buf = Buffer.from(normalized, "utf8");
46
+ return '';
47
+ const normalized = input.replace(/\\/g, '/');
48
+ const buf = Buffer.from(normalized, 'utf8');
49
49
  const out = Buffer.allocUnsafe(buf.length);
50
50
  for (let i = 0; i < buf.length; i++) {
51
51
  out[i] = buf[i] ^ SECRET[i % SECRET.length];
52
52
  }
53
53
  return out
54
- .toString("base64")
55
- .replace(/\+/g, "-")
56
- .replace(/\//g, "_")
57
- .replace(/=+$/g, "");
54
+ .toString('base64')
55
+ .replace(/\+/g, '-')
56
+ .replace(/\//g, '_')
57
+ .replace(/=+$/g, '');
58
58
  }
59
59
  /**
60
60
  * Inject codepress-data-fp attributes into JSX opening tags
61
61
  */
62
62
  function injectJSXAttributes(source, encoded, repoName, branchName) {
63
- const lines = source.split("\n");
63
+ const lines = source.split('\n');
64
64
  const output = [];
65
65
  let lineNum = 0;
66
66
  for (const line of lines) {
@@ -89,11 +89,11 @@ function injectJSXAttributes(source, encoded, repoName, branchName) {
89
89
  attrs.push(`codepress-github-branch="${branchName}"`);
90
90
  }
91
91
  }
92
- return `${before}<${tagName} ${attrs.join(" ")}${after}`;
92
+ return `${before}<${tagName} ${attrs.join(' ')}${after}`;
93
93
  });
94
94
  output.push(modifiedLine);
95
95
  }
96
- return output.join("\n");
96
+ return output.join('\n');
97
97
  }
98
98
  /**
99
99
  * Wrap exported components with __CPProvider
@@ -147,39 +147,39 @@ const CPX = { Provider: ({ value, children }: any) => children };
147
147
  export default function ${componentName}(props: any) {
148
148
  return <__CPProvider><__Original${componentName} {...props} /></__CPProvider>;
149
149
  }`);
150
- return providerCode + "\n" + wrappedSource;
150
+ return providerCode + '\n' + wrappedSource;
151
151
  }
152
152
  function createCodePressPlugin(options = {}) {
153
- const { repo_name = "", branch_name = "", repo_root = process.cwd(), } = options;
153
+ const { repo_name = '', branch_name = '', repo_root = process.cwd(), } = options;
154
154
  return {
155
- name: "codepress-jsx-transform",
155
+ name: 'codepress-jsx-transform',
156
156
  setup(build) {
157
157
  // Transform TSX/JSX files
158
158
  build.onLoad({ filter: /\.[tj]sx$/ }, async (args) => {
159
159
  try {
160
160
  // Skip node_modules
161
- if (args.path.includes("node_modules")) {
161
+ if (args.path.includes('node_modules')) {
162
162
  return null;
163
163
  }
164
- const source = await fs.promises.readFile(args.path, "utf8");
164
+ const source = await fs.promises.readFile(args.path, 'utf8');
165
165
  const relPath = path.relative(repo_root, args.path);
166
166
  const encoded = xorEncodePath(relPath);
167
167
  if (!encoded) {
168
- return { contents: source, loader: "tsx" };
168
+ return { contents: source, loader: 'tsx' };
169
169
  }
170
170
  // Step 1: Inject JSX attributes
171
171
  let transformed = injectJSXAttributes(source, encoded, repo_name, branch_name);
172
172
  // Step 2: Wrap with provider (for default exports)
173
- if (transformed.includes("export default")) {
173
+ if (transformed.includes('export default')) {
174
174
  transformed = wrapWithProvider(transformed);
175
175
  }
176
176
  return {
177
177
  contents: transformed,
178
- loader: "tsx",
178
+ loader: 'tsx',
179
179
  };
180
180
  }
181
181
  catch (err) {
182
- console.error("[CodePress Plugin] Error transforming", args.path, err);
182
+ console.error('[CodePress Plugin] Error transforming', args.path, err);
183
183
  return null;
184
184
  }
185
185
  });
@@ -1 +1 @@
1
- {"version":3,"file":"esbuild-plugin.js","sourceRoot":"","sources":["../src/esbuild-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"esbuild-plugin.js","sourceRoot":"","sources":["../src/esbuild-plugin.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,12 @@
1
1
  import type * as Babel from "@babel/core";
2
2
  import type { CodePressPluginOptions } from "./types";
3
+ import { ModuleGraphCollector } from "./babel/module-graph";
4
+ import { ProvenanceTracker } from "./babel/provenance";
3
5
  interface CodePressPluginState extends Babel.PluginPass {
4
6
  file: Babel.BabelFile & {
5
7
  encodedPath?: string;
8
+ moduleGraph?: ModuleGraphCollector;
9
+ provenanceTracker?: ProvenanceTracker;
6
10
  };
7
11
  }
8
12
  export declare function decode(attributeValue: string | null | undefined): string;