@pinepaper.studio/mcp-server 1.2.0 → 1.2.2

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.
@@ -4,34 +4,115 @@
4
4
  * Converts MCP tool inputs to executable PinePaper JavaScript code.
5
5
  * This code is designed to run in the browser context where window.PinePaper is available.
6
6
  */
7
- import { CreateItemInputSchema, ModifyItemInputSchema, AddRelationInputSchema, AnimateItemInputSchema, KeyframeAnimateInputSchema, ExecuteGeneratorInputSchema, ApplyEffectInputSchema, SetBackgroundColorInputSchema, SetCanvasSizeInputSchema, } from './schemas.js';
7
+ import { CreateItemInputSchema, ModifyItemInputSchema, AddRelationInputSchema, AnimateItemInputSchema, KeyframeAnimateInputSchema, ExecuteGeneratorInputSchema, ApplyEffectInputSchema, SetBackgroundColorInputSchema, SetCanvasSizeInputSchema, CreateGlossySphereInputSchema, CreateDiagonalStripesInputSchema, BatchCreateInputSchema, BatchModifyInputSchema, CreateGridInputSchema, } from './schemas.js';
8
+ // =============================================================================
9
+ // HELPER FUNCTIONS
10
+ // =============================================================================
11
+ /**
12
+ * Check if a color value is a gradient object
13
+ */
14
+ function isGradient(color) {
15
+ return typeof color === 'object' && color !== null && 'type' in color && 'stops' in color;
16
+ }
17
+ /**
18
+ * Generate Paper.js gradient code for a fill color
19
+ */
20
+ function generateGradientCode(gradient, itemVarName, position, propertyName = 'fillColor') {
21
+ const { type, stops, origin, destination } = gradient;
22
+ // Calculate default origin/destination based on item position
23
+ const defaultOrigin = origin || [position.x - 50, position.y - 50];
24
+ const defaultDestination = destination || [position.x + 50, position.y + 50];
25
+ const stopsCode = stops.map(s => `['${s.color}', ${s.offset}]`).join(', ');
26
+ return `
27
+ ${itemVarName}.${propertyName} = {
28
+ gradient: {
29
+ stops: [${stopsCode}],
30
+ radial: ${type === 'radial'}
31
+ },
32
+ origin: [${defaultOrigin[0]}, ${defaultOrigin[1]}],
33
+ destination: [${defaultDestination[0]}, ${defaultDestination[1]}]
34
+ };`;
35
+ }
36
+ /**
37
+ * Generate shadow code for an item
38
+ */
39
+ function generateShadowCode(itemVarName, shadowColor, shadowBlur, shadowOffset) {
40
+ const lines = [];
41
+ if (shadowColor) {
42
+ lines.push(`${itemVarName}.shadowColor = '${shadowColor}';`);
43
+ }
44
+ if (shadowBlur !== undefined) {
45
+ lines.push(`${itemVarName}.shadowBlur = ${shadowBlur};`);
46
+ }
47
+ if (shadowOffset) {
48
+ lines.push(`${itemVarName}.shadowOffset = new paper.Point(${shadowOffset[0]}, ${shadowOffset[1]});`);
49
+ }
50
+ return lines.join('\n');
51
+ }
52
+ /**
53
+ * Generate blend mode code for an item
54
+ */
55
+ function generateBlendModeCode(itemVarName, blendMode) {
56
+ return `${itemVarName}.blendMode = '${blendMode}';`;
57
+ }
8
58
  // =============================================================================
9
59
  // CODE TEMPLATES
10
60
  // =============================================================================
11
61
  /**
12
- * Template for creating items
62
+ * Template for creating items with support for gradients, shadows, and blend modes
13
63
  */
