cubing 0.23.0 → 0.24.0-pre1

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 (1040) hide show
  1. package/dist/esm/{2x2x2.kpuzzle.json-JOGUSQ4N.js → 2x2x2.kpuzzle.json-U5KOZCMU.js} +11 -11
  2. package/dist/esm/2x2x2.kpuzzle.json-U5KOZCMU.js.map +7 -0
  3. package/dist/esm/{2x2x2.sgs.json-FRBWMMA7.js → 2x2x2.sgs.json-VLYEQLNB.js} +5 -5
  4. package/dist/esm/2x2x2.sgs.json-VLYEQLNB.js.map +7 -0
  5. package/dist/esm/{3d-Q4WSD4BC.js → 3d-KAC5GXA4.js} +4 -4
  6. package/dist/esm/{3d-Q4WSD4BC.js.map → 3d-KAC5GXA4.js.map} +0 -0
  7. package/dist/esm/bluetooth/index.js +39 -33
  8. package/dist/esm/bluetooth/index.js.map +2 -2
  9. package/dist/esm/{chunk-FK2SCC3Z.js → chunk-23FEDDYH.js} +33 -27
  10. package/dist/esm/chunk-23FEDDYH.js.map +7 -0
  11. package/dist/esm/{chunk-DK6PXBB2.js → chunk-25PPOENI.js} +66 -56
  12. package/dist/esm/chunk-25PPOENI.js.map +7 -0
  13. package/dist/esm/{chunk-XVZOMB6J.js → chunk-27KJGD3S.js} +15 -20
  14. package/dist/esm/chunk-27KJGD3S.js.map +7 -0
  15. package/dist/esm/{chunk-DPMEZY7V.js → chunk-DBWASN5Q.js} +19 -10
  16. package/dist/esm/chunk-DBWASN5Q.js.map +7 -0
  17. package/dist/esm/{chunk-PUPUQWJC.js → chunk-J2U2GRS4.js} +27 -32
  18. package/dist/esm/chunk-J2U2GRS4.js.map +7 -0
  19. package/dist/esm/{chunk-Z6X7HTPP.js → chunk-MQYHOXEK.js} +4 -4
  20. package/dist/esm/{chunk-Z6X7HTPP.js.map → chunk-MQYHOXEK.js.map} +2 -2
  21. package/dist/esm/chunk-PMAQZQHL.js +810 -0
  22. package/dist/esm/chunk-PMAQZQHL.js.map +7 -0
  23. package/dist/esm/{chunk-N3RNWU5T.js → chunk-PQKDEV4Z.js} +36 -51
  24. package/dist/esm/chunk-PQKDEV4Z.js.map +7 -0
  25. package/dist/esm/{chunk-JZWB7AIU.js → chunk-PYOHTUEC.js} +17 -10
  26. package/dist/esm/chunk-PYOHTUEC.js.map +7 -0
  27. package/dist/esm/chunk-W6AA6TVR.js +274 -0
  28. package/dist/esm/chunk-W6AA6TVR.js.map +7 -0
  29. package/dist/esm/{chunk-MLOCDLUF.js → chunk-YLKDBBMW.js} +13 -13
  30. package/dist/esm/{chunk-MLOCDLUF.js.map → chunk-YLKDBBMW.js.map} +2 -2
  31. package/dist/esm/{clock.kpuzzle.json-EKWRMHJM.js → clock.kpuzzle.json-J3YBOI3G.js} +7 -45
  32. package/dist/esm/clock.kpuzzle.json-J3YBOI3G.js.map +7 -0
  33. package/dist/esm/{entry-L6CE2HLF.js → entry-ZLEDRTCM.js} +172 -167
  34. package/dist/esm/entry-ZLEDRTCM.js.map +7 -0
  35. package/dist/esm/{fto.sgs.json-62YNULOK.js → fto.sgs.json-PUAEKD7W.js} +6 -14
  36. package/dist/esm/fto.sgs.json-PUAEKD7W.js.map +7 -0
  37. package/dist/esm/kpuzzle/index.js +5 -35
  38. package/dist/esm/megaminx.sgs.json-DPQBIFB6.js +16 -0
  39. package/dist/esm/{megaminx.sgs.json-PRL46G5J.js.map → megaminx.sgs.json-DPQBIFB6.js.map} +0 -0
  40. package/dist/esm/{module-entry-J2N3UZP7.js → module-entry-UAGINHYL.js} +2 -2
  41. package/dist/esm/{module-entry-J2N3UZP7.js.map → module-entry-UAGINHYL.js.map} +0 -0
  42. package/dist/esm/protocol/index.js +2 -1
  43. package/dist/esm/puzzle-geometry/index.js +3 -1
  44. package/dist/esm/puzzles/index.js +4 -4
  45. package/dist/esm/{pyraminx.sgs.json-7QMPT5XP.js → pyraminx.sgs.json-5UKE76QP.js} +5 -5
  46. package/dist/esm/{pyraminx.sgs.json-7QMPT5XP.js.map → pyraminx.sgs.json-5UKE76QP.js.map} +0 -0
  47. package/dist/esm/scramble/index.js +4 -4
  48. package/dist/esm/{scramble_444-JP3CWLJM.js → scramble_444-ZNWCGUX5.js} +4 -4
  49. package/dist/esm/{scramble_444-JP3CWLJM.js.map → scramble_444-ZNWCGUX5.js.map} +0 -0
  50. package/dist/esm/search/index.js +4 -4
  51. package/dist/esm/skewb.sgs.json-O2CG5ALM.js +16 -0
  52. package/dist/esm/{skewb.sgs.json-FWHYACJG.js.map → skewb.sgs.json-O2CG5ALM.js.map} +0 -0
  53. package/dist/esm/{sq1-hyperorbit.kpuzzle.json-N3FGCPML.js → sq1-hyperorbit.kpuzzle.json-AWDGN4ZW.js} +6 -6
  54. package/dist/esm/sq1-hyperorbit.kpuzzle.json-AWDGN4ZW.js.map +7 -0
  55. package/dist/esm/twisty/index.js +334 -227
  56. package/dist/esm/twisty/index.js.map +3 -3
  57. package/dist/esm/worker-inside-generated-string-K4KJGMPV.js +3447 -0
  58. package/dist/esm/worker-inside-generated-string-K4KJGMPV.js.map +7 -0
  59. package/dist/types/alg/Alg.d.ts +0 -1
  60. package/dist/types/alg/Alg.spec.d.ts +0 -1
  61. package/dist/types/alg/AlgBuilder.d.ts +0 -1
  62. package/dist/types/alg/Serializable.d.ts +0 -1
  63. package/dist/types/alg/common.d.ts +0 -1
  64. package/dist/types/alg/debug.d.ts +0 -1
  65. package/dist/types/alg/example.d.ts +0 -1
  66. package/dist/types/alg/index.d.ts +0 -1
  67. package/dist/types/alg/is.d.ts +0 -1
  68. package/dist/types/alg/iteration.d.ts +0 -1
  69. package/dist/types/alg/keyboard.d.ts +0 -1
  70. package/dist/types/alg/limits.d.ts +0 -1
  71. package/dist/types/alg/operation.d.ts +0 -1
  72. package/dist/types/alg/operation.spec.d.ts +0 -1
  73. package/dist/types/alg/parse.d.ts +0 -1
  74. package/dist/types/alg/parse.spec.d.ts +0 -1
  75. package/dist/types/alg/test/alg-comparison.d.ts +0 -1
  76. package/dist/types/alg/test/alg.spec.d.ts +0 -1
  77. package/dist/types/alg/traversal.d.ts +0 -1
  78. package/dist/types/alg/units/QuantumWithAmount.d.ts +0 -1
  79. package/dist/types/alg/units/Unit.d.ts +0 -1
  80. package/dist/types/alg/units/containers/Commutator.d.ts +0 -1
  81. package/dist/types/alg/units/containers/Conjugate.d.ts +0 -1
  82. package/dist/types/alg/units/containers/Grouping.d.ts +0 -1
  83. package/dist/types/alg/units/index.d.ts +0 -1
  84. package/dist/types/alg/units/leaves/LineComment.d.ts +0 -1
  85. package/dist/types/alg/units/leaves/LineComment.spec.d.ts +0 -1
  86. package/dist/types/alg/units/leaves/Move.d.ts +0 -1
  87. package/dist/types/alg/units/leaves/Move.spec.d.ts +0 -1
  88. package/dist/types/alg/units/leaves/Newline.d.ts +0 -1
  89. package/dist/types/alg/units/leaves/Pause.d.ts +0 -1
  90. package/dist/types/alg/url.d.ts +0 -1
  91. package/dist/types/alg/url.spec.d.ts +0 -1
  92. package/dist/types/alg/validation.d.ts +0 -1
  93. package/dist/types/alg/warnOnce.d.ts +0 -1
  94. package/dist/types/bluetooth/connect/index.d.ts +0 -1
  95. package/dist/types/bluetooth/debug.d.ts +0 -1
  96. package/dist/types/bluetooth/index.d.ts +0 -1
  97. package/dist/types/bluetooth/keyboard.d.ts +5 -5
  98. package/dist/types/bluetooth/smart-puzzle/Heykube.d.ts +3 -3
  99. package/dist/types/bluetooth/smart-puzzle/bluetooth-puzzle.d.ts +3 -5
  100. package/dist/types/bluetooth/smart-puzzle/connect.d.ts +0 -1
  101. package/dist/types/bluetooth/smart-puzzle/endianness.d.ts +0 -1
  102. package/dist/types/bluetooth/smart-puzzle/gan.d.ts +5 -4
  103. package/dist/types/bluetooth/smart-puzzle/giiker.d.ts +3 -3
  104. package/dist/types/bluetooth/smart-puzzle/giiker.spec.d.ts +0 -1
  105. package/dist/types/bluetooth/smart-puzzle/gocube.d.ts +0 -1
  106. package/dist/types/bluetooth/smart-robot/GanRobot.d.ts +0 -1
  107. package/dist/types/bluetooth/smart-robot/index.d.ts +0 -1
  108. package/dist/types/bluetooth/smart-timer/GanTimer.d.ts +0 -1
  109. package/dist/types/bluetooth/smart-timer/index.d.ts +0 -1
  110. package/dist/types/bluetooth/transformer.d.ts +0 -1
  111. package/dist/types/cubing.bundle-global.d.ts +0 -1
  112. package/dist/types/cubing.bundle-global.exports.d.ts +0 -1
  113. package/dist/types/esm-test-worker.d.ts +0 -1
  114. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.d.ts +2 -3
  115. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.spec.d.ts +0 -1
  116. package/dist/types/kpuzzle/3x3x3/puzzle-orientation.d.ts +4 -0
  117. package/dist/types/kpuzzle/KPuzzle.d.ts +21 -0
  118. package/dist/types/kpuzzle/KPuzzleDefinition.d.ts +20 -0
  119. package/dist/types/kpuzzle/KState.d.ts +16 -0
  120. package/dist/types/kpuzzle/KTransformation.d.ts +20 -0
  121. package/dist/types/kpuzzle/calculate.d.ts +16 -0
  122. package/dist/types/kpuzzle/combine.d.ts +3 -0
  123. package/dist/types/kpuzzle/construct.d.ts +5 -0
  124. package/dist/types/kpuzzle/index.d.ts +6 -10
  125. package/dist/types/notation/CountAnimatedLeaves.d.ts +0 -1
  126. package/dist/types/notation/CountMoves.d.ts +0 -1
  127. package/dist/types/notation/index.d.ts +0 -1
  128. package/dist/types/protocol/binary/binary3x3x3.d.ts +5 -6
  129. package/dist/types/protocol/binary/binary3x3x3.spec.d.ts +0 -1
  130. package/dist/types/protocol/binary/hex.d.ts +0 -1
  131. package/dist/types/protocol/binary/hex.spec.d.ts +0 -1
  132. package/dist/types/protocol/binary/orbit-indexing.d.ts +0 -1
  133. package/dist/types/protocol/binary/orbit-indexing.spec.d.ts +0 -1
  134. package/dist/types/protocol/binary/puzzle-orientation.d.ts +4 -5
  135. package/dist/types/protocol/index.d.ts +0 -1
  136. package/dist/types/puzzle-geometry/FaceNameSwizzler.d.ts +0 -1
  137. package/dist/types/puzzle-geometry/Options.d.ts +0 -1
  138. package/dist/types/puzzle-geometry/PGPuzzles.d.ts +0 -1
  139. package/dist/types/puzzle-geometry/PGPuzzles.spec.d.ts +0 -1
  140. package/dist/types/puzzle-geometry/Perm.d.ts +0 -1
  141. package/dist/types/puzzle-geometry/PermOriSet.d.ts +4 -5
  142. package/dist/types/puzzle-geometry/PlatonicGenerator.d.ts +0 -1
  143. package/dist/types/puzzle-geometry/PuzzleGeometry.d.ts +9 -3
  144. package/dist/types/puzzle-geometry/Quat.d.ts +0 -1
  145. package/dist/types/puzzle-geometry/Quat.spec.d.ts +0 -1
  146. package/dist/types/puzzle-geometry/SchreierSims.d.ts +0 -1
  147. package/dist/types/puzzle-geometry/index.d.ts +1 -1
  148. package/dist/types/puzzle-geometry/notation-mapping/FTONotationMapper.d.ts +0 -1
  149. package/dist/types/puzzle-geometry/notation-mapping/FaceRenamingMapper.d.ts +0 -1
  150. package/dist/types/puzzle-geometry/notation-mapping/MegaminxScramblingNotationMapper.d.ts +0 -1
  151. package/dist/types/puzzle-geometry/notation-mapping/NotationMapper.d.ts +3 -2
  152. package/dist/types/puzzle-geometry/notation-mapping/NullMapper.d.ts +0 -1
  153. package/dist/types/puzzle-geometry/notation-mapping/NxNxNCubeMapper.d.ts +0 -1
  154. package/dist/types/puzzle-geometry/notation-mapping/PyraminxNotationMapper.d.ts +0 -1
  155. package/dist/types/puzzle-geometry/notation-mapping/SkewbNotationMapper.d.ts +0 -1
  156. package/dist/types/puzzle-geometry/notation-mapping/index.d.ts +0 -1
  157. package/dist/types/puzzle-geometry/orientcenters.spec.d.ts +0 -1
  158. package/dist/types/puzzles/PuzzleLoader.d.ts +3 -3
  159. package/dist/types/puzzles/async/async-pg3d.d.ts +3 -3
  160. package/dist/types/puzzles/async/lazy-cached-kpuzzle.d.ts +2 -0
  161. package/dist/types/puzzles/customPGPuzzleLoader.d.ts +2 -3
  162. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.json.d.ts +1 -2
  163. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.svg.d.ts +0 -1
  164. package/dist/types/puzzles/implementations/2x2x2/index.d.ts +0 -1
  165. package/dist/types/puzzles/implementations/3x3x3/3x3x3-ll.kpuzzle.svg.d.ts +0 -1
  166. package/dist/types/puzzles/implementations/3x3x3/3x3x3.kpuzzle.svg.d.ts +0 -1
  167. package/dist/types/puzzles/implementations/3x3x3/index.d.ts +0 -1
  168. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.json.d.ts +1 -2
  169. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.svg.d.ts +0 -1
  170. package/dist/types/puzzles/implementations/clock/index.d.ts +0 -1
  171. package/dist/types/puzzles/implementations/fto/index.d.ts +0 -1
  172. package/dist/types/puzzles/implementations/megaminx/index.d.ts +0 -1
  173. package/dist/types/puzzles/implementations/pyraminx/index.d.ts +0 -1
  174. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.json.d.ts +0 -1
  175. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.svg.d.ts +0 -1
  176. package/dist/types/puzzles/implementations/square1/index.d.ts +0 -1
  177. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.json.d.ts +1 -2
  178. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.svg.d.ts +0 -1
  179. package/dist/types/puzzles/index.d.ts +1 -2
  180. package/dist/types/puzzles/stickerings/appearance.d.ts +6 -7
  181. package/dist/types/puzzles/stickerings/cube-stickerings.d.ts +0 -1
  182. package/dist/types/puzzles/stickerings/fto-stickerings.d.ts +0 -1
  183. package/dist/types/puzzles/stickerings/global-custom-stickering-hack.d.ts +0 -1
  184. package/dist/types/puzzles/stickerings/megaminx-stickerings.d.ts +0 -1
  185. package/dist/types/scramble/index.d.ts +0 -1
  186. package/dist/types/search/esm-test-worker.d.ts +0 -1
  187. package/dist/types/search/index.d.ts +0 -1
  188. package/dist/types/search/inside/api.d.ts +6 -7
  189. package/dist/types/search/inside/api.spec.d.ts +0 -1
  190. package/dist/types/search/inside/entry.d.ts +0 -1
  191. package/dist/types/search/inside/inside-worker.d.ts +0 -1
  192. package/dist/types/search/inside/module-entry-path-getter.d.ts +0 -1
  193. package/dist/types/search/inside/module-entry.d.ts +0 -1
  194. package/dist/types/search/inside/solve/addOrientationSuffix.d.ts +0 -1
  195. package/dist/types/search/inside/solve/parseSGS.d.ts +3 -4
  196. package/dist/types/search/inside/solve/puzzles/2x2x2.d.ts +3 -4
  197. package/dist/types/search/inside/solve/puzzles/2x2x2.sgs.json.d.ts +0 -1
  198. package/dist/types/search/inside/solve/puzzles/3x3x3/convert.d.ts +2 -3
  199. package/dist/types/search/inside/solve/puzzles/3x3x3/filter.d.ts +4 -4
  200. package/dist/types/search/inside/solve/puzzles/3x3x3/index.d.ts +3 -4
  201. package/dist/types/search/inside/solve/puzzles/3x3x3/legacy-sgs.d.ts +0 -1
  202. package/dist/types/search/inside/solve/puzzles/3x3x3-inefficient.sgs.json.d.ts +0 -1
  203. package/dist/types/search/inside/solve/puzzles/4x4x4.d.ts +0 -1
  204. package/dist/types/search/inside/solve/puzzles/5x5x5.d.ts +0 -1
  205. package/dist/types/search/inside/solve/puzzles/big-cubes.d.ts +0 -1
  206. package/dist/types/search/inside/solve/puzzles/clock.d.ts +0 -1
  207. package/dist/types/search/inside/solve/puzzles/fto.d.ts +2 -3
  208. package/dist/types/search/inside/solve/puzzles/fto.sgs.json.d.ts +0 -3
  209. package/dist/types/search/inside/solve/puzzles/megaminx.d.ts +2 -3
  210. package/dist/types/search/inside/solve/puzzles/megaminx.sgs.json.d.ts +2 -3
  211. package/dist/types/search/inside/solve/puzzles/pyraminx.d.ts +3 -4
  212. package/dist/types/search/inside/solve/puzzles/pyraminx.sgs.json.d.ts +0 -1
  213. package/dist/types/search/inside/solve/puzzles/sgs-defs.spec.d.ts +0 -1
  214. package/dist/types/search/inside/solve/puzzles/skewb.d.ts +3 -4
  215. package/dist/types/search/inside/solve/puzzles/skewb.sgs.json.d.ts +2 -3
  216. package/dist/types/search/inside/solve/puzzles/sq1.d.ts +0 -1
  217. package/dist/types/search/inside/solve/puzzles/wca-minx.d.ts +0 -1
  218. package/dist/types/search/inside/solve/tremble.d.ts +6 -6
  219. package/dist/types/search/instantiator.d.ts +0 -1
  220. package/dist/types/search/outside.d.ts +6 -7
  221. package/dist/types/search/worker-inside-generated-string.d.ts +1 -2
  222. package/dist/types/stream/index.d.ts +0 -1
  223. package/dist/types/stream/process/ReorientedStream.d.ts +1 -3
  224. package/dist/types/stream/proxy-event.d.ts +0 -1
  225. package/dist/types/stream/twizzle/TwizzleStream.d.ts +0 -1
  226. package/dist/types/stream/twizzle/stream-types.d.ts +0 -1
  227. package/dist/types/stream/websocket-proxy.d.ts +0 -1
  228. package/dist/types/twisty/controllers/AnimationTypes.d.ts +2 -3
  229. package/dist/types/twisty/controllers/RenderScheduler.d.ts +0 -1
  230. package/dist/types/twisty/controllers/TwistyAnimationController.d.ts +0 -1
  231. package/dist/types/twisty/controllers/TwistyPlayerController.d.ts +0 -1
  232. package/dist/types/twisty/controllers/easing.d.ts +0 -1
  233. package/dist/types/twisty/controllers/indexer/AlgDuration.d.ts +0 -1
  234. package/dist/types/twisty/controllers/indexer/AlgIndexer.d.ts +6 -6
  235. package/dist/types/twisty/controllers/indexer/SimpleAlgIndexer.d.ts +7 -7
  236. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexer.d.ts +8 -8
  237. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.d.ts +9 -9
  238. package/dist/types/twisty/controllers/indexer/simultaneous-moves/simul-moves.d.ts +0 -1
  239. package/dist/types/twisty/controllers/indexer/tree/AlgWalker.d.ts +36 -37
  240. package/dist/types/twisty/controllers/indexer/tree/TreeAlgIndexer.d.ts +7 -7
  241. package/dist/types/twisty/controllers/indexer/tree/chunkAlgs.d.ts +0 -1
  242. package/dist/types/twisty/controllers/stream/timeline-move-calculation-draft.d.ts +0 -1
  243. package/dist/types/twisty/heavy-code-imports/3d.d.ts +0 -1
  244. package/dist/types/twisty/heavy-code-imports/dynamic-entries/3d.d.ts +0 -1
  245. package/dist/types/twisty/index.d.ts +1 -2
  246. package/dist/types/twisty/model/PromiseFreshener.d.ts +0 -1
  247. package/dist/types/twisty/model/TwistyPlayerModel.d.ts +6 -7
  248. package/dist/types/twisty/model/UserVisibleErrorTracker.d.ts +0 -1
  249. package/dist/types/twisty/model/helpers.d.ts +0 -1
  250. package/dist/types/twisty/model/props/TwistyProp.d.ts +0 -1
  251. package/dist/types/twisty/model/props/TwistyProp.spec.d.ts +0 -1
  252. package/dist/types/twisty/model/props/TwistyPropDebugger.d.ts +0 -1
  253. package/dist/types/twisty/model/props/general/URLProp.d.ts +0 -1
  254. package/dist/types/twisty/model/props/puzzle/display/FoundationDisplayProp.d.ts +0 -1
  255. package/dist/types/twisty/model/props/puzzle/display/HintFaceletProp.d.ts +0 -1
  256. package/dist/types/twisty/model/props/puzzle/display/SpriteProp.d.ts +0 -1
  257. package/dist/types/twisty/model/props/puzzle/display/StickeringProp.d.ts +0 -1
  258. package/dist/types/twisty/model/props/puzzle/state/AlgProp.d.ts +0 -1
  259. package/dist/types/twisty/model/props/puzzle/state/AlgTransformationProp.d.ts +5 -8
  260. package/dist/types/twisty/model/props/puzzle/state/AnchoredStartProp.d.ts +5 -7
  261. package/dist/types/twisty/model/props/puzzle/state/CatchUpMoveProp.d.ts +0 -1
  262. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesSimplified.d.ts +0 -1
  263. package/dist/types/twisty/model/props/puzzle/state/{CurrentLeavesProp.d.ts → CurrentMoveInfoProp.d.ts} +2 -3
  264. package/dist/types/twisty/model/props/puzzle/state/CurrentStateProp.d.ts +14 -0
  265. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorProp.d.ts +7 -8
  266. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorRequestProp.d.ts +0 -1
  267. package/dist/types/twisty/model/props/puzzle/state/IndexerProp.d.ts +5 -6
  268. package/dist/types/twisty/model/props/puzzle/state/LegacyPositionProp.d.ts +2 -3
  269. package/dist/types/twisty/model/props/puzzle/state/MovePressInputProp.d.ts +0 -1
  270. package/dist/types/twisty/model/props/puzzle/state/NaiveMoveCountProp.d.ts +0 -1
  271. package/dist/types/twisty/model/props/puzzle/state/PuzzleAlgProp.d.ts +4 -5
  272. package/dist/types/twisty/model/props/puzzle/state/SetupAnchorProp.d.ts +0 -1
  273. package/dist/types/twisty/model/props/puzzle/structure/KPuzzleProp.d.ts +10 -0
  274. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDescriptionProp.d.ts +0 -1
  275. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDProp.d.ts +0 -1
  276. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.d.ts +0 -1
  277. package/dist/types/twisty/model/props/puzzle/structure/PuzzleLoaderProp.d.ts +0 -1
  278. package/dist/types/twisty/model/props/timeline/CoarseTimelineInfoProp.d.ts +0 -1
  279. package/dist/types/twisty/model/props/timeline/DetailedTimelineInfoProp.d.ts +0 -1
  280. package/dist/types/twisty/model/props/timeline/PlayingInfoProp.d.ts +0 -1
  281. package/dist/types/twisty/model/props/timeline/TempoScaleProp.d.ts +0 -1
  282. package/dist/types/twisty/model/props/timeline/TimestampRequestProp.d.ts +0 -1
  283. package/dist/types/twisty/model/props/viewer/BackViewProp.d.ts +0 -1
  284. package/dist/types/twisty/model/props/viewer/BackgroundProp.d.ts +0 -1
  285. package/dist/types/twisty/model/props/viewer/ButtonAppearanceProp.d.ts +0 -1
  286. package/dist/types/twisty/model/props/viewer/ControlPanelProp.d.ts +0 -1
  287. package/dist/types/twisty/model/props/viewer/LatitudeLimit.d.ts +0 -1
  288. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesProp.d.ts +0 -1
  289. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesRequestProp.d.ts +0 -1
  290. package/dist/types/twisty/model/props/viewer/TimeRangeProp.d.ts +2 -3
  291. package/dist/types/twisty/model/props/viewer/ViewerLinkProp.d.ts +0 -1
  292. package/dist/types/twisty/model/props/viewer/VisualizationProp.d.ts +0 -1
  293. package/dist/types/twisty/model/props/viewer/VisualizationStrategyProp.d.ts +0 -1
  294. package/dist/types/twisty/views/2D/KPuzzleSVGWrapper.d.ts +17 -0
  295. package/dist/types/twisty/views/2D/Twisty2DPuzzle.css.d.ts +0 -1
  296. package/dist/types/twisty/views/2D/Twisty2DPuzzle.d.ts +4 -4
  297. package/dist/types/twisty/views/2D/Twisty2DPuzzleWrapper.d.ts +0 -1
  298. package/dist/types/twisty/views/2D/Twisty2DSceneWrapper.d.ts +0 -1
  299. package/dist/types/twisty/views/3D/DragTracker.d.ts +0 -1
  300. package/dist/types/twisty/views/3D/RendererPool.d.ts +0 -1
  301. package/dist/types/twisty/views/3D/TAU.d.ts +0 -1
  302. package/dist/types/twisty/views/3D/Twisty3DPuzzleWrapper.d.ts +0 -1
  303. package/dist/types/twisty/views/3D/Twisty3DRenderTarget.d.ts +0 -1
  304. package/dist/types/twisty/views/3D/Twisty3DScene.d.ts +0 -1
  305. package/dist/types/twisty/views/3D/Twisty3DSceneWrapper.d.ts +0 -1
  306. package/dist/types/twisty/views/3D/Twisty3DVantage.css.d.ts +0 -1
  307. package/dist/types/twisty/views/3D/Twisty3DVantage.d.ts +0 -1
  308. package/dist/types/twisty/views/3D/TwistyOrbitControls.d.ts +0 -1
  309. package/dist/types/twisty/views/3D/TwistyOrbitControls.spec.d.ts +0 -1
  310. package/dist/types/twisty/views/3D/puzzles/Cube3D.d.ts +4 -5
  311. package/dist/types/twisty/views/3D/puzzles/PG3D.d.ts +5 -6
  312. package/dist/types/twisty/views/3D/puzzles/Twisty3DPuzzle.d.ts +0 -1
  313. package/dist/types/twisty/views/ClassListManager.d.ts +0 -1
  314. package/dist/types/twisty/views/ManagedCustomElement.d.ts +0 -1
  315. package/dist/types/twisty/views/TwistyAlgEditor/LeafTokens.d.ts +0 -1
  316. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.d.ts +0 -1
  317. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.d.ts +0 -1
  318. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.spec.d.ts +0 -1
  319. package/dist/types/twisty/views/TwistyAlgEditor/model.d.ts +0 -1
  320. package/dist/types/twisty/views/TwistyAlgViewer.css.d.ts +0 -1
  321. package/dist/types/twisty/views/TwistyAlgViewer.d.ts +0 -1
  322. package/dist/types/twisty/views/TwistyPlayer.css.d.ts +0 -1
  323. package/dist/types/twisty/views/TwistyPlayer.d.ts +0 -1
  324. package/dist/types/twisty/views/TwistyPlayerSettable.d.ts +0 -1
  325. package/dist/types/twisty/views/TwistyViewerWrapper.css.d.ts +0 -1
  326. package/dist/types/twisty/views/canvas.d.ts +0 -1
  327. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.css.d.ts +0 -1
  328. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.d.ts +0 -1
  329. package/dist/types/twisty/views/control-panel/TwistyScrubber.css.d.ts +0 -1
  330. package/dist/types/twisty/views/control-panel/TwistyScrubberV2.d.ts +0 -1
  331. package/dist/types/twisty/views/control-panel/webkit-fullscreen.d.ts +0 -1
  332. package/dist/types/twisty/views/document.d.ts +0 -1
  333. package/dist/types/twisty/views/node-custom-element-shims.d.ts +0 -1
  334. package/dist/types/twisty/views/screenshot.d.ts +0 -1
  335. package/dist/types/twisty/views/stream/TwistyStreamSource.css.d.ts +0 -1
  336. package/dist/types/twisty/views/stream/TwistyStreamSource.d.ts +0 -1
  337. package/dist/types/vendor/comlink-everywhere/inside/index.d.ts +0 -1
  338. package/dist/types/vendor/comlink-everywhere/inside/node.d.ts +0 -1
  339. package/dist/types/vendor/comlink-everywhere/outside/index.d.ts +0 -1
  340. package/dist/types/vendor/comlink-everywhere/outside/node.d.ts +0 -1
  341. package/dist/types/vendor/cstimer/src/js/lib/mathlib.d.ts +0 -1
  342. package/dist/types/vendor/cstimer/src/js/scramble/scramble_444.d.ts +0 -1
  343. package/dist/types/vendor/min2phase/gwt.d.ts +0 -1
  344. package/dist/types/vendor/p-lazy/p-lazy.d.ts +0 -1
  345. package/dist/types/vendor/random-uint-below/get-random-values.d.ts +0 -1
  346. package/dist/types/vendor/random-uint-below/index.d.ts +0 -1
  347. package/dist/types/vendor/random-uint-below/random-choice.d.ts +0 -1
  348. package/dist/types/vendor/random-uint-below/random53BitValue.d.ts +0 -1
  349. package/dist/types/vendor/sq12phase/scramble_sq1.d.ts +0 -1
  350. package/dist/types/vendor/three/examples/jsm/libs/stats.modified.module.d.ts +0 -1
  351. package/dist/types/vendor/unsafe-raw-aes/unsafe-raw-aes.d.ts +0 -1
  352. package/package.json +3 -4
  353. package/dist/bin/order.js +0 -16675
  354. package/dist/bin/order.js.map +0 -7
  355. package/dist/bin/puzzle-geometry-bin.js +0 -5444
  356. package/dist/bin/puzzle-geometry-bin.js.map +0 -7
  357. package/dist/bundle-global/cubing.bundle-global.js +0 -10432
  358. package/dist/esm/2x2x2.kpuzzle.json-JOGUSQ4N.js.map +0 -7
  359. package/dist/esm/2x2x2.sgs.json-FRBWMMA7.js.map +0 -7
  360. package/dist/esm/chunk-DK6PXBB2.js.map +0 -7
  361. package/dist/esm/chunk-DPMEZY7V.js.map +0 -7
  362. package/dist/esm/chunk-FK2SCC3Z.js.map +0 -7
  363. package/dist/esm/chunk-JZWB7AIU.js.map +0 -7
  364. package/dist/esm/chunk-N3RNWU5T.js.map +0 -7
  365. package/dist/esm/chunk-PUPUQWJC.js.map +0 -7
  366. package/dist/esm/chunk-X6JHXPDX.js +0 -2359
  367. package/dist/esm/chunk-X6JHXPDX.js.map +0 -7
  368. package/dist/esm/chunk-XVZOMB6J.js.map +0 -7
  369. package/dist/esm/clock.kpuzzle.json-EKWRMHJM.js.map +0 -7
  370. package/dist/esm/entry-L6CE2HLF.js.map +0 -7
  371. package/dist/esm/fto.sgs.json-62YNULOK.js.map +0 -7
  372. package/dist/esm/megaminx.sgs.json-PRL46G5J.js +0 -16
  373. package/dist/esm/skewb.sgs.json-FWHYACJG.js +0 -16
  374. package/dist/esm/sq1-hyperorbit.kpuzzle.json-N3FGCPML.js.map +0 -7
  375. package/dist/esm/worker-inside-generated-string-OWJA5IIQ.js +0 -3450
  376. package/dist/esm/worker-inside-generated-string-OWJA5IIQ.js.map +0 -7
  377. package/dist/types/alg/Alg.d.ts.map +0 -1
  378. package/dist/types/alg/Alg.spec.d.ts.map +0 -1
  379. package/dist/types/alg/AlgBuilder.d.ts.map +0 -1
  380. package/dist/types/alg/Serializable.d.ts.map +0 -1
  381. package/dist/types/alg/common.d.ts.map +0 -1
  382. package/dist/types/alg/debug.d.ts.map +0 -1
  383. package/dist/types/alg/example.d.ts.map +0 -1
  384. package/dist/types/alg/index.d.ts.map +0 -1
  385. package/dist/types/alg/is.d.ts.map +0 -1
  386. package/dist/types/alg/iteration.d.ts.map +0 -1
  387. package/dist/types/alg/keyboard.d.ts.map +0 -1
  388. package/dist/types/alg/limits.d.ts.map +0 -1
  389. package/dist/types/alg/operation.d.ts.map +0 -1
  390. package/dist/types/alg/operation.spec.d.ts.map +0 -1
  391. package/dist/types/alg/parse.d.ts.map +0 -1
  392. package/dist/types/alg/parse.spec.d.ts.map +0 -1
  393. package/dist/types/alg/test/alg-comparison.d.ts.map +0 -1
  394. package/dist/types/alg/test/alg.spec.d.ts.map +0 -1
  395. package/dist/types/alg/traversal.d.ts.map +0 -1
  396. package/dist/types/alg/units/QuantumWithAmount.d.ts.map +0 -1
  397. package/dist/types/alg/units/Unit.d.ts.map +0 -1
  398. package/dist/types/alg/units/containers/Commutator.d.ts.map +0 -1
  399. package/dist/types/alg/units/containers/Conjugate.d.ts.map +0 -1
  400. package/dist/types/alg/units/containers/Grouping.d.ts.map +0 -1
  401. package/dist/types/alg/units/index.d.ts.map +0 -1
  402. package/dist/types/alg/units/leaves/LineComment.d.ts.map +0 -1
  403. package/dist/types/alg/units/leaves/LineComment.spec.d.ts.map +0 -1
  404. package/dist/types/alg/units/leaves/Move.d.ts.map +0 -1
  405. package/dist/types/alg/units/leaves/Move.spec.d.ts.map +0 -1
  406. package/dist/types/alg/units/leaves/Newline.d.ts.map +0 -1
  407. package/dist/types/alg/units/leaves/Pause.d.ts.map +0 -1
  408. package/dist/types/alg/url.d.ts.map +0 -1
  409. package/dist/types/alg/url.spec.d.ts.map +0 -1
  410. package/dist/types/alg/validation.d.ts.map +0 -1
  411. package/dist/types/alg/warnOnce.d.ts.map +0 -1
  412. package/dist/types/bluetooth/connect/index.d.ts.map +0 -1
  413. package/dist/types/bluetooth/debug.d.ts.map +0 -1
  414. package/dist/types/bluetooth/index.d.ts.map +0 -1
  415. package/dist/types/bluetooth/keyboard.d.ts.map +0 -1
  416. package/dist/types/bluetooth/smart-puzzle/Heykube.d.ts.map +0 -1
  417. package/dist/types/bluetooth/smart-puzzle/bluetooth-puzzle.d.ts.map +0 -1
  418. package/dist/types/bluetooth/smart-puzzle/connect.d.ts.map +0 -1
  419. package/dist/types/bluetooth/smart-puzzle/endianness.d.ts.map +0 -1
  420. package/dist/types/bluetooth/smart-puzzle/gan.d.ts.map +0 -1
  421. package/dist/types/bluetooth/smart-puzzle/giiker.d.ts.map +0 -1
  422. package/dist/types/bluetooth/smart-puzzle/giiker.spec.d.ts.map +0 -1
  423. package/dist/types/bluetooth/smart-puzzle/gocube.d.ts.map +0 -1
  424. package/dist/types/bluetooth/smart-robot/GanRobot.d.ts.map +0 -1
  425. package/dist/types/bluetooth/smart-robot/index.d.ts.map +0 -1
  426. package/dist/types/bluetooth/smart-timer/GanTimer.d.ts.map +0 -1
  427. package/dist/types/bluetooth/smart-timer/index.d.ts.map +0 -1
  428. package/dist/types/bluetooth/transformer.d.ts.map +0 -1
  429. package/dist/types/cubing.bundle-global.d.ts.map +0 -1
  430. package/dist/types/cubing.bundle-global.exports.d.ts.map +0 -1
  431. package/dist/types/esm-test-worker.d.ts.map +0 -1
  432. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.d.ts.map +0 -1
  433. package/dist/types/kpuzzle/3x3x3/3x3x3.kpuzzle.json.spec.d.ts.map +0 -1
  434. package/dist/types/kpuzzle/canon.spec.d.ts +0 -2
  435. package/dist/types/kpuzzle/canon.spec.d.ts.map +0 -1
  436. package/dist/types/kpuzzle/canonicalize.d.ts +0 -55
  437. package/dist/types/kpuzzle/canonicalize.d.ts.map +0 -1
  438. package/dist/types/kpuzzle/definition_types.d.ts +0 -19
  439. package/dist/types/kpuzzle/definition_types.d.ts.map +0 -1
  440. package/dist/types/kpuzzle/index.d.ts.map +0 -1
  441. package/dist/types/kpuzzle/kpuzzle.d.ts +0 -17
  442. package/dist/types/kpuzzle/kpuzzle.d.ts.map +0 -1
  443. package/dist/types/kpuzzle/kpuzzle.spec.d.ts +0 -2
  444. package/dist/types/kpuzzle/kpuzzle.spec.d.ts.map +0 -1
  445. package/dist/types/kpuzzle/move_notation.d.ts +0 -6
  446. package/dist/types/kpuzzle/move_notation.d.ts.map +0 -1
  447. package/dist/types/kpuzzle/parser/index.d.ts +0 -2
  448. package/dist/types/kpuzzle/parser/index.d.ts.map +0 -1
  449. package/dist/types/kpuzzle/parser/parser-peggy.d.ts +0 -15
  450. package/dist/types/kpuzzle/parser/parser-peggy.d.ts.map +0 -1
  451. package/dist/types/kpuzzle/parser/parser-shim.d.ts +0 -4
  452. package/dist/types/kpuzzle/parser/parser-shim.d.ts.map +0 -1
  453. package/dist/types/kpuzzle/parser/parser.d.ts +0 -1
  454. package/dist/types/kpuzzle/parser/parser.d.ts.map +0 -1
  455. package/dist/types/kpuzzle/prunetable.spec.d.ts +0 -2
  456. package/dist/types/kpuzzle/prunetable.spec.d.ts.map +0 -1
  457. package/dist/types/kpuzzle/pruningtable.d.ts +0 -16
  458. package/dist/types/kpuzzle/pruningtable.d.ts.map +0 -1
  459. package/dist/types/kpuzzle/puzzle-orientation.d.ts +0 -5
  460. package/dist/types/kpuzzle/puzzle-orientation.d.ts.map +0 -1
  461. package/dist/types/kpuzzle/svg.d.ts +0 -18
  462. package/dist/types/kpuzzle/svg.d.ts.map +0 -1
  463. package/dist/types/kpuzzle/transformations.d.ts +0 -13
  464. package/dist/types/kpuzzle/transformations.d.ts.map +0 -1
  465. package/dist/types/kpuzzle/transformations.spec.d.ts +0 -2
  466. package/dist/types/kpuzzle/transformations.spec.d.ts.map +0 -1
  467. package/dist/types/notation/CountAnimatedLeaves.d.ts.map +0 -1
  468. package/dist/types/notation/CountMoves.d.ts.map +0 -1
  469. package/dist/types/notation/index.d.ts.map +0 -1
  470. package/dist/types/protocol/binary/binary3x3x3.d.ts.map +0 -1
  471. package/dist/types/protocol/binary/binary3x3x3.spec.d.ts.map +0 -1
  472. package/dist/types/protocol/binary/hex.d.ts.map +0 -1
  473. package/dist/types/protocol/binary/hex.spec.d.ts.map +0 -1
  474. package/dist/types/protocol/binary/orbit-indexing.d.ts.map +0 -1
  475. package/dist/types/protocol/binary/orbit-indexing.spec.d.ts.map +0 -1
  476. package/dist/types/protocol/binary/puzzle-orientation.d.ts.map +0 -1
  477. package/dist/types/protocol/index.d.ts.map +0 -1
  478. package/dist/types/puzzle-geometry/FaceNameSwizzler.d.ts.map +0 -1
  479. package/dist/types/puzzle-geometry/Options.d.ts.map +0 -1
  480. package/dist/types/puzzle-geometry/PGPuzzles.d.ts.map +0 -1
  481. package/dist/types/puzzle-geometry/PGPuzzles.spec.d.ts.map +0 -1
  482. package/dist/types/puzzle-geometry/Perm.d.ts.map +0 -1
  483. package/dist/types/puzzle-geometry/PermOriSet.d.ts.map +0 -1
  484. package/dist/types/puzzle-geometry/PlatonicGenerator.d.ts.map +0 -1
  485. package/dist/types/puzzle-geometry/PuzzleGeometry.d.ts.map +0 -1
  486. package/dist/types/puzzle-geometry/Quat.d.ts.map +0 -1
  487. package/dist/types/puzzle-geometry/Quat.spec.d.ts.map +0 -1
  488. package/dist/types/puzzle-geometry/SchreierSims.d.ts.map +0 -1
  489. package/dist/types/puzzle-geometry/index.d.ts.map +0 -1
  490. package/dist/types/puzzle-geometry/interfaces.d.ts +0 -6
  491. package/dist/types/puzzle-geometry/interfaces.d.ts.map +0 -1
  492. package/dist/types/puzzle-geometry/notation-mapping/FTONotationMapper.d.ts.map +0 -1
  493. package/dist/types/puzzle-geometry/notation-mapping/FaceRenamingMapper.d.ts.map +0 -1
  494. package/dist/types/puzzle-geometry/notation-mapping/MegaminxScramblingNotationMapper.d.ts.map +0 -1
  495. package/dist/types/puzzle-geometry/notation-mapping/NotationMapper.d.ts.map +0 -1
  496. package/dist/types/puzzle-geometry/notation-mapping/NullMapper.d.ts.map +0 -1
  497. package/dist/types/puzzle-geometry/notation-mapping/NxNxNCubeMapper.d.ts.map +0 -1
  498. package/dist/types/puzzle-geometry/notation-mapping/PyraminxNotationMapper.d.ts.map +0 -1
  499. package/dist/types/puzzle-geometry/notation-mapping/SkewbNotationMapper.d.ts.map +0 -1
  500. package/dist/types/puzzle-geometry/notation-mapping/index.d.ts.map +0 -1
  501. package/dist/types/puzzle-geometry/orientcenters.spec.d.ts.map +0 -1
  502. package/dist/types/puzzles/PuzzleLoader.d.ts.map +0 -1
  503. package/dist/types/puzzles/async/async-pg3d.d.ts.map +0 -1
  504. package/dist/types/puzzles/customPGPuzzleLoader.d.ts.map +0 -1
  505. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.json.d.ts.map +0 -1
  506. package/dist/types/puzzles/implementations/2x2x2/2x2x2.kpuzzle.svg.d.ts.map +0 -1
  507. package/dist/types/puzzles/implementations/2x2x2/index.d.ts.map +0 -1
  508. package/dist/types/puzzles/implementations/3x3x3/3x3x3-ll.kpuzzle.svg.d.ts.map +0 -1
  509. package/dist/types/puzzles/implementations/3x3x3/3x3x3.kpuzzle.svg.d.ts.map +0 -1
  510. package/dist/types/puzzles/implementations/3x3x3/index.d.ts.map +0 -1
  511. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.json.d.ts.map +0 -1
  512. package/dist/types/puzzles/implementations/clock/clock.kpuzzle.svg.d.ts.map +0 -1
  513. package/dist/types/puzzles/implementations/clock/index.d.ts.map +0 -1
  514. package/dist/types/puzzles/implementations/fto/index.d.ts.map +0 -1
  515. package/dist/types/puzzles/implementations/megaminx/index.d.ts.map +0 -1
  516. package/dist/types/puzzles/implementations/pyraminx/index.d.ts.map +0 -1
  517. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.json.d.ts.map +0 -1
  518. package/dist/types/puzzles/implementations/pyraminx/pyraminx.kpuzzle.svg.d.ts.map +0 -1
  519. package/dist/types/puzzles/implementations/square1/index.d.ts.map +0 -1
  520. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.json.d.ts.map +0 -1
  521. package/dist/types/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.svg.d.ts.map +0 -1
  522. package/dist/types/puzzles/index.d.ts.map +0 -1
  523. package/dist/types/puzzles/stickerings/appearance.d.ts.map +0 -1
  524. package/dist/types/puzzles/stickerings/cube-stickerings.d.ts.map +0 -1
  525. package/dist/types/puzzles/stickerings/fto-stickerings.d.ts.map +0 -1
  526. package/dist/types/puzzles/stickerings/global-custom-stickering-hack.d.ts.map +0 -1
  527. package/dist/types/puzzles/stickerings/megaminx-stickerings.d.ts.map +0 -1
  528. package/dist/types/scramble/index.d.ts.map +0 -1
  529. package/dist/types/search/esm-test-worker.d.ts.map +0 -1
  530. package/dist/types/search/index.d.ts.map +0 -1
  531. package/dist/types/search/inside/api.d.ts.map +0 -1
  532. package/dist/types/search/inside/api.spec.d.ts.map +0 -1
  533. package/dist/types/search/inside/entry.d.ts.map +0 -1
  534. package/dist/types/search/inside/inside-worker.d.ts.map +0 -1
  535. package/dist/types/search/inside/module-entry-path-getter.d.ts.map +0 -1
  536. package/dist/types/search/inside/module-entry.d.ts.map +0 -1
  537. package/dist/types/search/inside/solve/addOrientationSuffix.d.ts.map +0 -1
  538. package/dist/types/search/inside/solve/parseSGS.d.ts.map +0 -1
  539. package/dist/types/search/inside/solve/puzzles/2x2x2.d.ts.map +0 -1
  540. package/dist/types/search/inside/solve/puzzles/2x2x2.sgs.json.d.ts.map +0 -1
  541. package/dist/types/search/inside/solve/puzzles/3x3x3/convert.d.ts.map +0 -1
  542. package/dist/types/search/inside/solve/puzzles/3x3x3/filter.d.ts.map +0 -1
  543. package/dist/types/search/inside/solve/puzzles/3x3x3/index.d.ts.map +0 -1
  544. package/dist/types/search/inside/solve/puzzles/3x3x3/legacy-sgs.d.ts.map +0 -1
  545. package/dist/types/search/inside/solve/puzzles/3x3x3-inefficient.sgs.json.d.ts.map +0 -1
  546. package/dist/types/search/inside/solve/puzzles/4x4x4.d.ts.map +0 -1
  547. package/dist/types/search/inside/solve/puzzles/5x5x5.d.ts.map +0 -1
  548. package/dist/types/search/inside/solve/puzzles/big-cubes.d.ts.map +0 -1
  549. package/dist/types/search/inside/solve/puzzles/clock.d.ts.map +0 -1
  550. package/dist/types/search/inside/solve/puzzles/fto.d.ts.map +0 -1
  551. package/dist/types/search/inside/solve/puzzles/fto.sgs.json.d.ts.map +0 -1
  552. package/dist/types/search/inside/solve/puzzles/megaminx.d.ts.map +0 -1
  553. package/dist/types/search/inside/solve/puzzles/megaminx.sgs.json.d.ts.map +0 -1
  554. package/dist/types/search/inside/solve/puzzles/pyraminx.d.ts.map +0 -1
  555. package/dist/types/search/inside/solve/puzzles/pyraminx.sgs.json.d.ts.map +0 -1
  556. package/dist/types/search/inside/solve/puzzles/sgs-defs.spec.d.ts.map +0 -1
  557. package/dist/types/search/inside/solve/puzzles/skewb.d.ts.map +0 -1
  558. package/dist/types/search/inside/solve/puzzles/skewb.sgs.json.d.ts.map +0 -1
  559. package/dist/types/search/inside/solve/puzzles/sq1.d.ts.map +0 -1
  560. package/dist/types/search/inside/solve/puzzles/wca-minx.d.ts.map +0 -1
  561. package/dist/types/search/inside/solve/tremble.d.ts.map +0 -1
  562. package/dist/types/search/instantiator.d.ts.map +0 -1
  563. package/dist/types/search/outside.d.ts.map +0 -1
  564. package/dist/types/search/worker-inside-generated-string.d.ts.map +0 -1
  565. package/dist/types/stream/index.d.ts.map +0 -1
  566. package/dist/types/stream/process/ReorientedStream.d.ts.map +0 -1
  567. package/dist/types/stream/proxy-event.d.ts.map +0 -1
  568. package/dist/types/stream/twizzle/TwizzleStream.d.ts.map +0 -1
  569. package/dist/types/stream/twizzle/stream-types.d.ts.map +0 -1
  570. package/dist/types/stream/websocket-proxy.d.ts.map +0 -1
  571. package/dist/types/twisty/controllers/AnimationTypes.d.ts.map +0 -1
  572. package/dist/types/twisty/controllers/RenderScheduler.d.ts.map +0 -1
  573. package/dist/types/twisty/controllers/TwistyAnimationController.d.ts.map +0 -1
  574. package/dist/types/twisty/controllers/TwistyPlayerController.d.ts.map +0 -1
  575. package/dist/types/twisty/controllers/easing.d.ts.map +0 -1
  576. package/dist/types/twisty/controllers/indexer/AlgDuration.d.ts.map +0 -1
  577. package/dist/types/twisty/controllers/indexer/AlgIndexer.d.ts.map +0 -1
  578. package/dist/types/twisty/controllers/indexer/SimpleAlgIndexer.d.ts.map +0 -1
  579. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexer.d.ts.map +0 -1
  580. package/dist/types/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.d.ts.map +0 -1
  581. package/dist/types/twisty/controllers/indexer/simultaneous-moves/simul-moves.d.ts.map +0 -1
  582. package/dist/types/twisty/controllers/indexer/tree/AlgWalker.d.ts.map +0 -1
  583. package/dist/types/twisty/controllers/indexer/tree/TreeAlgIndexer.d.ts.map +0 -1
  584. package/dist/types/twisty/controllers/indexer/tree/chunkAlgs.d.ts.map +0 -1
  585. package/dist/types/twisty/controllers/stream/timeline-move-calculation-draft.d.ts.map +0 -1
  586. package/dist/types/twisty/heavy-code-imports/3d.d.ts.map +0 -1
  587. package/dist/types/twisty/heavy-code-imports/dynamic-entries/3d.d.ts.map +0 -1
  588. package/dist/types/twisty/index.d.ts.map +0 -1
  589. package/dist/types/twisty/model/PromiseFreshener.d.ts.map +0 -1
  590. package/dist/types/twisty/model/TwistyPlayerModel.d.ts.map +0 -1
  591. package/dist/types/twisty/model/UserVisibleErrorTracker.d.ts.map +0 -1
  592. package/dist/types/twisty/model/helpers.d.ts.map +0 -1
  593. package/dist/types/twisty/model/props/TwistyProp.d.ts.map +0 -1
  594. package/dist/types/twisty/model/props/TwistyProp.spec.d.ts.map +0 -1
  595. package/dist/types/twisty/model/props/TwistyPropDebugger.d.ts.map +0 -1
  596. package/dist/types/twisty/model/props/general/URLProp.d.ts.map +0 -1
  597. package/dist/types/twisty/model/props/puzzle/display/FoundationDisplayProp.d.ts.map +0 -1
  598. package/dist/types/twisty/model/props/puzzle/display/HintFaceletProp.d.ts.map +0 -1
  599. package/dist/types/twisty/model/props/puzzle/display/SpriteProp.d.ts.map +0 -1
  600. package/dist/types/twisty/model/props/puzzle/display/StickeringProp.d.ts.map +0 -1
  601. package/dist/types/twisty/model/props/puzzle/state/AlgProp.d.ts.map +0 -1
  602. package/dist/types/twisty/model/props/puzzle/state/AlgTransformationProp.d.ts.map +0 -1
  603. package/dist/types/twisty/model/props/puzzle/state/AnchoredStartProp.d.ts.map +0 -1
  604. package/dist/types/twisty/model/props/puzzle/state/CatchUpMoveProp.d.ts.map +0 -1
  605. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesProp.d.ts.map +0 -1
  606. package/dist/types/twisty/model/props/puzzle/state/CurrentLeavesSimplified.d.ts.map +0 -1
  607. package/dist/types/twisty/model/props/puzzle/state/CurrentTransformationProp.d.ts +0 -15
  608. package/dist/types/twisty/model/props/puzzle/state/CurrentTransformationProp.d.ts.map +0 -1
  609. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorProp.d.ts.map +0 -1
  610. package/dist/types/twisty/model/props/puzzle/state/IndexerConstructorRequestProp.d.ts.map +0 -1
  611. package/dist/types/twisty/model/props/puzzle/state/IndexerProp.d.ts.map +0 -1
  612. package/dist/types/twisty/model/props/puzzle/state/LegacyPositionProp.d.ts.map +0 -1
  613. package/dist/types/twisty/model/props/puzzle/state/MovePressInputProp.d.ts.map +0 -1
  614. package/dist/types/twisty/model/props/puzzle/state/NaiveMoveCountProp.d.ts.map +0 -1
  615. package/dist/types/twisty/model/props/puzzle/state/PuzzleAlgProp.d.ts.map +0 -1
  616. package/dist/types/twisty/model/props/puzzle/state/SetupAnchorProp.d.ts.map +0 -1
  617. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDefProp.d.ts +0 -11
  618. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDefProp.d.ts.map +0 -1
  619. package/dist/types/twisty/model/props/puzzle/structure/PuzzleDescriptionProp.d.ts.map +0 -1
  620. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDProp.d.ts.map +0 -1
  621. package/dist/types/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.d.ts.map +0 -1
  622. package/dist/types/twisty/model/props/puzzle/structure/PuzzleLoaderProp.d.ts.map +0 -1
  623. package/dist/types/twisty/model/props/timeline/CoarseTimelineInfoProp.d.ts.map +0 -1
  624. package/dist/types/twisty/model/props/timeline/DetailedTimelineInfoProp.d.ts.map +0 -1
  625. package/dist/types/twisty/model/props/timeline/PlayingInfoProp.d.ts.map +0 -1
  626. package/dist/types/twisty/model/props/timeline/TempoScaleProp.d.ts.map +0 -1
  627. package/dist/types/twisty/model/props/timeline/TimestampRequestProp.d.ts.map +0 -1
  628. package/dist/types/twisty/model/props/viewer/BackViewProp.d.ts.map +0 -1
  629. package/dist/types/twisty/model/props/viewer/BackgroundProp.d.ts.map +0 -1
  630. package/dist/types/twisty/model/props/viewer/ButtonAppearanceProp.d.ts.map +0 -1
  631. package/dist/types/twisty/model/props/viewer/ControlPanelProp.d.ts.map +0 -1
  632. package/dist/types/twisty/model/props/viewer/LatitudeLimit.d.ts.map +0 -1
  633. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesProp.d.ts.map +0 -1
  634. package/dist/types/twisty/model/props/viewer/OrbitCoordinatesRequestProp.d.ts.map +0 -1
  635. package/dist/types/twisty/model/props/viewer/TimeRangeProp.d.ts.map +0 -1
  636. package/dist/types/twisty/model/props/viewer/ViewerLinkProp.d.ts.map +0 -1
  637. package/dist/types/twisty/model/props/viewer/VisualizationProp.d.ts.map +0 -1
  638. package/dist/types/twisty/model/props/viewer/VisualizationStrategyProp.d.ts.map +0 -1
  639. package/dist/types/twisty/views/2D/Twisty2DPuzzle.css.d.ts.map +0 -1
  640. package/dist/types/twisty/views/2D/Twisty2DPuzzle.d.ts.map +0 -1
  641. package/dist/types/twisty/views/2D/Twisty2DPuzzleWrapper.d.ts.map +0 -1
  642. package/dist/types/twisty/views/2D/Twisty2DSceneWrapper.d.ts.map +0 -1
  643. package/dist/types/twisty/views/3D/DragTracker.d.ts.map +0 -1
  644. package/dist/types/twisty/views/3D/RendererPool.d.ts.map +0 -1
  645. package/dist/types/twisty/views/3D/TAU.d.ts.map +0 -1
  646. package/dist/types/twisty/views/3D/Twisty3DPuzzleWrapper.d.ts.map +0 -1
  647. package/dist/types/twisty/views/3D/Twisty3DRenderTarget.d.ts.map +0 -1
  648. package/dist/types/twisty/views/3D/Twisty3DScene.d.ts.map +0 -1
  649. package/dist/types/twisty/views/3D/Twisty3DSceneWrapper.d.ts.map +0 -1
  650. package/dist/types/twisty/views/3D/Twisty3DVantage.css.d.ts.map +0 -1
  651. package/dist/types/twisty/views/3D/Twisty3DVantage.d.ts.map +0 -1
  652. package/dist/types/twisty/views/3D/TwistyOrbitControls.d.ts.map +0 -1
  653. package/dist/types/twisty/views/3D/TwistyOrbitControls.spec.d.ts.map +0 -1
  654. package/dist/types/twisty/views/3D/puzzles/Cube3D.d.ts.map +0 -1
  655. package/dist/types/twisty/views/3D/puzzles/KPuzzleWrapper.d.ts +0 -48
  656. package/dist/types/twisty/views/3D/puzzles/KPuzzleWrapper.d.ts.map +0 -1
  657. package/dist/types/twisty/views/3D/puzzles/PG3D.d.ts.map +0 -1
  658. package/dist/types/twisty/views/3D/puzzles/Twisty3DPuzzle.d.ts.map +0 -1
  659. package/dist/types/twisty/views/ClassListManager.d.ts.map +0 -1
  660. package/dist/types/twisty/views/ManagedCustomElement.d.ts.map +0 -1
  661. package/dist/types/twisty/views/TwistyAlgEditor/LeafTokens.d.ts.map +0 -1
  662. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.d.ts.map +0 -1
  663. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.d.ts.map +0 -1
  664. package/dist/types/twisty/views/TwistyAlgEditor/TwistyAlgEditor.spec.d.ts.map +0 -1
  665. package/dist/types/twisty/views/TwistyAlgEditor/model.d.ts.map +0 -1
  666. package/dist/types/twisty/views/TwistyAlgViewer.css.d.ts.map +0 -1
  667. package/dist/types/twisty/views/TwistyAlgViewer.d.ts.map +0 -1
  668. package/dist/types/twisty/views/TwistyPlayer.css.d.ts.map +0 -1
  669. package/dist/types/twisty/views/TwistyPlayer.d.ts.map +0 -1
  670. package/dist/types/twisty/views/TwistyPlayerSettable.d.ts.map +0 -1
  671. package/dist/types/twisty/views/TwistyViewerWrapper.css.d.ts.map +0 -1
  672. package/dist/types/twisty/views/canvas.d.ts.map +0 -1
  673. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.css.d.ts.map +0 -1
  674. package/dist/types/twisty/views/control-panel/TwistyButtonsV2.d.ts.map +0 -1
  675. package/dist/types/twisty/views/control-panel/TwistyScrubber.css.d.ts.map +0 -1
  676. package/dist/types/twisty/views/control-panel/TwistyScrubberV2.d.ts.map +0 -1
  677. package/dist/types/twisty/views/control-panel/webkit-fullscreen.d.ts.map +0 -1
  678. package/dist/types/twisty/views/document.d.ts.map +0 -1
  679. package/dist/types/twisty/views/node-custom-element-shims.d.ts.map +0 -1
  680. package/dist/types/twisty/views/screenshot.d.ts.map +0 -1
  681. package/dist/types/twisty/views/stream/TwistyStreamSource.css.d.ts.map +0 -1
  682. package/dist/types/twisty/views/stream/TwistyStreamSource.d.ts.map +0 -1
  683. package/dist/types/vendor/comlink-everywhere/inside/index.d.ts.map +0 -1
  684. package/dist/types/vendor/comlink-everywhere/inside/node.d.ts.map +0 -1
  685. package/dist/types/vendor/comlink-everywhere/outside/index.d.ts.map +0 -1
  686. package/dist/types/vendor/comlink-everywhere/outside/node.d.ts.map +0 -1
  687. package/dist/types/vendor/cstimer/src/js/lib/mathlib.d.ts.map +0 -1
  688. package/dist/types/vendor/cstimer/src/js/scramble/scramble_444.d.ts.map +0 -1
  689. package/dist/types/vendor/min2phase/gwt.d.ts.map +0 -1
  690. package/dist/types/vendor/p-lazy/p-lazy.d.ts.map +0 -1
  691. package/dist/types/vendor/random-uint-below/get-random-values.d.ts.map +0 -1
  692. package/dist/types/vendor/random-uint-below/index.d.ts.map +0 -1
  693. package/dist/types/vendor/random-uint-below/random-choice.d.ts.map +0 -1
  694. package/dist/types/vendor/random-uint-below/random53BitValue.d.ts.map +0 -1
  695. package/dist/types/vendor/sq12phase/scramble_sq1.d.ts.map +0 -1
  696. package/dist/types/vendor/three/examples/jsm/libs/stats.modified.module.d.ts.map +0 -1
  697. package/dist/types/vendor/unsafe-raw-aes/unsafe-raw-aes.d.ts.map +0 -1
  698. package/docs/.DS_Store +0 -0
  699. package/docs/CNAME +0 -1
  700. package/docs/cubing/.DS_Store +0 -0
  701. package/docs/cubing/alg/index.html +0 -174
  702. package/docs/cubing/api/index.html +0 -158
  703. package/docs/cubing/index.html +0 -191
  704. package/docs/cubing/scramble/index.html +0 -138
  705. package/docs/cubing/twisty/index.html +0 -329
  706. package/docs/favicon.ico +0 -0
  707. package/docs/index.html +0 -20
  708. package/docs/main.css +0 -193
  709. package/src/cubing/.DS_Store +0 -0
  710. package/src/cubing/alg/Alg.spec.ts +0 -10
  711. package/src/cubing/alg/Alg.ts +0 -290
  712. package/src/cubing/alg/AlgBuilder.ts +0 -33
  713. package/src/cubing/alg/Serializable.ts +0 -29
  714. package/src/cubing/alg/common.ts +0 -59
  715. package/src/cubing/alg/debug.ts +0 -27
  716. package/src/cubing/alg/example.ts +0 -152
  717. package/src/cubing/alg/index.ts +0 -21
  718. package/src/cubing/alg/is.ts +0 -38
  719. package/src/cubing/alg/iteration.ts +0 -45
  720. package/src/cubing/alg/keyboard.ts +0 -48
  721. package/src/cubing/alg/limits.ts +0 -4
  722. package/src/cubing/alg/operation.spec.ts +0 -48
  723. package/src/cubing/alg/operation.ts +0 -36
  724. package/src/cubing/alg/parse.spec.ts +0 -75
  725. package/src/cubing/alg/parse.ts +0 -408
  726. package/src/cubing/alg/test/alg-comparison.ts +0 -23
  727. package/src/cubing/alg/test/alg.spec.ts +0 -348
  728. package/src/cubing/alg/traversal.ts +0 -284
  729. package/src/cubing/alg/units/QuantumWithAmount.ts +0 -55
  730. package/src/cubing/alg/units/Unit.ts +0 -11
  731. package/src/cubing/alg/units/containers/Commutator.ts +0 -85
  732. package/src/cubing/alg/units/containers/Conjugate.ts +0 -53
  733. package/src/cubing/alg/units/containers/Grouping.ts +0 -116
  734. package/src/cubing/alg/units/index.ts +0 -8
  735. package/src/cubing/alg/units/leaves/LineComment.spec.ts +0 -35
  736. package/src/cubing/alg/units/leaves/LineComment.ts +0 -48
  737. package/src/cubing/alg/units/leaves/Move.spec.ts +0 -15
  738. package/src/cubing/alg/units/leaves/Move.ts +0 -265
  739. package/src/cubing/alg/units/leaves/Newline.ts +0 -24
  740. package/src/cubing/alg/units/leaves/Pause.ts +0 -24
  741. package/src/cubing/alg/url.spec.ts +0 -10
  742. package/src/cubing/alg/url.ts +0 -133
  743. package/src/cubing/alg/validation.ts +0 -62
  744. package/src/cubing/alg/warnOnce.ts +0 -7
  745. package/src/cubing/bluetooth/connect/index.ts +0 -93
  746. package/src/cubing/bluetooth/debug.ts +0 -18
  747. package/src/cubing/bluetooth/docs/gan-robot.md +0 -60
  748. package/src/cubing/bluetooth/docs/gan356i.md +0 -309
  749. package/src/cubing/bluetooth/index.ts +0 -19
  750. package/src/cubing/bluetooth/keyboard.ts +0 -55
  751. package/src/cubing/bluetooth/smart-puzzle/Heykube.ts +0 -165
  752. package/src/cubing/bluetooth/smart-puzzle/bluetooth-puzzle.ts +0 -95
  753. package/src/cubing/bluetooth/smart-puzzle/connect.ts +0 -19
  754. package/src/cubing/bluetooth/smart-puzzle/endianness.ts +0 -15
  755. package/src/cubing/bluetooth/smart-puzzle/gan.ts +0 -484
  756. package/src/cubing/bluetooth/smart-puzzle/giiker.spec.ts +0 -28
  757. package/src/cubing/bluetooth/smart-puzzle/giiker.ts +0 -277
  758. package/src/cubing/bluetooth/smart-puzzle/gocube.ts +0 -167
  759. package/src/cubing/bluetooth/smart-robot/GanRobot.ts +0 -311
  760. package/src/cubing/bluetooth/smart-robot/index.ts +0 -13
  761. package/src/cubing/bluetooth/smart-timer/GanTimer.ts +0 -141
  762. package/src/cubing/bluetooth/smart-timer/index.ts +0 -13
  763. package/src/cubing/bluetooth/transformer.ts +0 -74
  764. package/src/cubing/cubing.bundle-global.exports.ts +0 -25
  765. package/src/cubing/cubing.bundle-global.ts +0 -7
  766. package/src/cubing/esm-test-worker.js +0 -5
  767. package/src/cubing/kpuzzle/3x3x3/3x3x3.kpuzzle.json.spec.ts +0 -40
  768. package/src/cubing/kpuzzle/3x3x3/3x3x3.kpuzzle.json.ts +0 -339
  769. package/src/cubing/kpuzzle/canon.spec.ts +0 -48
  770. package/src/cubing/kpuzzle/canonicalize.ts +0 -325
  771. package/src/cubing/kpuzzle/definition_types.ts +0 -23
  772. package/src/cubing/kpuzzle/index.ts +0 -33
  773. package/src/cubing/kpuzzle/kpuzzle.spec.ts +0 -12
  774. package/src/cubing/kpuzzle/kpuzzle.ts +0 -124
  775. package/src/cubing/kpuzzle/move_notation.ts +0 -9
  776. package/src/cubing/kpuzzle/parser/index.ts +0 -1
  777. package/src/cubing/kpuzzle/parser/parser-peggy.js +0 -1221
  778. package/src/cubing/kpuzzle/parser/parser-peggy.peggy +0 -72
  779. package/src/cubing/kpuzzle/parser/parser-shim.ts +0 -11
  780. package/src/cubing/kpuzzle/parser/parser.js +0 -0
  781. package/src/cubing/kpuzzle/prunetable.spec.ts +0 -19
  782. package/src/cubing/kpuzzle/pruningtable.ts +0 -99
  783. package/src/cubing/kpuzzle/puzzle-orientation.ts +0 -34
  784. package/src/cubing/kpuzzle/svg.ts +0 -290
  785. package/src/cubing/kpuzzle/transformations.spec.ts +0 -75
  786. package/src/cubing/kpuzzle/transformations.ts +0 -258
  787. package/src/cubing/notation/CountAnimatedLeaves.ts +0 -56
  788. package/src/cubing/notation/CountMoves.ts +0 -89
  789. package/src/cubing/notation/index.ts +0 -4
  790. package/src/cubing/protocol/binary/binary3x3x3.spec.ts +0 -143
  791. package/src/cubing/protocol/binary/binary3x3x3.ts +0 -226
  792. package/src/cubing/protocol/binary/hex.spec.ts +0 -17
  793. package/src/cubing/protocol/binary/hex.ts +0 -12
  794. package/src/cubing/protocol/binary/orbit-indexing.spec.ts +0 -49
  795. package/src/cubing/protocol/binary/orbit-indexing.ts +0 -68
  796. package/src/cubing/protocol/binary/puzzle-orientation.ts +0 -69
  797. package/src/cubing/protocol/index.ts +0 -12
  798. package/src/cubing/puzzle-geometry/FaceNameSwizzler.ts +0 -148
  799. package/src/cubing/puzzle-geometry/Options.ts +0 -179
  800. package/src/cubing/puzzle-geometry/PGPuzzles.spec.ts +0 -127
  801. package/src/cubing/puzzle-geometry/PGPuzzles.ts +0 -80
  802. package/src/cubing/puzzle-geometry/Perm.ts +0 -154
  803. package/src/cubing/puzzle-geometry/PermOriSet.ts +0 -765
  804. package/src/cubing/puzzle-geometry/PlatonicGenerator.ts +0 -146
  805. package/src/cubing/puzzle-geometry/PuzzleGeometry.ts +0 -3013
  806. package/src/cubing/puzzle-geometry/Quat.spec.ts +0 -10
  807. package/src/cubing/puzzle-geometry/Quat.ts +0 -325
  808. package/src/cubing/puzzle-geometry/SchreierSims.ts +0 -144
  809. package/src/cubing/puzzle-geometry/index.ts +0 -17
  810. package/src/cubing/puzzle-geometry/interfaces.ts +0 -6
  811. package/src/cubing/puzzle-geometry/notation-mapping/FTONotationMapper.ts +0 -38
  812. package/src/cubing/puzzle-geometry/notation-mapping/FaceRenamingMapper.ts +0 -59
  813. package/src/cubing/puzzle-geometry/notation-mapping/MegaminxScramblingNotationMapper.ts +0 -50
  814. package/src/cubing/puzzle-geometry/notation-mapping/NotationMapper.ts +0 -6
  815. package/src/cubing/puzzle-geometry/notation-mapping/NullMapper.ts +0 -12
  816. package/src/cubing/puzzle-geometry/notation-mapping/NxNxNCubeMapper.ts +0 -77
  817. package/src/cubing/puzzle-geometry/notation-mapping/PyraminxNotationMapper.ts +0 -121
  818. package/src/cubing/puzzle-geometry/notation-mapping/SkewbNotationMapper.ts +0 -103
  819. package/src/cubing/puzzle-geometry/notation-mapping/index.ts +0 -13
  820. package/src/cubing/puzzle-geometry/orientcenters.spec.ts +0 -55
  821. package/src/cubing/puzzles/PuzzleLoader.ts +0 -20
  822. package/src/cubing/puzzles/async/async-pg3d.ts +0 -73
  823. package/src/cubing/puzzles/customPGPuzzleLoader.ts +0 -60
  824. package/src/cubing/puzzles/implementations/2x2x2/2x2x2.kpuzzle.json.ts +0 -92
  825. package/src/cubing/puzzles/implementations/2x2x2/2x2x2.kpuzzle.svg.ts +0 -45
  826. package/src/cubing/puzzles/implementations/2x2x2/index.ts +0 -25
  827. package/src/cubing/puzzles/implementations/2x2x2/svg/2x2x2.kpuzzle.svg +0 -45
  828. package/src/cubing/puzzles/implementations/3x3x3/3x3x3-ll.kpuzzle.svg.ts +0 -108
  829. package/src/cubing/puzzles/implementations/3x3x3/3x3x3.kpuzzle.svg.ts +0 -128
  830. package/src/cubing/puzzles/implementations/3x3x3/index.ts +0 -33
  831. package/src/cubing/puzzles/implementations/3x3x3/src/3x3x3-ll.kpuzzle.svg +0 -108
  832. package/src/cubing/puzzles/implementations/3x3x3/src/3x3x3.kpuzzle.svg +0 -128
  833. package/src/cubing/puzzles/implementations/TODO/svg/alg/3x3x3.kpuzzle.original.svg +0 -128
  834. package/src/cubing/puzzles/implementations/TODO/svg/alg/3x3x3.kpuzzle.outlined.svg +0 -486
  835. package/src/cubing/puzzles/implementations/TODO/svg/alg/3x3x3.kpuzzle.spaced.svg +0 -128
  836. package/src/cubing/puzzles/implementations/clock/clock.kpuzzle.json.ts +0 -241
  837. package/src/cubing/puzzles/implementations/clock/clock.kpuzzle.svg.ts +0 -369
  838. package/src/cubing/puzzles/implementations/clock/index.ts +0 -14
  839. package/src/cubing/puzzles/implementations/clock/src/clock.kpuzzle.svg +0 -369
  840. package/src/cubing/puzzles/implementations/fto/index.ts +0 -28
  841. package/src/cubing/puzzles/implementations/megaminx/index.ts +0 -20
  842. package/src/cubing/puzzles/implementations/pyraminx/index.ts +0 -18
  843. package/src/cubing/puzzles/implementations/pyraminx/pyraminx.kpuzzle.json.ts +0 -84
  844. package/src/cubing/puzzles/implementations/pyraminx/pyraminx.kpuzzle.svg.ts +0 -88
  845. package/src/cubing/puzzles/implementations/pyraminx/src/pyraminx.kpuzzle.svg +0 -87
  846. package/src/cubing/puzzles/implementations/square1/index.ts +0 -14
  847. package/src/cubing/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.json.ts +0 -62
  848. package/src/cubing/puzzles/implementations/square1/sq1-hyperorbit.kpuzzle.svg.ts +0 -295
  849. package/src/cubing/puzzles/implementations/square1/src/sq1-hyperorbit.kpuzzle.svg +0 -295
  850. package/src/cubing/puzzles/implementations/square1/src/sq1-simple.svg +0 -60
  851. package/src/cubing/puzzles/index.ts +0 -92
  852. package/src/cubing/puzzles/stickerings/appearance.ts +0 -292
  853. package/src/cubing/puzzles/stickerings/cube-stickerings.ts +0 -304
  854. package/src/cubing/puzzles/stickerings/fto-stickerings.ts +0 -105
  855. package/src/cubing/puzzles/stickerings/global-custom-stickering-hack.ts +0 -61
  856. package/src/cubing/puzzles/stickerings/megaminx-stickerings.ts +0 -26
  857. package/src/cubing/scramble/index.ts +0 -1
  858. package/src/cubing/search/.DS_Store +0 -0
  859. package/src/cubing/search/.gitignore +0 -1
  860. package/src/cubing/search/esm-test-worker.js +0 -14
  861. package/src/cubing/search/index.ts +0 -12
  862. package/src/cubing/search/inside/.DS_Store +0 -0
  863. package/src/cubing/search/inside/api.spec.ts +0 -37
  864. package/src/cubing/search/inside/api.ts +0 -174
  865. package/src/cubing/search/inside/entry.js +0 -4
  866. package/src/cubing/search/inside/inside-worker.ts +0 -13
  867. package/src/cubing/search/inside/module-entry-path-getter.ts +0 -5
  868. package/src/cubing/search/inside/module-entry.ts +0 -20
  869. package/src/cubing/search/inside/solve/addOrientationSuffix.ts +0 -17
  870. package/src/cubing/search/inside/solve/parseSGS.ts +0 -119
  871. package/src/cubing/search/inside/solve/puzzles/2x2x2.sgs.json.ts +0 -114
  872. package/src/cubing/search/inside/solve/puzzles/2x2x2.ts +0 -92
  873. package/src/cubing/search/inside/solve/puzzles/3x3x3/convert.ts +0 -137
  874. package/src/cubing/search/inside/solve/puzzles/3x3x3/filter.ts +0 -60
  875. package/src/cubing/search/inside/solve/puzzles/3x3x3/index.ts +0 -67
  876. package/src/cubing/search/inside/solve/puzzles/3x3x3/legacy-sgs.ts +0 -291
  877. package/src/cubing/search/inside/solve/puzzles/3x3x3-inefficient.sgs.json.ts +0 -272
  878. package/src/cubing/search/inside/solve/puzzles/4x4x4.ts +0 -30
  879. package/src/cubing/search/inside/solve/puzzles/5x5x5.ts +0 -12
  880. package/src/cubing/search/inside/solve/puzzles/big-cubes.ts +0 -78
  881. package/src/cubing/search/inside/solve/puzzles/clock.ts +0 -48
  882. package/src/cubing/search/inside/solve/puzzles/fto.sgs.json.ts +0 -643
  883. package/src/cubing/search/inside/solve/puzzles/fto.ts +0 -58
  884. package/src/cubing/search/inside/solve/puzzles/megaminx.sgs.json.ts +0 -1549
  885. package/src/cubing/search/inside/solve/puzzles/megaminx.ts +0 -51
  886. package/src/cubing/search/inside/solve/puzzles/pyraminx.sgs.json.ts +0 -98
  887. package/src/cubing/search/inside/solve/puzzles/pyraminx.ts +0 -48
  888. package/src/cubing/search/inside/solve/puzzles/sgs-defs.spec.ts +0 -27
  889. package/src/cubing/search/inside/solve/puzzles/skewb.sgs.json.ts +0 -113
  890. package/src/cubing/search/inside/solve/puzzles/skewb.ts +0 -65
  891. package/src/cubing/search/inside/solve/puzzles/sq1.ts +0 -16
  892. package/src/cubing/search/inside/solve/puzzles/wca-minx.ts +0 -32
  893. package/src/cubing/search/inside/solve/tremble.ts +0 -213
  894. package/src/cubing/search/instantiator.ts +0 -95
  895. package/src/cubing/search/outside.ts +0 -110
  896. package/src/cubing/search/worker-inside-generated-string.js +0 -1
  897. package/src/cubing/stream/index.ts +0 -12
  898. package/src/cubing/stream/process/ReorientedStream.ts +0 -93
  899. package/src/cubing/stream/proxy-event.ts +0 -16
  900. package/src/cubing/stream/twizzle/TwizzleStream.ts +0 -53
  901. package/src/cubing/stream/twizzle/stream-types.ts +0 -45
  902. package/src/cubing/stream/websocket-proxy.ts +0 -73
  903. package/src/cubing/twisty/controllers/AnimationTypes.ts +0 -50
  904. package/src/cubing/twisty/controllers/RenderScheduler.ts +0 -28
  905. package/src/cubing/twisty/controllers/TwistyAnimationController.ts +0 -325
  906. package/src/cubing/twisty/controllers/TwistyPlayerController.ts +0 -38
  907. package/src/cubing/twisty/controllers/easing.ts +0 -3
  908. package/src/cubing/twisty/controllers/indexer/AlgDuration.ts +0 -94
  909. package/src/cubing/twisty/controllers/indexer/AlgIndexer.ts +0 -87
  910. package/src/cubing/twisty/controllers/indexer/SimpleAlgIndexer.ts +0 -76
  911. package/src/cubing/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexer.ts +0 -181
  912. package/src/cubing/twisty/controllers/indexer/simultaneous-moves/SimultaneousMoveIndexerV2.ts +0 -243
  913. package/src/cubing/twisty/controllers/indexer/simultaneous-moves/simul-moves.ts +0 -193
  914. package/src/cubing/twisty/controllers/indexer/tree/AlgWalker.ts +0 -439
  915. package/src/cubing/twisty/controllers/indexer/tree/TreeAlgIndexer.ts +0 -97
  916. package/src/cubing/twisty/controllers/indexer/tree/chunkAlgs.ts +0 -81
  917. package/src/cubing/twisty/controllers/stream/timeline-move-calculation-draft.spec.ts.TODO +0 -59
  918. package/src/cubing/twisty/controllers/stream/timeline-move-calculation-draft.ts +0 -162
  919. package/src/cubing/twisty/heavy-code-imports/3d.ts +0 -18
  920. package/src/cubing/twisty/heavy-code-imports/dynamic-entries/3d.ts +0 -31
  921. package/src/cubing/twisty/index.ts +0 -24
  922. package/src/cubing/twisty/model/PromiseFreshener.ts +0 -49
  923. package/src/cubing/twisty/model/TwistyPlayerModel.ts +0 -256
  924. package/src/cubing/twisty/model/UserVisibleErrorTracker.ts +0 -22
  925. package/src/cubing/twisty/model/helpers.ts +0 -47
  926. package/src/cubing/twisty/model/props/TwistyProp.spec.ts +0 -38
  927. package/src/cubing/twisty/model/props/TwistyProp.ts +0 -366
  928. package/src/cubing/twisty/model/props/TwistyPropDebugger.ts +0 -370
  929. package/src/cubing/twisty/model/props/general/URLProp.ts +0 -14
  930. package/src/cubing/twisty/model/props/puzzle/display/FoundationDisplayProp.ts +0 -9
  931. package/src/cubing/twisty/model/props/puzzle/display/HintFaceletProp.ts +0 -15
  932. package/src/cubing/twisty/model/props/puzzle/display/SpriteProp.ts +0 -43
  933. package/src/cubing/twisty/model/props/puzzle/display/StickeringProp.ts +0 -56
  934. package/src/cubing/twisty/model/props/puzzle/state/AlgProp.ts +0 -91
  935. package/src/cubing/twisty/model/props/puzzle/state/AlgTransformationProp.ts +0 -28
  936. package/src/cubing/twisty/model/props/puzzle/state/AnchoredStartProp.ts +0 -44
  937. package/src/cubing/twisty/model/props/puzzle/state/CatchUpMoveProp.ts +0 -17
  938. package/src/cubing/twisty/model/props/puzzle/state/CurrentLeavesProp.ts +0 -109
  939. package/src/cubing/twisty/model/props/puzzle/state/CurrentLeavesSimplified.ts +0 -48
  940. package/src/cubing/twisty/model/props/puzzle/state/CurrentTransformationProp.ts +0 -46
  941. package/src/cubing/twisty/model/props/puzzle/state/IndexerConstructorProp.ts +0 -53
  942. package/src/cubing/twisty/model/props/puzzle/state/IndexerConstructorRequestProp.ts +0 -15
  943. package/src/cubing/twisty/model/props/puzzle/state/IndexerProp.ts +0 -24
  944. package/src/cubing/twisty/model/props/puzzle/state/LegacyPositionProp.ts +0 -22
  945. package/src/cubing/twisty/model/props/puzzle/state/MovePressInputProp.ts +0 -14
  946. package/src/cubing/twisty/model/props/puzzle/state/NaiveMoveCountProp.ts +0 -20
  947. package/src/cubing/twisty/model/props/puzzle/state/PuzzleAlgProp.ts +0 -28
  948. package/src/cubing/twisty/model/props/puzzle/state/SetupAnchorProp.ts +0 -14
  949. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleDefProp.ts +0 -14
  950. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleDescriptionProp.ts +0 -14
  951. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleIDProp.ts +0 -12
  952. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleIDRequestProp.ts +0 -36
  953. package/src/cubing/twisty/model/props/puzzle/structure/PuzzleLoaderProp.ts +0 -38
  954. package/src/cubing/twisty/model/props/timeline/CoarseTimelineInfoProp.ts +0 -45
  955. package/src/cubing/twisty/model/props/timeline/DetailedTimelineInfoProp.ts +0 -78
  956. package/src/cubing/twisty/model/props/timeline/PlayingInfoProp.ts +0 -48
  957. package/src/cubing/twisty/model/props/timeline/TempoScaleProp.ts +0 -13
  958. package/src/cubing/twisty/model/props/timeline/TimestampRequestProp.ts +0 -38
  959. package/src/cubing/twisty/model/props/viewer/BackViewProp.ts +0 -16
  960. package/src/cubing/twisty/model/props/viewer/BackgroundProp.ts +0 -15
  961. package/src/cubing/twisty/model/props/viewer/ButtonAppearanceProp.ts +0 -86
  962. package/src/cubing/twisty/model/props/viewer/ControlPanelProp.ts +0 -14
  963. package/src/cubing/twisty/model/props/viewer/LatitudeLimit.ts +0 -11
  964. package/src/cubing/twisty/model/props/viewer/OrbitCoordinatesProp.ts +0 -127
  965. package/src/cubing/twisty/model/props/viewer/OrbitCoordinatesRequestProp.ts +0 -69
  966. package/src/cubing/twisty/model/props/viewer/TimeRangeProp.ts +0 -15
  967. package/src/cubing/twisty/model/props/viewer/ViewerLinkProp.ts +0 -14
  968. package/src/cubing/twisty/model/props/viewer/VisualizationProp.ts +0 -17
  969. package/src/cubing/twisty/model/props/viewer/VisualizationStrategyProp.ts +0 -45
  970. package/src/cubing/twisty/views/2D/Twisty2DPuzzle.css.ts +0 -26
  971. package/src/cubing/twisty/views/2D/Twisty2DPuzzle.ts +0 -146
  972. package/src/cubing/twisty/views/2D/Twisty2DPuzzleWrapper.ts +0 -52
  973. package/src/cubing/twisty/views/2D/Twisty2DSceneWrapper.ts +0 -77
  974. package/src/cubing/twisty/views/3D/DragTracker.ts +0 -184
  975. package/src/cubing/twisty/views/3D/RendererPool.ts +0 -54
  976. package/src/cubing/twisty/views/3D/TAU.ts +0 -2
  977. package/src/cubing/twisty/views/3D/Twisty3DPuzzleWrapper.ts +0 -214
  978. package/src/cubing/twisty/views/3D/Twisty3DRenderTarget.ts +0 -5
  979. package/src/cubing/twisty/views/3D/Twisty3DScene.ts +0 -42
  980. package/src/cubing/twisty/views/3D/Twisty3DSceneWrapper.ts +0 -189
  981. package/src/cubing/twisty/views/3D/Twisty3DVantage.css.ts +0 -32
  982. package/src/cubing/twisty/views/3D/Twisty3DVantage.ts +0 -312
  983. package/src/cubing/twisty/views/3D/TwistyOrbitControls.spec.ts +0 -213
  984. package/src/cubing/twisty/views/3D/TwistyOrbitControls.ts +0 -176
  985. package/src/cubing/twisty/views/3D/puzzles/Cube3D.ts +0 -966
  986. package/src/cubing/twisty/views/3D/puzzles/KPuzzleWrapper.ts +0 -142
  987. package/src/cubing/twisty/views/3D/puzzles/PG3D.ts +0 -1078
  988. package/src/cubing/twisty/views/3D/puzzles/Twisty3DPuzzle.ts +0 -6
  989. package/src/cubing/twisty/views/ClassListManager.ts +0 -34
  990. package/src/cubing/twisty/views/ManagedCustomElement.ts +0 -76
  991. package/src/cubing/twisty/views/TwistyAlgEditor/LeafTokens.ts +0 -116
  992. package/src/cubing/twisty/views/TwistyAlgEditor/TwistyAlgEditor.css.ts +0 -72
  993. package/src/cubing/twisty/views/TwistyAlgEditor/TwistyAlgEditor.spec.ts +0 -57
  994. package/src/cubing/twisty/views/TwistyAlgEditor/TwistyAlgEditor.ts +0 -368
  995. package/src/cubing/twisty/views/TwistyAlgEditor/model.ts +0 -179
  996. package/src/cubing/twisty/views/TwistyAlgViewer.css.ts +0 -25
  997. package/src/cubing/twisty/views/TwistyAlgViewer.ts +0 -502
  998. package/src/cubing/twisty/views/TwistyPlayer.css.ts +0 -73
  999. package/src/cubing/twisty/views/TwistyPlayer.ts +0 -362
  1000. package/src/cubing/twisty/views/TwistyPlayerSettable.ts +0 -115
  1001. package/src/cubing/twisty/views/TwistyViewerWrapper.css.ts +0 -41
  1002. package/src/cubing/twisty/views/canvas.ts +0 -9
  1003. package/src/cubing/twisty/views/control-panel/TwistyButtonsV2.css.ts +0 -127
  1004. package/src/cubing/twisty/views/control-panel/TwistyButtonsV2.ts +0 -156
  1005. package/src/cubing/twisty/views/control-panel/TwistyScrubber.css.ts +0 -48
  1006. package/src/cubing/twisty/views/control-panel/TwistyScrubberV2.ts +0 -145
  1007. package/src/cubing/twisty/views/control-panel/webkit-fullscreen.ts +0 -44
  1008. package/src/cubing/twisty/views/document.ts +0 -4
  1009. package/src/cubing/twisty/views/node-custom-element-shims.ts +0 -30
  1010. package/src/cubing/twisty/views/screenshot.ts +0 -90
  1011. package/src/cubing/twisty/views/stream/TwistyStreamSource.css.ts +0 -17
  1012. package/src/cubing/twisty/views/stream/TwistyStreamSource.ts +0 -155
  1013. package/src/cubing/vendor/.DS_Store +0 -0
  1014. package/src/cubing/vendor/comlink-everywhere/.DS_Store +0 -0
  1015. package/src/cubing/vendor/comlink-everywhere/comlink-everywhere.webloc +0 -8
  1016. package/src/cubing/vendor/comlink-everywhere/inside/index.d.ts +0 -1
  1017. package/src/cubing/vendor/comlink-everywhere/inside/index.js +0 -16
  1018. package/src/cubing/vendor/comlink-everywhere/inside/node.js +0 -6
  1019. package/src/cubing/vendor/comlink-everywhere/outside/index.d.ts +0 -6
  1020. package/src/cubing/vendor/comlink-everywhere/outside/index.js +0 -31
  1021. package/src/cubing/vendor/comlink-everywhere/outside/node.js +0 -42
  1022. package/src/cubing/vendor/cstimer/.DS_Store +0 -0
  1023. package/src/cubing/vendor/cstimer/LICENSE +0 -674
  1024. package/src/cubing/vendor/cstimer/src/.DS_Store +0 -0
  1025. package/src/cubing/vendor/cstimer/src/js/lib/mathlib.ts +0 -54
  1026. package/src/cubing/vendor/cstimer/src/js/scramble/scramble_444.ts +0 -2791
  1027. package/src/cubing/vendor/min2phase/gwt.d.ts +0 -2
  1028. package/src/cubing/vendor/min2phase/gwt.js +0 -2699
  1029. package/src/cubing/vendor/p-lazy/license +0 -9
  1030. package/src/cubing/vendor/p-lazy/p-lazy.ts +0 -52
  1031. package/src/cubing/vendor/p-lazy/readme.md +0 -54
  1032. package/src/cubing/vendor/random-uint-below/get-random-values.ts +0 -23
  1033. package/src/cubing/vendor/random-uint-below/index.ts +0 -12
  1034. package/src/cubing/vendor/random-uint-below/random-choice.ts +0 -9
  1035. package/src/cubing/vendor/random-uint-below/random53BitValue.ts +0 -64
  1036. package/src/cubing/vendor/sq12phase/scramble_sq1.js +0 -853
  1037. package/src/cubing/vendor/three/.DS_Store +0 -0
  1038. package/src/cubing/vendor/three/examples/.DS_Store +0 -0
  1039. package/src/cubing/vendor/three/examples/jsm/libs/stats.modified.module.ts +0 -179
  1040. package/src/cubing/vendor/unsafe-raw-aes/unsafe-raw-aes.ts +0 -64
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/cubing/kpuzzle/combine.ts", "../../src/cubing/kpuzzle/KState.ts", "../../src/cubing/kpuzzle/KTransformation.ts", "../../src/cubing/kpuzzle/calculate.ts", "../../src/cubing/kpuzzle/construct.ts", "../../src/cubing/kpuzzle/KPuzzle.ts", "../../src/cubing/kpuzzle/3x3x3/3x3x3.kpuzzle.json.ts", "../../src/cubing/kpuzzle/index.ts"],
4
+ "sourcesContent": ["import { isOrbitTransformationDataIdentityUncached } from \"./calculate\";\nimport type {\n KPuzzleDefinition,\n KStateData,\n KTransformationData,\n} from \"./KPuzzleDefinition\";\n\nexport function combineTransformationData(\n definition: KPuzzleDefinition,\n transformationData1: KTransformationData,\n transformationData2: KTransformationData,\n): KTransformationData {\n const newTransformationData = {} as KTransformationData;\n const def = definition;\n for (const orbitName in def.orbits) {\n const orbitDefinition = def.orbits[orbitName];\n const o1 = transformationData1[orbitName];\n const o2 = transformationData2[orbitName];\n if (\n isOrbitTransformationDataIdentityUncached(\n orbitDefinition.orientations,\n o2,\n )\n ) {\n // common case for big cubes\n newTransformationData[orbitName] = o1;\n } else if (\n isOrbitTransformationDataIdentityUncached(\n orbitDefinition.orientations,\n o1,\n )\n ) {\n newTransformationData[orbitName] = o2;\n } else {\n const newPerm = new Array(orbitDefinition.numPieces);\n if (orbitDefinition.orientations === 1) {\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newPerm[idx] = o1.permutation[o2.permutation[idx]];\n }\n newTransformationData[orbitName] = {\n permutation: newPerm,\n orientation: o1.orientation,\n };\n } else {\n const newOri = new Array(orbitDefinition.numPieces);\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newOri[idx] =\n (o1.orientation[o2.permutation[idx]] + o2.orientation[idx]) %\n orbitDefinition.orientations;\n newPerm[idx] = o1.permutation[o2.permutation[idx]];\n }\n newTransformationData[orbitName] = {\n permutation: newPerm,\n orientation: newOri,\n };\n }\n }\n }\n return newTransformationData;\n}\n\nexport function applyTransformationDataToStateData(\n definition: KPuzzleDefinition,\n stateData: KStateData,\n transformationData: KTransformationData,\n): KStateData {\n const newStateData = {} as KStateData;\n const def = definition;\n for (const orbitName in def.orbits) {\n const orbitDefinition = def.orbits[orbitName];\n const o1 = stateData[orbitName];\n const o2 = transformationData[orbitName];\n if (\n isOrbitTransformationDataIdentityUncached(\n orbitDefinition.orientations,\n o2,\n )\n ) {\n // common case for big cubes\n newStateData[orbitName] = o1;\n } else {\n const newPieces = new Array(orbitDefinition.numPieces);\n if (orbitDefinition.orientations === 1) {\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newPieces[idx] = o1.pieces[o2.permutation[idx]];\n }\n newStateData[orbitName] = {\n pieces: newPieces,\n orientation: o1.orientation,\n };\n } else {\n const newOri = new Array(orbitDefinition.numPieces);\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newOri[idx] =\n (o1.orientation[o2.permutation[idx]] + o2.orientation[idx]) %\n orbitDefinition.orientations;\n newPieces[idx] = o1.pieces[o2.permutation[idx]];\n }\n newStateData[orbitName] = {\n pieces: newPieces,\n orientation: newOri,\n };\n }\n }\n }\n return newStateData;\n}\n", "import type { KPuzzle, KTransformationData } from \".\";\nimport type { Alg, Move } from \"../alg\";\nimport { applyTransformationDataToStateData } from \"./combine\";\nimport type { KTransformationSource } from \"./KPuzzle\";\nimport type { KStateData, KTransformationOrbitData } from \"./KPuzzleDefinition\";\nimport { KTransformation } from \"./KTransformation\";\n\nexport class KState {\n constructor(\n public readonly kpuzzle: KPuzzle,\n public readonly stateData: KStateData,\n ) {}\n\n static fromTransformation(transformation: KTransformation): KState {\n const newStateData = applyTransformationDataToStateData(\n transformation.kpuzzle.definition,\n transformation.kpuzzle.definition.startStateData,\n transformation.transformationData,\n );\n return new KState(transformation.kpuzzle, newStateData);\n }\n\n // Convenience function\n // @deprecated\n apply(source: KTransformationSource): KState {\n return this.applyTransformation(this.kpuzzle.toTransformation(source));\n }\n\n applyTransformation(transformation: KTransformation): KState {\n if (transformation.isIdentityTransformation()) {\n return new KState(this.kpuzzle, this.stateData);\n }\n const newStateData = applyTransformationDataToStateData(\n this.kpuzzle.definition,\n this.stateData,\n transformation.transformationData,\n );\n return new KState(this.kpuzzle, newStateData);\n }\n\n applyMove(move: Move | string): KState {\n return this.applyTransformation(this.kpuzzle.moveToTransformation(move));\n }\n\n applyAlg(alg: Alg | string): KState {\n return this.applyTransformation(this.kpuzzle.algToTransformation(alg));\n }\n\n // @deprecated\n experimentalToTransformation(): KTransformation | null {\n if (!this.kpuzzle.canConvertStateToUniqueTransformation()) {\n return null;\n }\n const transformationData: KTransformationData = {};\n for (const [orbitName, stateOrbitData] of Object.entries(this.stateData)) {\n const transformationOrbit: KTransformationOrbitData = {\n permutation: stateOrbitData.pieces,\n orientation: stateOrbitData.orientation,\n };\n transformationData[orbitName] = transformationOrbit;\n }\n return new KTransformation(this.kpuzzle, transformationData);\n }\n}\n", "import type { Alg, Move } from \"../alg\";\nimport {\n invertTransformation,\n isTransformationDataIdentical,\n repeatTransformationUncached,\n transformationRepetitionOrder,\n} from \"./calculate\";\nimport { combineTransformationData } from \"./combine\";\nimport type { KPuzzle, KTransformationSource } from \"./KPuzzle\";\nimport type { KTransformationData } from \"./KPuzzleDefinition\";\nimport { KState } from \"./KState\";\n\nexport class KTransformation {\n constructor(\n public readonly kpuzzle: KPuzzle,\n public readonly transformationData: KTransformationData,\n ) {}\n\n invert(): KTransformation {\n return new KTransformation(\n this.kpuzzle,\n invertTransformation(this.kpuzzle, this.transformationData),\n );\n }\n\n // For optimizations, we want to make it cheap to rely on optimizations when a\n // transformation is an identity. Here, we try to make it cheaper by:\n // - only calculating when needed, and\n // - caching the result.\n #cachedIsIdentity: boolean | undefined; // TODO: is `null` worse here?\n isIdentityTransformation(): boolean {\n return (this.#cachedIsIdentity ??= this.isIdentical(\n this.kpuzzle.identityTransformation(),\n ));\n }\n\n isIdentical(t2: KTransformation): boolean {\n return isTransformationDataIdentical(\n this.kpuzzle,\n this.transformationData,\n t2.transformationData,\n );\n }\n\n // Convenience function\n // @deprecated\n apply(source: KTransformationSource): KTransformation {\n return this.applyTransformation(this.kpuzzle.toTransformation(source));\n }\n\n applyTransformation(t2: KTransformation): KTransformation {\n if (this.kpuzzle !== t2.kpuzzle) {\n throw new Error(\n `Tried to apply a transformation for a KPuzzle (${t2.kpuzzle.name()}) to a different KPuzzle (${this.kpuzzle.name()}).`,\n );\n }\n\n if (this.isIdentityTransformation()) {\n return new KTransformation(this.kpuzzle, t2.transformationData);\n }\n if (t2.isIdentityTransformation()) {\n return new KTransformation(this.kpuzzle, this.transformationData);\n }\n\n return new KTransformation(\n this.kpuzzle,\n combineTransformationData(\n this.kpuzzle.definition,\n this.transformationData,\n t2.transformationData,\n ),\n );\n }\n\n applyMove(move: Move | string): KTransformation {\n return this.applyTransformation(this.kpuzzle.moveToTransformation(move));\n }\n\n applyAlg(alg: Alg | string): KTransformation {\n return this.applyTransformation(this.kpuzzle.algToTransformation(alg));\n }\n\n // Convenience. Useful for chaining.\n toKState(): KState {\n return KState.fromTransformation(this);\n }\n\n repetitionOrder(): number {\n return transformationRepetitionOrder(this.kpuzzle.definition, this);\n }\n\n selfMultiply(amount: number): KTransformation {\n return new KTransformation(\n this.kpuzzle,\n repeatTransformationUncached(\n this.kpuzzle,\n this.transformationData,\n amount,\n ),\n );\n }\n}\n", "import type { KPuzzleDefinition } from \".\";\nimport {\n Alg,\n Commutator,\n Conjugate,\n Grouping,\n LineComment,\n Move,\n Newline,\n Pause,\n TraversalDownUp,\n} from \"../alg\";\nimport { combineTransformationData } from \"./combine\";\nimport type { KPuzzle } from \"./KPuzzle\";\nimport type {\n KOrbitDefinition,\n KTransformationOrbitData,\n KTransformationData,\n} from \"./KPuzzleDefinition\";\nimport { KTransformation } from \"./KTransformation\";\n\nexport function isOrbitTransformationDataIdentityUncached(\n numOrientations: number,\n orbitTransformationData: KTransformationOrbitData,\n): boolean {\n // TODO\n // if (o === lasto) {\n // return true;\n // }\n const { permutation } = orbitTransformationData;\n const numPieces = permutation.length;\n for (let idx = 0; idx < numPieces; idx++) {\n if (permutation[idx] !== idx) {\n return false;\n }\n }\n if (numOrientations > 1) {\n const { orientation } = orbitTransformationData;\n for (let idx = 0; idx < numPieces; idx++) {\n if (orientation[idx] !== 0) {\n return false;\n }\n }\n }\n // lasto = o; // TODO\n return true;\n}\n\nexport function isOrbitTransformationDataIdentical(\n orbitDefinition: KOrbitDefinition,\n orbitTransformationData1: KTransformationOrbitData,\n orbitTransformationData2: KTransformationOrbitData,\n options: {\n ignoreOrientation?: boolean;\n ignorePermutation?: boolean;\n } = {},\n): boolean {\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n if (\n !options?.ignoreOrientation &&\n orbitTransformationData1.orientation[idx] !==\n orbitTransformationData2.orientation[idx]\n ) {\n return false;\n }\n if (\n !options?.ignorePermutation &&\n orbitTransformationData1.permutation[idx] !==\n orbitTransformationData2.permutation[idx]\n ) {\n return false;\n }\n }\n return true;\n}\n\nexport function isTransformationDataIdentical(\n kpuzzle: KPuzzle,\n transformationData1: KTransformationData,\n transformationData2: KTransformationData,\n): boolean {\n for (const [orbitName, orbitDefinition] of Object.entries(\n kpuzzle.definition.orbits,\n )) {\n if (\n !isOrbitTransformationDataIdentical(\n orbitDefinition,\n transformationData1[orbitName],\n transformationData2[orbitName],\n )\n ) {\n return false;\n }\n }\n return true;\n}\n\nexport function invertTransformation(\n kpuzzle: KPuzzle,\n transformationData: KTransformationData,\n): KTransformationData {\n const newTransformationData: KTransformationData = {};\n for (const orbitName in kpuzzle.definition.orbits) {\n const orbitDefinition: KOrbitDefinition =\n kpuzzle.definition.orbits[orbitName];\n const orbitTransformationData = transformationData[orbitName];\n if (\n isOrbitTransformationDataIdentityUncached(\n orbitDefinition.orientations,\n orbitTransformationData,\n )\n ) {\n newTransformationData[orbitName] = orbitTransformationData;\n } else if (orbitDefinition.orientations === 1) {\n const newPerm = new Array(orbitDefinition.numPieces);\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n newPerm[orbitTransformationData.permutation[idx]] = idx;\n }\n newTransformationData[orbitName] = {\n permutation: newPerm,\n orientation: orbitTransformationData.orientation,\n };\n } else {\n const newPerm = new Array(orbitDefinition.numPieces);\n const newOri = new Array(orbitDefinition.numPieces);\n for (let idx = 0; idx < orbitDefinition.numPieces; idx++) {\n const fromIdx = orbitTransformationData.permutation[idx];\n newPerm[fromIdx] = idx;\n newOri[fromIdx] =\n (orbitDefinition.orientations -\n orbitTransformationData.orientation[idx] +\n orbitDefinition.orientations) %\n orbitDefinition.orientations;\n }\n newTransformationData[orbitName] = {\n permutation: newPerm,\n orientation: newOri,\n };\n }\n }\n return newTransformationData;\n}\n\nexport function repeatTransformationUncached(\n kpuzzle: KPuzzle,\n transformationData: KTransformationData,\n amount: number,\n): KTransformationData {\n // This is used for move construction, so we optimize for the quantum move case.\n if (amount === 1) {\n return transformationData;\n }\n if (amount < 0) {\n return repeatTransformationUncached(\n kpuzzle,\n invertTransformation(kpuzzle, transformationData),\n -amount,\n );\n }\n if (amount === 0) {\n // TODO\n const { transformationData } = kpuzzle.identityTransformation();\n return transformationData;\n }\n let halfish = transformationData;\n if (amount !== 2) {\n halfish = repeatTransformationUncached(\n kpuzzle,\n transformationData,\n Math.floor(amount / 2),\n );\n }\n const twiceHalfish = combineTransformationData(\n kpuzzle.definition,\n halfish,\n halfish,\n );\n if (amount % 2 === 0) {\n return twiceHalfish;\n } else {\n return combineTransformationData(\n kpuzzle.definition,\n transformationData,\n twiceHalfish,\n );\n }\n}\n\nclass AlgToTransformationTraversal extends TraversalDownUp<\n KPuzzle,\n KTransformation\n> {\n traverseAlg(alg: Alg, kpuzzle: KPuzzle): KTransformation {\n let transformation = kpuzzle.identityTransformation();\n for (const unit of alg.units()) {\n transformation = transformation.applyTransformation(\n this.traverseUnit(unit, kpuzzle),\n );\n }\n return transformation;\n }\n traverseGrouping(grouping: Grouping, kpuzzle: KPuzzle): KTransformation {\n const algTransformation = this.traverseAlg(grouping.alg, kpuzzle);\n return new KTransformation(\n kpuzzle,\n repeatTransformationUncached(\n kpuzzle,\n algTransformation.transformationData,\n grouping.amount,\n ),\n );\n }\n traverseMove(move: Move, kpuzzle: KPuzzle): KTransformation {\n return kpuzzle.moveToTransformation(move);\n }\n traverseCommutator(\n commutator: Commutator,\n kpuzzle: KPuzzle,\n ): KTransformation {\n const aTransformation = this.traverseAlg(commutator.A, kpuzzle);\n const bTransformation = this.traverseAlg(commutator.B, kpuzzle);\n return aTransformation\n .applyTransformation(bTransformation)\n .applyTransformation(aTransformation.invert())\n .applyTransformation(bTransformation.invert());\n }\n traverseConjugate(conjugate: Conjugate, kpuzzle: KPuzzle): KTransformation {\n const aTransformation = this.traverseAlg(conjugate.A, kpuzzle);\n const bTransformation = this.traverseAlg(conjugate.B, kpuzzle);\n return aTransformation\n .applyTransformation(bTransformation)\n .applyTransformation(aTransformation.invert());\n }\n traversePause(_: Pause, kpuzzle: KPuzzle): KTransformation {\n return kpuzzle.identityTransformation();\n }\n traverseNewline(_: Newline, kpuzzle: KPuzzle): KTransformation {\n return kpuzzle.identityTransformation();\n }\n traverseLineComment(_: LineComment, kpuzzle: KPuzzle): KTransformation {\n return kpuzzle.identityTransformation();\n }\n}\n\nconst algToTransformationInstance = new AlgToTransformationTraversal();\nexport const algToTransformation = algToTransformationInstance.traverseAlg.bind(\n algToTransformationInstance,\n) as (alg: Alg, kpuzzle: KPuzzle) => KTransformation;\n\nexport function canConvertStateToUniqueTransformationUncached(\n definition: KPuzzleDefinition,\n): boolean {\n for (const [orbitName, orbitDefinition] of Object.entries(definition)) {\n const pieces = new Array(orbitDefinition.numPieces).fill(false);\n for (const piece of this.definition.startStateData[orbitName].pieces) {\n pieces[piece] = true;\n }\n for (const piece of pieces) {\n if (!piece) {\n return false;\n }\n }\n }\n return true;\n}\n\nfunction gcd(a: number, b: number): number {\n if (b) {\n return gcd(b, a % b);\n }\n return a;\n}\n\n/* calculate the order of a particular transformation. */\nexport function transformationRepetitionOrder(\n def: KPuzzleDefinition,\n t: KTransformation,\n): number {\n let r: number = 1;\n for (const orbitName in def.orbits) {\n const oDef = def.orbits[orbitName];\n const o = t.transformationData[orbitName];\n const d = new Array(oDef.numPieces);\n for (let idx = 0; idx < oDef.numPieces; idx++) {\n if (!d[idx]) {\n let w = idx;\n let om = 0;\n let pm = 0;\n for (;;) {\n d[w] = true;\n om = om + o.orientation[w];\n pm = pm + 1;\n w = o.permutation[w];\n if (w === idx) {\n break;\n }\n }\n if (om !== 0) {\n pm = (pm * oDef.orientations) / gcd(oDef.orientations, om);\n }\n r = (r * pm) / gcd(r, pm);\n }\n }\n }\n return r;\n}\n", "import type { Move } from \"../alg\";\nimport { repeatTransformationUncached } from \"./calculate\";\nimport type { KPuzzle } from \"./KPuzzle\";\nimport type {\n KPuzzleDefinition,\n KTransformationData,\n KTransformationOrbitData,\n} from \"./KPuzzleDefinition\";\n\nconst FREEZE: boolean = false;\n\nconst identityOrbitCache = new Map<number, KTransformationOrbitData>();\nfunction constructIdentityOrbitTransformation(\n numPieces: number,\n): KTransformationOrbitData {\n const cached = identityOrbitCache.get(numPieces);\n if (cached) {\n return cached;\n }\n\n const newPermutation = new Array(numPieces);\n const newOrientation = new Array(numPieces);\n for (let i = 0; i < numPieces; i++) {\n newPermutation[i] = i;\n newOrientation[i] = 0;\n }\n const orbitTransformation = {\n permutation: newPermutation,\n orientation: newOrientation,\n };\n if (FREEZE) {\n Object.freeze(newPermutation); // TODO\n Object.freeze(newOrientation); // TODO\n Object.freeze(orbitTransformation); // TODO\n }\n identityOrbitCache.set(numPieces, orbitTransformation);\n return orbitTransformation;\n}\n\nexport function constructIdentityTransformationDataUncached(\n definition: KPuzzleDefinition,\n): KTransformationData {\n const transformation = {} as KTransformationData;\n for (const [orbitName, orbitDefinition] of Object.entries(\n definition.orbits,\n )) {\n transformation[orbitName] = constructIdentityOrbitTransformation(\n orbitDefinition.numPieces,\n );\n }\n if (FREEZE) {\n Object.freeze(transformation); // TODO\n }\n return transformation;\n}\n\nexport function moveToTransformationUncached(\n kpuzzle: KPuzzle,\n move: Move,\n): KTransformationData {\n const quantumKey = move.quantum.toString();\n const quantumMoveDefinition = kpuzzle.definition.moves[quantumKey] as\n | KTransformationData\n | undefined;\n\n if (quantumMoveDefinition) {\n return repeatTransformationUncached(\n kpuzzle,\n quantumMoveDefinition,\n move.amount,\n );\n }\n\n // Handle e.g. `y2` if `y2` is defined.\n // Note: this doesn't handle multiples.\n const moveDefinition = kpuzzle.definition.moves[move.toString()];\n if (moveDefinition) {\n return moveDefinition;\n }\n\n // Handle e.g. `y2'` if `y2` is defined.\n // Note: this doesn't handle multiples.\n const inverseMoveDefinition =\n kpuzzle.definition.moves[move.invert().toString()];\n if (inverseMoveDefinition) {\n return repeatTransformationUncached(kpuzzle, inverseMoveDefinition, -1);\n }\n\n throw new Error(`Invalid move for KPuzzle (${kpuzzle.name()}): ${move}`);\n}\n", "import { Alg, Move } from \"../alg\";\nimport type { PGNotation } from \"../puzzle-geometry/PuzzleGeometry\";\nimport { algToTransformation } from \"./calculate\";\nimport {\n constructIdentityTransformationDataUncached,\n moveToTransformationUncached,\n} from \"./construct\";\nimport type {\n KPuzzleDefinition,\n KTransformationData,\n} from \"./KPuzzleDefinition\";\nimport { KState } from \"./KState\";\nimport { KTransformation } from \"./KTransformation\";\n\nexport type KTransformationSource = Alg | Move | string | KTransformation;\n\nexport class KPuzzle {\n private experimentalPGNotation: PGNotation | undefined;\n constructor(\n public readonly definition: KPuzzleDefinition,\n options?: {\n experimentalPGNotation?: PGNotation;\n },\n ) {\n this.experimentalPGNotation = options?.experimentalPGNotation;\n }\n\n name(): string {\n return this.definition.name; // TODO\n }\n\n #cachedIdentityTransformationData: KTransformationData | null = null;\n identityTransformation(): KTransformation {\n // TODO: Can we safely cache the `KTransformation` itself?\n // TODO: construct so the `KTransformation` already caches that it's the identity.\n return new KTransformation(\n this,\n (this.#cachedIdentityTransformationData ??=\n constructIdentityTransformationDataUncached(this.definition)),\n );\n }\n\n #moveToTransformationDataCache = new Map<string, KTransformationData>();\n moveToTransformation(move: Move | string): KTransformation {\n if (typeof move === \"string\") {\n move = new Move(move);\n }\n const cacheKey = move.toString();\n const cachedTransformationData: KTransformationData | undefined =\n this.#moveToTransformationDataCache.get(cacheKey);\n if (cachedTransformationData) {\n return new KTransformation(this, cachedTransformationData);\n }\n\n // if (this.experimentalPGUnswizzle) {\n // const unswizzledFamily = this.experimentalPGUnswizzle(move);\n // if (unswizzledFamily === \"\") {\n // throw new Error(`could not unswizzle to internal move: ${move}`);\n // }\n // console.log(\"premapped\", move.toString(), unswizzledFamily);\n // move = move.modified({ family: unswizzledFamily });\n // console.log(\"remapped\", move.toString(), unswizzledFamily);\n // }\n\n // if (this.experimentalPGNotationMapper) {\n // const internalMove =\n // this.experimentalPGNotationMapper.notationToInternal(move);\n // if (!internalMove) {\n // throw new Error(`could not map to internal move: ${move}`);\n // }\n // console.log(\"remapped\", move.toString(), internalMove.toString());\n // move = internalMove;\n // }\n\n if (this.experimentalPGNotation) {\n const transformationData = this.experimentalPGNotation.lookupMove(move);\n if (!transformationData) {\n throw new Error(`could not map to internal move: ${move}`);\n }\n this.#moveToTransformationDataCache.set(cacheKey, transformationData);\n return new KTransformation(this, transformationData);\n }\n\n const transformationData = moveToTransformationUncached(this, move);\n this.#moveToTransformationDataCache.set(cacheKey, transformationData);\n return new KTransformation(this, transformationData);\n }\n\n algToTransformation(alg: Alg | string): KTransformation {\n if (typeof alg === \"string\") {\n alg = new Alg(alg);\n }\n return algToTransformation(alg, this);\n }\n\n // @deprecated\n toTransformation(source: KTransformationSource): KTransformation {\n if (typeof source === \"string\") {\n return this.algToTransformation(source);\n } else if ((source as Alg | null)?.is?.(Alg)) {\n return this.algToTransformation(source as Alg);\n } else if ((source as Move | null)?.is?.(Move)) {\n return this.moveToTransformation(source as Move);\n } else {\n return source as KTransformation;\n }\n }\n\n startState(): KState {\n return new KState(this, this.definition.startStateData);\n }\n\n #cachedCanConvertStateToUniqueTransformation: boolean | undefined;\n // TODO: Handle incomplete start state data\n canConvertStateToUniqueTransformation(): boolean {\n return (this.#cachedCanConvertStateToUniqueTransformation ??=\n ((): boolean => {\n for (const [orbitName, orbitDefinition] of Object.entries(\n this.definition.orbits,\n )) {\n const pieces = new Array(orbitDefinition.numPieces).fill(false);\n for (const piece of this.definition.startStateData[orbitName]\n .pieces) {\n pieces[piece] = true;\n }\n for (const piece of pieces) {\n if (!piece) {\n return false;\n }\n }\n }\n return true;\n })());\n }\n}\n", "// TODO: This file is here to avoid dependency loops, but it should eventually\n// move back into `cubing/puzzles`. We currently have a few functions that are\n// hardcoded to require synchronous access to this definition, and we need to\n// find a better way to do that.\n\n// TODO: this would be a raw `.json` file, but Parcel runs into an error from\n\nimport type { KPuzzleDefinition } from \"../KPuzzleDefinition\";\n\n// using that as both a sync and async import. Probably https://github.com/parcel-bundler/parcel/issues/2546\nexport const cube3x3x3KPuzzleDefinition: KPuzzleDefinition = {\n name: \"3x3x3\",\n orbits: {\n EDGES: { numPieces: 12, orientations: 2 },\n CORNERS: { numPieces: 8, orientations: 3 },\n CENTERS: { numPieces: 6, orientations: 4 },\n },\n startStateData: {\n EDGES: {\n pieces: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n pieces: [0, 1, 2, 3, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n pieces: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 0, 0, 0, 0],\n },\n },\n moves: {\n U: {\n EDGES: {\n permutation: [1, 2, 3, 0, 4, 5, 6, 7, 8, 9, 10, 11],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [1, 2, 3, 0, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [1, 0, 0, 0, 0, 0],\n },\n },\n y: {\n EDGES: {\n permutation: [1, 2, 3, 0, 5, 6, 7, 4, 10, 8, 11, 9],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [1, 2, 3, 0, 7, 4, 5, 6],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 2, 3, 4, 1, 5],\n orientation: [1, 0, 0, 0, 0, 3],\n },\n },\n x: {\n EDGES: {\n permutation: [4, 8, 0, 9, 6, 10, 2, 11, 5, 7, 1, 3],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [4, 0, 3, 5, 7, 6, 2, 1],\n orientation: [2, 1, 2, 1, 1, 2, 1, 2],\n },\n CENTERS: {\n permutation: [2, 1, 5, 3, 0, 4],\n orientation: [0, 3, 0, 1, 2, 2],\n },\n },\n L: {\n EDGES: {\n permutation: [0, 1, 2, 11, 4, 5, 6, 9, 8, 3, 10, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 6, 2, 4, 3, 5, 7],\n orientation: [0, 0, 2, 1, 0, 2, 1, 0],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 1, 0, 0, 0, 0],\n },\n },\n F: {\n EDGES: {\n permutation: [9, 1, 2, 3, 8, 5, 6, 7, 0, 4, 10, 11],\n orientation: [1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0],\n },\n CORNERS: {\n permutation: [3, 1, 2, 5, 0, 4, 6, 7],\n orientation: [1, 0, 0, 2, 2, 1, 0, 0],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 1, 0, 0, 0],\n },\n },\n R: {\n EDGES: {\n permutation: [0, 8, 2, 3, 4, 10, 6, 7, 5, 9, 1, 11],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [4, 0, 2, 3, 7, 5, 6, 1],\n orientation: [2, 1, 0, 0, 1, 0, 0, 2],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 0, 1, 0, 0],\n },\n },\n B: {\n EDGES: {\n permutation: [0, 1, 10, 3, 4, 5, 11, 7, 8, 9, 6, 2],\n orientation: [0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1],\n },\n CORNERS: {\n permutation: [0, 7, 1, 3, 4, 5, 2, 6],\n orientation: [0, 2, 1, 0, 0, 0, 2, 1],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 0, 0, 1, 0],\n },\n },\n D: {\n EDGES: {\n permutation: [0, 1, 2, 3, 7, 4, 5, 6, 8, 9, 10, 11],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 5, 6, 7, 4],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 1, 2, 3, 4, 5],\n orientation: [0, 0, 0, 0, 0, 1],\n },\n },\n z: {\n EDGES: {\n permutation: [9, 3, 11, 7, 8, 1, 10, 5, 0, 4, 2, 6],\n orientation: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [3, 2, 6, 5, 0, 4, 7, 1],\n orientation: [1, 2, 1, 2, 2, 1, 2, 1],\n },\n CENTERS: {\n permutation: [1, 5, 2, 0, 4, 3],\n orientation: [1, 1, 1, 1, 3, 1],\n },\n },\n M: {\n EDGES: {\n permutation: [2, 1, 6, 3, 0, 5, 4, 7, 8, 9, 10, 11],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [4, 1, 0, 3, 5, 2],\n orientation: [2, 0, 0, 0, 2, 0],\n },\n },\n E: {\n EDGES: {\n permutation: [0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 8, 10],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 4, 1, 2, 3, 5],\n orientation: [0, 0, 0, 0, 0, 0],\n },\n },\n S: {\n EDGES: {\n permutation: [0, 3, 2, 7, 4, 1, 6, 5, 8, 9, 10, 11],\n orientation: [0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [1, 5, 2, 0, 4, 3],\n orientation: [1, 1, 0, 1, 0, 1],\n },\n },\n u: {\n EDGES: {\n permutation: [1, 2, 3, 0, 4, 5, 6, 7, 10, 8, 11, 9],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [1, 2, 3, 0, 4, 5, 6, 7],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 2, 3, 4, 1, 5],\n orientation: [1, 0, 0, 0, 0, 0],\n },\n },\n l: {\n EDGES: {\n permutation: [2, 1, 6, 11, 0, 5, 4, 9, 8, 3, 10, 7],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [0, 1, 6, 2, 4, 3, 5, 7],\n orientation: [0, 0, 2, 1, 0, 2, 1, 0],\n },\n CENTERS: {\n permutation: [4, 1, 0, 3, 5, 2],\n orientation: [2, 1, 0, 0, 2, 0],\n },\n },\n f: {\n EDGES: {\n permutation: [9, 3, 2, 7, 8, 1, 6, 5, 0, 4, 10, 11],\n orientation: [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0],\n },\n CORNERS: {\n permutation: [3, 1, 2, 5, 0, 4, 6, 7],\n orientation: [1, 0, 0, 2, 2, 1, 0, 0],\n },\n CENTERS: {\n permutation: [1, 5, 2, 0, 4, 3],\n orientation: [1, 1, 1, 1, 0, 1],\n },\n },\n r: {\n EDGES: {\n permutation: [4, 8, 0, 3, 6, 10, 2, 7, 5, 9, 1, 11],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [4, 0, 2, 3, 7, 5, 6, 1],\n orientation: [2, 1, 0, 0, 1, 0, 0, 2],\n },\n CENTERS: {\n permutation: [2, 1, 5, 3, 0, 4],\n orientation: [0, 0, 0, 1, 2, 2],\n },\n },\n b: {\n EDGES: {\n permutation: [0, 5, 10, 1, 4, 7, 11, 3, 8, 9, 6, 2],\n orientation: [0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1],\n },\n CORNERS: {\n permutation: [0, 7, 1, 3, 4, 5, 2, 6],\n orientation: [0, 2, 1, 0, 0, 0, 2, 1],\n },\n CENTERS: {\n permutation: [3, 0, 2, 5, 4, 1],\n orientation: [3, 3, 0, 3, 1, 3],\n },\n },\n d: {\n EDGES: {\n permutation: [0, 1, 2, 3, 7, 4, 5, 6, 9, 11, 8, 10],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [0, 1, 2, 3, 5, 6, 7, 4],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 4, 1, 2, 3, 5],\n orientation: [0, 0, 0, 0, 0, 1],\n },\n },\n },\n};\n\ncube3x3x3KPuzzleDefinition.moves[\"Uw\"] = cube3x3x3KPuzzleDefinition.moves[\"u\"];\ncube3x3x3KPuzzleDefinition.moves[\"Lw\"] = cube3x3x3KPuzzleDefinition.moves[\"l\"];\ncube3x3x3KPuzzleDefinition.moves[\"Fw\"] = cube3x3x3KPuzzleDefinition.moves[\"f\"];\ncube3x3x3KPuzzleDefinition.moves[\"Rw\"] = cube3x3x3KPuzzleDefinition.moves[\"r\"];\ncube3x3x3KPuzzleDefinition.moves[\"Bw\"] = cube3x3x3KPuzzleDefinition.moves[\"b\"];\ncube3x3x3KPuzzleDefinition.moves[\"Dw\"] = cube3x3x3KPuzzleDefinition.moves[\"d\"];\n\ncube3x3x3KPuzzleDefinition.moves[\"Rv\"] = cube3x3x3KPuzzleDefinition.moves[\"x\"];\ncube3x3x3KPuzzleDefinition.moves[\"Uv\"] = cube3x3x3KPuzzleDefinition.moves[\"y\"];\ncube3x3x3KPuzzleDefinition.moves[\"Fv\"] = cube3x3x3KPuzzleDefinition.moves[\"z\"];\ncube3x3x3KPuzzleDefinition.moves[\"Lv\"] = {\n EDGES: {\n permutation: [2, 10, 6, 11, 0, 8, 4, 9, 1, 3, 5, 7],\n orientation: [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0],\n },\n CORNERS: {\n permutation: [1, 7, 6, 2, 0, 3, 5, 4],\n orientation: [2, 1, 2, 1, 1, 2, 1, 2],\n },\n CENTERS: {\n permutation: [4, 1, 0, 3, 5, 2],\n orientation: [2, 1, 0, 3, 2, 0],\n },\n};\ncube3x3x3KPuzzleDefinition.moves[\"Dv\"] = {\n EDGES: {\n permutation: [3, 0, 1, 2, 7, 4, 5, 6, 9, 11, 8, 10],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [3, 0, 1, 2, 5, 6, 7, 4],\n orientation: [0, 0, 0, 0, 0, 0, 0, 0],\n },\n CENTERS: {\n permutation: [0, 4, 1, 2, 3, 5],\n orientation: [3, 0, 0, 0, 0, 1],\n },\n};\ncube3x3x3KPuzzleDefinition.moves[\"Bv\"] = {\n EDGES: {\n permutation: [8, 5, 10, 1, 9, 7, 11, 3, 4, 0, 6, 2],\n orientation: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],\n },\n CORNERS: {\n permutation: [4, 7, 1, 0, 5, 3, 2, 6],\n orientation: [1, 2, 1, 2, 2, 1, 2, 1],\n },\n CENTERS: {\n permutation: [3, 0, 2, 5, 4, 1],\n orientation: [3, 3, 3, 3, 1, 3],\n },\n};\n", "export { KPuzzle } from \"./KPuzzle\";\nexport type { KTransformation } from \"./KTransformation\";\nexport {\n KPuzzleDefinition,\n KTransformationData,\n KStateData,\n} from \"./KPuzzleDefinition\";\nexport { KState } from \"./KState\";\n\nimport { KPuzzle } from \"./KPuzzle\";\nimport { cube3x3x3KPuzzleDefinition } from \"./3x3x3/3x3x3.kpuzzle.json\";\nexport const experimental3x3x3KPuzzle = new KPuzzle(cube3x3x3KPuzzleDefinition);\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -2,13 +2,7 @@ import {
2
2
  cube3x3x3,
3
3
  getFaceletAppearance,
4
4
  puzzles
5
- } from "./chunk-DK6PXBB2.js";
6
- import {
7
- KPuzzle,
8
- areTransformationsEquivalent,
9
- transformationForQuantumMove,
10
- transformationOrder
11
- } from "./chunk-X6JHXPDX.js";
5
+ } from "./chunk-25PPOENI.js";
12
6
  import {
13
7
  Move
14
8
  } from "./chunk-EWRBHQFX.js";
