@codepress/codepress-engine 0.5.0 → 0.6.0-dev.hmr.20251119065124
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.
- package/dist/cli.js +0 -0
- package/dist/esbuild-plugin.d.ts +12 -0
- package/dist/esbuild-plugin.js +190 -0
- package/dist/esbuild-plugin.js.map +1 -0
- package/package.json +30 -16
- package/swc/codepress_engine.v0_82_87.wasm +0 -0
- package/swc/codepress_engine.v26.wasm +0 -0
- package/swc/codepress_engine.v42.wasm +0 -0
package/dist/cli.js
CHANGED
|
File without changes
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CodePress esbuild plugin - Injects tracking attributes and provider wrappers into JSX
|
|
3
|
+
* Replaces the Rust SWC plugin with a pure JavaScript implementation
|
|
4
|
+
*/
|
|
5
|
+
import type { Plugin } from 'esbuild';
|
|
6
|
+
interface CodePressPluginOptions {
|
|
7
|
+
repo_name?: string;
|
|
8
|
+
branch_name?: string;
|
|
9
|
+
repo_root?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function createCodePressPlugin(options?: CodePressPluginOptions): Plugin;
|
|
12
|
+
export default createCodePressPlugin;
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CodePress esbuild plugin - Injects tracking attributes and provider wrappers into JSX
|
|
4
|
+
* Replaces the Rust SWC plugin with a pure JavaScript implementation
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.createCodePressPlugin = createCodePressPlugin;
|
|
41
|
+
const fs = __importStar(require("fs"));
|
|
42
|
+
const path = __importStar(require("path"));
|
|
43
|
+
const SECRET = Buffer.from('codepress-file-obfuscation');
|
|
44
|
+
function xorEncodePath(input) {
|
|
45
|
+
if (!input)
|
|
46
|
+
return '';
|
|
47
|
+
const normalized = input.replace(/\\/g, '/');
|
|
48
|
+
const buf = Buffer.from(normalized, 'utf8');
|
|
49
|
+
const out = Buffer.allocUnsafe(buf.length);
|
|
50
|
+
for (let i = 0; i < buf.length; i++) {
|
|
51
|
+
out[i] = buf[i] ^ SECRET[i % SECRET.length];
|
|
52
|
+
}
|
|
53
|
+
return out
|
|
54
|
+
.toString('base64')
|
|
55
|
+
.replace(/\+/g, '-')
|
|
56
|
+
.replace(/\//g, '_')
|
|
57
|
+
.replace(/=+$/g, '');
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Inject codepress-data-fp attributes into JSX opening tags
|
|
61
|
+
*/
|
|
62
|
+
function injectJSXAttributes(source, encoded, repoName, branchName) {
|
|
63
|
+
const lines = source.split('\n');
|
|
64
|
+
const output = [];
|
|
65
|
+
let lineNum = 0;
|
|
66
|
+
for (const line of lines) {
|
|
67
|
+
lineNum++;
|
|
68
|
+
// Skip lines that are likely TypeScript type definitions/generics
|
|
69
|
+
// These patterns indicate type syntax, not JSX
|
|
70
|
+
if (/^\s*(interface|type|class|extends|implements)\b/.test(line) ||
|
|
71
|
+
/\bextends\s+[\w.]+</.test(line) ||
|
|
72
|
+
/<[\w.]+>(?!\s*[{(</])/.test(line) // Generics not followed by JSX-like syntax
|
|
73
|
+
) {
|
|
74
|
+
output.push(line);
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
// Match JSX opening tags with context awareness
|
|
78
|
+
// Only match when < appears in typical JSX contexts (after whitespace, braces, parens, return, etc.)
|
|
79
|
+
const modifiedLine = line.replace(/(^|\s+|[\s{(>]|return\s+|=\s*|:\s*|\?\s*)<([A-Z][\w.]*|[a-z]+)([\s\/>])/g, (match, before, tagName, after) => {
|
|
80
|
+
// Build attributes
|
|
81
|
+
const attrs = [];
|
|
82
|
+
attrs.push(`codepress-data-fp="${encoded}:${lineNum}-${lineNum}"`);
|
|
83
|
+
// Add repo/branch info to container elements (divs, sections, etc.)
|
|
84
|
+
if (/^[a-z]/.test(tagName)) {
|
|
85
|
+
if (repoName) {
|
|
86
|
+
attrs.push(`codepress-github-repo-name="${repoName}"`);
|
|
87
|
+
}
|
|
88
|
+
if (branchName) {
|
|
89
|
+
attrs.push(`codepress-github-branch="${branchName}"`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return `${before}<${tagName} ${attrs.join(' ')}${after}`;
|
|
93
|
+
});
|
|
94
|
+
output.push(modifiedLine);
|
|
95
|
+
}
|
|
96
|
+
return output.join('\n');
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Wrap exported components with __CPProvider
|
|
100
|
+
*/
|
|
101
|
+
function wrapWithProvider(source) {
|
|
102
|
+
var _a;
|
|
103
|
+
// Find default export component
|
|
104
|
+
const defaultExportMatch = source.match(/export\s+default\s+function\s+(\w+)/);
|
|
105
|
+
if (!defaultExportMatch) {
|
|
106
|
+
// Try: export default ComponentName;
|
|
107
|
+
const namedMatch = source.match(/export\s+default\s+(\w+);/);
|
|
108
|
+
if (!namedMatch)
|
|
109
|
+
return source;
|
|
110
|
+
}
|
|
111
|
+
const componentName = (defaultExportMatch === null || defaultExportMatch === void 0 ? void 0 : defaultExportMatch[1]) || ((_a = source.match(/export\s+default\s+(\w+);/)) === null || _a === void 0 ? void 0 : _a[1]);
|
|
112
|
+
if (!componentName)
|
|
113
|
+
return source;
|
|
114
|
+
// Inject provider wrapper code at the top
|
|
115
|
+
const providerCode = `
|
|
116
|
+
import { useSyncExternalStore } from 'react';
|
|
117
|
+
|
|
118
|
+
// Module-level version counter for HMR
|
|
119
|
+
let __cpvVersion = 0;
|
|
120
|
+
|
|
121
|
+
// Provider component that wraps the default export
|
|
122
|
+
function __CPProvider({ value, children }: { value?: any; children: React.ReactNode }) {
|
|
123
|
+
const __cpv = useSyncExternalStore(
|
|
124
|
+
(cb) => {
|
|
125
|
+
const h = () => {
|
|
126
|
+
__cpvVersion = __cpvVersion + 1;
|
|
127
|
+
cb();
|
|
128
|
+
};
|
|
129
|
+
if (typeof window !== 'undefined') {
|
|
130
|
+
window.addEventListener("CP_PREVIEW_REFRESH", h);
|
|
131
|
+
return () => { window.removeEventListener("CP_PREVIEW_REFRESH", h); };
|
|
132
|
+
}
|
|
133
|
+
return () => {};
|
|
134
|
+
},
|
|
135
|
+
() => __cpvVersion,
|
|
136
|
+
() => 0
|
|
137
|
+
);
|
|
138
|
+
|
|
139
|
+
return <CPX.Provider value={value} key={__cpv}>{children}</CPX.Provider>;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// Context for passing data through provider
|
|
143
|
+
const CPX = { Provider: ({ value, children }: any) => children };
|
|
144
|
+
`;
|
|
145
|
+
// Wrap the default export
|
|
146
|
+
const wrappedSource = source.replace(new RegExp(`export\\s+default\\s+${componentName}`), `const __Original${componentName} = ${componentName};
|
|
147
|
+
export default function ${componentName}(props: any) {
|
|
148
|
+
return <__CPProvider><__Original${componentName} {...props} /></__CPProvider>;
|
|
149
|
+
}`);
|
|
150
|
+
return providerCode + '\n' + wrappedSource;
|
|
151
|
+
}
|
|
152
|
+
function createCodePressPlugin(options = {}) {
|
|
153
|
+
const { repo_name = '', branch_name = '', repo_root = process.cwd(), } = options;
|
|
154
|
+
return {
|
|
155
|
+
name: 'codepress-jsx-transform',
|
|
156
|
+
setup(build) {
|
|
157
|
+
// Transform TSX/JSX files
|
|
158
|
+
build.onLoad({ filter: /\.[tj]sx$/ }, async (args) => {
|
|
159
|
+
try {
|
|
160
|
+
// Skip node_modules
|
|
161
|
+
if (args.path.includes('node_modules')) {
|
|
162
|
+
return null;
|
|
163
|
+
}
|
|
164
|
+
const source = await fs.promises.readFile(args.path, 'utf8');
|
|
165
|
+
const relPath = path.relative(repo_root, args.path);
|
|
166
|
+
const encoded = xorEncodePath(relPath);
|
|
167
|
+
if (!encoded) {
|
|
168
|
+
return { contents: source, loader: 'tsx' };
|
|
169
|
+
}
|
|
170
|
+
// Step 1: Inject JSX attributes
|
|
171
|
+
let transformed = injectJSXAttributes(source, encoded, repo_name, branch_name);
|
|
172
|
+
// Step 2: Wrap with provider (for default exports)
|
|
173
|
+
if (transformed.includes('export default')) {
|
|
174
|
+
transformed = wrapWithProvider(transformed);
|
|
175
|
+
}
|
|
176
|
+
return {
|
|
177
|
+
contents: transformed,
|
|
178
|
+
loader: 'tsx',
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
catch (err) {
|
|
182
|
+
console.error('[CodePress Plugin] Error transforming', args.path, err);
|
|
183
|
+
return null;
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
},
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
exports.default = createCodePressPlugin;
|
|
190
|
+
//# sourceMappingURL=esbuild-plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"esbuild-plugin.js","sourceRoot":"","sources":["../src/esbuild-plugin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codepress/codepress-engine",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0-dev.hmr.20251119065124",
|
|
4
|
+
"packageManager": "pnpm@10.22.0",
|
|
4
5
|
"description": "CodePress engine - Babel and SWC plug-ins",
|
|
5
6
|
"main": "./dist/index.js",
|
|
6
7
|
"types": "./dist/index.d.ts",
|
|
@@ -30,6 +31,11 @@
|
|
|
30
31
|
"require": "./dist/swc/index.js",
|
|
31
32
|
"default": "./dist/swc/index.js"
|
|
32
33
|
},
|
|
34
|
+
"./esbuild": {
|
|
35
|
+
"types": "./dist/esbuild-plugin.d.ts",
|
|
36
|
+
"require": "./dist/esbuild-plugin.js",
|
|
37
|
+
"default": "./dist/esbuild-plugin.js"
|
|
38
|
+
},
|
|
33
39
|
"./swc/wasm": "./swc/codepress_engine.v42.wasm",
|
|
34
40
|
"./swc/wasm-v42": "./swc/codepress_engine.v42.wasm",
|
|
35
41
|
"./swc/wasm-v26": "./swc/codepress_engine.v26.wasm",
|
|
@@ -44,6 +50,23 @@
|
|
|
44
50
|
"README.md",
|
|
45
51
|
"LICENSE"
|
|
46
52
|
],
|
|
53
|
+
"scripts": {
|
|
54
|
+
"build": "tsc --project tsconfig.json",
|
|
55
|
+
"build:rust": "node ./scripts/build-swc.mjs",
|
|
56
|
+
"prepack": "npm run build && npm run build:rust",
|
|
57
|
+
"test": "npm run build && jest",
|
|
58
|
+
"test:watch": "npm run build && jest --watch",
|
|
59
|
+
"test:parity": "npm run build && jest test/plugin-parity.test.js test/fixtures.test.js",
|
|
60
|
+
"test:babel": "npm run build && jest test/plugin-parity.test.js",
|
|
61
|
+
"test:fixtures": "npm run build && jest test/fixtures.test.js",
|
|
62
|
+
"lint": "eslint . --ext .ts,.tsx,.js",
|
|
63
|
+
"lint:fix": "eslint . --ext .ts,.tsx,.js --fix",
|
|
64
|
+
"dev:link": "npm run build && npm run build:rust && npm link",
|
|
65
|
+
"prepublishOnly": "npm run build && npm run build:rust",
|
|
66
|
+
"version:patch": "npm version patch",
|
|
67
|
+
"version:minor": "npm version minor",
|
|
68
|
+
"version:major": "npm version major"
|
|
69
|
+
},
|
|
47
70
|
"keywords": [
|
|
48
71
|
"babel",
|
|
49
72
|
"babel-plugin",
|
|
@@ -78,6 +101,7 @@
|
|
|
78
101
|
"@types/jest": "^30.0.0",
|
|
79
102
|
"@types/node": "^22.9.0",
|
|
80
103
|
"@types/node-fetch": "^2.6.11",
|
|
104
|
+
"esbuild": "^0.24.0",
|
|
81
105
|
"babel-jest": "^30.2.0",
|
|
82
106
|
"eslint": "^9.37.0",
|
|
83
107
|
"eslint-config-prettier": "^10.1.8",
|
|
@@ -100,19 +124,9 @@
|
|
|
100
124
|
"prettier": "^3.1.0",
|
|
101
125
|
"ws": "^8.18.0"
|
|
102
126
|
},
|
|
103
|
-
"
|
|
104
|
-
"
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
"test:watch": "npm run build && jest --watch",
|
|
108
|
-
"test:parity": "npm run build && jest test/plugin-parity.test.js test/fixtures.test.js",
|
|
109
|
-
"test:babel": "npm run build && jest test/plugin-parity.test.js",
|
|
110
|
-
"test:fixtures": "npm run build && jest test/fixtures.test.js",
|
|
111
|
-
"lint": "eslint . --ext .ts,.tsx,.js",
|
|
112
|
-
"lint:fix": "eslint . --ext .ts,.tsx,.js --fix",
|
|
113
|
-
"dev:link": "npm run build && npm run build:rust && npm link",
|
|
114
|
-
"version:patch": "npm version patch",
|
|
115
|
-
"version:minor": "npm version minor",
|
|
116
|
-
"version:major": "npm version major"
|
|
127
|
+
"pnpm": {
|
|
128
|
+
"onlyBuiltDependencies": [
|
|
129
|
+
"unrs-resolver"
|
|
130
|
+
]
|
|
117
131
|
}
|
|
118
|
-
}
|
|
132
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|