diff --git a/.eslintrc.json b/.eslintrc.json index 9af321cd12..f5a6d5dd96 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -19,7 +19,8 @@ "plugins": ["@graphql-eslint"], // Do not apply naming conventions to .graphql files "rules": { - "@typescript-eslint/naming-convention": "off" + "@typescript-eslint/naming-convention": "off", + "@typescript-eslint/consistent-type-assertions": "off" } }, { diff --git a/.github/workflows/authorized-changes-detection.yml b/.github/workflows/authorized-changes-detection.yml index 4d7398643a..ad5afa14d3 100644 --- a/.github/workflows/authorized-changes-detection.yml +++ b/.github/workflows/authorized-changes-detection.yml @@ -17,6 +17,7 @@ on: - '.husky/**' - 'scripts/**' - '.env.sample' + - '.node-version' - 'tsconfig.json' - '.gitignore' - '.eslintrc.json' diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml deleted file mode 100644 index 953eee0d8a..0000000000 --- a/.github/workflows/deploy.yml +++ /dev/null @@ -1,24 +0,0 @@ -# You can find the deployment instructions in the scripts/cloud-api-demo/README.md file -name: Deploy to Cloud VPS - -on: - push: - branches: - - develop - -jobs: - deploy: - runs-on: ubuntu-latest - - steps: - - name: Execute remote ssh commands - uses: appleboy/ssh-action@v1.0.0 - with: - host: ${{ secrets.API_DEMO_HOST }} - username: ${{ secrets.API_DEMO_USERNAME }} - key: ${{ secrets.API_DEMO_SSH_KEY }} - port: ${{ secrets.API_DEMO_PORT }} - command_timeout: 30m - script: | - /usr/local/bin/deploy.sh - diff --git a/.github/workflows/inspect.yml b/.github/workflows/inspect.yml deleted file mode 100644 index 3970646b64..0000000000 --- a/.github/workflows/inspect.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: CI - -on: [push] - -jobs: - test: - name: Check Schema - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Restore node_modules from cache - id: cache-npm - uses: actions/cache@v3 - env: - cache-name: cache-node-modules - with: - path: | - ~/.npm - node_modules - key: ${{ runner.os }}-node-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} - restore-keys: | - ${{ runner.os }}-node-${{ env.cache-name }}- - ${{ runner.os }}-node- - ${{ runner.os }}- - - - name: Install dependencies - run: npm ci - - - name: Generate schema.graphql - run: npm run gen:schema - - - uses: kamilkisiela/graphql-inspector@master - with: - schema: develop:schema.graphql \ No newline at end of file diff --git a/.github/workflows/pull-request-target.yml b/.github/workflows/pull-request-target.yml index ad50c9d2d6..fde5f05808 100644 --- a/.github/workflows/pull-request-target.yml +++ b/.github/workflows/pull-request-target.yml @@ -39,6 +39,7 @@ jobs: ### 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 diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 7b43da3503..3ebf43d7f0 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -4,7 +4,7 @@ # NOTE! # # Please read the README.md file in this directory that defines what should -# be placed in this file +# be placed in this file. # ############################################################################## ############################################################################## @@ -25,6 +25,8 @@ jobs: steps: - name: Checkout repository content uses: actions/checkout@v3 + with: + fetch-depth: 2 - name: Count number of lines run: | @@ -49,8 +51,21 @@ jobs: - name: Install Dependencies run: npm ci + # Lint, but exclude typescript files in the .eslintignore file + # or else we'll get failures + - name: Get changed files + id: changed_files + uses: tj-actions/changed-files@v42 + with: + files: | + **.ts + '!src/types/**.ts' + - name: Run ESLint to check for linting errors in modified files - run: npx eslint $(git diff --name-only --diff-filter=d -- '***.ts' ${{ github.event.before }} ${{ github.sha }}) + if: steps.changed_files.outputs.any_changed == 'true' + env: + CHANGED_FILES: ${{ steps.changed_files.outputs.all_changed_files }} + run: npx eslint ${CHANGED_FILES} - name: Check for formatting errors run: npm run format:check @@ -216,6 +231,3 @@ jobs: run: | echo "PR is not against develop branch. Please refer PR_GUIDELINES.md" exit 1 - - - diff --git a/.github/workflows/pull_changes.yml b/.github/workflows/pull_changes.yml new file mode 100644 index 0000000000..006cd1ad25 --- /dev/null +++ b/.github/workflows/pull_changes.yml @@ -0,0 +1,23 @@ +name: Copy Docs to Talawa Docs + +on: + schedule: + - cron: '*/5 * * * *' +jobs: + copy-docs-to-talawa-docs: + runs-on: ubuntu-latest + if: github.ref == 'refs/heads/automated-docs' + # needs: Generate-Documentation + steps: + - uses: actions/checkout@v3 + - uses: dmnemec/copy_file_to_another_repo_action@v1.1.1 + env: + API_TOKEN_GITHUB: ${{secrets.TALAWA_DOCS_SYNC}} + with: + source_file: 'talawa-api-docs/' + destination_repo: 'PalisadoesFoundation/talawa-docs' + destination_branch: 'develop' + destination_folder: 'docs/' + user_email: '${{env.email}}' + user_name: '${{github.actor}}' + commit_message: 'Talawa API docs updated' diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index a061354af5..0c93ce5339 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -92,7 +92,7 @@ jobs: verbose: true fail_ci_if_error: false name: '${{env.CODECOV_UNIQUE_NAME}}' - + Generate-Documentation: name: Generate Documentation runs-on: ubuntu-latest @@ -101,7 +101,8 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v3 - + # with: + # persist-credentials: false - name: Generate Documentation of HTML pages run: | npm install --global typedoc @@ -139,26 +140,44 @@ jobs: git config --global user.email "${{env.email}}" git add . git commit -m "Update documentation" - git push -f https://$GH_TOKEN@github.com/PalisadoesFoundation/talawa-api.git HEAD:develop + git push -f https://$GH_TOKEN@github.com/PalisadoesFoundation/talawa-api.git HEAD:automated-docs echo -e "🚀${Green} Hurrah! doc updated${NoColor}" env: - ACCESS_TOKEN: ${{ secrets.GH_TOKEN }} + ACCESS_TOKEN: ${{secrets.GH_TOKEN}} - name: Create Documentation Artifact uses: actions/upload-artifact@v2 with: name: documentation-api path: talawa-api-docs + + # Empty-Commit: + # name: Create Empty Commit + # runs-on: ubuntu-latest + # needs: Generate-Documentation + # if: github.ref == 'refs/heads/develop' + # steps: + # - name: Checkout repository + # uses: actions/checkout@v3 + # # with: + # # persist-credentials: false + # # token: ${{ secrets.TOKN_EMPTY_COMMIT }} + # - name: Empty Commit + # run: | + # git config --global user.name "tasneemkoushar" + # git config --global user.email "imatasneemkoushar@gmail.com" + # git config --global url.https://${{ secrets.TOKN_EMPTY_COMMIT }}@github.com/.insteadOf https://github.com/ + # git commit --allow-empty -m "Empty commit" + # git push -f https://$TOKN_EMPTY_COMMIT@github.com/PalisadoesFoundation/talawa-api.git HEAD:automated-docs Copy-docs-to-talawa-docs: runs-on: ubuntu-latest - if: github.ref == 'refs/heads/develop' - needs: Generate-Documentation + if: github.ref == 'refs/heads/automated-docs' && contains(github.event.head_commit.message, 'Update documentation') steps: - uses: actions/checkout@v3 - uses: dmnemec/copy_file_to_another_repo_action@v1.1.1 env: - API_TOKEN_GITHUB: ${{secrets.TALAWA_DOCS_SYNC}} + API_TOKEN_GITHUB: ${{secrets.TALAWA_DOCS_SYNC}} with: source_file: 'talawa-api-docs/' destination_repo: 'PalisadoesFoundation/talawa-docs' @@ -168,3 +187,87 @@ jobs: user_name: '${{github.actor}}' commit_message: 'Talawa API docs updated' +# You can find the deployment instructions in the scripts/cloud-api-demo/README.md file + Deploy-Workflow: + name: Deploying Application to Cloud VPS + needs: Push-Workflow + runs-on: ubuntu-latest + steps: + - name: Generate Access Token Secret + run: | + secret=$(openssl rand -hex 32) + echo "INPUT_ACCESS_TOKEN_SECRET=$secret" >> $GITHUB_ENV + echo "::add-mask::$secret" + + - name: Generate Refresh Token Secret + run: | + secret=$(openssl rand -hex 32) + echo "INPUT_REFRESH_TOKEN_SECRET=$secret" >> $GITHUB_ENV + echo "::add-mask::$secret" + + - name: Execute remote ssh commands + uses: appleboy/ssh-action@v1.0.3 + env: + INPUT_RECAPTCHA_SECRET_KEY: ${{ secrets.API_DEMO_RECAPTCHA_SECRET_KEY }} + INPUT_MAIL_USERNAME: ${{ secrets.API_DEMO_MAIL_USERNAME }} + INPUT_MAIL_PASSWORD: ${{ secrets.API_DEMO_MAIL_PASSWORD }} + INPUT_LAST_RESORT_SUPERADMIN_EMAIL: ${{ secrets.API_DEMO_LAST_RESORT_SUPERADMIN_EMAIL }} + with: + host: ${{secrets.API_DEMO_HOST}} + username: ${{ secrets.API_DEMO_USERNAME }} + key: ${{ secrets.API_DEMO_SSH_KEY }} + port: ${{ secrets.API_DEMO_SSH_PORT}} + allenvs: true + command_timeout: 30m + script: | + python3 /usr/local/bin/scripts/create_env.py --access_token_secret $INPUT_ACCESS_TOKEN_SECRET --refresh_token_secret $INPUT_REFRESH_TOKEN_SECRET --recaptcha_secret_key $INPUT_RECAPTCHA_SECRET_KEY --mail_username $INPUT_MAIL_USERNAME --mail_password $INPUT_MAIL_PASSWORD --last_resort_superadmin_email $INPUT_LAST_RESORT_SUPERADMIN_EMAIL + python3 /usr/local/bin/scripts/deploy.py --path ~/develop --branch develop + + Check-Schema: + name: Check Schema + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Restore node_modules from cache + id: cache-npm + uses: actions/cache@v3 + env: + cache-name: cache-node-modules + with: + path: | + ~/.npm + node_modules + key: ${{ runner.os }}-node-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.os }}-node-${{ env.cache-name }}- + ${{ runner.os }}-node- + ${{ runner.os }}- + + - name: Install dependencies + run: npm ci + + - name: Generate schema.graphql + run: npm run gen:schema + + # A separate step for extracting branch name from $GITHUB_HEAD_REF/$GITHUB_REF + # $GITHUB_HEAD_REF on pull_request and $GITHUB_REF on push + # If GITHUB_HEAD_REF is not set, extract the branch name from GITHUB_REF using parameter expansion to remove "refs/heads/" prefix + # If GITHUB_HEAD_REF is set, directly assign its value to the branch variable + + - name: Extract branch name + shell: bash + run: | + if [ -z "$GITHUB_HEAD_REF" ]; then + branch=${GITHUB_REF#refs/heads/} + else + branch=$GITHUB_HEAD_REF + fi + echo "branch=$branch" >> $GITHUB_OUTPUT + id: extract_branch + + - uses: kamilkisiela/graphql-inspector@master + with: + schema: ${{ steps.extract_branch.outputs.branch }}:schema.graphql diff --git a/.gitignore b/.gitignore index 40e9b62fb1..d7dceeb1da 100644 --- a/.gitignore +++ b/.gitignore @@ -43,8 +43,6 @@ serviceAccountKey.json cert.pem key.pem csr.pem -# Added FNM configuration files -.node-version # MacOS diff --git a/.node-version b/.node-version new file mode 100644 index 0000000000..790e1105f2 --- /dev/null +++ b/.node-version @@ -0,0 +1 @@ +v20.10.0 diff --git a/INSTALLATION.md b/INSTALLATION.md index 5aafbc4ba2..c2f0ed5284 100644 --- a/INSTALLATION.md +++ b/INSTALLATION.md @@ -78,6 +78,11 @@ You will need to have copies of your code on your local system. Here's how to do Best way to install and manage `node.js` is making use of node version managers. Two most popular node version managers right now are [fnm](https://github.com/Schniz/fnm) and [nvm](https://github.com/nvm-sh/nvm). We'd recommend `fnm` because it's written in `rust` and is much faster than `nvm`. Install whichever one you want and follow their guide to set up `node.js` on your system ensure the installation of Node.js version 20 LTS. +_**NOTE**_ + +1. The repository has a `.node-version` file to help ensure you use the supported version of `node.js`. Do not edit this file. +1. We strongly recommend that you configure your node version manager of choice to automatically read `.node-version` files + ## Install npm npm is a package manager for Node.js and is installed with Node.js. npm is used to install, share, and distribute code as well as to manage dependencies in your projects. To check if you have npm installed you can run this command in your terminal: @@ -203,6 +208,10 @@ Talawa-api makes use of `Redis` for caching frequently accessed data items in th ```bash redis-cli ``` + - **Step 6**: + - Use these parameters when running the setup script if you have configured the server on your local machine: + - Redis Host: `localhost` + - Redis Port: `6379` (default Redis port) 2. `For Windows Users using WSL`: @@ -235,6 +244,11 @@ If you'd rather not deal with the hassle of setting up WSL on your computer, the redis-cli ``` +- **Step 7**: + - Use these parameters when running the setup script if you have configured the server on your local machine: + - Redis Host: `localhost` + - Redis Port: `6379` (default Redis port) + 3. **Connecting to Redis Cloud**: To connect to a Redis cloud service, you will need the host and port information provided by your cloud service provider. Use these values in your application to establish a connection. Typically, the host and port strings are provided in the following format: @@ -512,9 +526,10 @@ SMTP_SSL_TLS=true For more information on setting up a smtp server, here's a [useful article](https://sendgrid.com/blog/what-is-an-smtp-server/) -### Setting up Logger configurations _(optional)_ +### Setting up Logger configurations -You can set up and customize logs by configuring the following parameters +1. This is an optional setting +1. You can set up and customize logs by configuring the following parameters #### Setting up COLORIZE_LOGS in .env file @@ -769,4 +784,4 @@ Talawa-api makes use of `vitest` to run tests because it is much faster than `je You can run the tests for talawa-api using this command: - npm run test \ No newline at end of file + npm run test diff --git a/codegen.ts b/codegen.ts index 47f6985cad..92ed260ec9 100644 --- a/codegen.ts +++ b/codegen.ts @@ -30,6 +30,8 @@ const config: CodegenConfig = { ActionItemCategory: "../models/ActionItemCategory#InterfaceActionItemCategory", + AgendaCategory: "../models/AgendaCategory#InterfaceAgendaCategory", + CheckIn: "../models/CheckIn#InterfaceCheckIn", MessageChat: "../models/MessageChat#InterfaceMessageChat", @@ -47,6 +49,9 @@ const config: CodegenConfig = { EventAttendee: "../models/EventAttendee#InterfaceEventAttendee", + UserFamily: "../models/userFamily#InterfaceUserFamily", + EventVolunteer: "../models/EventVolunteer#InterfaceEventVolunteer", + Feedback: "../models/Feedback#InterfaceFeedback", // File: '../models/File#InterfaceFile', diff --git a/package-lock.json b/package-lock.json index cea404e0ca..1b7c5f25a0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "copy-paste": "^1.5.3", "cors": "^2.8.5", "cross-env": "^7.0.3", - "date-fns": "^3.3.0", + "date-fns": "^3.3.1", "dotenv": "^16.4.1", "express": "^4.18.2", "express-mongo-sanitize": "^2.2.0", @@ -48,12 +48,12 @@ "mongoose": "^5.13.21", "mongoose-paginate-v2": "^1.7.0", "morgan": "^1.10.0", - "nanoid": "^3.3.7", - "nodemailer": "^6.9.8", + "nanoid": "^5.0.5", + "nodemailer": "^6.9.9", "pm2": "^5.2.0", "redis": "^4.6.12", + "rrule": "^2.8.1", "shortid": "^2.2.16", - "ts-node": "^10.9.2", "typedoc-plugin-markdown": "^3.17.1", "uuid": "^9.0.0", "validator": "^13.7.0", @@ -65,9 +65,9 @@ }, "devDependencies": { "@graphql-codegen/cli": "^5.0.0", - "@graphql-codegen/typescript": "^4.0.1", + "@graphql-codegen/typescript": "^4.0.4", "@graphql-codegen/typescript-resolvers": "^4.0.1", - "@graphql-eslint/eslint-plugin": "^3.12.0", + "@graphql-eslint/eslint-plugin": "^3.20.1", "@types/bcryptjs": "^2.4.6", "@types/cls-hooked": "^4.3.8", "@types/copy-paste": "^1.1.30", @@ -85,9 +85,9 @@ "@types/nodemailer": "^6.4.14", "@types/shortid": "^0.0.32", "@types/uuid": "^9.0.7", - "@types/validator": "^13.11.7", - "@typescript-eslint/eslint-plugin": "^5.42.0", - "@typescript-eslint/parser": "^5.42.0", + "@types/validator": "^13.11.9", + "@typescript-eslint/eslint-plugin": "^6.21.0", + "@typescript-eslint/parser": "^6.20.0", "@vitest/coverage-c8": "^0.24.3", "concurrently": "^8.2.2", "eslint": "^8.56.0", @@ -97,8 +97,8 @@ "get-graphql-schema": "^2.1.2", "graphql-markdown": "^7.0.0", "husky": "^9.0.6", - "lint-staged": "^15.2.0", - "prettier": "^2.7.1", + "lint-staged": "^15.2.2", + "prettier": "3.2.5", "rimraf": "^5.0.5", "tsx": "^4.7.0", "typescript": "^5.3.2", @@ -1495,26 +1495,6 @@ "node": ">=0.1.90" } }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, "node_modules/@cwasm/webp": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/@cwasm/webp/-/webp-0.1.5.tgz", @@ -2661,9 +2641,9 @@ "dev": true }, "node_modules/@graphql-codegen/plugin-helpers": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-5.0.1.tgz", - "integrity": "sha512-6L5sb9D8wptZhnhLLBcheSPU7Tg//DGWgc5tQBWX46KYTOTQHGqDpv50FxAJJOyFVJrveN9otWk9UT9/yfY4ww==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-5.0.3.tgz", + "integrity": "sha512-yZ1rpULIWKBZqCDlvGIJRSyj1B2utkEdGmXZTBT/GVayP4hyRYlkd36AJV/LfEsVD8dnsKL5rLz2VTYmRNlJ5Q==", "dev": true, "dependencies": { "@graphql-tools/utils": "^10.0.0", @@ -2671,49 +2651,37 @@ "common-tags": "1.8.2", "import-from": "4.0.0", "lodash": "~4.17.0", - "tslib": "~2.5.0" + "tslib": "~2.6.0" }, "peerDependencies": { "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@graphql-codegen/plugin-helpers/node_modules/tslib": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", - "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==", - "dev": true - }, "node_modules/@graphql-codegen/schema-ast": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@graphql-codegen/schema-ast/-/schema-ast-4.0.0.tgz", - "integrity": "sha512-WIzkJFa9Gz28FITAPILbt+7A8+yzOyd1NxgwFh7ie+EmO9a5zQK6UQ3U/BviirguXCYnn+AR4dXsoDrSrtRA1g==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/schema-ast/-/schema-ast-4.0.2.tgz", + "integrity": "sha512-5mVAOQQK3Oz7EtMl/l3vOQdc2aYClUzVDHHkMvZlunc+KlGgl81j8TLa+X7ANIllqU4fUEsQU3lJmk4hXP6K7Q==", "dev": true, "dependencies": { - "@graphql-codegen/plugin-helpers": "^5.0.0", + "@graphql-codegen/plugin-helpers": "^5.0.3", "@graphql-tools/utils": "^10.0.0", - "tslib": "~2.5.0" + "tslib": "~2.6.0" }, "peerDependencies": { "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/@graphql-codegen/schema-ast/node_modules/tslib": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", - "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==", - "dev": true - }, "node_modules/@graphql-codegen/typescript": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-4.0.1.tgz", - "integrity": "sha512-3YziQ21dCVdnHb+Us1uDb3pA6eG5Chjv0uTK+bt9dXeMlwYBU8MbtzvQTo4qvzWVC1AxSOKj0rgfNu1xCXqJyA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-4.0.4.tgz", + "integrity": "sha512-x79CKLfP9UQCX+/I78qxQlMs2Mmq3pF1lKafZo7lAno0f/fvJ+qWUduzdgjRNz+YL+5blGeWcC0pWEDxniO7hw==", "dev": true, "dependencies": { - "@graphql-codegen/plugin-helpers": "^5.0.0", - "@graphql-codegen/schema-ast": "^4.0.0", - "@graphql-codegen/visitor-plugin-common": "4.0.1", + "@graphql-codegen/plugin-helpers": "^5.0.3", + "@graphql-codegen/schema-ast": "^4.0.2", + "@graphql-codegen/visitor-plugin-common": "4.1.2", "auto-bind": "~4.0.0", - "tslib": "~2.5.0" + "tslib": "~2.6.0" }, "peerDependencies": { "graphql": "^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" @@ -2742,11 +2710,26 @@ "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==", "dev": true }, - "node_modules/@graphql-codegen/typescript/node_modules/tslib": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", - "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==", - "dev": true + "node_modules/@graphql-codegen/typescript/node_modules/@graphql-codegen/visitor-plugin-common": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-4.1.2.tgz", + "integrity": "sha512-yk7iEAL1kYZ2Gi/pvVjdsZhul5WsYEM4Zcgh2Ev15VicMdJmPHsMhNUsZWyVJV0CaQCYpNOFlGD/11Ea3pn4GA==", + "dev": true, + "dependencies": { + "@graphql-codegen/plugin-helpers": "^5.0.3", + "@graphql-tools/optimize": "^2.0.0", + "@graphql-tools/relay-operation-optimizer": "^7.0.0", + "@graphql-tools/utils": "^10.0.0", + "auto-bind": "~4.0.0", + "change-case-all": "1.0.15", + "dependency-graph": "^0.11.0", + "graphql-tag": "^2.11.0", + "parse-filepath": "^1.0.2", + "tslib": "~2.6.0" + }, + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + } }, "node_modules/@graphql-codegen/visitor-plugin-common": { "version": "4.0.1", @@ -5810,26 +5793,6 @@ "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==" }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==" - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==" - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==" - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==" - }, "node_modules/@types/accepts": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.7.tgz", @@ -6209,9 +6172,9 @@ "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" }, "node_modules/@types/semver": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz", - "integrity": "sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==", + "version": "7.5.7", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.7.tgz", + "integrity": "sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg==", "dev": true }, "node_modules/@types/send": { @@ -6260,9 +6223,9 @@ "dev": true }, "node_modules/@types/validator": { - "version": "13.11.8", - "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.8.tgz", - "integrity": "sha512-c/hzNDBh7eRF+KbCf+OoZxKbnkpaK/cKp9iLQWqB7muXtM+MtL9SUUH8vCFcLn6dH1Qm05jiexK0ofWY7TfOhQ==", + "version": "13.11.9", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.9.tgz", + "integrity": "sha512-FCTsikRozryfayPuiI46QzH3fnrOoctTjvOYZkho9BTFLCOZ2rgZJHMOVgCOfttjPJcgOx52EpkY0CMfy87MIw==", "dev": true }, "node_modules/@types/ws": { @@ -6287,32 +6250,33 @@ "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", - "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", "dev": true, "dependencies": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/type-utils": "5.62.0", - "@typescript-eslint/utils": "5.62.0", + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", "debug": "^4.3.4", "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -6320,6 +6284,53 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -6348,25 +6359,26 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", - "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.20.0.tgz", + "integrity": "sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/scope-manager": "6.20.0", + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/typescript-estree": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0", "debug": "^4.3.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -6375,16 +6387,16 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.20.0.tgz", + "integrity": "sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -6392,25 +6404,66 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", - "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.62.0", - "@typescript-eslint/utils": "5.62.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", "debug": "^4.3.4", - "tsutils": "^3.21.0" + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "*" + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependenciesMeta": { "typescript": { @@ -6418,13 +6471,81 @@ } } }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.20.0.tgz", + "integrity": "sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ==", "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -6432,21 +6553,22 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.20.0.tgz", + "integrity": "sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -6458,6 +6580,15 @@ } } }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -6470,6 +6601,21 @@ "node": ">=10" } }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -6486,29 +6632,112 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" } }, "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { @@ -6523,10 +6752,25 @@ "node": ">=10" } }, + "node_modules/@typescript-eslint/utils/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -6539,16 +6783,16 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.20.0.tgz", + "integrity": "sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" + "@typescript-eslint/types": "6.20.0", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -6675,6 +6919,7 @@ "version": "8.11.3", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, "bin": { "acorn": "bin/acorn" }, @@ -6691,14 +6936,6 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/agent-base": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", @@ -6833,11 +7070,6 @@ "node": ">= 8" } }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" - }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -8234,11 +8466,6 @@ "node": ">=10" } }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" - }, "node_modules/croner": { "version": "4.1.97", "resolved": "https://registry.npmjs.org/croner/-/croner-4.1.97.tgz", @@ -8329,9 +8556,9 @@ "integrity": "sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g==" }, "node_modules/date-fns": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.3.0.tgz", - "integrity": "sha512-xuouT0GuI2W8yXhCMn/AXbSl1Av3wu2hJXxMnnILTY3bYY0UgNK0qOwVXqdFBrobW5qbX1TuOTgMw7c2H2OuhA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.3.1.tgz", + "integrity": "sha512-y8e109LYGgoQDveiEBD3DYXKba1jWf5BA8YU1FL5Tvm0BTdEfy54WLCwnuYWZNnzzvALy/QQ4Hov+Q9RVRv+Zw==", "funding": { "type": "github", "url": "https://github.com/sponsors/kossnocorp" @@ -8518,14 +8745,6 @@ "node": ">=0.8.0" } }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -9366,19 +9585,6 @@ "@microsoft/tsdoc-config": "0.16.2" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/eslint-visitor-keys": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", @@ -9526,15 +9732,6 @@ "node": ">=4.0" } }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -11133,12 +11330,12 @@ } }, "node_modules/husky": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/husky/-/husky-9.0.6.tgz", - "integrity": "sha512-EEuw/rfTiMjOfuL7pGO/i9otg1u36TXxqjIA6D9qxVjd/UXoDOsLor/BSFf5hTK50shwzCU3aVVwdXDp/lp7RA==", + "version": "9.0.10", + "resolved": "https://registry.npmjs.org/husky/-/husky-9.0.10.tgz", + "integrity": "sha512-TQGNknoiy6bURzIO77pPRu+XHi6zI7T93rX+QnJsoYFf3xdjKOur+IlfqzJGMHIK/wXrLg+GsvMs8Op7vI2jVA==", "dev": true, "bin": { - "husky": "bin.js" + "husky": "bin.mjs" }, "engines": { "node": ">=18" @@ -12220,9 +12417,9 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "node_modules/lint-staged": { - "version": "15.2.0", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.0.tgz", - "integrity": "sha512-TFZzUEV00f+2YLaVPWBWGAMq7So6yQx+GG8YRMDeOEIf95Zn5RyiLMsEiX4KTNl9vq/w+NqRJkLA1kPIo15ufQ==", + "version": "15.2.2", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.2.tgz", + "integrity": "sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw==", "dev": true, "dependencies": { "chalk": "5.3.0", @@ -12230,7 +12427,7 @@ "debug": "4.3.4", "execa": "8.0.1", "lilconfig": "3.0.0", - "listr2": "8.0.0", + "listr2": "8.0.1", "micromatch": "4.0.5", "pidtree": "0.6.0", "string-argv": "0.3.2", @@ -12347,9 +12544,9 @@ } }, "node_modules/lint-staged/node_modules/listr2": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.0.0.tgz", - "integrity": "sha512-u8cusxAcyqAiQ2RhYvV7kRKNLgUvtObIbhOX2NCXqvp1UU32xIg5CT22ykS2TPKJXZWJwtK3IKLiqAGlGNE+Zg==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.0.1.tgz", + "integrity": "sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==", "dev": true, "dependencies": { "cli-truncate": "^4.0.0", @@ -12470,9 +12667,9 @@ } }, "node_modules/lint-staged/node_modules/string-width": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.0.0.tgz", - "integrity": "sha512-GPQHj7row82Hjo9hKZieKcHIhaAIKOJvFSIZXuCU9OASVZrMNUaZuz++SPVrBjnLsnk4k+z9f2EIypgxf2vNFw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", + "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", "dev": true, "dependencies": { "emoji-regex": "^10.3.0", @@ -12906,11 +13103,6 @@ "node": ">=10" } }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" - }, "node_modules/make-plural": { "version": "7.3.0", "resolved": "https://registry.npmjs.org/make-plural/-/make-plural-7.3.0.tgz", @@ -13371,9 +13563,9 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.5.tgz", + "integrity": "sha512-/Veqm+QKsyMY3kqi4faWplnY1u+VuKO3dD2binyPIybP31DRO29bPF+1mszgLnrR2KqSLceFLBNw0zmvDzN1QQ==", "funding": [ { "type": "github", @@ -13381,10 +13573,10 @@ } ], "bin": { - "nanoid": "bin/nanoid.cjs" + "nanoid": "bin/nanoid.js" }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": "^18 || >=20" } }, "node_modules/natural-compare": { @@ -13393,12 +13585,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, "node_modules/needle": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", @@ -13490,9 +13676,9 @@ "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" }, "node_modules/nodemailer": { - "version": "6.9.8", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.8.tgz", - "integrity": "sha512-cfrYUk16e67Ks051i4CntM9kshRYei1/o/Gi8K1d+R34OIs21xdFnW7Pt7EucmVKA0LKtqUGNcjMZ7ehjl49mQ==", + "version": "6.9.9", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.9.tgz", + "integrity": "sha512-dexTll8zqQoVJEZPwQAKzxxtFn0qTnjdQTchoU6Re9BUUGBJiOy3YMn/0ShTW6J5M0dfQ1NeDeRTTl4oIWgQMA==", "engines": { "node": ">=6.0.0" } @@ -14338,6 +14524,24 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss/node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -14348,15 +14552,15 @@ } }, "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", "dev": true, "bin": { - "prettier": "bin-prettier.js" + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">=10.13.0" + "node": ">=14" }, "funding": { "url": "https://github.com/prettier/prettier?sponsor=1" @@ -15098,6 +15302,14 @@ "fsevents": "~2.3.2" } }, + "node_modules/rrule": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/rrule/-/rrule-2.8.1.tgz", + "integrity": "sha512-hM3dHSBMeaJ0Ktp7W38BJZ7O1zOgaFEsn41PDk+yHoEtfLV+PoJt9E9xAlZiWgf/iqEqionN0ebHFZIDAp+iGw==", + "dependencies": { + "tslib": "^2.4.0" + } + }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -16159,54 +16371,24 @@ "node": ">= 14.0.0" } }, - "node_modules/ts-log": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/ts-log/-/ts-log-2.2.5.tgz", - "integrity": "sha512-PGcnJoTBnVGy6yYNFxWVNkdcAuAMstvutN9MgDJIV6L0oG8fB+ZNNy1T+wJzah8RPGor1mZuPQkVfXNDpy9eHA==", - "dev": true - }, - "node_modules/ts-node": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } + "node_modules/ts-api-utils": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", + "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", + "dev": true, + "engines": { + "node": ">=16.13.0" + }, + "peerDependencies": { + "typescript": ">=4.2.0" } }, + "node_modules/ts-log": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/ts-log/-/ts-log-2.2.5.tgz", + "integrity": "sha512-PGcnJoTBnVGy6yYNFxWVNkdcAuAMstvutN9MgDJIV6L0oG8fB+ZNNy1T+wJzah8RPGor1mZuPQkVfXNDpy9eHA==", + "dev": true + }, "node_modules/tsconfig-paths": { "version": "3.15.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", @@ -16236,27 +16418,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, "node_modules/tsx": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.0.tgz", @@ -16680,11 +16841,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" - }, "node_modules/v8-to-istanbul": { "version": "9.2.0", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", @@ -17295,14 +17451,6 @@ "node": ">=12" } }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "engines": { - "node": ">=6" - } - }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", @@ -18327,25 +18475,6 @@ "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", "optional": true }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "requires": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - } - } - }, "@cwasm/webp": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/@cwasm/webp/-/webp-0.1.5.tgz", @@ -19073,9 +19202,9 @@ } }, "@graphql-codegen/plugin-helpers": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-5.0.1.tgz", - "integrity": "sha512-6L5sb9D8wptZhnhLLBcheSPU7Tg//DGWgc5tQBWX46KYTOTQHGqDpv50FxAJJOyFVJrveN9otWk9UT9/yfY4ww==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-5.0.3.tgz", + "integrity": "sha512-yZ1rpULIWKBZqCDlvGIJRSyj1B2utkEdGmXZTBT/GVayP4hyRYlkd36AJV/LfEsVD8dnsKL5rLz2VTYmRNlJ5Q==", "dev": true, "requires": { "@graphql-tools/utils": "^10.0.0", @@ -19083,54 +19212,50 @@ "common-tags": "1.8.2", "import-from": "4.0.0", "lodash": "~4.17.0", - "tslib": "~2.5.0" - }, - "dependencies": { - "tslib": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", - "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==", - "dev": true - } + "tslib": "~2.6.0" } }, "@graphql-codegen/schema-ast": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@graphql-codegen/schema-ast/-/schema-ast-4.0.0.tgz", - "integrity": "sha512-WIzkJFa9Gz28FITAPILbt+7A8+yzOyd1NxgwFh7ie+EmO9a5zQK6UQ3U/BviirguXCYnn+AR4dXsoDrSrtRA1g==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/schema-ast/-/schema-ast-4.0.2.tgz", + "integrity": "sha512-5mVAOQQK3Oz7EtMl/l3vOQdc2aYClUzVDHHkMvZlunc+KlGgl81j8TLa+X7ANIllqU4fUEsQU3lJmk4hXP6K7Q==", "dev": true, "requires": { - "@graphql-codegen/plugin-helpers": "^5.0.0", + "@graphql-codegen/plugin-helpers": "^5.0.3", "@graphql-tools/utils": "^10.0.0", - "tslib": "~2.5.0" - }, - "dependencies": { - "tslib": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", - "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==", - "dev": true - } + "tslib": "~2.6.0" } }, "@graphql-codegen/typescript": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-4.0.1.tgz", - "integrity": "sha512-3YziQ21dCVdnHb+Us1uDb3pA6eG5Chjv0uTK+bt9dXeMlwYBU8MbtzvQTo4qvzWVC1AxSOKj0rgfNu1xCXqJyA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-4.0.4.tgz", + "integrity": "sha512-x79CKLfP9UQCX+/I78qxQlMs2Mmq3pF1lKafZo7lAno0f/fvJ+qWUduzdgjRNz+YL+5blGeWcC0pWEDxniO7hw==", "dev": true, "requires": { - "@graphql-codegen/plugin-helpers": "^5.0.0", - "@graphql-codegen/schema-ast": "^4.0.0", - "@graphql-codegen/visitor-plugin-common": "4.0.1", + "@graphql-codegen/plugin-helpers": "^5.0.3", + "@graphql-codegen/schema-ast": "^4.0.2", + "@graphql-codegen/visitor-plugin-common": "4.1.2", "auto-bind": "~4.0.0", - "tslib": "~2.5.0" + "tslib": "~2.6.0" }, "dependencies": { - "tslib": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz", - "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==", - "dev": true + "@graphql-codegen/visitor-plugin-common": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-4.1.2.tgz", + "integrity": "sha512-yk7iEAL1kYZ2Gi/pvVjdsZhul5WsYEM4Zcgh2Ev15VicMdJmPHsMhNUsZWyVJV0CaQCYpNOFlGD/11Ea3pn4GA==", + "dev": true, + "requires": { + "@graphql-codegen/plugin-helpers": "^5.0.3", + "@graphql-tools/optimize": "^2.0.0", + "@graphql-tools/relay-operation-optimizer": "^7.0.0", + "@graphql-tools/utils": "^10.0.0", + "auto-bind": "~4.0.0", + "change-case-all": "1.0.15", + "dependency-graph": "^0.11.0", + "graphql-tag": "^2.11.0", + "parse-filepath": "^1.0.2", + "tslib": "~2.6.0" + } } } }, @@ -21369,26 +21494,6 @@ "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==" }, - "@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==" - }, - "@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==" - }, - "@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==" - }, - "@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==" - }, "@types/accepts": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.7.tgz", @@ -21765,9 +21870,9 @@ "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==" }, "@types/semver": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz", - "integrity": "sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==", + "version": "7.5.7", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.7.tgz", + "integrity": "sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg==", "dev": true }, "@types/send": { @@ -21816,9 +21921,9 @@ "dev": true }, "@types/validator": { - "version": "13.11.8", - "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.8.tgz", - "integrity": "sha512-c/hzNDBh7eRF+KbCf+OoZxKbnkpaK/cKp9iLQWqB7muXtM+MtL9SUUH8vCFcLn6dH1Qm05jiexK0ofWY7TfOhQ==", + "version": "13.11.9", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.9.tgz", + "integrity": "sha512-FCTsikRozryfayPuiI46QzH3fnrOoctTjvOYZkho9BTFLCOZ2rgZJHMOVgCOfttjPJcgOx52EpkY0CMfy87MIw==", "dev": true }, "@types/ws": { @@ -21843,23 +21948,50 @@ "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==" }, "@typescript-eslint/eslint-plugin": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", - "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", "dev": true, "requires": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/type-utils": "5.62.0", - "@typescript-eslint/utils": "5.62.0", + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", "debug": "^4.3.4", "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + } + }, + "@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true + }, + "@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + } + }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -21881,60 +22013,141 @@ } }, "@typescript-eslint/parser": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", - "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.20.0.tgz", + "integrity": "sha512-bYerPDF/H5v6V76MdMYhjwmwgMA+jlPVqjSDq2cRqMi8bP5sR3Z+RLOiOMad3nsnmDVmn2gAFCyNgh/dIrfP/w==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/scope-manager": "6.20.0", + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/typescript-estree": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.20.0.tgz", + "integrity": "sha512-p4rvHQRDTI1tGGMDFQm+GtxP1ZHyAh64WANVoyEcNMpaTFn3ox/3CcgtIlELnRfKzSs/DwYlDccJEtr3O6qBvA==", "dev": true, "requires": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0" } }, "@typescript-eslint/type-utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", - "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "5.62.0", - "@typescript-eslint/utils": "5.62.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", "debug": "^4.3.4", - "tsutils": "^3.21.0" + "ts-api-utils": "^1.0.1" + }, + "dependencies": { + "@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + } + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } } }, "@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.20.0.tgz", + "integrity": "sha512-MM9mfZMAhiN4cOEcUOEx+0HmuaW3WBfukBZPCfwSqFnQy0grXYtngKCqpQN339X3RrwtzspWJrpbrupKYUSBXQ==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.20.0.tgz", + "integrity": "sha512-RnRya9q5m6YYSpBN7IzKu9FmLcYtErkDkc8/dKv81I9QiLLtVBHrjz+Ev/crAqgMNW2FCsoZF4g2QUylMnJz+g==", "dev": true, "requires": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", + "@typescript-eslint/types": "6.20.0", + "@typescript-eslint/visitor-keys": "6.20.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -21944,6 +22157,15 @@ "yallist": "^4.0.0" } }, + "minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, "semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -21956,21 +22178,71 @@ } }, "@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", "dev": true, "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" }, "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + } + }, + "@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + } + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -21980,10 +22252,19 @@ "yallist": "^4.0.0" } }, + "minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -21992,13 +22273,13 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.20.0.tgz", + "integrity": "sha512-E8Cp98kRe4gKHjJD4NExXKz/zOJ1A2hhZc+IMVD6i7w4yjIvh6VyuRI0gRtxAsXtoC35uGMaQ9rjI2zJaXDEAw==", "dev": true, "requires": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" + "@typescript-eslint/types": "6.20.0", + "eslint-visitor-keys": "^3.4.1" } }, "@ungap/structured-clone": { @@ -22103,7 +22384,8 @@ "acorn": { "version": "8.11.3", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==" + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true }, "acorn-jsx": { "version": "5.3.2", @@ -22112,11 +22394,6 @@ "dev": true, "requires": {} }, - "acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==" - }, "agent-base": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", @@ -22214,11 +22491,6 @@ "picomatch": "^2.0.4" } }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" - }, "argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -23278,11 +23550,6 @@ "yaml": "^1.10.0" } }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" - }, "croner": { "version": "4.1.97", "resolved": "https://registry.npmjs.org/croner/-/croner-4.1.97.tgz", @@ -23352,9 +23619,9 @@ "integrity": "sha512-8YnDaaf7N3k/q5HnTJVuzSyLETjoZjVmHc4AeKAzOvKHEFQKcn64OKBfzHYtE9zGjctNM7V9I0MfnUVLpi7M5g==" }, "date-fns": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.3.0.tgz", - "integrity": "sha512-xuouT0GuI2W8yXhCMn/AXbSl1Av3wu2hJXxMnnILTY3bYY0UgNK0qOwVXqdFBrobW5qbX1TuOTgMw7c2H2OuhA==" + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.3.1.tgz", + "integrity": "sha512-y8e109LYGgoQDveiEBD3DYXKba1jWf5BA8YU1FL5Tvm0BTdEfy54WLCwnuYWZNnzzvALy/QQ4Hov+Q9RVRv+Zw==" }, "dayjs": { "version": "1.11.10", @@ -23483,11 +23750,6 @@ "resolved": "https://registry.npmjs.org/diacritics-map/-/diacritics-map-0.1.0.tgz", "integrity": "sha512-3omnDTYrGigU0i4cJjvaKwD52B8aoqyX/NEIkukFFkogBemsIbhSa1O414fpTp5nuszJG6lvQ5vBvDVNCbSsaQ==" }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" - }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -24099,16 +24361,6 @@ "@microsoft/tsdoc-config": "0.16.2" } }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, "eslint-visitor-keys": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", @@ -24165,12 +24417,6 @@ } } }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -25361,9 +25607,9 @@ "dev": true }, "husky": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/husky/-/husky-9.0.6.tgz", - "integrity": "sha512-EEuw/rfTiMjOfuL7pGO/i9otg1u36TXxqjIA6D9qxVjd/UXoDOsLor/BSFf5hTK50shwzCU3aVVwdXDp/lp7RA==", + "version": "9.0.10", + "resolved": "https://registry.npmjs.org/husky/-/husky-9.0.10.tgz", + "integrity": "sha512-TQGNknoiy6bURzIO77pPRu+XHi6zI7T93rX+QnJsoYFf3xdjKOur+IlfqzJGMHIK/wXrLg+GsvMs8Op7vI2jVA==", "dev": true }, "i18n": { @@ -26153,9 +26399,9 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "lint-staged": { - "version": "15.2.0", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.0.tgz", - "integrity": "sha512-TFZzUEV00f+2YLaVPWBWGAMq7So6yQx+GG8YRMDeOEIf95Zn5RyiLMsEiX4KTNl9vq/w+NqRJkLA1kPIo15ufQ==", + "version": "15.2.2", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.2.tgz", + "integrity": "sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw==", "dev": true, "requires": { "chalk": "5.3.0", @@ -26163,7 +26409,7 @@ "debug": "4.3.4", "execa": "8.0.1", "lilconfig": "3.0.0", - "listr2": "8.0.0", + "listr2": "8.0.1", "micromatch": "4.0.5", "pidtree": "0.6.0", "string-argv": "0.3.2", @@ -26229,9 +26475,9 @@ "dev": true }, "listr2": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.0.0.tgz", - "integrity": "sha512-u8cusxAcyqAiQ2RhYvV7kRKNLgUvtObIbhOX2NCXqvp1UU32xIg5CT22ykS2TPKJXZWJwtK3IKLiqAGlGNE+Zg==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.0.1.tgz", + "integrity": "sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==", "dev": true, "requires": { "cli-truncate": "^4.0.0", @@ -26312,9 +26558,9 @@ } }, "string-width": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.0.0.tgz", - "integrity": "sha512-GPQHj7row82Hjo9hKZieKcHIhaAIKOJvFSIZXuCU9OASVZrMNUaZuz++SPVrBjnLsnk4k+z9f2EIypgxf2vNFw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", + "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", "dev": true, "requires": { "emoji-regex": "^10.3.0", @@ -26644,11 +26890,6 @@ } } }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" - }, "make-plural": { "version": "7.3.0", "resolved": "https://registry.npmjs.org/make-plural/-/make-plural-7.3.0.tgz", @@ -26977,9 +27218,9 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, "nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==" + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.5.tgz", + "integrity": "sha512-/Veqm+QKsyMY3kqi4faWplnY1u+VuKO3dD2binyPIybP31DRO29bPF+1mszgLnrR2KqSLceFLBNw0zmvDzN1QQ==" }, "natural-compare": { "version": "1.4.0", @@ -26987,12 +27228,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, "needle": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz", @@ -27063,9 +27298,9 @@ "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" }, "nodemailer": { - "version": "6.9.8", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.8.tgz", - "integrity": "sha512-cfrYUk16e67Ks051i4CntM9kshRYei1/o/Gi8K1d+R34OIs21xdFnW7Pt7EucmVKA0LKtqUGNcjMZ7ehjl49mQ==" + "version": "6.9.9", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.9.tgz", + "integrity": "sha512-dexTll8zqQoVJEZPwQAKzxxtFn0qTnjdQTchoU6Re9BUUGBJiOy3YMn/0ShTW6J5M0dfQ1NeDeRTTl4oIWgQMA==" }, "normalize-path": { "version": "3.0.0", @@ -27679,6 +27914,14 @@ "nanoid": "^3.3.7", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" + }, + "dependencies": { + "nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true + } } }, "prelude-ls": { @@ -27688,9 +27931,9 @@ "dev": true }, "prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", "dev": true }, "process-nextick-args": { @@ -28249,6 +28492,14 @@ "fsevents": "~2.3.2" } }, + "rrule": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/rrule/-/rrule-2.8.1.tgz", + "integrity": "sha512-hM3dHSBMeaJ0Ktp7W38BJZ7O1zOgaFEsn41PDk+yHoEtfLV+PoJt9E9xAlZiWgf/iqEqionN0ebHFZIDAp+iGw==", + "requires": { + "tslib": "^2.4.0" + } + }, "run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -29057,32 +29308,19 @@ "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==" }, + "ts-api-utils": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", + "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", + "dev": true, + "requires": {} + }, "ts-log": { "version": "2.2.5", "resolved": "https://registry.npmjs.org/ts-log/-/ts-log-2.2.5.tgz", "integrity": "sha512-PGcnJoTBnVGy6yYNFxWVNkdcAuAMstvutN9MgDJIV6L0oG8fB+ZNNy1T+wJzah8RPGor1mZuPQkVfXNDpy9eHA==", "dev": true }, - "ts-node": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "requires": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - } - }, "tsconfig-paths": { "version": "3.15.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", @@ -29111,23 +29349,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, - "tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, "tsx": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.7.0.tgz", @@ -29412,11 +29633,6 @@ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==" }, - "v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" - }, "v8-to-istanbul": { "version": "9.2.0", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", @@ -29843,11 +30059,6 @@ "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" - }, "yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 7bbc0d1f22..a0a9519ff6 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "generate:graphql-markdown": "graphql-markdown http://localhost:4000/graphql > docs/Schema.md", "generate:graphql-schema": "get-graphql-schema http://localhost:4000/graphql --json > docs/schema.json", "generate:ssl-private-key": "openssl genrsa -out ./key.pem", - "import:sample-data": "ts-node ./src/utilities/loadSampleData.ts", + "import:sample-data": "tsx ./src/utilities/loadSampleData.ts", "import:sample-data:prod": "node ./build/utilities/loadSampleData.js", "gen:schema": "graphql-inspector introspect ./src/typeDefs/**/**/*.ts --write ./schema.graphql ", "update:toc": "node scripts/githooks/update-toc.js" @@ -58,7 +58,7 @@ "copy-paste": "^1.5.3", "cors": "^2.8.5", "cross-env": "^7.0.3", - "date-fns": "^3.3.0", + "date-fns": "^3.3.1", "dotenv": "^16.4.1", "express": "^4.18.2", "express-mongo-sanitize": "^2.2.0", @@ -82,12 +82,12 @@ "mongoose": "^5.13.21", "mongoose-paginate-v2": "^1.7.0", "morgan": "^1.10.0", - "nanoid": "^3.3.7", - "nodemailer": "^6.9.8", + "nanoid": "^5.0.5", + "nodemailer": "^6.9.9", "pm2": "^5.2.0", "redis": "^4.6.12", + "rrule": "^2.8.1", "shortid": "^2.2.16", - "ts-node": "^10.9.2", "typedoc-plugin-markdown": "^3.17.1", "uuid": "^9.0.0", "validator": "^13.7.0", @@ -99,9 +99,9 @@ }, "devDependencies": { "@graphql-codegen/cli": "^5.0.0", - "@graphql-codegen/typescript": "^4.0.1", + "@graphql-codegen/typescript": "^4.0.4", "@graphql-codegen/typescript-resolvers": "^4.0.1", - "@graphql-eslint/eslint-plugin": "^3.12.0", + "@graphql-eslint/eslint-plugin": "^3.20.1", "@types/bcryptjs": "^2.4.6", "@types/cls-hooked": "^4.3.8", "@types/copy-paste": "^1.1.30", @@ -119,9 +119,9 @@ "@types/nodemailer": "^6.4.14", "@types/shortid": "^0.0.32", "@types/uuid": "^9.0.7", - "@types/validator": "^13.11.7", - "@typescript-eslint/eslint-plugin": "^5.42.0", - "@typescript-eslint/parser": "^5.42.0", + "@types/validator": "^13.11.9", + "@typescript-eslint/eslint-plugin": "^6.21.0", + "@typescript-eslint/parser": "^6.20.0", "@vitest/coverage-c8": "^0.24.3", "concurrently": "^8.2.2", "eslint": "^8.56.0", @@ -131,8 +131,8 @@ "get-graphql-schema": "^2.1.2", "graphql-markdown": "^7.0.0", "husky": "^9.0.6", - "lint-staged": "^15.2.0", - "prettier": "^2.7.1", + "lint-staged": "^15.2.2", + "prettier": "3.2.5", "rimraf": "^5.0.5", "tsx": "^4.7.0", "typescript": "^5.3.2", diff --git a/sample_data/events.json b/sample_data/events.json index 16c73e4456..d460b566ad 100644 --- a/sample_data/events.json +++ b/sample_data/events.json @@ -1,34 +1,5336 @@ [ { + "_comment": "Registration not required", + "_id": "65915090c06a8200409b77d6", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659156622caa9d8d6908754b", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659156682caa9d8d6908754c", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Yoga class for seniors", + "description": "Join our soothing Yoga Class for Seniors, a gentle journey promoting flexibility, balance, and mindfulness, tailored to enhance well-being in a serene environment.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T10:00:00.000Z", + "endTime": "2024-01-01T11:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "6591567b2caa9d8d6908754d", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659156852caa9d8d6908754e", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Book of the Week Club", + "description": "Embrace literary exploration with our 'Book of the Week Club.' Join fellow readers in lively discussions, discovering captivating stories and expanding horizons every week.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T14:00:00.000Z", + "endTime": "2024-01-01T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659157cb2caa9d8d6908754f", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659158082caa9d8d69087550", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659158292caa9d8d69087551", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T18:00:00.000Z", + "endTime": "2024-01-02T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659158942caa9d8d69087552", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659159cf2caa9d8d69087553", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659158082caa9d8d69087554", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659158292caa9d8d69087555", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T18:00:00.000Z", + "endTime": "2024-01-03T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659158292caa9d8d69087556", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Art Class - Advanced", + "description": "Unleash your creativity in our Art Class. Explore diverse mediums, express yourself, and nurture artistic skills in a supportive and inspiring environment.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T10:00:00.000Z", + "endTime": "2024-01-03T11:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool back", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659158942caa9d8d69087557", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916a6e2caa9d8d69087559", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916a732caa9d8d6908755a", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916a8a2caa9d8d6908755b", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Kids karate", + "description": "Empower young minds with Kids Karate. Our program blends discipline, fitness, and fun, fostering confidence and instilling valuable life skills through martial arts training.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T18:00:00.000Z", + "endTime": "2024-01-04T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916a8a2caa9d8d6908755c", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Art Class - Begineers", + "description": "Unleash your creativity in our Art Class. Explore diverse mediums, express yourself, and nurture artistic skills in a supportive and inspiring environment.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T16:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916a982caa9d8d6908755d", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916b2d2caa9d8d6908755e", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916b382caa9d8d6908755f", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916b462caa9d8d69087560", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Neighborhood Watch Meeting", + "description": "Join our Neighborhood Watch Meeting for a safer community. Collaborate on security strategies, share concerns, and strengthen bonds to ensure a secure and vigilant neighborhood.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T18:00:00.000Z", + "endTime": "2024-01-05T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916b4f2caa9d8d69087561", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916ca92caa9d8d69087562", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "So Bad They’re Good Movie Night", + "description": "Indulge in hilariously entertaining cinema at our 'So Bad They're Good Movie Night.' Join the laughter as we screen delightfully cheesy films for a night of ironic enjoyment.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T19:00:00.000Z", + "endTime": "2024-01-06T21:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Main Theatre", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916cfa2caa9d8d69087563", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-07T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-07T18:00:00.000Z", + "endTime": "2024-01-07T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "65916f152caa9d8d69087564", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087565", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087566", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Yoga class for seniors", + "description": "Join our soothing Yoga Class for Seniors, a gentle journey promoting flexibility, balance, and mindfulness, tailored to enhance well-being in a serene environment.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T10:00:00.000Z", + "endTime": "2024-01-01T11:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087567", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087568", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Book of the Week Club", + "description": "Embrace literary exploration with our 'Book of the Week Club.' Join fellow readers in lively discussions, discovering captivating stories and expanding horizons every week.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T14:00:00.000Z", + "endTime": "2024-01-01T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087569", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172ae2caa9d8d6908756a", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172ae2caa9d8d6908756b", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T18:00:00.000Z", + "endTime": "2024-01-02T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172ae2caa9d8d6908756c", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172ae2caa9d8d6908756d", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172ae2caa9d8d6908756e", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172db2caa9d8d6908756f", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T18:00:00.000Z", + "endTime": "2024-01-03T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087570", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Art Class - Advanced", + "description": "Unleash your creativity in our Art Class. Explore diverse mediums, express yourself, and nurture artistic skills in a supportive and inspiring environment.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T10:00:00.000Z", + "endTime": "2024-01-03T11:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool back", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087571", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087572", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087573", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087574", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Kids karate", + "description": "Empower young minds with Kids Karate. Our program blends discipline, fitness, and fun, fostering confidence and instilling valuable life skills through martial arts training.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T18:00:00.000Z", + "endTime": "2024-01-04T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087575", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Art Class - Begineers", + "description": "Unleash your creativity in our Art Class. Explore diverse mediums, express yourself, and nurture artistic skills in a supportive and inspiring environment.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T16:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087576", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087577", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087578", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d69087579", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Neighborhood Watch Meeting", + "description": "Join our Neighborhood Watch Meeting for a safer community. Collaborate on security strategies, share concerns, and strengthen bonds to ensure a secure and vigilant neighborhood.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T18:00:00.000Z", + "endTime": "2024-01-05T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d6908757a", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d6908757b", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "So Bad They’re Good Movie Night", + "description": "Indulge in hilariously entertaining cinema at our 'So Bad They're Good Movie Night.' Join the laughter as we screen delightfully cheesy films for a night of ironic enjoyment.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T19:00:00.000Z", + "endTime": "2024-01-06T21:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Main Theatre", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d6908757c", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["65378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-07T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-07T18:00:00.000Z", + "endTime": "2024-01-07T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d6908757d", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d6908757e", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172e82caa9d8d6908757f", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Yoga class for seniors", + "description": "Join our soothing Yoga Class for Seniors, a gentle journey promoting flexibility, balance, and mindfulness, tailored to enhance well-being in a serene environment.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T10:00:00.000Z", + "endTime": "2024-01-01T11:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087580", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087581", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Book of the Week Club", + "description": "Embrace literary exploration with our 'Book of the Week Club.' Join fellow readers in lively discussions, discovering captivating stories and expanding horizons every week.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T14:00:00.000Z", + "endTime": "2024-01-01T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087582", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087583", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087584", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T18:00:00.000Z", + "endTime": "2024-01-02T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087585", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087586", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087587", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087588", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T18:00:00.000Z", + "endTime": "2024-01-03T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087589", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Art Class - Advanced", + "description": "Unleash your creativity in our Art Class. Explore diverse mediums, express yourself, and nurture artistic skills in a supportive and inspiring environment.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T10:00:00.000Z", + "endTime": "2024-01-03T11:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool back", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908758a", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908758b", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908758c", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908758d", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Kids karate", + "description": "Empower young minds with Kids Karate. Our program blends discipline, fitness, and fun, fostering confidence and instilling valuable life skills through martial arts training.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T18:00:00.000Z", + "endTime": "2024-01-04T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908758e", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Art Class - Begineers", + "description": "Unleash your creativity in our Art Class. Explore diverse mediums, express yourself, and nurture artistic skills in a supportive and inspiring environment.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T16:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908758f", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087590", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087591", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087592", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Neighborhood Watch Meeting", + "description": "Join our Neighborhood Watch Meeting for a safer community. Collaborate on security strategies, share concerns, and strengthen bonds to ensure a secure and vigilant neighborhood.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T18:00:00.000Z", + "endTime": "2024-01-05T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087593", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087594", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "So Bad They’re Good Movie Night", + "description": "Indulge in hilariously entertaining cinema at our 'So Bad They're Good Movie Night.' Join the laughter as we screen delightfully cheesy films for a night of ironic enjoyment.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T19:00:00.000Z", + "endTime": "2024-01-06T21:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Main Theatre", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087595", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["66378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-07T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-07T18:00:00.000Z", + "endTime": "2024-01-07T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087596", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087597", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087598", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Yoga class for seniors", + "description": "Join our soothing Yoga Class for Seniors, a gentle journey promoting flexibility, balance, and mindfulness, tailored to enhance well-being in a serene environment.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T10:00:00.000Z", + "endTime": "2024-01-01T11:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d69087599", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T06:00:00.000Z", + "endTime": "2024-01-01T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908759a", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Book of the Week Club", + "description": "Embrace literary exploration with our 'Book of the Week Club.' Join fellow readers in lively discussions, discovering captivating stories and expanding horizons every week.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T14:00:00.000Z", + "endTime": "2024-01-01T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908759b", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908759c", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908759d", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T18:00:00.000Z", + "endTime": "2024-01-02T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908759e", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T06:00:00.000Z", + "endTime": "2024-01-02T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d6908759f", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a0", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a1", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T18:00:00.000Z", + "endTime": "2024-01-03T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a2", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Art Class - Advanced", + "description": "Unleash your creativity in our Art Class. Explore diverse mediums, express yourself, and nurture artistic skills in a supportive and inspiring environment.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T10:00:00.000Z", + "endTime": "2024-01-03T11:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool back", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a3", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T06:00:00.000Z", + "endTime": "2024-01-03T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a4", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a5", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a6", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Kids karate", + "description": "Empower young minds with Kids Karate. Our program blends discipline, fitness, and fun, fostering confidence and instilling valuable life skills through martial arts training.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T18:00:00.000Z", + "endTime": "2024-01-04T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a7", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Art Class - Begineers", + "description": "Unleash your creativity in our Art Class. Explore diverse mediums, express yourself, and nurture artistic skills in a supportive and inspiring environment.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T16:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a8", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T06:00:00.000Z", + "endTime": "2024-01-04T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875a9", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Aerobics for everyone", + "description": "Energize your body and spirit with 'Aerobics for Everyone.' Join the vibrant workout, suitable for all fitness levels, fostering health and joy in a dynamic community.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio A", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875aa", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Early Morning Pilates", + "description": "Revitalize your morning with Early Morning Pilates—an invigorating blend of mindful movements, core strengthening, and tranquil surroundings for a balanced start to your day.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T07:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Studio B", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ab", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Neighborhood Watch Meeting", + "description": "Join our Neighborhood Watch Meeting for a safer community. Collaborate on security strategies, share concerns, and strengthen bonds to ensure a secure and vigilant neighborhood.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T18:00:00.000Z", + "endTime": "2024-01-05T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ac", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Lap Swimming", + "description": "Dive into fitness with Lap Swimming—a refreshing aquatic workout promoting endurance, strength, and relaxation in the invigorating embrace of the pool.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T06:00:00.000Z", + "endTime": "2024-01-05T15:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ad", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "So Bad They’re Good Movie Night", + "description": "Indulge in hilariously entertaining cinema at our 'So Bad They're Good Movie Night.' Join the laughter as we screen delightfully cheesy films for a night of ironic enjoyment.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T19:00:00.000Z", + "endTime": "2024-01-06T21:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Main Theatre", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ae", + "recurring": true, + "recurrance": "WEEKLY", + "admins": ["67378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-07T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-07T18:00:00.000Z", + "endTime": "2024-01-07T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": false, + "location": "Atlantic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_comment": "Registration required", "_id": "6437907585008f171cf2994c", "recurring": true, - "recurrance": "ONCE", - "admins": ["64378abd85008f171cf2990d"], - "tasks": [], + "recurrance": "WEEKLY", + "admins": ["64378abd85008f171cf2990d"], + "tasks": [], + "status": "ACTIVE", + "title": "Children Day Celebration", + "description": "There would be a children day celebration at the town hall. The refreshments would be distributed, and several speakers are invited to deliver a impactful session.", + "startDate": "2023-04-13T00:00:00.000Z", + "endDate": "2023-05-13T00:00:00.000Z", + "startTime": null, + "endTime": null, + "allDay": true, + "isPublic": true, + "isRegisterable": true, + "location": "Port Antonio", + "creatorId": "64378abd85008f171cf2990d", + "createdAt": "2023-04-13T05:17:41.327Z", + "updatedAt": "2023-04-13T05:17:41.327Z", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "64378abd85008f171cf2990d", + "user": "64378abd85008f171cf2990d", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875af", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Swimming Lessons", + "description": "Dive into skill development with Youth Swimming Lessons! Our program offers a safe and fun environment, teaching essential swimming techniques and water safety to young enthusiasts.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T15:00:00.000Z", + "endTime": "2024-01-01T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b0", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Finance Committee Meeting", + "description": "Participate in our Finance Committee Meeting for strategic financial planning. Join the discussion on budgets, investments, and fiscal matters to contribute to the financial health of our organization.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T17:00:00.000Z", + "endTime": "2024-01-01T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b1", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Risk Committee Meeting", + "description": "Engage in our Risk Committee Meeting to assess and mitigate potential risks. Collaborate on proactive strategies and ensure the resilience and stability of our organization.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T18:00:00.000Z", + "endTime": "2024-01-01T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b2", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Adult Swimming Lessons", + "description": "Dive into confidence with Adult Swimming Lessons. Our program provides a supportive environment for all skill levels, fostering water proficiency and a safe, enjoyable swimming experience.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T15:00:00.000Z", + "endTime": "2024-01-02T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b3", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Conference Planning Committee", + "description": "Be a key player in our Conference Planning Committee. Join the collaboration to organize, innovate, and ensure the success of upcoming conferences for a seamless and impactful event.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T17:00:00.000Z", + "endTime": "2024-01-02T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b4", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Organization Strategy Workshop", + "description": "Participate in our Organization Strategy Workshop. Explore vision, goals, and collaborative planning to strengthen our collective impact and drive success in a dynamic and forward-thinking session.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T18:00:00.000Z", + "endTime": "2024-01-02T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b5", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Swimming Lessons", + "description": "Dive into skill development with Youth Swimming Lessons! Our program offers a safe and fun environment, teaching essential swimming techniques and water safety to young enthusiasts.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T15:00:00.000Z", + "endTime": "2024-01-03T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b6", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Families With Addiction", + "description": "Support and connect with Families With Addiction. Our group provides a compassionate space for sharing experiences, resources, and encouragement on the challenging journey of navigating addiction within the family.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T17:00:00.000Z", + "endTime": "2024-01-03T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b7", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Investment Strategy Committee", + "description": "Contribute to financial success by joining our Investment Strategy Committee. Collaborate on smart investment decisions, risk management, and market analysis to enhance the overall financial health of our organization.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T18:00:00.000Z", + "endTime": "2024-01-03T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b8", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Adult Swimming Lessons", + "description": "Dive into confidence with Adult Swimming Lessons. Our program provides a supportive environment for all skill levels, fostering water proficiency and a safe, enjoyable swimming experience.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875b9", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Programming for Everyone", + "description": "Dive into the world of coding with 'Programming for Everyone.' Explore diverse languages and concepts, fostering inclusivity and skill development in a supportive learning environment.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Computer Lab", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ba", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "University Preparation Tips", + "description": "Unlock academic success with University Preparation Tips. Navigate the college application process, refine study skills, and embrace personal growth for a smooth transition to university life.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T17:00:00.000Z", + "endTime": "2024-01-04T20:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875bb", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Career Counseling", + "description": "Discover your path with Career Counseling. Personalized guidance, skills assessment, and goal-setting to empower informed career decisions and navigate a fulfilling professional journey.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T15:00:00.000Z", + "endTime": "2024-01-05T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875bc", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Saturday Serenade Concert", + "description": "Experience musical enchantment at our Saturday Serenade Concert. Join us for an evening of captivating performances, creating a harmonious blend of melodies to elevate your weekend.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T17:00:00.000Z", + "endTime": "2024-01-06T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Garden Patio", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875bd", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Soccer Lessons", + "description": "Score skills and fun with Youth Soccer Lessons! Our program focuses on fundamentals, teamwork, and a love for the game, creating a dynamic and inclusive environment for young enthusiasts.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T09:00:00.000Z", + "endTime": "2024-01-06T10:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Sports Field", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875be", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "64378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-07T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-07T18:00:00.000Z", + "endTime": "2024-01-07T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Atlantic Conference Room", + "creatorId": "64378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6437904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875bf", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Swimming Lessons", + "description": "Dive into skill development with Youth Swimming Lessons! Our program offers a safe and fun environment, teaching essential swimming techniques and water safety to young enthusiasts.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T15:00:00.000Z", + "endTime": "2024-01-01T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c0", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Finance Committee Meeting", + "description": "Participate in our Finance Committee Meeting for strategic financial planning. Join the discussion on budgets, investments, and fiscal matters to contribute to the financial health of our organization.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T17:00:00.000Z", + "endTime": "2024-01-01T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c1", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Risk Committee Meeting", + "description": "Engage in our Risk Committee Meeting to assess and mitigate potential risks. Collaborate on proactive strategies and ensure the resilience and stability of our organization.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T18:00:00.000Z", + "endTime": "2024-01-01T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c2", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Adult Swimming Lessons", + "description": "Dive into confidence with Adult Swimming Lessons. Our program provides a supportive environment for all skill levels, fostering water proficiency and a safe, enjoyable swimming experience.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T15:00:00.000Z", + "endTime": "2024-01-02T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c3", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Conference Planning Committee", + "description": "Be a key player in our Conference Planning Committee. Join the collaboration to organize, innovate, and ensure the success of upcoming conferences for a seamless and impactful event.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T17:00:00.000Z", + "endTime": "2024-01-02T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c4", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Organization Strategy Workshop", + "description": "Participate in our Organization Strategy Workshop. Explore vision, goals, and collaborative planning to strengthen our collective impact and drive success in a dynamic and forward-thinking session.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T18:00:00.000Z", + "endTime": "2024-01-02T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c5", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Swimming Lessons", + "description": "Dive into skill development with Youth Swimming Lessons! Our program offers a safe and fun environment, teaching essential swimming techniques and water safety to young enthusiasts.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T15:00:00.000Z", + "endTime": "2024-01-03T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c6", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Families With Addiction", + "description": "Support and connect with Families With Addiction. Our group provides a compassionate space for sharing experiences, resources, and encouragement on the challenging journey of navigating addiction within the family.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T17:00:00.000Z", + "endTime": "2024-01-03T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c7", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Investment Strategy Committee", + "description": "Contribute to financial success by joining our Investment Strategy Committee. Collaborate on smart investment decisions, risk management, and market analysis to enhance the overall financial health of our organization.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T18:00:00.000Z", + "endTime": "2024-01-03T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c8", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Adult Swimming Lessons", + "description": "Dive into confidence with Adult Swimming Lessons. Our program provides a supportive environment for all skill levels, fostering water proficiency and a safe, enjoyable swimming experience.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875c9", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Programming for Everyone", + "description": "Dive into the world of coding with 'Programming for Everyone.' Explore diverse languages and concepts, fostering inclusivity and skill development in a supportive learning environment.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Computer Lab", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ca", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "University Preparation Tips", + "description": "Unlock academic success with University Preparation Tips. Navigate the college application process, refine study skills, and embrace personal growth for a smooth transition to university life.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T17:00:00.000Z", + "endTime": "2024-01-04T20:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875cb", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Career Counseling", + "description": "Discover your path with Career Counseling. Personalized guidance, skills assessment, and goal-setting to empower informed career decisions and navigate a fulfilling professional journey.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T15:00:00.000Z", + "endTime": "2024-01-05T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875cc", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Saturday Serenade Concert", + "description": "Experience musical enchantment at our Saturday Serenade Concert. Join us for an evening of captivating performances, creating a harmonious blend of melodies to elevate your weekend.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T17:00:00.000Z", + "endTime": "2024-01-06T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Garden Patio", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875cd", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Soccer Lessons", + "description": "Score skills and fun with Youth Soccer Lessons! Our program focuses on fundamentals, teamwork, and a love for the game, creating a dynamic and inclusive environment for young enthusiasts.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T09:00:00.000Z", + "endTime": "2024-01-06T10:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Sports Field", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ce", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "65378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-07T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-07T18:00:00.000Z", + "endTime": "2024-01-07T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Atlantic Conference Room", + "creatorId": "65378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6537904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875cf", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Swimming Lessons", + "description": "Dive into skill development with Youth Swimming Lessons! Our program offers a safe and fun environment, teaching essential swimming techniques and water safety to young enthusiasts.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T15:00:00.000Z", + "endTime": "2024-01-01T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d0", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Finance Committee Meeting", + "description": "Participate in our Finance Committee Meeting for strategic financial planning. Join the discussion on budgets, investments, and fiscal matters to contribute to the financial health of our organization.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T17:00:00.000Z", + "endTime": "2024-01-01T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d1", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Risk Committee Meeting", + "description": "Engage in our Risk Committee Meeting to assess and mitigate potential risks. Collaborate on proactive strategies and ensure the resilience and stability of our organization.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T18:00:00.000Z", + "endTime": "2024-01-01T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d2", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Adult Swimming Lessons", + "description": "Dive into confidence with Adult Swimming Lessons. Our program provides a supportive environment for all skill levels, fostering water proficiency and a safe, enjoyable swimming experience.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T15:00:00.000Z", + "endTime": "2024-01-02T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d3", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Conference Planning Committee", + "description": "Be a key player in our Conference Planning Committee. Join the collaboration to organize, innovate, and ensure the success of upcoming conferences for a seamless and impactful event.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T17:00:00.000Z", + "endTime": "2024-01-02T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d4", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Organization Strategy Workshop", + "description": "Participate in our Organization Strategy Workshop. Explore vision, goals, and collaborative planning to strengthen our collective impact and drive success in a dynamic and forward-thinking session.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T18:00:00.000Z", + "endTime": "2024-01-02T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d5", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Swimming Lessons", + "description": "Dive into skill development with Youth Swimming Lessons! Our program offers a safe and fun environment, teaching essential swimming techniques and water safety to young enthusiasts.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T15:00:00.000Z", + "endTime": "2024-01-03T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d6", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Families With Addiction", + "description": "Support and connect with Families With Addiction. Our group provides a compassionate space for sharing experiences, resources, and encouragement on the challenging journey of navigating addiction within the family.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T17:00:00.000Z", + "endTime": "2024-01-03T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d7", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Investment Strategy Committee", + "description": "Contribute to financial success by joining our Investment Strategy Committee. Collaborate on smart investment decisions, risk management, and market analysis to enhance the overall financial health of our organization.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T18:00:00.000Z", + "endTime": "2024-01-03T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d8", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Adult Swimming Lessons", + "description": "Dive into confidence with Adult Swimming Lessons. Our program provides a supportive environment for all skill levels, fostering water proficiency and a safe, enjoyable swimming experience.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875d9", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Programming for Everyone", + "description": "Dive into the world of coding with 'Programming for Everyone.' Explore diverse languages and concepts, fostering inclusivity and skill development in a supportive learning environment.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Computer Lab", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875da", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "University Preparation Tips", + "description": "Unlock academic success with University Preparation Tips. Navigate the college application process, refine study skills, and embrace personal growth for a smooth transition to university life.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T17:00:00.000Z", + "endTime": "2024-01-04T20:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875db", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Career Counseling", + "description": "Discover your path with Career Counseling. Personalized guidance, skills assessment, and goal-setting to empower informed career decisions and navigate a fulfilling professional journey.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T15:00:00.000Z", + "endTime": "2024-01-05T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875dc", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Saturday Serenade Concert", + "description": "Experience musical enchantment at our Saturday Serenade Concert. Join us for an evening of captivating performances, creating a harmonious blend of melodies to elevate your weekend.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T17:00:00.000Z", + "endTime": "2024-01-06T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Garden Patio", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875dd", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Soccer Lessons", + "description": "Score skills and fun with Youth Soccer Lessons! Our program focuses on fundamentals, teamwork, and a love for the game, creating a dynamic and inclusive environment for young enthusiasts.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T09:00:00.000Z", + "endTime": "2024-01-06T10:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Sports Field", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875de", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "66378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-07T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-07T18:00:00.000Z", + "endTime": "2024-01-07T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Atlantic Conference Room", + "creatorId": "66378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6637904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875df", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Swimming Lessons", + "description": "Dive into skill development with Youth Swimming Lessons! Our program offers a safe and fun environment, teaching essential swimming techniques and water safety to young enthusiasts.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T15:00:00.000Z", + "endTime": "2024-01-01T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e0", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Finance Committee Meeting", + "description": "Participate in our Finance Committee Meeting for strategic financial planning. Join the discussion on budgets, investments, and fiscal matters to contribute to the financial health of our organization.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T17:00:00.000Z", + "endTime": "2024-01-01T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e1", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Risk Committee Meeting", + "description": "Engage in our Risk Committee Meeting to assess and mitigate potential risks. Collaborate on proactive strategies and ensure the resilience and stability of our organization.", + "startDate": "2024-01-01T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-01T18:00:00.000Z", + "endTime": "2024-01-01T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e2", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Adult Swimming Lessons", + "description": "Dive into confidence with Adult Swimming Lessons. Our program provides a supportive environment for all skill levels, fostering water proficiency and a safe, enjoyable swimming experience.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T15:00:00.000Z", + "endTime": "2024-01-02T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e3", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Conference Planning Committee", + "description": "Be a key player in our Conference Planning Committee. Join the collaboration to organize, innovate, and ensure the success of upcoming conferences for a seamless and impactful event.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T17:00:00.000Z", + "endTime": "2024-01-02T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e4", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Organization Strategy Workshop", + "description": "Participate in our Organization Strategy Workshop. Explore vision, goals, and collaborative planning to strengthen our collective impact and drive success in a dynamic and forward-thinking session.", + "startDate": "2024-01-02T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-02T18:00:00.000Z", + "endTime": "2024-01-02T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e5", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", "status": "ACTIVE", - "title": "Children Day Celebration", - "description": "There would be a children day celebration at the town hall. The refreshments would be distributed, and several speakers are invited to deliver a impactful session.", - "startDate": "2023-04-13T00:00:00.000Z", - "endDate": "2023-04-13T00:00:00.000Z", - "startTime": null, - "endTime": null, - "allDay": true, + "title": "Youth Swimming Lessons", + "description": "Dive into skill development with Youth Swimming Lessons! Our program offers a safe and fun environment, teaching essential swimming techniques and water safety to young enthusiasts.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T15:00:00.000Z", + "endTime": "2024-01-03T17:00:00.000Z", + "allDay": false, "isPublic": true, "isRegisterable": true, - "location": "Port Antonio", - "creatorId": "64378abd85008f171cf2990d", - "createdAt": "2023-04-13T05:17:41.327Z", - "updatedAt": "2023-04-13T05:17:41.327Z", + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", "registrants": [ { "status": "ACTIVE", "_id": "6437907585008f171cf2994d", - "userId": "64378abd85008f171cf2990d", - "user": "64378abd85008f171cf2990d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", "createdAt": "2023-04-13T05:17:41.327Z" } ], - "organization": "6437904485008f171cf29924", + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e6", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Families With Addiction", + "description": "Support and connect with Families With Addiction. Our group provides a compassionate space for sharing experiences, resources, and encouragement on the challenging journey of navigating addiction within the family.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T17:00:00.000Z", + "endTime": "2024-01-03T18:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658930fd2caa9d8d6908745c", + "user": "658930fd2caa9d8d6908745c", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589386a2caa9d8d69087484", + "user": "6589386a2caa9d8d69087484", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589387e2caa9d8d69087485", + "user": "6589387e2caa9d8d69087485", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589388b2caa9d8d69087486", + "user": "6589388b2caa9d8d69087486", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e7", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Investment Strategy Committee", + "description": "Contribute to financial success by joining our Investment Strategy Committee. Collaborate on smart investment decisions, risk management, and market analysis to enhance the overall financial health of our organization.", + "startDate": "2024-01-03T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-03T18:00:00.000Z", + "endTime": "2024-01-03T19:30:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e8", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Adult Swimming Lessons", + "description": "Dive into confidence with Adult Swimming Lessons. Our program provides a supportive environment for all skill levels, fostering water proficiency and a safe, enjoyable swimming experience.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pool", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875e9", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Programming for Everyone", + "description": "Dive into the world of coding with 'Programming for Everyone.' Explore diverse languages and concepts, fostering inclusivity and skill development in a supportive learning environment.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T15:00:00.000Z", + "endTime": "2024-01-04T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Computer Lab", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ea", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "University Preparation Tips", + "description": "Unlock academic success with University Preparation Tips. Navigate the college application process, refine study skills, and embrace personal growth for a smooth transition to university life.", + "startDate": "2024-01-04T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-04T17:00:00.000Z", + "endTime": "2024-01-04T20:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Arctic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875eb", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Career Counseling", + "description": "Discover your path with Career Counseling. Personalized guidance, skills assessment, and goal-setting to empower informed career decisions and navigate a fulfilling professional journey.", + "startDate": "2024-01-05T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-05T15:00:00.000Z", + "endTime": "2024-01-05T17:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Pacific Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ec", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Saturday Serenade Concert", + "description": "Experience musical enchantment at our Saturday Serenade Concert. Join us for an evening of captivating performances, creating a harmonious blend of melodies to elevate your weekend.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T17:00:00.000Z", + "endTime": "2024-01-06T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Garden Patio", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ed", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Youth Soccer Lessons", + "description": "Score skills and fun with Youth Soccer Lessons! Our program focuses on fundamentals, teamwork, and a love for the game, creating a dynamic and inclusive environment for young enthusiasts.", + "startDate": "2024-01-06T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-06T09:00:00.000Z", + "endTime": "2024-01-06T10:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Sports Field", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", + "__v": 0 + }, + { + "_id": "659172742caa9d8d690875ee", + "recurring": true, + "recurrance": "WEEKLY", + "admins": "67378abd85008f171cf2990d", + "status": "ACTIVE", + "title": "Travel Club", + "description": "Embark on exciting journeys with our Travel Club. Explore diverse destinations, share experiences, and build lasting connections in a community passionate about wanderlust.", + "startDate": "2024-01-07T00:00:00.000Z", + "endDate": "2024-12-31T00:00:00.000Z", + "startTime": "2024-01-07T18:00:00.000Z", + "endTime": "2024-01-07T19:00:00.000Z", + "allDay": false, + "isPublic": true, + "isRegisterable": true, + "location": "Atlantic Conference Room", + "creatorId": "67378abd85008f171cf2990d", + "registrants": [ + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "6589389d2caa9d8d69087487", + "user": "6589389d2caa9d8d69087487", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938a62caa9d8d69087488", + "user": "658938a62caa9d8d69087488", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938b02caa9d8d69087489", + "user": "658938b02caa9d8d69087489", + "createdAt": "2023-04-13T05:17:41.327Z" + }, + { + "status": "ACTIVE", + "_id": "6437907585008f171cf2994d", + "userId": "658938ba2caa9d8d6908748a", + "user": "658938ba2caa9d8d6908748a", + "createdAt": "2023-04-13T05:17:41.327Z" + } + ], + "organization": "6737904485008f171cf29924", "__v": 0 } ] diff --git a/sample_data/organizations.json b/sample_data/organizations.json index f57ceab8bb..a368c046d1 100644 --- a/sample_data/organizations.json +++ b/sample_data/organizations.json @@ -2,24 +2,34 @@ { "_id": "6437904485008f171cf29924", "status": "ACTIVE", - "members": ["64378abd85008f171cf2990d"], + "members": [ + "64378abd85008f171cf2990d", + "658930fd2caa9d8d6908745c", + "6589386a2caa9d8d69087484", + "6589387e2caa9d8d69087485", + "6589388b2caa9d8d69087486", + "6589389d2caa9d8d69087487", + "658938a62caa9d8d69087488", + "658938b02caa9d8d69087489", + "658938ba2caa9d8d6908748a" + ], "admins": ["64378abd85008f171cf2990d"], "groupChats": [], "posts": [], "pinnedPosts": [], "membershipRequests": [], "blockedUsers": [], - "name": "The Unity Foundation", + "name": "Unity Foundation", "description": "A foundation aimed at uniting the world and making it a better place for all.", "address": { - "city": "Delhi", - "countryCode": "IN", + "city": "Bronx", + "countryCode": "US", "dependentLocality": "Some Dependent Locality", "line1": "123 Random Street", "line2": "Apartment 456", - "postalCode": "110001", + "postalCode": "10451", "sortingCode": "ABC-123", - "state": "Delhi" + "state": "NYC" }, "userRegistrationRequired": false, "visibleInSearch": true, @@ -35,7 +45,15 @@ "65378abd85008f171cf2990d", "67378abd85008f171cf2991d", "67378abd85008f171cf2992d", - "67378abd85008f171cf2993d" + "67378abd85008f171cf2993d", + "658930fd2caa9d8d6908745c", + "6589386a2caa9d8d69087484", + "6589387e2caa9d8d69087485", + "6589388b2caa9d8d69087486", + "6589389d2caa9d8d69087487", + "658938a62caa9d8d69087488", + "658938b02caa9d8d69087489", + "658938ba2caa9d8d6908748a" ], "admins": ["65378abd85008f171cf2990d"], "groupChats": [], @@ -43,17 +61,17 @@ "pinnedPosts": [], "membershipRequests": [], "blockedUsers": [], - "name": "Angel Foundation", + "name": "Unity Foundation", "description": "We are aimed at improving the education spaces for the under privileged girl child.", "address": { - "city": "Kolkata", - "countryCode": "IN", + "city": "Queens", + "countryCode": "US", "dependentLocality": "Some Dependent Locality", - "line1": "line1", - "line2": "line2", - "postalCode": "711205", - "sortingCode": "ABC-124", - "state": "West Bengal" + "line1": "123 Coffee Street", + "line2": "Apartment 501", + "postalCode": "11427", + "sortingCode": "ABC-133", + "state": "NYC" }, "userRegistrationRequired": false, "visibleInSearch": true, @@ -65,24 +83,34 @@ { "_id": "6637904485008f171cf29924", "status": "ACTIVE", - "members": ["66378abd85008f171cf2990d"], + "members": [ + "66378abd85008f171cf2990d", + "658930fd2caa9d8d6908745c", + "6589386a2caa9d8d69087484", + "6589387e2caa9d8d69087485", + "6589388b2caa9d8d69087486", + "6589389d2caa9d8d69087487", + "658938a62caa9d8d69087488", + "658938b02caa9d8d69087489", + "658938ba2caa9d8d6908748a" + ], "admins": ["66378abd85008f171cf2990d"], "groupChats": [], "posts": [], "pinnedPosts": [], "membershipRequests": [], "blockedUsers": [], - "name": "Hope Foundation", + "name": "Unity Foundation", "description": "A place where money and power doesn't matter. Free legal aid to everyone.", "address": { - "city": "Mountain View", + "city": "Staten Island", "countryCode": "US", "dependentLocality": "Some Dependent Locality", - "line1": "123 Main Street", - "line2": "Apt 456", - "postalCode": "94040", - "sortingCode": "XYZ-789", - "state": "CA" + "line1": "123 church Street", + "line2": "Apartment 499", + "postalCode": "10301", + "sortingCode": "ABC-122", + "state": "NYC" }, "userRegistrationRequired": false, "visibleInSearch": true, @@ -94,14 +122,24 @@ { "_id": "6737904485008f171cf29924", "status": "ACTIVE", - "members": ["67378abd85008f171cf2990d"], + "members": [ + "67378abd85008f171cf2990d", + "658930fd2caa9d8d6908745c", + "6589386a2caa9d8d69087484", + "6589387e2caa9d8d69087485", + "6589388b2caa9d8d69087486", + "6589389d2caa9d8d69087487", + "658938a62caa9d8d69087488", + "658938b02caa9d8d69087489", + "658938ba2caa9d8d6908748a" + ], "admins": ["67378abd85008f171cf2990d"], "groupChats": [], "posts": [], "pinnedPosts": [], "membershipRequests": [], "blockedUsers": [], - "name": "Dignity Foundation", + "name": "Unity Foundation", "description": "A foundation aimed at improving the lives of old age citizens.", "address": { "city": "Brooklyn", @@ -109,7 +147,7 @@ "dependentLocality": "Sample Dependent Locality", "line1": "123 Main Street", "line2": "Apt 456", - "postalCode": "11234", + "postalCode": "10004", "sortingCode": "ABC-789", "state": "NY" }, diff --git a/sample_data/posts.json b/sample_data/posts.json index 1164ef3716..d2cec657a4 100644 --- a/sample_data/posts.json +++ b/sample_data/posts.json @@ -15,5 +15,277 @@ "createdAt": "2023-04-13T05:17:14.396Z", "updatedAt": "2023-04-13T05:17:14.396Z", "__v": 0 + }, + { + "_id": "6589bb6d2caa9d8d69087505", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Daring climb up majestic peaks, crisp mountain air, breathtaking vistas—adventure awaits with every step, an adrenaline-filled journey.", + "title": "Thrilling Mountain Expedition", + "creatorId": "658930fd2caa9d8d6908745c", + "organization": "6437904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd3c2caa9d8d69087507", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Tranquil seas, sun's descent paints hues of serenity. A moment of pure bliss, waves whispering a peaceful lullaby.", + "title": "Sunset Serenity by the Sea", + "creatorId": "658930fd2caa9d8d6908745c", + "organization": "6537904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd492caa9d8d69087508", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Deep into lush rainforest, vibrant flora, exotic creatures create a magical ambiance—nature's enchantment revealed in every step.", + "title": "Enchanting Rainforest Discovery", + "creatorId": "6589386a2caa9d8d69087484", + "organization": "6437904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd5f2caa9d8d69087509", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Crafting coffee as art, each cup tells a unique story through carefully selected beans, brewing techniques—a sip of creativity.", + "title": "Artistic Coffee Moments", + "creatorId": "6589386a2caa9d8d69087484", + "organization": "6537904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd6a2caa9d8d6908750a", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Roaming city streets, lights come alive, capturing vibrant urban energy—each corner holds a story, a cityscape adventure unfolds.", + "title": "Urban Exploration: City Lights", + "creatorId": "6589387e2caa9d8d69087485", + "organization": "6437904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd742caa9d8d6908750b", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Solace by a lakeside, soothing sounds of nature, gentle lapping water—tranquility found in the embrace of serene waters.\n", + "title": "Tranquil Lakeside Retreat", + "creatorId": "6589387e2caa9d8d69087485", + "organization": "6537904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd7f2caa9d8d6908750c", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Soaring above clouds in a hot air balloon, world seen from a breathtaking perspective—sky-high adventure, a journey to remember.", + "title": "Aerial Adventures: Hot Air Balloon Ride", + "creatorId": "6589388b2caa9d8d69087486", + "organization": "6437904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd892caa9d8d6908750d", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Navigating dusty shelves, discovering hidden gems in quaint bookstores—a haven for literary enthusiasts, where stories come alive.", + "title": "Literary Escapade in Old Bookstores", + "creatorId": "6589388b2caa9d8d69087486", + "organization": "6537904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd912caa9d8d6908750e", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Exploring seaside towns, indulging in fresh seafood—each dish a delectable journey through local coastal flavors, a culinary escapade.", + "title": "Coastal Culinary Delights", + "creatorId": "6589389d2caa9d8d69087487", + "organization": "6437904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bd9b2caa9d8d6908750f", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Camping beneath desert sky, towering sand dunes, celestial display of stars—starry nights in a desert oasis, a magical experience.", + "title": "Desert Oasis: Sand Dunes and Starry Nights", + "creatorId": "6589389d2caa9d8d69087487", + "organization": "6537904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bda42caa9d8d69087510", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Roaming vibrant neighborhoods adorned with captivating street art—each mural tells a unique story, an urban canvas filled with creativity.", + "title": "Street Art Extravaganza", + "creatorId": "658938a62caa9d8d69087488", + "organization": "6437904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bdae2caa9d8d69087511", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Unwinding in a cozy mountain cabin, surrounded by snow-capped peaks and the crisp scent of pine—mountain retreat, pure relaxation.", + "title": "Mountain Cabin Getaway", + "creatorId": "658938a62caa9d8d69087488", + "organization": "6537904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bdb72caa9d8d69087512", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Exploring mesmerizing underwater world, encountering coral reefs, fascinating marine life—deep-sea diving, a journey into underwater wonders.", + "title": "Deep Sea Diving: Underwater Wonders", + "creatorId": "658938b02caa9d8d69087489", + "organization": "6437904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bdc42caa9d8d69087513", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Walking through ancient ruins, a journey through time—weathered remnants of civilizations, archaeological wonders, history unfolding.", + "title": "Historical Treasures: Ancient Ruins", + "creatorId": "658938b02caa9d8d69087489", + "organization": "6537904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bdce2caa9d8d69087514", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Sampling diverse global cuisines, a gastronomic adventure transcending borders—tantalizing taste buds, a journey of culinary fusion.", + "title": "Culinary Fusion: Global Flavors", + "creatorId": "658938ba2caa9d8d6908748a", + "organization": "6437904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 + }, + { + "_id": "6589bdd92caa9d8d69087515", + "status": "ACTIVE", + "likedBy": [], + "comments": [], + "likeCount": 0, + "commentCount": 0, + "pinned": false, + "text": "Gliding gracefully on frozen lakes, surrounded by enchanting winter landscape—ice skating extravaganza, a dance in a winter wonderland.", + "title": "Winter Wonderland: Ice Skating Extravaganza", + "creatorId": "658938ba2caa9d8d6908748a", + "organization": "6537904485008f171cf29924", + "imageUrl": null, + "createdAt": "2023-04-13T05:17:14.396Z", + "updatedAt": "2023-04-13T05:17:14.396Z", + "__v": 0 } ] diff --git a/sample_data/userFamilies.json b/sample_data/userFamilies.json new file mode 100644 index 0000000000..b936f13366 --- /dev/null +++ b/sample_data/userFamilies.json @@ -0,0 +1,20 @@ +[ + { + "_id": "60f18f31b7e5c4a2a4c3f905", + "title": "Smith Family", + "users": [ + "64378abd85008f171cf2990d", + "65378abd85008f171cf2990d", + "66378abd85008f171cf2990d" + ] + }, + { + "_id": "60f18f31b7e5c4a2a4c3f906", + "title": "Johnson Family", + "users": [ + "66378abd85008f171cf2990d", + "65378abd85008f171cf2990d", + "64378abd85008f171cf2990d" + ] + } +] diff --git a/sample_data/users.json b/sample_data/users.json index d3fa89a564..8e79ee9f71 100644 --- a/sample_data/users.json +++ b/sample_data/users.json @@ -166,5 +166,237 @@ "image": null, "createdAt": "2023-04-13T04:53:17.742Z", "__v": 0 + }, + { + "_id": "658930fd2caa9d8d6908745c", + "tokenVersion": 0, + "appLanguageCode": "en", + "createdOrganizations": [], + "createdEvents": [], + "userType": "USER", + "joinedOrganizations": [ + "6537904485008f171cf29924", + "6637904485008f171cf29924", + "6737904485008f171cf29924", + "6437904485008f171cf29924" + ], + "registeredEvents": [], + "eventAdmin": [], + "adminFor": [], + "membershipRequests": [], + "organizationsBlockedBy": [], + "status": "ACTIVE", + "pluginCreationAllowed": true, + "adminApproved": false, + "firstName": "Teresa", + "lastName": "Bradley", + "email": "testuser4@example.com", + "password": "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", + "image": null, + "createdAt": "2023-04-13T04:53:17.742Z", + "__v": 0 + }, + { + "_id": "6589386a2caa9d8d69087484", + "tokenVersion": 0, + "appLanguageCode": "en", + "createdOrganizations": [], + "createdEvents": [], + "userType": "USER", + "joinedOrganizations": [ + "6537904485008f171cf29924", + "6637904485008f171cf29924", + "6737904485008f171cf29924", + "6437904485008f171cf29924" + ], + "registeredEvents": [], + "eventAdmin": [], + "adminFor": [], + "membershipRequests": [], + "organizationsBlockedBy": [], + "status": "ACTIVE", + "pluginCreationAllowed": true, + "adminApproved": false, + "firstName": "Bruce", + "lastName": "Garza", + "email": "testuser5@example.com", + "password": "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", + "image": null, + "createdAt": "2023-04-13T04:53:17.742Z", + "__v": 0 + }, + { + "_id": "6589387e2caa9d8d69087485", + "tokenVersion": 0, + "appLanguageCode": "en", + "createdOrganizations": [], + "createdEvents": [], + "userType": "USER", + "joinedOrganizations": [ + "6537904485008f171cf29924", + "6637904485008f171cf29924", + "6737904485008f171cf29924", + "6437904485008f171cf29924" + ], + "registeredEvents": [], + "eventAdmin": [], + "adminFor": [], + "membershipRequests": [], + "organizationsBlockedBy": [], + "status": "ACTIVE", + "pluginCreationAllowed": true, + "adminApproved": false, + "firstName": "Burton", + "lastName": "Sanders", + "email": "testuser6@example.com", + "password": "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", + "image": null, + "createdAt": "2023-04-13T04:53:17.742Z", + "__v": 0 + }, + { + "_id": "6589388b2caa9d8d69087486", + "tokenVersion": 0, + "appLanguageCode": "en", + "createdOrganizations": [], + "createdEvents": [], + "userType": "USER", + "joinedOrganizations": [ + "6537904485008f171cf29924", + "6637904485008f171cf29924", + "6737904485008f171cf29924", + "6437904485008f171cf29924" + ], + "registeredEvents": [], + "eventAdmin": [], + "adminFor": [], + "membershipRequests": [], + "organizationsBlockedBy": [], + "status": "ACTIVE", + "pluginCreationAllowed": true, + "adminApproved": false, + "firstName": "Jeramy", + "lastName": "Garcia", + "email": "testuser7@example.com", + "password": "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", + "image": null, + "createdAt": "2023-04-13T04:53:17.742Z", + "__v": 0 + }, + { + "_id": "6589389d2caa9d8d69087487", + "tokenVersion": 0, + "appLanguageCode": "en", + "createdOrganizations": [], + "createdEvents": [], + "userType": "USER", + "joinedOrganizations": [ + "6537904485008f171cf29924", + "6637904485008f171cf29924", + "6737904485008f171cf29924", + "6437904485008f171cf29924" + ], + "registeredEvents": [], + "eventAdmin": [], + "adminFor": [], + "membershipRequests": [], + "organizationsBlockedBy": [], + "status": "ACTIVE", + "pluginCreationAllowed": true, + "adminApproved": false, + "firstName": "Deanne", + "lastName": "Marks", + "email": "testuser8@example.com", + "password": "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", + "image": null, + "createdAt": "2023-04-13T04:53:17.742Z", + "__v": 0 + }, + { + "_id": "658938a62caa9d8d69087488", + "tokenVersion": 0, + "appLanguageCode": "en", + "createdOrganizations": [], + "createdEvents": [], + "userType": "USER", + "joinedOrganizations": [ + "6537904485008f171cf29924", + "6637904485008f171cf29924", + "6737904485008f171cf29924", + "6437904485008f171cf29924" + ], + "registeredEvents": [], + "eventAdmin": [], + "adminFor": [], + "membershipRequests": [], + "organizationsBlockedBy": [], + "status": "ACTIVE", + "pluginCreationAllowed": true, + "adminApproved": false, + "firstName": "Romeo", + "lastName": "Holland", + "email": "testuser9@example.com", + "password": "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", + "image": null, + "createdAt": "2023-04-13T04:53:17.742Z", + "__v": 0 + }, + { + "_id": "658938b02caa9d8d69087489", + "tokenVersion": 0, + "appLanguageCode": "en", + "createdOrganizations": [], + "createdEvents": [], + "userType": "USER", + "joinedOrganizations": [ + "6537904485008f171cf29924", + "6637904485008f171cf29924", + "6737904485008f171cf29924", + "6437904485008f171cf29924" + ], + "registeredEvents": [], + "eventAdmin": [], + "adminFor": [], + "membershipRequests": [], + "organizationsBlockedBy": [], + "status": "ACTIVE", + "pluginCreationAllowed": true, + "adminApproved": false, + "firstName": "Carla", + "lastName": "Nguyen", + "email": "testuser10@example.com", + "password": "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", + "image": null, + "createdAt": "2023-04-13T04:53:17.742Z", + "__v": 0 + }, + { + "_id": "658938ba2caa9d8d6908748a", + "tokenVersion": 0, + "appLanguageCode": "en", + "createdOrganizations": [], + "createdEvents": [], + "userType": "USER", + "joinedOrganizations": [ + "6537904485008f171cf29924", + "6637904485008f171cf29924", + "6737904485008f171cf29924", + "6437904485008f171cf29924" + ], + "registeredEvents": [], + "eventAdmin": [], + "adminFor": [], + "membershipRequests": [], + "organizationsBlockedBy": [], + "status": "ACTIVE", + "pluginCreationAllowed": true, + "adminApproved": false, + "firstName": "Peggy", + "lastName": "Bowers", + "email": "testuser11@example.com", + "password": "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", + "image": null, + "createdAt": "2023-04-13T04:53:17.742Z", + "__v": 0 } ] diff --git a/schema.graphql b/schema.graphql index 8ea527723c..0eb8d44bd4 100644 --- a/schema.graphql +++ b/schema.graphql @@ -70,6 +70,17 @@ enum AdvertisementType { POPUP } +type AgendaCategory { + _id: ID! + createdAt: Date! + createdBy: User! + description: String + name: String! + organization: Organization! + updatedAt: Date + updatedBy: User +} + type AggregatePost { count: Int! } @@ -144,6 +155,12 @@ input CreateActionItemInput { preCompletionNotes: String } +input CreateAgendaCategoryInput { + description: String + name: String! + organizationId: ID! +} + input CreateUserTagInput { name: String! organizationId: ID! @@ -253,7 +270,7 @@ type Event { createdAt: DateTime! creator: User description: String! - endDate: Date! + endDate: Date endTime: Time feedback: [Feedback!]! isPublic: Boolean! @@ -317,6 +334,28 @@ enum EventOrderByInput { title_DESC } +type EventVolunteer { + _id: ID! + createdAt: DateTime! + creator: User + event: Event + isAssigned: Boolean + isInvited: Boolean + response: String + updatedAt: DateTime! + user: User! +} + +input EventVolunteerInput { + eventId: ID! + userId: ID! +} + +enum EventVolunteerResponse { + NO + YES +} + input EventWhereInput { description: String description_contains: String @@ -376,6 +415,13 @@ input ForgotPasswordData { userOtp: String! } +enum Frequency { + DAILY + MONTHLY + WEEKLY + YEARLY +} + enum Gender { FEMALE MALE @@ -521,6 +567,7 @@ type Mutation { addUserCustomData(dataName: String!, dataValue: Any!, organizationId: ID!): UserCustomData! addUserImage(file: String!): User! addUserToGroupChat(chatId: ID!, userId: ID!): GroupChat! + addUserToUserFamily(familyId: ID!, userId: ID!): UserFamily! adminRemoveEvent(eventId: ID!): Event! adminRemoveGroup(groupId: ID!): GroupChat! assignUserTag(input: ToggleUserTagAssignInput!): User @@ -532,10 +579,12 @@ type Mutation { createActionItemCategory(name: String!, organizationId: ID!): ActionItemCategory! createAdmin(data: UserAndOrganizationInput!): User! createAdvertisement(endDate: Date!, link: String!, name: String!, orgId: ID!, startDate: Date!, type: String!): Advertisement! + createAgendaCategory(input: CreateAgendaCategoryInput!): AgendaCategory! createComment(data: CommentInput!, postId: ID!): Comment createDirectChat(data: createChatInput!): DirectChat! createDonation(amount: Float!, nameOfOrg: String!, nameOfUser: String!, orgId: ID!, payPalId: ID!, userId: ID!): Donation! - createEvent(data: EventInput): Event! + createEvent(data: EventInput!, recurrenceRuleData: RecurrenceRuleInput): Event! + createEventVolunteer(data: EventVolunteerInput!): EventVolunteer! createGroupChat(data: createGroupChatInput!): GroupChat! createMember(input: UserAndOrganizationInput!): Organization! createMessageChat(data: MessageChatInput!): MessageChat! @@ -543,8 +592,10 @@ type Mutation { createPlugin(pluginCreatedBy: String!, pluginDesc: String!, pluginName: String!, uninstalledOrgs: [ID!]): Plugin! createPost(data: PostInput!, file: String): Post createSampleOrganization: Boolean! + createUserFamily(data: createUserFamilyInput!): UserFamily! createUserTag(input: CreateUserTagInput!): UserTag deleteAdvertisementById(id: ID!): DeletePayload! + deleteAgendaCategory(id: ID!): ID! deleteDonationById(id: ID!): DeletePayload! forgotPassword(data: ForgotPasswordData!): Boolean! joinPublicOrganization(organizationId: ID!): User! @@ -566,6 +617,7 @@ type Mutation { removeDirectChat(chatId: ID!, organizationId: ID!): DirectChat! removeEvent(id: ID!): Event! removeEventAttendee(data: EventAttendeeInput!): User! + removeEventVolunteer(id: ID!): EventVolunteer! removeGroupChat(chatId: ID!): GroupChat! removeMember(data: UserAndOrganizationInput!): Organization! removeOrganization(id: ID!): User! @@ -574,7 +626,9 @@ type Mutation { removePost(id: ID!): Post removeSampleOrganization: Boolean! removeUserCustomData(organizationId: ID!): UserCustomData! + removeUserFamily(familyId: ID!): UserFamily! removeUserFromGroupChat(chatId: ID!, userId: ID!): GroupChat! + removeUserFromUserFamily(familyId: ID!, userId: ID!): UserFamily! removeUserImage: User! removeUserTag(id: ID!): UserTag revokeRefreshTokenForUser: Boolean! @@ -592,7 +646,9 @@ type Mutation { updateActionItem(data: UpdateActionItemInput!, id: ID!): ActionItem updateActionItemCategory(data: UpdateActionItemCategoryInput!, id: ID!): ActionItemCategory updateAdvertisement(input: UpdateAdvertisementInput!): UpdateAdvertisementPayload + updateAgendaCategory(id: ID!, input: UpdateAgendaCategoryInput!): AgendaCategory updateEvent(data: UpdateEventInput, id: ID!): Event! + updateEventVolunteer(data: UpdateEventVolunteerInput, id: ID!): EventVolunteer! updateLanguage(languageCode: String!): User! updateOrganization(data: UpdateOrganizationInput, file: String, id: ID!): Organization! updatePluginStatus(id: ID!, orgId: ID!): Plugin! @@ -613,6 +669,7 @@ type Organization { actionItemCategories: [ActionItemCategory] address: Address admins(adminId: ID): [User!] + agendaCategories: [AgendaCategory] apiUrl: URL! blockedUsers: [User] createdAt: DateTime! @@ -848,12 +905,14 @@ type Query { actionItemsByEvent(eventId: ID!): [ActionItem] actionItemsByOrganization(organizationId: ID!): [ActionItem] adminPlugin(orgId: ID!): [Plugin] + agendaCategory(id: ID!): AgendaCategory! checkAuth: User! customDataByOrganization(organizationId: ID!): [UserCustomData!]! customFieldsByOrganization(id: ID!): [OrganizationCustomField] directChatsByUserID(id: ID!): [DirectChat] directChatsMessagesByChatID(id: ID!): [DirectChatMessage] event(id: ID!): Event + eventVolunteersByEvent(id: ID!): [EventVolunteer] eventsByOrganization(id: ID, orderBy: EventOrderByInput): [Event] eventsByOrganizationConnection(first: Int, orderBy: EventOrderByInput, skip: Int, where: EventWhereInput): [Event!]! getAdvertisements: [Advertisement] @@ -894,6 +953,12 @@ enum Recurrance { YEARLY } +input RecurrenceRuleInput { + count: Int + frequency: Frequency + weekDays: [WeekDays] +} + enum Status { ACTIVE BLOCKED @@ -963,6 +1028,11 @@ type UpdateAdvertisementPayload { advertisement: Advertisement } +input UpdateAgendaCategoryInput { + description: String + name: String +} + input UpdateEventInput { allDay: Boolean description: String @@ -980,6 +1050,13 @@ input UpdateEventInput { title: String } +input UpdateEventVolunteerInput { + eventId: ID + isAssigned: Boolean + isInvited: Boolean + response: EventVolunteerResponse +} + input UpdateOrganizationInput { address: AddressInput description: String @@ -1073,6 +1150,14 @@ type UserEdge { node: User! } +type UserFamily { + _id: ID! + admins: [User!]! + creator: User! + title: String + users: [User!]! +} + input UserInput { appLanguageCode: String email: EmailAddress! @@ -1195,6 +1280,16 @@ type UsersConnectionResult { errors: [ConnectionError!]! } +enum WeekDays { + FR + MO + SA + SU + TH + TU + WE +} + input createChatInput { organizationId: ID! userIds: [ID!]! @@ -1204,4 +1299,9 @@ input createGroupChatInput { organizationId: ID! title: String! userIds: [ID!]! +} + +input createUserFamilyInput { + title: String! + userIds: [ID!]! } \ No newline at end of file diff --git a/scripts/cloud-api-demo/README.md b/scripts/cloud-api-demo/README.md index 7105f38553..6345eafde2 100644 --- a/scripts/cloud-api-demo/README.md +++ b/scripts/cloud-api-demo/README.md @@ -22,13 +22,13 @@ This guide provides step-by-step instructions for setting up a cloud instance of - [9. GitHub Action Setup](#9-github-action-setup) - [10. Cron Jobs](#10-cron-jobs) - [10.1 Setting up Scripts](#101-setting-up-scripts) - - [10.1.1 Setting Permissions and Owner for check_permissions.sh](#1011-setting-permissions-and-owner-for-check_permissionssh) + - [10.1.1 Setting Permissions and Owner for correct_permissions.py](#1011-setting-permissions-and-owner-for-check_permissionssh) - [10.1.2 Modify sudoers file to allow talawa-api to run chmod and chown without password prompt](#1012-modify-sudoers-file-to-allow-talawa-api-to-run-chmod-and-chown-without-password-prompt) - - [10.1.3 Run check_permissions.sh once to correct permissions for other scripts](#1013-run-check_permissionssh-once-to-correct-permissions-for-other-scripts) + - [10.1.3 Run correct_permissions.py once to correct permissions for other scripts](#1013-run-check_permissionssh-once-to-correct-permissions-for-other-scripts) - [10.2 Setting up Cronjobs](#102-setting-up-cronjobs) - - [10.2.1 Cron job to run check_permissions.sh](#1021-cron-job-to-run-check_permissionssh) - - [10.2.2 Cron job to run cert_renew.sh](#1022-cron-job-to-run-cert_renewsh) - - [10.2.3 Cron job to run reset_mongo.sh](#1023-cron-job-to-run-reset_mongosh) + - [10.2.1 Cron job to run correct_permissions.py](#1021-cron-job-to-run-check_permissionssh) + - [10.2.2 Cron job to run renew_certificates.py](#1022-cron-job-to-run-cert_renewsh) + - [10.2.3 Cron job to run eset_database.py](#1023-cron-job-to-run-reset_mongosh) - [10.3 Logging for cron jobs](#103-logging-for-cron-jobs) @@ -57,45 +57,64 @@ source ~/.bashrc nvm install --lts ``` -After that, install Docker: +## 2. Repository Setup + +Create a new directory and clone the Talawa API repository: + ```bash -sudo apt-get install docker.io -y +mkdir develop +cd develop +git clone https://github.com/PalisadoesFoundation/talawa-api.git . +npm install ``` -Finally, install Docker Compose: + +## 3. Docker Configuration + +After that, to setup docker first remove all the conflicting packages: ```bash -sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose -sudo chmod +x /usr/local/bin/docker-compose +for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done ``` +Before you install Docker Engine for the first time on a new host machine, you need to set up the Docker repository. Afterward, you can install and update Docker from the repository. -## 2. Repository Setup +### 3.1 Set up docker's repository: -Create a new directory and clone the Talawa API repository: +#### 3.1.1 Add Docker's official GPG key: ```bash -mkdir develop -cd developus -git clone https://github.com/PalisadoesFoundation/talawa-api.git -cd talawa-api -npm install -npm run setup +sudo apt-get update +sudo apt-get install ca-certificates curl +sudo install -m 0755 -d /etc/apt/keyrings +sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc +sudo chmod a+r /etc/apt/keyrings/docker.asc ``` -**Important Note:** After running `npm run setup`, you need to edit the `.env` file and change `TALAWA_ADMIN_URL=api-demo.talawa.io` (replace with your hostname) and `NODE_ENV = production`. +#### 3.1.2 Add the repository to apt sources: +```bash +echo \ + "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ + $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ + sudo tee /etc/apt/sources.list.d/docker.list > /dev/null -## 3. Docker Configuration +sudo apt-get update +``` +### 3.2 Install the Docker packages: + +```bash +sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin +``` -To allow commands to run without sudo, execute the following: +### 3.3 Allow docker to run without sudo ```bash sudo groupadd docker sudo usermod -aG docker $USER -newgrp docker -rm -fr ~/.docker/ ``` +* **Note : Reboot the machine to apply the changes** + ## 4. Running the Containers Start the containers and import sample data: @@ -109,10 +128,10 @@ npm run import:sample-data Enable the firewall and allow SSH, HTTP, and HTTPS: ```bash -sudo ufw enable sudo ufw allow ssh sudo ufw allow http sudo ufw allow https +sudo ufw enable sudo ufw status ``` @@ -195,36 +214,36 @@ To enable continuous integration with GitHub Actions, you need to set up the nec 4. Click on the "New repository secret" button. - - For the first secret: - - - Name: `API_DEMO_HOST` - - Value: `api-demo.talawa.io` (Replace with your hostname) - - For the second secret: - - Name: `API_DEMO_USERNAME` - - Value: `talawa-api` - - For the third secret: - - Name: `API_DEMO_SSH_KEY` - - Value: (Paste the **private** SSH key you copied in previous step ) - - For the fourth secret: - - Name: `API_DEMO_PORT` - - Value: `22` +The application requires the following secrets to be set: + +- `API_DEMO_HOST`: Your hostname (e.g., `api-demo.talawa.io`) +- `API_DEMO_USERNAME`: Your API username (e.g., `talawa-api`) +- `API_DEMO_SSH_KEY`: Your **private** SSH key +- `API_DEMO_SSH_PORT`: Your port number (e.g., `22`) +- `API_DEMO_RECAPTCHA_SECRET_KEY`: Your reCAPTCHA secret key +- `API_DEMO_MAIL_USERNAME`: Your mail username +- `API_DEMO_MAIL_PASSWORD`: Your mail password (Not your main passowrd, App password you created) +- `API_DEMO_LAST_RESORT_SUPERADMIN_EMAIL`: Your last resort superadmin email + +Please replace the example values with your actual values. These secrets are crucial for the GitHub Actions workflow to connect securely to your VPS and deploy the Talawa API. ## 10. Cron Jobs ### 10.1 Setting up Scripts: -Copy the following scripts from **/home/talawa-api/develop/talawa-api/scripts/cloud-api-demo** to **/usr/local/bin**: -`cert_renew.sh` -`check_permissions.sh` -`deploy.sh` -`reset_mongo.sh` +Copy the following scripts from **/home/talawa-api/develop/talawa-api/scripts/cloud-api-demo** to **/usr/local/bin/scripts**: +`renew_certificates.py` +`correct_permissions.py` +`deploy.py` +`reset_database.py` +`create_env.py` -#### 10.1.1 Setting Permissions and Owner for check_permissions.sh: +#### 10.1.1 Setting Permissions and Owner for correct_permissions.py: ```bash -sudo chmod 700 /usr/local/bin/check_permissions.sh -sudo chown talawa-api /usr/local/bin/check_permissions.sh +sudo chmod 700 /usr/local/bin/scripts/correct_permissions.py +sudo chown talawa-api /usr/local/bin/scripts/correct_permissions.py ``` #### 10.1.2 Modify sudoers file to allow talawa-api to run chmod and chown without password prompt: @@ -235,28 +254,28 @@ talawa-api ALL=(ALL) NOPASSWD: /bin/chmod, /bin/chown ``` - Save and exit the editor -#### 10.1.3 Run check_permissions.sh once to correct permissions for other scripts: +#### 10.1.3 Run `correct_permissions.py` once to correct permissions for other scripts: ```bash -/usr/local/bin/check_permissions.sh +python3 correct_permissions.py --user talawa-api --files /usr/local/bin/scripts/deploy.py /usr/local/bin/scripts/reset_database.py /usr/local/bin/scripts/renew_certificates.py /usr/local/bin/scripts/create_env.py ``` -Executing check_permissions.sh once will ensure that the correct permissions are applied to the other scripts in the specified directory. +Executing `correct_permissions.py` once will ensure that the correct permissions are applied to the other scripts in the specified directory. ### 10.2 Setting up Cronjobs: -#### 10.2.1 Cron job to run check_permissions.sh -This cron job will execute check_permissions.sh every midnight, ensuring that the correct permissions are maintained for the scripts : +#### 10.2.1 Cron job to run correct_permissions.py +This cron job will execute correct_permissions.py every midnight, ensuring that the correct permissions are maintained for the scripts : ```bash -echo "0 0 * * * talawa-api /usr/local/bin/check_permissions.sh" | sudo tee /etc/cron.d/check_permissions +echo "0 0 * * * talawa-api python3 correct_permissions.py --user talawa-api --files /usr/local/bin/scripts/deploy.py /usr/local/bin/scripts/reset_database.py /usr/local/bin/scripts/renew_certificates.py /usr/local/bin/scripts/create_env.py" | sudo tee /etc/cron.d/check_permissions ``` -#### 10.2.2 Cron job to run cert_renew.sh -This cron job will execute `cert_renew.sh` every 90 days, ensuring that the certificates are renewed in a timely manner: +#### 10.2.2 Cron job to run renew_certificates.py +This cron job will execute `renew_certificates.py` every 90 days, ensuring that the certificates are renewed in a timely manner: ```bash -echo "0 0 */90 * * talawa-api /usr/local/bin/cert_renew.sh" | sudo tee /etc/cron.d/cert_renew +echo "0 0 * * * talawa-api python3 renew_certificates.py --config-dir ~/.certbot/config --logs-dir ~/.certbot/logs --work-dir ~/.certbot/work" | sudo tee /etc/cron.d/cert_renew ``` -#### 10.2.3 Cron job to run reset_mongo.sh -This cron job will execute `reset_mongo.sh` every 24 hours, ensuring that the MongoDB is reset on a daily basis: +#### 10.2.3 Cron job to run reset_database.py +This cron job will execute `reset_database.py` every 24 hours, ensuring that the MongoDB is reset on a daily basis: ```bash -echo "0 0 * * * talawa-api /usr/local/bin/reset_mongo.sh" | sudo tee /etc/cron.d/reset_mongo +echo "0 * * * * talawa-api python3 reset_database.py --mongo-container develop-mongodb-1 --mongo-db talawa-api --repo-dir /home/talawa-api/develop" | sudo tee /etc/cron.d/reset_mongo ``` #### 10.3 Logging for cron jobs @@ -264,6 +283,8 @@ echo "0 0 * * * talawa-api /usr/local/bin/reset_mongo.sh" | sudo tee /etc/cron.d ```bash sudo nano /etc/logrotate.d/talawa-api-cron +sudo mkdir -p /var/log/talawa-api/ +sudo chown talawa-api /var/log/talawa-api/ ``` 2. **Add the following content to the file:** ```log @@ -274,7 +295,7 @@ sudo nano /etc/logrotate.d/talawa-api-cron notifempty compress delaycompress - create 640 talawa-api talawa-api + create 640 talawa-api sharedscripts postrotate systemctl restart cron @@ -289,7 +310,7 @@ sudo nano /etc/logrotate.d/talawa-api-cron - `notifempty`: Does not rotate the log file if it is empty. - `compress`: Compresses rotated log files. - `delaycompress`: Delays compression until the next rotation cycle. -- `create 640 talawa-api talawa-api`: Creates new log files with the specified permissions and ownership. In this case, both the owner and group are set to talawa-api. +- `create 640 talawa-api`: Creates new log files with the specified permissions and ownership. In this case, the owner is set to talawa-api. - `sharedscripts`: Runs the `postrotate` script only once even if multiple log files are rotated. - `postrotate` ... endscript: Defines the actions to be taken after log rotation, in this case, restarting the cron service. diff --git a/scripts/cloud-api-demo/create_env.py b/scripts/cloud-api-demo/create_env.py new file mode 100644 index 0000000000..9c3c2e23cf --- /dev/null +++ b/scripts/cloud-api-demo/create_env.py @@ -0,0 +1,72 @@ +#!/usr/bin/env python3 +import argparse +import os + + +def main(): + """Main function to parse arguments and create .env file. + + Args: + None + + Raises: + IOError: If there is an issue writing to the .env file. + """ + # Define the command line arguments + parser = argparse.ArgumentParser(description="Create .env file") + parser.add_argument( + "--access_token_secret", required=True, help="Access token secret" + ) + parser.add_argument( + "--refresh_token_secret", required=True, help="Refresh token secret" + ) + parser.add_argument( + "--recaptcha_secret_key", required=True, help="Recaptcha secret key" + ) + parser.add_argument("--mail_username", required=True, help="Mail username") + parser.add_argument("--mail_password", required=True, help="Mail password") + parser.add_argument( + "--last_resort_superadmin_email", + required=True, + help="Last resort superadmin email", + ) + + # Parse the command line arguments + args = parser.parse_args() + + # Define the .env file contents + env_contents = f""" + NODE_ENV= + ACCESS_TOKEN_SECRET={args.access_token_secret} + REFRESH_TOKEN_SECRET={args.refresh_token_secret} + MONGO_DB_URL=mongodb://localhost:27017/talawa-api + RECAPTCHA_SECRET_KEY={args.recaptcha_secret_key} + MAIL_USERNAME={args.mail_username} + MAIL_PASSWORD={args.mail_password} + IS_SMTP= + SMTP_HOST= + SMTP_PASSWORD= + SMTP_USERNAME= + SMTP_PORT= + SMTP_SSL_TLS= + LAST_RESORT_SUPERADMIN_EMAIL={args.last_resort_superadmin_email} + COLORIZE_LOGS=false + LOG_LEVEL=info + REDIS_HOST=localhost + REDIS_PORT=6379 + REDIS_PASSWORD= + TALAWA_ADMIN_URL=api-demo.talawa.io + """ + + # Write the .env file + try: + home = os.path.expanduser("~") + with open(os.path.join(home, "develop", ".env"), "w") as f: + f.write(env_contents) + except IOError as e: + print(f"Error occurred: {e}") + raise SystemExit(1) + + +if __name__ == "__main__": + main() diff --git a/scripts/cloud-api-demo/deploy.py b/scripts/cloud-api-demo/deploy.py index 9efe6ee8ec..8469e8f276 100644 --- a/scripts/cloud-api-demo/deploy.py +++ b/scripts/cloud-api-demo/deploy.py @@ -48,10 +48,10 @@ def main(): execute_command(["git", "pull", "origin", args.branch]) # Stop and remove existing containers - execute_command(["docker-compose", "down"]) + execute_command(["docker","compose", "down"]) # Build and launch containers in the background - execute_command(["docker-compose", "up", "-d", "--build"]) + execute_command(["docker","compose", "up", "-d", "--build"]) # Remove all unused containers, networks, and images (both dangling and all unused) execute_command(["docker", "system", "prune", "-f"]) diff --git a/setup.ts b/setup.ts index 035fbbf349..ab1c39481e 100644 --- a/setup.ts +++ b/setup.ts @@ -100,7 +100,7 @@ async function setNodeEnvironment(): Promise { */ async function accessAndRefreshTokens( accessTokenSecret: string | null, - refreshTokenSecret: string | null + refreshTokenSecret: string | null, ): Promise { const config = dotenv.parse(fs.readFileSync(".env")); @@ -183,12 +183,12 @@ async function askForTransactionLogPath(): Promise { break; } catch { console.error( - "The file is not readable/writable. Please enter a valid file path." + "The file is not readable/writable. Please enter a valid file path.", ); } } else { console.error( - "Invalid path or file does not exist. Please enter a valid file path." + "Invalid path or file does not exist. Please enter a valid file path.", ); } } @@ -350,7 +350,7 @@ async function redisConfiguration(): Promise { */ async function askForSuperAdminEmail(): Promise { console.log( - "\nPlease make sure to register with this email before logging in.\n" + "\nPlease make sure to register with this email before logging in.\n", ); const { email } = await inquirer.prompt([ { @@ -558,7 +558,7 @@ async function recaptcha(): Promise { async function recaptchaSiteKey(): Promise { if (process.env.RECAPTCHA_SITE_KEY) { console.log( - `\nreCAPTCHA site key already exists with the value ${process.env.RECAPTCHA_SITE_KEY}` + `\nreCAPTCHA site key already exists with the value ${process.env.RECAPTCHA_SITE_KEY}`, ); } @@ -636,14 +636,14 @@ function abort(): void { async function twoFactorAuth(): Promise { console.log("\nIMPORTANT"); console.log( - "\nEnsure that you have Two-Factor Authentication set up on your Google Account." + "\nEnsure that you have Two-Factor Authentication set up on your Google Account.", ); console.log("\nVisit Url: https://myaccount.google.com"); console.log( - "\nSelect Security and under Signing in to Google section select App Passwords." + "\nSelect Security and under Signing in to Google section select App Passwords.", ); console.log( - "\nClick on Select app section and choose Other(Custom name), enter talawa as the custom name and press Generate button." + "\nClick on Select app section and choose Other(Custom name), enter talawa as the custom name and press Generate button.", ); const { email, password } = await inquirer.prompt([ @@ -741,7 +741,7 @@ async function importData(): Promise { abort(); } console.log(`Output: ${stdout}`); - } + }, ); } } @@ -762,7 +762,7 @@ type VerifySmtpConnectionReturnType = { * be `true` and the `error` property will be `null`. If the SMTP connection verification fails */ async function verifySmtpConnection( - config: Record + config: Record, ): Promise { const transporter = nodemailer.createTransport({ host: config.SMTP_HOST, @@ -829,7 +829,7 @@ async function configureSmtp(): Promise { if (!isValidSmtpConfig) { console.error( - "Invalid SMTP configuration. Please provide all required parameters." + "Invalid SMTP configuration. Please provide all required parameters.", ); return; } @@ -838,7 +838,7 @@ async function configureSmtp(): Promise { if (!success) { console.error( - "SMTP configuration verification failed. Please check your SMTP settings." + "SMTP configuration verification failed. Please check your SMTP settings.", ); if (error instanceof Error) { console.log(error.message); @@ -876,7 +876,7 @@ async function main(): Promise { refreshToken: string | null = ""; if (process.env.ACCESS_TOKEN_SECRET) { console.log( - `\nAccess token secret already exists with the value:\n${process.env.ACCESS_TOKEN_SECRET}` + `\nAccess token secret already exists with the value:\n${process.env.ACCESS_TOKEN_SECRET}`, ); } const { shouldGenerateAccessToken } = await inquirer.prompt({ @@ -892,7 +892,7 @@ async function main(): Promise { if (process.env.REFRESH_TOKEN_SECRET) { console.log( - `\nRefresh token secret already exists with the value:\n${process.env.REFRESH_TOKEN_SECRET}` + `\nRefresh token secret already exists with the value:\n${process.env.REFRESH_TOKEN_SECRET}`, ); } const { shouldGenerateRefreshToken } = await inquirer.prompt({ @@ -918,7 +918,7 @@ async function main(): Promise { if (shouldLog) { if (process.env.LOG_PATH) { console.log( - `\n Log path already exists with the value:\n${process.env.LOG_PATH}` + `\n Log path already exists with the value:\n${process.env.LOG_PATH}`, ); } let logPath: string | null = null; @@ -997,7 +997,7 @@ async function main(): Promise { // MongoDB configuration if (process.env.MONGO_DB_URL) { console.log( - `\nMongoDB URL already exists with the value:\n${process.env.MONGO_DB_URL}` + `\nMongoDB URL already exists with the value:\n${process.env.MONGO_DB_URL}`, ); const { shouldSetupMongo } = await inquirer.prompt({ @@ -1016,7 +1016,7 @@ async function main(): Promise { } if (process.env.RECAPTCHA_SECRET_KEY) { console.log( - `\nreCAPTCHA secret key already exists with the value ${process.env.RECAPTCHA_SECRET_KEY}` + `\nreCAPTCHA secret key already exists with the value ${process.env.RECAPTCHA_SECRET_KEY}`, ); } const { shouldSetRecaptcha } = await inquirer.prompt({ @@ -1032,12 +1032,12 @@ async function main(): Promise { } console.log( - "\n You can configure either SMTP or Mail for sending emails through Talawa.\n" + "\n You can configure either SMTP or Mail for sending emails through Talawa.\n", ); if (process.env.MAIL_USERNAME) { console.log( - `Mail username already exists with the value ${process.env.MAIL_USERNAME}` + `Mail username already exists with the value ${process.env.MAIL_USERNAME}`, ); } @@ -1070,7 +1070,7 @@ async function main(): Promise { if (process.env.LAST_RESORT_SUPERADMIN_EMAIL) { console.log( - `\nSuper Admin of last resort already exists with the value ${process.env.LAST_RESORT_SUPERADMIN_EMAIL}` + `\nSuper Admin of last resort already exists with the value ${process.env.LAST_RESORT_SUPERADMIN_EMAIL}`, ); } @@ -1093,7 +1093,7 @@ async function main(): Promise { ) { if (process.env.MAIL_USERNAME) { console.log( - "No super admin email configured, setting it to mail username's value." + "No super admin email configured, setting it to mail username's value.", ); } const config = dotenv.parse(fs.readFileSync(".env")); @@ -1135,7 +1135,7 @@ async function main(): Promise { await setImageUploadSize(imageSizeLimit * 1000); console.log( - "\nCongratulations! Talawa API has been successfully setup! 🥂🎉" + "\nCongratulations! Talawa API has been successfully setup! 🥂🎉", ); } diff --git a/src/app.ts b/src/app.ts index e3eeef04d3..7a33353830 100644 --- a/src/app.ts +++ b/src/app.ts @@ -11,7 +11,6 @@ import { appConfig } from "./config"; import { requestContext, requestTracing, stream } from "./libraries"; //@ts-ignore import graphqlUploadExpress from "graphql-upload/graphqlUploadExpress.mjs"; - const app = express(); app.use(requestTracing.middleware()); @@ -62,7 +61,7 @@ app.use( helmet({ contentSecurityPolicy: process.env.NODE_ENV === "production" ? undefined : false, - }) + }), ); app.use(mongoSanitize()); app.use(cors()); @@ -82,8 +81,8 @@ app.use( ':remote-addr - :remote-user [:date[clf]] ":method :url HTTP/:http-version" :status :res[content-length] :response-time ms', { stream: stream, - } - ) + }, + ), ); app.use("/images", express.static(path.join(__dirname, "./../images"))); @@ -98,7 +97,7 @@ app.get("/", (req, res) => res.json({ "talawa-version": "v1", status: "healthy", - }) + }), ); export default app; diff --git a/src/checks.ts b/src/checks.ts index 425f980c17..0e97e68802 100644 --- a/src/checks.ts +++ b/src/checks.ts @@ -3,7 +3,6 @@ import { User } from "./models"; import { generateErrorMessage } from "zod-error"; import { getEnvIssues } from "./env"; import { logger } from "./libraries"; - const logWarningForSuperAdminEnvVariable = async (): Promise => { const superAdminExist = await User.exists({ userType: "SUPERADMIN" }); const isVariablePresentInEnvFile = !!LAST_RESORT_SUPERADMIN_EMAIL; @@ -11,14 +10,14 @@ const logWarningForSuperAdminEnvVariable = async (): Promise => { if (isVariablePresentInEnvFile) { logger.warn( "\x1b[1m\x1b[33m%s\x1b[0m", - "The LAST_RESORT_SUPERADMIN_EMAIL variable configured in your .env file poses a security risk. We strongly recommend that you remove it if not required. Please refer to the documentation in the INSTALLATION.md file.You have created super admin, please remove the LAST_RESORT_SUPERADMIN_EMAIL variable from .env file if you don't require it" + "The LAST_RESORT_SUPERADMIN_EMAIL variable configured in your .env file poses a security risk. We strongly recommend that you remove it if not required. Please refer to the documentation in the INSTALLATION.md file.You have created super admin, please remove the LAST_RESORT_SUPERADMIN_EMAIL variable from .env file if you don't require it", ); } } else { if (!isVariablePresentInEnvFile) { logger.warn( "\x1b[1m\x1b[33m%s\x1b[0m", - "To create your first Super Admin, the LAST_RESORT_SUPERADMIN_EMAIL parameter needs to be set in the .env file. Please refer to the documentation in the INSTALLATION.md file." + "To create your first Super Admin, the LAST_RESORT_SUPERADMIN_EMAIL parameter needs to be set in the .env file. Please refer to the documentation in the INSTALLATION.md file.", ); } } @@ -29,12 +28,12 @@ export const logIssues = async (): Promise => { const issues = getEnvIssues(); if (issues) { logger.error( - "Invalid environment variables found in your .env file, check the errors below!" + "Invalid environment variables found in your .env file, check the errors below!", ); console.error( generateErrorMessage(issues, { delimiter: { error: "\\n" }, - }) + }), ); } else { logger.info("The environment variables are valid!"); diff --git a/src/config/plugins/loadPlugins.ts b/src/config/plugins/loadPlugins.ts index 4393249868..3d8d158226 100644 --- a/src/config/plugins/loadPlugins.ts +++ b/src/config/plugins/loadPlugins.ts @@ -14,13 +14,13 @@ const loadPlugins = async (): Promise => { }); logger.info( "\x1b[1m\x1b[32m%s\x1b[0m", - `Uploaded Plugins in ${databaseTitle} ` + `Uploaded Plugins in ${databaseTitle} `, ); } else { //plugin data already present logger.info( "\x1b[1m\x1b[32m%s\x1b[0m", - `Plugin data already present at ${databaseTitle}` + `Plugin data already present at ${databaseTitle}`, ); } }; diff --git a/src/constants.ts b/src/constants.ts index e5945d7454..7a457d7503 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -28,6 +28,13 @@ export const ACTION_ITEM_CATEGORY_ALREADY_EXISTS = { PARAM: "actionItemCategory", }; +export const AGENDA_CATEGORY_NOT_FOUND_ERROR = { + DESC: "Agenda category not found", + CODE: "agendaCategory.notFound", + MESSAGE: "agendaCategory.notFound", + PARAM: "agendaCategory", +}; + export const CHAT_NOT_FOUND_ERROR = { DESC: "Chat not found", CODE: "chat.notFound", @@ -177,12 +184,24 @@ export const LENGTH_VALIDATION_ERROR = { PARAM: "stringValidation", }; +export const USER_FAMILY_MIN_MEMBERS_ERROR_CODE = { + MESSAGE: "InputValidationError", + CODE: "membersInUserFamilyLessThanOne", + PARAM: "membersInUserFamilyLessThanOne", +}; + export const REGEX_VALIDATION_ERROR = { MESSAGE: "Error: Entered value must be a valid string", CODE: "string.notValid", PARAM: "stringValidation", }; +export const USER_FAMILY_NOT_FOUND_ERROR = { + MESSAGE: "Error: User Family Not Found", + CODE: "userfamilyNotFound", + PARAM: "userfamilyNotFound", +}; + export const USER_NOT_AUTHORIZED_SUPERADMIN = { MESSAGE: "Error: Current user must be a SUPERADMIN", CODE: "role.notValid.superadmin", @@ -430,18 +449,18 @@ export const EMAIL_ALREADY_EXISTS_ERROR = { PARAM: "email", }; -export const VOLUNTEER_NOT_FOUND_ERROR = { +export const EVENT_VOLUNTEER_NOT_FOUND_ERROR = { DESC: "Volunteer not found", - CODE: "volunteer.notFound", - MESSAGE: "volunteer.notFound", - PARAM: "volunteers", + CODE: "eventVolunteer.notFound", + MESSAGE: "eventVolunteer.notFound", + PARAM: "eventVolunteers", }; -export const VOLUNTEER_NOT_MEMBER_ERROR = { - DESC: "Volunteer is not member of the organization.", - CODE: "volunteer.notMember", - MESSAGE: "volunteer.notMember", - PARAM: "volunteers", +export const EVENT_VOLUNTEER_INVITE_USER_MISTMATCH = { + DESC: "Current User is not the user of Event Volunteer", + CODE: "eventVolunteer.userMismatch", + MESSAGE: "eventVolunteer.userMismatch", + PARAM: "eventVolunteers", }; export const USER_ALREADY_CHECKED_IN = { @@ -517,6 +536,26 @@ export const REDIS_PASSWORD = process.env.REDIS_PASSWORD; export const MILLISECONDS_IN_A_WEEK = 7 * 24 * 60 * 60 * 1000; +// recurring event frequencies +export const RECURRENCE_FREQUENCIES = ["YEARLY", "MONTHLY", "WEEKLY", "DAILY"]; + +// recurring instance generation date limit in years based on it's frequency +export const RECURRING_EVENT_INSTANCES_DAILY_LIMIT = 1; +export const RECURRING_EVENT_INSTANCES_WEEKLY_LIMIT = 2; +export const RECURRING_EVENT_INSTANCES_MONTHLY_LIMIT = 5; +export const RECURRING_EVENT_INSTANCES_YEARLY_LIMIT = 10; + +// recurring event days +export const RECURRENCE_WEEKDAYS = [ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY", +]; + export const key = ENV.ENCRYPTION_KEY as string; export const iv = crypto.randomBytes(16).toString("hex"); @@ -529,3 +568,8 @@ export enum TransactionLogTypes { UPDATE = "UPDATE", DELETE = "DELETE", } + +export enum EventVolunteerResponse { + YES = "YES", + NO = "NO", +} diff --git a/src/db.ts b/src/db.ts index 82c17e6d7e..d5190fdf65 100644 --- a/src/db.ts +++ b/src/db.ts @@ -20,24 +20,24 @@ export const connect = async (): Promise => { logger.error("\n\n\n\x1b[1m\x1b[31m%s\x1b[0m", error); logger.error( "\n\n\x1b[1m\x1b[34m%s\x1b[0m", - `- Connection to MongoDB failed: There are several potential causes for this issue, including:` + `- Connection to MongoDB failed: There are several potential causes for this issue, including:`, ); logger.error( "\x1b[1m\x1b[33m%s\x1b[0m", - `- Unstable Network Connection` + `- Unstable Network Connection`, ); logger.error("\x1b[1m\x1b[33m%s\x1b[0m", `- Invalid Connection String`); logger.error( "\x1b[1m\x1b[33m%s\x1b[0m", - `- MongoDB Server may not be running` + `- MongoDB Server may not be running`, ); logger.error( "\x1b[1m\x1b[33m%s\x1b[0m", - `- Firewall may not be configured to allow incoming connections on MongoDB port.` + `- Firewall may not be configured to allow incoming connections on MongoDB port.`, ); logger.error( "\x1b[1m\x1b[31m%s\x1b[0m", - `- Please try again with the fixes !` + `- Please try again with the fixes !`, ); } else { logger.error("Error while connecting to mongo database", error); diff --git a/src/directives/directiveTransformer/authDirectiveTransformer.ts b/src/directives/directiveTransformer/authDirectiveTransformer.ts index a0bcb1cb2d..7773294b15 100644 --- a/src/directives/directiveTransformer/authDirectiveTransformer.ts +++ b/src/directives/directiveTransformer/authDirectiveTransformer.ts @@ -6,13 +6,13 @@ import { errors, requestContext } from "../../libraries"; function authDirectiveTransformer(schema, directiveName): any { return mapSchema(schema, { [MapperKind.OBJECT_FIELD]: ( - fieldConfig: GraphQLFieldConfig + fieldConfig: GraphQLFieldConfig, ): any => { // Check whether this field has the specified directive const authDirective = getDirective( schema, fieldConfig, - directiveName + directiveName, )?.[0]; if (authDirective) { //@ts-ignore @@ -23,7 +23,7 @@ function authDirectiveTransformer(schema, directiveName): any { throw new errors.UnauthenticatedError( requestContext.translate("user.notAuthenticated"), "user.notAuthenticated --auth directive", - "userAuthentication" + "userAuthentication", ); return resolve(root, args, context, info); }; diff --git a/src/directives/directiveTransformer/roleDirectiveTransformer.ts b/src/directives/directiveTransformer/roleDirectiveTransformer.ts index ee424c1fef..32e8d333c5 100644 --- a/src/directives/directiveTransformer/roleDirectiveTransformer.ts +++ b/src/directives/directiveTransformer/roleDirectiveTransformer.ts @@ -11,13 +11,13 @@ import { MapperKind, getDirective, mapSchema } from "@graphql-tools/utils"; function roleDirectiveTransformer(schema, directiveName): any { return mapSchema(schema, { [MapperKind.OBJECT_FIELD]: ( - fieldConfig: GraphQLFieldConfig + fieldConfig: GraphQLFieldConfig, ): any => { // Check whether this field has the specified directive const roleDirective = getDirective( schema, fieldConfig, - directiveName + directiveName, )?.[0]; if (roleDirective) { @@ -31,7 +31,7 @@ function roleDirectiveTransformer(schema, directiveName): any { root, args, context, - info + info, ): Promise => { const currentUser = await User.findOne({ _id: context.userId, @@ -41,7 +41,7 @@ function roleDirectiveTransformer(schema, directiveName): any { throw new errors.NotFoundError( USER_NOT_FOUND_ERROR.MESSAGE, USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -49,7 +49,7 @@ function roleDirectiveTransformer(schema, directiveName): any { throw new errors.UnauthenticatedError( USER_NOT_AUTHORIZED_ERROR.MESSAGE, USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } diff --git a/src/helpers/event/createEventHelpers/createRecurringEvent.ts b/src/helpers/event/createEventHelpers/createRecurringEvent.ts new file mode 100644 index 0000000000..5f5532cd4c --- /dev/null +++ b/src/helpers/event/createEventHelpers/createRecurringEvent.ts @@ -0,0 +1,101 @@ +import type mongoose from "mongoose"; +import type { InterfaceEvent } from "../../../models"; +import { Event } from "../../../models"; +import type { MutationCreateEventArgs } from "../../../types/generatedGraphQLTypes"; +import { + generateRecurrenceRuleString, + getRecurringInstanceDates, + createRecurrenceRule, + generateRecurringEventInstances, +} from "../recurringEventHelpers"; + +/** + * This function creates the instances of a recurring event upto a certain date. + * @param args - payload of the createEvent mutation + * @param creatorId - _id of the creator + * @param organizationId - _id of the organization the events belongs to + * @remarks The following steps are followed: + * 1. Create a default recurrenceRuleData. + * 2. Generate a recurrence rule string based on the recurrenceRuleData. + * 3. Create a baseRecurringEvent on which recurring instances would be based. + * 4. Get the dates for recurring instances. + * 5. Create a recurrenceRule document. + * 6. Generate recurring instances according to the recurrence rule. + * @returns Created recurring event instance + */ + +export const createRecurringEvent = async ( + args: MutationCreateEventArgs, + creatorId: string, + organizationId: string, + session: mongoose.ClientSession, +): Promise => { + const { data } = args; + let { recurrenceRuleData } = args; + + if (!recurrenceRuleData) { + // create a default weekly recurrence rule + recurrenceRuleData = { + frequency: "WEEKLY", + }; + } + + // generate a recurrence rule string which would be used to generate rrule object + // and get recurrence dates + const recurrenceRuleString = generateRecurrenceRuleString( + recurrenceRuleData, + data?.startDate, + data?.endDate, + ); + + // create a base recurring event first, based on which all the + // recurring instances would be dynamically generated + const baseRecurringEvent = await Event.create( + [ + { + ...data, + recurring: true, + isBaseRecurringEvent: true, + creatorId, + admins: [creatorId], + organization: organizationId, + }, + ], + { session }, + ); + + // get the dates for the recurringInstances, and the date of the last instance + // to be generated in this operation (rest would be generated dynamically during query) + const recurringInstanceDates = getRecurringInstanceDates( + recurrenceRuleString, + data.startDate, + data.endDate, + ); + + // get the date for the latest created instance + const latestInstanceDate = + recurringInstanceDates[recurringInstanceDates.length - 1]; + // create a recurrenceRule document that would contain the recurrence pattern + const recurrenceRule = await createRecurrenceRule( + recurrenceRuleString, + data.startDate, + data.endDate, + organizationId, + baseRecurringEvent[0]?._id.toString(), + latestInstanceDate, + session, + ); + + // generate the recurring instances and get an instance back + const recurringEventInstance = await generateRecurringEventInstances({ + data, + baseRecurringEventId: baseRecurringEvent[0]?._id.toString(), + recurrenceRuleId: recurrenceRule?._id.toString(), + recurringInstanceDates, + creatorId, + organizationId, + session, + }); + + return recurringEventInstance; +}; diff --git a/src/helpers/event/createEventHelpers/createSingleEvent.ts b/src/helpers/event/createEventHelpers/createSingleEvent.ts new file mode 100644 index 0000000000..fcece4521a --- /dev/null +++ b/src/helpers/event/createEventHelpers/createSingleEvent.ts @@ -0,0 +1,66 @@ +import type mongoose from "mongoose"; +import type { InterfaceEvent } from "../../../models"; +import { Event, EventAttendee, User } from "../../../models"; +import type { MutationCreateEventArgs } from "../../../types/generatedGraphQLTypes"; +import { cacheEvents } from "../../../services/EventCache/cacheEvents"; + +/** + * This function generates a single non-recurring event. + * @param args - the arguments provided for the createEvent mutation. + * @param creatorId - _id of the current user. + * @param organizationId - _id of the current organization. + * @remarks The following steps are followed: + * 1. Create an event document. + * 2. Associate the event with the user + * 3. Cache the event. + * @returns The created event. + */ + +export const createSingleEvent = async ( + args: MutationCreateEventArgs, + creatorId: string, + organizationId: string, + session: mongoose.ClientSession, +): Promise => { + // create the single event + const createdEvent = await Event.create( + [ + { + ...args.data, + creatorId, + admins: [creatorId], + organization: organizationId, + }, + ], + { session }, + ); + + // associate event with the user + await EventAttendee.create( + [ + { + userId: creatorId, + eventId: createdEvent[0]?._id, + }, + ], + { session }, + ); + await User.updateOne( + { + _id: creatorId, + }, + { + $push: { + eventAdmin: createdEvent[0]?._id, + createdEvents: createdEvent[0]?._id, + registeredEvents: createdEvent[0]?._id, + }, + }, + { session }, + ); + + // cache the event + await cacheEvents([createdEvent[0]]); + + return createdEvent[0]; +}; diff --git a/src/helpers/event/createEventHelpers/index.ts b/src/helpers/event/createEventHelpers/index.ts new file mode 100644 index 0000000000..ebab56acb9 --- /dev/null +++ b/src/helpers/event/createEventHelpers/index.ts @@ -0,0 +1,2 @@ +export { createSingleEvent } from "./createSingleEvent"; +export { createRecurringEvent } from "./createRecurringEvent"; diff --git a/src/helpers/event/recurringEventHelpers/createRecurrenceRule.ts b/src/helpers/event/recurringEventHelpers/createRecurrenceRule.ts new file mode 100644 index 0000000000..5deeeabff1 --- /dev/null +++ b/src/helpers/event/recurringEventHelpers/createRecurrenceRule.ts @@ -0,0 +1,65 @@ +import type mongoose from "mongoose"; +import { rrulestr } from "rrule"; +import type { InterfaceRecurrenceRule } from "../../../models/RecurrenceRule"; +import { RecurrenceRule } from "../../../models/RecurrenceRule"; +import { + RECURRENCE_FREQUENCIES, + RECURRENCE_WEEKDAYS, +} from "../../../constants"; + +/** + * This function generates the recurrenceRule document. + * @param recurrenceRuleString - the rrule string containing the rules that the instances would follow. + * @param recurrenceStartDate - start date of recurrence. + * @param recurrenceEndDate - end date of recurrence. + * @param organizationId - _id of the current organization. + * @param baseRecurringEventId - _id of the base recurring event. + * @param latestInstanceDate - start date of the last instance generated during this operation. + * @remarks The following steps are followed: + * 1. Create an rrule object from the rrule string. + * 2. Get the fields for the RecurrenceRule document. + * 3. Create the RecurrenceRuleDocument. + * @returns The recurrence rule document. + */ + +export const createRecurrenceRule = async ( + recurrenceRuleString: string, + recurrenceStartDate: Date, + recurrenceEndDate: Date | null, + organizationId: string, + baseRecurringEventId: string, + latestInstanceDate: Date, + session: mongoose.ClientSession, +): Promise => { + const recurrenceRuleObject = rrulestr(recurrenceRuleString); + + const { freq, byweekday } = recurrenceRuleObject.options; + + const weekDays: string[] = []; + if (byweekday) { + for (const weekday of byweekday) { + weekDays.push(RECURRENCE_WEEKDAYS[weekday]); + } + } + + const frequency = RECURRENCE_FREQUENCIES[freq]; + + const recurrenceRule = await RecurrenceRule.create( + [ + { + organizationId, + baseRecurringEventId, + recurrenceRuleString, + startDate: recurrenceStartDate, + endDate: recurrenceEndDate, + frequency, + count: recurrenceRuleObject.options.count, + weekDays, + latestInstanceDate, + }, + ], + { session }, + ); + + return recurrenceRule[0].toObject(); +}; diff --git a/src/helpers/event/recurringEventHelpers/generateRecurrenceRuleString.ts b/src/helpers/event/recurringEventHelpers/generateRecurrenceRuleString.ts new file mode 100644 index 0000000000..500e11ac73 --- /dev/null +++ b/src/helpers/event/recurringEventHelpers/generateRecurrenceRuleString.ts @@ -0,0 +1,53 @@ +import type { RecurrenceRuleInput } from "../../../types/generatedGraphQLTypes"; +import { convertToRRuleDateString } from "../../../utilities/recurrenceDatesUtil"; + +/** + * This function generates the recurrence rule (rrule) string. + * @param recurrenceRuleData - the recurrenceRuleInput provided in the args. + * @param recurrenceStartDate - start date of recurrence. + * @param recurrenceEndDate - end date of recurrence. + * @remarks The following steps are followed: + * 1. Get the date strings for start and end of recurrence. + * 2. Get the recurrence rules and make a recurrenceRuleString. + * @returns The recurrence rule string that would be used to create a valid rrule object. + */ + +export const generateRecurrenceRuleString = ( + recurrenceRuleData: RecurrenceRuleInput, + recurrenceStartDate: Date, + recurrenceEndDate?: Date, +): string => { + // get the start date string for rrule's "DTSTART" property + const recurrenceStartDateString = + convertToRRuleDateString(recurrenceStartDate); + + // get the end date string for rrule's "UNTIL" property + let recurrenceEndDateString = ""; + if (recurrenceEndDate) { + recurrenceEndDateString = convertToRRuleDateString(recurrenceEndDate); + } + + // destructure the recurrence rules + const { frequency, count, weekDays } = recurrenceRuleData; + + // string representing the days of the week the event would recur + const weekDaysString = weekDays?.length ? weekDays.join(",") : ""; + + // initiate recurrence rule string + let recurrenceRuleString = `DTSTART:${recurrenceStartDateString}\nRRULE:FREQ=${frequency}`; + + if (recurrenceEndDateString) { + recurrenceRuleString += `;UNTIL=${recurrenceEndDateString}`; + } + + if (count) { + // maximum number of instances to generate + recurrenceRuleString += `;COUNT=${count}`; + } + + if (weekDaysString) { + recurrenceRuleString += `;BYDAY=${weekDaysString}`; + } + + return recurrenceRuleString; +}; diff --git a/src/helpers/event/recurringEventHelpers/generateRecurringEventInstances.ts b/src/helpers/event/recurringEventHelpers/generateRecurringEventInstances.ts new file mode 100644 index 0000000000..aa4830f3b8 --- /dev/null +++ b/src/helpers/event/recurringEventHelpers/generateRecurringEventInstances.ts @@ -0,0 +1,111 @@ +import type mongoose from "mongoose"; +import type { InterfaceEvent } from "../../../models"; +import { Event, EventAttendee, User } from "../../../models"; +import type { EventInput } from "../../../types/generatedGraphQLTypes"; +import { cacheEvents } from "../../../services/EventCache/cacheEvents"; + +/** + * This function generates the recurring event instances. + * @param data - the EventInput data provided in the args. + * @param baseRecurringEventId - _id of the baseRecurringEvent. + * @param recurrenceRuleId - _id of the recurrenceRule document containing the recurrence rule that the instances follow. + * @param recurringInstanceDates - the dates of the recurring instances. + * @param creatorId - _id of the creator. + * @param organizationId - _id of the current organization. + * @remarks The following steps are followed: + * 1. Generate the instances for each provided date. + * 2. Insert the documents in the database. + * 3. Associate the instances with the user. + * 4. Cache the instances. + * @returns A recurring instance generated during this operation. + */ + +interface InterfaceGenerateRecurringInstances { + data: EventInput; + baseRecurringEventId: string; + recurrenceRuleId: string; + recurringInstanceDates: Date[]; + creatorId: string; + organizationId: string; + session: mongoose.ClientSession; +} + +interface InterfaceRecurringEvent extends EventInput { + isBaseRecurringEvent: boolean; + recurrenceRuleId: string; + baseRecurringEventId: string; + creatorId: string; + admins: string[]; + organization: string; +} + +export const generateRecurringEventInstances = async ({ + data, + baseRecurringEventId, + recurrenceRuleId, + recurringInstanceDates, + creatorId, + organizationId, + session, +}: InterfaceGenerateRecurringInstances): Promise => { + const recurringInstances: InterfaceRecurringEvent[] = []; + recurringInstanceDates.map((date) => { + const createdEventInstance = { + ...data, + startDate: date, + endDate: date, + recurring: true, + isBaseRecurringEvent: false, + recurrenceRuleId, + baseRecurringEventId, + creatorId, + admins: [creatorId], + organization: organizationId, + }; + + recurringInstances.push(createdEventInstance); + }); + + //Bulk insertion in database + const recurringEventInstances = await Event.insertMany(recurringInstances, { + session, + }); + + // add eventattendee for each instance + const eventAttendees = recurringEventInstances.map( + (recurringEventInstance) => ({ + userId: creatorId, + eventId: recurringEventInstance?._id.toString(), + }), + ); + + // get event instances ids for updating user event fields to include generated instances + const eventInstanceIds = recurringEventInstances.map((instance) => + instance._id.toString(), + ); + + // perform database operations + await Promise.all([ + EventAttendee.insertMany(eventAttendees, { session }), + User.updateOne( + { _id: creatorId }, + { + $push: { + eventAdmin: { $each: eventInstanceIds }, + createdEvents: { $each: eventInstanceIds }, + registeredEvents: { $each: eventInstanceIds }, + }, + }, + { session }, + ), + ]); + + // cache the instances + await Promise.all( + recurringEventInstances.map((recurringEventInstance) => + cacheEvents([recurringEventInstance]), + ), + ); + + return recurringEventInstances[0]; +}; diff --git a/src/helpers/event/recurringEventHelpers/getRecurringInstanceDates.ts b/src/helpers/event/recurringEventHelpers/getRecurringInstanceDates.ts new file mode 100644 index 0000000000..502a3a5a1a --- /dev/null +++ b/src/helpers/event/recurringEventHelpers/getRecurringInstanceDates.ts @@ -0,0 +1,76 @@ +import { addYears } from "date-fns"; +import { Frequency, rrulestr } from "rrule"; +import type { RRule } from "rrule"; +import { + RECURRING_EVENT_INSTANCES_DAILY_LIMIT, + RECURRING_EVENT_INSTANCES_WEEKLY_LIMIT, + RECURRING_EVENT_INSTANCES_MONTHLY_LIMIT, + RECURRING_EVENT_INSTANCES_YEARLY_LIMIT, +} from "../../../constants"; + +/** + * This function generates the dates of recurrence for the recurring event. + * @param recurrenceRuleString - the rrule string for the recurrenceRule. + * @param recurrenceStartDate - the starting date from which we want to generate instances. + * @param eventEndDate - the end date of the event + * @param queryUptoDate - the limit date to query recurrenceRules (To be used for dynamic instance generation during queries). + * @remarks The following steps are followed: + * 1. Get the date limit for instance generation based on its recurrence frequency. + * 2. Get the dates for recurring event instances. + * @returns Dates for recurring instances to be generated during this operation. + */ + +export function getRecurringInstanceDates( + recurrenceRuleString: string, + recurrenceStartDate: Date, + eventEndDate: Date | null, + queryUptoDate: Date = recurrenceStartDate, +): Date[] { + // get the rrule object + const recurrenceRuleObject: RRule = rrulestr(recurrenceRuleString); + + // get the recurrence frequency + const { freq: recurrenceFrequency } = recurrenceRuleObject.options; + + // set limitEndDate according to the recurrence frequency + // and queryUptoDate, which would default to recurrenceStartDate during createRecurringEvent mutation + // and have a specific value during queries + let limitEndDate = addYears( + queryUptoDate, + RECURRING_EVENT_INSTANCES_DAILY_LIMIT, + ); + + if (recurrenceFrequency === Frequency.WEEKLY) { + limitEndDate = addYears( + queryUptoDate, + RECURRING_EVENT_INSTANCES_WEEKLY_LIMIT, + ); + } else if (recurrenceFrequency === Frequency.MONTHLY) { + limitEndDate = addYears( + queryUptoDate, + RECURRING_EVENT_INSTANCES_MONTHLY_LIMIT, + ); + } else if (recurrenceFrequency === Frequency.YEARLY) { + limitEndDate = addYears( + queryUptoDate, + RECURRING_EVENT_INSTANCES_YEARLY_LIMIT, + ); + } + + // if the event has no endDate + eventEndDate = eventEndDate || limitEndDate; + + // the date upto which we would generate the instances in this operation + const generateUptoDate = new Date( + Math.min(eventEndDate.getTime(), limitEndDate.getTime()), + ); + + // get the dates of recurrence + const recurringInstanceDates = recurrenceRuleObject.between( + recurrenceStartDate, + generateUptoDate, + true, + ); + + return recurringInstanceDates; +} diff --git a/src/helpers/event/recurringEventHelpers/index.ts b/src/helpers/event/recurringEventHelpers/index.ts new file mode 100644 index 0000000000..43e66640d5 --- /dev/null +++ b/src/helpers/event/recurringEventHelpers/index.ts @@ -0,0 +1,4 @@ +export { generateRecurrenceRuleString } from "./generateRecurrenceRuleString"; +export { getRecurringInstanceDates } from "./getRecurringInstanceDates"; +export { createRecurrenceRule } from "./createRecurrenceRule"; +export { generateRecurringEventInstances } from "./generateRecurringEventInstances"; diff --git a/src/helpers/eventInstances/index.ts b/src/helpers/eventInstances/index.ts deleted file mode 100644 index 75a88f1a7c..0000000000 --- a/src/helpers/eventInstances/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as Once from "./once"; -import * as Weekly from "./weekly"; - -export { Once, Weekly }; diff --git a/src/helpers/eventInstances/once.ts b/src/helpers/eventInstances/once.ts deleted file mode 100644 index 4a844b4841..0000000000 --- a/src/helpers/eventInstances/once.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type mongoose from "mongoose"; -import type { - InterfaceEvent, - InterfaceOrganization, - InterfaceUser, -} from "../../models"; -import { Event } from "../../models"; -import type { MutationCreateEventArgs } from "../../types/generatedGraphQLTypes"; - -export async function generateEvent( - args: Partial, - currentUser: InterfaceUser, - organization: InterfaceOrganization, - session: mongoose.ClientSession -): Promise> { - const createdEvent = await Event.create( - [ - { - ...args.data, - creatorId: currentUser._id, - admins: [currentUser._id], - organization: organization._id, - }, - ], - { session } - ); - - return createdEvent; -} diff --git a/src/helpers/eventInstances/weekly.ts b/src/helpers/eventInstances/weekly.ts deleted file mode 100644 index 716fb7dcc3..0000000000 --- a/src/helpers/eventInstances/weekly.ts +++ /dev/null @@ -1,53 +0,0 @@ -import type mongoose from "mongoose"; -import type { - InterfaceEvent, - InterfaceOrganization, - InterfaceUser, -} from "../../models"; -import { Event } from "../../models"; -import type { MutationCreateEventArgs } from "../../types/generatedGraphQLTypes"; -import { eachDayOfInterval, format } from "date-fns"; - -interface InterfaceRecurringEvent extends MutationCreateEventArgs { - startDate: Date; - creatorId: mongoose.Types.ObjectId; - admins: mongoose.Types.ObjectId[]; - organization: mongoose.Types.ObjectId; -} - -export async function generateEvents( - args: Partial, - currentUser: InterfaceUser, - organization: InterfaceOrganization, - session: mongoose.ClientSession -): Promise { - const recurringEvents: InterfaceRecurringEvent[] = []; - const { data } = args; - - const startDate = new Date(data?.startDate); - const endDate = new Date(data?.endDate); - - const allDays = eachDayOfInterval({ start: startDate, end: endDate }); - const occurrences = allDays.filter( - (date) => date.getDay() === startDate.getDay() - ); - - occurrences.map((date) => { - const formattedDate = format(date, "yyyy-MM-dd"); - - const createdEvent = { - ...data, - startDate: new Date(formattedDate), - creatorId: currentUser._id, - admins: [currentUser._id], - organization: organization._id, - }; - - recurringEvents.push(createdEvent); - }); - - //Bulk insertion in database - const weeklyEvents = await Event.insertMany(recurringEvents, { session }); - - return Array.isArray(weeklyEvents) ? weeklyEvents : [weeklyEvents]; -} diff --git a/src/index.ts b/src/index.ts index 68a369e19b..593ad34d0b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -46,14 +46,14 @@ const httpServer = cert: fs.readFileSync(path.join(__dirname, "../cert.pem")), }, // :{} - app + app, ) : http.createServer(app); const server = new ApolloServer({ schema, formatError: ( - error: any + error: any, ): { message: string; status: number; data: string[] } => { if (!error.originalError) { return error; @@ -99,7 +99,7 @@ const wsServer = new WebSocketServer({ const serverCleanup = useServer( // eslint-disable-next-line @typescript-eslint/no-unused-vars { schema, context: (_ctx, _msg, _args) => ({ pubsub }) }, - wsServer + wsServer, ); async function startServer(): Promise { @@ -117,12 +117,12 @@ async function startServer(): Promise { pubsub, apiRootUrl: `${req.protocol}://${req.get("host")}/`, }), - }) + }), ); // Modified server startup await new Promise((resolve) => - httpServer.listen({ port: 4000 }, resolve) + httpServer.listen({ port: 4000 }, resolve), ); // Log all the configuration related issues @@ -131,7 +131,7 @@ async function startServer(): Promise { logger.info( `🚀 Server ready at ${ process.env.NODE_ENV === "production" ? "https" : "http" - }://localhost:4000/graphql` + }://localhost:4000/graphql`, ); logger.info(`🚀 Subscription endpoint ready at ws://localhost:4000/graphql`); } diff --git a/src/libraries/dbLogger.ts b/src/libraries/dbLogger.ts index bf2b224909..65a76bf943 100644 --- a/src/libraries/dbLogger.ts +++ b/src/libraries/dbLogger.ts @@ -39,7 +39,7 @@ export interface InterfaceLoggableQuery extends Query { export function createLoggingMiddleware( schema: Schema, - modelName: string + modelName: string, ): void { if (!dbLogger) { return; @@ -47,7 +47,7 @@ export function createLoggingMiddleware( const logAction = ( type: TransactionLogTypes, - thisContext?: InterfaceLoggableQuery + thisContext?: InterfaceLoggableQuery, ): TransactionLogInfo => { return { timestamp: new Date().toISOString(), diff --git a/src/libraries/errors/ImageSizeLimitExceeded.ts b/src/libraries/errors/ImageSizeLimitExceeded.ts index 7daf08b902..efbb92db6d 100644 --- a/src/libraries/errors/ImageSizeLimitExceeded.ts +++ b/src/libraries/errors/ImageSizeLimitExceeded.ts @@ -7,7 +7,7 @@ export class ImageSizeLimitExceeded extends ApplicationError { message = "Image Size Limit Exceeded", code: string | null = null, param: string | null = null, - metadata: Record = {} + metadata: Record = {}, ) { const errorJson = [ { diff --git a/src/libraries/errors/conflictError.ts b/src/libraries/errors/conflictError.ts index 0cd75755be..8de09db275 100644 --- a/src/libraries/errors/conflictError.ts +++ b/src/libraries/errors/conflictError.ts @@ -7,7 +7,7 @@ export class ConflictError extends ApplicationError { message = "Conflicting entry found", code: string | null = null, param: string | null = null, - metadata: Record = {} + metadata: Record = {}, ) { const errorJson = [ { diff --git a/src/libraries/errors/inputValidationError.ts b/src/libraries/errors/inputValidationError.ts index 2f1afd1b47..7055169c12 100644 --- a/src/libraries/errors/inputValidationError.ts +++ b/src/libraries/errors/inputValidationError.ts @@ -7,7 +7,7 @@ export class InputValidationError extends ApplicationError { message = "InputValidationError", code: string | null = null, param: string | null = null, - metadata: Record = {} + metadata: Record = {}, ) { const errorJson = [ { diff --git a/src/libraries/errors/internalServerError.ts b/src/libraries/errors/internalServerError.ts index fd32a7bce4..283d9ea407 100644 --- a/src/libraries/errors/internalServerError.ts +++ b/src/libraries/errors/internalServerError.ts @@ -7,7 +7,7 @@ export class InternalServerError extends ApplicationError { message = "Internal Server Error!", code: string | null = null, param: string | null = null, - metadata: Record = {} + metadata: Record = {}, ) { const errorJson = [ { diff --git a/src/libraries/errors/invalidFileTypeError.ts b/src/libraries/errors/invalidFileTypeError.ts index 4de379aafd..07bc726637 100644 --- a/src/libraries/errors/invalidFileTypeError.ts +++ b/src/libraries/errors/invalidFileTypeError.ts @@ -7,7 +7,7 @@ export class InvalidFileTypeError extends ApplicationError { message = "Invalid File Type", code: string | null = null, param: string | null = null, - metadata: Record = {} + metadata: Record = {}, ) { const errorJson = [ { diff --git a/src/libraries/errors/notFoundError.ts b/src/libraries/errors/notFoundError.ts index 89df18e516..1b5d04f9b2 100644 --- a/src/libraries/errors/notFoundError.ts +++ b/src/libraries/errors/notFoundError.ts @@ -7,7 +7,7 @@ export class NotFoundError extends ApplicationError { message = "Not Found", code: string | null = null, param: string | null = null, - metadata: Record = {} + metadata: Record = {}, ) { const errorJson = [ { diff --git a/src/libraries/errors/unauthenticatedError.ts b/src/libraries/errors/unauthenticatedError.ts index 9e3f1ec8cb..571c661eb0 100644 --- a/src/libraries/errors/unauthenticatedError.ts +++ b/src/libraries/errors/unauthenticatedError.ts @@ -7,7 +7,7 @@ export class UnauthenticatedError extends ApplicationError { message = "UnauthenticatedError", code: string | null = null, param: string | null = null, - metadata: Record = {} + metadata: Record = {}, ) { const errorJson = [ { diff --git a/src/libraries/errors/unauthorizedError.ts b/src/libraries/errors/unauthorizedError.ts index 7a6a972eb2..8482627c5e 100644 --- a/src/libraries/errors/unauthorizedError.ts +++ b/src/libraries/errors/unauthorizedError.ts @@ -7,7 +7,7 @@ export class UnauthorizedError extends ApplicationError { message = "UnauthorizedError", code: string | null = null, param: string | null = null, - metadata: Record = {} + metadata: Record = {}, ) { const errorJson = [ { diff --git a/src/libraries/logger.ts b/src/libraries/logger.ts index 0bdc28f247..194d627511 100644 --- a/src/libraries/logger.ts +++ b/src/libraries/logger.ts @@ -20,10 +20,10 @@ const formats = { .length === 0 ? "" : JSON.stringify( - _.omit(info, ["level", "message", "stack", "timestamp"]) + _.omit(info, ["level", "message", "stack", "timestamp"]), ) - } ${info.stack || ""}` - ) + } ${info.stack || ""}`, + ), ), non_colorized: combine( splat(), @@ -38,10 +38,10 @@ const formats = { .length === 0 ? "" : JSON.stringify( - _.omit(info, ["level", "message", "stack", "timestamp"]) + _.omit(info, ["level", "message", "stack", "timestamp"]), ) - } ${info.stack || ""}` - ) + } ${info.stack || ""}`, + ), ), }; diff --git a/src/libraries/requestContext.ts b/src/libraries/requestContext.ts index 8b29e504e5..e404cc2ebd 100644 --- a/src/libraries/requestContext.ts +++ b/src/libraries/requestContext.ts @@ -6,7 +6,7 @@ import i18n from "i18n"; import type { NextFunction, Request, Response } from "express"; export const requestContextNamespace = cls.createNamespace( - "talawa-request-context" + "talawa-request-context", ); clsBluebird(requestContextNamespace); diff --git a/src/libraries/requestTracing.ts b/src/libraries/requestTracing.ts index 20b01b0ad4..33aa61e69b 100644 --- a/src/libraries/requestTracing.ts +++ b/src/libraries/requestTracing.ts @@ -49,7 +49,7 @@ export const middleware = () => { export const trace = async ( tracingId: string, - method: () => T + method: () => T, ): Promise => { await requestTracingNamespace.runAndReturn(() => { setTracingId(tracingId || nanoid()); diff --git a/src/libraries/validators/validatePaginationArgs.ts b/src/libraries/validators/validatePaginationArgs.ts index 69751fce8e..9b431fd6bd 100644 --- a/src/libraries/validators/validatePaginationArgs.ts +++ b/src/libraries/validators/validatePaginationArgs.ts @@ -5,7 +5,7 @@ import type { } from "../../types/generatedGraphQLTypes"; export const validatePaginationArgs = ( - args: CursorPaginationInput + args: CursorPaginationInput, ): ConnectionError[] => { const connectionErrors: ConnectionError[] = []; diff --git a/src/libraries/validators/validateString.ts b/src/libraries/validators/validateString.ts index 30708145bf..eff049c5c1 100644 --- a/src/libraries/validators/validateString.ts +++ b/src/libraries/validators/validateString.ts @@ -1,6 +1,6 @@ export function isValidString( str: string, - maxLength: number + maxLength: number, ): { isLessThanMaxLength: boolean } { const isLessThanMaxLength: boolean = str.length < maxLength; return { diff --git a/src/middleware/isAuth.ts b/src/middleware/isAuth.ts index 410d90a3fb..f1cb943f19 100644 --- a/src/middleware/isAuth.ts +++ b/src/middleware/isAuth.ts @@ -56,7 +56,7 @@ export const isAuth = (request: Request): InterfaceAuthData => { return err; } return decoded; - } + }, ); // If there is an error decoded token would contain it if (decodedToken.name === "TokenExpiredError") { diff --git a/src/models/ActionItem.ts b/src/models/ActionItem.ts index d8832d579c..31f0324e2c 100644 --- a/src/models/ActionItem.ts +++ b/src/models/ActionItem.ts @@ -6,7 +6,7 @@ import type { InterfaceActionItemCategory } from "./ActionItemCategory"; import { MILLISECONDS_IN_A_WEEK } from "../constants"; /** - * This is an interface that represents a database(MongoDB) document for ActionItem. + * This is an interface that represents a database(MongoDB) document for ActionItem [test change]. */ export interface InterfaceActionItem { @@ -96,7 +96,7 @@ const actionItemSchema = new Schema( required: true, }, }, - { timestamps: true } + { timestamps: true }, ); const actionItemModel = (): Model => diff --git a/src/models/ActionItemCategory.ts b/src/models/ActionItemCategory.ts index 4110dfa88c..3660085c9c 100644 --- a/src/models/ActionItemCategory.ts +++ b/src/models/ActionItemCategory.ts @@ -49,18 +49,18 @@ const actionItemCategorySchema = new Schema( required: true, }, }, - { timestamps: true } + { timestamps: true }, ); actionItemCategorySchema.index( { organizationId: 1, name: 1 }, - { unique: true } + { unique: true }, ); const actionItemCategoryModel = (): Model => model( "ActionItemCategory", - actionItemCategorySchema + actionItemCategorySchema, ); // This syntax is needed to prevent Mongoose OverwriteModelError while running tests. diff --git a/src/models/Advertisement.ts b/src/models/Advertisement.ts index 2aacecf2e8..213ddabfeb 100644 --- a/src/models/Advertisement.ts +++ b/src/models/Advertisement.ts @@ -1,8 +1,9 @@ import type { Types, Model, PopulatedDoc } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** - * This is an interface that represents a database(MongoDB) document for Advertisement. + * This is an interface, that represents database - (MongoDB) document for Advertisement. */ export interface InterfaceAdvertisement { _id: Types.ObjectId; @@ -96,9 +97,11 @@ const advertisementSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(advertisementSchema, "Advertisement"); + const advertisementModel = (): Model => model("Advertisement", advertisementSchema); diff --git a/src/models/AgendaCategory.ts b/src/models/AgendaCategory.ts new file mode 100644 index 0000000000..1375141508 --- /dev/null +++ b/src/models/AgendaCategory.ts @@ -0,0 +1,66 @@ +import type { PopulatedDoc, Model, Types } from "mongoose"; +import { Schema, model, models } from "mongoose"; +import type { InterfaceOrganization } from "./Organization"; +import type { InterfaceUser } from "./User"; +/** + * This is an interface representing a document for an agenda category in the database (MongoDB). + */ +export interface InterfaceAgendaCategory { + _id: Types.ObjectId; // Unique identifier for the agenda category. + name: string; // Name of the agenda category. + description?: string; // Optional description of the agenda category. + organization: PopulatedDoc; // Reference to the organization associated with the agenda category. + createdBy: PopulatedDoc; // Reference to the user who created the agenda category. + updatedBy: PopulatedDoc; // Reference to the user who last updated the agenda category. +} + +/** + * This is the Mongoose schema for an agenda category. + * @param name - Name of the agenda category. + * @param description - Optional description of the agenda category. + * @param organization - Reference to the organization associated with the agenda category. + * @param createdBy - Reference to the user who created the agenda category. + * @param updatedBy - Reference to the user who last updated the agenda category. + * @param createdAt - Date when the agenda category was created. + * @param updatedAt - Date when the agenda category was last updated. + */ +export const AgendaCategorySchema = new Schema({ + name: { + type: String, + required: true, + trim: true, + }, + description: { + type: String, + trim: true, + }, + organizationId: { + type: Schema.Types.ObjectId, + ref: "Organization", + }, + createdBy: { + type: Schema.Types.ObjectId, + ref: "User", + required: true, + }, + updatedBy: { + type: Schema.Types.ObjectId, + ref: "User", + }, + createdAt: { + type: Date, + required: true, + default: Date.now, + }, + updatedAt: { + type: Date, + default: Date.now, + }, +}); + +const agendaCategoryModel = (): Model => + model("AgendaCategory", AgendaCategorySchema); + +// Check if the AgendaItem model is already defined, if not, create a new one +export const AgendaCategoryModel = (models.AgendaCategory || + agendaCategoryModel()) as ReturnType; diff --git a/src/models/CheckIn.ts b/src/models/CheckIn.ts index 05e2276b46..b13085fc57 100644 --- a/src/models/CheckIn.ts +++ b/src/models/CheckIn.ts @@ -8,6 +8,7 @@ import { type Model, } from "mongoose"; import { type InterfaceEventAttendee } from "./EventAttendee"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; export interface InterfaceCheckIn { _id: Types.ObjectId; @@ -48,7 +49,7 @@ const checkInSchema = new Schema( }, { timestamps: true, - } + }, ); // We will also create an index here for faster database querying @@ -56,6 +57,8 @@ checkInSchema.index({ eventAttendeeId: 1, }); +createLoggingMiddleware(checkInSchema, "CheckIn"); + const checkInModel = (): Model => model("CheckIn", checkInSchema); diff --git a/src/models/Comment.ts b/src/models/Comment.ts index dc78a65e7c..5eb8112852 100644 --- a/src/models/Comment.ts +++ b/src/models/Comment.ts @@ -2,6 +2,7 @@ import type { PopulatedDoc, Types, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceUser } from "./User"; import type { InterfacePost } from "./Post"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for a comment in the database(MongoDB). */ @@ -62,9 +63,11 @@ const commentSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(commentSchema, "Comment"); + const commentModel = (): Model => model("Comment", commentSchema); diff --git a/src/models/DirectChat.ts b/src/models/DirectChat.ts index 94b87c86bb..2f08a1e7a9 100644 --- a/src/models/DirectChat.ts +++ b/src/models/DirectChat.ts @@ -3,6 +3,7 @@ import { Schema, model, models } from "mongoose"; import type { InterfaceDirectChatMessage } from "./DirectChatMessage"; import type { InterfaceOrganization } from "./Organization"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for direct chat in the database(MongoDB). */ @@ -60,9 +61,11 @@ const directChatSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(directChatSchema, "DirectChat"); + const directChatModel = (): Model => model("DirectChat", directChatSchema); diff --git a/src/models/DirectChatMessage.ts b/src/models/DirectChatMessage.ts index 3453ceee0e..54ca87ee8d 100644 --- a/src/models/DirectChatMessage.ts +++ b/src/models/DirectChatMessage.ts @@ -2,6 +2,7 @@ import type { PopulatedDoc, Types, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceDirectChat } from "./DirectChat"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for a direct chat message in the database(MongoDB). */ @@ -55,13 +56,15 @@ const directChatMessageSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(directChatMessageSchema, "DirectChatMessage"); + const directChatMessageModel = (): Model => model( "DirectChatMessage", - directChatMessageSchema + directChatMessageSchema, ); // This syntax is needed to prevent Mongoose OverwriteModelError while running tests. diff --git a/src/models/Donation.ts b/src/models/Donation.ts index e8e2e5225f..ce94d0cf86 100644 --- a/src/models/Donation.ts +++ b/src/models/Donation.ts @@ -1,5 +1,6 @@ import type { Types, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for a donation in the database(MongoDB). */ @@ -53,9 +54,11 @@ const donationSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(donationSchema, "Donation"); + const donationModel = (): Model => model("Donation", donationSchema); diff --git a/src/models/EncodedImage.ts b/src/models/EncodedImage.ts index cf6535bcc1..23dcbe7dfd 100644 --- a/src/models/EncodedImage.ts +++ b/src/models/EncodedImage.ts @@ -1,5 +1,6 @@ import type { Types, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Encoded Image. */ @@ -31,6 +32,8 @@ const encodedImageSchema = new Schema({ }, }); +createLoggingMiddleware(encodedImageSchema, "EncodedImage"); + const encodedImageModel = (): Model => model("EncodedImage", encodedImageSchema); diff --git a/src/models/EncodedVideo.ts b/src/models/EncodedVideo.ts index 0f7faae98e..4cdf2f2ff7 100644 --- a/src/models/EncodedVideo.ts +++ b/src/models/EncodedVideo.ts @@ -1,5 +1,6 @@ import type { Types, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Encoded Video. */ @@ -31,6 +32,8 @@ const encodedVideoSchema = new Schema({ }, }); +createLoggingMiddleware(encodedVideoSchema, "EncodedVideo"); + const encodedVideoModel = (): Model => model("EncodedVideo", encodedVideoSchema); diff --git a/src/models/Event.ts b/src/models/Event.ts index 05b72ac0f5..09b75e2446 100644 --- a/src/models/Event.ts +++ b/src/models/Event.ts @@ -2,6 +2,8 @@ import type { Types, PopulatedDoc, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceOrganization } from "./Organization"; import type { InterfaceUser } from "./User"; +import type { InterfaceRecurrenceRule } from "./RecurrenceRule"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for an event in the database(MongoDB). @@ -15,6 +17,10 @@ export interface InterfaceEvent { latitude: number | undefined; longitude: number; recurring: boolean; + isRecurringEventException: boolean; + isBaseRecurringEvent: boolean; + recurrenceRuleId: PopulatedDoc; + baseRecurringEventId: PopulatedDoc; allDay: boolean; startDate: string; endDate: string | undefined; @@ -40,6 +46,10 @@ export interface InterfaceEvent { * @param latitude - Latitude * @param longitude - Longitude * @param recurring - Is the event recurring + * @param isRecurringEventException - Is the event an exception to the recurring pattern it was following + * @param isBaseRecurringEvent - Is the event a true recurring event that is used for generating new instances + * @param recurrenceRuleId - Id of the recurrence rule document containing the recurrence pattern for the event + * @param baseRecurringEventId - Id of the true recurring event used for generating this instance * @param allDay - Is the event occuring all day * @param startDate - Start Date * @param endDate - End date @@ -86,6 +96,26 @@ const eventSchema = new Schema( required: true, default: false, }, + isRecurringEventException: { + type: Boolean, + required: true, + default: false, + }, + isBaseRecurringEvent: { + type: Boolean, + required: true, + default: false, + }, + recurrenceRuleId: { + type: Schema.Types.ObjectId, + ref: "RecurrenceRule", + required: false, + }, + baseRecurringEventId: { + type: Schema.Types.ObjectId, + ref: "Event", + required: false, + }, allDay: { type: Boolean, required: true, @@ -96,29 +126,25 @@ const eventSchema = new Schema( }, endDate: { type: Date, - required: function (): () => boolean { - // @ts-ignore + required: function (this: InterfaceEvent): boolean { return !this.allDay; }, }, startTime: { type: Date, - required: function (): () => boolean { - // @ts-ignore + required: function (this: InterfaceEvent): boolean { return !this.allDay; }, }, endTime: { type: Date, - required: function (): () => boolean { - // @ts-ignore + required: function (this: InterfaceEvent): boolean { return !this.allDay; }, }, recurrance: { type: String, - required: function (): () => boolean { - // @ts-ignore + required: function (this: InterfaceEvent): boolean { return this.recurring; }, enum: ["ONCE", "DAILY", "WEEKLY", "MONTHLY", "YEARLY"], @@ -158,9 +184,11 @@ const eventSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(eventSchema, "Event"); + const eventModel = (): Model => model("Event", eventSchema); diff --git a/src/models/EventAttendee.ts b/src/models/EventAttendee.ts index 0e60088f17..ee9e8d6742 100644 --- a/src/models/EventAttendee.ts +++ b/src/models/EventAttendee.ts @@ -3,6 +3,7 @@ import { Schema, model, models } from "mongoose"; import type { InterfaceUser } from "./User"; import type { InterfaceEvent } from "./Event"; import type { InterfaceCheckIn } from "./CheckIn"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; export interface InterfaceEventAttendee { _id: Schema.Types.ObjectId; @@ -32,6 +33,8 @@ const eventAttendeeSchema = new Schema({ eventAttendeeSchema.index({ userId: 1, eventId: 1 }, { unique: true }); +createLoggingMiddleware(eventAttendeeSchema, "EventAttendee"); + const eventAttendeeModel = (): Model => model("EventAttendee", eventAttendeeSchema); diff --git a/src/models/EventVolunteer.ts b/src/models/EventVolunteer.ts new file mode 100644 index 0000000000..131173f68e --- /dev/null +++ b/src/models/EventVolunteer.ts @@ -0,0 +1,59 @@ +import type { PopulatedDoc, Document, Model, Types } from "mongoose"; +import { Schema, model, models } from "mongoose"; +import type { InterfaceUser } from "./User"; +import type { InterfaceEvent } from "./Event"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; + +export interface InterfaceEventVolunteer { + _id: Types.ObjectId; + createdAt: Date; + creatorId: PopulatedDoc; + eventId: PopulatedDoc; + isAssigned: boolean; + isInvited: boolean; + response: string; + updatedAt: Date; + userId: PopulatedDoc; +} + +const eventVolunteerSchema = new Schema( + { + creatorId: { + type: Schema.Types.ObjectId, + ref: "User", + required: true, + }, + eventId: { + type: Schema.Types.ObjectId, + ref: "Event", + }, + response: { + type: String, + enum: ["YES", "NO", null], + }, + isAssigned: { + type: Boolean, + }, + isInvited: { + type: Boolean, + }, + userId: { + type: Schema.Types.ObjectId, + ref: "User", + required: true, + }, + }, + { + timestamps: true, + }, +); + +// Enable logging on changes in EventVolunteer collection +createLoggingMiddleware(eventVolunteerSchema, "EventVolunteer"); + +const eventVolunteerModel = (): Model => + model("EventVolunteer", eventVolunteerSchema); + +// This syntax is needed to prevent Mongoose OverwriteModelError while running tests. +export const EventVolunteer = (models.EventVolunteer || + eventVolunteerModel()) as ReturnType; diff --git a/src/models/Feedback.ts b/src/models/Feedback.ts index 9ee07e88c8..6a8d00faa7 100644 --- a/src/models/Feedback.ts +++ b/src/models/Feedback.ts @@ -1,6 +1,7 @@ import type { Types, PopulatedDoc, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceEvent } from "./Event"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; export interface InterfaceFeedback { _id: Types.ObjectId; @@ -31,7 +32,7 @@ const feedbackSchema = new Schema( }, { timestamps: true, - } + }, ); // We will also create an index here for faster database querying @@ -39,6 +40,8 @@ feedbackSchema.index({ eventId: 1, }); +createLoggingMiddleware(feedbackSchema, "Feedback"); + const feedbackModel = (): Model => model("Feedback", feedbackSchema); diff --git a/src/models/File.ts b/src/models/File.ts index c8e286b61f..19fee53c83 100644 --- a/src/models/File.ts +++ b/src/models/File.ts @@ -1,6 +1,7 @@ import type { Types, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import { v4 as uuidv4 } from "uuid"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for a file in the database(MongoDB). */ @@ -55,9 +56,11 @@ const fileSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(fileSchema, "File"); + const fileModel = (): Model => model("File", fileSchema); diff --git a/src/models/Group.ts b/src/models/Group.ts index ac641c4a94..fd1acc6caf 100644 --- a/src/models/Group.ts +++ b/src/models/Group.ts @@ -2,6 +2,7 @@ import type { PopulatedDoc, Types, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceOrganization } from "./Organization"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for a group in the database(MongoDB). */ @@ -54,9 +55,11 @@ const groupSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(groupSchema, "Group"); + const groupModel = (): Model => model("Group", groupSchema); diff --git a/src/models/GroupChat.ts b/src/models/GroupChat.ts index 7d2f5fa68b..6e654ef2e2 100644 --- a/src/models/GroupChat.ts +++ b/src/models/GroupChat.ts @@ -3,6 +3,7 @@ import { Schema, model, models } from "mongoose"; import type { InterfaceGroupChatMessage } from "./GroupChatMessage"; import type { InterfaceOrganization } from "./Organization"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for a group chat in the database(MongoDB). */ @@ -66,9 +67,11 @@ const groupChatSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(groupChatSchema, "GroupChat"); + const groupChatModel = (): Model => model("GroupChat", groupChatSchema); diff --git a/src/models/GroupChatMessage.ts b/src/models/GroupChatMessage.ts index 378cb78442..639196e153 100644 --- a/src/models/GroupChatMessage.ts +++ b/src/models/GroupChatMessage.ts @@ -2,6 +2,7 @@ import type { Types, PopulatedDoc, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceGroupChat } from "./GroupChat"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Group Chat Message. */ @@ -48,9 +49,11 @@ const groupChatMessageSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(groupChatMessageSchema, "GroupChatMessage"); + const groupChatMessageModel = (): Model => model("GroupChatMessage", groupChatMessageSchema); diff --git a/src/models/ImageHash.ts b/src/models/ImageHash.ts index 217bfa5351..2dff1cb94e 100644 --- a/src/models/ImageHash.ts +++ b/src/models/ImageHash.ts @@ -1,5 +1,6 @@ import type { Types, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Image Hash. */ @@ -39,6 +40,8 @@ const imageHashSchema = new Schema({ }, }); +createLoggingMiddleware(imageHashSchema, "ImageHash"); + const imageHashModel = (): Model => model("ImageHash", imageHashSchema); diff --git a/src/models/Language.ts b/src/models/Language.ts index 68bcd671a6..a80a5e7f37 100644 --- a/src/models/Language.ts +++ b/src/models/Language.ts @@ -1,5 +1,6 @@ import type { Types, Document, PopulatedDoc, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database document. */ @@ -70,6 +71,8 @@ const languageSchema = new Schema({ }, }); +createLoggingMiddleware(languageSchema, "Language"); + const languageModel = (): Model => model("Language", languageSchema); diff --git a/src/models/MembershipRequest.ts b/src/models/MembershipRequest.ts index 6118a176cd..a9f23c804d 100644 --- a/src/models/MembershipRequest.ts +++ b/src/models/MembershipRequest.ts @@ -2,6 +2,7 @@ import type { PopulatedDoc, Types, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceOrganization } from "./Organization"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Membership Request. */ @@ -36,10 +37,12 @@ const membershipRequestSchema = new Schema({ }, }); +createLoggingMiddleware(membershipRequestSchema, "MembershipRequest"); + const membershipRequestModel = (): Model => model( "MembershipRequest", - membershipRequestSchema + membershipRequestSchema, ); // This syntax is needed to prevent Mongoose OverwriteModelError while running tests. diff --git a/src/models/Message.ts b/src/models/Message.ts index 5358903b01..53a2addaae 100644 --- a/src/models/Message.ts +++ b/src/models/Message.ts @@ -2,6 +2,7 @@ import type { PopulatedDoc, Types, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceGroup } from "./Group"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Message. */ @@ -60,9 +61,11 @@ const messageSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(messageSchema, "Message"); + const messageModel = (): Model => model("Message", messageSchema); diff --git a/src/models/MessageChat.ts b/src/models/MessageChat.ts index 48c6af48c2..2e337321b9 100644 --- a/src/models/MessageChat.ts +++ b/src/models/MessageChat.ts @@ -1,6 +1,7 @@ import type { PopulatedDoc, Types, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for a chat in the database(MongoDB). */ @@ -46,9 +47,11 @@ const messageChatSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(messageChatSchema, "MessageChat"); + const messageChatModel = (): Model => model("MessageChat", messageChatSchema); diff --git a/src/models/Organization.ts b/src/models/Organization.ts index 2ee482bea6..bfad10a779 100644 --- a/src/models/Organization.ts +++ b/src/models/Organization.ts @@ -5,6 +5,7 @@ import type { InterfaceMessage } from "./Message"; import type { InterfaceOrganizationCustomField } from "./OrganizationCustomField"; import type { InterfacePost } from "./Post"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Organization. */ @@ -174,9 +175,11 @@ const organizationSchema = new Schema( }, { timestamps: true, - } + }, ); +createLoggingMiddleware(organizationSchema, "Organization"); + const organizationModel = (): Model => model("Organization", organizationSchema); diff --git a/src/models/OrganizationCustomField.ts b/src/models/OrganizationCustomField.ts index 5559a55e6e..daeadb632f 100644 --- a/src/models/OrganizationCustomField.ts +++ b/src/models/OrganizationCustomField.ts @@ -1,5 +1,6 @@ import type { Model } from "mongoose"; import mongoose from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; export interface InterfaceOrganizationCustomField { _id: string; @@ -25,12 +26,17 @@ const organizationCustomFieldSchema = new mongoose.Schema({ }, }); +createLoggingMiddleware( + organizationCustomFieldSchema, + "OrganizationCustomField", +); + // Define and export the model directly const OrganizationCustomField: Model = mongoose.models.CustomField || mongoose.model( "CustomField", - organizationCustomFieldSchema + organizationCustomFieldSchema, ); export { OrganizationCustomField }; diff --git a/src/models/OrganizationTagUser.ts b/src/models/OrganizationTagUser.ts index c185b41532..6a7e791d6c 100644 --- a/src/models/OrganizationTagUser.ts +++ b/src/models/OrganizationTagUser.ts @@ -1,6 +1,7 @@ import type { PopulatedDoc, Types, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceOrganization } from "./Organization"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; export interface InterfaceOrganizationTagUser { _id: Types.ObjectId; @@ -32,13 +33,15 @@ const organizationTagUserSchema = new Schema({ organizationTagUserSchema.index( { organizationId: 1, parentOrganizationTagUserId: 1, name: 1 }, - { unique: true } + { unique: true }, ); +createLoggingMiddleware(organizationTagUserSchema, "OrganizationTagUser"); + const organizationTagUserModel = (): Model => model( "OrganizationTagUser", - organizationTagUserSchema + organizationTagUserSchema, ); // This syntax is needed to prevent Mongoose OverwriteModelError while running tests. diff --git a/src/models/Plugin.ts b/src/models/Plugin.ts index 9acb7a92e2..74a544ac66 100644 --- a/src/models/Plugin.ts +++ b/src/models/Plugin.ts @@ -1,5 +1,6 @@ import type { Types, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Plugin. */ @@ -40,6 +41,8 @@ const pluginSchema = new Schema({ ], }); +createLoggingMiddleware(pluginSchema, "Plugin"); + const pluginModel = (): Model => model("Plugin", pluginSchema); diff --git a/src/models/PluginField.ts b/src/models/PluginField.ts index 987d3dc997..44e73f180e 100644 --- a/src/models/PluginField.ts +++ b/src/models/PluginField.ts @@ -1,5 +1,6 @@ import type { Types, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Plugin Field. */ @@ -38,6 +39,8 @@ const pluginFieldSchema = new Schema({ }, }); +createLoggingMiddleware(pluginFieldSchema, "PluginField"); + const pluginFieldModel = (): Model => model("PluginField", pluginFieldSchema); diff --git a/src/models/Post.ts b/src/models/Post.ts index efcf27f415..8bccf6d58d 100644 --- a/src/models/Post.ts +++ b/src/models/Post.ts @@ -3,6 +3,7 @@ import { Schema, model, models } from "mongoose"; import mongoosePaginate from "mongoose-paginate-v2"; import type { InterfaceOrganization } from "./Organization"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface that represents a database(MongoDB) document for Post. */ @@ -92,13 +93,15 @@ const postSchema = new Schema( }, { timestamps: true, - } + }, ); postSchema.plugin(mongoosePaginate); postSchema.index({ organization: 1 }, { unique: false }); +createLoggingMiddleware(postSchema, "Post"); + const postModel = (): PaginateModel => model>("Post", postSchema); diff --git a/src/models/RecurrenceRule.ts b/src/models/RecurrenceRule.ts new file mode 100644 index 0000000000..c792d92061 --- /dev/null +++ b/src/models/RecurrenceRule.ts @@ -0,0 +1,101 @@ +import type { Types, PopulatedDoc, Document, Model } from "mongoose"; +import { Schema, model, models } from "mongoose"; +import type { InterfaceEvent } from "./Event"; + +/** + * This is an interface representing a document for a recurrence rule in the database(MongoDB). + */ + +export enum Frequency { + YEARLY = "YEARLY", + MONTHLY = "MONTHLY", + WEEKLY = "WEEKLY", + DAILY = "DAILY", +} + +export enum WeekDays { + SUNDAY = "SUNDAY", + MONDAY = "MONDAY", + TUESDAY = "TUESDAY", + WEDNESDAY = "WEDNESDAY", + THURSDAY = "THURSDAY", + FRIDAY = "FRIDAY", + SATURDAY = "SATURDAY", +} + +export interface InterfaceRecurrenceRule { + _id: Types.ObjectId; + organizationId: Types.ObjectId; + baseRecurringEventId: PopulatedDoc; + recurrenceRuleString: string; + startDate: Date; + endDate: Date; + frequency: Frequency; + count: number; + weekDays: WeekDays[]; + latestInstanceDate: Date; +} + +/** + * This is the Structure of the RecurringEvent + * @param organizationId - _id of the organization the evevnts following this recurrence rule belong to + * @param baseRecurringEventId - _id of the base event common to the recurrence pattern + * @param recurrenceRuleString - An rrule string representing the recurrence pattern + * @param startDate - Start date of the recurrence pattern (not necessarily the startDate of the first recurring instance) + * @param endDate - Start date of the recurrence pattern (not necessarily the startDate of the last recurring instance) + * @param frequency - Frequency of recurrence + * @param count - Number of recurring instances + * @param weekDays - Array containing the days of the week the recurring instance occurs + * @param latestInstanceDate - The startDate of the last recurring instance generated using this recurrence rule + */ + +const recurrenceRuleSchema = new Schema( + { + organizationId: { + type: Schema.Types.ObjectId, + ref: "Organization", + required: true, + }, + baseRecurringEventId: { + type: Schema.Types.ObjectId, + ref: "Event", + required: true, + }, + recurrenceRuleString: { + type: String, + required: true, + }, + startDate: { + type: Date, + required: true, + }, + endDate: { + type: Date, + required: false, + }, + frequency: { + type: String, + required: true, + enum: Object.values(Frequency), + }, + count: { + type: Number, + required: false, + }, + weekDays: { type: [String], required: true, enum: Object.values(WeekDays) }, + latestInstanceDate: { + type: Date, + required: true, + }, + }, + { + timestamps: true, + }, +); + +const recurrenceRuleModel = (): Model => + model("RecurrenceRule", recurrenceRuleSchema); + +// This syntax is needed to prevent Mongoose OverwriteModelError while running tests. +export const RecurrenceRule = (models.RecurrenceRule || + recurrenceRuleModel()) as ReturnType; diff --git a/src/models/SampleData.ts b/src/models/SampleData.ts index f6a4bf2b9f..388256cc6a 100644 --- a/src/models/SampleData.ts +++ b/src/models/SampleData.ts @@ -1,7 +1,8 @@ -import type { Model } from "mongoose"; +import type { Model, Document } from "mongoose"; import { Schema, model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; -export interface InterfaceSampleData { +export interface InterfaceSampleData extends Document { documentId: string; collectionName: "Organization" | "Post" | "Event" | "User" | "Plugin"; } @@ -18,6 +19,8 @@ const sampleDataSchema = new Schema({ }, }); +createLoggingMiddleware(sampleDataSchema, "SampleData"); + const sampleDataModel = (): Model => model("SampleData", sampleDataSchema); diff --git a/src/models/TagUser.ts b/src/models/TagUser.ts index 747b3ff480..078d8cd996 100644 --- a/src/models/TagUser.ts +++ b/src/models/TagUser.ts @@ -2,6 +2,7 @@ import type { PopulatedDoc, Types, Document, Model } from "mongoose"; import { Schema, model, models } from "mongoose"; import type { InterfaceOrganizationTagUser } from "./OrganizationTagUser"; import type { InterfaceUser } from "./User"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; export interface InterfaceTagUser { _id: Types.ObjectId; @@ -25,6 +26,8 @@ const tagUserSchema = new Schema({ tagUserSchema.index({ userId: 1, tagId: 1 }, { unique: true }); +createLoggingMiddleware(tagUserSchema, "TagUser"); + const tagUserModel = (): Model => model("TagUser", tagUserSchema); diff --git a/src/models/User.ts b/src/models/User.ts index 8f8eb098be..6d5d8b53d2 100644 --- a/src/models/User.ts +++ b/src/models/User.ts @@ -6,7 +6,6 @@ import type { InterfaceEvent } from "./Event"; import type { InterfaceMembershipRequest } from "./MembershipRequest"; import type { InterfaceOrganization } from "./Organization"; import { createLoggingMiddleware } from "../libraries/dbLogger"; -import { LOG } from "../constants"; /** * This is an interface that represents a database(MongoDB) document for User. @@ -278,7 +277,7 @@ const userSchema = new Schema( }, { timestamps: true, - } + }, ); userSchema.plugin(mongoosePaginate); diff --git a/src/models/UserCustomData.ts b/src/models/UserCustomData.ts index a079f18b67..1c90d57e69 100644 --- a/src/models/UserCustomData.ts +++ b/src/models/UserCustomData.ts @@ -1,5 +1,6 @@ import type { Model } from "mongoose"; import mongoose, { model, models } from "mongoose"; +import { createLoggingMiddleware } from "../libraries/dbLogger"; /** * This is an interface representing a document for custom field in the database(MongoDB). @@ -7,6 +8,7 @@ import mongoose, { model, models } from "mongoose"; export interface InterfaceUserCustomData { _id: string; organizationId: string; + // eslint-disable-next-line @typescript-eslint/no-explicit-any values: any; userId: string; } @@ -36,6 +38,8 @@ const userCustomDataSchema = new mongoose.Schema({ }, }); +createLoggingMiddleware(userCustomDataSchema, "UserCustomData"); + const userCustomData = (): Model => model("UserCustomData", userCustomDataSchema); diff --git a/src/models/index.ts b/src/models/index.ts index cd287b1ec9..30b902ddfe 100644 --- a/src/models/index.ts +++ b/src/models/index.ts @@ -9,6 +9,7 @@ export * from "./DirectChatMessage"; export * from "./Donation"; export * from "./Event"; export * from "./EventAttendee"; +export * from "./EventVolunteer"; export * from "./Feedback"; export * from "./File"; export * from "./Group"; @@ -27,3 +28,4 @@ export * from "./Post"; export * from "./SampleData"; export * from "./User"; export * from "./TagUser"; +export * from "./AgendaCategory"; diff --git a/src/models/userFamily.ts b/src/models/userFamily.ts new file mode 100644 index 0000000000..a9d8577ea4 --- /dev/null +++ b/src/models/userFamily.ts @@ -0,0 +1,56 @@ +import type { PopulatedDoc, Types, Document, Model } from "mongoose"; +import { Schema, model, models } from "mongoose"; +import type { InterfaceUser } from "./User"; +/** + * This is an interface that represents a database(MongoDB) document for Family. + */ + +export interface InterfaceUserFamily { + _id: Types.ObjectId; + title: string; + users: PopulatedDoc[]; + admins: PopulatedDoc[]; + creator: PopulatedDoc[]; +} + +/** + * @param title - Name of the user Family (type: String) + * Description: Name of the user Family. + */ + +/** + * @param users - Members associated with the user Family (type: String) + * Description: Members associated with the user Family. + */ +const userFamilySchema = new Schema({ + title: { + type: String, + required: true, + }, + users: [ + { + type: Schema.Types.ObjectId, + ref: "User", + required: true, + }, + ], + admins: [ + { + type: Schema.Types.ObjectId, + ref: "User", + required: true, + }, + ], + creator: { + type: Schema.Types.ObjectId, + ref: "User", + required: true, + }, +}); + +const userFamilyModel = (): Model => + model("UserFamily", userFamilySchema); + +// This syntax is needed to prevent Mongoose OverwriteModelError while running tests. +export const UserFamily = (models.UserFamily || + userFamilyModel()) as ReturnType; diff --git a/src/resolvers/ActionItemCategory/creator.ts b/src/resolvers/ActionItemCategory/creator.ts index b9d355ed0a..8ccffc6a6a 100644 --- a/src/resolvers/ActionItemCategory/creator.ts +++ b/src/resolvers/ActionItemCategory/creator.ts @@ -2,7 +2,7 @@ import type { ActionItemCategoryResolvers } from "../../types/generatedGraphQLTy import { User } from "../../models"; export const creator: ActionItemCategoryResolvers["creator"] = async ( - parent + parent, ) => { return User.findOne({ _id: parent.creatorId, diff --git a/src/resolvers/ActionItemCategory/organization.ts b/src/resolvers/ActionItemCategory/organization.ts index 98fcb42897..3981d6cb65 100644 --- a/src/resolvers/ActionItemCategory/organization.ts +++ b/src/resolvers/ActionItemCategory/organization.ts @@ -2,7 +2,7 @@ import type { ActionItemCategoryResolvers } from "../../types/generatedGraphQLTy import { Organization } from "../../models"; export const organization: ActionItemCategoryResolvers["organization"] = async ( - parent + parent, ) => { return Organization.findOne({ _id: parent.organizationId, diff --git a/src/resolvers/AgendaCategory/createdBy.ts b/src/resolvers/AgendaCategory/createdBy.ts new file mode 100644 index 0000000000..471026134d --- /dev/null +++ b/src/resolvers/AgendaCategory/createdBy.ts @@ -0,0 +1,8 @@ +import type { AgendaCategoryResolvers } from "../../types/generatedGraphQLTypes"; +import { User } from "../../models"; + +export const createdBy: AgendaCategoryResolvers["createdBy"] = async ( + parent, +) => { + return User.findOne(parent.createdBy).lean(); +}; diff --git a/src/resolvers/AgendaCategory/index.ts b/src/resolvers/AgendaCategory/index.ts new file mode 100644 index 0000000000..69dd5e3a52 --- /dev/null +++ b/src/resolvers/AgendaCategory/index.ts @@ -0,0 +1,10 @@ +import type { AgendaCategoryResolvers } from "../../types/generatedGraphQLTypes"; +import { organization } from "./organization"; +import { createdBy } from "./createdBy"; +import { updatedBy } from "./updatedBy"; + +export const ActionItemCategory: AgendaCategoryResolvers = { + organization, + createdBy, + updatedBy, +}; diff --git a/src/resolvers/AgendaCategory/organization.ts b/src/resolvers/AgendaCategory/organization.ts new file mode 100644 index 0000000000..e46e467a4f --- /dev/null +++ b/src/resolvers/AgendaCategory/organization.ts @@ -0,0 +1,8 @@ +import type { AgendaCategoryResolvers } from "../../types/generatedGraphQLTypes"; +import { Organization } from "../../models"; + +export const organization: AgendaCategoryResolvers["organization"] = async ( + parent, +) => { + return Organization.findOne(parent.organization).lean(); +}; diff --git a/src/resolvers/AgendaCategory/updatedBy.ts b/src/resolvers/AgendaCategory/updatedBy.ts new file mode 100644 index 0000000000..12bf122f8b --- /dev/null +++ b/src/resolvers/AgendaCategory/updatedBy.ts @@ -0,0 +1,8 @@ +import type { AgendaCategoryResolvers } from "../../types/generatedGraphQLTypes"; +import { User } from "../../models"; + +export const updatedBy: AgendaCategoryResolvers["updatedBy"] = async ( + parent, +) => { + return User.findOne(parent.updatedBy).lean(); +}; diff --git a/src/resolvers/DirectChat/organization.ts b/src/resolvers/DirectChat/organization.ts index b03f7ded3d..ac1ec7ee8f 100644 --- a/src/resolvers/DirectChat/organization.ts +++ b/src/resolvers/DirectChat/organization.ts @@ -8,7 +8,7 @@ import type { DirectChatResolvers } from "../../types/generatedGraphQLTypes"; * @returns An `object` that contains Organization data. */ export const organization: DirectChatResolvers["organization"] = async ( - parent + parent, ) => { const organizationFoundInCache = await findOrganizationsInCache([ parent.organization, diff --git a/src/resolvers/DirectChatMessage/receiver.ts b/src/resolvers/DirectChatMessage/receiver.ts index c00ee78029..ac565f8497 100644 --- a/src/resolvers/DirectChatMessage/receiver.ts +++ b/src/resolvers/DirectChatMessage/receiver.ts @@ -6,7 +6,7 @@ import { User } from "../../models"; * @returns An `object` that contains User's data. */ export const receiver: DirectChatMessageResolvers["receiver"] = async ( - parent + parent, ) => { return await User.findOne({ _id: parent.receiver, diff --git a/src/resolvers/Event/attendees.ts b/src/resolvers/Event/attendees.ts index e057ae09b0..547bf38b61 100644 --- a/src/resolvers/Event/attendees.ts +++ b/src/resolvers/Event/attendees.ts @@ -9,6 +9,6 @@ export const attendees: EventResolvers["attendees"] = async (parent) => { .lean(); return eventAttendeeObjects.map( - (eventAttendeeObject) => eventAttendeeObject.userId + (eventAttendeeObject) => eventAttendeeObject.userId, ); }; diff --git a/src/resolvers/Event/averageFeedbackScore.ts b/src/resolvers/Event/averageFeedbackScore.ts index 7b6818ec6b..087eca38e9 100644 --- a/src/resolvers/Event/averageFeedbackScore.ts +++ b/src/resolvers/Event/averageFeedbackScore.ts @@ -14,7 +14,7 @@ export const averageFeedbackScore: EventResolvers["averageFeedbackScore"] = // Return the average feedback score const sum = feedbacks.reduce( (accumulator, feedback) => accumulator + feedback.rating, - 0 + 0, ); return sum / feedbacks.length; }; diff --git a/src/resolvers/EventVolunteer/creator.ts b/src/resolvers/EventVolunteer/creator.ts new file mode 100644 index 0000000000..3167c28cfd --- /dev/null +++ b/src/resolvers/EventVolunteer/creator.ts @@ -0,0 +1,8 @@ +import { User } from "../../models"; +import type { EventVolunteerResolvers } from "../../types/generatedGraphQLTypes"; + +export const creator: EventVolunteerResolvers["creator"] = async (parent) => { + return await User.findOne({ + _id: parent.creatorId, + }).lean(); +}; diff --git a/src/resolvers/EventVolunteer/event.ts b/src/resolvers/EventVolunteer/event.ts new file mode 100644 index 0000000000..61f67ac48e --- /dev/null +++ b/src/resolvers/EventVolunteer/event.ts @@ -0,0 +1,8 @@ +import { Event } from "../../models"; +import type { EventVolunteerResolvers } from "../../types/generatedGraphQLTypes"; + +export const event: EventVolunteerResolvers["event"] = async (parent) => { + return await Event.findOne({ + _id: parent.eventId, + }).lean(); +}; diff --git a/src/resolvers/EventVolunteer/index.ts b/src/resolvers/EventVolunteer/index.ts new file mode 100644 index 0000000000..73e9e822e4 --- /dev/null +++ b/src/resolvers/EventVolunteer/index.ts @@ -0,0 +1,10 @@ +import type { EventVolunteerResolvers } from "../../types/generatedGraphQLTypes"; +import { event } from "./event"; +import { creator } from "./creator"; +import { user } from "./user"; + +export const EventVolunteer: EventVolunteerResolvers = { + creator, + event, + user, +}; diff --git a/src/resolvers/EventVolunteer/user.ts b/src/resolvers/EventVolunteer/user.ts new file mode 100644 index 0000000000..00f73c6e45 --- /dev/null +++ b/src/resolvers/EventVolunteer/user.ts @@ -0,0 +1,8 @@ +import { User } from "../../models"; +import type { EventVolunteerResolvers } from "../../types/generatedGraphQLTypes"; + +export const user: EventVolunteerResolvers["user"] = async (parent) => { + return await User.findOne({ + _id: parent.userId, + }).lean(); +}; diff --git a/src/resolvers/GroupChat/organization.ts b/src/resolvers/GroupChat/organization.ts index 35c33c705c..ed0480e4d3 100644 --- a/src/resolvers/GroupChat/organization.ts +++ b/src/resolvers/GroupChat/organization.ts @@ -8,7 +8,7 @@ import { findOrganizationsInCache } from "../../services/OrganizationCache/findO * @returns An `object` that contains the organization data. */ export const organization: GroupChatResolvers["organization"] = async ( - parent + parent, ) => { const organizationFoundInCache = await findOrganizationsInCache([ parent.organization, diff --git a/src/resolvers/MembershipRequest/organization.ts b/src/resolvers/MembershipRequest/organization.ts index 1b0c58ac6a..a80b14540c 100644 --- a/src/resolvers/MembershipRequest/organization.ts +++ b/src/resolvers/MembershipRequest/organization.ts @@ -6,7 +6,7 @@ import { Organization } from "../../models"; * @returns An object that contains the Organization data. */ export const organization: MembershipRequestResolvers["organization"] = async ( - parent + parent, ) => { return Organization.findOne({ _id: parent.organization, diff --git a/src/resolvers/Mutation/acceptAdmin.ts b/src/resolvers/Mutation/acceptAdmin.ts index 109a1476f3..b75ef16070 100644 --- a/src/resolvers/Mutation/acceptAdmin.ts +++ b/src/resolvers/Mutation/acceptAdmin.ts @@ -8,14 +8,14 @@ import { superAdminCheck } from "../../utilities/superAdminCheck"; * @param _parent - parent of current request * @param args - payload provided with the request * @param context - context of entire application - * @remarks THe following checks are done: + * @remarks The following checks are done: * 1. Whether the user exists * 2. Whether the user accepting the admin request is a superadmin or not. */ export const acceptAdmin: MutationResolvers["acceptAdmin"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -25,7 +25,7 @@ export const acceptAdmin: MutationResolvers["acceptAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -39,7 +39,7 @@ export const acceptAdmin: MutationResolvers["acceptAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -51,7 +51,7 @@ export const acceptAdmin: MutationResolvers["acceptAdmin"] = async ( $set: { adminApproved: true, }, - } + }, ); return true; diff --git a/src/resolvers/Mutation/acceptMembershipRequest.ts b/src/resolvers/Mutation/acceptMembershipRequest.ts index 18d650cd14..44394d143f 100644 --- a/src/resolvers/Mutation/acceptMembershipRequest.ts +++ b/src/resolvers/Mutation/acceptMembershipRequest.ts @@ -35,7 +35,7 @@ export const acceptMembershipRequest: MutationResolvers["acceptMembershipRequest throw new errors.NotFoundError( requestContext.translate(MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.MESSAGE), MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.CODE, - MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.PARAM + MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.PARAM, ); } @@ -46,7 +46,7 @@ export const acceptMembershipRequest: MutationResolvers["acceptMembershipRequest throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -57,7 +57,7 @@ export const acceptMembershipRequest: MutationResolvers["acceptMembershipRequest throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -65,7 +65,7 @@ export const acceptMembershipRequest: MutationResolvers["acceptMembershipRequest await adminCheck(context.userId, organization); const userIsOrganizationMember = organization.members.some( - (member: Types.ObjectId) => member.equals(user?._id) + (member: Types.ObjectId) => member.equals(user?._id), ); // Checks whether user is already a member of organization. @@ -73,7 +73,7 @@ export const acceptMembershipRequest: MutationResolvers["acceptMembershipRequest throw new errors.ConflictError( requestContext.translate(USER_ALREADY_MEMBER_ERROR.MESSAGE), USER_ALREADY_MEMBER_ERROR.CODE, - USER_ALREADY_MEMBER_ERROR.PARAM + USER_ALREADY_MEMBER_ERROR.PARAM, ); } @@ -97,7 +97,7 @@ export const acceptMembershipRequest: MutationResolvers["acceptMembershipRequest }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -116,7 +116,7 @@ export const acceptMembershipRequest: MutationResolvers["acceptMembershipRequest $pull: { membershipRequests: membershipRequest._id, }, - } + }, ); return membershipRequest; diff --git a/src/resolvers/Mutation/addEventAttendee.ts b/src/resolvers/Mutation/addEventAttendee.ts index 955eb3da69..5ad788b669 100644 --- a/src/resolvers/Mutation/addEventAttendee.ts +++ b/src/resolvers/Mutation/addEventAttendee.ts @@ -15,7 +15,7 @@ import { Types } from "mongoose"; export const addEventAttendee: MutationResolvers["addEventAttendee"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -25,7 +25,7 @@ export const addEventAttendee: MutationResolvers["addEventAttendee"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -49,20 +49,20 @@ export const addEventAttendee: MutationResolvers["addEventAttendee"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } const isUserEventAdmin = event.admins.some( (admin) => - admin === context.userID || Types.ObjectId(admin).equals(context.userId) + admin === context.userID || Types.ObjectId(admin).equals(context.userId), ); if (!isUserEventAdmin && currentUser.userType !== "SUPERADMIN") { throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -74,7 +74,7 @@ export const addEventAttendee: MutationResolvers["addEventAttendee"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -86,7 +86,7 @@ export const addEventAttendee: MutationResolvers["addEventAttendee"] = async ( throw new errors.ConflictError( requestContext.translate(USER_ALREADY_REGISTERED_FOR_EVENT.MESSAGE), USER_ALREADY_REGISTERED_FOR_EVENT.CODE, - USER_ALREADY_REGISTERED_FOR_EVENT.PARAM + USER_ALREADY_REGISTERED_FOR_EVENT.PARAM, ); } diff --git a/src/resolvers/Mutation/addFeedback.ts b/src/resolvers/Mutation/addFeedback.ts index 1b34340f22..8923e63dfb 100644 --- a/src/resolvers/Mutation/addFeedback.ts +++ b/src/resolvers/Mutation/addFeedback.ts @@ -11,7 +11,7 @@ import { Event, EventAttendee, CheckIn, Feedback } from "../../models"; export const addFeedback: MutationResolvers["addFeedback"] = async ( _parent, args, - context + context, ) => { const currentEventExists = await Event.exists({ _id: args.data.eventId, @@ -21,7 +21,7 @@ export const addFeedback: MutationResolvers["addFeedback"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } @@ -36,7 +36,7 @@ export const addFeedback: MutationResolvers["addFeedback"] = async ( throw new errors.ConflictError( requestContext.translate(USER_NOT_REGISTERED_FOR_EVENT.MESSAGE), USER_NOT_REGISTERED_FOR_EVENT.CODE, - USER_NOT_REGISTERED_FOR_EVENT.PARAM + USER_NOT_REGISTERED_FOR_EVENT.PARAM, ); } @@ -44,7 +44,7 @@ export const addFeedback: MutationResolvers["addFeedback"] = async ( throw new errors.ConflictError( requestContext.translate(USER_NOT_CHECKED_IN.MESSAGE), USER_NOT_CHECKED_IN.CODE, - USER_NOT_CHECKED_IN.PARAM + USER_NOT_CHECKED_IN.PARAM, ); } @@ -52,7 +52,7 @@ export const addFeedback: MutationResolvers["addFeedback"] = async ( throw new errors.ConflictError( requestContext.translate(FEEDBACK_ALREADY_SUBMITTED.MESSAGE), FEEDBACK_ALREADY_SUBMITTED.CODE, - FEEDBACK_ALREADY_SUBMITTED.PARAM + FEEDBACK_ALREADY_SUBMITTED.PARAM, ); } diff --git a/src/resolvers/Mutation/addLanguageTranslation.ts b/src/resolvers/Mutation/addLanguageTranslation.ts index 228194c7b1..c5c364124b 100644 --- a/src/resolvers/Mutation/addLanguageTranslation.ts +++ b/src/resolvers/Mutation/addLanguageTranslation.ts @@ -25,7 +25,7 @@ export const addLanguageTranslation: MutationResolvers["addLanguageTranslation"] throw new errors.ConflictError( requestContext.translate(TRANSLATION_ALREADY_PRESENT_ERROR.MESSAGE), TRANSLATION_ALREADY_PRESENT_ERROR.CODE, - TRANSLATION_ALREADY_PRESENT_ERROR.PARAM + TRANSLATION_ALREADY_PRESENT_ERROR.PARAM, ); } }); @@ -45,7 +45,7 @@ export const addLanguageTranslation: MutationResolvers["addLanguageTranslation"] }, { new: true, - } + }, ).lean(); } diff --git a/src/resolvers/Mutation/addOrganizationCustomField.ts b/src/resolvers/Mutation/addOrganizationCustomField.ts index af5eb832aa..3f7ee20558 100644 --- a/src/resolvers/Mutation/addOrganizationCustomField.ts +++ b/src/resolvers/Mutation/addOrganizationCustomField.ts @@ -32,7 +32,7 @@ export const addOrganizationCustomField: MutationResolvers["addOrganizationCusto throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -44,12 +44,12 @@ export const addOrganizationCustomField: MutationResolvers["addOrganizationCusto throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organization) => organization.equals(organization._id) + (organization) => organization.equals(organization._id), ); if ( @@ -58,7 +58,7 @@ export const addOrganizationCustomField: MutationResolvers["addOrganizationCusto throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -66,7 +66,7 @@ export const addOrganizationCustomField: MutationResolvers["addOrganizationCusto throw new errors.InputValidationError( requestContext.translate(CUSTOM_FIELD_NAME_MISSING.MESSAGE), CUSTOM_FIELD_NAME_MISSING.CODE, - CUSTOM_FIELD_NAME_MISSING.PARAM + CUSTOM_FIELD_NAME_MISSING.PARAM, ); } @@ -74,7 +74,7 @@ export const addOrganizationCustomField: MutationResolvers["addOrganizationCusto throw new errors.InputValidationError( requestContext.translate(CUSTOM_FIELD_TYPE_MISSING.MESSAGE), CUSTOM_FIELD_TYPE_MISSING.CODE, - CUSTOM_FIELD_TYPE_MISSING.PARAM + CUSTOM_FIELD_TYPE_MISSING.PARAM, ); } @@ -90,7 +90,7 @@ export const addOrganizationCustomField: MutationResolvers["addOrganizationCusto { _id: organization._id }, { $push: { collectionFields: newCollectionField._id }, - } + }, ).lean(); return newCollectionField; diff --git a/src/resolvers/Mutation/addOrganizationImage.ts b/src/resolvers/Mutation/addOrganizationImage.ts index b466a82431..d6b95a1912 100644 --- a/src/resolvers/Mutation/addOrganizationImage.ts +++ b/src/resolvers/Mutation/addOrganizationImage.ts @@ -39,7 +39,7 @@ export const addOrganizationImage: MutationResolvers["addOrganizationImage"] = throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -49,7 +49,7 @@ export const addOrganizationImage: MutationResolvers["addOrganizationImage"] = // Upload Image const uploadImageFileName = await uploadEncodedImage( args.file, - organization.image + organization.image, ); // Updates the organization with new image and returns the updated organization. const updatedOrganization = await Organization.findOneAndUpdate( @@ -63,7 +63,7 @@ export const addOrganizationImage: MutationResolvers["addOrganizationImage"] = }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { diff --git a/src/resolvers/Mutation/addUserCustomData.ts b/src/resolvers/Mutation/addUserCustomData.ts index f752f8e1bc..47ff41d982 100644 --- a/src/resolvers/Mutation/addUserCustomData.ts +++ b/src/resolvers/Mutation/addUserCustomData.ts @@ -20,7 +20,7 @@ import { export const addUserCustomData: MutationResolvers["addUserCustomData"] = async ( _parent, args, - context + context, ) => { const { organizationId, dataName, dataValue } = args; @@ -29,7 +29,7 @@ export const addUserCustomData: MutationResolvers["addUserCustomData"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -38,7 +38,7 @@ export const addUserCustomData: MutationResolvers["addUserCustomData"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/addUserImage.ts b/src/resolvers/Mutation/addUserImage.ts index bade6c21e5..3bd0a66b8e 100644 --- a/src/resolvers/Mutation/addUserImage.ts +++ b/src/resolvers/Mutation/addUserImage.ts @@ -15,7 +15,7 @@ import { uploadEncodedImage } from "../../utilities/encodedImageStorage/uploadEn export const addUserImage: MutationResolvers["addUserImage"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -26,13 +26,13 @@ export const addUserImage: MutationResolvers["addUserImage"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const imageToUploadFilePath = await uploadEncodedImage( args.file, - currentUser.image + currentUser.image, ); // Updates the user with new image and returns the updated user. @@ -47,6 +47,6 @@ export const addUserImage: MutationResolvers["addUserImage"] = async ( }, { new: true, - } + }, ).lean(); }; diff --git a/src/resolvers/Mutation/addUserToGroupChat.ts b/src/resolvers/Mutation/addUserToGroupChat.ts index ad8b49981f..b72966ac54 100644 --- a/src/resolvers/Mutation/addUserToGroupChat.ts +++ b/src/resolvers/Mutation/addUserToGroupChat.ts @@ -35,7 +35,7 @@ export const addUserToGroupChat: MutationResolvers["addUserToGroupChat"] = throw new errors.NotFoundError( requestContext.translate(CHAT_NOT_FOUND_ERROR.MESSAGE), CHAT_NOT_FOUND_ERROR.CODE, - CHAT_NOT_FOUND_ERROR.PARAM + CHAT_NOT_FOUND_ERROR.PARAM, ); } @@ -59,7 +59,7 @@ export const addUserToGroupChat: MutationResolvers["addUserToGroupChat"] = throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -75,12 +75,12 @@ export const addUserToGroupChat: MutationResolvers["addUserToGroupChat"] = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const isUserGroupChatMember = groupChat.users.some((user) => - user.equals(args.userId) + user.equals(args.userId), ); // Checks whether user with _id === args.userId is already a member of groupChat. @@ -88,7 +88,7 @@ export const addUserToGroupChat: MutationResolvers["addUserToGroupChat"] = throw new errors.ConflictError( requestContext.translate(USER_ALREADY_MEMBER_ERROR.MESSAGE), USER_ALREADY_MEMBER_ERROR.CODE, - USER_ALREADY_MEMBER_ERROR.PARAM + USER_ALREADY_MEMBER_ERROR.PARAM, ); } @@ -104,6 +104,6 @@ export const addUserToGroupChat: MutationResolvers["addUserToGroupChat"] = }, { new: true, - } + }, ).lean(); }; diff --git a/src/resolvers/Mutation/addUserToUserFamily.ts b/src/resolvers/Mutation/addUserToUserFamily.ts new file mode 100644 index 0000000000..cb9cbe1dc0 --- /dev/null +++ b/src/resolvers/Mutation/addUserToUserFamily.ts @@ -0,0 +1,82 @@ +import "dotenv/config"; +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import { errors, requestContext } from "../../libraries"; +import { adminCheck } from "../../utilities/userFamilyAdminCheck"; +import { User } from "../../models"; +import { UserFamily } from "../../models/userFamily"; +import { + USER_FAMILY_NOT_FOUND_ERROR, + USER_ALREADY_MEMBER_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../constants"; +/** + * This function adds user to the family. + * @param _parent - parent of current request + * @param args - payload provided with the request + * @param context - context of the entire application + * @remarks The following checks are done: + * 1. If the family exists + * 2. If the user exists + * 3. If the user is already member of the family + * 4. If the user is admin of the user Family + * @returns Updated family + */ +export const addUserToUserFamily: MutationResolvers["addUserToUserFamily"] = + async (_parent, args, context) => { + const userFamily = await UserFamily.findOne({ + _id: args.familyId, + }).lean(); + + const currentUser = await User.findById({ + _id: context.userId, + }); + + // Checks whether user with _id === args.userId exists. + if (currentUser === null) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + //check wheather family exists + if (!userFamily) { + throw new errors.NotFoundError( + requestContext.translate(USER_FAMILY_NOT_FOUND_ERROR.MESSAGE), + USER_FAMILY_NOT_FOUND_ERROR.CODE, + USER_FAMILY_NOT_FOUND_ERROR.PARAM, + ); + } + + //check whether user is admin of the family + await adminCheck(currentUser?._id, userFamily); + + const isUserMemberOfUserFamily = userFamily.users.some((user) => { + user.equals(args.userId); + }); + + // Checks whether user with _id === args.userId is already a member of Family. + if (isUserMemberOfUserFamily) { + throw new errors.ConflictError( + requestContext.translate(USER_ALREADY_MEMBER_ERROR.MESSAGE), + USER_ALREADY_MEMBER_ERROR.CODE, + USER_ALREADY_MEMBER_ERROR.PARAM, + ); + } + + // Adds args.userId to users lists on family group and return the updated family. + return await UserFamily.findOneAndUpdate( + { + _id: args.familyId, + }, + { + $push: { + users: args.userId, + }, + }, + { + new: true, + }, + ).lean(); + }; diff --git a/src/resolvers/Mutation/adminRemoveEvent.ts b/src/resolvers/Mutation/adminRemoveEvent.ts index a2b17f472f..3449041403 100644 --- a/src/resolvers/Mutation/adminRemoveEvent.ts +++ b/src/resolvers/Mutation/adminRemoveEvent.ts @@ -27,7 +27,7 @@ import { deleteEventFromCache } from "../../services/EventCache/deleteEventFromC export const adminRemoveEvent: MutationResolvers["adminRemoveEvent"] = async ( _parent, args, - context + context, ) => { let event; @@ -50,7 +50,7 @@ export const adminRemoveEvent: MutationResolvers["adminRemoveEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } @@ -74,7 +74,7 @@ export const adminRemoveEvent: MutationResolvers["adminRemoveEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -87,7 +87,7 @@ export const adminRemoveEvent: MutationResolvers["adminRemoveEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -108,7 +108,7 @@ export const adminRemoveEvent: MutationResolvers["adminRemoveEvent"] = async ( createdEvents: event._id, registeredEvents: event._id, }, - } + }, ); // Deletes the event. diff --git a/src/resolvers/Mutation/adminRemoveGroup.ts b/src/resolvers/Mutation/adminRemoveGroup.ts index 0769b10f7f..8d1c39723f 100644 --- a/src/resolvers/Mutation/adminRemoveGroup.ts +++ b/src/resolvers/Mutation/adminRemoveGroup.ts @@ -25,7 +25,7 @@ import { cacheOrganizations } from "../../services/OrganizationCache/cacheOrgani export const adminRemoveGroup: MutationResolvers["adminRemoveGroup"] = async ( _parent, args, - context + context, ) => { const groupChat = await GroupChat.findOne({ _id: args.groupId, @@ -36,7 +36,7 @@ export const adminRemoveGroup: MutationResolvers["adminRemoveGroup"] = async ( throw new errors.NotFoundError( requestContext.translate(CHAT_NOT_FOUND_ERROR.MESSAGE), CHAT_NOT_FOUND_ERROR.CODE, - CHAT_NOT_FOUND_ERROR.PARAM + CHAT_NOT_FOUND_ERROR.PARAM, ); } @@ -61,7 +61,7 @@ export const adminRemoveGroup: MutationResolvers["adminRemoveGroup"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -74,7 +74,7 @@ export const adminRemoveGroup: MutationResolvers["adminRemoveGroup"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/assignUserTag.ts b/src/resolvers/Mutation/assignUserTag.ts index 1cd81c67c5..3e19aaf487 100644 --- a/src/resolvers/Mutation/assignUserTag.ts +++ b/src/resolvers/Mutation/assignUserTag.ts @@ -12,7 +12,7 @@ import { export const assignUserTag: MutationResolvers["assignUserTag"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -23,7 +23,7 @@ export const assignUserTag: MutationResolvers["assignUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -36,13 +36,13 @@ export const assignUserTag: MutationResolvers["assignUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(TAG_NOT_FOUND.MESSAGE), TAG_NOT_FOUND.CODE, - TAG_NOT_FOUND.PARAM + TAG_NOT_FOUND.PARAM, ); } // Boolean to determine whether user is an admin of organization of the tag. const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organization) => organization.equals(tag.organizationId) + (organization) => organization.equals(tag.organizationId), ); // Checks whether currentUser can assign the tag or not. @@ -53,7 +53,7 @@ export const assignUserTag: MutationResolvers["assignUserTag"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -66,23 +66,23 @@ export const assignUserTag: MutationResolvers["assignUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } // Check that the user to which the tag is to be assigned is a member of the tag's organization const requestUserBelongsToTagOrganization = requestUser.joinedOrganizations.some((organization) => - organization.equals(tag.organizationId) + organization.equals(tag.organizationId), ); if (!requestUserBelongsToTagOrganization) { throw new errors.UnauthorizedError( requestContext.translate( - USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.MESSAGE + USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.MESSAGE, ), USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.CODE, - USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.PARAM + USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.PARAM, ); } @@ -95,7 +95,7 @@ export const assignUserTag: MutationResolvers["assignUserTag"] = async ( throw new errors.ConflictError( requestContext.translate(USER_ALREADY_HAS_TAG.MESSAGE), USER_ALREADY_HAS_TAG.CODE, - USER_ALREADY_HAS_TAG.PARAM + USER_ALREADY_HAS_TAG.PARAM, ); } diff --git a/src/resolvers/Mutation/blockPluginCreationBySuperadmin.ts b/src/resolvers/Mutation/blockPluginCreationBySuperadmin.ts index b196752abb..17f2db8fd5 100644 --- a/src/resolvers/Mutation/blockPluginCreationBySuperadmin.ts +++ b/src/resolvers/Mutation/blockPluginCreationBySuperadmin.ts @@ -24,7 +24,7 @@ export const blockPluginCreationBySuperadmin: MutationResolvers["blockPluginCrea throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -46,6 +46,6 @@ export const blockPluginCreationBySuperadmin: MutationResolvers["blockPluginCrea }, { new: true, - } + }, ).lean(); }; diff --git a/src/resolvers/Mutation/blockUser.ts b/src/resolvers/Mutation/blockUser.ts index 9c3321bf9f..bd0efb8529 100644 --- a/src/resolvers/Mutation/blockUser.ts +++ b/src/resolvers/Mutation/blockUser.ts @@ -27,7 +27,7 @@ import { Types } from "mongoose"; export const blockUser: MutationResolvers["blockUser"] = async ( _parent, args, - context + context, ) => { let organization; @@ -50,7 +50,7 @@ export const blockUser: MutationResolvers["blockUser"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -63,21 +63,21 @@ export const blockUser: MutationResolvers["blockUser"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } // Check whether the user - args.userId is a member of the organization before blocking const userIsOrganizationMember = organization?.members.some( (member) => - member === args.userId || Types.ObjectId(member).equals(args.userId) + member === args.userId || Types.ObjectId(member).equals(args.userId), ); if (!userIsOrganizationMember) { throw new errors.NotFoundError( requestContext.translate(MEMBER_NOT_FOUND_ERROR.MESSAGE), MEMBER_NOT_FOUND_ERROR.CODE, - MEMBER_NOT_FOUND_ERROR.PARAM + MEMBER_NOT_FOUND_ERROR.PARAM, ); } @@ -85,7 +85,7 @@ export const blockUser: MutationResolvers["blockUser"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_BLOCKING_SELF.MESSAGE), USER_BLOCKING_SELF.CODE, - USER_BLOCKING_SELF.PARAM + USER_BLOCKING_SELF.PARAM, ); } @@ -93,7 +93,7 @@ export const blockUser: MutationResolvers["blockUser"] = async ( await adminCheck(context.userId, organization); const userIsBlocked = organization.blockedUsers.some((blockedUser) => - Types.ObjectId(blockedUser).equals(args.userId) + Types.ObjectId(blockedUser).equals(args.userId), ); // Checks whether user with _id === args.userId is already blocked from organization. @@ -101,7 +101,7 @@ export const blockUser: MutationResolvers["blockUser"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -117,7 +117,7 @@ export const blockUser: MutationResolvers["blockUser"] = async ( }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -139,7 +139,7 @@ export const blockUser: MutationResolvers["blockUser"] = async ( }, { new: true, - } + }, ) .select(["-password"]) .lean(); diff --git a/src/resolvers/Mutation/cancelMembershipRequest.ts b/src/resolvers/Mutation/cancelMembershipRequest.ts index b48d4a4930..9f4c9495cf 100644 --- a/src/resolvers/Mutation/cancelMembershipRequest.ts +++ b/src/resolvers/Mutation/cancelMembershipRequest.ts @@ -32,7 +32,7 @@ export const cancelMembershipRequest: MutationResolvers["cancelMembershipRequest throw new errors.NotFoundError( requestContext.translate(MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.MESSAGE), MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.CODE, - MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.PARAM + MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.PARAM, ); } @@ -57,7 +57,7 @@ export const cancelMembershipRequest: MutationResolvers["cancelMembershipRequest throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -70,12 +70,12 @@ export const cancelMembershipRequest: MutationResolvers["cancelMembershipRequest throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const currentUserCreatedMembershipRequest = currentUser._id.equals( - membershipRequest.user + membershipRequest.user, ); // Checks whether currentUser is the creator of membershipRequest. @@ -83,7 +83,7 @@ export const cancelMembershipRequest: MutationResolvers["cancelMembershipRequest throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -104,7 +104,7 @@ export const cancelMembershipRequest: MutationResolvers["cancelMembershipRequest }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -120,7 +120,7 @@ export const cancelMembershipRequest: MutationResolvers["cancelMembershipRequest $pull: { membershipRequests: membershipRequest._id, }, - } + }, ); // Returns the deleted membershipRequest. diff --git a/src/resolvers/Mutation/checkIn.ts b/src/resolvers/Mutation/checkIn.ts index 662d8cb704..4b01a2bea9 100644 --- a/src/resolvers/Mutation/checkIn.ts +++ b/src/resolvers/Mutation/checkIn.ts @@ -16,7 +16,7 @@ import { Types } from "mongoose"; export const checkIn: MutationResolvers["checkIn"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -26,7 +26,7 @@ export const checkIn: MutationResolvers["checkIn"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -50,20 +50,20 @@ export const checkIn: MutationResolvers["checkIn"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } const isUserEventAdmin = currentEvent.admins.some( (admin) => - admin === context.userID || Types.ObjectId(admin).equals(context.userId) + admin === context.userID || Types.ObjectId(admin).equals(context.userId), ); if (!isUserEventAdmin && currentUser.userType !== "SUPERADMIN") { throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -75,7 +75,7 @@ export const checkIn: MutationResolvers["checkIn"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -88,7 +88,7 @@ export const checkIn: MutationResolvers["checkIn"] = async ( throw new errors.ConflictError( requestContext.translate(USER_NOT_REGISTERED_FOR_EVENT.MESSAGE), USER_NOT_REGISTERED_FOR_EVENT.CODE, - USER_NOT_REGISTERED_FOR_EVENT.PARAM + USER_NOT_REGISTERED_FOR_EVENT.PARAM, ); } @@ -96,7 +96,7 @@ export const checkIn: MutationResolvers["checkIn"] = async ( throw new errors.ConflictError( requestContext.translate(USER_ALREADY_CHECKED_IN.MESSAGE), USER_ALREADY_CHECKED_IN.CODE, - USER_ALREADY_CHECKED_IN.PARAM + USER_ALREADY_CHECKED_IN.PARAM, ); } @@ -113,7 +113,7 @@ export const checkIn: MutationResolvers["checkIn"] = async ( }, { checkInId: checkIn._id, - } + }, ); return checkIn.toObject(); diff --git a/src/resolvers/Mutation/createActionItem.ts b/src/resolvers/Mutation/createActionItem.ts index c2ec83ff93..4362644704 100644 --- a/src/resolvers/Mutation/createActionItem.ts +++ b/src/resolvers/Mutation/createActionItem.ts @@ -32,7 +32,7 @@ import { Types } from "mongoose"; export const createActionItem: MutationResolvers["createActionItem"] = async ( _parent, args, - context + context, ): Promise => { const currentUser = await User.findOne({ _id: context.userId, @@ -43,7 +43,7 @@ export const createActionItem: MutationResolvers["createActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -56,7 +56,7 @@ export const createActionItem: MutationResolvers["createActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -69,7 +69,7 @@ export const createActionItem: MutationResolvers["createActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.MESSAGE), ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.CODE, - ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.PARAM + ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.PARAM, ); } @@ -77,7 +77,7 @@ export const createActionItem: MutationResolvers["createActionItem"] = async ( asigneeIsOrganizationMember = assignee.joinedOrganizations.some( (organizationId) => organizationId === actionItemCategory.organizationId || - Types.ObjectId(organizationId).equals(actionItemCategory.organizationId) + Types.ObjectId(organizationId).equals(actionItemCategory.organizationId), ); // Checks if the asignee is a member of the organization @@ -85,7 +85,7 @@ export const createActionItem: MutationResolvers["createActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_MEMBER_FOR_ORGANIZATION.MESSAGE), USER_NOT_MEMBER_FOR_ORGANIZATION.CODE, - USER_NOT_MEMBER_FOR_ORGANIZATION.PARAM + USER_NOT_MEMBER_FOR_ORGANIZATION.PARAM, ); } @@ -113,14 +113,15 @@ export const createActionItem: MutationResolvers["createActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } // Checks if the currUser is an admin of the event currentUserIsEventAdmin = currEvent.admins.some( (admin) => - admin === context.userID || Types.ObjectId(admin).equals(context.userId) + admin === context.userID || + Types.ObjectId(admin).equals(context.userId), ); } @@ -128,7 +129,7 @@ export const createActionItem: MutationResolvers["createActionItem"] = async ( const currentUserIsOrgAdmin = currentUser.adminFor.some( (ogranizationId) => ogranizationId === actionItemCategory.organizationId || - Types.ObjectId(ogranizationId).equals(actionItemCategory.organizationId) + Types.ObjectId(ogranizationId).equals(actionItemCategory.organizationId), ); // Checks whether currentUser with _id === context.userId is authorized for the operation. @@ -140,7 +141,7 @@ export const createActionItem: MutationResolvers["createActionItem"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/createActionItemCategory.ts b/src/resolvers/Mutation/createActionItemCategory.ts index 2df722f91a..aa66ce9e51 100644 --- a/src/resolvers/Mutation/createActionItemCategory.ts +++ b/src/resolvers/Mutation/createActionItemCategory.ts @@ -35,7 +35,7 @@ export const createActionItemCategory: MutationResolvers["createActionItemCatego throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -60,7 +60,7 @@ export const createActionItemCategory: MutationResolvers["createActionItemCatego throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -77,7 +77,7 @@ export const createActionItemCategory: MutationResolvers["createActionItemCatego throw new errors.ConflictError( requestContext.translate(ACTION_ITEM_CATEGORY_ALREADY_EXISTS.MESSAGE), ACTION_ITEM_CATEGORY_ALREADY_EXISTS.CODE, - ACTION_ITEM_CATEGORY_ALREADY_EXISTS.PARAM + ACTION_ITEM_CATEGORY_ALREADY_EXISTS.PARAM, ); } diff --git a/src/resolvers/Mutation/createAdmin.ts b/src/resolvers/Mutation/createAdmin.ts index 8a558a76ff..b7680979cf 100644 --- a/src/resolvers/Mutation/createAdmin.ts +++ b/src/resolvers/Mutation/createAdmin.ts @@ -27,7 +27,7 @@ import { Types } from "mongoose"; export const createAdmin: MutationResolvers["createAdmin"] = async ( _parent, args, - context + context, ) => { let organization; @@ -50,7 +50,7 @@ export const createAdmin: MutationResolvers["createAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } // Checks whether the current user is a superAdmin @@ -61,7 +61,7 @@ export const createAdmin: MutationResolvers["createAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } superAdminCheck(currentUser); @@ -75,12 +75,12 @@ export const createAdmin: MutationResolvers["createAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const userIsOrganizationMember = organization.members.some((member) => - Types.ObjectId(member).equals(args.data.userId) + Types.ObjectId(member).equals(args.data.userId), ); // Checks whether user with _id === args.data.userId is not a member of organization. @@ -88,12 +88,12 @@ export const createAdmin: MutationResolvers["createAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_MEMBER_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_MEMBER_NOT_FOUND_ERROR.CODE, - ORGANIZATION_MEMBER_NOT_FOUND_ERROR.PARAM + ORGANIZATION_MEMBER_NOT_FOUND_ERROR.PARAM, ); } const userIsOrganizationAdmin = organization.admins.some((admin) => - Types.ObjectId(admin).equals(args.data.userId) + Types.ObjectId(admin).equals(args.data.userId), ); // Checks whether user with _id === args.data.userId is already an admin of organization. @@ -101,7 +101,7 @@ export const createAdmin: MutationResolvers["createAdmin"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -117,7 +117,7 @@ export const createAdmin: MutationResolvers["createAdmin"] = async ( }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -139,7 +139,7 @@ export const createAdmin: MutationResolvers["createAdmin"] = async ( }, { new: true, - } + }, ) .select(["-password"]) .lean(); diff --git a/src/resolvers/Mutation/createAgendaCategory.ts b/src/resolvers/Mutation/createAgendaCategory.ts new file mode 100644 index 0000000000..84ed83bcb0 --- /dev/null +++ b/src/resolvers/Mutation/createAgendaCategory.ts @@ -0,0 +1,81 @@ +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import { errors, requestContext } from "../../libraries"; +import { AgendaCategoryModel, Organization, User } from "../../models"; +import { + USER_NOT_FOUND_ERROR, + ORGANIZATION_NOT_FOUND_ERROR, +} from "../../constants"; +import { adminCheck } from "../../utilities"; +import { cacheOrganizations } from "../../services/OrganizationCache/cacheOrganizations"; +import { findOrganizationsInCache } from "../../services/OrganizationCache/findOrganizationsInCache"; +/** + * This is a resolver function for the GraphQL mutation 'createAgendaCategory'. + * + * This resolver creates a new agenda category, associates it with an organization, + * and updates the organization with the new agenda category. + * + * @returns A promise that resolves to the created agenda category. + * @throws `NotFoundError` If the user or organization is not found. + * @throws `UnauthorizedError` If the user does not have the required permissions. + * @throws `InternalServerError` For other potential issues during agenda category creation. + */ + +export const createAgendaCategory: MutationResolvers["createAgendaCategory"] = + async (_parent, args, context) => { + // Find the current user based on the provided createdBy ID or use the context userId + + const userId = context.userId; + + const currentUser = await User.findById(userId).lean(); + + if (!currentUser) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + const organizationFoundInCache = await findOrganizationsInCache([ + args.input.organizationId, + ]); + + const organization = + organizationFoundInCache[0] || + (await Organization.findOne({ + _id: args.input.organizationId, + }).lean()); + + if (organizationFoundInCache[0] == null && organization) { + await cacheOrganizations([organization]); + } + + // Checks whether the organization with _id === args.organizationId exists. + if (!organization) { + throw new errors.NotFoundError( + requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), + ORGANIZATION_NOT_FOUND_ERROR.CODE, + ORGANIZATION_NOT_FOUND_ERROR.PARAM, + ); + } + + // Checks whether the user is authorized to perform the operation + await adminCheck(context.userId, organization); + + // Create a new AgendaCategory using the Mongoose model + const createdAgendaCategory = await AgendaCategoryModel.create({ + ...args.input, + createdBy: currentUser?._id, + createdAt: new Date(), + }); + await Organization.findByIdAndUpdate( + organization._id, + { + $push: { + agendaCategories: createdAgendaCategory, + }, + }, + { new: true }, + ); + return createdAgendaCategory.toObject(); + }; diff --git a/src/resolvers/Mutation/createComment.ts b/src/resolvers/Mutation/createComment.ts index 32495a6c79..44521a12c8 100644 --- a/src/resolvers/Mutation/createComment.ts +++ b/src/resolvers/Mutation/createComment.ts @@ -17,7 +17,7 @@ import { cachePosts } from "../../services/PostCache/cachePosts"; export const createComment: MutationResolvers["createComment"] = async ( _parent, args, - context + context, ) => { // Check if the provided post exists const postExists = await Post.exists({ @@ -28,7 +28,7 @@ export const createComment: MutationResolvers["createComment"] = async ( throw new errors.NotFoundError( requestContext.translate(POST_NOT_FOUND_ERROR.MESSAGE), POST_NOT_FOUND_ERROR.CODE, - POST_NOT_FOUND_ERROR.PARAM + POST_NOT_FOUND_ERROR.PARAM, ); } @@ -53,7 +53,7 @@ export const createComment: MutationResolvers["createComment"] = async ( }, { new: true, - } + }, ); if (updatedPost !== null) { diff --git a/src/resolvers/Mutation/createDirectChat.ts b/src/resolvers/Mutation/createDirectChat.ts index 9c32226364..7eec05be77 100644 --- a/src/resolvers/Mutation/createDirectChat.ts +++ b/src/resolvers/Mutation/createDirectChat.ts @@ -20,7 +20,7 @@ import { cacheOrganizations } from "../../services/OrganizationCache/cacheOrgani export const createDirectChat: MutationResolvers["createDirectChat"] = async ( _parent, args, - context + context, ) => { let organization; @@ -43,7 +43,7 @@ export const createDirectChat: MutationResolvers["createDirectChat"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -61,7 +61,7 @@ export const createDirectChat: MutationResolvers["createDirectChat"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/createDonation.ts b/src/resolvers/Mutation/createDonation.ts index 58f17a436a..d082f85bb1 100644 --- a/src/resolvers/Mutation/createDonation.ts +++ b/src/resolvers/Mutation/createDonation.ts @@ -10,7 +10,7 @@ import { Donation } from "../../models"; */ export const createDonation: MutationResolvers["createDonation"] = async ( _parent, - args + args, ) => { const createdDonation = await Donation.create({ amount: args.amount, diff --git a/src/resolvers/Mutation/createEvent.ts b/src/resolvers/Mutation/createEvent.ts index d05e10a43e..39fb395640 100644 --- a/src/resolvers/Mutation/createEvent.ts +++ b/src/resolvers/Mutation/createEvent.ts @@ -1,6 +1,6 @@ import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; import { errors, requestContext } from "../../libraries"; -import type { InterfaceEvent, InterfaceUser } from "../../models"; +import type { InterfaceEvent } from "../../models"; import { User, Organization } from "../../models"; import { USER_NOT_FOUND_ERROR, @@ -10,27 +10,30 @@ import { } from "../../constants"; import { isValidString } from "../../libraries/validators/validateString"; import { compareDates } from "../../libraries/validators/compareDates"; -import { EventAttendee } from "../../models/EventAttendee"; -import { cacheEvents } from "../../services/EventCache/cacheEvents"; -import type mongoose from "mongoose"; import { session } from "../../db"; -import { Weekly, Once } from "../../helpers/eventInstances"; +import { + createSingleEvent, + createRecurringEvent, +} from "../../helpers/event/createEventHelpers"; /** * This function enables to create an event. * @param _parent - parent of current request * @param args - payload provided with the request * @param context - context of entire application - * @remarks The following checks are done: - * 1. If the user exists - * 2. If the organization exists - * 3. If the user is a part of the organization. + * @remarks The following steps are followed: + * 1. Check if the user exists + * 2. Check if the organization exists + * 3. Check if the user is a part of the organization. + * 4. If the event is recurring, create the recurring event instances. + * 5. If the event is non-recurring, create a single event. * @returns Created event */ + export const createEvent: MutationResolvers["createEvent"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -41,7 +44,7 @@ export const createEvent: MutationResolvers["createEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -54,16 +57,16 @@ export const createEvent: MutationResolvers["createEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } const userCreatedOrganization = currentUser.createdOrganizations.some( - (createdOrganization) => createdOrganization.equals(organization._id) + (createdOrganization) => createdOrganization.equals(organization._id), ); const userJoinedOrganization = currentUser.joinedOrganizations.some( - (joinedOrganization) => joinedOrganization.equals(organization._id) + (joinedOrganization) => joinedOrganization.equals(organization._id), ); // Checks whether currentUser neither created nor joined the organization. @@ -77,7 +80,7 @@ export const createEvent: MutationResolvers["createEvent"] = async ( throw new errors.UnauthorizedError( requestContext.translate(ORGANIZATION_NOT_AUTHORIZED_ERROR.MESSAGE), ORGANIZATION_NOT_AUTHORIZED_ERROR.CODE, - ORGANIZATION_NOT_AUTHORIZED_ERROR.PARAM + ORGANIZATION_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -85,137 +88,89 @@ export const createEvent: MutationResolvers["createEvent"] = async ( const validationResultTitle = isValidString(args.data?.title ?? "", 256); const validationResultDescription = isValidString( args.data?.description ?? "", - 500 + 500, ); const validationResultLocation = isValidString(args.data?.location ?? "", 50); if (!validationResultTitle.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } if (!validationResultDescription.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } if (!validationResultLocation.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 50 characters in location` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 50 characters in location`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } const compareDatesResult = compareDates( args.data?.startDate, - args.data?.endDate + args.data?.endDate, ); if (compareDatesResult !== "") { throw new errors.InputValidationError( requestContext.translate(compareDatesResult), - compareDatesResult + compareDatesResult, ); } + /* c8 ignore start */ if (session) { + // start a transaction session.startTransaction(); } + /* c8 ignore stop */ try { - let createdEvent!: InterfaceEvent[]; - - if (args.data?.recurring) { - switch (args.data?.recurrance) { - case "ONCE": - createdEvent = await Once.generateEvent( - args, - currentUser, - organization, - session - ); - - for (const event of createdEvent) { - await associateEventWithUser(currentUser, event, session); - await cacheEvents([event]); - } - - break; - - case "WEEKLY": - createdEvent = await Weekly.generateEvents( - args, - currentUser, - organization, - session - ); - - for (const event of createdEvent) { - await associateEventWithUser(currentUser, event, session); - await cacheEvents([event]); - } - - break; - } + let createdEvent: InterfaceEvent; + + if (args.data.recurring) { + // create recurring event instances + createdEvent = await createRecurringEvent( + args, + currentUser?._id.toString(), + organization?._id.toString(), + session, + ); } else { - createdEvent = await Once.generateEvent( + // create a single non-recurring event + createdEvent = await createSingleEvent( args, - currentUser, - organization, - session + currentUser?._id.toString(), + organization?._id.toString(), + session, ); - - for (const event of createdEvent) { - await associateEventWithUser(currentUser, event, session); - await cacheEvents([event]); - } } + /* c8 ignore start */ if (session) { + // commit transaction if everything's successful await session.commitTransaction(); } - // Returns the createdEvent. - return createdEvent[0]; + /* c8 ignore stop */ + return createdEvent; } catch (error) { + /* c8 ignore start */ if (session) { + // abort transaction if something fails await session.abortTransaction(); } + throw error; } -}; - -async function associateEventWithUser( - currentUser: InterfaceUser, - createdEvent: InterfaceEvent, - session: mongoose.ClientSession -): Promise { - await EventAttendee.create( - [ - { - userId: currentUser._id.toString(), - eventId: createdEvent._id, - }, - ], - { session } - ); - await User.updateOne( - { - _id: currentUser._id, - }, - { - $push: { - eventAdmin: createdEvent._id, - createdEvents: createdEvent._id, - registeredEvents: createdEvent._id, - }, - }, - { session } - ); -} + /* c8 ignore stop */ +}; diff --git a/src/resolvers/Mutation/createEventVolunteer.ts b/src/resolvers/Mutation/createEventVolunteer.ts new file mode 100644 index 0000000000..284c5f3249 --- /dev/null +++ b/src/resolvers/Mutation/createEventVolunteer.ts @@ -0,0 +1,59 @@ +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import { EventVolunteer } from "../../models/EventVolunteer"; +import { Event, User } from "../../models"; +import { + EVENT_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, + EVENT_VOLUNTEER_NOT_FOUND_ERROR, +} from "../../constants"; +import { errors, requestContext } from "../../libraries"; + +/** + * This function enables to create an event volunteer. + * @param _parent - parent of current request + * @param args - payload provided with the request + * @param context - context of entire application + * @remarks The following checks are done: + * 1. If the current user exists + * 2. if the volunteer user exists + * 3. If the event exists, (if sent in args) + * @returns Created event volunteer + */ + +export const createEventVolunteer: MutationResolvers["createEventVolunteer"] = + async (_parent, args, context) => { + const currentUser = await User.findOne({ _id: context.userId }).lean(); + if (!currentUser) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + const volunteerUser = await User.findOne({ _id: args.data?.userId }).lean(); + if (!volunteerUser) { + throw new errors.NotFoundError( + requestContext.translate(EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE), + EVENT_VOLUNTEER_NOT_FOUND_ERROR.CODE, + EVENT_VOLUNTEER_NOT_FOUND_ERROR.PARAM, + ); + } + if (args.data?.eventId) { + const event = await Event.findById(args.data?.eventId); + if (!event) { + throw new errors.NotFoundError( + requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), + EVENT_NOT_FOUND_ERROR.CODE, + EVENT_NOT_FOUND_ERROR.PARAM, + ); + } + } + const createdVolunteer = await EventVolunteer.create({ + userId: args.data.userId, + eventId: args.data.eventId, + isAssigned: false, + isInvited: true, + creatorId: context.userId, + }); + return createdVolunteer.toObject(); + }; diff --git a/src/resolvers/Mutation/createGroupChat.ts b/src/resolvers/Mutation/createGroupChat.ts index 53835f8d45..b6eb911270 100644 --- a/src/resolvers/Mutation/createGroupChat.ts +++ b/src/resolvers/Mutation/createGroupChat.ts @@ -20,7 +20,7 @@ import { findOrganizationsInCache } from "../../services/OrganizationCache/findO export const createGroupChat: MutationResolvers["createGroupChat"] = async ( _parent, args, - context + context, ) => { let organization; @@ -43,7 +43,7 @@ export const createGroupChat: MutationResolvers["createGroupChat"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -61,7 +61,7 @@ export const createGroupChat: MutationResolvers["createGroupChat"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/createMember.ts b/src/resolvers/Mutation/createMember.ts index d55623a899..6e38023621 100644 --- a/src/resolvers/Mutation/createMember.ts +++ b/src/resolvers/Mutation/createMember.ts @@ -24,7 +24,7 @@ import { cacheOrganizations } from "../../services/OrganizationCache/cacheOrgani export const createMember: MutationResolvers["createMember"] = async ( _parent, args, - context + context, ) => { // Checks whether the current user is a superAdmin const currentUser = await User.findOne({ @@ -35,7 +35,7 @@ export const createMember: MutationResolvers["createMember"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } superAdminCheck(currentUser); @@ -61,7 +61,7 @@ export const createMember: MutationResolvers["createMember"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -74,12 +74,12 @@ export const createMember: MutationResolvers["createMember"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const userIsOrganizationMember = organization?.members.some((member) => - member.equals(user._id) + member.equals(user._id), ); // Checks whether user with _id === args.input.userId is already an member of organization. @@ -87,7 +87,7 @@ export const createMember: MutationResolvers["createMember"] = async ( throw new errors.NotFoundError( requestContext.translate(MEMBER_NOT_FOUND_ERROR.MESSAGE), MEMBER_NOT_FOUND_ERROR.CODE, - MEMBER_NOT_FOUND_ERROR.PARAM + MEMBER_NOT_FOUND_ERROR.PARAM, ); } @@ -103,7 +103,7 @@ export const createMember: MutationResolvers["createMember"] = async ( }, { new: true, - } + }, ); // add user's id to members list on organization and return it. @@ -118,7 +118,7 @@ export const createMember: MutationResolvers["createMember"] = async ( }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { diff --git a/src/resolvers/Mutation/createMessageChat.ts b/src/resolvers/Mutation/createMessageChat.ts index 5d828e9b4d..5e7cba995a 100644 --- a/src/resolvers/Mutation/createMessageChat.ts +++ b/src/resolvers/Mutation/createMessageChat.ts @@ -15,7 +15,7 @@ import { USER_NOT_FOUND_ERROR } from "../../constants"; export const createMessageChat: MutationResolvers["createMessageChat"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -30,7 +30,7 @@ export const createMessageChat: MutationResolvers["createMessageChat"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/createOrganization.ts b/src/resolvers/Mutation/createOrganization.ts index 46ab307946..df7aa6db1e 100644 --- a/src/resolvers/Mutation/createOrganization.ts +++ b/src/resolvers/Mutation/createOrganization.ts @@ -58,17 +58,17 @@ export const createOrganization: MutationResolvers["createOrganization"] = if (!validationResultName.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in name` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in name`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } if (!validationResultDescription.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } if (!validationResultAddress.isAddressValid) { @@ -108,7 +108,7 @@ export const createOrganization: MutationResolvers["createOrganization"] = createdOrganizations: createdOrganization._id, adminFor: createdOrganization._id, }, - } + }, ); // Returns createdOrganization. diff --git a/src/resolvers/Mutation/createPlugin.ts b/src/resolvers/Mutation/createPlugin.ts index da1be20aa0..290d4db17c 100644 --- a/src/resolvers/Mutation/createPlugin.ts +++ b/src/resolvers/Mutation/createPlugin.ts @@ -12,7 +12,7 @@ import { Plugin } from "../../models"; export const createPlugin: MutationResolvers["createPlugin"] = async ( _parent, args, - context + context, ) => { // Creates new plugin. const createdPlugin = await Plugin.create({ diff --git a/src/resolvers/Mutation/createPost.ts b/src/resolvers/Mutation/createPost.ts index 10f4b782ee..49aa0a4fe9 100644 --- a/src/resolvers/Mutation/createPost.ts +++ b/src/resolvers/Mutation/createPost.ts @@ -28,7 +28,7 @@ import { cachePosts } from "../../services/PostCache/cachePosts"; export const createPost: MutationResolvers["createPost"] = async ( _parent, args, - context + context, ) => { // Get the current user const currentUser = await User.findOne({ @@ -40,7 +40,7 @@ export const createPost: MutationResolvers["createPost"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -65,7 +65,7 @@ export const createPost: MutationResolvers["createPost"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -87,12 +87,12 @@ export const createPost: MutationResolvers["createPost"] = async ( if (args.data?.title && !args.data.pinned) { throw new errors.InputValidationError( requestContext.translate(POST_NEEDS_TO_BE_PINNED.MESSAGE), - POST_NEEDS_TO_BE_PINNED.CODE + POST_NEEDS_TO_BE_PINNED.CODE, ); } else if (!args.data?.title && args.data.pinned) { throw new errors.InputValidationError( requestContext.translate(PLEASE_PROVIDE_TITLE.MESSAGE), - PLEASE_PROVIDE_TITLE.CODE + PLEASE_PROVIDE_TITLE.CODE, ); } @@ -103,17 +103,17 @@ export const createPost: MutationResolvers["createPost"] = async ( if (!validationResultTitle.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } if (!validationResultText.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in information` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in information`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } } @@ -121,7 +121,7 @@ export const createPost: MutationResolvers["createPost"] = async ( if (args.data.pinned) { // Check if the user has privileges to pin the post const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organizationId) => organizationId.equals(args.data.organizationId) + (organizationId) => organizationId.equals(args.data.organizationId), ); if (currentUser?.userType) { if ( @@ -131,7 +131,7 @@ export const createPost: MutationResolvers["createPost"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_TO_PIN.MESSAGE), USER_NOT_AUTHORIZED_TO_PIN.CODE, - USER_NOT_AUTHORIZED_TO_PIN.PARAM + USER_NOT_AUTHORIZED_TO_PIN.PARAM, ); } } @@ -162,7 +162,7 @@ export const createPost: MutationResolvers["createPost"] = async ( }, { new: true, - } + }, ); await cacheOrganizations([updatedOrganizaiton!]); diff --git a/src/resolvers/Mutation/createSampleOrganization.ts b/src/resolvers/Mutation/createSampleOrganization.ts index 86fd355f16..c95bf9903a 100644 --- a/src/resolvers/Mutation/createSampleOrganization.ts +++ b/src/resolvers/Mutation/createSampleOrganization.ts @@ -22,7 +22,7 @@ export const createSampleOrganization: MutationResolvers["createSampleOrganizati throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -35,7 +35,7 @@ export const createSampleOrganization: MutationResolvers["createSampleOrganizati throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -47,7 +47,7 @@ export const createSampleOrganization: MutationResolvers["createSampleOrganizati throw new errors.UnauthorizedError( requestContext.translate(SAMPLE_ORGANIZATION_ALREADY_EXISTS.MESSAGE), SAMPLE_ORGANIZATION_ALREADY_EXISTS.CODE, - SAMPLE_ORGANIZATION_ALREADY_EXISTS.PARAM + SAMPLE_ORGANIZATION_ALREADY_EXISTS.PARAM, ); } diff --git a/src/resolvers/Mutation/createUserFamily.ts b/src/resolvers/Mutation/createUserFamily.ts new file mode 100644 index 0000000000..99e2bcccd1 --- /dev/null +++ b/src/resolvers/Mutation/createUserFamily.ts @@ -0,0 +1,81 @@ +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import { User } from "../../models"; +import { errors, requestContext } from "../../libraries"; +import { + LENGTH_VALIDATION_ERROR, + USER_FAMILY_MIN_MEMBERS_ERROR_CODE, + USER_NOT_FOUND_ERROR, +} from "../../constants"; +import { isValidString } from "../../libraries/validators/validateString"; +import { UserFamily } from "../../models/userFamily"; +import { superAdminCheck } from "../../utilities"; +/** + * This Function enables to create a user Family + * @param _parent - parent of current request + * @param args - payload provided with the request + * @param context - context of entire application + * @remarks - The following checks are done: + * 1. If the user exists + * 2. If the user is super admin + * 3. If there are atleast two members in the family. + * @returns Created user Family + */ +export const createUserFamily: MutationResolvers["createUserFamily"] = async ( + _parent, + args, + context, +) => { + const currentUser = await User.findById({ + _id: context.userId, + }); + + // Checks whether user with _id === args.userId exists. + if (!currentUser) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + // Check whether the user is super admin. + superAdminCheck(currentUser); + + let validationResultName = { + isLessThanMaxLength: false, + }; + + if (args && args.data && typeof args.data.title === "string") { + validationResultName = isValidString(args.data.title, 256); + } + + if (!validationResultName.isLessThanMaxLength) { + throw new errors.InputValidationError( + requestContext.translate( + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in name`, + ), + LENGTH_VALIDATION_ERROR.CODE, + ); + } + + // Check if there are at least 2 members + if (args.data?.userIds.length < 2) { + throw new errors.InputValidationError( + requestContext.translate(USER_FAMILY_MIN_MEMBERS_ERROR_CODE.MESSAGE), + USER_FAMILY_MIN_MEMBERS_ERROR_CODE.CODE, + USER_FAMILY_MIN_MEMBERS_ERROR_CODE.PARAM, + ); + } + + const userfamilyTitle = args.data?.title; + + const createdUserFamily = await UserFamily.create({ + ...args.data, + title: userfamilyTitle, + users: [context.userId, ...args.data.userIds], + admins: [context.userId], + creator: context.userId, + }); + + return createdUserFamily.toObject(); +}; diff --git a/src/resolvers/Mutation/createUserTag.ts b/src/resolvers/Mutation/createUserTag.ts index 6df7a899df..12b9d7830d 100644 --- a/src/resolvers/Mutation/createUserTag.ts +++ b/src/resolvers/Mutation/createUserTag.ts @@ -13,7 +13,7 @@ import { export const createUserTag: MutationResolvers["createUserTag"] = async ( _parent, args, - context + context, ) => { // Get the current user const currentUser = await User.findOne({ @@ -25,7 +25,7 @@ export const createUserTag: MutationResolvers["createUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -38,13 +38,13 @@ export const createUserTag: MutationResolvers["createUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } // Check if the user has privileges to create the tag const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organizationId) => organizationId.equals(args.input.organizationId) + (organizationId) => organizationId.equals(args.input.organizationId), ); if ( @@ -54,7 +54,7 @@ export const createUserTag: MutationResolvers["createUserTag"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_TO_CREATE_TAG.MESSAGE), USER_NOT_AUTHORIZED_TO_CREATE_TAG.CODE, - USER_NOT_AUTHORIZED_TO_CREATE_TAG.PARAM + USER_NOT_AUTHORIZED_TO_CREATE_TAG.PARAM, ); } @@ -69,7 +69,7 @@ export const createUserTag: MutationResolvers["createUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(TAG_NOT_FOUND.MESSAGE), TAG_NOT_FOUND.CODE, - TAG_NOT_FOUND.PARAM + TAG_NOT_FOUND.PARAM, ); } @@ -81,7 +81,7 @@ export const createUserTag: MutationResolvers["createUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(INCORRECT_TAG_INPUT.MESSAGE), INCORRECT_TAG_INPUT.CODE, - INCORRECT_TAG_INPUT.PARAM + INCORRECT_TAG_INPUT.PARAM, ); } } @@ -95,7 +95,7 @@ export const createUserTag: MutationResolvers["createUserTag"] = async ( throw new errors.ConflictError( requestContext.translate(TAG_ALREADY_EXISTS.MESSAGE), TAG_ALREADY_EXISTS.CODE, - TAG_ALREADY_EXISTS.PARAM + TAG_ALREADY_EXISTS.PARAM, ); } diff --git a/src/resolvers/Mutation/deleteAgendaCategory.ts b/src/resolvers/Mutation/deleteAgendaCategory.ts new file mode 100644 index 0000000000..a65423a747 --- /dev/null +++ b/src/resolvers/Mutation/deleteAgendaCategory.ts @@ -0,0 +1,73 @@ +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import { errors } from "../../libraries"; +import { AgendaCategoryModel, User } from "../../models"; +import { + AGENDA_CATEGORY_NOT_FOUND_ERROR, + USER_NOT_AUTHORIZED_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../constants"; +import { Types } from "mongoose"; +/** + * This is a resolver function for the GraphQL mutation 'deleteAgendaCategory'. + * + * This resolver deletes an agenda category if the user has the necessary permissions. + * + * @param _parent - The parent object, not used in this resolver. + * @param args - The input arguments for the mutation. + * @returns A promise that resolves to the ID of the deleted agenda category. + * @throws `NotFoundError` If the user or agenda category is not found. + * @throws `UnauthorizedError` If the user does not have the required permissions. + * @throws `InternalServerError` For other potential issues during agenda category deletion. + */ + +export const deleteAgendaCategory: MutationResolvers["deleteAgendaCategory"] = + async (_parent, args, context) => { + const categoryId = args.id; + const agendaCategory = await AgendaCategoryModel.findById(args.id); + + const userId = context.userId; + + // Fetch the user to get the organization ID + const currentUser = await User.findById(userId); + + // If the user is not found, throw a NotFoundError + if (!currentUser) { + throw new errors.NotFoundError( + USER_NOT_FOUND_ERROR.MESSAGE, + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + if (!agendaCategory) { + throw new errors.NotFoundError( + AGENDA_CATEGORY_NOT_FOUND_ERROR.MESSAGE, + AGENDA_CATEGORY_NOT_FOUND_ERROR.CODE, + AGENDA_CATEGORY_NOT_FOUND_ERROR.PARAM, + ); + } + + const currentOrg = await AgendaCategoryModel.findById(agendaCategory._id) + .populate("organization") + .select("organization") + .lean(); + + const currentUserIsOrgAdmin = currentUser.adminFor.some( + (organizationId) => + organizationId === currentOrg?._id || + Types.ObjectId(organizationId).equals(organizationId), + ); + // If the user is a normal user, throw an error + if ( + currentUserIsOrgAdmin === false && + currentUser.userType !== "SUPERADMIN" + ) { + throw new errors.UnauthorizedError( + USER_NOT_AUTHORIZED_ERROR.MESSAGE, + USER_NOT_AUTHORIZED_ERROR.CODE, + USER_NOT_AUTHORIZED_ERROR.PARAM, + ); + } + + await AgendaCategoryModel.findByIdAndDelete(args.id); + return categoryId; + }; diff --git a/src/resolvers/Mutation/forgotPassword.ts b/src/resolvers/Mutation/forgotPassword.ts index da39b1b0c4..513dc1f3bc 100644 --- a/src/resolvers/Mutation/forgotPassword.ts +++ b/src/resolvers/Mutation/forgotPassword.ts @@ -16,7 +16,7 @@ import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; */ export const forgotPassword: MutationResolvers["forgotPassword"] = async ( _parent, - args + args, ) => { const { userOtp, newPassword, otpToken } = args.data; @@ -43,7 +43,7 @@ export const forgotPassword: MutationResolvers["forgotPassword"] = async ( }, { password: hashedPassword, - } + }, ); // Returns true if operation is successful. diff --git a/src/resolvers/Mutation/index.ts b/src/resolvers/Mutation/index.ts index 68e6c4c916..f3113d23af 100644 --- a/src/resolvers/Mutation/index.ts +++ b/src/resolvers/Mutation/index.ts @@ -19,6 +19,7 @@ import { updateUserRoleInOrganization } from "./updateUserRoleInOrganization"; import { checkIn } from "./checkIn"; import { createMember } from "./createMember"; import { createActionItem } from "./createActionItem"; +import { createAgendaCategory } from "./createAgendaCategory"; import { createAdmin } from "./createAdmin"; import { createComment } from "./createComment"; import { createDirectChat } from "./createDirectChat"; @@ -34,8 +35,10 @@ import { createSampleOrganization } from "./createSampleOrganization"; import { createActionItemCategory } from "./createActionItemCategory"; import { createUserTag } from "./createUserTag"; import { deleteDonationById } from "./deleteDonationById"; +import { deleteAgendaCategory } from "./deleteAgendaCategory"; import { forgotPassword } from "./forgotPassword"; import { joinPublicOrganization } from "./joinPublicOrganization"; +import { createEventVolunteer } from "./createEventVolunteer"; import { leaveOrganization } from "./leaveOrganization"; import { likeComment } from "./likeComment"; import { likePost } from "./likePost"; @@ -53,6 +56,11 @@ import { removeComment } from "./removeComment"; import { removeDirectChat } from "./removeDirectChat"; import { removeEvent } from "./removeEvent"; import { removeEventAttendee } from "./removeEventAttendee"; +import { addUserToUserFamily } from "./addUserToUserFamily"; +import { removeUserFromUserFamily } from "./removeUserFromUserFamily"; +import { removeUserFamily } from "./removeUserFamily"; +import { createUserFamily } from "./createUserFamily"; +import { removeEventVolunteer } from "./removeEventVolunteer"; import { removeGroupChat } from "./removeGroupChat"; import { removeAdvertisement } from "./removeAdvertisement"; import { removeMember } from "./removeMember"; @@ -80,6 +88,7 @@ import { unregisterForEventByUser } from "./unregisterForEventByUser"; import { updateActionItem } from "./updateActionItem"; import { updateActionItemCategory } from "./updateActionItemCategory"; import { updateEvent } from "./updateEvent"; +import { updateEventVolunteer } from "./updateEventVolunteer"; import { updateLanguage } from "./updateLanguage"; import { updateOrganization } from "./updateOrganization"; import { updatePluginStatus } from "./updatePluginStatus"; @@ -90,6 +99,7 @@ import { updateUserTag } from "./updateUserTag"; import { updateUserType } from "./updateUserType"; import { deleteAdvertisementById } from "./deleteAdvertisementById"; import { updateAdvertisement } from "./updateAdvertisement"; +import { updateAgendaCategory } from "./updateAgendaCategory"; export const Mutation: MutationResolvers = { acceptAdmin, @@ -104,6 +114,10 @@ export const Mutation: MutationResolvers = { addUserToGroupChat, adminRemoveEvent, adminRemoveGroup, + addUserToUserFamily, + removeUserFamily, + removeUserFromUserFamily, + createUserFamily, assignUserTag, blockPluginCreationBySuperadmin, blockUser, @@ -115,6 +129,7 @@ export const Mutation: MutationResolvers = { createActionItem, createComment, createAdvertisement, + createAgendaCategory, createDirectChat, createDonation, createEvent, @@ -128,8 +143,10 @@ export const Mutation: MutationResolvers = { createUserTag, deleteDonationById, deleteAdvertisementById, + deleteAgendaCategory, forgotPassword, joinPublicOrganization, + createEventVolunteer, leaveOrganization, likeComment, likePost, @@ -147,6 +164,7 @@ export const Mutation: MutationResolvers = { removeDirectChat, removeEvent, removeEventAttendee, + removeEventVolunteer, removeAdvertisement, removeGroupChat, removeMember, @@ -173,7 +191,9 @@ export const Mutation: MutationResolvers = { unregisterForEventByUser, updateActionItem, updateActionItemCategory, + updateAgendaCategory, updateEvent, + updateEventVolunteer, updateLanguage, updateOrganization, updatePluginStatus, diff --git a/src/resolvers/Mutation/joinPublicOrganization.ts b/src/resolvers/Mutation/joinPublicOrganization.ts index 2f24dd36e9..cacc670301 100644 --- a/src/resolvers/Mutation/joinPublicOrganization.ts +++ b/src/resolvers/Mutation/joinPublicOrganization.ts @@ -45,7 +45,7 @@ export const joinPublicOrganization: MutationResolvers["joinPublicOrganization"] throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -54,7 +54,7 @@ export const joinPublicOrganization: MutationResolvers["joinPublicOrganization"] throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } const currentUserExists = await User.exists({ @@ -65,12 +65,12 @@ export const joinPublicOrganization: MutationResolvers["joinPublicOrganization"] throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const currentUserIsOrganizationMember = organization.members.some( - (member) => Types.ObjectId(member).equals(context.userId) + (member) => Types.ObjectId(member).equals(context.userId), ); // Checks whether currentUser with _id === context.userId is already a member of organzation. @@ -78,7 +78,7 @@ export const joinPublicOrganization: MutationResolvers["joinPublicOrganization"] throw new errors.ConflictError( requestContext.translate(USER_ALREADY_MEMBER_ERROR.MESSAGE), USER_ALREADY_MEMBER_ERROR.CODE, - USER_ALREADY_MEMBER_ERROR.PARAM + USER_ALREADY_MEMBER_ERROR.PARAM, ); } @@ -94,7 +94,7 @@ export const joinPublicOrganization: MutationResolvers["joinPublicOrganization"] }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -116,7 +116,7 @@ export const joinPublicOrganization: MutationResolvers["joinPublicOrganization"] }, { new: true, - } + }, ) .select(["-password"]) .populate("joinedOrganizations") diff --git a/src/resolvers/Mutation/leaveOrganization.ts b/src/resolvers/Mutation/leaveOrganization.ts index d8b72ba98e..e58c7c5c8e 100644 --- a/src/resolvers/Mutation/leaveOrganization.ts +++ b/src/resolvers/Mutation/leaveOrganization.ts @@ -24,7 +24,7 @@ import { Types } from "mongoose"; export const leaveOrganization: MutationResolvers["leaveOrganization"] = async ( _parent, args, - context + context, ) => { let organization; @@ -47,7 +47,7 @@ export const leaveOrganization: MutationResolvers["leaveOrganization"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -60,12 +60,12 @@ export const leaveOrganization: MutationResolvers["leaveOrganization"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const currentUserIsOrganizationMember = organization.members.some((member) => - Types.ObjectId(member).equals(currentUser?._id) + Types.ObjectId(member).equals(currentUser?._id), ); // Checks whether currentUser is not a member of organzation. @@ -73,7 +73,7 @@ export const leaveOrganization: MutationResolvers["leaveOrganization"] = async ( throw new errors.ConflictError( requestContext.translate(MEMBER_NOT_FOUND_ERROR.MESSAGE), MEMBER_NOT_FOUND_ERROR.CODE, - MEMBER_NOT_FOUND_ERROR.PARAM + MEMBER_NOT_FOUND_ERROR.PARAM, ); } @@ -90,7 +90,7 @@ export const leaveOrganization: MutationResolvers["leaveOrganization"] = async ( }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -112,7 +112,7 @@ export const leaveOrganization: MutationResolvers["leaveOrganization"] = async ( }, { new: true, - } + }, ) .select(["-password"]) .lean(); diff --git a/src/resolvers/Mutation/likeComment.ts b/src/resolvers/Mutation/likeComment.ts index 86c4df47cd..dc2a11b39a 100644 --- a/src/resolvers/Mutation/likeComment.ts +++ b/src/resolvers/Mutation/likeComment.ts @@ -18,7 +18,7 @@ import { cacheComments } from "../../services/CommentCache/cacheComments"; export const likeComment: MutationResolvers["likeComment"] = async ( _parent, args, - context + context, ) => { let comment; @@ -41,12 +41,12 @@ export const likeComment: MutationResolvers["likeComment"] = async ( throw new errors.NotFoundError( requestContext.translate(COMMENT_NOT_FOUND_ERROR.MESSAGE), COMMENT_NOT_FOUND_ERROR.CODE, - COMMENT_NOT_FOUND_ERROR.PARAM + COMMENT_NOT_FOUND_ERROR.PARAM, ); } const currentUserHasLikedComment = comment.likedBy.some((likedByUser) => - likedByUser.equals(context.userId) + likedByUser.equals(context.userId), ); // Checks whether currentUser with _id === context.userId has not already liked the comment. @@ -69,7 +69,7 @@ export const likeComment: MutationResolvers["likeComment"] = async ( }, { new: true, - } + }, ).lean(); if (updatedComment !== null) { diff --git a/src/resolvers/Mutation/likePost.ts b/src/resolvers/Mutation/likePost.ts index 2f63eca5e9..638a8b9cce 100644 --- a/src/resolvers/Mutation/likePost.ts +++ b/src/resolvers/Mutation/likePost.ts @@ -18,7 +18,7 @@ import { cachePosts } from "../../services/PostCache/cachePosts"; export const likePost: MutationResolvers["likePost"] = async ( _parent, args, - context + context, ) => { let post; @@ -41,12 +41,12 @@ export const likePost: MutationResolvers["likePost"] = async ( throw new errors.NotFoundError( requestContext.translate(POST_NOT_FOUND_ERROR.MESSAGE), POST_NOT_FOUND_ERROR.CODE, - POST_NOT_FOUND_ERROR.PARAM + POST_NOT_FOUND_ERROR.PARAM, ); } const currentUserHasLikedPost = post.likedBy.some((likedByUser) => - likedByUser.equals(context.userId) + likedByUser.equals(context.userId), ); // Checks whether currentUser with _id === context.userId has not already liked the post. @@ -69,7 +69,7 @@ export const likePost: MutationResolvers["likePost"] = async ( }, { new: true, - } + }, ).lean(); if (updatedPost !== null) { diff --git a/src/resolvers/Mutation/login.ts b/src/resolvers/Mutation/login.ts index 94ae28496e..e6f7509f49 100644 --- a/src/resolvers/Mutation/login.ts +++ b/src/resolvers/Mutation/login.ts @@ -32,12 +32,12 @@ export const login: MutationResolvers["login"] = async (_parent, args) => { throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const isPasswordValid = await bcrypt.compare( args.data.password, - user.password + user.password, ); // Checks whether password is invalid. if (isPasswordValid === false) { @@ -49,7 +49,7 @@ export const login: MutationResolvers["login"] = async (_parent, args) => { param: INVALID_CREDENTIALS_ERROR.PARAM, }, ], - requestContext.translate(INVALID_CREDENTIALS_ERROR.MESSAGE) + requestContext.translate(INVALID_CREDENTIALS_ERROR.MESSAGE), ); } const accessToken = await createAccessToken(user); @@ -69,13 +69,13 @@ export const login: MutationResolvers["login"] = async (_parent, args) => { }, { userType: "SUPERADMIN", - } + }, ); } await User.findOneAndUpdate( { _id: user._id }, - { token: refreshToken, $inc: { tokenVersion: 1 } } + { token: refreshToken, $inc: { tokenVersion: 1 } }, ); // Assigns new value with populated fields to user object. diff --git a/src/resolvers/Mutation/logout.ts b/src/resolvers/Mutation/logout.ts index e4a3710e19..eae004ad24 100644 --- a/src/resolvers/Mutation/logout.ts +++ b/src/resolvers/Mutation/logout.ts @@ -13,7 +13,7 @@ import { User } from "../../models"; export const logout: MutationResolvers["logout"] = async ( _parent, _args, - context + context, ) => { // Sets token field of currentUser with _id === context.userId to null. await User.updateOne( @@ -24,7 +24,7 @@ export const logout: MutationResolvers["logout"] = async ( $set: { token: null, }, - } + }, ); // Returns true if the operation is successful. diff --git a/src/resolvers/Mutation/otp.ts b/src/resolvers/Mutation/otp.ts index 066c3ba5db..be8c058817 100644 --- a/src/resolvers/Mutation/otp.ts +++ b/src/resolvers/Mutation/otp.ts @@ -36,7 +36,7 @@ export const otp: MutationResolvers["otp"] = async (_parent, args) => { ACCESS_TOKEN_SECRET as string, { expiresIn: "15m", - } + }, ); const subject = "OTP for Talawa-admin forgot password"; diff --git a/src/resolvers/Mutation/recaptcha.ts b/src/resolvers/Mutation/recaptcha.ts index 0cb3101edf..13a8edf882 100644 --- a/src/resolvers/Mutation/recaptcha.ts +++ b/src/resolvers/Mutation/recaptcha.ts @@ -9,10 +9,10 @@ import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; */ export const recaptcha: MutationResolvers["recaptcha"] = async ( _parent, - args + args, ) => { const response = await axios.post( - `https://www.google.com/recaptcha/api/siteverify?secret=${RECAPTCHA_SECRET_KEY}&response=${args.data.recaptchaToken}` + `https://www.google.com/recaptcha/api/siteverify?secret=${RECAPTCHA_SECRET_KEY}&response=${args.data.recaptchaToken}`, ); return response.data.success; diff --git a/src/resolvers/Mutation/refreshToken.ts b/src/resolvers/Mutation/refreshToken.ts index ad98d6ccd5..3dca437b5c 100644 --- a/src/resolvers/Mutation/refreshToken.ts +++ b/src/resolvers/Mutation/refreshToken.ts @@ -22,7 +22,7 @@ import { */ export const refreshToken: MutationResolvers["refreshToken"] = async ( _parent, - args + args, ) => { // This route should not be protected because the access token will be expired. if (!args.refreshToken || typeof args.refreshToken !== "string") { @@ -30,19 +30,19 @@ export const refreshToken: MutationResolvers["refreshToken"] = async ( [ { message: requestContext.translate( - INVALID_REFRESH_TOKEN_ERROR.MESSAGE + INVALID_REFRESH_TOKEN_ERROR.MESSAGE, ), code: INVALID_REFRESH_TOKEN_ERROR.CODE, param: INVALID_REFRESH_TOKEN_ERROR.PARAM, }, ], - requestContext.translate(INVALID_REFRESH_TOKEN_ERROR.MESSAGE) + requestContext.translate(INVALID_REFRESH_TOKEN_ERROR.MESSAGE), ); } const jwtPayload: InterfaceJwtTokenPayload = jwt.verify( args.refreshToken, - REFRESH_TOKEN_SECRET as string + REFRESH_TOKEN_SECRET as string, ) as InterfaceJwtTokenPayload; // The refresh token received is valid so we can send a new access token @@ -55,7 +55,7 @@ export const refreshToken: MutationResolvers["refreshToken"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -68,13 +68,13 @@ export const refreshToken: MutationResolvers["refreshToken"] = async ( [ { message: requestContext.translate( - INVALID_REFRESH_TOKEN_ERROR.MESSAGE + INVALID_REFRESH_TOKEN_ERROR.MESSAGE, ), code: INVALID_REFRESH_TOKEN_ERROR.CODE, param: INVALID_REFRESH_TOKEN_ERROR.PARAM, }, ], - requestContext.translate(INVALID_REFRESH_TOKEN_ERROR.MESSAGE) + requestContext.translate(INVALID_REFRESH_TOKEN_ERROR.MESSAGE), ); } diff --git a/src/resolvers/Mutation/registerForEvent.ts b/src/resolvers/Mutation/registerForEvent.ts index fcd14b80a8..c35f716b1a 100644 --- a/src/resolvers/Mutation/registerForEvent.ts +++ b/src/resolvers/Mutation/registerForEvent.ts @@ -24,7 +24,7 @@ import { cacheEvents } from "../../services/EventCache/cacheEvents"; export const registerForEvent: MutationResolvers["registerForEvent"] = async ( _parent, args, - context + context, ) => { let event: InterfaceEvent | null; @@ -47,7 +47,7 @@ export const registerForEvent: MutationResolvers["registerForEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } @@ -60,7 +60,7 @@ export const registerForEvent: MutationResolvers["registerForEvent"] = async ( throw new errors.InputValidationError( requestContext.translate(REGISTRANT_ALREADY_EXIST_ERROR.MESSAGE), REGISTRANT_ALREADY_EXIST_ERROR.CODE, - REGISTRANT_ALREADY_EXIST_ERROR.PARAM + REGISTRANT_ALREADY_EXIST_ERROR.PARAM, ); } @@ -73,7 +73,7 @@ export const registerForEvent: MutationResolvers["registerForEvent"] = async ( $push: { registeredEvents: event._id, }, - } + }, ); await EventAttendee.create({ diff --git a/src/resolvers/Mutation/rejectAdmin.ts b/src/resolvers/Mutation/rejectAdmin.ts index cbf4073b4e..e5035763a3 100644 --- a/src/resolvers/Mutation/rejectAdmin.ts +++ b/src/resolvers/Mutation/rejectAdmin.ts @@ -17,7 +17,7 @@ import { superAdminCheck } from "../../utilities"; export const rejectAdmin: MutationResolvers["rejectAdmin"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -28,7 +28,7 @@ export const rejectAdmin: MutationResolvers["rejectAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -44,7 +44,7 @@ export const rejectAdmin: MutationResolvers["rejectAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -57,7 +57,7 @@ export const rejectAdmin: MutationResolvers["rejectAdmin"] = async ( $set: { adminApproved: false, }, - } + }, ); // Returns true if operation is successful. diff --git a/src/resolvers/Mutation/rejectMembershipRequest.ts b/src/resolvers/Mutation/rejectMembershipRequest.ts index 838d3263a5..98f6e13e4f 100644 --- a/src/resolvers/Mutation/rejectMembershipRequest.ts +++ b/src/resolvers/Mutation/rejectMembershipRequest.ts @@ -34,7 +34,7 @@ export const rejectMembershipRequest: MutationResolvers["rejectMembershipRequest throw new errors.NotFoundError( requestContext.translate(MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.MESSAGE), MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.CODE, - MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.PARAM + MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.PARAM, ); } @@ -43,7 +43,7 @@ export const rejectMembershipRequest: MutationResolvers["rejectMembershipRequest throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -52,7 +52,7 @@ export const rejectMembershipRequest: MutationResolvers["rejectMembershipRequest throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -76,7 +76,7 @@ export const rejectMembershipRequest: MutationResolvers["rejectMembershipRequest }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -92,7 +92,7 @@ export const rejectMembershipRequest: MutationResolvers["rejectMembershipRequest $pull: { membershipRequests: membershipRequest._id, }, - } + }, ); // Returns deleted membershipRequest. diff --git a/src/resolvers/Mutation/removeActionItem.ts b/src/resolvers/Mutation/removeActionItem.ts index ae1c023213..c080d15a30 100644 --- a/src/resolvers/Mutation/removeActionItem.ts +++ b/src/resolvers/Mutation/removeActionItem.ts @@ -26,7 +26,7 @@ import { cacheEvents } from "../../services/EventCache/cacheEvents"; export const removeActionItem: MutationResolvers["removeActionItem"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -37,7 +37,7 @@ export const removeActionItem: MutationResolvers["removeActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -52,7 +52,7 @@ export const removeActionItem: MutationResolvers["removeActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(ACTION_ITEM_NOT_FOUND_ERROR.MESSAGE), ACTION_ITEM_NOT_FOUND_ERROR.CODE, - ACTION_ITEM_NOT_FOUND_ERROR.PARAM + ACTION_ITEM_NOT_FOUND_ERROR.PARAM, ); } @@ -60,8 +60,8 @@ export const removeActionItem: MutationResolvers["removeActionItem"] = async ( (ogranizationId) => ogranizationId === actionItem.actionItemCategoryId.organizationId || Types.ObjectId(ogranizationId).equals( - actionItem.actionItemCategoryId.organizationId - ) + actionItem.actionItemCategoryId.organizationId, + ), ); let currentUserIsEventAdmin = false; @@ -88,14 +88,15 @@ export const removeActionItem: MutationResolvers["removeActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } // Checks if the currUser is an admin of the event currentUserIsEventAdmin = currEvent.admins.some( (admin) => - admin === context.userID || Types.ObjectId(admin).equals(context.userId) + admin === context.userID || + Types.ObjectId(admin).equals(context.userId), ); } @@ -108,7 +109,7 @@ export const removeActionItem: MutationResolvers["removeActionItem"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/removeAdmin.ts b/src/resolvers/Mutation/removeAdmin.ts index 68f2920920..9170f92749 100644 --- a/src/resolvers/Mutation/removeAdmin.ts +++ b/src/resolvers/Mutation/removeAdmin.ts @@ -26,7 +26,7 @@ import { Types } from "mongoose"; export const removeAdmin: MutationResolvers["removeAdmin"] = async ( _parent, args, - context + context, ) => { let organization: InterfaceOrganization; @@ -49,7 +49,7 @@ export const removeAdmin: MutationResolvers["removeAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -66,20 +66,20 @@ export const removeAdmin: MutationResolvers["removeAdmin"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } // Checks whether user is an admin of the organization. const userIsOrganizationAdmin = organization.admins.some((admin) => - Types.ObjectId(admin).equals(user._id) + Types.ObjectId(admin).equals(user._id), ); if (!userIsOrganizationAdmin) { throw new errors.UnauthorizedError( requestContext.translate(`${USER_NOT_ORGANIZATION_ADMIN.MESSAGE}`), USER_NOT_ORGANIZATION_ADMIN.CODE, - USER_NOT_ORGANIZATION_ADMIN.PARAM + USER_NOT_ORGANIZATION_ADMIN.PARAM, ); } @@ -94,13 +94,13 @@ export const removeAdmin: MutationResolvers["removeAdmin"] = async ( { $set: { admins: organization.admins.filter( - (admin) => admin.toString() !== user!._id.toString() + (admin) => admin.toString() !== user!._id.toString(), ), }, }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -116,13 +116,13 @@ export const removeAdmin: MutationResolvers["removeAdmin"] = async ( $set: { adminFor: user.adminFor.filter( (adminForOrganization) => - adminForOrganization.toString() !== organization._id.toString() + adminForOrganization.toString() !== organization._id.toString(), ), }, }, { new: true, - } + }, ) .select(["-password"]) .lean(); diff --git a/src/resolvers/Mutation/removeAdvertisement.ts b/src/resolvers/Mutation/removeAdvertisement.ts index 9c9fa0059c..6774b5263c 100644 --- a/src/resolvers/Mutation/removeAdvertisement.ts +++ b/src/resolvers/Mutation/removeAdvertisement.ts @@ -2,27 +2,31 @@ import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; import { errors, requestContext } from "../../libraries"; import { Advertisement } from "../../models"; import { ADVERTISEMENT_NOT_FOUND_ERROR } from "../../constants"; +import mongoose from "mongoose"; -// @ts-ignore +// @ts-expect-error : This block intentionally ignores TypeScript checking for incomplete code. export const removeAdvertisement: MutationResolvers["removeAdvertisement"] = // eslint-disable-next-line @typescript-eslint/no-unused-vars async (_parent, args, _context) => { - const currentAd = await Advertisement.findOne({ - _id: args.id ? args.id : "", - }).lean(); + const myId = args.id ? args.id : ""; - if (!currentAd) { - throw new errors.NotFoundError( - requestContext.translate(ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE), - ADVERTISEMENT_NOT_FOUND_ERROR.CODE, - ADVERTISEMENT_NOT_FOUND_ERROR.PARAM - ); - } + if (mongoose.Types.ObjectId.isValid(myId)) { + const currentAd = await Advertisement.findOne({ + _id: myId, + }).lean(); + if (!currentAd) { + throw new errors.NotFoundError( + requestContext.translate(ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE), + ADVERTISEMENT_NOT_FOUND_ERROR.CODE, + ADVERTISEMENT_NOT_FOUND_ERROR.PARAM, + ); + } - // Deletes the ad. - await Advertisement.deleteOne({ - _id: args.id ? args.id : "", - }); - // Returns deleted ad. - return currentAd; + // Deletes the ad. + await Advertisement.deleteOne({ + _id: myId, + }); + // Returns deleted ad. + return currentAd; + } }; diff --git a/src/resolvers/Mutation/removeComment.ts b/src/resolvers/Mutation/removeComment.ts index 48dd672ca3..0954bbbf71 100644 --- a/src/resolvers/Mutation/removeComment.ts +++ b/src/resolvers/Mutation/removeComment.ts @@ -26,7 +26,7 @@ import { cachePosts } from "../../services/PostCache/cachePosts"; export const removeComment: MutationResolvers["removeComment"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -37,7 +37,7 @@ export const removeComment: MutationResolvers["removeComment"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -60,12 +60,12 @@ export const removeComment: MutationResolvers["removeComment"] = async ( throw new errors.NotFoundError( requestContext.translate(COMMENT_NOT_FOUND_ERROR.MESSAGE), COMMENT_NOT_FOUND_ERROR.CODE, - COMMENT_NOT_FOUND_ERROR.PARAM + COMMENT_NOT_FOUND_ERROR.PARAM, ); } const isCurrentUserAdminOfOrganization = currentUser.adminFor.some( - (organization) => organization.equals(comment.postId.organization) + (organization) => organization.equals(comment.postId.organization), ); // Checks whether currentUser with _id === context.userId has the authorization to delete the comment @@ -77,7 +77,7 @@ export const removeComment: MutationResolvers["removeComment"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -94,7 +94,7 @@ export const removeComment: MutationResolvers["removeComment"] = async ( }, { new: true, - } + }, ).lean(); if (updatedPost !== null) { diff --git a/src/resolvers/Mutation/removeDirectChat.ts b/src/resolvers/Mutation/removeDirectChat.ts index 9d38689027..a1401eff79 100644 --- a/src/resolvers/Mutation/removeDirectChat.ts +++ b/src/resolvers/Mutation/removeDirectChat.ts @@ -22,7 +22,7 @@ import { cacheOrganizations } from "../../services/OrganizationCache/cacheOrgani export const removeDirectChat: MutationResolvers["removeDirectChat"] = async ( _parent, args, - context + context, ) => { let organization; @@ -45,7 +45,7 @@ export const removeDirectChat: MutationResolvers["removeDirectChat"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -58,7 +58,7 @@ export const removeDirectChat: MutationResolvers["removeDirectChat"] = async ( throw new errors.NotFoundError( requestContext.translate(CHAT_NOT_FOUND_ERROR.MESSAGE), CHAT_NOT_FOUND_ERROR.CODE, - CHAT_NOT_FOUND_ERROR.PARAM + CHAT_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/removeEvent.ts b/src/resolvers/Mutation/removeEvent.ts index 63322f847c..9da1872f5e 100644 --- a/src/resolvers/Mutation/removeEvent.ts +++ b/src/resolvers/Mutation/removeEvent.ts @@ -24,7 +24,7 @@ import { cacheEvents } from "../../services/EventCache/cacheEvents"; export const removeEvent: MutationResolvers["removeEvent"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -35,7 +35,7 @@ export const removeEvent: MutationResolvers["removeEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -60,18 +60,18 @@ export const removeEvent: MutationResolvers["removeEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } // Boolean to determine whether user is an admin of organization. const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organization) => organization.equals(event?.organization) + (organization) => organization.equals(event?.organization), ); // Boolean to determine whether user is an admin of event. const currentUserIsEventAdmin = event.admins.some((admin) => - admin.equals(currentUser._id) + admin.equals(currentUser._id), ); // Checks whether currentUser cannot delete event. @@ -85,7 +85,7 @@ export const removeEvent: MutationResolvers["removeEvent"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -97,7 +97,7 @@ export const removeEvent: MutationResolvers["removeEvent"] = async ( $pull: { createdEvents: event._id, }, - } + }, ); await User.updateMany( @@ -108,7 +108,7 @@ export const removeEvent: MutationResolvers["removeEvent"] = async ( $pull: { eventAdmin: event._id, }, - } + }, ); const updatedEvent = await Event.findOneAndUpdate( @@ -120,7 +120,7 @@ export const removeEvent: MutationResolvers["removeEvent"] = async ( }, { new: true, - } + }, ); if (updatedEvent !== null) { diff --git a/src/resolvers/Mutation/removeEventAttendee.ts b/src/resolvers/Mutation/removeEventAttendee.ts index 05e67ad2ab..2183f3e3f6 100644 --- a/src/resolvers/Mutation/removeEventAttendee.ts +++ b/src/resolvers/Mutation/removeEventAttendee.ts @@ -21,7 +21,7 @@ export const removeEventAttendee: MutationResolvers["removeEventAttendee"] = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -45,19 +45,19 @@ export const removeEventAttendee: MutationResolvers["removeEventAttendee"] = throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } const isUserEventAdmin = currentEvent.admins.some( - (admin) => admin.toString() === context.userId.toString() + (admin) => admin.toString() === context.userId.toString(), ); if (!isUserEventAdmin && currentUser.userType !== "SUPERADMIN") { throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -69,7 +69,7 @@ export const removeEventAttendee: MutationResolvers["removeEventAttendee"] = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -81,7 +81,7 @@ export const removeEventAttendee: MutationResolvers["removeEventAttendee"] = throw new errors.ConflictError( requestContext.translate(USER_NOT_REGISTERED_FOR_EVENT.MESSAGE), USER_NOT_REGISTERED_FOR_EVENT.CODE, - USER_NOT_REGISTERED_FOR_EVENT.PARAM + USER_NOT_REGISTERED_FOR_EVENT.PARAM, ); } diff --git a/src/resolvers/Mutation/removeEventVolunteer.ts b/src/resolvers/Mutation/removeEventVolunteer.ts new file mode 100644 index 0000000000..6bdf5f8c6c --- /dev/null +++ b/src/resolvers/Mutation/removeEventVolunteer.ts @@ -0,0 +1,51 @@ +import { + EVENT_VOLUNTEER_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../constants"; +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import { errors, requestContext } from "../../libraries"; +import { User, EventVolunteer } from "../../models"; + +/** + * This function enables to remove an Event Volunteer. + * @param _parent - parent of current request + * @param args - payload provided with the request + * @param context - context of entire application + * @remarks The following checks are done: + * 1. If the current user exists + * 2. If the Event volunteer to be removed exists. + * @returns Event Volunteer. + */ + +export const removeEventVolunteer: MutationResolvers["removeEventVolunteer"] = + async (_parent, args, context) => { + const currentUser = await User.findOne({ + _id: context.userId, + }).lean(); + + if (!currentUser) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + const volunteer = await EventVolunteer.findOne({ + _id: args.id, + }); + + if (!volunteer) { + throw new errors.NotFoundError( + requestContext.translate(EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE), + EVENT_VOLUNTEER_NOT_FOUND_ERROR.CODE, + EVENT_VOLUNTEER_NOT_FOUND_ERROR.PARAM, + ); + } + + await EventVolunteer.deleteOne({ + _id: args.id, + }); + + return volunteer; + }; diff --git a/src/resolvers/Mutation/removeGroupChat.ts b/src/resolvers/Mutation/removeGroupChat.ts index b2e9d6d34f..c1ef3f3182 100644 --- a/src/resolvers/Mutation/removeGroupChat.ts +++ b/src/resolvers/Mutation/removeGroupChat.ts @@ -22,7 +22,7 @@ import { findOrganizationsInCache } from "../../services/OrganizationCache/findO export const removeGroupChat: MutationResolvers["removeGroupChat"] = async ( _parent, args, - context + context, ) => { const groupChat = await GroupChat.findOne({ _id: args.chatId, @@ -33,7 +33,7 @@ export const removeGroupChat: MutationResolvers["removeGroupChat"] = async ( throw new errors.NotFoundError( requestContext.translate(CHAT_NOT_FOUND_ERROR.MESSAGE), CHAT_NOT_FOUND_ERROR.CODE, - CHAT_NOT_FOUND_ERROR.PARAM + CHAT_NOT_FOUND_ERROR.PARAM, ); } @@ -58,7 +58,7 @@ export const removeGroupChat: MutationResolvers["removeGroupChat"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/removeMember.ts b/src/resolvers/Mutation/removeMember.ts index 56e394af54..b24e11695c 100644 --- a/src/resolvers/Mutation/removeMember.ts +++ b/src/resolvers/Mutation/removeMember.ts @@ -29,7 +29,7 @@ import { findOrganizationsInCache } from "../../services/OrganizationCache/findO export const removeMember: MutationResolvers["removeMember"] = async ( _parent, args, - context + context, ) => { let organization: InterfaceOrganization; @@ -52,7 +52,7 @@ export const removeMember: MutationResolvers["removeMember"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -72,19 +72,19 @@ export const removeMember: MutationResolvers["removeMember"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const userIsOrganizationMember = organization?.members.some((member) => - Types.ObjectId(member).equals(user._id) + Types.ObjectId(member).equals(user._id), ); if (!userIsOrganizationMember) { throw new errors.NotFoundError( requestContext.translate(MEMBER_NOT_FOUND_ERROR.MESSAGE), MEMBER_NOT_FOUND_ERROR.CODE, - MEMBER_NOT_FOUND_ERROR.PARAM + MEMBER_NOT_FOUND_ERROR.PARAM, ); } @@ -93,12 +93,12 @@ export const removeMember: MutationResolvers["removeMember"] = async ( throw new errors.ConflictError( requestContext.translate(USER_REMOVING_SELF.MESSAGE), USER_REMOVING_SELF.CODE, - USER_REMOVING_SELF.PARAM + USER_REMOVING_SELF.PARAM, ); } const userIsOrganizationAdmin = organization?.admins.some((admin) => - Types.ObjectId(admin).equals(user._id) + Types.ObjectId(admin).equals(user._id), ); /* @@ -109,7 +109,7 @@ export const removeMember: MutationResolvers["removeMember"] = async ( throw new errors.ConflictError( requestContext.translate(ADMIN_REMOVING_ADMIN.MESSAGE), ADMIN_REMOVING_ADMIN.CODE, - ADMIN_REMOVING_ADMIN.PARAM + ADMIN_REMOVING_ADMIN.PARAM, ); } @@ -124,7 +124,7 @@ export const removeMember: MutationResolvers["removeMember"] = async ( throw new errors.UnauthorizedError( requestContext.translate(ADMIN_REMOVING_CREATOR.MESSAGE), ADMIN_REMOVING_CREATOR.CODE, - ADMIN_REMOVING_CREATOR.PARAM + ADMIN_REMOVING_CREATOR.PARAM, ); } @@ -136,13 +136,13 @@ export const removeMember: MutationResolvers["removeMember"] = async ( { $set: { members: organization?.members.filter( - (member) => member.toString() !== user._id.toString() + (member) => member.toString() !== user._id.toString(), ), }, }, { new: true, - } + }, ).lean(); await cacheOrganizations([organization!]); @@ -156,10 +156,10 @@ export const removeMember: MutationResolvers["removeMember"] = async ( $set: { joinedOrganizations: user.joinedOrganizations.filter( (joinedOrganization) => - joinedOrganization.toString() !== organization?._id.toString() + joinedOrganization.toString() !== organization?._id.toString(), ), }, - } + }, ); return organization ?? ({} as InterfaceOrganization); diff --git a/src/resolvers/Mutation/removeOrganization.ts b/src/resolvers/Mutation/removeOrganization.ts index 5396eaaef8..4416b41603 100644 --- a/src/resolvers/Mutation/removeOrganization.ts +++ b/src/resolvers/Mutation/removeOrganization.ts @@ -40,7 +40,7 @@ export const removeOrganization: MutationResolvers["removeOrganization"] = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -63,7 +63,7 @@ export const removeOrganization: MutationResolvers["removeOrganization"] = throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } // Checks whether currentUser is a SUPERADMIN @@ -82,19 +82,19 @@ export const removeOrganization: MutationResolvers["removeOrganization"] = $pull: { createdOrganizations: organization._id, }, - } + }, ); // Remove organization._id from each member's joinedOrganizations field for organization.members list. await User.updateMany( { _id: { $in: organization.members } }, - { $pull: { joinedOrganizations: organization._id } } + { $pull: { joinedOrganizations: organization._id } }, ); // Remove organization._id from each admin's joinedOrganizations field for organization.admins list. await User.updateMany( { _id: { $in: organization.admins } }, - { $pull: { joinedOrganizations: organization._id } } + { $pull: { joinedOrganizations: organization._id } }, ); /* @@ -115,7 +115,7 @@ export const removeOrganization: MutationResolvers["removeOrganization"] = $pull: { membershipRequests: { $in: organization.membershipRequests }, }, - } + }, ); /* @@ -124,7 +124,7 @@ export const removeOrganization: MutationResolvers["removeOrganization"] = */ await User.updateMany( { _id: { $in: organization.blockedUsers } }, - { $pull: { organizationsBlockedBy: organization._id } } + { $pull: { organizationsBlockedBy: organization._id } }, ); // Get the ids of all ActionItemCategories associated with the organization @@ -132,7 +132,7 @@ export const removeOrganization: MutationResolvers["removeOrganization"] = organizationId: organization?._id, }); const actionItemCategoriesIds = actionItemCategories.map( - (category) => category._id + (category) => category._id, ); // Remove all ActionItemCategory documents whose id is in the actionItemCategories array diff --git a/src/resolvers/Mutation/removeOrganizationCustomField.ts b/src/resolvers/Mutation/removeOrganizationCustomField.ts index 5009c2fcf6..331b3a8bb4 100644 --- a/src/resolvers/Mutation/removeOrganizationCustomField.ts +++ b/src/resolvers/Mutation/removeOrganizationCustomField.ts @@ -33,7 +33,7 @@ export const removeOrganizationCustomField: MutationResolvers["removeOrganizatio throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -45,12 +45,12 @@ export const removeOrganizationCustomField: MutationResolvers["removeOrganizatio throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organization) => organization.equals(organization._id) + (organization) => organization.equals(organization._id), ); if ( @@ -59,25 +59,24 @@ export const removeOrganizationCustomField: MutationResolvers["removeOrganizatio throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } organization.customFields = organization.customFields.filter( - (field) => !field.equals(customFieldId) + (field) => !field.equals(customFieldId), ); await organization.save(); - const removedCustomField = await OrganizationCustomField.findByIdAndDelete( - customFieldId - ); + const removedCustomField = + await OrganizationCustomField.findByIdAndDelete(customFieldId); if (!removedCustomField) { throw new errors.UnauthorizedError( requestContext.translate(CUSTOM_FIELD_NOT_FOUND.MESSAGE), CUSTOM_FIELD_NOT_FOUND.CODE, - CUSTOM_FIELD_NOT_FOUND.PARAM + CUSTOM_FIELD_NOT_FOUND.PARAM, ); } diff --git a/src/resolvers/Mutation/removeOrganizationImage.ts b/src/resolvers/Mutation/removeOrganizationImage.ts index 876069d2b9..1f0849fde4 100644 --- a/src/resolvers/Mutation/removeOrganizationImage.ts +++ b/src/resolvers/Mutation/removeOrganizationImage.ts @@ -42,7 +42,7 @@ export const removeOrganizationImage: MutationResolvers["removeOrganizationImage throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -54,7 +54,7 @@ export const removeOrganizationImage: MutationResolvers["removeOrganizationImage throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_IMAGE_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_IMAGE_NOT_FOUND_ERROR.CODE, - ORGANIZATION_IMAGE_NOT_FOUND_ERROR.PARAM + ORGANIZATION_IMAGE_NOT_FOUND_ERROR.PARAM, ); } @@ -72,7 +72,7 @@ export const removeOrganizationImage: MutationResolvers["removeOrganizationImage }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { diff --git a/src/resolvers/Mutation/removePost.ts b/src/resolvers/Mutation/removePost.ts index fb4077cd5f..ea770178ec 100644 --- a/src/resolvers/Mutation/removePost.ts +++ b/src/resolvers/Mutation/removePost.ts @@ -28,7 +28,7 @@ import { deletePreviousVideo as deleteVideo } from "../../utilities/encodedVideo export const removePost: MutationResolvers["removePost"] = async ( _parent, args, - context + context, ) => { // Get the currentUser with _id === context.userId exists. const currentUser = await User.findOne({ @@ -40,7 +40,7 @@ export const removePost: MutationResolvers["removePost"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -64,7 +64,7 @@ export const removePost: MutationResolvers["removePost"] = async ( throw new errors.NotFoundError( requestContext.translate(POST_NOT_FOUND_ERROR.MESSAGE), POST_NOT_FOUND_ERROR.CODE, - POST_NOT_FOUND_ERROR.PARAM + POST_NOT_FOUND_ERROR.PARAM, ); } @@ -72,14 +72,14 @@ export const removePost: MutationResolvers["removePost"] = async ( const isCreator = post.creatorId.equals(context.userId); const isSuperAdmin = currentUser?.userType === "SUPERADMIN"; const isAdminOfPostOrganization = currentUser?.adminFor.some((orgID) => - orgID.equals(post?.organization) + orgID.equals(post?.organization), ); if (!isCreator && !isSuperAdmin && !isAdminOfPostOrganization) { throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -112,7 +112,7 @@ export const removePost: MutationResolvers["removePost"] = async ( }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { diff --git a/src/resolvers/Mutation/removeSampleOrganization.ts b/src/resolvers/Mutation/removeSampleOrganization.ts index e1bf9f7667..d768361822 100644 --- a/src/resolvers/Mutation/removeSampleOrganization.ts +++ b/src/resolvers/Mutation/removeSampleOrganization.ts @@ -18,7 +18,7 @@ export const removeSampleOrganization: MutationResolvers["removeSampleOrganizati throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -31,7 +31,7 @@ export const removeSampleOrganization: MutationResolvers["removeSampleOrganizati throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -43,7 +43,7 @@ export const removeSampleOrganization: MutationResolvers["removeSampleOrganizati throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/removeUserCustomData.ts b/src/resolvers/Mutation/removeUserCustomData.ts index c1ec2228ed..f4529bc40e 100644 --- a/src/resolvers/Mutation/removeUserCustomData.ts +++ b/src/resolvers/Mutation/removeUserCustomData.ts @@ -21,7 +21,7 @@ export const removeUserCustomData: MutationResolvers["removeUserCustomData"] = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -33,12 +33,12 @@ export const removeUserCustomData: MutationResolvers["removeUserCustomData"] = throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organization) => organization.equals(organization._id) + (organization) => organization.equals(organization._id), ); if ( @@ -47,7 +47,7 @@ export const removeUserCustomData: MutationResolvers["removeUserCustomData"] = throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -60,7 +60,7 @@ export const removeUserCustomData: MutationResolvers["removeUserCustomData"] = throw new errors.NotFoundError( requestContext.translate(CUSTOM_DATA_NOT_FOUND.MESSAGE), CUSTOM_DATA_NOT_FOUND.CODE, - CUSTOM_DATA_NOT_FOUND.PARAM + CUSTOM_DATA_NOT_FOUND.PARAM, ); } diff --git a/src/resolvers/Mutation/removeUserFamily.ts b/src/resolvers/Mutation/removeUserFamily.ts new file mode 100644 index 0000000000..0d9ff3b4fd --- /dev/null +++ b/src/resolvers/Mutation/removeUserFamily.ts @@ -0,0 +1,60 @@ +import { + USER_FAMILY_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../constants"; +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import { errors, requestContext } from "../../libraries"; +import { UserFamily } from "../../models/userFamily"; +import { User } from "../../models"; +import { superAdminCheck } from "../../utilities"; +/** + * This function enables to remove a user family. + * @param _parent - parent of current request + * @param args - payload provided with the request + * @param context - context of entire application. + * @remarks - The following checks are done: + * 1. If the user family exists. + * 2. If the user is super admin. + * @returns Deleted user family. + */ +export const removeUserFamily: MutationResolvers["removeUserFamily"] = async ( + _parent, + args, + context, +) => { + const userFamily = await UserFamily.findOne({ + _id: args.familyId, + }).lean(); + + const currentUser = await User.findOne({ + _id: context.userId, + }); + + // Checks whether currentUser exists. + if (!currentUser) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + // Checks whether currentUser is a SUPERADMIN + superAdminCheck(currentUser); + + // Checks if a family with _id === args.familyId exists + if (!userFamily) { + throw new errors.NotFoundError( + requestContext.translate(USER_FAMILY_NOT_FOUND_ERROR.MESSAGE), + USER_FAMILY_NOT_FOUND_ERROR.CODE, + USER_FAMILY_NOT_FOUND_ERROR.PARAM, + ); + } + + // Deletes the UserFamily. + await UserFamily.deleteOne({ + _id: userFamily._id, + }); + + return userFamily; +}; diff --git a/src/resolvers/Mutation/removeUserFromGroupChat.ts b/src/resolvers/Mutation/removeUserFromGroupChat.ts index 55615e0281..db0ebe6358 100644 --- a/src/resolvers/Mutation/removeUserFromGroupChat.ts +++ b/src/resolvers/Mutation/removeUserFromGroupChat.ts @@ -32,7 +32,7 @@ export const removeUserFromGroupChat: MutationResolvers["removeUserFromGroupChat throw new errors.NotFoundError( requestContext.translate(CHAT_NOT_FOUND_ERROR.MESSAGE), CHAT_NOT_FOUND_ERROR.CODE, - CHAT_NOT_FOUND_ERROR.PARAM + CHAT_NOT_FOUND_ERROR.PARAM, ); } @@ -57,7 +57,7 @@ export const removeUserFromGroupChat: MutationResolvers["removeUserFromGroupChat throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -65,7 +65,7 @@ export const removeUserFromGroupChat: MutationResolvers["removeUserFromGroupChat await adminCheck(context.userId, organization); const userIsMemberOfGroupChat = groupChat.users.some((user) => - user.equals(args.userId) + user.equals(args.userId), ); // Checks if user with _id === args.userId is not a member of groupChat. @@ -73,7 +73,7 @@ export const removeUserFromGroupChat: MutationResolvers["removeUserFromGroupChat throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -85,12 +85,12 @@ export const removeUserFromGroupChat: MutationResolvers["removeUserFromGroupChat { $set: { users: groupChat.users.filter( - (user) => user.toString() !== args.userId.toString() + (user) => user.toString() !== args.userId.toString(), ), }, }, { new: true, - } + }, ).lean(); }; diff --git a/src/resolvers/Mutation/removeUserFromUserFamily.ts b/src/resolvers/Mutation/removeUserFromUserFamily.ts new file mode 100644 index 0000000000..95ebc1bb1f --- /dev/null +++ b/src/resolvers/Mutation/removeUserFromUserFamily.ts @@ -0,0 +1,129 @@ +import { + ADMIN_REMOVING_ADMIN, + ADMIN_REMOVING_CREATOR, + USER_FAMILY_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, + USER_REMOVING_SELF, +} from "../../constants"; +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import { errors, requestContext } from "../../libraries"; +import { User } from "../../models"; +import { UserFamily } from "../../models/userFamily"; +import { adminCheck } from "../../utilities/userFamilyAdminCheck"; +import { Types } from "mongoose"; +/** + * This function enables to remove a user from group chat. + * @param _parent - parent of current request + * @param args - payload provided with the request + * @param context - context of entire publication + * @remarks The following checks are done: + * 1. If the family exists. + * 2. If the user to be removed is member of the organisation. + * 3. If the user is admin of the family + * @returns Updated group chat. + */ +export const removeUserFromUserFamily: MutationResolvers["removeUserFromUserFamily"] = + async (_parent, args, context) => { + const userFamily = await UserFamily.findById({ + _id: args.familyId, + }).lean(); + + const currentUser = await User.findById({ + _id: context.userId, + }); + + const user = await User.findById({ + _id: args.userId, + }); + + // Check whether the user exists. + if (!user) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + const userIsMemberOfUserFamily = userFamily?.users.some((member) => { + return Types.ObjectId(member).equals(user?._id); + }); + + const userIdUserFamilyAdmin = userFamily?.admins.some((admin) => { + Types.ObjectId(admin).equals(user?._id); + }); + + //Check whether user family exists. + if (!userFamily) { + throw new errors.NotFoundError( + requestContext.translate(USER_FAMILY_NOT_FOUND_ERROR.MESSAGE), + USER_FAMILY_NOT_FOUND_ERROR.CODE, + USER_FAMILY_NOT_FOUND_ERROR.PARAM, + ); + } + + //check whether user is admin of the family. + await adminCheck(currentUser?._id, userFamily); + + //Check whether user is member of the family. + if (!userIsMemberOfUserFamily) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + // Check if the current user is removing self + if (user._id.equals(currentUser?._id)) { + throw new errors.ConflictError( + requestContext.translate(USER_REMOVING_SELF.MESSAGE), + USER_REMOVING_SELF.CODE, + USER_REMOVING_SELF.PARAM, + ); + } + + /* + userIsUserFamilyAdmin being true implies that the current user is an admin of userFamily. + If userIsUserFamilyAdmin is true pushes error message to errors list and breaks out of loop. + */ + if (userIdUserFamilyAdmin) { + throw new errors.ConflictError( + requestContext.translate(ADMIN_REMOVING_ADMIN.MESSAGE), + ADMIN_REMOVING_ADMIN.CODE, + ADMIN_REMOVING_ADMIN.PARAM, + ); + } + + /* + Administrators cannot remove creator of userFamily from the members list. + Following if block matches userFamily's creator's id to + user's id. Match being true implies that current user is the creator + of userFamily. If match is true assigns error message to errors list + and breaks out of loop. + */ + if (Types.ObjectId(userFamily.creator.toString()).equals(user._id)) { + throw new errors.UnauthorizedError( + requestContext.translate(ADMIN_REMOVING_CREATOR.MESSAGE), + ADMIN_REMOVING_CREATOR.CODE, + ADMIN_REMOVING_CREATOR.PARAM, + ); + } + + //Removes args.userId from users list of user family ans return the updated family. + return await UserFamily.findOneAndUpdate( + { + _id: args.familyId, + }, + { + $set: { + users: userFamily.users.filter( + (user) => user.toString() !== args.userId.toString(), + ), + }, + }, + { + new: true, + }, + ).lean(); + }; diff --git a/src/resolvers/Mutation/removeUserImage.ts b/src/resolvers/Mutation/removeUserImage.ts index 0ac25515db..7a3fb2c7d7 100644 --- a/src/resolvers/Mutation/removeUserImage.ts +++ b/src/resolvers/Mutation/removeUserImage.ts @@ -19,7 +19,7 @@ import { deleteImage } from "../../utilities"; export const removeUserImage: MutationResolvers["removeUserImage"] = async ( _parent, _args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -30,7 +30,7 @@ export const removeUserImage: MutationResolvers["removeUserImage"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -39,7 +39,7 @@ export const removeUserImage: MutationResolvers["removeUserImage"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_PROFILE_IMAGE_NOT_FOUND_ERROR.MESSAGE), USER_PROFILE_IMAGE_NOT_FOUND_ERROR.MESSAGE, - USER_PROFILE_IMAGE_NOT_FOUND_ERROR.PARAM + USER_PROFILE_IMAGE_NOT_FOUND_ERROR.PARAM, ); } @@ -57,6 +57,6 @@ export const removeUserImage: MutationResolvers["removeUserImage"] = async ( }, { new: true, - } + }, ).lean(); }; diff --git a/src/resolvers/Mutation/removeUserTag.ts b/src/resolvers/Mutation/removeUserTag.ts index ce0c84e5eb..51b00ec311 100644 --- a/src/resolvers/Mutation/removeUserTag.ts +++ b/src/resolvers/Mutation/removeUserTag.ts @@ -10,7 +10,7 @@ import { export const removeUserTag: MutationResolvers["removeUserTag"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -21,7 +21,7 @@ export const removeUserTag: MutationResolvers["removeUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -34,13 +34,13 @@ export const removeUserTag: MutationResolvers["removeUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(TAG_NOT_FOUND.MESSAGE), TAG_NOT_FOUND.CODE, - TAG_NOT_FOUND.PARAM + TAG_NOT_FOUND.PARAM, ); } // Boolean to determine whether user is an admin of organization of the tag const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organization) => organization.equals(tag.organizationId) + (organization) => organization.equals(tag.organizationId), ); // Checks whether currentUser cannot delete the tag folder. @@ -51,7 +51,7 @@ export const removeUserTag: MutationResolvers["removeUserTag"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -72,7 +72,7 @@ export const removeUserTag: MutationResolvers["removeUserTag"] = async ( }, { _id: 1, - } + }, ); currentParents = currentParents .map((tag) => tag._id) diff --git a/src/resolvers/Mutation/revokeRefreshTokenForUser.ts b/src/resolvers/Mutation/revokeRefreshTokenForUser.ts index a2dadd821d..03a5ac2efc 100644 --- a/src/resolvers/Mutation/revokeRefreshTokenForUser.ts +++ b/src/resolvers/Mutation/revokeRefreshTokenForUser.ts @@ -14,7 +14,7 @@ export const revokeRefreshTokenForUser: MutationResolvers["revokeRefreshTokenFor }, { $unset: { token: 1 }, - } + }, ); return true; diff --git a/src/resolvers/Mutation/saveFcmToken.ts b/src/resolvers/Mutation/saveFcmToken.ts index 8988d3d603..d49a39b8ff 100644 --- a/src/resolvers/Mutation/saveFcmToken.ts +++ b/src/resolvers/Mutation/saveFcmToken.ts @@ -12,7 +12,7 @@ import { User } from "../../models"; export const saveFcmToken: MutationResolvers["saveFcmToken"] = async ( _parent, args, - context + context, ) => { await User.updateOne( { @@ -22,7 +22,7 @@ export const saveFcmToken: MutationResolvers["saveFcmToken"] = async ( $set: { token: args.token, }, - } + }, ); return true; diff --git a/src/resolvers/Mutation/sendMembershipRequest.ts b/src/resolvers/Mutation/sendMembershipRequest.ts index 15a4cfa99b..66c4f1fdab 100644 --- a/src/resolvers/Mutation/sendMembershipRequest.ts +++ b/src/resolvers/Mutation/sendMembershipRequest.ts @@ -42,7 +42,7 @@ export const sendMembershipRequest: MutationResolvers["sendMembershipRequest"] = throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -55,7 +55,7 @@ export const sendMembershipRequest: MutationResolvers["sendMembershipRequest"] = throw new errors.ConflictError( requestContext.translate(MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.MESSAGE), MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.CODE, - MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.PARAM + MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.PARAM, ); } @@ -76,7 +76,7 @@ export const sendMembershipRequest: MutationResolvers["sendMembershipRequest"] = }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { @@ -92,7 +92,7 @@ export const sendMembershipRequest: MutationResolvers["sendMembershipRequest"] = $push: { membershipRequests: createdMembershipRequest._id, }, - } + }, ); return createdMembershipRequest.toObject(); diff --git a/src/resolvers/Mutation/sendMessageToDirectChat.ts b/src/resolvers/Mutation/sendMessageToDirectChat.ts index 097608bc0c..cb2c0e552a 100644 --- a/src/resolvers/Mutation/sendMessageToDirectChat.ts +++ b/src/resolvers/Mutation/sendMessageToDirectChat.ts @@ -22,7 +22,7 @@ export const sendMessageToDirectChat: MutationResolvers["sendMessageToDirectChat throw new errors.NotFoundError( requestContext.translate(CHAT_NOT_FOUND_ERROR.MESSAGE), CHAT_NOT_FOUND_ERROR.CODE, - CHAT_NOT_FOUND_ERROR.PARAM + CHAT_NOT_FOUND_ERROR.PARAM, ); } @@ -34,13 +34,13 @@ export const sendMessageToDirectChat: MutationResolvers["sendMessageToDirectChat throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } // directChat.users can only have 2 users. So, the following method works. const receiverIndex = directChat.users.findIndex( - (user) => user.toString() !== context.userId.toString() + (user) => user.toString() !== context.userId.toString(), ); const createdDirectChatMessage = await DirectChatMessage.create({ @@ -59,7 +59,7 @@ export const sendMessageToDirectChat: MutationResolvers["sendMessageToDirectChat $push: { messages: createdDirectChatMessage._id, }, - } + }, ); // calls subscription diff --git a/src/resolvers/Mutation/sendMessageToGroupChat.ts b/src/resolvers/Mutation/sendMessageToGroupChat.ts index a92b9f3e9a..738bd0be4f 100644 --- a/src/resolvers/Mutation/sendMessageToGroupChat.ts +++ b/src/resolvers/Mutation/sendMessageToGroupChat.ts @@ -27,7 +27,7 @@ export const sendMessageToGroupChat: MutationResolvers["sendMessageToGroupChat"] throw new errors.NotFoundError( requestContext.translate(CHAT_NOT_FOUND_ERROR.MESSAGE), CHAT_NOT_FOUND_ERROR.CODE, - CHAT_NOT_FOUND_ERROR.PARAM + CHAT_NOT_FOUND_ERROR.PARAM, ); } @@ -39,12 +39,12 @@ export const sendMessageToGroupChat: MutationResolvers["sendMessageToGroupChat"] throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const currentUserIsAMemberOfGroupChat = groupChat.users.some((user) => - user.equals(context.userId) + user.equals(context.userId), ); /* @@ -55,7 +55,7 @@ export const sendMessageToGroupChat: MutationResolvers["sendMessageToGroupChat"] throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -75,7 +75,7 @@ export const sendMessageToGroupChat: MutationResolvers["sendMessageToGroupChat"] $push: { messages: createdGroupChatMessage._id, }, - } + }, ); // calls subscription diff --git a/src/resolvers/Mutation/signUp.ts b/src/resolvers/Mutation/signUp.ts index 1ef2131566..cbed0c3795 100644 --- a/src/resolvers/Mutation/signUp.ts +++ b/src/resolvers/Mutation/signUp.ts @@ -34,7 +34,7 @@ export const signUp: MutationResolvers["signUp"] = async (_parent, args) => { throw new errors.ConflictError( requestContext.translate(EMAIL_ALREADY_EXISTS_ERROR.MESSAGE), EMAIL_ALREADY_EXISTS_ERROR.CODE, - EMAIL_ALREADY_EXISTS_ERROR.PARAM + EMAIL_ALREADY_EXISTS_ERROR.PARAM, ); } @@ -59,7 +59,7 @@ export const signUp: MutationResolvers["signUp"] = async (_parent, args) => { throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } } diff --git a/src/resolvers/Mutation/togglePostPin.ts b/src/resolvers/Mutation/togglePostPin.ts index ebd55e4ee5..d79724cc43 100644 --- a/src/resolvers/Mutation/togglePostPin.ts +++ b/src/resolvers/Mutation/togglePostPin.ts @@ -19,7 +19,7 @@ import { isValidString } from "../../libraries/validators/validateString"; export const togglePostPin: MutationResolvers["togglePostPin"] = async ( _parent, args, - context + context, ) => { // Get the current user const currentUser = await User.findOne({ @@ -31,7 +31,7 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -55,13 +55,13 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( throw new errors.NotFoundError( requestContext.translate(POST_NOT_FOUND_ERROR.MESSAGE), POST_NOT_FOUND_ERROR.CODE, - POST_NOT_FOUND_ERROR.PARAM + POST_NOT_FOUND_ERROR.PARAM, ); } // Check if the current user is authorized to perform the operation const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organizationId) => organizationId.equals(post?.organization) + (organizationId) => organizationId.equals(post?.organization), ); if ( @@ -71,7 +71,7 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_TO_PIN.MESSAGE), USER_NOT_AUTHORIZED_TO_PIN.CODE, - USER_NOT_AUTHORIZED_TO_PIN.PARAM + USER_NOT_AUTHORIZED_TO_PIN.PARAM, ); } @@ -92,7 +92,7 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( await cacheOrganizations([organization!]); } const currentPostIsPinned = organization?.pinnedPosts.some((postID) => - Types.ObjectId(postID).equals(args.id) + Types.ObjectId(postID).equals(args.id), ); if (currentPostIsPinned) { @@ -107,7 +107,7 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -123,7 +123,7 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( pinned: false, title: "", }, - } + }, ).lean(); if (updatedPost !== null) { @@ -135,7 +135,7 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( if (!args.title) { throw new errors.InputValidationError( requestContext.translate(PLEASE_PROVIDE_TITLE.MESSAGE), - PLEASE_PROVIDE_TITLE.CODE + PLEASE_PROVIDE_TITLE.CODE, ); } @@ -144,9 +144,9 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( if (!validationResultTitle.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } } @@ -162,7 +162,7 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -177,7 +177,7 @@ export const togglePostPin: MutationResolvers["togglePostPin"] = async ( pinned: true, title: args?.title, }, - } + }, ).lean(); if (updatedPost !== null) { diff --git a/src/resolvers/Mutation/unassignUserTag.ts b/src/resolvers/Mutation/unassignUserTag.ts index b1fe4b1897..f35a4d0f04 100644 --- a/src/resolvers/Mutation/unassignUserTag.ts +++ b/src/resolvers/Mutation/unassignUserTag.ts @@ -11,7 +11,7 @@ import { export const unassignUserTag: MutationResolvers["unassignUserTag"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -22,7 +22,7 @@ export const unassignUserTag: MutationResolvers["unassignUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -35,13 +35,13 @@ export const unassignUserTag: MutationResolvers["unassignUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(TAG_NOT_FOUND.MESSAGE), TAG_NOT_FOUND.CODE, - TAG_NOT_FOUND.PARAM + TAG_NOT_FOUND.PARAM, ); } // Boolean to determine whether user is an admin of organization of the tag. const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organization) => organization.equals(tag?.organizationId) + (organization) => organization.equals(tag?.organizationId), ); // Checks whether currentUser can assign the tag or not. @@ -52,7 +52,7 @@ export const unassignUserTag: MutationResolvers["unassignUserTag"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -65,7 +65,7 @@ export const unassignUserTag: MutationResolvers["unassignUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -78,7 +78,7 @@ export const unassignUserTag: MutationResolvers["unassignUserTag"] = async ( throw new errors.ConflictError( requestContext.translate(USER_DOES_NOT_HAVE_THE_TAG.MESSAGE), USER_DOES_NOT_HAVE_THE_TAG.CODE, - USER_DOES_NOT_HAVE_THE_TAG.PARAM + USER_DOES_NOT_HAVE_THE_TAG.PARAM, ); } diff --git a/src/resolvers/Mutation/unblockUser.ts b/src/resolvers/Mutation/unblockUser.ts index 7b7087e053..6b42ee9a7e 100644 --- a/src/resolvers/Mutation/unblockUser.ts +++ b/src/resolvers/Mutation/unblockUser.ts @@ -25,7 +25,7 @@ import { Types } from "mongoose"; export const unblockUser: MutationResolvers["unblockUser"] = async ( _parent, args, - context + context, ) => { let organization: InterfaceOrganization; @@ -48,7 +48,7 @@ export const unblockUser: MutationResolvers["unblockUser"] = async ( throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -61,7 +61,7 @@ export const unblockUser: MutationResolvers["unblockUser"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -69,7 +69,7 @@ export const unblockUser: MutationResolvers["unblockUser"] = async ( await adminCheck(context.userId, organization); const userIsBlockedFromOrganization = organization.blockedUsers.some( - (blockedUser) => Types.ObjectId(blockedUser).equals(user._id) + (blockedUser) => Types.ObjectId(blockedUser).equals(user._id), ); // checks if user with _id === args.userId is blocked by organzation with _id == args.organizationId @@ -77,7 +77,7 @@ export const unblockUser: MutationResolvers["unblockUser"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -89,13 +89,13 @@ export const unblockUser: MutationResolvers["unblockUser"] = async ( { $set: { blockedUsers: organization.blockedUsers.filter( - (blockedUser) => !user._id.equals(blockedUser) + (blockedUser) => !user._id.equals(blockedUser), ), }, }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { @@ -111,14 +111,14 @@ export const unblockUser: MutationResolvers["unblockUser"] = async ( organizationsBlockedBy: user.organizationsBlockedBy.filter( (organizationBlockedBy) => !Types.ObjectId(String(organization._id)).equals( - organizationBlockedBy - ) + organizationBlockedBy, + ), ), }, }, { new: true, - } + }, ) .select(["-password"]) .lean(); diff --git a/src/resolvers/Mutation/unlikeComment.ts b/src/resolvers/Mutation/unlikeComment.ts index b26fb18167..32e2adddb4 100644 --- a/src/resolvers/Mutation/unlikeComment.ts +++ b/src/resolvers/Mutation/unlikeComment.ts @@ -17,7 +17,7 @@ import { cacheComments } from "../../services/CommentCache/cacheComments"; export const unlikeComment: MutationResolvers["unlikeComment"] = async ( _parent, args, - context + context, ) => { let comment; @@ -39,12 +39,12 @@ export const unlikeComment: MutationResolvers["unlikeComment"] = async ( throw new errors.NotFoundError( requestContext.translate(COMMENT_NOT_FOUND_ERROR.MESSAGE), COMMENT_NOT_FOUND_ERROR.CODE, - COMMENT_NOT_FOUND_ERROR.PARAM + COMMENT_NOT_FOUND_ERROR.PARAM, ); } const currentUserHasLikedComment = comment.likedBy.some((liker) => - liker.equals(context.userId) + liker.equals(context.userId), ); if (currentUserHasLikedComment === true) { @@ -62,7 +62,7 @@ export const unlikeComment: MutationResolvers["unlikeComment"] = async ( }, { new: true, - } + }, ).lean(); if (updatedComment !== null) { diff --git a/src/resolvers/Mutation/unlikePost.ts b/src/resolvers/Mutation/unlikePost.ts index 2f36334b7a..605c2bdf77 100644 --- a/src/resolvers/Mutation/unlikePost.ts +++ b/src/resolvers/Mutation/unlikePost.ts @@ -18,7 +18,7 @@ import { cachePosts } from "../../services/PostCache/cachePosts"; export const unlikePost: MutationResolvers["unlikePost"] = async ( _parent, args, - context + context, ) => { let post: InterfacePost | null; @@ -39,12 +39,12 @@ export const unlikePost: MutationResolvers["unlikePost"] = async ( throw new errors.NotFoundError( requestContext.translate(POST_NOT_FOUND_ERROR.MESSAGE), POST_NOT_FOUND_ERROR.CODE, - POST_NOT_FOUND_ERROR.PARAM + POST_NOT_FOUND_ERROR.PARAM, ); } const currentUserHasLikedPost = post.likedBy.some((liker) => - liker.equals(context.userId) + liker.equals(context.userId), ); if (currentUserHasLikedPost === true) { @@ -62,7 +62,7 @@ export const unlikePost: MutationResolvers["unlikePost"] = async ( }, { new: true, - } + }, ).lean(); if (updatedPost !== null) { diff --git a/src/resolvers/Mutation/unregisterForEventByUser.ts b/src/resolvers/Mutation/unregisterForEventByUser.ts index a7ef40cce1..246d6b6086 100644 --- a/src/resolvers/Mutation/unregisterForEventByUser.ts +++ b/src/resolvers/Mutation/unregisterForEventByUser.ts @@ -43,7 +43,7 @@ export const unregisterForEventByUser: MutationResolvers["unregisterForEventByUs throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } @@ -56,7 +56,7 @@ export const unregisterForEventByUser: MutationResolvers["unregisterForEventByUs throw new errors.NotFoundError( requestContext.translate(USER_ALREADY_UNREGISTERED_ERROR.MESSAGE), USER_ALREADY_UNREGISTERED_ERROR.CODE, - USER_ALREADY_UNREGISTERED_ERROR.PARAM + USER_ALREADY_UNREGISTERED_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/updateActionItem.ts b/src/resolvers/Mutation/updateActionItem.ts index 7a17387f2b..0257d7da40 100644 --- a/src/resolvers/Mutation/updateActionItem.ts +++ b/src/resolvers/Mutation/updateActionItem.ts @@ -38,7 +38,7 @@ type UpdateActionItemInputType = { export const updateActionItem: MutationResolvers["updateActionItem"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -49,7 +49,7 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -64,7 +64,7 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(ACTION_ITEM_NOT_FOUND_ERROR.MESSAGE), ACTION_ITEM_NOT_FOUND_ERROR.CODE, - ACTION_ITEM_NOT_FOUND_ERROR.PARAM + ACTION_ITEM_NOT_FOUND_ERROR.PARAM, ); } @@ -72,7 +72,7 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( if (args.data.assigneeId) { sameAssignedUser = Types.ObjectId(actionItem.assigneeId).equals( - args.data.assigneeId + args.data.assigneeId, ); if (!sameAssignedUser) { @@ -85,7 +85,7 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -94,7 +94,7 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( userIsOrganizationMember = newAssignedUser.joinedOrganizations.some( (organizationId) => organizationId === currorganizationId || - Types.ObjectId(organizationId).equals(currorganizationId) + Types.ObjectId(organizationId).equals(currorganizationId), ); // Checks if the new asignee is a member of the organization @@ -102,7 +102,7 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_MEMBER_FOR_ORGANIZATION.MESSAGE), USER_NOT_MEMBER_FOR_ORGANIZATION.CODE, - USER_NOT_MEMBER_FOR_ORGANIZATION.PARAM + USER_NOT_MEMBER_FOR_ORGANIZATION.PARAM, ); } } @@ -112,8 +112,8 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( (ogranizationId) => ogranizationId === actionItem.actionItemCategoryId.organizationId || Types.ObjectId(ogranizationId).equals( - actionItem.actionItemCategoryId.organizationId - ) + actionItem.actionItemCategoryId.organizationId, + ), ); let currentUserIsEventAdmin = false; @@ -140,14 +140,15 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } // Checks if the currUser is an admin of the event currentUserIsEventAdmin = currEvent.admins.some( (admin) => - admin === context.userID || Types.ObjectId(admin).equals(context.userId) + admin === context.userID || + Types.ObjectId(admin).equals(context.userId), ); } @@ -160,7 +161,7 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -183,7 +184,7 @@ export const updateActionItem: MutationResolvers["updateActionItem"] = async ( }, { new: true, - } + }, ).lean(); return updatedActionItem; diff --git a/src/resolvers/Mutation/updateActionItemCategory.ts b/src/resolvers/Mutation/updateActionItemCategory.ts index d2deaf31f8..7be02223c6 100644 --- a/src/resolvers/Mutation/updateActionItemCategory.ts +++ b/src/resolvers/Mutation/updateActionItemCategory.ts @@ -34,7 +34,7 @@ export const updateActionItemCategory: MutationResolvers["updateActionItemCatego throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -49,7 +49,7 @@ export const updateActionItemCategory: MutationResolvers["updateActionItemCatego throw new errors.NotFoundError( requestContext.translate(ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.MESSAGE), ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.CODE, - ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.PARAM + ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.PARAM, ); } @@ -64,7 +64,7 @@ export const updateActionItemCategory: MutationResolvers["updateActionItemCatego }, { new: true, - } + }, ).lean(); return updatedCategory; diff --git a/src/resolvers/Mutation/updateAdvertisement.ts b/src/resolvers/Mutation/updateAdvertisement.ts index 5a98ceb2f2..3960ab6a51 100644 --- a/src/resolvers/Mutation/updateAdvertisement.ts +++ b/src/resolvers/Mutation/updateAdvertisement.ts @@ -20,7 +20,7 @@ export const updateAdvertisement: MutationResolvers["updateAdvertisement"] = throw new errors.InputValidationError( requestContext.translate(INPUT_NOT_FOUND_ERROR.MESSAGE), INPUT_NOT_FOUND_ERROR.CODE, - INPUT_NOT_FOUND_ERROR.PARAM + INPUT_NOT_FOUND_ERROR.PARAM, ); } @@ -34,7 +34,7 @@ export const updateAdvertisement: MutationResolvers["updateAdvertisement"] = throw new errors.InputValidationError( requestContext.translate(FIELD_NON_EMPTY_ERROR.MESSAGE), FIELD_NON_EMPTY_ERROR.CODE, - FIELD_NON_EMPTY_ERROR.PARAM + FIELD_NON_EMPTY_ERROR.PARAM, ); } } @@ -47,7 +47,7 @@ export const updateAdvertisement: MutationResolvers["updateAdvertisement"] = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -55,7 +55,7 @@ export const updateAdvertisement: MutationResolvers["updateAdvertisement"] = throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -69,7 +69,7 @@ export const updateAdvertisement: MutationResolvers["updateAdvertisement"] = throw new errors.InputValidationError( requestContext.translate(START_DATE_VALIDATION_ERROR.MESSAGE), START_DATE_VALIDATION_ERROR.CODE, - START_DATE_VALIDATION_ERROR.PARAM + START_DATE_VALIDATION_ERROR.PARAM, ); } @@ -78,7 +78,7 @@ export const updateAdvertisement: MutationResolvers["updateAdvertisement"] = throw new errors.InputValidationError( requestContext.translate(END_DATE_VALIDATION_ERROR.MESSAGE), END_DATE_VALIDATION_ERROR.CODE, - END_DATE_VALIDATION_ERROR.PARAM + END_DATE_VALIDATION_ERROR.PARAM, ); } @@ -91,14 +91,14 @@ export const updateAdvertisement: MutationResolvers["updateAdvertisement"] = }, { new: true, - } + }, ).lean(); if (!updatedAdvertisement) { throw new errors.NotFoundError( requestContext.translate(ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE), ADVERTISEMENT_NOT_FOUND_ERROR.CODE, - ADVERTISEMENT_NOT_FOUND_ERROR.PARAM + ADVERTISEMENT_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Mutation/updateAgendaCategory.ts b/src/resolvers/Mutation/updateAgendaCategory.ts new file mode 100644 index 0000000000..3fb6547cbe --- /dev/null +++ b/src/resolvers/Mutation/updateAgendaCategory.ts @@ -0,0 +1,96 @@ +import type { + MutationResolvers, + UpdateAgendaCategoryInput, +} from "../../types/generatedGraphQLTypes"; +import { errors, requestContext } from "../../libraries"; +import { AgendaCategoryModel, User } from "../../models"; +import { + AGENDA_CATEGORY_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, + USER_NOT_AUTHORIZED_ERROR, +} from "../../constants"; +import { Types } from "mongoose"; +/** + * This is a resolver function for the GraphQL mutation 'updateAgendaCategory'. + * + * This resolver updates an existing agenda category based on the provided ID. + * It checks if the user has the necessary permissions to update the agenda category. + * + * @param _parent - The parent object, not used in this resolver. + * @param args - The input arguments for the mutation. + * @param context - The context object containing user information. + * @returns A promise that resolves to the updated agenda category. + * @throws `NotFoundError` If the agenda category or user is not found. + * @throws `UnauthorizedError` If the user does not have the required permissions. + * @throws `InternalServerError` For other potential issues during agenda category update. + */ + +export const updateAgendaCategory: MutationResolvers["updateAgendaCategory"] = + async (_parent, args, context) => { + // Check if the AgendaCategory exists + // Fetch the user to get the organization ID + + const userId = context.userId; + const currentUser = await User.findById(userId); + + // If the user is not found, throw a NotFoundError + if (!currentUser) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + const existingAgendaCategory = await AgendaCategoryModel.findById( + args.id, + ).lean(); + + // If the AgendaCategory is not found, throw a NotFoundError + if (!existingAgendaCategory) { + throw new errors.NotFoundError( + requestContext.translate(AGENDA_CATEGORY_NOT_FOUND_ERROR.MESSAGE), + AGENDA_CATEGORY_NOT_FOUND_ERROR.CODE, + AGENDA_CATEGORY_NOT_FOUND_ERROR.PARAM, + ); + } + const currentOrg = await AgendaCategoryModel.findById( + existingAgendaCategory._id, + ) + .populate("organization") + .select("organization") + .lean(); + + const currentUserIsOrgAdmin = currentUser.adminFor.some( + (organizationId) => + organizationId === currentOrg?._id || + Types.ObjectId(organizationId).equals(organizationId), + ); + // If the user is a normal user, throw an error + if ( + currentUserIsOrgAdmin === false && + currentUser.userType !== "SUPERADMIN" + ) { + throw new errors.UnauthorizedError( + USER_NOT_AUTHORIZED_ERROR.MESSAGE, + USER_NOT_AUTHORIZED_ERROR.CODE, + USER_NOT_AUTHORIZED_ERROR.PARAM, + ); + } + + // Update the AgendaCategory + const updatedAgendaCategory = await AgendaCategoryModel.findByIdAndUpdate( + args.id, + { + $set: { + updatedBy: context.userId, + // eslint-disable-next-line + ...(args.input as UpdateAgendaCategoryInput), + }, + }, + { + new: true, + }, + ).lean(); + + return updatedAgendaCategory; + }; diff --git a/src/resolvers/Mutation/updateEvent.ts b/src/resolvers/Mutation/updateEvent.ts index a33a38a740..1e0ab35a0e 100644 --- a/src/resolvers/Mutation/updateEvent.ts +++ b/src/resolvers/Mutation/updateEvent.ts @@ -26,7 +26,7 @@ import { Types } from "mongoose"; export const updateEvent: MutationResolvers["updateEvent"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -37,7 +37,7 @@ export const updateEvent: MutationResolvers["updateEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -62,13 +62,13 @@ export const updateEvent: MutationResolvers["updateEvent"] = async ( throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } const currentUserIsEventAdmin = event.admins.some( (admin) => - admin === context.userID || Types.ObjectId(admin).equals(context.userId) + admin === context.userID || Types.ObjectId(admin).equals(context.userId), ); // checks if current user is an admin of the event with _id === args.id @@ -79,7 +79,7 @@ export const updateEvent: MutationResolvers["updateEvent"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -87,31 +87,31 @@ export const updateEvent: MutationResolvers["updateEvent"] = async ( const validationResultTitle = isValidString(args.data?.title ?? "", 256); const validationResultDescription = isValidString( args.data?.description ?? "", - 500 + 500, ); const validationResultLocation = isValidString(args.data?.location ?? "", 50); if (!validationResultTitle.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } if (!validationResultDescription.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } if (!validationResultLocation.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 50 characters in location` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 50 characters in location`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } @@ -124,7 +124,7 @@ export const updateEvent: MutationResolvers["updateEvent"] = async ( }, { new: true, - } + }, ).lean(); if (updatedEvent !== null) { diff --git a/src/resolvers/Mutation/updateEventVolunteer.ts b/src/resolvers/Mutation/updateEventVolunteer.ts new file mode 100644 index 0000000000..4145a9b132 --- /dev/null +++ b/src/resolvers/Mutation/updateEventVolunteer.ts @@ -0,0 +1,87 @@ +import type { MutationResolvers } from "../../types/generatedGraphQLTypes"; +import type { EventVolunteerResponse } from "../../constants"; +import { + EVENT_VOLUNTEER_INVITE_USER_MISTMATCH, + EVENT_VOLUNTEER_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../constants"; +import type { InterfaceEventVolunteer } from "../../models"; +import { User, EventVolunteer } from "../../models"; +import { errors, requestContext } from "../../libraries"; +/** + * This function accepts the Event Volunteer Invite sent to a user + * @param _parent - parent of current request + * @param args - payload provided with the request + * @param context - context of entire application + * @remarks The following checks are done: + * 1. Whether the user exists + * 2. Whether the EventVolunteer exists + * 3. Whether the current user is the user of EventVolunteer + * 4. Whether the EventVolunteer is invited + */ +export const updateEventVolunteer: MutationResolvers["updateEventVolunteer"] = + async (_parent, args, context) => { + const currentUser = await User.findOne({ + _id: context.userId, + }).lean(); + + if (!currentUser) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + const eventVolunteer = await EventVolunteer.findOne({ + _id: args.id, + }).lean(); + + if (!eventVolunteer) { + throw new errors.NotFoundError( + requestContext.translate(EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE), + EVENT_VOLUNTEER_NOT_FOUND_ERROR.CODE, + EVENT_VOLUNTEER_NOT_FOUND_ERROR.PARAM, + ); + } + + if (eventVolunteer.userId.toString() !== context.userId.toString()) { + throw new errors.ConflictError( + requestContext.translate(EVENT_VOLUNTEER_INVITE_USER_MISTMATCH.MESSAGE), + EVENT_VOLUNTEER_INVITE_USER_MISTMATCH.CODE, + EVENT_VOLUNTEER_INVITE_USER_MISTMATCH.PARAM, + ); + } + + const updatedVolunteer = await EventVolunteer.findOneAndUpdate( + { + _id: args.id, + }, + { + $set: { + eventId: + args.data?.eventId === undefined + ? eventVolunteer.eventId + : (args?.data.eventId as string), + isAssigned: + args.data?.isAssigned === undefined + ? eventVolunteer.isAssigned + : (args.data?.isAssigned as boolean), + isInvited: + args.data?.isInvited === undefined + ? eventVolunteer.isInvited + : (args.data?.isInvited as boolean), + response: + args.data?.response === undefined + ? eventVolunteer.response + : (args.data?.response as EventVolunteerResponse), + }, + }, + { + new: true, + runValidators: true, + }, + ).lean(); + + return updatedVolunteer as InterfaceEventVolunteer; + }; diff --git a/src/resolvers/Mutation/updateLanguage.ts b/src/resolvers/Mutation/updateLanguage.ts index 45e07508b0..3f7929c6cd 100644 --- a/src/resolvers/Mutation/updateLanguage.ts +++ b/src/resolvers/Mutation/updateLanguage.ts @@ -12,7 +12,7 @@ import { User } from "../../models"; export const updateLanguage: MutationResolvers["updateLanguage"] = async ( _parent, args, - context + context, ) => { return await User.findOneAndUpdate( { @@ -25,6 +25,6 @@ export const updateLanguage: MutationResolvers["updateLanguage"] = async ( }, { new: true, - } + }, ).lean(); }; diff --git a/src/resolvers/Mutation/updateOrganization.ts b/src/resolvers/Mutation/updateOrganization.ts index 996d050574..ce313dc6ef 100644 --- a/src/resolvers/Mutation/updateOrganization.ts +++ b/src/resolvers/Mutation/updateOrganization.ts @@ -39,7 +39,7 @@ export const updateOrganization: MutationResolvers["updateOrganization"] = throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -50,7 +50,7 @@ export const updateOrganization: MutationResolvers["updateOrganization"] = if (args.file) { uploadImageFileName = await uploadEncodedImage( args.file, - organization?.image + organization?.image, ); } @@ -66,7 +66,7 @@ export const updateOrganization: MutationResolvers["updateOrganization"] = }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { diff --git a/src/resolvers/Mutation/updatePluginStatus.ts b/src/resolvers/Mutation/updatePluginStatus.ts index b819062d30..a3dd77bbb2 100644 --- a/src/resolvers/Mutation/updatePluginStatus.ts +++ b/src/resolvers/Mutation/updatePluginStatus.ts @@ -25,7 +25,7 @@ export const updatePluginStatus: MutationResolvers["updatePluginStatus"] = throw new errors.NotFoundError( requestContext.translate(PLUGIN_NOT_FOUND.MESSAGE), PLUGIN_NOT_FOUND.CODE, - PLUGIN_NOT_FOUND.PARAM + PLUGIN_NOT_FOUND.PARAM, ); } @@ -34,7 +34,7 @@ export const updatePluginStatus: MutationResolvers["updatePluginStatus"] = if (uninstalledOrgsList.includes(currOrgID)) { //if already uninstalled then install it by removing from array uninstalledOrgsList = uninstalledOrgsList.filter( - (oid: any) => oid != currOrgID + (oid: any) => oid != currOrgID, ); } else { //not already present then uninstall plugin on that org by adding it to the list @@ -51,7 +51,7 @@ export const updatePluginStatus: MutationResolvers["updatePluginStatus"] = }, { new: true, - } + }, ).lean(); // calls subscription diff --git a/src/resolvers/Mutation/updatePost.ts b/src/resolvers/Mutation/updatePost.ts index 6b358993ef..517025341e 100644 --- a/src/resolvers/Mutation/updatePost.ts +++ b/src/resolvers/Mutation/updatePost.ts @@ -18,7 +18,7 @@ import { uploadEncodedVideo } from "../../utilities/encodedVideoStorage/uploadEn export const updatePost: MutationResolvers["updatePost"] = async ( _parent, args, - context + context, ) => { let post: InterfacePost | null; @@ -40,7 +40,7 @@ export const updatePost: MutationResolvers["updatePost"] = async ( throw new errors.NotFoundError( requestContext.translate(POST_NOT_FOUND_ERROR.MESSAGE), POST_NOT_FOUND_ERROR.CODE, - POST_NOT_FOUND_ERROR.PARAM + POST_NOT_FOUND_ERROR.PARAM, ); } @@ -51,21 +51,21 @@ export const updatePost: MutationResolvers["updatePost"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } if (args.data?.imageUrl && args.data?.imageUrl !== null) { args.data.imageUrl = await uploadEncodedImage( args.data.imageUrl, - post.imageUrl + post.imageUrl, ); } if (args.data?.videoUrl && args.data?.videoUrl !== null) { args.data.videoUrl = await uploadEncodedVideo( args.data.videoUrl, - post.videoUrl + post.videoUrl, ); } @@ -73,12 +73,12 @@ export const updatePost: MutationResolvers["updatePost"] = async ( if (args.data?.title && !post.pinned) { throw new errors.InputValidationError( requestContext.translate(POST_NEEDS_TO_BE_PINNED.MESSAGE), - POST_NEEDS_TO_BE_PINNED.CODE + POST_NEEDS_TO_BE_PINNED.CODE, ); } else if (!args.data?.title && post.pinned) { throw new errors.InputValidationError( requestContext.translate(PLEASE_PROVIDE_TITLE.MESSAGE), - PLEASE_PROVIDE_TITLE.CODE + PLEASE_PROVIDE_TITLE.CODE, ); } @@ -88,17 +88,17 @@ export const updatePost: MutationResolvers["updatePost"] = async ( if (!validationResultTitle.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } if (!validationResultText.isLessThanMaxLength) { throw new errors.InputValidationError( requestContext.translate( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in information` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in information`, ), - LENGTH_VALIDATION_ERROR.CODE + LENGTH_VALIDATION_ERROR.CODE, ); } @@ -111,7 +111,7 @@ export const updatePost: MutationResolvers["updatePost"] = async ( }, { new: true, - } + }, ).lean(); if (updatedPost !== null) { diff --git a/src/resolvers/Mutation/updateUserPassword.ts b/src/resolvers/Mutation/updateUserPassword.ts index ff20e208c4..3123451a9d 100644 --- a/src/resolvers/Mutation/updateUserPassword.ts +++ b/src/resolvers/Mutation/updateUserPassword.ts @@ -17,13 +17,13 @@ export const updateUserPassword: MutationResolvers["updateUserPassword"] = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } const isPasswordValid = await bcrypt.compare( args.data.previousPassword, - currentUser.password + currentUser.password, ); // Checks whether password is invalid. @@ -32,13 +32,13 @@ export const updateUserPassword: MutationResolvers["updateUserPassword"] = [ { message: requestContext.translate( - INVALID_CREDENTIALS_ERROR.MESSAGE + INVALID_CREDENTIALS_ERROR.MESSAGE, ), code: INVALID_CREDENTIALS_ERROR.CODE, param: INVALID_CREDENTIALS_ERROR.PARAM, }, ], - requestContext.translate(INVALID_CREDENTIALS_ERROR.MESSAGE) + requestContext.translate(INVALID_CREDENTIALS_ERROR.MESSAGE), ); } @@ -47,13 +47,13 @@ export const updateUserPassword: MutationResolvers["updateUserPassword"] = [ { message: requestContext.translate( - INVALID_CREDENTIALS_ERROR.MESSAGE + INVALID_CREDENTIALS_ERROR.MESSAGE, ), code: INVALID_CREDENTIALS_ERROR.CODE, param: INVALID_CREDENTIALS_ERROR.PARAM, }, ], - requestContext.translate(INVALID_CREDENTIALS_ERROR.MESSAGE) + requestContext.translate(INVALID_CREDENTIALS_ERROR.MESSAGE), ); } @@ -71,6 +71,6 @@ export const updateUserPassword: MutationResolvers["updateUserPassword"] = }, { new: true, - } + }, ).lean(); }; diff --git a/src/resolvers/Mutation/updateUserProfile.ts b/src/resolvers/Mutation/updateUserProfile.ts index d63d6821a5..d6844af867 100644 --- a/src/resolvers/Mutation/updateUserProfile.ts +++ b/src/resolvers/Mutation/updateUserProfile.ts @@ -19,7 +19,7 @@ import { uploadEncodedImage } from "../../utilities/encodedImageStorage/uploadEn export const updateUserProfile: MutationResolvers["updateUserProfile"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -29,7 +29,7 @@ export const updateUserProfile: MutationResolvers["updateUserProfile"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -42,7 +42,7 @@ export const updateUserProfile: MutationResolvers["updateUserProfile"] = async ( throw new errors.ConflictError( requestContext.translate(EMAIL_ALREADY_EXISTS_ERROR.MESSAGE), EMAIL_ALREADY_EXISTS_ERROR.MESSAGE, - EMAIL_ALREADY_EXISTS_ERROR.PARAM + EMAIL_ALREADY_EXISTS_ERROR.PARAM, ); } } @@ -52,7 +52,7 @@ export const updateUserProfile: MutationResolvers["updateUserProfile"] = async ( if (args.file) { uploadImageFileName = await uploadEncodedImage( args.file, - currentUser?.image + currentUser?.image, ); } @@ -126,7 +126,7 @@ export const updateUserProfile: MutationResolvers["updateUserProfile"] = async ( { new: true, runValidators: true, - } + }, ).lean(); updatedUser!.image = updatedUser?.image ? `${context.apiRootUrl}${updatedUser?.image}` diff --git a/src/resolvers/Mutation/updateUserRoleInOrganization.ts b/src/resolvers/Mutation/updateUserRoleInOrganization.ts index 44ab448d76..c314d7e345 100644 --- a/src/resolvers/Mutation/updateUserRoleInOrganization.ts +++ b/src/resolvers/Mutation/updateUserRoleInOrganization.ts @@ -31,7 +31,7 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } @@ -42,20 +42,20 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } // Checks whether user to be removed is a member of the organization. const userIsOrganizationMember = organization?.members.some((member) => - Types.ObjectId(member).equals(user._id) + Types.ObjectId(member).equals(user._id), ); if (!userIsOrganizationMember) { throw new errors.NotFoundError( requestContext.translate(USER_NOT_MEMBER_FOR_ORGANIZATION.MESSAGE), USER_NOT_MEMBER_FOR_ORGANIZATION.CODE, - USER_NOT_MEMBER_FOR_ORGANIZATION.PARAM + USER_NOT_MEMBER_FOR_ORGANIZATION.PARAM, ); } @@ -65,13 +65,13 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } // Check whether loggedIn user is admin of the organization. const loggedInUserIsOrganizationAdmin = organization?.admins.some((admin) => - Types.ObjectId(admin).equals(loggedInUser._id) + Types.ObjectId(admin).equals(loggedInUser._id), ); if ( @@ -81,7 +81,7 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr throw new errors.NotFoundError( requestContext.translate(USER_NOT_AUTHORIZED_ADMIN.MESSAGE), USER_NOT_AUTHORIZED_ADMIN.CODE, - USER_NOT_AUTHORIZED_ADMIN.PARAM + USER_NOT_AUTHORIZED_ADMIN.PARAM, ); } // Admin of Org cannot change the role of SUPERADMIN in an organization. @@ -93,7 +93,7 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr throw new errors.NotFoundError( requestContext.translate(USER_NOT_AUTHORIZED_ADMIN.MESSAGE), USER_NOT_AUTHORIZED_ADMIN.CODE, - USER_NOT_AUTHORIZED_ADMIN.PARAM + USER_NOT_AUTHORIZED_ADMIN.PARAM, ); } // ADMIN cannot change the role of itself @@ -104,7 +104,7 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr throw new errors.ConflictError( requestContext.translate(ADMIN_CANNOT_CHANGE_ITS_ROLE.MESSAGE), ADMIN_CANNOT_CHANGE_ITS_ROLE.CODE, - ADMIN_CANNOT_CHANGE_ITS_ROLE.PARAM + ADMIN_CANNOT_CHANGE_ITS_ROLE.PARAM, ); } @@ -113,7 +113,7 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr throw new errors.UnauthorizedError( requestContext.translate(ADMIN_CHANGING_ROLE_OF_CREATOR.MESSAGE), ADMIN_CHANGING_ROLE_OF_CREATOR.CODE, - ADMIN_CHANGING_ROLE_OF_CREATOR.PARAM + ADMIN_CHANGING_ROLE_OF_CREATOR.PARAM, ); } @@ -123,11 +123,11 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr { _id: args.organizationId }, { $push: { admins: args.userId }, - } + }, ); await User.updateOne( { _id: args.userId }, - { $push: { adminFor: args.organizationId } } + { $push: { adminFor: args.organizationId } }, ); return { ...organization, ...updatedOrg }; } else { @@ -135,11 +135,11 @@ export const updateUserRoleInOrganization: MutationResolvers["updateUserRoleInOr { _id: args.organizationId }, { $pull: { admins: args.userId }, - } + }, ).lean(); await User.updateOne( { _id: args.userId }, - { $pull: { adminFor: args.organizationId } } + { $pull: { adminFor: args.organizationId } }, ); return { ...organization, ...updatedOrg }; } diff --git a/src/resolvers/Mutation/updateUserTag.ts b/src/resolvers/Mutation/updateUserTag.ts index 89269b79c6..7badda1ca7 100644 --- a/src/resolvers/Mutation/updateUserTag.ts +++ b/src/resolvers/Mutation/updateUserTag.ts @@ -12,7 +12,7 @@ import { export const updateUserTag: MutationResolvers["updateUserTag"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -23,7 +23,7 @@ export const updateUserTag: MutationResolvers["updateUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -36,13 +36,13 @@ export const updateUserTag: MutationResolvers["updateUserTag"] = async ( throw new errors.NotFoundError( requestContext.translate(TAG_NOT_FOUND.MESSAGE), TAG_NOT_FOUND.CODE, - TAG_NOT_FOUND.PARAM + TAG_NOT_FOUND.PARAM, ); } // Boolean to determine whether user is an admin of organization of the tag folder. const currentUserIsOrganizationAdmin = currentUser.adminFor.some( - (organization) => organization.equals(existingTag?.organizationId) + (organization) => organization.equals(existingTag?.organizationId), ); // Checks whether currentUser can update the tag @@ -53,7 +53,7 @@ export const updateUserTag: MutationResolvers["updateUserTag"] = async ( throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_ERROR.MESSAGE), USER_NOT_AUTHORIZED_ERROR.CODE, - USER_NOT_AUTHORIZED_ERROR.PARAM + USER_NOT_AUTHORIZED_ERROR.PARAM, ); } @@ -62,7 +62,7 @@ export const updateUserTag: MutationResolvers["updateUserTag"] = async ( throw new errors.ConflictError( requestContext.translate(NO_CHANGE_IN_TAG_NAME.MESSAGE), NO_CHANGE_IN_TAG_NAME.CODE, - NO_CHANGE_IN_TAG_NAME.PARAM + NO_CHANGE_IN_TAG_NAME.PARAM, ); } @@ -77,7 +77,7 @@ export const updateUserTag: MutationResolvers["updateUserTag"] = async ( throw new errors.ConflictError( requestContext.translate(TAG_ALREADY_EXISTS.MESSAGE), TAG_ALREADY_EXISTS.CODE, - TAG_ALREADY_EXISTS.PARAM + TAG_ALREADY_EXISTS.PARAM, ); } @@ -91,6 +91,6 @@ export const updateUserTag: MutationResolvers["updateUserTag"] = async ( }, { new: true, - } + }, ).lean(); }; diff --git a/src/resolvers/Mutation/updateUserType.ts b/src/resolvers/Mutation/updateUserType.ts index 63359df912..ffd75fa19c 100644 --- a/src/resolvers/Mutation/updateUserType.ts +++ b/src/resolvers/Mutation/updateUserType.ts @@ -18,7 +18,7 @@ import { superAdminCheck } from "../../utilities"; export const updateUserType: MutationResolvers["updateUserType"] = async ( _parent, args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -30,7 +30,7 @@ export const updateUserType: MutationResolvers["updateUserType"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -39,7 +39,7 @@ export const updateUserType: MutationResolvers["updateUserType"] = async ( throw new errors.InputValidationError( requestContext.translate(SUPERADMIN_CANT_CHANGE_OWN_ROLE.MESSAGE), SUPERADMIN_CANT_CHANGE_OWN_ROLE.CODE, - SUPERADMIN_CANT_CHANGE_OWN_ROLE.PARAM + SUPERADMIN_CANT_CHANGE_OWN_ROLE.PARAM, ); } @@ -51,7 +51,7 @@ export const updateUserType: MutationResolvers["updateUserType"] = async ( throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -62,7 +62,7 @@ export const updateUserType: MutationResolvers["updateUserType"] = async ( { userType: args.data.userType!, adminApproved: true, - } + }, ); return true; diff --git a/src/resolvers/Organization/agendaCategories.ts b/src/resolvers/Organization/agendaCategories.ts new file mode 100644 index 0000000000..43a9acf48d --- /dev/null +++ b/src/resolvers/Organization/agendaCategories.ts @@ -0,0 +1,13 @@ +import { AgendaCategoryModel } from "../../models"; +import type { OrganizationResolvers } from "../../types/generatedGraphQLTypes"; +/** + * This resolver function will fetch and return the categories of the Organization from database. + * @param parent - An object that is the return value of the resolver for this field's parent. + * @returns An object that contains the list of all categories of the organization. + */ +export const agendaCategories: OrganizationResolvers["agendaCategories"] = + async (parent) => { + return await AgendaCategoryModel.find({ + organizationId: parent._id, + }).lean(); + }; diff --git a/src/resolvers/Organization/blockedUsers.ts b/src/resolvers/Organization/blockedUsers.ts index d22642f3a3..70b5a5f9b5 100644 --- a/src/resolvers/Organization/blockedUsers.ts +++ b/src/resolvers/Organization/blockedUsers.ts @@ -6,7 +6,7 @@ import type { OrganizationResolvers } from "../../types/generatedGraphQLTypes"; * @returns An object that contains the list of blocked users for the organization. */ export const blockedUsers: OrganizationResolvers["blockedUsers"] = async ( - parent + parent, ) => { return await User.find({ _id: { diff --git a/src/resolvers/Organization/creator.ts b/src/resolvers/Organization/creator.ts index 180f32d6e4..822d0f6ad8 100644 --- a/src/resolvers/Organization/creator.ts +++ b/src/resolvers/Organization/creator.ts @@ -16,7 +16,7 @@ export const creator: OrganizationResolvers["creator"] = async (parent) => { throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Organization/image.ts b/src/resolvers/Organization/image.ts index a6b5ce2522..c81fedcf60 100644 --- a/src/resolvers/Organization/image.ts +++ b/src/resolvers/Organization/image.ts @@ -4,7 +4,7 @@ import type { OrganizationResolvers } from "../../types/generatedGraphQLTypes"; export const image: OrganizationResolvers["image"] = ( parent, _args, - context + context, ) => { if (parent.image) { return `${context.apiRootUrl}${parent.image}`; diff --git a/src/resolvers/Organization/index.ts b/src/resolvers/Organization/index.ts index 1851c85ab1..87bcdd1821 100644 --- a/src/resolvers/Organization/index.ts +++ b/src/resolvers/Organization/index.ts @@ -7,11 +7,13 @@ import { members } from "./members"; import { pinnedPosts } from "./pinnedPosts"; import { membershipRequests } from "./membershipRequests"; import { actionItemCategories } from "./actionItemCategories"; +import { agendaCategories } from "./agendaCategories"; // import { userTags } from "./userTags"; export const Organization: OrganizationResolvers = { admins, actionItemCategories, + agendaCategories, blockedUsers, creator, image, diff --git a/src/resolvers/Organization/pinnedPosts.ts b/src/resolvers/Organization/pinnedPosts.ts index a26548f2fd..e2347ae6ff 100644 --- a/src/resolvers/Organization/pinnedPosts.ts +++ b/src/resolvers/Organization/pinnedPosts.ts @@ -4,7 +4,7 @@ import { findPostsInCache } from "../../services/PostCache/findPostsInCache"; import type { OrganizationResolvers } from "../../types/generatedGraphQLTypes"; export const pinnedPosts: OrganizationResolvers["pinnedPosts"] = async ( - parent + parent, ) => { const postsInCache = await findPostsInCache(parent.pinnedPosts); diff --git a/src/resolvers/Query/actionItem.ts b/src/resolvers/Query/actionItem.ts index 6d8e2cbfa2..ac4d5d1d6c 100644 --- a/src/resolvers/Query/actionItem.ts +++ b/src/resolvers/Query/actionItem.ts @@ -12,7 +12,7 @@ import { ACTION_ITEM_NOT_FOUND_ERROR } from "../../constants"; */ export const actionItem: QueryResolvers["actionItem"] = async ( _parent, - args + args, ) => { const actionItem = await ActionItem.findOne({ _id: args.id, @@ -22,7 +22,7 @@ export const actionItem: QueryResolvers["actionItem"] = async ( throw new errors.NotFoundError( ACTION_ITEM_NOT_FOUND_ERROR.DESC, ACTION_ITEM_NOT_FOUND_ERROR.CODE, - ACTION_ITEM_NOT_FOUND_ERROR.PARAM + ACTION_ITEM_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/actionItemCategory.ts b/src/resolvers/Query/actionItemCategory.ts index e0cfb1232e..508d67ec15 100644 --- a/src/resolvers/Query/actionItemCategory.ts +++ b/src/resolvers/Query/actionItemCategory.ts @@ -12,7 +12,7 @@ import { ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR } from "../../constants"; */ export const actionItemCategory: QueryResolvers["actionItemCategory"] = async ( _parent, - args + args, ) => { const actionItemCategory = await ActionItemCategory.findOne({ _id: args.id, @@ -22,7 +22,7 @@ export const actionItemCategory: QueryResolvers["actionItemCategory"] = async ( throw new errors.NotFoundError( ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.DESC, ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.CODE, - ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.PARAM + ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/actionItemsByEvent.ts b/src/resolvers/Query/actionItemsByEvent.ts index d031dfdb78..08944db8b2 100644 --- a/src/resolvers/Query/actionItemsByEvent.ts +++ b/src/resolvers/Query/actionItemsByEvent.ts @@ -8,7 +8,7 @@ import { ActionItem } from "../../models"; */ export const actionItemsByEvent: QueryResolvers["actionItemsByEvent"] = async ( _parent, - args + args, ) => { const actionItems = await ActionItem.find({ eventId: args.eventId, diff --git a/src/resolvers/Query/actionItemsByOrganization.ts b/src/resolvers/Query/actionItemsByOrganization.ts index 4520f02af6..6513641b5a 100644 --- a/src/resolvers/Query/actionItemsByOrganization.ts +++ b/src/resolvers/Query/actionItemsByOrganization.ts @@ -13,7 +13,7 @@ export const actionItemsByOrganization: QueryResolvers["actionItemsByOrganizatio organizationId: args.organizationId, }); const actionItemCategoriesIds = actionItemCategories.map( - (category) => category._id + (category) => category._id, ); const actionItems = await ActionItem.find({ diff --git a/src/resolvers/Query/agendaCategory.ts b/src/resolvers/Query/agendaCategory.ts new file mode 100644 index 0000000000..104416ef71 --- /dev/null +++ b/src/resolvers/Query/agendaCategory.ts @@ -0,0 +1,37 @@ +import type { QueryResolvers } from "../../types/generatedGraphQLTypes"; +import { AgendaCategoryModel } from "../../models"; +import { errors } from "../../libraries"; +import { AGENDA_CATEGORY_NOT_FOUND_ERROR } from "../../constants"; + +/** + * This is a resolver function for the GraphQL query 'agendaCategory'. + * + * This resolver fetches an agenda category by its ID. + * + * + * @param _parent - The parent object, not used in this resolver. + * @param args - The input arguments for the query. + * @returns A promise that resolves to the fetched agenda category. + * @throws `NotFoundError` If the agenda category is not found. + * @throws `InternalServerError` For other potential issues during agenda category fetching. + */ + +export const agendaCategory: QueryResolvers["agendaCategory"] = async ( + _parent, + args, +) => { + // Find the AgendaCategory by ID + const foundAgendaCategory = await AgendaCategoryModel.findById( + args.id, + ).lean(); + + // If the AgendaCategory is not found, throw a NotFoundError + if (!foundAgendaCategory) { + throw new errors.NotFoundError( + AGENDA_CATEGORY_NOT_FOUND_ERROR.MESSAGE, + AGENDA_CATEGORY_NOT_FOUND_ERROR.CODE, + AGENDA_CATEGORY_NOT_FOUND_ERROR.PARAM, + ); + } + return foundAgendaCategory; +}; diff --git a/src/resolvers/Query/checkAuth.ts b/src/resolvers/Query/checkAuth.ts index 93daebe0cc..9709cd771d 100644 --- a/src/resolvers/Query/checkAuth.ts +++ b/src/resolvers/Query/checkAuth.ts @@ -13,7 +13,7 @@ import { errors } from "../../libraries"; export const checkAuth: QueryResolvers["checkAuth"] = async ( _parent, _args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -23,7 +23,7 @@ export const checkAuth: QueryResolvers["checkAuth"] = async ( throw new errors.NotFoundError( USER_NOT_FOUND_ERROR.DESC, USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/customFieldsByOrganization.ts b/src/resolvers/Query/customFieldsByOrganization.ts index 93094d1682..0332a100f2 100644 --- a/src/resolvers/Query/customFieldsByOrganization.ts +++ b/src/resolvers/Query/customFieldsByOrganization.ts @@ -22,7 +22,7 @@ export const customFieldsByOrganization: QueryResolvers["customFieldsByOrganizat throw new errors.NotFoundError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/directChatsByUserID.ts b/src/resolvers/Query/directChatsByUserID.ts index 8ea9dafbf6..efb34e93dd 100644 --- a/src/resolvers/Query/directChatsByUserID.ts +++ b/src/resolvers/Query/directChatsByUserID.ts @@ -20,7 +20,7 @@ export const directChatsByUserID: QueryResolvers["directChatsByUserID"] = throw new errors.NotFoundError( "DirectChats not found", "directChats.notFound", - "directChats" + "directChats", ); } diff --git a/src/resolvers/Query/directChatsMessagesByChatID.ts b/src/resolvers/Query/directChatsMessagesByChatID.ts index 5df598c6d9..173eada6e5 100644 --- a/src/resolvers/Query/directChatsMessagesByChatID.ts +++ b/src/resolvers/Query/directChatsMessagesByChatID.ts @@ -23,7 +23,7 @@ export const directChatsMessagesByChatID: QueryResolvers["directChatsMessagesByC throw new errors.NotFoundError( CHAT_NOT_FOUND_ERROR.DESC, CHAT_NOT_FOUND_ERROR.CODE, - CHAT_NOT_FOUND_ERROR.PARAM + CHAT_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/event.ts b/src/resolvers/Query/event.ts index 2dd49a73c9..a905b90986 100644 --- a/src/resolvers/Query/event.ts +++ b/src/resolvers/Query/event.ts @@ -23,7 +23,7 @@ export const event: QueryResolvers["event"] = async (_parent, args) => { throw new errors.NotFoundError( EVENT_NOT_FOUND_ERROR.DESC, EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/eventVolunteersByEvent.ts b/src/resolvers/Query/eventVolunteersByEvent.ts new file mode 100644 index 0000000000..e982f58e18 --- /dev/null +++ b/src/resolvers/Query/eventVolunteersByEvent.ts @@ -0,0 +1,20 @@ +import type { QueryResolvers } from "../../types/generatedGraphQLTypes"; +import { EventVolunteer } from "../../models"; +/** + * This query will fetch all events volunteers for the given eventId from database. + * @param _parent- + * @param args - An object that contains `id` of the Event. + * @returns An object that holds all Event Volunteers for the given Event + */ +export const eventVolunteersByEvent: QueryResolvers["eventVolunteersByEvent"] = + async (_parent, args) => { + const eventId = args.id; + + const volunteers = EventVolunteer.find({ + eventId: eventId, + }) + .populate("userId", "-password") + .lean(); + + return volunteers; + }; diff --git a/src/resolvers/Query/eventsByOrganizationConnection.ts b/src/resolvers/Query/eventsByOrganizationConnection.ts index 5ad8d4248b..ba0faa6d9c 100644 --- a/src/resolvers/Query/eventsByOrganizationConnection.ts +++ b/src/resolvers/Query/eventsByOrganizationConnection.ts @@ -12,6 +12,7 @@ export const eventsByOrganizationConnection: QueryResolvers["eventsByOrganizatio where = { ...where, status: "ACTIVE", + isBaseRecurringEvent: false, }; const events = await Event.find(where) diff --git a/src/resolvers/Query/getDonationById.ts b/src/resolvers/Query/getDonationById.ts index 8b21b4a7f0..09a7ee0149 100644 --- a/src/resolvers/Query/getDonationById.ts +++ b/src/resolvers/Query/getDonationById.ts @@ -10,7 +10,7 @@ import { Donation } from "../../models"; */ export const getDonationById: QueryResolvers["getDonationById"] = async ( _parent, - args + args, ) => { const donation = await Donation.findOne({ _id: args.id, diff --git a/src/resolvers/Query/getDonationByOrgId.ts b/src/resolvers/Query/getDonationByOrgId.ts index a766ec65b5..2dfe0cfe74 100644 --- a/src/resolvers/Query/getDonationByOrgId.ts +++ b/src/resolvers/Query/getDonationByOrgId.ts @@ -9,7 +9,7 @@ import { Donation } from "../../models"; */ export const getDonationByOrgId: QueryResolvers["getDonationByOrgId"] = async ( _parent, - args + args, ) => { return await Donation.find({ orgId: args.orgId, diff --git a/src/resolvers/Query/getlanguage.ts b/src/resolvers/Query/getlanguage.ts index 6dcb6c94cd..d2b108cb60 100644 --- a/src/resolvers/Query/getlanguage.ts +++ b/src/resolvers/Query/getlanguage.ts @@ -11,7 +11,7 @@ import { Language } from "../../models"; */ export const getlanguage: QueryResolvers["getlanguage"] = async ( _parent, - args + args, ) => { const languages = await Language.find({ "translation.lang_code": args.lang_code, diff --git a/src/resolvers/Query/hasSubmittedFeedback.ts b/src/resolvers/Query/hasSubmittedFeedback.ts index ae8300bf25..803270b4e7 100644 --- a/src/resolvers/Query/hasSubmittedFeedback.ts +++ b/src/resolvers/Query/hasSubmittedFeedback.ts @@ -18,7 +18,7 @@ export const hasSubmittedFeedback: QueryResolvers["hasSubmittedFeedback"] = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } @@ -30,7 +30,7 @@ export const hasSubmittedFeedback: QueryResolvers["hasSubmittedFeedback"] = throw new errors.NotFoundError( requestContext.translate(EVENT_NOT_FOUND_ERROR.MESSAGE), EVENT_NOT_FOUND_ERROR.CODE, - EVENT_NOT_FOUND_ERROR.PARAM + EVENT_NOT_FOUND_ERROR.PARAM, ); } @@ -44,7 +44,7 @@ export const hasSubmittedFeedback: QueryResolvers["hasSubmittedFeedback"] = throw new errors.ConflictError( requestContext.translate(USER_NOT_REGISTERED_FOR_EVENT.MESSAGE), USER_NOT_REGISTERED_FOR_EVENT.CODE, - USER_NOT_REGISTERED_FOR_EVENT.PARAM + USER_NOT_REGISTERED_FOR_EVENT.PARAM, ); } @@ -52,7 +52,7 @@ export const hasSubmittedFeedback: QueryResolvers["hasSubmittedFeedback"] = throw new errors.ConflictError( requestContext.translate(USER_NOT_CHECKED_IN.MESSAGE), USER_NOT_CHECKED_IN.CODE, - USER_NOT_CHECKED_IN.PARAM + USER_NOT_CHECKED_IN.PARAM, ); } diff --git a/src/resolvers/Query/helperFunctions/getSort.ts b/src/resolvers/Query/helperFunctions/getSort.ts index 75cc17c6b2..1613a0f184 100644 --- a/src/resolvers/Query/helperFunctions/getSort.ts +++ b/src/resolvers/Query/helperFunctions/getSort.ts @@ -14,7 +14,7 @@ export const getSort = ( | PostOrderByInput | UserOrderByInput > - | undefined + | undefined, ): any => { let sortPayload = {}; diff --git a/src/resolvers/Query/helperFunctions/getWhere.ts b/src/resolvers/Query/helperFunctions/getWhere.ts index a9dfbe4613..3dec056066 100644 --- a/src/resolvers/Query/helperFunctions/getWhere.ts +++ b/src/resolvers/Query/helperFunctions/getWhere.ts @@ -32,7 +32,7 @@ export const getWhere = ( DonationWhereInput > > - | undefined + | undefined, ): FilterQuery => { let wherePayload: FilterQuery = {}; diff --git a/src/resolvers/Query/index.ts b/src/resolvers/Query/index.ts index 69e92fe7ce..264a25b31e 100644 --- a/src/resolvers/Query/index.ts +++ b/src/resolvers/Query/index.ts @@ -32,11 +32,13 @@ import { userLanguage } from "./userLanguage"; import { users } from "./users"; import { getAdvertisements } from "./getAdvertisements"; import { usersConnection } from "./usersConnection"; +import { agendaCategory } from "./agendaCategory"; export const Query: QueryResolvers = { actionItem, actionItemsByEvent, actionItemCategory, + agendaCategory, actionItemsByOrganization, actionItemCategoriesByOrganization, checkAuth, diff --git a/src/resolvers/Query/me.ts b/src/resolvers/Query/me.ts index cbeef3504e..7bb050ce3a 100644 --- a/src/resolvers/Query/me.ts +++ b/src/resolvers/Query/me.ts @@ -27,7 +27,7 @@ export const me: QueryResolvers["me"] = async (_parent, _args, context) => { throw new errors.NotFoundError( USER_NOT_FOUND_ERROR.DESC, USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/myLanguage.ts b/src/resolvers/Query/myLanguage.ts index 2ebbc9f768..d0a706f407 100644 --- a/src/resolvers/Query/myLanguage.ts +++ b/src/resolvers/Query/myLanguage.ts @@ -13,7 +13,7 @@ import { USER_NOT_FOUND_ERROR } from "../../constants"; export const myLanguage: QueryResolvers["myLanguage"] = async ( _parent, _args, - context + context, ) => { const currentUser = await User.findOne({ _id: context.userId, @@ -25,7 +25,7 @@ export const myLanguage: QueryResolvers["myLanguage"] = async ( throw new errors.NotFoundError( USER_NOT_FOUND_ERROR.DESC, USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/organizationIsSample.ts b/src/resolvers/Query/organizationIsSample.ts index a9566d876b..bc13f70f64 100644 --- a/src/resolvers/Query/organizationIsSample.ts +++ b/src/resolvers/Query/organizationIsSample.ts @@ -13,7 +13,7 @@ export const isSampleOrganization: QueryResolvers["isSampleOrganization"] = throw new errors.UnauthorizedError( requestContext.translate(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE), ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/organizations.ts b/src/resolvers/Query/organizations.ts index a87051f9f3..6fda961573 100644 --- a/src/resolvers/Query/organizations.ts +++ b/src/resolvers/Query/organizations.ts @@ -15,7 +15,7 @@ import { findOrganizationsInCache } from "../../services/OrganizationCache/findO */ export const organizations: QueryResolvers["organizations"] = async ( _parent, - args + args, ) => { const sort = getSort(args.orderBy); @@ -39,7 +39,7 @@ export const organizations: QueryResolvers["organizations"] = async ( throw new errors.NotFoundError( ORGANIZATION_NOT_FOUND_ERROR.DESC, ORGANIZATION_NOT_FOUND_ERROR.CODE, - ORGANIZATION_NOT_FOUND_ERROR.PARAM + ORGANIZATION_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/organizationsMemberConnection.ts b/src/resolvers/Query/organizationsMemberConnection.ts index 1f80254546..6c96f114c1 100644 --- a/src/resolvers/Query/organizationsMemberConnection.ts +++ b/src/resolvers/Query/organizationsMemberConnection.ts @@ -54,7 +54,7 @@ export const organizationsMemberConnection: QueryResolvers["organizationsMemberC ...paginateOptions, populate: ["registeredEvents"], select: ["-password"], - } + }, ); let users = {}; diff --git a/src/resolvers/Query/post.ts b/src/resolvers/Query/post.ts index 595e09c441..d09733e9ac 100644 --- a/src/resolvers/Query/post.ts +++ b/src/resolvers/Query/post.ts @@ -18,7 +18,7 @@ export const post: QueryResolvers["post"] = async (_parent, args) => { throw new errors.NotFoundError( POST_NOT_FOUND_ERROR.DESC, POST_NOT_FOUND_ERROR.CODE, - POST_NOT_FOUND_ERROR.PARAM + POST_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/postsByOrganizationConnection.ts b/src/resolvers/Query/postsByOrganizationConnection.ts index fd9be4ca2b..7865cead7c 100644 --- a/src/resolvers/Query/postsByOrganizationConnection.ts +++ b/src/resolvers/Query/postsByOrganizationConnection.ts @@ -49,7 +49,7 @@ export const postsByOrganizationConnection: QueryResolvers["postsByOrganizationC organization: args.id, ...where, }, - options + options, ); const posts = postsmodel.docs.map((post) => { diff --git a/src/resolvers/Query/user.ts b/src/resolvers/Query/user.ts index efd0d191be..935eb4a48c 100644 --- a/src/resolvers/Query/user.ts +++ b/src/resolvers/Query/user.ts @@ -18,7 +18,7 @@ export const user: QueryResolvers["user"] = async (_parent, args, context) => { throw new errors.NotFoundError( USER_NOT_FOUND_ERROR.DESC, USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/userLanguage.ts b/src/resolvers/Query/userLanguage.ts index 3bcab4be00..4a3213e03b 100644 --- a/src/resolvers/Query/userLanguage.ts +++ b/src/resolvers/Query/userLanguage.ts @@ -10,7 +10,7 @@ import { USER_NOT_FOUND_ERROR } from "../../constants"; */ export const userLanguage: QueryResolvers["userLanguage"] = async ( _parent, - args + args, ) => { const user = await User.findOne({ _id: args.userId, @@ -22,7 +22,7 @@ export const userLanguage: QueryResolvers["userLanguage"] = async ( throw new errors.NotFoundError( USER_NOT_FOUND_ERROR.DESC, USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/resolvers/Query/users.ts b/src/resolvers/Query/users.ts index ab9fdfba43..c63e174a82 100644 --- a/src/resolvers/Query/users.ts +++ b/src/resolvers/Query/users.ts @@ -17,7 +17,7 @@ import { getWhere } from "./helperFunctions/getWhere"; export const users: QueryResolvers["users"] = async ( _parent, args, - context + context, ) => { const where = getWhere(args.where); const sort = getSort(args.orderBy); @@ -30,7 +30,7 @@ export const users: QueryResolvers["users"] = async ( throw new errors.UnauthenticatedError( requestContext.translate(UNAUTHENTICATED_ERROR.MESSAGE), UNAUTHENTICATED_ERROR.CODE, - UNAUTHENTICATED_ERROR.PARAM + UNAUTHENTICATED_ERROR.PARAM, ); } const filterCriteria = { diff --git a/src/resolvers/Query/usersConnection.ts b/src/resolvers/Query/usersConnection.ts index 747712037a..84da92c13c 100644 --- a/src/resolvers/Query/usersConnection.ts +++ b/src/resolvers/Query/usersConnection.ts @@ -14,7 +14,7 @@ import { getWhere } from "./helperFunctions/getWhere"; */ export const usersConnection: QueryResolvers["usersConnection"] = async ( _parent, - args + args, ) => { const where = getWhere(args.where); const sort = getSort(args.orderBy); diff --git a/src/resolvers/Subscription/directMessageChat.ts b/src/resolvers/Subscription/directMessageChat.ts index 2edfcc1a57..de5a2ddeee 100644 --- a/src/resolvers/Subscription/directMessageChat.ts +++ b/src/resolvers/Subscription/directMessageChat.ts @@ -14,6 +14,6 @@ export const directMessageChat: SubscriptionResolvers["directMessageChat"] = { subscribe: withFilter( (_parent, _args, context) => context.pubsub.asyncIterator(CHAT_CHANNEL), - (payload) => payload?.directMessageChat + (payload) => payload?.directMessageChat, ), }; diff --git a/src/resolvers/Subscription/messageSentToDirectChat.ts b/src/resolvers/Subscription/messageSentToDirectChat.ts index 8316689123..465671dd73 100644 --- a/src/resolvers/Subscription/messageSentToDirectChat.ts +++ b/src/resolvers/Subscription/messageSentToDirectChat.ts @@ -25,6 +25,6 @@ export const messageSentToDirectChat: SubscriptionResolvers["messageSentToDirect (_parent, _args, context) => context.pubsub.asyncIterator([MESSAGE_SENT_TO_DIRECT_CHAT]), - (payload, _variables, context) => filterFunction(payload, context) + (payload, _variables, context) => filterFunction(payload, context), ), }; diff --git a/src/resolvers/Subscription/messageSentToGroupChat.ts b/src/resolvers/Subscription/messageSentToGroupChat.ts index 20c83454de..6d1bb5ba69 100644 --- a/src/resolvers/Subscription/messageSentToGroupChat.ts +++ b/src/resolvers/Subscription/messageSentToGroupChat.ts @@ -6,7 +6,7 @@ const MESSAGE_SENT_TO_GROUP_CHAT = "MESSAGE_SENT_TO_GROUP_CHAT"; export const filterFunction = async function ( payload: any, - context: any + context: any, ): Promise { const { currentUserId } = context.context; const groupChatId = payload.messageSentToGroupChat.groupChatMessageBelongsTo; @@ -17,7 +17,7 @@ export const filterFunction = async function ( if (groupChat) { const currentUserIsGroupChatMember = groupChat.users.some((user) => - user.equals(currentUserId) + user.equals(currentUserId), ); return currentUserIsGroupChatMember; } else { @@ -39,6 +39,6 @@ export const messageSentToGroupChat: SubscriptionResolvers["messageSentToGroupCh (_parent, _args, context) => context.pubsub.asyncIterator([MESSAGE_SENT_TO_GROUP_CHAT]), - (payload, _variables, context) => filterFunction(payload, context) + (payload, _variables, context) => filterFunction(payload, context), ), }; diff --git a/src/resolvers/Subscription/onPluginUpdate.ts b/src/resolvers/Subscription/onPluginUpdate.ts index 9d52ff1b0a..9756f2709b 100644 --- a/src/resolvers/Subscription/onPluginUpdate.ts +++ b/src/resolvers/Subscription/onPluginUpdate.ts @@ -20,7 +20,7 @@ export const filterFunction = async function ( // eslint-disable-next-line @typescript-eslint/no-unused-vars payload: any, // eslint-disable-next-line @typescript-eslint/no-unused-vars - context: any + context: any, ): Promise { return true; }; @@ -30,7 +30,7 @@ export const onPluginUpdate: SubscriptionResolvers["onPluginUpdate"] = { subscribe: withFilter( (_parent, _args, context) => context.pubsub.asyncIterator([TALAWA_PLUGIN_UPDATED]), - (payload, _variables, context) => filterFunction(payload, context) + (payload, _variables, context) => filterFunction(payload, context), ), resolve: (payload: any) => { return payload.Plugin; diff --git a/src/resolvers/UserFamily/admins.ts b/src/resolvers/UserFamily/admins.ts new file mode 100644 index 0000000000..9571bd0c02 --- /dev/null +++ b/src/resolvers/UserFamily/admins.ts @@ -0,0 +1,14 @@ +import { User } from "../../models"; +import type { UserFamilyResolvers } from "../../types/generatedGraphQLTypes"; +/** + * This resolver function will fetch and return the admins of the Organization from database. + * @param parent - An object that is the return value of the resolver for this field's parent. + * @returns An object that contains the list of all admins of the organization. + */ +export const admins: UserFamilyResolvers["admins"] = async (parent) => { + return await User.find({ + _id: { + $in: parent.admins, + }, + }).lean(); +}; diff --git a/src/resolvers/UserFamily/creator.ts b/src/resolvers/UserFamily/creator.ts new file mode 100644 index 0000000000..69fb4b7e3b --- /dev/null +++ b/src/resolvers/UserFamily/creator.ts @@ -0,0 +1,24 @@ +import { User } from "../../models"; +import { errors, requestContext } from "../../libraries"; +import type { UserFamilyResolvers } from "../../types/generatedGraphQLTypes"; +import { USER_NOT_FOUND_ERROR } from "../../constants"; +/** + * This resolver function will fetch and return the creator of the Organization from database. + * @param parent - An object that is the return value of the resolver for this field's parent. + * @returns An object that contains the creator data. If the creator not exists then throws an `NotFoundError` error. + */ +export const creator: UserFamilyResolvers["creator"] = async (parent) => { + const user = await User.findOne({ + _id: parent.creator.toString(), + }).lean(); + + if (!user) { + throw new errors.NotFoundError( + requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), + USER_NOT_FOUND_ERROR.CODE, + USER_NOT_FOUND_ERROR.PARAM, + ); + } + + return user; +}; diff --git a/src/resolvers/UserFamily/index.ts b/src/resolvers/UserFamily/index.ts new file mode 100644 index 0000000000..a89939e37d --- /dev/null +++ b/src/resolvers/UserFamily/index.ts @@ -0,0 +1,10 @@ +import type { UserFamilyResolvers } from "../../types/generatedGraphQLTypes"; +import { users } from "./users"; +import { admins } from "./admins"; +import { creator } from "./creator"; + +export const UserFamily: UserFamilyResolvers = { + users, + admins, + creator, +}; diff --git a/src/resolvers/UserFamily/users.ts b/src/resolvers/UserFamily/users.ts new file mode 100644 index 0000000000..c02ba909f4 --- /dev/null +++ b/src/resolvers/UserFamily/users.ts @@ -0,0 +1,14 @@ +import type { UserFamilyResolvers } from "../../types/generatedGraphQLTypes"; +import { User } from "../../models"; +/** + * This resolver function will fetch and return the list of all Members of the user family from database. + * @param parent - An object that is the return value of the resolver for this field's parent. + * @returns An `object` that contains the Member data. + */ +export const users: UserFamilyResolvers["users"] = async (parent) => { + return await User.find({ + _id: { + $in: parent.users, + }, + }).lean(); +}; diff --git a/src/resolvers/UserTag/childTags.ts b/src/resolvers/UserTag/childTags.ts index 5dd1846d2e..436857f859 100644 --- a/src/resolvers/UserTag/childTags.ts +++ b/src/resolvers/UserTag/childTags.ts @@ -11,7 +11,7 @@ import { validatePaginationArgs } from "../../libraries/validators/validatePagin export const childTags: UserTagResolvers["childTags"] = async ( parent, - args + args, ) => { const errors = validatePaginationArgs(args.input); @@ -49,7 +49,7 @@ export const childTags: UserTagResolvers["childTags"] = async ( // The default sorting logic of ascending order by MongoID should always be provided _id: 1, name: 1, - }) + }), ) .limit(getLimit(args.input.limit)) .lean(); diff --git a/src/resolvers/UserTag/organization.ts b/src/resolvers/UserTag/organization.ts index e97403aba4..b38ead0540 100644 --- a/src/resolvers/UserTag/organization.ts +++ b/src/resolvers/UserTag/organization.ts @@ -2,7 +2,7 @@ import type { UserTagResolvers } from "../../types/generatedGraphQLTypes"; import { Organization } from "../../models"; export const organization: UserTagResolvers["organization"] = async ( - parent + parent, ) => { return await Organization.findOne({ _id: parent.organizationId, diff --git a/src/resolvers/UserTag/usersAssignedTo.ts b/src/resolvers/UserTag/usersAssignedTo.ts index b2f91e90d4..d1da82b446 100644 --- a/src/resolvers/UserTag/usersAssignedTo.ts +++ b/src/resolvers/UserTag/usersAssignedTo.ts @@ -11,7 +11,7 @@ import { validatePaginationArgs } from "../../libraries/validators/validatePagin export const usersAssignedTo: UserTagResolvers["usersAssignedTo"] = async ( parent, - args + args, ) => { const errors = validatePaginationArgs(args.input); @@ -48,7 +48,7 @@ export const usersAssignedTo: UserTagResolvers["usersAssignedTo"] = async ( getSortingObject(args.input.direction, { // The default sorting logic of ascending order by MongoID should always be provided _id: 1, - }) + }), ) .limit(getLimit(args.input.limit)) .populate("userId") @@ -57,6 +57,6 @@ export const usersAssignedTo: UserTagResolvers["usersAssignedTo"] = async ( return generateConnectionObject( args.input, allUserObjects, - (userTag) => userTag.userId + (userTag) => userTag.userId, ); }; diff --git a/src/resolvers/index.ts b/src/resolvers/index.ts index 7ded81a68f..a593b2c648 100644 --- a/src/resolvers/index.ts +++ b/src/resolvers/index.ts @@ -6,11 +6,13 @@ import { Comment } from "./Comment"; import { DirectChat } from "./DirectChat"; import { DirectChatMessage } from "./DirectChatMessage"; import { Event } from "./Event"; +import { EventVolunteer } from "./EventVolunteer"; import { Feedback } from "./Feedback"; import { GroupChat } from "./GroupChat"; import { GroupChatMessage } from "./GroupChatMessage"; import { MembershipRequest } from "./MembershipRequest"; import { Mutation } from "./Mutation"; +import { UserFamily } from "./UserFamily"; import { Organization } from "./Organization"; import { Post } from "./Post"; import { Query } from "./Query"; @@ -40,8 +42,10 @@ const resolvers: Resolvers = { DirectChat, DirectChatMessage, Event, + EventVolunteer, Feedback, GroupChat, + UserFamily, GroupChatMessage, MembershipRequest, Mutation, @@ -91,5 +95,5 @@ const resolversComposition = { export const composedResolvers: Resolvers = composeResolvers( resolvers, - resolversComposition + resolversComposition, ); diff --git a/src/resolvers/middleware/currentUserExists.ts b/src/resolvers/middleware/currentUserExists.ts index 348c6acf73..2e56d0664a 100644 --- a/src/resolvers/middleware/currentUserExists.ts +++ b/src/resolvers/middleware/currentUserExists.ts @@ -16,7 +16,7 @@ export const currentUserExists = throw new errors.NotFoundError( requestContext.translate(USER_NOT_FOUND_ERROR.MESSAGE), USER_NOT_FOUND_ERROR.CODE, - USER_NOT_FOUND_ERROR.PARAM + USER_NOT_FOUND_ERROR.PARAM, ); } diff --git a/src/services/CommentCache/cacheComments.ts b/src/services/CommentCache/cacheComments.ts index 36021dffdc..bfe9cd6d53 100644 --- a/src/services/CommentCache/cacheComments.ts +++ b/src/services/CommentCache/cacheComments.ts @@ -4,7 +4,7 @@ import CommentCache from "../redisCache"; // Function to store comments in the cache using pipelining export async function cacheComments( - comments: InterfaceComment[] + comments: InterfaceComment[], ): Promise { try { const pipeline = CommentCache.pipeline(); diff --git a/src/services/CommentCache/deleteCommentFromCache.ts b/src/services/CommentCache/deleteCommentFromCache.ts index f249ac9ba4..30f8914e6d 100644 --- a/src/services/CommentCache/deleteCommentFromCache.ts +++ b/src/services/CommentCache/deleteCommentFromCache.ts @@ -2,7 +2,7 @@ import CommentCache from "../redisCache"; import type { InterfaceComment } from "../../models"; export async function deleteCommentFromCache( - comment: InterfaceComment + comment: InterfaceComment, ): Promise { const key = `comment:${comment._id}`; diff --git a/src/services/CommentCache/findCommentsByPostIdInCache.ts b/src/services/CommentCache/findCommentsByPostIdInCache.ts index 4d0576d1b5..4b10914332 100644 --- a/src/services/CommentCache/findCommentsByPostIdInCache.ts +++ b/src/services/CommentCache/findCommentsByPostIdInCache.ts @@ -4,7 +4,7 @@ import { Types } from "mongoose"; import { logger } from "../../libraries"; export async function findCommentsByPostIdInCache( - postID: Types.ObjectId + postID: Types.ObjectId, ): Promise<(InterfaceComment | null)[]> { if (!postID) { return [null]; diff --git a/src/services/CommentCache/findCommentsInCache.ts b/src/services/CommentCache/findCommentsInCache.ts index 2789497d48..bacae081db 100644 --- a/src/services/CommentCache/findCommentsInCache.ts +++ b/src/services/CommentCache/findCommentsInCache.ts @@ -4,7 +4,7 @@ import { Types } from "mongoose"; import { logger } from "../../libraries"; export async function findCommentsInCache( - ids: string[] + ids: string[], ): Promise<(InterfaceComment | null)[]> { if (ids.length === 0) { return [null]; diff --git a/src/services/EventCache/deleteEventFromCache.ts b/src/services/EventCache/deleteEventFromCache.ts index 8affeee451..0f36da3cce 100644 --- a/src/services/EventCache/deleteEventFromCache.ts +++ b/src/services/EventCache/deleteEventFromCache.ts @@ -2,7 +2,7 @@ import EventCache from "../redisCache"; import type { Types } from "mongoose"; export async function deleteEventFromCache( - eventId: Types.ObjectId + eventId: Types.ObjectId, ): Promise { const key = `event:${eventId}`; diff --git a/src/services/EventCache/findEventInCache.ts b/src/services/EventCache/findEventInCache.ts index e40dc06966..0c3ff96c61 100644 --- a/src/services/EventCache/findEventInCache.ts +++ b/src/services/EventCache/findEventInCache.ts @@ -4,7 +4,7 @@ import { Types } from "mongoose"; import { logger } from "../../libraries"; export async function findEventsInCache( - ids: string[] + ids: string[], ): Promise<(InterfaceEvent | null)[]> { if (ids.length === 0) { return [null]; diff --git a/src/services/OrganizationCache/cacheOrganizations.ts b/src/services/OrganizationCache/cacheOrganizations.ts index 6a0fb4720d..6620ce04cf 100644 --- a/src/services/OrganizationCache/cacheOrganizations.ts +++ b/src/services/OrganizationCache/cacheOrganizations.ts @@ -4,7 +4,7 @@ import OrganizationCache from "../redisCache"; // Function to store organizations in the cache using pipelining export async function cacheOrganizations( - organizations: InterfaceOrganization[] + organizations: InterfaceOrganization[], ): Promise { try { const pipeline = OrganizationCache.pipeline(); diff --git a/src/services/OrganizationCache/deleteOrganizationFromCache.ts b/src/services/OrganizationCache/deleteOrganizationFromCache.ts index 6359664ea1..030b13c64f 100644 --- a/src/services/OrganizationCache/deleteOrganizationFromCache.ts +++ b/src/services/OrganizationCache/deleteOrganizationFromCache.ts @@ -2,7 +2,7 @@ import OrganizationCache from "../redisCache"; import type { InterfaceOrganization } from "../../models"; export async function deleteOrganizationFromCache( - organization: InterfaceOrganization + organization: InterfaceOrganization, ): Promise { const key = `organization:${organization._id}`; diff --git a/src/services/OrganizationCache/findOrganizationsInCache.ts b/src/services/OrganizationCache/findOrganizationsInCache.ts index 5812fa8827..5eb9b61638 100644 --- a/src/services/OrganizationCache/findOrganizationsInCache.ts +++ b/src/services/OrganizationCache/findOrganizationsInCache.ts @@ -4,7 +4,7 @@ import { Types } from "mongoose"; import { logger } from "../../libraries"; export async function findOrganizationsInCache( - ids: string[] + ids: string[], ): Promise<(InterfaceOrganization | null)[]> { if (ids.length === 0) { return [null]; @@ -78,7 +78,7 @@ export async function findOrganizationsInCache( ? organization.membershipRequests.map( (membershipRequest: string) => { return Types.ObjectId(membershipRequest); - } + }, ) : [], diff --git a/src/services/PostCache/findPostsInCache.ts b/src/services/PostCache/findPostsInCache.ts index 5f1de8393e..204dc2f25d 100644 --- a/src/services/PostCache/findPostsInCache.ts +++ b/src/services/PostCache/findPostsInCache.ts @@ -4,7 +4,7 @@ import { Types } from "mongoose"; import { logger } from "../../libraries"; export async function findPostsInCache( - ids: string[] + ids: string[], ): Promise<(InterfacePost | null)[]> { if (ids.length === 0) { return [null]; diff --git a/src/typeDefs/enums.ts b/src/typeDefs/enums.ts index 9e9804c137..b49f44cce5 100644 --- a/src/typeDefs/enums.ts +++ b/src/typeDefs/enums.ts @@ -25,6 +25,13 @@ export const enums = gql` location_DESC } + enum Frequency { + YEARLY + MONTHLY + WEEKLY + DAILY + } + enum OrganizationOrderByInput { id_ASC id_DESC @@ -100,6 +107,17 @@ export const enums = gql` SUPERADMIN NON_USER } + + enum WeekDays { + MO + TU + WE + TH + FR + SA + SU + } + enum EducationGrade { NO_GRADE PRE_KG @@ -131,6 +149,11 @@ export const enums = gql` OTHER } + enum EventVolunteerResponse { + YES + NO + } + enum MaritalStatus { SINGLE ENGAGED diff --git a/src/typeDefs/inputs.ts b/src/typeDefs/inputs.ts index e4aa13d73e..1bdafc7a57 100644 --- a/src/typeDefs/inputs.ts +++ b/src/typeDefs/inputs.ts @@ -29,6 +29,11 @@ export const inputs = gql` title: String! } + input createUserFamilyInput { + title: String! + userIds: [ID!]! + } + input CreateUserTagInput { name: String! parentTagId: ID @@ -42,6 +47,12 @@ export const inputs = gql` eventId: ID } + input CreateAgendaCategoryInput { + name: String! + description: String + organizationId: ID! + } + input CursorPaginationInput { cursor: String direction: PaginationDirection! @@ -82,6 +93,18 @@ export const inputs = gql` organizationId: ID! } + input EventVolunteerInput { + userId: ID! + eventId: ID! + } + + input UpdateEventVolunteerInput { + eventId: ID + isAssigned: Boolean + isInvited: Boolean + response: EventVolunteerResponse + } + input EventWhereInput { id: ID id_not: ID @@ -239,6 +262,12 @@ export const inputs = gql` recaptchaToken: String! } + input RecurrenceRuleInput { + frequency: Frequency + weekDays: [WeekDays] + count: Int + } + input ToggleUserTagAssignInput { userId: ID! tagId: ID! @@ -311,6 +340,11 @@ export const inputs = gql` isDisabled: Boolean } + input UpdateAgendaCategoryInput { + name: String + description: String + } + input AddressInput { city: String countryCode: String diff --git a/src/typeDefs/mutations.ts b/src/typeDefs/mutations.ts index 1843e92141..915201ab3c 100644 --- a/src/typeDefs/mutations.ts +++ b/src/typeDefs/mutations.ts @@ -34,6 +34,14 @@ export const mutations = gql` addUserToGroupChat(userId: ID!, chatId: ID!): GroupChat! @auth + addUserToUserFamily(userId: ID!, familyId: ID!): UserFamily! @auth + + removeUserFromUserFamily(userId: ID!, familyId: ID!): UserFamily! @auth + + removeUserFamily(familyId: ID!): UserFamily! @auth + + createUserFamily(data: createUserFamilyInput!): UserFamily! @auth + adminRemoveEvent(eventId: ID!): Event! @auth adminRemoveGroup(groupId: ID!): GroupChat! @auth @@ -66,6 +74,8 @@ export const mutations = gql` organizationId: ID! ): ActionItemCategory! @auth + createAgendaCategory(input: CreateAgendaCategoryInput!): AgendaCategory! + createComment(postId: ID!, data: CommentInput!): Comment @auth createDirectChat(data: createChatInput!): DirectChat! @auth @@ -79,7 +89,10 @@ export const mutations = gql` nameOfOrg: String! ): Donation! - createEvent(data: EventInput): Event! @auth + createEvent( + data: EventInput! + recurrenceRuleData: RecurrenceRuleInput + ): Event! @auth createGroupChat(data: createGroupChatInput!): GroupChat! @auth @@ -113,12 +126,16 @@ export const mutations = gql` deleteAdvertisementById(id: ID!): DeletePayload! + deleteAgendaCategory(id: ID!): ID! + deleteDonationById(id: ID!): DeletePayload! forgotPassword(data: ForgotPasswordData!): Boolean! joinPublicOrganization(organizationId: ID!): User! @auth + createEventVolunteer(data: EventVolunteerInput!): EventVolunteer! @auth + leaveOrganization(organizationId: ID!): User! @auth likeComment(id: ID!): Comment @auth @@ -160,6 +177,8 @@ export const mutations = gql` removeEventAttendee(data: EventAttendeeInput!): User! @auth + removeEventVolunteer(id: ID!): EventVolunteer! @auth + removeGroupChat(chatId: ID!): GroupChat! @auth removeMember(data: UserAndOrganizationInput!): Organization! @auth @@ -219,12 +238,22 @@ export const mutations = gql` data: UpdateActionItemCategoryInput! ): ActionItemCategory @auth + updateAgendaCategory( + id: ID! + input: UpdateAgendaCategoryInput! + ): AgendaCategory + updateAdvertisement( input: UpdateAdvertisementInput! ): UpdateAdvertisementPayload @auth updateEvent(id: ID!, data: UpdateEventInput): Event! @auth + updateEventVolunteer( + id: ID! + data: UpdateEventVolunteerInput + ): EventVolunteer! @auth + updatePost(id: ID!, data: PostUpdateInput): Post! @auth updateLanguage(languageCode: String!): User! @auth diff --git a/src/typeDefs/queries.ts b/src/typeDefs/queries.ts index 975f839ad9..f7155b8b82 100644 --- a/src/typeDefs/queries.ts +++ b/src/typeDefs/queries.ts @@ -19,6 +19,8 @@ export const queries = gql` organizationId: ID! ): [ActionItemCategory] + agendaCategory(id: ID!): AgendaCategory! + checkAuth: User! @auth customFieldsByOrganization(id: ID!): [OrganizationCustomField] @@ -40,6 +42,8 @@ export const queries = gql` orderBy: EventOrderByInput ): [Event!]! + eventVolunteersByEvent(id: ID!): [EventVolunteer] + getDonationById(id: ID!): Donation! getDonationByOrgId(orgId: ID!): [Donation] diff --git a/src/typeDefs/types.ts b/src/typeDefs/types.ts index c58764ccbe..02211bf973 100644 --- a/src/typeDefs/types.ts +++ b/src/typeDefs/types.ts @@ -26,6 +26,17 @@ export const types = gql` updatedAt: Date! } + type AgendaCategory { + _id: ID! + name: String! + description: String + organization: Organization! + createdBy: User! + updatedBy: User + createdAt: Date! + updatedAt: Date + } + # Action Item for a ActionItemCategory type ActionItem { _id: ID! @@ -75,6 +86,14 @@ export const types = gql` updatedAt: DateTime! } + type UserFamily { + _id: ID! + title: String + users: [User!]! + admins: [User!]! + creator: User! + } + # A page info type adhering to Relay Specification for both cursor based pagination type ConnectionPageInfo { hasNextPage: Boolean! @@ -145,7 +164,7 @@ export const types = gql` title: String! description: String! startDate: Date! - endDate: Date! + endDate: Date startTime: Time endTime: Time allDay: Boolean! @@ -170,6 +189,18 @@ export const types = gql` averageFeedbackScore: Float } + type EventVolunteer { + _id: ID! + createdAt: DateTime! + creator: User + event: Event + isAssigned: Boolean + isInvited: Boolean + response: String + user: User! + updatedAt: DateTime! + } + type Feedback { _id: ID! event: Event! @@ -260,6 +291,7 @@ export const types = gql` updatedAt: DateTime! members: [User] actionItemCategories: [ActionItemCategory] + agendaCategories: [AgendaCategory] admins(adminId: ID): [User!] membershipRequests: [MembershipRequest] userRegistrationRequired: Boolean! diff --git a/src/types/generatedGraphQLTypes.ts b/src/types/generatedGraphQLTypes.ts index fd68a701a1..c2c8621a48 100644 --- a/src/types/generatedGraphQLTypes.ts +++ b/src/types/generatedGraphQLTypes.ts @@ -1,6 +1,7 @@ import type { GraphQLResolveInfo, GraphQLScalarType, GraphQLScalarTypeConfig } from 'graphql'; import type { InterfaceActionItem as InterfaceActionItemModel } from '../models/ActionItem'; import type { InterfaceActionItemCategory as InterfaceActionItemCategoryModel } from '../models/ActionItemCategory'; +import type { InterfaceAgendaCategory as InterfaceAgendaCategoryModel } from '../models/AgendaCategory'; import type { InterfaceCheckIn as InterfaceCheckInModel } from '../models/CheckIn'; import type { InterfaceMessageChat as InterfaceMessageChatModel } from '../models/MessageChat'; import type { InterfaceComment as InterfaceCommentModel } from '../models/Comment'; @@ -9,6 +10,8 @@ import type { InterfaceDirectChatMessage as InterfaceDirectChatMessageModel } fr import type { InterfaceDonation as InterfaceDonationModel } from '../models/Donation'; import type { InterfaceEvent as InterfaceEventModel } from '../models/Event'; import type { InterfaceEventAttendee as InterfaceEventAttendeeModel } from '../models/EventAttendee'; +import type { InterfaceUserFamily as InterfaceUserFamilyModel } from '../models/userFamily'; +import type { InterfaceEventVolunteer as InterfaceEventVolunteerModel } from '../models/EventVolunteer'; import type { InterfaceFeedback as InterfaceFeedbackModel } from '../models/Feedback'; import type { InterfaceGroup as InterfaceGroupModel } from '../models/Group'; import type { InterfaceGroupChat as InterfaceGroupChatModel } from '../models/GroupChat'; @@ -124,6 +127,18 @@ export type AdvertisementType = | 'MENU' | 'POPUP'; +export type AgendaCategory = { + __typename?: 'AgendaCategory'; + _id: Scalars['ID']['output']; + createdAt: Scalars['Date']['output']; + createdBy: User; + description?: Maybe; + name: Scalars['String']['output']; + organization: Organization; + updatedAt?: Maybe; + updatedBy?: Maybe; +}; + export type AggregatePost = { __typename?: 'AggregatePost'; count: Scalars['Int']['output']; @@ -201,6 +216,12 @@ export type CreateActionItemInput = { preCompletionNotes?: InputMaybe; }; +export type CreateAgendaCategoryInput = { + description?: InputMaybe; + name: Scalars['String']['input']; + organizationId: Scalars['ID']['input']; +}; + export type CreateUserTagInput = { name: Scalars['String']['input']; organizationId: Scalars['ID']['input']; @@ -307,7 +328,7 @@ export type Event = { createdAt: Scalars['DateTime']['output']; creator?: Maybe; description: Scalars['String']['output']; - endDate: Scalars['Date']['output']; + endDate?: Maybe; endTime?: Maybe; feedback: Array; isPublic: Scalars['Boolean']['output']; @@ -375,6 +396,28 @@ export type EventOrderByInput = | 'title_ASC' | 'title_DESC'; +export type EventVolunteer = { + __typename?: 'EventVolunteer'; + _id: Scalars['ID']['output']; + createdAt: Scalars['DateTime']['output']; + creator?: Maybe; + event?: Maybe; + isAssigned?: Maybe; + isInvited?: Maybe; + response?: Maybe; + updatedAt: Scalars['DateTime']['output']; + user: User; +}; + +export type EventVolunteerInput = { + eventId: Scalars['ID']['input']; + userId: Scalars['ID']['input']; +}; + +export type EventVolunteerResponse = + | 'NO' + | 'YES'; + export type EventWhereInput = { description?: InputMaybe; description_contains?: InputMaybe; @@ -436,6 +479,12 @@ export type ForgotPasswordData = { userOtp: Scalars['String']['input']; }; +export type Frequency = + | 'DAILY' + | 'MONTHLY' + | 'WEEKLY' + | 'YEARLY'; + export type Gender = | 'FEMALE' | 'MALE' @@ -587,6 +636,7 @@ export type Mutation = { addUserCustomData: UserCustomData; addUserImage: User; addUserToGroupChat: GroupChat; + addUserToUserFamily: UserFamily; adminRemoveEvent: Event; adminRemoveGroup: GroupChat; assignUserTag?: Maybe; @@ -598,10 +648,12 @@ export type Mutation = { createActionItemCategory: ActionItemCategory; createAdmin: User; createAdvertisement: Advertisement; + createAgendaCategory: AgendaCategory; createComment?: Maybe; createDirectChat: DirectChat; createDonation: Donation; createEvent: Event; + createEventVolunteer: EventVolunteer; createGroupChat: GroupChat; createMember: Organization; createMessageChat: MessageChat; @@ -609,8 +661,10 @@ export type Mutation = { createPlugin: Plugin; createPost?: Maybe; createSampleOrganization: Scalars['Boolean']['output']; + createUserFamily: UserFamily; createUserTag?: Maybe; deleteAdvertisementById: DeletePayload; + deleteAgendaCategory: Scalars['ID']['output']; deleteDonationById: DeletePayload; forgotPassword: Scalars['Boolean']['output']; joinPublicOrganization: User; @@ -632,6 +686,7 @@ export type Mutation = { removeDirectChat: DirectChat; removeEvent: Event; removeEventAttendee: User; + removeEventVolunteer: EventVolunteer; removeGroupChat: GroupChat; removeMember: Organization; removeOrganization: User; @@ -640,7 +695,9 @@ export type Mutation = { removePost?: Maybe; removeSampleOrganization: Scalars['Boolean']['output']; removeUserCustomData: UserCustomData; + removeUserFamily: UserFamily; removeUserFromGroupChat: GroupChat; + removeUserFromUserFamily: UserFamily; removeUserImage: User; removeUserTag?: Maybe; revokeRefreshTokenForUser: Scalars['Boolean']['output']; @@ -658,7 +715,9 @@ export type Mutation = { updateActionItem?: Maybe; updateActionItemCategory?: Maybe; updateAdvertisement?: Maybe; + updateAgendaCategory?: Maybe; updateEvent: Event; + updateEventVolunteer: EventVolunteer; updateLanguage: User; updateOrganization: Organization; updatePluginStatus: Plugin; @@ -727,6 +786,12 @@ export type MutationAddUserToGroupChatArgs = { }; +export type MutationAddUserToUserFamilyArgs = { + familyId: Scalars['ID']['input']; + userId: Scalars['ID']['input']; +}; + + export type MutationAdminRemoveEventArgs = { eventId: Scalars['ID']['input']; }; @@ -791,6 +856,11 @@ export type MutationCreateAdvertisementArgs = { }; +export type MutationCreateAgendaCategoryArgs = { + input: CreateAgendaCategoryInput; +}; + + export type MutationCreateCommentArgs = { data: CommentInput; postId: Scalars['ID']['input']; @@ -813,7 +883,13 @@ export type MutationCreateDonationArgs = { export type MutationCreateEventArgs = { - data?: InputMaybe; + data: EventInput; + recurrenceRuleData?: InputMaybe; +}; + + +export type MutationCreateEventVolunteerArgs = { + data: EventVolunteerInput; }; @@ -852,6 +928,11 @@ export type MutationCreatePostArgs = { }; +export type MutationCreateUserFamilyArgs = { + data: CreateUserFamilyInput; +}; + + export type MutationCreateUserTagArgs = { input: CreateUserTagInput; }; @@ -862,6 +943,11 @@ export type MutationDeleteAdvertisementByIdArgs = { }; +export type MutationDeleteAgendaCategoryArgs = { + id: Scalars['ID']['input']; +}; + + export type MutationDeleteDonationByIdArgs = { id: Scalars['ID']['input']; }; @@ -963,6 +1049,11 @@ export type MutationRemoveEventAttendeeArgs = { }; +export type MutationRemoveEventVolunteerArgs = { + id: Scalars['ID']['input']; +}; + + export type MutationRemoveGroupChatArgs = { chatId: Scalars['ID']['input']; }; @@ -999,12 +1090,23 @@ export type MutationRemoveUserCustomDataArgs = { }; +export type MutationRemoveUserFamilyArgs = { + familyId: Scalars['ID']['input']; +}; + + export type MutationRemoveUserFromGroupChatArgs = { chatId: Scalars['ID']['input']; userId: Scalars['ID']['input']; }; +export type MutationRemoveUserFromUserFamilyArgs = { + familyId: Scalars['ID']['input']; + userId: Scalars['ID']['input']; +}; + + export type MutationRemoveUserTagArgs = { id: Scalars['ID']['input']; }; @@ -1087,12 +1189,24 @@ export type MutationUpdateAdvertisementArgs = { }; +export type MutationUpdateAgendaCategoryArgs = { + id: Scalars['ID']['input']; + input: UpdateAgendaCategoryInput; +}; + + export type MutationUpdateEventArgs = { data?: InputMaybe; id: Scalars['ID']['input']; }; +export type MutationUpdateEventVolunteerArgs = { + data?: InputMaybe; + id: Scalars['ID']['input']; +}; + + export type MutationUpdateLanguageArgs = { languageCode: Scalars['String']['input']; }; @@ -1154,6 +1268,7 @@ export type Organization = { actionItemCategories?: Maybe>>; address?: Maybe
; admins?: Maybe>; + agendaCategories?: Maybe>>; apiUrl: Scalars['URL']['output']; blockedUsers?: Maybe>>; createdAt: Scalars['DateTime']['output']; @@ -1400,12 +1515,14 @@ export type Query = { actionItemsByEvent?: Maybe>>; actionItemsByOrganization?: Maybe>>; adminPlugin?: Maybe>>; + agendaCategory: AgendaCategory; checkAuth: User; customDataByOrganization: Array; customFieldsByOrganization?: Maybe>>; directChatsByUserID?: Maybe>>; directChatsMessagesByChatID?: Maybe>>; event?: Maybe; + eventVolunteersByEvent?: Maybe>>; eventsByOrganization?: Maybe>>; eventsByOrganizationConnection: Array; getAdvertisements?: Maybe>>; @@ -1465,6 +1582,11 @@ export type QueryAdminPluginArgs = { }; +export type QueryAgendaCategoryArgs = { + id: Scalars['ID']['input']; +}; + + export type QueryCustomDataByOrganizationArgs = { organizationId: Scalars['ID']['input']; }; @@ -1490,6 +1612,11 @@ export type QueryEventArgs = { }; +export type QueryEventVolunteersByEventArgs = { + id: Scalars['ID']['input']; +}; + + export type QueryEventsByOrganizationArgs = { id?: InputMaybe; orderBy?: InputMaybe; @@ -1640,6 +1767,12 @@ export type Recurrance = | 'WEEKLY' | 'YEARLY'; +export type RecurrenceRuleInput = { + count?: InputMaybe; + frequency?: InputMaybe; + weekDays?: InputMaybe>>; +}; + export type Status = | 'ACTIVE' | 'BLOCKED' @@ -1708,6 +1841,11 @@ export type UpdateAdvertisementPayload = { advertisement?: Maybe; }; +export type UpdateAgendaCategoryInput = { + description?: InputMaybe; + name?: InputMaybe; +}; + export type UpdateEventInput = { allDay?: InputMaybe; description?: InputMaybe; @@ -1725,6 +1863,13 @@ export type UpdateEventInput = { title?: InputMaybe; }; +export type UpdateEventVolunteerInput = { + eventId?: InputMaybe; + isAssigned?: InputMaybe; + isInvited?: InputMaybe; + response?: InputMaybe; +}; + export type UpdateOrganizationInput = { address?: InputMaybe; description?: InputMaybe; @@ -1829,6 +1974,15 @@ export type UserEdge = { node: User; }; +export type UserFamily = { + __typename?: 'UserFamily'; + _id: Scalars['ID']['output']; + admins: Array; + creator: User; + title?: Maybe; + users: Array; +}; + export type UserInput = { appLanguageCode?: InputMaybe; email: Scalars['EmailAddress']['input']; @@ -1966,6 +2120,15 @@ export type UsersConnectionResult = { errors: Array; }; +export type WeekDays = + | 'FR' + | 'MO' + | 'SA' + | 'SU' + | 'TH' + | 'TU' + | 'WE'; + export type CreateChatInput = { organizationId: Scalars['ID']['input']; userIds: Array; @@ -1977,6 +2140,11 @@ export type CreateGroupChatInput = { userIds: Array; }; +export type CreateUserFamilyInput = { + title: Scalars['String']['input']; + userIds: Array; +}; + export type ResolverTypeWrapper = Promise | T; @@ -2059,6 +2227,7 @@ export type ResolversTypes = { AddressInput: AddressInput; Advertisement: ResolverTypeWrapper & { creator?: Maybe }>; AdvertisementType: AdvertisementType; + AgendaCategory: ResolverTypeWrapper; AggregatePost: ResolverTypeWrapper; AggregateUser: ResolverTypeWrapper; Any: ResolverTypeWrapper; @@ -2073,6 +2242,7 @@ export type ResolversTypes = { ConnectionPageInfo: ResolverTypeWrapper; CountryCode: ResolverTypeWrapper; CreateActionItemInput: CreateActionItemInput; + CreateAgendaCategoryInput: CreateAgendaCategoryInput; CreateUserTagInput: CreateUserTagInput; CursorPaginationInput: CursorPaginationInput; Date: ResolverTypeWrapper; @@ -2090,6 +2260,9 @@ export type ResolversTypes = { EventAttendeeInput: EventAttendeeInput; EventInput: EventInput; EventOrderByInput: EventOrderByInput; + EventVolunteer: ResolverTypeWrapper; + EventVolunteerInput: EventVolunteerInput; + EventVolunteerResponse: EventVolunteerResponse; EventWhereInput: EventWhereInput; ExtendSession: ResolverTypeWrapper; Feedback: ResolverTypeWrapper; @@ -2097,6 +2270,7 @@ export type ResolversTypes = { FieldError: ResolverTypeWrapper['FieldError']>; Float: ResolverTypeWrapper; ForgotPasswordData: ForgotPasswordData; + Frequency: Frequency; Gender: Gender; Group: ResolverTypeWrapper; GroupChat: ResolverTypeWrapper; @@ -2146,6 +2320,7 @@ export type ResolversTypes = { Query: ResolverTypeWrapper<{}>; RecaptchaVerification: RecaptchaVerification; Recurrance: Recurrance; + RecurrenceRuleInput: RecurrenceRuleInput; Status: Status; String: ResolverTypeWrapper; Subscription: ResolverTypeWrapper<{}>; @@ -2160,7 +2335,9 @@ export type ResolversTypes = { UpdateActionItemInput: UpdateActionItemInput; UpdateAdvertisementInput: UpdateAdvertisementInput; UpdateAdvertisementPayload: ResolverTypeWrapper & { advertisement?: Maybe }>; + UpdateAgendaCategoryInput: UpdateAgendaCategoryInput; UpdateEventInput: UpdateEventInput; + UpdateEventVolunteerInput: UpdateEventVolunteerInput; UpdateOrganizationInput: UpdateOrganizationInput; UpdateUserInput: UpdateUserInput; UpdateUserPasswordInput: UpdateUserPasswordInput; @@ -2172,6 +2349,7 @@ export type ResolversTypes = { UserConnection: ResolverTypeWrapper & { edges: Array> }>; UserCustomData: ResolverTypeWrapper; UserEdge: ResolverTypeWrapper & { node: ResolversTypes['User'] }>; + UserFamily: ResolverTypeWrapper; UserInput: UserInput; UserOrderByInput: UserOrderByInput; UserPhone: ResolverTypeWrapper; @@ -2186,8 +2364,10 @@ export type ResolversTypes = { UsersConnection: ResolverTypeWrapper & { edges: Array }>; UsersConnectionInput: UsersConnectionInput; UsersConnectionResult: ResolverTypeWrapper & { data?: Maybe, errors: Array }>; + WeekDays: WeekDays; createChatInput: CreateChatInput; createGroupChatInput: CreateGroupChatInput; + createUserFamilyInput: CreateUserFamilyInput; }; /** Mapping between all available schema types and the resolvers parents */ @@ -2197,6 +2377,7 @@ export type ResolversParentTypes = { Address: Address; AddressInput: AddressInput; Advertisement: Omit & { creator?: Maybe }; + AgendaCategory: InterfaceAgendaCategoryModel; AggregatePost: AggregatePost; AggregateUser: AggregateUser; Any: Scalars['Any']['output']; @@ -2211,6 +2392,7 @@ export type ResolversParentTypes = { ConnectionPageInfo: ConnectionPageInfo; CountryCode: Scalars['CountryCode']['output']; CreateActionItemInput: CreateActionItemInput; + CreateAgendaCategoryInput: CreateAgendaCategoryInput; CreateUserTagInput: CreateUserTagInput; CursorPaginationInput: CursorPaginationInput; Date: Scalars['Date']['output']; @@ -2225,6 +2407,8 @@ export type ResolversParentTypes = { Event: InterfaceEventModel; EventAttendeeInput: EventAttendeeInput; EventInput: EventInput; + EventVolunteer: InterfaceEventVolunteerModel; + EventVolunteerInput: EventVolunteerInput; EventWhereInput: EventWhereInput; ExtendSession: ExtendSession; Feedback: InterfaceFeedbackModel; @@ -2275,6 +2459,7 @@ export type ResolversParentTypes = { PostWhereInput: PostWhereInput; Query: {}; RecaptchaVerification: RecaptchaVerification; + RecurrenceRuleInput: RecurrenceRuleInput; String: Scalars['String']['output']; Subscription: {}; Time: Scalars['Time']['output']; @@ -2287,7 +2472,9 @@ export type ResolversParentTypes = { UpdateActionItemInput: UpdateActionItemInput; UpdateAdvertisementInput: UpdateAdvertisementInput; UpdateAdvertisementPayload: Omit & { advertisement?: Maybe }; + UpdateAgendaCategoryInput: UpdateAgendaCategoryInput; UpdateEventInput: UpdateEventInput; + UpdateEventVolunteerInput: UpdateEventVolunteerInput; UpdateOrganizationInput: UpdateOrganizationInput; UpdateUserInput: UpdateUserInput; UpdateUserPasswordInput: UpdateUserPasswordInput; @@ -2299,6 +2486,7 @@ export type ResolversParentTypes = { UserConnection: Omit & { edges: Array> }; UserCustomData: UserCustomData; UserEdge: Omit & { node: ResolversParentTypes['User'] }; + UserFamily: InterfaceUserFamilyModel; UserInput: UserInput; UserPhone: UserPhone; UserPhoneInput: UserPhoneInput; @@ -2313,6 +2501,7 @@ export type ResolversParentTypes = { UsersConnectionResult: Omit & { data?: Maybe, errors: Array }; createChatInput: CreateChatInput; createGroupChatInput: CreateGroupChatInput; + createUserFamilyInput: CreateUserFamilyInput; }; export type AuthDirectiveArgs = { }; @@ -2380,6 +2569,18 @@ export type AdvertisementResolvers; }; +export type AgendaCategoryResolvers = { + _id?: Resolver; + createdAt?: Resolver; + createdBy?: Resolver; + description?: Resolver, ParentType, ContextType>; + name?: Resolver; + organization?: Resolver; + updatedAt?: Resolver, ParentType, ContextType>; + updatedBy?: Resolver, ParentType, ContextType>; + __isTypeOf?: IsTypeOfResolverFn; +}; + export type AggregatePostResolvers = { count?: Resolver; __isTypeOf?: IsTypeOfResolverFn; @@ -2517,7 +2718,7 @@ export type EventResolvers; creator?: Resolver, ParentType, ContextType>; description?: Resolver; - endDate?: Resolver; + endDate?: Resolver, ParentType, ContextType>; endTime?: Resolver, ParentType, ContextType>; feedback?: Resolver, ParentType, ContextType>; isPublic?: Resolver; @@ -2536,6 +2737,19 @@ export type EventResolvers; }; +export type EventVolunteerResolvers = { + _id?: Resolver; + createdAt?: Resolver; + creator?: Resolver, ParentType, ContextType>; + event?: Resolver, ParentType, ContextType>; + isAssigned?: Resolver, ParentType, ContextType>; + isInvited?: Resolver, ParentType, ContextType>; + response?: Resolver, ParentType, ContextType>; + updatedAt?: Resolver; + user?: Resolver; + __isTypeOf?: IsTypeOfResolverFn; +}; + export type ExtendSessionResolvers = { accessToken?: Resolver; refreshToken?: Resolver; @@ -2691,6 +2905,7 @@ export type MutationResolvers>; addUserImage?: Resolver>; addUserToGroupChat?: Resolver>; + addUserToUserFamily?: Resolver>; adminRemoveEvent?: Resolver>; adminRemoveGroup?: Resolver>; assignUserTag?: Resolver, ParentType, ContextType, RequireFields>; @@ -2702,10 +2917,12 @@ export type MutationResolvers>; createAdmin?: Resolver>; createAdvertisement?: Resolver>; + createAgendaCategory?: Resolver>; createComment?: Resolver, ParentType, ContextType, RequireFields>; createDirectChat?: Resolver>; createDonation?: Resolver>; - createEvent?: Resolver>; + createEvent?: Resolver>; + createEventVolunteer?: Resolver>; createGroupChat?: Resolver>; createMember?: Resolver>; createMessageChat?: Resolver>; @@ -2713,8 +2930,10 @@ export type MutationResolvers>; createPost?: Resolver, ParentType, ContextType, RequireFields>; createSampleOrganization?: Resolver; + createUserFamily?: Resolver>; createUserTag?: Resolver, ParentType, ContextType, RequireFields>; deleteAdvertisementById?: Resolver>; + deleteAgendaCategory?: Resolver>; deleteDonationById?: Resolver>; forgotPassword?: Resolver>; joinPublicOrganization?: Resolver>; @@ -2736,6 +2955,7 @@ export type MutationResolvers>; removeEvent?: Resolver>; removeEventAttendee?: Resolver>; + removeEventVolunteer?: Resolver>; removeGroupChat?: Resolver>; removeMember?: Resolver>; removeOrganization?: Resolver>; @@ -2744,7 +2964,9 @@ export type MutationResolvers, ParentType, ContextType, RequireFields>; removeSampleOrganization?: Resolver; removeUserCustomData?: Resolver>; + removeUserFamily?: Resolver>; removeUserFromGroupChat?: Resolver>; + removeUserFromUserFamily?: Resolver>; removeUserImage?: Resolver; removeUserTag?: Resolver, ParentType, ContextType, RequireFields>; revokeRefreshTokenForUser?: Resolver; @@ -2762,7 +2984,9 @@ export type MutationResolvers, ParentType, ContextType, RequireFields>; updateActionItemCategory?: Resolver, ParentType, ContextType, RequireFields>; updateAdvertisement?: Resolver, ParentType, ContextType, RequireFields>; + updateAgendaCategory?: Resolver, ParentType, ContextType, RequireFields>; updateEvent?: Resolver>; + updateEventVolunteer?: Resolver>; updateLanguage?: Resolver>; updateOrganization?: Resolver>; updatePluginStatus?: Resolver>; @@ -2779,6 +3003,7 @@ export type OrganizationResolvers>>, ParentType, ContextType>; address?: Resolver, ParentType, ContextType>; admins?: Resolver>, ParentType, ContextType, Partial>; + agendaCategories?: Resolver>>, ParentType, ContextType>; apiUrl?: Resolver; blockedUsers?: Resolver>>, ParentType, ContextType>; createdAt?: Resolver; @@ -2889,12 +3114,14 @@ export type QueryResolvers>>, ParentType, ContextType, RequireFields>; actionItemsByOrganization?: Resolver>>, ParentType, ContextType, RequireFields>; adminPlugin?: Resolver>>, ParentType, ContextType, RequireFields>; + agendaCategory?: Resolver>; checkAuth?: Resolver; customDataByOrganization?: Resolver, ParentType, ContextType, RequireFields>; customFieldsByOrganization?: Resolver>>, ParentType, ContextType, RequireFields>; directChatsByUserID?: Resolver>>, ParentType, ContextType, RequireFields>; directChatsMessagesByChatID?: Resolver>>, ParentType, ContextType, RequireFields>; event?: Resolver, ParentType, ContextType, RequireFields>; + eventVolunteersByEvent?: Resolver>>, ParentType, ContextType, RequireFields>; eventsByOrganization?: Resolver>>, ParentType, ContextType, Partial>; eventsByOrganizationConnection?: Resolver, ParentType, ContextType, Partial>; getAdvertisements?: Resolver>>, ParentType, ContextType>; @@ -3018,6 +3245,15 @@ export type UserEdgeResolvers; }; +export type UserFamilyResolvers = { + _id?: Resolver; + admins?: Resolver, ParentType, ContextType>; + creator?: Resolver; + title?: Resolver, ParentType, ContextType>; + users?: Resolver, ParentType, ContextType>; + __isTypeOf?: IsTypeOfResolverFn; +}; + export type UserPhoneResolvers = { home?: Resolver, ParentType, ContextType>; mobile?: Resolver, ParentType, ContextType>; @@ -3070,6 +3306,7 @@ export type Resolvers = { ActionItemCategory?: ActionItemCategoryResolvers; Address?: AddressResolvers; Advertisement?: AdvertisementResolvers; + AgendaCategory?: AgendaCategoryResolvers; AggregatePost?: AggregatePostResolvers; AggregateUser?: AggregateUserResolvers; Any?: GraphQLScalarType; @@ -3089,6 +3326,7 @@ export type Resolvers = { EmailAddress?: GraphQLScalarType; Error?: ErrorResolvers; Event?: EventResolvers; + EventVolunteer?: EventVolunteerResolvers; ExtendSession?: ExtendSessionResolvers; Feedback?: FeedbackResolvers; FieldError?: FieldErrorResolvers; @@ -3133,6 +3371,7 @@ export type Resolvers = { UserConnection?: UserConnectionResolvers; UserCustomData?: UserCustomDataResolvers; UserEdge?: UserEdgeResolvers; + UserFamily?: UserFamilyResolvers; UserPhone?: UserPhoneResolvers; UserTag?: UserTagResolvers; UserTagEdge?: UserTagEdgeResolvers; diff --git a/src/utilities/PII/decryption.ts b/src/utilities/PII/decryption.ts index a30f4257aa..d93b505ec8 100644 --- a/src/utilities/PII/decryption.ts +++ b/src/utilities/PII/decryption.ts @@ -4,12 +4,12 @@ import crypto from "crypto"; export function decrypt( encryptedText: string, key: string, - iv: string + iv: string, ): string { const decipher = crypto.createDecipheriv( "aes-256-cbc", Buffer.from(key), - Buffer.from(iv, "hex") + Buffer.from(iv, "hex"), ); let decrypted = decipher.update(encryptedText, "hex", "utf8"); decrypted += decipher.final("utf8"); diff --git a/src/utilities/PII/encryption.ts b/src/utilities/PII/encryption.ts index 4fb600985f..05c85bd86a 100644 --- a/src/utilities/PII/encryption.ts +++ b/src/utilities/PII/encryption.ts @@ -5,7 +5,7 @@ export function encrypt(text: string, key: string, iv: string): string { const cipher = crypto.createCipheriv( "aes-256-cbc", Buffer.from(key), - Buffer.from(iv, "hex") + Buffer.from(iv, "hex"), ); let encrypted = cipher.update(text); encrypted = Buffer.concat([encrypted, cipher.final()]); diff --git a/src/utilities/PII/isAuthorised.ts b/src/utilities/PII/isAuthorised.ts index ad3e246802..65c4120de5 100644 --- a/src/utilities/PII/isAuthorised.ts +++ b/src/utilities/PII/isAuthorised.ts @@ -2,7 +2,7 @@ import type { User } from "../../types/generatedGraphQLTypes"; export function isAuthorised( requestingUser: User, - requestedUser: User + requestedUser: User, ): boolean { if (requestedUser !== requestedUser) { return false; diff --git a/src/utilities/adminCheck.ts b/src/utilities/adminCheck.ts index bd44cd28e1..68f7749330 100644 --- a/src/utilities/adminCheck.ts +++ b/src/utilities/adminCheck.ts @@ -13,10 +13,10 @@ import { User } from "../models"; */ export const adminCheck = async ( userId: string | Types.ObjectId, - organization: InterfaceOrganization + organization: InterfaceOrganization, ): Promise => { const userIsOrganizationAdmin = organization.admins.some( - (admin) => admin === userId || Types.ObjectId(admin).equals(userId) + (admin) => admin === userId || Types.ObjectId(admin).equals(userId), ); const user = await User.findOne({ @@ -30,7 +30,7 @@ export const adminCheck = async ( throw new errors.UnauthorizedError( requestContext.translate(`${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`), USER_NOT_AUTHORIZED_ADMIN.CODE, - USER_NOT_AUTHORIZED_ADMIN.PARAM + USER_NOT_AUTHORIZED_ADMIN.PARAM, ); } }; diff --git a/src/utilities/auth.ts b/src/utilities/auth.ts index d8db27a3a4..bb7305d650 100644 --- a/src/utilities/auth.ts +++ b/src/utilities/auth.ts @@ -28,7 +28,7 @@ export const createAccessToken = (user: InterfaceUser): string => { ACCESS_TOKEN_SECRET as string, { expiresIn: "40m", - } + }, ); }; @@ -44,7 +44,7 @@ export const createRefreshToken = (user: InterfaceUser): string => { REFRESH_TOKEN_SECRET as string, { expiresIn: "30d", - } + }, ); }; diff --git a/src/utilities/createSampleOrganizationUtil.ts b/src/utilities/createSampleOrganizationUtil.ts index ee67fe7d73..95861eb6c7 100644 --- a/src/utilities/createSampleOrganizationUtil.ts +++ b/src/utilities/createSampleOrganizationUtil.ts @@ -9,7 +9,7 @@ import { SampleData } from "../models/SampleData"; export const generateUserData = async ( organizationId: string, - userType: string + userType: string, ): Promise> => { const gender: "male" | "female" = faker.helpers.arrayElement([ "male", @@ -29,7 +29,7 @@ export const generateUserData = async ( firstName: fname, lastName: lname, email: `${fname.toLowerCase()}${lname.toLowerCase()}@${faker.helpers.arrayElement( - ["xyz", "abc", "lmnop"] + ["xyz", "abc", "lmnop"], )}.com`, password: "$2a$12$bSYpay6TRMpTOaAmYPFXku4avwmqfFBtmgg39TabxmtFEiz4plFtW", joinedOrganizations: [organizationId], @@ -50,7 +50,7 @@ export const generateUserData = async ( }; const createUser = async ( - generatedUser: InterfaceUser & mongoose.Document + generatedUser: InterfaceUser & mongoose.Document, ): Promise> => { const savedUser = await generatedUser.save(); const sampleModel = new SampleData({ @@ -63,7 +63,7 @@ const createUser = async ( export const generateEventData = async ( users: InterfaceUser[], - organizationId: string + organizationId: string, ): Promise => { const today = new Date(); const oneWeekFromNow = new Date(); @@ -76,7 +76,7 @@ export const generateEventData = async ( const duration = Math.floor(Math.random() * 7) + 1; // Random duration between 1 and 7 days const endDate = new Date( - startDate.getTime() + duration * 24 * 60 * 60 * 1000 + startDate.getTime() + duration * 24 * 60 * 60 * 1000, ); const event = new Event({ @@ -119,7 +119,7 @@ export const generateEventData = async ( await User.findByIdAndUpdate( creatorId, { $push: { eventsCreated: event._id } }, - { new: true } + { new: true }, ); return event; @@ -127,7 +127,7 @@ export const generateEventData = async ( export const generatePostData = async ( users: InterfaceUser[], - organizationId: string + organizationId: string, ): Promise> => { const post = new Post({ status: "ACTIVE", @@ -158,7 +158,7 @@ export const generatePostData = async ( const createPosts = async ( numPosts: number, users: InterfaceUser[], - organizationId: string + organizationId: string, ): Promise<(InterfacePost & mongoose.Document)[]> => { const posts = []; for (let i = 0; i < numPosts; i++) { @@ -171,7 +171,7 @@ const createPosts = async ( const createEvents = async ( numEvents: number, users: InterfaceUser[], - organizationId: string + organizationId: string, ): Promise => { const events = []; @@ -184,7 +184,7 @@ const createEvents = async ( export const generateRandomPlugins = async ( numberOfPlugins: number, - users: string[] + users: string[], ): Promise[]> => { const pluginPromises = []; for (let i = 0; i < numberOfPlugins; i++) { diff --git a/src/utilities/deleteImage.ts b/src/utilities/deleteImage.ts index d8346e2536..74c30cba1f 100644 --- a/src/utilities/deleteImage.ts +++ b/src/utilities/deleteImage.ts @@ -11,14 +11,14 @@ import { reuploadDuplicateCheck } from "./reuploadDuplicateCheck"; */ export const deleteImage = async ( imageToBeDeleted: string, - imageBelongingToItem?: string + imageBelongingToItem?: string, ): Promise => { let imageIsDuplicate = false; if (imageBelongingToItem) { imageIsDuplicate = await reuploadDuplicateCheck( imageToBeDeleted, - imageBelongingToItem + imageBelongingToItem, ); } @@ -55,7 +55,7 @@ export const deleteImage = async ( $inc: { numberOfUses: -1, }, - } + }, ); } }; diff --git a/src/utilities/encodedImageStorage/deletePreviousImage.ts b/src/utilities/encodedImageStorage/deletePreviousImage.ts index e22f64de44..33d600f659 100644 --- a/src/utilities/encodedImageStorage/deletePreviousImage.ts +++ b/src/utilities/encodedImageStorage/deletePreviousImage.ts @@ -3,7 +3,7 @@ import path from "path"; import { EncodedImage } from "../../models/EncodedImage"; export const deletePreviousImage = async ( - imageToBeDeletedPath: string + imageToBeDeletedPath: string, ): Promise => { const imageToBeDeleted = await EncodedImage.findOne({ fileName: imageToBeDeletedPath!, @@ -24,6 +24,6 @@ export const deletePreviousImage = async ( $inc: { numberOfUses: -1, }, - } + }, ); }; diff --git a/src/utilities/encodedImageStorage/encodedImageExtensionCheck.ts b/src/utilities/encodedImageStorage/encodedImageExtensionCheck.ts index 3e7b25e131..bc6256012e 100644 --- a/src/utilities/encodedImageStorage/encodedImageExtensionCheck.ts +++ b/src/utilities/encodedImageStorage/encodedImageExtensionCheck.ts @@ -1,7 +1,7 @@ export const encodedImageExtentionCheck = (encodedUrl: string): boolean => { const extension = encodedUrl.substring( "data:".length, - encodedUrl.indexOf(";base64") + encodedUrl.indexOf(";base64"), ); console.log(extension); diff --git a/src/utilities/encodedImageStorage/uploadEncodedImage.ts b/src/utilities/encodedImageStorage/uploadEncodedImage.ts index d3710f1246..b5da60364b 100644 --- a/src/utilities/encodedImageStorage/uploadEncodedImage.ts +++ b/src/utilities/encodedImageStorage/uploadEncodedImage.ts @@ -14,18 +14,18 @@ const checkImageSizeLimit = (size: number): boolean => { const base64SizeInKb = (base64String: string): number => { // Count the number of Base64 characters - var numBase64Chars = base64String.length; + const numBase64Chars = base64String.length; // Calculate the size in bytes - var sizeInBytes = (numBase64Chars * 3) / 4; + const sizeInBytes = (numBase64Chars * 3) / 4; // Convert to kilobytes - var sizeInKB = sizeInBytes / 1024; + const sizeInKB = sizeInBytes / 1024; return sizeInKB; }; export const uploadEncodedImage = async ( encodedImageURL: string, - previousImagePath?: string | null + previousImagePath?: string | null, ): Promise => { const isURLValidImage = encodedImageExtentionCheck(encodedImageURL); @@ -39,7 +39,7 @@ export const uploadEncodedImage = async ( throw new errors.ImageSizeLimitExceeded( IMAGE_SIZE_LIMIT_KB.MESSAGE, IMAGE_SIZE_LIMIT_KB.CODE, - IMAGE_SIZE_LIMIT_KB.PARAM + IMAGE_SIZE_LIMIT_KB.PARAM, ); } @@ -47,7 +47,7 @@ export const uploadEncodedImage = async ( throw new errors.InvalidFileTypeError( requestContext.translate(INVALID_FILE_TYPE.MESSAGE), INVALID_FILE_TYPE.CODE, - INVALID_FILE_TYPE.PARAM + INVALID_FILE_TYPE.PARAM, ); } @@ -68,7 +68,7 @@ export const uploadEncodedImage = async ( $inc: { numberOfUses: 1, }, - } + }, ); if (previousImagePath) { diff --git a/src/utilities/encodedVideoStorage/deletePreviousVideo.ts b/src/utilities/encodedVideoStorage/deletePreviousVideo.ts index 2fbcf3539b..4cbdf3a88d 100644 --- a/src/utilities/encodedVideoStorage/deletePreviousVideo.ts +++ b/src/utilities/encodedVideoStorage/deletePreviousVideo.ts @@ -3,7 +3,7 @@ import path from "path"; import { EncodedVideo } from "../../models/EncodedVideo"; export const deletePreviousVideo = async ( - videoToBeDeletedPath: string + videoToBeDeletedPath: string, ): Promise => { const videoToBeDeleted = await EncodedVideo.findOne({ fileName: videoToBeDeletedPath!, @@ -24,6 +24,6 @@ export const deletePreviousVideo = async ( $inc: { numberOfUses: -1, }, - } + }, ); }; diff --git a/src/utilities/encodedVideoStorage/encodedVideoExtensionCheck.ts b/src/utilities/encodedVideoStorage/encodedVideoExtensionCheck.ts index 85d6f854ab..f9cb626d04 100644 --- a/src/utilities/encodedVideoStorage/encodedVideoExtensionCheck.ts +++ b/src/utilities/encodedVideoStorage/encodedVideoExtensionCheck.ts @@ -1,7 +1,7 @@ export const encodedVideoExtentionCheck = (encodedUrl: string): boolean => { const extension = encodedUrl.substring( "data:".length, - encodedUrl.indexOf(";base64") + encodedUrl.indexOf(";base64"), ); console.log(extension); diff --git a/src/utilities/encodedVideoStorage/uploadEncodedVideo.ts b/src/utilities/encodedVideoStorage/uploadEncodedVideo.ts index 2346048674..faf69f78ae 100644 --- a/src/utilities/encodedVideoStorage/uploadEncodedVideo.ts +++ b/src/utilities/encodedVideoStorage/uploadEncodedVideo.ts @@ -11,7 +11,7 @@ import { deletePreviousVideo } from "./deletePreviousVideo"; export const uploadEncodedVideo = async ( encodedVideoURL: string, // eslint-disable-next-line @typescript-eslint/no-unused-vars - previousVideoPath?: string | null + previousVideoPath?: string | null, ): Promise => { const isURLValidVideo = encodedVideoExtentionCheck(encodedVideoURL); @@ -19,7 +19,7 @@ export const uploadEncodedVideo = async ( throw new errors.InvalidFileTypeError( requestContext.translate(INVALID_FILE_TYPE.MESSAGE), INVALID_FILE_TYPE.CODE, - INVALID_FILE_TYPE.PARAM + INVALID_FILE_TYPE.PARAM, ); } @@ -40,7 +40,7 @@ export const uploadEncodedVideo = async ( $inc: { numberOfUses: 1, }, - } + }, ); if (previousVideoPath) { diff --git a/src/utilities/graphqlConnectionFactory.ts b/src/utilities/graphqlConnectionFactory.ts index 3181a921e8..d5c11bac28 100644 --- a/src/utilities/graphqlConnectionFactory.ts +++ b/src/utilities/graphqlConnectionFactory.ts @@ -52,7 +52,7 @@ export const getLimit = (limit: number): number => { // Generates the sortingObject that can be passed in the .sort() method export const getSortingObject = ( direction: "FORWARD" | "BACKWARD", - sortingObject: Record + sortingObject: Record, ): Record => { // We assume that the resolver would always be written with respect to the sorting that needs to be implemented for forward pagination if (direction === "FORWARD") return sortingObject; @@ -73,7 +73,7 @@ type FilterObjectType = { // Generates the sorting arguments for filterQuery that can be passed into the .find() method export function getFilterObject( - args: CursorPaginationInput + args: CursorPaginationInput, ): FilterObjectType | null { if (args.cursor) { if (args.direction === "FORWARD") return { _id: { $gt: args.cursor } }; @@ -105,11 +105,11 @@ The function returns a promise which would resolve to the desired connection obj */ export function generateConnectionObject< T1 extends { _id: Types.ObjectId }, - T2 extends { _id: Types.ObjectId } + T2 extends { _id: Types.ObjectId }, >( args: CursorPaginationInput, allFetchedObjects: T2[] | null, - getNodeFromResult: GetNodeFromResultFnType + getNodeFromResult: GetNodeFromResultFnType, ): InterfaceConnectionResult { // Initialize the connection object const connectionObject = graphqlConnectionFactory(); diff --git a/src/utilities/imageAlreadyInDbCheck.ts b/src/utilities/imageAlreadyInDbCheck.ts index 93967626e5..6982237708 100644 --- a/src/utilities/imageAlreadyInDbCheck.ts +++ b/src/utilities/imageAlreadyInDbCheck.ts @@ -15,7 +15,7 @@ import { INVALID_FILE_TYPE } from "../constants"; */ export const imageAlreadyInDbCheck = async ( oldImagePath: string | null, - newImagePath: string + newImagePath: string, ): Promise => { try { let fileName; @@ -46,7 +46,7 @@ export const imageAlreadyInDbCheck = async ( } else { const imageIsDuplicate = await reuploadDuplicateCheck( oldImagePath, - newImagePath + newImagePath, ); if (imageIsDuplicate === false) { @@ -60,7 +60,7 @@ export const imageAlreadyInDbCheck = async ( $inc: { numberOfUses: 1, }, - } + }, ); } @@ -79,7 +79,7 @@ export const imageAlreadyInDbCheck = async ( param: INVALID_FILE_TYPE.PARAM, }, ], - requestContext.translate(INVALID_FILE_TYPE.MESSAGE) + requestContext.translate(INVALID_FILE_TYPE.MESSAGE), ); } }; diff --git a/src/utilities/imageExtensionCheck.ts b/src/utilities/imageExtensionCheck.ts index f2e37b3d37..337e3f806d 100644 --- a/src/utilities/imageExtensionCheck.ts +++ b/src/utilities/imageExtensionCheck.ts @@ -25,7 +25,7 @@ export const imageExtensionCheck = async (filename: string): Promise => { param: INVALID_FILE_TYPE.PARAM, }, ], - requestContext.translate(INVALID_FILE_TYPE.MESSAGE) + requestContext.translate(INVALID_FILE_TYPE.MESSAGE), ); } }; diff --git a/src/utilities/loadSampleData.ts b/src/utilities/loadSampleData.ts index eaa0a62158..eb1992fe97 100644 --- a/src/utilities/loadSampleData.ts +++ b/src/utilities/loadSampleData.ts @@ -51,7 +51,7 @@ async function insertCollections(collections: string[]): Promise { for (const collection of collections) { const data = await fs.readFile( path.join(__dirname, `../../sample_data/${collection}.json`), - "utf8" + "utf8", ); const docs = JSON.parse(data) as Record[]; diff --git a/src/utilities/mailer.ts b/src/utilities/mailer.ts index a4d44bda49..f7b5f93bd3 100644 --- a/src/utilities/mailer.ts +++ b/src/utilities/mailer.ts @@ -22,7 +22,7 @@ export interface InterfaceMailFields { * @returns Promise along with resolve and reject methods. */ export const mailer = ( - mailFields: InterfaceMailFields + mailFields: InterfaceMailFields, ): Promise => { // Nodemailer configuration let transporter: Transporter; @@ -68,7 +68,7 @@ export const mailer = ( } else { resolve(info); } - } + }, ); }); }; diff --git a/src/utilities/recurrenceDatesUtil.ts b/src/utilities/recurrenceDatesUtil.ts new file mode 100644 index 0000000000..1075692eb0 --- /dev/null +++ b/src/utilities/recurrenceDatesUtil.ts @@ -0,0 +1,32 @@ +/** + * This function converts the date to UTC. + * @param date - the date to be converted. + * @returns converted date. + */ + +export const convertToUTCDate = (date: Date): Date => { + const year = date.getFullYear(); + const month = date.getMonth(); + const day = date.getDate(); + + // Create a new date object with local year, month, day but at UTC midnight + const utcMidnight = new Date(Date.UTC(year, month, day, 0, 0, 0, 0)); + + return utcMidnight; +}; + +/** + * This function converts the date to a valid rrule string argument. + * @param date - the date string to be converted. + * @returns converted date string. + */ + +export const convertToRRuleDateString = (date: Date): string => { + let dateString = date.toISOString(); + + dateString = dateString.replace(/[-:]/g, ""); + + dateString = dateString.replace(/\.\d{3}/, ""); + + return dateString; +}; diff --git a/src/utilities/reuploadDuplicateCheck.ts b/src/utilities/reuploadDuplicateCheck.ts index 53adaa9ab0..b56944b364 100644 --- a/src/utilities/reuploadDuplicateCheck.ts +++ b/src/utilities/reuploadDuplicateCheck.ts @@ -41,7 +41,7 @@ const getImageHash = (oldSrc: TypeImagePath): object => { */ export const reuploadDuplicateCheck = async ( oldImagePath: TypeImagePath | null, - newImagePath: TypeImagePath + newImagePath: TypeImagePath, ): Promise => { /* This function checks whether a user is trying to re-upload the same profile picture @@ -68,7 +68,7 @@ export const reuploadDuplicateCheck = async ( param: "fileType", }, ], - requestContext.translate("invalid.fileType") + requestContext.translate("invalid.fileType"), ); } }; diff --git a/src/utilities/superAdminCheck.ts b/src/utilities/superAdminCheck.ts index 1b6c52f580..1f3cad5584 100644 --- a/src/utilities/superAdminCheck.ts +++ b/src/utilities/superAdminCheck.ts @@ -9,7 +9,7 @@ export const superAdminCheck = (user: InterfaceUser): void => { throw new errors.UnauthorizedError( requestContext.translate(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE), USER_NOT_AUTHORIZED_SUPERADMIN.CODE, - USER_NOT_AUTHORIZED_SUPERADMIN.PARAM + USER_NOT_AUTHORIZED_SUPERADMIN.PARAM, ); } }; diff --git a/src/utilities/uploadImage.ts b/src/utilities/uploadImage.ts index 1a573dff35..9122848858 100644 --- a/src/utilities/uploadImage.ts +++ b/src/utilities/uploadImage.ts @@ -15,7 +15,7 @@ import { imageExtensionCheck } from "./imageExtensionCheck"; */ export const uploadImage = async ( newImageFile: any, - oldImagePath: string | null + oldImagePath: string | null, ): Promise<{ newImagePath: string; imageAlreadyInDbPath: string }> => { const id = shortid.generate(); @@ -29,16 +29,16 @@ export const uploadImage = async ( createReadStream() .pipe( createWriteStream( - path.join(__dirname, "../../images", `/${id}-${filename}`) - ) + path.join(__dirname, "../../images", `/${id}-${filename}`), + ), ) .on("close", resolve) .on("error", (error: any) => reject(error)) .on("finish", () => resolve({ path, - }) - ) + }), + ), ); const newImagePath = `images/${id}-${filename}`; @@ -54,7 +54,7 @@ export const uploadImage = async ( const imageAlreadyInDbPath = await imageAlreadyInDbCheck( oldImagePath, - newImagePath + newImagePath, ); return { diff --git a/src/utilities/userFamilyAdminCheck.ts b/src/utilities/userFamilyAdminCheck.ts new file mode 100644 index 0000000000..a31360d613 --- /dev/null +++ b/src/utilities/userFamilyAdminCheck.ts @@ -0,0 +1,36 @@ +import { Types } from "mongoose"; +import { errors, requestContext } from "../libraries"; +import { USER_NOT_AUTHORIZED_ADMIN } from "../constants"; +import type { InterfaceUserFamily } from "../models/userFamily"; +import { User } from "../models"; +/** + * If the current user is an admin of the organisation, this function returns `true` otherwise it returns `false`. + * @remarks + * This is a utility method. + * @param userId - Current user id. + * @param userFamily - userFamily data of `InterfaceuserFamily` type. + * @returns `True` or `False`. + */ +export const adminCheck = async ( + userId: string | Types.ObjectId, + userFamily: InterfaceUserFamily, +): Promise => { + const userIsUserFamilyAdmin = userFamily.admins.some( + (admin) => admin === userId || Types.ObjectId(admin).equals(userId), + ); + + const user = await User.findOne({ + _id: userId, + }); + const isUserSuperAdmin: boolean = user + ? user.userType === "SUPERADMIN" + : false; + + if (!userIsUserFamilyAdmin && !isUserSuperAdmin) { + throw new errors.UnauthorizedError( + requestContext.translate(`${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`), + USER_NOT_AUTHORIZED_ADMIN.CODE, + USER_NOT_AUTHORIZED_ADMIN.PARAM, + ); + } +}; diff --git a/talawa-api-docs/README.md b/talawa-api-docs/README.md index efc9c465fc..2eea479b50 100644 --- a/talawa-api-docs/README.md +++ b/talawa-api-docs/README.md @@ -2,7 +2,7 @@ talawa-api / [Exports](modules.md) # Talawa API -💬 Join the community on Slack. The link can be found in the `Talawa` [README.md](https://github.com/PalisadoesFoundation/talawa) file. +💬 Join our community on Slack. The link can be found in the `Talawa` [README.md](https://github.com/PalisadoesFoundation/talawa) file. [![N|Solid](public/markdown/images/talawa-logo-lite-200x200.png)](https://github.com/PalisadoesFoundation/talawa-api) diff --git a/talawa-api-docs/classes/libraries_errors_ImageSizeLimitExceeded.ImageSizeLimitExceeded.md b/talawa-api-docs/classes/libraries_errors_ImageSizeLimitExceeded.ImageSizeLimitExceeded.md index bd65ecda98..9cd63190d4 100644 --- a/talawa-api-docs/classes/libraries_errors_ImageSizeLimitExceeded.ImageSizeLimitExceeded.md +++ b/talawa-api-docs/classes/libraries_errors_ImageSizeLimitExceeded.ImageSizeLimitExceeded.md @@ -57,7 +57,7 @@ This class detects invalid file type errors and sends those errors to the superc #### Defined in -[src/libraries/errors/ImageSizeLimitExceeded.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/ImageSizeLimitExceeded.ts#L6) +[src/libraries/errors/ImageSizeLimitExceeded.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/ImageSizeLimitExceeded.ts#L6) ## Properties @@ -71,7 +71,7 @@ This class detects invalid file type errors and sends those errors to the superc #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_applicationError.ApplicationError.md b/talawa-api-docs/classes/libraries_errors_applicationError.ApplicationError.md index 95bb9f0f97..fbb617d53c 100644 --- a/talawa-api-docs/classes/libraries_errors_applicationError.ApplicationError.md +++ b/talawa-api-docs/classes/libraries_errors_applicationError.ApplicationError.md @@ -74,7 +74,7 @@ Error.constructor #### Defined in -[src/libraries/errors/applicationError.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L14) +[src/libraries/errors/applicationError.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L14) ## Properties @@ -84,7 +84,7 @@ Error.constructor #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -94,7 +94,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_conflictError.ConflictError.md b/talawa-api-docs/classes/libraries_errors_conflictError.ConflictError.md index f0091955d8..23fb20e149 100644 --- a/talawa-api-docs/classes/libraries_errors_conflictError.ConflictError.md +++ b/talawa-api-docs/classes/libraries_errors_conflictError.ConflictError.md @@ -57,7 +57,7 @@ This class detects conflict errors and sends those errors to the superclass Appl #### Defined in -[src/libraries/errors/conflictError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/conflictError.ts#L6) +[src/libraries/errors/conflictError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/conflictError.ts#L6) ## Properties @@ -71,7 +71,7 @@ This class detects conflict errors and sends those errors to the superclass Appl #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_inputValidationError.InputValidationError.md b/talawa-api-docs/classes/libraries_errors_inputValidationError.InputValidationError.md index 6d720ec3af..154fb1b922 100644 --- a/talawa-api-docs/classes/libraries_errors_inputValidationError.InputValidationError.md +++ b/talawa-api-docs/classes/libraries_errors_inputValidationError.InputValidationError.md @@ -57,7 +57,7 @@ This class detects input validation errors and sends those errors to the supercl #### Defined in -[src/libraries/errors/inputValidationError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/inputValidationError.ts#L6) +[src/libraries/errors/inputValidationError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/inputValidationError.ts#L6) ## Properties @@ -71,7 +71,7 @@ This class detects input validation errors and sends those errors to the supercl #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_internalServerError.InternalServerError.md b/talawa-api-docs/classes/libraries_errors_internalServerError.InternalServerError.md index df34720b0d..fa9363b981 100644 --- a/talawa-api-docs/classes/libraries_errors_internalServerError.InternalServerError.md +++ b/talawa-api-docs/classes/libraries_errors_internalServerError.InternalServerError.md @@ -57,7 +57,7 @@ This class detects internal server errors and sends those errors to the supercla #### Defined in -[src/libraries/errors/internalServerError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/internalServerError.ts#L6) +[src/libraries/errors/internalServerError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/internalServerError.ts#L6) ## Properties @@ -71,7 +71,7 @@ This class detects internal server errors and sends those errors to the supercla #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_invalidFileTypeError.InvalidFileTypeError.md b/talawa-api-docs/classes/libraries_errors_invalidFileTypeError.InvalidFileTypeError.md index a59eeae1b5..2994361bc3 100644 --- a/talawa-api-docs/classes/libraries_errors_invalidFileTypeError.InvalidFileTypeError.md +++ b/talawa-api-docs/classes/libraries_errors_invalidFileTypeError.InvalidFileTypeError.md @@ -57,7 +57,7 @@ This class detects invalid file type errors and sends those errors to the superc #### Defined in -[src/libraries/errors/invalidFileTypeError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/invalidFileTypeError.ts#L6) +[src/libraries/errors/invalidFileTypeError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/invalidFileTypeError.ts#L6) ## Properties @@ -71,7 +71,7 @@ This class detects invalid file type errors and sends those errors to the superc #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_notFoundError.NotFoundError.md b/talawa-api-docs/classes/libraries_errors_notFoundError.NotFoundError.md index e0740546d2..60142b6717 100644 --- a/talawa-api-docs/classes/libraries_errors_notFoundError.NotFoundError.md +++ b/talawa-api-docs/classes/libraries_errors_notFoundError.NotFoundError.md @@ -57,7 +57,7 @@ This class detects Not Found errors and sends those errors to the superclass App #### Defined in -[src/libraries/errors/notFoundError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/notFoundError.ts#L6) +[src/libraries/errors/notFoundError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/notFoundError.ts#L6) ## Properties @@ -71,7 +71,7 @@ This class detects Not Found errors and sends those errors to the superclass App #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_unauthenticatedError.UnauthenticatedError.md b/talawa-api-docs/classes/libraries_errors_unauthenticatedError.UnauthenticatedError.md index b8f290f135..a725183591 100644 --- a/talawa-api-docs/classes/libraries_errors_unauthenticatedError.UnauthenticatedError.md +++ b/talawa-api-docs/classes/libraries_errors_unauthenticatedError.UnauthenticatedError.md @@ -57,7 +57,7 @@ This class detects unauthenticated errors and sends those errors to the supercla #### Defined in -[src/libraries/errors/unauthenticatedError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/unauthenticatedError.ts#L6) +[src/libraries/errors/unauthenticatedError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/unauthenticatedError.ts#L6) ## Properties @@ -71,7 +71,7 @@ This class detects unauthenticated errors and sends those errors to the supercla #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_unauthorizedError.UnauthorizedError.md b/talawa-api-docs/classes/libraries_errors_unauthorizedError.UnauthorizedError.md index 71237e725b..8a8f2a88dd 100644 --- a/talawa-api-docs/classes/libraries_errors_unauthorizedError.UnauthorizedError.md +++ b/talawa-api-docs/classes/libraries_errors_unauthorizedError.UnauthorizedError.md @@ -57,7 +57,7 @@ This class detects unauthorized errors and sends those errors to the superclass #### Defined in -[src/libraries/errors/unauthorizedError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/unauthorizedError.ts#L6) +[src/libraries/errors/unauthorizedError.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/unauthorizedError.ts#L6) ## Properties @@ -71,7 +71,7 @@ This class detects unauthorized errors and sends those errors to the superclass #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/classes/libraries_errors_validationError.ValidationError.md b/talawa-api-docs/classes/libraries_errors_validationError.ValidationError.md index b6ae83a628..d93a2195d8 100644 --- a/talawa-api-docs/classes/libraries_errors_validationError.ValidationError.md +++ b/talawa-api-docs/classes/libraries_errors_validationError.ValidationError.md @@ -55,7 +55,7 @@ This class detects validation errors and sends those errors to the superclass Ap #### Defined in -[src/libraries/errors/validationError.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/validationError.ts#L7) +[src/libraries/errors/validationError.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/validationError.ts#L7) ## Properties @@ -69,7 +69,7 @@ This class detects validation errors and sends those errors to the superclass Ap #### Defined in -[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L11) +[src/libraries/errors/applicationError.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L11) ___ @@ -83,7 +83,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L12) +[src/libraries/errors/applicationError.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L12) ___ diff --git a/talawa-api-docs/enums/constants.TransactionLogTypes.md b/talawa-api-docs/enums/constants.TransactionLogTypes.md index e7a0344750..f8c7f2a6bb 100644 --- a/talawa-api-docs/enums/constants.TransactionLogTypes.md +++ b/talawa-api-docs/enums/constants.TransactionLogTypes.md @@ -20,7 +20,7 @@ #### Defined in -[src/constants.ts:528](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L528) +[src/constants.ts:528](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L528) ___ @@ -30,7 +30,7 @@ ___ #### Defined in -[src/constants.ts:530](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L530) +[src/constants.ts:530](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L530) ___ @@ -40,4 +40,4 @@ ___ #### Defined in -[src/constants.ts:529](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L529) +[src/constants.ts:529](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L529) diff --git a/talawa-api-docs/interfaces/libraries_dbLogger.InterfaceLoggableDocument.md b/talawa-api-docs/interfaces/libraries_dbLogger.InterfaceLoggableDocument.md index 82c1d4fef7..a494e51f6f 100644 --- a/talawa-api-docs/interfaces/libraries_dbLogger.InterfaceLoggableDocument.md +++ b/talawa-api-docs/interfaces/libraries_dbLogger.InterfaceLoggableDocument.md @@ -263,7 +263,7 @@ ___ #### Defined in -[src/libraries/dbLogger.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/dbLogger.ts#L33) +[src/libraries/dbLogger.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/dbLogger.ts#L33) ___ diff --git a/talawa-api-docs/interfaces/libraries_dbLogger.InterfaceLoggableQuery.md b/talawa-api-docs/interfaces/libraries_dbLogger.InterfaceLoggableQuery.md index ce6aca8fb3..6987f2378f 100644 --- a/talawa-api-docs/interfaces/libraries_dbLogger.InterfaceLoggableQuery.md +++ b/talawa-api-docs/interfaces/libraries_dbLogger.InterfaceLoggableQuery.md @@ -184,7 +184,7 @@ ___ #### Defined in -[src/libraries/dbLogger.ts:37](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/dbLogger.ts#L37) +[src/libraries/dbLogger.ts:37](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/dbLogger.ts#L37) ___ diff --git a/talawa-api-docs/interfaces/libraries_errors_applicationError.InterfaceError.md b/talawa-api-docs/interfaces/libraries_errors_applicationError.InterfaceError.md index 91389445f2..a407270fd2 100644 --- a/talawa-api-docs/interfaces/libraries_errors_applicationError.InterfaceError.md +++ b/talawa-api-docs/interfaces/libraries_errors_applicationError.InterfaceError.md @@ -21,7 +21,7 @@ #### Defined in -[src/libraries/errors/applicationError.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L3) +[src/libraries/errors/applicationError.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L3) ___ @@ -31,7 +31,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:2](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L2) +[src/libraries/errors/applicationError.ts:2](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L2) ___ @@ -41,7 +41,7 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L5) +[src/libraries/errors/applicationError.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L5) ___ @@ -51,4 +51,4 @@ ___ #### Defined in -[src/libraries/errors/applicationError.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/errors/applicationError.ts#L4) +[src/libraries/errors/applicationError.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/errors/applicationError.ts#L4) diff --git a/talawa-api-docs/interfaces/middleware_isAuth.InterfaceAuthData.md b/talawa-api-docs/interfaces/middleware_isAuth.InterfaceAuthData.md index de2fb6f11b..34a4ad3321 100644 --- a/talawa-api-docs/interfaces/middleware_isAuth.InterfaceAuthData.md +++ b/talawa-api-docs/interfaces/middleware_isAuth.InterfaceAuthData.md @@ -20,7 +20,7 @@ #### Defined in -[src/middleware/isAuth.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/middleware/isAuth.ts#L9) +[src/middleware/isAuth.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/middleware/isAuth.ts#L9) ___ @@ -30,7 +30,7 @@ ___ #### Defined in -[src/middleware/isAuth.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/middleware/isAuth.ts#L8) +[src/middleware/isAuth.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/middleware/isAuth.ts#L8) ___ @@ -40,4 +40,4 @@ ___ #### Defined in -[src/middleware/isAuth.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/middleware/isAuth.ts#L10) +[src/middleware/isAuth.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/middleware/isAuth.ts#L10) diff --git a/talawa-api-docs/interfaces/models_ActionItem.InterfaceActionItem.md b/talawa-api-docs/interfaces/models_ActionItem.InterfaceActionItem.md index 07e5dc51dc..97c1ae092f 100644 --- a/talawa-api-docs/interfaces/models_ActionItem.InterfaceActionItem.md +++ b/talawa-api-docs/interfaces/models_ActionItem.InterfaceActionItem.md @@ -4,7 +4,7 @@ [models/ActionItem](../modules/models_ActionItem.md).InterfaceActionItem -This is an interface that represents a database(MongoDB) document for ActionItem. +This is an interface that represents a database(MongoDB) document for ActionItem [test check]. ## Table of contents @@ -33,7 +33,7 @@ This is an interface that represents a database(MongoDB) document for ActionItem #### Defined in -[src/models/ActionItem.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L13) +[src/models/ActionItem.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L13) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L16) +[src/models/ActionItem.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L16) ___ @@ -53,7 +53,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L14) +[src/models/ActionItem.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L14) ___ @@ -63,7 +63,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L15) +[src/models/ActionItem.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L15) ___ @@ -73,7 +73,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L19) +[src/models/ActionItem.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L19) ___ @@ -83,7 +83,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L21) +[src/models/ActionItem.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L21) ___ @@ -93,7 +93,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L25) +[src/models/ActionItem.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L25) ___ @@ -103,7 +103,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L24) +[src/models/ActionItem.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L24) ___ @@ -113,7 +113,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L20) +[src/models/ActionItem.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L20) ___ @@ -123,7 +123,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L23) +[src/models/ActionItem.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L23) ___ @@ -133,7 +133,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L22) +[src/models/ActionItem.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L22) ___ @@ -143,7 +143,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L18) +[src/models/ActionItem.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L18) ___ @@ -153,7 +153,7 @@ ___ #### Defined in -[src/models/ActionItem.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L17) +[src/models/ActionItem.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L17) ___ @@ -163,4 +163,4 @@ ___ #### Defined in -[src/models/ActionItem.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L26) +[src/models/ActionItem.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L26) diff --git a/talawa-api-docs/interfaces/models_ActionItemCategory.InterfaceActionItemCategory.md b/talawa-api-docs/interfaces/models_ActionItemCategory.InterfaceActionItemCategory.md index fba70b1cb3..03a4d7e9a6 100644 --- a/talawa-api-docs/interfaces/models_ActionItemCategory.InterfaceActionItemCategory.md +++ b/talawa-api-docs/interfaces/models_ActionItemCategory.InterfaceActionItemCategory.md @@ -26,7 +26,7 @@ This is an interface that represents a database(MongoDB) document for ActionItem #### Defined in -[src/models/ActionItemCategory.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItemCategory.ts#L11) +[src/models/ActionItemCategory.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItemCategory.ts#L11) ___ @@ -36,7 +36,7 @@ ___ #### Defined in -[src/models/ActionItemCategory.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItemCategory.ts#L16) +[src/models/ActionItemCategory.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItemCategory.ts#L16) ___ @@ -46,7 +46,7 @@ ___ #### Defined in -[src/models/ActionItemCategory.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItemCategory.ts#L15) +[src/models/ActionItemCategory.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItemCategory.ts#L15) ___ @@ -56,7 +56,7 @@ ___ #### Defined in -[src/models/ActionItemCategory.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItemCategory.ts#L14) +[src/models/ActionItemCategory.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItemCategory.ts#L14) ___ @@ -66,7 +66,7 @@ ___ #### Defined in -[src/models/ActionItemCategory.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItemCategory.ts#L12) +[src/models/ActionItemCategory.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItemCategory.ts#L12) ___ @@ -76,7 +76,7 @@ ___ #### Defined in -[src/models/ActionItemCategory.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItemCategory.ts#L13) +[src/models/ActionItemCategory.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItemCategory.ts#L13) ___ @@ -86,4 +86,4 @@ ___ #### Defined in -[src/models/ActionItemCategory.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItemCategory.ts#L17) +[src/models/ActionItemCategory.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItemCategory.ts#L17) diff --git a/talawa-api-docs/interfaces/models_Advertisement.InterfaceAdvertisement.md b/talawa-api-docs/interfaces/models_Advertisement.InterfaceAdvertisement.md index e8f29eb452..92b00c50ca 100644 --- a/talawa-api-docs/interfaces/models_Advertisement.InterfaceAdvertisement.md +++ b/talawa-api-docs/interfaces/models_Advertisement.InterfaceAdvertisement.md @@ -29,7 +29,7 @@ This is an interface that represents a database(MongoDB) document for Advertisem #### Defined in -[src/models/Advertisement.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L8) +[src/models/Advertisement.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L8) ___ @@ -39,7 +39,7 @@ ___ #### Defined in -[src/models/Advertisement.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L16) +[src/models/Advertisement.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L16) ___ @@ -49,7 +49,7 @@ ___ #### Defined in -[src/models/Advertisement.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L11) +[src/models/Advertisement.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L11) ___ @@ -59,7 +59,7 @@ ___ #### Defined in -[src/models/Advertisement.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L15) +[src/models/Advertisement.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L15) ___ @@ -69,7 +69,7 @@ ___ #### Defined in -[src/models/Advertisement.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L12) +[src/models/Advertisement.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L12) ___ @@ -79,7 +79,7 @@ ___ #### Defined in -[src/models/Advertisement.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L10) +[src/models/Advertisement.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L10) ___ @@ -89,7 +89,7 @@ ___ #### Defined in -[src/models/Advertisement.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L9) +[src/models/Advertisement.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L9) ___ @@ -99,7 +99,7 @@ ___ #### Defined in -[src/models/Advertisement.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L14) +[src/models/Advertisement.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L14) ___ @@ -109,7 +109,7 @@ ___ #### Defined in -[src/models/Advertisement.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L13) +[src/models/Advertisement.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L13) ___ @@ -119,4 +119,4 @@ ___ #### Defined in -[src/models/Advertisement.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L17) +[src/models/Advertisement.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L17) diff --git a/talawa-api-docs/interfaces/models_CheckIn.InterfaceCheckIn.md b/talawa-api-docs/interfaces/models_CheckIn.InterfaceCheckIn.md index 9f702fe2ee..ec446c8e8d 100644 --- a/talawa-api-docs/interfaces/models_CheckIn.InterfaceCheckIn.md +++ b/talawa-api-docs/interfaces/models_CheckIn.InterfaceCheckIn.md @@ -25,7 +25,7 @@ #### Defined in -[src/models/CheckIn.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L13) +[src/models/CheckIn.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L13) ___ @@ -35,7 +35,7 @@ ___ #### Defined in -[src/models/CheckIn.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L16) +[src/models/CheckIn.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L16) ___ @@ -45,7 +45,7 @@ ___ #### Defined in -[src/models/CheckIn.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L17) +[src/models/CheckIn.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L17) ___ @@ -55,7 +55,7 @@ ___ #### Defined in -[src/models/CheckIn.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L19) +[src/models/CheckIn.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L19) ___ @@ -65,7 +65,7 @@ ___ #### Defined in -[src/models/CheckIn.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L14) +[src/models/CheckIn.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L14) ___ @@ -75,7 +75,7 @@ ___ #### Defined in -[src/models/CheckIn.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L18) +[src/models/CheckIn.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L18) ___ @@ -85,7 +85,7 @@ ___ #### Defined in -[src/models/CheckIn.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L15) +[src/models/CheckIn.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L15) ___ @@ -95,4 +95,4 @@ ___ #### Defined in -[src/models/CheckIn.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L20) +[src/models/CheckIn.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L20) diff --git a/talawa-api-docs/interfaces/models_Comment.InterfaceComment.md b/talawa-api-docs/interfaces/models_Comment.InterfaceComment.md index 197bea95eb..3df8469907 100644 --- a/talawa-api-docs/interfaces/models_Comment.InterfaceComment.md +++ b/talawa-api-docs/interfaces/models_Comment.InterfaceComment.md @@ -28,7 +28,7 @@ This is an interface representing a document for a comment in the database(Mongo #### Defined in -[src/models/Comment.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L9) +[src/models/Comment.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L9) ___ @@ -38,7 +38,7 @@ ___ #### Defined in -[src/models/Comment.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L11) +[src/models/Comment.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L11) ___ @@ -48,7 +48,7 @@ ___ #### Defined in -[src/models/Comment.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L12) +[src/models/Comment.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L12) ___ @@ -58,7 +58,7 @@ ___ #### Defined in -[src/models/Comment.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L16) +[src/models/Comment.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L16) ___ @@ -68,7 +68,7 @@ ___ #### Defined in -[src/models/Comment.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L15) +[src/models/Comment.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L15) ___ @@ -78,7 +78,7 @@ ___ #### Defined in -[src/models/Comment.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L14) +[src/models/Comment.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L14) ___ @@ -88,7 +88,7 @@ ___ #### Defined in -[src/models/Comment.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L17) +[src/models/Comment.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L17) ___ @@ -98,7 +98,7 @@ ___ #### Defined in -[src/models/Comment.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L10) +[src/models/Comment.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L10) ___ @@ -108,4 +108,4 @@ ___ #### Defined in -[src/models/Comment.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L13) +[src/models/Comment.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L13) diff --git a/talawa-api-docs/interfaces/models_DirectChat.InterfaceDirectChat.md b/talawa-api-docs/interfaces/models_DirectChat.InterfaceDirectChat.md index 907ed81abf..b7c17ef884 100644 --- a/talawa-api-docs/interfaces/models_DirectChat.InterfaceDirectChat.md +++ b/talawa-api-docs/interfaces/models_DirectChat.InterfaceDirectChat.md @@ -27,7 +27,7 @@ This is an interface representing a document for direct chat in the database(Mon #### Defined in -[src/models/DirectChat.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L10) +[src/models/DirectChat.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L10) ___ @@ -37,7 +37,7 @@ ___ #### Defined in -[src/models/DirectChat.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L16) +[src/models/DirectChat.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L16) ___ @@ -47,7 +47,7 @@ ___ #### Defined in -[src/models/DirectChat.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L13) +[src/models/DirectChat.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L13) ___ @@ -57,7 +57,7 @@ ___ #### Defined in -[src/models/DirectChat.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L12) +[src/models/DirectChat.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L12) ___ @@ -67,7 +67,7 @@ ___ #### Defined in -[src/models/DirectChat.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L14) +[src/models/DirectChat.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L14) ___ @@ -77,7 +77,7 @@ ___ #### Defined in -[src/models/DirectChat.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L15) +[src/models/DirectChat.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L15) ___ @@ -87,7 +87,7 @@ ___ #### Defined in -[src/models/DirectChat.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L17) +[src/models/DirectChat.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L17) ___ @@ -97,4 +97,4 @@ ___ #### Defined in -[src/models/DirectChat.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L11) +[src/models/DirectChat.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L11) diff --git a/talawa-api-docs/interfaces/models_DirectChatMessage.InterfaceDirectChatMessage.md b/talawa-api-docs/interfaces/models_DirectChatMessage.InterfaceDirectChatMessage.md index 5f0ad45e63..568a2e906b 100644 --- a/talawa-api-docs/interfaces/models_DirectChatMessage.InterfaceDirectChatMessage.md +++ b/talawa-api-docs/interfaces/models_DirectChatMessage.InterfaceDirectChatMessage.md @@ -27,7 +27,7 @@ This is an interface representing a document for a direct chat message in the da #### Defined in -[src/models/DirectChatMessage.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L9) +[src/models/DirectChatMessage.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L9) ___ @@ -37,7 +37,7 @@ ___ #### Defined in -[src/models/DirectChatMessage.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L15) +[src/models/DirectChatMessage.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L15) ___ @@ -47,7 +47,7 @@ ___ #### Defined in -[src/models/DirectChatMessage.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L10) +[src/models/DirectChatMessage.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L10) ___ @@ -57,7 +57,7 @@ ___ #### Defined in -[src/models/DirectChatMessage.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L13) +[src/models/DirectChatMessage.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L13) ___ @@ -67,7 +67,7 @@ ___ #### Defined in -[src/models/DirectChatMessage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L12) +[src/models/DirectChatMessage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L12) ___ @@ -77,7 +77,7 @@ ___ #### Defined in -[src/models/DirectChatMessage.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L11) +[src/models/DirectChatMessage.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L11) ___ @@ -87,7 +87,7 @@ ___ #### Defined in -[src/models/DirectChatMessage.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L14) +[src/models/DirectChatMessage.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L14) ___ @@ -97,4 +97,4 @@ ___ #### Defined in -[src/models/DirectChatMessage.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L16) +[src/models/DirectChatMessage.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L16) diff --git a/talawa-api-docs/interfaces/models_Donation.InterfaceDonation.md b/talawa-api-docs/interfaces/models_Donation.InterfaceDonation.md index 486c9183b2..9514720253 100644 --- a/talawa-api-docs/interfaces/models_Donation.InterfaceDonation.md +++ b/talawa-api-docs/interfaces/models_Donation.InterfaceDonation.md @@ -27,7 +27,7 @@ This is an interface representing a document for a donation in the database(Mong #### Defined in -[src/models/Donation.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L12) +[src/models/Donation.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L12) ___ @@ -37,7 +37,7 @@ ___ #### Defined in -[src/models/Donation.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L13) +[src/models/Donation.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L13) ___ @@ -47,7 +47,7 @@ ___ #### Defined in -[src/models/Donation.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L9) +[src/models/Donation.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L9) ___ @@ -57,7 +57,7 @@ ___ #### Defined in -[src/models/Donation.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L11) +[src/models/Donation.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L11) ___ @@ -67,7 +67,7 @@ ___ #### Defined in -[src/models/Donation.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L8) +[src/models/Donation.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L8) ___ @@ -77,7 +77,7 @@ ___ #### Defined in -[src/models/Donation.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L10) +[src/models/Donation.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L10) ___ @@ -87,7 +87,7 @@ ___ #### Defined in -[src/models/Donation.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L14) +[src/models/Donation.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L14) ___ @@ -97,4 +97,4 @@ ___ #### Defined in -[src/models/Donation.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L7) +[src/models/Donation.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L7) diff --git a/talawa-api-docs/interfaces/models_EncodedImage.InterfaceEncodedImage.md b/talawa-api-docs/interfaces/models_EncodedImage.InterfaceEncodedImage.md index c6b19ef8e5..04add60178 100644 --- a/talawa-api-docs/interfaces/models_EncodedImage.InterfaceEncodedImage.md +++ b/talawa-api-docs/interfaces/models_EncodedImage.InterfaceEncodedImage.md @@ -23,7 +23,7 @@ This is an interface that represents a database(MongoDB) document for Encoded Im #### Defined in -[src/models/EncodedImage.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedImage.ts#L7) +[src/models/EncodedImage.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedImage.ts#L7) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/models/EncodedImage.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedImage.ts#L9) +[src/models/EncodedImage.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedImage.ts#L9) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/EncodedImage.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedImage.ts#L8) +[src/models/EncodedImage.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedImage.ts#L8) ___ @@ -53,4 +53,4 @@ ___ #### Defined in -[src/models/EncodedImage.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedImage.ts#L10) +[src/models/EncodedImage.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedImage.ts#L10) diff --git a/talawa-api-docs/interfaces/models_EncodedVideo.InterfaceEncodedVideo.md b/talawa-api-docs/interfaces/models_EncodedVideo.InterfaceEncodedVideo.md index f89845d21f..dcb40bfa72 100644 --- a/talawa-api-docs/interfaces/models_EncodedVideo.InterfaceEncodedVideo.md +++ b/talawa-api-docs/interfaces/models_EncodedVideo.InterfaceEncodedVideo.md @@ -23,7 +23,7 @@ This is an interface that represents a database(MongoDB) document for Encoded Vi #### Defined in -[src/models/EncodedVideo.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedVideo.ts#L7) +[src/models/EncodedVideo.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedVideo.ts#L7) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/models/EncodedVideo.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedVideo.ts#L9) +[src/models/EncodedVideo.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedVideo.ts#L9) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/EncodedVideo.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedVideo.ts#L8) +[src/models/EncodedVideo.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedVideo.ts#L8) ___ @@ -53,4 +53,4 @@ ___ #### Defined in -[src/models/EncodedVideo.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedVideo.ts#L10) +[src/models/EncodedVideo.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedVideo.ts#L10) diff --git a/talawa-api-docs/interfaces/models_Event.InterfaceEvent.md b/talawa-api-docs/interfaces/models_Event.InterfaceEvent.md index ff8be9d317..40a0610007 100644 --- a/talawa-api-docs/interfaces/models_Event.InterfaceEvent.md +++ b/talawa-api-docs/interfaces/models_Event.InterfaceEvent.md @@ -41,7 +41,7 @@ This is an interface representing a document for an event in the database(MongoD #### Defined in -[src/models/Event.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L10) +[src/models/Event.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L10) ___ @@ -51,7 +51,7 @@ ___ #### Defined in -[src/models/Event.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L27) +[src/models/Event.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L27) ___ @@ -61,7 +61,7 @@ ___ #### Defined in -[src/models/Event.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L18) +[src/models/Event.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L18) ___ @@ -71,7 +71,7 @@ ___ #### Defined in -[src/models/Event.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L13) +[src/models/Event.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L13) ___ @@ -81,7 +81,7 @@ ___ #### Defined in -[src/models/Event.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L30) +[src/models/Event.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L30) ___ @@ -91,7 +91,7 @@ ___ #### Defined in -[src/models/Event.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L26) +[src/models/Event.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L26) ___ @@ -101,7 +101,7 @@ ___ #### Defined in -[src/models/Event.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L12) +[src/models/Event.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L12) ___ @@ -111,7 +111,7 @@ ___ #### Defined in -[src/models/Event.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L20) +[src/models/Event.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L20) ___ @@ -121,7 +121,7 @@ ___ #### Defined in -[src/models/Event.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L22) +[src/models/Event.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L22) ___ @@ -131,7 +131,7 @@ ___ #### Defined in -[src/models/Event.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L24) +[src/models/Event.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L24) ___ @@ -141,7 +141,7 @@ ___ #### Defined in -[src/models/Event.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L25) +[src/models/Event.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L25) ___ @@ -151,7 +151,7 @@ ___ #### Defined in -[src/models/Event.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L15) +[src/models/Event.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L15) ___ @@ -161,7 +161,7 @@ ___ #### Defined in -[src/models/Event.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L14) +[src/models/Event.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L14) ___ @@ -171,7 +171,7 @@ ___ #### Defined in -[src/models/Event.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L16) +[src/models/Event.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L16) ___ @@ -181,7 +181,7 @@ ___ #### Defined in -[src/models/Event.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L28) +[src/models/Event.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L28) ___ @@ -191,7 +191,7 @@ ___ #### Defined in -[src/models/Event.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L23) +[src/models/Event.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L23) ___ @@ -201,7 +201,7 @@ ___ #### Defined in -[src/models/Event.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L17) +[src/models/Event.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L17) ___ @@ -211,7 +211,7 @@ ___ #### Defined in -[src/models/Event.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L19) +[src/models/Event.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L19) ___ @@ -221,7 +221,7 @@ ___ #### Defined in -[src/models/Event.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L21) +[src/models/Event.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L21) ___ @@ -231,7 +231,7 @@ ___ #### Defined in -[src/models/Event.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L29) +[src/models/Event.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L29) ___ @@ -241,7 +241,7 @@ ___ #### Defined in -[src/models/Event.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L11) +[src/models/Event.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L11) ___ @@ -251,4 +251,4 @@ ___ #### Defined in -[src/models/Event.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L31) +[src/models/Event.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L31) diff --git a/talawa-api-docs/interfaces/models_EventAttendee.InterfaceEventAttendee.md b/talawa-api-docs/interfaces/models_EventAttendee.InterfaceEventAttendee.md index e5dad7a996..e47862c134 100644 --- a/talawa-api-docs/interfaces/models_EventAttendee.InterfaceEventAttendee.md +++ b/talawa-api-docs/interfaces/models_EventAttendee.InterfaceEventAttendee.md @@ -21,7 +21,7 @@ #### Defined in -[src/models/EventAttendee.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EventAttendee.ts#L8) +[src/models/EventAttendee.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EventAttendee.ts#L8) ___ @@ -31,7 +31,7 @@ ___ #### Defined in -[src/models/EventAttendee.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EventAttendee.ts#L11) +[src/models/EventAttendee.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EventAttendee.ts#L11) ___ @@ -41,7 +41,7 @@ ___ #### Defined in -[src/models/EventAttendee.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EventAttendee.ts#L10) +[src/models/EventAttendee.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EventAttendee.ts#L10) ___ @@ -51,4 +51,4 @@ ___ #### Defined in -[src/models/EventAttendee.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EventAttendee.ts#L9) +[src/models/EventAttendee.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EventAttendee.ts#L9) diff --git a/talawa-api-docs/interfaces/models_Feedback.InterfaceFeedback.md b/talawa-api-docs/interfaces/models_Feedback.InterfaceFeedback.md index daf5a704ff..1490e2d603 100644 --- a/talawa-api-docs/interfaces/models_Feedback.InterfaceFeedback.md +++ b/talawa-api-docs/interfaces/models_Feedback.InterfaceFeedback.md @@ -23,7 +23,7 @@ #### Defined in -[src/models/Feedback.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Feedback.ts#L6) +[src/models/Feedback.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Feedback.ts#L6) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/models/Feedback.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Feedback.ts#L10) +[src/models/Feedback.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Feedback.ts#L10) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/Feedback.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Feedback.ts#L7) +[src/models/Feedback.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Feedback.ts#L7) ___ @@ -53,7 +53,7 @@ ___ #### Defined in -[src/models/Feedback.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Feedback.ts#L8) +[src/models/Feedback.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Feedback.ts#L8) ___ @@ -63,7 +63,7 @@ ___ #### Defined in -[src/models/Feedback.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Feedback.ts#L9) +[src/models/Feedback.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Feedback.ts#L9) ___ @@ -73,4 +73,4 @@ ___ #### Defined in -[src/models/Feedback.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Feedback.ts#L11) +[src/models/Feedback.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Feedback.ts#L11) diff --git a/talawa-api-docs/interfaces/models_File.InterfaceFile.md b/talawa-api-docs/interfaces/models_File.InterfaceFile.md index 93d061bc55..b09c17f415 100644 --- a/talawa-api-docs/interfaces/models_File.InterfaceFile.md +++ b/talawa-api-docs/interfaces/models_File.InterfaceFile.md @@ -28,7 +28,7 @@ This is an interface representing a document for a file in the database(MongoDB) #### Defined in -[src/models/File.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L8) +[src/models/File.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L8) ___ @@ -38,7 +38,7 @@ ___ #### Defined in -[src/models/File.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L13) +[src/models/File.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L13) ___ @@ -48,7 +48,7 @@ ___ #### Defined in -[src/models/File.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L15) +[src/models/File.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L15) ___ @@ -58,7 +58,7 @@ ___ #### Defined in -[src/models/File.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L9) +[src/models/File.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L9) ___ @@ -68,7 +68,7 @@ ___ #### Defined in -[src/models/File.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L12) +[src/models/File.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L12) ___ @@ -78,7 +78,7 @@ ___ #### Defined in -[src/models/File.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L11) +[src/models/File.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L11) ___ @@ -88,7 +88,7 @@ ___ #### Defined in -[src/models/File.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L14) +[src/models/File.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L14) ___ @@ -98,7 +98,7 @@ ___ #### Defined in -[src/models/File.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L16) +[src/models/File.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L16) ___ @@ -108,4 +108,4 @@ ___ #### Defined in -[src/models/File.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L10) +[src/models/File.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L10) diff --git a/talawa-api-docs/interfaces/models_Group.InterfaceGroup.md b/talawa-api-docs/interfaces/models_Group.InterfaceGroup.md index ccc900927f..70837e08d2 100644 --- a/talawa-api-docs/interfaces/models_Group.InterfaceGroup.md +++ b/talawa-api-docs/interfaces/models_Group.InterfaceGroup.md @@ -27,7 +27,7 @@ This is an interface representing a document for a group in the database(MongoDB #### Defined in -[src/models/Group.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L9) +[src/models/Group.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L9) ___ @@ -37,7 +37,7 @@ ___ #### Defined in -[src/models/Group.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L14) +[src/models/Group.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L14) ___ @@ -47,7 +47,7 @@ ___ #### Defined in -[src/models/Group.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L15) +[src/models/Group.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L15) ___ @@ -57,7 +57,7 @@ ___ #### Defined in -[src/models/Group.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L11) +[src/models/Group.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L11) ___ @@ -67,7 +67,7 @@ ___ #### Defined in -[src/models/Group.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L12) +[src/models/Group.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L12) ___ @@ -77,7 +77,7 @@ ___ #### Defined in -[src/models/Group.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L13) +[src/models/Group.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L13) ___ @@ -87,7 +87,7 @@ ___ #### Defined in -[src/models/Group.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L10) +[src/models/Group.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L10) ___ @@ -97,4 +97,4 @@ ___ #### Defined in -[src/models/Group.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L16) +[src/models/Group.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L16) diff --git a/talawa-api-docs/interfaces/models_GroupChat.InterfaceGroupChat.md b/talawa-api-docs/interfaces/models_GroupChat.InterfaceGroupChat.md index 92be1abe45..50e6f2bdb7 100644 --- a/talawa-api-docs/interfaces/models_GroupChat.InterfaceGroupChat.md +++ b/talawa-api-docs/interfaces/models_GroupChat.InterfaceGroupChat.md @@ -28,7 +28,7 @@ This is an interface representing a document for a group chat in the database(Mo #### Defined in -[src/models/GroupChat.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L10) +[src/models/GroupChat.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L10) ___ @@ -38,7 +38,7 @@ ___ #### Defined in -[src/models/GroupChat.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L15) +[src/models/GroupChat.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L15) ___ @@ -48,7 +48,7 @@ ___ #### Defined in -[src/models/GroupChat.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L14) +[src/models/GroupChat.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L14) ___ @@ -58,7 +58,7 @@ ___ #### Defined in -[src/models/GroupChat.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L13) +[src/models/GroupChat.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L13) ___ @@ -68,7 +68,7 @@ ___ #### Defined in -[src/models/GroupChat.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L17) +[src/models/GroupChat.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L17) ___ @@ -78,7 +78,7 @@ ___ #### Defined in -[src/models/GroupChat.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L18) +[src/models/GroupChat.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L18) ___ @@ -88,7 +88,7 @@ ___ #### Defined in -[src/models/GroupChat.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L11) +[src/models/GroupChat.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L11) ___ @@ -98,7 +98,7 @@ ___ #### Defined in -[src/models/GroupChat.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L16) +[src/models/GroupChat.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L16) ___ @@ -108,4 +108,4 @@ ___ #### Defined in -[src/models/GroupChat.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L12) +[src/models/GroupChat.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L12) diff --git a/talawa-api-docs/interfaces/models_GroupChatMessage.InterfaceGroupChatMessage.md b/talawa-api-docs/interfaces/models_GroupChatMessage.InterfaceGroupChatMessage.md index 9d7c688395..794c39a6d1 100644 --- a/talawa-api-docs/interfaces/models_GroupChatMessage.InterfaceGroupChatMessage.md +++ b/talawa-api-docs/interfaces/models_GroupChatMessage.InterfaceGroupChatMessage.md @@ -26,7 +26,7 @@ This is an interface that represents a database(MongoDB) document for Group Chat #### Defined in -[src/models/GroupChatMessage.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChatMessage.ts#L9) +[src/models/GroupChatMessage.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChatMessage.ts#L9) ___ @@ -36,7 +36,7 @@ ___ #### Defined in -[src/models/GroupChatMessage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChatMessage.ts#L12) +[src/models/GroupChatMessage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChatMessage.ts#L12) ___ @@ -46,7 +46,7 @@ ___ #### Defined in -[src/models/GroupChatMessage.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChatMessage.ts#L10) +[src/models/GroupChatMessage.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChatMessage.ts#L10) ___ @@ -56,7 +56,7 @@ ___ #### Defined in -[src/models/GroupChatMessage.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChatMessage.ts#L14) +[src/models/GroupChatMessage.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChatMessage.ts#L14) ___ @@ -66,7 +66,7 @@ ___ #### Defined in -[src/models/GroupChatMessage.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChatMessage.ts#L11) +[src/models/GroupChatMessage.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChatMessage.ts#L11) ___ @@ -76,7 +76,7 @@ ___ #### Defined in -[src/models/GroupChatMessage.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChatMessage.ts#L15) +[src/models/GroupChatMessage.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChatMessage.ts#L15) ___ @@ -86,4 +86,4 @@ ___ #### Defined in -[src/models/GroupChatMessage.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChatMessage.ts#L13) +[src/models/GroupChatMessage.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChatMessage.ts#L13) diff --git a/talawa-api-docs/interfaces/models_ImageHash.InterfaceImageHash.md b/talawa-api-docs/interfaces/models_ImageHash.InterfaceImageHash.md index b28c2e530c..c3f875bf30 100644 --- a/talawa-api-docs/interfaces/models_ImageHash.InterfaceImageHash.md +++ b/talawa-api-docs/interfaces/models_ImageHash.InterfaceImageHash.md @@ -24,7 +24,7 @@ This is an interface that represents a database(MongoDB) document for Image Hash #### Defined in -[src/models/ImageHash.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ImageHash.ts#L7) +[src/models/ImageHash.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ImageHash.ts#L7) ___ @@ -34,7 +34,7 @@ ___ #### Defined in -[src/models/ImageHash.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ImageHash.ts#L9) +[src/models/ImageHash.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ImageHash.ts#L9) ___ @@ -44,7 +44,7 @@ ___ #### Defined in -[src/models/ImageHash.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ImageHash.ts#L8) +[src/models/ImageHash.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ImageHash.ts#L8) ___ @@ -54,7 +54,7 @@ ___ #### Defined in -[src/models/ImageHash.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ImageHash.ts#L10) +[src/models/ImageHash.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ImageHash.ts#L10) ___ @@ -64,4 +64,4 @@ ___ #### Defined in -[src/models/ImageHash.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ImageHash.ts#L11) +[src/models/ImageHash.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ImageHash.ts#L11) diff --git a/talawa-api-docs/interfaces/models_Language.InterfaceLanguage.md b/talawa-api-docs/interfaces/models_Language.InterfaceLanguage.md index 47520a998c..4918830262 100644 --- a/talawa-api-docs/interfaces/models_Language.InterfaceLanguage.md +++ b/talawa-api-docs/interfaces/models_Language.InterfaceLanguage.md @@ -23,7 +23,7 @@ This is an interface that represents a database(MongoDB) document for Language. #### Defined in -[src/models/Language.ts:47](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L47) +[src/models/Language.ts:47](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L47) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/models/Language.ts:50](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L50) +[src/models/Language.ts:50](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L50) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/Language.ts:48](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L48) +[src/models/Language.ts:48](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L48) ___ @@ -53,4 +53,4 @@ ___ #### Defined in -[src/models/Language.ts:49](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L49) +[src/models/Language.ts:49](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L49) diff --git a/talawa-api-docs/interfaces/models_Language.InterfaceLanguageModel.md b/talawa-api-docs/interfaces/models_Language.InterfaceLanguageModel.md index 9f5a7c09d0..5da5a4f558 100644 --- a/talawa-api-docs/interfaces/models_Language.InterfaceLanguageModel.md +++ b/talawa-api-docs/interfaces/models_Language.InterfaceLanguageModel.md @@ -23,7 +23,7 @@ This is an interface that represents a database document. #### Defined in -[src/models/Language.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L10) +[src/models/Language.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L10) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/models/Language.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L7) +[src/models/Language.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L7) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/Language.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L8) +[src/models/Language.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L8) ___ @@ -53,4 +53,4 @@ ___ #### Defined in -[src/models/Language.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L9) +[src/models/Language.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L9) diff --git a/talawa-api-docs/interfaces/models_MembershipRequest.InterfaceMembershipRequest.md b/talawa-api-docs/interfaces/models_MembershipRequest.InterfaceMembershipRequest.md index b1f64e7f6b..1fb50ff134 100644 --- a/talawa-api-docs/interfaces/models_MembershipRequest.InterfaceMembershipRequest.md +++ b/talawa-api-docs/interfaces/models_MembershipRequest.InterfaceMembershipRequest.md @@ -23,7 +23,7 @@ This is an interface that represents a database(MongoDB) document for Membership #### Defined in -[src/models/MembershipRequest.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MembershipRequest.ts#L9) +[src/models/MembershipRequest.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MembershipRequest.ts#L9) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/models/MembershipRequest.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MembershipRequest.ts#L10) +[src/models/MembershipRequest.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MembershipRequest.ts#L10) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/MembershipRequest.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MembershipRequest.ts#L12) +[src/models/MembershipRequest.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MembershipRequest.ts#L12) ___ @@ -53,4 +53,4 @@ ___ #### Defined in -[src/models/MembershipRequest.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MembershipRequest.ts#L11) +[src/models/MembershipRequest.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MembershipRequest.ts#L11) diff --git a/talawa-api-docs/interfaces/models_Message.InterfaceMessage.md b/talawa-api-docs/interfaces/models_Message.InterfaceMessage.md index d4cd0365d7..f713245d74 100644 --- a/talawa-api-docs/interfaces/models_Message.InterfaceMessage.md +++ b/talawa-api-docs/interfaces/models_Message.InterfaceMessage.md @@ -28,7 +28,7 @@ This is an interface that represents a database(MongoDB) document for Message. #### Defined in -[src/models/Message.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L9) +[src/models/Message.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L9) ___ @@ -38,7 +38,7 @@ ___ #### Defined in -[src/models/Message.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L13) +[src/models/Message.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L13) ___ @@ -48,7 +48,7 @@ ___ #### Defined in -[src/models/Message.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L15) +[src/models/Message.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L15) ___ @@ -58,7 +58,7 @@ ___ #### Defined in -[src/models/Message.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L16) +[src/models/Message.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L16) ___ @@ -68,7 +68,7 @@ ___ #### Defined in -[src/models/Message.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L11) +[src/models/Message.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L11) ___ @@ -78,7 +78,7 @@ ___ #### Defined in -[src/models/Message.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L17) +[src/models/Message.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L17) ___ @@ -88,7 +88,7 @@ ___ #### Defined in -[src/models/Message.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L10) +[src/models/Message.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L10) ___ @@ -98,7 +98,7 @@ ___ #### Defined in -[src/models/Message.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L14) +[src/models/Message.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L14) ___ @@ -108,4 +108,4 @@ ___ #### Defined in -[src/models/Message.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L12) +[src/models/Message.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L12) diff --git a/talawa-api-docs/interfaces/models_MessageChat.InterfaceMessageChat.md b/talawa-api-docs/interfaces/models_MessageChat.InterfaceMessageChat.md index b68588492d..b906b3d3d0 100644 --- a/talawa-api-docs/interfaces/models_MessageChat.InterfaceMessageChat.md +++ b/talawa-api-docs/interfaces/models_MessageChat.InterfaceMessageChat.md @@ -26,7 +26,7 @@ This is an interface representing a document for a chat in the database(MongoDB) #### Defined in -[src/models/MessageChat.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MessageChat.ts#L8) +[src/models/MessageChat.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MessageChat.ts#L8) ___ @@ -36,7 +36,7 @@ ___ #### Defined in -[src/models/MessageChat.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MessageChat.ts#L13) +[src/models/MessageChat.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MessageChat.ts#L13) ___ @@ -46,7 +46,7 @@ ___ #### Defined in -[src/models/MessageChat.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MessageChat.ts#L10) +[src/models/MessageChat.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MessageChat.ts#L10) ___ @@ -56,7 +56,7 @@ ___ #### Defined in -[src/models/MessageChat.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MessageChat.ts#L9) +[src/models/MessageChat.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MessageChat.ts#L9) ___ @@ -66,7 +66,7 @@ ___ #### Defined in -[src/models/MessageChat.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MessageChat.ts#L12) +[src/models/MessageChat.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MessageChat.ts#L12) ___ @@ -76,7 +76,7 @@ ___ #### Defined in -[src/models/MessageChat.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MessageChat.ts#L11) +[src/models/MessageChat.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MessageChat.ts#L11) ___ @@ -86,4 +86,4 @@ ___ #### Defined in -[src/models/MessageChat.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MessageChat.ts#L14) +[src/models/MessageChat.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MessageChat.ts#L14) diff --git a/talawa-api-docs/interfaces/models_Organization.InterfaceOrganization.md b/talawa-api-docs/interfaces/models_Organization.InterfaceOrganization.md index a181f41c34..b6b1cb6bbb 100644 --- a/talawa-api-docs/interfaces/models_Organization.InterfaceOrganization.md +++ b/talawa-api-docs/interfaces/models_Organization.InterfaceOrganization.md @@ -39,7 +39,7 @@ This is an interface that represents a database(MongoDB) document for Organizati #### Defined in -[src/models/Organization.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L12) +[src/models/Organization.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L12) ___ @@ -62,7 +62,7 @@ ___ #### Defined in -[src/models/Organization.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L17) +[src/models/Organization.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L17) ___ @@ -72,7 +72,7 @@ ___ #### Defined in -[src/models/Organization.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L30) +[src/models/Organization.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L30) ___ @@ -82,7 +82,7 @@ ___ #### Defined in -[src/models/Organization.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L13) +[src/models/Organization.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L13) ___ @@ -92,7 +92,7 @@ ___ #### Defined in -[src/models/Organization.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L35) +[src/models/Organization.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L35) ___ @@ -102,7 +102,7 @@ ___ #### Defined in -[src/models/Organization.ts:37](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L37) +[src/models/Organization.ts:37](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L37) ___ @@ -112,7 +112,7 @@ ___ #### Defined in -[src/models/Organization.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L27) +[src/models/Organization.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L27) ___ @@ -122,7 +122,7 @@ ___ #### Defined in -[src/models/Organization.ts:36](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L36) +[src/models/Organization.ts:36](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L36) ___ @@ -132,7 +132,7 @@ ___ #### Defined in -[src/models/Organization.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L16) +[src/models/Organization.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L16) ___ @@ -142,7 +142,7 @@ ___ #### Defined in -[src/models/Organization.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L31) +[src/models/Organization.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L31) ___ @@ -152,7 +152,7 @@ ___ #### Defined in -[src/models/Organization.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L14) +[src/models/Organization.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L14) ___ @@ -162,7 +162,7 @@ ___ #### Defined in -[src/models/Organization.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L29) +[src/models/Organization.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L29) ___ @@ -172,7 +172,7 @@ ___ #### Defined in -[src/models/Organization.ts:34](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L34) +[src/models/Organization.ts:34](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L34) ___ @@ -182,7 +182,7 @@ ___ #### Defined in -[src/models/Organization.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L15) +[src/models/Organization.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L15) ___ @@ -192,7 +192,7 @@ ___ #### Defined in -[src/models/Organization.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L33) +[src/models/Organization.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L33) ___ @@ -202,7 +202,7 @@ ___ #### Defined in -[src/models/Organization.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L32) +[src/models/Organization.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L32) ___ @@ -212,7 +212,7 @@ ___ #### Defined in -[src/models/Organization.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L28) +[src/models/Organization.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L28) ___ @@ -222,7 +222,7 @@ ___ #### Defined in -[src/models/Organization.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L38) +[src/models/Organization.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L38) ___ @@ -232,7 +232,7 @@ ___ #### Defined in -[src/models/Organization.ts:39](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L39) +[src/models/Organization.ts:39](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L39) ___ @@ -242,4 +242,4 @@ ___ #### Defined in -[src/models/Organization.ts:40](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L40) +[src/models/Organization.ts:40](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L40) diff --git a/talawa-api-docs/interfaces/models_OrganizationCustomField.InterfaceOrganizationCustomField.md b/talawa-api-docs/interfaces/models_OrganizationCustomField.InterfaceOrganizationCustomField.md index fb06b98508..6a20d521a0 100644 --- a/talawa-api-docs/interfaces/models_OrganizationCustomField.InterfaceOrganizationCustomField.md +++ b/talawa-api-docs/interfaces/models_OrganizationCustomField.InterfaceOrganizationCustomField.md @@ -21,7 +21,7 @@ #### Defined in -[src/models/OrganizationCustomField.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationCustomField.ts#L5) +[src/models/OrganizationCustomField.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationCustomField.ts#L5) ___ @@ -31,7 +31,7 @@ ___ #### Defined in -[src/models/OrganizationCustomField.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationCustomField.ts#L8) +[src/models/OrganizationCustomField.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationCustomField.ts#L8) ___ @@ -41,7 +41,7 @@ ___ #### Defined in -[src/models/OrganizationCustomField.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationCustomField.ts#L6) +[src/models/OrganizationCustomField.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationCustomField.ts#L6) ___ @@ -51,4 +51,4 @@ ___ #### Defined in -[src/models/OrganizationCustomField.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationCustomField.ts#L7) +[src/models/OrganizationCustomField.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationCustomField.ts#L7) diff --git a/talawa-api-docs/interfaces/models_OrganizationTagUser.InterfaceOrganizationTagUser.md b/talawa-api-docs/interfaces/models_OrganizationTagUser.InterfaceOrganizationTagUser.md index 952e869df5..2e84bbb11a 100644 --- a/talawa-api-docs/interfaces/models_OrganizationTagUser.InterfaceOrganizationTagUser.md +++ b/talawa-api-docs/interfaces/models_OrganizationTagUser.InterfaceOrganizationTagUser.md @@ -21,7 +21,7 @@ #### Defined in -[src/models/OrganizationTagUser.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationTagUser.ts#L6) +[src/models/OrganizationTagUser.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationTagUser.ts#L6) ___ @@ -31,7 +31,7 @@ ___ #### Defined in -[src/models/OrganizationTagUser.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationTagUser.ts#L9) +[src/models/OrganizationTagUser.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationTagUser.ts#L9) ___ @@ -41,7 +41,7 @@ ___ #### Defined in -[src/models/OrganizationTagUser.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationTagUser.ts#L7) +[src/models/OrganizationTagUser.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationTagUser.ts#L7) ___ @@ -51,4 +51,4 @@ ___ #### Defined in -[src/models/OrganizationTagUser.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationTagUser.ts#L8) +[src/models/OrganizationTagUser.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationTagUser.ts#L8) diff --git a/talawa-api-docs/interfaces/models_Plugin.InterfacePlugin.md b/talawa-api-docs/interfaces/models_Plugin.InterfacePlugin.md index 4e7c0ccb36..f41d167809 100644 --- a/talawa-api-docs/interfaces/models_Plugin.InterfacePlugin.md +++ b/talawa-api-docs/interfaces/models_Plugin.InterfacePlugin.md @@ -24,7 +24,7 @@ This is an interface that represents a database(MongoDB) document for Plugin. #### Defined in -[src/models/Plugin.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Plugin.ts#L7) +[src/models/Plugin.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Plugin.ts#L7) ___ @@ -34,7 +34,7 @@ ___ #### Defined in -[src/models/Plugin.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Plugin.ts#L9) +[src/models/Plugin.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Plugin.ts#L9) ___ @@ -44,7 +44,7 @@ ___ #### Defined in -[src/models/Plugin.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Plugin.ts#L10) +[src/models/Plugin.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Plugin.ts#L10) ___ @@ -54,7 +54,7 @@ ___ #### Defined in -[src/models/Plugin.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Plugin.ts#L8) +[src/models/Plugin.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Plugin.ts#L8) ___ @@ -64,4 +64,4 @@ ___ #### Defined in -[src/models/Plugin.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Plugin.ts#L11) +[src/models/Plugin.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Plugin.ts#L11) diff --git a/talawa-api-docs/interfaces/models_PluginField.InterfacePluginField.md b/talawa-api-docs/interfaces/models_PluginField.InterfacePluginField.md index 68704e4196..8de68ac43f 100644 --- a/talawa-api-docs/interfaces/models_PluginField.InterfacePluginField.md +++ b/talawa-api-docs/interfaces/models_PluginField.InterfacePluginField.md @@ -24,7 +24,7 @@ This is an interface that represents a database(MongoDB) document for Plugin Fie #### Defined in -[src/models/PluginField.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/PluginField.ts#L7) +[src/models/PluginField.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/PluginField.ts#L7) ___ @@ -34,7 +34,7 @@ ___ #### Defined in -[src/models/PluginField.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/PluginField.ts#L11) +[src/models/PluginField.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/PluginField.ts#L11) ___ @@ -44,7 +44,7 @@ ___ #### Defined in -[src/models/PluginField.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/PluginField.ts#L8) +[src/models/PluginField.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/PluginField.ts#L8) ___ @@ -54,7 +54,7 @@ ___ #### Defined in -[src/models/PluginField.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/PluginField.ts#L10) +[src/models/PluginField.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/PluginField.ts#L10) ___ @@ -64,4 +64,4 @@ ___ #### Defined in -[src/models/PluginField.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/PluginField.ts#L9) +[src/models/PluginField.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/PluginField.ts#L9) diff --git a/talawa-api-docs/interfaces/models_Post.InterfacePost.md b/talawa-api-docs/interfaces/models_Post.InterfacePost.md index 73ace72e89..0a9c4e3480 100644 --- a/talawa-api-docs/interfaces/models_Post.InterfacePost.md +++ b/talawa-api-docs/interfaces/models_Post.InterfacePost.md @@ -33,7 +33,7 @@ This is an interface that represents a database(MongoDB) document for Post. #### Defined in -[src/models/Post.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L10) +[src/models/Post.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L10) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/Post.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L11) +[src/models/Post.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L11) ___ @@ -53,7 +53,7 @@ ___ #### Defined in -[src/models/Post.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L12) +[src/models/Post.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L12) ___ @@ -63,7 +63,7 @@ ___ #### Defined in -[src/models/Post.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L13) +[src/models/Post.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L13) ___ @@ -73,7 +73,7 @@ ___ #### Defined in -[src/models/Post.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L14) +[src/models/Post.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L14) ___ @@ -83,7 +83,7 @@ ___ #### Defined in -[src/models/Post.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L15) +[src/models/Post.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L15) ___ @@ -93,7 +93,7 @@ ___ #### Defined in -[src/models/Post.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L16) +[src/models/Post.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L16) ___ @@ -103,7 +103,7 @@ ___ #### Defined in -[src/models/Post.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L17) +[src/models/Post.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L17) ___ @@ -113,7 +113,7 @@ ___ #### Defined in -[src/models/Post.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L18) +[src/models/Post.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L18) ___ @@ -123,7 +123,7 @@ ___ #### Defined in -[src/models/Post.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L19) +[src/models/Post.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L19) ___ @@ -133,7 +133,7 @@ ___ #### Defined in -[src/models/Post.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L20) +[src/models/Post.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L20) ___ @@ -143,7 +143,7 @@ ___ #### Defined in -[src/models/Post.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L21) +[src/models/Post.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L21) ___ @@ -153,7 +153,7 @@ ___ #### Defined in -[src/models/Post.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L22) +[src/models/Post.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L22) ___ @@ -163,4 +163,4 @@ ___ #### Defined in -[src/models/Post.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L23) +[src/models/Post.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L23) diff --git a/talawa-api-docs/interfaces/models_SampleData.InterfaceSampleData.md b/talawa-api-docs/interfaces/models_SampleData.InterfaceSampleData.md index 23cc355cf9..c916e3d6dc 100644 --- a/talawa-api-docs/interfaces/models_SampleData.InterfaceSampleData.md +++ b/talawa-api-docs/interfaces/models_SampleData.InterfaceSampleData.md @@ -19,7 +19,7 @@ #### Defined in -[src/models/SampleData.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/SampleData.ts#L6) +[src/models/SampleData.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/SampleData.ts#L6) ___ @@ -29,4 +29,4 @@ ___ #### Defined in -[src/models/SampleData.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/SampleData.ts#L5) +[src/models/SampleData.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/SampleData.ts#L5) diff --git a/talawa-api-docs/interfaces/models_TagUser.InterfaceTagUser.md b/talawa-api-docs/interfaces/models_TagUser.InterfaceTagUser.md index 8cedaeb98b..36c8db370a 100644 --- a/talawa-api-docs/interfaces/models_TagUser.InterfaceTagUser.md +++ b/talawa-api-docs/interfaces/models_TagUser.InterfaceTagUser.md @@ -20,7 +20,7 @@ #### Defined in -[src/models/TagUser.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/TagUser.ts#L7) +[src/models/TagUser.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/TagUser.ts#L7) ___ @@ -30,7 +30,7 @@ ___ #### Defined in -[src/models/TagUser.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/TagUser.ts#L9) +[src/models/TagUser.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/TagUser.ts#L9) ___ @@ -40,4 +40,4 @@ ___ #### Defined in -[src/models/TagUser.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/TagUser.ts#L8) +[src/models/TagUser.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/TagUser.ts#L8) diff --git a/talawa-api-docs/interfaces/models_User.InterfaceUser.md b/talawa-api-docs/interfaces/models_User.InterfaceUser.md index 84735da5d5..8cf612f42a 100644 --- a/talawa-api-docs/interfaces/models_User.InterfaceUser.md +++ b/talawa-api-docs/interfaces/models_User.InterfaceUser.md @@ -49,7 +49,7 @@ This is an interface that represents a database(MongoDB) document for User. #### Defined in -[src/models/User.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L15) +[src/models/User.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L15) ___ @@ -72,7 +72,7 @@ ___ #### Defined in -[src/models/User.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L16) +[src/models/User.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L16) ___ @@ -82,7 +82,7 @@ ___ #### Defined in -[src/models/User.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L26) +[src/models/User.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L26) ___ @@ -92,7 +92,7 @@ ___ #### Defined in -[src/models/User.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L27) +[src/models/User.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L27) ___ @@ -102,7 +102,7 @@ ___ #### Defined in -[src/models/User.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L28) +[src/models/User.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L28) ___ @@ -112,7 +112,7 @@ ___ #### Defined in -[src/models/User.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L29) +[src/models/User.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L29) ___ @@ -122,7 +122,7 @@ ___ #### Defined in -[src/models/User.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L30) +[src/models/User.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L30) ___ @@ -132,7 +132,7 @@ ___ #### Defined in -[src/models/User.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L31) +[src/models/User.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L31) ___ @@ -142,7 +142,7 @@ ___ #### Defined in -[src/models/User.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L32) +[src/models/User.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L32) ___ @@ -152,7 +152,7 @@ ___ #### Defined in -[src/models/User.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L33) +[src/models/User.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L33) ___ @@ -162,7 +162,7 @@ ___ #### Defined in -[src/models/User.ts:34](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L34) +[src/models/User.ts:34](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L34) ___ @@ -172,7 +172,7 @@ ___ #### Defined in -[src/models/User.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L35) +[src/models/User.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L35) ___ @@ -182,7 +182,7 @@ ___ #### Defined in -[src/models/User.ts:36](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L36) +[src/models/User.ts:36](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L36) ___ @@ -192,7 +192,7 @@ ___ #### Defined in -[src/models/User.ts:37](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L37) +[src/models/User.ts:37](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L37) ___ @@ -202,7 +202,7 @@ ___ #### Defined in -[src/models/User.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L38) +[src/models/User.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L38) ___ @@ -212,7 +212,7 @@ ___ #### Defined in -[src/models/User.ts:39](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L39) +[src/models/User.ts:39](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L39) ___ @@ -222,7 +222,7 @@ ___ #### Defined in -[src/models/User.ts:40](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L40) +[src/models/User.ts:40](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L40) ___ @@ -232,7 +232,7 @@ ___ #### Defined in -[src/models/User.ts:41](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L41) +[src/models/User.ts:41](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L41) ___ @@ -242,7 +242,7 @@ ___ #### Defined in -[src/models/User.ts:42](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L42) +[src/models/User.ts:42](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L42) ___ @@ -252,7 +252,7 @@ ___ #### Defined in -[src/models/User.ts:43](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L43) +[src/models/User.ts:43](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L43) ___ @@ -262,7 +262,7 @@ ___ #### Defined in -[src/models/User.ts:44](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L44) +[src/models/User.ts:44](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L44) ___ @@ -272,7 +272,7 @@ ___ #### Defined in -[src/models/User.ts:45](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L45) +[src/models/User.ts:45](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L45) ___ @@ -290,7 +290,7 @@ ___ #### Defined in -[src/models/User.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L46) +[src/models/User.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L46) ___ @@ -300,7 +300,7 @@ ___ #### Defined in -[src/models/User.ts:51](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L51) +[src/models/User.ts:51](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L51) ___ @@ -310,7 +310,7 @@ ___ #### Defined in -[src/models/User.ts:52](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L52) +[src/models/User.ts:52](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L52) ___ @@ -320,7 +320,7 @@ ___ #### Defined in -[src/models/User.ts:53](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L53) +[src/models/User.ts:53](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L53) ___ @@ -330,7 +330,7 @@ ___ #### Defined in -[src/models/User.ts:54](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L54) +[src/models/User.ts:54](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L54) ___ @@ -340,7 +340,7 @@ ___ #### Defined in -[src/models/User.ts:55](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L55) +[src/models/User.ts:55](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L55) ___ @@ -350,7 +350,7 @@ ___ #### Defined in -[src/models/User.ts:56](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L56) +[src/models/User.ts:56](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L56) ___ @@ -360,4 +360,4 @@ ___ #### Defined in -[src/models/User.ts:57](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L57) +[src/models/User.ts:57](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L57) diff --git a/talawa-api-docs/interfaces/models_UserCustomData.InterfaceUserCustomData.md b/talawa-api-docs/interfaces/models_UserCustomData.InterfaceUserCustomData.md index a207fd1c75..242e4f7ab1 100644 --- a/talawa-api-docs/interfaces/models_UserCustomData.InterfaceUserCustomData.md +++ b/talawa-api-docs/interfaces/models_UserCustomData.InterfaceUserCustomData.md @@ -23,7 +23,7 @@ This is an interface representing a document for custom field in the database(Mo #### Defined in -[src/models/UserCustomData.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/UserCustomData.ts#L8) +[src/models/UserCustomData.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/UserCustomData.ts#L8) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/models/UserCustomData.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/UserCustomData.ts#L9) +[src/models/UserCustomData.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/UserCustomData.ts#L9) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/models/UserCustomData.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/UserCustomData.ts#L11) +[src/models/UserCustomData.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/UserCustomData.ts#L11) ___ @@ -53,4 +53,4 @@ ___ #### Defined in -[src/models/UserCustomData.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/UserCustomData.ts#L10) +[src/models/UserCustomData.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/UserCustomData.ts#L10) diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.AnyScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.AnyScalarConfig.md index 9ed91a914b..463a3285cf 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.AnyScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.AnyScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2394](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2394) +[src/types/generatedGraphQLTypes.ts:2394](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2394) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.CountryCodeScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.CountryCodeScalarConfig.md index 9ecfee9ad3..4d42c90fa4 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.CountryCodeScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.CountryCodeScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2449](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2449) +[src/types/generatedGraphQLTypes.ts:2449](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2449) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.DateScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.DateScalarConfig.md index fd86e17aef..5a09504e7e 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.DateScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.DateScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2453](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2453) +[src/types/generatedGraphQLTypes.ts:2453](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2453) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.DateTimeScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.DateTimeScalarConfig.md index b8363e50f3..6a1fdaeadb 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.DateTimeScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.DateTimeScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2457](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2457) +[src/types/generatedGraphQLTypes.ts:2457](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2457) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.EmailAddressScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.EmailAddressScalarConfig.md index e901f54946..b23d9cf5bd 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.EmailAddressScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.EmailAddressScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2501](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2501) +[src/types/generatedGraphQLTypes.ts:2501](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2501) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.JsonScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.JsonScalarConfig.md index 5e1620e6df..e11635de8f 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.JsonScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.JsonScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2600](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2600) +[src/types/generatedGraphQLTypes.ts:2600](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2600) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.LatitudeScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.LatitudeScalarConfig.md index 2f2092fb6c..27c96c82c4 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.LatitudeScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.LatitudeScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2621](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2621) +[src/types/generatedGraphQLTypes.ts:2621](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2621) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.LongitudeScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.LongitudeScalarConfig.md index 77b15c9cd1..eeb43410fa 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.LongitudeScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.LongitudeScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2625](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2625) +[src/types/generatedGraphQLTypes.ts:2625](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2625) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.PhoneNumberScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.PhoneNumberScalarConfig.md index 22b1b77d2e..cb53d76b6a 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.PhoneNumberScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.PhoneNumberScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2836](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2836) +[src/types/generatedGraphQLTypes.ts:2836](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2836) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.PositiveIntScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.PositiveIntScalarConfig.md index 0d32f07b86..54d5219b0d 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.PositiveIntScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.PositiveIntScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2857](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2857) +[src/types/generatedGraphQLTypes.ts:2857](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2857) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.SubscriptionResolverObject.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.SubscriptionResolverObject.md index eb7aa62107..47fd8f1be4 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.SubscriptionResolverObject.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.SubscriptionResolverObject.md @@ -28,7 +28,7 @@ #### Defined in -[src/types/generatedGraphQLTypes.ts:2014](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2014) +[src/types/generatedGraphQLTypes.ts:2014](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2014) ___ @@ -38,4 +38,4 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2013](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2013) +[src/types/generatedGraphQLTypes.ts:2013](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2013) diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.SubscriptionSubscriberObject.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.SubscriptionSubscriberObject.md index 8a6971f17e..fc29611064 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.SubscriptionSubscriberObject.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.SubscriptionSubscriberObject.md @@ -29,7 +29,7 @@ #### Defined in -[src/types/generatedGraphQLTypes.ts:2009](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2009) +[src/types/generatedGraphQLTypes.ts:2009](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2009) ___ @@ -39,4 +39,4 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2008](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2008) +[src/types/generatedGraphQLTypes.ts:2008](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2008) diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.TimeScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.TimeScalarConfig.md index e7330fa80b..c51b8b7a40 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.TimeScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.TimeScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2934](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2934) +[src/types/generatedGraphQLTypes.ts:2934](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2934) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.UploadScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.UploadScalarConfig.md index 218a42e2d2..a958128b8f 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.UploadScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.UploadScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2965](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2965) +[src/types/generatedGraphQLTypes.ts:2965](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2965) ___ diff --git a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.UrlScalarConfig.md b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.UrlScalarConfig.md index 3da160c040..6580b62896 100644 --- a/talawa-api-docs/interfaces/types_generatedGraphQLTypes.UrlScalarConfig.md +++ b/talawa-api-docs/interfaces/types_generatedGraphQLTypes.UrlScalarConfig.md @@ -92,7 +92,7 @@ GraphQLScalarTypeConfig.name #### Defined in -[src/types/generatedGraphQLTypes.ts:2946](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2946) +[src/types/generatedGraphQLTypes.ts:2946](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2946) ___ diff --git a/talawa-api-docs/interfaces/utilities_auth.InterfaceJwtTokenPayload.md b/talawa-api-docs/interfaces/utilities_auth.InterfaceJwtTokenPayload.md index e3cddf222f..3fd2b05606 100644 --- a/talawa-api-docs/interfaces/utilities_auth.InterfaceJwtTokenPayload.md +++ b/talawa-api-docs/interfaces/utilities_auth.InterfaceJwtTokenPayload.md @@ -22,7 +22,7 @@ #### Defined in -[src/utilities/auth.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/auth.ts#L11) +[src/utilities/auth.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/auth.ts#L11) ___ @@ -32,7 +32,7 @@ ___ #### Defined in -[src/utilities/auth.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/auth.ts#L9) +[src/utilities/auth.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/auth.ts#L9) ___ @@ -42,7 +42,7 @@ ___ #### Defined in -[src/utilities/auth.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/auth.ts#L10) +[src/utilities/auth.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/auth.ts#L10) ___ @@ -52,7 +52,7 @@ ___ #### Defined in -[src/utilities/auth.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/auth.ts#L7) +[src/utilities/auth.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/auth.ts#L7) ___ @@ -62,4 +62,4 @@ ___ #### Defined in -[src/utilities/auth.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/auth.ts#L8) +[src/utilities/auth.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/auth.ts#L8) diff --git a/talawa-api-docs/interfaces/utilities_mailer.InterfaceMailFields.md b/talawa-api-docs/interfaces/utilities_mailer.InterfaceMailFields.md index c8c2bc4d19..f5f4c9973f 100644 --- a/talawa-api-docs/interfaces/utilities_mailer.InterfaceMailFields.md +++ b/talawa-api-docs/interfaces/utilities_mailer.InterfaceMailFields.md @@ -20,7 +20,7 @@ #### Defined in -[src/utilities/mailer.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/mailer.ts#L14) +[src/utilities/mailer.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/mailer.ts#L14) ___ @@ -30,7 +30,7 @@ ___ #### Defined in -[src/utilities/mailer.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/mailer.ts#L12) +[src/utilities/mailer.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/mailer.ts#L12) ___ @@ -40,4 +40,4 @@ ___ #### Defined in -[src/utilities/mailer.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/mailer.ts#L13) +[src/utilities/mailer.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/mailer.ts#L13) diff --git a/talawa-api-docs/modules/app.md b/talawa-api-docs/modules/app.md index ce788cae12..10040668b7 100644 --- a/talawa-api-docs/modules/app.md +++ b/talawa-api-docs/modules/app.md @@ -30,7 +30,7 @@ third argument. #### Defined in -[src/app.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/app.ts#L15) +[src/app.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/app.ts#L15) ▸ **default**(`req`, `res`, `next`): `void` @@ -48,4 +48,4 @@ third argument. #### Defined in -[src/app.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/app.ts#L15) +[src/app.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/app.ts#L15) diff --git a/talawa-api-docs/modules/checks.md b/talawa-api-docs/modules/checks.md index fb9d916a11..84e11cdb9c 100644 --- a/talawa-api-docs/modules/checks.md +++ b/talawa-api-docs/modules/checks.md @@ -20,4 +20,4 @@ #### Defined in -[src/checks.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/checks.ts#L27) +[src/checks.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/checks.ts#L27) diff --git a/talawa-api-docs/modules/config_appConfig.md b/talawa-api-docs/modules/config_appConfig.md index b5f7eea7b2..b2bfab86cf 100644 --- a/talawa-api-docs/modules/config_appConfig.md +++ b/talawa-api-docs/modules/config_appConfig.md @@ -26,4 +26,4 @@ #### Defined in -[src/config/appConfig.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/config/appConfig.ts#L1) +[src/config/appConfig.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/config/appConfig.ts#L1) diff --git a/talawa-api-docs/modules/config_plugins_loadPlugins.md b/talawa-api-docs/modules/config_plugins_loadPlugins.md index 6efedbb6a0..7045b83189 100644 --- a/talawa-api-docs/modules/config_plugins_loadPlugins.md +++ b/talawa-api-docs/modules/config_plugins_loadPlugins.md @@ -20,4 +20,4 @@ #### Defined in -[src/config/plugins/loadPlugins.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/config/plugins/loadPlugins.ts#L7) +[src/config/plugins/loadPlugins.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/config/plugins/loadPlugins.ts#L7) diff --git a/talawa-api-docs/modules/constants.md b/talawa-api-docs/modules/constants.md index da55bd96e5..ca77106004 100644 --- a/talawa-api-docs/modules/constants.md +++ b/talawa-api-docs/modules/constants.md @@ -117,7 +117,7 @@ #### Defined in -[src/constants.ts:490](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L490) +[src/constants.ts:490](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L490) ___ @@ -136,7 +136,7 @@ ___ #### Defined in -[src/constants.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L24) +[src/constants.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L24) ___ @@ -155,7 +155,7 @@ ___ #### Defined in -[src/constants.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L17) +[src/constants.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L17) ___ @@ -174,7 +174,7 @@ ___ #### Defined in -[src/constants.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L10) +[src/constants.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L10) ___ @@ -192,7 +192,7 @@ ___ #### Defined in -[src/constants.ts:254](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L254) +[src/constants.ts:254](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L254) ___ @@ -210,7 +210,7 @@ ___ #### Defined in -[src/constants.ts:247](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L247) +[src/constants.ts:247](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L247) ___ @@ -228,7 +228,7 @@ ___ #### Defined in -[src/constants.ts:235](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L235) +[src/constants.ts:235](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L235) ___ @@ -246,7 +246,7 @@ ___ #### Defined in -[src/constants.ts:241](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L241) +[src/constants.ts:241](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L241) ___ @@ -265,7 +265,7 @@ ___ #### Defined in -[src/constants.ts:340](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L340) +[src/constants.ts:340](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L340) ___ @@ -275,7 +275,7 @@ ___ #### Defined in -[src/constants.ts:488](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L488) +[src/constants.ts:488](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L488) ___ @@ -294,7 +294,7 @@ ___ #### Defined in -[src/constants.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L31) +[src/constants.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L31) ___ @@ -313,7 +313,7 @@ ___ #### Defined in -[src/constants.ts:37](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L37) +[src/constants.ts:37](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L37) ___ @@ -331,7 +331,7 @@ ___ #### Defined in -[src/constants.ts:460](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L460) +[src/constants.ts:460](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L460) ___ @@ -349,7 +349,7 @@ ___ #### Defined in -[src/constants.ts:472](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L472) +[src/constants.ts:472](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L472) ___ @@ -367,7 +367,7 @@ ___ #### Defined in -[src/constants.ts:466](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L466) +[src/constants.ts:466](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L466) ___ @@ -385,7 +385,7 @@ ___ #### Defined in -[src/constants.ts:478](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L478) +[src/constants.ts:478](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L478) ___ @@ -404,7 +404,7 @@ ___ #### Defined in -[src/constants.ts:426](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L426) +[src/constants.ts:426](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L426) ___ @@ -422,7 +422,7 @@ ___ #### Defined in -[src/constants.ts:155](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L155) +[src/constants.ts:155](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L155) ___ @@ -432,7 +432,7 @@ ___ #### Defined in -[src/constants.ts:43](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L43) +[src/constants.ts:43](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L43) ___ @@ -451,7 +451,7 @@ ___ #### Defined in -[src/constants.ts:44](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L44) +[src/constants.ts:44](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L44) ___ @@ -469,7 +469,7 @@ ___ #### Defined in -[src/constants.ts:51](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L51) +[src/constants.ts:51](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L51) ___ @@ -487,7 +487,7 @@ ___ #### Defined in -[src/constants.ts:167](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L167) +[src/constants.ts:167](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L167) ___ @@ -505,7 +505,7 @@ ___ #### Defined in -[src/constants.ts:124](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L124) +[src/constants.ts:124](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L124) ___ @@ -523,7 +523,7 @@ ___ #### Defined in -[src/constants.ts:299](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L299) +[src/constants.ts:299](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L299) ___ @@ -541,7 +541,7 @@ ___ #### Defined in -[src/constants.ts:346](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L346) +[src/constants.ts:346](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L346) ___ @@ -559,7 +559,7 @@ ___ #### Defined in -[src/constants.ts:143](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L143) +[src/constants.ts:143](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L143) ___ @@ -578,7 +578,7 @@ ___ #### Defined in -[src/constants.ts:406](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L406) +[src/constants.ts:406](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L406) ___ @@ -596,7 +596,7 @@ ___ #### Defined in -[src/constants.ts:118](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L118) +[src/constants.ts:118](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L118) ___ @@ -606,7 +606,7 @@ ___ #### Defined in -[src/constants.ts:57](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L57) +[src/constants.ts:57](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L57) ___ @@ -625,7 +625,7 @@ ___ #### Defined in -[src/constants.ts:412](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L412) +[src/constants.ts:412](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L412) ___ @@ -644,7 +644,7 @@ ___ #### Defined in -[src/constants.ts:130](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L130) +[src/constants.ts:130](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L130) ___ @@ -662,7 +662,7 @@ ___ #### Defined in -[src/constants.ts:292](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L292) +[src/constants.ts:292](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L292) ___ @@ -672,7 +672,7 @@ ___ #### Defined in -[src/constants.ts:59](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L59) +[src/constants.ts:59](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L59) ___ @@ -682,7 +682,7 @@ ___ #### Defined in -[src/constants.ts:502](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L502) +[src/constants.ts:502](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L502) ___ @@ -700,7 +700,7 @@ ___ #### Defined in -[src/constants.ts:174](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L174) +[src/constants.ts:174](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L174) ___ @@ -710,7 +710,7 @@ ___ #### Defined in -[src/constants.ts:523](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L523) +[src/constants.ts:523](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L523) ___ @@ -720,7 +720,7 @@ ___ #### Defined in -[src/constants.ts:525](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L525) +[src/constants.ts:525](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L525) ___ @@ -730,7 +730,7 @@ ___ #### Defined in -[src/constants.ts:500](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L500) +[src/constants.ts:500](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L500) ___ @@ -740,7 +740,7 @@ ___ #### Defined in -[src/constants.ts:498](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L498) +[src/constants.ts:498](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L498) ___ @@ -750,7 +750,7 @@ ___ #### Defined in -[src/constants.ts:484](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L484) +[src/constants.ts:484](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L484) ___ @@ -760,7 +760,7 @@ ___ #### Defined in -[src/constants.ts:486](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L486) +[src/constants.ts:486](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L486) ___ @@ -770,7 +770,7 @@ ___ #### Defined in -[src/constants.ts:72](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L72) +[src/constants.ts:72](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L72) ___ @@ -789,7 +789,7 @@ ___ #### Defined in -[src/constants.ts:66](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L66) +[src/constants.ts:66](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L66) ___ @@ -808,7 +808,7 @@ ___ #### Defined in -[src/constants.ts:60](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L60) +[src/constants.ts:60](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L60) ___ @@ -818,7 +818,7 @@ ___ #### Defined in -[src/constants.ts:518](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L518) +[src/constants.ts:518](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L518) ___ @@ -828,7 +828,7 @@ ___ #### Defined in -[src/constants.ts:494](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L494) +[src/constants.ts:494](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L494) ___ @@ -846,7 +846,7 @@ ___ #### Defined in -[src/constants.ts:305](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L305) +[src/constants.ts:305](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L305) ___ @@ -865,7 +865,7 @@ ___ #### Defined in -[src/constants.ts:93](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L93) +[src/constants.ts:93](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L93) ___ @@ -884,7 +884,7 @@ ___ #### Defined in -[src/constants.ts:75](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L75) +[src/constants.ts:75](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L75) ___ @@ -903,7 +903,7 @@ ___ #### Defined in -[src/constants.ts:81](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L81) +[src/constants.ts:81](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L81) ___ @@ -922,7 +922,7 @@ ___ #### Defined in -[src/constants.ts:87](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L87) +[src/constants.ts:87](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L87) ___ @@ -940,7 +940,7 @@ ___ #### Defined in -[src/constants.ts:266](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L266) +[src/constants.ts:266](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L266) ___ @@ -959,7 +959,7 @@ ___ #### Defined in -[src/constants.ts:99](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L99) +[src/constants.ts:99](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L99) ___ @@ -977,7 +977,7 @@ ___ #### Defined in -[src/constants.ts:260](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L260) +[src/constants.ts:260](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L260) ___ @@ -996,7 +996,7 @@ ___ #### Defined in -[src/constants.ts:105](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L105) +[src/constants.ts:105](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L105) ___ @@ -1006,7 +1006,7 @@ ___ #### Defined in -[src/constants.ts:496](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L496) +[src/constants.ts:496](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L496) ___ @@ -1016,7 +1016,7 @@ ___ #### Defined in -[src/constants.ts:514](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L514) +[src/constants.ts:514](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L514) ___ @@ -1026,7 +1026,7 @@ ___ #### Defined in -[src/constants.ts:516](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L516) +[src/constants.ts:516](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L516) ___ @@ -1036,7 +1036,7 @@ ___ #### Defined in -[src/constants.ts:515](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L515) +[src/constants.ts:515](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L515) ___ @@ -1046,7 +1046,7 @@ ___ #### Defined in -[src/constants.ts:492](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L492) +[src/constants.ts:492](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L492) ___ @@ -1064,7 +1064,7 @@ ___ #### Defined in -[src/constants.ts:180](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L180) +[src/constants.ts:180](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L180) ___ @@ -1083,7 +1083,7 @@ ___ #### Defined in -[src/constants.ts:111](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L111) +[src/constants.ts:111](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L111) ___ @@ -1101,7 +1101,7 @@ ___ #### Defined in -[src/constants.ts:137](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L137) +[src/constants.ts:137](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L137) ___ @@ -1120,7 +1120,7 @@ ___ #### Defined in -[src/constants.ts:453](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L453) +[src/constants.ts:453](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L453) ___ @@ -1141,7 +1141,7 @@ ___ #### Defined in -[src/constants.ts:505](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L505) +[src/constants.ts:505](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L505) ___ @@ -1159,7 +1159,7 @@ ___ #### Defined in -[src/constants.ts:161](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L161) +[src/constants.ts:161](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L161) ___ @@ -1169,7 +1169,7 @@ ___ #### Defined in -[src/constants.ts:351](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L351) +[src/constants.ts:351](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L351) ___ @@ -1187,7 +1187,7 @@ ___ #### Defined in -[src/constants.ts:394](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L394) +[src/constants.ts:394](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L394) ___ @@ -1205,7 +1205,7 @@ ___ #### Defined in -[src/constants.ts:312](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L312) +[src/constants.ts:312](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L312) ___ @@ -1223,7 +1223,7 @@ ___ #### Defined in -[src/constants.ts:279](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L279) +[src/constants.ts:279](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L279) ___ @@ -1242,7 +1242,7 @@ ___ #### Defined in -[src/constants.ts:400](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L400) +[src/constants.ts:400](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L400) ___ @@ -1260,7 +1260,7 @@ ___ #### Defined in -[src/constants.ts:149](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L149) +[src/constants.ts:149](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L149) ___ @@ -1270,7 +1270,7 @@ ___ #### Defined in -[src/constants.ts:353](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L353) +[src/constants.ts:353](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L353) ___ @@ -1288,7 +1288,7 @@ ___ #### Defined in -[src/constants.ts:447](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L447) +[src/constants.ts:447](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L447) ___ @@ -1306,7 +1306,7 @@ ___ #### Defined in -[src/constants.ts:326](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L326) +[src/constants.ts:326](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L326) ___ @@ -1325,7 +1325,7 @@ ___ #### Defined in -[src/constants.ts:358](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L358) +[src/constants.ts:358](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L358) ___ @@ -1343,7 +1343,7 @@ ___ #### Defined in -[src/constants.ts:198](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L198) +[src/constants.ts:198](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L198) ___ @@ -1362,7 +1362,7 @@ ___ #### Defined in -[src/constants.ts:364](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L364) +[src/constants.ts:364](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L364) ___ @@ -1380,7 +1380,7 @@ ___ #### Defined in -[src/constants.ts:222](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L222) +[src/constants.ts:222](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L222) ___ @@ -1398,7 +1398,7 @@ ___ #### Defined in -[src/constants.ts:285](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L285) +[src/constants.ts:285](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L285) ___ @@ -1416,7 +1416,7 @@ ___ #### Defined in -[src/constants.ts:333](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L333) +[src/constants.ts:333](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L333) ___ @@ -1434,7 +1434,7 @@ ___ #### Defined in -[src/constants.ts:192](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L192) +[src/constants.ts:192](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L192) ___ @@ -1453,7 +1453,7 @@ ___ #### Defined in -[src/constants.ts:370](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L370) +[src/constants.ts:370](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L370) ___ @@ -1471,7 +1471,7 @@ ___ #### Defined in -[src/constants.ts:186](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L186) +[src/constants.ts:186](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L186) ___ @@ -1489,7 +1489,7 @@ ___ #### Defined in -[src/constants.ts:319](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L319) +[src/constants.ts:319](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L319) ___ @@ -1507,7 +1507,7 @@ ___ #### Defined in -[src/constants.ts:272](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L272) +[src/constants.ts:272](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L272) ___ @@ -1525,7 +1525,7 @@ ___ #### Defined in -[src/constants.ts:210](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L210) +[src/constants.ts:210](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L210) ___ @@ -1544,7 +1544,7 @@ ___ #### Defined in -[src/constants.ts:376](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L376) +[src/constants.ts:376](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L376) ___ @@ -1563,7 +1563,7 @@ ___ #### Defined in -[src/constants.ts:382](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L382) +[src/constants.ts:382](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L382) ___ @@ -1581,7 +1581,7 @@ ___ #### Defined in -[src/constants.ts:216](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L216) +[src/constants.ts:216](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L216) ___ @@ -1599,7 +1599,7 @@ ___ #### Defined in -[src/constants.ts:204](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L204) +[src/constants.ts:204](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L204) ___ @@ -1618,7 +1618,7 @@ ___ #### Defined in -[src/constants.ts:419](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L419) +[src/constants.ts:419](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L419) ___ @@ -1636,7 +1636,7 @@ ___ #### Defined in -[src/constants.ts:228](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L228) +[src/constants.ts:228](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L228) ___ @@ -1655,7 +1655,7 @@ ___ #### Defined in -[src/constants.ts:388](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L388) +[src/constants.ts:388](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L388) ___ @@ -1674,7 +1674,7 @@ ___ #### Defined in -[src/constants.ts:433](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L433) +[src/constants.ts:433](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L433) ___ @@ -1693,7 +1693,7 @@ ___ #### Defined in -[src/constants.ts:440](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L440) +[src/constants.ts:440](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L440) ___ @@ -1703,7 +1703,7 @@ ___ #### Defined in -[src/constants.ts:521](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L521) +[src/constants.ts:521](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L521) ___ @@ -1713,4 +1713,4 @@ ___ #### Defined in -[src/constants.ts:520](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/constants.ts#L520) +[src/constants.ts:520](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/constants.ts#L520) diff --git a/talawa-api-docs/modules/db.md b/talawa-api-docs/modules/db.md index a7046b3f30..a501da0016 100644 --- a/talawa-api-docs/modules/db.md +++ b/talawa-api-docs/modules/db.md @@ -21,7 +21,7 @@ #### Defined in -[src/db.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/db.ts#L5) +[src/db.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/db.ts#L5) ## Functions @@ -35,7 +35,7 @@ #### Defined in -[src/db.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/db.ts#L7) +[src/db.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/db.ts#L7) ___ @@ -49,4 +49,4 @@ ___ #### Defined in -[src/db.ts:50](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/db.ts#L50) +[src/db.ts:50](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/db.ts#L50) diff --git a/talawa-api-docs/modules/directives_directiveTransformer_authDirectiveTransformer.md b/talawa-api-docs/modules/directives_directiveTransformer_authDirectiveTransformer.md index 1060d55da6..0532b00421 100644 --- a/talawa-api-docs/modules/directives_directiveTransformer_authDirectiveTransformer.md +++ b/talawa-api-docs/modules/directives_directiveTransformer_authDirectiveTransformer.md @@ -27,4 +27,4 @@ #### Defined in -[src/directives/directiveTransformer/authDirectiveTransformer.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/directives/directiveTransformer/authDirectiveTransformer.ts#L6) +[src/directives/directiveTransformer/authDirectiveTransformer.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/directives/directiveTransformer/authDirectiveTransformer.ts#L6) diff --git a/talawa-api-docs/modules/directives_directiveTransformer_roleDirectiveTransformer.md b/talawa-api-docs/modules/directives_directiveTransformer_roleDirectiveTransformer.md index 67015ccd7d..393a57fbfd 100644 --- a/talawa-api-docs/modules/directives_directiveTransformer_roleDirectiveTransformer.md +++ b/talawa-api-docs/modules/directives_directiveTransformer_roleDirectiveTransformer.md @@ -27,4 +27,4 @@ #### Defined in -[src/directives/directiveTransformer/roleDirectiveTransformer.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/directives/directiveTransformer/roleDirectiveTransformer.ts#L11) +[src/directives/directiveTransformer/roleDirectiveTransformer.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/directives/directiveTransformer/roleDirectiveTransformer.ts#L11) diff --git a/talawa-api-docs/modules/env.md b/talawa-api-docs/modules/env.md index b4f96ee407..77b22ec410 100644 --- a/talawa-api-docs/modules/env.md +++ b/talawa-api-docs/modules/env.md @@ -20,7 +20,7 @@ #### Defined in -[src/env.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/env.ts#L3) +[src/env.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/env.ts#L3) ## Functions @@ -34,4 +34,4 @@ #### Defined in -[src/env.ts:36](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/env.ts#L36) +[src/env.ts:36](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/env.ts#L36) diff --git a/talawa-api-docs/modules/helpers_eventInstances_once.md b/talawa-api-docs/modules/helpers_eventInstances_once.md index b727f5eacb..d2606f5827 100644 --- a/talawa-api-docs/modules/helpers_eventInstances_once.md +++ b/talawa-api-docs/modules/helpers_eventInstances_once.md @@ -29,4 +29,4 @@ #### Defined in -[src/helpers/eventInstances/once.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/helpers/eventInstances/once.ts#L10) +[src/helpers/eventInstances/once.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/helpers/eventInstances/once.ts#L10) diff --git a/talawa-api-docs/modules/helpers_eventInstances_weekly.md b/talawa-api-docs/modules/helpers_eventInstances_weekly.md index 7a81d66bb0..0552480367 100644 --- a/talawa-api-docs/modules/helpers_eventInstances_weekly.md +++ b/talawa-api-docs/modules/helpers_eventInstances_weekly.md @@ -29,4 +29,4 @@ #### Defined in -[src/helpers/eventInstances/weekly.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/helpers/eventInstances/weekly.ts#L18) +[src/helpers/eventInstances/weekly.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/helpers/eventInstances/weekly.ts#L18) diff --git a/talawa-api-docs/modules/index.md b/talawa-api-docs/modules/index.md index 325800f2fc..00b35f9947 100644 --- a/talawa-api-docs/modules/index.md +++ b/talawa-api-docs/modules/index.md @@ -16,4 +16,4 @@ #### Defined in -[src/index.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/index.ts#L25) +[src/index.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/index.ts#L25) diff --git a/talawa-api-docs/modules/libraries_dbLogger.md b/talawa-api-docs/modules/libraries_dbLogger.md index c441d28449..6fe9d02355 100644 --- a/talawa-api-docs/modules/libraries_dbLogger.md +++ b/talawa-api-docs/modules/libraries_dbLogger.md @@ -39,7 +39,7 @@ #### Defined in -[src/libraries/dbLogger.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/dbLogger.ts#L5) +[src/libraries/dbLogger.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/dbLogger.ts#L5) ## Variables @@ -49,7 +49,7 @@ #### Defined in -[src/libraries/dbLogger.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/dbLogger.ts#L13) +[src/libraries/dbLogger.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/dbLogger.ts#L13) ## Functions @@ -76,4 +76,4 @@ #### Defined in -[src/libraries/dbLogger.ts:40](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/dbLogger.ts#L40) +[src/libraries/dbLogger.ts:40](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/dbLogger.ts#L40) diff --git a/talawa-api-docs/modules/libraries_logger.md b/talawa-api-docs/modules/libraries_logger.md index 842b425a7d..87d1d2bb60 100644 --- a/talawa-api-docs/modules/libraries_logger.md +++ b/talawa-api-docs/modules/libraries_logger.md @@ -17,7 +17,7 @@ #### Defined in -[src/libraries/logger.ts:48](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/logger.ts#L48) +[src/libraries/logger.ts:48](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/logger.ts#L48) ___ @@ -33,4 +33,4 @@ ___ #### Defined in -[src/libraries/logger.ts:61](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/logger.ts#L61) +[src/libraries/logger.ts:61](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/logger.ts#L61) diff --git a/talawa-api-docs/modules/libraries_requestContext.md b/talawa-api-docs/modules/libraries_requestContext.md index f5b01e7d93..6bbbdb2e9f 100644 --- a/talawa-api-docs/modules/libraries_requestContext.md +++ b/talawa-api-docs/modules/libraries_requestContext.md @@ -26,7 +26,7 @@ #### Defined in -[src/libraries/requestContext.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestContext.ts#L8) +[src/libraries/requestContext.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestContext.ts#L8) ## Functions @@ -52,7 +52,7 @@ #### Defined in -[src/libraries/requestContext.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestContext.ts#L19) +[src/libraries/requestContext.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestContext.ts#L19) ___ @@ -78,7 +78,7 @@ ___ #### Defined in -[src/libraries/requestContext.ts:45](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestContext.ts#L45) +[src/libraries/requestContext.ts:45](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestContext.ts#L45) ___ @@ -106,7 +106,7 @@ ___ #### Defined in -[src/libraries/requestContext.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestContext.ts#L28) +[src/libraries/requestContext.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestContext.ts#L28) ___ @@ -126,7 +126,7 @@ ___ #### Defined in -[src/libraries/requestContext.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestContext.ts#L23) +[src/libraries/requestContext.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestContext.ts#L23) ___ @@ -153,7 +153,7 @@ ___ #### Defined in -[src/libraries/requestContext.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestContext.ts#L14) +[src/libraries/requestContext.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestContext.ts#L14) ___ @@ -173,7 +173,7 @@ ___ #### Defined in -[src/libraries/requestContext.ts:62](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestContext.ts#L62) +[src/libraries/requestContext.ts:62](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestContext.ts#L62) ___ @@ -193,4 +193,4 @@ ___ #### Defined in -[src/libraries/requestContext.ts:71](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestContext.ts#L71) +[src/libraries/requestContext.ts:71](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestContext.ts#L71) diff --git a/talawa-api-docs/modules/libraries_requestTracing.md b/talawa-api-docs/modules/libraries_requestTracing.md index 88c3853c48..facc5f1c2f 100644 --- a/talawa-api-docs/modules/libraries_requestTracing.md +++ b/talawa-api-docs/modules/libraries_requestTracing.md @@ -24,7 +24,7 @@ #### Defined in -[src/libraries/requestTracing.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestTracing.ts#L17) +[src/libraries/requestTracing.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestTracing.ts#L17) ___ @@ -34,7 +34,7 @@ ___ #### Defined in -[src/libraries/requestTracing.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestTracing.ts#L21) +[src/libraries/requestTracing.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestTracing.ts#L21) ## Functions @@ -48,7 +48,7 @@ ___ #### Defined in -[src/libraries/requestTracing.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestTracing.ts#L29) +[src/libraries/requestTracing.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestTracing.ts#L29) ___ @@ -76,7 +76,7 @@ ___ #### Defined in -[src/libraries/requestTracing.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestTracing.ts#L33) +[src/libraries/requestTracing.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestTracing.ts#L33) ___ @@ -96,7 +96,7 @@ ___ #### Defined in -[src/libraries/requestTracing.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestTracing.ts#L25) +[src/libraries/requestTracing.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestTracing.ts#L25) ___ @@ -123,4 +123,4 @@ ___ #### Defined in -[src/libraries/requestTracing.ts:50](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/requestTracing.ts#L50) +[src/libraries/requestTracing.ts:50](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/requestTracing.ts#L50) diff --git a/talawa-api-docs/modules/libraries_validators_compareDates.md b/talawa-api-docs/modules/libraries_validators_compareDates.md index f062bd8f36..cdb317849b 100644 --- a/talawa-api-docs/modules/libraries_validators_compareDates.md +++ b/talawa-api-docs/modules/libraries_validators_compareDates.md @@ -27,4 +27,4 @@ #### Defined in -[src/libraries/validators/compareDates.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/validators/compareDates.ts#L1) +[src/libraries/validators/compareDates.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/validators/compareDates.ts#L1) diff --git a/talawa-api-docs/modules/libraries_validators_validatePaginationArgs.md b/talawa-api-docs/modules/libraries_validators_validatePaginationArgs.md index 8e8dc3cca6..db2d130a78 100644 --- a/talawa-api-docs/modules/libraries_validators_validatePaginationArgs.md +++ b/talawa-api-docs/modules/libraries_validators_validatePaginationArgs.md @@ -26,4 +26,4 @@ #### Defined in -[src/libraries/validators/validatePaginationArgs.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/validators/validatePaginationArgs.ts#L7) +[src/libraries/validators/validatePaginationArgs.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/validators/validatePaginationArgs.ts#L7) diff --git a/talawa-api-docs/modules/libraries_validators_validateString.md b/talawa-api-docs/modules/libraries_validators_validateString.md index 4e3de7300d..876ce191be 100644 --- a/talawa-api-docs/modules/libraries_validators_validateString.md +++ b/talawa-api-docs/modules/libraries_validators_validateString.md @@ -31,4 +31,4 @@ #### Defined in -[src/libraries/validators/validateString.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/libraries/validators/validateString.ts#L1) +[src/libraries/validators/validateString.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/libraries/validators/validateString.ts#L1) diff --git a/talawa-api-docs/modules/middleware_isAuth.md b/talawa-api-docs/modules/middleware_isAuth.md index 29c129cf27..35358a0eea 100644 --- a/talawa-api-docs/modules/middleware_isAuth.md +++ b/talawa-api-docs/modules/middleware_isAuth.md @@ -34,4 +34,4 @@ Returns `authData` object with `isAuth`, `expired` and `userId` properties. #### Defined in -[src/middleware/isAuth.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/middleware/isAuth.ts#L17) +[src/middleware/isAuth.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/middleware/isAuth.ts#L17) diff --git a/talawa-api-docs/modules/models_ActionItem.md b/talawa-api-docs/modules/models_ActionItem.md index e73abdcfb1..fdf34330da 100644 --- a/talawa-api-docs/modules/models_ActionItem.md +++ b/talawa-api-docs/modules/models_ActionItem.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/ActionItem.ts:106](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItem.ts#L106) +[src/models/ActionItem.ts:106](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItem.ts#L106) diff --git a/talawa-api-docs/modules/models_ActionItemCategory.md b/talawa-api-docs/modules/models_ActionItemCategory.md index aa27b1b279..9aaaca0117 100644 --- a/talawa-api-docs/modules/models_ActionItemCategory.md +++ b/talawa-api-docs/modules/models_ActionItemCategory.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/ActionItemCategory.ts:67](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ActionItemCategory.ts#L67) +[src/models/ActionItemCategory.ts:67](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ActionItemCategory.ts#L67) diff --git a/talawa-api-docs/modules/models_Advertisement.md b/talawa-api-docs/modules/models_Advertisement.md index d9ecab122e..e979dec7db 100644 --- a/talawa-api-docs/modules/models_Advertisement.md +++ b/talawa-api-docs/modules/models_Advertisement.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Advertisement.ts:106](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Advertisement.ts#L106) +[src/models/Advertisement.ts:106](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Advertisement.ts#L106) diff --git a/talawa-api-docs/modules/models_CheckIn.md b/talawa-api-docs/modules/models_CheckIn.md index 6d0fe69f6e..e00e93a04f 100644 --- a/talawa-api-docs/modules/models_CheckIn.md +++ b/talawa-api-docs/modules/models_CheckIn.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/CheckIn.ts:64](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/CheckIn.ts#L64) +[src/models/CheckIn.ts:64](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/CheckIn.ts#L64) diff --git a/talawa-api-docs/modules/models_Comment.md b/talawa-api-docs/modules/models_Comment.md index 9a15fa783a..045fd27b03 100644 --- a/talawa-api-docs/modules/models_Comment.md +++ b/talawa-api-docs/modules/models_Comment.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Comment.ts:72](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Comment.ts#L72) +[src/models/Comment.ts:72](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Comment.ts#L72) diff --git a/talawa-api-docs/modules/models_DirectChat.md b/talawa-api-docs/modules/models_DirectChat.md index 536743f787..2e1dc6ea33 100644 --- a/talawa-api-docs/modules/models_DirectChat.md +++ b/talawa-api-docs/modules/models_DirectChat.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/DirectChat.ts:70](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChat.ts#L70) +[src/models/DirectChat.ts:70](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChat.ts#L70) diff --git a/talawa-api-docs/modules/models_DirectChatMessage.md b/talawa-api-docs/modules/models_DirectChatMessage.md index c8149c7ae3..791486c851 100644 --- a/talawa-api-docs/modules/models_DirectChatMessage.md +++ b/talawa-api-docs/modules/models_DirectChatMessage.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/DirectChatMessage.ts:68](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/DirectChatMessage.ts#L68) +[src/models/DirectChatMessage.ts:68](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/DirectChatMessage.ts#L68) diff --git a/talawa-api-docs/modules/models_Donation.md b/talawa-api-docs/modules/models_Donation.md index dfafe50761..412b601072 100644 --- a/talawa-api-docs/modules/models_Donation.md +++ b/talawa-api-docs/modules/models_Donation.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Donation.ts:63](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Donation.ts#L63) +[src/models/Donation.ts:63](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Donation.ts#L63) diff --git a/talawa-api-docs/modules/models_EncodedImage.md b/talawa-api-docs/modules/models_EncodedImage.md index 49ea4c3935..b8b5f7f465 100644 --- a/talawa-api-docs/modules/models_EncodedImage.md +++ b/talawa-api-docs/modules/models_EncodedImage.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/EncodedImage.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedImage.ts#L38) +[src/models/EncodedImage.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedImage.ts#L38) diff --git a/talawa-api-docs/modules/models_EncodedVideo.md b/talawa-api-docs/modules/models_EncodedVideo.md index 7e8e2b8251..889311c9b7 100644 --- a/talawa-api-docs/modules/models_EncodedVideo.md +++ b/talawa-api-docs/modules/models_EncodedVideo.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/EncodedVideo.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EncodedVideo.ts#L38) +[src/models/EncodedVideo.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EncodedVideo.ts#L38) diff --git a/talawa-api-docs/modules/models_Event.md b/talawa-api-docs/modules/models_Event.md index db9283734c..fe43ec540f 100644 --- a/talawa-api-docs/modules/models_Event.md +++ b/talawa-api-docs/modules/models_Event.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Event.ts:168](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Event.ts#L168) +[src/models/Event.ts:168](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Event.ts#L168) diff --git a/talawa-api-docs/modules/models_EventAttendee.md b/talawa-api-docs/modules/models_EventAttendee.md index fe088bfd21..f042e62fa7 100644 --- a/talawa-api-docs/modules/models_EventAttendee.md +++ b/talawa-api-docs/modules/models_EventAttendee.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/EventAttendee.ts:39](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/EventAttendee.ts#L39) +[src/models/EventAttendee.ts:39](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/EventAttendee.ts#L39) diff --git a/talawa-api-docs/modules/models_Feedback.md b/talawa-api-docs/modules/models_Feedback.md index c2b7a743cc..60d12f0933 100644 --- a/talawa-api-docs/modules/models_Feedback.md +++ b/talawa-api-docs/modules/models_Feedback.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Feedback.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Feedback.ts#L46) +[src/models/Feedback.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Feedback.ts#L46) diff --git a/talawa-api-docs/modules/models_File.md b/talawa-api-docs/modules/models_File.md index 9a199ac208..fea104b085 100644 --- a/talawa-api-docs/modules/models_File.md +++ b/talawa-api-docs/modules/models_File.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/File.ts:65](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/File.ts#L65) +[src/models/File.ts:65](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/File.ts#L65) diff --git a/talawa-api-docs/modules/models_Group.md b/talawa-api-docs/modules/models_Group.md index 172b2e8d55..4f51359b76 100644 --- a/talawa-api-docs/modules/models_Group.md +++ b/talawa-api-docs/modules/models_Group.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Group.ts:64](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Group.ts#L64) +[src/models/Group.ts:64](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Group.ts#L64) diff --git a/talawa-api-docs/modules/models_GroupChat.md b/talawa-api-docs/modules/models_GroupChat.md index e59c727d26..0da7def65e 100644 --- a/talawa-api-docs/modules/models_GroupChat.md +++ b/talawa-api-docs/modules/models_GroupChat.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/GroupChat.ts:76](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChat.ts#L76) +[src/models/GroupChat.ts:76](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChat.ts#L76) diff --git a/talawa-api-docs/modules/models_GroupChatMessage.md b/talawa-api-docs/modules/models_GroupChatMessage.md index f0f26e6f62..e07c3dbcad 100644 --- a/talawa-api-docs/modules/models_GroupChatMessage.md +++ b/talawa-api-docs/modules/models_GroupChatMessage.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/GroupChatMessage.ts:58](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/GroupChatMessage.ts#L58) +[src/models/GroupChatMessage.ts:58](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/GroupChatMessage.ts#L58) diff --git a/talawa-api-docs/modules/models_ImageHash.md b/talawa-api-docs/modules/models_ImageHash.md index 1134659108..17bef65ab2 100644 --- a/talawa-api-docs/modules/models_ImageHash.md +++ b/talawa-api-docs/modules/models_ImageHash.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/ImageHash.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/ImageHash.ts#L46) +[src/models/ImageHash.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/ImageHash.ts#L46) diff --git a/talawa-api-docs/modules/models_Language.md b/talawa-api-docs/modules/models_Language.md index 9afdc4ea28..1115241227 100644 --- a/talawa-api-docs/modules/models_Language.md +++ b/talawa-api-docs/modules/models_Language.md @@ -21,4 +21,4 @@ #### Defined in -[src/models/Language.ts:77](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Language.ts#L77) +[src/models/Language.ts:77](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Language.ts#L77) diff --git a/talawa-api-docs/modules/models_MembershipRequest.md b/talawa-api-docs/modules/models_MembershipRequest.md index a86cb5bbc6..cd8cc2e8c1 100644 --- a/talawa-api-docs/modules/models_MembershipRequest.md +++ b/talawa-api-docs/modules/models_MembershipRequest.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/MembershipRequest.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MembershipRequest.ts#L46) +[src/models/MembershipRequest.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MembershipRequest.ts#L46) diff --git a/talawa-api-docs/modules/models_Message.md b/talawa-api-docs/modules/models_Message.md index fef54451f1..f3ff521423 100644 --- a/talawa-api-docs/modules/models_Message.md +++ b/talawa-api-docs/modules/models_Message.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Message.ts:70](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Message.ts#L70) +[src/models/Message.ts:70](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Message.ts#L70) diff --git a/talawa-api-docs/modules/models_MessageChat.md b/talawa-api-docs/modules/models_MessageChat.md index 08866c8251..96644204de 100644 --- a/talawa-api-docs/modules/models_MessageChat.md +++ b/talawa-api-docs/modules/models_MessageChat.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/MessageChat.ts:56](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/MessageChat.ts#L56) +[src/models/MessageChat.ts:56](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/MessageChat.ts#L56) diff --git a/talawa-api-docs/modules/models_Organization.md b/talawa-api-docs/modules/models_Organization.md index 2730d64172..38f0af2ef0 100644 --- a/talawa-api-docs/modules/models_Organization.md +++ b/talawa-api-docs/modules/models_Organization.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Organization.ts:184](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Organization.ts#L184) +[src/models/Organization.ts:184](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Organization.ts#L184) diff --git a/talawa-api-docs/modules/models_OrganizationCustomField.md b/talawa-api-docs/modules/models_OrganizationCustomField.md index b64f49743d..3ff0b8749c 100644 --- a/talawa-api-docs/modules/models_OrganizationCustomField.md +++ b/talawa-api-docs/modules/models_OrganizationCustomField.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/OrganizationCustomField.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationCustomField.ts#L29) +[src/models/OrganizationCustomField.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationCustomField.ts#L29) diff --git a/talawa-api-docs/modules/models_OrganizationTagUser.md b/talawa-api-docs/modules/models_OrganizationTagUser.md index 5cf4db8631..0a35d6dd46 100644 --- a/talawa-api-docs/modules/models_OrganizationTagUser.md +++ b/talawa-api-docs/modules/models_OrganizationTagUser.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/OrganizationTagUser.ts:45](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/OrganizationTagUser.ts#L45) +[src/models/OrganizationTagUser.ts:45](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/OrganizationTagUser.ts#L45) diff --git a/talawa-api-docs/modules/models_Plugin.md b/talawa-api-docs/modules/models_Plugin.md index f1c74ee2c5..ab77c33107 100644 --- a/talawa-api-docs/modules/models_Plugin.md +++ b/talawa-api-docs/modules/models_Plugin.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Plugin.ts:47](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Plugin.ts#L47) +[src/models/Plugin.ts:47](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Plugin.ts#L47) diff --git a/talawa-api-docs/modules/models_PluginField.md b/talawa-api-docs/modules/models_PluginField.md index 660a7c2090..d8b5b4e5b2 100644 --- a/talawa-api-docs/modules/models_PluginField.md +++ b/talawa-api-docs/modules/models_PluginField.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/PluginField.ts:45](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/PluginField.ts#L45) +[src/models/PluginField.ts:45](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/PluginField.ts#L45) diff --git a/talawa-api-docs/modules/models_Post.md b/talawa-api-docs/modules/models_Post.md index 7ea0a6b701..a6a6fb3046 100644 --- a/talawa-api-docs/modules/models_Post.md +++ b/talawa-api-docs/modules/models_Post.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/Post.ts:106](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/Post.ts#L106) +[src/models/Post.ts:106](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/Post.ts#L106) diff --git a/talawa-api-docs/modules/models_SampleData.md b/talawa-api-docs/modules/models_SampleData.md index 4769ea7c2f..123e588ae5 100644 --- a/talawa-api-docs/modules/models_SampleData.md +++ b/talawa-api-docs/modules/models_SampleData.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/SampleData.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/SampleData.ts#L24) +[src/models/SampleData.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/SampleData.ts#L24) diff --git a/talawa-api-docs/modules/models_TagUser.md b/talawa-api-docs/modules/models_TagUser.md index 60635a6005..1177d9ef7f 100644 --- a/talawa-api-docs/modules/models_TagUser.md +++ b/talawa-api-docs/modules/models_TagUser.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/TagUser.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/TagUser.ts#L32) +[src/models/TagUser.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/TagUser.ts#L32) diff --git a/talawa-api-docs/modules/models_User.md b/talawa-api-docs/modules/models_User.md index 80ed328dff..2d36e1dc12 100644 --- a/talawa-api-docs/modules/models_User.md +++ b/talawa-api-docs/modules/models_User.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/User.ts:292](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/User.ts#L292) +[src/models/User.ts:292](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/User.ts#L292) diff --git a/talawa-api-docs/modules/models_UserCustomData.md b/talawa-api-docs/modules/models_UserCustomData.md index 8a0e5255f6..8e38ab60ac 100644 --- a/talawa-api-docs/modules/models_UserCustomData.md +++ b/talawa-api-docs/modules/models_UserCustomData.md @@ -20,4 +20,4 @@ #### Defined in -[src/models/UserCustomData.ts:43](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/models/UserCustomData.ts#L43) +[src/models/UserCustomData.ts:43](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/models/UserCustomData.ts#L43) diff --git a/talawa-api-docs/modules/resolvers.md b/talawa-api-docs/modules/resolvers.md index 621a3f0b23..4e3c4f84ff 100644 --- a/talawa-api-docs/modules/resolvers.md +++ b/talawa-api-docs/modules/resolvers.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/index.ts:92](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/index.ts#L92) +[src/resolvers/index.ts:92](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/index.ts#L92) diff --git a/talawa-api-docs/modules/resolvers_ActionItem.md b/talawa-api-docs/modules/resolvers_ActionItem.md index c1d209294d..ea177a1661 100644 --- a/talawa-api-docs/modules/resolvers_ActionItem.md +++ b/talawa-api-docs/modules/resolvers_ActionItem.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItem/index.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItem/index.ts#L8) +[src/resolvers/ActionItem/index.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItem/index.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_ActionItemCategory.md b/talawa-api-docs/modules/resolvers_ActionItemCategory.md index e70b3a815d..542b79f898 100644 --- a/talawa-api-docs/modules/resolvers_ActionItemCategory.md +++ b/talawa-api-docs/modules/resolvers_ActionItemCategory.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItemCategory/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItemCategory/index.ts#L5) +[src/resolvers/ActionItemCategory/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItemCategory/index.ts#L5) diff --git a/talawa-api-docs/modules/resolvers_ActionItemCategory_creator.md b/talawa-api-docs/modules/resolvers_ActionItemCategory_creator.md index a18eeac528..0fabfdda69 100644 --- a/talawa-api-docs/modules/resolvers_ActionItemCategory_creator.md +++ b/talawa-api-docs/modules/resolvers_ActionItemCategory_creator.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItemCategory/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItemCategory/creator.ts#L4) +[src/resolvers/ActionItemCategory/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItemCategory/creator.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_ActionItemCategory_organization.md b/talawa-api-docs/modules/resolvers_ActionItemCategory_organization.md index ddf0631cbb..a513bfaf43 100644 --- a/talawa-api-docs/modules/resolvers_ActionItemCategory_organization.md +++ b/talawa-api-docs/modules/resolvers_ActionItemCategory_organization.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItemCategory/organization.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItemCategory/organization.ts#L4) +[src/resolvers/ActionItemCategory/organization.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItemCategory/organization.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_ActionItem_actionItemCategory.md b/talawa-api-docs/modules/resolvers_ActionItem_actionItemCategory.md index 019dcdbbf2..fc41d2a9bd 100644 --- a/talawa-api-docs/modules/resolvers_ActionItem_actionItemCategory.md +++ b/talawa-api-docs/modules/resolvers_ActionItem_actionItemCategory.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItem/actionItemCategory.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItem/actionItemCategory.ts#L4) +[src/resolvers/ActionItem/actionItemCategory.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItem/actionItemCategory.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_ActionItem_assignee.md b/talawa-api-docs/modules/resolvers_ActionItem_assignee.md index b64bc27eb1..7c00ae6d5d 100644 --- a/talawa-api-docs/modules/resolvers_ActionItem_assignee.md +++ b/talawa-api-docs/modules/resolvers_ActionItem_assignee.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItem/assignee.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItem/assignee.ts#L4) +[src/resolvers/ActionItem/assignee.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItem/assignee.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_ActionItem_assigner.md b/talawa-api-docs/modules/resolvers_ActionItem_assigner.md index 8c3c5430f7..7fe7b8fd16 100644 --- a/talawa-api-docs/modules/resolvers_ActionItem_assigner.md +++ b/talawa-api-docs/modules/resolvers_ActionItem_assigner.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItem/assigner.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItem/assigner.ts#L4) +[src/resolvers/ActionItem/assigner.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItem/assigner.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_ActionItem_creator.md b/talawa-api-docs/modules/resolvers_ActionItem_creator.md index 662e03cfab..e00e481d9b 100644 --- a/talawa-api-docs/modules/resolvers_ActionItem_creator.md +++ b/talawa-api-docs/modules/resolvers_ActionItem_creator.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItem/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItem/creator.ts#L4) +[src/resolvers/ActionItem/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItem/creator.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_ActionItem_event.md b/talawa-api-docs/modules/resolvers_ActionItem_event.md index de22193ba1..a6b7b9b408 100644 --- a/talawa-api-docs/modules/resolvers_ActionItem_event.md +++ b/talawa-api-docs/modules/resolvers_ActionItem_event.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/ActionItem/event.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/ActionItem/event.ts#L4) +[src/resolvers/ActionItem/event.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/ActionItem/event.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_CheckIn.md b/talawa-api-docs/modules/resolvers_CheckIn.md index b889c28dae..7c443b60fc 100644 --- a/talawa-api-docs/modules/resolvers_CheckIn.md +++ b/talawa-api-docs/modules/resolvers_CheckIn.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/CheckIn/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/CheckIn/index.ts#L5) +[src/resolvers/CheckIn/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/CheckIn/index.ts#L5) diff --git a/talawa-api-docs/modules/resolvers_CheckIn_event.md b/talawa-api-docs/modules/resolvers_CheckIn_event.md index f138f2c210..8c827de4c1 100644 --- a/talawa-api-docs/modules/resolvers_CheckIn_event.md +++ b/talawa-api-docs/modules/resolvers_CheckIn_event.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/CheckIn/event.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/CheckIn/event.ts#L4) +[src/resolvers/CheckIn/event.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/CheckIn/event.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_CheckIn_user.md b/talawa-api-docs/modules/resolvers_CheckIn_user.md index fb68e8d786..66e0d7963a 100644 --- a/talawa-api-docs/modules/resolvers_CheckIn_user.md +++ b/talawa-api-docs/modules/resolvers_CheckIn_user.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/CheckIn/user.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/CheckIn/user.ts#L4) +[src/resolvers/CheckIn/user.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/CheckIn/user.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Comment.md b/talawa-api-docs/modules/resolvers_Comment.md index 1f5e5ac58b..a9d969aa7c 100644 --- a/talawa-api-docs/modules/resolvers_Comment.md +++ b/talawa-api-docs/modules/resolvers_Comment.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Comment/index.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Comment/index.ts#L4) +[src/resolvers/Comment/index.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Comment/index.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Comment_creator.md b/talawa-api-docs/modules/resolvers_Comment_creator.md index 252aca6da1..a4feca0251 100644 --- a/talawa-api-docs/modules/resolvers_Comment_creator.md +++ b/talawa-api-docs/modules/resolvers_Comment_creator.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Comment/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Comment/creator.ts#L4) +[src/resolvers/Comment/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Comment/creator.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_DirectChat.md b/talawa-api-docs/modules/resolvers_DirectChat.md index 54d62063a3..bf64f0a72e 100644 --- a/talawa-api-docs/modules/resolvers_DirectChat.md +++ b/talawa-api-docs/modules/resolvers_DirectChat.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/DirectChat/index.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChat/index.ts#L7) +[src/resolvers/DirectChat/index.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChat/index.ts#L7) diff --git a/talawa-api-docs/modules/resolvers_DirectChatMessage.md b/talawa-api-docs/modules/resolvers_DirectChatMessage.md index 0788541f15..cbedeb7a52 100644 --- a/talawa-api-docs/modules/resolvers_DirectChatMessage.md +++ b/talawa-api-docs/modules/resolvers_DirectChatMessage.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/DirectChatMessage/index.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChatMessage/index.ts#L6) +[src/resolvers/DirectChatMessage/index.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChatMessage/index.ts#L6) diff --git a/talawa-api-docs/modules/resolvers_DirectChatMessage_directChatMessageBelongsTo.md b/talawa-api-docs/modules/resolvers_DirectChatMessage_directChatMessageBelongsTo.md index dcbd45b702..fbde7c6ba5 100644 --- a/talawa-api-docs/modules/resolvers_DirectChatMessage_directChatMessageBelongsTo.md +++ b/talawa-api-docs/modules/resolvers_DirectChatMessage_directChatMessageBelongsTo.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/DirectChatMessage/directChatMessageBelongsTo.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChatMessage/directChatMessageBelongsTo.ts#L8) +[src/resolvers/DirectChatMessage/directChatMessageBelongsTo.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChatMessage/directChatMessageBelongsTo.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_DirectChatMessage_receiver.md b/talawa-api-docs/modules/resolvers_DirectChatMessage_receiver.md index a81f4aa3fd..44c419e942 100644 --- a/talawa-api-docs/modules/resolvers_DirectChatMessage_receiver.md +++ b/talawa-api-docs/modules/resolvers_DirectChatMessage_receiver.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/DirectChatMessage/receiver.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChatMessage/receiver.ts#L8) +[src/resolvers/DirectChatMessage/receiver.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChatMessage/receiver.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_DirectChatMessage_sender.md b/talawa-api-docs/modules/resolvers_DirectChatMessage_sender.md index 74268e1695..ad8e088a52 100644 --- a/talawa-api-docs/modules/resolvers_DirectChatMessage_sender.md +++ b/talawa-api-docs/modules/resolvers_DirectChatMessage_sender.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/DirectChatMessage/sender.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChatMessage/sender.ts#L8) +[src/resolvers/DirectChatMessage/sender.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChatMessage/sender.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_DirectChat_creator.md b/talawa-api-docs/modules/resolvers_DirectChat_creator.md index a1ea3eac70..8a11d3e5e7 100644 --- a/talawa-api-docs/modules/resolvers_DirectChat_creator.md +++ b/talawa-api-docs/modules/resolvers_DirectChat_creator.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/DirectChat/creator.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChat/creator.ts#L8) +[src/resolvers/DirectChat/creator.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChat/creator.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_DirectChat_messages.md b/talawa-api-docs/modules/resolvers_DirectChat_messages.md index db41315487..3e1e6731b1 100644 --- a/talawa-api-docs/modules/resolvers_DirectChat_messages.md +++ b/talawa-api-docs/modules/resolvers_DirectChat_messages.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/DirectChat/messages.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChat/messages.ts#L8) +[src/resolvers/DirectChat/messages.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChat/messages.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_DirectChat_organization.md b/talawa-api-docs/modules/resolvers_DirectChat_organization.md index 19d3fb012e..df294b787a 100644 --- a/talawa-api-docs/modules/resolvers_DirectChat_organization.md +++ b/talawa-api-docs/modules/resolvers_DirectChat_organization.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/DirectChat/organization.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChat/organization.ts#L10) +[src/resolvers/DirectChat/organization.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChat/organization.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_DirectChat_users.md b/talawa-api-docs/modules/resolvers_DirectChat_users.md index 9b9f759959..947bca4c3d 100644 --- a/talawa-api-docs/modules/resolvers_DirectChat_users.md +++ b/talawa-api-docs/modules/resolvers_DirectChat_users.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/DirectChat/users.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/DirectChat/users.ts#L8) +[src/resolvers/DirectChat/users.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/DirectChat/users.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Event.md b/talawa-api-docs/modules/resolvers_Event.md index b1dd61b69f..7b7adcd7bd 100644 --- a/talawa-api-docs/modules/resolvers_Event.md +++ b/talawa-api-docs/modules/resolvers_Event.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Event/index.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Event/index.ts#L10) +[src/resolvers/Event/index.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Event/index.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Event_actionItems.md b/talawa-api-docs/modules/resolvers_Event_actionItems.md index f6689e4877..2aaa6f9f67 100644 --- a/talawa-api-docs/modules/resolvers_Event_actionItems.md +++ b/talawa-api-docs/modules/resolvers_Event_actionItems.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/Event/actionItems.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Event/actionItems.ts#L8) +[src/resolvers/Event/actionItems.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Event/actionItems.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Event_attendees.md b/talawa-api-docs/modules/resolvers_Event_attendees.md index d6d9147e9c..166472d3a0 100644 --- a/talawa-api-docs/modules/resolvers_Event_attendees.md +++ b/talawa-api-docs/modules/resolvers_Event_attendees.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Event/attendees.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Event/attendees.ts#L4) +[src/resolvers/Event/attendees.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Event/attendees.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Event_attendeesCheckInStatus.md b/talawa-api-docs/modules/resolvers_Event_attendeesCheckInStatus.md index a9334b4c92..43aedb58f7 100644 --- a/talawa-api-docs/modules/resolvers_Event_attendeesCheckInStatus.md +++ b/talawa-api-docs/modules/resolvers_Event_attendeesCheckInStatus.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Event/attendeesCheckInStatus.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Event/attendeesCheckInStatus.ts#L4) +[src/resolvers/Event/attendeesCheckInStatus.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Event/attendeesCheckInStatus.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Event_averageFeedbackScore.md b/talawa-api-docs/modules/resolvers_Event_averageFeedbackScore.md index 4dc348e1c9..bae5323b23 100644 --- a/talawa-api-docs/modules/resolvers_Event_averageFeedbackScore.md +++ b/talawa-api-docs/modules/resolvers_Event_averageFeedbackScore.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Event/averageFeedbackScore.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Event/averageFeedbackScore.ts#L4) +[src/resolvers/Event/averageFeedbackScore.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Event/averageFeedbackScore.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Event_creator.md b/talawa-api-docs/modules/resolvers_Event_creator.md index 15fd1ee7d8..137a68feac 100644 --- a/talawa-api-docs/modules/resolvers_Event_creator.md +++ b/talawa-api-docs/modules/resolvers_Event_creator.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Event/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Event/creator.ts#L4) +[src/resolvers/Event/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Event/creator.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Event_feedback.md b/talawa-api-docs/modules/resolvers_Event_feedback.md index 328d59d4d8..b70de74546 100644 --- a/talawa-api-docs/modules/resolvers_Event_feedback.md +++ b/talawa-api-docs/modules/resolvers_Event_feedback.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Event/feedback.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Event/feedback.ts#L4) +[src/resolvers/Event/feedback.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Event/feedback.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Event_organization.md b/talawa-api-docs/modules/resolvers_Event_organization.md index eb5b897431..32b2ee7747 100644 --- a/talawa-api-docs/modules/resolvers_Event_organization.md +++ b/talawa-api-docs/modules/resolvers_Event_organization.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Event/organization.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Event/organization.ts#L4) +[src/resolvers/Event/organization.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Event/organization.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Feedback.md b/talawa-api-docs/modules/resolvers_Feedback.md index fc829f55e1..114c6148f9 100644 --- a/talawa-api-docs/modules/resolvers_Feedback.md +++ b/talawa-api-docs/modules/resolvers_Feedback.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Feedback/index.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Feedback/index.ts#L4) +[src/resolvers/Feedback/index.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Feedback/index.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Feedback_event.md b/talawa-api-docs/modules/resolvers_Feedback_event.md index d066140aaa..fc89aeceae 100644 --- a/talawa-api-docs/modules/resolvers_Feedback_event.md +++ b/talawa-api-docs/modules/resolvers_Feedback_event.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Feedback/event.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Feedback/event.ts#L4) +[src/resolvers/Feedback/event.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Feedback/event.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_GroupChat.md b/talawa-api-docs/modules/resolvers_GroupChat.md index 4c6d9f9705..6cca0b911e 100644 --- a/talawa-api-docs/modules/resolvers_GroupChat.md +++ b/talawa-api-docs/modules/resolvers_GroupChat.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/GroupChat/index.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/GroupChat/index.ts#L7) +[src/resolvers/GroupChat/index.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/GroupChat/index.ts#L7) diff --git a/talawa-api-docs/modules/resolvers_GroupChatMessage.md b/talawa-api-docs/modules/resolvers_GroupChatMessage.md index e1904eafed..bbd6c26c91 100644 --- a/talawa-api-docs/modules/resolvers_GroupChatMessage.md +++ b/talawa-api-docs/modules/resolvers_GroupChatMessage.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/GroupChatMessage/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/GroupChatMessage/index.ts#L5) +[src/resolvers/GroupChatMessage/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/GroupChatMessage/index.ts#L5) diff --git a/talawa-api-docs/modules/resolvers_GroupChatMessage_groupChatMessageBelongsTo.md b/talawa-api-docs/modules/resolvers_GroupChatMessage_groupChatMessageBelongsTo.md index aa96219a3b..44f4744263 100644 --- a/talawa-api-docs/modules/resolvers_GroupChatMessage_groupChatMessageBelongsTo.md +++ b/talawa-api-docs/modules/resolvers_GroupChatMessage_groupChatMessageBelongsTo.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/GroupChatMessage/groupChatMessageBelongsTo.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/GroupChatMessage/groupChatMessageBelongsTo.ts#L8) +[src/resolvers/GroupChatMessage/groupChatMessageBelongsTo.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/GroupChatMessage/groupChatMessageBelongsTo.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_GroupChatMessage_sender.md b/talawa-api-docs/modules/resolvers_GroupChatMessage_sender.md index 3fe481aa0b..b0ff136e6e 100644 --- a/talawa-api-docs/modules/resolvers_GroupChatMessage_sender.md +++ b/talawa-api-docs/modules/resolvers_GroupChatMessage_sender.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/GroupChatMessage/sender.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/GroupChatMessage/sender.ts#L8) +[src/resolvers/GroupChatMessage/sender.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/GroupChatMessage/sender.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_GroupChat_creator.md b/talawa-api-docs/modules/resolvers_GroupChat_creator.md index 8d5fc06eea..093d7538e3 100644 --- a/talawa-api-docs/modules/resolvers_GroupChat_creator.md +++ b/talawa-api-docs/modules/resolvers_GroupChat_creator.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/GroupChat/creator.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/GroupChat/creator.ts#L8) +[src/resolvers/GroupChat/creator.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/GroupChat/creator.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_GroupChat_messages.md b/talawa-api-docs/modules/resolvers_GroupChat_messages.md index bd49aa4a6d..1f0e838bb0 100644 --- a/talawa-api-docs/modules/resolvers_GroupChat_messages.md +++ b/talawa-api-docs/modules/resolvers_GroupChat_messages.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/GroupChat/messages.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/GroupChat/messages.ts#L8) +[src/resolvers/GroupChat/messages.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/GroupChat/messages.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_GroupChat_organization.md b/talawa-api-docs/modules/resolvers_GroupChat_organization.md index 0a783ffea9..af4dee804f 100644 --- a/talawa-api-docs/modules/resolvers_GroupChat_organization.md +++ b/talawa-api-docs/modules/resolvers_GroupChat_organization.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/GroupChat/organization.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/GroupChat/organization.ts#L10) +[src/resolvers/GroupChat/organization.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/GroupChat/organization.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_GroupChat_users.md b/talawa-api-docs/modules/resolvers_GroupChat_users.md index 1af69bdce6..129d13410b 100644 --- a/talawa-api-docs/modules/resolvers_GroupChat_users.md +++ b/talawa-api-docs/modules/resolvers_GroupChat_users.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/GroupChat/users.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/GroupChat/users.ts#L8) +[src/resolvers/GroupChat/users.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/GroupChat/users.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_MembershipRequest.md b/talawa-api-docs/modules/resolvers_MembershipRequest.md index 4de4b46541..4ac9dca8fe 100644 --- a/talawa-api-docs/modules/resolvers_MembershipRequest.md +++ b/talawa-api-docs/modules/resolvers_MembershipRequest.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/MembershipRequest/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/MembershipRequest/index.ts#L5) +[src/resolvers/MembershipRequest/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/MembershipRequest/index.ts#L5) diff --git a/talawa-api-docs/modules/resolvers_MembershipRequest_organization.md b/talawa-api-docs/modules/resolvers_MembershipRequest_organization.md index c90c8e6914..f6e1236638 100644 --- a/talawa-api-docs/modules/resolvers_MembershipRequest_organization.md +++ b/talawa-api-docs/modules/resolvers_MembershipRequest_organization.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/MembershipRequest/organization.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/MembershipRequest/organization.ts#L8) +[src/resolvers/MembershipRequest/organization.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/MembershipRequest/organization.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_MembershipRequest_user.md b/talawa-api-docs/modules/resolvers_MembershipRequest_user.md index 1ec861722b..8950f2e253 100644 --- a/talawa-api-docs/modules/resolvers_MembershipRequest_user.md +++ b/talawa-api-docs/modules/resolvers_MembershipRequest_user.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/MembershipRequest/user.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/MembershipRequest/user.ts#L8) +[src/resolvers/MembershipRequest/user.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/MembershipRequest/user.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Mutation.md b/talawa-api-docs/modules/resolvers_Mutation.md index 4d8563ac9d..7fb91f21e7 100644 --- a/talawa-api-docs/modules/resolvers_Mutation.md +++ b/talawa-api-docs/modules/resolvers_Mutation.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/index.ts:94](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/index.ts#L94) +[src/resolvers/Mutation/index.ts:94](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/index.ts#L94) diff --git a/talawa-api-docs/modules/resolvers_Mutation_acceptAdmin.md b/talawa-api-docs/modules/resolvers_Mutation_acceptAdmin.md index 531d378b4f..493a08d085 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_acceptAdmin.md +++ b/talawa-api-docs/modules/resolvers_Mutation_acceptAdmin.md @@ -36,4 +36,4 @@ THe following checks are done: #### Defined in -[src/resolvers/Mutation/acceptAdmin.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/acceptAdmin.ts#L15) +[src/resolvers/Mutation/acceptAdmin.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/acceptAdmin.ts#L15) diff --git a/talawa-api-docs/modules/resolvers_Mutation_acceptMembershipRequest.md b/talawa-api-docs/modules/resolvers_Mutation_acceptMembershipRequest.md index c028109f2f..1dc367e311 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_acceptMembershipRequest.md +++ b/talawa-api-docs/modules/resolvers_Mutation_acceptMembershipRequest.md @@ -39,4 +39,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/acceptMembershipRequest.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/acceptMembershipRequest.ts#L25) +[src/resolvers/Mutation/acceptMembershipRequest.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/acceptMembershipRequest.ts#L25) diff --git a/talawa-api-docs/modules/resolvers_Mutation_addEventAttendee.md b/talawa-api-docs/modules/resolvers_Mutation_addEventAttendee.md index b12f79d50d..581dddfc96 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_addEventAttendee.md +++ b/talawa-api-docs/modules/resolvers_Mutation_addEventAttendee.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/addEventAttendee.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/addEventAttendee.ts#L15) +[src/resolvers/Mutation/addEventAttendee.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/addEventAttendee.ts#L15) diff --git a/talawa-api-docs/modules/resolvers_Mutation_addFeedback.md b/talawa-api-docs/modules/resolvers_Mutation_addFeedback.md index c4bd4ad776..d5557776c1 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_addFeedback.md +++ b/talawa-api-docs/modules/resolvers_Mutation_addFeedback.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/addFeedback.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/addFeedback.ts#L11) +[src/resolvers/Mutation/addFeedback.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/addFeedback.ts#L11) diff --git a/talawa-api-docs/modules/resolvers_Mutation_addLanguageTranslation.md b/talawa-api-docs/modules/resolvers_Mutation_addLanguageTranslation.md index ef7a54891e..e45933ffa9 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_addLanguageTranslation.md +++ b/talawa-api-docs/modules/resolvers_Mutation_addLanguageTranslation.md @@ -32,4 +32,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/addLanguageTranslation.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/addLanguageTranslation.ts#L14) +[src/resolvers/Mutation/addLanguageTranslation.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/addLanguageTranslation.ts#L14) diff --git a/talawa-api-docs/modules/resolvers_Mutation_addOrganizationCustomField.md b/talawa-api-docs/modules/resolvers_Mutation_addOrganizationCustomField.md index 37fb868baa..2d62a4d64b 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_addOrganizationCustomField.md +++ b/talawa-api-docs/modules/resolvers_Mutation_addOrganizationCustomField.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/addOrganizationCustomField.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/addOrganizationCustomField.ts#L25) +[src/resolvers/Mutation/addOrganizationCustomField.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/addOrganizationCustomField.ts#L25) diff --git a/talawa-api-docs/modules/resolvers_Mutation_addOrganizationImage.md b/talawa-api-docs/modules/resolvers_Mutation_addOrganizationImage.md index 34402909a5..a6bbb720c2 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_addOrganizationImage.md +++ b/talawa-api-docs/modules/resolvers_Mutation_addOrganizationImage.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/addOrganizationImage.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/addOrganizationImage.ts#L21) +[src/resolvers/Mutation/addOrganizationImage.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/addOrganizationImage.ts#L21) diff --git a/talawa-api-docs/modules/resolvers_Mutation_addUserCustomData.md b/talawa-api-docs/modules/resolvers_Mutation_addUserCustomData.md index 590c2b61af..d4b3cf882b 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_addUserCustomData.md +++ b/talawa-api-docs/modules/resolvers_Mutation_addUserCustomData.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/addUserCustomData.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/addUserCustomData.ts#L20) +[src/resolvers/Mutation/addUserCustomData.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/addUserCustomData.ts#L20) diff --git a/talawa-api-docs/modules/resolvers_Mutation_addUserImage.md b/talawa-api-docs/modules/resolvers_Mutation_addUserImage.md index 9689884535..5c252e8a76 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_addUserImage.md +++ b/talawa-api-docs/modules/resolvers_Mutation_addUserImage.md @@ -35,4 +35,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/addUserImage.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/addUserImage.ts#L15) +[src/resolvers/Mutation/addUserImage.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/addUserImage.ts#L15) diff --git a/talawa-api-docs/modules/resolvers_Mutation_addUserToGroupChat.md b/talawa-api-docs/modules/resolvers_Mutation_addUserToGroupChat.md index 1aaff277b3..e8416ebc5f 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_addUserToGroupChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_addUserToGroupChat.md @@ -39,4 +39,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/addUserToGroupChat.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/addUserToGroupChat.ts#L27) +[src/resolvers/Mutation/addUserToGroupChat.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/addUserToGroupChat.ts#L27) diff --git a/talawa-api-docs/modules/resolvers_Mutation_adminRemoveEvent.md b/talawa-api-docs/modules/resolvers_Mutation_adminRemoveEvent.md index dcd795ae65..b2f3350e23 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_adminRemoveEvent.md +++ b/talawa-api-docs/modules/resolvers_Mutation_adminRemoveEvent.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/adminRemoveEvent.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/adminRemoveEvent.ts#L27) +[src/resolvers/Mutation/adminRemoveEvent.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/adminRemoveEvent.ts#L27) diff --git a/talawa-api-docs/modules/resolvers_Mutation_adminRemoveGroup.md b/talawa-api-docs/modules/resolvers_Mutation_adminRemoveGroup.md index ccdb38275a..39bc87d85f 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_adminRemoveGroup.md +++ b/talawa-api-docs/modules/resolvers_Mutation_adminRemoveGroup.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/adminRemoveGroup.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/adminRemoveGroup.ts#L25) +[src/resolvers/Mutation/adminRemoveGroup.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/adminRemoveGroup.ts#L25) diff --git a/talawa-api-docs/modules/resolvers_Mutation_assignUserTag.md b/talawa-api-docs/modules/resolvers_Mutation_assignUserTag.md index 7403c3e790..aa14c5dcd0 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_assignUserTag.md +++ b/talawa-api-docs/modules/resolvers_Mutation_assignUserTag.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/assignUserTag.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/assignUserTag.ts#L12) +[src/resolvers/Mutation/assignUserTag.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/assignUserTag.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Mutation_blockPluginCreationBySuperadmin.md b/talawa-api-docs/modules/resolvers_Mutation_blockPluginCreationBySuperadmin.md index d4e401a3fc..f3af8aaa36 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_blockPluginCreationBySuperadmin.md +++ b/talawa-api-docs/modules/resolvers_Mutation_blockPluginCreationBySuperadmin.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/blockPluginCreationBySuperadmin.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/blockPluginCreationBySuperadmin.ts#L16) +[src/resolvers/Mutation/blockPluginCreationBySuperadmin.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/blockPluginCreationBySuperadmin.ts#L16) diff --git a/talawa-api-docs/modules/resolvers_Mutation_blockUser.md b/talawa-api-docs/modules/resolvers_Mutation_blockUser.md index 6f0572397c..3e5e3405c0 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_blockUser.md +++ b/talawa-api-docs/modules/resolvers_Mutation_blockUser.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/blockUser.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/blockUser.ts#L27) +[src/resolvers/Mutation/blockUser.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/blockUser.ts#L27) diff --git a/talawa-api-docs/modules/resolvers_Mutation_cancelMembershipRequest.md b/talawa-api-docs/modules/resolvers_Mutation_cancelMembershipRequest.md index 4d07b8f8c9..82c5430c2d 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_cancelMembershipRequest.md +++ b/talawa-api-docs/modules/resolvers_Mutation_cancelMembershipRequest.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/cancelMembershipRequest.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/cancelMembershipRequest.ts#L24) +[src/resolvers/Mutation/cancelMembershipRequest.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/cancelMembershipRequest.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Mutation_checkIn.md b/talawa-api-docs/modules/resolvers_Mutation_checkIn.md index fb2a8c1315..946ecc31c2 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_checkIn.md +++ b/talawa-api-docs/modules/resolvers_Mutation_checkIn.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/checkIn.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/checkIn.ts#L16) +[src/resolvers/Mutation/checkIn.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/checkIn.ts#L16) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createActionItem.md b/talawa-api-docs/modules/resolvers_Mutation_createActionItem.md index adf2743104..bccf8781da 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createActionItem.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createActionItem.md @@ -41,4 +41,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createActionItem.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createActionItem.ts#L32) +[src/resolvers/Mutation/createActionItem.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createActionItem.ts#L32) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createActionItemCategory.md b/talawa-api-docs/modules/resolvers_Mutation_createActionItemCategory.md index 29d4776c8d..e79e770f78 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createActionItemCategory.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createActionItemCategory.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createActionItemCategory.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createActionItemCategory.ts#L27) +[src/resolvers/Mutation/createActionItemCategory.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createActionItemCategory.ts#L27) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createAdmin.md b/talawa-api-docs/modules/resolvers_Mutation_createAdmin.md index 9b651cbb95..9ac6af7ef8 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createAdmin.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createAdmin.md @@ -39,4 +39,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createAdmin.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createAdmin.ts#L27) +[src/resolvers/Mutation/createAdmin.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createAdmin.ts#L27) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createAdvertisement.md b/talawa-api-docs/modules/resolvers_Mutation_createAdvertisement.md index df36075de9..490ecc4611 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createAdvertisement.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createAdvertisement.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/createAdvertisement.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createAdvertisement.ts#L4) +[src/resolvers/Mutation/createAdvertisement.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createAdvertisement.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createComment.md b/talawa-api-docs/modules/resolvers_Mutation_createComment.md index 58a9b68137..9fd8cb6a87 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createComment.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createComment.md @@ -35,4 +35,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createComment.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createComment.ts#L17) +[src/resolvers/Mutation/createComment.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createComment.ts#L17) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createDirectChat.md b/talawa-api-docs/modules/resolvers_Mutation_createDirectChat.md index dae6a73601..51f89ba47d 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createDirectChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createDirectChat.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createDirectChat.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createDirectChat.ts#L20) +[src/resolvers/Mutation/createDirectChat.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createDirectChat.ts#L20) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createDonation.md b/talawa-api-docs/modules/resolvers_Mutation_createDonation.md index 54039474d9..ee2425858c 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createDonation.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createDonation.md @@ -30,4 +30,4 @@ context of entire application #### Defined in -[src/resolvers/Mutation/createDonation.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createDonation.ts#L11) +[src/resolvers/Mutation/createDonation.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createDonation.ts#L11) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createEvent.md b/talawa-api-docs/modules/resolvers_Mutation_createEvent.md index 66606024cc..dde203757d 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createEvent.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createEvent.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createEvent.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createEvent.ts#L30) +[src/resolvers/Mutation/createEvent.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createEvent.ts#L30) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createGroupChat.md b/talawa-api-docs/modules/resolvers_Mutation_createGroupChat.md index ad894fab8e..85f2e4559d 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createGroupChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createGroupChat.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createGroupChat.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createGroupChat.ts#L20) +[src/resolvers/Mutation/createGroupChat.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createGroupChat.ts#L20) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createMember.md b/talawa-api-docs/modules/resolvers_Mutation_createMember.md index bbe46bdfda..6e926bf455 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createMember.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createMember.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createMember.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createMember.ts#L24) +[src/resolvers/Mutation/createMember.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createMember.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createMessageChat.md b/talawa-api-docs/modules/resolvers_Mutation_createMessageChat.md index 8304d81b0a..ebc5876c64 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createMessageChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createMessageChat.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createMessageChat.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createMessageChat.ts#L15) +[src/resolvers/Mutation/createMessageChat.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createMessageChat.ts#L15) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createOrganization.md b/talawa-api-docs/modules/resolvers_Mutation_createOrganization.md index f80c770bd1..397976a500 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createOrganization.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createOrganization.md @@ -35,4 +35,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createOrganization.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createOrganization.ts#L22) +[src/resolvers/Mutation/createOrganization.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createOrganization.ts#L22) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createPlugin.md b/talawa-api-docs/modules/resolvers_Mutation_createPlugin.md index daf90d4bc1..d5736ec5d6 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createPlugin.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createPlugin.md @@ -30,4 +30,4 @@ context of entire application #### Defined in -[src/resolvers/Mutation/createPlugin.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createPlugin.ts#L12) +[src/resolvers/Mutation/createPlugin.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createPlugin.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createPost.md b/talawa-api-docs/modules/resolvers_Mutation_createPost.md index 947660d02d..19dae251ca 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createPost.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createPost.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/createPost.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createPost.ts#L28) +[src/resolvers/Mutation/createPost.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createPost.ts#L28) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createSampleOrganization.md b/talawa-api-docs/modules/resolvers_Mutation_createSampleOrganization.md index 21ea5a3ca7..969f7dc8d6 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createSampleOrganization.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createSampleOrganization.md @@ -18,4 +18,4 @@ Generates sample data for testing or development purposes. #### Defined in -[src/resolvers/Mutation/createSampleOrganization.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createSampleOrganization.ts#L15) +[src/resolvers/Mutation/createSampleOrganization.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createSampleOrganization.ts#L15) diff --git a/talawa-api-docs/modules/resolvers_Mutation_createUserTag.md b/talawa-api-docs/modules/resolvers_Mutation_createUserTag.md index b24fc7f1ff..07fb2a0bf4 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_createUserTag.md +++ b/talawa-api-docs/modules/resolvers_Mutation_createUserTag.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/createUserTag.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/createUserTag.ts#L13) +[src/resolvers/Mutation/createUserTag.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/createUserTag.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Mutation_deleteAdvertisementById.md b/talawa-api-docs/modules/resolvers_Mutation_deleteAdvertisementById.md index 08779cf58b..15fdfd8e21 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_deleteAdvertisementById.md +++ b/talawa-api-docs/modules/resolvers_Mutation_deleteAdvertisementById.md @@ -26,4 +26,4 @@ payload provided with the request #### Defined in -[src/resolvers/Mutation/deleteAdvertisementById.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/deleteAdvertisementById.ts#L10) +[src/resolvers/Mutation/deleteAdvertisementById.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/deleteAdvertisementById.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Mutation_deleteDonationById.md b/talawa-api-docs/modules/resolvers_Mutation_deleteDonationById.md index 3e49e97111..908075a99b 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_deleteDonationById.md +++ b/talawa-api-docs/modules/resolvers_Mutation_deleteDonationById.md @@ -26,4 +26,4 @@ payload provided with the request #### Defined in -[src/resolvers/Mutation/deleteDonationById.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/deleteDonationById.ts#L10) +[src/resolvers/Mutation/deleteDonationById.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/deleteDonationById.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Mutation_forgotPassword.md b/talawa-api-docs/modules/resolvers_Mutation_forgotPassword.md index 0abe09e9b7..ba2735276c 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_forgotPassword.md +++ b/talawa-api-docs/modules/resolvers_Mutation_forgotPassword.md @@ -34,4 +34,4 @@ The following tasks are done: #### Defined in -[src/resolvers/Mutation/forgotPassword.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/forgotPassword.ts#L17) +[src/resolvers/Mutation/forgotPassword.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/forgotPassword.ts#L17) diff --git a/talawa-api-docs/modules/resolvers_Mutation_joinPublicOrganization.md b/talawa-api-docs/modules/resolvers_Mutation_joinPublicOrganization.md index fc02410a7b..8670202113 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_joinPublicOrganization.md +++ b/talawa-api-docs/modules/resolvers_Mutation_joinPublicOrganization.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/joinPublicOrganization.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/joinPublicOrganization.ts#L25) +[src/resolvers/Mutation/joinPublicOrganization.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/joinPublicOrganization.ts#L25) diff --git a/talawa-api-docs/modules/resolvers_Mutation_leaveOrganization.md b/talawa-api-docs/modules/resolvers_Mutation_leaveOrganization.md index 2c48688ff8..baebe50154 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_leaveOrganization.md +++ b/talawa-api-docs/modules/resolvers_Mutation_leaveOrganization.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/leaveOrganization.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/leaveOrganization.ts#L24) +[src/resolvers/Mutation/leaveOrganization.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/leaveOrganization.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Mutation_likeComment.md b/talawa-api-docs/modules/resolvers_Mutation_likeComment.md index b0ca43789d..f3ba6ea7d8 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_likeComment.md +++ b/talawa-api-docs/modules/resolvers_Mutation_likeComment.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/likeComment.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/likeComment.ts#L18) +[src/resolvers/Mutation/likeComment.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/likeComment.ts#L18) diff --git a/talawa-api-docs/modules/resolvers_Mutation_likePost.md b/talawa-api-docs/modules/resolvers_Mutation_likePost.md index da01d51d6c..74aef81b50 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_likePost.md +++ b/talawa-api-docs/modules/resolvers_Mutation_likePost.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/likePost.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/likePost.ts#L18) +[src/resolvers/Mutation/likePost.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/likePost.ts#L18) diff --git a/talawa-api-docs/modules/resolvers_Mutation_login.md b/talawa-api-docs/modules/resolvers_Mutation_login.md index 77d3c573f2..a657d3d3dc 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_login.md +++ b/talawa-api-docs/modules/resolvers_Mutation_login.md @@ -32,4 +32,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/login.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/login.ts#L25) +[src/resolvers/Mutation/login.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/login.ts#L25) diff --git a/talawa-api-docs/modules/resolvers_Mutation_logout.md b/talawa-api-docs/modules/resolvers_Mutation_logout.md index 9bdaaaad50..900c249ada 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_logout.md +++ b/talawa-api-docs/modules/resolvers_Mutation_logout.md @@ -35,4 +35,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/logout.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/logout.ts#L13) +[src/resolvers/Mutation/logout.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/logout.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Mutation_otp.md b/talawa-api-docs/modules/resolvers_Mutation_otp.md index 9dc3a275c2..bf2a279558 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_otp.md +++ b/talawa-api-docs/modules/resolvers_Mutation_otp.md @@ -31,4 +31,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/otp.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/otp.ts#L16) +[src/resolvers/Mutation/otp.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/otp.ts#L16) diff --git a/talawa-api-docs/modules/resolvers_Mutation_recaptcha.md b/talawa-api-docs/modules/resolvers_Mutation_recaptcha.md index 379d5bce22..58ab4d9fbb 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_recaptcha.md +++ b/talawa-api-docs/modules/resolvers_Mutation_recaptcha.md @@ -26,4 +26,4 @@ payload provided with the request #### Defined in -[src/resolvers/Mutation/recaptcha.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/recaptcha.ts#L10) +[src/resolvers/Mutation/recaptcha.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/recaptcha.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Mutation_refreshToken.md b/talawa-api-docs/modules/resolvers_Mutation_refreshToken.md index e49644c671..a7312acfd0 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_refreshToken.md +++ b/talawa-api-docs/modules/resolvers_Mutation_refreshToken.md @@ -26,4 +26,4 @@ payload provided with the request #### Defined in -[src/resolvers/Mutation/refreshToken.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/refreshToken.ts#L23) +[src/resolvers/Mutation/refreshToken.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/refreshToken.ts#L23) diff --git a/talawa-api-docs/modules/resolvers_Mutation_registerForEvent.md b/talawa-api-docs/modules/resolvers_Mutation_registerForEvent.md index 4e3c5d9032..7677f5898e 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_registerForEvent.md +++ b/talawa-api-docs/modules/resolvers_Mutation_registerForEvent.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/registerForEvent.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/registerForEvent.ts#L24) +[src/resolvers/Mutation/registerForEvent.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/registerForEvent.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Mutation_rejectAdmin.md b/talawa-api-docs/modules/resolvers_Mutation_rejectAdmin.md index aedb2661ed..301c929a74 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_rejectAdmin.md +++ b/talawa-api-docs/modules/resolvers_Mutation_rejectAdmin.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/rejectAdmin.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/rejectAdmin.ts#L17) +[src/resolvers/Mutation/rejectAdmin.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/rejectAdmin.ts#L17) diff --git a/talawa-api-docs/modules/resolvers_Mutation_rejectMembershipRequest.md b/talawa-api-docs/modules/resolvers_Mutation_rejectMembershipRequest.md index acfe8bd169..36decf2fd5 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_rejectMembershipRequest.md +++ b/talawa-api-docs/modules/resolvers_Mutation_rejectMembershipRequest.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/rejectMembershipRequest.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/rejectMembershipRequest.ts#L23) +[src/resolvers/Mutation/rejectMembershipRequest.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/rejectMembershipRequest.ts#L23) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeActionItem.md b/talawa-api-docs/modules/resolvers_Mutation_removeActionItem.md index 3e0a9231b7..e8ba2af76b 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeActionItem.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeActionItem.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeActionItem.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeActionItem.ts#L26) +[src/resolvers/Mutation/removeActionItem.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeActionItem.ts#L26) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeAdmin.md b/talawa-api-docs/modules/resolvers_Mutation_removeAdmin.md index f0d6babb74..3cdcf9f1f0 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeAdmin.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeAdmin.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeAdmin.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeAdmin.ts#L26) +[src/resolvers/Mutation/removeAdmin.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeAdmin.ts#L26) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeAdvertisement.md b/talawa-api-docs/modules/resolvers_Mutation_removeAdvertisement.md index cbe45c4a43..5142d18d34 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeAdvertisement.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeAdvertisement.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/removeAdvertisement.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeAdvertisement.ts#L7) +[src/resolvers/Mutation/removeAdvertisement.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeAdvertisement.ts#L7) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeComment.md b/talawa-api-docs/modules/resolvers_Mutation_removeComment.md index f3fdc33966..d1b89baf03 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeComment.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeComment.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeComment.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeComment.ts#L26) +[src/resolvers/Mutation/removeComment.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeComment.ts#L26) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeDirectChat.md b/talawa-api-docs/modules/resolvers_Mutation_removeDirectChat.md index e66bb76a79..4066d5e1c7 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeDirectChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeDirectChat.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeDirectChat.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeDirectChat.ts#L22) +[src/resolvers/Mutation/removeDirectChat.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeDirectChat.ts#L22) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeEvent.md b/talawa-api-docs/modules/resolvers_Mutation_removeEvent.md index ec9526fa32..c53288cb67 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeEvent.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeEvent.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeEvent.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeEvent.ts#L24) +[src/resolvers/Mutation/removeEvent.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeEvent.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeEventAttendee.md b/talawa-api-docs/modules/resolvers_Mutation_removeEventAttendee.md index e00d665d58..369c8369b0 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeEventAttendee.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeEventAttendee.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/removeEventAttendee.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeEventAttendee.ts#L14) +[src/resolvers/Mutation/removeEventAttendee.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeEventAttendee.ts#L14) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeGroupChat.md b/talawa-api-docs/modules/resolvers_Mutation_removeGroupChat.md index 9f9e07c1b4..74f5047fa3 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeGroupChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeGroupChat.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeGroupChat.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeGroupChat.ts#L22) +[src/resolvers/Mutation/removeGroupChat.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeGroupChat.ts#L22) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeMember.md b/talawa-api-docs/modules/resolvers_Mutation_removeMember.md index 6c86ad4faa..5f0b0eec0c 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeMember.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeMember.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeMember.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeMember.ts#L29) +[src/resolvers/Mutation/removeMember.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeMember.ts#L29) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeOrganization.md b/talawa-api-docs/modules/resolvers_Mutation_removeOrganization.md index d138307fec..3500857f54 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeOrganization.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeOrganization.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeOrganization.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeOrganization.ts#L32) +[src/resolvers/Mutation/removeOrganization.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeOrganization.ts#L32) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeOrganizationCustomField.md b/talawa-api-docs/modules/resolvers_Mutation_removeOrganizationCustomField.md index cdf5d6532f..150bc9b101 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeOrganizationCustomField.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeOrganizationCustomField.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeOrganizationCustomField.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeOrganizationCustomField.ts#L24) +[src/resolvers/Mutation/removeOrganizationCustomField.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeOrganizationCustomField.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeOrganizationImage.md b/talawa-api-docs/modules/resolvers_Mutation_removeOrganizationImage.md index b6b8c199d3..37076c7992 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeOrganizationImage.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeOrganizationImage.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeOrganizationImage.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeOrganizationImage.ts#L22) +[src/resolvers/Mutation/removeOrganizationImage.ts:22](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeOrganizationImage.ts#L22) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removePost.md b/talawa-api-docs/modules/resolvers_Mutation_removePost.md index 1b07b6a669..e1794fcbaf 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removePost.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removePost.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removePost.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removePost.ts#L28) +[src/resolvers/Mutation/removePost.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removePost.ts#L28) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeSampleOrganization.md b/talawa-api-docs/modules/resolvers_Mutation_removeSampleOrganization.md index 50a26bea07..0c6c25c027 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeSampleOrganization.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeSampleOrganization.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/removeSampleOrganization.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeSampleOrganization.ts#L11) +[src/resolvers/Mutation/removeSampleOrganization.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeSampleOrganization.ts#L11) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeUserCustomData.md b/talawa-api-docs/modules/resolvers_Mutation_removeUserCustomData.md index 6baeb9010c..3b33d8997f 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeUserCustomData.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeUserCustomData.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/removeUserCustomData.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeUserCustomData.ts#L12) +[src/resolvers/Mutation/removeUserCustomData.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeUserCustomData.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeUserFromGroupChat.md b/talawa-api-docs/modules/resolvers_Mutation_removeUserFromGroupChat.md index d46588890f..81ebadd58d 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeUserFromGroupChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeUserFromGroupChat.md @@ -38,4 +38,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeUserFromGroupChat.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeUserFromGroupChat.ts#L24) +[src/resolvers/Mutation/removeUserFromGroupChat.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeUserFromGroupChat.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeUserImage.md b/talawa-api-docs/modules/resolvers_Mutation_removeUserImage.md index 81ec6f5155..050506c25e 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeUserImage.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeUserImage.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/removeUserImage.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeUserImage.ts#L19) +[src/resolvers/Mutation/removeUserImage.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeUserImage.ts#L19) diff --git a/talawa-api-docs/modules/resolvers_Mutation_removeUserTag.md b/talawa-api-docs/modules/resolvers_Mutation_removeUserTag.md index 10ce2e352b..34e53a8af7 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_removeUserTag.md +++ b/talawa-api-docs/modules/resolvers_Mutation_removeUserTag.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/removeUserTag.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/removeUserTag.ts#L10) +[src/resolvers/Mutation/removeUserTag.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/removeUserTag.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Mutation_revokeRefreshTokenForUser.md b/talawa-api-docs/modules/resolvers_Mutation_revokeRefreshTokenForUser.md index 5a5c25a52f..9cda23b3d2 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_revokeRefreshTokenForUser.md +++ b/talawa-api-docs/modules/resolvers_Mutation_revokeRefreshTokenForUser.md @@ -26,4 +26,4 @@ payload provided with the request #### Defined in -[src/resolvers/Mutation/revokeRefreshTokenForUser.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/revokeRefreshTokenForUser.ts#L9) +[src/resolvers/Mutation/revokeRefreshTokenForUser.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/revokeRefreshTokenForUser.ts#L9) diff --git a/talawa-api-docs/modules/resolvers_Mutation_saveFcmToken.md b/talawa-api-docs/modules/resolvers_Mutation_saveFcmToken.md index 717731d9c7..3bc995b4fc 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_saveFcmToken.md +++ b/talawa-api-docs/modules/resolvers_Mutation_saveFcmToken.md @@ -35,4 +35,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/saveFcmToken.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/saveFcmToken.ts#L12) +[src/resolvers/Mutation/saveFcmToken.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/saveFcmToken.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Mutation_sendMembershipRequest.md b/talawa-api-docs/modules/resolvers_Mutation_sendMembershipRequest.md index 051c4dad72..df4c476161 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_sendMembershipRequest.md +++ b/talawa-api-docs/modules/resolvers_Mutation_sendMembershipRequest.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/sendMembershipRequest.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/sendMembershipRequest.ts#L21) +[src/resolvers/Mutation/sendMembershipRequest.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/sendMembershipRequest.ts#L21) diff --git a/talawa-api-docs/modules/resolvers_Mutation_sendMessageToDirectChat.md b/talawa-api-docs/modules/resolvers_Mutation_sendMessageToDirectChat.md index f2b7e70fea..bb2562c39f 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_sendMessageToDirectChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_sendMessageToDirectChat.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/sendMessageToDirectChat.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/sendMessageToDirectChat.ts#L15) +[src/resolvers/Mutation/sendMessageToDirectChat.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/sendMessageToDirectChat.ts#L15) diff --git a/talawa-api-docs/modules/resolvers_Mutation_sendMessageToGroupChat.md b/talawa-api-docs/modules/resolvers_Mutation_sendMessageToGroupChat.md index d6a1f3b155..9dfc7c80e1 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_sendMessageToGroupChat.md +++ b/talawa-api-docs/modules/resolvers_Mutation_sendMessageToGroupChat.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/sendMessageToGroupChat.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/sendMessageToGroupChat.ts#L20) +[src/resolvers/Mutation/sendMessageToGroupChat.ts:20](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/sendMessageToGroupChat.ts#L20) diff --git a/talawa-api-docs/modules/resolvers_Mutation_signUp.md b/talawa-api-docs/modules/resolvers_Mutation_signUp.md index 5d07d7a510..000dee0065 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_signUp.md +++ b/talawa-api-docs/modules/resolvers_Mutation_signUp.md @@ -26,4 +26,4 @@ payload provided with the request #### Defined in -[src/resolvers/Mutation/signUp.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/signUp.ts#L28) +[src/resolvers/Mutation/signUp.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/signUp.ts#L28) diff --git a/talawa-api-docs/modules/resolvers_Mutation_togglePostPin.md b/talawa-api-docs/modules/resolvers_Mutation_togglePostPin.md index 8bc539d166..111b8dc922 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_togglePostPin.md +++ b/talawa-api-docs/modules/resolvers_Mutation_togglePostPin.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/togglePostPin.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/togglePostPin.ts#L19) +[src/resolvers/Mutation/togglePostPin.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/togglePostPin.ts#L19) diff --git a/talawa-api-docs/modules/resolvers_Mutation_unassignUserTag.md b/talawa-api-docs/modules/resolvers_Mutation_unassignUserTag.md index 2afb86d99b..efd049655a 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_unassignUserTag.md +++ b/talawa-api-docs/modules/resolvers_Mutation_unassignUserTag.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/unassignUserTag.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/unassignUserTag.ts#L11) +[src/resolvers/Mutation/unassignUserTag.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/unassignUserTag.ts#L11) diff --git a/talawa-api-docs/modules/resolvers_Mutation_unblockUser.md b/talawa-api-docs/modules/resolvers_Mutation_unblockUser.md index b283e0cb7d..3d061a0eaf 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_unblockUser.md +++ b/talawa-api-docs/modules/resolvers_Mutation_unblockUser.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/unblockUser.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/unblockUser.ts#L25) +[src/resolvers/Mutation/unblockUser.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/unblockUser.ts#L25) diff --git a/talawa-api-docs/modules/resolvers_Mutation_unlikeComment.md b/talawa-api-docs/modules/resolvers_Mutation_unlikeComment.md index 561df04962..ff99820cb1 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_unlikeComment.md +++ b/talawa-api-docs/modules/resolvers_Mutation_unlikeComment.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/unlikeComment.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/unlikeComment.ts#L17) +[src/resolvers/Mutation/unlikeComment.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/unlikeComment.ts#L17) diff --git a/talawa-api-docs/modules/resolvers_Mutation_unlikePost.md b/talawa-api-docs/modules/resolvers_Mutation_unlikePost.md index 9b57c0a996..af9781d48b 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_unlikePost.md +++ b/talawa-api-docs/modules/resolvers_Mutation_unlikePost.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/unlikePost.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/unlikePost.ts#L18) +[src/resolvers/Mutation/unlikePost.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/unlikePost.ts#L18) diff --git a/talawa-api-docs/modules/resolvers_Mutation_unregisterForEventByUser.md b/talawa-api-docs/modules/resolvers_Mutation_unregisterForEventByUser.md index e8f62c0de6..f072b69126 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_unregisterForEventByUser.md +++ b/talawa-api-docs/modules/resolvers_Mutation_unregisterForEventByUser.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/unregisterForEventByUser.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/unregisterForEventByUser.ts#L24) +[src/resolvers/Mutation/unregisterForEventByUser.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/unregisterForEventByUser.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateActionItem.md b/talawa-api-docs/modules/resolvers_Mutation_updateActionItem.md index a29aa55184..0a77b2ee53 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateActionItem.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateActionItem.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/updateActionItem.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateActionItem.ts#L38) +[src/resolvers/Mutation/updateActionItem.ts:38](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateActionItem.ts#L38) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateActionItemCategory.md b/talawa-api-docs/modules/resolvers_Mutation_updateActionItemCategory.md index 693b637996..84ccbdb2c9 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateActionItemCategory.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateActionItemCategory.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/updateActionItemCategory.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateActionItemCategory.ts#L26) +[src/resolvers/Mutation/updateActionItemCategory.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateActionItemCategory.ts#L26) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateAdvertisement.md b/talawa-api-docs/modules/resolvers_Mutation_updateAdvertisement.md index e31bd7bf61..9a6c045919 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateAdvertisement.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateAdvertisement.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/updateAdvertisement.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateAdvertisement.ts#L14) +[src/resolvers/Mutation/updateAdvertisement.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateAdvertisement.ts#L14) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateEvent.md b/talawa-api-docs/modules/resolvers_Mutation_updateEvent.md index 2e41ffae24..3916a2d238 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateEvent.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateEvent.md @@ -37,4 +37,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/updateEvent.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateEvent.ts#L26) +[src/resolvers/Mutation/updateEvent.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateEvent.ts#L26) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateLanguage.md b/talawa-api-docs/modules/resolvers_Mutation_updateLanguage.md index 3ac444d148..50e7297dea 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateLanguage.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateLanguage.md @@ -35,4 +35,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/updateLanguage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateLanguage.ts#L12) +[src/resolvers/Mutation/updateLanguage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateLanguage.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateOrganization.md b/talawa-api-docs/modules/resolvers_Mutation_updateOrganization.md index 4e989ad90d..194de50640 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateOrganization.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateOrganization.md @@ -36,4 +36,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/updateOrganization.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateOrganization.ts#L21) +[src/resolvers/Mutation/updateOrganization.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateOrganization.ts#L21) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updatePluginStatus.md b/talawa-api-docs/modules/resolvers_Mutation_updatePluginStatus.md index 40235da9b4..eadfef41d8 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updatePluginStatus.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updatePluginStatus.md @@ -30,4 +30,4 @@ context of entire application #### Defined in -[src/resolvers/Mutation/updatePluginStatus.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updatePluginStatus.ts#L16) +[src/resolvers/Mutation/updatePluginStatus.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updatePluginStatus.ts#L16) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updatePost.md b/talawa-api-docs/modules/resolvers_Mutation_updatePost.md index 130f270c3f..40e9cfc39e 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updatePost.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updatePost.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/updatePost.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updatePost.ts#L18) +[src/resolvers/Mutation/updatePost.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updatePost.ts#L18) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateUserPassword.md b/talawa-api-docs/modules/resolvers_Mutation_updateUserPassword.md index 85aa8ad899..cc2741309b 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateUserPassword.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateUserPassword.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/updateUserPassword.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateUserPassword.ts#L10) +[src/resolvers/Mutation/updateUserPassword.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateUserPassword.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateUserProfile.md b/talawa-api-docs/modules/resolvers_Mutation_updateUserProfile.md index fed860d5d9..7e3bd766bc 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateUserProfile.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateUserProfile.md @@ -35,4 +35,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/updateUserProfile.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateUserProfile.ts#L19) +[src/resolvers/Mutation/updateUserProfile.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateUserProfile.ts#L19) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateUserRoleInOrganization.md b/talawa-api-docs/modules/resolvers_Mutation_updateUserRoleInOrganization.md index 80fce5b5a3..bc5d583dff 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateUserRoleInOrganization.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateUserRoleInOrganization.md @@ -30,4 +30,4 @@ context of entire application #### Defined in -[src/resolvers/Mutation/updateUserRoleInOrganization.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateUserRoleInOrganization.ts#L23) +[src/resolvers/Mutation/updateUserRoleInOrganization.ts:23](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateUserRoleInOrganization.ts#L23) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateUserTag.md b/talawa-api-docs/modules/resolvers_Mutation_updateUserTag.md index 0ae71a639e..9c242730c5 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateUserTag.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateUserTag.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Mutation/updateUserTag.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateUserTag.ts#L12) +[src/resolvers/Mutation/updateUserTag.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateUserTag.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Mutation_updateUserType.md b/talawa-api-docs/modules/resolvers_Mutation_updateUserType.md index 77123a6f87..f3c73805e9 100644 --- a/talawa-api-docs/modules/resolvers_Mutation_updateUserType.md +++ b/talawa-api-docs/modules/resolvers_Mutation_updateUserType.md @@ -35,4 +35,4 @@ The following checks are done: #### Defined in -[src/resolvers/Mutation/updateUserType.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Mutation/updateUserType.ts#L18) +[src/resolvers/Mutation/updateUserType.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Mutation/updateUserType.ts#L18) diff --git a/talawa-api-docs/modules/resolvers_Organization.md b/talawa-api-docs/modules/resolvers_Organization.md index 04158b4de5..50dcd6b479 100644 --- a/talawa-api-docs/modules/resolvers_Organization.md +++ b/talawa-api-docs/modules/resolvers_Organization.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Organization/index.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/index.ts#L12) +[src/resolvers/Organization/index.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/index.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Organization_actionItemCategories.md b/talawa-api-docs/modules/resolvers_Organization_actionItemCategories.md index 151f2988ac..8873e054c4 100644 --- a/talawa-api-docs/modules/resolvers_Organization_actionItemCategories.md +++ b/talawa-api-docs/modules/resolvers_Organization_actionItemCategories.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/Organization/actionItemCategories.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/actionItemCategories.ts#L8) +[src/resolvers/Organization/actionItemCategories.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/actionItemCategories.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Organization_admins.md b/talawa-api-docs/modules/resolvers_Organization_admins.md index 149f4c786d..eb90b68e1f 100644 --- a/talawa-api-docs/modules/resolvers_Organization_admins.md +++ b/talawa-api-docs/modules/resolvers_Organization_admins.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/Organization/admins.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/admins.ts#L8) +[src/resolvers/Organization/admins.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/admins.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Organization_blockedUsers.md b/talawa-api-docs/modules/resolvers_Organization_blockedUsers.md index 787058e2a3..e4d84aeaee 100644 --- a/talawa-api-docs/modules/resolvers_Organization_blockedUsers.md +++ b/talawa-api-docs/modules/resolvers_Organization_blockedUsers.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/Organization/blockedUsers.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/blockedUsers.ts#L8) +[src/resolvers/Organization/blockedUsers.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/blockedUsers.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Organization_creator.md b/talawa-api-docs/modules/resolvers_Organization_creator.md index 48fac1a0be..8b7ab267f3 100644 --- a/talawa-api-docs/modules/resolvers_Organization_creator.md +++ b/talawa-api-docs/modules/resolvers_Organization_creator.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/Organization/creator.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/creator.ts#L10) +[src/resolvers/Organization/creator.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/creator.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Organization_image.md b/talawa-api-docs/modules/resolvers_Organization_image.md index 68fdeaed13..457d284207 100644 --- a/talawa-api-docs/modules/resolvers_Organization_image.md +++ b/talawa-api-docs/modules/resolvers_Organization_image.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Organization/image.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/image.ts#L4) +[src/resolvers/Organization/image.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/image.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Organization_members.md b/talawa-api-docs/modules/resolvers_Organization_members.md index 93d3e68cab..660c0bac2a 100644 --- a/talawa-api-docs/modules/resolvers_Organization_members.md +++ b/talawa-api-docs/modules/resolvers_Organization_members.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/Organization/members.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/members.ts#L9) +[src/resolvers/Organization/members.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/members.ts#L9) diff --git a/talawa-api-docs/modules/resolvers_Organization_membershipRequests.md b/talawa-api-docs/modules/resolvers_Organization_membershipRequests.md index dac25468ba..74f6c66298 100644 --- a/talawa-api-docs/modules/resolvers_Organization_membershipRequests.md +++ b/talawa-api-docs/modules/resolvers_Organization_membershipRequests.md @@ -22,4 +22,4 @@ An object that is the return value of the resolver for this field's parent. #### Defined in -[src/resolvers/Organization/membershipRequests.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/membershipRequests.ts#L8) +[src/resolvers/Organization/membershipRequests.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/membershipRequests.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Organization_pinnedPosts.md b/talawa-api-docs/modules/resolvers_Organization_pinnedPosts.md index 4323b97156..4c6a3fd035 100644 --- a/talawa-api-docs/modules/resolvers_Organization_pinnedPosts.md +++ b/talawa-api-docs/modules/resolvers_Organization_pinnedPosts.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Organization/pinnedPosts.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Organization/pinnedPosts.ts#L6) +[src/resolvers/Organization/pinnedPosts.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Organization/pinnedPosts.ts#L6) diff --git a/talawa-api-docs/modules/resolvers_Post.md b/talawa-api-docs/modules/resolvers_Post.md index 3f980bd1ec..230ed5bbdb 100644 --- a/talawa-api-docs/modules/resolvers_Post.md +++ b/talawa-api-docs/modules/resolvers_Post.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Post/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Post/index.ts#L5) +[src/resolvers/Post/index.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Post/index.ts#L5) diff --git a/talawa-api-docs/modules/resolvers_Post_comments.md b/talawa-api-docs/modules/resolvers_Post_comments.md index 0a1e0dd055..0a17e45a21 100644 --- a/talawa-api-docs/modules/resolvers_Post_comments.md +++ b/talawa-api-docs/modules/resolvers_Post_comments.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Post/comments.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Post/comments.ts#L6) +[src/resolvers/Post/comments.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Post/comments.ts#L6) diff --git a/talawa-api-docs/modules/resolvers_Post_creator.md b/talawa-api-docs/modules/resolvers_Post_creator.md index 5fc9a317ae..1bf976afaa 100644 --- a/talawa-api-docs/modules/resolvers_Post_creator.md +++ b/talawa-api-docs/modules/resolvers_Post_creator.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Post/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Post/creator.ts#L4) +[src/resolvers/Post/creator.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Post/creator.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_Query.md b/talawa-api-docs/modules/resolvers_Query.md index 946bc4f9a4..b65a6d28fe 100644 --- a/talawa-api-docs/modules/resolvers_Query.md +++ b/talawa-api-docs/modules/resolvers_Query.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Query/index.ts:36](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/index.ts#L36) +[src/resolvers/Query/index.ts:36](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/index.ts#L36) diff --git a/talawa-api-docs/modules/resolvers_Query_actionItem.md b/talawa-api-docs/modules/resolvers_Query_actionItem.md index 2e87ab1cd0..4291d06de1 100644 --- a/talawa-api-docs/modules/resolvers_Query_actionItem.md +++ b/talawa-api-docs/modules/resolvers_Query_actionItem.md @@ -29,4 +29,4 @@ You can learn about GraphQL `Resolvers` #### Defined in -[src/resolvers/Query/actionItem.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/actionItem.ts#L13) +[src/resolvers/Query/actionItem.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/actionItem.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_actionItemCategoriesByOrganization.md b/talawa-api-docs/modules/resolvers_Query_actionItemCategoriesByOrganization.md index 0a2fed26b5..ccd45859c8 100644 --- a/talawa-api-docs/modules/resolvers_Query_actionItemCategoriesByOrganization.md +++ b/talawa-api-docs/modules/resolvers_Query_actionItemCategoriesByOrganization.md @@ -24,4 +24,4 @@ An object that contains `organizationId` which is the _id of the Organization. #### Defined in -[src/resolvers/Query/actionItemCategoriesByOrganization.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/actionItemCategoriesByOrganization.ts#L9) +[src/resolvers/Query/actionItemCategoriesByOrganization.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/actionItemCategoriesByOrganization.ts#L9) diff --git a/talawa-api-docs/modules/resolvers_Query_actionItemCategory.md b/talawa-api-docs/modules/resolvers_Query_actionItemCategory.md index e79d6f9d4a..f07db0b7ba 100644 --- a/talawa-api-docs/modules/resolvers_Query_actionItemCategory.md +++ b/talawa-api-docs/modules/resolvers_Query_actionItemCategory.md @@ -29,4 +29,4 @@ You can learn about GraphQL `Resolvers` #### Defined in -[src/resolvers/Query/actionItemCategory.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/actionItemCategory.ts#L13) +[src/resolvers/Query/actionItemCategory.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/actionItemCategory.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_actionItemsByEvent.md b/talawa-api-docs/modules/resolvers_Query_actionItemsByEvent.md index b95c39e7ee..c213294c71 100644 --- a/talawa-api-docs/modules/resolvers_Query_actionItemsByEvent.md +++ b/talawa-api-docs/modules/resolvers_Query_actionItemsByEvent.md @@ -24,4 +24,4 @@ An object that contains `eventId` which is the _id of the Event. #### Defined in -[src/resolvers/Query/actionItemsByEvent.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/actionItemsByEvent.ts#L9) +[src/resolvers/Query/actionItemsByEvent.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/actionItemsByEvent.ts#L9) diff --git a/talawa-api-docs/modules/resolvers_Query_actionItemsByOrganization.md b/talawa-api-docs/modules/resolvers_Query_actionItemsByOrganization.md index 1101879634..f3478c6529 100644 --- a/talawa-api-docs/modules/resolvers_Query_actionItemsByOrganization.md +++ b/talawa-api-docs/modules/resolvers_Query_actionItemsByOrganization.md @@ -24,4 +24,4 @@ An object that contains `organizationId` which is the _id of the Organization. #### Defined in -[src/resolvers/Query/actionItemsByOrganization.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/actionItemsByOrganization.ts#L9) +[src/resolvers/Query/actionItemsByOrganization.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/actionItemsByOrganization.ts#L9) diff --git a/talawa-api-docs/modules/resolvers_Query_checkAuth.md b/talawa-api-docs/modules/resolvers_Query_checkAuth.md index 6f32d999f8..7cd2dcbb54 100644 --- a/talawa-api-docs/modules/resolvers_Query_checkAuth.md +++ b/talawa-api-docs/modules/resolvers_Query_checkAuth.md @@ -34,4 +34,4 @@ You can learn about GraphQL `Resolvers` [here](https://www.apollographql.com/doc #### Defined in -[src/resolvers/Query/checkAuth.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/checkAuth.ts#L13) +[src/resolvers/Query/checkAuth.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/checkAuth.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_customDataByOrganization.md b/talawa-api-docs/modules/resolvers_Query_customDataByOrganization.md index d4a03badf9..4f5fef4de3 100644 --- a/talawa-api-docs/modules/resolvers_Query_customDataByOrganization.md +++ b/talawa-api-docs/modules/resolvers_Query_customDataByOrganization.md @@ -24,4 +24,4 @@ An object that contains `id` of the organization. #### Defined in -[src/resolvers/Query/customDataByOrganization.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/customDataByOrganization.ts#L13) +[src/resolvers/Query/customDataByOrganization.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/customDataByOrganization.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_customFieldsByOrganization.md b/talawa-api-docs/modules/resolvers_Query_customFieldsByOrganization.md index b0bb9cd39f..b1b2cd125f 100644 --- a/talawa-api-docs/modules/resolvers_Query_customFieldsByOrganization.md +++ b/talawa-api-docs/modules/resolvers_Query_customFieldsByOrganization.md @@ -24,4 +24,4 @@ An object that contains `id` of the organization. #### Defined in -[src/resolvers/Query/customFieldsByOrganization.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/customFieldsByOrganization.ts#L15) +[src/resolvers/Query/customFieldsByOrganization.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/customFieldsByOrganization.ts#L15) diff --git a/talawa-api-docs/modules/resolvers_Query_directChatsByUserID.md b/talawa-api-docs/modules/resolvers_Query_directChatsByUserID.md index 35475b4e9d..f22d7091ab 100644 --- a/talawa-api-docs/modules/resolvers_Query_directChatsByUserID.md +++ b/talawa-api-docs/modules/resolvers_Query_directChatsByUserID.md @@ -29,4 +29,4 @@ You can learn about GraphQL `Resolvers` #### Defined in -[src/resolvers/Query/directChatsByUserID.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/directChatsByUserID.ts#L13) +[src/resolvers/Query/directChatsByUserID.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/directChatsByUserID.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_directChatsMessagesByChatID.md b/talawa-api-docs/modules/resolvers_Query_directChatsMessagesByChatID.md index 9b7b42bd79..cf1681b6c9 100644 --- a/talawa-api-docs/modules/resolvers_Query_directChatsMessagesByChatID.md +++ b/talawa-api-docs/modules/resolvers_Query_directChatsMessagesByChatID.md @@ -29,4 +29,4 @@ You can learn about GraphQL `Resolvers` #### Defined in -[src/resolvers/Query/directChatsMessagesByChatID.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/directChatsMessagesByChatID.ts#L16) +[src/resolvers/Query/directChatsMessagesByChatID.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/directChatsMessagesByChatID.ts#L16) diff --git a/talawa-api-docs/modules/resolvers_Query_event.md b/talawa-api-docs/modules/resolvers_Query_event.md index 827689e3a7..7cca9b1997 100644 --- a/talawa-api-docs/modules/resolvers_Query_event.md +++ b/talawa-api-docs/modules/resolvers_Query_event.md @@ -29,4 +29,4 @@ You can learn about GraphQL `Resolvers` #### Defined in -[src/resolvers/Query/event.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/event.ts#L13) +[src/resolvers/Query/event.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/event.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_eventsByOrganization.md b/talawa-api-docs/modules/resolvers_Query_eventsByOrganization.md index 861c446477..12517903db 100644 --- a/talawa-api-docs/modules/resolvers_Query_eventsByOrganization.md +++ b/talawa-api-docs/modules/resolvers_Query_eventsByOrganization.md @@ -24,4 +24,4 @@ An object that contains `orderBy` to sort the object as specified and `id` of th #### Defined in -[src/resolvers/Query/eventsByOrganization.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/eventsByOrganization.ts#L10) +[src/resolvers/Query/eventsByOrganization.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/eventsByOrganization.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Query_eventsByOrganizationConnection.md b/talawa-api-docs/modules/resolvers_Query_eventsByOrganizationConnection.md index cbd49afb98..98039b47df 100644 --- a/talawa-api-docs/modules/resolvers_Query_eventsByOrganizationConnection.md +++ b/talawa-api-docs/modules/resolvers_Query_eventsByOrganizationConnection.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Query/eventsByOrganizationConnection.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/eventsByOrganizationConnection.ts#L7) +[src/resolvers/Query/eventsByOrganizationConnection.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/eventsByOrganizationConnection.ts#L7) diff --git a/talawa-api-docs/modules/resolvers_Query_getAdvertisements.md b/talawa-api-docs/modules/resolvers_Query_getAdvertisements.md index c3bfdf5067..e05899b5e2 100644 --- a/talawa-api-docs/modules/resolvers_Query_getAdvertisements.md +++ b/talawa-api-docs/modules/resolvers_Query_getAdvertisements.md @@ -18,4 +18,4 @@ This function returns list of Advertisement from the database. #### Defined in -[src/resolvers/Query/getAdvertisements.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/getAdvertisements.ts#L8) +[src/resolvers/Query/getAdvertisements.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/getAdvertisements.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Query_getDonationById.md b/talawa-api-docs/modules/resolvers_Query_getDonationById.md index 989dd3db17..949532e2d2 100644 --- a/talawa-api-docs/modules/resolvers_Query_getDonationById.md +++ b/talawa-api-docs/modules/resolvers_Query_getDonationById.md @@ -24,4 +24,4 @@ An object that contains `id` of the donation. #### Defined in -[src/resolvers/Query/getDonationById.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/getDonationById.ts#L11) +[src/resolvers/Query/getDonationById.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/getDonationById.ts#L11) diff --git a/talawa-api-docs/modules/resolvers_Query_getDonationByOrgId.md b/talawa-api-docs/modules/resolvers_Query_getDonationByOrgId.md index 33988f7795..ecf6725ed5 100644 --- a/talawa-api-docs/modules/resolvers_Query_getDonationByOrgId.md +++ b/talawa-api-docs/modules/resolvers_Query_getDonationByOrgId.md @@ -24,4 +24,4 @@ An object that contains `orgId` of the Organization. #### Defined in -[src/resolvers/Query/getDonationByOrgId.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/getDonationByOrgId.ts#L10) +[src/resolvers/Query/getDonationByOrgId.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/getDonationByOrgId.ts#L10) diff --git a/talawa-api-docs/modules/resolvers_Query_getDonationByOrgIdConnection.md b/talawa-api-docs/modules/resolvers_Query_getDonationByOrgIdConnection.md index 0595979597..c66837cf0c 100644 --- a/talawa-api-docs/modules/resolvers_Query_getDonationByOrgIdConnection.md +++ b/talawa-api-docs/modules/resolvers_Query_getDonationByOrgIdConnection.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Query/getDonationByOrgIdConnection.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/getDonationByOrgIdConnection.ts#L6) +[src/resolvers/Query/getDonationByOrgIdConnection.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/getDonationByOrgIdConnection.ts#L6) diff --git a/talawa-api-docs/modules/resolvers_Query_getPlugins.md b/talawa-api-docs/modules/resolvers_Query_getPlugins.md index 8958f2a9b3..8fa5ae6720 100644 --- a/talawa-api-docs/modules/resolvers_Query_getPlugins.md +++ b/talawa-api-docs/modules/resolvers_Query_getPlugins.md @@ -18,4 +18,4 @@ This function returns list of plugins from the database. #### Defined in -[src/resolvers/Query/getPlugins.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/getPlugins.ts#L8) +[src/resolvers/Query/getPlugins.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/getPlugins.ts#L8) diff --git a/talawa-api-docs/modules/resolvers_Query_getlanguage.md b/talawa-api-docs/modules/resolvers_Query_getlanguage.md index 3b3f17835b..756e6a48b8 100644 --- a/talawa-api-docs/modules/resolvers_Query_getlanguage.md +++ b/talawa-api-docs/modules/resolvers_Query_getlanguage.md @@ -24,4 +24,4 @@ An object that contains `lang_code`. #### Defined in -[src/resolvers/Query/getlanguage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/getlanguage.ts#L12) +[src/resolvers/Query/getlanguage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/getlanguage.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Query_hasSubmittedFeedback.md b/talawa-api-docs/modules/resolvers_Query_hasSubmittedFeedback.md index 7d3a1e7f73..f573dcbc30 100644 --- a/talawa-api-docs/modules/resolvers_Query_hasSubmittedFeedback.md +++ b/talawa-api-docs/modules/resolvers_Query_hasSubmittedFeedback.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Query/hasSubmittedFeedback.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/hasSubmittedFeedback.ts#L11) +[src/resolvers/Query/hasSubmittedFeedback.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/hasSubmittedFeedback.ts#L11) diff --git a/talawa-api-docs/modules/resolvers_Query_helperFunctions_getSort.md b/talawa-api-docs/modules/resolvers_Query_helperFunctions_getSort.md index 917a2dcbe7..55834a8557 100644 --- a/talawa-api-docs/modules/resolvers_Query_helperFunctions_getSort.md +++ b/talawa-api-docs/modules/resolvers_Query_helperFunctions_getSort.md @@ -26,4 +26,4 @@ #### Defined in -[src/resolvers/Query/helperFunctions/getSort.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/helperFunctions/getSort.ts#L9) +[src/resolvers/Query/helperFunctions/getSort.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/helperFunctions/getSort.ts#L9) diff --git a/talawa-api-docs/modules/resolvers_Query_helperFunctions_getWhere.md b/talawa-api-docs/modules/resolvers_Query_helperFunctions_getWhere.md index f2ac5f0698..771e798230 100644 --- a/talawa-api-docs/modules/resolvers_Query_helperFunctions_getWhere.md +++ b/talawa-api-docs/modules/resolvers_Query_helperFunctions_getWhere.md @@ -48,4 +48,4 @@ const inputArgs = getWhere\(args.where); #### Defined in -[src/resolvers/Query/helperFunctions/getWhere.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/helperFunctions/getWhere.ts#L24) +[src/resolvers/Query/helperFunctions/getWhere.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/helperFunctions/getWhere.ts#L24) diff --git a/talawa-api-docs/modules/resolvers_Query_me.md b/talawa-api-docs/modules/resolvers_Query_me.md index c40d3945ac..e3979e2854 100644 --- a/talawa-api-docs/modules/resolvers_Query_me.md +++ b/talawa-api-docs/modules/resolvers_Query_me.md @@ -26,4 +26,4 @@ An object that contains `userId`. #### Defined in -[src/resolvers/Query/me.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/me.ts#L13) +[src/resolvers/Query/me.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/me.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_myLanguage.md b/talawa-api-docs/modules/resolvers_Query_myLanguage.md index ffc47d2eaf..2f5a5dd88c 100644 --- a/talawa-api-docs/modules/resolvers_Query_myLanguage.md +++ b/talawa-api-docs/modules/resolvers_Query_myLanguage.md @@ -26,4 +26,4 @@ An object that contains `userId`. #### Defined in -[src/resolvers/Query/myLanguage.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/myLanguage.ts#L13) +[src/resolvers/Query/myLanguage.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/myLanguage.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_organizationIsSample.md b/talawa-api-docs/modules/resolvers_Query_organizationIsSample.md index 98756bb684..7141a73e41 100644 --- a/talawa-api-docs/modules/resolvers_Query_organizationIsSample.md +++ b/talawa-api-docs/modules/resolvers_Query_organizationIsSample.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Query/organizationIsSample.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/organizationIsSample.ts#L6) +[src/resolvers/Query/organizationIsSample.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/organizationIsSample.ts#L6) diff --git a/talawa-api-docs/modules/resolvers_Query_organizations.md b/talawa-api-docs/modules/resolvers_Query_organizations.md index 5a8d9a6e06..8a4672c1c2 100644 --- a/talawa-api-docs/modules/resolvers_Query_organizations.md +++ b/talawa-api-docs/modules/resolvers_Query_organizations.md @@ -29,4 +29,4 @@ An object containing `orderBy` and `id` of the Organization. #### Defined in -[src/resolvers/Query/organizations.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/organizations.ts#L16) +[src/resolvers/Query/organizations.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/organizations.ts#L16) diff --git a/talawa-api-docs/modules/resolvers_Query_organizationsConnection.md b/talawa-api-docs/modules/resolvers_Query_organizationsConnection.md index 49661558b2..b1402dfa2c 100644 --- a/talawa-api-docs/modules/resolvers_Query_organizationsConnection.md +++ b/talawa-api-docs/modules/resolvers_Query_organizationsConnection.md @@ -32,4 +32,4 @@ learn more about Connection [here](https://relay.dev/graphql/connections.htm). #### Defined in -[src/resolvers/Query/organizationsConnection.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/organizationsConnection.ts#L18) +[src/resolvers/Query/organizationsConnection.ts:18](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/organizationsConnection.ts#L18) diff --git a/talawa-api-docs/modules/resolvers_Query_organizationsMemberConnection.md b/talawa-api-docs/modules/resolvers_Query_organizationsMemberConnection.md index b4e3df05dd..a1f90596ce 100644 --- a/talawa-api-docs/modules/resolvers_Query_organizationsMemberConnection.md +++ b/talawa-api-docs/modules/resolvers_Query_organizationsMemberConnection.md @@ -32,4 +32,4 @@ learn more about Connection [here](https://relay.dev/graphql/connections.htm). #### Defined in -[src/resolvers/Query/organizationsMemberConnection.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/organizationsMemberConnection.ts#L19) +[src/resolvers/Query/organizationsMemberConnection.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/organizationsMemberConnection.ts#L19) diff --git a/talawa-api-docs/modules/resolvers_Query_post.md b/talawa-api-docs/modules/resolvers_Query_post.md index 1adf7465bc..2635dd790c 100644 --- a/talawa-api-docs/modules/resolvers_Query_post.md +++ b/talawa-api-docs/modules/resolvers_Query_post.md @@ -24,4 +24,4 @@ An object that contains `id` of the Post. #### Defined in -[src/resolvers/Query/post.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/post.ts#L11) +[src/resolvers/Query/post.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/post.ts#L11) diff --git a/talawa-api-docs/modules/resolvers_Query_postsByOrganization.md b/talawa-api-docs/modules/resolvers_Query_postsByOrganization.md index 17a465beed..239637bb34 100644 --- a/talawa-api-docs/modules/resolvers_Query_postsByOrganization.md +++ b/talawa-api-docs/modules/resolvers_Query_postsByOrganization.md @@ -28,4 +28,4 @@ The query function uses `getSort()` function to sort the data in specified order #### Defined in -[src/resolvers/Query/postsByOrganization.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/postsByOrganization.ts#L13) +[src/resolvers/Query/postsByOrganization.ts:13](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/postsByOrganization.ts#L13) diff --git a/talawa-api-docs/modules/resolvers_Query_postsByOrganizationConnection.md b/talawa-api-docs/modules/resolvers_Query_postsByOrganizationConnection.md index 9fb9be43b8..1ae41b60eb 100644 --- a/talawa-api-docs/modules/resolvers_Query_postsByOrganizationConnection.md +++ b/talawa-api-docs/modules/resolvers_Query_postsByOrganizationConnection.md @@ -32,4 +32,4 @@ learn more about Connection [here](https://relay.dev/graphql/connections.htm). #### Defined in -[src/resolvers/Query/postsByOrganizationConnection.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/postsByOrganizationConnection.ts#L19) +[src/resolvers/Query/postsByOrganizationConnection.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/postsByOrganizationConnection.ts#L19) diff --git a/talawa-api-docs/modules/resolvers_Query_registeredEventsByUser.md b/talawa-api-docs/modules/resolvers_Query_registeredEventsByUser.md index 72969d9c26..096244fdf5 100644 --- a/talawa-api-docs/modules/resolvers_Query_registeredEventsByUser.md +++ b/talawa-api-docs/modules/resolvers_Query_registeredEventsByUser.md @@ -28,4 +28,4 @@ The query function uses `getSort()` function to sort the data in specified. #### Defined in -[src/resolvers/Query/registeredEventsByUser.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/registeredEventsByUser.ts#L12) +[src/resolvers/Query/registeredEventsByUser.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/registeredEventsByUser.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Query_user.md b/talawa-api-docs/modules/resolvers_Query_user.md index c858bfb5e6..4e242fb81e 100644 --- a/talawa-api-docs/modules/resolvers_Query_user.md +++ b/talawa-api-docs/modules/resolvers_Query_user.md @@ -26,4 +26,4 @@ An object that contains `id` for the user. #### Defined in -[src/resolvers/Query/user.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/user.ts#L12) +[src/resolvers/Query/user.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/user.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Query_userLanguage.md b/talawa-api-docs/modules/resolvers_Query_userLanguage.md index e8aaecca93..53c28e7816 100644 --- a/talawa-api-docs/modules/resolvers_Query_userLanguage.md +++ b/talawa-api-docs/modules/resolvers_Query_userLanguage.md @@ -24,4 +24,4 @@ An object that contains `userId`. #### Defined in -[src/resolvers/Query/userLanguage.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/userLanguage.ts#L11) +[src/resolvers/Query/userLanguage.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/userLanguage.ts#L11) diff --git a/talawa-api-docs/modules/resolvers_Query_users.md b/talawa-api-docs/modules/resolvers_Query_users.md index 48c0c09c3e..153560d211 100644 --- a/talawa-api-docs/modules/resolvers_Query_users.md +++ b/talawa-api-docs/modules/resolvers_Query_users.md @@ -30,4 +30,4 @@ The query function uses `getSort()` function to sort the data in specified. #### Defined in -[src/resolvers/Query/users.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/users.ts#L17) +[src/resolvers/Query/users.ts:17](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/users.ts#L17) diff --git a/talawa-api-docs/modules/resolvers_Query_usersConnection.md b/talawa-api-docs/modules/resolvers_Query_usersConnection.md index 9acc235d0b..7f8a2fab3b 100644 --- a/talawa-api-docs/modules/resolvers_Query_usersConnection.md +++ b/talawa-api-docs/modules/resolvers_Query_usersConnection.md @@ -29,4 +29,4 @@ learn more about Connection [here](https://relay.dev/graphql/connections.htm). #### Defined in -[src/resolvers/Query/usersConnection.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Query/usersConnection.ts#L15) +[src/resolvers/Query/usersConnection.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Query/usersConnection.ts#L15) diff --git a/talawa-api-docs/modules/resolvers_Subscription.md b/talawa-api-docs/modules/resolvers_Subscription.md index 5e054ab83a..439dc20b29 100644 --- a/talawa-api-docs/modules/resolvers_Subscription.md +++ b/talawa-api-docs/modules/resolvers_Subscription.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/Subscription/index.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Subscription/index.ts#L6) +[src/resolvers/Subscription/index.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Subscription/index.ts#L6) diff --git a/talawa-api-docs/modules/resolvers_Subscription_directMessageChat.md b/talawa-api-docs/modules/resolvers_Subscription_directMessageChat.md index 48735ee928..e3cdd0774b 100644 --- a/talawa-api-docs/modules/resolvers_Subscription_directMessageChat.md +++ b/talawa-api-docs/modules/resolvers_Subscription_directMessageChat.md @@ -25,4 +25,4 @@ You can learn about `subscription` [here](https://www.apollographql.com/docs/apo #### Defined in -[src/resolvers/Subscription/directMessageChat.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Subscription/directMessageChat.ts#L12) +[src/resolvers/Subscription/directMessageChat.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Subscription/directMessageChat.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_Subscription_messageSentToDirectChat.md b/talawa-api-docs/modules/resolvers_Subscription_messageSentToDirectChat.md index fd0f9d8389..54e5640d2e 100644 --- a/talawa-api-docs/modules/resolvers_Subscription_messageSentToDirectChat.md +++ b/talawa-api-docs/modules/resolvers_Subscription_messageSentToDirectChat.md @@ -29,7 +29,7 @@ You can learn about `subscription` [here](https://www.apollographql.com/docs/apo #### Defined in -[src/resolvers/Subscription/messageSentToDirectChat.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Subscription/messageSentToDirectChat.ts#L21) +[src/resolvers/Subscription/messageSentToDirectChat.ts:21](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Subscription/messageSentToDirectChat.ts#L21) ## Functions @@ -50,4 +50,4 @@ You can learn about `subscription` [here](https://www.apollographql.com/docs/apo #### Defined in -[src/resolvers/Subscription/messageSentToDirectChat.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Subscription/messageSentToDirectChat.ts#L6) +[src/resolvers/Subscription/messageSentToDirectChat.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Subscription/messageSentToDirectChat.ts#L6) diff --git a/talawa-api-docs/modules/resolvers_Subscription_messageSentToGroupChat.md b/talawa-api-docs/modules/resolvers_Subscription_messageSentToGroupChat.md index ebf69b34e6..ef65da4eac 100644 --- a/talawa-api-docs/modules/resolvers_Subscription_messageSentToGroupChat.md +++ b/talawa-api-docs/modules/resolvers_Subscription_messageSentToGroupChat.md @@ -29,7 +29,7 @@ You can learn about `subscription` [here](https://www.apollographql.com/docs/apo #### Defined in -[src/resolvers/Subscription/messageSentToGroupChat.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Subscription/messageSentToGroupChat.ts#L35) +[src/resolvers/Subscription/messageSentToGroupChat.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Subscription/messageSentToGroupChat.ts#L35) ## Functions @@ -50,4 +50,4 @@ You can learn about `subscription` [here](https://www.apollographql.com/docs/apo #### Defined in -[src/resolvers/Subscription/messageSentToGroupChat.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Subscription/messageSentToGroupChat.ts#L7) +[src/resolvers/Subscription/messageSentToGroupChat.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Subscription/messageSentToGroupChat.ts#L7) diff --git a/talawa-api-docs/modules/resolvers_Subscription_onPluginUpdate.md b/talawa-api-docs/modules/resolvers_Subscription_onPluginUpdate.md index 0339b7c890..2e136ac838 100644 --- a/talawa-api-docs/modules/resolvers_Subscription_onPluginUpdate.md +++ b/talawa-api-docs/modules/resolvers_Subscription_onPluginUpdate.md @@ -20,7 +20,7 @@ #### Defined in -[src/resolvers/Subscription/onPluginUpdate.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Subscription/onPluginUpdate.ts#L28) +[src/resolvers/Subscription/onPluginUpdate.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Subscription/onPluginUpdate.ts#L28) ## Functions @@ -50,4 +50,4 @@ You can learn about `subscription` [here](https://www.apollographql.com/docs/apo #### Defined in -[src/resolvers/Subscription/onPluginUpdate.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/Subscription/onPluginUpdate.ts#L19) +[src/resolvers/Subscription/onPluginUpdate.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/Subscription/onPluginUpdate.ts#L19) diff --git a/talawa-api-docs/modules/resolvers_User.md b/talawa-api-docs/modules/resolvers_User.md index 9d951863d6..4080931c15 100644 --- a/talawa-api-docs/modules/resolvers_User.md +++ b/talawa-api-docs/modules/resolvers_User.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/User/index.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/User/index.ts#L4) +[src/resolvers/User/index.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/User/index.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_UserTag.md b/talawa-api-docs/modules/resolvers_UserTag.md index dbc8df7f71..2690c899c2 100644 --- a/talawa-api-docs/modules/resolvers_UserTag.md +++ b/talawa-api-docs/modules/resolvers_UserTag.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/UserTag/index.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/UserTag/index.ts#L7) +[src/resolvers/UserTag/index.ts:7](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/UserTag/index.ts#L7) diff --git a/talawa-api-docs/modules/resolvers_UserTag_childTags.md b/talawa-api-docs/modules/resolvers_UserTag_childTags.md index 9f98ee871e..59ec87a7e9 100644 --- a/talawa-api-docs/modules/resolvers_UserTag_childTags.md +++ b/talawa-api-docs/modules/resolvers_UserTag_childTags.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/UserTag/childTags.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/UserTag/childTags.ts#L12) +[src/resolvers/UserTag/childTags.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/UserTag/childTags.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_UserTag_organization.md b/talawa-api-docs/modules/resolvers_UserTag_organization.md index ca4e0b6a80..5f80e7cbbb 100644 --- a/talawa-api-docs/modules/resolvers_UserTag_organization.md +++ b/talawa-api-docs/modules/resolvers_UserTag_organization.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/UserTag/organization.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/UserTag/organization.ts#L4) +[src/resolvers/UserTag/organization.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/UserTag/organization.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_UserTag_parentTag.md b/talawa-api-docs/modules/resolvers_UserTag_parentTag.md index 79e5648512..f9f6d80fc8 100644 --- a/talawa-api-docs/modules/resolvers_UserTag_parentTag.md +++ b/talawa-api-docs/modules/resolvers_UserTag_parentTag.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/UserTag/parentTag.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/UserTag/parentTag.ts#L4) +[src/resolvers/UserTag/parentTag.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/UserTag/parentTag.ts#L4) diff --git a/talawa-api-docs/modules/resolvers_UserTag_usersAssignedTo.md b/talawa-api-docs/modules/resolvers_UserTag_usersAssignedTo.md index 919fcaf290..c8b5a12f09 100644 --- a/talawa-api-docs/modules/resolvers_UserTag_usersAssignedTo.md +++ b/talawa-api-docs/modules/resolvers_UserTag_usersAssignedTo.md @@ -16,4 +16,4 @@ #### Defined in -[src/resolvers/UserTag/usersAssignedTo.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/UserTag/usersAssignedTo.ts#L12) +[src/resolvers/UserTag/usersAssignedTo.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/UserTag/usersAssignedTo.ts#L12) diff --git a/talawa-api-docs/modules/resolvers_middleware_currentUserExists.md b/talawa-api-docs/modules/resolvers_middleware_currentUserExists.md index e591cebff4..23bd493372 100644 --- a/talawa-api-docs/modules/resolvers_middleware_currentUserExists.md +++ b/talawa-api-docs/modules/resolvers_middleware_currentUserExists.md @@ -48,4 +48,4 @@ #### Defined in -[src/resolvers/middleware/currentUserExists.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/resolvers/middleware/currentUserExists.ts#L8) +[src/resolvers/middleware/currentUserExists.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/resolvers/middleware/currentUserExists.ts#L8) diff --git a/talawa-api-docs/modules/services_CommentCache_cacheComments.md b/talawa-api-docs/modules/services_CommentCache_cacheComments.md index 9f0e690918..df1e3c3390 100644 --- a/talawa-api-docs/modules/services_CommentCache_cacheComments.md +++ b/talawa-api-docs/modules/services_CommentCache_cacheComments.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/CommentCache/cacheComments.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/CommentCache/cacheComments.ts#L6) +[src/services/CommentCache/cacheComments.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/CommentCache/cacheComments.ts#L6) diff --git a/talawa-api-docs/modules/services_CommentCache_deleteCommentFromCache.md b/talawa-api-docs/modules/services_CommentCache_deleteCommentFromCache.md index b6f32e2ec2..e5f394cbe6 100644 --- a/talawa-api-docs/modules/services_CommentCache_deleteCommentFromCache.md +++ b/talawa-api-docs/modules/services_CommentCache_deleteCommentFromCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/CommentCache/deleteCommentFromCache.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/CommentCache/deleteCommentFromCache.ts#L4) +[src/services/CommentCache/deleteCommentFromCache.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/CommentCache/deleteCommentFromCache.ts#L4) diff --git a/talawa-api-docs/modules/services_CommentCache_findCommentsByPostIdInCache.md b/talawa-api-docs/modules/services_CommentCache_findCommentsByPostIdInCache.md index ddde770290..4a5ce5cdf9 100644 --- a/talawa-api-docs/modules/services_CommentCache_findCommentsByPostIdInCache.md +++ b/talawa-api-docs/modules/services_CommentCache_findCommentsByPostIdInCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/CommentCache/findCommentsByPostIdInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/CommentCache/findCommentsByPostIdInCache.ts#L6) +[src/services/CommentCache/findCommentsByPostIdInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/CommentCache/findCommentsByPostIdInCache.ts#L6) diff --git a/talawa-api-docs/modules/services_CommentCache_findCommentsInCache.md b/talawa-api-docs/modules/services_CommentCache_findCommentsInCache.md index 7dadba0556..46e241981c 100644 --- a/talawa-api-docs/modules/services_CommentCache_findCommentsInCache.md +++ b/talawa-api-docs/modules/services_CommentCache_findCommentsInCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/CommentCache/findCommentsInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/CommentCache/findCommentsInCache.ts#L6) +[src/services/CommentCache/findCommentsInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/CommentCache/findCommentsInCache.ts#L6) diff --git a/talawa-api-docs/modules/services_EventCache_cacheEvents.md b/talawa-api-docs/modules/services_EventCache_cacheEvents.md index 507bb317d4..5ac678e892 100644 --- a/talawa-api-docs/modules/services_EventCache_cacheEvents.md +++ b/talawa-api-docs/modules/services_EventCache_cacheEvents.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/EventCache/cacheEvents.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/EventCache/cacheEvents.ts#L6) +[src/services/EventCache/cacheEvents.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/EventCache/cacheEvents.ts#L6) diff --git a/talawa-api-docs/modules/services_EventCache_deleteEventFromCache.md b/talawa-api-docs/modules/services_EventCache_deleteEventFromCache.md index 1c7bf23eb4..ec08c2b039 100644 --- a/talawa-api-docs/modules/services_EventCache_deleteEventFromCache.md +++ b/talawa-api-docs/modules/services_EventCache_deleteEventFromCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/EventCache/deleteEventFromCache.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/EventCache/deleteEventFromCache.ts#L4) +[src/services/EventCache/deleteEventFromCache.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/EventCache/deleteEventFromCache.ts#L4) diff --git a/talawa-api-docs/modules/services_EventCache_findEventInCache.md b/talawa-api-docs/modules/services_EventCache_findEventInCache.md index 77c9d57636..b0b9260420 100644 --- a/talawa-api-docs/modules/services_EventCache_findEventInCache.md +++ b/talawa-api-docs/modules/services_EventCache_findEventInCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/EventCache/findEventInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/EventCache/findEventInCache.ts#L6) +[src/services/EventCache/findEventInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/EventCache/findEventInCache.ts#L6) diff --git a/talawa-api-docs/modules/services_OrganizationCache_cacheOrganizations.md b/talawa-api-docs/modules/services_OrganizationCache_cacheOrganizations.md index fe0ff4c8ad..ad7db88ee0 100644 --- a/talawa-api-docs/modules/services_OrganizationCache_cacheOrganizations.md +++ b/talawa-api-docs/modules/services_OrganizationCache_cacheOrganizations.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/OrganizationCache/cacheOrganizations.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/OrganizationCache/cacheOrganizations.ts#L6) +[src/services/OrganizationCache/cacheOrganizations.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/OrganizationCache/cacheOrganizations.ts#L6) diff --git a/talawa-api-docs/modules/services_OrganizationCache_deleteOrganizationFromCache.md b/talawa-api-docs/modules/services_OrganizationCache_deleteOrganizationFromCache.md index 2da4c97c0e..b401ef4d60 100644 --- a/talawa-api-docs/modules/services_OrganizationCache_deleteOrganizationFromCache.md +++ b/talawa-api-docs/modules/services_OrganizationCache_deleteOrganizationFromCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/OrganizationCache/deleteOrganizationFromCache.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/OrganizationCache/deleteOrganizationFromCache.ts#L4) +[src/services/OrganizationCache/deleteOrganizationFromCache.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/OrganizationCache/deleteOrganizationFromCache.ts#L4) diff --git a/talawa-api-docs/modules/services_OrganizationCache_findOrganizationsInCache.md b/talawa-api-docs/modules/services_OrganizationCache_findOrganizationsInCache.md index 9ca4bba556..539ec87b5c 100644 --- a/talawa-api-docs/modules/services_OrganizationCache_findOrganizationsInCache.md +++ b/talawa-api-docs/modules/services_OrganizationCache_findOrganizationsInCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/OrganizationCache/findOrganizationsInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/OrganizationCache/findOrganizationsInCache.ts#L6) +[src/services/OrganizationCache/findOrganizationsInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/OrganizationCache/findOrganizationsInCache.ts#L6) diff --git a/talawa-api-docs/modules/services_PostCache_cachePosts.md b/talawa-api-docs/modules/services_PostCache_cachePosts.md index 94d7feb476..dade07b416 100644 --- a/talawa-api-docs/modules/services_PostCache_cachePosts.md +++ b/talawa-api-docs/modules/services_PostCache_cachePosts.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/PostCache/cachePosts.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/PostCache/cachePosts.ts#L6) +[src/services/PostCache/cachePosts.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/PostCache/cachePosts.ts#L6) diff --git a/talawa-api-docs/modules/services_PostCache_deletePostFromCache.md b/talawa-api-docs/modules/services_PostCache_deletePostFromCache.md index 908a8e6aeb..82a3c0c79c 100644 --- a/talawa-api-docs/modules/services_PostCache_deletePostFromCache.md +++ b/talawa-api-docs/modules/services_PostCache_deletePostFromCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/PostCache/deletePostFromCache.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/PostCache/deletePostFromCache.ts#L3) +[src/services/PostCache/deletePostFromCache.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/PostCache/deletePostFromCache.ts#L3) diff --git a/talawa-api-docs/modules/services_PostCache_findPostsInCache.md b/talawa-api-docs/modules/services_PostCache_findPostsInCache.md index cacb266c3c..c3b6e5fff7 100644 --- a/talawa-api-docs/modules/services_PostCache_findPostsInCache.md +++ b/talawa-api-docs/modules/services_PostCache_findPostsInCache.md @@ -26,4 +26,4 @@ #### Defined in -[src/services/PostCache/findPostsInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/PostCache/findPostsInCache.ts#L6) +[src/services/PostCache/findPostsInCache.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/PostCache/findPostsInCache.ts#L6) diff --git a/talawa-api-docs/modules/services_redisCache.md b/talawa-api-docs/modules/services_redisCache.md index 17dd41fcc9..9204516648 100644 --- a/talawa-api-docs/modules/services_redisCache.md +++ b/talawa-api-docs/modules/services_redisCache.md @@ -16,4 +16,4 @@ #### Defined in -[src/services/redisCache.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/services/redisCache.ts#L4) +[src/services/redisCache.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/services/redisCache.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs.md b/talawa-api-docs/modules/typeDefs.md index 5400d16317..326fe27d59 100644 --- a/talawa-api-docs/modules/typeDefs.md +++ b/talawa-api-docs/modules/typeDefs.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/index.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/index.ts#L19) +[src/typeDefs/index.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/index.ts#L19) diff --git a/talawa-api-docs/modules/typeDefs_directives.md b/talawa-api-docs/modules/typeDefs_directives.md index dd95d595e4..087189060b 100644 --- a/talawa-api-docs/modules/typeDefs_directives.md +++ b/talawa-api-docs/modules/typeDefs_directives.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/directives.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/directives.ts#L4) +[src/typeDefs/directives.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/directives.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs_enums.md b/talawa-api-docs/modules/typeDefs_enums.md index ecb2508de6..5f5d58aa46 100644 --- a/talawa-api-docs/modules/typeDefs_enums.md +++ b/talawa-api-docs/modules/typeDefs_enums.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/enums.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/enums.ts#L4) +[src/typeDefs/enums.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/enums.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs_errors.md b/talawa-api-docs/modules/typeDefs_errors.md index f95d383762..5f3f27a879 100644 --- a/talawa-api-docs/modules/typeDefs_errors.md +++ b/talawa-api-docs/modules/typeDefs_errors.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/errors/index.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/errors/index.ts#L4) +[src/typeDefs/errors/index.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/errors/index.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs_errors_common.md b/talawa-api-docs/modules/typeDefs_errors_common.md index bf662f6330..8f4e56f0a7 100644 --- a/talawa-api-docs/modules/typeDefs_errors_common.md +++ b/talawa-api-docs/modules/typeDefs_errors_common.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/errors/common.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/errors/common.ts#L3) +[src/typeDefs/errors/common.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/errors/common.ts#L3) diff --git a/talawa-api-docs/modules/typeDefs_errors_connectionError.md b/talawa-api-docs/modules/typeDefs_errors_connectionError.md index 1dc1a69199..d2a7090ae3 100644 --- a/talawa-api-docs/modules/typeDefs_errors_connectionError.md +++ b/talawa-api-docs/modules/typeDefs_errors_connectionError.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/errors/connectionError.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/errors/connectionError.ts#L3) +[src/typeDefs/errors/connectionError.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/errors/connectionError.ts#L3) diff --git a/talawa-api-docs/modules/typeDefs_inputs.md b/talawa-api-docs/modules/typeDefs_inputs.md index 5c32a74b11..f4d199fa0c 100644 --- a/talawa-api-docs/modules/typeDefs_inputs.md +++ b/talawa-api-docs/modules/typeDefs_inputs.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/inputs.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/inputs.ts#L4) +[src/typeDefs/inputs.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/inputs.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs_interfaces.md b/talawa-api-docs/modules/typeDefs_interfaces.md index 73ceff28cf..26ead76d64 100644 --- a/talawa-api-docs/modules/typeDefs_interfaces.md +++ b/talawa-api-docs/modules/typeDefs_interfaces.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/interfaces.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/interfaces.ts#L4) +[src/typeDefs/interfaces.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/interfaces.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs_mutations.md b/talawa-api-docs/modules/typeDefs_mutations.md index f770e82fe8..daee7390d8 100644 --- a/talawa-api-docs/modules/typeDefs_mutations.md +++ b/talawa-api-docs/modules/typeDefs_mutations.md @@ -18,4 +18,4 @@ This graphQL typeDef defines the logic for different mutations defined in the ta #### Defined in -[src/typeDefs/mutations.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/mutations.ts#L6) +[src/typeDefs/mutations.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/mutations.ts#L6) diff --git a/talawa-api-docs/modules/typeDefs_queries.md b/talawa-api-docs/modules/typeDefs_queries.md index 69dabf8510..9d1c9d6f78 100644 --- a/talawa-api-docs/modules/typeDefs_queries.md +++ b/talawa-api-docs/modules/typeDefs_queries.md @@ -18,4 +18,4 @@ This graphQL typeDef defines the logic for different queries defined in the tala #### Defined in -[src/typeDefs/queries.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/queries.ts#L6) +[src/typeDefs/queries.ts:6](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/queries.ts#L6) diff --git a/talawa-api-docs/modules/typeDefs_scalars.md b/talawa-api-docs/modules/typeDefs_scalars.md index 73f6418635..b2931641bb 100644 --- a/talawa-api-docs/modules/typeDefs_scalars.md +++ b/talawa-api-docs/modules/typeDefs_scalars.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/scalars.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/scalars.ts#L4) +[src/typeDefs/scalars.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/scalars.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs_subscriptions.md b/talawa-api-docs/modules/typeDefs_subscriptions.md index a9b09b4219..b2f91f2317 100644 --- a/talawa-api-docs/modules/typeDefs_subscriptions.md +++ b/talawa-api-docs/modules/typeDefs_subscriptions.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/subscriptions.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/subscriptions.ts#L4) +[src/typeDefs/subscriptions.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/subscriptions.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs_types.md b/talawa-api-docs/modules/typeDefs_types.md index 7bdbb3a450..8eb5526f3d 100644 --- a/talawa-api-docs/modules/typeDefs_types.md +++ b/talawa-api-docs/modules/typeDefs_types.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/types.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/types.ts#L4) +[src/typeDefs/types.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/types.ts#L4) diff --git a/talawa-api-docs/modules/typeDefs_unions.md b/talawa-api-docs/modules/typeDefs_unions.md index 19b0bfddd6..ff78c9d9cb 100644 --- a/talawa-api-docs/modules/typeDefs_unions.md +++ b/talawa-api-docs/modules/typeDefs_unions.md @@ -16,4 +16,4 @@ #### Defined in -[src/typeDefs/unions.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/typeDefs/unions.ts#L4) +[src/typeDefs/unions.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/typeDefs/unions.ts#L4) diff --git a/talawa-api-docs/modules/types_generatedGraphQLTypes.md b/talawa-api-docs/modules/types_generatedGraphQLTypes.md index 96a0b72605..44998d7b24 100644 --- a/talawa-api-docs/modules/types_generatedGraphQLTypes.md +++ b/talawa-api-docs/modules/types_generatedGraphQLTypes.md @@ -387,7 +387,7 @@ #### Defined in -[src/types/generatedGraphQLTypes.ts:56](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L56) +[src/types/generatedGraphQLTypes.ts:56](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L56) ___ @@ -410,7 +410,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:74](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L74) +[src/types/generatedGraphQLTypes.ts:74](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L74) ___ @@ -440,7 +440,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2346](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2346) +[src/types/generatedGraphQLTypes.ts:2346](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2346) ___ @@ -477,7 +477,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2328](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2328) +[src/types/generatedGraphQLTypes.ts:2328](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2328) ___ @@ -501,7 +501,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:85](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L85) +[src/types/generatedGraphQLTypes.ts:85](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L85) ___ @@ -524,7 +524,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:97](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L97) +[src/types/generatedGraphQLTypes.ts:97](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L97) ___ @@ -555,7 +555,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2357](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2357) +[src/types/generatedGraphQLTypes.ts:2357](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2357) ___ @@ -581,7 +581,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:108](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L108) +[src/types/generatedGraphQLTypes.ts:108](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L108) ___ @@ -614,7 +614,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2369](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2369) +[src/types/generatedGraphQLTypes.ts:2369](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2369) ___ @@ -624,7 +624,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:122](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L122) +[src/types/generatedGraphQLTypes.ts:122](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L122) ___ @@ -641,7 +641,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:127](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L127) +[src/types/generatedGraphQLTypes.ts:127](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L127) ___ @@ -665,7 +665,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2383](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2383) +[src/types/generatedGraphQLTypes.ts:2383](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2383) ___ @@ -682,7 +682,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:132](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L132) +[src/types/generatedGraphQLTypes.ts:132](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L132) ___ @@ -706,7 +706,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2388](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2388) +[src/types/generatedGraphQLTypes.ts:2388](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2388) ___ @@ -725,7 +725,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:137](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L137) +[src/types/generatedGraphQLTypes.ts:137](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L137) ___ @@ -751,7 +751,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2397](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2397) +[src/types/generatedGraphQLTypes.ts:2397](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2397) ___ @@ -761,7 +761,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2318](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2318) +[src/types/generatedGraphQLTypes.ts:2318](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2318) ___ @@ -780,7 +780,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2320](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2320) +[src/types/generatedGraphQLTypes.ts:2320](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2320) ___ @@ -805,7 +805,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:144](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L144) +[src/types/generatedGraphQLTypes.ts:144](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L144) ___ @@ -824,7 +824,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:157](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L157) +[src/types/generatedGraphQLTypes.ts:157](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L157) ___ @@ -856,7 +856,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2404](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2404) +[src/types/generatedGraphQLTypes.ts:2404](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2404) ___ @@ -875,7 +875,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:164](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L164) +[src/types/generatedGraphQLTypes.ts:164](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L164) ___ @@ -901,7 +901,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2417](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2417) +[src/types/generatedGraphQLTypes.ts:2417](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2417) ___ @@ -925,7 +925,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:171](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L171) +[src/types/generatedGraphQLTypes.ts:171](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L171) ___ @@ -941,7 +941,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:183](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L183) +[src/types/generatedGraphQLTypes.ts:183](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L183) ___ @@ -972,7 +972,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2424](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2424) +[src/types/generatedGraphQLTypes.ts:2424](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2424) ___ @@ -982,7 +982,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:187](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L187) +[src/types/generatedGraphQLTypes.ts:187](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L187) ___ @@ -1005,7 +1005,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2436](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2436) +[src/types/generatedGraphQLTypes.ts:2436](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2436) ___ @@ -1025,7 +1025,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:189](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L189) +[src/types/generatedGraphQLTypes.ts:189](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L189) ___ @@ -1052,7 +1052,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2440](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2440) +[src/types/generatedGraphQLTypes.ts:2440](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2440) ___ @@ -1071,7 +1071,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:197](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L197) +[src/types/generatedGraphQLTypes.ts:197](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L197) ___ @@ -1088,7 +1088,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1969](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1969) +[src/types/generatedGraphQLTypes.ts:1969](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1969) ___ @@ -1106,7 +1106,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1974](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1974) +[src/types/generatedGraphQLTypes.ts:1974](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1974) ___ @@ -1124,7 +1124,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:204](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L204) +[src/types/generatedGraphQLTypes.ts:204](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L204) ___ @@ -1142,7 +1142,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:210](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L210) +[src/types/generatedGraphQLTypes.ts:210](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L210) ___ @@ -1159,7 +1159,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:216](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L216) +[src/types/generatedGraphQLTypes.ts:216](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L216) ___ @@ -1183,7 +1183,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2460](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2460) +[src/types/generatedGraphQLTypes.ts:2460](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2460) ___ @@ -1206,7 +1206,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:221](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L221) +[src/types/generatedGraphQLTypes.ts:221](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L221) ___ @@ -1229,7 +1229,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:232](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L232) +[src/types/generatedGraphQLTypes.ts:232](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L232) ___ @@ -1259,7 +1259,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2476](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2476) +[src/types/generatedGraphQLTypes.ts:2476](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2476) ___ @@ -1289,7 +1289,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2465](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2465) +[src/types/generatedGraphQLTypes.ts:2465](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2465) ___ @@ -1326,7 +1326,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2035](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2035) +[src/types/generatedGraphQLTypes.ts:2035](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2035) ___ @@ -1349,7 +1349,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3145](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3145) +[src/types/generatedGraphQLTypes.ts:3145](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3145) ___ @@ -1374,7 +1374,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:243](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L243) +[src/types/generatedGraphQLTypes.ts:243](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L243) ___ @@ -1406,7 +1406,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2487](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2487) +[src/types/generatedGraphQLTypes.ts:2487](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2487) ___ @@ -1433,7 +1433,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:256](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L256) +[src/types/generatedGraphQLTypes.ts:256](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L256) ___ @@ -1443,7 +1443,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:271](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L271) +[src/types/generatedGraphQLTypes.ts:271](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L271) ___ @@ -1453,7 +1453,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:289](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L289) +[src/types/generatedGraphQLTypes.ts:289](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L289) ___ @@ -1469,7 +1469,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:294](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L294) +[src/types/generatedGraphQLTypes.ts:294](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L294) ___ @@ -1493,7 +1493,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2504](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2504) +[src/types/generatedGraphQLTypes.ts:2504](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2504) ___ @@ -1535,7 +1535,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:298](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L298) +[src/types/generatedGraphQLTypes.ts:298](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L298) ___ @@ -1551,7 +1551,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:329](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L329) +[src/types/generatedGraphQLTypes.ts:329](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L329) ___ @@ -1568,7 +1568,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:333](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L333) +[src/types/generatedGraphQLTypes.ts:333](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L333) ___ @@ -1598,7 +1598,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:338](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L338) +[src/types/generatedGraphQLTypes.ts:338](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L338) ___ @@ -1608,7 +1608,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:356](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L356) +[src/types/generatedGraphQLTypes.ts:356](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L356) ___ @@ -1657,7 +1657,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2509](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2509) +[src/types/generatedGraphQLTypes.ts:2509](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2509) ___ @@ -1697,7 +1697,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:378](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L378) +[src/types/generatedGraphQLTypes.ts:378](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L378) ___ @@ -1713,7 +1713,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L27) +[src/types/generatedGraphQLTypes.ts:27](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L27) ___ @@ -1731,7 +1731,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:406](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L406) +[src/types/generatedGraphQLTypes.ts:406](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L406) ___ @@ -1756,7 +1756,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2539](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2539) +[src/types/generatedGraphQLTypes.ts:2539](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2539) ___ @@ -1778,7 +1778,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:412](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L412) +[src/types/generatedGraphQLTypes.ts:412](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L412) ___ @@ -1796,7 +1796,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:422](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L422) +[src/types/generatedGraphQLTypes.ts:422](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L422) ___ @@ -1825,7 +1825,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2545](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2545) +[src/types/generatedGraphQLTypes.ts:2545](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2545) ___ @@ -1842,7 +1842,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:428](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L428) +[src/types/generatedGraphQLTypes.ts:428](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L428) ___ @@ -1867,7 +1867,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2555](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2555) +[src/types/generatedGraphQLTypes.ts:2555](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2555) ___ @@ -1885,7 +1885,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:433](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L433) +[src/types/generatedGraphQLTypes.ts:433](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L433) ___ @@ -1895,7 +1895,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:439](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L439) +[src/types/generatedGraphQLTypes.ts:439](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L439) ___ @@ -1918,7 +1918,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:444](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L444) +[src/types/generatedGraphQLTypes.ts:444](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L444) ___ @@ -1941,7 +1941,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:455](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L455) +[src/types/generatedGraphQLTypes.ts:455](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L455) ___ @@ -1963,7 +1963,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:466](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L466) +[src/types/generatedGraphQLTypes.ts:466](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L466) ___ @@ -1992,7 +1992,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2583](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2583) +[src/types/generatedGraphQLTypes.ts:2583](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2583) ___ @@ -2022,7 +2022,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2572](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2572) +[src/types/generatedGraphQLTypes.ts:2572](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2572) ___ @@ -2052,7 +2052,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2561](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2561) +[src/types/generatedGraphQLTypes.ts:2561](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2561) ___ @@ -2068,7 +2068,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L31) +[src/types/generatedGraphQLTypes.ts:31](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L31) ___ @@ -2084,7 +2084,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L26) +[src/types/generatedGraphQLTypes.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L26) ___ @@ -2094,7 +2094,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:476](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L476) +[src/types/generatedGraphQLTypes.ts:476](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L476) ___ @@ -2119,7 +2119,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2593](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2593) +[src/types/generatedGraphQLTypes.ts:2593](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2593) ___ @@ -2152,7 +2152,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2031](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2031) +[src/types/generatedGraphQLTypes.ts:2031](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2031) ___ @@ -2172,7 +2172,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:482](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L482) +[src/types/generatedGraphQLTypes.ts:482](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L482) ___ @@ -2190,7 +2190,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:490](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L490) +[src/types/generatedGraphQLTypes.ts:490](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L490) ___ @@ -2211,7 +2211,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:496](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L496) +[src/types/generatedGraphQLTypes.ts:496](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L496) ___ @@ -2239,7 +2239,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2611](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2611) +[src/types/generatedGraphQLTypes.ts:2611](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2611) ___ @@ -2266,7 +2266,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2603](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2603) +[src/types/generatedGraphQLTypes.ts:2603](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2603) ___ @@ -2283,7 +2283,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:505](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L505) +[src/types/generatedGraphQLTypes.ts:505](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L505) ___ @@ -2300,7 +2300,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L30) +[src/types/generatedGraphQLTypes.ts:30](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L30) ___ @@ -2317,7 +2317,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L29) +[src/types/generatedGraphQLTypes.ts:29](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L29) ___ @@ -2334,7 +2334,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L28) +[src/types/generatedGraphQLTypes.ts:28](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L28) ___ @@ -2344,7 +2344,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:510](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L510) +[src/types/generatedGraphQLTypes.ts:510](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L510) ___ @@ -2354,7 +2354,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:518](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L518) +[src/types/generatedGraphQLTypes.ts:518](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L518) ___ @@ -2379,7 +2379,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2628](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2628) +[src/types/generatedGraphQLTypes.ts:2628](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2628) ___ @@ -2389,7 +2389,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:524](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L524) +[src/types/generatedGraphQLTypes.ts:524](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L524) ___ @@ -2415,7 +2415,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2634](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2634) +[src/types/generatedGraphQLTypes.ts:2634](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2634) ___ @@ -2431,7 +2431,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L25) +[src/types/generatedGraphQLTypes.ts:25](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L25) ___ @@ -2450,7 +2450,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:531](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L531) +[src/types/generatedGraphQLTypes.ts:531](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L531) ___ @@ -2476,7 +2476,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2641](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2641) +[src/types/generatedGraphQLTypes.ts:2641](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2641) ___ @@ -2499,7 +2499,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:538](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L538) +[src/types/generatedGraphQLTypes.ts:538](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L538) ___ @@ -2522,7 +2522,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:549](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L549) +[src/types/generatedGraphQLTypes.ts:549](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L549) ___ @@ -2539,7 +2539,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:560](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L560) +[src/types/generatedGraphQLTypes.ts:560](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L560) ___ @@ -2569,7 +2569,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2659](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2659) +[src/types/generatedGraphQLTypes.ts:2659](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2659) ___ @@ -2599,7 +2599,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2648](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2648) +[src/types/generatedGraphQLTypes.ts:2648](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2648) ___ @@ -2609,7 +2609,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:565](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L565) +[src/types/generatedGraphQLTypes.ts:565](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L565) ___ @@ -2635,7 +2635,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2670](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2670) +[src/types/generatedGraphQLTypes.ts:2670](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2670) ___ @@ -2645,7 +2645,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:572](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L572) +[src/types/generatedGraphQLTypes.ts:572](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L572) ___ @@ -2670,7 +2670,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2677](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2677) +[src/types/generatedGraphQLTypes.ts:2677](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2677) ___ @@ -2777,7 +2777,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:578](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L578) +[src/types/generatedGraphQLTypes.ts:578](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L578) ___ @@ -2793,7 +2793,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:674](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L674) +[src/types/generatedGraphQLTypes.ts:674](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L674) ___ @@ -2809,7 +2809,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:679](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L679) +[src/types/generatedGraphQLTypes.ts:679](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L679) ___ @@ -2825,7 +2825,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:684](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L684) +[src/types/generatedGraphQLTypes.ts:684](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L684) ___ @@ -2841,7 +2841,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:689](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L689) +[src/types/generatedGraphQLTypes.ts:689](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L689) ___ @@ -2857,7 +2857,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:694](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L694) +[src/types/generatedGraphQLTypes.ts:694](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L694) ___ @@ -2875,7 +2875,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:699](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L699) +[src/types/generatedGraphQLTypes.ts:699](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L699) ___ @@ -2892,7 +2892,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:706](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L706) +[src/types/generatedGraphQLTypes.ts:706](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L706) ___ @@ -2910,7 +2910,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:712](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L712) +[src/types/generatedGraphQLTypes.ts:712](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L712) ___ @@ -2926,7 +2926,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:719](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L719) +[src/types/generatedGraphQLTypes.ts:719](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L719) ___ @@ -2943,7 +2943,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:724](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L724) +[src/types/generatedGraphQLTypes.ts:724](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L724) ___ @@ -2959,7 +2959,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:730](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L730) +[src/types/generatedGraphQLTypes.ts:730](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L730) ___ @@ -2975,7 +2975,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:735](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L735) +[src/types/generatedGraphQLTypes.ts:735](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L735) ___ @@ -2991,7 +2991,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:740](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L740) +[src/types/generatedGraphQLTypes.ts:740](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L740) ___ @@ -3008,7 +3008,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:745](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L745) +[src/types/generatedGraphQLTypes.ts:745](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L745) ___ @@ -3025,7 +3025,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:751](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L751) +[src/types/generatedGraphQLTypes.ts:751](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L751) ___ @@ -3041,7 +3041,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:757](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L757) +[src/types/generatedGraphQLTypes.ts:757](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L757) ___ @@ -3057,7 +3057,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:762](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L762) +[src/types/generatedGraphQLTypes.ts:762](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L762) ___ @@ -3074,7 +3074,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:767](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L767) +[src/types/generatedGraphQLTypes.ts:767](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L767) ___ @@ -3091,7 +3091,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:773](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L773) +[src/types/generatedGraphQLTypes.ts:773](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L773) ___ @@ -3107,7 +3107,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:779](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L779) +[src/types/generatedGraphQLTypes.ts:779](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L779) ___ @@ -3128,7 +3128,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:784](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L784) +[src/types/generatedGraphQLTypes.ts:784](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L784) ___ @@ -3145,7 +3145,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:794](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L794) +[src/types/generatedGraphQLTypes.ts:794](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L794) ___ @@ -3161,7 +3161,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:800](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L800) +[src/types/generatedGraphQLTypes.ts:800](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L800) ___ @@ -3182,7 +3182,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:805](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L805) +[src/types/generatedGraphQLTypes.ts:805](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L805) ___ @@ -3198,7 +3198,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:815](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L815) +[src/types/generatedGraphQLTypes.ts:815](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L815) ___ @@ -3214,7 +3214,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:820](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L820) +[src/types/generatedGraphQLTypes.ts:820](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L820) ___ @@ -3230,7 +3230,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:825](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L825) +[src/types/generatedGraphQLTypes.ts:825](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L825) ___ @@ -3246,7 +3246,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:830](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L830) +[src/types/generatedGraphQLTypes.ts:830](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L830) ___ @@ -3263,7 +3263,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:835](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L835) +[src/types/generatedGraphQLTypes.ts:835](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L835) ___ @@ -3282,7 +3282,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:841](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L841) +[src/types/generatedGraphQLTypes.ts:841](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L841) ___ @@ -3299,7 +3299,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:849](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L849) +[src/types/generatedGraphQLTypes.ts:849](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L849) ___ @@ -3315,7 +3315,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:855](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L855) +[src/types/generatedGraphQLTypes.ts:855](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L855) ___ @@ -3331,7 +3331,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:860](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L860) +[src/types/generatedGraphQLTypes.ts:860](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L860) ___ @@ -3347,7 +3347,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:865](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L865) +[src/types/generatedGraphQLTypes.ts:865](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L865) ___ @@ -3363,7 +3363,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:870](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L870) +[src/types/generatedGraphQLTypes.ts:870](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L870) ___ @@ -3379,7 +3379,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:875](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L875) +[src/types/generatedGraphQLTypes.ts:875](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L875) ___ @@ -3395,7 +3395,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:880](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L880) +[src/types/generatedGraphQLTypes.ts:880](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L880) ___ @@ -3411,7 +3411,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:885](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L885) +[src/types/generatedGraphQLTypes.ts:885](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L885) ___ @@ -3427,7 +3427,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:890](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L890) +[src/types/generatedGraphQLTypes.ts:890](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L890) ___ @@ -3443,7 +3443,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:895](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L895) +[src/types/generatedGraphQLTypes.ts:895](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L895) ___ @@ -3459,7 +3459,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:900](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L900) +[src/types/generatedGraphQLTypes.ts:900](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L900) ___ @@ -3475,7 +3475,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:905](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L905) +[src/types/generatedGraphQLTypes.ts:905](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L905) ___ @@ -3491,7 +3491,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:910](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L910) +[src/types/generatedGraphQLTypes.ts:910](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L910) ___ @@ -3507,7 +3507,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:915](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L915) +[src/types/generatedGraphQLTypes.ts:915](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L915) ___ @@ -3523,7 +3523,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:920](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L920) +[src/types/generatedGraphQLTypes.ts:920](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L920) ___ @@ -3539,7 +3539,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:925](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L925) +[src/types/generatedGraphQLTypes.ts:925](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L925) ___ @@ -3555,7 +3555,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:930](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L930) +[src/types/generatedGraphQLTypes.ts:930](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L930) ___ @@ -3571,7 +3571,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:935](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L935) +[src/types/generatedGraphQLTypes.ts:935](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L935) ___ @@ -3587,7 +3587,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:940](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L940) +[src/types/generatedGraphQLTypes.ts:940](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L940) ___ @@ -3603,7 +3603,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:945](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L945) +[src/types/generatedGraphQLTypes.ts:945](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L945) ___ @@ -3620,7 +3620,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:950](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L950) +[src/types/generatedGraphQLTypes.ts:950](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L950) ___ @@ -3636,7 +3636,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:956](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L956) +[src/types/generatedGraphQLTypes.ts:956](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L956) ___ @@ -3652,7 +3652,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:961](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L961) +[src/types/generatedGraphQLTypes.ts:961](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L961) ___ @@ -3668,7 +3668,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:966](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L966) +[src/types/generatedGraphQLTypes.ts:966](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L966) ___ @@ -3684,7 +3684,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:971](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L971) +[src/types/generatedGraphQLTypes.ts:971](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L971) ___ @@ -3700,7 +3700,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:976](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L976) +[src/types/generatedGraphQLTypes.ts:976](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L976) ___ @@ -3717,7 +3717,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:981](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L981) +[src/types/generatedGraphQLTypes.ts:981](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L981) ___ @@ -3733,7 +3733,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:987](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L987) +[src/types/generatedGraphQLTypes.ts:987](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L987) ___ @@ -3749,7 +3749,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:992](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L992) +[src/types/generatedGraphQLTypes.ts:992](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L992) ___ @@ -3765,7 +3765,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:997](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L997) +[src/types/generatedGraphQLTypes.ts:997](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L997) ___ @@ -3782,7 +3782,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1002](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1002) +[src/types/generatedGraphQLTypes.ts:1002](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1002) ___ @@ -3798,7 +3798,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1008](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1008) +[src/types/generatedGraphQLTypes.ts:1008](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1008) ___ @@ -3911,7 +3911,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2683](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2683) +[src/types/generatedGraphQLTypes.ts:2683](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2683) ___ @@ -3927,7 +3927,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1013](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1013) +[src/types/generatedGraphQLTypes.ts:1013](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1013) ___ @@ -3943,7 +3943,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1018](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1018) +[src/types/generatedGraphQLTypes.ts:1018](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1018) ___ @@ -3960,7 +3960,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1023](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1023) +[src/types/generatedGraphQLTypes.ts:1023](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1023) ___ @@ -3977,7 +3977,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1029](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1029) +[src/types/generatedGraphQLTypes.ts:1029](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1029) ___ @@ -3994,7 +3994,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1035](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1035) +[src/types/generatedGraphQLTypes.ts:1035](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1035) ___ @@ -4011,7 +4011,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1041](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1041) +[src/types/generatedGraphQLTypes.ts:1041](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1041) ___ @@ -4027,7 +4027,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1047](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1047) +[src/types/generatedGraphQLTypes.ts:1047](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1047) ___ @@ -4044,7 +4044,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1052](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1052) +[src/types/generatedGraphQLTypes.ts:1052](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1052) ___ @@ -4060,7 +4060,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1058](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1058) +[src/types/generatedGraphQLTypes.ts:1058](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1058) ___ @@ -4076,7 +4076,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1063](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1063) +[src/types/generatedGraphQLTypes.ts:1063](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1063) ___ @@ -4092,7 +4092,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1068](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1068) +[src/types/generatedGraphQLTypes.ts:1068](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1068) ___ @@ -4109,7 +4109,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1073](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1073) +[src/types/generatedGraphQLTypes.ts:1073](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1073) ___ @@ -4126,7 +4126,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1079](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1079) +[src/types/generatedGraphQLTypes.ts:1079](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1079) ___ @@ -4142,7 +4142,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1085](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1085) +[src/types/generatedGraphQLTypes.ts:1085](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1085) ___ @@ -4159,7 +4159,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1090](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1090) +[src/types/generatedGraphQLTypes.ts:1090](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1090) ___ @@ -4175,7 +4175,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1096](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1096) +[src/types/generatedGraphQLTypes.ts:1096](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1096) ___ @@ -4193,7 +4193,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1101](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1101) +[src/types/generatedGraphQLTypes.ts:1101](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1101) ___ @@ -4210,7 +4210,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1108](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1108) +[src/types/generatedGraphQLTypes.ts:1108](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1108) ___ @@ -4227,7 +4227,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1114](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1114) +[src/types/generatedGraphQLTypes.ts:1114](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1114) ___ @@ -4243,7 +4243,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1120](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1120) +[src/types/generatedGraphQLTypes.ts:1120](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1120) ___ @@ -4260,7 +4260,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1125](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1125) +[src/types/generatedGraphQLTypes.ts:1125](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1125) ___ @@ -4278,7 +4278,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1131](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1131) +[src/types/generatedGraphQLTypes.ts:1131](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1131) ___ @@ -4294,7 +4294,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1138](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1138) +[src/types/generatedGraphQLTypes.ts:1138](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1138) ___ @@ -4310,7 +4310,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1143](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1143) +[src/types/generatedGraphQLTypes.ts:1143](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1143) ___ @@ -4334,7 +4334,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2033](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2033) +[src/types/generatedGraphQLTypes.ts:2033](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2033) ___ @@ -4351,7 +4351,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L32) +[src/types/generatedGraphQLTypes.ts:32](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L32) ___ @@ -4386,7 +4386,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1151](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1151) +[src/types/generatedGraphQLTypes.ts:1151](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1151) ___ @@ -4402,7 +4402,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1175](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1175) +[src/types/generatedGraphQLTypes.ts:1175](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1175) ___ @@ -4422,7 +4422,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1187](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1187) +[src/types/generatedGraphQLTypes.ts:1187](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1187) ___ @@ -4449,7 +4449,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2800](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2800) +[src/types/generatedGraphQLTypes.ts:2800](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2800) ___ @@ -4473,7 +4473,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1195](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1195) +[src/types/generatedGraphQLTypes.ts:1195](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1195) ___ @@ -4504,7 +4504,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2808](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2808) +[src/types/generatedGraphQLTypes.ts:2808](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2808) ___ @@ -4527,7 +4527,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1207](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1207) +[src/types/generatedGraphQLTypes.ts:1207](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1207) ___ @@ -4537,7 +4537,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1218](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1218) +[src/types/generatedGraphQLTypes.ts:1218](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1218) ___ @@ -4579,7 +4579,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2777](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2777) +[src/types/generatedGraphQLTypes.ts:2777](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2777) ___ @@ -4598,7 +4598,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1180](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1180) +[src/types/generatedGraphQLTypes.ts:1180](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1180) ___ @@ -4639,7 +4639,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1230](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1230) +[src/types/generatedGraphQLTypes.ts:1230](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1230) ___ @@ -4656,7 +4656,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1259](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1259) +[src/types/generatedGraphQLTypes.ts:1259](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1259) ___ @@ -4680,7 +4680,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2820](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2820) +[src/types/generatedGraphQLTypes.ts:2820](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2820) ___ @@ -4696,7 +4696,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1147](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1147) +[src/types/generatedGraphQLTypes.ts:1147](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1147) ___ @@ -4720,7 +4720,7 @@ Information about pagination in a connection. #### Defined in -[src/types/generatedGraphQLTypes.ts:1265](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1265) +[src/types/generatedGraphQLTypes.ts:1265](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1265) ___ @@ -4749,7 +4749,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2825](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2825) +[src/types/generatedGraphQLTypes.ts:2825](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2825) ___ @@ -4759,7 +4759,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1277](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1277) +[src/types/generatedGraphQLTypes.ts:1277](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1277) ___ @@ -4780,7 +4780,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1281](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1281) +[src/types/generatedGraphQLTypes.ts:1281](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1281) ___ @@ -4800,7 +4800,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1290](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1290) +[src/types/generatedGraphQLTypes.ts:1290](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1290) ___ @@ -4817,7 +4817,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1298](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1298) +[src/types/generatedGraphQLTypes.ts:1298](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1298) ___ @@ -4844,7 +4844,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2848](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2848) +[src/types/generatedGraphQLTypes.ts:2848](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2848) ___ @@ -4864,7 +4864,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1303](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1303) +[src/types/generatedGraphQLTypes.ts:1303](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1303) ___ @@ -4892,7 +4892,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2839](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2839) +[src/types/generatedGraphQLTypes.ts:2839](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2839) ___ @@ -4922,7 +4922,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1311](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1311) +[src/types/generatedGraphQLTypes.ts:1311](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1311) ___ @@ -4943,7 +4943,7 @@ A connection to a list of items. #### Defined in -[src/types/generatedGraphQLTypes.ts:1330](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1330) +[src/types/generatedGraphQLTypes.ts:1330](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1330) ___ @@ -4969,7 +4969,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2878](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2878) +[src/types/generatedGraphQLTypes.ts:2878](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2878) ___ @@ -4991,7 +4991,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1339](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1339) +[src/types/generatedGraphQLTypes.ts:1339](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1339) ___ @@ -5001,7 +5001,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1349](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1349) +[src/types/generatedGraphQLTypes.ts:1349](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1349) ___ @@ -5038,7 +5038,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2860](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2860) +[src/types/generatedGraphQLTypes.ts:2860](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2860) ___ @@ -5057,7 +5057,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1367](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1367) +[src/types/generatedGraphQLTypes.ts:1367](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1367) ___ @@ -5090,7 +5090,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1374](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1374) +[src/types/generatedGraphQLTypes.ts:1374](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1374) ___ @@ -5144,7 +5144,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1395](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1395) +[src/types/generatedGraphQLTypes.ts:1395](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1395) ___ @@ -5160,7 +5160,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1438](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1438) +[src/types/generatedGraphQLTypes.ts:1438](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1438) ___ @@ -5176,7 +5176,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1443](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1443) +[src/types/generatedGraphQLTypes.ts:1443](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1443) ___ @@ -5192,7 +5192,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1448](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1448) +[src/types/generatedGraphQLTypes.ts:1448](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1448) ___ @@ -5208,7 +5208,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1453](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1453) +[src/types/generatedGraphQLTypes.ts:1453](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1453) ___ @@ -5224,7 +5224,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1458](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1458) +[src/types/generatedGraphQLTypes.ts:1458](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1458) ___ @@ -5240,7 +5240,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1463](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1463) +[src/types/generatedGraphQLTypes.ts:1463](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1463) ___ @@ -5256,7 +5256,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1468](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1468) +[src/types/generatedGraphQLTypes.ts:1468](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1468) ___ @@ -5272,7 +5272,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1473](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1473) +[src/types/generatedGraphQLTypes.ts:1473](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1473) ___ @@ -5288,7 +5288,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1478](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1478) +[src/types/generatedGraphQLTypes.ts:1478](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1478) ___ @@ -5304,7 +5304,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1483](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1483) +[src/types/generatedGraphQLTypes.ts:1483](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1483) ___ @@ -5320,7 +5320,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1488](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1488) +[src/types/generatedGraphQLTypes.ts:1488](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1488) ___ @@ -5337,7 +5337,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1493](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1493) +[src/types/generatedGraphQLTypes.ts:1493](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1493) ___ @@ -5356,7 +5356,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1499](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1499) +[src/types/generatedGraphQLTypes.ts:1499](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1499) ___ @@ -5372,7 +5372,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1507](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1507) +[src/types/generatedGraphQLTypes.ts:1507](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1507) ___ @@ -5388,7 +5388,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1512](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1512) +[src/types/generatedGraphQLTypes.ts:1512](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1512) ___ @@ -5407,7 +5407,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1517](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1517) +[src/types/generatedGraphQLTypes.ts:1517](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1517) ___ @@ -5423,7 +5423,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1525](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1525) +[src/types/generatedGraphQLTypes.ts:1525](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1525) ___ @@ -5440,7 +5440,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1530](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1530) +[src/types/generatedGraphQLTypes.ts:1530](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1530) ___ @@ -5456,7 +5456,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1536](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1536) +[src/types/generatedGraphQLTypes.ts:1536](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1536) ___ @@ -5472,7 +5472,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1541](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1541) +[src/types/generatedGraphQLTypes.ts:1541](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1541) ___ @@ -5489,7 +5489,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1546](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1546) +[src/types/generatedGraphQLTypes.ts:1546](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1546) ___ @@ -5508,7 +5508,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1552](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1552) +[src/types/generatedGraphQLTypes.ts:1552](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1552) ___ @@ -5528,7 +5528,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1560](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1560) +[src/types/generatedGraphQLTypes.ts:1560](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1560) ___ @@ -5544,7 +5544,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1569](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1569) +[src/types/generatedGraphQLTypes.ts:1569](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1569) ___ @@ -5560,7 +5560,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1574](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1574) +[src/types/generatedGraphQLTypes.ts:1574](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1574) ___ @@ -5577,7 +5577,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1579](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1579) +[src/types/generatedGraphQLTypes.ts:1579](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1579) ___ @@ -5597,7 +5597,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1585](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1585) +[src/types/generatedGraphQLTypes.ts:1585](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1585) ___ @@ -5614,7 +5614,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1594](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1594) +[src/types/generatedGraphQLTypes.ts:1594](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1594) ___ @@ -5630,7 +5630,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1600](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1600) +[src/types/generatedGraphQLTypes.ts:1600](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1600) ___ @@ -5690,7 +5690,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2885](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2885) +[src/types/generatedGraphQLTypes.ts:2885](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2885) ___ @@ -5706,7 +5706,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1605](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1605) +[src/types/generatedGraphQLTypes.ts:1605](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1605) ___ @@ -5722,7 +5722,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1610](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1610) +[src/types/generatedGraphQLTypes.ts:1610](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1610) ___ @@ -5743,7 +5743,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1615](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1615) +[src/types/generatedGraphQLTypes.ts:1615](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1615) ___ @@ -5762,7 +5762,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1625](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1625) +[src/types/generatedGraphQLTypes.ts:1625](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1625) ___ @@ -5778,7 +5778,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1632](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1632) +[src/types/generatedGraphQLTypes.ts:1632](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1632) ___ @@ -5788,7 +5788,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1636](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1636) +[src/types/generatedGraphQLTypes.ts:1636](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1636) ___ @@ -5805,7 +5805,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L33) +[src/types/generatedGraphQLTypes.ts:33](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L33) ___ @@ -5824,7 +5824,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1984](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1984) +[src/types/generatedGraphQLTypes.ts:1984](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1984) ___ @@ -5860,7 +5860,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1986](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1986) +[src/types/generatedGraphQLTypes.ts:1986](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1986) ___ @@ -5876,7 +5876,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1982](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1982) +[src/types/generatedGraphQLTypes.ts:1982](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1982) ___ @@ -5971,7 +5971,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3068](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3068) +[src/types/generatedGraphQLTypes.ts:3068](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3068) ___ @@ -5996,7 +5996,7 @@ Mapping of interface types #### Defined in -[src/types/generatedGraphQLTypes.ts:2049](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2049) +[src/types/generatedGraphQLTypes.ts:2049](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2049) ___ @@ -6134,7 +6134,7 @@ Mapping between all available schema types and the resolvers parents #### Defined in -[src/types/generatedGraphQLTypes.ts:2194](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2194) +[src/types/generatedGraphQLTypes.ts:2194](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2194) ___ @@ -6286,7 +6286,7 @@ Mapping between all available schema types and the resolvers types #### Defined in -[src/types/generatedGraphQLTypes.ts:2055](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2055) +[src/types/generatedGraphQLTypes.ts:2055](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2055) ___ @@ -6310,7 +6310,7 @@ Mapping of union types #### Defined in -[src/types/generatedGraphQLTypes.ts:2044](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2044) +[src/types/generatedGraphQLTypes.ts:2044](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2044) ___ @@ -6326,7 +6326,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2322](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2322) +[src/types/generatedGraphQLTypes.ts:2322](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2322) ___ @@ -6345,7 +6345,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2326](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2326) +[src/types/generatedGraphQLTypes.ts:2326](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2326) ___ @@ -6416,7 +6416,7 @@ All built-in and custom scalars, mapped to their actual values #### Defined in -[src/types/generatedGraphQLTypes.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L35) +[src/types/generatedGraphQLTypes.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L35) ___ @@ -6426,7 +6426,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1643](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1643) +[src/types/generatedGraphQLTypes.ts:1643](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1643) ___ @@ -6446,7 +6446,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1648](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1648) +[src/types/generatedGraphQLTypes.ts:1648](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1648) ___ @@ -6466,7 +6466,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2017](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2017) +[src/types/generatedGraphQLTypes.ts:2017](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2017) ___ @@ -6502,7 +6502,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2000](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2000) +[src/types/generatedGraphQLTypes.ts:2000](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2000) ___ @@ -6522,7 +6522,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2021](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2021) +[src/types/generatedGraphQLTypes.ts:2021](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2021) ___ @@ -6548,7 +6548,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2926](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2926) +[src/types/generatedGraphQLTypes.ts:2926](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2926) ___ @@ -6584,7 +6584,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1993](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1993) +[src/types/generatedGraphQLTypes.ts:1993](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1993) ___ @@ -6601,7 +6601,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1656](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1656) +[src/types/generatedGraphQLTypes.ts:1656](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1656) ___ @@ -6621,7 +6621,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1661](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1661) +[src/types/generatedGraphQLTypes.ts:1661](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1661) ___ @@ -6648,7 +6648,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2937](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2937) +[src/types/generatedGraphQLTypes.ts:2937](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2937) ___ @@ -6658,7 +6658,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1669](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1669) +[src/types/generatedGraphQLTypes.ts:1669](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1669) ___ @@ -6692,7 +6692,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2025](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2025) +[src/types/generatedGraphQLTypes.ts:2025](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2025) ___ @@ -6702,7 +6702,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1673](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1673) +[src/types/generatedGraphQLTypes.ts:1673](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1673) ___ @@ -6726,7 +6726,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2949](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2949) +[src/types/generatedGraphQLTypes.ts:2949](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2949) ___ @@ -6736,7 +6736,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1678](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1678) +[src/types/generatedGraphQLTypes.ts:1678](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1678) ___ @@ -6760,7 +6760,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2954](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2954) +[src/types/generatedGraphQLTypes.ts:2954](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2954) ___ @@ -6777,7 +6777,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1683](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1683) +[src/types/generatedGraphQLTypes.ts:1683](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1683) ___ @@ -6798,7 +6798,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1688](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1688) +[src/types/generatedGraphQLTypes.ts:1688](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1688) ___ @@ -6819,7 +6819,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1697](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1697) +[src/types/generatedGraphQLTypes.ts:1697](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1697) ___ @@ -6836,7 +6836,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1706](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1706) +[src/types/generatedGraphQLTypes.ts:1706](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1706) ___ @@ -6860,7 +6860,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2959](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2959) +[src/types/generatedGraphQLTypes.ts:2959](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2959) ___ @@ -6889,7 +6889,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1711](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1711) +[src/types/generatedGraphQLTypes.ts:1711](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1711) ___ @@ -6909,7 +6909,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1728](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1728) +[src/types/generatedGraphQLTypes.ts:1728](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1728) ___ @@ -6934,7 +6934,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1736](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1736) +[src/types/generatedGraphQLTypes.ts:1736](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1736) ___ @@ -6952,7 +6952,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1749](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1749) +[src/types/generatedGraphQLTypes.ts:1749](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1749) ___ @@ -6969,7 +6969,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1755](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1755) +[src/types/generatedGraphQLTypes.ts:1755](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1755) ___ @@ -6986,7 +6986,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1760](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1760) +[src/types/generatedGraphQLTypes.ts:1760](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1760) ___ @@ -7030,7 +7030,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1765](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1765) +[src/types/generatedGraphQLTypes.ts:1765](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1765) ___ @@ -7047,7 +7047,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1806](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1806) +[src/types/generatedGraphQLTypes.ts:1806](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1806) ___ @@ -7066,7 +7066,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1811](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1811) +[src/types/generatedGraphQLTypes.ts:1811](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1811) ___ @@ -7092,7 +7092,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3000](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3000) +[src/types/generatedGraphQLTypes.ts:3000](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3000) ___ @@ -7112,7 +7112,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1818](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1818) +[src/types/generatedGraphQLTypes.ts:1818](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1818) ___ @@ -7139,7 +7139,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3007](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3007) +[src/types/generatedGraphQLTypes.ts:3007](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3007) ___ @@ -7157,7 +7157,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1826](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1826) +[src/types/generatedGraphQLTypes.ts:1826](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1826) ___ @@ -7182,7 +7182,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3015](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3015) +[src/types/generatedGraphQLTypes.ts:3015](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3015) ___ @@ -7203,7 +7203,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1832](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1832) +[src/types/generatedGraphQLTypes.ts:1832](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1832) ___ @@ -7213,7 +7213,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1841](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1841) +[src/types/generatedGraphQLTypes.ts:1841](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1841) ___ @@ -7232,7 +7232,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1853](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1853) +[src/types/generatedGraphQLTypes.ts:1853](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1853) ___ @@ -7250,7 +7250,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1860](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1860) +[src/types/generatedGraphQLTypes.ts:1860](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1860) ___ @@ -7276,7 +7276,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3021](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3021) +[src/types/generatedGraphQLTypes.ts:3021](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3021) ___ @@ -7327,7 +7327,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:2968](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L2968) +[src/types/generatedGraphQLTypes.ts:2968](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L2968) ___ @@ -7349,7 +7349,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1866](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1866) +[src/types/generatedGraphQLTypes.ts:1866](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1866) ___ @@ -7365,7 +7365,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1877](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1877) +[src/types/generatedGraphQLTypes.ts:1877](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1877) ___ @@ -7383,7 +7383,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1886](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1886) +[src/types/generatedGraphQLTypes.ts:1886](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1886) ___ @@ -7408,7 +7408,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3038](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3038) +[src/types/generatedGraphQLTypes.ts:3038](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3038) ___ @@ -7437,7 +7437,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3028](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3028) +[src/types/generatedGraphQLTypes.ts:3028](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3028) ___ @@ -7453,7 +7453,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1882](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1882) +[src/types/generatedGraphQLTypes.ts:1882](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1882) ___ @@ -7473,7 +7473,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1798](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1798) +[src/types/generatedGraphQLTypes.ts:1798](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1798) ___ @@ -7491,7 +7491,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1892](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1892) +[src/types/generatedGraphQLTypes.ts:1892](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1892) ___ @@ -7509,7 +7509,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1898](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1898) +[src/types/generatedGraphQLTypes.ts:1898](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1898) ___ @@ -7534,7 +7534,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3044](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3044) +[src/types/generatedGraphQLTypes.ts:3044](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3044) ___ @@ -7552,7 +7552,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1904](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1904) +[src/types/generatedGraphQLTypes.ts:1904](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1904) ___ @@ -7577,7 +7577,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3050](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3050) +[src/types/generatedGraphQLTypes.ts:3050](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3050) ___ @@ -7587,7 +7587,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1910](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1910) +[src/types/generatedGraphQLTypes.ts:1910](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1910) ___ @@ -7634,7 +7634,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1916](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1916) +[src/types/generatedGraphQLTypes.ts:1916](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1916) ___ @@ -7652,7 +7652,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1951](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1951) +[src/types/generatedGraphQLTypes.ts:1951](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1951) ___ @@ -7670,7 +7670,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1957](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1957) +[src/types/generatedGraphQLTypes.ts:1957](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1957) ___ @@ -7695,7 +7695,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3056](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3056) +[src/types/generatedGraphQLTypes.ts:3056](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3056) ___ @@ -7713,7 +7713,7 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:1963](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L1963) +[src/types/generatedGraphQLTypes.ts:1963](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L1963) ___ @@ -7738,4 +7738,4 @@ ___ #### Defined in -[src/types/generatedGraphQLTypes.ts:3062](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/types/generatedGraphQLTypes.ts#L3062) +[src/types/generatedGraphQLTypes.ts:3062](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/types/generatedGraphQLTypes.ts#L3062) diff --git a/talawa-api-docs/modules/utilities_PII_decryption.md b/talawa-api-docs/modules/utilities_PII_decryption.md index edc8862077..5957c7066e 100644 --- a/talawa-api-docs/modules/utilities_PII_decryption.md +++ b/talawa-api-docs/modules/utilities_PII_decryption.md @@ -28,4 +28,4 @@ #### Defined in -[src/utilities/PII/decryption.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/PII/decryption.ts#L4) +[src/utilities/PII/decryption.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/PII/decryption.ts#L4) diff --git a/talawa-api-docs/modules/utilities_PII_encryption.md b/talawa-api-docs/modules/utilities_PII_encryption.md index 55a57cc728..0a964c3826 100644 --- a/talawa-api-docs/modules/utilities_PII_encryption.md +++ b/talawa-api-docs/modules/utilities_PII_encryption.md @@ -28,4 +28,4 @@ #### Defined in -[src/utilities/PII/encryption.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/PII/encryption.ts#L4) +[src/utilities/PII/encryption.ts:4](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/PII/encryption.ts#L4) diff --git a/talawa-api-docs/modules/utilities_PII_isAuthorised.md b/talawa-api-docs/modules/utilities_PII_isAuthorised.md index 1fdf19e306..0f1b3aab75 100644 --- a/talawa-api-docs/modules/utilities_PII_isAuthorised.md +++ b/talawa-api-docs/modules/utilities_PII_isAuthorised.md @@ -27,4 +27,4 @@ #### Defined in -[src/utilities/PII/isAuthorised.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/PII/isAuthorised.ts#L3) +[src/utilities/PII/isAuthorised.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/PII/isAuthorised.ts#L3) diff --git a/talawa-api-docs/modules/utilities_adminCheck.md b/talawa-api-docs/modules/utilities_adminCheck.md index 6371082d7c..8808eb0932 100644 --- a/talawa-api-docs/modules/utilities_adminCheck.md +++ b/talawa-api-docs/modules/utilities_adminCheck.md @@ -35,4 +35,4 @@ This is a utility method. #### Defined in -[src/utilities/adminCheck.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/adminCheck.ts#L14) +[src/utilities/adminCheck.ts:14](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/adminCheck.ts#L14) diff --git a/talawa-api-docs/modules/utilities_auth.md b/talawa-api-docs/modules/utilities_auth.md index 1f57c23d13..01aa23a875 100644 --- a/talawa-api-docs/modules/utilities_auth.md +++ b/talawa-api-docs/modules/utilities_auth.md @@ -37,7 +37,7 @@ JSON Web Token string payload #### Defined in -[src/utilities/auth.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/auth.ts#L19) +[src/utilities/auth.ts:19](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/auth.ts#L19) ___ @@ -57,7 +57,7 @@ ___ #### Defined in -[src/utilities/auth.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/auth.ts#L35) +[src/utilities/auth.ts:35](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/auth.ts#L35) ___ @@ -77,4 +77,4 @@ ___ #### Defined in -[src/utilities/auth.ts:51](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/auth.ts#L51) +[src/utilities/auth.ts:51](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/auth.ts#L51) diff --git a/talawa-api-docs/modules/utilities_copyToClipboard.md b/talawa-api-docs/modules/utilities_copyToClipboard.md index 8e51683f72..356bf68c47 100644 --- a/talawa-api-docs/modules/utilities_copyToClipboard.md +++ b/talawa-api-docs/modules/utilities_copyToClipboard.md @@ -32,4 +32,4 @@ This is a utility method. This works only in development or test mode. #### Defined in -[src/utilities/copyToClipboard.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/copyToClipboard.ts#L9) +[src/utilities/copyToClipboard.ts:9](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/copyToClipboard.ts#L9) diff --git a/talawa-api-docs/modules/utilities_createSampleOrganizationUtil.md b/talawa-api-docs/modules/utilities_createSampleOrganizationUtil.md index 11e9234ac0..e26847c4ac 100644 --- a/talawa-api-docs/modules/utilities_createSampleOrganizationUtil.md +++ b/talawa-api-docs/modules/utilities_createSampleOrganizationUtil.md @@ -24,7 +24,7 @@ #### Defined in -[src/utilities/createSampleOrganizationUtil.ts:215](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/createSampleOrganizationUtil.ts#L215) +[src/utilities/createSampleOrganizationUtil.ts:215](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/createSampleOrganizationUtil.ts#L215) ___ @@ -45,7 +45,7 @@ ___ #### Defined in -[src/utilities/createSampleOrganizationUtil.ts:64](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/createSampleOrganizationUtil.ts#L64) +[src/utilities/createSampleOrganizationUtil.ts:64](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/createSampleOrganizationUtil.ts#L64) ___ @@ -66,7 +66,7 @@ ___ #### Defined in -[src/utilities/createSampleOrganizationUtil.ts:128](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/createSampleOrganizationUtil.ts#L128) +[src/utilities/createSampleOrganizationUtil.ts:128](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/createSampleOrganizationUtil.ts#L128) ___ @@ -87,7 +87,7 @@ ___ #### Defined in -[src/utilities/createSampleOrganizationUtil.ts:185](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/createSampleOrganizationUtil.ts#L185) +[src/utilities/createSampleOrganizationUtil.ts:185](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/createSampleOrganizationUtil.ts#L185) ___ @@ -108,4 +108,4 @@ ___ #### Defined in -[src/utilities/createSampleOrganizationUtil.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/createSampleOrganizationUtil.ts#L10) +[src/utilities/createSampleOrganizationUtil.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/createSampleOrganizationUtil.ts#L10) diff --git a/talawa-api-docs/modules/utilities_deleteDuplicatedImage.md b/talawa-api-docs/modules/utilities_deleteDuplicatedImage.md index efdf8f64c3..f82241155a 100644 --- a/talawa-api-docs/modules/utilities_deleteDuplicatedImage.md +++ b/talawa-api-docs/modules/utilities_deleteDuplicatedImage.md @@ -28,4 +28,4 @@ This function deletes a duplicated image using the function fs.unlink(). #### Defined in -[src/utilities/deleteDuplicatedImage.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/deleteDuplicatedImage.ts#L8) +[src/utilities/deleteDuplicatedImage.ts:8](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/deleteDuplicatedImage.ts#L8) diff --git a/talawa-api-docs/modules/utilities_deleteImage.md b/talawa-api-docs/modules/utilities_deleteImage.md index ee3735c648..dab2bae38b 100644 --- a/talawa-api-docs/modules/utilities_deleteImage.md +++ b/talawa-api-docs/modules/utilities_deleteImage.md @@ -31,4 +31,4 @@ After deleting the image, the number of uses of the hashed image are decremented #### Defined in -[src/utilities/deleteImage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/deleteImage.ts#L12) +[src/utilities/deleteImage.ts:12](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/deleteImage.ts#L12) diff --git a/talawa-api-docs/modules/utilities_encodedImageStorage_deletePreviousImage.md b/talawa-api-docs/modules/utilities_encodedImageStorage_deletePreviousImage.md index f9a8b64082..643a631312 100644 --- a/talawa-api-docs/modules/utilities_encodedImageStorage_deletePreviousImage.md +++ b/talawa-api-docs/modules/utilities_encodedImageStorage_deletePreviousImage.md @@ -26,4 +26,4 @@ #### Defined in -[src/utilities/encodedImageStorage/deletePreviousImage.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/encodedImageStorage/deletePreviousImage.ts#L5) +[src/utilities/encodedImageStorage/deletePreviousImage.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/encodedImageStorage/deletePreviousImage.ts#L5) diff --git a/talawa-api-docs/modules/utilities_encodedImageStorage_encodedImageExtensionCheck.md b/talawa-api-docs/modules/utilities_encodedImageStorage_encodedImageExtensionCheck.md index f91518e370..9f12e61d97 100644 --- a/talawa-api-docs/modules/utilities_encodedImageStorage_encodedImageExtensionCheck.md +++ b/talawa-api-docs/modules/utilities_encodedImageStorage_encodedImageExtensionCheck.md @@ -26,4 +26,4 @@ #### Defined in -[src/utilities/encodedImageStorage/encodedImageExtensionCheck.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/encodedImageStorage/encodedImageExtensionCheck.ts#L1) +[src/utilities/encodedImageStorage/encodedImageExtensionCheck.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/encodedImageStorage/encodedImageExtensionCheck.ts#L1) diff --git a/talawa-api-docs/modules/utilities_encodedImageStorage_uploadEncodedImage.md b/talawa-api-docs/modules/utilities_encodedImageStorage_uploadEncodedImage.md index 03835ce057..f18e64362e 100644 --- a/talawa-api-docs/modules/utilities_encodedImageStorage_uploadEncodedImage.md +++ b/talawa-api-docs/modules/utilities_encodedImageStorage_uploadEncodedImage.md @@ -27,4 +27,4 @@ #### Defined in -[src/utilities/encodedImageStorage/uploadEncodedImage.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/encodedImageStorage/uploadEncodedImage.ts#L26) +[src/utilities/encodedImageStorage/uploadEncodedImage.ts:26](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/encodedImageStorage/uploadEncodedImage.ts#L26) diff --git a/talawa-api-docs/modules/utilities_encodedVideoStorage_deletePreviousVideo.md b/talawa-api-docs/modules/utilities_encodedVideoStorage_deletePreviousVideo.md index ff32027f8b..9792067380 100644 --- a/talawa-api-docs/modules/utilities_encodedVideoStorage_deletePreviousVideo.md +++ b/talawa-api-docs/modules/utilities_encodedVideoStorage_deletePreviousVideo.md @@ -26,4 +26,4 @@ #### Defined in -[src/utilities/encodedVideoStorage/deletePreviousVideo.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/encodedVideoStorage/deletePreviousVideo.ts#L5) +[src/utilities/encodedVideoStorage/deletePreviousVideo.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/encodedVideoStorage/deletePreviousVideo.ts#L5) diff --git a/talawa-api-docs/modules/utilities_encodedVideoStorage_encodedVideoExtensionCheck.md b/talawa-api-docs/modules/utilities_encodedVideoStorage_encodedVideoExtensionCheck.md index ff9e52db23..ea4026f9c4 100644 --- a/talawa-api-docs/modules/utilities_encodedVideoStorage_encodedVideoExtensionCheck.md +++ b/talawa-api-docs/modules/utilities_encodedVideoStorage_encodedVideoExtensionCheck.md @@ -26,4 +26,4 @@ #### Defined in -[src/utilities/encodedVideoStorage/encodedVideoExtensionCheck.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/encodedVideoStorage/encodedVideoExtensionCheck.ts#L1) +[src/utilities/encodedVideoStorage/encodedVideoExtensionCheck.ts:1](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/encodedVideoStorage/encodedVideoExtensionCheck.ts#L1) diff --git a/talawa-api-docs/modules/utilities_encodedVideoStorage_uploadEncodedVideo.md b/talawa-api-docs/modules/utilities_encodedVideoStorage_uploadEncodedVideo.md index 9b9be64c45..50797c581a 100644 --- a/talawa-api-docs/modules/utilities_encodedVideoStorage_uploadEncodedVideo.md +++ b/talawa-api-docs/modules/utilities_encodedVideoStorage_uploadEncodedVideo.md @@ -27,4 +27,4 @@ #### Defined in -[src/utilities/encodedVideoStorage/uploadEncodedVideo.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/encodedVideoStorage/uploadEncodedVideo.ts#L11) +[src/utilities/encodedVideoStorage/uploadEncodedVideo.ts:11](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/encodedVideoStorage/uploadEncodedVideo.ts#L11) diff --git a/talawa-api-docs/modules/utilities_graphqlConnectionFactory.md b/talawa-api-docs/modules/utilities_graphqlConnectionFactory.md index d6d5cfc75a..8909bee24b 100644 --- a/talawa-api-docs/modules/utilities_graphqlConnectionFactory.md +++ b/talawa-api-docs/modules/utilities_graphqlConnectionFactory.md @@ -39,7 +39,7 @@ #### Defined in -[src/utilities/graphqlConnectionFactory.ts:106](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/graphqlConnectionFactory.ts#L106) +[src/utilities/graphqlConnectionFactory.ts:106](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/graphqlConnectionFactory.ts#L106) ___ @@ -59,7 +59,7 @@ ___ #### Defined in -[src/utilities/graphqlConnectionFactory.ts:75](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/graphqlConnectionFactory.ts#L75) +[src/utilities/graphqlConnectionFactory.ts:75](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/graphqlConnectionFactory.ts#L75) ___ @@ -79,7 +79,7 @@ ___ #### Defined in -[src/utilities/graphqlConnectionFactory.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/graphqlConnectionFactory.ts#L46) +[src/utilities/graphqlConnectionFactory.ts:46](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/graphqlConnectionFactory.ts#L46) ___ @@ -100,7 +100,7 @@ ___ #### Defined in -[src/utilities/graphqlConnectionFactory.ts:53](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/graphqlConnectionFactory.ts#L53) +[src/utilities/graphqlConnectionFactory.ts:53](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/graphqlConnectionFactory.ts#L53) ___ @@ -120,4 +120,4 @@ ___ #### Defined in -[src/utilities/graphqlConnectionFactory.ts:34](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/graphqlConnectionFactory.ts#L34) +[src/utilities/graphqlConnectionFactory.ts:34](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/graphqlConnectionFactory.ts#L34) diff --git a/talawa-api-docs/modules/utilities_imageAlreadyInDbCheck.md b/talawa-api-docs/modules/utilities_imageAlreadyInDbCheck.md index 12de06946d..d06ec0b9b6 100644 --- a/talawa-api-docs/modules/utilities_imageAlreadyInDbCheck.md +++ b/talawa-api-docs/modules/utilities_imageAlreadyInDbCheck.md @@ -33,4 +33,4 @@ file name. #### Defined in -[src/utilities/imageAlreadyInDbCheck.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/imageAlreadyInDbCheck.ts#L16) +[src/utilities/imageAlreadyInDbCheck.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/imageAlreadyInDbCheck.ts#L16) diff --git a/talawa-api-docs/modules/utilities_imageExtensionCheck.md b/talawa-api-docs/modules/utilities_imageExtensionCheck.md index ed28c8d873..ecd410b680 100644 --- a/talawa-api-docs/modules/utilities_imageExtensionCheck.md +++ b/talawa-api-docs/modules/utilities_imageExtensionCheck.md @@ -30,4 +30,4 @@ then the file is deleted and a validation error is thrown. #### Defined in -[src/utilities/imageExtensionCheck.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/imageExtensionCheck.ts#L10) +[src/utilities/imageExtensionCheck.ts:10](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/imageExtensionCheck.ts#L10) diff --git a/talawa-api-docs/modules/utilities_mailer.md b/talawa-api-docs/modules/utilities_mailer.md index 25cac07613..9d0fc8715c 100644 --- a/talawa-api-docs/modules/utilities_mailer.md +++ b/talawa-api-docs/modules/utilities_mailer.md @@ -38,4 +38,4 @@ This is a utility method. #### Defined in -[src/utilities/mailer.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/mailer.ts#L24) +[src/utilities/mailer.ts:24](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/mailer.ts#L24) diff --git a/talawa-api-docs/modules/utilities_removeSampleOrganizationUtil.md b/talawa-api-docs/modules/utilities_removeSampleOrganizationUtil.md index 98bb00f9b1..ffa9d2e60f 100644 --- a/talawa-api-docs/modules/utilities_removeSampleOrganizationUtil.md +++ b/talawa-api-docs/modules/utilities_removeSampleOrganizationUtil.md @@ -20,4 +20,4 @@ #### Defined in -[src/utilities/removeSampleOrganizationUtil.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/removeSampleOrganizationUtil.ts#L3) +[src/utilities/removeSampleOrganizationUtil.ts:3](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/removeSampleOrganizationUtil.ts#L3) diff --git a/talawa-api-docs/modules/utilities_reuploadDuplicateCheck.md b/talawa-api-docs/modules/utilities_reuploadDuplicateCheck.md index 888e202b3b..cc1b769d36 100644 --- a/talawa-api-docs/modules/utilities_reuploadDuplicateCheck.md +++ b/talawa-api-docs/modules/utilities_reuploadDuplicateCheck.md @@ -20,7 +20,7 @@ #### Defined in -[src/utilities/reuploadDuplicateCheck.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/reuploadDuplicateCheck.ts#L15) +[src/utilities/reuploadDuplicateCheck.ts:15](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/reuploadDuplicateCheck.ts#L15) ## Functions @@ -50,4 +50,4 @@ This is a utility method. #### Defined in -[src/utilities/reuploadDuplicateCheck.ts:42](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/reuploadDuplicateCheck.ts#L42) +[src/utilities/reuploadDuplicateCheck.ts:42](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/reuploadDuplicateCheck.ts#L42) diff --git a/talawa-api-docs/modules/utilities_superAdminCheck.md b/talawa-api-docs/modules/utilities_superAdminCheck.md index 97effd0a01..8cd8774708 100644 --- a/talawa-api-docs/modules/utilities_superAdminCheck.md +++ b/talawa-api-docs/modules/utilities_superAdminCheck.md @@ -26,4 +26,4 @@ #### Defined in -[src/utilities/superAdminCheck.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/superAdminCheck.ts#L5) +[src/utilities/superAdminCheck.ts:5](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/superAdminCheck.ts#L5) diff --git a/talawa-api-docs/modules/utilities_uploadImage.md b/talawa-api-docs/modules/utilities_uploadImage.md index 5ede1212ba..3fd1eaba80 100644 --- a/talawa-api-docs/modules/utilities_uploadImage.md +++ b/talawa-api-docs/modules/utilities_uploadImage.md @@ -35,4 +35,4 @@ This is a utility method. #### Defined in -[src/utilities/uploadImage.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/2c2e70a/src/utilities/uploadImage.ts#L16) +[src/utilities/uploadImage.ts:16](https://github.com/PalisadoesFoundation/talawa-api/blob/cf57ca9/src/utilities/uploadImage.ts#L16) diff --git a/tests/directives/directiveTransformer/authDirectiveTransformer.spec.ts b/tests/directives/directiveTransformer/authDirectiveTransformer.spec.ts index 4e20a68c50..42ed691d3a 100644 --- a/tests/directives/directiveTransformer/authDirectiveTransformer.spec.ts +++ b/tests/directives/directiveTransformer/authDirectiveTransformer.spec.ts @@ -89,7 +89,7 @@ it("throws UnauthenticatedError when context is expired", async () => { }, { contextValue: authenticatedContext, - } + }, ); } catch (err) { if (err instanceof errors.UnauthenticatedError) { @@ -126,7 +126,7 @@ it("throws UnauthenticatedError when context: isAuth == false", async () => { }, { contextValue: authenticatedContext, - } + }, ); } catch (err) { if (err instanceof errors.UnauthenticatedError) { @@ -163,7 +163,7 @@ it("checks if the resolver is supplied, and return null data, if not", async () }, { contextValue: authenticatedContext, - } + }, ); //@ts-ignore @@ -198,7 +198,7 @@ it("returns data if isAuth == true and expire == false", async () => { }, { contextValue: authenticatedContext, - } + }, ); //@ts-ignore expect(result.body.singleResult.data).toEqual({ hello: "hi" }); diff --git a/tests/directives/directiveTransformer/roleDirectiveTransformer.spec.ts b/tests/directives/directiveTransformer/roleDirectiveTransformer.spec.ts index 204eafd918..d558084961 100644 --- a/tests/directives/directiveTransformer/roleDirectiveTransformer.spec.ts +++ b/tests/directives/directiveTransformer/roleDirectiveTransformer.spec.ts @@ -103,7 +103,7 @@ it("throws NotFoundError if no user exists with _id === context.userId", async ( }, { contextValue: authenticatedContext, - } + }, ); } catch (err) { if (err instanceof errors.NotFoundError) { @@ -143,7 +143,7 @@ it("throws UnauthenticatedError if user exists but userType != requires", async }, { contextValue: authenticatedContext, - } + }, ); //@ts-ignore @@ -185,7 +185,7 @@ it("returns data if user exists and userType === requires", async () => { }, { contextValue: authenticatedContext, - } + }, ); //@ts-ignore @@ -223,7 +223,7 @@ it("checks if the resolver is supplied, and return null data, if not", async () }, { contextValue: authenticatedContext, - } + }, ); //@ts-ignore diff --git a/tests/helpers/actionItem.ts b/tests/helpers/actionItem.ts index 1ebb112f69..a896cb87a3 100644 --- a/tests/helpers/actionItem.ts +++ b/tests/helpers/actionItem.ts @@ -20,7 +20,7 @@ export const createTestActionItem = async (): Promise< TestOrganizationType, TestActionItemCategoryType, TestActionItemType, - TestUserType + TestUserType, ] > => { const [testUser, testOrganization] = await createTestUserAndOrganization(); @@ -103,7 +103,7 @@ export const createTestActionItems = async (): Promise< }, { eventId: testEvent?._id, - } + }, ); await ActionItem.updateOne( @@ -112,7 +112,7 @@ export const createTestActionItems = async (): Promise< }, { eventId: testEvent?._id, - } + }, ); return [testUser, testEvent, testOrganization]; diff --git a/tests/helpers/advertisement.ts b/tests/helpers/advertisement.ts index e169a33e4f..4073afda64 100644 --- a/tests/helpers/advertisement.ts +++ b/tests/helpers/advertisement.ts @@ -30,7 +30,7 @@ export const createTestAdvertisement = // Create test advertisement in the database const createdAdvertisement = await Advertisement.create( - testAdvertisementData + testAdvertisementData, ); return createdAdvertisement.toObject(); diff --git a/tests/helpers/agendaCategory.ts b/tests/helpers/agendaCategory.ts new file mode 100644 index 0000000000..86fd67847d --- /dev/null +++ b/tests/helpers/agendaCategory.ts @@ -0,0 +1,71 @@ +import type { InterfaceAgendaCategory } from "../../src/models"; +import { AgendaCategoryModel, Organization } from "../../src/models"; +import type { Document } from "mongoose"; +import { type TestOrganizationType, type TestUserType } from "./userAndOrg"; +import { createTestUser } from "./user"; + +export type TestAgendaCategoryType = InterfaceAgendaCategory & Document; + +export const createTestAgendaCategory = async (): Promise< + [TestUserType, TestUserType, TestOrganizationType, TestAgendaCategoryType] +> => { + const testUser: TestUserType = await createTestUser(); + const testAdminUser: TestUserType = await createTestUser(); + const testOrganization: TestOrganizationType = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testAdminUser?._id, + admins: [testAdminUser?._id], + members: [testUser?._id, testAdminUser?._id], + creatorId: testAdminUser?._id, + }); + + const testCategory = await AgendaCategoryModel.create({ + name: "Test Categ", + description: "Test Desc", + organization: testOrganization?._id, + createdBy: testAdminUser?._id, + updatedBy: testAdminUser?._id, + createdAt: Date.now(), + updatedAt: Date.now(), + }); + + return [testUser, testAdminUser, testOrganization, testCategory]; +}; + +export const createTestAgendaCategories = async (): Promise< + [TestAgendaCategoryType, TestAgendaCategoryType] +> => { + const testUser: TestUserType = await createTestUser(); + const testAdminUser: TestUserType = await createTestUser(); + const testOrganization: TestOrganizationType = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testAdminUser?._id, + admins: [testAdminUser?._id], + members: [testUser?._id, testAdminUser?._id], + creatorId: testAdminUser?._id, + }); + const testCat1: TestAgendaCategoryType = await AgendaCategoryModel.create({ + name: "Test Categ", + description: "Test Desc", + organization: testOrganization?._id, + createdBy: testAdminUser?._id, + updatedBy: testAdminUser?._id, + createdAt: Date.now(), + updatedAt: Date.now(), + }); + const testCat2: TestAgendaCategoryType = await AgendaCategoryModel.create({ + name: "Test Categ1", + description: "Test Desc1", + organization: testOrganization?._id, + createdBy: testAdminUser?._id, + updatedBy: testAdminUser?._id, + createdAt: Date.now(), + updatedAt: Date.now(), + }); + + return [testCat1, testCat2]; +}; diff --git a/tests/helpers/checkIn.ts b/tests/helpers/checkIn.ts index ae82ee1a5f..45b3d912a3 100644 --- a/tests/helpers/checkIn.ts +++ b/tests/helpers/checkIn.ts @@ -35,7 +35,7 @@ export const createEventWithCheckedInUser = async (): Promise< }, { checkInId: checkIn!._id, - } + }, ); return [testUser, testOrg, testEvent, checkIn]; diff --git a/tests/helpers/db.ts b/tests/helpers/db.ts index 186f498342..b34d71cb3f 100644 --- a/tests/helpers/db.ts +++ b/tests/helpers/db.ts @@ -3,7 +3,7 @@ import mongoose from "mongoose"; // Returns a mongoose instance to the testing database export async function connect( - dbName = "TALAWA_API_TEST_DATABASE" + dbName = "TALAWA_API_TEST_DATABASE", ): Promise { return await mongoose.connect(process.env.MONGO_DB_URL as string, { dbName, @@ -15,7 +15,7 @@ export async function connect( } export async function dropAllCollectionsFromDatabase( - mongooseInstance: typeof mongoose + mongooseInstance: typeof mongoose, ): Promise { const collections = await mongooseInstance.connection.db.collections(); @@ -25,14 +25,14 @@ export async function dropAllCollectionsFromDatabase( } export async function dropDatabase( - mongooseInstance: typeof mongoose + mongooseInstance: typeof mongoose, ): Promise { await mongooseInstance.connection.db.dropDatabase(); } // Disconnects from the provided mongoose instance export async function disconnect( - mongooseInstance: typeof mongoose + mongooseInstance: typeof mongoose, ): Promise { await mongooseInstance.connection.close(); } diff --git a/tests/helpers/directChat.ts b/tests/helpers/directChat.ts index f5952dbef1..2dd8552689 100644 --- a/tests/helpers/directChat.ts +++ b/tests/helpers/directChat.ts @@ -39,7 +39,7 @@ export const createTestDirectChatMessage = async (): Promise< TestUserType, TestOrganizationType, TestDirectChatType, - TestDirectChatMessageType + TestDirectChatMessageType, ] > => { const [testUser, testOrganization, testDirectChat] = @@ -61,7 +61,7 @@ export const createTestDirectChatMessage = async (): Promise< export const createTestDirectMessageForMultipleUser = async ( senderId: string, receiverId: string, - organizationId: string + organizationId: string, ): Promise => { const testDirectChat = await DirectChat.create({ creatorId: senderId, @@ -82,7 +82,7 @@ export const createTestDirectMessageForMultipleUser = async ( export const createTestDirectChatwithUsers = async ( creator: string, organizationId: string, - users: string[] + users: string[], ): Promise => { const testDirectChat = await DirectChat.create({ creatorId: creator, @@ -95,7 +95,7 @@ export const createTestDirectChatwithUsers = async ( export const createDirectChatMessage = async ( senderId: string, receiverId: string, - directChatId: string + directChatId: string, ): Promise => { const directChatMessage = await DirectChatMessage.create({ directChatMessageBelongsTo: directChatId, diff --git a/tests/helpers/donation.ts b/tests/helpers/donation.ts index e74e965dff..81eedb016c 100644 --- a/tests/helpers/donation.ts +++ b/tests/helpers/donation.ts @@ -30,7 +30,7 @@ export const createTestDonation = async (): Promise< }; export const createTestDonationsForOrganization = async ( - organization: TestOrganizationType + organization: TestOrganizationType, ): Promise => { const testUser1 = await createTestUser(); const testDonation1 = await Donation.create({ diff --git a/tests/helpers/events.ts b/tests/helpers/events.ts index 53432afa53..143c5a21a6 100644 --- a/tests/helpers/events.ts +++ b/tests/helpers/events.ts @@ -1,12 +1,15 @@ import type { TestOrganizationType, TestUserType } from "./userAndOrg"; -import { createTestUserAndOrganization } from "./userAndOrg"; -import type { InterfaceEvent } from "../../src/models"; -import { Event, EventAttendee, User } from "../../src/models"; +import { createTestUser, createTestUserAndOrganization } from "./userAndOrg"; +import type { InterfaceEvent, InterfaceEventVolunteer } from "../../src/models"; +import { EventVolunteer, Event, EventAttendee, User } from "../../src/models"; import type { Document } from "mongoose"; import { nanoid } from "nanoid"; +import { EventVolunteerResponse } from "../../src/constants"; -export type TestEventType = - | (InterfaceEvent & Document) +export type TestEventType = (InterfaceEvent & Document) | null; + +export type TestEventVolunteerType = + | (InterfaceEventVolunteer & Document) | null; export const createTestEvent = async (): Promise< @@ -40,7 +43,7 @@ export const createTestEvent = async (): Promise< createdEvents: testEvent._id, registeredEvents: testEvent._id, }, - } + }, ); return [testUser, testOrganization, testEvent]; @@ -53,7 +56,7 @@ export const createEventWithRegistrant = async ( userId: string, organizationId: string, allDay: boolean, - recurrance: string + recurrance: string, ): Promise => { const testEvent = await Event.create({ creatorId: userId, @@ -74,7 +77,7 @@ export const createEventWithRegistrant = async ( await EventAttendee.create({ userId, - eventId: testEvent!._id, + eventId: testEvent?._id, }); await User.updateOne( @@ -87,7 +90,24 @@ export const createEventWithRegistrant = async ( createdEvents: testEvent._id, registeredEvents: testEvent._id, }, - } + }, ); return testEvent; }; + +export const createTestEventAndVolunteer = async (): Promise< + [TestUserType, TestUserType, TestEventType, TestEventVolunteerType] +> => { + const [creatorUser, , testEvent] = await createTestEvent(); + const volunteerUser = await createTestUser(); + const testEventVolunteer = await EventVolunteer.create({ + userId: volunteerUser?._id, + eventId: testEvent?._id, + isInvited: true, + isAssigned: false, + creatorId: creatorUser?._id, + response: EventVolunteerResponse.NO, + }); + + return [volunteerUser, creatorUser, testEvent, testEventVolunteer]; +}; diff --git a/tests/helpers/eventsWithRegistrants.ts b/tests/helpers/eventsWithRegistrants.ts index f3ff4dca31..6700af5c97 100644 --- a/tests/helpers/eventsWithRegistrants.ts +++ b/tests/helpers/eventsWithRegistrants.ts @@ -9,7 +9,7 @@ export type TestEventType = | null; export const createTestEventWithRegistrants = async ( - isAdmin = true + isAdmin = true, ): Promise<[TestUserType, TestOrganizationType, TestEventType]> => { const [testUser, testOrganization] = await createTestUserAndOrganization(); @@ -40,7 +40,7 @@ export const createTestEventWithRegistrants = async ( createdEvents: testEvent._id, registeredEvents: testEvent._id, }, - } + }, ); return [testUser, testOrganization, testEvent]; diff --git a/tests/helpers/feedback.ts b/tests/helpers/feedback.ts index e48123bbd2..e6657e9e67 100644 --- a/tests/helpers/feedback.ts +++ b/tests/helpers/feedback.ts @@ -11,7 +11,7 @@ export type TestFeedbackType = export const createFeedbackWithIDs = async ( eventId: string, - eventAttendeeId: string + eventAttendeeId: string, ): Promise => { const feedback = await Feedback.create({ eventId, @@ -32,7 +32,7 @@ export const createFeedback = async (): Promise< TestOrganizationType, TestEventType, TestCheckInType, - TestFeedbackType + TestFeedbackType, ] > => { const result = await createEventWithCheckedInUser(); diff --git a/tests/helpers/groupChat.ts b/tests/helpers/groupChat.ts index b1db9a4d16..7f24f1d755 100644 --- a/tests/helpers/groupChat.ts +++ b/tests/helpers/groupChat.ts @@ -39,7 +39,7 @@ export const createTestGroupChatMessage = async (): Promise< TestUserType, TestOrganizationType, TestGroupChatType, - TestGroupChatMessageType + TestGroupChatMessageType, ] > => { const [testUser, testOrganization, testGroupChat] = diff --git a/tests/helpers/membershipRequests.ts b/tests/helpers/membershipRequests.ts index 05a4f4fbf8..a947f51a23 100644 --- a/tests/helpers/membershipRequests.ts +++ b/tests/helpers/membershipRequests.ts @@ -40,7 +40,7 @@ export const createTestMembershipRequest = async (): Promise< adminFor: testOrganization._id, membershipRequests: testMembershipRequest._id, }, - } + }, ); await Organization.updateOne( @@ -51,7 +51,7 @@ export const createTestMembershipRequest = async (): Promise< $push: { membershipRequests: testMembershipRequest._id, }, - } + }, ); return [testUser, testOrganization, testMembershipRequest]; @@ -85,7 +85,7 @@ export const createTestMembershipRequestAsNew = async (): Promise< }, { new: true, - } + }, ); testOrganization = await Organization.findOneAndUpdate( @@ -99,7 +99,7 @@ export const createTestMembershipRequestAsNew = async (): Promise< }, { new: true, - } + }, ); return [testUser, testOrganization, testMembershipRequest]; } else { diff --git a/tests/helpers/posts.ts b/tests/helpers/posts.ts index adf0140fa7..6ad6f23d08 100644 --- a/tests/helpers/posts.ts +++ b/tests/helpers/posts.ts @@ -14,7 +14,7 @@ export type TestCommentType = | null; export const createTestPost = async ( - pinned = false + pinned = false, ): Promise<[TestUserType, TestOrganizationType, TestPostType]> => { const resultsArray = await createTestUserAndOrganization(); const testUser = resultsArray[0]; @@ -35,7 +35,7 @@ export const createTestPost = async ( $push: { posts: testPost._id, }, - } + }, ); return [testUser, testOrganization, testPost]; @@ -64,7 +64,7 @@ export const createPostwithComment = async (): Promise< likeCount: 1, commentCount: 1, }, - } + }, ); await Comment.updateOne( @@ -78,14 +78,14 @@ export const createPostwithComment = async (): Promise< $inc: { likeCount: 1, }, - } + }, ); return [testUser, testOrganization, testPost, testComment]; }; export const createSinglePostwithComment = async ( userId: string, - organizationId: string + organizationId: string, ): Promise<[TestPostType, TestCommentType]> => { const testPost = await Post.create({ text: `text${nanoid().toLowerCase()}`, @@ -114,7 +114,7 @@ export const createSinglePostwithComment = async ( likeCount: 1, commentCount: 1, }, - } + }, ); return [testPost, testComment]; }; @@ -122,7 +122,7 @@ export const createSinglePostwithComment = async ( export const createTestSinglePost = async ( userId: string, organizationId: string, - pinned = false + pinned = false, ): Promise => { const testPost = await Post.create({ text: `text${nanoid().toLowerCase()}`, diff --git a/tests/helpers/tags.ts b/tests/helpers/tags.ts index ab9a997b8b..f5852d14f5 100644 --- a/tests/helpers/tags.ts +++ b/tests/helpers/tags.ts @@ -21,7 +21,7 @@ export const createRootTagWithOrg = async (): Promise< }; export const createRootTagsWithOrg = async ( - numberOfTags = 1 + numberOfTags = 1, ): Promise<[TestUserType, TestOrganizationType, TestUserTagType[]]> => { const [testUser, testOrganization] = await createTestUserAndOrganization(); const tags: TestUserTagType[] = []; @@ -42,7 +42,7 @@ export const createTwoLevelTagsWithOrg = async (): Promise< [ TestUserType, TestOrganizationType, - [TestUserTagType, TestUserTagType, TestUserTagType] + [TestUserTagType, TestUserTagType, TestUserTagType], ] > => { const [testUser, testOrg, testRootTag] = await createRootTagWithOrg(); @@ -66,7 +66,7 @@ export const createTwoLevelTagsWithOrg = async (): Promise< export const createAndAssignUsersToTag = async ( tag: TestUserTagType, - numberOfUsers = 1 + numberOfUsers = 1, ): Promise => { const testUsers: TestUserType[] = []; @@ -83,7 +83,7 @@ export const createAndAssignUsersToTag = async ( }; export const createTagsAndAssignToUser = async ( - numberOfTags = 1 + numberOfTags = 1, ): Promise<[TestUserType, TestOrganizationType, TestUserTagType[]]> => { const [testUser, testOrg, testTag] = await createRootTagWithOrg(); await TagUser.create({ diff --git a/tests/helpers/userAndOrg.ts b/tests/helpers/userAndOrg.ts index d3e7c11f73..58ebb4d83c 100644 --- a/tests/helpers/userAndOrg.ts +++ b/tests/helpers/userAndOrg.ts @@ -28,7 +28,7 @@ export const createTestOrganizationWithAdmin = async ( userID: string, isMember = true, isAdmin = true, - userRegistrationRequired = false + userRegistrationRequired = false, ): Promise => { const testOrganization = await Organization.create({ name: `orgName${nanoid().toLowerCase()}`, @@ -50,7 +50,7 @@ export const createTestOrganizationWithAdmin = async ( adminFor: testOrganization._id, joinedOrganizations: testOrganization._id, }, - } + }, ); return testOrganization; @@ -59,21 +59,21 @@ export const createTestOrganizationWithAdmin = async ( export const createTestUserAndOrganization = async ( isMember = true, isAdmin = true, - userRegistrationRequired = false + userRegistrationRequired = false, ): Promise<[TestUserType, TestOrganizationType]> => { const testUser = await createTestUser(); const testOrganization = await createTestOrganizationWithAdmin( testUser?._id, isMember, isAdmin, - userRegistrationRequired + userRegistrationRequired, ); return [testUser, testOrganization]; }; export const createOrganizationwithVisibility = async ( userID: string, - visibleInSearch: boolean + visibleInSearch: boolean, ): Promise => { const testOrganization = await Organization.create({ name: `orgName${nanoid().toLowerCase()}`, @@ -96,7 +96,7 @@ export const createOrganizationwithVisibility = async ( adminFor: testOrganization._id, joinedOrganizations: testOrganization._id, }, - } + }, ); return testOrganization; diff --git a/tests/helpers/userAndUserFamily.ts b/tests/helpers/userAndUserFamily.ts new file mode 100644 index 0000000000..e424808304 --- /dev/null +++ b/tests/helpers/userAndUserFamily.ts @@ -0,0 +1,75 @@ +import { nanoid } from "nanoid"; +import type { InterfaceUserFamily } from "../../src/models/userFamily"; +import { User } from "../../src/models"; +import { UserFamily } from "../../src/models/userFamily"; +import type { InterfaceUser } from "../../src/models"; + +import type { Document } from "mongoose"; +/* eslint-disable */ +export type TestUserFamilyType = + | (InterfaceUserFamily & Document) + | null; + +export type TestUserType = + | (InterfaceUser & Document) + | null; +/* eslint-enable */ +export const createTestUserFunc = async (): Promise => { + const testUser = await User.create({ + email: `email${nanoid().toLowerCase()}@gmail.com`, + password: `pass${nanoid().toLowerCase()}`, + firstName: `firstName${nanoid().toLowerCase()}`, + lastName: `lastName${nanoid().toLowerCase()}`, + appLanguageCode: "en", + userType: "SUPERADMIN", + }); + + return testUser; +}; + +export const createTestUserFamilyWithAdmin = async ( + userID: string, + isMember = true, + isAdmin = true, +): Promise => { + const testUser = await createTestUserFunc(); + if (testUser) { + const testUserFamily = await UserFamily.create({ + title: `name${nanoid().toLocaleLowerCase()}`, + users: isMember ? [testUser._id] : [], + admins: isAdmin ? [testUser._id] : [], + creator: [testUser._id], + }); + + await User.updateOne( + { + _id: userID, + }, + { + $push: { + createdUserFamily: testUserFamily._id, + joinedUserFamily: testUserFamily._id, + adminForUserFamily: testUserFamily._id, + }, + }, + ); + + return testUserFamily; + } else { + return null; + } +}; + +export const createTestUserAndUserFamily = async ( + isMember = true, + isAdmin = true, +): Promise<[TestUserType, TestUserFamilyType]> => { + const testUser = await createTestUserFunc(); + const testUserFamily = await createTestUserFamilyWithAdmin( + testUser?._id, + isMember, + isAdmin, + ); + + return [testUser, testUserFamily]; +}; diff --git a/tests/libraries/dbLogger.spec.ts b/tests/libraries/dbLogger.spec.ts index 1e6727694a..0348493487 100644 --- a/tests/libraries/dbLogger.spec.ts +++ b/tests/libraries/dbLogger.spec.ts @@ -83,14 +83,14 @@ describe("Database transaction logging", () => { const spyInfoLog = vi.spyOn(dbLogger as winston.Logger, "info"); const savePreMiddleware = mockPreFunction.mock.calls.find( - (call) => call[0] === "save" + (call) => call[0] === "save", )?.[1]; savePreMiddleware.call(mockDocument, () => { return; }); expect(mockDocument.logInfo).toBeDefined(); const savePostMiddleware = mockPostFunction.mock.calls.find( - (call) => call[0] === "save" + (call) => call[0] === "save", )?.[1]; savePostMiddleware.call(mockDocument); expect(spyInfoLog).toHaveBeenCalledWith("success", mockDocument.logInfo); @@ -104,14 +104,14 @@ describe("Database transaction logging", () => { ]; operations.forEach((operation) => { const preMiddleware = mockPreFunction.mock.calls.find( - (call) => call[0] === operation + (call) => call[0] === operation, )?.[1]; preMiddleware.call(mockQuery, () => { return; }); expect(mockQuery.logInfo).toBeDefined(); const postMiddleware = mockPostFunction.mock.calls.find( - (call) => call[0] === operation + (call) => call[0] === operation, )?.[1]; postMiddleware.call(mockQuery); expect(spyInfoLog).toHaveBeenCalledWith("success", mockQuery.logInfo); diff --git a/tests/libraries/errors/internalServerError.spec.ts b/tests/libraries/errors/internalServerError.spec.ts index 8e02de71a9..3514e5f842 100644 --- a/tests/libraries/errors/internalServerError.spec.ts +++ b/tests/libraries/errors/internalServerError.spec.ts @@ -9,7 +9,7 @@ describe("libraries -> errors -> internalServerError", () => { throw new errors.InternalServerError( INTERNAL_SERVER_ERROR.MESSAGE, INTERNAL_SERVER_ERROR.CODE, - INTERNAL_SERVER_ERROR.PARAM + INTERNAL_SERVER_ERROR.PARAM, ); } catch (error: any) { expect(error.errors).toEqual([ diff --git a/tests/libraries/errors/unauthenticatedError.spec.ts b/tests/libraries/errors/unauthenticatedError.spec.ts index d9bfd90d77..ec0e22cfdc 100644 --- a/tests/libraries/errors/unauthenticatedError.spec.ts +++ b/tests/libraries/errors/unauthenticatedError.spec.ts @@ -9,7 +9,7 @@ describe("libraries -> errors -> unauthenticatedError", () => { throw new errors.UnauthenticatedError( UNAUTHENTICATED_ERROR.MESSAGE, UNAUTHENTICATED_ERROR.CODE, - UNAUTHENTICATED_ERROR.PARAM + UNAUTHENTICATED_ERROR.PARAM, ); } catch (error: any) { expect(error.errors).toEqual([ diff --git a/tests/libraries/logger.spec.ts b/tests/libraries/logger.spec.ts index 5257531243..09a78a4639 100644 --- a/tests/libraries/logger.spec.ts +++ b/tests/libraries/logger.spec.ts @@ -69,14 +69,14 @@ describe("logger functions", () => { undefined, // splat() undefined, // simple() undefined, // timestamp() - undefined // printf() + undefined, // printf() ); } else { expect(format.combine).toHaveBeenCalledWith( undefined, // splat() undefined, // simple() undefined, // timestamp() - undefined // printf() + undefined, // printf() ); } }); diff --git a/tests/libraries/requestContext.spec.ts b/tests/libraries/requestContext.spec.ts index 1b37aaffdb..6b7f11311b 100644 --- a/tests/libraries/requestContext.spec.ts +++ b/tests/libraries/requestContext.spec.ts @@ -54,7 +54,7 @@ describe("middleware -> requestContext", () => { middleware()( mockRequest as Request, mockResponse as Response, - nextFunction as NextFunction + nextFunction as NextFunction, ); expect(nextFunction).toBeCalledTimes(1); }); @@ -91,7 +91,7 @@ describe("middleware -> requestContext", () => { translate({}); } catch (error: any) { expect(error.message).toEqual( - "i18n is not initialized, try app.use(i18n.init);" + "i18n is not initialized, try app.use(i18n.init);", ); } }); @@ -101,7 +101,7 @@ describe("middleware -> requestContext", () => { translatePlural({}); } catch (error: any) { expect(error.message).toEqual( - "i18n is not initialized, try app.use(i18n.init);" + "i18n is not initialized, try app.use(i18n.init);", ); } }); diff --git a/tests/libraries/requestTracing.spec.ts b/tests/libraries/requestTracing.spec.ts index 1dab8b79c2..9a09444585 100644 --- a/tests/libraries/requestTracing.spec.ts +++ b/tests/libraries/requestTracing.spec.ts @@ -45,7 +45,7 @@ describe("middleware -> requestContext", () => { }; const resHeaderMethod = ( tracingIdHeaderName: string, - tracingID: string + tracingID: string, ): string => { return requestTracingNamespace.set(tracingIdHeaderName, tracingID); }; @@ -60,7 +60,7 @@ describe("middleware -> requestContext", () => { middleware()( mockRequest as Request, mockResponse as Response, - nextFunction as NextFunction + nextFunction as NextFunction, ); expect(tracingIdHeaderName).toBe("X-Tracing-Id"); expect(nextFunction).toBeCalledTimes(1); diff --git a/tests/middleware/isAuth.spec.ts b/tests/middleware/isAuth.spec.ts index 66e4dccb19..aaa80a65aa 100644 --- a/tests/middleware/isAuth.spec.ts +++ b/tests/middleware/isAuth.spec.ts @@ -100,7 +100,7 @@ describe("middleware -> isAuth", () => { expect(verifyMocked).toHaveBeenCalledWith( testToken, ACCESS_TOKEN_SECRET as string, - expect.anything() + expect.anything(), ); expect(authData).toEqual(testAuthData); }); @@ -129,7 +129,7 @@ describe("middleware -> isAuth", () => { expect(verifyMocked).toHaveBeenCalledWith( testToken, ACCESS_TOKEN_SECRET as string, - expect.anything() + expect.anything(), ); expect(infoSpy).toBeCalledWith("decoded token is not present"); expect(authData).toEqual(testAuthData); @@ -191,7 +191,7 @@ describe("middleware -> isAuth", () => { expect(verifyMocked).toHaveBeenCalledWith( testToken, ACCESS_TOKEN_SECRET as string, - expect.anything() + expect.anything(), ); expect(authData).toEqual(testAuthData); }); diff --git a/tests/resolvers/ActionItem/category.spec.ts b/tests/resolvers/ActionItem/category.spec.ts index d034f89468..e7b87bdb94 100644 --- a/tests/resolvers/ActionItem/category.spec.ts +++ b/tests/resolvers/ActionItem/category.spec.ts @@ -28,7 +28,7 @@ describe("resolvers -> ActionItem -> actionItemCategory", () => { const actionItemCategoryPayload = await actionItemCategoryResolver?.( parent, {}, - {} + {}, ); const actionItemCategoryObject = await ActionItemCategory.findOne({ diff --git a/tests/resolvers/ActionItem/event.spec.ts b/tests/resolvers/ActionItem/event.spec.ts index f93397e5a5..1dabeb7508 100644 --- a/tests/resolvers/ActionItem/event.spec.ts +++ b/tests/resolvers/ActionItem/event.spec.ts @@ -51,7 +51,7 @@ describe("resolvers -> ActionItem -> event", () => { }, { new: true, - } + }, ); const parent = updatedTestActionItem?.toObject(); @@ -59,7 +59,7 @@ describe("resolvers -> ActionItem -> event", () => { const eventByPayload = await eventResolver?.( parent as InterfaceActionItem, {}, - {} + {}, ); expect(eventByPayload?._id).toEqual(updatedTestActionItem?.eventId); diff --git a/tests/resolvers/AgendaCategory/createdBy.spec.ts b/tests/resolvers/AgendaCategory/createdBy.spec.ts new file mode 100644 index 0000000000..bc5af63df5 --- /dev/null +++ b/tests/resolvers/AgendaCategory/createdBy.spec.ts @@ -0,0 +1,36 @@ +import "dotenv/config"; +import { connect, disconnect } from "../../helpers/db"; +import { createdBy as createdByResolver } from "../../../src/resolvers/AgendaCategory/createdBy"; +import type mongoose from "mongoose"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import { User } from "../../../src/models"; +import type { TestUserType } from "../../helpers/userAndOrg"; +import type { TestAgendaCategoryType } from "../../helpers/agendaCategory"; +import { createTestAgendaCategory } from "../../helpers/agendaCategory"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testAdminUser: TestUserType; +let testAgendaCategory: TestAgendaCategoryType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + [, testAdminUser, , testAgendaCategory] = await createTestAgendaCategory(); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> AgendaCategory -> createdBy", () => { + it(`returns the creator for parent agendaCategory`, async () => { + const parent = testAgendaCategory?.toObject(); + + const createdByPayload = await createdByResolver?.(parent, {}, {}); + + const createdByObject = await User.findOne({ + _id: testAdminUser?._id, + }).lean(); + + expect(createdByPayload).toEqual(createdByObject); + }); +}); diff --git a/tests/resolvers/AgendaCategory/organization.spec.ts b/tests/resolvers/AgendaCategory/organization.spec.ts new file mode 100644 index 0000000000..672965d151 --- /dev/null +++ b/tests/resolvers/AgendaCategory/organization.spec.ts @@ -0,0 +1,52 @@ +import "dotenv/config"; +import { organization as organizationResolver } from "../../../src/resolvers/AgendaCategory/organization"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import { AgendaCategoryModel, Organization } from "../../../src/models"; +import type { TestOrganizationType } from "../../helpers/userAndOrg"; +import type { TestAgendaCategoryType } from "../../helpers/agendaCategory"; +import type { TestUserType } from "../../helpers/user"; +import { createTestUser } from "../../helpers/user"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testOrganization: TestOrganizationType; +let testAgendaCategory: TestAgendaCategoryType; +let testAdminUser: TestUserType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + testAdminUser = await createTestUser(); + testOrganization = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testAdminUser?._id, + admins: [testAdminUser?._id], + members: [testAdminUser?._id], + creatorId: testAdminUser?._id, + }); + testAgendaCategory = await AgendaCategoryModel.create({ + name: "Test Categ", + description: "Test Desc", + organizationId: testOrganization?._id, + createdBy: testAdminUser?._id, + updatedBy: testAdminUser?._id, + createdAt: Date.now(), + updatedAt: Date.now(), + }); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> AgendaCategory -> organization", () => { + it(`returns the organization object for parent agendaCategory`, async () => { + const parent = testAgendaCategory?.toObject(); + + const orgPayload = await organizationResolver?.(parent, {}, {}); + + expect(orgPayload); + }); +}); diff --git a/tests/resolvers/AgendaCategory/updatedBy.spec.ts b/tests/resolvers/AgendaCategory/updatedBy.spec.ts new file mode 100644 index 0000000000..d599e622db --- /dev/null +++ b/tests/resolvers/AgendaCategory/updatedBy.spec.ts @@ -0,0 +1,61 @@ +import "dotenv/config"; +import { connect, disconnect } from "../../helpers/db"; +import { updatedBy as updatedByResolver } from "../../../src/resolvers/AgendaCategory/updatedBy"; +import type mongoose from "mongoose"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import { AgendaCategoryModel, Organization, User } from "../../../src/models"; +import { + createTestUser, + type TestOrganizationType, + type TestUserType, +} from "../../helpers/userAndOrg"; +import type { TestAgendaCategoryType } from "../../helpers/agendaCategory"; + +let MONGOOSE_INSTANCE: typeof mongoose; + +let testUser: TestUserType; +let testAdminUser: TestUserType; +let testOrganization: TestOrganizationType; +let testAgendaCategory: TestAgendaCategoryType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + testUser = await createTestUser(); + testAdminUser = await createTestUser(); + testOrganization = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testUser?._id, + admins: [testAdminUser?._id], + members: [testUser?._id, testAdminUser?._id], + creatorId: testUser?._id, + }); + testAgendaCategory = await AgendaCategoryModel.create({ + name: "Test Categ", + description: "Test Desc", + organization: testOrganization?._id, + createdBy: testAdminUser?._id, + updatedBy: testAdminUser?._id, + createdAt: Date.now(), + updatedAt: Date.now(), + }); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> AgendaCategory -> updatedBy", () => { + it(`returns the updater for parent agendaCategory`, async () => { + const parent = testAgendaCategory?.toObject(); + + const updatedByPayload = await updatedByResolver?.(parent, {}, {}); + + const updatedByObject = await User.findOne({ + _id: testAdminUser?._id, + }).lean(); + + expect(updatedByPayload).toEqual(updatedByObject); + }); +}); diff --git a/tests/resolvers/DirectChatMessage/directChatMessageBelongsTo.spec.ts b/tests/resolvers/DirectChatMessage/directChatMessageBelongsTo.spec.ts index 93d20eb245..bed2971cc9 100644 --- a/tests/resolvers/DirectChatMessage/directChatMessageBelongsTo.spec.ts +++ b/tests/resolvers/DirectChatMessage/directChatMessageBelongsTo.spec.ts @@ -32,7 +32,7 @@ describe("resolvers -> DirectChatMessage -> directChatMessageBelongsTo", () => { }).lean(); expect(directChatMessageBelongsToPayload).toEqual( - directChatMessageBelongsTo + directChatMessageBelongsTo, ); }); }); diff --git a/tests/resolvers/Event/averageFeedbackScore.test.ts b/tests/resolvers/Event/averageFeedbackScore.test.ts index ed6bdebad3..e02c71c2b1 100644 --- a/tests/resolvers/Event/averageFeedbackScore.test.ts +++ b/tests/resolvers/Event/averageFeedbackScore.test.ts @@ -30,7 +30,7 @@ describe("resolvers -> Event -> averageFeedbackScore", () => { const averageFeedbackScorePayload = await averageFeedbackScoreResolver?.( parent, {}, - {} + {}, ); expect(averageFeedbackScorePayload).toEqual(0); @@ -44,7 +44,7 @@ describe("resolvers -> Event -> averageFeedbackScore", () => { const averageFeedbackScorePayload = await averageFeedbackScoreResolver?.( parent, {}, - {} + {}, ); expect(averageFeedbackScorePayload).toEqual(3); diff --git a/tests/resolvers/EventVolunteer/creator.spec.ts b/tests/resolvers/EventVolunteer/creator.spec.ts new file mode 100644 index 0000000000..246c7cffcb --- /dev/null +++ b/tests/resolvers/EventVolunteer/creator.spec.ts @@ -0,0 +1,46 @@ +import "dotenv/config"; +import { creator as creatorResolver } from "../../../src/resolvers/EventVolunteer/creator"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { + beforeAll, + afterAll, + describe, + it, + expect, + beforeEach, + vi, +} from "vitest"; +import type { TestEventVolunteerType } from "../../helpers/events"; +import { createTestEventAndVolunteer } from "../../helpers/events"; +import type { TestUserType } from "../../helpers/userAndOrg"; +import type { InterfaceEventVolunteer } from "../../../src/models"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testEventVolunteer: TestEventVolunteerType; +let creatorUser: TestUserType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + [, creatorUser, , testEventVolunteer] = await createTestEventAndVolunteer(); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> EventVolunteer -> user", () => { + beforeEach(() => { + vi.resetModules(); + }); + it(`returns the correct creator object for parent event volunteer`, async () => { + const parent = testEventVolunteer?.toObject(); + const creatorPayload = await creatorResolver?.( + parent as InterfaceEventVolunteer, + {}, + {}, + ); + + expect(creatorPayload?._id).toEqual(creatorUser?._id); + }); +}); diff --git a/tests/resolvers/EventVolunteer/event.spec.ts b/tests/resolvers/EventVolunteer/event.spec.ts new file mode 100644 index 0000000000..7a0b04ab5b --- /dev/null +++ b/tests/resolvers/EventVolunteer/event.spec.ts @@ -0,0 +1,38 @@ +import "dotenv/config"; +import { event as eventResolver } from "../../../src/resolvers/EventVolunteer/event"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import type { + TestEventType, + TestEventVolunteerType, +} from "../../helpers/events"; +import { createTestEventAndVolunteer } from "../../helpers/events"; +import type { InterfaceEventVolunteer } from "../../../src/models"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testEvent: TestEventType; +let testEventVolunteer: TestEventVolunteerType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + [, , testEvent, testEventVolunteer] = await createTestEventAndVolunteer(); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> EventVolunteer -> event", () => { + it(`returns the correct event object for parent event volunteer`, async () => { + const parent = testEventVolunteer?.toObject(); + + const eventPayload = await eventResolver?.( + parent as InterfaceEventVolunteer, + {}, + {}, + ); + + expect(eventPayload).toEqual(testEvent?.toObject()); + }); +}); diff --git a/tests/resolvers/EventVolunteer/user.spec.ts b/tests/resolvers/EventVolunteer/user.spec.ts new file mode 100644 index 0000000000..56ac382f6b --- /dev/null +++ b/tests/resolvers/EventVolunteer/user.spec.ts @@ -0,0 +1,52 @@ +import "dotenv/config"; +import { user as userResolver } from "../../../src/resolvers/EventVolunteer/user"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { + beforeAll, + afterAll, + describe, + it, + expect, + beforeEach, + vi, +} from "vitest"; +import type { TestEventVolunteerType } from "../../helpers/events"; +import { createTestEventAndVolunteer } from "../../helpers/events"; +import type { TestUserType } from "../../helpers/userAndOrg"; +import type { InterfaceEventVolunteer } from "../../../src/models"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testUser: TestUserType; +let testEventVolunteer: TestEventVolunteerType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + [testUser, , , testEventVolunteer] = await createTestEventAndVolunteer(); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> EventVolunteer -> user", () => { + beforeEach(() => { + vi.resetModules(); + }); + it(`returns the correct user object for parent event volunteer`, async () => { + const parent = testEventVolunteer?.toObject(); + console.log(testEventVolunteer?.userId); + console.log(testUser?._id); + + const userPayload = await userResolver?.( + parent as InterfaceEventVolunteer, + {}, + {}, + ); + + expect(userPayload).toEqual({ + ...testUser?.toObject(), + updatedAt: expect.anything(), + }); + }); +}); diff --git a/tests/resolvers/GroupChat/creator.spec.ts b/tests/resolvers/GroupChat/creator.spec.ts index 22e5cd4f0f..5184e618d4 100644 --- a/tests/resolvers/GroupChat/creator.spec.ts +++ b/tests/resolvers/GroupChat/creator.spec.ts @@ -28,7 +28,7 @@ describe("resolvers -> GroupChat -> creator", () => { const creatorPayload = await creatorResolver?.( parent ?? ({} as InterfaceGroupChat), {}, - {} + {}, ); const creator = await User.findOne({ diff --git a/tests/resolvers/Mutation/acceptAdmin.spec.ts b/tests/resolvers/Mutation/acceptAdmin.spec.ts index c6540c6711..fee1bd04c8 100644 --- a/tests/resolvers/Mutation/acceptAdmin.spec.ts +++ b/tests/resolvers/Mutation/acceptAdmin.spec.ts @@ -65,7 +65,7 @@ describe("resolvers -> Mutation -> acceptAdmin", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -92,7 +92,7 @@ describe("resolvers -> Mutation -> acceptAdmin", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}`, ); } }); @@ -107,7 +107,7 @@ describe("resolvers -> Mutation -> acceptAdmin", () => { userType: "SUPERADMIN", adminApproved: true, }, - } + }, ); const args: MutationAcceptAdminArgs = { @@ -153,7 +153,7 @@ describe("resolvers -> Mutation -> acceptAdmin", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); diff --git a/tests/resolvers/Mutation/acceptMembershipRequest.spec.ts b/tests/resolvers/Mutation/acceptMembershipRequest.spec.ts index f7a9612f81..e162680de1 100644 --- a/tests/resolvers/Mutation/acceptMembershipRequest.spec.ts +++ b/tests/resolvers/Mutation/acceptMembershipRequest.spec.ts @@ -71,10 +71,10 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { await acceptMembershipRequestResolver?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenCalledWith( - MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.MESSAGE + MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${MEMBERSHIP_REQUEST_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -94,7 +94,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { $set: { organization: Types.ObjectId().toString(), }, - } + }, ); const args: MutationAcceptMembershipRequestArgs = { @@ -112,7 +112,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -133,7 +133,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { organization: testOrganization?._id, user: Types.ObjectId().toString(), }, - } + }, ); const args: MutationAcceptMembershipRequestArgs = { @@ -151,7 +151,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -174,7 +174,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { $set: { user: testUser?.id, }, - } + }, ); await Organization.updateOne( @@ -185,7 +185,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { $set: { admins: [], }, - } + }, ); const args: MutationAcceptMembershipRequestArgs = { @@ -203,7 +203,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); } }); @@ -225,7 +225,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { admins: testUser?._id, members: testUser?._id, }, - } + }, ); const args: MutationAcceptMembershipRequestArgs = { @@ -243,7 +243,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_ALREADY_MEMBER_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_ALREADY_MEMBER_ERROR.MESSAGE}` + `Translated ${USER_ALREADY_MEMBER_ERROR.MESSAGE}`, ); } }); @@ -257,7 +257,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { $set: { members: [], }, - } + }, ); const args: MutationAcceptMembershipRequestArgs = { @@ -273,7 +273,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { await acceptMembershipRequestResolver?.({}, args, context); expect(acceptMembershipRequestPayload?._id).toEqual( - testMembershipRequest?._id + testMembershipRequest?._id, ); const updatedTestOrganization = await Organization.findOne({ @@ -286,7 +286,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { expect.objectContaining({ members: expect.arrayContaining([testUser?._id]), membershipRequests: expect.arrayContaining([]), - }) + }), ); const updatedTestUser = await User.findOne({ @@ -299,7 +299,7 @@ describe("resolvers -> Mutation -> acceptMembershipRequest", () => { expect.objectContaining({ joinedOrganizations: expect.arrayContaining([testOrganization?._id]), membershipRequests: expect.arrayContaining([]), - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/addEventAttendee.spec.ts b/tests/resolvers/Mutation/addEventAttendee.spec.ts index 8c6aeb256e..1881c9e1bf 100644 --- a/tests/resolvers/Mutation/addEventAttendee.spec.ts +++ b/tests/resolvers/Mutation/addEventAttendee.spec.ts @@ -54,7 +54,7 @@ describe("resolvers -> Mutation -> addEventAttendee", () => { await addEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -84,7 +84,7 @@ describe("resolvers -> Mutation -> addEventAttendee", () => { await addEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(EVENT_NOT_FOUND_ERROR.MESSAGE); } @@ -114,7 +114,7 @@ describe("resolvers -> Mutation -> addEventAttendee", () => { await addEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); } @@ -144,7 +144,7 @@ describe("resolvers -> Mutation -> addEventAttendee", () => { await addEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -202,10 +202,10 @@ describe("resolvers -> Mutation -> addEventAttendee", () => { await addEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_ALREADY_REGISTERED_FOR_EVENT.MESSAGE}` + `Translated ${USER_ALREADY_REGISTERED_FOR_EVENT.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - USER_ALREADY_REGISTERED_FOR_EVENT.MESSAGE + USER_ALREADY_REGISTERED_FOR_EVENT.MESSAGE, ); } }); diff --git a/tests/resolvers/Mutation/addFeedback.spec.ts b/tests/resolvers/Mutation/addFeedback.spec.ts index 8382cfa207..77163a46c2 100644 --- a/tests/resolvers/Mutation/addFeedback.spec.ts +++ b/tests/resolvers/Mutation/addFeedback.spec.ts @@ -58,7 +58,7 @@ describe("resolvers -> Query -> addFeedback", () => { await addFeedbackResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(EVENT_NOT_FOUND_ERROR.MESSAGE); } @@ -91,10 +91,10 @@ describe("resolvers -> Query -> addFeedback", () => { await addFeedbackResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_REGISTERED_FOR_EVENT.MESSAGE}` + `Translated ${USER_NOT_REGISTERED_FOR_EVENT.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - USER_NOT_REGISTERED_FOR_EVENT.MESSAGE + USER_NOT_REGISTERED_FOR_EVENT.MESSAGE, ); } }); @@ -131,7 +131,7 @@ describe("resolvers -> Query -> addFeedback", () => { await addFeedbackResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_CHECKED_IN.MESSAGE}` + `Translated ${USER_NOT_CHECKED_IN.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_CHECKED_IN.MESSAGE); } @@ -197,7 +197,7 @@ describe("resolvers -> Query -> addFeedback", () => { await addFeedbackResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${FEEDBACK_ALREADY_SUBMITTED.MESSAGE}` + `Translated ${FEEDBACK_ALREADY_SUBMITTED.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(FEEDBACK_ALREADY_SUBMITTED.MESSAGE); } diff --git a/tests/resolvers/Mutation/addLanguageTranslation.spec.ts b/tests/resolvers/Mutation/addLanguageTranslation.spec.ts index bc0233f288..9dd9dab519 100644 --- a/tests/resolvers/Mutation/addLanguageTranslation.spec.ts +++ b/tests/resolvers/Mutation/addLanguageTranslation.spec.ts @@ -61,7 +61,7 @@ describe("resolvers -> Mutation -> addLanguageTranslation", () => { for language with en === args.data.en_value`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); try { const args: MutationAddLanguageTranslationArgs = testArgs[1]; @@ -93,7 +93,7 @@ describe("resolvers -> Mutation -> addLanguageTranslation", () => { value: testArgs[2].data.translation_value, }), ]), - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/addOrganizationCustomField.spec.ts b/tests/resolvers/Mutation/addOrganizationCustomField.spec.ts index dc89dcba37..785cba7941 100644 --- a/tests/resolvers/Mutation/addOrganizationCustomField.spec.ts +++ b/tests/resolvers/Mutation/addOrganizationCustomField.spec.ts @@ -45,13 +45,13 @@ describe("resolvers => Mutation => addOrganizationCustomField", () => { const newCustomField = await addOrganizationCustomField?.( {}, args, - context + context, ); expect(newCustomField?.name).toBe("testName"); expect(newCustomField?.type).toBe("testType"); expect(newCustomField?.organizationId.toString()).toBe( - testOrganization?._id.toString() + testOrganization?._id.toString(), ); }); @@ -77,7 +77,7 @@ describe("resolvers => Mutation => addOrganizationCustomField", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -101,7 +101,7 @@ describe("resolvers => Mutation => addOrganizationCustomField", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(CUSTOM_FIELD_NAME_MISSING.MESSAGE); expect(error.message).toEqual( - `Translated ${CUSTOM_FIELD_NAME_MISSING.MESSAGE}` + `Translated ${CUSTOM_FIELD_NAME_MISSING.MESSAGE}`, ); } }); @@ -125,7 +125,7 @@ describe("resolvers => Mutation => addOrganizationCustomField", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(CUSTOM_FIELD_TYPE_MISSING.MESSAGE); expect(error.message).toEqual( - `Translated ${CUSTOM_FIELD_TYPE_MISSING.MESSAGE}` + `Translated ${CUSTOM_FIELD_TYPE_MISSING.MESSAGE}`, ); } }); @@ -153,7 +153,7 @@ describe("resolvers => Mutation => addOrganizationCustomField", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -175,10 +175,10 @@ describe("resolvers => Mutation => addOrganizationCustomField", () => { await addOrganizationCustomField?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - ORGANIZATION_NOT_FOUND_ERROR.MESSAGE + ORGANIZATION_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); diff --git a/tests/resolvers/Mutation/addOrganizationImage.spec.ts b/tests/resolvers/Mutation/addOrganizationImage.spec.ts index 0a955ed368..92a9b44639 100644 --- a/tests/resolvers/Mutation/addOrganizationImage.spec.ts +++ b/tests/resolvers/Mutation/addOrganizationImage.spec.ts @@ -82,10 +82,10 @@ describe("resolvers -> Mutation -> addOrganizationImage", () => { $set: { image: testImagePath, }, - } + }, ); vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( - async (encodedImageURL: string) => encodedImageURL + async (encodedImageURL: string) => encodedImageURL, ); const args: MutationAddOrganizationImageArgs = { organizationId: testOrganization?.id, @@ -97,7 +97,7 @@ describe("resolvers -> Mutation -> addOrganizationImage", () => { const addOrganizationImagePayload = await addOrganizationImageResolver?.( {}, args, - context + context, ); const updatedTestOrganization = await Organization.findOne({ _id: testOrganization?._id, diff --git a/tests/resolvers/Mutation/addUserCustomData.spec.ts b/tests/resolvers/Mutation/addUserCustomData.spec.ts index 5f8e2cd245..a3d483a412 100644 --- a/tests/resolvers/Mutation/addUserCustomData.spec.ts +++ b/tests/resolvers/Mutation/addUserCustomData.spec.ts @@ -42,7 +42,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { expect(customDataDoc?.values).toHaveProperty(args.dataName, args.dataValue); expect(customDataDoc?.userId.toString()).toBe(testUser?._id.toString()); expect(customDataDoc?.organizationId.toString()).toBe( - testOrganization?._id.toString() + testOrganization?._id.toString(), ); expect(customDataDoc?.userId.toString()).toBe(testUser?._id.toString()); }); @@ -67,7 +67,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -91,10 +91,10 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { await addUserCustomData?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - ORGANIZATION_NOT_FOUND_ERROR.MESSAGE + ORGANIZATION_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); diff --git a/tests/resolvers/Mutation/addUserImage.spec.ts b/tests/resolvers/Mutation/addUserImage.spec.ts index 889dee4483..e27cce6e40 100644 --- a/tests/resolvers/Mutation/addUserImage.spec.ts +++ b/tests/resolvers/Mutation/addUserImage.spec.ts @@ -65,7 +65,7 @@ describe("resolvers -> Mutation -> addUserImage", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -75,7 +75,7 @@ describe("resolvers -> Mutation -> addUserImage", () => { file: "newImageFile.png", }; vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( - async (encodedImageURL: string) => encodedImageURL + async (encodedImageURL: string) => encodedImageURL, ); const context = { userId: testUser?._id, @@ -84,7 +84,7 @@ describe("resolvers -> Mutation -> addUserImage", () => { const addUserImagePayload = await addUserImageResolverUserImage?.( {}, args, - context + context, ); expect(addUserImagePayload).toEqual({ diff --git a/tests/resolvers/Mutation/addUserToGroupChat.spec.ts b/tests/resolvers/Mutation/addUserToGroupChat.spec.ts index 11bf2753aa..46e1c7f3c0 100644 --- a/tests/resolvers/Mutation/addUserToGroupChat.spec.ts +++ b/tests/resolvers/Mutation/addUserToGroupChat.spec.ts @@ -92,7 +92,7 @@ describe("resolvers -> Mutation -> addUserToGroupChat", () => { $set: { organization: Types.ObjectId().toString(), }, - } + }, ); const args: MutationAddUserToGroupChatArgs = { @@ -132,7 +132,7 @@ describe("resolvers -> Mutation -> addUserToGroupChat", () => { $set: { organization: testOrganization?._id, }, - } + }, ); await Organization.updateOne( @@ -143,7 +143,7 @@ describe("resolvers -> Mutation -> addUserToGroupChat", () => { $set: { admins: [], }, - } + }, ); const args: MutationAddUserToGroupChatArgs = { @@ -160,7 +160,7 @@ describe("resolvers -> Mutation -> addUserToGroupChat", () => { await addUserToGroupChat?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); @@ -184,7 +184,7 @@ describe("resolvers -> Mutation -> addUserToGroupChat", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -245,7 +245,7 @@ describe("resolvers -> Mutation -> addUserToGroupChat", () => { $set: { users: [], }, - } + }, ); const args: MutationAddUserToGroupChatArgs = { @@ -262,7 +262,7 @@ describe("resolvers -> Mutation -> addUserToGroupChat", () => { const addUserToGroupChatPayload = await addUserToGroupChat?.( {}, args, - context + context, ); expect(addUserToGroupChatPayload?._id).toEqual(testGroupChat?._id); expect(addUserToGroupChatPayload?.users).toEqual([testUser?._id]); diff --git a/tests/resolvers/Mutation/addUserToUserFamily.spec.ts b/tests/resolvers/Mutation/addUserToUserFamily.spec.ts new file mode 100644 index 0000000000..a29370dece --- /dev/null +++ b/tests/resolvers/Mutation/addUserToUserFamily.spec.ts @@ -0,0 +1,154 @@ +import "dotenv/config"; +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import { UserFamily } from "../../../src/models/userFamily"; +import type { MutationAddUserToUserFamilyArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; + +import { + USER_ALREADY_MEMBER_ERROR, + USER_NOT_FOUND_ERROR, + USER_FAMILY_NOT_FOUND_ERROR, +} from "../../../src/constants"; +import { beforeAll, afterAll, describe, it, expect, vi } from "vitest"; +import type { + TestUserType, + TestUserFamilyType, +} from "../../helpers/userAndUserFamily"; + +import { createTestUserAndUserFamily } from "../../helpers/userAndUserFamily"; + +let testUser: TestUserType; +let testUserFamily: TestUserFamilyType; +let MONGOOSE_INSTANCE: typeof mongoose; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const resultsArray = await createTestUserAndUserFamily(); + testUser = resultsArray[0]; + testUserFamily = resultsArray[1]; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolver -> mutation -> addUserToUserFamily", () => { + afterAll(() => { + vi.doUnmock("../../../src/constants"); + vi.resetModules(); + }); + + it(`throws NotFoundError if no user Family exists with _id === args.familyId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => message); + try { + const args: MutationAddUserToUserFamilyArgs = { + familyId: Types.ObjectId().toString(), + userId: testUser?.id, + }; + + const context = { + userId: testUser?.id, + }; + + const { addUserToUserFamily } = await import( + "../../../src/resolvers/Mutation/addUserToUserFamily" + ); + await addUserToUserFamily?.({}, args, context); + } catch (error) { + expect(spy).toBeCalledWith(USER_FAMILY_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `${USER_FAMILY_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws NotFoundError if no user exists with _id === args.userId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => message); + try { + const args: MutationAddUserToUserFamilyArgs = { + familyId: testUserFamily?._id, + userId: Types.ObjectId().toString(), + }; + + const context = { + userId: testUser?._id, + }; + + const { addUserToUserFamily } = await import( + "../../../src/resolvers/Mutation/addUserToUserFamily" + ); + await addUserToUserFamily?.({}, args, context); + } catch (error) { + expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual(USER_NOT_FOUND_ERROR.MESSAGE); + } + }); + + it(`throws ConflictError if user with _id === args.userId is already a member + of user family group with _id === args.familyId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => message); + try { + const args: MutationAddUserToUserFamilyArgs = { + familyId: testUserFamily?._id, + userId: testUser?.id, + }; + + const context = { + userId: testUser?._id, + }; + + const { addUserToUserFamily } = await import( + "../../../src/resolvers/Mutation/addUserToUserFamily" + ); + await addUserToUserFamily?.({}, args, context); + } catch (error) { + expect(spy).toBeCalledWith(USER_ALREADY_MEMBER_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + USER_ALREADY_MEMBER_ERROR.MESSAGE, + ); + } + }); + + it(`add the user family with _id === args.familyId and returns it`, async () => { + await UserFamily.updateOne( + { + _id: testUserFamily?._id, + }, + { + $set: { + users: [], + }, + }, + ); + + const args: MutationAddUserToUserFamilyArgs = { + familyId: testUserFamily?.id, + userId: testUser?.id, + }; + + const context = { + userId: testUser?.id, + }; + + const { addUserToUserFamily } = await import( + "../../../src/resolvers/Mutation/addUserToUserFamily" + ); + const addUserToUserFamilyPayload = await addUserToUserFamily?.( + {}, + args, + context, + ); + expect(addUserToUserFamilyPayload?._id).toEqual(testUserFamily?._id); + expect(addUserToUserFamilyPayload?.users).toEqual([testUser?._id]); + }); +}); diff --git a/tests/resolvers/Mutation/adminRemoveEvent.spec.ts b/tests/resolvers/Mutation/adminRemoveEvent.spec.ts index 863f77d0ed..baaec2a5a3 100644 --- a/tests/resolvers/Mutation/adminRemoveEvent.spec.ts +++ b/tests/resolvers/Mutation/adminRemoveEvent.spec.ts @@ -36,7 +36,7 @@ beforeAll(async () => { testEvent = resultsArray[2]; const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -48,7 +48,7 @@ describe("resolvers -> Mutation -> adminRemoveEvent", () => { it(`throws NotFoundError if no event exists with _id === args.id`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationAdminRemoveEventArgs = { @@ -79,7 +79,7 @@ describe("resolvers -> Mutation -> adminRemoveEvent", () => { }, { new: true, - } + }, ); const args: MutationAdminRemoveEventArgs = { @@ -109,7 +109,7 @@ describe("resolvers -> Mutation -> adminRemoveEvent", () => { }, { new: true, - } + }, ); if (updatedEvent !== null) { @@ -143,7 +143,7 @@ describe("resolvers -> Mutation -> adminRemoveEvent", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -176,7 +176,7 @@ describe("resolvers -> Mutation -> adminRemoveEvent", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -194,7 +194,7 @@ describe("resolvers -> Mutation -> adminRemoveEvent", () => { const adminRemoveEventPayload = await adminRemoveEventResolver?.( {}, args, - context + context, ); expect(adminRemoveEventPayload).toEqual({ @@ -213,7 +213,7 @@ describe("resolvers -> Mutation -> adminRemoveEvent", () => { createdEvents: expect.arrayContaining([]), eventAdmin: expect.arrayContaining([]), registeredEvents: expect.arrayContaining([]), - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/adminRemoveGroup.spec.ts b/tests/resolvers/Mutation/adminRemoveGroup.spec.ts index 6e6610c06d..69ecb10ec8 100644 --- a/tests/resolvers/Mutation/adminRemoveGroup.spec.ts +++ b/tests/resolvers/Mutation/adminRemoveGroup.spec.ts @@ -35,7 +35,7 @@ beforeAll(async () => { testGroupChat = resultsArray[2]; const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -71,7 +71,7 @@ describe("resolvers -> Mutation -> adminRemoveGroup", () => { $set: { organization: Types.ObjectId().toString(), }, - } + }, ); const args: MutationAdminRemoveGroupArgs = { @@ -98,7 +98,7 @@ describe("resolvers -> Mutation -> adminRemoveGroup", () => { $set: { organization: testOrganization?._id, }, - } + }, ); const args: MutationAdminRemoveGroupArgs = { @@ -126,7 +126,7 @@ describe("resolvers -> Mutation -> adminRemoveGroup", () => { $set: { organization: testOrganization?._id, }, - } + }, ); const updatedOrganization = await Organization.findOneAndUpdate( @@ -140,7 +140,7 @@ describe("resolvers -> Mutation -> adminRemoveGroup", () => { }, { new: true, - } + }, ); cacheOrganizations([updatedOrganization!]); @@ -171,7 +171,7 @@ describe("resolvers -> Mutation -> adminRemoveGroup", () => { }, { new: true, - } + }, ); cacheOrganizations([updatedOrganization!]); @@ -187,7 +187,7 @@ describe("resolvers -> Mutation -> adminRemoveGroup", () => { const adminRemoveGroupPayload = await adminRemoveGroupResolver?.( {}, args, - context + context, ); expect(adminRemoveGroupPayload).toEqual({ diff --git a/tests/resolvers/Mutation/assignUserTag.spec.ts b/tests/resolvers/Mutation/assignUserTag.spec.ts index f9eda54f3f..8b0e9e870e 100644 --- a/tests/resolvers/Mutation/assignUserTag.spec.ts +++ b/tests/resolvers/Mutation/assignUserTag.spec.ts @@ -73,7 +73,7 @@ describe("resolvers -> Mutation -> assignUserTag", () => { await assignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -103,7 +103,7 @@ describe("resolvers -> Mutation -> assignUserTag", () => { await assignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -165,10 +165,10 @@ describe("resolvers -> Mutation -> assignUserTag", () => { await assignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - `${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -199,10 +199,10 @@ describe("resolvers -> Mutation -> assignUserTag", () => { await assignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.MESSAGE}` + `Translated ${USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - `${USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.MESSAGE}` + `${USER_DOES_NOT_BELONG_TO_TAGS_ORGANIZATION.MESSAGE}`, ); } }); @@ -258,7 +258,7 @@ describe("resolvers -> Mutation -> assignUserTag", () => { await assignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_ALREADY_HAS_TAG.MESSAGE}` + `Translated ${USER_ALREADY_HAS_TAG.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(`${USER_ALREADY_HAS_TAG.MESSAGE}`); } diff --git a/tests/resolvers/Mutation/blockPluginCreationBySuperadmin.spec.ts b/tests/resolvers/Mutation/blockPluginCreationBySuperadmin.spec.ts index 903ca5a3c4..7056c29f46 100644 --- a/tests/resolvers/Mutation/blockPluginCreationBySuperadmin.spec.ts +++ b/tests/resolvers/Mutation/blockPluginCreationBySuperadmin.spec.ts @@ -30,7 +30,7 @@ beforeAll(async () => { testUser = await createTestUser(); const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -88,7 +88,7 @@ describe("resolvers -> Mutation -> blockPluginCreationBySuperadmin", () => { } catch (error: any) { expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}`, ); } }); @@ -101,7 +101,7 @@ describe("resolvers -> Mutation -> blockPluginCreationBySuperadmin", () => { }, { userType: "SUPERADMIN", - } + }, ); const args: MutationBlockPluginCreationBySuperadminArgs = { diff --git a/tests/resolvers/Mutation/blockUser.spec.ts b/tests/resolvers/Mutation/blockUser.spec.ts index d63096aa1d..374960dca1 100644 --- a/tests/resolvers/Mutation/blockUser.spec.ts +++ b/tests/resolvers/Mutation/blockUser.spec.ts @@ -61,11 +61,11 @@ beforeAll(async () => { createdOrganizations: [testOrganization._id], joinedOrganizations: [testOrganization._id], }, - } + }, ); const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -115,7 +115,7 @@ describe("resolvers -> Mutation -> blockUser", () => { it(`throws member not found error if user with args.userId is not a member of the organization`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { @@ -140,7 +140,7 @@ describe("resolvers -> Mutation -> blockUser", () => { it(`throws cannot block self error if context.userId === args.userId`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { @@ -176,7 +176,7 @@ describe("resolvers -> Mutation -> blockUser", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -213,7 +213,7 @@ describe("resolvers -> Mutation -> blockUser", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -228,7 +228,7 @@ describe("resolvers -> Mutation -> blockUser", () => { $push: { adminFor: testOrganization?._id, }, - } + }, ); const args: MutationBlockUserArgs = { @@ -259,7 +259,7 @@ describe("resolvers -> Mutation -> blockUser", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { diff --git a/tests/resolvers/Mutation/cancelMembershipRequest.spec.ts b/tests/resolvers/Mutation/cancelMembershipRequest.spec.ts index 8f99fb3d0a..ccbcc6c44d 100644 --- a/tests/resolvers/Mutation/cancelMembershipRequest.spec.ts +++ b/tests/resolvers/Mutation/cancelMembershipRequest.spec.ts @@ -34,7 +34,7 @@ beforeAll(async () => { testMembershipRequest = resultsArray[2]; const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -70,7 +70,7 @@ describe("resolvers -> Mutation -> cancelMembershipRequest", () => { $set: { organization: Types.ObjectId().toString(), }, - } + }, ); const args: MutationCancelMembershipRequestArgs = { @@ -97,7 +97,7 @@ describe("resolvers -> Mutation -> cancelMembershipRequest", () => { $set: { organization: testOrganization?._id, }, - } + }, ); const args: MutationCancelMembershipRequestArgs = { @@ -125,7 +125,7 @@ describe("resolvers -> Mutation -> cancelMembershipRequest", () => { $set: { user: Types.ObjectId().toString(), }, - } + }, ); const args: MutationCancelMembershipRequestArgs = { @@ -151,7 +151,7 @@ describe("resolvers -> Mutation -> cancelMembershipRequest", () => { $set: { user: testUser?._id, }, - } + }, ); const args: MutationCancelMembershipRequestArgs = { @@ -166,7 +166,7 @@ describe("resolvers -> Mutation -> cancelMembershipRequest", () => { await cancelMembershipRequestResolver?.({}, args, context); expect(cancelMembershipRequestPayload).toEqual( - testMembershipRequest?.toObject() + testMembershipRequest?.toObject(), ); const testUpdatedUser = await User.findOne({ diff --git a/tests/resolvers/Mutation/checkIn.spec.ts b/tests/resolvers/Mutation/checkIn.spec.ts index 373c16dd76..d2cd9ab755 100644 --- a/tests/resolvers/Mutation/checkIn.spec.ts +++ b/tests/resolvers/Mutation/checkIn.spec.ts @@ -56,7 +56,7 @@ describe("resolvers -> Mutation -> checkIn", () => { await checkInResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -86,7 +86,7 @@ describe("resolvers -> Mutation -> checkIn", () => { await checkInResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(EVENT_NOT_FOUND_ERROR.MESSAGE); } @@ -116,7 +116,7 @@ describe("resolvers -> Mutation -> checkIn", () => { await checkInResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); } @@ -146,7 +146,7 @@ describe("resolvers -> Mutation -> checkIn", () => { await checkInResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -176,10 +176,10 @@ describe("resolvers -> Mutation -> checkIn", () => { await checkInResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_REGISTERED_FOR_EVENT.MESSAGE}` + `Translated ${USER_NOT_REGISTERED_FOR_EVENT.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - USER_NOT_REGISTERED_FOR_EVENT.MESSAGE + USER_NOT_REGISTERED_FOR_EVENT.MESSAGE, ); } }); @@ -239,7 +239,7 @@ describe("resolvers -> Mutation -> checkIn", () => { await checkInResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_ALREADY_CHECKED_IN.MESSAGE}` + `Translated ${USER_ALREADY_CHECKED_IN.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_ALREADY_CHECKED_IN.MESSAGE); } diff --git a/tests/resolvers/Mutation/createActionItem.spec.ts b/tests/resolvers/Mutation/createActionItem.spec.ts index c2b0ec22fc..a1f85cb226 100644 --- a/tests/resolvers/Mutation/createActionItem.spec.ts +++ b/tests/resolvers/Mutation/createActionItem.spec.ts @@ -37,7 +37,7 @@ beforeAll(async () => { MONGOOSE_INSTANCE = await connect(); const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); randomUser = await createTestUser(); @@ -52,7 +52,7 @@ beforeAll(async () => { }, { new: true, - } + }, ); [testUser, testOrganization, testCategory] = await createTestCategory(); @@ -111,7 +111,7 @@ describe("resolvers -> Mutation -> createActionItem", () => { await createActionItemResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.MESSAGE + ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.MESSAGE, ); } }); @@ -161,7 +161,7 @@ describe("resolvers -> Mutation -> createActionItem", () => { }, { $push: { joinedOrganizations: testOrganization?._id }, - } + }, ); try { @@ -218,13 +218,13 @@ describe("resolvers -> Mutation -> createActionItem", () => { const createActionItemPayload = await createActionItemResolver?.( {}, args, - context + context, ); expect(createActionItemPayload).toEqual( expect.objectContaining({ actionItemCategoryId: testCategory?._id, - }) + }), ); }); @@ -243,13 +243,13 @@ describe("resolvers -> Mutation -> createActionItem", () => { const createActionItemPayload = await createActionItemResolver?.( {}, args, - context + context, ); expect(createActionItemPayload).toEqual( expect.objectContaining({ actionItemCategoryId: testCategory?._id, - }) + }), ); }); @@ -268,13 +268,13 @@ describe("resolvers -> Mutation -> createActionItem", () => { const createActionItemPayload = await createActionItemResolver?.( {}, args, - context + context, ); expect(createActionItemPayload).toEqual( expect.objectContaining({ actionItemCategoryId: testCategory?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/createActionItemCategory.spec.ts b/tests/resolvers/Mutation/createActionItemCategory.spec.ts index f796341472..8f126a2d90 100644 --- a/tests/resolvers/Mutation/createActionItemCategory.spec.ts +++ b/tests/resolvers/Mutation/createActionItemCategory.spec.ts @@ -31,7 +31,7 @@ beforeAll(async () => { MONGOOSE_INSTANCE = await connect(); const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); randomUser = await createTestUser(); @@ -108,14 +108,14 @@ describe("resolvers -> Mutation -> createCategory", () => { const createCategoryPayload = await createActionItemCategoryResolver?.( {}, args, - context + context, ); expect(createCategoryPayload).toEqual( expect.objectContaining({ organizationId: testOrganization?._id, name: "Default", - }) + }), ); }); @@ -129,7 +129,7 @@ describe("resolvers -> Mutation -> createCategory", () => { }, { new: true, - } + }, ); const args: MutationCreateActionItemCategoryArgs = { @@ -144,14 +144,14 @@ describe("resolvers -> Mutation -> createCategory", () => { const createCategoryPayload = await createActionItemCategoryResolver?.( {}, args, - context + context, ); expect(createCategoryPayload).toEqual( expect.objectContaining({ organizationId: testOrganization?._id, name: "Default2", - }) + }), ); }); @@ -169,7 +169,7 @@ describe("resolvers -> Mutation -> createCategory", () => { await createActionItemCategoryResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - ACTION_ITEM_CATEGORY_ALREADY_EXISTS.MESSAGE + ACTION_ITEM_CATEGORY_ALREADY_EXISTS.MESSAGE, ); } }); diff --git a/tests/resolvers/Mutation/createAdmin.spec.ts b/tests/resolvers/Mutation/createAdmin.spec.ts index 7b2706ca4c..86945a3d38 100644 --- a/tests/resolvers/Mutation/createAdmin.spec.ts +++ b/tests/resolvers/Mutation/createAdmin.spec.ts @@ -32,7 +32,7 @@ beforeAll(async () => { testOrganization = resultsArray[1]; const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -70,7 +70,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { $set: { creatorId: Types.ObjectId().toString(), }, - } + }, ); const args: MutationCreateAdminArgs = { @@ -100,7 +100,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { $set: { creatorId: testUser?._id, }, - } + }, ); await User.updateOne( @@ -111,7 +111,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { $set: { userType: "SUPERADMIN", }, - } + }, ); const args: MutationCreateAdminArgs = { @@ -148,7 +148,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { await createAdminResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - ORGANIZATION_MEMBER_NOT_FOUND_ERROR.MESSAGE + ORGANIZATION_MEMBER_NOT_FOUND_ERROR.MESSAGE, ); } }); @@ -167,7 +167,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -203,7 +203,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { diff --git a/tests/resolvers/Mutation/createAdvertisement.spec.ts b/tests/resolvers/Mutation/createAdvertisement.spec.ts index 58b0c9de7e..3e6df4a6b3 100644 --- a/tests/resolvers/Mutation/createAdvertisement.spec.ts +++ b/tests/resolvers/Mutation/createAdvertisement.spec.ts @@ -71,14 +71,14 @@ describe("resolvers -> Mutation -> createAdvertisement", () => { const createdAdvertisementPayload = await createAdvertisementResolver?.( {}, args, - context + context, ); expect(createdAdvertisementPayload).toHaveProperty("name", "myad"); expect(createdAdvertisementPayload).toHaveProperty( "link", - "https://www.example.com" + "https://www.example.com", ); expect(createdAdvertisementPayload).toHaveProperty("type", "POPUP"); diff --git a/tests/resolvers/Mutation/createAgendaCategory.spec.ts b/tests/resolvers/Mutation/createAgendaCategory.spec.ts new file mode 100644 index 0000000000..65ab4c42af --- /dev/null +++ b/tests/resolvers/Mutation/createAgendaCategory.spec.ts @@ -0,0 +1,192 @@ +import { + ORGANIZATION_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../../src/constants"; +import { expect, vi, beforeAll, afterAll, describe, it } from "vitest"; +import type { MutationCreateAgendaCategoryArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; +import { createTestUser } from "../../helpers/userAndOrg"; +import type { + TestUserType, + TestOrganizationType, +} from "../../helpers/userAndOrg"; +import { Organization, User } from "../../../src/models"; +import type mongoose from "mongoose"; +import { Types } from "mongoose"; + +let testUser: TestUserType; +let testAdminUser: TestUserType; +let testOrganization: TestOrganizationType; +let MONGOOSE_INSTANCE: typeof mongoose; +let testUser2: TestUserType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + testUser = await createTestUser(); + testAdminUser = await createTestUser(); + testUser2 = await createTestUser(); + testOrganization = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testUser?._id, + admins: [testAdminUser?._id], + members: [testUser?._id, testAdminUser?._id], + creatorId: testUser?._id, + }); + + await User.updateOne( + { + _id: testUser?._id, + }, + { + $push: { + adminFor: testOrganization?._id, + }, + }, + ); + + const { requestContext } = await import("../../../src/libraries"); + vi.spyOn(requestContext, "translate").mockImplementation( + (message) => message, + ); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> createAgendaCategory", () => { + it(`creates an agenda category successfully`, async () => { + try { + const args: MutationCreateAgendaCategoryArgs = { + input: { + name: "Agenda Category", + description: "Description for the agenda category", + organizationId: testOrganization?._id, + }, + }; + + const context = { + userId: testAdminUser?._id, + }; + + const { createAgendaCategory: createAgendaCategoryResolver } = + await import("../../../src/resolvers/Mutation/createAgendaCategory"); + + const createdAgendaCategory = await createAgendaCategoryResolver?.( + {}, + args, + context, + ); + + expect(createdAgendaCategory).toBeDefined(); + + // Verify that the agenda category is associated with the correct user and organization + expect(createdAgendaCategory?.createdBy).toBe(testAdminUser?._id); + expect(createdAgendaCategory?.organization).toBe(testOrganization?._id); + // Verify that the properties of the returned agenda category match the expected values + expect(createdAgendaCategory?.name).toEqual(args.input.name); + expect(createdAgendaCategory?.description).toEqual( + args.input.description, + ); + expect(createdAgendaCategory?._id).toBeUndefined(); + } catch (error) { + expect(error); + } + }); + + it(`throws an error if the user is not found`, async () => { + try { + const args: MutationCreateAgendaCategoryArgs = { + input: { + name: "Agenda Category", + description: "Description for the agenda category", + organizationId: testOrganization?.id, + }, + }; + + const context = { + userId: Types.ObjectId().toString(), // A random ID that does not exist in the database + }; + + const { createAgendaCategory: createAgendaCategoryResolver } = + await import("../../../src/resolvers/Mutation/createAgendaCategory"); + + const createdAgendaCategory = await createAgendaCategoryResolver?.( + {}, + args, + context, + ); + + expect(createdAgendaCategory).toBeUndefined(); // The resolver should not return anything + } catch (error: unknown) { + // The resolver should throw a NotFoundError with the appropriate message, code, and parameter + + expect((error as Error).message).toEqual(USER_NOT_FOUND_ERROR.MESSAGE); + } + }); + + it(`throws an error if the organization is not found`, async () => { + try { + const args: MutationCreateAgendaCategoryArgs = { + input: { + name: "Agenda Category", + description: "Description for the agenda category", + organizationId: Types.ObjectId().toString(), // A random ID that does not exist in the database + }, + }; + + const context = { + userId: testUser?.id, + }; + + const { createAgendaCategory: createAgendaCategoryResolver } = + await import("../../../src/resolvers/Mutation/createAgendaCategory"); + + const createdAgendaCategory = await createAgendaCategoryResolver?.( + {}, + args, + context, + ); + + expect(createdAgendaCategory).toBeUndefined(); // The resolver should not return anything + } catch (error: unknown) { + // The resolver should throw a NotFoundError with the appropriate message, code, and parameter + expect((error as Error).message).toEqual( + ORGANIZATION_NOT_FOUND_ERROR.MESSAGE, + ); + } + }); + + it(`throws an error if the user does not have the required permissions`, async () => { + try { + const args: MutationCreateAgendaCategoryArgs = { + input: { + name: "Agenda Category", + description: "Description for the agenda category", + organizationId: testOrganization?.id, + }, + }; + + const context = { + userId: testUser2?._id, // A user that is not an admin for the organization + }; + + const { createAgendaCategory: createAgendaCategoryResolver } = + await import("../../../src/resolvers/Mutation/createAgendaCategory"); + + const createdAgendaCategory = await createAgendaCategoryResolver?.( + {}, + args, + context, + ); + + expect(createdAgendaCategory).toBeUndefined(); // The resolver should not return anything + } catch (error: unknown) { + expect((error as Error).message).toEqual( + "Error: Current user must be an ADMIN or a SUPERADMIN", + ); // The resolver should throw an UnauthorizedError with the appropriate message, code, and parameter + } + }); +}); diff --git a/tests/resolvers/Mutation/createComment.spec.ts b/tests/resolvers/Mutation/createComment.spec.ts index 5539fcb675..a079f765b8 100644 --- a/tests/resolvers/Mutation/createComment.spec.ts +++ b/tests/resolvers/Mutation/createComment.spec.ts @@ -23,7 +23,7 @@ beforeAll(async () => { testPost = resultsArray[2]; const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -66,13 +66,13 @@ describe("resolvers -> Mutation -> createComment", () => { const createCommentPayload = await createCommentResolver?.( {}, args, - context + context, ); expect(createCommentPayload).toEqual( expect.objectContaining({ text: "text", - }) + }), ); const testUpdatedPost = await Post.findOne({ @@ -83,7 +83,7 @@ describe("resolvers -> Mutation -> createComment", () => { expect(testUpdatedPost?.commentCount).toEqual(1); expect(createCommentPayload?.postId.toString()).toEqual( - testPost?._id.toString() + testPost?._id.toString(), ); }); }); diff --git a/tests/resolvers/Mutation/createDirectChat.spec.ts b/tests/resolvers/Mutation/createDirectChat.spec.ts index d1e5a796d3..4adb1882cb 100644 --- a/tests/resolvers/Mutation/createDirectChat.spec.ts +++ b/tests/resolvers/Mutation/createDirectChat.spec.ts @@ -115,7 +115,7 @@ describe("resolvers -> Mutation -> createDirectChat", () => { const createDirectChatPayload = await createDirectChatResolver?.( {}, args, - context + context, ); expect(createDirectChatPayload).toEqual( @@ -123,7 +123,7 @@ describe("resolvers -> Mutation -> createDirectChat", () => { creatorId: testUser?._id, users: [testUser?._id], organization: testOrganization?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/createDonation.spec.ts b/tests/resolvers/Mutation/createDonation.spec.ts index d3e759dc60..987edaf284 100644 --- a/tests/resolvers/Mutation/createDonation.spec.ts +++ b/tests/resolvers/Mutation/createDonation.spec.ts @@ -47,7 +47,7 @@ describe("resolvers -> Mutation -> createDonation", () => { orgId: testOrganization?._id, payPalId: "payPalId", userId: testUser?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/createEvent.spec.ts b/tests/resolvers/Mutation/createEvent.spec.ts index 9a20ba9884..b3d01b0ba6 100644 --- a/tests/resolvers/Mutation/createEvent.spec.ts +++ b/tests/resolvers/Mutation/createEvent.spec.ts @@ -3,7 +3,11 @@ import type mongoose from "mongoose"; import { Types } from "mongoose"; import { User, Organization, EventAttendee, Event } from "../../../src/models"; import type { MutationCreateEventArgs } from "../../../src/types/generatedGraphQLTypes"; -import { connect, disconnect } from "../../helpers/db"; +import { + connect, + disconnect, + dropAllCollectionsFromDatabase, +} from "../../helpers/db"; import { LENGTH_VALIDATION_ERROR, @@ -23,12 +27,16 @@ import { UnauthorizedError, } from "../../../src/libraries/errors"; import { fail } from "assert"; +import { addMonths } from "date-fns"; +import { Frequency, RecurrenceRule } from "../../../src/models/RecurrenceRule"; +import { convertToUTCDate } from "../../../src/utilities/recurrenceDatesUtil"; let testUser: TestUserType; let testOrganization: TestOrganizationType; let MONGOOSE_INSTANCE: typeof mongoose; beforeAll(async () => { MONGOOSE_INSTANCE = await connect(); + await dropAllCollectionsFromDatabase(MONGOOSE_INSTANCE); testUser = await createTestUser(); testOrganization = await Organization.create({ @@ -49,22 +57,41 @@ beforeAll(async () => { $push: { adminFor: testOrganization?._id, }, - } + }, ); const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); afterAll(async () => { + await dropAllCollectionsFromDatabase(MONGOOSE_INSTANCE); await disconnect(MONGOOSE_INSTANCE); }); describe("resolvers -> Mutation -> createEvent", () => { it(`throws NotFoundError if no user exists with _id === context.userId`, async () => { try { - const args: MutationCreateEventArgs = {}; + const args: MutationCreateEventArgs = { + data: { + organizationId: testOrganization?.id, + allDay: false, + description: "", + endDate: "", + endTime: "", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "", + recurring: false, + startDate: "", + startTime: "", + title: "", + recurrance: "ONCE", + }, + }; const context = { userId: Types.ObjectId().toString(), @@ -159,7 +186,7 @@ describe("resolvers -> Mutation -> createEvent", () => { } catch (error: unknown) { if (error instanceof UnauthorizedError) { expect(error.message).toEqual( - ORGANIZATION_NOT_AUTHORIZED_ERROR.MESSAGE + ORGANIZATION_NOT_AUTHORIZED_ERROR.MESSAGE, ); } else { fail(`Expected UnauthorizedError, but got ${error}`); @@ -177,7 +204,7 @@ describe("resolvers -> Mutation -> createEvent", () => { createdOrganizations: testOrganization?._id, joinedOrganizations: testOrganization?._id, }, - } + }, ); const args: MutationCreateEventArgs = { @@ -195,7 +222,7 @@ describe("resolvers -> Mutation -> createEvent", () => { recurring: false, startDate: new Date("2023-01-01T00:00:00Z"), startTime: new Date().toUTCString(), - title: "newTitle", + title: "singleEventTitle", recurrance: "ONCE", }, }; @@ -219,14 +246,15 @@ describe("resolvers -> Mutation -> createEvent", () => { longitude: 1, location: "newLocation", recurring: false, - title: "newTitle", + title: "singleEventTitle", creatorId: testUser?._id, admins: expect.arrayContaining([testUser?._id]), organization: testOrganization?._id, - }) + }), ); const recurringEvents = await Event.find({ + title: "singleEventTitle", recurring: false, recurrance: "ONCE", }).lean(); @@ -252,11 +280,11 @@ describe("resolvers -> Mutation -> createEvent", () => { eventAdmin: expect.arrayContaining([createEventPayload?._id]), createdEvents: expect.arrayContaining([createEventPayload?._id]), registeredEvents: expect.arrayContaining([createEventPayload?._id]), - }) + }), ); }); - it(`creates the single recurring event and returns it`, async () => { + it(`creates default Weekly recurring instances if the recurrenceRuleData is not provided`, async () => { await User.updateOne( { _id: testUser?._id, @@ -266,26 +294,31 @@ describe("resolvers -> Mutation -> createEvent", () => { createdOrganizations: testOrganization?._id, joinedOrganizations: testOrganization?._id, }, - } + }, ); + let startDate = new Date(); + startDate = convertToUTCDate(startDate); + + const endDate = addMonths(startDate, 1); + const args: MutationCreateEventArgs = { data: { organizationId: testOrganization?.id, allDay: false, description: "newDescription", - endDate: new Date("2023-01-29T00:00:00Z"), - endTime: new Date().toUTCString(), + endDate, + endTime: endDate.toUTCString(), isPublic: false, isRegisterable: false, latitude: 1, longitude: 1, location: "newLocation", recurring: true, - startDate: new Date("2023-01-02T00:00:00Z"), - startTime: new Date().toUTCString(), + startDate, + startTime: startDate.toUTCString(), title: "newTitle", - recurrance: "ONCE", + recurrance: "WEEKLY", }, }; @@ -312,17 +345,29 @@ describe("resolvers -> Mutation -> createEvent", () => { creatorId: testUser?._id, admins: expect.arrayContaining([testUser?._id]), organization: testOrganization?._id, - }) + }), ); + const recurrenceRule = await RecurrenceRule.findOne({ + startDate, + endDate, + frequency: Frequency.WEEKLY, + }); + + const baseRecurringEvent = await Event.findOne({ + isBaseRecurringEvent: true, + startDate: startDate.toUTCString(), + }); + const recurringEvents = await Event.find({ recurring: true, - recurrance: "ONCE", - startDate: "2023-01-02T00:00:00Z", + isBaseRecurringEvent: false, + recurrenceRuleId: recurrenceRule?._id, + baseRecurringEventId: baseRecurringEvent?._id, }).lean(); expect(recurringEvents).toBeDefined(); - expect(recurringEvents).toHaveLength(1); + expect(recurringEvents.length).toEqual(5); const attendeeExists = await EventAttendee.exists({ userId: testUser?._id, @@ -342,11 +387,11 @@ describe("resolvers -> Mutation -> createEvent", () => { eventAdmin: expect.arrayContaining([createEventPayload?._id]), createdEvents: expect.arrayContaining([createEventPayload?._id]), registeredEvents: expect.arrayContaining([createEventPayload?._id]), - }) + }), ); }); - it(`creates the Weekly recurring event and returns it`, async () => { + it(`creates the daily recurring event upto an end date based on the recurrenceRuleData`, async () => { await User.updateOne( { _id: testUser?._id, @@ -356,26 +401,35 @@ describe("resolvers -> Mutation -> createEvent", () => { createdOrganizations: testOrganization?._id, joinedOrganizations: testOrganization?._id, }, - } + }, ); + let startDate = new Date(); + startDate = addMonths(startDate, 1); + startDate = convertToUTCDate(startDate); + + const endDate = addMonths(startDate, 5); + const args: MutationCreateEventArgs = { data: { organizationId: testOrganization?.id, - allDay: false, + allDay: true, description: "newDescription", - endDate: new Date("2023-01-29T00:00:00Z"), - endTime: new Date().toUTCString(), isPublic: false, isRegisterable: false, latitude: 1, longitude: 1, location: "newLocation", recurring: true, - startDate: new Date("2023-01-01T00:00:00Z"), - startTime: new Date().toUTCString(), + startDate, + startTime: startDate.toUTCString(), + endDate, + endTime: endDate.toUTCString(), title: "newTitle", - recurrance: "WEEKLY", + recurrance: "ONCE", + }, + recurrenceRuleData: { + frequency: "DAILY", }, }; @@ -390,7 +444,225 @@ describe("resolvers -> Mutation -> createEvent", () => { expect(createEventPayload).toEqual( expect.objectContaining({ - allDay: false, + allDay: true, + description: "newDescription", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "newLocation", + recurring: true, + title: "newTitle", + creatorId: testUser?._id, + admins: expect.arrayContaining([testUser?._id]), + organization: testOrganization?._id, + }), + ); + + const recurrenceRule = await RecurrenceRule.findOne({ + frequency: Frequency.DAILY, + startDate, + endDate, + }); + + const baseRecurringEvent = await Event.findOne({ + isBaseRecurringEvent: true, + startDate: startDate.toUTCString(), + endDate: endDate.toUTCString(), + }); + + const recurringEvents = await Event.find({ + recurring: true, + isBaseRecurringEvent: false, + recurrenceRuleId: recurrenceRule?._id, + baseRecurringEventId: baseRecurringEvent?._id, + }).lean(); + + expect(recurringEvents).toBeDefined(); + + const attendeeExists = await EventAttendee.exists({ + userId: testUser?._id, + eventId: createEventPayload?._id, + }); + + expect(attendeeExists).toBeTruthy(); + + const updatedTestUser = await User.findOne({ + _id: testUser?._id, + }) + .select(["eventAdmin", "createdEvents", "registeredEvents"]) + .lean(); + + expect(updatedTestUser).toEqual( + expect.objectContaining({ + eventAdmin: expect.arrayContaining([createEventPayload?._id]), + createdEvents: expect.arrayContaining([createEventPayload?._id]), + registeredEvents: expect.arrayContaining([createEventPayload?._id]), + }), + ); + }); + + it(`creates the daily recurring event with no end date based on the recurrenceRuleData`, async () => { + await User.updateOne( + { + _id: testUser?._id, + }, + { + $push: { + createdOrganizations: testOrganization?._id, + joinedOrganizations: testOrganization?._id, + }, + }, + ); + + let startDate = new Date(); + startDate = addMonths(startDate, 2); + + startDate = convertToUTCDate(startDate); + + const args: MutationCreateEventArgs = { + data: { + organizationId: testOrganization?.id, + allDay: true, + description: "newDescription", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "newLocation", + recurring: true, + startDate, + startTime: startDate.toUTCString(), + title: "newTitle", + recurrance: "ONCE", + }, + recurrenceRuleData: { + frequency: "DAILY", + count: 10, + }, + }; + + const context = { + userId: testUser?.id, + }; + const { createEvent: createEventResolver } = await import( + "../../../src/resolvers/Mutation/createEvent" + ); + + const createEventPayload = await createEventResolver?.({}, args, context); + + expect(createEventPayload).toEqual( + expect.objectContaining({ + allDay: true, + description: "newDescription", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "newLocation", + recurring: true, + title: "newTitle", + creatorId: testUser?._id, + admins: expect.arrayContaining([testUser?._id]), + organization: testOrganization?._id, + }), + ); + + const recurrenceRule = await RecurrenceRule.findOne({ + frequency: Frequency.DAILY, + startDate, + }); + + const baseRecurringEvent = await Event.findOne({ + isBaseRecurringEvent: true, + startDate: startDate.toUTCString(), + }); + + const recurringEvents = await Event.find({ + recurring: true, + isBaseRecurringEvent: false, + recurrenceRuleId: recurrenceRule?._id, + baseRecurringEventId: baseRecurringEvent?._id, + }).lean(); + + expect(recurringEvents).toBeDefined(); + expect(recurringEvents).toHaveLength(10); + + const attendeeExists = await EventAttendee.exists({ + userId: testUser?._id, + eventId: createEventPayload?._id, + }); + + expect(attendeeExists).toBeTruthy(); + + const updatedTestUser = await User.findOne({ + _id: testUser?._id, + }) + .select(["eventAdmin", "createdEvents", "registeredEvents"]) + .lean(); + + expect(updatedTestUser).toEqual( + expect.objectContaining({ + eventAdmin: expect.arrayContaining([createEventPayload?._id]), + createdEvents: expect.arrayContaining([createEventPayload?._id]), + registeredEvents: expect.arrayContaining([createEventPayload?._id]), + }), + ); + }); + + it(`creates the weekly recurring event with no end date based on the recurrenceRuleData`, async () => { + await User.updateOne( + { + _id: testUser?._id, + }, + { + $push: { + createdOrganizations: testOrganization?._id, + joinedOrganizations: testOrganization?._id, + }, + }, + ); + + let startDate = new Date(); + startDate = addMonths(startDate, 3); + + startDate = convertToUTCDate(startDate); + + const args: MutationCreateEventArgs = { + data: { + organizationId: testOrganization?.id, + allDay: true, + description: "newDescription", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "newLocation", + recurring: true, + startDate, + startTime: startDate.toUTCString(), + title: "newTitle", + recurrance: "ONCE", + }, + recurrenceRuleData: { + frequency: "WEEKLY", + weekDays: ["TH", "SA"], + count: 10, + }, + }; + + const context = { + userId: testUser?.id, + }; + const { createEvent: createEventResolver } = await import( + "../../../src/resolvers/Mutation/createEvent" + ); + + const createEventPayload = await createEventResolver?.({}, args, context); + + expect(createEventPayload).toEqual( + expect.objectContaining({ + allDay: true, description: "newDescription", isPublic: false, isRegisterable: false, @@ -402,16 +674,244 @@ describe("resolvers -> Mutation -> createEvent", () => { creatorId: testUser?._id, admins: expect.arrayContaining([testUser?._id]), organization: testOrganization?._id, - }) + }), + ); + + const recurrenceRule = await RecurrenceRule.findOne({ + frequency: Frequency.WEEKLY, + startDate, + }); + + const baseRecurringEvent = await Event.findOne({ + isBaseRecurringEvent: true, + startDate: startDate.toUTCString(), + }); + + const recurringEvents = await Event.find({ + recurring: true, + isBaseRecurringEvent: false, + recurrenceRuleId: recurrenceRule?._id, + baseRecurringEventId: baseRecurringEvent?._id, + }).lean(); + + expect(recurringEvents).toBeDefined(); + expect(recurringEvents).toHaveLength(10); + + const attendeeExists = await EventAttendee.exists({ + userId: testUser?._id, + eventId: createEventPayload?._id, + }); + + expect(attendeeExists).toBeTruthy(); + + const updatedTestUser = await User.findOne({ + _id: testUser?._id, + }) + .select(["eventAdmin", "createdEvents", "registeredEvents"]) + .lean(); + + expect(updatedTestUser).toEqual( + expect.objectContaining({ + eventAdmin: expect.arrayContaining([createEventPayload?._id]), + createdEvents: expect.arrayContaining([createEventPayload?._id]), + registeredEvents: expect.arrayContaining([createEventPayload?._id]), + }), + ); + }); + + it(`creates the monthly recurring event with no end date based on the recurrenceRuleData`, async () => { + await User.updateOne( + { + _id: testUser?._id, + }, + { + $push: { + createdOrganizations: testOrganization?._id, + joinedOrganizations: testOrganization?._id, + }, + }, + ); + + let startDate = new Date(); + startDate = addMonths(startDate, 4); + + startDate = convertToUTCDate(startDate); + + const args: MutationCreateEventArgs = { + data: { + organizationId: testOrganization?.id, + allDay: true, + description: "newDescription", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "newLocation", + recurring: true, + startDate, + startTime: startDate.toUTCString(), + title: "newTitle", + recurrance: "ONCE", + }, + recurrenceRuleData: { + frequency: "MONTHLY", + count: 10, + }, + }; + + const context = { + userId: testUser?.id, + }; + const { createEvent: createEventResolver } = await import( + "../../../src/resolvers/Mutation/createEvent" ); + const createEventPayload = await createEventResolver?.({}, args, context); + + expect(createEventPayload).toEqual( + expect.objectContaining({ + allDay: true, + description: "newDescription", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "newLocation", + recurring: true, + title: "newTitle", + creatorId: testUser?._id, + admins: expect.arrayContaining([testUser?._id]), + organization: testOrganization?._id, + }), + ); + + const recurrenceRule = await RecurrenceRule.findOne({ + frequency: Frequency.MONTHLY, + startDate, + }); + + const baseRecurringEvent = await Event.findOne({ + isBaseRecurringEvent: true, + startDate: startDate.toUTCString(), + }); + + const recurringEvents = await Event.find({ + recurring: true, + isBaseRecurringEvent: false, + recurrenceRuleId: recurrenceRule?._id, + baseRecurringEventId: baseRecurringEvent?._id, + }).lean(); + + expect(recurringEvents).toBeDefined(); + expect(recurringEvents).toHaveLength(10); + + const attendeeExists = await EventAttendee.exists({ + userId: testUser?._id, + eventId: createEventPayload?._id, + }); + + expect(attendeeExists).toBeTruthy(); + + const updatedTestUser = await User.findOne({ + _id: testUser?._id, + }) + .select(["eventAdmin", "createdEvents", "registeredEvents"]) + .lean(); + + expect(updatedTestUser).toEqual( + expect.objectContaining({ + eventAdmin: expect.arrayContaining([createEventPayload?._id]), + createdEvents: expect.arrayContaining([createEventPayload?._id]), + registeredEvents: expect.arrayContaining([createEventPayload?._id]), + }), + ); + }); + + it(`creates the yearly recurring event with no end date based on the recurrenceRuleData`, async () => { + await User.updateOne( + { + _id: testUser?._id, + }, + { + $push: { + createdOrganizations: testOrganization?._id, + joinedOrganizations: testOrganization?._id, + }, + }, + ); + + let startDate = new Date(); + startDate = addMonths(startDate, 5); + + startDate = convertToUTCDate(startDate); + + const args: MutationCreateEventArgs = { + data: { + organizationId: testOrganization?.id, + allDay: true, + description: "newDescription", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "newLocation", + recurring: true, + startDate, + startTime: startDate.toUTCString(), + title: "newTitle", + recurrance: "ONCE", + }, + recurrenceRuleData: { + frequency: "YEARLY", + count: 10, + }, + }; + + const context = { + userId: testUser?.id, + }; + const { createEvent: createEventResolver } = await import( + "../../../src/resolvers/Mutation/createEvent" + ); + + const createEventPayload = await createEventResolver?.({}, args, context); + + expect(createEventPayload).toEqual( + expect.objectContaining({ + allDay: true, + description: "newDescription", + isPublic: false, + isRegisterable: false, + latitude: 1, + longitude: 1, + location: "newLocation", + recurring: true, + title: "newTitle", + creatorId: testUser?._id, + admins: expect.arrayContaining([testUser?._id]), + organization: testOrganization?._id, + }), + ); + + const recurrenceRule = await RecurrenceRule.findOne({ + frequency: Frequency.YEARLY, + startDate, + }); + + const baseRecurringEvent = await Event.findOne({ + isBaseRecurringEvent: true, + startDate: startDate.toUTCString(), + }); + const recurringEvents = await Event.find({ recurring: true, - recurrance: "WEEKLY", + isBaseRecurringEvent: false, + recurrenceRuleId: recurrenceRule?._id, + baseRecurringEventId: baseRecurringEvent?._id, }).lean(); expect(recurringEvents).toBeDefined(); - expect(recurringEvents).toHaveLength(5); + expect(recurringEvents).toHaveLength(10); const attendeeExists = await EventAttendee.exists({ userId: testUser?._id, @@ -431,7 +931,7 @@ describe("resolvers -> Mutation -> createEvent", () => { eventAdmin: expect.arrayContaining([createEventPayload?._id]), createdEvents: expect.arrayContaining([createEventPayload?._id]), registeredEvents: expect.arrayContaining([createEventPayload?._id]), - }) + }), ); }); @@ -496,7 +996,7 @@ describe("Check for validation conditions", () => { it(`throws String Length Validation error if title is greater than 256 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationCreateEventArgs = { @@ -532,7 +1032,7 @@ describe("Check for validation conditions", () => { } catch (error: unknown) { if (error instanceof InputValidationError) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ); } else { fail(`Expected LengthValidationError, but got ${error}`); @@ -542,7 +1042,7 @@ describe("Check for validation conditions", () => { it(`throws String Length Validation error if description is greater than 500 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationCreateEventArgs = { @@ -578,7 +1078,7 @@ describe("Check for validation conditions", () => { } catch (error: unknown) { if (error instanceof InputValidationError) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description`, ); } else { fail(`Expected LengthValidationError, but got ${error}`); @@ -588,7 +1088,7 @@ describe("Check for validation conditions", () => { it(`throws String Length Validation error if location is greater than 50 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationCreateEventArgs = { @@ -623,7 +1123,7 @@ describe("Check for validation conditions", () => { } catch (error: unknown) { if (error instanceof InputValidationError) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 50 characters in location` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 50 characters in location`, ); } else { fail(`Expected LengthValidationError, but got ${error}`); @@ -633,7 +1133,7 @@ describe("Check for validation conditions", () => { it(`throws Date Validation error if start date is greater than end date`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationCreateEventArgs = { @@ -668,7 +1168,7 @@ describe("Check for validation conditions", () => { } catch (error: unknown) { if (error instanceof InputValidationError) { expect(error.message).toEqual( - `start date must be earlier than end date` + `start date must be earlier than end date`, ); } else { fail(`Expected DateValidationError, but got ${error}`); diff --git a/tests/resolvers/Mutation/createEventVolunteer.spec.ts b/tests/resolvers/Mutation/createEventVolunteer.spec.ts new file mode 100644 index 0000000000..1cdfef7850 --- /dev/null +++ b/tests/resolvers/Mutation/createEventVolunteer.spec.ts @@ -0,0 +1,161 @@ +import "dotenv/config"; +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import type { MutationCreateEventVolunteerArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; + +import { + afterAll, + afterEach, + beforeAll, + describe, + expect, + it, + vi, +} from "vitest"; +import { + EVENT_NOT_FOUND_ERROR, + EVENT_VOLUNTEER_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../../src/constants"; +import type { TestUserType } from "../../helpers/userAndOrg"; +import { createTestEvent } from "../../helpers/events"; +import type { TestEventType } from "../../helpers/events"; +import { createTestUser } from "../../helpers/user"; + +let testUser1: TestUserType, testUser2: TestUserType; +let testEvent: TestEventType; +let MONGOOSE_INSTANCE: typeof mongoose; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + testUser2 = await createTestUser(); + testUser1 = await createTestUser(); + [, , testEvent] = await createTestEvent(); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> createEventVolunteer", () => { + afterEach(() => { + vi.doUnmock("../../../src/constants"); + vi.resetModules(); + }); + + it(`throws NotFoundError if no user exists with _id === context.userId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => message); + try { + const args: MutationCreateEventVolunteerArgs = { + data: { + userId: testUser2?._id, + eventId: testEvent?._id, + }, + }; + + const context = { + userId: Types.ObjectId().toString(), + }; + + const { createEventVolunteer: createEventVolunteerResolver } = + await import("../../../src/resolvers/Mutation/createEventVolunteer"); + + await createEventVolunteerResolver?.({}, args, context); + } catch (error: unknown) { + expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual(USER_NOT_FOUND_ERROR.MESSAGE); + } + }); + it(`throws NotFoundError if no user with _id === args.userId exists`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => message); + try { + const args: MutationCreateEventVolunteerArgs = { + data: { + userId: Types.ObjectId().toString(), + eventId: testEvent?._id, + }, + }; + + const context = { + userId: testUser1?.id, + }; + + const { createEventVolunteer: createEventVolunteerResolver } = + await import("../../../src/resolvers/Mutation/createEventVolunteer"); + + await createEventVolunteerResolver?.({}, args, context); + } catch (error: unknown) { + expect(spy).toBeCalledWith(EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE, + ); + } + }); + + it(`throws NotFoundError if no event exists with _id === args.eventId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => message); + try { + const args: MutationCreateEventVolunteerArgs = { + data: { + userId: testUser2?._id, + eventId: Types.ObjectId().toString(), + }, + }; + + const context = { + userId: testUser1?.id, + }; + + const { createEventVolunteer: createEventVolunteerResolver } = + await import("../../../src/resolvers/Mutation/createEventVolunteer"); + + await createEventVolunteerResolver?.({}, args, context); + } catch (error: unknown) { + expect(spy).toBeCalledWith(EVENT_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual(EVENT_NOT_FOUND_ERROR.MESSAGE); + } + }); + + it(`returns EventVolunteer object if valid userId and eventId in args`, async () => { + const args: MutationCreateEventVolunteerArgs = { + data: { + userId: testUser2?._id, + eventId: testEvent?._id, + }, + }; + + const context = { + userId: testUser1?.id, + }; + + const { createEventVolunteer: createEventVolunteerResolver } = await import( + "../../../src/resolvers/Mutation/createEventVolunteer" + ); + + const createdVolunteer = await createEventVolunteerResolver?.( + {}, + args, + context, + ); + + expect(createdVolunteer).toEqual( + expect.objectContaining({ + eventId: Types.ObjectId(testEvent?.id), + userId: testUser2?._id, + creatorId: testUser1?._id, + isInvited: true, + isAssigned: false, + }), + ); + }); +}); diff --git a/tests/resolvers/Mutation/createGroupChat.spec.ts b/tests/resolvers/Mutation/createGroupChat.spec.ts index 8b22d629a8..92efcfb5a5 100644 --- a/tests/resolvers/Mutation/createGroupChat.spec.ts +++ b/tests/resolvers/Mutation/createGroupChat.spec.ts @@ -28,7 +28,7 @@ beforeAll(async () => { testOrganization = resultsArray[1]; const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -93,7 +93,7 @@ describe("resolvers -> Mutation -> createGroupChat", () => { const createGroupChatPayload = await createGroupChatResolver?.( {}, args, - context + context, ); expect(createGroupChatPayload).toEqual( @@ -102,7 +102,7 @@ describe("resolvers -> Mutation -> createGroupChat", () => { creatorId: testUser?._id, users: [testUser?._id], organization: testOrganization?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/createMember.spec.ts b/tests/resolvers/Mutation/createMember.spec.ts index f217990fa0..2cd9e1c7a4 100644 --- a/tests/resolvers/Mutation/createMember.spec.ts +++ b/tests/resolvers/Mutation/createMember.spec.ts @@ -30,7 +30,7 @@ beforeAll(async () => { testOrganization = resultsArray[1]; const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); @@ -49,7 +49,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { $set: { creatorId: Types.ObjectId().toString(), }, - } + }, ); const args: MutationCreateMemberArgs = { @@ -79,7 +79,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { $set: { creatorId: testUser?._id, }, - } + }, ); await User.updateOne( @@ -90,7 +90,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { $set: { userType: "SUPERADMIN", }, - } + }, ); const args: MutationCreateMemberArgs = { @@ -140,7 +140,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { $push: { members: testUser?._id, }, - } + }, ); const args: MutationCreateMemberArgs = { @@ -168,7 +168,7 @@ describe("resolvers -> Mutation -> createAdmin", () => { .lean(); const updatedOrganizationCheck = updatedTestOrganization?.members.some( - (member) => member.equals(testUser?._id) + (member) => member.equals(testUser?._id), ); expect(updatedOrganizationCheck).toBe(true); diff --git a/tests/resolvers/Mutation/createMessageChat.spec.ts b/tests/resolvers/Mutation/createMessageChat.spec.ts index e1033a6880..886852db23 100644 --- a/tests/resolvers/Mutation/createMessageChat.spec.ts +++ b/tests/resolvers/Mutation/createMessageChat.spec.ts @@ -78,7 +78,7 @@ describe("resolvers -> Mutation -> createMessageChat", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -96,7 +96,7 @@ describe("resolvers -> Mutation -> createMessageChat", () => { _action: "CHAT_CHANNEL", _payload: { directMessageChat: InterfaceMessageChat; - } + }, ): { _action: string; _payload: { directMessageChat: InterfaceMessageChat }; @@ -116,7 +116,7 @@ describe("resolvers -> Mutation -> createMessageChat", () => { const createMessageChatPayload = await createMessageChatResolver?.( {}, args, - context + context, ); expect(createMessageChatPayload).toEqual( @@ -125,7 +125,7 @@ describe("resolvers -> Mutation -> createMessageChat", () => { receiver: testUsers[1]._id, message: "message", languageBarrier: false, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/createOrganization.spec.ts b/tests/resolvers/Mutation/createOrganization.spec.ts index 03e107065d..c3664ae546 100644 --- a/tests/resolvers/Mutation/createOrganization.spec.ts +++ b/tests/resolvers/Mutation/createOrganization.spec.ts @@ -81,7 +81,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { await createOrganization?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE + USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE, ); expect(error.message).toEqual(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE); } @@ -96,7 +96,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { // ); vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( - async (encodedImageURL: string) => encodedImageURL + async (encodedImageURL: string) => encodedImageURL, ); await User.findOneAndUpdate( @@ -108,7 +108,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { adminApproved: true, userType: "SUPERADMIN", }, - } + }, ); const args: MutationCreateOrganizationArgs = { @@ -138,7 +138,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { const createOrganizationPayload = await createOrganizationResolver?.( {}, args, - context + context, ); expect(createOrganizationPayload).toEqual( expect.objectContaining({ @@ -161,7 +161,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { admins: [testUser?._id], members: [testUser?._id], image: "imagePath", - }) + }), ); expect(createOrganizationPayload?.image).toEqual("imagePath"); @@ -176,7 +176,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { joinedOrganizations: [createOrganizationPayload?._id], createdOrganizations: [createOrganizationPayload?._id], adminFor: [createOrganizationPayload?._id], - }) + }), ); const defaultCategory = await ActionItemCategory.findOne({ @@ -188,7 +188,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { organizationId: createOrganizationPayload?._id, name: "Default", isDisabled: false, - }) + }), ); }); it(`creates the organization without image and returns it`, async () => { @@ -196,7 +196,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { async (newImagePath: any, imageAlreadyInDbPath: any) => ({ newImagePath, imageAlreadyInDbPath, - }) + }), ); const args: MutationCreateOrganizationArgs = { data: { @@ -225,7 +225,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { const createOrganizationPayload = await createOrganizationResolver?.( {}, args, - context + context, ); expect(createOrganizationPayload).toEqual( expect.objectContaining({ @@ -247,7 +247,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { creatorId: testUser?._id, admins: [testUser?._id], members: [testUser?._id], - }) + }), ); expect(createOrganizationPayload?.image).toBe(null); }); @@ -255,7 +255,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { it(`throws String Length Validation error if name is greater than 256 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationCreateOrganizationArgs = { @@ -285,14 +285,14 @@ describe("resolvers -> Mutation -> createOrganization", () => { await createOrganizationResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in name` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in name`, ); } }); it(`throws String Length Validation error if description is greater than 500 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationCreateOrganizationArgs = { @@ -323,14 +323,14 @@ describe("resolvers -> Mutation -> createOrganization", () => { await createOrganizationResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description`, ); } }); it("throws Address Validation Error for an invalid address", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const invalidAddress = { @@ -400,14 +400,14 @@ describe("resolvers -> Mutation -> createOrganization", () => { } } else { console.error( - "Error: createOrganizationResolver is undefined in the test suite" + "Error: createOrganizationResolver is undefined in the test suite", ); } }); it("throws Address Validation Error for missing address", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const missingAddress = {}; // No address field in the data @@ -436,7 +436,7 @@ describe("resolvers -> Mutation -> createOrganization", () => { } } else { console.error( - "Error: createOrganizationResolver is undefined in the test suite" + "Error: createOrganizationResolver is undefined in the test suite", ); } }); diff --git a/tests/resolvers/Mutation/createPlugin.spec.ts b/tests/resolvers/Mutation/createPlugin.spec.ts index a6ab977a8a..a7219b4fc7 100644 --- a/tests/resolvers/Mutation/createPlugin.spec.ts +++ b/tests/resolvers/Mutation/createPlugin.spec.ts @@ -25,7 +25,7 @@ describe("resolvers -> Mutation -> createPlugin", () => { expect(createPluginPayload).toEqual( expect.objectContaining({ ...data, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/createPost.spec.ts b/tests/resolvers/Mutation/createPost.spec.ts index c3a69250b4..e90a30c5c3 100644 --- a/tests/resolvers/Mutation/createPost.spec.ts +++ b/tests/resolvers/Mutation/createPost.spec.ts @@ -28,8 +28,9 @@ import { createTestUserAndOrganization, createTestUser, } from "../../helpers/userAndOrg"; -import { Organization } from "../../../src/models"; +import { Organization, Post } from "../../../src/models"; import * as uploadEncodedImage from "../../../src/utilities/encodedImageStorage/uploadEncodedImage"; +import * as uploadEncodedVideo from "../../../src/utilities/encodedVideoStorage/uploadEncodedVideo"; import { createPost as createPostResolverImage } from "../../../src/resolvers/Mutation/createPost"; let testUser: TestUserType; @@ -84,11 +85,13 @@ describe("resolvers -> Mutation -> createPost", () => { ); await createPostResolver?.({}, args, context); - } catch (error: any) { - expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); - expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` - ); + } catch (error) { + if (error instanceof Error) { + expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect(error.message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } } }); @@ -117,11 +120,13 @@ describe("resolvers -> Mutation -> createPost", () => { ); await createPostResolver?.({}, args, context); - } catch (error: any) { - expect(spy).toBeCalledWith(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE); - expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` - ); + } catch (error) { + if (error instanceof Error) { + expect(spy).toBeCalledWith(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE); + expect(error.message).toEqual( + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, + ); + } } }); @@ -146,23 +151,27 @@ describe("resolvers -> Mutation -> createPost", () => { userId: randomUser?.id, }; + expect(args.data.pinned).toBe(true); const { createPost: createPostResolver } = await import( "../../../src/resolvers/Mutation/createPost" ); - await createPostResolver?.({}, args, context); - } catch (error: any) { - expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_TO_PIN.MESSAGE); - expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_TO_PIN.MESSAGE}` - ); + const createPost = await createPostResolver?.({}, args, context); + expect(createPost?.pinned).toBe(true); + } catch (error) { + if (error instanceof Error) { + expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_TO_PIN.MESSAGE); + expect(error.message).toEqual( + `Translated ${USER_NOT_AUTHORIZED_TO_PIN.MESSAGE}`, + ); + } } }); it(`pinned post should be successfully added to the organization`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const args: MutationCreatePostArgs = { @@ -179,17 +188,19 @@ describe("resolvers -> Mutation -> createPost", () => { userId: testUser?.id, }; + expect(args.data.pinned).toBe(true); + const { createPost: createPostResolver } = await import( "../../../src/resolvers/Mutation/createPost" ); const createdPost = await createPostResolver?.({}, args, context); - expect(createdPost).toEqual( expect.objectContaining({ text: "New Post Text", videoUrl: null, // Update the expected value to match the received value title: "New Post Title", - }) + pinned: true, + }), ); const updatedTestOrg = await Organization.findOne({ @@ -199,11 +210,11 @@ describe("resolvers -> Mutation -> createPost", () => { expect( updatedTestOrg?.pinnedPosts .map((id) => id.toString()) - .includes(createdPost?._id.toString()) + .includes(createdPost?._id.toString()), ).toBeTruthy(); }); - it(`creates the post and returns it when image is not provided`, async () => { + it(`creates the post and returns it when image or video is not provided`, async () => { const args: MutationCreatePostArgs = { data: { organizationId: testOrganization?.id, @@ -218,11 +229,14 @@ describe("resolvers -> Mutation -> createPost", () => { userId: testUser?.id, }; + expect(args.data.pinned).toBe(true); + const { createPost: createPostResolver } = await import( "../../../src/resolvers/Mutation/createPost" ); const createPostPayload = await createPostResolver?.({}, args, context); + expect(createPostPayload?.pinned).toBe(true); expect(createPostPayload).toEqual( expect.objectContaining({ @@ -231,8 +245,84 @@ describe("resolvers -> Mutation -> createPost", () => { creatorId: testUser?._id, organization: testOrganization?._id, imageUrl: null, - }) + }), + ); + }); + + it(`creates the post and and returns it when an image is provided`, async () => { + const args: MutationCreatePostArgs = { + data: { + organizationId: testOrganization?.id, + text: "text", + title: "title", + pinned: true, + }, + file: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAZSURBVBhXYzxz5sx/BiBgefLkCQMbGxsDAEdkBicg9wbaAAAAAElFTkSuQmCC", // Provide a supported file type + }; + + vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( + async (encodedImageURL: string) => encodedImageURL, ); + + const context = { + userId: testUser?.id, + apiRootUrl: BASE_URL, + }; + + expect(args.data.pinned).toBe(true); + + const createPostPayload = await createPostResolverImage?.( + {}, + args, + context, + ); + expect(createPostPayload?.pinned).toBe(true); + + const testCreatePostPayload = await Post.findOne({ + _id: createPostPayload?._id, + imageUrl: { $ne: null }, + }).lean(); + + //Ensures that the post is created and imageUrl is not null + expect(testCreatePostPayload).not.toBeNull(); + }); + + it(`creates the post and and returns it when a video is provided`, async () => { + const args: MutationCreatePostArgs = { + data: { + organizationId: testOrganization?.id, + text: "text", + title: "title", + pinned: true, + }, + file: "data:video/mp4;base64,VIDEO_BASE64_DATA_HERE", // Provide a supported file type + }; + + vi.spyOn(uploadEncodedVideo, "uploadEncodedVideo").mockImplementation( + async (uploadEncodedVideo: string) => uploadEncodedVideo, + ); + + const context = { + userId: testUser?.id, + apiRootUrl: BASE_URL, + }; + + expect(args.data.pinned).toBe(true); + + const createPostPayload = await createPostResolverImage?.( + {}, + args, + context, + ); + expect(createPostPayload?.pinned).toBe(true); + + const testCreatePostPayload = await Post.findOne({ + _id: createPostPayload?._id, + videoUrl: { $ne: null }, + }).lean(); + + //Ensures that the post is created and videoUrl is not null + expect(testCreatePostPayload).not.toBeNull(); }); it(`creates the post and throws an error for unsupported file type`, async () => { @@ -242,6 +332,7 @@ describe("resolvers -> Mutation -> createPost", () => { text: "text", videoUrl: "videoUrl", title: "title", + pinned: true, }, file: "unsupportedFile.txt", // Provide an unsupported file type }; @@ -251,23 +342,25 @@ describe("resolvers -> Mutation -> createPost", () => { apiRootUrl: BASE_URL, }; + expect(args.data.pinned).toBe(true); + // Mock the uploadEncodedImage function to throw an error for unsupported file types vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( () => { throw new Error("Unsupported file type."); - } + }, ); // Ensure that an error is thrown when createPostResolverImage is called await expect( - createPostResolverImage?.({}, args, context) + createPostResolverImage?.({}, args, context), ).rejects.toThrowError("Unsupported file type."); }); it(`throws String Length Validation error if title is greater than 256 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationCreatePostArgs = { @@ -285,22 +378,25 @@ describe("resolvers -> Mutation -> createPost", () => { const context = { userId: testUser?.id, }; - + expect(args.data.pinned).toBe(true); const { createPost: createPostResolver } = await import( "../../../src/resolvers/Mutation/createPost" ); - await createPostResolver?.({}, args, context); - } catch (error: any) { - expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` - ); + const createdPost = await createPostResolver?.({}, args, context); + expect(createdPost?.pinned).toBe(true); + } catch (error) { + if (error instanceof Error) { + expect(error.message).toEqual( + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, + ); + } } }); it(`throws String Length Validation error if text is greater than 500 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationCreatePostArgs = { @@ -318,22 +414,60 @@ describe("resolvers -> Mutation -> createPost", () => { userId: testUser?.id, }; + expect(args.data.pinned).toBe(true); + const { createPost: createPostResolver } = await import( "../../../src/resolvers/Mutation/createPost" ); - await createPostResolver?.({}, args, context); - } catch (error: any) { - expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in information` + const createdPost = await createPostResolver?.({}, args, context); + expect(createdPost?.pinned).toBe(true); + } catch (error) { + if (error instanceof Error) { + expect(error.message).toEqual( + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in information`, + ); + } + } + }); + + it("throws an error if the user tries to create a post but post is not pinned", async () => { + const { requestContext } = await import("../../../src/libraries"); + vi.spyOn(requestContext, "translate").mockImplementationOnce( + (message) => message, + ); + try { + const args: MutationCreatePostArgs = { + data: { + organizationId: testOrganization?._id, + text: "text", + pinned: false, + }, + }; + + const context = { + userId: testUser?.id, + }; + + expect(args.data.pinned).toBe(false); + const { createPost: createPostResolver } = await import( + "../../../src/resolvers/Mutation/createPost" ); + const createdPost = await createPostResolver?.({}, args, context); + expect(createdPost?.pinned).toBe(false); + } catch (error) { + if (error instanceof Error) { + expect(error.message).toEqual( + `Cannot create post when pinned is false`, + ); + } } }); it("throws error if title is provided and post is not pinned", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationCreatePostArgs = { @@ -349,21 +483,25 @@ describe("resolvers -> Mutation -> createPost", () => { userId: testUser?.id, }; + expect(args.data.pinned).toBe(false); const { createPost: createPostResolver } = await import( "../../../src/resolvers/Mutation/createPost" ); - await createPostResolver?.({}, args, context); - } catch (error: any) { - expect(error.message).toEqual( - `Post needs to be pinned inorder to add a title` - ); + const createdPost = await createPostResolver?.({}, args, context); + expect(createdPost?.pinned).toBe(false); + } catch (error) { + if (error instanceof Error) { + expect(error.message).toEqual( + `Post needs to be pinned inorder to add a title`, + ); + } } }); it("throws error if title is not provided and post is pinned", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationCreatePostArgs = { @@ -378,13 +516,17 @@ describe("resolvers -> Mutation -> createPost", () => { const context = { userId: testUser?.id, }; + expect(args.data.pinned).toBe(true); const { createPost: createPostResolver } = await import( "../../../src/resolvers/Mutation/createPost" ); - await createPostResolver?.({}, args, context); - } catch (error: any) { - expect(error.message).toEqual(`Please provide a title to pin post`); + const createPost = await createPostResolver?.({}, args, context); + expect(createPost?.pinned).toBe(true); + } catch (error) { + if (error instanceof Error) { + expect(error.message).toEqual(`Please provide a title to pin post`); + } } }); }); diff --git a/tests/resolvers/Mutation/createSampleOrganization.spec.ts b/tests/resolvers/Mutation/createSampleOrganization.spec.ts index c378e5465c..65c0ac57f9 100644 --- a/tests/resolvers/Mutation/createSampleOrganization.spec.ts +++ b/tests/resolvers/Mutation/createSampleOrganization.spec.ts @@ -39,7 +39,7 @@ describe("createSampleOrganization resolver", async () => { it("should NOT throw error when user is ADMIN", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const ORGANIZATION_ID = faker.database.mongodbObjectId(); @@ -53,7 +53,7 @@ describe("createSampleOrganization resolver", async () => { const adminResult = await createSampleOrganization!( parent, args, - adminContext + adminContext, ); expect(adminResult).toBe(true); await SampleData.deleteMany({}); @@ -62,7 +62,7 @@ describe("createSampleOrganization resolver", async () => { it("should NOT throw error when user is SUPERADMIN", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const ORGANIZATION_ID = faker.database.mongodbObjectId(); @@ -76,7 +76,7 @@ describe("createSampleOrganization resolver", async () => { const adminResult = await createSampleOrganization!( parent, args, - adminContext + adminContext, ); expect(adminResult).toBe(true); await SampleData.deleteMany({}); @@ -85,7 +85,7 @@ describe("createSampleOrganization resolver", async () => { it("should throw unauthorized error for non-admins", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const ORGANIZATION_ID = faker.database.mongodbObjectId(); @@ -106,7 +106,7 @@ describe("createSampleOrganization resolver", async () => { it("should throw error when the sample organization already exist", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const ORGANIZATION_ID = faker.database.mongodbObjectId(); @@ -120,7 +120,7 @@ describe("createSampleOrganization resolver", async () => { const adminResult = await createSampleOrganization!( parent, args, - adminContext + adminContext, ); expect(adminResult).toBe(true); @@ -137,7 +137,7 @@ describe("createSampleOrganization resolver", async () => { it("should throw error when the current user doesn't exist", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const args = {}; diff --git a/tests/resolvers/Mutation/createUserFamily.spec.ts b/tests/resolvers/Mutation/createUserFamily.spec.ts new file mode 100644 index 0000000000..38f6dc7d20 --- /dev/null +++ b/tests/resolvers/Mutation/createUserFamily.spec.ts @@ -0,0 +1,189 @@ +import "dotenv/config"; +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import type { MutationCreateUserFamilyArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; + +import { + LENGTH_VALIDATION_ERROR, + USER_FAMILY_MIN_MEMBERS_ERROR_CODE, + USER_NOT_AUTHORIZED_SUPERADMIN, + USER_NOT_FOUND_ERROR, +} from "../../../src/constants"; +import { beforeAll, afterAll, describe, it, expect, vi } from "vitest"; +import type { TestUserType } from "../../helpers/userAndUserFamily"; +import { createTestUserFunc } from "../../helpers/userAndUserFamily"; +import { createTestUserFunc as createTestUser } from "../../helpers/user"; + +let testUser: TestUserType; +let testUser2: TestUserType; +let MONGOOSE_INSTANCE: typeof mongoose; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const resultsArray = await createTestUserFunc(); + const secondUser = await createTestUser(); + + testUser = resultsArray; + testUser2 = secondUser; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> createUserFamily", () => { + it(`throws NotFoundError if no user exists with _id === context.userId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + + try { + const args: MutationCreateUserFamilyArgs = { + data: { + title: "title", + userIds: [testUser?._id, testUser2?._id], + }, + }; + + const context = { + userId: Types.ObjectId().toString(), + }; + + const { createUserFamily: createUserFamilyResolver } = await import( + "../../../src/resolvers/Mutation/createUserFamily" + ); + + await createUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws Not Authorized error if user is not a super admin`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => message); + try { + const args: MutationCreateUserFamilyArgs = { + data: { + title: "title", + userIds: [testUser?._id, testUser2?._id], + }, + }; + + const context = { + userId: testUser2?._id, + }; + + const { createUserFamily: createUserFamilyResolver } = await import( + "../../../src/resolvers/Mutation/createUserFamily" + ); + + await createUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE); + expect((error as Error).message).toEqual( + `${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}`, + ); + } + }); + + it(`throws String Length Validation error if name is greater than 256 characters`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => message); + try { + const args: MutationCreateUserFamilyArgs = { + data: { + title: + "JWQPfpdkGGGKyryb86K4YN85nDj4m4F7gEAMBbMXLax73pn2okV6kpWY0EYO0XSlUc0fAlp45UCgg3s6mqsRYF9FOlzNIDFLZ1rd03Z17cdJRuvBcAmbC0imyqGdXHGDUQmVyOjDkaOLAvjhB5uDeuEqajcAPTcKpZ6LMpigXuqRAd0xGdPNXyITC03FEeKZAjjJL35cSIUeMv5eWmiFlmmm70FU1Bp6575zzBtEdyWPLflcA2GpGmmf4zvT7nfgN3NIkwQIhk9OwP8dn75YYczcYuUzLpxBu1Lyog77YlAj5DNdTIveXu9zHeC6V4EEUcPQtf1622mhdU3jZNMIAyxcAG4ErtztYYRqFs0ApUxXiQI38rmiaLcicYQgcOxpmFvqRGiSduiCprCYm90CHWbQFq4w2uhr8HhR3r9HYMIYtrRyO6C3rPXaQ7otpjuNgE0AKI57AZ4nGG1lvNwptFCY60JEndSLX9Za6XP1zkVRLaMZArQNl", + userIds: [testUser?._id, testUser2?._id], + }, + }; + const context = { + userId: testUser?._id, + }; + + const { createUserFamily: createUserFamilyResolver } = await import( + "../../../src/resolvers/Mutation/createUserFamily" + ); + + await createUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith( + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in name`, + ); + expect((error as Error).message).toEqual( + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in name`, + ); + } + }); + + it(`throws InputValidationError if userIds array has fewer than 2 members`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => message); + try { + const args: MutationCreateUserFamilyArgs = { + data: { + title: "title", + userIds: [testUser?._id], + }, + }; + + const context = { + userId: testUser?.id, + }; + + const { createUserFamily: createUserFamilyResolver } = await import( + "../../../src/resolvers/Mutation/createUserFamily" + ); + + await createUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith( + USER_FAMILY_MIN_MEMBERS_ERROR_CODE.MESSAGE, + ); + expect((error as Error).message).toEqual( + `${USER_FAMILY_MIN_MEMBERS_ERROR_CODE.MESSAGE}`, + ); + } + }); + + it(`creates the user Family and returns it`, async () => { + const args: MutationCreateUserFamilyArgs = { + data: { + title: "title", + userIds: [testUser2?._id, testUser?._id], + }, + }; + + const context = { + userId: testUser?.id, + }; + + const { createUserFamily: createUserFamilyResolver } = await import( + "../../../src/resolvers/Mutation/createUserFamily" + ); + + const createUserFamilyPayload = await createUserFamilyResolver?.( + {}, + args, + context, + ); + + expect(createUserFamilyPayload).toEqual( + expect.objectContaining({ + title: "title", + }), + ); + }); +}); diff --git a/tests/resolvers/Mutation/createUserTag.spec.ts b/tests/resolvers/Mutation/createUserTag.spec.ts index a72ea942e7..e82d5ddfea 100644 --- a/tests/resolvers/Mutation/createUserTag.spec.ts +++ b/tests/resolvers/Mutation/createUserTag.spec.ts @@ -82,7 +82,7 @@ describe("resolvers -> Mutation -> createUserTag", () => { } catch (error: any) { expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -113,7 +113,7 @@ describe("resolvers -> Mutation -> createUserTag", () => { } catch (error: any) { expect(spy).toBeCalledWith(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -175,7 +175,7 @@ describe("resolvers -> Mutation -> createUserTag", () => { } catch (error: any) { expect(spy).toBeCalledWith(INCORRECT_TAG_INPUT.MESSAGE); expect(error.message).toEqual( - `Translated ${INCORRECT_TAG_INPUT.MESSAGE}` + `Translated ${INCORRECT_TAG_INPUT.MESSAGE}`, ); } }); @@ -207,7 +207,7 @@ describe("resolvers -> Mutation -> createUserTag", () => { } catch (error: any) { expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_TO_CREATE_TAG.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_TO_CREATE_TAG.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_TO_CREATE_TAG.MESSAGE}`, ); } }); @@ -245,7 +245,7 @@ describe("resolvers -> Mutation -> createUserTag", () => { it(`tag should be successfully added`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const args: MutationCreateUserTagArgs = { @@ -271,7 +271,7 @@ describe("resolvers -> Mutation -> createUserTag", () => { organizationId: testOrganization?._id, name: "TestUserTag", parentTagId: testTag?._id, - }) + }), ); const createdTagExists = await OrganizationTagUser.exists({ diff --git a/tests/resolvers/Mutation/deleteAdvertisementById.spec.ts b/tests/resolvers/Mutation/deleteAdvertisementById.spec.ts index df2e83b806..52c70e2e1b 100644 --- a/tests/resolvers/Mutation/deleteAdvertisementById.spec.ts +++ b/tests/resolvers/Mutation/deleteAdvertisementById.spec.ts @@ -45,7 +45,7 @@ describe("resolvers -> Mutation -> deleteAdvertiementById", () => { const deleteDonationByIdPayload = await deleteAdvertisementById?.( {}, args, - {} + {}, ); expect(deleteDonationByIdPayload).toEqual({ @@ -61,7 +61,7 @@ describe("resolvers -> Mutation -> deleteAdvertiementById", () => { const deleteDonationByIdPayload = await deleteAdvertisementById?.( {}, args, - {} + {}, ); expect(deleteDonationByIdPayload).toEqual({ diff --git a/tests/resolvers/Mutation/deleteAgendaCategory.spec.ts b/tests/resolvers/Mutation/deleteAgendaCategory.spec.ts new file mode 100644 index 0000000000..6a350ad191 --- /dev/null +++ b/tests/resolvers/Mutation/deleteAgendaCategory.spec.ts @@ -0,0 +1,174 @@ +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import { connect, disconnect } from "../../helpers/db"; +import { deleteAgendaCategory } from "../../../src/resolvers/Mutation/deleteAgendaCategory"; +import { User, AgendaCategoryModel, Organization } from "../../../src/models"; +import { + AGENDA_CATEGORY_NOT_FOUND_ERROR, + USER_NOT_AUTHORIZED_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../../src/constants"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import { createTestUser } from "../../helpers/userAndOrg"; +import type { + TestOrganizationType, + TestUserType, +} from "../../helpers/userAndOrg"; +import type { MutationDeleteAgendaCategoryArgs } from "../../../src/types/generatedGraphQLTypes"; +import type { TestAgendaCategoryType } from "../../helpers/agendaCategory"; +let testUser: TestUserType; +let MONGOOSE_INSTANCE: typeof mongoose; +let testAdminUser: TestUserType; +let sampleAgendaCategory: TestAgendaCategoryType; +let testOrganization: TestOrganizationType; +let randomUser: TestUserType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + testUser = await createTestUser(); + testAdminUser = await createTestUser(); + randomUser = await createTestUser(); + testOrganization = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testUser?._id, + admins: [testAdminUser?._id], + members: [testUser?._id, testAdminUser?._id], + creatorId: testUser?._id, + }); + + await User.updateOne( + { + _id: testAdminUser?._id, + }, + { + $set: { + createdOrganizations: [testOrganization._id], + adminFor: [testOrganization._id], + }, + }, + ); + sampleAgendaCategory = await AgendaCategoryModel.create({ + name: "Sample Agenda Category", + organization: testOrganization?._id, + createdBy: testAdminUser?._id, + createdAt: new Date(), + }); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> deleteAgendaCategory", () => { + it("throws NotFoundError if no user exists with the given ID", async () => { + try { + const args = { + id: sampleAgendaCategory?._id, + }; + const context = { + userId: Types.ObjectId().toString(), + }; + + await deleteAgendaCategory?.({}, args, context); + } catch (error: unknown) { + expect((error as Error).message).toEqual(USER_NOT_FOUND_ERROR.MESSAGE); + } + }); + it("throws NotFoundError if no agenda category exists with the given ID", async () => { + try { + const args = { + id: Types.ObjectId().toString(), + }; + const context = { + userId: testAdminUser?._id, + }; + await deleteAgendaCategory?.({}, args, context); + } catch (error: unknown) { + expect((error as Error).message).toEqual( + AGENDA_CATEGORY_NOT_FOUND_ERROR.MESSAGE, + ); + } + }); + + it("throws UnauthorizedError if the user is not the creator of the agenda category", async () => { + try { + const args = { + id: sampleAgendaCategory?._id, + }; + const context = { + userId: testUser?._id, + }; + await deleteAgendaCategory?.({}, args, context); + } catch (error: unknown) { + expect((error as Error).message).toEqual( + USER_NOT_AUTHORIZED_ERROR.MESSAGE, + ); + } + }); + it(`removes the agenda category and returns it as superadmin`, async () => { + const superAdminTestUser = await User.findOneAndUpdate( + { + _id: randomUser?._id, + }, + { + userType: "SUPERADMIN", + }, + { + new: true, + }, + ); + const newTestAgendaCategory = await AgendaCategoryModel.create({ + name: "Sample Agenda Category", + organization: testOrganization?._id, + createdBy: superAdminTestUser?._id, + createdAt: Date.now(), + }); + const args: MutationDeleteAgendaCategoryArgs = { + id: newTestAgendaCategory?._id, + }; + + const context = { + userId: superAdminTestUser?._id, + }; + + const removedAgendaCategoryPayload = await deleteAgendaCategory?.( + {}, + args, + context, + ); + + expect(removedAgendaCategoryPayload).toEqual(args.id); + }); + it(` deletes an agenda category successfully and returns it to who created it `, async () => { + const args: MutationDeleteAgendaCategoryArgs = { + id: sampleAgendaCategory?._id, + }; + + const context = { + userId: testAdminUser?._id, + }; + const removedAgendaCategoryPayload = await deleteAgendaCategory?.( + {}, + args, + context, + ); + + expect(removedAgendaCategoryPayload).toEqual(args.id); + const deletedAgendaCategory = await AgendaCategoryModel.findById(args.id); + expect(deletedAgendaCategory).toBeNull(); + }); + // it("deletes an agenda category successfully", async () => { + // const args = { + // id: sampleAgendaCategory?._id, + // }; + // const context = { + // userId: testAdminUser?._id, + // }; + // const result = await deleteAgendaCategory?.({}, args, context); + // expect(result).toEqual(args.id); + // // Verify that the agenda category is deleted from the database + + // }); +}); diff --git a/tests/resolvers/Mutation/deleteDonationById.spec.ts b/tests/resolvers/Mutation/deleteDonationById.spec.ts index 5fa09389b0..f83879d209 100644 --- a/tests/resolvers/Mutation/deleteDonationById.spec.ts +++ b/tests/resolvers/Mutation/deleteDonationById.spec.ts @@ -44,7 +44,7 @@ describe("resolvers -> Mutation -> deleteDonationById", () => { const deleteDonationByIdPayload = await deleteDonationByIdResolver?.( {}, args, - {} + {}, ); expect(deleteDonationByIdPayload).toEqual({ @@ -60,7 +60,7 @@ describe("resolvers -> Mutation -> deleteDonationById", () => { const deleteDonationByIdPayload = await deleteDonationByIdResolver?.( {}, args, - {} + {}, ); expect(deleteDonationByIdPayload).toEqual({ diff --git a/tests/resolvers/Mutation/forgotPassword.spec.ts b/tests/resolvers/Mutation/forgotPassword.spec.ts index cec1bc0475..192a83a714 100644 --- a/tests/resolvers/Mutation/forgotPassword.spec.ts +++ b/tests/resolvers/Mutation/forgotPassword.spec.ts @@ -34,7 +34,7 @@ describe("resolvers -> Mutation -> forgotPassword", () => { process.env.NODE_ENV!, { expiresIn: 99999999, - } + }, ); const args: MutationForgotPasswordArgs = { @@ -64,7 +64,7 @@ describe("resolvers -> Mutation -> forgotPassword", () => { process.env.NODE_ENV ?? "", { expiresIn: 99999999, - } + }, ); const args: MutationForgotPasswordArgs = { diff --git a/tests/resolvers/Mutation/getAdvertisement.spec.ts b/tests/resolvers/Mutation/getAdvertisement.spec.ts index 7c5c920090..eaf1cf5198 100644 --- a/tests/resolvers/Mutation/getAdvertisement.spec.ts +++ b/tests/resolvers/Mutation/getAdvertisement.spec.ts @@ -73,7 +73,7 @@ describe("resolvers -> Mutation -> getAdvertisement", () => { const createdAdvertisementPayload = await createAdvertisementResolver?.( {}, args, - context + context, ); const { getAdvertisements: getAdvertisementResolver } = await import( @@ -82,7 +82,7 @@ describe("resolvers -> Mutation -> getAdvertisement", () => { const getAdvertisementPayload = await getAdvertisementResolver?.( {}, args, - context + context, ); if (getAdvertisementPayload) { const lastIndex = getAdvertisementPayload.length - 1; @@ -90,12 +90,12 @@ describe("resolvers -> Mutation -> getAdvertisement", () => { expect(getAdvertisementPayload[lastIndex]).toHaveProperty( "link", - "https://www.example.com" + "https://www.example.com", ); expect(getAdvertisementPayload[lastIndex]).toHaveProperty( "type", - "POPUP" + "POPUP", ); } }); diff --git a/tests/resolvers/Mutation/joinPublicOrganization.spec.ts b/tests/resolvers/Mutation/joinPublicOrganization.spec.ts index b06929e6b8..9db4edf420 100644 --- a/tests/resolvers/Mutation/joinPublicOrganization.spec.ts +++ b/tests/resolvers/Mutation/joinPublicOrganization.spec.ts @@ -112,7 +112,7 @@ describe("resolvers -> Mutation -> joinPublicOrganization", () => { }, { new: true, - } + }, ); await cacheOrganizations([updatedOrganizaiton!]); @@ -171,7 +171,7 @@ describe("resolvers -> Mutation -> joinPublicOrganization", () => { }, { new: true, - } + }, ); await cacheOrganizations([updatedOrganizaiton!]); diff --git a/tests/resolvers/Mutation/leaveOrganization.spec.ts b/tests/resolvers/Mutation/leaveOrganization.spec.ts index bf2ba6e0ba..0ff28cd801 100644 --- a/tests/resolvers/Mutation/leaveOrganization.spec.ts +++ b/tests/resolvers/Mutation/leaveOrganization.spec.ts @@ -116,7 +116,7 @@ describe("resolvers -> Mutation -> leaveOrganization", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -154,7 +154,7 @@ describe("resolvers -> Mutation -> leaveOrganization", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -172,7 +172,7 @@ describe("resolvers -> Mutation -> leaveOrganization", () => { const leaveOrganizationPayload = await leaveOrganizationResolver?.( {}, args, - context + context, ); const updatedTestUser = await User.findOne({ diff --git a/tests/resolvers/Mutation/likeComment.spec.ts b/tests/resolvers/Mutation/likeComment.spec.ts index 8e7d2d42c9..39b234e921 100644 --- a/tests/resolvers/Mutation/likeComment.spec.ts +++ b/tests/resolvers/Mutation/likeComment.spec.ts @@ -49,7 +49,7 @@ beforeAll(async () => { $inc: { commentCount: 1, }, - } + }, ); }); diff --git a/tests/resolvers/Mutation/login.spec.ts b/tests/resolvers/Mutation/login.spec.ts index a7917d651c..2342ac4c94 100644 --- a/tests/resolvers/Mutation/login.spec.ts +++ b/tests/resolvers/Mutation/login.spec.ts @@ -38,7 +38,7 @@ beforeAll(async () => { $set: { password: hashedTestPassword, }, - } + }, ); const testOrganization = temp[1]; const testMembershipRequest = await MembershipRequest.create({ @@ -54,7 +54,7 @@ beforeAll(async () => { $push: { membershipRequests: testMembershipRequest._id, }, - } + }, ); await Organization.updateOne( @@ -65,7 +65,7 @@ beforeAll(async () => { $push: { membershipRequests: testMembershipRequest._id, }, - } + }, ); }); @@ -103,7 +103,7 @@ describe("resolvers -> Mutation -> login", () => { if (error instanceof Error) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } } @@ -174,7 +174,7 @@ email === args.data.email`, async () => { const updatedUser = await User.findOneAndUpdate( { _id: testUser?._id }, { token: newToken, $inc: { tokenVersion: 1 } }, - { new: true } + { new: true }, ); expect(updatedUser).toBeDefined(); @@ -214,7 +214,7 @@ email === args.data.email`, async () => { expect(loginPayload).toEqual( expect.objectContaining({ user: testUser, - }) + }), ); expect(loginPayload?.user).toBeDefined(); expect(typeof loginPayload?.accessToken).toBe("string"); diff --git a/tests/resolvers/Mutation/otp.spec.ts b/tests/resolvers/Mutation/otp.spec.ts index a7ea4c8b7e..5113556191 100644 --- a/tests/resolvers/Mutation/otp.spec.ts +++ b/tests/resolvers/Mutation/otp.spec.ts @@ -48,7 +48,7 @@ describe("resolvers -> Mutation -> otp", () => { vi.doMock("../../../src/constants", async () => { const actualConstants: object = await vi.importActual( - "../../../src/constants" + "../../../src/constants", ); return { diff --git a/tests/resolvers/Mutation/refreshToken.spec.ts b/tests/resolvers/Mutation/refreshToken.spec.ts index c6030aa532..4a0dd407d8 100644 --- a/tests/resolvers/Mutation/refreshToken.spec.ts +++ b/tests/resolvers/Mutation/refreshToken.spec.ts @@ -61,7 +61,7 @@ describe("resolvers -> Mutation -> refreshToken", () => { if (error instanceof Error) { expect(spy).toBeCalledWith(INVALID_REFRESH_TOKEN_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${INVALID_REFRESH_TOKEN_ERROR.MESSAGE}` + `Translated ${INVALID_REFRESH_TOKEN_ERROR.MESSAGE}`, ); } } @@ -92,7 +92,7 @@ describe("resolvers -> Mutation -> refreshToken", () => { if (error instanceof Error) { expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); spy.mockRestore(); @@ -104,7 +104,7 @@ describe("resolvers -> Mutation -> refreshToken", () => { with _id === payload.userId for args.refreshToken`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { await User.updateOne( @@ -115,11 +115,11 @@ describe("resolvers -> Mutation -> refreshToken", () => { $inc: { tokenVersion: 1, }, - } + }, ); refreshToken = await createRefreshToken( - testUser ? testUser.toObject() : ({} as InterfaceUser) + testUser ? testUser.toObject() : ({} as InterfaceUser), ); const args: MutationRefreshTokenArgs = { @@ -153,11 +153,11 @@ describe("resolvers -> Mutation -> refreshToken", () => { $inc: { tokenVersion: 1, }, - } + }, ); refreshToken = await createRefreshToken( - testUser ? testUser.toObject() : ({} as InterfaceUser) + testUser ? testUser.toObject() : ({} as InterfaceUser), ); const args: MutationRefreshTokenArgs = { @@ -173,7 +173,7 @@ describe("resolvers -> Mutation -> refreshToken", () => { if (error instanceof Error) { expect(spy).toBeCalledWith(INVALID_REFRESH_TOKEN_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${INVALID_REFRESH_TOKEN_ERROR.MESSAGE}` + `Translated ${INVALID_REFRESH_TOKEN_ERROR.MESSAGE}`, ); } } @@ -199,7 +199,7 @@ describe("resolvers -> Mutation -> refreshToken", () => { const updatedUser = await User.findOneAndUpdate( { _id: jwtPayload.userId }, { $set: { token: newRefreshToken }, $inc: { tokenVersion: 1 } }, - { new: true } + { new: true }, ); expect(updatedUser).toBeDefined(); @@ -220,11 +220,11 @@ describe("resolvers -> Mutation -> refreshToken", () => { $inc: { tokenVersion: -2, }, - } + }, ); refreshToken = await createRefreshToken( - testUser ? testUser.toObject() : ({} as InterfaceUser) + testUser ? testUser.toObject() : ({} as InterfaceUser), ); const args: MutationRefreshTokenArgs = { diff --git a/tests/resolvers/Mutation/registerForEvent.spec.ts b/tests/resolvers/Mutation/registerForEvent.spec.ts index 4137b1d3c1..c26ac40773 100644 --- a/tests/resolvers/Mutation/registerForEvent.spec.ts +++ b/tests/resolvers/Mutation/registerForEvent.spec.ts @@ -108,7 +108,7 @@ describe("resolvers -> Mutation -> registerForEvent", () => { $set: { registeredEvents: [], }, - } + }, ); const args: MutationRegisterForEventArgs = { @@ -122,7 +122,7 @@ describe("resolvers -> Mutation -> registerForEvent", () => { const registerForEventPayload = await registerForEventResolver?.( {}, args, - context + context, ); const testRegisterForEventPayload = await Event.findOne({ diff --git a/tests/resolvers/Mutation/rejectAdmin.spec.ts b/tests/resolvers/Mutation/rejectAdmin.spec.ts index 9918eb86b6..805d74eaca 100644 --- a/tests/resolvers/Mutation/rejectAdmin.spec.ts +++ b/tests/resolvers/Mutation/rejectAdmin.spec.ts @@ -62,12 +62,12 @@ describe("resolvers -> Mutation -> rejectAdmin", () => { }, { userType: "USER", - } + }, ); await rejectAdminResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}`, ); expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE); @@ -113,7 +113,7 @@ describe("resolvers -> Mutation -> rejectAdmin", () => { $set: { userType: "SUPERADMIN", }, - } + }, ); const args: MutationRejectAdminArgs = { diff --git a/tests/resolvers/Mutation/rejectMembershipRequest.spec.ts b/tests/resolvers/Mutation/rejectMembershipRequest.spec.ts index 95f6536842..dd9f647ef1 100644 --- a/tests/resolvers/Mutation/rejectMembershipRequest.spec.ts +++ b/tests/resolvers/Mutation/rejectMembershipRequest.spec.ts @@ -91,7 +91,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { $set: { organization: Types.ObjectId().toString(), }, - } + }, ); const args: MutationRejectMembershipRequestArgs = { @@ -127,7 +127,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { $set: { organization: testOrganization?._id, }, - } + }, ); await MembershipRequest.updateOne( @@ -138,7 +138,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { $set: { user: Types.ObjectId().toString(), }, - } + }, ); const args: MutationRejectMembershipRequestArgs = { @@ -176,7 +176,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { $set: { user: testUser?._id, }, - } + }, ); await Organization.findByIdAndUpdate( @@ -187,7 +187,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { $set: { admins: [], }, - } + }, ); await User.findByIdAndUpdate( @@ -198,7 +198,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { $set: { userType: "USER", }, - } + }, ); const args: MutationRejectMembershipRequestArgs = { @@ -219,7 +219,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); } }); @@ -233,7 +233,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { $push: { admins: testUser?._id, }, - } + }, ); const args: MutationRejectMembershipRequestArgs = { @@ -248,7 +248,7 @@ describe("resolvers -> Mutation -> rejectMembershipRequest", () => { await rejectMembershipRequestResolver?.({}, args, context); expect(rejectMembershipRequestPayload?._id).toEqual( - testMembershipRequest?._id + testMembershipRequest?._id, ); const testUpdatedUser = await User.findOne({ diff --git a/tests/resolvers/Mutation/removeActionItem.spec.ts b/tests/resolvers/Mutation/removeActionItem.spec.ts index 780980096a..7cfca2858e 100644 --- a/tests/resolvers/Mutation/removeActionItem.spec.ts +++ b/tests/resolvers/Mutation/removeActionItem.spec.ts @@ -44,7 +44,7 @@ beforeAll(async () => { MONGOOSE_INSTANCE = await connect(); const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); randomUser = await createTestUser(); @@ -132,14 +132,14 @@ describe("resolvers -> Mutation -> removeActionItem", () => { const removedActionItemPayload = await removeActionItemResolver?.( {}, args, - context + context, ); // console.log(removedActionItemPayload); expect(removedActionItemPayload).toEqual( expect.objectContaining({ assigneeId: assignedTestUser?._id, - }) + }), ); }); @@ -159,7 +159,7 @@ describe("resolvers -> Mutation -> removeActionItem", () => { }, { new: true, - } + }, ); const args: MutationRemoveActionItemArgs = { @@ -173,13 +173,13 @@ describe("resolvers -> Mutation -> removeActionItem", () => { const removedActionItemPayload = await removeActionItemResolver?.( {}, args, - context + context, ); expect(removedActionItemPayload).toEqual( expect.objectContaining({ assigneeId: randomUser?._id, - }) + }), ); }); @@ -199,7 +199,7 @@ describe("resolvers -> Mutation -> removeActionItem", () => { }, { new: true, - } + }, ); try { @@ -233,7 +233,7 @@ describe("resolvers -> Mutation -> removeActionItem", () => { }, { new: true, - } + }, ); const args: MutationRemoveActionItemArgs = { @@ -247,13 +247,13 @@ describe("resolvers -> Mutation -> removeActionItem", () => { const removedActionItemPayload = await removeActionItemResolver?.( {}, args, - context + context, ); expect(removedActionItemPayload).toEqual( expect.objectContaining({ assigneeId: randomUser?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/removeAdmin.spec.ts b/tests/resolvers/Mutation/removeAdmin.spec.ts index b605942cbb..22e9be876b 100644 --- a/tests/resolvers/Mutation/removeAdmin.spec.ts +++ b/tests/resolvers/Mutation/removeAdmin.spec.ts @@ -129,7 +129,7 @@ describe("resolvers -> Mutation -> removeAdmin", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -155,7 +155,7 @@ describe("resolvers -> Mutation -> removeAdmin", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_ORGANIZATION_ADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_ORGANIZATION_ADMIN.MESSAGE}` + `Translated ${USER_NOT_ORGANIZATION_ADMIN.MESSAGE}`, ); } }); @@ -181,7 +181,7 @@ describe("resolvers -> Mutation -> removeAdmin", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -206,10 +206,10 @@ describe("resolvers -> Mutation -> removeAdmin", () => { await removeAdminAdminError?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE + USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE, ); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}`, ); } }); @@ -224,7 +224,7 @@ describe("resolvers -> Mutation -> removeAdmin", () => { $set: { creatorId: testUserRemover?._id, }, - } + }, ); await User.updateOne( @@ -236,7 +236,7 @@ describe("resolvers -> Mutation -> removeAdmin", () => { adminApproved: true, userType: "SUPERADMIN", }, - } + }, ); const args: MutationRemoveAdminArgs = { diff --git a/tests/resolvers/Mutation/removeAdvertisement.spec.ts b/tests/resolvers/Mutation/removeAdvertisement.spec.ts index 79a05d8523..69a178e364 100644 --- a/tests/resolvers/Mutation/removeAdvertisement.spec.ts +++ b/tests/resolvers/Mutation/removeAdvertisement.spec.ts @@ -73,7 +73,7 @@ describe("resolvers -> Mutation -> removeAdvertisement", () => { const createdAdvertisementPayload = await createAdvertisementResolver?.( {}, args, - context + context, ); const createdAdvertisementId = createdAdvertisementPayload?._id || ""; @@ -85,19 +85,27 @@ describe("resolvers -> Mutation -> removeAdvertisement", () => { const removeAdvertisementPayload = await removeAdvertisement?.( {}, { id: createdAdvertisementId }, - context + context, ); + const removeAdvertisementPayloadFalsyId = await removeAdvertisement?.( + {}, + { id: "" }, + context, + ); expect(removeAdvertisementPayload).toHaveProperty( "_id", - createdAdvertisementId + createdAdvertisementId, ); - + if (removeAdvertisementPayloadFalsyId) { + expect(removeAdvertisementPayloadFalsyId).toHaveProperty("_id", ""); + } else { + console.error("removeAdvertisementPayloadFalsyId is undefined or null"); + } expect(removeAdvertisementPayload).toHaveProperty("name", "myad"); - expect(removeAdvertisementPayload).toHaveProperty( "link", - "https://www.example.com" + "https://www.example.com", ); expect(removeAdvertisementPayload).toHaveProperty("type", "POPUP"); @@ -120,13 +128,15 @@ describe("resolvers -> Mutation -> removeAdvertisement", () => { const removeAdvertisementPayload = await removeAdvertisement?.( {}, { id: "64d1f8cb77a4b51004f824b8" }, - context - ); - } catch (error: any) { - expect(spy).toBeCalledWith(ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE); - expect(error.message).toEqual( - `Translated ${ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE}` + context, ); + } catch (error: unknown) { + if (error instanceof Error) { + expect(spy).toBeCalledWith(ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE); + expect(error.message).toEqual( + `Translated ${ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE}`, + ); + } } }); }); diff --git a/tests/resolvers/Mutation/removeComment.spec.ts b/tests/resolvers/Mutation/removeComment.spec.ts index c6b5a216ef..fea64e64cf 100644 --- a/tests/resolvers/Mutation/removeComment.spec.ts +++ b/tests/resolvers/Mutation/removeComment.spec.ts @@ -56,7 +56,7 @@ beforeAll(async () => { }, { new: true, - } + }, ); }); @@ -138,7 +138,7 @@ describe("resolvers -> Mutation -> removeComment", () => { }, { new: true, - } + }, ); if (updatedComment !== null) { @@ -154,7 +154,7 @@ describe("resolvers -> Mutation -> removeComment", () => { $pull: { adminFor: testPost?.organization, }, - } + }, ); const args: MutationRemoveCommentArgs = { @@ -189,7 +189,7 @@ describe("resolvers -> Mutation -> removeComment", () => { }, { new: true, - } + }, ); if (updatedComment !== null) { @@ -205,7 +205,7 @@ describe("resolvers -> Mutation -> removeComment", () => { $push: { adminFor: testPost?.organization, }, - } + }, ); const args: MutationRemoveCommentArgs = { @@ -219,7 +219,7 @@ describe("resolvers -> Mutation -> removeComment", () => { const removeCommentPayload = await removeCommentResolver?.( {}, args, - context + context, ); const testUpdatedPost = await Post.findOne({ diff --git a/tests/resolvers/Mutation/removeDirectChat.spec.ts b/tests/resolvers/Mutation/removeDirectChat.spec.ts index 45a59735eb..a2db86cdf9 100644 --- a/tests/resolvers/Mutation/removeDirectChat.spec.ts +++ b/tests/resolvers/Mutation/removeDirectChat.spec.ts @@ -61,7 +61,7 @@ beforeAll(async () => { }, { new: true, - } + }, ); }); @@ -98,7 +98,7 @@ describe("resolvers -> Mutation -> removeDirectChat", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -126,7 +126,7 @@ describe("resolvers -> Mutation -> removeDirectChat", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(CHAT_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${CHAT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${CHAT_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -151,7 +151,7 @@ describe("resolvers -> Mutation -> removeDirectChat", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -173,7 +173,7 @@ describe("resolvers -> Mutation -> removeDirectChat", () => { await removeDirectChatResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); @@ -192,7 +192,7 @@ describe("resolvers -> Mutation -> removeDirectChat", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -214,7 +214,7 @@ describe("resolvers -> Mutation -> removeDirectChat", () => { const removeDirectChatPayload = await removeDirectChatResolver?.( {}, args, - context + context, ); expect(removeDirectChatPayload).toEqual(testDirectChat?.toObject()); diff --git a/tests/resolvers/Mutation/removeEvent.spec.ts b/tests/resolvers/Mutation/removeEvent.spec.ts index ae83acaa73..4025de06c6 100644 --- a/tests/resolvers/Mutation/removeEvent.spec.ts +++ b/tests/resolvers/Mutation/removeEvent.spec.ts @@ -107,7 +107,7 @@ describe("resolvers -> Mutation -> removeEvent", () => { $set: { adminFor: [], }, - } + }, ); await Event.updateOne( @@ -118,7 +118,7 @@ describe("resolvers -> Mutation -> removeEvent", () => { $set: { admins: [], }, - } + }, ); const args: MutationRemoveEventArgs = { @@ -149,7 +149,7 @@ describe("resolvers -> Mutation -> removeEvent", () => { $push: { adminFor: testOrganization?._id, }, - } + }, ); const updatedEvent = await Event.findOneAndUpdate( @@ -163,7 +163,7 @@ describe("resolvers -> Mutation -> removeEvent", () => { }, { new: true, - } + }, ); if (updatedEvent !== null) { diff --git a/tests/resolvers/Mutation/removeEventAttendee.spec.ts b/tests/resolvers/Mutation/removeEventAttendee.spec.ts index 1ed20abac6..11fe27a55d 100644 --- a/tests/resolvers/Mutation/removeEventAttendee.spec.ts +++ b/tests/resolvers/Mutation/removeEventAttendee.spec.ts @@ -54,7 +54,7 @@ describe("resolvers -> Mutation -> removeEventAttendee", () => { await removeEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -84,7 +84,7 @@ describe("resolvers -> Mutation -> removeEventAttendee", () => { await removeEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(EVENT_NOT_FOUND_ERROR.MESSAGE); } @@ -114,7 +114,7 @@ describe("resolvers -> Mutation -> removeEventAttendee", () => { await removeEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); } @@ -144,7 +144,7 @@ describe("resolvers -> Mutation -> removeEventAttendee", () => { await removeEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -174,10 +174,10 @@ describe("resolvers -> Mutation -> removeEventAttendee", () => { await removeEventAttendeeResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_REGISTERED_FOR_EVENT.MESSAGE}` + `Translated ${USER_NOT_REGISTERED_FOR_EVENT.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - USER_NOT_REGISTERED_FOR_EVENT.MESSAGE + USER_NOT_REGISTERED_FOR_EVENT.MESSAGE, ); } }); diff --git a/tests/resolvers/Mutation/removeEventVolunteer.spec.ts b/tests/resolvers/Mutation/removeEventVolunteer.spec.ts new file mode 100644 index 0000000000..7432f48355 --- /dev/null +++ b/tests/resolvers/Mutation/removeEventVolunteer.spec.ts @@ -0,0 +1,126 @@ +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import type { MutationUpdateEventVolunteerArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; +import { + USER_NOT_FOUND_ERROR, + EVENT_VOLUNTEER_NOT_FOUND_ERROR, +} from "../../../src/constants"; +import { + beforeAll, + afterAll, + describe, + it, + expect, + vi, + afterEach, +} from "vitest"; +import type { TestUserType } from "../../helpers/userAndOrg"; +import type { TestEventVolunteerType } from "../../helpers/events"; +import { createTestEventAndVolunteer } from "../../helpers/events"; +import { User } from "../../../src/models"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testUser: TestUserType; +let testEventVolunteer: TestEventVolunteerType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const temp = await createTestEventAndVolunteer(); + testUser = temp[0]; + testEventVolunteer = temp[3]; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> removeEventVolunteer", () => { + afterEach(() => { + vi.doUnmock("../../../src/constants"); + vi.resetModules(); + }); + it(`throws NotFoundError if no user exists with _id === context.userId `, async () => { + const { requestContext } = await import("../../../src/libraries"); + + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => `Translated ${message}`); + + try { + const args: MutationUpdateEventVolunteerArgs = { + id: testEventVolunteer?._id, + }; + + const context = { userId: Types.ObjectId().toString() }; + + const u = await User.findById(context.userId); + console.log(u); + + const { removeEventVolunteer: removeEventVolunteerResolver } = + await import("../../../src/resolvers/Mutation/removeEventVolunteer"); + + await removeEventVolunteerResolver?.({}, args, context); + } catch (error: unknown) { + expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws NotFoundError if no event volunteer exists with _id === args.id`, async () => { + const { requestContext } = await import("../../../src/libraries"); + + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => `Translated ${message}`); + + try { + const args: MutationUpdateEventVolunteerArgs = { + id: Types.ObjectId().toString(), + }; + + const context = { userId: testUser?._id }; + + const { removeEventVolunteer: removeEventVolunteerResolver } = + await import("../../../src/resolvers/Mutation/removeEventVolunteer"); + + await removeEventVolunteerResolver?.({}, args, context); + } catch (error: unknown) { + expect(spy).toHaveBeenLastCalledWith( + EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE, + ); + expect((error as Error).message).toEqual( + `Translated ${EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`removes event volunteer with _id === args.id and returns it`, async () => { + const args: MutationUpdateEventVolunteerArgs = { + id: testEventVolunteer?._id, + }; + + const context = { userId: testUser?._id }; + const { removeEventVolunteer: removeEventVolunteerResolver } = await import( + "../../../src/resolvers/Mutation/removeEventVolunteer" + ); + + const deletedVolunteer = await removeEventVolunteerResolver?.( + {}, + args, + context, + ); + + expect(deletedVolunteer).toEqual( + expect.objectContaining({ + _id: testEventVolunteer?._id, + userId: testEventVolunteer?.userId, + isInvited: testEventVolunteer?.isInvited, + isAssigned: testEventVolunteer?.isAssigned, + response: testEventVolunteer?.response, + }), + ); + }); +}); diff --git a/tests/resolvers/Mutation/removeGroupChat.spec.ts b/tests/resolvers/Mutation/removeGroupChat.spec.ts index 0848afb4f1..0e5f04b520 100644 --- a/tests/resolvers/Mutation/removeGroupChat.spec.ts +++ b/tests/resolvers/Mutation/removeGroupChat.spec.ts @@ -50,7 +50,7 @@ beforeAll(async () => { }, { new: true, - } + }, ); }); @@ -87,7 +87,7 @@ describe("resolvers -> Mutation -> removeGroupChat", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(CHAT_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${CHAT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${CHAT_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -108,7 +108,7 @@ describe("resolvers -> Mutation -> removeGroupChat", () => { $set: { organization: Types.ObjectId().toString(), }, - } + }, ); const args: MutationRemoveGroupChatArgs = { @@ -127,7 +127,7 @@ describe("resolvers -> Mutation -> removeGroupChat", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -149,7 +149,7 @@ describe("resolvers -> Mutation -> removeGroupChat", () => { $set: { organization: testOrganization?._id, }, - } + }, ); const updatedOrganization = await Organization.findOneAndUpdate( @@ -163,7 +163,7 @@ describe("resolvers -> Mutation -> removeGroupChat", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -186,7 +186,7 @@ describe("resolvers -> Mutation -> removeGroupChat", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); } }); @@ -204,7 +204,7 @@ describe("resolvers -> Mutation -> removeGroupChat", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -226,7 +226,7 @@ describe("resolvers -> Mutation -> removeGroupChat", () => { const removeGroupChatPayload = await removeGroupChatResolver?.( {}, args, - context + context, ); expect(removeGroupChatPayload).toEqual({ diff --git a/tests/resolvers/Mutation/removeMember.spec.ts b/tests/resolvers/Mutation/removeMember.spec.ts index 08a2aa6f4c..393ec52a77 100644 --- a/tests/resolvers/Mutation/removeMember.spec.ts +++ b/tests/resolvers/Mutation/removeMember.spec.ts @@ -67,7 +67,7 @@ beforeAll(async () => { adminFor: testOrganization._id, joinedOrganizations: testOrganization._id, }, - } + }, ); await User.updateOne( @@ -79,7 +79,7 @@ beforeAll(async () => { adminFor: testOrganization._id, joinedOrganizations: testOrganization._id, }, - } + }, ); await User.updateOne( @@ -90,7 +90,7 @@ beforeAll(async () => { $push: { joinedOrganizations: testOrganization._id, }, - } + }, ); await User.updateOne( @@ -104,7 +104,7 @@ beforeAll(async () => { joinedOrganizations: testOrganization._id, }, }, - } + }, ); }); @@ -172,7 +172,7 @@ describe("resolvers -> Mutation -> removeMember", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); } }); @@ -202,7 +202,7 @@ describe("resolvers -> Mutation -> removeMember", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -231,7 +231,7 @@ describe("resolvers -> Mutation -> removeMember", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(MEMBER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${MEMBER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${MEMBER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -287,7 +287,7 @@ describe("resolvers -> Mutation -> removeMember", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(ADMIN_REMOVING_ADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${ADMIN_REMOVING_ADMIN.MESSAGE}` + `Translated ${ADMIN_REMOVING_ADMIN.MESSAGE}`, ); } }); @@ -316,7 +316,7 @@ describe("resolvers -> Mutation -> removeMember", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(ADMIN_REMOVING_CREATOR.MESSAGE); expect(error.message).toEqual( - `Translated ${ADMIN_REMOVING_CREATOR.MESSAGE}` + `Translated ${ADMIN_REMOVING_CREATOR.MESSAGE}`, ); } }); @@ -340,7 +340,7 @@ describe("resolvers -> Mutation -> removeMember", () => { const updatedOrganization = await removeMemberResolverRemoveAdminError?.( {}, args, - context + context, ); const removedUser = await User.findOne({ @@ -349,7 +349,7 @@ describe("resolvers -> Mutation -> removeMember", () => { expect(updatedOrganization?.members).not.toContain(testUsers[2]?._id); expect(removedUser?.joinedOrganizations).not.toContain( - testOrganization?._id + testOrganization?._id, ); }); }); diff --git a/tests/resolvers/Mutation/removeOrganization.spec.ts b/tests/resolvers/Mutation/removeOrganization.spec.ts index 32e27e4cfe..cb5e2ce8b2 100644 --- a/tests/resolvers/Mutation/removeOrganization.spec.ts +++ b/tests/resolvers/Mutation/removeOrganization.spec.ts @@ -86,7 +86,7 @@ beforeAll(async () => { joinedOrganizations: [testOrganization._id], organizationsBlockedBy: [testOrganization._id], }, - } + }, ); await User.updateOne( @@ -97,7 +97,7 @@ beforeAll(async () => { $set: { joinedOrganizations: [testOrganization._id], }, - } + }, ); const testMembershipRequest = await MembershipRequest.create({ @@ -113,7 +113,7 @@ beforeAll(async () => { $push: { membershipRequests: testMembershipRequest._id, }, - } + }, ); testPost = await Post.create({ @@ -144,7 +144,7 @@ beforeAll(async () => { membershipRequests: testMembershipRequest._id, posts: testPost._id, }, - } + }, ); testComment = await Comment.create({ @@ -161,7 +161,7 @@ beforeAll(async () => { $inc: { commentCount: 1, }, - } + }, ); }); @@ -198,7 +198,7 @@ describe("resolvers -> Mutation -> removeOrganization", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -226,7 +226,7 @@ describe("resolvers -> Mutation -> removeOrganization", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -250,7 +250,7 @@ describe("resolvers -> Mutation -> removeOrganization", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -272,7 +272,7 @@ describe("resolvers -> Mutation -> removeOrganization", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}`, ); } }); @@ -289,7 +289,7 @@ describe("resolvers -> Mutation -> removeOrganization", () => { }, { new: true, - } + }, ); if (updatedOrganization !== null) { @@ -305,7 +305,7 @@ describe("resolvers -> Mutation -> removeOrganization", () => { adminApproved: true, userType: "SUPERADMIN", }, - } + }, ); const args: MutationRemoveOrganizationArgs = { @@ -319,7 +319,7 @@ describe("resolvers -> Mutation -> removeOrganization", () => { const removeOrganizationPayload = await removeOrganizationResolver?.( {}, args, - context + context, ); const updatedTestUser = await User.findOne({ @@ -421,7 +421,7 @@ describe("resolvers -> Mutation -> removeOrganization", () => { const removeOrganizationPayload = await removeOrganizationResolver?.( {}, args, - context + context, ); expect(removeOrganizationPayload).toEqual({ diff --git a/tests/resolvers/Mutation/removeOrganizationCustomField.spec.ts b/tests/resolvers/Mutation/removeOrganizationCustomField.spec.ts index b40399cc27..7e14e1d1ba 100644 --- a/tests/resolvers/Mutation/removeOrganizationCustomField.spec.ts +++ b/tests/resolvers/Mutation/removeOrganizationCustomField.spec.ts @@ -52,7 +52,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { }, { userId: testUser?._id, - } + }, ); const initialCustomFields = await OrganizationCustomField.find({ @@ -61,7 +61,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { expect(customField).toBeDefined(); expect(customField?.organizationId.toString()).toBe( - testOrganization?._id.toString() + testOrganization?._id.toString(), ); const context = { userId: testUser?._id }; @@ -77,7 +77,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { expect(updatedCustomFields).toHaveLength(initialCustomFields.length - 1); const removedCustomField = updatedCustomFields.find( - (field) => field._id.toString() === customField?._id.toString() + (field) => field._id.toString() === customField?._id.toString(), ); expect(removedCustomField).toBeUndefined(); }); @@ -99,7 +99,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { }, { userId: testUser?._id, - } + }, ); const initialCustomFields = await OrganizationCustomField.find({ @@ -108,7 +108,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { expect(customField).toBeDefined(); expect(customField?.organizationId.toString()).toBe( - testOrganization?._id.toString() + testOrganization?._id.toString(), ); const context = { userId: nonAdmin?._id }; @@ -121,7 +121,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -145,7 +145,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(CUSTOM_FIELD_NOT_FOUND.MESSAGE); expect(error.message).toEqual( - `Translated ${CUSTOM_FIELD_NOT_FOUND.MESSAGE}` + `Translated ${CUSTOM_FIELD_NOT_FOUND.MESSAGE}`, ); } }); @@ -165,12 +165,12 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { }, { userId: testUser?._id, - } + }, ); expect(customField).toBeDefined(); expect(customField?.organizationId.toString()).toBe( - testOrganization?._id.toString() + testOrganization?._id.toString(), ); const context = { userId: Types.ObjectId().toString() }; @@ -184,7 +184,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -199,12 +199,12 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { }, { userId: testUser?._id, - } + }, ); expect(customField).toBeDefined(); expect(customField?.organizationId.toString()).toBe( - testOrganization?._id.toString() + testOrganization?._id.toString(), ); const context = { userId: testUser?._id }; @@ -217,7 +217,7 @@ describe("resolvers => Mutation => removeOrganizationCustomField", () => { await removeOrganizationCustomField?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); diff --git a/tests/resolvers/Mutation/removeOrganizationImage.spec.ts b/tests/resolvers/Mutation/removeOrganizationImage.spec.ts index af6c1b1bd7..5984af4b21 100644 --- a/tests/resolvers/Mutation/removeOrganizationImage.spec.ts +++ b/tests/resolvers/Mutation/removeOrganizationImage.spec.ts @@ -68,7 +68,7 @@ beforeAll(async () => { adminFor: [testOrganization._id], joinedOrganizations: [testOrganization._id], }, - } + }, ); }); @@ -106,10 +106,10 @@ describe("resolvers -> Mutation -> removeOrganizationImage", () => { await removeOrganizationImageResolver?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - ORGANIZATION_NOT_FOUND_ERROR.MESSAGE + ORGANIZATION_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -137,7 +137,7 @@ describe("resolvers -> Mutation -> removeOrganizationImage", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); } }); @@ -164,10 +164,10 @@ describe("resolvers -> Mutation -> removeOrganizationImage", () => { await removeOrganizationImageResolver?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - ORGANIZATION_IMAGE_NOT_FOUND_ERROR.MESSAGE + ORGANIZATION_IMAGE_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${ORGANIZATION_IMAGE_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_IMAGE_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -198,7 +198,7 @@ describe("resolvers -> Mutation -> removeOrganizationImage", () => { }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { diff --git a/tests/resolvers/Mutation/removePost.spec.ts b/tests/resolvers/Mutation/removePost.spec.ts index 9a2fb19d20..da21878eb2 100644 --- a/tests/resolvers/Mutation/removePost.spec.ts +++ b/tests/resolvers/Mutation/removePost.spec.ts @@ -49,7 +49,7 @@ describe("resolvers -> Mutation -> removePost", () => { it(`throws NotFoundError if current user with _id === context.userId does not exist`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); try { @@ -68,7 +68,7 @@ describe("resolvers -> Mutation -> removePost", () => { await removePostResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -76,7 +76,7 @@ describe("resolvers -> Mutation -> removePost", () => { it(`throws NotFoundError if no post exists with _id === args.id`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); try { @@ -95,7 +95,7 @@ describe("resolvers -> Mutation -> removePost", () => { await removePostResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${POST_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${POST_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -103,7 +103,7 @@ describe("resolvers -> Mutation -> removePost", () => { it(`throws UnauthorizedError if a non-creator / non-superadmin / non-admin of the org tries to delete the post`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); try { @@ -122,7 +122,7 @@ describe("resolvers -> Mutation -> removePost", () => { await removePostResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -130,7 +130,7 @@ describe("resolvers -> Mutation -> removePost", () => { it(`deletes the post with no image and video with _id === args.id and returns it`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const args: MutationRemovePostArgs = { @@ -152,7 +152,7 @@ describe("resolvers -> Mutation -> removePost", () => { it(`deletes the post with image with _id === args.id and returns it`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const deletePreviousImage = await import( "../../../src/utilities/encodedImageStorage/deletePreviousImage" @@ -172,7 +172,7 @@ describe("resolvers -> Mutation -> removePost", () => { imageUrl: "images/fakeImagePathimage.png", }, }, - { new: true } + { new: true }, ).lean(); const args: MutationRemovePostArgs = { @@ -195,7 +195,7 @@ describe("resolvers -> Mutation -> removePost", () => { it(`deletes the post with video with _id === args.id and returns it`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const deletePreviousVideo = await import( "../../../src/utilities/encodedVideoStorage/deletePreviousVideo" @@ -215,7 +215,7 @@ describe("resolvers -> Mutation -> removePost", () => { videoUrl: "videos/fakeVideoPathvideo.png", }, }, - { new: true } + { new: true }, ).lean(); const args: MutationRemovePostArgs = { diff --git a/tests/resolvers/Mutation/removeSampleOrganization.spec.ts b/tests/resolvers/Mutation/removeSampleOrganization.spec.ts index cc5030b597..a575baf84c 100644 --- a/tests/resolvers/Mutation/removeSampleOrganization.spec.ts +++ b/tests/resolvers/Mutation/removeSampleOrganization.spec.ts @@ -59,7 +59,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => it("should NOT throw error when user is ADMIN", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const admin = generateUserData(ORGANIZATION_ID.toString(), "ADMIN"); @@ -72,7 +72,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => const adminResult = await removeSampleOrganization!( parent, args, - adminContext + adminContext, ); expect(adminResult).toBe(true); }); @@ -80,7 +80,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => it("should not throw error when user is a SUPERADMIN", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const _id = faker.database.mongodbObjectId(); @@ -113,7 +113,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => sampleDocument.save(); const superadmin = generateUserData( organization._id.toString(), - "SUPERADMIN" + "SUPERADMIN", ); (await superadmin).save(); @@ -125,7 +125,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => const superAdminResult = await removeSampleOrganization!( parent, args, - superAdminContext + superAdminContext, ); expect(superAdminResult).toBe(true); @@ -134,7 +134,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => it("should throw unauthorized error for non-admins", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const _id = faker.database.mongodbObjectId(); @@ -181,7 +181,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => it("should throw user not found error when user is non-existent", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const randomUserId = faker.database.mongodbObjectId(); @@ -200,7 +200,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => it("should NOT throw error when user is ADMIN", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const randomOrganizationId = faker.database.mongodbObjectId(); @@ -222,7 +222,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => it("should NOT throw error when organization doesn't exist", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const admin = generateUserData(ORGANIZATION_ID.toString(), "ADMIN"); @@ -244,7 +244,7 @@ describe("Remove Sample Organization Resolver - User Authorization", async () => it("should throw error when the collection name is not a valid one", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const admin = generateUserData(ORGANIZATION_ID.toString(), "ADMIN"); diff --git a/tests/resolvers/Mutation/removeUserCustomData.spec.ts b/tests/resolvers/Mutation/removeUserCustomData.spec.ts index 639b6e01c3..b935571009 100644 --- a/tests/resolvers/Mutation/removeUserCustomData.spec.ts +++ b/tests/resolvers/Mutation/removeUserCustomData.spec.ts @@ -46,7 +46,7 @@ describe("removeUserCustomData mutation", () => { }, { userId: testUser?._id, - } + }, ); const args = { @@ -59,7 +59,7 @@ describe("removeUserCustomData mutation", () => { const removeCustomData = await removeUserCustomData?.({}, args, context); expect(removeCustomData?.organizationId).toBe( - addedCustomData?.organizationId + addedCustomData?.organizationId, ); expect(removeCustomData?.userId).toBe(addedCustomData?.userId); expect(removeCustomData?.values).toStrictEqual(addedCustomData?.values); @@ -83,7 +83,7 @@ describe("removeUserCustomData mutation", () => { }, { userId: testUser?._id, - } + }, ); const args = { @@ -98,7 +98,7 @@ describe("removeUserCustomData mutation", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -118,7 +118,7 @@ describe("removeUserCustomData mutation", () => { }, { userId: testUser?._id, - } + }, ); const args = { @@ -133,7 +133,7 @@ describe("removeUserCustomData mutation", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -153,7 +153,7 @@ describe("removeUserCustomData mutation", () => { }, { userId: testUser?._id, - } + }, ); const args = { @@ -167,10 +167,10 @@ describe("removeUserCustomData mutation", () => { await removeUserCustomData?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - ORGANIZATION_NOT_FOUND_ERROR.MESSAGE + ORGANIZATION_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -190,7 +190,7 @@ describe("removeUserCustomData mutation", () => { }, { userId: testUser?._id, - } + }, ); const args = { @@ -204,10 +204,10 @@ describe("removeUserCustomData mutation", () => { await removeUserCustomData?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - ORGANIZATION_NOT_FOUND_ERROR.MESSAGE + ORGANIZATION_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -229,7 +229,7 @@ describe("removeUserCustomData mutation", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(CUSTOM_DATA_NOT_FOUND.MESSAGE); expect(error.message).toEqual( - `Translated ${CUSTOM_DATA_NOT_FOUND.MESSAGE}` + `Translated ${CUSTOM_DATA_NOT_FOUND.MESSAGE}`, ); } }); diff --git a/tests/resolvers/Mutation/removeUserFamily.spec.ts b/tests/resolvers/Mutation/removeUserFamily.spec.ts new file mode 100644 index 0000000000..6af1c377ce --- /dev/null +++ b/tests/resolvers/Mutation/removeUserFamily.spec.ts @@ -0,0 +1,139 @@ +import "dotenv/config"; +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import { UserFamily } from "../../../src/models/userFamily"; +import type { MutationRemoveUserFamilyArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; + +import { + USER_FAMILY_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, +} from "../../../src/constants"; +import { + beforeAll, + afterAll, + describe, + it, + expect, + afterEach, + vi, +} from "vitest"; +import { createTestUserFunc } from "../../helpers/userAndUserFamily"; +import type { + TestUserFamilyType, + TestUserType, +} from "../../helpers/userAndUserFamily"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testUsers: TestUserType[]; +let testUserFamily: TestUserFamilyType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const tempUser1 = await createTestUserFunc(); + const tempUser2 = await createTestUserFunc(); + testUsers = [tempUser1, tempUser2]; + + testUserFamily = await UserFamily.create({ + title: "Family", + admins: [tempUser1, tempUser2], + creator: tempUser1, + users: [tempUser1, tempUser2], + }); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> removeUserFamily", () => { + afterEach(() => { + vi.resetAllMocks(); + vi.doMock("../../src/constants"); + vi.resetModules(); + }); + + it(`throws NotFoundError if no user exists with _id === context.userId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + + try { + const args: MutationRemoveUserFamilyArgs = { + familyId: testUserFamily?._id, + }; + + const context = { + userId: Types.ObjectId().toString(), + }; + + const { removeUserFamily: removeUserFamilyResolver } = await import( + "../../../src/resolvers/Mutation/removeUserFamily" + ); + + await removeUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws NotFoundError if no user family exists with _id === args.familyId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + + try { + const args: MutationRemoveUserFamilyArgs = { + familyId: testUserFamily?._id, + }; + + const context = { + userId: testUsers[1]?._id, + }; + + const { removeUserFamily: removeUserFamilyResolver } = await import( + "../../../src/resolvers/Mutation/removeUserFamily" + ); + + await removeUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_FAMILY_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_FAMILY_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws User is not SUPERADMIN error if current user is with _id === context.userId is not a SUPERADMIN`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => message); + + try { + const args: MutationRemoveUserFamilyArgs = { + familyId: testUserFamily?.id, + }; + + const context = { + userId: testUsers[0]?.id, + }; + + const { removeUserFamily: removeUserFamilyResolver } = await import( + "../../../src/resolvers/Mutation/removeUserFamily" + ); + + await removeUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_FAMILY_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `${USER_FAMILY_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); +}); diff --git a/tests/resolvers/Mutation/removeUserFromGroupChat.spec.ts b/tests/resolvers/Mutation/removeUserFromGroupChat.spec.ts index e127f4ee19..e30b9e32f0 100644 --- a/tests/resolvers/Mutation/removeUserFromGroupChat.spec.ts +++ b/tests/resolvers/Mutation/removeUserFromGroupChat.spec.ts @@ -78,7 +78,7 @@ describe("resolvers -> Mutation -> removeUserFromGroupChat", () => { $set: { organization: testOrganization?._id, }, - } + }, ); const args: MutationRemoveUserFromGroupChatArgs = { @@ -115,7 +115,7 @@ describe("resolvers -> Mutation -> removeUserFromGroupChat", () => { $push: { admins: testUser?._id, }, - } + }, ); await User.updateOne( @@ -126,7 +126,7 @@ describe("resolvers -> Mutation -> removeUserFromGroupChat", () => { $push: { adminFor: testOrganization?._id, }, - } + }, ); const args: MutationRemoveUserFromGroupChatArgs = { @@ -152,7 +152,7 @@ describe("resolvers -> Mutation -> removeUserFromGroupChat", () => { with _id === args.ChatId and returns the updated groupChat`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); await GroupChat.updateOne( @@ -163,7 +163,7 @@ describe("resolvers -> Mutation -> removeUserFromGroupChat", () => { $push: { users: testUser?._id, }, - } + }, ); const args: MutationRemoveUserFromGroupChatArgs = { @@ -183,7 +183,7 @@ describe("resolvers -> Mutation -> removeUserFromGroupChat", () => { }).lean(); expect(removeUserFromGroupChatPayload).toEqual( - testRemoveUserFromGroupChatPayload + testRemoveUserFromGroupChatPayload, ); }); diff --git a/tests/resolvers/Mutation/removeUserFromUserFamily.spec.ts b/tests/resolvers/Mutation/removeUserFromUserFamily.spec.ts new file mode 100644 index 0000000000..20a1f367dd --- /dev/null +++ b/tests/resolvers/Mutation/removeUserFromUserFamily.spec.ts @@ -0,0 +1,289 @@ +import "dotenv/config"; +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import { UserFamily } from "../../../src/models/userFamily"; +import type { MutationRemoveUserFromUserFamilyArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; + +import { + ADMIN_REMOVING_CREATOR, + USER_FAMILY_NOT_FOUND_ERROR, + USER_NOT_FOUND_ERROR, + USER_REMOVING_SELF, +} from "../../../src/constants"; +import { beforeAll, afterAll, describe, it, expect, vi } from "vitest"; +import { createTestUserFunc } from "../../helpers/userAndUserFamily"; +import type { + TestUserFamilyType, + TestUserType, +} from "../../helpers/userAndUserFamily"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testUsers: TestUserType[]; +let testUserFamily: TestUserFamilyType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const tempUser1 = await createTestUserFunc(); + const tempUser2 = await createTestUserFunc(); + const tempUser3 = await createTestUserFunc(); + const tempUser4 = await createTestUserFunc(); + const tempUser5 = await createTestUserFunc(); + testUsers = [tempUser1, tempUser2, tempUser3, tempUser4, tempUser5]; + testUserFamily = await UserFamily.create({ + title: "title", + users: [ + testUsers[0]?._id, + testUsers[1]?._id, + testUsers[2]?._id, + testUsers[4]?._id, + ], + admins: [testUsers[2]?._id, testUsers[1]?._id], + creator: testUsers[2]?._id, + }); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolver -> Mutation -> removerUserFromUserFamily", () => { + it("should throw user not found error when user with _id === args.userId does not exist", async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + try { + const args: MutationRemoveUserFromUserFamilyArgs = { + familyId: testUserFamily?.id, + userId: testUsers[4]?._id, + }; + + const context = { + userId: testUsers[1]?.id, + }; + + const { removeUserFromUserFamily: removeUserFromUserFamilyResolver } = + await import( + "../../../src/resolvers/Mutation/removeUserFromUserFamily" + ); + + await removeUserFromUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws NotFoundError if no user family exists with _id === args.familyId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => message); + try { + const args: MutationRemoveUserFromUserFamilyArgs = { + familyId: Types.ObjectId().toString(), + userId: testUsers[4]?._id, + }; + + const context = { + userId: testUsers[0]?._id, + }; + + const { removeUserFromUserFamily: removeUserFromUserFamilyResolver } = + await import( + "../../../src/resolvers/Mutation/removeUserFromUserFamily" + ); + + await removeUserFromUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toBeCalledWith(USER_FAMILY_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `${USER_FAMILY_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws UnauthorizedError if users field of user family with _id === args.familyId + does not contain user with _id === args.userId`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => message); + try { + const args: MutationRemoveUserFromUserFamilyArgs = { + familyId: testUserFamily?.id, + userId: testUsers[3]?._id, + }; + + const context = { + userId: testUsers[2]?.id, + }; + + const { removeUserFromUserFamily: removeUserFromUserFamilyResolver } = + await import( + "../../../src/resolvers/Mutation/removeUserFromUserFamily" + ); + + await removeUserFromUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it("should throw member not found error when user with _id === args.data.userId does not exist in the user Family", async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + try { + const args: MutationRemoveUserFromUserFamilyArgs = { + familyId: testUserFamily?.id, + userId: testUsers[3]?._id, + }; + + const context = { + userId: testUsers[2]?.id, + }; + + const { removeUserFromUserFamily: removeUserFromUserFamilyResolver } = + await import( + "../../../src/resolvers/Mutation/removeUserFromUserFamily" + ); + + await removeUserFromUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it("should throw admin cannot remove self error when user with _id === args.data.userId === context.userId", async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + try { + const args: MutationRemoveUserFromUserFamilyArgs = { + familyId: testUserFamily?.id, + userId: testUsers[2]?._id, + }; + + const context = { + userId: testUsers[2]?.id, + }; + + const { removeUserFromUserFamily: removeUserFromUserFamilyResolver } = + await import( + "../../../src/resolvers/Mutation/removeUserFromUserFamily" + ); + + await removeUserFromUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_REMOVING_SELF.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_REMOVING_SELF.MESSAGE}`, + ); + } + }); + + it("should throw admin cannot remove another admin error when user with _id === args.data.userId is also an admin in the user Family", async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + try { + const args: MutationRemoveUserFromUserFamilyArgs = { + familyId: testUserFamily?.id, + userId: testUsers[1]?._id, + }; + + const context = { + userId: testUsers[2]?.id, + }; + + const { removeUserFromUserFamily: removeUserFromUserFamilyResolver } = + await import( + "../../../src/resolvers/Mutation/removeUserFromUserFamily" + ); + + await removeUserFromUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it("should throw admin cannot remove creator error when user with _id === args.data.userId is the user Family creator in the user Family", async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + try { + const args: MutationRemoveUserFromUserFamilyArgs = { + familyId: testUserFamily?.id, + userId: testUsers[2]?._id, + }; + + const context = { + userId: testUsers[1]?.id, + }; + + const { removeUserFromUserFamily: removeUserFromUserFamilyResolver } = + await import( + "../../../src/resolvers/Mutation/removeUserFromUserFamily" + ); + + await removeUserFromUserFamilyResolver?.({}, args, context); + } catch (error) { + expect(spy).toHaveBeenCalledWith(ADMIN_REMOVING_CREATOR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${ADMIN_REMOVING_CREATOR.MESSAGE}`, + ); + } + }); + + it("remove that user with _id === args.data.userId from that user Family", async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + try { + const args: MutationRemoveUserFromUserFamilyArgs = { + familyId: testUserFamily?.id, + userId: testUsers[4]?._id, + }; + + const context = { + userId: testUsers[2]?.id, + }; + + const { removeUserFromUserFamily: removeUserFromUserFamilyResolver } = + await import( + "../../../src/resolvers/Mutation/removeUserFromUserFamily" + ); + + const updatedUserFamily = await removeUserFromUserFamilyResolver?.( + {}, + args, + context, + ); + + expect(updatedUserFamily?.users).not.toContain(testUsers[4]?._id); + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); +}); diff --git a/tests/resolvers/Mutation/removeUserImage.spec.ts b/tests/resolvers/Mutation/removeUserImage.spec.ts index dc31bc992d..1622a80048 100644 --- a/tests/resolvers/Mutation/removeUserImage.spec.ts +++ b/tests/resolvers/Mutation/removeUserImage.spec.ts @@ -58,7 +58,7 @@ describe("resolvers -> Mutation -> removeUserImage", () => { } catch (error: any) { expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -83,7 +83,7 @@ describe("resolvers -> Mutation -> removeUserImage", () => { } catch (error: any) { expect(spy).toBeCalledWith(USER_PROFILE_IMAGE_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_PROFILE_IMAGE_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_PROFILE_IMAGE_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -106,7 +106,7 @@ describe("resolvers -> Mutation -> removeUserImage", () => { $set: { image: testImage, }, - } + }, ); const context = { @@ -120,7 +120,7 @@ describe("resolvers -> Mutation -> removeUserImage", () => { const removeUserImagePayload = await removeUserImageResolver?.( {}, {}, - context + context, ); const updatedTestUser = await User.findOne({ diff --git a/tests/resolvers/Mutation/removeUserTag.spec.ts b/tests/resolvers/Mutation/removeUserTag.spec.ts index 1fa23c86ff..7810470383 100644 --- a/tests/resolvers/Mutation/removeUserTag.spec.ts +++ b/tests/resolvers/Mutation/removeUserTag.spec.ts @@ -91,7 +91,7 @@ describe("resolvers -> Mutation -> removeUserTag", () => { } catch (error: any) { expect(spy).toBeCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -145,7 +145,7 @@ describe("resolvers -> Mutation -> removeUserTag", () => { } catch (error: any) { expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -153,7 +153,7 @@ describe("resolvers -> Mutation -> removeUserTag", () => { it(`deletes the tag (along with all its child tags) from the OrganizationTagUser model and its corresponding entries from TagUser model`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const args: MutationRemoveUserTagArgs = { diff --git a/tests/resolvers/Mutation/sendMembershipRequest.spec.ts b/tests/resolvers/Mutation/sendMembershipRequest.spec.ts index 9c109ff1ea..30493c8e36 100644 --- a/tests/resolvers/Mutation/sendMembershipRequest.spec.ts +++ b/tests/resolvers/Mutation/sendMembershipRequest.spec.ts @@ -98,7 +98,7 @@ describe("resolvers -> Mutation -> sendMembershipRequest", () => { $set: { membershipRequests: [], }, - } + }, ); await User.updateOne( @@ -109,7 +109,7 @@ describe("resolvers -> Mutation -> sendMembershipRequest", () => { $set: { membershipRequests: [], }, - } + }, ); const args: MutationSendMembershipRequestArgs = { @@ -123,14 +123,14 @@ describe("resolvers -> Mutation -> sendMembershipRequest", () => { const sendMembershipRequestPayload = await sendMembershipRequestResolver?.( {}, args, - context + context, ); expect(sendMembershipRequestPayload).toEqual( expect.objectContaining({ user: testUser?._id, organization: testOrganization?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/sendMessageToDirectChat.spec.ts b/tests/resolvers/Mutation/sendMessageToDirectChat.spec.ts index fa68e9ddd2..31840853e4 100644 --- a/tests/resolvers/Mutation/sendMessageToDirectChat.spec.ts +++ b/tests/resolvers/Mutation/sendMessageToDirectChat.spec.ts @@ -58,7 +58,7 @@ beforeAll(async () => { adminFor: [testOrganization._id], joinedOrganizations: [testOrganization._id], }, - } + }, ); testDirectChat = await DirectChat.create({ @@ -136,7 +136,7 @@ describe("resolvers -> Mutation -> sendMessageToDirectChat", () => { $push: { users: testUsers[0]?._id, }, - } + }, ); const args: MutationSendMessageToDirectChatArgs = { @@ -149,7 +149,7 @@ describe("resolvers -> Mutation -> sendMessageToDirectChat", () => { _action: "MESSAGE_SENT_TO_DIRECT_CHAT", _payload: { messageSentToDirectChat: InterfaceDirectChatMessage; - } + }, ): { _action: string; _payload: { messageSentToDirectChat: InterfaceDirectChatMessage }; @@ -172,7 +172,7 @@ describe("resolvers -> Mutation -> sendMessageToDirectChat", () => { sender: testUsers[0]?._id, receiver: testUsers[1]?._id, messageContent: "messageContent", - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/sendMessageToGroupChat.spec.ts b/tests/resolvers/Mutation/sendMessageToGroupChat.spec.ts index 79284781c5..77d8ead3ca 100644 --- a/tests/resolvers/Mutation/sendMessageToGroupChat.spec.ts +++ b/tests/resolvers/Mutation/sendMessageToGroupChat.spec.ts @@ -126,7 +126,7 @@ describe("resolvers -> Mutation -> sendMessageToGroupChat", () => { $push: { users: testUser?._id, }, - } + }, ); const args: MutationSendMessageToGroupChatArgs = { @@ -139,7 +139,7 @@ describe("resolvers -> Mutation -> sendMessageToGroupChat", () => { _action: "MESSAGE_SENT_TO_GROUP_CHAT", _payload: { messageSentToGroupChat: InterfaceGroupChatMessage; - } + }, ): { _action: string; _payload: { messageSentToGroupChat: InterfaceGroupChatMessage }; @@ -161,7 +161,7 @@ describe("resolvers -> Mutation -> sendMessageToGroupChat", () => { groupChatMessageBelongsTo: testGroupChat._id, sender: testUser?._id, messageContent: "messageContent", - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/signUp.spec.ts b/tests/resolvers/Mutation/signUp.spec.ts index 68223ee345..1f78c6d25e 100644 --- a/tests/resolvers/Mutation/signUp.spec.ts +++ b/tests/resolvers/Mutation/signUp.spec.ts @@ -138,7 +138,7 @@ describe("resolvers -> Mutation -> signUp", () => { }); it(`when uploadImage is called with newFile `, async () => { vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( - async (encodedImageURL: string) => encodedImageURL + async (encodedImageURL: string) => encodedImageURL, ); const email = `email${nanoid().toLowerCase()}@gmail.com`; diff --git a/tests/resolvers/Mutation/togglePostPin.spec.ts b/tests/resolvers/Mutation/togglePostPin.spec.ts index 7b42435c29..7a8f592b7d 100644 --- a/tests/resolvers/Mutation/togglePostPin.spec.ts +++ b/tests/resolvers/Mutation/togglePostPin.spec.ts @@ -55,7 +55,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { it(`throws NotFoundError if current user with _id === context.userId does not exist`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); try { @@ -74,7 +74,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { await togglePostPinResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -82,7 +82,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { it(`throws NotFoundError if no post exists with _id === args.id`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); try { @@ -101,7 +101,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { await togglePostPinResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${POST_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${POST_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -128,7 +128,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { } catch (error: any) { expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_TO_PIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_TO_PIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_TO_PIN.MESSAGE}`, ); } }); @@ -136,7 +136,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { it(`adds a post to the pinnedPosts for an org`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const args: MutationTogglePostPinArgs = { id: testPost?._id, @@ -160,7 +160,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { }).lean(); const currentPostIsPinned = organization?.pinnedPosts.some((p) => - p.equals(args.id) + p.equals(args.id), ); expect(currentPostIsPinned).toBeTruthy(); @@ -170,7 +170,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { it(`removes a post from the pinnedPosts for an org`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const args: MutationTogglePostPinArgs = { @@ -195,7 +195,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { }).lean(); const currentPostIsPinned = organization?.pinnedPosts.some((p) => - p.equals(args.id) + p.equals(args.id), ); expect(currentPostIsPinned).toBeFalsy(); @@ -205,7 +205,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { it("throws error if title is not provided to pin post", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationTogglePostPinArgs = { @@ -229,7 +229,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { it(`throws String Length Validation error if title is greater than 256 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationTogglePostPinArgs = { @@ -249,7 +249,7 @@ describe("resolvers -> Mutation -> togglePostPin", () => { await togglePostPinResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ); } }); diff --git a/tests/resolvers/Mutation/unassignUserTag.spec.ts b/tests/resolvers/Mutation/unassignUserTag.spec.ts index 6fee16804b..7faa0f244c 100644 --- a/tests/resolvers/Mutation/unassignUserTag.spec.ts +++ b/tests/resolvers/Mutation/unassignUserTag.spec.ts @@ -72,7 +72,7 @@ describe("resolvers -> Mutation -> unassignUserTag", () => { await unassignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -102,7 +102,7 @@ describe("resolvers -> Mutation -> unassignUserTag", () => { await unassignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -164,10 +164,10 @@ describe("resolvers -> Mutation -> unassignUserTag", () => { await unassignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - `${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -197,10 +197,10 @@ describe("resolvers -> Mutation -> unassignUserTag", () => { await unassignUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_DOES_NOT_HAVE_THE_TAG.MESSAGE}` + `Translated ${USER_DOES_NOT_HAVE_THE_TAG.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - `${USER_DOES_NOT_HAVE_THE_TAG.MESSAGE}` + `${USER_DOES_NOT_HAVE_THE_TAG.MESSAGE}`, ); } }); @@ -209,7 +209,7 @@ describe("resolvers -> Mutation -> unassignUserTag", () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); const args: MutationUnassignUserTagArgs = { diff --git a/tests/resolvers/Mutation/unblockUser.spec.ts b/tests/resolvers/Mutation/unblockUser.spec.ts index 09c56a24c0..d73633f308 100644 --- a/tests/resolvers/Mutation/unblockUser.spec.ts +++ b/tests/resolvers/Mutation/unblockUser.spec.ts @@ -129,7 +129,7 @@ describe("resolvers -> Mutation -> unblockUser", () => { $push: { admins: testUser?._id, }, - } + }, ); await User.updateOne( @@ -140,7 +140,7 @@ describe("resolvers -> Mutation -> unblockUser", () => { $push: { adminFor: testOrganization?._id, }, - } + }, ); const args: MutationUnblockUserArgs = { @@ -176,7 +176,7 @@ describe("resolvers -> Mutation -> unblockUser", () => { }, { new: true, - } + }, ).lean(); if (updatedOrganization !== null) { @@ -191,7 +191,7 @@ describe("resolvers -> Mutation -> unblockUser", () => { $push: { organizationsBlockedBy: testOrganization?._id, }, - } + }, ); const args: MutationUnblockUserArgs = { diff --git a/tests/resolvers/Mutation/unlikeComment.spec.ts b/tests/resolvers/Mutation/unlikeComment.spec.ts index 9d5458026e..51d2f72b24 100644 --- a/tests/resolvers/Mutation/unlikeComment.spec.ts +++ b/tests/resolvers/Mutation/unlikeComment.spec.ts @@ -42,7 +42,7 @@ beforeAll(async () => { $inc: { commentCount: 1, }, - } + }, ); }); @@ -89,7 +89,7 @@ describe("resolvers -> Mutation -> unlikeComment", () => { const unlikeCommentPayload = await unlikeCommentResolver?.( {}, args, - context + context, ); const testUnlikeCommentPayload = await Comment.findOne({ @@ -112,7 +112,7 @@ describe("resolvers -> Mutation -> unlikeComment", () => { const unlikeCommentPayload = await unlikeCommentResolver?.( {}, args, - context + context, ); const testUnlikeCommentPayload = await Comment.findOne({ diff --git a/tests/resolvers/Mutation/unregisterForEventByUser.spec.ts b/tests/resolvers/Mutation/unregisterForEventByUser.spec.ts index 5d47dbe1a7..67c7ed76d1 100644 --- a/tests/resolvers/Mutation/unregisterForEventByUser.spec.ts +++ b/tests/resolvers/Mutation/unregisterForEventByUser.spec.ts @@ -65,7 +65,7 @@ describe("resolvers -> Mutation -> unregisterForEventByUser", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(EVENT_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -94,7 +94,7 @@ describe("resolvers -> Mutation -> unregisterForEventByUser", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_ALREADY_UNREGISTERED_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_ALREADY_UNREGISTERED_ERROR.MESSAGE}` + `Translated ${USER_ALREADY_UNREGISTERED_ERROR.MESSAGE}`, ); } }); @@ -114,7 +114,7 @@ describe("resolvers -> Mutation -> unregisterForEventByUser", () => { $push: { registeredEvents: testEvent?._id, }, - } + }, ); const args: MutationUnregisterForEventByUserArgs = { diff --git a/tests/resolvers/Mutation/updateActionItem.spec.ts b/tests/resolvers/Mutation/updateActionItem.spec.ts index db74533b50..cc307b58d1 100644 --- a/tests/resolvers/Mutation/updateActionItem.spec.ts +++ b/tests/resolvers/Mutation/updateActionItem.spec.ts @@ -42,7 +42,7 @@ beforeAll(async () => { MONGOOSE_INSTANCE = await connect(); const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); randomUser = await createTestUser(); @@ -180,14 +180,14 @@ describe("resolvers -> Mutation -> updateActionItem", () => { const updatedActionItemPayload = await updateActionItemResolver?.( {}, args, - context + context, ); expect(updatedActionItemPayload).toEqual( expect.objectContaining({ assigneeId: assignedTestUser?._id, actionItemCategoryId: testCategory?._id, - }) + }), ); }); @@ -201,7 +201,7 @@ describe("resolvers -> Mutation -> updateActionItem", () => { }, { new: true, - } + }, ); const args: MutationUpdateActionItemArgs = { @@ -218,14 +218,14 @@ describe("resolvers -> Mutation -> updateActionItem", () => { const updatedActionItemPayload = await updateActionItemResolver?.( {}, args, - context + context, ); expect(updatedActionItemPayload).toEqual( expect.objectContaining({ assigneeId: testUser?._id, actionItemCategoryId: testCategory?._id, - }) + }), ); }); @@ -239,7 +239,7 @@ describe("resolvers -> Mutation -> updateActionItem", () => { }, { new: true, - } + }, ); await User.updateOne( @@ -248,7 +248,7 @@ describe("resolvers -> Mutation -> updateActionItem", () => { }, { $push: { joinedOrganizations: testOrganization?._id }, - } + }, ); try { @@ -279,7 +279,7 @@ describe("resolvers -> Mutation -> updateActionItem", () => { }, { new: true, - } + }, ); const args: MutationUpdateActionItemArgs = { @@ -296,14 +296,14 @@ describe("resolvers -> Mutation -> updateActionItem", () => { const updatedActionItemPayload = await updateActionItemResolver?.( {}, args, - context + context, ); expect(updatedActionItemPayload).toEqual( expect.objectContaining({ actionItemCategoryId: testCategory?._id, assigneeId: testUser?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/updateActionItemCategory.spec.ts b/tests/resolvers/Mutation/updateActionItemCategory.spec.ts index e2718e69cc..dd90f40c1b 100644 --- a/tests/resolvers/Mutation/updateActionItemCategory.spec.ts +++ b/tests/resolvers/Mutation/updateActionItemCategory.spec.ts @@ -30,7 +30,7 @@ beforeAll(async () => { MONGOOSE_INSTANCE = await connect(); const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); randomUser = await createTestUser(); @@ -80,7 +80,7 @@ describe("resolvers -> Mutation -> updateActionItemCategoryResolver", () => { await updateActionItemCategoryResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.MESSAGE + ACTION_ITEM_CATEGORY_NOT_FOUND_ERROR.MESSAGE, ); } }); @@ -121,7 +121,7 @@ describe("resolvers -> Mutation -> updateActionItemCategoryResolver", () => { const updatedCategory = await updateActionItemCategoryResolver?.( {}, args, - context + context, ); expect(updatedCategory).toEqual( @@ -129,7 +129,7 @@ describe("resolvers -> Mutation -> updateActionItemCategoryResolver", () => { organizationId: testOrganization?._id, name: "updatedDefault", isDisabled: true, - }) + }), ); }); @@ -143,7 +143,7 @@ describe("resolvers -> Mutation -> updateActionItemCategoryResolver", () => { }, { new: true, - } + }, ); const args: MutationUpdateActionItemCategoryArgs = { @@ -161,7 +161,7 @@ describe("resolvers -> Mutation -> updateActionItemCategoryResolver", () => { const updatedCategory = await updateActionItemCategoryResolver?.( {}, args, - context + context, ); expect(updatedCategory).toEqual( @@ -169,7 +169,7 @@ describe("resolvers -> Mutation -> updateActionItemCategoryResolver", () => { organizationId: testOrganization?._id, name: "updatedDefault", isDisabled: false, - }) + }), ); }); }); diff --git a/tests/resolvers/Mutation/updateAdvertisement.spec.ts b/tests/resolvers/Mutation/updateAdvertisement.spec.ts index a0a2f6948f..327a15ee63 100644 --- a/tests/resolvers/Mutation/updateAdvertisement.spec.ts +++ b/tests/resolvers/Mutation/updateAdvertisement.spec.ts @@ -62,7 +62,7 @@ describe("resolvers -> Mutation -> updateAdvertisement", () => { await updateAdvertisementResolverNotFoundError?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -91,7 +91,7 @@ describe("resolvers -> Mutation -> updateAdvertisement", () => { await updateAdvertisementResolverNotFoundError?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); } @@ -122,10 +122,10 @@ describe("resolvers -> Mutation -> updateAdvertisement", () => { await updateAdvertisementResolverNotFoundError?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE + ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ADVERTISEMENT_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -156,7 +156,7 @@ describe("resolvers -> Mutation -> updateAdvertisement", () => { const updateAdvertisementPayload = await updateAdvertisementResolver?.( {}, args, - context + context, ); const { advertisement } = updateAdvertisementPayload || {}; @@ -214,7 +214,7 @@ describe("resolvers -> Mutation -> updateAdvertisement", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(END_DATE_VALIDATION_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${END_DATE_VALIDATION_ERROR.MESSAGE}` + `Translated ${END_DATE_VALIDATION_ERROR.MESSAGE}`, ); } }); @@ -242,7 +242,7 @@ describe("resolvers -> Mutation -> updateAdvertisement", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(START_DATE_VALIDATION_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${START_DATE_VALIDATION_ERROR.MESSAGE}` + `Translated ${START_DATE_VALIDATION_ERROR.MESSAGE}`, ); } }); @@ -270,7 +270,7 @@ describe("resolvers -> Mutation -> updateAdvertisement", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(INPUT_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${INPUT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${INPUT_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -298,7 +298,7 @@ describe("resolvers -> Mutation -> updateAdvertisement", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(FIELD_NON_EMPTY_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${FIELD_NON_EMPTY_ERROR.MESSAGE}` + `Translated ${FIELD_NON_EMPTY_ERROR.MESSAGE}`, ); } }); diff --git a/tests/resolvers/Mutation/updateAgendaCategory.spec.ts b/tests/resolvers/Mutation/updateAgendaCategory.spec.ts new file mode 100644 index 0000000000..641ee0e9ee --- /dev/null +++ b/tests/resolvers/Mutation/updateAgendaCategory.spec.ts @@ -0,0 +1,220 @@ +import "dotenv/config"; +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import type { MutationUpdateAgendaCategoryArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; +import { + USER_NOT_FOUND_ERROR, + AGENDA_CATEGORY_NOT_FOUND_ERROR, + USER_NOT_AUTHORIZED_ERROR, +} from "../../../src/constants"; +import { beforeAll, afterAll, describe, it, expect, vi } from "vitest"; +import { updateAgendaCategory as updateAgendaCategoryResolver } from "../../../src/resolvers/Mutation/updateAgendaCategory"; +import { AgendaCategoryModel, Organization, User } from "../../../src/models"; +import type { TestUserType } from "../../helpers/user"; +import { createTestUser } from "../../helpers/user"; +import type { TestOrganizationType } from "../../helpers/userAndOrg"; +import type { TestAgendaCategoryType } from "../../helpers/agendaCategory"; + +let testAgendaCategory: TestAgendaCategoryType; +let randomUser: TestUserType; +let testUser: TestUserType; +let MONGOOSE_INSTANCE: typeof mongoose; +let testOrganization: TestOrganizationType; +let testAdminUser: TestUserType; +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const { requestContext } = await import("../../../src/libraries"); + vi.spyOn(requestContext, "translate").mockImplementation( + (message) => message, + ); + + randomUser = await createTestUser(); + testUser = await createTestUser(); + testAdminUser = await createTestUser(); + testOrganization = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testUser?._id, + admins: [testAdminUser?._id], + members: [testUser?._id, testAdminUser?._id], + creatorId: testUser?._id, + }); + + await User.updateOne( + { + _id: testUser?._id, + }, + { + $push: { + adminFor: testOrganization?._id, + }, + }, + ); + testAgendaCategory = await AgendaCategoryModel.create({ + name: "Sample Agenda Category", + organization: testOrganization?._id, + createdBy: testAdminUser?._id, + createdAt: new Date(), + }); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> updateAgendaCategory", () => { + it(`throws NotFoundError if no user exists with _id === context.userId`, async () => { + try { + const args: MutationUpdateAgendaCategoryArgs = { + id: Types.ObjectId().toString(), + input: { + name: "Updated Name", + description: "Updated Description", + }, + }; + + const context = { + userId: Types.ObjectId().toString(), + }; + + await updateAgendaCategoryResolver?.({}, args, context); + } catch (error: unknown) { + expect((error as Error).message).toEqual(USER_NOT_FOUND_ERROR.MESSAGE); + } + }); + + it(`throws NotFoundError if no agenda category exists with _id === args.id`, async () => { + try { + const args: MutationUpdateAgendaCategoryArgs = { + id: Types.ObjectId().toString(), + input: { + name: "Updated Name", + description: "Updated Description", + }, + }; + + const context = { + userId: testUser?._id, + }; + + await updateAgendaCategoryResolver?.({}, args, context); + } catch (error: unknown) { + expect((error as Error).message).toEqual( + AGENDA_CATEGORY_NOT_FOUND_ERROR.MESSAGE, + ); + } + }); + + it(`throws UnauthorizedError if the user is not the creator of the agenda category`, async () => { + try { + const args: MutationUpdateAgendaCategoryArgs = { + id: testAgendaCategory?._id, + input: { + name: "Updated Name", + description: "Updated Description", + }, + }; + + const context = { + userId: randomUser?._id, + }; + + await updateAgendaCategoryResolver?.({}, args, context); + } catch (error: unknown) { + expect((error as Error).message).toEqual( + USER_NOT_AUTHORIZED_ERROR.MESSAGE, + ); + } + }); + + it(`updates the agenda category and returns it for the creator`, async () => { + const args: MutationUpdateAgendaCategoryArgs = { + id: testAgendaCategory?._id, + input: { + name: "Updated Name", + description: "Updated Description", + }, + }; + + const context = { + userId: testUser?._id, + }; + + const updatedAgendaCategoryPayload = await updateAgendaCategoryResolver?.( + {}, + args, + context, + ); + + expect(updatedAgendaCategoryPayload).toEqual( + expect.objectContaining({ + name: "Updated Name", + description: "Updated Description", + }), + ); + }); + // it(`updates the agenda category and returns it for the admin`, async () => { + // const args: MutationUpdateAgendaCategoryArgs = { + // id: testAgendaCategory?._id, + // input: { + // name: "Updated Name", + // description: "Updated Description", + // }, + // }; + + // const context = { + // userId: testAdminUser?._id, + // }; + + // const updatedAgendaCategoryPayload = await updateAgendaCategoryResolver?.( + // {}, + // args, + // context + // ); + + // expect(updatedAgendaCategoryPayload).toEqual( + // expect.objectContaining({ + // name: "Updated Name", + // description: "Updated Description", + // }) + // ); + // }); + it(`updates the agenda category and returns it as superadmin`, async () => { + const superAdminTestUser = await User.findOneAndUpdate( + { + _id: randomUser?._id, + }, + { + userType: "SUPERADMIN", + }, + { + new: true, + }, + ); + const context = { + userId: superAdminTestUser?._id, + }; + const args: MutationUpdateAgendaCategoryArgs = { + id: testAgendaCategory?._id, + input: { + name: "Updated Name", + description: "Updated Description", + }, + }; + + const updatedAgendaCategoryPayload = await updateAgendaCategoryResolver?.( + {}, + args, + context, + ); + + expect(updatedAgendaCategoryPayload).toEqual( + expect.objectContaining({ + name: "Updated Name", + description: "Updated Description", + }), + ); + }); +}); diff --git a/tests/resolvers/Mutation/updateEvent.spec.ts b/tests/resolvers/Mutation/updateEvent.spec.ts index 1575968a10..bcd86796a2 100644 --- a/tests/resolvers/Mutation/updateEvent.spec.ts +++ b/tests/resolvers/Mutation/updateEvent.spec.ts @@ -55,7 +55,7 @@ beforeAll(async () => { createdEvents: [testEvent._id], registeredEvents: [testEvent._id], }, - } + }, ); }); @@ -92,7 +92,7 @@ describe("resolvers -> Mutation -> updateEvent", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -120,7 +120,7 @@ describe("resolvers -> Mutation -> updateEvent", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(EVENT_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -149,7 +149,7 @@ describe("resolvers -> Mutation -> updateEvent", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -166,7 +166,7 @@ describe("resolvers -> Mutation -> updateEvent", () => { }, { new: true, - } + }, ).lean(); if (updatedEvent !== null) { @@ -181,7 +181,7 @@ describe("resolvers -> Mutation -> updateEvent", () => { $push: { eventAdmin: testEvent?._id, }, - } + }, ); const args: MutationUpdateEventArgs = { @@ -226,7 +226,7 @@ describe("Check for validation conditions", () => { it(`throws String Length Validation error if title is greater than 256 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateEventArgs = { @@ -261,14 +261,14 @@ describe("Check for validation conditions", () => { await updateEventResolverError?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ); } }); it(`throws String Length Validation error if description is greater than 500 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateEventArgs = { @@ -303,14 +303,14 @@ describe("Check for validation conditions", () => { await updateEventResolverError?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in description`, ); } }); it(`throws String Length Validation error if location is greater than 50 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateEventArgs = { @@ -344,14 +344,14 @@ describe("Check for validation conditions", () => { await updateEventResolverError?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 50 characters in location` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 50 characters in location`, ); } }); it(`throws Date Validation error if start date is greater than end date`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateEventArgs = { diff --git a/tests/resolvers/Mutation/updateEventVolunteer.spec.ts b/tests/resolvers/Mutation/updateEventVolunteer.spec.ts new file mode 100644 index 0000000000..08728f709d --- /dev/null +++ b/tests/resolvers/Mutation/updateEventVolunteer.spec.ts @@ -0,0 +1,200 @@ +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import type { MutationUpdateEventVolunteerArgs } from "../../../src/types/generatedGraphQLTypes"; +import { connect, disconnect } from "../../helpers/db"; +import { + USER_NOT_FOUND_ERROR, + EventVolunteerResponse, + EVENT_VOLUNTEER_NOT_FOUND_ERROR, + EVENT_VOLUNTEER_INVITE_USER_MISTMATCH, +} from "../../../src/constants"; +import { + beforeAll, + afterAll, + describe, + it, + expect, + vi, + afterEach, +} from "vitest"; +import type { + TestEventType, + TestEventVolunteerType, +} from "../../helpers/events"; +import { createTestEventAndVolunteer } from "../../helpers/events"; +import { createTestUser } from "../../helpers/user"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testEvent: TestEventType; +let testEventVolunteer: TestEventVolunteerType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const temp = await createTestEventAndVolunteer(); + testEvent = temp[2]; + testEventVolunteer = temp[3]; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> updateEventVolunteer", () => { + afterEach(() => { + vi.doUnmock("../../../src/constants"); + vi.resetModules(); + }); + it(`throws NotFoundError if no user exists with _id === context.userId `, async () => { + const { requestContext } = await import("../../../src/libraries"); + + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => `Translated ${message}`); + + try { + const args: MutationUpdateEventVolunteerArgs = { + id: testEventVolunteer?._id, + data: { + response: EventVolunteerResponse.YES, + }, + }; + + const context = { userId: Types.ObjectId().toString() }; + + const { updateEventVolunteer: updateEventVolunteerResolver } = + await import("../../../src/resolvers/Mutation/updateEventVolunteer"); + + await updateEventVolunteerResolver?.({}, args, context); + } catch (error: unknown) { + expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws NotFoundError if no event volunteer exists with _id === args.id`, async () => { + const { requestContext } = await import("../../../src/libraries"); + + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => `Translated ${message}`); + + try { + const args: MutationUpdateEventVolunteerArgs = { + id: Types.ObjectId().toString(), + data: { + response: EventVolunteerResponse.YES, + }, + }; + + const context = { userId: testEventVolunteer?.userId }; + + const { updateEventVolunteer: updateEventVolunteerResolver } = + await import("../../../src/resolvers/Mutation/updateEventVolunteer"); + + await updateEventVolunteerResolver?.({}, args, context); + } catch (error: unknown) { + expect(spy).toHaveBeenLastCalledWith( + EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE, + ); + expect((error as Error).message).toEqual( + `Translated ${EVENT_VOLUNTEER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`throws ConflictError if userId of volunteer is not equal to context.userId `, async () => { + const { requestContext } = await import("../../../src/libraries"); + + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => `Translated ${message}`); + + try { + const args: MutationUpdateEventVolunteerArgs = { + id: testEventVolunteer?._id, + data: { + response: EventVolunteerResponse.YES, + }, + }; + + const testUser2 = await createTestUser(); + const context = { userId: testUser2?._id }; + const { updateEventVolunteer: updateEventVolunteerResolver } = + await import("../../../src/resolvers/Mutation/updateEventVolunteer"); + + await updateEventVolunteerResolver?.({}, args, context); + } catch (error: unknown) { + expect(spy).toHaveBeenLastCalledWith( + EVENT_VOLUNTEER_INVITE_USER_MISTMATCH.MESSAGE, + ); + expect((error as Error).message).toEqual( + `Translated ${EVENT_VOLUNTEER_INVITE_USER_MISTMATCH.MESSAGE}`, + ); + } + }); + + it(`updates the Event Volunteer with _id === args.id and returns it`, async () => { + const args: MutationUpdateEventVolunteerArgs = { + id: testEventVolunteer?._id, + data: { + isAssigned: true, + response: EventVolunteerResponse.YES, + isInvited: true, + eventId: testEvent?._id, + }, + }; + + const context = { userId: testEventVolunteer?.userId }; + + const { updateEventVolunteer: updateEventVolunteerResolver } = await import( + "../../../src/resolvers/Mutation/updateEventVolunteer" + ); + + const updatedEventVolunteer = await updateEventVolunteerResolver?.( + {}, + args, + context, + ); + + expect(updatedEventVolunteer).toEqual( + expect.objectContaining({ + isAssigned: true, + response: EventVolunteerResponse.YES, + eventId: testEvent?._id, + isInvited: true, + }), + ); + }); + + it(`updates the Event Volunteer with _id === args.id, even if args.data is empty object`, async () => { + const t = await createTestEventAndVolunteer(); + testEventVolunteer = t[3]; + const args: MutationUpdateEventVolunteerArgs = { + id: testEventVolunteer?._id, + data: {}, + }; + + const context = { userId: testEventVolunteer?.userId }; + + const { updateEventVolunteer: updateEventVolunteerResolver } = await import( + "../../../src/resolvers/Mutation/updateEventVolunteer" + ); + + const updatedEventVolunteer = await updateEventVolunteerResolver?.( + {}, + args, + context, + ); + + expect(updatedEventVolunteer).toEqual( + expect.objectContaining({ + isAssigned: testEventVolunteer?.isAssigned, + response: testEventVolunteer?.response, + eventId: testEventVolunteer?.eventId, + isInvited: testEventVolunteer?.isInvited, + }), + ); + }); +}); diff --git a/tests/resolvers/Mutation/updateLanguage.spec.ts b/tests/resolvers/Mutation/updateLanguage.spec.ts index a781c88eee..1bc6b5b25a 100644 --- a/tests/resolvers/Mutation/updateLanguage.spec.ts +++ b/tests/resolvers/Mutation/updateLanguage.spec.ts @@ -51,7 +51,7 @@ describe("resolvers -> Mutation -> updateLanguage", () => { const updateLanguagePayload = await updateLanguageResolver?.( {}, args, - context + context, ); const testUpdateLanguagePayload = await User.findOne({ diff --git a/tests/resolvers/Mutation/updateOrganization.spec.ts b/tests/resolvers/Mutation/updateOrganization.spec.ts index c81b3260ed..dd1e08bcf6 100644 --- a/tests/resolvers/Mutation/updateOrganization.spec.ts +++ b/tests/resolvers/Mutation/updateOrganization.spec.ts @@ -80,7 +80,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(ORGANIZATION_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -110,7 +110,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -124,7 +124,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { $set: { admins: [testUser?._id], }, - } + }, ); await User.updateOne( @@ -135,7 +135,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { $set: { adminFor: [testOrganization?._id], }, - } + }, ); const args: MutationUpdateOrganizationArgs = { @@ -159,7 +159,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { const updateOrganizationPayload = await updateOrganizationResolver?.( {}, args, - context + context, ); const testUpdateOrganizationPayload = await Organization.findOne({ @@ -178,7 +178,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { $set: { admins: [testUser?._id], }, - } + }, ); await User.updateOne( @@ -189,7 +189,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { $set: { adminFor: [testOrganization?._id], }, - } + }, ); const args: MutationUpdateOrganizationArgs = { @@ -205,7 +205,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { }; vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( - async (encodedImageURL: string) => encodedImageURL + async (encodedImageURL: string) => encodedImageURL, ); const context = { @@ -215,7 +215,7 @@ describe("resolvers -> Mutation -> updateOrganization", () => { const updateOrganizationPayload = await updateOrganizationResolver?.( {}, args, - context + context, ); const testUpdateOrganizationPayload = await Organization.findOne({ diff --git a/tests/resolvers/Mutation/updatePluginStatus.spec.ts b/tests/resolvers/Mutation/updatePluginStatus.spec.ts index a530a1690c..3a09fdd0fb 100644 --- a/tests/resolvers/Mutation/updatePluginStatus.spec.ts +++ b/tests/resolvers/Mutation/updatePluginStatus.spec.ts @@ -58,7 +58,7 @@ describe("resolvers -> Mutation -> updatePluginStatus", () => { orgId: Types.ObjectId().toString(), }; - const context = async () => { + const context = async (): Promise => { pubsub; }; @@ -92,7 +92,7 @@ describe("resolvers -> Mutation -> updatePluginStatus", () => { const updatePluginStatusPayload = await updatePluginStatus?.( {}, args, - context + context, ); const testUpdatePluginStatusPayload = await Plugin.findOne({ @@ -121,7 +121,7 @@ describe("resolvers -> Mutation -> updatePluginStatus", () => { const updatePluginStatusPayload = await updatePluginStatus?.( {}, args, - context + context, ); const testUpdatePluginStatusPayload = await Plugin.findOne({ diff --git a/tests/resolvers/Mutation/updatePost.spec.ts b/tests/resolvers/Mutation/updatePost.spec.ts index 828f1d1ad8..11307fa19a 100644 --- a/tests/resolvers/Mutation/updatePost.spec.ts +++ b/tests/resolvers/Mutation/updatePost.spec.ts @@ -32,7 +32,7 @@ beforeEach(async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); }); afterEach(async () => { @@ -69,7 +69,7 @@ describe("resolvers -> Mutation -> updatePost", () => { await Post.updateOne( { _id: testPost?._id }, - { $set: { creatorId: Types.ObjectId().toString() } } + { $set: { creatorId: Types.ObjectId().toString() } }, ); await updatePostResolver?.({}, args, context); @@ -147,7 +147,7 @@ describe("resolvers -> Mutation -> updatePost", () => { it(`throws String Length Validation error if title is greater than 256 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationUpdatePostArgs = { @@ -172,14 +172,14 @@ describe("resolvers -> Mutation -> updatePost", () => { await updatePostResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 256 characters in title`, ); } }); it(`throws String Length Validation error if text is greater than 500 characters`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationUpdatePostArgs = { @@ -203,7 +203,7 @@ describe("resolvers -> Mutation -> updatePost", () => { await updatePostResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in information` + `${LENGTH_VALIDATION_ERROR.MESSAGE} 500 characters in information`, ); } }); @@ -211,7 +211,7 @@ describe("resolvers -> Mutation -> updatePost", () => { it("throws error if title is provided and post is not pinned", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationUpdatePostArgs = { @@ -233,7 +233,7 @@ describe("resolvers -> Mutation -> updatePost", () => { await updatePostResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Post needs to be pinned inorder to add a title` + `Post needs to be pinned inorder to add a title`, ); } }); @@ -241,7 +241,7 @@ describe("resolvers -> Mutation -> updatePost", () => { it(`throws error if title is not provided and post is pinned`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementationOnce( - (message) => message + (message) => message, ); try { const args: MutationUpdatePostArgs = { diff --git a/tests/resolvers/Mutation/updateUserPassword.spec.ts b/tests/resolvers/Mutation/updateUserPassword.spec.ts index 4cf36b17d3..09a1db0ba2 100644 --- a/tests/resolvers/Mutation/updateUserPassword.spec.ts +++ b/tests/resolvers/Mutation/updateUserPassword.spec.ts @@ -84,7 +84,7 @@ describe("resolvers -> Mutation -> updateUserPassword", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -93,7 +93,7 @@ describe("resolvers -> Mutation -> updateUserPassword", () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { @@ -122,7 +122,7 @@ describe("resolvers -> Mutation -> updateUserPassword", () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { @@ -152,7 +152,7 @@ describe("resolvers -> Mutation -> updateUserPassword", () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { @@ -194,7 +194,7 @@ describe("resolvers -> Mutation -> updateUserPassword", () => { const updateUserPasswordPayload = await updateUserPasswordResolver?.( {}, args, - context + context, ); expect(updateUserPasswordPayload).not.toBeNull(); diff --git a/tests/resolvers/Mutation/updateUserProfile.spec.ts b/tests/resolvers/Mutation/updateUserProfile.spec.ts index e9018cd605..846026af4a 100644 --- a/tests/resolvers/Mutation/updateUserProfile.spec.ts +++ b/tests/resolvers/Mutation/updateUserProfile.spec.ts @@ -110,7 +110,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -138,7 +138,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -169,7 +169,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(EMAIL_ALREADY_EXISTS_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${EMAIL_ALREADY_EXISTS_ERROR.MESSAGE}` + `Translated ${EMAIL_ALREADY_EXISTS_ERROR.MESSAGE}`, ); } }); @@ -199,7 +199,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(EMAIL_ALREADY_EXISTS_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${EMAIL_ALREADY_EXISTS_ERROR.MESSAGE}` + `Translated ${EMAIL_ALREADY_EXISTS_ERROR.MESSAGE}`, ); } }); @@ -218,7 +218,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { const updateUserProfilePayload = await updateUserProfileResolver?.( {}, args, - context + context, ); expect(updateUserProfilePayload).toEqual({ @@ -243,7 +243,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { const updateUserProfilePayload = await updateUserProfileResolver?.( {}, args, - context + context, ); expect(updateUserProfilePayload).toEqual({ @@ -271,7 +271,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { const updateUserProfilePayload = await updateUserProfileResolver?.( {}, args, - context + context, ); const testUserobj = await User.findById({ _id: testUser.id }); @@ -301,7 +301,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { const updateUserProfilePayload = await updateUserProfileResolver?.( {}, args, - context + context, ); const testUserobj = await User.findById({ _id: testUser.id }); @@ -333,7 +333,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { const updateUserProfilePayload = await updateUserProfileResolver?.( {}, args, - context + context, ); expect(updateUserProfilePayload).toEqual({ @@ -358,7 +358,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { }; vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( - async (encodedImageURL: string) => encodedImageURL + async (encodedImageURL: string) => encodedImageURL, ); const context = { @@ -369,7 +369,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { const updateUserProfilePayload = await updateUserProfileResolver?.( {}, args, - context + context, ); expect(updateUserProfilePayload).toEqual({ @@ -389,7 +389,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { }; vi.spyOn(uploadEncodedImage, "uploadEncodedImage").mockImplementation( - async (encodedImageURL: string) => encodedImageURL + async (encodedImageURL: string) => encodedImageURL, ); const context = { @@ -400,7 +400,7 @@ describe("resolvers -> Mutation -> updateUserProfile", () => { const updateUserProfilePayload = await updateUserProfileResolver?.( {}, args, - context + context, ); expect(updateUserProfilePayload).toEqual({ diff --git a/tests/resolvers/Mutation/updateUserRoleInOrganization.spec.ts b/tests/resolvers/Mutation/updateUserRoleInOrganization.spec.ts index deef8e6e90..d285d09c3c 100644 --- a/tests/resolvers/Mutation/updateUserRoleInOrganization.spec.ts +++ b/tests/resolvers/Mutation/updateUserRoleInOrganization.spec.ts @@ -105,7 +105,7 @@ beforeAll(async () => { adminFor: [testOrganization?._id], joinedOrganizations: [testOrganization?._id], }, - } + }, ); await User.updateOne( { @@ -116,7 +116,7 @@ beforeAll(async () => { adminFor: [testOrganization?._id], joinedOrganizations: [testOrganization?._id], }, - } + }, ); await User.updateOne( { @@ -126,7 +126,7 @@ beforeAll(async () => { $set: { joinedOrganizations: [testOrganization?._id], }, - } + }, ); }); @@ -142,7 +142,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when organization does not exists`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -167,7 +167,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when user whose role to be changed does not exists`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -192,7 +192,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when user whose role to be changed is not a member of the organization`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -217,7 +217,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when logged in user does not exists`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -242,7 +242,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when USER is trying to change role of an admin`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -267,7 +267,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when ADMIN of another org is not allowed to change role`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -292,7 +292,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when logged in ADMIN member user is not allowed to change the user type to SUPERADMIN`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -317,7 +317,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when logged in ADMIN member user is trying to change the role of the itself`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -342,7 +342,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when logged in ADMIN member user is trying to change the role of the org creator`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); try { const args: MutationUpdateUserRoleInOrganizationArgs = { @@ -367,7 +367,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when SUPERUSER is changing the role of a USER member to ADMIN`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const args: MutationUpdateUserRoleInOrganizationArgs = { organizationId: testOrganization?._id, @@ -392,10 +392,10 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { }).lean(); const updatedOrganizationCheck = updatedOrganization?.admins.some( - (member) => member.equals(testMemberUser?._id) + (member) => member.equals(testMemberUser?._id), ); const updatedUserCheck = updatedUser?.adminFor.some((organization) => - organization.equals(testOrganization?._id) + organization.equals(testOrganization?._id), ); expect(updatedOrganizationCheck).toBe(true); expect(updatedUserCheck).toBe(true); @@ -403,7 +403,7 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { it(`Check when SUPERUSER is changing the role of a ADMIN member to USER`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const args: MutationUpdateUserRoleInOrganizationArgs = { organizationId: testOrganization?._id, @@ -428,10 +428,10 @@ describe("resolvers -> Mutation -> updateUserRoleInOrganization", () => { }).lean(); const updatedOrgCheck = updatedOrg?.admins.some((member) => - member.equals(testAdminUser?._id) + member.equals(testAdminUser?._id), ); const updatedUserCheck = updatedUser?.adminFor.some((organization) => - organization.equals(testOrganization?._id) + organization.equals(testOrganization?._id), ); expect(updatedOrgCheck).toBe(false); diff --git a/tests/resolvers/Mutation/updateUserTag.spec.ts b/tests/resolvers/Mutation/updateUserTag.spec.ts index 9b6d946bcf..a756a330ca 100644 --- a/tests/resolvers/Mutation/updateUserTag.spec.ts +++ b/tests/resolvers/Mutation/updateUserTag.spec.ts @@ -73,7 +73,7 @@ describe("resolvers -> Mutation -> updateUserTag", () => { await updateUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -135,10 +135,10 @@ describe("resolvers -> Mutation -> updateUserTag", () => { await updateUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - `${USER_NOT_AUTHORIZED_ERROR.MESSAGE}` + `${USER_NOT_AUTHORIZED_ERROR.MESSAGE}`, ); } }); @@ -169,7 +169,7 @@ describe("resolvers -> Mutation -> updateUserTag", () => { await updateUserTagResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${NO_CHANGE_IN_TAG_NAME.MESSAGE}` + `Translated ${NO_CHANGE_IN_TAG_NAME.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(`${NO_CHANGE_IN_TAG_NAME.MESSAGE}`); } diff --git a/tests/resolvers/Mutation/updateUserType.spec.ts b/tests/resolvers/Mutation/updateUserType.spec.ts index 9de06f751d..645ebbc57a 100644 --- a/tests/resolvers/Mutation/updateUserType.spec.ts +++ b/tests/resolvers/Mutation/updateUserType.spec.ts @@ -67,7 +67,7 @@ describe("resolvers -> Mutation -> updateUserType", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -97,7 +97,7 @@ describe("resolvers -> Mutation -> updateUserType", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}`, ); } }); @@ -118,7 +118,7 @@ describe("resolvers -> Mutation -> updateUserType", () => { }, { new: true, - } + }, ); const args: MutationUpdateUserTypeArgs = { @@ -139,7 +139,7 @@ describe("resolvers -> Mutation -> updateUserType", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -168,7 +168,7 @@ describe("resolvers -> Mutation -> updateUserType", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(SUPERADMIN_CANT_CHANGE_OWN_ROLE.MESSAGE); expect(error.message).toEqual( - `Translated ${SUPERADMIN_CANT_CHANGE_OWN_ROLE.MESSAGE}` + `Translated ${SUPERADMIN_CANT_CHANGE_OWN_ROLE.MESSAGE}`, ); } }); @@ -176,7 +176,7 @@ describe("resolvers -> Mutation -> updateUserType", () => { it(`updates user.userType of user with _id === args.data.id to args.data.userType`, async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => `Translated ${message}` + (message) => `Translated ${message}`, ); await User.updateOne( @@ -188,7 +188,7 @@ describe("resolvers -> Mutation -> updateUserType", () => { }, { new: true, - } + }, ); const args: MutationUpdateUserTypeArgs = { @@ -208,7 +208,7 @@ describe("resolvers -> Mutation -> updateUserType", () => { const updateUserTypePayload = await updateUserTypeResolver?.( {}, args, - context + context, ); expect(updateUserTypePayload).toEqual(true); diff --git a/tests/resolvers/Organization/actionItemCategories.spec.ts b/tests/resolvers/Organization/actionItemCategories.spec.ts index ac51d984f8..051f6ae67c 100644 --- a/tests/resolvers/Organization/actionItemCategories.spec.ts +++ b/tests/resolvers/Organization/actionItemCategories.spec.ts @@ -26,7 +26,7 @@ describe("resolvers -> Organization -> actionItemCategories", () => { const actionCategoriesPayload = await actionItemCategoriesResolver?.( parent, {}, - {} + {}, ); const categories = await ActionItemCategory.find({ diff --git a/tests/resolvers/Organization/agendaCategories.spec.ts b/tests/resolvers/Organization/agendaCategories.spec.ts new file mode 100644 index 0000000000..2d990c39ba --- /dev/null +++ b/tests/resolvers/Organization/agendaCategories.spec.ts @@ -0,0 +1,74 @@ +import "dotenv/config"; +import { agendaCategories as agendaCategoriesResolver } from "../../../src/resolvers/Organization/agendaCategories"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { AgendaCategoryModel, Organization } from "../../../src/models"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import type { + TestUserType, + TestOrganizationType, +} from "../../helpers/userAndOrg"; +import { createTestUser } from "../../helpers/userAndOrg"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testOrganization: TestOrganizationType; +let testUser: TestUserType; +let testAdminUser: TestUserType; +// let testAgendaCategory: TestAgendaCategoryType; +// let testAgendaCategory2: TestAgendaCategoryType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + testUser = await createTestUser(); + testAdminUser = await createTestUser(); + testOrganization = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testUser?._id, + admins: [testAdminUser?._id], + members: [testUser?._id, testAdminUser?._id], + creatorId: testUser?._id, + }); + // testAgendaCategory = await AgendaCategoryModel.create({ + // name: "Test Categ", + // description: "Test Desc", + // organization: testOrganization?._id, + // createdBy: testAdminUser?._id, + // updatedBy: testAdminUser?._id, + // createdAt: Date.now(), + // updatedAt: Date.now(), + // }); + // testAgendaCategory2 = await AgendaCategoryModel.create({ + // name: "Test Categ2", + // description: "Test Desc2", + // organization: testOrganization?._id, + // createdBy: testAdminUser?._id, + // updatedBy: testAdminUser?._id, + // createdAt: Date.now(), + // updatedAt: Date.now(), + // }); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Organization -> agendaCategories", () => { + it(`returns all agendaCategories for parent organization`, async () => { + const parent = testOrganization?.toObject(); + if (parent) { + const agendaCategoriesPayload = await agendaCategoriesResolver?.( + parent, + {}, + {}, + ); + + const categories = await AgendaCategoryModel.find({ + organizationId: testOrganization?._id, + }).lean(); + + expect(agendaCategoriesPayload).toEqual(categories); + } + }); +}); diff --git a/tests/resolvers/Organization/creator.spec.ts b/tests/resolvers/Organization/creator.spec.ts index 7914a80581..e503e73d58 100644 --- a/tests/resolvers/Organization/creator.spec.ts +++ b/tests/resolvers/Organization/creator.spec.ts @@ -59,7 +59,7 @@ describe("resolvers -> Organization -> creatorId", () => { }, { new: true, - } + }, ); const parent = testOrganization?.toObject(); @@ -73,7 +73,7 @@ describe("resolvers -> Organization -> creatorId", () => { } catch (error: any) { expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); @@ -90,7 +90,7 @@ describe("resolvers -> Organization -> creatorId", () => { }, { new: true, - } + }, ); const parent = testOrganization?.toObject(); diff --git a/tests/resolvers/Organization/image.spec.ts b/tests/resolvers/Organization/image.spec.ts index 145061fdda..81124c80dc 100644 --- a/tests/resolvers/Organization/image.spec.ts +++ b/tests/resolvers/Organization/image.spec.ts @@ -50,7 +50,7 @@ describe("resolvers -> Organization -> image", () => { }, { new: true, - } + }, ); const parent = testOrganization?.toObject(); @@ -82,7 +82,7 @@ describe("resolvers -> Organization -> image", () => { }, { new: true, - } + }, ); const parent = testOrganization?.toObject(); diff --git a/tests/resolvers/Organization/membershipRequests.spec.ts b/tests/resolvers/Organization/membershipRequests.spec.ts index cf2a2f912b..2e79e473a6 100644 --- a/tests/resolvers/Organization/membershipRequests.spec.ts +++ b/tests/resolvers/Organization/membershipRequests.spec.ts @@ -36,7 +36,7 @@ beforeAll(async () => { }, { new: true, - } + }, ); testOrganization = await Organization.findOneAndUpdate( @@ -50,7 +50,7 @@ beforeAll(async () => { }, { new: true, - } + }, ); }); @@ -66,7 +66,7 @@ describe("resolvers -> Organization -> membershipRequests", () => { const membershipRequestsPayload = await membershipRequestsResolver?.( parent, {}, - {} + {}, ); const membershipRequests = await MembershipRequest.find({ diff --git a/tests/resolvers/Organization/pinnedPosts.spec.ts b/tests/resolvers/Organization/pinnedPosts.spec.ts index 77109d2f82..1ffe70a1cc 100644 --- a/tests/resolvers/Organization/pinnedPosts.spec.ts +++ b/tests/resolvers/Organization/pinnedPosts.spec.ts @@ -27,7 +27,7 @@ beforeAll(async () => { $push: { pinnedPosts: testPost?.id, }, - } + }, ); }); diff --git a/tests/resolvers/Post/comments.spec.ts b/tests/resolvers/Post/comments.spec.ts index 74573a6158..671e922376 100644 --- a/tests/resolvers/Post/comments.spec.ts +++ b/tests/resolvers/Post/comments.spec.ts @@ -29,7 +29,7 @@ beforeAll(async () => { $inc: { commentCount: 1, }, - } + }, ); }); @@ -44,7 +44,7 @@ describe("resolvers -> Post -> comments", () => { const commentsPayload = await commentsResolver?.( parent!.toObject(), {}, - {} + {}, ); const comments = await Comment.find({ @@ -59,7 +59,7 @@ describe("resolvers -> Post -> comments", () => { const commentsPayload = await commentsResolver?.( parent!.toObject(), {}, - {} + {}, ); const comments = await Comment.find({ diff --git a/tests/resolvers/Query/actionItem.spec.ts b/tests/resolvers/Query/actionItem.spec.ts index 88dbbc4d42..efd65f9b3f 100644 --- a/tests/resolvers/Query/actionItem.spec.ts +++ b/tests/resolvers/Query/actionItem.spec.ts @@ -45,7 +45,7 @@ describe("resolvers -> Query -> actionItem", () => { expect(actionItemPayload).toEqual( expect.objectContaining({ _id: testActionItem?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Query/actionItemCategoriesByOrganization.spec.ts b/tests/resolvers/Query/actionItemCategoriesByOrganization.spec.ts index 1889c27e85..c23f673473 100644 --- a/tests/resolvers/Query/actionItemCategoriesByOrganization.spec.ts +++ b/tests/resolvers/Query/actionItemCategoriesByOrganization.spec.ts @@ -34,7 +34,7 @@ describe("resolvers -> Query -> actionItemCategoriesByOrganization", () => { }).lean(); expect(categoriesByOrganizationPayload).toEqual( - categoriesByOrganizationInfo + categoriesByOrganizationInfo, ); }); }); diff --git a/tests/resolvers/Query/actionItemCategory.spec.ts b/tests/resolvers/Query/actionItemCategory.spec.ts index dbccdfd506..94a4342e12 100644 --- a/tests/resolvers/Query/actionItemCategory.spec.ts +++ b/tests/resolvers/Query/actionItemCategory.spec.ts @@ -43,13 +43,13 @@ describe("resolvers -> Query -> actionItemCategory", () => { const actionItemCategoryPayload = await actionItemCategoryResolver?.( {}, args, - {} + {}, ); expect(actionItemCategoryPayload).toEqual( expect.objectContaining({ _id: testCategory?._id, - }) + }), ); }); }); diff --git a/tests/resolvers/Query/actionItemsByEvent.spec.ts b/tests/resolvers/Query/actionItemsByEvent.spec.ts index 34f161eee7..022b3688d1 100644 --- a/tests/resolvers/Query/actionItemsByEvent.spec.ts +++ b/tests/resolvers/Query/actionItemsByEvent.spec.ts @@ -29,7 +29,7 @@ describe("resolvers -> Query -> actionItemsByEvent", () => { const actionItemsByEventPayload = await actionItemsByEventsResolver?.( {}, args, - {} + {}, ); const actionItemsByEventInfo = await ActionItem.find({ diff --git a/tests/resolvers/Query/actionItemsByOrganization.spec.ts b/tests/resolvers/Query/actionItemsByOrganization.spec.ts index 3c6c3326dc..70531bf113 100644 --- a/tests/resolvers/Query/actionItemsByOrganization.spec.ts +++ b/tests/resolvers/Query/actionItemsByOrganization.spec.ts @@ -6,16 +6,14 @@ import { actionItemsByOrganization as actionItemsByOrganizationResolver } from " import { beforeAll, afterAll, describe, it, expect } from "vitest"; import type mongoose from "mongoose"; import { createTestActionItems } from "../../helpers/actionItem"; -import type { TestEventType } from "../../helpers/events"; -import { TestOrganizationType } from "../../helpers/userAndOrg"; +import type { TestOrganizationType } from "../../helpers/userAndOrg"; let MONGOOSE_INSTANCE: typeof mongoose; -let testEvent: TestEventType; let testOrganization: TestOrganizationType; beforeAll(async () => { MONGOOSE_INSTANCE = await connect(); - [, testEvent, testOrganization] = await createTestActionItems(); + [, , testOrganization] = await createTestActionItems(); }); afterAll(async () => { @@ -35,7 +33,7 @@ describe("resolvers -> Query -> actionItemsByOrganization", () => { organizationId: args.organizationId, }); const actionItemCategoriesIds = actionItemCategories.map( - (category) => category._id + (category) => category._id, ); const actionItemsByOrganizationInfo = await ActionItem.find({ @@ -43,7 +41,7 @@ describe("resolvers -> Query -> actionItemsByOrganization", () => { }).lean(); expect(actionItemsByOrganizationPayload).toEqual( - actionItemsByOrganizationInfo + actionItemsByOrganizationInfo, ); }); }); diff --git a/tests/resolvers/Query/agendaCategory.spec.ts b/tests/resolvers/Query/agendaCategory.spec.ts new file mode 100644 index 0000000000..eaeef7d9a0 --- /dev/null +++ b/tests/resolvers/Query/agendaCategory.spec.ts @@ -0,0 +1,79 @@ +import "dotenv/config"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { AgendaCategoryModel, Organization } from "../../../src/models"; +import { AGENDA_CATEGORY_NOT_FOUND_ERROR } from "../../../src/constants"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import { + createTestUser, + type TestOrganizationType, + type TestUserType, +} from "../../helpers/userAndOrg"; +import { agendaCategory } from "../../../src/resolvers/Query/agendaCategory"; +import { Types } from "mongoose"; +import type { TestAgendaCategoryType } from "../../helpers/agendaCategory"; +let testUser: TestUserType; +let testAdminUser: TestUserType; +let testOrganization: TestOrganizationType; +let testAgendaCategory: TestAgendaCategoryType; +let MONGOOSE_INSTANCE: typeof mongoose; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + testUser = await createTestUser(); + testAdminUser = await createTestUser(); + testOrganization = await Organization.create({ + name: "name", + description: "description", + isPublic: true, + creator: testUser?._id, + admins: [testAdminUser?._id], + members: [testUser?._id, testAdminUser?._id], + creatorId: testUser?._id, + }); + testAgendaCategory = await AgendaCategoryModel.create({ + name: "Test Categ", + description: "Test Desc", + organization: testOrganization?._id, + createdBy: testAdminUser?._id, + updatedBy: testAdminUser?._id, + createdAt: Date.now(), + updatedAt: Date.now(), + }); +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Query -> agendaCategory", () => { + it("returns the agenda category successfully when it exists", async () => { + try { + const args = { + id: testAgendaCategory?._id, + }; + const result = await agendaCategory?.({}, args, {}); + expect(result).toBeDefined(); + expect(result?._id).toStrictEqual(testAgendaCategory?._id); + } catch (error) { + // Handle any unexpected errors during the test + console.error("Test failed with error:", error); + throw error; + } + }); + + it("throws a NotFoundError when the agenda category does not exist", async () => { + try { + const args = { + id: Types.ObjectId().toString(), + }; + await agendaCategory?.({}, args, {}); + // If the resolver does not throw an error, the test fails + throw new Error("Test failed. Expected NotFoundError but got no error."); + } catch (error: unknown) { + expect((error as Error).message).toEqual( + AGENDA_CATEGORY_NOT_FOUND_ERROR.MESSAGE, + ); + } + }); +}); diff --git a/tests/resolvers/Query/checkAuth.spec.ts b/tests/resolvers/Query/checkAuth.spec.ts index 1f44d09f28..4fb8562f23 100644 --- a/tests/resolvers/Query/checkAuth.spec.ts +++ b/tests/resolvers/Query/checkAuth.spec.ts @@ -53,7 +53,7 @@ describe("resolvers -> Query -> checkAuth", () => { }, { image: `path`, - } + }, ); testUser = await User.findOne({ diff --git a/tests/resolvers/Query/customDataByOrganization.spec.ts b/tests/resolvers/Query/customDataByOrganization.spec.ts index c24e76ba2e..9dac8d8dd4 100644 --- a/tests/resolvers/Query/customDataByOrganization.spec.ts +++ b/tests/resolvers/Query/customDataByOrganization.spec.ts @@ -33,7 +33,7 @@ describe("resolvers => Query => customDataByOrganization", () => { dataName: "testDataName", dataValue: "testDataValue", }, - { userId: testUser?._id } + { userId: testUser?._id }, ); const args = { diff --git a/tests/resolvers/Query/customFieldsByOrganization.spec.ts b/tests/resolvers/Query/customFieldsByOrganization.spec.ts index 6d017a05ff..1e068aea70 100644 --- a/tests/resolvers/Query/customFieldsByOrganization.spec.ts +++ b/tests/resolvers/Query/customFieldsByOrganization.spec.ts @@ -35,7 +35,7 @@ describe("resolvers => Query => customFieldsByOrganization", () => { name: "dataName", type: "dataType", }, - { userId: testUser?._id } + { userId: testUser?._id }, ); const args = { @@ -65,7 +65,7 @@ describe("resolvers => Query => customFieldsByOrganization", () => { name: "dataName", type: "dataType", }, - { userId: testUser?._id } + { userId: testUser?._id }, ); const args = { @@ -79,10 +79,10 @@ describe("resolvers => Query => customFieldsByOrganization", () => { await customFieldsByOrganization?.({}, args, context); } catch (error: any) { expect(spy).toHaveBeenLastCalledWith( - ORGANIZATION_NOT_FOUND_ERROR.MESSAGE + ORGANIZATION_NOT_FOUND_ERROR.MESSAGE, ); expect(error.message).toEqual( - `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${ORGANIZATION_NOT_FOUND_ERROR.MESSAGE}`, ); } }); diff --git a/tests/resolvers/Query/directChatsByUserID.spec.ts b/tests/resolvers/Query/directChatsByUserID.spec.ts index d3e6722cf9..75bce891ac 100644 --- a/tests/resolvers/Query/directChatsByUserID.spec.ts +++ b/tests/resolvers/Query/directChatsByUserID.spec.ts @@ -46,7 +46,7 @@ describe("resolvers -> Query -> directChatsByUserID", () => { const directChatsByUserIdPayload = await directChatsByUserIDResolver?.( {}, args, - {} + {}, ); const directChatsByUserId = await DirectChat.find({ diff --git a/tests/resolvers/Query/directChatsMessagesByChatID.spec.ts b/tests/resolvers/Query/directChatsMessagesByChatID.spec.ts index 96bb19d4ce..70f952cc63 100644 --- a/tests/resolvers/Query/directChatsMessagesByChatID.spec.ts +++ b/tests/resolvers/Query/directChatsMessagesByChatID.spec.ts @@ -30,19 +30,19 @@ beforeAll(async () => { const testDirectChat1 = await createTestDirectChatwithUsers( testUser1?._id, testOrganization?._id, - [testUser1?._id, testUser2?._id] + [testUser1?._id, testUser2?._id], ); const testDirectChat2 = await createTestDirectChatwithUsers( testUser2?._id, testOrganization?._id, - [testUser2?._id] + [testUser2?._id], ); testDirectChats = [testDirectChat1, testDirectChat2]; await createDirectChatMessage( testUser1?._id, testUser2?._id, - testDirectChats[0]?._id + testDirectChats[0]?._id, ); }); @@ -90,7 +90,7 @@ describe("resolvers -> Query -> directChatsMessagesByChatID", () => { }).lean(); expect(directChatsMessagesByChatIdPayload).toEqual( - directChatMessagesByChatId + directChatMessagesByChatId, ); }); }); diff --git a/tests/resolvers/Query/eventVolunteersByEvent.spec.ts b/tests/resolvers/Query/eventVolunteersByEvent.spec.ts new file mode 100644 index 0000000000..7c02d96f0e --- /dev/null +++ b/tests/resolvers/Query/eventVolunteersByEvent.spec.ts @@ -0,0 +1,40 @@ +import type mongoose from "mongoose"; +import { connect, disconnect } from "../../helpers/db"; +import { eventVolunteersByEvent } from "../../../src/resolvers/Query/eventVolunteersByEvent"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import type { TestEventType } from "../../helpers/events"; +import { createTestEventAndVolunteer } from "../../helpers/events"; +import { EventVolunteer } from "../../../src/models"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testEvent: TestEventType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const temp = await createTestEventAndVolunteer(); + testEvent = temp[2]; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> Mutation -> eventVolunteersByEvent", () => { + it(`returns list of all existing event volunteers with eventId === args.id`, async () => { + const volunteersPayload = await eventVolunteersByEvent?.( + {}, + { + id: testEvent?._id, + }, + {}, + ); + + const volunteers = await EventVolunteer.find({ + eventId: testEvent?._id, + }) + .populate("userId", "-password") + .lean(); + + expect(volunteersPayload).toEqual(volunteers); + }); +}); diff --git a/tests/resolvers/Query/eventsByOrganization.spec.ts b/tests/resolvers/Query/eventsByOrganization.spec.ts index cf5032cc5e..d2cbe87077 100644 --- a/tests/resolvers/Query/eventsByOrganization.spec.ts +++ b/tests/resolvers/Query/eventsByOrganization.spec.ts @@ -22,13 +22,13 @@ beforeAll(async () => { testUser?._id, testOrganization?._id, true, - "ONCE" + "ONCE", ); const testEvent2 = await createEventWithRegistrant( testUser?._id, testOrganization?._id, true, - "ONCE" + "ONCE", ); }); @@ -53,7 +53,7 @@ describe("resolvers -> Query -> eventsByOrganization", () => { const eventsByOrganizationPayload = await eventsByOrganization?.( {}, args, - {} + {}, ); const eventsByOrganizationInfo = await Event.find({ diff --git a/tests/resolvers/Query/eventsByOrganizationConnection.spec.ts b/tests/resolvers/Query/eventsByOrganizationConnection.spec.ts index 5e450709bc..627857b5d5 100644 --- a/tests/resolvers/Query/eventsByOrganizationConnection.spec.ts +++ b/tests/resolvers/Query/eventsByOrganizationConnection.spec.ts @@ -20,19 +20,19 @@ beforeAll(async () => { testUser?._id, testOrganization?._id, true, - "ONCE" + "ONCE", ); const testEvent2 = await createEventWithRegistrant( testUser?._id, testOrganization?._id, false, - "DAILY" + "DAILY", ); const testEvent3 = await createEventWithRegistrant( testUser?._id, testOrganization?._id, false, - "DAILY" + "DAILY", ); testEvents = [testEvent1, testEvent2, testEvent3]; }); diff --git a/tests/resolvers/Query/getDonationById.spec.ts b/tests/resolvers/Query/getDonationById.spec.ts index 137591112d..605894ef28 100644 --- a/tests/resolvers/Query/getDonationById.spec.ts +++ b/tests/resolvers/Query/getDonationById.spec.ts @@ -29,7 +29,7 @@ describe("resolvers -> Mutation -> getDonationById", () => { const getDonationByIdPayload = await getDonationByIdResolver?.( {}, args, - {} + {}, ); expect(getDonationByIdPayload).toEqual(testDonation?.toObject()); @@ -42,7 +42,7 @@ describe("resolvers -> Mutation -> getDonationById", () => { const getDonationByIdPayload = await getDonationByIdResolver?.( {}, args, - {} + {}, ); expect(getDonationByIdPayload).toEqual({}); diff --git a/tests/resolvers/Query/getDonationByOrgId.spec.ts b/tests/resolvers/Query/getDonationByOrgId.spec.ts index be14a8f939..9f17ed583a 100644 --- a/tests/resolvers/Query/getDonationByOrgId.spec.ts +++ b/tests/resolvers/Query/getDonationByOrgId.spec.ts @@ -30,7 +30,7 @@ describe("resolvers -> Mutation -> getDonationByOrgId", () => { const getDonationByOrgIdPayload = await getDonationByOrgIdResolver?.( {}, args, - {} + {}, ); const donationsByOrganization = await Donation.find({ diff --git a/tests/resolvers/Query/getDonationByOrgIdConnection.spec.ts b/tests/resolvers/Query/getDonationByOrgIdConnection.spec.ts index 6052214bbc..f109b9178f 100644 --- a/tests/resolvers/Query/getDonationByOrgIdConnection.spec.ts +++ b/tests/resolvers/Query/getDonationByOrgIdConnection.spec.ts @@ -44,7 +44,7 @@ describe("resolvers -> Query -> getDonationByOrgIdConnection", () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -66,7 +66,7 @@ describe("resolvers -> Query -> getDonationByOrgIdConnection", () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -88,7 +88,7 @@ describe("resolvers -> Query -> getDonationByOrgIdConnection", () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -110,7 +110,7 @@ args.where === { id_not_in: testDonations[2]._id }`, async () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -132,7 +132,7 @@ args.where === { id_not_in: testDonations[2]._id }`, async () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -154,7 +154,7 @@ args.where === { id_not_in: testDonations[2]._id }`, async () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -176,7 +176,7 @@ args.where === { id_not_in: testDonations[2]._id }`, async () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -198,7 +198,7 @@ args.where === { id_not_in: testDonations[2]._id }`, async () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -220,7 +220,7 @@ args.where === { id_not_in: testDonations[2]._id }`, async () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -244,7 +244,7 @@ args.where === { id_not_in: testDonations[2]._id }`, async () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); @@ -270,7 +270,7 @@ args.where === { id_not_in: testDonations[2]._id }`, async () => { }).lean(); expect(getDonationByOrgIdConnectionPayload).toEqual( - donationsByOrganization + donationsByOrganization, ); }); }); diff --git a/tests/resolvers/Query/getlanguage.spec.ts b/tests/resolvers/Query/getlanguage.spec.ts index 1c207c5f91..c0430e0a73 100644 --- a/tests/resolvers/Query/getlanguage.spec.ts +++ b/tests/resolvers/Query/getlanguage.spec.ts @@ -81,7 +81,7 @@ describe("resolvers -> Query -> getLanguage", () => { translation: "value2", verified: false, }), - ]) + ]), ); }); }); diff --git a/tests/resolvers/Query/hasSubmittedFeedback.spec.ts b/tests/resolvers/Query/hasSubmittedFeedback.spec.ts index 10e903074e..d20134c556 100644 --- a/tests/resolvers/Query/hasSubmittedFeedback.spec.ts +++ b/tests/resolvers/Query/hasSubmittedFeedback.spec.ts @@ -52,7 +52,7 @@ describe("resolvers -> Query -> hasSubmittedFeedback", () => { await hasSubmittedFeedbackResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); } @@ -79,7 +79,7 @@ describe("resolvers -> Query -> hasSubmittedFeedback", () => { await hasSubmittedFeedbackResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${EVENT_NOT_FOUND_ERROR.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(EVENT_NOT_FOUND_ERROR.MESSAGE); } @@ -106,10 +106,10 @@ describe("resolvers -> Query -> hasSubmittedFeedback", () => { await hasSubmittedFeedbackResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_REGISTERED_FOR_EVENT.MESSAGE}` + `Translated ${USER_NOT_REGISTERED_FOR_EVENT.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith( - USER_NOT_REGISTERED_FOR_EVENT.MESSAGE + USER_NOT_REGISTERED_FOR_EVENT.MESSAGE, ); } }); @@ -141,7 +141,7 @@ describe("resolvers -> Query -> hasSubmittedFeedback", () => { await hasSubmittedFeedbackResolver?.({}, args, context); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_CHECKED_IN.MESSAGE}` + `Translated ${USER_NOT_CHECKED_IN.MESSAGE}`, ); expect(spy).toHaveBeenLastCalledWith(USER_NOT_CHECKED_IN.MESSAGE); } diff --git a/tests/resolvers/Query/organizationIsSample.spec.ts b/tests/resolvers/Query/organizationIsSample.spec.ts index e831ca0004..4ea802caa4 100644 --- a/tests/resolvers/Query/organizationIsSample.spec.ts +++ b/tests/resolvers/Query/organizationIsSample.spec.ts @@ -20,7 +20,7 @@ describe("determine whether organization is a sample or not", async () => { it("isSampleOrganization should return true if organizationId exists in SampleData collection", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const _id = faker.database.mongodbObjectId(); @@ -68,7 +68,7 @@ describe("determine whether organization is a sample or not", async () => { it("isSampleOrganization should return false if organizationId does not exist in SampleData collection", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const _id = faker.database.mongodbObjectId(); @@ -108,7 +108,7 @@ describe("ensure organization exists in organization collection", async () => { it("should throw error when organization doesn't exist in the 'Organization' collection", async () => { const { requestContext } = await import("../../../src/libraries"); vi.spyOn(requestContext, "translate").mockImplementation( - (message) => message + (message) => message, ); const randomId = faker.database.mongodbObjectId(); diff --git a/tests/resolvers/Query/organizationsConnection.spec.ts b/tests/resolvers/Query/organizationsConnection.spec.ts index a849779b05..fd82e219d1 100644 --- a/tests/resolvers/Query/organizationsConnection.spec.ts +++ b/tests/resolvers/Query/organizationsConnection.spec.ts @@ -74,7 +74,7 @@ beforeAll(async () => { testOrganizations[2]._id, ], }, - } + }, ); }); diff --git a/tests/resolvers/Query/organizationsMemberConnection.spec.ts b/tests/resolvers/Query/organizationsMemberConnection.spec.ts index 75aed8a275..e74d3536d8 100644 --- a/tests/resolvers/Query/organizationsMemberConnection.spec.ts +++ b/tests/resolvers/Query/organizationsMemberConnection.spec.ts @@ -65,7 +65,7 @@ beforeAll(async () => { adminFor: testOrganization._id, joinedOrganizations: testOrganization._id, }, - } + }, ); await User.updateOne( @@ -77,7 +77,7 @@ beforeAll(async () => { adminFor: testOrganization._id, joinedOrganizations: testOrganization._id, }, - } + }, ); await User.updateOne( @@ -89,7 +89,7 @@ beforeAll(async () => { adminFor: [testOrganization._id], joinedOrganizations: [testOrganization._id], }, - } + }, ); }); @@ -797,7 +797,7 @@ describe("resolvers -> Query -> organizationsMemberConnection", () => { await organizationsMemberConnectionResolver?.({}, args, {}); } catch (error: any) { expect(error).toEqual( - "Missing Skip parameter. Set it to either 0 or some other value" + "Missing Skip parameter. Set it to either 0 or some other value", ); } }); @@ -873,7 +873,7 @@ describe("resolvers -> Query -> organizationsMemberConnection", () => { $set: { image: `image/image.png`, }, - } + }, ); const where = { joinedOrganizations: { @@ -937,7 +937,7 @@ describe("resolvers -> Query -> organizationsMemberConnection", () => { $set: { image: `image/image.png`, }, - } + }, ); const where = { joinedOrganizations: { diff --git a/tests/resolvers/Query/postsByOrganization.spec.ts b/tests/resolvers/Query/postsByOrganization.spec.ts index 9e01cf9f78..a0cac7c2a9 100644 --- a/tests/resolvers/Query/postsByOrganization.spec.ts +++ b/tests/resolvers/Query/postsByOrganization.spec.ts @@ -45,7 +45,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -82,7 +82,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -118,7 +118,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -154,7 +154,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -190,7 +190,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ organization: testOrganization?._id, @@ -226,7 +226,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ organization: testOrganization?._id, @@ -261,7 +261,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -297,7 +297,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -333,7 +333,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -369,7 +369,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -406,7 +406,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -442,7 +442,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -479,7 +479,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -515,7 +515,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -551,7 +551,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -587,7 +587,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ organization: testOrganization?._id, @@ -622,7 +622,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ @@ -650,7 +650,7 @@ describe("resolvers -> Query -> posts", () => { $set: { imageUrl: undefined, }, - } + }, ); const sort = { @@ -669,7 +669,7 @@ describe("resolvers -> Query -> posts", () => { const postsByOrganizationPayload = await postsByOrganizationResolver?.( {}, args, - context + context, ); const postsByOrganization = await Post.find({ diff --git a/tests/resolvers/Query/postsByOrganizationConnection.spec.ts b/tests/resolvers/Query/postsByOrganizationConnection.spec.ts index 30bf0ff05e..90f6f563fd 100644 --- a/tests/resolvers/Query/postsByOrganizationConnection.spec.ts +++ b/tests/resolvers/Query/postsByOrganizationConnection.spec.ts @@ -251,7 +251,7 @@ describe("resolvers -> Query -> postsByOrganizationConnection", () => { $set: { imageUrl: undefined, }, - } + }, ); const where = { diff --git a/tests/resolvers/Query/user.spec.ts b/tests/resolvers/Query/user.spec.ts index bade5dfd91..b3e3baefe0 100644 --- a/tests/resolvers/Query/user.spec.ts +++ b/tests/resolvers/Query/user.spec.ts @@ -68,7 +68,7 @@ describe("resolvers -> Query -> user", () => { $set: { image: `images/newImage.png`, }, - } + }, ); const args: QueryUserArgs = { diff --git a/tests/resolvers/Query/users.spec.ts b/tests/resolvers/Query/users.spec.ts index 9cc103f1ca..3e92f52f52 100644 --- a/tests/resolvers/Query/users.spec.ts +++ b/tests/resolvers/Query/users.spec.ts @@ -48,7 +48,7 @@ describe("resolvers -> Query -> users", () => { } catch (error: any) { expect(spy).toBeCalledWith(UNAUTHENTICATED_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${UNAUTHENTICATED_ERROR.MESSAGE}` + `Translated ${UNAUTHENTICATED_ERROR.MESSAGE}`, ); } @@ -165,7 +165,7 @@ describe("resolvers -> Query -> users", () => { registeredEvents: testEvent._id, eventAdmin: testEvent._id, }, - } + }, ); await User.updateOne( @@ -177,7 +177,7 @@ describe("resolvers -> Query -> users", () => { joinedOrganizations: testOrganization._id, organizationsBlockedBy: testOrganization._id, }, - } + }, ); await Organization.updateOne( @@ -188,7 +188,7 @@ describe("resolvers -> Query -> users", () => { $push: { blockedUsers: testUsers[1]._id, }, - } + }, ); }); @@ -960,7 +960,7 @@ describe("resolvers -> Query -> users", () => { $set: { image: "images/image.png", }, - } + }, ); const args: QueryUsersArgs = { diff --git a/tests/resolvers/Query/usersConnection.spec.ts b/tests/resolvers/Query/usersConnection.spec.ts index 240c4e3c9a..f003599078 100644 --- a/tests/resolvers/Query/usersConnection.spec.ts +++ b/tests/resolvers/Query/usersConnection.spec.ts @@ -23,7 +23,7 @@ beforeAll(async () => { testUsers[0]?._id, testOrganization?._id, true, - "ONCE" + "ONCE", ); }); @@ -41,7 +41,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find() .limit(0) @@ -91,7 +91,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -153,7 +153,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -215,7 +215,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -277,7 +277,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -339,7 +339,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -389,7 +389,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -426,7 +426,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -463,7 +463,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -500,7 +500,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -537,7 +537,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) @@ -571,7 +571,7 @@ describe("resolvers -> Query -> usersConnection", () => { const usersConnectionPayload = await usersConnectionResolver?.( {}, args, - {} + {}, ); const users = await User.find(where) diff --git a/tests/resolvers/Subscription/messageSentToDirectChat.spec.ts b/tests/resolvers/Subscription/messageSentToDirectChat.spec.ts index 9c7c037ec2..1c9999cf78 100644 --- a/tests/resolvers/Subscription/messageSentToDirectChat.spec.ts +++ b/tests/resolvers/Subscription/messageSentToDirectChat.spec.ts @@ -50,7 +50,7 @@ describe("src -> resolvers -> Subscription -> messageSentToDirectChat", () => { const x = messageSentToDirectChatPayload?.subscribe( _parent, _args, - context + context, ); expect(x).not.toBe(null); expect(await filterFunction(payload, context)).toBe(true); @@ -89,7 +89,7 @@ describe("src -> resolvers -> Subscription -> messageSentToDirectChat", () => { const x = messageSentToDirectChatPayload?.subscribe( _parent, _args, - context + context, ); expect(x).not.toBe(null); expect(await filterFunction(payload, context)).toBe(false); diff --git a/tests/resolvers/UserFamily/admins.spec.ts b/tests/resolvers/UserFamily/admins.spec.ts new file mode 100644 index 0000000000..9e4e92372d --- /dev/null +++ b/tests/resolvers/UserFamily/admins.spec.ts @@ -0,0 +1,39 @@ +import "dotenv/config"; +import { admins as usersResolver } from "../../../src/resolvers/UserFamily/admins"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { User } from "../../../src/models"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import type { TestUserFamilyType } from "../../helpers/userAndUserFamily"; +import { createTestUserAndUserFamily } from "../../helpers/userAndUserFamily"; + +let testUserFamily: TestUserFamilyType; +let MONGOOSE_INSTANCE: typeof mongoose; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const resultArray = await createTestUserAndUserFamily(); + testUserFamily = resultArray[1]; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> UserFamily -> admins", () => { + it(`returns user objects for parent.admins`, async () => { + if (testUserFamily) { + const parent = testUserFamily.toObject(); + + const usersPayload = await usersResolver?.(parent, {}, {}); + + const users = await User.find({ + _id: { + $in: testUserFamily?.admins, + }, + }).lean(); + + expect(usersPayload).toEqual(users); + } + }); +}); diff --git a/tests/resolvers/UserFamily/creator.spec.ts b/tests/resolvers/UserFamily/creator.spec.ts new file mode 100644 index 0000000000..d9a1510459 --- /dev/null +++ b/tests/resolvers/UserFamily/creator.spec.ts @@ -0,0 +1,111 @@ +import "dotenv/config"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { Types } from "mongoose"; +import { User } from "../../../src/models"; +import { UserFamily } from "../../../src/models/userFamily"; + +import { USER_NOT_FOUND_ERROR } from "../../../src/constants"; +import { + beforeAll, + afterAll, + describe, + it, + expect, + afterEach, + vi, +} from "vitest"; +import type { + TestUserType, + TestUserFamilyType, +} from "../../helpers/userAndUserFamily"; +import { createTestUserAndUserFamily } from "../../helpers/userAndUserFamily"; + +let MONGOOSE_INSTANCE: typeof mongoose; +let testUser: TestUserType; +let testUserFamily: TestUserFamilyType; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const userAndUserFamily = await createTestUserAndUserFamily(); + testUser = userAndUserFamily[0]; + testUserFamily = userAndUserFamily[1]; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> UserFamily -> creator", () => { + afterEach(() => { + vi.doUnmock("../../../src/constants"); + vi.resetModules(); + }); + + it(`throws NotFoundError if no user exists with _id === parent.creator`, async () => { + const { requestContext } = await import("../../../src/libraries"); + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementation((message) => `Translated ${message}`); + + try { + testUserFamily = await UserFamily.findOneAndUpdate( + { + _id: testUserFamily?._id, + }, + { + $set: { + creator: Types.ObjectId().toString(), + }, + }, + { + new: true, + }, + ); + + const parent = testUserFamily?.toObject(); + + const { creator: creatorResolver } = await import( + "../../../src/resolvers/UserFamily/creator" + ); + if (parent) { + await creatorResolver?.(parent, {}, {}); + } + } catch (error) { + expect(spy).toHaveBeenCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, + ); + } + }); + + it(`returns user object for parent.creator`, async () => { + testUserFamily = await UserFamily.findOneAndUpdate( + { + _id: testUserFamily?._id, + }, + { + $set: { + creator: testUser?._id, + }, + }, + { + new: true, + }, + ); + + const parent = testUserFamily?.toObject(); + + const { creator: creatorResolver } = await import( + "../../../src/resolvers/UserFamily/creator" + ); + if (parent) { + const creatorPayload = await creatorResolver?.(parent, {}, {}); + const creator = await User.findOne({ + _id: testUserFamily?.creator.toString(), + }).lean(); + + expect(creatorPayload).toEqual(creator); + } + }); +}); diff --git a/tests/resolvers/UserFamily/users.spec.ts b/tests/resolvers/UserFamily/users.spec.ts new file mode 100644 index 0000000000..2654812cf8 --- /dev/null +++ b/tests/resolvers/UserFamily/users.spec.ts @@ -0,0 +1,39 @@ +import "dotenv/config"; +import { users as usersResolver } from "../../../src/resolvers/UserFamily/users"; +import { connect, disconnect } from "../../helpers/db"; +import type mongoose from "mongoose"; +import { User } from "../../../src/models"; +import { beforeAll, afterAll, describe, it, expect } from "vitest"; +import type { TestUserFamilyType } from "../../helpers/userAndUserFamily"; +import { createTestUserAndUserFamily } from "../../helpers/userAndUserFamily"; + +let testUserFamily: TestUserFamilyType; +let MONGOOSE_INSTANCE: typeof mongoose; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const resultArray = await createTestUserAndUserFamily(); + testUserFamily = resultArray[1]; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("resolvers -> UserFamily -> users", () => { + it(`returns user objects for parent.users`, async () => { + if (testUserFamily) { + const parent = testUserFamily.toObject(); + + const usersPayload = await usersResolver?.(parent, {}, {}); + + const users = await User.find({ + _id: { + $in: testUserFamily?.users, + }, + }).lean(); + + expect(usersPayload).toEqual(users); + } + }); +}); diff --git a/tests/resolvers/UserTag/childTags.spec.ts b/tests/resolvers/UserTag/childTags.spec.ts index 1525fdf211..4011100738 100644 --- a/tests/resolvers/UserTag/childTags.spec.ts +++ b/tests/resolvers/UserTag/childTags.spec.ts @@ -80,16 +80,16 @@ describe("resolvers -> Tag -> childTags", () => { const payload = (await childTagsResolver?.( parent, args, - {} + {}, )) as UserTagsConnectionResult; expect(payload.errors.length).toEqual(0); expect(payload.data).not.toBeNull(); expect(payload.data!.pageInfo.startCursor).toEqual( - testChildTag1!._id.toString() + testChildTag1!._id.toString(), ); expect(payload.data!.pageInfo.endCursor).toEqual( - testChildTag2!._id.toString() + testChildTag2!._id.toString(), ); expect(payload.data!.edges[0].node).toEqual(testChildTag1); }); diff --git a/tests/resolvers/UserTag/usersAssignedTo.spec.ts b/tests/resolvers/UserTag/usersAssignedTo.spec.ts index 3b67a8d72a..1403b0c753 100644 --- a/tests/resolvers/UserTag/usersAssignedTo.spec.ts +++ b/tests/resolvers/UserTag/usersAssignedTo.spec.ts @@ -79,7 +79,7 @@ describe("resolvers -> Tag -> usersAssignedTo", () => { const payload = (await usersAssignedToResolver?.( parent, args, - {} + {}, )) as UsersConnectionResult; expect(payload.errors.length).toEqual(0); @@ -90,10 +90,10 @@ describe("resolvers -> Tag -> usersAssignedTo", () => { }); expect(payload.data!.pageInfo.startCursor).toEqual( - userTagObject!._id.toString() + userTagObject!._id.toString(), ); expect(payload.data!.pageInfo.endCursor).toEqual( - userTagObject!._id.toString() + userTagObject!._id.toString(), ); expect(payload.data!.edges[0].node._id).toEqual(testUser && testUser._id); }); diff --git a/tests/resolvers/middleware/currentUserExists.spec.ts b/tests/resolvers/middleware/currentUserExists.spec.ts index dd178664bf..c20465ec00 100644 --- a/tests/resolvers/middleware/currentUserExists.spec.ts +++ b/tests/resolvers/middleware/currentUserExists.spec.ts @@ -53,7 +53,7 @@ describe("resolvers -> Middleware -> currentUserExists", () => { } catch (error: any) { expect(spy).toHaveBeenLastCalledWith(USER_NOT_FOUND_ERROR.MESSAGE); expect(error.message).toEqual( - `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}` + `Translated ${USER_NOT_FOUND_ERROR.MESSAGE}`, ); } }); diff --git a/tests/utilities/adminCheck.spec.ts b/tests/utilities/adminCheck.spec.ts index 674d72042d..f5e8030844 100644 --- a/tests/utilities/adminCheck.spec.ts +++ b/tests/utilities/adminCheck.spec.ts @@ -48,11 +48,11 @@ describe("utilities -> adminCheck", () => { const { adminCheck } = await import("../../src/utilities"); await adminCheck( testUser?._id, - testOrganization ?? ({} as InterfaceOrganization) + testOrganization ?? ({} as InterfaceOrganization), ); } catch (error: any) { expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); } expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); @@ -69,7 +69,7 @@ describe("utilities -> adminCheck", () => { { new: true, upsert: true, - } + }, ); const { adminCheck } = await import("../../src/utilities"); @@ -77,8 +77,8 @@ describe("utilities -> adminCheck", () => { await expect( adminCheck( updatedUser?._id, - testOrganization ?? ({} as InterfaceOrganization) - ) + testOrganization ?? ({} as InterfaceOrganization), + ), ).resolves.not.toThrowError(); }); @@ -93,7 +93,7 @@ describe("utilities -> adminCheck", () => { { new: true, upsert: true, - } + }, ); const updatedOrganization = await Organization.findOneAndUpdate( @@ -108,7 +108,7 @@ describe("utilities -> adminCheck", () => { { new: true, upsert: true, - } + }, ); const { adminCheck } = await import("../../src/utilities"); @@ -116,8 +116,8 @@ describe("utilities -> adminCheck", () => { await expect( adminCheck( updatedUser?._id, - updatedOrganization ?? ({} as InterfaceOrganization) - ) + updatedOrganization ?? ({} as InterfaceOrganization), + ), ).resolves.not.toThrowError(); }); it("throws error if user is not found with the specific Id", async () => { @@ -131,12 +131,12 @@ describe("utilities -> adminCheck", () => { const { adminCheck } = await import("../../src/utilities"); await adminCheck( new mongoose.Types.ObjectId(), - testOrganization ?? ({} as InterfaceOrganization) + testOrganization ?? ({} as InterfaceOrganization), ); } catch (error: unknown) { if (!(error instanceof ApplicationError)) return; expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, ); } expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); diff --git a/tests/utilities/auth.spec.ts b/tests/utilities/auth.spec.ts index 8c6484844b..4d5512c927 100644 --- a/tests/utilities/auth.spec.ts +++ b/tests/utilities/auth.spec.ts @@ -34,7 +34,7 @@ afterAll(async () => { describe("createAccessToken", () => { it("should create a JWT token with the correct payload", async () => { const token = createAccessToken( - user ? user.toObject() : ({} as InterfaceUser) + user ? user.toObject() : ({} as InterfaceUser), ); expect(token).toBeDefined(); @@ -43,16 +43,16 @@ describe("createAccessToken", () => { expect(decodedToken).not.toBeNull(); expect((decodedToken as InterfaceJwtTokenPayload).tokenVersion).toBe( - user?.tokenVersion + user?.tokenVersion, ); expect((decodedToken as InterfaceJwtTokenPayload).userId).toBe( - user && user._id ? user._id.toString() : undefined + user && user._id ? user._id.toString() : undefined, ); expect((decodedToken as InterfaceJwtTokenPayload).firstName).toBe( - user?.firstName + user?.firstName, ); expect((decodedToken as InterfaceJwtTokenPayload).lastName).toBe( - user?.lastName + user?.lastName, ); expect((decodedToken as InterfaceJwtTokenPayload).email).toBe(user?.email); }); @@ -61,7 +61,7 @@ describe("createAccessToken", () => { describe("createRefreshToken", () => { it("should create a JWT token with the correct payload", () => { const token = createRefreshToken( - user ? user.toObject() : ({} as InterfaceUser) + user ? user.toObject() : ({} as InterfaceUser), ); expect(token).toBeDefined(); @@ -69,16 +69,16 @@ describe("createRefreshToken", () => { const decodedToken = jwt.decode(token); expect((decodedToken as InterfaceJwtTokenPayload).tokenVersion).toBe( - user?.tokenVersion + user?.tokenVersion, ); expect((decodedToken as InterfaceJwtTokenPayload).userId).toBe( - user && user._id ? user._id.toString() : undefined + user && user._id ? user._id.toString() : undefined, ); expect((decodedToken as InterfaceJwtTokenPayload).firstName).toBe( - user?.firstName + user?.firstName, ); expect((decodedToken as InterfaceJwtTokenPayload).lastName).toBe( - user?.lastName + user?.lastName, ); expect((decodedToken as InterfaceJwtTokenPayload).email).toBe(user?.email); }); diff --git a/tests/utilities/createSampleOrganizationUtil.spec.ts b/tests/utilities/createSampleOrganizationUtil.spec.ts index 54d614e23e..eed8450e05 100644 --- a/tests/utilities/createSampleOrganizationUtil.spec.ts +++ b/tests/utilities/createSampleOrganizationUtil.spec.ts @@ -87,7 +87,7 @@ describe("generateUserData function", () => { expect(event.startTime).toEqual(expect.any(Date)); expect(event.endTime).toEqual(expect.any(Date)); expect(event.recurrance).toEqual( - expect.stringMatching(/^(ONCE|DAILY|WEEKLY|MONTHLY|YEARLY)$/) + expect.stringMatching(/^(ONCE|DAILY|WEEKLY|MONTHLY|YEARLY)$/), ); expect(event.isPublic).toEqual(expect.any(Boolean)); expect(event.isRegisterable).toEqual(expect.any(Boolean)); @@ -130,7 +130,7 @@ describe("generatePostData function", () => { const pluginPromises = await generateRandomPlugins( numberOfPlugins, - users.map((user) => user._id.toString()) + users.map((user) => user._id.toString()), ); expect(Array.isArray(pluginPromises)).toBe(true); diff --git a/tests/utilities/deleteDuplicatedImage.spec.ts b/tests/utilities/deleteDuplicatedImage.spec.ts index 5afd061440..ed54af7669 100644 --- a/tests/utilities/deleteDuplicatedImage.spec.ts +++ b/tests/utilities/deleteDuplicatedImage.spec.ts @@ -19,20 +19,20 @@ describe("utilities -> deleteDuplicatedImage", () => { it("should delete duplicated image", () => { vi.spyOn(fs, "unlink").mockImplementationOnce( - (_imagePath: any, callback: any) => callback(null) + (_imagePath: any, callback: any) => callback(null), ); const logSpy = vi.spyOn(logger, "info"); deleteDuplicatedImage(testImagePath); expect(fs.unlink).toBeCalledWith(testImagePath, expect.any(Function)); expect(logSpy).toBeCalledWith( - "File was deleted as it already exists in the db!" + "File was deleted as it already exists in the db!", ); }); it("should throw error", () => { const error = new Error("There was an error deleting the file."); vi.spyOn(fs, "unlink").mockImplementationOnce( - (_imagePath: any, callback: any) => callback(error) + (_imagePath: any, callback: any) => callback(error), ); const logSpy = vi.spyOn(logger, "info"); expect(() => deleteDuplicatedImage(testImagePath)).toThrowError(error); diff --git a/tests/utilities/deleteImage.spec.ts b/tests/utilities/deleteImage.spec.ts index 196b44dc38..7bc62946c4 100644 --- a/tests/utilities/deleteImage.spec.ts +++ b/tests/utilities/deleteImage.spec.ts @@ -51,7 +51,7 @@ describe("utilities -> deleteImage.ts", () => { it("should delete Image when numberOfUser <=1", async () => { vi.spyOn(fs, "unlink").mockImplementationOnce( - (_imagePath: any, callback: any) => callback(null) + (_imagePath: any, callback: any) => callback(null), ); const reuploadUtilities = await import( "../../src/utilities/reuploadDuplicateCheck" @@ -60,7 +60,7 @@ describe("utilities -> deleteImage.ts", () => { vi.spyOn(reuploadUtilities, "reuploadDuplicateCheck").mockImplementation( async () => { return false; - } + }, ); const { logger } = await import("../../src/libraries"); @@ -74,10 +74,10 @@ describe("utilities -> deleteImage.ts", () => { expect(fs.unlink).toBeCalledWith( testImageToBeDeleted, - expect.any(Function) + expect.any(Function), ); expect(logSpy).toBeCalledWith( - "Image is only used once and therefore can be deleted" + "Image is only used once and therefore can be deleted", ); expect(logSpy).toBeCalledWith("File deleted!"); expect(testHashObj?.toObject()).toEqual({ @@ -98,7 +98,7 @@ describe("utilities -> deleteImage.ts", () => { }, { new: true, - } + }, ); const reuploadUtilities = await import( @@ -108,7 +108,7 @@ describe("utilities -> deleteImage.ts", () => { vi.spyOn(reuploadUtilities, "reuploadDuplicateCheck").mockImplementation( async () => { return false; - } + }, ); const { logger } = await import("../../src/libraries"); @@ -141,12 +141,12 @@ describe("utilities -> deleteImage.ts", () => { }, { new: true, - } + }, ); const error = new Error("There was an error deleting the file."); vi.spyOn(fs, "unlink").mockImplementationOnce( - (_imagePath: any, callback: any) => callback(error) + (_imagePath: any, callback: any) => callback(error), ); const reuploadUtilities = await import( @@ -156,7 +156,7 @@ describe("utilities -> deleteImage.ts", () => { vi.spyOn(reuploadUtilities, "reuploadDuplicateCheck").mockImplementation( async () => { return false; - } + }, ); const { logger } = await import("../../src/libraries"); @@ -169,7 +169,7 @@ describe("utilities -> deleteImage.ts", () => { expect(fs.unlink).toBeCalledWith( testImageToBeDeleted, - expect.any(Function) + expect.any(Function), ); expect(logSpy).not.toBeCalled(); } catch (error: unknown) { diff --git a/tests/utilities/encodedImageStorage/uploadEncodedImage.spec.ts b/tests/utilities/encodedImageStorage/uploadEncodedImage.spec.ts index 7d774760b6..ee8d3df7a1 100644 --- a/tests/utilities/encodedImageStorage/uploadEncodedImage.spec.ts +++ b/tests/utilities/encodedImageStorage/uploadEncodedImage.spec.ts @@ -46,20 +46,22 @@ describe("src -> utilities -> encodedImageStorage -> uploadEncodedImage", () => "NAAAAKElEQVQ4jWNgYGD4Twzu6FhFFGYYNXDUwGFpIAk2E4dHDRw1cDgaCAASFOffhEIO" + "3gAAAABJRU5ErkJggg=="; await uploadEncodedImage(img, null); - } catch (error: any) { - expect(error.message).toEqual(`Translated ${INVALID_FILE_TYPE.MESSAGE}`); + } catch (error: unknown) { + expect((error as Error).message).toEqual( + `Translated ${INVALID_FILE_TYPE.MESSAGE}`, + ); expect(spy).toBeCalledWith(INVALID_FILE_TYPE.MESSAGE); } }); it("should not create new image if it is bigger than the limit", async () => { - const size = Number(process.env.IMAGE_SIZE_LIMIT_KB); + const size = Number(process.env.IMAGE_SIZE_LIMIT_KB) || 3000; try { const img = "data:image/jpg;base64," + generateRandomString(size + 1000); await uploadEncodedImage(img, null); - } catch (error: any) { - expect(error.message).toEqual(IMAGE_SIZE_LIMIT_KB.MESSAGE); + } catch (error: unknown) { + expect((error as Error).message).toEqual(IMAGE_SIZE_LIMIT_KB.MESSAGE); } }); @@ -71,7 +73,7 @@ describe("src -> utilities -> encodedImageStorage -> uploadEncodedImage", () => "3gAAAABJRU5ErkJggg=="; const fileName = await uploadEncodedImage(img, null); expect(fileName).not.toBe(null); - } catch (error: any) { + } catch (error: unknown) { console.log(error); } }); @@ -85,7 +87,7 @@ describe("src -> utilities -> encodedImageStorage -> uploadEncodedImage", () => const fileName = await uploadEncodedImage(img, null); expect(fileName).not.toBe(null); testPreviousImagePath = fileName; - } catch (error: any) { + } catch (error: unknown) { console.log(error); } }); @@ -180,7 +182,7 @@ describe("src -> utilities -> encodedImageStorage -> uploadEncodedImage", () => fs.unlink(path.join(__dirname, "../../../".concat(fileName)), (err) => { if (err) throw err; }); - } catch (error: any) { + } catch (error: unknown) { console.log(error); } }); diff --git a/tests/utilities/graphqlConnectionFactory.spec.ts b/tests/utilities/graphqlConnectionFactory.spec.ts index ae220e91f3..53572c6b62 100644 --- a/tests/utilities/graphqlConnectionFactory.spec.ts +++ b/tests/utilities/graphqlConnectionFactory.spec.ts @@ -168,7 +168,7 @@ describe("utilities -> graphqlConnectionFactory -> generateConnectionObject -> F fetchedObjects.slice(0, getLimit(args.limit)), (x) => ({ _id: x._id, - }) + }), ); expect(payload).toMatchObject({ @@ -196,7 +196,7 @@ describe("utilities -> graphqlConnectionFactory -> generateConnectionObject -> F fetchedObjects.slice(0, getLimit(args.limit)), (x) => ({ _id: x._id, - }) + }), ); expect(payload).toMatchObject({ @@ -225,7 +225,7 @@ describe("utilities -> graphqlConnectionFactory -> generateConnectionObject -> F fetchedObjects.slice(1, getLimit(args.limit)), (x) => ({ _id: x._id, - }) + }), ); expect(payload).toMatchObject({ @@ -254,7 +254,7 @@ describe("utilities -> graphqlConnectionFactory -> generateConnectionObject -> F fetchedObjects.slice(1, 1 + getLimit(args.limit)), (x) => ({ _id: x._id, - }) + }), ); expect(payload).toMatchObject({ @@ -309,7 +309,7 @@ describe("utilities -> graphqlConnectionFactory -> generateConnectionObject -> B reversedFetchedObjects.slice(0, getLimit(args.limit)), (x) => ({ _id: x._id, - }) + }), ); expect(payload).toMatchObject({ @@ -337,7 +337,7 @@ describe("utilities -> graphqlConnectionFactory -> generateConnectionObject -> B reversedFetchedObjects.slice(0, getLimit(args.limit)), (x) => ({ _id: x._id, - }) + }), ); expect(payload).toMatchObject({ @@ -366,7 +366,7 @@ describe("utilities -> graphqlConnectionFactory -> generateConnectionObject -> B reversedFetchedObjects.slice(1, getLimit(args.limit)), (x) => ({ _id: x._id, - }) + }), ); expect(payload).toMatchObject({ @@ -395,7 +395,7 @@ describe("utilities -> graphqlConnectionFactory -> generateConnectionObject -> B reversedFetchedObjects.slice(1, 1 + getLimit(args.limit)), (x) => ({ _id: x._id, - }) + }), ); expect(payload).toMatchObject({ diff --git a/tests/utilities/imageAlreadyInDbCheck.spec.ts b/tests/utilities/imageAlreadyInDbCheck.spec.ts index 440b8076b2..7effc340a7 100644 --- a/tests/utilities/imageAlreadyInDbCheck.spec.ts +++ b/tests/utilities/imageAlreadyInDbCheck.spec.ts @@ -106,7 +106,7 @@ describe("utilities -> imageAlreadyInDbCheck", () => { const fileName = await imageAlreadyInDbCheck( testOldImagePath, - testNewImagePath + testNewImagePath, ); expect(fileName).toEqual(testOldImagePath); @@ -153,7 +153,7 @@ describe("utilities -> imageAlreadyInDbCheck", () => { const fileName = await imageAlreadyInDbCheck( testOldImagePath, - testNewImagePath + testNewImagePath, ); const existingImageHash = await ImageHash.findOne({ diff --git a/tests/utilities/mailer.spec.ts b/tests/utilities/mailer.spec.ts index 29c200b163..9eb0372236 100644 --- a/tests/utilities/mailer.spec.ts +++ b/tests/utilities/mailer.spec.ts @@ -44,7 +44,7 @@ describe("utilities -> mailer", () => { .mockImplementationOnce(() => { const mockSendMail = ( _mailOptions: Mail.Options, - callBackFn: (_err: Error | null, _info: object) => void + callBackFn: (_err: Error | null, _info: object) => void, ): any => { return callBackFn(null, mockInfo); }; @@ -64,7 +64,7 @@ describe("utilities -> mailer", () => { .mockImplementationOnce(() => { const mockSendMail = ( _mailOptions: Mail.Options, - callBackFn: (_err: Error | null, _info: object | null) => void + callBackFn: (_err: Error | null, _info: object | null) => void, ): any => { return callBackFn(new Error("rejects Promise"), null); }; diff --git a/tests/utilities/reuploadDuplicateCheck.spec.ts b/tests/utilities/reuploadDuplicateCheck.spec.ts index 52cdd37470..4330de27dd 100644 --- a/tests/utilities/reuploadDuplicateCheck.spec.ts +++ b/tests/utilities/reuploadDuplicateCheck.spec.ts @@ -69,7 +69,7 @@ describe("utilities -> reuploadDuplicateCheck", () => { const reuploadDuplicateCheckPayload = await reuploadDuplicateCheck( testNewImagePathCopy, - testNewImagePath + testNewImagePath, ); expect(reuploadDuplicateCheckPayload).toBe(true); @@ -82,7 +82,7 @@ describe("utilities -> reuploadDuplicateCheck", () => { const reuploadDuplicateCheckPayload = await reuploadDuplicateCheck( null, - testNewImagePath + testNewImagePath, ); expect(reuploadDuplicateCheckPayload).toBe(false); diff --git a/tests/utilities/superAdminCheck.spec.ts b/tests/utilities/superAdminCheck.spec.ts index 780237efbd..acca9a028e 100644 --- a/tests/utilities/superAdminCheck.spec.ts +++ b/tests/utilities/superAdminCheck.spec.ts @@ -45,7 +45,7 @@ describe("utilities -> superAdminCheck", () => { } catch (error: unknown) { if (!(error instanceof Error)) return; expect(error.message).toEqual( - `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}` + `Translated ${USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE}`, ); expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_SUPERADMIN.MESSAGE); } diff --git a/tests/utilities/uploadImage.spec.ts b/tests/utilities/uploadImage.spec.ts index 7562ba6464..21c1a67838 100644 --- a/tests/utilities/uploadImage.spec.ts +++ b/tests/utilities/uploadImage.spec.ts @@ -62,8 +62,8 @@ try { .createReadStream( path.join( __dirname, - "../../public/markdown/images/talawa-logo-lite-200x200.png" - ) + "../../public/markdown/images/talawa-logo-lite-200x200.png", + ), ) .on("error", (error) => { console.log(error); @@ -79,7 +79,7 @@ try { async (oldImagePath: string | null, newImagePath: string) => { console.log(oldImagePath, newImagePath); return ""; - } + }, ); const { uploadImage } = await import("../../src/utilities/uploadImage"); const uploadImagePayload = await uploadImage(pngImage, null); @@ -94,21 +94,21 @@ try { }, { new: true, - } + }, ).lean(); expect(mockedImageAlreadyInDb).toHaveBeenCalledWith( null, - testUserObj?.image + testUserObj?.image, ); expect(uploadImagePayload?.newImagePath).toEqual(testUserObj?.image); fs.unlink( path.join( __dirname, - "../../".concat(uploadImagePayload.newImagePath) + "../../".concat(uploadImagePayload.newImagePath), ), (err) => { if (err) throw err; - } + }, ); } catch (error) { console.log(error); @@ -123,8 +123,8 @@ try { .createReadStream( path.join( __dirname, - "../../public/markdown/images/talawa-logo-lite-200x200.png" - ) + "../../public/markdown/images/talawa-logo-lite-200x200.png", + ), ) .on("error", (err) => { console.log(err); @@ -140,7 +140,7 @@ try { async (oldImagePath: string | null, newImagePath: string) => { console.log(oldImagePath, newImagePath); return newImagePath; - } + }, ); const { uploadImage } = await import("../../src/utilities/uploadImage"); const testUserBeforeObj = await User.findById({ @@ -167,25 +167,25 @@ try { }, { new: true, - } + }, ).lean(); expect(mockedDeleteImage).toBeCalledWith( oldImagePath, - testUserObj?.image + testUserObj?.image, ); expect(mockedImageAlreadyInDb).toHaveBeenCalledWith( oldImagePath, - testUserObj?.image + testUserObj?.image, ); expect(uploadImagePayload?.newImagePath).toEqual(testUserObj?.image); fs.unlink( path.join( __dirname, - "../../".concat(uploadImagePayload.newImagePath) + "../../".concat(uploadImagePayload.newImagePath), ), (err) => { if (err) throw err; - } + }, ); } catch (error) { console.log(error); diff --git a/tests/utilities/userFamilyAdminCheck.spec.ts b/tests/utilities/userFamilyAdminCheck.spec.ts new file mode 100644 index 0000000000..9205f3b33b --- /dev/null +++ b/tests/utilities/userFamilyAdminCheck.spec.ts @@ -0,0 +1,155 @@ +import "dotenv/config"; +import { + afterAll, + afterEach, + beforeAll, + describe, + expect, + it, + vi, +} from "vitest"; +import { connect, disconnect } from "../helpers/db"; +import { USER_NOT_AUTHORIZED_ADMIN } from "../../src/constants"; +import type { + TestUserFamilyType, + TestUserType, +} from "../helpers/userAndUserFamily"; +import { createTestUserAndUserFamily } from "../helpers/userAndUserFamily"; +import { createTestUserFunc } from "../helpers/user"; +import mongoose from "mongoose"; +import type { InterfaceUserFamily } from "../../src/models/userFamily"; +import { User } from "../../src/models"; +import { UserFamily } from "../../src/models/userFamily"; + +let testUser: TestUserType; +let testUserFamily: TestUserFamilyType; +let MONGOOSE_INSTANCE: typeof mongoose; + +beforeAll(async () => { + MONGOOSE_INSTANCE = await connect(); + const userAndUserFamily = await createTestUserAndUserFamily(false, false); + testUser = await createTestUserFunc(); + testUserFamily = userAndUserFamily[1]; +}); + +afterAll(async () => { + await disconnect(MONGOOSE_INSTANCE); +}); + +describe("utilities -> userFamilyAdminCheck", () => { + afterEach(() => { + vi.resetModules(); + }); + + it("throws error if userIsUserFamilyAdmin === false and isUserSuperAdmin === false", async () => { + const { requestContext } = await import("../../src/libraries"); + + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => `Translated ${message}`); + + try { + const { adminCheck } = await import( + "../../src/utilities/userFamilyAdminCheck" + ); + await adminCheck( + testUser?._id, + testUserFamily ?? ({} as InterfaceUserFamily), + ); + } catch (error) { + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, + ); + } + expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); + }); + + it("throws no error if userIsUserFamilyAdmin === false and isUserSuperAdmin === true", async () => { + const updatedUser = await User.findOneAndUpdate( + { + _id: testUser?._id, + }, + { + userType: "SUPERADMIN", + }, + { + new: true, + upsert: true, + }, + ); + + const { adminCheck } = await import( + "../../src/utilities/userFamilyAdminCheck" + ); + + await expect( + adminCheck( + updatedUser?._id, + testUserFamily ?? ({} as InterfaceUserFamily), + ), + ).resolves.not.toThrowError(); + }); + + it("throws no error if user is an admin in that user family but not super admin", async () => { + const updatedUser = await User.findOneAndUpdate( + { + _id: testUser?._id, + }, + { + userType: "USER", + }, + { + new: true, + upsert: true, + }, + ); + + const updatedUserFamily = await UserFamily.findOneAndUpdate( + { + _id: testUserFamily?._id, + }, + { + $push: { + admins: testUser?._id, + }, + }, + { + new: true, + upsert: true, + }, + ); + + const { adminCheck } = await import( + "../../src/utilities/userFamilyAdminCheck" + ); + + await expect( + adminCheck( + updatedUser?._id, + updatedUserFamily ?? ({} as InterfaceUserFamily), + ), + ).resolves.not.toThrowError(); + }); + it("throws error if user is not found with the specific Id", async () => { + const { requestContext } = await import("../../src/libraries"); + + const spy = vi + .spyOn(requestContext, "translate") + .mockImplementationOnce((message) => `Translated ${message}`); + + try { + const { adminCheck } = await import( + "../../src/utilities/userFamilyAdminCheck" + ); + await adminCheck( + new mongoose.Types.ObjectId(), + testUserFamily ?? ({} as InterfaceUserFamily), + ); + } catch (error) { + expect((error as Error).message).toEqual( + `Translated ${USER_NOT_AUTHORIZED_ADMIN.MESSAGE}`, + ); + } + expect(spy).toBeCalledWith(USER_NOT_AUTHORIZED_ADMIN.MESSAGE); + }); +});