@bigbinary/neeto-molecules 3.5.0 → 3.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ProductEmbed.js +10 -7
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/SessionEnvironment.js +2 -2
- package/dist/SessionEnvironment.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +10 -7
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/SessionEnvironment.js +2 -2
- package/dist/cjs/SessionEnvironment.js.map +1 -1
- package/package.json +1 -1
package/dist/ProductEmbed.js
CHANGED
|
@@ -91,8 +91,9 @@ var INITIAL_QUERY_PARAM = {
|
|
|
91
91
|
value: ""
|
|
92
92
|
};
|
|
93
93
|
|
|
94
|
+
var camelCasedAppName = globalProps.appName.replace(/^neeto/i, "neeto");
|
|
94
95
|
var embedBaseScript = function embedBaseScript(embedScriptLink) {
|
|
95
|
-
return "<script>window.".concat(
|
|
96
|
+
return "<script>window.".concat(camelCasedAppName, " = window.").concat(camelCasedAppName, " || { embed: function(){(").concat(camelCasedAppName, ".q=").concat(camelCasedAppName, ".q||[]).push(arguments)} };</script>\n <script async\n src=\"").concat(embedScriptLink, "\">\n </script>");
|
|
96
97
|
};
|
|
97
98
|
var embedEnv = function embedEnv() {
|
|
98
99
|
return globalProps.railsEnv !== "production" ? "\n\t env: \"".concat(globalProps.railsEnv, "\",") : "";
|
|
@@ -119,7 +120,7 @@ var inlineEmbedCode = function inlineEmbedCode(_ref3) {
|
|
|
119
120
|
_customization$height = customization.height,
|
|
120
121
|
height = _customization$height === void 0 ? 100 : _customization$height,
|
|
121
122
|
queryParams = customization.queryParams;
|
|
122
|
-
return "\n <!-- ".concat(globalProps.appName, " inline embed code begins -->\n <div style=\"min-width: 90vw; height: 90vh;\" id=\"").concat(elementSelector, "\">\n <!-- ").concat(globalProps.appName, " widget will be added here -->\n </div>\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(
|
|
123
|
+
return "\n <!-- ".concat(globalProps.appName, " inline embed code begins -->\n <div style=\"min-width: 90vw; height: 90vh;\" id=\"").concat(elementSelector, "\">\n <!-- ").concat(globalProps.appName, " widget will be added here -->\n </div>\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(camelCasedAppName, ".embed({\n type: \"inline\",\n id: \"").concat(id, "\",\n organization: \"").concat(globalProps.organization.subdomain, "\",\n elementSelector: \"#").concat(elementSelector, "\",\n styles: { height: \"").concat(height, "%\", width: \"").concat(width, "%\"},").concat(embedQueryParam(queryParams)).concat(embedEnv()).concat(parseExtraArgs(extraArgs), "\n });\n </script>\n <!-- ").concat(globalProps.appName, " inline embed code ends -->");
|
|
123
124
|
};
|
|
124
125
|
var floatingPopupEmbedCode = function floatingPopupEmbedCode(_ref4) {
|
|
125
126
|
var customization = _ref4.customization,
|
|
@@ -133,7 +134,7 @@ var floatingPopupEmbedCode = function floatingPopupEmbedCode(_ref4) {
|
|
|
133
134
|
btnColor = customization.btnColor,
|
|
134
135
|
icon = customization.icon,
|
|
135
136
|
queryParams = customization.queryParams;
|
|
136
|
-
return "\n <!-- ".concat(globalProps.appName, " floating-popup embed code begins -->\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(
|
|
137
|
+
return "\n <!-- ".concat(globalProps.appName, " floating-popup embed code begins -->\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(camelCasedAppName, ".embed({\n type: \"floatingPopup\",\n id: \"").concat(id, "\",\n organization: \"").concat(globalProps.organization.subdomain, "\",\n styles: {\n btnTextColor: \"").concat(btnTextColor, "\",\n btnPosition: \"").concat(btnPosition, "\",\n btnColor: \"").concat(btnColor, "\",\n btnText: \"").concat(btnText, "\", ").concat(icon ? "\n\t\tshowIcon: ".concat(showIcon, ",") : "", "\n },").concat(embedQueryParam(queryParams)).concat(embedEnv()).concat(parseExtraArgs(extraArgs), "\n });\n </script>\n <!-- ").concat(globalProps.appName, " floating-popup embed code ends -->");
|
|
137
138
|
};
|
|
138
139
|
var elementPopupEmbedCode = function elementPopupEmbedCode(_ref5) {
|
|
139
140
|
var customization = _ref5.customization,
|
|
@@ -142,7 +143,7 @@ var elementPopupEmbedCode = function elementPopupEmbedCode(_ref5) {
|
|
|
142
143
|
extraArgs = _ref5.extraArgs;
|
|
143
144
|
var elementSelector = customization.elementSelector,
|
|
144
145
|
queryParams = customization.queryParams;
|
|
145
|
-
return "\n <!-- ".concat(globalProps.appName, " element-click embed code begins -->\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(
|
|
146
|
+
return "\n <!-- ".concat(globalProps.appName, " element-click embed code begins -->\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(camelCasedAppName, ".embed({\n type: \"elementClick\",\n id: \"").concat(id, "\",\n organization: \"").concat(globalProps.organization.subdomain, "\",\n elementSelector: \"#").concat(elementSelector, "\",").concat(embedQueryParam(queryParams)).concat(embedEnv()).concat(parseExtraArgs(extraArgs), "\n });\n </script>\n <!-- ").concat(globalProps.appName, " element-click embed code ends -->");
|
|
146
147
|
};
|
|
147
148
|
var embedCode = function embedCode(_ref6) {
|
|
148
149
|
var type = _ref6.type,
|
|
@@ -610,9 +611,11 @@ var ElementPopup = function ElementPopup(_ref) {
|
|
|
610
611
|
t = _useTranslation.t;
|
|
611
612
|
var elementSelector = customization.elementSelector;
|
|
612
613
|
useEffect(function () {
|
|
613
|
-
var _window$globalProps$a;
|
|
614
614
|
var element = document.getElementById(elementSelector);
|
|
615
|
-
if (element)
|
|
615
|
+
if (element) {
|
|
616
|
+
var _window$globalProps$a;
|
|
617
|
+
(_window$globalProps$a = window[globalProps.appName.replace(/^neeto/i, "neeto")]) === null || _window$globalProps$a === void 0 ? void 0 : _window$globalProps$a.embed(element, iframeURL);
|
|
618
|
+
}
|
|
616
619
|
}, []);
|
|
617
620
|
return /*#__PURE__*/jsx("div", {
|
|
618
621
|
className: "relative flex h-full w-full items-center justify-center p-6",
|
|
@@ -637,7 +640,7 @@ var FloatingPopup = function FloatingPopup(_ref) {
|
|
|
637
640
|
useEffect(function () {
|
|
638
641
|
var _window$globalProps$a;
|
|
639
642
|
var btn = document.getElementById("embedBtn");
|
|
640
|
-
(_window$globalProps$a = window[globalProps.appName]) === null || _window$globalProps$a === void 0 ? void 0 : _window$globalProps$a.embed(btn, iframeURL);
|
|
643
|
+
(_window$globalProps$a = window[globalProps.appName.replace(/^neeto/i, "neeto")]) === null || _window$globalProps$a === void 0 ? void 0 : _window$globalProps$a.embed(btn, iframeURL);
|
|
641
644
|
}, []);
|
|
642
645
|
useEffect(function () {
|
|
643
646
|
var btn = document.getElementById("embedBtn");
|
package/dist/ProductEmbed.js.map
CHANGED
|
@@ -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 embedBaseScript = embedScriptLink =>\n `<script>window.${globalProps.appName} = window.${globalProps.appName} || { embed: function(){(${globalProps.appName}.q=${globalProps.appName}.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=\"min-width: 90vw; height: 90vh;\" id=\"${elementSelector}\">\n <!-- ${globalProps.appName} widget will be added here -->\n </div>\n ${embedBaseScript(embedScriptLink)}\n <script>\n ${globalProps.appName}.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 ${globalProps.appName}.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 ${globalProps.appName}.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) window[globalProps.appName]?.embed(element, iframeURL);\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]?.embed(btn, iframeURL);\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","embedBaseScript","embedScriptLink","concat","globalProps","appName","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","replace","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","_window$globalProps$a","element","document","getElementById","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=\"min-width: 90vw; height: 90vh;\" 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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"}
|
|
@@ -94,9 +94,9 @@ var getIcon = function getIcon(_ref2) {
|
|
|
94
94
|
name = _ref2.name,
|
|
95
95
|
value = _ref2.value;
|
|
96
96
|
var Icon = name === "browser" || name === "os" ? ICONS_MAP[value === null || value === void 0 ? void 0 : value.toLowerCase().replace(" ", "_")] : ICONS_MAP[name];
|
|
97
|
-
return /*#__PURE__*/jsx(Icon, {
|
|
97
|
+
return isPresent(Icon) ? /*#__PURE__*/jsx(Icon, {
|
|
98
98
|
size: iconSize
|
|
99
|
-
});
|
|
99
|
+
}) : null;
|
|
100
100
|
};
|
|
101
101
|
|
|
102
102
|
var Item = function Item(_ref) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionEnvironment.js","sources":["../src/components/SessionEnvironment/constants.js","../src/components/SessionEnvironment/utils.jsx","../src/components/SessionEnvironment/Item.jsx","../src/components/SessionEnvironment/DetailsBlock.jsx","../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\n};\n","import { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return <Icon size={iconSize} />;\n};\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input, Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getIcon, getInputType } from \"./utils\";\n\nconst Item = ({ handleCancel, handleSubmit, iconSize, item, showIcons }) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const containerRef = useHotkeys(ESCAPE, () => handleCancel(name), {\n mode: \"scoped\",\n });\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value)) return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const inputRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n return (\n <div\n ref={containerRef}\n className={classNames(\n \"mb-2 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n { \"flex-wrap\": name !== PHONE_NUMBER }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field whitespace-nowrap\"\n style=\"h5\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\n className: `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n }}\n />\n ) : (\n <Typography\n className={`overflow-hidden truncate whitespace-normal break-all ${extraClasses}`}\n data-testid={`metadata-value-${name}`}\n style=\"body2\"\n weight=\"normal\"\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\n />\n )}\n </>\n ) : (\n <div className=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n data-testid={`metadata-input-${name}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={inputRef}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"neeto-molecules-session-environment-editable-field__actions absolute right-0 top-0 flex h-8 items-center pr-1\">\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${name}`}\n icon={Check}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\n\nconst DetailsBlock = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\">\n {title && (\n <div className=\"mb-2 flex\">\n <Typography\n className=\"mr-2\"\n style=\"h4\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details.map((detail, index) => (\n <Item\n {...{ handleCancel, handleSubmit, iconSize, showIcons }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\n\nconst SessionEnvironment = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"m-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"m-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n icon={showViewMore ? Up : Down}\n style=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","_jsx","size","Item","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_useTranslation","useTranslation","t","containerRef","useHotkeys","mode","icon","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","error","label","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","handleMetadataSubmit","fieldId","handleMetadataCancel","inputRef","InputComponent","PhoneNumberInput","Input","handleChange","event","target","useEffect","_jsxs","ref","className","classNames","children","isPresent","Tooltip","content","concat","Typography","style","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","onClick","CopyToClipboardButton","autoFocus","placeholder","what","type","onChange","Button","Close","tooltipProps","position","Check","DetailsBlock","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","map","detail","index","_createElement","key","memo","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SessionEnvironment.js","sources":["../src/components/SessionEnvironment/constants.js","../src/components/SessionEnvironment/utils.jsx","../src/components/SessionEnvironment/Item.jsx","../src/components/SessionEnvironment/DetailsBlock.jsx","../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\n};\n","import { isPresent } from \"neetocist\";\n\nimport { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return isPresent(Icon) ? <Icon size={iconSize} /> : null;\n};\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input, Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getIcon, getInputType } from \"./utils\";\n\nconst Item = ({ handleCancel, handleSubmit, iconSize, item, showIcons }) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const containerRef = useHotkeys(ESCAPE, () => handleCancel(name), {\n mode: \"scoped\",\n });\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value)) return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const inputRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n return (\n <div\n ref={containerRef}\n className={classNames(\n \"mb-2 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n { \"flex-wrap\": name !== PHONE_NUMBER }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field whitespace-nowrap\"\n style=\"h5\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\n className: `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n }}\n />\n ) : (\n <Typography\n className={`overflow-hidden truncate whitespace-normal break-all ${extraClasses}`}\n data-testid={`metadata-value-${name}`}\n style=\"body2\"\n weight=\"normal\"\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\n />\n )}\n </>\n ) : (\n <div className=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n data-testid={`metadata-input-${name}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={inputRef}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"neeto-molecules-session-environment-editable-field__actions absolute right-0 top-0 flex h-8 items-center pr-1\">\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${name}`}\n icon={Check}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\n\nconst DetailsBlock = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\">\n {title && (\n <div className=\"mb-2 flex\">\n <Typography\n className=\"mr-2\"\n style=\"h4\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details.map((detail, index) => (\n <Item\n {...{ handleCancel, handleSubmit, iconSize, showIcons }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\n\nconst SessionEnvironment = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"m-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"m-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n icon={showViewMore ? Up : Down}\n style=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","isPresent","_jsx","size","Item","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_useTranslation","useTranslation","t","containerRef","useHotkeys","mode","icon","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","error","label","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","handleMetadataSubmit","fieldId","handleMetadataCancel","inputRef","InputComponent","PhoneNumberInput","Input","handleChange","event","target","useEffect","_jsxs","ref","className","classNames","children","Tooltip","content","concat","Typography","style","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","onClick","CopyToClipboardButton","autoFocus","placeholder","what","type","onChange","Button","Close","tooltipProps","position","Check","DetailsBlock","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","map","detail","index","_createElement","key","memo","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":"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"}
|
package/dist/cjs/ProductEmbed.js
CHANGED
|
@@ -116,8 +116,9 @@ var INITIAL_QUERY_PARAM = {
|
|
|
116
116
|
value: ""
|
|
117
117
|
};
|
|
118
118
|
|
|
119
|
+
var camelCasedAppName = globalProps.appName.replace(/^neeto/i, "neeto");
|
|
119
120
|
var embedBaseScript = function embedBaseScript(embedScriptLink) {
|
|
120
|
-
return "<script>window.".concat(
|
|
121
|
+
return "<script>window.".concat(camelCasedAppName, " = window.").concat(camelCasedAppName, " || { embed: function(){(").concat(camelCasedAppName, ".q=").concat(camelCasedAppName, ".q||[]).push(arguments)} };</script>\n <script async\n src=\"").concat(embedScriptLink, "\">\n </script>");
|
|
121
122
|
};
|
|
122
123
|
var embedEnv = function embedEnv() {
|
|
123
124
|
return globalProps.railsEnv !== "production" ? "\n\t env: \"".concat(globalProps.railsEnv, "\",") : "";
|
|
@@ -144,7 +145,7 @@ var inlineEmbedCode = function inlineEmbedCode(_ref3) {
|
|
|
144
145
|
_customization$height = customization.height,
|
|
145
146
|
height = _customization$height === void 0 ? 100 : _customization$height,
|
|
146
147
|
queryParams = customization.queryParams;
|
|
147
|
-
return "\n <!-- ".concat(globalProps.appName, " inline embed code begins -->\n <div style=\"min-width: 90vw; height: 90vh;\" id=\"").concat(elementSelector, "\">\n <!-- ").concat(globalProps.appName, " widget will be added here -->\n </div>\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(
|
|
148
|
+
return "\n <!-- ".concat(globalProps.appName, " inline embed code begins -->\n <div style=\"min-width: 90vw; height: 90vh;\" id=\"").concat(elementSelector, "\">\n <!-- ").concat(globalProps.appName, " widget will be added here -->\n </div>\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(camelCasedAppName, ".embed({\n type: \"inline\",\n id: \"").concat(id, "\",\n organization: \"").concat(globalProps.organization.subdomain, "\",\n elementSelector: \"#").concat(elementSelector, "\",\n styles: { height: \"").concat(height, "%\", width: \"").concat(width, "%\"},").concat(embedQueryParam(queryParams)).concat(embedEnv()).concat(parseExtraArgs(extraArgs), "\n });\n </script>\n <!-- ").concat(globalProps.appName, " inline embed code ends -->");
|
|
148
149
|
};
|
|
149
150
|
var floatingPopupEmbedCode = function floatingPopupEmbedCode(_ref4) {
|
|
150
151
|
var customization = _ref4.customization,
|
|
@@ -158,7 +159,7 @@ var floatingPopupEmbedCode = function floatingPopupEmbedCode(_ref4) {
|
|
|
158
159
|
btnColor = customization.btnColor,
|
|
159
160
|
icon = customization.icon,
|
|
160
161
|
queryParams = customization.queryParams;
|
|
161
|
-
return "\n <!-- ".concat(globalProps.appName, " floating-popup embed code begins -->\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(
|
|
162
|
+
return "\n <!-- ".concat(globalProps.appName, " floating-popup embed code begins -->\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(camelCasedAppName, ".embed({\n type: \"floatingPopup\",\n id: \"").concat(id, "\",\n organization: \"").concat(globalProps.organization.subdomain, "\",\n styles: {\n btnTextColor: \"").concat(btnTextColor, "\",\n btnPosition: \"").concat(btnPosition, "\",\n btnColor: \"").concat(btnColor, "\",\n btnText: \"").concat(btnText, "\", ").concat(icon ? "\n\t\tshowIcon: ".concat(showIcon, ",") : "", "\n },").concat(embedQueryParam(queryParams)).concat(embedEnv()).concat(parseExtraArgs(extraArgs), "\n });\n </script>\n <!-- ").concat(globalProps.appName, " floating-popup embed code ends -->");
|
|
162
163
|
};
|
|
163
164
|
var elementPopupEmbedCode = function elementPopupEmbedCode(_ref5) {
|
|
164
165
|
var customization = _ref5.customization,
|
|
@@ -167,7 +168,7 @@ var elementPopupEmbedCode = function elementPopupEmbedCode(_ref5) {
|
|
|
167
168
|
extraArgs = _ref5.extraArgs;
|
|
168
169
|
var elementSelector = customization.elementSelector,
|
|
169
170
|
queryParams = customization.queryParams;
|
|
170
|
-
return "\n <!-- ".concat(globalProps.appName, " element-click embed code begins -->\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(
|
|
171
|
+
return "\n <!-- ".concat(globalProps.appName, " element-click embed code begins -->\n ").concat(embedBaseScript(embedScriptLink), "\n <script>\n ").concat(camelCasedAppName, ".embed({\n type: \"elementClick\",\n id: \"").concat(id, "\",\n organization: \"").concat(globalProps.organization.subdomain, "\",\n elementSelector: \"#").concat(elementSelector, "\",").concat(embedQueryParam(queryParams)).concat(embedEnv()).concat(parseExtraArgs(extraArgs), "\n });\n </script>\n <!-- ").concat(globalProps.appName, " element-click embed code ends -->");
|
|
171
172
|
};
|
|
172
173
|
var embedCode = function embedCode(_ref6) {
|
|
173
174
|
var type = _ref6.type,
|
|
@@ -635,9 +636,11 @@ var ElementPopup = function ElementPopup(_ref) {
|
|
|
635
636
|
t = _useTranslation.t;
|
|
636
637
|
var elementSelector = customization.elementSelector;
|
|
637
638
|
React.useEffect(function () {
|
|
638
|
-
var _window$globalProps$a;
|
|
639
639
|
var element = document.getElementById(elementSelector);
|
|
640
|
-
if (element)
|
|
640
|
+
if (element) {
|
|
641
|
+
var _window$globalProps$a;
|
|
642
|
+
(_window$globalProps$a = window[globalProps.appName.replace(/^neeto/i, "neeto")]) === null || _window$globalProps$a === void 0 ? void 0 : _window$globalProps$a.embed(element, iframeURL);
|
|
643
|
+
}
|
|
641
644
|
}, []);
|
|
642
645
|
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
643
646
|
className: "relative flex h-full w-full items-center justify-center p-6",
|
|
@@ -662,7 +665,7 @@ var FloatingPopup = function FloatingPopup(_ref) {
|
|
|
662
665
|
React.useEffect(function () {
|
|
663
666
|
var _window$globalProps$a;
|
|
664
667
|
var btn = document.getElementById("embedBtn");
|
|
665
|
-
(_window$globalProps$a = window[globalProps.appName]) === null || _window$globalProps$a === void 0 ? void 0 : _window$globalProps$a.embed(btn, iframeURL);
|
|
668
|
+
(_window$globalProps$a = window[globalProps.appName.replace(/^neeto/i, "neeto")]) === null || _window$globalProps$a === void 0 ? void 0 : _window$globalProps$a.embed(btn, iframeURL);
|
|
666
669
|
}, []);
|
|
667
670
|
React.useEffect(function () {
|
|
668
671
|
var btn = document.getElementById("embedBtn");
|
|
@@ -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 embedBaseScript = embedScriptLink =>\n `<script>window.${globalProps.appName} = window.${globalProps.appName} || { embed: function(){(${globalProps.appName}.q=${globalProps.appName}.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=\"min-width: 90vw; height: 90vh;\" id=\"${elementSelector}\">\n <!-- ${globalProps.appName} widget will be added here -->\n </div>\n ${embedBaseScript(embedScriptLink)}\n <script>\n ${globalProps.appName}.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 ${globalProps.appName}.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 ${globalProps.appName}.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) window[globalProps.appName]?.embed(element, iframeURL);\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]?.embed(btn, iframeURL);\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","embedBaseScript","embedScriptLink","concat","globalProps","appName","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","replace","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","_window$globalProps$a","element","document","getElementById","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=\"min-width: 90vw; height: 90vh;\" 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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"}
|
|
@@ -126,9 +126,9 @@ var getIcon = function getIcon(_ref2) {
|
|
|
126
126
|
name = _ref2.name,
|
|
127
127
|
value = _ref2.value;
|
|
128
128
|
var Icon = name === "browser" || name === "os" ? ICONS_MAP[value === null || value === void 0 ? void 0 : value.toLowerCase().replace(" ", "_")] : ICONS_MAP[name];
|
|
129
|
-
return /*#__PURE__*/jsxRuntime.jsx(Icon, {
|
|
129
|
+
return neetoCist.isPresent(Icon) ? /*#__PURE__*/jsxRuntime.jsx(Icon, {
|
|
130
130
|
size: iconSize
|
|
131
|
-
});
|
|
131
|
+
}) : null;
|
|
132
132
|
};
|
|
133
133
|
|
|
134
134
|
var Item = function Item(_ref) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionEnvironment.js","sources":["../../src/components/SessionEnvironment/constants.js","../../src/components/SessionEnvironment/utils.jsx","../../src/components/SessionEnvironment/Item.jsx","../../src/components/SessionEnvironment/DetailsBlock.jsx","../../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\n};\n","import { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return <Icon size={iconSize} />;\n};\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input, Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getIcon, getInputType } from \"./utils\";\n\nconst Item = ({ handleCancel, handleSubmit, iconSize, item, showIcons }) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const containerRef = useHotkeys(ESCAPE, () => handleCancel(name), {\n mode: \"scoped\",\n });\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value)) return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const inputRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n return (\n <div\n ref={containerRef}\n className={classNames(\n \"mb-2 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n { \"flex-wrap\": name !== PHONE_NUMBER }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field whitespace-nowrap\"\n style=\"h5\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\n className: `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n }}\n />\n ) : (\n <Typography\n className={`overflow-hidden truncate whitespace-normal break-all ${extraClasses}`}\n data-testid={`metadata-value-${name}`}\n style=\"body2\"\n weight=\"normal\"\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\n />\n )}\n </>\n ) : (\n <div className=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n data-testid={`metadata-input-${name}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={inputRef}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"neeto-molecules-session-environment-editable-field__actions absolute right-0 top-0 flex h-8 items-center pr-1\">\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${name}`}\n icon={Check}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\n\nconst DetailsBlock = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\">\n {title && (\n <div className=\"mb-2 flex\">\n <Typography\n className=\"mr-2\"\n style=\"h4\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details.map((detail, index) => (\n <Item\n {...{ handleCancel, handleSubmit, iconSize, showIcons }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\n\nconst SessionEnvironment = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"m-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"m-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n icon={showViewMore ? Up : Down}\n style=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","_jsx","size","Item","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_useTranslation","useTranslation","t","containerRef","useHotkeys","mode","icon","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","error","label","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","handleMetadataSubmit","fieldId","handleMetadataCancel","inputRef","InputComponent","PhoneNumberInput","Input","handleChange","event","target","useEffect","_jsxs","ref","className","classNames","children","isPresent","Tooltip","content","concat","Typography","style","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","onClick","CopyToClipboardButton","autoFocus","placeholder","what","type","onChange","Button","Close","tooltipProps","position","Check","DetailsBlock","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","map","detail","index","_createElement","key","memo","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SessionEnvironment.js","sources":["../../src/components/SessionEnvironment/constants.js","../../src/components/SessionEnvironment/utils.jsx","../../src/components/SessionEnvironment/Item.jsx","../../src/components/SessionEnvironment/DetailsBlock.jsx","../../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\n};\n","import { isPresent } from \"neetocist\";\n\nimport { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return isPresent(Icon) ? <Icon size={iconSize} /> : null;\n};\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input, Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getIcon, getInputType } from \"./utils\";\n\nconst Item = ({ handleCancel, handleSubmit, iconSize, item, showIcons }) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const containerRef = useHotkeys(ESCAPE, () => handleCancel(name), {\n mode: \"scoped\",\n });\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value)) return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const inputRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n return (\n <div\n ref={containerRef}\n className={classNames(\n \"mb-2 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n { \"flex-wrap\": name !== PHONE_NUMBER }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field whitespace-nowrap\"\n style=\"h5\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\n className: `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n }}\n />\n ) : (\n <Typography\n className={`overflow-hidden truncate whitespace-normal break-all ${extraClasses}`}\n data-testid={`metadata-value-${name}`}\n style=\"body2\"\n weight=\"normal\"\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\n />\n )}\n </>\n ) : (\n <div className=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n data-testid={`metadata-input-${name}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={inputRef}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"neeto-molecules-session-environment-editable-field__actions absolute right-0 top-0 flex h-8 items-center pr-1\">\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${name}`}\n icon={Check}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\n\nconst DetailsBlock = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\">\n {title && (\n <div className=\"mb-2 flex\">\n <Typography\n className=\"mr-2\"\n style=\"h4\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details.map((detail, index) => (\n <Item\n {...{ handleCancel, handleSubmit, iconSize, showIcons }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\n\nconst SessionEnvironment = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"m-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"m-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n icon={showViewMore ? Up : Down}\n style=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","isPresent","_jsx","size","Item","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_useTranslation","useTranslation","t","containerRef","useHotkeys","mode","icon","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","error","label","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","handleMetadataSubmit","fieldId","handleMetadataCancel","inputRef","InputComponent","PhoneNumberInput","Input","handleChange","event","target","useEffect","_jsxs","ref","className","classNames","children","Tooltip","content","concat","Typography","style","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","onClick","CopyToClipboardButton","autoFocus","placeholder","what","type","onChange","Button","Close","tooltipProps","position","Check","DetailsBlock","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","map","detail","index","_createElement","key","memo","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "3.5.
|
|
3
|
+
"version": "3.5.2",
|
|
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>",
|