{"version":3,"file":"for-cardform-feedback-embed.js","sources":["webpack://@jotforminc/umd-bundler/../../cdns/for-cardform-feedback-embed/src/feedbackEmbedCSS.js","webpack://@jotforminc/umd-bundler/../../cdns/for-cardform-feedback-embed/src/utils.js","webpack://@jotforminc/umd-bundler/../../cdns/for-cardform-feedback-embed/src/index.js","webpack://@jotforminc/umd-bundler/../../../node_modules/.pnpm/@swc+helpers@0.5.12/node_modules/@swc/helpers/esm/_object_spread_props.js","webpack://@jotforminc/umd-bundler/../../../node_modules/.pnpm/@swc+helpers@0.5.12/node_modules/@swc/helpers/esm/_object_spread.js","webpack://@jotforminc/umd-bundler/../../../node_modules/.pnpm/@swc+helpers@0.5.12/node_modules/@swc/helpers/esm/_define_property.js"],"sourcesContent":["// This file is just hack week only.\n// We will move this to a real css file\n\n// please add your default values to this func, I will put necessary values from theme / form props. | berkay\nexport default function getPageCSS(buttonBackgroundColor = '#007FEF', buttonColor = '#FFFFFF', buttonSize = '48') {\n  /* eslint-disable max-len */\n\n  return `\n    .jfFeedbackButton {\n      background-color: ${buttonBackgroundColor};\n      color: ${buttonColor};\n      border-radius: ${buttonSize / 2}px;\n      padding: 0;\n      max-width: ${buttonSize}px;\n      height: ${buttonSize}px;\n    }\n\n    .jfFeedbackButton.u-textOnly { border-radius: 8px; }\n\n    .jfFeedbackButton:hover,\n    .jfFeedbackButton.u-textOnly,\n    .jfFeedbackButton.jFisActive {\n      max-width: ${buttonSize * 6.25}px;\n    }\n\n    .jfFeedbackButton:hover .jfFeedbackButton-text,\n    .jfFeedbackButton.u-textOnly .jfFeedbackButton-text,\n    .jfFeedbackButton.jFisActive .jfFeedbackButton-text {\n      color: ${buttonColor};\n    }\n\n    .jfFeedbackButton-icon {\n      width: ${buttonSize}px;\n      height: ${buttonSize}px;\n      line-height: ${buttonSize}px;\n    }\n\n    .jfFeedbackButton-icon.u-default {\n      opacity: 0;\n      display: inline-block;\n      background-image: url(\"data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 20'%3E%3Cg id='Icons'%3E%3Cg id='Group-2'%3E%3Cg id='Group'%3E%3Cpath id='Fill-1' d='M16.88,1V6.05h-.5a8,8,0,0,0-1-2.53A3.79,3.79,0,0,0,13.91,2.3,4.75,4.75,0,0,0,12.07,2h-1.4V16.54a6,6,0,0,0,.16,1.8,1.43,1.43,0,0,0,.62.63,2.51,2.51,0,0,0,1.27.27h.62v.51H3.51v-.51h.62A2.61,2.61,0,0,0,5.45,19,1.33,1.33,0,0,0,6,18.29a5.72,5.72,0,0,0,.15-1.74V2H4.81a3.94,3.94,0,0,0-2.76.8A5.31,5.31,0,0,0,.53,6.05H0V1Z' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3Cpath id='Fill-4' d='M24,2.06V6.8h3.08V8.17H24v8a6.14,6.14,0,0,0,.1,1.45,1.05,1.05,0,0,0,.37.53.82.82,0,0,0,.48.2q.9,0,1.71-1.37l.42.31a3.79,3.79,0,0,1-3.64,2.66,3.22,3.22,0,0,1-2.09-.69,3,3,0,0,1-1.09-1.53,13,13,0,0,1-.14-2.55v-7H18.43V7.69a17.85,17.85,0,0,0,3-2.59,15.75,15.75,0,0,0,2.14-3Z' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n      background-position: 50% 50%;\n      background-size: 27px;\n      background-repeat: no-repeat;\n    }\n\n    .jfFeedbackButton-icon.u-rate {\n      display: inline-block;\n      background-image: url(\"data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 25'%3E%3Cg id='Icons'%3E%3Cg id='Group-16'%3E%3Cpath id='Shape' d='M22.16,0H3.85A1.88,1.88,0,0,0,2.54.51,1.73,1.73,0,0,0,2,1.76V12.07a1.73,1.73,0,0,0,.54,1.25,1.88,1.88,0,0,0,1.31.51h7.08l1.75,1.88a.49.49,0,0,0,.68,0l1.75-1.88h7A1.8,1.8,0,0,0,24,12.07V1.76A1.8,1.8,0,0,0,22.16,0ZM12,10.52H5.55a.81.81,0,1,1,0-1.61H12a.81.81,0,1,1,0,1.61Zm6.28-2.81H5.55a.81.81,0,1,1,0-1.61H18.32a.81.81,0,1,1,0,1.61ZM21,4.1a.83.83,0,0,1-.84.8H5.55a.83.83,0,0,1-.84-.8h0a.83.83,0,0,1,.84-.8H20.21a.83.83,0,0,1,.84.8Z' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3Cg id='Group-12'%3E%3Cg id='Group-15'%3E%3Cpath id='Shape-2' data-name='Shape' d='M13.21,18.13l.86,1.69a.23.23,0,0,0,.18.12l1.93.27a.23.23,0,0,1,.19.15.22.22,0,0,1-.06.23l-1.39,1.3a.22.22,0,0,0-.06.2l.33,1.85a.22.22,0,0,1-.1.22.24.24,0,0,1-.24,0l-1.73-.87a.24.24,0,0,0-.22,0l-1.72.87a.24.24,0,0,1-.24,0,.22.22,0,0,1-.1-.22l.33-1.85a.22.22,0,0,0-.06-.2L9.7,20.59a.22.22,0,0,1-.06-.23.23.23,0,0,1,.19-.15l1.93-.27a.23.23,0,0,0,.18-.12l.86-1.69a.24.24,0,0,1,.42,0Z' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3Cpath id='Shape-Copy' d='M22.84,18.13l.86,1.69a.23.23,0,0,0,.18.12l1.93.27a.23.23,0,0,1,.19.15.22.22,0,0,1-.06.23l-1.39,1.3a.22.22,0,0,0-.06.2l.33,1.85a.22.22,0,0,1-.1.22.24.24,0,0,1-.24,0l-1.73-.87a.24.24,0,0,0-.22,0l-1.72.87a.24.24,0,0,1-.24,0,.22.22,0,0,1-.1-.22l.33-1.85a.22.22,0,0,0-.06-.2l-1.4-1.31a.22.22,0,0,1-.06-.23.23.23,0,0,1,.19-.15l1.93-.27a.23.23,0,0,0,.18-.12l.86-1.69a.24.24,0,0,1,.42,0Z' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3Cpath id='Shape-Copy-2' d='M3.58,18.13l.86,1.69a.23.23,0,0,0,.18.12l1.93.27a.23.23,0,0,1,.19.15.22.22,0,0,1-.06.23l-1.39,1.3a.22.22,0,0,0-.06.2l.33,1.85a.22.22,0,0,1-.1.22.24.24,0,0,1-.24,0l-1.73-.87a.24.24,0,0,0-.22,0l-1.72.87a.24.24,0,0,1-.24,0A.22.22,0,0,1,1.2,24l.33-1.85a.22.22,0,0,0-.06-.2L.07,20.59A.22.22,0,0,1,0,20.36a.23.23,0,0,1,.19-.15l1.93-.27a.23.23,0,0,0,.18-.12l.86-1.69a.24.24,0,0,1,.42,0Z' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n      background-position: 50% 50%;\n      background-size: 27px;\n      background-repeat: no-repeat;\n    }\n\n    .jfFeedbackButton-icon.u-envelope {\n      display: inline-block;\n      background-image: url(\"data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 16'%3E%3Cg id='_4.-Builder-FINAL' data-name='4.-Builder-FINAL'%3E%3Cg id='Builder-Big-Quick-View-FINAL-Copy'%3E%3Cg id='Group-9'%3E%3Cg id='Group-21'%3E%3Cg id='Page-1'%3E%3Cpath id='Fill-1' d='M.11,2a2.36,2.36,0,0,0-.1.7C0,13.53,0,12.84,0,13L8,6.55Z' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3Cpath id='Fill-3' d='M12.5,9.38c-1.15,0-1.69-.46-3.19-1.38L1,15.14A2.93,2.93,0,0,0,3.09,16H21.91A2.94,2.94,0,0,0,24,15.14L15.69,8c-1.5.92-2,1.38-3.19,1.38' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3Cpath id='Fill-5' d='M13.26,6.8,24,.57A3.16,3.16,0,0,0,22.18,0H2.82A3.16,3.16,0,0,0,1,.57L11.74,6.8a1.54,1.54,0,0,0,1.53,0' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3Cpath id='Fill-7' d='M24.88,2,17,6.55,25,13c0-.06.08-10.43-.1-11' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n      background-position: 50% 50%;\n      background-size: 50%;\n      background-repeat: no-repeat;\n    }\n\n    .jfFeedbackButton-icon.u-thumbsUp {\n      display: inline-block;\n      background-image: url(\"data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 22 21'%3E%3Cdefs%3E%3Cmask id='mask' x='0' y='6.69' width='4.17' height='13.56' maskUnits='userSpaceOnUse'%3E%3Cg id='mask-2'%3E%3Cpolygon id='path-1' points='0 20.25 0 6.69 4.17 6.69 4.17 20.25 0 20.25' style='fill:%23fff'/%3E%3C/g%3E%3C/mask%3E%3Cmask id='mask-2-2' x='5.56' y='0.33' width='15.74' height='18.56' maskUnits='userSpaceOnUse'%3E%3Cg id='mask-4'%3E%3Cpolygon id='path-3' points='5.56 0.34 21.3 0.34 21.3 18.89 5.56 18.89 5.56 0.34' style='fill:%23fff'/%3E%3C/g%3E%3C/mask%3E%3C/defs%3E%3Cg id='_4.-Builder-FINAL' data-name='4.-Builder-FINAL'%3E%3Cg id='Builder-Big-Quick-View-FINAL-Copy'%3E%3Cg id='Group-9'%3E%3Cg id='Group-22'%3E%3Cg id='Group-17'%3E%3Cg id='Page-1'%3E%3Cg id='Group-3'%3E%3Cg style='mask:url(%23mask)'%3E%3Cpath id='Fill-1' d='M3.48,6.69H.7a.69.69,0,0,0-.7.68v12.2a.69.69,0,0,0,.7.68H3.48a.69.69,0,0,0,.7-.68V7.37a.69.69,0,0,0-.7-.68' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3C/g%3E%3C/g%3E%3Cg id='Group-6'%3E%3Cg style='mask:url(%23mask-2-2)'%3E%3Cpath id='Fill-4' d='M14.21,6.69l.73-1.95c.51-1.35.18-3.4-1.22-4.13A2.46,2.46,0,0,0,12.11.39,1.16,1.16,0,0,0,11.4.9a2.75,2.75,0,0,0-.22,1A4.12,4.12,0,0,1,10,4.06c-1.08,1-4.43,4-4.43,4V18.89H17.16a2.05,2.05,0,0,0,1.82-3,2,2,0,0,0,.7-2.71,2,2,0,0,0,.7-2.71,2.05,2.05,0,0,0-.8-3.75c-.11,0-5.36,0-5.36,0' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n      background-position: 50% 50%;\n      background-size: 50%;\n      background-repeat: no-repeat;\n    }\n\n    .jfFeedbackButton-icon.u-questionMark {\n      display: inline-block;\n      background-image: url(\"data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 15 24'%3E%3Cdefs%3E%3Cmask id='mask' x='4.23' y='17.7' width='5.47' height='5.41' maskUnits='userSpaceOnUse'%3E%3Cg id='mask-2'%3E%3Cpolygon id='path-1' points='9.7 23.11 4.23 23.11 4.23 17.7 9.7 17.7 9.7 23.11' style='fill:%23fff'/%3E%3C/g%3E%3C/mask%3E%3Cmask id='mask-2-2' x='0' y='0.5' width='14.67' height='14.92' maskUnits='userSpaceOnUse'%3E%3Cg id='mask-4'%3E%3Cpolygon id='path-3' points='0 15.43 0 0.51 14.67 0.51 14.67 15.43 0 15.43' style='fill:%23fff'/%3E%3C/g%3E%3C/mask%3E%3C/defs%3E%3Cg id='Icons'%3E%3Cg id='Page-1'%3E%3Cg id='Group-3'%3E%3Cg style='mask:url(%23mask)'%3E%3Cpath id='Fill-1' d='M7,23.11h-.1a2.7,2.7,0,0,1,.06-5.4H7A2.7,2.7,0,0,1,7,23.11' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3C/g%3E%3C/g%3E%3Cg id='Group-6'%3E%3Cg style='mask:url(%23mask-2-2)'%3E%3Cpath id='Fill-4' d='M13.6,9.93a12.22,12.22,0,0,1-2.21,2l-1.13.78a3.1,3.1,0,0,0-1.13,1.39,2.89,2.89,0,0,0-.17,1.16v.18H4.63v-.37c.05-1.5.09-2.39.71-3.12a18.38,18.38,0,0,1,3.22-2.6,3.39,3.39,0,0,0,.76-.78A2.75,2.75,0,0,0,10,7,3.14,3.14,0,0,0,9.4,5.11a2.46,2.46,0,0,0-2.14-.8,2.32,2.32,0,0,0-2.16,1,4,4,0,0,0-.65,2.16v.19H0V7.46C.12,4.72,1.09,2.76,2.9,1.61A7.6,7.6,0,0,1,7.09.5a9,9,0,0,1,5.4,1.56,5.41,5.41,0,0,1,2.19,4.67,5.35,5.35,0,0,1-1.07,3.2' style='fill:${encodeURIComponent(buttonColor)}'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n      background-position: 50% 50%;\n      background-size: 40%;\n      background-repeat: no-repeat;\n    }\n\n    .jfFeedbackButton-text { line-height: ${buttonSize}px; }\n  `;\n  /* eslint-enable */\n}\n\nglobal.JF_FeedbackCSSGenerator = getPageCSS;\n","export const addClass = (_element, className) => {\n  const element = _element;\n  const classes = (element.className || '').split(' ').filter(p => {\n    return p;\n  });\n\n  if (classes.indexOf(className) > -1) return;\n\n  classes.push(className);\n  element.className = classes.join(' ');\n};\n\nexport const removeClass = (_element, className) => {\n  const element = _element;\n  if (element && element.className && typeof element.className === 'string') {\n    const classes = element.className.split(' ').filter(p => {\n      return p && p !== className;\n    });\n    element.className = classes.join(' ');\n  }\n};\n\nexport const hasClass = (element, className) => {\n  if (element.className && typeof element.className === 'string') {\n    const classes = element.className.split(' ');\n    return classes.indexOf(className) > -1;\n  }\n};\n","import getPageCSS from './feedbackEmbedCSS';\nimport { addClass, hasClass, removeClass } from './utils';\n\nclass FeedbackEmbedButton {\n  constructor(params) {\n    this.developer = params.developer || false;\n    this.formID = params.formId;\n    this.base = params.base || 'https://form.jotform.com/';\n    this.layoutParams = {\n      maxHeight: 380,\n      minHeight: 325,\n      forceHeight: params.forceHeight,\n      forceWidth: params.forceWidth,\n      additionalQueryParams: params.additionalQueryParams || '', // to pass parameters to iframe url\n      containerElement: params.containerElement ? params.containerElement : document.body\n    };\n    this.init = this.init.bind(this);\n    this.createButton = this.createButton.bind(this);\n    this.createCloseButton = this.createCloseButton.bind(this);\n    this.createIFrame = this.createIFrame.bind(this);\n    this.renderIFrame = this.renderIFrame.bind(this);\n    this.alignIFrame = this.alignIFrame.bind(this);\n    this.openIFrameWrapper = this.openIFrameWrapper.bind(this);\n    this.closeIFrameWrapper = this.closeIFrameWrapper.bind(this);\n    this.handleOutsideClick = this.handleOutsideClick.bind(this);\n    this.receiveMessage = this.receiveMessage.bind(this);\n    this.updateHeight = this.updateHeight.bind(this);\n    this.handleParameters = this.handleParameters.bind(this);\n    this.revealButton = this.revealButton.bind(this);\n    this.osName = null;\n    this.handleParameters(params);\n    this.init();\n  }\n\n  init() {\n    if (!this.formID) {\n      window.alert('no form id provided');\n    }\n    this.componentID = `JF_feedback_embed_${this.formID}_${new Date().getTime().toString().slice(-4)}`;\n    this.layoutParams.iFrameWrapperID = `${this.componentID}_wrapper`;\n    this.layoutParams.iFrameID = `${this.componentID}_iframe`;\n    this.layoutParams.buttonID = `${this.componentID}_button`;\n    this.cssInject();\n    this.createButton();\n    this.layoutElements = {\n      iFrame: document.getElementById(this.layoutParams.iFrameID),\n      floatingButton: document.getElementById(this.layoutParams.buttonID)\n    };\n    // sendAnalyticsData(this.formID, 'feedback_button', {\n    //   formID: this.formID,\n    //   url: window.location.href\n    // }, true);\n  }\n\n  renderIFrame() {\n    this.createIFrame();\n    const { iFrameWrapper, floatingButton } = this.layoutElements;\n    this.alignIFrame();\n    addClass(iFrameWrapper, 'jFisOpen');\n    addClass(floatingButton, 'jFisActive');\n  }\n\n  alignIFrame() {\n    const { iFrameWrapper } = this.layoutElements;\n    iFrameWrapper.style.top = this.buttonSide === 'Top' ? '84px' : null;\n    iFrameWrapper.style.bottom = this.buttonSide === 'Bottom' ? '84px' : null;\n    iFrameWrapper.style.left = this.buttonAlign === 'Left' ? '24px' : null;\n    iFrameWrapper.style.right = this.buttonAlign === 'Right' ? '24px' : null;\n  }\n\n  handleParameters(params) {\n    // Button text\n    this.buttonText = params.buttonText || 'Give Feedback';\n\n    this.buttonAlign = params.buttonAlign || 'Right';\n    this.buttonSide = params.buttonSide || 'Bottom';\n    // Button position\n    this.buttonPosition = `${this.buttonSide.toLowerCase()}${this.buttonAlign}`;\n\n    // Button colors\n    // TODO :: may update default colors?\n    this.buttonBackgroundColor = params.buttonBackgroundColor || '#007FEF';\n    this.buttonFontColor = params.buttonFontColor || '#ffffff';\n\n    // Button icon class\n    this.buttonIcon = (params.buttonIcon && params.buttonIcon !== 'default') ? params.buttonIcon : 'textOnly';\n    this.buttonClassName = `jfFeedbackButton u-${this.buttonIcon}`;\n  }\n\n  createButton() {\n    const { buttonID, containerElement } = this.layoutParams;\n    const button = document.createElement('button');\n    const iconSpan = document.createElement('span');\n    const textSpan = document.createElement('span');\n    iconSpan.className = `jfFeedbackButton-icon u-${this.buttonIcon}`;\n    textSpan.className = 'jfFeedbackButton-text';\n    button.className = `${this.buttonClassName} u-${this.buttonPosition}`;\n    button.id = buttonID;\n    button.style.display = 'none';\n\n    textSpan.appendChild(document.createTextNode(this.buttonText));\n    button.appendChild(iconSpan);\n    button.appendChild(textSpan);\n\n    button.addEventListener('click', this.openIFrameWrapper);\n    containerElement.appendChild(button);\n  }\n\n  openIFrameWrapper() {\n    const { iFrame, iFrameWrapper = false, floatingButton } = this.layoutElements;\n    if (iFrameWrapper) {\n      addClass(iFrameWrapper, 'jFisOpen');\n      addClass(floatingButton, 'jFisActive');\n    } else {\n      this.renderIFrame();\n      return;\n    }\n    setTimeout(() => {\n      window.addEventListener('click', this.handleOutsideClick);\n      iFrame.contentWindow.postMessage(JSON.stringify({ messageType: 'buttonClick' }), '*');\n      floatingButton.removeEventListener('click', this.openIFrameWrapper);\n      floatingButton.addEventListener('click', this.closeIFrameWrapper);\n    }, 100);\n  }\n\n  closeIFrameWrapper() {\n    const { iFrameWrapper, floatingButton } = this.layoutElements;\n    if (iFrameWrapper) {\n      removeClass(iFrameWrapper, 'jFisOpen');\n      removeClass(floatingButton, 'jFisActive');\n\n      window.removeEventListener('click', this.handleOutsideClick);\n      floatingButton.removeEventListener('click', this.closeIFrameWrapper);\n      floatingButton.addEventListener('click', this.openIFrameWrapper);\n    }\n  }\n\n  handleOutsideClick(e) {\n    if (!hasClass(e.target, 'jfFeedbackButton')) {\n      this.closeIFrameWrapper();\n      window.removeEventListener('click', this.handleOutsideClick);\n    }\n  }\n\n  createIFrame() {\n    const iFrameWrapper = document.createElement('div');\n    const {\n      iFrameID, iFrameWrapperID, containerElement, additionalQueryParams\n    } = this.layoutParams;\n    iFrameWrapper.id = iFrameWrapperID;\n    iFrameWrapper.style.display = 'none';\n    iFrameWrapper.className = 'jfFeedbackButton-modal';\n\n    const iFrame = document.createElement('iframe');\n    iFrame.id = iFrameID;\n    iFrame.allow = 'geolocation; microphone; camera; autoplay; encrypted-media; fullscreen';\n\n    let url;\n    if (this.developer) {\n      url = `https://${this.developer}.jotform.pro/${this.formID}`;\n    } else {\n      url = `${this.base}${this.formID}`;\n    }\n    url += `?feedbackEmbedButton&noToolBar&disableSmartEmbed=1${additionalQueryParams}`;\n\n    iFrame.src = url;\n    this.layoutElements = { ...this.layoutElements, iFrameWrapper: iFrameWrapper };\n    window.addEventListener('message', this.receiveMessage);\n    this.createCloseButton(iFrameWrapper);\n    iFrameWrapper.appendChild(iFrame);\n    containerElement.appendChild(iFrameWrapper);\n  }\n\n  createCloseButton(wrapper) {\n    const closeButton = document.createElement('div');\n    closeButton.className = 'close-btn';\n    closeButton.innerHTML = '&times';\n    closeButton.addEventListener('click', this.handleOutsideClick);\n    wrapper.appendChild(closeButton);\n  }\n\n  updateHeight(questionData) {\n    const {\n      maxHeight, minHeight, forceHeight, forceWidth\n    } = this.layoutParams;\n    const { iFrameWrapper } = this.layoutElements;\n    const { questionHeight, bottomBarHeight } = questionData;\n    // const iFrameHeight = iFrame.getBoundingClientRect().height;\n    const totalInnerHeight = questionHeight + bottomBarHeight + 8; // paddings\n    let newHeight = totalInnerHeight;\n\n    if (totalInnerHeight >= maxHeight) {\n      newHeight = maxHeight;\n    } else if (totalInnerHeight <= minHeight) {\n      newHeight = minHeight;\n    }\n\n    newHeight = forceHeight || newHeight;\n    if (forceWidth) {\n      iFrameWrapper.style.width = `${forceWidth}px`;\n    }\n\n    this.layoutParams.minHeight = newHeight;\n    iFrameWrapper.style.height = `${newHeight}px`;\n  }\n\n  setDeviceType(deviceType) {\n    const { iFrameWrapper, floatingButton } = this.layoutElements;\n    addClass(iFrameWrapper, `jFis${deviceType}`);\n    addClass(floatingButton, `jFis${deviceType}`);\n  }\n\n  setOS(osName) {\n    const { iFrameWrapper, floatingButton } = this.layoutElements;\n    this.osName = osName;\n    addClass(floatingButton, `jFis${osName}`);\n    addClass(iFrameWrapper, `jFis${osName}`);\n  }\n\n  receiveMessage(event) {\n    // We should remove messages coming from jotform.js\n    const eventData = event.data;\n    if (typeof eventData === typeof {} && typeof eventData.messageType === 'string') {\n      const { messageType } = eventData;\n      switch (messageType) {\n        case 'setDeviceType':\n          this.setDeviceType(eventData.deviceType);\n          break;\n        case 'setOS':\n          this.setOS(eventData.OS);\n          break;\n        // eslint-disable-next-line default-case-last\n        default:\n        case 'updateHeight':\n          this.updateHeight(eventData);\n          break;\n      }\n    }\n  }\n\n  revealButton() {\n    const { floatingButton } = this.layoutElements;\n    floatingButton.style.display = 'inline-block';\n  }\n\n  /* CSS Parts\n   * let Omer to use this part - ARO\n  */\n  appendStyles(template) {\n    const styleElement = global.document.createElement('style');\n    styleElement.setAttribute('type', 'text/css');\n    styleElement.innerHTML = template;\n    global.document.getElementsByTagName('head')[0].appendChild(styleElement);\n\n    const url = this.developer ? `https://${this.developer}.jotform.pro/cardforms/feedbackEmbed.css` : 'https://cdn.jotfor.ms/cardforms/feedbackEmbed.css';\n    const linkElement = global.document.createElement('link');\n    linkElement.setAttribute('href', url);\n    linkElement.setAttribute('type', 'text/css');\n    linkElement.setAttribute('rel', 'stylesheet');\n    linkElement.onload = () => {\n      this.revealButton();\n    };\n\n    global.document.getElementsByTagName('head')[0].appendChild(linkElement);\n  }\n\n  cssInject() {\n    const pageCSS = getPageCSS(this.buttonBackgroundColor, this.buttonFontColor);\n    this.appendStyles(pageCSS);\n  }\n\n  /* END CSS Parts */\n}\n\nglobal.JF_FeedbackEmbedButton = FeedbackEmbedButton;\n","function ownKeys(object, enumerableOnly) {\n    var keys = Object.keys(object);\n\n    if (Object.getOwnPropertySymbols) {\n        var symbols = Object.getOwnPropertySymbols(object);\n        if (enumerableOnly) {\n            symbols = symbols.filter(function(sym) {\n                return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n            });\n        }\n        keys.push.apply(keys, symbols);\n    }\n\n    return keys;\n}\nfunction _object_spread_props(target, source) {\n    source = source != null ? source : {};\n\n    if (Object.getOwnPropertyDescriptors) Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n    else {\n        ownKeys(Object(source)).forEach(function(key) {\n            Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n        });\n    }\n\n    return target;\n}\nexport { _object_spread_props as _ };\n","import { _ as _define_property } from \"./_define_property.js\";\n\nfunction _object_spread(target) {\n    for (var i = 1; i < arguments.length; i++) {\n        var source = arguments[i] != null ? arguments[i] : {};\n        var ownKeys = Object.keys(source);\n\n        if (typeof Object.getOwnPropertySymbols === \"function\") {\n            ownKeys = ownKeys.concat(\n                Object.getOwnPropertySymbols(source).filter(function(sym) {\n                    return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n                })\n            );\n        }\n\n        ownKeys.forEach(function(key) {\n            _define_property(target, key, source[key]);\n        });\n    }\n\n    return target;\n}\nexport { _object_spread as _ };\n","function _define_property(obj, key, value) {\n    if (key in obj) {\n        Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });\n    } else obj[key] = value;\n\n    return obj;\n}\nexport { _define_property as _ };\n"],"names":["getPageCSS","buttonBackgroundColor","buttonColor","buttonSize","encodeURIComponent","global","JF_FeedbackCSSGenerator","addClass","_element","className","classes","element","split","filter","p","indexOf","push","join","removeClass","hasClass","JF_FeedbackEmbedButton","init","formID","window","alert","componentID","Date","getTime","toString","slice","layoutParams","iFrameWrapperID","iFrameID","buttonID","cssInject","createButton","layoutElements","iFrame","document","getElementById","floatingButton","renderIFrame","createIFrame","iFrameWrapper","alignIFrame","style","top","buttonSide","bottom","left","buttonAlign","right","handleParameters","params","buttonText","buttonPosition","toLowerCase","buttonFontColor","buttonIcon","buttonClassName","containerElement","button","createElement","iconSpan","textSpan","id","display","appendChild","createTextNode","addEventListener","openIFrameWrapper","setTimeout","handleOutsideClick","contentWindow","postMessage","JSON","stringify","messageType","removeEventListener","closeIFrameWrapper","e","target","source","url","additionalQueryParams","allow","developer","base","src","i","arguments","length","ownKeys","Object","keys","getOwnPropertySymbols","concat","sym","getOwnPropertyDescriptor","enumerable","forEach","key","value","defineProperty","configurable","writable","obj","getOwnPropertyDescriptors","defineProperties","object","enumerableOnly","symbols","apply","receiveMessage","createCloseButton","wrapper","closeButton","innerHTML","updateHeight","questionData","maxHeight","minHeight","forceHeight","forceWidth","questionHeight","bottomBarHeight","totalInnerHeight","newHeight","width","height","setDeviceType","deviceType","setOS","osName","event","eventData","data","OS","revealButton","appendStyles","template","styleElement","setAttribute","getElementsByTagName","linkElement","onload","pageCSS","constructor","formId","body","bind"],"mappings":"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"}