@mindexec/cli 0.2.217 → 0.2.219
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 +1 -1
- package/wwwroot/_content/MindExecution.Shared/css/mind-map-overrides.css +36 -6
- package/wwwroot/_content/MindExecution.Shared/js/mind-map-core.js +309 -19
- package/wwwroot/_content/MindExecution.Shared/js/mind-map-css3d-manager.js +39 -3
- package/wwwroot/_content/MindExecution.Shared/js/mind-map-interactions.js +15 -6
- package/wwwroot/_framework/{MindExecution.Core.21gc0645uz.dll → MindExecution.Core.c9wgwsw9z6.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Plugins.Business.asckvekct8.dll → MindExecution.Plugins.Business.g8txk1zzic.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Shared.tlbhl3vzry.dll → MindExecution.Shared.tbutfszqeu.dll} +0 -0
- package/wwwroot/_framework/blazor.boot.json +7 -7
- package/wwwroot/index.html +3 -3
- package/wwwroot/service-worker-assets.js +13 -13
- package/wwwroot/service-worker.js +1 -1
package/package.json
CHANGED
|
@@ -209,7 +209,9 @@ body.mind-debug-video-tint-layout .css3d-resolution-wrapper.node-type-video .vid
|
|
|
209
209
|
/* ▲▲▲ [Fix] ▲▲▲ */
|
|
210
210
|
|
|
211
211
|
body.is-zooming .css3d-resolution-wrapper,
|
|
212
|
-
body.is-panning .css3d-resolution-wrapper
|
|
212
|
+
body.is-panning .css3d-resolution-wrapper,
|
|
213
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper,
|
|
214
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper {
|
|
213
215
|
-webkit-transition: none !important;
|
|
214
216
|
transition: none !important;
|
|
215
217
|
}
|
|
@@ -217,7 +219,11 @@ body.is-panning .css3d-resolution-wrapper {
|
|
|
217
219
|
body.is-zooming .css3d-resolution-wrapper.selected,
|
|
218
220
|
body.is-panning .css3d-resolution-wrapper.selected,
|
|
219
221
|
body.mindcanvas-is-moving .css3d-resolution-wrapper.selected,
|
|
220
|
-
body.mindcanvas-is-dense .css3d-resolution-wrapper.selected
|
|
222
|
+
body.mindcanvas-is-dense .css3d-resolution-wrapper.selected,
|
|
223
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper.selected,
|
|
224
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper.selected,
|
|
225
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper.selected,
|
|
226
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .css3d-resolution-wrapper.selected {
|
|
221
227
|
-webkit-filter: none !important;
|
|
222
228
|
filter: none !important;
|
|
223
229
|
}
|
|
@@ -238,7 +244,11 @@ html.mindcanvas-platform-apple body.mindcanvas-is-dense .css3d-resolution-wrappe
|
|
|
238
244
|
body.is-zooming .node-menu-wrapper,
|
|
239
245
|
body.is-panning .node-menu-wrapper,
|
|
240
246
|
body.is-zooming .map-node-memo__icon-popover,
|
|
241
|
-
body.is-panning .map-node-memo__icon-popover
|
|
247
|
+
body.is-panning .map-node-memo__icon-popover,
|
|
248
|
+
#css3d-dom-wrapper.is-zooming .node-menu-wrapper,
|
|
249
|
+
#css3d-dom-wrapper.is-panning .node-menu-wrapper,
|
|
250
|
+
#css3d-dom-wrapper.is-zooming .map-node-memo__icon-popover,
|
|
251
|
+
#css3d-dom-wrapper.is-panning .map-node-memo__icon-popover {
|
|
242
252
|
-webkit-backdrop-filter: none !important;
|
|
243
253
|
backdrop-filter: none !important;
|
|
244
254
|
-webkit-box-shadow: none !important;
|
|
@@ -1122,6 +1132,7 @@ body.is-panning .map-node-memo__icon-popover {
|
|
|
1122
1132
|
/* Hover raycast is already short-circuited in JS during pan, so keep CSS hover/focus
|
|
1123
1133
|
intact while middle-button panning. We still suppress hit-testing for zoom/drag. */
|
|
1124
1134
|
#css3d-dom-wrapper.is-dragging,
|
|
1135
|
+
#css3d-dom-wrapper.is-zooming,
|
|
1125
1136
|
body.is-zooming #css3d-dom-wrapper {
|
|
1126
1137
|
pointer-events: none !important;
|
|
1127
1138
|
}
|
|
@@ -1138,6 +1149,7 @@ body.is-zooming {
|
|
|
1138
1149
|
body.mindcanvas-browser-selection-locked *,
|
|
1139
1150
|
body.is-node-dragging *,
|
|
1140
1151
|
body.is-resizing *,
|
|
1152
|
+
#css3d-dom-wrapper.is-zooming *,
|
|
1141
1153
|
body.is-zooming #css3d-dom-wrapper *,
|
|
1142
1154
|
#css3d-dom-wrapper.is-panning,
|
|
1143
1155
|
#css3d-dom-wrapper.is-panning *,
|
|
@@ -1163,6 +1175,8 @@ body.is-resizing .mind-map-text-overlay-v2-card,
|
|
|
1163
1175
|
body.is-resizing .mind-map-text-overlay-v2-card *,
|
|
1164
1176
|
body.is-zooming .mind-map-text-overlay.mind-map-text-overlay-selectable .mind-map-text-overlay-fragment,
|
|
1165
1177
|
body.is-zooming .mind-map-text-overlay.mind-map-text-overlay-selectable .mind-map-text-overlay-fragment *,
|
|
1178
|
+
#css3d-dom-wrapper.is-zooming .mind-map-text-overlay.mind-map-text-overlay-selectable .mind-map-text-overlay-fragment,
|
|
1179
|
+
#css3d-dom-wrapper.is-zooming .mind-map-text-overlay.mind-map-text-overlay-selectable .mind-map-text-overlay-fragment *,
|
|
1166
1180
|
#css3d-dom-wrapper.is-panning .mind-map-text-overlay.mind-map-text-overlay-selectable .mind-map-text-overlay-fragment,
|
|
1167
1181
|
#css3d-dom-wrapper.is-panning .mind-map-text-overlay.mind-map-text-overlay-selectable .mind-map-text-overlay-fragment * {
|
|
1168
1182
|
user-select: none !important;
|
|
@@ -1504,7 +1518,8 @@ html.mindcanvas-platform-apple .css3d-resolution-wrapper.is-automation-relation-
|
|
|
1504
1518
|
pointer-events: auto;
|
|
1505
1519
|
}
|
|
1506
1520
|
|
|
1507
|
-
body.is-panning .mind-map-text-overlay-v2-card.is-passive .mind-map-text-overlay-v2-body
|
|
1521
|
+
body.is-panning .mind-map-text-overlay-v2-card.is-passive .mind-map-text-overlay-v2-body,
|
|
1522
|
+
#css3d-dom-wrapper.is-panning .mind-map-text-overlay-v2-card.is-passive .mind-map-text-overlay-v2-body {
|
|
1508
1523
|
pointer-events: none !important;
|
|
1509
1524
|
}
|
|
1510
1525
|
|
|
@@ -2445,6 +2460,9 @@ body.is-panning .mind-map-text-overlay-v2-card.is-passive .mind-map-text-overlay
|
|
|
2445
2460
|
body.is-panning .css3d-resolution-wrapper.node-type-templatelauncher.selected,
|
|
2446
2461
|
body.is-zooming .css3d-resolution-wrapper.node-type-templatelauncher.selected,
|
|
2447
2462
|
body.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-templatelauncher.selected,
|
|
2463
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper.node-type-templatelauncher.selected,
|
|
2464
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper.node-type-templatelauncher.selected,
|
|
2465
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-templatelauncher.selected,
|
|
2448
2466
|
body.mindcanvas-is-dense .css3d-resolution-wrapper.node-type-templatelauncher.selected {
|
|
2449
2467
|
outline: none !important;
|
|
2450
2468
|
-webkit-box-shadow: none !important;
|
|
@@ -3340,7 +3358,11 @@ body.is-panning .css3d-resolution-wrapper,
|
|
|
3340
3358
|
body.is-node-dragging .css3d-resolution-wrapper,
|
|
3341
3359
|
body.is-resizing .css3d-resolution-wrapper,
|
|
3342
3360
|
body.mindcanvas-is-moving .css3d-resolution-wrapper,
|
|
3343
|
-
body.mindcanvas-is-dense .css3d-resolution-wrapper
|
|
3361
|
+
body.mindcanvas-is-dense .css3d-resolution-wrapper,
|
|
3362
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper,
|
|
3363
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper,
|
|
3364
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper,
|
|
3365
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .css3d-resolution-wrapper {
|
|
3344
3366
|
-webkit-transition: none !important;
|
|
3345
3367
|
transition: none !important;
|
|
3346
3368
|
-webkit-filter: none !important;
|
|
@@ -3360,7 +3382,15 @@ body.is-panning .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
|
3360
3382
|
body.is-node-dragging .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
3361
3383
|
body.is-resizing .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
3362
3384
|
body.mindcanvas-is-moving .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
3363
|
-
body.mindcanvas-is-dense .css3d-resolution-wrapper [id^="css3d-node-"]
|
|
3385
|
+
body.mindcanvas-is-dense .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
3386
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper .css3d-dynamic-node,
|
|
3387
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper .css3d-dynamic-node,
|
|
3388
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper .css3d-dynamic-node,
|
|
3389
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .css3d-resolution-wrapper .css3d-dynamic-node,
|
|
3390
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
3391
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
3392
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
3393
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .css3d-resolution-wrapper [id^="css3d-node-"] {
|
|
3364
3394
|
-webkit-transition: none !important;
|
|
3365
3395
|
transition: none !important;
|
|
3366
3396
|
-webkit-filter: none !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 = '
|
|
8
|
+
const MINDMAP_CORE_BUILD_ID = '20260619-ua-immediate-camera-v629';
|
|
9
9
|
const CanvasPhase = Object.freeze({
|
|
10
10
|
Booting: 'booting',
|
|
11
11
|
BoardFileLoading: 'board-file-loading',
|
|
@@ -94,7 +94,7 @@ const MINDMAP_CORE_BUILD_ID = '20260617-flow-run-hitfix-v586';
|
|
|
94
94
|
const VISIBILITY_CULLING_ZOOM_HEAVY_FRAME_INTERVAL = 10;
|
|
95
95
|
const FULL_RES_VISIBILITY_CULLING_PAN_FRAME_INTERVAL = 10;
|
|
96
96
|
const FULL_RES_VISIBILITY_EXIT_MARGIN_SCALE = 1.8;
|
|
97
|
-
const CAMERA_MOTION_WEBGL_FRAME_INTERVAL =
|
|
97
|
+
const CAMERA_MOTION_WEBGL_FRAME_INTERVAL = 10;
|
|
98
98
|
const PIPELINE_PROFILE_SECTION_KEYS = Object.freeze([
|
|
99
99
|
'pipelineViewport',
|
|
100
100
|
'pipelineScheduling',
|
|
@@ -107,8 +107,8 @@ const MINDMAP_CORE_BUILD_ID = '20260617-flow-run-hitfix-v586';
|
|
|
107
107
|
const FULL_RES_LOD_PAN_REFRESH_INTERVAL_MS = 96;
|
|
108
108
|
const FULL_RES_LOD_ZOOM_REFRESH_INTERVAL_MS = 48;
|
|
109
109
|
const CAMERA_LERP_BASE_FRAME_MS = 1000 / 60;
|
|
110
|
-
const CAMERA_KEYBOARD_PAN_LERP_60HZ = 0
|
|
111
|
-
const CAMERA_MOUSE_PAN_LERP_60HZ = 0
|
|
110
|
+
const CAMERA_KEYBOARD_PAN_LERP_60HZ = 1.0;
|
|
111
|
+
const CAMERA_MOUSE_PAN_LERP_60HZ = 1.0;
|
|
112
112
|
const NODE_ADD_FRAME_BUDGET_MS = 6;
|
|
113
113
|
const NODE_ADD_LOADING_FRAME_BUDGET_MS = 8;
|
|
114
114
|
const NODE_ADD_MIN_SLICE = 8;
|
|
@@ -368,7 +368,8 @@ const MINDMAP_CORE_BUILD_ID = '20260617-flow-run-hitfix-v586';
|
|
|
368
368
|
|
|
369
369
|
const _mindCanvasPerfClassState = {
|
|
370
370
|
moving: false,
|
|
371
|
-
dense: false
|
|
371
|
+
dense: false,
|
|
372
|
+
target: null
|
|
372
373
|
};
|
|
373
374
|
const _renderDebugBodyClassState = {
|
|
374
375
|
hideVideoSurfaceInNear: false,
|
|
@@ -381,13 +382,21 @@ const MINDMAP_CORE_BUILD_ID = '20260617-flow-run-hitfix-v586';
|
|
|
381
382
|
return;
|
|
382
383
|
}
|
|
383
384
|
|
|
385
|
+
const targetElement = moduleInstance?.cssRenderer?.domElement || document.body;
|
|
386
|
+
if (_mindCanvasPerfClassState.target && _mindCanvasPerfClassState.target !== targetElement) {
|
|
387
|
+
_mindCanvasPerfClassState.target.classList?.remove?.('mindcanvas-is-moving', 'mindcanvas-is-dense');
|
|
388
|
+
_mindCanvasPerfClassState.moving = false;
|
|
389
|
+
_mindCanvasPerfClassState.dense = false;
|
|
390
|
+
}
|
|
391
|
+
_mindCanvasPerfClassState.target = targetElement;
|
|
392
|
+
|
|
384
393
|
if (_mindCanvasPerfClassState.moving !== moving) {
|
|
385
|
-
|
|
394
|
+
targetElement.classList.toggle('mindcanvas-is-moving', moving);
|
|
386
395
|
_mindCanvasPerfClassState.moving = moving;
|
|
387
396
|
}
|
|
388
397
|
|
|
389
398
|
if (_mindCanvasPerfClassState.dense !== dense) {
|
|
390
|
-
|
|
399
|
+
targetElement.classList.toggle('mindcanvas-is-dense', dense);
|
|
391
400
|
_mindCanvasPerfClassState.dense = dense;
|
|
392
401
|
}
|
|
393
402
|
}
|
|
@@ -4457,6 +4466,7 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
4457
4466
|
if (this.isZooming && !isCameraMoving && timeSinceLastInput > ZOOM_END_DELAY_MS) {
|
|
4458
4467
|
this.isZooming = false;
|
|
4459
4468
|
document.body.classList.remove('is-zooming');
|
|
4469
|
+
this.cssRenderer?.domElement?.classList?.remove?.('is-zooming');
|
|
4460
4470
|
if (FRAME_PERF_DEBUG) {
|
|
4461
4471
|
console.log(`[Perf] Zoom ended (${timeSinceLastInput.toFixed(0)}ms since last input)`);
|
|
4462
4472
|
}
|
|
@@ -4639,13 +4649,21 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
4639
4649
|
!isNodeInteracting &&
|
|
4640
4650
|
!hasNonPanForcedUpdate &&
|
|
4641
4651
|
!hasPendingNearCssWarmup;
|
|
4642
|
-
const
|
|
4643
|
-
|
|
4644
|
-
|
|
4645
|
-
|
|
4646
|
-
|
|
4647
|
-
|
|
4648
|
-
|
|
4652
|
+
const shouldPreferCameraOnlyMotionPipeline =
|
|
4653
|
+
isCameraMoving === true &&
|
|
4654
|
+
!isNodeInteracting &&
|
|
4655
|
+
!hasNonCameraNavigationForcedUpdate &&
|
|
4656
|
+
!hasPendingNearCssWarmup &&
|
|
4657
|
+
!this.isWindowResizing;
|
|
4658
|
+
const movingUpdateDue = shouldPreferCameraOnlyMotionPipeline === true
|
|
4659
|
+
? false
|
|
4660
|
+
: isCameraMoving && (
|
|
4661
|
+
!isLodModeActive ||
|
|
4662
|
+
(
|
|
4663
|
+
!residentMidFarStable &&
|
|
4664
|
+
(this.frameCount % (this.isZooming ? 12 : 8) === 0)
|
|
4665
|
+
)
|
|
4666
|
+
);
|
|
4649
4667
|
const idleUpdateDue = false;
|
|
4650
4668
|
const isLodPanVisibilityRefreshDue =
|
|
4651
4669
|
!isResidentMidFarLodFrame &&
|
|
@@ -4682,6 +4700,142 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
4682
4700
|
const useTextOverlayV2 = !isBoardLoading && this.useTextOverlayV2 === true && !!window.MindMapTextOverlayV2;
|
|
4683
4701
|
const renderDebugFlags = activeRenderDebugFlags;
|
|
4684
4702
|
const isCss3dEnabled = !isBoardLoading && renderDebugFlags.enableCss3d !== false;
|
|
4703
|
+
|
|
4704
|
+
const hasKnownTextOverlayFocus = !!(
|
|
4705
|
+
String(this._textOverlayV2State?.selectionNodeId || '').trim() ||
|
|
4706
|
+
String(this._textOverlayV2State?.editing?.nodeId || '').trim() ||
|
|
4707
|
+
String(this._selectableTextOverlayNodeId || '').trim() ||
|
|
4708
|
+
String(this._editingOverlayState?.nodeId || '').trim()
|
|
4709
|
+
);
|
|
4710
|
+
const hasPendingCss3dTransformWork = !!(
|
|
4711
|
+
(this._cssTransformDirtyIds?.size || 0) > 0 ||
|
|
4712
|
+
this._cssParentRepairNeeded === true ||
|
|
4713
|
+
this._css3dVisualChangedThisFrame === true ||
|
|
4714
|
+
this._css3dVisualChangedSinceLastRender === true
|
|
4715
|
+
);
|
|
4716
|
+
const canUseUaImmediateCameraOnlyFrame = !!(
|
|
4717
|
+
shouldPreferCameraOnlyMotionPipeline === true &&
|
|
4718
|
+
isCss3dEnabled === true &&
|
|
4719
|
+
!!this.cssRenderer &&
|
|
4720
|
+
typeof this.cssRenderer.renderCamera === 'function' &&
|
|
4721
|
+
isLodModeActive !== true &&
|
|
4722
|
+
isCameraMoving === true &&
|
|
4723
|
+
this.isSelecting !== true &&
|
|
4724
|
+
!hasKnownTextOverlayFocus &&
|
|
4725
|
+
!hasPendingCss3dTransformWork &&
|
|
4726
|
+
!isBoardLoading
|
|
4727
|
+
);
|
|
4728
|
+
if (canUseUaImmediateCameraOnlyFrame) {
|
|
4729
|
+
this._fullResMotionFrozen = true;
|
|
4730
|
+
this._wasViewStateMotionFrozenLastFrame = true;
|
|
4731
|
+
this._wasLodMotionFrozenLastFrame = false;
|
|
4732
|
+
this._fullResVisibilityReconcilePending = true;
|
|
4733
|
+
this._preserveVisibleSetThisFrame = true;
|
|
4734
|
+
this._lastVisibilityCullingSkipReason = 'ua-immediate-camera-only';
|
|
4735
|
+
if (this._businessAutomationEdgeVisualLayer?.isConnected ||
|
|
4736
|
+
this._businessAutomationEdgeLayer?.isConnected) {
|
|
4737
|
+
this._businessAutomationEdgesDeferredForMotion = true;
|
|
4738
|
+
}
|
|
4739
|
+
if (this._overlayDirty === true) {
|
|
4740
|
+
this._deferPassiveOverlayRefresh = true;
|
|
4741
|
+
}
|
|
4742
|
+
|
|
4743
|
+
const approxVisibleNodeCountImmediate = Number(this._visibleIds?.size || this._prevVisibleIds?.size || 0);
|
|
4744
|
+
const totalNodeCountImmediate = Number(this.nodeObjectsById?.size || 0);
|
|
4745
|
+
syncMindCanvasPerfClasses({
|
|
4746
|
+
moving: true,
|
|
4747
|
+
dense:
|
|
4748
|
+
approxVisibleNodeCountImmediate >= DENSE_VISIBLE_NODE_THRESHOLD ||
|
|
4749
|
+
totalNodeCountImmediate >= DENSE_TOTAL_NODE_THRESHOLD
|
|
4750
|
+
});
|
|
4751
|
+
|
|
4752
|
+
if ((this.frameCount % CAMERA_MOTION_WEBGL_FRAME_INTERVAL) === 0) {
|
|
4753
|
+
updateCursorDomElement(this);
|
|
4754
|
+
if (renderDebugFlags.enableWebglRender !== false && this.renderer && this.scene && this.camera) {
|
|
4755
|
+
this.renderer.render(this.scene, this.camera);
|
|
4756
|
+
const renderInfo = this.renderer?.info?.render || null;
|
|
4757
|
+
this._lastWebglRenderInfo = renderInfo ? {
|
|
4758
|
+
calls: Number(renderInfo.calls || 0),
|
|
4759
|
+
triangles: Number(renderInfo.triangles || 0),
|
|
4760
|
+
points: Number(renderInfo.points || 0),
|
|
4761
|
+
lines: Number(renderInfo.lines || 0),
|
|
4762
|
+
uaImmediateCameraOnly: true
|
|
4763
|
+
} : null;
|
|
4764
|
+
}
|
|
4765
|
+
} else if (renderDebugFlags.enableWebglRender !== false) {
|
|
4766
|
+
this._lastWebglRenderInfo = {
|
|
4767
|
+
calls: 0,
|
|
4768
|
+
triangles: 0,
|
|
4769
|
+
points: 0,
|
|
4770
|
+
lines: 0,
|
|
4771
|
+
skipped: true,
|
|
4772
|
+
uaImmediateCameraOnly: true
|
|
4773
|
+
};
|
|
4774
|
+
}
|
|
4775
|
+
|
|
4776
|
+
this.cssRenderer.renderCamera(this.camera);
|
|
4777
|
+
_profileSection('uaImmediateCameraOnly');
|
|
4778
|
+
|
|
4779
|
+
const frameEnd = performance.now();
|
|
4780
|
+
const frameDuration = frameEnd - frameStart;
|
|
4781
|
+
this._lastFrameDurationMs = frameDuration;
|
|
4782
|
+
this._lastFrameMetricsAt = frameEnd;
|
|
4783
|
+
if (shouldCaptureFramePerf) {
|
|
4784
|
+
const sectionTimes = {};
|
|
4785
|
+
Object.entries(_frameProfTimes)
|
|
4786
|
+
.filter(([key, value]) => key !== 'visibleNodes' && typeof value === 'number')
|
|
4787
|
+
.forEach(([key, value]) => {
|
|
4788
|
+
sectionTimes[key] = Number(value.toFixed(2));
|
|
4789
|
+
});
|
|
4790
|
+
this._lastFramePerfProfile = {
|
|
4791
|
+
durationMs: Number(frameDuration.toFixed(2)),
|
|
4792
|
+
update: false,
|
|
4793
|
+
cameraZ: Number((this.camera?.position?.z || 0).toFixed(2)),
|
|
4794
|
+
isZooming: this.isZooming === true,
|
|
4795
|
+
isPanning: this.isPanning === true,
|
|
4796
|
+
isCameraMoving: true,
|
|
4797
|
+
isInLodMode: false,
|
|
4798
|
+
lodBand: this.lodRenderer?._currentLodBand || null,
|
|
4799
|
+
visibleNodes: approxVisibleNodeCountImmediate,
|
|
4800
|
+
freezeVisibility: true,
|
|
4801
|
+
freezeLod: false,
|
|
4802
|
+
freezeFullRes: true,
|
|
4803
|
+
residentMidFarStable: false,
|
|
4804
|
+
residentDirty: false,
|
|
4805
|
+
residentBandChanging: false,
|
|
4806
|
+
viewSyncMode: 'ua-immediate-camera-only',
|
|
4807
|
+
lodUpdateCalled: false,
|
|
4808
|
+
lodUpdateSkipped: true,
|
|
4809
|
+
lodUpdateSkipReason: 'ua-immediate-camera-only',
|
|
4810
|
+
lodSkipReason: '',
|
|
4811
|
+
lodDirtyReason: '',
|
|
4812
|
+
lodDirtyState: null,
|
|
4813
|
+
viewSyncBreakdown: null,
|
|
4814
|
+
shouldRunVisibilityCulling: false,
|
|
4815
|
+
visibilityStableSkip: true,
|
|
4816
|
+
visibilitySkipReason: 'ua-immediate-camera-only',
|
|
4817
|
+
incrementalPanVisibility: false,
|
|
4818
|
+
shouldSyncCss3dTransforms: false,
|
|
4819
|
+
shouldRenderCss3d: false,
|
|
4820
|
+
usedCss3dCameraFastPath: true,
|
|
4821
|
+
uaImmediateCameraOnly: true,
|
|
4822
|
+
shouldSyncTextOverlays: false,
|
|
4823
|
+
usedPassiveOverlayCameraFastPath: false,
|
|
4824
|
+
passiveOverlaySuppressed: this._suppressPassiveDomOverlayDuringZoom === true,
|
|
4825
|
+
webgl: this._lastWebglRenderInfo || null,
|
|
4826
|
+
sections: sectionTimes
|
|
4827
|
+
};
|
|
4828
|
+
updateFramePerfPeakProfile(this, this._lastFramePerfProfile, frameEnd);
|
|
4829
|
+
} else if (this._lastFramePerfProfile) {
|
|
4830
|
+
this._lastFramePerfProfile = null;
|
|
4831
|
+
}
|
|
4832
|
+
|
|
4833
|
+
this._lastAnimationLoopDelayMs = 0;
|
|
4834
|
+
this._animationLoopExecuting = false;
|
|
4835
|
+
this._scheduleAnimationLoop(loop, 0);
|
|
4836
|
+
return;
|
|
4837
|
+
}
|
|
4838
|
+
|
|
4685
4839
|
const isCss3dTransformSyncEnabled = isCss3dEnabled && renderDebugFlags.enableCss3dTransformSync !== false;
|
|
4686
4840
|
const isVisibilityCullingEnabled = renderDebugFlags.enableVisibilityCulling !== false;
|
|
4687
4841
|
const isLodUpdateEnabled = renderDebugFlags.enableLodUpdate !== false;
|
|
@@ -4728,6 +4882,130 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
4728
4882
|
_profileSection('pipelineOverlayPlan');
|
|
4729
4883
|
const hasFocusedTextOverlay = !!selectableOverlayNodeId;
|
|
4730
4884
|
const hasEditingOverlay = !!editingOverlayNodeId;
|
|
4885
|
+
const isUaStyleCameraTransformFrame =
|
|
4886
|
+
shouldPreferCameraOnlyMotionPipeline === true &&
|
|
4887
|
+
isCss3dEnabled === true &&
|
|
4888
|
+
!!this.cssRenderer &&
|
|
4889
|
+
!hasFocusedTextOverlay &&
|
|
4890
|
+
!hasEditingOverlay;
|
|
4891
|
+
const canUseUaEarlyCameraOnlyFrame = !!(
|
|
4892
|
+
isUaStyleCameraTransformFrame === true &&
|
|
4893
|
+
isFullResMode === true &&
|
|
4894
|
+
isResidentMidFarLodFrame !== true &&
|
|
4895
|
+
isCameraMoving === true &&
|
|
4896
|
+
this.isSelecting !== true &&
|
|
4897
|
+
typeof this.cssRenderer.renderCamera === 'function' &&
|
|
4898
|
+
this._css3dVisualChangedThisFrame !== true &&
|
|
4899
|
+
this._css3dVisualChangedSinceLastRender !== true
|
|
4900
|
+
);
|
|
4901
|
+
if (canUseUaEarlyCameraOnlyFrame) {
|
|
4902
|
+
this._fullResMotionFrozen = true;
|
|
4903
|
+
this._wasViewStateMotionFrozenLastFrame = true;
|
|
4904
|
+
this._wasLodMotionFrozenLastFrame = false;
|
|
4905
|
+
this._fullResVisibilityReconcilePending = true;
|
|
4906
|
+
this._preserveVisibleSetThisFrame = true;
|
|
4907
|
+
this._lastVisibilityCullingSkipReason = 'ua-early-camera-only';
|
|
4908
|
+
if (this._businessAutomationEdgeVisualLayer?.isConnected ||
|
|
4909
|
+
this._businessAutomationEdgeLayer?.isConnected) {
|
|
4910
|
+
this._businessAutomationEdgesDeferredForMotion = true;
|
|
4911
|
+
}
|
|
4912
|
+
|
|
4913
|
+
const approxVisibleNodeCountEarly = Number(this._visibleIds?.size || this._prevVisibleIds?.size || 0);
|
|
4914
|
+
const totalNodeCountEarly = Number(this.nodeObjectsById?.size || 0);
|
|
4915
|
+
syncMindCanvasPerfClasses({
|
|
4916
|
+
moving: true,
|
|
4917
|
+
dense:
|
|
4918
|
+
approxVisibleNodeCountEarly >= DENSE_VISIBLE_NODE_THRESHOLD ||
|
|
4919
|
+
totalNodeCountEarly >= DENSE_TOTAL_NODE_THRESHOLD
|
|
4920
|
+
});
|
|
4921
|
+
|
|
4922
|
+
if ((this.frameCount % CAMERA_MOTION_WEBGL_FRAME_INTERVAL) === 0) {
|
|
4923
|
+
updateCursorDomElement(this);
|
|
4924
|
+
if (isWebglRenderEnabled && this.renderer && this.scene && this.camera) {
|
|
4925
|
+
this.renderer.render(this.scene, this.camera);
|
|
4926
|
+
const renderInfo = this.renderer?.info?.render || null;
|
|
4927
|
+
this._lastWebglRenderInfo = renderInfo ? {
|
|
4928
|
+
calls: Number(renderInfo.calls || 0),
|
|
4929
|
+
triangles: Number(renderInfo.triangles || 0),
|
|
4930
|
+
points: Number(renderInfo.points || 0),
|
|
4931
|
+
lines: Number(renderInfo.lines || 0),
|
|
4932
|
+
uaEarlyCameraOnly: true
|
|
4933
|
+
} : null;
|
|
4934
|
+
}
|
|
4935
|
+
} else if (isWebglRenderEnabled) {
|
|
4936
|
+
this._lastWebglRenderInfo = {
|
|
4937
|
+
calls: 0,
|
|
4938
|
+
triangles: 0,
|
|
4939
|
+
points: 0,
|
|
4940
|
+
lines: 0,
|
|
4941
|
+
skipped: true,
|
|
4942
|
+
uaEarlyCameraOnly: true
|
|
4943
|
+
};
|
|
4944
|
+
}
|
|
4945
|
+
|
|
4946
|
+
this.cssRenderer.renderCamera(this.camera);
|
|
4947
|
+
_profileSection('uaEarlyCameraOnly');
|
|
4948
|
+
|
|
4949
|
+
const frameEnd = performance.now();
|
|
4950
|
+
const frameDuration = frameEnd - frameStart;
|
|
4951
|
+
this._lastFrameDurationMs = frameDuration;
|
|
4952
|
+
this._lastFrameMetricsAt = frameEnd;
|
|
4953
|
+
|
|
4954
|
+
if (shouldCaptureFramePerf) {
|
|
4955
|
+
const sectionTimes = {};
|
|
4956
|
+
Object.entries(_frameProfTimes)
|
|
4957
|
+
.filter(([key, value]) => key !== 'visibleNodes' && typeof value === 'number')
|
|
4958
|
+
.forEach(([key, value]) => {
|
|
4959
|
+
sectionTimes[key] = Number(value.toFixed(2));
|
|
4960
|
+
});
|
|
4961
|
+
this._lastFramePerfProfile = {
|
|
4962
|
+
durationMs: Number(frameDuration.toFixed(2)),
|
|
4963
|
+
update: false,
|
|
4964
|
+
cameraZ: Number((this.camera?.position?.z || 0).toFixed(2)),
|
|
4965
|
+
isZooming: this.isZooming === true,
|
|
4966
|
+
isPanning: this.isPanning === true,
|
|
4967
|
+
isCameraMoving: true,
|
|
4968
|
+
isInLodMode: false,
|
|
4969
|
+
lodBand: this.lodRenderer?._currentLodBand || null,
|
|
4970
|
+
visibleNodes: approxVisibleNodeCountEarly,
|
|
4971
|
+
freezeVisibility: true,
|
|
4972
|
+
freezeLod: false,
|
|
4973
|
+
freezeFullRes: true,
|
|
4974
|
+
residentMidFarStable: false,
|
|
4975
|
+
residentDirty: false,
|
|
4976
|
+
residentBandChanging: false,
|
|
4977
|
+
viewSyncMode: 'ua-early-camera-only',
|
|
4978
|
+
lodUpdateCalled: false,
|
|
4979
|
+
lodUpdateSkipped: true,
|
|
4980
|
+
lodUpdateSkipReason: 'ua-early-camera-only',
|
|
4981
|
+
lodSkipReason: '',
|
|
4982
|
+
lodDirtyReason: '',
|
|
4983
|
+
lodDirtyState: null,
|
|
4984
|
+
viewSyncBreakdown: null,
|
|
4985
|
+
shouldRunVisibilityCulling: false,
|
|
4986
|
+
visibilityStableSkip: true,
|
|
4987
|
+
visibilitySkipReason: 'ua-early-camera-only',
|
|
4988
|
+
incrementalPanVisibility: false,
|
|
4989
|
+
shouldSyncCss3dTransforms: false,
|
|
4990
|
+
shouldRenderCss3d: false,
|
|
4991
|
+
usedCss3dCameraFastPath: true,
|
|
4992
|
+
uaEarlyCameraOnly: true,
|
|
4993
|
+
shouldSyncTextOverlays: false,
|
|
4994
|
+
usedPassiveOverlayCameraFastPath: false,
|
|
4995
|
+
passiveOverlaySuppressed: this._suppressPassiveDomOverlayDuringZoom === true,
|
|
4996
|
+
webgl: this._lastWebglRenderInfo || null,
|
|
4997
|
+
sections: sectionTimes
|
|
4998
|
+
};
|
|
4999
|
+
updateFramePerfPeakProfile(this, this._lastFramePerfProfile, frameEnd);
|
|
5000
|
+
} else if (this._lastFramePerfProfile) {
|
|
5001
|
+
this._lastFramePerfProfile = null;
|
|
5002
|
+
}
|
|
5003
|
+
|
|
5004
|
+
this._lastAnimationLoopDelayMs = 0;
|
|
5005
|
+
this._animationLoopExecuting = false;
|
|
5006
|
+
this._scheduleAnimationLoop(loop, 0);
|
|
5007
|
+
return;
|
|
5008
|
+
}
|
|
4731
5009
|
const isMotionFreezeEligible =
|
|
4732
5010
|
(this.isZooming === true || this.isPanning === true || isCameraMoving === true) &&
|
|
4733
5011
|
!isNodeInteracting &&
|
|
@@ -4774,6 +5052,7 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
4774
5052
|
!hasFocusedTextOverlay &&
|
|
4775
5053
|
!hasEditingOverlay &&
|
|
4776
5054
|
(
|
|
5055
|
+
isUaStyleCameraTransformFrame === true ||
|
|
4777
5056
|
renderDebugFlags.freezeVisibilityDuringMotion === true ||
|
|
4778
5057
|
isHeavyFullResScene
|
|
4779
5058
|
);
|
|
@@ -4892,7 +5171,14 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
4892
5171
|
hasForcedUpdate === true ||
|
|
4893
5172
|
hasPendingNearCssWarmup === true
|
|
4894
5173
|
);
|
|
4895
|
-
const
|
|
5174
|
+
const shouldUseCss3dCameraTransformFrame =
|
|
5175
|
+
shouldPreferCameraOnlyMotionPipeline === true &&
|
|
5176
|
+
isCss3dEnabled === true &&
|
|
5177
|
+
!!this.cssRenderer;
|
|
5178
|
+
const shouldUpdateCss3d =
|
|
5179
|
+
shouldUpdate ||
|
|
5180
|
+
shouldUpdateResidentCssMediaFallback ||
|
|
5181
|
+
shouldUseCss3dCameraTransformFrame;
|
|
4896
5182
|
const prevVisibilityVersion = Number(this._visibilityVersion || 0);
|
|
4897
5183
|
const prevLodVisualEpoch = Number(this.lodRenderer?._lodVisualEpoch || 0);
|
|
4898
5184
|
this._css3dVisualChangedThisFrame = false;
|
|
@@ -5247,7 +5533,6 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
5247
5533
|
(isThemeAnimationEnabled || shouldForceGpuParticleAnimation) &&
|
|
5248
5534
|
this.currentThemeObject &&
|
|
5249
5535
|
typeof this.currentThemeObject.animate === 'function') {
|
|
5250
|
-
const themeAnimationInterval = this._getThemeAnimationInterval(isInteractiveFrame, themeAnimationMode);
|
|
5251
5536
|
const forceThemeCameraUpdate =
|
|
5252
5537
|
hasNonCameraNavigationForcedUpdate === true ||
|
|
5253
5538
|
zoomEndedThisFrame === true ||
|
|
@@ -5255,10 +5540,15 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
5255
5540
|
cameraEndedThisFrame === true ||
|
|
5256
5541
|
resizeEndedThisFrame === true ||
|
|
5257
5542
|
this._forceThemeAnimationFrame === true;
|
|
5543
|
+
const themeAnimationInterval = this._getThemeAnimationInterval(isInteractiveFrame, themeAnimationMode);
|
|
5544
|
+
const effectiveThemeAnimationInterval =
|
|
5545
|
+
isPureCss3dCameraMotionFrame === true && forceThemeCameraUpdate !== true
|
|
5546
|
+
? Math.max(themeAnimationInterval, CAMERA_MOTION_WEBGL_FRAME_INTERVAL)
|
|
5547
|
+
: themeAnimationInterval;
|
|
5258
5548
|
const shouldCheckThemeAnimation =
|
|
5259
5549
|
forceThemeCameraUpdate ||
|
|
5260
|
-
|
|
5261
|
-
(this.frameCount %
|
|
5550
|
+
effectiveThemeAnimationInterval <= 1 ||
|
|
5551
|
+
(this.frameCount % effectiveThemeAnimationInterval === 0);
|
|
5262
5552
|
|
|
5263
5553
|
if (shouldCheckThemeAnimation) {
|
|
5264
5554
|
const themeRunner = window.MindMapThemes?.runAnimationIfNeeded;
|
|
@@ -5458,7 +5748,7 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
5458
5748
|
const shouldDeferFloatingUiDuringMotion =
|
|
5459
5749
|
(this.isPanning === true || this.isZooming === true || isCameraMoving === true) &&
|
|
5460
5750
|
!isNodeInteracting &&
|
|
5461
|
-
!
|
|
5751
|
+
!hasNonCameraNavigationForcedUpdate &&
|
|
5462
5752
|
!hasOverlayFocus &&
|
|
5463
5753
|
!this.isWindowResizing;
|
|
5464
5754
|
if (isMenuOverlayUiEnabled && window.MindMapMenuManager && shouldDeferFloatingUiDuringMotion !== true) {
|
|
@@ -830,7 +830,11 @@
|
|
|
830
830
|
body.is-zooming .css3d-resolution-wrapper,
|
|
831
831
|
body.is-panning .css3d-resolution-wrapper,
|
|
832
832
|
body.mindcanvas-is-moving .css3d-resolution-wrapper,
|
|
833
|
-
body.mindcanvas-is-dense .css3d-resolution-wrapper
|
|
833
|
+
body.mindcanvas-is-dense .css3d-resolution-wrapper,
|
|
834
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper,
|
|
835
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper,
|
|
836
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper,
|
|
837
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .css3d-resolution-wrapper {
|
|
834
838
|
transition: none !important;
|
|
835
839
|
-webkit-transition: none !important;
|
|
836
840
|
filter: none !important;
|
|
@@ -844,7 +848,15 @@
|
|
|
844
848
|
body.is-zooming .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
845
849
|
body.is-panning .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
846
850
|
body.mindcanvas-is-moving .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
847
|
-
body.mindcanvas-is-dense .css3d-resolution-wrapper [id^="css3d-node-"]
|
|
851
|
+
body.mindcanvas-is-dense .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
852
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper .css3d-dynamic-node,
|
|
853
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper .css3d-dynamic-node,
|
|
854
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper .css3d-dynamic-node,
|
|
855
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .css3d-resolution-wrapper .css3d-dynamic-node,
|
|
856
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
857
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
858
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper [id^="css3d-node-"],
|
|
859
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .css3d-resolution-wrapper [id^="css3d-node-"] {
|
|
848
860
|
box-shadow: none !important;
|
|
849
861
|
filter: none !important;
|
|
850
862
|
-webkit-filter: none !important;
|
|
@@ -858,6 +870,12 @@
|
|
|
858
870
|
body.is-zooming .embed-card *,
|
|
859
871
|
body.is-zooming .embed-action,
|
|
860
872
|
body.is-zooming .embed-play-button,
|
|
873
|
+
#css3d-dom-wrapper.is-zooming .embed-content iframe,
|
|
874
|
+
#css3d-dom-wrapper.is-zooming .embed-iframe-host iframe,
|
|
875
|
+
#css3d-dom-wrapper.is-zooming .embed-card,
|
|
876
|
+
#css3d-dom-wrapper.is-zooming .embed-card *,
|
|
877
|
+
#css3d-dom-wrapper.is-zooming .embed-action,
|
|
878
|
+
#css3d-dom-wrapper.is-zooming .embed-play-button,
|
|
861
879
|
body.is-panning .embed-content iframe,
|
|
862
880
|
body.is-panning .embed-iframe-host iframe,
|
|
863
881
|
body.is-panning .embed-card,
|
|
@@ -876,6 +894,12 @@
|
|
|
876
894
|
body.mindcanvas-is-moving .embed-card *,
|
|
877
895
|
body.mindcanvas-is-moving .embed-action,
|
|
878
896
|
body.mindcanvas-is-moving .embed-play-button,
|
|
897
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .embed-content iframe,
|
|
898
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .embed-iframe-host iframe,
|
|
899
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .embed-card,
|
|
900
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .embed-card *,
|
|
901
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .embed-action,
|
|
902
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .embed-play-button,
|
|
879
903
|
.is-dragging .embed-content iframe,
|
|
880
904
|
.is-dragging .embed-iframe-host iframe,
|
|
881
905
|
.is-dragging .embed-card,
|
|
@@ -908,12 +932,16 @@
|
|
|
908
932
|
|
|
909
933
|
body.is-zooming .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
|
|
910
934
|
body.is-zooming .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
|
|
935
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
|
|
936
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
|
|
911
937
|
body.is-panning .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
|
|
912
938
|
body.is-panning .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
|
|
913
939
|
body.is-node-dragging .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
|
|
914
940
|
body.is-node-dragging .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
|
|
915
941
|
body.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
|
|
916
942
|
body.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
|
|
943
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
|
|
944
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
|
|
917
945
|
.is-dragging .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
|
|
918
946
|
.is-dragging .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host iframe,
|
|
919
947
|
.is-panning .css3d-resolution-wrapper.node-type-embed .embed-content[data-iframe-interacting="true"] .embed-iframe-host,
|
|
@@ -928,7 +956,15 @@
|
|
|
928
956
|
body.is-zooming .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
|
|
929
957
|
body.is-panning .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
|
|
930
958
|
body.mindcanvas-is-moving .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
|
|
931
|
-
body.mindcanvas-is-dense .css3d-resolution-wrapper .map-node-memo__agent-console-panel
|
|
959
|
+
body.mindcanvas-is-dense .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
|
|
960
|
+
#css3d-dom-wrapper.is-zooming .ai-loading-row.ai-loading-row-media,
|
|
961
|
+
#css3d-dom-wrapper.is-panning .ai-loading-row.ai-loading-row-media,
|
|
962
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .ai-loading-row.ai-loading-row-media,
|
|
963
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .ai-loading-row.ai-loading-row-media,
|
|
964
|
+
#css3d-dom-wrapper.is-zooming .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
|
|
965
|
+
#css3d-dom-wrapper.is-panning .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
|
|
966
|
+
#css3d-dom-wrapper.mindcanvas-is-moving .css3d-resolution-wrapper .map-node-memo__agent-console-panel,
|
|
967
|
+
#css3d-dom-wrapper.mindcanvas-is-dense .css3d-resolution-wrapper .map-node-memo__agent-console-panel {
|
|
932
968
|
box-shadow: none !important;
|
|
933
969
|
backdrop-filter: none !important;
|
|
934
970
|
-webkit-backdrop-filter: none !important;
|
|
@@ -25,11 +25,14 @@ window.MindMapInteractions = (function () {
|
|
|
25
25
|
|
|
26
26
|
function isBrowserSelectionLocked() {
|
|
27
27
|
const body = document?.body;
|
|
28
|
+
const css3dWrapper = document?.getElementById?.('css3d-dom-wrapper');
|
|
28
29
|
return browserSelectionLockReasons.size > 0 ||
|
|
29
30
|
body?.classList?.contains?.(BROWSER_SELECTION_LOCK_CLASS) === true ||
|
|
30
31
|
body?.classList?.contains?.('is-node-dragging') === true ||
|
|
31
32
|
body?.classList?.contains?.('is-panning') === true ||
|
|
32
|
-
body?.classList?.contains?.('is-zooming') === true
|
|
33
|
+
body?.classList?.contains?.('is-zooming') === true ||
|
|
34
|
+
css3dWrapper?.classList?.contains?.('is-panning') === true ||
|
|
35
|
+
css3dWrapper?.classList?.contains?.('is-zooming') === true;
|
|
33
36
|
}
|
|
34
37
|
|
|
35
38
|
function handleBrowserSelectStart(event) {
|
|
@@ -103,14 +106,16 @@ window.MindMapInteractions = (function () {
|
|
|
103
106
|
clearModuleTimer(module, '_zoomMotionChromeTimer');
|
|
104
107
|
module._zoomMotionChromeTimer = setTimeout(() => {
|
|
105
108
|
module._zoomMotionChromeTimer = null;
|
|
109
|
+
const targetElement = module?.cssRenderer?.domElement || document.body;
|
|
106
110
|
if (module.isZooming === true) {
|
|
107
|
-
|
|
111
|
+
targetElement.classList.add('is-zooming');
|
|
108
112
|
}
|
|
109
113
|
}, MOTION_DOM_FANOUT_DELAY_MS);
|
|
110
114
|
}
|
|
111
115
|
|
|
112
116
|
function clearZoomMotionChrome(module) {
|
|
113
117
|
clearModuleTimer(module, '_zoomMotionChromeTimer');
|
|
118
|
+
module?.cssRenderer?.domElement?.classList?.remove?.('is-zooming');
|
|
114
119
|
document?.body?.classList?.remove?.('is-zooming');
|
|
115
120
|
}
|
|
116
121
|
|
|
@@ -545,6 +550,10 @@ window.MindMapInteractions = (function () {
|
|
|
545
550
|
Number(module._panLiveRefreshForceFrames || 0),
|
|
546
551
|
PAN_LIVE_REFRESH_FORCE_FRAMES
|
|
547
552
|
);
|
|
553
|
+
module._cameraNavigationForceFrames = Math.max(
|
|
554
|
+
Number(module._cameraNavigationForceFrames || 0),
|
|
555
|
+
PAN_LIVE_REFRESH_FORCE_FRAMES
|
|
556
|
+
);
|
|
548
557
|
}
|
|
549
558
|
|
|
550
559
|
function isEditableElement(element) {
|
|
@@ -6173,12 +6182,12 @@ window.MindMapInteractions = (function () {
|
|
|
6173
6182
|
const panFactor = TRACKPAD_PAN_SENSITIVITY * module.camera.position.z;
|
|
6174
6183
|
module.targetX += normalizedDeltaX * panFactor;
|
|
6175
6184
|
module.targetY -= normalizedDeltaY * panFactor;
|
|
6176
|
-
|
|
6185
|
+
const panInputAt = performance.now();
|
|
6186
|
+
module._lastPanInputAt = panInputAt;
|
|
6177
6187
|
module._forceUpdateFrames = Math.max(module._forceUpdateFrames || 0, 2);
|
|
6178
6188
|
module._cameraNavigationForceFrames = Math.max(module._cameraNavigationForceFrames || 0, 2);
|
|
6179
|
-
module._deferPassiveOverlayRefresh =
|
|
6180
|
-
module.
|
|
6181
|
-
window.MindMapTextOverlayV2?.invalidateView?.(module);
|
|
6189
|
+
module._deferPassiveOverlayRefresh = true;
|
|
6190
|
+
module._cameraNavigationOverlayInputTime = panInputAt;
|
|
6182
6191
|
|
|
6183
6192
|
if (module.isSelecting) {
|
|
6184
6193
|
updateSelectionBox(module);
|
package/wwwroot/_framework/{MindExecution.Core.21gc0645uz.dll → MindExecution.Core.c9wgwsw9z6.dll}
RENAMED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"mainAssemblyName": "MindExecution.Web",
|
|
3
3
|
"resources": {
|
|
4
|
-
"hash": "sha256-
|
|
4
|
+
"hash": "sha256-C14SRmNCNlcZMo3O4WOxEp+F4umSN9ZKYxynTWkcAwc=",
|
|
5
5
|
"fingerprinting": {
|
|
6
6
|
"Google.Protobuf.9h59ukbel7.dll": "Google.Protobuf.dll",
|
|
7
7
|
"Markdig.d1j7v41cl1.dll": "Markdig.dll",
|
|
@@ -123,15 +123,15 @@
|
|
|
123
123
|
"System.brmz7yk5qh.dll": "System.dll",
|
|
124
124
|
"netstandard.yvr3prsx0x.dll": "netstandard.dll",
|
|
125
125
|
"System.Private.CoreLib.c1dbswx1b2.dll": "System.Private.CoreLib.dll",
|
|
126
|
-
"MindExecution.Core.
|
|
126
|
+
"MindExecution.Core.c9wgwsw9z6.dll": "MindExecution.Core.dll",
|
|
127
127
|
"MindExecution.Kernel.n80deqs1y7.dll": "MindExecution.Kernel.dll",
|
|
128
128
|
"MindExecution.Plugins.Admin.29mytzdaun.dll": "MindExecution.Plugins.Admin.dll",
|
|
129
|
-
"MindExecution.Plugins.Business.
|
|
129
|
+
"MindExecution.Plugins.Business.g8txk1zzic.dll": "MindExecution.Plugins.Business.dll",
|
|
130
130
|
"MindExecution.Plugins.Concept.u9kzsgf64o.dll": "MindExecution.Plugins.Concept.dll",
|
|
131
131
|
"MindExecution.Plugins.Directory.k4hx7g84qs.dll": "MindExecution.Plugins.Directory.dll",
|
|
132
132
|
"MindExecution.Plugins.PlanMaster.kibqg6rvqh.dll": "MindExecution.Plugins.PlanMaster.dll",
|
|
133
133
|
"MindExecution.Plugins.YouTube.089r64n2hv.dll": "MindExecution.Plugins.YouTube.dll",
|
|
134
|
-
"MindExecution.Shared.
|
|
134
|
+
"MindExecution.Shared.tbutfszqeu.dll": "MindExecution.Shared.dll",
|
|
135
135
|
"MindExecution.Web.7axuoygrwi.dll": "MindExecution.Web.dll",
|
|
136
136
|
"dotnet.js": "dotnet.js",
|
|
137
137
|
"dotnet.native.qc8g39g30v.js": "dotnet.native.js",
|
|
@@ -278,12 +278,12 @@
|
|
|
278
278
|
"System.Xml.XDocument.sn51jas17n.dll": "sha256-GNI2kFgFmPTwzuzwUn8gxK+AzGLUWRJFdg9JzIbrybQ=",
|
|
279
279
|
"System.brmz7yk5qh.dll": "sha256-CfM2miyj1KHApFmqMdLYWio3S/jrdON2pW9Xr2nTwlo=",
|
|
280
280
|
"netstandard.yvr3prsx0x.dll": "sha256-EksNn8Luo4bOWqJ6X7dIe9qG9oOqwOVzjH2xYyMNi+E=",
|
|
281
|
-
"MindExecution.Core.
|
|
281
|
+
"MindExecution.Core.c9wgwsw9z6.dll": "sha256-sKjYj7JohRjgfg3dzKO5QZcmLGIJsWao1ASfKpZyRWI=",
|
|
282
282
|
"MindExecution.Kernel.n80deqs1y7.dll": "sha256-d7gGGpxiQNphs0at1uO1fAmYe28MFNVgGTEqxoM2uws=",
|
|
283
|
-
"MindExecution.Plugins.Business.
|
|
283
|
+
"MindExecution.Plugins.Business.g8txk1zzic.dll": "sha256-QDrnNfNT+7lpSbU0r6gYDGL8EhI3+4eYCrR1YR6uveE=",
|
|
284
284
|
"MindExecution.Plugins.Concept.u9kzsgf64o.dll": "sha256-Yp38m6zHe8EBxtm480N4LfcHRpzFZRhYpr1RsCgnlK8=",
|
|
285
285
|
"MindExecution.Plugins.PlanMaster.kibqg6rvqh.dll": "sha256-NOtEHR8Y0rO8BguFvD1soa8jfB4YVQFydten0SzqBEg=",
|
|
286
|
-
"MindExecution.Shared.
|
|
286
|
+
"MindExecution.Shared.tbutfszqeu.dll": "sha256-yU33PJ6codEvzqv4qz/ix86PHZtrImjrPJ74h0wWDBw=",
|
|
287
287
|
"MindExecution.Web.7axuoygrwi.dll": "sha256-/6NQ8z9E7ixNwgYD71eh6M6YCGzctKodTWcZNJcNF8E="
|
|
288
288
|
},
|
|
289
289
|
"lazyAssembly": {
|
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=
|
|
11
|
-
<link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=
|
|
10
|
+
<link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260619-ua-immediate-camera-v629" />
|
|
11
|
+
<link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260619-ua-immediate-camera-v629" />
|
|
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 = '
|
|
582
|
+
const scriptVersion = '20260619-ua-immediate-camera-v629';
|
|
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": "GRo5dM0O",
|
|
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
|
|
45
|
+
"hash": "sha256-+g9Cfs6qqYnJ6Ouz/Ngv/mH55lhd3LWKBAgpI6GT0Rg=",
|
|
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
|
|
81
|
+
"hash": "sha256-/fQ1wjxp+3O+Y/gkYr4QbG+6sFXWj4lMsMQDqVFHA6o=",
|
|
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-
|
|
89
|
+
"hash": "sha256-a4cxuoxBYXD4EO2qz0M/MCAawyYuvTK05c9hMfe9gP4=",
|
|
90
90
|
"url": "_content/MindExecution.Shared/js/mind-map-css3d-manager.js"
|
|
91
91
|
},
|
|
92
92
|
{
|
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
"url": "_content/MindExecution.Shared/js/mind-map-glow-shader.js"
|
|
107
107
|
},
|
|
108
108
|
{
|
|
109
|
-
"hash": "sha256-
|
|
109
|
+
"hash": "sha256-i64OpPX8Poyxx3C/2x7I2hpEZg07Bxx3Ao/t2gnQSkg=",
|
|
110
110
|
"url": "_content/MindExecution.Shared/js/mind-map-interactions.js"
|
|
111
111
|
},
|
|
112
112
|
{
|
|
@@ -410,8 +410,8 @@
|
|
|
410
410
|
"url": "_framework/MimeMapping.og9ys58ylm.dll"
|
|
411
411
|
},
|
|
412
412
|
{
|
|
413
|
-
"hash": "sha256-
|
|
414
|
-
"url": "_framework/MindExecution.Core.
|
|
413
|
+
"hash": "sha256-sKjYj7JohRjgfg3dzKO5QZcmLGIJsWao1ASfKpZyRWI=",
|
|
414
|
+
"url": "_framework/MindExecution.Core.c9wgwsw9z6.dll"
|
|
415
415
|
},
|
|
416
416
|
{
|
|
417
417
|
"hash": "sha256-d7gGGpxiQNphs0at1uO1fAmYe28MFNVgGTEqxoM2uws=",
|
|
@@ -422,8 +422,8 @@
|
|
|
422
422
|
"url": "_framework/MindExecution.Plugins.Admin.29mytzdaun.dll"
|
|
423
423
|
},
|
|
424
424
|
{
|
|
425
|
-
"hash": "sha256-
|
|
426
|
-
"url": "_framework/MindExecution.Plugins.Business.
|
|
425
|
+
"hash": "sha256-QDrnNfNT+7lpSbU0r6gYDGL8EhI3+4eYCrR1YR6uveE=",
|
|
426
|
+
"url": "_framework/MindExecution.Plugins.Business.g8txk1zzic.dll"
|
|
427
427
|
},
|
|
428
428
|
{
|
|
429
429
|
"hash": "sha256-Yp38m6zHe8EBxtm480N4LfcHRpzFZRhYpr1RsCgnlK8=",
|
|
@@ -442,8 +442,8 @@
|
|
|
442
442
|
"url": "_framework/MindExecution.Plugins.YouTube.089r64n2hv.dll"
|
|
443
443
|
},
|
|
444
444
|
{
|
|
445
|
-
"hash": "sha256
|
|
446
|
-
"url": "_framework/MindExecution.Shared.
|
|
445
|
+
"hash": "sha256-yU33PJ6codEvzqv4qz/ix86PHZtrImjrPJ74h0wWDBw=",
|
|
446
|
+
"url": "_framework/MindExecution.Shared.tbutfszqeu.dll"
|
|
447
447
|
},
|
|
448
448
|
{
|
|
449
449
|
"hash": "sha256-/6NQ8z9E7ixNwgYD71eh6M6YCGzctKodTWcZNJcNF8E=",
|
|
@@ -770,7 +770,7 @@
|
|
|
770
770
|
"url": "_framework/Websocket.Client.vapounvmnl.dll"
|
|
771
771
|
},
|
|
772
772
|
{
|
|
773
|
-
"hash": "sha256-
|
|
773
|
+
"hash": "sha256-CWwdnr0to821v5Uk88QkwDGDEwfwdQBNvxX05RdN/nw=",
|
|
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-
|
|
837
|
+
"hash": "sha256-z/upearyd7I6/RhUu2IdGYCxnh8YCG3BC+9mnMAAWbY=",
|
|
838
838
|
"url": "index.html"
|
|
839
839
|
},
|
|
840
840
|
{
|