cubing 0.26.0 → 0.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/dist/{types → esm}/.DS_Store +0 -0
  2. package/dist/esm/{2x2x2.kpuzzle.json-BHTFIME6.js → 2x2x2.kpuzzle.json-RJHNQ246.js} +1 -1
  3. package/dist/esm/{2x2x2.kpuzzle.json-BHTFIME6.js.map → 2x2x2.kpuzzle.json-RJHNQ246.js.map} +1 -1
  4. package/dist/esm/{2x2x2.sgs.json-2TQNXTEF.js → 2x2x2.sgs.json-OIAKZDZZ.js} +5 -5
  5. package/dist/esm/{2x2x2.sgs.json-2TQNXTEF.js.map → 2x2x2.sgs.json-OIAKZDZZ.js.map} +1 -1
  6. package/dist/esm/{3d-dynamic-DBLQHCS5.js → 3d-dynamic-OTQHIOVR.js} +5 -5
  7. package/dist/esm/{3d-dynamic-DBLQHCS5.js.map → 3d-dynamic-OTQHIOVR.js.map} +1 -1
  8. package/dist/esm/{3x3x3-min2phase-UBW46KDU.js → 3x3x3-min2phase-GFNNX26U.js} +1 -1
  9. package/dist/esm/{3x3x3-min2phase-UBW46KDU.js.map → 3x3x3-min2phase-GFNNX26U.js.map} +1 -1
  10. package/dist/esm/{444-solver-YC3E4W2L.js → 444-solver-2ECPETB3.js} +6 -6
  11. package/dist/esm/{444-solver-YC3E4W2L.js.map → 444-solver-2ECPETB3.js.map} +1 -1
  12. package/dist/esm/alg/index.js +1 -1
  13. package/dist/esm/bluetooth/index.js +3 -3
  14. package/dist/esm/bluetooth/index.js.map +1 -1
  15. package/dist/esm/{chunk-FB7SFELN.js → chunk-3CEMUTUD.js} +2 -2
  16. package/dist/esm/{chunk-FB7SFELN.js.map → chunk-3CEMUTUD.js.map} +1 -1
  17. package/dist/esm/{chunk-NSLR2SC4.js → chunk-5Q4SJSNY.js} +2 -2
  18. package/dist/esm/{chunk-NSLR2SC4.js.map → chunk-5Q4SJSNY.js.map} +1 -1
  19. package/dist/esm/{chunk-ZPAGJE7S.js → chunk-AD6PFNOU.js} +2 -2
  20. package/dist/esm/{chunk-ZPAGJE7S.js.map → chunk-AD6PFNOU.js.map} +1 -1
  21. package/dist/esm/{chunk-GBMX6FHY.js → chunk-ALBEW4DJ.js} +1 -1
  22. package/dist/esm/{chunk-GBMX6FHY.js.map → chunk-ALBEW4DJ.js.map} +1 -1
  23. package/dist/esm/{chunk-IEI2CWII.js → chunk-CRU5TVHA.js} +4 -4
  24. package/dist/esm/{chunk-IEI2CWII.js.map → chunk-CRU5TVHA.js.map} +1 -1
  25. package/dist/esm/{chunk-OQ56YI7H.js → chunk-CYG3DDTX.js} +2 -2
  26. package/dist/esm/{chunk-OQ56YI7H.js.map → chunk-CYG3DDTX.js.map} +1 -1
  27. package/dist/esm/{chunk-HD2CMNE4.js → chunk-HUCMGBEC.js} +2 -2
  28. package/dist/esm/{chunk-HD2CMNE4.js.map → chunk-HUCMGBEC.js.map} +1 -1
  29. package/dist/esm/{chunk-OUSRVS3Y.js → chunk-J7OB2GEM.js} +6 -6
  30. package/dist/esm/{chunk-OUSRVS3Y.js.map → chunk-J7OB2GEM.js.map} +1 -1
  31. package/dist/esm/{chunk-OOTCOZEV.js → chunk-JIBAUV55.js} +7 -7
  32. package/dist/esm/{chunk-OOTCOZEV.js.map → chunk-JIBAUV55.js.map} +1 -1
  33. package/dist/esm/{chunk-KCKHYE6N.js → chunk-MC2D6L32.js} +3 -3
  34. package/dist/esm/{chunk-KCKHYE6N.js.map → chunk-MC2D6L32.js.map} +1 -1
  35. package/dist/esm/{chunk-BH3AI6DL.js → chunk-PDVAUAMY.js} +2 -2
  36. package/dist/esm/{chunk-BH3AI6DL.js.map → chunk-PDVAUAMY.js.map} +1 -1
  37. package/dist/esm/{chunk-3MBTISUG.js → chunk-PMKVGKT4.js} +4 -4
  38. package/dist/esm/{chunk-3MBTISUG.js.map → chunk-PMKVGKT4.js.map} +1 -1
  39. package/dist/esm/{chunk-DO7GZAW4.js → chunk-QZOJPCN5.js} +1 -1
  40. package/dist/esm/{chunk-DO7GZAW4.js.map → chunk-QZOJPCN5.js.map} +1 -1
  41. package/dist/esm/{chunk-BEXHMXCT.js → chunk-RHC3DIN3.js} +1 -1
  42. package/dist/esm/{chunk-BEXHMXCT.js.map → chunk-RHC3DIN3.js.map} +1 -1
  43. package/dist/esm/{chunk-NYAPGKCW.js → chunk-V55YSWJY.js} +1 -1
  44. package/dist/esm/{chunk-NYAPGKCW.js.map → chunk-V55YSWJY.js.map} +1 -1
  45. package/dist/esm/{chunk-3YHGF72G.js → chunk-XQKTAWAA.js} +6 -6
  46. package/dist/esm/{chunk-3YHGF72G.js.map → chunk-XQKTAWAA.js.map} +1 -1
  47. package/dist/esm/{clock.kpuzzle.json-PYHONPBY.js → clock.kpuzzle.json-3Q7KDODZ.js} +1 -1
  48. package/dist/esm/clock.kpuzzle.json-3Q7KDODZ.js.map +7 -0
  49. package/dist/esm/{fto-solver-QFOR6LKK.js → fto-solver-5EQEC77M.js} +2 -2
  50. package/dist/esm/{fto-solver-QFOR6LKK.js.map → fto-solver-5EQEC77M.js.map} +1 -1
  51. package/dist/esm/{fto.dynamic-3LJUL35Q.js → fto.dynamic-ISSUUAOX.js} +6 -6
  52. package/dist/esm/{fto.dynamic-3LJUL35Q.js.map → fto.dynamic-ISSUUAOX.js.map} +1 -1
  53. package/dist/esm/{kilosolver-QN5CWSPC.js → kilosolver-RP3POREU.js} +3 -3
  54. package/dist/esm/{kilosolver-QN5CWSPC.js.map → kilosolver-RP3POREU.js.map} +1 -1
  55. package/dist/esm/kpuzzle/index.js +2 -2
  56. package/dist/esm/{master_tetraminx-solver-4JXXIBVR.js → master_tetraminx-solver-RFBUNQMC.js} +2 -2
  57. package/dist/esm/{master_tetraminx-solver-4JXXIBVR.js.map → master_tetraminx-solver-RFBUNQMC.js.map} +1 -1
  58. package/dist/esm/{megaminx.sgs.json-746K2ZJG.js → megaminx.sgs.json-NUXKWG2L.js} +6 -6
  59. package/dist/esm/{megaminx.sgs.json-746K2ZJG.js.map → megaminx.sgs.json-NUXKWG2L.js.map} +0 -0
  60. package/dist/esm/notation/index.js +2 -2
  61. package/dist/esm/protocol/index.js +2 -2
  62. package/dist/esm/puzzle-geometry/index.js +2 -2
  63. package/dist/esm/puzzles/index.js +3 -3
  64. package/dist/esm/pyraminx.sgs.json-2BVIFZAF.js +14 -0
  65. package/dist/esm/{pyraminx.sgs.json-G2OWNIDF.js.map → pyraminx.sgs.json-2BVIFZAF.js.map} +0 -0
  66. package/dist/esm/{redi_cube-6LJBQEBD.js → redi_cube-5B6YHJGL.js} +3 -3
  67. package/dist/esm/{redi_cube-6LJBQEBD.js.map → redi_cube-5B6YHJGL.js.map} +1 -1
  68. package/dist/esm/{redi_cube.kpuzzle.json-43CP47Z6.js → redi_cube.kpuzzle.json-VGO74GBL.js} +1 -1
  69. package/dist/esm/{redi_cube.kpuzzle.json-43CP47Z6.js.map → redi_cube.kpuzzle.json-VGO74GBL.js.map} +1 -1
  70. package/dist/esm/scramble/index.js +8 -8
  71. package/dist/esm/search/index.js +8 -8
  72. package/dist/esm/{search-worker-js-entry-RSHPVUYJ.js → search-worker-js-entry-CZHIWNVF.js} +24 -24
  73. package/dist/esm/{search-worker-js-entry-RSHPVUYJ.js.map → search-worker-js-entry-CZHIWNVF.js.map} +1 -1
  74. package/dist/esm/{search-worker-ts-entry-O7OQ4BT5.js → search-worker-ts-entry-4WJDKASM.js} +5 -5
  75. package/dist/esm/{search-worker-ts-entry-O7OQ4BT5.js.map → search-worker-ts-entry-4WJDKASM.js.map} +1 -1
  76. package/dist/esm/skewb.sgs.json-IMR7QJQC.js +16 -0
  77. package/dist/esm/{skewb.sgs.json-DUKJ2AF5.js.map → skewb.sgs.json-IMR7QJQC.js.map} +0 -0
  78. package/dist/esm/{sq1-hyperorbit.kpuzzle.json-AMXAFQCM.js → sq1-hyperorbit.kpuzzle.json-NHAYS6MD.js} +1 -1
  79. package/dist/esm/sq1-hyperorbit.kpuzzle.json-NHAYS6MD.js.map +7 -0
  80. package/dist/esm/{sq1-solver-E4EE73CO.js → sq1-solver-G73T6FTJ.js} +2 -2
  81. package/dist/esm/{sq1-solver-E4EE73CO.js.map → sq1-solver-G73T6FTJ.js.map} +1 -1
  82. package/dist/esm/stream/index.js +1 -1
  83. package/dist/esm/stream/index.js.map +1 -1
  84. package/dist/esm/twisty/index.js +16 -9
  85. package/dist/esm/twisty/index.js.map +2 -2
  86. package/dist/esm/{worker-inside-generated-string-J4XQMLW2.js → worker-inside-generated-string-4FDHMKDI.js} +2 -2
  87. package/dist/esm/{worker-inside-generated-string-J4XQMLW2.js.map → worker-inside-generated-string-4FDHMKDI.js.map} +1 -1
  88. package/dist/types/twisty/index.d.ts +2 -0
  89. package/package.json +1 -1
  90. package/dist/esm/clock.kpuzzle.json-PYHONPBY.js.map +0 -7
  91. package/dist/esm/pyraminx.sgs.json-G2OWNIDF.js +0 -14
  92. package/dist/esm/skewb.sgs.json-DUKJ2AF5.js +0 -16
  93. package/dist/esm/sq1-hyperorbit.kpuzzle.json-AMXAFQCM.js.map +0 -7
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/cubing/vendor/sq12phase/sq1-solver.js"],
4
4
  "sourcesContent": ["/*\n\nscramble_sq1.js\n\nSquare-1 Solver / Scramble Generator in JavaScript.\n\nCode by by Shuang Chen.\nCompiled to JavaScript using GWT.\n\n*/\n\nimport { randomUIntBelowFactory } from \"../random-uint-below\";\n\nfunction FullCube_copy(obj, c) {\n obj.ul = c.ul;\n obj.ur = c.ur;\n obj.dl = c.dl;\n obj.dr = c.dr;\n obj.ml = c.ml;\n}\n\nfunction FullCube_doMove(obj, move) {\n var temp;\n move <<= 2;\n if (move > 24) {\n move = 48 - move;\n temp = obj.ul;\n obj.ul = ((~~obj.ul >> move) | (obj.ur << (24 - move))) & 16777215;\n obj.ur = ((~~obj.ur >> move) | (temp << (24 - move))) & 16777215;\n } else if (move > 0) {\n temp = obj.ul;\n obj.ul = ((obj.ul << move) | (~~obj.ur >> (24 - move))) & 16777215;\n obj.ur = ((obj.ur << move) | (~~temp >> (24 - move))) & 16777215;\n } else if (move == 0) {\n temp = obj.ur;\n obj.ur = obj.dl;\n obj.dl = temp;\n obj.ml = 1 - obj.ml;\n } else if (move >= -24) {\n move = -move;\n temp = obj.dl;\n obj.dl = ((obj.dl << move) | (~~obj.dr >> (24 - move))) & 16777215;\n obj.dr = ((obj.dr << move) | (~~temp >> (24 - move))) & 16777215;\n } else if (move < -24) {\n move = 48 + move;\n temp = obj.dl;\n obj.dl = ((~~obj.dl >> move) | (obj.dr << (24 - move))) & 16777215;\n obj.dr = ((~~obj.dr >> move) | (temp << (24 - move))) & 16777215;\n }\n}\n\nfunction FullCube_getParity(obj) {\n var a, b, cnt, i, p;\n cnt = 0;\n obj.arr[0] = FullCube_pieceAt(obj, 0);\n for (i = 1; i < 24; ++i) {\n FullCube_pieceAt(obj, i) != obj.arr[cnt] &&\n (obj.arr[++cnt] = FullCube_pieceAt(obj, i));\n }\n p = 0;\n for (a = 0; a < 16; ++a) {\n for (b = a + 1; b < 16; ++b) {\n obj.arr[a] > obj.arr[b] && (p ^= 1);\n }\n }\n return p;\n}\n\nfunction FullCube_getShapeIdx(obj) {\n var dlx, drx, ulx, urx;\n urx = obj.ur & 1118481;\n urx |= ~~urx >> 3;\n urx |= ~~urx >> 6;\n urx = (urx & 15) | ((~~urx >> 12) & 48);\n ulx = obj.ul & 1118481;\n ulx |= ~~ulx >> 3;\n ulx |= ~~ulx >> 6;\n ulx = (ulx & 15) | ((~~ulx >> 12) & 48);\n drx = obj.dr & 1118481;\n drx |= ~~drx >> 3;\n drx |= ~~drx >> 6;\n drx = (drx & 15) | ((~~drx >> 12) & 48);\n dlx = obj.dl & 1118481;\n dlx |= ~~dlx >> 3;\n dlx |= ~~dlx >> 6;\n dlx = (dlx & 15) | ((~~dlx >> 12) & 48);\n return Shape_getShape2Idx(\n (FullCube_getParity(obj) << 24) |\n (ulx << 18) |\n (urx << 12) |\n (dlx << 6) |\n drx,\n );\n}\n\nfunction FullCube_getSquare(obj, sq) {\n var a, b;\n for (a = 0; a < 8; ++a) {\n obj.prm[a] = ~~((~~FullCube_pieceAt(obj, a * 3 + 1) >> 1) << 24) >> 24;\n }\n sq.cornperm = get8Perm(obj.prm);\n sq.topEdgeFirst = FullCube_pieceAt(obj, 0) == FullCube_pieceAt(obj, 1);\n a = sq.topEdgeFirst ? 2 : 0;\n for (b = 0; b < 4; a += 3, ++b)\n obj.prm[b] = ~~((~~FullCube_pieceAt(obj, a) >> 1) << 24) >> 24;\n sq.botEdgeFirst = FullCube_pieceAt(obj, 12) == FullCube_pieceAt(obj, 13);\n a = sq.botEdgeFirst ? 14 : 12;\n for (; b < 8; a += 3, ++b)\n obj.prm[b] = ~~((~~FullCube_pieceAt(obj, a) >> 1) << 24) >> 24;\n sq.edgeperm = get8Perm(obj.prm);\n sq.ml = obj.ml;\n}\n\nfunction FullCube_pieceAt(obj, idx) {\n var ret;\n idx < 6\n ? (ret = ~~obj.ul >> ((5 - idx) << 2))\n : idx < 12\n ? (ret = ~~obj.ur >> ((11 - idx) << 2))\n : idx < 18\n ? (ret = ~~obj.dl >> ((17 - idx) << 2))\n : (ret = ~~obj.dr >> ((23 - idx) << 2));\n return ~~((ret & 15) << 24) >> 24;\n}\n\nfunction FullCube_setPiece(obj, idx, value) {\n if (idx < 6) {\n obj.ul &= ~(0xf << ((5 - idx) << 2));\n obj.ul |= value << ((5 - idx) << 2);\n } else if (idx < 12) {\n obj.ur &= ~(0xf << ((11 - idx) << 2));\n obj.ur |= value << ((11 - idx) << 2);\n } else if (idx < 18) {\n obj.dl &= ~(0xf << ((17 - idx) << 2));\n obj.dl |= value << ((17 - idx) << 2);\n } else {\n obj.dr &= ~(0xf << ((23 - idx) << 2));\n obj.dr |= value << ((23 - idx) << 2);\n }\n}\n\nfunction FullCube_FullCube__Ljava_lang_String_2V() {\n this.arr = [];\n this.prm = [];\n}\n\nasync function FullCube_randomCube() {\n const randomUintBelow = await randomUIntBelowFactory();\n\n var f, i, shape, edge, corner, n_edge, n_corner, rnd, m;\n f = new FullCube_FullCube__Ljava_lang_String_2V();\n shape = Shape_ShapeIdx[randomUintBelow(3678)];\n corner = (0x01234567 << 1) | 0x11111111;\n edge = 0x01234567 << 1;\n n_corner = n_edge = 8;\n for (i = 0; i < 24; i++) {\n if (((shape >> i) & 1) == 0) {\n //edge\n rnd = randomUintBelow(n_edge) << 2;\n FullCube_setPiece(f, 23 - i, (edge >> rnd) & 0xf);\n m = (1 << rnd) - 1;\n edge = (edge & m) + ((edge >> 4) & ~m);\n --n_edge;\n } else {\n //corner\n rnd = randomUintBelow(n_corner) << 2;\n FullCube_setPiece(f, 23 - i, (corner >> rnd) & 0xf);\n FullCube_setPiece(f, 22 - i, (corner >> rnd) & 0xf);\n m = (1 << rnd) - 1;\n corner = (corner & m) + ((corner >> 4) & ~m);\n --n_corner;\n ++i;\n }\n }\n f.ml = randomUintBelow(2);\n //\tconsole.log(f);\n return f;\n}\n\nfunction FullCube() {}\n\nlet _ = (FullCube_FullCube__Ljava_lang_String_2V.prototype =\n FullCube.prototype);\n_.dl = 10062778;\n_.dr = 14536702;\n_.ml = 0;\n_.ul = 70195;\n_.ur = 4544119;\nfunction Search_init2(obj) {\n var corner, edge, i, j, ml, prun;\n FullCube_copy(obj.Search_d, obj.Search_c);\n for (i = 0; i < obj.Search_length1; ++i) {\n FullCube_doMove(obj.Search_d, obj.Search_move[i]);\n }\n FullCube_getSquare(obj.Search_d, obj.Search_sq);\n edge = obj.Search_sq.edgeperm;\n corner = obj.Search_sq.cornperm;\n ml = obj.Search_sq.ml;\n prun = Math.max(\n SquarePrun[(obj.Search_sq.edgeperm << 1) | ml],\n SquarePrun[(obj.Search_sq.cornperm << 1) | ml],\n );\n for (i = prun; i < obj.Search_maxlen2; ++i) {\n if (\n Search_phase2(\n obj,\n edge,\n corner,\n obj.Search_sq.topEdgeFirst,\n obj.Search_sq.botEdgeFirst,\n ml,\n i,\n obj.Search_length1,\n 0,\n )\n ) {\n for (j = 0; j < i; ++j) {\n FullCube_doMove(obj.Search_d, obj.Search_move[obj.Search_length1 + j]);\n //console.log(obj.Search_move[obj.Search_length1 + j]);\n }\n //console.log(obj.Search_d);\n //console.log(obj.Search_move);\n obj.Search_sol_string = Search_move2string(obj, i + obj.Search_length1);\n return true;\n }\n }\n return false;\n}\n\nfunction Search_move2string(obj, len) {\n var s = \"\";\n var top = 0,\n bottom = 0;\n for (var i = len - 1; i >= 0; i--) {\n var val = obj.Search_move[i];\n //console.log(val);\n if (val > 0) {\n val = 12 - val;\n top = val > 6 ? val - 12 : val;\n } else if (val < 0) {\n val = 12 + val;\n bottom = val > 6 ? val - 12 : val;\n } else {\n if (top == 0 && bottom == 0) {\n s += \" / \";\n } else {\n s += \"(\" + top + \", \" + bottom + \") / \";\n }\n top = bottom = 0;\n }\n }\n if (top !== 0 || bottom !== 0) {\n s += \"(\" + top + \", \" + bottom + \")\";\n }\n return s; // + \" (\" + len + \"t)\";\n}\n\nfunction Search_phase1(obj, shape, prunvalue, maxl, depth, lm) {\n var m, prunx, shapex;\n if (prunvalue == 0 && maxl < 4) {\n return maxl == 0 && Search_init2(obj);\n }\n if (lm != 0) {\n shapex = Shape_TwistMove[shape];\n prunx = ShapePrun[shapex];\n if (prunx < maxl) {\n obj.Search_move[depth] = 0;\n if (Search_phase1(obj, shapex, prunx, maxl - 1, depth + 1, 0)) {\n return true;\n }\n }\n }\n shapex = shape;\n if (lm <= 0) {\n m = 0;\n for (;;) {\n m += Shape_TopMove[shapex];\n shapex = ~~m >> 4;\n m &= 15;\n if (m >= 12) {\n break;\n }\n prunx = ShapePrun[shapex];\n if (prunx > maxl) {\n break;\n } else if (prunx < maxl) {\n obj.Search_move[depth] = m;\n if (Search_phase1(obj, shapex, prunx, maxl - 1, depth + 1, 1)) {\n return true;\n }\n }\n }\n }\n shapex = shape;\n if (lm <= 1) {\n m = 0;\n for (;;) {\n m += Shape_BottomMove[shapex];\n shapex = ~~m >> 4;\n m &= 15;\n if (m >= 6) {\n break;\n }\n prunx = ShapePrun[shapex];\n if (prunx > maxl) {\n break;\n } else if (prunx < maxl) {\n obj.Search_move[depth] = -m;\n if (Search_phase1(obj, shapex, prunx, maxl - 1, depth + 1, 2)) {\n return true;\n }\n }\n }\n }\n return false;\n}\n\nfunction Search_phase2(\n obj,\n edge,\n corner,\n topEdgeFirst,\n botEdgeFirst,\n ml,\n maxl,\n depth,\n lm,\n) {\n var botEdgeFirstx, cornerx, edgex, m, prun1, prun2, topEdgeFirstx;\n if (maxl == 0 && !topEdgeFirst && botEdgeFirst) {\n return true;\n }\n if (lm != 0 && topEdgeFirst == botEdgeFirst) {\n edgex = Square_TwistMove[edge];\n cornerx = Square_TwistMove[corner];\n if (\n SquarePrun[(edgex << 1) | (1 - ml)] < maxl &&\n SquarePrun[(cornerx << 1) | (1 - ml)] < maxl\n ) {\n obj.Search_move[depth] = 0;\n if (\n Search_phase2(\n obj,\n edgex,\n cornerx,\n topEdgeFirst,\n botEdgeFirst,\n 1 - ml,\n maxl - 1,\n depth + 1,\n 0,\n )\n ) {\n return true;\n }\n }\n }\n if (lm <= 0) {\n topEdgeFirstx = !topEdgeFirst;\n edgex = topEdgeFirstx ? Square_TopMove[edge] : edge;\n cornerx = topEdgeFirstx ? corner : Square_TopMove[corner];\n m = topEdgeFirstx ? 1 : 2;\n prun1 = SquarePrun[(edgex << 1) | ml];\n prun2 = SquarePrun[(cornerx << 1) | ml];\n while (m < 12 && prun1 <= maxl && prun1 <= maxl) {\n if (prun1 < maxl && prun2 < maxl) {\n obj.Search_move[depth] = m;\n if (\n Search_phase2(\n obj,\n edgex,\n cornerx,\n topEdgeFirstx,\n botEdgeFirst,\n ml,\n maxl - 1,\n depth + 1,\n 1,\n )\n ) {\n return true;\n }\n }\n topEdgeFirstx = !topEdgeFirstx;\n if (topEdgeFirstx) {\n edgex = Square_TopMove[edgex];\n prun1 = SquarePrun[(edgex << 1) | ml];\n m += 1;\n } else {\n cornerx = Square_TopMove[cornerx];\n prun2 = SquarePrun[(cornerx << 1) | ml];\n m += 2;\n }\n }\n }\n if (lm <= 1) {\n botEdgeFirstx = !botEdgeFirst;\n edgex = botEdgeFirstx ? Square_BottomMove[edge] : edge;\n cornerx = botEdgeFirstx ? corner : Square_BottomMove[corner];\n m = botEdgeFirstx ? 1 : 2;\n prun1 = SquarePrun[(edgex << 1) | ml];\n prun2 = SquarePrun[(cornerx << 1) | ml];\n while (m < (maxl > 3 ? 6 : 12) && prun1 <= maxl && prun1 <= maxl) {\n if (prun1 < maxl && prun2 < maxl) {\n obj.Search_move[depth] = -m;\n if (\n Search_phase2(\n obj,\n edgex,\n cornerx,\n topEdgeFirst,\n botEdgeFirstx,\n ml,\n maxl - 1,\n depth + 1,\n 2,\n )\n ) {\n return true;\n }\n }\n botEdgeFirstx = !botEdgeFirstx;\n if (botEdgeFirstx) {\n edgex = Square_BottomMove[edgex];\n prun1 = SquarePrun[(edgex << 1) | ml];\n m += 1;\n } else {\n cornerx = Square_BottomMove[cornerx];\n prun2 = SquarePrun[(cornerx << 1) | ml];\n m += 2;\n }\n }\n }\n return false;\n}\n\nfunction Search_solution(obj, c) {\n var shape;\n obj.Search_c = c;\n shape = FullCube_getShapeIdx(c);\n //console.log(shape);\n for (\n obj.Search_length1 = ShapePrun[shape];\n obj.Search_length1 < 100;\n ++obj.Search_length1\n ) {\n //console.log(obj.Search_length1);\n obj.Search_maxlen2 = Math.min(31 - obj.Search_length1, 17);\n if (\n Search_phase1(obj, shape, ShapePrun[shape], obj.Search_length1, 0, -1)\n ) {\n break;\n }\n }\n return obj.Search_sol_string;\n}\n\nfunction Search_Search() {\n this.Search_move = [];\n this.Search_d = new FullCube_FullCube__Ljava_lang_String_2V();\n this.Search_sq = new Square_Square();\n}\n\nfunction Search() {}\n\n_ = Search_Search.prototype = Search.prototype;\n_.Search_c = null;\n_.Search_length1 = 0;\n_.Search_maxlen2 = 0;\n_.Search_sol_string = null;\nlet Shape_$clinit_ran = false;\nfunction Shape_$clinit() {\n if (Shape_$clinit_ran) {\n return;\n }\n Shape_$clinit_ran = true;\n Shape_halflayer = [0, 3, 6, 12, 15, 24, 27, 30, 48, 51, 54, 60, 63];\n Shape_ShapeIdx = [];\n ShapePrun = [];\n Shape_TopMove = [];\n Shape_BottomMove = [];\n Shape_TwistMove = [];\n Shape_init();\n}\n\nfunction Shape_bottomMove(obj) {\n var move, moveParity;\n move = 0;\n moveParity = 0;\n do {\n if ((obj.bottom & 2048) == 0) {\n move += 1;\n obj.bottom = obj.bottom << 1;\n } else {\n move += 2;\n obj.bottom = (obj.bottom << 2) ^ 12291;\n }\n moveParity = 1 - moveParity;\n } while ((bitCount(obj.bottom & 63) & 1) != 0);\n (bitCount(obj.bottom) & 2) == 0 && (obj.Shape_parity ^= moveParity);\n return move;\n}\n\nfunction Shape_getIdx(obj) {\n var ret;\n ret =\n (binarySearch(Shape_ShapeIdx, (obj.top << 12) | obj.bottom) << 1) |\n obj.Shape_parity;\n return ret;\n}\n\nfunction Shape_setIdx(obj, idx) {\n obj.Shape_parity = idx & 1;\n obj.top = Shape_ShapeIdx[~~idx >> 1];\n obj.bottom = obj.top & 4095;\n obj.top >>= 12;\n}\n\nfunction Shape_topMove(obj) {\n var move, moveParity;\n move = 0;\n moveParity = 0;\n do {\n if ((obj.top & 2048) == 0) {\n move += 1;\n obj.top = obj.top << 1;\n } else {\n move += 2;\n obj.top = (obj.top << 2) ^ 12291;\n }\n moveParity = 1 - moveParity;\n } while ((bitCount(obj.top & 63) & 1) != 0);\n (bitCount(obj.top) & 2) == 0 && (obj.Shape_parity ^= moveParity);\n return move;\n}\n\nfunction Shape_Shape() {}\n\nfunction Shape_getShape2Idx(shp) {\n var ret;\n ret = (binarySearch(Shape_ShapeIdx, shp & 16777215) << 1) | (~~shp >> 24);\n return ret;\n}\n\nfunction Shape_init() {\n var count,\n depth,\n dl,\n done,\n done0,\n dr,\n i,\n idx,\n m,\n s,\n ul,\n ur,\n value,\n p1,\n p3,\n temp;\n count = 0;\n for (i = 0; i < 28561; ++i) {\n dr = Shape_halflayer[i % 13];\n dl = Shape_halflayer[~~(i / 13) % 13];\n ur = Shape_halflayer[~~(~~(i / 13) / 13) % 13];\n ul = Shape_halflayer[~~(~~(~~(i / 13) / 13) / 13)];\n value = (ul << 18) | (ur << 12) | (dl << 6) | dr;\n bitCount(value) == 16 && (Shape_ShapeIdx[count++] = value);\n }\n s = new Shape_Shape();\n for (i = 0; i < 7356; ++i) {\n Shape_setIdx(s, i);\n Shape_TopMove[i] = Shape_topMove(s);\n Shape_TopMove[i] |= Shape_getIdx(s) << 4;\n Shape_setIdx(s, i);\n Shape_BottomMove[i] = Shape_bottomMove(s);\n Shape_BottomMove[i] |= Shape_getIdx(s) << 4;\n Shape_setIdx(s, i);\n temp = s.top & 63;\n p1 = bitCount(temp);\n p3 = bitCount(s.bottom & 4032);\n s.Shape_parity ^= 1 & (~~(p1 & p3) >> 1);\n s.top = (s.top & 4032) | ((~~s.bottom >> 6) & 63);\n s.bottom = (s.bottom & 63) | (temp << 6);\n Shape_TwistMove[i] = Shape_getIdx(s);\n }\n for (i = 0; i < 7536; ++i) {\n ShapePrun[i] = -1;\n }\n ShapePrun[Shape_getShape2Idx(14378715)] = 0;\n ShapePrun[Shape_getShape2Idx(31157686)] = 0;\n ShapePrun[Shape_getShape2Idx(23967451)] = 0;\n ShapePrun[Shape_getShape2Idx(7191990)] = 0;\n done = 4;\n done0 = 0;\n depth = -1;\n while (done != done0) {\n done0 = done;\n ++depth;\n for (i = 0; i < 7536; ++i) {\n if (ShapePrun[i] == depth) {\n m = 0;\n idx = i;\n do {\n idx = Shape_TopMove[idx];\n m += idx & 15;\n idx >>= 4;\n if (ShapePrun[idx] == -1) {\n ++done;\n ShapePrun[idx] = depth + 1;\n }\n } while (m != 12);\n m = 0;\n idx = i;\n do {\n idx = Shape_BottomMove[idx];\n m += idx & 15;\n idx >>= 4;\n if (ShapePrun[idx] == -1) {\n ++done;\n ShapePrun[idx] = depth + 1;\n }\n } while (m != 12);\n idx = Shape_TwistMove[i];\n if (ShapePrun[idx] == -1) {\n ++done;\n ShapePrun[idx] = depth + 1;\n }\n }\n }\n }\n}\n\nfunction Shape() {}\n\n_ = Shape_Shape.prototype = Shape.prototype;\n_.bottom = 0;\n_.Shape_parity = 0;\n_.top = 0;\nvar Shape_BottomMove,\n Shape_ShapeIdx,\n ShapePrun,\n Shape_TopMove,\n Shape_TwistMove,\n Shape_halflayer;\nlet Square_$clinit_ran = false;\nfunction Square_$clinit() {\n if (Square_$clinit_ran) {\n return;\n }\n Square_$clinit_ran = true;\n SquarePrun = [];\n Square_TwistMove = [];\n Square_TopMove = [];\n Square_BottomMove = [];\n fact = [1, 1, 2, 6, 24, 120, 720, 5040];\n Cnk = [];\n for (var i = 0; i < 12; ++i) Cnk[i] = [];\n Square_init();\n}\n\nfunction Square_Square() {}\n\nfunction get8Perm(arr) {\n var i, idx, v, val;\n idx = 0;\n val = 1985229328;\n for (i = 0; i < 7; ++i) {\n v = arr[i] << 2;\n idx = (8 - i) * idx + ((~~val >> v) & 7);\n val -= 286331152 << v;\n }\n return idx & 65535;\n}\n\nfunction Square_init() {\n var check, depth, done, find, i, idx, idxx, inv, j, m, ml, pos, temp;\n for (i = 0; i < 12; ++i) {\n Cnk[i][0] = 1;\n Cnk[i][i] = 1;\n for (j = 1; j < i; ++j) {\n Cnk[i][j] = Cnk[i - 1][j - 1] + Cnk[i - 1][j];\n }\n }\n pos = [];\n for (i = 0; i < 40320; ++i) {\n set8Perm(pos, i);\n temp = pos[2];\n pos[2] = pos[4];\n pos[4] = temp;\n temp = pos[3];\n pos[3] = pos[5];\n pos[5] = temp;\n Square_TwistMove[i] = get8Perm(pos);\n set8Perm(pos, i);\n temp = pos[0];\n pos[0] = pos[1];\n pos[1] = pos[2];\n pos[2] = pos[3];\n pos[3] = temp;\n Square_TopMove[i] = get8Perm(pos);\n set8Perm(pos, i);\n temp = pos[4];\n pos[4] = pos[5];\n pos[5] = pos[6];\n pos[6] = pos[7];\n pos[7] = temp;\n Square_BottomMove[i] = get8Perm(pos);\n }\n for (i = 0; i < 80640; ++i) {\n SquarePrun[i] = -1;\n }\n SquarePrun[0] = 0;\n depth = 0;\n done = 1;\n while (done < 80640) {\n // console.log(done);\n inv = depth >= 11;\n find = inv ? -1 : depth;\n check = inv ? depth : -1;\n ++depth;\n OUT: for (i = 0; i < 80640; ++i) {\n if (SquarePrun[i] == find) {\n idx = ~~i >> 1;\n ml = i & 1;\n idxx = (Square_TwistMove[idx] << 1) | (1 - ml);\n if (SquarePrun[idxx] == check) {\n ++done;\n SquarePrun[inv ? i : idxx] = ~~(depth << 24) >> 24;\n if (inv) continue OUT;\n }\n idxx = idx;\n for (m = 0; m < 4; ++m) {\n idxx = Square_TopMove[idxx];\n if (SquarePrun[(idxx << 1) | ml] == check) {\n ++done;\n SquarePrun[inv ? i : (idxx << 1) | ml] = ~~(depth << 24) >> 24;\n if (inv) continue OUT;\n }\n }\n for (m = 0; m < 4; ++m) {\n idxx = Square_BottomMove[idxx];\n if (SquarePrun[(idxx << 1) | ml] == check) {\n ++done;\n SquarePrun[inv ? i : (idxx << 1) | ml] = ~~(depth << 24) >> 24;\n if (inv) continue OUT;\n }\n }\n }\n }\n }\n}\n\nfunction set8Perm(arr, idx) {\n var i, m, p, v, val;\n val = 1985229328;\n for (i = 0; i < 7; ++i) {\n p = fact[7 - i];\n v = ~~(idx / p);\n idx -= v * p;\n v <<= 2;\n arr[i] = ~~(((~~val >> v) & 7) << 24) >> 24;\n m = (1 << v) - 1;\n val = (val & m) + ((~~val >> 4) & ~m);\n }\n arr[7] = ~~(val << 24) >> 24;\n}\n\nfunction Square() {}\n\n_ = Square_Square.prototype = Square.prototype;\n_.botEdgeFirst = false;\n_.cornperm = 0;\n_.edgeperm = 0;\n_.ml = 0;\n_.topEdgeFirst = false;\nvar Square_BottomMove, Cnk, SquarePrun, Square_TopMove, Square_TwistMove, fact;\n\nfunction bitCount(x) {\n x -= (~~x >> 1) & 1431655765;\n x = ((~~x >> 2) & 858993459) + (x & 858993459);\n x = ((~~x >> 4) + x) & 252645135;\n x += ~~x >> 8;\n x += ~~x >> 16;\n return x & 63;\n}\n\nfunction binarySearch(sortedArray, key) {\n var high, low, mid, midVal;\n low = 0;\n high = sortedArray.length - 1;\n while (low <= high) {\n mid = low + (~~(high - low) >> 1);\n midVal = sortedArray[mid];\n if (midVal < key) {\n low = mid + 1;\n } else if (midVal > key) {\n high = mid - 1;\n } else {\n return mid;\n }\n }\n return -low - 1;\n}\n\n/*\n * Some helper functions.\n */\n\nvar square1Solver_initialized = false;\n\nvar square1SolverInitialize = function (doneCallback, _, statusCallback) {\n if (!square1Solver_initialized) {\n Shape_$clinit();\n Square_$clinit();\n }\n\n if (statusCallback) {\n statusCallback(\"Done initializing Square-1.\");\n }\n\n square1Solver_initialized = true;\n if (doneCallback != null) {\n doneCallback();\n }\n};\n\nvar square1SolverGetRandomPosition = async function () {\n if (!square1Solver_initialized) {\n square1SolverInitialize();\n }\n return FullCube_randomCube();\n};\n\nvar square1SolverGenerate = function (state) {\n var search_search = new Search_Search(); // Can this be factored out?\n return Search_solution(search_search, state);\n};\n\nvar square1SolverGetRandomScramble = async function () {\n var randomState = await square1SolverGetRandomPosition();\n var scrambleString = square1SolverGenerate(randomState);\n\n return {\n state: randomState,\n scramble_string: scrambleString,\n };\n};\n\nexport async function getRandomSquare1ScrambleString() {\n return (await square1SolverGetRandomScramble()).scramble_string;\n}\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Move,
3
3
  QuantumMove
4
- } from "../chunk-DO7GZAW4.js";
4
+ } from "../chunk-QZOJPCN5.js";
5
5
  import "../chunk-MGJA5U5O.js";
