@mindexec/cli 0.2.425 → 0.2.427

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.425",
3
+ "version": "0.2.427",
4
4
  "description": "MindExec local runtime and bridge CLI",
5
5
  "main": "server.js",
6
6
  "type": "module",
@@ -4777,6 +4777,7 @@ window.MindMapInteractions = (function () {
4777
4777
 
4778
4778
  if (!actualDragObject) return;
4779
4779
  setBrowserSelectionLock(true, 'node-drag');
4780
+ module.draggedNodeId = nodeId;
4780
4781
 
4781
4782
  // ▼▼▼ [Added] Reliably store dragged ID for Up handler ▼▼▼
4782
4783
  module.draggedNodeId = nodeId;
@@ -5086,7 +5087,8 @@ window.MindMapInteractions = (function () {
5086
5087
  }
5087
5088
 
5088
5089
  async function onMouseUp(module, e) {
5089
- const handlers = getBoundHandlers(module);
5090
+ const handlers = getBoundHandlers(module);
5091
+ let postMouseUpActivation = null;
5090
5092
 
5091
5093
  // 0) Multi-select resize end (centralized)
5092
5094
  if (window.MindMapMultiSelect?.isResizing?.()) {
@@ -5263,57 +5265,57 @@ window.MindMapInteractions = (function () {
5263
5265
  } else if (consumePendingSelectedActivation(module, clickedNodeId)) {
5264
5266
  finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: false, bringToFront: true, showMenu: true });
5265
5267
  } else {
5266
- handleSelectedNodeActivation(module, clickedNodeId, nodeEntry, { isLink, target: e.target });
5267
- }
5268
- return;
5269
- }
5270
-
5271
- schedulePrimaryClickAction(module, () => {
5272
- if (module.selectedNodeIdJs && module.selectedNodeIdJs !== clickedNodeId) {
5273
- switchPreviousSelectedNoteToWebGL(module, false);
5268
+ const activationTarget = e.target;
5269
+ postMouseUpActivation = () => handleSelectedNodeActivation(module, clickedNodeId, nodeEntry, { isLink, target: activationTarget });
5274
5270
  }
5275
-
5276
- if (isMultiSelecting) {
5277
- if (module.multiSelectedNodeIds.has(clickedNodeId)) {
5278
- module.multiSelectedNodeIds.delete(clickedNodeId);
5279
- window.MindMapNodes.updateNodeSelectionStyle(module, clickedNodeId, false, false);
5280
- } else {
5281
- module.multiSelectedNodeIds.add(clickedNodeId);
5282
- window.MindMapNodes.updateNodeSelectionStyle(module, clickedNodeId, true, false);
5271
+ } else {
5272
+ schedulePrimaryClickAction(module, () => {
5273
+ if (module.selectedNodeIdJs && module.selectedNodeIdJs !== clickedNodeId) {
5274
+ switchPreviousSelectedNoteToWebGL(module, false);
5283
5275
  }
5284
- syncSelectedIdFromMulti(module);
5285
- return;
5286
- }
5287
5276
 
5288
- if (isAlreadySelected) {
5289
- if (module.selectionChangedInThisClick) {
5290
- module.selectionChangedInThisClick = false;
5291
- } else if (consumePendingSelectedActivation(module, clickedNodeId)) {
5292
- finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: false, bringToFront: true, showMenu: true });
5293
- } else {
5294
- handleSelectedNodeActivation(module, clickedNodeId, nodeEntry, { isLink, target: e.target });
5277
+ if (isMultiSelecting) {
5278
+ if (module.multiSelectedNodeIds.has(clickedNodeId)) {
5279
+ module.multiSelectedNodeIds.delete(clickedNodeId);
5280
+ window.MindMapNodes.updateNodeSelectionStyle(module, clickedNodeId, false, false);
5281
+ } else {
5282
+ module.multiSelectedNodeIds.add(clickedNodeId);
5283
+ window.MindMapNodes.updateNodeSelectionStyle(module, clickedNodeId, true, false);
5284
+ }
5285
+ syncSelectedIdFromMulti(module);
5286
+ return;
5295
5287
  }
5296
- return;
5297
- }
5298
5288
 
5299
- if (module.multiSelectedNodeIds?.size > 0) {
5300
- if (MindMapNodes.clearMultiSelection) {
5301
- MindMapNodes.clearMultiSelection(module);
5289
+ if (isAlreadySelected) {
5290
+ if (module.selectionChangedInThisClick) {
5291
+ module.selectionChangedInThisClick = false;
5292
+ } else if (consumePendingSelectedActivation(module, clickedNodeId)) {
5293
+ finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: false, bringToFront: true, showMenu: true });
5294
+ } else {
5295
+ handleSelectedNodeActivation(module, clickedNodeId, nodeEntry, { isLink, target: e.target });
5296
+ }
5297
+ return;
5302
5298
  }
5303
- module.multiSelectedNodeIds?.clear?.();
5304
- if (window.MindMapMultiSelect) {
5305
- window.MindMapMultiSelect.hide();
5299
+
5300
+ if (module.multiSelectedNodeIds?.size > 0) {
5301
+ if (MindMapNodes.clearMultiSelection) {
5302
+ MindMapNodes.clearMultiSelection(module);
5303
+ }
5304
+ module.multiSelectedNodeIds?.clear?.();
5305
+ if (window.MindMapMultiSelect) {
5306
+ window.MindMapMultiSelect.hide();
5307
+ }
5306
5308
  }
5307
- }
5308
5309
 
5309
- finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: true, bringToFront: true, showMenu: true });
5310
+ finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: true, bringToFront: true, showMenu: true });
5310
5311
 
5311
- module.selectionChangedInThisClick = true;
5312
+ module.selectionChangedInThisClick = true;
5312
5313
 
5313
- if (nodeEntry.model.contentType === 'pdf') {
5314
- try { module.dotNetHelper.invokeMethodAsync('ShowPdfDialog', nodeEntry.model.response, nodeEntry.model.prompt); } catch { }
5315
- }
5316
- });
5314
+ if (nodeEntry.model.contentType === 'pdf') {
5315
+ try { module.dotNetHelper.invokeMethodAsync('ShowPdfDialog', nodeEntry.model.response, nodeEntry.model.prompt); } catch { }
5316
+ }
5317
+ });
5318
+ }
5317
5319
 
