@nexart/codemode-sdk 1.8.3 → 1.9.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.
- package/CHANGELOG.md +89 -0
- package/README.md +121 -2
- package/dist/cjs/browser.cjs +3077 -0
- package/dist/cjs/browser.js +3042 -0
- package/dist/cjs/core.cjs +1998 -0
- package/dist/cjs/core.js +1966 -0
- package/dist/cjs/node.cjs +3245 -0
- package/dist/cjs/node.js +3208 -0
- package/dist/esm/browser.cjs +3077 -0
- package/dist/esm/browser.js +3042 -0
- package/dist/esm/core.cjs +1998 -0
- package/dist/esm/core.js +1966 -0
- package/dist/esm/node.cjs +3245 -0
- package/dist/esm/node.js +3208 -0
- package/dist/types/sdk/codemode/attestation.d.ts +24 -0
- package/dist/types/sdk/codemode/attestation.d.ts.map +1 -0
- package/dist/types/sdk/codemode/builder-manifest.d.ts.map +1 -0
- package/dist/types/sdk/codemode/canonicalJson.d.ts +16 -0
- package/dist/types/sdk/codemode/canonicalJson.d.ts.map +1 -0
- package/dist/{sdk → types/sdk}/codemode/core-index.d.ts +5 -1
- package/dist/types/sdk/codemode/core-index.d.ts.map +1 -0
- package/dist/types/sdk/codemode/engine.d.ts.map +1 -0
- package/dist/{sdk → types/sdk}/codemode/entry/browser.d.ts +1 -1
- package/dist/types/sdk/codemode/entry/browser.d.ts.map +1 -0
- package/dist/types/sdk/codemode/entry/node.d.ts.map +1 -0
- package/dist/types/sdk/codemode/execute.d.ts.map +1 -0
- package/dist/types/sdk/codemode/execution-sandbox.d.ts.map +1 -0
- package/dist/types/sdk/codemode/loop-engine.d.ts.map +1 -0
- package/dist/types/sdk/codemode/nodeReceipt.d.ts +65 -0
- package/dist/types/sdk/codemode/nodeReceipt.d.ts.map +1 -0
- package/dist/types/sdk/codemode/p5-runtime.d.ts.map +1 -0
- package/dist/{sdk → types/sdk}/codemode/runtime.d.ts +1 -1
- package/dist/types/sdk/codemode/runtime.d.ts.map +1 -0
- package/dist/types/sdk/codemode/snapshot.d.ts +72 -0
- package/dist/types/sdk/codemode/snapshot.d.ts.map +1 -0
- package/dist/types/sdk/codemode/sound-bridge.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-engine.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/chladniBloom.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/dualVortex.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/geometryIllusion.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/index.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/isoflow.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/loomWeave.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/noiseTerraces.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/orb.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/pixelGlyphs.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/prismFlowFields.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/radialBurst.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/resonantSoundBodies.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/rings.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/squares.d.ts.map +1 -0
- package/dist/types/sdk/codemode/soundart-sketches/waveStripes.d.ts.map +1 -0
- package/dist/types/sdk/codemode/static-engine.d.ts.map +1 -0
- package/dist/{sdk → types/sdk}/codemode/types.d.ts +96 -0
- package/dist/types/sdk/codemode/types.d.ts.map +1 -0
- package/dist/{sdk → types/sdk}/codemode/version.d.ts +2 -2
- package/dist/types/sdk/codemode/version.d.ts.map +1 -0
- package/dist/types/shared/soundSnapshot.d.ts.map +1 -0
- package/examples/sketch-minimal.js +27 -0
- package/examples/sketch-vars.js +59 -0
- package/examples/sketch.js +24 -0
- package/package.json +29 -23
- package/dist/sdk/codemode/builder-manifest.d.ts.map +0 -1
- package/dist/sdk/codemode/builder-manifest.js +0 -97
- package/dist/sdk/codemode/core-index.d.ts.map +0 -1
- package/dist/sdk/codemode/core-index.js +0 -28
- package/dist/sdk/codemode/engine.d.ts.map +0 -1
- package/dist/sdk/codemode/engine.js +0 -67
- package/dist/sdk/codemode/entry/browser.d.ts.map +0 -1
- package/dist/sdk/codemode/entry/browser.js +0 -69
- package/dist/sdk/codemode/entry/node.d.ts.map +0 -1
- package/dist/sdk/codemode/entry/node.js +0 -35
- package/dist/sdk/codemode/execute.d.ts.map +0 -1
- package/dist/sdk/codemode/execute.js +0 -283
- package/dist/sdk/codemode/execution-sandbox.d.ts.map +0 -1
- package/dist/sdk/codemode/execution-sandbox.js +0 -207
- package/dist/sdk/codemode/loop-engine.d.ts.map +0 -1
- package/dist/sdk/codemode/loop-engine.js +0 -229
- package/dist/sdk/codemode/p5-runtime.d.ts.map +0 -1
- package/dist/sdk/codemode/p5-runtime.js +0 -1033
- package/dist/sdk/codemode/runtime.d.ts.map +0 -1
- package/dist/sdk/codemode/runtime.js +0 -220
- package/dist/sdk/codemode/sound-bridge.d.ts.map +0 -1
- package/dist/sdk/codemode/sound-bridge.js +0 -128
- package/dist/sdk/codemode/soundart-engine.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-engine.js +0 -173
- package/dist/sdk/codemode/soundart-sketches/chladniBloom.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/chladniBloom.js +0 -53
- package/dist/sdk/codemode/soundart-sketches/dualVortex.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/dualVortex.js +0 -67
- package/dist/sdk/codemode/soundart-sketches/geometryIllusion.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/geometryIllusion.js +0 -89
- package/dist/sdk/codemode/soundart-sketches/index.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/index.js +0 -72
- package/dist/sdk/codemode/soundart-sketches/isoflow.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/isoflow.js +0 -60
- package/dist/sdk/codemode/soundart-sketches/loomWeave.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/loomWeave.js +0 -59
- package/dist/sdk/codemode/soundart-sketches/noiseTerraces.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/noiseTerraces.js +0 -53
- package/dist/sdk/codemode/soundart-sketches/orb.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/orb.js +0 -50
- package/dist/sdk/codemode/soundart-sketches/pixelGlyphs.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/pixelGlyphs.js +0 -72
- package/dist/sdk/codemode/soundart-sketches/prismFlowFields.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/prismFlowFields.js +0 -51
- package/dist/sdk/codemode/soundart-sketches/radialBurst.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/radialBurst.js +0 -60
- package/dist/sdk/codemode/soundart-sketches/resonantSoundBodies.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/resonantSoundBodies.js +0 -89
- package/dist/sdk/codemode/soundart-sketches/rings.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/rings.js +0 -89
- package/dist/sdk/codemode/soundart-sketches/squares.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/squares.js +0 -52
- package/dist/sdk/codemode/soundart-sketches/waveStripes.d.ts.map +0 -1
- package/dist/sdk/codemode/soundart-sketches/waveStripes.js +0 -44
- package/dist/sdk/codemode/static-engine.d.ts.map +0 -1
- package/dist/sdk/codemode/static-engine.js +0 -157
- package/dist/sdk/codemode/types.d.ts.map +0 -1
- package/dist/sdk/codemode/types.js +0 -34
- package/dist/sdk/codemode/version.d.ts.map +0 -1
- package/dist/sdk/codemode/version.js +0 -17
- package/dist/shared/soundSnapshot.d.ts.map +0 -1
- package/dist/shared/soundSnapshot.js +0 -128
- /package/dist/{sdk → types/sdk}/codemode/builder-manifest.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/engine.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/entry/node.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/execute.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/execution-sandbox.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/loop-engine.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/p5-runtime.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/sound-bridge.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-engine.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/chladniBloom.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/dualVortex.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/geometryIllusion.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/index.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/isoflow.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/loomWeave.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/noiseTerraces.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/orb.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/pixelGlyphs.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/prismFlowFields.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/radialBurst.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/resonantSoundBodies.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/rings.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/squares.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/waveStripes.d.ts +0 -0
- /package/dist/{sdk → types/sdk}/codemode/static-engine.d.ts +0 -0
- /package/dist/{shared → types/shared}/soundSnapshot.d.ts +0 -0
package/package.json
CHANGED
|
@@ -1,36 +1,31 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nexart/codemode-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.9.0",
|
|
4
4
|
"description": "NexArt Code Mode SDK - Deterministic, reproducible, verifiable generative art runtime. Agent-first design for AI coding assistants.",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"main": "./dist/
|
|
7
|
-
"
|
|
6
|
+
"main": "./dist/cjs/browser.cjs",
|
|
7
|
+
"module": "./dist/esm/browser.js",
|
|
8
|
+
"types": "./dist/types/entry/browser.d.ts",
|
|
8
9
|
"exports": {
|
|
9
10
|
".": {
|
|
10
|
-
"
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
},
|
|
14
|
-
"node": {
|
|
15
|
-
"types": "./dist/entry/node.d.ts",
|
|
16
|
-
"import": "./dist/entry/node.js"
|
|
17
|
-
},
|
|
18
|
-
"default": {
|
|
19
|
-
"types": "./dist/entry/browser.d.ts",
|
|
20
|
-
"import": "./dist/entry/browser.js"
|
|
21
|
-
}
|
|
11
|
+
"types": "./dist/types/entry/browser.d.ts",
|
|
12
|
+
"import": "./dist/esm/browser.js",
|
|
13
|
+
"require": "./dist/cjs/browser.cjs"
|
|
22
14
|
},
|
|
23
15
|
"./browser": {
|
|
24
|
-
"types": "./dist/entry/browser.d.ts",
|
|
25
|
-
"import": "./dist/
|
|
16
|
+
"types": "./dist/types/entry/browser.d.ts",
|
|
17
|
+
"import": "./dist/esm/browser.js",
|
|
18
|
+
"require": "./dist/cjs/browser.cjs"
|
|
26
19
|
},
|
|
27
20
|
"./node": {
|
|
28
|
-
"types": "./dist/entry/node.d.ts",
|
|
29
|
-
"import": "./dist/
|
|
21
|
+
"types": "./dist/types/entry/node.d.ts",
|
|
22
|
+
"import": "./dist/esm/node.js",
|
|
23
|
+
"require": "./dist/cjs/node.cjs"
|
|
30
24
|
},
|
|
31
25
|
"./core": {
|
|
32
|
-
"types": "./dist/core-index.d.ts",
|
|
33
|
-
"import": "./dist/core
|
|
26
|
+
"types": "./dist/types/core-index.d.ts",
|
|
27
|
+
"import": "./dist/esm/core.js",
|
|
28
|
+
"require": "./dist/cjs/core.cjs"
|
|
34
29
|
}
|
|
35
30
|
},
|
|
36
31
|
"files": [
|
|
@@ -44,8 +39,13 @@
|
|
|
44
39
|
"builder.manifest.schema.json"
|
|
45
40
|
],
|
|
46
41
|
"scripts": {
|
|
47
|
-
"build": "
|
|
48
|
-
"
|
|
42
|
+
"build": "npm run build:types && npm run build:esm && npm run build:cjs",
|
|
43
|
+
"build:types": "tsc -p tsconfig.types.json",
|
|
44
|
+
"build:esm": "tsup --config tsup.config.ts --format esm",
|
|
45
|
+
"build:cjs": "tsup --config tsup.config.ts --format cjs",
|
|
46
|
+
"test": "npx tsx smoke-test.ts && npx tsx tests/attestation.test.ts",
|
|
47
|
+
"test:attestation": "npx tsx tests/attestation.test.ts",
|
|
48
|
+
"test:node": "node scripts/smoke-node.mjs && node scripts/smoke-node.cjs",
|
|
49
49
|
"example:basic": "npx tsx examples/basic.ts",
|
|
50
50
|
"example:verify": "npx tsx examples/verify.ts",
|
|
51
51
|
"example:agent": "npx tsx examples/agent-quickstart.ts",
|
|
@@ -83,7 +83,13 @@
|
|
|
83
83
|
"publishConfig": {
|
|
84
84
|
"access": "public"
|
|
85
85
|
},
|
|
86
|
+
"dependencies": {
|
|
87
|
+
"@noble/ed25519": "^3.0.0",
|
|
88
|
+
"@noble/hashes": "^1.7.0"
|
|
89
|
+
},
|
|
86
90
|
"devDependencies": {
|
|
91
|
+
"@types/node": "^20.0.0",
|
|
92
|
+
"tsup": "^8.0.0",
|
|
87
93
|
"typescript": "^5.0.0"
|
|
88
94
|
}
|
|
89
95
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"builder-manifest.d.ts","sourceRoot":"","sources":["../../../builder-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAKrD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAiB9E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,IAAI,qBAAqB,GAAG,IAAI,CAEjE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* NexArt Code Mode SDK - Builder Manifest
|
|
3
|
-
* Version: 1.6.0 (Protocol v1.2.0)
|
|
4
|
-
*
|
|
5
|
-
* ╔══════════════════════════════════════════════════════════════════════════╗
|
|
6
|
-
* ║ BUILDER MANIFEST — PASSIVE ATTRIBUTION (WRITE-ONLY) ║
|
|
7
|
-
* ║ ║
|
|
8
|
-
* ║ The Builder Manifest is a declaration of intent, not a capability. ║
|
|
9
|
-
* ║ The SDK does not expose any API to read or inspect manifests. ║
|
|
10
|
-
* ║ ║
|
|
11
|
-
* ║ This is: ║
|
|
12
|
-
* ║ - Declarative (write-only, no read API exposed) ║
|
|
13
|
-
* ║ - Optional (no errors if missing or invalid) ║
|
|
14
|
-
* ║ - Non-enforced (no validation logic) ║
|
|
15
|
-
* ║ - Non-rewarding (no incentives, no tracking) ║
|
|
16
|
-
* ║ ║
|
|
17
|
-
* ║ There is: ║
|
|
18
|
-
* ║ - No SDK API to read manifests ║
|
|
19
|
-
* ║ - No validation ║
|
|
20
|
-
* ║ - No attribution logic ║
|
|
21
|
-
* ║ - No tracking, analytics, or network calls ║
|
|
22
|
-
* ║ ║
|
|
23
|
-
* ║ Execution behavior is identical with or without a manifest. ║
|
|
24
|
-
* ╚══════════════════════════════════════════════════════════════════════════╝
|
|
25
|
-
*/
|
|
26
|
-
/** Internal storage - not accessible to SDK consumers */
|
|
27
|
-
let currentManifest = null;
|
|
28
|
-
/**
|
|
29
|
-
* Register a builder manifest for attribution.
|
|
30
|
-
*
|
|
31
|
-
* This is optional and does not affect execution behavior.
|
|
32
|
-
* The manifest is stored in-memory only and is not:
|
|
33
|
-
* - Serialized to disk
|
|
34
|
-
* - Sent over the network
|
|
35
|
-
* - Logged to console
|
|
36
|
-
* - Used for validation or enforcement
|
|
37
|
-
*
|
|
38
|
-
* @param manifest - Optional builder manifest. Pass undefined to clear.
|
|
39
|
-
*
|
|
40
|
-
* @example
|
|
41
|
-
* ```typescript
|
|
42
|
-
* import { registerBuilderManifest } from "@nexart/codemode-sdk";
|
|
43
|
-
*
|
|
44
|
-
* registerBuilderManifest({
|
|
45
|
-
* protocol: "nexart",
|
|
46
|
-
* manifestVersion: "0.1",
|
|
47
|
-
* app: { name: "My App", url: "https://myapp.com" }
|
|
48
|
-
* });
|
|
49
|
-
* ```
|
|
50
|
-
*/
|
|
51
|
-
export function registerBuilderManifest(manifest) {
|
|
52
|
-
if (!manifest) {
|
|
53
|
-
currentManifest = null;
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
if (manifest.protocol !== 'nexart') {
|
|
57
|
-
currentManifest = null;
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
if (typeof manifest.manifestVersion !== 'string') {
|
|
61
|
-
currentManifest = null;
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
currentManifest = manifest;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Get the currently registered builder manifest.
|
|
68
|
-
*
|
|
69
|
-
* ╔══════════════════════════════════════════════════════════════════════════╗
|
|
70
|
-
* ║ INTERNAL FUNCTION — NOT EXPORTED TO SDK CONSUMERS ║
|
|
71
|
-
* ║ ║
|
|
72
|
-
* ║ This function exists only for internal SDK execution context. ║
|
|
73
|
-
* ║ It is NOT part of the public API and must NOT be exported from index. ║
|
|
74
|
-
* ║ Runtime code and sketch code cannot access this function. ║
|
|
75
|
-
* ╚══════════════════════════════════════════════════════════════════════════╝
|
|
76
|
-
*
|
|
77
|
-
* @internal
|
|
78
|
-
*/
|
|
79
|
-
export function getBuilderManifest() {
|
|
80
|
-
return currentManifest;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Clear the registered builder manifest.
|
|
84
|
-
*
|
|
85
|
-
* ╔══════════════════════════════════════════════════════════════════════════╗
|
|
86
|
-
* ║ INTERNAL FUNCTION — NOT EXPORTED TO SDK CONSUMERS ║
|
|
87
|
-
* ║ ║
|
|
88
|
-
* ║ This function exists only for internal SDK execution context. ║
|
|
89
|
-
* ║ It is NOT part of the public API and must NOT be exported from index. ║
|
|
90
|
-
* ║ Runtime code and sketch code cannot access this function. ║
|
|
91
|
-
* ╚══════════════════════════════════════════════════════════════════════════╝
|
|
92
|
-
*
|
|
93
|
-
* @internal
|
|
94
|
-
*/
|
|
95
|
-
export function clearBuilderManifest() {
|
|
96
|
-
currentManifest = null;
|
|
97
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"core-index.d.ts","sourceRoot":"","sources":["../../../core-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAA+B,gBAAgB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG1F,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,OAAO,EACP,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,SAAS,EACd,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,YAAY,GACb,MAAM,UAAU,CAAC;AAElB;;GAEG;AACH,eAAO,MAAM,WAAW,UAAe,CAAC;AACxC,eAAO,MAAM,QAAQ,yBAAyB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @nexart/codemode-sdk — Core Exports
|
|
3
|
-
* See version.ts for SDK version (single source of truth)
|
|
4
|
-
*
|
|
5
|
-
* Canonical execution engine for NexArt Code Mode.
|
|
6
|
-
* This is the single source of truth for Code Mode semantics.
|
|
7
|
-
*
|
|
8
|
-
* Enforcement: HARD
|
|
9
|
-
*/
|
|
10
|
-
import { SDK_VERSION as _SDK_VERSION, PROTOCOL_VERSION, PROTOCOL_PHASE } from './version';
|
|
11
|
-
// Core execution
|
|
12
|
-
export { executeCodeMode, validateCodeModeSource, } from './execute';
|
|
13
|
-
// Protocol types
|
|
14
|
-
export { PROTOCOL_IDENTITY, DEFAULT_VARS, DEFAULT_CONFIG, } from './types';
|
|
15
|
-
// Runtime
|
|
16
|
-
export { createP5Runtime, injectTimeVariables, createProtocolVAR, VAR_COUNT, VAR_MIN, VAR_MAX, CODE_MODE_PROTOCOL_VERSION, CODE_MODE_PROTOCOL_PHASE, CODE_MODE_ENFORCEMENT, } from './p5-runtime';
|
|
17
|
-
// Static engine
|
|
18
|
-
export { runStaticMode, } from './static-engine';
|
|
19
|
-
// Loop engine
|
|
20
|
-
export { runLoopMode, cancelLoopMode, } from './loop-engine';
|
|
21
|
-
// Engine utilities
|
|
22
|
-
export { createEngine, } from './engine';
|
|
23
|
-
/**
|
|
24
|
-
* SDK Identity — imported from version.ts (single source of truth)
|
|
25
|
-
*/
|
|
26
|
-
export const SDK_VERSION = _SDK_VERSION;
|
|
27
|
-
export const SDK_NAME = '@nexart/codemode-sdk';
|
|
28
|
-
export { PROTOCOL_VERSION, PROTOCOL_PHASE };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAc,MAAM,SAAS,CAAC;AAKhE;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CA+CzD;AAGD,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5F,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* NexArt Code Mode Runtime SDK
|
|
3
|
-
* Version: 0.1.0
|
|
4
|
-
*
|
|
5
|
-
* Main entry point for the Code Mode runtime engine.
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* const engine = createEngine({ mode: 'static' });
|
|
9
|
-
* engine.run({
|
|
10
|
-
* code: 'function setup() { background(255); ellipse(width/2, height/2, 100); }',
|
|
11
|
-
* onComplete: (result) => console.log(result.blob)
|
|
12
|
-
* });
|
|
13
|
-
*/
|
|
14
|
-
import { DEFAULT_CONFIG } from './types';
|
|
15
|
-
import { runStaticMode } from './static-engine';
|
|
16
|
-
import { runLoopMode, cancelLoopMode } from './loop-engine';
|
|
17
|
-
/**
|
|
18
|
-
* Create a NexArt Code Mode rendering engine.
|
|
19
|
-
*
|
|
20
|
-
* @param config - Engine configuration
|
|
21
|
-
* @returns Engine instance
|
|
22
|
-
*/
|
|
23
|
-
export function createEngine(config) {
|
|
24
|
-
const resolvedConfig = {
|
|
25
|
-
mode: config.mode,
|
|
26
|
-
width: config.width ?? DEFAULT_CONFIG.width,
|
|
27
|
-
height: config.height ?? DEFAULT_CONFIG.height,
|
|
28
|
-
duration: config.duration ?? DEFAULT_CONFIG.duration,
|
|
29
|
-
fps: config.fps ?? DEFAULT_CONFIG.fps,
|
|
30
|
-
};
|
|
31
|
-
let isRunning = false;
|
|
32
|
-
const run = async (options) => {
|
|
33
|
-
if (isRunning) {
|
|
34
|
-
throw new Error('Engine is already running. Call stop() first.');
|
|
35
|
-
}
|
|
36
|
-
isRunning = true;
|
|
37
|
-
try {
|
|
38
|
-
if (resolvedConfig.mode === 'static') {
|
|
39
|
-
await runStaticMode(resolvedConfig, options);
|
|
40
|
-
}
|
|
41
|
-
else if (resolvedConfig.mode === 'loop') {
|
|
42
|
-
await runLoopMode(resolvedConfig, options);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
throw new Error(`Unknown mode: ${resolvedConfig.mode}`);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
finally {
|
|
49
|
-
isRunning = false;
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
const stop = () => {
|
|
53
|
-
if (resolvedConfig.mode === 'loop') {
|
|
54
|
-
cancelLoopMode();
|
|
55
|
-
}
|
|
56
|
-
isRunning = false;
|
|
57
|
-
};
|
|
58
|
-
const getConfig = () => {
|
|
59
|
-
return { ...resolvedConfig };
|
|
60
|
-
};
|
|
61
|
-
return {
|
|
62
|
-
run,
|
|
63
|
-
stop,
|
|
64
|
-
getConfig,
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
export { DEFAULT_CONFIG } from './types';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../entry/browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAOH,YAAY,EACV,UAAU,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,UAAU,CAAC;AAKlB,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,OAAO,EACP,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,SAAS,EACT,eAAe,GAChB,MAAM,eAAe,CAAC;AAKvB,OAAO,EACL,WAAW,EACX,cAAc,GACf,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EACL,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,YAAY,GACb,MAAM,WAAW,CAAC;AAKnB,OAAO,EACL,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,cAAc,EACd,YAAY,EACZ,aAAa,IAAI,iBAAiB,GACnC,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,WAAW,EACX,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAK5B,eAAO,MAAM,WAAW,UAAe,CAAC;AACxC,eAAO,MAAM,QAAQ,yBAAyB,CAAC;AAC/C,eAAO,MAAM,SAAS,YAAY,CAAC;AAEnC;;;;;;;;;;;GAWG"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @nexart/codemode-sdk/browser — Browser-Safe Entry Point
|
|
3
|
-
* See ../version.ts for SDK version (single source of truth)
|
|
4
|
-
*
|
|
5
|
-
* ╔══════════════════════════════════════════════════════════════════════════╗
|
|
6
|
-
* ║ BROWSER-SAFE SDK ENTRY POINT ║
|
|
7
|
-
* ║ ║
|
|
8
|
-
* ║ This entrypoint exports ONLY browser-safe modules. ║
|
|
9
|
-
* ║ It does NOT include static-engine or any Node.js dependencies. ║
|
|
10
|
-
* ║ ║
|
|
11
|
-
* ║ Use this for Vite, React, Next.js, or any browser environment. ║
|
|
12
|
-
* ║ ║
|
|
13
|
-
* ║ For Node.js/server: import from '@nexart/codemode-sdk/node' ║
|
|
14
|
-
* ║ ║
|
|
15
|
-
* ║ AI AGENTS: Start with createRuntime({ seed, strict: true }) ║
|
|
16
|
-
* ╚══════════════════════════════════════════════════════════════════════════╝
|
|
17
|
-
*/
|
|
18
|
-
import { SDK_VERSION as _SDK_VERSION } from '../version';
|
|
19
|
-
export { PROTOCOL_IDENTITY, DEFAULT_VARS, DEFAULT_CONFIG, } from '../types';
|
|
20
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
21
|
-
// EXECUTION SANDBOX — Browser-safe (no Node dependencies)
|
|
22
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
23
|
-
export { FORBIDDEN_APIS, FORBIDDEN_API_NAMES, createSafeMath, buildSandboxContext, createSandboxedExecutor, executeSandboxed, } from '../execution-sandbox';
|
|
24
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
25
|
-
// P5 RUNTIME — Browser-safe (DOM-based canvas)
|
|
26
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
27
|
-
export { createP5Runtime, injectTimeVariables, injectProtocolVariables, createProtocolVAR, VAR_COUNT, VAR_MIN, VAR_MAX, CODE_MODE_PROTOCOL_VERSION, CODE_MODE_PROTOCOL_PHASE, CODE_MODE_ENFORCEMENT, } from '../p5-runtime';
|
|
28
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
29
|
-
// LOOP ENGINE — Browser-safe (uses document.createElement, fetch)
|
|
30
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
31
|
-
export { runLoopMode, cancelLoopMode, } from '../loop-engine';
|
|
32
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
33
|
-
// VALIDATION — Browser-safe (pure logic)
|
|
34
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
35
|
-
export { validateCodeModeSource, } from '../execute';
|
|
36
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
37
|
-
// ENGINE FACTORY — Browser-safe wrapper
|
|
38
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
39
|
-
export { createEngine, } from '../engine';
|
|
40
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
41
|
-
// BUILDER MANIFEST — Browser-safe (data-only, no side effects)
|
|
42
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
43
|
-
export { registerBuilderManifest, } from '../builder-manifest';
|
|
44
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
45
|
-
// AGENT-FIRST RUNTIME — Browser-safe, no Node dependencies
|
|
46
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
47
|
-
export { createRuntime, NexArtRuntime, RUNTIME_VERSION, } from '../runtime';
|
|
48
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
49
|
-
// SOUNDART ENGINE — Browser-safe (canvas-based rendering)
|
|
50
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
51
|
-
export { renderSoundArtViaCodeMode, canRenderViaCodeMode, getCodeModeAvailableStyles, } from '../soundart-engine';
|
|
52
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
53
|
-
// SDK IDENTITY — imported from version.ts (single source of truth)
|
|
54
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
55
|
-
export const SDK_VERSION = _SDK_VERSION;
|
|
56
|
-
export const SDK_NAME = '@nexart/codemode-sdk';
|
|
57
|
-
export const SDK_ENTRY = 'browser';
|
|
58
|
-
/**
|
|
59
|
-
* Note: executeCodeMode is NOT exported from browser entry.
|
|
60
|
-
*
|
|
61
|
-
* In browser environments, static mode requires the canvas package which
|
|
62
|
-
* has Node.js dependencies. For browser apps:
|
|
63
|
-
*
|
|
64
|
-
* - Use runLoopMode() directly for animations
|
|
65
|
-
* - For static rendering, use the server-side endpoint
|
|
66
|
-
* - Or import from '@nexart/codemode-sdk/node' in SSR contexts
|
|
67
|
-
*
|
|
68
|
-
* AI AGENTS: Use createRuntime({ seed, strict: true }) for deterministic execution.
|
|
69
|
-
*/
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../entry/node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,cAAc,WAAW,CAAC;AAK1B,OAAO,EACL,aAAa,GACd,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EACL,eAAe,GAChB,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAClD,eAAO,MAAM,SAAS,SAAS,CAAC"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @nexart/codemode-sdk/node — Node.js Entry Point
|
|
3
|
-
* See ../version.ts for SDK version (single source of truth)
|
|
4
|
-
*
|
|
5
|
-
* ╔══════════════════════════════════════════════════════════════════════════╗
|
|
6
|
-
* ║ NODE.JS SDK ENTRY POINT ║
|
|
7
|
-
* ║ ║
|
|
8
|
-
* ║ This entrypoint exports Node.js-specific modules that require: ║
|
|
9
|
-
* ║ - canvas package (node-canvas) ║
|
|
10
|
-
* ║ - Node.js built-ins (module, fs, path) ║
|
|
11
|
-
* ║ ║
|
|
12
|
-
* ║ Use this for server-side rendering, oracles, or CLI tools. ║
|
|
13
|
-
* ║ ║
|
|
14
|
-
* ║ For browser/Vite: import from '@nexart/codemode-sdk/browser' ║
|
|
15
|
-
* ║ ║
|
|
16
|
-
* ║ AI AGENTS: Start with createRuntime({ seed, strict: true }) ║
|
|
17
|
-
* ╚══════════════════════════════════════════════════════════════════════════╝
|
|
18
|
-
*/
|
|
19
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
20
|
-
// RE-EXPORT ALL BROWSER-SAFE MODULES
|
|
21
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
22
|
-
export * from './browser';
|
|
23
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
24
|
-
// STATIC ENGINE — Node.js only (requires canvas package)
|
|
25
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
26
|
-
export { runStaticMode, } from '../static-engine';
|
|
27
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
28
|
-
// CANONICAL EXECUTION — Node.js only (imports static-engine)
|
|
29
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
30
|
-
export { executeCodeMode, } from '../execute';
|
|
31
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
32
|
-
// SDK IDENTITY (override browser entry)
|
|
33
|
-
// ═══════════════════════════════════════════════════════════════════════════
|
|
34
|
-
export { SDK_VERSION, SDK_NAME } from './browser';
|
|
35
|
-
export const SDK_ENTRY = 'node';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../execute.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EAMtB,MAAM,SAAS,CAAC;AAuNjB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CAmChC;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAuCpH"}
|