@bigbinary/neeto-molecules 5.5.3 → 5.5.5

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.
Files changed (46) hide show
  1. package/dist/Onboarding.js +31 -27
  2. package/dist/Onboarding.js.map +1 -1
  3. package/dist/cjs/Onboarding.js +31 -27
  4. package/dist/cjs/Onboarding.js.map +1 -1
  5. package/dist/cjs/v2/Onboarding.js +31 -26
  6. package/dist/cjs/v2/Onboarding.js.map +1 -1
  7. package/dist/v2/Onboarding.js +31 -26
  8. package/dist/v2/Onboarding.js.map +1 -1
  9. package/package.json +1 -1
  10. package/src/translations/ar.json +2 -2
  11. package/src/translations/bg.json +2 -2
  12. package/src/translations/ca.json +2 -2
  13. package/src/translations/cs.json +2 -2
  14. package/src/translations/da.json +2 -2
  15. package/src/translations/de.json +2 -2
  16. package/src/translations/en.json +2 -2
  17. package/src/translations/es-MX.json +2 -2
  18. package/src/translations/es.json +2 -2
  19. package/src/translations/et.json +2 -2
  20. package/src/translations/fi.json +2 -2
  21. package/src/translations/fil.json +2 -2
  22. package/src/translations/fr.json +2 -2
  23. package/src/translations/he.json +2 -2
  24. package/src/translations/hi.json +2 -2
  25. package/src/translations/hr.json +2 -2
  26. package/src/translations/hu.json +2 -2
  27. package/src/translations/id.json +2 -2
  28. package/src/translations/it.json +2 -2
  29. package/src/translations/ja.json +2 -2
  30. package/src/translations/ko.json +2 -2
  31. package/src/translations/lv.json +2 -2
  32. package/src/translations/nl.json +2 -2
  33. package/src/translations/pl.json +2 -2
  34. package/src/translations/pt-BR.json +2 -2
  35. package/src/translations/pt.json +2 -2
  36. package/src/translations/ro.json +2 -2
  37. package/src/translations/ru.json +2 -2
  38. package/src/translations/sk.json +2 -2
  39. package/src/translations/sl.json +2 -2
  40. package/src/translations/sv.json +2 -2
  41. package/src/translations/th.json +2 -2
  42. package/src/translations/tr.json +2 -2
  43. package/src/translations/uk.json +2 -2
  44. package/src/translations/vi.json +2 -2
  45. package/src/translations/zh-CN.json +2 -2
  46. package/src/translations/zh-TW.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Onboarding.js","sources":["../../node_modules/lucide-react/dist/esm/icons/arrow-right.mjs","../../node_modules/lucide-react/dist/esm/icons/notebook-text.mjs","../../src/v2/components/Onboarding/Community/constants.js","../../src/v2/components/Onboarding/Community/EmailRecipient.jsx","../../src/v2/components/Onboarding/Community/api.js","../../src/v2/components/Onboarding/Community/hooks/useJoinCommunity.js","../../src/v2/components/Onboarding/Community/utils.js","../../src/v2/components/Onboarding/Community/hooks/useRecipientEmails.js","../../src/v2/components/Onboarding/constants.js","../../src/v2/components/Onboarding/Community/index.jsx","../../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.24.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.mjs';\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.mjs.map\n","/**\n * @license lucide-react v1.24.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.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M2 6h4\", key: \"aawbzj\" }],\n [\"path\", { d: \"M2 10h4\", key: \"l0bgd4\" }],\n [\"path\", { d: \"M2 14h4\", key: \"1gsvsf\" }],\n [\"path\", { d: \"M2 18h4\", key: \"1bu2t1\" }],\n [\"rect\", { width: \"16\", height: \"20\", x: \"4\", y: \"2\", rx: \"2\", key: \"1nb95v\" }],\n [\"path\", { d: \"M9.5 8h5\", key: \"11mslq\" }],\n [\"path\", { d: \"M9.5 12H16\", key: \"ktog6x\" }],\n [\"path\", { d: \"M9.5 16H14\", key: \"p1seyn\" }]\n];\nconst NotebookText = createLucideIcon(\"notebook-text\", __iconNode);\n\nexport { __iconNode, NotebookText as default };\n//# sourceMappingURL=notebook-text.mjs.map\n","import { CircleUser, NotebookText } from \"lucide-react\";\n\nexport const COMMUNITY_OPTIONS = [\n {\n key: \"slack\",\n icon: CircleUser,\n dataTestid: \"onboarding-community-slack-checkbox\",\n recipientDataTestids: {\n change: \"onboarding-community-slack-email-change-button\",\n input: \"onboarding-community-slack-email-input\",\n save: \"onboarding-community-slack-email-save-button\",\n cancel: \"onboarding-community-slack-email-cancel-button\",\n },\n },\n {\n key: \"blog\",\n icon: NotebookText,\n dataTestid: \"onboarding-community-blog-checkbox\",\n recipientDataTestids: {\n change: \"onboarding-community-blog-email-change-button\",\n input: \"onboarding-community-blog-email-input\",\n save: \"onboarding-community-blog-email-save-button\",\n cancel: \"onboarding-community-blog-email-cancel-button\",\n },\n },\n];\n","import { Button, Input, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Mail } from \"lucide-react\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nconst EmailRecipient = ({\n email,\n edit,\n onStartEditing,\n onDraftChange,\n onSave,\n onCancel,\n recipientKey,\n inputLabelKey,\n dataTestids,\n}) => {\n const { t } = useTranslation();\n\n const handleKeyDown = event => {\n if (event.key === \"Enter\") {\n event.preventDefault();\n onSave();\n }\n\n if (event.key === \"Escape\") onCancel();\n };\n\n if (edit) {\n return (\n <div className=\"flex items-start gap-2 ps-6 pt-3\">\n <div className=\"w-72\">\n <Input\n autoFocus\n aria-label={t(inputLabelKey)}\n data-testid={dataTestids.input}\n error={edit.error}\n type=\"email\"\n value={edit.draft}\n onChange={event => onDraftChange(event.target.value)}\n onKeyDown={handleKeyDown}\n />\n </div>\n <Button\n data-testid={dataTestids.save}\n label={t(\"neetoMolecules.common.actions.save\")}\n onClick={onSave}\n />\n <Button\n data-testid={dataTestids.cancel}\n label={t(\"neetoMolecules.common.actions.cancel\")}\n variant=\"ghost\"\n onClick={onCancel}\n />\n </div>\n );\n }\n\n return (\n <div className=\"flex flex-wrap items-center gap-2 ps-6 pt-3\">\n <Mail aria-hidden className=\"text-muted-foreground\" size={16} />\n <Typography color=\"muted\" variant=\"body2\">\n <Trans\n components={{ strong: <strong className=\"text-foreground\" /> }}\n i18nKey={recipientKey}\n values={{ email }}\n />\n </Typography>\n <Button\n data-testid={dataTestids.change}\n label={t(\"neetoMolecules.onboarding.communityScreen.changeButton\")}\n size=\"sm\"\n variant=\"link\"\n onClick={onStartEditing}\n />\n </div>\n );\n};\n\nexport default EmailRecipient;\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/v2/constants\";\n\nconst joinCommunity = communityJoin =>\n axios.post(\n `${BASE_API_V1_URL}/community_join`,\n { communityJoin },\n { showToastr: false }\n );\n\nconst communityApi = { joinCommunity };\n\nexport default communityApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport communityApi from \"../api\";\n\nconst useJoinCommunity = () =>\n useMutation({ mutationFn: communityApi.joinCommunity });\n\nexport default useJoinCommunity;\n","import * as yup from \"yup\";\n\nexport const isValidEmail = email =>\n !!email && yup.string().email().isValidSync(email);\n","import { useState } from \"react\";\n\nimport { t } from \"i18next\";\nimport { assoc, dissoc } from \"ramda\";\n\nimport { isValidEmail } from \"../utils\";\n\n// Tracks the email each option goes to, plus any address being edited, so\n// Continue can pick up a draft the user typed but did not save.\nconst useRecipientEmails = defaultEmail => {\n const [emails, setEmails] = useState({\n slack: defaultEmail,\n blog: defaultEmail,\n });\n\n // { [key]: { draft, error } } for the options whose email field is open.\n const [edits, setEdits] = useState({});\n\n const startEditing = key =>\n setEdits(assoc(key, { draft: emails[key], error: \"\" }));\n\n const changeDraft = (key, draft) =>\n setEdits(assoc(key, { draft, error: \"\" }));\n\n const cancel = key => setEdits(dissoc(key));\n\n const validate = key => {\n const draft = edits[key].draft.trim();\n\n return isValidEmail(draft)\n ? { draft }\n : { error: t(\"neetoMolecules.onboarding.communityScreen.invalidEmail\") };\n };\n\n const save = key => {\n const { draft, error } = validate(key);\n\n if (error) {\n setEdits(assoc(key, { ...edits[key], error }));\n\n return;\n }\n\n setEmails(assoc(key, draft));\n setEdits(dissoc(key));\n };\n\n // Applies every open draft of the given options. Returns the final emails,\n // or null when a draft is invalid, after showing its error.\n const applyDrafts = keys => {\n let nextEmails = emails;\n let nextEdits = edits;\n\n keys\n .filter(key => edits[key])\n .forEach(key => {\n const { draft, error } = validate(key);\n\n if (error) {\n nextEdits = assoc(key, { ...edits[key], error }, nextEdits);\n } else {\n nextEmails = assoc(key, draft, nextEmails);\n nextEdits = dissoc(key, nextEdits);\n }\n });\n\n setEmails(nextEmails);\n setEdits(nextEdits);\n\n const hasInvalidDraft = keys.some(key => nextEdits[key]);\n\n return hasInvalidDraft ? null : nextEmails;\n };\n\n return {\n emails,\n edits,\n startEditing,\n changeDraft,\n cancel,\n save,\n applyDrafts,\n };\n};\n\nexport default useRecipientEmails;\n","export const GENERAL_ONBOARDING_STEPS = {\n WELCOME: \"welcome\",\n COMMUNITY: \"community\",\n HELP: \"help\",\n FINISH: \"finish\",\n};\n","import { useState } from \"react\";\n\nimport { Button, Checkbox, 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 { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { COMMUNITY_OPTIONS } from \"./constants\";\nimport EmailRecipient from \"./EmailRecipient\";\nimport useJoinCommunity from \"./hooks/useJoinCommunity\";\nimport useRecipientEmails from \"./hooks/useRecipientEmails\";\n\nimport { GENERAL_ONBOARDING_STEPS } from \"../constants\";\n\nconst Community = ({ setCurrentStep, communityScreenClassName }) => {\n const { t } = useTranslation();\n\n const [selected, setSelected] = useState({ slack: true, blog: true });\n\n // Both start at the signed-in user's email; each can be changed separately.\n const recipients = useRecipientEmails(globalProps.user?.email);\n\n const { mutate: joinCommunity } = useJoinCommunity();\n\n const appName = capitalize(globalProps.appName ?? \"\");\n\n const handleContinue = () => {\n const selectedKeys = Object.keys(selected).filter(key => selected[key]);\n\n // An address typed but not saved still counts; an invalid one keeps the\n // user here with its error showing.\n const emails = recipients.applyDrafts(selectedKeys);\n if (!emails) return;\n\n // The Slack invite and blog subscription are both sent by email in the\n // background, so onboarding moves on without waiting for them.\n if (selectedKeys.length > 0) {\n joinCommunity({\n ...selected,\n slackEmail: emails.slack,\n blogEmail: emails.blog,\n });\n }\n\n setCurrentStep(GENERAL_ONBOARDING_STEPS.HELP);\n };\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 communityScreenClassName\n )}\n >\n <div className=\"space-y-2\">\n <Typography data-testid=\"onboarding-community-title\" variant=\"h2\">\n {t(\"neetoMolecules.onboarding.communityScreen.title\")}\n </Typography>\n <Typography\n data-testid=\"onboarding-community-description\"\n variant=\"body1\"\n >\n {t(\"neetoMolecules.onboarding.communityScreen.description\", {\n appName,\n })}\n </Typography>\n </div>\n <div className=\"border-border flex w-full flex-col gap-6 rounded-lg border p-3 lg:p-6\">\n {COMMUNITY_OPTIONS.map(\n ({ key, icon: Icon, dataTestid, recipientDataTestids }) => (\n <div className=\"w-full\" key={key}>\n <Checkbox\n checked={selected[key]}\n data-testid={dataTestid}\n id={dataTestid}\n labelProps={{ className: \"text-xl font-semibold\" }}\n label={\n <span className=\"flex flex-wrap items-center gap-2\">\n {t(\n `neetoMolecules.onboarding.communityScreen.${key}.title`,\n { appName }\n )}\n <Icon aria-hidden size={24} />\n </span>\n }\n onCheckedChange={checked => {\n setSelected(assoc(key, checked));\n if (!checked) recipients.cancel(key);\n }}\n />\n <Typography className=\"ps-6 pt-2\" color=\"muted\" variant=\"body1\">\n {t(\n `neetoMolecules.onboarding.communityScreen.${key}.description`\n )}\n </Typography>\n {selected[key] && (\n <EmailRecipient\n dataTestids={recipientDataTestids}\n edit={recipients.edits[key]}\n email={recipients.emails[key]}\n inputLabelKey={`neetoMolecules.onboarding.communityScreen.${key}.emailInputLabel`}\n recipientKey={`neetoMolecules.onboarding.communityScreen.${key}.recipient`}\n onCancel={() => recipients.cancel(key)}\n onDraftChange={draft => recipients.changeDraft(key, draft)}\n onSave={() => recipients.save(key)}\n onStartEditing={() => recipients.startEditing(key)}\n />\n )}\n </div>\n )\n )}\n </div>\n <Typography color=\"muted\" variant=\"body2\">\n {t(\"neetoMolecules.onboarding.communityScreen.unsubscribe\")}\n </Typography>\n <Button\n data-testid=\"community-onboarding-continue-button\"\n icon={() => <ArrowRight className=\"rtl:scale-x-[-1]\" size={16} />}\n iconPosition=\"right\"\n label={t(\"neetoMolecules.onboarding.communityScreen.continueButton\")}\n onClick={handleContinue}\n />\n </div>\n );\n};\n\nexport default Community;\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 data-testid=\"onboarding-help-title\" variant=\"h2\">\n {t(\"neetoMolecules.onboarding.helpScreen.title\")}\n </Typography>\n <Typography data-testid=\"onboarding-help-description\" variant=\"body1\">\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 Community from \"./Community\";\nimport { GENERAL_ONBOARDING_STEPS } from \"./constants\";\nimport HelpScreen from \"./HelpScreen\";\n\nexport const createSteps = (\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName,\n isCommunityStepVisible\n) => {\n const communityStep = {\n key: GENERAL_ONBOARDING_STEPS.COMMUNITY,\n label: t(\"neetoMolecules.onboarding.communityLabel\"),\n element: <Community {...{ setCurrentStep }} />,\n };\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(isCommunityStepVisible ? [communityStep, helpStep] : 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=\"h2\"\n >\n 🎉\n </Typography>\n <Typography\n className=\"text-center\"\n data-testid=\"onboarding-congratulations-title\"\n variant=\"h2\"\n >\n <span className=\"text-success-foreground\">\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=\"h2\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.welcomeToTitle\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n <Typography\n className=\"text-center\"\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, useLayoutEffect, 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 isCommunityStepVisible = true,\n}) => {\n const steps = useMemo(\n () =>\n createSteps(\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName,\n isCommunityStepVisible\n ),\n [onboardingSteps, isCommunityStepVisible]\n );\n\n const prevStep = useRef(currentStep);\n const isStepperNavigation = useRef(false);\n const isRedirectingToCommunity = useRef(false);\n\n // Products move from their last step straight to Help. Send them through\n // the community step first, unless they picked Help in the stepper.\n useLayoutEffect(() => {\n const isFromStepper = isStepperNavigation.current;\n isStepperNavigation.current = false;\n\n const shouldShowCommunityFirst =\n isCommunityStepVisible &&\n !isFromStepper &&\n currentStep === GENERAL_ONBOARDING_STEPS.HELP &&\n prevStep.current !== currentStep &&\n prevStep.current !== GENERAL_ONBOARDING_STEPS.COMMUNITY;\n\n if (shouldShowCommunityFirst) {\n isRedirectingToCommunity.current = true;\n setCurrentStep(GENERAL_ONBOARDING_STEPS.COMMUNITY);\n }\n }, [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 // Help is skipped over on the way to the community step, so the\n // animation should run from the step before it.\n if (isRedirectingToCommunity.current) {\n isRedirectingToCommunity.current = false;\n\n return;\n }\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 => {\n const stepKey = steps[index].key;\n if (stepKey === currentStep) return;\n\n isStepperNavigation.current = true;\n setCurrentStep(stepKey);\n };\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 * To show the community step, where users can join the Neeto Slack\n * community and subscribe to the product's blog. It sits just before Help.\n */\n isCommunityStepVisible: PropTypes.bool,\n};\n\nexport default Onboarding;\n"],"names":["__iconNode","COMMUNITY_OPTIONS","key","icon","CircleUser","dataTestid","recipientDataTestids","change","input","save","cancel","NotebookText","EmailRecipient","_ref","email","edit","onStartEditing","onDraftChange","onSave","onCancel","recipientKey","inputLabelKey","dataTestids","_useTranslation","useTranslation","t","handleKeyDown","event","preventDefault","_jsxs","className","children","_jsx","Input","autoFocus","error","type","value","draft","onChange","target","onKeyDown","Button","label","onClick","variant","Mail","size","Typography","color","Trans","components","strong","i18nKey","values","joinCommunity","communityJoin","axios","post","concat","BASE_API_V1_URL","showToastr","communityApi","useJoinCommunity","useMutation","mutationFn","isValidEmail","yup","string","isValidSync","useRecipientEmails","defaultEmail","_useState","useState","slack","blog","_useState2","_slicedToArray","emails","setEmails","_useState3","_useState4","edits","setEdits","startEditing","assoc","changeDraft","dissoc","validate","trim","_validate","_objectSpread","applyDrafts","keys","nextEmails","nextEdits","filter","forEach","_validate2","hasInvalidDraft","some","GENERAL_ONBOARDING_STEPS","WELCOME","COMMUNITY","HELP","FINISH","Community","_globalProps$user","_globalProps$appName","setCurrentStep","communityScreenClassName","selected","setSelected","recipients","globalProps","user","_useJoinCommunity","mutate","appName","capitalize","handleContinue","selectedKeys","Object","length","slackEmail","blogEmail","classNames","map","_ref2","Icon","Checkbox","checked","id","labelProps","onCheckedChange","ArrowRight","iconPosition","HelpScreen","helpScreenClassName","_useBreakpoints","useBreakpoints","isSize","alt","src","createSteps","onboardingSteps","currentStep","isCommunityStepVisible","communityStep","element","helpStep","step","idx","getWindowDimensions","window","width","innerWidth","height","innerHeight","useWindowDimensions","windowDimensions","setWindowDimensions","useLayoutEffect","handleResize","addEventListener","removeEventListener","CompletedScreen","completeButtonProps","completedScreenSuccessMessage","dropConfetti","setDropConfetti","_useWindowDimensions","useEffect","timer","setTimeout","clearTimeout","classnames","Confetti","recycle","isPresent","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","_ref$isCommunityStepV","steps","useMemo","prevStep","useRef","isStepperNavigation","isRedirectingToCommunity","isFromStepper","current","shouldShowCommunityFirst","direction","setDirection","getOnboardingStepIndex","stepKey","findIndex","handleStepChange","index","isStepperVisible","Stepper","activeIndex","findIndexBy","onStepClick","undefined","hidden"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAMA,YAAU,GAAG;AACnB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC5C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,QAAQ,EAAE;AAChD,CAAC;AACD,MAAM,UAAU,GAAG,gBAAgB,CAAC,aAAa,EAAEA,YAAU,CAAC;;ACb9D;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG;AACnB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC1C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3C,EAAE,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AACjF,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC5C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC9C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE;AAC7C,CAAC;AACD,MAAM,YAAY,GAAG,gBAAgB,CAAC,eAAe,EAAE,UAAU,CAAC;;ACjB3D,IAAMC,iBAAiB,GAAG,CAC/B;AACEC,EAAAA,GAAG,EAAE,OAAO;AACZC,EAAAA,IAAI,EAAEC,UAAU;AAChBC,EAAAA,UAAU,EAAE,qCAAqC;AACjDC,EAAAA,oBAAoB,EAAE;AACpBC,IAAAA,MAAM,EAAE,gDAAgD;AACxDC,IAAAA,KAAK,EAAE,wCAAwC;AAC/CC,IAAAA,IAAI,EAAE,8CAA8C;AACpDC,IAAAA,MAAM,EAAE;AACV;AACF,CAAC,EACD;AACER,EAAAA,GAAG,EAAE,MAAM;AACXC,EAAAA,IAAI,EAAEQ,YAAY;AAClBN,EAAAA,UAAU,EAAE,oCAAoC;AAChDC,EAAAA,oBAAoB,EAAE;AACpBC,IAAAA,MAAM,EAAE,+CAA+C;AACvDC,IAAAA,KAAK,EAAE,uCAAuC;AAC9CC,IAAAA,IAAI,EAAE,6CAA6C;AACnDC,IAAAA,MAAM,EAAE;AACV;AACF,CAAC,CACF;;ACrBD,IAAME,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAUd;AAAA,EAAA,IATJC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,cAAc,GAAAH,IAAA,CAAdG,cAAc;IACdC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;IACbC,MAAM,GAAAL,IAAA,CAANK,MAAM;IACNC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;IACRC,YAAY,GAAAP,IAAA,CAAZO,YAAY;IACZC,aAAa,GAAAR,IAAA,CAAbQ,aAAa;IACbC,WAAW,GAAAT,IAAA,CAAXS,WAAW;AAEX,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,KAAK,EAAI;AAC7B,IAAA,IAAIA,KAAK,CAACzB,GAAG,KAAK,OAAO,EAAE;MACzByB,KAAK,CAACC,cAAc,EAAE;AACtBV,MAAAA,MAAM,EAAE;AACV,IAAA;IAEA,IAAIS,KAAK,CAACzB,GAAG,KAAK,QAAQ,EAAEiB,QAAQ,EAAE;EACxC,CAAC;AAED,EAAA,IAAIJ,IAAI,EAAE;AACR,IAAA,oBACEc,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,kCAAkC;AAAAC,MAAAA,QAAA,gBAC/CC,GAAA,CAAA,KAAA,EAAA;AAAKF,QAAAA,SAAS,EAAC,MAAM;QAAAC,QAAA,eACnBC,GAAA,CAACC,KAAK,EAAA;UACJC,SAAS,EAAA,IAAA;UACT,YAAA,EAAYT,CAAC,CAACJ,aAAa,CAAE;UAC7B,aAAA,EAAaC,WAAW,CAACd,KAAM;UAC/B2B,KAAK,EAAEpB,IAAI,CAACoB,KAAM;AAClBC,UAAAA,IAAI,EAAC,OAAO;UACZC,KAAK,EAAEtB,IAAI,CAACuB,KAAM;AAClBC,UAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEZ,KAAK,EAAA;AAAA,YAAA,OAAIV,aAAa,CAACU,KAAK,CAACa,MAAM,CAACH,KAAK,CAAC;UAAA,CAAC;AACrDI,UAAAA,SAAS,EAAEf;SACZ;AAAC,OACC,CAAC,eACNM,GAAA,CAACU,MAAM,EAAA;QACL,aAAA,EAAapB,WAAW,CAACb,IAAK;AAC9BkC,QAAAA,KAAK,EAAElB,CAAC,CAAC,oCAAoC,CAAE;AAC/CmB,QAAAA,OAAO,EAAE1B;AAAO,OACjB,CAAC,eACFc,GAAA,CAACU,MAAM,EAAA;QACL,aAAA,EAAapB,WAAW,CAACZ,MAAO;AAChCiC,QAAAA,KAAK,EAAElB,CAAC,CAAC,sCAAsC,CAAE;AACjDoB,QAAAA,OAAO,EAAC,OAAO;AACfD,QAAAA,OAAO,EAAEzB;AAAS,OACnB,CAAC;AAAA,KACC,CAAC;AAEV,EAAA;AAEA,EAAA,oBACEU,IAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,6CAA6C;IAAAC,QAAA,EAAA,cAC1DC,GAAA,CAACc,IAAI,EAAA;MAAC,aAAA,EAAA,IAAW;AAAChB,MAAAA,SAAS,EAAC,uBAAuB;AAACiB,MAAAA,IAAI,EAAE;AAAG,KAAE,CAAC,eAChEf,GAAA,CAACgB,UAAU,EAAA;AAACC,MAAAA,KAAK,EAAC,OAAO;AAACJ,MAAAA,OAAO,EAAC,OAAO;MAAAd,QAAA,eACvCC,GAAA,CAACkB,KAAK,EAAA;AACJC,QAAAA,UAAU,EAAE;AAAEC,UAAAA,MAAM,eAAEpB,GAAA,CAAA,QAAA,EAAA;AAAQF,YAAAA,SAAS,EAAC;WAAmB;SAAI;AAC/DuB,QAAAA,OAAO,EAAEjC,YAAa;AACtBkC,QAAAA,MAAM,EAAE;AAAExC,UAAAA,KAAK,EAALA;AAAM;OACjB;AAAC,KACQ,CAAC,eACbkB,GAAA,CAACU,MAAM,EAAA;MACL,aAAA,EAAapB,WAAW,CAACf,MAAO;AAChCoC,MAAAA,KAAK,EAAElB,CAAC,CAAC,wDAAwD,CAAE;AACnEsB,MAAAA,IAAI,EAAC,IAAI;AACTF,MAAAA,OAAO,EAAC,MAAM;AACdD,MAAAA,OAAO,EAAE5B;AAAe,KACzB,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;ACxED,IAAMuC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,aAAa,EAAA;AAAA,EAAA,OACjCC,KAAK,CAACC,IAAI,IAAAC,MAAA,CACLC,eAAe,EAAA,iBAAA,CAAA,EAClB;AAAEJ,IAAAA,aAAa,EAAbA;AAAc,GAAC,EACjB;AAAEK,IAAAA,UAAU,EAAE;AAAM,GACtB,CAAC;AAAA,CAAA;AAEH,IAAMC,YAAY,GAAG;AAAEP,EAAAA,aAAa,EAAbA;AAAc,CAAC;;ACNtC,IAAMQ,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAA;AAAA,EAAA,OACpBC,WAAW,CAAC;IAAEC,UAAU,EAAEH,YAAY,CAACP;AAAc,GAAC,CAAC;AAAA,CAAA;;ACHlD,IAAMW,YAAY,GAAG,SAAfA,YAAYA,CAAGpD,KAAK,EAAA;AAAA,EAAA,OAC/B,CAAC,CAACA,KAAK,IAAIqD,GAAG,CAACC,MAAM,EAAE,CAACtD,KAAK,EAAE,CAACuD,WAAW,CAACvD,KAAK,CAAC;AAAA,CAAA;;;;;ACIpD;AACA;AACA,IAAMwD,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGC,YAAY,EAAI;EACzC,IAAAC,SAAA,GAA4BC,QAAQ,CAAC;AACnCC,MAAAA,KAAK,EAAEH,YAAY;AACnBI,MAAAA,IAAI,EAAEJ;AACR,KAAC,CAAC;IAAAK,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAHKM,IAAAA,MAAM,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,SAAS,GAAAH,UAAA,CAAA,CAAA,CAAA;;AAKxB;AACA,EAAA,IAAAI,UAAA,GAA0BP,QAAQ,CAAC,EAAE,CAAC;IAAAQ,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAA/BE,IAAAA,KAAK,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,QAAQ,GAAAF,UAAA,CAAA,CAAA,CAAA;AAEtB,EAAA,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAGlF,GAAG,EAAA;AAAA,IAAA,OACtBiF,QAAQ,CAACE,KAAK,CAACnF,GAAG,EAAE;AAAEoC,MAAAA,KAAK,EAAEwC,MAAM,CAAC5E,GAAG,CAAC;AAAEiC,MAAAA,KAAK,EAAE;AAAG,KAAC,CAAC,CAAC;AAAA,EAAA,CAAA;AAEzD,EAAA,IAAMmD,WAAW,GAAG,SAAdA,WAAWA,CAAIpF,GAAG,EAAEoC,KAAK,EAAA;AAAA,IAAA,OAC7B6C,QAAQ,CAACE,KAAK,CAACnF,GAAG,EAAE;AAAEoC,MAAAA,KAAK,EAALA,KAAK;AAAEH,MAAAA,KAAK,EAAE;AAAG,KAAC,CAAC,CAAC;AAAA,EAAA,CAAA;AAE5C,EAAA,IAAMzB,MAAM,GAAG,SAATA,MAAMA,CAAGR,GAAG,EAAA;AAAA,IAAA,OAAIiF,QAAQ,CAACI,MAAM,CAACrF,GAAG,CAAC,CAAC;AAAA,EAAA,CAAA;AAE3C,EAAA,IAAMsF,QAAQ,GAAG,SAAXA,QAAQA,CAAGtF,GAAG,EAAI;IACtB,IAAMoC,KAAK,GAAG4C,KAAK,CAAChF,GAAG,CAAC,CAACoC,KAAK,CAACmD,IAAI,EAAE;AAErC,IAAA,OAAOvB,YAAY,CAAC5B,KAAK,CAAC,GACtB;AAAEA,MAAAA,KAAK,EAALA;AAAM,KAAC,GACT;MAAEH,KAAK,EAAEV,CAAC,CAAC,wDAAwD;KAAG;EAC5E,CAAC;AAED,EAAA,IAAMhB,IAAI,GAAG,SAAPA,IAAIA,CAAGP,GAAG,EAAI;AAClB,IAAA,IAAAwF,SAAA,GAAyBF,QAAQ,CAACtF,GAAG,CAAC;MAA9BoC,KAAK,GAAAoD,SAAA,CAALpD,KAAK;MAAEH,KAAK,GAAAuD,SAAA,CAALvD,KAAK;AAEpB,IAAA,IAAIA,KAAK,EAAE;AACTgD,MAAAA,QAAQ,CAACE,KAAK,CAACnF,GAAG,EAAAyF,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAOT,KAAK,CAAChF,GAAG,CAAC,CAAA,EAAA,EAAA,EAAA;AAAEiC,QAAAA,KAAK,EAALA;AAAK,OAAA,CAAE,CAAC,CAAC;AAE9C,MAAA;AACF,IAAA;AAEA4C,IAAAA,SAAS,CAACM,KAAK,CAACnF,GAAG,EAAEoC,KAAK,CAAC,CAAC;AAC5B6C,IAAAA,QAAQ,CAACI,MAAM,CAACrF,GAAG,CAAC,CAAC;EACvB,CAAC;;AAED;AACA;AACA,EAAA,IAAM0F,WAAW,GAAG,SAAdA,WAAWA,CAAGC,IAAI,EAAI;IAC1B,IAAIC,UAAU,GAAGhB,MAAM;IACvB,IAAIiB,SAAS,GAAGb,KAAK;AAErBW,IAAAA,IAAI,CACDG,MAAM,CAAC,UAAA9F,GAAG,EAAA;MAAA,OAAIgF,KAAK,CAAChF,GAAG,CAAC;AAAA,IAAA,CAAA,CAAC,CACzB+F,OAAO,CAAC,UAAA/F,GAAG,EAAI;AACd,MAAA,IAAAgG,UAAA,GAAyBV,QAAQ,CAACtF,GAAG,CAAC;QAA9BoC,KAAK,GAAA4D,UAAA,CAAL5D,KAAK;QAAEH,KAAK,GAAA+D,UAAA,CAAL/D,KAAK;AAEpB,MAAA,IAAIA,KAAK,EAAE;AACT4D,QAAAA,SAAS,GAAGV,KAAK,CAACnF,GAAG,EAAAyF,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAOT,KAAK,CAAChF,GAAG,CAAC,CAAA,EAAA,EAAA,EAAA;AAAEiC,UAAAA,KAAK,EAALA;AAAK,SAAA,CAAA,EAAI4D,SAAS,CAAC;AAC7D,MAAA,CAAC,MAAM;QACLD,UAAU,GAAGT,KAAK,CAACnF,GAAG,EAAEoC,KAAK,EAAEwD,UAAU,CAAC;AAC1CC,QAAAA,SAAS,GAAGR,MAAM,CAACrF,GAAG,EAAE6F,SAAS,CAAC;AACpC,MAAA;AACF,IAAA,CAAC,CAAC;IAEJhB,SAAS,CAACe,UAAU,CAAC;IACrBX,QAAQ,CAACY,SAAS,CAAC;AAEnB,IAAA,IAAMI,eAAe,GAAGN,IAAI,CAACO,IAAI,CAAC,UAAAlG,GAAG,EAAA;MAAA,OAAI6F,SAAS,CAAC7F,GAAG,CAAC;IAAA,CAAA,CAAC;AAExD,IAAA,OAAOiG,eAAe,GAAG,IAAI,GAAGL,UAAU;EAC5C,CAAC;EAED,OAAO;AACLhB,IAAAA,MAAM,EAANA,MAAM;AACNI,IAAAA,KAAK,EAALA,KAAK;AACLE,IAAAA,YAAY,EAAZA,YAAY;AACZE,IAAAA,WAAW,EAAXA,WAAW;AACX5E,IAAAA,MAAM,EAANA,MAAM;AACND,IAAAA,IAAI,EAAJA,IAAI;AACJmF,IAAAA,WAAW,EAAXA;GACD;AACH,CAAC;;ACnFM,IAAMS,wBAAwB,GAAG;AACtCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,SAAS,EAAE,WAAW;AACtBC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,MAAM,EAAE;AACV,CAAC;;;;ACYD,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAA7F,IAAA,EAAqD;EAAA,IAAA8F,iBAAA,EAAAC,oBAAA;AAAA,EAAA,IAA/CC,cAAc,GAAAhG,IAAA,CAAdgG,cAAc;IAAEC,wBAAwB,GAAAjG,IAAA,CAAxBiG,wBAAwB;AAC3D,EAAA,IAAAvF,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EAET,IAAA+C,SAAA,GAAgCC,QAAQ,CAAC;AAAEC,MAAAA,KAAK,EAAE,IAAI;AAAEC,MAAAA,IAAI,EAAE;AAAK,KAAC,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAA9DuC,IAAAA,QAAQ,GAAAnC,UAAA,CAAA,CAAA,CAAA;AAAEoC,IAAAA,WAAW,GAAApC,UAAA,CAAA,CAAA,CAAA;;AAE5B;AACA,EAAA,IAAMqC,UAAU,GAAG3C,kBAAkB,CAAA,CAAAqC,iBAAA,GAACO,WAAW,CAACC,IAAI,cAAAR,iBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,iBAAA,CAAkB7F,KAAK,CAAC;AAE9D,EAAA,IAAAsG,iBAAA,GAAkCrD,gBAAgB,EAAE;IAApCR,aAAa,GAAA6D,iBAAA,CAArBC,MAAM;AAEd,EAAA,IAAMC,OAAO,GAAGC,UAAU,CAAA,CAAAX,oBAAA,GAACM,WAAW,CAACI,OAAO,cAAAV,oBAAA,KAAA,MAAA,GAAAA,oBAAA,GAAI,EAAE,CAAC;AAErD,EAAA,IAAMY,cAAc,GAAG,SAAjBA,cAAcA,GAAS;AAC3B,IAAA,IAAMC,YAAY,GAAGC,MAAM,CAAC7B,IAAI,CAACkB,QAAQ,CAAC,CAACf,MAAM,CAAC,UAAA9F,GAAG,EAAA;MAAA,OAAI6G,QAAQ,CAAC7G,GAAG,CAAC;IAAA,CAAA,CAAC;;AAEvE;AACA;AACA,IAAA,IAAM4E,MAAM,GAAGmC,UAAU,CAACrB,WAAW,CAAC6B,YAAY,CAAC;IACnD,IAAI,CAAC3C,MAAM,EAAE;;AAEb;AACA;AACA,IAAA,IAAI2C,YAAY,CAACE,MAAM,GAAG,CAAC,EAAE;AAC3BpE,MAAAA,aAAa,CAAAoC,eAAA,CAAAA,eAAA,KACRoB,QAAQ,CAAA,EAAA,EAAA,EAAA;QACXa,UAAU,EAAE9C,MAAM,CAACJ,KAAK;QACxBmD,SAAS,EAAE/C,MAAM,CAACH;AAAI,OAAA,CACvB,CAAC;AACJ,IAAA;AAEAkC,IAAAA,cAAc,CAACR,wBAAwB,CAACG,IAAI,CAAC;EAC/C,CAAC;AAED,EAAA,oBACE3E,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAEgG,UAAU,CACnB,4EAA4E,EAC5EhB,wBACF,CAAE;AAAA/E,IAAAA,QAAA,gBAEFF,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,WAAW;MAAAC,QAAA,EAAA,cACxBC,GAAA,CAACgB,UAAU,EAAA;AAAC,QAAA,aAAA,EAAY,4BAA4B;AAACH,QAAAA,OAAO,EAAC,IAAI;QAAAd,QAAA,EAC9DN,CAAC,CAAC,iDAAiD;AAAC,OAC3C,CAAC,eACbO,GAAA,CAACgB,UAAU,EAAA;AACT,QAAA,aAAA,EAAY,kCAAkC;AAC9CH,QAAAA,OAAO,EAAC,OAAO;AAAAd,QAAAA,QAAA,EAEdN,CAAC,CAAC,uDAAuD,EAAE;AAC1D6F,UAAAA,OAAO,EAAPA;SACD;AAAC,OACQ,CAAC;KACV,CAAC,eACNtF,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,uEAAuE;AAAAC,MAAAA,QAAA,EACnF9B,iBAAiB,CAAC8H,GAAG,CACpB,UAAAC,KAAA,EAAA;AAAA,QAAA,IAAG9H,GAAG,GAAA8H,KAAA,CAAH9H,GAAG;UAAQ+H,IAAI,GAAAD,KAAA,CAAV7H,IAAI;UAAQE,UAAU,GAAA2H,KAAA,CAAV3H,UAAU;UAAEC,oBAAoB,GAAA0H,KAAA,CAApB1H,oBAAoB;AAAA,QAAA,oBAClDuB,IAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,QAAQ;UAAAC,QAAA,EAAA,cACrBC,GAAA,CAACkG,QAAQ,EAAA;AACPC,YAAAA,OAAO,EAAEpB,QAAQ,CAAC7G,GAAG,CAAE;AACvB,YAAA,aAAA,EAAaG,UAAW;AACxB+H,YAAAA,EAAE,EAAE/H,UAAW;AACfgI,YAAAA,UAAU,EAAE;AAAEvG,cAAAA,SAAS,EAAE;aAA0B;AACnDa,YAAAA,KAAK,eACHd,IAAA,CAAA,MAAA,EAAA;AAAMC,cAAAA,SAAS,EAAC,mCAAmC;AAAAC,cAAAA,QAAA,GAChDN,CAAC,CAAA,4CAAA,CAAAkC,MAAA,CAC6CzD,GAAG,EAAA,QAAA,CAAA,EAChD;AAAEoH,gBAAAA,OAAO,EAAPA;AAAQ,eACZ,CAAC,eACDtF,GAAA,CAACiG,IAAI,EAAA;gBAAC,aAAA,EAAA,IAAW;AAAClF,gBAAAA,IAAI,EAAE;AAAG,eAAE,CAAC;AAAA,aAC1B,CACP;AACDuF,YAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAEH,OAAO,EAAI;AAC1BnB,cAAAA,WAAW,CAAC3B,KAAK,CAACnF,GAAG,EAAEiI,OAAO,CAAC,CAAC;cAChC,IAAI,CAACA,OAAO,EAAElB,UAAU,CAACvG,MAAM,CAACR,GAAG,CAAC;AACtC,YAAA;AAAE,WACH,CAAC,eACF8B,GAAA,CAACgB,UAAU,EAAA;AAAClB,YAAAA,SAAS,EAAC,WAAW;AAACmB,YAAAA,KAAK,EAAC,OAAO;AAACJ,YAAAA,OAAO,EAAC,OAAO;AAAAd,YAAAA,QAAA,EAC5DN,CAAC,CAAA,4CAAA,CAAAkC,MAAA,CAC6CzD,GAAG,EAAA,cAAA,CAClD;WACU,CAAC,EACZ6G,QAAQ,CAAC7G,GAAG,CAAC,iBACZ8B,GAAA,CAACpB,cAAc,EAAA;AACbU,YAAAA,WAAW,EAAEhB,oBAAqB;AAClCS,YAAAA,IAAI,EAAEkG,UAAU,CAAC/B,KAAK,CAAChF,GAAG,CAAE;AAC5BY,YAAAA,KAAK,EAAEmG,UAAU,CAACnC,MAAM,CAAC5E,GAAG,CAAE;AAC9BmB,YAAAA,aAAa,EAAA,4CAAA,CAAAsC,MAAA,CAA+CzD,GAAG,EAAA,kBAAA,CAAmB;AAClFkB,YAAAA,YAAY,EAAA,4CAAA,CAAAuC,MAAA,CAA+CzD,GAAG,EAAA,YAAA,CAAa;YAC3EiB,QAAQ,EAAE,SAAVA,QAAQA,GAAA;AAAA,cAAA,OAAQ8F,UAAU,CAACvG,MAAM,CAACR,GAAG,CAAC;YAAA,CAAC;AACvCe,YAAAA,aAAa,EAAE,SAAfA,aAAaA,CAAEqB,KAAK,EAAA;AAAA,cAAA,OAAI2E,UAAU,CAAC3B,WAAW,CAACpF,GAAG,EAAEoC,KAAK,CAAC;YAAA,CAAC;YAC3DpB,MAAM,EAAE,SAARA,MAAMA,GAAA;AAAA,cAAA,OAAQ+F,UAAU,CAACxG,IAAI,CAACP,GAAG,CAAC;YAAA,CAAC;YACnCc,cAAc,EAAE,SAAhBA,cAAcA,GAAA;AAAA,cAAA,OAAQiG,UAAU,CAAC7B,YAAY,CAAClF,GAAG,CAAC;AAAA,YAAA;AAAC,WACpD,CACF;AAAA,SAAA,EArC0BA,GAsCxB,CAAC;MAAA,CAEV;AAAC,KACE,CAAC,eACN8B,GAAA,CAACgB,UAAU,EAAA;AAACC,MAAAA,KAAK,EAAC,OAAO;AAACJ,MAAAA,OAAO,EAAC,OAAO;MAAAd,QAAA,EACtCN,CAAC,CAAC,uDAAuD;AAAC,KACjD,CAAC,eACbO,GAAA,CAACU,MAAM,EAAA;AACL,MAAA,aAAA,EAAY,sCAAsC;MAClDvC,IAAI,EAAE,SAANA,IAAIA,GAAA;QAAA,oBAAQ6B,GAAA,CAACuG,UAAU,EAAA;AAACzG,UAAAA,SAAS,EAAC,kBAAkB;AAACiB,UAAAA,IAAI,EAAE;AAAG,SAAE,CAAC;MAAA,CAAC;AAClEyF,MAAAA,YAAY,EAAC,OAAO;AACpB7F,MAAAA,KAAK,EAAElB,CAAC,CAAC,0DAA0D,CAAE;AACrEmB,MAAAA,OAAO,EAAE4E;AAAe,KACzB,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;ACvHD,IAAMiB,UAAU,GAAG,SAAbA,UAAUA,CAAA5H,IAAA,EAAgD;AAAA,EAAA,IAA1CgG,cAAc,GAAAhG,IAAA,CAAdgG,cAAc;IAAE6B,mBAAmB,GAAA7H,IAAA,CAAnB6H,mBAAmB;AACvD,EAAA,IAAAnH,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AACT,EAAA,IAAAkH,eAAA,GAAmBC,cAAc,EAAE;IAA3BC,MAAM,GAAAF,eAAA,CAANE,MAAM;AAEd,EAAA,oBACEhH,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAEgG,UAAU,CACnB,4EAA4E,EAC5EY,mBACF,CAAE;AAAA3G,IAAAA,QAAA,gBAEFF,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,uBAAuB;MAAAC,QAAA,EAAA,cACpCC,GAAA,CAACgB,UAAU,EAAA;AAAC,QAAA,aAAA,EAAY,uBAAuB;AAACH,QAAAA,OAAO,EAAC,IAAI;QAAAd,QAAA,EACzDN,CAAC,CAAC,4CAA4C;AAAC,OACtC,CAAC,eACbO,GAAA,CAACgB,UAAU,EAAA;AAAC,QAAA,aAAA,EAAY,6BAA6B;AAACH,QAAAA,OAAO,EAAC,OAAO;QAAAd,QAAA,eACnEC,GAAA,CAACkB,KAAK,EAAA;AAACG,UAAAA,OAAO,EAAC;SAAoD;OACzD,CAAC,eACbrB,GAAA,CAAA,KAAA,EAAA;AAAKF,QAAAA,SAAS,EAAC,aAAa;AAAAC,QAAAA,QAAA,EACzB8G,MAAM,CAAC,QAAQ,CAAC,gBACf7G,GAAA,CAAA,KAAA,EAAA;AACE8G,UAAAA,GAAG,EAAC,EAAE;AACNC,UAAAA,GAAG,EAAC;SACL,CAAC,gBAEF/G,GAAA,CAAA,KAAA,EAAA;AACE8G,UAAAA,GAAG,EAAC,EAAE;AACNC,UAAAA,GAAG,EAAC;SACL;AACF,OACE,CAAC;AAAA,KACH,CAAC,eACN/G,GAAA,CAACU,MAAM,EAAA;AACL,MAAA,aAAA,EAAY,wBAAwB;MACpCvC,IAAI,EAAE,SAANA,IAAIA,GAAA;QAAA,oBAAQ6B,GAAA,CAACuG,UAAU,EAAA;AAACzG,UAAAA,SAAS,EAAC,kBAAkB;AAACiB,UAAAA,IAAI,EAAE;AAAG,SAAE,CAAC;MAAA,CAAC;AAClEyF,MAAAA,YAAY,EAAC,OAAO;AACpB7F,MAAAA,KAAK,EAAElB,CAAC,CAAC,qDAAqD,CAAE;MAChEmB,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,QAAA,OAAQiE,cAAc,CAACR,wBAAwB,CAACI,MAAM,CAAC;AAAA,MAAA;AAAC,KAChE,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;;;AC3CM,IAAMuC,WAAW,GAAG,SAAdA,WAAWA,CACtBC,eAAe,EACfpC,cAAc,EACdqC,WAAW,EACXR,mBAAmB,EACnBS,sBAAsB,EACnB;AACH,EAAA,IAAMC,aAAa,GAAG;IACpBlJ,GAAG,EAAEmG,wBAAwB,CAACE,SAAS;AACvC5D,IAAAA,KAAK,EAAElB,CAAC,CAAC,0CAA0C,CAAC;IACpD4H,OAAO,eAAErH,GAAA,CAAC0E,SAAS,EAAA;AAAOG,MAAAA,cAAc,EAAdA;KAAmB;GAC9C;AAED,EAAA,IAAMyC,QAAQ,GAAG;IACfpJ,GAAG,EAAEmG,wBAAwB,CAACG,IAAI;AAClC7D,IAAAA,KAAK,EAAElB,CAAC,CAAC,qCAAqC,CAAC;IAC/C4H,OAAO,eACLrH,GAAA,CAACyG,UAAU,EAAA;AAAOS,MAAAA,WAAW,EAAXA,WAAW;AAAER,MAAAA,mBAAmB,EAAnBA,mBAAmB;AAAE7B,MAAAA,cAAc,EAAdA;KAAmB;GAE1E;EAED,OAAOoC,eAAe,CACnBtF,MAAM,CAACwF,sBAAsB,GAAG,CAACC,aAAa,EAAEE,QAAQ,CAAC,GAAGA,QAAQ,CAAC,CACrEvB,GAAG,CAAC,UAACwB,IAAI,EAAEC,GAAG,EAAA;AAAA,IAAA,OAAA7D,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAW4D,IAAI,CAAA,EAAA,EAAA,EAAA;MAAEnB,EAAE,EAAEoB,GAAG,GAAG;AAAC,KAAA,CAAA;AAAA,EAAA,CAAG,CAAC;AACnD,CAAC;AAEM,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAA;AAAA,EAAA,OAC9B,OAAOC,MAAM,KAAK,WAAW,GACzB;IAAEC,KAAK,EAAED,MAAM,CAACE,UAAU;IAAEC,MAAM,EAAEH,MAAM,CAACI;AAAY,GAAC,GACxD;AAAEH,IAAAA,KAAK,EAAE,GAAG;AAAEE,IAAAA,MAAM,EAAE;GAAK;AAAA,CAAA;;AC/BjC,IAAME,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAS;EAChC,IAAAvF,SAAA,GAAgDC,QAAQ,CAAC;AACvDkF,MAAAA,KAAK,EAAE,GAAG;AACVE,MAAAA,MAAM,EAAE;AACV,KAAC,CAAC;IAAAjF,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAHKwF,IAAAA,gBAAgB,GAAApF,UAAA,CAAA,CAAA,CAAA;AAAEqF,IAAAA,mBAAmB,GAAArF,UAAA,CAAA,CAAA,CAAA;AAK5CsF,EAAAA,eAAe,CAAC,YAAM;AACpBD,IAAAA,mBAAmB,CAACR,mBAAmB,EAAE,CAAC;IAE1C,SAASU,YAAYA,GAAG;AACtBF,MAAAA,mBAAmB,CAACR,mBAAmB,EAAE,CAAC;AAC5C,IAAA;AAEAC,IAAAA,MAAM,CAACU,gBAAgB,CAAC,QAAQ,EAAED,YAAY,CAAC;IAE/C,OAAO,YAAA;AAAA,MAAA,OAAMT,MAAM,CAACW,mBAAmB,CAAC,QAAQ,EAAEF,YAAY,CAAC;AAAA,IAAA,CAAA;EACjE,CAAC,EAAE,EAAE,CAAC;AAEN,EAAA,OAAOH,gBAAgB;AACzB,CAAC;;;;ACZD,IAAMM,eAAe,GAAG,SAAlBA,eAAeA,CAAAzJ,IAAA,EAIf;AAAA,EAAA,IAHJ0J,mBAAmB,GAAA1J,IAAA,CAAnB0J,mBAAmB;IACnBC,6BAA6B,GAAA3J,IAAA,CAA7B2J,6BAA6B;IAC7B1I,SAAS,GAAAjB,IAAA,CAATiB,SAAS;AAET,EAAA,IAAAP,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAA+C,SAAA,GAAwCC,QAAQ,CAAC,IAAI,CAAC;IAAAG,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAA/CiG,IAAAA,YAAY,GAAA7F,UAAA,CAAA,CAAA,CAAA;AAAE8F,IAAAA,eAAe,GAAA9F,UAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAA+F,oBAAA,GAA0BZ,mBAAmB,EAAE;IAAvCF,MAAM,GAAAc,oBAAA,CAANd,MAAM;IAAEF,KAAK,GAAAgB,oBAAA,CAALhB,KAAK;AAErBiB,EAAAA,SAAS,CAAC,YAAM;IACd,IAAMC,KAAK,GAAGC,UAAU,CAAC,YAAA;MAAA,OAAMJ,eAAe,CAAC,KAAK,CAAC;AAAA,IAAA,CAAA,EAAE,KAAK,CAAC;IAE7D,OAAO,YAAA;MAAA,OAAMK,YAAY,CAACF,KAAK,CAAC;AAAA,IAAA,CAAA;EAClC,CAAC,EAAE,EAAE,CAAC;AAEN,EAAA,oBACEhJ,IAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,oCAAoC;AAChDC,IAAAA,SAAS,EAAEkJ,UAAU,CACnB,8DAA8D,EAC9DlJ,SACF,CAAE;IAAAC,QAAA,EAAA,cAEFC,GAAA,CAACiJ,aAAQ,EAAA;AAAOpB,MAAAA,MAAM,EAANA,MAAM;AAAEF,MAAAA,KAAK,EAALA,KAAK;AAAIuB,MAAAA,OAAO,EAAET;KAAe,CAAC,EACzDU,SAAS,CAACX,6BAA6B,CAAC,GACvCA,6BAA6B,gBAE7B3I,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,gEAAgE;MAAAC,QAAA,EAAA,cAC7EC,GAAA,CAACgB,UAAU,EAAA;AACTlB,QAAAA,SAAS,EAAC,aAAa;AACvB,QAAA,aAAA,EAAY,kCAAkC;AAC9Ce,QAAAA,OAAO,EAAC,IAAI;AAAAd,QAAAA,QAAA,EACb;AAED,OAAY,CAAC,eACbF,IAAA,CAACmB,UAAU,EAAA;AACTlB,QAAAA,SAAS,EAAC,aAAa;AACvB,QAAA,aAAA,EAAY,kCAAkC;AAC9Ce,QAAAA,OAAO,EAAC,IAAI;AAAAd,QAAAA,QAAA,gBAEZC,GAAA,CAAA,MAAA,EAAA;AAAMF,UAAAA,SAAS,EAAC,yBAAyB;UAAAC,QAAA,EACtCN,CAAC,CAAC,2CAA2C;SAC1C,CAAC,eACPO,GAAA,CAAA,IAAA,EAAA,EAAK,CAAC,EACLP,CAAC,CAAC,sCAAsC,EAAE;AACzC6F,UAAAA,OAAO,EAAEC,UAAU,CAACL,WAAW,CAACI,OAAO;AACzC,SAAC,CAAC;AAAA,OACQ,CAAC;AAAA,KACV,CACN,eACDtF,GAAA,CAACU,MAAM,EAAAiD,aAAA,CAAA;AACL,MAAA,aAAA,EAAY,mCAAmC;AAC/ChD,MAAAA,KAAK,EAAElB,CAAC,CAAC,uDAAuD,EAAE;QAChE6F,OAAO,EAAEJ,WAAW,CAACI;OACtB;KAAE,EACCiD,mBAAmB,CACxB,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;;;;;AChED,IAAMa,aAAa,GAAGC,KAAK,CAAC,UAAAxK,IAAA,EAAA;AAAA,EAAA,IAAGY,CAAC,GAAAZ,IAAA,CAADY,CAAC;IAAEoF,cAAc,GAAAhG,IAAA,CAAdgG,cAAc;IAAEyE,QAAQ,GAAAzK,IAAA,CAARyK,QAAQ;IAAExJ,SAAS,GAAAjB,IAAA,CAATiB,SAAS;AAAA,EAAA,oBACnED,IAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,4BAA4B;AACxCC,IAAAA,SAAS,EAAEkJ,UAAU,CACnB,8DAA8D,EAC9DlJ,SACF,CAAE;AAAAC,IAAAA,QAAA,gBAEFF,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,gEAAgE;MAAAC,QAAA,EAAA,cAC7EC,GAAA,CAACgB,UAAU,EAAA;AACTlB,QAAAA,SAAS,EAAC,aAAa;AACvB,QAAA,aAAA,EAAY,0BAA0B;AACtCe,QAAAA,OAAO,EAAC,IAAI;AAAAd,QAAAA,QAAA,EAEXN,CAAC,CAAC,qDAAqD,EAAE;AACxD6F,UAAAA,OAAO,EAAEC,UAAU,CAACL,WAAW,CAACI,OAAO;SACxC;AAAC,OACQ,CAAC,eACbtF,GAAA,CAACgB,UAAU,EAAA;AACTlB,QAAAA,SAAS,EAAC,aAAa;AACvB,QAAA,aAAA,EAAY,gCAAgC;AAC5Ce,QAAAA,OAAO,EAAC,OAAO;AAAAd,QAAAA,QAAA,EAEdN,CAAC,CAAC,0CAA0C,EAAE;AAC7C6F,UAAAA,OAAO,EAAEC,UAAU,CAACL,WAAW,CAACI,OAAO;SACxC;AAAC,OACQ,CAAC;AAAA,KACV,CAAC,eACNtF,GAAA,CAACU,MAAM,EAAA;AACL,MAAA,aAAA,EAAY,2BAA2B;MACvCvC,IAAI,EAAE,SAANA,IAAIA,GAAA;QAAA,oBAAQ6B,GAAA,CAACuG,UAAU,EAAA;AAACzG,UAAAA,SAAS,EAAC,kBAAkB;AAACiB,UAAAA,IAAI,EAAE;AAAG,SAAE,CAAC;MAAA,CAAC;AAClEJ,MAAAA,KAAK,EAAElB,CAAC,CAAC,sCAAsC,CAAE;MACjDmB,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQiE,cAAc,CAACyE,QAAQ,CAAC;AAAA,MAAA;AAAC,KACzC,CAAC;AAAA,GACC,CAAC;AAAA,CACP,CAAC;;AC7BF,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAA1K,IAAA,EAYV;AAAA,EAAA,IAAA2K,gBAAA,GAAA3K,IAAA,CAXJqI,WAAW;AAAXA,IAAAA,WAAW,GAAAsC,gBAAA,KAAA,MAAA,GAAGnF,wBAAwB,CAACC,OAAO,GAAAkF,gBAAA;IAAAC,mBAAA,GAAA5K,IAAA,CAC9CgG,cAAc;AAAdA,IAAAA,cAAc,GAAA4E,mBAAA,KAAA,MAAA,GAAGC,IAAI,GAAAD,mBAAA;IAAAE,oBAAA,GAAA9K,IAAA,CACrBoI,eAAe;AAAfA,IAAAA,eAAe,GAAA0C,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAC,qBAAA,GAAA/K,IAAA,CACpB0J,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAqB,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,qBAAA,GAAAhL,IAAA,CACxB6H,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAmD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,eAAA,GAAAjL,IAAA,CACxBkL,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,eAAA;IAAAE,qBAAA,GAAAnL,IAAA,CACjBoL,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAE,qBAAA,GAAArL,IAAA,CACxBsL,sBAAsB;AAAtBA,IAAAA,sBAAsB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAAvL,IAAA,CAC3BwL,wBAAwB;AAAxBA,IAAAA,wBAAwB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAC7B5B,6BAA6B,GAAA3J,IAAA,CAA7B2J,6BAA6B;IAAA8B,qBAAA,GAAAzL,IAAA,CAC7BsI,sBAAsB;AAAtBA,IAAAA,sBAAsB,GAAAmD,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;EAE7B,IAAMC,KAAK,GAAGC,OAAO,CACnB,YAAA;IAAA,OACExD,WAAW,CACTC,eAAe,EACfpC,cAAc,EACdqC,WAAW,EACXR,mBAAmB,EACnBS,sBACF,CAAC;AAAA,EAAA,CAAA,EACH,CAACF,eAAe,EAAEE,sBAAsB,CAC1C,CAAC;AAED,EAAA,IAAMsD,QAAQ,GAAGC,MAAM,CAACxD,WAAW,CAAC;AACpC,EAAA,IAAMyD,mBAAmB,GAAGD,MAAM,CAAC,KAAK,CAAC;AACzC,EAAA,IAAME,wBAAwB,GAAGF,MAAM,CAAC,KAAK,CAAC;;AAE9C;AACA;AACAxC,EAAAA,eAAe,CAAC,YAAM;AACpB,IAAA,IAAM2C,aAAa,GAAGF,mBAAmB,CAACG,OAAO;IACjDH,mBAAmB,CAACG,OAAO,GAAG,KAAK;IAEnC,IAAMC,wBAAwB,GAC5B5D,sBAAsB,IACtB,CAAC0D,aAAa,IACd3D,WAAW,KAAK7C,wBAAwB,CAACG,IAAI,IAC7CiG,QAAQ,CAACK,OAAO,KAAK5D,WAAW,IAChCuD,QAAQ,CAACK,OAAO,KAAKzG,wBAAwB,CAACE,SAAS;AAEzD,IAAA,IAAIwG,wBAAwB,EAAE;MAC5BH,wBAAwB,CAACE,OAAO,GAAG,IAAI;AACvCjG,MAAAA,cAAc,CAACR,wBAAwB,CAACE,SAAS,CAAC;AACpD,IAAA;AACF,EAAA,CAAC,EAAE,CAAC2C,WAAW,CAAC,CAAC;AAEjB,EAAA,IAAA1E,SAAA,GAAkCC,QAAQ,CAAC,EAAE,CAAC;IAAAG,UAAA,GAAAC,cAAA,CAAAL,SAAA,EAAA,CAAA,CAAA;AAAvCwI,IAAAA,SAAS,GAAApI,UAAA,CAAA,CAAA,CAAA;AAAEqI,IAAAA,YAAY,GAAArI,UAAA,CAAA,CAAA,CAAA;AAE9B,EAAA,IAAMsI,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAGC,OAAO,EAAA;AAAA,IAAA,OACpCZ,KAAK,CAACa,SAAS,CAAC,UAAA7D,IAAI,EAAA;AAAA,MAAA,OAAIA,IAAI,CAACrJ,GAAG,KAAKiN,OAAO;IAAA,CAAA,CAAC;AAAA,EAAA,CAAA;AAE/CvC,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI1B,WAAW,KAAKuD,QAAQ,CAACK,OAAO,EAAE;;AAEtC;AACA;IACA,IAAIF,wBAAwB,CAACE,OAAO,EAAE;MACpCF,wBAAwB,CAACE,OAAO,GAAG,KAAK;AAExC,MAAA;AACF,IAAA;AAEAG,IAAAA,YAAY,CACVC,sBAAsB,CAAChE,WAAW,CAAC,GACjCgE,sBAAsB,CAACT,QAAQ,CAACK,OAAO,CAAC,GACtC,SAAS,GACT,UACN,CAAC;IACDL,QAAQ,CAACK,OAAO,GAAG5D,WAAW;AAChC,EAAA,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;AAEjB,EAAA,IAAIA,WAAW,KAAK7C,wBAAwB,CAACC,OAAO,EAAE;IACpD,oBACEtE,GAAA,CAACoJ,aAAa,EAAA;AACNlC,MAAAA,WAAW,EAAXA,WAAW;AAAErC,MAAAA,cAAc,EAAdA,cAAc;AACjC/E,MAAAA,SAAS,EAAEqK,sBAAuB;AAClCb,MAAAA,QAAQ,EAAEiB,KAAK,CAAC,CAAC,CAAC,CAACrM;AAAI,KACxB,CAAC;AAEN,EAAA;AAEA,EAAA,IAAIgJ,WAAW,KAAK7C,wBAAwB,CAACI,MAAM,EAAE;IACnD,oBACEzE,GAAA,CAACsI,eAAe,EAAA;AACRC,MAAAA,mBAAmB,EAAnBA,mBAAmB;AAAEC,MAAAA,6BAA6B,EAA7BA,6BAA6B;AACxD1I,MAAAA,SAAS,EAAEuK;AAAyB,KACrC,CAAC;AAEN,EAAA;AAEA,EAAA,IAAMgB,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,KAAK,EAAI;AAChC,IAAA,IAAMH,OAAO,GAAGZ,KAAK,CAACe,KAAK,CAAC,CAACpN,GAAG;IAChC,IAAIiN,OAAO,KAAKjE,WAAW,EAAE;IAE7ByD,mBAAmB,CAACG,OAAO,GAAG,IAAI;IAClCjG,cAAc,CAACsG,OAAO,CAAC;EACzB,CAAC;AAED,EAAA,IAAMI,gBAAgB,GAAGhB,KAAK,CAAC5E,MAAM,GAAG,CAAC;AAEzC,EAAA,oBACE9F,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAEgG,UAAU,CACnB,qDAAqD,EACrD;AAAE,MAAA,mBAAmB,EAAE,CAACyF;AAAiB,KAC3C,CAAE;IAAAxL,QAAA,EAAA,CAEDwL,gBAAgB,iBACfvL,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,uFAAuF;MAAAC,QAAA,eACpGC,GAAA,CAACwL,OAAO,EAAA;AACAjB,QAAAA,KAAK,EAALA,KAAK;QACXkB,WAAW,EAAEC,WAAW,CAAC;AAAExN,UAAAA,GAAG,EAAEgJ;SAAa,EAAEqD,KAAK,CAAE;AACtDoB,QAAAA,WAAW,EAAE1B,gBAAgB,GAAG2B,SAAS,GAAGP;OAC7C;KACE,CACN,EACAd,KAAK,CAACxE,GAAG,CAAC,UAACwB,IAAI,EAAE+D,KAAK,EAAA;AAAA,MAAA,oBACrBtL,GAAA,CAAA,KAAA,EAAA;AAEEF,QAAAA,SAAS,EAAEgG,UAAU,CAAC,qCAAqC,EAAE;AAC3D,UAAA,+DAA+D,EAC7DiE,UAAU,IAAIiB,SAAS,KAAK,SAAS;AACvC,UAAA,gEAAgE,EAC9DjB,UAAU,IAAIiB,SAAS,KAAK,UAAU;AACxCa,UAAAA,MAAM,EAAE3E,WAAW,KAAKK,IAAI,CAACrJ;AAC/B,SAAC,CAAE;AAAA6B,QAAAA,QAAA,EAEFwH,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJA,IAAI,CAAEF;AAAO,OAAA,EATTiE,KAUF,CAAC;AAAA,IAAA,CACP,CAAC;AAAA,GACC,CAAC;AAEV;;;;","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"Onboarding.js","sources":["../../node_modules/lucide-react/dist/esm/icons/arrow-right.mjs","../../node_modules/lucide-react/dist/esm/icons/notebook-text.mjs","../../src/v2/components/Onboarding/Community/constants.js","../../src/v2/components/Onboarding/Community/EmailRecipient.jsx","../../src/v2/components/Onboarding/Community/api.js","../../src/v2/components/Onboarding/Community/hooks/useJoinCommunity.js","../../src/v2/components/Onboarding/Community/utils.js","../../src/v2/components/Onboarding/Community/hooks/useRecipientEmails.js","../../src/v2/components/Onboarding/constants.js","../../src/v2/components/Onboarding/Community/index.jsx","../../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.24.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.mjs';\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.mjs.map\n","/**\n * @license lucide-react v1.24.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.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M2 6h4\", key: \"aawbzj\" }],\n [\"path\", { d: \"M2 10h4\", key: \"l0bgd4\" }],\n [\"path\", { d: \"M2 14h4\", key: \"1gsvsf\" }],\n [\"path\", { d: \"M2 18h4\", key: \"1bu2t1\" }],\n [\"rect\", { width: \"16\", height: \"20\", x: \"4\", y: \"2\", rx: \"2\", key: \"1nb95v\" }],\n [\"path\", { d: \"M9.5 8h5\", key: \"11mslq\" }],\n [\"path\", { d: \"M9.5 12H16\", key: \"ktog6x\" }],\n [\"path\", { d: \"M9.5 16H14\", key: \"p1seyn\" }]\n];\nconst NotebookText = createLucideIcon(\"notebook-text\", __iconNode);\n\nexport { __iconNode, NotebookText as default };\n//# sourceMappingURL=notebook-text.mjs.map\n","import { CircleUser, NotebookText } from \"lucide-react\";\n\nexport const COMMUNITY_OPTIONS = [\n {\n key: \"slack\",\n icon: CircleUser,\n dataTestid: \"onboarding-community-slack-checkbox\",\n recipientDataTestids: {\n change: \"onboarding-community-slack-email-change-button\",\n input: \"onboarding-community-slack-email-input\",\n save: \"onboarding-community-slack-email-save-button\",\n cancel: \"onboarding-community-slack-email-cancel-button\",\n },\n },\n {\n key: \"blog\",\n icon: NotebookText,\n dataTestid: \"onboarding-community-blog-checkbox\",\n recipientDataTestids: {\n change: \"onboarding-community-blog-email-change-button\",\n input: \"onboarding-community-blog-email-input\",\n save: \"onboarding-community-blog-email-save-button\",\n cancel: \"onboarding-community-blog-email-cancel-button\",\n },\n },\n];\n","import { Mail } from \"lucide-react\";\nimport { Button, Input, Typography } from \"neetoatoms\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nconst EmailRecipient = ({\n email,\n edit,\n onStartEditing,\n onDraftChange,\n onSave,\n onCancel,\n recipientKey,\n inputLabelKey,\n dataTestids,\n}) => {\n const { t } = useTranslation();\n\n const handleKeyDown = event => {\n if (event.key === \"Enter\") {\n event.preventDefault();\n onSave();\n }\n\n if (event.key === \"Escape\") onCancel();\n };\n\n if (edit) {\n return (\n <div className=\"flex flex-wrap items-start gap-2 ps-6 pt-3\">\n <div className=\"w-full sm:w-72\">\n <Input\n autoFocus\n aria-label={t(inputLabelKey)}\n data-testid={dataTestids.input}\n error={edit.error}\n type=\"email\"\n value={edit.draft}\n onChange={event => onDraftChange(event.target.value)}\n onKeyDown={handleKeyDown}\n />\n </div>\n <Button\n data-testid={dataTestids.save}\n label={t(\"neetoMolecules.common.actions.save\")}\n onClick={onSave}\n />\n <Button\n data-testid={dataTestids.cancel}\n label={t(\"neetoMolecules.common.actions.cancel\")}\n variant=\"ghost\"\n onClick={onCancel}\n />\n </div>\n );\n }\n\n return (\n <div className=\"flex items-start gap-2 ps-6 pt-3\">\n <Mail\n aria-hidden\n className=\"text-muted-foreground mt-0.5 shrink-0\"\n size={16}\n />\n <div className=\"flex min-w-0 flex-wrap items-center gap-x-2\">\n <Typography className=\"break-words\" color=\"muted\" variant=\"body2\">\n <Trans\n components={{ strong: <strong className=\"text-foreground\" /> }}\n i18nKey={recipientKey}\n values={{ email }}\n />\n </Typography>\n <Button\n data-testid={dataTestids.change}\n label={t(\"neetoMolecules.onboarding.communityScreen.changeButton\")}\n size=\"sm\"\n variant=\"link\"\n onClick={onStartEditing}\n />\n </div>\n </div>\n );\n};\n\nexport default EmailRecipient;\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/v2/constants\";\n\nconst joinCommunity = communityJoin =>\n axios.post(\n `${BASE_API_V1_URL}/community_join`,\n { communityJoin },\n { showToastr: false }\n );\n\nconst communityApi = { joinCommunity };\n\nexport default communityApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport communityApi from \"../api\";\n\nconst useJoinCommunity = () =>\n useMutation({ mutationFn: communityApi.joinCommunity });\n\nexport default useJoinCommunity;\n","import * as yup from \"yup\";\n\nexport const isValidEmail = email =>\n !!email && yup.string().email().isValidSync(email);\n","import { useState } from \"react\";\n\nimport { t } from \"i18next\";\nimport { assoc, dissoc } from \"ramda\";\n\nimport { isValidEmail } from \"../utils\";\n\n// Tracks the email each option goes to, plus any address being edited, so\n// Continue can pick up a draft the user typed but did not save.\nconst useRecipientEmails = defaultEmail => {\n const [emails, setEmails] = useState({\n slack: defaultEmail,\n blog: defaultEmail,\n });\n\n // { [key]: { draft, error } } for the options whose email field is open.\n const [edits, setEdits] = useState({});\n\n const startEditing = key =>\n setEdits(assoc(key, { draft: emails[key], error: \"\" }));\n\n const changeDraft = (key, draft) =>\n setEdits(assoc(key, { draft, error: \"\" }));\n\n const cancel = key => setEdits(dissoc(key));\n\n const validate = key => {\n const draft = edits[key].draft.trim();\n\n return isValidEmail(draft)\n ? { draft }\n : { error: t(\"neetoMolecules.onboarding.communityScreen.invalidEmail\") };\n };\n\n const save = key => {\n const { draft, error } = validate(key);\n\n if (error) {\n setEdits(assoc(key, { ...edits[key], error }));\n\n return;\n }\n\n setEmails(assoc(key, draft));\n setEdits(dissoc(key));\n };\n\n // Applies every open draft of the given options. Returns the final emails,\n // or null when a draft is invalid, after showing its error.\n const applyDrafts = keys => {\n let nextEmails = emails;\n let nextEdits = edits;\n\n keys\n .filter(key => edits[key])\n .forEach(key => {\n const { draft, error } = validate(key);\n\n if (error) {\n nextEdits = assoc(key, { ...edits[key], error }, nextEdits);\n } else {\n nextEmails = assoc(key, draft, nextEmails);\n nextEdits = dissoc(key, nextEdits);\n }\n });\n\n setEmails(nextEmails);\n setEdits(nextEdits);\n\n const hasInvalidDraft = keys.some(key => nextEdits[key]);\n\n return hasInvalidDraft ? null : nextEmails;\n };\n\n return {\n emails,\n edits,\n startEditing,\n changeDraft,\n cancel,\n save,\n applyDrafts,\n };\n};\n\nexport default useRecipientEmails;\n","export const GENERAL_ONBOARDING_STEPS = {\n WELCOME: \"welcome\",\n COMMUNITY: \"community\",\n HELP: \"help\",\n FINISH: \"finish\",\n};\n","import { useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { ArrowRight } from \"lucide-react\";\nimport { Button, Checkbox, Typography } from \"neetoatoms\";\nimport { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { COMMUNITY_OPTIONS } from \"./constants\";\nimport EmailRecipient from \"./EmailRecipient\";\nimport useJoinCommunity from \"./hooks/useJoinCommunity\";\nimport useRecipientEmails from \"./hooks/useRecipientEmails\";\n\nimport { GENERAL_ONBOARDING_STEPS } from \"../constants\";\n\nconst Community = ({ setCurrentStep, communityScreenClassName }) => {\n const { t } = useTranslation();\n\n const [selected, setSelected] = useState({ slack: true, blog: true });\n\n // Both start at the signed-in user's email; each can be changed separately.\n const recipients = useRecipientEmails(globalProps.user?.email);\n\n const { mutate: joinCommunity } = useJoinCommunity();\n\n const appName = capitalize(globalProps.appName ?? \"\");\n\n const handleContinue = () => {\n const selectedKeys = Object.keys(selected).filter(key => selected[key]);\n\n // An address typed but not saved still counts; an invalid one keeps the\n // user here with its error showing.\n const emails = recipients.applyDrafts(selectedKeys);\n if (!emails) return;\n\n // The Slack invite and blog subscription are both sent by email in the\n // background, so onboarding moves on without waiting for them.\n if (selectedKeys.length > 0) {\n joinCommunity({\n ...selected,\n slackEmail: emails.slack,\n blogEmail: emails.blog,\n });\n }\n\n setCurrentStep(GENERAL_ONBOARDING_STEPS.HELP);\n };\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 communityScreenClassName\n )}\n >\n <div className=\"space-y-2\">\n <Typography data-testid=\"onboarding-community-title\" variant=\"h2\">\n {t(\"neetoMolecules.onboarding.communityScreen.title\")}\n </Typography>\n <Typography\n data-testid=\"onboarding-community-description\"\n variant=\"body1\"\n >\n {t(\"neetoMolecules.onboarding.communityScreen.description\", {\n appName,\n })}\n </Typography>\n </div>\n <div className=\"border-border flex w-full flex-col gap-6 rounded-lg border p-3 lg:p-6\">\n {COMMUNITY_OPTIONS.map(\n ({ key, icon: Icon, dataTestid, recipientDataTestids }) => (\n <div className=\"w-full\" key={key}>\n <Checkbox\n checked={selected[key]}\n className=\"[&_[role=checkbox]]:mt-1.5!\"\n data-testid={dataTestid}\n id={dataTestid}\n labelProps={{ className: \"text-xl font-semibold\" }}\n label={\n <span className=\"flex flex-wrap items-center gap-2\">\n {t(\n `neetoMolecules.onboarding.communityScreen.${key}.title`,\n { appName }\n )}\n <Icon aria-hidden size={24} />\n </span>\n }\n onCheckedChange={checked => {\n setSelected(assoc(key, checked));\n if (!checked) recipients.cancel(key);\n }}\n />\n <Typography className=\"ps-6 pt-2\" color=\"muted\" variant=\"body1\">\n {t(\n `neetoMolecules.onboarding.communityScreen.${key}.description`\n )}\n </Typography>\n {selected[key] && (\n <EmailRecipient\n dataTestids={recipientDataTestids}\n edit={recipients.edits[key]}\n email={recipients.emails[key]}\n inputLabelKey={`neetoMolecules.onboarding.communityScreen.${key}.emailInputLabel`}\n recipientKey={`neetoMolecules.onboarding.communityScreen.${key}.recipient`}\n onCancel={() => recipients.cancel(key)}\n onDraftChange={draft => recipients.changeDraft(key, draft)}\n onSave={() => recipients.save(key)}\n onStartEditing={() => recipients.startEditing(key)}\n />\n )}\n </div>\n )\n )}\n </div>\n <Typography color=\"muted\" variant=\"body2\">\n {t(\"neetoMolecules.onboarding.communityScreen.unsubscribe\")}\n </Typography>\n <Button\n data-testid=\"community-onboarding-continue-button\"\n icon={() => <ArrowRight className=\"rtl:scale-x-[-1]\" size={16} />}\n iconPosition=\"right\"\n label={t(\"neetoMolecules.onboarding.communityScreen.continueButton\")}\n onClick={handleContinue}\n />\n </div>\n );\n};\n\nexport default Community;\n","import classNames from \"classnames\";\nimport { ArrowRight } from \"lucide-react\";\nimport { Button, Typography } from \"neetoatoms\";\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 data-testid=\"onboarding-help-title\" variant=\"h2\">\n {t(\"neetoMolecules.onboarding.helpScreen.title\")}\n </Typography>\n <Typography data-testid=\"onboarding-help-description\" variant=\"body1\">\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_Tf5HKba-ZF.png\"\n />\n ) : (\n <img\n alt=\"\"\n src=\"https://ik.imagekit.io/d9mvewbju/Commons/NeetoMolecules/help-support-desktop_3cIiUGEee.png\"\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 Community from \"./Community\";\nimport { GENERAL_ONBOARDING_STEPS } from \"./constants\";\nimport HelpScreen from \"./HelpScreen\";\n\nexport const createSteps = (\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName,\n isCommunityStepVisible\n) => {\n const communityStep = {\n key: GENERAL_ONBOARDING_STEPS.COMMUNITY,\n label: t(\"neetoMolecules.onboarding.communityLabel\"),\n element: <Community {...{ setCurrentStep }} />,\n };\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(isCommunityStepVisible ? [communityStep, helpStep] : 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=\"h2\"\n >\n 🎉\n </Typography>\n <Typography\n className=\"text-center\"\n data-testid=\"onboarding-congratulations-title\"\n variant=\"h2\"\n >\n <span className=\"text-success-foreground\">\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=\"h2\"\n >\n {t(\"neetoMolecules.onboarding.helpScreen.welcomeToTitle\", {\n appName: capitalize(globalProps.appName),\n })}\n </Typography>\n <Typography\n className=\"text-center\"\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, useLayoutEffect, 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 isCommunityStepVisible = true,\n}) => {\n const steps = useMemo(\n () =>\n createSteps(\n onboardingSteps,\n setCurrentStep,\n currentStep,\n helpScreenClassName,\n isCommunityStepVisible\n ),\n [onboardingSteps, isCommunityStepVisible]\n );\n\n const prevStep = useRef(currentStep);\n const isStepperNavigation = useRef(false);\n const isRedirectingToCommunity = useRef(false);\n\n // Products move from their last step straight to Help. Send them through\n // the community step first, unless they picked Help in the stepper.\n useLayoutEffect(() => {\n const isFromStepper = isStepperNavigation.current;\n isStepperNavigation.current = false;\n\n const shouldShowCommunityFirst =\n isCommunityStepVisible &&\n !isFromStepper &&\n currentStep === GENERAL_ONBOARDING_STEPS.HELP &&\n prevStep.current !== currentStep &&\n prevStep.current !== GENERAL_ONBOARDING_STEPS.COMMUNITY;\n\n if (shouldShowCommunityFirst) {\n isRedirectingToCommunity.current = true;\n setCurrentStep(GENERAL_ONBOARDING_STEPS.COMMUNITY);\n }\n }, [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 // Help is skipped over on the way to the community step, so the\n // animation should run from the step before it.\n if (isRedirectingToCommunity.current) {\n isRedirectingToCommunity.current = false;\n\n return;\n }\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 => {\n const stepKey = steps[index].key;\n if (stepKey === currentStep) return;\n\n isStepperNavigation.current = true;\n setCurrentStep(stepKey);\n };\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 * To show the community step, where users can join the Neeto Slack\n * community and subscribe to the product's blog. It sits just before Help.\n */\n isCommunityStepVisible: PropTypes.bool,\n};\n\nexport default Onboarding;\n"],"names":["__iconNode","COMMUNITY_OPTIONS","key","icon","CircleUser","dataTestid","recipientDataTestids","change","input","save","cancel","NotebookText","EmailRecipient","_ref","email","edit","onStartEditing","onDraftChange","onSave","onCancel","recipientKey","inputLabelKey","dataTestids","_useTranslation","useTranslation","t","handleKeyDown","event","preventDefault","_jsxs","className","children","_jsx","Input","autoFocus","error","type","value","draft","onChange","target","onKeyDown","Button","label","onClick","variant","Mail","size","Typography","color","Trans","components","strong","i18nKey","values","joinCommunity","communityJoin","axios","post","concat","BASE_API_V1_URL","showToastr","communityApi","useJoinCommunity","useMutation","mutationFn","isValidEmail","yup","string","isValidSync","useRecipientEmails","defaultEmail","_useState","useState","slack","blog","_useState2","_slicedToArray","emails","setEmails","_useState3","_useState4","edits","setEdits","startEditing","assoc","changeDraft","dissoc","validate","trim","_validate","_objectSpread","applyDrafts","keys","nextEmails","nextEdits","filter","forEach","_validate2","hasInvalidDraft","some","GENERAL_ONBOARDING_STEPS","WELCOME","COMMUNITY","HELP","FINISH","Community","_globalProps$user","_globalProps$appName","setCurrentStep","communityScreenClassName","selected","setSelected","recipients","globalProps","user","_useJoinCommunity","mutate","appName","capitalize","handleContinue","selectedKeys","Object","length","slackEmail","blogEmail","classNames","map","_ref2","Icon","Checkbox","checked","id","labelProps","onCheckedChange","ArrowRight","iconPosition","HelpScreen","helpScreenClassName","_useBreakpoints","useBreakpoints","isSize","alt","src","createSteps","onboardingSteps","currentStep","isCommunityStepVisible","communityStep","element","helpStep","step","idx","getWindowDimensions","window","width","innerWidth","height","innerHeight","useWindowDimensions","windowDimensions","setWindowDimensions","useLayoutEffect","handleResize","addEventListener","removeEventListener","CompletedScreen","completeButtonProps","completedScreenSuccessMessage","dropConfetti","setDropConfetti","_useWindowDimensions","useEffect","timer","setTimeout","clearTimeout","classnames","Confetti","recycle","isPresent","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","_ref$isCommunityStepV","steps","useMemo","prevStep","useRef","isStepperNavigation","isRedirectingToCommunity","isFromStepper","current","shouldShowCommunityFirst","direction","setDirection","getOnboardingStepIndex","stepKey","findIndex","handleStepChange","index","isStepperVisible","Stepper","activeIndex","findIndexBy","onStepClick","undefined","hidden"],"mappings":"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","x_google_ignoreList":[0,1]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "5.5.3",
3
+ "version": "5.5.5",
4
4
  "description": "A package of reusable molecular components for neeto products.",
5
5
  "repository": "git@github.com:bigbinary/neeto-molecules.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "لنخصص {{appName, anyCase}} لتلبية احتياجاتك.",
978
978
  "readyToUse": "إن {{appName, anyCase}} جاهز للاستخدام.",
979
979
  "helpScreen": {
980
- "title": "البحث عن مقالات المساعدة ودعم الدردشة",
980
+ "title": "البحث عن مقالات المساعدة والدردشة مع الدعم",
981
981
  "welcomeToTitle": "مرحبًا بك في {{appName, anyCase}}",
982
- "description": "إذا كان لديك أي أسئلة في أي وقت، حرك مؤشر الماوس على صورتك الشخصية في الزاوية اليسرى السفلى من الشاشة. الآن يمكنك النقر على <strong>مركز المساعدة</strong> أو النقر على <strong>الدردشة مع الدعم</strong>.",
982
+ "description": "إذا كانت لديك أي أسئلة في أي وقت، انقر على صورة ملفك الشخصي في الزاوية السفلية اليسرى من الشاشة واذهب إلى <strong>المساعدة</strong>. من هناك، انقر على <strong>مقالات المساعدة</strong> أو <strong>الدردشة مع الدعم</strong>.",
983
983
  "continueButton": "استمرار",
984
984
  "startUsingButton": "بدء استخدام {{appName, anyCase}}"
985
985
  },
@@ -295,9 +295,9 @@
295
295
  "letUsCustomize": "Нека персонализираме {{appName, anyCase}}, за да отговаря на вашите нужди.",
296
296
  "readyToUse": "Вашият {{appName, anyCase}} е готов за употреба.",
297
297
  "helpScreen": {
298
- "title": "Намиране на помощни статии & Чат Подкрепа",
298
+ "title": "Намиране на статии за помощ и чат с поддръжка",
299
299
  "welcomeToTitle": "Добре дошли в {{appName, anyCase}}",
300
- "description": "Ако имате въпроси по всяко време, задръжте курсора на профилната снимка в долния ляв ъгъл на екрана. Сега можете да кликнете на <strong>Център за помощ</strong> или на <strong>Чат с Подкрепа</strong>.",
300
+ "description": "Ако имате въпроси по всяко време, кликнете върху профилната си снимка в долния ляв ъгъл на екрана и отидете на <strong>Помощ</strong>. Оттам кликнете на <strong>Статии за помощ</strong> или <strong>Чат с поддръжка</strong>.",
301
301
  "continueButton": "Продължи",
302
302
  "startUsingButton": "Започнете да използвате {{appName, anyCase}}"
303
303
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Personalitzem {{appName, anyCase}} per tal que s'adapti a les teves necessitats.",
978
978
  "readyToUse": "El teu {{appName, anyCase}} està a punt per fer servir.",
979
979
  "helpScreen": {
980
- "title": "Trobar articles d'ajuda & Xat de suport",
980
+ "title": "Trobar articles d'ajuda i xat amb el suport",
981
981
  "welcomeToTitle": "Benvingut a {{appName, anyCase}}",
982
- "description": "Si tens alguna pregunta en qualsevol moment, passa el cursor sobre la teva fotografia de perfil a la part inferior esquerra de la teva pantalla. Ara pots fer clic <strong>Centre d'ajuda</strong> o fer clic <strong>Xateja amb suport</strong>.",
982
+ "description": "Si teniu qualsevol pregunta en qualsevol moment, feu clic a la vostra imatge de perfil a la part inferior esquerra de la pantalla i aneu a <strong>Ajuda</strong>. Des d'allà, feu clic a <strong>Articles d'ajuda</strong> o <strong>Xat amb el suport</strong>.",
983
983
  "continueButton": "Continuar",
984
984
  "startUsingButton": "Comença a fer servir {{appName, anyCase}}"
985
985
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Přizpůsobme {{appName, anyCase}} tak, aby vyhovovalo vašim potřebám.",
978
978
  "readyToUse": "Váš {{appName, anyCase}} je připraven k použití.",
979
979
  "helpScreen": {
980
- "title": "Hledání pomocných článků & Chat podpora",
980
+ "title": "Hledání pomocných článků a chat se zákaznickou podporou",
981
981
  "welcomeToTitle": "Vítejte v {{appName, anyCase}}",
982
- "description": "Pokud máte jakékoli otázky, kdykoli najeďte myší na obrázek svého profilu v levém dolním rohu obrazovky. Nyní můžete kliknout na <strong>Centrum nápovědy</strong> nebo klikněte na <strong>Chat s podporou</strong>.",
982
+ "description": "Pokud máte jakékoli dotazy, klikněte na svou profilovou fotku v levém dolním rohu obrazovky a přejděte na <strong>Pomoc</strong>. Odtud klikněte na <strong>Pomocné články</strong> nebo <strong>Chat se zákaznickou podporou</strong>.",
983
983
  "continueButton": "Pokračovat",
984
984
  "startUsingButton": "Začněte používat {{appName, anyCase}}"
985
985
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Lad os tilpasse {{appName, anyCase}} så det opfylder dine behov.",
978
978
  "readyToUse": "Dit {{appName, anyCase}} er klar til brug.",
979
979
  "helpScreen": {
980
- "title": "Find hjælpeartikler & Chat Support",
980
+ "title": "Find hjælp artikler og chat med support",
981
981
  "welcomeToTitle": "Velkommen til {{appName, anyCase}}",
982
- "description": "Hvis du har spørgsmål når som helst, skal du holde musen over dit profilbillede i nederste venstre hjørne af din skærm. Nu kan du klikke på <strong>Hjælp Center</strong> eller klikke på <strong>Chat med support</strong>.",
982
+ "description": "Hvis du har spørgsmål på noget tidspunkt, skal du klikke på dit profilbillede i nederste venstre hjørne af din skærm og gå til <strong>Hjælp</strong>. Derfra skal du klikke på <strong>Hjælp artikler</strong> eller <strong>Chat med support</strong>.",
983
983
  "continueButton": "Fortsæt",
984
984
  "startUsingButton": "Begynd at bruge {{appName, anyCase}}"
985
985
  },
@@ -813,9 +813,9 @@
813
813
  "letUsCustomize": "Lass uns {{appName, anyCase}} anpassen, damit es Ihren Bedürfnissen entspricht.",
814
814
  "readyToUse": "Ihr {{appName, anyCase}} ist einsatzbereit.",
815
815
  "helpScreen": {
816
- "title": "Hilfeartikel finden & Chat-Support",
816
+ "title": "Hilfeartikel finden und mit dem Support chatten",
817
817
  "welcomeToTitle": "Willkommen bei {{appName, anyCase}}",
818
- "description": "Wenn Sie zu irgendeinem Zeitpunkt Fragen haben, schwenken Sie Ihr Profilbild in der unteren linken Ecke Ihres Bildschirms. Jetzt können Sie auf <strong>Hilfe-Center</strong> klicken oder auf <strong>Chat mit dem Support</strong> klicken.",
818
+ "description": "Wenn Sie zu irgendeinem Zeitpunkt Fragen haben, klicken Sie auf Ihr Profilbild in der unteren linken Ecke Ihres Bildschirms und gehen Sie zu <strong>Hilfe</strong>. Dort klicken Sie auf <strong>Hilfeartikel</strong> oder <strong>Mit Support chatten</strong>.",
819
819
  "continueButton": "Fortfahren",
820
820
  "startUsingButton": "Beginnen Sie mit der Nutzung von {{appName, anyCase}}"
821
821
  },
@@ -784,9 +784,9 @@
784
784
  "letUsCustomize": "Let's customize {{appName, anyCase}} so that it meets your needs.",
785
785
  "readyToUse": "Your {{appName, anyCase}} is ready to use.",
786
786
  "helpScreen": {
787
- "title": "Finding help articles & Chat Support",
787
+ "title": "Finding Help Articles & Chat with Support",
788
788
  "welcomeToTitle": "Welcome to {{appName, anyCase}}",
789
- "description": "If you have any questions at any time hover your profile picture at the bottom left corner of your screen. Now you can click on <strong>Help Center</strong> or click on <strong>Chat with Support</strong>.",
789
+ "description": "If you have any questions at any time, click your profile picture at the bottom left corner of your screen and go to <strong>Help</strong>. From there, click on <strong>Help Articles</strong> or <strong>Chat with Support</strong>.",
790
790
  "continueButton": "Continue",
791
791
  "startUsingButton": "Start using {{appName, anyCase}}"
792
792
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Personalicemos {{appName, anyCase}} para que satisfaga tus necesidades.",
978
978
  "readyToUse": "Tu {{appName, anyCase}} está lista para usar.",
979
979
  "helpScreen": {
980
- "title": "Encontrando artículos de ayuda & Soporte por Chat",
980
+ "title": "Encontrando Artículos de Ayuda y Chateando con Soporte",
981
981
  "welcomeToTitle": "Bienvenido a {{appName, anyCase}}",
982
- "description": "Si tienes alguna pregunta en cualquier momento, pasa el mouse sobre tu foto de perfil en la esquina inferior izquierda de tu pantalla. Ahora puedes hacer clic en <strong>Centro de ayuda</strong> o hacer clic en <strong>Chat con Soporte</strong>.",
982
+ "description": "Si tienes alguna pregunta en cualquier momento, haz clic en tu imagen de perfil en la esquina inferior izquierda de tu pantalla y ve a <strong>Ayuda</strong>. Desde allí, haz clic en <strong>Artículos de Ayuda</strong> o <strong>Chatear con Soporte</strong>.",
983
983
  "continueButton": "Continuar",
984
984
  "startUsingButton": "Comenzar a usar {{appName, anyCase}}"
985
985
  },
@@ -813,9 +813,9 @@
813
813
  "letUsCustomize": "Personalicemos {{appName, anyCase}} para que se ajuste a tus necesidades.",
814
814
  "readyToUse": "Tu {{appName, anyCase}} está listo para usar.",
815
815
  "helpScreen": {
816
- "title": "Encontrando artículos de ayuda & Soporte de Chat",
816
+ "title": "Encontrar artículos de ayuda y chatear con soporte",
817
817
  "welcomeToTitle": "Bienvenido a {{appName, anyCase}}",
818
- "description": "Si tienes alguna pregunta, en cualquier momento pasa el cursor sobre tu imagen de perfil en la esquina inferior izquierda de tu pantalla. Ahora puedes hacer clic en <strong>Centro de Ayuda</strong> o hacer clic en <strong>Chatear con Soporte</strong>.",
818
+ "description": "Si tienes alguna pregunta en cualquier momento, haz clic en tu foto de perfil en la esquina inferior izquierda de tu pantalla y ve a <strong>Ayuda</strong>. Desde allí, haz clic en <strong>Artículos de ayuda</strong> o <strong>Chatear con soporte</strong>.",
819
819
  "continueButton": "Continuar",
820
820
  "startUsingButton": "Comienza a usar {{appName, anyCase}}"
821
821
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Kohandame {{appName, anyCase}} vastavalt teie vajadustele.",
978
978
  "readyToUse": "Teie {{appName, anyCase}} on kasutamiseks valmis.",
979
979
  "helpScreen": {
980
- "title": "Abiartiklite leidmine & Vestlushotline",
980
+ "title": "Abi artiklite leidmine ja toega vestlemine",
981
981
  "welcomeToTitle": "Tere tulemast {{appName, anyCase}}",
982
- "description": "Kui teil on küsimusi, liikuge oma profiilipildi poole vasakus alanurgas. Nüüd saate klõpsata <strong>Abi keskus</strong> või klõpsake <strong>Vestlege toega</strong>.",
982
+ "description": "Kui teil on küsimusi, klõpsake oma profiilipildile ekraani vasakus alanurgas ja minge <strong>Abi</strong>. Sealt edasi klõpsake <strong>Abi artiklite</strong> või <strong>Toega vestlema</strong>.",
983
983
  "continueButton": "Jätka",
984
984
  "startUsingButton": "Hakka kasutama {{appName, anyCase}}"
985
985
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Mukautetaan {{appName, anyCase}} niin, että se vastaa tarpeitasi.",
978
978
  "readyToUse": "Sinun {{appName, anyCase}} on valmis käytettäväksi.",
979
979
  "helpScreen": {
980
- "title": "Apua artikkeleiden löytämisessä & Chat-tuki",
980
+ "title": "Etsi ohjeartikkeleita ja keskustele tuen kanssa",
981
981
  "welcomeToTitle": "Tervetuloa {{appName, anyCase}}",
982
- "description": "Jos sinulla on kysyttävää, vie hiiri profiilikuvasi päälle näytön vasemmassa alakulmassa. Nyt voit napsauttaa <strong>Apu keskukseen</strong> tai napsauttaa <strong>Ota yhteyttä tukeen</strong>.",
982
+ "description": "Jos sinulla on kysymyksiä milloin tahansa, napsauta profiilikuvaasi näytön vasemmassa alakulmassa ja siirry <strong>Apua</strong>. Sieltä voit napsauttaa <strong>Ohjeartikkeleita</strong> tai <strong>Keskustele tuen kanssa</strong>.",
983
983
  "continueButton": "Jatka",
984
984
  "startUsingButton": "Aloita {{appName, anyCase}}"
985
985
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "I-customize natin ang {{appName, anyCase}} upang matugunan ang iyong mga pangangailangan.",
978
978
  "readyToUse": "Ang iyong {{appName, anyCase}} ay handa nang gamitin.",
979
979
  "helpScreen": {
980
- "title": "Paghahanap ng mga artikulo ng tulong & Tulong sa Chat",
980
+ "title": "Paghahanap ng Mga Artikulo ng Tulong at Makipag-chat sa Suporta",
981
981
  "welcomeToTitle": "Maligayang pagdating sa {{appName, anyCase}}",
982
- "description": "Kung mayroon kang anumang mga katanungan sa anumang oras, i-hover ang iyong larawan sa profile sa ibabang kaliwang sulok ng iyong screen. Ngayon maaari mong i-click ang <strong>Help Center</strong> o i-click ang <strong>Makipag-chat sa Suporta</strong>.",
982
+ "description": "Kung mayroon kang anumang katanungan anumang oras, i-click ang iyong larawan ng profile sa ibabang kaliwang sulok ng iyong screen at pumunta sa <strong>Tulong</strong>. Mula doon, i-click ang <strong>Mga Artikulo ng Tulong</strong> o <strong>Makipag-chat sa Suporta</strong>.",
983
983
  "continueButton": "Magpatuloy",
984
984
  "startUsingButton": "Simulan ang paggamit ng {{appName, anyCase}}"
985
985
  },
@@ -813,9 +813,9 @@
813
813
  "letUsCustomize": "Personnalisons {{appName, anyCase}} afin qu'il réponde à vos besoins.",
814
814
  "readyToUse": "Votre {{appName, anyCase}} est prêt à être utilisé.",
815
815
  "helpScreen": {
816
- "title": "Trouver des articles d'aide & Support de chat",
816
+ "title": "Trouver des articles d'aide & discuter avec le support",
817
817
  "welcomeToTitle": "Bienvenue dans {{appName, anyCase}}",
818
- "description": "Si vous avez des questions à tout moment, survolez votre photo de profil dans le coin inférieur gauche de votre écran. Vous pouvez maintenant cliquer sur <strong>Centre d'Aide</strong> ou cliquer sur <strong>Discuter avec le support</strong>.",
818
+ "description": "Si vous avez des questions à tout moment, cliquez sur votre photo de profil en bas à gauche de votre écran et allez à <strong>Aide</strong>. À partir de là, cliquez sur <strong>Articles d'aide</strong> ou <strong>Discuter avec le support</strong>.",
819
819
  "continueButton": "Continuer",
820
820
  "startUsingButton": "Commencer à utiliser {{appName, anyCase}}"
821
821
  },
@@ -806,9 +806,9 @@
806
806
  "letUsCustomize": "בוא נתאים את {{appName, anyCase}} כך שיתאים לצרכים שלך.",
807
807
  "readyToUse": "ה{{appName, anyCase}} שלך מוכן לשימוש.",
808
808
  "helpScreen": {
809
- "title": "מציאת מאמרי עזרה וצ'אט תמיכה",
809
+ "title": "מציאת מאמרי עזרה וציוץ עם תמיכה",
810
810
  "welcomeToTitle": "ברוך הבא ל{{appName, anyCase}}",
811
- "description": "אם יש לך שאלות בכל עת, ריחף מעל התמונה שלך בפינה השמאלית התחתונה של המסך. עכשיו אתה יכול нажать על <strong>מרכז העזרה</strong> או нажать על <strong>צ'אט עם התמיכה</strong>.",
811
+ "description": "אם יש לך שאלות בכל עת, לחץ על תמונת הפרופיל שלך בפינה השמאלית התחתונה של המסך שלך ועבור ל<strong>עזרה</strong>. משם, לחץ על <strong>מאמרי עזרה</strong> או <strong>צוּץ עם תמיכה</strong>.",
812
812
  "continueButton": "המשך",
813
813
  "startUsingButton": "התחל להשתמש ב{{appName, anyCase}}"
814
814
  },
@@ -295,9 +295,9 @@
295
295
  "letUsCustomize": "चलो {{appName, anyCase}} को अनुकूलित करें ताकि यह आपकी आवश्यकताओं को पूरा कर सके।",
296
296
  "readyToUse": "आपका {{appName, anyCase}} उपयोग के लिए तैयार है।",
297
297
  "helpScreen": {
298
- "title": "मदद लेख और चैट समर्थन खोजना",
298
+ "title": "सहायता लेख और समर्थन से चैट ढूंढना",
299
299
  "welcomeToTitle": "{{appName, anyCase}} में आपका स्वागत है",
300
- "description": "यदि आपके पास किसी भी समय कोई प्रश्न हैं, तो अपने स्क्रीन के निचले बाएं कोने में अपने प्रोफ़ाइल चित्र पर होवर करें। अब आप <strong>मदद केंद्र</strong> पर क्लिक कर सकते हैं या <strong>समर्थन से चैट करें</strong> पर क्लिक करें।",
300
+ "description": "यदि आपके पास किसी भी समय कोई प्रश्न हैं, तो अपने स्क्रीन के निचले बाएँ कोने में अपने प्रोफ़ाइल चित्र पर क्लिक करें और <strong>सहायता</strong> पर जाएँ। वहाँ से, <strong>सहायता लेख</strong> या <strong>समर्थन से चैट</strong> पर क्लिक करें।",
301
301
  "continueButton": "जاری रखें",
302
302
  "startUsingButton": "{{appName, anyCase}} का उपयोग शुरू करें"
303
303
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Prilagodimo {{appName, anyCase}} tako da udovolji vašim potrebama.",
978
978
  "readyToUse": "Vaša {{appName, anyCase}} je spremna za korištenje.",
979
979
  "helpScreen": {
980
- "title": "Pronalaženje članaka pomoći & Chat podrška",
980
+ "title": "Pronalaženje članaka pomoći i chat sa podrškom",
981
981
  "welcomeToTitle": "Dobrodošli u {{appName, anyCase}}",
982
- "description": "Ako imate bilo kakva pitanja u bilo kojem trenutku, pomaknite se na svoju profilnu sliku u donjem lijevom kutu vašeg ekrana. Sada možete kliknuti na <strong>Centar za pomoć</strong> ili kliknuti na <strong>Razgovarajte s podrškom</strong>.",
982
+ "description": "Ako imate bilo kakvih pitanja u bilo kojem trenutku, kliknite na svoju profilnu sliku u donjem lijevom kutu vašeg ekrana i idite na <strong>Pomoć</strong>. Odatle, kliknite na <strong>Članke pomoći</strong> ili <strong>Chat sa podrškom</strong>.",
983
983
  "continueButton": "Nastavi",
984
984
  "startUsingButton": "Započnite koristiti {{appName, anyCase}}"
985
985
  },
@@ -803,9 +803,9 @@
803
803
  "letUsCustomize": "Testre szabjuk a {{appName, anyCase}}-t az igényeinek megfelelően.",
804
804
  "readyToUse": "A {{appName, anyCase}} készen áll a használatra.",
805
805
  "helpScreen": {
806
- "title": "Segítségcikkek keresése & Chat Támogatás",
806
+ "title": "Segítség Cikkek Keresése és Chat a Támogatással",
807
807
  "welcomeToTitle": "Üdvözöljük a {{appName, anyCase}}-ban",
808
- "description": "Ha bármilyen kérdése van, az alsó bal sarokban lebegjen az profilképe fölött. Most rákattinthat a <strong>Segítségközpontra</strong> vagy kattintson az <strong>Újra támogatásra</strong>.",
808
+ "description": "Ha bármikor kérdése van, kattintson a profilképére a képernyő bal alsó sarkában, és menjen a <strong>Segítség</strong> menüpontra. Onnan kattintson a <strong>Segítség Cikkek</strong> vagy a <strong>Chat a Támogatással</strong> lehetőségre.",
809
809
  "continueButton": "Folyatni",
810
810
  "startUsingButton": "Kezdje el használni a {{appName, anyCase}}-t"
811
811
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Mari kita sesuaikan {{appName, anyCase}} sehingga sesuai dengan kebutuhan Anda.",
978
978
  "readyToUse": "{{appName, anyCase}} Anda sudah siap digunakan.",
979
979
  "helpScreen": {
980
- "title": "Menemukan artikel bantuan & Dukungan Obrolan",
980
+ "title": "Menemukan Artikel Bantuan & Chat dengan Dukungan",
981
981
  "welcomeToTitle": "Selamat datang di {{appName, anyCase}}",
982
- "description": "Jika Anda memiliki pertanyaan kapan saja, arahkan ke gambar profil Anda di pojok kiri bawah layar Anda. Sekarang Anda dapat mengklik <strong>Pusat Bantuan</strong> atau mengklik <strong>Obrolan dengan Dukungan</strong>.",
982
+ "description": "Jika Anda memiliki pertanyaan kapan saja, klik foto profil Anda di sudut kiri bawah layar dan pergi ke <strong>Bantuan</strong>. Dari sana, klik pada <strong>Artikel Bantuan</strong> atau <strong>Chat dengan Dukungan</strong>.",
983
983
  "continueButton": "Lanjutkan",
984
984
  "startUsingButton": "Mulai menggunakan {{appName, anyCase}}"
985
985
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "Personalizziamo {{appName, anyCase}} per soddisfare le tue esigenze.",
978
978
  "readyToUse": "Il tuo {{appName, anyCase}} è pronto per essere utilizzato.",
979
979
  "helpScreen": {
980
- "title": "Trova articoli di aiuto e chat di supporto",
980
+ "title": "Trovare articoli di aiuto e chat con il supporto",
981
981
  "welcomeToTitle": "Benvenuto in {{appName, anyCase}}",
982
- "description": "Se hai domande in qualsiasi momento, porta il cursore sopra la tua foto profilo nell'angolo in basso a sinistra dello schermo. Ora puoi cliccare su <strong>Centro assistenza</strong> o cliccare su <strong>Chatta con il supporto</strong>.",
982
+ "description": "Se hai domande in qualsiasi momento, clicca sulla tua immagine del profilo nell'angolo in basso a sinistra dello schermo e vai a <strong>Aiuto</strong>. Da lì, fai clic su <strong>Articoli di aiuto</strong> o <strong>Chat con il supporto</strong>.",
983
983
  "continueButton": "Continua",
984
984
  "startUsingButton": "Inizia a utilizzare {{appName, anyCase}}"
985
985
  },
@@ -977,9 +977,9 @@
977
977
  "letUsCustomize": "{{appName, anyCase}}をお客様のニーズに合わせてカスタマイズしましょう。",
978
978
  "readyToUse": "あなたの{{appName, anyCase}}は使用準備が整いました。",
979
979
  "helpScreen": {
980
- "title": "ヘルプ記事とチャットサポートを見つける",
980
+ "title": "ヘルプ記事を見つける & サポートとチャット",
981
981
  "welcomeToTitle": "{{appName, anyCase}}へようこそ",
982
- "description": "いつでも質問がある場合は、画面の左下隅にあるプロフィール写真にマウスを合わせてください。今、<strong>ヘルプセンター</strong>をクリックするか、<strong>サポートとチャットする</strong>をクリックしてください。",
982
+ "description": "いつでも質問がある場合は、画面の左下隅にあるプロフィール写真をクリックして、<strong>ヘルプ</strong>に移動してください。そこから、<strong>ヘルプ記事</strong>または<strong>サポートとチャット</strong>をクリックします。",
983
983
  "continueButton": "続ける",
984
984
  "startUsingButton": "{{appName, anyCase}}を使用開始する"
985
985
  },