@bigbinary/neeto-molecules 5.1.19 → 5.1.21
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/FinderModal.js +56 -9
- package/dist/FinderModal.js.map +1 -1
- package/dist/IpRestriction.js +2 -3175
- package/dist/IpRestriction.js.map +1 -1
- package/dist/MadeWith.js +3 -74
- package/dist/MadeWith.js.map +1 -1
- package/dist/NeetoWidget.js +3 -1958
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +3 -400
- package/dist/Onboarding.js.map +1 -1
- package/dist/chevron-up-B2_LTx_h.js +15 -0
- package/dist/chevron-up-B2_LTx_h.js.map +1 -0
- package/dist/cjs/FinderModal.js +54 -7
- package/dist/cjs/FinderModal.js.map +1 -1
- package/dist/cjs/IpRestriction.js +21 -3194
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/MadeWith.js +17 -88
- package/dist/cjs/MadeWith.js.map +1 -1
- package/dist/cjs/NeetoWidget.js +4 -1959
- package/dist/cjs/NeetoWidget.js.map +1 -1
- package/dist/cjs/Onboarding.js +3 -400
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/chevron-up-CpzhFWzM.js +17 -0
- package/dist/cjs/chevron-up-CpzhFWzM.js.map +1 -0
- package/dist/cjs/copy-CerjTcLL.js +20 -0
- package/dist/cjs/copy-CerjTcLL.js.map +1 -0
- package/dist/cjs/globe-DawgK2Dx.js +21 -0
- package/dist/cjs/globe-DawgK2Dx.js.map +1 -0
- package/dist/cjs/index-ARGXqXxG.js +78 -0
- package/dist/cjs/index-ARGXqXxG.js.map +1 -0
- package/dist/cjs/index-BeqE2JWC.js +3180 -0
- package/dist/cjs/index-BeqE2JWC.js.map +1 -0
- package/dist/cjs/panel-left-close-CLoRPBWH.js +21 -0
- package/dist/cjs/panel-left-close-CLoRPBWH.js.map +1 -0
- package/dist/cjs/phone-number-Bza7WGZm.js +315 -0
- package/dist/cjs/phone-number-Bza7WGZm.js.map +1 -0
- package/dist/cjs/prism-tomorrow-BMFuJ5o1.js +1963 -0
- package/dist/cjs/prism-tomorrow-BMFuJ5o1.js.map +1 -0
- package/dist/cjs/react-confetti-DdGoyZ0y.js +405 -0
- package/dist/cjs/react-confetti-DdGoyZ0y.js.map +1 -0
- package/dist/cjs/smartphone-ChvEvl-o.js +36 -0
- package/dist/cjs/smartphone-ChvEvl-o.js.map +1 -0
- package/dist/cjs/trash-2-CotPjU5n.js +23 -0
- package/dist/cjs/trash-2-CotPjU5n.js.map +1 -0
- package/dist/cjs/triangle-alert-De-qkUXK.js +27 -0
- package/dist/cjs/triangle-alert-De-qkUXK.js.map +1 -0
- package/dist/cjs/v2/AuditLogs.js +4 -18
- package/dist/cjs/v2/AuditLogs.js.map +1 -1
- package/dist/cjs/v2/Builder.js +4 -18
- package/dist/cjs/v2/Builder.js.map +1 -1
- package/dist/cjs/v2/Codeblock.js +1 -0
- package/dist/cjs/v2/Codeblock.js.map +1 -1
- package/dist/cjs/v2/CopyToClipboardButton.js +3 -16
- package/dist/cjs/v2/CopyToClipboardButton.js.map +1 -1
- package/dist/cjs/v2/FinderModal.js +48 -14
- package/dist/cjs/v2/FinderModal.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +1 -0
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/Insights.js +344 -0
- package/dist/cjs/v2/Insights.js.map +1 -0
- package/dist/cjs/v2/IntegrationCard.js +222 -0
- package/dist/cjs/v2/IntegrationCard.js.map +1 -0
- package/dist/cjs/v2/IpRestriction.js +525 -0
- package/dist/cjs/v2/IpRestriction.js.map +1 -0
- package/dist/cjs/v2/MadeWith.js +73 -0
- package/dist/cjs/v2/MadeWith.js.map +1 -0
- package/dist/cjs/v2/Metadata.js +215 -0
- package/dist/cjs/v2/Metadata.js.map +1 -0
- package/dist/cjs/v2/NavigationHeader.js +1 -0
- package/dist/cjs/v2/NavigationHeader.js.map +1 -1
- package/dist/cjs/v2/NeetoWidget.js +855 -0
- package/dist/cjs/v2/NeetoWidget.js.map +1 -0
- package/dist/cjs/v2/Onboarding.js +323 -0
- package/dist/cjs/v2/Onboarding.js.map +1 -0
- package/dist/cjs/v2/OptionFields.js +1291 -0
- package/dist/cjs/v2/OptionFields.js.map +1 -0
- package/dist/cjs/v2/PhoneNumber.js +20 -307
- package/dist/cjs/v2/PhoneNumber.js.map +1 -1
- package/dist/cjs/v2/ProductEmbed.js +1870 -0
- package/dist/cjs/v2/ProductEmbed.js.map +1 -0
- package/dist/cjs/v2/PublishBlock.js +6 -22
- package/dist/cjs/v2/PublishBlock.js.map +1 -1
- package/dist/cjs/v2/PublishYourItem.js +60 -0
- package/dist/cjs/v2/PublishYourItem.js.map +1 -0
- package/dist/cjs/v2/ResponsiveDevicePicker.js +88 -0
- package/dist/cjs/v2/ResponsiveDevicePicker.js.map +1 -0
- package/dist/cjs/v2/SessionEnvironment.js +479 -0
- package/dist/cjs/v2/SessionEnvironment.js.map +1 -0
- package/dist/copy-DhbOoOav.js +18 -0
- package/dist/copy-DhbOoOav.js.map +1 -0
- package/dist/globe-rBiI1CjO.js +19 -0
- package/dist/globe-rBiI1CjO.js.map +1 -0
- package/dist/index-0jnA7dx6.js +3178 -0
- package/dist/index-0jnA7dx6.js.map +1 -0
- package/dist/index-DF5MKxql.js +76 -0
- package/dist/index-DF5MKxql.js.map +1 -0
- package/dist/panel-left-close-37jik3GB.js +19 -0
- package/dist/panel-left-close-37jik3GB.js.map +1 -0
- package/dist/phone-number-CGZtDB_n.js +291 -0
- package/dist/phone-number-CGZtDB_n.js.map +1 -0
- package/dist/prism-tomorrow-ZUb2Ikm9.js +1961 -0
- package/dist/prism-tomorrow-ZUb2Ikm9.js.map +1 -0
- package/dist/react-confetti-BnGq_LBE.js +403 -0
- package/dist/react-confetti-BnGq_LBE.js.map +1 -0
- package/dist/smartphone-B-jv1y8j.js +33 -0
- package/dist/smartphone-B-jv1y8j.js.map +1 -0
- package/dist/trash-2-N0F6K63L.js +21 -0
- package/dist/trash-2-N0F6K63L.js.map +1 -0
- package/dist/triangle-alert-Pkh6pc42.js +25 -0
- package/dist/triangle-alert-Pkh6pc42.js.map +1 -0
- package/dist/v2/AuditLogs.js +3 -17
- package/dist/v2/AuditLogs.js.map +1 -1
- package/dist/v2/Builder.js +3 -17
- package/dist/v2/Builder.js.map +1 -1
- package/dist/v2/Codeblock.js +1 -0
- package/dist/v2/Codeblock.js.map +1 -1
- package/dist/v2/CopyToClipboardButton.js +2 -15
- package/dist/v2/CopyToClipboardButton.js.map +1 -1
- package/dist/v2/FinderModal.js +49 -15
- package/dist/v2/FinderModal.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +1 -0
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/Insights.js +342 -0
- package/dist/v2/Insights.js.map +1 -0
- package/dist/v2/IntegrationCard.js +220 -0
- package/dist/v2/IntegrationCard.js.map +1 -0
- package/dist/v2/IpRestriction.js +504 -0
- package/dist/v2/IpRestriction.js.map +1 -0
- package/dist/v2/MadeWith.js +52 -0
- package/dist/v2/MadeWith.js.map +1 -0
- package/dist/v2/Metadata.js +213 -0
- package/dist/v2/Metadata.js.map +1 -0
- package/dist/v2/NavigationHeader.js +1 -0
- package/dist/v2/NavigationHeader.js.map +1 -1
- package/dist/v2/NeetoWidget.js +834 -0
- package/dist/v2/NeetoWidget.js.map +1 -0
- package/dist/v2/Onboarding.js +321 -0
- package/dist/v2/Onboarding.js.map +1 -0
- package/dist/v2/OptionFields.js +1289 -0
- package/dist/v2/OptionFields.js.map +1 -0
- package/dist/v2/PhoneNumber.js +20 -287
- package/dist/v2/PhoneNumber.js.map +1 -1
- package/dist/v2/ProductEmbed.js +1868 -0
- package/dist/v2/ProductEmbed.js.map +1 -0
- package/dist/v2/PublishBlock.js +5 -21
- package/dist/v2/PublishBlock.js.map +1 -1
- package/dist/v2/PublishYourItem.js +58 -0
- package/dist/v2/PublishYourItem.js.map +1 -0
- package/dist/v2/ResponsiveDevicePicker.js +86 -0
- package/dist/v2/ResponsiveDevicePicker.js.map +1 -0
- package/dist/v2/SessionEnvironment.js +477 -0
- package/dist/v2/SessionEnvironment.js.map +1 -0
- package/package.json +3 -3
- package/types/v2/Insights.d.ts +69 -0
- package/types/v2/IntegrationCard.d.ts +30 -0
- package/types/v2/IpRestriction.d.ts +5 -0
- package/types/v2/MadeWith.d.ts +8 -0
- package/types/v2/Metadata.d.ts +26 -0
- package/types/v2/MobilePreviewHeader.d.ts +8 -0
- package/types/v2/NeetoWidget.d.ts +19 -0
- package/types/v2/Onboarding.d.ts +22 -0
- package/types/v2/OptionFields.d.ts +55 -0
- package/types/v2/ProductEmbed.d.ts +90 -0
- package/types/v2/PublishYourItem.d.ts +8 -0
- package/types/v2/ResponsiveDevicePicker.d.ts +11 -0
- package/types/v2/SessionEnvironment.d.ts +34 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NeetoWidget.js","sources":["../../src/v2/components/NeetoWidget/constants.js","../../src/v2/components/NeetoWidget/ChatWidgetBody.jsx","../../src/v2/components/NeetoWidget/SyntaxHighlighter.jsx","../../src/v2/components/NeetoWidget/CodeBlock.jsx","../../src/v2/components/NeetoWidget/utils.js","../../src/v2/components/NeetoWidget/api.js","../../src/v2/components/NeetoWidget/mutations.js","../../src/v2/components/NeetoWidget/CodeSnippet.jsx","../../src/v2/components/NeetoWidget/hooks/useForceUpdate.js","../../src/v2/components/NeetoWidget/queries.js","../../src/v2/components/NeetoWidget/SelectionSwitches/TooltipSwitch.jsx","../../src/v2/components/NeetoWidget/EmbedCode.jsx","../../src/v2/components/NeetoWidget/Main.jsx","../../src/v2/components/NeetoWidget/index.js"],"sourcesContent":["// The `standardize-help-urls` rule expects a single-product `helpUrls.js` with a\n// `HELP_DOCS_BASE_URL` matching `help.neeto<product>.com` and `/p/<permalink>`\n// links. NeetoWidget links out to multiple products' (neetoChat / neetoEngage /\n// neetoReplay) `/articles/...` help pages, which has no single docs base to\n// satisfy the rule, so the URLs are kept inline (as in v1).\n/* eslint-disable @bigbinary/neeto/standardize-help-urls */\nimport { 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 engage: \"engage\",\n chat: \"chat\",\n replay: \"replay\",\n};\n\nexport const WIDGET_HELP_LINKS = {\n engage: \"https://help.neetoengage.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 engage: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.engage\"\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://d3nshle8hzelnq.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 ENGAGE_WIDGET_KB_BASE_URL = \"https://help.neetoengage.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 engage: `${ENGAGE_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n chat: `${CHAT_WIDGET_KB_BASE_URL}/folders/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 { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans } from \"react-i18next\";\n\nimport { WIDGET_HELP_LINKS, WIDGET_TYPES } from \"./constants\";\n\nconst ChatWidgetBody = ({ widgets }) => (\n <>\n {widgets.includes(WIDGET_TYPES.engage) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.engageHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.engage }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.engage}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\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\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.chat}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\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\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.replay}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n )}\n </>\n);\n\nexport default ChatWidgetBody;\n","import { memo, 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 }}>\n <code className={`language-${language}`}>{code}</code>\n </pre>\n );\n};\n\nexport default memo(SyntaxHighlighter);\n","import { Button, Select, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport { FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport SyntaxHighlighter from \"./SyntaxHighlighter\";\n\nimport CopyToClipboardButton from \"../CopyToClipboardButton\";\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=\"border-border bg-muted flex w-full flex-wrap items-center justify-between gap-2 rounded-lg rounded-b-none border p-3\">\n {title && (\n <Typography\n className=\"m-0 flex-shrink-0\"\n data-testid=\"code-block-title-text\"\n variant=\"h4\"\n >\n {title}\n </Typography>\n )}\n {selectedFramework && (\n <Select\n className=\"max-w-40\"\n data-testid=\"framework-select\"\n options={FRAMEWORK_SELECT_OPTIONS}\n value={selectedFramework}\n onChange={setSelectedFramework}\n />\n )}\n <div className=\"ms-auto flex flex-shrink-0 items-center justify-end gap-2\">\n {sendViaEmail ? (\n <Button\n variant=\"secondary\"\n label={t(\n \"neetoMolecules.widget.installation.snippet.sendViaEmail\"\n )}\n onClick={sendViaEmail}\n />\n ) : null}\n </div>\n </div>\n <div className=\"relative\">\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"absolute top-3 right-3\"\n value={codeString}\n variant=\"secondary\"\n tooltipContent={t(\n \"neetoMolecules.widget.installation.snippet.copy\"\n )}\n />\n )}\n <SyntaxHighlighter\n className=\"m-0 rounded-lg rounded-t-none pt-4\"\n code={codeString}\n language=\"javascript\"\n />\n </div>\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 addEngageOptions = () => `neetoEngageOptions: {\n elementId: \"neetoengage-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(addEngageOptions(), cmd =>\n getCommentedCommand(cmd, enabledWidgets.engage)\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 = () => false;\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 { useState } from \"react\";\n\nimport { Typography, Button, Sheet, Toastr } from \"@bigbinary/neeto-atoms\";\nimport { Input, MultiEmailInput } from \"@bigbinary/neeto-atoms/formik\";\nimport { Formik, Form } from \"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 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].value\n );\n const emailMutation = useEmailEmbedCode(onClose);\n\n const codeToDisplay =\n emailType === EMAIL_TYPES.userIdentity\n ? getSampleUserIdentity(enabledWidgets, selectedFramework)\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: \"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 <Sheet {...{ onClose }} aria-describedby={undefined} isOpen={isPaneOpen}>\n <Formik\n initialValues={getEmailWidgetSnippetFormInitialValues(subject)}\n validationSchema={getEmailWidgetSnippetValidationSchema()}\n onSubmit={handleSubmit}\n >\n <Form>\n <Sheet.Header>\n <Sheet.Title>{t(\"neetoMolecules.widget.email.title\")}</Sheet.Title>\n </Sheet.Header>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-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 variant=\"body2\">{body}</Typography>\n <CodeBlock {...renderCodeBlockProps()} />\n </div>\n </Sheet.Body>\n <Sheet.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 variant=\"ghost\"\n onClick={onClose}\n />\n </Sheet.Footer>\n </Form>\n </Formik>\n </Sheet>\n );\n};\n\nCodeSnippet.propTypes = {\n isPaneOpen: PropTypes.bool,\n onClose: 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/v2/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 { Switch, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { capitalize } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst TooltipSwitch = withT(\n ({\n t,\n enabledClientApps,\n widget,\n selectedWidgets,\n updateSelectedWidgets,\n }) => (\n <Tooltip\n disabled={enabledClientApps.includes(widget)}\n position=\"right\"\n content={t(\"neetoMolecules.widget.tooltips.productIsDisabled\", {\n productName: `Neeto${capitalize(widget)}`,\n })}\n >\n <span>\n <Switch\n checked={selectedWidgets.includes(widget)}\n disabled={!enabledClientApps.includes(widget)}\n onCheckedChange={() => updateSelectedWidgets(widget)}\n />\n </span>\n </Tooltip>\n )\n);\n\nexport default TooltipSwitch;\n","import { memo, useState, useRef, useEffect } from \"react\";\n\nimport { Button, Toastr, Typography, Spinner } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { capitalize, isNotEmpty } from \"neetocist\";\nimport usePrevious from \"neetocommons/v2/react-utils/usePrevious\";\nimport PropTypes from \"prop-types\";\nimport { fromPairs, isEmpty, prop } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\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].value\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 = [primaryApp];\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\" variant=\"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\" variant=\"body2\" />,\n mail: (\n <Button\n href={`mailto:${INSTALLATION_HELP_EMAIL}`}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\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\" variant=\"body2\" />,\n configureLink: (\n <Button\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\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\" variant=\"body2\" />,\n configureLink: (\n <Button\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\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 as=\"span\" variant=\"body2\" weight=\"semibold\" />,\n widgetNpmLink: (\n <Button\n href={USE_NEETO_WIDGET_NPM_PAGE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n Link: (\n <Button\n href={WIDGET_KB_HELP_URL[primaryApp]}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n };\n\n if (isLoadingApiKey || isLoadingConfigurations) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\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=\"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=\"rounded-lg\"\n frameworkProps={{ selectedFramework, setSelectedFramework }}\n title={t(\"neetoMolecules.widget.title.userIdentity\")}\n codeString={getSampleUserIdentity(\n enabledWidgets,\n selectedFramework\n )}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.userIdentity)\n }\n />\n </div>\n <Trans\n components={{\n p: <Typography variant=\"body2\" />,\n Link: (\n <Button\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n i18nKey={\n enabledWidgets.chat\n ? \"neetoMolecules.widget.installation.instructions.userIdentity.chat\"\n : \"neetoMolecules.widget.installation.instructions.userIdentity.replay\"\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=\"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 variant=\"body2\" />,\n Link: (\n <Button\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\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 memo(EmbedCode);\n","import { Callout } from \"@bigbinary/neeto-atoms\";\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\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 variant=\"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","engage","chat","replay","WIDGET_HELP_LINKS","WIDGET_DESCRIPTIONS","t","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","ENGAGE_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","_jsxs","_Fragment","children","includes","_jsx","Trans","i18nKey","helpLink","components","p","Typography","className","variant","a","Button","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","onClick","CopyToClipboardButton","tooltipContent","buildEmbedWidgetScript","widgetScriptUrl","window","globalProps","railsEnv","indentAndFormat","str","formatter","arguments","length","identity","split","map","join","getCommentedCommand","command","isEnabled","embedWidgetEnvironment","embedWidgetApiKey","addEngageOptions","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","queryWidgetApiKey","axios","get","showToastr","emailWidgetSnippet","data","post","fetchWidgetConfiguration","updateWidgetConfiguration","id","payload","put","useEmailEmbedCode","onSuccess","useMutation","mutationFn","emailData","CodeSnippet","isPaneOpen","onClose","_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","Sheet","isOpen","Formik","initialValues","validationSchema","onSubmit","Form","Header","Title","Body","MultiEmailInput","name","placeholder","Input","type","_objectSpread","Footer","disabled","isPending","loading","useForceUpdate","setValue","useFetchApiKey","useQuery","queryKey","queryFn","ssoEnabled","Promise","resolve","widgetApiKey","staleTime","useFetchConfigurations","useUpdateConfigurations","useMutationWithInvalidation","keysToInvalidate","withT","enabledClientApps","selectedWidgets","updateSelectedWidgets","Tooltip","position","content","productName","Switch","checked","onCheckedChange","EmbedCode","showSessionContext","showUserIdentity","_ref$primaryApp","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","isOnlyChatWidgetSelected","prop","item","clientApplicationName","toLowerCase","fromPairs","shouldShowUserIdentity","shouldShowSessionContext","getEmbedCodeString","isNotEmpty","getSnippetProps","selectedEmailType","widgetList","val","helpEmail","mail","configureLink","userIdentityKbUrl","sessionContextKbUrl","Error","handleSendViaEmail","selectedEmail","isEmpty","getSelectedWidgetsInstructionsKey","embedHelpTextTranslationComponents","fontBold","as","weight","widgetNpmLink","Link","Spinner","queryClient","QueryClient","Main","shouldRenderEmbedCode","QueryClientProvider","client","Callout","NeetoWidget"],"mappings":"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"}
|
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
2
|
+
import { useState, useLayoutEffect, useEffect, useMemo, useRef } from 'react';
|
|
3
|
+
import { Typography, Button, Stepper } from '@bigbinary/neeto-atoms';
|
|
4
|
+
import classnames from 'classnames';
|
|
5
|
+
import { isPresent, capitalize, noop, findIndexBy } from '@bigbinary/neeto-cist';
|
|
6
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
7
|
+
import { globalProps } from '@bigbinary/neeto-commons-frontend/v2/initializers';
|
|
8
|
+
import { R as ReactConfetti } from '../react-confetti-BnGq_LBE.js';
|
|
9
|
+
import { useTranslation, Trans } from 'react-i18next';
|
|
10
|
+
import { t } from 'i18next';
|
|
11
|
+
import useBreakpoints from '@bigbinary/neeto-commons-frontend/v2/react-utils/useBreakpoints';
|
|
12
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
13
|
+
import { c as createLucideIcon } from '../createLucideIcon-mNMhCCpf.js';
|
|
14
|
+
import { n } from '../inject-css-C2dztUxs.js';
|
|
15
|
+
import { withT } from '@bigbinary/neeto-commons-frontend/v2/react-utils';
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @license lucide-react v1.7.0 - ISC
|
|
19
|
+
*
|
|
20
|
+
* This source code is licensed under the ISC license.
|
|
21
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
const __iconNode = [
|
|
26
|
+
["path", { d: "M5 12h14", key: "1ays0h" }],
|
|
27
|
+
["path", { d: "m12 5 7 7-7 7", key: "xquz4c" }]
|
|
28
|
+
];
|
|
29
|
+
const ArrowRight = createLucideIcon("arrow-right", __iconNode);
|
|
30
|
+
|
|
31
|
+
var GENERAL_ONBOARDING_STEPS = {
|
|
32
|
+
WELCOME: "welcome",
|
|
33
|
+
HELP: "help",
|
|
34
|
+
FINISH: "finish"
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
var HelpScreen = function HelpScreen(_ref) {
|
|
38
|
+
var setCurrentStep = _ref.setCurrentStep,
|
|
39
|
+
helpScreenClassName = _ref.helpScreenClassName;
|
|
40
|
+
var _useTranslation = useTranslation(),
|
|
41
|
+
t = _useTranslation.t;
|
|
42
|
+
var _useBreakpoints = useBreakpoints(),
|
|
43
|
+
isSize = _useBreakpoints.isSize;
|
|
44
|
+
return /*#__PURE__*/jsxs("div", {
|
|
45
|
+
className: classnames("mx-auto flex w-full max-w-3xl flex-col items-start gap-y-6 px-6 pt-16 pb-6", helpScreenClassName),
|
|
46
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
47
|
+
className: "flex flex-col gap-y-3",
|
|
48
|
+
children: [/*#__PURE__*/jsx(Typography, {
|
|
49
|
+
as: "h1",
|
|
50
|
+
"data-testid": "onboarding-help-title",
|
|
51
|
+
variant: "h1",
|
|
52
|
+
children: t("neetoMolecules.onboarding.helpScreen.title")
|
|
53
|
+
}), /*#__PURE__*/jsx(Typography, {
|
|
54
|
+
className: "leading-normal",
|
|
55
|
+
"data-testid": "onboarding-help-description",
|
|
56
|
+
variant: "body1",
|
|
57
|
+
children: /*#__PURE__*/jsx(Trans, {
|
|
58
|
+
i18nKey: "neetoMolecules.onboarding.helpScreen.description"
|
|
59
|
+
})
|
|
60
|
+
}), /*#__PURE__*/jsx("div", {
|
|
61
|
+
className: "w-full pt-3",
|
|
62
|
+
children: isSize("mobile") ? /*#__PURE__*/jsx("img", {
|
|
63
|
+
alt: "",
|
|
64
|
+
src: "https://ik.imagekit.io/d9mvewbju/Commons/NeetoMolecules/help-support-mobile_fgsI9Cx-IC.svg"
|
|
65
|
+
}) : /*#__PURE__*/jsx("img", {
|
|
66
|
+
alt: "",
|
|
67
|
+
src: "https://ik.imagekit.io/d9mvewbju/Commons/NeetoMolecules/help-support-desktop_CSOh3DrKTR.svg"
|
|
68
|
+
})
|
|
69
|
+
})]
|
|
70
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
71
|
+
"data-testid": "onboarding-help-button",
|
|
72
|
+
icon: function icon() {
|
|
73
|
+
return /*#__PURE__*/jsx(ArrowRight, {
|
|
74
|
+
className: "rtl:scale-x-[-1]",
|
|
75
|
+
size: 16
|
|
76
|
+
});
|
|
77
|
+
},
|
|
78
|
+
iconPosition: "right",
|
|
79
|
+
label: t("neetoMolecules.onboarding.helpScreen.continueButton"),
|
|
80
|
+
onClick: function onClick() {
|
|
81
|
+
return setCurrentStep(GENERAL_ONBOARDING_STEPS.FINISH);
|
|
82
|
+
}
|
|
83
|
+
})]
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
function ownKeys$1(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; }
|
|
88
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
89
|
+
var createSteps = function createSteps(onboardingSteps, setCurrentStep, currentStep, helpScreenClassName) {
|
|
90
|
+
var helpStep = {
|
|
91
|
+
key: GENERAL_ONBOARDING_STEPS.HELP,
|
|
92
|
+
label: t("neetoMolecules.onboarding.helpLabel"),
|
|
93
|
+
element: /*#__PURE__*/jsx(HelpScreen, {
|
|
94
|
+
currentStep: currentStep,
|
|
95
|
+
helpScreenClassName: helpScreenClassName,
|
|
96
|
+
setCurrentStep: setCurrentStep
|
|
97
|
+
})
|
|
98
|
+
};
|
|
99
|
+
return onboardingSteps.concat(helpStep).map(function (step, idx) {
|
|
100
|
+
return _objectSpread$1(_objectSpread$1({}, step), {}, {
|
|
101
|
+
id: idx + 1
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
};
|
|
105
|
+
var getWindowDimensions = function getWindowDimensions() {
|
|
106
|
+
return typeof window !== "undefined" ? {
|
|
107
|
+
width: window.innerWidth,
|
|
108
|
+
height: window.innerHeight
|
|
109
|
+
} : {
|
|
110
|
+
width: 100,
|
|
111
|
+
height: 100
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
var useWindowDimensions = function useWindowDimensions() {
|
|
116
|
+
var _useState = useState({
|
|
117
|
+
width: 100,
|
|
118
|
+
height: 100
|
|
119
|
+
}),
|
|
120
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
121
|
+
windowDimensions = _useState2[0],
|
|
122
|
+
setWindowDimensions = _useState2[1];
|
|
123
|
+
useLayoutEffect(function () {
|
|
124
|
+
setWindowDimensions(getWindowDimensions());
|
|
125
|
+
function handleResize() {
|
|
126
|
+
setWindowDimensions(getWindowDimensions());
|
|
127
|
+
}
|
|
128
|
+
window.addEventListener("resize", handleResize);
|
|
129
|
+
return function () {
|
|
130
|
+
return window.removeEventListener("resize", handleResize);
|
|
131
|
+
};
|
|
132
|
+
}, []);
|
|
133
|
+
return windowDimensions;
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
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; }
|
|
137
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _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; }
|
|
138
|
+
var CompletedScreen = function CompletedScreen(_ref) {
|
|
139
|
+
var completeButtonProps = _ref.completeButtonProps,
|
|
140
|
+
completedScreenSuccessMessage = _ref.completedScreenSuccessMessage,
|
|
141
|
+
className = _ref.className;
|
|
142
|
+
var _useTranslation = useTranslation(),
|
|
143
|
+
t = _useTranslation.t;
|
|
144
|
+
var _useState = useState(true),
|
|
145
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
146
|
+
dropConfetti = _useState2[0],
|
|
147
|
+
setDropConfetti = _useState2[1];
|
|
148
|
+
var _useWindowDimensions = useWindowDimensions(),
|
|
149
|
+
height = _useWindowDimensions.height,
|
|
150
|
+
width = _useWindowDimensions.width;
|
|
151
|
+
useEffect(function () {
|
|
152
|
+
var timer = setTimeout(function () {
|
|
153
|
+
return setDropConfetti(false);
|
|
154
|
+
}, 10000);
|
|
155
|
+
return function () {
|
|
156
|
+
return clearTimeout(timer);
|
|
157
|
+
};
|
|
158
|
+
}, []);
|
|
159
|
+
return /*#__PURE__*/jsxs("div", {
|
|
160
|
+
"data-testid": "onboarding-congratulations-wrapper",
|
|
161
|
+
className: classnames("flex h-dvh w-full grow flex-col items-center overflow-y-auto", className),
|
|
162
|
+
children: [/*#__PURE__*/jsx(ReactConfetti, {
|
|
163
|
+
height: height,
|
|
164
|
+
width: width,
|
|
165
|
+
recycle: dropConfetti
|
|
166
|
+
}), isPresent(completedScreenSuccessMessage) ? completedScreenSuccessMessage : /*#__PURE__*/jsxs("div", {
|
|
167
|
+
className: "mx-auto mb-6 flex w-full max-w-2xl flex-col gap-y-2 px-6 pt-16",
|
|
168
|
+
children: [/*#__PURE__*/jsx(Typography, {
|
|
169
|
+
className: "text-center",
|
|
170
|
+
"data-testid": "onboarding-congratulations-emoji",
|
|
171
|
+
variant: "h1",
|
|
172
|
+
children: "\uD83C\uDF89"
|
|
173
|
+
}), /*#__PURE__*/jsxs(Typography, {
|
|
174
|
+
className: "text-center",
|
|
175
|
+
"data-testid": "onboarding-congratulations-title",
|
|
176
|
+
variant: "h1",
|
|
177
|
+
children: [/*#__PURE__*/jsx("span", {
|
|
178
|
+
className: "text-success",
|
|
179
|
+
children: t("neetoMolecules.onboarding.congratulations")
|
|
180
|
+
}), /*#__PURE__*/jsx("br", {}), t("neetoMolecules.onboarding.readyToUse", {
|
|
181
|
+
appName: capitalize(globalProps.appName)
|
|
182
|
+
})]
|
|
183
|
+
})]
|
|
184
|
+
}), /*#__PURE__*/jsx(Button, _objectSpread({
|
|
185
|
+
"data-testid": "onboarding-congratulations-button",
|
|
186
|
+
label: t("neetoMolecules.onboarding.helpScreen.startUsingButton", {
|
|
187
|
+
appName: globalProps.appName
|
|
188
|
+
})
|
|
189
|
+
}, completeButtonProps))]
|
|
190
|
+
});
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
var css = ".neeto-molecules-onboarding-content--forward{animation:nm-onboarding-slide-in-right .4s ease backwards}.neeto-molecules-onboarding-content--backward{animation:nm-onboarding-slide-in-left .4s ease backwards}@media (prefers-reduced-motion:reduce){.neeto-molecules-onboarding-content--backward,.neeto-molecules-onboarding-content--forward{animation:nm-onboarding-fade-in .2s ease backwards}}@keyframes nm-onboarding-slide-in-right{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes nm-onboarding-slide-in-left{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}@keyframes nm-onboarding-fade-in{0%{opacity:0}to{opacity:1}}";
|
|
194
|
+
n(css,{});
|
|
195
|
+
|
|
196
|
+
var WelcomeScreen = withT(function (_ref) {
|
|
197
|
+
var t = _ref.t,
|
|
198
|
+
setCurrentStep = _ref.setCurrentStep,
|
|
199
|
+
nextStep = _ref.nextStep,
|
|
200
|
+
className = _ref.className;
|
|
201
|
+
return /*#__PURE__*/jsxs("div", {
|
|
202
|
+
"data-testid": "onboarding-welcome-wrapper",
|
|
203
|
+
className: classnames("flex h-dvh w-full grow flex-col items-center overflow-y-auto", className),
|
|
204
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
205
|
+
className: "mx-auto mb-6 flex w-full max-w-2xl flex-col gap-y-2 px-6 pt-16",
|
|
206
|
+
children: [/*#__PURE__*/jsx(Typography, {
|
|
207
|
+
className: "text-center",
|
|
208
|
+
"data-testid": "onboarding-welcome-title",
|
|
209
|
+
variant: "h1",
|
|
210
|
+
children: t("neetoMolecules.onboarding.helpScreen.welcomeToTitle", {
|
|
211
|
+
appName: capitalize(globalProps.appName)
|
|
212
|
+
})
|
|
213
|
+
}), /*#__PURE__*/jsx(Typography, {
|
|
214
|
+
className: "text-center leading-normal",
|
|
215
|
+
"data-testid": "onboarding-welcome-description",
|
|
216
|
+
variant: "body1",
|
|
217
|
+
children: t("neetoMolecules.onboarding.letUsCustomize", {
|
|
218
|
+
appName: capitalize(globalProps.appName)
|
|
219
|
+
})
|
|
220
|
+
})]
|
|
221
|
+
}), /*#__PURE__*/jsx(Button, {
|
|
222
|
+
"data-testid": "onboarding-welcome-button",
|
|
223
|
+
icon: function icon() {
|
|
224
|
+
return /*#__PURE__*/jsx(ArrowRight, {
|
|
225
|
+
className: "rtl:scale-x-[-1]",
|
|
226
|
+
size: 16
|
|
227
|
+
});
|
|
228
|
+
},
|
|
229
|
+
label: t("neetoMolecules.onboarding.getStarted"),
|
|
230
|
+
onClick: function onClick() {
|
|
231
|
+
return setCurrentStep(nextStep);
|
|
232
|
+
}
|
|
233
|
+
})]
|
|
234
|
+
});
|
|
235
|
+
});
|
|
236
|
+
|
|
237
|
+
var Onboarding = function Onboarding(_ref) {
|
|
238
|
+
var _ref$currentStep = _ref.currentStep,
|
|
239
|
+
currentStep = _ref$currentStep === void 0 ? GENERAL_ONBOARDING_STEPS.WELCOME : _ref$currentStep,
|
|
240
|
+
_ref$setCurrentStep = _ref.setCurrentStep,
|
|
241
|
+
setCurrentStep = _ref$setCurrentStep === void 0 ? noop : _ref$setCurrentStep,
|
|
242
|
+
_ref$onboardingSteps = _ref.onboardingSteps,
|
|
243
|
+
onboardingSteps = _ref$onboardingSteps === void 0 ? [] : _ref$onboardingSteps,
|
|
244
|
+
_ref$completeButtonPr = _ref.completeButtonProps,
|
|
245
|
+
completeButtonProps = _ref$completeButtonPr === void 0 ? {} : _ref$completeButtonPr,
|
|
246
|
+
_ref$helpScreenClassN = _ref.helpScreenClassName,
|
|
247
|
+
helpScreenClassName = _ref$helpScreenClassN === void 0 ? "" : _ref$helpScreenClassN,
|
|
248
|
+
_ref$isAnimated = _ref.isAnimated,
|
|
249
|
+
isAnimated = _ref$isAnimated === void 0 ? true : _ref$isAnimated,
|
|
250
|
+
_ref$disableStepClick = _ref.disableStepClick,
|
|
251
|
+
disableStepClick = _ref$disableStepClick === void 0 ? false : _ref$disableStepClick,
|
|
252
|
+
_ref$welcomeScreenCla = _ref.welcomeScreenClassName,
|
|
253
|
+
welcomeScreenClassName = _ref$welcomeScreenCla === void 0 ? "" : _ref$welcomeScreenCla,
|
|
254
|
+
_ref$completedScreenC = _ref.completedScreenClassName,
|
|
255
|
+
completedScreenClassName = _ref$completedScreenC === void 0 ? "" : _ref$completedScreenC,
|
|
256
|
+
completedScreenSuccessMessage = _ref.completedScreenSuccessMessage;
|
|
257
|
+
var steps = useMemo(function () {
|
|
258
|
+
return createSteps(onboardingSteps, setCurrentStep, currentStep, helpScreenClassName);
|
|
259
|
+
}, [onboardingSteps]);
|
|
260
|
+
var prevStep = useRef(currentStep);
|
|
261
|
+
var _useState = useState(""),
|
|
262
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
263
|
+
direction = _useState2[0],
|
|
264
|
+
setDirection = _useState2[1];
|
|
265
|
+
var getOnboardingStepIndex = function getOnboardingStepIndex(stepKey) {
|
|
266
|
+
return steps.findIndex(function (step) {
|
|
267
|
+
return step.key === stepKey;
|
|
268
|
+
});
|
|
269
|
+
};
|
|
270
|
+
useEffect(function () {
|
|
271
|
+
if (currentStep === prevStep.current) return;
|
|
272
|
+
setDirection(getOnboardingStepIndex(currentStep) > getOnboardingStepIndex(prevStep.current) ? "forward" : "backward");
|
|
273
|
+
prevStep.current = currentStep;
|
|
274
|
+
}, [currentStep]);
|
|
275
|
+
if (currentStep === GENERAL_ONBOARDING_STEPS.WELCOME) {
|
|
276
|
+
return /*#__PURE__*/jsx(WelcomeScreen, {
|
|
277
|
+
currentStep: currentStep,
|
|
278
|
+
setCurrentStep: setCurrentStep,
|
|
279
|
+
className: welcomeScreenClassName,
|
|
280
|
+
nextStep: steps[0].key
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
if (currentStep === GENERAL_ONBOARDING_STEPS.FINISH) {
|
|
284
|
+
return /*#__PURE__*/jsx(CompletedScreen, {
|
|
285
|
+
completeButtonProps: completeButtonProps,
|
|
286
|
+
completedScreenSuccessMessage: completedScreenSuccessMessage,
|
|
287
|
+
className: completedScreenClassName
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
var handleStepChange = function handleStepChange(index) {
|
|
291
|
+
return setCurrentStep(steps[index].key);
|
|
292
|
+
};
|
|
293
|
+
var isStepperVisible = steps.length > 1;
|
|
294
|
+
return /*#__PURE__*/jsxs("div", {
|
|
295
|
+
className: classnames("relative flex h-dvh w-full flex-col overflow-y-auto", {
|
|
296
|
+
"grow items-center": !isStepperVisible
|
|
297
|
+
}),
|
|
298
|
+
children: [isStepperVisible && /*#__PURE__*/jsx("div", {
|
|
299
|
+
className: "border-border bg-background flex w-full shrink-0 border-b px-4 py-2 lg:justify-center",
|
|
300
|
+
children: /*#__PURE__*/jsx(Stepper, {
|
|
301
|
+
steps: steps,
|
|
302
|
+
activeIndex: findIndexBy({
|
|
303
|
+
key: currentStep
|
|
304
|
+
}, steps),
|
|
305
|
+
onStepClick: disableStepClick ? undefined : handleStepChange
|
|
306
|
+
})
|
|
307
|
+
}), steps.map(function (step, index) {
|
|
308
|
+
return /*#__PURE__*/jsx("div", {
|
|
309
|
+
className: classnames("min-h-0 w-full grow overflow-y-auto", {
|
|
310
|
+
"neeto-molecules-onboarding-content--forward overflow-x-hidden": isAnimated && direction === "forward",
|
|
311
|
+
"neeto-molecules-onboarding-content--backward overflow-x-hidden": isAnimated && direction === "backward",
|
|
312
|
+
hidden: currentStep !== step.key
|
|
313
|
+
}),
|
|
314
|
+
children: step === null || step === void 0 ? void 0 : step.element
|
|
315
|
+
}, index);
|
|
316
|
+
})]
|
|
317
|
+
});
|
|
318
|
+
};
|
|
319
|
+
|
|
320
|
+
export { Onboarding as default };
|
|
321
|
+
//# sourceMappingURL=Onboarding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Onboarding.js","sources":["../../node_modules/lucide-react/dist/esm/icons/arrow-right.js","../../src/v2/components/Onboarding/constants.js","../../src/v2/components/Onboarding/HelpScreen.jsx","../../src/v2/components/Onboarding/utils.jsx","../../src/v2/components/Onboarding/hooks/useWindowDimensions.js","../../src/v2/components/Onboarding/CompletedScreen.jsx","../../src/v2/components/Onboarding/WelcomeScreen.jsx","../../src/v2/components/Onboarding/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"m12 5 7 7-7 7\", key: \"xquz4c\" }]\n];\nconst ArrowRight = createLucideIcon(\"arrow-right\", __iconNode);\n\nexport { __iconNode, ArrowRight as default };\n//# sourceMappingURL=arrow-right.js.map\n","export const GENERAL_ONBOARDING_STEPS = {\n WELCOME: \"welcome\",\n HELP: \"help\",\n FINISH: \"finish\",\n};\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { ArrowRight } from \"lucide-react\";\nimport useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { GENERAL_ONBOARDING_STEPS } from \"./constants\";\n\nconst HelpScreen = ({ setCurrentStep, helpScreenClassName }) => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n return (\n <div\n className={classNames(\n \"mx-auto flex w-full max-w-3xl flex-col items-start gap-y-6 px-6 pt-16 pb-6\",\n helpScreenClassName\n )}\n >\n <div className=\"flex flex-col gap-y-3\">\n <Typography as=\"h1\" data-testid=\"onboarding-help-title\" variant=\"h1\">\n {t(\"neetoMolecules.onboarding.helpScreen.title\")}\n </Typography>\n <Typography\n className=\"leading-normal\"\n data-testid=\"onboarding-help-description\"\n variant=\"body1\"\n >\n <Trans i18nKey=\"neetoMolecules.onboarding.helpScreen.description\" />\n </Typography>\n <div className=\"w-full pt-3\">\n {isSize(\"mobile\") ? (\n <img\n alt=\"\"\n src=\"https://ik.imagekit.io/d9mvewbju/Commons/NeetoMolecules/help-support-mobile_fgsI9Cx-IC.svg\"\n />\n ) : (\n <img\n alt=\"\"\n src=\"https://ik.imagekit.io/d9mvewbju/Commons/NeetoMolecules/help-support-desktop_CSOh3DrKTR.svg\"\n />\n )}\n </div>\n </div>\n <Button\n data-testid=\"onboarding-help-button\"\n icon={() => <ArrowRight className=\"rtl:scale-x-[-1]\" size={16} />}\n iconPosition=\"right\"\n label={t(\"neetoMolecules.onboarding.helpScreen.continueButton\")}\n onClick={() => setCurrentStep(GENERAL_ONBOARDING_STEPS.FINISH)}\n />\n </div>\n );\n};\n\nexport default HelpScreen;\n","import { t } from \"i18next\";\n\nimport { GENERAL_ONBOARDING_STEPS } from \"./constants\";\nimport HelpScreen from \"./HelpScreen\";\n\nexport const createSteps = (\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName\n) => {\n const helpStep = {\n key: GENERAL_ONBOARDING_STEPS.HELP,\n label: t(\"neetoMolecules.onboarding.helpLabel\"),\n element: (\n <HelpScreen {...{ currentStep, helpScreenClassName, setCurrentStep }} />\n ),\n };\n\n return onboardingSteps\n .concat(helpStep)\n .map((step, idx) => ({ ...step, id: idx + 1 }));\n};\n\nexport const getWindowDimensions = () =>\n typeof window !== \"undefined\"\n ? { width: window.innerWidth, height: window.innerHeight }\n : { width: 100, height: 100 };\n","import { useState, useLayoutEffect } from \"react\";\n\nimport { getWindowDimensions } from \"../utils\";\n\nconst useWindowDimensions = () => {\n const [windowDimensions, setWindowDimensions] = useState({\n width: 100,\n height: 100,\n });\n\n useLayoutEffect(() => {\n setWindowDimensions(getWindowDimensions());\n\n function handleResize() {\n setWindowDimensions(getWindowDimensions());\n }\n\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n return windowDimensions;\n};\n\nexport default useWindowDimensions;\n","import { useState, useEffect } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { isPresent, capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport Confetti from \"react-confetti\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useWindowDimensions from \"./hooks/useWindowDimensions.js\";\n\nconst CompletedScreen = ({\n completeButtonProps,\n completedScreenSuccessMessage,\n className,\n}) => {\n const { t } = useTranslation();\n\n const [dropConfetti, setDropConfetti] = useState(true);\n const { height, width } = useWindowDimensions();\n\n useEffect(() => {\n const timer = setTimeout(() => setDropConfetti(false), 10000);\n\n return () => clearTimeout(timer);\n }, []);\n\n return (\n <div\n data-testid=\"onboarding-congratulations-wrapper\"\n className={classnames(\n \"flex h-dvh w-full grow flex-col items-center overflow-y-auto\",\n className\n )}\n >\n <Confetti {...{ height, width }} recycle={dropConfetti} />\n {isPresent(completedScreenSuccessMessage) ? (\n completedScreenSuccessMessage\n ) : (\n <div className=\"mx-auto mb-6 flex w-full max-w-2xl flex-col gap-y-2 px-6 pt-16\">\n <Typography\n className=\"text-center\"\n data-testid=\"onboarding-congratulations-emoji\"\n variant=\"h1\"\n >\n 🎉\n </Typography>\n <Typography\n className=\"text-center\"\n data-testid=\"onboarding-congratulations-title\"\n variant=\"h1\"\n >\n <span className=\"text-success\">\n {t(\"neetoMolecules.onboarding.congratulations\")}\n </span>\n <br />\n {t(\"neetoMolecules.onboarding.readyToUse\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n </div>\n )}\n <Button\n data-testid=\"onboarding-congratulations-button\"\n label={t(\"neetoMolecules.onboarding.helpScreen.startUsingButton\", {\n appName: globalProps.appName,\n })}\n {...completeButtonProps}\n />\n </div>\n );\n};\n\nexport default CompletedScreen;\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { ArrowRight } from \"lucide-react\";\nimport { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst WelcomeScreen = withT(({ t, setCurrentStep, nextStep, className }) => (\n <div\n data-testid=\"onboarding-welcome-wrapper\"\n className={classnames(\n \"flex h-dvh w-full grow flex-col items-center overflow-y-auto\",\n className\n )}\n >\n <div className=\"mx-auto mb-6 flex w-full max-w-2xl flex-col gap-y-2 px-6 pt-16\">\n <Typography\n className=\"text-center\"\n data-testid=\"onboarding-welcome-title\"\n variant=\"h1\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.welcomeToTitle\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n <Typography\n className=\"text-center leading-normal\"\n data-testid=\"onboarding-welcome-description\"\n variant=\"body1\"\n >\n {t(\"neetoMolecules.onboarding.letUsCustomize\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n </div>\n <Button\n data-testid=\"onboarding-welcome-button\"\n icon={() => <ArrowRight className=\"rtl:scale-x-[-1]\" size={16} />}\n label={t(\"neetoMolecules.onboarding.getStarted\")}\n onClick={() => setCurrentStep(nextStep)}\n />\n </div>\n));\n\nexport default WelcomeScreen;\n","import { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport { Stepper } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { findIndexBy, noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport CompletedScreen from \"./CompletedScreen\";\nimport { GENERAL_ONBOARDING_STEPS } from \"./constants\";\nimport \"./onboarding.css\";\nimport { createSteps } from \"./utils\";\nimport WelcomeScreen from \"./WelcomeScreen\";\n\nconst Onboarding = ({\n currentStep = GENERAL_ONBOARDING_STEPS.WELCOME,\n setCurrentStep = noop,\n onboardingSteps = [],\n completeButtonProps = {},\n helpScreenClassName = \"\",\n isAnimated = true,\n disableStepClick = false,\n welcomeScreenClassName = \"\",\n completedScreenClassName = \"\",\n completedScreenSuccessMessage,\n}) => {\n const steps = useMemo(\n () =>\n createSteps(\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName\n ),\n [onboardingSteps]\n );\n\n const prevStep = useRef(currentStep);\n\n const [direction, setDirection] = useState(\"\");\n\n const getOnboardingStepIndex = stepKey =>\n steps.findIndex(step => step.key === stepKey);\n\n useEffect(() => {\n if (currentStep === prevStep.current) return;\n\n setDirection(\n getOnboardingStepIndex(currentStep) >\n getOnboardingStepIndex(prevStep.current)\n ? \"forward\"\n : \"backward\"\n );\n prevStep.current = currentStep;\n }, [currentStep]);\n\n if (currentStep === GENERAL_ONBOARDING_STEPS.WELCOME) {\n return (\n <WelcomeScreen\n {...{ currentStep, setCurrentStep }}\n className={welcomeScreenClassName}\n nextStep={steps[0].key}\n />\n );\n }\n\n if (currentStep === GENERAL_ONBOARDING_STEPS.FINISH) {\n return (\n <CompletedScreen\n {...{ completeButtonProps, completedScreenSuccessMessage }}\n className={completedScreenClassName}\n />\n );\n }\n\n const handleStepChange = index => setCurrentStep(steps[index].key);\n\n const isStepperVisible = steps.length > 1;\n\n return (\n <div\n className={classNames(\n \"relative flex h-dvh w-full flex-col overflow-y-auto\",\n { \"grow items-center\": !isStepperVisible }\n )}\n >\n {isStepperVisible && (\n <div className=\"border-border bg-background flex w-full shrink-0 border-b px-4 py-2 lg:justify-center\">\n <Stepper\n {...{ steps }}\n activeIndex={findIndexBy({ key: currentStep }, steps)}\n onStepClick={disableStepClick ? undefined : handleStepChange}\n />\n </div>\n )}\n {steps.map((step, index) => (\n <div\n key={index}\n className={classNames(\"min-h-0 w-full grow overflow-y-auto\", {\n \"neeto-molecules-onboarding-content--forward overflow-x-hidden\":\n isAnimated && direction === \"forward\",\n \"neeto-molecules-onboarding-content--backward overflow-x-hidden\":\n isAnimated && direction === \"backward\",\n hidden: currentStep !== step.key,\n })}\n >\n {step?.element}\n </div>\n ))}\n </div>\n );\n};\n\nOnboarding.propTypes = {\n /**\n * To specify the current step of the onboarding\n */\n currentStep: PropTypes.string,\n /**\n * List of Custom components for the onboarding\n */\n onboardingSteps: PropTypes.array,\n /**\n * Props for the complete button\n */\n completeButtonProps: PropTypes.object,\n /**\n * To set the step of the onboarding\n */\n setCurrentStep: PropTypes.func,\n /**\n * To pass additional classes to the help screen\n */\n helpScreenClassName: PropTypes.string,\n /**\n * A boolean value to enable or disable the animation for the stepper.\n */\n isAnimated: PropTypes.bool,\n};\n\nexport default Onboarding;\n"],"names":["GENERAL_ONBOARDING_STEPS","WELCOME","HELP","FINISH","HelpScreen","_ref","setCurrentStep","helpScreenClassName","_useTranslation","useTranslation","t","_useBreakpoints","useBreakpoints","isSize","_jsxs","className","classNames","children","_jsx","Typography","as","variant","Trans","i18nKey","alt","src","Button","icon","ArrowRight","size","iconPosition","label","onClick","createSteps","onboardingSteps","currentStep","helpStep","key","element","concat","map","step","idx","_objectSpread","id","getWindowDimensions","window","width","innerWidth","height","innerHeight","useWindowDimensions","_useState","useState","_useState2","_slicedToArray","windowDimensions","setWindowDimensions","useLayoutEffect","handleResize","addEventListener","removeEventListener","CompletedScreen","completeButtonProps","completedScreenSuccessMessage","dropConfetti","setDropConfetti","_useWindowDimensions","useEffect","timer","setTimeout","clearTimeout","classnames","Confetti","recycle","isPresent","appName","capitalize","globalProps","WelcomeScreen","withT","nextStep","Onboarding","_ref$currentStep","_ref$setCurrentStep","noop","_ref$onboardingSteps","_ref$completeButtonPr","_ref$helpScreenClassN","_ref$isAnimated","isAnimated","_ref$disableStepClick","disableStepClick","_ref$welcomeScreenCla","welcomeScreenClassName","_ref$completedScreenC","completedScreenClassName","steps","useMemo","prevStep","useRef","direction","setDirection","getOnboardingStepIndex","stepKey","findIndex","current","handleStepChange","index","isStepperVisible","length","Stepper","activeIndex","findIndexBy","onStepClick","undefined","hidden"],"mappings":"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","x_google_ignoreList":[0]}
|