@pinepaper.studio/mcp-server 1.2.2 → 1.3.1

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 (73) hide show
  1. package/README.md +109 -2
  2. package/dist/assets/asset-manager.d.ts +75 -0
  3. package/dist/assets/asset-manager.d.ts.map +1 -0
  4. package/dist/assets/asset-manager.js +156 -0
  5. package/dist/assets/asset-manager.js.map +1 -0
  6. package/dist/assets/index.d.ts +12 -0
  7. package/dist/assets/index.d.ts.map +1 -0
  8. package/dist/assets/index.js +12 -0
  9. package/dist/assets/index.js.map +1 -0
  10. package/dist/assets/repositories/fontawesome.d.ts +43 -0
  11. package/dist/assets/repositories/fontawesome.d.ts.map +1 -0
  12. package/dist/assets/repositories/fontawesome.js +163 -0
  13. package/dist/assets/repositories/fontawesome.js.map +1 -0
  14. package/dist/assets/repositories/iconify.d.ts +44 -0
  15. package/dist/assets/repositories/iconify.d.ts.map +1 -0
  16. package/dist/assets/repositories/iconify.js +208 -0
  17. package/dist/assets/repositories/iconify.js.map +1 -0
  18. package/dist/assets/repositories/openclipart.d.ts +41 -0
  19. package/dist/assets/repositories/openclipart.d.ts.map +1 -0
  20. package/dist/assets/repositories/openclipart.js +138 -0
  21. package/dist/assets/repositories/openclipart.js.map +1 -0
  22. package/dist/assets/repositories/svgrepo.d.ts +61 -0
  23. package/dist/assets/repositories/svgrepo.d.ts.map +1 -0
  24. package/dist/assets/repositories/svgrepo.js +276 -0
  25. package/dist/assets/repositories/svgrepo.js.map +1 -0
  26. package/dist/assets/types.d.ts +85 -0
  27. package/dist/assets/types.d.ts.map +1 -0
  28. package/dist/assets/types.js +7 -0
  29. package/dist/assets/types.js.map +1 -0
  30. package/dist/execution/canvas-state.d.ts +65 -0
  31. package/dist/execution/canvas-state.d.ts.map +1 -0
  32. package/dist/execution/canvas-state.js +165 -0
  33. package/dist/execution/canvas-state.js.map +1 -0
  34. package/dist/execution/index.d.ts +8 -0
  35. package/dist/execution/index.d.ts.map +1 -0
  36. package/dist/execution/index.js +8 -0
  37. package/dist/execution/index.js.map +1 -0
  38. package/dist/metrics/index.d.ts +8 -0
  39. package/dist/metrics/index.d.ts.map +1 -0
  40. package/dist/metrics/index.js +8 -0
  41. package/dist/metrics/index.js.map +1 -0
  42. package/dist/metrics/performance-tracker.d.ts +96 -0
  43. package/dist/metrics/performance-tracker.d.ts.map +1 -0
  44. package/dist/metrics/performance-tracker.js +270 -0
  45. package/dist/metrics/performance-tracker.js.map +1 -0
  46. package/dist/metrics/types.d.ts +86 -0
  47. package/dist/metrics/types.d.ts.map +1 -0
  48. package/dist/metrics/types.js +7 -0
  49. package/dist/metrics/types.js.map +1 -0
  50. package/dist/tools/definitions.d.ts.map +1 -1
  51. package/dist/tools/definitions.js +476 -0
  52. package/dist/tools/definitions.js.map +1 -1
  53. package/dist/tools/handlers.d.ts.map +1 -1
  54. package/dist/tools/handlers.js +301 -37
  55. package/dist/tools/handlers.js.map +1 -1
  56. package/dist/tools/p5-compat/index.d.ts +8 -0
  57. package/dist/tools/p5-compat/index.d.ts.map +1 -0
  58. package/dist/tools/p5-compat/index.js +8 -0
  59. package/dist/tools/p5-compat/index.js.map +1 -0
  60. package/dist/tools/p5-compat/p5-helpers.d.ts +25 -0
  61. package/dist/tools/p5-compat/p5-helpers.d.ts.map +1 -0
  62. package/dist/tools/p5-compat/p5-helpers.js +399 -0
  63. package/dist/tools/p5-compat/p5-helpers.js.map +1 -0
  64. package/dist/types/code-generator.d.ts +4 -0
  65. package/dist/types/code-generator.d.ts.map +1 -1
  66. package/dist/types/code-generator.js +8 -0
  67. package/dist/types/code-generator.js.map +1 -1
  68. package/dist/types/schemas.d.ts +77 -0
  69. package/dist/types/schemas.d.ts.map +1 -1
  70. package/dist/types/schemas.js +34 -0
  71. package/dist/types/schemas.js.map +1 -1
  72. package/manifest.json +18 -2
  73. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/tools/handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/tools/handlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * p5.js Compatibility Module for PinePaper MCP Server
