@bigbinary/neeto-molecules 1.1.78 → 1.2.0-beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +66 -52
- package/dist/Breadcrumbs.js +16 -19
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BrowserSupport.js +41 -138
- package/dist/BrowserSupport.js.map +1 -1
- package/dist/Builder.js +207 -364
- package/dist/Builder.js.map +1 -1
- package/dist/CalendarView.js +40 -288
- package/dist/CalendarView.js.map +1 -1
- package/dist/Chevron-c64ff676.js +190 -0
- package/dist/Chevron-c64ff676.js.map +1 -0
- package/dist/Codeblock.js +26 -209
- package/dist/Codeblock.js.map +1 -1
- package/dist/Columns.js +16 -240
- package/dist/Columns.js.map +1 -1
- package/dist/ConfigurePageSidebar.js +97 -0
- package/dist/ConfigurePageSidebar.js.map +1 -0
- package/dist/ConfirmationModal.js +10 -10
- package/dist/ConfirmationModal.js.map +1 -1
- package/dist/Container.js +5 -1187
- package/dist/Container.js.map +1 -1
- package/dist/CopyToClipboardButton.js +26 -155
- package/dist/CopyToClipboardButton.js.map +1 -1
- package/dist/Currency.js +912 -0
- package/dist/Currency.js.map +1 -0
- package/dist/CustomDomain.js +37 -633
- package/dist/CustomDomain.js.map +1 -1
- package/dist/CustomDomainDashboard.js +69 -2192
- package/dist/CustomDomainDashboard.js.map +1 -1
- package/dist/DateFormat.js +6 -20
- package/dist/DateFormat.js.map +1 -1
- package/dist/DateRangeFilter.js +19 -75
- package/dist/DateRangeFilter.js.map +1 -1
- package/dist/DeleteArchiveModal.js +86 -0
- package/dist/DeleteArchiveModal.js.map +1 -0
- package/dist/DocumentEditor.js +43 -133
- package/dist/DocumentEditor.js.map +1 -1
- package/dist/DownloadMobileAppCallout.js +4 -4
- package/dist/DownloadMobileAppCallout.js.map +1 -1
- package/dist/DynamicVariables.js +12 -95
- package/dist/DynamicVariables.js.map +1 -1
- package/dist/EmailForm.js +79 -1741
- package/dist/EmailForm.js.map +1 -1
- package/dist/EmailPreview.js +32 -1213
- package/dist/EmailPreview.js.map +1 -1
- package/dist/EmojiPicker.js +67 -0
- package/dist/EmojiPicker.js.map +1 -0
- package/dist/EmojiReactions.js +69 -0
- package/dist/EmojiReactions.js.map +1 -0
- package/dist/ErrorPage.js +17 -26
- package/dist/ErrorPage.js.map +1 -1
- package/dist/FloatingActionMenu.js +646 -0
- package/dist/FloatingActionMenu.js.map +1 -0
- package/dist/Header.js +45 -117
- package/dist/Header.js.map +1 -1
- package/dist/HelpPopover.js +73 -0
- package/dist/HelpPopover.js.map +1 -0
- package/dist/IconPicker.js +36 -129
- package/dist/IconPicker.js.map +1 -1
- package/dist/ImageWithFallback.js +8 -144
- package/dist/ImageWithFallback.js.map +1 -1
- package/dist/InlineInput.js +22 -526
- package/dist/InlineInput.js.map +1 -1
- package/dist/Insights.js +304 -0
- package/dist/Insights.js.map +1 -0
- package/dist/IntegrationCard.js +42 -226
- package/dist/IntegrationCard.js.map +1 -1
- package/dist/IntegrationDisconnectAlert.js +6 -48
- package/dist/IntegrationDisconnectAlert.js.map +1 -1
- package/dist/IntegrationWalkthroughModal.js +10 -10
- package/dist/IntegrationWalkthroughModal.js.map +1 -1
- package/dist/IpRestriction.js +74 -221
- package/dist/IpRestriction.js.map +1 -1
- package/dist/KeyboardShortcuts.js +38 -128
- package/dist/KeyboardShortcuts.js.map +1 -1
- package/dist/LoginPage.js +39 -459
- package/dist/LoginPage.js.map +1 -1
- package/dist/MadeWith.js +32 -0
- package/dist/MadeWith.js.map +1 -0
- package/dist/MenuBar.js +34 -1295
- package/dist/MenuBar.js.map +1 -1
- package/dist/Metadata.js +65 -86
- package/dist/Metadata.js.map +1 -1
- package/dist/MoreDropdown.js +48 -107
- package/dist/MoreDropdown.js.map +1 -1
- package/dist/NavigationHeader.js +51 -730
- package/dist/NavigationHeader.js.map +1 -1
- package/dist/NeetoWidget.js +148 -316
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +343 -0
- package/dist/Onboarding.js.map +1 -0
- package/dist/OptionFields.js +507 -0
- package/dist/OptionFields.js.map +1 -0
- package/dist/PageLoader.js +5 -48
- package/dist/PageLoader.js.map +1 -1
- package/dist/PhoneNumber.js +122 -201
- package/dist/PhoneNumber.js.map +1 -1
- package/dist/ProductEmbed.js +767 -0
- package/dist/ProductEmbed.js.map +1 -0
- package/dist/PublishBlock.js +19 -60
- package/dist/PublishBlock.js.map +1 -1
- package/dist/PublishYourItem.js +52 -0
- package/dist/PublishYourItem.js.map +1 -0
- package/dist/Rename.js +127 -394
- package/dist/Rename.js.map +1 -1
- package/dist/ResponsiveDevicePicker.js +7 -143
- package/dist/ResponsiveDevicePicker.js.map +1 -1
- package/dist/Schedule.js +131 -365
- package/dist/Schedule.js.map +1 -1
- package/dist/Scrollable.js +6 -89
- package/dist/Scrollable.js.map +1 -1
- package/dist/Search.js +54 -157
- package/dist/Search.js.map +1 -1
- package/dist/Security.js +72 -1567
- package/dist/Security.js.map +1 -1
- package/dist/SendToFields.js +51 -133
- package/dist/SendToFields.js.map +1 -1
- package/dist/Settings.js +141 -412
- package/dist/Settings.js.map +1 -1
- package/dist/ShareRecordingPane.js +189 -0
- package/dist/ShareRecordingPane.js.map +1 -0
- package/dist/ShareViaEmail.js +126 -551
- package/dist/ShareViaEmail.js.map +1 -1
- package/dist/ShareViaLink.js +127 -345
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +161 -758
- package/dist/Sidebar.js.map +1 -1
- package/dist/SubHeader.js +63 -108
- package/dist/SubHeader.js.map +1 -1
- package/dist/SuffixedInput.js +105 -0
- package/dist/SuffixedInput.js.map +1 -0
- package/dist/TableWrapper.js +8 -9
- package/dist/TableWrapper.js.map +1 -1
- package/dist/Taxonomy.js +112 -1774
- package/dist/Taxonomy.js.map +1 -1
- package/dist/ThemeSidebar.js +159 -776
- package/dist/ThemeSidebar.js.map +1 -1
- package/dist/TimeFormat.js +8 -44
- package/dist/TimeFormat.js.map +1 -1
- package/dist/TimezoneMismatchModal.js +49 -84
- package/dist/TimezoneMismatchModal.js.map +1 -1
- package/dist/ToggleFeatureCard.js +46 -169
- package/dist/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/Breadcrumbs.js +49 -0
- package/dist/cjs/Breadcrumbs.js.map +1 -0
- package/dist/cjs/BrowserSupport.js +329 -0
- package/dist/cjs/BrowserSupport.js.map +1 -0
- package/dist/cjs/Builder.js +556 -0
- package/dist/cjs/Builder.js.map +1 -0
- package/dist/cjs/CalendarView.js +299 -0
- package/dist/cjs/CalendarView.js.map +1 -0
- package/dist/cjs/Chevron-8a4ed9cd.js +203 -0
- package/dist/cjs/Chevron-8a4ed9cd.js.map +1 -0
- package/dist/cjs/Codeblock.js +58 -0
- package/dist/cjs/Codeblock.js.map +1 -0
- package/dist/cjs/Columns.js +31 -0
- package/dist/cjs/Columns.js.map +1 -0
- package/dist/cjs/ConfigurePageSidebar.js +104 -0
- package/dist/cjs/ConfigurePageSidebar.js.map +1 -0
- package/dist/cjs/ConfirmationModal.js +120 -0
- package/dist/cjs/ConfirmationModal.js.map +1 -0
- package/dist/cjs/Container.js +36 -0
- package/dist/cjs/Container.js.map +1 -0
- package/dist/cjs/CopyToClipboardButton.js +86 -0
- package/dist/cjs/CopyToClipboardButton.js.map +1 -0
- package/dist/cjs/Currency.js +921 -0
- package/dist/cjs/Currency.js.map +1 -0
- package/dist/cjs/CustomDomain.js +125 -0
- package/dist/cjs/CustomDomain.js.map +1 -0
- package/dist/cjs/CustomDomainDashboard.js +200 -0
- package/dist/cjs/CustomDomainDashboard.js.map +1 -0
- package/dist/cjs/DateFormat.js +40 -0
- package/dist/cjs/DateFormat.js.map +1 -0
- package/dist/cjs/DateRangeFilter.js +180 -0
- package/dist/cjs/DateRangeFilter.js.map +1 -0
- package/dist/cjs/DeleteArchiveModal.js +92 -0
- package/dist/cjs/DeleteArchiveModal.js.map +1 -0
- package/dist/cjs/DocumentEditor.js +194 -0
- package/dist/cjs/DocumentEditor.js.map +1 -0
- package/dist/cjs/DownloadMobileAppCallout.js +45 -0
- package/dist/cjs/DownloadMobileAppCallout.js.map +1 -0
- package/dist/cjs/DynamicVariables.js +106 -0
- package/dist/cjs/DynamicVariables.js.map +1 -0
- package/dist/cjs/EmailForm.js +395 -0
- package/dist/cjs/EmailForm.js.map +1 -0
- package/dist/cjs/EmailPreview.js +139 -0
- package/dist/cjs/EmailPreview.js.map +1 -0
- package/dist/cjs/EmojiPicker.js +75 -0
- package/dist/cjs/EmojiPicker.js.map +1 -0
- package/dist/cjs/EmojiReactions.js +76 -0
- package/dist/cjs/EmojiReactions.js.map +1 -0
- package/dist/cjs/ErrorPage.js +179 -0
- package/dist/cjs/ErrorPage.js.map +1 -0
- package/dist/cjs/FloatingActionMenu.js +675 -0
- package/dist/cjs/FloatingActionMenu.js.map +1 -0
- package/dist/cjs/Header.js +104 -0
- package/dist/cjs/Header.js.map +1 -0
- package/dist/cjs/HelpPopover.js +80 -0
- package/dist/cjs/HelpPopover.js.map +1 -0
- package/dist/cjs/IconPicker.js +228 -0
- package/dist/cjs/IconPicker.js.map +1 -0
- package/dist/cjs/ImageWithFallback.js +52 -0
- package/dist/cjs/ImageWithFallback.js.map +1 -0
- package/dist/cjs/InlineInput.js +233 -0
- package/dist/cjs/InlineInput.js.map +1 -0
- package/dist/cjs/Insights.js +310 -0
- package/dist/cjs/Insights.js.map +1 -0
- package/dist/cjs/IntegrationCard.js +208 -0
- package/dist/cjs/IntegrationCard.js.map +1 -0
- package/dist/cjs/IntegrationDisconnectAlert.js +48 -0
- package/dist/cjs/IntegrationDisconnectAlert.js.map +1 -0
- package/dist/cjs/IntegrationWalkthroughModal.js +51 -0
- package/dist/cjs/IntegrationWalkthroughModal.js.map +1 -0
- package/dist/cjs/IpRestriction.js +525 -0
- package/dist/cjs/IpRestriction.js.map +1 -0
- package/dist/cjs/KeyboardShortcuts.js +282 -0
- package/dist/cjs/KeyboardShortcuts.js.map +1 -0
- package/dist/cjs/LoginPage.js +198 -0
- package/dist/cjs/LoginPage.js.map +1 -0
- package/dist/cjs/MadeWith.js +38 -0
- package/dist/cjs/MadeWith.js.map +1 -0
- package/dist/cjs/MenuBar.js +208 -0
- package/dist/cjs/MenuBar.js.map +1 -0
- package/dist/cjs/Metadata.js +195 -0
- package/dist/cjs/Metadata.js.map +1 -0
- package/dist/cjs/MoreDropdown.js +152 -0
- package/dist/cjs/MoreDropdown.js.map +1 -0
- package/dist/cjs/NavigationHeader.js +177 -0
- package/dist/cjs/NavigationHeader.js.map +1 -0
- package/dist/cjs/NeetoWidget.js +912 -0
- package/dist/cjs/NeetoWidget.js.map +1 -0
- package/dist/cjs/Onboarding.js +357 -0
- package/dist/cjs/Onboarding.js.map +1 -0
- package/dist/cjs/OptionFields.js +514 -0
- package/dist/cjs/OptionFields.js.map +1 -0
- package/dist/cjs/PageLoader.js +116 -0
- package/dist/cjs/PageLoader.js.map +1 -0
- package/dist/cjs/PhoneNumber.js +363 -0
- package/dist/cjs/PhoneNumber.js.map +1 -0
- package/dist/cjs/ProductEmbed.js +774 -0
- package/dist/cjs/ProductEmbed.js.map +1 -0
- package/dist/cjs/PublishBlock.js +125 -0
- package/dist/cjs/PublishBlock.js.map +1 -0
- package/dist/cjs/PublishYourItem.js +59 -0
- package/dist/cjs/PublishYourItem.js.map +1 -0
- package/dist/cjs/Rename.js +350 -0
- package/dist/cjs/Rename.js.map +1 -0
- package/dist/cjs/ResponsiveDevicePicker.js +64 -0
- package/dist/cjs/ResponsiveDevicePicker.js.map +1 -0
- package/dist/cjs/Schedule.js +889 -0
- package/dist/cjs/Schedule.js.map +1 -0
- package/dist/cjs/Scrollable.js +46 -0
- package/dist/cjs/Scrollable.js.map +1 -0
- package/dist/cjs/Search.js +117 -0
- package/dist/cjs/Search.js.map +1 -0
- package/dist/cjs/Security.js +376 -0
- package/dist/cjs/Security.js.map +1 -0
- package/dist/cjs/SendToFields.js +272 -0
- package/dist/cjs/SendToFields.js.map +1 -0
- package/dist/cjs/Settings.js +214 -0
- package/dist/cjs/Settings.js.map +1 -0
- package/dist/cjs/ShareRecordingPane.js +195 -0
- package/dist/cjs/ShareRecordingPane.js.map +1 -0
- package/dist/cjs/ShareViaEmail.js +348 -0
- package/dist/cjs/ShareViaEmail.js.map +1 -0
- package/dist/cjs/ShareViaLink.js +507 -0
- package/dist/cjs/ShareViaLink.js.map +1 -0
- package/dist/cjs/Sidebar.js +288 -0
- package/dist/cjs/Sidebar.js.map +1 -0
- package/dist/cjs/SubHeader.js +178 -0
- package/dist/cjs/SubHeader.js.map +1 -0
- package/dist/cjs/SuffixedInput.js +111 -0
- package/dist/cjs/SuffixedInput.js.map +1 -0
- package/dist/cjs/TableWrapper.js +32 -0
- package/dist/cjs/TableWrapper.js.map +1 -0
- package/dist/cjs/Taxonomy.js +442 -0
- package/dist/cjs/Taxonomy.js.map +1 -0
- package/dist/cjs/ThemeSidebar.js +1436 -0
- package/dist/cjs/ThemeSidebar.js.map +1 -0
- package/dist/cjs/TimeFormat.js +15 -0
- package/dist/cjs/TimeFormat.js.map +1 -0
- package/dist/cjs/TimezoneMismatchModal.js +143 -0
- package/dist/cjs/TimezoneMismatchModal.js.map +1 -0
- package/dist/cjs/ToggleFeatureCard.js +209 -0
- package/dist/cjs/ToggleFeatureCard.js.map +1 -0
- package/dist/cjs/defineProperty-886ed289.js +47 -0
- package/dist/cjs/defineProperty-886ed289.js.map +1 -0
- package/dist/cjs/extends-1b35a664.js +19 -0
- package/dist/cjs/extends-1b35a664.js.map +1 -0
- package/dist/cjs/index-00fdb8c2.js +542 -0
- package/dist/cjs/index-00fdb8c2.js.map +1 -0
- package/dist/cjs/index-248c4f4c.js +1186 -0
- package/dist/cjs/index-248c4f4c.js.map +1 -0
- package/dist/cjs/index-c55ad2bc.js +375 -0
- package/dist/cjs/index-c55ad2bc.js.map +1 -0
- package/dist/cjs/inject-css-80a5faa3.js +6 -0
- package/dist/cjs/inject-css-80a5faa3.js.map +1 -0
- package/dist/cjs/objectWithoutProperties-2fed2d7d.js +33 -0
- package/dist/cjs/objectWithoutProperties-2fed2d7d.js.map +1 -0
- package/dist/cjs/slicedToArray-f320d9e7.js +61 -0
- package/dist/cjs/slicedToArray-f320d9e7.js.map +1 -0
- package/dist/cjs/toConsumableArray-9abb3858.js +22 -0
- package/dist/cjs/toConsumableArray-9abb3858.js.map +1 -0
- package/dist/cjs/useColumns-a1c3668f.js +271 -0
- package/dist/cjs/useColumns-a1c3668f.js.map +1 -0
- package/dist/defineProperty-549061a7.js +43 -0
- package/dist/defineProperty-549061a7.js.map +1 -0
- package/dist/extends-093996c9.js +17 -0
- package/dist/extends-093996c9.js.map +1 -0
- package/dist/index-90c89467.js +509 -0
- package/dist/index-90c89467.js.map +1 -0
- package/dist/index-9720867c.js +372 -0
- package/dist/index-9720867c.js.map +1 -0
- package/dist/index-e5588516.js +1184 -0
- package/dist/index-e5588516.js.map +1 -0
- package/dist/inject-css-c86de496.js +4 -0
- package/dist/inject-css-c86de496.js.map +1 -0
- package/dist/objectWithoutProperties-a0edb288.js +31 -0
- package/dist/objectWithoutProperties-a0edb288.js.map +1 -0
- package/dist/slicedToArray-b4278ecd.js +57 -0
- package/dist/slicedToArray-b4278ecd.js.map +1 -0
- package/dist/toConsumableArray-1cc38429.js +20 -0
- package/dist/toConsumableArray-1cc38429.js.map +1 -0
- package/dist/useColumns-d17d1f72.js +258 -0
- package/dist/useColumns-d17d1f72.js.map +1 -0
- package/package.json +29 -17
- package/src/translations/de.json +7 -0
- package/src/translations/en.json +191 -31
- package/src/translations/es.json +7 -0
- package/src/translations/fr.json +7 -0
- package/src/translations/nl.json +7 -0
- package/src/translations/pl.json +7 -0
- package/src/translations/pt.json +7 -0
- package/types/Breadcrumbs.d.ts +1 -0
- package/types/Builder.d.ts +61 -12
- package/types/Columns.d.ts +112 -5
- package/types/ConfigurePageSidebar.d.ts +43 -0
- package/types/CopyToClipboardButton.d.ts +3 -0
- package/types/Currency.d.ts +48 -0
- package/types/CustomDomain.d.ts +2 -0
- package/types/CustomDomainDashboard.d.ts +14 -0
- package/types/DateRangeFilter.d.ts +2 -0
- package/types/DeleteArchiveModal.d.ts +60 -0
- package/types/EmailForm.d.ts +1 -1
- package/types/EmojiPicker.d.ts +33 -0
- package/types/EmojiReactions.d.ts +60 -0
- package/types/ErrorPage.d.ts +1 -0
- package/types/FloatingActionMenu.d.ts +56 -0
- package/types/Header.d.ts +2 -1
- package/types/HelpPopover.d.ts +42 -0
- package/types/Insights.d.ts +108 -0
- package/types/IntegrationCard.d.ts +2 -0
- package/types/KeyboardShortcuts.d.ts +2 -2
- package/types/MadeWith.d.ts +16 -0
- package/types/MoreDropdown.d.ts +4 -1
- package/types/NavigationHeader.d.ts +3 -1
- package/types/Onboarding.d.ts +63 -0
- package/types/OptionFields.d.ts +63 -0
- package/types/PhoneNumber.d.ts +6 -2
- package/types/ProductEmbed.d.ts +43 -0
- package/types/Rename.d.ts +4 -1
- package/types/Schedule.d.ts +2 -0
- package/types/Search.d.ts +2 -0
- package/types/Settings.d.ts +13 -10
- package/types/ShareRecordingPane.d.ts +50 -0
- package/types/ShareViaLink.d.ts +15 -4
- package/types/Sidebar.d.ts +16 -32
- package/types/SubHeader.d.ts +0 -1
- package/types/SuffixedInput.d.ts +43 -0
- package/types/ToggleFeatureCard.d.ts +8 -1
|
@@ -0,0 +1,912 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var defineProperty = require('./defineProperty-886ed289.js');
|
|
4
|
+
var i18next = require('i18next');
|
|
5
|
+
var ramda = require('ramda');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var reactQuery = require('@tanstack/react-query');
|
|
8
|
+
var neetoIcons = require('@bigbinary/neeto-icons');
|
|
9
|
+
var neetoui = require('@bigbinary/neetoui');
|
|
10
|
+
var reactI18next = require('react-i18next');
|
|
11
|
+
var _extends = require('./extends-1b35a664.js');
|
|
12
|
+
var slicedToArray = require('./slicedToArray-f320d9e7.js');
|
|
13
|
+
var classnames = require('classnames');
|
|
14
|
+
var neetoCist = require('@bigbinary/neeto-cist');
|
|
15
|
+
var usePrevious = require('@bigbinary/neeto-commons-frontend/react-utils/usePrevious');
|
|
16
|
+
var PageLoader = require('./PageLoader.js');
|
|
17
|
+
var CopyToClipboardButton = require('./CopyToClipboardButton.js');
|
|
18
|
+
var Prism = require('prismjs');
|
|
19
|
+
require('prismjs/themes/prism-tomorrow.css');
|
|
20
|
+
var formik = require('formik');
|
|
21
|
+
var formik$1 = require('@bigbinary/neetoui/formik');
|
|
22
|
+
var axios = require('axios');
|
|
23
|
+
var yup = require('yup');
|
|
24
|
+
var useMutationWithInvalidation = require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
|
|
25
|
+
var withT = require('@bigbinary/neeto-commons-frontend/react-utils/withT');
|
|
26
|
+
require('./objectWithoutProperties-2fed2d7d.js');
|
|
27
|
+
require('./inject-css-80a5faa3.js');
|
|
28
|
+
require('@bigbinary/neeto-commons-frontend/utils/general');
|
|
29
|
+
|
|
30
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
31
|
+
|
|
32
|
+
function _interopNamespace(e) {
|
|
33
|
+
if (e && e.__esModule) return e;
|
|
34
|
+
var n = Object.create(null);
|
|
35
|
+
if (e) {
|
|
36
|
+
Object.keys(e).forEach(function (k) {
|
|
37
|
+
if (k !== 'default') {
|
|
38
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
39
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
40
|
+
enumerable: true,
|
|
41
|
+
get: function () { return e[k]; }
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
n["default"] = e;
|
|
47
|
+
return Object.freeze(n);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
var i18next__default = /*#__PURE__*/_interopDefaultLegacy(i18next);
|
|
51
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
52
|
+
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
53
|
+
var usePrevious__default = /*#__PURE__*/_interopDefaultLegacy(usePrevious);
|
|
54
|
+
var Prism__default = /*#__PURE__*/_interopDefaultLegacy(Prism);
|
|
55
|
+
var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
|
|
56
|
+
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
57
|
+
var useMutationWithInvalidation__default = /*#__PURE__*/_interopDefaultLegacy(useMutationWithInvalidation);
|
|
58
|
+
var withT__default = /*#__PURE__*/_interopDefaultLegacy(withT);
|
|
59
|
+
|
|
60
|
+
var NEETO_WIDGET_USER_IDENTITY_KEY = "NeetoWidgetUserIdentity";
|
|
61
|
+
var SESSION_CONTEXT_KEY = "NeetoReplayWidgetSessionContext";
|
|
62
|
+
var INSTALLATION_HELP_EMAIL = "support@neeto.com";
|
|
63
|
+
var SAMPLE_CONTEXT_CODE_STRING = "window.".concat(SESSION_CONTEXT_KEY, " = {\n key1: \"value\",\n key2: [\"array\", \"of\", \"values\"],\n /* More key-value pairs */\n}");
|
|
64
|
+
var WIDGET_TYPES = {
|
|
65
|
+
changelog: "changelog",
|
|
66
|
+
chat: "chat",
|
|
67
|
+
replay: "replay"
|
|
68
|
+
};
|
|
69
|
+
var WIDGET_HELP_LINKS = {
|
|
70
|
+
changelog: "https://help.neetochangelog.com/articles/installation",
|
|
71
|
+
chat: "https://help.neetochat.com/articles/installation-using-javascript-snippet",
|
|
72
|
+
replay: "https://help.neetoreplay.com/articles/install-widget"
|
|
73
|
+
};
|
|
74
|
+
var WIDGET_DESCRIPTIONS = {
|
|
75
|
+
changelog: i18next.t("neetoMolecules.widget.email.body.values.embedCode.description.changelog"),
|
|
76
|
+
chat: i18next.t("neetoMolecules.widget.email.body.values.embedCode.description.chat"),
|
|
77
|
+
replay: i18next.t("neetoMolecules.widget.email.body.values.embedCode.description.replay")
|
|
78
|
+
};
|
|
79
|
+
var WIDGET_TYPES_VALUES = ramda.values(WIDGET_TYPES);
|
|
80
|
+
var QUERY_KEYS = {
|
|
81
|
+
apiKey: "neetoWidgetApiKey",
|
|
82
|
+
configuration: "neetoWidgetConfiguration"
|
|
83
|
+
};
|
|
84
|
+
var DEFAULT_QUERY_STALE_TIME = 60 * 60 * 1000; // 1 hour in milliseconds
|
|
85
|
+
|
|
86
|
+
var EMAIL_TYPES = {
|
|
87
|
+
embedCode: "embedCode",
|
|
88
|
+
userIdentity: "userIdentity",
|
|
89
|
+
sessionContext: "sessionContext",
|
|
90
|
+
"null": ""
|
|
91
|
+
};
|
|
92
|
+
var RAILS_ENV = {
|
|
93
|
+
production: "production",
|
|
94
|
+
staging: "staging",
|
|
95
|
+
development: "development"
|
|
96
|
+
};
|
|
97
|
+
var NEETO_WIDGET_SCRIPT_URL = {
|
|
98
|
+
staging: "https://d13nryxs46eypn.cloudfront.net/neeto-widget-staging.js",
|
|
99
|
+
production: "https://d13nryxs46eypn.cloudfront.net/neeto-widget.js"
|
|
100
|
+
};
|
|
101
|
+
var AVAILABLE_FRAMEWORK_OPTIONS = Object.freeze({
|
|
102
|
+
rails: "rails",
|
|
103
|
+
django: "django",
|
|
104
|
+
php: "php"
|
|
105
|
+
});
|
|
106
|
+
var FRAMEWORK_SELECT_OPTIONS = [{
|
|
107
|
+
label: "Ruby(Rails)",
|
|
108
|
+
value: AVAILABLE_FRAMEWORK_OPTIONS.rails
|
|
109
|
+
}, {
|
|
110
|
+
label: "Python(Django)",
|
|
111
|
+
value: AVAILABLE_FRAMEWORK_OPTIONS.django
|
|
112
|
+
}, {
|
|
113
|
+
label: "PHP",
|
|
114
|
+
value: AVAILABLE_FRAMEWORK_OPTIONS.php
|
|
115
|
+
}];
|
|
116
|
+
var SAMPLE_USER_IDENTITY_CODE_STRING = defineProperty._defineProperty(defineProperty._defineProperty(defineProperty._defineProperty({}, AVAILABLE_FRAMEWORK_OPTIONS.rails, "window.".concat(NEETO_WIDGET_USER_IDENTITY_KEY, " = {\n user_identifier: \"<%= current_user.id %>\", // User identifier\"\n name: \"<%= current_user.name %>\", // Full name\n email: \"<%= current_user.email %>\", // Email address\n started_at: \"<%= current_user.created_at.to_i %>\" // Signup date as a Unix timestamp ,\n}")), AVAILABLE_FRAMEWORK_OPTIONS.django, "window.".concat(NEETO_WIDGET_USER_IDENTITY_KEY, " = {\n user_identifier: \"{{ request.user.id|escapejs }}\", // User identifier\n name: \"{{ request.user.name|escapejs }}\", // Full name\n email: \"{{ request.user.email|escapejs }}\", // Email address\n started_at: \"{{ request.user.created_at|date:'U' }}\" // Signup date as a Unix timestamp\"\n}")), AVAILABLE_FRAMEWORK_OPTIONS.php, "window.".concat(NEETO_WIDGET_USER_IDENTITY_KEY, " = {\n user_identifier: <?php echo json_encode($current_user->id) ?>, // User identifier\n name: <?php echo json_encode($current_user->name) ?>, // Full name\n email: <?php echo json_encode($current_user->email) ?>, // Email address\n started_at: <?php echo strtotime($current_user->created_at) ?> // Signup date as a Unix timestamp\" ,\n}"));
|
|
117
|
+
var WIDGET_CONFIG_URL = "/api/widget/v1/neeto_widget_tokens";
|
|
118
|
+
var EMBED_CODE_EMAIL_URL = "/api/widget/v1/email_snippets";
|
|
119
|
+
var CHAT_WIDGET_KB_BASE_URL = "https://help.neetochat.com";
|
|
120
|
+
var CHANGELOG_WIDGET_KB_BASE_URL = "https://help.neetochangelog.com";
|
|
121
|
+
var REPLAY_WIDGET_KB_BASE_URL = "https://help.neetoreplay.com";
|
|
122
|
+
var NEETO_REPLAY_CONFIGURE_URL = "".concat(REPLAY_WIDGET_KB_BASE_URL, "/articles/configure-widget");
|
|
123
|
+
var NEETO_CHAT_USER_IDENTITY_URL = "".concat(CHAT_WIDGET_KB_BASE_URL, "/articles/info-about-logged-in-users");
|
|
124
|
+
var WIDGET_KB_HELP_URL = {
|
|
125
|
+
changelog: "".concat(CHANGELOG_WIDGET_KB_BASE_URL, "/categories/widget-installation-usage"),
|
|
126
|
+
chat: "".concat(CHAT_WIDGET_KB_BASE_URL, "/categories/installation"),
|
|
127
|
+
replay: "".concat(REPLAY_WIDGET_KB_BASE_URL, "/categories/widget-installation-usage")
|
|
128
|
+
};
|
|
129
|
+
var USE_NEETO_WIDGET_NPM_PAGE_URL = "https://www.npmjs.com/package/@bigbinary/react-use-neeto-widget";
|
|
130
|
+
|
|
131
|
+
var ChatWidgetBody = function ChatWidgetBody(_ref) {
|
|
132
|
+
var widgets = _ref.widgets;
|
|
133
|
+
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, widgets.includes(WIDGET_TYPES.changelog) && /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
134
|
+
i18nKey: "neetoMolecules.widget.email.body.values.embedCode.changelogHelp",
|
|
135
|
+
values: {
|
|
136
|
+
helpLink: WIDGET_HELP_LINKS.changelog
|
|
137
|
+
},
|
|
138
|
+
components: {
|
|
139
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
140
|
+
className: "mb-2",
|
|
141
|
+
style: "body2"
|
|
142
|
+
}),
|
|
143
|
+
a: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
144
|
+
className: "neeto-ui-text-primary-800",
|
|
145
|
+
href: WIDGET_HELP_LINKS.changelog,
|
|
146
|
+
rel: "noreferrer",
|
|
147
|
+
target: "_blank"
|
|
148
|
+
})
|
|
149
|
+
}
|
|
150
|
+
}), widgets.includes(WIDGET_TYPES.chat) && /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
151
|
+
i18nKey: "neetoMolecules.widget.email.body.values.embedCode.chatHelp",
|
|
152
|
+
values: {
|
|
153
|
+
helpLink: WIDGET_HELP_LINKS.chat
|
|
154
|
+
},
|
|
155
|
+
components: {
|
|
156
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
157
|
+
className: "mb-2",
|
|
158
|
+
style: "body2"
|
|
159
|
+
}),
|
|
160
|
+
a: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
161
|
+
className: "neeto-ui-text-primary-800",
|
|
162
|
+
href: WIDGET_HELP_LINKS.chat,
|
|
163
|
+
rel: "noreferrer",
|
|
164
|
+
target: "_blank"
|
|
165
|
+
})
|
|
166
|
+
}
|
|
167
|
+
}), widgets.includes(WIDGET_TYPES.replay) && /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
168
|
+
i18nKey: "neetoMolecules.widget.email.body.values.embedCode.replayHelp",
|
|
169
|
+
values: {
|
|
170
|
+
helpLink: WIDGET_HELP_LINKS.replay
|
|
171
|
+
},
|
|
172
|
+
components: {
|
|
173
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
174
|
+
className: "mb-2",
|
|
175
|
+
style: "body2"
|
|
176
|
+
}),
|
|
177
|
+
a: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
178
|
+
className: "neeto-ui-text-primary-800",
|
|
179
|
+
href: WIDGET_HELP_LINKS.replay,
|
|
180
|
+
rel: "noreferrer",
|
|
181
|
+
target: "_blank"
|
|
182
|
+
})
|
|
183
|
+
}
|
|
184
|
+
}));
|
|
185
|
+
};
|
|
186
|
+
|
|
187
|
+
var SyntaxHighlighter = function SyntaxHighlighter(_ref) {
|
|
188
|
+
var className = _ref.className,
|
|
189
|
+
code = _ref.code,
|
|
190
|
+
language = _ref.language;
|
|
191
|
+
React.useEffect(function () {
|
|
192
|
+
Prism__default["default"].highlightAll();
|
|
193
|
+
}, [code]);
|
|
194
|
+
return /*#__PURE__*/React__default["default"].createElement("pre", {
|
|
195
|
+
className: className
|
|
196
|
+
}, /*#__PURE__*/React__default["default"].createElement("code", {
|
|
197
|
+
className: "language-".concat(language)
|
|
198
|
+
}, code));
|
|
199
|
+
};
|
|
200
|
+
var SyntaxHighlighter$1 = /*#__PURE__*/React__default["default"].memo(SyntaxHighlighter);
|
|
201
|
+
|
|
202
|
+
var CodeBlock = function CodeBlock(_ref) {
|
|
203
|
+
var _ref$title = _ref.title,
|
|
204
|
+
title = _ref$title === void 0 ? /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
205
|
+
i18nKey: "neetoMolecules.codeblock.codeSnippet"
|
|
206
|
+
})) : _ref$title,
|
|
207
|
+
codeString = _ref.codeString,
|
|
208
|
+
_ref$showCopyButton = _ref.showCopyButton,
|
|
209
|
+
showCopyButton = _ref$showCopyButton === void 0 ? true : _ref$showCopyButton,
|
|
210
|
+
_ref$className = _ref.className,
|
|
211
|
+
className = _ref$className === void 0 ? "" : _ref$className,
|
|
212
|
+
_ref$sendViaEmail = _ref.sendViaEmail,
|
|
213
|
+
sendViaEmail = _ref$sendViaEmail === void 0 ? undefined : _ref$sendViaEmail,
|
|
214
|
+
_ref$frameworkProps = _ref.frameworkProps,
|
|
215
|
+
frameworkProps = _ref$frameworkProps === void 0 ? {} : _ref$frameworkProps;
|
|
216
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
217
|
+
t = _useTranslation.t;
|
|
218
|
+
var _ref2 = frameworkProps !== null && frameworkProps !== void 0 ? frameworkProps : {},
|
|
219
|
+
selectedFramework = _ref2.selectedFramework,
|
|
220
|
+
setSelectedFramework = _ref2.setSelectedFramework;
|
|
221
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
222
|
+
className: classnames__default["default"](["relative", className])
|
|
223
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
224
|
+
className: "neeto-ui-bg-primary-100 neeto-ui-rounded-lg flex w-full flex-wrap items-center justify-between gap-2 rounded-b-none p-3"
|
|
225
|
+
}, title && /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
226
|
+
className: "m-0 flex-shrink-0",
|
|
227
|
+
"data-cy": "code-block-title-text",
|
|
228
|
+
style: "h4"
|
|
229
|
+
}, title), selectedFramework && /*#__PURE__*/React__default["default"].createElement(neetoui.Select, {
|
|
230
|
+
className: "w-40",
|
|
231
|
+
"data-testid": "framework-select",
|
|
232
|
+
options: FRAMEWORK_SELECT_OPTIONS,
|
|
233
|
+
value: selectedFramework,
|
|
234
|
+
onChange: setSelectedFramework
|
|
235
|
+
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
236
|
+
className: "ml-auto flex flex-shrink-0 items-center justify-end gap-2"
|
|
237
|
+
}, sendViaEmail ? /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
238
|
+
style: "text",
|
|
239
|
+
label: t("neetoMolecules.widget.installation.snippet.sendViaEmail"),
|
|
240
|
+
onClick: sendViaEmail
|
|
241
|
+
}) : null, showCopyButton && /*#__PURE__*/React__default["default"].createElement(CopyToClipboardButton, {
|
|
242
|
+
label: t("neetoMolecules.widget.installation.snippet.copy"),
|
|
243
|
+
style: "primary",
|
|
244
|
+
value: codeString
|
|
245
|
+
}))), /*#__PURE__*/React__default["default"].createElement(SyntaxHighlighter$1, {
|
|
246
|
+
className: "neeto-ui-bg-gray-800 neeto-ui-rounded-lg m-0 rounded-t-none",
|
|
247
|
+
code: codeString,
|
|
248
|
+
language: "javascript"
|
|
249
|
+
}));
|
|
250
|
+
};
|
|
251
|
+
|
|
252
|
+
var buildEmbedWidgetScript = function buildEmbedWidgetScript() {
|
|
253
|
+
var widgetScriptUrl = window.globalProps.railsEnv === RAILS_ENV.production ? NEETO_WIDGET_SCRIPT_URL.production : NEETO_WIDGET_SCRIPT_URL.staging;
|
|
254
|
+
return "<script src=\"".concat(widgetScriptUrl, "\"></script>");
|
|
255
|
+
};
|
|
256
|
+
var indentAndFormat = function indentAndFormat(str) {
|
|
257
|
+
var formatter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ramda.identity;
|
|
258
|
+
return str.split("\n").map(formatter).join("\n ");
|
|
259
|
+
};
|
|
260
|
+
var getCommentedCommand = function getCommentedCommand(command, isEnabled) {
|
|
261
|
+
return isEnabled ? command : "/// ".concat(command);
|
|
262
|
+
};
|
|
263
|
+
var embedWidgetEnvironment = function embedWidgetEnvironment() {
|
|
264
|
+
switch (window.globalProps.railsEnv) {
|
|
265
|
+
case RAILS_ENV.production:
|
|
266
|
+
return "";
|
|
267
|
+
case RAILS_ENV.development:
|
|
268
|
+
return "environment: \"".concat(RAILS_ENV.development, "\",");
|
|
269
|
+
case RAILS_ENV.staging:
|
|
270
|
+
return "environment: \"".concat(RAILS_ENV.staging, "\",");
|
|
271
|
+
default:
|
|
272
|
+
return "/* Unidentified RAILS_ENV, */";
|
|
273
|
+
}
|
|
274
|
+
};
|
|
275
|
+
var embedWidgetApiKey = function embedWidgetApiKey(apiKey) {
|
|
276
|
+
return "apiKey: \"".concat(apiKey, "\",");
|
|
277
|
+
};
|
|
278
|
+
var addChangelogOptions = function addChangelogOptions() {
|
|
279
|
+
return "neetoChangelogOptions: {\n elementId: \"neetochangelog-trigger\",\n},";
|
|
280
|
+
};
|
|
281
|
+
var wrapBlockInOnLoad = function wrapBlockInOnLoad(codeBlock) {
|
|
282
|
+
return "window.addEventListener(\"load\", () => ".concat(codeBlock, ");");
|
|
283
|
+
};
|
|
284
|
+
var embedWidgetFunctionCall = function embedWidgetFunctionCall(enabledWidgets, apiKey) {
|
|
285
|
+
return "embedNeetoWidget({\n ".concat(embedWidgetEnvironment(), "\n ").concat(indentAndFormat(embedWidgetApiKey(apiKey)), "\n ").concat(indentAndFormat(addChangelogOptions(), function (cmd) {
|
|
286
|
+
return getCommentedCommand(cmd, enabledWidgets.changelog);
|
|
287
|
+
}), "\n})");
|
|
288
|
+
};
|
|
289
|
+
var filterMarkedCommands = function filterMarkedCommands(queryString) {
|
|
290
|
+
return queryString.split("\n").filter(function (line) {
|
|
291
|
+
return !line.includes("///") && line.trim();
|
|
292
|
+
}).join("\n");
|
|
293
|
+
};
|
|
294
|
+
var getSampleUserIdentity = function getSampleUserIdentity(enabledWidgets, selectedFramework) {
|
|
295
|
+
var splitCodeLines = SAMPLE_USER_IDENTITY_CODE_STRING[selectedFramework].split("\n");
|
|
296
|
+
return filterMarkedCommands(splitCodeLines.map(function (cmd) {
|
|
297
|
+
var isEmailKey = cmd.includes("email");
|
|
298
|
+
var isObjectStartLine = cmd === splitCodeLines[0];
|
|
299
|
+
var isObjectEndLine = cmd === ramda.last(splitCodeLines);
|
|
300
|
+
var isLineHidden = !isEmailKey && !isObjectStartLine && !isObjectEndLine;
|
|
301
|
+
if (!enabledWidgets.chat && isLineHidden || !enabledWidgets.chat && !enabledWidgets.replay) {
|
|
302
|
+
return null;
|
|
303
|
+
}
|
|
304
|
+
return cmd;
|
|
305
|
+
}).join("\n"));
|
|
306
|
+
};
|
|
307
|
+
var sampleConsolidatedCodeString = function sampleConsolidatedCodeString(enabledWidgets, apiKey) {
|
|
308
|
+
return filterMarkedCommands("".concat(buildEmbedWidgetScript(), "\n<script>\n ").concat(enabledWidgets.chat || enabledWidgets.replay ? "window.".concat(NEETO_WIDGET_USER_IDENTITY_KEY, " = {};") : "", "\n ").concat(enabledWidgets.replay ? "window.".concat(SESSION_CONTEXT_KEY, " = {};") : "", "\n\n ").concat(indentAndFormat(wrapBlockInOnLoad(embedWidgetFunctionCall(enabledWidgets, apiKey))), "\n</script>"));
|
|
309
|
+
};
|
|
310
|
+
var getEmailWidgetSnippetFormInitialValues = function getEmailWidgetSnippetFormInitialValues(subject) {
|
|
311
|
+
return {
|
|
312
|
+
emails: "",
|
|
313
|
+
subject: subject
|
|
314
|
+
};
|
|
315
|
+
};
|
|
316
|
+
var getSortedPrefixedWidgets = function getSortedPrefixedWidgets(widgets) {
|
|
317
|
+
var sortedWidgets = widgets.sort().map(function (widget) {
|
|
318
|
+
return "neeto".concat(neetoCist.capitalize(widget));
|
|
319
|
+
});
|
|
320
|
+
return sortedWidgets.length === 1 ? sortedWidgets : i18next.t("neetoMolecules.widget.email.widgetList", {
|
|
321
|
+
widgets: sortedWidgets
|
|
322
|
+
});
|
|
323
|
+
};
|
|
324
|
+
var getWidgetDescriptions = function getWidgetDescriptions(widgets) {
|
|
325
|
+
var values = Object.entries(WIDGET_DESCRIPTIONS).filter(function (_ref) {
|
|
326
|
+
var _ref2 = slicedToArray._slicedToArray(_ref, 1),
|
|
327
|
+
widget = _ref2[0];
|
|
328
|
+
return widgets.includes(widget);
|
|
329
|
+
});
|
|
330
|
+
return ramda.pluck(1, values);
|
|
331
|
+
};
|
|
332
|
+
var getEmailWidgetSnippetValidationSchema = function getEmailWidgetSnippetValidationSchema() {
|
|
333
|
+
return yup__namespace.object({
|
|
334
|
+
emails: yup__namespace.array().required().label(i18next__default["default"].t("neetoMolecules.widget.email.fields.emails.label")),
|
|
335
|
+
subject: yup__namespace.string().required().label(i18next__default["default"].t("neetoMolecules.widget.email.fields.subject.label"))
|
|
336
|
+
});
|
|
337
|
+
};
|
|
338
|
+
var getWidgetApiKeyUrl = function getWidgetApiKeyUrl() {
|
|
339
|
+
return "api/widget/v1/api_keys/".concat(window.globalProps.organization.subdomain);
|
|
340
|
+
};
|
|
341
|
+
var shouldShowSwitches = function shouldShowSwitches() {
|
|
342
|
+
var _globalProps$user;
|
|
343
|
+
var email = ((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email) || "";
|
|
344
|
+
if (window.globalProps.railsEnv === RAILS_ENV.production) {
|
|
345
|
+
return email.toLowerCase().endsWith("@bigbinary.com");
|
|
346
|
+
}
|
|
347
|
+
return true;
|
|
348
|
+
};
|
|
349
|
+
|
|
350
|
+
var queryWidgetApiKey = function queryWidgetApiKey() {
|
|
351
|
+
return axios__default["default"].get(getWidgetApiKeyUrl(), {
|
|
352
|
+
showToastr: false
|
|
353
|
+
});
|
|
354
|
+
};
|
|
355
|
+
var emailWidgetSnippet = function emailWidgetSnippet(data) {
|
|
356
|
+
return axios__default["default"].post(EMBED_CODE_EMAIL_URL, data);
|
|
357
|
+
};
|
|
358
|
+
var fetchWidgetConfiguration = function fetchWidgetConfiguration() {
|
|
359
|
+
return axios__default["default"].get(WIDGET_CONFIG_URL);
|
|
360
|
+
};
|
|
361
|
+
var updateWidgetConfiguration = function updateWidgetConfiguration(_ref) {
|
|
362
|
+
var id = _ref.id,
|
|
363
|
+
payload = _ref.payload;
|
|
364
|
+
return axios__default["default"].put("".concat(WIDGET_CONFIG_URL, "/").concat(id), payload);
|
|
365
|
+
};
|
|
366
|
+
|
|
367
|
+
var useEmailEmbedCode = function useEmailEmbedCode(onSuccess) {
|
|
368
|
+
return (
|
|
369
|
+
// useMutation(emailData => emailWidgetSnippet(emailData), { onSuccess });
|
|
370
|
+
reactQuery.useMutation({
|
|
371
|
+
mutationFn: function mutationFn(emailData) {
|
|
372
|
+
return emailWidgetSnippet(emailData);
|
|
373
|
+
},
|
|
374
|
+
onSuccess: onSuccess
|
|
375
|
+
})
|
|
376
|
+
);
|
|
377
|
+
};
|
|
378
|
+
|
|
379
|
+
var CodeSnippet = function CodeSnippet(_ref) {
|
|
380
|
+
var isPaneOpen = _ref.isPaneOpen,
|
|
381
|
+
onClose = _ref.onClose,
|
|
382
|
+
_ref$onSent = _ref.onSent,
|
|
383
|
+
onSent = _ref$onSent === void 0 ? neetoCist.noop : _ref$onSent,
|
|
384
|
+
codeString = _ref.codeString,
|
|
385
|
+
_ref$subject = _ref.subject,
|
|
386
|
+
subject = _ref$subject === void 0 ? "" : _ref$subject,
|
|
387
|
+
_ref$body = _ref.body,
|
|
388
|
+
body = _ref$body === void 0 ? "" : _ref$body,
|
|
389
|
+
_ref$emailType = _ref.emailType,
|
|
390
|
+
emailType = _ref$emailType === void 0 ? EMAIL_TYPES.embedCode : _ref$emailType,
|
|
391
|
+
_ref$enabledWidgets = _ref.enabledWidgets,
|
|
392
|
+
enabledWidgets = _ref$enabledWidgets === void 0 ? {} : _ref$enabledWidgets;
|
|
393
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
394
|
+
t = _useTranslation.t;
|
|
395
|
+
var _useState = React.useState(FRAMEWORK_SELECT_OPTIONS[0]),
|
|
396
|
+
_useState2 = slicedToArray._slicedToArray(_useState, 2),
|
|
397
|
+
selectedFramework = _useState2[0],
|
|
398
|
+
setSelectedFramework = _useState2[1];
|
|
399
|
+
var emailMutation = useEmailEmbedCode(onSent);
|
|
400
|
+
var codeToDisplay = emailType === EMAIL_TYPES.userIdentity ? getSampleUserIdentity(enabledWidgets, selectedFramework.value) : codeString;
|
|
401
|
+
var handleSubmit = function handleSubmit(formData) {
|
|
402
|
+
var _body$ref$current$inn, _body$ref;
|
|
403
|
+
if (ramda.any(function (_ref2) {
|
|
404
|
+
var valid = _ref2.valid;
|
|
405
|
+
return !valid;
|
|
406
|
+
}, formData.emails)) {
|
|
407
|
+
neetoui.Toastr.error(t("neetoMolecules.widget.email.fields.emails.invalidError"));
|
|
408
|
+
return;
|
|
409
|
+
}
|
|
410
|
+
emailMutation.mutate({
|
|
411
|
+
subject: formData.subject,
|
|
412
|
+
emails: ramda.pluck("value", formData.emails),
|
|
413
|
+
message: (_body$ref$current$inn = (_body$ref = body.ref) === null || _body$ref === void 0 ? void 0 : _body$ref.current.innerHTML) !== null && _body$ref$current$inn !== void 0 ? _body$ref$current$inn : body,
|
|
414
|
+
snippet: codeToDisplay
|
|
415
|
+
});
|
|
416
|
+
};
|
|
417
|
+
var renderCodeBlockProps = function renderCodeBlockProps() {
|
|
418
|
+
var props = {
|
|
419
|
+
codeString: codeToDisplay,
|
|
420
|
+
showCopyButton: false,
|
|
421
|
+
className: "neeto-ui-bg-primary-100 neeto-ui-rounded-lg"
|
|
422
|
+
};
|
|
423
|
+
if (emailType === EMAIL_TYPES.userIdentity) {
|
|
424
|
+
props = ramda.assoc("frameworkProps", {
|
|
425
|
+
selectedFramework: selectedFramework,
|
|
426
|
+
setSelectedFramework: setSelectedFramework
|
|
427
|
+
}, props);
|
|
428
|
+
}
|
|
429
|
+
return props;
|
|
430
|
+
};
|
|
431
|
+
return /*#__PURE__*/React__default["default"].createElement(neetoui.Pane, {
|
|
432
|
+
onClose: onClose,
|
|
433
|
+
isOpen: isPaneOpen
|
|
434
|
+
}, /*#__PURE__*/React__default["default"].createElement(formik.Formik, {
|
|
435
|
+
initialValues: getEmailWidgetSnippetFormInitialValues(subject),
|
|
436
|
+
validationSchema: getEmailWidgetSnippetValidationSchema(),
|
|
437
|
+
onSubmit: handleSubmit
|
|
438
|
+
}, /*#__PURE__*/React__default["default"].createElement(formik.Form, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Pane.Header, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
439
|
+
style: "h2"
|
|
440
|
+
}, t("neetoMolecules.widget.email.title"))), /*#__PURE__*/React__default["default"].createElement(neetoui.Pane.Body, null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
441
|
+
className: "w-full space-y-4"
|
|
442
|
+
}, /*#__PURE__*/React__default["default"].createElement(formik$1.MultiEmailInput, {
|
|
443
|
+
required: true,
|
|
444
|
+
label: t("neetoMolecules.widget.email.fields.emails.label"),
|
|
445
|
+
name: "emails",
|
|
446
|
+
placeholder: t("neetoMolecules.widget.email.fields.emails.placeholder")
|
|
447
|
+
}), /*#__PURE__*/React__default["default"].createElement(formik$1.Input, {
|
|
448
|
+
required: true,
|
|
449
|
+
label: t("neetoMolecules.widget.email.fields.subject.label"),
|
|
450
|
+
name: "subject",
|
|
451
|
+
type: "text"
|
|
452
|
+
}), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
453
|
+
style: "body2"
|
|
454
|
+
}, body), /*#__PURE__*/React__default["default"].createElement(CodeBlock, renderCodeBlockProps()))), /*#__PURE__*/React__default["default"].createElement(neetoui.Pane.Footer, {
|
|
455
|
+
className: "gap-x-2"
|
|
456
|
+
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
457
|
+
disabled: emailMutation.isPending,
|
|
458
|
+
label: t("neetoMolecules.widget.email.actions.send"),
|
|
459
|
+
loading: emailMutation.isPending,
|
|
460
|
+
type: "submit"
|
|
461
|
+
}), /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
|
|
462
|
+
label: t("neetoMolecules.widget.email.actions.cancel"),
|
|
463
|
+
style: "text",
|
|
464
|
+
onClick: onClose
|
|
465
|
+
})))));
|
|
466
|
+
};
|
|
467
|
+
|
|
468
|
+
var useForceUpdate = function useForceUpdate() {
|
|
469
|
+
// eslint-disable-next-line react/hook-use-state
|
|
470
|
+
var _useState = React.useState(0),
|
|
471
|
+
_useState2 = slicedToArray._slicedToArray(_useState, 2),
|
|
472
|
+
setValue = _useState2[1];
|
|
473
|
+
return function () {
|
|
474
|
+
return setValue(function (value) {
|
|
475
|
+
return value + 1;
|
|
476
|
+
});
|
|
477
|
+
};
|
|
478
|
+
};
|
|
479
|
+
|
|
480
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
481
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { defineProperty._defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
482
|
+
var useFetchApiKey = function useFetchApiKey() {
|
|
483
|
+
return (
|
|
484
|
+
// useQuery(
|
|
485
|
+
// QUERY_KEYS.apiKey,
|
|
486
|
+
// () => {
|
|
487
|
+
// if (
|
|
488
|
+
// window.globalProps.railsEnv === "heroku" ||
|
|
489
|
+
// !window.globalProps.ssoEnabled
|
|
490
|
+
// ) {
|
|
491
|
+
// return Promise.resolve({ widgetApiKey: "placeholder-api-key" });
|
|
492
|
+
// }
|
|
493
|
+
|
|
494
|
+
// return queryWidgetApiKey();
|
|
495
|
+
// },
|
|
496
|
+
// { staleTime: DEFAULT_QUERY_STALE_TIME }
|
|
497
|
+
// );
|
|
498
|
+
reactQuery.useQuery({
|
|
499
|
+
queryKey: [QUERY_KEYS.apiKey],
|
|
500
|
+
queryFn: function queryFn() {
|
|
501
|
+
if (window.globalProps.railsEnv === "heroku" || !window.globalProps.ssoEnabled) {
|
|
502
|
+
return Promise.resolve({
|
|
503
|
+
widgetApiKey: "placeholder-api-key"
|
|
504
|
+
});
|
|
505
|
+
}
|
|
506
|
+
return queryWidgetApiKey();
|
|
507
|
+
},
|
|
508
|
+
staleTime: DEFAULT_QUERY_STALE_TIME
|
|
509
|
+
})
|
|
510
|
+
);
|
|
511
|
+
};
|
|
512
|
+
var useFetchConfigurations = function useFetchConfigurations() {
|
|
513
|
+
return (
|
|
514
|
+
// useQuery(QUERY_KEYS.configuration, fetchWidgetConfiguration, {
|
|
515
|
+
// staleTime: DEFAULT_QUERY_STALE_TIME,
|
|
516
|
+
// });
|
|
517
|
+
reactQuery.useQuery({
|
|
518
|
+
queryKey: [QUERY_KEYS.configuration],
|
|
519
|
+
queryFn: fetchWidgetConfiguration,
|
|
520
|
+
staleTime: DEFAULT_QUERY_STALE_TIME
|
|
521
|
+
})
|
|
522
|
+
);
|
|
523
|
+
};
|
|
524
|
+
var useUpdateConfigurations = function useUpdateConfigurations() {
|
|
525
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
526
|
+
return (
|
|
527
|
+
// const queryClient = useQueryClient();
|
|
528
|
+
|
|
529
|
+
// return useMutation(updateWidgetConfiguration, {
|
|
530
|
+
// ...options,
|
|
531
|
+
// onSuccess: () => queryClient.invalidateQueries(QUERY_KEYS.configuration),
|
|
532
|
+
// });
|
|
533
|
+
useMutationWithInvalidation__default["default"](updateWidgetConfiguration, _objectSpread({
|
|
534
|
+
keysToInvalidate: [QUERY_KEYS.configuration]
|
|
535
|
+
}, options))
|
|
536
|
+
);
|
|
537
|
+
};
|
|
538
|
+
|
|
539
|
+
var TooltipSwitch = withT__default["default"](function (_ref) {
|
|
540
|
+
var t = _ref.t,
|
|
541
|
+
enabledClientApps = _ref.enabledClientApps,
|
|
542
|
+
widget = _ref.widget,
|
|
543
|
+
selectedWidgets = _ref.selectedWidgets,
|
|
544
|
+
updateSelectedWidgets = _ref.updateSelectedWidgets;
|
|
545
|
+
return /*#__PURE__*/React__default["default"].createElement(neetoui.Tooltip, {
|
|
546
|
+
disabled: enabledClientApps.includes(widget),
|
|
547
|
+
placement: "right",
|
|
548
|
+
content: t("neetoMolecules.widget.tooltips.productIsDisabled", {
|
|
549
|
+
productName: "neeto".concat(neetoCist.capitalize(widget))
|
|
550
|
+
})
|
|
551
|
+
}, /*#__PURE__*/React__default["default"].createElement(neetoui.Switch, {
|
|
552
|
+
checked: selectedWidgets.includes(widget),
|
|
553
|
+
disabled: !enabledClientApps.includes(widget),
|
|
554
|
+
onChange: function onChange() {
|
|
555
|
+
return updateSelectedWidgets(widget);
|
|
556
|
+
}
|
|
557
|
+
}));
|
|
558
|
+
});
|
|
559
|
+
|
|
560
|
+
var SelectionSwitches = function SelectionSwitches(_ref) {
|
|
561
|
+
var selectedWidgets = _ref.selectedWidgets,
|
|
562
|
+
updateSelectedWidgets = _ref.updateSelectedWidgets,
|
|
563
|
+
primaryApp = _ref.primaryApp,
|
|
564
|
+
enabledClientApps = _ref.enabledClientApps;
|
|
565
|
+
var primaryWidget = WIDGET_TYPES_VALUES.includes(primaryApp) ? primaryApp : "";
|
|
566
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
567
|
+
className: "mb-4 flex w-full flex-wrap items-center justify-between gap-6"
|
|
568
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
569
|
+
className: "flex items-center space-x-2"
|
|
570
|
+
}, neetoCist.isNotEmpty(primaryWidget) && /*#__PURE__*/React__default["default"].createElement(TooltipSwitch, {
|
|
571
|
+
enabledClientApps: enabledClientApps,
|
|
572
|
+
selectedWidgets: selectedWidgets,
|
|
573
|
+
updateSelectedWidgets: updateSelectedWidgets,
|
|
574
|
+
widget: primaryWidget
|
|
575
|
+
}), /*#__PURE__*/React__default["default"].createElement(neetoui.Label, null, "neeto", neetoCist.capitalize(primaryWidget))), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
576
|
+
className: "flex flex-wrap items-center gap-6 sm:justify-end"
|
|
577
|
+
}, WIDGET_TYPES_VALUES.map(function (widget, index) {
|
|
578
|
+
return primaryApp !== widget && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
579
|
+
className: "flex items-center space-x-2",
|
|
580
|
+
key: index
|
|
581
|
+
}, /*#__PURE__*/React__default["default"].createElement(TooltipSwitch, {
|
|
582
|
+
enabledClientApps: enabledClientApps,
|
|
583
|
+
selectedWidgets: selectedWidgets,
|
|
584
|
+
updateSelectedWidgets: updateSelectedWidgets,
|
|
585
|
+
widget: widget
|
|
586
|
+
}), /*#__PURE__*/React__default["default"].createElement(neetoui.Label, null, "neeto", neetoCist.capitalize(widget)));
|
|
587
|
+
})));
|
|
588
|
+
};
|
|
589
|
+
|
|
590
|
+
var EmbedCode = function EmbedCode(_ref) {
|
|
591
|
+
var showSessionContext = _ref.showSessionContext,
|
|
592
|
+
showUserIdentity = _ref.showUserIdentity,
|
|
593
|
+
_ref$primaryApp = _ref.primaryApp,
|
|
594
|
+
primaryApp = _ref$primaryApp === void 0 ? "" : _ref$primaryApp,
|
|
595
|
+
_ref$maxWidth = _ref.maxWidth,
|
|
596
|
+
maxWidth = _ref$maxWidth === void 0 ? "max-w-3xl" : _ref$maxWidth;
|
|
597
|
+
var _useState = React.useState(EMAIL_TYPES["null"]),
|
|
598
|
+
_useState2 = slicedToArray._slicedToArray(_useState, 2),
|
|
599
|
+
emailType = _useState2[0],
|
|
600
|
+
setEmailType = _useState2[1];
|
|
601
|
+
var _useState3 = React.useState(FRAMEWORK_SELECT_OPTIONS[0]),
|
|
602
|
+
_useState4 = slicedToArray._slicedToArray(_useState3, 2),
|
|
603
|
+
selectedFramework = _useState4[0],
|
|
604
|
+
setSelectedFramework = _useState4[1];
|
|
605
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
606
|
+
t = _useTranslation.t;
|
|
607
|
+
var bodyRef = React.useRef();
|
|
608
|
+
var forceUpdate = useForceUpdate();
|
|
609
|
+
React.useEffect(function () {
|
|
610
|
+
forceUpdate();
|
|
611
|
+
}, []);
|
|
612
|
+
var _useFetchApiKey = useFetchApiKey(),
|
|
613
|
+
_useFetchApiKey$data = _useFetchApiKey.data,
|
|
614
|
+
_useFetchApiKey$data2 = _useFetchApiKey$data === void 0 ? {} : _useFetchApiKey$data,
|
|
615
|
+
_useFetchApiKey$data3 = _useFetchApiKey$data2.widgetApiKey,
|
|
616
|
+
widgetApiKey = _useFetchApiKey$data3 === void 0 ? "" : _useFetchApiKey$data3,
|
|
617
|
+
isLoadingApiKey = _useFetchApiKey.isLoading;
|
|
618
|
+
var _useFetchConfiguratio = useFetchConfigurations(),
|
|
619
|
+
_useFetchConfiguratio2 = _useFetchConfiguratio.data,
|
|
620
|
+
_useFetchConfiguratio3 = _useFetchConfiguratio2 === void 0 ? {} : _useFetchConfiguratio2,
|
|
621
|
+
_useFetchConfiguratio4 = _useFetchConfiguratio3.neetoWidgetTokens,
|
|
622
|
+
neetoWidgetTokens = _useFetchConfiguratio4 === void 0 ? [] : _useFetchConfiguratio4,
|
|
623
|
+
isLoadingConfigurations = _useFetchConfiguratio.isLoading;
|
|
624
|
+
var _useUpdateConfigurati = useUpdateConfigurations(),
|
|
625
|
+
updateWidgetConfiguration = _useUpdateConfigurati.mutate;
|
|
626
|
+
var previousEmailType = usePrevious__default["default"](emailType);
|
|
627
|
+
var selectedWidgets = neetoWidgetTokens.filter(function (item) {
|
|
628
|
+
return item.enabled && (shouldShowSwitches() || item.clientApplicationName.toLowerCase() === primaryApp);
|
|
629
|
+
}).map(function (item) {
|
|
630
|
+
return item.clientApplicationName.toLowerCase();
|
|
631
|
+
});
|
|
632
|
+
var isOnlyChatWidgetSelected = selectedWidgets.length === 1 && selectedWidgets[0] === WIDGET_TYPES.chat;
|
|
633
|
+
var enabledClientApps = neetoWidgetTokens.filter(ramda.prop("clientApplicationEnabled")).map(function (item) {
|
|
634
|
+
return item.clientApplicationName.toLowerCase();
|
|
635
|
+
});
|
|
636
|
+
var enabledWidgets = ramda.fromPairs(selectedWidgets.map(function (widget) {
|
|
637
|
+
return [widget, true];
|
|
638
|
+
}));
|
|
639
|
+
var shouldShowUserIdentity = showUserIdentity !== null && showUserIdentity !== void 0 ? showUserIdentity : enabledWidgets.chat || enabledWidgets.replay;
|
|
640
|
+
var shouldShowSessionContext = showSessionContext !== null && showSessionContext !== void 0 ? showSessionContext : enabledWidgets.replay;
|
|
641
|
+
var updateSelectedWidgets = function updateSelectedWidgets(widget) {
|
|
642
|
+
var widgetId = neetoWidgetTokens.find(function (item) {
|
|
643
|
+
return item.clientApplicationName.toLowerCase() === widget;
|
|
644
|
+
}).id;
|
|
645
|
+
var isEnabled = !selectedWidgets.includes(widget);
|
|
646
|
+
updateWidgetConfiguration({
|
|
647
|
+
id: widgetId,
|
|
648
|
+
payload: {
|
|
649
|
+
enabled: isEnabled
|
|
650
|
+
}
|
|
651
|
+
}, {
|
|
652
|
+
onSuccess: function onSuccess() {
|
|
653
|
+
var productName = "neeto".concat(neetoCist.capitalize(widget));
|
|
654
|
+
var response = isEnabled ? "neetoMolecules.widget.installation.enabled" : "neetoMolecules.widget.installation.disabled";
|
|
655
|
+
neetoui.Toastr.success(t(response, {
|
|
656
|
+
productName: productName
|
|
657
|
+
}));
|
|
658
|
+
}
|
|
659
|
+
});
|
|
660
|
+
};
|
|
661
|
+
var getEmbedCodeString = function getEmbedCodeString() {
|
|
662
|
+
return neetoCist.isNotEmpty(widgetApiKey) ? sampleConsolidatedCodeString(enabledWidgets, widgetApiKey) : "";
|
|
663
|
+
};
|
|
664
|
+
var getSnippetProps = function getSnippetProps(selectedEmailType) {
|
|
665
|
+
switch (selectedEmailType) {
|
|
666
|
+
case EMAIL_TYPES.embedCode:
|
|
667
|
+
return {
|
|
668
|
+
codeString: getEmbedCodeString(),
|
|
669
|
+
subject: t("neetoMolecules.widget.email.fields.subject.values.embedCode", {
|
|
670
|
+
widgetList: getSortedPrefixedWidgets(selectedWidgets)
|
|
671
|
+
}),
|
|
672
|
+
body: /*#__PURE__*/React__default["default"].createElement("div", {
|
|
673
|
+
ref: bodyRef
|
|
674
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
675
|
+
i18nKey: "neetoMolecules.widget.email.body.values.embedCode.mainText",
|
|
676
|
+
components: {
|
|
677
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
678
|
+
className: "mb-2",
|
|
679
|
+
style: "body2"
|
|
680
|
+
})
|
|
681
|
+
},
|
|
682
|
+
values: {
|
|
683
|
+
val: getWidgetDescriptions(selectedWidgets)
|
|
684
|
+
}
|
|
685
|
+
}), /*#__PURE__*/React__default["default"].createElement(ChatWidgetBody, {
|
|
686
|
+
widgets: selectedWidgets
|
|
687
|
+
}), /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
688
|
+
i18nKey: "neetoMolecules.widget.email.body.values.embedCode.supportText",
|
|
689
|
+
values: {
|
|
690
|
+
helpEmail: INSTALLATION_HELP_EMAIL
|
|
691
|
+
},
|
|
692
|
+
components: {
|
|
693
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
694
|
+
className: "mb-2",
|
|
695
|
+
style: "body2"
|
|
696
|
+
}),
|
|
697
|
+
mail: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
698
|
+
className: "neeto-ui-text-primary-800",
|
|
699
|
+
href: "mailto:".concat(INSTALLATION_HELP_EMAIL),
|
|
700
|
+
rel: "noreferrer",
|
|
701
|
+
target: "_blank"
|
|
702
|
+
})
|
|
703
|
+
}
|
|
704
|
+
}))
|
|
705
|
+
};
|
|
706
|
+
case EMAIL_TYPES.userIdentity:
|
|
707
|
+
return {
|
|
708
|
+
emailType: EMAIL_TYPES.userIdentity,
|
|
709
|
+
enabledWidgets: enabledWidgets,
|
|
710
|
+
subject: t("neetoMolecules.widget.email.fields.subject.values.userIdentity"),
|
|
711
|
+
body: /*#__PURE__*/React__default["default"].createElement("div", {
|
|
712
|
+
ref: bodyRef
|
|
713
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
714
|
+
i18nKey: "neetoMolecules.widget.email.body.values.userIdentity",
|
|
715
|
+
components: {
|
|
716
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
717
|
+
className: "mb-2",
|
|
718
|
+
style: "body2"
|
|
719
|
+
}),
|
|
720
|
+
configureLink: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
721
|
+
className: "neeto-ui-text-primary-800",
|
|
722
|
+
rel: "noreferrer",
|
|
723
|
+
target: "_blank",
|
|
724
|
+
href: enabledWidgets.chat ? NEETO_CHAT_USER_IDENTITY_URL : NEETO_REPLAY_CONFIGURE_URL
|
|
725
|
+
})
|
|
726
|
+
},
|
|
727
|
+
values: {
|
|
728
|
+
userIdentityKbUrl: enabledWidgets.chat ? NEETO_CHAT_USER_IDENTITY_URL : NEETO_REPLAY_CONFIGURE_URL
|
|
729
|
+
}
|
|
730
|
+
}))
|
|
731
|
+
};
|
|
732
|
+
case EMAIL_TYPES.sessionContext:
|
|
733
|
+
return {
|
|
734
|
+
codeString: SAMPLE_CONTEXT_CODE_STRING,
|
|
735
|
+
subject: t("neetoMolecules.widget.email.fields.subject.values.sessionContext"),
|
|
736
|
+
body: /*#__PURE__*/React__default["default"].createElement("div", {
|
|
737
|
+
ref: bodyRef
|
|
738
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
739
|
+
i18nKey: "neetoMolecules.widget.email.body.values.sessionContext",
|
|
740
|
+
values: {
|
|
741
|
+
sessionContextKbUrl: NEETO_REPLAY_CONFIGURE_URL
|
|
742
|
+
},
|
|
743
|
+
components: {
|
|
744
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
745
|
+
className: "mb-2",
|
|
746
|
+
style: "body2"
|
|
747
|
+
}),
|
|
748
|
+
configureLink: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
749
|
+
className: "neeto-ui-text-primary-800",
|
|
750
|
+
href: NEETO_REPLAY_CONFIGURE_URL,
|
|
751
|
+
rel: "noreferrer",
|
|
752
|
+
target: "_blank"
|
|
753
|
+
})
|
|
754
|
+
}
|
|
755
|
+
}))
|
|
756
|
+
};
|
|
757
|
+
case EMAIL_TYPES["null"]:
|
|
758
|
+
return previousEmailType !== EMAIL_TYPES["null"] ? getSnippetProps(previousEmailType) : {};
|
|
759
|
+
default:
|
|
760
|
+
throw new Error(t("neetoMolecules.widget.email.invalidType"));
|
|
761
|
+
}
|
|
762
|
+
};
|
|
763
|
+
var handleSendViaEmail = function handleSendViaEmail(selectedEmail) {
|
|
764
|
+
if (ramda.isEmpty(selectedWidgets)) {
|
|
765
|
+
neetoui.Toastr.error(t("neetoMolecules.widget.installation.snippet.disabledError"));
|
|
766
|
+
return;
|
|
767
|
+
}
|
|
768
|
+
setEmailType(selectedEmail);
|
|
769
|
+
};
|
|
770
|
+
var getSelectedWidgetsInstructionsKey = function getSelectedWidgetsInstructionsKey() {
|
|
771
|
+
if (ramda.isEmpty(selectedWidgets)) {
|
|
772
|
+
return "neetoMolecules.widget.installation.instructions.placement.noneOfThese";
|
|
773
|
+
}
|
|
774
|
+
if (isOnlyChatWidgetSelected) {
|
|
775
|
+
return "neetoMolecules.widget.installation.instructions.placement.selectedChatWidget";
|
|
776
|
+
}
|
|
777
|
+
return "neetoMolecules.widget.installation.instructions.placement.selectedWidgets";
|
|
778
|
+
};
|
|
779
|
+
var embedHelpTextTranslationComponents = {
|
|
780
|
+
fontBold: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
781
|
+
component: "span",
|
|
782
|
+
style: "body2",
|
|
783
|
+
weight: "semibold"
|
|
784
|
+
}),
|
|
785
|
+
widgetNpmLink: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
786
|
+
className: "neeto-ui-text-primary-800",
|
|
787
|
+
href: USE_NEETO_WIDGET_NPM_PAGE_URL,
|
|
788
|
+
rel: "noreferrer",
|
|
789
|
+
target: "_blank"
|
|
790
|
+
}),
|
|
791
|
+
Link: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
792
|
+
className: "neeto-ui-text-primary-800",
|
|
793
|
+
href: WIDGET_KB_HELP_URL[primaryApp],
|
|
794
|
+
rel: "noreferrer",
|
|
795
|
+
target: "_blank"
|
|
796
|
+
})
|
|
797
|
+
};
|
|
798
|
+
if (isLoadingApiKey || isLoadingConfigurations) {
|
|
799
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
800
|
+
className: "h-full w-full"
|
|
801
|
+
}, /*#__PURE__*/React__default["default"].createElement(PageLoader, null));
|
|
802
|
+
}
|
|
803
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
804
|
+
className: "mx-auto mb-10 w-full flex-col items-center justify-start"
|
|
805
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
806
|
+
className: classnames__default["default"]("mx-auto", maxWidth)
|
|
807
|
+
}, shouldShowSwitches() && /*#__PURE__*/React__default["default"].createElement(SelectionSwitches, {
|
|
808
|
+
enabledClientApps: enabledClientApps,
|
|
809
|
+
primaryApp: primaryApp,
|
|
810
|
+
selectedWidgets: selectedWidgets,
|
|
811
|
+
updateSelectedWidgets: updateSelectedWidgets
|
|
812
|
+
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
813
|
+
className: "mb-8 w-full flex-grow flex-col items-center justify-start"
|
|
814
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
815
|
+
className: "mx-auto mb-2 w-full",
|
|
816
|
+
"data-testid": "embed-code-block"
|
|
817
|
+
}, /*#__PURE__*/React__default["default"].createElement(CodeBlock, {
|
|
818
|
+
className: "neeto-ui-bg-primary-100 neeto-ui-rounded-lg",
|
|
819
|
+
codeString: getEmbedCodeString(),
|
|
820
|
+
sendViaEmail: function sendViaEmail() {
|
|
821
|
+
return handleSendViaEmail(EMAIL_TYPES.embedCode);
|
|
822
|
+
},
|
|
823
|
+
title: /*#__PURE__*/React__default["default"].createElement("div", null, t("neetoMolecules.widget.title.embedCode"))
|
|
824
|
+
})), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
825
|
+
className: "w-full"
|
|
826
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
827
|
+
components: embedHelpTextTranslationComponents,
|
|
828
|
+
i18nKey: getSelectedWidgetsInstructionsKey(),
|
|
829
|
+
values: {
|
|
830
|
+
widgetList: getSortedPrefixedWidgets(selectedWidgets)
|
|
831
|
+
}
|
|
832
|
+
}))), shouldShowUserIdentity ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
833
|
+
className: "mb-8 w-full flex-grow flex-col items-center justify-start"
|
|
834
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
835
|
+
className: "mx-auto mb-2 w-full"
|
|
836
|
+
}, /*#__PURE__*/React__default["default"].createElement(CodeBlock, {
|
|
837
|
+
className: "neeto-ui-bg-primary-100 neeto-ui-rounded-lg",
|
|
838
|
+
frameworkProps: {
|
|
839
|
+
selectedFramework: selectedFramework,
|
|
840
|
+
setSelectedFramework: setSelectedFramework
|
|
841
|
+
},
|
|
842
|
+
title: t("neetoMolecules.widget.title.userIdentity"),
|
|
843
|
+
codeString: getSampleUserIdentity(enabledWidgets, selectedFramework.value),
|
|
844
|
+
sendViaEmail: function sendViaEmail() {
|
|
845
|
+
return handleSendViaEmail(EMAIL_TYPES.userIdentity);
|
|
846
|
+
}
|
|
847
|
+
})), /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
848
|
+
i18nKey: "neetoMolecules.widget.installation.instructions.userIdentity",
|
|
849
|
+
components: {
|
|
850
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
851
|
+
style: "body2"
|
|
852
|
+
}),
|
|
853
|
+
Link: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
854
|
+
className: "neeto-ui-text-primary-800",
|
|
855
|
+
rel: "noreferrer",
|
|
856
|
+
target: "_blank",
|
|
857
|
+
href: enabledWidgets.chat ? NEETO_CHAT_USER_IDENTITY_URL : NEETO_REPLAY_CONFIGURE_URL
|
|
858
|
+
})
|
|
859
|
+
}
|
|
860
|
+
})) : null, shouldShowSessionContext ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
861
|
+
className: "w-full flex-grow flex-col items-center justify-start"
|
|
862
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
863
|
+
className: "mx-auto mb-2 w-full"
|
|
864
|
+
}, /*#__PURE__*/React__default["default"].createElement(CodeBlock, {
|
|
865
|
+
className: "neeto-ui-bg-primary-100 neeto-ui-rounded-lg",
|
|
866
|
+
codeString: SAMPLE_CONTEXT_CODE_STRING,
|
|
867
|
+
title: t("neetoMolecules.widget.title.sessionContext"),
|
|
868
|
+
sendViaEmail: function sendViaEmail() {
|
|
869
|
+
return handleSendViaEmail(EMAIL_TYPES.sessionContext);
|
|
870
|
+
}
|
|
871
|
+
})), /*#__PURE__*/React__default["default"].createElement(reactI18next.Trans, {
|
|
872
|
+
i18nKey: "neetoMolecules.widget.installation.instructions.sessionContext",
|
|
873
|
+
components: {
|
|
874
|
+
p: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
875
|
+
style: "body2"
|
|
876
|
+
}),
|
|
877
|
+
Link: /*#__PURE__*/React__default["default"].createElement("a", {
|
|
878
|
+
className: "neeto-ui-text-primary-800",
|
|
879
|
+
href: NEETO_REPLAY_CONFIGURE_URL,
|
|
880
|
+
rel: "noreferrer",
|
|
881
|
+
target: "_blank"
|
|
882
|
+
})
|
|
883
|
+
}
|
|
884
|
+
})) : null), /*#__PURE__*/React__default["default"].createElement(CodeSnippet, _extends._extends({
|
|
885
|
+
isPaneOpen: !!emailType && neetoCist.isNotEmpty(selectedWidgets),
|
|
886
|
+
onClose: function onClose() {
|
|
887
|
+
return setEmailType(EMAIL_TYPES["null"]);
|
|
888
|
+
}
|
|
889
|
+
}, getSnippetProps(emailType))));
|
|
890
|
+
};
|
|
891
|
+
var EmbedCode$1 = /*#__PURE__*/React__default["default"].memo(EmbedCode);
|
|
892
|
+
|
|
893
|
+
var queryClient = new reactQuery.QueryClient();
|
|
894
|
+
var Main = function Main(props) {
|
|
895
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
896
|
+
t = _useTranslation.t;
|
|
897
|
+
var shouldRenderEmbedCode = window.globalProps.ssoEnabled;
|
|
898
|
+
return shouldRenderEmbedCode ? /*#__PURE__*/React__default["default"].createElement(reactQuery.QueryClientProvider, {
|
|
899
|
+
client: queryClient
|
|
900
|
+
}, /*#__PURE__*/React__default["default"].createElement(EmbedCode$1, props)) : /*#__PURE__*/React__default["default"].createElement(neetoui.Callout, {
|
|
901
|
+
icon: neetoIcons.Info,
|
|
902
|
+
style: "info"
|
|
903
|
+
}, t("neetoMolecules.widget.developmentInfo"));
|
|
904
|
+
};
|
|
905
|
+
|
|
906
|
+
var NeetoWidget = {
|
|
907
|
+
EmbedCode: Main,
|
|
908
|
+
WIDGET_TYPES: WIDGET_TYPES
|
|
909
|
+
};
|
|
910
|
+
|
|
911
|
+
module.exports = NeetoWidget;
|
|
912
|
+
//# sourceMappingURL=NeetoWidget.js.map
|