6
6
 
7
7
  // src/cubing/stream/websocket-proxy.ts
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/cubing/stream/websocket-proxy.ts", "../../../src/cubing/stream/twizzle/TwizzleStream.ts"],
4
4
  "sourcesContent": ["import type { MoveEvent, OrientationEvent } from \"../bluetooth\";\nimport type { ProxyEvent } from \"./proxy-event\";\n\nexport class WebSocketProxySender {\n protected websocket: WebSocket;\n constructor(url: string) {\n this.websocket = new WebSocket(url);\n this.websocket.onopen = this.onopen.bind(this);\n this.websocket.onerror = this.onerror.bind(this);\n this.websocket.onmessage = this.onmessage.bind(this);\n }\n\n public sendMoveEvent(e: MoveEvent): void {\n this.sendProxyEvent({\n event: \"move\",\n data: e,\n });\n }\n\n public sendOrientationEvent(e: OrientationEvent): void {\n this.sendProxyEvent({\n event: \"orientation\",\n data: e,\n });\n }\n\n public sendResetEvent(): void {\n this.sendProxyEvent({ event: \"reset\" });\n }\n\n protected sendProxyEvent(proxyEvent: ProxyEvent): void {\n this.websocket.send(JSON.stringify(proxyEvent));\n }\n\n protected onopen(): void {\n console.log(\"Sending socket is open!\");\n }\n\n protected onerror(error: Error): void {\n console.error(\"WebSocket sender error:\", error);\n }\n\n protected onmessage(_e: MessageEvent): void {}\n}\n\nexport abstract class WebSocketProxyReceiver {\n protected websocket: WebSocket;\n constructor(url: string, socketOrigin?: string) {\n if (!socketOrigin) {\n console.log(\"No socket origin specified. Will not attempt to connect.\");\n return;\n }\n this.websocket = new WebSocket(url);\n console.log(this.websocket);\n this.websocket.onopen = this.onopen.bind(this);\n this.websocket.onerror = this.onerror.bind(this);\n this.websocket.onmessage = this.onmessage.bind(this);\n }\n\n protected onopen(): void {\n console.log(\"Receiving socket is open!\");\n }\n\n protected onerror(error: Error): void {\n console.error(\"WebSocket receiver error:\", error);\n }\n\n protected onmessage(e: MessageEvent): void {\n this.onProxyEvent(JSON.parse(e.data));\n }\n\n abstract onProxyEvent(e: ProxyEvent): void;\n}\n", "import { Move, QuantumMove } from \"../../alg\";\nimport type { StreamMessageEvent } from \"./stream-types\";\n\nclass TwizzleStream extends EventTarget {\n socket: WebSocket;\n constructor(url: string) {\n super();\n this.socket = new WebSocket(url);\n this.socket.onmessage = this.onMessage.bind(this); // TODO: Can we \"add a listener instead\"?\n }\n\n onMessage(msg: MessageEvent): void {\n try {\n const json: StreamMessageEvent = JSON.parse(msg.data);\n if (json.event === \"move\") {\n const move = json.data.latestMove;\n if (move.type !== \"blockMove\") {\n throw new Error(\"Invalid move!\");\n }\n this.dispatchEvent(\n new CustomEvent(\"move\", {\n detail: {\n move: new Move(new QuantumMove(move.family), move.amount),\n },\n }),\n );\n }\n } catch (e) {\n console.error(\"Could not handle message:\", e);\n }\n }\n}\n\ntype StreamsField = {\n streamID: string;\n senders: { name: string; twizzleUserID: string; wcaID: string | null }[];\n}[];\n\nexport class TwizzleStreamServer {\n async streams(): Promise<StreamsField> {\n return (\n (await (await fetch(\"https://api.twizzle.net/v0/streams\")).json()) as {\n streams: StreamsField;\n }\n ).streams;\n }\n\n connect(streamID: string): TwizzleStream {\n return new TwizzleStream(\n `wss://api.twizzle.net/v0/streams/${streamID}/socket`,\n );\n }\n}\n"],