@@ -39,6 +33,11 @@ import {
39
33
  Vector3
40
34
  } from "three";
41
35
 
36
+ // src/cubing/twisty/controllers/easing.ts
37
+ function smootherStep(x) {
38
+ return x * x * x * (10 - x * (15 - 6 * x));
39
+ }
40
+
42
41
  // src/cubing/vendor/p-lazy/p-lazy.ts
43
42
  var PLazy = class extends Promise {
44
43
  constructor(executor) {
@@ -426,11 +425,6 @@ var StickeringProp = class extends SimpleTwistyPropSource {
426
425
  }
427
426
  };
428
427
 
429
- // src/cubing/twisty/controllers/easing.ts
430
- function smootherStep(x) {
431
- return x * x * x * (10 - x * (15 - 6 * x));
432
- }
433
-
434
428
  // src/cubing/twisty/views/3D/TAU.ts
435
429
  var TAU = Math.PI * 2;
436
430
  var DEGREES_PER_RADIAN = 360 / TAU;
@@ -801,9 +795,9 @@ function sharedStickerGeometry() {
801
795
  return sharedStickerGeometryCache ?? (sharedStickerGeometryCache = newStickerGeometry());
802
796
  }
803
797
  var Cube3D = class extends Object3D {
804
- constructor(def, scheduleRenderCallback, options = {}) {
798
+ constructor(kpuzzle, scheduleRenderCallback, options = {}) {
805
799
  super();
806
- this.def = def;
800
+ this.kpuzzle = kpuzzle;
807
801
  this.scheduleRenderCallback = scheduleRenderCallback;
808
802
  this.pieces = {};
809
803
  this.experimentalHintStickerMeshes = [];
@@ -820,8 +814,8 @@ var Cube3D = class extends Object3D {
820
814
  });
821
815
  this.options = { ...cube3DOptionsDefaults };
822
816
  Object.assign(this.options, options);
823
- if (this.def.name !== "3x3x3") {
824
- throw new Error(`Invalid puzzle for this Cube3D implementation: ${this.def.name}`);
817
+ if (this.kpuzzle.name() !== "3x3x3") {
818
+ throw new Error(`Invalid puzzle for this Cube3D implementation: ${this.kpuzzle.name()}`);
825
819
  }
826
820
  if (options.foundationSprite) {
827
821
  this.setSprite(options.foundationSprite);
@@ -914,18 +908,18 @@ var Cube3D = class extends Object3D {
914
908
  for (const orbit in pieceDefs) {
915
909
  const pieces = pieceDefs[orbit];
916
910
  for (let i = 0; i < pieces.length; i++) {
917
- const j = reid333[orbit].permutation[i];
911
+ const j = reid333.stateData[orbit].pieces[i];
918
912
  this.pieces[orbit][j].matrix.copy(pieceDefs[orbit][i].matrix);
919
- this.pieces[orbit][j].matrix.multiply(orientationRotation[orbit][reid333[orbit].orientation[i]]);
913
+ this.pieces[orbit][j].matrix.multiply(orientationRotation[orbit][reid333.stateData[orbit].orientation[i]]);
920
914
  }
921
915
  for (const moveProgress of p.movesInProgress) {
922
916
  const move = moveProgress.move;
923
917
  const turnNormal = axesInfo[familyToAxis[move.family]].vector;
924
918
  const moveMatrix = new Matrix4().makeRotationAxis(turnNormal, -this.ease(moveProgress.fraction) * moveProgress.direction * move.amount * TAU / 4);
925
919
  for (let i = 0; i < pieces.length; i++) {
926
- const k = this.def.moves[move.family][orbit].permutation[i];
927
- if (i !== k || this.def.moves[move.family][orbit].orientation[i] !== 0) {
928
- const j = reid333[orbit].permutation[i];
920
+ const k = this.kpuzzle.definition.moves[move.family][orbit].permutation[i];
921
+ if (i !== k || this.kpuzzle.definition.moves[move.family][orbit].orientation[i] !== 0) {
922
+ const j = reid333.stateData[orbit].pieces[i];
929
923
  this.pieces[orbit][j].matrix.premultiply(moveMatrix);
930
924
  }
931
925
  }
@@ -1380,15 +1374,14 @@ var AxisInfo2 = class {
1380
1374
  };
1381
1375
  var DEFAULT_COLOR_FRACTION = 0.71;
1382
1376
  var PG_SCALE = 0.5;
1383
- var _pendingStickeringUpdate, _cachedKPuzzle, _kpuzzle, kpuzzle_get, _isValidMove, isValidMove_fn;
1377
+ var _pendingStickeringUpdate, _isValidMove, isValidMove_fn;
1384
1378
  var PG3D = class extends Object3D2 {
1385
- constructor(scheduleRenderCallback, definition, stickerDat, enableFoundationOpt = false, enableHintStickersOpt = false, hintStickerHeightScale = 1, params = {}) {
1379
+ constructor(scheduleRenderCallback, kpuzzle, stickerDat, enableFoundationOpt = false, enableHintStickersOpt = false, hintStickerHeightScale = 1, params = {}) {
1386
1380
  super();
1387
1381
  this.scheduleRenderCallback = scheduleRenderCallback;
1388
- this.definition = definition;
1382
+ this.kpuzzle = kpuzzle;
1389
1383
  this.stickerDat = stickerDat;
1390
1384
  this.params = params;
1391
- __privateAdd(this, _kpuzzle);
1392
1385
  __privateAdd(this, _isValidMove);
1393
1386
  this.stickerTargets = [];
1394
1387
  this.controlTargets = [];
@@ -1396,7 +1389,6 @@ var PG3D = class extends Object3D2 {
1396
1389
  this.showHintStickers = false;
1397
1390
  this.showFoundations = false;
1398
1391
  __privateAdd(this, _pendingStickeringUpdate, false);
1399
- __privateAdd(this, _cachedKPuzzle, void 0);
1400
1392
  if (stickerDat.stickers.length === 0) {
1401
1393
  throw Error("Reuse of stickerdat from pg; please don't do that.");
1402
1394
  }
@@ -1550,15 +1542,13 @@ var PG3D = class extends Object3D2 {
1550
1542
  if (transformations.invert) {
1551
1543
  closestMove = closestMove.invert();
1552
1544
  }
1553
- __privateGet(this, _kpuzzle, kpuzzle_get).reset();
1554
- __privateGet(this, _kpuzzle, kpuzzle_get).applyMove(closestMove);
1555
- const order = transformationOrder(this.definition, __privateGet(this, _kpuzzle, kpuzzle_get).state);
1545
+ const order = this.kpuzzle.moveToTransformation(closestMove).repetitionOrder();
1556
1546
  return { move: closestMove, order };
1557
1547
  }
1558
1548
  experimentalSetAppearance(appearance) {
1559
1549
  this.params.appearance = appearance;
1560
- for (const orbitName in this.definition.orbits) {
1561
- const { numPieces, orientations } = this.definition.orbits[orbitName];
1550
+ for (const orbitName in this.kpuzzle.definition.orbits) {
1551
+ const { numPieces, orientations } = this.kpuzzle.definition.orbits[orbitName];
1562
1552
  for (let pieceIdx = 0; pieceIdx < numPieces; pieceIdx++) {
1563
1553
  for (let faceletIdx = 0; faceletIdx < orientations; faceletIdx++) {
1564
1554
  const faceletAppearance = getFaceletAppearance(appearance, orbitName, pieceIdx, faceletIdx, false);
@@ -1576,16 +1566,19 @@ var PG3D = class extends Object3D2 {
1576
1566
  }
1577
1567
  }
1578
1568
  onPositionChange(p) {
1579
- const state = p.state;
1569
+ const transformation = p.state.experimentalToTransformation();
1570
+ if (!transformation) {
1571
+ throw new Error("indistinguishable pieces are not supported by PG3D yet");
1572
+ }
1580
1573
  const noRotation = new Euler2();
1581
1574
  this.movingObj.rotation.copy(noRotation);
1582
1575
  let colormods = 0;
1583
1576
  const filler = this.filler;
1584
1577
  const ind = filler.ind;
1585
- if (!this.lastPos || __privateGet(this, _pendingStickeringUpdate) || !areTransformationsEquivalent(this.definition, this.lastPos.state, state)) {
1578
+ if (!this.lastPos || __privateGet(this, _pendingStickeringUpdate) || !this.lastPos.state.experimentalToTransformation().isIdentical(transformation)) {
1586
1579
  for (const orbit in this.stickers) {
1587
1580
  const pieces = this.stickers[orbit];
1588
- const pos2 = state[orbit];
1581
+ const pos2 = transformation.transformationData[orbit];
1589
1582
  const orin = pieces.length;
1590
1583
  if (orin === 1) {
1591
1584
  const pieces2 = pieces[0];
@@ -1619,20 +1612,17 @@ var PG3D = class extends Object3D2 {
1619
1612
  for (const moveProgress of p.movesInProgress) {
1620
1613
  const externalMove = moveProgress.move;
1621
1614
  const unswizzled = this.stickerDat.unswizzle(externalMove);
1622
- const move = this.stickerDat.notationMapper.notationToInternal(externalMove);
1623
- if (move === null) {
1624
- throw Error("Bad blockmove " + externalMove.family);
1625
- }
1626
- const quantumTransformation = transformationForQuantumMove(this.definition, externalMove.quantum);
1615
+ const move = externalMove;
1616
+ const quantumTransformation = this.kpuzzle.moveToTransformation(move.modified({ amount: 1 }));
1627
1617
  const ax = this.axesInfo[unswizzled];
1628
1618
  const turnNormal = ax.axis;
1629
1619
  const angle = -this.ease(moveProgress.fraction) * moveProgress.direction * move.amount * TAU / ax.order;
1630
1620
  this.movingObj.rotateOnAxis(turnNormal, angle);
1631
- if (this.lastMove !== quantumTransformation) {
1621
+ if (this.lastMoveTransformation !== quantumTransformation) {
1632
1622
  for (const orbit in this.stickers) {
1633
1623
  const pieces = this.stickers[orbit];
1634
1624
  const orin = pieces.length;
1635
- const bmv = quantumTransformation[orbit];
1625
+ const bmv = quantumTransformation.transformationData[orbit];
1636
1626
  for (let ori = 0; ori < orin; ori++) {
1637
1627
  const pieces2 = pieces[ori];
1638
1628
  for (let i = 0; i < pieces2.length; i++) {
@@ -1670,7 +1660,7 @@ var PG3D = class extends Object3D2 {
1670
1660
  }
1671
1661
  }
1672
1662
  }
1673
- this.lastMove = quantumTransformation;
1663
+ this.lastMoveTransformation = quantumTransformation;
1674
1664
  }
1675
1665
  }
1676
1666
  if (vismods) {
@@ -1827,15 +1817,10 @@ var PG3D = class extends Object3D2 {
1827
1817
  }
1828
1818
  };
1829
1819
  _pendingStickeringUpdate = new WeakMap();
1830
- _cachedKPuzzle = new WeakMap();
1831
- _kpuzzle = new WeakSet();
1832
- kpuzzle_get = function() {
1833
- return __privateGet(this, _cachedKPuzzle) ?? __privateSet(this, _cachedKPuzzle, new KPuzzle(this.definition));
1834
- };
1835
1820
  _isValidMove = new WeakSet();
1836
1821
  isValidMove_fn = function(move) {
1837
1822
  try {
1838
- __privateGet(this, _kpuzzle, kpuzzle_get).applyMove(move);
1823
+ this.kpuzzle.moveToTransformation(move);
1839
1824
  return true;
1840
1825
  } catch (_) {
1841
1826
  return false;
@@ -1881,12 +1866,12 @@ var Twisty3DScene = class extends ThreeScene {
1881
1866
  async function cube3DShim(options) {
1882
1867
  const renderCallbackShim = () => {
1883
1868
  };
1884
- return new Cube3D(await cube3x3x3.def(), renderCallbackShim, options);
1869
+ return new Cube3D(await cube3x3x3.kpuzzle(), renderCallbackShim, options);
1885
1870
  }
1886
1871
  async function pg3dShim(puzzleLoader, hintFacelets) {
1887
1872
  const renderCallbackShim = () => {
1888
1873
  };
1889
- return new PG3D(renderCallbackShim, await puzzleLoader.def(), (await puzzleLoader.pg()).get3d(), true, hintFacelets === "floating");
1874
+ return new PG3D(renderCallbackShim, await puzzleLoader.kpuzzle(), (await puzzleLoader.pg()).get3d(), true, hintFacelets === "floating");
1890
1875
  }
1891
1876
 
1892
1877
  export {
@@ -1907,4 +1892,4 @@ export {
1907
1892
  pg3dShim,
1908
1893
  T3I
1909
1894
  };
1910
- //# sourceMappingURL=chunk-N3RNWU5T.js.map
1895
+ //# sourceMappingURL=chunk-PQKDEV4Z.js.map