@bigbinary/neeto-molecules 1.6.9 → 1.7.0-beta.0

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.
@@ -1,7 +1,7 @@
1
1
  import React, { useEffect, useState } from 'react';
2
2
  import classNames from 'classnames';
3
3
  import { Code as Code$1, Eye, Info, LeftArrow } from '@bigbinary/neeto-icons';
4
- import { Typography, Checkbox, Input, Select, Label, ColorPicker, Tab, Radio, Button, Spinner } from '@bigbinary/neetoui';
4
+ import { Typography, Callout, Input, Checkbox, Select, Label, ColorPicker, Tab, Radio, Button, Spinner } from '@bigbinary/neetoui';
5
5
  import { mergeDeepLeft, mergeLeft } from 'ramda';
6
6
  import { useTranslation } from 'react-i18next';
7
7
  import Codeblock from '@bigbinary/neeto-molecules/Codeblock';
@@ -130,9 +130,10 @@ var TABS = [{
130
130
  }];
131
131
  var EMBED_OPTIONS = {
132
132
  INLINE: "inline",
133
- FLOATING_POPUP: "floatingPopup"
133
+ FLOATING_POPUP: "floatingPopup",
134
+ ELEMENT_POPUP: "elementPopup"
134
135
  };
135
- var DEFAULT_CUSTOMIZATION = _defineProperty(_defineProperty({}, EMBED_OPTIONS.INLINE, {
136
+ var DEFAULT_CUSTOMIZATION = _defineProperty(_defineProperty(_defineProperty({}, EMBED_OPTIONS.INLINE, {
136
137
  width: 100,
137
138
  height: 100,
138
139
  elementSelector: "inline-embed-container"
@@ -142,9 +143,39 @@ var DEFAULT_CUSTOMIZATION = _defineProperty(_defineProperty({}, EMBED_OPTIONS.IN
142
143
  btnColor: "#6f14ed",
143
144
  btnTextColor: "#fff",
144
145
  btnPosition: "bottomRight"
146
+ }), EMBED_OPTIONS.ELEMENT_POPUP, {
147
+ elementSelector: "open-popup-button"
145
148
  });
146
149
  var SCRIPT_ID = "embed-script";
147
150
 
151
+ var ElementPopup$1 = function ElementPopup(_ref) {
152
+ var customization = _ref.customization,
153
+ updateCustomization = _ref.updateCustomization;
154
+ var elementSelector = customization.elementSelector;
155
+ var _useTranslation = useTranslation(),
156
+ t = _useTranslation.t;
157
+ return /*#__PURE__*/React.createElement("div", {
158
+ className: "space-y-6"
159
+ }, /*#__PURE__*/React.createElement(Typography, {
160
+ "data-cy": "element-popup-header",
161
+ style: "h4"
162
+ }, t("neetoMolecules.productEmbed.customization.elementPopup.title")), /*#__PURE__*/React.createElement(Callout, {
163
+ "data-cy": "element-popup-description"
164
+ }, t("neetoMolecules.productEmbed.customization.elementPopup.description")), /*#__PURE__*/React.createElement(Input, {
165
+ className: "w-full",
166
+ "data-cy": "element-id-input-field",
167
+ "data-testid": "element-id-input-field",
168
+ value: elementSelector,
169
+ error: !elementSelector && t("neetoMolecules.productEmbed.customization.elementPopup.warning"),
170
+ label: t("neetoMolecules.productEmbed.customization.elementPopup.elementId"),
171
+ onChange: function onChange(e) {
172
+ return updateCustomization({
173
+ elementSelector: e.target.value
174
+ });
175
+ }
176
+ }));
177
+ };
178
+
148
179
  var FLOATING_BUTTON_POSITIONS = [{
149
180
  label: t$1("neetoMolecules.productEmbed.customization.position.bottomLeft"),
150
181
  value: "bottomLeft"
@@ -297,7 +328,7 @@ var Customization = function Customization(_ref) {
297
328
  var option = _ref.option,
298
329
  customization = _ref.customization,
299
330
  updateCustomization = _ref.updateCustomization;
300
- var type = _defineProperty(_defineProperty({}, EMBED_OPTIONS.INLINE, Inline$1), EMBED_OPTIONS.FLOATING_POPUP, FloatingPopup$1);
331
+ var type = _defineProperty(_defineProperty(_defineProperty({}, EMBED_OPTIONS.INLINE, Inline$1), EMBED_OPTIONS.FLOATING_POPUP, FloatingPopup$1), EMBED_OPTIONS.ELEMENT_POPUP, ElementPopup$1);
301
332
  var Component = type[option];
302
333
  return /*#__PURE__*/React.createElement(Component, {
303
334
  customization: customization,
@@ -416,6 +447,28 @@ var BrowserIcon = function BrowserIcon() {
416
447
  }));
417
448
  };
418
449
 
450
+ var ElementPopup = function ElementPopup(_ref) {
451
+ var iframeURL = _ref.iframeURL,
452
+ customization = _ref.customization;
453
+ var _useTranslation = useTranslation(),
454
+ t = _useTranslation.t;
455
+ var elementSelector = customization.elementSelector;
456
+ useEffect(function () {
457
+ var _window$globalProps$a;
458
+ var element = document.getElementById(elementSelector);
459
+ if (element) (_window$globalProps$a = window[globalProps.appName]) === null || _window$globalProps$a === void 0 ? void 0 : _window$globalProps$a.embed(element, iframeURL);
460
+ }, []);
461
+ return /*#__PURE__*/React.createElement("div", {
462
+ className: "relative flex h-full w-full items-center justify-center p-6"
463
+ }, /*#__PURE__*/React.createElement(Button, {
464
+ "data-cy": "preview-element-popup-button",
465
+ "data-testid": "preview-element-popup-button",
466
+ id: elementSelector,
467
+ size: "small",
468
+ label: t("neetoMolecules.productEmbed.customization.elementPopup.label")
469
+ }));
470
+ };
471
+
419
472
  var FloatingPopup = function FloatingPopup(_ref) {
420
473
  var iframeURL = _ref.iframeURL,
421
474
  customization = _ref.customization;
@@ -468,7 +521,7 @@ var Preview = function Preview(_ref) {
468
521
  selectedOption = _ref.selectedOption,
469
522
  id = _ref.id,
470
523
  customization = _ref.customization;
471
- var preview = _defineProperty(_defineProperty({}, EMBED_OPTIONS.INLINE, Inline), EMBED_OPTIONS.FLOATING_POPUP, FloatingPopup);
524
+ var preview = _defineProperty(_defineProperty(_defineProperty({}, EMBED_OPTIONS.INLINE, Inline), EMBED_OPTIONS.FLOATING_POPUP, FloatingPopup), EMBED_OPTIONS.ELEMENT_POPUP, ElementPopup);
472
525
  var iframeURL = "".concat(location.origin, "/").concat(id);
473
526
  var Component = preview[selectedOption];
474
527
  if (isScriptLoading) {
@@ -517,6 +570,10 @@ var floatingPopupEmbedCode = function floatingPopupEmbedCode(customization, id)
517
570
  icon = customization.icon;
518
571
  return "\n <!-- ".concat(globalProps.appName, " floating-popup embed code begins -->\n ").concat(embedBaseScript(), "\n <script>\n ").concat(globalProps.appName, ".embed({\n type: \"inline\",\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(embedEnv(), "\n });\n </script>\n <!-- ").concat(globalProps.appName, " floating-popup embed code ends -->");
519
572
  };
573
+ var elementPopupEmbedCode = function elementPopupEmbedCode(customization, id) {
574
+ var elementSelector = customization.elementSelector;
575
+ return "\n <!-- ".concat(globalProps.appName, " element-click embed code begins -->\n ").concat(embedBaseScript(), "\n <script>\n ").concat(globalProps.appName, ".embed({\n type: \"elementClick\",\n id: \"").concat(id, "\",\n organization: \"").concat(globalProps.organization.subdomain, "\",\n elementSelector: \"#").concat(elementSelector, "\",").concat(embedEnv(), "\n });\n </script>\n <!-- ").concat(globalProps.appName, " element-click embed code ends -->");
576
+ };
520
577
  var embedCode = function embedCode(_ref) {
521
578
  var type = _ref.type,
522
579
  customization = _ref.customization,
@@ -526,6 +583,8 @@ var embedCode = function embedCode(_ref) {
526
583
  return inlineEmbedCode(customization, id);
527
584
  case "floatingPopup":
528
585
  return floatingPopupEmbedCode(customization, id);
586
+ case "elementPopup":
587
+ return elementPopupEmbedCode(customization, id);
529
588
  default:
530
589
  return "";
531
590
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProductEmbed.js","sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/components/ProductEmbed/Code.jsx","../src/components/ProductEmbed/constants.js","../src/components/ProductEmbed/Customization/constants.js","../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/HelpLink.jsx","../src/components/ProductEmbed/Options.jsx","../src/components/ProductEmbed/Preview/BrowserIcon.jsx","../src/components/ProductEmbed/Preview/FloatingPopup.jsx","../src/components/ProductEmbed/Preview/Inline.jsx","../src/components/ProductEmbed/Preview/index.jsx","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../src/components/ProductEmbed/util.js","../src/components/ProductEmbed/index.jsx"],"sourcesContent":["export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import React from \"react\";\n\nimport Codeblock from \"neetomolecules/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};\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: \"#6f14ed\",\n btnTextColor: \"#fff\",\n btnPosition: \"bottomRight\",\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","import React 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\";\n\nconst FloatingPopup = ({ customization, updateCustomization }) => {\n const { t } = useTranslation();\n\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\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 </div>\n );\n};\n\nexport default FloatingPopup;\n","import React from \"react\";\n\nimport { Typography, Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Inline = ({ customization, updateCustomization }) => {\n const { height, width, elementSelector } = customization;\n\n const { t } = useTranslation();\n\n const handleInputChange = ({ target: { value } }, attribute) =>\n updateCustomization({ [attribute]: value });\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 </div>\n );\n};\n\nexport default Inline;\n","import React from \"react\";\n\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Customization = ({ option, customization, updateCustomization }) => {\n const type = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n };\n const Component = type[option];\n\n return <Component {...{ customization, updateCustomization }} />;\n};\n\nexport default Customization;\n","import React from \"react\";\n\nimport { 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 React from \"react\";\n\nimport classnames from \"classnames\";\nimport { Info } from \"neetoicons\";\n\nconst HelpLink = ({ url, size = 20, className = \"\" }) => (\n <a\n data-cy=\"info-help-link\"\n data-testid=\"info-help-link\"\n href={url}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n <Info\n {...{ size }}\n className={classnames(\n \"neeto-ui-text-primary-800 cursor-pointer\",\n className\n )}\n />\n </a>\n);\n\nexport default HelpLink;\n","import React from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Radio, Typography } from \"neetoui\";\n\nimport HelpLink from \"./HelpLink\";\n\nconst Options = ({ options, selectedOption, setSelectedOption }) => (\n <Radio\n stacked\n containerClassName=\"w-full flex flex-col gap-y-6\"\n name=\"options\"\n >\n {Object.entries(options).map(([key, { label, description, helpLink }]) => (\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 {isPresent(helpLink) && <HelpLink size={18} url={helpLink} />}\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","import React from \"react\";\n\nconst 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 React, { 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-16\", {\n \"left-0\": btnPosition === \"bottomLeft\",\n \"right-0\": btnPosition === \"bottomRight\",\n })}\n />\n </div>\n );\n};\n\nexport default FloatingPopup;\n","import React from \"react\";\n\nconst 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 React from \"react\";\n\nimport { Spinner } from \"neetoui\";\n\nimport BrowserIcon from \"./BrowserIcon\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Preview = ({ isScriptLoading, selectedOption, id, customization }) => {\n const preview = {\n [EMBED_OPTIONS.INLINE]: Inline,\n [EMBED_OPTIONS.FLOATING_POPUP]: FloatingPopup,\n };\n\n const iframeURL = `${location.origin}/${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","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import { mergeDeepLeft } from \"ramda\";\n\nimport { DEFAULT_CUSTOMIZATION } from \"./constants\";\n\nconst embedBaseScript = () => {\n const origin = window.location.origin;\n\n return `<script\n src=\"${origin}/javascript/embed.js\">\n </script>`;\n};\n\nconst embedEnv = () =>\n globalProps.railsEnv !== \"production\"\n ? `\\n\\t env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst inlineEmbedCode = (customization, id) => {\n const { elementSelector, width = 100, height = 100 } = 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()}\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}%\"},${embedEnv()}\n });\n </script>\n <!-- ${globalProps.appName} inline embed code ends -->`;\n};\n\nconst floatingPopupEmbedCode = (customization, id) => {\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n return `\n <!-- ${globalProps.appName} floating-popup embed code begins -->\n ${embedBaseScript()}\n <script>\n ${globalProps.appName}.embed({\n type: \"inline\",\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 },${embedEnv()}\n });\n </script>\n <!-- ${globalProps.appName} floating-popup embed code ends -->`;\n};\n\nexport const embedCode = ({ type, customization, id }) => {\n switch (type) {\n case \"inline\":\n return inlineEmbedCode(customization, id);\n case \"floatingPopup\":\n return floatingPopupEmbedCode(customization, id);\n default:\n return \"\";\n }\n};\n\nexport const buildDefaultCustomization = defaultCustomizations =>\n mergeDeepLeft(defaultCustomizations, DEFAULT_CUSTOMIZATION);\n","import React, { useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\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 goBackLink = \"\",\n id,\n options = {},\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 code = embedCode({\n id,\n type: selectedOption,\n customization: customizations[selectedOption],\n });\n\n const loadScript = () => {\n const script = document.createElement(\"script\");\n script.id = SCRIPT_ID;\n script.src = `${window.location.protocol}//${window.location.host}/javascript/embed.js`;\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) loadScript();\n }, []);\n\n return (\n <div\n className={classNames(\"flex w-full flex-grow\", className)}\n data-testid=\"embed-product\"\n >\n <div className=\"neeto-molecules-embed-left-sidebar border-r\">\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 pb-10\">\n <Options {...{ options, selectedOption, setSelectedOption }} />\n <Customization\n {...{ updateCustomization }}\n customization={customizations[selectedOption]}\n option={selectedOption}\n />\n </div>\n </div>\n <div className=\"neeto-ui-bg-white flex w-full min-w-0 flex-grow flex-col gap-4 p-6\">\n <Header {...{ setTab, tab }} />\n <div className=\"flex flex-grow overflow-y-auto\">\n {tab === TAB_KEYS.PREVIEW ? (\n <Preview\n {...{ id, isScriptLoading, selectedOption }}\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 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 }),\n};\n\nexport default ProductEmbed;\n"],"names":["toPrimitive","toPropertyKey","arrayLikeToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","Code","_ref","code","React","createElement","className","Codeblock","TAB_KEYS","HTML","PREVIEW","TABS","key","label","t","icon","Eye","EMBED_OPTIONS","INLINE","FLOATING_POPUP","DEFAULT_CUSTOMIZATION","_defineProperty","width","height","elementSelector","showIcon","btnText","btnColor","btnTextColor","btnPosition","SCRIPT_ID","FLOATING_BUTTON_POSITIONS","value","FloatingPopup","customization","updateCustomization","_useTranslation","useTranslation","Typography","style","Checkbox","checked","onChange","e","target","Input","Select","options","getOptionValue","option","Label","ColorPicker","color","hex","Inline","handleInputChange","_ref2","attribute","max","min","prefix","suffix","type","Customization","Component","Header","tab","setTab","Tab","noUnderline","map","Item","active","concat","onClick","HelpLink","url","_ref$size","size","_ref$className","href","rel","Info","classnames","Options","selectedOption","setSelectedOption","Radio","stacked","containerClassName","name","Object","entries","_ref3","_slicedToArray","_ref3$","description","helpLink","htmlFor","id","event","isPresent","BrowserIcon","fill","viewBox","xmlns","d","stroke","iframeURL","useEffect","_window$globalProps$a","btn","document","getElementById","window","globalProps","appName","embed","backgroundColor","Button","iconPosition","classNames","src","Preview","isScriptLoading","preview","location","origin","Spinner","embedBaseScript","embedEnv","railsEnv","inlineEmbedCode","_customization$width","_customization$height","organization","subdomain","floatingPopupEmbedCode","embedCode","buildDefaultCustomization","defaultCustomizations","mergeDeepLeft","ProductEmbed","_ref$goBackLink","goBackLink","_ref$options","_useState","useState","_useState2","setIsScriptLoading","_useState3","_useState4","_useState5","_useState6","_useState7","_useState8","customizations","setCustomizations","loadScript","script","protocol","host","head","appendChild","props","prevState","_objectSpread","mergeLeft","isScriptLoaded","LeftArrow","to"],"mappings":"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"}
1
+ {"version":3,"file":"ProductEmbed.js","sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/components/ProductEmbed/Code.jsx","../src/components/ProductEmbed/constants.js","../src/components/ProductEmbed/Customization/ElementPopup.jsx","../src/components/ProductEmbed/Customization/constants.js","../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/HelpLink.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","../node_modules/rollup-plugin-styles/dist/runtime/inject-css.js","../src/components/ProductEmbed/util.js","../src/components/ProductEmbed/index.jsx"],"sourcesContent":["export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import React from \"react\";\n\nimport Codeblock from \"neetomolecules/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: \"#6f14ed\",\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 React from \"react\";\n\nimport { Typography, Input, Callout } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ElementPopup = ({ customization, updateCustomization }) => {\n const { elementSelector } = customization;\n const { t } = useTranslation();\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 </div>\n );\n};\n\nexport default ElementPopup;\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","import React 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\";\n\nconst FloatingPopup = ({ customization, updateCustomization }) => {\n const { t } = useTranslation();\n\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\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 </div>\n );\n};\n\nexport default FloatingPopup;\n","import React from \"react\";\n\nimport { Typography, Input, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Inline = ({ customization, updateCustomization }) => {\n const { height, width, elementSelector } = customization;\n\n const { t } = useTranslation();\n\n const handleInputChange = ({ target: { value } }, attribute) =>\n updateCustomization({ [attribute]: value });\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 </div>\n );\n};\n\nexport default Inline;\n","import React from \"react\";\n\nimport ElementPopup from \"./ElementPopup\";\nimport FloatingPopup from \"./FloatingPopup\";\nimport Inline from \"./Inline\";\n\nimport { EMBED_OPTIONS } from \"../constants\";\n\nconst Customization = ({ option, customization, updateCustomization }) => {\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 <Component {...{ customization, updateCustomization }} />;\n};\n\nexport default Customization;\n","import React from \"react\";\n\nimport { 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 React from \"react\";\n\nimport classnames from \"classnames\";\nimport { Info } from \"neetoicons\";\n\nconst HelpLink = ({ url, size = 20, className = \"\" }) => (\n <a\n data-cy=\"info-help-link\"\n data-testid=\"info-help-link\"\n href={url}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n <Info\n {...{ size }}\n className={classnames(\n \"neeto-ui-text-primary-800 cursor-pointer\",\n className\n )}\n />\n </a>\n);\n\nexport default HelpLink;\n","import React from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Radio, Typography } from \"neetoui\";\n\nimport HelpLink from \"./HelpLink\";\n\nconst Options = ({ options, selectedOption, setSelectedOption }) => (\n <Radio\n stacked\n containerClassName=\"w-full flex flex-col gap-y-6\"\n name=\"options\"\n >\n {Object.entries(options).map(([key, { label, description, helpLink }]) => (\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 {isPresent(helpLink) && <HelpLink size={18} url={helpLink} />}\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","import React from \"react\";\n\nconst 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 React, { 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 size=\"small\"\n label={t(\n \"neetoMolecules.productEmbed.customization.elementPopup.label\"\n )}\n />\n </div>\n );\n};\n\nexport default ElementPopup;\n","import React, { 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-16\", {\n \"left-0\": btnPosition === \"bottomLeft\",\n \"right-0\": btnPosition === \"bottomRight\",\n })}\n />\n </div>\n );\n};\n\nexport default FloatingPopup;\n","import React from \"react\";\n\nconst 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 React from \"react\";\n\nimport { 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 = ({ isScriptLoading, selectedOption, id, customization }) => {\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 = `${location.origin}/${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","var e=[],t=[];function n(n,r){if(n&&\"undefined\"!=typeof document){var a,s=!0===r.prepend?\"prepend\":\"append\",d=!0===r.singleTag,i=\"string\"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName(\"head\")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c()}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n))}function c(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a=\"prepend\"===s?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}export{n as default};\n","import { mergeDeepLeft } from \"ramda\";\n\nimport { DEFAULT_CUSTOMIZATION } from \"./constants\";\n\nconst embedBaseScript = () => {\n const origin = window.location.origin;\n\n return `<script\n src=\"${origin}/javascript/embed.js\">\n </script>`;\n};\n\nconst embedEnv = () =>\n globalProps.railsEnv !== \"production\"\n ? `\\n\\t env: \"${globalProps.railsEnv}\",`\n : \"\";\n\nconst inlineEmbedCode = (customization, id) => {\n const { elementSelector, width = 100, height = 100 } = 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()}\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}%\"},${embedEnv()}\n });\n </script>\n <!-- ${globalProps.appName} inline embed code ends -->`;\n};\n\nconst floatingPopupEmbedCode = (customization, id) => {\n const { btnTextColor, showIcon, btnText, btnPosition, btnColor, icon } =\n customization;\n\n return `\n <!-- ${globalProps.appName} floating-popup embed code begins -->\n ${embedBaseScript()}\n <script>\n ${globalProps.appName}.embed({\n type: \"inline\",\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 },${embedEnv()}\n });\n </script>\n <!-- ${globalProps.appName} floating-popup embed code ends -->`;\n};\n\nconst elementPopupEmbedCode = (customization, id) => {\n const { elementSelector } = customization;\n\n return `\n <!-- ${globalProps.appName} element-click embed code begins -->\n ${embedBaseScript()}\n <script>\n ${globalProps.appName}.embed({\n type: \"elementClick\",\n id: \"${id}\",\n organization: \"${globalProps.organization.subdomain}\",\n elementSelector: \"#${elementSelector}\",${embedEnv()}\n });\n </script>\n <!-- ${globalProps.appName} element-click embed code ends -->`;\n};\n\nexport const embedCode = ({ type, customization, id }) => {\n switch (type) {\n case \"inline\":\n return inlineEmbedCode(customization, id);\n case \"floatingPopup\":\n return floatingPopupEmbedCode(customization, id);\n case \"elementPopup\":\n return elementPopupEmbedCode(customization, id);\n default:\n return \"\";\n }\n};\n\nexport const buildDefaultCustomization = defaultCustomizations =>\n mergeDeepLeft(defaultCustomizations, DEFAULT_CUSTOMIZATION);\n","import React, { useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\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 goBackLink = \"\",\n id,\n options = {},\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 code = embedCode({\n id,\n type: selectedOption,\n customization: customizations[selectedOption],\n });\n\n const loadScript = () => {\n const script = document.createElement(\"script\");\n script.id = SCRIPT_ID;\n script.src = `${window.location.protocol}//${window.location.host}/javascript/embed.js`;\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) loadScript();\n }, []);\n\n return (\n <div\n className={classNames(\"flex w-full flex-grow\", className)}\n data-testid=\"embed-product\"\n >\n <div className=\"neeto-molecules-embed-left-sidebar border-r\">\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 pb-10\">\n <Options {...{ options, selectedOption, setSelectedOption }} />\n <Customization\n {...{ updateCustomization }}\n customization={customizations[selectedOption]}\n option={selectedOption}\n />\n </div>\n </div>\n <div className=\"neeto-ui-bg-white flex w-full min-w-0 flex-grow flex-col gap-4 p-6\">\n <Header {...{ setTab, tab }} />\n <div className=\"flex flex-grow overflow-y-auto\">\n {tab === TAB_KEYS.PREVIEW ? (\n <Preview\n {...{ id, isScriptLoading, selectedOption }}\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 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\nexport default ProductEmbed;\n"],"names":["toPrimitive","toPropertyKey","arrayLikeToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","Code","_ref","code","React","createElement","className","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","ElementPopup","customization","updateCustomization","_useTranslation","useTranslation","Typography","style","Callout","Input","value","error","onChange","e","target","FLOATING_BUTTON_POSITIONS","FloatingPopup","Checkbox","checked","Select","options","getOptionValue","option","Label","ColorPicker","color","hex","Inline","handleInputChange","_ref2","attribute","max","min","prefix","suffix","type","Customization","Component","Header","tab","setTab","Tab","noUnderline","map","Item","active","concat","onClick","HelpLink","url","_ref$size","size","_ref$className","href","rel","Info","classnames","Options","selectedOption","setSelectedOption","Radio","stacked","containerClassName","name","Object","entries","_ref3","_slicedToArray","_ref3$","description","helpLink","htmlFor","id","event","isPresent","BrowserIcon","fill","viewBox","xmlns","d","stroke","iframeURL","useEffect","_window$globalProps$a","element","document","getElementById","window","globalProps","appName","embed","Button","btn","backgroundColor","iconPosition","classNames","src","Preview","isScriptLoading","preview","location","origin","Spinner","embedBaseScript","embedEnv","railsEnv","inlineEmbedCode","_customization$width","_customization$height","organization","subdomain","floatingPopupEmbedCode","elementPopupEmbedCode","embedCode","buildDefaultCustomization","defaultCustomizations","mergeDeepLeft","ProductEmbed","_ref$goBackLink","goBackLink","_ref$options","_useState","useState","_useState2","setIsScriptLoading","_useState3","_useState4","_useState5","_useState6","_useState7","_useState8","customizations","setCustomizations","loadScript","script","protocol","host","head","appendChild","props","prevState","_objectSpread","mergeLeft","isScriptLoaded","LeftArrow","to"],"mappings":"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"}
@@ -412,15 +412,13 @@ var MoreDropdown = function MoreDropdown(_ref) {
412
412
  }), menuBottomChildren));
413
413
  };
414
414
 
415
- var _excluded = ["element", "isActive", "handleSelectElement", "isSelectable", "index", "returnElementOnSelect", "errors", "actions"];
415
+ var _excluded = ["element", "isActive", "handleSelectElement", "isSelectable", "errors", "actions"];
416
416
  var SelectedElement = function SelectedElement(_ref) {
417
417
  var element = _ref.element,
418
418
  isActive = _ref.isActive,
419
419
  handleSelectElement = _ref.handleSelectElement,
420
420
  _ref$isSelectable = _ref.isSelectable,
421
421
  isSelectable = _ref$isSelectable === void 0 ? true : _ref$isSelectable,
422
- index = _ref.index,
423
- returnElementOnSelect = _ref.returnElementOnSelect,
424
422
  _ref$errors = _ref.errors,
425
423
  errors = _ref$errors === void 0 ? [] : _ref$errors,
426
424
  _ref$actions = _ref.actions,
@@ -429,7 +427,7 @@ var SelectedElement = function SelectedElement(_ref) {
429
427
  var Icon = element.icon;
430
428
  var rootElementRef = React.useRef();
431
429
  var onClick = function onClick() {
432
- return returnElementOnSelect ? handleSelectElement(element) : handleSelectElement(index);
430
+ return handleSelectElement(element);
433
431
  };
434
432
  var shouldShowDropdown = neetoCist.isNotEmpty(actions);
435
433
  var menuItems = typeof actions === "function" ? actions(element) : actions.map(function (action) {
@@ -529,18 +527,16 @@ var SelectedElementsList = function SelectedElementsList(_ref) {
529
527
  handleSelectElement = _ref.handleSelectElement,
530
528
  isDragDisabled = _ref.isDragDisabled,
531
529
  isElementVisible = _ref.isElementVisible,
532
- selectedElementIndex = _ref.selectedElementIndex,
530
+ selectedElementId = _ref.selectedElementId,
533
531
  selectedElements = _ref.selectedElements,
534
532
  setIsElementsListVisible = _ref.setIsElementsListVisible,
535
- fixedLastElementIndex = _ref.fixedLastElementIndex,
536
533
  fixedLastElement = _ref.fixedLastElement,
537
534
  fixedFirstElement = _ref.fixedFirstElement,
538
535
  selectedElementActions = _ref.selectedElementActions,
539
536
  addAllElements = _ref.addAllElements,
540
537
  isAddingAllElements = _ref.isAddingAllElements,
541
538
  showElementsFillButton = _ref.showElementsFillButton,
542
- isAddingNewElement = _ref.isAddingNewElement,
543
- returnElementOnSelect = _ref.returnElementOnSelect;
539
+ isAddingNewElement = _ref.isAddingNewElement;
544
540
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(TitleBar, {
545
541
  addAllElements: addAllElements,
546
542
  isAddingAllElements: isAddingAllElements,
@@ -551,14 +547,13 @@ var SelectedElementsList = function SelectedElementsList(_ref) {
551
547
  "data-testid": "selected-elements-container"
552
548
  }, neetoCist.isPresent(fixedFirstElement) && /*#__PURE__*/React__default["default"].createElement(SelectedElement$1, {
553
549
  handleSelectElement: handleSelectElement,
554
- returnElementOnSelect: returnElementOnSelect,
555
550
  isSelectable: true,
556
551
  actions: fixedFirstElement.actions,
557
552
  "data-cy": "welcome-element",
558
553
  "data-testid": "welcome-record",
559
554
  element: fixedFirstElement,
560
555
  index: 0,
561
- isActive: selectedElementIndex === 0
556
+ isActive: selectedElementId === fixedFirstElement.id
562
557
  }), /*#__PURE__*/React__default["default"].createElement(dnd.DragDropContext, {
563
558
  onDragEnd: handleDragEnd
564
559
  }, /*#__PURE__*/React__default["default"].createElement(dnd.Droppable, {
@@ -591,25 +586,21 @@ var SelectedElementsList = function SelectedElementsList(_ref) {
591
586
  }, draggableProps, dragHandleProps), /*#__PURE__*/React__default["default"].createElement(SelectedElement$1, {
592
587
  element: element,
593
588
  handleSelectElement: handleSelectElement,
594
- index: index,
595
- returnElementOnSelect: returnElementOnSelect,
596
589
  isSelectable: true,
597
590
  actions: selectedElementActions,
598
- isActive: index === selectedElementIndex,
591
+ isActive: selectedElementId === element.id,
599
592
  key: (_element$id3 = element.id) !== null && _element$id3 !== void 0 ? _element$id3 : index
600
593
  }));
601
594
  });
602
595
  }), placeholder);
603
596
  })), neetoCist.isPresent(fixedLastElement) && /*#__PURE__*/React__default["default"].createElement(SelectedElement$1, {
604
597
  handleSelectElement: handleSelectElement,
605
- returnElementOnSelect: returnElementOnSelect,
606
598
  isSelectable: true,
607
599
  actions: fixedLastElement.actions,
608
600
  "data-cy": "submit-button-element",
609
601
  "data-testid": "submit-button-record",
610
602
  element: fixedLastElement,
611
- index: fixedLastElementIndex,
612
- isActive: selectedElementIndex === fixedLastElementIndex
603
+ isActive: selectedElementId === fixedLastElement.id
613
604
  })));
614
605
  };
615
606
 
@@ -626,8 +617,7 @@ var ElementsPanel = function ElementsPanel(_ref) {
626
617
  _ref$isDragDisabled = _ref.isDragDisabled,
627
618
  isDragDisabled = _ref$isDragDisabled === void 0 ? true : _ref$isDragDisabled,
628
619
  handleSelectElement = _ref.handleSelectElement,
629
- selectedElementIndex = _ref.selectedElementIndex,
630
- fixedLastElementIndex = _ref.fixedLastElementIndex,
620
+ selectedElementId = _ref.selectedElementId,
631
621
  selectedElementActions = _ref.selectedElementActions,
632
622
  _ref$addAllElements = _ref.addAllElements,
633
623
  addAllElements = _ref$addAllElements === void 0 ? neetoCist.noop : _ref$addAllElements,
@@ -636,9 +626,7 @@ var ElementsPanel = function ElementsPanel(_ref) {
636
626
  _ref$showElementsFill = _ref.showElementsFillButton,
637
627
  showElementsFillButton = _ref$showElementsFill === void 0 ? false : _ref$showElementsFill,
638
628
  _ref$isAddingNewEleme = _ref.isAddingNewElement,
639
- isAddingNewElement = _ref$isAddingNewEleme === void 0 ? false : _ref$isAddingNewEleme,
640
- _ref$returnElementOnS = _ref.returnElementOnSelect,
641
- returnElementOnSelect = _ref$returnElementOnS === void 0 ? false : _ref$returnElementOnS;
629
+ isAddingNewElement = _ref$isAddingNewEleme === void 0 ? false : _ref$isAddingNewEleme;
642
630
  var _useState = React.useState(false),
643
631
  _useState2 = _slicedToArray(_useState, 2),
644
632
  isElementsListVisible = _useState2[0],
@@ -663,16 +651,14 @@ var ElementsPanel = function ElementsPanel(_ref) {
663
651
  addAllElements: addAllElements,
664
652
  fixedFirstElement: fixedFirstElement,
665
653
  fixedLastElement: fixedLastElement,
666
- fixedLastElementIndex: fixedLastElementIndex,
667
654
  handleDragEnd: handleDragEnd,
668
655
  handleSelectElement: handleSelectElement,
669
656
  isAddingAllElements: isAddingAllElements,
670
657
  isAddingNewElement: isAddingNewElement,
671
658
  isDragDisabled: isDragDisabled,
672
659
  isElementVisible: isElementVisible,
673
- returnElementOnSelect: returnElementOnSelect,
674
660
  selectedElementActions: selectedElementActions,
675
- selectedElementIndex: selectedElementIndex,
661
+ selectedElementId: selectedElementId,
676
662
  selectedElements: selectedElements,
677
663
  setIsElementsListVisible: setIsElementsListVisible,
678
664
  showElementsFillButton: showElementsFillButton