@mindexec/cli 0.2.413 → 0.2.414

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.413",
3
+ "version": "0.2.414",
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 = '20260628-generated-image-normal-pipeline-v847';
8
+ const MINDMAP_CORE_BUILD_ID = '20260628-generated-image-asset-verify-v848';
9
9
  const CanvasPhase = Object.freeze({
10
10
  Booting: 'booting',
11
11
  BoardFileLoading: 'board-file-loading',
@@ -1393,6 +1393,39 @@
1393
1393
  || normalized.startsWith('file:');
1394
1394
  }
1395
1395
 
1396
+ function looksLikeRelativeCssAssetUrl(url) {
1397
+ const normalized = normalizeCssMediaUrl(url);
1398
+ if (!normalized || isDirectCssMediaUrl(normalized) || isNonRefreshableMediaUrl(normalized)) {
1399
+ return false;
1400
+ }
1401
+
1402
+ const lower = normalized.toLowerCase();
1403
+ return lower.startsWith('assets/') || lower.startsWith('/assets/');
1404
+ }
1405
+
1406
+ async function resolveRelativeCssAssetDisplayUrl(nodeModel, contentTypeLower, targetUrl) {
1407
+ const normalized = normalizeCssMediaUrl(targetUrl);
1408
+ if (!looksLikeRelativeCssAssetUrl(normalized)) {
1409
+ return normalized;
1410
+ }
1411
+
1412
+ const nodeId = String(nodeModel?.id ?? nodeModel?.Id ?? '').trim();
1413
+ const helper = window.dotNetHelper;
1414
+ if (!nodeId || !helper || typeof helper.invokeMethodAsync !== 'function') {
1415
+ return normalized;
1416
+ }
1417
+
1418
+ try {
1419
+ const methodName = contentTypeLower === 'image'
1420
+ ? 'ResolveNodePreviewAssetUrl'
1421
+ : 'ResolveNodeAssetUrl';
1422
+ const resolved = await helper.invokeMethodAsync(methodName, nodeId);
1423
+ return normalizeCssMediaUrl(resolved) || normalized;
1424
+ } catch {
1425
+ return normalized;
1426
+ }
1427
+ }
1428
+
1396
1429
  function shouldApplyCssDisplayCrossOrigin(url) {
1397
1430
  const normalized = normalizeCssMediaUrl(url);
1398
1431
  if (!normalized) {
@@ -3955,7 +3988,7 @@
3955
3988
  async function setCssImageElementSource(mediaEl, nodeModel, targetUrl) {
3956
3989
  if (!mediaEl) return false;
3957
3990
 
3958
- const normalized = normalizeCssMediaUrl(targetUrl);
3991
+ let normalized = normalizeCssMediaUrl(targetUrl);
3959
3992
  if (!normalized) {
3960
3993
  mediaEl.dataset.mediaSourceUrl = '';
3961
3994
  syncCssDisplayCrossOrigin(mediaEl, '');
@@ -3967,6 +4000,7 @@
3967
4000
  return false;
3968
4001
  }
3969
4002
 
4003
+ normalized = await resolveRelativeCssAssetDisplayUrl(nodeModel, 'image', normalized);
3970
4004
  const previousCanonical = String(mediaEl.dataset.mediaSourceUrl || '').trim();
3971
4005
  mediaEl.dataset.mediaSourceUrl = normalized;
3972
4006
  syncCssDisplayCrossOrigin(mediaEl, normalized);
@@ -4002,7 +4036,7 @@
4002
4036
  async function setCssVideoElementSource(mediaEl, nodeModel, targetUrl, options = {}) {
4003
4037
  if (!mediaEl) return false;
4004
4038
 
4005
- const normalized = normalizeCssMediaUrl(targetUrl);
4039
+ let normalized = normalizeCssMediaUrl(targetUrl);
4006
4040
  if (!normalized) {
4007
4041
  mediaEl.dataset.mediaSourceUrl = '';
4008
4042
  mediaEl.dataset.resolvedMediaSourceUrl = '';
@@ -4014,6 +4048,7 @@
4014
4048
  return false;
4015
4049
  }
4016
4050
 
4051
+ normalized = await resolveRelativeCssAssetDisplayUrl(nodeModel, 'video', normalized);
4017
4052
  const previousCanonical = String(mediaEl.dataset.mediaSourceUrl || '').trim();
4018
4053
  mediaEl.dataset.mediaSourceUrl = normalized;
4019
4054
  syncCssDisplayCrossOrigin(mediaEl, normalized);
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "mainAssemblyName": "MindExecution.Web",
3
3
  "resources": {
4
- "hash": "sha256-tTR90qstlPJ54oiDAhOSXEDdeuPw4IA4Y0qk/1eDuiQ=",
4
+ "hash": "sha256-Couln0d4ygw1IxOLCRM0Yj3dKHz+BiP77av1emjscDQ=",
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.88cfrq3n6f.dll": "MindExecution.Kernel.dll",
128
128
  "MindExecution.Plugins.Admin.j8r53ny1yk.dll": "MindExecution.Plugins.Admin.dll",
129
129
  "MindExecution.Plugins.Business.dxnr51rpko.dll": "MindExecution.Plugins.Business.dll",
130
- "MindExecution.Plugins.Concept.crknebife8.dll": "MindExecution.Plugins.Concept.dll",
130
+ "MindExecution.Plugins.Concept.x6f1fxmdci.dll": "MindExecution.Plugins.Concept.dll",
131
131
  "MindExecution.Plugins.Directory.8on0qz60kp.dll": "MindExecution.Plugins.Directory.dll",
132
- "MindExecution.Plugins.PlanMaster.nf8ay9xgix.dll": "MindExecution.Plugins.PlanMaster.dll",
133
- "MindExecution.Plugins.YouTube.0pgznxiz2o.dll": "MindExecution.Plugins.YouTube.dll",
134
- "MindExecution.Shared.cksmc2e0pm.dll": "MindExecution.Shared.dll",
135
- "MindExecution.Web.2dukgu5xqw.dll": "MindExecution.Web.dll",
132
+ "MindExecution.Plugins.PlanMaster.l2ehtbg506.dll": "MindExecution.Plugins.PlanMaster.dll",
133
+ "MindExecution.Plugins.YouTube.fkz0r1w96x.dll": "MindExecution.Plugins.YouTube.dll",
134
+ "MindExecution.Shared.2vo0tnjd7l.dll": "MindExecution.Shared.dll",
135
+ "MindExecution.Web.5migzyqnl3.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.fi1okngj1v.dll": "sha256-py0z7lRYqGUGvMK7xf5miyo6UOl0U06bpwbyfUp+4pg=",
282
282
  "MindExecution.Kernel.88cfrq3n6f.dll": "sha256-qH6qMdk1bIgHvXk+TvMBc9Feyj0z9WCowTGyaOqGSEo=",
283
283
  "MindExecution.Plugins.Business.dxnr51rpko.dll": "sha256-H5VyHfSyEQSAusny8+CkdnSKa2kAnqr2j+FhVBy0ePU=",
284
- "MindExecution.Plugins.Concept.crknebife8.dll": "sha256-KH2AckoxE9L3SrHFBBfYCW5qOf62eibv9R/fDiq0s3E=",
285
- "MindExecution.Plugins.PlanMaster.nf8ay9xgix.dll": "sha256-zYCWCU32Jk7ZiPbEPLzOfouhmVqK98eQ1cYBe2301JM=",
286
- "MindExecution.Shared.cksmc2e0pm.dll": "sha256-HO7Mv+CTuMcl35yIvkUfhDfCuh8GlEhafMfvNxbKvMw=",
287
- "MindExecution.Web.2dukgu5xqw.dll": "sha256-SlFcAedQ0GCcP8kyylzvrLIoonChLLFZnMXcrnHXFxw="
284
+ "MindExecution.Plugins.Concept.x6f1fxmdci.dll": "sha256-KTYZT9imJmBWAu/sWXCSjPM8dug5tgHH3ky0+HbnR9Y=",
285
+ "MindExecution.Plugins.PlanMaster.l2ehtbg506.dll": "sha256-gxVHU1/sPfLtSLxFz0AmIUzeKFLPyklqAbk8fveTSbM=",
286
+ "MindExecution.Shared.2vo0tnjd7l.dll": "sha256-IhkRo/JYrirDc22Tx3KAAzKWraWe5sOoA5U1vr+yMMc=",
287
+ "MindExecution.Web.5migzyqnl3.dll": "sha256-Pe1GpEgpVqEBC5PLHGwTQEIbWE6RKdUOKL6/NlmGGp0="
288
288
  },
289
289
  "lazyAssembly": {
290
290
  "MindExecution.Plugins.Admin.j8r53ny1yk.dll": "sha256-IxjG4k/zJiUqItA1VJm4FISwJ1CYLo+xAXJUTUXsQKc=",
291
291
  "MindExecution.Plugins.Directory.8on0qz60kp.dll": "sha256-KGJuM3/sdVfJY9jy978C1aZymI7OJIEeHv9OPGlHwtg=",
292
- "MindExecution.Plugins.YouTube.0pgznxiz2o.dll": "sha256-RLrJwYGMQxAa7CkkXwLyZPjXwRssX1x2pS/WGIIQXmI="
292
+ "MindExecution.Plugins.YouTube.fkz0r1w96x.dll": "sha256-D5NLHc85b7A1BK7doDhueG9SEQNmhi7v9cVn/iQcpjk="
293
293
  }
294
294
  },
295
295
  "cacheBootResources": true,
@@ -579,7 +579,7 @@
579
579
  }
580
580
 
581
581
  const base = '_content/MindExecution.Shared/js/';
582
- const scriptVersion = '20260628-generated-image-normal-pipeline-v847';
582
+ const scriptVersion = '20260628-generated-image-asset-verify-v848';
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": "A8OIIchs",
2
+ "version": "LiAiTcYR",
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-V8z76q7kPYVfmcun+JthuuZfSuIPSfx0PY+up+BySwk=",
81
+ "hash": "sha256-i9ro6kKWzS56xpp7W+T6sjPWRPnXUUyUFdz4nQCcVAU=",
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-4sfJbSWKvZxLh0VUOQ6EQ0slzBRC4bYhCPH63Ljko2w=",
89
+ "hash": "sha256-cW1g2pILfT1P5dAvJHSXx3CD3fnfNIpCPiOhpYEP3/E=",
90
90
  "url": "_content/MindExecution.Shared/js/mind-map-css3d-manager.js"
91
91
  },
92
92
  {
@@ -422,28 +422,28 @@
422
422
  "url": "_framework/MindExecution.Plugins.Business.dxnr51rpko.dll"
423
423
  },
424
424
  {
425
- "hash": "sha256-KH2AckoxE9L3SrHFBBfYCW5qOf62eibv9R/fDiq0s3E=",
426
- "url": "_framework/MindExecution.Plugins.Concept.crknebife8.dll"
425
+ "hash": "sha256-KTYZT9imJmBWAu/sWXCSjPM8dug5tgHH3ky0+HbnR9Y=",
426
+ "url": "_framework/MindExecution.Plugins.Concept.x6f1fxmdci.dll"
427
427
  },
428
428
  {
429
429
  "hash": "sha256-KGJuM3/sdVfJY9jy978C1aZymI7OJIEeHv9OPGlHwtg=",
430
430
  "url": "_framework/MindExecution.Plugins.Directory.8on0qz60kp.dll"
431
431
  },
432
432
  {
433
- "hash": "sha256-zYCWCU32Jk7ZiPbEPLzOfouhmVqK98eQ1cYBe2301JM=",
434
- "url": "_framework/MindExecution.Plugins.PlanMaster.nf8ay9xgix.dll"
433
+ "hash": "sha256-gxVHU1/sPfLtSLxFz0AmIUzeKFLPyklqAbk8fveTSbM=",
434
+ "url": "_framework/MindExecution.Plugins.PlanMaster.l2ehtbg506.dll"
435
435
  },
436
436
  {
437
- "hash": "sha256-RLrJwYGMQxAa7CkkXwLyZPjXwRssX1x2pS/WGIIQXmI=",
438
- "url": "_framework/MindExecution.Plugins.YouTube.0pgznxiz2o.dll"
437
+ "hash": "sha256-D5NLHc85b7A1BK7doDhueG9SEQNmhi7v9cVn/iQcpjk=",
438
+ "url": "_framework/MindExecution.Plugins.YouTube.fkz0r1w96x.dll"
439
439
  },
440
440
  {
441
- "hash": "sha256-HO7Mv+CTuMcl35yIvkUfhDfCuh8GlEhafMfvNxbKvMw=",
442
- "url": "_framework/MindExecution.Shared.cksmc2e0pm.dll"
441
+ "hash": "sha256-IhkRo/JYrirDc22Tx3KAAzKWraWe5sOoA5U1vr+yMMc=",
442
+ "url": "_framework/MindExecution.Shared.2vo0tnjd7l.dll"
443
443
  },
444
444
  {
445
- "hash": "sha256-SlFcAedQ0GCcP8kyylzvrLIoonChLLFZnMXcrnHXFxw=",
446
- "url": "_framework/MindExecution.Web.2dukgu5xqw.dll"
445
+ "hash": "sha256-Pe1GpEgpVqEBC5PLHGwTQEIbWE6RKdUOKL6/NlmGGp0=",
446
+ "url": "_framework/MindExecution.Web.5migzyqnl3.dll"
447
447
  },
448
448
  {
449
449
  "hash": "sha256-IsZJ91/OW+fHzNqIgEc7Y072ns8z9dGritiSyvR9Wgc=",
@@ -766,7 +766,7 @@
766
766
  "url": "_framework/Websocket.Client.vapounvmnl.dll"
767
767
  },
768
768
  {
769
- "hash": "sha256-hsYae0ft/oXd0SqdjHM2fpzVCM+yL42XOF62U+Eugfk=",
769
+ "hash": "sha256-9gqaMdjPC/4UKS80CT6BEHu4Jf2DqJ78DYDZ73rbT1g=",
770
770
  "url": "_framework/blazor.boot.json"
771
771
  },
772
772
  {
@@ -826,7 +826,7 @@
826
826
  "url": "icon-512.png"
827
827
  },
828
828
  {
829
- "hash": "sha256-8SlWrdSrhpdROmnutaJ9AatEND1qDXB6PdNSCRI3mnc=",
829
+ "hash": "sha256-wyzu4wKETBaXMK4kgUSfYeaLxNd4bjhNty+/ah8ieCs=",
830
830
  "url": "index.html"
831
831
  },
832
832
  {
@@ -1,4 +1,4 @@
1
- /* Manifest version: A8OIIchs */
1
+ /* Manifest version: LiAiTcYR */
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