@mindexec/cli 0.2.298 → 0.2.300

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.298",
3
+ "version": "0.2.300",
4
4
  "description": "MindExec local runtime and bridge CLI",
5
5
  "main": "server.js",
6
6
  "type": "module",
package/server.js CHANGED
@@ -7614,7 +7614,12 @@ async function proxyCompanyCoreRequest(req, res) {
7614
7614
  console.warn(`[CompanyCore/Proxy] CompanyCore is not reachable at ${companyCoreBaseUrl}. Start CompanyCore or set COMPANY_CORE_URL.`);
7615
7615
  }
7616
7616
 
7617
- res.status(503).json({
7617
+ const isReadProbe = ['GET', 'HEAD'].includes(String(req.method || '').toUpperCase());
7618
+ if (isReadProbe) {
7619
+ res.setHeader('x-mindexec-upstream-status', '503');
7620
+ }
7621
+
7622
+ res.status(isReadProbe ? 200 : 503).json({
7618
7623
  status: 'unavailable',
7619
7624
  error: 'CompanyCore is not running',
7620
7625
  target: companyCoreBaseUrl,
@@ -105,7 +105,7 @@ body.mind-map-scroll-locked {
105
105
  contain: layout style !important;
106
106
  content-visibility: visible !important;
107
107
  contain-intrinsic-size: auto !important;
108
- transform: none !important;
108
+ transform: var(--css3d-node-resolution-transform, none) !important;
109
109
  will-change: auto !important;
110
110
  -webkit-backface-visibility: visible !important;
111
111
  backface-visibility: visible !important;
@@ -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 = '20260620-fullres-handoff-aa-v756';
8
+ const MINDMAP_CORE_BUILD_ID = '20260621-external-media-cors-v759';
9
9
  const CanvasPhase = Object.freeze({
10
10
  Booting: 'booting',
11
11
  BoardFileLoading: 'board-file-loading',
@@ -1714,6 +1714,9 @@
1714
1714
  elapsedSinceZoomInput > CAMERA_ZOOM_END_DELAY_MS) {
1715
1715
  return false;
1716
1716
  }
1717
+ if (module.lodRenderer?.willLodBandChange?.(module.camera) === true) {
1718
+ return false;
1719
+ }
1717
1720
 
1718
1721
  module._viewSyncMotionActive = true;
1719
1722
  module._cameraMovingThisFrame = false;
@@ -10321,11 +10324,26 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
10321
10324
  this.targetY = y;
10322
10325
  this.targetZ = z;
10323
10326
  this.camera.position.set(x, y, z);
10327
+ this.camera.updateProjectionMatrix?.();
10328
+ this.camera.updateMatrixWorld?.(true);
10329
+
10330
+ if (typeof this.updateVisibility === 'function') {
10331
+ this.updateVisibility(this.camera);
10332
+ }
10333
+ if (this.lodRenderer) {
10334
+ if (typeof this.lodRenderer.requestVisualRefresh === 'function') {
10335
+ this.lodRenderer.requestVisualRefresh('camera-state-change');
10336
+ }
10337
+ if (this.nodeObjectsById && typeof this.lodRenderer.updateLOD === 'function') {
10338
+ this.lodRenderer.updateLOD(this.camera, this.nodeObjectsById, this);
10339
+ }
10340
+ }
10324
10341
 
10325
10342
  if (cursorX !== undefined && cursorY !== undefined) {
10326
10343
  this.updateCursorPosition(cursorX, cursorY, false, null, false);
10327
10344
  }
10328
10345
  requestCameraNavigationOverlayRefresh(this, 4);
10346
+ this._forceUpdateFrames = Math.max(Number(this._forceUpdateFrames || 0), 2);
10329
10347
  this._lastPersistedViewStateKey = this.buildViewStateKey(this.buildViewStateSnapshot());
10330
10348
  }
10331
10349
 
@@ -15,6 +15,8 @@
15
15
  const CSS_IMAGE_PROMOTION_BUDGET_MS = 4;
16
16
  const CSS_IMAGE_BLOB_CACHE_LIMIT = 160;
17
17
  const CSS_IMAGE_DISPLAY_MAX_CONCURRENCY = 8;
18
+ const CSS3D_TEXT_NODE_RESOLUTION_SCALE = 2.0;
19
+ const CSS3D_MEDIA_NODE_RESOLUTION_SCALE = 1.0;
18
20
  const LOOPBACK_ASSET_URL_REGEX = /^http:\/\/(?:127(?:\.\d{1,3}){3}|localhost|\[::1\])(?::\d+)?\/assets\//i;
19
21
  let _cssImagePreviewHoldUntil = 0;
20
22
  let _cssImagePromotionQueue = [];
@@ -57,6 +59,15 @@
57
59
 
58
60
  syncMindCanvasPlatformRenderClasses();
59
61
 
62
+ function getCss3dNodeResolutionScale(contentTypeLower) {
63
+ const type = String(contentTypeLower || '').toLowerCase();
64
+ if (type === 'image' || type === 'video' || type === 'embed') {
65
+ return CSS3D_MEDIA_NODE_RESOLUTION_SCALE;
66
+ }
67
+
68
+ return CSS3D_TEXT_NODE_RESOLUTION_SCALE;
69
+ }
70
+
60
71
  function detectCsvDelimiter(csvText) {
61
72
  const text = String(csvText || '');
62
73
  const candidates = [',', '\t', ';', '|'];
@@ -1596,6 +1607,31 @@
1596
1607
  return LOOPBACK_ASSET_URL_REGEX.test(String(url || '').trim());
1597
1608
  }
1598
1609
 
1610
+ function shouldAttachCssMediaAuthorization(targetUrl, authToken) {
1611
+ const token = typeof authToken === 'string' ? authToken.trim() : '';
1612
+ if (!token) {
1613
+ return false;
1614
+ }
1615
+
1616
+ const normalized = normalizeCssMediaUrl(targetUrl);
1617
+ if (!normalized || isNonRefreshableMediaUrl(normalized)) {
1618
+ return false;
1619
+ }
1620
+
1621
+ if (isLoopbackCssAssetUrl(normalized)) {
1622
+ return true;
1623
+ }
1624
+
1625
+ try {
1626
+ const baseUrl = document?.baseURI || window?.location?.href || 'http://localhost/';
1627
+ const target = new URL(normalized, baseUrl);
1628
+ const currentOrigin = window?.location?.origin || new URL(baseUrl).origin;
1629
+ return target.origin === currentOrigin;
1630
+ } catch {
1631
+ return !/^[a-z][a-z0-9+.-]*:/i.test(normalized);
1632
+ }
1633
+ }
1634
+
1599
1635
  function getCssMediaCanonicalSource(mediaEl, fallback = '') {
1600
1636
  return normalizeCssMediaUrl(
1601
1637
  mediaEl?.dataset?.mediaSourceUrl
@@ -3301,7 +3337,7 @@
3301
3337
  ? _module.authToken.trim()
3302
3338
  : '';
3303
3339
 
3304
- if (token) {
3340
+ if (shouldAttachCssMediaAuthorization(targetUrl, token)) {
3305
3341
  requestOptions.headers = {
3306
3342
  Authorization: `Bearer ${token}`
3307
3343
  };
@@ -22785,7 +22821,7 @@
22785
22821
  clonedElement.style.transformOrigin = '0% 0%';
22786
22822
 
22787
22823
  // ▼▼▼ [Clarity] Scale factor for high-resolution rendering ▼▼▼
22788
- const resolutionScale = 1.0;
22824
+ const resolutionScale = getCss3dNodeResolutionScale(contentTypeLower);
22789
22825
  clonedElement.style.width = `${width}px`;
22790
22826
  clonedElement.style.height = `${height}px`;
22791
22827
  clonedElement.style.minWidth = `${width}px`;
@@ -22803,7 +22839,9 @@
22803
22839
  clonedElement.style.top = '0px';
22804
22840
  // ▲▲▲ [Changed] ▲▲▲
22805
22841
 
22806
- clonedElement.style.transform = resolutionScale === 1 ? 'none' : `scale(${resolutionScale})`;
22842
+ const innerResolutionTransform = resolutionScale === 1 ? 'none' : `scale(${resolutionScale})`;
22843
+ clonedElement.style.transform = innerResolutionTransform;
22844
+ clonedElement.style.setProperty('--css3d-node-resolution-transform', innerResolutionTransform);
22807
22845
  clonedElement.style.transformOrigin = '0 0'; // Scale from top-left
22808
22846
  clonedElement.style.transition = 'none';
22809
22847
  clonedElement.style.webkitTransition = 'none';
@@ -23032,6 +23070,7 @@
23032
23070
  }
23033
23071
  const inner = el.firstElementChild;
23034
23072
  if (inner) {
23073
+ const innerResolutionTransform = resolutionScale === 1 ? 'none' : `scale(${resolutionScale})`;
23035
23074
  if (inner.style.width !== `${worldWidth}px`) {
23036
23075
  inner.style.width = `${worldWidth}px`;
23037
23076
  }
@@ -23050,10 +23089,13 @@
23050
23089
  if (inner.style.maxHeight !== `${worldHeight}px`) {
23051
23090
  inner.style.maxHeight = `${worldHeight}px`;
23052
23091
  }
23053
- if (inner.style.transform !== `scale(${resolutionScale})`) {
23054
- inner.style.transform = `scale(${resolutionScale})`;
23092
+ if (inner.style.transform !== innerResolutionTransform) {
23093
+ inner.style.transform = innerResolutionTransform;
23055
23094
  inner.style.transformOrigin = '0 0';
23056
23095
  }
23096
+ if (inner.style.getPropertyValue('--css3d-node-resolution-transform') !== innerResolutionTransform) {
23097
+ inner.style.setProperty('--css3d-node-resolution-transform', innerResolutionTransform);
23098
+ }
23057
23099
  }
23058
23100
  }
23059
23101
 
@@ -51,7 +51,7 @@
51
51
  // ▲▲▲ [Usage] ▲▲▲
52
52
 
53
53
  // Procedural line rendering settings
54
- const LOD_RENDERER_BUILD_ID = '20260620-fullres-handoff-aa-v756';
54
+ const LOD_RENDERER_BUILD_ID = '20260621-external-media-cors-v759';
55
55
  const DirtyKind = Object.freeze({
56
56
  ResidentFullRebuild: 'resident-full-rebuild',
57
57
  ResidentPatch: 'resident-patch',
@@ -940,6 +940,7 @@
940
940
  this._fullResHandoffStartedAt = 0;
941
941
  this._fullResHandoffUntil = 0;
942
942
  this._fullResHandoffPreviousBand = null;
943
+ this._fullResHandoffEnabled = false;
943
944
  this._fullResHandoffMinCoverage = 0.92;
944
945
  this._fullResHandoffMaxMs = 1400;
945
946
  this._fullResPanHandoffMaxMs = 1200;
@@ -2533,6 +2534,10 @@
2533
2534
 
2534
2535
  _startFullResHandoff(previousBand, reason, maxMs = this._fullResHandoffMaxMs) {
2535
2536
  if (this.isLoading || this.isInLODMode !== false) return;
2537
+ if (this._fullResHandoffEnabled !== true) {
2538
+ this._finishFullResHandoff('disabled');
2539
+ return;
2540
+ }
2536
2541
 
2537
2542
  const now = performance.now();
2538
2543
  const duration = Number.isFinite(maxMs) ? maxMs : this._fullResHandoffMaxMs;
@@ -2670,6 +2675,7 @@
2670
2675
  }
2671
2676
 
2672
2677
  _maybeStartFullResHandoffForPendingCss(visibleIds, nodeObjectsById, module, previousBand) {
2678
+ if (this._fullResHandoffEnabled !== true) return;
2673
2679
  if (this._fullResHandoffActive || this.isInLODMode || this.isLoading) return;
2674
2680
  if (!visibleIds || visibleIds.size === 0 || !nodeObjectsById) return;
2675
2681
  if (module?.isPanning !== true && this._nearEntryBoostFrames <= 0) return;
@@ -91,6 +91,31 @@
91
91
  .test(String(url || '').trim());
92
92
  }
93
93
 
94
+ function shouldAttachImageAssetAuthorization(targetUrl, authToken) {
95
+ const token = typeof authToken === 'string' ? authToken.trim() : '';
96
+ if (!token) {
97
+ return false;
98
+ }
99
+
100
+ const normalized = normalizeImageAssetUrl(targetUrl);
101
+ if (!normalized || isNonRefreshableLocalUrl(normalized)) {
102
+ return false;
103
+ }
104
+
105
+ if (isLoopbackImageAssetUrl(normalized)) {
106
+ return true;
107
+ }
108
+
109
+ try {
110
+ const baseUrl = document?.baseURI || window?.location?.href || 'http://localhost/';
111
+ const target = new URL(normalized, baseUrl);
112
+ const currentOrigin = window?.location?.origin || new URL(baseUrl).origin;
113
+ return target.origin === currentOrigin;
114
+ } catch {
115
+ return !/^[a-z][a-z0-9+.-]*:/i.test(normalized);
116
+ }
117
+ }
118
+
94
119
  function getCanonicalImageAssetKey(url) {
95
120
  const normalized = normalizeImageAssetUrl(url);
96
121
  if (!normalized) {
@@ -1805,7 +1830,7 @@
1805
1830
  requestOptions.targetAddressSpace = 'loopback';
1806
1831
  }
1807
1832
 
1808
- if (authToken) {
1833
+ if (shouldAttachImageAssetAuthorization(targetUrl, authToken)) {
1809
1834
  requestOptions.headers = {
1810
1835
  Authorization: `Bearer ${authToken}`
1811
1836
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "mainAssemblyName": "MindExecution.Web",
3
3
  "resources": {
4
- "hash": "sha256-FF1nAHdYmz7+B94axSY0q+4MC9oZypaC7l7e/MluIM4=",
4
+ "hash": "sha256-OtTww/K4VhDTgTS4mHneBJqBjhiKpOOo+MCUeq0ZDvI=",
5
5
  "fingerprinting": {
6
6
  "Google.Protobuf.9h59ukbel7.dll": "Google.Protobuf.dll",
7
7
  "Markdig.d1j7v41cl1.dll": "Markdig.dll",
@@ -127,12 +127,12 @@
127
127
  "MindExecution.Kernel.l5y3qroa7p.dll": "MindExecution.Kernel.dll",
128
128
  "MindExecution.Plugins.Admin.uuf238xa0h.dll": "MindExecution.Plugins.Admin.dll",
129
129
  "MindExecution.Plugins.Business.nyr3v25v48.dll": "MindExecution.Plugins.Business.dll",
130
- "MindExecution.Plugins.Concept.xjufz6g1rt.dll": "MindExecution.Plugins.Concept.dll",
130
+ "MindExecution.Plugins.Concept.l9z9tx9svt.dll": "MindExecution.Plugins.Concept.dll",
131
131
  "MindExecution.Plugins.Directory.ju87t8h3zs.dll": "MindExecution.Plugins.Directory.dll",
132
- "MindExecution.Plugins.PlanMaster.ypr32rpm29.dll": "MindExecution.Plugins.PlanMaster.dll",
133
- "MindExecution.Plugins.YouTube.pjv8y1v7kk.dll": "MindExecution.Plugins.YouTube.dll",
134
- "MindExecution.Shared.6v8p1z521c.dll": "MindExecution.Shared.dll",
135
- "MindExecution.Web.df0li0jddy.dll": "MindExecution.Web.dll",
132
+ "MindExecution.Plugins.PlanMaster.krn3jgvjpa.dll": "MindExecution.Plugins.PlanMaster.dll",
133
+ "MindExecution.Plugins.YouTube.5m53srfud6.dll": "MindExecution.Plugins.YouTube.dll",
134
+ "MindExecution.Shared.rv3rw2h14g.dll": "MindExecution.Shared.dll",
135
+ "MindExecution.Web.vb3eqoz4v9.dll": "MindExecution.Web.dll",
136
136
  "dotnet.js": "dotnet.js",
137
137
  "dotnet.native.qc8g39g30v.js": "dotnet.native.js",
138
138
  "dotnet.native.boem75ye5i.wasm": "dotnet.native.wasm",
@@ -281,15 +281,15 @@
281
281
  "MindExecution.Core.y7ffihhajj.dll": "sha256-zsCKUWBWzDly1h5/vMtqVRb7PeG4lgfIZbQuJFyY1QU=",
282
282
  "MindExecution.Kernel.l5y3qroa7p.dll": "sha256-V4pQTxua0lGWpdsFpo7bHr6rPFWZeofry7e9On+OJmo=",
283
283
  "MindExecution.Plugins.Business.nyr3v25v48.dll": "sha256-T4c7+fDE4TQAXAoFmHnYM+tT7RSvAM7W0VinLPoD+6U=",
284
- "MindExecution.Plugins.Concept.xjufz6g1rt.dll": "sha256-bWM6jA2lPPkHFs5Itjqjj7S9nsS+JfTBOnhDoO1aSW4=",
285
- "MindExecution.Plugins.PlanMaster.ypr32rpm29.dll": "sha256-6rKiLaTNql6z8E+yhQJaIfxU9d/ed2lH0moVYDNZ5n8=",
286
- "MindExecution.Shared.6v8p1z521c.dll": "sha256-3iknhbM7GDnYzPsIgCI/OOcXnwTr1ar8Eam3DBVnK1o=",
287
- "MindExecution.Web.df0li0jddy.dll": "sha256-abf4IekxOERJ9QG4vtL5dVjb8BDVL65ghHy9Ff+xoCM="
284
+ "MindExecution.Plugins.Concept.l9z9tx9svt.dll": "sha256-N/QoILmTilvX5Zo4SCy7ENTCqMzSC6RIEQlEwtxkGPo=",
285
+ "MindExecution.Plugins.PlanMaster.krn3jgvjpa.dll": "sha256-8IFpm/2fpsWD3syyl58LTSWSGC8PfcrsLdmmSKR1Sq0=",
286
+ "MindExecution.Shared.rv3rw2h14g.dll": "sha256-ZwT/+Wjs0ZoDe3XZwwDlkPwo7xexhoK1RcyI2rEiywY=",
287
+ "MindExecution.Web.vb3eqoz4v9.dll": "sha256-W/K+qUiAlmIiww6SxYbWiLUOla0pMGqpAfr7q+dmBgs="
288
288
  },
289
289
  "lazyAssembly": {
290
290
  "MindExecution.Plugins.Admin.uuf238xa0h.dll": "sha256-OrCIUack8nSWBBiZK65DlJ3YGM677RAA8cX/oJjhm5c=",
291
291
  "MindExecution.Plugins.Directory.ju87t8h3zs.dll": "sha256-dapAkel5qj7fK6BiDDmvkzZL96frl8k/3yP8SDr3rMw=",
292
- "MindExecution.Plugins.YouTube.pjv8y1v7kk.dll": "sha256-S/gcxDXtRDC7hHYM8Rt3018Lm0/MBdGdoAzbLnZrJj0="
292
+ "MindExecution.Plugins.YouTube.5m53srfud6.dll": "sha256-02hOpWFNogHEBktxD4XUnDN/oKFJnO0g8n4bYCP0tAY="
293
293
  }
294
294
  },
295
295
  "cacheBootResources": true,
@@ -7,8 +7,8 @@
7
7
  <title>MindExec | Business Execution OS for solo builders</title>
8
8
  <meta name="description" content="MindExec is an AI business execution OS for solo builders who want to turn notes, research, assets, and repeatable execution Skills into revenue-producing work." />
9
9
  <base href="/" />
10
- <link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260620-fullres-handoff-aa-v756" />
11
- <link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260620-fullres-handoff-aa-v756" />
10
+ <link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260621-external-media-cors-v759" />
11
+ <link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260621-external-media-cors-v759" />
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 = '20260620-fullres-handoff-aa-v756';
582
+ const scriptVersion = '20260621-external-media-cors-v759';
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": "hjUfORzu",
2
+ "version": "3vFdzHRr",
3
3
  "assets": [
4
4
  {
5
5
  "hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
@@ -42,7 +42,7 @@
42
42
  "url": "_content/MindExecution.Shared/css/app.css"
43
43
  },
44
44
  {
45
- "hash": "sha256-0hG8T14JPmgbOP1xbPzWCQEhkDC3SXrqlx8HoJM9e3s=",
45
+ "hash": "sha256-vVQG8dZd8XPd5lEd2meBWtET9S2XmSjWYfRG4FlMdIU=",
46
46
  "url": "_content/MindExecution.Shared/css/mind-map-overrides.css"
47
47
  },
48
48
  {
@@ -78,7 +78,7 @@
78
78
  "url": "_content/MindExecution.Shared/js/marked.min.js"
79
79
  },
80
80
  {
81
- "hash": "sha256-+7nR5UKQCHuP9metel5kUUQH3ymykf+dYJaI+h9qHao=",
81
+ "hash": "sha256-VwDE/TMkgow0Fj+7kXnMMIpEK/2bw1NHa4Ydd/2KFkk=",
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-7EaYYlLCVJUt4lVERVxZG+LFs6pU84WbUElA89mnmlE=",
89
+ "hash": "sha256-X44C2JtSIlacgztF74ejjqSJ+jhSegt5+pdP4ypuKVs=",
90
90
  "url": "_content/MindExecution.Shared/js/mind-map-css3d-manager.js"
91
91
  },
92
92
  {
@@ -114,7 +114,7 @@
114
114
  "url": "_content/MindExecution.Shared/js/mind-map-lod-plan-worker.js"
115
115
  },
116
116
  {
117
- "hash": "sha256-kmCskZhRIl7SKSFNOyOeWYPFe7pQihKx+ckVRPs++fA=",
117
+ "hash": "sha256-99ihYUDUbvpmxdv3ut8ph79bRGjIVBxUySxPZTvmEi4=",
118
118
  "url": "_content/MindExecution.Shared/js/mind-map-lod-renderer.js"
119
119
  },
120
120
  {
@@ -158,7 +158,7 @@
158
158
  "url": "_content/MindExecution.Shared/js/mind-map-text-overlay-v2.js"
159
159
  },
160
160
  {
161
- "hash": "sha256-MMfGxAaxa3MZugIcUvHMrqpLmQdEHV3mZyJFIeQ7rUY=",
161
+ "hash": "sha256-rXMMiOLaRGM1Dzp+IuVTVGJIQCVrr8apnByC4RmpbIQ=",
162
162
  "url": "_content/MindExecution.Shared/js/mind-map-texture-factory.js"
163
163
  },
164
164
  {
@@ -426,28 +426,28 @@
426
426
  "url": "_framework/MindExecution.Plugins.Business.nyr3v25v48.dll"
427
427
  },
428
428
  {
429
- "hash": "sha256-bWM6jA2lPPkHFs5Itjqjj7S9nsS+JfTBOnhDoO1aSW4=",
430
- "url": "_framework/MindExecution.Plugins.Concept.xjufz6g1rt.dll"
429
+ "hash": "sha256-N/QoILmTilvX5Zo4SCy7ENTCqMzSC6RIEQlEwtxkGPo=",
430
+ "url": "_framework/MindExecution.Plugins.Concept.l9z9tx9svt.dll"
431
431
  },
432
432
  {
433
433
  "hash": "sha256-dapAkel5qj7fK6BiDDmvkzZL96frl8k/3yP8SDr3rMw=",
434
434
  "url": "_framework/MindExecution.Plugins.Directory.ju87t8h3zs.dll"
435
435
  },
436
436
  {
437
- "hash": "sha256-6rKiLaTNql6z8E+yhQJaIfxU9d/ed2lH0moVYDNZ5n8=",
438
- "url": "_framework/MindExecution.Plugins.PlanMaster.ypr32rpm29.dll"
437
+ "hash": "sha256-8IFpm/2fpsWD3syyl58LTSWSGC8PfcrsLdmmSKR1Sq0=",
438
+ "url": "_framework/MindExecution.Plugins.PlanMaster.krn3jgvjpa.dll"
439
439
  },
440
440
  {
441
- "hash": "sha256-S/gcxDXtRDC7hHYM8Rt3018Lm0/MBdGdoAzbLnZrJj0=",
442
- "url": "_framework/MindExecution.Plugins.YouTube.pjv8y1v7kk.dll"
441
+ "hash": "sha256-02hOpWFNogHEBktxD4XUnDN/oKFJnO0g8n4bYCP0tAY=",
442
+ "url": "_framework/MindExecution.Plugins.YouTube.5m53srfud6.dll"
443
443
  },
444
444
  {
445
- "hash": "sha256-3iknhbM7GDnYzPsIgCI/OOcXnwTr1ar8Eam3DBVnK1o=",
446
- "url": "_framework/MindExecution.Shared.6v8p1z521c.dll"
445
+ "hash": "sha256-ZwT/+Wjs0ZoDe3XZwwDlkPwo7xexhoK1RcyI2rEiywY=",
446
+ "url": "_framework/MindExecution.Shared.rv3rw2h14g.dll"
447
447
  },
448
448
  {
449
- "hash": "sha256-abf4IekxOERJ9QG4vtL5dVjb8BDVL65ghHy9Ff+xoCM=",
450
- "url": "_framework/MindExecution.Web.df0li0jddy.dll"
449
+ "hash": "sha256-W/K+qUiAlmIiww6SxYbWiLUOla0pMGqpAfr7q+dmBgs=",
450
+ "url": "_framework/MindExecution.Web.vb3eqoz4v9.dll"
451
451
  },
452
452
  {
453
453
  "hash": "sha256-IsZJ91/OW+fHzNqIgEc7Y072ns8z9dGritiSyvR9Wgc=",
@@ -770,7 +770,7 @@
770
770
  "url": "_framework/Websocket.Client.vapounvmnl.dll"
771
771
  },
772
772
  {
773
- "hash": "sha256-DCa6Ul8O+PoQtr9kl/Ks5HOAS8WrNZHoXx7wizRdu68=",
773
+ "hash": "sha256-O8em1XbCRLjEd/hcubu7Ryw+oGv+jYqaVmK41A5y5zM=",
774
774
  "url": "_framework/blazor.boot.json"
775
775
  },
776
776
  {
@@ -834,7 +834,7 @@
834
834
  "url": "image-manifest.json"
835
835
  },
836
836
  {
837
- "hash": "sha256-dXqSHxd8CnNzgsM5/6qkUJu1w+EwxOOcmwpMN+dTU5c=",
837
+ "hash": "sha256-NVtnr6OxLupQQ9HQQzBzT/nhATEhZOBasRTakBSZcDQ=",
838
838
  "url": "index.html"
839
839
  },
840
840
  {
@@ -1,4 +1,4 @@
1
- /* Manifest version: hjUfORzu */
1
+ /* Manifest version: 3vFdzHRr */
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