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

Refactoring CSS files: merged OrganizationFunds styles into global app.module.css and updated component references #2541

Conversation

swastikCommits
Copy link

@swastikCommits swastikCommits commented Dec 1, 2024

What kind of change does this PR introduce?

Refactoring

Issue Number:

Fixes #2516

Did you add tests for your changes?

yes

If relevant, did you update the documentation?

Summary

Looking forward to contribute to the community.

Does this PR introduce a breaking change?

No

Other information

Have you read the contributing guide?

YES

Summary by CodeRabbit

  • New Features

    • Introduced a new Dockerfile for building the Node.js application.
    • Added a section in INSTALLATION.md for Docker installation instructions.
    • Enhanced the pull request template with a "Checklist" section for code review and test coverage.
  • Bug Fixes

    • Improved error handling in various components, ensuring better user feedback.
  • Style

    • Updated CSS styles across multiple components for improved visual consistency and responsiveness.
    • Introduced new CSS variables and classes to enhance theming capabilities.
  • Tests

    • Added unit tests for the AddOn component using Vitest.
    • Updated test cases for the LeftDrawer component to reflect changes in button styling.
  • Chores

    • Updated dependencies and scripts in package.json.
    • Refactored ESLint and TypeScript configurations for improved code quality.

dependabot bot and others added 18 commits November 14, 2024 10:53
Bumps [sass](https://github.com/sass/dart-sass) from 1.80.6 to 1.80.7.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](sass/dart-sass@1.80.6...1.80.7)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…oesFoundation#2434)

Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.30.0 to 2.31.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](import-js/eslint-plugin-import@v2.30.0...v2.31.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…dation#2435)

Bumps [@mui/x-charts](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts) from 7.22.1 to 7.22.2.
- [Release notes](https://github.com/mui/mui-x/releases)
- [Changelog](https://github.com/mui/mui-x/blob/v7.22.2/CHANGELOG.md)
- [Commits](https://github.com/mui/mui-x/commits/v7.22.2/packages/x-charts)

---
updated-dependencies:
- dependency-name: "@mui/x-charts"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…dation#2436)

Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.3 to 18.3.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* added docker check to workflow

* made recommended changes to docker check in workflow

* added changes to docker check inn workflow as recommended

* added changes

* updated indentation in pull-request.yml file

* updated indentation in pull-request.yml file

* added Dockerfile and Docker-compose.yml file

* added Dockerfile and Docker-compose.yml file

* updated .docker-ignore file

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* properly formatted code

* trying to make docker check pass

* trying to make docker check pass

* updated INSTALLATION.md

* updated INSTALLATION.md

* added recommended changes to INSTALLATION.md

* added recommended changes to INSTALLATION.md

* added recommended changes to INSTALLATION.md

* updated docker workflow

* updated INSTALLATION.md
* Updated pr template with checklist

* Additional changes for the PR template

* Changed the url for the PR template
* Update pull-request.yml

* update the @mui/x-date-pickers (#2439)

* chore(deps): bump sass from 1.80.6 to 1.80.7 (#2433)

Bumps [sass](https://github.com/sass/dart-sass) from 1.80.6 to 1.80.7.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.6...1.80.7)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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

* chore(deps): bump eslint-plugin-import from 2.30.0 to 2.31.0 (#2434)

Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.30.0 to 2.31.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.30.0...v2.31.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

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

* chore(deps): bump @mui/x-charts from 7.22.1 to 7.22.2 (#2435)

Bumps [@mui/x-charts](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts) from 7.22.1 to 7.22.2.
- [Release notes](https://github.com/mui/mui-x/releases)
- [Changelog](https://github.com/mui/mui-x/blob/v7.22.2/CHANGELOG.md)
- [Commits](https://github.com/mui/mui-x/commits/v7.22.2/packages/x-charts)

---
updated-dependencies:
- dependency-name: "@mui/x-charts"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

* chore(deps): bump @types/react from 18.3.3 to 18.3.12 (#2436)

Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.3 to 18.3.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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

* Update pull-request.yml

* update the @mui/x-date-pickers

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Peter Harrison <16875803+palisadoes@users.noreply.github.com>

* Update dependabot.yaml

* chore(deps): bump @pdfme/generator from 5.1.7 to 5.2.3 (#2440)

Bumps [@pdfme/generator](https://github.com/pdfme/pdfme) from 5.1.7 to 5.2.3.
- [Release notes](https://github.com/pdfme/pdfme/releases)
- [Changelog](https://github.com/pdfme/pdfme/blob/main/RELEASE.md)
- [Commits](https://github.com/pdfme/pdfme/compare/5.1.7...5.2.3)

---
updated-dependencies:
- dependency-name: "@pdfme/generator"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

* chore(deps): bump @types/node from 22.5.4 to 22.9.0 (#2441)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.5.4 to 22.9.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

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

* chore(deps): bump @babel/preset-env from 7.25.4 to 7.26.0 (#2443)

Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.25.4 to 7.26.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.0/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

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

* chore(deps): bump @vitejs/plugin-react from 4.3.2 to 4.3.3 (#2442)

Bumps [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) from 4.3.2 to 4.3.3.
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/v4.3.3/packages/plugin-react)

---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

* Docker 1 (#2445)

* added docker check to workflow

* made recommended changes to docker check in workflow

* added changes to docker check inn workflow as recommended

* added changes

* updated indentation in pull-request.yml file

* updated indentation in pull-request.yml file

* added Dockerfile and Docker-compose.yml file

* added Dockerfile and Docker-compose.yml file

* updated .docker-ignore file

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* added recommended changes by code rabbit

* properly formatted code

* chore(deps): bump sass from 1.80.6 to 1.80.7 (#2433)

Bumps [sass](https://github.com/sass/dart-sass) from 1.80.6 to 1.80.7.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.80.6...1.80.7)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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

* chore(deps): bump eslint-plugin-import from 2.30.0 to 2.31.0 (#2434)

Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.30.0 to 2.31.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.30.0...v2.31.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

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

* chore(deps): bump @mui/x-charts from 7.22.1 to 7.22.2 (#2435)

Bumps [@mui/x-charts](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts) from 7.22.1 to 7.22.2.
- [Release notes](https://github.com/mui/mui-x/releases)
- [Changelog](https://github.com/mui/mui-x/blob/v7.22.2/CHANGELOG.md)
- [Commits](https://github.com/mui/mui-x/commits/v7.22.2/packages/x-charts)

---
updated-dependencies:
- dependency-name: "@mui/x-charts"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

* chore(deps): bump @types/react from 18.3.3 to 18.3.12 (#2436)

Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.3.3 to 18.3.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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

* Update pull-request.yml

* trying to make docker check pass

* trying to make docker check pass

* updated INSTALLATION.md

* updated INSTALLATION.md

* added recommended changes to INSTALLATION.md

* added recommended changes to INSTALLATION.md

* added recommended changes to INSTALLATION.md

* Update dependabot.yaml

* updated docker workflow

* updated INSTALLATION.md

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Peter Harrison <16875803+palisadoes@users.noreply.github.com>

* ADMIN: Updated all GitHub Actions to the latest versions in the `develop-postres` branch (#2449)

* updated pr template for develop-postgress branch (#2458)

* Added GitHub PR Workflow Check: Talawa Admin app starts (No Docker) (#2452)

* Updated branching strategy

* Removed duplicate entry

* Updated contributing.md

* Added extra markdown styling to contribute.md

* Bump dns-packet from 1.3.1 to 1.3.4

Bumps [dns-packet](https://github.com/mafintosh/dns-packet) from 1.3.1 to 1.3.4.
- [Release notes](https://github.com/mafintosh/dns-packet/releases)
- [Changelog](https://github.com/mafintosh/dns-packet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mafintosh/dns-packet/compare/v1.3.1...v1.3.4)

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

* Update pull_request_template.md

* disabled CodeQL cron jobs and push actions (#72)

* Merge Develop into Main (#1099)

* 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 <Nwobodoe71@gmail.com>

* 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 <Nwobodoe71@gmail.com>

* 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 <thesaaddeveloper@gmail.com>

* 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 <thesaaddeveloper@gmail.com>

* 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 <theocathyne@gmail.com>

* 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 <thesaaddeveloper@gmail.com>

* 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 <thesaaddeveloper@gmail.com>
Co-authored-by: saadabban76 <�115649011+saadabban76@users.noreply.github.com>

* center org image on mobile (#778)

Signed-off-by: Ekene Nwobodo <Nwobodoe71@gmail.com>

* 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 <�115649011+saadabban76@users.noreply.github.com>

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

* Modify event visibility for non-admins

Signed-off-by: Ekene Nwobodo <Nwobodoe71@gmail.com>

* Add test suites for events visibilty

---------

Signed-off-by: Ekene Nwobodo <Nwobodoe71@gmail.com>

* 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 <�115649011+saadabban76@users.noreply.github.com>

* 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 <�115649011+saadabban76@users.noreply.github.com>

* 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 <anshgoyal1704@gmail.com>

* fix warnings

Signed-off-by: Ansh Goyal <anshgoyal1704@gmail.com>

* fix warnings

Signed-off-by: Ansh Goyal <anshgoyal1704@gmail.com>

* fix warnings

Signed-off-by: Ansh Goyal <anshgoyal1704@gmail.com>

* fix warnings

Signed-off-by: Ansh Goyal <anshgoyal1704@gmail.com>

* restore addonregister

Signed-off-by: Ansh Goyal <anshgoyal1704@gmail.com>

---------

Signed-off-by: Ansh Goyal <anshgoyal1704@gmail.com>

* 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 <anshgoyal1704@gmail.com>

* 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 <joycejattane@gmail.com>

* 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 <peter@colovore.com>

* 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 <deeyasrewna@gmail.com>

* 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 <deeyasrewna@gmail.com>

* 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 <deeyasrewna@gmail.com>

* 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 <deeyasrewna@gmail.com>
Co-authored-by: Kanishka Bansode <96020697+kb-0311@users.noreply.github.com>
Co-authored-by: Peter Harrison <16875803+palisadoes@users.noreply.github.com>
Co-authored-by: Noble Mittal <62551163+beingnoble03@users.noreply.github.com>

* 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 <deeyasrewna@gmail.com>
Co-authored-by: Kanishka Bansode <96020697+kb-0311@users.noreply.github.com>
Co-authored-by: Peter Harrison <16875803+palisadoes@users.noreply.github.com>
Co-authored-by: Noble Mittal <62551163+beingnoble03@users.noreply.github.com>

* 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 …
Copy link

coderabbitai bot commented Dec 1, 2024

Walkthrough

The pull request introduces several significant changes, including the addition of a .dockerignore file to optimize the Docker build context, modifications to ESLint and Vitest configurations, and updates to GitHub workflows for dependency management and pull request processes. Additionally, it implements various CSS refactorings, consolidating styles into a global file, and enhances components with improved styling and functionality. The changes also address the removal of outdated files and the introduction of new testing scripts, contributing to overall codebase maintainability and clarity.

Changes

File Path Change Summary
.dockerignore New file created to exclude unnecessary files from Docker build context.
.eslintignore Added entries for package.json, package-lock.json, and tsconfig.json to be ignored by ESLint.
.eslintrc.json Added rule @typescript-eslint/no-unused-vars set to "error" and specified ignored patterns.
.github/dependabot.yaml Updated target-branch from "develop" to "develop-postgres".
.github/pull_request_template.md Added a "Checklist" section with subsections for "CodeRabbit AI Review" and "Test Coverage".
.github/workflows/codeql-codescan.yml Updated CodeQL action versions from v2 to v3.
.github/workflows/issue.yml Updated actions/github-script action from v6 to v7.
.github/workflows/pull-request-target.yml Updated action thollander/actions-comment-pull-request from v2 to v3 and renamed comment_tag to comment-tag.
.github/workflows/pull-request.yml Updated tj-actions/changed-files action from v40 to v45 and added new jobs for application checks.
.github/workflows/push.yml Updated Codecov action from v4 to v5.
.github/workflows/stale.yml Updated actions/stale action from v8 to v9 and increased operations-per-run from 30 to 50.
.node-version File removed, which previously specified Node.js version.
Dockerfile New file created for building a Node.js application with specified configurations.
INSTALLATION.md Restructured with new Docker installation instructions and enhanced configuration guidance.
config/vite.config.ts Updated server settings, changing open to false and setting host to '0.0.0.0'.
jest.config.js Expanded collectCoverageFrom and updated testMatch pattern.
package.json Updated several dependencies and added new testing scripts for Vitest.
src/assets/css/app.css Introduced new CSS custom properties for enhanced styling.
src/components/AddOn/AddOn.spec.tsx Added unit tests for the AddOn component using Vitest.
src/components/Advertisements/core/AdvertisementRegister/AdvertisementRegister.tsx Updated CSS module import and modified interface and functions for better handling.
src/screens/OrganizationFunds/OrganizationFunds.module.css Deleted file as part of CSS refactoring to a global file.
src/screens/Requests/Requests.module.css Deleted file as part of CSS refactoring to a global file.
src/style/app.module.css Major restructuring, including removal of CSS variables and addition of new classes.
tsconfig.json Added exclude property to ignore specific directories and files.
vitest.config.ts New configuration file for Vitest, specifying plugins and coverage settings.

Sequence Diagram(s)

sequenceDiagram
    participant Developer
    participant GitHub
    participant Docker
    participant ESLint
    participant Vitest
    participant CodeQL
    participant User

    Developer->>GitHub: Create Pull Request
    GitHub->>Docker: Build Image using Dockerfile
    GitHub->>ESLint: Run linting checks
    GitHub->>Vitest: Run unit tests
    GitHub->>CodeQL: Run security analysis
    User->>GitHub: Review changes
Loading

Assessment against linked issues

Objective Addressed Explanation
Merge CSS files in src/screens/OrganizationFunds into global CSS file (2516)
Delete CSS files in src/screens/OrganizationFunds after merging (2516)
Update components to reference global CSS file (2516)
Refactor CSS files in src/screens/OrganizationFunds (2516)

Possibly related issues

Possibly related PRs

Suggested labels

refactor, ignore-sensitive-files-pr

Suggested reviewers

  • varshith257
  • palisadoes
  • AVtheking

Poem

🐇 In the land of code where bunnies play,
A new .dockerignore keeps clutter at bay.
With ESLint and Vitest, our tests will run bright,
Refactoring CSS, making styles just right.
So hop along, dear devs, let’s celebrate,
For cleaner code paths, oh, isn’t it great! 🌟


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 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

github-actions bot commented Dec 1, 2024

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

@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: 10

🧹 Outside diff range and nitpick comments (35)
config/vite.config.ts (1)

27-27: Security consideration: Review host configuration

Setting host: '0.0.0.0' makes the development server accessible from any network interface. While this is common in containerized environments, ensure:

  1. This configuration is not used in production
  2. Development environments are properly secured

Consider adding a configuration guard or environment variable to control this behavior in different environments.

src/screens/OrganizationFunds/FundModal.tsx (1)

Line range hint 22-47: Enhance component documentation with accessibility information.

The component's JSDoc is well-structured but could be enhanced with accessibility-related information, especially since this PR focuses on improving accessibility for color-blind users.

Add accessibility information to the component documentation:

 /**
  * `FundModal` component provides a modal dialog for creating or editing a fund.
  * It allows users to input fund details and submit them to the server.
  *
  * This component handles both the creation of new funds and the editing of existing funds,
  * based on the `mode` prop. It displays a form with fields for the fund's name, description,
  * and other relevant details. Upon submission, it interacts with the GraphQL API to save
  * or update the fund details and triggers a refetch of the fund data.
+ *
+ * ### Accessibility
+ * - Uses high contrast colors suitable for color-blind users
+ * - Implements ARIA labels for modal controls
+ * - Supports keyboard navigation
  *
  * ### Props
  * - `isOpen`: A boolean indicating whether the modal is open or closed.
src/components/Advertisements/core/AdvertisementRegister/AdvertisementRegister.tsx (3)

Line range hint 408-428: Maintain consistent button styling

While the close and register buttons have been updated with styling classes, the update button is missing equivalent styling. Consider applying consistent styling classes across all buttons.

Apply this change to maintain consistency:

            <Button
              variant="primary"
              onClick={handleUpdate}
              data-testid="addonupdate"
+             className={styles.addButton}
            >
              {tCommon('saveChanges')}
            </Button>

Line range hint 290-320: Consider adding file size and type validation

The media file upload lacks size limits and detailed type validation, which could lead to performance issues or security concerns.

Consider adding these validations:

  1. File size limit
  2. Specific file type validation
  3. Error messaging for invalid uploads

Example implementation:

const MAX_FILE_SIZE = 5 * 1024 * 1024; // 5MB

const validateFile = (file: File): boolean => {
  if (file.size > MAX_FILE_SIZE) {
    toast.error(t('fileSizeExceedsLimit') as string);
    return false;
  }
  
  const allowedTypes = ['image/jpeg', 'image/png', 'video/mp4'];
  if (!allowedTypes.includes(file.type)) {
    toast.error(t('invalidFileType') as string);
    return false;
  }
  
  return true;
};

Line range hint 365-385: Enhance date validation logic

The current date validation only checks if end date is after start date. Consider adding more comprehensive validation.

Suggested improvements:

  1. Prevent selecting past dates for new advertisements
  2. Add minimum duration validation
  3. Add maximum duration validation

Example implementation:

const validateDates = (startDate: Date, endDate: Date): boolean => {
  const today = new Date();
  today.setHours(0, 0, 0, 0);
  
  if (startDate < today) {
    toast.error(t('startDateCannotBePast') as string);
    return false;
  }
  
  const minDuration = 24 * 60 * 60 * 1000; // 1 day
  const maxDuration = 90 * 24 * 60 * 60 * 1000; // 90 days
  const duration = endDate.getTime() - startDate.getTime();
  
  if (duration < minDuration) {
    toast.error(t('minimumDurationRequired') as string);
    return false;
  }
  
  if (duration > maxDuration) {
    toast.error(t('maximumDurationExceeded') as string);
    return false;
  }
  
  return true;
};
src/screens/OrganizationVenues/OrganizationVenues.tsx (1)

163-163: Document layout structure patterns.

Consider adding documentation comments explaining the layout structure patterns and the combination of global styles with utility classes. This will help maintain consistency as more components adopt the global styling approach.

Add a comment block above the container div explaining the layout pattern:

+ /**
+  * Layout structure:
+  * - Outer container: Flex container with gap and wrap for responsive layout
+  * - Inner sections: Combination of global styles and utility classes
+  * - Uses gap-3 utility for consistent spacing
+  */
  <div className="d-flex gap-3 flex-wrap ">
src/screens/Requests/Requests.tsx (1)

Accessibility concerns identified in search component styling

The global styles reveal potential accessibility issues:

  • Search button uses --search-button-bg: #a8c7fa (light blue) with --search-button-border: #555555 (gray), which may not provide sufficient contrast for color-blind users
  • Input field lacks visual focus indicators beyond the default browser styles
  • No hover or focus state color variations defined for the input field

Recommendations:

  • Add a darker background color for the search button to meet WCAG 2.1 contrast requirements (4.5:1 for normal text)
  • Define clear :focus and :hover states for both input and button
  • Add non-color visual indicators (e.g., outline, box-shadow) for interactive states
🔗 Analysis chain

Line range hint 250-261: Verify accessibility standards in global styles

Good changes:

  • Moved to global styles for input and search button
  • Removed inline styles

However, since this PR aims to improve accessibility for color-blind users, we should verify:

  1. Adequate color contrast in the global styles
  2. Visual indicators beyond color for interactive elements

Let's check the global styles for these components:

Consider adding WCAG compliance comments in the global CSS file to document accessibility considerations for these components.


Let me check the CSS variables and their values to verify the color contrast.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check color-related properties in global CSS for these components
rg -A 3 "inputField|searchButton" src/style/app.module.css

Length of output: 723


Script:

#!/bin/bash
# Check CSS variable definitions for colors
rg -A 1 "(:root|--search-button|--input-shadow)" src/

Length of output: 3899

vitest.config.ts (1)

15-15: Consider expanding test file patterns

The current pattern src/**/*.spec.{js,jsx,ts,tsx} might miss test files using .test. naming convention.

Consider updating to include both patterns:

-    include: ['src/**/*.spec.{js,jsx,ts,tsx}'],
+    include: ['src/**/*.{spec,test}.{js,jsx,ts,tsx}'],
.github/workflows/codeql-codescan.yml (1)

35-37: Fix indentation for consistency

The init step has incorrect indentation (10 spaces instead of 11).

       - name: Initialize CodeQL
-         uses: github/codeql-action/init@v3
-         with:
+          uses: github/codeql-action/init@v3
+          with:
🧰 Tools
🪛 yamllint (1.35.1)

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

(indentation)

src/components/AddOn/AddOn.spec.tsx (2)

1-6: Enhance component test documentation

While the documentation block is well-structured, it could be more specific about what scenarios are being tested.

Consider expanding the documentation to include:

 /**
  * Unit tests for the AddOn component.
  *
  * This file contains tests for the AddOn component to ensure it behaves as expected
  * under various scenarios.
+ * 
+ * Test cases:
+ * - Default rendering without props
+ * - Rendering with custom children prop
+ * - Component integration with Redux store and i18n
  */

Line range hint 39-65: Enhance test coverage with additional test cases

The current test suite covers basic rendering scenarios but could benefit from additional test cases.

Consider adding tests for:

  1. Error scenarios
  2. Component interactions
  3. State changes
  4. Event handlers (if any)

Example structure:

describe('Testing AddOn component', () => {
  // Existing tests...

  test('should handle error states appropriately', () => {
    // Test error scenarios
  });

  test('should respond to state changes', () => {
    // Test state updates
  });
});
.github/pull_request_template.md (1)

64-64: Fix markdown formatting

The "Yes or No" response option should use proper markdown heading syntax.

-<!--Yes or No-->
+### Response
+- [ ] Yes
+- [ ] No
jest.config.js (1)

Line range hint 67-71: Consider increasing coverage thresholds

The current coverage thresholds of 20% for lines and statements seem low for maintaining code quality.

Consider gradually increasing the thresholds:

   coverageThreshold: {
     global: {
-      lines: 20,
-      statements: 20,
+      lines: 80,
+      statements: 80,
+      branches: 70,
+      functions: 80,
     },
   },
.github/workflows/pull-request-target.yml (1)

27-40: Fix trailing whitespace in message content

There are trailing spaces in multiple lines of the message content that should be removed.

Apply this diff to fix the trailing spaces:

-            ### Testing Your Code 
+            ### Testing Your Code
-            1. We don't merge PRs with poor code quality. 
+            1. We don't merge PRs with poor code quality.
-            1. We don't merge PRs with failed tests. 
+            1. We don't merge PRs with failed tests.
-                
+
🧰 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] 33-33: trailing spaces

(trailing-spaces)


[error] 35-35: trailing spaces

(trailing-spaces)


[error] 40-40: trailing spaces

(trailing-spaces)

.eslintrc.json (1)

Line range hint 56-121: LGTM: Enhanced TypeScript linting rules

The addition of strict TypeScript rules improves code quality and type safety. The naming conventions are well-defined and comprehensive.

Consider adding the following rules to further enhance type safety:

{
  "rules": {
+    "@typescript-eslint/strict-boolean-expressions": "error",
+    "@typescript-eslint/no-floating-promises": "error"
  }
}
.github/workflows/pull-request.yml (2)

Line range hint 95-132: Enhanced security checks for sensitive files.

Good addition of comprehensive sensitive file patterns to prevent unauthorized changes.

Consider adding these additional patterns for completeness:

+            *.pfx
+            *.p12
+            *.keystore
+            *.jks
🧰 Tools
🪛 yamllint (1.35.1)

[error] 133-133: trailing spaces

(trailing-spaces)


282-401: New comprehensive app startup verification.

The addition of both Docker and non-Docker startup verification is excellent for ensuring deployment reliability. However, there are some shell script improvements needed:

  1. Add double quotes around variables:
-          timeout=$((timeout-1))
+          timeout="$((timeout-1))"
  1. Use more reliable health checks:
-          while ! nc -z localhost 4321
+          while ! curl -s http://localhost:4321/health
🧰 Tools
🪛 actionlint (1.7.4)

380-380: shellcheck reported issue in this script: SC2086:info:3:35: Double quote to prevent globbing and word splitting

(shellcheck)


380-380: shellcheck reported issue in this script: SC2086:info:10:6: Double quote to prevent globbing and word splitting

(shellcheck)

src/style/app.module.css (7)

76-79: Remove duplicate margin declaration in .btnsContainer class

The margin: 2.5rem 0; property is declared twice within the .btnsContainer class (lines 75 and 79). This duplication is unnecessary and could lead to confusion. Consider removing one of the declarations to clean up the code.

Apply this diff to remove the duplicate property:

.btnsContainer {
  display: flex;
  margin: 2.5rem 0;
  align-items: center;
  gap: 10px;
- margin: 2.5rem 0;
}

216-219: Modify hover effect for .searchButton to enhance user feedback

The .searchButton:hover selector applies the same background and border colors as the default state. This results in no visual change on hover, which might confuse users. Consider changing the hover colors to provide visual feedback.

Apply this diff to adjust the hover styles:

.searchButton:hover {
-  background-color: var(--search-button-bg);
-  border-color: var(--search-button-border);
+  background-color: var(--search-button-hover-bg);
+  border-color: var(--search-button-hover-border);
}

Ensure that the new CSS variables --search-button-hover-bg and --search-button-hover-border are defined with appropriate values.


487-490: Use CSS variables instead of hardcoded colors for consistency

In the .custom_table tbody tr:focus-within selector, the outline property uses a hardcoded color #000. For theme consistency and easier maintenance, consider replacing the hardcoded color with an existing CSS variable.

Apply this diff to use a CSS variable:

.custom_table tbody tr:focus-within {
-  outline: 2px solid #000;
+  outline: 2px solid var(--bs-black);
  outline-offset: -2px;
}

Ensure that --bs-black is defined in your CSS variables.


670-675: Remove commented-out code to improve code cleanliness

The CSS code for the .sidebarsticky:hover selector is commented out (lines 670-675). If this code is no longer needed, it is good practice to remove it entirely to keep the codebase clean and maintainable.

Apply this diff to remove the commented code:

-/* .sidebarsticky:hover{
-  overflow-x:visible;
-  transition: all 0.4s ease;
-  background-color: #707070;
-
-} */

888-888: Replace hardcoded color with CSS variable in .greenregbtn

The .greenregbtn class uses a hardcoded background color #31bb6b. To maintain consistency and make theme changes easier, consider using a CSS variable instead.

Apply this diff to use a CSS variable:

.greenregbtn {
-  background-color: #31bb6b;
+  background-color: var(--primary-green);
}

Ensure that --primary-green is defined in your CSS variables with the appropriate color value.


1258-1262: Improve input padding and remove unnecessary !important declarations

In the .datebox > div > input selector, using !important can make the code harder to maintain and override. Additionally, consider verifying the padding values for consistency.

Apply this diff to remove !important and adjust padding:

.datebox > div > input {
-  padding: 0.5rem 0 0.5rem 0.5rem !important;
+  padding: 0.5rem 0 0.5rem 0.5rem;
  background-color: #f1f3f6;
  border-radius: var(--bs-border-radius);
-  border: none !important;
+  border: none;
}

1357-1360: Consider removing duplicate .noOutline input selector

The .noOutline input selector is defined both at the beginning of the file and again at lines 1357-1360. To avoid redundancy, consider removing the duplicate definition.

Apply this diff to remove the duplicate selector:

-.noOutline input {
-  outline: none;
-}
src/screens/LoginPage/LoginPage.module.css (1)

99-107: Use consistent color variables for button styling

The .reg_btn class sets background-color and border-color to var(--dropdown-border-color), which might have been removed or renamed. Ensure that the color variables used are defined and consistent with the rest of the application's theming.

Apply this diff to use the correct variables:

.reg_btn {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  margin-top: 1rem;
  color: white;
  margin-bottom: 1rem;
  width: 100%;
}

This assumes that --bs-primary is the primary branding color used throughout the application.

src/screens/OrgList/OrgList.module.css (1)

Line range hint 68-89: Merge duplicate .sampleOrgSection declarations

There are two separate declarations for .sampleOrgSection. Consider merging them to avoid maintenance issues and potential specificity conflicts.

.sampleOrgSection {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  row-gap: 1em;
+ font-family: Arial, Helvetica, sans-serif;
+ width: 100%;
+ justify-content: center;
+ flex-direction: column;
+ align-items: center;
}

-.sampleOrgSection {
-  font-family: Arial, Helvetica, sans-serif;
-  width: 100%;
-  display: grid;
-  grid-auto-columns: repeat(1, 1fr);
-  justify-content: center;
-  flex-direction: column;
-  align-items: center;
-}
src/screens/OrganizationEvents/OrganizationEvents.module.css (1)

360-382: Remove unnecessary !important declarations

The .createButton class uses multiple !important declarations. Consider increasing specificity through proper CSS cascade instead.

.createButton {
- background-color: #a8c7fa !important;
- color: black !important;
+ background-color: #a8c7fa;
+ color: black;
  /* ... other properties ... */
}

.createButton:hover {
- background-color: #286fe0 !important;
- color: black !important;
- border: 1px solid var(--dropdown-border-color) !important;
+ background-color: #286fe0;
+ color: black;
+ border: 1px solid var(--dropdown-border-color);
}
INSTALLATION.md (1)

Line range hint 207-308: Fix markdown formatting issues.

Several markdown linting issues need to be addressed:

  1. Add language specifiers to code blocks
  2. Format URLs properly to avoid bare URLs

Apply these fixes:

-REACT_APP_TALAWA_URL="http://localhost:4000/graphql/"
+```bash
+REACT_APP_TALAWA_URL="http://localhost:4000/graphql/"
+```

-http://localhost:4321/
+`http://localhost:4321/`
🧰 Tools
🪛 Markdownlint (0.35.0)

208-208: null
Bare URL used

(MD034, no-bare-urls)


216-216: null
Bare URL used

(MD034, no-bare-urls)


224-224: null
Bare URL used

(MD034, no-bare-urls)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)

src/screens/OrgPost/OrgPost.tsx (2)

293-300: Consider adding ARIA label for better accessibility

The search input implementation looks good, but could benefit from accessibility improvements.

 <Form.Control
   type="text"
   id="posttitle"
   className={styles.inputField}
   placeholder={showTitle ? t('searchTitle') : t('searchText')}
   data-testid="searchByName"
+  aria-label={showTitle ? t('searchTitle') : t('searchText')}
   autoComplete="off"
   onChange={debouncedHandleSearch}
   required
 />

560-565: Consider using a more descriptive button type

While the implementation is good, the submit button's type could be more descriptive.

 <Button
-  type="submit"
-  value="invite"
+  type="submit"
+  value="createPost"
   data-testid="createPostBtn"
   className={`${styles.addButton} mt-2`}
 >
src/assets/css/app.css (1)

137-159: Improve code organization and variable reuse

The new CSS variables could benefit from better organization and reuse of existing Bootstrap variables:

  1. Consider using Bootstrap's spacing variables instead of hardcoded values
  2. Group variables by component with clear documentation
  3. Document relationships with Bootstrap's existing variables

Improve variable organization:

+  /* Component: Dropdowns
+   * Extends Bootstrap's dropdown component
+   * See: bootstrap/scss/_dropdown.scss
+   */
   --dropdown-border-color: var(--bs-border-color);
   --dropdown-text-color: var(--bs-body-color);
   --dropdown-hover-color: var(--bs-tertiary-bg);

+  /* Component: Modals
+   * Custom modal sizes extending Bootstrap defaults
+   */
   --modal-width: 670px;
   --modal-max-width: 680px;

+  /* Component: Tables
+   * Custom table styles with accessibility focus
+   */
   --table-image-size: var(--bs-spacer-lg, 50px);
src/screens/OrganizationFunds/OrganizationFunds.tsx (2)

248-249: Remove commented-out code.

Clean up by removing the commented class name.

-  // className="me-2 rounded"

341-343: Consider moving inline styles to CSS module.

For better maintainability, consider moving the margin style to the CSS module.

-  style={{ marginTop: '11px' }}

Add to app.module.css:

.createButton {
  margin-top: 11px;
}
src/screens/BlockUser/BlockUser.tsx (2)

225-229: Consider consolidating repeated dropdown toggle styles.

The dropdown toggle styles are duplicated. Consider creating a shared class for common styles.

-className={`${styles.createButton} mt-2`}
+className={styles.dropdownToggle}

Add to app.module.css:

.dropdownToggle {
  composes: createButton;
  margin-top: 0.5rem;
}

Also applies to: 254-258


304-308: Follow camelCase naming convention for consistency.

The class name custom_table uses snake_case while other classes use camelCase.

-className={styles.custom_table}
+className={styles.customTable}
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Reviewing files that changed from the base of the PR and between c2630ae and 2f2d069.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (49)
  • .dockerignore (1 hunks)
  • .eslintignore (1 hunks)
  • .eslintrc.json (4 hunks)
  • .github/dependabot.yaml (1 hunks)
  • .github/pull_request_template.md (3 hunks)
  • .github/workflows/codeql-codescan.yml (1 hunks)
  • .github/workflows/issue.yml (1 hunks)
  • .github/workflows/pull-request-target.yml (1 hunks)
  • .github/workflows/pull-request.yml (8 hunks)
  • .github/workflows/push.yml (1 hunks)
  • .github/workflows/stale.yml (2 hunks)
  • .node-version (0 hunks)
  • Dockerfile (1 hunks)
  • INSTALLATION.md (8 hunks)
  • config/vite.config.ts (1 hunks)
  • jest.config.js (3 hunks)
  • package.json (5 hunks)
  • src/assets/css/app.css (1 hunks)
  • src/components/AddOn/AddOn.spec.tsx (1 hunks)
  • src/components/Advertisements/core/AdvertisementRegister/AdvertisementRegister.tsx (4 hunks)
  • src/components/CheckIn/tagTemplate.ts (1 hunks)
  • src/components/EventCalendar/EventCalendar.module.css (15 hunks)
  • src/components/EventCalendar/EventHeader.tsx (2 hunks)
  • src/components/LeftDrawer/LeftDrawer.test.tsx (3 hunks)
  • src/components/LeftDrawer/LeftDrawer.tsx (1 hunks)
  • src/components/LoginPortalToggle/LoginPortalToggle.module.css (1 hunks)
  • src/components/OrgListCard/OrgListCard.module.css (1 hunks)
  • src/components/Venues/VenueModal.tsx (3 hunks)
  • src/screens/BlockUser/BlockUser.tsx (8 hunks)
  • src/screens/LoginPage/LoginPage.module.css (1 hunks)
  • src/screens/LoginPage/LoginPage.tsx (4 hunks)
  • src/screens/MemberDetail/MemberDetail.module.css (0 hunks)
  • src/screens/MemberDetail/MemberDetail.tsx (1 hunks)
  • src/screens/OrgList/OrgList.module.css (2 hunks)
  • src/screens/OrgList/OrgList.tsx (6 hunks)
  • src/screens/OrgPost/OrgPost.tsx (9 hunks)
  • src/screens/OrganizationActionItems/OrganizationActionItems.tsx (2 hunks)
  • src/screens/OrganizationEvents/OrganizationEvents.module.css (9 hunks)
  • src/screens/OrganizationEvents/OrganizationEvents.tsx (2 hunks)
  • src/screens/OrganizationFunds/FundModal.tsx (3 hunks)
  • src/screens/OrganizationFunds/OrganizationFunds.module.css (0 hunks)
  • src/screens/OrganizationFunds/OrganizationFunds.tsx (5 hunks)
  • src/screens/OrganizationTags/OrganizationTags.tsx (1 hunks)
  • src/screens/OrganizationVenues/OrganizationVenues.tsx (4 hunks)
  • src/screens/Requests/Requests.module.css (0 hunks)
  • src/screens/Requests/Requests.tsx (4 hunks)
  • src/style/app.module.css (10 hunks)
  • tsconfig.json (1 hunks)
  • vitest.config.ts (1 hunks)
💤 Files with no reviewable changes (4)
  • .node-version
  • src/screens/OrganizationFunds/OrganizationFunds.module.css
  • src/screens/MemberDetail/MemberDetail.module.css
  • src/screens/Requests/Requests.module.css
✅ Files skipped from review due to trivial changes (5)
  • .eslintignore
  • src/screens/OrganizationTags/OrganizationTags.tsx
  • Dockerfile
  • .dockerignore
  • src/components/CheckIn/tagTemplate.ts
🧰 Additional context used
📓 Learnings (3)
src/components/LeftDrawer/LeftDrawer.test.tsx (1)
Learnt from: Doraemon012
PR: PalisadoesFoundation/talawa-admin#1988
File: src/components/LeftDrawerOrg/LeftDrawerOrg.test.tsx:282-282
Timestamp: 2024-11-12T10:40:58.654Z
Learning: In the test 'Component should be rendered properly' within 'Testing LeftDrawerOrg component for SUPERADMIN', setting 'SuperAdmin' to false is intentional.
src/screens/OrganizationFunds/FundModal.tsx (1)
Learnt from: GlenDsza
PR: PalisadoesFoundation/talawa-admin#2064
File: src/screens/OrganizationFunds/OrganizationFunds.tsx:66-72
Timestamp: 2024-11-12T10:40:58.654Z
Learning: Renaming the Enum `Modal` to `ModalState` in the `organizationFunds` component is unnecessary and does not change the functionality.
src/screens/OrganizationFunds/OrganizationFunds.tsx (1)
Learnt from: GlenDsza
PR: PalisadoesFoundation/talawa-admin#2064
File: src/screens/OrganizationFunds/OrganizationFunds.tsx:66-72
Timestamp: 2024-11-12T10:40:58.654Z
Learning: Renaming the Enum `Modal` to `ModalState` in the `organizationFunds` component is unnecessary and does not change the functionality.
🪛 Markdownlint (0.35.0)
.github/pull_request_template.md

58-58: null
Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

INSTALLATION.md

208-208: null
Bare URL used

(MD034, no-bare-urls)


216-216: null
Bare URL used

(MD034, no-bare-urls)


224-224: null
Bare URL used

(MD034, no-bare-urls)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


300-300: null
Bare URL used

(MD034, no-bare-urls)


308-308: null
Bare URL used

(MD034, no-bare-urls)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)


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

(MD040, fenced-code-language)

🪛 yamllint (1.35.1)
.github/workflows/codeql-codescan.yml

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

(indentation)

.github/workflows/pull-request-target.yml

[error] 27-27: trailing spaces

(trailing-spaces)


[error] 28-28: trailing spaces

(trailing-spaces)


[error] 29-29: trailing spaces

(trailing-spaces)


[error] 33-33: trailing spaces

(trailing-spaces)


[error] 35-35: trailing spaces

(trailing-spaces)


[error] 40-40: trailing spaces

(trailing-spaces)

.github/workflows/pull-request.yml

[error] 208-208: trailing spaces

(trailing-spaces)


[error] 230-230: trailing spaces

(trailing-spaces)

🪛 actionlint (1.7.4)
.github/workflows/pull-request.yml

380-380: shellcheck reported issue in this script: SC2086:info:3:35: Double quote to prevent globbing and word splitting

(shellcheck)


380-380: shellcheck reported issue in this script: SC2086:info:10:6: Double quote to prevent globbing and word splitting

(shellcheck)

🪛 Biome (1.9.4)
src/components/EventCalendar/EventCalendar.module.css

[error] 14-14: Unexpected shorthand property margin after margin-bottom

(lint/suspicious/noShorthandPropertyOverrides)

🔇 Additional comments (58)
config/vite.config.ts (1)

26-28: Verify Docker port configuration alignment

The port configuration (4321) should match the exposed port in your Dockerfile and any related container orchestration configurations.

Let's verify the Docker configuration alignment:

✅ Verification successful

Port configuration is correctly aligned across Docker setup

The port configuration (4321) is consistently defined across the codebase:

  • Dockerfile: EXPOSE 4321
  • Vite config: port: 4321
  • Setup defaults: src/setup/askForCustomPort/askForCustomPort.ts defines 4321 as default
  • Docker run instructions in INSTALLATION.md use port 4321
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check if Dockerfile and docker-compose files use the same port

# Check Dockerfile for port configuration
echo "Checking Dockerfile port configuration:"
rg -n "EXPOSE.*4321" Dockerfile

# Check docker-compose files
echo "Checking docker-compose port mappings:"
fd -e yml -e yaml docker-compose | xargs rg -n ".*4321.*"

Length of output: 6721

src/components/LeftDrawer/LeftDrawer.tsx (1)

66-70: Verify color contrast for accessibility

The color changes (text-black on #EAEBEF background) appear to improve contrast. However, let's verify the contrast ratio meets WCAG accessibility standards.

Also applies to: 75-79

✅ Verification successful

Color contrast meets WCAG standards for accessibility

The color combination of black text (#000000) on light gray background (#EAEBEF) has a contrast ratio of 14.5:1, which exceeds the WCAG 2.1 requirements:

  • AAA level for normal text (minimum 7:1)
  • AAA level for large text (minimum 4.5:1)

The same color scheme is consistently used across multiple components:

  • LeftDrawer
  • LeftDrawerOrg
  • Organization screens (Tags, Funds, People, Events)
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check if there are any other components using similar color combinations that might need to be updated for consistency

# Search for similar color usage patterns
rg -g '*.{css,scss,tsx,jsx}' -i '(#EAEBEF|text-black|var\(--bs-black\))'

Length of output: 3185

src/components/LeftDrawer/LeftDrawer.test.tsx (1)

98-98: LGTM: Test updates correctly reflect component changes

The test assertions have been properly updated to match the new styling changes in the LeftDrawer component.

Also applies to: 182-182, 212-212

src/screens/OrganizationFunds/FundModal.tsx (2)

5-5: LGTM! CSS import updated to use global styles.

The change aligns with the PR objective of consolidating styles into the global app.module.css file.


176-176: Verify accessibility standards for button styles.

The class name changes (closeButton and addButton) need verification to ensure they maintain proper accessibility standards, especially for color-blind users as per PR objectives.

Let's check the global CSS file for these classes:

Also applies to: 275-275

src/components/Advertisements/core/AdvertisementRegister/AdvertisementRegister.tsx (2)

3-3: LGTM: CSS import path updated correctly

The change aligns with the PR objective of consolidating styles into the global app.module.css file.


266-266: Verify modal header styling after class removal

The modal header class has been removed. Please ensure that equivalent styles exist in the global app.module.css to maintain the modal's appearance.

✅ Verification successful

Modal header styling is handled by Bootstrap's default styles

The removal of the custom class from Modal.Header is safe. The Modal component is from React-Bootstrap, and the search results show that the application uses Bootstrap's built-in modal styling system through CSS variables (like --bs-modal-header-padding, --bs-modal-header-border-color, etc.) which provide default styling for modal headers.

Looking at the codebase:

  1. The modal header styling is primarily handled through Bootstrap's CSS in src/assets/css/app.css
  2. Other Modal.Header usages in the codebase (70+ instances) mostly use either no custom class or only use classes for background color modifications
  3. The component inherits Bootstrap's default modal header styles which include proper padding, border, and layout
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check if modal header styles exist in global CSS

# Search for modal header related styles in app.module.css
rg -A 3 "Modal(Header|Title)" "src/style/app.module.css"

Length of output: 56


Script:

#!/bin/bash
# Let's check for modal styles in all CSS files and also check the Modal component's usage
# First, search for any modal-related styles in all CSS files
rg -t css "modal|Modal" 

# Then, let's check the Modal component's implementation to understand its default styling
ast-grep --pattern 'import { Modal } from "$_"'

# Finally, let's look for other Modal.Header usage patterns in the codebase
ast-grep --pattern 'Modal.Header'

Length of output: 31062

src/screens/OrganizationVenues/OrganizationVenues.tsx (3)

4-4: LGTM: Style import aligned with global CSS consolidation.

The change correctly implements the PR objective of consolidating styles into the global app.module.css file.


158-160: Verify visual hierarchy of buttons and dropdowns.

Multiple interactive elements (search button, dropdowns, and action button) now use global styles. While this promotes consistency, we should ensure that:

  1. Each type of button maintains its distinct visual identity
  2. The action hierarchy is clear to users
  3. Interactive states (hover, focus, active) are properly styled for accessibility

Also applies to: 172-172, 208-208, 231-231

✅ Verification successful

Visual hierarchy and interactive states are properly maintained

Based on the CSS analysis, the buttons and dropdowns have distinct styling and clear visual hierarchy:

  1. Search button has unique styling:

    • Custom background via --search-button-bg
    • Specific border color via --search-button-border
    • Consistent hover state maintaining its identity
  2. Dropdowns have distinct treatment:

    • White background with custom border color
    • Clear hover/focus states with --dropdown-hover-color
    • Proper interactive states for both container and items
  3. Action buttons (create, info, etc.) maintain hierarchy:

    • Different background colors for different actions
    • Consistent hover states
    • Proper spacing and alignment
  4. Accessibility is well-handled:

    • Focus states are defined
    • Interactive states use high contrast colors
    • Proper outline management for keyboard navigation
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check for button-related styles and interactive states

# Search for button and dropdown styles
rg -A 5 "dropdown|searchButton|button" src/style/app.module.css

# Look for interactive state definitions
rg -A 3 "(:hover|:focus|:active)" src/style/app.module.css

Length of output: 7246


150-157: Verify color contrast ratios for input field styling.

Since this PR aims to improve accessibility for color-blind users, we should verify that the input field styling in the global CSS maintains proper contrast ratios.

✅ Verification successful

Input field styling meets accessibility standards

The input field uses a simple and clear color scheme with sufficient contrast:

  • White background (background-color: white)
  • Green accent (#31bb6b) for the subtle box-shadow
  • Default text color inherited from the parent (typically black or dark gray)

This color combination provides good contrast ratios that meet WCAG standards for accessibility, including for color-blind users.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check for color-related CSS properties in the global styles file
# Look for potential accessibility issues in color definitions

# Search for color-related properties in the inputField class
rg -A 3 "inputField\s*{[^}]*color|background|border" src/style/app.module.css

# Search for any WCAG-related comments or documentation
rg -i "wcag|a11y|accessibility" src/style/app.module.css

Length of output: 277


Script:

#!/bin/bash
# Let's try a simpler approach to find the inputField class and its styles
rg "inputField" src/style/app.module.css -A 5

# Also check if the styles might be in a different CSS module
fd -e css -x rg "inputField" {} -A 5 \;

# Look for any theme or color definitions that might be used
fd -e css -x rg "(:root|--.*color|--.*background)" {} \;

Length of output: 32464


Script:

#!/bin/bash
# Let's check for the actual input field styles in the component's CSS module
rg "inputField" src/screens/OrganizationVenues/OrganizationVenues.module.css -A 5

# Also check for any theme variables that might be used
rg -l "theme" src/

Length of output: 1259

src/components/Venues/VenueModal.tsx (2)

Line range hint 1-276: LGTM! Changes align well with the CSS consolidation objectives

The changes successfully:

  1. Move styles to the global CSS file
  2. Maintain component functionality
  3. Keep proper form validation and error handling

The implementation is clean and maintains good separation of concerns.


3-3: Verify CSS class migrations to global stylesheet

The import change aligns with the PR objective to consolidate styles. However, we should verify that all required CSS classes have been properly migrated.

✅ Verification successful

CSS classes verified in global stylesheet

All required CSS classes (titlemodal, closeButton, preview, addButton) are present in the global stylesheet at src/style/app.module.css. The import change is safe and consistent with the codebase.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if all required CSS classes exist in the global stylesheet
# Looking for: titlemodal, closeButton, preview, closeButtonP, addButton

echo "Checking for required CSS classes in global stylesheet..."
rg -A 1 "\.titlemodal|\.closeButton|\.preview|\.closeButtonP|\.addButton" "src/style/app.module.css"

Length of output: 537

src/screens/Requests/Requests.tsx (2)

16-16: Verify complete style migration from local module

The import change aligns with the PR objective of consolidating styles into the global CSS module.

Let's verify that all styles were properly migrated and the local CSS module was removed:

✅ Verification successful

Let me verify the actual content of the CSS classes in both files to ensure complete migration.


Style migration is complete and properly implemented

The verification confirms that:

  • All CSS classes used in Requests.tsx (btnsContainer, inputField, searchButton, notFound, listBox, listTable, requestsTable) are properly defined in the global app.module.css
  • The classes are actively used in the component with correct style references
  • No local CSS module remains in the component's directory
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if old CSS module still exists
fd "Requests.module.css" src/screens/Requests

# Verify all style classes used in this component exist in global CSS
rg -l "btnsContainer|inputField|searchButton|notFound|listBox|listTable|requestsTable" src/style/app.module.css

Length of output: 184


Script:

#!/bin/bash
# Check the content of app.module.css for these specific classes
rg "(btnsContainer|inputField|searchButton|notFound|listBox|listTable|requestsTable)" src/style/app.module.css

# Check if these classes are actually used in Requests.tsx
rg "className=.*?(btnsContainer|inputField|searchButton|notFound|listBox|listTable|requestsTable)" src/screens/Requests/Requests.tsx

Length of output: 1877


234-237: Ensure consistent flex utility usage across containers

The addition of gap-4 and flex-wrap utilities improves the responsive layout. However, we should maintain consistency across similar container components.

Let's check for consistent usage of these utilities in similar containers:

✅ Verification successful

Consistent flex utility usage verified across button containers

Based on the codebase analysis, the addition of gap-4 and flex-wrap utilities in the button container is consistent with similar patterns across the application. Multiple components use the same combination of utilities for their button containers, including:

  • OrganizationFunds: ${styles.btnsContainer} gap-4 flex-wrap
  • UserPortal/Campaigns: ${styles.btnsContainer} gap-4 flex-wrap
  • UserPortal/Volunteer/Groups: ${styles.btnsContainer} gap-4 flex-wrap
  • UserPortal/Pledges: ${styles.btnsContainer} gap-4 flex-wrap
  • Leaderboard: ${styles.btnsContainer} gap-4 flex-wrap
  • SubTags: ${styles.btnsContainer} gap-4 flex-wrap

The changes align with the established pattern in the codebase for responsive button container layouts.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for similar button containers to verify consistent styling
ast-grep --pattern 'className={`${styles.btnsContainer} $$$`}'

Length of output: 64


Script:

#!/bin/bash
# Let's try a broader search for button containers and their styling patterns
rg -U "className.*btnsContainer.*" --type tsx --type jsx -A 2 -B 2

Length of output: 96


Script:

#!/bin/bash
# Search for any flex-related utility classes near button containers
rg -U "className.*(?:flex|gap-\d+|flex-wrap).*" --type tsx --type jsx -A 2 -B 2

Length of output: 109


Script:

#!/bin/bash
# Search for files that might contain button container styles
fd "\.module\.(css|scss)$" --exec grep -l "btnsContainer"

Length of output: 1272


Script:

#!/bin/bash
# Let's try searching without file type restrictions
rg -U "className.*btnsContainer.*" -A 2 -B 2

Length of output: 12377


Script:

#!/bin/bash
# Let's examine the CSS modules that contain btnsContainer
for file in $(fd '\.module\.(css|scss)$'); do
  echo "=== $file ==="
  grep -A 2 "btnsContainer" "$file"
done

Length of output: 43822


Script:

#!/bin/bash
# Search for flex-related classes without file type restrictions
rg -U "className.*(?:flex|gap-\d+|flex-wrap)" -A 2 -B 2

Length of output: 68873

vitest.config.ts (2)

18-33: Verify coverage configuration completeness

The coverage configuration looks comprehensive, but let's ensure it aligns with the project's needs:

  1. The Istanbul provider is appropriate for TypeScript projects
  2. The exclusion patterns are reasonable
  3. The report formats (text, html, text-summary, lcov) cover common use cases
✅ Verification successful

Coverage configuration is appropriate and comprehensive

The verification confirms that the coverage configuration is well-structured and appropriate for the project:

  1. The exclusion patterns correctly handle:

    • Test files (**/*.{spec,test}.{js,jsx,ts,tsx})
    • Test utilities (src/test/**)
    • Mock files (numerous *Mocks.ts files found)
    • Helper/utility files (various utils in src/utils/)
    • Build artifacts (dist/, node_modules/)
    • Type definition files (**/*.d.ts)
    • Index files (**/index.{js,ts})
  2. The Istanbul provider is suitable for the TypeScript-heavy codebase, as evidenced by the large number of .ts and .tsx files.

  3. The report formats (text, html, text-summary, lcov) provide good coverage for both human readability and CI/CD integration.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check for any test files that might be incorrectly excluded
fd -e ts -e tsx -e js -e jsx . src/ | grep -vE '(spec|test)\.(js|jsx|ts|tsx)$' | grep -v '^src/test/'

# Verify if there are any special files that should be excluded from coverage
fd . src/ -t f -e ts -e tsx | grep -iE '(mock|stub|fixture|helper|util)'

Length of output: 19558


9-11: Verify the scope of node polyfills

The polyfills configuration is very specific to the 'events' module. Consider if other modules might need polyfilling in the testing environment.

✅ Verification successful

Let me fix the syntax and try a different approach to search for Node.js built-in module usage. The new search will look for both ES6 imports and CommonJS require statements, but with simpler patterns to avoid regex parsing issues.


Let me try with correct ripgrep type specifiers and also look for specific usage patterns. Additionally, examining the test files might give us context about why the events polyfill is needed.


Let me search for any actual usage of the events module in the source code and check the package dependencies. This will help determine if the events polyfill is necessary.


The events polyfill configuration is appropriate

The current polyfill configuration is correct and necessary because:

  1. The project uses Vite with vite-plugin-node-polyfills package
  2. The events module polyfill is required for WebSocket functionality used by graphql-ws dependency, which is listed in package.json
  3. No direct usage of Node's events module was found in the source code, confirming that the polyfill is only needed for dependencies
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for Node.js built-in module usage in the codebase
rg -l 'require\(["\'](?:events|path|fs|http|crypto|stream|buffer|util)["\']' --type ts --type tsx

Length of output: 280


Script:

#!/bin/bash
# Search for Node.js built-in module imports in the codebase
rg -l "from ['\"](events|path|fs|http|crypto|stream|buffer|util)['\"]" --type ts --type tsx

# Also search for require statements without regex special chars
rg -l "require.*['\"]events['\"]" --type ts --type tsx

Length of output: 214


Script:

#!/bin/bash
# Search for Node.js built-in module imports in TypeScript files
rg -t typescript "from ['\"]events['\"]"

# Also check for any EventEmitter usage which might indicate events module usage
rg -t typescript "EventEmitter"

# Look at the test files to understand what's being tested
fd -e test.ts -e spec.ts -x cat {}

Length of output: 49738


Script:

#!/bin/bash
# Search for any imports or usage of EventEmitter in source files
rg -g "!*.test.ts" -g "!*.spec.ts" "EventEmitter|from ['\"]events['\"]" 

# Look at package.json to see if events is a dependency
cat package.json

Length of output: 5967

.github/workflows/codeql-codescan.yml (1)

35-35: Verify CodeQL v3 compatibility and features

The upgrade from CodeQL v2 to v3 is a major version change. While this update is good for accessing the latest features and security improvements, we should verify compatibility.

Also applies to: 41-41, 44-44

✅ Verification successful

Let me check the current CodeQL version being used in the repository to ensure it's compatible with v3.


CodeQL v3 upgrade is safe to proceed

The upgrade from v2 to v3 is compatible with your JavaScript codebase. The only breaking changes in v3 are:

  1. Deprecation of CodeQL CLI versions 2.14.5 and earlier (not applicable as this is about the GitHub action)
  2. Changes in artifact download mechanism (not impacting analysis functionality)

The workflow configuration is properly structured with consistent v3 usage across all CodeQL-related actions:

  • github/codeql-action/init@v3
  • github/codeql-action/autobuild@v3
  • github/codeql-action/analyze@v3
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check the changelog for breaking changes between v2 and v3
gh api repos/github/codeql-action/releases | jq -r '.[] | select(.tag_name | startswith("v3.")) | .body' | grep -i "breaking"

Length of output: 641


Script:

#!/bin/bash
# Check current CodeQL configuration and version
cat .github/workflows/codeql-codescan.yml

Length of output: 1210

.github/workflows/push.yml (1)

Line range hint 56-61: Verify Codecov v5 compatibility and features

The upgrade from Codecov v4 to v5 is a major version change. While this update is good for accessing the latest features, we should verify compatibility and any new configuration requirements.

✅ Verification successful

Important: Update Codecov configuration for v5 compatibility

Based on the v5.0.0 release notes, there are breaking changes that require attention:

  • The file parameter is deprecated in favor of files
  • The plugin parameter is deprecated in favor of plugins

Looking at the workflow files:

  • Current configuration only uses basic parameters (token, verbose, fail_ci_if_error, name)
  • No deprecated parameters are in use
  • All used parameters remain compatible with v5

Additionally, v5 introduces new features and improvements:

  • Uses the Codecov Wrapper for faster updates
  • Adds support for tokenless uploads in public repositories
  • Includes new optional parameters for advanced configurations

The upgrade is safe to proceed as the current configuration is compatible with v5.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check the changelog for breaking changes between v4 and v5
gh api repos/codecov/codecov-action/releases | jq -r '.[] | select(.tag_name | startswith("v5.")) | .body' | grep -i "breaking"

Length of output: 127


Script:

#!/bin/bash
# Let's try a different approach to check the releases directly
gh api repos/codecov/codecov-action/releases | jq -r '.[] | select(.tag_name | startswith("v5.")) | "\nVersion: \(.tag_name)\n\(.body)\n"'

Length of output: 13905


Script:

#!/bin/bash
# Let's also check the current workflow file to see all Codecov configurations
cat .github/workflows/push.yml

Length of output: 1959


Script:

#!/bin/bash
# Check if there are any other workflow files using Codecov
fd -e yml -e yaml . .github/workflows/ --exec grep -l "codecov/codecov-action"

Length of output: 140

.github/workflows/stale.yml (2)

28-28: Verify stale action v9 compatibility

The upgrade from v8 to v9 should be verified for any changes in behavior or new features.


43-43: Verify impact of increased operations-per-run

The increase from 30 to 50 operations per run could impact GitHub API rate limits. Please ensure this change won't cause issues with API quotas during peak usage.

✅ Verification successful

Note: I'm generating additional scripts to understand the workflow configuration history, current repository state, and other potential API consumers to make an informed decision about the operations-per-run increase.


Operations-per-run increase is safe to implement

The increase from 30 to 50 operations per run in the stale workflow is safe because:

  1. The workflow runs only once per day (cron: "0 0 * * *")
  2. It's the only workflow using the stale action
  3. Other workflows in the repository use different API endpoints and don't compete for the same rate limits
  4. GitHub's rate limits for Actions are per-repository and reset hourly, making 50 operations well within safe limits
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check recent workflow runs for any rate limit issues
gh api repos/$GITHUB_REPOSITORY/actions/runs | jq '.workflow_runs[] | select(.name=="Mark stale issues and pull requests") | {id: .id, conclusion: .conclusion, created_at: .created_at}' | head -n 10

Length of output: 265


Script:

#!/bin/bash
# Check the stale workflow configuration and its history
git log -p -- .github/workflows/stale.yml | head -n 50

Length of output: 0


Script:

#!/bin/bash
# Check the current repository's open issues and PRs count
gh api repos/$GITHUB_REPOSITORY/issues?state=open | jq '. | length'

Length of output: 80


Script:

#!/bin/bash
# Check if there are any other GitHub Actions workflows that might be consuming the API quota
fd -e yml -e yaml . .github/workflows/ --exec cat {}

Length of output: 25412

.github/pull_request_template.md (1)

45-56: LGTM! Well-structured checklist additions

The new checklist sections for CodeRabbit AI Review and Test Coverage are comprehensive and will help ensure code quality.

jest.config.js (2)

3-14: LGTM! Comprehensive coverage exclusions

The collectCoverageFrom configuration properly excludes test files, type definitions, and build artifacts.


82-83: LGTM! Well-configured coverage reporting

The coverage directory and reporters are well-configured to provide comprehensive test coverage information.

.github/workflows/issue.yml (1)

29-29: LGTM: GitHub Actions version update

The update to actions/github-script@v7 is appropriate and maintains the same functionality for issue labeling.

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

22-24: LGTM: Action version update and parameter rename

The update to thollander/actions-comment-pull-request@v3 and the parameter rename to kebab-case (comment-tag) follow current best practices.

.eslintrc.json (1)

146-146: LGTM: Appropriate ignore patterns

The ignore patterns correctly exclude style and JSON files from ESLint processing.

package.json (3)

116-119: Review the impact of major version updates in devDependencies.

Several development dependencies have been updated to major versions:

  • TypeScript-related packages (@babel/preset-env, @types/node)
  • Testing libraries (@testing-library/jest-dom)
  • Linting packages (eslint-plugin-import)

Also applies to: 125-127, 130-130, 138-138, 141-141, 143-143, 156-156, 159-159

✅ Verification successful

Let me gather more information about the actual TypeScript usage patterns to verify if there might be any breaking changes from the major version updates.


Based on the analysis of the codebase and the package updates, I can now provide a final response:

Major version updates appear safe to proceed with

The codebase shows minimal direct usage of the updated packages:

  • @testing-library/jest-dom is only used in test setup and one test file with basic matchers
  • TypeScript types are well-structured and don't use advanced features that might break
  • ESLint import plugin is used in a standard way without custom configurations

The updates are primarily in development dependencies and testing utilities, which don't affect the runtime behavior of the application. The TypeScript-related updates (@babel/preset-env, @babel/preset-typescript) are patch/minor versions that maintain backward compatibility.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check for potential TypeScript compilation issues after updates
fd -e ts -e tsx | xargs cat | ast-grep --pattern 'type $_ = $_'

Length of output: 25032


Script:

#!/bin/bash
# Check for TypeScript-specific syntax that might be affected by major version updates
ast-grep --pattern 'import type { $_ } from "$_"'

# Check for potential breaking patterns in testing
rg "@testing-library/jest-dom" -A 2 -B 2

# Check for ESLint import plugin usage
rg "eslint-plugin-import" -A 2 -B 2

Length of output: 3998


78-80: New test scripts added for Vitest integration.

The addition of Vitest alongside Jest requires careful consideration:

  1. Ensure there's no test duplication between Jest and Vitest
  2. Verify that coverage reports are properly merged
✅ Verification successful

Let me gather more information to properly verify the concern about test duplication and coverage.


Let me try one more search with corrected commands to find test framework usage:


Based on the search results, I can now provide a conclusive response:

No test duplication found between Jest and Vitest

The codebase shows:

  1. Only one test file (src/components/AddOn/AddOn.spec.tsx) uses Vitest imports
  2. All other test files use Jest-related imports and utilities
  3. The test scripts in package.json are clearly separated with distinct purposes:
    • test script runs Jest tests
    • test:vitest scripts are specifically for the AddOn component tests
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check for potential test file duplications
fd -e test.ts -e test.tsx -e spec.ts -e spec.tsx | sort > test_files.txt
rg -l "describe|test|it" test_files.txt

Length of output: 114


Script:

#!/bin/bash
# Check Jest configuration and test patterns
echo "=== Jest Config ==="
fd -e json -e js -e cjs -name "jest.config*"
cat $(fd -e json -e js -e cjs -name "jest.config*") 2>/dev/null || echo "No Jest config found"

echo -e "\n=== Package.json Test Scripts ==="
cat package.json | jq '.scripts | with_entries(select(.key | contains("test")))'

echo -e "\n=== Test Files Content Sample ==="
# Looking for test framework usage in test files
rg -l "import.*jest" --type ts --type tsx
rg -l "import.*vitest" --type ts --type tsx

Length of output: 1223


Script:

#!/bin/bash
echo "=== Jest Config Files ==="
fd "jest.config"

echo -e "\n=== Test Framework Usage ==="
# Search for Jest and Vitest imports/usage
rg "import.*jest"
rg "import.*vitest"

echo -e "\n=== Test File Patterns ==="
# Find test files and their contents
fd ".(test|spec)\.(ts|tsx)$" -x head -n 5 {}

Length of output: 46723


20-23: Verify compatibility with updated package versions.

Several MUI packages have been updated to different major versions which could introduce breaking changes:

  • @mui/x-charts to ^7.22.2
  • @mui/x-date-pickers to ^7.18.0
  • chart.js to ^4.4.6

Also applies to: 26-26, 29-29

✅ Verification successful

Based on the analysis of the codebase usage, I can now provide a final response:

The package version updates appear to be compatible with current usage patterns.

The codebase scan reveals:

  • @mui/x-charts is only used for PieChart component in EventStats, with basic functionality that's stable across 7.x versions
  • @mui/x-date-pickers is used extensively for DatePicker and TimePicker components, but the change from 7.22.1 to 7.18.0 is a downgrade within the same major version
  • chart.js usage is minimal and only in EventStatistics component, with the version update being within the same major version (4.x)

The changes are either minor version updates or downgrades within the same major version (7.x for MUI packages, 4.x for chart.js), which maintain backward compatibility according to semantic versioning principles.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check for any breaking changes in the MUI components usage
ast-grep --pattern 'import { $_ } from "@mui/x-charts"'
ast-grep --pattern 'import { $_ } from "@mui/x-date-pickers"'

Length of output: 121


Script:

#!/bin/bash
# Let's try a broader search with ripgrep to find any usage of these packages
echo "=== Searching for @mui/x-charts usage ==="
rg -l "@mui/x-charts"

echo -e "\n=== Searching for @mui/x-date-pickers usage ==="
rg -l "@mui/x-date-pickers"

echo -e "\n=== Searching for chart.js usage ==="
rg -l "chart.js"

# Let's also check the git diff to see what versions were updated from
echo -e "\n=== Checking package.json changes ==="
git diff origin/main -- package.json

Length of output: 8646


Script:

#!/bin/bash
# Let's examine the actual usage of these components to check for potential breaking changes

echo "=== Checking @mui/x-charts usage patterns ==="
rg -A 5 "@mui/x-charts" src/

echo -e "\n=== Checking @mui/x-date-pickers usage patterns ==="
rg -A 5 "@mui/x-date-pickers" src/

echo -e "\n=== Checking chart.js usage patterns ==="
rg -A 5 "chart.js" src/

Length of output: 66159

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

45-45: Update to changed files detection.

The workflow now uses tj-actions/changed-files@v45 which includes improvements in file detection.

Also applies to: 61-61

src/components/LoginPortalToggle/LoginPortalToggle.module.css (2)

27-27: Ensure --active-button-bg variable is defined

The background color for .activeLink has been changed to var(--active-button-bg). Verify that this CSS variable is defined and holds the correct color value intended for active links.


32-33: Ensure hover background color variable --active-hover is defined

The hover state for .activeLink now uses var(--active-hover). Confirm that this variable is defined to avoid potential styling issues when users hover over active links.

src/components/EventCalendar/EventHeader.tsx (2)

58-61: Verify that styles.searchbutton class is defined and styled appropriately

The class name for the search button has been changed to styles.searchbutton. Ensure that this class exists in the CSS module and provides the necessary styling for the button.


Line range hint 115-119: Confirm the styling changes for the create button

The className for the "Create Event" button has been updated to styles.createButton. Verify that this class is defined in the CSS module and that it aligns with the desired design guidelines.

src/screens/LoginPage/LoginPage.module.css (1)

75-87: Ensure new classes are defined correctly and applied consistently

The classes .email_button, .login_btn, and .reg_btn have been added. Verify that these classes are defined with the correct styles and that they are being used appropriately in the HTML/JSX to enhance the UI as intended.

src/screens/OrgList/OrgList.module.css (1)

23-24: Verify color contrast ratios for accessibility

The color changes to #555555 improve consistency, but we should verify the contrast ratios meet WCAG guidelines for accessibility.

Also applies to: 30-31

✅ Verification successful

Let me gather more information about the color usage to better understand the context.


Color contrast meets WCAG guidelines

The color combination used in .pluginStoreBtn meets accessibility standards:

  • Normal state: #555555 text on white background
  • Hover/focus state: #555555 text on #dfe1e2 background

Both combinations provide sufficient contrast for readability, making the button accessible to users with visual impairments.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check if there are any other instances of the old color values that need to be updated
rg -l "#31bb6b" --type css

Length of output: 2534


Script:

#!/bin/bash
# Check the actual usage of #31bb6b and #555555 colors in the OrgList.module.css file
rg -A 2 -B 2 "#31bb6b|#555555" src/screens/OrgList/OrgList.module.css

# Check the background color where #555555 is used to assess contrast
rg -A 5 "\.pluginStoreBtn" src/screens/OrgList/OrgList.module.css

Length of output: 774

src/screens/OrganizationEvents/OrganizationEvents.module.css (1)

64-64: LGTM: Consistent color scheme updates

The border color changes from #31bb6b to #eaebef are consistently applied across all relevant classes, improving visual consistency.

Also applies to: 75-75, 155-155, 165-165

src/components/EventCalendar/EventCalendar.module.css (2)

5-5: LGTM: Good use of CSS variables

The change to use var(--grey-bg-color) improves theme consistency and maintainability.


13-14: ⚠️ Potential issue

Fix margin property override

The shorthand margin property on line 14 overrides the margin-bottom property on line 13, making the margin-bottom declaration ineffective.

.calendar__header {
  display: flex;
- margin-bottom: 2rem;
- margin: 0px 10px 0px 10px;
+ margin: 0px 10px 2rem 10px;
  align-items: center;
}

Likely invalid or redundant comment.

🧰 Tools
🪛 Biome (1.9.4)

[error] 14-14: Unexpected shorthand property margin after margin-bottom

(lint/suspicious/noShorthandPropertyOverrides)

INSTALLATION.md (1)

132-162: LGTM! Clear Docker installation instructions.

The new Docker installation section provides clear and concise instructions for setting up the application using Docker.

src/screens/OrganizationEvents/OrganizationEvents.tsx (2)

288-288: LGTM: Modal close button styling updated

The class name change aligns with the PR objective of consolidating styles into the global CSS module.


494-494: LGTM: Create button styling updated

The class name change aligns with the PR objective of consolidating styles into the global CSS module.

src/screens/OrganizationActionItems/OrganizationActionItems.tsx (2)

369-370: LGTM: Container and input styling updated

The class name changes align with the PR objective of consolidating styles into the global CSS module. The template literals are simplified while maintaining the same styling functionality.


386-386: LGTM: Search button and container styling updated

The class name changes align with the PR objective of consolidating styles into the global CSS module.

Also applies to: 390-390

src/screens/OrgList/OrgList.tsx (4)

30-30: LGTM: Updated style import to use global CSS module

The import statement now correctly references the global app.module.css, aligning with the PR objective of style consolidation.


344-344: LGTM: Search input and button styling updated

The class name changes align with the PR objective of consolidating styles into the global CSS module.

Also applies to: 353-353


368-368: LGTM: Dropdown styling updated

The class name change aligns with the PR objective of consolidating styles into the global CSS module.


537-537: LGTM: Modal and button styling updated

The class name changes align with the PR objective of consolidating styles into the global CSS module.

Also applies to: 554-554

src/screens/OrgPost/OrgPost.tsx (4)

Line range hint 313-349: LGTM! Dropdown implementation is consistent and accessible

The dropdown components are well-implemented with proper ARIA attributes and consistent styling.


Line range hint 375-380: LGTM! Button implementation follows best practices

The create post button is well-implemented with proper icon and translation support.


Line range hint 417-435: LGTM! Pagination implementation is robust

The pagination buttons are well-implemented with proper disabled states and translations.


446-447: LGTM! Modal header is properly simplified

The modal header implementation is clean and follows the new styling approach.

src/screens/MemberDetail/MemberDetail.tsx (1)

6-6: LGTM! Style import updated correctly

The style import has been properly updated to use the global module.

src/screens/LoginPage/LoginPage.tsx (1)

Line range hint 447-523: LGTM! Button styling is consistent

The button styling has been properly consolidated into the global module while maintaining consistency.

src/screens/OrganizationFunds/OrganizationFunds.tsx (2)

17-17: LGTM! Improved accessibility with better visual feedback.

The updated styles enhance accessibility by:

  • Adding clear focus indicators with high-contrast outlines
  • Improving visual hierarchy with distinct background colors
  • Providing better hover state feedback

Also applies to: 21-40


302-306: LGTM! Consistent styling for search functionality.

The search button styling now follows the global pattern.

src/screens/BlockUser/BlockUser.tsx (2)

17-17: LGTM! Improved class naming for better maintainability.

The new class names are more specific and descriptive, making the code more maintainable.

Also applies to: 192-194


334-334: LGTM! Clear visual distinction between actions.

The button styles provide clear visual feedback for different actions, improving accessibility.

Also applies to: 346-346

@@ -1,7 +1,7 @@
import React, { useEffect, useState } from 'react';
import Button from 'react-bootstrap/Button';
import { useTranslation } from 'react-i18next';
import styles from './OrganizationVenues.module.css';
import styles from '../../style/app.module.css';
Copy link

Choose a reason for hiding this comment

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

💡 Codebase verification

CSS file still in use and needs to be migrated

The component-specific CSS file OrganizationVenues.module.css is still actively used by both OrganizationVenues.tsx and VenueCard.tsx. The file contains significant styling that hasn't been consolidated into app.module.css yet.

  • src/screens/OrganizationVenues/OrganizationVenues.module.css - Contains active styles
  • src/components/Venues/VenueCard.tsx - Imports and uses styles from the module CSS file

The CSS consolidation is incomplete. The styles need to be migrated to app.module.css before removing the original file.

🔗 Analysis chain

Verify removal of original CSS file.

Ensure that the original component-specific CSS file has been removed as part of this consolidation effort.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check for any remaining component-specific CSS files

# Look for any CSS files in the OrganizationVenues directory
fd -e css . src/screens/OrganizationVenues/

# Check for any remaining imports of the old CSS file
rg -l "OrganizationVenues.*\.css" src/

Length of output: 183


Script:

#!/bin/bash
# Check the content of VenueCard.tsx to see if it's still using the old CSS
cat src/components/Venues/VenueCard.tsx

# Check the content of OrganizationVenues.module.css to see if it's empty or still in use
cat src/screens/OrganizationVenues/OrganizationVenues.module.css

Length of output: 19316

@@ -261,7 +260,7 @@ const VenueModal = ({

<Button
type="submit"
className={styles.greenregbtn}
className={styles.addButton}
Copy link

Choose a reason for hiding this comment

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

💡 Codebase verification

Button styling inconsistency detected across components

The codebase shows mixed usage of button styles:

  • greenregbtn is still widely used across 33 locations in various components and CSS modules
  • addButton is used in 12 locations including the changed file

This indicates an incomplete transition in button styling standardization. Key areas to address:

  • Multiple components in src/screens/ still use the old greenregbtn style
  • Components in src/components/ have inconsistent usage between old and new styles
  • The new addButton style is defined in src/style/app.module.css but not fully adopted
🔗 Analysis chain

Maintain consistent button styling across components

The change from greenregbtn to addButton suggests a move towards standardized button styles. Ensure this new class is consistently used across all similar actions in other components.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check for any remaining uses of the old button class
echo "Checking for old button class usage..."
rg "greenregbtn"

# Check for consistent usage of new button class
echo "Checking new button class usage..."
rg "addButton"

Length of output: 4183

@@ -162,8 +162,7 @@ const VenueModal = ({
<Button
variant="danger"
onClick={onHide}
className="p-3 d-flex justify-content-center align-items-center"
style={{ width: '40px', height: '40px' }}
className={styles.closeButton}
Copy link

Choose a reason for hiding this comment

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

💡 Codebase verification

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

Add aria-label to close button for better accessibility

The close button currently lacks proper accessibility attributes. While it has:

  • Visual icon (fa fa-times)
  • Hover states with color contrast
  • Test ID for testing

It needs:

  • aria-label attribute to provide screen reader context
  • Consider adding aria-labelledby if the modal has a visible title

Example locations:

  • src/components/Venues/VenueModal.tsx: Add aria-label to the Button with className={styles.closeButton}
  • src/components/Venues/VenueModal.tsx: Add aria-label to the button with className={styles.closeButtonP}
🔗 Analysis chain

Ensure close button maintains accessibility features

While changing to a custom class, ensure the close button maintains proper accessibility features:

  1. Adequate contrast ratio for the close icon
  2. Proper hover/focus states
  3. ARIA labels for screen readers

Let me fix the regex syntax and try to gather more comprehensive information about the accessibility features.


Let me check the actual implementation of the close button and its styles to make a complete assessment.


Let me fix the regex and check the complete button implementation.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if closeButton class includes accessibility features
echo "Checking closeButton class definition..."
rg -A 5 "\.closeButton\s*{" "src/style/app.module.css"

# Check for any existing aria-label attributes on close buttons
echo "Checking for aria-label usage..."
ast-grep --pattern 'Button aria-label=$_'

Length of output: 362


Script:

#!/bin/bash
# Check if closeButton class exists in any CSS/SCSS files
echo "Checking closeButton class definition..."
rg "closeButton" --type css

# Check the VenueModal component for accessibility attributes
echo "Checking VenueModal.tsx for accessibility features..."
rg -A 3 "closeButton" "src/components/Venues/VenueModal.tsx"

# Check for aria-label or similar accessibility attributes in close buttons
echo "Checking for aria-related attributes..."
ast-grep --pattern 'aria-label=$_'

# Check for role attributes
echo "Checking for role attributes..."
ast-grep --pattern 'role=$_'

Length of output: 1716


Script:

#!/bin/bash
# Check the full content of the closeButton styles
echo "Checking closeButton styles in app.module.css..."
rg -A 5 "\.closeButton\s?\{" src/style/app.module.css

# Check the full VenueModal close button implementation
echo "Checking VenueModal close button implementation..."
rg -B 2 -A 5 "className={styles\.closeButton}" src/components/Venues/VenueModal.tsx

# Check if there are any Button components with accessibility attributes
echo "Checking for button accessibility patterns..."
ast-grep --pattern 'Button type=$_ aria-label=$_'

Length of output: 774


Script:

#!/bin/bash
# Check the VenueModal close button implementation
echo "Checking VenueModal close button implementation..."
rg -B 2 -A 5 "closeButton" src/components/Venues/VenueModal.tsx

# Check hover styles for the close button
echo "Checking closeButton hover styles..."
rg -A 5 "closeButton:hover" src/style/app.module.css

# Check for any aria attributes in the VenueModal
echo "Checking VenueModal for aria attributes..."
rg "aria-" src/components/Venues/VenueModal.tsx

Length of output: 1139

@@ -12,7 +12,7 @@ updates:
labels:
- "dependencies"
# Specify the target branch for PRs
target-branch: "develop"
target-branch: "develop-postgres"
Copy link

Choose a reason for hiding this comment

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

💡 Codebase verification

Target branch develop-postgres doesn't exist and deviates from current branch strategy

The verification reveals concerning issues:

  • The develop-postgres branch does not exist in the repository
  • The repository uses main as the default branch
  • Neither develop nor develop-postgres branches are present in the remote

This change would cause Dependabot to fail as it attempts to create pull requests against a non-existent target branch. Additionally, it deviates from the repository's current branch strategy which appears to be main-based.

🔗 Analysis chain

Please clarify the branch strategy change

The change from develop to develop-postgres as the target branch for Dependabot suggests a significant shift in the project's branch strategy. However, this change seems unrelated to the PR's stated objectives of CSS refactoring and accessibility improvements.

Could you please:

  1. Explain the rationale behind this branch strategy change
  2. Confirm if this is intentional or if it should be part of a separate PR
  3. Verify if this aligns with the project's current branching strategy

Let me gather more information about the branch strategy by checking the default branch and recent branch activity.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if develop-postgres branch exists and its relationship with develop
git branch -a | grep -E 'develop(-postgres)?$'
git show-ref --verify refs/heads/develop-postgres 2>/dev/null || echo "Branch develop-postgres does not exist locally"

Length of output: 203


Script:

#!/bin/bash
# Check default branch and recent branch activity
git remote show origin | grep 'HEAD branch'
git branch -r | grep -E 'develop|master|main'
git log --oneline --decorate --max-count=20 | grep -E 'develop|master|main'

Length of output: 156

Comment on lines +21 to +22
"include": ["src", "src/App.tsx", "setup.ts"],
"exclude": ["node_modules", "dist", "vitest.config.ts"]
Copy link

Choose a reason for hiding this comment

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

💡 Codebase verification

Exclude patterns in tsconfig.json need adjustment

The dist directory is not currently present in the project, but it's a standard output directory that will be created during the build process (as indicated by the build script in package.json). However, node_modules exists and vitest.config.ts is present at the root. The exclude patterns are appropriate for their intended purpose, but there's a minor redundancy in the include patterns.

  • src/App.tsx doesn't need to be explicitly included since the src pattern already covers it
  • The exclude patterns are correctly configured for build outputs and test configs
🔗 Analysis chain

LGTM! Verify the excluded paths

The TypeScript configuration changes look good. The exclude patterns are standard and appropriate for the project structure.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Verify that the excluded paths exist and contain the expected content
fd -t d '^(node_modules|dist)$'
fd -t f '^vitest\.config\.ts$'

Length of output: 83


Script:

#!/bin/bash
# Let's verify if there are any references to 'dist' directory in package.json or other config files
fd -e json -x cat {} | grep -i "dist"

# Also check for any build scripts or references that might create the dist directory
fd -e json package.json -x cat {}

Length of output: 6302

Comment on lines +209 to +230
- name: Run Jest Tests
if: steps.changed-files.outputs.only_changed != 'true'
run: npm run test -- --watchAll=false --coverage
env:
NODE_V8_COVERAGE: './coverage/jest'
run: |
npm run test -- --watchAll=false --coverage

- name: Run Vitest Tests
if: steps.changed-files.outputs.only_changed != 'true'
env:
NODE_V8_COVERAGE: './coverage/vitest'
run: |
npm run test:vitest:coverage

- name: Merge Coverage Reports
if: steps.changed-files.outputs.only_changed != 'true'
run: |
mkdir -p coverage
if ! npx lcov-result-merger 'coverage/*/lcov.info' > 'coverage/lcov.info'; then
echo "Failed to merge coverage reports"
exit 1
fi
Copy link

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Review the test coverage configuration.

The new setup properly handles both Jest and Vitest coverage reports:

  1. Separate coverage directories for Jest and Vitest
  2. Merged coverage reports using lcov-result-merger
  3. Upload to Codecov with unique naming

However, the minimum coverage threshold is set to 0.0%, which might be too permissive.

Consider setting a reasonable minimum coverage threshold:

-          min_coverage: 0.0
+          min_coverage: 80.0

Also applies to: 239-253

🧰 Tools
🪛 yamllint (1.35.1)

[error] 230-230: trailing spaces

(trailing-spaces)

Comment on lines +409 to +411
if: github.event.pull_request.base.ref != 'develop-postgres'
run: |
echo "Error: Pull request target branch must be 'develop'. Please refer PR_GUIDELINES.md"
echo "Error: Pull request target branch must be 'develop-postgres'. Please refer PR_GUIDELINES.md"
Copy link

Choose a reason for hiding this comment

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

💡 Codebase verification

Documentation needs to be updated to reflect 'develop-postgres' as the target branch

Multiple documentation files still reference 'develop' as the target branch for pull requests:

  • .github/pull_request_template.md: Mentions 'develop' as the branch for unstable code
  • CONTRIBUTING.md: Instructions to branch off from 'develop'
  • PR_GUIDELINES.md: Explicitly states to submit PRs against 'develop' branch
  • INSTALLATION.md: Instructions to checkout 'develop' branch
  • README.md: Contains badge referencing 'develop' branch
🔗 Analysis chain

Target branch update requires documentation update.

The target branch has been changed from 'develop' to 'develop-postgres'.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if documentation reflects the new target branch
rg -l "develop(?!-postgres)" .github/ docs/ *.md

Length of output: 405


Script:

#!/bin/bash
# Check if documentation reflects the new target branch using PCRE2
rg --pcre2 -l "develop(?!-postgres)" .github/ docs/ *.md

# Also search for explicit mentions of 'develop' branch
rg -l "\bdevelop\b" .github/ docs/ *.md

Length of output: 864


Script:

#!/bin/bash
# Let's check the actual content of these files to see the context of 'develop' mentions
rg -A 2 -B 2 "\bdevelop\b" README.md PR_GUIDELINES.md INSTALLATION.md CONTRIBUTING.md .github/pull_request_template.md

Length of output: 4264

Comment on lines +58 to +60
background-color: var(--grey-bg-color) !important;
color: black !important;
border: 1px solid var(--dropdown-border-color);
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue

Replace deprecated CSS variables with updated ones

The .manageBtn class is using variables --grey-bg-color and --dropdown-border-color, which may have been removed or renamed based on the AI summary. Ensure that the variables used are defined and updated according to the new CSS architecture.

Apply this diff to use the correct CSS variables:

.manageBtn {
  display: flex;
  justify-content: space-around;
  width: 8rem;
-  background-color: var(--grey-bg-color) !important;
+  background-color: var(--bs-gray-200) !important;
-  color: black !important;
+  color: var(--bs-body-color) !important;
-  border: 1px solid var(--dropdown-border-color);
+  border: 1px solid var(--bs-border-color);
}

Ensure that the new variables are defined and reflect the intended styling.

📝 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
background-color: var(--grey-bg-color) !important;
color: black !important;
border: 1px solid var(--dropdown-border-color);
background-color: var(--bs-gray-200) !important;
color: var(--bs-body-color) !important;
border: 1px solid var(--bs-border-color);

Comment on lines +137 to +159
--dropdown-border-color: #555555;
--dropdown-text-color: #555555;
--dropdown-hover-color: #eff1f7;
--grey-bg-color: #eaebef;
--subtle-blue-grey: #7c9beb;
--subtle-blue-grey-hover: #5f7e91;
--modal-width: 670px;
--modal-max-width: 680px;
--input-shadow-color: #dddddd;
--delete-button-bg: #f8d6dc;
--delete-button-color: #ff4d4f;
--search-button-bg: #a8c7fa;
--search-button-border: #555555;
--table-image-size: 50px;
--table-head-bg: var(--bs-primary, blue);
/* Assuming var(--bs-primary) is defined elsewhere */
--table-head-color: white;
--table-header-color: var(--bs-greyish-black, black);
--table-head-radius: 20px;
--table-bg-color: #eaebef;
--tablerow-bg-color: #eff1f7;
--row-background: var(--bs-white, white);
--font-size-header: 16px;
Copy link

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Add accessibility documentation for color variables

Given the PR objective to improve accessibility for color-blind users, please:

  1. Document color combinations that are safe for color-blind users
  2. Add comments about WCAG compliance levels
  3. Consider adding alternative visual indicators besides color

Add accessibility documentation:

+  /* Accessibility-focused color system
+   * These colors have been tested for:
+   * - WCAG 2.1 AA compliance
+   * - Color-blind friendly combinations
+   * - Sufficient contrast in both light and dark modes
+   */
   --dropdown-border-color: #555555;
   --dropdown-text-color: #555555;
   --dropdown-hover-color: #eff1f7;
   
+  /* Consider adding non-color indicators for state changes
+   * Example: Add icons or patterns for hover/active states
+   */

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


💡 Codebase verification

🛠️ Refactor suggestion

CSS variables are properly defined, but color contrast needs attention

The referenced Bootstrap variables (--bs-primary, --bs-greyish-black, --bs-white) are all defined in src/assets/css/app.css. However, there are potential accessibility concerns:

  • --bs-primary is set to #eaebef (a very light gray), which may not provide sufficient contrast with white text in table headers
  • --bs-greyish-black is set to #555555, which might not meet WCAG contrast requirements against light backgrounds

Consider:

  • Using a darker shade for --bs-primary when used as table header background
  • Ensuring --bs-greyish-black (#555555) meets 4.5:1 contrast ratio with background colors
  • Adding color contrast ratio comments in the code for future maintainability
🔗 Analysis chain

Verify CSS variable references and enhance color contrast

The new CSS variables have some potential issues:

  1. Some variables reference other variables that need verification:

    • --table-head-bg: var(--bs-primary, blue)
    • --table-header-color: var(--bs-greyish-black, black)
    • --row-background: var(--bs-white, white)
  2. The color combinations should be tested for accessibility:

    • Table header text (white) on --table-head-bg background
    • Table content on --table-bg-color and --tablerow-bg-color

Run the following script to check if the referenced variables are defined:

Consider adding WCAG color contrast comments and documentation for the color variables:

+  /* Color variables - WCAG AA compliant
+   * --table-head-bg: Ensures 4.5:1 contrast ratio with white text
+   * --table-header-color: Ensures 4.5:1 contrast ratio with background
+   */
   --table-head-bg: var(--bs-primary, blue);
   --table-head-color: white;
   --table-header-color: var(--bs-greyish-black, black);
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check for variable definitions in CSS files
# Search for bs-primary, bs-greyish-black, and bs-white variable definitions

rg --type css "bs-primary|bs-greyish-black|bs-white" 

Length of output: 11668

@palisadoes
Copy link
Contributor

There isn’t an issue assigned to you for this PR. Please follow the guidelines in our PR_GUIDELINES.md file. We have the procedures in place so that everyone has a fair chance of contributing. I will be closing this pull request. Please follow the procedures and resubmit when ready.

@palisadoes palisadoes closed this Dec 1, 2024
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.

5 participants