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

Fixed error #2455 : User Role Not Displaying in 'People' Section #2971

Closed
wants to merge 36 commits into from

Conversation

AryanSwaroop
Copy link

@AryanSwaroop AryanSwaroop commented Dec 27, 2024

What kind of change does this PR introduce?

Fixed User role not displaying bug in people section. This PR changes the interface that was causing mismatch.

Issue Number:

#2455

Did you add tests for your changes?

No

Snapshots/Videos:

image

If relevant, did you update the documentation?

No , not relevant

Summary

The people section without any role looks empty and error full so this PR solves it , when users like me use this software.
#2455

Does this PR introduce a breaking change?

Np

Have you read the contributing guide?

Yes

Summary by CodeRabbit

  • New Features

    • Introduced a new configuration file for YAML language server settings.
    • Added a template for environment variable configuration for local development.
    • Enhanced the GitHub workflows with new automation for issue management and pull requests.
    • Added comprehensive localization support for multiple languages including English, French, Hindi, Spanish, and Chinese.
  • Documentation

    • Updated various documentation files, including installation guides and contribution guidelines, for improved clarity and structure.
  • Bug Fixes

    • Enhanced error handling across the application, providing clearer messages for various scenarios.
  • Style

    • Improved code formatting and linting configurations to maintain consistency throughout the project.
  • Tests

    • Added new test cases to ensure robust validation of the application features and error handling mechanisms.

DangaRanga and others added 30 commits May 23, 2021 12:21
Updated CONTRIBUTING.md with new branching strategy
…arn/dns-packet-1.3.4

Bump dns-packet from 1.3.1 to 1.3.4
* Update authorized-changes-detection.yml

* Code Coverage @ 87.1%

* Update .gitignore

* Delete codecov

This executable should not be in the repo