14
64
  function generateCreateItemCode(itemType, position, properties) {
65
+ // Extract special properties that need separate handling
66
+ const { color, fillColor, strokeColor, shadowColor, shadowBlur, shadowOffset, blendMode, opacity, ...baseProperties } = properties;
15
67
  const params = {
16
68
  x: position.x,
17
69
  y: position.y,
18
- ...properties,
70
+ ...baseProperties,
19
71
  };
20
- // Map generic properties to PinePaper-specific ones
21
- if (itemType === 'text') {
22
- if (params.color) {
23
- params.color = params.color; // PinePaper uses 'color' for text
24
- }
72
+ // Handle simple solid colors in params
73
+ if (color && !isGradient(color)) {
74
+ params.color = color;
25
75
  }
26
- return `
76
+ if (fillColor && !isGradient(fillColor)) {
77
+ params.fillColor = fillColor;
78
+ }
79
+ if (strokeColor && !isGradient(strokeColor)) {
80
+ params.strokeColor = strokeColor;
81
+ }
82
+ // Build the code
83
+ let code = `
27
84
  // Create ${itemType} item
28
- const item = app.create('${itemType}', ${JSON.stringify(params, null, 2)});
85
+ const item = app.create('${itemType}', ${JSON.stringify(params, null, 2)});`;
86
+ // Add gradient support for colors
87
+ if (color && isGradient(color)) {
88
+ code += generateGradientCode(color, 'item', position, 'fillColor');
89
+ }
90
+ if (fillColor && isGradient(fillColor)) {
91
+ code += generateGradientCode(fillColor, 'item', position, 'fillColor');
92
+ }
93
+ if (strokeColor && isGradient(strokeColor)) {
94
+ code += generateGradientCode(strokeColor, 'item', position, 'strokeColor');
95
+ }
96
+ // Add shadow support
97
+ const shadowCode = generateShadowCode('item', shadowColor, shadowBlur, shadowOffset);
98
+ if (shadowCode) {
99
+ code += '\n' + shadowCode;
100
+ }
101
+ // Add blend mode support
102
+ if (blendMode) {
103
+ code += '\n' + generateBlendModeCode('item', blendMode);
104
+ }
105
+ // Add opacity support
106
+ if (opacity !== undefined) {
107
+ code += `\nitem.opacity = ${opacity};`;
108
+ }
109
+ code += `
29
110
  const itemId = item.data.registryId;
30
111
  app.historyManager.saveState();
31
112
 
32
113
  // Return item info
33
- ({ itemId, type: '${itemType}', position: { x: ${position.x}, y: ${position.y} } });
34
- `.trim();
114
+ ({ itemId, type: '${itemType}', position: { x: ${position.x}, y: ${position.y} } });`;
115
+ return code.trim();
35
116
  }
36
117
  /**
37
118
  * Template for modifying items
@@ -406,6 +487,75 @@ const formatted = generators.map(g => ({
406
487
  ({ generators: formatted });
407
488
  `.trim();
408
489
  }
490
+ /**
491
+ * Template for batch create - creates multiple items with single history save
492
+ */
493
+ function generateBatchCreateCode(items) {
494
+ const itemsJson = JSON.stringify(items, null, 2);
495
+ return `
496
+ // Batch create ${items.length} items
497
+ const itemSpecs = ${itemsJson};
498
+ const createdItems = app.batchCreate(itemSpecs);
499
+
500
+ // Return created item IDs and info
501
+ const results = createdItems.map(item => ({
502
+ itemId: item.data?.registryId || item.id,
503
+ type: item.className || 'unknown',
504
+ position: item.position ? { x: item.position.x, y: item.position.y } : null
505
+ }));
506
+
507
+ ({ success: true, items: results, count: results.length });
508
+ `.trim();
509
+ }
510
+ /**
511
+ * Template for batch modify - modifies multiple items with single history save
512
+ */
513
+ function generateBatchModifyCode(modifications) {
514
+ const modsJson = JSON.stringify(modifications, null, 2);
515
+ return `
516
+ // Batch modify ${modifications.length} items
517
+ const modifications = ${modsJson};
518
+ const results = app.batchModify(modifications.map(mod => ({
519
+ item: mod.itemId,
520
+ params: mod.params
521
+ })));
522
+
523
+ // Return modification results
524
+ const formatted = results.map(r => ({
525
+ itemId: r.item?.data?.registryId || r.itemId,
526
+ success: r.success,
527
+ error: r.error || null
528
+ }));
529
+
530
+ ({ success: formatted.every(r => r.success), results: formatted, count: formatted.length });
531
+ `.trim();
532
+ }
533
+ /**
534
+ * Template for create grid - convenience method for creating line grids
535
+ */
536
+ function generateCreateGridCode(cols, rows, strokeColor, strokeWidth, animated, waveSpeed, waveAmplitude) {
537
+ return `
538
+ // Create grid with ${cols} columns and ${rows} rows
539
+ const grid = app.createGrid({
540
+ cols: ${cols},
541
+ rows: ${rows},
542
+ strokeColor: '${strokeColor}',
543
+ strokeWidth: ${strokeWidth},
544
+ animated: ${animated},
545
+ waveSpeed: ${waveSpeed},
546
+ waveAmplitude: ${waveAmplitude}
547
+ });
548
+
549
+ // Return grid info
550
+ ({
551
+ success: true,
552
+ lineCount: grid.lines?.length || 0,
553
+ groupId: grid.group?.data?.registryId || null,
554
+ callbackId: grid.callbackId || null,
555
+ animated: ${animated}
556
+ });
557
+ `.trim();
558
+ }
409
559
  // =============================================================================
410
560
  // CODE GENERATOR CLASS
411
561
  // =============================================================================
@@ -593,6 +743,172 @@ const filterId = app.filterSystem.addFilter('${filterType}', ${JSON.stringify(pa
593
743
  ({ success: true, filterId, filterType: '${filterType}' });
594
744
  `.trim();
595
745
  }
746
+ /**
747
+ * Generate code for creating a glossy 3D sphere effect
748
+ */
749
+ generateCreateGlossySphere(input) {
750
+ const validated = CreateGlossySphereInputSchema.parse(input);
751
+ const { position, radius, baseColor, lightDirection, glossiness, castShadow, shadowIntensity } = validated;
752
+ // Calculate light offset based on direction
753
+ const lightOffsets = {
754
+ 'top-left': { x: -0.3, y: -0.3 },
755
+ 'top-right': { x: 0.3, y: -0.3 },
756
+ 'top': { x: 0, y: -0.4 },
757
+ 'left': { x: -0.4, y: 0 },
758
+ 'right': { x: 0.4, y: 0 },
759
+ 'bottom-left': { x: -0.3, y: 0.3 },
760
+ 'bottom-right': { x: 0.3, y: 0.3 },
761
+ 'bottom': { x: 0, y: 0.4 },
762
+ };
763
+ const lightOffset = lightOffsets[lightDirection];
764
+ const lightX = position.x + radius * lightOffset.x;
765
+ const lightY = position.y + radius * lightOffset.y;
766
+ // Specular highlight position (opposite of shadow direction)
767
+ const highlightX = position.x + radius * lightOffset.x * 0.6;
768
+ const highlightY = position.y + radius * lightOffset.y * 0.6;
769
+ return `
770
+ // Create glossy 3D sphere effect
771
+ const sphereGroup = new paper.Group({ parent: app.textItemGroup });
772
+ const baseColor = new paper.Color('${baseColor}');
773
+
774
+ ${castShadow ? `// Shadow underneath
775
+ const shadow = new paper.Path.Ellipse({
776
+ center: [${position.x + 10}, ${position.y + radius + 8}],
777
+ size: [${radius * 1.6}, ${radius * 0.4}],
778
+ fillColor: 'rgba(0, 0, 0, ${shadowIntensity})',
779
+ parent: sphereGroup
780
+ });
781
+ shadow.shadowBlur = 15;
782
+ shadow.shadowColor = 'rgba(0, 0, 0, ${shadowIntensity * 0.5})';` : '// Shadow disabled'}
783
+
784
+ // Base sphere with radial gradient
785
+ const sphere = new paper.Path.Circle({
786
+ center: [${position.x}, ${position.y}],
787
+ radius: ${radius},
788
+ parent: sphereGroup
789
+ });
790
+
791
+ // Create radial gradient for 3D effect
792
+ const lightColor = baseColor.clone();
793
+ lightColor.lightness = Math.min(1, lightColor.lightness + 0.3);
794
+ const darkColor = baseColor.clone();
795
+ darkColor.lightness = Math.max(0, darkColor.lightness - 0.3);
796
+
797
+ sphere.fillColor = {
798
+ gradient: {
799
+ stops: [
800
+ [lightColor.toCSS(true), 0.0],
801
+ [baseColor.toCSS(true), 0.5],
802
+ [darkColor.toCSS(true), 1.0]
803
+ ],
804
+ radial: true
805
+ },
806
+ origin: [${lightX}, ${lightY}],
807
+ destination: [${position.x + radius * 0.8}, ${position.y + radius * 0.8}]
808
+ };
809
+
810
+ // Specular highlight (glossy shine)
811
+ const highlight = new paper.Path.Ellipse({
812
+ center: [${highlightX}, ${highlightY}],
813
+ size: [${radius * 0.5 * glossiness}, ${radius * 0.25 * glossiness}],
814
+ fillColor: 'rgba(255, 255, 255, ${glossiness * 0.8})',
815
+ parent: sphereGroup
816
+ });
817
+ highlight.rotate(${lightDirection === 'top-left' ? -30 : lightDirection === 'top-right' ? 30 : 0});
818
+
819
+ // Secondary highlight for extra realism
820
+ const secondaryHighlight = new paper.Path.Ellipse({
821
+ center: [${highlightX - radius * 0.1}, ${highlightY + radius * 0.05}],
822
+ size: [${radius * 0.2 * glossiness}, ${radius * 0.1 * glossiness}],
823
+ fillColor: 'rgba(255, 255, 255, ${glossiness * 0.4})',
824
+ parent: sphereGroup
825
+ });
826
+
827
+ // Register the group
828
+ const itemId = app.registerItem(sphereGroup, 'glossy-sphere', { source: 'mcp' });
829
+ app.historyManager.saveState();
830
+
831
+ ({ itemId, type: 'glossy-sphere', position: { x: ${position.x}, y: ${position.y} }, radius: ${radius} });
832
+ `.trim();
833
+ }
834
+ /**
835
+ * Generate code for creating diagonal stripes pattern
836
+ */
837
+ generateCreateDiagonalStripes(input) {
838
+ const validated = CreateDiagonalStripesInputSchema.parse(input);
839
+ const { position, width, height, stripeWidth, colors, angle, gap } = validated;
840
+ const colorsJson = JSON.stringify(colors);
841
+ return `
842
+ // Create diagonal stripes pattern
843
+ const stripesGroup = new paper.Group({ parent: app.textItemGroup });
844
+ const colors = ${colorsJson};
845
+ const stripeWidth = ${stripeWidth};
846
+ const gap = ${gap};
847
+ const totalStripeWidth = stripeWidth + gap;
848
+ const angle = ${angle};
849
+
850
+ // Calculate the diagonal length needed to cover the area
851
+ const diagonalLength = Math.sqrt(${width} * ${width} + ${height} * ${height}) * 1.5;
852
+ const numStripes = Math.ceil(diagonalLength / totalStripeWidth) + 2;
853
+
854
+ // Create a clipping mask for the stripe area
855
+ const clipRect = new paper.Path.Rectangle({
856
+ point: [${position.x - width / 2}, ${position.y - height / 2}],
857
+ size: [${width}, ${height}]
858
+ });
859
+
860
+ // Create stripes
861
+ for (let i = -numStripes; i < numStripes; i++) {
862
+ const color = colors[((i % colors.length) + colors.length) % colors.length];
863
+ const stripe = new paper.Path.Rectangle({
864
+ point: [${position.x} - diagonalLength / 2 + i * totalStripeWidth, ${position.y} - diagonalLength / 2],
865
+ size: [stripeWidth, diagonalLength],
866
+ fillColor: color,
867
+ parent: stripesGroup
868
+ });
869
+ }
870
+
871
+ // Rotate the entire group
872
+ stripesGroup.rotate(angle, [${position.x}, ${position.y}]);
873
+
874
+ // Apply clipping mask
875
+ const clippedGroup = new paper.Group({
876
+ children: [clipRect, stripesGroup],
877
+ clipped: true,
878
+ parent: app.textItemGroup
879
+ });
880
+
881
+ // Remove the original group since it's now in the clipped group
882
+ // stripesGroup is already a child of clippedGroup
883
+
884
+ // Register the clipped group
885
+ const itemId = app.registerItem(clippedGroup, 'diagonal-stripes', { source: 'mcp' });
886
+ app.historyManager.saveState();
887
+
888
+ ({ itemId, type: 'diagonal-stripes', position: { x: ${position.x}, y: ${position.y} }, stripeCount: numStripes * 2 });
889
+ `.trim();
890
+ }
891
+ /**
892
+ * Generate code for batch creating multiple items
893
+ */
894
+ generateBatchCreate(input) {
895
+ const validated = BatchCreateInputSchema.parse(input);
896
+ return generateBatchCreateCode(validated.items);
897
+ }
898
+ /**
899
+ * Generate code for batch modifying multiple items
900
+ */
901
+ generateBatchModify(input) {
902
+ const validated = BatchModifyInputSchema.parse(input);
903
+ return generateBatchModifyCode(validated.modifications);
904
+ }
905
+ /**
906
+ * Generate code for creating a grid
907
+ */
908
+ generateCreateGrid(input) {
909
+ const validated = CreateGridInputSchema.parse(input);
910
+ return generateCreateGridCode(validated.cols, validated.rows, validated.strokeColor, validated.strokeWidth, validated.animated, validated.waveSpeed, validated.waveAmplitude);
911
+ }
596
912
  }
597
913
  // Export singleton instance
598
914
  export const codeGenerator = new PinePaperCodeGenerator();
@@ -1 +1 @@
1
- {"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../src/types/code-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../src/types/code-generator.ts"],"names":[],"mappings":"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"}