@mindexec/cli 0.2.43 → 0.2.45

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.
@@ -227,6 +227,14 @@ body.is-resizing .css3d-resolution-wrapper {
227
227
  transition: none !important;
228
228
  }
229
229
 
230
+ html.mindcanvas-platform-apple body.is-zooming .css3d-resolution-wrapper.selected,
231
+ html.mindcanvas-platform-apple body.is-panning .css3d-resolution-wrapper.selected,
232
+ html.mindcanvas-platform-apple body.mindcanvas-is-moving .css3d-resolution-wrapper.selected,
233
+ html.mindcanvas-platform-apple body.mindcanvas-is-dense .css3d-resolution-wrapper.selected {
234
+ -webkit-filter: none !important;
235
+ filter: none !important;
236
+ }
237
+
230
238
  body.is-zooming .node-menu-wrapper,
231
239
  body.is-panning .node-menu-wrapper,
232
240
  body.is-zooming .map-node-memo__icon-popover,
@@ -1102,6 +1110,17 @@ body.is-resizing .css3d-resolution-wrapper.node-type-embed.selected {
1102
1110
  filter: saturate(1.08) !important;
1103
1111
  }
1104
1112
 
1113
+ html.mindcanvas-platform-apple .css3d-resolution-wrapper.selected,
1114
+ html.mindcanvas-platform-apple .css3d-resolution-wrapper.selection-style-agent.selected,
1115
+ html.mindcanvas-platform-apple .css3d-resolution-wrapper.node-type-note.selected,
1116
+ html.mindcanvas-platform-apple .css3d-resolution-wrapper.node-type-image.selected,
1117
+ html.mindcanvas-platform-apple .css3d-resolution-wrapper.node-type-video.selected,
1118
+ html.mindcanvas-platform-apple .css3d-resolution-wrapper.node-type-embed.selected,
1119
+ html.mindcanvas-platform-apple .css3d-resolution-wrapper.is-automation-relation-related:not(.selected) {
1120
+ -webkit-filter: none !important;
1121
+ filter: none !important;
1122
+ }
1123
+
1105
1124
  .css3d-resolution-wrapper.node-type-image {
1106
1125
  -webkit-box-shadow:
1107
1126
  0 0 6px rgba(15, 23, 42, 0.25),
@@ -32,6 +32,27 @@
32
32
  const REMOTE_FLEET_DISPLAY_NAME = 'Multi Desktop Monitor';
33
33
  const REMOTE_FLEET_LEGACY_DISPLAY_NAME = 'Remote Fleet Monitor';
34
34
  const _cssVideoProxyStateByVideo = new WeakMap();
35
+
36
+ function syncMindCanvasPlatformRenderClasses() {
37
+ try {
38
+ if (typeof document === 'undefined') return;
39
+ const nav = typeof navigator === 'object' ? navigator : null;
40
+ const uaDataPlatform = String(nav?.userAgentData?.platform || '');
41
+ const platform = String(nav?.platform || '');
42
+ const userAgent = String(nav?.userAgent || '');
43
+ const maxTouchPoints = Number(nav?.maxTouchPoints || 0);
44
+ const platformSignature = `${uaDataPlatform} ${platform} ${userAgent}`;
45
+ const isApplePlatform =
46
+ /\b(Mac|iPhone|iPad|iPod)\b/i.test(platformSignature) ||
47
+ (/Macintosh/i.test(userAgent) && maxTouchPoints > 1);
48
+
49
+ document.documentElement.classList.toggle('mindcanvas-platform-apple', isApplePlatform);
50
+ } catch {
51
+ // Platform hints are only a compositor workaround; ignore detection failures.
52
+ }
53
+ }
54
+
55
+ syncMindCanvasPlatformRenderClasses();
35
56
  // ▲▲▲ [Perf] ▲▲▲
36
57
 
37
58
  // ▼▼▼ [New] 기본 마크다운 스타일 주입 ▼▼▼
@@ -8453,6 +8474,12 @@
8453
8474
  let _businessAutomationPinDelegationBound = false;
8454
8475
  let _businessAutomationConnectionDraft = null;
8455
8476
  let _businessAutomationSelectedEdgeId = '';
8477
+ const BUSINESS_AUTOMATION_RELATION_CLASSES = [
8478
+ 'is-automation-relation-anchor',
8479
+ 'is-automation-relation-related',
8480
+ 'is-automation-relation-upstream',
8481
+ 'is-automation-relation-downstream'
8482
+ ];
8456
8483
 
8457
8484
  function ensureBusinessAutomationPinDelegation() {
8458
8485
  if (_businessAutomationPinDelegationBound || typeof document === 'undefined') {
@@ -8953,6 +8980,181 @@
8953
8980
  return edges;
8954
8981
  }
8955
8982
 
8983
+ function createEmptyBusinessAutomationSelectionContext(anchorNodeId = '') {
8984
+ return {
8985
+ anchorNodeId: String(anchorNodeId || '').trim(),
8986
+ edgeIds: new Set(),
8987
+ relatedNodeIds: new Set(),
8988
+ upstreamNodeIds: new Set(),
8989
+ downstreamNodeIds: new Set(),
8990
+ hasRelation: false,
8991
+ key: ''
8992
+ };
8993
+ }
8994
+
8995
+ function getSingleBusinessAutomationSelectionId(module) {
8996
+ const selectedId = String(module?.selectedNodeIdJs || '').trim();
8997
+ if (!selectedId) {
8998
+ return '';
8999
+ }
9000
+
9001
+ const multiIds = module?.multiSelectedNodeIds instanceof Set
9002
+ ? Array.from(module.multiSelectedNodeIds)
9003
+ .map(id => String(id || '').trim())
9004
+ .filter(Boolean)
9005
+ : [];
9006
+ const uniqueMultiIds = Array.from(new Set(multiIds));
9007
+ if (uniqueMultiIds.length > 1) {
9008
+ return '';
9009
+ }
9010
+
9011
+ if (uniqueMultiIds.length === 1 && uniqueMultiIds[0] !== selectedId) {
9012
+ return '';
9013
+ }
9014
+
9015
+ return selectedId;
9016
+ }
9017
+
9018
+ function isBusinessAutomationRelationHighlightEligible(module, nodeId) {
9019
+ const entry = module?.nodeObjectsById?.get?.(String(nodeId || '').trim()) || null;
9020
+ return isBusinessAutomationNode(entry?.model) || isBusinessAutomationContextSourceNode(entry?.model);
9021
+ }
9022
+
9023
+ function buildBusinessAutomationSelectionContextKey(context) {
9024
+ if (!context?.anchorNodeId || !context.hasRelation) {
9025
+ return '';
9026
+ }
9027
+
9028
+ const edgeIds = Array.from(context.edgeIds || []).sort().join(',');
9029
+ const relatedIds = Array.from(context.relatedNodeIds || []).sort().join(',');
9030
+ const upstreamIds = Array.from(context.upstreamNodeIds || []).sort().join(',');
9031
+ const downstreamIds = Array.from(context.downstreamNodeIds || []).sort().join(',');
9032
+ return [
9033
+ context.anchorNodeId,
9034
+ edgeIds,
9035
+ relatedIds,
9036
+ upstreamIds,
9037
+ downstreamIds
9038
+ ].join('|');
9039
+ }
9040
+
9041
+ function buildBusinessAutomationSelectionContext(module, edges = null) {
9042
+ const selectedId = getSingleBusinessAutomationSelectionId(module);
9043
+ const context = createEmptyBusinessAutomationSelectionContext(selectedId);
9044
+ if (!selectedId || !isBusinessAutomationRelationHighlightEligible(module, selectedId)) {
9045
+ return context;
9046
+ }
9047
+
9048
+ const sourceEdges = Array.isArray(edges) ? edges : collectBusinessAutomationEdges(module);
9049
+ sourceEdges.forEach(edge => {
9050
+ const edgeId = String(edge?.id || '').trim();
9051
+ const sourceNodeId = String(edge?.sourceNodeId || '').trim();
9052
+ const targetNodeId = String(edge?.targetNodeId || '').trim();
9053
+ if (!edgeId || !sourceNodeId || !targetNodeId) {
9054
+ return;
9055
+ }
9056
+
9057
+ if (sourceNodeId === selectedId) {
9058
+ context.edgeIds.add(edgeId);
9059
+ context.relatedNodeIds.add(targetNodeId);
9060
+ context.downstreamNodeIds.add(targetNodeId);
9061
+ return;
9062
+ }
9063
+
9064
+ if (targetNodeId === selectedId) {
9065
+ context.edgeIds.add(edgeId);
9066
+ context.relatedNodeIds.add(sourceNodeId);
9067
+ context.upstreamNodeIds.add(sourceNodeId);
9068
+ }
9069
+ });
9070
+
9071
+ context.hasRelation = context.edgeIds.size > 0 || context.relatedNodeIds.size > 0;
9072
+ context.key = buildBusinessAutomationSelectionContextKey(context);
9073
+ return context;
9074
+ }
9075
+
9076
+ function getBusinessAutomationRelationDomTargets(module, nodeId) {
9077
+ const normalizedId = String(nodeId || '').trim();
9078
+ const targets = [];
9079
+ if (!normalizedId) {
9080
+ return targets;
9081
+ }
9082
+
9083
+ const entry = module?.nodeObjectsById?.get?.(normalizedId) || null;
9084
+ const wrapper = entry?.cssObject?.element || null;
9085
+ if (wrapper?.classList) {
9086
+ targets.push(wrapper);
9087
+ const inner = wrapper.querySelector?.(
9088
+ '.map-node-automation, .map-node-automation-context-source, .map-node, .map-node-memo, .map-node-template-card'
9089
+ ) || null;
9090
+ if (inner?.classList) {
9091
+ targets.push(inner);
9092
+ }
9093
+ }
9094
+
9095
+ return Array.from(new Set(targets));
9096
+ }
9097
+
9098
+ function clearBusinessAutomationRelationClasses(module) {
9099
+ const nodes = module?.nodeObjectsById;
9100
+ if (nodes?.forEach) {
9101
+ nodes.forEach((entry, nodeId) => {
9102
+ getBusinessAutomationRelationDomTargets(module, nodeId)
9103
+ .forEach(element => element.classList.remove(...BUSINESS_AUTOMATION_RELATION_CLASSES));
9104
+ });
9105
+ return;
9106
+ }
9107
+
9108
+ module?.container?.querySelectorAll?.(
9109
+ BUSINESS_AUTOMATION_RELATION_CLASSES.map(className => `.${className}`).join(',')
9110
+ )?.forEach(element => element.classList.remove(...BUSINESS_AUTOMATION_RELATION_CLASSES));
9111
+ }
9112
+
9113
+ function applyBusinessAutomationRelationClasses(module, context) {
9114
+ clearBusinessAutomationRelationClasses(module);
9115
+ if (!context?.anchorNodeId || !context.hasRelation) {
9116
+ return;
9117
+ }
9118
+
9119
+ getBusinessAutomationRelationDomTargets(module, context.anchorNodeId)
9120
+ .forEach(element => element.classList.add('is-automation-relation-anchor'));
9121
+
9122
+ context.relatedNodeIds.forEach(nodeId => {
9123
+ getBusinessAutomationRelationDomTargets(module, nodeId)
9124
+ .forEach(element => element.classList.add('is-automation-relation-related'));
9125
+ });
9126
+
9127
+ context.upstreamNodeIds.forEach(nodeId => {
9128
+ getBusinessAutomationRelationDomTargets(module, nodeId)
9129
+ .forEach(element => element.classList.add('is-automation-relation-upstream'));
9130
+ });
9131
+
9132
+ context.downstreamNodeIds.forEach(nodeId => {
9133
+ getBusinessAutomationRelationDomTargets(module, nodeId)
9134
+ .forEach(element => element.classList.add('is-automation-relation-downstream'));
9135
+ });
9136
+ }
9137
+
9138
+ function syncBusinessAutomationSelectionContext(module = _module, options = {}) {
9139
+ if (!module) {
9140
+ return createEmptyBusinessAutomationSelectionContext();
9141
+ }
9142
+
9143
+ const context = buildBusinessAutomationSelectionContext(module, options.edges || null);
9144
+ const previousKey = String(module._businessAutomationSelectionContextKey || '');
9145
+ module._businessAutomationSelectionContext = context;
9146
+ if (options.force === true || previousKey !== context.key) {
9147
+ applyBusinessAutomationRelationClasses(module, context);
9148
+ module._businessAutomationSelectionContextKey = context.key;
9149
+ }
9150
+
9151
+ if (options.scheduleRender !== false) {
9152
+ scheduleBusinessAutomationEdgeRender(module);
9153
+ }
9154
+
9155
+ return context;
9156
+ }
9157
+
8956
9158
  function isBusinessAutomationContextEdge(edge) {
8957
9159
  const targetPinId = String(edge?.targetPinId || edge?.TargetPinId || '').trim().toLowerCase();
8958
9160
  const contract = String(edge?.contract || edge?.Contract || '').trim();
@@ -9634,6 +9836,10 @@
9634
9836
  }
9635
9837
 
9636
9838
  const edges = collectBusinessAutomationEdges(module);
9839
+ const relationContext = syncBusinessAutomationSelectionContext(module, {
9840
+ edges,
9841
+ scheduleRender: false
9842
+ });
9637
9843
  if (_businessAutomationSelectedEdgeId
9638
9844
  && !edges.some(edge => String(edge?.id || '') === _businessAutomationSelectedEdgeId)) {
9639
9845
  _businessAutomationSelectedEdgeId = '';
@@ -9711,6 +9917,7 @@
9711
9917
  : getAutomationPinTheme(sourceType);
9712
9918
  const pathData = buildBusinessAutomationEdgePathData(source, target);
9713
9919
  const isSelected = String(edge.id || '') === _businessAutomationSelectedEdgeId;
9920
+ const isRelationHighlighted = relationContext?.edgeIds?.has?.(String(edge.id || '').trim()) === true;
9714
9921
  const hitPointerEvents = _businessAutomationConnectionDraft ? 'none' : 'stroke';
9715
9922
  const hitPath = createBusinessAutomationSvgElement('path', {
9716
9923
  d: pathData,
@@ -9730,12 +9937,14 @@
9730
9937
 
9731
9938
  const path = createBusinessAutomationSvgElement('path', {
9732
9939
  d: pathData,
9733
- class: `mind-map-business-automation-edge-path${isSelected ? ' is-selected' : ''}`,
9940
+ class: `mind-map-business-automation-edge-path${isSelected ? ' is-selected' : ''}${isRelationHighlighted ? ' is-relation-highlight' : ''}`,
9734
9941
  stroke: theme.edge,
9735
- 'stroke-width': isSelected ? '3.6' : (isContextEdge ? '2.1' : '2.4'),
9736
- opacity: isSelected ? '0.96' : (isContextEdge ? '0.68' : '0.82'),
9942
+ 'stroke-width': isSelected ? '3.6' : (isRelationHighlighted ? (isContextEdge ? '2.8' : '3') : (isContextEdge ? '2.1' : '2.4')),
9943
+ opacity: isSelected ? '0.96' : (isRelationHighlighted ? '0.94' : (isContextEdge ? '0.68' : '0.82')),
9737
9944
  'stroke-dasharray': isContextEdge ? '7 7' : '',
9738
- filter: isSelected ? `drop-shadow(0 0 7px ${theme.edge})` : ''
9945
+ filter: isSelected
9946
+ ? `drop-shadow(0 0 7px ${theme.edge})`
9947
+ : (isRelationHighlighted ? `drop-shadow(0 0 5px ${theme.edge})` : '')
9739
9948
  });
9740
9949
  path.style.pointerEvents = 'none';
9741
9950
  path.dataset.edgeId = edge.id;
@@ -9744,21 +9953,21 @@
9744
9953
  const sourceDot = createBusinessAutomationSvgElement('circle', {
9745
9954
  cx: source.x.toFixed(1),
9746
9955
  cy: source.y.toFixed(1),
9747
- r: isSelected ? '4.2' : '3.2',
9956
+ r: (isSelected || isRelationHighlighted) ? '4.2' : '3.2',
9748
9957
  fill: '#ffffff',
9749
9958
  stroke: theme.edge,
9750
9959
  'stroke-width': '1.8',
9751
- opacity: isContextEdge ? '0.82' : '0.96'
9960
+ opacity: isRelationHighlighted ? '0.96' : (isContextEdge ? '0.82' : '0.96')
9752
9961
  });
9753
9962
  sourceDot.style.pointerEvents = 'none';
9754
9963
  const targetDot = createBusinessAutomationSvgElement('circle', {
9755
9964
  cx: target.x.toFixed(1),
9756
9965
  cy: target.y.toFixed(1),
9757
- r: isSelected ? '4.2' : '3.2',
9966
+ r: (isSelected || isRelationHighlighted) ? '4.2' : '3.2',
9758
9967
  fill: theme.edge,
9759
9968
  stroke: '#ffffff',
9760
9969
  'stroke-width': '1.4',
9761
- opacity: isContextEdge ? '0.82' : '0.96'
9970
+ opacity: isRelationHighlighted ? '0.96' : (isContextEdge ? '0.82' : '0.96')
9762
9971
  });
9763
9972
  targetDot.style.pointerEvents = 'none';
9764
9973
 
@@ -18168,6 +18377,8 @@
18168
18377
  // Allow wrapper to receive clicks
18169
18378
  wrapper.style.pointerEvents = 'auto';
18170
18379
  clonedElement.style.pointerEvents = 'none'; // container itself doesn't need events
18380
+ const isMovableTemplateCard = contentTypeLower === 'templatelauncher'
18381
+ && !isRemoteFleetMonitorNode(nodeModel);
18171
18382
  // Enable pointer events for scrollable content so user can scroll/select text
18172
18383
  const scrollables = clonedElement.querySelectorAll(
18173
18384
  '.node-response, .note-content, .markdown-body, .prose, .note-textarea, textarea, [id^="node-response-"], [id^="node-textarea-"], .code-body, .text-content, .embed-content, .embed-card, .embed-card *, .embed-action, .embed-play-button, .node-prompt-copy-button, .node-prompt-copy-button *, iframe, .map-node-memo__title, .map-node-memo__body, .map-node-memo__icon-button, .map-node-memo__icon-popover, .map-node-memo__icon-option, .map-node-memo__agent-role-select, .map-node-memo__agent-role-select-button, .map-node-memo__agent-role-menu, .map-node-memo__agent-role-option, .map-node-memo__agent-action, .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-resize, .map-node-memo__agent-console-resize *, .map-node-memo__agent-result-link, .map-node-template-card, .map-node-template-card *, [data-template-card-interactive="true"]'
@@ -18186,6 +18397,10 @@
18186
18397
  el.style.userSelect = 'text';
18187
18398
  el.style.webkitUserSelect = 'text';
18188
18399
  el.style.cursor = 'text';
18400
+ } else if (isMovableTemplateCard && el.matches('.map-node-template-card, .map-node-template-card *')) {
18401
+ el.style.userSelect = 'none';
18402
+ el.style.webkitUserSelect = 'none';
18403
+ el.style.cursor = 'grab';
18189
18404
  } else {
18190
18405
  el.style.userSelect = 'text';
18191
18406
  el.style.webkitUserSelect = 'text';
@@ -19037,6 +19252,7 @@
19037
19252
  renderRemoteFleetDeviceForTest: renderRemoteFleetDevice,
19038
19253
  renderBusinessAutomationEdges: renderBusinessAutomationEdges,
19039
19254
  scheduleBusinessAutomationEdgeRender: scheduleBusinessAutomationEdgeRender,
19255
+ syncBusinessAutomationSelectionContext: syncBusinessAutomationSelectionContext,
19040
19256
  hideBusinessAutomationFloatingTooltipForNode: hideBusinessAutomationFloatingTooltipForNode,
19041
19257
  update: update // Export
19042
19258
  };
@@ -675,10 +675,6 @@ window.MindMapInteractions = (function () {
675
675
  return (contentType === 'text' || contentType === 'markdown') && !isAgentNode(target);
676
676
  }
677
677
 
678
- function isTemplateLauncherNode(target) {
679
- return getNodeContentType(target) === 'templatelauncher';
680
- }
681
-
682
678
  function isTemplateCardInteractiveTarget(target) {
683
679
  return !!target?.closest?.('[data-template-card-interactive="true"], .template-card__input, .template-card__textarea, .template-card__select, .template-card__option, .template-card__generate');
684
680
  }
@@ -4605,18 +4601,6 @@ window.MindMapInteractions = (function () {
4605
4601
  }
4606
4602
 
4607
4603
  function startNodeDrag(module, e, nodeId, nodeEntry, dragObject) {
4608
- if (isTemplateLauncherNode(nodeEntry)) {
4609
- e.preventDefault();
4610
- e.stopPropagation();
4611
- finalizeSingleSelection(module, nodeId, {
4612
- notifyBlazor: true,
4613
- bringToFront: true,
4614
- showMenu: true
4615
- });
4616
- module.isShiftClick = false;
4617
- return;
4618
- }
4619
-
4620
4604
  e.preventDefault();
4621
4605
  e.stopPropagation();
4622
4606
 
@@ -3822,6 +3822,7 @@
3822
3822
  });
3823
3823
  module._lastLodSelectionIds = currentIds;
3824
3824
  }
3825
+ window.MindMapCss3DManager?.syncBusinessAutomationSelectionContext?.(module);
3825
3826
  return;
3826
3827
  }
3827
3828
 
@@ -3863,6 +3864,7 @@
3863
3864
  } else {
3864
3865
  lodRenderer._lastAppliedLodSelectionKey = `${primarySelectionId}|${Array.from(multiSelectedIds).sort().join(',')}`;
3865
3866
  }
3867
+ window.MindMapCss3DManager?.syncBusinessAutomationSelectionContext?.(module);
3866
3868
  module._forceUpdateFrames = Math.max(module._forceUpdateFrames || 0, 1);
3867
3869
  }
3868
3870
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "mainAssemblyName": "MindExecution.Web",
3
3
  "resources": {
4
- "hash": "sha256-jXfPV9AYZMlykPHUo794QDvPpBGhbtqzZGV9iYG1x2I=",
4
+ "hash": "sha256-jka0i4EGJ6iC6sOZFGMzWKJ2qqciCFD5pIUmTZ59t9I=",
5
5
  "fingerprinting": {
6
6
  "Google.Protobuf.9h59ukbel7.dll": "Google.Protobuf.dll",
7
7
  "Markdig.d1j7v41cl1.dll": "Markdig.dll",
@@ -127,12 +127,12 @@
127
127
  "MindExecution.Kernel.z56elxihok.dll": "MindExecution.Kernel.dll",
128
128
  "MindExecution.Plugins.Admin.p5cs4ap87v.dll": "MindExecution.Plugins.Admin.dll",
129
129
  "MindExecution.Plugins.Business.s35og5uz44.dll": "MindExecution.Plugins.Business.dll",
130
- "MindExecution.Plugins.Concept.ueuo23qx6f.dll": "MindExecution.Plugins.Concept.dll",
130
+ "MindExecution.Plugins.Concept.j63qelz8rk.dll": "MindExecution.Plugins.Concept.dll",
131
131
  "MindExecution.Plugins.Directory.y74f55e8x3.dll": "MindExecution.Plugins.Directory.dll",
132
- "MindExecution.Plugins.PlanMaster.lhbyievfnk.dll": "MindExecution.Plugins.PlanMaster.dll",
133
- "MindExecution.Plugins.YouTube.y87u77w5nn.dll": "MindExecution.Plugins.YouTube.dll",
134
- "MindExecution.Shared.3kkptsi9lw.dll": "MindExecution.Shared.dll",
135
- "MindExecution.Web.4ddj83yo5w.dll": "MindExecution.Web.dll",
132
+ "MindExecution.Plugins.PlanMaster.8djc50fh8g.dll": "MindExecution.Plugins.PlanMaster.dll",
133
+ "MindExecution.Plugins.YouTube.h6y03asuzq.dll": "MindExecution.Plugins.YouTube.dll",
134
+ "MindExecution.Shared.z07jle70qs.dll": "MindExecution.Shared.dll",
135
+ "MindExecution.Web.gq00wm14q3.dll": "MindExecution.Web.dll",
136
136
  "dotnet.js": "dotnet.js",
137
137
  "dotnet.native.qc8g39g30v.js": "dotnet.native.js",
138
138
  "dotnet.native.boem75ye5i.wasm": "dotnet.native.wasm",
@@ -280,16 +280,16 @@
280
280
  "netstandard.yvr3prsx0x.dll": "sha256-EksNn8Luo4bOWqJ6X7dIe9qG9oOqwOVzjH2xYyMNi+E=",
281
281
  "MindExecution.Core.6rfnfdndxq.dll": "sha256-giL4rreoKsQoQ5gkLusNx7oL3w1l2UH52TYY1KBoIfQ=",
282
282
  "MindExecution.Kernel.z56elxihok.dll": "sha256-STATJelRGcW9SDGgsw6YmQi6tkQje52dy4lyT3QU4qs=",
283
- "MindExecution.Plugins.Concept.ueuo23qx6f.dll": "sha256-9r1Eze1dN+plEEgAtS0IVai8KSWXGIGQ26QFwZORIoo=",
284
- "MindExecution.Plugins.PlanMaster.lhbyievfnk.dll": "sha256-qWha6wYFxlBwSmW+vJEKbN7ejyJNfQ1vrwrRWYZPwwA=",
285
- "MindExecution.Shared.3kkptsi9lw.dll": "sha256-U8F3nPAtdikrJoBmdM1sOTEXB7J96tdm8GAQkfv+/IE=",
286
- "MindExecution.Web.4ddj83yo5w.dll": "sha256-aN41fuZMAQNHAMTr0xw7CCl0gpG5X+E6i3x7m465+tE="
283
+ "MindExecution.Plugins.Concept.j63qelz8rk.dll": "sha256-ZftqLWcODF69nab4DCcdrKLyTbZmu9x1E6UZj95Lwg0=",
284
+ "MindExecution.Plugins.PlanMaster.8djc50fh8g.dll": "sha256-DEK18qiIEbs60obGiRs+Cmr327gBOBqEGpdculGvnpo=",
285
+ "MindExecution.Shared.z07jle70qs.dll": "sha256-rbi/VtbMCVX+T5mPBzy0KWJlu3VI/w5cILfCOhFXb2E=",
286
+ "MindExecution.Web.gq00wm14q3.dll": "sha256-SLQj0JfkJi2Krlha+Mhem6+EG90bv7pMbiQkzs3kxJA="
287
287
  },
288
288
  "lazyAssembly": {
289
289
  "MindExecution.Plugins.Admin.p5cs4ap87v.dll": "sha256-jahiJxaiE8hwMyRcg6rZGo4WBhBGFyAHYhOqlKjawWg=",
290
290
  "MindExecution.Plugins.Business.s35og5uz44.dll": "sha256-KOyk9eC6E/Gyfz2uWucHQmAayMQbShhLTqEymZFleh4=",
291
291
  "MindExecution.Plugins.Directory.y74f55e8x3.dll": "sha256-4gMuhIPLiX31U+jwhDT83rSPqZINONadmW+cvujfq1g=",
292
- "MindExecution.Plugins.YouTube.y87u77w5nn.dll": "sha256-MqPf5zOQVvBAhjkz6H0ZLJzBqgsyedruWWKyYwjvi3Y="
292
+ "MindExecution.Plugins.YouTube.h6y03asuzq.dll": "sha256-CTh0qytJGaYVCK0/3dOK0w8iIqQNYHmSZ5NZJW9nNgA="
293
293
  }
294
294
  },
295
295
  "cacheBootResources": true,
@@ -1,5 +1,5 @@
1
1
  self.assetsManifest = {
2
- "version": "Xfi5hNqc",
2
+ "version": "tIrmi759",
3
3
  "assets": [
4
4
  {
5
5
  "hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
@@ -38,11 +38,11 @@
38
38
  "url": "_content/MindExecution.Shared/css/admin-dashboard.css"
39
39
  },
40
40
  {
41
- "hash": "sha256-dzjc3j3RtOqc6FJikAZowcpishOgwCLWoLJNNDyPUEA=",
41
+ "hash": "sha256-nHPgHOJ41KrOimOUx38PS5DOTCfNmV/nMcE3kxw34CQ=",
42
42
  "url": "_content/MindExecution.Shared/css/app.css"
43
43
  },
44
44
  {
45
- "hash": "sha256-BQdCDRJQX7PiT/7AaeT11SXri099O+sl5lQoyjpQ+Q0=",
45
+ "hash": "sha256-bM3TPSd4WDlrAJjzMh91OLXSpkFX5/3qUs84piTAEKA=",
46
46
  "url": "_content/MindExecution.Shared/css/mind-map-overrides.css"
47
47
  },
48
48
  {
@@ -86,7 +86,7 @@
86
86
  "url": "_content/MindExecution.Shared/js/mind-map-core.js.backup"
87
87
  },
88
88
  {
89
- "hash": "sha256-jrzXaQSlY2BHJW062PzZuylbAEYe02+uQrMQyJt7FJA=",
89
+ "hash": "sha256-I1t1myZd+2qeNcLM4ZSYetN/rCdWG1MtqBW+yKmeDfU=",
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-zIo9kujUdpiJTLKRs9na8FB8c+WqTZr5eo2Bq5QkJhg=",
109
+ "hash": "sha256-nseRIuaG6io+m/7GgaLuIS4srEQZYhVv8SQB2Z9aiF4=",
110
110
  "url": "_content/MindExecution.Shared/js/mind-map-interactions.js"
111
111
  },
112
112
  {
@@ -134,7 +134,7 @@
134
134
  "url": "_content/MindExecution.Shared/js/mind-map-node-search-worker.js"
135
135
  },
136
136
  {
137
- "hash": "sha256-tcCpe0R8MVaT0B7nTN9owN5u6Nv547c0UTMGKnfiXpo=",
137
+ "hash": "sha256-E2IUENogOw5hzGtSFknt06j0env1GvNAc3XcEaTvGdE=",
138
138
  "url": "_content/MindExecution.Shared/js/mind-map-nodes.js"
139
139
  },
140
140
  {
@@ -426,28 +426,28 @@
426
426
  "url": "_framework/MindExecution.Plugins.Business.s35og5uz44.dll"
427
427
  },
428
428
  {
429
- "hash": "sha256-9r1Eze1dN+plEEgAtS0IVai8KSWXGIGQ26QFwZORIoo=",
430
- "url": "_framework/MindExecution.Plugins.Concept.ueuo23qx6f.dll"
429
+ "hash": "sha256-ZftqLWcODF69nab4DCcdrKLyTbZmu9x1E6UZj95Lwg0=",
430
+ "url": "_framework/MindExecution.Plugins.Concept.j63qelz8rk.dll"
431
431
  },
432
432
  {
433
433
  "hash": "sha256-4gMuhIPLiX31U+jwhDT83rSPqZINONadmW+cvujfq1g=",
434
434
  "url": "_framework/MindExecution.Plugins.Directory.y74f55e8x3.dll"
435
435
  },
436
436
  {
437
- "hash": "sha256-qWha6wYFxlBwSmW+vJEKbN7ejyJNfQ1vrwrRWYZPwwA=",
438
- "url": "_framework/MindExecution.Plugins.PlanMaster.lhbyievfnk.dll"
437
+ "hash": "sha256-DEK18qiIEbs60obGiRs+Cmr327gBOBqEGpdculGvnpo=",
438
+ "url": "_framework/MindExecution.Plugins.PlanMaster.8djc50fh8g.dll"
439
439
  },
440
440
  {
441
- "hash": "sha256-MqPf5zOQVvBAhjkz6H0ZLJzBqgsyedruWWKyYwjvi3Y=",
442
- "url": "_framework/MindExecution.Plugins.YouTube.y87u77w5nn.dll"
441
+ "hash": "sha256-CTh0qytJGaYVCK0/3dOK0w8iIqQNYHmSZ5NZJW9nNgA=",
442
+ "url": "_framework/MindExecution.Plugins.YouTube.h6y03asuzq.dll"
443
443
  },
444
444
  {
445
- "hash": "sha256-U8F3nPAtdikrJoBmdM1sOTEXB7J96tdm8GAQkfv+/IE=",
446
- "url": "_framework/MindExecution.Shared.3kkptsi9lw.dll"
445
+ "hash": "sha256-rbi/VtbMCVX+T5mPBzy0KWJlu3VI/w5cILfCOhFXb2E=",
446
+ "url": "_framework/MindExecution.Shared.z07jle70qs.dll"
447
447
  },
448
448
  {
449
- "hash": "sha256-aN41fuZMAQNHAMTr0xw7CCl0gpG5X+E6i3x7m465+tE=",
450
- "url": "_framework/MindExecution.Web.4ddj83yo5w.dll"
449
+ "hash": "sha256-SLQj0JfkJi2Krlha+Mhem6+EG90bv7pMbiQkzs3kxJA=",
450
+ "url": "_framework/MindExecution.Web.gq00wm14q3.dll"
451
451
  },
452
452
  {
453
453
  "hash": "sha256-IsZJ91/OW+fHzNqIgEc7Y072ns8z9dGritiSyvR9Wgc=",
@@ -770,7 +770,7 @@
770
770
  "url": "_framework/Websocket.Client.vapounvmnl.dll"
771
771
  },
772
772
  {
773
- "hash": "sha256-NExJUL4soeLY8eXpSu4TdIix/a0K3jcKlVgy+sbEYls=",
773
+ "hash": "sha256-eLT3oE2JQu/kbNXd/DuHPNKXRyAQELmLJSyKy++j40U=",
774
774
  "url": "_framework/blazor.boot.json"
775
775
  },
776
776
  {
@@ -1,4 +1,4 @@
1
- /* Manifest version: Xfi5hNqc */
1
+ /* Manifest version: tIrmi759 */
2
2
  // Hosted deployments should prefer the network over stale offline caches.
3
3
  // This service worker immediately clears old Blazor offline caches and unregisters itself.
4
4