5
- "mappings": ";;;;;;;AAGO,iCAA2B;AAAA,EAEhC,YAAY,KAAa;AACvB,SAAK,YAAY,IAAI,UAAU;AAC/B,SAAK,UAAU,SAAS,KAAK,OAAO,KAAK;AACzC,SAAK,UAAU,UAAU,KAAK,QAAQ,KAAK;AAC3C,SAAK,UAAU,YAAY,KAAK,UAAU,KAAK;AAAA;AAAA,EAG1C,cAAc,GAAoB;AACvC,SAAK,eAAe;AAAA,MAClB,OAAO;AAAA,MACP,MAAM;AAAA;AAAA;AAAA,EAIH,qBAAqB,GAA2B;AACrD,SAAK,eAAe;AAAA,MAClB,OAAO;AAAA,MACP,MAAM;AAAA;AAAA;AAAA,EAIH,iBAAuB;AAC5B,SAAK,eAAe,EAAE,OAAO;AAAA;AAAA,EAGrB,eAAe,YAA8B;AACrD,SAAK,UAAU,KAAK,KAAK,UAAU;AAAA;AAAA,EAG3B,SAAe;AACvB,YAAQ,IAAI;AAAA;AAAA,EAGJ,QAAQ,OAAoB;AACpC,YAAQ,MAAM,2BAA2B;AAAA;AAAA,EAGjC,UAAU,IAAwB;AAAA;AAAA;AAGvC,mCAAsC;AAAA,EAE3C,YAAY,KAAa,cAAuB;AAC9C,QAAI,CAAC,cAAc;AACjB,cAAQ,IAAI;AACZ;AAAA;AAEF,SAAK,YAAY,IAAI,UAAU;AAC/B,YAAQ,IAAI,KAAK;AACjB,SAAK,UAAU,SAAS,KAAK,OAAO,KAAK;AACzC,SAAK,UAAU,UAAU,KAAK,QAAQ,KAAK;AAC3C,SAAK,UAAU,YAAY,KAAK,UAAU,KAAK;AAAA;AAAA,EAGvC,SAAe;AACvB,YAAQ,IAAI;AAAA;AAAA,EAGJ,QAAQ,OAAoB;AACpC,YAAQ,MAAM,6BAA6B;AAAA;AAAA,EAGnC,UAAU,GAAuB;AACzC,SAAK,aAAa,KAAK,MAAM,EAAE;AAAA;AAAA;;;ACjEnC,kCAA4B,YAAY;AAAA,EAEtC,YAAY,KAAa;AACvB;AACA,SAAK,SAAS,IAAI,UAAU;AAC5B,SAAK,OAAO,YAAY,KAAK,UAAU,KAAK;AAAA;AAAA,EAG9C,UAAU,KAAyB;AACjC,QAAI;AACF,YAAM,OAA2B,KAAK,MAAM,IAAI;AAChD,UAAI,KAAK,UAAU,QAAQ;AACzB,cAAM,OAAO,KAAK,KAAK;AACvB,YAAI,KAAK,SAAS,aAAa;AAC7B,gBAAM,IAAI,MAAM;AAAA;AAElB,aAAK,cACH,IAAI,YAAY,QAAQ;AAAA,UACtB,QAAQ;AAAA,YACN,MAAM,IAAI,KAAK,IAAI,YAAY,KAAK,SAAS,KAAK;AAAA;AAAA;AAAA;AAAA,aAKnD,GAAP;AACA,cAAQ,MAAM,6BAA6B;AAAA;AAAA;AAAA;AAU1C,gCAA0B;AAAA,QACzB,UAAiC;AACrC,WACG,OAAO,OAAM,MAAM,uCAAuC,QAG3D;AAAA;AAAA,EAGJ,QAAQ,UAAiC;AACvC,WAAO,IAAI,cACT,oCAAoC;AAAA;AAAA;",
5
+ "mappings": ";;;;;;;AAGO,iCAA2B;AAAA,EAEhC,YAAY,KAAa;AACvB,SAAK,YAAY,IAAI,UAAU,GAAG;AAClC,SAAK,UAAU,SAAS,KAAK,OAAO,KAAK,IAAI;AAC7C,SAAK,UAAU,UAAU,KAAK,QAAQ,KAAK,IAAI;AAC/C,SAAK,UAAU,YAAY,KAAK,UAAU,KAAK,IAAI;AAAA,EACrD;AAAA,EAEO,cAAc,GAAoB;AACvC,SAAK,eAAe;AAAA,MAClB,OAAO;AAAA,MACP,MAAM;AAAA,IACR,CAAC;AAAA,EACH;AAAA,EAEO,qBAAqB,GAA2B;AACrD,SAAK,eAAe;AAAA,MAClB,OAAO;AAAA,MACP,MAAM;AAAA,IACR,CAAC;AAAA,EACH;AAAA,EAEO,iBAAuB;AAC5B,SAAK,eAAe,EAAE,OAAO,QAAQ,CAAC;AAAA,EACxC;AAAA,EAEU,eAAe,YAA8B;AACrD,SAAK,UAAU,KAAK,KAAK,UAAU,UAAU,CAAC;AAAA,EAChD;AAAA,EAEU,SAAe;AACvB,YAAQ,IAAI,yBAAyB;AAAA,EACvC;AAAA,EAEU,QAAQ,OAAoB;AACpC,YAAQ,MAAM,2BAA2B,KAAK;AAAA,EAChD;AAAA,EAEU,UAAU,IAAwB;AAAA,EAAC;AAC/C;AAEO,mCAAsC;AAAA,EAE3C,YAAY,KAAa,cAAuB;AAC9C,QAAI,CAAC,cAAc;AACjB,cAAQ,IAAI,0DAA0D;AACtE;AAAA,IACF;AACA,SAAK,YAAY,IAAI,UAAU,GAAG;AAClC,YAAQ,IAAI,KAAK,SAAS;AAC1B,SAAK,UAAU,SAAS,KAAK,OAAO,KAAK,IAAI;AAC7C,SAAK,UAAU,UAAU,KAAK,QAAQ,KAAK,IAAI;AAC/C,SAAK,UAAU,YAAY,KAAK,UAAU,KAAK,IAAI;AAAA,EACrD;AAAA,EAEU,SAAe;AACvB,YAAQ,IAAI,2BAA2B;AAAA,EACzC;AAAA,EAEU,QAAQ,OAAoB;AACpC,YAAQ,MAAM,6BAA6B,KAAK;AAAA,EAClD;AAAA,EAEU,UAAU,GAAuB;AACzC,SAAK,aAAa,KAAK,MAAM,EAAE,IAAI,CAAC;AAAA,EACtC;AAGF;;;ACrEA,kCAA4B,YAAY;AAAA,EAEtC,YAAY,KAAa;AACvB,UAAM;AACN,SAAK,SAAS,IAAI,UAAU,GAAG;AAC/B,SAAK,OAAO,YAAY,KAAK,UAAU,KAAK,IAAI;AAAA,EAClD;AAAA,EAEA,UAAU,KAAyB;AACjC,QAAI;AACF,YAAM,OAA2B,KAAK,MAAM,IAAI,IAAI;AACpD,UAAI,KAAK,UAAU,QAAQ;AACzB,cAAM,OAAO,KAAK,KAAK;AACvB,YAAI,KAAK,SAAS,aAAa;AAC7B,gBAAM,IAAI,MAAM,eAAe;AAAA,QACjC;AACA,aAAK,cACH,IAAI,YAAY,QAAQ;AAAA,UACtB,QAAQ;AAAA,YACN,MAAM,IAAI,KAAK,IAAI,YAAY,KAAK,MAAM,GAAG,KAAK,MAAM;AAAA,UAC1D;AAAA,QACF,CAAC,CACH;AAAA,MACF;AAAA,IACF,SAAS,GAAP;AACA,cAAQ,MAAM,6BAA6B,CAAC;AAAA,IAC9C;AAAA,EACF;AACF;AAOO,gCAA0B;AAAA,QACzB,UAAiC;AACrC,WACG,OAAO,OAAM,MAAM,oCAAoC,GAAG,KAAK,GAGhE;AAAA,EACJ;AAAA,EAEA,QAAQ,UAAiC;AACvC,WAAO,IAAI,cACT,oCAAoC,iBACtC;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -10,18 +10,18 @@ import {
10
10
  TwistyPropDerived,
