Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BREAKING CHANGE: merge SlickGrid into Slickgrid-Universal & drop external dep #1264

Merged
merged 125 commits into from
Dec 15, 2023

Conversation

ghiscoding
Copy link
Owner

@ghiscoding ghiscoding commented Dec 14, 2023

  • this drops the external 6pac/slickgrid dependency and is instead merging the SlickGrid directly into Slickgrid-Universal code. This is now possible because the original SlickGrid got migrated to TypeScript couple months ago and we can now simply copy over this code in here, it was also tested in the wild for a while now so it's quite stable and all new reported bugs were fixed.
  • also enhance CSP compliance with a few changes (less innerHTML use & return TrustedHTML when used, also accept Formatter returning native HTML element which could improve perf & is 100% CSP safe because it's already native)
  • this PR will decrease unit test coverage because 6pac/SlickGrid never had any unit tests, so merging the code in here will obviously decrease the coverage. The coverage will be addressed in the coming months
  • merging SlickGrid into the projects has a few benefits, the biggest are (easier to troubleshoot, we can drop unused code, deduplicate code like DOM utils, decrease external dependencies usage)

ghiscoding and others added 30 commits November 18, 2023 02:16
* feat(core)!: use new SlickGrid ESM version (#1070)

* feat(core)!: move SlickGrid core files directly into the project
- drop `slickgrid` npm dependency and instead move all files into the project
- the end goal is to have less depencies but also to get rid of unused code like the SlickGrid AutoSize since we have our own code in our ResizerService, this will hopefully make the build smaller as well. There are other duplicate code elsewhere, so moving the code in the project should help simplify the code
#1195)

* chore(binding): move BindingEventService to from commom to binding pkg
* chore: remove leftover jQuery animations in all toggle methods
)

* chore: add slickCore & slickInteractions full unit tests coverage
)

- 6pack/SlickGrid fork had implement a column AutoSize, however Slickgrid-Universal also have its own column autosize (inside ResizerService) and for that reason we never used the 6pack implementation, removing it is a better option
* chore: remove more autosize unused code

* chore: add index barrel to Jest coverage ignore
- also remove unused old multiple-select image for dropdown icons
* chore: add full test coverage on slick.core utils
…er (#1206)

* chore: remove unused slickCore exports & cleanup slick namespace leftover
- it's being showing as deprecated for a few years on MDN, they suggest to use `key` instead which is what we'll do
- fixes an issue when trying to publish ms-select-vanilla lib with npm provenance, I found that it was missing some SASS files even though it was working fine locally, it turns out that as pointed out in the `copyfiles` lib, we are better off escaping copyfiles glob patterns in npm scripts
> if your terminal doesn't support globstars then you can quote them
ghiscoding and others added 23 commits December 9, 2023 16:53
* fix: changing `enableCellNavigation` grid option not working
- the previous code had 2 different `options` and `_options` that were not always in sync which caused issue when trying to update for example the `enableCellNavigation` option on the fly. With this new code change, there will no possibility to mix them up anywmore
…#1263)

* chore: move all DOM utilities to `@slickgrid-universal/utils` package
Copy link

codecov bot commented Dec 14, 2023

Codecov Report

Attention: 529 lines in your changes are missing coverage. Please review.

Comparison is base (6dbaf3e) 100.00% compared to head (a2b78c2) 86.71%.
Report is 3 commits behind head on master.

Files Patch % Lines
packages/common/src/core/slickDataview.ts 31.66% 529 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##            master    #1264       +/-   ##
============================================
- Coverage   100.00%   86.71%   -13.29%     
============================================
  Files          246      197       -49     
  Lines        17321    21370     +4049     
  Branches      6261     7099      +838     
============================================
+ Hits         17321    18528     +1207     
- Misses           0     2842     +2842     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@ghiscoding ghiscoding changed the title BREAKING CHANGE: merge SlickGrid into Slickgrid-Universal & drop external SlickGrid dep BREAKING CHANGE: merge SlickGrid into Slickgrid-Universal & drop external dep Dec 14, 2023
@ghiscoding ghiscoding merged commit 18b96ce into master Dec 15, 2023
7 of 9 checks passed
@ghiscoding ghiscoding deleted the next branch December 15, 2023 02:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants