@bigbinary/neeto-molecules 3.7.16 → 3.7.17

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.
@@ -799,7 +799,7 @@ var ProductEmbed = function ProductEmbed(_ref) {
799
799
  style: "body3",
800
800
  children: t("neetoMolecules.productEmbed.embedOptions.description")
801
801
  }), /*#__PURE__*/jsxs("div", {
802
- className: "mt-6 flex w-full flex-col gap-y-6 md:pb-10",
802
+ className: "mt-6 flex w-full flex-col gap-y-6 md:pb-20",
803
803
  children: [/*#__PURE__*/jsx(Options, {
804
804
  options: options,
805
805
  selectedOption: selectedOption,
@@ -1 +1 @@
1
- {"version":3,"file":"ProductEmbed.js","sources":["../src/components/ProductEmbed/Code.jsx","../src/components/ProductEmbed/constants.js","../src/components/ProductEmbed/Customization/constants.js","../src/components/ProductEmbed/util.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/Customization/index.jsx","../src/components/ProductEmbed/Header.jsx","../src/components/ProductEmbed/Options.jsx","../src/components/ProductEmbed/Preview/BrowserIcon.jsx","../src/components/ProductEmbed/Preview/ElementPopup.jsx","../src/components/ProductEmbed/Preview/FloatingPopup.jsx","../src/components/ProductEmbed/Preview/Inline.jsx","../src/components/ProductEmbed/Preview/index.jsx","../src/components/ProductEmbed/index.jsx"],"sourcesContent":["import Codeblock from \"components/Codeblock\";\n\nconst Code = ({ code }) => (\n <div\n className=\"relative w-full overflow-y-auto\"\n data-cy=\"embed-code-block\"\n data-testid=\"embed-code-block\"\n >\n <Codeblock {...{ code }} />\n </div>\n);\n\nexport default Code;\n","import { t } from \"i18next\";\nimport { Code, Eye } from \"neetoicons\";\n\nexport const TAB_KEYS = { HTML: \"html\", PREVIEW: \"preview\" };\n\nexport const TABS = [\n {\n key: TAB_KEYS.HTML,\n label: t(\"neetoMolecules.productEmbed.tab.html\"),\n icon: Code,\n },\n {\n key: TAB_KEYS.PREVIEW,\n label: t(\"neetoMolecules.productEmbed.tab.preview\"),\n icon: Eye,\n },\n];\n\nexport const EMBED_OPTIONS = {\n INLINE: \"inline\",\n FLOATING_POPUP: \"floatingPopup\",\n ELEMENT_POPUP: \"elementPopup\",\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 SCRIPT_ID = \"embed-script\";\n","import { t } from \"i18next\";\n\nexport const FLOATING_BUTTON_POSITIONS = [\n {\n label: t(\"neetoMolecules.productEmbed.customization.position.bottomLeft\"),\n value: \"bottomLeft\",\n },\n {\n label: t(\"neetoMolecules.productEmbed.customization.position.bottomRight\"),\n value: \"bottomRight\",\n },\n];\n\nexport const INITIAL_QUERY_PARAM = { name: \"\", value: \"\" };\n","import { isEmpty, mergeDeepLeft, toPairs } from \"ramda\";\n\nimport { DEFAULT_CUSTOMIZATION } 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\\t env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst embedQueryParam = queryParams =>\n queryParams ? `\\n\\t queryParams: ${queryParams},` : \"\";\n\nconst parseExtraArgs = extraArgs =>\n toPairs(extraArgs).map(([key, value]) => `\\n\\t ${key}: \"${value}\"`);\n\nconst inlineEmbedCode = ({ customization, id, embedScriptLink, extraArgs }) => {\n const {\n elementSelector,\n width = 100,\n height = 100,\n queryParams,\n } = customization;\n\n return `\n <!-- ${globalProps.appName} inline embed code begins -->\n <div style=\"height: 90vh; width: 100%;\" 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: { height: \"${height}%\", width: \"${width}%\"},${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}\", ${icon ? `\\n\\t\\tshowIcon: ${showIcon},` : \"\"}\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 <!-- ${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 embedCode = ({\n type,\n customization,\n id,\n embedScriptLink,\n extraArgs = {},\n}) => {\n switch (type) {\n case \"inline\":\n return inlineEmbedCode({ customization, id, embedScriptLink, extraArgs });\n case \"floatingPopup\":\n return floatingPopupEmbedCode({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n });\n case \"elementPopup\":\n return elementPopupEmbedCode({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n });\n default:\n return \"\";\n }\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\n .replace(/\"([^\"]+)\":/g, \"$1: \")\n .replace(/\\n/g, \" \")\n .replace(/\\s\\s+/g, \" \");\n};\n","import { useState, useEffect } from \"react\";\n\nimport { Delete, Plus } from \"neetoicons\";\nimport { Button, Label, Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { INITIAL_QUERY_PARAM } from \"./constants\";\n\nimport { buildQueryParamsFromInputFields } from \"../util\";\n\nconst DynamicQueryParams = ({ updateCustomization }) => {\n const { t } = useTranslation();\n const [queryParams, setQueryParams] = useState([INITIAL_QUERY_PARAM]);\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 <Label className=\"mb-2\" data-cy=\"dynamic-query-params-label\">\n {t(\"neetoMolecules.productEmbed.customization.queryParam.label\")}\n </Label>\n {queryParams.map((param, index) => (\n <div className=\"mb-1 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.customization.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.customization.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 style=\"link\"\n label={t(\n \"neetoMolecules.productEmbed.customization.queryParam.addQueryParam\"\n )}\n onClick={handleAddQueryParam}\n />\n </div>\n );\n};\n\nexport default DynamicQueryParams;\n","import { useEffect } from \"react\";\n\nimport { Typography, Input, Callout } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst ElementPopup = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { elementSelector } = customization;\n const { t } = useTranslation();\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <div className=\"space-y-6\">\n <Typography data-cy=\"element-popup-header\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.elementPopup.title\")}\n </Typography>\n <Callout data-cy=\"element-popup-description\">\n {t(\n \"neetoMolecules.productEmbed.customization.elementPopup.description\"\n )}\n </Callout>\n <Input\n className=\"w-full\"\n data-cy=\"element-id-input-field\"\n data-testid=\"element-id-input-field\"\n value={elementSelector}\n error={\n !elementSelector &&\n t(\"neetoMolecules.productEmbed.customization.elementPopup.warning\")\n }\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.elementId\"\n )}\n onChange={e => updateCustomization({ elementSelector: e.target.value })}\n />\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport {\n Typography,\n Label,\n Input,\n Checkbox,\n Select,\n ColorPicker,\n} from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { FLOATING_BUTTON_POSITIONS } from \"./constants\";\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst FloatingPopup = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\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=\"space-y-6\">\n <Typography data-cy=\"popup-customization-header\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.floatingPopup.title\")}\n </Typography>\n {icon && (\n <Checkbox\n checked={showIcon}\n data-cy=\"show-icon-checkbox\"\n data-testid=\"show-icon-checkbox\"\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.showCalIcon\"\n )}\n onChange={e => updateCustomization({ showIcon: e.target.checked })}\n />\n )}\n <div className=\"space-y-2\">\n <Input\n data-cy=\"button-text-input-field\"\n data-testid=\"button-text-input-field\"\n value={btnText}\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.text\"\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 options={FLOATING_BUTTON_POSITIONS}\n value={btnPosition}\n getOptionValue={option =>\n typeof option === \"string\" ? option : option.value\n }\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.pos\"\n )}\n onChange={e => updateCustomization({ btnPosition: e.value })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-x-2\"\n data-cy=\"button-color-label\"\n >\n <Label>\n {t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.color\"\n )}\n </Label>\n <ColorPicker\n color={btnColor}\n onChange={e => updateCustomization({ btnColor: e.hex })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-x-2\"\n data-cy=\"button-text-color-label\"\n >\n <Label>\n {t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.textColor\"\n )}\n </Label>\n <ColorPicker\n color={btnTextColor}\n onChange={e => updateCustomization({ btnTextColor: e.hex })}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default FloatingPopup;\n","import { useEffect } from \"react\";\n\nimport { Typography, Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst Inline = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { height, width, elementSelector } = customization;\n\n const { t } = useTranslation();\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 <div className=\"flex flex-col gap-y-6\">\n <Typography data-cy=\"customization-text\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.inline.title\")}\n </Typography>\n <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"window-size-text\">\n {t(\n \"neetoMolecules.productEmbed.customization.inline.sizeOfEmbedWindow\"\n )}\n </Label>\n <div className=\"flex justify-between gap-x-2\">\n <Input\n className=\"neeto-molecules-product-embed-size-input\"\n data-cy=\"inline-width-input-field\"\n data-testid=\"inline-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=\"inline-height-input-field\"\n data-testid=\"inline-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 <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"inline-element-id-input-label\">\n {t(\"neetoMolecules.productEmbed.customization.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 onChange={e => handleInputChange(e, \"elementSelector\")}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default Inline;\n","import ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Customization = ({\n option,\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const type = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopup,\n };\n const Component = type[option];\n\n return (\n <Component\n {...{\n customization,\n isQueryParamsEnabled,\n otherCustomizations,\n updateCustomization,\n }}\n />\n );\n};\n\nexport default Customization;\n","import { Tab } from \"neetoui\";\n\nimport { TABS } from \"./constants\";\n\nconst Header = ({ tab, setTab }) => (\n <div className=\"flex w-full pt-2\">\n <Tab noUnderline className=\"neeto-molecules-product-embed-tab\">\n {TABS.map(({ key, label, icon }) => (\n <Tab.Item\n {...{ icon }}\n active={tab === key}\n data-cy={`${key}-tab`}\n data-testid={`${key}-tab`}\n key={key}\n onClick={() => setTab(key)}\n >\n {label}\n </Tab.Item>\n ))}\n </Tab>\n </div>\n);\n\nexport default Header;\n","import { Radio, Typography } from \"neetoui\";\n\nconst Options = ({ options, selectedOption, setSelectedOption }) => (\n <Radio\n stacked\n containerClassName=\"w-full flex flex-col gap-y-4\"\n name=\"options\"\n >\n {Object.entries(options).map(([key, { label, description }]) => (\n <label\n className=\"neeto-ui-border-gray-300 neeto-ui-bg-white neeto-ui-rounded-lg w-full cursor-pointer border p-4\"\n data-cy={`${key}-embed-option-label`}\n data-testid={`${key}-embed-option-label`}\n htmlFor={key}\n key={key}\n >\n <div className=\"flex items-center\">\n <Radio.Item\n {...{ label }}\n checked={key === selectedOption}\n className=\"mb-0\"\n data-cy={`${key}-embed-radio-button`}\n data-testid={`${key}-embed-radio-button`}\n id={key}\n name=\"options\"\n value={key}\n onChange={event => setSelectedOption(event.target.value)}\n />\n </div>\n <Typography\n className=\"w-full pl-6 pt-1\"\n data-cy={`${key}-embed-option-description`}\n style=\"body2\"\n >\n {description}\n </Typography>\n </label>\n ))}\n </Radio>\n);\n\nexport default Options;\n","const BrowserIcon = () => (\n <svg\n fill=\"none\"\n height=\"12\"\n viewBox=\"0 0 52 12\"\n width=\"52\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#FF5F57\"\n stroke=\"#E14640\"\n />\n <path\n d=\"M31.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#FFBD2E\"\n stroke=\"#DFA123\"\n />\n <path\n d=\"M51.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#28CA42\"\n stroke=\"#1DAD2C\"\n />\n </svg>\n);\n\nexport default BrowserIcon;\n","import { useEffect } from \"react\";\n\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ElementPopup = ({ iframeURL, customization }) => {\n const { t } = useTranslation();\n\n const { elementSelector } = customization;\n\n useEffect(() => {\n const element = document.getElementById(elementSelector);\n if (element) {\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n element,\n iframeURL\n );\n }\n }, []);\n\n return (\n <div className=\"relative flex h-full w-full items-center justify-center p-6\">\n <Button\n data-cy=\"preview-element-popup-button\"\n data-testid=\"preview-element-popup-button\"\n id={elementSelector}\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.label\"\n )}\n />\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Button } from \"neetoui\";\n\nconst FloatingPopup = ({ iframeURL, customization }) => {\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n useEffect(() => {\n const btn = document.getElementById(\"embedBtn\");\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n btn,\n iframeURL\n );\n }, []);\n\n useEffect(() => {\n const btn = document.getElementById(\"embedBtn\");\n btn.style.backgroundColor = btnColor;\n btn.style.color = btnTextColor;\n }, [btnColor, btnTextColor]);\n\n return (\n <div className=\"relative h-full w-full\">\n <Button\n data-cy=\"popup-preview-button\"\n icon={icon && showIcon ? icon : null}\n iconPosition=\"left\"\n id=\"embedBtn\"\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","import { Spinner } from \"neetoui\";\n\nimport BrowserIcon from \"./BrowserIcon\";\nimport ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Preview = ({\n isScriptLoading,\n selectedOption,\n id,\n customization,\n customPreviewIframeUrl = \"\",\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 = customPreviewIframeUrl || `${location.origin}/embed/${id}`;\n const Component = preview[selectedOption];\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 <div className=\"neeto-ui-rounded-lg neeto-ui-border-gray-300 neeto-ui-bg-white relative flex w-full flex-col overflow-hidden border\">\n <div className=\"neeto-ui-border-gray-300 flex-shrink-0 border-b p-3\">\n <BrowserIcon />\n </div>\n <div className=\"flex min-h-0 flex-grow overflow-y-auto\">\n <Component {...{ customization, iframeURL }} />\n </div>\n </div>\n );\n};\n\nexport default Preview;\n","import { useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Code from \"./Code\";\nimport { EMBED_OPTIONS, SCRIPT_ID, TAB_KEYS } from \"./constants\";\nimport Customization from \"./Customization\";\nimport Header from \"./Header\";\nimport Options from \"./Options\";\nimport Preview from \"./Preview\";\nimport \"./product-embed.scss\";\nimport { buildDefaultCustomization, embedCode } from \"./util\";\n\nconst ProductEmbed = ({\n className = \"\",\n customEmbedScriptPath = \"\",\n customPreviewIframeUrl = \"\",\n goBackLink = \"\",\n id,\n isQueryParamsEnabled = false,\n options = {},\n extraArgs = {},\n otherCustomizations = noop,\n}) => {\n const [isScriptLoading, setIsScriptLoading] = useState(true);\n const [tab, setTab] = useState(TAB_KEYS.HTML);\n const [selectedOption, setSelectedOption] = useState(EMBED_OPTIONS.INLINE);\n const [customizations, setCustomizations] = useState(() =>\n buildDefaultCustomization(options)\n );\n\n const { t } = useTranslation();\n\n const embedScriptLink =\n customEmbedScriptPath ||\n `${window.location.protocol}//${window.location.host}/javascript/embed.js`;\n\n const code = embedCode({\n id,\n type: selectedOption,\n customization: customizations[selectedOption],\n embedScriptLink,\n extraArgs,\n });\n\n const loadScript = () => {\n const script = document.createElement(\"script\");\n script.id = SCRIPT_ID;\n script.src = embedScriptLink;\n document.head.appendChild(script);\n setIsScriptLoading(false);\n };\n\n const updateCustomization = props =>\n setCustomizations(prevState => ({\n ...prevState,\n [selectedOption]: mergeLeft(props, prevState[selectedOption]),\n }));\n\n useEffect(() => {\n const isScriptLoaded = document.getElementById(SCRIPT_ID);\n if (isScriptLoaded) setIsScriptLoading(false);\n else loadScript();\n }, []);\n\n return (\n <div\n data-testid=\"embed-product\"\n className={classNames(\n \"neeto-molecules-embed flex w-full flex-grow flex-col md:flex-row\",\n className\n )}\n >\n <div className=\"neeto-molecules-embed__left-sidebar\">\n {goBackLink && (\n <Button\n className=\"mb-4 px-0\"\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=\"icon\"\n to={goBackLink}\n />\n )}\n <Typography data-cy=\"embed-options-header-title\" style=\"h3\">\n {t(\"neetoMolecules.productEmbed.embedOptions.title\")}\n </Typography>\n <Typography\n className=\"mt-1\"\n data-cy=\"embed-options-header-description\"\n style=\"body3\"\n >\n {t(\"neetoMolecules.productEmbed.embedOptions.description\")}\n </Typography>\n <div className=\"mt-6 flex w-full flex-col gap-y-6 md:pb-10\">\n <Options {...{ options, selectedOption, setSelectedOption }} />\n <Customization\n {...{\n isQueryParamsEnabled,\n otherCustomizations,\n updateCustomization,\n }}\n customization={customizations[selectedOption]}\n option={selectedOption}\n />\n </div>\n </div>\n <div className=\"neeto-molecules-embed__preview neeto-ui-bg-white flex min-h-screen w-full min-w-0 flex-col gap-4 p-6 md:min-h-0 md:flex-grow\">\n <Header {...{ setTab, tab }} />\n <div className=\"flex flex-grow overflow-y-auto\">\n {tab === TAB_KEYS.PREVIEW ? (\n <Preview\n {...{\n customPreviewIframeUrl,\n id,\n isScriptLoading,\n selectedOption,\n }}\n customization={customizations[selectedOption]}\n />\n ) : (\n <Code {...{ code }} />\n )}\n </div>\n </div>\n </div>\n );\n};\n\nProductEmbed.propTypes = {\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 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 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 elementSelector: PropTypes.string,\n }),\n }),\n /**\n * To enable query parameters\n */\n isQueryParamsEnabled: PropTypes.bool,\n /**\n * To add other customization fields to all the embed options\n */\n otherCustomizations: PropTypes.func,\n};\n\nexport default ProductEmbed;\n"],"names":["Code","_ref","code","_jsx","className","children","Codeblock","TAB_KEYS","HTML","PREVIEW","TABS","key","label","t","icon","Eye","EMBED_OPTIONS","INLINE","FLOATING_POPUP","ELEMENT_POPUP","DEFAULT_CUSTOMIZATION","_defineProperty","width","height","elementSelector","showIcon","btnText","btnColor","btnTextColor","btnPosition","SCRIPT_ID","FLOATING_BUTTON_POSITIONS","value","INITIAL_QUERY_PARAM","name","camelCasedAppName","globalProps","appName","replace","embedBaseScript","embedScriptLink","concat","embedEnv","railsEnv","embedQueryParam","queryParams","parseExtraArgs","extraArgs","toPairs","map","_ref2","_slicedToArray","inlineEmbedCode","_ref3","customization","id","_customization$width","_customization$height","organization","subdomain","floatingPopupEmbedCode","_ref4","elementPopupEmbedCode","_ref5","embedCode","_ref6","type","_ref6$extraArgs","buildDefaultCustomization","defaultCustomizations","mergeDeepLeft","buildQueryParamsFromInputFields","inputFields","filteredInputFields","filter","_ref7","reduce","_ref8","isEmpty","queryParamJsonString","JSON","stringify","DynamicQueryParams","updateCustomization","_useTranslation","useTranslation","_useState","useState","_useState2","setQueryParams","handleAddQueryParam","_toConsumableArray","handleRemoveQueryParam","index","newQueryParams","_","i","handleInputChange","field","param","_objectSpread","useEffect","_jsxs","Label","Input","placeholder","onChange","e","target","Button","Delete","style","onClick","Plus","iconPosition","ElementPopup","isQueryParamsEnabled","otherCustomizations","undefined","Typography","Callout","error","FloatingPopup","Checkbox","checked","Select","options","getOptionValue","option","ColorPicker","color","hex","Inline","attribute","max","min","prefix","suffix","Customization","Component","Header","tab","setTab","Tab","noUnderline","_createElement","Item","active","Options","selectedOption","setSelectedOption","Radio","stacked","containerClassName","Object","entries","_ref3$","description","htmlFor","event","BrowserIcon","fill","viewBox","xmlns","d","stroke","iframeURL","element","document","getElementById","_window$globalProps$a","window","embed","btn","backgroundColor","classNames","src","Preview","isScriptLoading","_ref$customPreviewIfr","customPreviewIframeUrl","preview","location","origin","Spinner","ProductEmbed","_ref$className","_ref$customEmbedScrip","customEmbedScriptPath","_ref$goBackLink","goBackLink","_ref$isQueryParamsEna","_ref$options","_ref$extraArgs","_ref$otherCustomizati","noop","setIsScriptLoading","_useState3","_useState4","_useState5","_useState6","_useState7","_useState8","customizations","setCustomizations","protocol","host","loadScript","script","createElement","head","appendChild","props","prevState","mergeLeft","isScriptLoaded","LeftArrow","size","to"],"mappings":"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"}
1
+ {"version":3,"file":"ProductEmbed.js","sources":["../src/components/ProductEmbed/Code.jsx","../src/components/ProductEmbed/constants.js","../src/components/ProductEmbed/Customization/constants.js","../src/components/ProductEmbed/util.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/Customization/index.jsx","../src/components/ProductEmbed/Header.jsx","../src/components/ProductEmbed/Options.jsx","../src/components/ProductEmbed/Preview/BrowserIcon.jsx","../src/components/ProductEmbed/Preview/ElementPopup.jsx","../src/components/ProductEmbed/Preview/FloatingPopup.jsx","../src/components/ProductEmbed/Preview/Inline.jsx","../src/components/ProductEmbed/Preview/index.jsx","../src/components/ProductEmbed/index.jsx"],"sourcesContent":["import Codeblock from \"components/Codeblock\";\n\nconst Code = ({ code }) => (\n <div\n className=\"relative w-full overflow-y-auto\"\n data-cy=\"embed-code-block\"\n data-testid=\"embed-code-block\"\n >\n <Codeblock {...{ code }} />\n </div>\n);\n\nexport default Code;\n","import { t } from \"i18next\";\nimport { Code, Eye } from \"neetoicons\";\n\nexport const TAB_KEYS = { HTML: \"html\", PREVIEW: \"preview\" };\n\nexport const TABS = [\n {\n key: TAB_KEYS.HTML,\n label: t(\"neetoMolecules.productEmbed.tab.html\"),\n icon: Code,\n },\n {\n key: TAB_KEYS.PREVIEW,\n label: t(\"neetoMolecules.productEmbed.tab.preview\"),\n icon: Eye,\n },\n];\n\nexport const EMBED_OPTIONS = {\n INLINE: \"inline\",\n FLOATING_POPUP: \"floatingPopup\",\n ELEMENT_POPUP: \"elementPopup\",\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 SCRIPT_ID = \"embed-script\";\n","import { t } from \"i18next\";\n\nexport const FLOATING_BUTTON_POSITIONS = [\n {\n label: t(\"neetoMolecules.productEmbed.customization.position.bottomLeft\"),\n value: \"bottomLeft\",\n },\n {\n label: t(\"neetoMolecules.productEmbed.customization.position.bottomRight\"),\n value: \"bottomRight\",\n },\n];\n\nexport const INITIAL_QUERY_PARAM = { name: \"\", value: \"\" };\n","import { isEmpty, mergeDeepLeft, toPairs } from \"ramda\";\n\nimport { DEFAULT_CUSTOMIZATION } 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\\t env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst embedQueryParam = queryParams =>\n queryParams ? `\\n\\t queryParams: ${queryParams},` : \"\";\n\nconst parseExtraArgs = extraArgs =>\n toPairs(extraArgs).map(([key, value]) => `\\n\\t ${key}: \"${value}\"`);\n\nconst inlineEmbedCode = ({ customization, id, embedScriptLink, extraArgs }) => {\n const {\n elementSelector,\n width = 100,\n height = 100,\n queryParams,\n } = customization;\n\n return `\n <!-- ${globalProps.appName} inline embed code begins -->\n <div style=\"height: 90vh; width: 100%;\" 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: { height: \"${height}%\", width: \"${width}%\"},${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}\", ${icon ? `\\n\\t\\tshowIcon: ${showIcon},` : \"\"}\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 <!-- ${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 embedCode = ({\n type,\n customization,\n id,\n embedScriptLink,\n extraArgs = {},\n}) => {\n switch (type) {\n case \"inline\":\n return inlineEmbedCode({ customization, id, embedScriptLink, extraArgs });\n case \"floatingPopup\":\n return floatingPopupEmbedCode({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n });\n case \"elementPopup\":\n return elementPopupEmbedCode({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n });\n default:\n return \"\";\n }\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\n .replace(/\"([^\"]+)\":/g, \"$1: \")\n .replace(/\\n/g, \" \")\n .replace(/\\s\\s+/g, \" \");\n};\n","import { useState, useEffect } from \"react\";\n\nimport { Delete, Plus } from \"neetoicons\";\nimport { Button, Label, Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { INITIAL_QUERY_PARAM } from \"./constants\";\n\nimport { buildQueryParamsFromInputFields } from \"../util\";\n\nconst DynamicQueryParams = ({ updateCustomization }) => {\n const { t } = useTranslation();\n const [queryParams, setQueryParams] = useState([INITIAL_QUERY_PARAM]);\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 <Label className=\"mb-2\" data-cy=\"dynamic-query-params-label\">\n {t(\"neetoMolecules.productEmbed.customization.queryParam.label\")}\n </Label>\n {queryParams.map((param, index) => (\n <div className=\"mb-1 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.customization.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.customization.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 style=\"link\"\n label={t(\n \"neetoMolecules.productEmbed.customization.queryParam.addQueryParam\"\n )}\n onClick={handleAddQueryParam}\n />\n </div>\n );\n};\n\nexport default DynamicQueryParams;\n","import { useEffect } from \"react\";\n\nimport { Typography, Input, Callout } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst ElementPopup = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { elementSelector } = customization;\n const { t } = useTranslation();\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <div className=\"space-y-6\">\n <Typography data-cy=\"element-popup-header\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.elementPopup.title\")}\n </Typography>\n <Callout data-cy=\"element-popup-description\">\n {t(\n \"neetoMolecules.productEmbed.customization.elementPopup.description\"\n )}\n </Callout>\n <Input\n className=\"w-full\"\n data-cy=\"element-id-input-field\"\n data-testid=\"element-id-input-field\"\n value={elementSelector}\n error={\n !elementSelector &&\n t(\"neetoMolecules.productEmbed.customization.elementPopup.warning\")\n }\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.elementId\"\n )}\n onChange={e => updateCustomization({ elementSelector: e.target.value })}\n />\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport {\n Typography,\n Label,\n Input,\n Checkbox,\n Select,\n ColorPicker,\n} from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { FLOATING_BUTTON_POSITIONS } from \"./constants\";\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst FloatingPopup = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\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=\"space-y-6\">\n <Typography data-cy=\"popup-customization-header\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.floatingPopup.title\")}\n </Typography>\n {icon && (\n <Checkbox\n checked={showIcon}\n data-cy=\"show-icon-checkbox\"\n data-testid=\"show-icon-checkbox\"\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.showCalIcon\"\n )}\n onChange={e => updateCustomization({ showIcon: e.target.checked })}\n />\n )}\n <div className=\"space-y-2\">\n <Input\n data-cy=\"button-text-input-field\"\n data-testid=\"button-text-input-field\"\n value={btnText}\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.text\"\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 options={FLOATING_BUTTON_POSITIONS}\n value={btnPosition}\n getOptionValue={option =>\n typeof option === \"string\" ? option : option.value\n }\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.pos\"\n )}\n onChange={e => updateCustomization({ btnPosition: e.value })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-x-2\"\n data-cy=\"button-color-label\"\n >\n <Label>\n {t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.color\"\n )}\n </Label>\n <ColorPicker\n color={btnColor}\n onChange={e => updateCustomization({ btnColor: e.hex })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-x-2\"\n data-cy=\"button-text-color-label\"\n >\n <Label>\n {t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.textColor\"\n )}\n </Label>\n <ColorPicker\n color={btnTextColor}\n onChange={e => updateCustomization({ btnTextColor: e.hex })}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default FloatingPopup;\n","import { useEffect } from \"react\";\n\nimport { Typography, Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst Inline = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { height, width, elementSelector } = customization;\n\n const { t } = useTranslation();\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 <div className=\"flex flex-col gap-y-6\">\n <Typography data-cy=\"customization-text\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.inline.title\")}\n </Typography>\n <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"window-size-text\">\n {t(\n \"neetoMolecules.productEmbed.customization.inline.sizeOfEmbedWindow\"\n )}\n </Label>\n <div className=\"flex justify-between gap-x-2\">\n <Input\n className=\"neeto-molecules-product-embed-size-input\"\n data-cy=\"inline-width-input-field\"\n data-testid=\"inline-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=\"inline-height-input-field\"\n data-testid=\"inline-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 <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"inline-element-id-input-label\">\n {t(\"neetoMolecules.productEmbed.customization.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 onChange={e => handleInputChange(e, \"elementSelector\")}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default Inline;\n","import ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Customization = ({\n option,\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const type = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopup,\n };\n const Component = type[option];\n\n return (\n <Component\n {...{\n customization,\n isQueryParamsEnabled,\n otherCustomizations,\n updateCustomization,\n }}\n />\n );\n};\n\nexport default Customization;\n","import { Tab } from \"neetoui\";\n\nimport { TABS } from \"./constants\";\n\nconst Header = ({ tab, setTab }) => (\n <div className=\"flex w-full pt-2\">\n <Tab noUnderline className=\"neeto-molecules-product-embed-tab\">\n {TABS.map(({ key, label, icon }) => (\n <Tab.Item\n {...{ icon }}\n active={tab === key}\n data-cy={`${key}-tab`}\n data-testid={`${key}-tab`}\n key={key}\n onClick={() => setTab(key)}\n >\n {label}\n </Tab.Item>\n ))}\n </Tab>\n </div>\n);\n\nexport default Header;\n","import { Radio, Typography } from \"neetoui\";\n\nconst Options = ({ options, selectedOption, setSelectedOption }) => (\n <Radio\n stacked\n containerClassName=\"w-full flex flex-col gap-y-4\"\n name=\"options\"\n >\n {Object.entries(options).map(([key, { label, description }]) => (\n <label\n className=\"neeto-ui-border-gray-300 neeto-ui-bg-white neeto-ui-rounded-lg w-full cursor-pointer border p-4\"\n data-cy={`${key}-embed-option-label`}\n data-testid={`${key}-embed-option-label`}\n htmlFor={key}\n key={key}\n >\n <div className=\"flex items-center\">\n <Radio.Item\n {...{ label }}\n checked={key === selectedOption}\n className=\"mb-0\"\n data-cy={`${key}-embed-radio-button`}\n data-testid={`${key}-embed-radio-button`}\n id={key}\n name=\"options\"\n value={key}\n onChange={event => setSelectedOption(event.target.value)}\n />\n </div>\n <Typography\n className=\"w-full pl-6 pt-1\"\n data-cy={`${key}-embed-option-description`}\n style=\"body2\"\n >\n {description}\n </Typography>\n </label>\n ))}\n </Radio>\n);\n\nexport default Options;\n","const BrowserIcon = () => (\n <svg\n fill=\"none\"\n height=\"12\"\n viewBox=\"0 0 52 12\"\n width=\"52\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#FF5F57\"\n stroke=\"#E14640\"\n />\n <path\n d=\"M31.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#FFBD2E\"\n stroke=\"#DFA123\"\n />\n <path\n d=\"M51.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#28CA42\"\n stroke=\"#1DAD2C\"\n />\n </svg>\n);\n\nexport default BrowserIcon;\n","import { useEffect } from \"react\";\n\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ElementPopup = ({ iframeURL, customization }) => {\n const { t } = useTranslation();\n\n const { elementSelector } = customization;\n\n useEffect(() => {\n const element = document.getElementById(elementSelector);\n if (element) {\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n element,\n iframeURL\n );\n }\n }, []);\n\n return (\n <div className=\"relative flex h-full w-full items-center justify-center p-6\">\n <Button\n data-cy=\"preview-element-popup-button\"\n data-testid=\"preview-element-popup-button\"\n id={elementSelector}\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.label\"\n )}\n />\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Button } from \"neetoui\";\n\nconst FloatingPopup = ({ iframeURL, customization }) => {\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n useEffect(() => {\n const btn = document.getElementById(\"embedBtn\");\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n btn,\n iframeURL\n );\n }, []);\n\n useEffect(() => {\n const btn = document.getElementById(\"embedBtn\");\n btn.style.backgroundColor = btnColor;\n btn.style.color = btnTextColor;\n }, [btnColor, btnTextColor]);\n\n return (\n <div className=\"relative h-full w-full\">\n <Button\n data-cy=\"popup-preview-button\"\n icon={icon && showIcon ? icon : null}\n iconPosition=\"left\"\n id=\"embedBtn\"\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","import { Spinner } from \"neetoui\";\n\nimport BrowserIcon from \"./BrowserIcon\";\nimport ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Preview = ({\n isScriptLoading,\n selectedOption,\n id,\n customization,\n customPreviewIframeUrl = \"\",\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 = customPreviewIframeUrl || `${location.origin}/embed/${id}`;\n const Component = preview[selectedOption];\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 <div className=\"neeto-ui-rounded-lg neeto-ui-border-gray-300 neeto-ui-bg-white relative flex w-full flex-col overflow-hidden border\">\n <div className=\"neeto-ui-border-gray-300 flex-shrink-0 border-b p-3\">\n <BrowserIcon />\n </div>\n <div className=\"flex min-h-0 flex-grow overflow-y-auto\">\n <Component {...{ customization, iframeURL }} />\n </div>\n </div>\n );\n};\n\nexport default Preview;\n","import { useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Code from \"./Code\";\nimport { EMBED_OPTIONS, SCRIPT_ID, TAB_KEYS } from \"./constants\";\nimport Customization from \"./Customization\";\nimport Header from \"./Header\";\nimport Options from \"./Options\";\nimport Preview from \"./Preview\";\nimport \"./product-embed.scss\";\nimport { buildDefaultCustomization, embedCode } from \"./util\";\n\nconst ProductEmbed = ({\n className = \"\",\n customEmbedScriptPath = \"\",\n customPreviewIframeUrl = \"\",\n goBackLink = \"\",\n id,\n isQueryParamsEnabled = false,\n options = {},\n extraArgs = {},\n otherCustomizations = noop,\n}) => {\n const [isScriptLoading, setIsScriptLoading] = useState(true);\n const [tab, setTab] = useState(TAB_KEYS.HTML);\n const [selectedOption, setSelectedOption] = useState(EMBED_OPTIONS.INLINE);\n const [customizations, setCustomizations] = useState(() =>\n buildDefaultCustomization(options)\n );\n\n const { t } = useTranslation();\n\n const embedScriptLink =\n customEmbedScriptPath ||\n `${window.location.protocol}//${window.location.host}/javascript/embed.js`;\n\n const code = embedCode({\n id,\n type: selectedOption,\n customization: customizations[selectedOption],\n embedScriptLink,\n extraArgs,\n });\n\n const loadScript = () => {\n const script = document.createElement(\"script\");\n script.id = SCRIPT_ID;\n script.src = embedScriptLink;\n document.head.appendChild(script);\n setIsScriptLoading(false);\n };\n\n const updateCustomization = props =>\n setCustomizations(prevState => ({\n ...prevState,\n [selectedOption]: mergeLeft(props, prevState[selectedOption]),\n }));\n\n useEffect(() => {\n const isScriptLoaded = document.getElementById(SCRIPT_ID);\n if (isScriptLoaded) setIsScriptLoading(false);\n else loadScript();\n }, []);\n\n return (\n <div\n data-testid=\"embed-product\"\n className={classNames(\n \"neeto-molecules-embed flex w-full flex-grow flex-col md:flex-row\",\n className\n )}\n >\n <div className=\"neeto-molecules-embed__left-sidebar\">\n {goBackLink && (\n <Button\n className=\"mb-4 px-0\"\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=\"icon\"\n to={goBackLink}\n />\n )}\n <Typography data-cy=\"embed-options-header-title\" style=\"h3\">\n {t(\"neetoMolecules.productEmbed.embedOptions.title\")}\n </Typography>\n <Typography\n className=\"mt-1\"\n data-cy=\"embed-options-header-description\"\n style=\"body3\"\n >\n {t(\"neetoMolecules.productEmbed.embedOptions.description\")}\n </Typography>\n <div className=\"mt-6 flex w-full flex-col gap-y-6 md:pb-20\">\n <Options {...{ options, selectedOption, setSelectedOption }} />\n <Customization\n {...{\n isQueryParamsEnabled,\n otherCustomizations,\n updateCustomization,\n }}\n customization={customizations[selectedOption]}\n option={selectedOption}\n />\n </div>\n </div>\n <div className=\"neeto-molecules-embed__preview neeto-ui-bg-white flex min-h-screen w-full min-w-0 flex-col gap-4 p-6 md:min-h-0 md:flex-grow\">\n <Header {...{ setTab, tab }} />\n <div className=\"flex flex-grow overflow-y-auto\">\n {tab === TAB_KEYS.PREVIEW ? (\n <Preview\n {...{\n customPreviewIframeUrl,\n id,\n isScriptLoading,\n selectedOption,\n }}\n customization={customizations[selectedOption]}\n />\n ) : (\n <Code {...{ code }} />\n )}\n </div>\n </div>\n </div>\n );\n};\n\nProductEmbed.propTypes = {\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 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 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 elementSelector: PropTypes.string,\n }),\n }),\n /**\n * To enable query parameters\n */\n isQueryParamsEnabled: PropTypes.bool,\n /**\n * To add other customization fields to all the embed options\n */\n otherCustomizations: PropTypes.func,\n};\n\nexport default ProductEmbed;\n"],"names":["Code","_ref","code","_jsx","className","children","Codeblock","TAB_KEYS","HTML","PREVIEW","TABS","key","label","t","icon","Eye","EMBED_OPTIONS","INLINE","FLOATING_POPUP","ELEMENT_POPUP","DEFAULT_CUSTOMIZATION","_defineProperty","width","height","elementSelector","showIcon","btnText","btnColor","btnTextColor","btnPosition","SCRIPT_ID","FLOATING_BUTTON_POSITIONS","value","INITIAL_QUERY_PARAM","name","camelCasedAppName","globalProps","appName","replace","embedBaseScript","embedScriptLink","concat","embedEnv","railsEnv","embedQueryParam","queryParams","parseExtraArgs","extraArgs","toPairs","map","_ref2","_slicedToArray","inlineEmbedCode","_ref3","customization","id","_customization$width","_customization$height","organization","subdomain","floatingPopupEmbedCode","_ref4","elementPopupEmbedCode","_ref5","embedCode","_ref6","type","_ref6$extraArgs","buildDefaultCustomization","defaultCustomizations","mergeDeepLeft","buildQueryParamsFromInputFields","inputFields","filteredInputFields","filter","_ref7","reduce","_ref8","isEmpty","queryParamJsonString","JSON","stringify","DynamicQueryParams","updateCustomization","_useTranslation","useTranslation","_useState","useState","_useState2","setQueryParams","handleAddQueryParam","_toConsumableArray","handleRemoveQueryParam","index","newQueryParams","_","i","handleInputChange","field","param","_objectSpread","useEffect","_jsxs","Label","Input","placeholder","onChange","e","target","Button","Delete","style","onClick","Plus","iconPosition","ElementPopup","isQueryParamsEnabled","otherCustomizations","undefined","Typography","Callout","error","FloatingPopup","Checkbox","checked","Select","options","getOptionValue","option","ColorPicker","color","hex","Inline","attribute","max","min","prefix","suffix","Customization","Component","Header","tab","setTab","Tab","noUnderline","_createElement","Item","active","Options","selectedOption","setSelectedOption","Radio","stacked","containerClassName","Object","entries","_ref3$","description","htmlFor","event","BrowserIcon","fill","viewBox","xmlns","d","stroke","iframeURL","element","document","getElementById","_window$globalProps$a","window","embed","btn","backgroundColor","classNames","src","Preview","isScriptLoading","_ref$customPreviewIfr","customPreviewIframeUrl","preview","location","origin","Spinner","ProductEmbed","_ref$className","_ref$customEmbedScrip","customEmbedScriptPath","_ref$goBackLink","goBackLink","_ref$isQueryParamsEna","_ref$options","_ref$extraArgs","_ref$otherCustomizati","noop","setIsScriptLoading","_useState3","_useState4","_useState5","_useState6","_useState7","_useState8","customizations","setCustomizations","protocol","host","loadScript","script","createElement","head","appendChild","props","prevState","mergeLeft","isScriptLoaded","LeftArrow","size","to"],"mappings":"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"}
@@ -824,7 +824,7 @@ var ProductEmbed = function ProductEmbed(_ref) {
824
824
  style: "body3",
825
825
  children: t("neetoMolecules.productEmbed.embedOptions.description")
826
826
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
827
- className: "mt-6 flex w-full flex-col gap-y-6 md:pb-10",
827
+ className: "mt-6 flex w-full flex-col gap-y-6 md:pb-20",
828
828
  children: [/*#__PURE__*/jsxRuntime.jsx(Options, {
829
829
  options: options,
830
830
  selectedOption: selectedOption,
@@ -1 +1 @@
1
- {"version":3,"file":"ProductEmbed.js","sources":["../../src/components/ProductEmbed/Code.jsx","../../src/components/ProductEmbed/constants.js","../../src/components/ProductEmbed/Customization/constants.js","../../src/components/ProductEmbed/util.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/Customization/index.jsx","../../src/components/ProductEmbed/Header.jsx","../../src/components/ProductEmbed/Options.jsx","../../src/components/ProductEmbed/Preview/BrowserIcon.jsx","../../src/components/ProductEmbed/Preview/ElementPopup.jsx","../../src/components/ProductEmbed/Preview/FloatingPopup.jsx","../../src/components/ProductEmbed/Preview/Inline.jsx","../../src/components/ProductEmbed/Preview/index.jsx","../../src/components/ProductEmbed/index.jsx"],"sourcesContent":["import Codeblock from \"components/Codeblock\";\n\nconst Code = ({ code }) => (\n <div\n className=\"relative w-full overflow-y-auto\"\n data-cy=\"embed-code-block\"\n data-testid=\"embed-code-block\"\n >\n <Codeblock {...{ code }} />\n </div>\n);\n\nexport default Code;\n","import { t } from \"i18next\";\nimport { Code, Eye } from \"neetoicons\";\n\nexport const TAB_KEYS = { HTML: \"html\", PREVIEW: \"preview\" };\n\nexport const TABS = [\n {\n key: TAB_KEYS.HTML,\n label: t(\"neetoMolecules.productEmbed.tab.html\"),\n icon: Code,\n },\n {\n key: TAB_KEYS.PREVIEW,\n label: t(\"neetoMolecules.productEmbed.tab.preview\"),\n icon: Eye,\n },\n];\n\nexport const EMBED_OPTIONS = {\n INLINE: \"inline\",\n FLOATING_POPUP: \"floatingPopup\",\n ELEMENT_POPUP: \"elementPopup\",\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 SCRIPT_ID = \"embed-script\";\n","import { t } from \"i18next\";\n\nexport const FLOATING_BUTTON_POSITIONS = [\n {\n label: t(\"neetoMolecules.productEmbed.customization.position.bottomLeft\"),\n value: \"bottomLeft\",\n },\n {\n label: t(\"neetoMolecules.productEmbed.customization.position.bottomRight\"),\n value: \"bottomRight\",\n },\n];\n\nexport const INITIAL_QUERY_PARAM = { name: \"\", value: \"\" };\n","import { isEmpty, mergeDeepLeft, toPairs } from \"ramda\";\n\nimport { DEFAULT_CUSTOMIZATION } 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\\t env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst embedQueryParam = queryParams =>\n queryParams ? `\\n\\t queryParams: ${queryParams},` : \"\";\n\nconst parseExtraArgs = extraArgs =>\n toPairs(extraArgs).map(([key, value]) => `\\n\\t ${key}: \"${value}\"`);\n\nconst inlineEmbedCode = ({ customization, id, embedScriptLink, extraArgs }) => {\n const {\n elementSelector,\n width = 100,\n height = 100,\n queryParams,\n } = customization;\n\n return `\n <!-- ${globalProps.appName} inline embed code begins -->\n <div style=\"height: 90vh; width: 100%;\" 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: { height: \"${height}%\", width: \"${width}%\"},${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}\", ${icon ? `\\n\\t\\tshowIcon: ${showIcon},` : \"\"}\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 <!-- ${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 embedCode = ({\n type,\n customization,\n id,\n embedScriptLink,\n extraArgs = {},\n}) => {\n switch (type) {\n case \"inline\":\n return inlineEmbedCode({ customization, id, embedScriptLink, extraArgs });\n case \"floatingPopup\":\n return floatingPopupEmbedCode({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n });\n case \"elementPopup\":\n return elementPopupEmbedCode({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n });\n default:\n return \"\";\n }\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\n .replace(/\"([^\"]+)\":/g, \"$1: \")\n .replace(/\\n/g, \" \")\n .replace(/\\s\\s+/g, \" \");\n};\n","import { useState, useEffect } from \"react\";\n\nimport { Delete, Plus } from \"neetoicons\";\nimport { Button, Label, Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { INITIAL_QUERY_PARAM } from \"./constants\";\n\nimport { buildQueryParamsFromInputFields } from \"../util\";\n\nconst DynamicQueryParams = ({ updateCustomization }) => {\n const { t } = useTranslation();\n const [queryParams, setQueryParams] = useState([INITIAL_QUERY_PARAM]);\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 <Label className=\"mb-2\" data-cy=\"dynamic-query-params-label\">\n {t(\"neetoMolecules.productEmbed.customization.queryParam.label\")}\n </Label>\n {queryParams.map((param, index) => (\n <div className=\"mb-1 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.customization.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.customization.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 style=\"link\"\n label={t(\n \"neetoMolecules.productEmbed.customization.queryParam.addQueryParam\"\n )}\n onClick={handleAddQueryParam}\n />\n </div>\n );\n};\n\nexport default DynamicQueryParams;\n","import { useEffect } from \"react\";\n\nimport { Typography, Input, Callout } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst ElementPopup = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { elementSelector } = customization;\n const { t } = useTranslation();\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <div className=\"space-y-6\">\n <Typography data-cy=\"element-popup-header\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.elementPopup.title\")}\n </Typography>\n <Callout data-cy=\"element-popup-description\">\n {t(\n \"neetoMolecules.productEmbed.customization.elementPopup.description\"\n )}\n </Callout>\n <Input\n className=\"w-full\"\n data-cy=\"element-id-input-field\"\n data-testid=\"element-id-input-field\"\n value={elementSelector}\n error={\n !elementSelector &&\n t(\"neetoMolecules.productEmbed.customization.elementPopup.warning\")\n }\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.elementId\"\n )}\n onChange={e => updateCustomization({ elementSelector: e.target.value })}\n />\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport {\n Typography,\n Label,\n Input,\n Checkbox,\n Select,\n ColorPicker,\n} from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { FLOATING_BUTTON_POSITIONS } from \"./constants\";\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst FloatingPopup = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\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=\"space-y-6\">\n <Typography data-cy=\"popup-customization-header\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.floatingPopup.title\")}\n </Typography>\n {icon && (\n <Checkbox\n checked={showIcon}\n data-cy=\"show-icon-checkbox\"\n data-testid=\"show-icon-checkbox\"\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.showCalIcon\"\n )}\n onChange={e => updateCustomization({ showIcon: e.target.checked })}\n />\n )}\n <div className=\"space-y-2\">\n <Input\n data-cy=\"button-text-input-field\"\n data-testid=\"button-text-input-field\"\n value={btnText}\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.text\"\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 options={FLOATING_BUTTON_POSITIONS}\n value={btnPosition}\n getOptionValue={option =>\n typeof option === \"string\" ? option : option.value\n }\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.pos\"\n )}\n onChange={e => updateCustomization({ btnPosition: e.value })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-x-2\"\n data-cy=\"button-color-label\"\n >\n <Label>\n {t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.color\"\n )}\n </Label>\n <ColorPicker\n color={btnColor}\n onChange={e => updateCustomization({ btnColor: e.hex })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-x-2\"\n data-cy=\"button-text-color-label\"\n >\n <Label>\n {t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.textColor\"\n )}\n </Label>\n <ColorPicker\n color={btnTextColor}\n onChange={e => updateCustomization({ btnTextColor: e.hex })}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default FloatingPopup;\n","import { useEffect } from \"react\";\n\nimport { Typography, Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst Inline = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { height, width, elementSelector } = customization;\n\n const { t } = useTranslation();\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 <div className=\"flex flex-col gap-y-6\">\n <Typography data-cy=\"customization-text\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.inline.title\")}\n </Typography>\n <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"window-size-text\">\n {t(\n \"neetoMolecules.productEmbed.customization.inline.sizeOfEmbedWindow\"\n )}\n </Label>\n <div className=\"flex justify-between gap-x-2\">\n <Input\n className=\"neeto-molecules-product-embed-size-input\"\n data-cy=\"inline-width-input-field\"\n data-testid=\"inline-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=\"inline-height-input-field\"\n data-testid=\"inline-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 <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"inline-element-id-input-label\">\n {t(\"neetoMolecules.productEmbed.customization.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 onChange={e => handleInputChange(e, \"elementSelector\")}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default Inline;\n","import ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Customization = ({\n option,\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const type = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopup,\n };\n const Component = type[option];\n\n return (\n <Component\n {...{\n customization,\n isQueryParamsEnabled,\n otherCustomizations,\n updateCustomization,\n }}\n />\n );\n};\n\nexport default Customization;\n","import { Tab } from \"neetoui\";\n\nimport { TABS } from \"./constants\";\n\nconst Header = ({ tab, setTab }) => (\n <div className=\"flex w-full pt-2\">\n <Tab noUnderline className=\"neeto-molecules-product-embed-tab\">\n {TABS.map(({ key, label, icon }) => (\n <Tab.Item\n {...{ icon }}\n active={tab === key}\n data-cy={`${key}-tab`}\n data-testid={`${key}-tab`}\n key={key}\n onClick={() => setTab(key)}\n >\n {label}\n </Tab.Item>\n ))}\n </Tab>\n </div>\n);\n\nexport default Header;\n","import { Radio, Typography } from \"neetoui\";\n\nconst Options = ({ options, selectedOption, setSelectedOption }) => (\n <Radio\n stacked\n containerClassName=\"w-full flex flex-col gap-y-4\"\n name=\"options\"\n >\n {Object.entries(options).map(([key, { label, description }]) => (\n <label\n className=\"neeto-ui-border-gray-300 neeto-ui-bg-white neeto-ui-rounded-lg w-full cursor-pointer border p-4\"\n data-cy={`${key}-embed-option-label`}\n data-testid={`${key}-embed-option-label`}\n htmlFor={key}\n key={key}\n >\n <div className=\"flex items-center\">\n <Radio.Item\n {...{ label }}\n checked={key === selectedOption}\n className=\"mb-0\"\n data-cy={`${key}-embed-radio-button`}\n data-testid={`${key}-embed-radio-button`}\n id={key}\n name=\"options\"\n value={key}\n onChange={event => setSelectedOption(event.target.value)}\n />\n </div>\n <Typography\n className=\"w-full pl-6 pt-1\"\n data-cy={`${key}-embed-option-description`}\n style=\"body2\"\n >\n {description}\n </Typography>\n </label>\n ))}\n </Radio>\n);\n\nexport default Options;\n","const BrowserIcon = () => (\n <svg\n fill=\"none\"\n height=\"12\"\n viewBox=\"0 0 52 12\"\n width=\"52\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#FF5F57\"\n stroke=\"#E14640\"\n />\n <path\n d=\"M31.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#FFBD2E\"\n stroke=\"#DFA123\"\n />\n <path\n d=\"M51.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#28CA42\"\n stroke=\"#1DAD2C\"\n />\n </svg>\n);\n\nexport default BrowserIcon;\n","import { useEffect } from \"react\";\n\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ElementPopup = ({ iframeURL, customization }) => {\n const { t } = useTranslation();\n\n const { elementSelector } = customization;\n\n useEffect(() => {\n const element = document.getElementById(elementSelector);\n if (element) {\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n element,\n iframeURL\n );\n }\n }, []);\n\n return (\n <div className=\"relative flex h-full w-full items-center justify-center p-6\">\n <Button\n data-cy=\"preview-element-popup-button\"\n data-testid=\"preview-element-popup-button\"\n id={elementSelector}\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.label\"\n )}\n />\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Button } from \"neetoui\";\n\nconst FloatingPopup = ({ iframeURL, customization }) => {\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n useEffect(() => {\n const btn = document.getElementById(\"embedBtn\");\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n btn,\n iframeURL\n );\n }, []);\n\n useEffect(() => {\n const btn = document.getElementById(\"embedBtn\");\n btn.style.backgroundColor = btnColor;\n btn.style.color = btnTextColor;\n }, [btnColor, btnTextColor]);\n\n return (\n <div className=\"relative h-full w-full\">\n <Button\n data-cy=\"popup-preview-button\"\n icon={icon && showIcon ? icon : null}\n iconPosition=\"left\"\n id=\"embedBtn\"\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","import { Spinner } from \"neetoui\";\n\nimport BrowserIcon from \"./BrowserIcon\";\nimport ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Preview = ({\n isScriptLoading,\n selectedOption,\n id,\n customization,\n customPreviewIframeUrl = \"\",\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 = customPreviewIframeUrl || `${location.origin}/embed/${id}`;\n const Component = preview[selectedOption];\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 <div className=\"neeto-ui-rounded-lg neeto-ui-border-gray-300 neeto-ui-bg-white relative flex w-full flex-col overflow-hidden border\">\n <div className=\"neeto-ui-border-gray-300 flex-shrink-0 border-b p-3\">\n <BrowserIcon />\n </div>\n <div className=\"flex min-h-0 flex-grow overflow-y-auto\">\n <Component {...{ customization, iframeURL }} />\n </div>\n </div>\n );\n};\n\nexport default Preview;\n","import { useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Code from \"./Code\";\nimport { EMBED_OPTIONS, SCRIPT_ID, TAB_KEYS } from \"./constants\";\nimport Customization from \"./Customization\";\nimport Header from \"./Header\";\nimport Options from \"./Options\";\nimport Preview from \"./Preview\";\nimport \"./product-embed.scss\";\nimport { buildDefaultCustomization, embedCode } from \"./util\";\n\nconst ProductEmbed = ({\n className = \"\",\n customEmbedScriptPath = \"\",\n customPreviewIframeUrl = \"\",\n goBackLink = \"\",\n id,\n isQueryParamsEnabled = false,\n options = {},\n extraArgs = {},\n otherCustomizations = noop,\n}) => {\n const [isScriptLoading, setIsScriptLoading] = useState(true);\n const [tab, setTab] = useState(TAB_KEYS.HTML);\n const [selectedOption, setSelectedOption] = useState(EMBED_OPTIONS.INLINE);\n const [customizations, setCustomizations] = useState(() =>\n buildDefaultCustomization(options)\n );\n\n const { t } = useTranslation();\n\n const embedScriptLink =\n customEmbedScriptPath ||\n `${window.location.protocol}//${window.location.host}/javascript/embed.js`;\n\n const code = embedCode({\n id,\n type: selectedOption,\n customization: customizations[selectedOption],\n embedScriptLink,\n extraArgs,\n });\n\n const loadScript = () => {\n const script = document.createElement(\"script\");\n script.id = SCRIPT_ID;\n script.src = embedScriptLink;\n document.head.appendChild(script);\n setIsScriptLoading(false);\n };\n\n const updateCustomization = props =>\n setCustomizations(prevState => ({\n ...prevState,\n [selectedOption]: mergeLeft(props, prevState[selectedOption]),\n }));\n\n useEffect(() => {\n const isScriptLoaded = document.getElementById(SCRIPT_ID);\n if (isScriptLoaded) setIsScriptLoading(false);\n else loadScript();\n }, []);\n\n return (\n <div\n data-testid=\"embed-product\"\n className={classNames(\n \"neeto-molecules-embed flex w-full flex-grow flex-col md:flex-row\",\n className\n )}\n >\n <div className=\"neeto-molecules-embed__left-sidebar\">\n {goBackLink && (\n <Button\n className=\"mb-4 px-0\"\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=\"icon\"\n to={goBackLink}\n />\n )}\n <Typography data-cy=\"embed-options-header-title\" style=\"h3\">\n {t(\"neetoMolecules.productEmbed.embedOptions.title\")}\n </Typography>\n <Typography\n className=\"mt-1\"\n data-cy=\"embed-options-header-description\"\n style=\"body3\"\n >\n {t(\"neetoMolecules.productEmbed.embedOptions.description\")}\n </Typography>\n <div className=\"mt-6 flex w-full flex-col gap-y-6 md:pb-10\">\n <Options {...{ options, selectedOption, setSelectedOption }} />\n <Customization\n {...{\n isQueryParamsEnabled,\n otherCustomizations,\n updateCustomization,\n }}\n customization={customizations[selectedOption]}\n option={selectedOption}\n />\n </div>\n </div>\n <div className=\"neeto-molecules-embed__preview neeto-ui-bg-white flex min-h-screen w-full min-w-0 flex-col gap-4 p-6 md:min-h-0 md:flex-grow\">\n <Header {...{ setTab, tab }} />\n <div className=\"flex flex-grow overflow-y-auto\">\n {tab === TAB_KEYS.PREVIEW ? (\n <Preview\n {...{\n customPreviewIframeUrl,\n id,\n isScriptLoading,\n selectedOption,\n }}\n customization={customizations[selectedOption]}\n />\n ) : (\n <Code {...{ code }} />\n )}\n </div>\n </div>\n </div>\n );\n};\n\nProductEmbed.propTypes = {\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 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 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 elementSelector: PropTypes.string,\n }),\n }),\n /**\n * To enable query parameters\n */\n isQueryParamsEnabled: PropTypes.bool,\n /**\n * To add other customization fields to all the embed options\n */\n otherCustomizations: PropTypes.func,\n};\n\nexport default ProductEmbed;\n"],"names":["Code","_ref","code","_jsx","className","children","Codeblock","TAB_KEYS","HTML","PREVIEW","TABS","key","label","t","icon","Eye","EMBED_OPTIONS","INLINE","FLOATING_POPUP","ELEMENT_POPUP","DEFAULT_CUSTOMIZATION","_defineProperty","width","height","elementSelector","showIcon","btnText","btnColor","btnTextColor","btnPosition","SCRIPT_ID","FLOATING_BUTTON_POSITIONS","value","INITIAL_QUERY_PARAM","name","camelCasedAppName","globalProps","appName","replace","embedBaseScript","embedScriptLink","concat","embedEnv","railsEnv","embedQueryParam","queryParams","parseExtraArgs","extraArgs","toPairs","map","_ref2","_slicedToArray","inlineEmbedCode","_ref3","customization","id","_customization$width","_customization$height","organization","subdomain","floatingPopupEmbedCode","_ref4","elementPopupEmbedCode","_ref5","embedCode","_ref6","type","_ref6$extraArgs","buildDefaultCustomization","defaultCustomizations","mergeDeepLeft","buildQueryParamsFromInputFields","inputFields","filteredInputFields","filter","_ref7","reduce","_ref8","isEmpty","queryParamJsonString","JSON","stringify","DynamicQueryParams","updateCustomization","_useTranslation","useTranslation","_useState","useState","_useState2","setQueryParams","handleAddQueryParam","_toConsumableArray","handleRemoveQueryParam","index","newQueryParams","_","i","handleInputChange","field","param","_objectSpread","useEffect","_jsxs","Label","Input","placeholder","onChange","e","target","Button","Delete","style","onClick","Plus","iconPosition","ElementPopup","isQueryParamsEnabled","otherCustomizations","undefined","Typography","Callout","error","FloatingPopup","Checkbox","checked","Select","options","getOptionValue","option","ColorPicker","color","hex","Inline","attribute","max","min","prefix","suffix","Customization","Component","Header","tab","setTab","Tab","noUnderline","_createElement","Item","active","Options","selectedOption","setSelectedOption","Radio","stacked","containerClassName","Object","entries","_ref3$","description","htmlFor","event","BrowserIcon","fill","viewBox","xmlns","d","stroke","iframeURL","element","document","getElementById","_window$globalProps$a","window","embed","btn","backgroundColor","classNames","src","Preview","isScriptLoading","_ref$customPreviewIfr","customPreviewIframeUrl","preview","location","origin","Spinner","ProductEmbed","_ref$className","_ref$customEmbedScrip","customEmbedScriptPath","_ref$goBackLink","goBackLink","_ref$isQueryParamsEna","_ref$options","_ref$extraArgs","_ref$otherCustomizati","noop","setIsScriptLoading","_useState3","_useState4","_useState5","_useState6","_useState7","_useState8","customizations","setCustomizations","protocol","host","loadScript","script","createElement","head","appendChild","props","prevState","mergeLeft","isScriptLoaded","LeftArrow","size","to"],"mappings":"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"}
1
+ {"version":3,"file":"ProductEmbed.js","sources":["../../src/components/ProductEmbed/Code.jsx","../../src/components/ProductEmbed/constants.js","../../src/components/ProductEmbed/Customization/constants.js","../../src/components/ProductEmbed/util.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/Customization/index.jsx","../../src/components/ProductEmbed/Header.jsx","../../src/components/ProductEmbed/Options.jsx","../../src/components/ProductEmbed/Preview/BrowserIcon.jsx","../../src/components/ProductEmbed/Preview/ElementPopup.jsx","../../src/components/ProductEmbed/Preview/FloatingPopup.jsx","../../src/components/ProductEmbed/Preview/Inline.jsx","../../src/components/ProductEmbed/Preview/index.jsx","../../src/components/ProductEmbed/index.jsx"],"sourcesContent":["import Codeblock from \"components/Codeblock\";\n\nconst Code = ({ code }) => (\n <div\n className=\"relative w-full overflow-y-auto\"\n data-cy=\"embed-code-block\"\n data-testid=\"embed-code-block\"\n >\n <Codeblock {...{ code }} />\n </div>\n);\n\nexport default Code;\n","import { t } from \"i18next\";\nimport { Code, Eye } from \"neetoicons\";\n\nexport const TAB_KEYS = { HTML: \"html\", PREVIEW: \"preview\" };\n\nexport const TABS = [\n {\n key: TAB_KEYS.HTML,\n label: t(\"neetoMolecules.productEmbed.tab.html\"),\n icon: Code,\n },\n {\n key: TAB_KEYS.PREVIEW,\n label: t(\"neetoMolecules.productEmbed.tab.preview\"),\n icon: Eye,\n },\n];\n\nexport const EMBED_OPTIONS = {\n INLINE: \"inline\",\n FLOATING_POPUP: \"floatingPopup\",\n ELEMENT_POPUP: \"elementPopup\",\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 SCRIPT_ID = \"embed-script\";\n","import { t } from \"i18next\";\n\nexport const FLOATING_BUTTON_POSITIONS = [\n {\n label: t(\"neetoMolecules.productEmbed.customization.position.bottomLeft\"),\n value: \"bottomLeft\",\n },\n {\n label: t(\"neetoMolecules.productEmbed.customization.position.bottomRight\"),\n value: \"bottomRight\",\n },\n];\n\nexport const INITIAL_QUERY_PARAM = { name: \"\", value: \"\" };\n","import { isEmpty, mergeDeepLeft, toPairs } from \"ramda\";\n\nimport { DEFAULT_CUSTOMIZATION } 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\\t env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst embedQueryParam = queryParams =>\n queryParams ? `\\n\\t queryParams: ${queryParams},` : \"\";\n\nconst parseExtraArgs = extraArgs =>\n toPairs(extraArgs).map(([key, value]) => `\\n\\t ${key}: \"${value}\"`);\n\nconst inlineEmbedCode = ({ customization, id, embedScriptLink, extraArgs }) => {\n const {\n elementSelector,\n width = 100,\n height = 100,\n queryParams,\n } = customization;\n\n return `\n <!-- ${globalProps.appName} inline embed code begins -->\n <div style=\"height: 90vh; width: 100%;\" 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: { height: \"${height}%\", width: \"${width}%\"},${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}\", ${icon ? `\\n\\t\\tshowIcon: ${showIcon},` : \"\"}\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 <!-- ${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 embedCode = ({\n type,\n customization,\n id,\n embedScriptLink,\n extraArgs = {},\n}) => {\n switch (type) {\n case \"inline\":\n return inlineEmbedCode({ customization, id, embedScriptLink, extraArgs });\n case \"floatingPopup\":\n return floatingPopupEmbedCode({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n });\n case \"elementPopup\":\n return elementPopupEmbedCode({\n customization,\n id,\n embedScriptLink,\n extraArgs,\n });\n default:\n return \"\";\n }\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\n .replace(/\"([^\"]+)\":/g, \"$1: \")\n .replace(/\\n/g, \" \")\n .replace(/\\s\\s+/g, \" \");\n};\n","import { useState, useEffect } from \"react\";\n\nimport { Delete, Plus } from \"neetoicons\";\nimport { Button, Label, Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { INITIAL_QUERY_PARAM } from \"./constants\";\n\nimport { buildQueryParamsFromInputFields } from \"../util\";\n\nconst DynamicQueryParams = ({ updateCustomization }) => {\n const { t } = useTranslation();\n const [queryParams, setQueryParams] = useState([INITIAL_QUERY_PARAM]);\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 <Label className=\"mb-2\" data-cy=\"dynamic-query-params-label\">\n {t(\"neetoMolecules.productEmbed.customization.queryParam.label\")}\n </Label>\n {queryParams.map((param, index) => (\n <div className=\"mb-1 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.customization.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.customization.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 style=\"link\"\n label={t(\n \"neetoMolecules.productEmbed.customization.queryParam.addQueryParam\"\n )}\n onClick={handleAddQueryParam}\n />\n </div>\n );\n};\n\nexport default DynamicQueryParams;\n","import { useEffect } from \"react\";\n\nimport { Typography, Input, Callout } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst ElementPopup = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { elementSelector } = customization;\n const { t } = useTranslation();\n\n useEffect(() => {\n if (isQueryParamsEnabled) return;\n\n updateCustomization({ queryParams: undefined });\n }, []);\n\n return (\n <div className=\"space-y-6\">\n <Typography data-cy=\"element-popup-header\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.elementPopup.title\")}\n </Typography>\n <Callout data-cy=\"element-popup-description\">\n {t(\n \"neetoMolecules.productEmbed.customization.elementPopup.description\"\n )}\n </Callout>\n <Input\n className=\"w-full\"\n data-cy=\"element-id-input-field\"\n data-testid=\"element-id-input-field\"\n value={elementSelector}\n error={\n !elementSelector &&\n t(\"neetoMolecules.productEmbed.customization.elementPopup.warning\")\n }\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.elementId\"\n )}\n onChange={e => updateCustomization({ elementSelector: e.target.value })}\n />\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport {\n Typography,\n Label,\n Input,\n Checkbox,\n Select,\n ColorPicker,\n} from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { FLOATING_BUTTON_POSITIONS } from \"./constants\";\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst FloatingPopup = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { t } = useTranslation();\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=\"space-y-6\">\n <Typography data-cy=\"popup-customization-header\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.floatingPopup.title\")}\n </Typography>\n {icon && (\n <Checkbox\n checked={showIcon}\n data-cy=\"show-icon-checkbox\"\n data-testid=\"show-icon-checkbox\"\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.showCalIcon\"\n )}\n onChange={e => updateCustomization({ showIcon: e.target.checked })}\n />\n )}\n <div className=\"space-y-2\">\n <Input\n data-cy=\"button-text-input-field\"\n data-testid=\"button-text-input-field\"\n value={btnText}\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.text\"\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 options={FLOATING_BUTTON_POSITIONS}\n value={btnPosition}\n getOptionValue={option =>\n typeof option === \"string\" ? option : option.value\n }\n label={t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.pos\"\n )}\n onChange={e => updateCustomization({ btnPosition: e.value })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-x-2\"\n data-cy=\"button-color-label\"\n >\n <Label>\n {t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.color\"\n )}\n </Label>\n <ColorPicker\n color={btnColor}\n onChange={e => updateCustomization({ btnColor: e.hex })}\n />\n </div>\n <div\n className=\"flex items-center justify-between gap-x-2\"\n data-cy=\"button-text-color-label\"\n >\n <Label>\n {t(\n \"neetoMolecules.productEmbed.customization.floatingPopup.button.textColor\"\n )}\n </Label>\n <ColorPicker\n color={btnTextColor}\n onChange={e => updateCustomization({ btnTextColor: e.hex })}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default FloatingPopup;\n","import { useEffect } from \"react\";\n\nimport { Typography, Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DynamicQueryParams from \"./DynamicQueryParams\";\n\nconst Inline = ({\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const { height, width, elementSelector } = customization;\n\n const { t } = useTranslation();\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 <div className=\"flex flex-col gap-y-6\">\n <Typography data-cy=\"customization-text\" style=\"h4\">\n {t(\"neetoMolecules.productEmbed.customization.inline.title\")}\n </Typography>\n <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"window-size-text\">\n {t(\n \"neetoMolecules.productEmbed.customization.inline.sizeOfEmbedWindow\"\n )}\n </Label>\n <div className=\"flex justify-between gap-x-2\">\n <Input\n className=\"neeto-molecules-product-embed-size-input\"\n data-cy=\"inline-width-input-field\"\n data-testid=\"inline-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=\"inline-height-input-field\"\n data-testid=\"inline-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 <div className=\"flex flex-col gap-2\">\n <Label data-cy=\"inline-element-id-input-label\">\n {t(\"neetoMolecules.productEmbed.customization.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 onChange={e => handleInputChange(e, \"elementSelector\")}\n />\n </div>\n {otherCustomizations()}\n {isQueryParamsEnabled && (\n <DynamicQueryParams {...{ updateCustomization }} />\n )}\n </div>\n );\n};\n\nexport default Inline;\n","import ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Customization = ({\n option,\n customization,\n updateCustomization,\n isQueryParamsEnabled,\n otherCustomizations,\n}) => {\n const type = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n [EMBED_OPTIONS.ELEMENT_POPUP]: ElementPopup,\n };\n const Component = type[option];\n\n return (\n <Component\n {...{\n customization,\n isQueryParamsEnabled,\n otherCustomizations,\n updateCustomization,\n }}\n />\n );\n};\n\nexport default Customization;\n","import { Tab } from \"neetoui\";\n\nimport { TABS } from \"./constants\";\n\nconst Header = ({ tab, setTab }) => (\n <div className=\"flex w-full pt-2\">\n <Tab noUnderline className=\"neeto-molecules-product-embed-tab\">\n {TABS.map(({ key, label, icon }) => (\n <Tab.Item\n {...{ icon }}\n active={tab === key}\n data-cy={`${key}-tab`}\n data-testid={`${key}-tab`}\n key={key}\n onClick={() => setTab(key)}\n >\n {label}\n </Tab.Item>\n ))}\n </Tab>\n </div>\n);\n\nexport default Header;\n","import { Radio, Typography } from \"neetoui\";\n\nconst Options = ({ options, selectedOption, setSelectedOption }) => (\n <Radio\n stacked\n containerClassName=\"w-full flex flex-col gap-y-4\"\n name=\"options\"\n >\n {Object.entries(options).map(([key, { label, description }]) => (\n <label\n className=\"neeto-ui-border-gray-300 neeto-ui-bg-white neeto-ui-rounded-lg w-full cursor-pointer border p-4\"\n data-cy={`${key}-embed-option-label`}\n data-testid={`${key}-embed-option-label`}\n htmlFor={key}\n key={key}\n >\n <div className=\"flex items-center\">\n <Radio.Item\n {...{ label }}\n checked={key === selectedOption}\n className=\"mb-0\"\n data-cy={`${key}-embed-radio-button`}\n data-testid={`${key}-embed-radio-button`}\n id={key}\n name=\"options\"\n value={key}\n onChange={event => setSelectedOption(event.target.value)}\n />\n </div>\n <Typography\n className=\"w-full pl-6 pt-1\"\n data-cy={`${key}-embed-option-description`}\n style=\"body2\"\n >\n {description}\n </Typography>\n </label>\n ))}\n </Radio>\n);\n\nexport default Options;\n","const BrowserIcon = () => (\n <svg\n fill=\"none\"\n height=\"12\"\n viewBox=\"0 0 52 12\"\n width=\"52\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#FF5F57\"\n stroke=\"#E14640\"\n />\n <path\n d=\"M31.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#FFBD2E\"\n stroke=\"#DFA123\"\n />\n <path\n d=\"M51.5 6a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z\"\n fill=\"#28CA42\"\n stroke=\"#1DAD2C\"\n />\n </svg>\n);\n\nexport default BrowserIcon;\n","import { useEffect } from \"react\";\n\nimport { Button } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ElementPopup = ({ iframeURL, customization }) => {\n const { t } = useTranslation();\n\n const { elementSelector } = customization;\n\n useEffect(() => {\n const element = document.getElementById(elementSelector);\n if (element) {\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n element,\n iframeURL\n );\n }\n }, []);\n\n return (\n <div className=\"relative flex h-full w-full items-center justify-center p-6\">\n <Button\n data-cy=\"preview-element-popup-button\"\n data-testid=\"preview-element-popup-button\"\n id={elementSelector}\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.label\"\n )}\n />\n </div>\n );\n};\n\nexport default ElementPopup;\n","import { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Button } from \"neetoui\";\n\nconst FloatingPopup = ({ iframeURL, customization }) => {\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n useEffect(() => {\n const btn = document.getElementById(\"embedBtn\");\n window[globalProps.appName.replace(/^neeto/i, \"neeto\")]?.embed(\n btn,\n iframeURL\n );\n }, []);\n\n useEffect(() => {\n const btn = document.getElementById(\"embedBtn\");\n btn.style.backgroundColor = btnColor;\n btn.style.color = btnTextColor;\n }, [btnColor, btnTextColor]);\n\n return (\n <div className=\"relative h-full w-full\">\n <Button\n data-cy=\"popup-preview-button\"\n icon={icon && showIcon ? icon : null}\n iconPosition=\"left\"\n id=\"embedBtn\"\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","import { Spinner } from \"neetoui\";\n\nimport BrowserIcon from \"./BrowserIcon\";\nimport ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Preview = ({\n isScriptLoading,\n selectedOption,\n id,\n customization,\n customPreviewIframeUrl = \"\",\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 = customPreviewIframeUrl || `${location.origin}/embed/${id}`;\n const Component = preview[selectedOption];\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 <div className=\"neeto-ui-rounded-lg neeto-ui-border-gray-300 neeto-ui-bg-white relative flex w-full flex-col overflow-hidden border\">\n <div className=\"neeto-ui-border-gray-300 flex-shrink-0 border-b p-3\">\n <BrowserIcon />\n </div>\n <div className=\"flex min-h-0 flex-grow overflow-y-auto\">\n <Component {...{ customization, iframeURL }} />\n </div>\n </div>\n );\n};\n\nexport default Preview;\n","import { useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { LeftArrow } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Code from \"./Code\";\nimport { EMBED_OPTIONS, SCRIPT_ID, TAB_KEYS } from \"./constants\";\nimport Customization from \"./Customization\";\nimport Header from \"./Header\";\nimport Options from \"./Options\";\nimport Preview from \"./Preview\";\nimport \"./product-embed.scss\";\nimport { buildDefaultCustomization, embedCode } from \"./util\";\n\nconst ProductEmbed = ({\n className = \"\",\n customEmbedScriptPath = \"\",\n customPreviewIframeUrl = \"\",\n goBackLink = \"\",\n id,\n isQueryParamsEnabled = false,\n options = {},\n extraArgs = {},\n otherCustomizations = noop,\n}) => {\n const [isScriptLoading, setIsScriptLoading] = useState(true);\n const [tab, setTab] = useState(TAB_KEYS.HTML);\n const [selectedOption, setSelectedOption] = useState(EMBED_OPTIONS.INLINE);\n const [customizations, setCustomizations] = useState(() =>\n buildDefaultCustomization(options)\n );\n\n const { t } = useTranslation();\n\n const embedScriptLink =\n customEmbedScriptPath ||\n `${window.location.protocol}//${window.location.host}/javascript/embed.js`;\n\n const code = embedCode({\n id,\n type: selectedOption,\n customization: customizations[selectedOption],\n embedScriptLink,\n extraArgs,\n });\n\n const loadScript = () => {\n const script = document.createElement(\"script\");\n script.id = SCRIPT_ID;\n script.src = embedScriptLink;\n document.head.appendChild(script);\n setIsScriptLoading(false);\n };\n\n const updateCustomization = props =>\n setCustomizations(prevState => ({\n ...prevState,\n [selectedOption]: mergeLeft(props, prevState[selectedOption]),\n }));\n\n useEffect(() => {\n const isScriptLoaded = document.getElementById(SCRIPT_ID);\n if (isScriptLoaded) setIsScriptLoading(false);\n else loadScript();\n }, []);\n\n return (\n <div\n data-testid=\"embed-product\"\n className={classNames(\n \"neeto-molecules-embed flex w-full flex-grow flex-col md:flex-row\",\n className\n )}\n >\n <div className=\"neeto-molecules-embed__left-sidebar\">\n {goBackLink && (\n <Button\n className=\"mb-4 px-0\"\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=\"icon\"\n to={goBackLink}\n />\n )}\n <Typography data-cy=\"embed-options-header-title\" style=\"h3\">\n {t(\"neetoMolecules.productEmbed.embedOptions.title\")}\n </Typography>\n <Typography\n className=\"mt-1\"\n data-cy=\"embed-options-header-description\"\n style=\"body3\"\n >\n {t(\"neetoMolecules.productEmbed.embedOptions.description\")}\n </Typography>\n <div className=\"mt-6 flex w-full flex-col gap-y-6 md:pb-20\">\n <Options {...{ options, selectedOption, setSelectedOption }} />\n <Customization\n {...{\n isQueryParamsEnabled,\n otherCustomizations,\n updateCustomization,\n }}\n customization={customizations[selectedOption]}\n option={selectedOption}\n />\n </div>\n </div>\n <div className=\"neeto-molecules-embed__preview neeto-ui-bg-white flex min-h-screen w-full min-w-0 flex-col gap-4 p-6 md:min-h-0 md:flex-grow\">\n <Header {...{ setTab, tab }} />\n <div className=\"flex flex-grow overflow-y-auto\">\n {tab === TAB_KEYS.PREVIEW ? (\n <Preview\n {...{\n customPreviewIframeUrl,\n id,\n isScriptLoading,\n selectedOption,\n }}\n customization={customizations[selectedOption]}\n />\n ) : (\n <Code {...{ code }} />\n )}\n </div>\n </div>\n </div>\n );\n};\n\nProductEmbed.propTypes = {\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 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 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 elementSelector: PropTypes.string,\n }),\n }),\n /**\n * To enable query parameters\n */\n isQueryParamsEnabled: PropTypes.bool,\n /**\n * To add other customization fields to all the embed options\n */\n otherCustomizations: PropTypes.func,\n};\n\nexport default ProductEmbed;\n"],"names":["Code","_ref","code","_jsx","className","children","Codeblock","TAB_KEYS","HTML","PREVIEW","TABS","key","label","t","icon","Eye","EMBED_OPTIONS","INLINE","FLOATING_POPUP","ELEMENT_POPUP","DEFAULT_CUSTOMIZATION","_defineProperty","width","height","elementSelector","showIcon","btnText","btnColor","btnTextColor","btnPosition","SCRIPT_ID","FLOATING_BUTTON_POSITIONS","value","INITIAL_QUERY_PARAM","name","camelCasedAppName","globalProps","appName","replace","embedBaseScript","embedScriptLink","concat","embedEnv","railsEnv","embedQueryParam","queryParams","parseExtraArgs","extraArgs","toPairs","map","_ref2","_slicedToArray","inlineEmbedCode","_ref3","customization","id","_customization$width","_customization$height","organization","subdomain","floatingPopupEmbedCode","_ref4","elementPopupEmbedCode","_ref5","embedCode","_ref6","type","_ref6$extraArgs","buildDefaultCustomization","defaultCustomizations","mergeDeepLeft","buildQueryParamsFromInputFields","inputFields","filteredInputFields","filter","_ref7","reduce","_ref8","isEmpty","queryParamJsonString","JSON","stringify","DynamicQueryParams","updateCustomization","_useTranslation","useTranslation","_useState","useState","_useState2","setQueryParams","handleAddQueryParam","_toConsumableArray","handleRemoveQueryParam","index","newQueryParams","_","i","handleInputChange","field","param","_objectSpread","useEffect","_jsxs","Label","Input","placeholder","onChange","e","target","Button","Delete","style","onClick","Plus","iconPosition","ElementPopup","isQueryParamsEnabled","otherCustomizations","undefined","Typography","Callout","error","FloatingPopup","Checkbox","checked","Select","options","getOptionValue","option","ColorPicker","color","hex","Inline","attribute","max","min","prefix","suffix","Customization","Component","Header","tab","setTab","Tab","noUnderline","_createElement","Item","active","Options","selectedOption","setSelectedOption","Radio","stacked","containerClassName","Object","entries","_ref3$","description","htmlFor","event","BrowserIcon","fill","viewBox","xmlns","d","stroke","iframeURL","element","document","getElementById","_window$globalProps$a","window","embed","btn","backgroundColor","classNames","src","Preview","isScriptLoading","_ref$customPreviewIfr","customPreviewIframeUrl","preview","location","origin","Spinner","ProductEmbed","_ref$className","_ref$customEmbedScrip","customEmbedScriptPath","_ref$goBackLink","goBackLink","_ref$isQueryParamsEna","_ref$options","_ref$extraArgs","_ref$otherCustomizati","noop","setIsScriptLoading","_useState3","_useState4","_useState5","_useState6","_useState7","_useState8","customizations","setCustomizations","protocol","host","loadScript","script","createElement","head","appendChild","props","prevState","mergeLeft","isScriptLoaded","LeftArrow","size","to"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "3.7.16",
3
+ "version": "3.7.17",
4
4
  "description": "A package of reusable molecular components for neeto products.",
5
5
  "repository": "git@github.com:bigbinary/neeto-molecules.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",