cubing 0.63.4 → 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.
- package/dist/bin/chunks/{chunk-E6RYEKYL.js → chunk-22VWCGBC.js} +2 -2
- package/dist/bin/order.js +1 -1
- package/dist/bin/puzzle-geometry-bin.js +1 -1
- package/dist/bin/scramble.js +1 -1
- package/dist/bin/svg.js +1 -1
- package/dist/lib/cubing/bluetooth/index.js +3 -3
- package/dist/lib/cubing/chunks/{chunk-WBMKMQAL.js → chunk-A7FK4XKU.js} +2 -2
- package/dist/lib/cubing/chunks/{chunk-WBMKMQAL.js.map → chunk-A7FK4XKU.js.map} +1 -1
- package/dist/lib/cubing/chunks/{chunk-VYAO5FCM.js → chunk-FUAADKXE.js} +2 -2
- package/dist/lib/cubing/chunks/{chunk-XVZLWT3A.js → chunk-H5KMIDAF.js} +4 -4
- package/dist/lib/cubing/chunks/{chunk-XVZLWT3A.js.map → chunk-H5KMIDAF.js.map} +1 -1
- package/dist/lib/cubing/chunks/{chunk-S74APGTK.js → chunk-MQSQDKWH.js} +2 -2
- package/dist/lib/cubing/chunks/{chunk-JCCXEYXU.js → chunk-UEUJSZTX.js} +2 -2
- package/dist/lib/cubing/chunks/{chunk-53SI7XS4.js → chunk-WMKAKGVZ.js} +34 -15
- package/dist/lib/cubing/chunks/chunk-WMKAKGVZ.js.map +7 -0
- package/dist/lib/cubing/chunks/{chunk-LD4XJTCU.js → chunk-YR72E7KZ.js} +3 -3
- package/dist/lib/cubing/chunks/{inside-VUJSPBRA.js → inside-LSPIPZY2.js} +9 -9
- package/dist/lib/cubing/chunks/{search-dynamic-sgs-side-events-LHAMZP5J.js → search-dynamic-sgs-side-events-WORUZVF5.js} +3 -3
- package/dist/lib/cubing/chunks/{search-dynamic-sgs-unofficial-GXKMVR4W.js → search-dynamic-sgs-unofficial-5JQKPNG2.js} +3 -3
- package/dist/lib/cubing/chunks/{search-dynamic-solve-4x4x4-N2X3RMYU.js → search-dynamic-solve-4x4x4-KIH4YATU.js} +5 -5
- package/dist/lib/cubing/chunks/search-worker-entry.js +1 -1
- package/dist/lib/cubing/chunks/{twisty-dynamic-3d-LSRGWTXG.js → twisty-dynamic-3d-4BEQ76PB.js} +4 -4
- package/dist/lib/cubing/notation/index.js +2 -2
- package/dist/lib/cubing/{outside-CwNOEuJJ.d.ts → outside-C2ODxIX_.d.ts} +1 -0
- package/dist/lib/cubing/protocol/index.js +2 -2
- package/dist/lib/cubing/puzzles/index.js +2 -2
- package/dist/lib/cubing/scramble/index.d.ts +1 -1
- package/dist/lib/cubing/scramble/index.js +4 -4
- package/dist/lib/cubing/search/index.d.ts +1 -1
- package/dist/lib/cubing/search/index.js +4 -4
- package/dist/lib/cubing/twisty/index.js +5 -5
- package/dist/lib/cubing/twisty/index.js.map +2 -2
- package/experimental-json-schema/kpuzzle/KPatternData.schema.json +27 -29
- package/experimental-json-schema/kpuzzle/KPuzzleDefinition.schema.json +82 -78
- package/experimental-json-schema/kpuzzle/KTransformationData.schema.json +21 -22
- package/package.json +9 -4
- package/dist/lib/cubing/chunks/chunk-53SI7XS4.js.map +0 -7
- /package/dist/bin/chunks/{chunk-E6RYEKYL.js.map → chunk-22VWCGBC.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{chunk-VYAO5FCM.js.map → chunk-FUAADKXE.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{chunk-S74APGTK.js.map → chunk-MQSQDKWH.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{chunk-JCCXEYXU.js.map → chunk-UEUJSZTX.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{chunk-LD4XJTCU.js.map → chunk-YR72E7KZ.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{inside-VUJSPBRA.js.map → inside-LSPIPZY2.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-sgs-side-events-LHAMZP5J.js.map → search-dynamic-sgs-side-events-WORUZVF5.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-sgs-unofficial-GXKMVR4W.js.map → search-dynamic-sgs-unofficial-5JQKPNG2.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{search-dynamic-solve-4x4x4-N2X3RMYU.js.map → search-dynamic-solve-4x4x4-KIH4YATU.js.map} +0 -0
- /package/dist/lib/cubing/chunks/{twisty-dynamic-3d-LSRGWTXG.js.map → twisty-dynamic-3d-4BEQ76PB.js.map} +0 -0
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
normalize3x3x3Orientation,
|
|
4
4
|
puzzleOrientation3x3x3Cache,
|
|
5
5
|
puzzleOrientation3x3x3Idx
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-A7FK4XKU.js";
|
|
7
7
|
import {
|
|
8
8
|
KPattern
|
|
9
9
|
} from "./chunk-5ONX3JVC.js";
|
|
@@ -262,4 +262,4 @@ export {
|
|
|
262
262
|
bufferToSpacedHex,
|
|
263
263
|
spacedHexToBuffer
|
|
264
264
|
};
|
|
265
|
-
//# sourceMappingURL=chunk-
|
|
265
|
+
//# sourceMappingURL=chunk-MQSQDKWH.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
cube3x3x3KPuzzleDefinition
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-A7FK4XKU.js";
|
|
4
4
|
import {
|
|
5
5
|
TraversalUp,
|
|
6
6
|
functionFromTraversal
|
|
@@ -271,4 +271,4 @@ export {
|
|
|
271
271
|
countLeavesInExpansionForSimultaneousMoveIndexer,
|
|
272
272
|
countMetricMoves
|
|
273
273
|
};
|
|
274
|
-
//# sourceMappingURL=chunk-
|
|
274
|
+
//# sourceMappingURL=chunk-UEUJSZTX.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
PortableWorker,
|
|
3
3
|
wrap
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-H5KMIDAF.js";
|
|
5
5
|
import {
|
|
6
6
|
exposeAPI
|
|
7
7
|
} from "./chunk-7GUL3OBQ.js";
|
|
@@ -74,15 +74,7 @@ async function instantiateWorkerAPI() {
|
|
|
74
74
|
);
|
|
75
75
|
return workerAPIPromise;
|
|
76
76
|
}
|
|
77
|
-
|
|
78
|
-
if (globalThis.location?.protocol === "file:") {
|
|
79
|
-
console.warn(
|
|
80
|
-
"This current web page is loaded from the local filesystem (a URL that starts with `file://`). In this situation, `cubing.js` may be unable to generate scrambles or perform searches in some browsers. See: https://js.cubing.net/cubing/scramble/#file-server-required"
|
|
81
|
-
);
|
|
82
|
-
}
|
|
83
|
-
function failed(methodDescription) {
|
|
84
|
-
return `Module worker instantiation${methodDescription ? ` ${methodDescription}` : ""} failed`;
|
|
85
|
-
}
|
|
77
|
+
function fallbackOrder() {
|
|
86
78
|
const importMetaResolveStrategy = [
|
|
87
79
|
async () => instantiateModuleWorker(searchWorkerURLImportMetaResolve()),
|
|
88
80
|
"using `import.meta.resolve(\u2026)",
|
|
@@ -107,8 +99,28 @@ async function instantiateWorkerImplementation() {
|
|
|
107
99
|
"using `new URL(\u2026, import.meta.url)`",
|
|
108
100
|
"will"
|
|
109
101
|
];
|
|
110
|
-
|
|
111
|
-
|
|
102
|
+
if (!searchOutsideDebugGlobals.allowLegacyPatternsForWorkerInstantiation) {
|
|
103
|
+
return [importMetaResolveStrategy];
|
|
104
|
+
}
|
|
105
|
+
if (searchOutsideDebugGlobals.prioritizeEsbuildWorkaroundForWorkerInstantiation) {
|
|
106
|
+
return [
|
|
107
|
+
esbuildWorkaroundStrategy,
|
|
108
|
+
importMetaResolveStrategy,
|
|
109
|
+
newURLStrategy
|
|
110
|
+
];
|
|
111
|
+
}
|
|
112
|
+
return [importMetaResolveStrategy, esbuildWorkaroundStrategy, newURLStrategy];
|
|
113
|
+
}
|
|
114
|
+
async function instantiateWorkerImplementation() {
|
|
115
|
+
if (globalThis.location?.protocol === "file:") {
|
|
116
|
+
console.warn(
|
|
117
|
+
"This current web page is loaded from the local filesystem (a URL that starts with `file://`). In this situation, `cubing.js` may be unable to generate scrambles or perform searches in some browsers. See: https://js.cubing.net/cubing/scramble/#file-server-required"
|
|
118
|
+
);
|
|
119
|
+
}
|
|
120
|
+
function failed(methodDescription) {
|
|
121
|
+
return `Module worker instantiation${methodDescription ? ` ${methodDescription}` : ""} failed`;
|
|
122
|
+
}
|
|
123
|
+
for (const [fn, description, warnOnSuccess] of fallbackOrder()) {
|
|
112
124
|
try {
|
|
113
125
|
const worker = await fn();
|
|
114
126
|
if (warnOnSuccess) {
|
|
@@ -119,10 +131,15 @@ async function instantiateWorkerImplementation() {
|
|
|
119
131
|
}
|
|
120
132
|
}
|
|
121
133
|
return worker;
|
|
122
|
-
} catch {
|
|
134
|
+
} catch (e) {
|
|
135
|
+
if (searchOutsideDebugGlobals.showWorkerInstantiationWarnings) {
|
|
136
|
+
console.warn(`${failed(description)}, falling back.`, e);
|
|
137
|
+
}
|
|
123
138
|
}
|
|
124
139
|
}
|
|
125
|
-
throw new Error(
|
|
140
|
+
throw new Error(
|
|
141
|
+
`Module worker instantiation failed. There are no more fallbacks available.`
|
|
142
|
+
);
|
|
126
143
|
}
|
|
127
144
|
|
|
128
145
|
// src/cubing/search/outside.ts
|
|
@@ -203,6 +220,7 @@ var searchOutsideDebugGlobals = {
|
|
|
203
220
|
forceTwipsForScrambles: false,
|
|
204
221
|
showWorkerInstantiationWarnings: true,
|
|
205
222
|
prioritizeEsbuildWorkaroundForWorkerInstantiation: false,
|
|
223
|
+
allowLegacyPatternsForWorkerInstantiation: true,
|
|
206
224
|
allowDerivedScrambles: false
|
|
207
225
|
};
|
|
208
226
|
function setSearchDebug(options) {
|
|
@@ -227,6 +245,7 @@ function setSearchDebug(options) {
|
|
|
227
245
|
"forceNewWorkerForEveryScramble",
|
|
228
246
|
"showWorkerInstantiationWarnings",
|
|
229
247
|
"prioritizeEsbuildWorkaroundForWorkerInstantiation",
|
|
248
|
+
"allowLegacyPatternsForWorkerInstantiation",
|
|
230
249
|
"allowDerivedScrambles"
|
|
231
250
|
]) {
|
|
232
251
|
if (booleanField in options) {
|
|
@@ -246,4 +265,4 @@ export {
|
|
|
246
265
|
solveTwips,
|
|
247
266
|
setSearchDebug
|
|
248
267
|
};
|
|
249
|
-
//# sourceMappingURL=chunk-
|
|
268
|
+
//# sourceMappingURL=chunk-WMKAKGVZ.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/cubing/search/worker-workarounds/index.ts", "../../../../src/cubing/search/instantiator.ts", "../../../../src/cubing/search/outside.ts"],
|
|
4
|
+
"sourcesContent": ["import { exposeAPI } from \"./worker-guard\";\n\nexport function searchWorkerURLImportMetaResolve(): string {\n // Note:\n // - We have to hardcode the expected path of the entry file in the ESM build, due to lack of `esbuild` support: https://github.com/evanw/esbuild/issues/2866\n // - This URL is based on the assumption that the code from this file ends up in a shared chunk in the `esm` build. This is not guaranteed by `esbuild`, but it consistently happens for our codebase.\n // - We inline the value (instead of using a constant), to maximize compatibility for hardcoded syntax detection in bundlers.\n return import.meta.resolve(\"./search-worker-entry.js\");\n}\n\nexport function searchWorkerURLNewURLImportMetaURL(): URL {\n // Note:\n // - We have to hardcode the expected path of the entry file in the ESM build, due to lack of `esbuild` support: https://github.com/evanw/esbuild/issues/795\n // - This URL is based on the assumption that the code from this file ends up in a shared chunk in the `esm` build. This is not guaranteed by `esbuild`, but it consistently happens for our codebase.\n // - We inline the value (instead of using a constant), to maximize compatibility for hardcoded syntax detection in bundlers.\n return new URL(\"./search-worker-entry.js\", import.meta.url);\n}\n\n// Workaround for `esbuild`: https://github.com/evanw/esbuild/issues/312#issuecomment-1092195778\nexport async function searchWorkerURLEsbuildWorkaround(): Promise<string> {\n exposeAPI.expose = false;\n return (await import(\"./search-worker-entry.js\")).WORKER_ENTRY_FILE_URL;\n}\n\nexport function instantiateSearchWorkerURLNewURLImportMetaURL(): Worker {\n return new Worker(new URL(\"./search-worker-entry.js\", import.meta.url), {\n type: \"module\",\n });\n}\n", "import type { Worker as NodeWorker } from \"node:worker_threads\";\nimport { PortableWorker, wrap } from \"@cubing/comlink-everywhere\";\nimport type { WorkerAPI } from \"./inside/api\";\nimport { searchOutsideDebugGlobals } from \"./outside\";\nimport {\n searchWorkerURLEsbuildWorkaround,\n searchWorkerURLImportMetaResolve,\n searchWorkerURLNewURLImportMetaURL,\n} from \"./worker-workarounds\";\n\nfunction wrapAPI(worker: Worker | NodeWorker): WorkerAPI {\n return wrap<WorkerAPI>(worker);\n}\n\nasync function instantiateModuleWorker(\n workerEntryFileURL: string | URL,\n): Promise<WorkerAPI> {\n // biome-ignore lint/suspicious/noAsyncPromiseExecutor: TODO\n return new Promise<WorkerAPI>(async (resolve, reject) => {\n try {\n const worker = new PortableWorker(workerEntryFileURL);\n\n // TODO: Remove this once we can remove the workarounds for lack of `import.meta.resolve(\u2026)` support.\n const onFirstMessage = (messageData: string) => {\n if (messageData === \"comlink-exposed\") {\n // We need to clear the timeout so that we don't prevent `node` from exiting in the meantime.\n resolve(wrapAPI(worker));\n } else {\n reject(\n new Error(`wrong module instantiation message ${messageData}`),\n );\n }\n };\n\n const onError = (e: ErrorEvent) => {\n reject(e);\n };\n\n if (\"once\" in worker /* hack to detect `node` */) {\n // We have to use `once` so the `unref()` from `comlink-everywhere` allows the process to quit as expected.\n worker.once(\"message\", onFirstMessage);\n } else {\n worker.addEventListener(\"error\", onError, {\n once: true,\n });\n worker.addEventListener(\n \"message\",\n (e: MessageEvent) => onFirstMessage(e.data),\n {\n once: true,\n },\n );\n }\n } catch (e) {\n reject(e);\n }\n });\n}\n\nexport const allWorkerAPIPromises: Promise<WorkerAPI>[] = [];\n\nexport async function instantiateWorkerAPI(): Promise<WorkerAPI> {\n const workerAPIPromise = instantiateWorkerImplementation();\n allWorkerAPIPromises.push(workerAPIPromise);\n const insideAPI = await workerAPIPromise;\n insideAPI.setDebugMeasurePerf(searchOutsideDebugGlobals.logPerf);\n insideAPI.setDebugForceTwipsForScrambles(\n searchOutsideDebugGlobals.forceTwipsForScrambles,\n );\n insideAPI.setScramblePrefetchLevel(\n searchOutsideDebugGlobals.scramblePrefetchLevel,\n );\n return workerAPIPromise;\n}\n\ntype FallbackStrategyInfo = [\n fn: () => Promise<WorkerAPI>,\n description: string,\n warnOnSuccess: null | string,\n];\n\nfunction fallbackOrder(): FallbackStrategyInfo[] {\n const importMetaResolveStrategy: FallbackStrategyInfo = [\n async () => instantiateModuleWorker(searchWorkerURLImportMetaResolve()),\n \"using `import.meta.resolve(\u2026)\",\n null,\n ];\n const esbuildWorkaroundStrategy: FallbackStrategyInfo = [\n async () =>\n instantiateModuleWorker(await searchWorkerURLEsbuildWorkaround()),\n \"using the `esbuild` workaround\",\n // TODO: we will hopefully discontinue the `esbuild` workaround at some\n // point, but `esbuild` has been stuck for 3 years on this issue. Because\n // `esbuild` and Vite (which uses `esbuild`) are now dominating the\n // ecosystem, this just causes a warning for a lot of devs/users that they\n // can't do anything about. As frustrating as the situation is, the\n // workaround is semantically fine (even if it's convoluted) and is\n // preserved by `esbuild`-based flows in practice. So we suppress the\n // warning in the medium-term but maintain long-term hope that we can\n // remove it (and the other fallbacks as well).\n null,\n ];\n const newURLStrategy: FallbackStrategyInfo = [\n async () => instantiateModuleWorker(searchWorkerURLNewURLImportMetaURL()),\n \"using `new URL(\u2026, import.meta.url)`\",\n \"will\",\n ];\n\n if (!searchOutsideDebugGlobals.allowLegacyPatternsForWorkerInstantiation) {\n return [importMetaResolveStrategy];\n }\n if (\n searchOutsideDebugGlobals.prioritizeEsbuildWorkaroundForWorkerInstantiation\n ) {\n return [\n esbuildWorkaroundStrategy,\n importMetaResolveStrategy,\n newURLStrategy,\n ];\n }\n return [importMetaResolveStrategy, esbuildWorkaroundStrategy, newURLStrategy];\n}\n\nasync function instantiateWorkerImplementation(): Promise<WorkerAPI> {\n if (globalThis.location?.protocol === \"file:\") {\n console.warn(\n \"This current web page is loaded from the local filesystem (a URL that starts with `file://`). In this situation, `cubing.js` may be unable to generate scrambles or perform searches in some browsers. See: https://js.cubing.net/cubing/scramble/#file-server-required\",\n );\n }\n\n function failed(methodDescription?: string) {\n return `Module worker instantiation${\n methodDescription ? ` ${methodDescription}` : \"\"\n } failed`;\n }\n\n for (const [fn, description, warnOnSuccess] of fallbackOrder()) {\n try {\n const worker = await fn();\n if (warnOnSuccess) {\n if (searchOutsideDebugGlobals.showWorkerInstantiationWarnings) {\n console.warn(\n `Module worker instantiation required ${description}. \\`cubing.js\\` ${warnOnSuccess} not support this fallback in the future.`,\n );\n }\n }\n return worker;\n } catch (e) {\n if (searchOutsideDebugGlobals.showWorkerInstantiationWarnings) {\n console.warn(`${failed(description)}, falling back.`, e);\n }\n }\n }\n\n throw new Error(\n `Module worker instantiation failed. There are no more fallbacks available.`,\n );\n}\n", "import { Alg } from \"../alg\";\nimport type { KPuzzle } from \"../kpuzzle\";\n// import { preInitialize222 } from \"../implementations/2x2x2\";\nimport type { KPattern } from \"../kpuzzle/KPattern\";\nimport type { PrefetchLevel, WorkerAPI } from \"./inside/api\";\nimport type { TwipsOptions } from \"./inside/solve/twips\";\nimport { allWorkerAPIPromises, instantiateWorkerAPI } from \"./instantiator\";\n\nlet cachedWorkerInstance: Promise<WorkerAPI> | undefined;\nfunction getCachedWorkerInstance(): Promise<WorkerAPI> {\n return (cachedWorkerInstance ??= instantiateWorkerAPI());\n}\n\nexport async function mapToAllWorkers(\n f: (worker: WorkerAPI) => void,\n): Promise<void> {\n await Promise.all(\n allWorkerAPIPromises.map(async (worker) => {\n f(await worker);\n }),\n );\n}\n\n// Pre-initialize the scrambler for the given event. (Otherwise, an event is\n// initialized the first time you ask for a scramble for that event.)\n//\n// Some typical numbers for a fast computer:\n// - 3x3x3 initialization: 200ms\n// - Each 3x3x3 scramble: 50ms\n// - 4x4x4 initialization: 2500ms\n// - Each 4x4x4 scramble: 300ms to 800ms\n//\n// It is safe to immediately call for a scramble\n// any time after starting pre-initialization, or to call for them without\n// pre-initializing. Pre-initializing essentially gives the scramble worker a\n// head start in case a scramble doesn't get requested immediately.\n//\n// Note that events cannot be pre-initialized in parallel. Attempting to\n// pre-initialize multiple events will initialize them consecutively. Scrambles\n// for a given event cannot be computed while another event is being initialized.\nexport function _preInitializationHintForEvent(\n eventID: string,\n // callback?: () => void\n): void {\n switch (eventID) {\n case \"333oh\":\n _preInitializationHintForEvent(\"333\");\n return;\n }\n void (async () => {\n await (await getCachedWorkerInstance()).initialize(eventID);\n })();\n}\n\nexport async function randomScrambleForEvent(eventID: string): Promise<Alg> {\n const worker = searchOutsideDebugGlobals.forceNewWorkerForEveryScramble\n ? await instantiateWorkerAPI()\n : await getCachedWorkerInstance();\n const scrambleString = await worker.randomScrambleStringForEvent(eventID);\n\n return Alg.fromString(scrambleString);\n}\n\nexport async function deriveScrambleForEvent(\n derivationSeedHex: string,\n derivationSaltHierarchy: string[],\n eventID: string,\n): Promise<Alg> {\n if (!searchOutsideDebugGlobals.allowDerivedScrambles) {\n throw new Error(\"Derived scrambles are not allowed.\");\n }\n const worker = searchOutsideDebugGlobals.forceNewWorkerForEveryScramble\n ? await instantiateWorkerAPI()\n : await getCachedWorkerInstance();\n const scrambleString = await worker.deriveScrambleStringForEvent(\n derivationSeedHex,\n derivationSaltHierarchy,\n eventID,\n );\n return Alg.fromString(scrambleString);\n}\n\nexport async function experimentalSolve3x3x3IgnoringCenters(\n pattern: KPattern,\n): Promise<Alg> {\n const cwi = await getCachedWorkerInstance();\n return Alg.fromString(await cwi.solve333ToString(pattern.patternData));\n}\n\nexport async function experimentalSolve2x2x2(pattern: KPattern): Promise<Alg> {\n const cwi = await getCachedWorkerInstance();\n return Alg.fromString(await cwi.solve222ToString(pattern.patternData));\n}\n\nexport async function solveSkewb(pattern: KPattern): Promise<Alg> {\n const cwi = await getCachedWorkerInstance();\n return Alg.fromString(await cwi.solveSkewbToString(pattern.patternData));\n}\n\nexport async function solvePyraminx(pattern: KPattern): Promise<Alg> {\n const cwi = await getCachedWorkerInstance();\n return Alg.fromString(await cwi.solvePyraminxToString(pattern.patternData));\n}\n\nexport async function solveMegaminx(pattern: KPattern): Promise<Alg> {\n const cwi = await getCachedWorkerInstance();\n return Alg.fromString(await cwi.solveMegaminxToString(pattern.patternData));\n}\n\nexport interface SolveTwipsOptions {\n generatorMoves?: string[];\n targetPattern?: KPattern;\n minDepth?: number;\n maxDepth?: number;\n}\n\nexport async function solveTwips(\n kpuzzle: KPuzzle,\n pattern: KPattern,\n options?: SolveTwipsOptions,\n): Promise<Alg> {\n const { targetPattern, ...otherOptions } = options ?? {};\n const apiOptions: TwipsOptions = otherOptions;\n if (targetPattern) {\n apiOptions.targetPattern = targetPattern.patternData;\n }\n const { ...def } = kpuzzle.definition;\n delete def.experimentalIsPatternSolved;\n // delete def.derivedMoves;\n const dedicatedWorker = await instantiateWorkerAPI();\n try {\n return Alg.fromString(\n // TODO: unnecessary because we terminate the worker?\n await dedicatedWorker.solveTwipsToString(\n def,\n pattern.patternData,\n apiOptions,\n ),\n );\n } finally {\n console.log(\"Search ended, terminating dedicated `twips` worker.\");\n // TODO: support re-using the same worker for multiple searches..\n // dedicatedWorker.terminate?.(); // TODO\n }\n}\n\ninterface SearchOutsideDebugGlobals {\n logPerf: boolean;\n scramblePrefetchLevel: `${PrefetchLevel}`;\n forceNewWorkerForEveryScramble: boolean;\n showWorkerInstantiationWarnings: boolean;\n forceTwipsForScrambles: boolean;\n // Allow fallbacks from `import.meta.resolve(\u2026)`.\n allowLegacyPatternsForWorkerInstantiation: boolean;\n // This can prevent a request to `search-worker-entry.js` when it doesn't exist, if the library semantics have been mangled by `esbuild`.\n prioritizeEsbuildWorkaroundForWorkerInstantiation: boolean;\n allowDerivedScrambles: boolean;\n}\n\nexport const searchOutsideDebugGlobals: SearchOutsideDebugGlobals = {\n logPerf: true,\n scramblePrefetchLevel: \"auto\",\n forceNewWorkerForEveryScramble: false,\n forceTwipsForScrambles: false,\n showWorkerInstantiationWarnings: true,\n prioritizeEsbuildWorkaroundForWorkerInstantiation: false,\n allowLegacyPatternsForWorkerInstantiation: true,\n allowDerivedScrambles: false,\n};\n\nexport function setSearchDebug(\n options: Partial<SearchOutsideDebugGlobals>,\n): void {\n const { logPerf, forceTwipsForScrambles, scramblePrefetchLevel } = options;\n if (typeof logPerf !== \"undefined\") {\n searchOutsideDebugGlobals.logPerf = logPerf;\n void mapToAllWorkers((worker) => worker.setDebugMeasurePerf(logPerf));\n }\n if (typeof forceTwipsForScrambles !== \"undefined\") {\n searchOutsideDebugGlobals.forceTwipsForScrambles = forceTwipsForScrambles;\n void mapToAllWorkers((worker) =>\n worker.setDebugMeasurePerf(forceTwipsForScrambles),\n );\n }\n if (typeof scramblePrefetchLevel !== \"undefined\") {\n searchOutsideDebugGlobals.scramblePrefetchLevel = scramblePrefetchLevel;\n void mapToAllWorkers((worker) =>\n worker.setScramblePrefetchLevel(scramblePrefetchLevel as PrefetchLevel),\n );\n }\n for (const booleanField of [\n \"forceNewWorkerForEveryScramble\",\n \"showWorkerInstantiationWarnings\",\n \"prioritizeEsbuildWorkaroundForWorkerInstantiation\",\n \"allowLegacyPatternsForWorkerInstantiation\",\n \"allowDerivedScrambles\",\n ] as const) {\n if (booleanField in options) {\n searchOutsideDebugGlobals[booleanField] =\n options[booleanField] ?? searchOutsideDebugGlobals[booleanField];\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
LazyPromise
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-A7FK4XKU.js";
|
|
4
4
|
|
|
5
5
|
// src/cubing/twisty/debug.ts
|
|
6
6
|
var twistyDebugGlobals = {
|
|
@@ -531,7 +531,7 @@ var StatsPanel = class {
|
|
|
531
531
|
|
|
532
532
|
// src/cubing/twisty/heavy-code-imports/3d.ts
|
|
533
533
|
var bulk3DCode = new LazyPromise(
|
|
534
|
-
() => import("./twisty-dynamic-3d-
|
|
534
|
+
() => import("./twisty-dynamic-3d-4BEQ76PB.js")
|
|
535
535
|
);
|
|
536
536
|
|
|
537
537
|
// src/cubing/twisty/views/canvas.ts
|
|
@@ -1192,4 +1192,4 @@ export {
|
|
|
1192
1192
|
Twisty3DVantage,
|
|
1193
1193
|
bulk3DCode
|
|
1194
1194
|
};
|
|
1195
|
-
//# sourceMappingURL=chunk-
|
|
1195
|
+
//# sourceMappingURL=chunk-YR72E7KZ.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
countMoves
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-UEUJSZTX.js";
|
|
4
4
|
import {
|
|
5
5
|
addOrientationSuffix,
|
|
6
6
|
expose,
|
|
@@ -10,15 +10,15 @@ import {
|
|
|
10
10
|
random333Scramble,
|
|
11
11
|
setIsInsideWorker,
|
|
12
12
|
solve333
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-H5KMIDAF.js";
|
|
14
14
|
import {
|
|
15
15
|
cube2x2x2,
|
|
16
16
|
puzzles,
|
|
17
17
|
wcaEvents
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-FUAADKXE.js";
|
|
19
19
|
import {
|
|
20
20
|
LazyPromise
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-A7FK4XKU.js";
|
|
22
22
|
import {
|
|
23
23
|
KPattern,
|
|
24
24
|
KPuzzle
|
|
@@ -186,7 +186,7 @@ async function wasmDeriveScrambleForEvent(derivationSeedHex, derivationSaltHiera
|
|
|
186
186
|
|
|
187
187
|
// src/cubing/search/inside/solve/puzzles/dynamic/sgs-side-events/index.ts
|
|
188
188
|
var searchDynamicSideEvents = new LazyPromise(
|
|
189
|
-
() => import("./search-dynamic-sgs-side-events-
|
|
189
|
+
() => import("./search-dynamic-sgs-side-events-WORUZVF5.js")
|
|
190
190
|
);
|
|
191
191
|
|
|
192
192
|
// src/cubing/search/inside/solve/puzzles/2x2x2.ts
|
|
@@ -213,7 +213,7 @@ async function solve222(pattern) {
|
|
|
213
213
|
|
|
214
214
|
// src/cubing/search/inside/solve/puzzles/dynamic/4x4x4/index.ts
|
|
215
215
|
var dynamic4x4x4Solver = new LazyPromise(
|
|
216
|
-
() => import("./search-dynamic-solve-4x4x4-
|
|
216
|
+
() => import("./search-dynamic-solve-4x4x4-KIH4YATU.js")
|
|
217
217
|
);
|
|
218
218
|
|
|
219
219
|
// src/cubing/search/inside/solve/puzzles/4x4x4.ts
|
|
@@ -239,7 +239,7 @@ var dynamicFTO = new LazyPromise(
|
|
|
239
239
|
|
|
240
240
|
// src/cubing/search/inside/solve/puzzles/fto.ts
|
|
241
241
|
var dynamic = new LazyPromise(
|
|
242
|
-
() => import("./search-dynamic-sgs-unofficial-
|
|
242
|
+
() => import("./search-dynamic-sgs-unofficial-5JQKPNG2.js")
|
|
243
243
|
);
|
|
244
244
|
async function randomFTOScramble() {
|
|
245
245
|
mustBeInsideWorker();
|
|
@@ -323,7 +323,7 @@ async function solvePyraminx(pattern) {
|
|
|
323
323
|
|
|
324
324
|
// src/cubing/search/inside/solve/puzzles/dynamic/sgs-unofficial/index.ts
|
|
325
325
|
var searchDynamicUnofficial = new LazyPromise(
|
|
326
|
-
() => import("./search-dynamic-sgs-unofficial-
|
|
326
|
+
() => import("./search-dynamic-sgs-unofficial-5JQKPNG2.js")
|
|
327
327
|
);
|
|
328
328
|
|
|
329
329
|
// src/cubing/search/inside/solve/puzzles/redi_cube.ts
|
|
@@ -589,4 +589,4 @@ var insideAPI = {
|
|
|
589
589
|
|
|
590
590
|
// src/cubing/search/inside/index.ts
|
|
591
591
|
expose(insideAPI);
|
|
592
|
-
//# sourceMappingURL=inside-
|
|
592
|
+
//# sourceMappingURL=inside-LSPIPZY2.js.map
|
|
@@ -4,8 +4,8 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
cube2x2x2,
|
|
6
6
|
puzzles
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-FUAADKXE.js";
|
|
8
|
+
import "./chunk-A7FK4XKU.js";
|
|
9
9
|
import {
|
|
10
10
|
KPuzzle
|
|
11
11
|
} from "./chunk-5ONX3JVC.js";
|
|
@@ -1888,4 +1888,4 @@ export {
|
|
|
1888
1888
|
sgsDataSkewbFixedCorner,
|
|
1889
1889
|
skewbKPuzzleWithoutMOCached
|
|
1890
1890
|
};
|
|
1891
|
-
//# sourceMappingURL=search-dynamic-sgs-side-events-
|
|
1891
|
+
//# sourceMappingURL=search-dynamic-sgs-side-events-WORUZVF5.js.map
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
} from "./chunk-7LXHWXCO.js";
|
|
4
4
|
import {
|
|
5
5
|
puzzles
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-FUAADKXE.js";
|
|
7
|
+
import "./chunk-A7FK4XKU.js";
|
|
8
8
|
import "./chunk-5ONX3JVC.js";
|
|
9
9
|
import {
|
|
10
10
|
Alg
|
|
@@ -1265,4 +1265,4 @@ export {
|
|
|
1265
1265
|
getRandomRediCubeScramble,
|
|
1266
1266
|
sgsDataFTO
|
|
1267
1267
|
};
|
|
1268
|
-
//# sourceMappingURL=search-dynamic-sgs-unofficial-
|
|
1268
|
+
//# sourceMappingURL=search-dynamic-sgs-unofficial-5JQKPNG2.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import "./chunk-NAPITA3L.js";
|
|
2
|
-
import "./chunk-
|
|
2
|
+
import "./chunk-WMKAKGVZ.js";
|
|
3
3
|
import {
|
|
4
4
|
random333Scramble
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-H5KMIDAF.js";
|
|
6
6
|
import "./chunk-7GUL3OBQ.js";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-FUAADKXE.js";
|
|
8
|
+
import "./chunk-A7FK4XKU.js";
|
|
9
9
|
import "./chunk-5ONX3JVC.js";
|
|
10
10
|
import {
|
|
11
11
|
Alg
|
|
@@ -2920,4 +2920,4 @@ export {
|
|
|
2920
2920
|
initialize,
|
|
2921
2921
|
random444Scramble
|
|
2922
2922
|
};
|
|
2923
|
-
//# sourceMappingURL=search-dynamic-solve-4x4x4-
|
|
2923
|
+
//# sourceMappingURL=search-dynamic-solve-4x4x4-KIH4YATU.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
|
|
5
5
|
// src/cubing/search/worker-workarounds/search-worker-entry.js
|
|
6
6
|
if (exposeAPI.expose) {
|
|
7
|
-
void import("./inside-
|
|
7
|
+
void import("./inside-LSPIPZY2.js").then(() => {
|
|
8
8
|
if (globalThis.postMessage) {
|
|
9
9
|
globalThis.postMessage("comlink-exposed");
|
|
10
10
|
} else {
|
package/dist/lib/cubing/chunks/{twisty-dynamic-3d-LSRGWTXG.js → twisty-dynamic-3d-4BEQ76PB.js}
RENAMED
|
@@ -3,12 +3,12 @@ import {
|
|
|
3
3
|
bulk3DCode,
|
|
4
4
|
haveStartedSharingRenderers,
|
|
5
5
|
hintFaceletStyles
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-YR72E7KZ.js";
|
|
7
|
+
import "./chunk-FUAADKXE.js";
|
|
8
8
|
import {
|
|
9
9
|
cube3x3x3,
|
|
10
10
|
getFaceletStickeringMask
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-A7FK4XKU.js";
|
|
12
12
|
import "./chunk-5ONX3JVC.js";
|
|
13
13
|
import {
|
|
14
14
|
Move
|
|
@@ -1939,4 +1939,4 @@ export {
|
|
|
1939
1939
|
cube3DShim,
|
|
1940
1940
|
pg3dShim
|
|
1941
1941
|
};
|
|
1942
|
-
//# sourceMappingURL=twisty-dynamic-3d-
|
|
1942
|
+
//# sourceMappingURL=twisty-dynamic-3d-4BEQ76PB.js.map
|
|
@@ -5,8 +5,8 @@ import {
|
|
|
5
5
|
countMetricMoves,
|
|
6
6
|
countMoves,
|
|
7
7
|
countMovesETM
|
|
8
|
-
} from "../chunks/chunk-
|
|
9
|
-
import "../chunks/chunk-
|
|
8
|
+
} from "../chunks/chunk-UEUJSZTX.js";
|
|
9
|
+
import "../chunks/chunk-A7FK4XKU.js";
|
|
10
10
|
import "../chunks/chunk-5ONX3JVC.js";
|
|
11
11
|
import "../chunks/chunk-N5FJ5YIA.js";
|
|
12
12
|
export {
|
|
@@ -30,6 +30,7 @@ interface SearchOutsideDebugGlobals {
|
|
|
30
30
|
forceNewWorkerForEveryScramble: boolean;
|
|
31
31
|
showWorkerInstantiationWarnings: boolean;
|
|
32
32
|
forceTwipsForScrambles: boolean;
|
|
33
|
+
allowLegacyPatternsForWorkerInstantiation: boolean;
|
|
33
34
|
prioritizeEsbuildWorkaroundForWorkerInstantiation: boolean;
|
|
34
35
|
allowDerivedScrambles: boolean;
|
|
35
36
|
}
|
|
@@ -5,8 +5,8 @@ import {
|
|
|
5
5
|
spacedHexToBuffer,
|
|
6
6
|
twizzleBinaryToBinaryComponents,
|
|
7
7
|
twizzleBinaryToReid3x3x3
|
|
8
|
-
} from "../chunks/chunk-
|
|
9
|
-
import "../chunks/chunk-
|
|
8
|
+
} from "../chunks/chunk-MQSQDKWH.js";
|
|
9
|
+
import "../chunks/chunk-A7FK4XKU.js";
|
|
10
10
|
import "../chunks/chunk-5ONX3JVC.js";
|
|
11
11
|
import "../chunks/chunk-N5FJ5YIA.js";
|
|
12
12
|
export {
|
|
@@ -5,10 +5,10 @@ import {
|
|
|
5
5
|
twizzleEvents,
|
|
6
6
|
wcaEventInfo,
|
|
7
7
|
wcaEvents
|
|
8
|
-
} from "../chunks/chunk-
|
|
8
|
+
} from "../chunks/chunk-FUAADKXE.js";
|
|
9
9
|
import {
|
|
10
10
|
cube3x3x3
|
|
11
|
-
} from "../chunks/chunk-
|
|
11
|
+
} from "../chunks/chunk-A7FK4XKU.js";
|
|
12
12
|
import "../chunks/chunk-5ONX3JVC.js";
|
|
13
13
|
import "../chunks/chunk-N5FJ5YIA.js";
|
|
14
14
|
export {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as randomScrambleForEvent, t as deriveScrambleForEvent } from "../outside-
|
|
1
|
+
import { i as randomScrambleForEvent, t as deriveScrambleForEvent } from "../outside-C2ODxIX_.js";
|
|
2
2
|
export { deriveScrambleForEvent as experimentalDeriveScrambleForEvent, randomScrambleForEvent };
|
|
@@ -2,11 +2,11 @@ import "../chunks/chunk-NAPITA3L.js";
|
|
|
2
2
|
import {
|
|
3
3
|
deriveScrambleForEvent,
|
|
4
4
|
randomScrambleForEvent
|
|
5
|
-
} from "../chunks/chunk-
|
|
6
|
-
import "../chunks/chunk-
|
|
5
|
+
} from "../chunks/chunk-WMKAKGVZ.js";
|
|
6
|
+
import "../chunks/chunk-H5KMIDAF.js";
|
|
7
7
|
import "../chunks/chunk-7GUL3OBQ.js";
|
|
8
|
-
import "../chunks/chunk-
|
|
9
|
-
import "../chunks/chunk-
|
|
8
|
+
import "../chunks/chunk-FUAADKXE.js";
|
|
9
|
+
import "../chunks/chunk-A7FK4XKU.js";
|
|
10
10
|
import "../chunks/chunk-5ONX3JVC.js";
|
|
11
11
|
import "../chunks/chunk-N5FJ5YIA.js";
|
|
12
12
|
export {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as setSearchDebug, c as solveSkewb, l as solveTwips, n as experimentalSolve2x2x2, o as solveMegaminx, r as experimentalSolve3x3x3IgnoringCenters, s as solvePyraminx, u as random333Pattern } from "../outside-
|
|
1
|
+
import { a as setSearchDebug, c as solveSkewb, l as solveTwips, n as experimentalSolve2x2x2, o as solveMegaminx, r as experimentalSolve3x3x3IgnoringCenters, s as solvePyraminx, u as random333Pattern } from "../outside-C2ODxIX_.js";
|
|
2
2
|
|
|
3
3
|
//#region src/cubing/search/index.d.ts
|
|
4
4
|
/** @deprecated */
|
|
@@ -6,13 +6,13 @@ import {
|
|
|
6
6
|
solvePyraminx,
|
|
7
7
|
solveSkewb,
|
|
8
8
|
solveTwips
|
|
9
|
-
} from "../chunks/chunk-
|
|
9
|
+
} from "../chunks/chunk-WMKAKGVZ.js";
|
|
10
10
|
import {
|
|
11
11
|
random333Pattern
|
|
12
|
-
} from "../chunks/chunk-
|
|
12
|
+
} from "../chunks/chunk-H5KMIDAF.js";
|
|
13
13
|
import "../chunks/chunk-7GUL3OBQ.js";
|
|
14
|
-
import "../chunks/chunk-
|
|
15
|
-
import "../chunks/chunk-
|
|
14
|
+
import "../chunks/chunk-FUAADKXE.js";
|
|
15
|
+
import "../chunks/chunk-A7FK4XKU.js";
|
|
16
16
|
import "../chunks/chunk-5ONX3JVC.js";
|
|
17
17
|
import "../chunks/chunk-N5FJ5YIA.js";
|
|
18
18
|
|
|
@@ -18,21 +18,21 @@ import {
|
|
|
18
18
|
rawRenderPooled,
|
|
19
19
|
setCameraFromOrbitCoordinates,
|
|
20
20
|
setTwistyDebug
|
|
21
|
-
} from "../chunks/chunk-
|
|
21
|
+
} from "../chunks/chunk-YR72E7KZ.js";
|
|
22
22
|
import {
|
|
23
23
|
countAnimatedLeaves,
|
|
24
24
|
countLeavesInExpansionForSimultaneousMoveIndexer,
|
|
25
25
|
countMetricMoves
|
|
26
|
-
} from "../chunks/chunk-
|
|
26
|
+
} from "../chunks/chunk-UEUJSZTX.js";
|
|
27
27
|
import {
|
|
28
28
|
puzzles
|
|
29
|
-
} from "../chunks/chunk-
|
|
29
|
+
} from "../chunks/chunk-FUAADKXE.js";
|
|
30
30
|
import {
|
|
31
31
|
cube3x3x3,
|
|
32
32
|
customPGPuzzleLoader,
|
|
33
33
|
getPartialAppendOptionsForPuzzleSpecificSimplifyOptions,
|
|
34
34
|
getPieceStickeringMask
|
|
35
|
-
} from "../chunks/chunk-
|
|
35
|
+
} from "../chunks/chunk-A7FK4XKU.js";
|
|
36
36
|
import "../chunks/chunk-5ONX3JVC.js";
|
|
37
37
|
import {
|
|
38
38
|
Alg,
|
|
@@ -1799,7 +1799,7 @@ var Twisty3DSceneWrapper = class extends ManagedCustomElement {
|
|
|
1799
1799
|
raycaster.setFromCamera(mouse, camera);
|
|
1800
1800
|
return raycaster;
|
|
1801
1801
|
})();
|
|
1802
|
-
twisty3DPuzzleWrapper.raycastMove(raycasterPromise, {
|
|
1802
|
+
await twisty3DPuzzleWrapper.raycastMove(raycasterPromise, {
|
|
1803
1803
|
invert: !e.detail.pressInfo.rightClick,
|
|
1804
1804
|
depth: e.detail.pressInfo.keys.ctrlOrMetaKey ? "rotation" : e.detail.pressInfo.keys.shiftKey ? "secondSlice" : "none"
|
|
1805
1805
|
});
|