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

AG-12549 Selection API codemods #87

Merged
merged 16 commits into from
Sep 19, 2024
Merged

AG-12549 Selection API codemods #87

merged 16 commits into from
Sep 19, 2024

Conversation

eliasmalik
Copy link
Contributor

Copy link
Collaborator

@SalvatorePreviti SalvatorePreviti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved.
I think we can discuss two possible improvements:

  1. at the moment this works only with literals, it will not replace expressions. To do that, we should handle the expression and write something like { property: <expression> ? 'a' : 'b' } for example.
  2. react useMemo: we should warn the user that a useMemo would improve performance on the new object (or, much more complicated, inject one)

@eliasmalik eliasmalik merged commit afdbb99 into develop Sep 19, 2024
3 checks passed
@eliasmalik eliasmalik deleted the AG-12549-selection branch September 19, 2024 12:37
eliasmalik added a commit that referenced this pull request Sep 27, 2024
* customizable allowed import libs, user configuration js file (#52)

- Adds the ability to define and load a js or ts configuration
- Expose a way in the configuration to register interceptor methods that can be used to allow custom modules and custom exports from custom libraries to be processed
- Fix the import.ts code to handle properly the configuration file interceptors
- Adds cli end to end tests

* fix build, add link to help screen (#57)

- Add link to the documentation when running migrate --help
- Add tsx as a dependency so typescript support for configuration is always available
- Fix the build configuration to properly emit user-config.cjs and user-config.d.ts
- Update some packages
- Fix user-config.ts so proper d.ts is generated correctly - the previous version was not generating a valid d.ts

* AG-12173 Allow processing the .gitignore file (#58)

After the command npx @ag-grid-devtools/[email protected] migrate --from=31.2.1, error message Error: Untracked input files stop the process of migration. We can make it work by processing the .gitignore file

NOTE: this is a breaking change, files specified in .gitignore will NOT be processed anymore when running the command in a directory, agreed with Stephen that this is however the right behaviour - to decide if we want to alert the users or not in the release info

use "glob" and "ignore" to process correctly gitignore files recursively.
update e2e tests to verify gitignore files are ignored as expected

* AG-11722 improve and fix commandline parsing (#59)

Fix command line parsing

The "--config=file" should not be included in the files to be processed
Partial semvers should be supported, "from=30" should work the same as "from=30.0.0"
All boolean flags should have an implicit "--no-flag" so they can be overridden when chaining commangs (normal cli behaviour)
--to= should support "latest" and partial semver, for example --to=32.1 or --to=latest

* release-32.0.2 (#60)

release-32.0.2

Updates in the migrate CLI:

- support for .gitignore files - when running in a folder without passing a list of files, .gitignore will be honoured
- support for configuration file - this allows to define custom matchers to apply codemods also in wrapped or re-exported AG Grid components.

* fix dynamic require (#62)

* fix dynamic require

* release-32.0.3 (#63)

* Release 32.0.3 (#64)

* release-32.0.3

* merge main into develop

* add package.json to exports

* Publish v32.0.3 (#66) (#73)

* fix loading of dynamic modules in windows, export map, .cjs and .mjs support

* AG-12276 support vue ts (#74)

* support typescript language in vue

* release-32.0.4 (#75)

add support for vue typescript language

* support ts language in vue (2) - fix loading of typescript eslint parser module

* increment version

* AG-12615 remove @ag-grid-devtools/codemods from dependencies, update packages (#80)

* remove codemods dependency, update packages
* increase test timeout, as node 18 is slower

* version-32.0.6

* AG-12615 removes the bundled codemods, use a folder instead (#82)

* move codemods in a subfolder, avoid bundled package

* AG-12669 - Deprecate getInfiniteRowCount (#84)

* ignore .d.ts files and process input directories (#86)

* ignore .d.ts files and process input directories

* AG-12549 Selection API codemods (#87)

* fix create-transform task

* add grid options codemod for v32.2

* fix simple js test

* wip

* codemods for selection properties

* add tests

* warn on unimplemented transformations

* rename scenario

* add comments, tidy, reduce type casting

* uncommit

* missing manifest

* update test

* Increment package version

* test case for deprecated colDef props

* pre-compute the value and exit early if no valid transformation

* AG-12800 add api renames (#85)

* AG-12929 Update for 32.2.1 (#89)

* wip

* wip

* migrate enableRangeSelection, not other nested cell selection properties

* wip

* wip

* wip

* wip

* increment version to v32.2.1 (#90)

---------

Co-authored-by: Salvatore Previti <[email protected]>
Co-authored-by: Salvatore Previti <[email protected]>
Co-authored-by: Andrew Glazier <[email protected]>
Co-authored-by: Stephen Cooper <[email protected]>
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.

2 participants