cubing 0.48.1 → 0.48.3
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/alg/index.d.ts +1 -1
- package/bluetooth/index.d.ts +1 -1
- package/dist/lib/cubing/{Alg.d-Qi_gM3ue.d.ts → Alg.d-T-vs-GDG.d.ts} +17 -17
- package/dist/lib/cubing/{KPattern.d-1RSDwKrh.d.ts → KPattern.d-eWxoJtl0.d.ts} +1 -1
- package/dist/lib/cubing/{TwizzleLink.d-97ef04xr.d.ts → TwizzleLink.d-S18moNia.d.ts} +5 -5
- package/dist/lib/cubing/alg/index.d.ts +3 -3
- package/dist/lib/cubing/alg/index.js +1 -1
- package/dist/lib/cubing/bluetooth/index.d.ts +4 -4
- package/dist/lib/cubing/bluetooth/index.js +7 -6
- package/dist/lib/cubing/bluetooth/index.js.map +2 -2
- package/dist/lib/cubing/{bluetooth-puzzle.d-myIXFws0.d.ts → bluetooth-puzzle.d-NEYj0B8F.d.ts} +2 -2
- package/dist/lib/cubing/chunks/{chunk-JISTVUPJ.js → chunk-3V53MPRZ.js} +3 -3
- package/dist/lib/cubing/chunks/{chunk-JISTVUPJ.js.map → chunk-3V53MPRZ.js.map} +2 -2
- package/dist/lib/cubing/chunks/{chunk-S3SMCJ2Q.js → chunk-4MAJE4KF.js} +3 -3
- package/dist/lib/cubing/chunks/{chunk-S3SMCJ2Q.js.map → chunk-4MAJE4KF.js.map} +1 -1
- package/dist/lib/cubing/chunks/chunk-5KNIZ2YB.js +605 -0
- package/dist/lib/cubing/chunks/chunk-5KNIZ2YB.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-U4JLWFNS.js → chunk-6OQS3O7Y.js} +43 -42
- package/dist/lib/cubing/chunks/chunk-6OQS3O7Y.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-YB6VZREV.js → chunk-GEMIB7TF.js} +2 -2
- package/dist/lib/cubing/chunks/{chunk-YB6VZREV.js.map → chunk-GEMIB7TF.js.map} +1 -1
- package/dist/lib/cubing/chunks/{chunk-GQ6KD2XI.js → chunk-H5G52ETP.js} +1 -1
- package/dist/lib/cubing/chunks/chunk-H5G52ETP.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-K7335MAG.js → chunk-I4WNYLYZ.js} +3 -3
- package/dist/lib/cubing/chunks/{chunk-M52K5JNF.js → chunk-OOFPCAGO.js} +4 -4
- package/dist/lib/cubing/chunks/{chunk-NEAVVKH5.js → chunk-PP44P6WK.js} +2 -2
- package/dist/lib/cubing/chunks/{chunk-GZV6D4HL.js → chunk-PX2L23L2.js} +40 -3
- package/dist/lib/cubing/chunks/chunk-PX2L23L2.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-VL22SFND.js → chunk-RDSQRW3G.js} +1 -1
- package/dist/lib/cubing/chunks/chunk-RDSQRW3G.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-U6FOYW3P.js → chunk-VQIVSUL2.js} +2 -2
- package/dist/lib/cubing/chunks/{chunk-6P7J74PX.js → inside-CH2IHSQT.js} +52 -615
- package/dist/lib/cubing/chunks/inside-CH2IHSQT.js.map +7 -0
- package/dist/lib/cubing/chunks/{search-dynamic-sgs-side-events-TV6HT26E.js → search-dynamic-sgs-side-events-EG3CKCS4.js} +6 -6
- package/dist/lib/cubing/chunks/{search-dynamic-sgs-unofficial-HAXSGKV7.js → search-dynamic-sgs-unofficial-XHAYSQO3.js} +6 -6
- package/dist/lib/cubing/chunks/{search-dynamic-solve-4x4x4-4HG4AFW2.js → search-dynamic-solve-4x4x4-IYN4OTDM.js} +8 -9
- package/dist/lib/cubing/chunks/{search-dynamic-solve-4x4x4-4HG4AFW2.js.map → search-dynamic-solve-4x4x4-IYN4OTDM.js.map} +1 -1
- package/dist/lib/cubing/chunks/{search-dynamic-solve-kilominx-F7OMJSDE.js → search-dynamic-solve-kilominx-BN4POKYF.js} +2 -2
- package/dist/lib/cubing/chunks/search-worker-entry.js +3 -3
- package/dist/lib/cubing/chunks/{twisty-dynamic-3d-A23ABL4R.js → twisty-dynamic-3d-2IJDXFSH.js} +6 -6
- package/dist/lib/cubing/chunks/twisty-dynamic-3d-2IJDXFSH.js.map +7 -0
- package/dist/lib/cubing/chunks/{twsearch-QLSDT3QA.js → twsearch-6KUSKPX2.js} +2 -2
- package/dist/lib/cubing/{index-WrxLz0RY.d.ts → index-t97giMqB.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/{parseAlg.d-LTqyeghV.d.ts → parseAlg.d-tIlAma60.d.ts} +1 -1
- 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 +3 -3
- package/dist/lib/cubing/puzzle-geometry/index.js.map +1 -1
- package/dist/lib/cubing/puzzles/index.d.ts +875 -4
- 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 +7 -8
- package/dist/lib/cubing/search/index.d.ts +3 -3
- package/dist/lib/cubing/search/index.js +7 -8
- package/dist/lib/cubing/stream/index.d.ts +3 -3
- package/dist/lib/cubing/stream/index.js +1 -1
- package/dist/lib/cubing/twisty/index.d.ts +5 -5
- package/dist/lib/cubing/twisty/index.js +10 -9
- package/dist/lib/cubing/twisty/index.js.map +2 -2
- package/kpuzzle/index.d.ts +1 -1
- package/notation/index.d.ts +1 -1
- package/package.json +15 -15
- package/protocol/index.d.ts +1 -1
- package/puzzle-geometry/index.d.ts +1 -1
- package/puzzles/index.d.ts +1 -1
- package/scramble/index.d.ts +1 -1
- package/search/index.d.ts +1 -1
- package/stream/index.d.ts +1 -1
- package/twisty/index.d.ts +1 -1
- package/dist/lib/cubing/chunks/chunk-6P7J74PX.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-GQ6KD2XI.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-GZV6D4HL.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-U4JLWFNS.js.map +0 -7
- package/dist/lib/cubing/chunks/chunk-VL22SFND.js.map +0 -7
- package/dist/lib/cubing/chunks/inside-EKCXLHV5.js +0 -16
- package/dist/lib/cubing/chunks/inside-EKCXLHV5.js.map +0 -7
- package/dist/lib/cubing/chunks/twisty-dynamic-3d-A23ABL4R.js.map +0 -7
- /package/dist/lib/cubing/chunks/{chunk-K7335MAG.js.map → chunk-I4WNYLYZ.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{chunk-M52K5JNF.js.map → chunk-OOFPCAGO.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{chunk-NEAVVKH5.js.map → chunk-PP44P6WK.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{chunk-U6FOYW3P.js.map → chunk-VQIVSUL2.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-sgs-side-events-TV6HT26E.js.map → search-dynamic-sgs-side-events-EG3CKCS4.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-sgs-unofficial-HAXSGKV7.js.map → search-dynamic-sgs-unofficial-XHAYSQO3.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-solve-kilominx-F7OMJSDE.js.map → search-dynamic-solve-kilominx-BN4POKYF.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{twsearch-QLSDT3QA.js.map → twsearch-6KUSKPX2.js.map} +0 -0
|
@@ -1,607 +1,41 @@
|
|
|
1
|
+
import {
|
|
2
|
+
expose
|
|
3
|
+
} from "./chunk-PP44P6WK.js";
|
|
1
4
|
import {
|
|
2
5
|
countMoves
|
|
3
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-PX2L23L2.js";
|
|
7
|
+
import {
|
|
8
|
+
addOrientationSuffix,
|
|
9
|
+
initialize333,
|
|
10
|
+
mustBeInsideWorker,
|
|
11
|
+
random333OrientedScramble,
|
|
12
|
+
random333Scramble,
|
|
13
|
+
setIsInsideWorker,
|
|
14
|
+
solve333
|
|
15
|
+
} from "./chunk-5KNIZ2YB.js";
|
|
16
|
+
import "./chunk-RDSQRW3G.js";
|
|
4
17
|
import {
|
|
5
18
|
cube2x2x2,
|
|
6
19
|
puzzles
|
|
7
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-OOFPCAGO.js";
|
|
8
21
|
import {
|
|
9
22
|
from
|
|
10
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-6OQS3O7Y.js";
|
|
11
24
|
import {
|
|
12
25
|
KPattern,
|
|
13
26
|
KPuzzle
|
|
14
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-GEMIB7TF.js";
|
|
15
28
|
import {
|
|
16
29
|
Alg,
|
|
17
30
|
AlgBuilder,
|
|
18
31
|
Move
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
|
|
21
|
-
// src/cubing/search/inside/solve/puzzles/3x3x3/index.ts
|
|
22
|
-
import { randomChoice as randomChoice2 } from "random-uint-below";
|
|
23
|
-
|
|
24
|
-
// src/cubing/search/inside/inside-worker.ts
|
|
25
|
-
var isInsideWorker = false;
|
|
26
|
-
function setIsInsideWorker(inside) {
|
|
27
|
-
isInsideWorker = inside;
|
|
28
|
-
}
|
|
29
|
-
function mustBeInsideWorker() {
|
|
30
|
-
if (!isInsideWorker) {
|
|
31
|
-
throw new Error(
|
|
32
|
-
"Must be called from inside a worker, to avoid impact on page performance. Try importing from the top level of `cubing/solve`?"
|
|
33
|
-
);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
// src/cubing/search/inside/solve/addOrientationSuffix.ts
|
|
38
|
-
import { randomChoice } from "random-uint-below";
|
|
39
|
-
function addOrientationSuffix(alg, suffixSpec) {
|
|
40
|
-
const algBuilder = new AlgBuilder();
|
|
41
|
-
algBuilder.experimentalPushAlg(alg);
|
|
42
|
-
for (const suffix of suffixSpec) {
|
|
43
|
-
const choice = randomChoice(suffix);
|
|
44
|
-
if (choice !== null) {
|
|
45
|
-
algBuilder.push(Move.fromString(choice));
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return algBuilder.toAlg();
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// src/cubing/search/inside/solve/puzzles/dynamic/3x3x3/index.ts
|
|
52
|
-
var dynamic3x3x3min2phase = from(() => import("./search-dynamic-solve-3x3x3-QHRLSVAC.js"));
|
|
53
|
-
|
|
54
|
-
// src/cubing/search/inside/solve/puzzles/3x3x3/convert.ts
|
|
55
|
-
var reidEdgeOrder = "UF UR UB UL DF DR DB DL FR FL BR BL".split(" ");
|
|
56
|
-
var reidCornerOrder = "UFR URB UBL ULF DRF DFL DLB DBR".split(" ");
|
|
57
|
-
var centerOrder = "U L F R B D".split(" ");
|
|
58
|
-
var map = [
|
|
59
|
-
[1, 2, 0],
|
|
60
|
-
[0, 2, 0],
|
|
61
|
-
[1, 1, 0],
|
|
62
|
-
[0, 3, 0],
|
|
63
|
-
[2, 0, 0],
|
|
64
|
-
[0, 1, 0],
|
|
65
|
-
[1, 3, 0],
|
|
66
|
-
[0, 0, 0],
|
|
67
|
-
[1, 0, 0],
|
|
68
|
-
[1, 0, 2],
|
|
69
|
-
[0, 1, 1],
|
|
70
|
-
[1, 1, 1],
|
|
71
|
-
[0, 8, 1],
|
|
72
|
-
[2, 3, 0],
|
|
73
|
-
[0, 10, 1],
|
|
74
|
-
[1, 4, 1],
|
|
75
|
-
[0, 5, 1],
|
|
76
|
-
[1, 7, 2],
|
|
77
|
-
[1, 3, 2],
|
|
78
|
-
[0, 0, 1],
|
|
79
|
-
[1, 0, 1],
|
|
80
|
-
[0, 9, 0],
|
|
81
|
-
[2, 2, 0],
|
|
82
|
-
[0, 8, 0],
|
|
83
|
-
[1, 5, 1],
|
|
84
|
-
[0, 4, 1],
|
|
85
|
-
[1, 4, 2],
|
|
86
|
-
[1, 5, 0],
|
|
87
|
-
[0, 4, 0],
|
|
88
|
-
[1, 4, 0],
|
|
89
|
-
[0, 7, 0],
|
|
90
|
-
[2, 5, 0],
|
|
91
|
-
[0, 5, 0],
|
|
92
|
-
[1, 6, 0],
|
|
93
|
-
[0, 6, 0],
|
|
94
|
-
[1, 7, 0],
|
|
95
|
-
[1, 2, 2],
|
|
96
|
-
[0, 3, 1],
|
|
97
|
-
[1, 3, 1],
|
|
98
|
-
[0, 11, 1],
|
|
99
|
-
[2, 1, 0],
|
|
100
|
-
[0, 9, 1],
|
|
101
|
-
[1, 6, 1],
|
|
102
|
-
[0, 7, 1],
|
|
103
|
-
[1, 5, 2],
|
|
104
|
-
[1, 1, 2],
|
|
105
|
-
[0, 2, 1],
|
|
106
|
-
[1, 2, 1],
|
|
107
|
-
[0, 10, 0],
|
|
108
|
-
[2, 4, 0],
|
|
109
|
-
[0, 11, 0],
|
|
110
|
-
[1, 7, 1],
|
|
111
|
-
[0, 6, 1],
|
|
112
|
-
[1, 6, 2]
|
|
113
|
-
];
|
|
114
|
-
function rotateLeft(s, i) {
|
|
115
|
-
return s.slice(i) + s.slice(0, i);
|
|
116
|
-
}
|
|
117
|
-
function toReid333Struct(pattern) {
|
|
118
|
-
const output = [[], []];
|
|
119
|
-
for (let i = 0; i < 6; i++) {
|
|
120
|
-
if (pattern.patternData["CENTERS"].pieces[i] !== i) {
|
|
121
|
-
throw new Error("non-oriented puzzles are not supported");
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
for (let i = 0; i < 12; i++) {
|
|
125
|
-
output[0].push(
|
|
126
|
-
rotateLeft(
|
|
127
|
-
reidEdgeOrder[pattern.patternData["EDGES"].pieces[i]],
|
|
128
|
-
pattern.patternData["EDGES"].orientation[i]
|
|
129
|
-
)
|
|
130
|
-
);
|
|
131
|
-
}
|
|
132
|
-
for (let i = 0; i < 8; i++) {
|
|
133
|
-
output[1].push(
|
|
134
|
-
rotateLeft(
|
|
135
|
-
reidCornerOrder[pattern.patternData["CORNERS"].pieces[i]],
|
|
136
|
-
pattern.patternData["CORNERS"].orientation[i]
|
|
137
|
-
)
|
|
138
|
-
);
|
|
139
|
-
}
|
|
140
|
-
output.push(centerOrder);
|
|
141
|
-
return output;
|
|
142
|
-
}
|
|
143
|
-
function toMin2PhasePattern(pattern) {
|
|
144
|
-
const reid = toReid333Struct(pattern);
|
|
145
|
-
return map.map(([orbit, perm, ori]) => reid[orbit][perm][ori]).join("");
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
// src/cubing/search/inside/solve/puzzles/3x3x3/filter.ts
|
|
149
|
-
function isEquivalentTranformationIgnoringCENTERS(t1, t2) {
|
|
150
|
-
const t1NoCenterOri = new KPattern(t1.kpuzzle, {
|
|
151
|
-
EDGES: t1.patternData.EDGES,
|
|
152
|
-
CORNERS: t1.patternData.CORNERS,
|
|
153
|
-
CENTERS: {
|
|
154
|
-
pieces: t1.patternData.CENTERS.pieces,
|
|
155
|
-
orientation: new Array(6).fill(0)
|
|
156
|
-
}
|
|
157
|
-
}).experimentalToTransformation();
|
|
158
|
-
const t2NoCenterOri = new KPattern(t2.kpuzzle, {
|
|
159
|
-
EDGES: t2.patternData.EDGES,
|
|
160
|
-
CORNERS: t2.patternData.CORNERS,
|
|
161
|
-
CENTERS: {
|
|
162
|
-
pieces: t2.patternData.CENTERS.pieces,
|
|
163
|
-
orientation: new Array(6).fill(0)
|
|
164
|
-
}
|
|
165
|
-
}).experimentalToTransformation();
|
|
166
|
-
return t1NoCenterOri.isIdentical(t2NoCenterOri);
|
|
167
|
-
}
|
|
168
|
-
function passesFilter(kpuzzle, pattern) {
|
|
169
|
-
if (isEquivalentTranformationIgnoringCENTERS(kpuzzle.defaultPattern(), pattern)) {
|
|
170
|
-
return false;
|
|
171
|
-
}
|
|
172
|
-
for (const face of "ULFRBD") {
|
|
173
|
-
for (let amount = 1; amount < 4; amount++) {
|
|
174
|
-
const transformation = kpuzzle.moveToTransformation(new Move(face, amount)).toKPattern();
|
|
175
|
-
if (isEquivalentTranformationIgnoringCENTERS(transformation, pattern)) {
|
|
176
|
-
return false;
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
return true;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
// src/cubing/search/inside/solve/puzzles/3x3x3/legacy-sgs.ts
|
|
184
|
-
var sgs3x3x3 = [
|
|
185
|
-
[
|
|
186
|
-
"R U'",
|
|
187
|
-
"R2 B",
|
|
188
|
-
//
|
|
189
|
-
"D2 B2",
|
|
190
|
-
"D' L B'",
|
|
191
|
-
//
|
|
192
|
-
"R' U'",
|
|
193
|
-
"B",
|
|
194
|
-
//
|
|
195
|
-
"D B2",
|
|
196
|
-
"R' B",
|
|
197
|
-
//
|
|
198
|
-
"L' U",
|
|
199
|
-
"L2 B'",
|
|
200
|
-
//
|
|
201
|
-
"B2",
|
|
202
|
-
"D L B'",
|
|
203
|
-
//
|
|
204
|
-
"L U",
|
|
205
|
-
"B'",
|
|
206
|
-
//
|
|
207
|
-
"U'",
|
|
208
|
-
"R B",
|
|
209
|
-
//
|
|
210
|
-
"D' B2",
|
|
211
|
-
"L B'",
|
|
212
|
-
//
|
|
213
|
-
"U2",
|
|
214
|
-
"U L' B'",
|
|
215
|
-
//
|
|
216
|
-
"",
|
|
217
|
-
"U' L' B'",
|
|
218
|
-
//
|
|
219
|
-
"U",
|
|
220
|
-
"L' B'"
|
|
221
|
-
],
|
|
222
|
-
[
|
|
223
|
-
"F2 L2",
|
|
224
|
-
"F' L'",
|
|
225
|
-
"R' F L2",
|
|
226
|
-
//
|
|
227
|
-
"D' L2",
|
|
228
|
-
"F L2",
|
|
229
|
-
"F2 L'",
|
|
230
|
-
//
|
|
231
|
-
"R' F' L'",
|
|
232
|
-
"R2 F L2",
|
|
233
|
-
"R2 F2 L'",
|
|
234
|
-
//
|
|
235
|
-
"L2",
|
|
236
|
-
"F L'",
|
|
237
|
-
"D' L",
|
|
238
|
-
//
|
|
239
|
-
"D2 L2",
|
|
240
|
-
"R2 F' L'",
|
|
241
|
-
"D L",
|
|
242
|
-
//
|
|
243
|
-
"",
|
|
244
|
-
"L2 F L'",
|
|
245
|
-
"L F' L2",
|
|
246
|
-
//
|
|
247
|
-
"L F L'",
|
|
248
|
-
"F' L2",
|
|
249
|
-
"L'",
|
|
250
|
-
//
|
|
251
|
-
"D L2",
|
|
252
|
-
"D F L'",
|
|
253
|
-
"L"
|
|
254
|
-
],
|
|
255
|
-
[
|
|
256
|
-
"R B U2 B'",
|
|
257
|
-
"R2 B U' B'",
|
|
258
|
-
//
|
|
259
|
-
"F2 B U B'",
|
|
260
|
-
"F B2 L' B2",
|
|
261
|
-
//
|
|
262
|
-
"B2 L B2",
|
|
263
|
-
"B U' B'",
|
|
264
|
-
//
|
|
265
|
-
"R2 B U2 B'",
|
|
266
|
-
"R' B U' B'",
|
|
267
|
-
//
|
|
268
|
-
"B2 L' B2",
|
|
269
|
-
"F B U B'",
|
|
270
|
-
//
|
|
271
|
-
"B2 U' B2",
|
|
272
|
-
"B' L B",
|
|
273
|
-
//
|
|
274
|
-
"L F' B D' B'",
|
|
275
|
-
"B' U' B2 D B'",
|
|
276
|
-
//
|
|
277
|
-
"B U2 B'",
|
|
278
|
-
"R B U' B'",
|
|
279
|
-
//
|
|
280
|
-
"B2 L2 B2",
|
|
281
|
-
"D' B' L B",
|
|
282
|
-
//
|
|
283
|
-
"B U B'",
|
|
284
|
-
"F' B2 L' B2",
|
|
285
|
-
//
|
|
286
|
-
"",
|
|
287
|
-
"B2 L' B' U' B'"
|
|
288
|
-
],
|
|
289
|
-
[
|
|
290
|
-
"U F2 L2 U'",
|
|
291
|
-
"F' U L' U'",
|
|
292
|
-
//
|
|
293
|
-
"F2 U L' U'",
|
|
294
|
-
"U F L2 U'",
|
|
295
|
-
//
|
|
296
|
-
"U2 B2 U2",
|
|
297
|
-
"R' U' B U",
|
|
298
|
-
//
|
|
299
|
-
"D2 U L U'",
|
|
300
|
-
"D U2 B' U2",
|
|
301
|
-
//
|
|
302
|
-
"U L2 U'",
|
|
303
|
-
"F U L' U'",
|
|
304
|
-
//
|
|
305
|
-
"D U L U'",
|
|
306
|
-
"U2 B' U2",
|
|
307
|
-
//
|
|
308
|
-
"",
|
|
309
|
-
"U2 B' U' L' U'",
|
|
310
|
-
//
|
|
311
|
-
"U2 L' U2",
|
|
312
|
-
"U' B U",
|
|
313
|
-
//
|
|
314
|
-
"U L U'",
|
|
315
|
-
"D' U2 B' U2",
|
|
316
|
-
//
|
|
317
|
-
"U L' U'",
|
|
318
|
-
"U2 B U2"
|
|
319
|
-
],
|
|
320
|
-
[
|
|
321
|
-
"R' D' F2",
|
|
322
|
-
"F'",
|
|
323
|
-
//
|
|
324
|
-
"F2",
|
|
325
|
-
"D R F'",
|
|
326
|
-
//
|
|
327
|
-
"R D' F2",
|
|
328
|
-
"R2 F'",
|
|
329
|
-
//
|
|
330
|
-
"D' F2",
|
|
331
|
-
"R F'",
|
|
332
|
-
//
|
|
333
|
-
"F2 R' D' F2",
|
|
334
|
-
"F",
|
|
335
|
-
//
|
|
336
|
-
"D2 F2",
|
|
337
|
-
"D' R F'",
|
|
338
|
-
//
|
|
339
|
-
"R2 D' F2",
|
|
340
|
-
"R' F'",
|
|
341
|
-
//
|
|
342
|
-
"D F2",
|
|
343
|
-
"D2 R F'",
|
|
344
|
-
//
|
|
345
|
-
"",
|
|
346
|
-
"F R' D' F2"
|
|
347
|
-
],
|
|
348
|
-
[
|
|
349
|
-
"R' D2 F' D F",
|
|
350
|
-
"R F2 R2 F2",
|
|
351
|
-
"R2 F' D2 F",
|
|
352
|
-
//
|
|
353
|
-
"F' R2 D2 F",
|
|
354
|
-
"L D' L'",
|
|
355
|
-
"D F' D2 F",
|
|
356
|
-
//
|
|
357
|
-
"F2 R2 F2",
|
|
358
|
-
"R F' D2 F",
|
|
359
|
-
"F' R2 D' F",
|
|
360
|
-
//
|
|
361
|
-
"F' R' D2 F",
|
|
362
|
-
"F2 R' F2",
|
|
363
|
-
"L D L'",
|
|
364
|
-
//
|
|
365
|
-
"F' R D' F",
|
|
366
|
-
"F2 R F2",
|
|
367
|
-
"F' D2 F",
|
|
368
|
-
//
|
|
369
|
-
"",
|
|
370
|
-
"L D2 R D' L'",
|
|
371
|
-
"F' D2 F' R F2",
|
|
372
|
-
//
|
|
373
|
-
"D2 R2 F2 R2 F2",
|
|
374
|
-
"D F' D' F",
|
|
375
|
-
"F' D F"
|
|
376
|
-
],
|
|
377
|
-
[
|
|
378
|
-
"U F2 U'",
|
|
379
|
-
"R U F' U'",
|
|
380
|
-
//
|
|
381
|
-
"D R U F2 U'",
|
|
382
|
-
"U F U'",
|
|
383
|
-
//
|
|
384
|
-
"R2 U F2 U'",
|
|
385
|
-
"R' U F' U'",
|
|
386
|
-
//
|
|
387
|
-
"R U F2 U'",
|
|
388
|
-
"R2 U F' U'",
|
|
389
|
-
//
|
|
390
|
-
"",
|
|
391
|
-
"U L D L' F U'",
|
|
392
|
-
//
|
|
393
|
-
"F2 D' R D F2",
|
|
394
|
-
"D2 U F U'",
|
|
395
|
-
//
|
|
396
|
-
"R' U F2 U'",
|
|
397
|
-
"U F' U'",
|
|
398
|
-
//
|
|
399
|
-
"F2 D2 R D2 F2",
|
|
400
|
-
"D U F U'"
|
|
401
|
-
],
|
|
402
|
-
[
|
|
403
|
-
"R2",
|
|
404
|
-
"R' B' D B",
|
|
405
|
-
//
|
|
406
|
-
"D R'",
|
|
407
|
-
"F' R2 F",
|
|
408
|
-
//
|
|
409
|
-
"",
|
|
410
|
-
"R B' D B",
|
|
411
|
-
//
|
|
412
|
-
"R'",
|
|
413
|
-
"B' D B",
|
|
414
|
-
//
|
|
415
|
-
"D' R'",
|
|
416
|
-
"D2 F' R2 F",
|
|
417
|
-
//
|
|
418
|
-
"R",
|
|
419
|
-
"R2 B' D B",
|
|
420
|
-
//
|
|
421
|
-
"D2 R'",
|
|
422
|
-
"B' D' B"
|
|
423
|
-
],
|
|
424
|
-
[
|
|
425
|
-
"R2 D' R2",
|
|
426
|
-
"F' R' F R",
|
|
427
|
-
"R D' R2 D R'",
|
|
428
|
-
//
|
|
429
|
-
"D2 R2 D2 R2",
|
|
430
|
-
"R' D' F' R F",
|
|
431
|
-
"U F D F' U'",
|
|
432
|
-
//
|
|
433
|
-
"",
|
|
434
|
-
"R2 D2 B R' B' R'",
|
|
435
|
-
"R' F D' F2 R F",
|
|
436
|
-
//
|
|
437
|
-
"R2 D R2",
|
|
438
|
-
"F2 U F U' F",
|
|
439
|
-
"R' D F' R F",
|
|
440
|
-
//
|
|
441
|
-
"D R2 D2 R2",
|
|
442
|
-
"U F D' F' U'",
|
|
443
|
-
"D R' D2 F' R F",
|
|
444
|
-
//
|
|
445
|
-
"R2 D2 R2",
|
|
446
|
-
"U F D2 F' U'",
|
|
447
|
-
"R' D2 F' R F"
|
|
448
|
-
],
|
|
449
|
-
[
|
|
450
|
-
"B R B'",
|
|
451
|
-
"F D F' B R2 B'",
|
|
452
|
-
//
|
|
453
|
-
"D B R2 B'",
|
|
454
|
-
"D2 B R' B'",
|
|
455
|
-
//
|
|
456
|
-
"B R2 B'",
|
|
457
|
-
"D B R' B'",
|
|
458
|
-
//
|
|
459
|
-
"D' B R2 B'",
|
|
460
|
-
"B R' B'",
|
|
461
|
-
//
|
|
462
|
-
"",
|
|
463
|
-
"B R2 B' D B R' B'",
|
|
464
|
-
//
|
|
465
|
-
"D2 B R2 B'",
|
|
466
|
-
"D' B R' B'"
|
|
467
|
-
],
|
|
468
|
-
[
|
|
469
|
-
"",
|
|
470
|
-
"R' D R F D2 F'",
|
|
471
|
-
//
|
|
472
|
-
"R' D R",
|
|
473
|
-
"D F D' F'",
|
|
474
|
-
//
|
|
475
|
-
"R F' R' F",
|
|
476
|
-
"F D' F'",
|
|
477
|
-
//
|
|
478
|
-
"R' D' R",
|
|
479
|
-
"F D2 F'",
|
|
480
|
-
//
|
|
481
|
-
"R' D2 R",
|
|
482
|
-
"F D F'"
|
|
483
|
-
],
|
|
484
|
-
[
|
|
485
|
-
"",
|
|
486
|
-
"F2 D2 R F' R' D2 F' D2 F'",
|
|
487
|
-
"F2 D2 F' D' F D' F' D2 F'",
|
|
488
|
-
//
|
|
489
|
-
"F2 D F2 D F2 D2 F2",
|
|
490
|
-
"D2 F L D2 L' D2 F'",
|
|
491
|
-
"D F D2 L D2 L' F'",
|
|
492
|
-
//
|
|
493
|
-
"R' D B' D2 B D' R",
|
|
494
|
-
"R' D2 B' D2 B R",
|
|
495
|
-
"F D2 F' D F D F'",
|
|
496
|
-
//
|
|
497
|
-
"F D' L D2 L' D F'",
|
|
498
|
-
"B D' F D B' D' F'",
|
|
499
|
-
"F D2 L D2 L' F'",
|
|
500
|
-
//
|
|
501
|
-
"F D' L D L' D F'",
|
|
502
|
-
"F L D2 L' D2 F'",
|
|
503
|
-
"R' B' D2 B D2 R"
|
|
504
|
-
],
|
|
505
|
-
[
|
|
506
|
-
"D'",
|
|
507
|
-
"F L D L' D' F'",
|
|
508
|
-
//
|
|
509
|
-
"D2",
|
|
510
|
-
"L B D B' D' L'",
|
|
511
|
-
//
|
|
512
|
-
"D",
|
|
513
|
-
"B' L' D' L D B",
|
|
514
|
-
//
|
|
515
|
-
"",
|
|
516
|
-
"D F L D L' D' F'"
|
|
517
|
-
],
|
|
518
|
-
[
|
|
519
|
-
"F' D2 F D F' D F",
|
|
520
|
-
"F' D' R' D R F",
|
|
521
|
-
//
|
|
522
|
-
"F' R' D' R D F",
|
|
523
|
-
"B D R D' R' B'",
|
|
524
|
-
//
|
|
525
|
-
"",
|
|
526
|
-
"D B' D' L' D L B"
|
|
527
|
-
],
|
|
528
|
-
[
|
|
529
|
-
"D F D F' D F D2 F'",
|
|
530
|
-
"F' U2 B' R' B U2 F' L F' L' F'",
|
|
531
|
-
//
|
|
532
|
-
"",
|
|
533
|
-
"D2 L D L2 F L F2 D F"
|
|
534
|
-
],
|
|
535
|
-
[
|
|
536
|
-
"L B' L' F L B L' F'",
|
|
537
|
-
"F2 U F' D2 F U' F' D2 F'",
|
|
538
|
-
"D' F' D B D' F D B'",
|
|
539
|
-
//
|
|
540
|
-
"F L2 F R2 F' L2 F R2 F2",
|
|
541
|
-
"D B D' F' D B' D' F",
|
|
542
|
-
"R F L F' R' F L' F'",
|
|
543
|
-
//
|
|
544
|
-
"",
|
|
545
|
-
"D2 B L' U2 L B' D2 B L' U2 L B'",
|
|
546
|
-
"D2 F R' U2 R F' D2 F R' U2 R F'",
|
|
547
|
-
//
|
|
548
|
-
"R F L' F' R' F L F'",
|
|
549
|
-
"D F D' B' D F' D' B",
|
|
550
|
-
"L2 F2 L' B2 L F2 L' B2 L'"
|
|
551
|
-
],
|
|
552
|
-
[
|
|
553
|
-
"L B R' B' L' B R B'",
|
|
554
|
-
"R' B R F' R' B' R F",
|
|
555
|
-
"L D2 L U L' D2 L U' L2",
|
|
556
|
-
//
|
|
557
|
-
"",
|
|
558
|
-
"D2 B' D2 F D' L2 F L2 F' D2 B D' F'",
|
|
559
|
-
"D2 F' R' F R2 B' D2 B D2 R' F D2 F'",
|
|
560
|
-
//
|
|
561
|
-
"L B L' F L B' L' F'",
|
|
562
|
-
"F' D2 F' U' F D2 F' U F2",
|
|
563
|
-
"D' B' D F D' B D F'"
|
|
564
|
-
],
|
|
565
|
-
["", "D2 F' L U2 L' F D2 F' L U2 L' F", "D2 B' R U2 R' B D2 B' R U2 R' B"]
|
|
566
|
-
];
|
|
567
|
-
|
|
568
|
-
// src/cubing/search/inside/solve/puzzles/3x3x3/index.ts
|
|
569
|
-
async function random333Pattern() {
|
|
570
|
-
const kpuzzle = await puzzles["3x3x3"].kpuzzle();
|
|
571
|
-
let pattern = kpuzzle.defaultPattern();
|
|
572
|
-
for (const piece of sgs3x3x3) {
|
|
573
|
-
pattern = pattern.applyAlg(Alg.fromString(randomChoice2(piece)));
|
|
574
|
-
}
|
|
575
|
-
if (!passesFilter(kpuzzle, pattern)) {
|
|
576
|
-
return random333Pattern();
|
|
577
|
-
}
|
|
578
|
-
return pattern;
|
|
579
|
-
}
|
|
580
|
-
async function solve333(s) {
|
|
581
|
-
mustBeInsideWorker();
|
|
582
|
-
return Alg.fromString(
|
|
583
|
-
(await dynamic3x3x3min2phase).solvePattern(toMin2PhasePattern(s))
|
|
584
|
-
);
|
|
585
|
-
}
|
|
586
|
-
async function random333Scramble() {
|
|
587
|
-
return solve333(await random333Pattern());
|
|
588
|
-
}
|
|
589
|
-
async function initialize333() {
|
|
590
|
-
(await dynamic3x3x3min2phase).initialize();
|
|
591
|
-
}
|
|
592
|
-
var randomSuffixes = [
|
|
593
|
-
[null, "Rw", "Rw2", "Rw'", "Fw", "Fw'"],
|
|
594
|
-
[null, "Dw", "Dw2", "Dw'"]
|
|
595
|
-
];
|
|
596
|
-
async function random333OrientedScramble() {
|
|
597
|
-
return addOrientationSuffix(await random333Scramble(), randomSuffixes);
|
|
598
|
-
}
|
|
32
|
+
} from "./chunk-H5G52ETP.js";
|
|
599
33
|
|
|
600
34
|
// src/cubing/search/inside/solve/puzzles/2x2x2.ts
|
|
601
35
|
import { randomPermuteInPlace, randomUIntBelow } from "random-uint-below";
|
|
602
36
|
|
|
603
37
|
// src/cubing/search/inside/solve/tremble.ts
|
|
604
|
-
import { randomChoice
|
|
38
|
+
import { randomChoice } from "random-uint-below";
|
|
605
39
|
var DEFAULT_STAGE1_DEPTH_LIMIT = 2;
|
|
606
40
|
var DOUBLECHECK_PLACED_PIECES = true;
|
|
607
41
|
var DEBUG = false;
|
|
@@ -731,7 +165,7 @@ var TrembleSolver = class {
|
|
|
731
165
|
function randomPatternFromSGS(kpuzzle, sgs) {
|
|
732
166
|
let transformation = kpuzzle.identityTransformation();
|
|
733
167
|
for (const step of sgs.ordering) {
|
|
734
|
-
const sgsAction =
|
|
168
|
+
const sgsAction = randomChoice(Object.values(step.lookup));
|
|
735
169
|
transformation = transformation.applyTransformation(
|
|
736
170
|
sgsAction.transformation
|
|
737
171
|
);
|
|
@@ -739,11 +173,8 @@ function randomPatternFromSGS(kpuzzle, sgs) {
|
|
|
739
173
|
return transformation.toKPattern();
|
|
740
174
|
}
|
|
741
175
|
|
|
742
|
-
// src/cubing/search/inside/solve/puzzles/dynamic/sgs-side-events/index.ts
|
|
743
|
-
var searchDynamicSideEvents = from(() => import("./search-dynamic-sgs-side-events-TV6HT26E.js"));
|
|
744
|
-
|
|
745
176
|
// src/cubing/search/inside/solve/twsearch.ts
|
|
746
|
-
var twsearchPromise = from(async () => import("./twsearch-
|
|
177
|
+
var twsearchPromise = from(async () => import("./twsearch-6KUSKPX2.js"));
|
|
747
178
|
async function wasmTwsearch(def, pattern, options) {
|
|
748
179
|
const { wasmTwsearch: wasmTwsearch2 } = await twsearchPromise;
|
|
749
180
|
return wasmTwsearch2(def, pattern, options);
|
|
@@ -753,6 +184,9 @@ async function wasmRandomScrambleForEvent(eventID) {
|
|
|
753
184
|
return wasmRandomScrambleForEvent2(eventID);
|
|
754
185
|
}
|
|
755
186
|
|
|
187
|
+
// src/cubing/search/inside/solve/puzzles/dynamic/sgs-side-events/index.ts
|
|
188
|
+
var searchDynamicSideEvents = from(() => import("./search-dynamic-sgs-side-events-EG3CKCS4.js"));
|
|
189
|
+
|
|
756
190
|
// src/cubing/search/inside/solve/puzzles/2x2x2.ts
|
|
757
191
|
var cachedTrembleSolver = null;
|
|
758
192
|
async function getCachedTrembleSolver() {
|
|
@@ -768,20 +202,18 @@ async function getCachedTrembleSolver() {
|
|
|
768
202
|
async function preInitialize222() {
|
|
769
203
|
await getCachedTrembleSolver();
|
|
770
204
|
}
|
|
771
|
-
async function
|
|
205
|
+
async function solve222(pattern) {
|
|
772
206
|
mustBeInsideWorker();
|
|
773
|
-
return
|
|
774
|
-
generatorMoves: "UFLR".split("")
|
|
775
|
-
// TODO: <U, F, R>
|
|
776
|
-
maxDepth
|
|
207
|
+
return wasmTwsearch((await cube2x2x2.kpuzzle()).definition, pattern, {
|
|
208
|
+
generatorMoves: "UFLR".split("")
|
|
777
209
|
});
|
|
778
210
|
}
|
|
779
211
|
|
|
780
212
|
// src/cubing/search/inside/solve/puzzles/dynamic/4x4x4/index.ts
|
|
781
|
-
var dynamic4x4x4Solver = from(() => import("./search-dynamic-solve-4x4x4-
|
|
213
|
+
var dynamic4x4x4Solver = from(() => import("./search-dynamic-solve-4x4x4-IYN4OTDM.js"));
|
|
782
214
|
|
|
783
215
|
// src/cubing/search/inside/solve/puzzles/4x4x4.ts
|
|
784
|
-
var
|
|
216
|
+
var randomSuffixes = [
|
|
785
217
|
[null, "x", "x2", "x'", "z", "z'"],
|
|
786
218
|
[null, "y", "y2", "y'"]
|
|
787
219
|
];
|
|
@@ -793,21 +225,21 @@ async function random444Scramble() {
|
|
|
793
225
|
return (await dynamic4x4x4Solver).random444Scramble();
|
|
794
226
|
}
|
|
795
227
|
async function random444OrientedScramble() {
|
|
796
|
-
return addOrientationSuffix(await random444Scramble(),
|
|
228
|
+
return addOrientationSuffix(await random444Scramble(), randomSuffixes);
|
|
797
229
|
}
|
|
798
230
|
|
|
799
231
|
// src/cubing/search/inside/solve/puzzles/dynamic/fto/index.ts
|
|
800
232
|
var dynamicFTOSolver = from(() => import("./search-dynamic-solve-fto-EY5ZVAGO.js"));
|
|
801
233
|
|
|
802
234
|
// src/cubing/search/inside/solve/puzzles/fto.ts
|
|
803
|
-
var dynamic = from(() => import("./search-dynamic-sgs-unofficial-
|
|
235
|
+
var dynamic = from(() => import("./search-dynamic-sgs-unofficial-XHAYSQO3.js"));
|
|
804
236
|
async function randomFTOScramble() {
|
|
805
237
|
mustBeInsideWorker();
|
|
806
238
|
return new Alg(await (await dynamicFTOSolver).randomFTOScrambleString());
|
|
807
239
|
}
|
|
808
240
|
|
|
809
241
|
// src/cubing/search/inside/solve/puzzles/dynamic/kilominx/index.ts
|
|
810
|
-
var dynamicKilominxSolver = from(() => import("./search-dynamic-solve-kilominx-
|
|
242
|
+
var dynamicKilominxSolver = from(() => import("./search-dynamic-solve-kilominx-BN4POKYF.js"));
|
|
811
243
|
|
|
812
244
|
// src/cubing/search/inside/solve/puzzles/kilominx.ts
|
|
813
245
|
async function randomKilominxScramble() {
|
|
@@ -880,7 +312,7 @@ async function solvePyraminx(pattern) {
|
|
|
880
312
|
}
|
|
881
313
|
|
|
882
314
|
// src/cubing/search/inside/solve/puzzles/dynamic/sgs-unofficial/index.ts
|
|
883
|
-
var searchDynamicUnofficial = from(() => import("./search-dynamic-sgs-unofficial-
|
|
315
|
+
var searchDynamicUnofficial = from(() => import("./search-dynamic-sgs-unofficial-XHAYSQO3.js"));
|
|
884
316
|
|
|
885
317
|
// src/cubing/search/inside/solve/puzzles/redi_cube.ts
|
|
886
318
|
async function randomRediCubeScramble() {
|
|
@@ -974,8 +406,22 @@ async function measurePerf(name, f, options) {
|
|
|
974
406
|
var prefetchPromises = /* @__PURE__ */ new Map();
|
|
975
407
|
var queuedPrefetchTimeoutID = null;
|
|
976
408
|
async function randomScrambleForEvent(eventID, options) {
|
|
409
|
+
function wasm() {
|
|
410
|
+
return measurePerf(
|
|
411
|
+
`wasmRandomScrambleForEvent(${JSON.stringify(eventID)})`,
|
|
412
|
+
() => wasmRandomScrambleForEvent(eventID),
|
|
413
|
+
{
|
|
414
|
+
isPrefetch: options?.isPrefetch
|
|
415
|
+
}
|
|
416
|
+
);
|
|
417
|
+
}
|
|
977
418
|
switch (eventID) {
|
|
978
419
|
case "222":
|
|
420
|
+
return (await wasm()).experimentalSimplify({
|
|
421
|
+
puzzleSpecificSimplifyOptions: {
|
|
422
|
+
quantumMoveOrder: () => 4
|
|
423
|
+
}
|
|
424
|
+
});
|
|
979
425
|
case "555":
|
|
980
426
|
case "666":
|
|
981
427
|
case "777":
|
|
@@ -983,13 +429,7 @@ async function randomScrambleForEvent(eventID, options) {
|
|
|
983
429
|
case "minx":
|
|
984
430
|
case "pyram":
|
|
985
431
|
case "555bf":
|
|
986
|
-
return
|
|
987
|
-
`wasmRandomScrambleForEvent(${JSON.stringify(eventID)})`,
|
|
988
|
-
() => wasmRandomScrambleForEvent(eventID),
|
|
989
|
-
{
|
|
990
|
-
isPrefetch: options?.isPrefetch
|
|
991
|
-
}
|
|
992
|
-
);
|
|
432
|
+
return wasm();
|
|
993
433
|
case "333":
|
|
994
434
|
case "333oh":
|
|
995
435
|
case "333ft":
|
|
@@ -1096,7 +536,7 @@ var insideAPI = {
|
|
|
1096
536
|
},
|
|
1097
537
|
solve222ToString: async (patternData) => {
|
|
1098
538
|
const pattern = new KPattern(await puzzles["2x2x2"].kpuzzle(), patternData);
|
|
1099
|
-
return (await
|
|
539
|
+
return (await solve222(pattern)).toString();
|
|
1100
540
|
},
|
|
1101
541
|
solveSkewbToString: async (patternData) => {
|
|
1102
542
|
const pattern = new KPattern(await puzzles["skewb"].kpuzzle(), patternData);
|
|
@@ -1126,9 +566,6 @@ var insideAPI = {
|
|
|
1126
566
|
}
|
|
1127
567
|
};
|
|
1128
568
|
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
insideAPI
|
|
1133
|
-
};
|
|
1134
|
-
//# sourceMappingURL=chunk-6P7J74PX.js.map
|
|
569
|
+
// src/cubing/search/inside/index.ts
|
|
570
|
+
expose(insideAPI);
|
|
571
|
+
//# sourceMappingURL=inside-CH2IHSQT.js.map
|