openproject icon indicating copy to clipboard operation
openproject copied to clipboard

Migrate Backlogs to JavaScript classes, type improvements

Open myabc opened this issue 7 months ago • 2 comments

⚠️ This PR is based off of #19429. Please review/merge that PR first.

Ticket

https://community.openproject.org/wp/66575

What are you trying to accomplish?

Migrates backlogs from Crockford Objects to JavaScript classes.

Screenshots

What approach did you choose and why?

Merge checklist

  • [ ] Added/updated tests
  • [ ] Added/updated documentation in Lookbook (patterns, previews, etc)
  • [ ] Tested major browsers (Chrome, Firefox, Edge, ...)

myabc avatar Aug 13 '25 15:08 myabc

@copilot please go through this draft conversion of a very old part of the codebase from "Crockford Objects"/custom Object factories (RB.Object.initialize) to modern JavaScript/TypeScript classes. Look for any possible errors in the conversion and correct please.

You may want to start with the suggestions that you provided as comments in this Pull Request: https://github.com/opf/openproject/pull/19907#discussion_r2496474788

Do the following before committing or pushing:

npm run generate-typings
npm run build
npm run test

Although there are no test cases that cover these particular files, this will at least check TypeScript compiles.

myabc avatar Nov 05 '25 23:11 myabc

@myabc I've opened a new pull request, #20945, to work on those changes. Once the pull request is ready, I'll request review from you.

Copilot avatar Nov 05 '25 23:11 Copilot