@connectorvol/chessops 1.0.0 → 2.0.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 (93) hide show
  1. package/dist/{esm/attacks.js → attacks.js} +2 -3
  2. package/dist/{esm/board.js → board.js} +25 -9
  3. package/dist/{esm/chess.js → chess.js} +24 -18
  4. package/dist/{esm/compat.js → compat.js} +1 -2
  5. package/dist/{esm/debug.js → debug.js} +0 -1
  6. package/dist/{esm/fen.js → fen.js} +1 -2
  7. package/dist/{types/index.d.ts → index.d.ts} +6 -3
  8. package/dist/{esm/index.js → index.js} +1 -2
  9. package/dist/{esm/pgn.js → pgn.js} +54 -34
  10. package/dist/pgnOps.svelte.d.ts +31 -0
  11. package/dist/pgnOps.svelte.js +122 -0
  12. package/dist/{esm/san.js → san.js} +2 -5
  13. package/dist/{esm/setup.js → setup.js} +29 -26
  14. package/dist/{esm/squareSet.js → squareSet.js} +17 -16
  15. package/dist/{esm/transform.js → transform.js} +10 -14
  16. package/dist/{esm/types.js → types.js} +0 -1
  17. package/dist/{esm/util.js → util.js} +0 -1
  18. package/dist/{types/variant.d.ts → variant.d.ts} +2 -1
  19. package/dist/{esm/variant.js → variant.js} +21 -26
  20. package/package.json +31 -59
  21. package/dist/cjs/attacks.js +0 -152
  22. package/dist/cjs/attacks.js.map +0 -1
  23. package/dist/cjs/board.js +0 -143
  24. package/dist/cjs/board.js.map +0 -1
  25. package/dist/cjs/chess.js +0 -638
  26. package/dist/cjs/chess.js.map +0 -1
  27. package/dist/cjs/compat.js +0 -89
  28. package/dist/cjs/compat.js.map +0 -1
  29. package/dist/cjs/debug.js +0 -103
  30. package/dist/cjs/debug.js.map +0 -1
  31. package/dist/cjs/fen.js +0 -325
  32. package/dist/cjs/fen.js.map +0 -1
  33. package/dist/cjs/index.js +0 -94
  34. package/dist/cjs/index.js.map +0 -1
  35. package/dist/cjs/pgn.js +0 -796
  36. package/dist/cjs/pgn.js.map +0 -1
  37. package/dist/cjs/san.js +0 -174
  38. package/dist/cjs/san.js.map +0 -1
  39. package/dist/cjs/setup.js +0 -167
  40. package/dist/cjs/setup.js.map +0 -1
  41. package/dist/cjs/squareSet.js +0 -206
  42. package/dist/cjs/squareSet.js.map +0 -1
  43. package/dist/cjs/transform.js +0 -57
  44. package/dist/cjs/transform.js.map +0 -1
  45. package/dist/cjs/types.js +0 -24
  46. package/dist/cjs/types.js.map +0 -1
  47. package/dist/cjs/util.js +0 -104
  48. package/dist/cjs/util.js.map +0 -1
  49. package/dist/cjs/variant.js +0 -833
  50. package/dist/cjs/variant.js.map +0 -1
  51. package/dist/esm/attacks.js.map +0 -1
  52. package/dist/esm/board.js.map +0 -1
  53. package/dist/esm/chess.js.map +0 -1
  54. package/dist/esm/compat.js.map +0 -1
  55. package/dist/esm/debug.js.map +0 -1
  56. package/dist/esm/fen.js.map +0 -1
  57. package/dist/esm/index.js.map +0 -1
  58. package/dist/esm/pgn.js.map +0 -1
  59. package/dist/esm/san.js.map +0 -1
  60. package/dist/esm/setup.js.map +0 -1
  61. package/dist/esm/squareSet.js.map +0 -1
  62. package/dist/esm/transform.js.map +0 -1
  63. package/dist/esm/types.js.map +0 -1
  64. package/dist/esm/util.js.map +0 -1
  65. package/dist/esm/variant.js.map +0 -1
  66. package/src/attacks.ts +0 -160
  67. package/src/board.ts +0 -168
  68. package/src/chess.ts +0 -687
  69. package/src/compat.ts +0 -120
  70. package/src/debug.ts +0 -100
  71. package/src/fen.ts +0 -328
  72. package/src/index.ts +0 -85
  73. package/src/pgn.ts +0 -876
  74. package/src/san.ts +0 -190
  75. package/src/setup.ts +0 -203
  76. package/src/squareSet.ts +0 -243
  77. package/src/transform.ts +0 -49
  78. package/src/types.ts +0 -93
  79. package/src/util.ts +0 -116
  80. package/src/variant.ts +0 -939
  81. /package/dist/{types/attacks.d.ts → attacks.d.ts} +0 -0
  82. /package/dist/{types/board.d.ts → board.d.ts} +0 -0
  83. /package/dist/{types/chess.d.ts → chess.d.ts} +0 -0
  84. /package/dist/{types/compat.d.ts → compat.d.ts} +0 -0
  85. /package/dist/{types/debug.d.ts → debug.d.ts} +0 -0
  86. /package/dist/{types/fen.d.ts → fen.d.ts} +0 -0
  87. /package/dist/{types/pgn.d.ts → pgn.d.ts} +0 -0
  88. /package/dist/{types/san.d.ts → san.d.ts} +0 -0
  89. /package/dist/{types/setup.d.ts → setup.d.ts} +0 -0
  90. /package/dist/{types/squareSet.d.ts → squareSet.d.ts} +0 -0
  91. /package/dist/{types/transform.d.ts → transform.d.ts} +0 -0
  92. /package/dist/{types/types.d.ts → types.d.ts} +0 -0
  93. /package/dist/{types/util.d.ts → util.d.ts} +0 -0
