@rednaxela101/cubing 0.63.5

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 (136) hide show
  1. package/README.md +120 -0
  2. package/alg/index.d.ts +1 -0
  3. package/bluetooth/index.d.ts +1 -0
  4. package/dist/bin/chunks/chunk-22VWCGBC.js +13 -0
  5. package/dist/bin/chunks/chunk-22VWCGBC.js.map +7 -0
  6. package/dist/bin/order.js +59 -0
  7. package/dist/bin/order.js.map +7 -0
  8. package/dist/bin/puzzle-geometry-bin.js +407 -0
  9. package/dist/bin/puzzle-geometry-bin.js.map +7 -0
  10. package/dist/bin/scramble.js +188 -0
  11. package/dist/bin/scramble.js.map +7 -0
  12. package/dist/bin/svg.js +56 -0
  13. package/dist/bin/svg.js.map +7 -0
  14. package/dist/lib/cubing/alg/index.d.ts +2 -0
  15. package/dist/lib/cubing/alg/index.js +43 -0
  16. package/dist/lib/cubing/alg/index.js.map +7 -0
  17. package/dist/lib/cubing/bluetooth/index.d.ts +189 -0
  18. package/dist/lib/cubing/bluetooth/index.js +2271 -0
  19. package/dist/lib/cubing/bluetooth/index.js.map +7 -0
  20. package/dist/lib/cubing/chunks/big-puzzle-orientation-BA6QHO5C.js +68 -0
  21. package/dist/lib/cubing/chunks/big-puzzle-orientation-BA6QHO5C.js.map +7 -0
  22. package/dist/lib/cubing/chunks/chunk-2VJB4TMH.js +1774 -0
  23. package/dist/lib/cubing/chunks/chunk-2VJB4TMH.js.map +7 -0
  24. package/dist/lib/cubing/chunks/chunk-52ZXJEUO.js +665 -0
  25. package/dist/lib/cubing/chunks/chunk-52ZXJEUO.js.map +7 -0
  26. package/dist/lib/cubing/chunks/chunk-56VZAEPF.js +274 -0
  27. package/dist/lib/cubing/chunks/chunk-56VZAEPF.js.map +7 -0
  28. package/dist/lib/cubing/chunks/chunk-7GUL3OBQ.js +9 -0
  29. package/dist/lib/cubing/chunks/chunk-7GUL3OBQ.js.map +7 -0
  30. package/dist/lib/cubing/chunks/chunk-7L7BJSIM.js +21 -0
  31. package/dist/lib/cubing/chunks/chunk-7L7BJSIM.js.map +7 -0
  32. package/dist/lib/cubing/chunks/chunk-AESPJKN6.js +265 -0
  33. package/dist/lib/cubing/chunks/chunk-AESPJKN6.js.map +7 -0
  34. package/dist/lib/cubing/chunks/chunk-C2Q347XS.js +89 -0
  35. package/dist/lib/cubing/chunks/chunk-C2Q347XS.js.map +7 -0
  36. package/dist/lib/cubing/chunks/chunk-CGBMJBU3.js +1195 -0
  37. package/dist/lib/cubing/chunks/chunk-CGBMJBU3.js.map +7 -0
  38. package/dist/lib/cubing/chunks/chunk-HZQONEMD.js +249 -0
  39. package/dist/lib/cubing/chunks/chunk-HZQONEMD.js.map +7 -0
  40. package/dist/lib/cubing/chunks/chunk-IAGCVPL3.js +1069 -0
  41. package/dist/lib/cubing/chunks/chunk-IAGCVPL3.js.map +7 -0
  42. package/dist/lib/cubing/chunks/chunk-NAPITA3L.js +1 -0
  43. package/dist/lib/cubing/chunks/chunk-NAPITA3L.js.map +7 -0
  44. package/dist/lib/cubing/chunks/chunk-XPDJUSZ7.js +1876 -0
  45. package/dist/lib/cubing/chunks/chunk-XPDJUSZ7.js.map +7 -0
  46. package/dist/lib/cubing/chunks/chunk-YSI6PF35.js +619 -0
  47. package/dist/lib/cubing/chunks/chunk-YSI6PF35.js.map +7 -0
  48. package/dist/lib/cubing/chunks/inside-LG2EAKCL.js +557 -0
  49. package/dist/lib/cubing/chunks/inside-LG2EAKCL.js.map +7 -0
  50. package/dist/lib/cubing/chunks/puzzles-dynamic-2x2x2-JYJJXB4V.js +142 -0
  51. package/dist/lib/cubing/chunks/puzzles-dynamic-2x2x2-JYJJXB4V.js.map +7 -0
  52. package/dist/lib/cubing/chunks/puzzles-dynamic-3x3x3-FYXD7SIU.js +365 -0
  53. package/dist/lib/cubing/chunks/puzzles-dynamic-3x3x3-FYXD7SIU.js.map +7 -0
  54. package/dist/lib/cubing/chunks/puzzles-dynamic-4x4x4-AIGABOAR.js +132 -0
  55. package/dist/lib/cubing/chunks/puzzles-dynamic-4x4x4-AIGABOAR.js.map +7 -0
  56. package/dist/lib/cubing/chunks/puzzles-dynamic-5x5x5-JUNRX27W.js +277 -0
  57. package/dist/lib/cubing/chunks/puzzles-dynamic-5x5x5-JUNRX27W.js.map +7 -0
  58. package/dist/lib/cubing/chunks/puzzles-dynamic-clock-USGQTDPO.js +836 -0
  59. package/dist/lib/cubing/chunks/puzzles-dynamic-clock-USGQTDPO.js.map +7 -0
  60. package/dist/lib/cubing/chunks/puzzles-dynamic-fto-WJHMLYCJ.js +100 -0
  61. package/dist/lib/cubing/chunks/puzzles-dynamic-fto-WJHMLYCJ.js.map +7 -0
  62. package/dist/lib/cubing/chunks/puzzles-dynamic-megaminx-2LVHIDL4.js +224 -0
  63. package/dist/lib/cubing/chunks/puzzles-dynamic-megaminx-2LVHIDL4.js.map +7 -0
  64. package/dist/lib/cubing/chunks/puzzles-dynamic-pyraminx-7UWX4HHI.js +93 -0
  65. package/dist/lib/cubing/chunks/puzzles-dynamic-pyraminx-7UWX4HHI.js.map +7 -0
  66. package/dist/lib/cubing/chunks/puzzles-dynamic-square1-PQEKBPFN.js +842 -0
  67. package/dist/lib/cubing/chunks/puzzles-dynamic-square1-PQEKBPFN.js.map +7 -0
  68. package/dist/lib/cubing/chunks/search-dynamic-sgs-2x2x2-XFKQ4VJS.js +125 -0
  69. package/dist/lib/cubing/chunks/search-dynamic-sgs-2x2x2-XFKQ4VJS.js.map +7 -0
  70. package/dist/lib/cubing/chunks/search-dynamic-sgs-megaminx-ZDOOLEDW.js +1564 -0
  71. package/dist/lib/cubing/chunks/search-dynamic-sgs-megaminx-ZDOOLEDW.js.map +7 -0
  72. package/dist/lib/cubing/chunks/search-dynamic-sgs-pyraminx-W6UJWBYY.js +108 -0
  73. package/dist/lib/cubing/chunks/search-dynamic-sgs-pyraminx-W6UJWBYY.js.map +7 -0
  74. package/dist/lib/cubing/chunks/search-dynamic-sgs-skewb-FXGKV4KD.js +125 -0
  75. package/dist/lib/cubing/chunks/search-dynamic-sgs-skewb-FXGKV4KD.js.map +7 -0
  76. package/dist/lib/cubing/chunks/search-dynamic-sgs-unofficial-YK6HA7BK.js +644 -0
  77. package/dist/lib/cubing/chunks/search-dynamic-sgs-unofficial-YK6HA7BK.js.map +7 -0
  78. package/dist/lib/cubing/chunks/search-dynamic-solve-3x3x3-DLMAGPXS.js +2549 -0
  79. package/dist/lib/cubing/chunks/search-dynamic-solve-3x3x3-DLMAGPXS.js.map +7 -0
  80. package/dist/lib/cubing/chunks/search-dynamic-solve-4x4x4-NONXQHOJ.js +2923 -0
  81. package/dist/lib/cubing/chunks/search-dynamic-solve-4x4x4-NONXQHOJ.js.map +7 -0
  82. package/dist/lib/cubing/chunks/search-dynamic-solve-fto-3GQ2HLSW.js +1405 -0
  83. package/dist/lib/cubing/chunks/search-dynamic-solve-fto-3GQ2HLSW.js.map +7 -0
  84. package/dist/lib/cubing/chunks/search-worker-entry.js +19 -0
  85. package/dist/lib/cubing/chunks/search-worker-entry.js.map +7 -0
  86. package/dist/lib/cubing/chunks/square1-stickerings-W2ZLZWIN.js +73 -0
  87. package/dist/lib/cubing/chunks/square1-stickerings-W2ZLZWIN.js.map +7 -0
  88. package/dist/lib/cubing/chunks/twips-2RNTWYNZ.js +433 -0
  89. package/dist/lib/cubing/chunks/twips-2RNTWYNZ.js.map +7 -0
  90. package/dist/lib/cubing/chunks/twips_wasm_bg-TJNYGA2C-23XTPLIK.js +10 -0
  91. package/dist/lib/cubing/chunks/twips_wasm_bg-TJNYGA2C-23XTPLIK.js.map +7 -0
  92. package/dist/lib/cubing/chunks/twisty-dynamic-3d-JO6OGKOF.js +2424 -0
  93. package/dist/lib/cubing/chunks/twisty-dynamic-3d-JO6OGKOF.js.map +7 -0
  94. package/dist/lib/cubing/index-BX6f56uo.d.ts +76 -0
  95. package/dist/lib/cubing/index-CcRu94bx.d.ts +2622 -0
  96. package/dist/lib/cubing/kpuzzle/index.d.ts +2 -0
  97. package/dist/lib/cubing/kpuzzle/index.js +12 -0
  98. package/dist/lib/cubing/kpuzzle/index.js.map +7 -0
  99. package/dist/lib/cubing/notation/index.d.ts +32 -0
  100. package/dist/lib/cubing/notation/index.js +20 -0
  101. package/dist/lib/cubing/notation/index.js.map +7 -0
  102. package/dist/lib/cubing/outside-BCzgSYQ_.d.ts +38 -0
  103. package/dist/lib/cubing/protocol/index.d.ts +28 -0
  104. package/dist/lib/cubing/protocol/index.js +20 -0
  105. package/dist/lib/cubing/protocol/index.js.map +7 -0
  106. package/dist/lib/cubing/puzzle-geometry/index.d.ts +2 -0
  107. package/dist/lib/cubing/puzzle-geometry/index.js +5024 -0
  108. package/dist/lib/cubing/puzzle-geometry/index.js.map +7 -0
  109. package/dist/lib/cubing/puzzles/index.d.ts +2 -0
  110. package/dist/lib/cubing/puzzles/index.js +23 -0
  111. package/dist/lib/cubing/puzzles/index.js.map +7 -0
  112. package/dist/lib/cubing/scramble/index.d.ts +2 -0
  113. package/dist/lib/cubing/scramble/index.js +16 -0
  114. package/dist/lib/cubing/scramble/index.js.map +7 -0
  115. package/dist/lib/cubing/search/index.d.ts +7 -0
  116. package/dist/lib/cubing/search/index.js +37 -0
  117. package/dist/lib/cubing/search/index.js.map +7 -0
  118. package/dist/lib/cubing/stream/index.d.ts +2 -0
  119. package/dist/lib/cubing/stream/index.js +111 -0
  120. package/dist/lib/cubing/stream/index.js.map +7 -0
  121. package/dist/lib/cubing/twisty/index.d.ts +2 -0
  122. package/dist/lib/cubing/twisty/index.js +6236 -0
  123. package/dist/lib/cubing/twisty/index.js.map +7 -0
  124. package/experimental-json-schema/kpuzzle/KPatternData.schema.json +34 -0
  125. package/experimental-json-schema/kpuzzle/KPuzzleDefinition.schema.json +97 -0
  126. package/experimental-json-schema/kpuzzle/KTransformationData.schema.json +27 -0
  127. package/kpuzzle/index.d.ts +1 -0
  128. package/notation/index.d.ts +1 -0
  129. package/package.json +146 -0
  130. package/protocol/index.d.ts +1 -0
  131. package/puzzle-geometry/index.d.ts +1 -0
  132. package/puzzles/index.d.ts +1 -0
  133. package/scramble/index.d.ts +1 -0
  134. package/search/index.d.ts +1 -0
  135. package/stream/index.d.ts +1 -0
  136. package/twisty/index.d.ts +1 -0