11
11
  TwistyPropSource,
12
12
  proxy3D
13
- } from "../chunk-BH3AI6DL.js";
13
+ } from "../chunk-PDVAUAMY.js";
14
14
  import {
15
15
  countAnimatedLeaves,
16
16
  countMoves
17
- } from "../chunk-NSLR2SC4.js";
17
+ } from "../chunk-5Q4SJSNY.js";
18
18
  import {
19
19
  cube3x3x3,
20
20
  cubeAppearance,
21
21
  customPGPuzzleLoader,
22
22
  puzzles
23
- } from "../chunk-3YHGF72G.js";
24
- import "../chunk-HD2CMNE4.js";
23
+ } from "../chunk-XQKTAWAA.js";
24
+ import "../chunk-HUCMGBEC.js";
25
25
  import {
26
26
  Alg,
27
27
  AlgBuilder,
@@ -33,7 +33,7 @@ import {
33
33
  direct,
34
34
  directedGenerator,
35
35
  experimentalAppendMove
36
- } from "../chunk-DO7GZAW4.js";
36
+ } from "../chunk-QZOJPCN5.js";
37
37
  import {
38
38
  __privateAdd,
39
39
  __privateGet,
@@ -4141,7 +4141,7 @@ var twistyPlayerAttributeMap = {
4141
4141
  "experimental-hint-sprite": "experimentalHintSprite"
4142
4142
  };
4143
4143
  var configKeys = Object.fromEntries(Object.values(twistyPlayerAttributeMap).map((s) => [s, true]));
4144
- var _controlsManager, _visualizationWrapperElem, _errorElem, _alreadyConnected, _visualizationWrapper, _visualizationStrategy, _setVisualizationWrapper, setVisualizationWrapper_fn;
4144
+ var _controlsManager, _visualizationWrapperElem, _errorElem, _alreadyConnected, _flashLevel, _visualizationWrapper, _visualizationStrategy, _setVisualizationWrapper, setVisualizationWrapper_fn;
4145
4145
  var TwistyPlayer = class extends TwistyPlayerSettable {
4146
4146
  constructor(config = {}) {
4147
4147
  super();
@@ -4153,6 +4153,7 @@ var TwistyPlayer = class extends TwistyPlayerSettable {
4153
4153
  __privateAdd(this, _visualizationWrapperElem, document.createElement("div"));
4154
4154
  __privateAdd(this, _errorElem, document.createElement("div"));
4155
4155
  __privateAdd(this, _alreadyConnected, false);
4156
+ __privateAdd(this, _flashLevel, "auto");
4156
4157
  __privateAdd(this, _visualizationWrapper, null);
4157
4158
  __privateAdd(this, _visualizationStrategy, null);
4158
4159
  for (const [propName, value] of Object.entries(config)) {
@@ -4192,10 +4193,15 @@ var TwistyPlayer = class extends TwistyPlayerSettable {
4192
4193
  this.experimentalModel.visualizationStrategy.addFreshListener(__privateMethod(this, _setVisualizationWrapper, setVisualizationWrapper_fn).bind(this));
4193
4194
  this.experimentalModel.puzzleID.addFreshListener(this.flash.bind(this));
4194
4195
  }
4196
+ experimentalSetFlashLevel(newLevel) {
4197
+ __privateSet(this, _flashLevel, newLevel);
4198
+ }
4195
4199
  flash() {
4196
- __privateGet(this, _visualizationWrapper)?.animate([{ opacity: 0.25 }, { opacity: 1 }], {
4197
- duration: 250
4198
- });
4200
+ if (__privateGet(this, _flashLevel) === "auto") {
4201
+ __privateGet(this, _visualizationWrapper)?.animate([{ opacity: 0.25 }, { opacity: 1 }], {
4202
+ duration: 250
4203
+ });
4204
+ }
4199
4205
  }
4200
4206
  async experimentalCurrentCanvases() {
4201
4207
  this.connectedCallback();
@@ -4271,6 +4277,7 @@ _controlsManager = new WeakMap();
4271
4277
  _visualizationWrapperElem = new WeakMap();
4272
4278
  _errorElem = new WeakMap();
4273
4279
  _alreadyConnected = new WeakMap();
4280
+ _flashLevel = new WeakMap();
4274
4281
  _visualizationWrapper = new WeakMap();
4275
4282
  _visualizationStrategy = new WeakMap();
4276
4283
  _setVisualizationWrapper = new WeakSet();