@bigbinary/neeto-molecules 5.1.27 → 5.1.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/TimezoneMismatchModal.js +1 -1
- package/dist/TimezoneMismatchModal.js.map +1 -1
- package/dist/cjs/TimezoneMismatchModal.js +1 -1
- package/dist/cjs/TimezoneMismatchModal.js.map +1 -1
- package/dist/cjs/v2/ErrorPage.js +1 -1
- package/dist/cjs/v2/ErrorPage.js.map +1 -1
- package/dist/cjs/v2/KeyboardShortcuts.js +10 -8
- package/dist/cjs/v2/KeyboardShortcuts.js.map +1 -1
- package/dist/cjs/v2/NeetoWidget.js +12 -12
- package/dist/cjs/v2/NeetoWidget.js.map +1 -1
- package/dist/cjs/v2/Onboarding.js +6 -8
- package/dist/cjs/v2/Onboarding.js.map +1 -1
- package/dist/cjs/v2/PublishBlock.js +24 -15
- package/dist/cjs/v2/PublishBlock.js.map +1 -1
- package/dist/cjs/v2/ResponsiveDevicePicker.js +6 -4
- package/dist/cjs/v2/ResponsiveDevicePicker.js.map +1 -1
- package/dist/cjs/v2/TimezoneMismatchModal.js +1 -1
- package/dist/cjs/v2/TimezoneMismatchModal.js.map +1 -1
- package/dist/v2/ErrorPage.js +1 -1
- package/dist/v2/ErrorPage.js.map +1 -1
- package/dist/v2/KeyboardShortcuts.js +11 -9
- package/dist/v2/KeyboardShortcuts.js.map +1 -1
- package/dist/v2/NeetoWidget.js +12 -12
- package/dist/v2/NeetoWidget.js.map +1 -1
- package/dist/v2/Onboarding.js +6 -8
- package/dist/v2/Onboarding.js.map +1 -1
- package/dist/v2/PublishBlock.js +25 -16
- package/dist/v2/PublishBlock.js.map +1 -1
- package/dist/v2/ResponsiveDevicePicker.js +6 -4
- package/dist/v2/ResponsiveDevicePicker.js.map +1 -1
- package/dist/v2/TimezoneMismatchModal.js +1 -1
- package/dist/v2/TimezoneMismatchModal.js.map +1 -1
- package/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyboardShortcuts.js","sources":["../../src/v2/components/KeyboardShortcuts/Pane/constants.js","../../src/v2/components/KeyboardShortcuts/Pane/utils.js","../../src/v2/components/KeyboardShortcuts/Pane/HotKey.jsx","../../src/v2/components/KeyboardShortcuts/Pane/HotKeyList.jsx","../../src/v2/components/KeyboardShortcuts/Pane/index.jsx","../../src/v2/components/KeyboardShortcuts/index.js"],"sourcesContent":["export const KEY_SHORTFORM_MAP = {\n command: \"\\u2318\",\n escape: \"esc\",\n control: \"ctrl\",\n option: \"opt\",\n return: \"enter\",\n};\n\nexport const MAC_TO_WINDOWS_KEYS_MAP = {\n option: \"alt\",\n command: \"ctrl\",\n return: \"enter\",\n delete: \"backspace\",\n};\n\nexport const OS = { mac: \"macOS\", windows: \"Windows\" };\n\nexport const FULL_SHORTCUTS_LINK_PROP_NAME = \"fullShortcutsLink\";\n\nexport const TOOLTIP_CONTENT = {\n \"\\u2318\": \"command\",\n esc: \"escape\",\n ctrl: \"control\",\n opt: \"option\",\n backspace: \"delete\",\n};\n","import i18next from \"i18next\";\nimport { toPairs } from \"ramda\";\nimport { UAParser } from \"ua-parser-js\";\n\nimport {\n KEY_SHORTFORM_MAP,\n MAC_TO_WINDOWS_KEYS_MAP,\n OS,\n TOOLTIP_CONTENT,\n} from \"./constants\";\n\nconst isMultipleHotkey = hotkey => Array.isArray(hotkey);\n\nconst replaceKeys = (hotkey, keyName, replaceWith) =>\n isMultipleHotkey(hotkey)\n ? hotkey.map(item => item.replaceAll(keyName, replaceWith))\n : hotkey.replaceAll(keyName, replaceWith);\n\nconst convertHotKeyToWindows = hotkey => {\n toPairs(MAC_TO_WINDOWS_KEYS_MAP).forEach(([macKey, windowsKey]) => {\n hotkey = replaceKeys(hotkey, macKey, windowsKey);\n });\n\n return hotkey;\n};\n\nexport const convertHotkeyToUsersPlatform = hotkey => {\n const parser = new UAParser(navigator.userAgent);\n const result = parser.getResult();\n const isOSX = result.os.name?.includes(OS.mac);\n if (isOSX) return hotkey;\n\n return convertHotKeyToWindows(hotkey);\n};\n\nexport const shortenHotKey = hotkey => {\n let result = hotkey;\n Object.entries(KEY_SHORTFORM_MAP).forEach(([longform, shortform]) => {\n result = result.replaceAll(longform, shortform);\n });\n\n return result;\n};\n\nexport const getGlobalShortcuts = () => ({\n [i18next.t(\"neetoMolecules.keyboardShortcuts.global.categoryName\")]: {\n openKeyboardShortcutsPane: {\n sequence: \"command+/\",\n description: i18next.t(\n \"neetoMolecules.keyboardShortcuts.global.openKeyboardShortcutsPane\"\n ),\n },\n close: {\n sequence: \"esc\",\n description: i18next.t(\"neetoMolecules.keyboardShortcuts.global.close\"),\n },\n submitForm: {\n sequence: \"command+return\",\n description: i18next.t(\n \"neetoMolecules.keyboardShortcuts.global.submitForm\"\n ),\n },\n openProductSwitcher: {\n sequence: \"command+u\",\n description: i18next.t(\n \"neetoMolecules.keyboardShortcuts.global.openProductSwitcher\"\n ),\n },\n },\n});\n\nexport const getTooltipProps = key => {\n if (TOOLTIP_CONTENT[key]) {\n return {\n position: \"top\",\n content: TOOLTIP_CONTENT[key],\n followCursor: \"horizontal\",\n };\n }\n\n return null;\n};\n","import { memo, forwardRef, Fragment } from \"react\";\n\nimport { Kbd, Tooltip } from \"@bigbinary/neeto-atoms\";\n\nimport {\n convertHotkeyToUsersPlatform,\n shortenHotKey,\n getTooltipProps,\n} from \"./utils\";\n\nconst KbdWithRef = forwardRef(({ children, ...props }, ref) => (\n <span {...{ ref, ...props }}>\n <Kbd className=\"nv-kbd\">{children}</Kbd>\n </span>\n));\nKbdWithRef.displayName = \"KbdWithRef\";\n\nconst KbdKey = ({ keyName, tooltipProps }) => {\n if (tooltipProps) {\n return (\n <Tooltip content={tooltipProps.content} position=\"top\">\n <KbdWithRef>{keyName}</KbdWithRef>\n </Tooltip>\n );\n }\n\n return <Kbd className=\"nv-kbd\">{keyName}</Kbd>;\n};\n\nconst HotKey = ({ description, sequence }) => {\n const hotkey = shortenHotKey(convertHotkeyToUsersPlatform(sequence));\n const isSequentialHotkey = hotkey.includes(\" \");\n const isSimultaneousHotkey = hotkey.includes(\"+\");\n const isSingleKeyHotkey = !isSequentialHotkey && !isSimultaneousHotkey;\n let sequences = [];\n\n if (isSingleKeyHotkey) {\n sequences = [hotkey];\n } else if (isSequentialHotkey) {\n sequences = hotkey.split(\" \");\n } else if (isSimultaneousHotkey) {\n sequences = hotkey.split(\"+\");\n }\n\n return (\n <div className=\"my-3 w-full\">\n <div\n className=\"flex items-center justify-between gap-3\"\n data-testid=\"hotkey-item\"\n >\n <span className=\"text-foreground min-w-0 flex-grow text-sm leading-normal break-words\">\n {description}\n </span>\n <div className=\"flex flex-shrink-0 items-center gap-1\">\n {sequences.map((keyName, idx) => (\n <Fragment key={idx}>\n <KbdKey\n {...{ keyName }}\n tooltipProps={getTooltipProps(keyName)}\n />\n {isSequentialHotkey && idx + 1 !== sequences.length && (\n <KbdKey keyName=\"then\" />\n )}\n </Fragment>\n ))}\n </div>\n </div>\n </div>\n );\n};\n\nexport default memo(HotKey);\n","import { memo } from \"react\";\n\nimport { Button } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport { FULL_SHORTCUTS_LINK_PROP_NAME } from \"./constants\";\nimport HotKey from \"./HotKey\";\n\nconst HotKeyList = withT(({ t, hotkeys }) =>\n Object.keys(hotkeys).map(categoryName => {\n const categoryValues = hotkeys[categoryName];\n const fullShortcutsLink = categoryValues[FULL_SHORTCUTS_LINK_PROP_NAME];\n\n return (\n <div className=\"mt-4 px-4\" key={categoryName}>\n <span className=\"text-foreground text-xs font-bold uppercase\">\n {categoryName}\n </span>\n {Object.entries(categoryValues).map(\n ([, { sequence, description }]) =>\n sequence && <HotKey {...{ description, sequence }} key={sequence} />\n )}\n {fullShortcutsLink && (\n <Button asChild className=\"mb-3\" variant=\"link\">\n <a href={fullShortcutsLink} rel=\"noreferrer\" target=\"_blank\">\n {t(\"neetoMolecules.keyboardShortcuts.viewFullListOfShortcuts\")}\n </a>\n </Button>\n )}\n </div>\n );\n })\n);\n\nexport default memo(HotKeyList);\n","import { Button } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { X } from \"lucide-react\";\nimport useHotkeys from \"neetohotkeys\";\nimport { manager } from \"neetoui/managers\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport HotKeyList from \"./HotKeyList\";\nimport { getGlobalShortcuts } from \"./utils\";\n\nimport useKeyboardShortcutsPaneState from \"../hooks/useKeyboardShortcutsPaneState\";\n\nconst KeyboardShortcutsPane = ({ productShortcuts = {} }) => {\n const [isOpen, setIsOpen] = useKeyboardShortcutsPaneState();\n const hasOverlays = manager.hasOverlays();\n // eslint-disable-next-line @bigbinary/neeto/no-dangling-constants\n const GLOBAL_SHORTCUTS = getGlobalShortcuts();\n const { t } = useTranslation();\n\n const shortcuts =\n GLOBAL_SHORTCUTS[t(\"neetoMolecules.keyboardShortcuts.global.categoryName\")];\n\n useHotkeys(\n shortcuts.openKeyboardShortcutsPane.sequence,\n () => setIsOpen(prevIsOpen => !prevIsOpen),\n { mode: \"global\" }\n );\n\n useHotkeys(shortcuts.close.sequence, () => setIsOpen(false), {\n mode: \"global\",\n enabled: isOpen,\n });\n\n return (\n <div\n data-testid=\"keyboard-shortcuts-pane\"\n style={{ zIndex: \"var(--nv-pane-z-index, 100000)\" }}\n className={classnames(\n \"border-border bg-background transition-width ms-auto h-dvh shrink-0 grow-0 overflow-hidden border-l duration-300 ease-in-out rtl:border-r rtl:border-l-0\",\n {\n \"w-80\": isOpen,\n \"w-0\": !isOpen,\n absolute: hasOverlays,\n \"end-0\": hasOverlays,\n }\n )}\n >\n <div className=\"h-full w-80 overflow-y-auto\">\n <div className=\"border-border my-2 flex items-center justify-between border-b px-4 pb-2\">\n <h4\n className=\"text-foreground text-base font-semibold\"\n data-testid=\"keyboard-shortcuts-pane-title\"\n >\n {t(\"neetoMolecules.keyboardShortcuts.title\")}\n </h4>\n <Button\n data-testid=\"keyboard-shortcuts-pane-close-button\"\n icon={X}\n size=\"icon\"\n variant=\"ghost\"\n onClick={() => setIsOpen(false)}\n />\n </div>\n <HotKeyList hotkeys={GLOBAL_SHORTCUTS} />\n <HotKeyList hotkeys={productShortcuts} />\n </div>\n </div>\n );\n};\n\nKeyboardShortcutsPane.propTypes = {\n /**\n * Used to pass in the product specific keyboard shortcuts.\n */\n productShortcuts: PropTypes.object,\n};\n\nexport default KeyboardShortcutsPane;\n","import useKeyboardShortcutsPaneState from \"./hooks/useKeyboardShortcutsPaneState\";\nimport KeyboardShortcutsPane from \"./Pane\";\nimport { getGlobalShortcuts } from \"./Pane/utils\";\n\nconst KeyboardShortcuts = {\n Pane: KeyboardShortcutsPane,\n usePaneState: useKeyboardShortcutsPaneState,\n GLOBAL_SHORTCUTS: getGlobalShortcuts(),\n};\n\nexport default KeyboardShortcuts;\n"],"names":["KEY_SHORTFORM_MAP","command","escape","control","option","MAC_TO_WINDOWS_KEYS_MAP","OS","mac","FULL_SHORTCUTS_LINK_PROP_NAME","TOOLTIP_CONTENT","esc","ctrl","opt","backspace","isMultipleHotkey","hotkey","Array","isArray","replaceKeys","keyName","replaceWith","map","item","replaceAll","convertHotKeyToWindows","toPairs","forEach","_ref","_ref2","_slicedToArray","macKey","windowsKey","convertHotkeyToUsersPlatform","_result$os$name","parser","UAParser","navigator","userAgent","result","getResult","isOSX","os","name","includes","shortenHotKey","Object","entries","_ref3","_ref4","longform","shortform","getGlobalShortcuts","_defineProperty","i18next","t","openKeyboardShortcutsPane","sequence","description","close","submitForm","openProductSwitcher","getTooltipProps","key","position","content","followCursor","KbdWithRef","forwardRef","ref","children","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","Kbd","className","displayName","KbdKey","tooltipProps","Tooltip","HotKey","isSequentialHotkey","isSimultaneousHotkey","isSingleKeyHotkey","sequences","split","_jsxs","idx","Fragment","length","memo","HotKeyList","withT","hotkeys","keys","categoryName","categoryValues","fullShortcutsLink","_ref3$","_createElement","Button","asChild","variant","href","rel","target","KeyboardShortcutsPane","_ref$productShortcuts","productShortcuts","_useKeyboardShortcuts","useKeyboardShortcutsPaneState","_useKeyboardShortcuts2","isOpen","setIsOpen","hasOverlays","manager","GLOBAL_SHORTCUTS","_useTranslation","useTranslation","shortcuts","useHotkeys","prevIsOpen","mode","enabled","style","zIndex","classnames","absolute","icon","X","size","onClick","KeyboardShortcuts","Pane","usePaneState"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,iBAAiB,GAAG;AAC/BC,EAAAA,OAAO,EAAE,QAAQ;AACjBC,EAAAA,MAAM,EAAE,KAAK;AACbC,EAAAA,OAAO,EAAE,MAAM;AACfC,EAAAA,MAAM,EAAE,KAAK;EACb,QAAA,EAAQ;AACV,CAAC;AAEM,IAAMC,uBAAuB,GAAG;AACrCD,EAAAA,MAAM,EAAE,KAAK;AACbH,EAAAA,OAAO,EAAE,MAAM;AACf,EAAA,QAAA,EAAQ,OAAO;EACf,QAAA,EAAQ;AACV,CAAC;AAEM,IAAMK,EAAE,GAAG;AAAEC,EAAAA,GAAG,EAAE,OAA4B,CAAC;AAE/C,IAAMC,6BAA6B,GAAG,mBAAmB;AAEzD,IAAMC,eAAe,GAAG;AAC7B,EAAA,QAAQ,EAAE,SAAS;AACnBC,EAAAA,GAAG,EAAE,QAAQ;AACbC,EAAAA,IAAI,EAAE,SAAS;AACfC,EAAAA,GAAG,EAAE,QAAQ;AACbC,EAAAA,SAAS,EAAE;AACb,CAAC;;ACdD,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,MAAM,EAAA;AAAA,EAAA,OAAIC,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC;AAAA,CAAA;AAExD,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAIH,MAAM,EAAEI,OAAO,EAAEC,WAAW,EAAA;EAAA,OAC/CN,gBAAgB,CAACC,MAAM,CAAC,GACpBA,MAAM,CAACM,GAAG,CAAC,UAAAC,IAAI,EAAA;AAAA,IAAA,OAAIA,IAAI,CAACC,UAAU,CAACJ,OAAO,EAAEC,WAAW,CAAC;EAAA,CAAA,CAAC,GACzDL,MAAM,CAACQ,UAAU,CAACJ,OAAO,EAAEC,WAAW,CAAC;AAAA,CAAA;AAE7C,IAAMI,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAGT,MAAM,EAAI;EACvCU,OAAO,CAACpB,uBAAuB,CAAC,CAACqB,OAAO,CAAC,UAAAC,IAAA,EAA0B;AAAA,IAAA,IAAAC,KAAA,GAAAC,cAAA,CAAAF,IAAA,EAAA,CAAA,CAAA;AAAxBG,MAAAA,MAAM,GAAAF,KAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,UAAU,GAAAH,KAAA,CAAA,CAAA,CAAA;IAC3Db,MAAM,GAAGG,WAAW,CAACH,MAAM,EAAEe,MAAM,EAAEC,UAAU,CAAC;AAClD,EAAA,CAAC,CAAC;AAEF,EAAA,OAAOhB,MAAM;AACf,CAAC;AAEM,IAAMiB,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAGjB,MAAM,EAAI;AAAA,EAAA,IAAAkB,eAAA;EACpD,IAAMC,MAAM,GAAG,IAAIC,QAAQ,CAACC,SAAS,CAACC,SAAS,CAAC;AAChD,EAAA,IAAMC,MAAM,GAAGJ,MAAM,CAACK,SAAS,EAAE;AACjC,EAAA,IAAMC,KAAK,GAAA,CAAAP,eAAA,GAAGK,MAAM,CAACG,EAAE,CAACC,IAAI,cAAAT,eAAA,KAAA,MAAA,GAAA,MAAA,GAAdA,eAAA,CAAgBU,QAAQ,CAACrC,EAAE,CAACC,GAAG,CAAC;EAC9C,IAAIiC,KAAK,EAAE,OAAOzB,MAAM;EAExB,OAAOS,sBAAsB,CAACT,MAAM,CAAC;AACvC,CAAC;AAEM,IAAM6B,aAAa,GAAG,SAAhBA,aAAaA,CAAG7B,MAAM,EAAI;EACrC,IAAIuB,MAAM,GAAGvB,MAAM;EACnB8B,MAAM,CAACC,OAAO,CAAC9C,iBAAiB,CAAC,CAAC0B,OAAO,CAAC,UAAAqB,KAAA,EAA2B;AAAA,IAAA,IAAAC,KAAA,GAAAnB,cAAA,CAAAkB,KAAA,EAAA,CAAA,CAAA;AAAzBE,MAAAA,QAAQ,GAAAD,KAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,SAAS,GAAAF,KAAA,CAAA,CAAA,CAAA;IAC7DV,MAAM,GAAGA,MAAM,CAACf,UAAU,CAAC0B,QAAQ,EAAEC,SAAS,CAAC;AACjD,EAAA,CAAC,CAAC;AAEF,EAAA,OAAOZ,MAAM;AACf,CAAC;AAEM,IAAMa,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAA;EAAA,OAAAC,eAAA,KAC5BC,OAAO,CAACC,CAAC,CAAC,sDAAsD,CAAC,EAAG;AACnEC,IAAAA,yBAAyB,EAAE;AACzBC,MAAAA,QAAQ,EAAE,WAAW;AACrBC,MAAAA,WAAW,EAAEJ,OAAO,CAACC,CAAC,CACpB,mEACF;KACD;AACDI,IAAAA,KAAK,EAAE;AACLF,MAAAA,QAAQ,EAAE,KAAK;AACfC,MAAAA,WAAW,EAAEJ,OAAO,CAACC,CAAC,CAAC,+CAA+C;KACvE;AACDK,IAAAA,UAAU,EAAE;AACVH,MAAAA,QAAQ,EAAE,gBAAgB;AAC1BC,MAAAA,WAAW,EAAEJ,OAAO,CAACC,CAAC,CACpB,oDACF;KACD;AACDM,IAAAA,mBAAmB,EAAE;AACnBJ,MAAAA,QAAQ,EAAE,WAAW;AACrBC,MAAAA,WAAW,EAAEJ,OAAO,CAACC,CAAC,CACpB,6DACF;AACF;GACD,CAAA;AAAA,CACD;AAEK,IAAMO,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,GAAG,EAAI;AACpC,EAAA,IAAIrD,eAAe,CAACqD,GAAG,CAAC,EAAE;IACxB,OAAO;AACLC,MAAAA,QAAQ,EAAE,KAAK;AACfC,MAAAA,OAAO,EAAEvD,eAAe,CAACqD,GAAG,CAAC;AAC7BG,MAAAA,YAAY,EAAE;KACf;AACH,EAAA;AAEA,EAAA,OAAO,IAAI;AACb,CAAC;;;;;ACvED,IAAMC,UAAU,gBAAGC,UAAU,CAAC,UAAAxC,IAAA,EAAyByC,GAAG,EAAA;AAAA,EAAA,IAAzBC,QAAQ,GAAA1C,IAAA,CAAR0C,QAAQ;AAAKC,IAAAA,KAAK,GAAAC,wBAAA,CAAA5C,IAAA,EAAA6C,SAAA,CAAA;AAAA,EAAA,oBACjDC,GAAA,CAAA,MAAA,EAAAC,aAAA,CAAAA,aAAA,KAAAA,aAAA,CAAA;AAAYN,IAAAA,GAAG,EAAHA;AAAG,GAAA,EAAKE,KAAK,CAAA,CAAA,EAAA,EAAA,EAAA;IAAAD,QAAA,eACvBI,GAAA,CAACE,GAAG,EAAA;AAACC,MAAAA,SAAS,EAAC,QAAQ;AAAAP,MAAAA,QAAA,EAAEA;KAAc;AAAC,GAAA,CACpC,CAAC;AAAA,CACR,CAAC;AACFH,UAAU,CAACW,WAAW,GAAG,YAAY;AAErC,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAAlD,KAAA,EAAkC;AAAA,EAAA,IAA5BT,OAAO,GAAAS,KAAA,CAAPT,OAAO;IAAE4D,YAAY,GAAAnD,KAAA,CAAZmD,YAAY;AACrC,EAAA,IAAIA,YAAY,EAAE;IAChB,oBACEN,GAAA,CAACO,OAAO,EAAA;MAAChB,OAAO,EAAEe,YAAY,CAACf,OAAQ;AAACD,MAAAA,QAAQ,EAAC,KAAK;MAAAM,QAAA,eACpDI,GAAA,CAACP,UAAU,EAAA;AAAAG,QAAAA,QAAA,EAAElD;OAAoB;AAAC,KAC3B,CAAC;AAEd,EAAA;EAEA,oBAAOsD,GAAA,CAACE,GAAG,EAAA;AAACC,IAAAA,SAAS,EAAC,QAAQ;AAAAP,IAAAA,QAAA,EAAElD;AAAO,GAAM,CAAC;AAChD,CAAC;AAED,IAAM8D,MAAM,GAAG,SAATA,MAAMA,CAAAlC,KAAA,EAAkC;AAAA,EAAA,IAA5BU,WAAW,GAAAV,KAAA,CAAXU,WAAW;IAAED,QAAQ,GAAAT,KAAA,CAARS,QAAQ;EACrC,IAAMzC,MAAM,GAAG6B,aAAa,CAACZ,4BAA4B,CAACwB,QAAQ,CAAC,CAAC;AACpE,EAAA,IAAM0B,kBAAkB,GAAGnE,MAAM,CAAC4B,QAAQ,CAAC,GAAG,CAAC;AAC/C,EAAA,IAAMwC,oBAAoB,GAAGpE,MAAM,CAAC4B,QAAQ,CAAC,GAAG,CAAC;AACjD,EAAA,IAAMyC,iBAAiB,GAAG,CAACF,kBAAkB,IAAI,CAACC,oBAAoB;EACtE,IAAIE,SAAS,GAAG,EAAE;AAElB,EAAA,IAAID,iBAAiB,EAAE;IACrBC,SAAS,GAAG,CAACtE,MAAM,CAAC;EACtB,CAAC,MAAM,IAAImE,kBAAkB,EAAE;AAC7BG,IAAAA,SAAS,GAAGtE,MAAM,CAACuE,KAAK,CAAC,GAAG,CAAC;EAC/B,CAAC,MAAM,IAAIH,oBAAoB,EAAE;AAC/BE,IAAAA,SAAS,GAAGtE,MAAM,CAACuE,KAAK,CAAC,GAAG,CAAC;AAC/B,EAAA;AAEA,EAAA,oBACEb,GAAA,CAAA,KAAA,EAAA;AAAKG,IAAAA,SAAS,EAAC,aAAa;AAAAP,IAAAA,QAAA,eAC1BkB,IAAA,CAAA,KAAA,EAAA;AACEX,MAAAA,SAAS,EAAC,yCAAyC;AACnD,MAAA,aAAA,EAAY,aAAa;AAAAP,MAAAA,QAAA,gBAEzBI,GAAA,CAAA,MAAA,EAAA;AAAMG,QAAAA,SAAS,EAAC,sEAAsE;AAAAP,QAAAA,QAAA,EACnFZ;OACG,CAAC,eACPgB,GAAA,CAAA,KAAA,EAAA;AAAKG,QAAAA,SAAS,EAAC,uCAAuC;QAAAP,QAAA,EACnDgB,SAAS,CAAChE,GAAG,CAAC,UAACF,OAAO,EAAEqE,GAAG,EAAA;UAAA,oBAC1BD,IAAA,CAACE,QAAQ,EAAA;YAAApB,QAAA,EAAA,cACPI,GAAA,CAACK,MAAM,EAAA;AACC3D,cAAAA,OAAO,EAAPA,OAAO;cACb4D,YAAY,EAAElB,eAAe,CAAC1C,OAAO;AAAE,aACxC,CAAC,EACD+D,kBAAkB,IAAIM,GAAG,GAAG,CAAC,KAAKH,SAAS,CAACK,MAAM,iBACjDjB,GAAA,CAACK,MAAM,EAAA;AAAC3D,cAAAA,OAAO,EAAC;AAAM,aAAE,CACzB;AAAA,WAAA,EAPYqE,GAQL,CAAC;QAAA,CACZ;AAAC,OACC,CAAC;KACH;AAAC,GACH,CAAC;AAEV,CAAC;AAED,eAAA,aAAeG,IAAI,CAACV,MAAM,CAAC;;AC/D3B,IAAMW,UAAU,GAAGC,KAAK,CAAC,UAAAlE,IAAA,EAAA;AAAA,EAAA,IAAG2B,CAAC,GAAA3B,IAAA,CAAD2B,CAAC;IAAEwC,OAAO,GAAAnE,IAAA,CAAPmE,OAAO;EAAA,OACpCjD,MAAM,CAACkD,IAAI,CAACD,OAAO,CAAC,CAACzE,GAAG,CAAC,UAAA2E,YAAY,EAAI;AACvC,IAAA,IAAMC,cAAc,GAAGH,OAAO,CAACE,YAAY,CAAC;AAC5C,IAAA,IAAME,iBAAiB,GAAGD,cAAc,CAACzF,6BAA6B,CAAC;AAEvE,IAAA,oBACE+E,IAAA,CAAA,KAAA,EAAA;AAAKX,MAAAA,SAAS,EAAC,WAAW;AAAAP,MAAAA,QAAA,gBACxBI,GAAA,CAAA,MAAA,EAAA;AAAMG,QAAAA,SAAS,EAAC,6CAA6C;AAAAP,QAAAA,QAAA,EAC1D2B;AAAY,OACT,CAAC,EACNnD,MAAM,CAACC,OAAO,CAACmD,cAAc,CAAC,CAAC5E,GAAG,CACjC,UAAAO,KAAA,EAAA;AAAA,QAAA,IAAAmB,KAAA,GAAAlB,cAAA,CAAAD,KAAA,EAAA,CAAA,CAAA;AAAAuE,UAAAA,MAAA,GAAApD,KAAA,CAAA,CAAA,CAAA;UAAMS,QAAQ,GAAA2C,MAAA,CAAR3C,QAAQ;UAAEC,WAAW,GAAA0C,MAAA,CAAX1C,WAAW;AAAA,QAAA,OACzBD,QAAQ,iBAAI4C,aAAA,CAACnB,QAAM,EAAA;AAAOxB,UAAAA,WAAW,EAAXA,WAAW;AAAED,UAAAA,QAAQ,EAARA,QAAQ;AAAIM,UAAAA,GAAG,EAAEN;AAAS,SAAE,CAAC;AAAA,MAAA,CACxE,CAAC,EACA0C,iBAAiB,iBAChBzB,GAAA,CAAC4B,MAAM,EAAA;QAACC,OAAO,EAAA,IAAA;AAAC1B,QAAAA,SAAS,EAAC,MAAM;AAAC2B,QAAAA,OAAO,EAAC,MAAM;AAAAlC,QAAAA,QAAA,eAC7CI,GAAA,CAAA,GAAA,EAAA;AAAG+B,UAAAA,IAAI,EAAEN,iBAAkB;AAACO,UAAAA,GAAG,EAAC,YAAY;AAACC,UAAAA,MAAM,EAAC,QAAQ;UAAArC,QAAA,EACzDf,CAAC,CAAC,0DAA0D;SAC5D;AAAC,OACE,CACT;AAAA,KAAA,EAd6B0C,YAe3B,CAAC;AAEV,EAAA,CAAC,CAAC;AAAA,CACJ,CAAC;AAED,mBAAA,aAAeL,IAAI,CAACC,UAAU,CAAC;;ACrB/B,IAAMe,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAAhF,IAAA,EAAkC;AAAA,EAAA,IAAAiF,qBAAA,GAAAjF,IAAA,CAA5BkF,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AACpD,EAAA,IAAAE,qBAAA,GAA4BC,6BAA6B,EAAE;IAAAC,sBAAA,GAAAnF,cAAA,CAAAiF,qBAAA,EAAA,CAAA,CAAA;AAApDG,IAAAA,MAAM,GAAAD,sBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,SAAS,GAAAF,sBAAA,CAAA,CAAA,CAAA;AACxB,EAAA,IAAMG,WAAW,GAAGC,OAAO,CAACD,WAAW,EAAE;AACzC;AACA,EAAA,IAAME,gBAAgB,GAAGlE,kBAAkB,EAAE;AAC7C,EAAA,IAAAmE,eAAA,GAAcC,cAAc,EAAE;IAAtBjE,CAAC,GAAAgE,eAAA,CAADhE,CAAC;EAET,IAAMkE,SAAS,GACbH,gBAAgB,CAAC/D,CAAC,CAAC,sDAAsD,CAAC,CAAC;AAE7EmE,EAAAA,UAAU,CACRD,SAAS,CAACjE,yBAAyB,CAACC,QAAQ,EAC5C,YAAA;IAAA,OAAM0D,SAAS,CAAC,UAAAQ,UAAU,EAAA;AAAA,MAAA,OAAI,CAACA,UAAU;IAAA,CAAA,CAAC;EAAA,CAAA,EAC1C;AAAEC,IAAAA,IAAI,EAAE;AAAS,GACnB,CAAC;AAEDF,EAAAA,UAAU,CAACD,SAAS,CAAC9D,KAAK,CAACF,QAAQ,EAAE,YAAA;IAAA,OAAM0D,SAAS,CAAC,KAAK,CAAC;EAAA,CAAA,EAAE;AAC3DS,IAAAA,IAAI,EAAE,QAAQ;AACdC,IAAAA,OAAO,EAAEX;AACX,GAAC,CAAC;AAEF,EAAA,oBACExC,GAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,yBAAyB;AACrCoD,IAAAA,KAAK,EAAE;AAAEC,MAAAA,MAAM,EAAE;KAAmC;AACpDlD,IAAAA,SAAS,EAAEmD,UAAU,CACnB,0JAA0J,EAC1J;AACE,MAAA,MAAM,EAAEd,MAAM;MACd,KAAK,EAAE,CAACA,MAAM;AACde,MAAAA,QAAQ,EAAEb,WAAW;AACrB,MAAA,OAAO,EAAEA;AACX,KACF,CAAE;AAAA9C,IAAAA,QAAA,eAEFkB,IAAA,CAAA,KAAA,EAAA;AAAKX,MAAAA,SAAS,EAAC,6BAA6B;AAAAP,MAAAA,QAAA,gBAC1CkB,IAAA,CAAA,KAAA,EAAA;AAAKX,QAAAA,SAAS,EAAC,yEAAyE;AAAAP,QAAAA,QAAA,gBACtFI,GAAA,CAAA,IAAA,EAAA;AACEG,UAAAA,SAAS,EAAC,yCAAyC;AACnD,UAAA,aAAA,EAAY,+BAA+B;UAAAP,QAAA,EAE1Cf,CAAC,CAAC,wCAAwC;AAAC,SAC1C,CAAC,eACLmB,GAAA,CAAC4B,MAAM,EAAA;AACL,UAAA,aAAA,EAAY,sCAAsC;AAClD4B,UAAAA,IAAI,EAAEC,CAAE;AACRC,UAAAA,IAAI,EAAC,MAAM;AACX5B,UAAAA,OAAO,EAAC,OAAO;UACf6B,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQlB,SAAS,CAAC,KAAK,CAAC;AAAA,UAAA;AAAC,SACjC,CAAC;AAAA,OACC,CAAC,eACNzC,GAAA,CAACmB,YAAU,EAAA;AAACE,QAAAA,OAAO,EAAEuB;AAAiB,OAAE,CAAC,eACzC5C,GAAA,CAACmB,YAAU,EAAA;AAACE,QAAAA,OAAO,EAAEe;AAAiB,OAAE,CAAC;KACtC;AAAC,GACH,CAAC;AAEV,CAAC;;ACjED,IAAMwB,iBAAiB,GAAG;AACxBC,EAAAA,IAAI,EAAE3B,qBAAqB;AAC3B4B,EAAAA,YAAY,EAAExB,6BAA6B;EAC3CM,gBAAgB,EAAElE,kBAAkB;AACtC;;;;"}
|
|
1
|
+
{"version":3,"file":"KeyboardShortcuts.js","sources":["../../src/v2/components/KeyboardShortcuts/Pane/constants.js","../../src/v2/components/KeyboardShortcuts/Pane/utils.js","../../src/v2/components/KeyboardShortcuts/Pane/HotKey.jsx","../../src/v2/components/KeyboardShortcuts/Pane/HotKeyList.jsx","../../src/v2/components/KeyboardShortcuts/Pane/index.jsx","../../src/v2/components/KeyboardShortcuts/index.js"],"sourcesContent":["export const KEY_SHORTFORM_MAP = {\n command: \"\\u2318\",\n escape: \"esc\",\n control: \"ctrl\",\n option: \"opt\",\n return: \"enter\",\n};\n\nexport const MAC_TO_WINDOWS_KEYS_MAP = {\n option: \"alt\",\n command: \"ctrl\",\n return: \"enter\",\n delete: \"backspace\",\n};\n\nexport const OS = { mac: \"macOS\", windows: \"Windows\" };\n\nexport const FULL_SHORTCUTS_LINK_PROP_NAME = \"fullShortcutsLink\";\n\nexport const TOOLTIP_CONTENT = {\n \"\\u2318\": \"command\",\n esc: \"escape\",\n ctrl: \"control\",\n opt: \"option\",\n backspace: \"delete\",\n};\n","import i18next from \"i18next\";\nimport { toPairs } from \"ramda\";\nimport { UAParser } from \"ua-parser-js\";\n\nimport {\n KEY_SHORTFORM_MAP,\n MAC_TO_WINDOWS_KEYS_MAP,\n OS,\n TOOLTIP_CONTENT,\n} from \"./constants\";\n\nconst isMultipleHotkey = hotkey => Array.isArray(hotkey);\n\nconst replaceKeys = (hotkey, keyName, replaceWith) =>\n isMultipleHotkey(hotkey)\n ? hotkey.map(item => item.replaceAll(keyName, replaceWith))\n : hotkey.replaceAll(keyName, replaceWith);\n\nconst convertHotKeyToWindows = hotkey => {\n toPairs(MAC_TO_WINDOWS_KEYS_MAP).forEach(([macKey, windowsKey]) => {\n hotkey = replaceKeys(hotkey, macKey, windowsKey);\n });\n\n return hotkey;\n};\n\nexport const convertHotkeyToUsersPlatform = hotkey => {\n const parser = new UAParser(navigator.userAgent);\n const result = parser.getResult();\n const isOSX = result.os.name?.includes(OS.mac);\n if (isOSX) return hotkey;\n\n return convertHotKeyToWindows(hotkey);\n};\n\nexport const shortenHotKey = hotkey => {\n let result = hotkey;\n Object.entries(KEY_SHORTFORM_MAP).forEach(([longform, shortform]) => {\n result = result.replaceAll(longform, shortform);\n });\n\n return result;\n};\n\nexport const getGlobalShortcuts = () => ({\n [i18next.t(\"neetoMolecules.keyboardShortcuts.global.categoryName\")]: {\n openKeyboardShortcutsPane: {\n sequence: \"command+/\",\n description: i18next.t(\n \"neetoMolecules.keyboardShortcuts.global.openKeyboardShortcutsPane\"\n ),\n },\n close: {\n sequence: \"esc\",\n description: i18next.t(\"neetoMolecules.keyboardShortcuts.global.close\"),\n },\n submitForm: {\n sequence: \"command+return\",\n description: i18next.t(\n \"neetoMolecules.keyboardShortcuts.global.submitForm\"\n ),\n },\n openProductSwitcher: {\n sequence: \"command+u\",\n description: i18next.t(\n \"neetoMolecules.keyboardShortcuts.global.openProductSwitcher\"\n ),\n },\n },\n});\n\nexport const getTooltipProps = key => {\n if (TOOLTIP_CONTENT[key]) {\n return {\n position: \"top\",\n content: TOOLTIP_CONTENT[key],\n followCursor: \"horizontal\",\n };\n }\n\n return null;\n};\n","import { memo, forwardRef, Fragment } from \"react\";\n\nimport { Kbd, Tooltip, Typography } from \"@bigbinary/neeto-atoms\";\n\nimport {\n convertHotkeyToUsersPlatform,\n shortenHotKey,\n getTooltipProps,\n} from \"./utils\";\n\nconst KbdWithRef = forwardRef(({ children, ...props }, ref) => (\n <span {...{ ref, ...props }}>\n <Kbd>{children}</Kbd>\n </span>\n));\nKbdWithRef.displayName = \"KbdWithRef\";\n\nconst KbdKey = ({ keyName, tooltipProps }) => {\n if (tooltipProps) {\n return (\n <Tooltip content={tooltipProps.content} position=\"top\">\n <KbdWithRef>{keyName}</KbdWithRef>\n </Tooltip>\n );\n }\n\n return <Kbd>{keyName}</Kbd>;\n};\n\nconst HotKey = ({ description, sequence }) => {\n const hotkey = shortenHotKey(convertHotkeyToUsersPlatform(sequence));\n const isSequentialHotkey = hotkey.includes(\" \");\n const isSimultaneousHotkey = hotkey.includes(\"+\");\n const isSingleKeyHotkey = !isSequentialHotkey && !isSimultaneousHotkey;\n let sequences = [];\n\n if (isSingleKeyHotkey) {\n sequences = [hotkey];\n } else if (isSequentialHotkey) {\n sequences = hotkey.split(\" \");\n } else if (isSimultaneousHotkey) {\n sequences = hotkey.split(\"+\");\n }\n\n return (\n <div className=\"my-3 w-full\">\n <div\n className=\"flex items-center justify-between gap-3\"\n data-testid=\"hotkey-item\"\n >\n <Typography as=\"span\" className=\"min-w-0 flex-grow break-words\">\n {description}\n </Typography>\n <div className=\"flex flex-shrink-0 items-center gap-1\">\n {sequences.map((keyName, idx) => (\n <Fragment key={idx}>\n <KbdKey\n {...{ keyName }}\n tooltipProps={getTooltipProps(keyName)}\n />\n {isSequentialHotkey && idx + 1 !== sequences.length && (\n <KbdKey keyName=\"then\" />\n )}\n </Fragment>\n ))}\n </div>\n </div>\n </div>\n );\n};\n\nexport default memo(HotKey);\n","import { memo } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport { FULL_SHORTCUTS_LINK_PROP_NAME } from \"./constants\";\nimport HotKey from \"./HotKey\";\n\nconst HotKeyList = withT(({ t, hotkeys }) =>\n Object.keys(hotkeys).map(categoryName => {\n const categoryValues = hotkeys[categoryName];\n const fullShortcutsLink = categoryValues[FULL_SHORTCUTS_LINK_PROP_NAME];\n\n return (\n <div className=\"mt-4 px-4\" key={categoryName}>\n <Typography className=\"uppercase\" variant=\"caption\" weight=\"bold\">\n {categoryName}\n </Typography>\n {Object.entries(categoryValues).map(\n ([, { sequence, description }]) =>\n sequence && <HotKey {...{ description, sequence }} key={sequence} />\n )}\n {fullShortcutsLink && (\n <Button asChild className=\"mb-3\" variant=\"link\">\n <a href={fullShortcutsLink} rel=\"noreferrer\" target=\"_blank\">\n {t(\"neetoMolecules.keyboardShortcuts.viewFullListOfShortcuts\")}\n </a>\n </Button>\n )}\n </div>\n );\n })\n);\n\nexport default memo(HotKeyList);\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { X } from \"lucide-react\";\nimport useHotkeys from \"neetohotkeys\";\nimport { manager } from \"neetoui/managers\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport HotKeyList from \"./HotKeyList\";\nimport { getGlobalShortcuts } from \"./utils\";\n\nimport useKeyboardShortcutsPaneState from \"../hooks/useKeyboardShortcutsPaneState\";\n\nconst KeyboardShortcutsPane = ({ productShortcuts = {} }) => {\n const [isOpen, setIsOpen] = useKeyboardShortcutsPaneState();\n const hasOverlays = manager.hasOverlays();\n // eslint-disable-next-line @bigbinary/neeto/no-dangling-constants\n const GLOBAL_SHORTCUTS = getGlobalShortcuts();\n const { t } = useTranslation();\n\n const shortcuts =\n GLOBAL_SHORTCUTS[t(\"neetoMolecules.keyboardShortcuts.global.categoryName\")];\n\n useHotkeys(\n shortcuts.openKeyboardShortcutsPane.sequence,\n () => setIsOpen(prevIsOpen => !prevIsOpen),\n { mode: \"global\" }\n );\n\n useHotkeys(shortcuts.close.sequence, () => setIsOpen(false), {\n mode: \"global\",\n enabled: isOpen,\n });\n\n return (\n <div\n data-testid=\"keyboard-shortcuts-pane\"\n style={{ zIndex: \"var(--nv-pane-z-index, 100000)\" }}\n className={classnames(\n \"border-border bg-background transition-width ms-auto h-dvh shrink-0 grow-0 overflow-hidden border-l duration-300 ease-in-out rtl:border-r rtl:border-l-0\",\n {\n \"w-80\": isOpen,\n \"w-0\": !isOpen,\n absolute: hasOverlays,\n \"end-0\": hasOverlays,\n }\n )}\n >\n <div className=\"h-full w-80 overflow-y-auto\">\n <div className=\"border-border my-2 flex items-center justify-between border-b px-4 pb-2\">\n <Typography\n as=\"h4\"\n data-testid=\"keyboard-shortcuts-pane-title\"\n variant=\"h6\"\n >\n {t(\"neetoMolecules.keyboardShortcuts.title\")}\n </Typography>\n <Button\n data-testid=\"keyboard-shortcuts-pane-close-button\"\n icon={X}\n size=\"icon\"\n variant=\"ghost\"\n onClick={() => setIsOpen(false)}\n />\n </div>\n <HotKeyList hotkeys={GLOBAL_SHORTCUTS} />\n <HotKeyList hotkeys={productShortcuts} />\n </div>\n </div>\n );\n};\n\nKeyboardShortcutsPane.propTypes = {\n /**\n * Used to pass in the product specific keyboard shortcuts.\n */\n productShortcuts: PropTypes.object,\n};\n\nexport default KeyboardShortcutsPane;\n","import useKeyboardShortcutsPaneState from \"./hooks/useKeyboardShortcutsPaneState\";\nimport KeyboardShortcutsPane from \"./Pane\";\nimport { getGlobalShortcuts } from \"./Pane/utils\";\n\nconst KeyboardShortcuts = {\n Pane: KeyboardShortcutsPane,\n usePaneState: useKeyboardShortcutsPaneState,\n GLOBAL_SHORTCUTS: getGlobalShortcuts(),\n};\n\nexport default KeyboardShortcuts;\n"],"names":["KEY_SHORTFORM_MAP","command","escape","control","option","MAC_TO_WINDOWS_KEYS_MAP","OS","mac","FULL_SHORTCUTS_LINK_PROP_NAME","TOOLTIP_CONTENT","esc","ctrl","opt","backspace","isMultipleHotkey","hotkey","Array","isArray","replaceKeys","keyName","replaceWith","map","item","replaceAll","convertHotKeyToWindows","toPairs","forEach","_ref","_ref2","_slicedToArray","macKey","windowsKey","convertHotkeyToUsersPlatform","_result$os$name","parser","UAParser","navigator","userAgent","result","getResult","isOSX","os","name","includes","shortenHotKey","Object","entries","_ref3","_ref4","longform","shortform","getGlobalShortcuts","_defineProperty","i18next","t","openKeyboardShortcutsPane","sequence","description","close","submitForm","openProductSwitcher","getTooltipProps","key","position","content","followCursor","KbdWithRef","forwardRef","ref","children","props","_objectWithoutProperties","_excluded","_jsx","_objectSpread","Kbd","displayName","KbdKey","tooltipProps","Tooltip","HotKey","isSequentialHotkey","isSimultaneousHotkey","isSingleKeyHotkey","sequences","split","className","_jsxs","Typography","as","idx","Fragment","length","memo","HotKeyList","withT","hotkeys","keys","categoryName","categoryValues","fullShortcutsLink","variant","weight","_ref3$","_createElement","Button","asChild","href","rel","target","KeyboardShortcutsPane","_ref$productShortcuts","productShortcuts","_useKeyboardShortcuts","useKeyboardShortcutsPaneState","_useKeyboardShortcuts2","isOpen","setIsOpen","hasOverlays","manager","GLOBAL_SHORTCUTS","_useTranslation","useTranslation","shortcuts","useHotkeys","prevIsOpen","mode","enabled","style","zIndex","classnames","absolute","icon","X","size","onClick","KeyboardShortcuts","Pane","usePaneState"],"mappings":"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"}
|
package/dist/v2/NeetoWidget.js
CHANGED
|
@@ -174,10 +174,8 @@ var SyntaxHighlighter$1 = /*#__PURE__*/memo(SyntaxHighlighter);
|
|
|
174
174
|
|
|
175
175
|
var CodeBlock = function CodeBlock(_ref) {
|
|
176
176
|
var _ref$title = _ref.title,
|
|
177
|
-
title = _ref$title === void 0 ? /*#__PURE__*/jsx(
|
|
178
|
-
|
|
179
|
-
i18nKey: "neetoMolecules.codeblock.codeSnippet"
|
|
180
|
-
})
|
|
177
|
+
title = _ref$title === void 0 ? /*#__PURE__*/jsx(Trans, {
|
|
178
|
+
i18nKey: "neetoMolecules.codeblock.codeSnippet"
|
|
181
179
|
}) : _ref$title,
|
|
182
180
|
codeString = _ref.codeString,
|
|
183
181
|
_ref$showCopyButton = _ref.showCopyButton,
|
|
@@ -198,9 +196,10 @@ var CodeBlock = function CodeBlock(_ref) {
|
|
|
198
196
|
children: [/*#__PURE__*/jsxs("div", {
|
|
199
197
|
className: "border-border bg-muted flex w-full flex-wrap items-center justify-between gap-2 rounded-lg rounded-b-none border p-3",
|
|
200
198
|
children: [title && /*#__PURE__*/jsx(Typography, {
|
|
201
|
-
|
|
199
|
+
as: "h4",
|
|
200
|
+
className: "flex-shrink-0",
|
|
202
201
|
"data-testid": "code-block-title-text",
|
|
203
|
-
variant: "
|
|
202
|
+
variant: "h6",
|
|
204
203
|
children: title
|
|
205
204
|
}), selectedFramework && /*#__PURE__*/jsx(Select, {
|
|
206
205
|
className: "max-w-40",
|
|
@@ -211,7 +210,7 @@ var CodeBlock = function CodeBlock(_ref) {
|
|
|
211
210
|
}), /*#__PURE__*/jsx("div", {
|
|
212
211
|
className: "ms-auto flex flex-shrink-0 items-center justify-end gap-2",
|
|
213
212
|
children: sendViaEmail ? /*#__PURE__*/jsx(Button, {
|
|
214
|
-
variant: "
|
|
213
|
+
variant: "outline",
|
|
215
214
|
label: t("neetoMolecules.widget.installation.snippet.sendViaEmail"),
|
|
216
215
|
onClick: sendViaEmail
|
|
217
216
|
}) : null
|
|
@@ -224,7 +223,7 @@ var CodeBlock = function CodeBlock(_ref) {
|
|
|
224
223
|
variant: "secondary",
|
|
225
224
|
tooltipContent: t("neetoMolecules.widget.installation.snippet.copy")
|
|
226
225
|
}), /*#__PURE__*/jsx(SyntaxHighlighter$1, {
|
|
227
|
-
className: "m-0 rounded-lg rounded-t-none pt-4",
|
|
226
|
+
className: "!m-0 min-h-16 rounded-lg rounded-t-none pt-4",
|
|
228
227
|
code: codeString,
|
|
229
228
|
language: "javascript"
|
|
230
229
|
})]
|
|
@@ -385,7 +384,7 @@ var CodeSnippet = function CodeSnippet(_ref) {
|
|
|
385
384
|
emailMutation.mutate({
|
|
386
385
|
subject: formData.subject,
|
|
387
386
|
emails: pluck("value", formData.emails),
|
|
388
|
-
message: (_body$ref$current$inn = (_body$ref = body.ref) === null || _body$ref === void 0 ? void 0 : _body$ref.
|
|
387
|
+
message: (_body$ref$current$inn = body === null || body === void 0 || (_body$ref = body.ref) === null || _body$ref === void 0 || (_body$ref = _body$ref.current) === null || _body$ref === void 0 ? void 0 : _body$ref.innerHTML) !== null && _body$ref$current$inn !== void 0 ? _body$ref$current$inn : body,
|
|
389
388
|
snippet: codeToDisplay
|
|
390
389
|
});
|
|
391
390
|
};
|
|
@@ -412,6 +411,7 @@ var CodeSnippet = function CodeSnippet(_ref) {
|
|
|
412
411
|
validationSchema: getEmailWidgetSnippetValidationSchema(),
|
|
413
412
|
onSubmit: handleSubmit,
|
|
414
413
|
children: /*#__PURE__*/jsxs(Form, {
|
|
414
|
+
className: "flex min-h-0 flex-1 flex-col",
|
|
415
415
|
children: [/*#__PURE__*/jsx(Sheet.Header, {
|
|
416
416
|
children: /*#__PURE__*/jsx(Sheet.Title, {
|
|
417
417
|
children: t("neetoMolecules.widget.email.title")
|
|
@@ -430,6 +430,8 @@ var CodeSnippet = function CodeSnippet(_ref) {
|
|
|
430
430
|
name: "subject",
|
|
431
431
|
type: "text"
|
|
432
432
|
}), /*#__PURE__*/jsx(Typography, {
|
|
433
|
+
as: "div",
|
|
434
|
+
className: "min-w-0 break-words [&_a]:inline [&_a]:break-all [&_a]:whitespace-normal [&_a_span]:inline",
|
|
433
435
|
variant: "body2",
|
|
434
436
|
children: body
|
|
435
437
|
}), /*#__PURE__*/jsx(CodeBlock, _objectSpread$3({}, renderCodeBlockProps()))]
|
|
@@ -728,9 +730,7 @@ var EmbedCode = function EmbedCode(_ref) {
|
|
|
728
730
|
sendViaEmail: function sendViaEmail() {
|
|
729
731
|
return handleSendViaEmail(EMAIL_TYPES.embedCode);
|
|
730
732
|
},
|
|
731
|
-
title:
|
|
732
|
-
children: t("neetoMolecules.widget.title.embedCode")
|
|
733
|
-
})
|
|
733
|
+
title: t("neetoMolecules.widget.title.embedCode")
|
|
734
734
|
})
|
|
735
735
|
}), /*#__PURE__*/jsx("div", {
|
|
736
736
|
className: "w-full",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeetoWidget.js","sources":["../../src/v2/components/NeetoWidget/constants.js","../../src/v2/components/NeetoWidget/ChatWidgetBody.jsx","../../src/v2/components/NeetoWidget/SyntaxHighlighter.jsx","../../src/v2/components/NeetoWidget/CodeBlock.jsx","../../src/v2/components/NeetoWidget/utils.js","../../src/v2/components/NeetoWidget/api.js","../../src/v2/components/NeetoWidget/mutations.js","../../src/v2/components/NeetoWidget/CodeSnippet.jsx","../../src/v2/components/NeetoWidget/hooks/useForceUpdate.js","../../src/v2/components/NeetoWidget/queries.js","../../src/v2/components/NeetoWidget/SelectionSwitches/TooltipSwitch.jsx","../../src/v2/components/NeetoWidget/EmbedCode.jsx","../../src/v2/components/NeetoWidget/Main.jsx","../../src/v2/components/NeetoWidget/index.js"],"sourcesContent":["// The `standardize-help-urls` rule expects a single-product `helpUrls.js` with a\n// `HELP_DOCS_BASE_URL` matching `help.neeto<product>.com` and `/p/<permalink>`\n// links. NeetoWidget links out to multiple products' (neetoChat / neetoEngage /\n// neetoReplay) `/articles/...` help pages, which has no single docs base to\n// satisfy the rule, so the URLs are kept inline (as in v1).\n/* eslint-disable @bigbinary/neeto/standardize-help-urls */\nimport { t } from \"i18next\";\nimport { values } from \"ramda\";\n\nexport const NEETO_WIDGET_USER_IDENTITY_KEY = \"NeetoWidgetUserIdentity\";\nexport const SESSION_CONTEXT_KEY = \"NeetoReplayWidgetSessionContext\";\n\nexport const INSTALLATION_HELP_EMAIL = \"support@neeto.com\";\n\nexport const SAMPLE_CONTEXT_CODE_STRING = `window.${SESSION_CONTEXT_KEY} = {\n key1: \"value\",\n key2: [\"array\", \"of\", \"values\"],\n /* More key-value pairs */\n}`;\n\nexport const WIDGET_TYPES = {\n engage: \"engage\",\n chat: \"chat\",\n replay: \"replay\",\n};\n\nexport const WIDGET_HELP_LINKS = {\n engage: \"https://help.neetoengage.com/articles/installation\",\n chat: \"https://help.neetochat.com/articles/installation-using-javascript-snippet\",\n replay: \"https://help.neetoreplay.com/articles/install-widget\",\n};\n\nexport const WIDGET_DESCRIPTIONS = {\n engage: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.engage\"\n ),\n chat: t(\"neetoMolecules.widget.email.body.values.embedCode.description.chat\"),\n replay: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.replay\"\n ),\n};\n\nexport const WIDGET_TYPES_VALUES = values(WIDGET_TYPES);\n\nexport const QUERY_KEYS = {\n apiKey: \"neetoWidgetApiKey\",\n configuration: \"neetoWidgetConfiguration\",\n};\n\nexport const DEFAULT_QUERY_STALE_TIME = 60 * 60 * 1000; // 1 hour in milliseconds\n\nexport const EMAIL_TYPES = {\n embedCode: \"embedCode\",\n userIdentity: \"userIdentity\",\n sessionContext: \"sessionContext\",\n null: \"\",\n};\n\nexport const RAILS_ENV = {\n production: \"production\",\n staging: \"staging\",\n development: \"development\",\n};\n\nexport const NEETO_WIDGET_SCRIPT_URL = {\n staging: \"https://d3nshle8hzelnq.cloudfront.net/neeto-widget-staging.js\",\n production: \"https://d13nryxs46eypn.cloudfront.net/neeto-widget.js\",\n};\n\nexport const AVAILABLE_FRAMEWORK_OPTIONS = Object.freeze({\n rails: \"rails\",\n django: \"django\",\n php: \"php\",\n});\n\nexport const FRAMEWORK_SELECT_OPTIONS = [\n { label: \"Ruby(Rails)\", value: AVAILABLE_FRAMEWORK_OPTIONS.rails },\n { label: \"Python(Django)\", value: AVAILABLE_FRAMEWORK_OPTIONS.django },\n { label: \"PHP\", value: AVAILABLE_FRAMEWORK_OPTIONS.php },\n];\n\nexport const SAMPLE_USER_IDENTITY_CODE_STRING = {\n [AVAILABLE_FRAMEWORK_OPTIONS.rails]: `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {\n user_identifier: \"<%= current_user.id %>\", // User identifier\"\n name: \"<%= current_user.name %>\", // Full name\n email: \"<%= current_user.email %>\", // Email address\n started_at: \"<%= current_user.created_at.to_i %>\" // Signup date as a Unix timestamp ,\n}`,\n [AVAILABLE_FRAMEWORK_OPTIONS.django]: `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {\n user_identifier: \"{{ request.user.id|escapejs }}\", // User identifier\n name: \"{{ request.user.name|escapejs }}\", // Full name\n email: \"{{ request.user.email|escapejs }}\", // Email address\n started_at: \"{{ request.user.created_at|date:'U' }}\" // Signup date as a Unix timestamp\"\n}`,\n [AVAILABLE_FRAMEWORK_OPTIONS.php]: `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {\n user_identifier: <?php echo json_encode($current_user->id) ?>, // User identifier\n name: <?php echo json_encode($current_user->name) ?>, // Full name\n email: <?php echo json_encode($current_user->email) ?>, // Email address\n started_at: <?php echo strtotime($current_user->created_at) ?> // Signup date as a Unix timestamp\" ,\n}`,\n};\nexport const WIDGET_CONFIG_URL = \"/api/widget/v1/neeto_widget_tokens\";\nexport const EMBED_CODE_EMAIL_URL = \"/api/widget/v1/email_snippets\";\nexport const CHAT_WIDGET_KB_BASE_URL = \"https://help.neetochat.com\";\nexport const ENGAGE_WIDGET_KB_BASE_URL = \"https://help.neetoengage.com\";\nexport const REPLAY_WIDGET_KB_BASE_URL = \"https://help.neetoreplay.com\";\nexport const NEETO_REPLAY_CONFIGURE_URL = `${REPLAY_WIDGET_KB_BASE_URL}/articles/configure-widget`;\nexport const NEETO_CHAT_USER_IDENTITY_URL = `${CHAT_WIDGET_KB_BASE_URL}/articles/info-about-logged-in-users`;\nexport const WIDGET_KB_HELP_URL = {\n engage: `${ENGAGE_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n chat: `${CHAT_WIDGET_KB_BASE_URL}/folders/installation`,\n replay: `${REPLAY_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n};\nexport const USE_NEETO_WIDGET_NPM_PAGE_URL =\n \"https://www.npmjs.com/package/@bigbinary/react-use-neeto-widget\";\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans } from \"react-i18next\";\n\nimport { WIDGET_HELP_LINKS, WIDGET_TYPES } from \"./constants\";\n\nconst ChatWidgetBody = ({ widgets }) => (\n <>\n {widgets.includes(WIDGET_TYPES.engage) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.engageHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.engage }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.engage}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n )}\n {widgets.includes(WIDGET_TYPES.chat) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.chatHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.chat }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.chat}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n )}\n {widgets.includes(WIDGET_TYPES.replay) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.replayHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.replay }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.replay}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n )}\n </>\n);\n\nexport default ChatWidgetBody;\n","import { memo, useEffect } from \"react\";\n\nimport Prism from \"prismjs\";\nimport \"prismjs/themes/prism-tomorrow.css\";\n\nconst SyntaxHighlighter = ({ className, code, language }) => {\n useEffect(() => {\n Prism.highlightAll();\n }, [code]);\n\n return (\n <pre {...{ className }}>\n <code className={`language-${language}`}>{code}</code>\n </pre>\n );\n};\n\nexport default memo(SyntaxHighlighter);\n","import { Button, Select, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport { FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport SyntaxHighlighter from \"./SyntaxHighlighter\";\n\nimport CopyToClipboardButton from \"../CopyToClipboardButton\";\n\nconst CodeBlock = ({\n title = (\n <div>\n <Trans i18nKey=\"neetoMolecules.codeblock.codeSnippet\" />\n </div>\n ),\n codeString,\n showCopyButton = true,\n className = \"\",\n sendViaEmail = undefined,\n frameworkProps = {},\n}) => {\n const { t } = useTranslation();\n const { selectedFramework, setSelectedFramework } = frameworkProps ?? {};\n\n return (\n <div className={classnames([\"relative\", className])}>\n <div className=\"border-border bg-muted flex w-full flex-wrap items-center justify-between gap-2 rounded-lg rounded-b-none border p-3\">\n {title && (\n <Typography\n className=\"m-0 flex-shrink-0\"\n data-testid=\"code-block-title-text\"\n variant=\"h4\"\n >\n {title}\n </Typography>\n )}\n {selectedFramework && (\n <Select\n className=\"max-w-40\"\n data-testid=\"framework-select\"\n options={FRAMEWORK_SELECT_OPTIONS}\n value={selectedFramework}\n onChange={setSelectedFramework}\n />\n )}\n <div className=\"ms-auto flex flex-shrink-0 items-center justify-end gap-2\">\n {sendViaEmail ? (\n <Button\n variant=\"secondary\"\n label={t(\n \"neetoMolecules.widget.installation.snippet.sendViaEmail\"\n )}\n onClick={sendViaEmail}\n />\n ) : null}\n </div>\n </div>\n <div className=\"relative\">\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"absolute top-3 right-3\"\n value={codeString}\n variant=\"secondary\"\n tooltipContent={t(\n \"neetoMolecules.widget.installation.snippet.copy\"\n )}\n />\n )}\n <SyntaxHighlighter\n className=\"m-0 rounded-lg rounded-t-none pt-4\"\n code={codeString}\n language=\"javascript\"\n />\n </div>\n </div>\n );\n};\n\nCodeBlock.propTypes = {\n title: PropTypes.object,\n codeString: PropTypes.string,\n showCopyButton: PropTypes.bool,\n className: PropTypes.string,\n sendViaEmail: PropTypes.func,\n frameworkProps: PropTypes.object,\n};\n\nexport default CodeBlock;\n","import i18next, { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { identity, last, pluck } from \"ramda\";\nimport * as yup from \"yup\";\n\nimport {\n NEETO_WIDGET_USER_IDENTITY_KEY,\n SESSION_CONTEXT_KEY,\n RAILS_ENV,\n NEETO_WIDGET_SCRIPT_URL,\n SAMPLE_USER_IDENTITY_CODE_STRING,\n WIDGET_DESCRIPTIONS,\n} from \"./constants\";\n\nconst buildEmbedWidgetScript = () => {\n const widgetScriptUrl =\n window.globalProps.railsEnv === RAILS_ENV.production\n ? NEETO_WIDGET_SCRIPT_URL.production\n : NEETO_WIDGET_SCRIPT_URL.staging;\n\n return `<script src=\"${widgetScriptUrl}\"></script>`;\n};\n\nconst indentAndFormat = (str, formatter = identity) =>\n str.split(\"\\n\").map(formatter).join(\"\\n \");\n\nconst getCommentedCommand = (command, isEnabled) =>\n isEnabled ? command : `/// ${command}`;\n\nconst embedWidgetEnvironment = () => {\n switch (window.globalProps.railsEnv) {\n case RAILS_ENV.production:\n return \"\";\n case RAILS_ENV.development:\n return `environment: \"${RAILS_ENV.development}\",`;\n case RAILS_ENV.staging:\n return `environment: \"${RAILS_ENV.staging}\",`;\n default:\n return \"/* Unidentified RAILS_ENV, */\";\n }\n};\n\nconst embedWidgetApiKey = apiKey => `apiKey: \"${apiKey}\",`;\n\nconst addEngageOptions = () => `neetoEngageOptions: {\n elementId: \"neetoengage-trigger\",\n},`;\n\nconst wrapBlockInOnLoad = codeBlock =>\n `window.addEventListener(\"load\", () => ${codeBlock});`;\n\nconst embedWidgetFunctionCall = (enabledWidgets, apiKey) => `embedNeetoWidget({\n ${embedWidgetEnvironment()}\n ${indentAndFormat(embedWidgetApiKey(apiKey))}\n ${indentAndFormat(addEngageOptions(), cmd =>\n getCommentedCommand(cmd, enabledWidgets.engage)\n )}\n})`;\n\nconst filterMarkedCommands = queryString =>\n queryString\n .split(\"\\n\")\n .filter(line => !line.includes(\"///\") && line.trim())\n .join(\"\\n\");\n\nexport const getSampleUserIdentity = (enabledWidgets, selectedFramework) => {\n const splitCodeLines =\n SAMPLE_USER_IDENTITY_CODE_STRING[selectedFramework].split(\"\\n\");\n\n return filterMarkedCommands(\n splitCodeLines\n .map(cmd => {\n const isEmailKey = cmd.includes(\"email\");\n const isObjectStartLine = cmd === splitCodeLines[0];\n const isObjectEndLine = cmd === last(splitCodeLines);\n const isLineHidden =\n !isEmailKey && !isObjectStartLine && !isObjectEndLine;\n if (\n (!enabledWidgets.chat && isLineHidden) ||\n (!enabledWidgets.chat && !enabledWidgets.replay)\n ) {\n return null;\n }\n\n return cmd;\n })\n .join(\"\\n\")\n );\n};\n\nexport const sampleConsolidatedCodeString = (enabledWidgets, apiKey) =>\n filterMarkedCommands(`${buildEmbedWidgetScript()}\n<script>\n ${\n enabledWidgets.chat || enabledWidgets.replay\n ? `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {};`\n : \"\"\n }\n ${enabledWidgets.replay ? `window.${SESSION_CONTEXT_KEY} = {};` : \"\"}\n\n ${indentAndFormat(\n wrapBlockInOnLoad(embedWidgetFunctionCall(enabledWidgets, apiKey))\n )}\n</script>`);\n\nexport const getEmailWidgetSnippetFormInitialValues = subject => ({\n emails: [],\n subject,\n});\n\nexport const getSortedPrefixedWidgets = widgets => {\n const sortedWidgets = widgets\n .sort()\n .map(widget => `Neeto${capitalize(widget)}`);\n\n return sortedWidgets.length === 1\n ? sortedWidgets\n : t(\"neetoMolecules.widget.email.widgetList\", {\n widgets: sortedWidgets,\n });\n};\n\nexport const getWidgetDescriptions = widgets => {\n const values = Object.entries(WIDGET_DESCRIPTIONS).filter(([widget]) =>\n widgets.includes(widget)\n );\n\n return pluck(1, values);\n};\n\nexport const getEmailWidgetSnippetValidationSchema = () =>\n yup.object({\n emails: yup\n .array()\n .required()\n .label(i18next.t(\"neetoMolecules.widget.email.fields.emails.label\")),\n subject: yup\n .string()\n .required()\n .label(i18next.t(\"neetoMolecules.widget.email.fields.subject.label\")),\n });\n\nexport const getWidgetApiKeyUrl = () =>\n `api/widget/v1/api_keys/${window.globalProps.organization.subdomain}`;\n\nexport const shouldShowSwitches = () => false;\n","import axios from \"axios\";\n\nimport { EMBED_CODE_EMAIL_URL, WIDGET_CONFIG_URL } from \"./constants\";\nimport { getWidgetApiKeyUrl } from \"./utils\";\n\nexport const queryWidgetApiKey = () =>\n axios.get(getWidgetApiKeyUrl(), { showToastr: false });\n\nexport const emailWidgetSnippet = data =>\n axios.post(EMBED_CODE_EMAIL_URL, data);\n\nexport const fetchWidgetConfiguration = () => axios.get(WIDGET_CONFIG_URL);\n\nexport const updateWidgetConfiguration = ({ id, payload }) =>\n axios.put(`${WIDGET_CONFIG_URL}/${id}`, payload);\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport { emailWidgetSnippet } from \"./api\";\n\nexport const useEmailEmbedCode = onSuccess =>\n useMutation({\n mutationFn: emailData => emailWidgetSnippet(emailData),\n onSuccess,\n });\n","import { useState } from \"react\";\n\nimport { Typography, Button, Sheet, Toastr } from \"@bigbinary/neeto-atoms\";\nimport { Input, MultiEmailInput } from \"@bigbinary/neeto-atoms/formik\";\nimport { Formik, Form } from \"formik\";\nimport PropTypes from \"prop-types\";\nimport { pluck, any, assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CodeBlock from \"./CodeBlock\";\nimport { EMAIL_TYPES, FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport { useEmailEmbedCode } from \"./mutations\";\nimport {\n getEmailWidgetSnippetFormInitialValues,\n getEmailWidgetSnippetValidationSchema,\n getSampleUserIdentity,\n} from \"./utils\";\n\nconst CodeSnippet = ({\n isPaneOpen,\n onClose,\n codeString,\n subject = \"\",\n body = \"\",\n emailType = EMAIL_TYPES.embedCode,\n enabledWidgets = {},\n}) => {\n const { t } = useTranslation();\n const [selectedFramework, setSelectedFramework] = useState(\n FRAMEWORK_SELECT_OPTIONS[0].value\n );\n const emailMutation = useEmailEmbedCode(onClose);\n\n const codeToDisplay =\n emailType === EMAIL_TYPES.userIdentity\n ? getSampleUserIdentity(enabledWidgets, selectedFramework)\n : codeString;\n\n const handleSubmit = formData => {\n if (any(({ valid }) => !valid, formData.emails)) {\n Toastr.error(t(\"neetoMolecules.widget.email.fields.emails.invalidError\"));\n\n return;\n }\n\n emailMutation.mutate({\n subject: formData.subject,\n emails: pluck(\"value\", formData.emails),\n message: body.ref?.current.innerHTML ?? body,\n snippet: codeToDisplay,\n });\n };\n\n const renderCodeBlockProps = () => {\n let props = {\n codeString: codeToDisplay,\n showCopyButton: false,\n className: \"rounded-lg\",\n };\n if (emailType === EMAIL_TYPES.userIdentity) {\n props = assoc(\n \"frameworkProps\",\n { selectedFramework, setSelectedFramework },\n props\n );\n }\n\n return props;\n };\n\n return (\n <Sheet {...{ onClose }} aria-describedby={undefined} isOpen={isPaneOpen}>\n <Formik\n initialValues={getEmailWidgetSnippetFormInitialValues(subject)}\n validationSchema={getEmailWidgetSnippetValidationSchema()}\n onSubmit={handleSubmit}\n >\n <Form>\n <Sheet.Header>\n <Sheet.Title>{t(\"neetoMolecules.widget.email.title\")}</Sheet.Title>\n </Sheet.Header>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4\">\n <MultiEmailInput\n required\n label={t(\"neetoMolecules.widget.email.fields.emails.label\")}\n name=\"emails\"\n placeholder={t(\n \"neetoMolecules.widget.email.fields.emails.placeholder\"\n )}\n />\n <Input\n required\n label={t(\"neetoMolecules.widget.email.fields.subject.label\")}\n name=\"subject\"\n type=\"text\"\n />\n <Typography variant=\"body2\">{body}</Typography>\n <CodeBlock {...renderCodeBlockProps()} />\n </div>\n </Sheet.Body>\n <Sheet.Footer className=\"gap-x-2\">\n <Button\n disabled={emailMutation.isPending}\n label={t(\"neetoMolecules.widget.email.actions.send\")}\n loading={emailMutation.isPending}\n type=\"submit\"\n />\n <Button\n label={t(\"neetoMolecules.widget.email.actions.cancel\")}\n variant=\"ghost\"\n onClick={onClose}\n />\n </Sheet.Footer>\n </Form>\n </Formik>\n </Sheet>\n );\n};\n\nCodeSnippet.propTypes = {\n isPaneOpen: PropTypes.bool,\n onClose: PropTypes.func,\n codeString: PropTypes.string,\n subject: PropTypes.string,\n body: PropTypes.string,\n};\n\nexport default CodeSnippet;\n","import { useState } from \"react\";\n\nconst useForceUpdate = () => {\n // eslint-disable-next-line react/hook-use-state\n const [, setValue] = useState(0);\n\n return () => setValue(value => value + 1);\n};\n\nexport default useForceUpdate;\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/v2/react-utils/useMutationWithInvalidation\";\n\nimport {\n queryWidgetApiKey,\n fetchWidgetConfiguration,\n updateWidgetConfiguration,\n} from \"./api\";\nimport { DEFAULT_QUERY_STALE_TIME, QUERY_KEYS } from \"./constants\";\n\nexport const useFetchApiKey = () =>\n useQuery({\n queryKey: [QUERY_KEYS.apiKey],\n queryFn: () => {\n if (\n window.globalProps.railsEnv === \"heroku\" ||\n !window.globalProps.ssoEnabled\n ) {\n return Promise.resolve({ widgetApiKey: \"placeholder-api-key\" });\n }\n\n return queryWidgetApiKey();\n },\n staleTime: DEFAULT_QUERY_STALE_TIME,\n });\n\nexport const useFetchConfigurations = () =>\n useQuery({\n queryKey: [QUERY_KEYS.configuration],\n queryFn: fetchWidgetConfiguration,\n staleTime: DEFAULT_QUERY_STALE_TIME,\n });\n\nexport const useUpdateConfigurations = (options = {}) =>\n useMutationWithInvalidation(updateWidgetConfiguration, {\n keysToInvalidate: [[QUERY_KEYS.configuration]],\n ...options,\n });\n","import { Switch, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { capitalize } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst TooltipSwitch = withT(\n ({\n t,\n enabledClientApps,\n widget,\n selectedWidgets,\n updateSelectedWidgets,\n }) => (\n <Tooltip\n disabled={enabledClientApps.includes(widget)}\n position=\"right\"\n content={t(\"neetoMolecules.widget.tooltips.productIsDisabled\", {\n productName: `Neeto${capitalize(widget)}`,\n })}\n >\n <span>\n <Switch\n checked={selectedWidgets.includes(widget)}\n disabled={!enabledClientApps.includes(widget)}\n onCheckedChange={() => updateSelectedWidgets(widget)}\n />\n </span>\n </Tooltip>\n )\n);\n\nexport default TooltipSwitch;\n","import { memo, useState, useRef, useEffect } from \"react\";\n\nimport { Button, Toastr, Typography, Spinner } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { capitalize, isNotEmpty } from \"neetocist\";\nimport usePrevious from \"neetocommons/v2/react-utils/usePrevious\";\nimport PropTypes from \"prop-types\";\nimport { fromPairs, isEmpty, prop } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport ChatWidgetBody from \"./ChatWidgetBody\";\nimport CodeBlock from \"./CodeBlock\";\nimport CodeSnippet from \"./CodeSnippet\";\nimport {\n EMAIL_TYPES,\n SAMPLE_CONTEXT_CODE_STRING,\n INSTALLATION_HELP_EMAIL,\n FRAMEWORK_SELECT_OPTIONS,\n NEETO_CHAT_USER_IDENTITY_URL,\n NEETO_REPLAY_CONFIGURE_URL,\n WIDGET_TYPES,\n WIDGET_KB_HELP_URL,\n USE_NEETO_WIDGET_NPM_PAGE_URL,\n} from \"./constants\";\nimport useForceUpdate from \"./hooks/useForceUpdate\";\nimport {\n useFetchApiKey,\n useFetchConfigurations,\n useUpdateConfigurations,\n} from \"./queries\";\nimport SelectionSwitches from \"./SelectionSwitches\";\nimport {\n getSampleUserIdentity,\n getSortedPrefixedWidgets,\n getWidgetDescriptions,\n sampleConsolidatedCodeString,\n shouldShowSwitches,\n} from \"./utils\";\n\nconst EmbedCode = ({\n showSessionContext,\n showUserIdentity,\n primaryApp = \"\",\n maxWidth = \"max-w-3xl\",\n}) => {\n const [emailType, setEmailType] = useState(EMAIL_TYPES.null);\n const [selectedFramework, setSelectedFramework] = useState(\n FRAMEWORK_SELECT_OPTIONS[0].value\n );\n\n const { t } = useTranslation();\n const bodyRef = useRef();\n const forceUpdate = useForceUpdate();\n\n useEffect(() => {\n forceUpdate();\n }, []);\n\n const { data: { widgetApiKey = \"\" } = {}, isLoading: isLoadingApiKey } =\n useFetchApiKey();\n\n const {\n data: { neetoWidgetTokens = [] } = {},\n isLoading: isLoadingConfigurations,\n } = useFetchConfigurations();\n\n const { mutate: updateWidgetConfiguration } = useUpdateConfigurations();\n\n const previousEmailType = usePrevious(emailType);\n\n const selectedWidgets = [primaryApp];\n\n const isOnlyChatWidgetSelected =\n selectedWidgets.length === 1 && selectedWidgets[0] === WIDGET_TYPES.chat;\n\n const enabledClientApps = neetoWidgetTokens\n .filter(prop(\"clientApplicationEnabled\"))\n .map(item => item.clientApplicationName.toLowerCase());\n\n const enabledWidgets = fromPairs(\n selectedWidgets.map(widget => [widget, true])\n );\n\n const shouldShowUserIdentity =\n showUserIdentity ?? (enabledWidgets.chat || enabledWidgets.replay);\n\n const shouldShowSessionContext = showSessionContext ?? enabledWidgets.replay;\n\n const updateSelectedWidgets = widget => {\n const widgetId = neetoWidgetTokens.find(\n item => item.clientApplicationName.toLowerCase() === widget\n ).id;\n const isEnabled = !selectedWidgets.includes(widget);\n\n updateWidgetConfiguration(\n { id: widgetId, payload: { enabled: isEnabled } },\n {\n onSuccess: () => {\n const productName = `neeto${capitalize(widget)}`;\n const response = isEnabled\n ? \"neetoMolecules.widget.installation.enabled\"\n : \"neetoMolecules.widget.installation.disabled\";\n\n Toastr.success(t(response, { productName }));\n },\n }\n );\n };\n\n const getEmbedCodeString = () =>\n isNotEmpty(widgetApiKey)\n ? sampleConsolidatedCodeString(enabledWidgets, widgetApiKey)\n : \"\";\n\n const getSnippetProps = selectedEmailType => {\n switch (selectedEmailType) {\n case EMAIL_TYPES.embedCode:\n return {\n codeString: getEmbedCodeString(),\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.embedCode\",\n { widgetList: getSortedPrefixedWidgets(selectedWidgets) }\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.mainText\"\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n }}\n values={{\n val: getWidgetDescriptions(selectedWidgets),\n }}\n />\n <ChatWidgetBody widgets={selectedWidgets} />\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.supportText\"\n values={{ helpEmail: INSTALLATION_HELP_EMAIL }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n mail: (\n <Button\n href={`mailto:${INSTALLATION_HELP_EMAIL}`}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.userIdentity:\n return {\n emailType: EMAIL_TYPES.userIdentity,\n enabledWidgets,\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.userIdentity\"\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.userIdentity\"\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n configureLink: (\n <Button\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n values={{\n userIdentityKbUrl: enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL,\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.sessionContext:\n return {\n codeString: SAMPLE_CONTEXT_CODE_STRING,\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.sessionContext\"\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.sessionContext\"\n values={{ sessionContextKbUrl: NEETO_REPLAY_CONFIGURE_URL }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n configureLink: (\n <Button\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.null:\n return previousEmailType !== EMAIL_TYPES.null\n ? getSnippetProps(previousEmailType)\n : {};\n default:\n throw new Error(t(\"neetoMolecules.widget.email.invalidType\"));\n }\n };\n\n const handleSendViaEmail = selectedEmail => {\n if (isEmpty(selectedWidgets)) {\n Toastr.error(\n t(\"neetoMolecules.widget.installation.snippet.disabledError\")\n );\n\n return;\n }\n\n setEmailType(selectedEmail);\n };\n\n const getSelectedWidgetsInstructionsKey = () => {\n if (isEmpty(selectedWidgets)) {\n return \"neetoMolecules.widget.installation.instructions.placement.noneOfThese\";\n }\n\n if (isOnlyChatWidgetSelected) {\n return \"neetoMolecules.widget.installation.instructions.placement.selectedChatWidget\";\n }\n\n return \"neetoMolecules.widget.installation.instructions.placement.selectedWidgets\";\n };\n\n const embedHelpTextTranslationComponents = {\n fontBold: <Typography as=\"span\" variant=\"body2\" weight=\"semibold\" />,\n widgetNpmLink: (\n <Button\n href={USE_NEETO_WIDGET_NPM_PAGE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n Link: (\n <Button\n href={WIDGET_KB_HELP_URL[primaryApp]}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n };\n\n if (isLoadingApiKey || isLoadingConfigurations) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"mx-auto mb-10 w-full flex-col items-center justify-start\">\n <div className={classnames(\"mx-auto\", maxWidth)}>\n {shouldShowSwitches() && (\n <SelectionSwitches\n {...{\n enabledClientApps,\n primaryApp,\n selectedWidgets,\n updateSelectedWidgets,\n }}\n />\n )}\n <div className=\"mb-8 w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\" data-testid=\"embed-code-block\">\n <CodeBlock\n className=\"rounded-lg\"\n codeString={getEmbedCodeString()}\n sendViaEmail={() => handleSendViaEmail(EMAIL_TYPES.embedCode)}\n title={<div>{t(\"neetoMolecules.widget.title.embedCode\")}</div>}\n />\n </div>\n <div className=\"w-full\">\n <Trans\n components={embedHelpTextTranslationComponents}\n i18nKey={getSelectedWidgetsInstructionsKey()}\n values={{ widgetList: getSortedPrefixedWidgets(selectedWidgets) }}\n />\n </div>\n </div>\n {shouldShowUserIdentity ? (\n <div className=\"mb-8 w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\">\n <CodeBlock\n className=\"rounded-lg\"\n frameworkProps={{ selectedFramework, setSelectedFramework }}\n title={t(\"neetoMolecules.widget.title.userIdentity\")}\n codeString={getSampleUserIdentity(\n enabledWidgets,\n selectedFramework\n )}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.userIdentity)\n }\n />\n </div>\n <Trans\n components={{\n p: <Typography variant=\"body2\" />,\n Link: (\n <Button\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n i18nKey={\n enabledWidgets.chat\n ? \"neetoMolecules.widget.installation.instructions.userIdentity.chat\"\n : \"neetoMolecules.widget.installation.instructions.userIdentity.replay\"\n }\n />\n </div>\n ) : null}\n {shouldShowSessionContext ? (\n <div className=\"w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\">\n <CodeBlock\n className=\"rounded-lg\"\n codeString={SAMPLE_CONTEXT_CODE_STRING}\n title={t(\"neetoMolecules.widget.title.sessionContext\")}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.sessionContext)\n }\n />\n </div>\n <Trans\n i18nKey=\"neetoMolecules.widget.installation.instructions.sessionContext\"\n components={{\n p: <Typography variant=\"body2\" />,\n Link: (\n <Button\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n </div>\n ) : null}\n </div>\n <CodeSnippet\n isPaneOpen={!!emailType && isNotEmpty(selectedWidgets)}\n onClose={() => setEmailType(EMAIL_TYPES.null)}\n {...getSnippetProps(emailType)}\n />\n </div>\n );\n};\n\nEmbedCode.propTypes = {\n primaryApp: PropTypes.string,\n maxWidth: PropTypes.string,\n};\n\nexport default memo(EmbedCode);\n","import { Callout } from \"@bigbinary/neeto-atoms\";\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmbedCode from \"./EmbedCode\";\n\nconst queryClient = new QueryClient();\n\nconst Main = props => {\n const { t } = useTranslation();\n\n const shouldRenderEmbedCode = window.globalProps.ssoEnabled;\n\n return shouldRenderEmbedCode ? (\n <QueryClientProvider client={queryClient}>\n <EmbedCode {...props} />\n </QueryClientProvider>\n ) : (\n <Callout variant=\"info\">\n {t(\"neetoMolecules.widget.developmentInfo\")}\n </Callout>\n );\n};\n\nMain.propTypes = {\n /**\n * This specifies which is the primary widget which is shown on the left side of selection tabs.\n */\n primaryApp: PropTypes.string,\n};\n\nexport default Main;\n","import { WIDGET_TYPES } from \"./constants\";\nimport Main from \"./Main\";\n\nconst NeetoWidget = { EmbedCode: Main, WIDGET_TYPES };\n\nexport default NeetoWidget;\n"],"names":["NEETO_WIDGET_USER_IDENTITY_KEY","SESSION_CONTEXT_KEY","INSTALLATION_HELP_EMAIL","SAMPLE_CONTEXT_CODE_STRING","concat","WIDGET_TYPES","engage","chat","replay","WIDGET_HELP_LINKS","WIDGET_DESCRIPTIONS","t","values","QUERY_KEYS","apiKey","configuration","DEFAULT_QUERY_STALE_TIME","EMAIL_TYPES","embedCode","userIdentity","sessionContext","RAILS_ENV","production","staging","development","NEETO_WIDGET_SCRIPT_URL","AVAILABLE_FRAMEWORK_OPTIONS","Object","freeze","rails","django","php","FRAMEWORK_SELECT_OPTIONS","label","value","SAMPLE_USER_IDENTITY_CODE_STRING","_defineProperty","WIDGET_CONFIG_URL","EMBED_CODE_EMAIL_URL","CHAT_WIDGET_KB_BASE_URL","ENGAGE_WIDGET_KB_BASE_URL","REPLAY_WIDGET_KB_BASE_URL","NEETO_REPLAY_CONFIGURE_URL","NEETO_CHAT_USER_IDENTITY_URL","WIDGET_KB_HELP_URL","USE_NEETO_WIDGET_NPM_PAGE_URL","ChatWidgetBody","_ref","widgets","_jsxs","_Fragment","children","includes","_jsx","Trans","i18nKey","helpLink","components","p","Typography","className","variant","a","Button","href","rel","target","SyntaxHighlighter","code","language","useEffect","Prism","highlightAll","memo","CodeBlock","_ref$title","title","codeString","_ref$showCopyButton","showCopyButton","_ref$className","_ref$sendViaEmail","sendViaEmail","undefined","_ref$frameworkProps","frameworkProps","_useTranslation","useTranslation","_ref2","selectedFramework","setSelectedFramework","classnames","Select","options","onChange","onClick","CopyToClipboardButton","tooltipContent","buildEmbedWidgetScript","widgetScriptUrl","window","globalProps","railsEnv","indentAndFormat","str","formatter","arguments","length","identity","split","map","join","getCommentedCommand","command","isEnabled","embedWidgetEnvironment","embedWidgetApiKey","addEngageOptions","wrapBlockInOnLoad","codeBlock","embedWidgetFunctionCall","enabledWidgets","cmd","filterMarkedCommands","queryString","filter","line","trim","getSampleUserIdentity","splitCodeLines","isEmailKey","isObjectStartLine","isObjectEndLine","last","isLineHidden","sampleConsolidatedCodeString","getEmailWidgetSnippetFormInitialValues","subject","emails","getSortedPrefixedWidgets","sortedWidgets","sort","widget","capitalize","getWidgetDescriptions","entries","_slicedToArray","pluck","getEmailWidgetSnippetValidationSchema","yup","object","array","required","i18next","string","getWidgetApiKeyUrl","organization","subdomain","shouldShowSwitches","queryWidgetApiKey","axios","get","showToastr","emailWidgetSnippet","data","post","fetchWidgetConfiguration","updateWidgetConfiguration","id","payload","put","useEmailEmbedCode","onSuccess","useMutation","mutationFn","emailData","CodeSnippet","isPaneOpen","onClose","_ref$subject","_ref$body","body","_ref$emailType","emailType","_ref$enabledWidgets","_useState","useState","_useState2","emailMutation","codeToDisplay","handleSubmit","formData","_body$ref$current$inn","_body$ref","any","valid","Toastr","error","mutate","message","ref","current","innerHTML","snippet","renderCodeBlockProps","props","assoc","Sheet","isOpen","Formik","initialValues","validationSchema","onSubmit","Form","Header","Title","Body","MultiEmailInput","name","placeholder","Input","type","_objectSpread","Footer","disabled","isPending","loading","useForceUpdate","setValue","useFetchApiKey","useQuery","queryKey","queryFn","ssoEnabled","Promise","resolve","widgetApiKey","staleTime","useFetchConfigurations","useUpdateConfigurations","useMutationWithInvalidation","keysToInvalidate","withT","enabledClientApps","selectedWidgets","updateSelectedWidgets","Tooltip","position","content","productName","Switch","checked","onCheckedChange","EmbedCode","showSessionContext","showUserIdentity","_ref$primaryApp","primaryApp","_ref$maxWidth","maxWidth","setEmailType","_useState3","_useState4","bodyRef","useRef","forceUpdate","_useFetchApiKey","_useFetchApiKey$data","_useFetchApiKey$data2","_useFetchApiKey$data3","isLoadingApiKey","isLoading","_useFetchConfiguratio","_useFetchConfiguratio2","_useFetchConfiguratio3","_useFetchConfiguratio4","neetoWidgetTokens","isLoadingConfigurations","_useUpdateConfigurati","previousEmailType","usePrevious","isOnlyChatWidgetSelected","prop","item","clientApplicationName","toLowerCase","fromPairs","shouldShowUserIdentity","shouldShowSessionContext","getEmbedCodeString","isNotEmpty","getSnippetProps","selectedEmailType","widgetList","val","helpEmail","mail","configureLink","userIdentityKbUrl","sessionContextKbUrl","Error","handleSendViaEmail","selectedEmail","isEmpty","getSelectedWidgetsInstructionsKey","embedHelpTextTranslationComponents","fontBold","as","weight","widgetNpmLink","Link","Spinner","queryClient","QueryClient","Main","shouldRenderEmbedCode","QueryClientProvider","client","Callout","NeetoWidget"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NeetoWidget.js","sources":["../../src/v2/components/NeetoWidget/constants.js","../../src/v2/components/NeetoWidget/ChatWidgetBody.jsx","../../src/v2/components/NeetoWidget/SyntaxHighlighter.jsx","../../src/v2/components/NeetoWidget/CodeBlock.jsx","../../src/v2/components/NeetoWidget/utils.js","../../src/v2/components/NeetoWidget/api.js","../../src/v2/components/NeetoWidget/mutations.js","../../src/v2/components/NeetoWidget/CodeSnippet.jsx","../../src/v2/components/NeetoWidget/hooks/useForceUpdate.js","../../src/v2/components/NeetoWidget/queries.js","../../src/v2/components/NeetoWidget/SelectionSwitches/TooltipSwitch.jsx","../../src/v2/components/NeetoWidget/EmbedCode.jsx","../../src/v2/components/NeetoWidget/Main.jsx","../../src/v2/components/NeetoWidget/index.js"],"sourcesContent":["// The `standardize-help-urls` rule expects a single-product `helpUrls.js` with a\n// `HELP_DOCS_BASE_URL` matching `help.neeto<product>.com` and `/p/<permalink>`\n// links. NeetoWidget links out to multiple products' (neetoChat / neetoEngage /\n// neetoReplay) `/articles/...` help pages, which has no single docs base to\n// satisfy the rule, so the URLs are kept inline (as in v1).\n/* eslint-disable @bigbinary/neeto/standardize-help-urls */\nimport { t } from \"i18next\";\nimport { values } from \"ramda\";\n\nexport const NEETO_WIDGET_USER_IDENTITY_KEY = \"NeetoWidgetUserIdentity\";\nexport const SESSION_CONTEXT_KEY = \"NeetoReplayWidgetSessionContext\";\n\nexport const INSTALLATION_HELP_EMAIL = \"support@neeto.com\";\n\nexport const SAMPLE_CONTEXT_CODE_STRING = `window.${SESSION_CONTEXT_KEY} = {\n key1: \"value\",\n key2: [\"array\", \"of\", \"values\"],\n /* More key-value pairs */\n}`;\n\nexport const WIDGET_TYPES = {\n engage: \"engage\",\n chat: \"chat\",\n replay: \"replay\",\n};\n\nexport const WIDGET_HELP_LINKS = {\n engage: \"https://help.neetoengage.com/articles/installation\",\n chat: \"https://help.neetochat.com/articles/installation-using-javascript-snippet\",\n replay: \"https://help.neetoreplay.com/articles/install-widget\",\n};\n\nexport const WIDGET_DESCRIPTIONS = {\n engage: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.engage\"\n ),\n chat: t(\"neetoMolecules.widget.email.body.values.embedCode.description.chat\"),\n replay: t(\n \"neetoMolecules.widget.email.body.values.embedCode.description.replay\"\n ),\n};\n\nexport const WIDGET_TYPES_VALUES = values(WIDGET_TYPES);\n\nexport const QUERY_KEYS = {\n apiKey: \"neetoWidgetApiKey\",\n configuration: \"neetoWidgetConfiguration\",\n};\n\nexport const DEFAULT_QUERY_STALE_TIME = 60 * 60 * 1000; // 1 hour in milliseconds\n\nexport const EMAIL_TYPES = {\n embedCode: \"embedCode\",\n userIdentity: \"userIdentity\",\n sessionContext: \"sessionContext\",\n null: \"\",\n};\n\nexport const RAILS_ENV = {\n production: \"production\",\n staging: \"staging\",\n development: \"development\",\n};\n\nexport const NEETO_WIDGET_SCRIPT_URL = {\n staging: \"https://d3nshle8hzelnq.cloudfront.net/neeto-widget-staging.js\",\n production: \"https://d13nryxs46eypn.cloudfront.net/neeto-widget.js\",\n};\n\nexport const AVAILABLE_FRAMEWORK_OPTIONS = Object.freeze({\n rails: \"rails\",\n django: \"django\",\n php: \"php\",\n});\n\nexport const FRAMEWORK_SELECT_OPTIONS = [\n { label: \"Ruby(Rails)\", value: AVAILABLE_FRAMEWORK_OPTIONS.rails },\n { label: \"Python(Django)\", value: AVAILABLE_FRAMEWORK_OPTIONS.django },\n { label: \"PHP\", value: AVAILABLE_FRAMEWORK_OPTIONS.php },\n];\n\nexport const SAMPLE_USER_IDENTITY_CODE_STRING = {\n [AVAILABLE_FRAMEWORK_OPTIONS.rails]: `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {\n user_identifier: \"<%= current_user.id %>\", // User identifier\"\n name: \"<%= current_user.name %>\", // Full name\n email: \"<%= current_user.email %>\", // Email address\n started_at: \"<%= current_user.created_at.to_i %>\" // Signup date as a Unix timestamp ,\n}`,\n [AVAILABLE_FRAMEWORK_OPTIONS.django]: `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {\n user_identifier: \"{{ request.user.id|escapejs }}\", // User identifier\n name: \"{{ request.user.name|escapejs }}\", // Full name\n email: \"{{ request.user.email|escapejs }}\", // Email address\n started_at: \"{{ request.user.created_at|date:'U' }}\" // Signup date as a Unix timestamp\"\n}`,\n [AVAILABLE_FRAMEWORK_OPTIONS.php]: `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {\n user_identifier: <?php echo json_encode($current_user->id) ?>, // User identifier\n name: <?php echo json_encode($current_user->name) ?>, // Full name\n email: <?php echo json_encode($current_user->email) ?>, // Email address\n started_at: <?php echo strtotime($current_user->created_at) ?> // Signup date as a Unix timestamp\" ,\n}`,\n};\nexport const WIDGET_CONFIG_URL = \"/api/widget/v1/neeto_widget_tokens\";\nexport const EMBED_CODE_EMAIL_URL = \"/api/widget/v1/email_snippets\";\nexport const CHAT_WIDGET_KB_BASE_URL = \"https://help.neetochat.com\";\nexport const ENGAGE_WIDGET_KB_BASE_URL = \"https://help.neetoengage.com\";\nexport const REPLAY_WIDGET_KB_BASE_URL = \"https://help.neetoreplay.com\";\nexport const NEETO_REPLAY_CONFIGURE_URL = `${REPLAY_WIDGET_KB_BASE_URL}/articles/configure-widget`;\nexport const NEETO_CHAT_USER_IDENTITY_URL = `${CHAT_WIDGET_KB_BASE_URL}/articles/info-about-logged-in-users`;\nexport const WIDGET_KB_HELP_URL = {\n engage: `${ENGAGE_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n chat: `${CHAT_WIDGET_KB_BASE_URL}/folders/installation`,\n replay: `${REPLAY_WIDGET_KB_BASE_URL}/categories/widget-installation-usage`,\n};\nexport const USE_NEETO_WIDGET_NPM_PAGE_URL =\n \"https://www.npmjs.com/package/@bigbinary/react-use-neeto-widget\";\n","import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans } from \"react-i18next\";\n\nimport { WIDGET_HELP_LINKS, WIDGET_TYPES } from \"./constants\";\n\nconst ChatWidgetBody = ({ widgets }) => (\n <>\n {widgets.includes(WIDGET_TYPES.engage) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.engageHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.engage }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.engage}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n )}\n {widgets.includes(WIDGET_TYPES.chat) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.chatHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.chat }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.chat}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n )}\n {widgets.includes(WIDGET_TYPES.replay) && (\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.replayHelp\"\n values={{ helpLink: WIDGET_HELP_LINKS.replay }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n a: (\n <Button\n href={WIDGET_HELP_LINKS.replay}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n )}\n </>\n);\n\nexport default ChatWidgetBody;\n","import { memo, useEffect } from \"react\";\n\nimport Prism from \"prismjs\";\nimport \"prismjs/themes/prism-tomorrow.css\";\n\nconst SyntaxHighlighter = ({ className, code, language }) => {\n useEffect(() => {\n Prism.highlightAll();\n }, [code]);\n\n return (\n <pre {...{ className }}>\n <code className={`language-${language}`}>{code}</code>\n </pre>\n );\n};\n\nexport default memo(SyntaxHighlighter);\n","import { Button, Select, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport { FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport SyntaxHighlighter from \"./SyntaxHighlighter\";\n\nimport CopyToClipboardButton from \"../CopyToClipboardButton\";\n\nconst CodeBlock = ({\n title = <Trans i18nKey=\"neetoMolecules.codeblock.codeSnippet\" />,\n codeString,\n showCopyButton = true,\n className = \"\",\n sendViaEmail = undefined,\n frameworkProps = {},\n}) => {\n const { t } = useTranslation();\n const { selectedFramework, setSelectedFramework } = frameworkProps ?? {};\n\n return (\n <div className={classnames([\"relative\", className])}>\n <div className=\"border-border bg-muted flex w-full flex-wrap items-center justify-between gap-2 rounded-lg rounded-b-none border p-3\">\n {title && (\n <Typography\n as=\"h4\"\n className=\"flex-shrink-0\"\n data-testid=\"code-block-title-text\"\n variant=\"h6\"\n >\n {title}\n </Typography>\n )}\n {selectedFramework && (\n <Select\n className=\"max-w-40\"\n data-testid=\"framework-select\"\n options={FRAMEWORK_SELECT_OPTIONS}\n value={selectedFramework}\n onChange={setSelectedFramework}\n />\n )}\n <div className=\"ms-auto flex flex-shrink-0 items-center justify-end gap-2\">\n {sendViaEmail ? (\n <Button\n variant=\"outline\"\n label={t(\n \"neetoMolecules.widget.installation.snippet.sendViaEmail\"\n )}\n onClick={sendViaEmail}\n />\n ) : null}\n </div>\n </div>\n <div className=\"relative\">\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"absolute top-3 right-3\"\n value={codeString}\n variant=\"secondary\"\n tooltipContent={t(\n \"neetoMolecules.widget.installation.snippet.copy\"\n )}\n />\n )}\n <SyntaxHighlighter\n className=\"!m-0 min-h-16 rounded-lg rounded-t-none pt-4\"\n code={codeString}\n language=\"javascript\"\n />\n </div>\n </div>\n );\n};\n\nCodeBlock.propTypes = {\n title: PropTypes.node,\n codeString: PropTypes.string,\n showCopyButton: PropTypes.bool,\n className: PropTypes.string,\n sendViaEmail: PropTypes.func,\n frameworkProps: PropTypes.object,\n};\n\nexport default CodeBlock;\n","import i18next, { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { identity, last, pluck } from \"ramda\";\nimport * as yup from \"yup\";\n\nimport {\n NEETO_WIDGET_USER_IDENTITY_KEY,\n SESSION_CONTEXT_KEY,\n RAILS_ENV,\n NEETO_WIDGET_SCRIPT_URL,\n SAMPLE_USER_IDENTITY_CODE_STRING,\n WIDGET_DESCRIPTIONS,\n} from \"./constants\";\n\nconst buildEmbedWidgetScript = () => {\n const widgetScriptUrl =\n window.globalProps.railsEnv === RAILS_ENV.production\n ? NEETO_WIDGET_SCRIPT_URL.production\n : NEETO_WIDGET_SCRIPT_URL.staging;\n\n return `<script src=\"${widgetScriptUrl}\"></script>`;\n};\n\nconst indentAndFormat = (str, formatter = identity) =>\n str.split(\"\\n\").map(formatter).join(\"\\n \");\n\nconst getCommentedCommand = (command, isEnabled) =>\n isEnabled ? command : `/// ${command}`;\n\nconst embedWidgetEnvironment = () => {\n switch (window.globalProps.railsEnv) {\n case RAILS_ENV.production:\n return \"\";\n case RAILS_ENV.development:\n return `environment: \"${RAILS_ENV.development}\",`;\n case RAILS_ENV.staging:\n return `environment: \"${RAILS_ENV.staging}\",`;\n default:\n return \"/* Unidentified RAILS_ENV, */\";\n }\n};\n\nconst embedWidgetApiKey = apiKey => `apiKey: \"${apiKey}\",`;\n\nconst addEngageOptions = () => `neetoEngageOptions: {\n elementId: \"neetoengage-trigger\",\n},`;\n\nconst wrapBlockInOnLoad = codeBlock =>\n `window.addEventListener(\"load\", () => ${codeBlock});`;\n\nconst embedWidgetFunctionCall = (enabledWidgets, apiKey) => `embedNeetoWidget({\n ${embedWidgetEnvironment()}\n ${indentAndFormat(embedWidgetApiKey(apiKey))}\n ${indentAndFormat(addEngageOptions(), cmd =>\n getCommentedCommand(cmd, enabledWidgets.engage)\n )}\n})`;\n\nconst filterMarkedCommands = queryString =>\n queryString\n .split(\"\\n\")\n .filter(line => !line.includes(\"///\") && line.trim())\n .join(\"\\n\");\n\nexport const getSampleUserIdentity = (enabledWidgets, selectedFramework) => {\n const splitCodeLines =\n SAMPLE_USER_IDENTITY_CODE_STRING[selectedFramework].split(\"\\n\");\n\n return filterMarkedCommands(\n splitCodeLines\n .map(cmd => {\n const isEmailKey = cmd.includes(\"email\");\n const isObjectStartLine = cmd === splitCodeLines[0];\n const isObjectEndLine = cmd === last(splitCodeLines);\n const isLineHidden =\n !isEmailKey && !isObjectStartLine && !isObjectEndLine;\n if (\n (!enabledWidgets.chat && isLineHidden) ||\n (!enabledWidgets.chat && !enabledWidgets.replay)\n ) {\n return null;\n }\n\n return cmd;\n })\n .join(\"\\n\")\n );\n};\n\nexport const sampleConsolidatedCodeString = (enabledWidgets, apiKey) =>\n filterMarkedCommands(`${buildEmbedWidgetScript()}\n<script>\n ${\n enabledWidgets.chat || enabledWidgets.replay\n ? `window.${NEETO_WIDGET_USER_IDENTITY_KEY} = {};`\n : \"\"\n }\n ${enabledWidgets.replay ? `window.${SESSION_CONTEXT_KEY} = {};` : \"\"}\n\n ${indentAndFormat(\n wrapBlockInOnLoad(embedWidgetFunctionCall(enabledWidgets, apiKey))\n )}\n</script>`);\n\nexport const getEmailWidgetSnippetFormInitialValues = subject => ({\n emails: [],\n subject,\n});\n\nexport const getSortedPrefixedWidgets = widgets => {\n const sortedWidgets = widgets\n .sort()\n .map(widget => `Neeto${capitalize(widget)}`);\n\n return sortedWidgets.length === 1\n ? sortedWidgets\n : t(\"neetoMolecules.widget.email.widgetList\", {\n widgets: sortedWidgets,\n });\n};\n\nexport const getWidgetDescriptions = widgets => {\n const values = Object.entries(WIDGET_DESCRIPTIONS).filter(([widget]) =>\n widgets.includes(widget)\n );\n\n return pluck(1, values);\n};\n\nexport const getEmailWidgetSnippetValidationSchema = () =>\n yup.object({\n emails: yup\n .array()\n .required()\n .label(i18next.t(\"neetoMolecules.widget.email.fields.emails.label\")),\n subject: yup\n .string()\n .required()\n .label(i18next.t(\"neetoMolecules.widget.email.fields.subject.label\")),\n });\n\nexport const getWidgetApiKeyUrl = () =>\n `api/widget/v1/api_keys/${window.globalProps.organization.subdomain}`;\n\nexport const shouldShowSwitches = () => false;\n","import axios from \"axios\";\n\nimport { EMBED_CODE_EMAIL_URL, WIDGET_CONFIG_URL } from \"./constants\";\nimport { getWidgetApiKeyUrl } from \"./utils\";\n\nexport const queryWidgetApiKey = () =>\n axios.get(getWidgetApiKeyUrl(), { showToastr: false });\n\nexport const emailWidgetSnippet = data =>\n axios.post(EMBED_CODE_EMAIL_URL, data);\n\nexport const fetchWidgetConfiguration = () => axios.get(WIDGET_CONFIG_URL);\n\nexport const updateWidgetConfiguration = ({ id, payload }) =>\n axios.put(`${WIDGET_CONFIG_URL}/${id}`, payload);\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport { emailWidgetSnippet } from \"./api\";\n\nexport const useEmailEmbedCode = onSuccess =>\n useMutation({\n mutationFn: emailData => emailWidgetSnippet(emailData),\n onSuccess,\n });\n","import { useState } from \"react\";\n\nimport { Typography, Button, Sheet, Toastr } from \"@bigbinary/neeto-atoms\";\nimport { Input, MultiEmailInput } from \"@bigbinary/neeto-atoms/formik\";\nimport { Formik, Form } from \"formik\";\nimport PropTypes from \"prop-types\";\nimport { pluck, any, assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CodeBlock from \"./CodeBlock\";\nimport { EMAIL_TYPES, FRAMEWORK_SELECT_OPTIONS } from \"./constants\";\nimport { useEmailEmbedCode } from \"./mutations\";\nimport {\n getEmailWidgetSnippetFormInitialValues,\n getEmailWidgetSnippetValidationSchema,\n getSampleUserIdentity,\n} from \"./utils\";\n\nconst CodeSnippet = ({\n isPaneOpen,\n onClose,\n codeString,\n subject = \"\",\n body = \"\",\n emailType = EMAIL_TYPES.embedCode,\n enabledWidgets = {},\n}) => {\n const { t } = useTranslation();\n const [selectedFramework, setSelectedFramework] = useState(\n FRAMEWORK_SELECT_OPTIONS[0].value\n );\n const emailMutation = useEmailEmbedCode(onClose);\n\n const codeToDisplay =\n emailType === EMAIL_TYPES.userIdentity\n ? getSampleUserIdentity(enabledWidgets, selectedFramework)\n : codeString;\n\n const handleSubmit = formData => {\n if (any(({ valid }) => !valid, formData.emails)) {\n Toastr.error(t(\"neetoMolecules.widget.email.fields.emails.invalidError\"));\n\n return;\n }\n\n emailMutation.mutate({\n subject: formData.subject,\n emails: pluck(\"value\", formData.emails),\n message: body?.ref?.current?.innerHTML ?? body,\n snippet: codeToDisplay,\n });\n };\n\n const renderCodeBlockProps = () => {\n let props = {\n codeString: codeToDisplay,\n showCopyButton: false,\n className: \"rounded-lg\",\n };\n if (emailType === EMAIL_TYPES.userIdentity) {\n props = assoc(\n \"frameworkProps\",\n { selectedFramework, setSelectedFramework },\n props\n );\n }\n\n return props;\n };\n\n return (\n <Sheet {...{ onClose }} aria-describedby={undefined} isOpen={isPaneOpen}>\n <Formik\n initialValues={getEmailWidgetSnippetFormInitialValues(subject)}\n validationSchema={getEmailWidgetSnippetValidationSchema()}\n onSubmit={handleSubmit}\n >\n <Form className=\"flex min-h-0 flex-1 flex-col\">\n <Sheet.Header>\n <Sheet.Title>{t(\"neetoMolecules.widget.email.title\")}</Sheet.Title>\n </Sheet.Header>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4\">\n <MultiEmailInput\n required\n label={t(\"neetoMolecules.widget.email.fields.emails.label\")}\n name=\"emails\"\n placeholder={t(\n \"neetoMolecules.widget.email.fields.emails.placeholder\"\n )}\n />\n <Input\n required\n label={t(\"neetoMolecules.widget.email.fields.subject.label\")}\n name=\"subject\"\n type=\"text\"\n />\n <Typography\n as=\"div\"\n className=\"min-w-0 break-words [&_a]:inline [&_a]:break-all [&_a]:whitespace-normal [&_a_span]:inline\"\n variant=\"body2\"\n >\n {body}\n </Typography>\n <CodeBlock {...renderCodeBlockProps()} />\n </div>\n </Sheet.Body>\n <Sheet.Footer className=\"gap-x-2\">\n <Button\n disabled={emailMutation.isPending}\n label={t(\"neetoMolecules.widget.email.actions.send\")}\n loading={emailMutation.isPending}\n type=\"submit\"\n />\n <Button\n label={t(\"neetoMolecules.widget.email.actions.cancel\")}\n variant=\"ghost\"\n onClick={onClose}\n />\n </Sheet.Footer>\n </Form>\n </Formik>\n </Sheet>\n );\n};\n\nCodeSnippet.propTypes = {\n isPaneOpen: PropTypes.bool,\n onClose: PropTypes.func,\n codeString: PropTypes.string,\n subject: PropTypes.string,\n body: PropTypes.node,\n};\n\nexport default CodeSnippet;\n","import { useState } from \"react\";\n\nconst useForceUpdate = () => {\n // eslint-disable-next-line react/hook-use-state\n const [, setValue] = useState(0);\n\n return () => setValue(value => value + 1);\n};\n\nexport default useForceUpdate;\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/v2/react-utils/useMutationWithInvalidation\";\n\nimport {\n queryWidgetApiKey,\n fetchWidgetConfiguration,\n updateWidgetConfiguration,\n} from \"./api\";\nimport { DEFAULT_QUERY_STALE_TIME, QUERY_KEYS } from \"./constants\";\n\nexport const useFetchApiKey = () =>\n useQuery({\n queryKey: [QUERY_KEYS.apiKey],\n queryFn: () => {\n if (\n window.globalProps.railsEnv === \"heroku\" ||\n !window.globalProps.ssoEnabled\n ) {\n return Promise.resolve({ widgetApiKey: \"placeholder-api-key\" });\n }\n\n return queryWidgetApiKey();\n },\n staleTime: DEFAULT_QUERY_STALE_TIME,\n });\n\nexport const useFetchConfigurations = () =>\n useQuery({\n queryKey: [QUERY_KEYS.configuration],\n queryFn: fetchWidgetConfiguration,\n staleTime: DEFAULT_QUERY_STALE_TIME,\n });\n\nexport const useUpdateConfigurations = (options = {}) =>\n useMutationWithInvalidation(updateWidgetConfiguration, {\n keysToInvalidate: [[QUERY_KEYS.configuration]],\n ...options,\n });\n","import { Switch, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { capitalize } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst TooltipSwitch = withT(\n ({\n t,\n enabledClientApps,\n widget,\n selectedWidgets,\n updateSelectedWidgets,\n }) => (\n <Tooltip\n disabled={enabledClientApps.includes(widget)}\n position=\"right\"\n content={t(\"neetoMolecules.widget.tooltips.productIsDisabled\", {\n productName: `Neeto${capitalize(widget)}`,\n })}\n >\n <span>\n <Switch\n checked={selectedWidgets.includes(widget)}\n disabled={!enabledClientApps.includes(widget)}\n onCheckedChange={() => updateSelectedWidgets(widget)}\n />\n </span>\n </Tooltip>\n )\n);\n\nexport default TooltipSwitch;\n","import { memo, useState, useRef, useEffect } from \"react\";\n\nimport { Button, Toastr, Typography, Spinner } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { capitalize, isNotEmpty } from \"neetocist\";\nimport usePrevious from \"neetocommons/v2/react-utils/usePrevious\";\nimport PropTypes from \"prop-types\";\nimport { fromPairs, isEmpty, prop } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport ChatWidgetBody from \"./ChatWidgetBody\";\nimport CodeBlock from \"./CodeBlock\";\nimport CodeSnippet from \"./CodeSnippet\";\nimport {\n EMAIL_TYPES,\n SAMPLE_CONTEXT_CODE_STRING,\n INSTALLATION_HELP_EMAIL,\n FRAMEWORK_SELECT_OPTIONS,\n NEETO_CHAT_USER_IDENTITY_URL,\n NEETO_REPLAY_CONFIGURE_URL,\n WIDGET_TYPES,\n WIDGET_KB_HELP_URL,\n USE_NEETO_WIDGET_NPM_PAGE_URL,\n} from \"./constants\";\nimport useForceUpdate from \"./hooks/useForceUpdate\";\nimport {\n useFetchApiKey,\n useFetchConfigurations,\n useUpdateConfigurations,\n} from \"./queries\";\nimport SelectionSwitches from \"./SelectionSwitches\";\nimport {\n getSampleUserIdentity,\n getSortedPrefixedWidgets,\n getWidgetDescriptions,\n sampleConsolidatedCodeString,\n shouldShowSwitches,\n} from \"./utils\";\n\nconst EmbedCode = ({\n showSessionContext,\n showUserIdentity,\n primaryApp = \"\",\n maxWidth = \"max-w-3xl\",\n}) => {\n const [emailType, setEmailType] = useState(EMAIL_TYPES.null);\n const [selectedFramework, setSelectedFramework] = useState(\n FRAMEWORK_SELECT_OPTIONS[0].value\n );\n\n const { t } = useTranslation();\n const bodyRef = useRef();\n const forceUpdate = useForceUpdate();\n\n useEffect(() => {\n forceUpdate();\n }, []);\n\n const { data: { widgetApiKey = \"\" } = {}, isLoading: isLoadingApiKey } =\n useFetchApiKey();\n\n const {\n data: { neetoWidgetTokens = [] } = {},\n isLoading: isLoadingConfigurations,\n } = useFetchConfigurations();\n\n const { mutate: updateWidgetConfiguration } = useUpdateConfigurations();\n\n const previousEmailType = usePrevious(emailType);\n\n const selectedWidgets = [primaryApp];\n\n const isOnlyChatWidgetSelected =\n selectedWidgets.length === 1 && selectedWidgets[0] === WIDGET_TYPES.chat;\n\n const enabledClientApps = neetoWidgetTokens\n .filter(prop(\"clientApplicationEnabled\"))\n .map(item => item.clientApplicationName.toLowerCase());\n\n const enabledWidgets = fromPairs(\n selectedWidgets.map(widget => [widget, true])\n );\n\n const shouldShowUserIdentity =\n showUserIdentity ?? (enabledWidgets.chat || enabledWidgets.replay);\n\n const shouldShowSessionContext = showSessionContext ?? enabledWidgets.replay;\n\n const updateSelectedWidgets = widget => {\n const widgetId = neetoWidgetTokens.find(\n item => item.clientApplicationName.toLowerCase() === widget\n ).id;\n const isEnabled = !selectedWidgets.includes(widget);\n\n updateWidgetConfiguration(\n { id: widgetId, payload: { enabled: isEnabled } },\n {\n onSuccess: () => {\n const productName = `neeto${capitalize(widget)}`;\n const response = isEnabled\n ? \"neetoMolecules.widget.installation.enabled\"\n : \"neetoMolecules.widget.installation.disabled\";\n\n Toastr.success(t(response, { productName }));\n },\n }\n );\n };\n\n const getEmbedCodeString = () =>\n isNotEmpty(widgetApiKey)\n ? sampleConsolidatedCodeString(enabledWidgets, widgetApiKey)\n : \"\";\n\n const getSnippetProps = selectedEmailType => {\n switch (selectedEmailType) {\n case EMAIL_TYPES.embedCode:\n return {\n codeString: getEmbedCodeString(),\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.embedCode\",\n { widgetList: getSortedPrefixedWidgets(selectedWidgets) }\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.mainText\"\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n }}\n values={{\n val: getWidgetDescriptions(selectedWidgets),\n }}\n />\n <ChatWidgetBody widgets={selectedWidgets} />\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.embedCode.supportText\"\n values={{ helpEmail: INSTALLATION_HELP_EMAIL }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n mail: (\n <Button\n href={`mailto:${INSTALLATION_HELP_EMAIL}`}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.userIdentity:\n return {\n emailType: EMAIL_TYPES.userIdentity,\n enabledWidgets,\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.userIdentity\"\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.userIdentity\"\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n configureLink: (\n <Button\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n values={{\n userIdentityKbUrl: enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL,\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.sessionContext:\n return {\n codeString: SAMPLE_CONTEXT_CODE_STRING,\n subject: t(\n \"neetoMolecules.widget.email.fields.subject.values.sessionContext\"\n ),\n body: (\n <div ref={bodyRef}>\n <Trans\n i18nKey=\"neetoMolecules.widget.email.body.values.sessionContext\"\n values={{ sessionContextKbUrl: NEETO_REPLAY_CONFIGURE_URL }}\n components={{\n p: <Typography className=\"mb-2\" variant=\"body2\" />,\n configureLink: (\n <Button\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n </div>\n ),\n };\n case EMAIL_TYPES.null:\n return previousEmailType !== EMAIL_TYPES.null\n ? getSnippetProps(previousEmailType)\n : {};\n default:\n throw new Error(t(\"neetoMolecules.widget.email.invalidType\"));\n }\n };\n\n const handleSendViaEmail = selectedEmail => {\n if (isEmpty(selectedWidgets)) {\n Toastr.error(\n t(\"neetoMolecules.widget.installation.snippet.disabledError\")\n );\n\n return;\n }\n\n setEmailType(selectedEmail);\n };\n\n const getSelectedWidgetsInstructionsKey = () => {\n if (isEmpty(selectedWidgets)) {\n return \"neetoMolecules.widget.installation.instructions.placement.noneOfThese\";\n }\n\n if (isOnlyChatWidgetSelected) {\n return \"neetoMolecules.widget.installation.instructions.placement.selectedChatWidget\";\n }\n\n return \"neetoMolecules.widget.installation.instructions.placement.selectedWidgets\";\n };\n\n const embedHelpTextTranslationComponents = {\n fontBold: <Typography as=\"span\" variant=\"body2\" weight=\"semibold\" />,\n widgetNpmLink: (\n <Button\n href={USE_NEETO_WIDGET_NPM_PAGE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n Link: (\n <Button\n href={WIDGET_KB_HELP_URL[primaryApp]}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n };\n\n if (isLoadingApiKey || isLoadingConfigurations) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"mx-auto mb-10 w-full flex-col items-center justify-start\">\n <div className={classnames(\"mx-auto\", maxWidth)}>\n {shouldShowSwitches() && (\n <SelectionSwitches\n {...{\n enabledClientApps,\n primaryApp,\n selectedWidgets,\n updateSelectedWidgets,\n }}\n />\n )}\n <div className=\"mb-8 w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\" data-testid=\"embed-code-block\">\n <CodeBlock\n className=\"rounded-lg\"\n codeString={getEmbedCodeString()}\n sendViaEmail={() => handleSendViaEmail(EMAIL_TYPES.embedCode)}\n title={t(\"neetoMolecules.widget.title.embedCode\")}\n />\n </div>\n <div className=\"w-full\">\n <Trans\n components={embedHelpTextTranslationComponents}\n i18nKey={getSelectedWidgetsInstructionsKey()}\n values={{ widgetList: getSortedPrefixedWidgets(selectedWidgets) }}\n />\n </div>\n </div>\n {shouldShowUserIdentity ? (\n <div className=\"mb-8 w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\">\n <CodeBlock\n className=\"rounded-lg\"\n frameworkProps={{ selectedFramework, setSelectedFramework }}\n title={t(\"neetoMolecules.widget.title.userIdentity\")}\n codeString={getSampleUserIdentity(\n enabledWidgets,\n selectedFramework\n )}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.userIdentity)\n }\n />\n </div>\n <Trans\n components={{\n p: <Typography variant=\"body2\" />,\n Link: (\n <Button\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n href={\n enabledWidgets.chat\n ? NEETO_CHAT_USER_IDENTITY_URL\n : NEETO_REPLAY_CONFIGURE_URL\n }\n />\n ),\n }}\n i18nKey={\n enabledWidgets.chat\n ? \"neetoMolecules.widget.installation.instructions.userIdentity.chat\"\n : \"neetoMolecules.widget.installation.instructions.userIdentity.replay\"\n }\n />\n </div>\n ) : null}\n {shouldShowSessionContext ? (\n <div className=\"w-full flex-grow flex-col items-center justify-start\">\n <div className=\"mx-auto mb-2 w-full\">\n <CodeBlock\n className=\"rounded-lg\"\n codeString={SAMPLE_CONTEXT_CODE_STRING}\n title={t(\"neetoMolecules.widget.title.sessionContext\")}\n sendViaEmail={() =>\n handleSendViaEmail(EMAIL_TYPES.sessionContext)\n }\n />\n </div>\n <Trans\n i18nKey=\"neetoMolecules.widget.installation.instructions.sessionContext\"\n components={{\n p: <Typography variant=\"body2\" />,\n Link: (\n <Button\n href={NEETO_REPLAY_CONFIGURE_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n variant=\"link\"\n />\n ),\n }}\n />\n </div>\n ) : null}\n </div>\n <CodeSnippet\n isPaneOpen={!!emailType && isNotEmpty(selectedWidgets)}\n onClose={() => setEmailType(EMAIL_TYPES.null)}\n {...getSnippetProps(emailType)}\n />\n </div>\n );\n};\n\nEmbedCode.propTypes = {\n primaryApp: PropTypes.string,\n maxWidth: PropTypes.string,\n};\n\nexport default memo(EmbedCode);\n","import { Callout } from \"@bigbinary/neeto-atoms\";\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport EmbedCode from \"./EmbedCode\";\n\nconst queryClient = new QueryClient();\n\nconst Main = props => {\n const { t } = useTranslation();\n\n const shouldRenderEmbedCode = window.globalProps.ssoEnabled;\n\n return shouldRenderEmbedCode ? (\n <QueryClientProvider client={queryClient}>\n <EmbedCode {...props} />\n </QueryClientProvider>\n ) : (\n <Callout variant=\"info\">\n {t(\"neetoMolecules.widget.developmentInfo\")}\n </Callout>\n );\n};\n\nMain.propTypes = {\n /**\n * This specifies which is the primary widget which is shown on the left side of selection tabs.\n */\n primaryApp: PropTypes.string,\n};\n\nexport default Main;\n","import { WIDGET_TYPES } from \"./constants\";\nimport Main from \"./Main\";\n\nconst NeetoWidget = { EmbedCode: Main, WIDGET_TYPES };\n\nexport default NeetoWidget;\n"],"names":["NEETO_WIDGET_USER_IDENTITY_KEY","SESSION_CONTEXT_KEY","INSTALLATION_HELP_EMAIL","SAMPLE_CONTEXT_CODE_STRING","concat","WIDGET_TYPES","engage","chat","replay","WIDGET_HELP_LINKS","WIDGET_DESCRIPTIONS","t","values","QUERY_KEYS","apiKey","configuration","DEFAULT_QUERY_STALE_TIME","EMAIL_TYPES","embedCode","userIdentity","sessionContext","RAILS_ENV","production","staging","development","NEETO_WIDGET_SCRIPT_URL","AVAILABLE_FRAMEWORK_OPTIONS","Object","freeze","rails","django","php","FRAMEWORK_SELECT_OPTIONS","label","value","SAMPLE_USER_IDENTITY_CODE_STRING","_defineProperty","WIDGET_CONFIG_URL","EMBED_CODE_EMAIL_URL","CHAT_WIDGET_KB_BASE_URL","ENGAGE_WIDGET_KB_BASE_URL","REPLAY_WIDGET_KB_BASE_URL","NEETO_REPLAY_CONFIGURE_URL","NEETO_CHAT_USER_IDENTITY_URL","WIDGET_KB_HELP_URL","USE_NEETO_WIDGET_NPM_PAGE_URL","ChatWidgetBody","_ref","widgets","_jsxs","_Fragment","children","includes","_jsx","Trans","i18nKey","helpLink","components","p","Typography","className","variant","a","Button","href","rel","target","SyntaxHighlighter","code","language","useEffect","Prism","highlightAll","memo","CodeBlock","_ref$title","title","codeString","_ref$showCopyButton","showCopyButton","_ref$className","_ref$sendViaEmail","sendViaEmail","undefined","_ref$frameworkProps","frameworkProps","_useTranslation","useTranslation","_ref2","selectedFramework","setSelectedFramework","classnames","as","Select","options","onChange","onClick","CopyToClipboardButton","tooltipContent","buildEmbedWidgetScript","widgetScriptUrl","window","globalProps","railsEnv","indentAndFormat","str","formatter","arguments","length","identity","split","map","join","getCommentedCommand","command","isEnabled","embedWidgetEnvironment","embedWidgetApiKey","addEngageOptions","wrapBlockInOnLoad","codeBlock","embedWidgetFunctionCall","enabledWidgets","cmd","filterMarkedCommands","queryString","filter","line","trim","getSampleUserIdentity","splitCodeLines","isEmailKey","isObjectStartLine","isObjectEndLine","last","isLineHidden","sampleConsolidatedCodeString","getEmailWidgetSnippetFormInitialValues","subject","emails","getSortedPrefixedWidgets","sortedWidgets","sort","widget","capitalize","getWidgetDescriptions","entries","_slicedToArray","pluck","getEmailWidgetSnippetValidationSchema","yup","object","array","required","i18next","string","getWidgetApiKeyUrl","organization","subdomain","shouldShowSwitches","queryWidgetApiKey","axios","get","showToastr","emailWidgetSnippet","data","post","fetchWidgetConfiguration","updateWidgetConfiguration","id","payload","put","useEmailEmbedCode","onSuccess","useMutation","mutationFn","emailData","CodeSnippet","isPaneOpen","onClose","_ref$subject","_ref$body","body","_ref$emailType","emailType","_ref$enabledWidgets","_useState","useState","_useState2","emailMutation","codeToDisplay","handleSubmit","formData","_body$ref$current$inn","_body$ref","any","valid","Toastr","error","mutate","message","ref","current","innerHTML","snippet","renderCodeBlockProps","props","assoc","Sheet","isOpen","Formik","initialValues","validationSchema","onSubmit","Form","Header","Title","Body","MultiEmailInput","name","placeholder","Input","type","_objectSpread","Footer","disabled","isPending","loading","useForceUpdate","setValue","useFetchApiKey","useQuery","queryKey","queryFn","ssoEnabled","Promise","resolve","widgetApiKey","staleTime","useFetchConfigurations","useUpdateConfigurations","useMutationWithInvalidation","keysToInvalidate","withT","enabledClientApps","selectedWidgets","updateSelectedWidgets","Tooltip","position","content","productName","Switch","checked","onCheckedChange","EmbedCode","showSessionContext","showUserIdentity","_ref$primaryApp","primaryApp","_ref$maxWidth","maxWidth","setEmailType","_useState3","_useState4","bodyRef","useRef","forceUpdate","_useFetchApiKey","_useFetchApiKey$data","_useFetchApiKey$data2","_useFetchApiKey$data3","isLoadingApiKey","isLoading","_useFetchConfiguratio","_useFetchConfiguratio2","_useFetchConfiguratio3","_useFetchConfiguratio4","neetoWidgetTokens","isLoadingConfigurations","_useUpdateConfigurati","previousEmailType","usePrevious","isOnlyChatWidgetSelected","prop","item","clientApplicationName","toLowerCase","fromPairs","shouldShowUserIdentity","shouldShowSessionContext","getEmbedCodeString","isNotEmpty","getSnippetProps","selectedEmailType","widgetList","val","helpEmail","mail","configureLink","userIdentityKbUrl","sessionContextKbUrl","Error","handleSendViaEmail","selectedEmail","isEmpty","getSelectedWidgetsInstructionsKey","embedHelpTextTranslationComponents","fontBold","weight","widgetNpmLink","Link","Spinner","queryClient","QueryClient","Main","shouldRenderEmbedCode","QueryClientProvider","client","Callout","NeetoWidget"],"mappings":"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"}
|
package/dist/v2/Onboarding.js
CHANGED
|
@@ -46,12 +46,10 @@ var HelpScreen = function HelpScreen(_ref) {
|
|
|
46
46
|
children: [/*#__PURE__*/jsxs("div", {
|
|
47
47
|
className: "flex flex-col gap-y-3",
|
|
48
48
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
49
|
-
as: "h1",
|
|
50
49
|
"data-testid": "onboarding-help-title",
|
|
51
|
-
variant: "
|
|
50
|
+
variant: "h2",
|
|
52
51
|
children: t("neetoMolecules.onboarding.helpScreen.title")
|
|
53
52
|
}), /*#__PURE__*/jsx(Typography, {
|
|
54
|
-
className: "leading-normal",
|
|
55
53
|
"data-testid": "onboarding-help-description",
|
|
56
54
|
variant: "body1",
|
|
57
55
|
children: /*#__PURE__*/jsx(Trans, {
|
|
@@ -168,14 +166,14 @@ var CompletedScreen = function CompletedScreen(_ref) {
|
|
|
168
166
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
169
167
|
className: "text-center",
|
|
170
168
|
"data-testid": "onboarding-congratulations-emoji",
|
|
171
|
-
variant: "
|
|
169
|
+
variant: "h2",
|
|
172
170
|
children: "\uD83C\uDF89"
|
|
173
171
|
}), /*#__PURE__*/jsxs(Typography, {
|
|
174
172
|
className: "text-center",
|
|
175
173
|
"data-testid": "onboarding-congratulations-title",
|
|
176
|
-
variant: "
|
|
174
|
+
variant: "h2",
|
|
177
175
|
children: [/*#__PURE__*/jsx("span", {
|
|
178
|
-
className: "text-success",
|
|
176
|
+
className: "text-success-foreground",
|
|
179
177
|
children: t("neetoMolecules.onboarding.congratulations")
|
|
180
178
|
}), /*#__PURE__*/jsx("br", {}), t("neetoMolecules.onboarding.readyToUse", {
|
|
181
179
|
appName: capitalize(globalProps.appName)
|
|
@@ -206,12 +204,12 @@ var WelcomeScreen = withT(function (_ref) {
|
|
|
206
204
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
207
205
|
className: "text-center",
|
|
208
206
|
"data-testid": "onboarding-welcome-title",
|
|
209
|
-
variant: "
|
|
207
|
+
variant: "h2",
|
|
210
208
|
children: t("neetoMolecules.onboarding.helpScreen.welcomeToTitle", {
|
|
211
209
|
appName: capitalize(globalProps.appName)
|
|
212
210
|
})
|
|
213
211
|
}), /*#__PURE__*/jsx(Typography, {
|
|
214
|
-
className: "text-center
|
|
212
|
+
className: "text-center",
|
|
215
213
|
"data-testid": "onboarding-welcome-description",
|
|
216
214
|
variant: "body1",
|
|
217
215
|
children: t("neetoMolecules.onboarding.letUsCustomize", {
|