@bigbinary/neeto-molecules 2.0.5 → 3.0.0
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/dist/Builder.js +7 -1
- package/dist/Builder.js.map +1 -1
- package/dist/CalendarView.js +8 -2
- package/dist/CalendarView.js.map +1 -1
- package/dist/{Chevron-5b713e55.js → Chevron-32c7251d.js} +2 -2
- package/dist/{Chevron-5b713e55.js.map → Chevron-32c7251d.js.map} +1 -1
- package/dist/Codeblock.js +2 -1
- package/dist/Codeblock.js.map +1 -1
- package/dist/Columns.js +2 -2
- package/dist/ConfigurePageSidebar.js +2 -2
- package/dist/CopyToClipboardButton.js +2 -1
- package/dist/CopyToClipboardButton.js.map +1 -1
- package/dist/CustomDomain.js +9 -5
- package/dist/CustomDomain.js.map +1 -1
- package/dist/CustomDomainDashboard.js +12 -5
- package/dist/CustomDomainDashboard.js.map +1 -1
- package/dist/DocumentEditor.js +1 -1
- package/dist/DynamicVariables.js +1 -1
- package/dist/EmailForm.js +6 -2
- package/dist/EmailForm.js.map +1 -1
- package/dist/EmailPreview.js +1 -1
- package/dist/EmojiPicker.js +6 -3
- package/dist/EmojiPicker.js.map +1 -1
- package/dist/FloatingActionMenu.js +7 -2
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/Header.js +3 -1
- package/dist/Header.js.map +1 -1
- package/dist/HelpPopover.js +1 -1
- package/dist/IconPicker.js +1 -1
- package/dist/InlineInput.js +2 -1
- package/dist/InlineInput.js.map +1 -1
- package/dist/Insights.js +2 -1
- package/dist/Insights.js.map +1 -1
- package/dist/IntegrationCard.js +4 -1
- package/dist/IntegrationCard.js.map +1 -1
- package/dist/IpRestriction.js +24 -11
- package/dist/IpRestriction.js.map +1 -1
- package/dist/KeyboardShortcuts.js +1 -1
- package/dist/MenuBar.js +3 -1
- package/dist/MenuBar.js.map +1 -1
- package/dist/Metadata.js +3 -1
- package/dist/Metadata.js.map +1 -1
- package/dist/MoreDropdown.js +2 -1
- package/dist/MoreDropdown.js.map +1 -1
- package/dist/NavigationHeader.js +7 -1
- package/dist/NavigationHeader.js.map +1 -1
- package/dist/NeetoWidget.js +29 -24
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +1 -1
- package/dist/OptionFields.js +5 -1
- package/dist/OptionFields.js.map +1 -1
- package/dist/PhoneNumber.js +13 -10
- package/dist/PhoneNumber.js.map +1 -1
- package/dist/ProductEmbed.js +7 -1
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/PublishBlock.js +2 -1
- package/dist/PublishBlock.js.map +1 -1
- package/dist/Rename.js +4 -1
- package/dist/Rename.js.map +1 -1
- package/dist/ResponsiveDevicePicker.js +3 -1
- package/dist/ResponsiveDevicePicker.js.map +1 -1
- package/dist/Schedule.js +5 -1
- package/dist/Schedule.js.map +1 -1
- package/dist/Search.js +1 -1
- package/dist/SendToFields.js +2 -1
- package/dist/SendToFields.js.map +1 -1
- package/dist/Settings.js +4 -1
- package/dist/Settings.js.map +1 -1
- package/dist/ShareRecordingPane.js +2 -1
- package/dist/ShareRecordingPane.js.map +1 -1
- package/dist/ShareViaEmail.js +6 -2
- package/dist/ShareViaEmail.js.map +1 -1
- package/dist/ShareViaLink.js +8 -1
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +4 -3
- package/dist/Sidebar.js.map +1 -1
- package/dist/StickyRibbonsContainer.js +6 -3
- package/dist/StickyRibbonsContainer.js.map +1 -1
- package/dist/SubHeader.js +5 -2
- package/dist/SubHeader.js.map +1 -1
- package/dist/SuffixedInput.js +3 -1
- package/dist/SuffixedInput.js.map +1 -1
- package/dist/Taxonomy.js +17 -6
- package/dist/Taxonomy.js.map +1 -1
- package/dist/TimezoneMismatchModal.js +6 -5
- package/dist/TimezoneMismatchModal.js.map +1 -1
- package/dist/ToggleFeatureCard.js +2 -1
- package/dist/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/Builder.js +17 -6
- package/dist/cjs/Builder.js.map +1 -1
- package/dist/cjs/CalendarView.js +14 -5
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/{Chevron-840304ff.js → Chevron-46844b59.js} +4 -3
- package/dist/cjs/{Chevron-840304ff.js.map → Chevron-46844b59.js.map} +1 -1
- package/dist/cjs/Codeblock.js +2 -1
- package/dist/cjs/Codeblock.js.map +1 -1
- package/dist/cjs/Columns.js +2 -2
- package/dist/cjs/ConfigurePageSidebar.js +2 -2
- package/dist/cjs/CopyToClipboardButton.js +6 -3
- package/dist/cjs/CopyToClipboardButton.js.map +1 -1
- package/dist/cjs/CustomDomain.js +10 -5
- package/dist/cjs/CustomDomain.js.map +1 -1
- package/dist/cjs/CustomDomainDashboard.js +12 -5
- package/dist/cjs/CustomDomainDashboard.js.map +1 -1
- package/dist/cjs/DocumentEditor.js +3 -2
- package/dist/cjs/DocumentEditor.js.map +1 -1
- package/dist/cjs/DynamicVariables.js +3 -2
- package/dist/cjs/DynamicVariables.js.map +1 -1
- package/dist/cjs/EmailForm.js +9 -4
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/EmailPreview.js +3 -2
- package/dist/cjs/EmailPreview.js.map +1 -1
- package/dist/cjs/EmojiPicker.js +8 -4
- package/dist/cjs/EmojiPicker.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +21 -9
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/Header.js +3 -1
- package/dist/cjs/Header.js.map +1 -1
- package/dist/cjs/HelpPopover.js +3 -2
- package/dist/cjs/HelpPopover.js.map +1 -1
- package/dist/cjs/IconPicker.js +4 -3
- package/dist/cjs/IconPicker.js.map +1 -1
- package/dist/cjs/InlineInput.js +6 -3
- package/dist/cjs/InlineInput.js.map +1 -1
- package/dist/cjs/Insights.js +4 -2
- package/dist/cjs/Insights.js.map +1 -1
- package/dist/cjs/IntegrationCard.js +8 -3
- package/dist/cjs/IntegrationCard.js.map +1 -1
- package/dist/cjs/IpRestriction.js +29 -13
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/KeyboardShortcuts.js +3 -2
- package/dist/cjs/KeyboardShortcuts.js.map +1 -1
- package/dist/cjs/MenuBar.js +9 -4
- package/dist/cjs/MenuBar.js.map +1 -1
- package/dist/cjs/Metadata.js +8 -3
- package/dist/cjs/Metadata.js.map +1 -1
- package/dist/cjs/MoreDropdown.js +5 -2
- package/dist/cjs/MoreDropdown.js.map +1 -1
- package/dist/cjs/NavigationHeader.js +9 -2
- package/dist/cjs/NavigationHeader.js.map +1 -1
- package/dist/cjs/NeetoWidget.js +32 -25
- package/dist/cjs/NeetoWidget.js.map +1 -1
- package/dist/cjs/Onboarding.js +4 -3
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/OptionFields.js +16 -7
- package/dist/cjs/OptionFields.js.map +1 -1
- package/dist/cjs/PhoneNumber.js +13 -10
- package/dist/cjs/PhoneNumber.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +17 -6
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/PublishBlock.js +7 -4
- package/dist/cjs/PublishBlock.js.map +1 -1
- package/dist/cjs/Rename.js +8 -3
- package/dist/cjs/Rename.js.map +1 -1
- package/dist/cjs/ResponsiveDevicePicker.js +9 -4
- package/dist/cjs/ResponsiveDevicePicker.js.map +1 -1
- package/dist/cjs/Schedule.js +11 -4
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Search.js +3 -2
- package/dist/cjs/Search.js.map +1 -1
- package/dist/cjs/SendToFields.js +7 -4
- package/dist/cjs/SendToFields.js.map +1 -1
- package/dist/cjs/Settings.js +6 -2
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/ShareRecordingPane.js +2 -1
- package/dist/cjs/ShareRecordingPane.js.map +1 -1
- package/dist/cjs/ShareViaEmail.js +11 -5
- package/dist/cjs/ShareViaEmail.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +16 -5
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Sidebar.js +8 -4
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StickyRibbonsContainer.js +8 -4
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/SubHeader.js +11 -5
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/SuffixedInput.js +5 -2
- package/dist/cjs/SuffixedInput.js.map +1 -1
- package/dist/cjs/Taxonomy.js +18 -6
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/TimezoneMismatchModal.js +6 -5
- package/dist/cjs/TimezoneMismatchModal.js.map +1 -1
- package/dist/cjs/ToggleFeatureCard.js +6 -3
- package/dist/cjs/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/{index-a0ea156b.js → index-290bd1dd.js} +19 -15
- package/dist/cjs/index-290bd1dd.js.map +1 -0
- package/dist/cjs/{useColumns-5660bfea.js → useColumns-5ce3cf1e.js} +4 -3
- package/dist/cjs/{useColumns-5660bfea.js.map → useColumns-5ce3cf1e.js.map} +1 -1
- package/dist/{index-92e5af99.js → index-49458a38.js} +17 -14
- package/dist/index-49458a38.js.map +1 -0
- package/dist/{useColumns-cec6e827.js → useColumns-e0b5dfb7.js} +2 -2
- package/dist/{useColumns-cec6e827.js.map → useColumns-e0b5dfb7.js.map} +1 -1
- package/package.json +12 -10
- package/types/ShareViaLink.d.ts +3 -3
- package/dist/cjs/index-a0ea156b.js.map +0 -1
- package/dist/index-92e5af99.js.map +0 -1
package/dist/NeetoWidget.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeetoWidget.js","sources":["../src/components/NeetoWidget/constants.js","../src/components/NeetoWidget/ChatWidgetBody.jsx","../src/components/NeetoWidget/SyntaxHighlighter.jsx","../src/components/NeetoWidget/CodeBlock.jsx","../src/components/NeetoWidget/utils.js","../src/components/NeetoWidget/api.js","../src/components/NeetoWidget/mutations.js","../src/components/NeetoWidget/CodeSnippet.jsx","../src/components/NeetoWidget/hooks/useForceUpdate.js","../src/components/NeetoWidget/queries.js","../src/components/NeetoWidget/SelectionSwitches/TooltipSwitch.jsx","../src/components/NeetoWidget/SelectionSwitches/index.jsx","../src/components/NeetoWidget/EmbedCode.jsx","../src/components/NeetoWidget/Main.jsx","../src/components/NeetoWidget/index.js"],"sourcesContent":["import { t } from \"i18next\";\nimport { values } from \"ramda\";\n\nexport const NEETO_WIDGET_USER_IDENTITY_KEY = \"NeetoWidgetUserIdentity\";\nexport const SESSION_CONTEXT_KEY = \"NeetoReplayWidgetSessionContext\";\n\nexport const INSTALLATION_HELP_EMAIL = \"support@neeto.com\";\n\nexport const SAMPLE_CONTEXT_CODE_STRING = `window.${SESSION_CONTEXT_KEY} = {\n key1: \"value\",\n key2: [\"array\", \"of\", \"values\"],\n /* More key-value pairs */\n}`;\n\nexport const WIDGET_TYPES = {\n changelog: \"changelog\",\n chat: \"chat\",\n replay: \"replay\",\n};\n\nexport const WIDGET_HELP_LINKS = {\n changelog: \"https://help.neetochangelog.com/articles/installation\",\n chat: \"https://help.neetochat.com/articles/installation-using-javascript-snippet\",\n replay: \"https://help.neetoreplay.com/articles/install-widget\",\n};\n\nexport const WIDGET_DESCRIPTIONS = {\n changelog: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.changelog\"\n ),\n chat: t(\"neetoMolecules.widget.email.body.values.embedCode.description.chat\"),\n replay: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.replay\"\n ),\n};\n\nexport const WIDGET_TYPES_VALUES = values(WIDGET_TYPES);\n\nexport const QUERY_KEYS = {\n apiKey: \"neetoWidgetApiKey\",\n configuration: \"neetoWidgetConfiguration\",\n};\n\nexport const DEFAULT_QUERY_STALE_TIME = 60 * 60 * 1000; // 1 hour in milliseconds\n\nexport const EMAIL_TYPES = {\n embedCode: \"embedCode\",\n userIdentity: \"userIdentity\",\n sessionContext: \"sessionContext\",\n null: \"\",\n};\n\nexport const RAILS_ENV = {\n production: \"production\",\n staging: \"staging\",\n development: \"development\",\n};\n\nexport const NEETO_WIDGET_SCRIPT_URL = {\n staging: \"https://d13nryxs46eypn.cloudfront.net/neeto-widget-staging.js\",\n production: \"https://d13nryxs46eypn.cloudfront.net/neeto-widget.js\",\n};\n\nexport const AVAILABLE_FRAMEWORK_OPTIONS = Object.freeze({\n rails: \"rails\",\n django: \"django\",\n php: \"php\",\n});\n\nexport const FRAMEWORK_SELECT_OPTIONS = [\n { label: \"Ruby(Rails)\", value: AVAILABLE_FRAMEWORK_OPTIONS.rails },\n { label: \"Python(Django)\", value: AVAILABLE_FRAMEWORK_OPTIONS.django },\n { label: \"PHP\", value: AVAILABLE_FRAMEWORK_OPTIONS.php },\n];\n\nexport const SAMPLE_USER_IDENTITY_CODE_STRING = {\n [AVAILABLE_FRAMEWORK_OPTIONS.rails]: `window.${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}`,\n [AVAILABLE_FRAMEWORK_OPTIONS.django]: `window.${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}`,\n [AVAILABLE_FRAMEWORK_OPTIONS.php]: `window.${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}`,\n};\nexport const WIDGET_CONFIG_URL = \"/api/widget/v1/neeto_widget_tokens\";\nexport const EMBED_CODE_EMAIL_URL = \"/api/widget/v1/email_snippets\";\nexport const CHAT_WIDGET_KB_BASE_URL = \"https://help.neetochat.com\";\nexport const CHANGELOG_WIDGET_KB_BASE_URL = \"https://help.neetochangelog.com\";\nexport const REPLAY_WIDGET_KB_BASE_URL = \"https://help.neetoreplay.com\";\nexport const NEETO_REPLAY_CONFIGURE_URL = `${REPLAY_WIDGET_KB_BASE_URL}/articles/configure-widget`;\nexport const NEETO_CHAT_USER_IDENTITY_URL = `${CHAT_WIDGET_KB_BASE_URL}/articles/info-about-logged-in-users`;\nexport const WIDGET_KB_HELP_URL = {\n changelog: `${CHANGELOG_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n chat: `${CHAT_WIDGET_KB_BASE_URL}/categories/installation`,\n replay: `${REPLAY_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n};\nexport const USE_NEETO_WIDGET_NPM_PAGE_URL =\n \"https://www.npmjs.com/package/@bigbinary/react-use-neeto-widget\";\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport { WIDGET_HELP_LINKS, WIDGET_TYPES } from \"./constants\";\n\nconst ChatWidgetBody = ({ widgets }) => (\n <>\n {widgets.includes(WIDGET_TYPES.changelog) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.changelogHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.changelog }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n a: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={WIDGET_HELP_LINKS.changelog}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n )}\n {widgets.includes(WIDGET_TYPES.chat) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.chatHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.chat }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n a: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={WIDGET_HELP_LINKS.chat}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n )}\n {widgets.includes(WIDGET_TYPES.replay) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.replayHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.replay }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n a: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={WIDGET_HELP_LINKS.replay}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n )}\n </>\n);\n\nexport default ChatWidgetBody;\n","import React, { useEffect } from \"react\";\n\nimport Prism from \"prismjs\";\nimport \"prismjs/themes/prism-tomorrow.css\";\n\nconst SyntaxHighlighter = ({ className, code, language }) => {\n useEffect(() => {\n Prism.highlightAll();\n }, [code]);\n\n return (\n <pre className={className}>\n <code className={`language-${language}`}>{code}</code>\n </pre>\n );\n};\n\nexport default React.memo(SyntaxHighlighter);\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { Button, Select, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport { FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport SyntaxHighlighter from \"./SyntaxHighlighter\";\n\nconst CodeBlock = ({\n title = (\n <div>\n <Trans i18nKey=\"neetoMolecules.codeblock.codeSnippet\" />\n </div>\n ),\n codeString,\n showCopyButton = true,\n className = \"\",\n sendViaEmail = undefined,\n frameworkProps = {},\n}) => {\n const { t } = useTranslation();\n const { selectedFramework, setSelectedFramework } = frameworkProps ?? {};\n\n return (\n <div className={classnames([\"relative\", className])}>\n <div 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\">\n {title && (\n <Typography\n className=\"m-0 flex-shrink-0\"\n data-cy=\"code-block-title-text\"\n style=\"h4\"\n >\n {title}\n </Typography>\n )}\n {selectedFramework && (\n <Select\n className=\"w-40\"\n data-testid=\"framework-select\"\n options={FRAMEWORK_SELECT_OPTIONS}\n value={selectedFramework}\n onChange={setSelectedFramework}\n />\n )}\n <div className=\"ml-auto flex flex-shrink-0 items-center justify-end gap-2\">\n {sendViaEmail ? (\n <Button\n style=\"text\"\n label={t(\n \"neetoMolecules.widget.installation.snippet.sendViaEmail\"\n )}\n onClick={sendViaEmail}\n />\n ) : null}\n {showCopyButton && (\n <CopyToClipboardButton\n label={t(\"neetoMolecules.widget.installation.snippet.copy\")}\n style=\"primary\"\n value={codeString}\n />\n )}\n </div>\n </div>\n <SyntaxHighlighter\n className=\"neeto-ui-bg-gray-800 neeto-ui-rounded-lg m-0 rounded-t-none\"\n code={codeString}\n language=\"javascript\"\n />\n </div>\n );\n};\n\nCodeBlock.propTypes = {\n title: PropTypes.object,\n codeString: PropTypes.string,\n showCopyButton: PropTypes.bool,\n className: PropTypes.string,\n sendViaEmail: PropTypes.func,\n frameworkProps: PropTypes.object,\n};\n\nexport default CodeBlock;\n","import i18next, { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { identity, last, pluck } from \"ramda\";\nimport * as yup from \"yup\";\n\nimport {\n NEETO_WIDGET_USER_IDENTITY_KEY,\n SESSION_CONTEXT_KEY,\n RAILS_ENV,\n NEETO_WIDGET_SCRIPT_URL,\n SAMPLE_USER_IDENTITY_CODE_STRING,\n WIDGET_DESCRIPTIONS,\n} from \"./constants\";\n\nconst buildEmbedWidgetScript = () => {\n const widgetScriptUrl =\n window.globalProps.railsEnv === RAILS_ENV.production\n ? NEETO_WIDGET_SCRIPT_URL.production\n : NEETO_WIDGET_SCRIPT_URL.staging;\n\n return `<script src=\"${widgetScriptUrl}\"></script>`;\n};\n\nconst indentAndFormat = (str, formatter = identity) =>\n str.split(\"\\n\").map(formatter).join(\"\\n \");\n\nconst getCommentedCommand = (command, isEnabled) =>\n isEnabled ? command : `/// ${command}`;\n\nconst embedWidgetEnvironment = () => {\n switch (window.globalProps.railsEnv) {\n case RAILS_ENV.production:\n return \"\";\n case RAILS_ENV.development:\n return `environment: \"${RAILS_ENV.development}\",`;\n case RAILS_ENV.staging:\n return `environment: \"${RAILS_ENV.staging}\",`;\n default:\n return \"/* Unidentified RAILS_ENV, */\";\n }\n};\n\nconst embedWidgetApiKey = apiKey => `apiKey: \"${apiKey}\",`;\n\nconst addChangelogOptions = () => `neetoChangelogOptions: {\n elementId: \"neetochangelog-trigger\",\n},`;\n\nconst wrapBlockInOnLoad = codeBlock =>\n `window.addEventListener(\"load\", () => ${codeBlock});`;\n\nconst embedWidgetFunctionCall = (enabledWidgets, apiKey) => `embedNeetoWidget({\n ${embedWidgetEnvironment()}\n ${indentAndFormat(embedWidgetApiKey(apiKey))}\n ${indentAndFormat(addChangelogOptions(), cmd =>\n getCommentedCommand(cmd, enabledWidgets.changelog)\n )}\n})`;\n\nconst filterMarkedCommands = queryString =>\n queryString\n .split(\"\\n\")\n .filter(line => !line.includes(\"///\") && line.trim())\n .join(\"\\n\");\n\nexport const getSampleUserIdentity = (enabledWidgets, selectedFramework) => {\n const splitCodeLines =\n SAMPLE_USER_IDENTITY_CODE_STRING[selectedFramework].split(\"\\n\");\n\n return filterMarkedCommands(\n splitCodeLines\n .map(cmd => {\n const isEmailKey = cmd.includes(\"email\");\n const isObjectStartLine = cmd === splitCodeLines[0];\n const isObjectEndLine = cmd === last(splitCodeLines);\n const isLineHidden =\n !isEmailKey && !isObjectStartLine && !isObjectEndLine;\n if (\n (!enabledWidgets.chat && isLineHidden) ||\n (!enabledWidgets.chat && !enabledWidgets.replay)\n ) {\n return null;\n }\n\n return cmd;\n })\n .join(\"\\n\")\n );\n};\n\nexport const sampleConsolidatedCodeString = (enabledWidgets, apiKey) =>\n filterMarkedCommands(`${buildEmbedWidgetScript()}\n<script>\n ${\n enabledWidgets.chat || enabledWidgets.replay\n ? `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {};`\n : \"\"\n }\n ${enabledWidgets.replay ? `window.${SESSION_CONTEXT_KEY} = {};` : \"\"}\n\n ${indentAndFormat(\n wrapBlockInOnLoad(embedWidgetFunctionCall(enabledWidgets, apiKey))\n )}\n</script>`);\n\nexport const getEmailWidgetSnippetFormInitialValues = subject => ({\n emails: \"\",\n subject,\n});\n\nexport const getSortedPrefixedWidgets = widgets => {\n const sortedWidgets = widgets\n .sort()\n .map(widget => `neeto${capitalize(widget)}`);\n\n return sortedWidgets.length === 1\n ? sortedWidgets\n : t(\"neetoMolecules.widget.email.widgetList\", {\n widgets: sortedWidgets,\n });\n};\n\nexport const getWidgetDescriptions = widgets => {\n const values = Object.entries(WIDGET_DESCRIPTIONS).filter(([widget]) =>\n widgets.includes(widget)\n );\n\n return pluck(1, values);\n};\n\nexport const getEmailWidgetSnippetValidationSchema = () =>\n yup.object({\n emails: yup\n .array()\n .required()\n .label(i18next.t(\"neetoMolecules.widget.email.fields.emails.label\")),\n subject: yup\n .string()\n .required()\n .label(i18next.t(\"neetoMolecules.widget.email.fields.subject.label\")),\n });\n\nexport const getWidgetApiKeyUrl = () =>\n `api/widget/v1/api_keys/${window.globalProps.organization.subdomain}`;\n\nexport const shouldShowSwitches = () => {\n const email = globalProps.user?.email || \"\";\n if (window.globalProps.railsEnv === RAILS_ENV.production) {\n return email.toLowerCase().endsWith(\"@bigbinary.com\");\n }\n\n return true;\n};\n","import axios from \"axios\";\n\nimport { EMBED_CODE_EMAIL_URL, WIDGET_CONFIG_URL } from \"./constants\";\nimport { getWidgetApiKeyUrl } from \"./utils\";\n\nexport const queryWidgetApiKey = () =>\n axios.get(getWidgetApiKeyUrl(), { showToastr: false });\n\nexport const emailWidgetSnippet = data =>\n axios.post(EMBED_CODE_EMAIL_URL, data);\n\nexport const fetchWidgetConfiguration = () => axios.get(WIDGET_CONFIG_URL);\n\nexport const updateWidgetConfiguration = ({ id, payload }) =>\n axios.put(`${WIDGET_CONFIG_URL}/${id}`, payload);\n","import { useMutation } from \"react-query\";\n\nimport { emailWidgetSnippet } from \"./api\";\n\nexport const useEmailEmbedCode = onSuccess =>\n useMutation(emailData => emailWidgetSnippet(emailData), { onSuccess });\n","import React, { useState } from \"react\";\n\nimport { Formik, Form } from \"formik\";\nimport { noop } from \"neetocist\";\nimport { Typography, Button, Pane, Toastr } from \"neetoui\";\nimport { Input, MultiEmailInput } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { pluck, any, assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CodeBlock from \"./CodeBlock\";\nimport { EMAIL_TYPES, FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport { useEmailEmbedCode } from \"./mutations\";\nimport {\n getEmailWidgetSnippetFormInitialValues,\n getEmailWidgetSnippetValidationSchema,\n getSampleUserIdentity,\n} from \"./utils\";\n\nconst CodeSnippet = ({\n isPaneOpen,\n onClose,\n onSent = noop,\n codeString,\n subject = \"\",\n body = \"\",\n emailType = EMAIL_TYPES.embedCode,\n enabledWidgets = {},\n}) => {\n const { t } = useTranslation();\n const [selectedFramework, setSelectedFramework] = useState(\n FRAMEWORK_SELECT_OPTIONS[0]\n );\n const emailMutation = useEmailEmbedCode(onSent);\n\n const codeToDisplay =\n emailType === EMAIL_TYPES.userIdentity\n ? getSampleUserIdentity(enabledWidgets, selectedFramework.value)\n : codeString;\n\n const handleSubmit = formData => {\n if (any(({ valid }) => !valid, formData.emails)) {\n Toastr.error(t(\"neetoMolecules.widget.email.fields.emails.invalidError\"));\n\n return;\n }\n\n emailMutation.mutate({\n subject: formData.subject,\n emails: pluck(\"value\", formData.emails),\n message: body.ref?.current.innerHTML ?? body,\n snippet: codeToDisplay,\n });\n };\n\n const renderCodeBlockProps = () => {\n let props = {\n codeString: codeToDisplay,\n showCopyButton: false,\n className: \"neeto-ui-bg-primary-100 neeto-ui-rounded-lg\",\n };\n if (emailType === EMAIL_TYPES.userIdentity) {\n props = assoc(\n \"frameworkProps\",\n { selectedFramework, setSelectedFramework },\n props\n );\n }\n\n return props;\n };\n\n return (\n <Pane isOpen={isPaneOpen} {...{ onClose }}>\n <Formik\n initialValues={getEmailWidgetSnippetFormInitialValues(subject)}\n validationSchema={getEmailWidgetSnippetValidationSchema()}\n onSubmit={handleSubmit}\n >\n <Form>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.widget.email.title\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"w-full space-y-4\">\n <MultiEmailInput\n required\n label={t(\"neetoMolecules.widget.email.fields.emails.label\")}\n name=\"emails\"\n placeholder={t(\n \"neetoMolecules.widget.email.fields.emails.placeholder\"\n )}\n />\n <Input\n required\n label={t(\"neetoMolecules.widget.email.fields.subject.label\")}\n name=\"subject\"\n type=\"text\"\n />\n <Typography style=\"body2\">{body}</Typography>\n <CodeBlock {...renderCodeBlockProps()} />\n </div>\n </Pane.Body>\n <Pane.Footer className=\"gap-x-2\">\n <Button\n disabled={emailMutation.isLoading}\n label={t(\"neetoMolecules.widget.email.actions.send\")}\n loading={emailMutation.isLoading}\n type=\"submit\"\n />\n <Button\n label={t(\"neetoMolecules.widget.email.actions.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </Form>\n </Formik>\n </Pane>\n );\n};\n\nCodeSnippet.propTypes = {\n isPaneOpen: PropTypes.bool,\n onClose: PropTypes.func,\n onSent: PropTypes.func,\n codeString: PropTypes.string,\n subject: PropTypes.string,\n body: PropTypes.string,\n};\n\nexport default CodeSnippet;\n","import { useState } from \"react\";\n\nconst useForceUpdate = () => {\n // eslint-disable-next-line react/hook-use-state\n const [, setValue] = useState(0);\n\n return () => setValue(value => value + 1);\n};\n\nexport default useForceUpdate;\n","import { useQuery, useQueryClient, useMutation } from \"react-query\";\n\nimport {\n queryWidgetApiKey,\n fetchWidgetConfiguration,\n updateWidgetConfiguration,\n} from \"./api\";\nimport { DEFAULT_QUERY_STALE_TIME, QUERY_KEYS } from \"./constants\";\n\nexport const useFetchApiKey = () =>\n useQuery(\n QUERY_KEYS.apiKey,\n () => {\n if (\n window.globalProps.railsEnv === \"heroku\" ||\n !window.globalProps.ssoEnabled\n ) {\n return Promise.resolve({ widgetApiKey: \"placeholder-api-key\" });\n }\n\n return queryWidgetApiKey();\n },\n { staleTime: DEFAULT_QUERY_STALE_TIME }\n );\n\nexport const useFetchConfigurations = () =>\n useQuery(QUERY_KEYS.configuration, fetchWidgetConfiguration, {\n staleTime: DEFAULT_QUERY_STALE_TIME,\n });\n\nexport const useUpdateConfigurations = (options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(updateWidgetConfiguration, {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(QUERY_KEYS.configuration),\n });\n};\n","import React from \"react\";\n\nimport { capitalize } from \"neetocist\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { Switch, Tooltip } from \"neetoui\";\n\nconst TooltipSwitch = withT(\n ({\n t,\n enabledClientApps,\n widget,\n selectedWidgets,\n updateSelectedWidgets,\n }) => (\n <Tooltip\n disabled={enabledClientApps.includes(widget)}\n placement=\"right\"\n content={t(\"neetoMolecules.widget.tooltips.productIsDisabled\", {\n productName: `neeto${capitalize(widget)}`,\n })}\n >\n <Switch\n checked={selectedWidgets.includes(widget)}\n disabled={!enabledClientApps.includes(widget)}\n onChange={() => updateSelectedWidgets(widget)}\n />\n </Tooltip>\n )\n);\n\nexport default TooltipSwitch;\n","import React from \"react\";\n\nimport { capitalize, isNotEmpty } from \"neetocist\";\nimport { Label } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport TooltipSwitch from \"./TooltipSwitch\";\n\nimport { WIDGET_TYPES_VALUES } from \"../constants\";\n\nconst SelectionSwitches = ({\n selectedWidgets,\n updateSelectedWidgets,\n primaryApp,\n enabledClientApps,\n}) => {\n const primaryWidget = WIDGET_TYPES_VALUES.includes(primaryApp)\n ? primaryApp\n : \"\";\n\n return (\n <div className=\"mb-4 flex w-full flex-wrap items-center justify-between gap-6\">\n <div className=\"flex items-center space-x-2\">\n {isNotEmpty(primaryWidget) && (\n <TooltipSwitch\n {...{ enabledClientApps, selectedWidgets, updateSelectedWidgets }}\n widget={primaryWidget}\n />\n )}\n <Label>neeto{capitalize(primaryWidget)}</Label>\n </div>\n <div className=\"flex flex-wrap items-center gap-6 sm:justify-end\">\n {WIDGET_TYPES_VALUES.map(\n (widget, index) =>\n primaryApp !== widget && (\n <div className=\"flex items-center space-x-2\" key={index}>\n <TooltipSwitch\n {...{\n enabledClientApps,\n selectedWidgets,\n updateSelectedWidgets,\n widget,\n }}\n />\n <Label>neeto{capitalize(widget)}</Label>\n </div>\n )\n )}\n </div>\n </div>\n );\n};\n\nSelectionSwitches.propTypes = {\n selectedWidgets: PropTypes.arrayOf(PropTypes.string),\n updateSelectedWidgets: PropTypes.func,\n primaryApp: PropTypes.string,\n};\nexport default SelectionSwitches;\n","import React, { useState, useRef, useEffect } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize, isNotEmpty } from \"neetocist\";\nimport usePrevious from \"neetocommons/react-utils/usePrevious\";\nimport { Toastr, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { fromPairs, isEmpty, prop } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport PageLoader from \"components/PageLoader\";\n\nimport ChatWidgetBody from \"./ChatWidgetBody\";\nimport CodeBlock from \"./CodeBlock\";\nimport CodeSnippet from \"./CodeSnippet\";\nimport {\n EMAIL_TYPES,\n SAMPLE_CONTEXT_CODE_STRING,\n INSTALLATION_HELP_EMAIL,\n FRAMEWORK_SELECT_OPTIONS,\n NEETO_CHAT_USER_IDENTITY_URL,\n NEETO_REPLAY_CONFIGURE_URL,\n WIDGET_TYPES,\n WIDGET_KB_HELP_URL,\n USE_NEETO_WIDGET_NPM_PAGE_URL,\n} from \"./constants\";\nimport useForceUpdate from \"./hooks/useForceUpdate\";\nimport {\n useFetchApiKey,\n useFetchConfigurations,\n useUpdateConfigurations,\n} from \"./queries\";\nimport SelectionSwitches from \"./SelectionSwitches\";\nimport {\n getSampleUserIdentity,\n getSortedPrefixedWidgets,\n getWidgetDescriptions,\n sampleConsolidatedCodeString,\n shouldShowSwitches,\n} from \"./utils\";\n\nconst EmbedCode = ({\n showSessionContext,\n showUserIdentity,\n primaryApp = \"\",\n maxWidth = \"max-w-3xl\",\n}) => {\n const [emailType, setEmailType] = useState(EMAIL_TYPES.null);\n const [selectedFramework, setSelectedFramework] = useState(\n FRAMEWORK_SELECT_OPTIONS[0]\n );\n\n const { t } = useTranslation();\n const bodyRef = useRef();\n const forceUpdate = useForceUpdate();\n\n useEffect(() => {\n forceUpdate();\n }, []);\n\n const { data: { widgetApiKey = \"\" } = {}, isLoading: isLoadingApiKey } =\n useFetchApiKey();\n\n const {\n data: { neetoWidgetTokens = [] } = {},\n isLoading: isLoadingConfigurations,\n } = useFetchConfigurations();\n\n const { mutate: updateWidgetConfiguration } = useUpdateConfigurations();\n\n const previousEmailType = usePrevious(emailType);\n\n const selectedWidgets = neetoWidgetTokens\n .filter(\n item =>\n item.enabled &&\n (shouldShowSwitches() ||\n item.clientApplicationName.toLowerCase() === primaryApp)\n )\n .map(item => item.clientApplicationName.toLowerCase());\n\n const isOnlyChatWidgetSelected =\n selectedWidgets.length === 1 && selectedWidgets[0] === WIDGET_TYPES.chat;\n\n const enabledClientApps = neetoWidgetTokens\n .filter(prop(\"clientApplicationEnabled\"))\n .map(item => item.clientApplicationName.toLowerCase());\n\n const enabledWidgets = fromPairs(\n selectedWidgets.map(widget => [widget, true])\n );\n\n const shouldShowUserIdentity =\n showUserIdentity ?? (enabledWidgets.chat || enabledWidgets.replay);\n\n const shouldShowSessionContext = showSessionContext ?? enabledWidgets.replay;\n\n const updateSelectedWidgets = widget => {\n const widgetId = neetoWidgetTokens.find(\n item => item.clientApplicationName.toLowerCase() === widget\n ).id;\n const isEnabled = !selectedWidgets.includes(widget);\n\n updateWidgetConfiguration(\n { id: widgetId, payload: { enabled: isEnabled } },\n {\n onSuccess: () => {\n const productName = `neeto${capitalize(widget)}`;\n const response = isEnabled\n ? \"neetoMolecules.widget.installation.enabled\"\n : \"neetoMolecules.widget.installation.disabled\";\n\n Toastr.success(t(response, { productName }));\n },\n }\n );\n };\n\n const getEmbedCodeString = () =>\n isNotEmpty(widgetApiKey)\n ? sampleConsolidatedCodeString(enabledWidgets, widgetApiKey)\n : \"\";\n\n const getSnippetProps = selectedEmailType => {\n switch (selectedEmailType) {\n case EMAIL_TYPES.embedCode:\n return {\n codeString: getEmbedCodeString(),\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.embedCode\",\n { widgetList: getSortedPrefixedWidgets(selectedWidgets) }\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.mainText\"\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n }}\n values={{\n val: getWidgetDescriptions(selectedWidgets),\n }}\n />\n <ChatWidgetBody widgets={selectedWidgets} />\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.supportText\"\n values={{ helpEmail: INSTALLATION_HELP_EMAIL }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n mail: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={`mailto:${INSTALLATION_HELP_EMAIL}`}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.userIdentity:\n return {\n emailType: EMAIL_TYPES.userIdentity,\n enabledWidgets,\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.userIdentity\"\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.userIdentity\"\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n configureLink: (\n <a\n className=\"neeto-ui-text-primary-800\"\n rel=\"noreferrer\"\n target=\"_blank\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n values={{\n userIdentityKbUrl: enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL,\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.sessionContext:\n return {\n codeString: SAMPLE_CONTEXT_CODE_STRING,\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.sessionContext\"\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.sessionContext\"\n values={{ sessionContextKbUrl: NEETO_REPLAY_CONFIGURE_URL }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n configureLink: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.null:\n return previousEmailType !== EMAIL_TYPES.null\n ? getSnippetProps(previousEmailType)\n : {};\n default:\n throw new Error(t(\"neetoMolecules.widget.email.invalidType\"));\n }\n };\n\n const handleSendViaEmail = selectedEmail => {\n if (isEmpty(selectedWidgets)) {\n Toastr.error(\n t(\"neetoMolecules.widget.installation.snippet.disabledError\")\n );\n\n return;\n }\n\n setEmailType(selectedEmail);\n };\n\n const getSelectedWidgetsInstructionsKey = () => {\n if (isEmpty(selectedWidgets)) {\n return \"neetoMolecules.widget.installation.instructions.placement.noneOfThese\";\n }\n\n if (isOnlyChatWidgetSelected) {\n return \"neetoMolecules.widget.installation.instructions.placement.selectedChatWidget\";\n }\n\n return \"neetoMolecules.widget.installation.instructions.placement.selectedWidgets\";\n };\n\n const embedHelpTextTranslationComponents = {\n fontBold: <Typography component=\"span\" style=\"body2\" weight=\"semibold\" />,\n widgetNpmLink: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={USE_NEETO_WIDGET_NPM_PAGE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n Link: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={WIDGET_KB_HELP_URL[primaryApp]}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n };\n\n if (isLoadingApiKey || isLoadingConfigurations) {\n return (\n <div className=\"h-full w-full\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <div className=\"mx-auto mb-10 w-full flex-col items-center justify-start\">\n <div className={classnames(\"mx-auto\", maxWidth)}>\n {shouldShowSwitches() && (\n <SelectionSwitches\n {...{\n enabledClientApps,\n primaryApp,\n selectedWidgets,\n updateSelectedWidgets,\n }}\n />\n )}\n <div className=\"mb-8 w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\" data-testid=\"embed-code-block\">\n <CodeBlock\n className=\"neeto-ui-bg-primary-100 neeto-ui-rounded-lg\"\n codeString={getEmbedCodeString()}\n sendViaEmail={() => handleSendViaEmail(EMAIL_TYPES.embedCode)}\n title={<div>{t(\"neetoMolecules.widget.title.embedCode\")}</div>}\n />\n </div>\n <div className=\"w-full\">\n <Trans\n components={embedHelpTextTranslationComponents}\n i18nKey={getSelectedWidgetsInstructionsKey()}\n values={{ widgetList: getSortedPrefixedWidgets(selectedWidgets) }}\n />\n </div>\n </div>\n {shouldShowUserIdentity ? (\n <div className=\"mb-8 w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\">\n <CodeBlock\n className=\"neeto-ui-bg-primary-100 neeto-ui-rounded-lg\"\n frameworkProps={{ selectedFramework, setSelectedFramework }}\n title={t(\"neetoMolecules.widget.title.userIdentity\")}\n codeString={getSampleUserIdentity(\n enabledWidgets,\n selectedFramework.value\n )}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.userIdentity)\n }\n />\n </div>\n <Trans\n i18nKey=\"neetoMolecules.widget.installation.instructions.userIdentity\"\n components={{\n p: <Typography style=\"body2\" />,\n Link: (\n <a\n className=\"neeto-ui-text-primary-800\"\n rel=\"noreferrer\"\n target=\"_blank\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n />\n </div>\n ) : null}\n {shouldShowSessionContext ? (\n <div className=\"w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\">\n <CodeBlock\n className=\"neeto-ui-bg-primary-100 neeto-ui-rounded-lg\"\n codeString={SAMPLE_CONTEXT_CODE_STRING}\n title={t(\"neetoMolecules.widget.title.sessionContext\")}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.sessionContext)\n }\n />\n </div>\n <Trans\n i18nKey=\"neetoMolecules.widget.installation.instructions.sessionContext\"\n components={{\n p: <Typography style=\"body2\" />,\n Link: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n ) : null}\n </div>\n <CodeSnippet\n isPaneOpen={!!emailType && isNotEmpty(selectedWidgets)}\n onClose={() => setEmailType(EMAIL_TYPES.null)}\n {...getSnippetProps(emailType)}\n />\n </div>\n );\n};\n\nEmbedCode.propTypes = {\n primaryApp: PropTypes.string,\n maxWidth: PropTypes.string,\n};\n\nexport default React.memo(EmbedCode);\n","import React from \"react\";\n\nimport { Info } from \"neetoicons\";\nimport { Callout } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { QueryClient, QueryClientProvider } from \"react-query\";\n\nimport EmbedCode from \"./EmbedCode\";\n\nconst queryClient = new QueryClient();\n\nconst Main = props => {\n const { t } = useTranslation();\n\n const shouldRenderEmbedCode = window.globalProps.ssoEnabled;\n\n return shouldRenderEmbedCode ? (\n <QueryClientProvider client={queryClient}>\n <EmbedCode {...props} />\n </QueryClientProvider>\n ) : (\n <Callout icon={Info} style=\"info\">\n {t(\"neetoMolecules.widget.developmentInfo\")}\n </Callout>\n );\n};\n\nMain.propTypes = {\n /**\n * This specifies which is the primary widget which is shown on the left side of selection tabs.\n */\n primaryApp: PropTypes.string,\n};\n\nexport default Main;\n","import { WIDGET_TYPES } from \"./constants\";\nimport Main from \"./Main\";\n\nconst NeetoWidget = { EmbedCode: Main, WIDGET_TYPES };\n\nexport default NeetoWidget;\n"],"names":["NEETO_WIDGET_USER_IDENTITY_KEY","SESSION_CONTEXT_KEY","INSTALLATION_HELP_EMAIL","SAMPLE_CONTEXT_CODE_STRING","concat","WIDGET_TYPES","changelog","chat","replay","WIDGET_HELP_LINKS","WIDGET_DESCRIPTIONS","t","WIDGET_TYPES_VALUES","values","QUERY_KEYS","apiKey","configuration","DEFAULT_QUERY_STALE_TIME","EMAIL_TYPES","embedCode","userIdentity","sessionContext","RAILS_ENV","production","staging","development","NEETO_WIDGET_SCRIPT_URL","AVAILABLE_FRAMEWORK_OPTIONS","Object","freeze","rails","django","php","FRAMEWORK_SELECT_OPTIONS","label","value","SAMPLE_USER_IDENTITY_CODE_STRING","_defineProperty","WIDGET_CONFIG_URL","EMBED_CODE_EMAIL_URL","CHAT_WIDGET_KB_BASE_URL","CHANGELOG_WIDGET_KB_BASE_URL","REPLAY_WIDGET_KB_BASE_URL","NEETO_REPLAY_CONFIGURE_URL","NEETO_CHAT_USER_IDENTITY_URL","WIDGET_KB_HELP_URL","USE_NEETO_WIDGET_NPM_PAGE_URL","ChatWidgetBody","_ref","widgets","React","createElement","Fragment","includes","Trans","i18nKey","helpLink","components","p","Typography","className","style","a","href","rel","target","SyntaxHighlighter","code","language","useEffect","Prism","highlightAll","memo","CodeBlock","_ref$title","title","codeString","_ref$showCopyButton","showCopyButton","_ref$className","_ref$sendViaEmail","sendViaEmail","undefined","_ref$frameworkProps","frameworkProps","_useTranslation","useTranslation","_ref2","selectedFramework","setSelectedFramework","classnames","Select","options","onChange","Button","onClick","CopyToClipboardButton","buildEmbedWidgetScript","widgetScriptUrl","window","globalProps","railsEnv","indentAndFormat","str","formatter","arguments","length","identity","split","map","join","getCommentedCommand","command","isEnabled","embedWidgetEnvironment","embedWidgetApiKey","addChangelogOptions","wrapBlockInOnLoad","codeBlock","embedWidgetFunctionCall","enabledWidgets","cmd","filterMarkedCommands","queryString","filter","line","trim","getSampleUserIdentity","splitCodeLines","isEmailKey","isObjectStartLine","isObjectEndLine","last","isLineHidden","sampleConsolidatedCodeString","getEmailWidgetSnippetFormInitialValues","subject","emails","getSortedPrefixedWidgets","sortedWidgets","sort","widget","capitalize","getWidgetDescriptions","entries","_slicedToArray","pluck","getEmailWidgetSnippetValidationSchema","yup","object","array","required","i18next","string","getWidgetApiKeyUrl","organization","subdomain","shouldShowSwitches","_globalProps$user","email","user","toLowerCase","endsWith","queryWidgetApiKey","axios","get","showToastr","emailWidgetSnippet","data","post","fetchWidgetConfiguration","updateWidgetConfiguration","id","payload","put","useEmailEmbedCode","onSuccess","useMutation","emailData","CodeSnippet","isPaneOpen","onClose","_ref$onSent","onSent","noop","_ref$subject","_ref$body","body","_ref$emailType","emailType","_ref$enabledWidgets","_useState","useState","_useState2","emailMutation","codeToDisplay","handleSubmit","formData","_body$ref$current$inn","_body$ref","any","valid","Toastr","error","mutate","message","ref","current","innerHTML","snippet","renderCodeBlockProps","props","assoc","Pane","isOpen","Formik","initialValues","validationSchema","onSubmit","Form","Header","Body","MultiEmailInput","name","placeholder","Input","type","Footer","disabled","isLoading","loading","useForceUpdate","setValue","useFetchApiKey","useQuery","ssoEnabled","Promise","resolve","widgetApiKey","staleTime","useFetchConfigurations","useUpdateConfigurations","queryClient","useQueryClient","_objectSpread","invalidateQueries","TooltipSwitch","withT","enabledClientApps","selectedWidgets","updateSelectedWidgets","Tooltip","placement","content","productName","Switch","checked","SelectionSwitches","primaryApp","primaryWidget","isNotEmpty","Label","index","key","EmbedCode","showSessionContext","showUserIdentity","_ref$primaryApp","_ref$maxWidth","maxWidth","setEmailType","_useState3","_useState4","bodyRef","useRef","forceUpdate","_useFetchApiKey","_useFetchApiKey$data","_useFetchApiKey$data2","_useFetchApiKey$data3","isLoadingApiKey","_useFetchConfiguratio","_useFetchConfiguratio2","_useFetchConfiguratio3","_useFetchConfiguratio4","neetoWidgetTokens","isLoadingConfigurations","_useUpdateConfigurati","previousEmailType","usePrevious","item","enabled","clientApplicationName","isOnlyChatWidgetSelected","prop","fromPairs","shouldShowUserIdentity","shouldShowSessionContext","widgetId","find","response","success","getEmbedCodeString","getSnippetProps","selectedEmailType","widgetList","val","helpEmail","mail","configureLink","userIdentityKbUrl","sessionContextKbUrl","Error","handleSendViaEmail","selectedEmail","isEmpty","getSelectedWidgetsInstructionsKey","embedHelpTextTranslationComponents","fontBold","component","weight","widgetNpmLink","Link","PageLoader","_extends","QueryClient","Main","shouldRenderEmbedCode","QueryClientProvider","client","Callout","icon","Info","NeetoWidget"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NeetoWidget.js","sources":["../src/components/NeetoWidget/constants.js","../src/components/NeetoWidget/ChatWidgetBody.jsx","../src/components/NeetoWidget/SyntaxHighlighter.jsx","../src/components/NeetoWidget/CodeBlock.jsx","../src/components/NeetoWidget/utils.js","../src/components/NeetoWidget/api.js","../src/components/NeetoWidget/mutations.js","../src/components/NeetoWidget/CodeSnippet.jsx","../src/components/NeetoWidget/hooks/useForceUpdate.js","../src/components/NeetoWidget/queries.js","../src/components/NeetoWidget/SelectionSwitches/TooltipSwitch.jsx","../src/components/NeetoWidget/SelectionSwitches/index.jsx","../src/components/NeetoWidget/EmbedCode.jsx","../src/components/NeetoWidget/Main.jsx","../src/components/NeetoWidget/index.js"],"sourcesContent":["import { t } from \"i18next\";\nimport { values } from \"ramda\";\n\nexport const NEETO_WIDGET_USER_IDENTITY_KEY = \"NeetoWidgetUserIdentity\";\nexport const SESSION_CONTEXT_KEY = \"NeetoReplayWidgetSessionContext\";\n\nexport const INSTALLATION_HELP_EMAIL = \"support@neeto.com\";\n\nexport const SAMPLE_CONTEXT_CODE_STRING = `window.${SESSION_CONTEXT_KEY} = {\n key1: \"value\",\n key2: [\"array\", \"of\", \"values\"],\n /* More key-value pairs */\n}`;\n\nexport const WIDGET_TYPES = {\n changelog: \"changelog\",\n chat: \"chat\",\n replay: \"replay\",\n};\n\nexport const WIDGET_HELP_LINKS = {\n changelog: \"https://help.neetochangelog.com/articles/installation\",\n chat: \"https://help.neetochat.com/articles/installation-using-javascript-snippet\",\n replay: \"https://help.neetoreplay.com/articles/install-widget\",\n};\n\nexport const WIDGET_DESCRIPTIONS = {\n changelog: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.changelog\"\n ),\n chat: t(\"neetoMolecules.widget.email.body.values.embedCode.description.chat\"),\n replay: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.replay\"\n ),\n};\n\nexport const WIDGET_TYPES_VALUES = values(WIDGET_TYPES);\n\nexport const QUERY_KEYS = {\n apiKey: \"neetoWidgetApiKey\",\n configuration: \"neetoWidgetConfiguration\",\n};\n\nexport const DEFAULT_QUERY_STALE_TIME = 60 * 60 * 1000; // 1 hour in milliseconds\n\nexport const EMAIL_TYPES = {\n embedCode: \"embedCode\",\n userIdentity: \"userIdentity\",\n sessionContext: \"sessionContext\",\n null: \"\",\n};\n\nexport const RAILS_ENV = {\n production: \"production\",\n staging: \"staging\",\n development: \"development\",\n};\n\nexport const NEETO_WIDGET_SCRIPT_URL = {\n staging: \"https://d13nryxs46eypn.cloudfront.net/neeto-widget-staging.js\",\n production: \"https://d13nryxs46eypn.cloudfront.net/neeto-widget.js\",\n};\n\nexport const AVAILABLE_FRAMEWORK_OPTIONS = Object.freeze({\n rails: \"rails\",\n django: \"django\",\n php: \"php\",\n});\n\nexport const FRAMEWORK_SELECT_OPTIONS = [\n { label: \"Ruby(Rails)\", value: AVAILABLE_FRAMEWORK_OPTIONS.rails },\n { label: \"Python(Django)\", value: AVAILABLE_FRAMEWORK_OPTIONS.django },\n { label: \"PHP\", value: AVAILABLE_FRAMEWORK_OPTIONS.php },\n];\n\nexport const SAMPLE_USER_IDENTITY_CODE_STRING = {\n [AVAILABLE_FRAMEWORK_OPTIONS.rails]: `window.${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}`,\n [AVAILABLE_FRAMEWORK_OPTIONS.django]: `window.${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}`,\n [AVAILABLE_FRAMEWORK_OPTIONS.php]: `window.${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}`,\n};\nexport const WIDGET_CONFIG_URL = \"/api/widget/v1/neeto_widget_tokens\";\nexport const EMBED_CODE_EMAIL_URL = \"/api/widget/v1/email_snippets\";\nexport const CHAT_WIDGET_KB_BASE_URL = \"https://help.neetochat.com\";\nexport const CHANGELOG_WIDGET_KB_BASE_URL = \"https://help.neetochangelog.com\";\nexport const REPLAY_WIDGET_KB_BASE_URL = \"https://help.neetoreplay.com\";\nexport const NEETO_REPLAY_CONFIGURE_URL = `${REPLAY_WIDGET_KB_BASE_URL}/articles/configure-widget`;\nexport const NEETO_CHAT_USER_IDENTITY_URL = `${CHAT_WIDGET_KB_BASE_URL}/articles/info-about-logged-in-users`;\nexport const WIDGET_KB_HELP_URL = {\n changelog: `${CHANGELOG_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n chat: `${CHAT_WIDGET_KB_BASE_URL}/categories/installation`,\n replay: `${REPLAY_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n};\nexport const USE_NEETO_WIDGET_NPM_PAGE_URL =\n \"https://www.npmjs.com/package/@bigbinary/react-use-neeto-widget\";\n","import React from \"react\";\n\nimport { Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport { WIDGET_HELP_LINKS, WIDGET_TYPES } from \"./constants\";\n\nconst ChatWidgetBody = ({ widgets }) => (\n <>\n {widgets.includes(WIDGET_TYPES.changelog) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.changelogHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.changelog }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n a: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={WIDGET_HELP_LINKS.changelog}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n )}\n {widgets.includes(WIDGET_TYPES.chat) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.chatHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.chat }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n a: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={WIDGET_HELP_LINKS.chat}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n )}\n {widgets.includes(WIDGET_TYPES.replay) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.replayHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.replay }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n a: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={WIDGET_HELP_LINKS.replay}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n )}\n </>\n);\n\nexport default ChatWidgetBody;\n","import React, { useEffect } from \"react\";\n\nimport Prism from \"prismjs\";\nimport \"prismjs/themes/prism-tomorrow.css\";\n\nconst SyntaxHighlighter = ({ className, code, language }) => {\n useEffect(() => {\n Prism.highlightAll();\n }, [code]);\n\n return (\n <pre className={className}>\n <code className={`language-${language}`}>{code}</code>\n </pre>\n );\n};\n\nexport default React.memo(SyntaxHighlighter);\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { Button, Select, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport { FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport SyntaxHighlighter from \"./SyntaxHighlighter\";\n\nconst CodeBlock = ({\n title = (\n <div>\n <Trans i18nKey=\"neetoMolecules.codeblock.codeSnippet\" />\n </div>\n ),\n codeString,\n showCopyButton = true,\n className = \"\",\n sendViaEmail = undefined,\n frameworkProps = {},\n}) => {\n const { t } = useTranslation();\n const { selectedFramework, setSelectedFramework } = frameworkProps ?? {};\n\n return (\n <div className={classnames([\"relative\", className])}>\n <div 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\">\n {title && (\n <Typography\n className=\"m-0 flex-shrink-0\"\n data-cy=\"code-block-title-text\"\n style=\"h4\"\n >\n {title}\n </Typography>\n )}\n {selectedFramework && (\n <Select\n className=\"w-40\"\n data-testid=\"framework-select\"\n options={FRAMEWORK_SELECT_OPTIONS}\n value={selectedFramework}\n onChange={setSelectedFramework}\n />\n )}\n <div className=\"ml-auto flex flex-shrink-0 items-center justify-end gap-2\">\n {sendViaEmail ? (\n <Button\n style=\"text\"\n label={t(\n \"neetoMolecules.widget.installation.snippet.sendViaEmail\"\n )}\n onClick={sendViaEmail}\n />\n ) : null}\n {showCopyButton && (\n <CopyToClipboardButton\n label={t(\"neetoMolecules.widget.installation.snippet.copy\")}\n style=\"primary\"\n value={codeString}\n />\n )}\n </div>\n </div>\n <SyntaxHighlighter\n className=\"neeto-ui-bg-gray-800 neeto-ui-rounded-lg m-0 rounded-t-none\"\n code={codeString}\n language=\"javascript\"\n />\n </div>\n );\n};\n\nCodeBlock.propTypes = {\n title: PropTypes.object,\n codeString: PropTypes.string,\n showCopyButton: PropTypes.bool,\n className: PropTypes.string,\n sendViaEmail: PropTypes.func,\n frameworkProps: PropTypes.object,\n};\n\nexport default CodeBlock;\n","import i18next, { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { identity, last, pluck } from \"ramda\";\nimport * as yup from \"yup\";\n\nimport {\n NEETO_WIDGET_USER_IDENTITY_KEY,\n SESSION_CONTEXT_KEY,\n RAILS_ENV,\n NEETO_WIDGET_SCRIPT_URL,\n SAMPLE_USER_IDENTITY_CODE_STRING,\n WIDGET_DESCRIPTIONS,\n} from \"./constants\";\n\nconst buildEmbedWidgetScript = () => {\n const widgetScriptUrl =\n window.globalProps.railsEnv === RAILS_ENV.production\n ? NEETO_WIDGET_SCRIPT_URL.production\n : NEETO_WIDGET_SCRIPT_URL.staging;\n\n return `<script src=\"${widgetScriptUrl}\"></script>`;\n};\n\nconst indentAndFormat = (str, formatter = identity) =>\n str.split(\"\\n\").map(formatter).join(\"\\n \");\n\nconst getCommentedCommand = (command, isEnabled) =>\n isEnabled ? command : `/// ${command}`;\n\nconst embedWidgetEnvironment = () => {\n switch (window.globalProps.railsEnv) {\n case RAILS_ENV.production:\n return \"\";\n case RAILS_ENV.development:\n return `environment: \"${RAILS_ENV.development}\",`;\n case RAILS_ENV.staging:\n return `environment: \"${RAILS_ENV.staging}\",`;\n default:\n return \"/* Unidentified RAILS_ENV, */\";\n }\n};\n\nconst embedWidgetApiKey = apiKey => `apiKey: \"${apiKey}\",`;\n\nconst addChangelogOptions = () => `neetoChangelogOptions: {\n elementId: \"neetochangelog-trigger\",\n},`;\n\nconst wrapBlockInOnLoad = codeBlock =>\n `window.addEventListener(\"load\", () => ${codeBlock});`;\n\nconst embedWidgetFunctionCall = (enabledWidgets, apiKey) => `embedNeetoWidget({\n ${embedWidgetEnvironment()}\n ${indentAndFormat(embedWidgetApiKey(apiKey))}\n ${indentAndFormat(addChangelogOptions(), cmd =>\n getCommentedCommand(cmd, enabledWidgets.changelog)\n )}\n})`;\n\nconst filterMarkedCommands = queryString =>\n queryString\n .split(\"\\n\")\n .filter(line => !line.includes(\"///\") && line.trim())\n .join(\"\\n\");\n\nexport const getSampleUserIdentity = (enabledWidgets, selectedFramework) => {\n const splitCodeLines =\n SAMPLE_USER_IDENTITY_CODE_STRING[selectedFramework].split(\"\\n\");\n\n return filterMarkedCommands(\n splitCodeLines\n .map(cmd => {\n const isEmailKey = cmd.includes(\"email\");\n const isObjectStartLine = cmd === splitCodeLines[0];\n const isObjectEndLine = cmd === last(splitCodeLines);\n const isLineHidden =\n !isEmailKey && !isObjectStartLine && !isObjectEndLine;\n if (\n (!enabledWidgets.chat && isLineHidden) ||\n (!enabledWidgets.chat && !enabledWidgets.replay)\n ) {\n return null;\n }\n\n return cmd;\n })\n .join(\"\\n\")\n );\n};\n\nexport const sampleConsolidatedCodeString = (enabledWidgets, apiKey) =>\n filterMarkedCommands(`${buildEmbedWidgetScript()}\n<script>\n ${\n enabledWidgets.chat || enabledWidgets.replay\n ? `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {};`\n : \"\"\n }\n ${enabledWidgets.replay ? `window.${SESSION_CONTEXT_KEY} = {};` : \"\"}\n\n ${indentAndFormat(\n wrapBlockInOnLoad(embedWidgetFunctionCall(enabledWidgets, apiKey))\n )}\n</script>`);\n\nexport const getEmailWidgetSnippetFormInitialValues = subject => ({\n emails: \"\",\n subject,\n});\n\nexport const getSortedPrefixedWidgets = widgets => {\n const sortedWidgets = widgets\n .sort()\n .map(widget => `neeto${capitalize(widget)}`);\n\n return sortedWidgets.length === 1\n ? sortedWidgets\n : t(\"neetoMolecules.widget.email.widgetList\", {\n widgets: sortedWidgets,\n });\n};\n\nexport const getWidgetDescriptions = widgets => {\n const values = Object.entries(WIDGET_DESCRIPTIONS).filter(([widget]) =>\n widgets.includes(widget)\n );\n\n return pluck(1, values);\n};\n\nexport const getEmailWidgetSnippetValidationSchema = () =>\n yup.object({\n emails: yup\n .array()\n .required()\n .label(i18next.t(\"neetoMolecules.widget.email.fields.emails.label\")),\n subject: yup\n .string()\n .required()\n .label(i18next.t(\"neetoMolecules.widget.email.fields.subject.label\")),\n });\n\nexport const getWidgetApiKeyUrl = () =>\n `api/widget/v1/api_keys/${window.globalProps.organization.subdomain}`;\n\nexport const shouldShowSwitches = () => {\n const email = globalProps.user?.email || \"\";\n if (window.globalProps.railsEnv === RAILS_ENV.production) {\n return email.toLowerCase().endsWith(\"@bigbinary.com\");\n }\n\n return true;\n};\n","import axios from \"axios\";\n\nimport { EMBED_CODE_EMAIL_URL, WIDGET_CONFIG_URL } from \"./constants\";\nimport { getWidgetApiKeyUrl } from \"./utils\";\n\nexport const queryWidgetApiKey = () =>\n axios.get(getWidgetApiKeyUrl(), { showToastr: false });\n\nexport const emailWidgetSnippet = data =>\n axios.post(EMBED_CODE_EMAIL_URL, data);\n\nexport const fetchWidgetConfiguration = () => axios.get(WIDGET_CONFIG_URL);\n\nexport const updateWidgetConfiguration = ({ id, payload }) =>\n axios.put(`${WIDGET_CONFIG_URL}/${id}`, payload);\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport { emailWidgetSnippet } from \"./api\";\n\nexport const useEmailEmbedCode = onSuccess =>\n useMutation({\n mutationFn: emailData => emailWidgetSnippet(emailData),\n onSuccess,\n });\n","import React, { useState } from \"react\";\n\nimport { Formik, Form } from \"formik\";\nimport { noop } from \"neetocist\";\nimport { Typography, Button, Pane, Toastr } from \"neetoui\";\nimport { Input, MultiEmailInput } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { pluck, any, assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CodeBlock from \"./CodeBlock\";\nimport { EMAIL_TYPES, FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport { useEmailEmbedCode } from \"./mutations\";\nimport {\n getEmailWidgetSnippetFormInitialValues,\n getEmailWidgetSnippetValidationSchema,\n getSampleUserIdentity,\n} from \"./utils\";\n\nconst CodeSnippet = ({\n isPaneOpen,\n onClose,\n onSent = noop,\n codeString,\n subject = \"\",\n body = \"\",\n emailType = EMAIL_TYPES.embedCode,\n enabledWidgets = {},\n}) => {\n const { t } = useTranslation();\n const [selectedFramework, setSelectedFramework] = useState(\n FRAMEWORK_SELECT_OPTIONS[0]\n );\n const emailMutation = useEmailEmbedCode(onSent);\n\n const codeToDisplay =\n emailType === EMAIL_TYPES.userIdentity\n ? getSampleUserIdentity(enabledWidgets, selectedFramework.value)\n : codeString;\n\n const handleSubmit = formData => {\n if (any(({ valid }) => !valid, formData.emails)) {\n Toastr.error(t(\"neetoMolecules.widget.email.fields.emails.invalidError\"));\n\n return;\n }\n\n emailMutation.mutate({\n subject: formData.subject,\n emails: pluck(\"value\", formData.emails),\n message: body.ref?.current.innerHTML ?? body,\n snippet: codeToDisplay,\n });\n };\n\n const renderCodeBlockProps = () => {\n let props = {\n codeString: codeToDisplay,\n showCopyButton: false,\n className: \"neeto-ui-bg-primary-100 neeto-ui-rounded-lg\",\n };\n if (emailType === EMAIL_TYPES.userIdentity) {\n props = assoc(\n \"frameworkProps\",\n { selectedFramework, setSelectedFramework },\n props\n );\n }\n\n return props;\n };\n\n return (\n <Pane {...{ onClose }} isOpen={isPaneOpen}>\n <Formik\n initialValues={getEmailWidgetSnippetFormInitialValues(subject)}\n validationSchema={getEmailWidgetSnippetValidationSchema()}\n onSubmit={handleSubmit}\n >\n <Form>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.widget.email.title\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"w-full space-y-4\">\n <MultiEmailInput\n required\n label={t(\"neetoMolecules.widget.email.fields.emails.label\")}\n name=\"emails\"\n placeholder={t(\n \"neetoMolecules.widget.email.fields.emails.placeholder\"\n )}\n />\n <Input\n required\n label={t(\"neetoMolecules.widget.email.fields.subject.label\")}\n name=\"subject\"\n type=\"text\"\n />\n <Typography style=\"body2\">{body}</Typography>\n <CodeBlock {...renderCodeBlockProps()} />\n </div>\n </Pane.Body>\n <Pane.Footer className=\"gap-x-2\">\n <Button\n disabled={emailMutation.isPending}\n label={t(\"neetoMolecules.widget.email.actions.send\")}\n loading={emailMutation.isPending}\n type=\"submit\"\n />\n <Button\n label={t(\"neetoMolecules.widget.email.actions.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </Form>\n </Formik>\n </Pane>\n );\n};\n\nCodeSnippet.propTypes = {\n isPaneOpen: PropTypes.bool,\n onClose: PropTypes.func,\n onSent: PropTypes.func,\n codeString: PropTypes.string,\n subject: PropTypes.string,\n body: PropTypes.string,\n};\n\nexport default CodeSnippet;\n","import { useState } from \"react\";\n\nconst useForceUpdate = () => {\n // eslint-disable-next-line react/hook-use-state\n const [, setValue] = useState(0);\n\n return () => setValue(value => value + 1);\n};\n\nexport default useForceUpdate;\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\n\nimport {\n queryWidgetApiKey,\n fetchWidgetConfiguration,\n updateWidgetConfiguration,\n} from \"./api\";\nimport { DEFAULT_QUERY_STALE_TIME, QUERY_KEYS } from \"./constants\";\n\nexport const useFetchApiKey = () =>\n useQuery({\n queryKey: [QUERY_KEYS.apiKey],\n queryFn: () => {\n if (\n window.globalProps.railsEnv === \"heroku\" ||\n !window.globalProps.ssoEnabled\n ) {\n return Promise.resolve({ widgetApiKey: \"placeholder-api-key\" });\n }\n\n return queryWidgetApiKey();\n },\n staleTime: DEFAULT_QUERY_STALE_TIME,\n });\n\nexport const useFetchConfigurations = () =>\n useQuery({\n queryKey: [QUERY_KEYS.configuration],\n queryFn: fetchWidgetConfiguration,\n staleTime: DEFAULT_QUERY_STALE_TIME,\n });\n\nexport const useUpdateConfigurations = (options = {}) =>\n useMutationWithInvalidation(updateWidgetConfiguration, {\n keysToInvalidate: [[QUERY_KEYS.configuration]],\n ...options,\n });\n","import React from \"react\";\n\nimport { capitalize } from \"neetocist\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { Switch, Tooltip } from \"neetoui\";\n\nconst TooltipSwitch = withT(\n ({\n t,\n enabledClientApps,\n widget,\n selectedWidgets,\n updateSelectedWidgets,\n }) => (\n <Tooltip\n disabled={enabledClientApps.includes(widget)}\n placement=\"right\"\n content={t(\"neetoMolecules.widget.tooltips.productIsDisabled\", {\n productName: `neeto${capitalize(widget)}`,\n })}\n >\n <Switch\n checked={selectedWidgets.includes(widget)}\n disabled={!enabledClientApps.includes(widget)}\n onChange={() => updateSelectedWidgets(widget)}\n />\n </Tooltip>\n )\n);\n\nexport default TooltipSwitch;\n","import React from \"react\";\n\nimport { capitalize, isNotEmpty } from \"neetocist\";\nimport { Label } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport TooltipSwitch from \"./TooltipSwitch\";\n\nimport { WIDGET_TYPES_VALUES } from \"../constants\";\n\nconst SelectionSwitches = ({\n selectedWidgets,\n updateSelectedWidgets,\n primaryApp,\n enabledClientApps,\n}) => {\n const primaryWidget = WIDGET_TYPES_VALUES.includes(primaryApp)\n ? primaryApp\n : \"\";\n\n return (\n <div className=\"mb-4 flex w-full flex-wrap items-center justify-between gap-6\">\n <div className=\"flex items-center space-x-2\">\n {isNotEmpty(primaryWidget) && (\n <TooltipSwitch\n {...{ enabledClientApps, selectedWidgets, updateSelectedWidgets }}\n widget={primaryWidget}\n />\n )}\n <Label>neeto{capitalize(primaryWidget)}</Label>\n </div>\n <div className=\"flex flex-wrap items-center gap-6 sm:justify-end\">\n {WIDGET_TYPES_VALUES.map(\n (widget, index) =>\n primaryApp !== widget && (\n <div className=\"flex items-center space-x-2\" key={index}>\n <TooltipSwitch\n {...{\n enabledClientApps,\n selectedWidgets,\n updateSelectedWidgets,\n widget,\n }}\n />\n <Label>neeto{capitalize(widget)}</Label>\n </div>\n )\n )}\n </div>\n </div>\n );\n};\n\nSelectionSwitches.propTypes = {\n selectedWidgets: PropTypes.arrayOf(PropTypes.string),\n updateSelectedWidgets: PropTypes.func,\n primaryApp: PropTypes.string,\n};\nexport default SelectionSwitches;\n","import React, { useState, useRef, useEffect } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize, isNotEmpty } from \"neetocist\";\nimport usePrevious from \"neetocommons/react-utils/usePrevious\";\nimport { Toastr, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { fromPairs, isEmpty, prop } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport PageLoader from \"components/PageLoader\";\n\nimport ChatWidgetBody from \"./ChatWidgetBody\";\nimport CodeBlock from \"./CodeBlock\";\nimport CodeSnippet from \"./CodeSnippet\";\nimport {\n EMAIL_TYPES,\n SAMPLE_CONTEXT_CODE_STRING,\n INSTALLATION_HELP_EMAIL,\n FRAMEWORK_SELECT_OPTIONS,\n NEETO_CHAT_USER_IDENTITY_URL,\n NEETO_REPLAY_CONFIGURE_URL,\n WIDGET_TYPES,\n WIDGET_KB_HELP_URL,\n USE_NEETO_WIDGET_NPM_PAGE_URL,\n} from \"./constants\";\nimport useForceUpdate from \"./hooks/useForceUpdate\";\nimport {\n useFetchApiKey,\n useFetchConfigurations,\n useUpdateConfigurations,\n} from \"./queries\";\nimport SelectionSwitches from \"./SelectionSwitches\";\nimport {\n getSampleUserIdentity,\n getSortedPrefixedWidgets,\n getWidgetDescriptions,\n sampleConsolidatedCodeString,\n shouldShowSwitches,\n} from \"./utils\";\n\nconst EmbedCode = ({\n showSessionContext,\n showUserIdentity,\n primaryApp = \"\",\n maxWidth = \"max-w-3xl\",\n}) => {\n const [emailType, setEmailType] = useState(EMAIL_TYPES.null);\n const [selectedFramework, setSelectedFramework] = useState(\n FRAMEWORK_SELECT_OPTIONS[0]\n );\n\n const { t } = useTranslation();\n const bodyRef = useRef();\n const forceUpdate = useForceUpdate();\n\n useEffect(() => {\n forceUpdate();\n }, []);\n\n const { data: { widgetApiKey = \"\" } = {}, isLoading: isLoadingApiKey } =\n useFetchApiKey();\n\n const {\n data: { neetoWidgetTokens = [] } = {},\n isLoading: isLoadingConfigurations,\n } = useFetchConfigurations();\n\n const { mutate: updateWidgetConfiguration } = useUpdateConfigurations();\n\n const previousEmailType = usePrevious(emailType);\n\n const selectedWidgets = neetoWidgetTokens\n .filter(\n item =>\n item.enabled &&\n (shouldShowSwitches() ||\n item.clientApplicationName.toLowerCase() === primaryApp)\n )\n .map(item => item.clientApplicationName.toLowerCase());\n\n const isOnlyChatWidgetSelected =\n selectedWidgets.length === 1 && selectedWidgets[0] === WIDGET_TYPES.chat;\n\n const enabledClientApps = neetoWidgetTokens\n .filter(prop(\"clientApplicationEnabled\"))\n .map(item => item.clientApplicationName.toLowerCase());\n\n const enabledWidgets = fromPairs(\n selectedWidgets.map(widget => [widget, true])\n );\n\n const shouldShowUserIdentity =\n showUserIdentity ?? (enabledWidgets.chat || enabledWidgets.replay);\n\n const shouldShowSessionContext = showSessionContext ?? enabledWidgets.replay;\n\n const updateSelectedWidgets = widget => {\n const widgetId = neetoWidgetTokens.find(\n item => item.clientApplicationName.toLowerCase() === widget\n ).id;\n const isEnabled = !selectedWidgets.includes(widget);\n\n updateWidgetConfiguration(\n { id: widgetId, payload: { enabled: isEnabled } },\n {\n onSuccess: () => {\n const productName = `neeto${capitalize(widget)}`;\n const response = isEnabled\n ? \"neetoMolecules.widget.installation.enabled\"\n : \"neetoMolecules.widget.installation.disabled\";\n\n Toastr.success(t(response, { productName }));\n },\n }\n );\n };\n\n const getEmbedCodeString = () =>\n isNotEmpty(widgetApiKey)\n ? sampleConsolidatedCodeString(enabledWidgets, widgetApiKey)\n : \"\";\n\n const getSnippetProps = selectedEmailType => {\n switch (selectedEmailType) {\n case EMAIL_TYPES.embedCode:\n return {\n codeString: getEmbedCodeString(),\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.embedCode\",\n { widgetList: getSortedPrefixedWidgets(selectedWidgets) }\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.mainText\"\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n }}\n values={{\n val: getWidgetDescriptions(selectedWidgets),\n }}\n />\n <ChatWidgetBody widgets={selectedWidgets} />\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.supportText\"\n values={{ helpEmail: INSTALLATION_HELP_EMAIL }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n mail: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={`mailto:${INSTALLATION_HELP_EMAIL}`}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.userIdentity:\n return {\n emailType: EMAIL_TYPES.userIdentity,\n enabledWidgets,\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.userIdentity\"\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.userIdentity\"\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n configureLink: (\n <a\n className=\"neeto-ui-text-primary-800\"\n rel=\"noreferrer\"\n target=\"_blank\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n values={{\n userIdentityKbUrl: enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL,\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.sessionContext:\n return {\n codeString: SAMPLE_CONTEXT_CODE_STRING,\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.sessionContext\"\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.sessionContext\"\n values={{ sessionContextKbUrl: NEETO_REPLAY_CONFIGURE_URL }}\n components={{\n p: <Typography className=\"mb-2\" style=\"body2\" />,\n configureLink: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.null:\n return previousEmailType !== EMAIL_TYPES.null\n ? getSnippetProps(previousEmailType)\n : {};\n default:\n throw new Error(t(\"neetoMolecules.widget.email.invalidType\"));\n }\n };\n\n const handleSendViaEmail = selectedEmail => {\n if (isEmpty(selectedWidgets)) {\n Toastr.error(\n t(\"neetoMolecules.widget.installation.snippet.disabledError\")\n );\n\n return;\n }\n\n setEmailType(selectedEmail);\n };\n\n const getSelectedWidgetsInstructionsKey = () => {\n if (isEmpty(selectedWidgets)) {\n return \"neetoMolecules.widget.installation.instructions.placement.noneOfThese\";\n }\n\n if (isOnlyChatWidgetSelected) {\n return \"neetoMolecules.widget.installation.instructions.placement.selectedChatWidget\";\n }\n\n return \"neetoMolecules.widget.installation.instructions.placement.selectedWidgets\";\n };\n\n const embedHelpTextTranslationComponents = {\n fontBold: <Typography component=\"span\" style=\"body2\" weight=\"semibold\" />,\n widgetNpmLink: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={USE_NEETO_WIDGET_NPM_PAGE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n Link: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={WIDGET_KB_HELP_URL[primaryApp]}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n };\n\n if (isLoadingApiKey || isLoadingConfigurations) {\n return (\n <div className=\"h-full w-full\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <div className=\"mx-auto mb-10 w-full flex-col items-center justify-start\">\n <div className={classnames(\"mx-auto\", maxWidth)}>\n {shouldShowSwitches() && (\n <SelectionSwitches\n {...{\n enabledClientApps,\n primaryApp,\n selectedWidgets,\n updateSelectedWidgets,\n }}\n />\n )}\n <div className=\"mb-8 w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\" data-testid=\"embed-code-block\">\n <CodeBlock\n className=\"neeto-ui-bg-primary-100 neeto-ui-rounded-lg\"\n codeString={getEmbedCodeString()}\n sendViaEmail={() => handleSendViaEmail(EMAIL_TYPES.embedCode)}\n title={<div>{t(\"neetoMolecules.widget.title.embedCode\")}</div>}\n />\n </div>\n <div className=\"w-full\">\n <Trans\n components={embedHelpTextTranslationComponents}\n i18nKey={getSelectedWidgetsInstructionsKey()}\n values={{ widgetList: getSortedPrefixedWidgets(selectedWidgets) }}\n />\n </div>\n </div>\n {shouldShowUserIdentity ? (\n <div className=\"mb-8 w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\">\n <CodeBlock\n className=\"neeto-ui-bg-primary-100 neeto-ui-rounded-lg\"\n frameworkProps={{ selectedFramework, setSelectedFramework }}\n title={t(\"neetoMolecules.widget.title.userIdentity\")}\n codeString={getSampleUserIdentity(\n enabledWidgets,\n selectedFramework.value\n )}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.userIdentity)\n }\n />\n </div>\n <Trans\n i18nKey=\"neetoMolecules.widget.installation.instructions.userIdentity\"\n components={{\n p: <Typography style=\"body2\" />,\n Link: (\n <a\n className=\"neeto-ui-text-primary-800\"\n rel=\"noreferrer\"\n target=\"_blank\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n />\n </div>\n ) : null}\n {shouldShowSessionContext ? (\n <div className=\"w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\">\n <CodeBlock\n className=\"neeto-ui-bg-primary-100 neeto-ui-rounded-lg\"\n codeString={SAMPLE_CONTEXT_CODE_STRING}\n title={t(\"neetoMolecules.widget.title.sessionContext\")}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.sessionContext)\n }\n />\n </div>\n <Trans\n i18nKey=\"neetoMolecules.widget.installation.instructions.sessionContext\"\n components={{\n p: <Typography style=\"body2\" />,\n Link: (\n <a\n className=\"neeto-ui-text-primary-800\"\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n ) : null}\n </div>\n <CodeSnippet\n isPaneOpen={!!emailType && isNotEmpty(selectedWidgets)}\n onClose={() => setEmailType(EMAIL_TYPES.null)}\n {...getSnippetProps(emailType)}\n />\n </div>\n );\n};\n\nEmbedCode.propTypes = {\n primaryApp: PropTypes.string,\n maxWidth: PropTypes.string,\n};\n\nexport default React.memo(EmbedCode);\n","import React from \"react\";\n\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\nimport { Info } from \"neetoicons\";\nimport { Callout } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmbedCode from \"./EmbedCode\";\n\nconst queryClient = new QueryClient();\n\nconst Main = props => {\n const { t } = useTranslation();\n\n const shouldRenderEmbedCode = window.globalProps.ssoEnabled;\n\n return shouldRenderEmbedCode ? (\n <QueryClientProvider client={queryClient}>\n <EmbedCode {...props} />\n </QueryClientProvider>\n ) : (\n <Callout icon={Info} style=\"info\">\n {t(\"neetoMolecules.widget.developmentInfo\")}\n </Callout>\n );\n};\n\nMain.propTypes = {\n /**\n * This specifies which is the primary widget which is shown on the left side of selection tabs.\n */\n primaryApp: PropTypes.string,\n};\n\nexport default Main;\n","import { WIDGET_TYPES } from \"./constants\";\nimport Main from \"./Main\";\n\nconst NeetoWidget = { EmbedCode: Main, WIDGET_TYPES };\n\nexport default NeetoWidget;\n"],"names":["NEETO_WIDGET_USER_IDENTITY_KEY","SESSION_CONTEXT_KEY","INSTALLATION_HELP_EMAIL","SAMPLE_CONTEXT_CODE_STRING","concat","WIDGET_TYPES","changelog","chat","replay","WIDGET_HELP_LINKS","WIDGET_DESCRIPTIONS","t","WIDGET_TYPES_VALUES","values","QUERY_KEYS","apiKey","configuration","DEFAULT_QUERY_STALE_TIME","EMAIL_TYPES","embedCode","userIdentity","sessionContext","RAILS_ENV","production","staging","development","NEETO_WIDGET_SCRIPT_URL","AVAILABLE_FRAMEWORK_OPTIONS","Object","freeze","rails","django","php","FRAMEWORK_SELECT_OPTIONS","label","value","SAMPLE_USER_IDENTITY_CODE_STRING","_defineProperty","WIDGET_CONFIG_URL","EMBED_CODE_EMAIL_URL","CHAT_WIDGET_KB_BASE_URL","CHANGELOG_WIDGET_KB_BASE_URL","REPLAY_WIDGET_KB_BASE_URL","NEETO_REPLAY_CONFIGURE_URL","NEETO_CHAT_USER_IDENTITY_URL","WIDGET_KB_HELP_URL","USE_NEETO_WIDGET_NPM_PAGE_URL","ChatWidgetBody","_ref","widgets","React","createElement","Fragment","includes","Trans","i18nKey","helpLink","components","p","Typography","className","style","a","href","rel","target","SyntaxHighlighter","code","language","useEffect","Prism","highlightAll","memo","CodeBlock","_ref$title","title","codeString","_ref$showCopyButton","showCopyButton","_ref$className","_ref$sendViaEmail","sendViaEmail","undefined","_ref$frameworkProps","frameworkProps","_useTranslation","useTranslation","_ref2","selectedFramework","setSelectedFramework","classnames","Select","options","onChange","Button","onClick","CopyToClipboardButton","buildEmbedWidgetScript","widgetScriptUrl","window","globalProps","railsEnv","indentAndFormat","str","formatter","arguments","length","identity","split","map","join","getCommentedCommand","command","isEnabled","embedWidgetEnvironment","embedWidgetApiKey","addChangelogOptions","wrapBlockInOnLoad","codeBlock","embedWidgetFunctionCall","enabledWidgets","cmd","filterMarkedCommands","queryString","filter","line","trim","getSampleUserIdentity","splitCodeLines","isEmailKey","isObjectStartLine","isObjectEndLine","last","isLineHidden","sampleConsolidatedCodeString","getEmailWidgetSnippetFormInitialValues","subject","emails","getSortedPrefixedWidgets","sortedWidgets","sort","widget","capitalize","getWidgetDescriptions","entries","_slicedToArray","pluck","getEmailWidgetSnippetValidationSchema","yup","object","array","required","i18next","string","getWidgetApiKeyUrl","organization","subdomain","shouldShowSwitches","_globalProps$user","email","user","toLowerCase","endsWith","queryWidgetApiKey","axios","get","showToastr","emailWidgetSnippet","data","post","fetchWidgetConfiguration","updateWidgetConfiguration","id","payload","put","useEmailEmbedCode","onSuccess","useMutation","mutationFn","emailData","CodeSnippet","isPaneOpen","onClose","_ref$onSent","onSent","noop","_ref$subject","_ref$body","body","_ref$emailType","emailType","_ref$enabledWidgets","_useState","useState","_useState2","emailMutation","codeToDisplay","handleSubmit","formData","_body$ref$current$inn","_body$ref","any","valid","Toastr","error","mutate","message","ref","current","innerHTML","snippet","renderCodeBlockProps","props","assoc","Pane","isOpen","Formik","initialValues","validationSchema","onSubmit","Form","Header","Body","MultiEmailInput","name","placeholder","Input","type","Footer","disabled","isPending","loading","useForceUpdate","setValue","useFetchApiKey","useQuery","queryKey","queryFn","ssoEnabled","Promise","resolve","widgetApiKey","staleTime","useFetchConfigurations","useUpdateConfigurations","useMutationWithInvalidation","_objectSpread","keysToInvalidate","TooltipSwitch","withT","enabledClientApps","selectedWidgets","updateSelectedWidgets","Tooltip","placement","content","productName","Switch","checked","SelectionSwitches","primaryApp","primaryWidget","isNotEmpty","Label","index","key","EmbedCode","showSessionContext","showUserIdentity","_ref$primaryApp","_ref$maxWidth","maxWidth","setEmailType","_useState3","_useState4","bodyRef","useRef","forceUpdate","_useFetchApiKey","_useFetchApiKey$data","_useFetchApiKey$data2","_useFetchApiKey$data3","isLoadingApiKey","isLoading","_useFetchConfiguratio","_useFetchConfiguratio2","_useFetchConfiguratio3","_useFetchConfiguratio4","neetoWidgetTokens","isLoadingConfigurations","_useUpdateConfigurati","previousEmailType","usePrevious","item","enabled","clientApplicationName","isOnlyChatWidgetSelected","prop","fromPairs","shouldShowUserIdentity","shouldShowSessionContext","widgetId","find","response","success","getEmbedCodeString","getSnippetProps","selectedEmailType","widgetList","val","helpEmail","mail","configureLink","userIdentityKbUrl","sessionContextKbUrl","Error","handleSendViaEmail","selectedEmail","isEmpty","getSelectedWidgetsInstructionsKey","embedHelpTextTranslationComponents","fontBold","component","weight","widgetNpmLink","Link","PageLoader","_extends","queryClient","QueryClient","Main","shouldRenderEmbedCode","QueryClientProvider","client","Callout","icon","Info","NeetoWidget"],"mappings":"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"}
|
package/dist/Onboarding.js
CHANGED
|
@@ -12,7 +12,7 @@ import { n } from './inject-css-c86de496.js';
|
|
|
12
12
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
13
13
|
import { t } from 'i18next';
|
|
14
14
|
import useBreakpoints from '@bigbinary/neeto-commons-frontend/react-utils/useBreakpoints';
|
|
15
|
-
import
|
|
15
|
+
import RightArrow from '@bigbinary/neeto-icons/RightArrow';
|
|
16
16
|
import { useTranslation } from 'react-i18next';
|
|
17
17
|
|
|
18
18
|
var CompletedScreen = withT(function (_ref) {
|
package/dist/OptionFields.js
CHANGED
|
@@ -3,18 +3,22 @@ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
|
3
3
|
import React__default, { useState } from 'react';
|
|
4
4
|
import { DragDropContext, Droppable, Draggable } from '@hello-pangea/dnd';
|
|
5
5
|
import { isNotEmpty, noop, slugify } from '@bigbinary/neeto-cist';
|
|
6
|
-
import
|
|
6
|
+
import Plus from '@bigbinary/neeto-icons/Plus';
|
|
7
7
|
import Button from '@bigbinary/neetoui/Button';
|
|
8
8
|
import Typography from '@bigbinary/neetoui/Typography';
|
|
9
9
|
import { reject, prop, isEmpty, assocPath, remove, move, append, path, pluck } from 'ramda';
|
|
10
10
|
import { useTranslation, Trans } from 'react-i18next';
|
|
11
11
|
import { withT } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
12
|
+
import Delete from '@bigbinary/neeto-icons/Delete';
|
|
13
|
+
import Edit from '@bigbinary/neeto-icons/Edit';
|
|
14
|
+
import Reorder from '@bigbinary/neeto-icons/Reorder';
|
|
12
15
|
import Modal from '@bigbinary/neetoui/Modal';
|
|
13
16
|
import Textarea from '@bigbinary/neetoui/Textarea';
|
|
14
17
|
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
15
18
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
16
19
|
import { useFormikContext } from 'formik';
|
|
17
20
|
import i18next from 'i18next';
|
|
21
|
+
import ImageUpload from '@bigbinary/neeto-icons/ImageUpload';
|
|
18
22
|
import Input from '@bigbinary/neetoui/Input';
|
|
19
23
|
|
|
20
24
|
var DragHandle = function DragHandle(props) {
|