5318
5320
  }
5319
5321
  }
@@ -5385,56 +5387,56 @@ window.MindMapInteractions = (function () {
5385
5387
  } else if (consumePendingSelectedActivation(module, clickedNodeId)) {
5386
5388
  finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: false, bringToFront: true, showMenu: true });
5387
5389
  } else {
5388
- handleSelectedNodeActivation(module, clickedNodeId, nodeEntry, { target: e.target });
5389
- }
5390
- return;
5391
- }
5392
-
5393
- schedulePrimaryClickAction(module, () => {
5394
- if (module.selectedNodeIdJs && module.selectedNodeIdJs !== clickedNodeId) {
5395
- switchPreviousSelectedNoteToWebGL(module, false);
5390
+ const activationTarget = e.target;
5391
+ postMouseUpActivation = () => handleSelectedNodeActivation(module, clickedNodeId, nodeEntry, { target: activationTarget });
5396
5392
  }
5397
-
5398
- if (isMultiSelecting) {
5399
- if (module.multiSelectedNodeIds.has(clickedNodeId)) {
5400
- module.multiSelectedNodeIds.delete(clickedNodeId);
5401
- window.MindMapNodes.updateNodeSelectionStyle(module, clickedNodeId, false, false);
5402
- } else {
5403
- module.multiSelectedNodeIds.add(clickedNodeId);
5404
- window.MindMapNodes.updateNodeSelectionStyle(module, clickedNodeId, true, false);
5393
+ } else {
5394
+ schedulePrimaryClickAction(module, () => {
5395
+ if (module.selectedNodeIdJs && module.selectedNodeIdJs !== clickedNodeId) {
5396
+ switchPreviousSelectedNoteToWebGL(module, false);
5405
5397
  }
5406
- syncSelectedIdFromMulti(module);
5407
- return;
5408
- }
5409
5398
 
5410
- if (isAlreadySelected) {
5411
- if (module.selectionChangedInThisClick) {
5412
- module.selectionChangedInThisClick = false;
5413
- finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: false, bringToFront: true, showMenu: true });
5414
- } else if (consumePendingSelectedActivation(module, clickedNodeId)) {
5415
- finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: false, bringToFront: true, showMenu: true });
5416
- } else {
5417
- handleSelectedNodeActivation(module, clickedNodeId, nodeEntry, { target: e.target });
5399
+ if (isMultiSelecting) {
5400
+ if (module.multiSelectedNodeIds.has(clickedNodeId)) {
5401
+ module.multiSelectedNodeIds.delete(clickedNodeId);
5402
+ window.MindMapNodes.updateNodeSelectionStyle(module, clickedNodeId, false, false);
5403
+ } else {
5404
+ module.multiSelectedNodeIds.add(clickedNodeId);
5405
+ window.MindMapNodes.updateNodeSelectionStyle(module, clickedNodeId, true, false);
5406
+ }
5407
+ syncSelectedIdFromMulti(module);
5408
+ return;
5418
5409
  }
5419
- return;
5420
- }
5421
5410
 
5422
- if (module.multiSelectedNodeIds?.size > 0) {
5423
- if (MindMapNodes.clearMultiSelection) {
5424
- MindMapNodes.clearMultiSelection(module);
5411
+ if (isAlreadySelected) {
5412
+ if (module.selectionChangedInThisClick) {
5413
+ module.selectionChangedInThisClick = false;
5414
+ finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: false, bringToFront: true, showMenu: true });
5415
+ } else if (consumePendingSelectedActivation(module, clickedNodeId)) {
5416
+ finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: false, bringToFront: true, showMenu: true });
5417
+ } else {
5418
+ handleSelectedNodeActivation(module, clickedNodeId, nodeEntry, { target: e.target });
5419
+ }
5420
+ return;
5425
5421
  }
