@bigbinary/neeto-molecules 3.16.65 → 3.16.67
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/FloatingActionMenu.js +1 -1
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/ProductEmbed.js +158 -8
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +1 -1
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +158 -8
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/package.json +1 -1
- package/src/translations/en.json +4 -0
- package/types/ProductEmbed.d.ts +10 -0
package/dist/ProductEmbed.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductEmbed.js","sources":["../src/components/ProductEmbed/Customization/constants.js","../src/components/ProductEmbed/useProductEmbedStore.js","../src/components/ProductEmbed/utils/html.js","../src/components/ProductEmbed/utils/react.js","../src/components/ProductEmbed/utils/index.js","../src/components/ProductEmbed/Customization/DynamicQueryParams.jsx","../src/components/ProductEmbed/Customization/ElementPopup.jsx","../src/components/ProductEmbed/Customization/FloatingPopup.jsx","../src/components/ProductEmbed/Customization/Inline.jsx","../src/components/ProductEmbed/Icons.jsx","../src/components/ProductEmbed/constants.js","../src/components/ProductEmbed/Code.jsx","../src/components/ProductEmbed/PlaceholderImages.jsx","../src/components/ProductEmbed/Preview/ElementPopup.jsx","../src/components/ProductEmbed/Preview/FloatingPopup.jsx","../src/components/ProductEmbed/Preview/Inline.jsx","../src/components/ProductEmbed/Preview/utils.js","../src/components/ProductEmbed/Preview/index.jsx","../src/components/ProductEmbed/EmbedRenderer.jsx","../src/components/ProductEmbed/EmbedSelector.jsx","../src/components/ProductEmbed/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const FLOATING_BUTTON_POSITIONS = [\n {\n label: t(\"neetoMolecules.productEmbed.floatingPopup.position.bottomLeft\"),\n value: \"bottomLeft\",\n },\n {\n label: t(\"neetoMolecules.productEmbed.floatingPopup.position.bottomRight\"),\n value: \"bottomRight\",\n },\n];\n\nexport const INITIAL_QUERY_PARAM = { name: \"\", value: \"\" };\n","import { withImmutableActions } from \"neetocommons/react-utils\";\nimport { create } from \"zustand\";\n\nimport { INITIAL_QUERY_PARAM } from \"./Customization/constants\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useProductEmbedStore = create(\n withImmutableActions(set => ({\n isQueryParamsEnabled: false,\n queryParams: [INITIAL_QUERY_PARAM],\n queryParamsProps: { helpPopoverProps: {}, label: \"\" },\n\n setProductEmbedState: set,\n setQueryParams: queryParams => set({ queryParams }),\n }))\n);\n\nexport default useProductEmbedStore;\n","import { toPairs } from \"ramda\";\n\nimport { TAB_STRING } from \"../constants\";\n\nconst camelCasedAppName = globalProps.appName.replace(/^neeto/i, \"neeto\");\n\nconst embedBaseScript = embedScriptLink =>\n `<script>window.${camelCasedAppName} = window.${camelCasedAppName} || { embed: function(){(${camelCasedAppName}.q=${camelCasedAppName}.q||[]).push(arguments)} };</script>\n <script async\n src=\"${embedScriptLink}\">\n </script>`;\n\nconst embedEnv = () =>\n globalProps.railsEnv !== \"production\"\n ? `\\n${TAB_STRING} env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst embedQueryParam = queryParams =>\n queryParams ? `\\n${TAB_STRING} queryParams: ${queryParams},` : \"\";\n\nconst parseExtraArgs = extraArgs =>\n toPairs(extraArgs).map(\n ([key, value]) => `\\n${TAB_STRING} ${key}: \"${value}\"`\n );\n\nconst inlineEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n inlineWrapperStyle,\n iframeStyle,\n}) => {\n const { elementSelector, queryParams } = customization;\n\n return `\n <!-- ${globalProps.appName} inline embed code begins -->\n <div style=\"${inlineWrapperStyle}\" id=\"${elementSelector}\">\n <!-- ${globalProps.appName} widget will be added here -->\n </div>\n ${embedBaseScript(embedScriptLink)}\n <script>\n ${camelCasedAppName}.embed({\n type: \"inline\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",\n styles: \"${iframeStyle}\", ${embedQueryParam(\n queryParams\n )}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n </script>\n <!-- ${globalProps.appName} inline embed code ends -->`;\n};\n\nconst floatingPopupEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n}) => {\n const {\n btnTextColor,\n showIcon,\n btnText,\n btnPosition,\n btnColor,\n icon,\n queryParams,\n } = customization;\n\n return `\n <!-- ${globalProps.appName} floating-popup embed code begins -->\n ${embedBaseScript(embedScriptLink)}\n <script>\n ${camelCasedAppName}.embed({\n type: \"floatingPopup\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n styles: {\n btnTextColor: \"${btnTextColor}\",\n btnPosition: \"${btnPosition}\",\n btnColor: \"${btnColor}\",\n btnText: \"${btnText}\", ${\n icon ? `\\n${TAB_STRING}${TAB_STRING}showIcon: ${showIcon},` : \"\"\n }\n },${embedQueryParam(queryParams)}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n </script>\n <!-- ${globalProps.appName} floating-popup embed code ends -->`;\n};\n\nconst elementPopupEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n}) => {\n const { elementSelector, queryParams } = customization;\n\n return `\n <!-- This is a demo button, you can use any element on your website instead. -->\n <button id=\"${elementSelector}\">Click to open popup</button>\n\n <!-- ${globalProps.appName} element-click embed code begins -->\n ${embedBaseScript(embedScriptLink)}\n <script>\n ${camelCasedAppName}.embed({\n type: \"elementClick\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",${embedQueryParam(\n queryParams\n )}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n </script>\n <!-- ${globalProps.appName} element-click embed code ends -->`;\n};\n\nexport const htmlCodeGenerators = {\n inline: inlineEmbedCode,\n floatingPopup: floatingPopupEmbedCode,\n elementPopup: elementPopupEmbedCode,\n};\n","import { toPairs } from \"ramda\";\n\nimport { TAB_STRING } from \"../constants\";\n\nconst camelCasedAppName = globalProps.appName.replace(/^neeto/i, \"neeto\");\nconst embedFunctionName = `embed${globalProps.appName}`;\n\nconst embedScript =\n scriptLink => `const embedScript = document.createElement(\"script\");\n embedScript.type = \"module\";\n embedScript.src = \"${scriptLink}\";\n embedScript.async = true;\n`;\n\nconst cleanupFunction = `\n return () => {\n embedScript.onload = null;\n if(window.${camelCasedAppName}) window.${camelCasedAppName}.destroy();\n document.body.removeChild(embedScript);\n };`;\n\nconst embedEnv = () =>\n globalProps.railsEnv !== \"production\"\n ? `\\n${TAB_STRING}${TAB_STRING} env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst embedQueryParam = queryParams =>\n queryParams ? `\\n${TAB_STRING}${TAB_STRING}queryParams: ${queryParams},` : \"\";\n\nconst parseExtraArgs = extraArgs =>\n toPairs(extraArgs).map(\n ([key, value]) => `\\n${TAB_STRING}${TAB_STRING}${key}: \"${value}\"`\n );\n\nconst parseInlineStyle = styleString =>\n styleString\n .split(\";\")\n .map(rule => {\n const [key, value] = rule.split(\":\").map(s => s.trim());\n\n return key && value ? `${key}: \"${value}\"` : null;\n })\n .filter(Boolean)\n .join(\", \");\n\nconst inlineEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n inlineWrapperStyle,\n iframeStyle,\n}) => {\n const { elementSelector, queryParams } = customization;\n\n return `\n import { useEffect } from \"react\";\n\n const App = () => {\n const ${embedFunctionName} = () => {\n ${embedScript(embedScriptLink)}\n embedScript.onload = () => {\n window.${camelCasedAppName}.embed({\n type: \"inline\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",\n styles: \"${iframeStyle}\",${embedQueryParam(\n queryParams\n )}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n };\n\n document.body.appendChild(embedScript);\n ${cleanupFunction}\n };\n\n useEffect(() => ${embedFunctionName}(), []);\n\n return (\n <div\n id=\"inline-embed-container\"\n style={{ ${parseInlineStyle(inlineWrapperStyle)} }}\n />\n );\n };`;\n};\n\nconst floatingPopupEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n}) => {\n const {\n btnTextColor,\n showIcon,\n btnText,\n btnPosition,\n btnColor,\n icon,\n queryParams,\n } = customization;\n\n return `\n import { useEffect } from \"react\";\n\n const App = () => {\n const ${embedFunctionName} = () => {\n ${embedScript(embedScriptLink)}\n embedScript.onload = () => {\n window.${camelCasedAppName}.embed({\n type: \"floatingPopup\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n styles: {\n btnTextColor: \"${btnTextColor}\",\n btnPosition: \"${btnPosition}\",\n btnColor: \"${btnColor}\",\n btnText: \"${btnText}\",${\n icon\n ? `\\n${TAB_STRING}${TAB_STRING}${TAB_STRING}showIcon: ${showIcon},`\n : \"\"\n }\n },${embedQueryParam(queryParams)}${embedEnv()}${parseExtraArgs(\n extraArgs\n )}\n });\n };\n\n document.body.appendChild(embedScript);\n ${cleanupFunction}\n };\n\n useEffect(() => ${embedFunctionName}(), []);\n\n return <div />;\n };`;\n};\n\nconst elementPopupEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n}) => {\n const { elementSelector, queryParams } = customization;\n\n return `\n import { useEffect } from \"react\";\n\n const App = () => {\n const ${embedFunctionName} = () => {\n ${embedScript(embedScriptLink)}\n embedScript.onload = () => {\n window.${camelCasedAppName}.embed({\n type: \"elementClick\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",${embedQueryParam(\n queryParams\n )}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n };\n\n document.body.appendChild(embedScript);\n ${cleanupFunction}\n };\n\n useEffect(() => ${embedFunctionName}(), []);\n\n return <button id=\"${elementSelector}\">Click to open popup</button>;\n };`;\n};\n\nexport const reactCodeGenerators = {\n inline: inlineEmbedCode,\n floatingPopup: floatingPopupEmbedCode,\n elementPopup: elementPopupEmbedCode,\n};\n","import { isEmpty, mergeDeepLeft } from \"ramda\";\n\nimport { htmlCodeGenerators } from \"./html\";\nimport { reactCodeGenerators } from \"./react\";\n\nimport { DEFAULT_CUSTOMIZATION } from \"../constants\";\n\nexport const generateCode = options => {\n const { selectedLanguage, type, ...embeddedCodeOptions } = options;\n\n return selectedLanguage === \"react\"\n ? reactCodeGenerators[type]?.(embeddedCodeOptions)\n : htmlCodeGenerators[type]?.(embeddedCodeOptions);\n};\n\nexport const buildDefaultCustomization = defaultCustomizations =>\n mergeDeepLeft(defaultCustomizations, DEFAULT_CUSTOMIZATION);\n\nexport const buildQueryParamsFromInputFields = inputFields => {\n const filteredInputFields = inputFields.filter(\n ({ name, value }) => name && value\n );\n\n const queryParams = filteredInputFields.reduce(\n (queryParams, { name, value }) => {\n queryParams[name] = value;\n\n return queryParams;\n },\n {}\n );\n\n if (isEmpty(queryParams)) return \"\";\n\n const queryParamJsonString = JSON.stringify(queryParams, null, 2);\n\n return queryParamJsonString.replace(/\\n/g, \" \").replace(/\\s\\s+/g, \" \");\n};\n\nexport const toCamelCasedString = string =>\n string?.replace(/[_-]+(\\w)/g, (_, nextChar) => nextChar.toUpperCase());\n","import { useEffect } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Delete, Plus } from \"neetoicons\";\nimport { Button, Label, Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport { INITIAL_QUERY_PARAM } from \"./constants\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\nimport { buildQueryParamsFromInputFields } from \"../utils\";\n\nconst DynamicQueryParams = ({ updateCustomization }) => {\n const { t } = useTranslation();\n const { queryParamsProps, queryParams, setQueryParams } =\n useProductEmbedStore.pick();\n\n const handleAddQueryParam = () => {\n setQueryParams([...queryParams, INITIAL_QUERY_PARAM]);\n };\n\n const handleRemoveQueryParam = index => {\n const newQueryParams = queryParams.filter((_, i) => i !== index);\n setQueryParams(newQueryParams);\n };\n\n const handleInputChange = (index, field, value) => {\n const newQueryParams = queryParams.map((param, i) =>\n i === index ? { ...param, [field]: value } : param\n );\n setQueryParams(newQueryParams);\n };\n\n useEffect(() => {\n updateCustomization({\n queryParams: buildQueryParamsFromInputFields(queryParams),\n });\n }, [queryParams]);\n\n return (\n <div>\n <div className=\"mb-2 flex\">\n <Label\n data-cy=\"dynamic-query-params-label\"\n data-testid=\"dynamic-query-params-label\"\n >\n {queryParamsProps.label ||\n t(\"neetoMolecules.productEmbed.queryParam.label\")}\n </Label>\n {isPresent(queryParamsProps.helpPopoverProps) && (\n <HelpPopover\n className=\"ml-1\"\n {...queryParamsProps.helpPopoverProps}\n />\n )}\n </div>\n {queryParams.map((param, index) => (\n <div className=\"mb-2 flex gap-1\" key={index}>\n <Input\n data-cy=\"dynamic-query-key-name-input\"\n data-testid=\"dynamic-query-key-name-input\"\n name={`queryParams.${index}.name`}\n value={param.name}\n placeholder={t(\n \"neetoMolecules.productEmbed.queryParam.keyNamePlaceholder\"\n )}\n onChange={e => handleInputChange(index, \"name\", e.target.value)}\n />\n <Input\n data-cy=\"dynamic-query-key-value-input\"\n data-testid=\"dynamic-query-key-value-input\"\n name={`queryParams.${index}.value`}\n value={param.value}\n placeholder={t(\n \"neetoMolecules.productEmbed.queryParam.keyValuePlaceholder\"\n )}\n onChange={e => handleInputChange(index, \"value\", e.target.value)}\n />\n <Button\n data-cy=\"dynamic-query-delete-button\"\n icon={Delete}\n style=\"text\"\n onClick={() => handleRemoveQueryParam(index)}\n />\n </div>\n ))}\n <Button\n className=\"my-2\"\n data-cy=\"dynamic-query-add-new-button\"\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.queryParam.addQueryParam\")}\n style=\"link\"\n onClick={handleAddQueryParam}\n />\n </div>\n );\n};\n\nexport default DynamicQueryParams;\n","import { useEffect } from \"react\";\n\nimport { Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst ElementPopup = ({\n customization,\n updateCustomization,\n otherCustomizations,\n}) => {\n const { elementSelector } = customization;\n const { t } = useTranslation();\n const { isQueryParamsEnabled } = useProductEmbedStore.pick();\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <>\n <Input\n className=\"w-full\"\n data-cy=\"element-id-input-field\"\n data-testid=\"element-id-input-field\"\n helpText={t(\"neetoMolecules.productEmbed.elementPopup.callout\")}\n label={t(\"neetoMolecules.productEmbed.elementPopup.elementId\")}\n value={elementSelector}\n error={\n !elementSelector &&\n t(\"neetoMolecules.productEmbed.elementPopup.elementIdError\")\n }\n onChange={e => updateCustomization({ elementSelector: e.target.value })}\n />\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport { Label, Input, Checkbox, Select, ColorPicker } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { FLOATING_BUTTON_POSITIONS } from \"./constants\";\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst FloatingPopup = ({\n customization,\n updateCustomization,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\n const { isQueryParamsEnabled } = useProductEmbedStore.pick();\n\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <div className=\"flex w-full flex-col gap-y-4\">\n <div className=\"space-y-2\">\n <Input\n data-cy=\"button-text-input-field\"\n data-testid=\"button-text-input-field\"\n label={t(\"neetoMolecules.productEmbed.floatingPopup.button.text\")}\n value={btnText}\n error={\n !btnText &&\n t(\"neetoMolecules.productEmbed.floatingPopup.button.textError\")\n }\n onChange={e => updateCustomization({ btnText: e.target.value })}\n />\n </div>\n <div className=\"space-y-2\">\n <Select\n data-cy=\"button-position-select-field\"\n data-testid=\"button-position-select-field\"\n label={t(\"neetoMolecules.productEmbed.floatingPopup.button.pos\")}\n options={FLOATING_BUTTON_POSITIONS}\n value={btnPosition}\n getOptionValue={option =>\n typeof option === \"string\" ? option : option.value\n }\n onChange={e => updateCustomization({ btnPosition: e.value })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-2\"\n data-cy=\"button-color-label\"\n >\n <Label>\n {t(\"neetoMolecules.productEmbed.floatingPopup.button.color\")}\n </Label>\n <ColorPicker\n color={btnColor}\n size=\"medium\"\n onChange={e => updateCustomization({ btnColor: e.hex })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-2\"\n data-cy=\"button-text-color-label\"\n >\n <Label>\n {t(\"neetoMolecules.productEmbed.floatingPopup.button.textColor\")}\n </Label>\n <ColorPicker\n color={btnTextColor}\n size=\"medium\"\n onChange={e => updateCustomization({ btnTextColor: e.hex })}\n />\n </div>\n {icon && (\n <Checkbox\n checked={showIcon}\n data-cy=\"show-icon-checkbox\"\n data-testid=\"show-icon-checkbox\"\n label={t(\"neetoMolecules.productEmbed.floatingPopup.showCalIcon\")}\n onChange={e => updateCustomization({ showIcon: e.target.checked })}\n />\n )}\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default FloatingPopup;\n","import { useEffect } from \"react\";\n\nimport { Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst Inline = ({\n customization,\n updateCustomization,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\n const { isQueryParamsEnabled } = useProductEmbedStore.pick();\n\n const { elementSelector } = customization;\n\n const handleInputChange = ({ target: { value } }, attribute) =>\n updateCustomization({ [attribute]: value });\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <>\n <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"inline-element-id-input-label\">\n {t(\"neetoMolecules.productEmbed.inline.elementId\")}\n </Label>\n <Input\n data-cy=\"inline-element-id-input-field\"\n data-testid=\"inline-element-id-input-field\"\n value={elementSelector}\n error={\n !elementSelector &&\n t(\"neetoMolecules.productEmbed.inline.elementIdError\")\n }\n onChange={e => handleInputChange(e, \"elementSelector\")}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </>\n );\n};\n\nexport default Inline;\n","export const InlineEmbedIcon = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"163\"\n viewBox=\"0 0 278 163\"\n width=\"278\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <g clipPath=\"url(#clip0_8605_6776)\">\n <rect fill=\"rgb(var(--neeto-ui-white))\" height=\"163\" rx=\"6\" width=\"278\" />\n <mask fill=\"rgb(var(--neeto-ui-white))\" id=\"path-3-inside-1_8605_6776\">\n <path d=\"M0 0h305v20H0z\" />\n </mask>\n <path d=\"M0 0h305v20H0z\" fill=\"rgb(var(--neeto-ui-white))\" />\n <path\n d=\"M305 19H0v2h305z\"\n fill=\"currentColor\"\n mask=\"url(#path-3-inside-1_8605_6776)\"\n />\n <circle cx=\"10.596\" cy=\"10.432\" fill=\"#FD5350\" r=\"2.307\" />\n <circle cx=\"18.143\" cy=\"10.432\" fill=\"#FEB33A\" r=\"2.307\" />\n <circle cx=\"25.69\" cy=\"10.432\" fill=\"#2CC146\" r=\"2.307\" />\n <path d=\"M36 20h206v10H36zM36 150h206v12H36z\" fill=\"currentColor\" />\n <rect\n height=\"103.55\"\n rx=\"5.217\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n strokeWidth=\"0.45\"\n width=\"205.55\"\n x=\"36.225\"\n y=\"38.225\"\n />\n <rect\n fill=\"currentColor\"\n height=\"2.311\"\n rx=\"1.156\"\n width=\"36.079\"\n x=\"45.32\"\n y=\"81.914\"\n />\n <rect\n fill=\"currentColor\"\n height=\"2.311\"\n rx=\"1.156\"\n width=\"20.949\"\n x=\"45.32\"\n y=\"87.688\"\n />\n <rect\n fill=\"#008068\"\n height=\"7.988\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"61.109\"\n />\n <rect\n fill=\"currentColor\"\n height=\"7.728\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"73.57\"\n />\n <rect\n fill=\"currentColor\"\n height=\"8.134\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"85.773\"\n />\n <rect\n fill=\"currentColor\"\n height=\"8.134\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"98.383\"\n />\n <rect\n fill=\"currentColor\"\n height=\"8.134\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"110.992\"\n />\n <circle cx=\"52.077\" cy=\"67.819\" fill=\"currentColor\" r=\"6.733\" />\n <circle cx=\"120.314\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"120.322\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"120.322\" cy=\"95.439\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"130.954\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"130.954\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"130.954\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"130.954\" cy=\"95.439\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"141.572\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"141.572\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"141.572\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"141.572\" cy=\"95.439\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"152.181\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"152.181\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"152.181\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"162.806\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"162.806\" cy=\"74.322\" fill=\"#008068\" r=\"2.65\" />\n <circle cx=\"162.806\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"173.439\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"173.439\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"173.439\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"184.064\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"184.064\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"184.075\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <path d=\"M93.023 38v104\" stroke=\"#E7E7E7\" strokeWidth=\"0.454\" />\n </g>\n <rect\n height=\"162\"\n rx=\"5.5\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n width=\"277\"\n x=\"0.5\"\n y=\"0.5\"\n />\n <defs>\n <clipPath id=\"clip0_8605_6776\">\n <rect\n fill=\"rgb(var(--neeto-ui-white))\"\n height=\"163\"\n rx=\"6\"\n width=\"278\"\n />\n </clipPath>\n </defs>\n </svg>\n);\n\nexport const FloatingPopupIcon = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"163\"\n viewBox=\"0 0 278 163\"\n width=\"278\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <g clipPath=\"url(#clip0_9047_10870)\">\n <rect fill=\"rgb(var(--neeto-ui-white))\" height=\"163\" rx=\"6\" width=\"278\" />\n <mask fill=\"rgb(var(--neeto-ui-white))\" id=\"path-3-inside-1_9047_10870\">\n <path d=\"M0 0H305V20H0V0Z\" />\n </mask>\n <path d=\"M0 0H305V20H0V0Z\" fill=\"rgb(var(--neeto-ui-white))\" />\n <path\n d=\"M305 19H0V21H305V19Z\"\n fill=\"currentColor\"\n mask=\"url(#path-3-inside-1_9047_10870)\"\n />\n <circle cx=\"10.5963\" cy=\"10.4322\" fill=\"#FD5350\" r=\"2.30723\" />\n <circle cx=\"18.1432\" cy=\"10.4322\" fill=\"#FEB33A\" r=\"2.30723\" />\n <circle cx=\"25.69\" cy=\"10.4322\" fill=\"#2CC146\" r=\"2.30723\" />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"84.6936\"\n x=\"145\"\n y=\"63\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"89\"\n x=\"145\"\n y=\"70\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"49\"\n x=\"145\"\n y=\"77\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"84.6936\"\n x=\"36\"\n y=\"111\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"89\"\n x=\"36\"\n y=\"118\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"25.8387\"\n x=\"36\"\n y=\"125\"\n />\n <rect fill=\"currentColor\" height=\"35\" width=\"96\" x=\"36\" y=\"57\" />\n <rect fill=\"currentColor\" height=\"35\" width=\"95\" x=\"145\" y=\"102\" />\n <rect fill=\"currentColor\" height=\"26\" width=\"204\" x=\"36\" y=\"20\" />\n <rect fill=\"currentColor\" height=\"14\" width=\"204\" x=\"36\" y=\"148\" />\n </g>\n <rect\n height=\"162\"\n rx=\"5.5\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n width=\"277\"\n x=\"0.5\"\n y=\"0.5\"\n />\n <rect fill=\"#008068\" height=\"18\" rx=\"9\" width=\"69\" x=\"194\" y=\"134\" />\n <defs>\n <clipPath id=\"clip0_9047_10870\">\n <rect\n fill=\"rgb(var(--neeto-ui-white))\"\n height=\"163\"\n rx=\"6\"\n width=\"278\"\n />\n </clipPath>\n </defs>\n </svg>\n);\n\nexport const ElementPopupIcon = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"163\"\n viewBox=\"0 0 278 163\"\n width=\"278\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <g clipPath=\"url(#clip0_9047_10869)\">\n <rect fill=\"rgb(var(--neeto-ui-white))\" height=\"163\" rx=\"6\" width=\"278\" />\n <mask fill=\"rgb(var(--neeto-ui-white))\" id=\"path-3-inside-1_9047_10869\">\n <path d=\"M0 0h305v20H0z\" />\n </mask>\n <path d=\"M0 0h305v20H0z\" fill=\"rgb(var(--neeto-ui-white))\" />\n <path\n d=\"M305 19H0v2h305z\"\n fill=\"currentColor\"\n mask=\"url(#path-3-inside-1_9047_10869)\"\n />\n <circle cx=\"10.596\" cy=\"10.432\" fill=\"#FD5350\" r=\"2.307\" />\n <circle cx=\"18.143\" cy=\"10.432\" fill=\"#FEB33A\" r=\"2.307\" />\n <circle cx=\"25.69\" cy=\"10.432\" fill=\"#2CC146\" r=\"2.307\" />\n </g>\n <rect\n height=\"162\"\n rx=\"5.5\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n width=\"277\"\n x=\"0.5\"\n y=\"0.5\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"85\"\n x=\"135\"\n y=\"58.461\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"89\"\n x=\"135\"\n y=\"66.352\"\n />\n <rect fill=\"#008068\" height=\"7\" rx=\"3.5\" width=\"38\" x=\"135\" y=\"74\" />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"85\"\n x=\"135\"\n y=\"100.859\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"89\"\n x=\"135\"\n y=\"108.75\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"26\"\n x=\"135\"\n y=\"116.641\"\n />\n <path\n d=\"M36 52h88v34H36zM36 20h204v28H36zM240 162H36v-28h204zM36 90h88v41H36z\"\n fill=\"currentColor\"\n />\n <defs>\n <clipPath id=\"clip0_9047_10869\">\n <rect\n fill=\"rgb(var(--neeto-ui-white))\"\n height=\"163\"\n rx=\"6\"\n width=\"278\"\n />\n </clipPath>\n </defs>\n </svg>\n);\n","import { t } from \"i18next\";\n\nimport ElementPopup from \"./Customization/ElementPopup\";\nimport FloatingPopup from \"./Customization/FloatingPopup\";\nimport Inline from \"./Customization/Inline\";\nimport { InlineEmbedIcon, FloatingPopupIcon, ElementPopupIcon } from \"./Icons\";\n\nexport const EMBED_OPTIONS = {\n INLINE: \"inline\",\n FLOATING_POPUP: \"floatingPopup\",\n ELEMENT_POPUP: \"elementPopup\",\n};\n\nexport const EMBED_ICONS = {\n [EMBED_OPTIONS.INLINE]: InlineEmbedIcon,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopupIcon,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopupIcon,\n};\n\nexport const DEFAULT_CUSTOMIZATION = {\n [EMBED_OPTIONS.INLINE]: {\n width: 100,\n height: 100,\n elementSelector: \"inline-embed-container\",\n },\n [EMBED_OPTIONS.FLOATING_POPUP]: {\n showIcon: false,\n btnText: \"Open\",\n btnColor: \"#008068\",\n btnTextColor: \"#fff\",\n btnPosition: \"bottomRight\",\n },\n [EMBED_OPTIONS.ELEMENT_POPUP]: {\n elementSelector: \"open-popup-button\",\n },\n};\n\nexport const EMBED_CUSTOMIZATION_COMPONENTS = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopup,\n};\n\nexport const EMBED_TITLES = {\n [EMBED_OPTIONS.INLINE]: t(\"neetoMolecules.productEmbed.inline.title\"),\n [EMBED_OPTIONS.FLOATING_POPUP]: t(\n \"neetoMolecules.productEmbed.floatingPopup.title\"\n ),\n [EMBED_OPTIONS.ELEMENT_POPUP]: t(\n \"neetoMolecules.productEmbed.elementPopup.title\"\n ),\n};\n\nexport const SUPPORTED_LANGUAGES = [\n { value: \"html\", label: t(\"neetoMolecules.productEmbed.language.html\") },\n {\n value: \"react\",\n label: t(\"neetoMolecules.productEmbed.language.react\"),\n },\n];\n\nexport const SCRIPT_ID = \"embed-script\";\n\nexport const TAB_STRING = \" \";\n","import { useState } from \"react\";\n\nimport { filterBy } from \"neetocist\";\nimport { Typography, Select } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Codeblock from \"components/Codeblock\";\n\nimport { SUPPORTED_LANGUAGES } from \"./constants\";\nimport { generateCode } from \"./utils\";\n\nconst Code = ({\n id,\n selectedEmbed,\n embedScriptLink,\n extraArgs,\n inlineWrapperStyle,\n iframeStyle,\n supportedLanguages,\n customization,\n}) => {\n const { t } = useTranslation();\n\n const supportedLanguagesOptions = filterBy(\n { value: value => supportedLanguages?.includes(value) },\n SUPPORTED_LANGUAGES\n );\n\n const [selectedLanguage, setSelectedLanguage] = useState(\n supportedLanguagesOptions[0]\n );\n\n const code = generateCode({\n id,\n selectedLanguage: selectedLanguage.value,\n type: selectedEmbed,\n customization,\n embedScriptLink,\n extraArgs,\n inlineWrapperStyle,\n iframeStyle,\n });\n\n return (\n <div className=\"flex flex-col gap-3\">\n <div className=\"flex items-center justify-between\">\n <Typography style=\"h4\">\n {t(\"neetoMolecules.productEmbed.embedCode\")}\n </Typography>\n <Select\n className=\"w-28 flex-grow-0\"\n options={supportedLanguagesOptions}\n size=\"small\"\n strategy=\"fixed\"\n value={selectedLanguage}\n onChange={setSelectedLanguage}\n />\n </div>\n <div\n className=\"neeto-molecules-embed__code-block relative w-full overflow-y-auto\"\n data-cy=\"embed-code-block\"\n data-testid=\"embed-code-block\"\n >\n <Codeblock\n {...{ code }}\n codeblockProps={{\n \"data-testid\": `${selectedLanguage.value}-code-block`,\n }}\n copyButtonProps={{\n style: \"primary\",\n label: t(\"neetoMolecules.productEmbed.copyCode\"),\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default Code;\n","export const FloatingPopupPlaceholderImage = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"518\"\n viewBox=\"0 0 796 518\"\n width=\"796\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"358.702\"\n x=\"406.645\"\n y=\"152.109\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"376.941\"\n x=\"406.645\"\n y=\"181.758\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"207.529\"\n x=\"406.645\"\n y=\"211.406\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"358.702\"\n y=\"333.414\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"376.941\"\n y=\"363.062\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"109.435\"\n y=\"392.711\"\n />\n <path\n d=\"M0 127.203h374v148H0zM407 295h389v149H407zM0 .203h796v110H0zM0 460.203h796v59H0z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport const ElementPopupPlaceholderImage = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"518\"\n viewBox=\"0 0 748 518\"\n width=\"748\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"311.667\"\n x=\"363\"\n y=\"142.688\"\n />\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"326.333\"\n x=\"363\"\n y=\"171.617\"\n />\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"311.667\"\n x=\"363\"\n y=\"298.141\"\n />\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"326.333\"\n x=\"363\"\n y=\"327.07\"\n />\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"95.333\"\n x=\"363\"\n y=\"356\"\n />\n <path\n d=\"M0 119h322.667v124.667H0zM0 0h748v104H0zM748 522.336H0V419.669h748zM0 258.328h322.667v150.333H0z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n","import { useEffect, useMemo } from \"react\";\n\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ElementPopupPlaceholderImage } from \"../PlaceholderImages\";\n\nconst ElementPopup = ({ iframeURL }) => {\n const { t } = useTranslation();\n\n /**\n * Currently embed() function doesn't have an unembed handler.\n * When iframe link changes, we don't have an option to reinitiate it.\n * So we forcefully recreate the element with `key` and call embed() again\n */\n const elementSelectorId = useMemo(\n () => `popup-button-${Math.random().toString().substring(2, 10)}`,\n [iframeURL]\n );\n\n useEffect(() => {\n const element = document.getElementById(elementSelectorId);\n if (element) {\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n element,\n iframeURL\n );\n }\n }, [iframeURL]);\n\n return (\n <div className=\"relative h-full w-full overflow-hidden\">\n <ElementPopupPlaceholderImage className=\"neeto-ui-text-gray-100 absolute inset-0 h-auto w-full p-10\" />\n <Button\n className=\"absolute left-[48.5294117647%] top-[39.0804597701%]\"\n data-cy=\"preview-element-popup-button\"\n data-testid=\"preview-element-popup-button\"\n id={elementSelectorId}\n key={elementSelectorId}\n label={t(\"neetoMolecules.productEmbed.elementPopup.label\")}\n />\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect, useMemo } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Button } from \"neetoui\";\n\nimport { FloatingPopupPlaceholderImage } from \"../PlaceholderImages\";\n\nconst FloatingPopup = ({ iframeURL, customization }) => {\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n /**\n * Currently embed() function doesn't have an unembed handler.\n * When iframe link changes, we don't have an option to reinitiate it.\n * So we forcefully recreate the element with `key` and call embed() again\n */\n const elementSelectorId = useMemo(\n () => `popup-button-${Math.random().toString().substring(2, 10)}`,\n [iframeURL]\n );\n\n useEffect(() => {\n const element = document.getElementById(elementSelectorId);\n if (element) {\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n element,\n iframeURL\n );\n }\n }, [iframeURL]);\n\n useEffect(() => {\n const btn = document.getElementById(elementSelectorId);\n btn.style.backgroundColor = btnColor;\n btn.style.color = btnTextColor;\n }, [btnColor, btnTextColor]);\n\n return (\n <div className=\"relative h-full w-full overflow-hidden\">\n <FloatingPopupPlaceholderImage className=\"neeto-ui-text-gray-100 h-auto w-full p-10\" />\n <Button\n data-cy=\"popup-preview-button\"\n icon={icon && showIcon ? icon : null}\n iconPosition=\"left\"\n id={elementSelectorId}\n key={elementSelectorId}\n label={btnText}\n className={classNames(\"absolute bottom-0 m-4\", {\n \"left-0\": btnPosition === \"bottomLeft\",\n \"right-0\": btnPosition === \"bottomRight\",\n })}\n />\n </div>\n );\n};\n\nexport default FloatingPopup;\n","const Inline = ({ iframeURL, customization }) => {\n const { height, width } = customization;\n\n return (\n <iframe\n className=\"m-auto\"\n height={`${height}%`}\n src={iframeURL}\n width={`${width}%`}\n />\n );\n};\n\nexport default Inline;\n","export const buildIframeURL = (iframeURL, queryParams) => {\n const url = new URL(iframeURL);\n\n queryParams.forEach(param => {\n url.searchParams.append(param.name, param.value);\n });\n\n return url.toString();\n};\n","import { Spinner } from \"neetoui\";\n\nimport BrowserPreview from \"components/BrowserPreview\";\n\nimport ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\nimport { buildIframeURL } from \"./utils\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst Preview = ({\n isScriptLoading,\n selectedEmbed,\n id,\n customization,\n customPreviewIframeUrl = \"\",\n}) => {\n const { queryParams } = useProductEmbedStore.pick();\n\n const preview = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopup,\n };\n\n const iframeURL = buildIframeURL(\n customPreviewIframeUrl || `${location.origin}/embed/${id}`,\n queryParams\n );\n const Component = preview[selectedEmbed];\n\n if (isScriptLoading) {\n return (\n <div className=\"flex min-h-0 flex-grow items-center justify-center overflow-y-auto\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <BrowserPreview\n className=\"h-full\"\n wrapperClassName=\"neeto-molecules-embed__browser-preview pointer-events-auto\"\n >\n <Component {...{ customization, iframeURL }} />\n </BrowserPreview>\n );\n};\n\nexport default Preview;\n","import { useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport Code from \"./Code\";\nimport {\n EMBED_CUSTOMIZATION_COMPONENTS,\n EMBED_TITLES,\n SCRIPT_ID,\n} from \"./constants\";\nimport Preview from \"./Preview\";\nimport \"./product-embed.scss\";\nimport { buildDefaultCustomization } from \"./utils\";\n\nconst EmbedRenderer = ({\n className,\n customEmbedScriptPath,\n customPreviewIframeUrl,\n id,\n options,\n extraArgs,\n otherCustomizations,\n inlineWrapperStyle,\n iframeStyle,\n supportedLanguages,\n selectedEmbed,\n}) => {\n const { t } = useTranslation();\n const location = useLocation();\n\n const [isScriptLoading, setIsScriptLoading] = useState(true);\n\n const [customizations, setCustomizations] = useState(() =>\n buildDefaultCustomization(options)\n );\n\n const { description } = customizations[selectedEmbed];\n const customization = customizations[selectedEmbed];\n const CustomizationComponent = EMBED_CUSTOMIZATION_COMPONENTS[selectedEmbed];\n\n const embedScriptLink =\n customEmbedScriptPath ||\n `${window.location.protocol}//${window.location.host}/javascript/embed.js`;\n\n const loadScript = () => {\n const script = document.createElement(\"script\");\n script.id = SCRIPT_ID;\n script.src = embedScriptLink;\n script.onload = () => setIsScriptLoading(false);\n document.head.appendChild(script);\n };\n\n const updateCustomization = props =>\n setCustomizations(prevState => ({\n ...prevState,\n [selectedEmbed]: mergeLeft(props, prevState[selectedEmbed]),\n }));\n\n useEffect(() => {\n const isScriptLoaded = document.getElementById(SCRIPT_ID);\n if (isScriptLoaded) setIsScriptLoading(false);\n else loadScript();\n }, []);\n\n return (\n <Container\n data-testid=\"embed-product\"\n className={classNames(\n \"neeto-molecules-embed flex w-full flex-grow flex-col p-0 md:flex-row\",\n className\n )}\n >\n <div className=\"neeto-molecules-embed__left-sidebar px-5 py-8 md:h-full md:overflow-y-auto md:px-10\">\n <Button\n className=\"mb-4\"\n data-cy=\"back-to-embed-selection-button\"\n data-testid=\"back-to-embed-selection-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.backToEmbedSelection\")}\n size=\"small\"\n style=\"link\"\n to={location.pathname}\n />\n <Header\n className=\"py-0\"\n data-testid={`${hyphenate(selectedEmbed)}-embed-title`}\n title={EMBED_TITLES[selectedEmbed]}\n />\n {description && (\n <Typography\n className=\"mt-2\"\n data-cy={`${hyphenate(selectedEmbed)}-description`}\n style=\"body2\"\n >\n {description}\n </Typography>\n )}\n <div className=\"mt-4 flex w-full flex-col gap-y-6\">\n <div className=\"space-y-6\">\n <Code\n {...{\n customization,\n embedScriptLink,\n extraArgs,\n id,\n iframeStyle,\n inlineWrapperStyle,\n selectedEmbed,\n supportedLanguages,\n }}\n />\n <CustomizationComponent\n {...{\n customization,\n otherCustomizations,\n updateCustomization,\n }}\n />\n </div>\n </div>\n </div>\n <div className=\"neeto-molecules-embed__preview neeto-ui-bg-gray-50 flex min-h-dvh w-full min-w-0 flex-col gap-3 overflow-y-auto p-6 md:h-full md:min-h-0 md:flex-grow\">\n <Preview\n {...{\n customPreviewIframeUrl,\n customization,\n id,\n isScriptLoading,\n selectedEmbed,\n }}\n />\n </div>\n </Container>\n );\n};\n\nexport default EmbedRenderer;\n","import { hyphenate } from \"neetocist\";\nimport { handleMetaClick } from \"neetocommons/react-utils\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Typography, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport { EMBED_ICONS } from \"./constants\";\n\nconst EmbedSelector = ({ options, goBackLink, title }) => {\n const { t } = useTranslation();\n\n const history = useHistory();\n const location = useLocation();\n\n return (\n <Container className=\"neeto-molecules-embed-landing-page py-8\">\n {goBackLink && (\n <Button\n className=\"mb-4\"\n data-cy=\"back-button\"\n data-testid=\"back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.backToShare\")}\n size=\"small\"\n style=\"link\"\n to={goBackLink}\n />\n )}\n <Header\n className=\"py-0\"\n data-testid=\"embed-selector-header\"\n title={t(\"neetoMolecules.productEmbed.title\")}\n />\n <div className=\"neeto-molecules-embed-landing-page__container mx-auto w-full max-w-5xl py-6 md:py-10\">\n <Typography className=\"mb-2\" style=\"h2\">\n {title ||\n t(\"neetoMolecules.productEmbed.embedSelectionTitle\", {\n productName: globalProps.appName,\n })}\n </Typography>\n <Typography className=\"mb-8\" style=\"body1\">\n {t(\"neetoMolecules.productEmbed.embedSelectionDescription\")}\n </Typography>\n <div className=\"neeto-molecules-embed-landing-page__cards-wrapper grid w-full grid-cols-1 flex-wrap gap-6 md:grid-cols-3\">\n {Object.entries(options).map(\n ([key, { label, description, embedIcon }]) => {\n const EmbedIcon = embedIcon || EMBED_ICONS[key];\n\n return (\n <button\n className=\"neeto-molecules-embed-landing-page__card flex w-full flex-col\"\n data-testid={`embed-selector-card-${hyphenate(key)}`}\n key={key}\n onClick={handleMetaClick(\n history,\n `${location.pathname}?type=${hyphenate(key)}`\n )}\n >\n <span className=\"neeto-molecules-embed-landing-page__card-icon mb-6 block\">\n <EmbedIcon className=\"neeto-ui-text-gray-200 h-auto w-full max-w-72\" />\n </span>\n <Typography className=\"mb-2\" style=\"h4\">\n {label}\n </Typography>\n <Typography style=\"body2\">{description}</Typography>\n </button>\n );\n }\n )}\n </div>\n </div>\n </Container>\n );\n};\n\nexport default EmbedSelector;\n","import { useEffect } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { useLocation } from \"react-router-dom\";\n\nimport EmbedRenderer from \"./EmbedRenderer\";\nimport EmbedSelector from \"./EmbedSelector\";\nimport \"./product-embed.scss\";\nimport useProductEmbedStore from \"./useProductEmbedStore\";\nimport { toCamelCasedString } from \"./utils\";\n\nconst ProductEmbed = ({\n title,\n className = \"\",\n customEmbedScriptPath = \"\",\n customPreviewIframeUrl = \"\",\n goBackLink = \"\",\n id,\n isQueryParamsEnabled = false,\n queryParamsProps = { helpPopoverProps: {}, label: \"\" },\n options = {},\n extraArgs = {},\n otherCustomizations = noop,\n inlineWrapperStyle = \"height: 90vh; width: 100%;\",\n iframeStyle = \"height: 100%; width: 100%;\",\n supportedLanguages = [\"html\"],\n}) => {\n const { search } = useLocation();\n\n const queryParams = new URLSearchParams(search);\n const selectedEmbed = toCamelCasedString(queryParams.get(\"type\"));\n\n const { setProductEmbedState } = useProductEmbedStore.pick();\n\n useEffect(() => {\n setProductEmbedState({ isQueryParamsEnabled, queryParamsProps });\n }, []);\n\n return selectedEmbed ? (\n <EmbedRenderer\n {...{\n className,\n customEmbedScriptPath,\n customPreviewIframeUrl,\n extraArgs,\n id,\n iframeStyle,\n inlineWrapperStyle,\n options,\n otherCustomizations,\n queryParamsProps,\n selectedEmbed,\n supportedLanguages,\n }}\n />\n ) : (\n <EmbedSelector {...{ goBackLink, options, title }} />\n );\n};\n\nProductEmbed.propTypes = {\n /**\n * To set the title in the embed selection page.\n */\n title: PropTypes.string,\n /**\n * To set custom classNames. (optional)\n */\n className: PropTypes.string,\n /**\n * To use a different embed script. Uses /javascript/embed.js by default. (optional)\n */\n customEmbedScriptPath: PropTypes.string,\n /**\n * To use a different iframeUrl in Product embed preview. Uses /embed/${id} by default. (optional)\n */\n customPreviewIframeUrl: PropTypes.string,\n /**\n * To specify extra arguments to pass to the embed script. (optional)\n */\n extraArgs: PropTypes.object,\n /**\n * To show the 'Back to share' button. (optional)\n */\n goBackLink: PropTypes.string,\n /**\n * To specify the entity ID.\n */\n id: PropTypes.string,\n /**\n * To specify the Embed options for the product.\n */\n options: PropTypes.shape({\n inline: PropTypes.shape({\n label: PropTypes.string,\n description: PropTypes.string,\n embedIcon: PropTypes.func,\n width: PropTypes.number,\n height: PropTypes.number,\n elementSelector: PropTypes.string,\n }),\n floatingPopup: PropTypes.shape({\n label: PropTypes.string,\n description: PropTypes.string,\n embedIcon: PropTypes.func,\n btnTextColor: PropTypes.string,\n btnText: PropTypes.string,\n btnPosition: PropTypes.string,\n btnColor: PropTypes.string,\n icon: PropTypes.func,\n showIcon: PropTypes.bool,\n }),\n elementPopup: PropTypes.shape({\n label: PropTypes.string,\n description: PropTypes.string,\n embedIcon: PropTypes.func,\n elementSelector: PropTypes.string,\n }),\n }),\n /**\n * To enable query parameters\n */\n isQueryParamsEnabled: PropTypes.bool,\n /**\n * To specify the query parameters\n */\n queryParamsProps: PropTypes.shape({\n helpPopoverProps: PropTypes.shape({\n title: PropTypes.string,\n size: PropTypes.oneOf([\"default\", \"large\"]),\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n helpLinkProps: PropTypes.object,\n popoverProps: PropTypes.object,\n className: PropTypes.string,\n iconColor: PropTypes.string,\n icon: PropTypes.node,\n }),\n label: PropTypes.string,\n }),\n /**\n * To add other customization fields to all the embed options\n */\n otherCustomizations: PropTypes.func,\n /**\n * To override the styles of inline embed wrapper div\n */\n inlineWrapperStyle: PropTypes.string,\n /**\n * To override the styles of inline embed iframe\n */\n iframeStyle: PropTypes.string,\n /**\n * To specifies the supported languages, currently limited to `html` and `react`.\n */\n supportedLanguages: PropTypes.arrayOf(PropTypes.oneOf([\"html\", \"react\"])),\n};\n\nexport default ProductEmbed;\n"],"names":["FLOATING_BUTTON_POSITIONS","label","t","value","INITIAL_QUERY_PARAM","name","useProductEmbedStore","create","withImmutableActions","set","isQueryParamsEnabled","queryParams","queryParamsProps","helpPopoverProps","setProductEmbedState","setQueryParams","camelCasedAppName","globalProps","appName","replace","embedBaseScript","embedScriptLink","concat","embedEnv","railsEnv","TAB_STRING","embedQueryParam","parseExtraArgs","extraArgs","toPairs","map","_ref","_ref2","_slicedToArray","key","inlineEmbedCode","_ref3","customization","id","inlineWrapperStyle","iframeStyle","elementSelector","organization","subdomain","floatingPopupEmbedCode","_ref4","btnTextColor","showIcon","btnText","btnPosition","btnColor","icon","elementPopupEmbedCode","_ref5","htmlCodeGenerators","inline","floatingPopup","elementPopup","embedFunctionName","embedScript","scriptLink","cleanupFunction","parseInlineStyle","styleString","split","rule","_rule$split$map","s","trim","_rule$split$map2","filter","Boolean","join","reactCodeGenerators","generateCode","options","_reactCodeGenerators$","_htmlCodeGenerators$t","selectedLanguage","type","embeddedCodeOptions","_objectWithoutProperties","_excluded","call","buildDefaultCustomization","defaultCustomizations","mergeDeepLeft","DEFAULT_CUSTOMIZATION","buildQueryParamsFromInputFields","inputFields","filteredInputFields","reduce","isEmpty","queryParamJsonString","JSON","stringify","toCamelCasedString","string","_","nextChar","toUpperCase","DynamicQueryParams","updateCustomization","_useTranslation","useTranslation","_useProductEmbedStore","store","shallow","handleAddQueryParam","_toConsumableArray","handleRemoveQueryParam","index","newQueryParams","i","handleInputChange","field","param","_objectSpread","_defineProperty","useEffect","_jsxs","children","className","_jsx","Label","isPresent","HelpPopover","Input","placeholder","onChange","e","target","Button","Delete","style","onClick","Plus","iconPosition","ElementPopup","otherCustomizations","undefined","_Fragment","helpText","error","FloatingPopup","Select","getOptionValue","option","ColorPicker","color","size","hex","Checkbox","checked","Inline","attribute","InlineEmbedIcon","other","Object","assign","_objectDestructuringEmpty","fill","height","viewBox","width","xmlns","clipPath","rx","d","mask","cx","cy","r","stroke","strokeWidth","x","y","FloatingPopupIcon","opacity","ElementPopupIcon","EMBED_OPTIONS","INLINE","FLOATING_POPUP","ELEMENT_POPUP","EMBED_ICONS","EMBED_CUSTOMIZATION_COMPONENTS","EMBED_TITLES","SUPPORTED_LANGUAGES","SCRIPT_ID","Code","selectedEmbed","supportedLanguages","supportedLanguagesOptions","filterBy","includes","_useState","useState","_useState2","setSelectedLanguage","code","Typography","strategy","Codeblock","codeblockProps","copyButtonProps","FloatingPopupPlaceholderImage","ElementPopupPlaceholderImage","iframeURL","elementSelectorId","useMemo","Math","random","toString","substring","element","document","getElementById","_window$globalProps$a","window","embed","btn","backgroundColor","classNames","src","buildIframeURL","url","URL","forEach","searchParams","append","Preview","isScriptLoading","_ref$customPreviewIfr","customPreviewIframeUrl","preview","location","origin","Component","Spinner","BrowserPreview","wrapperClassName","EmbedRenderer","customEmbedScriptPath","useLocation","setIsScriptLoading","_useState3","_useState4","customizations","setCustomizations","description","CustomizationComponent","protocol","host","loadScript","script","createElement","onload","head","appendChild","props","prevState","mergeLeft","isScriptLoaded","Container","LeftArrow","to","pathname","Header","hyphenate","title","EmbedSelector","goBackLink","history","useHistory","productName","entries","_ref3$","embedIcon","EmbedIcon","handleMetaClick","ProductEmbed","_ref$className","_ref$customEmbedScrip","_ref$goBackLink","_ref$isQueryParamsEna","_ref$queryParamsProps","_ref$options","_ref$extraArgs","_ref$otherCustomizati","noop","_ref$inlineWrapperSty","_ref$iframeStyle","_ref$supportedLanguag","_useLocation","search","URLSearchParams","get"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ProductEmbed.js","sources":["../src/components/ProductEmbed/Customization/constants.js","../src/components/ProductEmbed/useProductEmbedStore.js","../src/components/ProductEmbed/utils/html.js","../src/components/ProductEmbed/utils/react.js","../src/components/ProductEmbed/utils/index.js","../src/components/ProductEmbed/Customization/DynamicQueryParams.jsx","../src/components/ProductEmbed/Customization/ElementPopup.jsx","../src/components/ProductEmbed/Customization/FloatingPopup.jsx","../src/components/ProductEmbed/Customization/Iframe.jsx","../src/components/ProductEmbed/Customization/Inline.jsx","../src/components/ProductEmbed/Icons.jsx","../src/components/ProductEmbed/constants.js","../src/components/ProductEmbed/Code.jsx","../src/components/ProductEmbed/PlaceholderImages.jsx","../src/components/ProductEmbed/Preview/ElementPopup.jsx","../src/components/ProductEmbed/Preview/FloatingPopup.jsx","../src/components/ProductEmbed/Preview/Iframe.jsx","../src/components/ProductEmbed/Preview/Inline.jsx","../src/components/ProductEmbed/Preview/utils.js","../src/components/ProductEmbed/Preview/index.jsx","../src/components/ProductEmbed/EmbedRenderer.jsx","../src/components/ProductEmbed/EmbedSelector.jsx","../src/components/ProductEmbed/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const FLOATING_BUTTON_POSITIONS = [\n {\n label: t(\"neetoMolecules.productEmbed.floatingPopup.position.bottomLeft\"),\n value: \"bottomLeft\",\n },\n {\n label: t(\"neetoMolecules.productEmbed.floatingPopup.position.bottomRight\"),\n value: \"bottomRight\",\n },\n];\n\nexport const INITIAL_QUERY_PARAM = { name: \"\", value: \"\" };\n","import { withImmutableActions } from \"neetocommons/react-utils\";\nimport { create } from \"zustand\";\n\nimport { INITIAL_QUERY_PARAM } from \"./Customization/constants\";\n\n/** @type {import(\"neetocommons/react-utils\").ZustandStoreHook} */\nconst useProductEmbedStore = create(\n withImmutableActions(set => ({\n isQueryParamsEnabled: false,\n queryParams: [INITIAL_QUERY_PARAM],\n queryParamsProps: { helpPopoverProps: {}, label: \"\" },\n\n setProductEmbedState: set,\n setQueryParams: queryParams => set({ queryParams }),\n }))\n);\n\nexport default useProductEmbedStore;\n","import { toPairs } from \"ramda\";\n\nimport { buildIframeURL } from \".\";\n\nimport { TAB_STRING } from \"../constants\";\n\nconst camelCasedAppName = globalProps.appName.replace(/^neeto/i, \"neeto\");\n\nconst embedBaseScript = embedScriptLink =>\n `<script>window.${camelCasedAppName} = window.${camelCasedAppName} || { embed: function(){(${camelCasedAppName}.q=${camelCasedAppName}.q||[]).push(arguments)} };</script>\n <script async\n src=\"${embedScriptLink}\">\n </script>`;\n\nconst embedEnv = () =>\n globalProps.railsEnv !== \"production\"\n ? `\\n${TAB_STRING} env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst embedQueryParam = queryParams =>\n queryParams ? `\\n${TAB_STRING} queryParams: ${queryParams},` : \"\";\n\nconst parseExtraArgs = extraArgs =>\n toPairs(extraArgs).map(\n ([key, value]) => `\\n${TAB_STRING} ${key}: \"${value}\"`\n );\n\nconst inlineEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n inlineWrapperStyle,\n iframeStyle,\n}) => {\n const { elementSelector, queryParams } = customization;\n\n return `\n <!-- ${globalProps.appName} inline embed code begins -->\n <div style=\"${inlineWrapperStyle}\" id=\"${elementSelector}\">\n <!-- ${globalProps.appName} widget will be added here -->\n </div>\n ${embedBaseScript(embedScriptLink)}\n <script>\n ${camelCasedAppName}.embed({\n type: \"inline\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",\n styles: \"${iframeStyle}\", ${embedQueryParam(\n queryParams\n )}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n </script>\n <!-- ${globalProps.appName} inline embed code ends -->`;\n};\n\nconst floatingPopupEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n}) => {\n const {\n btnTextColor,\n showIcon,\n btnText,\n btnPosition,\n btnColor,\n icon,\n queryParams,\n } = customization;\n\n return `\n <!-- ${globalProps.appName} floating-popup embed code begins -->\n ${embedBaseScript(embedScriptLink)}\n <script>\n ${camelCasedAppName}.embed({\n type: \"floatingPopup\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n styles: {\n btnTextColor: \"${btnTextColor}\",\n btnPosition: \"${btnPosition}\",\n btnColor: \"${btnColor}\",\n btnText: \"${btnText}\", ${\n icon ? `\\n${TAB_STRING}${TAB_STRING}showIcon: ${showIcon},` : \"\"\n }\n },${embedQueryParam(queryParams)}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n </script>\n <!-- ${globalProps.appName} floating-popup embed code ends -->`;\n};\n\nconst elementPopupEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n}) => {\n const { elementSelector, queryParams } = customization;\n\n return `\n <!-- This is a demo button, you can use any element on your website instead. -->\n <button id=\"${elementSelector}\">Click to open popup</button>\n\n <!-- ${globalProps.appName} element-click embed code begins -->\n ${embedBaseScript(embedScriptLink)}\n <script>\n ${camelCasedAppName}.embed({\n type: \"elementClick\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",${embedQueryParam(\n queryParams\n )}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n </script>\n <!-- ${globalProps.appName} element-click embed code ends -->`;\n};\n\nconst iframeEmbedCode = ({ id, customization, extraArgs }) => {\n const { height, width, iframeTitle, iframeUrl, queryParams } = customization;\n\n const iframeSrc = buildIframeURL({ id, iframeUrl, queryParams, extraArgs });\n\n return `\n <!-- ${globalProps.appName} iframe embed code begins -->\n <iframe\n allowfullscreen\n height=\"${height}%\"\n width=\"${width}%\"\n frameborder=\"0\"\n title=\"${iframeTitle}\"\n src=\"${iframeSrc}\"\n />\n <!-- ${globalProps.appName} iframe embed code ends -->`;\n};\n\nexport const htmlCodeGenerators = {\n inline: inlineEmbedCode,\n floatingPopup: floatingPopupEmbedCode,\n elementPopup: elementPopupEmbedCode,\n iframe: iframeEmbedCode,\n};\n","import { toPairs } from \"ramda\";\n\nimport { buildIframeURL } from \".\";\n\nimport { TAB_STRING } from \"../constants\";\n\nconst camelCasedAppName = globalProps.appName.replace(/^neeto/i, \"neeto\");\nconst embedFunctionName = `embed${globalProps.appName}`;\n\nconst embedScript =\n scriptLink => `const embedScript = document.createElement(\"script\");\n embedScript.type = \"module\";\n embedScript.src = \"${scriptLink}\";\n embedScript.async = true;\n`;\n\nconst cleanupFunction = `\n return () => {\n embedScript.onload = null;\n if(window.${camelCasedAppName}) window.${camelCasedAppName}.destroy();\n document.body.removeChild(embedScript);\n };`;\n\nconst embedEnv = () =>\n globalProps.railsEnv !== \"production\"\n ? `\\n${TAB_STRING}${TAB_STRING} env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst embedQueryParam = queryParams =>\n queryParams ? `\\n${TAB_STRING}${TAB_STRING}queryParams: ${queryParams},` : \"\";\n\nconst parseExtraArgs = extraArgs =>\n toPairs(extraArgs).map(\n ([key, value]) => `\\n${TAB_STRING}${TAB_STRING}${key}: \"${value}\"`\n );\n\nconst parseInlineStyle = styleString =>\n styleString\n .split(\";\")\n .map(rule => {\n const [key, value] = rule.split(\":\").map(s => s.trim());\n\n return key && value ? `${key}: \"${value}\"` : null;\n })\n .filter(Boolean)\n .join(\", \");\n\nconst inlineEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n inlineWrapperStyle,\n iframeStyle,\n}) => {\n const { elementSelector, queryParams } = customization;\n\n return `\n import { useEffect } from \"react\";\n\n const App = () => {\n const ${embedFunctionName} = () => {\n ${embedScript(embedScriptLink)}\n embedScript.onload = () => {\n window.${camelCasedAppName}.embed({\n type: \"inline\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",\n styles: \"${iframeStyle}\",${embedQueryParam(\n queryParams\n )}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n };\n\n document.body.appendChild(embedScript);\n ${cleanupFunction}\n };\n\n useEffect(() => ${embedFunctionName}(), []);\n\n return (\n <div\n id=\"inline-embed-container\"\n style={{ ${parseInlineStyle(inlineWrapperStyle)} }}\n />\n );\n };`;\n};\n\nconst floatingPopupEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n}) => {\n const {\n btnTextColor,\n showIcon,\n btnText,\n btnPosition,\n btnColor,\n icon,\n queryParams,\n } = customization;\n\n return `\n import { useEffect } from \"react\";\n\n const App = () => {\n const ${embedFunctionName} = () => {\n ${embedScript(embedScriptLink)}\n embedScript.onload = () => {\n window.${camelCasedAppName}.embed({\n type: \"floatingPopup\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n styles: {\n btnTextColor: \"${btnTextColor}\",\n btnPosition: \"${btnPosition}\",\n btnColor: \"${btnColor}\",\n btnText: \"${btnText}\",${\n icon\n ? `\\n${TAB_STRING}${TAB_STRING}${TAB_STRING}showIcon: ${showIcon},`\n : \"\"\n }\n },${embedQueryParam(queryParams)}${embedEnv()}${parseExtraArgs(\n extraArgs\n )}\n });\n };\n\n document.body.appendChild(embedScript);\n ${cleanupFunction}\n };\n\n useEffect(() => ${embedFunctionName}(), []);\n\n return <div />;\n };`;\n};\n\nconst elementPopupEmbedCode = ({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n}) => {\n const { elementSelector, queryParams } = customization;\n\n return `\n import { useEffect } from \"react\";\n\n const App = () => {\n const ${embedFunctionName} = () => {\n ${embedScript(embedScriptLink)}\n embedScript.onload = () => {\n window.${camelCasedAppName}.embed({\n type: \"elementClick\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",${embedQueryParam(\n queryParams\n )}${embedEnv()}${parseExtraArgs(extraArgs)}\n });\n };\n\n document.body.appendChild(embedScript);\n ${cleanupFunction}\n };\n\n useEffect(() => ${embedFunctionName}(), []);\n\n return <button id=\"${elementSelector}\">Click to open popup</button>;\n };`;\n};\n\nconst iframeEmbedCode = ({ customization, id, extraArgs }) => {\n const { height, width, iframeTitle, iframeUrl, queryParams } = customization;\n\n const iframeSrc = buildIframeURL({ id, iframeUrl, queryParams, extraArgs });\n\n return `\n const App = () => {\n return (\n <>\n {/* ${globalProps.appName} iframe embed code begins */}\n <iframe\n allowFullScreen\n height=\"${height}%\"\n width=\"${width}%\"\n frameBorder=\"0\"\n title=\"${iframeTitle}\"\n src=\"${iframeSrc}\"\n />\n {/* ${globalProps.appName} iframe embed code ends */}\n </>\n );\n };\n `;\n};\n\nexport const reactCodeGenerators = {\n inline: inlineEmbedCode,\n floatingPopup: floatingPopupEmbedCode,\n elementPopup: elementPopupEmbedCode,\n iframe: iframeEmbedCode,\n};\n","import { isEmpty, mergeDeepLeft } from \"ramda\";\n\nimport { htmlCodeGenerators } from \"./html\";\nimport { reactCodeGenerators } from \"./react\";\n\nimport { DEFAULT_CUSTOMIZATION } from \"../constants\";\n\nexport const generateCode = options => {\n const { selectedLanguage, type, ...embeddedCodeOptions } = options;\n\n return selectedLanguage === \"react\"\n ? reactCodeGenerators[type]?.(embeddedCodeOptions)\n : htmlCodeGenerators[type]?.(embeddedCodeOptions);\n};\n\nexport const buildDefaultCustomization = defaultCustomizations =>\n mergeDeepLeft(defaultCustomizations, DEFAULT_CUSTOMIZATION);\n\nexport const buildQueryParamsFromInputFields = inputFields => {\n const filteredInputFields = inputFields.filter(\n ({ name, value }) => name && value\n );\n\n const queryParams = filteredInputFields.reduce(\n (queryParams, { name, value }) => {\n queryParams[name] = value;\n\n return queryParams;\n },\n {}\n );\n\n if (isEmpty(queryParams)) return \"\";\n\n const queryParamJsonString = JSON.stringify(queryParams, null, 2);\n\n return queryParamJsonString.replace(/\\n/g, \" \").replace(/\\s\\s+/g, \" \");\n};\n\nexport const toCamelCasedString = string =>\n string?.replace(/[_-]+(\\w)/g, (_, nextChar) => nextChar.toUpperCase());\n\nexport const buildIframeURL = ({ id, iframeURL, queryParams, extraArgs }) => {\n const url = new URL(iframeURL || `${location.origin}/embed/${id}`);\n\n if (!queryParams && !extraArgs) return url.toString();\n\n if (queryParams) {\n const parsedQueryParams = JSON.parse(queryParams);\n Object.entries(parsedQueryParams).forEach(([key, value]) => {\n url.searchParams.append(key, value);\n });\n }\n\n if (extraArgs) {\n Object.entries(extraArgs).forEach(([key, value]) => {\n url.searchParams.append(key, value);\n });\n }\n\n return url.toString();\n};\n","import { useEffect } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Delete, Plus } from \"neetoicons\";\nimport { Button, Label, Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport { INITIAL_QUERY_PARAM } from \"./constants\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\nimport { buildQueryParamsFromInputFields } from \"../utils\";\n\nconst DynamicQueryParams = ({ updateCustomization }) => {\n const { t } = useTranslation();\n const { queryParamsProps, queryParams, setQueryParams } =\n useProductEmbedStore.pick();\n\n const handleAddQueryParam = () => {\n setQueryParams([...queryParams, INITIAL_QUERY_PARAM]);\n };\n\n const handleRemoveQueryParam = index => {\n const newQueryParams = queryParams.filter((_, i) => i !== index);\n setQueryParams(newQueryParams);\n };\n\n const handleInputChange = (index, field, value) => {\n const newQueryParams = queryParams.map((param, i) =>\n i === index ? { ...param, [field]: value } : param\n );\n setQueryParams(newQueryParams);\n };\n\n useEffect(() => {\n updateCustomization({\n queryParams: buildQueryParamsFromInputFields(queryParams),\n });\n }, [queryParams]);\n\n return (\n <div>\n <div className=\"mb-2 flex\">\n <Label\n data-cy=\"dynamic-query-params-label\"\n data-testid=\"dynamic-query-params-label\"\n >\n {queryParamsProps.label ||\n t(\"neetoMolecules.productEmbed.queryParam.label\")}\n </Label>\n {isPresent(queryParamsProps.helpPopoverProps) && (\n <HelpPopover\n className=\"ml-1\"\n {...queryParamsProps.helpPopoverProps}\n />\n )}\n </div>\n {queryParams.map((param, index) => (\n <div className=\"mb-2 flex gap-1\" key={index}>\n <Input\n data-cy=\"dynamic-query-key-name-input\"\n data-testid=\"dynamic-query-key-name-input\"\n name={`queryParams.${index}.name`}\n value={param.name}\n placeholder={t(\n \"neetoMolecules.productEmbed.queryParam.keyNamePlaceholder\"\n )}\n onChange={e => handleInputChange(index, \"name\", e.target.value)}\n />\n <Input\n data-cy=\"dynamic-query-key-value-input\"\n data-testid=\"dynamic-query-key-value-input\"\n name={`queryParams.${index}.value`}\n value={param.value}\n placeholder={t(\n \"neetoMolecules.productEmbed.queryParam.keyValuePlaceholder\"\n )}\n onChange={e => handleInputChange(index, \"value\", e.target.value)}\n />\n <Button\n data-cy=\"dynamic-query-delete-button\"\n icon={Delete}\n style=\"text\"\n onClick={() => handleRemoveQueryParam(index)}\n />\n </div>\n ))}\n <Button\n className=\"my-2\"\n data-cy=\"dynamic-query-add-new-button\"\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.queryParam.addQueryParam\")}\n style=\"link\"\n onClick={handleAddQueryParam}\n />\n </div>\n );\n};\n\nexport default DynamicQueryParams;\n","import { useEffect } from \"react\";\n\nimport { Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst ElementPopup = ({\n customization,\n updateCustomization,\n otherCustomizations,\n}) => {\n const { elementSelector } = customization;\n const { t } = useTranslation();\n const { isQueryParamsEnabled } = useProductEmbedStore.pick();\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <>\n <Input\n className=\"w-full\"\n data-cy=\"element-id-input-field\"\n data-testid=\"element-id-input-field\"\n helpText={t(\"neetoMolecules.productEmbed.elementPopup.callout\")}\n label={t(\"neetoMolecules.productEmbed.elementPopup.elementId\")}\n value={elementSelector}\n error={\n !elementSelector &&\n t(\"neetoMolecules.productEmbed.elementPopup.elementIdError\")\n }\n onChange={e => updateCustomization({ elementSelector: e.target.value })}\n />\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport { Label, Input, Checkbox, Select, ColorPicker } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { FLOATING_BUTTON_POSITIONS } from \"./constants\";\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst FloatingPopup = ({\n customization,\n updateCustomization,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\n const { isQueryParamsEnabled } = useProductEmbedStore.pick();\n\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <div className=\"flex w-full flex-col gap-y-4\">\n <div className=\"space-y-2\">\n <Input\n data-cy=\"button-text-input-field\"\n data-testid=\"button-text-input-field\"\n label={t(\"neetoMolecules.productEmbed.floatingPopup.button.text\")}\n value={btnText}\n error={\n !btnText &&\n t(\"neetoMolecules.productEmbed.floatingPopup.button.textError\")\n }\n onChange={e => updateCustomization({ btnText: e.target.value })}\n />\n </div>\n <div className=\"space-y-2\">\n <Select\n data-cy=\"button-position-select-field\"\n data-testid=\"button-position-select-field\"\n label={t(\"neetoMolecules.productEmbed.floatingPopup.button.pos\")}\n options={FLOATING_BUTTON_POSITIONS}\n value={btnPosition}\n getOptionValue={option =>\n typeof option === \"string\" ? option : option.value\n }\n onChange={e => updateCustomization({ btnPosition: e.value })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-2\"\n data-cy=\"button-color-label\"\n >\n <Label>\n {t(\"neetoMolecules.productEmbed.floatingPopup.button.color\")}\n </Label>\n <ColorPicker\n color={btnColor}\n size=\"medium\"\n onChange={e => updateCustomization({ btnColor: e.hex })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-2\"\n data-cy=\"button-text-color-label\"\n >\n <Label>\n {t(\"neetoMolecules.productEmbed.floatingPopup.button.textColor\")}\n </Label>\n <ColorPicker\n color={btnTextColor}\n size=\"medium\"\n onChange={e => updateCustomization({ btnTextColor: e.hex })}\n />\n </div>\n {icon && (\n <Checkbox\n checked={showIcon}\n data-cy=\"show-icon-checkbox\"\n data-testid=\"show-icon-checkbox\"\n label={t(\"neetoMolecules.productEmbed.floatingPopup.showCalIcon\")}\n onChange={e => updateCustomization({ showIcon: e.target.checked })}\n />\n )}\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default FloatingPopup;\n","import { useEffect } from \"react\";\n\nimport { Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst Iframe = ({\n customization,\n updateCustomization,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\n const { isQueryParamsEnabled } = useProductEmbedStore.pick();\n\n const { height, width } = customization;\n\n const handleInputChange = ({ target: { value } }, attribute) =>\n updateCustomization({ [attribute]: value });\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <>\n <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"window-size-text\">\n {t(\"neetoMolecules.productEmbed.iframe.sizeOfIframe\")}\n </Label>\n <div className=\"flex justify-between gap-x-2\">\n <Input\n className=\"neeto-molecules-product-embed-size-input\"\n data-cy=\"iframe-width-input-field\"\n data-testid=\"iframe-width-input-field\"\n max={100}\n min={0}\n prefix=\"W\"\n suffix=\"%\"\n type=\"number\"\n value={width}\n onChange={e => handleInputChange(e, \"width\")}\n />\n <Input\n className=\"neeto-molecules-product-embed-size-input\"\n data-cy=\"iframe-height-input-field\"\n data-testid=\"iframe-height-input-field\"\n max={100}\n min={0}\n prefix=\"H\"\n suffix=\"%\"\n type=\"number\"\n value={height}\n onChange={e => handleInputChange(e, \"height\")}\n />\n </div>\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </>\n );\n};\nexport default Iframe;\n","import { useEffect } from \"react\";\n\nimport { Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst Inline = ({\n customization,\n updateCustomization,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\n const { isQueryParamsEnabled } = useProductEmbedStore.pick();\n\n const { elementSelector } = customization;\n\n const handleInputChange = ({ target: { value } }, attribute) =>\n updateCustomization({ [attribute]: value });\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <>\n <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"inline-element-id-input-label\">\n {t(\"neetoMolecules.productEmbed.inline.elementId\")}\n </Label>\n <Input\n data-cy=\"inline-element-id-input-field\"\n data-testid=\"inline-element-id-input-field\"\n value={elementSelector}\n error={\n !elementSelector &&\n t(\"neetoMolecules.productEmbed.inline.elementIdError\")\n }\n onChange={e => handleInputChange(e, \"elementSelector\")}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </>\n );\n};\n\nexport default Inline;\n","export const InlineEmbedIcon = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"163\"\n viewBox=\"0 0 278 163\"\n width=\"278\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <g clipPath=\"url(#clip0_8605_6776)\">\n <rect fill=\"rgb(var(--neeto-ui-white))\" height=\"163\" rx=\"6\" width=\"278\" />\n <mask fill=\"rgb(var(--neeto-ui-white))\" id=\"path-3-inside-1_8605_6776\">\n <path d=\"M0 0h305v20H0z\" />\n </mask>\n <path d=\"M0 0h305v20H0z\" fill=\"rgb(var(--neeto-ui-white))\" />\n <path\n d=\"M305 19H0v2h305z\"\n fill=\"currentColor\"\n mask=\"url(#path-3-inside-1_8605_6776)\"\n />\n <circle cx=\"10.596\" cy=\"10.432\" fill=\"#FD5350\" r=\"2.307\" />\n <circle cx=\"18.143\" cy=\"10.432\" fill=\"#FEB33A\" r=\"2.307\" />\n <circle cx=\"25.69\" cy=\"10.432\" fill=\"#2CC146\" r=\"2.307\" />\n <path d=\"M36 20h206v10H36zM36 150h206v12H36z\" fill=\"currentColor\" />\n <rect\n height=\"103.55\"\n rx=\"5.217\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n strokeWidth=\"0.45\"\n width=\"205.55\"\n x=\"36.225\"\n y=\"38.225\"\n />\n <rect\n fill=\"currentColor\"\n height=\"2.311\"\n rx=\"1.156\"\n width=\"36.079\"\n x=\"45.32\"\n y=\"81.914\"\n />\n <rect\n fill=\"currentColor\"\n height=\"2.311\"\n rx=\"1.156\"\n width=\"20.949\"\n x=\"45.32\"\n y=\"87.688\"\n />\n <rect\n fill=\"#008068\"\n height=\"7.988\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"61.109\"\n />\n <rect\n fill=\"currentColor\"\n height=\"7.728\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"73.57\"\n />\n <rect\n fill=\"currentColor\"\n height=\"8.134\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"85.773\"\n />\n <rect\n fill=\"currentColor\"\n height=\"8.134\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"98.383\"\n />\n <rect\n fill=\"currentColor\"\n height=\"8.134\"\n rx=\"1\"\n width=\"23.183\"\n x=\"203.539\"\n y=\"110.992\"\n />\n <circle cx=\"52.077\" cy=\"67.819\" fill=\"currentColor\" r=\"6.733\" />\n <circle cx=\"120.314\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"120.322\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"120.322\" cy=\"95.439\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"130.954\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"130.954\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"130.954\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"130.954\" cy=\"95.439\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"141.572\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"141.572\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"141.572\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"141.572\" cy=\"95.439\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"152.181\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"152.181\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"152.181\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"162.806\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"162.806\" cy=\"74.322\" fill=\"#008068\" r=\"2.65\" />\n <circle cx=\"162.806\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"173.439\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"173.439\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"173.439\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"184.064\" cy=\"63.767\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"184.064\" cy=\"74.322\" fill=\"currentColor\" r=\"2.65\" />\n <circle cx=\"184.075\" cy=\"84.876\" fill=\"currentColor\" r=\"2.65\" />\n <path d=\"M93.023 38v104\" stroke=\"#E7E7E7\" strokeWidth=\"0.454\" />\n </g>\n <rect\n height=\"162\"\n rx=\"5.5\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n width=\"277\"\n x=\"0.5\"\n y=\"0.5\"\n />\n <defs>\n <clipPath id=\"clip0_8605_6776\">\n <rect\n fill=\"rgb(var(--neeto-ui-white))\"\n height=\"163\"\n rx=\"6\"\n width=\"278\"\n />\n </clipPath>\n </defs>\n </svg>\n);\n\nexport const FloatingPopupIcon = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"163\"\n viewBox=\"0 0 278 163\"\n width=\"278\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <g clipPath=\"url(#clip0_9047_10870)\">\n <rect fill=\"rgb(var(--neeto-ui-white))\" height=\"163\" rx=\"6\" width=\"278\" />\n <mask fill=\"rgb(var(--neeto-ui-white))\" id=\"path-3-inside-1_9047_10870\">\n <path d=\"M0 0H305V20H0V0Z\" />\n </mask>\n <path d=\"M0 0H305V20H0V0Z\" fill=\"rgb(var(--neeto-ui-white))\" />\n <path\n d=\"M305 19H0V21H305V19Z\"\n fill=\"currentColor\"\n mask=\"url(#path-3-inside-1_9047_10870)\"\n />\n <circle cx=\"10.5963\" cy=\"10.4322\" fill=\"#FD5350\" r=\"2.30723\" />\n <circle cx=\"18.1432\" cy=\"10.4322\" fill=\"#FEB33A\" r=\"2.30723\" />\n <circle cx=\"25.69\" cy=\"10.4322\" fill=\"#2CC146\" r=\"2.30723\" />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"84.6936\"\n x=\"145\"\n y=\"63\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"89\"\n x=\"145\"\n y=\"70\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"49\"\n x=\"145\"\n y=\"77\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"84.6936\"\n x=\"36\"\n y=\"111\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"89\"\n x=\"36\"\n y=\"118\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3\"\n opacity=\"0.78\"\n rx=\"1.5\"\n width=\"25.8387\"\n x=\"36\"\n y=\"125\"\n />\n <rect fill=\"currentColor\" height=\"35\" width=\"96\" x=\"36\" y=\"57\" />\n <rect fill=\"currentColor\" height=\"35\" width=\"95\" x=\"145\" y=\"102\" />\n <rect fill=\"currentColor\" height=\"26\" width=\"204\" x=\"36\" y=\"20\" />\n <rect fill=\"currentColor\" height=\"14\" width=\"204\" x=\"36\" y=\"148\" />\n </g>\n <rect\n height=\"162\"\n rx=\"5.5\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n width=\"277\"\n x=\"0.5\"\n y=\"0.5\"\n />\n <rect fill=\"#008068\" height=\"18\" rx=\"9\" width=\"69\" x=\"194\" y=\"134\" />\n <defs>\n <clipPath id=\"clip0_9047_10870\">\n <rect\n fill=\"rgb(var(--neeto-ui-white))\"\n height=\"163\"\n rx=\"6\"\n width=\"278\"\n />\n </clipPath>\n </defs>\n </svg>\n);\n\nexport const ElementPopupIcon = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"163\"\n viewBox=\"0 0 278 163\"\n width=\"278\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <g clipPath=\"url(#clip0_9047_10869)\">\n <rect fill=\"rgb(var(--neeto-ui-white))\" height=\"163\" rx=\"6\" width=\"278\" />\n <mask fill=\"rgb(var(--neeto-ui-white))\" id=\"path-3-inside-1_9047_10869\">\n <path d=\"M0 0h305v20H0z\" />\n </mask>\n <path d=\"M0 0h305v20H0z\" fill=\"rgb(var(--neeto-ui-white))\" />\n <path\n d=\"M305 19H0v2h305z\"\n fill=\"currentColor\"\n mask=\"url(#path-3-inside-1_9047_10869)\"\n />\n <circle cx=\"10.596\" cy=\"10.432\" fill=\"#FD5350\" r=\"2.307\" />\n <circle cx=\"18.143\" cy=\"10.432\" fill=\"#FEB33A\" r=\"2.307\" />\n <circle cx=\"25.69\" cy=\"10.432\" fill=\"#2CC146\" r=\"2.307\" />\n </g>\n <rect\n height=\"162\"\n rx=\"5.5\"\n stroke=\"rgb(var(--neeto-ui-gray-300))\"\n width=\"277\"\n x=\"0.5\"\n y=\"0.5\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"85\"\n x=\"135\"\n y=\"58.461\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"89\"\n x=\"135\"\n y=\"66.352\"\n />\n <rect fill=\"#008068\" height=\"7\" rx=\"3.5\" width=\"38\" x=\"135\" y=\"74\" />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"85\"\n x=\"135\"\n y=\"100.859\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"89\"\n x=\"135\"\n y=\"108.75\"\n />\n <rect\n fill=\"currentColor\"\n height=\"3.944\"\n opacity=\"0.78\"\n rx=\"1.972\"\n width=\"26\"\n x=\"135\"\n y=\"116.641\"\n />\n <path\n d=\"M36 52h88v34H36zM36 20h204v28H36zM240 162H36v-28h204zM36 90h88v41H36z\"\n fill=\"currentColor\"\n />\n <defs>\n <clipPath id=\"clip0_9047_10869\">\n <rect\n fill=\"rgb(var(--neeto-ui-white))\"\n height=\"163\"\n rx=\"6\"\n width=\"278\"\n />\n </clipPath>\n </defs>\n </svg>\n);\n","import { t } from \"i18next\";\n\nimport ElementPopup from \"./Customization/ElementPopup\";\nimport FloatingPopup from \"./Customization/FloatingPopup\";\nimport Iframe from \"./Customization/Iframe\";\nimport Inline from \"./Customization/Inline\";\nimport { InlineEmbedIcon, FloatingPopupIcon, ElementPopupIcon } from \"./Icons\";\n\nexport const EMBED_OPTIONS = {\n INLINE: \"inline\",\n FLOATING_POPUP: \"floatingPopup\",\n ELEMENT_POPUP: \"elementPopup\",\n IFRAME: \"iframe\",\n};\n\nexport const EMBED_ICONS = {\n [EMBED_OPTIONS.INLINE]: InlineEmbedIcon,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopupIcon,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopupIcon,\n [EMBED_OPTIONS.IFRAME]: InlineEmbedIcon,\n};\n\nexport const DEFAULT_CUSTOMIZATION = {\n [EMBED_OPTIONS.INLINE]: {\n width: 100,\n height: 100,\n elementSelector: \"inline-embed-container\",\n },\n [EMBED_OPTIONS.FLOATING_POPUP]: {\n showIcon: false,\n btnText: \"Open\",\n btnColor: \"#008068\",\n btnTextColor: \"#fff\",\n btnPosition: \"bottomRight\",\n },\n [EMBED_OPTIONS.ELEMENT_POPUP]: {\n elementSelector: \"open-popup-button\",\n },\n [EMBED_OPTIONS.IFRAME]: {\n height: 100,\n width: 100,\n iframeTitle: \"Iframe embed\",\n },\n};\n\nexport const EMBED_CUSTOMIZATION_COMPONENTS = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopup,\n [EMBED_OPTIONS.IFRAME]: Iframe,\n};\n\nexport const EMBED_TITLES = {\n [EMBED_OPTIONS.INLINE]: t(\"neetoMolecules.productEmbed.inline.title\"),\n [EMBED_OPTIONS.FLOATING_POPUP]: t(\n \"neetoMolecules.productEmbed.floatingPopup.title\"\n ),\n [EMBED_OPTIONS.ELEMENT_POPUP]: t(\n \"neetoMolecules.productEmbed.elementPopup.title\"\n ),\n [EMBED_OPTIONS.IFRAME]: t(\"neetoMolecules.productEmbed.iframe.title\"),\n};\n\nexport const SUPPORTED_LANGUAGES = [\n { value: \"html\", label: t(\"neetoMolecules.productEmbed.language.html\") },\n {\n value: \"react\",\n label: t(\"neetoMolecules.productEmbed.language.react\"),\n },\n];\n\nexport const SCRIPT_ID = \"embed-script\";\n\nexport const TAB_STRING = \" \";\n","import { useState } from \"react\";\n\nimport { filterBy } from \"neetocist\";\nimport { Typography, Select } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Codeblock from \"components/Codeblock\";\n\nimport { SUPPORTED_LANGUAGES } from \"./constants\";\nimport { generateCode } from \"./utils\";\n\nconst Code = ({\n id,\n selectedEmbed,\n embedScriptLink,\n extraArgs,\n inlineWrapperStyle,\n iframeStyle,\n supportedLanguages,\n customization,\n}) => {\n const { t } = useTranslation();\n\n const supportedLanguagesOptions = filterBy(\n { value: value => supportedLanguages?.includes(value) },\n SUPPORTED_LANGUAGES\n );\n\n const [selectedLanguage, setSelectedLanguage] = useState(\n supportedLanguagesOptions[0]\n );\n\n const code = generateCode({\n id,\n selectedLanguage: selectedLanguage.value,\n type: selectedEmbed,\n customization,\n embedScriptLink,\n extraArgs,\n inlineWrapperStyle,\n iframeStyle,\n });\n\n return (\n <div className=\"flex flex-col gap-3\">\n <div className=\"flex items-center justify-between\">\n <Typography style=\"h4\">\n {t(\"neetoMolecules.productEmbed.embedCode\")}\n </Typography>\n <Select\n className=\"w-28 flex-grow-0\"\n options={supportedLanguagesOptions}\n size=\"small\"\n strategy=\"fixed\"\n value={selectedLanguage}\n onChange={setSelectedLanguage}\n />\n </div>\n <div\n className=\"neeto-molecules-embed__code-block relative w-full overflow-y-auto\"\n data-cy=\"embed-code-block\"\n data-testid=\"embed-code-block\"\n >\n <Codeblock\n {...{ code }}\n codeblockProps={{\n \"data-testid\": `${selectedLanguage.value}-code-block`,\n }}\n copyButtonProps={{\n style: \"primary\",\n label: t(\"neetoMolecules.productEmbed.copyCode\"),\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default Code;\n","export const FloatingPopupPlaceholderImage = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"518\"\n viewBox=\"0 0 796 518\"\n width=\"796\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"358.702\"\n x=\"406.645\"\n y=\"152.109\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"376.941\"\n x=\"406.645\"\n y=\"181.758\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"207.529\"\n x=\"406.645\"\n y=\"211.406\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"358.702\"\n y=\"333.414\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"376.941\"\n y=\"363.062\"\n />\n <rect\n fill=\"currentColor\"\n height=\"12.706\"\n opacity=\"0.78\"\n rx=\"6.353\"\n width=\"109.435\"\n y=\"392.711\"\n />\n <path\n d=\"M0 127.203h374v148H0zM407 295h389v149H407zM0 .203h796v110H0zM0 460.203h796v59H0z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport const ElementPopupPlaceholderImage = ({ ...other }) => (\n <svg\n fill=\"none\"\n height=\"518\"\n viewBox=\"0 0 748 518\"\n width=\"748\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...other}\n >\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"311.667\"\n x=\"363\"\n y=\"142.688\"\n />\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"326.333\"\n x=\"363\"\n y=\"171.617\"\n />\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"311.667\"\n x=\"363\"\n y=\"298.141\"\n />\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"326.333\"\n x=\"363\"\n y=\"327.07\"\n />\n <rect\n fill=\"currentColor\"\n height=\"14.463\"\n opacity=\"0.78\"\n rx=\"7.231\"\n width=\"95.333\"\n x=\"363\"\n y=\"356\"\n />\n <path\n d=\"M0 119h322.667v124.667H0zM0 0h748v104H0zM748 522.336H0V419.669h748zM0 258.328h322.667v150.333H0z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n","import { useEffect, useMemo } from \"react\";\n\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ElementPopupPlaceholderImage } from \"../PlaceholderImages\";\n\nconst ElementPopup = ({ iframeURL }) => {\n const { t } = useTranslation();\n\n /**\n * Currently embed() function doesn't have an unembed handler.\n * When iframe link changes, we don't have an option to reinitiate it.\n * So we forcefully recreate the element with `key` and call embed() again\n */\n const elementSelectorId = useMemo(\n () => `popup-button-${Math.random().toString().substring(2, 10)}`,\n [iframeURL]\n );\n\n useEffect(() => {\n const element = document.getElementById(elementSelectorId);\n if (element) {\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n element,\n iframeURL\n );\n }\n }, [iframeURL]);\n\n return (\n <div className=\"relative h-full w-full overflow-hidden\">\n <ElementPopupPlaceholderImage className=\"neeto-ui-text-gray-100 absolute inset-0 h-auto w-full p-10\" />\n <Button\n className=\"absolute left-[48.5294117647%] top-[39.0804597701%]\"\n data-cy=\"preview-element-popup-button\"\n data-testid=\"preview-element-popup-button\"\n id={elementSelectorId}\n key={elementSelectorId}\n label={t(\"neetoMolecules.productEmbed.elementPopup.label\")}\n />\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect, useMemo } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Button } from \"neetoui\";\n\nimport { FloatingPopupPlaceholderImage } from \"../PlaceholderImages\";\n\nconst FloatingPopup = ({ iframeURL, customization }) => {\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n /**\n * Currently embed() function doesn't have an unembed handler.\n * When iframe link changes, we don't have an option to reinitiate it.\n * So we forcefully recreate the element with `key` and call embed() again\n */\n const elementSelectorId = useMemo(\n () => `popup-button-${Math.random().toString().substring(2, 10)}`,\n [iframeURL]\n );\n\n useEffect(() => {\n const element = document.getElementById(elementSelectorId);\n if (element) {\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n element,\n iframeURL\n );\n }\n }, [iframeURL]);\n\n useEffect(() => {\n const btn = document.getElementById(elementSelectorId);\n btn.style.backgroundColor = btnColor;\n btn.style.color = btnTextColor;\n }, [btnColor, btnTextColor]);\n\n return (\n <div className=\"relative h-full w-full overflow-hidden\">\n <FloatingPopupPlaceholderImage className=\"neeto-ui-text-gray-100 h-auto w-full p-10\" />\n <Button\n data-cy=\"popup-preview-button\"\n icon={icon && showIcon ? icon : null}\n iconPosition=\"left\"\n id={elementSelectorId}\n key={elementSelectorId}\n label={btnText}\n className={classNames(\"absolute bottom-0 m-4\", {\n \"left-0\": btnPosition === \"bottomLeft\",\n \"right-0\": btnPosition === \"bottomRight\",\n })}\n />\n </div>\n );\n};\n\nexport default FloatingPopup;\n","const Iframe = ({ iframeURL, customization }) => {\n const { height, width, iframeTitle } = customization;\n\n return (\n <iframe\n allowFullScreen\n className=\"m-auto\"\n frameBorder=\"0\"\n height={`${height}%`}\n src={iframeURL}\n title={iframeTitle}\n width={`${width}%`}\n />\n );\n};\n\nexport default Iframe;\n","const Inline = ({ iframeURL, customization }) => {\n const { height, width } = customization;\n\n return (\n <iframe\n className=\"m-auto\"\n height={`${height}%`}\n src={iframeURL}\n width={`${width}%`}\n />\n );\n};\n\nexport default Inline;\n","export const buildIframeURL = (iframeURL, queryParams) => {\n const url = new URL(iframeURL);\n\n queryParams.forEach(param => {\n url.searchParams.append(param.name, param.value);\n });\n\n return url.toString();\n};\n","import { Spinner } from \"neetoui\";\n\nimport BrowserPreview from \"components/BrowserPreview\";\n\nimport ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Iframe from \"./Iframe\";\nimport Inline from \"./Inline\";\nimport { buildIframeURL } from \"./utils\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\nimport useProductEmbedStore from \"../useProductEmbedStore\";\n\nconst Preview = ({\n isScriptLoading,\n selectedEmbed,\n id,\n customization,\n customPreviewIframeUrl = \"\",\n}) => {\n const { queryParams } = useProductEmbedStore.pick();\n\n const preview = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopup,\n [EMBED_OPTIONS.IFRAME]: Iframe,\n };\n\n const iframeURL = buildIframeURL(\n customPreviewIframeUrl || `${location.origin}/embed/${id}`,\n queryParams\n );\n const Component = preview[selectedEmbed];\n\n if (isScriptLoading) {\n return (\n <div className=\"flex min-h-0 flex-grow items-center justify-center overflow-y-auto\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <BrowserPreview\n className=\"h-full\"\n wrapperClassName=\"neeto-molecules-embed__browser-preview pointer-events-auto\"\n >\n <Component {...{ customization, iframeURL }} />\n </BrowserPreview>\n );\n};\n\nexport default Preview;\n","import { useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport Code from \"./Code\";\nimport {\n EMBED_CUSTOMIZATION_COMPONENTS,\n EMBED_TITLES,\n SCRIPT_ID,\n} from \"./constants\";\nimport Preview from \"./Preview\";\nimport \"./product-embed.scss\";\nimport { buildDefaultCustomization } from \"./utils\";\n\nconst EmbedRenderer = ({\n className,\n customEmbedScriptPath,\n customPreviewIframeUrl,\n id,\n options,\n extraArgs,\n otherCustomizations,\n inlineWrapperStyle,\n iframeStyle,\n supportedLanguages,\n selectedEmbed,\n}) => {\n const { t } = useTranslation();\n const location = useLocation();\n\n const [isScriptLoading, setIsScriptLoading] = useState(true);\n\n const [customizations, setCustomizations] = useState(() =>\n buildDefaultCustomization(options)\n );\n\n const { description } = customizations[selectedEmbed];\n const customization = customizations[selectedEmbed];\n const CustomizationComponent = EMBED_CUSTOMIZATION_COMPONENTS[selectedEmbed];\n\n const embedScriptLink =\n customEmbedScriptPath ||\n `${window.location.protocol}//${window.location.host}/javascript/embed.js`;\n\n const loadScript = () => {\n const script = document.createElement(\"script\");\n script.id = SCRIPT_ID;\n script.src = embedScriptLink;\n script.onload = () => setIsScriptLoading(false);\n document.head.appendChild(script);\n };\n\n const updateCustomization = props =>\n setCustomizations(prevState => ({\n ...prevState,\n [selectedEmbed]: mergeLeft(props, prevState[selectedEmbed]),\n }));\n\n useEffect(() => {\n const isScriptLoaded = document.getElementById(SCRIPT_ID);\n if (isScriptLoaded) setIsScriptLoading(false);\n else loadScript();\n }, []);\n\n return (\n <Container\n data-testid=\"embed-product\"\n className={classNames(\n \"neeto-molecules-embed flex w-full flex-grow flex-col p-0 md:flex-row\",\n className\n )}\n >\n <div className=\"neeto-molecules-embed__left-sidebar px-5 py-8 md:h-full md:overflow-y-auto md:px-10\">\n <Button\n className=\"mb-4\"\n data-cy=\"back-to-embed-selection-button\"\n data-testid=\"back-to-embed-selection-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.backToEmbedSelection\")}\n size=\"small\"\n style=\"link\"\n to={location.pathname}\n />\n <Header\n className=\"py-0\"\n data-testid={`${hyphenate(selectedEmbed)}-embed-title`}\n title={EMBED_TITLES[selectedEmbed]}\n />\n {description && (\n <Typography\n className=\"mt-2\"\n data-cy={`${hyphenate(selectedEmbed)}-description`}\n style=\"body2\"\n >\n {description}\n </Typography>\n )}\n <div className=\"mt-4 flex w-full flex-col gap-y-6\">\n <div className=\"space-y-6\">\n <Code\n {...{\n customization,\n embedScriptLink,\n extraArgs,\n id,\n iframeStyle,\n inlineWrapperStyle,\n selectedEmbed,\n supportedLanguages,\n }}\n />\n <CustomizationComponent\n {...{\n customization,\n otherCustomizations,\n updateCustomization,\n }}\n />\n </div>\n </div>\n </div>\n <div className=\"neeto-molecules-embed__preview neeto-ui-bg-gray-50 flex min-h-dvh w-full min-w-0 flex-col gap-3 overflow-y-auto p-6 md:h-full md:min-h-0 md:flex-grow\">\n <Preview\n {...{\n customPreviewIframeUrl,\n customization,\n id,\n isScriptLoading,\n selectedEmbed,\n }}\n />\n </div>\n </Container>\n );\n};\n\nexport default EmbedRenderer;\n","import { hyphenate } from \"neetocist\";\nimport { handleMetaClick } from \"neetocommons/react-utils\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Typography, Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport { EMBED_ICONS } from \"./constants\";\n\nconst EmbedSelector = ({ options, goBackLink, title }) => {\n const { t } = useTranslation();\n\n const history = useHistory();\n const location = useLocation();\n\n return (\n <Container className=\"neeto-molecules-embed-landing-page py-8\">\n {goBackLink && (\n <Button\n className=\"mb-4\"\n data-cy=\"back-button\"\n data-testid=\"back-button\"\n icon={LeftArrow}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.productEmbed.backToShare\")}\n size=\"small\"\n style=\"link\"\n to={goBackLink}\n />\n )}\n <Header\n className=\"py-0\"\n data-testid=\"embed-selector-header\"\n title={t(\"neetoMolecules.productEmbed.title\")}\n />\n <div className=\"neeto-molecules-embed-landing-page__container mx-auto w-full max-w-5xl py-6 md:py-10\">\n <Typography className=\"mb-2\" style=\"h2\">\n {title ||\n t(\"neetoMolecules.productEmbed.embedSelectionTitle\", {\n productName: globalProps.appName,\n })}\n </Typography>\n <Typography className=\"mb-8\" style=\"body1\">\n {t(\"neetoMolecules.productEmbed.embedSelectionDescription\")}\n </Typography>\n <div className=\"neeto-molecules-embed-landing-page__cards-wrapper grid w-full grid-cols-1 flex-wrap gap-6 md:grid-cols-3\">\n {Object.entries(options).map(\n ([key, { label, description, embedIcon }]) => {\n const EmbedIcon = embedIcon || EMBED_ICONS[key];\n\n return (\n <button\n className=\"neeto-molecules-embed-landing-page__card flex w-full flex-col\"\n data-testid={`embed-selector-card-${hyphenate(key)}`}\n key={key}\n onClick={handleMetaClick(\n history,\n `${location.pathname}?type=${hyphenate(key)}`\n )}\n >\n <span className=\"neeto-molecules-embed-landing-page__card-icon mb-6 block\">\n <EmbedIcon className=\"neeto-ui-text-gray-200 h-auto w-full max-w-72\" />\n </span>\n <Typography className=\"mb-2\" style=\"h4\">\n {label}\n </Typography>\n <Typography style=\"body2\">{description}</Typography>\n </button>\n );\n }\n )}\n </div>\n </div>\n </Container>\n );\n};\n\nexport default EmbedSelector;\n","import { useEffect } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { useLocation } from \"react-router-dom\";\n\nimport EmbedRenderer from \"./EmbedRenderer\";\nimport EmbedSelector from \"./EmbedSelector\";\nimport \"./product-embed.scss\";\nimport useProductEmbedStore from \"./useProductEmbedStore\";\nimport { toCamelCasedString } from \"./utils\";\n\nconst ProductEmbed = ({\n title,\n className = \"\",\n customEmbedScriptPath = \"\",\n customPreviewIframeUrl = \"\",\n goBackLink = \"\",\n id,\n isQueryParamsEnabled = false,\n queryParamsProps = { helpPopoverProps: {}, label: \"\" },\n options = {},\n extraArgs = {},\n otherCustomizations = noop,\n inlineWrapperStyle = \"height: 90vh; width: 100%;\",\n iframeStyle = \"height: 100%; width: 100%;\",\n supportedLanguages = [\"html\"],\n}) => {\n const { search } = useLocation();\n\n const queryParams = new URLSearchParams(search);\n const selectedEmbed = toCamelCasedString(queryParams.get(\"type\"));\n\n const { setProductEmbedState } = useProductEmbedStore.pick();\n\n useEffect(() => {\n setProductEmbedState({ isQueryParamsEnabled, queryParamsProps });\n }, []);\n\n return selectedEmbed ? (\n <EmbedRenderer\n {...{\n className,\n customEmbedScriptPath,\n customPreviewIframeUrl,\n extraArgs,\n id,\n iframeStyle,\n inlineWrapperStyle,\n options,\n otherCustomizations,\n queryParamsProps,\n selectedEmbed,\n supportedLanguages,\n }}\n />\n ) : (\n <EmbedSelector {...{ goBackLink, options, title }} />\n );\n};\n\nProductEmbed.propTypes = {\n /**\n * To set the title in the embed selection page.\n */\n title: PropTypes.string,\n /**\n * To set custom classNames. (optional)\n */\n className: PropTypes.string,\n /**\n * To use a different embed script. Uses /javascript/embed.js by default. (optional)\n */\n customEmbedScriptPath: PropTypes.string,\n /**\n * To use a different iframeUrl in Product embed preview. Uses /embed/${id} by default. (optional)\n */\n customPreviewIframeUrl: PropTypes.string,\n /**\n * To specify extra arguments to pass to the embed script. (optional)\n */\n extraArgs: PropTypes.object,\n /**\n * To show the 'Back to share' button. (optional)\n */\n goBackLink: PropTypes.string,\n /**\n * To specify the entity ID.\n */\n id: PropTypes.string,\n /**\n * To specify the Embed options for the product.\n */\n options: PropTypes.shape({\n inline: PropTypes.shape({\n label: PropTypes.string,\n description: PropTypes.string,\n embedIcon: PropTypes.func,\n width: PropTypes.number,\n height: PropTypes.number,\n elementSelector: PropTypes.string,\n }),\n floatingPopup: PropTypes.shape({\n label: PropTypes.string,\n description: PropTypes.string,\n embedIcon: PropTypes.func,\n btnTextColor: PropTypes.string,\n btnText: PropTypes.string,\n btnPosition: PropTypes.string,\n btnColor: PropTypes.string,\n icon: PropTypes.func,\n showIcon: PropTypes.bool,\n }),\n elementPopup: PropTypes.shape({\n label: PropTypes.string,\n description: PropTypes.string,\n embedIcon: PropTypes.func,\n elementSelector: PropTypes.string,\n }),\n iframe: PropTypes.shape({\n label: PropTypes.string,\n description: PropTypes.string,\n embedIcon: PropTypes.func,\n width: PropTypes.number,\n height: PropTypes.number,\n iframeUrl: PropTypes.string,\n }),\n }),\n /**\n * To enable query parameters\n */\n isQueryParamsEnabled: PropTypes.bool,\n /**\n * To specify the query parameters\n */\n queryParamsProps: PropTypes.shape({\n helpPopoverProps: PropTypes.shape({\n title: PropTypes.string,\n size: PropTypes.oneOf([\"default\", \"large\"]),\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n helpLinkProps: PropTypes.object,\n popoverProps: PropTypes.object,\n className: PropTypes.string,\n iconColor: PropTypes.string,\n icon: PropTypes.node,\n }),\n label: PropTypes.string,\n }),\n /**\n * To add other customization fields to all the embed options\n */\n otherCustomizations: PropTypes.func,\n /**\n * To override the styles of inline embed wrapper div\n */\n inlineWrapperStyle: PropTypes.string,\n /**\n * To override the styles of inline embed iframe\n */\n iframeStyle: PropTypes.string,\n /**\n * To specifies the supported languages, currently limited to `html` and `react`.\n */\n supportedLanguages: PropTypes.arrayOf(PropTypes.oneOf([\"html\", \"react\"])),\n};\n\nexport default ProductEmbed;\n"],"names":["FLOATING_BUTTON_POSITIONS","label","t","value","INITIAL_QUERY_PARAM","name","useProductEmbedStore","create","withImmutableActions","set","isQueryParamsEnabled","queryParams","queryParamsProps","helpPopoverProps","setProductEmbedState","setQueryParams","camelCasedAppName","globalProps","appName","replace","embedBaseScript","embedScriptLink","concat","embedEnv","railsEnv","TAB_STRING","embedQueryParam","parseExtraArgs","extraArgs","toPairs","map","_ref","_ref2","_slicedToArray","key","inlineEmbedCode","_ref3","customization","id","inlineWrapperStyle","iframeStyle","elementSelector","organization","subdomain","floatingPopupEmbedCode","_ref4","btnTextColor","showIcon","btnText","btnPosition","btnColor","icon","elementPopupEmbedCode","_ref5","iframeEmbedCode","_ref6","height","width","iframeTitle","iframeUrl","iframeSrc","buildIframeURL","htmlCodeGenerators","inline","floatingPopup","elementPopup","iframe","embedFunctionName","embedScript","scriptLink","cleanupFunction","parseInlineStyle","styleString","split","rule","_rule$split$map","s","trim","_rule$split$map2","filter","Boolean","join","reactCodeGenerators","generateCode","options","_reactCodeGenerators$","_htmlCodeGenerators$t","selectedLanguage","type","embeddedCodeOptions","_objectWithoutProperties","_excluded","call","buildDefaultCustomization","defaultCustomizations","mergeDeepLeft","DEFAULT_CUSTOMIZATION","buildQueryParamsFromInputFields","inputFields","filteredInputFields","reduce","isEmpty","queryParamJsonString","JSON","stringify","toCamelCasedString","string","_","nextChar","toUpperCase","iframeURL","url","URL","location","origin","toString","parsedQueryParams","parse","Object","entries","forEach","searchParams","append","_ref7","DynamicQueryParams","updateCustomization","_useTranslation","useTranslation","_useProductEmbedStore","store","shallow","handleAddQueryParam","_toConsumableArray","handleRemoveQueryParam","index","newQueryParams","i","handleInputChange","field","param","_objectSpread","_defineProperty","useEffect","_jsxs","children","className","_jsx","Label","isPresent","HelpPopover","Input","placeholder","onChange","e","target","Button","Delete","style","onClick","Plus","iconPosition","ElementPopup","otherCustomizations","undefined","_Fragment","helpText","error","FloatingPopup","Select","getOptionValue","option","ColorPicker","color","size","hex","Checkbox","checked","Iframe","attribute","max","min","prefix","suffix","Inline","InlineEmbedIcon","other","assign","_objectDestructuringEmpty","fill","viewBox","xmlns","clipPath","rx","d","mask","cx","cy","r","stroke","strokeWidth","x","y","FloatingPopupIcon","opacity","ElementPopupIcon","EMBED_OPTIONS","INLINE","FLOATING_POPUP","ELEMENT_POPUP","IFRAME","EMBED_ICONS","EMBED_CUSTOMIZATION_COMPONENTS","EMBED_TITLES","SUPPORTED_LANGUAGES","SCRIPT_ID","Code","selectedEmbed","supportedLanguages","supportedLanguagesOptions","filterBy","includes","_useState","useState","_useState2","setSelectedLanguage","code","Typography","strategy","Codeblock","codeblockProps","copyButtonProps","FloatingPopupPlaceholderImage","ElementPopupPlaceholderImage","elementSelectorId","useMemo","Math","random","substring","element","document","getElementById","_window$globalProps$a","window","embed","btn","backgroundColor","classNames","allowFullScreen","frameBorder","src","title","Preview","isScriptLoading","_ref$customPreviewIfr","customPreviewIframeUrl","preview","Component","Spinner","BrowserPreview","wrapperClassName","EmbedRenderer","customEmbedScriptPath","useLocation","setIsScriptLoading","_useState3","_useState4","customizations","setCustomizations","description","CustomizationComponent","protocol","host","loadScript","script","createElement","onload","head","appendChild","props","prevState","mergeLeft","isScriptLoaded","Container","LeftArrow","to","pathname","Header","hyphenate","EmbedSelector","goBackLink","history","useHistory","productName","_ref3$","embedIcon","EmbedIcon","handleMetaClick","ProductEmbed","_ref$className","_ref$customEmbedScrip","_ref$goBackLink","_ref$isQueryParamsEna","_ref$queryParamsProps","_ref$options","_ref$extraArgs","_ref$otherCustomizati","noop","_ref$inlineWrapperSty","_ref$iframeStyle","_ref$supportedLanguag","_useLocation","search","URLSearchParams","get"],"mappings":"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"}
|