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

Talawa api typescript migration #780

Merged
merged 30 commits into from
Nov 9, 2022
Merged

Talawa api typescript migration #780

merged 30 commits into from
Nov 9, 2022

Conversation

xoldd
Copy link
Contributor

@xoldd xoldd commented Nov 3, 2022

What kind of change does this PR introduce?

This PR introduces the typescript migrated version of talawa-api.

Issue Number:

Fixes #

Did you add tests for your changes?

Yes

Snapshots/Videos:

If relevant, did you update the documentation?

Summary

Does this PR introduce a breaking change?

This PR introduces many breaking changes because it's a code migration from one programming language to another. Many files and folders are restructured, modified, deleted etc. Packages needed for typescript are installed and older unneeded packages are removed. Project configuration has also been modified to work with the typescript workflows. Although most of the code is migrated to typescript there are still some parts which are not type safe. That's either because there's no type definitions for packages used or the code is incorrect or wrongly implemented.

Other information

I've installed the new vitest test runner replacing jest. It really is order of magnitudes faster than jest and saves the contributer's time and well as decreases the time taken for different workflows. I've modified the github actions files to work with the typescript workflows. If something doesn't quite work right feel free to tell me.

Have you read the contributing guide?

Yes

xoldd and others added 26 commits August 28, 2022 08:00
Removed the package named easygraphql-tester because it was not being used anywhere in the app and had a security vulnerability.
Bumps [moment-timezone](https://github.com/moment/moment-timezone) from 0.5.34 to 0.5.37.
- [Release notes](https://github.com/moment/moment-timezone/releases)
- [Changelog](https://github.com/moment/moment-timezone/blob/develop/changelog.md)
- [Commits](moment/moment-timezone@0.5.34...0.5.37)

---
updated-dependencies:
- dependency-name: moment-timezone
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
The tests have been failing due to timeouts.
* Create groups.spec.js

* Update groups.spec.js

* Update getPlugins.spec.js
Bumps [jose](https://github.com/panva/jose) from 2.0.5 to 2.0.6.
- [Release notes](https://github.com/panva/jose/releases)
- [Changelog](https://github.com/panva/jose/blob/v2.0.6/CHANGELOG.md)
- [Commits](panva/jose@v2.0.5...v2.0.6)

---
updated-dependencies:
- dependency-name: jose
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [file-type](https://github.com/sindresorhus/file-type) and [image-hash](https://github.com/danm/image-hash). These dependencies needed to be updated together.

Updates `file-type` from 14.7.1 to 16.5.4
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](sindresorhus/file-type@v14.7.1...v16.5.4)

Updates `image-hash` from 4.0.1 to 5.3.1
- [Release notes](https://github.com/danm/image-hash/releases)
- [Commits](https://github.com/danm/image-hash/commits)

---
updated-dependencies:
- dependency-name: file-type
  dependency-type: indirect
- dependency-name: image-hash
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [got](https://github.com/sindresorhus/got) and [nodemon](https://github.com/remy/nodemon). These dependencies needed to be updated together.

Removes `got`

Updates `nodemon` from 2.0.15 to 2.0.20
- [Release notes](https://github.com/remy/nodemon/releases)
- [Commits](remy/nodemon@v2.0.15...v2.0.20)

---
updated-dependencies:
- dependency-name: got
  dependency-type: indirect
- dependency-name: nodemon
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.9 to 3.9.11.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](patriksimek/vm2@3.9.9...3.9.11)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…ansaction in Talwa-api ) (#756)

* Test : lib/resolvers/group_chat_query/groupChatMessages.js

* Add Test  : Added Valid JSON Check

* Create README.md

* Create README.md

* Update is-auth.js

* AddedDocs

Docs from withfilter pending

* Update index.js

* completed

* sample

* update/index.js

* update/index.js

* update/is-auth.js

* Update/readme.md

* update/image-readme

* Add/query-schema

* Update/Plugin-graphQL-schema

* Add/Plugin-MongoDB-Model

* Add/createPlugin-and-refractoring

* Add/getPlugins

* Add/Mutation/UpdatePluginStatus

* Add/Mutation/updateTempPluginInstalledOrgs

* Add/Mutation/Schema

* Add/import/mutations

* Add/plugins

* Fix/path-err

* Fix/Erros

* update/lockfile

* Add/plugin-model

* Update is-auth.js

* Removed extra queries

* Documentation added for plugin queries and models

* Fix/`delelte cr in prettier/prettier`

* updated : mutation

* Add/test `getPlugins`

* Fix/`lint error`

* test `updatePluginInstalledOrgs`

* Test/ `updateInstallStatus`

* Fix/Erros-1

* Fix/Erros-2

* Fix/Erros-3

* Test/`Queries.js`

* Test/`Mutation.js`

* remove extra `console.log`

* Delete admin-plugin-query.js

* Delete super-admin-plugin-query.js

* Fix/Package-lock

* Create cancel_membership_request.spec.js

* Update cancel_membership_request.js

* Update cancel_membership_request.spec.js

* Update cancel_membership_request.js

* `Typo`

* Add : Donation Model

* Add : getDonations Query

* Add : Schema for Donation

* Add : Schema for getDonations query

* Add : getDonationById Query

* Add : Schema for getDonationById

* Fix : `Donation Model`

* Add : createDonation Mutation

* Add : createDonation Schema

* Updated Donation Model

* Add :  `createDonation` GraphQL Mutation

* Fix : `getDonationById` Query

* Add : `getDonationByOrgId` Query

* Update : Scehma Updated due to change in `Donation` Model

* Update : `Donation` Schema in .graphql

* Add : `getDonationById` and `getDonationByOrgId` in gql schema

* Add : gql Schema for `DeletePayload`

* Add : `deleteDonationById` Mutation

* Chores : Formatting files

* Fix : Lint errors
* test for reject_membership_request.js

* send_membership_request.spec.js initialized

* test for send_membership_request.js

* fixes in test for send membership request

* minor fixes in send_membership_request.spec.js

* 100% test coverage

Co-authored-by: Nishant <srnikhil3721@gmai.com>
* Initial setup (#726)

* Initial setup

* simplified creation

* added readme.md file

* added connection manager and id helper functions

* Error handling & security updates (#744)

* [Feature Request] New Features for Talawa-admin added (#725)

* check authentication feature added for talawa admin

* tests for check authentication added

* minor fixes

* typo fixes

* minor fixes

* npm err fixes

* google recaptcha configured

* new dependency added

* mailer, forgotPassword endpoint and otp endpoint is configured

* graphql endpoints updated

* constants updated

* Documentation updated

* tests for changes added

* hard coded value error fixes

* lint fixes

* lint fixes

* failed test cases fixes

* Failed tests fixes

* minor fixes

* marked-teminal dependency updated

* Tests fixes

* tests updated

* tests fixes

* tests updated

* new resolvers added and schema updated

* graphql mutations updated

* tests updated for changes

* tests updated

* tests updated

* tests updated

* minor fixes

* [Feature Request] : Plugin Architecture for Server (#730)

* Test : lib/resolvers/group_chat_query/groupChatMessages.js

* Add Test  : Added Valid JSON Check

* Create README.md

* Create README.md

* Update is-auth.js

* AddedDocs

Docs from withfilter pending

* Update index.js

* completed

* sample

* update/index.js

* update/index.js

* update/is-auth.js

* Update/readme.md

* update/image-readme

* Add/query-schema

* Update/Plugin-graphQL-schema

* Add/Plugin-MongoDB-Model

* Add/createPlugin-and-refractoring

* Add/getPlugins

* Add/Mutation/UpdatePluginStatus

* Add/Mutation/updateTempPluginInstalledOrgs

* Add/Mutation/Schema

* Add/import/mutations

* Add/plugins

* Fix/path-err

* Fix/Erros

* update/lockfile

* Add/plugin-model

* Update is-auth.js

* Removed extra queries

* Documentation added for plugin queries and models

* Fix/`delelte cr in prettier/prettier`

* updated : mutation

* Add/test `getPlugins`

* Fix/`lint error`

* test `updatePluginInstalledOrgs`

* Test/ `updateInstallStatus`

* Fix/Erros-1

* Fix/Erros-2

* Fix/Erros-3

* Test/`Queries.js`

* Test/`Mutation.js`

* remove extra `console.log`

* Delete admin-plugin-query.js

* Delete super-admin-plugin-query.js

* Fix/Package-lock

* added delimiter to helper functions

* error handling for connection manager

* added readme.md for connection manager

* error handling for Database module

Co-authored-by: Asmit Kumar Sirohi <63240102+asmitsirohi@users.noreply.github.com>
Co-authored-by: Siddhesh Bhupendra Kuakde <65951872+SiddheshKukade@users.noreply.github.com>

* Create new tenant on createOrganization

* Custom schema functionality

* Added the context function

* modify createPost resolver

* fix createPost, createOrganization resolvers

* Initial setup (#726)

* Initial setup

* simplified creation

* added readme.md file

* added connection manager and id helper functions

* Error handling & security updates (#744)

* [Feature Request] New Features for Talawa-admin added (#725)

* check authentication feature added for talawa admin

* tests for check authentication added

* minor fixes

* typo fixes

* minor fixes

* npm err fixes

* google recaptcha configured

* new dependency added

* mailer, forgotPassword endpoint and otp endpoint is configured

* graphql endpoints updated

* constants updated

* Documentation updated

* tests for changes added

* hard coded value error fixes

* lint fixes

* lint fixes

* failed test cases fixes

* Failed tests fixes

* minor fixes

* marked-teminal dependency updated

* Tests fixes

* tests updated

* tests fixes

* tests updated

* new resolvers added and schema updated

* graphql mutations updated

* tests updated for changes

* tests updated

* tests updated

* tests updated

* minor fixes

* [Feature Request] : Plugin Architecture for Server (#730)

* Test : lib/resolvers/group_chat_query/groupChatMessages.js

* Add Test  : Added Valid JSON Check

* Create README.md

* Create README.md

* Update is-auth.js

* AddedDocs

Docs from withfilter pending

* Update index.js

* completed

* sample

* update/index.js

* update/index.js

* update/is-auth.js

* Update/readme.md

* update/image-readme

* Add/query-schema

* Update/Plugin-graphQL-schema

* Add/Plugin-MongoDB-Model

* Add/createPlugin-and-refractoring

* Add/getPlugins

* Add/Mutation/UpdatePluginStatus

* Add/Mutation/updateTempPluginInstalledOrgs

* Add/Mutation/Schema

* Add/import/mutations

* Add/plugins

* Fix/path-err

* Fix/Erros

* update/lockfile

* Add/plugin-model

* Update is-auth.js

* Removed extra queries

* Documentation added for plugin queries and models

* Fix/`delelte cr in prettier/prettier`

* updated : mutation

* Add/test `getPlugins`

* Fix/`lint error`

* test `updatePluginInstalledOrgs`

* Test/ `updateInstallStatus`

* Fix/Erros-1

* Fix/Erros-2

* Fix/Erros-3

* Test/`Queries.js`

* Test/`Mutation.js`

* remove extra `console.log`

* Delete admin-plugin-query.js

* Delete super-admin-plugin-query.js

* Fix/Package-lock

* added delimiter to helper functions

* error handling for connection manager

* added readme.md for connection manager

* error handling for Database module

Co-authored-by: Asmit Kumar Sirohi <63240102+asmitsirohi@users.noreply.github.com>
Co-authored-by: Siddhesh Bhupendra Kuakde <65951872+SiddheshKukade@users.noreply.github.com>

* dynamic functionality additions

* update tenant schema folder

* modify all posts-comments resolvers

* resolve failing tests for posts modifications

* modify events-tasks-projects related resolvers

* resolve failing tests

* modified user queries

* modify longin mutation to return events properly

* modify org mutations and resolve failing tests

* diconnect properly from the database

* if not connection for org search in the database for it

* group chats and direct chats mutations

* remove console logs

* remove unnecessary comments

* fix drop database

Co-authored-by: Mickey <31347338+JamaicanFriedChicken@users.noreply.github.com>
Co-authored-by: Asmit Kumar Sirohi <63240102+asmitsirohi@users.noreply.github.com>
Co-authored-by: Siddhesh Bhupendra Kuakde <65951872+SiddheshKukade@users.noreply.github.com>
Co-authored-by: JamaicanFriedChicken <mikey_lue777@hotmail.com>
palisadoes
palisadoes previously approved these changes Nov 3, 2022
@codecov-commenter
Copy link

codecov-commenter commented Nov 6, 2022

Codecov Report

Merging #780 (778a399) into develop (d32154c) will increase coverage by 17.29%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##           develop     #780       +/-   ##
============================================
+ Coverage    63.02%   80.32%   +17.29%     
============================================
  Files          146      153        +7     
  Lines         2740     9748     +7008     
  Branches       679      812      +133     
============================================
+ Hits          1727     7830     +6103     
- Misses         776     1916     +1140     
+ Partials       237        2      -235     
Impacted Files Coverage Δ
lib/resolvers/user_mutations/updateUserProfile.js
lib/resolvers/user_query/userLanguage.js
lib/config/app.js
lib/resolvers/user_query/users.js
lib/models/Plugin.js
lib/resolvers/user_mutations/blockForPlugin.js
lib/resolvers/user_query/user_orderBy.js
lib/resolvers/user_query/user_filter.js
lib/resolvers/user_query/myLanguage.js
lib/resolvers/user_query/tasksByUser.js
... and 154 more

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@DMills27 DMills27 self-requested a review November 7, 2022 15:08
Copy link
Member

@DMills27 DMills27 left a comment

Choose a reason for hiding this comment

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

LGTM

@DMills27 DMills27 merged commit 9dd36b3 into PalisadoesFoundation:develop Nov 9, 2022
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.

10 participants