package/dist/cjs/board.js DELETED
@@ -1,143 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.boardEquals = exports.Board = void 0;
4
- const squareSet_js_1 = require("./squareSet.js");
5
- const types_js_1 = require("./types.js");
6
- /**
7
- * Piece positions on a board.
8
- *
9
- * Properties are sets of squares, like `board.occupied` for all occupied
10
- * squares, `board[color]` for all pieces of that color, and `board[role]`
11
- * for all pieces of that role. When modifying the properties directly, take
12
- * care to keep them consistent.
13
- */
14
- class Board {
15
- constructor() { }
16
- static default() {
17
- const board = new Board();
18
- board.reset();
19
- return board;
20
- }
21
- /**
22
- * Resets all pieces to the default starting position for standard chess.
23
- */
24
- reset() {
25
- this.occupied = new squareSet_js_1.SquareSet(0xffff, 4294901760);
26
- this.promoted = squareSet_js_1.SquareSet.empty();
27
- this.white = new squareSet_js_1.SquareSet(0xffff, 0);
28
- this.black = new squareSet_js_1.SquareSet(0, 4294901760);
29
- this.pawn = new squareSet_js_1.SquareSet(0xff00, 16711680);
30
- this.knight = new squareSet_js_1.SquareSet(0x42, 1107296256);
31
- this.bishop = new squareSet_js_1.SquareSet(0x24, 603979776);
32
- this.rook = new squareSet_js_1.SquareSet(0x81, 2164260864);
33
- this.queen = new squareSet_js_1.SquareSet(0x8, 134217728);
34
- this.king = new squareSet_js_1.SquareSet(0x10, 268435456);
35
- }
36
- static empty() {
37
- const board = new Board();
38
- board.clear();
39
- return board;
40
- }
41
- clear() {
42
- this.occupied = squareSet_js_1.SquareSet.empty();
43
- this.promoted = squareSet_js_1.SquareSet.empty();
44
- for (const color of types_js_1.COLORS)
45
- this[color] = squareSet_js_1.SquareSet.empty();
46
- for (const role of types_js_1.ROLES)
47
- this[role] = squareSet_js_1.SquareSet.empty();
48
- }
49
- clone() {
50
- const board = new Board();
51
- board.occupied = this.occupied;
52
- board.promoted = this.promoted;
53
- for (const color of types_js_1.COLORS)
54
- board[color] = this[color];
55
- for (const role of types_js_1.ROLES)
56
- board[role] = this[role];
57
- return board;
58
- }
59
- getColor(square) {
60
- if (this.white.has(square))
61
- return "white";
62
- if (this.black.has(square))
63
- return "black";
64
- return;
65
- }
66
- getRole(square) {
67
- for (const role of types_js_1.ROLES) {
68
- if (this[role].has(square))
69
- return role;
70
- }
71
- return;
72
- }
73
- get(square) {
74
- const color = this.getColor(square);
75
- if (!color)
76
- return;
77
- const role = this.getRole(square);
78
- const promoted = this.promoted.has(square);
79
- return { color, role, promoted };
80
- }
81
- /**
82
- * Removes and returns the piece from the given `square`, if any.
83
- */
84
- take(square) {
85
- const piece = this.get(square);
86
- if (piece) {
87
- this.occupied = this.occupied.without(square);
88
- this[piece.color] = this[piece.color].without(square);
89
- this[piece.role] = this[piece.role].without(square);
90
- if (piece.promoted)
91
- this.promoted = this.promoted.without(square);
92
- }
93
- return piece;
94
- }
95
- /**
96
- * Put `piece` onto `square`, potentially replacing an existing piece.
97
- * Returns the existing piece, if any.
98
- */
99
- set(square, piece) {
100
- const old = this.take(square);
101
- this.occupied = this.occupied.with(square);
102
- this[piece.color] = this[piece.color].with(square);
103
- this[piece.role] = this[piece.role].with(square);
104
- if (piece.promoted)
105
- this.promoted = this.promoted.with(square);
106
- return old;
107
- }
108
- has(square) {
109
- return this.occupied.has(square);
110
- }
111
- *[Symbol.iterator]() {
112
- for (const square of this.occupied) {
113
- yield [square, this.get(square)];
114
- }
115
- }
116
- pieces(color, role) {
117
- return this[color].intersect(this[role]);
118
- }
119
- rooksAndQueens() {
120
- return this.rook.union(this.queen);
121
- }
122
- bishopsAndQueens() {
123
- return this.bishop.union(this.queen);
124
- }
125
- steppers() {
126
- return this.knight.union(this.pawn).union(this.king);
127
- }
128
- sliders() {
129
- return this.bishop.union(this.rook).union(this.queen);
130
- }
131
- /**
132
- * Finds the unique king of the given `color`, if any.
133
- */
134
- kingOf(color) {
135
- return this.pieces(color, "king").singleSquare();
136
- }
137
- }
138
- exports.Board = Board;
139
- const boardEquals = (left, right) => left.white.equals(right.white) &&
140
- left.promoted.equals(right.promoted) &&
141
- types_js_1.ROLES.every((role) => left[role].equals(right[role]));
142
- exports.boardEquals = boardEquals;
143
- //# sourceMappingURL=board.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"board.js","sourceRoot":"","sources":["../../src/board.ts"],"names":[],"mappings":"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"}