@mindexec/cli 0.2.474 → 0.2.476
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/electron/source-smoke.mjs +1 -0
- package/package.json +1 -1
- package/remote-fast/osx-arm64/mindexec-remote-fast.dll +0 -0
- package/remote-fast/osx-x64/mindexec-remote-fast.dll +0 -0
- package/remote-fast/win-x64/mindexec-remote-fast.dll +0 -0
- package/wwwroot/_content/MindExecution.Shared/css/mind-map-overrides.css +63 -0
- package/wwwroot/_content/MindExecution.Shared/js/background-themes.js +5 -1
- package/wwwroot/_content/MindExecution.Shared/js/mind-map-core.js +24 -6
- package/wwwroot/_content/MindExecution.Shared/js/mind-map-interactions.js +14 -3
- package/wwwroot/_content/MindExecution.Shared/js/mind-map-nodes.js +3 -18
- package/wwwroot/_content/MindExecution.Shared/js/mind-map-object-manager.js +3 -4
- package/wwwroot/_framework/{MindExecution.Core.p242wvzbdm.dll → MindExecution.Core.cx2pre7qz2.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Kernel.fygh6o7ah1.dll → MindExecution.Kernel.engfih12kr.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Plugins.Admin.slf5qsn9pe.dll → MindExecution.Plugins.Admin.xfunemn9zi.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Plugins.Business.hmmh2iarjz.dll → MindExecution.Plugins.Business.ja94a5ze3i.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Plugins.Concept.mxak1yilgh.dll → MindExecution.Plugins.Concept.3q05vzviqb.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Plugins.Directory.h0k33bgkfw.dll → MindExecution.Plugins.Directory.re4jjs91d1.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Plugins.PlanMaster.ijbnd3xmt7.dll → MindExecution.Plugins.PlanMaster.89etwfquz1.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Plugins.YouTube.aa5i2z7lvo.dll → MindExecution.Plugins.YouTube.aqf4vztjji.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Shared.jk6h3848ht.dll → MindExecution.Shared.9b1rucdxvv.dll} +0 -0
- package/wwwroot/_framework/{MindExecution.Web.s2oqn7b07d.dll → MindExecution.Web.ssp0n0xf1e.dll} +0 -0
- package/wwwroot/_framework/blazor.boot.json +21 -21
- package/wwwroot/index.html +2 -2
- package/wwwroot/service-worker-assets.js +29 -29
- package/wwwroot/service-worker.js +1 -1
|
@@ -15,6 +15,7 @@ const serverSource = fs.readFileSync(path.join(packageRoot, 'server.js'), 'utf8'
|
|
|
15
15
|
|
|
16
16
|
assert.equal(packageJson.build?.appId, 'com.mindexec.desktop', 'Stable desktop appId is required.');
|
|
17
17
|
assert.equal(packageJson.build?.productName, 'MindExec', 'Desktop product name changed unexpectedly.');
|
|
18
|
+
assert.match(mainSource, /title:\s*'MindExec'/, 'The Electron window title must use the MindExec app brand.');
|
|
18
19
|
assert.equal(packageJson.build?.extraMetadata?.main, 'electron/main.cjs', 'Packaged Electron entry point is missing.');
|
|
19
20
|
assert.equal(packageJson.build?.asar, false, 'Bundled runtime executables require an unpacked app directory.');
|
|
20
21
|
assert.ok(packageJson.files?.includes('electron/'), 'The npm package must include the Electron source contract.');
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -3772,3 +3772,66 @@ html body .css3d-resolution-wrapper:not(.lod-low) > .map-node-code:focus-within
|
|
|
3772
3772
|
0 0 18px 0 rgba(var(--mind-node-selection-glow-rgb), 0.24),
|
|
3773
3773
|
0 0 32px 0 rgba(var(--mind-node-selection-glow-soft-rgb), 0.16) !important;
|
|
3774
3774
|
}
|
|
3775
|
+
|
|
3776
|
+
/* Canonical selected-node chrome.
|
|
3777
|
+
The wrapper owns one neutral edge/glow for every node type so memo themes,
|
|
3778
|
+
media-safe surfaces, and ordinary cards cannot show different selection
|
|
3779
|
+
signatures. The direct node keeps its layout but drops selection-specific
|
|
3780
|
+
inner borders, outlines, filters, and shadows. */
|
|
3781
|
+
html body .css3d-resolution-wrapper[data-node-id]:not(.lod-low).selected,
|
|
3782
|
+
html body .css3d-resolution-wrapper[data-node-id]:not(.lod-low).selected-media-safe {
|
|
3783
|
+
outline: 2px solid var(--mind-node-selected-hard-edge, #2563eb) !important;
|
|
3784
|
+
outline-offset: 0 !important;
|
|
3785
|
+
-webkit-box-shadow:
|
|
3786
|
+
0 0 0 1px rgba(var(--mind-node-selection-edge-rgb, 37, 99, 235), 0.1),
|
|
3787
|
+
0 0 16px rgba(var(--mind-node-selection-glow-rgb, 59, 130, 246), 0.22),
|
|
3788
|
+
0 14px 30px rgba(15, 23, 42, 0.16) !important;
|
|
3789
|
+
box-shadow:
|
|
3790
|
+
0 0 0 1px rgba(var(--mind-node-selection-edge-rgb, 37, 99, 235), 0.1),
|
|
3791
|
+
0 0 16px rgba(var(--mind-node-selection-glow-rgb, 59, 130, 246), 0.22),
|
|
3792
|
+
0 14px 30px rgba(15, 23, 42, 0.16) !important;
|
|
3793
|
+
-webkit-filter: none !important;
|
|
3794
|
+
filter: none !important;
|
|
3795
|
+
}
|
|
3796
|
+
|
|
3797
|
+
html body .css3d-resolution-wrapper[data-node-id]:not(.lod-low).selected > [data-node-id],
|
|
3798
|
+
html body .css3d-resolution-wrapper[data-node-id]:not(.lod-low).selected-media-safe > [data-node-id] {
|
|
3799
|
+
border-color: transparent !important;
|
|
3800
|
+
outline: none !important;
|
|
3801
|
+
outline-offset: 0 !important;
|
|
3802
|
+
-webkit-box-shadow: none !important;
|
|
3803
|
+
box-shadow: none !important;
|
|
3804
|
+
-webkit-filter: none !important;
|
|
3805
|
+
filter: none !important;
|
|
3806
|
+
}
|
|
3807
|
+
|
|
3808
|
+
/* First-character native selection safety.
|
|
3809
|
+
Text begins 14px inside dynamic cards, while the normal 18px start-edge
|
|
3810
|
+
resize zones overlap that first glyph. Narrow only the top/left zones while
|
|
3811
|
+
native selection or an editor owns the node. Bottom-right resize keeps its
|
|
3812
|
+
full hit area. */
|
|
3813
|
+
html body .css3d-resolution-wrapper.is-text-selection-owner > .css3d-resize-hit-layer > .css3d-resize-handle.w,
|
|
3814
|
+
html body .css3d-resolution-wrapper:has(textarea:focus) > .css3d-resize-hit-layer > .css3d-resize-handle.w,
|
|
3815
|
+
html body .css3d-resolution-wrapper:has([contenteditable="true"]:focus) > .css3d-resize-hit-layer > .css3d-resize-handle.w {
|
|
3816
|
+
width: 8px !important;
|
|
3817
|
+
}
|
|
3818
|
+
|
|
3819
|
+
html body .css3d-resolution-wrapper.is-text-selection-owner > .css3d-resize-hit-layer > .css3d-resize-handle.n,
|
|
3820
|
+
html body .css3d-resolution-wrapper:has(textarea:focus) > .css3d-resize-hit-layer > .css3d-resize-handle.n,
|
|
3821
|
+
html body .css3d-resolution-wrapper:has([contenteditable="true"]:focus) > .css3d-resize-hit-layer > .css3d-resize-handle.n {
|
|
3822
|
+
height: 8px !important;
|
|
3823
|
+
}
|
|
3824
|
+
|
|
3825
|
+
html body .css3d-resolution-wrapper.is-text-selection-owner > .css3d-resize-hit-layer > .css3d-resize-handle.nw,
|
|
3826
|
+
html body .css3d-resolution-wrapper:has(textarea:focus) > .css3d-resize-hit-layer > .css3d-resize-handle.nw,
|
|
3827
|
+
html body .css3d-resolution-wrapper:has([contenteditable="true"]:focus) > .css3d-resize-hit-layer > .css3d-resize-handle.nw {
|
|
3828
|
+
width: 8px !important;
|
|
3829
|
+
height: 8px !important;
|
|
3830
|
+
}
|
|
3831
|
+
|
|
3832
|
+
html body .css3d-resolution-wrapper:has(textarea:focus) textarea:focus,
|
|
3833
|
+
html body .css3d-resolution-wrapper:has(input:focus) input:focus,
|
|
3834
|
+
html body .css3d-resolution-wrapper:has([contenteditable="true"]:focus) [contenteditable="true"]:focus {
|
|
3835
|
+
user-select: text !important;
|
|
3836
|
+
-webkit-user-select: text !important;
|
|
3837
|
+
}
|
|
@@ -987,7 +987,11 @@
|
|
|
987
987
|
options.isCameraMoving === true ||
|
|
988
988
|
options.isPanning === true ||
|
|
989
989
|
options.isZooming === true;
|
|
990
|
-
const
|
|
990
|
+
const targetFps = Math.max(0, Number(options.targetFps || 0) || 0);
|
|
991
|
+
const steadySimulationStepCount = targetFps > 0
|
|
992
|
+
? Math.max(1, Math.round(32 / targetFps))
|
|
993
|
+
: simulationStepsPerTick;
|
|
994
|
+
const simulationStepCount = isInteractiveMotionFrame ? 1 : steadySimulationStepCount;
|
|
991
995
|
|
|
992
996
|
if (simulationReady) {
|
|
993
997
|
const previousTarget = renderer.getRenderTarget ? renderer.getRenderTarget() : null;
|
|
@@ -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 = '20260822-particle-idle-30fps-v871';
|
|
9
9
|
const CanvasPhase = Object.freeze({
|
|
10
10
|
Booting: 'booting',
|
|
11
11
|
BoardFileLoading: 'board-file-loading',
|
|
@@ -89,6 +89,11 @@
|
|
|
89
89
|
const CURSOR_WORLD_THICKNESS = 4;
|
|
90
90
|
const RENDER_DEBUG_METRICS_CACHE_MS = 250;
|
|
91
91
|
const ANIMATION_IDLE_LOW_FPS_DELAY_MS = 500;
|
|
92
|
+
// Delayed wakes are followed by requestAnimationFrame. On a 60Hz display,
|
|
93
|
+
// a full 33ms timer plus that rAF produces a measured 50ms/20fps cadence.
|
|
94
|
+
// Wake one display interval early so the final presentation lands near
|
|
95
|
+
// 33ms/30fps while remaining aligned to the browser's paint cycle.
|
|
96
|
+
const PARTICLE_THEME_IDLE_WAKE_DELAY_MS = 1000 / 60;
|
|
92
97
|
const WHEEL_ZOOM_BURST_QUIET_FRAME_LIMIT = 12;
|
|
93
98
|
const HOME_CAMERA_NORMAL_MID_Z = 8250;
|
|
94
99
|
const HOME_DENSE_CLUSTER_MIN_CELL_SIZE = 1200;
|
|
@@ -6279,6 +6284,11 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
6279
6284
|
this.lodRenderer?.isInLODMode === true &&
|
|
6280
6285
|
(frameStart - Number(this._lastLodPanVisibilityRefreshAt || 0)) >= LOD_PAN_VISIBILITY_REFRESH_INTERVAL_MS;
|
|
6281
6286
|
const shouldUseAnimation60Fps = this.useAnimation60Fps === true && !isBoardLoading;
|
|
6287
|
+
const isGpuParticleTheme = this.currentThemeName === 'Space3D' || this.currentThemeName === 'SpiritFlow';
|
|
6288
|
+
const shouldUseParticleAnimation30Fps =
|
|
6289
|
+
isGpuParticleTheme === true &&
|
|
6290
|
+
shouldUseAnimation60Fps !== true &&
|
|
6291
|
+
!isBoardLoading;
|
|
6282
6292
|
const shouldUseAnimationLowFpsFrame =
|
|
6283
6293
|
shouldUseAnimation60Fps !== true &&
|
|
6284
6294
|
isIdleCadenceFrame === true &&
|
|
@@ -6944,7 +6954,6 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
6944
6954
|
|
|
6945
6955
|
// 6. Theme Animation
|
|
6946
6956
|
// ----------------------------------------------------------------
|
|
6947
|
-
const isGpuParticleTheme = this.currentThemeName === 'Space3D' || this.currentThemeName === 'SpiritFlow';
|
|
6948
6957
|
const shouldUseMotionGridThemeSubstitute =
|
|
6949
6958
|
false &&
|
|
6950
6959
|
isCameraNavigationOnlyInteractiveFrame === true &&
|
|
@@ -6983,12 +6992,15 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
6983
6992
|
const themeRunner = window.MindMapThemes?.runAnimationIfNeeded;
|
|
6984
6993
|
if (typeof themeRunner === 'function') {
|
|
6985
6994
|
themeAnimatedThisFrame = themeRunner(this.currentThemeName, this.currentThemeObject, this.camera, {
|
|
6986
|
-
|
|
6995
|
+
force: forceThemeCameraUpdate,
|
|
6987
6996
|
isCameraMoving: isCameraMoving === true,
|
|
6988
6997
|
isPanning: this.isPanning === true,
|
|
6989
6998
|
isZooming: this.isZooming === true,
|
|
6990
6999
|
isResizing: this.isWindowResizing === true,
|
|
6991
|
-
isInteractiveFrame: isInteractiveFrame === true
|
|
7000
|
+
isInteractiveFrame: isInteractiveFrame === true,
|
|
7001
|
+
targetFps: shouldUseAnimation60Fps === true
|
|
7002
|
+
? 60
|
|
7003
|
+
: (shouldUseParticleAnimation30Fps === true ? 30 : null)
|
|
6992
7004
|
});
|
|
6993
7005
|
} else {
|
|
6994
7006
|
this.currentThemeObject.animate(this.camera);
|
|
@@ -7566,7 +7578,11 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
7566
7578
|
shouldSyncTextOverlays !== true &&
|
|
7567
7579
|
hasPendingAnimationWakeWork !== true;
|
|
7568
7580
|
if (shouldParkIdleAnimationLoop) {
|
|
7569
|
-
const idleAnimationDelayMs = this.useAnimation60Fps === true
|
|
7581
|
+
const idleAnimationDelayMs = this.useAnimation60Fps === true
|
|
7582
|
+
? 0
|
|
7583
|
+
: (shouldUseParticleAnimation30Fps === true
|
|
7584
|
+
? PARTICLE_THEME_IDLE_WAKE_DELAY_MS
|
|
7585
|
+
: ANIMATION_IDLE_LOW_FPS_DELAY_MS);
|
|
7570
7586
|
this._lastAnimationLoopDelayMs = idleAnimationDelayMs;
|
|
7571
7587
|
this._animationLoopExecuting = false;
|
|
7572
7588
|
this._scheduleAnimationLoop(loop, idleAnimationDelayMs);
|
|
@@ -7579,7 +7595,9 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
|
|
|
7579
7595
|
shouldUpdate !== true &&
|
|
7580
7596
|
hasPendingAnimationWakeWork !== true;
|
|
7581
7597
|
if (shouldContinueLowFpsIdleCadence) {
|
|
7582
|
-
nextAnimationLoopDelayMs =
|
|
7598
|
+
nextAnimationLoopDelayMs = shouldUseParticleAnimation30Fps === true
|
|
7599
|
+
? PARTICLE_THEME_IDLE_WAKE_DELAY_MS
|
|
7600
|
+
: ANIMATION_IDLE_LOW_FPS_DELAY_MS;
|
|
7583
7601
|
this._lastAnimationLoopDelayMs = nextAnimationLoopDelayMs;
|
|
7584
7602
|
this._animationLoopExecuting = false;
|
|
7585
7603
|
this._scheduleAnimationLoop(loop, nextAnimationLoopDelayMs);
|
|
@@ -3094,6 +3094,7 @@ window.MindMapInteractions = (function () {
|
|
|
3094
3094
|
|
|
3095
3095
|
// [Changed] Reduce handle logic size from 24 to 16 to match visual CSS and WebGL mesh
|
|
3096
3096
|
const RESIZE_HANDLE_SIZE = 16;
|
|
3097
|
+
const TEXT_SELECTION_START_EDGE_RESIZE_HANDLE_SIZE = 8;
|
|
3097
3098
|
const NODE_HOVER_CURSOR = 'grab';
|
|
3098
3099
|
|
|
3099
3100
|
function getResizeCursorForCorner(corner) {
|
|
@@ -3263,9 +3264,19 @@ window.MindMapInteractions = (function () {
|
|
|
3263
3264
|
}
|
|
3264
3265
|
// ▲▲▲ [Fix] ▲▲▲
|
|
3265
3266
|
|
|
3266
|
-
const
|
|
3267
|
-
|
|
3268
|
-
|
|
3267
|
+
const hasFocusedNativeTextEditor = !!nodeElement.querySelector?.(
|
|
3268
|
+
'textarea:focus, input:focus, [contenteditable="true"]:focus'
|
|
3269
|
+
);
|
|
3270
|
+
const ownsNativeTextSelection =
|
|
3271
|
+
nodeElement.classList?.contains?.('is-text-selection-owner') === true ||
|
|
3272
|
+
hasFocusedNativeTextEditor;
|
|
3273
|
+
const startEdgeHandleSize = ownsNativeTextSelection
|
|
3274
|
+
? TEXT_SELECTION_START_EDGE_RESIZE_HANDLE_SIZE
|
|
3275
|
+
: handleSize;
|
|
3276
|
+
|
|
3277
|
+
const inLeft = relX < startEdgeHandleSize;
|
|
3278
|
+
const inRight = relX > (nodeWidth - handleSize);
|
|
3279
|
+
const inTop = relY < startEdgeHandleSize;
|
|
3269
3280
|
const inBottom = relY > (nodeHeight - handleSize);
|
|
3270
3281
|
|
|
3271
3282
|
// ★ 내부 영역 (핸들 아님)
|
|
@@ -22,19 +22,6 @@
|
|
|
22
22
|
}
|
|
23
23
|
// ▲▲▲ [Perf] ▲▲▲
|
|
24
24
|
|
|
25
|
-
const MEMO_SELECTION_THEMES = {
|
|
26
|
-
coral: { border: 0xf7b08d, accent: 0xff8052 },
|
|
27
|
-
amber: { border: 0xf4d06f, accent: 0xf59e0b },
|
|
28
|
-
sun: { border: 0xe7d668, accent: 0xca8a04 },
|
|
29
|
-
sage: { border: 0xbed79f, accent: 0x65a30d },
|
|
30
|
-
mint: { border: 0x8fd8c1, accent: 0x10b981 },
|
|
31
|
-
sky: { border: 0x9dc7f7, accent: 0x3b82f6 },
|
|
32
|
-
indigo: { border: 0xbcc2ff, accent: 0x6366f1 },
|
|
33
|
-
violet: { border: 0xd6b8ff, accent: 0x8b5cf6 },
|
|
34
|
-
rose: { border: 0xf5b2c2, accent: 0xf43f5e },
|
|
35
|
-
gray: { border: 0xd1d5db, accent: 0x6b7280 },
|
|
36
|
-
slate: { border: 0xcbd5e1, accent: 0x64748b }
|
|
37
|
-
};
|
|
38
25
|
const NODE_TEXT_SELECTION_SELECTORS = '.node-response, .code-body, .text-content, .markdown-body, .csv-table-scroll, .csv-table-cell, textarea, .map-node-memo__title, .map-node-memo__body, .map-node-memo__body-view, .map-node-memo__body-view *';
|
|
39
26
|
const NODE_INTERACTIVE_CONTENT_SELECTORS = `${NODE_TEXT_SELECTION_SELECTORS}, .embed-content, .embed-card, .embed-card *, .embed-action, .embed-play-button, iframe, .map-node-memo__icon-button, .map-node-memo__icon-option, .map-node-memo__icon-popover, .map-node-memo__agent-action, .map-node-memo__agent-result-link, .map-node-memo__agent-plan-panel, .map-node-memo__agent-plan-body, .map-node-memo__agent-plan-body *, .map-node-memo__agent-console-panel, .map-node-memo__agent-console-body, .map-node-memo__agent-console-body *, .map-node-memo__agent-console-resize, .map-node-memo__agent-console-resize *`;
|
|
40
27
|
const MEMO_EDIT_ONLY_SELECTORS = '.map-node-memo__title, .map-node-memo__body, .map-node-memo__icon-button, .map-node-memo__icon-option, .map-node-memo__icon-popover';
|
|
@@ -285,14 +272,12 @@
|
|
|
285
272
|
}
|
|
286
273
|
|
|
287
274
|
function getSelectionBorderColorHex(nodeModel, isSelected) {
|
|
275
|
+
if (isSelected) return 0x2563eb;
|
|
288
276
|
if (String(nodeModel?.contentType ?? nodeModel?.ContentType ?? '').toLowerCase() !== 'memo') {
|
|
289
|
-
return
|
|
277
|
+
return 0x374151;
|
|
290
278
|
}
|
|
291
279
|
|
|
292
|
-
|
|
293
|
-
const key = String(getNodeMetadata(nodeModel)?.memoColor || fallbackKey).toLowerCase();
|
|
294
|
-
const theme = MEMO_SELECTION_THEMES[key] || MEMO_SELECTION_THEMES[fallbackKey];
|
|
295
|
-
return isSelected ? theme.accent : theme.border;
|
|
280
|
+
return window.MindMapObjectManager?.getMemoWebglTheme?.(nodeModel)?.border ?? 0xf7b08d;
|
|
296
281
|
}
|
|
297
282
|
|
|
298
283
|
function cloneNodeMetadata(nodeModel) {
|
|
@@ -152,14 +152,12 @@
|
|
|
152
152
|
const HANDLE_SIZE = 16; // Changed from 36 to 16 to match CSS handles and prevent ghost touches
|
|
153
153
|
const CORNER_RADIUS = 20;
|
|
154
154
|
const DEFAULT_OUTLINE_COLOR = 0x374151;
|
|
155
|
-
const SELECTED_OUTLINE_COLOR =
|
|
155
|
+
const SELECTED_OUTLINE_COLOR = 0x2563eb;
|
|
156
156
|
const memoTheme = String(nodeModel?.contentType ?? '').toLowerCase() === 'memo' ? getMemoWebglTheme(nodeModel) : null;
|
|
157
157
|
const defaultBorderHex = memoTheme ? memoTheme.border : DEFAULT_OUTLINE_COLOR;
|
|
158
158
|
const bodyFillHex = memoTheme ? memoTheme.fill : 0xfefefe;
|
|
159
159
|
const isSelected = module.multiSelectedNodeIds.has(nodeModel.id);
|
|
160
|
-
const selectedBorderHex =
|
|
161
|
-
? SELECTED_OUTLINE_COLOR
|
|
162
|
-
: (memoTheme ? memoTheme.accent : SELECTED_OUTLINE_COLOR);
|
|
160
|
+
const selectedBorderHex = SELECTED_OUTLINE_COLOR;
|
|
163
161
|
const outlineColor = isSelected ? selectedBorderHex : defaultBorderHex;
|
|
164
162
|
const OUTLINE_SHRINK = 2;
|
|
165
163
|
const OUTLINE_RADIUS = Math.max(1, CORNER_RADIUS - 1);
|
|
@@ -482,6 +480,7 @@
|
|
|
482
480
|
window.MindMapObjectManager = {
|
|
483
481
|
createOrUpdateCanvasTextureNode: createOrUpdateCanvasTextureNode,
|
|
484
482
|
createDeferredNodeShell: createDeferredNodeShell,
|
|
483
|
+
getMemoWebglTheme: getMemoWebglTheme,
|
|
485
484
|
createRoundedRectFilledGeometry: createRoundedRectFilledGeometry // For scrollbar resize in pipeline
|
|
486
485
|
};
|
|
487
486
|
|
package/wwwroot/_framework/{MindExecution.Core.p242wvzbdm.dll → MindExecution.Core.cx2pre7qz2.dll}
RENAMED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/wwwroot/_framework/{MindExecution.Web.s2oqn7b07d.dll → MindExecution.Web.ssp0n0xf1e.dll}
RENAMED
|
Binary file
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"mainAssemblyName": "MindExecution.Web",
|
|
3
3
|
"resources": {
|
|
4
|
-
"hash": "sha256-
|
|
4
|
+
"hash": "sha256-KJFNFtka3NkB1eImFq2tHfpv8lxpOgkY+x3aRLN1WQg=",
|
|
5
5
|
"fingerprinting": {
|
|
6
6
|
"Google.Protobuf.9h59ukbel7.dll": "Google.Protobuf.dll",
|
|
7
7
|
"Markdig.d1j7v41cl1.dll": "Markdig.dll",
|
|
@@ -122,16 +122,16 @@
|
|
|
122
122
|
"System.brmz7yk5qh.dll": "System.dll",
|
|
123
123
|
"netstandard.b50t77veor.dll": "netstandard.dll",
|
|
124
124
|
"System.Private.CoreLib.wflwsce1yq.dll": "System.Private.CoreLib.dll",
|
|
125
|
-
"MindExecution.Core.
|
|
126
|
-
"MindExecution.Kernel.
|
|
127
|
-
"MindExecution.Plugins.Admin.
|
|
128
|
-
"MindExecution.Plugins.Business.
|
|
129
|
-
"MindExecution.Plugins.Concept.
|
|
130
|
-
"MindExecution.Plugins.Directory.
|
|
131
|
-
"MindExecution.Plugins.PlanMaster.
|
|
132
|
-
"MindExecution.Plugins.YouTube.
|
|
133
|
-
"MindExecution.Shared.
|
|
134
|
-
"MindExecution.Web.
|
|
125
|
+
"MindExecution.Core.cx2pre7qz2.dll": "MindExecution.Core.dll",
|
|
126
|
+
"MindExecution.Kernel.engfih12kr.dll": "MindExecution.Kernel.dll",
|
|
127
|
+
"MindExecution.Plugins.Admin.xfunemn9zi.dll": "MindExecution.Plugins.Admin.dll",
|
|
128
|
+
"MindExecution.Plugins.Business.ja94a5ze3i.dll": "MindExecution.Plugins.Business.dll",
|
|
129
|
+
"MindExecution.Plugins.Concept.3q05vzviqb.dll": "MindExecution.Plugins.Concept.dll",
|
|
130
|
+
"MindExecution.Plugins.Directory.re4jjs91d1.dll": "MindExecution.Plugins.Directory.dll",
|
|
131
|
+
"MindExecution.Plugins.PlanMaster.89etwfquz1.dll": "MindExecution.Plugins.PlanMaster.dll",
|
|
132
|
+
"MindExecution.Plugins.YouTube.aqf4vztjji.dll": "MindExecution.Plugins.YouTube.dll",
|
|
133
|
+
"MindExecution.Shared.9b1rucdxvv.dll": "MindExecution.Shared.dll",
|
|
134
|
+
"MindExecution.Web.ssp0n0xf1e.dll": "MindExecution.Web.dll",
|
|
135
135
|
"dotnet.native.566r55w3xu.js": "dotnet.native.js",
|
|
136
136
|
"dotnet.native.x6q5aixc38.wasm": "dotnet.native.wasm",
|
|
137
137
|
"dotnet.js": "dotnet.js",
|
|
@@ -276,18 +276,18 @@
|
|
|
276
276
|
"System.Xml.XDocument.sn51jas17n.dll": "sha256-GNI2kFgFmPTwzuzwUn8gxK+AzGLUWRJFdg9JzIbrybQ=",
|
|
277
277
|
"System.brmz7yk5qh.dll": "sha256-CfM2miyj1KHApFmqMdLYWio3S/jrdON2pW9Xr2nTwlo=",
|
|
278
278
|
"netstandard.b50t77veor.dll": "sha256-//jQGOXjb8ET8WtXgOJrAxLx6E7zDJ5RjRRutwkvmxo=",
|
|
279
|
-
"MindExecution.Core.
|
|
280
|
-
"MindExecution.Kernel.
|
|
281
|
-
"MindExecution.Plugins.Business.
|
|
282
|
-
"MindExecution.Plugins.Concept.
|
|
283
|
-
"MindExecution.Plugins.PlanMaster.
|
|
284
|
-
"MindExecution.Shared.
|
|
285
|
-
"MindExecution.Web.
|
|
279
|
+
"MindExecution.Core.cx2pre7qz2.dll": "sha256-8EFO/TFkWPKbzUSyzzQIeKT0fk71BPeGO3g/dvd7CZ0=",
|
|
280
|
+
"MindExecution.Kernel.engfih12kr.dll": "sha256-9jfnnT82jALXP26g0LHu8YjZzTh89UizyEX3wI5qUmg=",
|
|
281
|
+
"MindExecution.Plugins.Business.ja94a5ze3i.dll": "sha256-9cmlPKva+jrkETDmhTjEHSM+nszmwAtPIp4G+r+rGUg=",
|
|
282
|
+
"MindExecution.Plugins.Concept.3q05vzviqb.dll": "sha256-6+0r+jjw4jZ1Agxqqsf1TReVQlpuT6DNbYqkBj05Lzg=",
|
|
283
|
+
"MindExecution.Plugins.PlanMaster.89etwfquz1.dll": "sha256-lDatg4Vdq8m5Vx6D59AbK2xgum/kX+BOYpP9PrsDo04=",
|
|
284
|
+
"MindExecution.Shared.9b1rucdxvv.dll": "sha256-myKnzVHRh2/FxULDWFV9yjDJo6fya9ResEBr55VJGWA=",
|
|
285
|
+
"MindExecution.Web.ssp0n0xf1e.dll": "sha256-ZDaCfRaCps+ABQqwNbjgu9pxQ73Nv3IdFCZxaILfp6Q="
|
|
286
286
|
},
|
|
287
287
|
"lazyAssembly": {
|
|
288
|
-
"MindExecution.Plugins.Admin.
|
|
289
|
-
"MindExecution.Plugins.Directory.
|
|
290
|
-
"MindExecution.Plugins.YouTube.
|
|
288
|
+
"MindExecution.Plugins.Admin.xfunemn9zi.dll": "sha256-3Y/3h1JaubYdkbknLZQg5Tbg0oq6u1vSap2Sxf+cUkQ=",
|
|
289
|
+
"MindExecution.Plugins.Directory.re4jjs91d1.dll": "sha256-E1C1OEOE50l/Gk2iZR4Er1XhuebJ4fAt5CJK/vNrCAQ=",
|
|
290
|
+
"MindExecution.Plugins.YouTube.aqf4vztjji.dll": "sha256-XlyPzONOki6JuUOiazObfQP2Cnh29HpqtN4HGYrG/eU="
|
|
291
291
|
}
|
|
292
292
|
},
|
|
293
293
|
"cacheBootResources": true,
|
package/wwwroot/index.html
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
<link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png?v=20260815-app-icon-v2" />
|
|
13
13
|
<link rel="manifest" href="manifest.webmanifest?v=20260815-app-icon-v2" />
|
|
14
14
|
<link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260629-ai-task-flow-v863" />
|
|
15
|
-
<link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=
|
|
15
|
+
<link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260822-selection-unified-v857" />
|
|
16
16
|
<!-- ??좎뜦堉??Font Awesome (local) ??좎뜦堉??-->
|
|
17
17
|
<link rel="stylesheet" href="_content/MindExecution.Shared/lib/font-awesome/css/all.min.css" />
|
|
18
18
|
<!-- ??좎뜦堉??-->
|
|
@@ -614,7 +614,7 @@
|
|
|
614
614
|
}
|
|
615
615
|
|
|
616
616
|
const base = '_content/MindExecution.Shared/js/';
|
|
617
|
-
const scriptVersion = '20260822-
|
|
617
|
+
const scriptVersion = '20260822-particle-30fps-v982';
|
|
618
618
|
const scriptUrl = (script) => `${base}${script}?v=${scriptVersion}`;
|
|
619
619
|
console.log(`[Script Loader] Shared JS version: ${scriptVersion}`);
|
|
620
620
|
const criticalScripts = [
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
self.assetsManifest = {
|
|
2
|
-
"version": "
|
|
2
|
+
"version": "HPm7rkFu",
|
|
3
3
|
"assets": [
|
|
4
4
|
{
|
|
5
5
|
"hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
|
|
@@ -42,7 +42,7 @@ self.assetsManifest = {
|
|
|
42
42
|
"url": "_content/MindExecution.Shared/css/app.css"
|
|
43
43
|
},
|
|
44
44
|
{
|
|
45
|
-
"hash": "sha256
|
|
45
|
+
"hash": "sha256-/cMlL4AEpvBdXc/STLk0dU8CdumDaf3Zjs4y6WnNlkk=",
|
|
46
46
|
"url": "_content/MindExecution.Shared/css/mind-map-overrides.css"
|
|
47
47
|
},
|
|
48
48
|
{
|
|
@@ -58,7 +58,7 @@ self.assetsManifest = {
|
|
|
58
58
|
"url": "_content/MindExecution.Shared/js/agent-visualization.js"
|
|
59
59
|
},
|
|
60
60
|
{
|
|
61
|
-
"hash": "sha256-
|
|
61
|
+
"hash": "sha256-N//7qFaxU/FjNZjzH3rfo+U6vTHZb7BXhx51HSNICoU=",
|
|
62
62
|
"url": "_content/MindExecution.Shared/js/background-themes.js"
|
|
63
63
|
},
|
|
64
64
|
{
|
|
@@ -90,7 +90,7 @@ self.assetsManifest = {
|
|
|
90
90
|
"url": "_content/MindExecution.Shared/js/mind-map-board-render-ownership.js"
|
|
91
91
|
},
|
|
92
92
|
{
|
|
93
|
-
"hash": "sha256-
|
|
93
|
+
"hash": "sha256-4pOmo9eR52ndvYD21w2oJ+H20sGk6evm6LgmJH3s9RI=",
|
|
94
94
|
"url": "_content/MindExecution.Shared/js/mind-map-core.js"
|
|
95
95
|
},
|
|
96
96
|
{
|
|
@@ -126,7 +126,7 @@ self.assetsManifest = {
|
|
|
126
126
|
"url": "_content/MindExecution.Shared/js/mind-map-image-policy.js"
|
|
127
127
|
},
|
|
128
128
|
{
|
|
129
|
-
"hash": "sha256-
|
|
129
|
+
"hash": "sha256-MNC1OM1PiIW3yCLtMScPNDgweZbm5WWwB4e61VefC/s=",
|
|
130
130
|
"url": "_content/MindExecution.Shared/js/mind-map-interactions.js"
|
|
131
131
|
},
|
|
132
132
|
{
|
|
@@ -158,7 +158,7 @@ self.assetsManifest = {
|
|
|
158
158
|
"url": "_content/MindExecution.Shared/js/mind-map-node-search-worker.js"
|
|
159
159
|
},
|
|
160
160
|
{
|
|
161
|
-
"hash": "sha256-
|
|
161
|
+
"hash": "sha256-PXsPkLP/90ZPO16kreoeNdxcEty52wTtHS1njbDR1tg=",
|
|
162
162
|
"url": "_content/MindExecution.Shared/js/mind-map-nodes.js"
|
|
163
163
|
},
|
|
164
164
|
{
|
|
@@ -166,7 +166,7 @@ self.assetsManifest = {
|
|
|
166
166
|
"url": "_content/MindExecution.Shared/js/mind-map-normal-boundary-optimizer.js"
|
|
167
167
|
},
|
|
168
168
|
{
|
|
169
|
-
"hash": "sha256-
|
|
169
|
+
"hash": "sha256-Q2QLR8a8JStPEl28svp9uzcQGDJLZ6nowoSJvL2gQ9U=",
|
|
170
170
|
"url": "_content/MindExecution.Shared/js/mind-map-object-manager.js"
|
|
171
171
|
},
|
|
172
172
|
{
|
|
@@ -446,44 +446,44 @@ self.assetsManifest = {
|
|
|
446
446
|
"url": "_framework/MimeMapping.og9ys58ylm.dll"
|
|
447
447
|
},
|
|
448
448
|
{
|
|
449
|
-
"hash": "sha256-
|
|
450
|
-
"url": "_framework/MindExecution.Core.
|
|
449
|
+
"hash": "sha256-8EFO/TFkWPKbzUSyzzQIeKT0fk71BPeGO3g/dvd7CZ0=",
|
|
450
|
+
"url": "_framework/MindExecution.Core.cx2pre7qz2.dll"
|
|
451
451
|
},
|
|
452
452
|
{
|
|
453
|
-
"hash": "sha256-
|
|
454
|
-
"url": "_framework/MindExecution.Kernel.
|
|
453
|
+
"hash": "sha256-9jfnnT82jALXP26g0LHu8YjZzTh89UizyEX3wI5qUmg=",
|
|
454
|
+
"url": "_framework/MindExecution.Kernel.engfih12kr.dll"
|
|
455
455
|
},
|
|
456
456
|
{
|
|
457
|
-
"hash": "sha256-
|
|
458
|
-
"url": "_framework/MindExecution.Plugins.Admin.
|
|
457
|
+
"hash": "sha256-3Y/3h1JaubYdkbknLZQg5Tbg0oq6u1vSap2Sxf+cUkQ=",
|
|
458
|
+
"url": "_framework/MindExecution.Plugins.Admin.xfunemn9zi.dll"
|
|
459
459
|
},
|
|
460
460
|
{
|
|
461
|
-
"hash": "sha256-
|
|
462
|
-
"url": "_framework/MindExecution.Plugins.Business.
|
|
461
|
+
"hash": "sha256-9cmlPKva+jrkETDmhTjEHSM+nszmwAtPIp4G+r+rGUg=",
|
|
462
|
+
"url": "_framework/MindExecution.Plugins.Business.ja94a5ze3i.dll"
|
|
463
463
|
},
|
|
464
464
|
{
|
|
465
|
-
"hash": "sha256-
|
|
466
|
-
"url": "_framework/MindExecution.Plugins.Concept.
|
|
465
|
+
"hash": "sha256-6+0r+jjw4jZ1Agxqqsf1TReVQlpuT6DNbYqkBj05Lzg=",
|
|
466
|
+
"url": "_framework/MindExecution.Plugins.Concept.3q05vzviqb.dll"
|
|
467
467
|
},
|
|
468
468
|
{
|
|
469
|
-
"hash": "sha256-
|
|
470
|
-
"url": "_framework/MindExecution.Plugins.Directory.
|
|
469
|
+
"hash": "sha256-E1C1OEOE50l/Gk2iZR4Er1XhuebJ4fAt5CJK/vNrCAQ=",
|
|
470
|
+
"url": "_framework/MindExecution.Plugins.Directory.re4jjs91d1.dll"
|
|
471
471
|
},
|
|
472
472
|
{
|
|
473
|
-
"hash": "sha256-
|
|
474
|
-
"url": "_framework/MindExecution.Plugins.PlanMaster.
|
|
473
|
+
"hash": "sha256-lDatg4Vdq8m5Vx6D59AbK2xgum/kX+BOYpP9PrsDo04=",
|
|
474
|
+
"url": "_framework/MindExecution.Plugins.PlanMaster.89etwfquz1.dll"
|
|
475
475
|
},
|
|
476
476
|
{
|
|
477
|
-
"hash": "sha256-
|
|
478
|
-
"url": "_framework/MindExecution.Plugins.YouTube.
|
|
477
|
+
"hash": "sha256-XlyPzONOki6JuUOiazObfQP2Cnh29HpqtN4HGYrG/eU=",
|
|
478
|
+
"url": "_framework/MindExecution.Plugins.YouTube.aqf4vztjji.dll"
|
|
479
479
|
},
|
|
480
480
|
{
|
|
481
|
-
"hash": "sha256-
|
|
482
|
-
"url": "_framework/MindExecution.Shared.
|
|
481
|
+
"hash": "sha256-myKnzVHRh2/FxULDWFV9yjDJo6fya9ResEBr55VJGWA=",
|
|
482
|
+
"url": "_framework/MindExecution.Shared.9b1rucdxvv.dll"
|
|
483
483
|
},
|
|
484
484
|
{
|
|
485
|
-
"hash": "sha256-
|
|
486
|
-
"url": "_framework/MindExecution.Web.
|
|
485
|
+
"hash": "sha256-ZDaCfRaCps+ABQqwNbjgu9pxQ73Nv3IdFCZxaILfp6Q=",
|
|
486
|
+
"url": "_framework/MindExecution.Web.ssp0n0xf1e.dll"
|
|
487
487
|
},
|
|
488
488
|
{
|
|
489
489
|
"hash": "sha256-IsZJ91/OW+fHzNqIgEc7Y072ns8z9dGritiSyvR9Wgc=",
|
|
@@ -802,7 +802,7 @@ self.assetsManifest = {
|
|
|
802
802
|
"url": "_framework/Websocket.Client.vapounvmnl.dll"
|
|
803
803
|
},
|
|
804
804
|
{
|
|
805
|
-
"hash": "sha256-
|
|
805
|
+
"hash": "sha256-FJ2gsz9lGPZl29F+ZSruUfQrC5QUJInrPE4cjp4038s=",
|
|
806
806
|
"url": "_framework/blazor.boot.json"
|
|
807
807
|
},
|
|
808
808
|
{
|
|
@@ -878,7 +878,7 @@ self.assetsManifest = {
|
|
|
878
878
|
"url": "icon-512.png"
|
|
879
879
|
},
|
|
880
880
|
{
|
|
881
|
-
"hash": "sha256-
|
|
881
|
+
"hash": "sha256-iS15ehBSXbGhfHEXPokEUpM+j8nq0cE3xDxvFpSfa7A=",
|
|
882
882
|
"url": "index.html"
|
|
883
883
|
},
|
|
884
884
|
{
|