@@ -0,0 +1,619 @@
1
+ import {
2
+ CubePGPuzzleLoader,
3
+ LazyPromise,
4
+ PGPuzzleLoader,
5
+ PuzzleStickering,
6
+ StickeringManager,
7
+ asyncGetPuzzleGeometry,
8
+ bigCubePuzzleOrientation,
9
+ cube3x3x3,
10
+ cube3x3x3KeyMapping,
11
+ cubeLikeStickeringList,
12
+ cubeLikeStickeringMask,
13
+ cubeMirrorTransforms,
14
+ experimentalIs2x2x2Solved,
15
+ getCached
16
+ } from "./chunk-2VJB4TMH.js";
17
+ import {
18
+ KPuzzle
19
+ } from "./chunk-52ZXJEUO.js";
20
+ import {
21
+ Move,
22
+ Pause
23
+ } from "./chunk-XPDJUSZ7.js";
24
+
25
+ // src/cubing/puzzles/events.ts
26
+ var wcaEvents = {
27
+ "333": {
28
+ puzzleID: "3x3x3",
29
+ eventName: "3x3x3 Cube",
30
+ scramblesImplemented: "random-state"
31
+ },
32
+ "222": {
33
+ puzzleID: "2x2x2",
34
+ eventName: "2x2x2 Cube",
35
+ scramblesImplemented: "random-state"
36
+ },
37
+ "444": {
38
+ puzzleID: "4x4x4",
39
+ eventName: "4x4x4 Cube",
40
+ scramblesImplemented: "random-state"
41
+ },
42
+ "555": {
43
+ puzzleID: "5x5x5",
44
+ eventName: "5x5x5 Cube",
45
+ scramblesImplemented: "random-moves"
46
+ },
47
+ "666": {
48
+ puzzleID: "6x6x6",
49
+ eventName: "6x6x6 Cube",
50
+ scramblesImplemented: "random-moves"
51
+ },
52
+ "777": {
53
+ puzzleID: "7x7x7",
54
+ eventName: "7x7x7 Cube",
55
+ scramblesImplemented: "random-moves"
56
+ },
57
+ "333bf": {
58
+ puzzleID: "3x3x3",
59
+ eventName: "3x3x3 Blindfolded",
60
+ scramblesImplemented: "random-state"
61
+ },
62
+ "333fm": {
63
+ puzzleID: "3x3x3",
64
+ eventName: "3x3x3 Fewest Moves",
65
+ scramblesImplemented: "random-state"
66
+ },
67
+ "333oh": {
68
+ puzzleID: "3x3x3",
69
+ eventName: "3x3x3 One-Handed",
70
+ scramblesImplemented: "random-state"
71
+ },
72
+ clock: {
73
+ puzzleID: "clock",
74
+ eventName: "Clock",
75
+ scramblesImplemented: "random-state"
76
+ },
77
+ minx: {
78
+ puzzleID: "megaminx",
79
+ eventName: "Megaminx",
80
+ scramblesImplemented: "random-moves"
81
+ },
82
+ pyram: {
83
+ puzzleID: "pyraminx",
84
+ eventName: "Pyraminx",
85
+ scramblesImplemented: "random-state"
86
+ },
87
+ skewb: {
88
+ puzzleID: "skewb",
89
+ eventName: "Skewb",
90
+ scramblesImplemented: "random-state"
91
+ },
92
+ sq1: {
93
+ puzzleID: "square1",
94
+ eventName: "Square-1",
95
+ scramblesImplemented: "random-state"
96
+ },
97
+ "444bf": {
98
+ puzzleID: "4x4x4",
99
+ eventName: "4x4x4 Blindfolded",
100
+ scramblesImplemented: "random-state"
101
+ },
102
+ "555bf": {
103
+ puzzleID: "5x5x5",
104
+ eventName: "5x5x5 Blindfolded",
105
+ scramblesImplemented: "random-moves"
106
+ },
107
+ "333mbf": {
108
+ puzzleID: "3x3x3",
109
+ eventName: "3x3x3 Multi-Blind",
110
+ scramblesImplemented: "random-state"
111
+ }
112
+ };
113
+ function wcaEventInfo(event) {
114
+ return wcaEvents[event] ?? null;
115
+ }
116
+ var twizzleEvents = {
117
+ ...wcaEvents,
118
+ fto: {
119
+ puzzleID: "fto",
120
+ eventName: "Face-Turning Octahedron",
121
+ scramblesImplemented: "random-state"
122
+ }
123
+ };
124
+ function eventInfo(event) {
125
+ return twizzleEvents[event] ?? null;
126
+ }
127
+
128
+ // src/cubing/puzzles/implementations/2x2x2/index.ts
129
+ var cube2x2x2 = {
130
+ id: "2x2x2",
131
+ fullName: "2\xD72\xD72 Cube",
132
+ kpuzzle: getCached(async () => {
133
+ const kpuzzle = new KPuzzle(
134
+ (await import("./puzzles-dynamic-2x2x2-JYJJXB4V.js")).cube2x2x2JSON
135
+ );
136
+ kpuzzle.definition.experimentalIsPatternSolved = experimentalIs2x2x2Solved;
137
+ return kpuzzle;
138
+ }),
139
+ svg: async () => (await import("./puzzles-dynamic-2x2x2-JYJJXB4V.js")).cube2x2x2SVG,
140
+ llSVG: getCached(
141
+ async () => (await import("./puzzles-dynamic-2x2x2-JYJJXB4V.js")).cube2x2x2LLSVG
142
+ ),
143
+ pg: getCached(async () => {
144
+ return asyncGetPuzzleGeometry("2x2x2");
145
+ }),
146
+ stickeringMask: (stickering) => cubeLikeStickeringMask(cube2x2x2, stickering),
147
+ stickerings: () => cubeLikeStickeringList("2x2x2", { use3x3x3Fallbacks: true }),
148
+ algTransformData: cubeMirrorTransforms
149
+ };
150
+
151
+ // src/cubing/puzzles/implementations/4x4x4/cube4x4x4And5x5x5KeyMapping.ts
152
+ var cube4x4x4And5x5x5KeyMapping = {
153
+ ...cube3x3x3KeyMapping,
154
+ KeyZ: new Move("m'"),
155
+ KeyB: new Move("m"),
156
+ Period: new Move("m'")
157
+ };
158
+
159
+ // src/cubing/puzzles/implementations/4x4x4/index.ts
160
+ var cube4x4x4 = new CubePGPuzzleLoader({
161
+ id: "4x4x4",
162
+ fullName: "4\xD74\xD74 Cube",
163
+ inventedBy: ["Peter Sebest\xE9ny"],
164
+ inventionYear: 1981
165
+ });
166
+ cube4x4x4.llSVG = getCached(async () => {
167
+ return (await import("./puzzles-dynamic-4x4x4-AIGABOAR.js")).cube4x4x4LLSVG;
168
+ });
169
+ cube4x4x4.keyMapping = async () => cube4x4x4And5x5x5KeyMapping;
170
+ cube4x4x4.kpuzzle = getCached(async () => {
171
+ const kpuzzle = await PGPuzzleLoader.prototype.kpuzzle.call(cube4x4x4);
172
+ kpuzzle.definition.defaultPattern["CENTERS"].pieces = [
173
+ // U
174
+ 0,
175
+ 0,
176
+ 0,
177
+ 0,
178
+ // L
179
+ 4,
180
+ 4,
181
+ 4,
182
+ 4,
183
+ // F
184
+ 8,
185
+ 8,
186
+ 8,
187
+ 8,
188
+ // R
189
+ 12,
190
+ 12,
191
+ 12,
192
+ 12,
193
+ // B
194
+ 16,
195
+ 16,
196
+ 16,
197
+ 16,
198
+ // D
199
+ 20,
200
+ 20,
201
+ 20,
202
+ 20
203
+ ];
204
+ const { experimentalIsBigCubeSolved } = await bigCubePuzzleOrientation();
205
+ kpuzzle.definition.experimentalIsPatternSolved = experimentalIsBigCubeSolved;
206
+ return kpuzzle;
207
+ });
208
+
209
+ // src/cubing/puzzles/implementations/5x5x5/index.ts
210
+ var cube5x5x5 = new CubePGPuzzleLoader({
211
+ id: "5x5x5",
212
+ fullName: "5\xD75\xD75 Cube",
213
+ inventedBy: ["Udo Krell"],
214
+ inventionYear: 1981
215
+ });
216
+ cube5x5x5.llSVG = getCached(async () => {
217
+ return (await import("./puzzles-dynamic-5x5x5-JUNRX27W.js")).cube5x5x5LLSVG;
218
+ });
219
+ cube5x5x5.keyMapping = async () => cube4x4x4And5x5x5KeyMapping;
220
+ cube5x5x5.kpuzzle = getCached(async () => {
221
+ const kpuzzle = await PGPuzzleLoader.prototype.kpuzzle.call(cube5x5x5);
222
+ const speffzDistinguishableCenters = [
223
+ // U
224
+ 0,
225
+ 0,
226
+ 0,
227
+ 0,
228
+ // L
229
+ 4,
230
+ 4,
231
+ 4,
232
+ 4,
233
+ // F
234
+ 8,
235
+ 8,
236
+ 8,
237
+ 8,
238
+ // R
239
+ 12,
240
+ 12,
241
+ 12,
242
+ 12,
243
+ // B
244
+ 16,
245
+ 16,
246
+ 16,
247
+ 16,
248
+ // D
249
+ 20,
250
+ 20,
251
+ 20,
252
+ 20
253
+ ];
254
+ kpuzzle.definition.defaultPattern["CENTERS"].pieces = speffzDistinguishableCenters;
255
+ kpuzzle.definition.defaultPattern["CENTERS2"].pieces = speffzDistinguishableCenters;
256
+ kpuzzle.definition.defaultPattern["CENTERS3"].orientationMod = new Array(
257
+ 6
258
+ ).fill(1);
259
+ const { experimentalIsBigCubeSolved } = await bigCubePuzzleOrientation();
260
+ kpuzzle.definition.experimentalIsPatternSolved = experimentalIsBigCubeSolved;
261
+ return kpuzzle;
262
+ });
263
+
264
+ // src/cubing/puzzles/implementations/clock/index.ts
265
+ var clock = {
266
+ id: "clock",
267
+ fullName: "Clock",
268
+ inventedBy: ["Christopher C. Wiggs", "Christopher J. Taylor"],
269
+ inventionYear: 1988,
270
+ // Patent application year: https://www.jaapsch.net/puzzles/patents/us4869506.pdf
271
+ kpuzzle: getCached(
272
+ async () => new KPuzzle(
273
+ (await import("./puzzles-dynamic-clock-USGQTDPO.js")).clockJSON
274
+ )
275
+ ),
276
+ svg: getCached(async () => {
277
+ return (await import("./puzzles-dynamic-clock-USGQTDPO.js")).clockSVG;
278
+ })
279
+ };
280
+
281
+ // src/cubing/puzzles/stickerings/fto-stickerings.ts
282
+ async function ftoStickering(puzzleLoader, stickering) {
283
+ const kpuzzle = await puzzleLoader.kpuzzle();
284
+ const puzzleStickering = new PuzzleStickering(kpuzzle);
285
+ const m = new StickeringManager(kpuzzle);
286
+ const experimentalFTO_FC = () => m.and([m.move("U"), m.not(m.or(m.moves(["F", "BL", "BR"])))]);
287
+ const experimentalFTO_F2T = () => m.and([m.move("U"), m.not(m.move("F"))]);
288
+ const experimentalFTO_SC = () => m.or([
289
+ experimentalFTO_F2T(),
290
+ m.and([m.move("F"), m.not(m.or(m.moves(["U", "BL", "BR"])))])
291
+ ]);
292
+ const experimentalFTO_L2C = () => m.not(
293
+ m.or([
294
+ m.and([m.move("U"), m.move("F")]),
295
+ m.and([m.move("F"), m.move("BL")]),
296
+ m.and([m.move("F"), m.move("BR")]),
297
+ m.and([m.move("BL"), m.move("BR")])
298
+ ])
299
+ );
300
+ const experimentalFTO_LBT = () => m.not(
301
+ m.or([
302
+ m.and([m.move("F"), m.move("BL")]),
303
+ m.and([m.move("F"), m.move("BR")]),
304
+ m.and([m.move("BL"), m.move("BR")])
305
+ ])
306
+ );
307
+ switch (stickering) {
308
+ case "full":
309
+ break;
310
+ case "experimental-fto-fc": {
311
+ puzzleStickering.set(
312
+ m.not(experimentalFTO_FC()),
313
+ "Ignored" /* Ignored */
314
+ );
315
+ break;
316
+ }
317
+ case "experimental-fto-f2t": {
318
+ puzzleStickering.set(
319
+ m.not(experimentalFTO_F2T()),
320
+ "Ignored" /* Ignored */
321
+ );
322
+ puzzleStickering.set(experimentalFTO_FC(), "Dim" /* Dim */);
323
+ break;
324
+ }
325
+ case "experimental-fto-sc": {
326
+ puzzleStickering.set(
327
+ m.not(experimentalFTO_SC()),
328
+ "Ignored" /* Ignored */
329
+ );
330
+ puzzleStickering.set(experimentalFTO_F2T(), "Dim" /* Dim */);
331
+ break;
332
+ }
333
+ case "experimental-fto-l2c": {
334
+ puzzleStickering.set(
335
+ m.not(experimentalFTO_L2C()),
336
+ "Ignored" /* Ignored */
337
+ );
338
+ puzzleStickering.set(experimentalFTO_SC(), "Dim" /* Dim */);
339
+ break;
340
+ }
341
+ case "experimental-fto-lbt": {
342
+ puzzleStickering.set(
343
+ m.not(experimentalFTO_LBT()),
344
+ "Ignored" /* Ignored */
345
+ );
346
+ puzzleStickering.set(experimentalFTO_L2C(), "Dim" /* Dim */);
347
+ break;
348
+ }
349
+ case "experimental-fto-l3t": {
350
+ puzzleStickering.set(experimentalFTO_LBT(), "Dim" /* Dim */);
351
+ break;
352
+ }
353
+ default:
354
+ console.warn(
355
+ `Unsupported stickering for ${puzzleLoader.id}: ${stickering}. Setting all pieces to dim.`
356
+ );
357
+ puzzleStickering.set(m.and(m.moves([])), "Dim" /* Dim */);
358
+ }
359
+ return puzzleStickering.toStickeringMask();
360
+ }
361
+ async function ftoStickerings() {
362
+ return [
363
+ "full",
364
+ "experimental-fto-fc",
365
+ "experimental-fto-f2t",
366
+ "experimental-fto-sc",
367
+ "experimental-fto-l2c",
368
+ "experimental-fto-lbt",
369
+ "experimental-fto-l3t"
370
+ ];
371
+ }
372
+
373
+ // src/cubing/puzzles/implementations/fto/ftoKeyMapping.ts
374
+ var ftoKeyMapping = {
375
+ KeyI: new Move("R"),
376
+ KeyK: new Move("R'"),
377
+ KeyW: new Move("B"),
378
+ KeyO: new Move("B'"),
379
+ KeyS: new Move("D"),
380
+ KeyL: new Move("D'"),
381
+ KeyD: new Move("L"),
382
+ KeyE: new Move("L'"),
383
+ KeyJ: new Move("U"),
384
+ KeyF: new Move("U'"),
385
+ KeyH: new Move("F"),
386
+ KeyG: new Move("F'"),
387
+ KeyN: new Move("Rv'"),
388
+ KeyC: new Move("l"),
389
+ KeyR: new Move("l'"),
390
+ KeyU: new Move("r"),
391
+ KeyM: new Move("r'"),
392
+ KeyX: new Move("d"),
393
+ Comma: new Move("d'"),
394
+ KeyT: new Move("Lv'"),
395
+ KeyY: new Move("Rv"),
396
+ KeyV: new Move("Lv"),
397
+ Semicolon: new Move("Uv"),
398
+ KeyA: new Move("Uv'"),
399
+ KeyP: new Move("BR'"),
400
+ KeyQ: new Move("BL"),
401
+ KeyZ: new Move("BL'"),
402
+ KeyB: new Move("T"),
403
+ Period: new Move("BR"),
404
+ Backquote: new Pause()
405
+ };
406
+
407
+ // src/cubing/puzzles/implementations/fto/index.ts
408
+ var FTOPuzzleLoader = class extends PGPuzzleLoader {
409
+ constructor() {
410
+ super({
411
+ pgID: "FTO",
412
+ id: "fto",
413
+ fullName: "Face-Turning Octahedron",
414
+ inventedBy: ["Karl Rohrbach", "David Pitcher"],
415
+ // http://twistypuzzles.com/cgi-bin/puzzle.cgi?pkey=1663
416
+ inventionYear: 1983
417
+ // http://twistypuzzles.com/cgi-bin/puzzle.cgi?pkey=1663
418
+ });
419
+ }
420
+ stickeringMask(stickering) {
421
+ return ftoStickering(this, stickering);
422
+ }
423
+ stickerings = ftoStickerings;
424
+ svg = getCached(async () => {
425
+ return (await import("./puzzles-dynamic-fto-WJHMLYCJ.js")).ftoSVG;
426
+ });
427
+ keyMapping = async () => ftoKeyMapping;
428
+ algTransformData = {
429
+ "\u2194 Mirror (x)": {
430
+ replaceMovesByFamily: {
431
+ L: "R",
432
+ R: "L",
433
+ l: "r",
434
+ r: "l",
435
+ Lw: "Rw",
436
+ Rw: "Lw",
437
+ Lv: "Rv",
438
+ Rv: "Lv",
439
+ BL: "BR",
440
+ BR: "BL",
441
+ bl: "br",
442
+ br: "bl",
443
+ BLw: "BRw",
444
+ BRw: "BLw",
445
+ BLv: "BRv",
446
+ BRv: "BLv"
447
+ },
448
+ invertExceptByFamily: /* @__PURE__ */ new Set(["x"])
449
+ }
450
+ };
451
+ };
452
+ var fto = new FTOPuzzleLoader();
453
+
454
+ // src/cubing/puzzles/stickerings/megaminx-stickerings.ts
455
+ async function megaminxStickeringMask(puzzleLoader, stickering) {
456
+ if ((await megaminxStickerings()).includes(stickering)) {
457
+ return cubeLikeStickeringMask(puzzleLoader, stickering);
458
+ }
459
+ console.warn(
460
+ `Unsupported stickering for ${puzzleLoader.id}: ${stickering}. Setting all pieces to dim.`
461
+ );
462
+ return cubeLikeStickeringMask(puzzleLoader, "full");
463
+ }
464
+ var megaminxStickeringListPromise = new LazyPromise(
465
+ () => cubeLikeStickeringList("megaminx")
466
+ );
467
+ function megaminxStickerings() {
468
+ return megaminxStickeringListPromise;
469
+ }
470
+
471
+ // src/cubing/puzzles/implementations/megaminx/megaminxKeyMapping.ts
472
+ var megaminxKeyMapping = {
473
+ KeyI: new Move("R"),
474
+ KeyK: new Move("R'"),
475
+ KeyW: new Move("B"),
476
+ KeyO: new Move("B'"),
477
+ KeyS: new Move("FR"),
478
+ KeyL: new Move("FR'"),
479
+ KeyD: new Move("L"),
480
+ KeyE: new Move("L'"),
481
+ KeyJ: new Move("U"),
482
+ KeyF: new Move("U'"),
483
+ KeyH: new Move("F"),
484
+ KeyG: new Move("F'"),
485
+ KeyC: new Move("Lw"),
486
+ KeyR: new Move("Lw'"),
487
+ KeyU: new Move("Rw"),
488
+ KeyM: new Move("Rw'"),
489
+ KeyX: new Move("d"),
490
+ Comma: new Move("d'"),
491
+ KeyT: new Move("Rv"),
492
+ KeyY: new Move("Rv"),
493
+ KeyV: new Move("Rv'"),
494
+ KeyN: new Move("Rv'"),
495
+ Semicolon: new Move("y"),
496
+ KeyA: new Move("y'"),
497
+ KeyP: new Move("z"),
498
+ KeyQ: new Move("z'"),
499
+ KeyZ: new Move("2L'"),
500
+ KeyB: new Move("2R"),
501
+ Period: new Move("2R'"),
502
+ Backquote: new Pause()
503
+ };
504
+
505
+ // src/cubing/puzzles/implementations/megaminx/index.ts
506
+ var MegaminxPuzzleLoader = class extends PGPuzzleLoader {
507
+ constructor() {
508
+ super({
509
+ id: "megaminx",
510
+ fullName: "Megaminx",
511
+ // Too many simultaneous inventors to name.
512
+ inventionYear: 1981
513
+ // Earliest date from https://www.jaapsch.net/puzzles/megaminx.htm
514
+ });
515
+ }
516
+ stickeringMask(stickering) {
517
+ return megaminxStickeringMask(this, stickering);
518
+ }
519
+ stickerings = megaminxStickerings;
520
+ llSVG = getCached(async () => {
521
+ return (await import("./puzzles-dynamic-megaminx-2LVHIDL4.js")).megaminxLLSVG;
522
+ });
523
+ keyMapping = async () => megaminxKeyMapping;
524
+ // TODO: async loading
525
+ };
526
+ var megaminx = new MegaminxPuzzleLoader();
527
+
528
+ // src/cubing/puzzles/implementations/pyraminx/index.ts
529
+ var PyraminxPuzzleLoader = class extends PGPuzzleLoader {
530
+ constructor() {
531
+ super({
532
+ id: "pyraminx",
533
+ fullName: "Pyraminx",
534
+ inventedBy: ["Uwe Meffert"]
535
+ });
536
+ }
537
+ svg = getCached(async () => {
538
+ return (await import("./puzzles-dynamic-pyraminx-7UWX4HHI.js")).pyraminxSVG;
539
+ });
540
+ algTransformData = {
541
+ "\u2194 Mirror (x)": {
542
+ replaceMovesByFamily: {
543
+ L: "R",
544
+ R: "L",
545
+ l: "r",
546
+ r: "l",
547
+ Lw: "Rw",
548
+ Rw: "Lw",
549
+ Lv: "Rv",
550
+ Rv: "Lv"
551
+ },
552
+ invertExceptByFamily: /* @__PURE__ */ new Set([])
553
+ }
554
+ };
555
+ };
556
+ var pyraminx = new PyraminxPuzzleLoader();
557
+
558
+ // src/cubing/puzzles/implementations/square1/index.ts
559
+ var square1 = {
560
+ id: "square1",
561
+ fullName: "Square-1",
562
+ inventedBy: ["Karel Hr\u0161el", "Vojtech Kopsk\xFD"],
563
+ inventionYear: 1990,
564
+ // Czech patent application year: http://spisy.upv.cz/Patents/FullDocuments/277/277266.pdf
565
+ kpuzzle: getCached(
566
+ async () => new KPuzzle(
567
+ (await import("./puzzles-dynamic-square1-PQEKBPFN.js")).sq1HyperOrbitJSON
568
+ )
569
+ ),
570
+ svg: getCached(async () => {
571
+ return (await import("./puzzles-dynamic-square1-PQEKBPFN.js")).sq1HyperOrbitSVG;
572
+ }),
573
+ llSVG: getCached(async () => {
574
+ return (await import("./puzzles-dynamic-square1-PQEKBPFN.js")).sq1HyperOrbitLLSVG;
575
+ }),
576
+ stickeringMask: async (stickering) => {
577
+ return (await import("./square1-stickerings-W2ZLZWIN.js")).square1StickeringMask(square1, stickering);
578
+ },
579
+ stickerings: () => cubeLikeStickeringList("square1")
580
+ };
581
+
582
+ // src/cubing/puzzles/index.ts
583
+ var puzzles = {
584
+ /******** Start of WCA Puzzles *******/
585
+ "3x3x3": cube3x3x3,
586
+ "2x2x2": cube2x2x2,
587
+ "4x4x4": cube4x4x4,
588
+ "5x5x5": cube5x5x5,
589
+ "6x6x6": new CubePGPuzzleLoader({ id: "6x6x6", fullName: "6\xD76\xD76 Cube" }),
590
+ "7x7x7": new CubePGPuzzleLoader({ id: "7x7x7", fullName: "7\xD77\xD77 Cube" }),
591
+ // 3x3x3 Blindfolded
592
+ // 3x3x3 Fewest Moves
593
+ // 3x3x3 One-Handed
594
+ clock,
595
+ megaminx,
596
+ pyraminx,
597
+ skewb: new PGPuzzleLoader({
598
+ id: "skewb",
599
+ fullName: "Skewb",
600
+ inventedBy: ["Tony Durham"]
601
+ // https://www.jaapsch.net/puzzles/skewb.htm
602
+ // inventionYear: 1982, // 1982 is actually the year of Hofstadter's column.
603
+ }),
604
+ square1,
605
+ // 4x4x4 Blindfolded
606
+ // 5x5x5 Blindfolded
607
+ /******** End of WCA puzzles ********/
608
+ fto
609
+ };
610
+
611
+ export {
612
+ wcaEvents,
613
+ wcaEventInfo,
614
+ twizzleEvents,
615
+ eventInfo,
616
+ cube2x2x2,
617
+ puzzles
618
+ };
619
+ //# sourceMappingURL=chunk-YSI6PF35.js.map