From 2932693cda013ae583adc0d0a50b3414bd6cc163 Mon Sep 17 00:00:00 2001 From: leangseu-edx <83240113+leangseu-edx@users.noreply.github.com> Date: Wed, 30 Nov 2022 09:33:43 -0500 Subject: [PATCH] feat: add zendesk widget (#71) --- .env | 1 + .env.development | 1 + .env.test | 1 + package-lock.json | 17 ++++++ package.json | 1 + src/App.jsx | 2 + src/App.test.jsx | 1 + src/__snapshots__/App.test.jsx.snap | 3 ++ .../__snapshots__/index.test.jsx.snap | 54 +++++++++++++++++++ src/components/ZendeskFab/index.jsx | 53 ++++++++++++++++++ src/components/ZendeskFab/index.test.jsx | 12 +++++ src/components/ZendeskFab/messages.js | 16 ++++++ src/config/index.js | 2 + src/index.jsx | 5 +- src/index.test.jsx | 12 ++--- src/test/app.test.jsx | 9 ++++ 16 files changed, 178 insertions(+), 12 deletions(-) create mode 100644 src/components/ZendeskFab/__snapshots__/index.test.jsx.snap create mode 100644 src/components/ZendeskFab/index.jsx create mode 100644 src/components/ZendeskFab/index.test.jsx create mode 100644 src/components/ZendeskFab/messages.js diff --git a/.env b/.env index 3839137..33109c3 100644 --- a/.env +++ b/.env @@ -32,3 +32,4 @@ ENTERPRISE_MARKETING_UTM_CAMPAIGN='' ENTERPRISE_MARKETING_FOOTER_UTM_MEDIUM='' LEARNING_BASE_URL='' PERSONALIZED_RECOMMENDATION_COOKIE_NAME = 'edx-user-personalized-recommendation' +ZENDESK_KEY='' diff --git a/.env.development b/.env.development index ce711ef..e40eb03 100644 --- a/.env.development +++ b/.env.development @@ -39,3 +39,4 @@ ENTERPRISE_MARKETING_FOOTER_UTM_MEDIUM='Footer' LEARNING_BASE_URL='http://localhost:2000' SESSION_COOKIE_DOMAIN='localhost' PERSONALIZED_RECOMMENDATION_COOKIE_NAME = 'edx-user-personalized-recommendation' +ZENDESK_KEY='' diff --git a/.env.test b/.env.test index 1da6de5..acf05c3 100644 --- a/.env.test +++ b/.env.test @@ -37,3 +37,4 @@ ENTERPRISE_MARKETING_UTM_SOURCE='example.com' ENTERPRISE_MARKETING_UTM_CAMPAIGN='example.com Referral' ENTERPRISE_MARKETING_FOOTER_UTM_MEDIUM='Footer' LEARNING_BASE_URL='http://localhost:2000' +ZENDESK_KEY='test-zendesk-key' diff --git a/package-lock.json b/package-lock.json index 789e37d..962373c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,6 +48,7 @@ "react-router-dom": "5.2.0", "react-router-redux": "^5.0.0-alpha.9", "react-share": "^4.4.0", + "react-zendesk": "^0.1.13", "redux": "4.1.1", "redux-beacon": "^2.1.0", "redux-devtools-extension": "2.13.9", @@ -25002,6 +25003,14 @@ "react-dom": ">=16.6.0" } }, + "node_modules/react-zendesk": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/react-zendesk/-/react-zendesk-0.1.13.tgz", + "integrity": "sha512-9UNzzgdgC8nr2nZ13PNudspUClZZgsnS3FofnuGK1I7+yDPNAP8iDFD2WSQRJmYDAzH+mTlVB4K+G8lY1/0B+w==", + "dependencies": { + "prop-types": "^15.7.2" + } + }, "node_modules/reactifex": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/reactifex/-/reactifex-1.1.1.tgz", @@ -49049,6 +49058,14 @@ "prop-types": "^15.6.2" } }, + "react-zendesk": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/react-zendesk/-/react-zendesk-0.1.13.tgz", + "integrity": "sha512-9UNzzgdgC8nr2nZ13PNudspUClZZgsnS3FofnuGK1I7+yDPNAP8iDFD2WSQRJmYDAzH+mTlVB4K+G8lY1/0B+w==", + "requires": { + "prop-types": "^15.7.2" + } + }, "reactifex": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/reactifex/-/reactifex-1.1.1.tgz", diff --git a/package.json b/package.json index 24406d9..fc5584a 100755 --- a/package.json +++ b/package.json @@ -66,6 +66,7 @@ "react-router-dom": "5.2.0", "react-router-redux": "^5.0.0-alpha.9", "react-share": "^4.4.0", + "react-zendesk": "^0.1.13", "redux": "4.1.1", "redux-beacon": "^2.1.0", "redux-devtools-extension": "2.13.9", diff --git a/src/App.jsx b/src/App.jsx index 4876318..7f23515 100755 --- a/src/App.jsx +++ b/src/App.jsx @@ -18,6 +18,7 @@ import { } from 'data/redux'; import LearnerDashboardHeader from 'containers/LearnerDashboardHeader'; import Dashboard from 'containers/Dashboard'; +import ZendeskFab from 'components/ZendeskFab'; import fakeData from 'data/services/lms/fakeData/courses'; @@ -72,6 +73,7 @@ export const App = () => { ) : ()}