cloud-ide-element 1.1.101 → 1.1.102
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.
|
@@ -9860,6 +9860,7 @@ class CideEleDataGridComponent {
|
|
|
9860
9860
|
groupedColumns = signal([], ...(ngDevMode ? [{ debugName: "groupedColumns" }] : [])); // Columns to group by
|
|
9861
9861
|
expandedGroups = signal(new Set(), ...(ngDevMode ? [{ debugName: "expandedGroups" }] : [])); // Expanded group keys
|
|
9862
9862
|
hasAutoExpandedGroups = false; // Track if we've auto-expanded groups on initial load
|
|
9863
|
+
pendingExpandedGroupsUpdate = null; // Track pending expanded groups update
|
|
9863
9864
|
// Export menu state
|
|
9864
9865
|
showExportMenu = signal(false, ...(ngDevMode ? [{ debugName: "showExportMenu" }] : [])); // Show/hide export format dropdown
|
|
9865
9866
|
showFilterDropdown = signal(false, ...(ngDevMode ? [{ debugName: "showFilterDropdown" }] : [])); // Show/hide filter dropdown
|
|
@@ -10019,6 +10020,14 @@ class CideEleDataGridComponent {
|
|
|
10019
10020
|
loading: { ...DEFAULT_GRID_CONFIG.loading, ...this.config.loading },
|
|
10020
10021
|
scroll: { ...DEFAULT_GRID_CONFIG.scroll, ...this.config.scroll }
|
|
10021
10022
|
});
|
|
10023
|
+
// Clear grouping if showGroupBy is disabled
|
|
10024
|
+
const columnMenuConfig = this.mergedConfig().columnMenu;
|
|
10025
|
+
if (columnMenuConfig && columnMenuConfig.showGroupBy === false) {
|
|
10026
|
+
if (this.groupedColumns().length > 0) {
|
|
10027
|
+
this.groupedColumns.set([]);
|
|
10028
|
+
this.expandedGroups.set(new Set());
|
|
10029
|
+
}
|
|
10030
|
+
}
|
|
10022
10031
|
}
|
|
10023
10032
|
initializeGrid() {
|
|
10024
10033
|
// Ensure we have valid data
|
|
@@ -10062,6 +10071,16 @@ class CideEleDataGridComponent {
|
|
|
10062
10071
|
* Only groups visible columns (not hidden ones)
|
|
10063
10072
|
*/
|
|
10064
10073
|
initializeDefaultGrouping() {
|
|
10074
|
+
// If grouping is disabled in column menu, clear any existing grouping
|
|
10075
|
+
const columnMenuConfig = this.mergedConfig().columnMenu;
|
|
10076
|
+
if (columnMenuConfig && columnMenuConfig.showGroupBy === false) {
|
|
10077
|
+
// Clear any existing grouping when showGroupBy is disabled
|
|
10078
|
+
if (this.groupedColumns().length > 0) {
|
|
10079
|
+
this.groupedColumns.set([]);
|
|
10080
|
+
this.expandedGroups.set(new Set());
|
|
10081
|
+
}
|
|
10082
|
+
return; // Don't initialize grouping if it's disabled
|
|
10083
|
+
}
|
|
10065
10084
|
// Only initialize if groupedColumns is empty (not already set)
|
|
10066
10085
|
if (this.groupedColumns().length === 0) {
|
|
10067
10086
|
const columns = this.mergedConfig().columns || [];
|
|
@@ -12133,9 +12152,12 @@ class CideEleDataGridComponent {
|
|
|
12133
12152
|
return this.localReorderedData;
|
|
12134
12153
|
}
|
|
12135
12154
|
let data = this.filteredData();
|
|
12136
|
-
//
|
|
12155
|
+
// Check if grouping is disabled in column menu config
|
|
12156
|
+
const columnMenuConfig = this.mergedConfig().columnMenu;
|
|
12157
|
+
const groupingDisabled = columnMenuConfig && columnMenuConfig.showGroupBy === false;
|
|
12158
|
+
// Apply grouping if any columns are grouped and grouping is not disabled
|
|
12137
12159
|
const grouped = this.groupedColumns();
|
|
12138
|
-
if (grouped.length > 0 && !this.serverSidePagination) {
|
|
12160
|
+
if (grouped.length > 0 && !this.serverSidePagination && !groupingDisabled) {
|
|
12139
12161
|
// If tree is enabled, we need to flatten tree first for grouping, then preserve structure
|
|
12140
12162
|
const treeConfig = this.mergedConfig().tree;
|
|
12141
12163
|
if (treeConfig?.enabled) {
|
|
@@ -12311,10 +12333,19 @@ class CideEleDataGridComponent {
|
|
|
12311
12333
|
}
|
|
12312
12334
|
});
|
|
12313
12335
|
// Update expanded groups set if we auto-expanded any
|
|
12336
|
+
// Defer signal update to avoid writing to signals during template rendering
|
|
12314
12337
|
if (shouldAutoExpand && newExpanded.size > expanded.size) {
|
|
12315
|
-
|
|
12338
|
+
// Store the update to apply after rendering
|
|
12339
|
+
this.pendingExpandedGroupsUpdate = newExpanded;
|
|
12316
12340
|
// Mark that we've auto-expanded groups so we don't do it again on subsequent renders
|
|
12317
12341
|
this.hasAutoExpandedGroups = true;
|
|
12342
|
+
// Defer the signal update using queueMicrotask to avoid writing during template rendering
|
|
12343
|
+
queueMicrotask(() => {
|
|
12344
|
+
if (this.pendingExpandedGroupsUpdate) {
|
|
12345
|
+
this.expandedGroups.set(this.pendingExpandedGroupsUpdate);
|
|
12346
|
+
this.pendingExpandedGroupsUpdate = null;
|
|
12347
|
+
}
|
|
12348
|
+
});
|
|
12318
12349
|
}
|
|
12319
12350
|
return result;
|
|
12320
12351
|
}
|
|
@@ -13665,6 +13696,8 @@ class FloatingContainerShortcutsService {
|
|
|
13665
13696
|
key: 'n',
|
|
13666
13697
|
altKey: true,
|
|
13667
13698
|
description: 'Create new floating container',
|
|
13699
|
+
title: 'New Container',
|
|
13700
|
+
category: 'Floating Containers',
|
|
13668
13701
|
action: () => this.openNewContainer(),
|
|
13669
13702
|
preventDefault: true
|
|
13670
13703
|
});
|
|
@@ -13674,6 +13707,8 @@ class FloatingContainerShortcutsService {
|
|
|
13674
13707
|
key: 'p',
|
|
13675
13708
|
altKey: true,
|
|
13676
13709
|
description: 'Focus previous container',
|
|
13710
|
+
title: 'Previous Container',
|
|
13711
|
+
category: 'Floating Containers',
|
|
13677
13712
|
action: () => this.focusPreviousContainer(),
|
|
13678
13713
|
preventDefault: true
|
|
13679
13714
|
});
|
|
@@ -13683,6 +13718,8 @@ class FloatingContainerShortcutsService {
|
|
|
13683
13718
|
key: 'h',
|
|
13684
13719
|
altKey: true,
|
|
13685
13720
|
description: 'Hide all containers',
|
|
13721
|
+
title: 'Hide All Containers',
|
|
13722
|
+
category: 'Floating Containers',
|
|
13686
13723
|
action: () => this.hideAllContainers(),
|
|
13687
13724
|
preventDefault: true
|
|
13688
13725
|
});
|
|
@@ -13692,6 +13729,8 @@ class FloatingContainerShortcutsService {
|
|
|
13692
13729
|
key: 's',
|
|
13693
13730
|
altKey: true,
|
|
13694
13731
|
description: 'Show all containers',
|
|
13732
|
+
title: 'Show All Containers',
|
|
13733
|
+
category: 'Floating Containers',
|
|
13695
13734
|
action: () => this.showAllContainers(),
|
|
13696
13735
|
preventDefault: true
|
|
13697
13736
|
});
|
|
@@ -13701,6 +13740,8 @@ class FloatingContainerShortcutsService {
|
|
|
13701
13740
|
key: 'm',
|
|
13702
13741
|
altKey: true,
|
|
13703
13742
|
description: 'Minimize all containers',
|
|
13743
|
+
title: 'Minimize All Containers',
|
|
13744
|
+
category: 'Floating Containers',
|
|
13704
13745
|
action: () => this.minimizeAllContainers(),
|
|
13705
13746
|
preventDefault: true
|
|
13706
13747
|
});
|
|
@@ -13710,6 +13751,8 @@ class FloatingContainerShortcutsService {
|
|
|
13710
13751
|
key: 'w',
|
|
13711
13752
|
altKey: true,
|
|
13712
13753
|
description: 'Close current container',
|
|
13754
|
+
title: 'Close Current Container',
|
|
13755
|
+
category: 'Floating Containers',
|
|
13713
13756
|
action: () => this.closeCurrentContainer(),
|
|
13714
13757
|
preventDefault: true
|
|
13715
13758
|
});
|
|
@@ -13719,6 +13762,8 @@ class FloatingContainerShortcutsService {
|
|
|
13719
13762
|
key: 'd',
|
|
13720
13763
|
altKey: true,
|
|
13721
13764
|
description: 'Duplicate current container',
|
|
13765
|
+
title: 'Duplicate Container',
|
|
13766
|
+
category: 'Floating Containers',
|
|
13722
13767
|
action: () => this.duplicateCurrentContainer(),
|
|
13723
13768
|
preventDefault: true
|
|
13724
13769
|
});
|
|
@@ -13728,6 +13773,8 @@ class FloatingContainerShortcutsService {
|
|
|
13728
13773
|
key: 't',
|
|
13729
13774
|
altKey: true,
|
|
13730
13775
|
description: 'Toggle container visibility',
|
|
13776
|
+
title: 'Toggle Container Visibility',
|
|
13777
|
+
category: 'Floating Containers',
|
|
13731
13778
|
action: () => this.toggleContainerVisibility(),
|
|
13732
13779
|
preventDefault: true
|
|
13733
13780
|
});
|
|
@@ -13737,6 +13784,8 @@ class FloatingContainerShortcutsService {
|
|
|
13737
13784
|
key: 'o',
|
|
13738
13785
|
altKey: true,
|
|
13739
13786
|
description: 'Open file uploader',
|
|
13787
|
+
title: 'Open File Uploader',
|
|
13788
|
+
category: 'Floating Containers',
|
|
13740
13789
|
action: () => this.openFileUploader(),
|
|
13741
13790
|
preventDefault: true
|
|
13742
13791
|
});
|
|
@@ -13746,6 +13795,8 @@ class FloatingContainerShortcutsService {
|
|
|
13746
13795
|
key: 'r',
|
|
13747
13796
|
altKey: true,
|
|
13748
13797
|
description: 'Open entity rights sharing',
|
|
13798
|
+
title: 'Open Entity Rights',
|
|
13799
|
+
category: 'Floating Containers',
|
|
13749
13800
|
action: () => this.openEntityRightsSharing(),
|
|
13750
13801
|
preventDefault: true
|
|
13751
13802
|
});
|
|
@@ -13761,6 +13812,8 @@ class FloatingContainerShortcutsService {
|
|
|
13761
13812
|
key: i.toString(),
|
|
13762
13813
|
altKey: true,
|
|
13763
13814
|
description: `Focus container ${i}`,
|
|
13815
|
+
title: `Focus Container ${i}`,
|
|
13816
|
+
category: 'Floating Containers',
|
|
13764
13817
|
action: () => this.focusContainerByIndex(i - 1),
|
|
13765
13818
|
preventDefault: true
|
|
13766
13819
|
});
|