cubing 0.55.2 → 0.57.0
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/dist/bin/chunks/{chunk-DFQMTDRG.js → chunk-J53ID3VX.js} +2 -2
- package/dist/bin/chunks/chunk-J53ID3VX.js.map +7 -0
- package/dist/bin/order.js +1 -1
- package/dist/bin/order.js.map +2 -2
- package/dist/bin/puzzle-geometry-bin.js +1 -1
- package/dist/bin/puzzle-geometry-bin.js.map +2 -2
- package/dist/bin/scramble.js +2 -1
- package/dist/bin/scramble.js.map +2 -2
- package/dist/lib/cubing/{PuzzleLoader-DGpDr4U9.d.ts → PuzzleLoader-Dd4G1VlU.d.ts} +358 -314
- package/dist/lib/cubing/alg/index.d.ts +9 -9
- package/dist/lib/cubing/alg/index.js +1 -1
- package/dist/lib/cubing/bluetooth/index.d.ts +11 -12
- package/dist/lib/cubing/bluetooth/index.js +72 -57
- package/dist/lib/cubing/bluetooth/index.js.map +3 -3
- package/dist/lib/cubing/{bluetooth-puzzle-C097rA5h.d.ts → bluetooth-puzzle-FIXncgc8.d.ts} +1 -1
- package/dist/lib/cubing/chunks/big-puzzle-orientation-IZASZS5A.js +70 -0
- package/dist/lib/cubing/chunks/big-puzzle-orientation-IZASZS5A.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-TQF5J7MH.js → chunk-3YVVF3KK.js} +79 -79
- package/dist/lib/cubing/chunks/chunk-3YVVF3KK.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-ZOU73IV5.js → chunk-CGV5LY7H.js} +2 -2
- package/dist/lib/cubing/chunks/chunk-CGV5LY7H.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-Y5U55NHQ.js → chunk-DWN2US56.js} +11 -11
- package/dist/lib/cubing/chunks/chunk-DWN2US56.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-PJH5IVDC.js → chunk-EVYENG3X.js} +40 -42
- package/dist/lib/cubing/chunks/chunk-EVYENG3X.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-BQNTAVTA.js → chunk-GKM2CK6T.js} +2 -2
- package/dist/lib/cubing/chunks/{chunk-MFK4M6PV.js → chunk-J6NSY47E.js} +120 -18
- package/dist/lib/cubing/chunks/chunk-J6NSY47E.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-2QDTMC3W.js → chunk-KAXXPFNE.js} +4 -4
- package/dist/lib/cubing/chunks/{chunk-2QDTMC3W.js.map → chunk-KAXXPFNE.js.map} +2 -2
- package/dist/lib/cubing/chunks/{chunk-SGPKF5IH.js → chunk-MITU5GJ5.js} +55 -51
- package/dist/lib/cubing/chunks/{chunk-SGPKF5IH.js.map → chunk-MITU5GJ5.js.map} +3 -3
- package/dist/lib/cubing/chunks/{chunk-WELOEBCE.js → chunk-SNKS5WOA.js} +166 -150
- package/dist/lib/cubing/chunks/chunk-SNKS5WOA.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-2SBMIHZV.js → chunk-SWKNZGJF.js} +100 -108
- package/dist/lib/cubing/chunks/chunk-SWKNZGJF.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-G3WJVG4K.js → chunk-XKTLEY2R.js} +2 -2
- package/dist/lib/cubing/chunks/chunk-XKTLEY2R.js.map +7 -0
- package/dist/lib/cubing/chunks/{inside-DZMTYTHV.js → inside-AF5A42Y6.js} +18 -18
- package/dist/lib/cubing/chunks/{inside-DZMTYTHV.js.map → inside-AF5A42Y6.js.map} +2 -2
- package/dist/lib/cubing/chunks/{puzzles-dynamic-side-events-QIADTLKJ.js → puzzles-dynamic-side-events-BOGUHF4Q.js} +1681 -1800
- package/dist/lib/cubing/chunks/puzzles-dynamic-side-events-BOGUHF4Q.js.map +7 -0
- package/dist/lib/cubing/chunks/{search-dynamic-sgs-side-events-EGIM6IYZ.js → search-dynamic-sgs-side-events-PVOJWVJF.js} +7 -7
- package/dist/lib/cubing/chunks/{search-dynamic-sgs-side-events-EGIM6IYZ.js.map → search-dynamic-sgs-side-events-PVOJWVJF.js.map} +2 -2
- package/dist/lib/cubing/chunks/{search-dynamic-sgs-unofficial-R2TXOWXD.js → search-dynamic-sgs-unofficial-HRR5D2US.js} +648 -648
- package/dist/lib/cubing/chunks/search-dynamic-sgs-unofficial-HRR5D2US.js.map +7 -0
- package/dist/lib/cubing/chunks/{search-dynamic-solve-4x4x4-6XXEHLWN.js → search-dynamic-solve-4x4x4-3CROPIQD.js} +7 -7
- package/dist/lib/cubing/chunks/{search-dynamic-solve-fto-5YRST2XM.js → search-dynamic-solve-fto-NKAFVO65.js} +2 -2
- package/dist/lib/cubing/chunks/{search-dynamic-solve-kilominx-W64XQPBF.js → search-dynamic-solve-kilominx-EDGE5SP4.js} +2 -2
- package/dist/lib/cubing/chunks/search-worker-entry.js +1 -1
- package/dist/lib/cubing/chunks/{twisty-dynamic-3d-H7YMZQPB.js → twisty-dynamic-3d-EIIPCTEF.js} +106 -93
- package/dist/lib/cubing/chunks/twisty-dynamic-3d-EIIPCTEF.js.map +7 -0
- package/dist/lib/cubing/chunks/{twsearch-ZJ4WTIBT.js → twsearch-TGLVN7TI.js} +4 -4
- package/dist/lib/cubing/chunks/twsearch-TGLVN7TI.js.map +7 -0
- package/dist/lib/cubing/chunks/twsearch_wasm_bg-NHUYB5UW-HHHVHFI5.js +10 -0
- package/dist/lib/cubing/chunks/twsearch_wasm_bg-NHUYB5UW-HHHVHFI5.js.map +7 -0
- package/dist/lib/cubing/{index-3pTbhXFM.d.ts → index-Drw5ySJm.d.ts} +2 -2
- package/dist/lib/cubing/kpuzzle/index.d.ts +2 -2
- package/dist/lib/cubing/kpuzzle/index.js +2 -2
- package/dist/lib/cubing/notation/index.d.ts +4 -4
- package/dist/lib/cubing/notation/index.js +4 -4
- package/dist/lib/cubing/protocol/index.d.ts +2 -2
- package/dist/lib/cubing/protocol/index.js +4 -4
- package/dist/lib/cubing/puzzle-geometry/index.d.ts +3 -3
- package/dist/lib/cubing/puzzle-geometry/index.js +616 -483
- package/dist/lib/cubing/puzzle-geometry/index.js.map +3 -3
- package/dist/lib/cubing/puzzles/index.d.ts +2 -2
- package/dist/lib/cubing/puzzles/index.js +4 -4
- package/dist/lib/cubing/scramble/index.d.ts +3 -3
- package/dist/lib/cubing/scramble/index.js +6 -6
- package/dist/lib/cubing/search/index.d.ts +3 -3
- package/dist/lib/cubing/search/index.js +6 -6
- package/dist/lib/cubing/stream/index.d.ts +23 -23
- package/dist/lib/cubing/stream/index.js +41 -41
- package/dist/lib/cubing/stream/index.js.map +3 -3
- package/dist/lib/cubing/twisty/index.d.ts +9 -9
- package/dist/lib/cubing/twisty/index.js +3675 -3630
- package/dist/lib/cubing/twisty/index.js.map +4 -4
- package/package.json +16 -10
- package/dist/bin/chunks/chunk-DFQMTDRG.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-2SBMIHZV.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-G3WJVG4K.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-MFK4M6PV.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-PJH5IVDC.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-TQF5J7MH.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-WELOEBCE.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-Y5U55NHQ.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-ZOU73IV5.js.map +0 -7
- package/dist/lib/cubing/chunks/puzzles-dynamic-side-events-QIADTLKJ.js.map +0 -7
- package/dist/lib/cubing/chunks/search-dynamic-sgs-unofficial-R2TXOWXD.js.map +0 -7
- package/dist/lib/cubing/chunks/twisty-dynamic-3d-H7YMZQPB.js.map +0 -7
- package/dist/lib/cubing/chunks/twsearch-ZJ4WTIBT.js.map +0 -7
- package/dist/lib/cubing/chunks/twsearch_wasm_bg-FWKR4AQ6-XETKNJAN.js +0 -10
- package/dist/lib/cubing/chunks/twsearch_wasm_bg-FWKR4AQ6-XETKNJAN.js.map +0 -7
- /package/dist/lib/cubing/chunks/{chunk-BQNTAVTA.js.map → chunk-GKM2CK6T.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-solve-4x4x4-6XXEHLWN.js.map → search-dynamic-solve-4x4x4-3CROPIQD.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-solve-fto-5YRST2XM.js.map → search-dynamic-solve-fto-NKAFVO65.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-solve-kilominx-W64XQPBF.js.map → search-dynamic-solve-kilominx-EDGE5SP4.js.map} +0 -0
|
@@ -51,11 +51,6 @@ function* reverseGenerator(g) {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
// src/cubing/alg/limits.ts
|
|
55
|
-
var MAX_INT = 2147483647;
|
|
56
|
-
var MAX_INT_DESCRIPTION = "2^31 - 1";
|
|
57
|
-
var MIN_INT = -2147483648;
|
|
58
|
-
|
|
59
54
|
// src/cubing/alg/alg-nodes/containers/Commutator.ts
|
|
60
55
|
var Commutator = class _Commutator extends AlgCommon {
|
|
61
56
|
#A;
|
|
@@ -162,6 +157,37 @@ var Conjugate = class _Conjugate extends AlgCommon {
|
|
|
162
157
|
}
|
|
163
158
|
};
|
|
164
159
|
|
|
160
|
+
// src/cubing/alg/limits.ts
|
|
161
|
+
var MAX_INT = 2147483647;
|
|
162
|
+
var MAX_INT_DESCRIPTION = "2^31 - 1";
|
|
163
|
+
var MIN_INT = -2147483648;
|
|
164
|
+
|
|
165
|
+
// src/cubing/alg/AlgBuilder.ts
|
|
166
|
+
var AlgBuilder = class {
|
|
167
|
+
#algNodes = [];
|
|
168
|
+
push(u) {
|
|
169
|
+
this.#algNodes.push(u);
|
|
170
|
+
}
|
|
171
|
+
// TODO: Allow FlexibleAlgSource?
|
|
172
|
+
/** @deprecated */
|
|
173
|
+
experimentalPushAlg(alg) {
|
|
174
|
+
for (const u of alg.childAlgNodes()) {
|
|
175
|
+
this.push(u);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
// TODO: can we guarantee this to be fast in the permanent API?
|
|
179
|
+
experimentalNumAlgNodes() {
|
|
180
|
+
return this.#algNodes.length;
|
|
181
|
+
}
|
|
182
|
+
// can be called multiple times, even if you push alg nodes inbetween.
|
|
183
|
+
toAlg() {
|
|
184
|
+
return new Alg(this.#algNodes);
|
|
185
|
+
}
|
|
186
|
+
reset() {
|
|
187
|
+
this.#algNodes = [];
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
|
|
165
191
|
// src/cubing/alg/alg-nodes/leaves/LineComment.ts
|
|
166
192
|
var LineComment = class _LineComment extends AlgCommon {
|
|
167
193
|
#text;
|
|
@@ -185,7 +211,7 @@ var LineComment = class _LineComment extends AlgCommon {
|
|
|
185
211
|
*experimentalExpand(_iterDir = 1 /* Forwards */, _depth = Infinity) {
|
|
186
212
|
yield this;
|
|
187
213
|
}
|
|
188
|
-
toString(
|
|
214
|
+
toString(_experimentalSerializationOptions) {
|
|
189
215
|
return `//${this.#text}`;
|
|
190
216
|
}
|
|
191
217
|
// toJSON(): LineCommentJSON {
|
|
@@ -198,7 +224,7 @@ var LineComment = class _LineComment extends AlgCommon {
|
|
|
198
224
|
|
|
199
225
|
// src/cubing/alg/alg-nodes/leaves/Newline.ts
|
|
200
226
|
var Newline = class _Newline extends AlgCommon {
|
|
201
|
-
toString(
|
|
227
|
+
toString(_experimentalSerializationOptions) {
|
|
202
228
|
return "\n";
|
|
203
229
|
}
|
|
204
230
|
isIdentical(other) {
|
|
@@ -216,7 +242,7 @@ var Newline = class _Newline extends AlgCommon {
|
|
|
216
242
|
var Pause = class _Pause extends AlgCommon {
|
|
217
243
|
experimentalNISSGrouping;
|
|
218
244
|
// TODO: tie this to the alg
|
|
219
|
-
toString(
|
|
245
|
+
toString(_experimentalSerializationOptions) {
|
|
220
246
|
return ".";
|
|
221
247
|
}
|
|
222
248
|
isIdentical(other) {
|
|
@@ -230,32 +256,6 @@ var Pause = class _Pause extends AlgCommon {
|
|
|
230
256
|
}
|
|
231
257
|
};
|
|
232
258
|
|
|
233
|
-
// src/cubing/alg/AlgBuilder.ts
|
|
234
|
-
var AlgBuilder = class {
|
|
235
|
-
#algNodes = [];
|
|
236
|
-
push(u) {
|
|
237
|
-
this.#algNodes.push(u);
|
|
238
|
-
}
|
|
239
|
-
// TODO: Allow FlexibleAlgSource?
|
|
240
|
-
/** @deprecated */
|
|
241
|
-
experimentalPushAlg(alg) {
|
|
242
|
-
for (const u of alg.childAlgNodes()) {
|
|
243
|
-
this.push(u);
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
// TODO: can we guarantee this to be fast in the permanent API?
|
|
247
|
-
experimentalNumAlgNodes() {
|
|
248
|
-
return this.#algNodes.length;
|
|
249
|
-
}
|
|
250
|
-
// can be called multiple times, even if you push alg nodes inbetween.
|
|
251
|
-
toAlg() {
|
|
252
|
-
return new Alg(this.#algNodes);
|
|
253
|
-
}
|
|
254
|
-
reset() {
|
|
255
|
-
this.#algNodes = [];
|
|
256
|
-
}
|
|
257
|
-
};
|
|
258
|
-
|
|
259
259
|
// src/cubing/alg/debug.ts
|
|
260
260
|
var algDebugGlobals = {
|
|
261
261
|
caretNISSNotationEnabled: true
|
|
@@ -356,7 +356,7 @@ var AlgParser = class {
|
|
|
356
356
|
);
|
|
357
357
|
}
|
|
358
358
|
};
|
|
359
|
-
|
|
359
|
+
while (this.#idx < this.#input.length) {
|
|
360
360
|
const savedCharIndex = this.#idx;
|
|
361
361
|
if (stopBefore.includes(this.#input[this.#idx])) {
|
|
362
362
|
return addCharIndices(algBuilder.toAlg(), algStartIdx, algEndIdx);
|
|
@@ -366,14 +366,12 @@ var AlgParser = class {
|
|
|
366
366
|
if (algBuilder.experimentalNumAlgNodes() === 0) {
|
|
367
367
|
algStartIdx = this.#idx;
|
|
368
368
|
}
|
|
369
|
-
continue mainLoop;
|
|
370
369
|
} else if (MOVE_START_REGEX.test(this.#input[this.#idx])) {
|
|
371
370
|
mustNotBeCrowded(savedCharIndex);
|
|
372
371
|
const move = this.parseMoveImpl();
|
|
373
372
|
algBuilder.push(move);
|
|
374
373
|
crowded = true;
|
|
375
374
|
algEndIdx = this.#idx;
|
|
376
|
-
continue mainLoop;
|
|
377
375
|
} else if (this.tryConsumeNext("(")) {
|
|
378
376
|
mustNotBeCrowded(savedCharIndex);
|
|
379
377
|
const sq1PairStartMatch = this.tryRegex(SQUARE1_PAIR_START_REGEX);
|
|
@@ -401,7 +399,6 @@ var AlgParser = class {
|
|
|
401
399
|
);
|
|
402
400
|
crowded = true;
|
|
403
401
|
algEndIdx = this.#idx;
|
|
404
|
-
continue mainLoop;
|
|
405
402
|
} else {
|
|
406
403
|
const alg = this.parseAlgWithStopping([")"]);
|
|
407
404
|
this.mustConsumeNext(")");
|
|
@@ -415,7 +412,6 @@ var AlgParser = class {
|
|
|
415
412
|
);
|
|
416
413
|
crowded = true;
|
|
417
414
|
algEndIdx = this.#idx;
|
|
418
|
-
continue mainLoop;
|
|
419
415
|
}
|
|
420
416
|
} else if (this.tryConsumeNext("^")) {
|
|
421
417
|
if (!algDebugGlobals.caretNISSNotationEnabled) {
|
|
@@ -482,14 +478,12 @@ var AlgParser = class {
|
|
|
482
478
|
}
|
|
483
479
|
crowded = true;
|
|
484
480
|
algEndIdx = this.#idx;
|
|
485
|
-
continue mainLoop;
|
|
486
481
|
} else if (this.tryConsumeNext("\n")) {
|
|
487
482
|
algBuilder.push(
|
|
488
483
|
addCharIndices(new Newline(), savedCharIndex, this.#idx)
|
|
489
484
|
);
|
|
490
485
|
crowded = false;
|
|
491
486
|
algEndIdx = this.#idx;
|
|
492
|
-
continue mainLoop;
|
|
493
487
|
} else if (this.tryConsumeNext("/")) {
|
|
494
488
|
if (this.tryConsumeNext("/")) {
|
|
495
489
|
mustNotBeCrowded(savedCharIndex);
|
|
@@ -499,21 +493,18 @@ var AlgParser = class {
|
|
|
499
493
|
);
|
|
500
494
|
crowded = false;
|
|
501
495
|
algEndIdx = this.#idx;
|
|
502
|
-
continue mainLoop;
|
|
503
496
|
} else {
|
|
504
497
|
algBuilder.push(
|
|
505
498
|
addCharIndices(new Move("_SLASH_"), savedCharIndex, this.#idx)
|
|
506
499
|
);
|
|
507
500
|
crowded = true;
|
|
508
501
|
algEndIdx = this.#idx;
|
|
509
|
-
continue mainLoop;
|
|
510
502
|
}
|
|
511
503
|
} else if (this.tryConsumeNext(".")) {
|
|
512
504
|
mustNotBeCrowded(savedCharIndex);
|
|
513
505
|
algBuilder.push(addCharIndices(new Pause(), savedCharIndex, this.#idx));
|
|
514
506
|
crowded = true;
|
|
515
507
|
algEndIdx = this.#idx;
|
|
516
|
-
continue mainLoop;
|
|
517
508
|
} else {
|
|
518
509
|
throw new Error(`Unexpected character: ${this.popNext()}`);
|
|
519
510
|
}
|
|
@@ -776,7 +767,7 @@ var QuantumMove = class _QuantumMove extends Comparable {
|
|
|
776
767
|
"experimentalExpand() cannot be called on a `QuantumMove` directly."
|
|
777
768
|
);
|
|
778
769
|
}
|
|
779
|
-
toString(
|
|
770
|
+
toString(_experimentalSerializationOptions) {
|
|
780
771
|
let s = this.#family;
|
|
781
772
|
if (this.#innerLayer !== null) {
|
|
782
773
|
s = String(this.#innerLayer) + s;
|
|
@@ -788,6 +779,7 @@ var QuantumMove = class _QuantumMove extends Comparable {
|
|
|
788
779
|
}
|
|
789
780
|
};
|
|
790
781
|
var Move = class _Move extends AlgCommon {
|
|
782
|
+
// @ts-ignore False positive due to the `return` in the constructor.
|
|
791
783
|
#quantumWithAmount;
|
|
792
784
|
constructor(...args) {
|
|
793
785
|
super();
|
|
@@ -1009,65 +1001,6 @@ function experimentalIsAlgNode(v) {
|
|
|
1009
1001
|
return experimentalIs(v, Grouping) || experimentalIs(v, LineComment) || experimentalIs(v, Commutator) || experimentalIs(v, Conjugate) || experimentalIs(v, Move) || experimentalIs(v, Newline) || experimentalIs(v, Pause);
|
|
1010
1002
|
}
|
|
1011
1003
|
|
|
1012
|
-
// src/cubing/alg/traversal.ts
|
|
1013
|
-
function dispatch(t, algNode, dataDown) {
|
|
1014
|
-
if (algNode.is(Grouping)) {
|
|
1015
|
-
return t.traverseGrouping(algNode, dataDown);
|
|
1016
|
-
}
|
|
1017
|
-
if (algNode.is(Move)) {
|
|
1018
|
-
return t.traverseMove(algNode, dataDown);
|
|
1019
|
-
}
|
|
1020
|
-
if (algNode.is(Commutator)) {
|
|
1021
|
-
return t.traverseCommutator(algNode, dataDown);
|
|
1022
|
-
}
|
|
1023
|
-
if (algNode.is(Conjugate)) {
|
|
1024
|
-
return t.traverseConjugate(algNode, dataDown);
|
|
1025
|
-
}
|
|
1026
|
-
if (algNode.is(Pause)) {
|
|
1027
|
-
return t.traversePause(algNode, dataDown);
|
|
1028
|
-
}
|
|
1029
|
-
if (algNode.is(Newline)) {
|
|
1030
|
-
return t.traverseNewline(algNode, dataDown);
|
|
1031
|
-
}
|
|
1032
|
-
if (algNode.is(LineComment)) {
|
|
1033
|
-
return t.traverseLineComment(algNode, dataDown);
|
|
1034
|
-
}
|
|
1035
|
-
throw new Error("unknown AlgNode");
|
|
1036
|
-
}
|
|
1037
|
-
function mustBeAlgNode(t) {
|
|
1038
|
-
if (t.is(Grouping) || t.is(Move) || t.is(Commutator) || t.is(Conjugate) || t.is(Pause) || t.is(Newline) || t.is(LineComment)) {
|
|
1039
|
-
return t;
|
|
1040
|
-
}
|
|
1041
|
-
throw new Error("internal error: expected AlgNode");
|
|
1042
|
-
}
|
|
1043
|
-
var TraversalDownUp = class {
|
|
1044
|
-
// Immediate subclasses should overwrite this.
|
|
1045
|
-
traverseAlgNode(algNode, dataDown) {
|
|
1046
|
-
return dispatch(this, algNode, dataDown);
|
|
1047
|
-
}
|
|
1048
|
-
traverseIntoAlgNode(algNode, dataDown) {
|
|
1049
|
-
return mustBeAlgNode(this.traverseAlgNode(algNode, dataDown));
|
|
1050
|
-
}
|
|
1051
|
-
};
|
|
1052
|
-
var TraversalUp = class extends TraversalDownUp {
|
|
1053
|
-
traverseAlgNode(algNode) {
|
|
1054
|
-
return dispatch(
|
|
1055
|
-
this,
|
|
1056
|
-
algNode,
|
|
1057
|
-
void 0
|
|
1058
|
-
);
|
|
1059
|
-
}
|
|
1060
|
-
traverseIntoAlgNode(algNode) {
|
|
1061
|
-
return mustBeAlgNode(this.traverseAlgNode(algNode));
|
|
1062
|
-
}
|
|
1063
|
-
};
|
|
1064
|
-
function functionFromTraversal(traversalConstructor, constructorArgs) {
|
|
1065
|
-
const instance = new traversalConstructor(
|
|
1066
|
-
...constructorArgs ?? []
|
|
1067
|
-
);
|
|
1068
|
-
return instance.traverseAlg.bind(instance);
|
|
1069
|
-
}
|
|
1070
|
-
|
|
1071
1004
|
// src/cubing/alg/simplify/options.ts
|
|
1072
1005
|
var DEFAULT_DIRECTIONAL = "any-direction";
|
|
1073
1006
|
var AppendOptionsHelper = class {
|
|
@@ -1215,6 +1148,65 @@ function experimentalAppendNode(alg, leaf, options) {
|
|
|
1215
1148
|
}
|
|
1216
1149
|
}
|
|
1217
1150
|
|
|
1151
|
+
// src/cubing/alg/traversal.ts
|
|
1152
|
+
function dispatch(t, algNode, dataDown) {
|
|
1153
|
+
if (algNode.is(Grouping)) {
|
|
1154
|
+
return t.traverseGrouping(algNode, dataDown);
|
|
1155
|
+
}
|
|
1156
|
+
if (algNode.is(Move)) {
|
|
1157
|
+
return t.traverseMove(algNode, dataDown);
|
|
1158
|
+
}
|
|
1159
|
+
if (algNode.is(Commutator)) {
|
|
1160
|
+
return t.traverseCommutator(algNode, dataDown);
|
|
1161
|
+
}
|
|
1162
|
+
if (algNode.is(Conjugate)) {
|
|
1163
|
+
return t.traverseConjugate(algNode, dataDown);
|
|
1164
|
+
}
|
|
1165
|
+
if (algNode.is(Pause)) {
|
|
1166
|
+
return t.traversePause(algNode, dataDown);
|
|
1167
|
+
}
|
|
1168
|
+
if (algNode.is(Newline)) {
|
|
1169
|
+
return t.traverseNewline(algNode, dataDown);
|
|
1170
|
+
}
|
|
1171
|
+
if (algNode.is(LineComment)) {
|
|
1172
|
+
return t.traverseLineComment(algNode, dataDown);
|
|
1173
|
+
}
|
|
1174
|
+
throw new Error("unknown AlgNode");
|
|
1175
|
+
}
|
|
1176
|
+
function mustBeAlgNode(t) {
|
|
1177
|
+
if (t.is(Grouping) || t.is(Move) || t.is(Commutator) || t.is(Conjugate) || t.is(Pause) || t.is(Newline) || t.is(LineComment)) {
|
|
1178
|
+
return t;
|
|
1179
|
+
}
|
|
1180
|
+
throw new Error("internal error: expected AlgNode");
|
|
1181
|
+
}
|
|
1182
|
+
var TraversalDownUp = class {
|
|
1183
|
+
// Immediate subclasses should overwrite this.
|
|
1184
|
+
traverseAlgNode(algNode, dataDown) {
|
|
1185
|
+
return dispatch(this, algNode, dataDown);
|
|
1186
|
+
}
|
|
1187
|
+
traverseIntoAlgNode(algNode, dataDown) {
|
|
1188
|
+
return mustBeAlgNode(this.traverseAlgNode(algNode, dataDown));
|
|
1189
|
+
}
|
|
1190
|
+
};
|
|
1191
|
+
var TraversalUp = class extends TraversalDownUp {
|
|
1192
|
+
traverseAlgNode(algNode) {
|
|
1193
|
+
return dispatch(
|
|
1194
|
+
this,
|
|
1195
|
+
algNode,
|
|
1196
|
+
void 0
|
|
1197
|
+
);
|
|
1198
|
+
}
|
|
1199
|
+
traverseIntoAlgNode(algNode) {
|
|
1200
|
+
return mustBeAlgNode(this.traverseAlgNode(algNode));
|
|
1201
|
+
}
|
|
1202
|
+
};
|
|
1203
|
+
function functionFromTraversal(traversalConstructor, constructorArgs) {
|
|
1204
|
+
const instance = new traversalConstructor(
|
|
1205
|
+
...constructorArgs ?? []
|
|
1206
|
+
);
|
|
1207
|
+
return instance.traverseAlg.bind(instance);
|
|
1208
|
+
}
|
|
1209
|
+
|
|
1218
1210
|
// src/cubing/alg/simplify/simplify.ts
|
|
1219
1211
|
var Simplify = class extends TraversalDownUp {
|
|
1220
1212
|
#newPlaceholderAssociationsMap;
|
|
@@ -1850,10 +1842,10 @@ export {
|
|
|
1850
1842
|
directedGenerator,
|
|
1851
1843
|
Commutator,
|
|
1852
1844
|
Conjugate,
|
|
1845
|
+
AlgBuilder,
|
|
1853
1846
|
LineComment,
|
|
1854
1847
|
Newline,
|
|
1855
1848
|
Pause,
|
|
1856
|
-
AlgBuilder,
|
|
1857
1849
|
setAlgDebug,
|
|
1858
1850
|
startCharIndexKey,
|
|
1859
1851
|
endCharIndexKey,
|
|
@@ -1861,14 +1853,14 @@ export {
|
|
|
1861
1853
|
Move,
|
|
1862
1854
|
Grouping,
|
|
1863
1855
|
experimentalIs,
|
|
1856
|
+
offsetMod,
|
|
1857
|
+
experimentalAppendMove,
|
|
1864
1858
|
TraversalDownUp,
|
|
1865
1859
|
TraversalUp,
|
|
1866
1860
|
functionFromTraversal,
|
|
1867
|
-
offsetMod,
|
|
1868
|
-
experimentalAppendMove,
|
|
1869
1861
|
Alg,
|
|
1870
1862
|
Example,
|
|
1871
1863
|
keyToMove,
|
|
1872
1864
|
experimentalAlgCubingNetLink
|
|
1873
1865
|
};
|
|
1874
|
-
//# sourceMappingURL=chunk-
|
|
1866
|
+
//# sourceMappingURL=chunk-SWKNZGJF.js.map
|