cubing 0.63.2 → 0.63.4

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 (111) hide show
  1. package/README.md +15 -1
  2. package/alg/index.d.ts +1 -1
  3. package/bluetooth/index.d.ts +1 -1
  4. package/dist/bin/chunks/{chunk-52ODPET6.js → chunk-E6RYEKYL.js} +2 -2
  5. package/dist/bin/order.js +8 -4
  6. package/dist/bin/order.js.map +2 -2
  7. package/dist/bin/puzzle-geometry-bin.js +8 -4
  8. package/dist/bin/puzzle-geometry-bin.js.map +2 -2
  9. package/dist/bin/scramble.js +8 -4
  10. package/dist/bin/scramble.js.map +2 -2
  11. package/dist/bin/svg.js +56 -0
  12. package/dist/bin/svg.js.map +7 -0
  13. package/dist/lib/cubing/alg/index.d.ts +2 -84
  14. package/dist/lib/cubing/alg/index.js +1 -1
  15. package/dist/lib/cubing/bluetooth/index.d.ts +147 -134
  16. package/dist/lib/cubing/bluetooth/index.js +29 -5
  17. package/dist/lib/cubing/bluetooth/index.js.map +2 -2
  18. package/dist/lib/cubing/chunks/{big-puzzle-orientation-ZVZQJEF5.js → big-puzzle-orientation-ADWIOX6S.js} +2 -2
  19. package/dist/lib/cubing/chunks/{chunk-M7YKTETT.js → chunk-53SI7XS4.js} +14 -4
  20. package/dist/lib/cubing/chunks/chunk-53SI7XS4.js.map +7 -0
  21. package/dist/lib/cubing/chunks/{chunk-RINY3U6G.js → chunk-5ONX3JVC.js} +7 -2
  22. package/dist/lib/cubing/chunks/{chunk-RINY3U6G.js.map → chunk-5ONX3JVC.js.map} +1 -1
  23. package/dist/lib/cubing/chunks/{chunk-ROB5TROI.js → chunk-7LXHWXCO.js} +2 -2
  24. package/dist/lib/cubing/chunks/{chunk-E3YLQC45.js → chunk-GHFBZYSV.js} +2 -2
  25. package/dist/lib/cubing/chunks/chunk-GHFBZYSV.js.map +7 -0
  26. package/dist/lib/cubing/chunks/{chunk-ZU7PSGX4.js → chunk-JCCXEYXU.js} +4 -3
  27. package/dist/lib/cubing/chunks/{chunk-ZU7PSGX4.js.map → chunk-JCCXEYXU.js.map} +1 -1
  28. package/dist/lib/cubing/chunks/{chunk-LWCBAAHO.js → chunk-LD4XJTCU.js} +28 -13
  29. package/dist/lib/cubing/chunks/chunk-LD4XJTCU.js.map +7 -0
  30. package/dist/lib/cubing/chunks/{chunk-O6HEZXGY.js → chunk-N5FJ5YIA.js} +4 -3
  31. package/dist/lib/cubing/chunks/{chunk-O6HEZXGY.js.map → chunk-N5FJ5YIA.js.map} +1 -1
  32. package/dist/lib/cubing/chunks/{chunk-NGW52SHR.js → chunk-S74APGTK.js} +3 -3
  33. package/dist/lib/cubing/chunks/{chunk-FLK6AZKB.js → chunk-VYAO5FCM.js} +7 -7
  34. package/dist/lib/cubing/chunks/{chunk-FLK6AZKB.js.map → chunk-VYAO5FCM.js.map} +2 -2
  35. package/dist/lib/cubing/chunks/{chunk-FUHYAW74.js → chunk-WBMKMQAL.js} +49 -63
  36. package/dist/lib/cubing/chunks/chunk-WBMKMQAL.js.map +7 -0
  37. package/dist/lib/cubing/chunks/{chunk-V27EM5TJ.js → chunk-XVZLWT3A.js} +44 -49
  38. package/dist/lib/cubing/chunks/chunk-XVZLWT3A.js.map +7 -0
  39. package/dist/lib/cubing/chunks/{inside-Q56GLXG4.js → inside-VUJSPBRA.js} +64 -28
  40. package/dist/lib/cubing/chunks/inside-VUJSPBRA.js.map +7 -0
  41. package/dist/lib/cubing/chunks/puzzles-dynamic-4x4x4-AIGABOAR.js +132 -0
  42. package/dist/lib/cubing/chunks/puzzles-dynamic-4x4x4-AIGABOAR.js.map +7 -0
  43. package/dist/lib/cubing/chunks/{search-dynamic-sgs-side-events-GB4WAJ7I.js → search-dynamic-sgs-side-events-LHAMZP5J.js} +6 -6
  44. package/dist/lib/cubing/chunks/{search-dynamic-sgs-unofficial-2CECFBP3.js → search-dynamic-sgs-unofficial-GXKMVR4W.js} +6 -6
  45. package/dist/lib/cubing/chunks/{search-dynamic-solve-4x4x4-E576AITS.js → search-dynamic-solve-4x4x4-N2X3RMYU.js} +7 -7
  46. package/dist/lib/cubing/chunks/{search-dynamic-solve-fto-UZMNOI6U.js → search-dynamic-solve-fto-I5ID5LXD.js} +2 -2
  47. package/dist/lib/cubing/chunks/search-dynamic-solve-kilominx-Y2D3C74Y.js +771 -0
  48. package/dist/lib/cubing/chunks/search-dynamic-solve-kilominx-Y2D3C74Y.js.map +7 -0
  49. package/dist/lib/cubing/chunks/search-worker-entry.js +7 -6
  50. package/dist/lib/cubing/chunks/search-worker-entry.js.map +2 -2
  51. package/dist/lib/cubing/chunks/{twips-YHXBF55O.js → twips-ZNMKGC5U.js} +4 -4
  52. package/dist/lib/cubing/chunks/twips_wasm_bg-TJNYGA2C-AP2O4LGG.js +10 -0
  53. package/dist/lib/cubing/chunks/twips_wasm_bg-TJNYGA2C-AP2O4LGG.js.map +7 -0
  54. package/dist/lib/cubing/chunks/{twisty-dynamic-3d-IKE4BUQG.js → twisty-dynamic-3d-LSRGWTXG.js} +105 -46
  55. package/dist/lib/cubing/chunks/twisty-dynamic-3d-LSRGWTXG.js.map +7 -0
  56. package/dist/lib/cubing/index-BXHm_6gm.d.ts +2626 -0
  57. package/dist/lib/cubing/index-Cvk652Bd.d.ts +76 -0
  58. package/dist/lib/cubing/kpuzzle/index.d.ts +2 -3
  59. package/dist/lib/cubing/kpuzzle/index.js +2 -2
  60. package/dist/lib/cubing/notation/index.d.ts +18 -17
  61. package/dist/lib/cubing/notation/index.js +4 -4
  62. package/dist/lib/cubing/outside-CwNOEuJJ.d.ts +38 -0
  63. package/dist/lib/cubing/protocol/index.d.ts +14 -14
  64. package/dist/lib/cubing/protocol/index.js +4 -4
  65. package/dist/lib/cubing/puzzle-geometry/index.d.ts +2 -8
  66. package/dist/lib/cubing/puzzle-geometry/index.js +33 -1
  67. package/dist/lib/cubing/puzzle-geometry/index.js.map +1 -1
  68. package/dist/lib/cubing/puzzles/index.d.ts +2 -45
  69. package/dist/lib/cubing/puzzles/index.js +4 -4
  70. package/dist/lib/cubing/scramble/index.d.ts +2 -4
  71. package/dist/lib/cubing/scramble/index.js +6 -6
  72. package/dist/lib/cubing/search/index.d.ts +4 -9
  73. package/dist/lib/cubing/search/index.js +6 -6
  74. package/dist/lib/cubing/stream/index.d.ts +2 -45
  75. package/dist/lib/cubing/stream/index.js +1 -1
  76. package/dist/lib/cubing/twisty/index.d.ts +2 -60
  77. package/dist/lib/cubing/twisty/index.js +101 -20
  78. package/dist/lib/cubing/twisty/index.js.map +3 -3
  79. package/kpuzzle/index.d.ts +1 -1
  80. package/notation/index.d.ts +1 -1
  81. package/package.json +19 -20
  82. package/protocol/index.d.ts +1 -1
  83. package/puzzle-geometry/index.d.ts +1 -1
  84. package/puzzles/index.d.ts +1 -1
  85. package/scramble/index.d.ts +1 -1
  86. package/search/index.d.ts +1 -1
  87. package/stream/index.d.ts +1 -1
  88. package/twisty/index.d.ts +1 -1
  89. package/dist/lib/cubing/PuzzleLoader-R-puDLmC.d.ts +0 -2352
  90. package/dist/lib/cubing/chunks/chunk-E3YLQC45.js.map +0 -7
  91. package/dist/lib/cubing/chunks/chunk-FUHYAW74.js.map +0 -7
  92. package/dist/lib/cubing/chunks/chunk-LWCBAAHO.js.map +0 -7
  93. package/dist/lib/cubing/chunks/chunk-M7YKTETT.js.map +0 -7
  94. package/dist/lib/cubing/chunks/chunk-V27EM5TJ.js.map +0 -7
  95. package/dist/lib/cubing/chunks/inside-Q56GLXG4.js.map +0 -7
  96. package/dist/lib/cubing/chunks/puzzles-dynamic-4x4x4-REUXFQJ4.js +0 -124
  97. package/dist/lib/cubing/chunks/puzzles-dynamic-4x4x4-REUXFQJ4.js.map +0 -7
  98. package/dist/lib/cubing/chunks/twips_wasm_bg-RWVQBVBA-5YCKA6O5.js +0 -10
  99. package/dist/lib/cubing/chunks/twips_wasm_bg-RWVQBVBA-5YCKA6O5.js.map +0 -7
  100. package/dist/lib/cubing/chunks/twisty-dynamic-3d-IKE4BUQG.js.map +0 -7
  101. package/dist/lib/cubing/events-IfSwQLYm.d.ts +0 -35
  102. package/dist/lib/cubing/index-btIxbuNp.d.ts +0 -33
  103. /package/dist/bin/chunks/{chunk-52ODPET6.js.map → chunk-E6RYEKYL.js.map} +0 -0
  104. /package/dist/lib/cubing/chunks/{big-puzzle-orientation-ZVZQJEF5.js.map → big-puzzle-orientation-ADWIOX6S.js.map} +0 -0
  105. /package/dist/lib/cubing/chunks/{chunk-ROB5TROI.js.map → chunk-7LXHWXCO.js.map} +0 -0
  106. /package/dist/lib/cubing/chunks/{chunk-NGW52SHR.js.map → chunk-S74APGTK.js.map} +0 -0
  107. /package/dist/lib/cubing/chunks/{search-dynamic-sgs-side-events-GB4WAJ7I.js.map → search-dynamic-sgs-side-events-LHAMZP5J.js.map} +0 -0
  108. /package/dist/lib/cubing/chunks/{search-dynamic-sgs-unofficial-2CECFBP3.js.map → search-dynamic-sgs-unofficial-GXKMVR4W.js.map} +0 -0
  109. /package/dist/lib/cubing/chunks/{search-dynamic-solve-4x4x4-E576AITS.js.map → search-dynamic-solve-4x4x4-N2X3RMYU.js.map} +0 -0
  110. /package/dist/lib/cubing/chunks/{search-dynamic-solve-fto-UZMNOI6U.js.map → search-dynamic-solve-fto-I5ID5LXD.js.map} +0 -0
  111. /package/dist/lib/cubing/chunks/{twips-YHXBF55O.js.map → twips-ZNMKGC5U.js.map} +0 -0