5426
- module.multiSelectedNodeIds?.clear?.();
5427
- if (window.MindMapMultiSelect) {
5428
- window.MindMapMultiSelect.hide();
5422
+
5423
+ if (module.multiSelectedNodeIds?.size > 0) {
5424
+ if (MindMapNodes.clearMultiSelection) {
5425
+ MindMapNodes.clearMultiSelection(module);
5426
+ }
5427
+ module.multiSelectedNodeIds?.clear?.();
5428
+ if (window.MindMapMultiSelect) {
5429
+ window.MindMapMultiSelect.hide();
5430
+ }
5429
5431
  }
5430
- }
5431
5432
 
5432
- finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: true, bringToFront: true, showMenu: true });
5433
+ finalizeSingleSelection(module, clickedNodeId, { notifyBlazor: true, bringToFront: true, showMenu: true });
5433
5434
 
5434
- if (nodeEntry.model.contentType === 'pdf') {
5435
- try { module.dotNetHelper.invokeMethodAsync('ShowPdfDialog', nodeEntry.model.response, nodeEntry.model.prompt); } catch { }
5436
- }
5437
- });
5435
+ if (nodeEntry.model.contentType === 'pdf') {
5436
+ try { module.dotNetHelper.invokeMethodAsync('ShowPdfDialog', nodeEntry.model.response, nodeEntry.model.prompt); } catch { }
5437
+ }
5438
+ });
5439
+ }
5438
5440
  }
5439
5441
  }
5440
5442
  }
@@ -5455,6 +5457,7 @@ window.MindMapInteractions = (function () {
5455
5457
  module._deferredBackgroundPrimaryClick = false;
5456
5458
  module._deferredBackgroundClearOnDrag = false;
5457
5459
  module.draggedNodeObject = null;
5460
+ module.draggedNodeId = null;
5458
5461
  module.wasDragged = false;
5459
5462
  module.isShiftClick = false;
5460
5463
  module.multiDragInitialPositions.clear();
@@ -5496,11 +5499,18 @@ window.MindMapInteractions = (function () {
5496
5499
  // ▲▲▲ [UndoRedo] ▲▲▲
5497
5500
  // ▲▲▲ [Perf] ▲▲▲
5498
5501
 
5499
- // Key point: consistently remove listeners
5500
- window.removeEventListener('mousemove', handlers.boundOnMouseMove, { passive: false });
5501
- window.removeEventListener('mouseup', handlers.boundOnMouseUp);
5502
- // --- end listener cleanup ---
5503
- }
5502
+ // Key point: consistently remove listeners
5503
+ window.removeEventListener('mousemove', handlers.boundOnMouseMove, { passive: false });
5504
+ window.removeEventListener('mouseup', handlers.boundOnMouseUp);
5505
+ // --- end listener cleanup ---
5506
+ if (typeof postMouseUpActivation === 'function') {
5507
+ try {
5508
+ postMouseUpActivation();
5509
+ } catch (error) {
5510
+ console.error('[MindMapInteractions] Post-cleanup selected node activation failed:', error);
5511
+ }
5512
+ }
5513
+ }
5504
5514
 
5505
5515
  function updatePhysicalWheelModifierKeyState(module, e, isDown) {
5506
5516
  if (!module || !e) {
@@ -579,7 +579,7 @@
579
579
  }
580
580
 
581
581
  const base = '_content/MindExecution.Shared/js/';
582
- const scriptVersion = '20260629-note-click-edit-v858';
582
+ const scriptVersion = '20260629-note-click-edit-postcleanup-v860';
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": "w2wZAHV3",
2
+ "version": "6gH3mh9o",
3
3
  "assets": [
4
4
  {
5
5
  "hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
@@ -106,7 +106,7 @@
106
106
  "url": "_content/MindExecution.Shared/js/mind-map-glow-shader.js"
107
107
  },
108
108
  {
109
- "hash": "sha256-Ajke4gugGGu90uiK0yP328MSM5rXvxzZnjUunlZ2QcQ=",
109
+ "hash": "sha256-55qzyS84+lNr+D8yF0HyTAbQEpeEOXW36tDCfn5UuUc=",
110
110
  "url": "_content/MindExecution.Shared/js/mind-map-interactions.js"
111
111
  },
112
112
  {
@@ -826,7 +826,7 @@
826
826
  "url": "icon-512.png"
827
827
  },
828
828
  {
829
- "hash": "sha256-mL3Wc0hu+QH1SUN/WpGi621yyFP80kJdddGyPrwbVA0=",
829
+ "hash": "sha256-doMCH63vbKHtRVaAOBnZZ2/vgx0CS+hfAJ0NaAX/kQU=",
830
830
  "url": "index.html"
831
831
  },
832
832
  {
@@ -1,4 +1,4 @@
1
- /* Manifest version: w2wZAHV3 */
1
+ /* Manifest version: 6gH3mh9o */
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