@mindexec/cli 0.2.222 → 0.2.225

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindexec/cli",
3
- "version": "0.2.222",
3
+ "version": "0.2.225",
4
4
  "description": "MindExec local runtime and bridge CLI",
5
5
  "main": "server.js",
6
6
  "type": "module",
@@ -5,7 +5,7 @@
5
5
  const DEBUG = false;
6
6
  const FPS_DEBUG = false;
7
7
  const FRAME_PERF_DEBUG = false;
8
- const MINDMAP_CORE_BUILD_ID = '20260619-ua-motion-hidden-work-v669';
8
+ const MINDMAP_CORE_BUILD_ID = '20260619-ua-motion-hidden-work-v672';
9
9
  const CanvasPhase = Object.freeze({
10
10
  Booting: 'booting',
11
11
  BoardFileLoading: 'board-file-loading',
@@ -77,6 +77,7 @@
77
77
  });
78
78
  const CanvasPhaseSet = new Set(Object.values(CanvasPhase));
79
79
  const VIEWPORT_METRICS_POLL_INTERVAL = 480;
80
+ const PASSIVE_DOM_OVERLAY_RUNTIME_ENABLED = false;
80
81
  const PASSIVE_OVERLAY_ZOOM_DEFER_VISIBLE_THRESHOLD = 24;
81
82
  const PASSIVE_OVERLAY_INTERACTIVE_REFRESH_INTERVAL_MS = 48;
82
83
  const PASSIVE_OVERLAY_INTERACTIVE_DENSE_REFRESH_INTERVAL_MS = 72;
@@ -410,11 +411,14 @@
410
411
  return;
411
412
  }
412
413
 
413
- if (typeof document === 'undefined' || !document.body) {
414
+ if (typeof document === 'undefined') {
414
415
  return;
415
416
  }
416
417
 
417
- const targetElement = moduleInstance?.cssRenderer?.domElement || document.body;
418
+ const targetElement = moduleInstance?.cssRenderer?.domElement || null;
419
+ if (!targetElement) {
420
+ return;
421
+ }
418
422
  if (_mindCanvasPerfClassState.target && _mindCanvasPerfClassState.target !== targetElement) {
419
423
  _mindCanvasPerfClassState.target.classList?.remove?.('mindcanvas-is-moving', 'mindcanvas-is-dense');
420
424
  _mindCanvasPerfClassState.moving = false;
@@ -474,10 +478,12 @@
474
478
  }
475
479
 
476
480
  // Static backgrounds can move as a single viewport surface. Continuous
477
- // themes need real animation frames during interaction; freezing the
478
- // last WebGL canvas makes particle themes look like they are skipping.
481
+ // particle themes keep real animation only when the user explicitly asks
482
+ // for 60fps animation; the default work mode reuses the last WebGL
483
+ // surface during camera motion so one animated background cannot dominate
484
+ // pan/zoom cost on low-power GPUs.
479
485
  if (isContinuousBackgroundTheme(module) === true) {
480
- return false;
486
+ return module?.useAnimation60Fps !== true;
481
487
  }
482
488
 
483
489
  return true;
@@ -532,6 +538,7 @@
532
538
  }
533
539
 
534
540
  const RENDER_DEBUG_STORAGE_KEY = 'mindmap.renderDebug.flags';
541
+ const RENDER_DEBUG_FLAGS_SCHEMA_VERSION = 2;
535
542
  const DEFAULT_RENDER_DEBUG_FLAGS = Object.freeze({
536
543
  enableCss3d: true,
537
544
  enableCss3dTransformSync: true,
@@ -542,7 +549,7 @@
542
549
  enableLodUpdate: true,
543
550
  enableWebglRender: true,
544
551
  enableCssImageLodFallback: false,
545
- autoFreezeLodDuringMotion: true,
552
+ autoFreezeLodDuringMotion: false,
546
553
  freezeVisibilityDuringMotion: false,
547
554
  freezeLodDuringMotion: false,
548
555
  enableFramePerfProbe: false,
@@ -925,7 +932,16 @@
925
932
  return { ...DEFAULT_RENDER_DEBUG_FLAGS };
926
933
  }
927
934
 
928
- return normalizeRenderDebugFlags(JSON.parse(raw));
935
+ const parsed = JSON.parse(raw);
936
+ if (!parsed ||
937
+ typeof parsed !== 'object' ||
938
+ Number(parsed.schemaVersion || 0) !== RENDER_DEBUG_FLAGS_SCHEMA_VERSION ||
939
+ !parsed.flags ||
940
+ typeof parsed.flags !== 'object') {
941
+ return { ...DEFAULT_RENDER_DEBUG_FLAGS };
942
+ }
943
+
944
+ return normalizeRenderDebugFlags(parsed.flags);
929
945
  } catch {
930
946
  return { ...DEFAULT_RENDER_DEBUG_FLAGS };
931
947
  }
