From 975c7659c1fc7ffde3d432d8f44fc1b80ba486ed Mon Sep 17 00:00:00 2001 From: Pascal Holy Date: Tue, 29 Jun 2021 14:57:37 +0200 Subject: [PATCH 01/96] Bump version to 0.26.0-alpha --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index d21d277be5..eae71f7ff0 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.25.0 +0.26.0-alpha From bc6bdcb3e3c41277646ce092406dc758220f8418 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Jun 2021 15:34:03 +0200 Subject: [PATCH 02/96] Bump copy-webpack-plugin from 9.0.0 to 9.0.1 (#2059) Bumps [copy-webpack-plugin](https://github.com/webpack-contrib/copy-webpack-plugin) from 9.0.0 to 9.0.1. - [Release notes](https://github.com/webpack-contrib/copy-webpack-plugin/releases) - [Changelog](https://github.com/webpack-contrib/copy-webpack-plugin/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/copy-webpack-plugin/compare/v9.0.0...v9.0.1) --- updated-dependencies: - dependency-name: copy-webpack-plugin dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 19 +++++++++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index f09d4ee17e..db00273b74 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "@typescript-eslint/eslint-plugin": "^4.28.0", "@typescript-eslint/parser": "^4.28.0", "babel-loader": "^8.0.6", - "copy-webpack-plugin": "^9.0.0", + "copy-webpack-plugin": "^9.0.1", "css-loader": "^5.2.6", "cypress": "^7.6.0", "eslint": "^7.29.0", diff --git a/yarn.lock b/yarn.lock index 9f5602109a..0fae942c3b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2580,10 +2580,10 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= -copy-webpack-plugin@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-9.0.0.tgz#2bf592785d2fcdde9342dfed3676490fe0aa7ce8" - integrity sha512-k8UB2jLIb1Jip2nZbCz83T/XfhfjX6mB1yLJNYKrpYi7FQimfOoFv/0//iT6HV1K8FwUB5yUbCcnpLebJXJTug== +copy-webpack-plugin@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-9.0.1.tgz#b71d21991599f61a4ee00ba79087b8ba279bbb59" + integrity sha512-14gHKKdYIxF84jCEgPgYXCPpldbwpxxLbCmA7LReY7gvbaT555DgeBWBgBZM116tv/fO6RRJrsivBqRyRlukhw== dependencies: fast-glob "^3.2.5" glob-parent "^6.0.0" @@ -2591,7 +2591,7 @@ copy-webpack-plugin@^9.0.0: normalize-path "^3.0.0" p-limit "^3.1.0" schema-utils "^3.0.0" - serialize-javascript "^5.0.1" + serialize-javascript "^6.0.0" core-js-compat@^3.15.0, core-js-compat@^3.9.1: version "3.15.0" @@ -6524,6 +6524,13 @@ serialize-javascript@^5.0.1: dependencies: randombytes "^2.1.0" +serialize-javascript@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== + dependencies: + randombytes "^2.1.0" + serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" @@ -6897,7 +6904,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@^3.0.0, strip-ansi@^3.0.1: +strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= From ea51661379b3cfcfb622337696f75a61517945fb Mon Sep 17 00:00:00 2001 From: Christoph Proeschel Date: Tue, 29 Jun 2021 20:53:51 +0200 Subject: [PATCH 03/96] [#1819] Add Airy favicon (#2067) --- .github/workflows/main.yml | 5 ++++- WORKSPACE | 4 ++-- frontend/ui/development.html | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3863188de0..0ac9c18dbc 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -57,10 +57,12 @@ jobs: run: | echo ${{ secrets.PAT }} | docker login ghcr.io -u airydevci --password-stdin ./scripts/push-images.sh + - name: Install aws cli uses: chrislennon/action-aws-cli@v1.1 env: ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true' + - name: Upload airy binary to S3 if: ${{ github.ref == 'refs/heads/develop' || startsWith(github.ref, 'refs/heads/release') || github.ref == 'refs/heads/main' }} run: | @@ -69,6 +71,7 @@ jobs: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} GITHUB_BRANCH: ${{ github.ref }} + - name: Publish http-client library to npm if: ${{ startsWith(github.ref, 'refs/heads/main') }} run: | @@ -78,6 +81,7 @@ jobs: DEPLOY_NPM_USERNAME: ${{ secrets.DEPLOY_NPM_USERNAME }} DEPLOY_NPM_PASSWORD: ${{ secrets.DEPLOY_NPM_PASSWORD }} DEPLOY_NPM_EMAIL: ${{ secrets.DEPLOY_NPM_EMAIL }} + - name: Publish chat-plugin library to npm if: ${{ startsWith(github.ref, 'refs/heads/main') }} run: | @@ -87,4 +91,3 @@ jobs: DEPLOY_NPM_USERNAME: ${{ secrets.DEPLOY_NPM_USERNAME }} DEPLOY_NPM_PASSWORD: ${{ secrets.DEPLOY_NPM_PASSWORD }} DEPLOY_NPM_EMAIL: ${{ secrets.DEPLOY_NPM_EMAIL }} - GITHUB_BRANCH: ${{ github.ref }} diff --git a/WORKSPACE b/WORKSPACE index 8c9c8083c3..6ff1528c41 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -9,9 +9,9 @@ load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository") # Airy Bazel tools git_repository( name = "com_github_airyhq_bazel_tools", - commit = "b4f52101d80c342ff5e4734fb4c4385af921ffec", + commit = "e98260f68ababf484bba4f1b8c1ab60587749a60", remote = "https://github.com/airyhq/bazel-tools.git", - shallow_since = "1624959927 +0200", + shallow_since = "1624977577 +0200", ) load("@com_github_airyhq_bazel_tools//:repositories.bzl", "airy_bazel_tools_dependencies", "airy_jvm_deps") diff --git a/frontend/ui/development.html b/frontend/ui/development.html index c8ab837a69..375b074077 100644 --- a/frontend/ui/development.html +++ b/frontend/ui/development.html @@ -3,7 +3,7 @@ Airy UI - + From 671296fca9d902a2582cedccd09e4b37a43743f6 Mon Sep 17 00:00:00 2001 From: AudreyKj <38159391+AudreyKj@users.noreply.github.com> Date: Wed, 30 Jun 2021 12:14:32 +0200 Subject: [PATCH 04/96] [#2060] fixed edit of text templates (#2068) --- frontend/ui/src/pages/Inbox/MessageInput/index.tsx | 2 +- frontend/ui/src/services/types/messageTypes.ts | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/frontend/ui/src/pages/Inbox/MessageInput/index.tsx b/frontend/ui/src/pages/Inbox/MessageInput/index.tsx index df033d9820..3925ac7e03 100644 --- a/frontend/ui/src/pages/Inbox/MessageInput/index.tsx +++ b/frontend/ui/src/pages/Inbox/MessageInput/index.tsx @@ -254,7 +254,7 @@ const MessageInput = (props: MessageInputProps & ConnectedProps { - const jsonTemplate = template.content; + const jsonTemplate = template.content.message; if (selectedTemplate) setSelectedTemplate(null); diff --git a/frontend/ui/src/services/types/messageTypes.ts b/frontend/ui/src/services/types/messageTypes.ts index 32e065291b..b493187f2b 100644 --- a/frontend/ui/src/services/types/messageTypes.ts +++ b/frontend/ui/src/services/types/messageTypes.ts @@ -1,13 +1,15 @@ import {Content} from 'model'; export const isTextMessage = (content: Content) => { + const message = content.content.message ?? content.content; if ( - content.content.text && - !content.content.suggestions && - !content.content.quick_replies && - !content.content.containsRichText && - !content.content.attachments && - !content.content.attachment + message.text && + !message.containsRichText && + !message.suggestions && + !message.quick_replies && + !message.containsRichText && + !message.attachments && + !message.attachment ) { return true; } From f9cc6db83e389d6eb19bfe2d27c64ffec577b33d Mon Sep 17 00:00:00 2001 From: Thorsten Date: Wed, 30 Jun 2021 13:29:18 +0200 Subject: [PATCH 05/96] [#2056] Added first transition and animations (#2066) --- .../ui/src/assets/animations/animations.scss | 47 ++++++ frontend/ui/src/assets/animations/index.ts | 12 ++ .../ConversationListItem/index.module.scss | 5 +- .../Inbox/MessageInput/index.module.scss | 1 + .../ConversationMetadata/index.module.scss | 9 ++ .../Messenger/ConversationMetadata/index.tsx | 150 +++++++++--------- .../pages/Inbox/QuickFilter/index.module.scss | 1 + 7 files changed, 152 insertions(+), 73 deletions(-) create mode 100644 frontend/ui/src/assets/animations/animations.scss create mode 100644 frontend/ui/src/assets/animations/index.ts diff --git a/frontend/ui/src/assets/animations/animations.scss b/frontend/ui/src/assets/animations/animations.scss new file mode 100644 index 0000000000..a8a770a042 --- /dev/null +++ b/frontend/ui/src/assets/animations/animations.scss @@ -0,0 +1,47 @@ +@keyframes fadeIn { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} + +@keyframes fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} + +@keyframes fadeInTranslateXLeft { + from { + opacity: 0; + } + from { + transform: translateX(-100px); + } + to { + opacity: 1; + } + to { + transform: translateX(0px); + } +} + +@keyframes fadeOutTranslateXLeft { + from { + opacity: 1; + } + from { + transform: translateX(0px); + } + to { + opacity: 0; + } + to { + transform: translateX(-100px); + } +} diff --git a/frontend/ui/src/assets/animations/index.ts b/frontend/ui/src/assets/animations/index.ts new file mode 100644 index 0000000000..02b548b4de --- /dev/null +++ b/frontend/ui/src/assets/animations/index.ts @@ -0,0 +1,12 @@ +import {Dispatch, SetStateAction} from 'react'; + +export const useAnimation = ( + useState: Dispatch>, + currentState: boolean, + fadeState: Dispatch>, + timeOut: number +) => { + setTimeout(() => useState(!currentState), timeOut); + setTimeout(() => fadeState(true), timeOut); + fadeState(false); +}; diff --git a/frontend/ui/src/pages/Inbox/ConversationListItem/index.module.scss b/frontend/ui/src/pages/Inbox/ConversationListItem/index.module.scss index 39683a8734..4b23d72a23 100644 --- a/frontend/ui/src/pages/Inbox/ConversationListItem/index.module.scss +++ b/frontend/ui/src/pages/Inbox/ConversationListItem/index.module.scss @@ -13,7 +13,9 @@ padding: 16px 8px 0 16px; display: flex; flex-direction: row; - border: 1px solid rgba(0, 0, 0, 0); + border: 1px solid transparent; + border-radius: 8px; + transition: background 400ms, border 400ms; } .containerListItem.unread { @@ -27,6 +29,7 @@ } .containerListItemActive { + @extend .containerListItem; padding: 16px 8px 16px 16px; display: flex; flex-direction: row; diff --git a/frontend/ui/src/pages/Inbox/MessageInput/index.module.scss b/frontend/ui/src/pages/Inbox/MessageInput/index.module.scss index 0fe696c195..23e7adaef9 100644 --- a/frontend/ui/src/pages/Inbox/MessageInput/index.module.scss +++ b/frontend/ui/src/pages/Inbox/MessageInput/index.module.scss @@ -129,6 +129,7 @@ color: #000; border-radius: 50%; padding: 10px 7px 10px 11px; + transition: background 400ms; } .sendButtonActive .sendButtonText { diff --git a/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.module.scss b/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.module.scss index 8b702ad572..cb860abf53 100644 --- a/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.module.scss +++ b/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.module.scss @@ -1,5 +1,6 @@ @import 'assets/scss/colors.scss'; @import 'assets/scss/fonts.scss'; +@import '../../../../assets/animations/animations.scss'; .content { display: flex; @@ -157,3 +158,11 @@ .addTagsButtonRow { margin: 8px 0; } + +.fadeInAnimation { + animation: fadeInTranslateXLeft 500ms ease; +} + +.fadeOutAnimation { + animation: fadeOutTranslateXLeft 500ms ease; +} diff --git a/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.tsx b/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.tsx index 191e0ffabf..c3096dcddf 100644 --- a/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.tsx +++ b/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.tsx @@ -10,6 +10,7 @@ import {Avatar} from 'render'; import ColorSelector from '../../../../components/ColorSelector'; import Dialog from '../../../../components/Dialog'; import {StateModel} from '../../../../reducers'; +import {useAnimation} from '../../../../assets/animations'; import styles from './index.module.scss'; import Tag from '../../../../components/Tag'; @@ -48,6 +49,7 @@ const ConversationMetadata = (props: ConnectedProps) => { const [tagName, setTagName] = useState(''); const [showEditDisplayName, setShowEditDisplayName] = useState(false); const [displayName, setDisplayName] = useState(conversation.metadata.contact.displayName); + const [fade, setFade] = useState(true); useEffect(() => { setShowEditDisplayName(false); @@ -121,8 +123,8 @@ const ConversationMetadata = (props: ConnectedProps) => { }; const cancelEditDisplayName = () => { - setShowEditDisplayName(!showEditDisplayName); setDisplayName(conversation.metadata.contact.displayName); + useAnimation(setShowEditDisplayName, showEditDisplayName, setFade, 400); }; const editDisplayName = () => { @@ -133,58 +135,60 @@ const ConversationMetadata = (props: ConnectedProps) => { const filteredTags = getFilteredTags(); return ( - setShowTagsDialog(false)}> -
- ) => { - setTagName(e.target.value); - }} - height={32} - value={tagName} - name="tag_name" - placeholder="Please enter a tag name" - autoComplete="off" - autoFocus - fontClass="font-base" - minLength={1} - maxLength={50} - validation={checkIfExists} - showErrors - dataCy={cyTagsDialogInput} - /> - {filteredTags.length > 0 ? ( - filteredTags.map(tag => { - return ( -
-
- +
+ useAnimation(setShowTagsDialog, showTagsDialog, setFade, 400)}> + + ) => { + setTagName(e.target.value); + }} + height={32} + value={tagName} + name="tag_name" + placeholder="Please enter a tag name" + autoComplete="off" + autoFocus + fontClass="font-base" + minLength={1} + maxLength={50} + validation={checkIfExists} + showErrors + dataCy={cyTagsDialogInput} + /> + {filteredTags.length > 0 ? ( + filteredTags.map(tag => { + return ( +
+
+ +
+ addTag(tag)}> + Add +
- addTag(tag)}> - Add - + ); + }) + ) : ( +
+ {tagName.length > 0 && } +

Pick a color

+ ) => setColor(e.target.value as TagColor)} + color={color} + editing + /> +
+
- ); - }) - ) : ( -
- {tagName.length > 0 && } -

Pick a color

- ) => setColor(e.target.value as TagColor)} - color={color} - editing - /> -
-
-
- )} - -
+ )} + +
+ ); }; @@ -199,28 +203,30 @@ const ConversationMetadata = (props: ConnectedProps) => {
{showEditDisplayName ? ( -
- ) => setDisplayName(event.target.value)} - height={32} - fontClass="font-base" - minLength={1} - maxLength={50} - label="Set Name" - /> -
- - +
+
+ ) => setDisplayName(event.target.value)} + height={32} + fontClass="font-base" + minLength={1} + maxLength={50} + label="Set Name" + /> +
+ + +
) : ( diff --git a/frontend/ui/src/pages/Inbox/QuickFilter/index.module.scss b/frontend/ui/src/pages/Inbox/QuickFilter/index.module.scss index a2d2a262d5..73a400416f 100644 --- a/frontend/ui/src/pages/Inbox/QuickFilter/index.module.scss +++ b/frontend/ui/src/pages/Inbox/QuickFilter/index.module.scss @@ -28,6 +28,7 @@ width: 80px; border: 1px solid transparent; cursor: pointer; + transition: background 400ms, border 400ms; } .quickFilterButtonActive { From 4a87750b1524bb97ea964b6045a95a6b4aeb9e1f Mon Sep 17 00:00:00 2001 From: AudreyKj <38159391+AudreyKj@users.noreply.github.com> Date: Wed, 30 Jun 2021 15:03:30 +0200 Subject: [PATCH 06/96] [#1391] Cypress test for suggested replies (#2057) * test for suggested reply * fixed wrong import * fixed selectors * fixed selector * fixed selector --- frontend/ui/handles/index.ts | 2 ++ .../ui/src/pages/Inbox/MessageInput/index.tsx | 8 +++-- .../Inbox/SuggestedReplySelector/index.tsx | 3 +- integration/cypress.json | 5 ++- integration/ui/suggested_replies.spec.ts | 36 +++++++++++++++++++ 5 files changed, 48 insertions(+), 6 deletions(-) create mode 100644 integration/ui/suggested_replies.spec.ts diff --git a/frontend/ui/handles/index.ts b/frontend/ui/handles/index.ts index 2faca55454..101ff1660a 100644 --- a/frontend/ui/handles/index.ts +++ b/frontend/ui/handles/index.ts @@ -34,3 +34,5 @@ export const cyChannelsChatPluginConnectButton = 'channelsChatPluginConnectButto export const cyChannelsChatPluginFormNameInput = 'channelsChatPluginFormNameInput'; export const cyChannelsChatPluginFormSubmitButton = 'channelsChatPluginFormSubmitButton'; export const cyChannelsFormBackButton = 'channelsFormBackButton'; +export const cySuggestionsButton = 'suggestionsButton'; +export const cySuggestionsList = 'suggestionsList'; diff --git a/frontend/ui/src/pages/Inbox/MessageInput/index.tsx b/frontend/ui/src/pages/Inbox/MessageInput/index.tsx index 3925ac7e03..cb6d1bb6b9 100644 --- a/frontend/ui/src/pages/Inbox/MessageInput/index.tsx +++ b/frontend/ui/src/pages/Inbox/MessageInput/index.tsx @@ -6,7 +6,7 @@ import TemplateSelector from '../TemplateSelector'; import 'emoji-mart/css/emoji-mart.css'; import {withRouter} from 'react-router-dom'; import {Button} from 'components'; -import {cyMessageSendButton, cyMessageTextArea} from 'handles'; +import {cyMessageSendButton, cyMessageTextArea, cySuggestionsButton} from 'handles'; import {Picker} from 'emoji-mart'; import {SourceMessage} from 'render'; import {Message, SuggestedReply, Suggestions, Template, Source} from 'model'; @@ -381,7 +381,11 @@ const MessageInput = (props: MessageInputProps & ConnectedProps )} -
); }; @@ -58,7 +62,9 @@ const ConversationListItem = (props: ConversationListItemProps) => { const ClosedStateButton = () => { return (
-
@@ -85,7 +91,7 @@ const ConversationListItem = (props: ConversationListItemProps) => {
-
+
{participant && participant.displayName} diff --git a/frontend/ui/src/pages/Inbox/Messenger/ConversationStatus/index.tsx b/frontend/ui/src/pages/Inbox/Messenger/ConversationStatus/index.tsx index 21a030dbc7..01885cc46a 100644 --- a/frontend/ui/src/pages/Inbox/Messenger/ConversationStatus/index.tsx +++ b/frontend/ui/src/pages/Inbox/Messenger/ConversationStatus/index.tsx @@ -4,6 +4,7 @@ import {withRouter, RouteComponentProps} from 'react-router-dom'; import styles from './index.module.scss'; import {conversationState} from '../../../../actions/conversations'; import {StateModel} from '../../../../reducers'; +import {cyConversationStatus} from 'handles'; const mapStateToProps = (state: StateModel, ownProps) => { return { @@ -25,7 +26,8 @@ function ConversationStatus(props: Props) { return (
+ className={`${styles.conversationStatus} ${currentConversationState === 'CLOSED' ? styles.closed : styles.open}`} + data-cy={cyConversationStatus}>
{ + it('toggles the state of a conversation', () => { + cy.visit('/ui/'); + cy.url().should('include', '/inbox'); + + cy.get(`[data-cy=${cyConversationListItemInfo}]`).then(conversationListItemInfo => { + if (conversationListItemInfo.find(`[data-cy=${cyOpenStateButton}]`).length > 0) { + closeConversation(); + openConversation(); + } else { + openConversation(); + closeConversation(); + } + }); + }); +}); From eda9c637c56d105fc31ec4b56e056dc4ed12c107 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Jun 2021 17:06:36 +0200 Subject: [PATCH 08/96] Bump terser-webpack-plugin from 5.1.3 to 5.1.4 (#2065) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Bump terser-webpack-plugin from 5.1.3 to 5.1.4 Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 5.1.3 to 5.1.4. - [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases) - [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v5.1.3...v5.1.4) --- updated-dependencies: - dependency-name: terser-webpack-plugin dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Update bazel tools Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Christoph PrΓΆschel Co-authored-by: Christoph Proeschel --- WORKSPACE | 4 ++-- package.json | 2 +- yarn.lock | 18 +++++++++--------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/WORKSPACE b/WORKSPACE index 6ff1528c41..472f42dcad 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -9,9 +9,9 @@ load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository") # Airy Bazel tools git_repository( name = "com_github_airyhq_bazel_tools", - commit = "e98260f68ababf484bba4f1b8c1ab60587749a60", + commit = "2b34bc2b2c6fed64e4bb223d4624e06eda390e4d", remote = "https://github.com/airyhq/bazel-tools.git", - shallow_since = "1624977577 +0200", + shallow_since = "1625065439 +0200", ) load("@com_github_airyhq_bazel_tools//:repositories.bzl", "airy_bazel_tools_dependencies", "airy_jvm_deps") diff --git a/package.json b/package.json index db00273b74..7a42e7b431 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "sass": "^1.35.1", "sass-loader": "^12.1.0", "style-loader": "^2.0.0", - "terser-webpack-plugin": "^5.1.3", + "terser-webpack-plugin": "^5.1.4", "typescript": "4.2.4", "url-loader": "^4.1.1", "webpack": "^5.40.0", diff --git a/yarn.lock b/yarn.lock index 0fae942c3b..a7181bec49 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6517,10 +6517,10 @@ send@0.17.1: range-parser "~1.2.1" statuses "~1.5.0" -serialize-javascript@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" - integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== +serialize-javascript@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== dependencies: randombytes "^2.1.0" @@ -7024,15 +7024,15 @@ tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0: resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.0.tgz#5c373d281d9c672848213d0e037d1c4165ab426b" integrity sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw== -terser-webpack-plugin@^5.1.3: - version "5.1.3" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.1.3.tgz#30033e955ca28b55664f1e4b30a1347e61aa23af" - integrity sha512-cxGbMqr6+A2hrIB5ehFIF+F/iST5ZOxvOmy9zih9ySbP1C2oEWQSOUS+2SNBTjzx5xLKO4xnod9eywdfq1Nb9A== +terser-webpack-plugin@^5.1.3, terser-webpack-plugin@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.1.4.tgz#c369cf8a47aa9922bd0d8a94fe3d3da11a7678a1" + integrity sha512-C2WkFwstHDhVEmsmlCxrXUtVklS+Ir1A7twrYzrDrQQOIMOaVAYykaoo/Aq1K0QRkMoY2hhvDQY1cm4jnIMFwA== dependencies: jest-worker "^27.0.2" p-limit "^3.1.0" schema-utils "^3.0.0" - serialize-javascript "^5.0.1" + serialize-javascript "^6.0.0" source-map "^0.6.1" terser "^5.7.0" From 489c78a1df5f9089a33cef1317211e9627b9087e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Jun 2021 19:05:39 +0200 Subject: [PATCH 09/96] Bump prettier from 2.3.1 to 2.3.2 (#2053) Bumps [prettier](https://github.com/prettier/prettier) from 2.3.1 to 2.3.2. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/2.3.1...2.3.2) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 7a42e7b431..3e0878b19f 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "file-loader": "^6.2.0", "html-webpack-plugin": "^5.3.2", "minimist": "^1.2.5", - "prettier": "^2.3.1", + "prettier": "^2.3.2", "react-hot-loader": "^4.13.0", "sass": "^1.35.1", "sass-loader": "^12.1.0", diff --git a/yarn.lock b/yarn.lock index a7181bec49..c87b773b0f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5761,10 +5761,10 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.1.tgz#76903c3f8c4449bc9ac597acefa24dc5ad4cbea6" - integrity sha512-p+vNbgpLjif/+D+DwAZAbndtRrR0md0MwfmOVN9N+2RgyACMT+7tfaRnT+WDPkqnuVwleyuBIG2XBxKDme3hPA== +prettier@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.2.tgz#ef280a05ec253712e486233db5c6f23441e7342d" + integrity sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ== pretty-bytes@^5.6.0: version "5.6.0" From 62bb04b4c3310c21a4ca3a8efe57512234eb84b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 30 Jun 2021 19:06:02 +0200 Subject: [PATCH 10/96] Bump core-js from 3.15.0 to 3.15.2 (#2064) Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.15.0 to 3.15.2. - [Release notes](https://github.com/zloirock/core-js/releases) - [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/zloirock/core-js/commits/v3.15.2/packages/core-js) --- updated-dependencies: - dependency-name: core-js dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 15 +++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 3e0878b19f..d3f800f8a1 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "@types/react-redux": "7.1.16", "@types/react-router-dom": "^5.1.7", "camelcase-keys": "^6.2.2", - "core-js": "3.15.0", + "core-js": "3.15.2", "emoji-mart": "3.0.1", "linkifyjs": "^2.1.9", "lodash-es": "^4.17.21", diff --git a/yarn.lock b/yarn.lock index c87b773b0f..b6ecb11e8b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2601,10 +2601,10 @@ core-js-compat@^3.15.0, core-js-compat@^3.9.1: browserslist "^4.16.6" semver "7.0.0" -core-js@3.15.0: - version "3.15.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.15.0.tgz#db9554ebce0b6fd90dc9b1f2465c841d2d055044" - integrity sha512-GUbtPllXMYRzIgHNZ4dTYTcUemls2cni83Q4Q/TrFONHfhcg9oEGOtaGHfb0cpzec60P96UKPvMkjX1jET8rUw== +core-js@3.15.2: + version "3.15.2" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.15.2.tgz#740660d2ff55ef34ce664d7e2455119c5bdd3d61" + integrity sha512-tKs41J7NJVuaya8DxIOCnl8QuPHx5/ZVbFo1oKgVl1qHFBBrDctzQGtuLjPpRdNTWmKPH6oEvgN/MUID+l485Q== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -6531,6 +6531,13 @@ serialize-javascript@^6.0.0: dependencies: randombytes "^2.1.0" +serialize-javascript@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== + dependencies: + randombytes "^2.1.0" + serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" From ba4a7e1f324247df5e27ba5a5f44773a16404c3c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Jul 2021 09:58:56 +0200 Subject: [PATCH 11/96] Bump @types/node from 15.12.2 to 15.12.5 (#2052) Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 15.12.2 to 15.12.5. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d3f800f8a1..f97c9465ba 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "@crello/react-lottie": "^0.0.11", "@reduxjs/toolkit": "^1.6.0", "@stomp/stompjs": "^6.1.0", - "@types/node": "15.12.2", + "@types/node": "15.12.5", "@types/react": "17.0.11", "@types/react-dom": "17.0.8", "@types/react-redux": "7.1.16", diff --git a/yarn.lock b/yarn.lock index b6ecb11e8b..9753e35f48 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1358,10 +1358,10 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.4.tgz#f0ec25dbf2f0e4b18647313ac031134ca5b24b21" integrity sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA== -"@types/node@*", "@types/node@15.12.2": - version "15.12.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-15.12.2.tgz#1f2b42c4be7156ff4a6f914b2fb03d05fa84e38d" - integrity sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww== +"@types/node@*", "@types/node@15.12.5": + version "15.12.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-15.12.5.tgz#9a78318a45d75c9523d2396131bd3cca54b2d185" + integrity sha512-se3yX7UHv5Bscf8f1ERKvQOD6sTyycH3hdaoozvaLxgUiY5lIGEeH37AD0G0Qi9kPqihPn0HOfd2yaIEN9VwEg== "@types/node@^10.1.0": version "10.17.55" From df65861d1410ab1301d3bbdd7ad000a56bca406e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Jul 2021 10:00:45 +0200 Subject: [PATCH 12/96] Bump style-loader from 2.0.0 to 3.0.0 (#2040) Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 2.0.0 to 3.0.0. - [Release notes](https://github.com/webpack-contrib/style-loader/releases) - [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/style-loader/compare/v2.0.0...v3.0.0) --- updated-dependencies: - dependency-name: style-loader dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 25 ++++--------------------- 2 files changed, 5 insertions(+), 22 deletions(-) diff --git a/package.json b/package.json index f97c9465ba..cb10177785 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "react-hot-loader": "^4.13.0", "sass": "^1.35.1", "sass-loader": "^12.1.0", - "style-loader": "^2.0.0", + "style-loader": "^3.0.0", "terser-webpack-plugin": "^5.1.4", "typescript": "4.2.4", "url-loader": "^4.1.1", diff --git a/yarn.lock b/yarn.lock index 9753e35f48..efc4d1b3db 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6524,20 +6524,6 @@ serialize-javascript@^6.0.0: dependencies: randombytes "^2.1.0" -serialize-javascript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" - integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== - dependencies: - randombytes "^2.1.0" - -serialize-javascript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" - integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== - dependencies: - randombytes "^2.1.0" - serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" @@ -6947,13 +6933,10 @@ strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -style-loader@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-2.0.0.tgz#9669602fd4690740eaaec137799a03addbbc393c" - integrity sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ== - dependencies: - loader-utils "^2.0.0" - schema-utils "^3.0.0" +style-loader@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.0.0.tgz#2eafcd0dbe70b07438e0256a9714ea94dd63cbe0" + integrity sha512-pqJTDiCtLr8D2eyVWXPiwNkLsAMDuvPHnu+Z/Edo9hu+DzdJwdO5eZv9zUBF6tWI8GJGhAkenWJaVjXI+sHnuQ== style-to-object@^0.3.0: version "0.3.0" From dc40d838caabe45d5383f5a4aff68012f52fdbab Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Jul 2021 10:43:22 +0200 Subject: [PATCH 13/96] Bump @typescript-eslint/parser from 4.28.0 to 4.28.1 (#2081) Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.28.0 to 4.28.1. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.28.1/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 50 ++++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 43 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index cb10177785..c8d6195adb 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,7 @@ "@types/react-window-infinite-loader": "^1.0.3", "@types/resize-observer-browser": "^0.1.5", "@typescript-eslint/eslint-plugin": "^4.28.0", - "@typescript-eslint/parser": "^4.28.0", + "@typescript-eslint/parser": "^4.28.1", "babel-loader": "^8.0.6", "copy-webpack-plugin": "^9.0.1", "css-loader": "^5.2.6", diff --git a/yarn.lock b/yarn.lock index efc4d1b3db..95c8e6c670 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1503,14 +1503,14 @@ eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/parser@^4.28.0": - version "4.28.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.28.0.tgz#2404c16751a28616ef3abab77c8e51d680a12caa" - integrity sha512-7x4D22oPY8fDaOCvkuXtYYTQ6mTMmkivwEzS+7iml9F9VkHGbbZ3x4fHRwxAb5KeuSkLqfnYjs46tGx2Nour4A== - dependencies: - "@typescript-eslint/scope-manager" "4.28.0" - "@typescript-eslint/types" "4.28.0" - "@typescript-eslint/typescript-estree" "4.28.0" +"@typescript-eslint/parser@^4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.28.1.tgz#5181b81658414f47291452c15bf6cd44a32f85bd" + integrity sha512-UjrMsgnhQIIK82hXGaD+MCN8IfORS1CbMdu7VlZbYa8LCZtbZjJA26De4IPQB7XYZbL8gJ99KWNj0l6WD0guJg== + dependencies: + "@typescript-eslint/scope-manager" "4.28.1" + "@typescript-eslint/types" "4.28.1" + "@typescript-eslint/typescript-estree" "4.28.1" debug "^4.3.1" "@typescript-eslint/scope-manager@4.28.0": @@ -1521,11 +1521,24 @@ "@typescript-eslint/types" "4.28.0" "@typescript-eslint/visitor-keys" "4.28.0" +"@typescript-eslint/scope-manager@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.28.1.tgz#fd3c20627cdc12933f6d98b386940d8d0ce8a991" + integrity sha512-o95bvGKfss6705x7jFGDyS7trAORTy57lwJ+VsYwil/lOUxKQ9tA7Suuq+ciMhJc/1qPwB3XE2DKh9wubW8YYA== + dependencies: + "@typescript-eslint/types" "4.28.1" + "@typescript-eslint/visitor-keys" "4.28.1" + "@typescript-eslint/types@4.28.0": version "4.28.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.28.0.tgz#a33504e1ce7ac51fc39035f5fe6f15079d4dafb0" integrity sha512-p16xMNKKoiJCVZY5PW/AfILw2xe1LfruTcfAKBj3a+wgNYP5I9ZEKNDOItoRt53p4EiPV6iRSICy8EPanG9ZVA== +"@typescript-eslint/types@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.28.1.tgz#d0f2ecbef3684634db357b9bbfc97b94b828f83f" + integrity sha512-4z+knEihcyX7blAGi7O3Fm3O6YRCP+r56NJFMNGsmtdw+NCdpG5SgNz427LS9nQkRVTswZLhz484hakQwB8RRg== + "@typescript-eslint/typescript-estree@4.28.0": version "4.28.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.0.tgz#e66d4e5aa2ede66fec8af434898fe61af10c71cf" @@ -1539,6 +1552,19 @@ semver "^7.3.5" tsutils "^3.21.0" +"@typescript-eslint/typescript-estree@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.1.tgz#af882ae41740d1f268e38b4d0fad21e7e8d86a81" + integrity sha512-GhKxmC4sHXxHGJv8e8egAZeTZ6HI4mLU6S7FUzvFOtsk7ZIDN1ksA9r9DyOgNqowA9yAtZXV0Uiap61bIO81FQ== + dependencies: + "@typescript-eslint/types" "4.28.1" + "@typescript-eslint/visitor-keys" "4.28.1" + debug "^4.3.1" + globby "^11.0.3" + is-glob "^4.0.1" + semver "^7.3.5" + tsutils "^3.21.0" + "@typescript-eslint/visitor-keys@4.28.0": version "4.28.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.0.tgz#255c67c966ec294104169a6939d96f91c8a89434" @@ -1547,6 +1573,14 @@ "@typescript-eslint/types" "4.28.0" eslint-visitor-keys "^2.0.0" +"@typescript-eslint/visitor-keys@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.1.tgz#162a515ee255f18a6068edc26df793cdc1ec9157" + integrity sha512-K4HMrdFqr9PFquPu178SaSb92CaWe2yErXyPumc8cYWxFmhgJsNY9eSePmO05j0JhBvf2Cdhptd6E6Yv9HVHcg== + dependencies: + "@typescript-eslint/types" "4.28.1" + eslint-visitor-keys "^2.0.0" + "@webassemblyjs/ast@1.11.0": version "1.11.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.0.tgz#a5aa679efdc9e51707a4207139da57920555961f" From 86418442b5e8bb38f583f63fbf9670b39e026856 Mon Sep 17 00:00:00 2001 From: AudreyKj <38159391+AudreyKj@users.noreply.github.com> Date: Thu, 1 Jul 2021 12:45:18 +0200 Subject: [PATCH 14/96] [#1916] Cypress test for display name edit (#2088) * adding handles for cy test * feat/1916-cypress-test-for-name-edit * rebase * fixed base url --- frontend/ui/handles/index.ts | 4 ++++ .../Messenger/ConversationMetadata/index.tsx | 19 ++++++++++++++++--- integration/ui/display_name_edit.spec.ts | 15 +++++++++++++++ integration/ui/state_conversations.spec.ts | 2 +- 4 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 integration/ui/display_name_edit.spec.ts diff --git a/frontend/ui/handles/index.ts b/frontend/ui/handles/index.ts index 753905cc2d..598d2b00d7 100644 --- a/frontend/ui/handles/index.ts +++ b/frontend/ui/handles/index.ts @@ -40,3 +40,7 @@ export const cyConversationListItemInfo = 'conversationListItemInfo'; export const cyConversationStatus = 'conversationStatus'; export const cySuggestionsButton = 'suggestionsButton'; export const cySuggestionsList = 'suggestionsList'; +export const cyEditDisplayNameIcon = 'editDisplayNameIcon'; +export const cyDisplayName = 'displayName'; +export const cyDisplayNameInput = 'displayNameInput'; +export const cyEditDisplayNameCheckmark = 'editDisplayNameCheckmark'; diff --git a/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.tsx b/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.tsx index c3096dcddf..d69a34a2a5 100644 --- a/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.tsx +++ b/frontend/ui/src/pages/Inbox/Messenger/ConversationMetadata/index.tsx @@ -21,7 +21,15 @@ import {ReactComponent as EditPencilIcon} from 'assets/images/icons/edit-pencil. import {ReactComponent as CloseIcon} from 'assets/images/icons/close.svg'; import {ReactComponent as CheckmarkCircleIcon} from 'assets/images/icons/checkmark.svg'; -import {cyShowTagsDialog, cyTagsDialogInput, cyTagsDialogButton} from 'handles'; +import { + cyShowTagsDialog, + cyTagsDialogInput, + cyTagsDialogButton, + cyEditDisplayNameIcon, + cyDisplayName, + cyDisplayNameInput, + cyEditDisplayNameCheckmark, +} from 'handles'; import difference from 'lodash/difference'; const mapStateToProps = (state: StateModel, ownProps: ConversationRouteProps) => { @@ -215,6 +223,7 @@ const ConversationMetadata = (props: ConnectedProps) => { minLength={1} maxLength={50} label="Set Name" + dataCy={cyDisplayNameInput} />
@@ -231,11 +241,14 @@ const ConversationMetadata = (props: ConnectedProps) => {
) : ( <> -
{contact?.displayName}
+
+ {contact?.displayName} +
)} diff --git a/integration/ui/display_name_edit.spec.ts b/integration/ui/display_name_edit.spec.ts new file mode 100644 index 0000000000..a3fcd3a087 --- /dev/null +++ b/integration/ui/display_name_edit.spec.ts @@ -0,0 +1,15 @@ +import {cyEditDisplayNameIcon, cyDisplayName, cyDisplayNameInput, cyEditDisplayNameCheckmark} from 'handles'; + +describe('Edits the display name of a conversation', () => { + it('Edits the display name of a conversation', () => { + cy.visit('/ui/'); + cy.url().should('include', '/inbox'); + + cy.get(`[data-cy=${cyEditDisplayNameIcon}]`).click({force: true}); + + cy.get(`[data-cy=${cyDisplayNameInput}]`).type('new name'); + cy.get(`[data-cy=${cyEditDisplayNameCheckmark}]`).click(); + + cy.get(`[data-cy=${cyDisplayName}]`).contains('new name'); + }); +}); diff --git a/integration/ui/state_conversations.spec.ts b/integration/ui/state_conversations.spec.ts index f9b0abde98..55f20b67d7 100644 --- a/integration/ui/state_conversations.spec.ts +++ b/integration/ui/state_conversations.spec.ts @@ -1,7 +1,7 @@ import {cyOpenStateButton, cyClosedStateButton, cyConversationListItemInfo, cyConversationStatus} from 'handles'; function closeConversation() { - cy.get(`[data-cy=${cyOpenStateButton}]`).click(); + cy.get(`[data-cy=${cyOpenStateButton}]`).first().click(); cy.get(`[data-cy=${cyClosedStateButton}]`); cy.get(`[data-cy=${cyConversationStatus}]`).invoke('attr', 'class').should('contain', 'closed'); } From 708c8c499c9a75cb24f70d0357092773cfed7dc5 Mon Sep 17 00:00:00 2001 From: Thorsten Date: Thu, 1 Jul 2021 15:34:58 +0200 Subject: [PATCH 15/96] [#2074] Added subtitle to Chatplugin (#2087) --- .../AiryHeaderBar/index.module.scss | 28 ++++++-- .../airyRenderProps/AiryHeaderBar/index.tsx | 12 ++++ frontend/chat-plugin/src/config.ts | 2 + .../ChatPlugin/sections/CustomiseSection.tsx | 65 +++++++++++++++++++ 4 files changed, 103 insertions(+), 4 deletions(-) diff --git a/frontend/chat-plugin/src/airyRenderProps/AiryHeaderBar/index.module.scss b/frontend/chat-plugin/src/airyRenderProps/AiryHeaderBar/index.module.scss index c831a8960d..0d22212b3b 100644 --- a/frontend/chat-plugin/src/airyRenderProps/AiryHeaderBar/index.module.scss +++ b/frontend/chat-plugin/src/airyRenderProps/AiryHeaderBar/index.module.scss @@ -1,6 +1,5 @@ .header { display: flex; - justify-content: space-between; align-items: center; background-color: var(--color-airy-blue); border-top-left-radius: 8px; @@ -10,9 +9,9 @@ } .headerInfo { - display: flex; - align-items: center; + display: inline-block; margin-left: 8px; + max-width: 325px; img { height: 32px; width: 32px; @@ -27,11 +26,31 @@ line-height: 24px; font-weight: bold; padding: 0; - margin: 0 0 0 8px; + margin: 0 8px 0 8px; cursor: none; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.subtitle { + color: white; + font-family: 'Lato', sans-serif; + font-size: 12px; + margin-left: 8px; + font-weight: normal; + line-height: 16px; + margin: 0 8px 0 9px; + padding: 0; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; } .closeButton { + position: absolute; + right: 7%; + top: 7%; outline: none; border: none; height: 32px; @@ -54,6 +73,7 @@ outline: none; position: absolute; right: 12%; + top: 7%; padding: 2px 0 0 2px; border: none; height: 32px; diff --git a/frontend/chat-plugin/src/airyRenderProps/AiryHeaderBar/index.tsx b/frontend/chat-plugin/src/airyRenderProps/AiryHeaderBar/index.tsx index 0b2d2b187e..264dcdc2ec 100644 --- a/frontend/chat-plugin/src/airyRenderProps/AiryHeaderBar/index.tsx +++ b/frontend/chat-plugin/src/airyRenderProps/AiryHeaderBar/index.tsx @@ -24,12 +24,24 @@ const AiryHeaderBar = (props: AiryHeaderBarProps) => { }), }; + const customStyleSubtitle = { + ...(config?.accentColor && { + color: config?.accentColor, + }), + ...(config?.subtitleTextColor && { + color: config?.subtitleTextColor, + }), + }; + return (

{config.headerText || 'Customer Chat'}

+

+ {config.subtitleText || 'Customer Subtitle'} +

+

Subtitle Text Color

+
+ {showSubtitleTextColorPicker && ( + + { + setSubtitleTextColor(color.hex.toUpperCase()); + }} + /> + + )} +
+ ) => { + setSubtitleTextColor(e.target.value); + }} + onBlur={(e: React.ChangeEvent) => { + const value = e.target.value; + if (value !== '') { + const newSubtitleTextColor = value.startsWith('#') ? value : '#' + value; + setSubtitleTextColor(newSubtitleTextColor.toUpperCase()); + } else { + setSubtitleTextColor(''); + } + }} + placeholder="#FFFFFF" + height={32} + fontClass="font-base" + /> +

Primary Color

{showPrimaryColorPicker && ( From 1b1441fc09671d7b420d41f8b0467145aa898a77 Mon Sep 17 00:00:00 2001 From: AudreyKj <38159391+AudreyKj@users.noreply.github.com> Date: Thu, 1 Jul 2021 16:40:52 +0200 Subject: [PATCH 16/96] [#2069] fix http client and chat plugin packages (#2070) * fixed http client and chat plugin packages * fixed build file chat plugin * fixed build rules for the chat plugin * fixed typing for chat plugin * started adding docs * fixed readme for packages * updated doc for chat plugin and httpclient --- frontend/chat-plugin/BUILD | 26 ++++++++++++- frontend/chat-plugin/README.md | 51 +++++++++++++++++++++++--- frontend/chat-plugin/package.json | 5 +-- lib/typescript/httpclient/README.md | 25 ++++++++++--- lib/typescript/httpclient/package.json | 4 -- 5 files changed, 91 insertions(+), 20 deletions(-) diff --git a/frontend/chat-plugin/BUILD b/frontend/chat-plugin/BUILD index 790f5f7884..99b4d3b727 100644 --- a/frontend/chat-plugin/BUILD +++ b/frontend/chat-plugin/BUILD @@ -52,6 +52,28 @@ web_library( }, ) +web_library( + name = "dist", + app_lib = ":chat-plugin", + entry = "frontend/chat-plugin/index.js", + externals = { + "@stomp/stompjs": "@stomp/stompjs", + "@types/node": "@types/node", + "@types/react": "@types/react", + "@types/react-dom": "@types/react-dom", + "linkifyjs": "linkifyjs", + "react": "react", + "react-dom": "react-dom", + "camelcase-keys": "camelcase-keys", + }, + module_deps = module_deps, + output = { + "library": "@airyhq/chat-plugin", + "libraryTarget": "umd", + "filename": "index.js", + }, +) + ts_web_library( name = "chat-plugin", tsconfig = ":widget_tsconfig", @@ -113,12 +135,12 @@ genrule( srcs = [ "package.json", "README.md", - ":library", + ":dist", ":chat-plugin", ], outs = ["chat-plugin_lib"], cmd = """ - mkdir -p $(OUTS)/{dist} && cp -R $(location :library) $(OUTS) \ + mkdir -p $(OUTS)/{src,dist} && cp -R $(location :dist) $(OUTS) \ && cp $(location :package.json) $(location :README.md) $(OUTS) \ && mv $(RULEDIR)/src $(OUTS) """, diff --git a/frontend/chat-plugin/README.md b/frontend/chat-plugin/README.md index e485668202..99c468b1a5 100644 --- a/frontend/chat-plugin/README.md +++ b/frontend/chat-plugin/README.md @@ -1,11 +1,52 @@ -# Airy Demo Inbox +# Airy Chat Plugin -This app demos a minimal frontend that allows contacts to communicate with the [Airy Chat Plugin source](https://docs.airy.co/sources/chat-plugin) +[Airy Chat Plugin](https://airy.co/docs/core/sources/chatplugin/overview) is an open-source chat widget that is fully customizable and included in [Airy Core](https://airy.co/docs/core/). -## Develop +## Install -Requires [Bazelisk](https://github.com/bazelbuild/bazelisk) and a running [minikube provider](/docs/docs/getting-started/installation/minikube.md) Core instance. +```bash +npm install --save @airyhq/chat-plugin +``` + +or ```bash -./scripts/web-dev.sh //frontend/chat-plugin:bundle_server +yarn add @airyhq/chat-plugin ``` + +## Usage + +First, [set up the Airy Chat Plugin as a source](https://airy.co/docs/core/sources/chatplugin/quickstart) to Airy Core to get the channelId. Then, install the package and import the Airy Chat Plugin to a React component. Pass the configuration variables to the AiryChatPlugin wrapper to customize it. + +```tsx +import React from "react"; +import {AiryChatPlugin, AiryChatPluginConfiguration} from "@airyhq/chat-plugin"; + +const Component = () => { + const demoConfig: AiryChatPluginConfiguration = { + apiHost: ApiHostURL, + channelId: yourChannelId, + config: { + showMode: true, + headerText: "i am a header text", + startNewConversationTex: "start new conversation text", + headerTextColor: "#FF0000", + primaryColor: "#0000FF", + accentColor: "#FFA500", + backgroundColor: "#8510d8", + bubbleIconUrl: "#FFFF00", + sendMessageIcon: "https://yourcustomIcon/sent.png" + } + }; + + return ( +
+ +
+ ); +}; +``` + +## License + +Apache 2.0 Β© [Airy, Inc.](https://airy.co) diff --git a/frontend/chat-plugin/package.json b/frontend/chat-plugin/package.json index 1ccd7874d5..200f4914fc 100644 --- a/frontend/chat-plugin/package.json +++ b/frontend/chat-plugin/package.json @@ -3,10 +3,7 @@ "version": "0.1.0", "description": "Airy Live Chatplugin library", "main": "dist/index.js", - "browser": { - "./dist/index.js": "./dist/index.browser.js" - }, - "typings": "index.d.ts", + "typings": "src/App.d.ts", "repository": { "type": "git", "url": "git+https://github.com/airyhq/airy.git" diff --git a/lib/typescript/httpclient/README.md b/lib/typescript/httpclient/README.md index 74fc538242..e23b7d1ae7 100644 --- a/lib/typescript/httpclient/README.md +++ b/lib/typescript/httpclient/README.md @@ -1,17 +1,32 @@ ### HttpClient Library -The HttpClient Library includes a HTTP client for making requests to Airy's API. +The HttpClient Library includes a HTTP client for making requests to [Airy](https://airy.co/docs/core/)'s API. -The library exports a HttpClient class with public methods that make requests to -Airy's API. +The library exports a HttpClient class with public methods that make requests to Airy's API. To use the library, you need to instantiate the class with an Airy Core API URL. -For example: +## Install + +```bash +npm install --save @airyhq/http-client +``` + +or + +```bash +yarn add @airyhq/http-client +``` + +## Usage ```typescript -import {HttpClient} from "httpclient"; +import {HttpClient} from "@airyhq/httpclient"; const client = new HttpClient("http://airy.core"); client.listChannels().then(channels => console.debug("channels", channels)); ``` + +## License + +Apache 2.0 Β© [Airy, Inc.](https://airy.co) diff --git a/lib/typescript/httpclient/package.json b/lib/typescript/httpclient/package.json index 048753c7ad..5bea73fe8d 100644 --- a/lib/typescript/httpclient/package.json +++ b/lib/typescript/httpclient/package.json @@ -3,10 +3,6 @@ "version": "0.1.0", "description": "Airy http client library", "main": "dist/index.js", - "browser": { - "./dist/index.js": "./dist/index.browser.js", - "./dist/index.esm.js": "./dist/index.browser.esm.js" - }, "typings": "index.d.ts", "repository": { "type": "git", From 426f163959452be78d49c39e29b5ff12d8ff03b8 Mon Sep 17 00:00:00 2001 From: Aitor Algorta Date: Thu, 1 Jul 2021 17:20:33 +0200 Subject: [PATCH 17/96] update conversations counter in real time (#2091) --- frontend/ui/src/reducers/data/conversations/index.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/frontend/ui/src/reducers/data/conversations/index.ts b/frontend/ui/src/reducers/data/conversations/index.ts index 8d15a78152..eefe3d7e26 100644 --- a/frontend/ui/src/reducers/data/conversations/index.ts +++ b/frontend/ui/src/reducers/data/conversations/index.ts @@ -185,6 +185,8 @@ function allReducer( state: AllConversationsState = initialState, action: Action | MessageAction ): AllConversationsState { + let updatedConversationCount = state.paginationData.total; + switch (action.type) { case getType(actions.setStateConversationAction): return { @@ -223,6 +225,10 @@ function allReducer( return updateContact(state, action.payload.conversationId, action.payload.displayName); } case getType(actions.mergeConversationsAction): + action.payload.conversations.forEach(conversation => { + if (!state.items[conversation.id]) updatedConversationCount++; + }); + if (action.payload.paginationData) { return { ...state, @@ -230,6 +236,8 @@ function allReducer( paginationData: { ...state.paginationData, ...action.payload.paginationData, + ...(state.paginationData.total < updatedConversationCount && + action.payload.paginationData.total < updatedConversationCount && {total: updatedConversationCount}), loading: false, loaded: true, }, @@ -240,6 +248,7 @@ function allReducer( items: mergeConversations(state.items, action.payload.conversations as MergedConversation[]), paginationData: { ...state.paginationData, + ...(state.paginationData.total < updatedConversationCount && {total: updatedConversationCount}), loading: false, loaded: true, }, From 9ae310932b157971f7c40894bdc26711ffcb2f82 Mon Sep 17 00:00:00 2001 From: Thorsten Date: Thu, 1 Jul 2021 17:35:04 +0200 Subject: [PATCH 18/96] [#2073] Added powered by airy to Chatplugin (#2089) * added powered by airy to chatplugin * change position * linting Co-authored-by: Aitor Algorta --- .../AiryInputBar/index.module.scss | 25 ++++++++ .../airyRenderProps/AiryInputBar/index.tsx | 57 +++++++++++-------- 2 files changed, 59 insertions(+), 23 deletions(-) diff --git a/frontend/chat-plugin/src/airyRenderProps/AiryInputBar/index.module.scss b/frontend/chat-plugin/src/airyRenderProps/AiryInputBar/index.module.scss index eddc324e64..a30b3e3796 100644 --- a/frontend/chat-plugin/src/airyRenderProps/AiryInputBar/index.module.scss +++ b/frontend/chat-plugin/src/airyRenderProps/AiryInputBar/index.module.scss @@ -25,6 +25,31 @@ } } +.poweredByContainer { + display: flex; + width: 100%; + justify-content: center; + margin: 0 0 8px 0px; + a { + display: flex; + color: var(--color-text-gray); + cursor: pointer; + text-decoration: none; + font-family: 'Lato', sans-serif; + font-size: 12px; + align-items: center; + svg { + height: 20px; + width: 20px; + transform: scale(0.7); + margin-top: 1px; + path { + fill: var(--color-text-gray); + } + } + } +} + .textAreaMedium { @extend .textArea; height: 64px; diff --git a/frontend/chat-plugin/src/airyRenderProps/AiryInputBar/index.tsx b/frontend/chat-plugin/src/airyRenderProps/AiryInputBar/index.tsx index 869982540f..8abadaf8d1 100644 --- a/frontend/chat-plugin/src/airyRenderProps/AiryInputBar/index.tsx +++ b/frontend/chat-plugin/src/airyRenderProps/AiryInputBar/index.tsx @@ -1,4 +1,5 @@ import React, {ChangeEvent, FormEvent, KeyboardEvent, createRef, useEffect} from 'react'; +import {ReactComponent as AiryIcon} from 'assets/images/icons/airy-icon.svg'; import style from './index.module.scss'; import {cyInputbarTextarea, cyInputbarButton} from 'chat-plugin-handles'; import {Config} from '../../config'; @@ -60,29 +61,39 @@ const AiryInputBar = (props: AiryInputBarProps) => { }; return ( -
-