1// Complete Shape Library - Exact copy from original tool 2const SHAPE_LIBRARY = [ 3 // ð¹ Single Block 4 { key: "1x1", label: "1x1", pattern: [[1]], color: "bg-purple-500", category: "Single" }, 5 6 // ð¹ Horizontal Lines 7 { key: "2-2_Horizontal", label: "2 Horizontal", pattern: [[1, 1]], color: "bg-blue-400", category: "Lines" }, 8 { key: "4-3_Horizontal", label: "3 Horizontal", pattern: [[1, 1, 1]], color: "bg-blue-500", category: "Lines" }, 9 { key: "6-4_Horizontal", label: "4 Horizontal", pattern: [[1, 1, 1, 1]], color: "bg-blue-600", category: "Lines" }, 10 { key: "8-5_Horizontal", label: "5 Horizontal", pattern: [[1, 1, 1, 1, 1]], color: "bg-blue-700", category: "Lines" }, 11 12 // ð¹ Vertical Lines 13 { key: "3-2_Vertical", label: "2 Vertical", pattern: [[1], [1]], color: "bg-green-400", category: "Lines" }, 14 { key: "5-3_Vertical", label: "3 Vertical", pattern: [[1], [1], [1]], color: "bg-green-500", category: "Lines" }, 15 { key: "7-4_Vertical", label: "4 Vertical", pattern: [[1], [1], [1], [1]], color: "bg-green-600", category: "Lines" }, 16 { key: "9-15_Vertical", label: "5 Vertical", pattern: [[1], [1], [1], [1], [1]], color: "bg-green-700", category: "Lines" }, 17 18 // ð¹ Squares 19 { key: "10-Square", label: "Square (2x2)", pattern: [[1, 1], [1, 1]], color: "bg-yellow-400", category: "Squares" }, 20 { key: "13-Big_Square", label: "Big Square (3x3)", pattern: [[1, 1, 1], [1, 1, 1], [1, 1, 1]], color: "bg-yellow-600", category: "Squares" }, 21 22 // ð¹ Rectangles 23 { key: "11-Rectangle_Wide", label: "Rectangle Wide (3x2)", pattern: [[1, 1, 1], [1, 1, 1]], color: "bg-orange-400", category: "Rectangles" }, 24 { key: "12-Rectangle_Tall", label: "Rectangle Tall (2x3)", pattern: [[1, 1], [1, 1], [1, 1]], color: "bg-orange-500", category: "Rectangles" }, 25 26 // ð¹ Small L Shapes (3 blocks) 27 { key: "14-Small_L_left", label: "Small L Left", pattern: [[1, 0], [1, 1]], color: "bg-red-400", category: "Small L" }, 28 { key: "15-Small_L_right", label: "Small L Right", pattern: [[0, 1], [1, 1]], color: "bg-red-400", category: "Small L" }, 29 { key: "16-Small_L_top_right", label: "Small L Top Right", pattern: [[1, 1], [0, 1]], color: "bg-red-400", category: "Small L" }, 30 { key: "17-Small_L_top_left", label: "Small L Top Left", pattern: [[1, 1], [1, 0]], color: "bg-red-400", category: "Small L" }, 31 32 // ð¹ L Shapes 3x2 33 { key: "18-L_3x2_left", label: "L 3x2 Left", pattern: [[1, 0], [1, 0], [1, 1]], color: "bg-red-500", category: "L Shapes" }, 34 { key: "19-L_3x2_right", label: "L 3x2 Right", pattern: [[0, 1], [0, 1], [1, 1]], color: "bg-red-500", category: "L Shapes" }, 35 { key: "20-L_3x2_top_right", label: "L 3x2 Top Right", pattern: [[1, 1, 1], [0, 0, 1]], color: "bg-red-500", category: "L Shapes" }, 36 { key: "21-L_3x2_top_left", label: "L 3x2 Top Left", pattern: [[1, 1, 1], [1, 0, 0]], color: "bg-red-500", category: "L Shapes" }, 37 38 // ð¹ L Shapes 2x3 39 { key: "22-L_2x3_left", label: "L 2x3 Left", pattern: [[1, 0, 0], [1, 1, 1]], color: "bg-red-600", category: "L Shapes" }, 40 { key: "23-L_2x3_right", label: "L 2x3 Right", pattern: [[0, 0, 1], [1, 1, 1]], color: "bg-red-600", category: "L Shapes" }, 41 { key: "24-L_2x3_top_right", label: "L 2x3 Top Right", pattern: [[1, 1], [1, 0], [1, 0]], color: "bg-red-600", category: "L Shapes" }, 42 { key: "25-L_2x3_top_left", label: "L 2x3 Top Left", pattern: [[1, 1], [0, 1], [0, 1]], color: "bg-red-600", category: "L Shapes" }, 43 44 // ð¹ Big L 3x3 45 { key: "26-Big_L_left", label: "Big L Left", pattern: [[1, 0, 0], [1, 0, 0], [1, 1, 1]], color: "bg-red-700", category: "Big L" }, 46 { key: "27-Big_L_right", label: "Big L Right", pattern: [[0, 0, 1], [0, 0, 1], [1, 1, 1]], color: "bg-red-700", category: "Big L" }, 47 { key: "28-Big_L_top_right", label: "Big L Top Right", pattern: [[1, 1, 1], [0, 0, 1], [0, 0, 1]], color: "bg-red-700", category: "Big L" }, 48 { key: "29-Big_L_top_left", label: "Big L Top Left", pattern: [[1, 1, 1], [1, 0, 0], [1, 0, 0]], color: "bg-red-700", category: "Big L" }, 49 50 // ð¹ Big L Mirrored 3x3 51 { key: "30-Big_L_Mirrored_left", label: "Big L Mirrored Left", pattern: [[1, 1, 1], [0, 0, 1], [0, 0, 1]], color: "bg-red-800", category: "Big L" }, 52 { key: "31-Big_L_Mirrored_right", label: "Big L Mirrored Right", pattern: [[1, 1, 1], [1, 0, 0], [1, 0, 0]], color: "bg-red-800", category: "Big L" }, 53 { key: "32-Big_L_Mirrored_top_right", label: "Big L Mirrored Top Right", pattern: [[0, 0, 1], [0, 0, 1], [1, 1, 1]], color: "bg-red-800", category: "Big L" }, 54 { key: "33-Big_L_Mirrored_top_left", label: "Big L Mirrored Top Left", pattern: [[1, 0, 0], [1, 0, 0], [1, 1, 1]], color: "bg-red-800", category: "Big L" }, 55 56 // ð¹ Long L 4x2 57 { key: "34-Long_L_left", label: "Long L Left", pattern: [[1, 0], [1, 0], [1, 0], [1, 1]], color: "bg-red-900", category: "Long L" }, 58 { key: "35-Long_L_right", label: "Long L Right", pattern: [[0, 1], [0, 1], [0, 1], [1, 1]], color: "bg-red-900", category: "Long L" }, 59 { key: "36-Long_L_top_right", label: "Long L Top Right", pattern: [[1, 1, 1, 1], [0, 0, 0, 1]], color: "bg-red-900", category: "Long L" }, 60 { key: "37-Long_L_top_left", label: "Long L Top Left", pattern: [[1, 1, 1, 1], [1, 0, 0, 0]], color: "bg-red-900", category: "Long L" }, 61 62 // ð¹ Long L Rotated 2x4 63 { key: "38-Long_L_Rotated_left", label: "Long L Rotated Left", pattern: [[1, 1, 1, 1], [1, 0, 0, 0]], color: "bg-pink-400", category: "Long L" }, 64 { key: "39-Long_L_Rotated_right", label: "Long L Rotated Right", pattern: [[1, 1, 1, 1], [0, 0, 0, 1]], color: "bg-pink-400", category: "Long L" }, 65 { key: "40-Long_L_Rotated_top_right", label: "Long L Rotated Top Right", pattern: [[0, 1], [0, 1], [0, 1], [1, 1]], color: "bg-pink-400", category: "Long L" }, 66 { key: "41-Long_L_Rotated_top_left", label: "Long L Rotated Top Left", pattern: [[1, 0], [1, 0], [1, 0], [1, 1]], color: "bg-pink-400", category: "Long L" }, 67 68 // ð¹ Z Shapes 69 { key: "42-Z_Horizontal", label: "Z Horizontal", pattern: [[1, 1, 0], [0, 1, 1]], color: "bg-purple-400", category: "Z Shapes" }, 70 { key: "43-Z_Vertical", label: "Z Vertical", pattern: [[0, 1], [1, 1], [1, 0]], color: "bg-purple-400", category: "Z Shapes" }, 71 { key: "44-Reverse_Z_Horizontal", label: "Reverse Z Horizontal", pattern: [[0, 1, 1], [1, 1, 0]], color: "bg-purple-500", category: "Z Shapes" }, 72 { key: "45-Reverse_Z_Vertical", label: "Reverse Z Vertical", pattern: [[1, 0], [1, 1], [0, 1]], color: "bg-purple-500", category: "Z Shapes" }, 73 { key: "47-Mirrored_Z_Vertical", label: "Mirrored Z Vertical", pattern: [[0, 1], [1, 1], [1, 0]], color: "bg-purple-600", category: "Z Shapes" }, 74 75 // ð¹ Small T Shapes 76 { key: "54-Small_T_Up", label: "Small T Up", pattern: [[0, 1, 0], [1, 1, 1]], color: "bg-indigo-400", category: "T Shapes" }, 77 { key: "55-Small_T_Down", label: "Small T Down", pattern: [[1, 1, 1], [0, 1, 0]], color: "bg-indigo-400", category: "T Shapes" }, 78 { key: "56-Small_T_Left", label: "Small T Left", pattern: [[1, 0], [1, 1], [1, 0]], color: "bg-indigo-400", category: "T Shapes" }, 79 { key: "57-Small_T_Right", label: "Small T Right", pattern: [[0, 1], [1, 1], [0, 1]], color: "bg-indigo-400", category: "T Shapes" }, 80 81 // ð¹ Big T Shapes 82 { key: "58-Big_T_Up", label: "Big T Up", pattern: [[0, 1, 0], [1, 1, 1], [0, 1, 0]], color: "bg-indigo-500", category: "T Shapes" }, 83 { key: "59-Big_T_Down", label: "Big T Down", pattern: [[0, 1, 0], [1, 1, 1], [0, 1, 0]], color: "bg-indigo-500", category: "T Shapes" }, 84 { key: "60-Big_T_Left", label: "Big T Left", pattern: [[0, 1, 0], [1, 1, 1], [1, 0, 0]], color: "bg-indigo-500", category: "T Shapes" }, 85 { key: "61-Big_T_Right", label: "Big T Right", pattern: [[0, 1, 0], [1, 1, 1], [0, 0, 1]], color: "bg-indigo-500", category: "T Shapes" }, 86 87 // ð¹ Plus Shape 88 { key: "62-Plus", label: "Plus", pattern: [[0, 1, 0], [1, 1, 1], [0, 1, 0]], color: "bg-teal-500", category: "Plus" }, 89 90 // ð¹ Stair Shapes 91 { key: "63-Stair_Up", label: "Stair Up", pattern: [[1, 0, 0], [1, 1, 0], [0, 1, 1]], color: "bg-cyan-400", category: "Stair" }, 92 { key: "64-Stair_Down", label: "Stair Down", pattern: [[0, 1, 1], [1, 1, 0], [1, 0, 0]], color: "bg-cyan-400", category: "Stair" }, 93 { key: "65-Stair_Left", label: "Stair Left", pattern: [[1, 1, 0], [1, 0, 0], [1, 1, 0]], color: "bg-cyan-400", category: "Stair" }, 94 { key: "66-Stair_Right", label: "Stair Right", pattern: [[0, 1, 1], [0, 0, 1], [1, 1, 0]], color: "bg-cyan-400", category: "Stair" }, 95 96 // ð¹ Reverse Stair Shapes 97 { key: "67-Reverse_Stair_Up", label: "Reverse Stair Up", pattern: [[0, 0, 1], [0, 1, 1], [1, 1, 0]], color: "bg-cyan-500", category: "Stair" }, 98 { key: "68-Reverse_Stair_Down", label: "Reverse Stair Down", pattern: [[1, 1, 0], [0, 1, 1], [1, 0, 0]], color: "bg-cyan-500", category: "Stair" }, 99 { key: "69-Reverse_Stair_Left", label: "Reverse Stair Left", pattern: [[0, 0, 1], [1, 1, 0], [1, 0, 1]], color: "bg-cyan-500", category: "Stair" }, 100 { key: "70-Reverse_Stair_Right", label: "Reverse Stair Right", pattern: [[1, 0, 1], [1, 1, 0], [0, 0, 1]], color: "bg-cyan-500", category: "Stair" }, 101 102 // ð¹ Diagonal Pair 103 { key: "71-Diagonal_Pair", label: "Diagonal Pair", pattern: [[1, 0], [0, 1]], color: "bg-amber-400", category: "Diagonal" }, 104 105 // ð¹ Big Z Shapes 106 { key: "83-Big_Z_left", label: "Big Z Left", pattern: [[1, 1, 0], [0, 1, 0], [0, 1, 1]], color: "bg-rose-400", category: "Big Z" }, 107 { key: "84-Big_Z_right", label: "Big Z Right", pattern: [[0, 1, 1], [0, 1, 0], [1, 1, 0]], color: "bg-rose-400", category: "Big Z" }, 108 { key: "85-Big_Z_top_right", label: "Big Z Top Right", pattern: [[0, 0, 1], [1, 1, 1], [1, 0, 0]], color: "bg-rose-400", category: "Big Z" }, 109 { key: "86-Big_Z_top_left", label: "Big Z Top Left", pattern: [[1, 0, 0], [1, 1, 1], [0, 0, 1]], color: "bg-rose-400", category: "Big Z" }, 110 111 // ð¹ Reverse Big Z Shapes 112 { key: "87-Reverse_Big_Z_left", label: "Reverse Big Z Left", pattern: [[0, 1, 1], [0, 1, 0], [1, 1, 0]], color: "bg-rose-500", category: "Big Z" }, 113 { key: "88-Reverse_Big_Z_right", label: "Reverse Big Z Right", pattern: [[1, 1, 1], [0, 1, 0], [1, 0, 0]], color: "bg-rose-500", category: "Big Z" }, 114 { key: "89-Reverse_Big_Z_top_right", label: "Reverse Big Z Top Right", pattern: [[0, 0, 1], [1, 1, 1], [0, 0, 1]], color: "bg-rose-500", category: "Big Z" }, 115 { key: "90-Reverse_Big_Z_top_left", label: "Reverse Big Z Top Left", pattern: [[1, 0, 0], [1, 1, 1], [0, 0, 1]], color: "bg-rose-500", category: "Big Z" }, 116 117 // ð¹ Tall L Shapes 118 { key: "91-Tall_L", label: "Tall L", pattern: [[1, 0], [1, 0], [1, 0], [1, 1]], color: "bg-emerald-600", category: "Tall L" }, 119 { key: "92-Tall_L_Mirrored", label: "Tall L Mirrored", pattern: [[0, 1], [0, 1], [0, 1], [1, 1]], color: "bg-emerald-600", category: "Tall L" }, 120 121 // ð¹ Wide L Shapes 122 { key: "93-Wide_L", label: "Wide L", pattern: [[1, 0, 0, 0], [1, 1, 1, 1]], color: "bg-emerald-700", category: "Wide L" }, 123 { key: "94-Wide_L_Mirrored", label: "Wide L Mirrored", pattern: [[0, 0, 0, 1], [1, 1, 1, 1]], color: "bg-emerald-700", category: "Wide L" }, 124 125 // ð¹ Offset T Shapes 126 { key: "95-Offset_T", label: "Offset T", pattern: [[1, 1, 1], [0, 1, 0], [0, 1, 0]], color: "bg-violet-500", category: "Offset T" }, 127 { key: "96-Offset_T_Rotated", label: "Offset T Rotated", pattern: [[0, 0, 1], [1, 1, 1], [0, 0, 1]], color: "bg-violet-500", category: "Offset T" }, 128 129 // ð¹ Offset Cross Shapes 130 { key: "97-Offset_Cross", label: "Offset Cross", pattern: [[0, 1, 0], [1, 1, 1], [0, 1, 0]], color: "bg-violet-600", category: "Offset Cross" }, 131 { key: "98-Offset_Cross_Rotated", label: "Offset Cross Rotated", pattern: [[0, 1, 1], [1, 1, 0], [1, 0, 0]], color: "bg-violet-600", category: "Offset Cross" }, 132 133 // ð¹ Hook Shapes 134 { key: "101-Hook_Shape", label: "Hook Shape", pattern: [[1, 1, 1], [1, 0, 0], [1, 0, 0]], color: "bg-fuchsia-500", category: "Hooks" }, 135 { key: "102-Hook_Mirrored", label: "Hook Mirrored", pattern: [[1, 1, 1], [0, 0, 1], [1, 0, 0]], color: "bg-fuchsia-500", category: "Hooks" }, 136 137 // ð¹ Zig/Zag Offset Shapes 138 { key: "103-Zig_Offset", label: "Zig Offset", pattern: [[1, 1, 0, 0], [0, 1, 1, 0], [0, 0, 1, 0], [0, 0, 1, 0]], color: "bg-slate-600", category: "Zigzag" }, 139 { key: "104-Zag_Offset", label: "Zag Offset", pattern: [[0, 0, 1, 0], [1, 1, 0, 0], [1, 0, 1, 0], [0, 1, 0, 0]], color: "bg-slate-600", category: "Zigzag" } 140]; 141 142// Export for use 143window.SHAPE_LIBRARY = SHAPE_LIBRARY;
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.