@mindexec/cli 0.2.244 → 0.2.246
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
|
@@ -126,6 +126,9 @@
|
|
|
126
126
|
if (!themeObject || typeof themeObject.animate !== 'function') {
|
|
127
127
|
return false;
|
|
128
128
|
}
|
|
129
|
+
if (themeObject.userData?.localSnapGrid === true) {
|
|
130
|
+
return false;
|
|
131
|
+
}
|
|
129
132
|
|
|
130
133
|
const mode = getThemeAnimationMode(themeName, themeObject);
|
|
131
134
|
if (mode === THEME_ANIMATION_MODE.Continuous) {
|
|
@@ -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-
|
|
8
|
+
const MINDMAP_CORE_BUILD_ID = '20260620-local-grid-zoom-freeze-v693';
|
|
9
9
|
const CanvasPhase = Object.freeze({
|
|
10
10
|
Booting: 'booting',
|
|
11
11
|
BoardFileLoading: 'board-file-loading',
|
|
@@ -502,6 +502,34 @@
|
|
|
502
502
|
return true;
|
|
503
503
|
}
|
|
504
504
|
|
|
505
|
+
function shouldFreezeWebglSurfaceForZoom(module) {
|
|
506
|
+
return !!(
|
|
507
|
+
module?.isZooming === true &&
|
|
508
|
+
module?.useAnimation60Fps !== true &&
|
|
509
|
+
module?._lastWebglRenderedCameraState
|
|
510
|
+
);
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
function markWebglSurfaceFrozenForZoom(module, mode) {
|
|
514
|
+
if (!module) {
|
|
515
|
+
return false;
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
module._clearWebglCanvasCameraTransform?.();
|
|
519
|
+
module._webglCameraMotionDeferred = true;
|
|
520
|
+
module._themeCameraMotionDeferred = true;
|
|
521
|
+
module._lastWebglRenderInfo = {
|
|
522
|
+
calls: 0,
|
|
523
|
+
triangles: 0,
|
|
524
|
+
points: 0,
|
|
525
|
+
lines: 0,
|
|
526
|
+
skipped: true,
|
|
527
|
+
webglSurfaceFrozenForZoom: true,
|
|
528
|
+
[mode || 'uaZoomFrozenWebgl']: true
|
|
529
|
+
};
|
|
530
|
+
return true;
|
|
531
|
+
}
|
|
532
|
+
|
|
505
533
|
function deferContinuousThemeForCameraMotion(module) {
|
|
506
534
|
if (!isContinuousBackgroundTheme(module)) {
|
|
507
535
|
return false;
|
|
@@ -1624,6 +1652,8 @@
|
|
|
1624
1652
|
webglCanvasCameraTransform: usedWebglCanvasCameraTransform === true,
|
|
1625
1653
|
uaUltraEarlyCameraOnly: true
|
|
1626
1654
|
};
|
|
1655
|
+
} else if (shouldFreezeWebglSurfaceForZoom(module) === true) {
|
|
1656
|
+
markWebglSurfaceFrozenForZoom(module, 'uaUltraEarlyCameraOnly');
|
|
1627
1657
|
} else {
|
|
1628
1658
|
module._clearWebglCanvasCameraTransform?.();
|
|
1629
1659
|
module.renderer.render(module.scene, module.camera);
|
|
@@ -1844,6 +1874,8 @@
|
|
|
1844
1874
|
webglCanvasCameraTransform: usedWebglCanvasCameraTransform === true,
|
|
1845
1875
|
uaUltraResidentCameraOnly: true
|
|
1846
1876
|
};
|
|
1877
|
+
} else if (shouldFreezeWebglSurfaceForZoom(module) === true) {
|
|
1878
|
+
markWebglSurfaceFrozenForZoom(module, 'uaUltraResidentCameraOnly');
|
|
1847
1879
|
} else {
|
|
1848
1880
|
module._clearWebglCanvasCameraTransform?.();
|
|
1849
1881
|
module.renderer.render(module.scene, module.camera);
|
|
@@ -6575,18 +6607,22 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
6575
6607
|
uaVisualOnlyMotion: true
|
|
6576
6608
|
};
|
|
6577
6609
|
} else {
|
|
6578
|
-
this
|
|
6579
|
-
|
|
6580
|
-
|
|
6581
|
-
|
|
6582
|
-
|
|
6583
|
-
|
|
6584
|
-
|
|
6585
|
-
|
|
6586
|
-
|
|
6587
|
-
|
|
6588
|
-
|
|
6589
|
-
|
|
6610
|
+
if (shouldFreezeWebglSurfaceForZoom(this) === true) {
|
|
6611
|
+
markWebglSurfaceFrozenForZoom(this, 'uaVisualOnlyMotion');
|
|
6612
|
+
} else {
|
|
6613
|
+
this._clearWebglCanvasCameraTransform();
|
|
6614
|
+
this.renderer.render(this.scene, this.camera);
|
|
6615
|
+
this._recordWebglRenderedCameraState();
|
|
6616
|
+
const renderInfo = this.renderer?.info?.render || null;
|
|
6617
|
+
this._lastWebglRenderInfo = renderInfo ? {
|
|
6618
|
+
calls: Number(renderInfo.calls || 0),
|
|
6619
|
+
triangles: Number(renderInfo.triangles || 0),
|
|
6620
|
+
points: Number(renderInfo.points || 0),
|
|
6621
|
+
lines: Number(renderInfo.lines || 0),
|
|
6622
|
+
uaVisualOnlyMotion: true,
|
|
6623
|
+
webglCanvasCameraBootstrap: true
|
|
6624
|
+
} : null;
|
|
6625
|
+
}
|
|
6590
6626
|
}
|
|
6591
6627
|
}
|
|
6592
6628
|
this._syncMotionGridLayerForCameraNavigation(usedWebglCanvasCameraTransformImmediate);
|
|
@@ -6742,18 +6778,22 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
6742
6778
|
uaStationaryVisualMotion: true
|
|
6743
6779
|
};
|
|
6744
6780
|
} else {
|
|
6745
|
-
this
|
|
6746
|
-
|
|
6747
|
-
|
|
6748
|
-
|
|
6749
|
-
|
|
6750
|
-
|
|
6751
|
-
|
|
6752
|
-
|
|
6753
|
-
|
|
6754
|
-
|
|
6755
|
-
|
|
6756
|
-
|
|
6781
|
+
if (shouldFreezeWebglSurfaceForZoom(this) === true) {
|
|
6782
|
+
markWebglSurfaceFrozenForZoom(this, 'uaStationaryVisualMotion');
|
|
6783
|
+
} else {
|
|
6784
|
+
this._clearWebglCanvasCameraTransform();
|
|
6785
|
+
this.renderer.render(this.scene, this.camera);
|
|
6786
|
+
this._recordWebglRenderedCameraState();
|
|
6787
|
+
const renderInfo = this.renderer?.info?.render || null;
|
|
6788
|
+
this._lastWebglRenderInfo = renderInfo ? {
|
|
6789
|
+
calls: Number(renderInfo.calls || 0),
|
|
6790
|
+
triangles: Number(renderInfo.triangles || 0),
|
|
6791
|
+
points: Number(renderInfo.points || 0),
|
|
6792
|
+
lines: Number(renderInfo.lines || 0),
|
|
6793
|
+
uaStationaryVisualMotion: true,
|
|
6794
|
+
webglCanvasCameraBootstrap: true
|
|
6795
|
+
} : null;
|
|
6796
|
+
}
|
|
6757
6797
|
}
|
|
6758
6798
|
}
|
|
6759
6799
|
this._syncMotionGridLayerForCameraNavigation(usedWebglCanvasCameraTransformStationary);
|
|
@@ -6923,18 +6963,22 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
6923
6963
|
uaResidentVisualOnlyMotion: true
|
|
6924
6964
|
};
|
|
6925
6965
|
} else {
|
|
6926
|
-
this
|
|
6927
|
-
|
|
6928
|
-
|
|
6929
|
-
|
|
6930
|
-
|
|
6931
|
-
|
|
6932
|
-
|
|
6933
|
-
|
|
6934
|
-
|
|
6935
|
-
|
|
6936
|
-
|
|
6937
|
-
|
|
6966
|
+
if (shouldFreezeWebglSurfaceForZoom(this) === true) {
|
|
6967
|
+
markWebglSurfaceFrozenForZoom(this, 'uaResidentVisualOnlyMotion');
|
|
6968
|
+
} else {
|
|
6969
|
+
this._clearWebglCanvasCameraTransform();
|
|
6970
|
+
this.renderer.render(this.scene, this.camera);
|
|
6971
|
+
this._recordWebglRenderedCameraState();
|
|
6972
|
+
const renderInfo = this.renderer?.info?.render || null;
|
|
6973
|
+
this._lastWebglRenderInfo = renderInfo ? {
|
|
6974
|
+
calls: Number(renderInfo.calls || 0),
|
|
6975
|
+
triangles: Number(renderInfo.triangles || 0),
|
|
6976
|
+
points: Number(renderInfo.points || 0),
|
|
6977
|
+
lines: Number(renderInfo.lines || 0),
|
|
6978
|
+
uaResidentVisualOnlyMotion: true,
|
|
6979
|
+
webglCanvasCameraBootstrap: true
|
|
6980
|
+
} : null;
|
|
6981
|
+
}
|
|
6938
6982
|
}
|
|
6939
6983
|
}
|
|
6940
6984
|
}
|
|
@@ -7141,32 +7185,36 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
7141
7185
|
uaEarlyCameraOnly: true
|
|
7142
7186
|
};
|
|
7143
7187
|
} else if (this.renderer && this.scene && this.camera) {
|
|
7144
|
-
|
|
7145
|
-
|
|
7146
|
-
|
|
7147
|
-
|
|
7148
|
-
this.
|
|
7149
|
-
|
|
7150
|
-
|
|
7151
|
-
|
|
7152
|
-
|
|
7153
|
-
|
|
7154
|
-
|
|
7155
|
-
|
|
7156
|
-
|
|
7188
|
+
if (shouldFreezeWebglSurfaceForZoom(this) === true) {
|
|
7189
|
+
markWebglSurfaceFrozenForZoom(this, 'uaEarlyCameraOnly');
|
|
7190
|
+
} else {
|
|
7191
|
+
let hiddenEarlyCameraMotionThemeObject = null;
|
|
7192
|
+
this._clearWebglCanvasCameraTransform();
|
|
7193
|
+
if (this._isMotionGridThemeEnabled() === true &&
|
|
7194
|
+
this.currentThemeObject &&
|
|
7195
|
+
this.currentThemeObject.visible !== false) {
|
|
7196
|
+
hiddenEarlyCameraMotionThemeObject = this.currentThemeObject;
|
|
7197
|
+
hiddenEarlyCameraMotionThemeObject.visible = false;
|
|
7198
|
+
}
|
|
7199
|
+
try {
|
|
7200
|
+
this.renderer.render(this.scene, this.camera);
|
|
7201
|
+
} finally {
|
|
7202
|
+
if (hiddenEarlyCameraMotionThemeObject) {
|
|
7203
|
+
hiddenEarlyCameraMotionThemeObject.visible = true;
|
|
7204
|
+
}
|
|
7157
7205
|
}
|
|
7206
|
+
this._recordWebglRenderedCameraState();
|
|
7207
|
+
const renderInfo = this.renderer?.info?.render || null;
|
|
7208
|
+
this._lastWebglRenderInfo = renderInfo ? {
|
|
7209
|
+
calls: Number(renderInfo.calls || 0),
|
|
7210
|
+
triangles: Number(renderInfo.triangles || 0),
|
|
7211
|
+
points: Number(renderInfo.points || 0),
|
|
7212
|
+
lines: Number(renderInfo.lines || 0),
|
|
7213
|
+
backgroundThemeHidden: hiddenEarlyCameraMotionThemeObject ? true : undefined,
|
|
7214
|
+
uaEarlyCameraOnly: true,
|
|
7215
|
+
webglCanvasCameraBootstrap: true
|
|
7216
|
+
} : null;
|
|
7158
7217
|
}
|
|
7159
|
-
this._recordWebglRenderedCameraState();
|
|
7160
|
-
const renderInfo = this.renderer?.info?.render || null;
|
|
7161
|
-
this._lastWebglRenderInfo = renderInfo ? {
|
|
7162
|
-
calls: Number(renderInfo.calls || 0),
|
|
7163
|
-
triangles: Number(renderInfo.triangles || 0),
|
|
7164
|
-
points: Number(renderInfo.points || 0),
|
|
7165
|
-
lines: Number(renderInfo.lines || 0),
|
|
7166
|
-
backgroundThemeHidden: hiddenEarlyCameraMotionThemeObject ? true : undefined,
|
|
7167
|
-
uaEarlyCameraOnly: true,
|
|
7168
|
-
webglCanvasCameraBootstrap: true
|
|
7169
|
-
} : null;
|
|
7170
7218
|
} else {
|
|
7171
7219
|
this._lastWebglRenderInfo = {
|
|
7172
7220
|
calls: 0,
|
|
@@ -8000,33 +8048,40 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
8000
8048
|
webglCanvasCameraTransform: true
|
|
8001
8049
|
};
|
|
8002
8050
|
} else {
|
|
8003
|
-
this
|
|
8004
|
-
|
|
8005
|
-
|
|
8006
|
-
|
|
8007
|
-
|
|
8008
|
-
|
|
8009
|
-
|
|
8010
|
-
} finally {
|
|
8011
|
-
if (hiddenCameraMotionThemeObject) {
|
|
8012
|
-
hiddenCameraMotionThemeObject.visible = true;
|
|
8051
|
+
if (shouldFreezeWebglSurfaceForZoom(this) === true) {
|
|
8052
|
+
markWebglSurfaceFrozenForZoom(this, 'normalWebglRender');
|
|
8053
|
+
} else {
|
|
8054
|
+
this._clearWebglCanvasCameraTransform();
|
|
8055
|
+
if (shouldHideBackgroundThemeDuringCameraNavigation) {
|
|
8056
|
+
hiddenCameraMotionThemeObject = this.currentThemeObject;
|
|
8057
|
+
hiddenCameraMotionThemeObject.visible = false;
|
|
8013
8058
|
}
|
|
8059
|
+
try {
|
|
8060
|
+
this.renderer.render(this.scene, this.camera);
|
|
8061
|
+
} finally {
|
|
8062
|
+
if (hiddenCameraMotionThemeObject) {
|
|
8063
|
+
hiddenCameraMotionThemeObject.visible = true;
|
|
8064
|
+
}
|
|
8065
|
+
}
|
|
8066
|
+
this._recordWebglRenderedCameraState();
|
|
8067
|
+
const renderInfo = this.renderer?.info?.render || null;
|
|
8068
|
+
this._lastWebglRenderInfo = renderInfo ? {
|
|
8069
|
+
calls: Number(renderInfo.calls || 0),
|
|
8070
|
+
triangles: Number(renderInfo.triangles || 0),
|
|
8071
|
+
points: Number(renderInfo.points || 0),
|
|
8072
|
+
lines: Number(renderInfo.lines || 0),
|
|
8073
|
+
backgroundThemeHidden: hiddenCameraMotionThemeObject ? true : undefined
|
|
8074
|
+
} : null;
|
|
8014
8075
|
}
|
|
8015
|
-
this._recordWebglRenderedCameraState();
|
|
8016
|
-
const renderInfo = this.renderer?.info?.render || null;
|
|
8017
|
-
this._lastWebglRenderInfo = renderInfo ? {
|
|
8018
|
-
calls: Number(renderInfo.calls || 0),
|
|
8019
|
-
triangles: Number(renderInfo.triangles || 0),
|
|
8020
|
-
points: Number(renderInfo.points || 0),
|
|
8021
|
-
lines: Number(renderInfo.lines || 0),
|
|
8022
|
-
backgroundThemeHidden: hiddenCameraMotionThemeObject ? true : undefined
|
|
8023
|
-
} : null;
|
|
8024
8076
|
}
|
|
8025
8077
|
} else if (isWebglRenderEnabled) {
|
|
8026
8078
|
if (isPureCss3dCameraMotionFrame === true) {
|
|
8027
8079
|
this._webglCameraMotionDeferred = true;
|
|
8028
8080
|
}
|
|
8081
|
+
const shouldFreezeWebglCanvasTransformForZoom =
|
|
8082
|
+
shouldFreezeWebglSurfaceForZoom(this) === true;
|
|
8029
8083
|
if (isCameraNavigationOnlyInteractiveFrame === true &&
|
|
8084
|
+
shouldFreezeWebglCanvasTransformForZoom !== true &&
|
|
8030
8085
|
canUseWebglCanvasTransformForCameraMotion(this) === true) {
|
|
8031
8086
|
usedWebglCanvasCameraTransform = this._applyWebglCanvasCameraTransform() === true;
|
|
8032
8087
|
} else {
|
|
@@ -8038,7 +8093,8 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
8038
8093
|
points: 0,
|
|
8039
8094
|
lines: 0,
|
|
8040
8095
|
skipped: true,
|
|
8041
|
-
webglCanvasCameraTransform: usedWebglCanvasCameraTransform || undefined
|
|
8096
|
+
webglCanvasCameraTransform: usedWebglCanvasCameraTransform || undefined,
|
|
8097
|
+
webglSurfaceFrozenForZoom: shouldFreezeWebglCanvasTransformForZoom || undefined
|
|
8042
8098
|
};
|
|
8043
8099
|
} else if (isBoardLoading) {
|
|
8044
8100
|
this._clearWebglCanvasCameraTransform();
|
|
@@ -8048,7 +8104,16 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
8048
8104
|
isCameraNavigationOnlyInteractiveFrame === true) {
|
|
8049
8105
|
this._syncMotionGridLayerForCameraNavigation(usedWebglCanvasCameraTransform);
|
|
8050
8106
|
}
|
|
8051
|
-
|
|
8107
|
+
const shouldUseLocalSnapGridPositionOnly = !!(
|
|
8108
|
+
isCameraNavigationOnlyInteractiveFrame === true &&
|
|
8109
|
+
this._localSnapGridLayer?.isConnected &&
|
|
8110
|
+
this._lastLocalSnapGridKey
|
|
8111
|
+
);
|
|
8112
|
+
if (shouldUseLocalSnapGridPositionOnly === true) {
|
|
8113
|
+
this._syncLocalSnapGridPositionOnly(true);
|
|
8114
|
+
} else {
|
|
8115
|
+
this._syncLocalSnapGridLayer(true);
|
|
8116
|
+
}
|
|
8052
8117
|
if (shouldRenderWebglFrame === true &&
|
|
8053
8118
|
this._motionGridVisible === true &&
|
|
8054
8119
|
isPureCss3dCameraMotionFrame !== true &&
|
package/wwwroot/index.html
CHANGED
|
@@ -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-
|
|
11
|
-
<link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260620-
|
|
10
|
+
<link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260620-local-grid-zoom-freeze-v693" />
|
|
11
|
+
<link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260620-local-grid-zoom-freeze-v693" />
|
|
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-
|
|
582
|
+
const scriptVersion = '20260620-local-grid-zoom-freeze-v693';
|
|
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": "
|
|
2
|
+
"version": "PSSgwA1s",
|
|
3
3
|
"assets": [
|
|
4
4
|
{
|
|
5
5
|
"hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"url": "_content/MindExecution.Shared/js/agent-visualization.js"
|
|
59
59
|
},
|
|
60
60
|
{
|
|
61
|
-
"hash": "sha256-
|
|
61
|
+
"hash": "sha256-CrDccRF6gyngXofsjyROr6ziZabOdswoaK6ajTJtl88=",
|
|
62
62
|
"url": "_content/MindExecution.Shared/js/background-themes.js"
|
|
63
63
|
},
|
|
64
64
|
{
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
"url": "_content/MindExecution.Shared/js/marked.min.js"
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
|
-
"hash": "sha256-
|
|
81
|
+
"hash": "sha256-2VOJlDpOgcTf1p2dRUBMhGDKnDr2dJM8z1vfEfncsnw=",
|
|
82
82
|
"url": "_content/MindExecution.Shared/js/mind-map-core.js"
|
|
83
83
|
},
|
|
84
84
|
{
|
|
@@ -834,7 +834,7 @@
|
|
|
834
834
|
"url": "image-manifest.json"
|
|
835
835
|
},
|
|
836
836
|
{
|
|
837
|
-
"hash": "sha256-
|
|
837
|
+
"hash": "sha256-duvN1R3Fhi71Zy8YB9nx1HZAvMvAPnAECjpy28oOBi0=",
|
|
838
838
|
"url": "index.html"
|
|
839
839
|
},
|
|
840
840
|
{
|