@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.
Files changed (150) hide show
  1. package/CHANGELOG.md +89 -0
  2. package/README.md +121 -2
  3. package/dist/cjs/browser.cjs +3077 -0
  4. package/dist/cjs/browser.js +3042 -0
  5. package/dist/cjs/core.cjs +1998 -0
  6. package/dist/cjs/core.js +1966 -0
  7. package/dist/cjs/node.cjs +3245 -0
  8. package/dist/cjs/node.js +3208 -0
  9. package/dist/esm/browser.cjs +3077 -0
  10. package/dist/esm/browser.js +3042 -0
  11. package/dist/esm/core.cjs +1998 -0
  12. package/dist/esm/core.js +1966 -0
  13. package/dist/esm/node.cjs +3245 -0
  14. package/dist/esm/node.js +3208 -0
  15. package/dist/types/sdk/codemode/attestation.d.ts +24 -0
  16. package/dist/types/sdk/codemode/attestation.d.ts.map +1 -0
  17. package/dist/types/sdk/codemode/builder-manifest.d.ts.map +1 -0
  18. package/dist/types/sdk/codemode/canonicalJson.d.ts +16 -0
  19. package/dist/types/sdk/codemode/canonicalJson.d.ts.map +1 -0
  20. package/dist/{sdk → types/sdk}/codemode/core-index.d.ts +5 -1
  21. package/dist/types/sdk/codemode/core-index.d.ts.map +1 -0
  22. package/dist/types/sdk/codemode/engine.d.ts.map +1 -0
  23. package/dist/{sdk → types/sdk}/codemode/entry/browser.d.ts +1 -1
  24. package/dist/types/sdk/codemode/entry/browser.d.ts.map +1 -0
  25. package/dist/types/sdk/codemode/entry/node.d.ts.map +1 -0
  26. package/dist/types/sdk/codemode/execute.d.ts.map +1 -0
  27. package/dist/types/sdk/codemode/execution-sandbox.d.ts.map +1 -0
  28. package/dist/types/sdk/codemode/loop-engine.d.ts.map +1 -0
  29. package/dist/types/sdk/codemode/nodeReceipt.d.ts +65 -0
  30. package/dist/types/sdk/codemode/nodeReceipt.d.ts.map +1 -0
  31. package/dist/types/sdk/codemode/p5-runtime.d.ts.map +1 -0
  32. package/dist/{sdk → types/sdk}/codemode/runtime.d.ts +1 -1
  33. package/dist/types/sdk/codemode/runtime.d.ts.map +1 -0
  34. package/dist/types/sdk/codemode/snapshot.d.ts +72 -0
  35. package/dist/types/sdk/codemode/snapshot.d.ts.map +1 -0
  36. package/dist/types/sdk/codemode/sound-bridge.d.ts.map +1 -0
  37. package/dist/types/sdk/codemode/soundart-engine.d.ts.map +1 -0
  38. package/dist/types/sdk/codemode/soundart-sketches/chladniBloom.d.ts.map +1 -0
  39. package/dist/types/sdk/codemode/soundart-sketches/dualVortex.d.ts.map +1 -0
  40. package/dist/types/sdk/codemode/soundart-sketches/geometryIllusion.d.ts.map +1 -0
  41. package/dist/types/sdk/codemode/soundart-sketches/index.d.ts.map +1 -0
  42. package/dist/types/sdk/codemode/soundart-sketches/isoflow.d.ts.map +1 -0
  43. package/dist/types/sdk/codemode/soundart-sketches/loomWeave.d.ts.map +1 -0
  44. package/dist/types/sdk/codemode/soundart-sketches/noiseTerraces.d.ts.map +1 -0
  45. package/dist/types/sdk/codemode/soundart-sketches/orb.d.ts.map +1 -0
  46. package/dist/types/sdk/codemode/soundart-sketches/pixelGlyphs.d.ts.map +1 -0
  47. package/dist/types/sdk/codemode/soundart-sketches/prismFlowFields.d.ts.map +1 -0
  48. package/dist/types/sdk/codemode/soundart-sketches/radialBurst.d.ts.map +1 -0
  49. package/dist/types/sdk/codemode/soundart-sketches/resonantSoundBodies.d.ts.map +1 -0
  50. package/dist/types/sdk/codemode/soundart-sketches/rings.d.ts.map +1 -0
  51. package/dist/types/sdk/codemode/soundart-sketches/squares.d.ts.map +1 -0
  52. package/dist/types/sdk/codemode/soundart-sketches/waveStripes.d.ts.map +1 -0
  53. package/dist/types/sdk/codemode/static-engine.d.ts.map +1 -0
  54. package/dist/{sdk → types/sdk}/codemode/types.d.ts +96 -0
  55. package/dist/types/sdk/codemode/types.d.ts.map +1 -0
  56. package/dist/{sdk → types/sdk}/codemode/version.d.ts +2 -2
  57. package/dist/types/sdk/codemode/version.d.ts.map +1 -0
  58. package/dist/types/shared/soundSnapshot.d.ts.map +1 -0
  59. package/examples/sketch-minimal.js +27 -0
  60. package/examples/sketch-vars.js +59 -0
  61. package/examples/sketch.js +24 -0
  62. package/package.json +29 -23
  63. package/dist/sdk/codemode/builder-manifest.d.ts.map +0 -1
  64. package/dist/sdk/codemode/builder-manifest.js +0 -97
  65. package/dist/sdk/codemode/core-index.d.ts.map +0 -1
  66. package/dist/sdk/codemode/core-index.js +0 -28
  67. package/dist/sdk/codemode/engine.d.ts.map +0 -1
  68. package/dist/sdk/codemode/engine.js +0 -67
  69. package/dist/sdk/codemode/entry/browser.d.ts.map +0 -1
  70. package/dist/sdk/codemode/entry/browser.js +0 -69
  71. package/dist/sdk/codemode/entry/node.d.ts.map +0 -1
  72. package/dist/sdk/codemode/entry/node.js +0 -35
  73. package/dist/sdk/codemode/execute.d.ts.map +0 -1
  74. package/dist/sdk/codemode/execute.js +0 -283
  75. package/dist/sdk/codemode/execution-sandbox.d.ts.map +0 -1
  76. package/dist/sdk/codemode/execution-sandbox.js +0 -207
  77. package/dist/sdk/codemode/loop-engine.d.ts.map +0 -1
  78. package/dist/sdk/codemode/loop-engine.js +0 -229
  79. package/dist/sdk/codemode/p5-runtime.d.ts.map +0 -1
  80. package/dist/sdk/codemode/p5-runtime.js +0 -1033
  81. package/dist/sdk/codemode/runtime.d.ts.map +0 -1
  82. package/dist/sdk/codemode/runtime.js +0 -220
  83. package/dist/sdk/codemode/sound-bridge.d.ts.map +0 -1
  84. package/dist/sdk/codemode/sound-bridge.js +0 -128
  85. package/dist/sdk/codemode/soundart-engine.d.ts.map +0 -1
  86. package/dist/sdk/codemode/soundart-engine.js +0 -173
  87. package/dist/sdk/codemode/soundart-sketches/chladniBloom.d.ts.map +0 -1
  88. package/dist/sdk/codemode/soundart-sketches/chladniBloom.js +0 -53
  89. package/dist/sdk/codemode/soundart-sketches/dualVortex.d.ts.map +0 -1
  90. package/dist/sdk/codemode/soundart-sketches/dualVortex.js +0 -67
  91. package/dist/sdk/codemode/soundart-sketches/geometryIllusion.d.ts.map +0 -1
  92. package/dist/sdk/codemode/soundart-sketches/geometryIllusion.js +0 -89
  93. package/dist/sdk/codemode/soundart-sketches/index.d.ts.map +0 -1
  94. package/dist/sdk/codemode/soundart-sketches/index.js +0 -72
  95. package/dist/sdk/codemode/soundart-sketches/isoflow.d.ts.map +0 -1
  96. package/dist/sdk/codemode/soundart-sketches/isoflow.js +0 -60
  97. package/dist/sdk/codemode/soundart-sketches/loomWeave.d.ts.map +0 -1
  98. package/dist/sdk/codemode/soundart-sketches/loomWeave.js +0 -59
  99. package/dist/sdk/codemode/soundart-sketches/noiseTerraces.d.ts.map +0 -1
  100. package/dist/sdk/codemode/soundart-sketches/noiseTerraces.js +0 -53
  101. package/dist/sdk/codemode/soundart-sketches/orb.d.ts.map +0 -1
  102. package/dist/sdk/codemode/soundart-sketches/orb.js +0 -50
  103. package/dist/sdk/codemode/soundart-sketches/pixelGlyphs.d.ts.map +0 -1
  104. package/dist/sdk/codemode/soundart-sketches/pixelGlyphs.js +0 -72
  105. package/dist/sdk/codemode/soundart-sketches/prismFlowFields.d.ts.map +0 -1
  106. package/dist/sdk/codemode/soundart-sketches/prismFlowFields.js +0 -51
  107. package/dist/sdk/codemode/soundart-sketches/radialBurst.d.ts.map +0 -1
  108. package/dist/sdk/codemode/soundart-sketches/radialBurst.js +0 -60
  109. package/dist/sdk/codemode/soundart-sketches/resonantSoundBodies.d.ts.map +0 -1
  110. package/dist/sdk/codemode/soundart-sketches/resonantSoundBodies.js +0 -89
  111. package/dist/sdk/codemode/soundart-sketches/rings.d.ts.map +0 -1
  112. package/dist/sdk/codemode/soundart-sketches/rings.js +0 -89
  113. package/dist/sdk/codemode/soundart-sketches/squares.d.ts.map +0 -1
  114. package/dist/sdk/codemode/soundart-sketches/squares.js +0 -52
  115. package/dist/sdk/codemode/soundart-sketches/waveStripes.d.ts.map +0 -1
  116. package/dist/sdk/codemode/soundart-sketches/waveStripes.js +0 -44
  117. package/dist/sdk/codemode/static-engine.d.ts.map +0 -1
  118. package/dist/sdk/codemode/static-engine.js +0 -157
  119. package/dist/sdk/codemode/types.d.ts.map +0 -1
  120. package/dist/sdk/codemode/types.js +0 -34
  121. package/dist/sdk/codemode/version.d.ts.map +0 -1
  122. package/dist/sdk/codemode/version.js +0 -17
  123. package/dist/shared/soundSnapshot.d.ts.map +0 -1
  124. package/dist/shared/soundSnapshot.js +0 -128
  125. /package/dist/{sdk → types/sdk}/codemode/builder-manifest.d.ts +0 -0
  126. /package/dist/{sdk → types/sdk}/codemode/engine.d.ts +0 -0
  127. /package/dist/{sdk → types/sdk}/codemode/entry/node.d.ts +0 -0
  128. /package/dist/{sdk → types/sdk}/codemode/execute.d.ts +0 -0
  129. /package/dist/{sdk → types/sdk}/codemode/execution-sandbox.d.ts +0 -0
  130. /package/dist/{sdk → types/sdk}/codemode/loop-engine.d.ts +0 -0
  131. /package/dist/{sdk → types/sdk}/codemode/p5-runtime.d.ts +0 -0
  132. /package/dist/{sdk → types/sdk}/codemode/sound-bridge.d.ts +0 -0
  133. /package/dist/{sdk → types/sdk}/codemode/soundart-engine.d.ts +0 -0
  134. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/chladniBloom.d.ts +0 -0
  135. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/dualVortex.d.ts +0 -0
  136. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/geometryIllusion.d.ts +0 -0
  137. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/index.d.ts +0 -0
  138. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/isoflow.d.ts +0 -0
  139. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/loomWeave.d.ts +0 -0
  140. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/noiseTerraces.d.ts +0 -0
  141. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/orb.d.ts +0 -0
  142. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/pixelGlyphs.d.ts +0 -0
  143. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/prismFlowFields.d.ts +0 -0
  144. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/radialBurst.d.ts +0 -0
  145. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/resonantSoundBodies.d.ts +0 -0
  146. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/rings.d.ts +0 -0
  147. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/squares.d.ts +0 -0
  148. /package/dist/{sdk → types/sdk}/codemode/soundart-sketches/waveStripes.d.ts +0 -0
  149. /package/dist/{sdk → types/sdk}/codemode/static-engine.d.ts +0 -0
  150. /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.8.3",
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/entry/browser.js",
7
- "types": "./dist/entry/browser.d.ts",
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
- "browser": {
11
- "types": "./dist/entry/browser.d.ts",
12
- "import": "./dist/entry/browser.js"
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/entry/browser.js"
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/entry/node.js"
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-index.js"
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": "tsc",
48
- "test": "npx tsx smoke-test.ts",
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"}