From 00572925538aa33e839ca2ef729f2fc69a57692c Mon Sep 17 00:00:00 2001 From: Jeremie Pardou-Piquemal <571533+jrmi@users.noreply.github.com> Date: Tue, 6 Dec 2022 21:41:31 +0100 Subject: [PATCH] Update all dependencies --- .circleci/config.yml | 4 +- build.sh | 8 +- client/.env.dist | 12 +- client/.eslintrc | 7 - client/.eslintrc.cjs | 10 + client/.gitignore | 32 +- client/__mocks__/styles.js | 1 - client/index.html | 17 + client/jsconfig.json | 1 + client/package.json | 93 +- client/public/index.html | 42 - client/src/actions/app.test.js | 6 +- client/src/actions/encrypted_messages.js | 4 +- client/src/actions/encrypted_messages.test.js | 26 +- client/src/actions/unencrypted_messages.js | 4 +- .../src/actions/unencrypted_messages.test.js | 39 +- client/src/api/config.js | 20 +- .../About/{About.test.js => About.test.jsx} | 16 +- ...About.test.js.snap => About.test.jsx.snap} | 8 +- .../components/About/{index.js => index.jsx} | 11 +- .../src/components/Chat/{Chat.js => Chat.jsx} | 11 +- .../Chat/{Chat.test.js => Chat.test.jsx} | 25 +- .../{Chat.test.js.snap => Chat.test.jsx.snap} | 6 +- .../components/Chat/{index.js => index.jsx} | 2 +- ...Connecting.test.js => Connecting.test.jsx} | 1 + ....test.js.snap => Connecting.test.jsx.snap} | 2 +- .../Connecting/{index.js => index.jsx} | 0 .../{FileTransfer.js => FileTransfer.jsx} | 15 +- ...Transfer.test.js => FileTransfer.test.jsx} | 7 +- ...est.js.snap => FileTransfer.test.jsx.snap} | 6 +- .../FileTransfer/{index.js => index.jsx} | 0 .../Home/{Activity.js => Activity.jsx} | 13 +- .../{Activity.test.js => Activity.test.jsx} | 38 +- .../{ActivityList.js => ActivityList.jsx} | 7 +- ...vityList.test.js => ActivityList.test.jsx} | 42 +- .../src/components/Home/{Home.js => Home.jsx} | 31 +- .../Home/{Home.test.js => Home.test.jsx} | 52 +- ...tion.js => WithNewMessageNotification.jsx} | 5 +- ...ty.test.js.snap => Activity.test.jsx.snap} | 32 +- ...est.js.snap => ActivityList.test.jsx.snap} | 20 +- .../Home/__snapshots__/Home.test.js.snap | 365 - .../Home/__snapshots__/Home.test.jsx.snap | 128 + ...index.test.js.snap => index.test.jsx.snap} | 16 +- .../components/Home/{index.js => index.jsx} | 16 +- .../Home/{index.test.js => index.test.jsx} | 123 +- .../{Message.test.js => Message.test.jsx} | 1 + ...age.test.js.snap => Message.test.jsx.snap} | 8 +- .../Message/{index.js => index.jsx} | 3 +- .../Nav/{Nav.test.js => Nav.test.jsx} | 51 +- .../{Nav.test.js.snap => Nav.test.jsx.snap} | 18 +- .../components/Nav/{index.js => index.jsx} | 14 +- .../{Notice.test.js => Notice.test.jsx} | 1 + ...tice.test.js.snap => Notice.test.jsx.snap} | 2 +- .../components/Notice/{index.js => index.jsx} | 0 .../{RoomLink.test.js => RoomLink.test.jsx} | 36 +- ...nk.test.js.snap => RoomLink.test.jsx.snap} | 8 +- .../RoomLink/{index.js => index.jsx} | 0 ...RoomLocked.test.js => RoomLocked.test.jsx} | 1 + ....test.js.snap => RoomLocked.test.jsx.snap} | 2 +- .../RoomLocked/{index.js => index.jsx} | 0 .../{Settings.test.js => Settings.test.jsx} | 51 +- ...gs.test.js.snap => Settings.test.jsx.snap} | 20 +- .../Settings/{index.js => index.jsx} | 10 +- client/src/components/T/{T.js => T.jsx} | 3 +- .../components/T/{T.test.js => T.test.jsx} | 3 +- .../{T.test.js.snap => T.test.jsx.snap} | 2 +- .../src/components/T/{index.js => index.jsx} | 2 +- .../{Username.test.js => Username.test.jsx} | 1 + ...me.test.js.snap => Username.test.jsx.snap} | 2 +- .../Username/{index.js => index.jsx} | 0 .../{Welcome.test.js => Welcome.test.jsx} | 3 + .../__snapshots__/Welcome.test.js.snap | 106 - .../__snapshots__/Welcome.test.jsx.snap | 54 + .../Welcome/{index.js => index.jsx} | 2 +- client/src/config/env.js | 5 +- client/src/i18n/i18n.test.js | 4 +- client/src/i18n/index.js | 4 +- client/src/index.js | 13 - client/src/index.test.js | 5 - client/src/main.tsx | 52 + client/src/reducers/activities.js | 7 +- client/src/reducers/activities.test.js | 2 + client/src/reducers/app.js | 3 +- client/src/reducers/app.test.js | 10 +- client/src/reducers/index.js | 1 + client/src/reducers/room.js | 1 + client/src/reducers/room.test.js | 2 + client/src/reducers/user.test.js | 6 +- client/src/{root.js => root.jsx} | 2 +- client/src/serviceWorker.js | 6 +- client/src/setupTests.js | 20 +- client/src/store/index.js | 14 +- .../{postcss.config.js => postcss.config.jsx} | 0 client/src/test/setup.js | 5 - client/src/utils/dom.js | 1 - client/src/utils/file.js | 1 - client/src/utils/index.js | 1 - client/src/utils/message.js | 203 +- client/src/utils/notifications.js | 21 +- client/src/utils/socket.js | 2 +- client/src/vite-env.d.ts | 1 + client/tsconfig.json | 21 + client/tsconfig.node.json | 9 + client/vite.config.ts | 21 + client/yarn.lock | 12988 +++------------- package.json | 4 +- server/.babelrc | 4 - server/.env.dist | 4 +- server/.eslintrc | 5 +- server/build.sh | 3 - server/package.json | 41 +- server/src/inactive_rooms.js | 2 +- server/src/index.js | 33 +- server/src/socket.js | 24 +- server/src/store/Redis.js | 42 - server/src/store/index.js | 11 +- server/src/utils/mailer.js | 16 +- server/yarn.lock | 6282 ++------ yarn.lock | 174 +- 119 files changed, 4948 insertions(+), 16856 deletions(-) delete mode 100644 client/.eslintrc create mode 100644 client/.eslintrc.cjs delete mode 100644 client/__mocks__/styles.js create mode 100644 client/index.html delete mode 100644 client/public/index.html rename client/src/components/About/{About.test.js => About.test.jsx} (80%) rename client/src/components/About/__snapshots__/{About.test.js.snap => About.test.jsx.snap} (99%) rename client/src/components/About/{index.js => index.jsx} (98%) rename client/src/components/Chat/{Chat.js => Chat.jsx} (96%) rename client/src/components/Chat/{Chat.test.js => Chat.test.jsx} (91%) rename client/src/components/Chat/__snapshots__/{Chat.test.js.snap => Chat.test.jsx.snap} (86%) rename client/src/components/Chat/{index.js => index.jsx} (95%) rename client/src/components/Connecting/{Connecting.test.js => Connecting.test.jsx} (86%) rename client/src/components/Connecting/__snapshots__/{Connecting.test.js.snap => Connecting.test.jsx.snap} (80%) rename client/src/components/Connecting/{index.js => index.jsx} (100%) rename client/src/components/FileTransfer/{FileTransfer.js => FileTransfer.jsx} (91%) rename client/src/components/FileTransfer/{FileTransfer.test.js => FileTransfer.test.jsx} (92%) rename client/src/components/FileTransfer/__snapshots__/{FileTransfer.test.js.snap => FileTransfer.test.jsx.snap} (80%) rename client/src/components/FileTransfer/{index.js => index.jsx} (100%) rename client/src/components/Home/{Activity.js => Activity.jsx} (94%) rename client/src/components/Home/{Activity.test.js => Activity.test.jsx} (79%) rename client/src/components/Home/{ActivityList.js => ActivityList.jsx} (97%) rename client/src/components/Home/{ActivityList.test.js => ActivityList.test.jsx} (75%) rename client/src/components/Home/{Home.js => Home.jsx} (93%) rename client/src/components/Home/{Home.test.js => Home.test.jsx} (67%) rename client/src/components/Home/{WithNewMessageNotification.js => WithNewMessageNotification.jsx} (98%) rename client/src/components/Home/__snapshots__/{Activity.test.js.snap => Activity.test.jsx.snap} (81%) rename client/src/components/Home/__snapshots__/{ActivityList.test.js.snap => ActivityList.test.jsx.snap} (91%) delete mode 100644 client/src/components/Home/__snapshots__/Home.test.js.snap create mode 100644 client/src/components/Home/__snapshots__/Home.test.jsx.snap rename client/src/components/Home/__snapshots__/{index.test.js.snap => index.test.jsx.snap} (96%) rename client/src/components/Home/{index.js => index.jsx} (82%) rename client/src/components/Home/{index.test.js => index.test.jsx} (74%) rename client/src/components/Message/{Message.test.js => Message.test.jsx} (89%) rename client/src/components/Message/__snapshots__/{Message.test.js.snap => Message.test.jsx.snap} (76%) rename client/src/components/Message/{index.js => index.jsx} (94%) rename client/src/components/Nav/{Nav.test.js => Nav.test.jsx} (91%) rename client/src/components/Nav/__snapshots__/{Nav.test.js.snap => Nav.test.jsx.snap} (97%) rename client/src/components/Nav/{index.js => index.jsx} (95%) rename client/src/components/Notice/{Notice.test.js => Notice.test.jsx} (88%) rename client/src/components/Notice/__snapshots__/{Notice.test.js.snap => Notice.test.jsx.snap} (82%) rename client/src/components/Notice/{index.js => index.jsx} (100%) rename client/src/components/RoomLink/{RoomLink.test.js => RoomLink.test.jsx} (73%) rename client/src/components/RoomLink/__snapshots__/{RoomLink.test.js.snap => RoomLink.test.jsx.snap} (87%) rename client/src/components/RoomLink/{index.js => index.jsx} (100%) rename client/src/components/RoomLocked/{RoomLocked.test.js => RoomLocked.test.jsx} (87%) rename client/src/components/RoomLocked/__snapshots__/{RoomLocked.test.js.snap => RoomLocked.test.jsx.snap} (74%) rename client/src/components/RoomLocked/{index.js => index.jsx} (100%) rename client/src/components/Settings/{Settings.test.js => Settings.test.jsx} (79%) rename client/src/components/Settings/__snapshots__/{Settings.test.js.snap => Settings.test.jsx.snap} (95%) rename client/src/components/Settings/{index.js => index.jsx} (97%) rename client/src/components/T/{T.js => T.jsx} (94%) rename client/src/components/T/{T.test.js => T.test.jsx} (92%) rename client/src/components/T/__snapshots__/{T.test.js.snap => T.test.jsx.snap} (93%) rename client/src/components/T/{index.js => index.jsx} (79%) rename client/src/components/Username/{Username.test.js => Username.test.jsx} (87%) rename client/src/components/Username/__snapshots__/{Username.test.js.snap => Username.test.jsx.snap} (81%) rename client/src/components/Username/{index.js => index.jsx} (100%) rename client/src/components/Welcome/{Welcome.test.js => Welcome.test.jsx} (79%) delete mode 100644 client/src/components/Welcome/__snapshots__/Welcome.test.js.snap create mode 100644 client/src/components/Welcome/__snapshots__/Welcome.test.jsx.snap rename client/src/components/Welcome/{index.js => index.jsx} (97%) delete mode 100644 client/src/index.js delete mode 100644 client/src/index.test.js create mode 100644 client/src/main.tsx rename client/src/{root.js => root.jsx} (96%) rename client/src/stylesheets/{postcss.config.js => postcss.config.jsx} (100%) delete mode 100644 client/src/test/setup.js create mode 100644 client/src/vite-env.d.ts create mode 100644 client/tsconfig.json create mode 100644 client/tsconfig.node.json create mode 100644 client/vite.config.ts delete mode 100644 server/.babelrc delete mode 100755 server/build.sh delete mode 100644 server/src/store/Redis.js diff --git a/.circleci/config.yml b/.circleci/config.yml index 9710162..317616a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -4,7 +4,7 @@ jobs: test-job: docker: - - image: "circleci/node:lts" + - image: "cimg/node:lts" working_directory: ~/repo @@ -33,7 +33,7 @@ jobs: command: yarn test environment: TZ: UTC - REACT_APP_COMMIT_SHA: some_sha + VITE_COMMIT_SHA: some_sha - store_artifacts: # For coverage report path: client/coverage diff --git a/build.sh b/build.sh index 5a4972d..8992a82 100755 --- a/build.sh +++ b/build.sh @@ -10,10 +10,10 @@ fi echo "building client..." cd client yarn --production=false -REACT_APP_COMMIT_SHA=$SOURCE_VERSION \ -REACT_APP_API_HOST=$api_host \ -REACT_APP_API_PROTOCOL=$API_PROTOCOL \ -REACT_APP_API_PORT=$API_PORT \ +VITE_COMMIT_SHA=$SOURCE_VERSION \ +VITE_API_HOST=$api_host \ +VITE_API_PROTOCOL=$API_PROTOCOL \ +VITE_API_PORT=$API_PORT \ yarn build cd ../ diff --git a/client/.env.dist b/client/.env.dist index f577e32..311bb67 100644 --- a/client/.env.dist +++ b/client/.env.dist @@ -1,14 +1,14 @@ # Api settings TZ=UTC -REACT_APP_API_HOST=localhost -REACT_APP_API_PROTOCOL=http -REACT_APP_API_PORT=3001 -REACT_APP_COMMIT_SHA=some_sha +VITE_API_HOST=localhost +VITE_API_PROTOCOL=http +VITE_API_PORT=3001 +VITE_COMMIT_SHA=some_sha # To display darkwire version -REACT_APP_COMMIT_SHA=some_sha +VITE_COMMIT_SHA=some_sha # Set max transferable file size in MB -REACT_APP_MAX_FILE_SIZE=4 +VITE_MAX_FILE_SIZE=4 diff --git a/client/.eslintrc b/client/.eslintrc deleted file mode 100644 index e96799e..0000000 --- a/client/.eslintrc +++ /dev/null @@ -1,7 +0,0 @@ -{ - "extends": ["plugin:prettier/recommended"], - "parser": "babel-eslint", - "rules": { - "prettier/prettier": "error" - } -} diff --git a/client/.eslintrc.cjs b/client/.eslintrc.cjs new file mode 100644 index 0000000..6815699 --- /dev/null +++ b/client/.eslintrc.cjs @@ -0,0 +1,10 @@ +module.exports = { + extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended'], + parser: '@typescript-eslint/parser', + plugins: ['@typescript-eslint'], + root: true, + env: { + browser: true, + node: true, + }, +}; diff --git a/client/.gitignore b/client/.gitignore index e2178dd..c7f41f7 100644 --- a/client/.gitignore +++ b/client/.gitignore @@ -1,9 +1,25 @@ -node_modules -.DS_Store -dist -coverage +# Logs +logs *.log -.env* -!.env.example -build/ -*sublime* \ No newline at end of file +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist/ +dist-ssr +*.local +coverage + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/client/__mocks__/styles.js b/client/__mocks__/styles.js deleted file mode 100644 index f053ebf..0000000 --- a/client/__mocks__/styles.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/client/index.html b/client/index.html new file mode 100644 index 0000000..712990b --- /dev/null +++ b/client/index.html @@ -0,0 +1,17 @@ + + +
+ + + + + + + +Commit SHA:{' '} - - {process.env.REACT_APP_COMMIT_SHA} + + {COMMIT_SHA}
diff --git a/client/src/components/Chat/Chat.js b/client/src/components/Chat/Chat.jsx similarity index 96% rename from client/src/components/Chat/Chat.js rename to client/src/components/Chat/Chat.jsx index 9790b44..92e0b27 100644 --- a/client/src/components/Chat/Chat.js +++ b/client/src/components/Chat/Chat.jsx @@ -1,12 +1,11 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import sanitizeHtml from 'sanitize-html'; -import FileTransfer from 'components/FileTransfer'; import { CornerDownRight } from 'react-feather'; -import { getSelectedText, hasTouchSupport } from '../../utils/dom'; -// Disable for now -// import autosize from 'autosize' +import { getSelectedText, hasTouchSupport } from '@/utils/dom'; + +import FileTransfer from '@/components/FileTransfer'; export class Chat extends Component { constructor(props) { @@ -21,14 +20,14 @@ export class Chat extends Component { { command: 'nick', description: 'Changes nickname.', - paramaters: ['{username}'], + parameters: ['{username}'], usage: '/nick {username}', scope: 'global', action: params => { // eslint-disable-line let newUsername = params.join(' ') || ''; // eslint-disable-line - // Remove things that arent digits or chars + // Remove things that aren't digits or chars newUsername = newUsername.replace(/[^A-Za-z0-9]/g, '-'); const errors = []; diff --git a/client/src/components/Chat/Chat.test.js b/client/src/components/Chat/Chat.test.jsx similarity index 91% rename from client/src/components/Chat/Chat.test.js rename to client/src/components/Chat/Chat.test.jsx index b14a717..f38527d 100644 --- a/client/src/components/Chat/Chat.test.js +++ b/client/src/components/Chat/Chat.test.jsx @@ -1,19 +1,20 @@ import React from 'react'; import { render, screen, fireEvent } from '@testing-library/react'; +import { describe, it, expect, vi, afterEach } from 'vitest'; -import { Chat } from './Chat'; +import { Chat } from '@/components/Chat/Chat'; -import * as dom from 'utils/dom'; +import * as dom from '@/utils/dom'; const translations = { typePlaceholder: 'inputplaceholder', }; // Fake date -jest.spyOn(global.Date, 'now').mockImplementation(() => new Date('2020-03-14T11:01:58.135Z').valueOf()); +vi.spyOn(global.Date, 'now').mockImplementation(() => new Date('2020-03-14T11:01:58.135Z').valueOf()); // To change touch support -jest.mock('../../utils/dom'); +vi.mock('@/utils/dom'); describe('Chat component', () => { afterEach(() => { @@ -39,7 +40,7 @@ describe('Chat component', () => { }); it('can send message', () => { - const sendEncryptedMessage = jest.fn(); + const sendEncryptedMessage = vi.fn(); render(