@mindexec/cli 0.2.72 → 0.2.74

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.72",
3
+ "version": "0.2.74",
4
4
  "description": "MindExec local runtime and bridge CLI",
5
5
  "main": "server.js",
6
6
  "type": "module",
@@ -715,6 +715,10 @@ try {
715
715
  assert.ok(bodyChildOrder.endsWith('remoteFleetStatusRail'), bodyChildOrder);
716
716
  assert.ok(statusFooter.style.cssText.includes('flex-direction: row'));
717
717
  assert.ok(statusFooter.style.cssText.includes('justify-content: flex-end'));
718
+ const sizeControls = statusFooter.querySelector('[data-remote-fleet-size-controls="true"]');
719
+ assert.ok(sizeControls);
720
+ assert.equal(sizeControls.querySelector('[data-remote-fleet-action="monitor-size-down"]')?.textContent, '-');
721
+ assert.equal(sizeControls.querySelector('[data-remote-fleet-action="monitor-size-up"]')?.textContent, '+');
718
722
  assert.match(statusFooter.style.cssText, /box-sizing:\s*border-box;/);
719
723
  assert.equal(statusFooter.querySelectorAll('[data-remote-fleet-status-item]').length, 5);
720
724
  assert.ok(statusFooter.querySelector('[data-remote-fleet-status-item="route"]'));
@@ -733,6 +737,14 @@ try {
733
737
  assert.ok(initialDetailPanel?.textContent.includes('Load'));
734
738
  assert.ok(cards[0]?.querySelector('[data-remote-fleet-device-preview="tile"]'));
735
739
  assert.equal(/\b(Seen|Uptime|Mem|Load)\b/.test(cards[0]?.textContent || ''), false);
740
+ assert.match(deviceGrid.style.cssText, /minmax\(132px,\s*1fr\)/);
741
+ sizeControls.querySelector('[data-remote-fleet-action="monitor-size-up"]').dispatchEvent({ type: 'click' });
742
+ assert.equal(bodyView.dataset.remoteFleetDensity, 'large');
743
+ assert.match(bodyView.querySelector('[data-remote-fleet-device-grid="true"]')?.style.cssText || '', /minmax\(168px,\s*1fr\)/);
744
+ bodyView.querySelector('[data-remote-fleet-action="monitor-size-down"]').dispatchEvent({ type: 'click' });
745
+ assert.equal(bodyView.dataset.remoteFleetDensity, 'cards');
746
+ assert.match(bodyView.querySelector('[data-remote-fleet-device-grid="true"]')?.style.cssText || '', /minmax\(132px,\s*1fr\)/);
747
+ cards = bodyView.querySelectorAll('article[data-device-id]');
736
748
  const patchTarget = devices.find(device => device.ThumbnailEnabled === true && device.LiveStreamActive !== true);
737
749
  assert.ok(patchTarget);
738
750
  const patchCard = Array.from(cards).find(card => card.dataset.deviceId === patchTarget.DeviceId);
@@ -793,17 +805,7 @@ try {
793
805
  assert.equal(bodyView.textContent.includes('Host: Active'), false);
794
806
  assert.equal(nodeShell.querySelector('[data-remote-fleet-host-indicator="true"]')?.dataset.remoteFleetHostActive, 'true');
795
807
  assert.equal(nodeShell.querySelector('[data-remote-fleet-action="set-host"]')?.textContent, 'Set Host');
796
- const stopHostButton = nodeShell.querySelector('[data-remote-fleet-action="stop-host"]');
797
- assert.ok(stopHostButton);
798
- const stopHostStart = dotNetCalls.length;
799
- stopHostButton.dispatchEvent({ type: 'click' });
800
- await wait();
801
- const stopHostCall = dotNetCalls
802
- .slice(stopHostStart)
803
- .find(call => call.methodName === 'SetRemoteFleetHostFromJs');
804
- assert.ok(stopHostCall);
805
- assert.equal(stopHostCall.args[0], 'remote-fleet-render-smoke');
806
- assert.equal(stopHostCall.args[1], false);
808
+ assert.equal(nodeShell.querySelector('[data-remote-fleet-action="stop-host"]'), null);
807
809
  hub.setHostTarget({
808
810
  nodeId: 'remote-fleet-render-smoke',
809
811
  enabled: false
@@ -3429,6 +3429,12 @@
3429
3429
  const REMOTE_FLEET_MONITOR_TILE_GAP_PX = 8;
3430
3430
  const REMOTE_FLEET_EMPTY_SCREEN_MIN_WIDTH = 132;
3431
3431
  const REMOTE_FLEET_EMPTY_SCREEN_MIN_HEIGHT = 72;
3432
+ const REMOTE_FLEET_MONITOR_SIZE_LEVELS = Object.freeze(['dense', 'cards', 'large']);
3433
+ const REMOTE_FLEET_MONITOR_TILE_METRICS = Object.freeze({
3434
+ dense: Object.freeze({ tileMinWidth: 104, tileMinHeight: 66, emptyMinWidth: 104, emptyMinHeight: 58 }),
3435
+ cards: Object.freeze({ tileMinWidth: 132, tileMinHeight: 84, emptyMinWidth: 132, emptyMinHeight: 72 }),
3436
+ large: Object.freeze({ tileMinWidth: 168, tileMinHeight: 106, emptyMinWidth: 168, emptyMinHeight: 94 })
3437
+ });
3432
3438
  const AUTOMATION_NODE_KIND_METADATA_KEY = 'AutomationNodeKind';
3433
3439
  const AUTOMATION_NODE_LABEL_METADATA_KEY = 'AutomationNodeLabel';
3434
3440
  const AUTOMATION_NODE_DESCRIPTION_METADATA_KEY = 'AutomationNodeDescription';
@@ -12504,7 +12510,72 @@
12504
12510
  return item;
12505
12511
  }
12506
12512
 
12507
- function createRemoteFleetStatusRail(items, errorMessage = '') {
12513
+ function normalizeRemoteFleetMonitorSize(value) {
12514
+ const normalized = String(value || '').trim().toLowerCase();
12515
+ return REMOTE_FLEET_MONITOR_SIZE_LEVELS.includes(normalized)
12516
+ ? normalized
12517
+ : 'cards';
12518
+ }
12519
+
12520
+ function getRemoteFleetMonitorSizeIndex(value) {
12521
+ return Math.max(0, REMOTE_FLEET_MONITOR_SIZE_LEVELS.indexOf(normalizeRemoteFleetMonitorSize(value)));
12522
+ }
12523
+
12524
+ function getRemoteFleetTileMetrics(value) {
12525
+ const size = normalizeRemoteFleetMonitorSize(value);
12526
+ return REMOTE_FLEET_MONITOR_TILE_METRICS[size] || REMOTE_FLEET_MONITOR_TILE_METRICS.cards;
12527
+ }
12528
+
12529
+ function createRemoteFleetMonitorSizeControls(sizeState) {
12530
+ const sizeIndex = getRemoteFleetMonitorSizeIndex(sizeState);
12531
+ const controls = document.createElement('div');
12532
+ controls.dataset.remoteFleetSizeControls = 'true';
12533
+ controls.style.cssText = `
12534
+ flex: 0 0 auto;
12535
+ display: inline-flex;
12536
+ align-items: center;
12537
+ gap: 4px;
12538
+ margin-right: auto;
12539
+ min-width: 0;
12540
+ pointer-events: auto;
12541
+ `;
12542
+
12543
+ const createButton = (label, title, action, disabled) => {
12544
+ const button = document.createElement('button');
12545
+ button.type = 'button';
12546
+ button.dataset.remoteFleetAction = action;
12547
+ button.textContent = label;
12548
+ button.title = title;
12549
+ button.setAttribute('aria-label', title);
12550
+ button.disabled = disabled === true;
12551
+ button.style.cssText = `
12552
+ flex: 0 0 24px;
12553
+ width: 24px;
12554
+ height: 22px;
12555
+ display: inline-flex;
12556
+ align-items: center;
12557
+ justify-content: center;
12558
+ padding: 0;
12559
+ border-radius: 999px;
12560
+ border: 1px solid rgba(148, 163, 184, 0.24);
12561
+ background: ${disabled ? 'rgba(241, 245, 249, 0.70)' : 'rgba(255, 255, 255, 0.92)'};
12562
+ color: ${disabled ? '#94a3b8' : '#0f172a'};
12563
+ font-size: 13px;
12564
+ font-weight: 950;
12565
+ line-height: 1;
12566
+ letter-spacing: 0;
12567
+ cursor: ${disabled ? 'default' : 'pointer'};
12568
+ pointer-events: ${disabled ? 'none' : 'auto'};
12569
+ `;
12570
+ return button;
12571
+ };
12572
+
12573
+ controls.appendChild(createButton('-', 'Smaller screens', 'monitor-size-down', sizeIndex <= 0));
12574
+ controls.appendChild(createButton('+', 'Larger screens', 'monitor-size-up', sizeIndex >= REMOTE_FLEET_MONITOR_SIZE_LEVELS.length - 1));
12575
+ return controls;
12576
+ }
12577
+
12578
+ function createRemoteFleetStatusRail(items, errorMessage = '', leadingControl = null) {
12508
12579
  const rail = document.createElement('aside');
12509
12580
  rail.dataset.remoteFleetStatusRail = 'true';
12510
12581
  rail.style.cssText = `
@@ -12527,6 +12598,10 @@
12527
12598
  background: rgba(255, 255, 255, 0.70);
12528
12599
  `;
12529
12600
 
12601
+ if (leadingControl) {
12602
+ rail.appendChild(leadingControl);
12603
+ }
12604
+
12530
12605
  const normalizedError = String(errorMessage || '').trim();
12531
12606
  if (normalizedError) {
12532
12607
  const error = document.createElement('div');
@@ -12735,7 +12810,7 @@
12735
12810
  return button;
12736
12811
  }
12737
12812
 
12738
- function attachRemoteFleetTitleActions(bodyView, hostButton, stopHostButton, hostState) {
12813
+ function attachRemoteFleetTitleActions(bodyView, hostButton, hostState) {
12739
12814
  const container = bodyView?.closest?.('.map-node-remote-fleet');
12740
12815
  const header = container?.querySelector?.('.template-card__header')
12741
12816
  || container?.querySelector?.('.map-node-memo__header')
@@ -12771,9 +12846,6 @@
12771
12846
 
12772
12847
  titleActions.appendChild(indicator);
12773
12848
  titleActions.appendChild(hostButton);
12774
- if (stopHostButton) {
12775
- titleActions.appendChild(stopHostButton);
12776
- }
12777
12849
 
12778
12850
  if (header) {
12779
12851
  header.style.gridTemplateColumns = header.classList?.contains?.('template-card__header')
@@ -12788,17 +12860,19 @@
12788
12860
  return titleActions;
12789
12861
  }
12790
12862
 
12791
- function getRemoteFleetEmptyScreenCount(nodeModel) {
12863
+ function getRemoteFleetEmptyScreenCount(nodeModel, sizeState = 'cards') {
12864
+ const metrics = getRemoteFleetTileMetrics(sizeState);
12792
12865
  const width = Number(nodeModel?.width ?? nodeModel?.Width ?? 960);
12793
12866
  const height = Number(nodeModel?.height ?? nodeModel?.Height ?? 620);
12794
12867
  const usableWidth = Number.isFinite(width) ? Math.max(360, width - 44) : 916;
12795
12868
  const usableHeight = Number.isFinite(height) ? Math.max(260, height - 128) : 492;
12796
- const columns = Math.max(3, Math.floor((usableWidth + REMOTE_FLEET_MONITOR_TILE_GAP_PX) / (REMOTE_FLEET_EMPTY_SCREEN_MIN_WIDTH + REMOTE_FLEET_MONITOR_TILE_GAP_PX)));
12797
- const rows = Math.max(3, Math.ceil((usableHeight + REMOTE_FLEET_MONITOR_TILE_GAP_PX) / (REMOTE_FLEET_EMPTY_SCREEN_MIN_HEIGHT + REMOTE_FLEET_MONITOR_TILE_GAP_PX)));
12869
+ const columns = Math.max(3, Math.floor((usableWidth + REMOTE_FLEET_MONITOR_TILE_GAP_PX) / (metrics.emptyMinWidth + REMOTE_FLEET_MONITOR_TILE_GAP_PX)));
12870
+ const rows = Math.max(3, Math.ceil((usableHeight + REMOTE_FLEET_MONITOR_TILE_GAP_PX) / (metrics.emptyMinHeight + REMOTE_FLEET_MONITOR_TILE_GAP_PX)));
12798
12871
  return Math.max(12, Math.min(80, columns * rows));
12799
12872
  }
12800
12873
 
12801
- function createRemoteFleetEmptyScreens(nodeModel) {
12874
+ function createRemoteFleetEmptyScreens(nodeModel, sizeState = 'cards') {
12875
+ const metrics = getRemoteFleetTileMetrics(sizeState);
12802
12876
  const shell = document.createElement('section');
12803
12877
  shell.dataset.remoteFleetEmptyScreens = 'true';
12804
12878
  shell.style.cssText = `
@@ -12807,7 +12881,7 @@
12807
12881
  overflow-y: auto;
12808
12882
  overflow-x: hidden;
12809
12883
  display: grid;
12810
- grid-template-columns: repeat(auto-fill, minmax(${REMOTE_FLEET_EMPTY_SCREEN_MIN_WIDTH}px, 1fr));
12884
+ grid-template-columns: repeat(auto-fill, minmax(${metrics.emptyMinWidth}px, 1fr));
12811
12885
  grid-auto-rows: max-content;
12812
12886
  align-content: start;
12813
12887
  align-items: start;
@@ -12822,7 +12896,7 @@
12822
12896
  padding: 2px 4px 6px 4px;
12823
12897
  `;
12824
12898
 
12825
- const screenCount = getRemoteFleetEmptyScreenCount(nodeModel);
12899
+ const screenCount = getRemoteFleetEmptyScreenCount(nodeModel, sizeState);
12826
12900
  for (let index = 0; index < screenCount; index += 1) {
12827
12901
  const screen = document.createElement('div');
12828
12902
  screen.dataset.remoteFleetEmptyScreen = 'true';
@@ -12830,7 +12904,7 @@
12830
12904
  width: 100%;
12831
12905
  height: auto;
12832
12906
  aspect-ratio: 16 / 9;
12833
- min-height: ${REMOTE_FLEET_EMPTY_SCREEN_MIN_HEIGHT}px;
12907
+ min-height: ${metrics.emptyMinHeight}px;
12834
12908
  box-sizing: border-box;
12835
12909
  border-radius: 8px;
12836
12910
  border: 1px solid rgba(203, 213, 225, 0.72);
@@ -14924,7 +14998,7 @@
14924
14998
  const filterState = bodyView.dataset.remoteFleetFilter || 'all';
14925
14999
  const sortState = bodyView.dataset.remoteFleetSort || 'status';
14926
15000
  const groupState = bodyView.dataset.remoteFleetGroup || 'none';
14927
- const densityState = bodyView.dataset.remoteFleetDensity || 'cards';
15001
+ const densityState = normalizeRemoteFleetMonitorSize(bodyView.dataset.remoteFleetDensity || 'cards');
14928
15002
  const aiAssistState = bodyView.dataset.remoteFleetAiAssist === 'true';
14929
15003
  const autoMonitorState = bodyView.dataset.remoteFleetAutoMonitor !== 'false';
14930
15004
  const focusState = bodyView.dataset.remoteFleetFocusDeviceId || '';
@@ -14985,6 +15059,7 @@
14985
15059
 
14986
15060
  bodyView.dataset.src = `remote-fleet:${refreshedAt}:${devices.length}:${connected}`;
14987
15061
  bodyView.dataset.remoteFleetHostState = hostTargetState;
15062
+ bodyView.dataset.remoteFleetDensity = densityState;
14988
15063
  bodyView.classList.add('map-node-remote-fleet__body');
14989
15064
  bodyView.innerHTML = '';
14990
15065
  bodyView.style.cssText = `
@@ -15011,15 +15086,7 @@
15011
15086
  hostButton.style.borderColor = isHostingTarget ? 'rgba(37, 99, 235, 0.44)' : 'rgba(37, 99, 235, 0.32)';
15012
15087
  hostButton.style.background = isHostingTarget ? 'rgba(239, 246, 255, 0.98)' : '#ffffff';
15013
15088
  hostButton.style.color = '#1d4ed8';
15014
- let stopHostButton = null;
15015
- if (isHostingTarget) {
15016
- stopHostButton = createRemoteFleetButton('Stop', 'Stop using this monitor as the host target.', 'stop-host');
15017
- stopHostButton.style.height = '30px';
15018
- stopHostButton.style.borderColor = 'rgba(239, 68, 68, 0.30)';
15019
- stopHostButton.style.color = '#b91c1c';
15020
- stopHostButton.style.background = 'rgba(254, 242, 242, 0.94)';
15021
- }
15022
- attachRemoteFleetTitleActions(bodyView, hostButton, stopHostButton, hostTargetState);
15089
+ attachRemoteFleetTitleActions(bodyView, hostButton, hostTargetState);
15023
15090
 
15024
15091
  const statusRail = createRemoteFleetStatusRail([
15025
15092
  {
@@ -15053,7 +15120,7 @@
15053
15120
  tone: routeInfo.tone,
15054
15121
  title: routeInfo.title
15055
15122
  }
15056
- ], lastError);
15123
+ ], lastError, createRemoteFleetMonitorSizeControls(densityState));
15057
15124
 
15058
15125
  const filterRow = document.createElement('div');
15059
15126
  filterRow.style.cssText = `
@@ -15115,8 +15182,9 @@
15115
15182
  ], groupState, 'Device grouping');
15116
15183
 
15117
15184
  const densitySelect = createRemoteFleetSelect([
15185
+ { value: 'dense', label: 'Dense' },
15118
15186
  { value: 'cards', label: 'Cards' },
15119
- { value: 'dense', label: 'Dense' }
15187
+ { value: 'large', label: 'Large' }
15120
15188
  ], densityState, 'Device density');
15121
15189
 
15122
15190
  const matchCount = document.createElement('div');
@@ -15826,8 +15894,9 @@
15826
15894
  return panel;
15827
15895
  };
15828
15896
 
15829
- const tileMinWidth = densityState === 'dense' ? 104 : 132;
15830
- const tileMinHeight = densityState === 'dense' ? 66 : 84;
15897
+ const tileMetrics = getRemoteFleetTileMetrics(densityState);
15898
+ const tileMinWidth = tileMetrics.tileMinWidth;
15899
+ const tileMinHeight = tileMetrics.tileMinHeight;
15831
15900
  const tileGap = REMOTE_FLEET_MONITOR_TILE_GAP_PX;
15832
15901
 
15833
15902
  const monitorWorkspace = document.createElement('div');
@@ -16022,7 +16091,7 @@
16022
16091
  if (devices.length === 0) {
16023
16092
  monitorWorkspace.style.display = 'flex';
16024
16093
  monitorWorkspace.style.flexDirection = 'column';
16025
- monitorWorkspace.appendChild(createRemoteFleetEmptyScreens(nodeModel));
16094
+ monitorWorkspace.appendChild(createRemoteFleetEmptyScreens(nodeModel, densityState));
16026
16095
  } else {
16027
16096
  monitorWorkspace.appendChild(grid);
16028
16097
  monitorWorkspace.appendChild(createSelectedDevicePanel(selectedDevice));
@@ -16274,7 +16343,7 @@
16274
16343
  control.addEventListener(eventName, event => event.stopPropagation());
16275
16344
  });
16276
16345
  });
16277
- [hostButton, stopHostButton].forEach(control => {
16346
+ [hostButton].forEach(control => {
16278
16347
  if (!control) return;
16279
16348
  ['mousedown', 'mouseup', 'click', 'dblclick', 'keydown'].forEach(eventName => {
16280
16349
  control.addEventListener(eventName, event => event.stopPropagation());
@@ -16384,7 +16453,7 @@
16384
16453
  const setRemoteFleetHostTarget = async (enabled, options = {}) => {
16385
16454
  const quiet = options?.quiet === true;
16386
16455
  const renew = options?.renew === true || quiet;
16387
- const activeButton = enabled ? hostButton : stopHostButton;
16456
+ const activeButton = enabled ? hostButton : null;
16388
16457
  if (!quiet && activeButton) {
16389
16458
  activeButton.disabled = true;
16390
16459
  }
@@ -16434,13 +16503,33 @@
16434
16503
  await setRemoteFleetHostTarget(true);
16435
16504
  });
16436
16505
 
16437
- if (stopHostButton) {
16438
- stopHostButton.addEventListener('click', async event => {
16506
+ const setRemoteFleetMonitorSize = direction => {
16507
+ const currentIndex = getRemoteFleetMonitorSizeIndex(bodyView.dataset.remoteFleetDensity || densityState);
16508
+ const nextIndex = Math.max(
16509
+ 0,
16510
+ Math.min(REMOTE_FLEET_MONITOR_SIZE_LEVELS.length - 1, currentIndex + direction));
16511
+ if (nextIndex === currentIndex) {
16512
+ return;
16513
+ }
16514
+
16515
+ bodyView.dataset.remoteFleetDensity = REMOTE_FLEET_MONITOR_SIZE_LEVELS[nextIndex];
16516
+ renderRemoteFleetMonitor(bodyView, nodeModel);
16517
+ };
16518
+
16519
+ bodyView.querySelectorAll('[data-remote-fleet-action]').forEach(button => {
16520
+ const action = String(button.dataset.remoteFleetAction || '');
16521
+ if (action !== 'monitor-size-down' && action !== 'monitor-size-up') {
16522
+ return;
16523
+ }
16524
+ ['mousedown', 'mouseup', 'click', 'dblclick', 'keydown'].forEach(eventName => {
16525
+ button.addEventListener(eventName, event => event.stopPropagation());
16526
+ });
16527
+ button.addEventListener('click', event => {
16439
16528
  event.preventDefault();
16440
16529
  event.stopPropagation();
16441
- await setRemoteFleetHostTarget(false);
16530
+ setRemoteFleetMonitorSize(action === 'monitor-size-up' ? 1 : -1);
16442
16531
  });
16443
- }
16532
+ });
16444
16533
 
16445
16534
  bodyView.querySelectorAll('[data-remote-fleet-action="pin-device"]').forEach(button => {
16446
16535
  button.addEventListener('click', async event => {
@@ -7,8 +7,8 @@
7
7
  <title>MindExec | Run your ideas as AI task graphs</title>
8
8
  <meta name="description" content="MindExec is an AI execution canvas for solo builders, researchers, developers, and creators. Start with free browser tools, then move serious work into saved MindCanvas projects." />
9
9
  <base href="/" />
10
- <link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260614-remote-monitor-selection-v527" />
11
- <link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260614-remote-monitor-selection-v527" />
10
+ <link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260614-remote-monitor-size-controls-v529" />
11
+ <link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260614-remote-monitor-size-controls-v529" />
12
12
  <!-- ?쇄뼹??Font Awesome (local) ?쇄뼹??-->
13
13
  <link rel="stylesheet" href="_content/MindExecution.Shared/lib/font-awesome/css/all.min.css" />
14
14
  <!-- ?꿎뼯??-->
@@ -579,7 +579,7 @@
579
579
  }
580
580
 
581
581
  const base = '_content/MindExecution.Shared/js/';
582
- const scriptVersion = '20260614-remote-monitor-selection-v527';
582
+ const scriptVersion = '20260614-remote-monitor-size-controls-v529';
583
583
  const scriptUrl = (script) => `${base}${script}?v=${scriptVersion}`;
584
584
  console.log(`[Script Loader] Shared JS version: ${scriptVersion}`);
585
585
  const criticalScripts = [
@@ -1,5 +1,5 @@
1
1
  self.assetsManifest = {
2
- "version": "2Z4LSqbS",
2
+ "version": "D4Pf0guw",
3
3
  "assets": [
4
4
  {
5
5
  "hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
@@ -86,7 +86,7 @@
86
86
  "url": "_content/MindExecution.Shared/js/mind-map-core.js.backup"
87
87
  },
88
88
  {
89
- "hash": "sha256-ITFlIgAsq32TTITY+WwaAhQNq4JSQg6EPr8ZeyYbI+A=",
89
+ "hash": "sha256-hzl6gNvjb9faAA2tUeCfriNvdohhGaDtasnYOCMum7E=",
90
90
  "url": "_content/MindExecution.Shared/js/mind-map-css3d-manager.js"
91
91
  },
92
92
  {
@@ -834,7 +834,7 @@
834
834
  "url": "image-manifest.json"
835
835
  },
836
836
  {
837
- "hash": "sha256-p6etmqWjxJ5G7ogEIiXjjgKIu8t4hAJGYYSvtWyJuGk=",
837
+ "hash": "sha256-6okf9Y0Fpz1uWtjB0xMwIlfltrQLSgbPn8PBj3QW/5Y=",
838
838
  "url": "index.html"
839
839
  },
840
840
  {
@@ -1,4 +1,4 @@
1
- /* Manifest version: 2Z4LSqbS */
1
+ /* Manifest version: D4Pf0guw */
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