@@ -18,22 +18,22 @@ import {
18
18
  rawRenderPooled,
19
19
  setCameraFromOrbitCoordinates,
20
20
  setTwistyDebug
21
- } from "../chunks/chunk-LWCBAAHO.js";
21
+ } from "../chunks/chunk-LD4XJTCU.js";
22
22
  import {
23
23
  countAnimatedLeaves,
24
24
  countLeavesInExpansionForSimultaneousMoveIndexer,
25
25
  countMetricMoves
26
- } from "../chunks/chunk-ZU7PSGX4.js";
26
+ } from "../chunks/chunk-JCCXEYXU.js";
27
27
  import {
28
28
  puzzles
29
- } from "../chunks/chunk-FLK6AZKB.js";
29
+ } from "../chunks/chunk-VYAO5FCM.js";
30
30
  import {
31
31
  cube3x3x3,
32
32
  customPGPuzzleLoader,
33
33
  getPartialAppendOptionsForPuzzleSpecificSimplifyOptions,
34
34
  getPieceStickeringMask
35
- } from "../chunks/chunk-FUHYAW74.js";
36
- import "../chunks/chunk-RINY3U6G.js";
35
+ } from "../chunks/chunk-WBMKMQAL.js";
36
+ import "../chunks/chunk-5ONX3JVC.js";
37
37
  import {
38
38
  Alg,
39
39
  AlgBuilder,
@@ -52,7 +52,7 @@ import {
52
52
  functionFromTraversal,
53
53
  offsetMod,
54
54
  startCharIndexKey
55
- } from "../chunks/chunk-O6HEZXGY.js";
55
+ } from "../chunks/chunk-N5FJ5YIA.js";
56
56
 