@@ -933,7 +949,10 @@
933
949
 
934
950
  function persistRenderDebugFlags() {
935
951
  try {
936
- globalThis.localStorage?.setItem?.(RENDER_DEBUG_STORAGE_KEY, JSON.stringify(renderDebugFlags));
952
+ globalThis.localStorage?.setItem?.(RENDER_DEBUG_STORAGE_KEY, JSON.stringify({
953
+ schemaVersion: RENDER_DEBUG_FLAGS_SCHEMA_VERSION,
954
+ flags: renderDebugFlags
955
+ }));
937
956
  } catch { }
938
957
  }
939
958
 
@@ -5457,7 +5476,6 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
5457
5476
 
5458
5477
  if (this.isZooming && !isCameraMoving && timeSinceLastInput > ZOOM_END_DELAY_MS) {
5459
5478
  this.isZooming = false;
5460
- document.body?.classList?.remove?.('is-zooming');
5461
5479
  this.cssRenderer?.domElement?.classList?.remove?.('is-zooming');
5462
5480
  if (FRAME_PERF_DEBUG) {
5463
5481
  console.log(`[Perf] Zoom ended (${timeSinceLastInput.toFixed(0)}ms since last input)`);
@@ -5771,8 +5789,8 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
5771
5789
  const isInteractiveFrame = this.isZooming || this.isPanning || isCameraMoving || isNodeInteracting || !!this.isWindowResizing;
5772
5790
  const useTextOverlayV2 = !isBoardLoading && this.useTextOverlayV2 === true && !!window.MindMapTextOverlayV2;
5773
5791
  const isPassiveDomOverlayRuntimeEnabled =
5774
- useTextOverlayV2 &&
5775
- window.MindMapTextOverlayV2?.isPassiveDomOverlayEnabled?.() === true;
5792
+ PASSIVE_DOM_OVERLAY_RUNTIME_ENABLED === true &&
5793
+ useTextOverlayV2;
5776
5794
  const renderDebugFlags = activeRenderDebugFlags;
5777
5795
  const isCss3dEnabled = !isBoardLoading && renderDebugFlags.enableCss3d !== false;
5778
5796
 
@@ -5902,9 +5920,7 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
5902
5920
 
5903
5921
  this.cssRenderer.renderCamera(this.camera);
5904
5922
  const shouldSyncPassiveOverlayTransformDuringMotion =
5905
- window.MindMapTextOverlayV2?.isPassiveDomOverlayEnabled?.() === true &&
5906
- this.useTextOverlayV2 === true &&
5907
- this.renderDebugFlags?.enableDomOverlay !== false;
5923
+ isPassiveDomOverlayRuntimeEnabled === true;
5908
5924
  if (shouldSyncPassiveOverlayTransformDuringMotion &&
5909
5925
  window.MindMapTextOverlayV2?.syncPassiveViewTransform) {
5910
5926
  window.MindMapTextOverlayV2.syncPassiveViewTransform(this);
@@ -6381,20 +6397,28 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
6381
6397
  const editingOverlayNodeId = useTextOverlayV2
6382
6398
  ? String(this._textOverlayV2State?.editing?.nodeId || '').trim()
6383
6399
  : String(this._editingOverlayState?.nodeId || '').trim();
6400
+ const hasFocusedTextOverlay = !!selectableOverlayNodeId;
6401
+ const hasEditingOverlay = !!editingOverlayNodeId;
6402
+ const shouldTrackTextOverlayDirty =
6403
+ isPassiveDomOverlayRuntimeEnabled === true ||
6404
+ hasFocusedTextOverlay === true ||
6405
+ hasEditingOverlay === true;
6384
6406
  const selectedOverlayNodeId = String(this.selectedNodeIdJs || '').trim();
6385
6407
  const overlaySelectionKey = `${selectedOverlayNodeId}|${selectableOverlayNodeId}|${editingOverlayNodeId}|${useTextOverlayV2 ? 'v2' : 'legacy'}`;
6386
6408
  if (overlaySelectionKey !== this._lastOverlaySelectionKey) {
6387
6409
  this._lastOverlaySelectionKey = overlaySelectionKey;
6388
- this._overlayDirty = true;
6410
+ if (shouldTrackTextOverlayDirty) {
6411
+ this._overlayDirty = true;
6412
+ }
6389
6413
  }
6390
- if (useTextOverlayV2 && (isNodeInteracting || hasNonCameraNavigationForcedUpdate || !!this.isWindowResizing)) {
6414
+ if (useTextOverlayV2 &&
6415
+ shouldTrackTextOverlayDirty &&
6416
+ (isNodeInteracting || hasNonCameraNavigationForcedUpdate || !!this.isWindowResizing)) {
6391
6417
  // V2 placements depend on live host rects, so drag/resize frames
6392
6418
  // must invalidate overlay layout even when the camera is stationary.
6393
6419
  this._overlayDirty = true;
6394
6420
  }
6395
6421
  _profileSection('pipelineOverlayPlan');
6396
- const hasFocusedTextOverlay = !!selectableOverlayNodeId;
6397
- const hasEditingOverlay = !!editingOverlayNodeId;
6398
6422
  const isUaStyleCameraTransformFrame =
6399
6423
  shouldPreferCameraOnlyMotionPipeline === true &&
6400
6424
  isCss3dEnabled === true &&
@@ -6714,7 +6738,7 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
6714
6738
  isMotionHeavyScene &&
6715
6739
  isMotionFreezeEligible;
6716
6740
  const shouldAutoFreezeLodMotion =
6717
- (renderDebugFlags.autoFreezeLodDuringMotion !== false || shouldAdaptiveFreezeMotionSafeguard) &&
6741
+ renderDebugFlags.autoFreezeLodDuringMotion === true &&
6718
6742
  shouldAdaptiveFreezeMotionSafeguard;
6719
6743
  const shouldFreezeVisibilityDuringMotion =
6720
6744
  (renderDebugFlags.freezeVisibilityDuringMotion === true || shouldAutoFreezeLodMotion) &&
@@ -7033,7 +7057,9 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
7033
7057
  const hasPassiveDomOverlaySurface =
7034
7058
  shouldRenderPassiveDomTextOverlay ||
7035
7059
  hasLiveInteractiveDomOverlay;
7036
- const overlayV2State = useTextOverlayV2 ? (this._textOverlayV2State || null) : null;
7060
+ const overlayV2State = useTextOverlayV2 && shouldTrackTextOverlayDirty
7061
+ ? (this._textOverlayV2State || null)
7062
+ : null;
7037
7063
  const hasOverlayV2DirtyState = !!(
7038
7064
  overlayV2State && (
7039
7065
  overlayV2State.dirtyLayout === true ||
@@ -7044,10 +7070,12 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
7044
7070
  );
7045
7071
  const hasOverlayFocus = hasFocusedTextOverlay || hasEditingOverlay;
7046
7072
  const hasMotionBlockingOverlayFocus = hasEditingOverlay;
7047
- const visibleOverlayCount = Math.max(
7048
- Number(this._visibleIds?.size || 0),
7049
- Number(this._prevVisibleIds?.size || 0)
7050
- );
7073
+ const visibleOverlayCount = isPassiveDomOverlayRuntimeEnabled
7074
+ ? Math.max(
7075
+ Number(this._visibleIds?.size || 0),
7076
+ Number(this._prevVisibleIds?.size || 0)
7077
+ )
7078
+ : 0;
7051
7079
  const shouldThrottlePassiveOverlayRefresh =
7052
7080
  useTextOverlayV2 &&
7053
7081
  shouldRenderPassiveDomTextOverlay &&
@@ -827,10 +827,6 @@
827
827
 
828
828
  /* Keep CSS3D nodes readable during camera motion, but drop expensive
829
829
  decorative effects consistently across selected and agent-style nodes. */
830
- body.is-zooming .css3d-resolution-wrapper,
831
- body.is-panning .css3d-resolution-wrapper,
832
- body.mindcanvas-is-moving .css3d-resolution-wrapper,
833
- body.mindcanvas-is-dense .css3d-resolution-wrapper,
834
830
  #css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper,
835
831
  #css3d-dom-wrapper.is-panning .css3d-resolution-wrapper,
836
832
  #css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper,
@@ -841,14 +837,6 @@
841
837
  -webkit-filter: none !important;
842
838
  }
843
839
 
844
- body.is-zooming .css3d-resolution-wrapper .css3d-dynamic-node,
845
- body.is-panning .css3d-resolution-wrapper .css3d-dynamic-node,
846
- body.mindcanvas-is-moving .css3d-resolution-wrapper .css3d-dynamic-node,
847
- body.mindcanvas-is-dense .css3d-resolution-wrapper .css3d-dynamic-node,
848
- body.is-zooming .css3d-resolution-wrapper [id^="css3d-node-"],
849
- body.is-panning .css3d-resolution-wrapper [id^="css3d-node-"],
850
- body.mindcanvas-is-moving .css3d-resolution-wrapper [id^="css3d-node-"],
851
- body.mindcanvas-is-dense .css3d-resolution-wrapper [id^="css3d-node-"],
852
840
  #css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper .css3d-dynamic-node,
853
841
  #css3d-dom-wrapper.is-panning .css3d-resolution-wrapper .css3d-dynamic-node,
854
842
  #css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper .css3d-dynamic-node,
@@ -864,36 +852,18 @@
864
852
  -webkit-backdrop-filter: none !important;
865
853
  }
866
854
 
867
- body.is-zooming .embed-content iframe,
868
- body.is-zooming .embed-iframe-host iframe,
869
- body.is-zooming .embed-card,
870
- body.is-zooming .embed-card *,
871
- body.is-zooming .embed-action,
872
- body.is-zooming .embed-play-button,
873
855
  #css3d-dom-wrapper.is-zooming .embed-content iframe,
874
856
  #css3d-dom-wrapper.is-zooming .embed-iframe-host iframe,
875
857
  #css3d-dom-wrapper.is-zooming .embed-card,
876
858
  #css3d-dom-wrapper.is-zooming .embed-card *,
877
859
  #css3d-dom-wrapper.is-zooming .embed-action,
878
860
  #css3d-dom-wrapper.is-zooming .embed-play-button,
879
- body.is-panning .embed-content iframe,
880
- body.is-panning .embed-iframe-host iframe,
881
- body.is-panning .embed-card,
882
- body.is-panning .embed-card *,
883
- body.is-panning .embed-action,
884
- body.is-panning .embed-play-button,
885
861
  body.is-node-dragging .embed-content iframe,
886
862
  body.is-node-dragging .embed-iframe-host iframe,
887
863
  body.is-node-dragging .embed-card,
888
864
  body.is-node-dragging .embed-card *,
889
865
  body.is-node-dragging .embed-action,
890
866
  body.is-node-dragging .embed-play-button,
891
- body.mindcanvas-is-moving .embed-content iframe,
892
- body.mindcanvas-is-moving .embed-iframe-host iframe,
893
- body.mindcanvas-is-moving .embed-card,
894
- body.mindcanvas-is-moving .embed-card *,
895
- body.mindcanvas-is-moving .embed-action,
896
- body.mindcanvas-is-moving .embed-play-button,
897
867
  #css3d-dom-wrapper.mindcanvas-is-moving .embed-content iframe,
898
868
  #css3d-dom-wrapper.mindcanvas-is-moving .embed-iframe-host iframe,
899
869
  #css3d-dom-wrapper.mindcanvas-is-moving .embed-card,
@@ -930,16 +900,10 @@
930
900
  pointer-events: auto !important;
931
901
  }
932
902
 
933
- body.is-zooming .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
934
- body.is-zooming .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
935
903
  #css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
936
904
  #css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
937
- body.is-panning .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
938
- body.is-panning .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
939
905
  body.is-node-dragging .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
940
906
  body.is-node-dragging .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
941
- body.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
942
- body.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
943
907
  #css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
944
908
  #css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
945
909
  .is-dragging .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
@@ -949,14 +913,6 @@
949
913
  pointer-events: none !important;
950
914
  }
951
915
 
952
- body.is-zooming .ai-loading-row.ai-loading-row-media,
953
- body.is-panning .ai-loading-row.ai-loading-row-media,
954
- body.mindcanvas-is-moving .ai-loading-row.ai-loading-row-media,
955
- body.mindcanvas-is-dense .ai-loading-row.ai-loading-row-media,
956
- body.is-zooming .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
957
- body.is-panning .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
958
- body.mindcanvas-is-moving .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
959
- body.mindcanvas-is-dense .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
960
916
  #css3d-dom-wrapper.is-zooming .ai-loading-row.ai-loading-row-media,
961
917
  #css3d-dom-wrapper.is-panning .ai-loading-row.ai-loading-row-media,
962
918
  #css3d-dom-wrapper.mindcanvas-is-moving .ai-loading-row.ai-loading-row-media,
@@ -96,7 +96,7 @@ window.MindMapInteractions = (function () {
96
96
  }
97
97
 
98
98
  function scheduleZoomMotionChrome(module) {
99
- if (!module || typeof document === 'undefined' || !document.body) {
99
+ if (!module || typeof document === 'undefined') {
100
100
  return;
101
101
  }
102
102
  if (MOTION_DOM_FANOUT_ENABLED !== true) {
@@ -107,9 +107,9 @@ window.MindMapInteractions = (function () {
107
107
  clearModuleTimer(module, '_zoomMotionChromeTimer');
108
108
  module._zoomMotionChromeTimer = setTimeout(() => {
109
109
  module._zoomMotionChromeTimer = null;
110
- const targetElement = module?.cssRenderer?.domElement || document.body;
110
+ const targetElement = module?.cssRenderer?.domElement || null;
111
111
  if (module.isZooming === true) {
112
- targetElement.classList.add('is-zooming');
112
+ targetElement?.classList?.add?.('is-zooming');
113
113
  }
114
114
  }, MOTION_DOM_FANOUT_DELAY_MS);
115
115
  }
@@ -117,11 +117,10 @@ window.MindMapInteractions = (function () {
117
117
  function clearZoomMotionChrome(module) {
118
118
  clearModuleTimer(module, '_zoomMotionChromeTimer');
119
119
  module?.cssRenderer?.domElement?.classList?.remove?.('is-zooming');
120
- document?.body?.classList?.remove?.('is-zooming');
121
120
  }
122
121
 
123
122
  function getPanMotionClassElement(module) {
124
- return module?.cssRenderer?.domElement || document?.body || null;
123
+ return module?.cssRenderer?.domElement || null;
125
124
  }
126
125
 
127
126
  function schedulePanMotionChrome(module) {
@@ -147,7 +146,6 @@ window.MindMapInteractions = (function () {
147
146
  function clearPanMotionChrome(module) {
148
147
  clearModuleTimer(module, '_panMotionChromeTimer');
149
148
  module?.cssRenderer?.domElement?.classList?.remove?.('is-panning');
150
- document?.body?.classList?.remove?.('is-panning');
151
149
  }
152
150
 
153
151
  function scheduleMotionWillChangeEnable(module) {
@@ -5426,7 +5424,7 @@ window.MindMapInteractions = (function () {
5426
5424
  module._physicalControlKeyDown = false;
5427
5425
  module._physicalMetaKeyDown = false;
5428
5426
  releaseCanvasInteractionSelectionLocks();
5429
- document.body?.classList?.remove?.('is-node-dragging', 'is-panning');
5427
+ document.body?.classList?.remove?.('is-node-dragging');
5430
5428
  module.cssRenderer?.domElement?.classList?.remove?.('is-dragging', 'is-panning');
5431
5429
  if (document.body) {
5432
5430
  document.body.style.cursor = '';
@@ -1,5 +1,5 @@
1
1
  self.assetsManifest = {
2
- "version": "NkvpJJ8/",
2
+ "version": "DOQXBbI8",
3
3
  "assets": [
4
4
  {
5
5
  "hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
@@ -78,7 +78,7 @@
78
78
  "url": "_content/MindExecution.Shared/js/marked.min.js"
79
79
  },
80
80
  {
81
- "hash": "sha256-IGDZ3MCmnbGYUOTQ+ZcCHKhoWl6A4Slr4e8fg9isZM8=",
81
+ "hash": "sha256-dAXTBBzz3gWtBqOMk0spDkHg8jlOGS+d4YmCyxO3QsI=",
82
82
  "url": "_content/MindExecution.Shared/js/mind-map-core.js"
83
83
  },
84
84
  {
@@ -86,7 +86,7 @@
86
86
  "url": "_content/MindExecution.Shared/js/mind-map-core.js.backup"
87
87
  },
88
88
  {
89
- "hash": "sha256-ie/IGvR2skZfq52M9F2BhanMZbOL9p84vuWvw8EvPFw=",
89
+ "hash": "sha256-5fmLBOdDbR09QvAV1juZUdcYEc/SLxHdGtCoL2h7Png=",
90
90
  "url": "_content/MindExecution.Shared/js/mind-map-css3d-manager.js"
91
91
  },
92
92
  {
@@ -106,7 +106,7 @@
106
106
  "url": "_content/MindExecution.Shared/js/mind-map-glow-shader.js"
107
107
  },
108
108
  {
109
- "hash": "sha256-wt0KmPRXo3aaKAC3Os0NDeUacjHxFu1XYUYA6OmtKw8=",
109
+ "hash": "sha256-vFjVl706htlkNXSeB04YhjKIbbKPIwnXm9r+qgd/EDk=",
110
110
  "url": "_content/MindExecution.Shared/js/mind-map-interactions.js"
111
111
  },
112
112
  {
@@ -1,4 +1,4 @@
1
- /* Manifest version: NkvpJJ8/ */
1
+ /* Manifest version: DOQXBbI8 */
2
2
  // Hosted deployments should prefer the network over stale offline caches.
3
3
  // This service worker immediately clears old Blazor offline caches and unregisters itself.
4
4