@cdmx/wappler_ag_grid 2.0.21 → 2.1.0

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.
Files changed (3) hide show
  1. package/README.md +20 -55
  2. package/dmx-ag-grid.js +16 -12
  3. package/package.json +4 -4
package/README.md CHANGED
@@ -1,65 +1,30 @@
1
1
  #### Developed and Maintained by: Roney Dsilva
2
2
 
3
- **Major Update:** This release upgrades from AG Grid v32.3.7 to v34.1.0, bringing significant performance improvements and exciting new features.
3
+ **Major Update:** This release upgrades AG Grid to v35.1.0, bringing continued performance improvements and new features.
4
4
 
5
- ## 🚀 What's New in v2.0.19
5
+ ## 🚀 What's New in v2.0.23
6
6
 
7
- 1. **🔥 AG Grid v34.1.0** - Latest version with all community features
8
- 2. **⚡ Performance Boost** - Up to 40% bundle size reduction potential
7
+ 1. **🔥 AG Grid v35.1.0** - Latest version with all community features
8
+ 2. **⚡ Smooth Upgrade** - Non-breaking upgrade from v34, all existing configurations continue to work
9
9
  3. **🎨 HTML Tooltips** - Rich HTML tooltip support with JavaScript functions
10
10
  4. **🔧 Enhanced Tooltip System** - Custom tooltip components with automatic HTML detection
11
- 5. **🚫 Suppress Model Update** - New option to prevent automatic reprocessing after update transactions
11
+ 5. **🚫 Suppress Model Update** - Option to prevent automatic reprocessing after update transactions
12
12
 
13
- - **Breaking Changes:** Some configurations may require updates due to AG Grid v33/v34 changes
14
-
15
- ## 🚀 What's New in AG Grid v34.1.0
16
-
17
- ### New Features Available in This Release:
18
-
19
- 1. **✅ Cell Editor Validation** - Built-in validation for all cell editors:
20
- - Automatic constraint checking based on column configuration
21
- - Override defaults with custom validation rules
22
- - Handle invalid values by reverting or blocking changes
23
-
24
- 2. **🎯 Bulk Cell Editing** - Edit multiple cells in a single action:
25
- - Select cells, enter new value, commit with Tab key
26
- - Ideal for updating status of multiple items or overriding null values
27
-
28
- 3. **⚡ Performance Improvements** - Up to 40% bundle size reduction through:
29
- - Modular architecture improvements
30
- - Better tree-shaking capabilities
31
- - Optimized loading times
32
-
33
- 4. **🎨 Enhanced Theming** - New Theming API for:
34
- - Dynamic theme manipulation at runtime
35
- - Better integration with Theme Builder
36
- - Easy customization via theme parameters
37
-
38
- ## 🔄 Migration from v1.x to v2.0
13
+ ## 🔄 Migration from v34 to v35
39
14
 
40
15
  ### Compatibility Notes:
41
- - **Good News:** This upgrade is largely **non-breaking** for existing implementations
16
+ - **Good News:** This upgrade is **non-breaking** for existing implementations
42
17
  - Your existing grids should continue to work without changes
43
- - AG Grid v34 is non-breaking from v33, so most configurations remain the same
18
+ - No deprecated API removals in v35
19
+
20
+ ### What Changed Internally:
21
+ - New automatic overlays for filtering and exporting are now suppressed by default to preserve existing overlay behavior
22
+ - Date/number filter range validation now enforces start < end
44
23
 
45
24
  ### Recommended Steps:
46
- 1. **Update Package:** Simply update to v2.0.2 - no code changes required for basic functionality
25
+ 1. **Update Package:** Simply update to the latest version - no code changes required
47
26
  2. **Test Your Grids:** Verify existing grids work as expected
48
- 3. **Explore New Features:** Gradually enable new v34 features as needed:
49
- - Enable Cell Editor Validation for better data quality
50
- - Try Batch/Bulk editing for improved user experience
51
- - Use the new Filters Tool Panel for better UX
52
- - Implement Tree Data Drag & Drop for hierarchical data
53
-
54
- ### Performance Benefits:
55
- - **Bundle Size:** Potential 20-40% reduction in bundle size
56
- - **Loading Speed:** Faster grid initialization
57
- - **Memory Usage:** Improved memory efficiency
58
-
59
- ### Breaking Changes (Minimal):
60
- - Some very old deprecated APIs (from v31 and earlier) have been removed
61
- - If you customized AG Grid CSS extensively, test your styling
62
- - The new Theming API is now default (but legacy CSS themes still work)
27
+ 3. **Test Exports:** Verify CSV/PDF exports work correctly
63
28
 
64
29
  # AG Grid Module Documentation
65
30
 
@@ -657,7 +622,7 @@ You can also specify left-only conditions, where only the field name is provided
657
622
  - Useful for resetting the grid view or preparing for new filter configurations.
658
623
  - Automatically clears the `filterState` property.
659
624
 
660
- ## 💡 Implementation Examples for v34 Features
625
+ ## 💡 Implementation Examples
661
626
 
662
627
  ### Filter Management Examples
663
628
 
@@ -779,14 +744,14 @@ tree_data_drag_drop: true
779
744
  // ]
