PageSourceSearch

https://smartblockblastsolver.com/completeShapeLibrary.js

js smartblockblastsolver.com collected 2026-09-28 11:12:37 UTC 12,638 bytes, 143 lines download raw bytes

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.