57
57
  // src/cubing/twisty/controllers/indexer/AlgDuration.ts
58
58
  function defaultDurationForAmount(amount) {
@@ -73,6 +73,7 @@ var AlgDuration = class extends TraversalUp {
73
73
  super();
74
74
  this.durationForAmount = durationForAmount;
75
75
  }
76
+ durationForAmount;
76
77
  traverseAlg(alg) {
77
78
  let total = 0;
78
79
  for (const algNode of alg.childAlgNodes()) {
@@ -109,6 +110,7 @@ var SimpleAlgIndexer = class {
109
110
  this.kpuzzle = kpuzzle;
110
111
  this.moves = new Alg(alg.experimentalExpand());
111
112
  }
113
+ kpuzzle;
112
114
  moves;
113
115
  // TODO: Allow custom `durationFn`.
114
116
  durationFn = new AlgDuration(
@@ -162,6 +164,11 @@ var AlgWalkerDecoration = class {
162
164
  this.backward = backward;
163
165
  this.children = children;
164
166
  }
167
+ moveCount;
168
+ duration;
169
+ forward;
170
+ backward;
171
+ children;
165
172
  };
166
173
  var DecoratorConstructor = class extends TraversalUp {
167
174
  constructor(kpuzzle) {
@@ -176,6 +183,7 @@ var DecoratorConstructor = class extends TraversalUp {
176
183
  []
177
184
  );
178
185
  }
186
+ kpuzzle;
179
187
  identity;
180
188
  dummyLeaf;
181
189
  durationFn = new AlgDuration(
@@ -289,6 +297,8 @@ var WalkerDown = class {
289
297
  this.apd = apd;
290
298
  this.back = back;
291
299
  }
300
+ apd;
301
+ back;
292
302
  };
293
303
  var AlgWalker = class extends TraversalDownUp {
294
304
  constructor(kpuzzle, algOrAlgNode, apd) {
@@ -306,6 +316,9 @@ var AlgWalker = class extends TraversalDownUp {
306
316
  this.st = this.kpuzzle.identityTransformation();
307
317
  this.root = new WalkerDown(this.apd, false);
308
318
  }
319
+ kpuzzle;
320
+ algOrAlgNode;
321
+ apd;
309
322
  move;
310
323
  moveDuration;
311
324
  back;
@@ -560,6 +573,7 @@ var TreeAlgIndexer = class {
560
573
  this.decoration = deccon.traverseAlg(chunkedAlg);
561
574
  this.walker = new AlgWalker(this.kpuzzle, chunkedAlg, this.decoration);
562
575
  }
576
+ kpuzzle;
563
577
  decoration;
564
578
  walker;
565
579
  getAnimLeaf(index) {
@@ -732,6 +746,8 @@ var TwistyAnimatedSVG = class {
732
746
  this.drawPattern(this.kpuzzle.defaultPattern());
733
747
  }
734
748
  }
749
+ kpuzzle;
750
+ showUnknownOrientations;
735
751
  wrapperElement;
736
752
  svgElement;
737
753
  gradientDefs;
@@ -865,6 +881,9 @@ var ClassListManager = class {
865
881
  this.prefix = prefix;
866
882
  this.validSuffixes = validSuffixes;
867
883
  }
884
+ elem;
885
+ prefix;
886
+ validSuffixes;
868
887
  #currentClassName = null;
869
888
  // Does nothing if there was no value.
870
889
  clearValue() {
@@ -936,6 +955,7 @@ var CatchUpHelper = class {
936
955
  this.tempoScale = tempoScale;
937
956
  });
938
957
  }
958
+ model;
939
959
  catchingUp = false;
940
960
  pendingFrame = false;
941
961
  tempoScale = 1;
@@ -994,6 +1014,7 @@ var TwistyAnimationController = class {
994
1014
  this.catchUpHelper = new CatchUpHelper(this.model);
995
1015
  this.model.catchUpMove.addFreshListener(this.onCatchUpMoveProp.bind(this));
996
1016
  }
1017
+ delegate;
997
1018
  // TODO: #private?
998
1019
  playing = false;
999
1020
  direction = 1 /* Forwards */;
@@ -1164,6 +1185,7 @@ var TwistyPlayerController = class {
1164
1185
  this.model = model;
1165
1186
  this.animationController = new TwistyAnimationController(model, delegate);
1166
1187
  }
1188
+ model;
1167
1189
  animationController;
1168
1190
  jumpToStart(options) {
1169
1191
  this.animationController.jumpToStart(options);
@@ -1318,6 +1340,11 @@ var Twisty2DPuzzle = class extends ManagedCustomElement {
1318
1340
  );
1319
1341
  }
1320
1342
  }
1343
+ model;
1344
+ kpuzzle;
1345
+ svgSource;
1346
+ options;
1347
+ puzzleLoader;
1321
1348
  svgWrapper;
1322
1349
  scheduler = new RenderScheduler(this.render.bind(this));
1323
1350
  #cachedPosition = null;
@@ -1408,6 +1435,10 @@ var Twisty2DPuzzleWrapper = class {
1408
1435
  }
1409
1436
  );
1410
1437
  }
1438
+ model;
1439
+ schedulable;
1440
+ puzzleLoader;
1441
+ effectiveVisualization;
1411
1442
  #freshListenerManager = new FreshListenerManager();
1412
1443
  disconnect() {
1413
1444
  this.#freshListenerManager.disconnect();
@@ -1438,6 +1469,8 @@ var Twisty2DSceneWrapper = class extends ManagedCustomElement {
1438
1469
  this.model = model;
1439
1470
  this.effectiveVisualization = effectiveVisualization;
1440
1471
  }
1472
+ model;
1473
+ effectiveVisualization;
1441
1474
  #freshListenerManager = new FreshListenerManager();
1442
1475
  disconnect() {
1443
1476
  this.#freshListenerManager.disconnect();
@@ -1453,7 +1486,7 @@ var Twisty2DSceneWrapper = class extends ManagedCustomElement {
1453
1486
  }
1454
1487
  #cachedScene;
1455
1488
  async scene() {
1456
- return this.#cachedScene ??= (async () => new (await bulk3DCode()).ThreeScene())();
1489
+ return this.#cachedScene ??= (async () => new (await bulk3DCode).ThreeScene())();
1457
1490
  }
1458
1491
  scheduleRender() {
1459
1492
  this.#currentTwisty2DPuzzleWrapper?.scheduleRender();
@@ -1566,6 +1599,15 @@ var Twisty3DPuzzleWrapper = class extends EventTarget {
1566
1599
  this.scheduleRender();
1567
1600
  }
1568
1601
  );
1602
+ this.#freshListenerManager.addListener(
1603
+ this.model.twistySceneModel.hintFaceletsElevation,
1604
+ async (hintFaceletsElevation) => {
1605
+ (await this.twisty3DPuzzle()).experimentalUpdateOptions({
1606
+ hintFaceletsElevation
1607
+ });
1608
+ this.scheduleRender();
1609
+ }
1610
+ );
1569
1611
  this.#freshListenerManager.addMultiListener3(
1570
1612
  [
1571
1613
  this.model.twistySceneModel.stickeringMask,
@@ -1584,6 +1626,10 @@ var Twisty3DPuzzleWrapper = class extends EventTarget {
1584
1626
  }
1585
1627
  );
1586
1628
  }
1629
+ model;
1630
+ schedulable;
1631
+ puzzleLoader;
1632
+ visualizationStrategy;
1587
1633
  #freshListenerManager = new FreshListenerManager();
1588
1634
  disconnect() {
1589
1635
  this.#freshListenerManager.disconnect();
@@ -1595,26 +1641,31 @@ var Twisty3DPuzzleWrapper = class extends EventTarget {
1595
1641
  #cachedTwisty3DPuzzle = null;
1596
1642
  async twisty3DPuzzle() {
1597
1643
  return this.#cachedTwisty3DPuzzle ??= (async () => {
1598
- const proxyPromise = bulk3DCode();
1599
1644
  if (this.puzzleLoader.id === "3x3x3" && this.visualizationStrategy === "Cube3D") {
1600
1645
  const [
1601
1646
  foundationSprite,
1602
1647
  hintSprite,
1603
1648
  experimentalStickeringMask,
1604
- initialHintFaceletsAnimation
1649
+ initialHintFaceletsAnimation,
1650
+ faceletScale,
1651
+ hintFaceletsElevation
1605
1652
  ] = await Promise.all([
1606
1653
  this.model.twistySceneModel.foundationStickerSprite.get(),
1607
1654
  this.model.twistySceneModel.hintStickerSprite.get(),
1608
1655
  this.model.twistySceneModel.stickeringMask.get(),
1609
- this.model.twistySceneModel.initialHintFaceletsAnimation.get()
1656
+ this.model.twistySceneModel.initialHintFaceletsAnimation.get(),
1657
+ this.model.twistySceneModel.faceletScale.get(),
1658
+ this.model.twistySceneModel.hintFaceletsElevation.get()
1610
1659
  ]);
1611
- return (await proxyPromise).cube3DShim(
1660
+ return (await bulk3DCode).cube3DShim(
1612
1661
  () => this.schedulable.scheduleRender(),
1613
1662
  {
1614
1663
  foundationSprite,
1615
1664
  hintSprite,
1616
1665
  experimentalStickeringMask,
1617
- initialHintFaceletsAnimation
1666
+ initialHintFaceletsAnimation,
1667
+ faceletScale,
1668
+ hintFaceletsElevation
1618
1669
  }
1619
1670
  );
1620
1671
  } else {
@@ -1624,7 +1675,7 @@ var Twisty3DPuzzleWrapper = class extends EventTarget {
1624
1675
  this.model.twistySceneModel.hintStickerSprite.get(),
1625
1676
  this.model.twistySceneModel.faceletScale.get()
1626
1677
  ]);
1627
- const pg3d = (await proxyPromise).pg3dShim(
1678
+ const pg3d = (await bulk3DCode).pg3dShim(
1628
1679
  () => this.schedulable.scheduleRender(),
1629
1680
  this.puzzleLoader,
1630
1681
  hintFacelets === "auto" ? "floating" : hintFacelets,
@@ -1677,6 +1728,7 @@ var Twisty3DSceneWrapper = class extends ManagedCustomElement {
1677
1728
  super();
1678
1729
  this.model = model;
1679
1730
  }
1731
+ model;
1680
1732
  // @ts-expect-error TypeScript type inference appears to be borked: ts(2322)
1681
1733
  #backViewClassListManager = new ClassListManager(this, "back-view-", [
1682
1734
  "auto",
@@ -1735,7 +1787,7 @@ var Twisty3DSceneWrapper = class extends ManagedCustomElement {
1735
1787
  const [camera, { ThreeRaycaster, ThreeVector2 }] = await Promise.all([
1736
1788
  e.detail.cameraPromise,
1737
1789
  (async () => {
1738
- const { ThreeRaycaster: ThreeRaycaster2, ThreeVector2: ThreeVector22 } = await bulk3DCode();
1790
+ const { ThreeRaycaster: ThreeRaycaster2, ThreeVector2: ThreeVector22 } = await bulk3DCode;
1739
1791
  return { ThreeRaycaster: ThreeRaycaster2, ThreeVector2: ThreeVector22 };
1740
1792
  })()
1741
1793
  ]);
@@ -1754,7 +1806,7 @@ var Twisty3DSceneWrapper = class extends ManagedCustomElement {
1754
1806
  }
1755
1807
  #cachedScene;
1756
1808
  async scene() {
1757
- return this.#cachedScene ??= (async () => new (await bulk3DCode()).ThreeScene())();
1809
+ return this.#cachedScene ??= (async () => new (await bulk3DCode).ThreeScene())();
1758
1810
  }
1759
1811
  #vantages = /* @__PURE__ */ new Set();
1760
1812
  addVantage(vantage) {
@@ -2060,6 +2112,9 @@ var TwistyButtons = class extends ManagedCustomElement {
2060
2112
  this.controller = controller;
2061
2113
  this.defaultFullscreenElement = defaultFullscreenElement;
2062
2114
  }
2115
+ model;
2116
+ controller;
2117
+ defaultFullscreenElement;
2063
2118
  buttons = null;
2064
2119
  connectedCallback() {
2065
2120
  this.addCSS(buttonGridCSS);
@@ -2254,6 +2309,8 @@ var TwistyScrubber = class extends ManagedCustomElement {
2254
2309
  this.model = model;
2255
2310
  this.controller = controller;
2256
2311
  }
2312
+ model;
2313
+ controller;
2257
2314
  async onDetailedTimelineInfo(detailedTimelineInfo) {
2258
2315
  const inputElem = await this.inputElem();
2259
2316
  inputElem.min = detailedTimelineInfo.timeRange.start.toString();
@@ -2363,7 +2420,7 @@ async function screenshot(model, options) {
2363
2420
  orbitCoordinates
2364
2421
  ] = await Promise.all([
2365
2422
  (async () => {
2366
- const { ThreePerspectiveCamera: ThreePerspectiveCamera2, ThreeScene: ThreeScene2 } = await bulk3DCode();
2423
+ const { ThreePerspectiveCamera: ThreePerspectiveCamera2, ThreeScene: ThreeScene2 } = await bulk3DCode;
2367
2424
  return { ThreePerspectiveCamera: ThreePerspectiveCamera2, ThreeScene: ThreeScene2 };
2368
2425
  })(),
2369
2426
  await model.puzzleLoader.get(),
@@ -2905,6 +2962,7 @@ var SimultaneousMoveIndexer = class {
2905
2962
  this.kpuzzle = kpuzzle;
2906
2963
  this.animLeaves = options?.animationTimelineLeaves ?? simulMoves(alg);
2907
2964
  }
2965
+ kpuzzle;
2908
2966
  animLeaves;
2909
2967
  getAnimLeaf(index) {
2910
2968
  return this.animLeaves[Math.min(index, this.animLeaves.length - 1)]?.animLeaf ?? null;
@@ -3398,6 +3456,13 @@ var FoundationDisplayProp = class extends SimpleTwistyPropSource {
3398
3456
  }
3399
3457
  };
3400
3458
 
3459
+ // src/cubing/twisty/model/props/puzzle/display/HintFaceletsElevationProp.ts
3460
+ var HintFaceletsElevationProp = class extends SimpleTwistyPropSource {
3461
+ getDefaultValue() {
3462
+ return "auto";
3463
+ }
3464
+ };
3465
+
3401
3466
  // src/cubing/twisty/model/props/puzzle/display/InitialHintFaceletsAnimationProp.ts
3402
3467
  var InitialHintFaceletsAnimationProp = class extends SimpleTwistyPropSource {
3403
3468
  getDefaultValue() {
@@ -3408,7 +3473,7 @@ var InitialHintFaceletsAnimationProp = class extends SimpleTwistyPropSource {
3408
3473
  // src/cubing/twisty/model/props/puzzle/display/SpriteProp.ts
3409
3474
  var cachedLoader = null;
3410
3475
  async function loader() {
3411
- return cachedLoader ??= new (await bulk3DCode()).ThreeTextureLoader();
3476
+ return cachedLoader ??= new (await bulk3DCode).ThreeTextureLoader();
3412
3477
  }
3413
3478
  var SpriteProp = class extends TwistyPropDerived {
3414
3479
  async derive(inputs) {
@@ -3715,6 +3780,7 @@ var TwistySceneModel = class {
3715
3780
  puzzleLoader: twistyPlayerModel.puzzleLoader
3716
3781
  });
3717
3782
  }
3783
+ twistyPlayerModel;
3718
3784
  // Depth 0
3719
3785
  background = new BackgroundProp();
3720
3786
  colorSchemeRequest = new ColorSchemeRequestProp();
@@ -3725,6 +3791,7 @@ var TwistySceneModel = class {
3725
3791
  hintFacelet = new HintFaceletProp();
3726
3792
  hintStickerSpriteURL = new URLProp();
3727
3793
  initialHintFaceletsAnimation = new InitialHintFaceletsAnimationProp();
3794
+ hintFaceletsElevation = new HintFaceletsElevationProp();
3728
3795
  latitudeLimit = new LatitudeLimitProp();
3729
3796
  movePressInput = new MovePressInputProp();
3730
3797
  movePressCancelOptions = new MovePressCancelOptions();
@@ -3789,8 +3856,8 @@ var TwistyPlayerModel = class {
3789
3856
  videoURL = new URLProp();
3790
3857
  competitionID = new ArbitraryStringProp();
3791
3858
  /**
3792
- * `<twisty-player>` interally supports associating custom timing information
3793
- * for this move, but there is not an API for this yet. In order to support
3859
+ * `<twisty-player>` internally supports associating custom timing information
3860
+ * with moves, but there is not an API for this yet. In order to support
3794
3861
  * exploratory use cases for such a feature in the future, this property
3795
3862
  * allows setting timeline information.
3796
3863
  *
@@ -4233,6 +4300,14 @@ var TwistyPlayerSettable = class extends ManagedCustomElement {
4233
4300
  get experimentalInitialHintFaceletsAnimation() {
4234
4301
  throw err("experimentalInitialHintFaceletsAnimation");
4235
4302
  }
4303
+ set experimentalHintFaceletsElevation(elevation) {
4304
+ this.experimentalModel.twistySceneModel.hintFaceletsElevation.set(
4305
+ elevation
4306
+ );
4307
+ }
4308
+ get experimentalHintFaceletsElevation() {
4309
+ throw err("experimentalHintFaceletsElevation");
4310
+ }
4236
4311
  set experimentalDragInput(dragInputMode) {
4237
4312
  this.experimentalModel.twistySceneModel.dragInput.set(dragInputMode);
4238
4313
  }
@@ -4245,6 +4320,7 @@ var ExperimentalGetters = class {
4245
4320
  constructor(model) {
4246
4321
  this.model = model;
4247
4322
  }
4323
+ model;
4248
4324
  async alg() {
4249
4325
  return (await this.model.alg.get()).alg;
4250
4326
  }
@@ -4281,7 +4357,9 @@ var twistyPlayerAttributeMap = {
4281
4357
  "color-scheme": "colorScheme",
4282
4358
  "control-panel": "controlPanel",
4283
4359
  "back-view": "backView",
4360
+ "experimental-facelet-scale": "experimentalFaceletScale",
4284
4361
  "experimental-initial-hint-facelets-animation": "experimentalInitialHintFaceletsAnimation",
4362
+ "experimental-hint-facelets-elevation": "experimentalHintFaceletsElevation",
4285
4363
  // "indexer": "indexer",
4286
4364
  "viewer-link": "viewerLink",
4287
4365
  "experimental-move-press-input": "experimentalMovePressInput",
@@ -4307,7 +4385,7 @@ var propOnly = {
4307
4385
  experimentalMovePressCancelOptions: true
4308
4386
  };
4309
4387
  var cachedSharedIntersectionObserver;
4310
- var intersectedCallback = Symbol("intersectedCallback");
4388
+ var intersectedCallback = /* @__PURE__ */ Symbol("intersectedCallback");
4311
4389
  function waitForIntersection(player) {
4312
4390
  cachedSharedIntersectionObserver ??= new IntersectionObserver(
4313
4391
  (entries, observer) => {
@@ -5283,6 +5361,7 @@ var TwistyAlgLeafElem = class extends ManagedCustomElement {
5283
5361
  ).textContent = text;
5284
5362
  }
5285
5363
  }
5364
+ algOrAlgNode;
5286
5365
  pathToIndex(_index) {
5287
5366
  return [];
5288
5367
  }
@@ -5297,6 +5376,7 @@ var TwistyAlgWrapperElem = class extends HTMLElementShim {
5297
5376
  this.algOrAlgNode = algOrAlgNode;
5298
5377
  this.classList.add(className);
5299
5378
  }
5379
+ algOrAlgNode;
5300
5380
  queue = [];
5301
5381
  addString(str) {
5302
5382
  this.queue.push(document.createTextNode(str));
@@ -5889,6 +5969,7 @@ var TwizzleLink = class extends ManagedCustomElement {
5889
5969
  super({ mode: "open" });
5890
5970
  this.options = options;
5891
5971
  }
5972
+ options;
5892
5973
  twistyPlayer = null;
5893
5974
  a = null;
5894
5975
  #fallback() {