780
745
  ```
781
746
 
782
- ## 🔧 Best Practices for v34
747
+ ## 🔧 Best Practices
783
748
 
784
- 1. **Performance:** Start with basic features and gradually enable v34 enhancements
749
+ 1. **Performance:** Start with basic features and gradually enable enhancements
785
750
  2. **Testing:** Test new features in development before production deployment
786
- 3. **Bundle Size:** Monitor bundle size improvements with the new architecture
787
- 4. **User Experience:** Combine multiple v34 features for enhanced workflows:
751
+ 3. **Bundle Size:** Monitor bundle size improvements with the modular architecture
752
+ 4. **User Experience:** Combine multiple features for enhanced workflows:
788
753
  - Use Batch Editing + Validation for better data entry
789
- - Combine New Filters Tool Panel with server-side data
754
+ - Combine Filters Tool Panel with server-side data
790
755
  - Use Tree Data + Drag & Drop for hierarchical management
791
756
 
792
757
  ## License
package/dmx-ag-grid.js CHANGED
@@ -1827,6 +1827,7 @@ dmx.Component('ag-grid', {
1827
1827
  suppressScrollOnNewData: this.props.suppress_scroll_on_new_data,
1828
1828
  columnHoverHighlight: this.props.column_hover_highlight,
1829
1829
  tooltipShowDelay: options.tooltip_show_delay,
1830
+ suppressOverlays: ['noMatchingRows', 'exporting'],
1830
1831
  onFilterModified: function (params) {
1831
1832
  const columnApi = params.api;
1832
1833
  const rowCount = columnApi.getDisplayedRowCount();
@@ -2042,16 +2043,19 @@ dmx.Component('ag-grid', {
2042
2043
  const gridConfig = {
2043
2044
  columnDefs: columnDefs,
2044
2045
  ...gridOptions,
2045
- // Store export configuration for each grid instance
2046
- exportConfig: {
2047
- export_csv_filename: options.export_csv_filename,
2048
- export_pdf_filename: options.export_pdf_filename,
2049
- export_remove_html: options.export_remove_html,
2050
- export_trim_data: options.export_trim_data,
2051
- export_exclude_fields: options.export_exclude_fields,
2052
- export_exclude_hidden_fields: options.export_exclude_hidden_fields,
2053
- group_config: options.group_config,
2054
- column_state_storage_key: options.column_state_storage_key
2046
+ // Store export configuration in context to avoid AG Grid warnings
2047
+ context: {
2048
+ ...gridOptions.context,
2049
+ exportConfig: {
2050
+ export_csv_filename: options.export_csv_filename,
2051
+ export_pdf_filename: options.export_pdf_filename,
2052
+ export_remove_html: options.export_remove_html,
2053
+ export_trim_data: options.export_trim_data,
2054
+ export_exclude_fields: options.export_exclude_fields,
2055
+ export_exclude_hidden_fields: options.export_exclude_hidden_fields,
2056
+ group_config: options.group_config,
2057
+ column_state_storage_key: options.column_state_storage_key
2058
+ }
2055
2059
  }
2056
2060
  };
2057
2061
  // Store gridConfig on component instance for export functions
@@ -2243,7 +2247,7 @@ dmx.Component('ag-grid', {
2243
2247
  };
2244
2248
 
2245
2249
  exportGridData = (currentGridInstance, currentGridConfig) => {
2246
- const exportConfig = currentGridConfig.exportConfig;
2250
+ const exportConfig = currentGridConfig.context.exportConfig;
2247
2251
  const excludedColumnIds = ['checkboxColumn', 'actionsColumn'];
2248
2252
  const exportExcludeFieldsArray = exportConfig.export_exclude_fields ? exportConfig.export_exclude_fields.split(',') : [];
2249
2253
 
@@ -2443,7 +2447,7 @@ dmx.Component('ag-grid', {
2443
2447
  console.error('Grid API is destroyed or not initialized.');
2444
2448
  return;
2445
2449
  }
2446
- const exportConfig = currentGridConfig.exportConfig;
2450
+ const exportConfig = currentGridConfig.context.exportConfig;
2447
2451
  const excludedColumnIds = ['checkboxColumn', 'actionsColumn'];
2448
2452
  const exportExcludeFieldsArray = exportConfig.export_exclude_fields ? exportConfig.export_exclude_fields.split(',') : [];
2449
2453
  let fieldsAndColIds;
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@cdmx/wappler_ag_grid",
3
- "version": "2.0.21",
3
+ "version": "2.1.0",
4
4
  "type": "module",
5
- "description": "App Connect module for AG Grid v34 - Advanced data grid with enhanced editing, filtering, and tree data capabilities.",
5
+ "description": "App Connect module for AG Grid v35 - Advanced data grid with enhanced editing, filtering, and tree data capabilities.",
6
6
  "license": "MIT",
7
7
  "author": {
8
8
  "name": "cdmx-in",
@@ -14,8 +14,8 @@
14
14
  "ag-grid"
15
15
  ],
16
16
  "dependencies": {
17
- "@ag-grid-community/locale": "~34.1.0",
18
- "ag-grid-community": "~34.1.0",
17
+ "@ag-grid-community/locale": "~35.1.0",
18
+ "ag-grid-community": "~35.1.0",
19
19
  "papaparse": "~5.5.2",
20
20
  "pdfmake": "~0.2.18",
21
21
  "read-excel-file": "~5.8.7"