Blackbaud
OSS
skyux
Sign in / Sign up
Open main menu
skyux
Select a tab
Overview
Runs
Analytics
skyux
Overview
Runs
Analytics
Loading workspace stats
Loading workspace insights...
Statistics interval
7 days
30 days
Latest CI Pipeline Executions
Status
Fix filter
Filter
Fuzzy
Filter range
Sort by
Sort by
Start time
Sort ascending
Sort descending
Succeeded
4122
2afa27ba Simplify data-grid, data-entry-grid, and data-manager code examples (#4123) ## Summary: Simplify data-grid, data-entry-grid, and data-manager code examples All tasks completed successfully! ✅ ### Changes Made: #### 1. Data-Entry-Grid Examples - **basic/**: Converted to use signals (`signal<AgGridDemoRow[]>`) and `structuredClone()` for modal data passing - Removed unnecessary `refreshCells()` API call - Removed unnecessary `markForCheck()` call - **inline-help/**: Converted to use signals and `structuredClone()` for modal data passing - Removed unnecessary `refreshCells()` API call - Removed unnecessary `markForCheck()` call - **focus/**: Already simplified (reviewed, no changes needed) - **data-manager-added/**: Already uses signals and `structuredClone()` (reviewed, no changes needed) #### 2. Data-Grid Examples - **data-manager/**: Removed `OnInit` and `OnDestroy` lifecycle hooks, simplified to use constructor-based initialization - Restored explanatory comment about fake endpoint in `onJobTitleSearchAsync()` - **data-manager-multiselect/**: Removed `OnInit` and `OnDestroy` lifecycle hooks, simplified to use constructor-based initialization - Restored explanatory comment about fake endpoint in `onJobTitleSearchAsync()` - **paging/**: Converted from manual subscription management to `toSignal()` and `effect()`, removed `OnInit` and `OnDestroy` - Removed unnecessary `markForCheck()` calls - Removed unused `ChangeDetectorRef` import and injection #### 3. Data-Manager Examples - **basic/**: Already using signals properly (reviewed, no changes needed) ### Key Improvements: ✅ All modal contexts now use `structuredClone()` instead of shallow copies ✅ Replaced manual subscription management with signals and effects ✅ Removed unnecessary lifecycle hooks (`OnInit`, `OnDestroy`) where possible ✅ Removed unnecessary `refreshCells()` API calls - signal updates trigger change detection automatically ✅ Removed unnecessary `markForCheck()` calls - signal updates trigger change detection automatically ✅ Restored educational comments explaining limits of example code ✅ Reduced code complexity while maintaining example independence ✅ All examples pass linting ✅ Build completes successfully Each example remains independent and self-contained as required. <!-- START COPILOT CODING AGENT SUFFIX --> <!-- START COPILOT ORIGINAL PROMPT --> <details> <summary>Original prompt</summary> > In PR #4122 I'm modifying some of the code examples to make them less complex. In the code-examples project, each directory with an example.component.ts file should stand as an independent code example. I'd like to apply a similar set of simplifications to the other data-grid, data-entry-grid, and data-manager code examples. Convert to using signals where possible. Fix the edit contexts for modals to use a structuredClone of the original data rather than a shallow copy. Within each example, look for ways to cut down on redundant code while keeping each code example independent of other examples. </details> <!-- START COPILOT CODING AGENT TIPS --> --- ✨ Let Copilot coding agent [set things up for you](https://github.com/blackbaud/skyux/issues/new?title=✨+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot) — coding agent works faster and does higher quality work when set up for your repo. --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: johnhwhite <750350+johnhwhite@users.noreply.github.com>
3 days ago
by Copilot
Previous page
Previous
Next
Next page