cm-chessboard 3.16.2 → 3.16.6
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.
- package/README.md +1 -1
- package/assets/styles/cm-chessboard.css +1 -225
- package/assets/styles/cm-chessboard.css.map +1 -1
- package/assets/styles/cm-chessboard.scss +2 -2
- package/examples/different-styles.html +4 -3
- package/examples/styles/examples.css +1 -53
- package/examples/styles/examples.css.map +1 -1
- package/examples/styles/examples.scss +15 -7
- package/examples/validate-moves.html +2 -1
- package/favicon.ico +0 -0
- package/index.html +1 -1
- package/package.json +1 -1
- package/src/cm-chessboard/Chessboard.js +13 -13
- package/src/cm-chessboard/ChessboardMoveInput.js +1 -0
- package/src/cm-chessboard/ChessboardView.js +6 -14
package/README.md
CHANGED
|
@@ -100,7 +100,7 @@ props = {
|
|
|
100
100
|
### setPiece(square, piece)
|
|
101
101
|
|
|
102
102
|
Sets a piece on a square. Example: `board.setPiece("e4", PIECE.blackKnight)` or
|
|
103
|
-
`board.setPiece("e4", "bn")`.
|
|
103
|
+
`board.setPiece("e4", "bn")`. Remove a Piece with `board.setPiece("e4", null)`.
|
|
104
104
|
|
|
105
105
|
### getPiece(square)
|
|
106
106
|
|
|
@@ -1,227 +1,3 @@
|
|
|
1
|
-
.cm-chessboard .board.input-enabled .square {
|
|
2
|
-
cursor: pointer; }
|
|
3
|
-
|
|
4
|
-
.cm-chessboard .markers .marker.markerFrame, .cm-chessboard .markers .marker.marker-frame {
|
|
5
|
-
stroke: black;
|
|
6
|
-
stroke-width: 1.8px;
|
|
7
|
-
opacity: 0.5; }
|
|
8
|
-
|
|
9
|
-
.cm-chessboard .markers .marker.markerFrameRed, .cm-chessboard .markers .marker.marker-frame-red {
|
|
10
|
-
stroke: #aa0000;
|
|
11
|
-
stroke-width: 1.8px;
|
|
12
|
-
opacity: 0.4; }
|
|
13
|
-
|
|
14
|
-
.cm-chessboard .markers .marker.markerSquare, .cm-chessboard .markers .marker.marker-square {
|
|
15
|
-
fill: black;
|
|
16
|
-
opacity: 0.11; }
|
|
17
|
-
|
|
18
|
-
.cm-chessboard .markers .marker.markerDot, .cm-chessboard .markers .marker.marker-dot {
|
|
19
|
-
fill: black;
|
|
20
|
-
opacity: 0.3; }
|
|
21
|
-
|
|
22
|
-
.cm-chessboard .markers .marker.markerCircle, .cm-chessboard .markers .marker.marker-circle {
|
|
23
|
-
stroke: #000055;
|
|
24
|
-
stroke-width: 3px;
|
|
25
|
-
opacity: 0.4; }
|
|
26
|
-
|
|
27
|
-
.cm-chessboard .markers .marker.markerCircleRed, .cm-chessboard .markers .marker.marker-circle-red {
|
|
28
|
-
stroke: #aa0000;
|
|
29
|
-
stroke-width: 3px;
|
|
30
|
-
opacity: 0.4; }
|
|
31
|
-
|
|
32
|
-
.cm-chessboard .pieces, .cm-chessboard .markers {
|
|
33
|
-
pointer-events: none; }
|
|
34
|
-
|
|
35
|
-
.cm-chessboard.default .board .square.white {
|
|
36
|
-
fill: #ecdab9; }
|
|
37
|
-
|
|
38
|
-
.cm-chessboard.default .board .square.black {
|
|
39
|
-
fill: #c5a076; }
|
|
40
|
-
|
|
41
|
-
.cm-chessboard.default.border-type-thin .board .border {
|
|
42
|
-
stroke: #c5a076;
|
|
43
|
-
stroke-width: 0.7%;
|
|
44
|
-
fill: transparent; }
|
|
45
|
-
|
|
46
|
-
.cm-chessboard.default.border-type-frame .board .border {
|
|
47
|
-
fill: #ecdab9;
|
|
48
|
-
stroke: none; }
|
|
49
|
-
|
|
50
|
-
.cm-chessboard.default.border-type-frame .board .border-inner {
|
|
51
|
-
fill: transparent;
|
|
52
|
-
stroke: #c5a076;
|
|
53
|
-
stroke-width: 0.7%; }
|
|
54
|
-
|
|
55
|
-
.cm-chessboard.default .coordinates {
|
|
56
|
-
pointer-events: none;
|
|
57
|
-
user-select: none; }
|
|
58
|
-
.cm-chessboard.default .coordinates .coordinate {
|
|
59
|
-
fill: #c5a076;
|
|
60
|
-
font-size: 7px;
|
|
61
|
-
cursor: default; }
|
|
62
|
-
.cm-chessboard.default .coordinates .coordinate.black {
|
|
63
|
-
fill: #ecdab9; }
|
|
64
|
-
.cm-chessboard.default .coordinates .coordinate.white {
|
|
65
|
-
fill: #c5a076; }
|
|
66
|
-
|
|
67
|
-
.cm-chessboard.green .board .square.white {
|
|
68
|
-
fill: #E0DDCC; }
|
|
69
|
-
|
|
70
|
-
.cm-chessboard.green .board .square.black {
|
|
71
|
-
fill: #4c946a; }
|
|
72
|
-
|
|
73
|
-
.cm-chessboard.green.border-type-thin .board .border {
|
|
74
|
-
stroke: #4c946a;
|
|
75
|
-
stroke-width: 0.7%;
|
|
76
|
-
fill: transparent; }
|
|
77
|
-
|
|
78
|
-
.cm-chessboard.green.border-type-frame .board .border {
|
|
79
|
-
fill: #E0DDCC;
|
|
80
|
-
stroke: none; }
|
|
81
|
-
|
|
82
|
-
.cm-chessboard.green.border-type-frame .board .border-inner {
|
|
83
|
-
fill: transparent;
|
|
84
|
-
stroke: #4c946a;
|
|
85
|
-
stroke-width: 0.7%; }
|
|
86
|
-
|
|
87
|
-
.cm-chessboard.green .coordinates {
|
|
88
|
-
pointer-events: none;
|
|
89
|
-
user-select: none; }
|
|
90
|
-
.cm-chessboard.green .coordinates .coordinate {
|
|
91
|
-
fill: #4c946a;
|
|
92
|
-
font-size: 7px;
|
|
93
|
-
cursor: default; }
|
|
94
|
-
.cm-chessboard.green .coordinates .coordinate.black {
|
|
95
|
-
fill: #E0DDCC; }
|
|
96
|
-
.cm-chessboard.green .coordinates .coordinate.white {
|
|
97
|
-
fill: #4c946a; }
|
|
98
|
-
|
|
99
|
-
.cm-chessboard.blue .board .square.white {
|
|
100
|
-
fill: #EBF0F5; }
|
|
101
|
-
|
|
102
|
-
.cm-chessboard.blue .board .square.black {
|
|
103
|
-
fill: #678FB1; }
|
|
104
|
-
|
|
105
|
-
.cm-chessboard.blue.border-type-thin .board .border {
|
|
106
|
-
stroke: #678FB1;
|
|
107
|
-
stroke-width: 0.7%;
|
|
108
|
-
fill: transparent; }
|
|
109
|
-
|
|
110
|
-
.cm-chessboard.blue.border-type-frame .board .border {
|
|
111
|
-
fill: #EBF0F5;
|
|
112
|
-
stroke: none; }
|
|
113
|
-
|
|
114
|
-
.cm-chessboard.blue.border-type-frame .board .border-inner {
|
|
115
|
-
fill: transparent;
|
|
116
|
-
stroke: #678FB1;
|
|
117
|
-
stroke-width: 0.7%; }
|
|
118
|
-
|
|
119
|
-
.cm-chessboard.blue .coordinates {
|
|
120
|
-
pointer-events: none;
|
|
121
|
-
user-select: none; }
|
|
122
|
-
.cm-chessboard.blue .coordinates .coordinate {
|
|
123
|
-
fill: #678FB1;
|
|
124
|
-
font-size: 7px;
|
|
125
|
-
cursor: default; }
|
|
126
|
-
.cm-chessboard.blue .coordinates .coordinate.black {
|
|
127
|
-
fill: #EBF0F5; }
|
|
128
|
-
.cm-chessboard.blue .coordinates .coordinate.white {
|
|
129
|
-
fill: #678FB1; }
|
|
130
|
-
|
|
131
|
-
.cm-chessboard.chess-club .board .square.white {
|
|
132
|
-
fill: #E6D3B1; }
|
|
133
|
-
|
|
134
|
-
.cm-chessboard.chess-club .board .square.black {
|
|
135
|
-
fill: #AF6B3F; }
|
|
136
|
-
|
|
137
|
-
.cm-chessboard.chess-club.border-type-thin .board .border {
|
|
138
|
-
stroke: #692e2b;
|
|
139
|
-
stroke-width: 0.7%;
|
|
140
|
-
fill: transparent; }
|
|
141
|
-
|
|
142
|
-
.cm-chessboard.chess-club.border-type-frame .board .border {
|
|
143
|
-
fill: #692e2b;
|
|
144
|
-
stroke: none; }
|
|
145
|
-
|
|
146
|
-
.cm-chessboard.chess-club.border-type-frame .board .border-inner {
|
|
147
|
-
fill: transparent;
|
|
148
|
-
stroke: #692e2b;
|
|
149
|
-
stroke-width: 0.7%; }
|
|
150
|
-
|
|
151
|
-
.cm-chessboard.chess-club .coordinates {
|
|
152
|
-
pointer-events: none;
|
|
153
|
-
user-select: none; }
|
|
154
|
-
.cm-chessboard.chess-club .coordinates .coordinate {
|
|
155
|
-
fill: #E6D3B1;
|
|
156
|
-
font-size: 7px;
|
|
157
|
-
cursor: default; }
|
|
158
|
-
.cm-chessboard.chess-club .coordinates .coordinate.black {
|
|
159
|
-
fill: #E6D3B1; }
|
|
160
|
-
.cm-chessboard.chess-club .coordinates .coordinate.white {
|
|
161
|
-
fill: #AF6B3F; }
|
|
162
|
-
|
|
163
|
-
.cm-chessboard.chessboard-js .board .square.white {
|
|
164
|
-
fill: #f0d9b5; }
|
|
165
|
-
|
|
166
|
-
.cm-chessboard.chessboard-js .board .square.black {
|
|
167
|
-
fill: #b58863; }
|
|
168
|
-
|
|
169
|
-
.cm-chessboard.chessboard-js.border-type-thin .board .border {
|
|
170
|
-
stroke: #404040;
|
|
171
|
-
stroke-width: 0.7%;
|
|
172
|
-
fill: transparent; }
|
|
173
|
-
|
|
174
|
-
.cm-chessboard.chessboard-js.border-type-frame .board .border {
|
|
175
|
-
fill: #f0d9b5;
|
|
176
|
-
stroke: none; }
|
|
177
|
-
|
|
178
|
-
.cm-chessboard.chessboard-js.border-type-frame .board .border-inner {
|
|
179
|
-
fill: transparent;
|
|
180
|
-
stroke: #404040;
|
|
181
|
-
stroke-width: 0.7%; }
|
|
182
|
-
|
|
183
|
-
.cm-chessboard.chessboard-js .coordinates {
|
|
184
|
-
pointer-events: none;
|
|
185
|
-
user-select: none; }
|
|
186
|
-
.cm-chessboard.chessboard-js .coordinates .coordinate {
|
|
187
|
-
fill: #404040;
|
|
188
|
-
font-size: 7px;
|
|
189
|
-
cursor: default; }
|
|
190
|
-
.cm-chessboard.chessboard-js .coordinates .coordinate.black {
|
|
191
|
-
fill: #f0d9b5; }
|
|
192
|
-
.cm-chessboard.chessboard-js .coordinates .coordinate.white {
|
|
193
|
-
fill: #b58863; }
|
|
194
|
-
|
|
195
|
-
.cm-chessboard.black-and-white .board .square.white {
|
|
196
|
-
fill: #ffffff; }
|
|
197
|
-
|
|
198
|
-
.cm-chessboard.black-and-white .board .square.black {
|
|
199
|
-
fill: #9c9c9c; }
|
|
200
|
-
|
|
201
|
-
.cm-chessboard.black-and-white.border-type-thin .board .border {
|
|
202
|
-
stroke: #9c9c9c;
|
|
203
|
-
stroke-width: 0.7%;
|
|
204
|
-
fill: transparent; }
|
|
205
|
-
|
|
206
|
-
.cm-chessboard.black-and-white.border-type-frame .board .border {
|
|
207
|
-
fill: #ffffff;
|
|
208
|
-
stroke: none; }
|
|
209
|
-
|
|
210
|
-
.cm-chessboard.black-and-white.border-type-frame .board .border-inner {
|
|
211
|
-
fill: transparent;
|
|
212
|
-
stroke: #9c9c9c;
|
|
213
|
-
stroke-width: 0.7%; }
|
|
214
|
-
|
|
215
|
-
.cm-chessboard.black-and-white .coordinates {
|
|
216
|
-
pointer-events: none;
|
|
217
|
-
user-select: none; }
|
|
218
|
-
.cm-chessboard.black-and-white .coordinates .coordinate {
|
|
219
|
-
fill: #9c9c9c;
|
|
220
|
-
font-size: 7px;
|
|
221
|
-
cursor: default; }
|
|
222
|
-
.cm-chessboard.black-and-white .coordinates .coordinate.black {
|
|
223
|
-
fill: #ffffff; }
|
|
224
|
-
.cm-chessboard.black-and-white .coordinates .coordinate.white {
|
|
225
|
-
fill: #9c9c9c; }
|
|
1
|
+
.cm-chessboard .board.input-enabled .square{cursor:pointer}.cm-chessboard .markers .marker.markerFrame,.cm-chessboard .markers .marker.marker-frame{stroke:black;stroke-width:1.8px;opacity:0.5}.cm-chessboard .markers .marker.markerFrameRed,.cm-chessboard .markers .marker.marker-frame-red{stroke:#aa0000;stroke-width:1.8px;opacity:0.4}.cm-chessboard .markers .marker.markerSquare,.cm-chessboard .markers .marker.marker-square{fill:black;opacity:0.11}.cm-chessboard .markers .marker.markerDot,.cm-chessboard .markers .marker.marker-dot{fill:black;opacity:0.3}.cm-chessboard .markers .marker.markerCircle,.cm-chessboard .markers .marker.marker-circle{stroke:#000055;stroke-width:3px;opacity:0.4}.cm-chessboard .markers .marker.markerCircleRed,.cm-chessboard .markers .marker.marker-circle-red{stroke:#aa0000;stroke-width:3px;opacity:0.4}.cm-chessboard .pieces,.cm-chessboard .markers{pointer-events:none}.cm-chessboard.default .board .square.white{fill:#ecdab9}.cm-chessboard.default .board .square.black{fill:#c5a076}.cm-chessboard.default.border-type-thin .board .border{stroke:#c5a076;stroke-width:0.7%;fill:transparent}.cm-chessboard.default.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default.border-type-frame .board .border-inner{fill:transparent;stroke:#c5a076;stroke-width:0.7%}.cm-chessboard.default .coordinates{pointer-events:none;user-select:none}.cm-chessboard.default .coordinates .coordinate{fill:#c5a076;font-size:7px;cursor:default}.cm-chessboard.default .coordinates .coordinate.black{fill:#ecdab9}.cm-chessboard.default .coordinates .coordinate.white{fill:#c5a076}.cm-chessboard.green .board .square.white{fill:#E0DDCC}.cm-chessboard.green .board .square.black{fill:#4c946a}.cm-chessboard.green.border-type-thin .board .border{stroke:#4c946a;stroke-width:0.7%;fill:transparent}.cm-chessboard.green.border-type-frame .board .border{fill:#E0DDCC;stroke:none}.cm-chessboard.green.border-type-frame .board .border-inner{fill:transparent;stroke:#4c946a;stroke-width:0.7%}.cm-chessboard.green .coordinates{pointer-events:none;user-select:none}.cm-chessboard.green .coordinates .coordinate{fill:#4c946a;font-size:7px;cursor:default}.cm-chessboard.green .coordinates .coordinate.black{fill:#E0DDCC}.cm-chessboard.green .coordinates .coordinate.white{fill:#4c946a}.cm-chessboard.blue .board .square.white{fill:#d8ecfb}.cm-chessboard.blue .board .square.black{fill:#86afcf}.cm-chessboard.blue.border-type-thin .board .border{stroke:#86afcf;stroke-width:0.7%;fill:transparent}.cm-chessboard.blue.border-type-frame .board .border{fill:#d8ecfb;stroke:none}.cm-chessboard.blue.border-type-frame .board .border-inner{fill:transparent;stroke:#86afcf;stroke-width:0.7%}.cm-chessboard.blue .coordinates{pointer-events:none;user-select:none}.cm-chessboard.blue .coordinates .coordinate{fill:#86afcf;font-size:7px;cursor:default}.cm-chessboard.blue .coordinates .coordinate.black{fill:#d8ecfb}.cm-chessboard.blue .coordinates .coordinate.white{fill:#86afcf}.cm-chessboard.chess-club .board .square.white{fill:#E6D3B1}.cm-chessboard.chess-club .board .square.black{fill:#AF6B3F}.cm-chessboard.chess-club.border-type-thin .board .border{stroke:#692e2b;stroke-width:0.7%;fill:transparent}.cm-chessboard.chess-club.border-type-frame .board .border{fill:#692e2b;stroke:none}.cm-chessboard.chess-club.border-type-frame .board .border-inner{fill:transparent;stroke:#692e2b;stroke-width:0.7%}.cm-chessboard.chess-club .coordinates{pointer-events:none;user-select:none}.cm-chessboard.chess-club .coordinates .coordinate{fill:#E6D3B1;font-size:7px;cursor:default}.cm-chessboard.chess-club .coordinates .coordinate.black{fill:#E6D3B1}.cm-chessboard.chess-club .coordinates .coordinate.white{fill:#AF6B3F}.cm-chessboard.chessboard-js .board .square.white{fill:#f0d9b5}.cm-chessboard.chessboard-js .board .square.black{fill:#b58863}.cm-chessboard.chessboard-js.border-type-thin .board .border{stroke:#404040;stroke-width:0.7%;fill:transparent}.cm-chessboard.chessboard-js.border-type-frame .board .border{fill:#f0d9b5;stroke:none}.cm-chessboard.chessboard-js.border-type-frame .board .border-inner{fill:transparent;stroke:#404040;stroke-width:0.7%}.cm-chessboard.chessboard-js .coordinates{pointer-events:none;user-select:none}.cm-chessboard.chessboard-js .coordinates .coordinate{fill:#404040;font-size:7px;cursor:default}.cm-chessboard.chessboard-js .coordinates .coordinate.black{fill:#f0d9b5}.cm-chessboard.chessboard-js .coordinates .coordinate.white{fill:#b58863}.cm-chessboard.black-and-white .board .square.white{fill:#fff}.cm-chessboard.black-and-white .board .square.black{fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-thin .board .border{stroke:#9c9c9c;stroke-width:0.7%;fill:transparent}.cm-chessboard.black-and-white.border-type-frame .board .border{fill:#fff;stroke:none}.cm-chessboard.black-and-white.border-type-frame .board .border-inner{fill:transparent;stroke:#9c9c9c;stroke-width:0.7%}.cm-chessboard.black-and-white .coordinates{pointer-events:none;user-select:none}.cm-chessboard.black-and-white .coordinates .coordinate{fill:#9c9c9c;font-size:7px;cursor:default}.cm-chessboard.black-and-white .coordinates .coordinate.black{fill:#fff}.cm-chessboard.black-and-white .coordinates .coordinate.white{fill:#9c9c9c}
|
|
226
2
|
|
|
227
3
|
/*# sourceMappingURL=cm-chessboard.css.map */
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
"_cm-chessboard-theme.scss"
|
|
7
7
|
],
|
|
8
8
|
"names": [],
|
|
9
|
-
"mappings": "AAGA,AAGM,cAHQ,CACZ,MAAM,AACH,cAAc,CACb,OAAO,
|
|
9
|
+
"mappings": "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"
|
|
10
10
|
}
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
)
|
|
60
60
|
@include cm-chessboard-theme(
|
|
61
61
|
"blue", // name
|
|
62
|
-
#
|
|
62
|
+
#d8ecfb, #86afcf // squares
|
|
63
63
|
)
|
|
64
64
|
@include cm-chessboard-theme(
|
|
65
65
|
"chess-club", // name
|
|
@@ -78,4 +78,4 @@
|
|
|
78
78
|
@include cm-chessboard-theme(
|
|
79
79
|
"black-and-white", // name
|
|
80
80
|
#ffffff, #9c9c9c // squares
|
|
81
|
-
)
|
|
81
|
+
)
|
|
@@ -33,7 +33,8 @@
|
|
|
33
33
|
new Chessboard(document.getElementById("board2"), {
|
|
34
34
|
position: "start",
|
|
35
35
|
style: {
|
|
36
|
-
cssClass: "chessboard-js"
|
|
36
|
+
cssClass: "chessboard-js",
|
|
37
|
+
borderType: BORDER_TYPE.thin
|
|
37
38
|
},
|
|
38
39
|
sprite: {url: "../assets/images/chessboard-sprite.svg", cache: false}
|
|
39
40
|
})
|
|
@@ -49,7 +50,7 @@
|
|
|
49
50
|
position: "start",
|
|
50
51
|
style: {
|
|
51
52
|
cssClass: "blue",
|
|
52
|
-
borderType: BORDER_TYPE.
|
|
53
|
+
borderType: BORDER_TYPE.thin,
|
|
53
54
|
showCoordinates: false,
|
|
54
55
|
},
|
|
55
56
|
sprite: {url: "../assets/images/chessboard-sprite.svg", cache: false}
|
|
@@ -93,4 +94,4 @@
|
|
|
93
94
|
})
|
|
94
95
|
</script>
|
|
95
96
|
</body>
|
|
96
|
-
</html>
|
|
97
|
+
</html>
|
|
@@ -1,55 +1,3 @@
|
|
|
1
|
-
body {
|
|
2
|
-
color: #333;
|
|
3
|
-
background-color: #f8f9fa;
|
|
4
|
-
padding: 20px;
|
|
5
|
-
margin: 0;
|
|
6
|
-
font-family: "Helvetica Neue", sans-serif;
|
|
7
|
-
line-height: 1.3;
|
|
8
|
-
font-size: 17px; }
|
|
9
|
-
body * {
|
|
10
|
-
font-size: 17px; }
|
|
11
|
-
|
|
12
|
-
a {
|
|
13
|
-
color: #068cdf; }
|
|
14
|
-
a:visited {
|
|
15
|
-
color: #333; }
|
|
16
|
-
a:hover {
|
|
17
|
-
color: #056dad; }
|
|
18
|
-
|
|
19
|
-
h1, h1 a {
|
|
20
|
-
margin-top: 0;
|
|
21
|
-
font-size: 34px; }
|
|
22
|
-
|
|
23
|
-
h1 {
|
|
24
|
-
margin-bottom: 10px; }
|
|
25
|
-
|
|
26
|
-
h2 {
|
|
27
|
-
margin-bottom: 15px;
|
|
28
|
-
font-size: 23.8px; }
|
|
29
|
-
|
|
30
|
-
pre {
|
|
31
|
-
font-family: "courier new", monospace;
|
|
32
|
-
font-size: 90%;
|
|
33
|
-
background-color: #555;
|
|
34
|
-
color: #eee;
|
|
35
|
-
padding: 5px;
|
|
36
|
-
overflow: auto; }
|
|
37
|
-
|
|
38
|
-
div.board {
|
|
39
|
-
float: left;
|
|
40
|
-
max-width: 500px;
|
|
41
|
-
width: calc(100vw - 40px);
|
|
42
|
-
margin-right: 20px;
|
|
43
|
-
margin-bottom: 20px; }
|
|
44
|
-
|
|
45
|
-
.clearfix::after {
|
|
46
|
-
content: "";
|
|
47
|
-
clear: both;
|
|
48
|
-
display: table; }
|
|
49
|
-
|
|
50
|
-
button {
|
|
51
|
-
padding: 4px 20px;
|
|
52
|
-
margin-right: 10px;
|
|
53
|
-
margin-bottom: 10px; }
|
|
1
|
+
body{color:#fff;background-color:#222;padding:20px;margin:0;font-family:"Helvetica Neue", sans-serif;line-height:1.3;font-size:17px}body *{font-size:17px}a{color:#516CD4}a:visited{color:#929292}a:hover{color:#E2FEDE}h1,h1 a{margin-top:0;font-size:34px;color:#CD7338}h1{margin-bottom:10px}h2{margin-bottom:15px;font-size:23.8px;color:#CD7338}pre{font-family:"courier new", monospace;font-size:90%;background-color:#111;color:#eee;padding:5px;overflow:auto}div.board{float:left;max-width:500px;width:calc(100vw - 40px);margin-right:20px;margin-bottom:20px}.clearfix::after{content:"";clear:both;display:table}button{padding:4px 20px;margin-right:10px;margin-bottom:10px;background-color:#999}button:hover{background-color:#777}
|
|
54
2
|
|
|
55
3
|
/*# sourceMappingURL=examples.css.map */
|
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
"examples.scss"
|
|
6
6
|
],
|
|
7
7
|
"names": [],
|
|
8
|
-
"mappings": "
|
|
8
|
+
"mappings": "AASA,AAAA,IAAI,AAAC,CACH,KAAK,CAPG,IAAI,CAQZ,gBAAgB,CATL,IAAI,CAUf,OAAO,CAAE,IAAI,CACb,MAAM,CAAE,CAAC,CACT,WAAW,CAAE,4BAA4B,CACzC,WAAW,CAAE,GAAG,CAChB,SAAS,CATC,IAAI,CAaf,AAXD,AAQE,IARE,CAQF,CAAC,AAAC,CACA,SAAS,CAXD,IAAI,CAYb,AAGH,AAAA,CAAC,AAAC,CACA,KAAK,CAvBA,OAAO,CA8Bb,AARD,AAEE,CAFD,CAEG,OAAO,AAAC,CACR,KAAK,CAAE,OAAO,CACf,AAJH,AAKE,CALD,CAKG,KAAK,AAAC,CACN,KAAK,CA3BI,OAAO,CA4BjB,AAGH,AAAA,EAAE,CAAE,EAAE,CAAC,CAAC,AAAC,CACP,UAAU,CAAE,CAAC,CACb,SAAS,CAAE,IAAc,CACzB,KAAK,CA/BE,OAAO,CAgCf,AAED,AAAA,EAAE,AAAC,CACD,aAAa,CAAE,IAAI,CACpB,AAED,AAAA,EAAE,AAAC,CACD,aAAa,CAAE,IAAI,CACnB,SAAS,CAAE,MAAgB,CAC3B,KAAK,CAzCE,OAAO,CA0Cf,AAED,AAAA,GAAG,AAAC,CACF,WAAW,CAAE,wBAAwB,CACrC,SAAS,CAAE,GAAG,CACd,gBAAgB,CA9CA,IAAI,CA+CpB,KAAK,CA9CA,IAAI,CA+CT,OAAO,CAAE,GAAG,CACZ,QAAQ,CAAE,IAAI,CACf,AAED,AAAA,GAAG,AAAA,MAAM,AAAC,CACR,KAAK,CAAE,IAAI,CACX,SAAS,CAAE,KAAK,CAChB,KAAK,CAAE,kBAAkB,CACzB,YAAY,CAAE,IAAI,CAClB,aAAa,CAAE,IAAI,CACpB,AAED,AAAA,SAAS,EAAE,KAAK,AAAC,CACf,OAAO,CAAE,EAAE,CACX,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,KAAK,CACf,AAED,AAAA,MAAM,AAAC,CACL,OAAO,CAAE,QAAQ,CACjB,YAAY,CAAE,IAAI,CAClB,aAAa,CAAE,IAAI,CACnB,gBAAgB,CAAE,IAAI,CAIvB,AARD,AAKE,MALI,CAKF,KAAK,AAAC,CACN,gBAAgB,CAAE,IAAI,CACvB"
|
|
9
9
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
$link: #
|
|
2
|
-
$
|
|
3
|
-
$
|
|
4
|
-
$
|
|
1
|
+
$link: #516CD4;
|
|
2
|
+
$link-hover: #E2FEDE;
|
|
3
|
+
$background: #222;
|
|
4
|
+
$default: #fff;
|
|
5
|
+
$color2: #CD7338;
|
|
6
|
+
$code-background: #111;
|
|
5
7
|
$code: #eee;
|
|
6
8
|
$font-size: 17px;
|
|
7
9
|
|
|
@@ -21,16 +23,17 @@ body {
|
|
|
21
23
|
a {
|
|
22
24
|
color: $link;
|
|
23
25
|
&:visited {
|
|
24
|
-
color:
|
|
26
|
+
color: #929292;
|
|
25
27
|
}
|
|
26
28
|
&:hover {
|
|
27
|
-
color:
|
|
29
|
+
color: $link-hover;
|
|
28
30
|
}
|
|
29
31
|
}
|
|
30
32
|
|
|
31
33
|
h1, h1 a {
|
|
32
34
|
margin-top: 0;
|
|
33
35
|
font-size: $font-size * 2;
|
|
36
|
+
color: $color2;
|
|
34
37
|
}
|
|
35
38
|
|
|
36
39
|
h1 {
|
|
@@ -40,6 +43,7 @@ h1 {
|
|
|
40
43
|
h2 {
|
|
41
44
|
margin-bottom: 15px;
|
|
42
45
|
font-size: $font-size * 1.4;
|
|
46
|
+
color: $color2;
|
|
43
47
|
}
|
|
44
48
|
|
|
45
49
|
pre {
|
|
@@ -69,4 +73,8 @@ button {
|
|
|
69
73
|
padding: 4px 20px;
|
|
70
74
|
margin-right: 10px;
|
|
71
75
|
margin-bottom: 10px;
|
|
72
|
-
|
|
76
|
+
background-color: #999;
|
|
77
|
+
&:hover {
|
|
78
|
+
background-color: #777;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
@@ -105,6 +105,7 @@ board.enableMoveInput(inputHandler, COLOR.white)
|
|
|
105
105
|
|
|
106
106
|
const board = new Chessboard(document.getElementById("board"), {
|
|
107
107
|
position: chess.fen(),
|
|
108
|
+
// animationDuration: 2000,
|
|
108
109
|
sprite: {url: "../assets/images/chessboard-sprite-staunty.svg"},
|
|
109
110
|
style: {moveFromMarker: undefined, moveToMarker: undefined}, // disable standard markers
|
|
110
111
|
orientation: COLOR.white
|
|
@@ -112,4 +113,4 @@ board.enableMoveInput(inputHandler, COLOR.white)
|
|
|
112
113
|
board.enableMoveInput(inputHandler, COLOR.white)
|
|
113
114
|
</script>
|
|
114
115
|
</body>
|
|
115
|
-
</html>
|
|
116
|
+
</html>
|
package/favicon.ico
ADDED
|
Binary file
|
package/index.html
CHANGED
package/package.json
CHANGED
|
@@ -40,7 +40,7 @@ export const FEN_EMPTY_POSITION = "8/8/8/8/8/8/8/8"
|
|
|
40
40
|
|
|
41
41
|
export class Chessboard {
|
|
42
42
|
|
|
43
|
-
constructor(element, props = {}) {
|
|
43
|
+
constructor(element, props = {}) { // TODO rename element to context
|
|
44
44
|
if (!element) {
|
|
45
45
|
throw new Error("container element is " + element)
|
|
46
46
|
}
|
|
@@ -51,7 +51,7 @@ export class Chessboard {
|
|
|
51
51
|
style: {
|
|
52
52
|
cssClass: "default",
|
|
53
53
|
showCoordinates: true, // show ranks and files
|
|
54
|
-
borderType: BORDER_TYPE.
|
|
54
|
+
borderType: BORDER_TYPE.none, // thin: thin border, frame: wide border with coordinates in it, none: no border
|
|
55
55
|
aspectRatio: 1, // height/width. Set to `undefined`, if you want to define it only in the css.
|
|
56
56
|
moveFromMarker: MARKER_TYPE.frame, // the marker used to mark the start square
|
|
57
57
|
moveToMarker: MARKER_TYPE.frame, // the marker used to mark the square where the figure is moving to
|
|
@@ -61,7 +61,7 @@ export class Chessboard {
|
|
|
61
61
|
responsive: true, // resizes the board based on element size
|
|
62
62
|
animationDuration: 300, // pieces animation duration in milliseconds
|
|
63
63
|
sprite: {
|
|
64
|
-
url: "./assets/images/chessboard-sprite
|
|
64
|
+
url: "./assets/images/chessboard-sprite.svg", // pieces and markers are stored as svg sprite
|
|
65
65
|
size: 40, // the sprite size, defaults to 40x40px
|
|
66
66
|
cache: true // cache the sprite inline, in the HTML
|
|
67
67
|
}
|
|
@@ -120,17 +120,17 @@ export class Chessboard {
|
|
|
120
120
|
const pieceFrom = this.getPiece(squareFrom)
|
|
121
121
|
if(!pieceFrom) {
|
|
122
122
|
reject("no piece on square " + squareFrom)
|
|
123
|
-
return
|
|
124
|
-
}
|
|
125
|
-
this.state.squares[this.state.squareToIndex(squareFrom)] = null
|
|
126
|
-
this.state.squares[this.state.squareToIndex(squareTo)] = pieceFrom
|
|
127
|
-
if (animated) {
|
|
128
|
-
this.view.animatePieces(prevSquares, this.state.squares, () => {
|
|
129
|
-
resolve()
|
|
130
|
-
})
|
|
131
123
|
} else {
|
|
132
|
-
this.
|
|
133
|
-
|
|
124
|
+
this.state.squares[this.state.squareToIndex(squareFrom)] = null
|
|
125
|
+
this.state.squares[this.state.squareToIndex(squareTo)] = pieceFrom
|
|
126
|
+
if (animated) {
|
|
127
|
+
this.view.animatePieces(prevSquares, this.state.squares, () => {
|
|
128
|
+
resolve()
|
|
129
|
+
})
|
|
130
|
+
} else {
|
|
131
|
+
this.view.drawPieces(this.state.squares)
|
|
132
|
+
resolve()
|
|
133
|
+
}
|
|
134
134
|
}
|
|
135
135
|
})
|
|
136
136
|
}
|
|
@@ -67,7 +67,7 @@ export class ChessboardView {
|
|
|
67
67
|
destroy() {
|
|
68
68
|
this.moveInput.destroy()
|
|
69
69
|
if (this.resizeObserver) {
|
|
70
|
-
this.resizeObserver.unobserve(this.chessboard.element)
|
|
70
|
+
this.resizeObserver.unobserve(this.chessboard.element)
|
|
71
71
|
}
|
|
72
72
|
if (this.resizeListener) {
|
|
73
73
|
window.removeEventListener("resize", this.resizeListener)
|
|
@@ -335,21 +335,13 @@ export class ChessboardView {
|
|
|
335
335
|
nextPieceAnimationInQueue() {
|
|
336
336
|
const nextAnimation = this.animationQueue.shift()
|
|
337
337
|
if (nextAnimation !== undefined) {
|
|
338
|
+
this.drawPieces(nextAnimation.fromSquares)
|
|
338
339
|
this.animationRunning = true
|
|
339
340
|
this.currentAnimation = new ChessboardPiecesAnimation(this, nextAnimation.fromSquares, nextAnimation.toSquares, this.chessboard.props.animationDuration / (this.animationQueue.length + 1), () => {
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
if (nextAnimation.callback) {
|
|
345
|
-
nextAnimation.callback()
|
|
346
|
-
}
|
|
347
|
-
} else {
|
|
348
|
-
this.animationRunning = false
|
|
349
|
-
this.nextPieceAnimationInQueue()
|
|
350
|
-
if (nextAnimation.callback) {
|
|
351
|
-
nextAnimation.callback()
|
|
352
|
-
}
|
|
341
|
+
this.animationRunning = false
|
|
342
|
+
this.nextPieceAnimationInQueue()
|
|
343
|
+
if (nextAnimation.callback) {
|
|
344
|
+
nextAnimation.callback()
|
|
353
345
|
}
|
|
354
346
|
})
|
|
355
347
|
}
|