* added translation hint text in placeholders (#487)

* Update pull-requests.yml

* Create DOCUMENTATION.md

* Rename issue-guidelines.md to ISSUE_GUIDELINES.md

* Update CONTRIBUTING.md

* Update issue.yml

* Rename PR-guidelines.md to PR_GUIDELINES.md

* Update CONTRIBUTING.md

* Update pull-request-target.yml

* Delete PULL_REQUEST_TEMPLATE.md

* Delete ISSUE_TEMPLATE.md

* Rename Code_Style.md to CODE_STYLE.md

* added removeMember mutation (#491)

* added removeMember mutation

* changed mutation name

* remove contributions from router (#502)

* Fixed Settings page Header (#501)

* fixed cani-use lite warning

* fixed the alignments for smaller screens and also added spacing on places where it was needed

* fixed the linting errors

* ran prettier to remove styling errors

* made the orgSetting title dynamic

* linted the code and made the settings header as required and also made the settings page navbar responsive

* linted code and made necessary changes

* errors fixed

* Added dropdown for Applanguage in UserUpdation form (#498)

* Added dropdown for Applanguage in UserUpdation form

* App language code changed to Default language

* Change the Scalar Types [Provides relevant client side changes for #1085 in Talawa-API] (#500)

* Change typedefs

* Fix date parsing

* Move ID to ObjectID scalar

* Client changes for Adding GraphQL Scalars (#511)

* Change typedefs

* Fix date parsing

* Move ID to ObjectID scalar

* Revert ObjectID to ID

* Change ObjectID to ID

* modal closed after organization creation (#516)

* most recently added Org displays at the top (#515)

* Add Husky (#520)

* updated contributing (#521)

* Display and choose Organisation image (#512)

* upload image working for createOrganisation

* Organisation image showing everywhere

* Testcase failure fixed

* Linting fixed

* convertToBase64 func made and tests for it

* CI/CD error fixed

* tests added for AdminNavbar & OrganisationDashboard

* Linting fixed

* fixed translation on the plugin tab (#510)

* added OrgName to the Navbar (#525)

* Fix create event mutation [Fixes part of #1101 in Talawa-API] (#523)

* Add format fix

* Fix updation of posts

* Test coverage improved for organizationPeople.tsx (#526)

* Update INSTALLATION.md

* Update INSTALLATION.md

* Update INSTALLATION.md

* Update stale.yml

* Remove tags (#532)

* Fixed navbar added tests (#534)

* Fixed navbar added tests

* Fixed the translation of All orgnaizations btn in AdminNavbar

* Fix the updateOrg page, and made it to create mutation request [Fixes #531] (#536)

* fix orgUpdate system

* fix translations

* Update CONTRIBUTING.md

* Code Coverage @ 88%

* Fixes #478 : Implemeneted calendar to the Event tab (#537)

* calendar-implemented

* calendar-implemented

* fixed tests

* Added post-merge hook using husky (#541)

* Added post-merge hook using husky

* made required changes to installation.md

* make changes to documentation for husky

* made the required changes in installation guide

* Update pull-requests.yml

* Fixed yarn installation instructions (#584)

* organization sorting for all organization (#619)

* removed redundant notification (#577)

* Profile Page for Members (#543)

* Initial member page made

* Changed query added Org and Events section

* Homescreen ready

* initial translation added for Profile

* initial translation added for Profile

* Added translations

* Added translations

* Revised translation

* Fixed failing tests for components

* Link added to OrgAdminListCard

* Linting fixed for OrgPeopleListCard

* Added tests, removed logs

* Uniform design

* Fix:routing issue for orgdash page (#580)

* Fix:routing issue for orgdash page

* fix:failing test of SuperDashListCard

* Rectify Warnings: EventListCard.test.tsx (#595)

* Added logic to close modal after successful submission (#623)

* Feature Request: Position of the search bar.  (#631)

* Feature Request: Position of the search bar #614 resolved

* Feature Request: Position of the search bar #614 resolved

* fixes: #550 added test for the calendar (#552)

* added test for the calendar

* updates mocks

* Update Router Function [Fixes #636] (#638)

* Update Router Function

* Empty commit

* Fix about content overflow (#632)

Signed-off-by: Ekene Nwobodo <[email protected]>

* removed duplicate rows per page section in orgposts (#648)

* fixed :made card in organization dashboard interactive (#620)

* Implemented manage functionality for admin and super admin after login (#539)

* Implememnted manage functinality for admin/superadmin after login

* Update AdminDashListCard.module.css

* Some formatting issues with module file

* resolved workflow issues

* Added folding feature to posts (#581)

* added folding feature to posts

* added fold feature to posts

* brought code under code coverage

* added tests

* added tests for remainging uncovered lines

* brought code coverage to 100% for the changes

* Code coverage @87.2%

* Fix User Update Details Page and Add Update Password Page [Fixes #530] (#657)

* fixed updateuser logic

* update translations

* fix lint

* lint fix 2

* fix tests

* fixed:move orgLocation & remove duplicate orgName (#655)

* fixed:move orgLocation & remove duplicate orgName

* Dummy commit

* fixes - [#597] - Navbar navlinks hover and button styles  (#603)

* fixed: #585 - Password error showing. Tested

* fix: #590 - fixed navbar hover issues

* fix: #590 - fixed navbar hover issues

* Code Coverage 87.4%

* fixes 599 (#653)

* fixed errors and removed window.replace

* written test case for ensure window.location.replace

* written test case for ensure window.location.replace

* added useHistory to keep track of routing behind the scenes

* fixed merge conflicts and errors

* updated comments for file changes

* Added warning comments for routing

---------

Co-authored-by: Adepeju <adepeju.kayode@gmail>

* fix org search location (#682)

Signed-off-by: Ekene Nwobodo <[email protected]>

* fixed the issue of validate the input before submit #674 (#678)

* Adds required tests for OrganizationEvents.tsx and Fixes a minor bug in Calendar (#527)

* adds tests for organization events

* removes the unrequired branch from OrganizationEvents.tsx

* fixes failing tests

* fixes failing lint tests

* Update password preview feature with coverage tests (#629)

* Fix to the issue #585 (#607)

* [fix]- fixed the password error warning

* [fix]- fixed the password error warning

* [fix]- fixed the password error warning

* [fix]-fixed the password error warning

* [fix]-fixed the password error warning

* [fix]-fixed the password error warning

* [fix]-fixed the password error warning

* [feat]-added test cases for password error warning

* [feat]- added test cases for password error warning

* [feat]- added test cases for password error warning

* [fix]- fixed the linting

* Improve test coverage for calendar.tsx (#679)

* Improve test coverage for calendar.tsx

* Restore previous tests

* remove --coverage

* i rebased my codebase and resolved the initial issue (#669)

* fixed the issue use of toast in place of window.alert #645 (#687)

* Update ISSUE_GUIDELINES.md

* fixed the static time data under Organization card in the Organization List tab (#689)

* fixed the static time in org card

* formatted the date to MM D, YYYY

---------

Co-authored-by: thesaaddevloper <[email protected]>

* Fixed the pagination alignment issue (#702)

* [fix]- fixed the password error warning

* [fix]- fixed the password error warning

* [fix]- fixed the password error warning

* [fix]-fixed the password error warning

* [fix]-fixed the password error warning

* [fix]-fixed the password error warning

* [fix]-fixed the password error warning

* [feat]-added test cases for password error warning

* [feat]- added test cases for password error warning

* [feat]- added test cases for password error warning

* [fix]- fixed the linting

* [fix]- fixed the pagination alignment issue

* [fix]- fixed the pagination alignment issue

* [fix]- fixed the pagination alignment issue

* Removed overlapping (#675)

* changes input element to textarea and changes in test (#710)

* Code Coverage @90.7%

* Indicating active tabs (#691)

* added underline to active links in navbar

* fixed lint error

* fixed the org default image #688 and removed stock image (#695)

* fixed the org default image #688 and removed stock image

* removed eslint warning

* added new img as default org img

* Update INSTALLATION.md

* Added Clear Error and Warn Messages when API is unavailable (#670)

* Added error and warn messages

* Added tests & fixed inconsistency in mocks

* Lint fix LoginPage

* Lint Fix LoginPage.test

* minor fix

* Minor update to LoginPage

* Minor change to LoginPage.test

* Replaced toast.warn() with toast.error()

* Fixed test accordingly

* Lint Fix

* Minor fix

* Extra edge case handled

* code coverage fix

* Lint fix

* Update LoginPage

* Update LoginPage.test

* Lint fix

* improve test coverage for orgpost.tsx (#718)

* Improve test coverage for calendar.tsx

* Restore previous tests

* remove --coverage

* improve test for orgpost.tsx

* Implemented Proper Error Handling for all Screens [Fixes: #535] (#731)

* Handled error cases for all screens

* Some more fixes

* Some more fixes

* Added StaticMockLink to use Mocks multiple times [Fixes Multiple Issues] (#745)

* add StaticMockLink

* lint fix

* remove showWarning

* Added prompt to Register on Login Page (#628)

* Add prompt to Login page
- Add prompt in other languages: fr, sp, hi, zh.
- switch styling of Login Button with Reg Button

* format with prettier

* fixed event checkboxes to update (#707)

* Block/Unblock functionality for only members of the organization (#690)

* Implememnted manage functinality for admin/superadmin after login

* Update AdminDashListCard.module.css

* Some formatting issues with module file

* resolved workflow issues

* Updated block/unblock page preventing users who are not members of organiztion

* Update BlockUser.test.tsx to resolve failing tests

Modified the mocks fields according to the corresponding changes in BlockUser.tsx file.

* created a reusable postNotFound Component with responsive UI (#717)

* created a reusable postNotFound Component with responsive UI

* run test error solved

* added translation to the component and also created the test.tsx for the error component

* fixed the failing test and added the postNotFound reusable component for OrgList

---------

Co-authored-by: thesaaddevloper <[email protected]>

* fix: #601 modal responsive width (#621)

* added dynamic title to OrgPeople section (#704)

* added dynamic title to OrgPeople section

* fixed code coverage

* fixed code coverage

* uncommented the mistakenly added code

* Delete er

* Updated session timeout notification toast with already existing one (#734)

* Added a toast to notify users that session has expired and redirects to the login page

* Updated toast notification on session timeout  with already existing one

* eliminated the use of  magic numbers

* minor error correction on the timeout minutes

---------

Co-authored-by: TheoCathy <[email protected]>

* Fixed the empty space in the OrgList (#751)

* created a reusable postNotFound Component with responsive UI

* run test error solved

* added translation to the component and also created the test.tsx for the error component

* fixed the failing test and added the postNotFound reusable component for OrgList

* fixed the empty space in orgList

* fixed the failing test

* removed the unwanted files

---------

Co-authored-by: thesaaddevloper <[email protected]>

* align navbar items (#755)

* align navbar items

* replace More with a hamburger icon

* replace More with a hamburger icon to fix workflow error

* replace More with a hamburger icon to fix workflow error

* Fixes: toggle password for registration  (#758)

* added toggle-password

* updated

* formatting

* added icon for toggle password

* Super Admin Dashboard Error When Organizations Absent (#754)

* No Organization Warning on OrgList

* Minor Fix

* Fixed failing tests

* Added Warning on Roles and Request Pages

* Added Tests for OrgList

* Testing Fixes

* Added more tests

* Added Tests for Roles and Request Pages

* Code Coverage @ 91.0%

* Add link to dashboard admin card (#760)

* image upload made functional (#677)

* image upload made functional

* lint

* fixed failing test

* linting

* re run test , remove yarn.lock changes

* updateUser test cov

* OrgPost

* rerun tests

* Empty commit

* reverted last 2 commits changes

* re run code cov

* update userUpdate

* rerun code cov again

* revert last commit

* Update PR_GUIDELINES.md

* Implemented Search bar and the radio buttons in orgPost page that searches both title and text of post (#770)

* created a reusable postNotFound Component with responsive UI

* run test error solved

* added translation to the component and also created the test.tsx for the error component

* fixed the failing test and added the postNotFound reusable component for OrgList

* fixed the empty space in orgList

* fixed the failing test

* removed the unwanted files

* the one search bar which searches both text and title of post

* testing file

* orpost file testing

* code coverage is increased

* fixed the failing test

---------

Co-authored-by: thesaaddevloper <[email protected]>
Co-authored-by: saadabban76 <�[email protected]>

* center org image on mobile (#778)

Signed-off-by: Ekene Nwobodo <[email protected]>

* removed link for plugin dropdown toggle (#781)

* removed link for plugin dropdown toggle

* added id

* align superadmin nav items and fix failed tests (#766)

* changed the handleSearchByName function in searchByName in Roles page (#735)

* changed the handleSearchByName function to search using target's value instead of searchByName variable

* updated the file Roles.tsx to take care of useState lag

* changed tests for suiting searchByName

* changed tests for searchByName including backspaces

* added tests for paginationList and changing rowsPerPage

* added tests to increase coverage in Roles.tsx

* changed the package.json file's test command

* removed extra scrollbars (#800)

* Recently added Post displays at top (#773)

* Recently added Post displays at top

* reversed the posts as required in the query

* Increased the OrgList Code Coverage (#786)

* increased the orgList coverage to 95$

* increased the orgList Code Coverage

* increased the orgList Code Coverage

* increased the orgList Code Coverage

* fixed image rendering in orgPost page

* increased the code coverage for orgList Component

* increased code coverage to 97% in orgList Component

---------

Co-authored-by: saadabban76 <�[email protected]>

* Modify event visibility for non-admins (#796)

* Modify event visibility for non-admins

Signed-off-by: Ekene Nwobodo <[email protected]>

* Add test suites for events visibilty

---------

Signed-off-by: Ekene Nwobodo <[email protected]>

* Bug Fix: Drawer menu visibility (#794)

* Remove filter by event field (#807)

* increased the orgList coverage to 95$

* increased the orgList Code Coverage

* increased the orgList Code Coverage

* increased the orgList Code Coverage

* fixed image rendering in orgPost page

* increased the code coverage for orgList Component

* increased code coverage to 97% in orgList Component

* removed the filter by event section in orgPeople's component

* fixed the failing test

---------

Co-authored-by: saadabban76 <�[email protected]>

* Add image to post (#804)

* increased the orgList coverage to 95$

* increased the orgList Code Coverage

* increased the orgList Code Coverage

* increased the orgList Code Coverage

* fixed image rendering in orgPost page

* increased the code coverage for orgList Component

* increased code coverage to 97% in orgList Component

* added Image to the post's card

* replaced external links with codebase default image

* replaced external links with codebase default image

* replaced blank image with the default image

* fixed the failing test

---------

Co-authored-by: saadabban76 <�[email protected]>

* Update pull-request-target.yml

* Update pull-request-target.yml

* Update pull-request-target.yml

* Update pull-request-target.yml

* Update pull-request-target.yml

* Update pull-request-target.yml

* Upgrade Yarn to NPM in Talawa Admin Project (#802)

* npm upgrade

* remove package lock

* Update push.yml

* empty

* upgrade yarn to npm

* fix docs

* fix scripts

* empty

* stop watch mode

* fix ymls

* empty

* fix scripts

* empty commit

* update scripts

* Redirect to dashboard on organization update (#816)

* Redirect to dashboard on organization update

* Minor Change

* Proper Testing Of Pagination In All List Views (#797)

* install faker package used for mocks in tests

* Test init for pagination

* install dependencies needed to implement certain tests

* add a data-testid attribute to their markup for use in tests

* add data-testid attributes to its markup being referenced from tests

* add test to ensure the number of organization displayed on the page corresponds to the option selected from rowsPerPage

* add prop to allow rendering of component in test environment

* add data-testid attributes to their markup being referenced from tests

* add data-testid attributes to its markup being referenced from tests

* add test to affirm that the number of persons displayed on the webpage is same with the selected option from rowsPerPage

* install dependencies for certain tests

* fix lint errors

* tests fix

* remove unnecessary dependencies

* lint fix

* tests fix update

* restore file to previous state

* empty commit

* tests fix update

* lint fix

* Conditional Usage of Google reCAPTCHA [Fixes #798] (#820)

* conditonal recaptcha

* Update INSTALLATION.md

* add tests

* fixed the issue of Mismatched passwords validation #722 (#824)

* fixed the issue of Mismatched passwords validation #722

* fixed lint code error

* Code Coverage @ 92%

* Replace Talawa Portal with Talawa Admin Portal #817 (#821)

* Update website title to Talawa Admin Portal in en

* Update website title in fr json file

* Update website title in sp json file

* Update website title in zh json file

* Update website title in hi json file

* Update the test in ListNavbar file

* Update the test in LoginPage.test file

* Create a function for the tex macher to make test

* Fix lint errors in the LandingPage test file

* Remove console.log in LandingPage test file

* Upgrade to use npm instead of yarn

* Delete yarn.lock file

* Fix lint errors

* Fix lint errors

* Update the heading in hi.json file

* Remove unused codes

* Fix lint error in LanfingPage file

* Correct the talawa_portal value in Fr json file

* Correct the talawa_portal value in sp json file

* Remove anused package in package.json file

* Organization Form Redirect Issue Prevents User Navigation, Affecting User Experience.  Issue #808 (#815)

* addressing issue #808

* finished - requested changes

* addressing warning

* Added:  event preview modal to view event details (#772)

* added event preview model

* added event preview model

* fixed formatting

* added test

* added test

* added test

* failing tests

* test

* tests

* Update workflow (#832)

* Workflow fix (#833)

* Update pull-requests.yml

* Update pull-requests.yml

* Update pull-requests.yml

* Code Coverage @ 91.0%

* Feature: Separation of ADMIN and SUPERADMIN functionalities (#826)

* Initial changes

* Commit to sync repo

* Made changes to OrgList

* Some fixes

* Minor fix

* Added tests for OrgList

* Added tests for OrgList

* Coverage fix

* Required changes added

* Made changes to OrgList

* Some fix

* Some fixes

* fixes test for OrgList

* Some more fixes

* Empty commit

* Lint fix

* Fixed test

* Lint fix

* Added Whitespace Validation to Organization and Post create forms (#838)

* Added whitespace check in Org Create form

* Added Tests

* Added Empty String check to OrgPost Form

* Added Tests for OrgPost

* fixed the issue of Toast msg is not available in all languages #740 (#845)

* fixed the issue of Toast msg is not available in all languages #740

* format issue

* Empty-Commit

* Fixed Org Update (#843)

* Prevent Admins and Super Admins from downgrading their own roles (#840)

* Code Cleanup

* Disabled Super Admins from changing their roles

* Added Tests

* Added more tests

* Improved Code Quality

* Revert "Fixed Org Update (#843)" (#847)

This reverts commit 53c3fef28ef986d63b1eec45663acb7d07cf1b8d.

* Fixed Organization Update and Translation (#849)

* Fixed Organization Update

* Minor Changes

* Success message updated

* Fail tests on warning [Priority Needed] (#856)

* fix warnings

Signed-off-by: Ansh Goyal <[email protected]>

* fix warnings

Signed-off-by: Ansh Goyal <[email protected]>

* fix warnings

Signed-off-by: Ansh Goyal <[email protected]>

* fix warnings

Signed-off-by: Ansh Goyal <[email protected]>

* fix warnings

Signed-off-by: Ansh Goyal <[email protected]>

* restore addonregister

Signed-off-by: Ansh Goyal <[email protected]>

---------

Signed-off-by: Ansh Goyal <[email protected]>

* Code duplicacy removed (#852)

* Code duplicacy removed

* Tests added

* Added comments

* Fixed failing tests

* Code formatted

* Unused packages removed, flag icons package updated to latest version (#860)

* Unused packages removed, flag icons updated to latest version

* Empty commit

* Changes in package-lock.json

* Fixes #848: limiting mulitple toast (#851)

* limiting-toast

* added test

* Organization People Filters Improved (#855)

* Added Filters to Users and Organizations Query

* Added Last Name Filter on User, Member and Admin

* Added Translation

* Fixed Failing Tests

* Added Tests for Filters

* Fixed Failing Tests

* Code Cleanup

* Fixed Tests

* Added Translation

* remove graphql-boost dep (#866)

Signed-off-by: Ansh Goyal <[email protected]>

* added UserNotFound component to the Roles page and improved the search (#865)

* changed the handleSearchByName function to search using target's value instead of searchByName variable

* updated the file Roles.tsx to take care of useState lag

* changed tests for suiting searchByName

* changed tests for searchByName including backspaces

* added tests for paginationList and changing rowsPerPage

* added tests to increase coverage in Roles.tsx

* changed the package.json file's test command

* changed PostNotFound component to be used as a reusable one and added it in Roles section and set languages option in locales folder

* changed formatting in locales changed files

* removed comments in Roles.tsx

* Empty commit

* renamed the PostNotFound component and modifiied relevant files

* changed Roles.tsx filtering

* empty commit

* reverted changes in package.json

* Improved signupform validations (#828)

* Improved signupform validations

* updated signup form validation to show all messages at once

* improved test coverage for LoginPage

* Fixed failing test

---------

Co-authored-by: Joyce Malicha <[email protected]>

* added tests for Search Bar in the Organization List Page of SUPERADMIN #827 (#867)

* added tests for Search Bar in the Organization List Page of SUPERADMIN #827

* added tests for Search Bar in the Organization List Page of SUPERADMIN #827

* Added Tests Previews (#868)

* Installed jest-preview

* Automatic Setup

* Fiixed Failing Test Command

* Added Basic CSS

* Added PostCSS Module

* Fixed MUI Styling

* Minor Changes

* Added cross-env to support windows

* Adaptar for React 17 and CSS Modules Mock

* Added Mocked Styles to Tests

* Documentatin Updated

* Fixed Failing Tests

* Minorr change in documentation

* Jest is now Dev Dependency

* Workflow Test

* Jest Module Path Updates

* Module Path Tese 2

* Github Workflow Fixed

* Removed Legacy Test Command

* Added Documentation to Debug Tests

* Fixed Documentation

* Docs Image Added To Repo

* Images Reorganization

* Organized Images

* Revert "Improved signupform validations (#828)" (#875)

This reverts commit 5820dd9ec05256551b48470c8880fcdc05452fda.

* Restored SearchBar Test for OrgList Page (#878)

* Restored searchBar test

* Lint fix

* Coverage fix

* Lint fix

* Some fixes

* Some fixes

* fixed the issue of Users filter to fetch corresponding Users to Organisation #701 (#853)

* fixed the issue of Users filter to fetch corresponding Users to Organisation #701

* removedd uunused variable

* fixed failing text

* fixed merged issue

* fixed lint error

* swap variable

* Revert "Restored SearchBar Test for OrgList Page (#878)" (#879)

This reverts commit 3d39c524d54e81853490d2d8a1f844ce67252365.

* Fixed crashing on error in Block/Unblock page (#862)

* Website crash fixed

* lint fixed

* Added tests for empty response from server

* More tests added

* Rerun tests empty commit

* Redirect on error functioning

* Fixed failing tests

* Testcase and Title added when users not found

* Linting fixed

* Typo fixed

* Fixed failing tests

* Linting fixed

* Added NotFound component in OrgPeople and changed Roles.tsx  (#882)

* changed the handleSearchByName function to search using target's value instead of searchByName variable

* updated the file Roles.tsx to take care of useState lag

* changed tests for suiting searchByName

* changed tests for searchByName including backspaces

* added tests for paginationList and changing rowsPerPage

* added tests to increase coverage in Roles.tsx

* changed the package.json file's test command

* changed PostNotFound component to be used as a reusable one and added it in Roles section and set languages option in locales folder

* changed formatting in locales changed files

* removed comments in Roles.tsx

* Empty commit

* renamed the PostNotFound component and modifiied relevant files

* changed Roles.tsx filtering

* empty commit

* reverted changes in package.json

* added NotFound component in OrgPeople, made changes in the locales files and made some changes to Roles too

* added NotFound component to OrgPeople, changerd locales files and changed Roles.tsx

* minor change

* Restored Search-Bar Test for OrgList Page (#880)

* Restored searchBar test

* Lint fix

* Coverage fix

* Lint fix

* Some fixes

* Some fixes

* Fixed Org Dashboard Error (#873)

* Fixed TypeError

* Minor Change

* Fixed Tests

* Added back logo512

* Fixed auth header getting copied on login (#890)

* fix user update  (#876)

* fix user detials update

* remove userType from update-user page

* fix failed test for userUpdate.test.tsx

* Removed and Replaced Ant Design from the project (#891)

* Fixed auth header getting copied on login

* Removed/Replaced  Ant Design from the project

* Fixed failing tests

* Removed comment

* Add today functionality in calendar (#897)

* Update countline.py

* Update pull-requests.yml

* Updated countlines.py to cover .spec. files (#900)

Co-authored-by: Peter Harrison <[email protected]>

* fixed the Inability to set user roles for specific organizations #556 (#898)

* fixed the Inability to set user roles for specific organizations #556

* added all language translation

* Revert "fixed the Inability to set user roles for specific organizations #556 (#898)" (#901)

This reverts commit 891d898eb5543116bb9042a6386b5a12e474159c.

* Documentation updated, Redundant css files removed (#896)

* Doc updated unused files removed

* Removed unused css files from setup tests

* Added small calendar in the events #887  (#903)

* added small clanedar

* added small clanedar

* fixed Code Coverage: Create tests for OrgSettings.tsx #396 (#905)

* remove redundancy from orgPostCard (#906)

* Revert "remove redundancy from orgPostCard (#906)" (#910)

This reverts commit d5ce4aa27ee241b0687f7db3d6acd1b62339562f.

* Block/Unblock Page Improvements (#885)

* Added Radio Buttons

* Optimized Queries

* Optimized Query and Added Last Name Filter

* Radio Button Working

* Added Translations

* Fixed Filter Name

* Fixed Debounce

* Fixed Asynchronous Debounce

* Added Tests

* Better Error and Loading State Handline

* Fixed Loader

* Fixed Loader

* Modulrised Mock Data

* Minor Change

* Fixed Tests

* Increase Coverage

* User query replaced with OrgMemberConnection

* Fixed Tests

* Code Coverage Increase

* Code Cov

* Fixed Translations

* Fixed Failing Tests

* fix in failing test (#913)

* Improve and Standardize Automated Linting Tests (#916)

* added linting rules

* added linting rules

* added linting rules

* Rename `data` variables to more readable name [Fixes #829] (#835)

* Refactor screens

* Update components

* Fix test

* Fix typecheck errors

* Increase test coverage

* Merge latest adminUI-Redesign into Develop (#927)

* Updated CODE_STYLE.md

* Updated CODE_STYLE.md (#917)

* Updated CODE_STYLE.md

* Import section update

* Upgrade and Migrate from Bootstrap 4 to Bootstrap 5 (#925)

* Updated CODE_STYLE.md

* Latest Boostrap v5.3.0 & react-bootstrap v2.7.4 installed

* Buttons replaced from normal ones to Bootstrap ones

* Import section update

* Error fixed for Buttons

* Language dropdowns and Change language

* InputBoxes & Checkboxes fixed and imported from BS

* Removed unused package popper.js

* Replaced react-modal with Bootstrap one in Login Page

* Modals converted to React Bootstrap one

* Completely replaced react-modal with react-bootstrap/Modal from the project

* Removed react-modal from the project

* Removed classbased modal and unused images

* Notification navbar migrated

* Modal migration

* Modal migration

* Modal migration done for OrgPostCard

* Empty commit to make workflow run

* Empty commit to make workflow run

* Empty commit to run the workflow

---------

Co-authored-by: Anwer Sayeed <[email protected]>

* Introduces API versioning check in CI/CD (#924)

* a random change

* husky precommit

* one more try

* one more try

* one more try

* one more try

* one more try

* one more try

* second try

* removed unwanted deps

* removed unwanted deps

* resolved the error

* updated variable name

* rerun test

* rerun test

* added test to pull.yml

* removed push check

* resolved conflict

* Update stale.yml

* Update CONTRIBUTING.md

* Merge talawa-user-portal into develop (#935)

* Create login and register page for user portal

* Lint public locales

* Create tests for login page components

* Add react import in tests

* Create organizations screen for user portal

* Fix failing tests and lint code

* fix failing tests

* Add tests for organization screen and componenets

* Fix non-null assertions

* Fix non-null assertions in organizations test

* Fix bootstrap migration changes

* Merge latest Admin UI Redesign into Develop (#934)

* Updated CODE_STYLE.md

* Updated CODE_STYLE.md (#917)

* Updated CODE_STYLE.md

* Import section update

* Upgrade and Migrate from Bootstrap 4 to Bootstrap 5 (#925)

* Updated CODE_STYLE.md

* Latest Boostrap v5.3.0 & react-bootstrap v2.7.4 installed

* Buttons replaced from normal ones to Bootstrap ones

* Import section update

* Error fixed for Buttons

* Language dropdowns and Change language

* InputBoxes & Checkboxes fixed and imported from BS

* Removed unused package popper.js

* Replaced react-modal with Bootstrap one in Login Page

* Modals converted to React Bootstrap one

* Completely replaced react-modal with react-bootstrap/Modal from the project

* Removed react-modal from the project

* Removed classbased modal and unused images

* Notification navbar migrated

* Modal migration

* Modal migration

* Modal migration done for OrgPostCard

* Empty commit to make workflow run

* Empty commit to make workflow run

* Empty commit to run the workflow

* Sass filed added with documentation

* Linting fixed

* Fixed the folder structure and naming convention

* Customised Bootstrap  (#929)

* Sass filed added with documentation

* Linting fixed

* Fixed the folder structure and naming convention

* Assets typo fixed

* Typo fix

* Merge conflict error fixed

---------

Co-authored-by: Anwer Sayeed <[email protected]>

* test PR for API versioning check (#932)

* testPR

* test2

* testing the change

* testing it again

* test--no-verify

* test--no-verify

* echo token

* test-again

* test-again

* test

* test

* read-only

* clone

* clone

* redesigned newsfeed (#939)

* Revert "redesigned newsfeed (#939)" (#943)

This reverts commit a645eca7cf2ce1335374f48b52335a293e344580.

* Make Talawa-Admin mutations in sync with the backend (#946)

* Initial change

* Redundant Notification removed

* Fixed linting and other issues

* Tests fixed

* Add Home Screen And People Screen along with other components (#940)

* Create login and register page for user portal

* Lint public locales

* Create tests for login page components

* Add react import in tests

* Create organizations screen for user portal

* Fix failing tests and lint code

* fix failing tests

* Add tests for organization screen and componenets

* Fix non-null assertions

* Fix non-null assertions in organizations test

* Fix bootstrap migration changes

* Add Home Screen along with other components

* Fix failing tests

* Add required tests and Offcanvas navbar

* Remove unused variables from tests

* Sync the Mutations with talawa-api

* Merge AdminUI-Redesign into Develop (#947)

* Updated CODE_STYLE.md

* Updated CODE_STYLE.md (#917)

* Updated CODE_STYLE.md

* Import section update

* Upgrade and Migrate from Bootstrap 4 to Bootstrap 5 (#925)

* Updated CODE_STYLE.md

* Latest Boostrap v5.3.0 & react-bootstrap v2.7.4 installed

* Buttons replaced from normal ones to Bootstrap ones

* Import section update

* Error fixed for Buttons

* Language dropdowns and Change language

* InputBoxes & Checkboxes fixed and imported from BS

* Removed unused package popper.js

* Replaced react-modal with Bootstrap one in Login Page

* Modals converted to React Bootstrap one

* Completely replaced react-modal with react-bootstrap/Modal from the project

* Removed react-modal from the project

* Removed classbased modal and unused images

* Notification navbar migrated

* Modal migration

* Modal migration

* Modal migration done for OrgPostCard

* Empty commit to make workflow run

* Empty commit to make workflow run

* Empty commit to run the workflow

* Sass filed added with documentation

* Linting fixed

* Fixed the folder structure and naming convention

* Customised Bootstrap  (#929)

* Sass filed added with documentation

* Linting fixed

* Fixed the folder structure and naming convention

* Assets typo fixed

* Typo fix

* Initial login page work

* Merge conflict error fixed

* Theming modified and Added Loader over every screen

* Fixed UI issue for navbar and login

* Fixed production bug

* Removed unused variable

* Tests fixed

* Added Change Language Btn dropdown

* Merge conflict fixed, merge latest develop into adminUI-redesign (#938)

* Merge latest adminUI-Redesign into Develop (#927)

* Updated CODE_STYLE.md

* Updated CODE_STYLE.md (#917)

* Updated CODE_STYLE.md

* Import section update

* Upgrade and Migrate from Bootstrap 4 to Bootstrap 5 (#925)

* Updated CODE_STYLE.md

* Latest Boostrap v5.3.0 & react-bootstrap v2.7.4 installed

* Buttons replaced from normal ones to Bootstrap ones

* Import section update

* Error fixed for Buttons

* Language dropdowns and Change language

* InputBoxes & Checkboxes fixed and imported from BS

* Removed unused package popper.js

* Replaced react-modal with Bootstrap one in Login Page

* Modals converted to React Bootstrap one

* Completely replaced react-modal with react-bootstrap/Modal from the project

* Removed react-modal from the project

* Removed classbased modal and unused images

* Notification navbar migrated

* Modal migration

* Modal migration

* Modal migration done for OrgPostCard

* Empty commit to make workflow run

* Empty commit to make workflow run

* Empty commit to run the workflow

---------

Co-authored-by: Anwer Sayeed <[email protected]>

* Introduces API versioning check in CI/CD (#924)

* a random change

* husky precommit

* one more try

* one more try

* one more try

* one more try

* one more try

* one more try

* second try

* removed unwanted deps

* removed unwanted deps

* resolved the error

* updated variable name

* rerun test

* rerun test

* added test to pull.yml

* removed push check

* resolved conflict

* Sass filed added with documentation

* Linting fixed

* Fixed the folder structure and naming convention

* Update stale.yml

* Typo fix

* Update CONTRIBUTING.md

* Merge talawa-user-portal into develop (#935)

* Create login and register page for user portal

* Lint public locales

* Create tests for login page components

* Add react import in tests

* Create organizations screen for user portal

* Fix failing tests and lint code

* fix failing tests

* Add tests for organization screen and componenets

* Fix non-null assertions

* Fix non-null assertions in organizations test

* Fix bootstrap migration changes

* Merge conflict error fixed

---------

Co-authored-by: Anwer Sayeed <[email protected]>
Co-authored-by: Kanishka Bansode <[email protected]>
Co-authored-by: Peter Harrison <[email protected]>
Co-authored-by: Noble Mittal <[email protected]>

* Random checkout

* Design ready for homescreen

* Login page 100% code c=coverage

* Login page icon adjustment

* Added translations

* Fixed the failing tests

* Revert to older version of loader

* Animation added fixed warnings

* Fixed accessability

* Mutations and Tests foxed

* Fixed coloring in UserPortal

* Tests fixed and ChangeLanguageDropdown used in UserLoginPage

* Linting Fixed

---------

Co-authored-by: Anwer Sayeed <[email protected]>
Co-authored-by: Kanishka Bansode <[email protected]>
Co-authored-by: Peter Harrison <[email protected]>
Co-authored-by: Noble Mittal <[email protected]>

* Merge latest adminUI-Redesign (#950)

* Initial Organizations screen done

* Removed yellow scrollbar

* Linting fixed

* Replaced images with svgs for logos

* Styling done for btnsContainer

* Better typechecking and readability

* Animated Drawer working

* Responsive page ready

* OrgCard responsive

* Fixed navbar issue and added webkit keyframes

* LeftDrawer ready

* Translations added

* Added shimmer loading effect

* Styling issue fixed

* Failing tests fixed for OrgList

* Removed unused vars

* Tests done for LeftDrawer

* Succesfully made component without causing any breaking change

* 100% Code coverage achieved for Requests Screen

* Fix alignment

* Roles screen UI done

* Role screen fixed with 100% test coverage

* Changing screen activeness fixed

* Unused vars and Typos fixed

* Language support added

* Linting and typos fixed

* Fixed failing tests for LeftDrawer

* Completed tests of AdminDashListCard with 100% code coverage

* OrgListCard done

* Finalised tests

* Requests user search made functional again !

* Fixed loading on refetch and UX on all screens

* OrgList failing errors fixed

* Fixed all failing tests

* Achieved 100% code coverage for OrgList.tsx

* Wrote tests and mod LeftDrawer for admins

* Minor ui issue fixed

* Fixed failing test

* UI bug dropdown

* Frontend insync with Backend attempt 1

* Introspection fail fix 1

* Introspection error fix 3

* Introspection error fix another attempt

* Another attempt

* [Talawa-user-portal] Add Settings and Donate Screen, along with other UI fixes (#953)

* Create login and register page for user portal

* Lint public locales

* Create tests for login page components

* Add react import in tests

* Create organizations screen for user portal

* Fix failing tests and lint code

* fix failing tests

* Add tests for organization screen and componenets

* Fix non-null assertions

* Fix non-null assertions in organizations test

* Fix bootstrap migration changes

* Add Home Screen along with other components

* Fix failing tests

* Add required tests and Offcanvas navbar

* Remove unused variables from tests

* Sync the Mutations with talawa-api

* Add Settings and Donate Screen

* Add multilingual support for the screens

* Add Event Project and Volunteer Management (#961)

* Add screens for adding and updating event projects

* Add delete operation for event projects and debug update

* Remove yarn.lock

* Begin testing

* Add display of tasks and functionality to add tasks

* Add modal for edit task

* Add UpdateTaskModal

* Add Delete Task Modal and volunteers display

* Add test for DeleteEventProjectModal.tsx

* Add tests for add and update event project modal

* Add screen for managing volunteers

* Add option to assign and remove volunteers

* Add tests for AddTaskModal.tsx

* Add tests for TaskListItem.tsx and DeleteTaskModal.tsx

* Complete testing for all Task Modals

* Add completed display to tasks

* Add tests for event dashboard

* Restructure files

* Add attendee management modal

* Add testing for EventAttendeeModal

* Move to 100% testing and wrapper for attendees modal

* Add basic checkIn functionality for users

* Add testing for CheckIn modals

* Introduce the tag generation into the repository

* Update linting rule and fix errors

* Remove alloted seat and alloted room

* Fix testing

* Correct some tests

* Migrate from attendees to registrants

* Migrate Event Project modals to new design

* Migrate registrants modals and checkin modals to new design with 100% test coverage

* Move task modals to new styles

* Move to 100% test coverage

* Admin workflow completed with updated package.json (#960)

* Merge latest AdminUI Redesign into develop (#956)

* Initial Organizations screen done

* Removed yellow scrollbar

* Linting fixed

* Replaced images with svgs for logos

* Styling done for btnsContainer

* Better typechecking and readability

* Animated Drawer working

* Responsive page ready

* OrgCard responsive

* Fixed navbar issue and added webkit keyframes

* LeftDrawer ready

* Translations added

* Added shimmer loading effect

* Styling issue fixed

* Failing tests fixed for OrgList

* Removed unused vars

* Tests done for LeftDrawer

* Succesfully made component without causing any breaking change

* 100% Code coverage achieved for Requests Screen

* Fix alignment

* Roles screen UI done

* Role screen fixed with 100% test coverage

* Changing screen activeness fixed

* Unused vars and Typos fixed

* Language support added

* Linting and typos fixed

* Fixed failing tests for LeftDrawer

* Completed tests of AdminDashListCard with 100% code coverage

* OrgListCard done

* Finalised tests

* Requests user search made functional again !

* Fixed loading on refetch and UX on all screens

* OrgList failing errors fixed

* Fixed all failing tests

* Achieved 100% code coverage for OrgList.tsx

* Wrote tests and mod LeftDrawer for admins

* Minor ui issue fixed

* Fixed failing test

* UI bug dropdown

* Frontend insync with Backend attempt 1

* Introspection fail fix 1

* Introspection error fix 3

* Introspection error fix another attempt

* Another attempt

* Fixed Default Animation on Organizations Screen

* Fixed typo

* Loading data from localstorage functional

* Fixed name conventions

* Fixed typo

* UI Fix

* Changed screen name

* Table Loader added

* Added LeftOrg drawer and Organization screen comp to Screens

* routesReducer tests fixed

* Redundant adminNavbar removed from project

* MemberDetail issue fixed

* Achieved 100% code coverage for LeftDrawerOrg, Added Empty div in images

* Fixed failing tests

* Fix tests

* Fixed warnings

* Linting fixes

* Linting issues fixed

* Achieved 100% code coverage for CollapsibleDropdown

* Achieved 100% CC on IconComponent and removed useless imports

* Achieved 100% cc for LeftDrawer Component

* Achieved 100% CC on SuperAdminScreen Component

* Fixed typo

* Integrated Event Dashboard

* Failing tests for LeftDrawer LeftDrawerOrg OrgList screen fixed

* Removed redundant code

* Removed useless imports

* Linting fixed

* Removed LeftDrawerOrg

* Update documentation

* copy-docs -to-talawa branch update to develop

* removed dependance of code copying from generate segment

* Update push.yml (#969)

* Update push.yml (#970)

* Feature Request: Adding a dialog to go to plugin store after an organization is created by the admin (#951)

* Add/ test for OrgPost.tsx

* fix:  org post back to default

* Added Dialog 2

* Updated Dialog UI

* Removed Extra code

* Updated Plugin store

* fix: warnings and solves #951  & #948

* fix: warnings and solves #951  & #948

* fix: warnings and solves #951  & #948

* Fix: UI Redesign

* fix: merge

* fix

* Update AddOnStore.tsx

* Fixed Merge Errors

* Add test: for OrgEntry

* Test 3

* fix test 4

* Merge latest AdminUI Redesign into develop (#972)

* Initial Organizations screen done

* Removed yellow scrollbar

* Linting fixed

* Replaced images with svgs for logos

* Styling done for btnsContainer

* Better typechecking and readability

* Animated Drawer working

* Responsive page ready

* OrgCard responsive

* Fixed navbar issue and added webkit keyframes

* LeftDrawer ready

* Translations added

* Added shimmer loading effect

* Styling issue fixed

* Failing tests fixed for OrgList

* Removed unused vars

* Tests done for LeftDrawer

* Succesfully made component without causing any breaking change

* 100% Code coverage achieved for Requests Screen

* Fix alignment

* Roles screen UI done

* Role screen fixed with 100% test coverage

* Changing screen activeness fixed

* Unused vars and Typos fixed

* Language support added

* Linting and typos fixed

* Fixed failing tests for LeftDrawer

* Completed tests of AdminDashListCard with 100% code coverage

* OrgListCard done

* Finalised tests

* Requests user search made functional again !

* Fixed loading on refetch and UX on all screens

* OrgList failing errors fixed

* Fixed all failing tests

* Achieved 100% code coverage for OrgList.tsx

* Wrote tests and mod LeftDrawer for admins

* Minor ui issue fixed

* Fixed failing test

* UI bug dropdown

* Frontend insync with Backend attempt 1

* Introspection fail fix 1

* Introspection error fix 3

* Introspection error fix another attempt

* Another attempt

* Fixed Default Animation on Organizations Screen

* Fixed typo

* Loading data from localstorage functional

* Fixed name conventions

* Fixed typo

* UI Fix

* Changed screen name

* Table Loader added

* Added LeftOrg drawer and Organization screen comp to Screens

* routesReducer tests fixed

* Redundant adminNavbar removed from project

* MemberDetail issue fixed

* Achieved 100% code coverage for LeftDrawerOrg, Added Empty div in images

* Fixed failing tests

* Fix tests

* Fixed warnings

* Linting fixes

* Linting issues fixed

* Achieved 100% code coverage for CollapsibleDropdown

* Achieved 100% CC on IconComponent and removed useless imports

* Achieved 100% cc for LeftDrawer Component

* Achieved 100% CC on SuperAdminScreen Component

* Fixed typo

* Integrated Event Dashboard

* Failing tests for LeftDrawer LeftDrawerOrg OrgList screen fixed

* Removed redundant code

* Removed useless imports

* Linting fixed

* Removed LeftDrawerOrg

* Dashboard screen ui almost ready

* Org Dash ready

* Block/Unblock screen ready

* Organization settings page ready

* Lang changes

* Page refresh on updating org removed

* OrgUpdate tests done

* OrgUpdate 100% test coverage achieved

* OrgSettings Tests done

* Organization Dashboard Cards done

* Organization Dashboard achieved 100% CC

* 100% CC achieved for BlockUser screen

* Finalised changes

* Small change

* Tests fixed

* Separate OrgSettings component made

* Linting fixed

* Formatting fixed

* Events screen and Post Comment Modal for Talawa-user-portal  (#963)

* Create login and register page for user portal

* Lint public locales

* Create tests for login page components

* Add react import in tests

* Create organizations screen for user portal

* Fix failing tests and lint code

* fix failing tests

* Add tests for organization screen and componenets

* Fix non-null assertions

* Fix non-null assertions in organizations test

* Fix bootstrap migration changes

* Add Home Screen along with other components

* Fix failing tests

* Add required tests and Offcanvas navbar

* Remove unused variables from tests

* Sync the Mutations with talawa-api

* Add Settings and Donate Screen

* Add multilingual support for the screens

* Add events screen without calendar view

* Add multilingual support to Events screen

* Fix failing tests due to merge

* Add Post Comment functionality

* Refactor Events tests

* Deprecate event registrants from query

* Update README.md

* Add My Tasks screen and Fix UI bugs [User Portal] (#978)

* Create login and register page for user portal

* Lint public locales

* Create tests for login page components

* Add react import in tests

* Create organizations screen for user portal

* Fix failing tests and lint code

* fix failing tests

* Add tests for organization screen and componenets

* Fix non-null assertions

* Fix non-null assertions in organizations test

* Fix bootstrap migration changes

* Add Home Screen along with other components

* Fix failing tests

* Add required tests and Offcanvas navbar

* Remove unused variables from tests

* Sync the Mutations with talawa-api

* Add Settings and Donate Screen

* Add multilingual support for the screens

* Add events screen without calendar view

* Add multilingual support to Events screen

* Fix failing tests due to merge

* Add Post Comment functionality

* Refactor Events tests

* Deprecate event registrants from query

* Add my tasks screen for user portal

* Remove unnecessary comments from test files

* Add Feedback UI Components to Talawa Admin (#980)

* Add feedback component

* Add tests for feedback modal

* Add handling for empty feedback

* Add Average Rating and Reviews component

* Add testing for all the added cards

* Fix tests and move to 100% coverage

* Add bugfix

* Add merge function to fix failing tests

* Add key definitons

* Change merge policy

* Add custom merge policy to all the Event Stat tests

* remove cache

* Migrate to a single query in the parent

* Adding Plugin Logic to the Talawa Mobile Web App (#976)

* Add/ test for OrgPost.tsx

* fix:  org post back to default

* Added Dialog 2

* Updated Dialog UI

* Removed Extra code

* Updated Plugin store

* fix: warnings and solves #951  & #948

* fix: warnings and solves #951  & #948

* fix: warnings and solves #951  & #948

* Fix: UI Redesign

* fix: merge

* fix

* Update AddOnStore.tsx

* Fixed Merge Errors

* Add test: for OrgEntry

* Test 3

* fix test 4

* chores: version changes

* Add: Initial Websocket setup on talawa mobile web

* Add: plugin logic

* Add: plugin logic

* removed extra

* removed extra

* Added: Tests

* fix

* Add Side Navigation to Event Dashboard (#981)

* Create left drawer for event dashboard

* Add basic styles to the event dashboard

* Fix button styling

* Add testing

* Add testing for the left event drawer

* Add 100% line coverage for all components

* Increase timeout for tests

* Move maximum rating in feedback from 10 to 5 [Fixes #990] (#987)

* Move maximum rating in feedbacks from 10 to 5

* Fix failing tests

* Add chat screen to talawa-user-portal (#986)

* Create login and register page for user portal

* Lint public locales

* Create tests for login page components

* Add react import in tests

* Create organizations screen for user portal

* Fix failing tests and lint code

* fix failing tests

* Add tests for organization screen and componenets

* Fix non-null assertions

* Fix non-null assertions in organizations test

* Fix bootstrap migration changes

* Add Home Screen along with other components

* Fix failing tests

* Add required tests and Offcanvas navbar

* Remove unused variables from tests

* Sync the Mutations with talawa-api

* Add Settings and Donate Screen

* Add multilingual support for the screens

* Add events screen without calendar view

* Add multilingual support to Events screen

* Fix failing tests due to merge

* Add Post Comment functionality

* Refactor Events tests

* Deprecate event registrants from query

* Add my tasks screen for user portal

* Remove unnecessary comments from test files

* Add chat screen along with components

* Add mui/system package for x-chart support

* Add chat screen tests and fix other bugs

* Update issue.yml

* Update stale.yml

* Merge latest AdminUI Redesign into Master (#1006)

* Pagination Done for Orglist

* Fixed warnings

* Infinite scroll and search working for Requests screen

* Simplified the code

* Infinite scroll enabled and functioning on OrgList Requests and Users screen

* FIxed warning

* Fixed typo

* Fixed bug

* Joined and Blockedbyorgs screen and mdoal ready

* Tables ready !

* Remove user from organization functionality working well

* Update user role in organization feature ready

* Minor changes

* Done with tests on OrgList

* Done with testss of Requests screen

* 100% CC achieved for Users screen

* Main tests done for UserTableItem

* 100% Code Coverage Achieved for UserTableItem

* Removed Redundant Landing Page

* 100% CC achieved for TableLoader

* Translation added for Users Screen

* Translation done for Requests screen

* Translation done for dashboard screen

* Linting and warnings fixed

* Improved login page

* UI Done for Forgot Password Screen

* Forgot Password Screen Tests done!

* Fixed all pending tests

* Better message for btns and coloring

* Linting issues fixed

* Fixed code styles

* SUPPRESSED UNKNOWN ERROR

* Fixed formatting

* Updated typoed message

* Fixed failing tests accompanying typo

* fix createEvent to close modal and show events without refresh (#1014)

* fix: Ensure Full Visibility of Logo on 404 Error Page (#1018)

- Adjusted the positioning of the logo on the 404 error page to ensure full visibility.
- Implemented CSS modifications to prevent the logo from being covered or cut off.
- Tested the changes by navigating to various undefined endpoints, confirming that the logo is now displayed
  correctly on the 404 error page.

This commit addresses the bug by ensuring the proper display of the logo on the 404 error page,
enhancing the user experience.

Fixes #1016

Signed-off-by: Akhilender <[email protected]>

* Implemented featurs for Postfeed Management (#982)

* redesigned newsfeed

* added test

* newsfeed management

* pinned post

* postfeed management

* pin unpin tag and video control

* changes part 2

* newsfeed changes

* changes in Card Preview of newsfeed

* changes in Card Preview of newsfeed

* testing phase 1

* translation

* tests

* tests

* merged intto develop

* test

* Added query

* Update pull-requests.yml

* update and delete buttons of event modal are now working (#1051)

* update and delete buttons of event modal are now working

* fixed the naming conventions and style of the modal

* Dynamic dashboard Enhancements (#979)

* Dynamic Organization Dashboard

* Dynamic Organization Dashboard

* refined organization dashboard

* Update src/utils/handleLatestFeed.ts

Co-authored-by: Noble Mittal <[email protected]>

* fixed inconsistent casing

* fixed org dashboard test

* fixed org dashboard test

* revert previous commit

* final changes

* final changes

---------

Co-authored-by: Noble Mittal <[email protected]>

* Fix dashboard items (#1007)

* Dashboard items are working now.

* added variables for links -fix dashboard items

* Added variables for links -fix dashboard items.

* made the changes as said

* Removed : string from variable assignment.

* remove repititive code and resolved falling tests

* Fix repeating code and falling tests.

* Resolved some more falling tests

* write test for missed lines

* Fix event creation issue with white spaces. (#1025)

* fix event creation with white spaces

* Add test for empty input values

* chore: fix unit test (#1052)

* Fix layout distortion due to untruncated title description of events. (#1049)

* Fix layout distortion due to untruncated title description of events

* Add test

* add test for LeftDrawerEvent.tsx

* fixed some tests

* add test complete

* test: SecuredRouteForUser component 100% Test Coverage and fixed uncovered lines (#1048)

* SecuredRouteForUser test case added

* Fixed Linting Errors

* Update SecuredRouteForUser.test.tsx

* Update SecuredRouteForUser.test.tsx

* linting fix

* Update SecuredRouteForUser.test.tsx

* Update SecuredRouteForUser.test.tsx

* Fix incorrect toast Notification. (#1053)

* correct toast notification for TableRow.tsx with full test coverage

* Add correct toast with full code  coverage

* Add correct toast for deleteEventProjectModal.tsx with full test coverage

* Add correct toast for UpdateEventProjectModal.tsx with full test coverage

* Add correct toast for EventRegistrantsModal.tsx and full test  coverage.

* Add correct toast for AddTaskModal.tsx with full test coverage

* Add correct toast for UpdateTaskModal.tsx with full test coverage

* minor fix

* Add correct toast to EventRegistrantsModal.tsx

* fix EventRegitrantsModal.tsx

* created a return button on event dashboard (#1057)

* test: Loader Component 100% Test Coverage and Fix Uncovered Lines (#1047)

* test: Achieve 100% Test Coverage and Fix Uncovered Lines

- Improved the test coverage for the Loader component, addressing the previously uncovered lines and ensuring that all tests pass successfully.
- Added a test to ensure that the component renders correctly with a custom 'sm' size. I verified that both the spinner-wrapper and
  spinner elements are present and that the correct class is applied.
- Added a test to ensure that the component renders correctly with a 'lg' size. I verified that the spinner element has the appropriate class.
- Added a test to ensure that the component renders correctly with an 'xl' size. I verified that the spinner element has the correct class.

With these new tests, I now have 100% test coverage, and there are no more uncovered lines. The Loader component is thoroughly tested for
different size scenarios, and all tests pass successfully.

Signed-off-by: Akhilender <[email protected]>

* Fixed linting in Loader component

Signed-off-by: Akhilender <[email protected]>

* Test: Increasing the test level

- Trying to meet the code coverage level for Loader component.

Signed-off-by: Akhilender <[email protected]>

* Fixed Linting

Signed-off-by: Akhilender <[email protected]>

* fix: Linting

Signed-off-by: Akhilender <[email protected]>

* Improving test coverage for Loader Component

- Fixed lint errors

Signed-off-by: Akhilender <[email protected]>

* test: Improving the tests on the Loader Component

- Added a new aspect in the test-case1

Signed-off-by: Akhilender <[email protected]>

* Fixed: Removed runtime-generated classes from testing

- Eliminated all checks for classes associated with bootstrap components assigned at runtime.
- Recognized that validating classes assigned during runtime is inappropriate.

Signed-off-by: Akhilender <[email protected]>

---------

Signed-off-by: Akhilender <[email protected]>

* Simulated Test Database (#984)

* Dynamic Organization Dashboard

* Dynamic Organization Dashboard

* Sample Org Implementation

* removed unnecessary changes

* removed unnecessary svgs

* removed unnecessary import

* added appropriate button style

* fixed OrgListCard tests

* Fixed OrgList and OrgListCard Tests

* Removed Unnecessary 'container' Variable

* Added Missing Translations and removed unused variable

* Fixed event check in management not updating automatically bug (#1062)

* fixed the event checkIn bug

* fixed the failing test

* fixed the CheckInWrapper test

* Fix user profile buttons layout and added form validation (#1064)

* Fix user profile buttons layout and added form validation

* Fix falling tests and warnings

* Add test for missed lines

* fix falling tests

* test: Achieved 100% test coverage and fixed uncovered lines (#1068)

* test: Achieved 100% test coverage and fixed uncovered lines

- Improved the test coverage for the User-Password-Update component, addressing the previously uncovered lines and ensuring that all tests pass
  successfully.
- Added two new tests
  1. Empty Password Field Test:
   - The first test ensures that an error is displayed when attempting to save changes with an empty password field.

  2. Mismatched New and Confirm Passwords Test
   - The second test covers the scenario where the new and confirm password fields do not match.

With these new tests, I now have 100% test coverage, and there are no more uncovered lines.

Signed-off-by: Akhilender <[email protected]>

* Altered the formData

- Altered the formData to make sure all are related to the organization name.

Signed-off-by: Akhilender <[email protected]>

---------

Signed-off-by: Akhilender <[email protected]>

* created test for src/components/UserPortal/EventCard/EventCard.tsx (#1079)

* created test for eventCard of User portal

* corrected the start and end time

* Feature request: Adding advertisement screen (#994)

* Add/ test for OrgPost.tsx

* fix:  org post back to default

* Added Dialog 2

* Updated Dialog UI

* Removed Extra code

* Updated Plugin store

* fix: warnings and solves #951  & #948

* fix: warnings and solves #951  & #948

* fix: warnings and solve…
* Changes position and text of all organization button

* Made changes to the routesReducer.test file

* Made changes in IconComponent.test file

* Fetched changes from main repo

* Fixed unnecessary changes

---------

Co-authored-by: Aditya Agarwal <[email protected]>
* Added Base branch check to main

* Deleted all files in the main branch in anticipation of merging develop into main cleanly

* Merge develop to main

* Deleted all main files

* Merged develop into main
* Deleted all files in the main branch in anticipation of merging develop into main cleanly

* Merge develop into main
* Deleted all files in the main branch in anticipation of merging develop into main cleanly

* Merge develop into main

* Deleted all files in the main branch in anticipation of merging develop into main cleanly

* Merge develop into main
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.5 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](follow-redirects/follow-redirects@v1.15.5...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [tar](https://github.com/isaacs/node-tar) from 6.1.15 to 6.2.1.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](isaacs/node-tar@v6.1.15...v6.2.1)

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

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
)

Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 40 to 41.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](tj-actions/changed-files@v40...v41)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](expressjs/express@4.18.2...4.19.2)

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

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ejs](https://github.com/mde/ejs) from 3.1.9 to 3.1.10.
- [Release notes](https://github.com/mde/ejs/releases)
- [Commits](mde/ejs@v3.1.9...v3.1.10)

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

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Deleted all files in the main branch in anticipation of merging develop into main cleanly

* Merge develop into main

---------

Co-authored-by: Peter Harrison <[email protected]>
* 20240727112607 Deleted all files in the main branch in anticipation of merging develop into main cleanly

* 20240727112842 Merge develop into main
* 20240929102850 Deleted all files in the main branch in anticipation of merging develop into main cleanly

* 20240929103238 Merge develop into main
)

Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 40 to 41.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](tj-actions/changed-files@v40...v41)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dependabot bot and others added 6 commits September 29, 2024 11:32
Bumps [rollup](https://github.com/rollup/rollup) from 4.21.3 to 4.22.5.
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md)
- [Commits](rollup/rollup@v4.21.3...v4.22.5)

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

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* 20241114065242 Deleted all files in the main branch in anticipation of merging develop into main cleanly

* 20241114065332 Merge develop into main
Copy link
Contributor

coderabbitai bot commented Dec 27, 2024

Walkthrough

This pull request introduces a comprehensive set of configuration and workflow updates for the Talawa Admin project. The changes span multiple areas including project setup, environment configuration, GitHub workflows, localization, and development tools. Key modifications include adding a new .coderabbit.yaml configuration, updating ESLint and Prettier settings, introducing localization files for multiple languages, and restructuring various project configuration files.

Changes

File/Directory Change Summary
.coderabbit.yaml New configuration file for YAML language server with review settings
.env.example Added environment variables for local development
.eslintrc.json Enhanced TypeScript and linting configurations
.github/workflows/ Introduced multiple new workflow files for CI/CD, code quality, and automation
public/locales/ Added localization files for English, French, Hindi, Spanish, and Chinese
package.json Updated project metadata, dependencies, and scripts
config/ Added Vite and Babel configuration files

Sequence Diagram

sequenceDiagram
    participant Dev as Developer
    participant Repo as Repository
    participant CI as GitHub Actions
    participant CodeRabbit as CodeRabbit AI

    Dev->>Repo: Commits changes
    Repo->>CI: Triggers workflows
    CI->>CI: Runs linting
    CI->>CI: Runs tests
    CI->>CodeRabbit: Requests review
    CodeRabbit->>Repo: Generates review comments
    CodeRabbit->>Dev: Provides PR insights
Loading

Possibly related PRs

Suggested Reviewers

  • varshith257
  • palisadoes

Poem

🐰 A Rabbit's Ode to Configuration 🛠️

In lines of YAML, workflows dance,
Linting, testing - a code romance!
Locales bloom in languages bright,
Configuration takes elegant flight

From ESLint to Prettier's embrace,
Our project finds its perfect grace! 🌈

Tip

CodeRabbit's docstrings feature is now available as part of our Early Access Program! Simply use the command @coderabbitai generate docstrings to have CodeRabbit automatically generate docstrings for your pull request. We would love to hear your feedback on Discord.


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR. (Beta)
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

Our Pull Request Approval Process

Thanks for contributing!

Testing Your Code

Remember, your PRs won't be reviewed until these criteria are met:

  1. We don't merge PRs with poor code quality.
    1. Follow coding best practices such that CodeRabbit.ai approves your PR.
  2. We don't merge PRs with failed tests.
    1. When tests fail, click on the Details link to learn more.
    2. Write sufficient tests for your changes (CodeCov Patch Test). Your testing level must be better than the target threshold of the repository
    3. Tests may fail if you edit sensitive files. Ask to add the ignore-sensitive-files-pr label if the edits are necessary.
  3. We cannot merge PRs with conflicting files. These must be fixed.

Our policies make our code better.

Reviewers

Do not assign reviewers. Our Queue Monitors will review your PR and assign them.
When your PR has been assigned reviewers contact them to get your code reviewed and approved via:

  1. comments in this PR or
  2. our slack channel

Reviewing Your Code

Your reviewer(s) will have the following roles:

  1. arbitrators of future discussions with other contributors about the validity of your changes
  2. point of contact for evaluating the validity of your work
  3. person who verifies matching issues by others that should be closed.
  4. person who gives general guidance in fixing your tests

CONTRIBUTING.md

Read our CONTRIBUTING.md file. Most importantly:

  1. PRs with issues not assigned to you will be closed by the reviewer
  2. Fix the first comment in the PR so that each issue listed automatically closes

Other

  1. 🎯 Please be considerate of our volunteers' time. Contacting the person who assigned the reviewers is not advised unless they ask for your input. Do not @ the person who did the assignment otherwise.
  2. Read the CONTRIBUTING.md file make

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Congratulations on making your first PR! 🎊 If you haven't already, check out our Contributing Guidelines and PR Reporting Guidelines to ensure that you are following our guidelines for contributing and creating PR.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 23

🧹 Nitpick comments (61)
scripts/githooks/update-toc.js (2)

8-10: Consider adding a try/catch block to handle potential errors.
Using execSync(command) without handling errors might cause the script to terminate if markdown-toc fails. By wrapping it in a try/catch, you can log meaningful messages and proceed or exit gracefully if desired.

 markdownFiles.forEach((file) => {
   const command = `markdown-toc -i "${file}" --bullets "-"`;
-  execSync(command, { stdio: 'inherit' });
+  try {
+    execSync(command, { stdio: 'inherit' });
+  } catch (error) {
+    console.error(`Failed updating TOC in ${file}:`, error.message);
+  }
 });

11-12: Remove extra empty line as suggested by ESLint.
Removing the redundant empty line aligns the file with Prettier or ESLint formatting rules.

  execSync(command, { stdio: 'inherit' });

- 
});
🧰 Tools
🪛 eslint

[error] 11-12: Delete ··⏎

(prettier/prettier)

.github/workflows/stale.yml (1)

18-21: Fix trailing spaces while maintaining correct permissions

The permissions configuration is appropriate for managing stale items.

permissions:
  issues: write
- pull-requests: write  
-   
+ pull-requests: write
🧰 Tools
🪛 yamllint (1.35.1)

[error] 20-20: trailing spaces

(trailing-spaces)


[error] 21-21: trailing spaces

(trailing-spaces)

public/locales/en/errors.json (3)

2-2: Fix punctuation in API unavailability message

Remove the extra period after the exclamation mark.

-  "talawaApiUnavailable": "Talawa-API service is unavailable!. Is it running? Check your network connectivity too.",
+  "talawaApiUnavailable": "Talawa-API service is unavailable! Is it running? Check your network connectivity too.",

5-5: Standardize capitalization in authorization message

The word "Authorised" should be lowercase for consistency with standard English.

-  "notAuthorised": "Sorry! you are not Authorised!",
+  "notAuthorised": "Sorry! You are not authorised!",

10-10: Fix spelling error in loading message

"occured" should be spelled as "occurred".

-  "errorLoading": "Error occured while loading {{entity}} data"
+  "errorLoading": "Error occurred while loading {{entity}} data"
DOCUMENTATION.md (3)

18-19: Consider using sequential numbering for better readability

Both items in the list use "1." as the number. While Markdown will render this correctly, using sequential numbers (1. and 2.) improves readability in the source file.

-1. ***Inline within the repository's code files***
-1. ***In our `talawa-docs` repository***
+1. ***Inline within the repository's code files***
+2. ***In our `talawa-docs` repository***

31-32: Improve preposition usage

Consider using "to" instead of "in" when referring to adding files to a repository.

-***PLEASE*** do not add markdown files in this repository. Add them to `talawa-docs`!
+***PLEASE*** do not add markdown files to this repository. Add them to `talawa-docs`!
🧰 Tools
🪛 LanguageTool

[uncategorized] ~32-~32: The preposition “to” seems more likely in this position.
Context: ... PLEASE do not add markdown files in this repository. Add them to `talawa-do...

(AI_EN_LECTOR_REPLACEMENT_PREPOSITION)


1-32: Consider adding documentation standards and review process sections

The documentation guide would benefit from additional sections covering:

  1. Documentation style guide and standards
  2. Process for reviewing and merging documentation changes
  3. Guidelines for inline code documentation

This would help maintain consistency and quality across all documentation contributions.

Would you like me to provide a template for these additional sections?

🧰 Tools
🪛 Markdownlint (0.37.0)

25-25: null
Bare URL used

(MD034, no-bare-urls)

🪛 LanguageTool

[grammar] ~25-~25: The modal verb ‘should’ requires the verb’s base form.
Context: ...f docs.talawa.io should automatically launched in your browser at http://localhost:300...

(MD_BASEFORM)


[grammar] ~26-~26: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ...ttp://localhost:3000/ 1. Add/modify the markdown documents to the docs/ directory of t...

(MARKDOWN_NNP)


[uncategorized] ~32-~32: The preposition “to” seems more likely in this position.
Context: ... PLEASE do not add markdown files in this repository. Add them to `talawa-do...

(AI_EN_LECTOR_REPLACEMENT_PREPOSITION)

scripts/custom-test-env.js (2)

4-7: Clarify TSDoc usage (false positive in some JavaScript contexts)
The static analysis hint indicates a TSDoc tag issue related to @pdfme. Since this file is JavaScript (.js) and not TypeScript, the TSDoc check may yield a false positive. Consider disabling or adjusting TSDoc rules for JavaScript files if you intend to keep comments in this style.

🧰 Tools
🪛 eslint

[error] 5-5: tsdoc-undefined-tag: The TSDoc tag "@pdfme" is not defined in this configuration

(tsdoc/syntax)


9-15: Consider explicit return types in TypeScript projects
Although this file uses .js extension, if you migrate to TypeScript, keep in mind that some lint rules require explicit return types on public methods or lifecycle hooks.

🧰 Tools
🪛 eslint

[error] 9-9: Missing return type on function.

(@typescript-eslint/explicit-function-return-type)


[error] 9-9: Missing return type on function.

(@typescript-eslint/explicit-module-boundary-types)

scripts/__mocks__/@pdfme/generator.ts (1)

3-22: Validate random content generation for test predictability
Using random bytes (Math.random()) can occasionally cause test fragility if the test environment expects deterministic behaviors. You might consider seeding a pseudo-random generator or offering a predictable test mode to avoid flaky tests.

scripts/__mocks__/@pdfme/generator.test.ts (1)

1-47: Well-structured test cases, but consider coverage for typical usage
The test suite thoroughly checks for empty template or inputs. Consider adding a scenario representing a realistic non-empty template and inputs to confirm the generated Uint8Array has an expected minimum length or structure.

jest.config.js (2)

3-3: Consider re-evaluating coverage exclusions.

Excluding src/index.tsx from coverage is a common approach, but if this file has important initialization or triggers UI states that require testing, you might consider partial coverage for critical logic.


33-34: Address Prettier formatting issues.

Static analysis indicates a missing comma or extra whitespace on these lines. Ensure consistent formatting to avoid lint errors.

- '\\.svg\\?react$': '<rootDir>/scripts/__mocks__/fileMock.js'
- '\\.svg$': '<rootDir>/scripts/__mocks__/fileMock.js' 
+ '\\.svg\\?react$': '<rootDir>/scripts/__mocks__/fileMock.js',
+ '\\.svg$': '<rootDir>/scripts/__mocks__/fileMock.js',
🧰 Tools
🪛 eslint

[error] 33-33: Delete ·

(prettier/prettier)


[error] 34-34: Insert ,

(prettier/prettier)

public/locales/hi/common.json (2)

86-87: Consider consistent Hindi terminology for "session"

The word "सत्र" (satra) is used for "session". While technically correct, consider if a more commonly understood term would be better for the target users.

Consider adding tooltips or help text for technical terms like "सत्र" if they're not commonly understood by all users.


54-67: Standardize key naming convention

There's an inconsistency in the key naming pattern:

  • Some keys use spaces and PascalCase: "My Organizations", "Plugin Store"
  • Others use camelCase: "talawaAdminPortal"

Consider standardizing all keys to camelCase:

-  "My Organizations": "मेरे संगठन",
-  "Plugin Store": "प्लगइन स्टोर",
+  "myOrganizations": "मेरे संगठन",
+  "pluginStore": "प्लगइन स्टोर",
.github/workflows/eslint_disable_check.py (2)

61-61: Rename unused dirs variable
Static analysis indicates that dirs is unused. Consider renaming it to _dirs to clarify that it is intentionally unused.

-for root, dirs, files in os.walk(os.path.join(directory, 'src')):
+for root, _dirs, files in os.walk(os.path.join(directory, 'src')):
🧰 Tools
🪛 Ruff (0.8.2)

61-61: Loop control variable dirs not used within loop body

Rename unused dirs to _dirs

(B007)


91-122: Validate directory usage before walking the file system
Overall, the script flow is solid. One minor recommendation is to confirm that .env or other environment-specific config files do not inadvertently affect the directory or file path resolution. This is especially relevant if the script is extended to handle more directories in the future.

setup.ts (1)

45-48: Be consistent in file reading/writing approach
You read the file asynchronously (fs.readFile) but write synchronously (fs.writeFileSync). Mixing async and sync operations can introduce subtle race conditions. Consider using either fully synchronous or fully asynchronous methods in one block.

- fs.readFile('.env', 'utf8', (err, data) => {
-   const result = data.replace(`PORT=${port}`, `PORT=${customPort}`);
-   fs.writeFileSync('.env', result, 'utf8');
- });
+ const data = fs.readFileSync('.env', 'utf8');
+ const result = data.replace(`PORT=${port}`, `PORT=${customPort}`);
+ fs.writeFileSync('.env', result, 'utf8');
.husky/post-merge (1)

1-4: Validate lockfile consistency after installing
Running npm install upon merging changes in package.json is a good step. However, you might also want to check the lockfile (e.g., package-lock.json or yarn.lock) to ensure consistency and avoid potential dependency mismatches.

.husky/pre-commit (1)

4-10: Cautious usage of git add .
Running git add . after all commands may add unintended local changes to your commit. To maintain precise commits, consider adding only changed files that are relevant to the formatting, linting, or type-check tasks.

config/vite.config.ts (1)

24-29: Port conflict check.
By default, many dev setups assume port 3000. Shifting to 4321 might conflict with other processes. Consider making the port configurable via environment variables to avoid collisions.

  server: {
    open: true,
-   port: 4321,
+   port: parseInt(process.env.PORT || '4321', 10),
  },
.github/workflows/check-tsdoc.js (1)

49-66: Suggest adding unit tests or logs.
Currently, if files are missing TSDoc, the script logs the filenames and exits with code 1. Consider adding logs or test coverage to confirm blocked merges when TSDoc is missing, ensuring full visibility in CI.

scripts/githooks/check-localstorage-usage.js (2)

28-32: Potential edge case
When no files are returned by git diff --cached --name-only (e.g., no staged changes), your result.trim().split('\n') might produce ['']. Consider handling an empty string gracefully to avoid processing an empty filename.

 const lines = result.trim()
 if (!lines) {
   return []
 }
 return lines.split('\n')

89-92: Address Prettier's missing comma warnings
Prettier warns about missing commas here. Add trailing commas in multi-line statements or objects if you want to align with Prettier’s standard style.

console.info(
-  '\x1b[34m%s\x1b[0m',
-  '\nInfo: Consider using custom hook functions.'
+  '\x1b[34m%s\x1b[0m',
+  '\nInfo: Consider using custom hook functions.',
);
🧰 Tools
🪛 eslint

[error] 89-89: Insert ,

(prettier/prettier)


[error] 92-92: Insert ,

(prettier/prettier)

.github/workflows/talawa_admin_md_mdx_format_adjuster.py (1)

45-65: Potential improvement in partial writes.
You rewrite the entire file if content changes. For large files, partial or streaming writes could be considered, though it might be overkill for this scenario.

.github/workflows/compare_translations.py (2)

79-89: Avoid repeated checks for missing vs. extra keys.

You're already comparing both default_translation and other_translation. Consider extracting this logic into a helper function for clarity, or merge the checks into a single loop with a unified message format.


60-76: Docstring clarity & consistent style.

The docstring outlines the function usage, but does not clarify the handling of nested or deeply structured keys. Consider mentioning whether nested keys are supported or if the function expects flattened structures only.

.github/workflows/countline.py (2)

70-79: Revisit extension filtering logic.

Currently, the _valid_extension method excludes only .css, .jpg, .png, and .jpeg. If you intend to focus on code files, consider switching to an allow-list approach (e.g., only .ts, .js, .dart, etc.) to decrease the chance of missing other non-code files.


284-289: Keep line count message user friendly.

The error message is informative but might clash with a CI environment. You could shorten the message to be more machine-parseable or make it consistent with your other logs.

.github/ISSUE_TEMPLATE/bug-report.md (2)

28-28: Wrap bare URLs for improved Markdown compliance.

Wrapping the link in angle brackets or using Markdown link syntax helps satisfy MD034:

-https://github.com/PalisadoesFoundation/talawa/issues/359
+<https://github.com/PalisadoesFoundation/talawa/issues/359>

33-33: Use a heading or subheading rather than emphasis.

To fix MD036, you can replace the emphasis with a heading:

-**Potential internship candidates**
+## Potential internship candidates
🧰 Tools
🪛 Markdownlint (0.37.0)

33-33: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

.github/ISSUE_TEMPLATE/feature-request.md (2)

28-28: Wrap bare URLs for improved Markdown compliance.

Same suggestion to fix MD034 by using angle brackets or Markdown link syntax:

-https://github.com/PalisadoesFoundation/talawa/issues/359
+<https://github.com/PalisadoesFoundation/talawa/issues/359>
🧰 Tools
🪛 Markdownlint (0.37.0)

28-28: null
Bare URL used

(MD034, no-bare-urls)


25-25: Use a heading or subheading rather than emphasis.

To satisfy MD036, convert the emphasized text to a heading:

-**Potential internship candidates**
+## Potential internship candidates
🧰 Tools
🪛 Markdownlint (0.37.0)

25-25: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

.github/pull_request_template.md (1)

22-25: Enhance issue reference format

The current format could be improved to ensure consistent issue linking.

-**Issue Number:**
-
-Fixes #<!--Add related issue number here.-->
+**Issue Number:** #<!--Add issue number here-->
+
+Resolves #<!--Add issue number here-->
.github/workflows/push.yml (1)

55-61: Improve Codecov configuration

The current Codecov configuration could be enhanced for better reliability.

       uses: codecov/codecov-action@v4
       with:
         token: ${{ secrets.CODECOV_TOKEN }}
         verbose: true
-        fail_ci_if_error: false
+        fail_ci_if_error: true
         name: '${{env.CODECOV_UNIQUE_NAME}}'
+        files: ./coverage/lcov.info
+        flags: unittests
.github/workflows/README.md (2)

24-24: Fix typo: Remove duplicate word "to"

The line contains a duplicate word "to".

-      1. Place all actions related to to this in the `pull-request-target.yml` file.
+      1. Place all actions related to this in the `pull-request-target.yml` file.
🧰 Tools
🪛 LanguageTool

[duplication] ~24-~24: Possible typo: you repeated a word
Context: ...ors: 1. Place all actions related to to this in the pull-request-target.yml f...

(ENGLISH_WORD_REPEAT_RULE)


35-35: Fix abbreviation format

The abbreviation "eg." should be written as "e.g." with two periods.

-1. Jobs only work correctly if they have a dedicated file (eg. `CodeQL`)
+1. Jobs only work correctly if they have a dedicated file (e.g. `CodeQL`)
🧰 Tools
🪛 LanguageTool

[uncategorized] ~35-~35: The abbreviation “e.g.” (= for example) requires two periods.
Context: ...orrectly if they have a dedicated file (eg. CodeQL) ## Scripts Follow these gui...

(E_G)

.github/workflows/issue.yml (1)

42-55: Optimize label checking logic

The current implementation uses multiple reduce operations and duplicate API calls. Consider simplifying the logic.

-            if(labels.data.reduce((a, c)=>a||["dependencies"].includes(c.name), false))
-              await github.rest.issues.addLabels({
-                owner: context.repo.owner,
-                repo: context.repo.repo,
-                issue_number: context.issue.number,
-                labels: ["good first issue", "security"]
-              });
-            else if(labels.data.reduce((a, c)=>a||["security", "ui/ux"].includes(c.name), false))
-              await github.rest.issues.addLabels({
-                owner: context.repo.owner,
-                repo: context.repo.repo,
-                issue_number: context.issue.number,
-                labels: ["good first issue"]
-              });
+            const labelNames = labels.data.map(label => label.name);
+            const newLabels = new Set();
+            
+            if (labelNames.includes('dependencies')) {
+              newLabels.add('good first issue');
+              newLabels.add('security');
+            } else if (labelNames.some(name => ['security', 'ui/ux'].includes(name))) {
+              newLabels.add('good first issue');
+            }
+            
+            if (newLabels.size > 0) {
+              await github.rest.issues.addLabels({
+                ...apiParams,
+                labels: Array.from(newLabels)
+              });
+            }
ISSUE_GUIDELINES.md (3)

5-5: Fix grammar: Use "an" before "issues"

The article "a" should be "an" before "issues".

-In order to give everyone a chance to submit a issues reports and contribute to the Talawa project
+In order to give everyone a chance to submit an issue report and contribute to the Talawa project
🧰 Tools
🪛 LanguageTool

[misspelling] ~5-~5: Use “an” instead of ‘a’ if the following word starts with a vowel sound, e.g. ‘an article’, ‘an hour’.
Context: ...der to give everyone a chance to submit a issues reports and contribute to the Ta...

(EN_A_VS_AN)


29-29: Fix sentence structure and remove duplicate content

The sentence contains duplicate content and grammatical errors.

-Your issue may have already been created. Search for duplicate open issues before submitting yours.for similar deficiencies in the code.duplicate issues are created.
+Your issue may have already been created. Search for duplicate open issues before submitting yours to avoid similar deficiencies in the code.

44-44: Capitalize "Slack" references

The word "slack" should be capitalized as it's a proper noun.

-   2. Ask our contributors to assign it to you in `#talawa` slack channel.
+   2. Ask our contributors to assign it to you in `#talawa` Slack channel.
-1. Join our `#talawa-github` slack channel for automatic issue and pull request updates.
+1. Join our `#talawa-github` Slack channel for automatic issue and pull request updates.
-1. Discuss issues in our various slack channels when necessary
+1. Discuss issues in our various Slack channels when necessary

Also applies to: 53-53, 57-57

🧰 Tools
🪛 LanguageTool

[grammar] ~44-~44: Did you mean the communication tool “Slack” (= proper noun, capitalized)?
Context: ...butors to assign it to you in #talawa slack channel. Working on these types of exi...

(ON_SKYPE)

README.md (1)

53-56: Fix formatting in heading

There's an extra space after the hash in the "Videos" heading.

-#  Videos
+# Videos
🧰 Tools
🪛 Markdownlint (0.37.0)

53-53: null
Multiple spaces after hash on atx style heading

(MD019, no-multiple-space-atx)

🪛 LanguageTool

[uncategorized] ~56-~56: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...)" videos are extremely helpful for new open source contributors.

(EN_COMPOUND_ADJECTIVE_INTERNAL)

.eslintrc.json (1)

58-58: Consider relaxing the no-explicit-any rule

The @typescript-eslint/no-explicit-any rule is set to "error" which might be too strict for certain cases where any is necessary.

Consider allowing any in specific cases:

-    "@typescript-eslint/no-explicit-any": "error",
+    "@typescript-eslint/no-explicit-any": ["error", {
+      "ignoreRestArgs": true
+    }],
PR_GUIDELINES.md (3)

31-42: Add language identifiers to code blocks.

For better syntax highlighting and documentation clarity, specify the language for the code blocks.

-```
+```bash
 npm run lint:fix
 npm run format:fix

- +bash
npm run lint:check
npm run format:check

🧰 Tools
🪛 Markdownlint (0.37.0)

31-31: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


39-39: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


56-56: Fix grammar in sentence.

Add a comma after "Therefore" and consider rephrasing to avoid the overused "very".

-The quality of our code is very important to us. Therefore we make experienced maintainers
+The quality of our code is crucial to us. Therefore, we have experienced maintainers
🧰 Tools
🪛 LanguageTool

[style] ~56-~56: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ...o be closed. The quality of our code is very important to us. Therefore we make experienced ma...

(EN_WEAK_ADJECTIVE)


[uncategorized] ~56-~56: A comma may be missing after the conjunctive/linking adverb ‘Therefore’.
Context: ...ty of our code is very important to us. Therefore we make experienced maintainers of our ...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


64-64: Add missing comma in compound sentence.

Add a comma before "and" in the compound sentence.

-adds to the pile of notifications we get and it won't make us look at your issue faster
+adds to the pile of notifications we get, and it won't make us look at your issue faster
🧰 Tools
🪛 LanguageTool

[style] ~64-~64: This expression is wordy and overused. Consider replacing it with a more concise and formal alternative.
Context: ...wer your questions, but we'll get to it sooner or later. @mentioning someone just adds to the p...

(SOONER_OR_LATER)


[uncategorized] ~64-~64: Use a comma before ‘and’ if it connects two independent clauses (unless they are closely connected and short).
Context: ...adds to the pile of notifications we get and it won't make us look at your issue fas...

(COMMA_COMPOUND_SENTENCE)

package.json (1)

161-161: Consider relaxing Node.js version requirement.

The requirement of Node.js >= 20.x might be too restrictive. Consider supporting Node.js 18.x LTS if possible, as many users might still be using it.

-    "node": ">=20.x"
+    "node": ">=18.x"
CODE_STYLE.md (3)

58-62: Add language identifiers to code blocks.

For better documentation clarity and syntax highlighting, specify the language for all code blocks.

-```
+```jsx
<div className="myCustomClass">...</div>

- +jsx

...
```

- +jsx


// ... dropdown code


-```
+```tsx
import Dropdown from 'react-bootstrap/Dropdown';
// ... component code


Also applies to: 65-69, 78-89, 95-115

<details>
<summary>🧰 Tools</summary>

<details>
<summary>🪛 Markdownlint (0.37.0)</summary>

58-58: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)

</details>

</details>

---

`53-55`: **Fix grammatical issues in guidelines.**

Several sentences need grammatical improvements:

```diff
-All the Return fragment should be closed in empty tag
+All Return fragments should be closed with empty tags

-Use of custom classes directly are refrained
+Direct use of custom classes should be avoided
🧰 Tools
🪛 LanguageTool

[uncategorized] ~53-~53: The grammatical number of this noun doesn’t look right. Consider replacing it.
Context: ...ase naming convention - All the Return fragment should be closed in empty tag - Use of...

(AI_EN_LECTOR_REPLACEMENT_NOUN_NUMBER)


[uncategorized] ~55-~55: This verb does not appear to agree with the subject. Consider using a different form.
Context: ...y tag - Use of custom classes directly are refrained, use of modular css is encour...

(AI_EN_LECTOR_REPLACEMENT_VERB_AGREEMENT)


128-137: Fix list indentation.

The indentation of nested lists is inconsistent. Consider using consistent 2-space indentation for all nested items.

🧰 Tools
🪛 Markdownlint (0.37.0)

128-128: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


129-129: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


130-130: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


131-131: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


132-132: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


133-133: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


134-134: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


135-135: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


136-136: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


137-137: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)

🪛 LanguageTool

[style] ~128-~128: Consider removing “of” to be more concise
Context: ... in the project - css - This houses all of the css files used in the project - `imag...

(ALL_OF_THE)


[style] ~129-~129: Consider removing “of” to be more concise
Context: ... the project - images - This houses all of the images used in the project - scss -...

(ALL_OF_THE)


[style] ~130-~130: Consider removing “of” to be more concise
Context: ...in the project - scss - This houses all of the scss files used in the project - `c...

(ALL_OF_THE)


[grammar] ~134-~134: The singular proper name ‘Sass’ must be used with a third-person or a past tense verb.
Context: ...rms - _talawa.scss - Partial Sass file for Talawa - _utilities.scss - Pa...

(HE_VERB_AGR)


[grammar] ~135-~135: The singular proper name ‘Sass’ must be used with a third-person or a past tense verb.
Context: ... - _utilities.scss - Partial Sass file for utilities - _variables.scss -...

(HE_VERB_AGR)


[grammar] ~136-~136: The singular proper name ‘Sass’ must be used with a third-person or a past tense verb.
Context: ... - _variables.scss - Partial Sass file for variables - app.scss - Main S...

(HE_VERB_AGR)

.github/workflows/pull-request.yml (1)

155-164: Consider using environment variable for file count threshold

The hardcoded value of 100 could be moved to an environment variable for better maintainability.

+      - name: Set file count threshold
+        run: echo "MAX_FILES=100" >> $GITHUB_ENV
+
       - name: Check if the number of changed files is less than 100
-        if: steps.changed-files.outputs.all_changed_files_count > 100
+        if: steps.changed-files.outputs.all_changed_files_count > ${{ env.MAX_FILES }}
         env: 
           CHANGED_FILES_COUNT: ${{ steps.changed-files.outputs.all_changed_files_count }}
         run: |
-          echo "Error: Too many files (greater than 100) changed in the pull request."
+          echo "Error: Too many files (greater than ${{ env.MAX_FILES }}) changed in the pull request."
🧰 Tools
🪛 yamllint (1.35.1)

[error] 157-157: trailing spaces

(trailing-spaces)

CONTRIBUTING.md (2)

33-34: Fix list indentation

The list items under "Table of Contents" have incorrect indentation.

-      - [pre-commit hook](#pre-commit-hook)
-      - [post-merge hook](#post-merge-hook)
+  - [pre-commit hook](#pre-commit-hook)
+  - [post-merge hook](#post-merge-hook)
🧰 Tools
🪛 LanguageTool

[uncategorized] ~34-~34: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...)" videos are extremely helpful for new open source contributors. ## Ways to Contribute I...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


104-144: Add language specifiers to code blocks

Code blocks should specify their language for proper syntax highlighting.

-```
+```bash
 npm install
 npm run test --watchAll=false --coverage

Also applies to: 300-303

🧰 Tools
🪛 Markdownlint (0.37.0)

104-104: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


113-113: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


128-128: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


139-139: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


143-143: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🪛 LanguageTool

[grammar] ~135-~135: The operating system from Apple is written “macOS”.
Context: ...r packages can be found for Windows and MacOS. 6. The currently acceptable c...

(MAC_OS)

INSTALLATION.md (2)

67-69: Fix grammar and OS reference

Update the text for clarity and correct OS reference.

-1. On your computer, navigate to the folder where you want to setup the repository.
-2. Open a `cmd` (Windows) or `terminal` (Linux or MacOS) session in this folder.
-   1. An easy way to do this is to right-click and choose appropriate option based on your OS.
+1. On your computer, navigate to the folder where you want to set up the repository.
+2. Open a `cmd` (Windows) or `terminal` (Linux or macOS) session in this folder.
+   1. An easy way to do this is to right-click and choose the appropriate option based on your OS.
🧰 Tools
🪛 LanguageTool

[grammar] ~67-~67: The word “setup” is a noun. The verb is spelled with a space.
Context: ...avigate to the folder where you want to setup the repository. 2. Open a cmd (Window...

(NOUN_VERB_CONFUSION)


[grammar] ~68-~68: The operating system from Apple is written “macOS”.
Context: ...cmd (Windows) or terminal (Linux or MacOS) session in this folder. 1. An easy ...

(MAC_OS)


[uncategorized] ~69-~69: Possible missing article found.
Context: ...to do this is to right-click and choose appropriate option based on your OS. 3. **For Our O...

(AI_HYDRA_LEO_MISSING_THE)


142-144: Add language specifiers to code blocks

Code blocks should specify their language for proper syntax highlighting.

-```
+```bash
 npm install

Also applies to: 154-156, 164-166

🧰 Tools
🪛 Markdownlint (0.37.0)

142-142: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)

schema.graphql (3)

1-3: Consider enhancing the @auth directive with more granular control

The @auth directive could be improved by adding parameters to specify the required authentication level or scope.

Consider modifying the directive to include authentication requirements:

-directive @auth on FIELD_DEFINITION
+directive @auth(
+  requires: AuthenticationLevel!
+) on FIELD_DEFINITION
+
+enum AuthenticationLevel {
+  USER
+  ADMIN
+  SUPERADMIN
+}

1287-1290: Consider adding role-specific mutations and input validation

The schema provides basic role management through updateUserType, but could be enhanced:

  1. Add input validation for user type changes:
 input UpdateUserTypeInput {
   id: ID
-  userType: String
+  userType: UserType!
+  organizationId: ID!
+  reason: String
 }
  1. Consider adding role-specific mutations:
extend type Mutation {
  assignOrganizationRole(
    userId: ID!
    organizationId: ID!
    role: OrganizationRole!
  ): User!
}

enum OrganizationRole {
  MEMBER
  MODERATOR
  ADMIN
}

Also applies to: 581-740


1053-1059: Optimize member connection query for role-based filtering

The organizationsMemberConnection query could be enhanced for better role-based filtering:

Add role-based filtering to the connection:

 organizationsMemberConnection(
   first: Int
   orderBy: UserOrderByInput
   orgId: ID!
   skip: Int
   where: UserWhereInput
+  roleFilter: [OrganizationRole!]
 ): UserConnection!
public/locales/hi/translation.json (1)

18-24: Consider refining these validation message translations for better clarity.

The current translations for validation messages are direct translations. Consider making them more natural in Hindi:

-    "atleast_8_char_long": "कम से कम 8 अक्षर लंबे",
+    "atleast_8_char_long": "कम से कम 8 अक्षरों का होना चाहिए",
-    "atleast_6_char_long": "कम से कम 6 अक्षर लंबे",
+    "atleast_6_char_long": "कम से कम 6 अक्षरों का होना चाहिए",
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b465221 and 6dc05b7.

⛔ Files ignored due to path filters (75)
  • package-lock.json is excluded by !**/package-lock.json
  • public/favicon.ico is excluded by !**/*.ico
  • public/favicon_palisadoes.ico is excluded by !**/*.ico
  • public/images/logo512.png is excluded by !**/*.png
  • public/images/svg/angleDown.svg is excluded by !**/*.svg
  • public/images/svg/arrow-left.svg is excluded by !**/*.svg
  • public/images/svg/arrow-right.svg is excluded by !**/*.svg
  • public/images/svg/attendees.svg is excluded by !**/*.svg
  • public/images/svg/feedback.svg is excluded by !**/*.svg
  • public/images/svg/profiledefault.svg is excluded by !**/*.svg
  • public/images/svg/up-down.svg is excluded by !**/*.svg
  • public/logo192.png is excluded by !**/*.png
  • public/markdown/images/install1.png is excluded by !**/*.png
  • public/markdown/images/install2.png is excluded by !**/*.png
  • src/assets/css/app.css.map is excluded by !**/*.map
  • src/assets/images/blank.png is excluded by !**/*.png
  • src/assets/images/bronze.png is excluded by !**/*.png
  • src/assets/images/defaultImg.png is excluded by !**/*.png
  • src/assets/images/gold.png is excluded by !**/*.png
  • src/assets/images/palisadoes_logo.png is excluded by !**/*.png
  • src/assets/images/silver.png is excluded by !**/*.png
  • src/assets/images/talawa-logo-600x600.png is excluded by !**/*.png
  • src/assets/images/talawa-logo-dark-200x200.png is excluded by !**/*.png
  • src/assets/images/talawa-logo-lite-200x200.png is excluded by !**/*.png
  • src/assets/svgs/Attendance.svg is excluded by !**/*.svg
  • src/assets/svgs/actionItem.svg is excluded by !**/*.svg
  • src/assets/svgs/admin.svg is excluded by !**/*.svg
  • src/assets/svgs/agenda-category-icon.svg is excluded by !**/*.svg
  • src/assets/svgs/agenda-items.svg is excluded by !**/*.svg
  • src/assets/svgs/angleRight.svg is excluded by !**/*.svg
  • src/assets/svgs/article.svg is excluded by !**/*.svg
  • src/assets/svgs/blockUser.svg is excluded by !**/*.svg
  • src/assets/svgs/blockedUser.svg is excluded by !**/*.svg
  • src/assets/svgs/cardItemDate.svg is excluded by !**/*.svg
  • src/assets/svgs/cardItemEvent.svg is excluded by !**/*.svg
  • src/assets/svgs/cardItemLocation.svg is excluded by !**/*.svg
  • src/assets/svgs/chat.svg is excluded by !**/*.svg
  • src/assets/svgs/checkInRegistrants.svg is excluded by !**/*.svg
  • src/assets/svgs/dashboard.svg is excluded by !**/*.svg
  • src/assets/svgs/date.svg is excluded by !**/*.svg
  • src/assets/svgs/event.svg is excluded by !**/*.svg
  • src/assets/svgs/events.svg is excluded by !**/*.svg
  • src/assets/svgs/flask.svg is excluded by !**/*.svg
  • src/assets/svgs/funds.svg is excluded by !**/*.svg
  • src/assets/svgs/key.svg is excluded by !**/*.svg
  • src/assets/svgs/listEventRegistrants.svg is excluded by !**/*.svg
  • src/assets/svgs/location.svg is excluded by !**/*.svg
  • src/assets/svgs/logout.svg is excluded by !**/*.svg
  • src/assets/svgs/media.svg is excluded by !**/*.svg
  • src/assets/svgs/newChat.svg is excluded by !**/*.svg
  • src/assets/svgs/organizations.svg is excluded by !**/*.svg
  • src/assets/svgs/palisadoes.svg is excluded by !**/*.svg
  • src/assets/svgs/people.svg is excluded by !**/*.svg
  • src/assets/svgs/plugins.svg is excluded by !**/*.svg
  • src/assets/svgs/post.svg is excluded by !**/*.svg
  • src/assets/svgs/posts.svg is excluded by !**/*.svg
  • src/assets/svgs/requests.svg is excluded by !**/*.svg
  • src/assets/svgs/roles.svg is excluded by !**/*.svg
  • src/assets/svgs/settings.svg is excluded by !**/*.svg
  • src/assets/svgs/social-icons/Facebook-Logo.svg is excluded by !**/*.svg
  • src/assets/svgs/social-icons/Github-Logo.svg is excluded by !**/*.svg
  • src/assets/svgs/social-icons/Instagram-Logo.svg is excluded by !**/*.svg
  • src/assets/svgs/social-icons/Linkedin-Logo.svg is excluded by !**/*.svg
  • src/assets/svgs/social-icons/Reddit-Logo.svg is excluded by !**/*.svg
  • src/assets/svgs/social-icons/Slack-Logo.svg is excluded by !**/*.svg
  • src/assets/svgs/social-icons/X-Logo.svg is excluded by !**/*.svg
  • src/assets/svgs/social-icons/Youtube-Logo.svg is excluded by !**/*.svg
  • src/assets/svgs/tag.svg is excluded by !**/*.svg
  • src/assets/svgs/tags.svg is excluded by !**/*.svg
  • src/assets/svgs/talawa.svg is excluded by !**/*.svg
  • src/assets/svgs/user.svg is excluded by !**/*.svg
  • src/assets/svgs/userEvent.svg is excluded by !**/*.svg
  • src/assets/svgs/users.svg is excluded by !**/*.svg
  • src/assets/svgs/venues.svg is excluded by !**/*.svg
  • src/assets/talawa-logo-lite-200x200.png is excluded by !**/*.png
📒 Files selected for processing (82)
  • .coderabbit.yaml (1 hunks)
  • .env.example (1 hunks)
  • .eslintignore (1 hunks)
  • .eslintrc.json (4 hunks)
  • .github/ISSUE_TEMPLATE/bug-report.md (2 hunks)
  • .github/ISSUE_TEMPLATE/feature-request.md (2 hunks)
  • .github/dependabot.yaml (1 hunks)
  • .github/pull_request_template.md (2 hunks)
  • .github/workflows/README.md (1 hunks)
  • .github/workflows/auto-label.json5 (1 hunks)
  • .github/workflows/check-tsdoc.js (1 hunks)
  • .github/workflows/ci.yml (0 hunks)
  • .github/workflows/codeql-analysis.yml (0 hunks)
  • .github/workflows/codeql-codescan.yml (1 hunks)
  • .github/workflows/compare_translations.py (1 hunks)
  • .github/workflows/countline.py (1 hunks)
  • .github/workflows/eslint_disable_check.py (1 hunks)
  • .github/workflows/issue.yml (1 hunks)
  • .github/workflows/linter.yml (0 hunks)
  • .github/workflows/npm-publish.yml (0 hunks)
  • .github/workflows/pull-request-target.yml (1 hunks)
  • .github/workflows/pull-request.yml (1 hunks)
  • .github/workflows/push.yml (1 hunks)
  • .github/workflows/stale.yml (1 hunks)
  • .github/workflows/talawa_admin_md_mdx_format_adjuster.py (1 hunks)
  • .gitignore (2 hunks)
  • .husky/post-merge (1 hunks)
  • .husky/pre-commit (1 hunks)
  • .lintstagedrc.json (1 hunks)
  • .node-version (1 hunks)
  • .prettierignore (1 hunks)
  • .prettierrc (1 hunks)
  • CODEOWNERS (1 hunks)
  • CODE_OF_CONDUCT.md (1 hunks)
  • CODE_STYLE.md (1 hunks)
  • CONTRIBUTING.md (2 hunks)
  • DOCUMENTATION.md (1 hunks)
  • Docker_Container/.dockerignore (0 hunks)
  • Docker_Container/README.md (0 hunks)
  • Docker_Container/docker-compose.yml (0 hunks)
  • Docker_Container/dockerfile (0 hunks)
  • INSTALLATION.md (1 hunks)
  • ISSUE_GUIDELINES.md (1 hunks)
  • ISSUE_TEMPLATE.md (0 hunks)
  • PR-guidelines.md (0 hunks)
  • PR_GUIDELINES.md (1 hunks)
  • PULL_REQUEST_TEMPLATE.md (0 hunks)
  • README.md (3 hunks)
  • config/babel.config.cjs (1 hunks)
  • config/vite.config.ts (1 hunks)
  • index.html (1 hunks)
  • issue-guidelines.md (0 hunks)
  • jest-preview.config.ts (1 hunks)
  • jest.config.js (1 hunks)
  • package.json (2 hunks)
  • public/index.html (0 hunks)
  • public/locales/en/common.json (1 hunks)
  • public/locales/en/errors.json (1 hunks)
  • public/locales/en/translation.json (1 hunks)
  • public/locales/fr/common.json (1 hunks)
  • public/locales/fr/errors.json (1 hunks)
  • public/locales/fr/translation.json (1 hunks)
  • public/locales/hi/common.json (1 hunks)
  • public/locales/hi/errors.json (1 hunks)
  • public/locales/hi/translation.json (1 hunks)
  • public/locales/sp/common.json (1 hunks)
  • public/locales/sp/errors.json (1 hunks)
  • public/locales/sp/translation.json (1 hunks)
  • public/locales/zh/common.json (1 hunks)
  • public/locales/zh/errors.json (1 hunks)
  • public/locales/zh/translation.json (1 hunks)
  • public/manifest.json (1 hunks)
  • schema.graphql (1 hunks)
  • scripts/__mocks__/@dicebear/collection.ts (1 hunks)
  • scripts/__mocks__/@dicebear/core.ts (1 hunks)
  • scripts/__mocks__/@pdfme/generator.test.ts (1 hunks)
  • scripts/__mocks__/@pdfme/generator.ts (1 hunks)
  • scripts/__mocks__/fileMock.js (1 hunks)
  • scripts/custom-test-env.js (1 hunks)
  • scripts/githooks/check-localstorage-usage.js (1 hunks)
  • scripts/githooks/update-toc.js (1 hunks)
  • setup.ts (1 hunks)
⛔ Files not processed due to max files limit (28)
  • src/App.test.tsx
  • src/App.tsx
  • src/Constant/constant.spec.ts
  • src/Constant/constant.ts
  • src/GraphQl/Mutations/ActionItemCategoryMutations.ts
  • src/GraphQl/Mutations/ActionItemMutations.ts
  • src/GraphQl/Mutations/AgendaCategoryMutations.ts
  • src/GraphQl/Mutations/AgendaItemMutations.ts
  • src/GraphQl/Mutations/CampaignMutation.ts
  • src/GraphQl/Mutations/CommentMutations.ts
  • src/GraphQl/Mutations/EventAttendeeMutations.ts
  • src/GraphQl/Mutations/EventVolunteerMutation.ts
  • src/GraphQl/Mutations/FundMutation.ts
  • src/GraphQl/Mutations/OrganizationMutations.ts
  • src/GraphQl/Mutations/PledgeMutation.ts
  • src/GraphQl/Mutations/TagMutations.ts
  • src/GraphQl/Mutations/VenueMutations.ts
  • src/GraphQl/Mutations/mutations.ts
  • src/GraphQl/Queries/ActionItemCategoryQueries.ts
  • src/GraphQl/Queries/ActionItemQueries.ts
  • src/GraphQl/Queries/AgendaCategoryQueries.ts
  • src/GraphQl/Queries/AgendaItemQueries.ts
  • src/GraphQl/Queries/EventVolunteerQueries.ts
  • src/GraphQl/Queries/OrganizationQueries.ts
  • src/GraphQl/Queries/PlugInQueries.ts
  • src/GraphQl/Queries/Queries.ts
  • src/GraphQl/Queries/fundQueries.ts
  • src/GraphQl/Queries/userTagQueries.ts
💤 Files with no reviewable changes (13)
  • Docker_Container/.dockerignore
  • ISSUE_TEMPLATE.md
  • public/index.html
  • issue-guidelines.md
  • Docker_Container/docker-compose.yml
  • .github/workflows/ci.yml
  • .github/workflows/linter.yml
  • PULL_REQUEST_TEMPLATE.md
  • PR-guidelines.md
  • Docker_Container/README.md
  • .github/workflows/codeql-analysis.yml
  • Docker_Container/dockerfile
  • .github/workflows/npm-publish.yml
✅ Files skipped from review due to trivial changes (25)
  • .eslintignore
  • scripts/mocks/@dicebear/collection.ts
  • .node-version
  • jest-preview.config.ts
  • config/babel.config.cjs
  • CODEOWNERS
  • .prettierignore
  • public/locales/fr/errors.json
  • .github/dependabot.yaml
  • public/locales/zh/errors.json
  • scripts/mocks/fileMock.js
  • .coderabbit.yaml
  • .lintstagedrc.json
  • public/locales/fr/common.json
  • public/locales/fr/translation.json
  • index.html
  • public/locales/zh/translation.json
  • .env.example
  • public/locales/sp/translation.json
  • public/locales/hi/errors.json
  • .prettierrc
  • public/locales/en/translation.json
  • public/locales/en/common.json
  • public/locales/sp/common.json
  • public/locales/zh/common.json
🧰 Additional context used
📓 Learnings (1)
scripts/githooks/check-localstorage-usage.js (1)
Learnt from: MayankJha014
PR: PalisadoesFoundation/talawa-admin#2612
File: scripts/githooks/check-localstorage-usage.js:10-18
Timestamp: 2024-12-07T14:25:09.928Z
Learning: TypeScript type annotations should not be added to JavaScript (`.js`) files in this project. Type annotations can only be used in TypeScript (`.ts` or `.tsx`) files.
🪛 eslint
scripts/custom-test-env.js

[error] 5-5: tsdoc-undefined-tag: The TSDoc tag "@pdfme" is not defined in this configuration

(tsdoc/syntax)


[error] 9-9: Missing return type on function.

(@typescript-eslint/explicit-function-return-type)


[error] 9-9: Missing return type on function.

(@typescript-eslint/explicit-module-boundary-types)

scripts/githooks/update-toc.js

[error] 11-12: Delete ··⏎

(prettier/prettier)

jest.config.js

[error] 33-33: Delete ·

(prettier/prettier)


[error] 34-34: Insert ,

(prettier/prettier)

scripts/githooks/check-localstorage-usage.js

[error] 10-10: Missing return type on function.

(@typescript-eslint/explicit-function-return-type)


[error] 20-20: Missing return type on function.

(@typescript-eslint/explicit-function-return-type)


[error] 43-43: Missing return type on function.

(@typescript-eslint/explicit-function-return-type)


[error] 89-89: Insert ,

(prettier/prettier)


[error] 92-92: Insert ,

(prettier/prettier)

🪛 LanguageTool
.github/workflows/README.md

[duplication] ~24-~24: Possible typo: you repeated a word
Context: ...ors: 1. Place all actions related to to this in the pull-request-target.yml f...

(ENGLISH_WORD_REPEAT_RULE)


[uncategorized] ~35-~35: The abbreviation “e.g.” (= for example) requires two periods.
Context: ...orrectly if they have a dedicated file (eg. CodeQL) ## Scripts Follow these gui...

(E_G)

CODE_STYLE.md

[uncategorized] ~53-~53: The grammatical number of this noun doesn’t look right. Consider replacing it.
Context: ...ase naming convention - All the Return fragment should be closed in empty tag - Use of...

(AI_EN_LECTOR_REPLACEMENT_NOUN_NUMBER)


[uncategorized] ~55-~55: This verb does not appear to agree with the subject. Consider using a different form.
Context: ...y tag - Use of custom classes directly are refrained, use of modular css is encour...

(AI_EN_LECTOR_REPLACEMENT_VERB_AGREEMENT)


[uncategorized] ~71-~71: You might be missing the article “the” here.
Context: ...mponents should be either imported from React-Bootstrap library or Material UI librar...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[style] ~127-~127: Consider removing “of” to be more concise
Context: ...tories of src assets - This houses all of the static assets used in the project - `...

(ALL_OF_THE)


[style] ~128-~128: Consider removing “of” to be more concise
Context: ... in the project - css - This houses all of the css files used in the project - `imag...

(ALL_OF_THE)


[style] ~129-~129: Consider removing “of” to be more concise
Context: ... the project - images - This houses all of the images used in the project - scss -...

(ALL_OF_THE)


[style] ~130-~130: Consider removing “of” to be more concise
Context: ...in the project - scss - This houses all of the scss files used in the project - `c...

(ALL_OF_THE)


[grammar] ~134-~134: The singular proper name ‘Sass’ must be used with a third-person or a past tense verb.
Context: ...rms - _talawa.scss - Partial Sass file for Talawa - _utilities.scss - Pa...

(HE_VERB_AGR)


[grammar] ~135-~135: The singular proper name ‘Sass’ must be used with a third-person or a past tense verb.
Context: ... - _utilities.scss - Partial Sass file for utilities - _variables.scss -...

(HE_VERB_AGR)


[grammar] ~136-~136: The singular proper name ‘Sass’ must be used with a third-person or a past tense verb.
Context: ... - _variables.scss - Partial Sass file for variables - app.scss - Main S...

(HE_VERB_AGR)


[style] ~141-~141: Consider removing “of” to be more concise
Context: ...views/screens Constant - This houses all of the constants used in the project `GraphQl...

(ALL_OF_THE)


[style] ~143-~143: Consider removing “of” to be more concise
Context: ...in the project GraphQl - This houses all of the GraphQL queries and mutations used in t...

(ALL_OF_THE)


[style] ~145-~145: Consider removing “of” to be more concise
Context: ...in the project screens - This houses all of the views/screens to be navigated through i...

(ALL_OF_THE)


[style] ~147-~147: Consider removing “of” to be more concise
Context: ... in Talawa-Admin state - This houses all of the state management code for the project ...

(ALL_OF_THE)


[uncategorized] ~165-~165: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...following order: - React imports - Third party imports - Local imports If there is...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[uncategorized] ~230-~230: You might be missing the article “a” here.
Context: ...iles imported into it How to compile Sass file src/assets/scss/app.scss is t...

(AI_EN_LECTOR_MISSING_DETERMINER_A)


[uncategorized] ~233-~233: A comma might be missing here.
Context: ...partial Sass files. According to naming convention the file name of the partial Sass files...

(AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA)

ISSUE_GUIDELINES.md

[uncategorized] ~2-~2: Loose punctuation mark.
Context: # Issue Report Guidelines 👍🎉 First off, thanks for taking t...

(UNLIKELY_OPENING_PUNCTUATION)


[style] ~4-~4: Consider a shorter alternative to avoid wordiness.
Context: ...ing the time to contribute! 🎉👍 In order to give everyone a chance to submit a issu...

(IN_ORDER_TO_PREMIUM)


[misspelling] ~5-~5: Use “an” instead of ‘a’ if the following word starts with a vowel sound, e.g. ‘an article’, ‘an hour’.
Context: ...der to give everyone a chance to submit a issues reports and contribute to the Ta...

(EN_A_VS_AN)


[typographical] ~24-~24: Consider adding a comma here.
Context: ...> ___ ## Issue Management In all cases please use the [GitHub open issue search](http...

(PLEASE_COMMA)


[uncategorized] ~27-~27: A comma might be missing here.
Context: ...reported. ### New Issues To create new issues follow these steps: 1. Your issue may ...

(AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA)


[style] ~30-~30: Consider using a different verb for a more formal wording.
Context: .... 1. Verify whether the issue has been fixed by trying to reproduce it using the lat...

(FIX_RESOLVE)


[uncategorized] ~32-~32: Possible missing preposition found.
Context: ...lawa-admin/issues/new/choose) button 1. Use the templates to create a standardized ...

(AI_HYDRA_LEO_MISSING_TO)


[style] ~35-~35: The wording of this phrase can be improved.
Context: ...lcome contributors who find new ways to make the code better. ### Existing Issues You can also be ...

(MAKE_STYLE_BETTER)


[grammar] ~44-~44: Did you mean the communication tool “Slack” (= proper noun, capitalized)?
Context: ...butors to assign it to you in #talawa slack channel. Working on these types of exi...

(ON_SKYPE)


[grammar] ~53-~53: Did you mean the communication tool “Slack” (= proper noun, capitalized)?
Context: ...ew Issues 1. Join our #talawa-github slack channel for automatic issue and pull re...

(ON_SKYPE)


[grammar] ~57-~57: Did you mean the communication tool “Slack” (= proper noun, capitalized)?
Context: ...lines 1. Discuss issues in our various slack channels when necessary 2. Please do no...

(ON_SKYPE)


[typographical] ~57-~57: Consider adding a comma here.
Context: ...ur various slack channels when necessary 2. Please do not derail or troll issues. 3. Keep...

(PLEASE_COMMA)

CONTRIBUTING.md

[style] ~27-~27: This expression usually appears with a “please” in front of it.
Context: ...DUCT.md) to understand what this means. Let us know immediately if you have unacceptable ex...

(INSERT_PLEASE)


[uncategorized] ~34-~34: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...)" videos are extremely helpful for new open source contributors. ## Ways to Contribute I...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[grammar] ~62-~62: A determiner may be missing.
Context: ...l Request guidelines](PR_GUIDELINES.md) is best resource to follow to start working on ...

(THE_SUPERLATIVE)


[uncategorized] ~68-~68: Loose punctuation mark.
Context: ...ushed to the main branch: - develop: For unstable code and bug fixing - `mai...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~69-~69: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...d bug fixing - main: Where the stable production ready code lies. This is our default branch. ...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[typographical] ~73-~73: Consider adding a comma.
Context: ...ultiple developers are working on issues there is bound to be a conflict of interest (...

(IF_THERE_COMMA)


[typographical] ~73-~73: Consider adding a comma after ‘Usually’ for more clarity.
Context: ...licts) among issues, PRs or even ideas. Usually these conflicts are resolved in a **Fir...

(RB_LY_COMMA)


[grammar] ~73-~73: Did you mean “served” (as in the idiom ‘first come, first served’)?
Context: ...ts are resolved in a First Come First Serve basis however there are certain excep...

(FIRST_SERVED)


[uncategorized] ~75-~75: Possible missing comma found.
Context: ... an extension or in conflict with other PRs it is important to ask the author of th...

(AI_HYDRA_LEO_MISSING_COMMA)


[grammar] ~75-~75: Did you mean the communication tool “Slack” (= proper noun, capitalized)?
Context: ...tant to ask the author of the PR in the slack channel or in their PRs or issues thems...

(ON_SKYPE)


[style] ~77-~77: ‘Last but not the least’ might be wordy. Consider a shorter alternative.
Context: ...y and test that function when needed. - Last but not the least, communication is important make sure t...

(EN_WORDINESS_PREMIUM_LAST_BUT_NOT_THE_LEAST)


[grammar] ~77-~77: It seems that “to” is missing before the verb.
Context: ...t the least, communication is important make sure to talk to other contributors, in ...

(MISSING_TO_BETWEEN_BE_AND_VB)


[grammar] ~77-~77: Did you mean the communication tool “Slack” (= proper noun, capitalized)?
Context: ... other contributors, in these cases, in slack channel or in a issue/PR thread. - As a...

(ON_SKYPE)


[misspelling] ~77-~77: Use “an” instead of ‘a’ if the following word starts with a vowel sound, e.g. ‘an article’, ‘an hour’.
Context: ... in these cases, in slack channel or in a issue/PR thread. - As a last resort the...

(EN_A_VS_AN)


[typographical] ~78-~78: It appears that a comma is missing.
Context: ...el or in a issue/PR thread. - As a last resort the Admins would be responsible for dec...

(DURING_THAT_TIME_COMMA)


[grammar] ~135-~135: The operating system from Apple is written “macOS”.
Context: ...r packages can be found for Windows and MacOS. 6. The currently acceptable c...

(MAC_OS)


[uncategorized] ~163-~163: Possible missing comma found.
Context: ...odecov/results.jpg)]() 1. After making changes you can add them to git locally using `...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~164-~164: Possible missing comma found.
Context: ...o add all changes). 1. After adding the changes you need to commit them using `git comm...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~165-~165: Possible missing comma found.
Context: ...using: git push origin <branch_name>.(Here branch name must be name of the branch ...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~165-~165: Possible missing article found.
Context: ...: git push origin <branch_name>.(Here branch name must be name of the branch you wan...

(AI_HYDRA_LEO_MISSING_THE)


[uncategorized] ~165-~165: Possible missing article found.
Context: ...branch_name>`.(Here branch name must be name of the branch you want to push the chan...

(AI_HYDRA_LEO_MISSING_THE)


[uncategorized] ~167-~167: Possible missing comma found.
Context: ...test suite passes, either locally or on CI once a PR has been created. 1. Review a...

(AI_HYDRA_LEO_MISSING_COMMA)


[grammar] ~178-~178: Did you mean the communication tool “Slack” (= proper noun, capitalized)?
Context: ...dation/talawa) for the link to join our slack channel. 1. We also have a technical em...

(ON_SKYPE)

DOCUMENTATION.md

[grammar] ~25-~25: The modal verb ‘should’ requires the verb’s base form.
Context: ...f docs.talawa.io should automatically launched in your browser at http://localhost:300...

(MD_BASEFORM)


[grammar] ~26-~26: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ...ttp://localhost:3000/ 1. Add/modify the markdown documents to the docs/ directory of t...

(MARKDOWN_NNP)


[uncategorized] ~32-~32: The preposition “to” seems more likely in this position.
Context: ... PLEASE do not add markdown files in this repository. Add them to `talawa-do...

(AI_EN_LECTOR_REPLACEMENT_PREPOSITION)

PR_GUIDELINES.md

[uncategorized] ~2-~2: Loose punctuation mark.
Context: # Pull Request Guidelines 👍🎉 First off, thanks for taking t...

(UNLIKELY_OPENING_PUNCTUATION)


[style] ~4-~4: Consider a shorter alternative to avoid wordiness.
Context: ...ing the time to contribute! 🎉👍 In order to give everyone a chance to submit a pull...

(IN_ORDER_TO_PREMIUM)


[style] ~46-~46: Style-wise, it’s not ideal to insert an adverb (‘manually’) in the middle of an infinitive construction (‘to test’). Try moving the adverb to avoid split infinitives.
Context: ..., you'll need to tell us what steps you followed to manually test your changes. 1. Please read our [CONTRIBUTING.md](C...

(SPLIT_INFINITIVE)


[style] ~56-~56: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ...o be closed. The quality of our code is very important to us. Therefore we make experienced ma...

(EN_WEAK_ADJECTIVE)


[uncategorized] ~56-~56: A comma may be missing after the conjunctive/linking adverb ‘Therefore’.
Context: ...ty of our code is very important to us. Therefore we make experienced maintainers of our ...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[style] ~59-~59: Consider using a different verb for a more formal wording.
Context: ...check if all tests are passing; if not, fix the issues and then create a pull reque...

(FIX_RESOLVE)


[style] ~64-~64: This expression is wordy and overused. Consider replacing it with a more concise and formal alternative.
Context: ...wer your questions, but we'll get to it sooner or later. @mentioning someone just adds to the p...

(SOONER_OR_LATER)


[uncategorized] ~64-~64: Use a comma before ‘and’ if it connects two independent clauses (unless they are closely connected and short).
Context: ...adds to the pile of notifications we get and it won't make us look at your issue fas...

(COMMA_COMPOUND_SENTENCE)


[style] ~65-~65: Consider shortening or rephrasing this to strengthen your wording.
Context: ...ue faster. 1. Do not force push. If you make changes to your pull request, please simply add a ...

(MAKE_CHANGES)

INSTALLATION.md

[duplication] ~25-~25: Possible typo: you repeated a word
Context: ...](#running-talawa-admin) - Accessing Talawa-Admin - [Talawa-Admin Registration](#talawa-admin-registratio...

(ENGLISH_WORD_REPEAT_RULE)


[typographical] ~55-~55: It appears that a comma is missing.
Context: ... that follow. # Prerequisites In this section we'll explain how to set up all the pre...

(DURING_THAT_TIME_COMMA)


[uncategorized] ~61-~61: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: .... Basic git knowledge is required for open source contribution so make sure you're comfor...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[uncategorized] ~61-~61: Possible missing comma found.
Context: ...` knowledge is required for open source contribution so make sure you're comfortable with it...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~64-~64: Possible missing comma found.
Context: ...ithub. ## Setting up this repository First you need a local copy of talawa-admin`...

(AI_HYDRA_LEO_MISSING_COMMA)


[grammar] ~67-~67: The word “setup” is a noun. The verb is spelled with a space.
Context: ...avigate to the folder where you want to setup the repository. 2. Open a cmd (Window...

(NOUN_VERB_CONFUSION)


[grammar] ~68-~68: The operating system from Apple is written “macOS”.
Context: ...cmd (Windows) or terminal (Linux or MacOS) session in this folder. 1. An easy ...

(MAC_OS)


[uncategorized] ~69-~69: Possible missing article found.
Context: ...to do this is to right-click and choose appropriate option based on your OS. 3. **For Our O...

(AI_HYDRA_LEO_MISSING_THE)


[uncategorized] ~70-~70: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...e option based on your OS. 3. For Our Open Source Contributor Software Developers: ...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[grammar] ~102-~102: The operating system from Apple is written “macOS”.
Context: ...node.jspackages in Windows, Linux and MacOS. 1. For Windows: 1. first install...

(MAC_OS)


[duplication] ~116-~116: Possible typo: you repeated a word
Context: ... 5. Save the document. 6. Exit notepad 7. Exit PowerShell 8. This will ensure...

(ENGLISH_WORD_REPEAT_RULE)


[uncategorized] ~118-~118: Possible missing comma found.
Context: ...ou are always using the correct version of node.js 2. For Linux and MacOS, use t...

(AI_HYDRA_LEO_MISSING_COMMA)


[grammar] ~119-~119: The operating system from Apple is written “macOS”.
Context: ...t version of node.js 2. For Linux and MacOS, use the terminal window. 1. install...

(MAC_OS)


[grammar] ~123-~123: The word “setup” is a noun. The verb is spelled with a white space.
Context: ... the respective recommended commands to setup your node environment 3. This wil...

(NOUN_VERB_CONFUSION)


[uncategorized] ~130-~130: Possible missing comma found.
Context: ...stall TypeScript, you can use the npm command which comes with node.js: ```bash np...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~162-~162: Use a comma before ‘and’ if it connects two independent clauses (unless they are closely connected and short).
Context: ...at runtime. It is not a part of the repo and you will have to create it. For a sampl...

(COMMA_COMPOUND_SENTENCE)


[uncategorized] ~224-~224: Possible missing preposition found.
Context: ... For additional details, please refer theHow to Access the Talawa-API URL` sect...

(AI_HYDRA_LEO_MISSING_TO)


[grammar] ~228-~228: The word “setup” is a noun. The verb is spelled with a space.
Context: ...E_KEY in .env file You may not want to setup reCAPTCHA since the project will still ...

(NOUN_VERB_CONFUSION)


[grammar] ~232-~232: The word “setup” is a noun. The verb is spelled with a space.
Context: ...ad the following steps. If you want to setup Google reCAPTCHA now, you may refer to ...

(NOUN_VERB_CONFUSION)


[uncategorized] ~234-~234: Possible missing comma found.
Context: ... service you set up during talawa-api installation as shown in this screenshot: ![reCAPTC...

(AI_HYDRA_LEO_MISSING_COMMA)


[typographical] ~246-~246: Except for inverted sentences, ‘need them’ requires a question mark at the end of the sentence.
Context: ...t need them or want to keep the console clean # Post Configuration Steps It's now t...

(MD_PRP_QUESTION_MARK)


[uncategorized] ~261-~261: Did you mean: “By default,”?
Context: ...n serve ``` ## Accessing Talawa-Admin By default talawa-admin runs on port `4321` on y...

(BY_DEFAULT_COMMA)


[uncategorized] ~278-~278: Possible missing comma found.
Context: ... navigate to the running talawa-admin's website you'll land at talawa-admin registratio...

(AI_HYDRA_LEO_MISSING_COMMA)


[grammar] ~311-~311: The word ‘lint’ is a noun or an adjective. A verb or adverb is missing or misspelled here, or maybe a comma is missing.
Context: ...w.webp) ## Linting code files You can lint your code files using this command: ``...

(PRP_MD_NN)

README.md

[uncategorized] ~56-~56: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...)" videos are extremely helpful for new open source contributors.

(EN_COMPOUND_ADJECTIVE_INTERNAL)

CODE_OF_CONDUCT.md

[duplication] ~11-~11: Possible typo: you repeated a word
Context: ...-responsibilities) - Scope - Enforcement - Enforcement Guidelines ...

(ENGLISH_WORD_REPEAT_RULE)

🪛 yamllint (1.35.1)
.github/workflows/pull-request-target.yml

[error] 6-6: trailing spaces

(trailing-spaces)


[error] 13-13: trailing spaces

(trailing-spaces)


[error] 15-15: trailing spaces

(trailing-spaces)


[error] 27-27: trailing spaces

(trailing-spaces)


[error] 28-28: trailing spaces

(trailing-spaces)


[error] 29-29: trailing spaces

(trailing-spaces)


[error] 31-31: trailing spaces

(trailing-spaces)


[error] 33-33: trailing spaces

(trailing-spaces)


[error] 34-34: trailing spaces

(trailing-spaces)


[error] 36-36: trailing spaces

(trailing-spaces)


[error] 41-41: trailing spaces

(trailing-spaces)


[error] 46-46: trailing spaces

(trailing-spaces)


[error] 71-71: trailing spaces

(trailing-spaces)

.github/workflows/push.yml

[error] 6-6: trailing spaces

(trailing-spaces)


[error] 17-17: trailing spaces

(trailing-spaces)


[error] 18-18: trailing spaces

(trailing-spaces)


[warning] 20-20: wrong indentation: expected 2 but found 4

(indentation)


[error] 21-21: trailing spaces

(trailing-spaces)


[error] 50-50: trailing spaces

(trailing-spaces)


[warning] 62-62: too many blank lines

(1 > 0) (empty-lines)

.github/workflows/codeql-codescan.yml

[error] 6-6: trailing spaces

(trailing-spaces)


[error] 17-17: trailing spaces

(trailing-spaces)


[error] 20-20: trailing spaces

(trailing-spaces)


[warning] 31-31: wrong indentation: expected 6 but found 7

(indentation)


[warning] 37-37: wrong indentation: expected 11 but found 10

(indentation)

.github/workflows/stale.yml

[error] 6-6: trailing spaces

(trailing-spaces)


[error] 20-20: trailing spaces

(trailing-spaces)


[error] 21-21: trailing spaces

(trailing-spaces)

.github/workflows/pull-request.yml

[error] 49-49: trailing spaces

(trailing-spaces)


[error] 60-60: trailing spaces

(trailing-spaces)


[error] 63-63: trailing spaces

(trailing-spaces)


[error] 92-92: trailing spaces

(trailing-spaces)


[error] 126-126: trailing spaces

(trailing-spaces)


[error] 129-129: trailing spaces

(trailing-spaces)


[error] 150-150: trailing spaces

(trailing-spaces)


[error] 157-157: trailing spaces

(trailing-spaces)


[error] 197-197: trailing spaces

(trailing-spaces)


[error] 201-201: trailing spaces

(trailing-spaces)


[error] 204-204: trailing spaces

(trailing-spaces)


[error] 205-205: trailing spaces

(trailing-spaces)


[error] 213-213: trailing spaces

(trailing-spaces)


[error] 243-243: trailing spaces

(trailing-spaces)


[error] 249-249: trailing spaces

(trailing-spaces)


[error] 251-251: trailing spaces

(trailing-spaces)

.github/workflows/issue.yml

[error] 6-6: trailing spaces

(trailing-spaces)


[warning] 15-15: wrong indentation: expected 4 but found 6

(indentation)


[warning] 66-66: too many blank lines

(1 > 0) (empty-lines)

🪛 Markdownlint (0.37.0)
.github/ISSUE_TEMPLATE/feature-request.md

28-28: null
Bare URL used

(MD034, no-bare-urls)


25-25: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

CODE_STYLE.md

128-128: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


129-129: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


130-130: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


131-131: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


132-132: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


133-133: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


134-134: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


135-135: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


136-136: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


137-137: Expected: 2; Actual: 4
Unordered list indentation

(MD007, ul-indent)


164-164: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


165-165: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


166-166: Expected: 0; Actual: 2
Unordered list indentation

(MD007, ul-indent)


57-57: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


73-73: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


75-75: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


92-92: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


190-190: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


230-230: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


58-58: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


65-65: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


78-78: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


95-95: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


158-158: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


173-173: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


181-181: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


239-239: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


245-245: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


251-251: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)

CONTRIBUTING.md

104-104: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


113-113: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


128-128: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


139-139: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


143-143: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


158-158: null
No empty links

(MD042, no-empty-links)


159-159: null
No empty links

(MD042, no-empty-links)


161-161: null
No empty links

(MD042, no-empty-links)

DOCUMENTATION.md

25-25: null
Bare URL used

(MD034, no-bare-urls)

PR_GUIDELINES.md

31-31: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


39-39: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)

INSTALLATION.md

321-321: Expected: h3; Actual: h4
Heading levels should only increment by one level at a time

(MD001, heading-increment)


33-33: Expected: 4; Actual: 6
Unordered list indentation

(MD007, ul-indent)


34-34: Expected: 4; Actual: 6
Unordered list indentation

(MD007, ul-indent)


95-95: null
Dollar signs used before commands without showing output

(MD014, commands-show-output)


105-105: null
Bare URL used

(MD034, no-bare-urls)


142-142: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


154-154: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


164-164: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


188-188: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


194-194: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


200-200: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


208-208: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


214-214: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


220-220: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


240-240: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


256-256: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


264-264: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


270-270: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


292-292: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


300-300: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


313-313: null
Fenced code blocks should have a language specified

(MD040, fenced-code-language)


327-327: Expected: fenced; Actual: indented
Code block style

(MD046, code-block-style)


335-335: Expected: fenced; Actual: indented
Code block style

(MD046, code-block-style)


178-178: Expected: #setting-up-react_app_talawa_url-in-env-file; Actual: #setting-up-REACT_APP_TALAWA_URL-in-env-file
Link fragments should be valid

(MD051, link-fragments)


178-178: Expected: #setting-up-react_app_recaptcha_site_key-in-env-file; Actual: #setting-up-REACT_APP_RECAPTCHA_SITE_KEY-in-env-file
Link fragments should be valid

(MD051, link-fragments)

README.md

53-53: null
Multiple spaces after hash on atx style heading

(MD019, no-multiple-space-atx)

.github/ISSUE_TEMPLATE/bug-report.md

36-36: null
Bare URL used

(MD034, no-bare-urls)


33-33: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

🪛 Ruff (0.8.2)
.github/workflows/eslint_disable_check.py

61-61: Loop control variable dirs not used within loop body

Rename unused dirs to _dirs

(B007)

.github/workflows/compare_translations.py

135-135: Within an except clause, raise exceptions with raise ... from err or raise ... from None to distinguish them from errors in exception handling

(B904)

🪛 actionlint (1.7.4)
.github/workflows/codeql-codescan.yml

35-35: the runner of "github/codeql-action/init@v2" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)


41-41: the runner of "github/codeql-action/autobuild@v2" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)


44-44: the runner of "github/codeql-action/analyze@v2" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

.github/workflows/stale.yml

28-28: the runner of "actions/stale@v8" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

.github/workflows/pull-request.yml

61-61: property "changed_files" is not defined in object type {changed-files: {conclusion: string; outcome: string; outputs: {string => string}}}

(expression)


62-62: shellcheck reported issue in this script: SC2086:info:1:12: Double quote to prevent globbing and word splitting

(shellcheck)


79-79: "github.event.pull_request.head.ref" is potentially untrusted. avoid using it directly in inline scripts. instead, pass it through an environment variable. see https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions for more details

(expression)

.github/workflows/issue.yml

29-29: the runner of "actions/github-script@v6" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

🔇 Additional comments (45)
CODE_OF_CONDUCT.md (1)

3-20: LGTM! Well-structured table of contents addition.

The table of contents improves document navigation with proper section linking and hierarchical structure.

🧰 Tools
🪛 LanguageTool

[duplication] ~11-~11: Possible typo: you repeated a word
Context: ...-responsibilities) - Scope - Enforcement - Enforcement Guidelines ...

(ENGLISH_WORD_REPEAT_RULE)

scripts/githooks/update-toc.js (2)

1-2: No issues found.
These imports look good for implementing file system access and command execution, ensuring the script can handle its work efficiently.


14-14: Acknowledgement of final console logging.
Printing a success message at the end provides clarity that all markdown files were processed. This is a good practice.

.github/workflows/stale.yml (3)

14-17: LGTM! Appropriate scheduling configuration

The daily schedule at midnight (UTC) is a reasonable frequency for checking stale items.


29-43: LGTM! Well-structured stale item management configuration

The configuration is comprehensive and well-balanced:

  • Reasonable timeframes (10 days for stale, 180 days for closing)
  • Clear and helpful messages for users
  • Appropriate exemptions for WIP items and milestones
  • Rate limiting with operations-per-run: 30 to prevent overwhelming the API

1-11: Verify README.md guidelines for workflow files

The header comment references a README.md file with guidelines. Let's verify its existence and content.

✅ Verification successful

Stale workflow file should be in a dedicated file as per guidelines

Based on the README.md guidelines, the stale workflow is justified to be in a separate file since it requires a unique cron schedule for periodic checks of stale issues/PRs. This falls under the "File Role Exceptions" which explicitly allows jobs that require unique cron schedules to be placed in dedicated files.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if README.md exists in the workflows directory and contains relevant guidelines
fd -t f "README.md" .github/workflows/ -x cat {}

Length of output: 2122

🧰 Tools
🪛 yamllint (1.35.1)

[error] 6-6: trailing spaces

(trailing-spaces)

public/manifest.json (2)

16-16: Verify the new image path exists

The path to logo512.png has been updated to include the "images/" prefix. Let's verify this path exists to prevent broken PWA icons.

✅ Verification successful

Path to logo512.png is valid and accessible

The verification confirms that the image file exists at the specified path public/images/logo512.png, ensuring the PWA icons will work correctly.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if the image exists in the new path
if [ -f "public/images/logo512.png" ]; then
    echo "✅ Image exists at public/images/logo512.png"
else
    echo "❌ Image not found at public/images/logo512.png"
    echo "Checking for the image in other locations..."
    fd "logo512.png" public/
fi

Length of output: 135


13-13: These changes seem unrelated to fixing user role display issues

The manifest.json changes appear unrelated to the PR's objective of fixing user role display in the 'People' section. Consider:

  1. Moving these PWA icon changes to a separate PR
  2. Focusing this PR solely on the user role display fix

Also applies to: 16-16

DOCUMENTATION.md (1)

1-13: LGTM! Well-structured documentation header

The table of contents is properly structured with HTML comments for automated TOC generation.

.gitignore (6)

13-14: LGTM! Coverage directory pattern updated

The change from -/coverage to coverage/ follows a more standard pattern for ignoring test coverage directories.


Line range hint 21-25: LGTM! Environment file patterns

Correctly ignoring all environment-specific files while keeping the template (.env.example) trackable is a good practice for security.


34-37: LGTM! Editor configuration files

Properly ignoring editor-specific files and swap files keeps the repository clean from personal IDE configurations.


31-32: LGTM! Debug log files

Correctly ignoring debug logs prevents unnecessary files from being tracked.


3-5: ⚠️ Potential issue

Reconsider ignoring lock files

Lock files (yarn.lock, pnpm-lock.yaml) should typically be committed to the repository as they ensure consistent dependency installations across different environments and help prevent "works on my machine" issues.

Let's verify the project's package manager setup:

✅ Verification successful

Keep package-lock.json, remove other lock files

The project is using npm as its package manager, evidenced by:

  • Presence of package-lock.json
  • No specific package manager configuration in package.json
  • No .yarn or .pnpm configuration files

Therefore:

  • ✅ Ignoring yarn.lock and pnpm-lock.yaml is correct as they are not the primary lock files for this project
  • package-lock.json should not be ignored as it's the primary lock file for npm projects
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check for package manager configuration
echo "Checking for package manager files..."
fd -t f "package.json|yarn.lock|pnpm-lock.yaml|package-lock.json" -x echo "Found: {}"

# Check if this is a monorepo
echo -e "\nChecking for workspace configuration..."
rg -l "workspaces" package.json

Length of output: 348


Script:

#!/bin/bash
# Let's check the package.json content to understand the package manager setup
echo "Package.json content:"
cat package.json | jq '{type, packageManager, engines}'

# Check if there are any npm/yarn/pnpm specific configs
echo -e "\nChecking for package manager config files:"
fd -t f "^\.npm|^\.yarn|^\.pnpm" -x echo "Found: {}"

Length of output: 356


Line range hint 1-37: Verify PR scope and description

The PR description mentions fixing a user role display issue (#2455), but the changes in this file are configuration-related. Please verify if:

  1. There are additional files in the PR that address the user role display issue
  2. The PR description needs to be updated to reflect these configuration changes

Let's check for related changes:

scripts/__mocks__/@dicebear/core.ts (1)

1-5: Good use of Jest mock for controlled testing
By returning a mock object with toDataUri, you ensure that any code requiring createAvatar does not need the real functionality during tests. This provides a stable, predictable test environment.

jest.config.js (1)

1-1: Ensure alignment with PR objectives.

This is a new Jest configuration file, but the PR objective relates to a UI bug fix (#2455) about user roles not displaying. Before finalizing the PR, ensure that relevant tests are added or updated to confirm that user roles in the 'People' section function correctly.

public/locales/hi/common.json (4)

79-79: Review placeholder positioning in Hindi sentences

The placement of placeholders ({{text}}, {{item}}) needs linguistic verification to ensure proper Hindi grammar when dynamic content is inserted.

Could you please have a native Hindi speaker verify the grammatical correctness of these translations, particularly:

  • "{{text}} के लिए खोज परिणाम"
  • "{{item}} सफलतापूर्वक जोड़ा गया"
  • "के द्वारा खोजें {{item}}"

Also applies to: 83-85, 97-97


1-98: JSON structure looks good!

The file is well-formatted with consistent indentation and valid JSON syntax.


9-13: Verify role translations across all language files

Since this PR fixes the user role display issue, ensure these role-related translations exist in other language files as well.

Also applies to: 70-71

✅ Verification successful

Role translations are present and consistent across all language files

The verification shows that all the necessary role-related translations (admin, admins, user, superAdmin) are properly implemented across all language files (en, fr, sp, zh). Each language file contains the required translations with appropriate localized text:

  • English (en): Standard English translations
  • French (fr): Properly translated to French (e.g., "Administrateurs", "Utilisateur")
  • Spanish (sp): Has the basic structure but needs Spanish translations for some terms
  • Chinese (zh): Properly translated to Chinese (e.g., "管理员", "用户")
  • Hindi (hi): Contains the new translations as shown in the review
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check for role translations in other language files
for lang in en fr sp zh; do
  echo "Checking $lang translations..."
  if [ -f "public/locales/$lang/common.json" ]; then
    jq '. | with_entries(select(.key | test("admin|user|role"; "i")))' "public/locales/$lang/common.json"
  fi
done

Length of output: 1965


9-13: Verify role translations in People section

These role translations are crucial for fixing issue #2455 (User Role Not Displaying in 'People' Section). Let's verify their implementation:

✅ Verification successful

Based on the gathered information, I can now provide the final response:

Role translations are correctly implemented and used

The Hindi translations for user roles in common.json are properly integrated with the Organization People screen where:

  1. The translations are used via the useTranslation hook with both translation and common namespaces
  2. The role-based UI shows admins/users through a dropdown toggle that uses these translations
  3. The translations are consistent with the role types shown in the data grid component
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for usage of these role translations in the People section components
rg -l "useTranslation|i18n" src/components/People

Length of output: 113


Script:

#!/bin/bash
# First, let's find the correct path for People-related components
fd -t f "People.*\.(tsx|jsx|js)"

# Then search for translation usage in those files
rg -l "useTranslation|i18n" $(fd -t f "People.*\.(tsx|jsx|js)")

# Also search for direct usage of these role keys
rg -l "(admin|superAdmin|user|members)" $(fd -t f "People.*\.(tsx|jsx|js)")

Length of output: 2859


Script:

#!/bin/bash
# Let's check how these translations are used in the main components
rg -A 3 "useTranslation|i18n" src/screens/OrganizationPeople/OrganizationPeople.tsx
rg -A 3 "role" src/components/OrgPeopleListCard/OrgPeopleListCard.tsx

# Also check the actual translation usage
rg "(admin|superAdmin|user|members)" src/components/OrgPeopleListCard/OrgPeopleListCard.tsx

Length of output: 645


Script:

#!/bin/bash
# Let's check the actual component that displays user roles
rg -A 5 "userRole|user_role|role" src/screens/OrganizationPeople/OrganizationPeople.tsx

# Also check the GraphQL query that fetches user roles
rg -A 10 "USERS_LIST" src/screens/OrganizationPeople/OrganizationPeople.tsx

# Check if there are any role-related translations in the organizationPeople namespace
rg -l "organizationPeople" public/locales/

Length of output: 810


Script:

#!/bin/bash
# Let's check the translation files for role-related keys
rg -A 5 "role|admin|superAdmin|user" public/locales/hi/translation.json

# Check the GraphQL query in a different way
rg -A 10 "gql|query" src/screens/OrganizationPeople/OrganizationPeople.tsx

# Check if there's a types file that might show the role structure
fd -t f "types.*\.(ts|tsx)" src/screens/OrganizationPeople/

Length of output: 9069


Script:

#!/bin/bash
# Let's check the translation keys in the organizationPeople section
rg -A 5 "organizationPeople" public/locales/hi/translation.json

# Check the types file for role definitions
cat src/screens/OrganizationPeople/MockDataTypes.ts

# Check if there are any role-related components in the organization people screen
rg -A 5 "userType|role|admin|superAdmin" src/screens/OrganizationPeople/OrganizationPeople.tsx

Length of output: 5480

.github/workflows/eslint_disable_check.py (1)

29-48: Use a more specific exception or handle errors carefully
Your try/except covers all exceptions when reading the file. Consider handling specific I/O errors (e.g., IOError, FileNotFoundError), so legitimate bugs are not inadvertently suppressed.

setup.ts (2)

13-19: Ensure synchronous creation of the .env file under error-free conditions
When creating the file .env here, you also read .env.example. Consider verifying that .env.example exists and handling file I/O errors (e.g., if .env.example is missing), to avoid silent failures.


111-117: Ensure robust error handling for asynchronous reads
If an error occurs while reading .env, it is only logged in the callback. Consider exiting gracefully or prompting the user to handle the corrupted/missing file.

.github/workflows/auto-label.json5 (1)

1-8: LGTM
This configuration is straightforward and succinct. The synonyms and default labels are clearly defined and should integrate well with the label automation workflow.

config/vite.config.ts (2)

1-5: Imports look good.
All required plugins are correctly imported, and there's no duplication or unused import. Keep it up!


8-12: Clarify the base configuration.
You have a comment suggesting that base could be "/". If your final production deployment expects a sub-path, ensure the base field reflects that. Otherwise, confirm "" is intended.

.github/workflows/check-tsdoc.js (1)

1-3: No immediate issues found.
The imports and asynchronous file operations are appropriate.

scripts/githooks/check-localstorage-usage.js (1)

10-18: Confirmed: No TypeScript type annotations recommended in .js files.
As learned from previous discussions, the code is correct in a .js context. No type annotations belong here.

🧰 Tools
🪛 eslint

[error] 10-10: Missing return type on function.

(@typescript-eslint/explicit-function-return-type)

.github/workflows/talawa_admin_md_mdx_format_adjuster.py (3)

1-14: Well-structured docstring.
The script’s purpose and compliance references are clearly documented. Good job!


19-44: Regex usage is correct.
The logic to avoid double-escaping looks solid, ensuring no repeated backslashes.


66-96: No concurrency or security concerns.
Reading and writing local files is fine here. The script is straightforward and risk-free from an injection perspective.

.github/workflows/countline.py (1)

96-120: Clarify file exclusion behavior.

The _valid_exclusions function builds a list of filepaths from user input. If a user passes a relative path that appears in multiple places, only one possibility is handled. Consider providing warnings or clarifications that only the first matching file is excluded.

README.md (2)

24-31: LGTM! Well-structured Table of Contents

The addition of a Table of Contents with clear sections improves documentation navigation.


45-51: LGTM! Clear documentation structure

The documentation section provides clear links to installation, contribution guidelines, and other important resources.

.github/workflows/pull-request-target.yml (1)

25-72: LGTM! Clear PR review policy

The PR review policy is well-structured and provides clear guidelines for contributors.

🧰 Tools
🪛 yamllint (1.35.1)

[error] 27-27: trailing spaces

(trailing-spaces)


[error] 28-28: trailing spaces

(trailing-spaces)


[error] 29-29: trailing spaces

(trailing-spaces)


[error] 31-31: trailing spaces

(trailing-spaces)


[error] 33-33: trailing spaces

(trailing-spaces)


[error] 34-34: trailing spaces

(trailing-spaces)


[error] 36-36: trailing spaces

(trailing-spaces)


[error] 41-41: trailing spaces

(trailing-spaces)


[error] 46-46: trailing spaces

(trailing-spaces)


[error] 71-71: trailing spaces

(trailing-spaces)

.eslintrc.json (2)

77-121: LGTM! Well-structured naming conventions

The naming convention rules are well-defined and provide clear guidelines for different types of identifiers.


133-134: Verify the impact of disabling expect-expect

Disabling jest/expect-expect might allow tests without assertions to pass. Consider if this aligns with your testing strategy.

✅ Verification successful

Based on the test results, I can see that all test files contain assertions using expect(). The tests are properly verifying functionality through assertions, which means disabling jest/expect-expect rule is safe in this codebase.

Disabling expect-expect is acceptable for this codebase

The codebase demonstrates consistent use of assertions in tests. The jest/expect-expect rule can be safely disabled as:

  1. All test files contain proper assertions using expect()
  2. Tests are thoroughly verifying functionality through assertions
  3. No test files were found that lack assertions
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for test files that might lack assertions
rg -l "test|describe|it\(" --type ts --type tsx | xargs rg -L "expect\("

Length of output: 68157

package.json (2)

8-10: Review beta dependencies.

Several Apollo dependencies are in beta. This could lead to stability issues:

  • @apollo/client ^3.11.8
  • @apollo/link-error ^2.0.0-beta.3
  • @apollo/react-testing ^4.0.0

Consider using stable versions unless there's a specific need for beta features.


2-3: Verify the major version upgrade.

The version jump from 0.1.0 to 3.0.0 is significant. Please ensure this follows semantic versioning principles and that all breaking changes are documented.

.github/workflows/pull-request.yml (1)

85-126: LGTM! Good security practice

The sensitive files check is well implemented with proper exclusions for automated processes.

🧰 Tools
🪛 yamllint (1.35.1)

[error] 92-92: trailing spaces

(trailing-spaces)


[error] 126-126: trailing spaces

(trailing-spaces)

schema.graphql (2)

1449-1454: LGTM! Well-defined user type enumeration

The UserType enum properly defines the possible user roles with clear, distinct values.


105-115: Verify role-related fields implementation for the 'People' section

The schema structure for user roles and organization membership appears complete with:

  • Organization members, admins, and blocked users
  • User's joined organizations
  • AppUserProfile with admin status

However, given the PR objective about roles not displaying:

  1. Ensure resolvers are properly implementing these fields
  2. Verify proper error handling in resolvers
  3. Consider adding a dedicated role or membership status field

Run this script to verify the resolver implementation:

Also applies to: 747-774

public/locales/hi/translation.json (2)

53-54: LGTM! User role translations are consistent across sections.

The translations for user roles are properly defined and consistently used:

  • admin → व्यवस्थापक
  • user → उपयोगकर्ता
  • superAdmin → सुपर प्रशासक

Also applies to: 236-238


285-319: Translations for 'People' section are complete and aligned with the PR objective.

All necessary translations for displaying user roles in the 'People' section are present, including:

  • Section title
  • Role-specific labels
  • Action buttons
  • Search and filter options

runs-on: ubuntu-latest

steps:
- uses: actions/stale@v8
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Update actions/stale action version for compatibility

The current version might have compatibility issues with the GitHub Actions runner.

- uses: actions/stale@v8
+ uses: actions/stale@v9
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- uses: actions/stale@v8
- uses: actions/stale@v9
🧰 Tools
🪛 actionlint (1.7.4)

28-28: the runner of "actions/stale@v8" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

@@ -10,10 +10,10 @@
{
"src": "logo192.png",
"type": "image/png",
"sizes": "192x192"
"sizes": "16x16"
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Critical: Incorrect icon size specification for logo192.png

The size specification "16x16" for logo192.png is incorrect and inconsistent with:

  1. The filename which suggests a 192x192 image
  2. PWA requirements which typically expect specific icon sizes for different devices

Apply this fix:

-      "sizes": "16x16"
+      "sizes": "192x192"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
"sizes": "16x16"
"sizes": "192x192"

Comment on lines +2 to +8
"talawaApiUnavailable": "Talawa-API service is unavailable!. Is it running? Check your network connectivity too.",
"notFound": "Not found",
"unknownError": "An unknown error occurred. Please try again later. {{msg}}",
"notAuthorised": "Sorry! you are not Authorised!",
"errorSendingMail": "Error sending mail",
"emailNotRegistered": "Email not registered",
"notFoundMsg": "Oops! The Page you requested was not found!",
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Missing Spanish translations for error messages

Most error messages are still in English despite being in the Spanish localization file (sp/errors.json). Only the last two messages are properly translated to Spanish. Please provide Spanish translations for all messages.

Example of expected translations:

-  "talawaApiUnavailable": "Talawa-API service is unavailable!. Is it running? Check your network connectivity too.",
+  "talawaApiUnavailable": "¡El servicio Talawa-API no está disponible! ¿Está funcionando? Verifique también su conectividad de red.",
-  "notFound": "Not found",
+  "notFound": "No encontrado",

Committable suggestion skipped: line range outside the PR's diff.

Comment on lines +22 to +29
The process in easy:
1. Install `talawa-docs` on your system
1. Launch docusaurus on your system according to the `talawa-docs`documentation.
- A local version of `docs.talawa.io` should automatically launched in your browser at http://localhost:3000/
1. Add/modify the markdown documents to the `docs/` directory of the `talawa-docs` repository
1. If adding a file, then you will also need to edit the `sidebars.js` which is used to generate the [docs.talawa.io](https://docs.talawa.io/) menus.
1. Always monitor the local website in your brower to make sure the changes are acceptable.
- You'll be able to see errors that you can use for troubleshooting in the CLI window you used to launch the local website.
Copy link
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Fix grammatical error and URL formatting

There are a couple of issues in this section:

  1. Grammar: "should automatically launched" should be "should automatically launch"
  2. The bare URL should be formatted as a proper Markdown link
-    - A local version of `docs.talawa.io` should automatically launched in your browser at http://localhost:3000/
+    - A local version of `docs.talawa.io` should automatically launch in your browser at [http://localhost:3000](http://localhost:3000/)
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
The process in easy:
1. Install `talawa-docs` on your system
1. Launch docusaurus on your system according to the `talawa-docs`documentation.
- A local version of `docs.talawa.io` should automatically launched in your browser at http://localhost:3000/
1. Add/modify the markdown documents to the `docs/` directory of the `talawa-docs` repository
1. If adding a file, then you will also need to edit the `sidebars.js` which is used to generate the [docs.talawa.io](https://docs.talawa.io/) menus.
1. Always monitor the local website in your brower to make sure the changes are acceptable.
- You'll be able to see errors that you can use for troubleshooting in the CLI window you used to launch the local website.
The process in easy:
1. Install `talawa-docs` on your system
1. Launch docusaurus on your system according to the `talawa-docs`documentation.
- A local version of `docs.talawa.io` should automatically launch in your browser at [http://localhost:3000](http://localhost:3000/)
1. Add/modify the markdown documents to the `docs/` directory of the `talawa-docs` repository
1. If adding a file, then you will also need to edit the `sidebars.js` which is used to generate the [docs.talawa.io](https://docs.talawa.io/) menus.
1. Always monitor the local website in your brower to make sure the changes are acceptable.
- You'll be able to see errors that you can use for troubleshooting in the CLI window you used to launch the local website.
🧰 Tools
🪛 Markdownlint (0.37.0)

25-25: null
Bare URL used

(MD034, no-bare-urls)

🪛 LanguageTool

[grammar] ~25-~25: The modal verb ‘should’ requires the verb’s base form.
Context: ...f docs.talawa.io should automatically launched in your browser at http://localhost:300...

(MD_BASEFORM)


[grammar] ~26-~26: Did you mean the formatting language “Markdown” (= proper noun)?
Context: ...ttp://localhost:3000/ 1. Add/modify the markdown documents to the docs/ directory of t...

(MARKDOWN_NNP)

Comment on lines +60 to +65
coverageThreshold: {
global: {
lines: 20,
statements: 20,
},
},
Copy link
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Review low coverage thresholds.

A global threshold of 20% is quite low and may allow critical logic to go untested. Consider raising these thresholds incrementally or mandating coverage for key functionalities, including the user role display logic that the PR intends to fix.

Comment on lines +236 to +240
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '22.x'

Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Update Node.js version for consistency

Match the Node.js version with the previous jobs.

-          node-version: '22.x'
+          node-version: '20.x'
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '22.x'
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '20.x'

Comment on lines +31 to +34
uses: actions/setup-node@v4
with:
node-version: '22.x'

Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Update Node.js version to a released version

The specified Node.js version 22.x is not yet released. Use the current LTS version instead.

-          node-version: '22.x'
+          node-version: '20.x'
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
uses: actions/setup-node@v4
with:
node-version: '22.x'
uses: actions/setup-node@v4
with:
node-version: '20.x'

if: steps.changed-files.outputs.only_changed != 'true'
env:
CHANGED_FILES: ${{ steps.changed_files.outputs.all_changed_files }}
run: npx eslint ${CHANGED_FILES} && python .github/workflows/eslint_disable_check.py
Copy link
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Fix potential word splitting issue in shell command

The current command could fail with filenames containing spaces.

-        run: npx eslint ${CHANGED_FILES} && python .github/workflows/eslint_disable_check.py
+        run: npx eslint "${CHANGED_FILES}" && python .github/workflows/eslint_disable_check.py
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
run: npx eslint ${CHANGED_FILES} && python .github/workflows/eslint_disable_check.py
run: npx eslint "${CHANGED_FILES}" && python .github/workflows/eslint_disable_check.py
🧰 Tools
🪛 actionlint (1.7.4)

62-62: shellcheck reported issue in this script: SC2086:info:1:12: Double quote to prevent globbing and word splitting

(shellcheck)

Comment on lines +776 to +788
type OrganizationCustomField {
_id: ID!
name: String!
organizationId: String!
type: String!
}

type OrganizationCustomField {
_id: ID!
name: String!
organizationId: String!
type: String!
}
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Remove duplicate type definitions

The following types are defined multiple times:

  1. OrganizationCustomField (lines 776-781 and 783-788)
  2. UserPhone (lines 1348-1352 and 1407-1411)

This can cause schema validation errors.

Remove the duplicate definitions:

-type OrganizationCustomField {
-  _id: ID!
-  name: String!
-  organizationId: String!
-  type: String!
-}

-type UserPhone {
-  home: PhoneNumber
-  mobile: PhoneNumber
-  work: PhoneNumber
-}

Also applies to: 1407-1411

Comment on lines +1 to +1483
"errorAddingAttendee": "उपस्थित होने वाले को जोड़ने में त्रुटि",
"errorRemovingAttendee": "उपस्थित होने वाले को हटाने में त्रुटि"
},
"userCampaigns": {
"title": "धन उगाहने के अभियान",
"searchByName": "नाम से खोजें...",
"searchBy": "द्वारा खोजें",
"pledgers": "प्रतिज्ञाकर्ता",
"campaigns": "अभियान",
"myPledges": "मेरी प्रतिज्ञाएँ",
"lowestAmount": "सबसे कम राशि",
"highestAmount": "सबसे अधिक राशि",
"lowestGoal": "सबसे कम लक्ष्य",
"highestGoal": "सबसे बड़ा लक्ष्य",
"latestEndDate": "सबसे अंतिम समाप्ति तिथि",
"earliestEndDate": "सबसे पहले समाप्ति तिथि",
"addPledge": "प्रतिज्ञा जोड़ें",
"viewPledges": "प्रतिज्ञाएँ देखें",
"noPledges": "कोई प्रतिज्ञा नहीं मिली",
"noCampaigns": "कोई अभियान नहीं मिला"
},
"userPledges": {
"title": "मेरी प्रतिज्ञाएँ"
},
"eventVolunteers": {
"volunteers": "स्वयंसेवक",
"volunteer": "स्वयंसेवक",
"volunteerGroups": "स्वयंसेवक समूह",
"individuals": "व्यक्ति",
"groups": "समूह",
"status": "स्थिति",
"noVolunteers": "कोई स्वयंसेवक नहीं",
"noVolunteerGroups": "कोई स्वयंसेवक समूह नहीं",
"add": "जोड़ें",
"mostHoursVolunteered": "सबसे अधिक घंटे स्वयंसेवा",
"leastHoursVolunteered": "सबसे कम घंटे स्वयंसेवा",
"accepted": "स्वीकृत",
"addVolunteer": "स्वयंसेवक जोड़ें",
"removeVolunteer": "स्वयंसेवक हटाएं",
"volunteerAdded": "स्वयंसेवक सफलतापूर्वक जोड़ा गया",
"volunteerRemoved": "स्वयंसेवक सफलतापूर्वक हटाया गया",
"volunteerGroupCreated": "स्वयंसेवक समूह सफलतापूर्वक बनाया गया",
"volunteerGroupUpdated": "स्वयंसेवक समूह सफलतापूर्वक अपडेट किया गया",
"volunteerGroupDeleted": "स्वयंसेवक समूह सफलतापूर्वक हटाया गया",
"removeVolunteerMsg": "क्या आप वाकई इस स्वयंसेवक को हटाना चाहते हैं?",
"deleteVolunteerGroupMsg": "क्या आप वाकई इस स्वयंसेवक समूह को हटाना चाहते हैं?",
"leader": "नेता",
"group": "समूह",
"createGroup": "समूह बनाएं",
"updateGroup": "समूह अपडेट करें",
"deleteGroup": "समूह हटाएं",
"volunteersRequired": "आवश्यक स्वयंसेवक",
"volunteerDetails": "स्वयंसेवक विवरण",
"hoursVolunteered": "स्वयंसेवा घंटे",
"groupDetails": "समूह विवरण",
"creator": "निर्माता",
"requests": "अनुरोध",
"noRequests": "कोई अनुरोध नहीं",
"latest": "नवीनतम",
"earliest": "प्रारंभिक",
"requestAccepted": "अनुरोध सफलतापूर्वक स्वीकृत",
"requestRejected": "अनुरोध सफलतापूर्वक अस्वीकृत",
"details": "विवरण",
"manageGroup": "समूह प्रबंधित करें",
"mostVolunteers": "सबसे अधिक स्वयंसेवक",
"leastVolunteers": "सबसे कम स्वयंसेवक"
},
"userVolunteer": {
"title": "स्वयंसेवकता",
"name": "शीर्षक",
"upcomingEvents": "आगामी कार्यक्रम",
"requests": "अनुरोध",
"invitations": "निमंत्रण",
"groups": "स्वयंसेवक समूह",
"actions": "क्रियाएँ",
"searchByName": "नाम से खोजें",
"latestEndDate": "नवीनतम समाप्ति तिथि",
"earliestEndDate": "प्रारंभिक समाप्ति तिथि",
"noEvents": "कोई आगामी कार्यक्रम नहीं",
"volunteer": "स्वयंसेवक",
"volunteered": "स्वयंसेवित",
"join": "शामिल हों",
"joined": "शामिल हुआ",
"searchByEventName": "कार्यक्रम शीर्षक से खोजें",
"filter": "फ़िल्टर",
"groupInvite": "समूह निमंत्रण",
"individualInvite": "व्यक्तिगत निमंत्रण",
"noInvitations": "कोई निमंत्रण नहीं",
"accept": "स्वीकारें",
"reject": "अस्वीकार करें",
"receivedLatest": "हाल में प्राप्त",
"receivedEarliest": "सबसे पहले प्राप्त",
"invitationAccepted": "निमंत्रण सफलतापूर्वक स्वीकार किया गया",
"invitationRejected": "निमंत्रण सफलतापूर्वक अस्वीकृत",
"volunteerSuccess": "स्वयंसेवक के रूप में अनुरोध सफलतापूर्वक किया गया",
"recurring": "पुनरावृत्ति",
"groupInvitationSubject": "स्वयंसेवक समूह में शामिल होने के लिए निमंत्रण",
"eventInvitationSubject": "कार्यक्रम के लिए स्वयंसेवक बनने का निमंत्रण"
}
}
Copy link
Contributor

Choose a reason for hiding this comment

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

💡 Codebase verification

Translation inconsistency needs standardization for admin-related terms

The detailed analysis reveals a systematic pattern in how the two Hindi translations for "admin" are used:

  1. "व्यवस्थापक" is used for:

    • Application titles and portal names (e.g., "तालावा व्यवस्थापक")
    • Action-related terms (e.g., "addAdmin", "removeAdmin")
    • Status messages and notifications
  2. "प्रशासक" is used for:

    • Role labels and user types
    • Plural form "admins"
    • When paired with "superAdmin"

While both translations are grammatically correct, having two different terms for the same concept can cause user confusion. The translation should be standardized to use one term consistently throughout the application.

Recommendation: Use "प्रशासक" consistently throughout the application as it:

  1. Is already used in role-specific contexts
  2. Matches with the translation of "superAdmin" ("सुपर प्रशासक")
  3. Is more commonly used in formal Hindi documentation
🔗 Analysis chain

LGTM! The JSON structure is well-organized and properly formatted.

The file follows a clear hierarchical structure with logical grouping of translations by feature/page.


Hindi translations for user roles and related sections are properly implemented

The verification shows:

  1. The JSON structure is valid with matching number of opening (93) and closing (93) braces
  2. No empty translations were found
  3. User roles translations are present in multiple relevant sections:
    • Navigation menu: "roles": "भूमिकाएँ"
    • Error messages: "roles not found!": "भूमिकाएँ नहीं मिलीं!"
  4. Related role translations are complete:
    • "admin": "व्यवस्थापक"
    • "user": "उपयोगकर्ता"
    • "superAdmin": "सुपर प्रशासक"

Let's verify the completeness of role-related translations across the file:


Hindi translations for user roles are complete but have minor inconsistencies

The verification reveals that all role-related translations are present but there are some inconsistencies:

  1. The word "admin" has two different translations:

    • "व्यवस्थापक" (line 53)
    • "प्रशासक" (lines 236, 837)
  2. All other role translations are consistent:

    • "user": "उपयोगकर्ता" (consistently used in all 5 occurrences)
    • "superAdmin": "सुपर प्रशासक" (consistently used in both occurrences)
    • "roles": "भूमिकाएँ" (consistently used in both occurrences)

Let's verify if these translations are used in the correct context:


Translation inconsistency found in admin role translations

The context check reveals that the word "admin" has two different translations in different sections:

  1. In the login page section (line 53):

    • "admin": "व्यवस्थापक" (used in general context)
  2. In the users and settings sections (lines 236, 837):

    • "admin": "प्रशासक" (used in role-specific contexts)

Both translations are valid Hindi words for "administrator", but for consistency, one term should be used throughout the application. The term "प्रशासक" appears to be used more frequently in role-specific contexts.

Let's verify if there are any other instances of these translations:

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Verify JSON syntax and structure
cat public/locales/hi/translation.json | jq '.' > /dev/null

Length of output: 47


Script:

#!/bin/bash
# Let's try a different approach to verify the JSON structure and content

# 1. Check if file exists and is readable
if [ ! -f "public/locales/hi/translation.json" ]; then
    echo "File does not exist"
    exit 1
fi

# 2. Count total number of opening and closing braces to verify basic structure
echo "=== Brace count check ==="
echo "Opening braces:"
grep -o "{" public/locales/hi/translation.json | wc -l
echo "Closing braces:"
grep -o "}" public/locales/hi/translation.json | wc -l

# 3. Check for any common JSON syntax errors
echo -e "\n=== Basic syntax check ==="
grep -n "[^[:space:]]," public/locales/hi/translation.json | grep -v '",$' || echo "No trailing comma issues found"

# 4. Look for any incomplete translations (empty strings)
echo -e "\n=== Empty translation check ==="
grep -n '": *"" *,' public/locales/hi/translation.json || echo "No empty translations found"

# 5. Check specific sections related to user roles
echo -e "\n=== User roles section check ==="
grep -A 5 '"roles": ' public/locales/hi/translation.json || echo "No direct roles key found"

Length of output: 1911


Script:

#!/bin/bash
# Check for all role-related translations
echo "=== Role-related translations ==="
grep -n '"admin"\|"user"\|"superAdmin"\|"roles"\|"member"' public/locales/hi/translation.json

# Check if any role-related keys are missing translations
echo -e "\n=== Checking for missing role translations ==="
for key in '"admin":' '"user":' '"superAdmin":' '"roles":' '"member":'; do
    echo "Checking $key"
    grep -n "$key" public/locales/hi/translation.json
done

Length of output: 1904


Script:

#!/bin/bash
# Check the context of different admin translations
echo "=== Context for admin translations ==="
for line in {48..58} {231..241} {832..842}; do
    echo "Line $line:"
    sed -n "${line}p" public/locales/hi/translation.json
done

Length of output: 5089


Script:

#!/bin/bash
# Check for all instances of both admin translations
echo "=== All instances of admin translations ==="
echo "Searching for व्यवस्थापक:"
grep -n "व्यवस्थापक" public/locales/hi/translation.json

echo -e "\nSearching for प्रशासक:"
grep -n "प्रशासक" public/locales/hi/translation.json

Length of output: 1658

@palisadoes
Copy link
Contributor

This PR has too many submitted files that are out of scope of the original issue.

Please ensure the following:

  1. Fetch the latest upstream/develop-postgres files
  2. Create a new local branch based on the latest upstream/develop-postgres branch.
    1. Your new local branch must not have the same name
  3. Make your PR modifications based on this new local branch
  4. Submit your PRs against our develop-postgres branch.

Please ask the slack channels for assistance.

Closing

@palisadoes palisadoes closed this Dec 27, 2024
@AryanSwaroop
Copy link
Author

ok doing the changes !

1 similar comment
@AryanSwaroop
Copy link
Author

ok doing the changes !

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.

7 participants