3
+ *
4
+ * Provides p5.js-style drawing functions that wrap Paper.js,
5
+ * allowing Claude to use familiar p5.js syntax.
6
+ */
7
+ export { P5_HELPERS, generateP5DrawCode } from './p5-helpers.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/p5-compat/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * p5.js Compatibility Module for PinePaper MCP Server
3
+ *
4
+ * Provides p5.js-style drawing functions that wrap Paper.js,
5
+ * allowing Claude to use familiar p5.js syntax.
6
+ */
7
+ export { P5_HELPERS, generateP5DrawCode } from './p5-helpers.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/p5-compat/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * p5.js Compatibility Helpers for PinePaper
3
+ *
4
+ * This module provides p5.js-style drawing functions that wrap Paper.js.
5
+ * These helpers are injected into the browser context to allow Claude
6
+ * to use familiar p5.js syntax when drawing on the PinePaper canvas.
7
+ *
8
+ * SUPPORTED FUNCTIONS (v1.3.1):
9
+ * - Shapes: circle, ellipse, rect, line, triangle, quad, arc, point
10
+ * - Style: fill, noFill, stroke, noStroke, strokeWeight, background
11
+ * - Math: random, map, constrain, dist, lerp, radians, degrees
12
+ * - Canvas: width, height
13
+ * - Mode: rectMode, ellipseMode
14
+ * - Constants: PI, TWO_PI, HALF_PI, QUARTER_PI, CENTER, CORNER
15
+ */
16
+ /**
17
+ * Browser-side p5.js compatibility helpers.
18
+ * This code is injected into the PinePaper page context and executed via eval().
19
+ */
20
+ export declare const P5_HELPERS = "\n(function() {\n // Prevent double-initialization\n if (window._p5Initialized) {\n console.log('[p5-compat] Already initialized');\n return;\n }\n\n // ==========================================================================\n // STATE MANAGEMENT\n // ==========================================================================\n\n window._p5State = {\n fillColor: '#ffffff',\n strokeColor: '#000000',\n strokeWidth: 1,\n rectMode: 'corner',\n ellipseMode: 'center'\n };\n\n // ==========================================================================\n // CONSTANTS\n // ==========================================================================\n\n window.PI = Math.PI;\n window.TWO_PI = Math.PI * 2;\n window.HALF_PI = Math.PI / 2;\n window.QUARTER_PI = Math.PI / 4;\n\n window.CENTER = 'center';\n window.CORNER = 'corner';\n\n // ==========================================================================\n // CANVAS PROPERTIES\n // ==========================================================================\n\n Object.defineProperty(window, 'width', {\n get: function() {\n return paper.view ? paper.view.size.width : 800;\n },\n configurable: true\n });\n\n Object.defineProperty(window, 'height', {\n get: function() {\n return paper.view ? paper.view.size.height : 600;\n },\n configurable: true\n });\n\n // ==========================================================================\n // MATH UTILITIES\n // ==========================================================================\n\n window.random = function(min, max) {\n if (arguments.length === 0) {\n return Math.random();\n } else if (arguments.length === 1) {\n if (Array.isArray(min)) {\n // random(array) - return random element\n return min[Math.floor(Math.random() * min.length)];\n }\n // random(max) - return 0 to max\n return Math.random() * min;\n } else {\n // random(min, max)\n return Math.random() * (max - min) + min;\n }\n };\n\n window.map = function(value, start1, stop1, start2, stop2) {\n return start2 + (stop2 - start2) * ((value - start1) / (stop1 - start1));\n };\n\n window.constrain = function(value, min, max) {\n return Math.min(Math.max(value, min), max);\n };\n\n window.dist = function(x1, y1, x2, y2) {\n return Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));\n };\n\n window.lerp = function(start, stop, amount) {\n return start + (stop - start) * amount;\n };\n\n window.radians = function(degrees) {\n return degrees * Math.PI / 180;\n };\n\n window.degrees = function(radians) {\n return radians * 180 / Math.PI;\n };\n\n // ==========================================================================\n // STYLE FUNCTIONS\n // ==========================================================================\n\n /**\n * Parse color arguments into a valid color string.\n * Supports: fill(gray), fill(r,g,b), fill(r,g,b,a), fill('#hex')\n */\n function parseColor(args) {\n if (args.length === 0) return null;\n\n if (args.length === 1) {\n var val = args[0];\n if (typeof val === 'string') {\n return val;\n } else if (typeof val === 'number') {\n // Grayscale\n return 'rgb(' + val + ', ' + val + ', ' + val + ')';\n }\n } else if (args.length === 3) {\n // RGB\n return 'rgb(' + args[0] + ', ' + args[1] + ', ' + args[2] + ')';\n } else if (args.length === 4) {\n // RGBA (p5 uses 0-255 for alpha, CSS uses 0-1)\n return 'rgba(' + args[0] + ', ' + args[1] + ', ' + args[2] + ', ' + (args[3] / 255) + ')';\n }\n\n return null;\n }\n\n window.fill = function() {\n var color = parseColor(Array.prototype.slice.call(arguments));\n window._p5State.fillColor = color;\n };\n\n window.noFill = function() {\n window._p5State.fillColor = null;\n };\n\n window.stroke = function() {\n var color = parseColor(Array.prototype.slice.call(arguments));\n window._p5State.strokeColor = color;\n };\n\n window.noStroke = function() {\n window._p5State.strokeColor = null;\n };\n\n window.strokeWeight = function(weight) {\n window._p5State.strokeWidth = weight;\n };\n\n window.background = function() {\n var color = parseColor(Array.prototype.slice.call(arguments));\n if (color && typeof app !== 'undefined' && app.setBackgroundColor) {\n app.setBackgroundColor(color);\n }\n };\n\n // ==========================================================================\n // MODE FUNCTIONS\n // ==========================================================================\n\n window.rectMode = function(mode) {\n window._p5State.rectMode = mode.toLowerCase();\n };\n\n window.ellipseMode = function(mode) {\n window._p5State.ellipseMode = mode.toLowerCase();\n };\n\n // ==========================================================================\n // SHAPE FUNCTIONS\n // ==========================================================================\n\n /**\n * Apply current style state to an item\n */\n function applyStyle(item) {\n if (window._p5State.fillColor) {\n item.fillColor = window._p5State.fillColor;\n }\n if (window._p5State.strokeColor) {\n item.strokeColor = window._p5State.strokeColor;\n item.strokeWidth = window._p5State.strokeWidth;\n }\n }\n\n /**\n * Register item with PinePaper's ItemRegistry\n */\n function registerItem(item, type) {\n if (typeof app !== 'undefined' && app.registerItem) {\n app.registerItem(item, type, { source: 'p5' });\n }\n return item;\n }\n\n /**\n * Draw a circle\n * circle(x, y, diameter)\n */\n window.circle = function(x, y, d) {\n var item = new paper.Path.Circle({\n center: [x, y],\n radius: d / 2\n });\n applyStyle(item);\n return registerItem(item, 'circle');\n };\n\n /**\n * Draw an ellipse\n * ellipse(x, y, width, [height])\n */\n window.ellipse = function(x, y, w, h) {\n h = h !== undefined ? h : w;\n var mode = window._p5State.ellipseMode;\n var center = mode === 'center' ? [x, y] : [x + w / 2, y + h / 2];\n\n var item = new paper.Path.Ellipse({\n center: center,\n size: [w, h]\n });\n applyStyle(item);\n return registerItem(item, 'ellipse');\n };\n\n /**\n * Draw a rectangle\n * rect(x, y, width, height, [cornerRadius])\n */\n window.rect = function(x, y, w, h, r) {\n var mode = window._p5State.rectMode;\n var point = mode === 'center' ? [x - w / 2, y - h / 2] : [x, y];\n\n var options = {\n point: point,\n size: [w, h]\n };\n\n if (r !== undefined && r > 0) {\n options.radius = r;\n }\n\n var item = new paper.Path.Rectangle(options);\n applyStyle(item);\n return registerItem(item, 'rectangle');\n };\n\n /**\n * Draw a line\n * line(x1, y1, x2, y2)\n */\n window.line = function(x1, y1, x2, y2) {\n var item = new paper.Path.Line({\n from: [x1, y1],\n to: [x2, y2]\n });\n // Lines typically don't have fill\n if (window._p5State.strokeColor) {\n item.strokeColor = window._p5State.strokeColor;\n item.strokeWidth = window._p5State.strokeWidth;\n }\n return registerItem(item, 'line');\n };\n\n /**\n * Draw a triangle\n * triangle(x1, y1, x2, y2, x3, y3)\n */\n window.triangle = function(x1, y1, x2, y2, x3, y3) {\n var item = new paper.Path({\n segments: [[x1, y1], [x2, y2], [x3, y3]],\n closed: true\n });\n applyStyle(item);\n return registerItem(item, 'triangle');\n };\n\n /**\n * Draw a quadrilateral\n * quad(x1, y1, x2, y2, x3, y3, x4, y4)\n */\n window.quad = function(x1, y1, x2, y2, x3, y3, x4, y4) {\n var item = new paper.Path({\n segments: [[x1, y1], [x2, y2], [x3, y3], [x4, y4]],\n closed: true\n });\n applyStyle(item);\n return registerItem(item, 'quad');\n };\n\n /**\n * Draw an arc\n * arc(x, y, width, height, startAngle, stopAngle)\n * Note: p5.js uses radians by default\n */\n window.arc = function(x, y, w, h, start, stop) {\n // Calculate the arc using Paper.js\n var cx = x;\n var cy = y;\n var rx = w / 2;\n var ry = h / 2;\n\n // Convert from p5's angle system to Paper.js\n // p5 uses radians where 0 is right, PI/2 is down\n var startDeg = start * 180 / Math.PI;\n var stopDeg = stop * 180 / Math.PI;\n\n // Create arc using path segments\n var item = new paper.Path.Arc({\n from: [\n cx + rx * Math.cos(start),\n cy + ry * Math.sin(start)\n ],\n through: [\n cx + rx * Math.cos((start + stop) / 2),\n cy + ry * Math.sin((start + stop) / 2)\n ],\n to: [\n cx + rx * Math.cos(stop),\n cy + ry * Math.sin(stop)\n ]\n });\n\n applyStyle(item);\n return registerItem(item, 'arc');\n };\n\n /**\n * Draw a point (tiny circle)\n * point(x, y)\n */\n window.point = function(x, y) {\n var size = window._p5State.strokeWidth || 1;\n var item = new paper.Path.Circle({\n center: [x, y],\n radius: size / 2\n });\n // Points use stroke color as fill\n if (window._p5State.strokeColor) {\n item.fillColor = window._p5State.strokeColor;\n }\n return registerItem(item, 'point');\n };\n\n // ==========================================================================\n // INITIALIZATION COMPLETE\n // ==========================================================================\n\n window._p5Initialized = true;\n console.log('[p5-compat] p5.js compatibility layer loaded (v1.3.1)');\n console.log('[p5-compat] Available: circle, ellipse, rect, line, triangle, quad, arc, point');\n console.log('[p5-compat] Style: fill, noFill, stroke, noStroke, strokeWeight, background');\n console.log('[p5-compat] Math: random, map, constrain, dist, lerp, radians, degrees');\n})();\n";
21
+ /**
22
+ * Generate code that initializes p5 helpers and executes user code
23
+ */
24
+ export declare function generateP5DrawCode(userCode: string): string;
25
+ //# sourceMappingURL=p5-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"p5-helpers.d.ts","sourceRoot":"","sources":["../../../src/tools/p5-compat/p5-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,eAAO,MAAM,UAAU,ouTA+VtB,CAAC;AAEF;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAuB3D"}
@@ -0,0 +1,399 @@
1
+ /**
2
+ * p5.js Compatibility Helpers for PinePaper
3
+ *
4
+ * This module provides p5.js-style drawing functions that wrap Paper.js.
5
+ * These helpers are injected into the browser context to allow Claude
6
+ * to use familiar p5.js syntax when drawing on the PinePaper canvas.
7
+ *
8
+ * SUPPORTED FUNCTIONS (v1.3.1):
9
+ * - Shapes: circle, ellipse, rect, line, triangle, quad, arc, point
10
+ * - Style: fill, noFill, stroke, noStroke, strokeWeight, background
11
+ * - Math: random, map, constrain, dist, lerp, radians, degrees
12
+ * - Canvas: width, height
13
+ * - Mode: rectMode, ellipseMode
14
+ * - Constants: PI, TWO_PI, HALF_PI, QUARTER_PI, CENTER, CORNER
15
+ */
16
+ /**
17
+ * Browser-side p5.js compatibility helpers.
18
+ * This code is injected into the PinePaper page context and executed via eval().
19
+ */
20
+ export const P5_HELPERS = `
21
+ (function() {
22
+ // Prevent double-initialization
23
+ if (window._p5Initialized) {
24
+ console.log('[p5-compat] Already initialized');
25
+ return;
26
+ }
27
+
28
+ // ==========================================================================
29
+ // STATE MANAGEMENT
30
+ // ==========================================================================
31
+
32
+ window._p5State = {
33
+ fillColor: '#ffffff',
34
+ strokeColor: '#000000',
35
+ strokeWidth: 1,
36
+ rectMode: 'corner',
37
+ ellipseMode: 'center'
38
+ };
39
+
40
+ // ==========================================================================
41
+ // CONSTANTS
42
+ // ==========================================================================
43
+
44
+ window.PI = Math.PI;
45
+ window.TWO_PI = Math.PI * 2;
46
+ window.HALF_PI = Math.PI / 2;
47
+ window.QUARTER_PI = Math.PI / 4;
48
+
49
+ window.CENTER = 'center';
50
+ window.CORNER = 'corner';
51
+
52
+ // ==========================================================================
53
+ // CANVAS PROPERTIES
54
+ // ==========================================================================
55
+
56
+ Object.defineProperty(window, 'width', {
57
+ get: function() {
58
+ return paper.view ? paper.view.size.width : 800;
59
+ },
60
+ configurable: true
61
+ });
62
+
63
+ Object.defineProperty(window, 'height', {
64
+ get: function() {
65
+ return paper.view ? paper.view.size.height : 600;
66
+ },
67
+ configurable: true
68
+ });
69
+
70
+ // ==========================================================================
71
+ // MATH UTILITIES
72
+ // ==========================================================================
73
+
74
+ window.random = function(min, max) {
75
+ if (arguments.length === 0) {
76
+ return Math.random();
77
+ } else if (arguments.length === 1) {
78
+ if (Array.isArray(min)) {
79
+ // random(array) - return random element
80
+ return min[Math.floor(Math.random() * min.length)];
81
+ }
82
+ // random(max) - return 0 to max
83
+ return Math.random() * min;
84
+ } else {
85
+ // random(min, max)
86
+ return Math.random() * (max - min) + min;
87
+ }
88
+ };
89
+
90
+ window.map = function(value, start1, stop1, start2, stop2) {
91
+ return start2 + (stop2 - start2) * ((value - start1) / (stop1 - start1));
92
+ };
93
+
94
+ window.constrain = function(value, min, max) {
95
+ return Math.min(Math.max(value, min), max);
96
+ };
97
+
98
+ window.dist = function(x1, y1, x2, y2) {
99
+ return Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));
100
+ };
101
+
102
+ window.lerp = function(start, stop, amount) {
103
+ return start + (stop - start) * amount;
104
+ };
105
+
106
+ window.radians = function(degrees) {
107
+ return degrees * Math.PI / 180;
108
+ };
109
+
110
+ window.degrees = function(radians) {
111
+ return radians * 180 / Math.PI;
112
+ };
113
+
114
+ // ==========================================================================
115
+ // STYLE FUNCTIONS
116
+ // ==========================================================================
117
+
118
+ /**
119
+ * Parse color arguments into a valid color string.
120
+ * Supports: fill(gray), fill(r,g,b), fill(r,g,b,a), fill('#hex')
121
+ */
122
+ function parseColor(args) {
123
+ if (args.length === 0) return null;
124
+
125
+ if (args.length === 1) {
126
+ var val = args[0];
127
+ if (typeof val === 'string') {
128
+ return val;
129
+ } else if (typeof val === 'number') {
130
+ // Grayscale
131
+ return 'rgb(' + val + ', ' + val + ', ' + val + ')';
132
+ }
133
+ } else if (args.length === 3) {
134
+ // RGB
135
+ return 'rgb(' + args[0] + ', ' + args[1] + ', ' + args[2] + ')';
136
+ } else if (args.length === 4) {
137
+ // RGBA (p5 uses 0-255 for alpha, CSS uses 0-1)
138
+ return 'rgba(' + args[0] + ', ' + args[1] + ', ' + args[2] + ', ' + (args[3] / 255) + ')';
139
+ }
140
+
141
+ return null;
142
+ }
143
+
144
+ window.fill = function() {
145
+ var color = parseColor(Array.prototype.slice.call(arguments));
146
+ window._p5State.fillColor = color;
147
+ };
148
+
149
+ window.noFill = function() {
150
+ window._p5State.fillColor = null;
151
+ };
152
+
153
+ window.stroke = function() {
154
+ var color = parseColor(Array.prototype.slice.call(arguments));
155
+ window._p5State.strokeColor = color;
156
+ };
157
+
158
+ window.noStroke = function() {
159
+ window._p5State.strokeColor = null;
160
+ };
161
+
162
+ window.strokeWeight = function(weight) {
163
+ window._p5State.strokeWidth = weight;
164
+ };
165
+
166
+ window.background = function() {
167
+ var color = parseColor(Array.prototype.slice.call(arguments));
168
+ if (color && typeof app !== 'undefined' && app.setBackgroundColor) {
169
+ app.setBackgroundColor(color);
170
+ }
171
+ };
172
+
173
+ // ==========================================================================
174
+ // MODE FUNCTIONS
175
+ // ==========================================================================
176
+
177
+ window.rectMode = function(mode) {
178
+ window._p5State.rectMode = mode.toLowerCase();
179
+ };
180
+
181
+ window.ellipseMode = function(mode) {
182
+ window._p5State.ellipseMode = mode.toLowerCase();
183
+ };
184
+
185
+ // ==========================================================================
186
+ // SHAPE FUNCTIONS
187
+ // ==========================================================================
188
+
189
+ /**
190
+ * Apply current style state to an item
191
+ */
192
+ function applyStyle(item) {
193
+ if (window._p5State.fillColor) {
194
+ item.fillColor = window._p5State.fillColor;
195
+ }
196
+ if (window._p5State.strokeColor) {
197
+ item.strokeColor = window._p5State.strokeColor;
198
+ item.strokeWidth = window._p5State.strokeWidth;
199
+ }
200
+ }
201
+
202
+ /**
203
+ * Register item with PinePaper's ItemRegistry
204
+ */
205
+ function registerItem(item, type) {
206
+ if (typeof app !== 'undefined' && app.registerItem) {
207
+ app.registerItem(item, type, { source: 'p5' });
208
+ }
209
+ return item;
210
+ }
211
+
212
+ /**
213
+ * Draw a circle
214
+ * circle(x, y, diameter)
215
+ */
216
+ window.circle = function(x, y, d) {
217
+ var item = new paper.Path.Circle({
218
+ center: [x, y],
219
+ radius: d / 2
220
+ });
221
+ applyStyle(item);
222
+ return registerItem(item, 'circle');
223
+ };
224
+
225
+ /**
226
+ * Draw an ellipse
227
+ * ellipse(x, y, width, [height])
228
+ */
229
+ window.ellipse = function(x, y, w, h) {
230
+ h = h !== undefined ? h : w;
231
+ var mode = window._p5State.ellipseMode;
232
+ var center = mode === 'center' ? [x, y] : [x + w / 2, y + h / 2];
233
+
234
+ var item = new paper.Path.Ellipse({
235
+ center: center,
236
+ size: [w, h]
237
+ });
238
+ applyStyle(item);
239
+ return registerItem(item, 'ellipse');
240
+ };
241
+
242
+ /**
243
+ * Draw a rectangle
244
+ * rect(x, y, width, height, [cornerRadius])
245
+ */
246
+ window.rect = function(x, y, w, h, r) {
247
+ var mode = window._p5State.rectMode;
248
+ var point = mode === 'center' ? [x - w / 2, y - h / 2] : [x, y];
249
+
250
+ var options = {
251
+ point: point,
252
+ size: [w, h]
253
+ };
254
+
255
+ if (r !== undefined && r > 0) {
256
+ options.radius = r;
257
+ }
258
+
259
+ var item = new paper.Path.Rectangle(options);
260
+ applyStyle(item);
261
+ return registerItem(item, 'rectangle');
262
+ };
263
+
264
+ /**
265
+ * Draw a line
266
+ * line(x1, y1, x2, y2)
267
+ */
268
+ window.line = function(x1, y1, x2, y2) {
269
+ var item = new paper.Path.Line({
270
+ from: [x1, y1],
271
+ to: [x2, y2]
272
+ });
273
+ // Lines typically don't have fill
274
+ if (window._p5State.strokeColor) {
275
+ item.strokeColor = window._p5State.strokeColor;
276
+ item.strokeWidth = window._p5State.strokeWidth;
277
+ }
278
+ return registerItem(item, 'line');
279
+ };
280
+
281
+ /**
282
+ * Draw a triangle
283
+ * triangle(x1, y1, x2, y2, x3, y3)
284
+ */
285
+ window.triangle = function(x1, y1, x2, y2, x3, y3) {
286
+ var item = new paper.Path({
287
+ segments: [[x1, y1], [x2, y2], [x3, y3]],
288
+ closed: true
289
+ });
290
+ applyStyle(item);
291
+ return registerItem(item, 'triangle');
292
+ };
293
+
294
+ /**
295
+ * Draw a quadrilateral
296
+ * quad(x1, y1, x2, y2, x3, y3, x4, y4)
297
+ */
298
+ window.quad = function(x1, y1, x2, y2, x3, y3, x4, y4) {
299
+ var item = new paper.Path({
300
+ segments: [[x1, y1], [x2, y2], [x3, y3], [x4, y4]],
301
+ closed: true
302
+ });
303
+ applyStyle(item);
304
+ return registerItem(item, 'quad');
305
+ };
306
+
307
+ /**
308
+ * Draw an arc
309
+ * arc(x, y, width, height, startAngle, stopAngle)
310
+ * Note: p5.js uses radians by default
311
+ */
312
+ window.arc = function(x, y, w, h, start, stop) {
313
+ // Calculate the arc using Paper.js
314
+ var cx = x;
315
+ var cy = y;
316
+ var rx = w / 2;
317
+ var ry = h / 2;
318
+
319
+ // Convert from p5's angle system to Paper.js
320
+ // p5 uses radians where 0 is right, PI/2 is down
321
+ var startDeg = start * 180 / Math.PI;
322
+ var stopDeg = stop * 180 / Math.PI;
323
+
324
+ // Create arc using path segments
325
+ var item = new paper.Path.Arc({
326
+ from: [
327
+ cx + rx * Math.cos(start),
328
+ cy + ry * Math.sin(start)
329
+ ],
330
+ through: [
331
+ cx + rx * Math.cos((start + stop) / 2),
332
+ cy + ry * Math.sin((start + stop) / 2)
333
+ ],
334
+ to: [
335
+ cx + rx * Math.cos(stop),
336
+ cy + ry * Math.sin(stop)
337
+ ]
338
+ });
339
+
340
+ applyStyle(item);
341
+ return registerItem(item, 'arc');
342
+ };
343
+
344
+ /**
345
+ * Draw a point (tiny circle)
346
+ * point(x, y)
347
+ */
348
+ window.point = function(x, y) {
349
+ var size = window._p5State.strokeWidth || 1;
350
+ var item = new paper.Path.Circle({
351
+ center: [x, y],
352
+ radius: size / 2
353
+ });
354
+ // Points use stroke color as fill
355
+ if (window._p5State.strokeColor) {
356
+ item.fillColor = window._p5State.strokeColor;
357
+ }
358
+ return registerItem(item, 'point');
359
+ };
360
+
361
+ // ==========================================================================
362
+ // INITIALIZATION COMPLETE
363
+ // ==========================================================================
364
+
365
+ window._p5Initialized = true;
366
+ console.log('[p5-compat] p5.js compatibility layer loaded (v1.3.1)');
367
+ console.log('[p5-compat] Available: circle, ellipse, rect, line, triangle, quad, arc, point');
368
+ console.log('[p5-compat] Style: fill, noFill, stroke, noStroke, strokeWeight, background');
369
+ console.log('[p5-compat] Math: random, map, constrain, dist, lerp, radians, degrees');
370
+ })();
371
+ `;
372
+ /**
373
+ * Generate code that initializes p5 helpers and executes user code
374
+ */
375
+ export function generateP5DrawCode(userCode) {
376
+ return `
377
+ // Initialize p5.js compatibility layer if not already loaded
378
+ if (!window._p5Initialized) {
379
+ ${P5_HELPERS}
380
+ }
381
+
382
+ // Execute user's p5.js-style code
383
+ (function() {
384
+ try {
385
+ ${userCode}
386
+
387
+ // Save history state after drawing
388
+ if (typeof app !== 'undefined' && app.historyManager) {
389
+ app.historyManager.saveState();
390
+ }
391
+
392
+ return { success: true, message: 'p5.js code executed successfully' };
393
+ } catch (error) {
394
+ return { success: false, error: error.message };
395
+ }
396
+ })();
397
+ `;
398
+ }
399
+ //# sourceMappingURL=p5-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"p5-helpers.js","sourceRoot":"","sources":["../../../src/tools/p5-compat/p5-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+VzB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,OAAO;;;IAGL,UAAU;;;;;;MAMR,QAAQ;;;;;;;;;;;;CAYb,CAAC;AACF,CAAC"}
@@ -123,6 +123,10 @@ export declare class PinePaperCodeGenerator {
123
123
  * Generate code for creating a grid
124
124
  */
125
125
  generateCreateGrid(input: z.infer<typeof CreateGridInputSchema>): string;
126
+ /**
127
+ * Generate code for executing p5.js-style drawing code
128
+ */
129
+ generateP5Draw(code: string): string;
126
130
  }
127
131
  export declare const codeGenerator: PinePaperCodeGenerator;
128
132
  //# sourceMappingURL=code-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"code-generator.d.ts","sourceRoot":"","sources":["../../src/types/code-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-generator.d.ts","sourceRoot":"","sources":["../../src/types/code-generator.ts"],"names":[],"mappings":"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"}
@@ -909,6 +909,14 @@ app.historyManager.saveState();
909
909
  const validated = CreateGridInputSchema.parse(input);
910
910
  return generateCreateGridCode(validated.cols, validated.rows, validated.strokeColor, validated.strokeWidth, validated.animated, validated.waveSpeed, validated.waveAmplitude);
911
911
  }
912
+ /**
913
+ * Generate code for executing p5.js-style drawing code
914
+ */
915
+ generateP5Draw(code) {
916
+ // Import the p5 helpers generator
917
+ const { generateP5DrawCode } = require('../tools/p5-compat/p5-helpers.js');
918
+ return generateP5DrawCode(code);
919
+ }
912
920
  }
913
921
  // Export singleton instance
914
922
  export const codeGenerator = new PinePaperCodeGenerator();